1(function(){class BreakdanceLinkAction{constructor(link){this.link=link;this.action=JSON.parse(this.link.dataset.action);if(!this.action)return;this.actionType=this.action.type;this.init()} 2initSliderLink(){this.slideClickHandler=this.slideClick.bind(this);if(!this.action.sliderOptions)return;const sliderId=this.action.sliderOptions.elementId;if(!sliderId)return;const slider=document.querySelector("."+sliderId);if(!slider)return;this.swiperInstanceId=sliderId;this.link.addEventListener("click",this.slideClickHandler)} 3destroySliderLink(){this.link.removeEventListener("click",this.slideClickHandler)} 4slideClick(event){event.preventDefault();const index=this.action.sliderOptions.slideIndex?parseInt(this.action.sliderOptions.slideIndex)-1:0;if(this.swiperInstanceId&&window.swiperInstances&&window.swiperInstances[this.swiperInstanceId]){const slider=window.swiperInstances[this.swiperInstanceId];const type=this.action.sliderOptions.actionType;if(type==="goto"){if(slider.loopedSlides){slider.slideToLoop(index)}else{slider.slideTo(index)}}else if(type==="next"){slider.slideNext()}else if(type==="previous"){slider.slidePrev()}}} 5destroy(){if(this.actionType==="slider"){this.destroySliderLink()} 6if(this.action==="popup"){this.destroyPopupLink()}} 7init(){if(this.actionType==="slider"){this.initSliderLink()} 8if(this.actionType==="popup"){this.initPopupLink()}} 9static autoload(parent=null){const element=parent??document;const selector=".breakdance-link[data-type='action'], .oxygen-link[data-type='action']";const links=element.querySelectorAll(selector);links.forEach((link)=>{new this(link)})} 10initPopupLink(){this.link.addEventListener("click",this.popupClick.bind(this))} 11destroyPopupLink(){this.link.removeEventListener("click",this.popupClick)} 12popupClick(event){event.preventDefault();if(!this.action.popupOptions||!this.action.popupOptions.popupId){return} 13const popupId=parseInt(this.action.popupOptions.popupId);const popupAction=this.action.popupOptions.popupAction;BreakdancePopup.runAction(popupId,popupAction)}} 14document.addEventListener("DOMContentLoaded",()=>BreakdanceLinkAction.autoload());window.BreakdanceLinkAction=BreakdanceLinkAction})()
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.