1(()=>{class t{constructor(t){this.el=t,this.tabButtons=this.el.querySelectorAll(".ds-block-video-tabs__tab-button"),this.videoWrappers=this.el.querySelectorAll(".ds-block-video-tabs__video-wrapper"),this.videos=this.el.querySelectorAll(".ds-block-video-tabs__video"),this.currentIndex=0,this.tabButtons.length&&this.videoWrappers.length&&this.init()}init(){this.tabButtons.forEach((t,e)=>{t.addEventListener("click",()=>{e!==this.currentIndex&&this.switchTab(e)})});const t=this.videoWrappers[0],e=t?t.querySelector(".ds-block-video-tabs__video"):null;this.playVideo(e)}switchTab(t){this.tabButtons.forEach(t=>t.classList.remove("-active")),this.videoWrappers.forEach(t=>t.classList.remove("-active")),this.videos.forEach(t=>{t.pause(),t.currentTime=0}),this.tabButtons[t].classList.add("-active"),this.videoWrappers[t].classList.add("-active"),this.currentIndex=t;const e=this.videoWrappers[t],s=e?e.querySelector(".ds-block-video-tabs__video"):null;s&&setTimeout(()=>{s.readyState<2?(s.load(),s.addEventListener("loadeddata",()=>this.playVideo(s),{once:!0})):this.playVideo(s)},100)}playVideo(t){t&&t.readyState>=2&&t.play().catch(()=>{})}}document.addEventListener("DOMContentLoaded",()=>{document.querySelectorAll(".ds-block-video-tabs").forEach(e=>{new t(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.