1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ch-BaseParagraph-DdMCHfE6.js","assets/app-index-BGMqnN3C.js","assets/app-index-D8WdADzu.css"])))=>i.map(i=>d[i]); 2import{_ as T,o as l,c as o,e as u,b as C,h as d,F as f,w as b,a as w,k,n as M,g as x,x as y,m as p,l as P,r as m,d as S}from"./app-index-BGMqnN3C.js";const D={name:"BubFullBanner",components:{BaseParagraph:p(()=>P(()=>import("./ch-BaseParagraph-DdMCHfE6.js"),__vite__mapDeps([0,1,2])))},emits:["hide-me"],data(){return{columns:{},columnCount:1,isDraggingCarousel:!1,dragStartX:0,dragStartOffset:0,carouselOffset:0,activeSlideIndex:0,carouselMetrics:{gap:12},resizeObserver:null,dragAxis:null,touchId:null,hasDragged:!1,activePointerId:null,dragStartY:0,hasPointerCapture:!1}},created(){},props:{block:{type:Object,required:!0},showEditLinks:{type:Boolean,required:!1,default:!1}},computed:{isFull(){return this.block.field_bub_options&&this.block.field_bub_options.indexOf("full-mode")>=0||this.block.field_additional_class&&this.block.field_additional_class.indexOf("full-mode")>=0||y(this.block,"full-mode")},noScroll(){return this.block.field_additional_class?.indexOf("no-scroll")>=0||y(this.block,"no-scroll")},maxSlideIndex(){const e=this.block?.field_items||[];return Math.max(0,Math.min(2,e.length-1))},maxStartIndex(){const e=this.getBreakpointConfig(),i=Number(e?.slidesPerView||1),t=Math.max(1,Math.floor(i));return Math.max(0,this.maxSlideIndex-t+1)},isCarouselDraggable(){return typeof window>"u"?!0:window.innerWidth<1400}},mounted(){this.updateCarouselMetrics(),typeof window<"u"&&window.addEventListener("resize",this.onResize,{passive:!0});const e=this.$refs?.carouselViewport;e&&typeof ResizeObserver<"u"&&(this.resizeObserver=new ResizeObserver(()=>{this.updateCarouselMetrics()}),this.resizeObserver.observe(e))},beforeUnmount(){typeof window<"u"&&window.removeEventListener("resize",this.onResize),this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)},methods:{cmMeta(e,i=0){return{type:this.block.entity_type,id:this.block.entity_id,field:e,delta:i,langcode:this.block.langcode}},onResize(){this.updateCarouselMetrics()},getBreakpointConfig(){const e=typeof window<"u"?window.innerWidth:0;return e>=1920?{slidesPerView:3,gap:24}:e>=1440?{slidesPerView:3,gap:18}:e>=1280?{slidesPerView:2.1,gap:18}:e>=1024?{slidesPerView:2.1,gap:15}:e>=768?{slidesPerView:1.1,gap:15}:{slidesPerView:1.1,gap:12}},clampOffset(e){const i=this.$refs?.carouselViewport,t=this.$refs?.carouselTrack;if(!i||!t)return e;const n=i.clientWidth||0,a=t.scrollWidth||t.getBoundingClientRect().width||0,s=Math.min(0,n-a);return Math.max(s,Math.min(0,e))},setOffset(e){this.carouselOffset=this.clampOffset(e);const i=this.$refs?.carouselTrack;i&&(i.style.transform=`translate3d(${this.carouselOffset}px, 0, 0)`)},updateCarouselMetrics(){const e=this.$refs?.carouselViewport,i=this.$refs?.carouselTrack;if(!e||!i)return;const t=Number.parseFloat(getComputedStyle(i).columnGap||getComputedStyle(i).gap||"0")||0;this.carouselMetrics={gap:t},this.snapTo(this.activeSlideIndex,!1)},getStep(){const e=this.$refs?.carouselTrack;if(!e)return this.carouselMetrics.gap||0;const i=e.querySelector?.(".vbub-full-banner-slide");return(i?i.getBoundingClientRect().width:0)+(this.carouselMetrics.gap||0)},snapTo(e,i=!0){const t=this.$refs?.carouselTrack;if(!t)return;const n=Math.max(0,this.maxStartIndex),a=Math.max(0,Math.min(n,e));this.activeSlideIndex=a;const s=-a*this.getStep();i?t.style.transition="transform 260ms ease":t.style.transition="none",this.setOffset(s),i&&window.setTimeout(()=>{const c=this.$refs?.carouselTrack;c&&(c.style.transition="")},280)},onCarouselPointerDown(e){if(!this.isCarouselDraggable||e?.pointerType==="touch")return;const i=this.$refs?.carouselViewport,t=this.$refs?.carouselTrack;!i||!t||e?.button!==void 0&&e.button!==0||(this.isDraggingCarousel=!0,this.hasDragged=!1,this.hasPointerCapture=!1,this.activePointerId=e&&e.pointerId!==void 0?e.pointerId:null,this.dragStartX=e.clientX,this.dragStartY=e.clientY,this.dragStartOffset=this.carouselOffset,this.dragAxis=null)},onCarouselPointerMove(e){if(!this.isCarouselDraggable||!this.isDraggingCarousel||this.activePointerId!==null&&e.pointerId!==this.activePointerId||e?.pointerType==="mouse"&&e?.buttons!==void 0&&e.buttons!==1)return;const i=this.$refs?.carouselViewport,t=this.$refs?.carouselTrack;if(!i||!t)return;const n=e.clientX-this.dragStartX,a=e.clientY-this.dragStartY;
2if(this.dragAxis===null&&Math.max(Math.abs(n),Math.abs(a))>6&&(this.dragAxis=Math.abs(n)>=Math.abs(a)?"x":"y",this.dragAxis==="x"&&(t.style.transition="none",!this.hasPointerCapture)))try{i.setPointerCapture?.(e.pointerId),this.hasPointerCapture=!0}catch{}this.dragAxis==="x"&&(this.hasDragged=!0,this.setOffset(this.dragStartOffset+n),e?.cancelable&&e.preventDefault())},onCarouselPointerUp(e){if(!this.isCarouselDraggable||!this.isDraggingCarousel)return;this.isDraggingCarousel=!1,this.dragAxis=null;const i=this.$refs?.carouselViewport,t=this.$refs?.carouselTrack;if(!i||!t)return;const n=this.getStep();if(n>0){const s=Math.round(Math.abs(this.carouselOffset)/n);this.snapTo(s,!0)}const a=this.activePointerId;this.activePointerId=null;try{this.hasPointerCapture&&a!==null&&i.releasePointerCapture?.(a)}catch{}this.hasPointerCapture=!1,window.setTimeout(()=>{this.hasDragged=!1},0)},onCarouselTouchStart(e){if(!this.isCarouselDraggable)return;const i=this.$refs?.carouselViewport,t=this.$refs?.carouselTrack;if(!i||!t)return;const n=e.changedTouches&&e.changedTouches[0];n&&(this.isDraggingCarousel=!0,this.hasDragged=!1,this.dragAxis=null,this.touchId=n.identifier,this.dragStartX=n.clientX,this.dragStartOffset=this.carouselOffset,t.style.transition="none")},onCarouselTouchMove(e){if(!this.isCarouselDraggable)return;const i=Array.from(e.touches||[]).find(n=>n.identifier===this.touchId);if(!i)return;const t=i.clientX-this.dragStartX;this.dragAxis===null&&(this.dragAxis=Math.abs(t)>6?"x":null),this.dragAxis==="x"&&(this.hasDragged=!0,this.setOffset(this.dragStartOffset+t))},onCarouselTouchEnd(){if(!this.isCarouselDraggable)return;this.isDraggingCarousel=!1,this.touchId=null;const e=this.getStep();if(e>0){const i=Math.round(Math.abs(this.carouselOffset)/e);this.snapTo(i,!0)}this.dragAxis=null,window.setTimeout(()=>{this.hasDragged=!1},0)},prevSlide(){this.snapTo(this.activeSlideIndex-1,!0)},nextSlide(){this.snapTo(this.activeSlideIndex+1,!0)},getLinkFromEvent(e){const t=e?.target?.closest?.("a[href]")||(e?.composedPath?.()||[]).find(a=>a&&a.tagName==="A"&&a.getAttribute&&a.getAttribute("href"));if(!t)return null;const n=t.getAttribute("href");return n?{el:t,href:n}:null},onCarouselClickCapture(e){const i=this.getLinkFromEvent(e);if(!i)return;if(this.hasDragged){e.preventDefault(),e.stopPropagation(),this.hasDragged=!1;return}if(e.preventDefault(),e.stopPropagation(),i.el.getAttribute("target")==="_blank"){window.open(i.href,"_blank","noopener");return}window.location.href=i.href}}},O={class:"vbub-full-banner-bg"},I={class:"vbub-full-banner-main"},B={class:"container"},A={class:"vbub-full-banner-main-content"},V=["innerHTML"],L=["innerHTML"],z=["innerHTML"],E=["innerHTML"],H=["innerHTML"],F={key:0,class:"vbub-links bub-content-links"},W={key:0,class:"vbub-full-banner-main-items"},X={ref:"carouselTrack",class:"vbub-full-banner-track"},R={key:0,class:"vbub-full-banner-slide"},N={key:1,class:"scroll-part"},U={class:"vbub-full-banner-navs","aria-label":"Carousel navigation"},Y=["disabled"],q=["disabled"];function j(e,i,t,n,a,s){const c=m("BackgroundMedia"),_=m("BaseLink"),v=m("BaseParagraph"),h=S("editable");return l(),o(f,null,[u("div",O,[t.block.field_media&&t.block.field_media[0]?(l(),C(c,{key:0,media:t.block.field_media[0],thumbnail:t.block.field_media_thumbnail?t.block.field_media_thumbnail[0]:null,image_style:"banner"},null,8,["media","thumbnail"])):d("",!0)]),u("div",I,[u("div",B,[u("div",A,[u("div",null,[s.isFull?(l(),o(f,{key:0},[e.$hasText(t.block.field_title)&&e.$isBlockHtml(t.block.field_title)?b((l(),o("div",{key:0,class:"bub-title",innerHTML:t.block.field_title},null,8,V)),[[h,s.cmMeta("field_title")]]):e.$hasText(t.block.field_title)?b((l(),o("h1",{key:1,class:"bub-title",innerHTML:t.block.field_title},null,8,L)),[[h,s.cmMeta("field_title")]]):d("",!0)],64)):(l(),o(f,{key:1},[e.$hasText(t.block.field_title)&&e.$isBlockHtml(t.block.field_title)?b((l(),o("div",{key:0,class:"bub-title",innerHTML:t.block.field_title},null,8,z)),[[h,s.cmMeta("field_title")]]):e.$hasText(t.block.field_title)?b((l(),o("h2",{key:1,class:"bub-title",innerHTML:t.block.field_title},null,8,E)),[[h,s.cmMeta("field_title")]]):d("",!0)],64)),t.block.body?b((l(),o("div",{key:2,class:"bub-body",innerHTML:t.block.body}
2,null,8,H)),[[h,s.cmMeta("body")]]):d("",!0)]),t.block.field_links?(l(),o("div",F,[(l(!0),o(f,null,w(t.block.field_links,(r,g)=>(l(),C(_,{key:g,"base-link":r,version:t.block.version,delta:g,"field-name":"field_links","lang-code":t.block.langcode,"entity-id":t.block.entity_id,"entity-type":t.block.entity_type},null,8,["base-link","version","delta","lang-code","entity-id","entity-type"]))),128))])):d("",!0)]),t.block.field_items&&t.block.field_items[0]?(l(),o("div",W,[u("div",{ref:"carouselViewport",class:"vbub-full-banner-carousel",role:"region","aria-label":"Featured content",onClickCapture:i[0]||(i[0]=(...r)=>s.onCarouselClickCapture&&s.onCarouselClickCapture(...r)),onPointerdown:i[1]||(i[1]=(...r)=>s.onCarouselPointerDown&&s.onCarouselPointerDown(...r)),onPointermove:i[2]||(i[2]=(...r)=>s.onCarouselPointerMove&&s.onCarouselPointerMove(...r)),onPointerup:i[3]||(i[3]=(...r)=>s.onCarouselPointerUp&&s.onCarouselPointerUp(...r)),onPointercancel:i[4]||(i[4]=(...r)=>s.onCarouselPointerUp&&s.onCarouselPointerUp(...r)),onTouchstart:i[5]||(i[5]=(...r)=>s.onCarouselTouchStart&&s.onCarouselTouchStart(...r)),onTouchmovePassive:i[6]||(i[6]=(...r)=>s.onCarouselTouchMove&&s.onCarouselTouchMove(...r)),onTouchend:i[7]||(i[7]=(...r)=>s.onCarouselTouchEnd&&s.onCarouselTouchEnd(...r)),onTouchcancel:i[8]||(i[8]=(...r)=>s.onCarouselTouchEnd&&s.onCarouselTouchEnd(...r))},[u("div",X,[(l(!0),o(f,null,w((t.block.field_items||[]).slice(0,2),(r,g)=>(l(),o("div",{key:`vbub-full-banner-slide-${g}`,class:"vbub-full-banner-slide"},[k(v,{paragraph:r,"parent-has-title":!!t.block.field_title},null,8,["paragraph","parent-has-title"])]))),128)),t.block.field_items&&t.block.field_items[2]?(l(),o("div",R,[k(v,{paragraph:t.block.field_items[2],class:M({vhds:t.block.field_items[3]}),"parent-has-title":!!t.block.field_title},null,8,["paragraph","class","parent-has-title"]),t.block.field_items[3]?(l(),o(f,{key:0},[i[11]||(i[11]=u("div",{class:"views-element-container"},[u("div",{class:"simple-line"})],-1)),k(v,{paragraph:t.block.field_items[3],class:"vhds","parent-has-title":!!t.block.field_title},null,8,["paragraph","parent-has-title"])],64)):d("",!0)])):d("",!0)],512)],544)])):d("",!0),s.isFull&&!s.noScroll?(l(),o("div",N,[k(_,{"base-link":{url:"#discovercontent",label:t.block.field_bottom_text,additional_class:"scroll-link"}},null,8,["base-link"]),u("div",U,[u("button",{type:"button",class:"vbub-full-banner-nav vbub-full-banner-nav--prev",disabled:a.activeSlideIndex<=0,"aria-label":"Previous slide",onClick:i[9]||(i[9]=x((...r)=>s.prevSlide&&s.prevSlide(...r),["stop","prevent"]))},null,8,Y),u("button",{type:"button",class:"vbub-full-banner-nav vbub-full-banner-nav--next",disabled:a.activeSlideIndex>=s.maxStartIndex,"aria-label":"Next slide",onClick:i[10]||(i[10]=x((...r)=>s.nextSlide&&s.nextSlide(...r),["stop","prevent"]))},null,8,q)])])):d("",!0)])])],64)}const J=T(D,[["render",j]]);export{J as default};
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.