@oiz/stzh-components 2.14.0 → 2.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-1fca38db.js → app-globals-856f268a.js} +2 -2
- package/dist/cjs/{app-globals-1fca38db.js.map → app-globals-856f268a.js.map} +1 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/stzh-actionset_4.cjs.entry.js +15 -27
- package/dist/cjs/stzh-actionset_4.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-appnav.cjs.entry.js +1 -1
- package/dist/cjs/stzh-appnav.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-components.cjs.js +1 -1
- package/dist/cjs/stzh-header.cjs.entry.js +6 -6
- package/dist/cjs/stzh-header.cjs.entry.js.map +1 -1
- package/dist/collection/components/stzh-actionset/stzh-actionset.js +3 -9
- package/dist/collection/components/stzh-actionset/stzh-actionset.js.map +1 -1
- package/dist/collection/components/stzh-appnav/stzh-appnav.css +0 -3
- package/dist/collection/components/stzh-card/stzh-card.css +0 -37
- package/dist/collection/components/stzh-card/stzh-card.js +11 -17
- package/dist/collection/components/stzh-card/stzh-card.js.map +1 -1
- package/dist/collection/components/stzh-card/stzh-card.stories.js +1 -2
- package/dist/collection/components/stzh-card-list/stzh-card-list.stories.js +0 -2
- package/dist/collection/components/stzh-header/stzh-header.js +6 -6
- package/dist/collection/components/stzh-header/stzh-header.js.map +1 -1
- package/dist/collection/index.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index2.js.map +1 -1
- package/dist/components/stzh-actionset2.js +3 -9
- package/dist/components/stzh-actionset2.js.map +1 -1
- package/dist/components/stzh-appnav.js +1 -1
- package/dist/components/stzh-appnav.js.map +1 -1
- package/dist/components/stzh-card2.js +12 -18
- package/dist/components/stzh-card2.js.map +1 -1
- package/dist/components/stzh-header.js +6 -6
- package/dist/components/stzh-header.js.map +1 -1
- package/dist/esm/{app-globals-327436ba.js → app-globals-8a09d78c.js} +2 -2
- package/dist/esm/{app-globals-327436ba.js.map → app-globals-8a09d78c.js.map} +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/stzh-actionset_4.entry.js +15 -27
- package/dist/esm/stzh-actionset_4.entry.js.map +1 -1
- package/dist/esm/stzh-appnav.entry.js +1 -1
- package/dist/esm/stzh-appnav.entry.js.map +1 -1
- package/dist/esm/stzh-components.js +1 -1
- package/dist/esm/stzh-header.entry.js +6 -6
- package/dist/esm/stzh-header.entry.js.map +1 -1
- package/dist/esm-es5/{app-globals-327436ba.js → app-globals-8a09d78c.js} +2 -2
- package/dist/esm-es5/index.js.map +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/stzh-actionset_4.entry.js +2 -2
- package/dist/esm-es5/stzh-actionset_4.entry.js.map +1 -1
- package/dist/esm-es5/stzh-appnav.entry.js +1 -1
- package/dist/esm-es5/stzh-appnav.entry.js.map +1 -1
- package/dist/esm-es5/stzh-components.js +1 -1
- package/dist/esm-es5/stzh-header.entry.js +1 -1
- package/dist/esm-es5/stzh-header.entry.js.map +1 -1
- package/dist/stzh-components/index.esm.js.map +1 -1
- package/dist/stzh-components/p-0bb08043.system.js.map +1 -1
- package/dist/stzh-components/{p-b1dbd448.system.entry.js → p-1caa099b.system.entry.js} +2 -2
- package/dist/stzh-components/p-1caa099b.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-90df75de.system.entry.js → p-5733dcff.system.entry.js} +2 -2
- package/dist/stzh-components/p-5733dcff.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-fb869e60.system.js → p-6af6b8ac.system.js} +2 -2
- package/dist/stzh-components/{p-a9ce16ca.system.js → p-6c7cc671.system.js} +2 -2
- package/dist/stzh-components/{p-61cc4013.entry.js → p-6e3396de.entry.js} +2 -2
- package/dist/stzh-components/p-6e3396de.entry.js.map +1 -0
- package/dist/stzh-components/{p-4926cc0e.entry.js → p-964e87a2.entry.js} +3 -3
- package/dist/stzh-components/p-964e87a2.entry.js.map +1 -0
- package/dist/stzh-components/{p-6a2947fe.system.entry.js → p-a14e154a.system.entry.js} +3 -3
- package/dist/stzh-components/p-a14e154a.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-ce92b185.js → p-bd52acfe.js} +2 -2
- package/dist/stzh-components/{p-c53ea563.entry.js → p-de184696.entry.js} +2 -2
- package/dist/stzh-components/p-de184696.entry.js.map +1 -0
- package/dist/stzh-components/stzh-components.esm.js +1 -1
- package/dist/stzh-components/stzh-components.js +1 -1
- package/dist/types/components/stzh-header/stzh-header.d.ts +2 -2
- package/dist/types/index.d.ts +0 -1
- package/package.json +1 -1
- package/dist/stzh-components/p-4926cc0e.entry.js.map +0 -1
- package/dist/stzh-components/p-61cc4013.entry.js.map +0 -1
- package/dist/stzh-components/p-6a2947fe.system.entry.js.map +0 -1
- package/dist/stzh-components/p-90df75de.system.entry.js.map +0 -1
- package/dist/stzh-components/p-b1dbd448.system.entry.js.map +0 -1
- package/dist/stzh-components/p-c53ea563.entry.js.map +0 -1
- /package/dist/esm-es5/{app-globals-327436ba.js.map → app-globals-8a09d78c.js.map} +0 -0
- /package/dist/stzh-components/{p-fb869e60.system.js.map → p-6af6b8ac.system.js.map} +0 -0
- /package/dist/stzh-components/{p-a9ce16ca.system.js.map → p-6c7cc671.system.js.map} +0 -0
- /package/dist/stzh-components/{p-ce92b185.js.map → p-bd52acfe.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["stzhHeaderCss","StzhHeader","this","handleResize","stickyDisabled","debounceResize","window","cancelAnimationFrame","requestAnimationFrame","readTask","isSmall","media","matches","isSmallheader","headerTop","element","offsetTop","headerHeight","offsetHeight","appnavHeight","appnavElement","metabarHeight","metabarElement","writeTask","document","documentElement","style","setProperty","preventAppnavPlaceholder","appnavPlaceholderElement","height","scrollListener","updatePosition","removeSticky","sticky","stickyClosing","paddingTop","scrollingUp","belowStayStickyPoint","belowStartStickyPoint","updateMetabarPosition","animationEnd","innerElement","removeEventListener","addEventListener","scrollTop","scrollY","lastScrollTop","innerHeight","mainHeight","mainElement","logobarHeight","logobarElement","headerOverlap","hideLogo","CSS","supports","stickyMetabar","stickyMetabarEnd","metabarTransform","connectedCallback","createElement","parentElement","appendChild","resizeObserver","ResizeObserver","observe","disconnectedCallback","removeChild","disconnect","render","navSlotUsed","hasSlot","loginSlotUsed","appnavSlotUsed","langNavSlotUsed","classes","header","metabarStay","h","Host","class","ref","el","href","logoAnalyticsId","name","transform"],"sources":["src/components/stzh-header/stzh-header.scss?tag=stzh-header&encapsulation=scoped","src/components/stzh-header/stzh-header.tsx"],"sourcesContent":["/**\n * @prop --stzh-header-height: **Global**: Height of header (readonly variable)\n * @prop --stzh-header-appnav-height: **Global**: Height of appnav header if exists (readonly variable)\n * @prop --stzh-header-metabar-height: **Global**: Height of metabar header (readonly variable)\n * @prop --stzh-header-sticky-appnav-height: **Global**: Height of appnav header if he is sticky (readonly variable)\n */\n\n@keyframes stzh-header-open {\n\tfrom {\n\t\ttransform: translateY(-100%);\n\t}\n\n\tto {\n\t\ttransform: translateY(0%);\n\t}\n}\n\n@keyframes stzh-header-close {\n\tfrom {\n\t\ttransform: translateY(0%);\n\t}\n\n\tto {\n\t\ttransform: translateY(-100%);\n\t}\n}\n\n:host {\n @media print {\n display: none;\n }\n\n ::slotted([slot=\"logo\"]) {\n width: auto;\n height: 100%;\n }\n\n ::slotted(stzh-logo[slot=\"logo\"]) {\n --width: auto;\n --height: 100%;\n }\n\n ::slotted(stzh-logo[slot=\"logo\"]:not([type=\"stzh\"]):not([type=\"none\"])) {\n --width: auto;\n --height: 31px;\n\n @include mq($from: medium) {\n --height: 35px;\n }\n\n @include mq($from: ultra) {\n --height: 53px;\n }\n }\n\n ::slotted(stzh-popover[slot=\"login\"]) {\n display: flex;\n flex-grow: 1;\n\n .stzh-popover,\n .stzh-popover__trigger {\n display: flex;\n flex-grow: 1;\n }\n\n .stzh-popover .stzh-popover__trigger stzh-button .stzh-button {\n @include fontSize('micro');\n height: auto;\n\n @include mq($to: smallheader) {\n border-radius: 0;\n height: 100%;\n }\n\n &__badge {\n @include mq($to: smallheader) {\n top: 8px;\n right: 7px;\n }\n }\n }\n }\n}\n\n.header {\n &__inner {\n transition: box-shadow $baseTransitionAnimationSpeed;\n }\n\n &__main {\n position: relative;\n z-index: $zIndexHeader;\n display: flex;\n flex-direction: column;\n position: relative;\n box-shadow: $boxShadowHeader;\n background-color: $colorWhite;\n transition: box-shadow $baseTransitionAnimationSpeed;\n\n @include mq($from: smallheader) {\n box-shadow: none;\n flex-direction: column-reverse;\n border-bottom: 1px solid $baseBorderColor;\n padding-top: $headerMetabarHeightRegularUp;\n\n @supports (position: sticky) {\n padding-top: 0;\n }\n }\n }\n\n &__metabar {\n border-top: 1px solid $baseBorderColor;\n\n @include mq($from: smallheader) {\n border-top: none;\n background-color: $colorGrey5;\n z-index: 1;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n\n @supports (position: sticky) {\n position: sticky;\n }\n }\n }\n\n &__metabar-inner {\n @include container;\n display: flex;\n align-items: stretch;\n height: $headerMetabarHeight;\n\n\t\t@include mq($to: smallheader) {\n // overwrite container margin for smallheader\n // to be able to use fullwidth of metabar\n margin: 0 auto;\n }\n\n\t\t@include mq($from: smallheader) {\n justify-content: flex-end;\n align-items: center;\n height: $headerMetabarHeightRegularUp;\n }\n }\n\n &__metabar-nav,\n &__metabar-langnav {\n display: none;\n\n @include mq($from: smallheader) {\n display: inline-flex;\n }\n }\n\n &__metabar-login {\n display: flex;\n flex-basis: 50%;\n\n &:not(:empty) {\n \t\t@include mq($from: smallheader) {\n flex-basis: auto;\n margin-left: space('small');\n }\n }\n }\n\n &__metabar-langnav {\n &:not(:empty) {\n @include mq($from: smallheader) {\n margin-left: space('medium');\n }\n }\n }\n\n &__logobar {\n display: flex;\n background-color: $colorPrimary;\n }\n\n &__logobar-logo {\n box-sizing: content-box;\n display: flex;\n background-color: $colorWhite;\n overflow: hidden;\n width: calc(100% - #{$headerMetabarHeight} - 1px);\n\n\t\t@include mq($from: smallheader) {\n width: 400px;\n }\n\n\t\t@include mq($from: large) {\n\t\t width: 460px;\n\t\t}\n\n\t\t@include mq($from: ultra) {\n \t\tpadding-left: calc((100vw - #{$containerMaxWidth} - var(--stzh-scrollbar-width, 0px)) / 2);\n\t\t}\n }\n\n &__logo-link {\n flex-grow: 1;\n display: inline-flex;\n\t\theight: 76px;\n padding: space('medium');\n padding-left: $containerMargin;\n transition: opacity $baseTransitionAnimationSpeed;\n\n\t\t@include mq($from: small) {\n\t\t\tpadding-left: $containerMarginSmall;\n\t\t}\n\n\t\t@include mq($from: smallheader) {\n\t\t\theight: 90px;\n\t\t}\n\n\t\t@include mq($from: large) {\n\t\t\theight: 120px;\n padding: space('large');\n\t\t\tpadding-left: $containerMarginLarge;\n }\n\n\t\t@include mq($from: ultra) {\n padding-left: 0;\n }\n }\n\n &__appnav {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: calc(#{$zIndexHeader} - 1);\n box-shadow: $boxShadowHeader;\n background-color: $colorWhite;\n\n @include mq($from: small) {\n position: static;\n box-shadow: none;\n }\n }\n\n &__appnav-inner {\n @include mq($from: small) {\n @include container;\n }\n }\n\n /* Hide logo */\n\n &--hide-logo &__logo-link {\n opacity: 0;\n }\n\n /* Has empty metabar */\n\n &--has-empty-metabar-mobile &__metabar {\n @include mq($to: smallheader) {\n display: none;\n }\n }\n\n /* Has empty metabar */\n\n &--has-empty-metabar &__metabar {\n display: none;\n }\n\n /* Metabar Stay */\n\n &--has-metabar-stay &__metabar-langnav {\n @include mq($to: smallheader) {\n display: inline-flex;\n }\n }\n\n &--has-metabar-stay &__metabar-nav {\n @include mq($to: smallheader) {\n display: inline-flex;\n }\n }\n\n &--has-metabar-stay &__main {\n @include mq($to: smallheader) {\n box-shadow: none;\n flex-direction: column-reverse;\n border-bottom: 1px solid $baseBorderColor;\n }\n }\n\n &--has-metabar-stay &__metabar {\n @include mq($to: smallheader) {\n display: block;\n border-top: none;\n background-color: $colorGrey5;\n }\n }\n\n &--has-metabar-stay &__metabar-inner {\n @include mq($to: smallheader) {\n @include container;\n justify-content: flex-end;\n align-items: center;\n }\n }\n\n /* Sticky metabar */\n\n &--sticky-metabar:not(#{&}--sticky):not(#{&}--is-sticky-disabled) &__metabar {\n @include mq($from: smallheader) {\n position: fixed;\n }\n }\n\n /* Sticky variant */\n\n &--sticky &__inner {\n\t\t@include mq($from: small) {\n animation: stzh-header-open $baseTransitionAnimationSpeed;\n z-index: $zIndexHeader;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n margin: 0;\n box-shadow: $boxShadowHeader;\n }\n }\n\n &--sticky &__main {\n\t\t@include mq($to: small) {\n animation: stzh-header-open $baseTransitionAnimationSpeed;\n z-index: $zIndexHeader;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n margin: 0;\n }\n\n\t\t@include mq($from: small) {\n box-shadow: none;\n }\n }\n\n &--sticky &__appnav {\n\t\t@include mq($to: smallheader) {\n border-top: 1px solid $baseBorderColor;\n }\n }\n\n &--sticky &__metabar {\n border-top: none;\n }\n\n &--sticky#{&}--has-empty-metabar &__metabar {\n display: none;\n }\n\n &--sticky#{&}--has-empty-metabar:not(#{&}--has-appnav) &__main {\n\t\t@include mq($from: small) {\n border-bottom: none;\n }\n }\n\n &--sticky &__logobar {\n display: none;\n }\n\n &--sticky#{&}--has-metabar-stay &__main {\n\t\t@include mq($to: small) {\n box-shadow: $boxShadowHeader;\n }\n }\n\n /* Sticky closing */\n\n &--sticky-closing &__inner {\n\t\t@include mq($from: small) {\n animation: stzh-header-close $baseTransitionAnimationSpeed;\n }\n }\n\n &--sticky-closing &__main {\n\t\t@include mq($to: small) {\n animation: stzh-header-close $baseTransitionAnimationSpeed;\n }\n }\n\n /* Sticky disabled */\n\n &--is-sticky-disabled &__main {\n @include mq($from: smallheader) {\n @supports (position: sticky) {\n padding-top: $headerMetabarHeightRegularUp;\n }\n }\n }\n\n &--is-sticky-disabled &__metabar {\n @include mq($from: smallheader) {\n @supports (position: sticky) {\n position: absolute;\n }\n }\n }\n}\n","import {\n Component,\n Element,\n Listen,\n Host,\n State,\n h,\n writeTask,\n readTask,\n Method,\n Prop,\n} from \"@stencil/core\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { media } from \"../../utils/media-utils\";\n\n/**\n * @slot logo - Slot for brand logo\n * @slot nav - Slot for `stzh-metanav` element\n * @slot login - Slot for login button\n * @slot appnav - Slot for `stzh-appnav` element\n * @slot langnav - Slot for `stzh-langnav` element\n */\n@Component({\n tag: \"stzh-header\",\n styleUrl: \"stzh-header.scss\",\n scoped: true\n})\nexport class StzhHeader {\n /** Portal link (for logo) */\n @Prop() href: string = \"https://www.stadt-zuerich.ch\";\n\n /** Whether grey metabar should stay (on top) on mobile */\n @Prop() metabarStay: boolean = false;\n\n /** Whether sticky behaviour should be disabled */\n @Prop() stickyDisabled: boolean = false;\n\n /**\n * Prevent creating a appnav placeholder element\n * with the size of appnav inside header parent element.\n * This prevents the fixed appnav to overlap\n * content at the end on mikro breakpoint,\n * but could lead to problems with certain layouts.\n */\n @Prop() preventAppnavPlaceholder: boolean = false;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the logo link element.\n * Default value is \"Header Logo\".\n */\n @Prop() logoAnalyticsId: string;\n\n @State() hideLogo: boolean = false;\n @State() paddingTop: number;\n @State() metabarTransform: string;\n @State() sticky: boolean = false;\n @State() stickyClosing: boolean = false;\n @State() stickyMetabar: boolean = false;\n @State() stickyMetabarEnd: boolean = false;\n\n @Element() element: HTMLStzhHeaderElement;\n\n /** Update position / sticky state of header */\n @Method()\n async updatePosition() {\n if (this.stickyDisabled) {\n return;\n }\n\n const removeSticky = () => {\n this.sticky = false;\n this.stickyClosing = false;\n this.paddingTop = 0;\n }\n\n if (this.scrollingUp && this.belowStayStickyPoint) {\n if (!this.sticky && this.belowStartStickyPoint) {\n this.paddingTop = this.headerHeight;\n this.sticky = true;\n }\n\n this.updateMetabarPosition();\n } else {\n if (this.sticky && this.belowStayStickyPoint) {\n const animationEnd = () => {\n removeSticky();\n this.updateMetabarPosition();\n this.innerElement.removeEventListener(\"animationend\", animationEnd);\n };\n\n this.innerElement.addEventListener(\"animationend\", animationEnd);\n this.stickyClosing = true;\n } else {\n removeSticky();\n this.updateMetabarPosition();\n }\n }\n }\n\n @Listen(\"scroll\", { target: \"window\" })\n scrollListener() {\n if (this.stickyDisabled) {\n return;\n }\n\n readTask(() => {\n this.scrollTop = window.scrollY;\n this.scrollingUp = this.lastScrollTop && this.lastScrollTop > this.scrollTop;\n this.lastScrollTop = this.scrollTop;\n\n this.innerHeight = this.innerElement ? this.innerElement.offsetHeight : 0;\n this.mainHeight = this.mainElement ? this.mainElement.offsetHeight : 0;\n\n this.logobarHeight = this.sticky\n ? this.isSmall\n ? this.headerHeight - this.innerHeight\n : this.headerHeight - this.mainHeight\n : this.logobarElement\n ? this.logobarElement.offsetHeight\n : 0;\n\n this.belowStayStickyPoint = this.scrollTop > this.logobarHeight;\n this.belowStartStickyPoint = this.scrollTop > this.headerHeight;\n\n this.headerOverlap = (this.headerTop - this.scrollTop) / -1;\n this.hideLogo = this.isSmallheader && this.headerOverlap > 10;\n });\n\n writeTask(() => {\n this.updatePosition();\n });\n }\n\n private scrollTop: number;\n private lastScrollTop: number;\n private headerOverlap: number;\n private scrollingUp: boolean;\n private belowStayStickyPoint: boolean;\n private belowStartStickyPoint: boolean;\n\n private headerTop: number;\n private headerHeight: number;\n private innerHeight: number;\n private mainHeight: number;\n private metabarHeight: number;\n private logobarHeight: number;\n private appnavHeight: number;\n\n private isSmall: boolean;\n private isSmallheader: boolean;\n\n private debounceResize: number;\n private resizeObserver: ResizeObserver;\n\n private innerElement: HTMLDivElement;\n private mainElement: HTMLDivElement;\n private logobarElement: HTMLDivElement;\n private metabarElement: HTMLDivElement;\n private appnavElement: HTMLDivElement;\n private appnavPlaceholderElement: HTMLDivElement;\n\n private handleResize = () => {\n if (this.stickyDisabled) {\n return;\n }\n\n if (this.debounceResize) {\n window.cancelAnimationFrame(this.debounceResize);\n }\n\n this.debounceResize = requestAnimationFrame(() => {\n readTask(() => {\n this.isSmall = media(\"small\").matches;\n this.isSmallheader = media(\"smallheader\").matches;\n\n this.headerTop = this.element.offsetTop;\n this.headerHeight = this.element.offsetHeight;\n this.appnavHeight = this.appnavElement ? this.appnavElement.offsetHeight : 0;\n this.metabarHeight = this.metabarElement ? this.metabarElement.offsetHeight : 0;\n });\n\n writeTask(() => {\n document.documentElement.style.setProperty('--stzh-header-height', `${this.headerHeight}px`);\n document.documentElement.style.setProperty('--stzh-header-appnav-height', `${this.appnavHeight}px`);\n document.documentElement.style.setProperty('--stzh-header-metabar-height', `${this.metabarHeight}px`);\n\n if (this.appnavHeight && !this.isSmall && !this.preventAppnavPlaceholder) {\n this.appnavPlaceholderElement.style.height = `${this.appnavHeight}px`;\n document.documentElement.style.setProperty('--stzh-header-sticky-appnav-height', `${this.appnavHeight}px`);\n } else {\n this.appnavPlaceholderElement.style.height = \"0px\";\n document.documentElement.style.setProperty('--stzh-header-sticky-appnav-height', \"0px\");\n }\n });\n\n this.scrollListener();\n });\n }\n\n private updateMetabarPosition() {\n if (!this.metabarElement || this.stickyDisabled) {\n return;\n }\n\n if (CSS && CSS.supports && CSS.supports(\"position\", \"sticky\")) {\n return;\n }\n\n if (this.isSmallheader && this.headerOverlap > 0 && !this.sticky && !this.stickyClosing) {\n if (this.headerOverlap < this.mainHeight - this.metabarHeight) {\n this.stickyMetabar = true;\n this.stickyMetabarEnd = false;\n this.metabarTransform = \"translateY(0)\";\n } else {\n this.stickyMetabar = false;\n this.stickyMetabarEnd = true;\n this.metabarTransform = `translateY(${this.logobarHeight}px)`;\n }\n } else {\n this.stickyMetabar = false;\n this.stickyMetabarEnd = false;\n this.metabarTransform = \"translateY(0)\";\n }\n }\n\n connectedCallback() {\n this.appnavPlaceholderElement = document.createElement(\"div\");\n this.element.parentElement.appendChild(this.appnavPlaceholderElement);\n\n this.resizeObserver = new ResizeObserver(this.handleResize);\n this.resizeObserver.observe(this.element);\n }\n\n disconnectedCallback() {\n this.appnavPlaceholderElement.parentElement.removeChild(this.appnavPlaceholderElement);\n\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const navSlotUsed: boolean = hasSlot(this.element, \"nav\");\n const loginSlotUsed: boolean = hasSlot(this.element, \"login\");\n const appnavSlotUsed: boolean = hasSlot(this.element, \"appnav\");\n const langNavSlotUsed = hasSlot(this.element, \"langnav\");\n\n const classes = {\n \"header\": true,\n \"header--is-sticky-disabled\": this.stickyDisabled,\n \"header--sticky\": this.sticky,\n \"header--sticky-closing\": this.stickyClosing,\n \"header--hide-logo\": this.hideLogo,\n \"header--sticky-metabar\": this.stickyMetabar,\n \"header--sticky-metabar-end\": this.stickyMetabarEnd,\n \"header--has-metabar-stay\": this.metabarStay,\n \"header--has-empty-metabar-mobile\": !loginSlotUsed, // check for searchfield and burger slot when implemented\n \"header--has-empty-metabar\": !loginSlotUsed && !langNavSlotUsed && !navSlotUsed,\n \"header--has-appnav\": appnavSlotUsed\n };\n\n return (\n <Host>\n <header style={{paddingTop: `${this.paddingTop}px`}} class={classes}>\n <div\n class=\"header__inner\"\n ref={(el) => (this.innerElement = el as HTMLDivElement)}\n >\n <div\n class=\"header__main\"\n ref={(el) => (this.mainElement = el as HTMLDivElement)}\n >\n <div\n class=\"header__logobar\"\n ref={(el) => (this.logobarElement = el as HTMLDivElement)}\n >\n <div class=\"header__logobar-logo\">\n <a href={this.href} class=\"header__logo-link\" s-object-id={this.logoAnalyticsId || \"Header Logo\"}>\n <slot name=\"logo\"></slot>\n </a>\n </div>\n </div>\n\n <div\n class=\"header__metabar\"\n style={{transform: this.metabarTransform}}\n ref={(el) => (this.metabarElement = el as HTMLDivElement)}\n >\n <div class=\"header__metabar-inner\">\n <div class=\"header__metabar-nav\">\n <slot name=\"nav\"></slot>\n </div>\n <div class=\"header__metabar-login\">\n <slot name=\"login\"></slot>\n </div>\n <div class=\"header__metabar-langnav\">\n <slot name=\"langnav\"></slot>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"header__appnav\"\n ref={(el) => (this.appnavElement = el as HTMLDivElement)}\n >\n <div class=\"header__appnav-inner\">\n <slot name=\"appnav\"></slot>\n </div>\n </div>\n </div>\n </header>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|