PageSourceSearch

https://www.ellisdon.com/_nuxt/CxyDm0qg.js

js ellisdon.com collected 2026-09-24 18:38:50 UTC 2,594 bytes, 1 lines download raw bytes

1import{u as l}from"./Co190ZoO.js";import{u as c}from"./B4N_IFnZ.js";import{I as g}from"./CuY01jRc.js";import{m as u,F as m,d as s,o as n,r as p,f as h,n as y,q as f}from"#entry";const k={name:"Background",components:{ImageAsset:g},props:{data:{type:Object,required:!0},withOverlay:{type:Boolean,default:!0},imageTransformation:{type:Object,default:()=>({}),required:!1}},data(){return{triggerInstance:void 0}},computed:{desktopHotspotStyle(){return this.getHotspotStyle(this.data?.desktop?.hotspot)},mobileHotspotStyle(){return this.getHotspotStyle(this.data?.mobile?.hotspot)},displayVideo(){return this.data.backgroundType==="video"}},watch:{data:{handler(){this.killTrigger(),this.$nextTick(()=>{this.setupVideoTrigger()})},deep:!0},"data.video":{handler(t,e){t&&t!==e&&(this.killTrigger(),this.$nextTick(()=>{this.setupVideoTrigger()}))}}},mounted(){this.setupVideoTrigger()},beforeUnmount(){this.killTrigger()},methods:{getHotspotStyle(t){const{getHotspotPositionStyle:e}=c();return t?e(t):{}},killTrigger(){this.triggerInstance&&this.triggerInstance.kill()},playVideoManually(){this.$refs.video?.play()},async setupVideoTrigger(){if(!this.displayVideo)return;const{init:t}=l();this.$nextTick(async()=>{const e=this.$refs.video;if(e){e.pause(),e.currentTime=0,e.load();const a=()=>{e.removeEventListener("loadeddata",a),this.setupScrollTrigger(e,t)};e.addEventListener("loadeddata",a),window.setTimeout(()=>{e.removeEventListener("loadeddata",a),this.setupScrollTrigger(e,t)},1e3)}})},async setupScrollTrigger(t,e){this.triggerInstance=await e(t,{start:"top 50%",once:!0},({ScrollTrigger:a,el:r,opts:i})=>a.create({trigger:r,start:i.start,scroller:i.scroller||document.body,onEnter:()=>{r.play().catch(o=>{console.warn("Video play failed:",o)}),this.triggerInstance&&this.triggerInstance.kill()}}))}}},v={key:0,class:"asset-overlay"},T=["src"];function I(t,e,a,r,i,o){const d=m("ImageAsset");return o.displayVideo?(n(),s("video",{ref:"video",key:a.data.video,preload:"",playsinline:"",muted:"","aria-hidden":"true",tabindex:"-1"},[f("source",{src:a.data.video},null,8,T)])):(n(),s("div",{key:0,class:y(["background-asset",{"has-mobile-image":a.data.hasMobileImage&&a.data.mobile,"has-desktop-image":a.data.desktop}]),"aria-hidden":"true",role:"presentation"},[p(d,{data:a.data,transformation:a.imageTransformation,loading:t.$attrs.loading||"lazy",priority:t.$attrs.priority||!1,preload:t.$attrs.preload||!1},null,8,["data","transformation","loading","priority","preload"]),a.withOverlay?(n(),s("div",v)):h("",!0)],2))}const B=u(k,[["render",I],["__scopeId","data-v-82e1facf"]]);export{B};

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.