PageSourceSearch

https://poolpirat.de/theme/b002415d6dec30742cf6a0c793c99022/js/zen…orm-atmos.zen-nav-scroller.plugin.d79c0f.js

js poolpirat.de collected 2026-10-08 05:41:04 UTC 4,741 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[28013],{8013:(t,e,i)=>{i.r(e),i.d(e,{default:()=>n});var s=i(4059);class n extends window.PluginBaseClass{static #t=this.options={activeItemSelector:".nav-item-{id}-link",activeRootId:"",mainNavigationClass:"js-main-navigation-scroller",containerSelector:".container",listContainerSelector:".main-navigation-menu",listSelector:".main-navigation-menu",listClass:"js-main-navigation-scroller-menu",itemClass:"js-main-navigation-scroller-link",prevControlSelector:".main-navigation-scroller-controls-prev",nextControlSelector:".main-navigation-scroller-controls-next",prevControlClass:["btn","p-0","js-main-navigation-scroller-controls","left-control"],nextControlClass:["btn","p-0","js-main-navigation-scroller-controls","right-control"],prevControlContent:"&#10094;",nextControlContent:"&#10095;",scrollStep:"auto",animationSpeed:400,controlOffset:50,resizeDebounceTime:200};init(){let t=this.options;this._listContainer=this.el.querySelector(t.listContainerSelector),this._listContainer&&(this._list=this.el.querySelector(t.listSelector),this._list&&(this._scrollStep="auto"===t.scrollStep?this._list.offsetWidth/2:parseFloat(t.scrollStep),this.initTemplate(),this.registerEvents(),document.fonts.ready.then(()=>{this.updateButtons();let e=t.activeItemSelector.replace("{id}",this.options.activeRootId);this._activeChild=this._list.querySelector(e),this._activeChild&&this.jumpToElement(this._activeChild)})))}registerEvents(){let t="click";window.addEventListener("resize",s.A.debounce(this._onResize.bind(this),this.options.resizeDebounceTime)),this._prevControl.addEventListener(t,this.onPrevControlClick.bind(this)),this._nextControl.addEventListener(t,this.onNextControlClick.bind(this)),this._list.addEventListener("scroll",this.updateButtons.bind(this)),this._list.addEventListener("keydown",t=>{("Tab"===t.code||9===t.keyCode)&&setTimeout(()=>{let t=document.activeElement;this._list.contains(t)&&t.scrollIntoView({behavior:"smooth",block:"end"})},0)})}initTemplate(){let t=this.options,e=this.el.querySelector(t.containerSelector);if(this.el.classList.add(t.mainNavigationClass),this._list.classList.add(t.listClass),[...this._list.children].forEach(e=>{e.classList.add(t.itemClass)}),this._prevControl=this.el.querySelector(t.prevControlSelector),!this._prevControl){this._prevControl=document.createElement("button");let i=document.createElement("span");i.innerHTML=t.prevControlContent,this._prevControl.appendChild(i),e.appendChild(this._prevControl)}if(this._prevControl.classList.add(...t.prevControlClass),this._nextControl=this.el.querySelector(t.nextControlSelector),!this._nextControl){this._nextControl=document.createElement("button");let i=document.createElement("span");i.innerHTML=t.nextControlContent,this._nextControl.appendChild(i),e.appendChild(this._nextControl)}this._nextControl.classList.add(...t.nextControlClass),this.$emitter.publish("onInitTemplate")}updateButtons(){let t=Math.ceil(this._listContainer.getBoundingClientRect().width),e=this._list.scrollWidth,i=this._list.scrollLeft;i>0?this._prevControl.style.display="block":this._prevControl.style.display="none",e>t&&i<e-t?this._nextControl.style.display="block":this._nextControl.style.display="none",this.$emitter.publish("onUpdateButtons")}_onResize(){let t=this.options,e=this._listContainer.getBoundingClientRect().width;"auto"===t.scrollStep&&(this._scrollStep=e/2),this.updateButtons(),this.$emitter.publish("onResize")}onPrevControlClick(t){t.preventDefault(),this.addOffset(-1*this._scrollStep),this.$emitter.publish("onPrevControlClick")}onNextControlClick(t){t.preventDefault(),this.addOffset(this._scrollStep),this.$emitter.publish("onNextControlClick")}addOffset(t){this.setOffset(this._list.scrollLeft+t),this.$emitter.publish("onAddOffset")}setOffset(t,e){let i=this.options.animationSpeed,s=this._listContainer.getBoundingClientRect().width,n=Math.max(0,Math.min(this._list.scrollWidth-s,t));if(!1!==e){this._list.scrollTo({left:n,behavior:"smooth"}),setTimeout(()=>{this.updateButtons()},i);return}this._list.scrollTo({left:n}),this.updateButtons(),this.$emitter.publish("onSetOffset")}jumpToElement(t){let e;let i=this.options,s=this._listContainer.getBoundingClientRect().width,n=this._list.scrollLeft,o=t.getBoundingClientRect(),l=t.offsetLeft,r=l+o.width;e=l>n&&r>n+s?r-s+i.controlOffset:Math.min(l,n),this.setOffset(e,!1),this.$emitter.publish("onJumpToElement")}}},4059:(t,e,i)=>{i.d(e,{A:()=>s});class s{static debounce(t,e){let i,s=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(){for(var n=arguments.length,o=Array(n),l=0;l<n;l++)o[l]=arguments[l];s&&!i&&setTimeout(t.bind(t,...o),0),clearTimeout(i),i=setTimeout(t.bind(t,...o),e)}}}}}]);

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.