1import{Da as e,St as t,ba as a,sa as o}from"./B25Pxpwh.js";import{t as i}from"./DI2uc9Zh.js";import{t as s}from"./DxdmWW-Q.js";var r={name:"VideoPlayerVimeo",inheritAttrs:!1,props:{data:Object,allow:{type:String,default:""},autopause:{type:Boolean,default:void 0},autoplay:{type:Boolean,default:void 0},background:{type:Boolean,default:void 0},byline:{type:Boolean,default:void 0},color:{type:String,default:void 0},colors:{type:String,default:void 0},controls:{type:Boolean,default:void 0},dnt:{type:Boolean,default:void 0},keyboard:{type:Boolean,default:void 0},loop:{type:Boolean,default:void 0},muted:{type:Boolean,default:void 0},playsinline:{type:Boolean,default:void 0},portrait:{type:Boolean,default:void 0},quality:{type:String,default:void 0},responsive:{type:Boolean,default:void 0},speed:{type:Boolean,default:void 0},showTitle:{type:Boolean,default:void 0},transparent:{type:Boolean,default:void 0}},emits:["embedded","emits"],data:()=>({player:null,eventListeners:[]}),computed:{baseAllow(){const e=new Set((this.allow?.split?.(";")??[]).map(e=>e.trim()));return this.autoplay&&e.add("autoplay"),Array.from(e).join("; ")},attrs(){return Object.assign((this.data?.html||this.data?.embed?.html||"").replace(/<iframe|>|"|<\/iframe>/gm,"").trim().split(" ").reduce((e,t)=>{const[a,o]=t.split("=");if(!a)return e;if("src"===a&&o){const t=this.data?.embed??{};delete t.html;const s={autopause:this.autopause,autoplay:this.autoplay,background:this.background,byline:this.byline,color:this.color,colors:this.colors,controls:this.controls,dnt:this.dnt,keyboard:this.keyboard,loop:this.loop,muted:this.muted,playsinline:this.playsinline,portrait:this.portrait,quality:this.quality,responsive:this.responsive,speed:this.speed,title:this.showTitle,transparent:this.transparent};for(const e in s)void 0===s[e]&&delete s[e];for(const e in t)"url"!==e&&void 0===s[e]&&void 0!==t[e]&&(s[e]=t[e]);return e[a]=i(o,s),0===o.indexOf("//")&&(e[a]=`https:${e[a]}`),e}if(e[a]=o,"allow"===a){const t=new Set((o??"").split(";").map(e=>e.trim()));this.baseAllow&&this.baseAllow.split(";").forEach(e=>t.add(e.trim())),e[a]=Array.from(t).join("; ")}return e},{title:this.data?.details?.title,allow:this.baseAllow})??{},this.$attrs)}},mounted(){this.$refs.player&&(this.player=new s(this.$refs.player),this.eventListeners=[],this.setupEventListeners())},beforeUnmount(){this.cleanup()},methods:{cleanup(){if(this.player)try{this.eventListeners&&(this.eventListeners.forEach(({event:e,handler:t})=>{this.player.off(e,t)}),this.eventListeners=[]),this.player.unload(),this.player=null}catch(e){console.warn("Error during Vimeo player cleanup:",e)}},setupEventListeners(){this.player&&["loaded","ended","play","pause","timeupdate","progress","error"].forEach(e=>{const t=t=>{this.emit(t,e)};try{this.player.on(e,t),this.eventListeners.push({event:e,handler:t})}catch(a){}})},embedded(e){this.$emit(e,"embedded")},play(){this.player?.play?.()},pause(){this.player?.pause?.()},stop(){this.player?.pause?.(),this.player?.setCurrentTime?.(0)},emit(...e){this.$emit("emits",e)}}};var l=Object.assign(t(r,[["render",function(t,i,s,r,l,n){return e(),o("iframe",a({ref:"player",class:"c-video-player-vimeo"},{...n.attrs},{onLoad:i[0]||(i[0]=e=>n.emit(e,"load")),onError:i[1]||(i[1]=e=>n.emit(e,"error"))}),null,16)}]]),{__name:"VideoPlayerVimeo"});export{l 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.