1"use strict";(self.webpackChunksvk_designsystem=self.webpackChunksvk_designsystem||[]).push([[9472],{79472:function(e,t,i){i.r(t);class n extends HTMLElement{constructor(){super(),this._navList=null,this._overflowLi=null,this._overflowBtn=null,this._overflowPanel=null,this._overflowList=null,this._mql=null,this._initialized=!1,this._resizeObserver=null,this._raf=0,this._onDocClick=this._onDocClick.bind(this),this._onResize=this._onResize.bind(this),this._onToggleOverflow=this._onToggleOverflow.bind(this),this._onMediaChange=this._onMediaChange.bind(this)}connectedCallback(){this._setupMediaQuery(),this._mql?.matches&&this._initDesktop()}disconnectedCallback(){this._removeMediaQuery(),this._teardownDesktop()}_setupMediaQuery(){"undefined"!=typeof window&&"function"==typeof window.matchMedia&&(this._mql||(this._mql=window.matchMedia("(min-width: 1024px)"),this._mql.addEventListener("change",this._onMediaChange)))}_removeMediaQuery(){this._mql&&(this._mql.removeEventListener("change",this._onMediaChange),this._mql=null)}_initDesktop(){if(this._initialized)return;const e=this.querySelector(".navigation-main__container");e&&(this._navList=e.querySelector(".navigation-main__list")||e.querySelector(".nav__list"),this._navList&&(this._ensureOverflowDom(),document.addEventListener("click",this._onDocClick,{capture:!0}),window.addEventListener("resize",this._onResize),"undefined"!=typeof ResizeObserver&&(this._resizeObserver=new ResizeObserver(this._onResize),this._resizeObserver.observe(this._navList)),this._initialized=!0,this.classList.add("is-initialized"),this._measureAndDistribute()))}_teardownDesktop(){this._initialized&&(document.removeEventListener("click",this._onDocClick,{capture:!0}),window.removeEventListener("resize",this._onResize),this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null),this._raf&&cancelAnimationFrame(this._raf),this._raf=0,this._initialized=!1)}_onMediaChange(e){e.matches?this._initDesktop():this._teardownDesktop()}_ensureOverflowDom(){if(this._overflowLi)return;const e=document.createElement("li");e.className="list__item nav__overflow navigation-main__overflow label-75",e.hidden=!0,e.innerHTML='\n \t\t<button\n \t\ttype="button"\n \t\tclass="nav__overflow-toggle navigation-main__overflow-toggle list__item-link link--secondary"\n \t\taria-expanded="false"\n \t\t>\n\t\t\t\t<span class="navigation-main__overflow-label">Mer</span>\n \t\t<svk-icon name="arrow-down-75"></svk-icon>\n \t\t</button>\n\t\t\t<div class="submenu submenu--overflow nav__overflow-panel navigation-main__overflow-panel" surface="white" hidden>\n\t\t\t\t<ul class="nav__overflow-list navigation-main__overflow-list list--none"></ul>\n\t\t\t</div>\n \t',this._navList.appendChild(e),this._overflowLi=e,this._overflowBtn=e.querySelector(".navigation-main__overflow-toggle")||e.querySelector(".nav__overflow-toggle"),this._overflowPanel=e.querySelector(".navigation-main__overflow-panel")||e.querySelector(".nav__overflow-panel"),this._overflowList=e.querySelector(".navigation-main__overflow-list")||e.querySelector(".nav__overflow-list"),this._overflowBtn.addEventListener("click",this._onToggleOverflow)}_onResize(){this._raf&&cancelAnimationFrame(this._raf),this._raf=requestAnimationFrame(()=>this._measureAndDistribute())}_onToggleOverflow(e){e.preventDefault();const t="true"===this._overflowBtn.getAttribute("aria-expanded");this._setOverflowOpen(!t)}_setOverflowOpen(e){this._overflowBtn&&this._overflowPanel&&(this._overflowBtn.setAttribute("aria-expanded",e?"true":"false"),this._overflowPanel.hidden=!e)}_onDocClick(e){this._overflowLi&&(this._overflowLi.contains(e.target)||this._setOverflowOpen(!1))}_getTopLevelItems(){return Array.from(this._navList.querySelectorAll(":scope > li.list__item")).filter(e=>e!==this._overflowLi)}_measureAndDistribute(){if(!this._navList)return;this._restoreAllFromOverflow();const e=this._getTopLevelItems();if(!e.length)return this._overflowLi.hidden=!0,this._setOverflowOpen(!1),void this._updateOverflowLabel(0);this._overflowLi.hidden=!0,this._setOverflowOpen(!1);const t=this._navList.clientWidth;let i=0,n=e.length;for(let o=0;o<e.length;o++){const s=e[o].getBoundingClientRect().width;if(i+s>t){n=o;break}i+=s}if(n===e.length)return this._overflowLi.hidden=!0,void this._updateOverflowLabel(0);this._overflowLi.hidden=!1;const o=this._overflowLi.getBoundingClientRect().width;i=0,n=e.length;for(let s=0;s<e.length;s++){const r=e[s].getBoundingClientRect().width;if(i+r+o>t){n=s;break}i+=r}const s=e.slice(n);this._populateOverflow(s),this._updateOverflowLabel(s.length)}_restoreAllFromOverflow(){if(!this._overflowList)return;const e=Array.from(this._overflowList.children);
1e.length&&(e.forEach(e=>{e.classList.remove("list__item--overflow"),this._navList.insertBefore(e,this._overflowLi)}),this._overflowList.innerHTML="")}_populateOverflow(e){if(!this._overflowList)return;const t=document.createDocumentFragment();e.forEach(e=>{e.classList.add("list__item--overflow"),t.appendChild(e)}),this._overflowList.appendChild(t)}_updateOverflowLabel(e){if(!this._overflowBtn)return;const t=this._overflowBtn.querySelector(".navigation-main__overflow-label")||this._overflowBtn.querySelector("span")||this._overflowBtn.querySelector("div");t&&(t.textContent=e>0?`Mer (${e})`:"Mer")}}customElements.define("svk-navigation-main-desktop",n)}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.