1"use strict";(self.webpackChunkmvtec_frontend=self.webpackChunkmvtec_frontend||[]).push([[826],{1083(e,t,n){n.r(t),n.d(t,{default:()=>o});const o=class{constructor(){console.log("BackToTopButton::initialize()"),document.querySelectorAll(".bb-back-to-top-button").forEach(e=>{this._initComponent(e)})}_setHidden(e,t){t?e.classList.remove("visible"):e.classList.add("visible")}_initComponent(e){e.addEventListener("click",()=>{window.scroll({top:0,left:0,behavior:"smooth"})});const t=[".bb-header-teaser",".bb-news-detail__head-wrapper"].map(e=>document.querySelector(e)).filter(Boolean);let n=!1;const o=()=>{const t=n||window.scrollY<=300;this._setHidden(e,t)};let s=!1;const r=()=>{s||(s=!0,requestAnimationFrame(()=>{s=!1,o()}))};if(window.addEventListener("scroll",r,{passive:!0}),window.addEventListener("resize",r),o(),t.length>0){const e=new WeakMap;let s=0;const r=new IntersectionObserver(t=>{for(const n of t){const t=!0===e.get(n.target),o=n.isIntersecting;!t&&o&&s++,t&&!o&&s--,e.set(n.target,o)}s=Math.max(0,s),n=s>0,o()},{threshold:0});for(const e of t)r.observe(e)}const i=document.querySelector(".bb-footer");if(i){const t=()=>{const t=i.getBoundingClientRect().top,n=window.innerHeight-t,o=Math.max(0,n);e.style.transform=o>0?`translateY(${-o}px)`:"translateY(0)"};let n=!1;const o=()=>{n||(n=!0,requestAnimationFrame(()=>{n=!1,t()}))};new IntersectionObserver(n=>{n[0]?.isIntersecting?(t(),window.addEventListener("scroll",o,{passive:!0}),window.addEventListener("resize",o)):(window.removeEventListener("scroll",o),window.removeEventListener("resize",o),e.style.transform="translateY(0)")}).observe(i)}}}}}]); 2//# sourceMappingURL=site.backToTopButton.9f29186f5eb833.js.map
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.