@smartimpact-it/modern-video-embed 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/README.md +1205 -0
  2. package/dist/components/VimeoEmbed.d.ts +143 -0
  3. package/dist/components/VimeoEmbed.d.ts.map +1 -0
  4. package/dist/components/VimeoEmbed.js +1176 -0
  5. package/dist/components/VimeoEmbed.js.map +1 -0
  6. package/dist/components/VimeoEmbed.min.js +1 -0
  7. package/dist/components/YouTubeEmbed.d.ts +225 -0
  8. package/dist/components/YouTubeEmbed.d.ts.map +1 -0
  9. package/dist/components/YouTubeEmbed.js +1354 -0
  10. package/dist/components/YouTubeEmbed.js.map +1 -0
  11. package/dist/components/YouTubeEmbed.min.js +1 -0
  12. package/dist/css/components.css +349 -0
  13. package/dist/css/components.css.map +1 -0
  14. package/dist/css/components.min.css +1 -0
  15. package/dist/css/main.css +12210 -0
  16. package/dist/css/main.css.map +1 -0
  17. package/dist/css/main.min.css +7 -0
  18. package/dist/index.d.ts +3 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +4 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/index.min.js +1 -0
  23. package/dist/types/index.d.ts +7 -0
  24. package/dist/types/index.d.ts.map +1 -0
  25. package/dist/types/index.js +5 -0
  26. package/dist/types/index.js.map +1 -0
  27. package/dist/vimeo-only.d.ts +7 -0
  28. package/dist/vimeo-only.d.ts.map +1 -0
  29. package/dist/vimeo-only.js +8 -0
  30. package/dist/vimeo-only.js.map +1 -0
  31. package/dist/vimeo-only.min.js +1 -0
  32. package/dist/youtube-only.d.ts +7 -0
  33. package/dist/youtube-only.d.ts.map +1 -0
  34. package/dist/youtube-only.js +8 -0
  35. package/dist/youtube-only.js.map +1 -0
  36. package/dist/youtube-only.min.js +1 -0
  37. package/package.json +75 -0
  38. package/src/components/VimeoEmbed.ts +1340 -0
  39. package/src/components/YouTubeEmbed.ts +1568 -0
  40. package/src/index.ts +3 -0
  41. package/src/styles/README.md +56 -0
  42. package/src/styles/components.scss +7 -0
  43. package/src/styles/main.scss +10 -0
  44. package/src/styles/vimeo-embed.scss +255 -0
  45. package/src/styles/youtube-embed.scss +261 -0
  46. package/src/types/common.d.ts +198 -0
  47. package/src/types/index.ts +7 -0
  48. package/src/types/vimeo-embed.d.ts +80 -0
  49. package/src/types/youtube-embed.d.ts +83 -0
  50. package/src/vimeo-only.ts +9 -0
  51. package/src/youtube-only.ts +9 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"YouTubeEmbed.js","sourceRoot":"","sources":["../../src/components/YouTubeEmbed.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ var _YouTubeEmbed_instances,_YouTubeEmbed_url,_YouTubeEmbed_videoId,_YouTubeEmbed_autoplay,_YouTubeEmbed_muted,_YouTubeEmbed_controls,_YouTubeEmbed_lazy,_YouTubeEmbed_poster,_YouTubeEmbed_playing,_YouTubeEmbed_background,_YouTubeEmbed_playerVars,_YouTubeEmbed_reflectBooleanAttribute,_YouTubeEmbed_updateBackgroundMode,__awaiter=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))(function(a,r){function o(e){try{l(s.next(e))}catch(e){r(e)}}function u(e){try{l(s.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i(function(e){e(t)})).then(o,u)}l((s=s.apply(e,t||[])).next())})},__classPrivateFieldSet=this&&this.__classPrivateFieldSet||function(e,t,i,s,a){if("m"===s)throw new TypeError("Private method is not writable");if("a"===s&&!a)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===s?a.call(e,i):a?a.value=i:t.set(e,i),i},__classPrivateFieldGet=this&&this.__classPrivateFieldGet||function(e,t,i,s){if("a"===i&&!s)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!s:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?s:"a"===i?s.call(e):s?s.value:t.get(e)};export class YouTubeEmbed extends HTMLElement{constructor(){super(...arguments),_YouTubeEmbed_instances.add(this),this.iframe=null,this.player=null,this.playerReady=!1,this.playPauseButton=null,this.initialized=!1,this.setCustomControlState=null,this.updatingAttribute=!1,this.updatingMutedState=!1,_YouTubeEmbed_url.set(this,""),_YouTubeEmbed_videoId.set(this,""),_YouTubeEmbed_autoplay.set(this,!1),_YouTubeEmbed_muted.set(this,!1),_YouTubeEmbed_controls.set(this,!1),_YouTubeEmbed_lazy.set(this,!1),_YouTubeEmbed_poster.set(this,""),_YouTubeEmbed_playing.set(this,!1),_YouTubeEmbed_background.set(this,!1),_YouTubeEmbed_playerVars.set(this,{}),this.posterClickHandler=null,this.keyboardHandler=null,this.ariaLiveRegion=null,this.apiLoadRetries=0,this.intersectionObserver=null,this.hasLoadedVideo=!1}static get observedAttributes(){return["url","video-id","autoplay","controls","lazy","muted","poster","background","player-vars","quality"]}attributeChangedCallback(e,t,i){if(!this.updatingAttribute)switch(this.log(`YouTubeEmbed: Attribute changed - ${e}: ${t} -> ${i}`),e){case"url":__classPrivateFieldSet(this,_YouTubeEmbed_url,i||"","f"),__classPrivateFieldSet(this,_YouTubeEmbed_videoId,this.extractVideoId(__classPrivateFieldGet(this,_YouTubeEmbed_url,"f")),"f"),this.initialized&&this.reinitializePlayer();break;case"video-id":__classPrivateFieldSet(this,_YouTubeEmbed_videoId,i||"","f"),this.initialized&&this.reinitializePlayer();break;case"autoplay":__classPrivateFieldSet(this,_YouTubeEmbed_autoplay,null!==i,"f"),!__classPrivateFieldGet(this,_YouTubeEmbed_playing,"f")&&__classPrivateFieldGet(this,_YouTubeEmbed_autoplay,"f")&&!__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")&&this.initialized&&this.play();break;case"controls":__classPrivateFieldSet(this,_YouTubeEmbed_controls,null!==i,"f"),this.initialized&&this.reinitializePlayer();break;case"lazy":__classPrivateFieldSet(this,_YouTubeEmbed_lazy,null!==i,"f");break;case"muted":__classPrivateFieldSet(this,_YouTubeEmbed_muted,null!==i,"f"),this.player&&this.playerReady&&(__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")?this.player.mute():this.player.unMute());break;case"poster":__classPrivateFieldSet(this,_YouTubeEmbed_poster,i||"","f"),__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")&&!this.player&&this.showPoster(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"));break;case"background":__classPrivateFieldSet(this,_YouTubeEmbed_background,null!==i,"f"),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_updateBackgroundMode).call(this);break;case"player-vars":try{__classPrivateFieldSet(this,_YouTubeEmbed_playerVars,i?JSON.parse(i):{},"f")}catch(e){this.error("YouTubeEmbed: Invalid player-vars JSON:",e),__classPrivateFieldSet(this,_YouTubeEmbed_playerVars,{},"f")}this.initialized&&this.reinitializePlayer();break;case"quality":i&&this.player&&this.playerReady&&this.setQuality(i)}}get url(){return __classPrivateFieldGet(this,_YouTubeEmbed_url,"f")}set url(e){__classPrivateFieldSet(this,_YouTubeEmbed_url,e,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_videoId,this.extractVideoId(e),"f"),this.initialized&&this.reinitializePlayer()}get videoId(){return __classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")}set videoId(e){__classPrivateFieldSet(this,_YouTubeEmbed_videoId,e,"f"),this.initialized&&this.reinitializePlayer()}get autoplay(){return __classPrivateFieldGet(this,_YouTubeEmbed_autoplay,"f")}set autoplay(e){__classPrivateFieldSet(this,_YouTubeEmbed_autoplay,e,"f"),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_reflectBooleanAttribute).call(this,"autoplay",e),!__classPrivateFieldGet(this,_YouTubeEmbed_playing,"f")&&e&&!__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")&&this.initialized&&this.play()}get controls(){return __classPrivateFieldGet(this,_YouTubeEmbed_controls,"f")}set controls(e){__classPrivateFieldSet(this,_YouTubeEmbed_controls,e,"f"),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_reflectBooleanAttribute).call(this,"controls",e),this.initialized&&this.reinitializePlayer()}get lazy(){return __classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")}set lazy(e){__classPrivateFieldSet(this,_YouTubeEmbed_lazy,e,"f"),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_reflectBooleanAttribute).call(this,"lazy",e)}get muted(){return __classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")}set muted(e){__classPrivateFieldSet(this,_YouTubeEmbed_muted,e,"f"),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_reflectBooleanAttribute).call(this,"muted",e),this.player&&this.playerReady&&(this.updatingMutedState=!0,e?this.player.mute():this.player.unMute(),setTimeout(()=>{this.updatingMutedState=!1},100))}get poster(){return __classPrivateFieldGet(this,_YouTubeEmbed_poster,"f")}set poster(e){__classPrivateFieldSet(this,_YouTubeEmbed_poster,e,"f"),this.updatingAttribute=!0,e?this.setAttribute("poster",e):this.removeAttribute("poster"),this.updatingAttribute=!1,__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")&&!this.player&&this.showPoster(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"))}get playing(){return __classPrivateFieldGet(this,_YouTubeEmbed_playing,"f")}get background(){return __classPrivateFieldGet(this,_YouTubeEmbed_background,"f")}set background(e){__classPrivateFieldSet(this,_YouTubeEmbed_background,e,"f"),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_reflectBooleanAttribute).call(this,"background",e),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_updateBackgroundMode).call(this)}get playerVars(){return __classPrivateFieldGet(this,_YouTubeEmbed_playerVars,"f")}set playerVars(e){__classPrivateFieldSet(this,_YouTubeEmbed_playerVars,e,"f"),this.setAttribute("player-vars",JSON.stringify(e)),this.initialized&&this.reinitializePlayer()}extractVideoId(e){if(!e)return"";const t=e.match(/(?:youtube\.com\/(?:[^\/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=)|youtu\.be\/)([^"&?\/ ]{11})/);return t&&t[1]?t[1]:/^[a-zA-Z0-9_-]{11}$/.test(e)?e:(this.warn(`YouTubeEmbed: Could not extract video ID from "${e}"`),"")}log(...e){YouTubeEmbed.DEBUG&&console.log("YouTubeEmbed:",...e)}warn(...e){console.warn(...e)}error(...e){console.error(...e)}dispatchCustomEvent(e,t){this.dispatchEvent(new CustomEvent(e,{detail:t,bubbles:!0,composed:!0}))}isValidPosterUrl(e){if(!e)return!1;try{return new URL(e),!0}catch(e){return!1}}setupFullscreenListener(){const e=()=>{const e=this.isFullscreen();this.dispatchCustomEvent("fullscreenchange",{isFullscreen:e}),e?this.classList.add("is-fullscreen"):this.classList.remove("is-fullscreen")};document.addEventListener("fullscreenchange",e),document.addEventListener("webkitfullscreenchange",e),document.addEventListener("mozfullscreenchange",e),document.addEventListener("MSFullscreenChange",e)}setupKeyboardHandlers(){this.keyboardHandler=e=>{var t,i;if(this.playerReady&&"INPUT"!==(null===(t=e.target)||void 0===t?void 0:t.tagName))switch(e.key.toLowerCase()){case"k":case" ":e.preventDefault(),this.togglePlay(),this.announceToScreenReader(__classPrivateFieldGet(this,_YouTubeEmbed_playing,"f")?"Video playing":"Video paused");break;case"m":e.preventDefault(),this.toggleMute(),null===(i=this.player)||void 0===i||i.isMuted().then(e=>{this.announceToScreenReader(e?"Video muted":"Video unmuted")});break;case"f":e.preventDefault(),document.fullscreenElement?(document.exitFullscreen(),this.announceToScreenReader("Exited fullscreen")):this.enterFullscreen&&(this.enterFullscreen(),this.announceToScreenReader("Entered fullscreen"))}},this.addEventListener("keydown",this.keyboardHandler)}announceToScreenReader(e){this.ariaLiveRegion&&(this.ariaLiveRegion.textContent=e,setTimeout(()=>{this.ariaLiveRegion&&(this.ariaLiveRegion.textContent="")},1e3))}addResourceHints(){[{rel:"preconnect",href:"https://www.youtube.com"},{rel:"preconnect",href:"https://i.ytimg.com"},{rel:"dns-prefetch",href:"https://www.youtube.com"},{rel:"dns-prefetch",href:"https://i.ytimg.com"}].forEach(({rel:e,href:t})=>{if(!document.querySelector(`link[rel="${e}"][href="${t}"]`)){const i=document.createElement("link");i.rel=e,i.href=t,"preconnect"===e&&(i.crossOrigin="anonymous"),document.head.appendChild(i)}})}setupIntersectionObserver(){if(!("IntersectionObserver"in window))return;this.intersectionObserver=new IntersectionObserver(e=>{e.forEach(e=>{if(e.isIntersecting&&!this.hasLoadedVideo){this.hasLoadedVideo=!0,this.log("YouTubeEmbed: Video entering viewport, loading...");"true"===this.getAttribute("data-poster-autoplay")||this.initializePlayer(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")),this.intersectionObserver&&this.intersectionObserver.disconnect()}})},{root:null,rootMargin:"50px",threshold:.01}),this.intersectionObserver.observe(this)}showErrorMessage(e){const t=document.createElement("div");t.className="youtube-error-message",t.setAttribute("role","alert"),t.innerHTML=`\n <div class="error-content">\n <svg width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">\n <circle cx="12" cy="12" r="10"></circle>\n <line x1="12" y1="8" x2="12" y2="12"></line>\n <line x1="12" y1="16" x2="12.01" y2="16"></line>\n </svg>\n <p class="error-message">${e}</p>\n <button class="retry-button">Retry</button>\n </div>\n `;const i=t.querySelector(".retry-button");i&&i.addEventListener("click",()=>{this.apiLoadRetries=0,t.remove(),__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")&&this.initializePlayer(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"))}),this.innerHTML="",this.appendChild(t)}connectedCallback(){YouTubeEmbed.instanceCount++,this.log("YouTubeEmbed: connectedCallback called, instance count:",YouTubeEmbed.instanceCount),1===YouTubeEmbed.instanceCount&&this.addResourceHints();const e=this.getAttribute("url"),t=this.getAttribute("video-id");e?(__classPrivateFieldSet(this,_YouTubeEmbed_url,e,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_videoId,this.extractVideoId(e),"f")):t&&__classPrivateFieldSet(this,_YouTubeEmbed_videoId,t,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_autoplay,this.hasAttribute("autoplay"),"f"),__classPrivateFieldSet(this,_YouTubeEmbed_controls,this.hasAttribute("controls"),"f"),__classPrivateFieldSet(this,_YouTubeEmbed_lazy,this.hasAttribute("lazy"),"f"),__classPrivateFieldSet(this,_YouTubeEmbed_muted,this.hasAttribute("muted"),"f"),__classPrivateFieldSet(this,_YouTubeEmbed_background,this.hasAttribute("background"),"f"),__classPrivateFieldSet(this,_YouTubeEmbed_poster,this.getAttribute("poster")||"","f");try{const e=this.getAttribute("player-vars");__classPrivateFieldSet(this,_YouTubeEmbed_playerVars,e?JSON.parse(e):{},"f")}catch(e){this.error("YouTubeEmbed: Invalid player-vars JSON on init:",e),__classPrivateFieldSet(this,_YouTubeEmbed_playerVars,{},"f")}if(!__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"))return this.error("YouTubeEmbed: Missing or invalid video ID"),void this.dispatchCustomEvent("error",{message:"Missing or invalid video ID"});this.classList.add("youtube-embed-wrapper"),this.setAttribute("role","region"),this.setAttribute("aria-label","Video player"),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.ariaLiveRegion=document.createElement("div"),this.ariaLiveRegion.setAttribute("aria-live","polite"),this.ariaLiveRegion.setAttribute("aria-atomic","true"),this.ariaLiveRegion.className="sr-only",this.ariaLiveRegion.style.cssText="position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;",this.appendChild(this.ariaLiveRegion),this.setupKeyboardHandlers(),this.setupFullscreenListener(),__classPrivateFieldGet(this,_YouTubeEmbed_instances,"m",_YouTubeEmbed_updateBackgroundMode).call(this),__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")?(this.showPoster(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")),this.setupIntersectionObserver()):this.initializePlayer(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")),this.initialized=!0,this.dispatchCustomEvent("connected")}disconnectedCallback(){if(YouTubeEmbed.instanceCount--,this.log("YouTubeEmbed: disconnectedCallback called, remaining instances:",YouTubeEmbed.instanceCount),this.player){try{this.player.destroy(),this.log("YouTubeEmbed: Player destroyed.")}catch(e){this.warn("YouTubeEmbed: Error destroying player:",e)}this.player=null}this.keyboardHandler&&(this.removeEventListener("keydown",this.keyboardHandler),this.keyboardHandler=null);const e=this.querySelector(".youtube-poster"),t=this.querySelector(".button-overlay");if(e&&this.posterClickHandler&&(e.removeEventListener("click",this.posterClickHandler),this.posterClickHandler=null),t&&this.posterClickHandler&&t.removeEventListener("click",this.posterClickHandler),this.innerHTML="",this.classList.remove("youtube-embed-wrapper","youtube-embed-container","is-playing"),0===YouTubeEmbed.instanceCount){this.log("YouTubeEmbed: Last instance, cleaning up global resources");const e=document.querySelector('script[src="https://www.youtube.com/iframe_api"]');e&&(e.remove(),this.log("YouTubeEmbed: YouTube API script removed.")),window.onYouTubeIframeAPIReady&&delete window.onYouTubeIframeAPIReady,YouTubeEmbed.apiLoaded=!1,YouTubeEmbed.apiReady=!1}this.iframe=null,this.playPauseButton=null,this.setCustomControlState=null,this.dispatchCustomEvent("disconnected"),this.log("YouTubeEmbed: Cleanup complete.")}reinitializePlayer(){if(this.initialized&&__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")){if(this.player)try{this.player.destroy()}catch(e){this.warn("YouTubeEmbed: Error destroying player:",e)}__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")?this.showPoster(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")):this.initializePlayer(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"))}}showPoster(e){const t=this.isValidPosterUrl(__classPrivateFieldGet(this,_YouTubeEmbed_poster,"f"))?__classPrivateFieldGet(this,_YouTubeEmbed_poster,"f"):`https://img.youtube.com/vi/${e}/hqdefault.jpg`;this.log("YouTubeEmbed: Using poster URL:",t),this.innerHTML="",this.posterClickHandler&&(this.posterClickHandler=null);const i=document.createElement("img");i.src=t,i.alt="YouTube Video Thumbnail",i.classList.add("youtube-poster","video-poster"),i.loading="lazy",i.onerror=()=>{this.warn("YouTubeEmbed: Poster failed to load, using white background."),i.style.display="none",this.style.backgroundColor="#FFFFFF"};const s=document.createElement("div");s.classList.add("button-overlay"),s.setAttribute("role","button"),s.setAttribute("tabindex","0"),s.setAttribute("aria-label","Play video");const a=document.createElement("div");a.classList.add("button"),a.setAttribute("aria-hidden","true"),s.appendChild(a);const r=()=>{this.log("YouTubeEmbed: Loading video from poster click"),this.setAttribute("data-poster-autoplay","true");try{this.initializePlayer(e)}catch(e){this.error("YouTubeEmbed: Error initializing player from poster:",e),this.dispatchCustomEvent("error",{message:"Failed to load video"})}};this.posterClickHandler=r;i.addEventListener("click",r),s.addEventListener("click",r),s.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),r())}),this.appendChild(i),this.appendChild(s),this.log("YouTubeEmbed: Poster displayed for lazy loading")}initializePlayer(e){return __awaiter(this,void 0,void 0,function*(){this.log("YouTubeEmbed: Initializing player for video ID:",e);const t=__classPrivateFieldGet(this,_YouTubeEmbed_background,"f"),i=t||this.hasAttribute("autoplay")||this.hasAttribute("data-poster-autoplay")||this.hasAttribute("data-should-autoplay"),s=!t&&this.hasAttribute("controls"),a=t||i;this.hasAttribute("data-poster-autoplay")&&this.removeAttribute("data-poster-autoplay"),this.hasAttribute("data-should-autoplay")&&this.removeAttribute("data-should-autoplay"),this.log("YouTubeEmbed: Creating iframe with autoplay:",i,"controls:",s),this.iframe=document.createElement("iframe");const r=new URLSearchParams(Object.assign({enablejsapi:"1",autoplay:i?"1":"0",controls:s||t?"0":"1",mute:a?"1":"0",playsinline:"1",rel:"0",modestbranding:"1",origin:window.location.origin||"localhost"},__classPrivateFieldGet(this,_YouTubeEmbed_playerVars,"f")));__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")&&r.set("mute","1"),i&&!__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")&&(__classPrivateFieldSet(this,_YouTubeEmbed_muted,!0,"f"),this.log("YouTubeEmbed: Autoplay enabled, forcing muted state for compliance")),this.iframe.src=`https://www.youtube.com/embed/${e}?${r.toString()}`,this.iframe.allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",this.iframe.allowFullscreen=!0,this.iframe.style.position="absolute",this.iframe.style.border="none",__classPrivateFieldGet(this,_YouTubeEmbed_background,"f")?this.iframe.style.pointerEvents="none":(this.iframe.style.top="0",this.iframe.style.left="0",this.iframe.style.width="100%",this.iframe.style.height="100%"),this.log("YouTubeEmbed: Iframe created with src:",this.iframe.src),this.replaceChildren(this.iframe),s||this.addCustomControls();try{yield YouTubeEmbed.loadYouTubeAPIWithRetry(this.apiLoadRetries),this.player=new YT.Player(this.iframe,{videoId:e,events:{onReady:()=>{this.log("YouTubeEmbed: Player is ready."),this.playerReady=!0,__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")?this.player.mute():this.player.unMute(),i&&this.setCustomControlState&&(this.setCustomControlState(!0),__classPrivateFieldSet(this,_YouTubeEmbed_playing,!0,"f")),this.dispatchCustomEvent("ready")},onStateChange:e=>{const t=e.data===YT.PlayerState.PLAYING,i=e.data===YT.PlayerState.PAUSED,s=e.data===YT.PlayerState.ENDED;__classPrivateFieldSet(this,_YouTubeEmbed_playing,t,"f");try{if(!this.updatingMutedState&&this.player&&"function"==typeof this.player.isMuted){const e=this.player.isMuted();e!==__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")&&(__classPrivateFieldSet(this,_YouTubeEmbed_muted,e,"f"),this.log("YouTubeEmbed: Synced muted state:",e))}}catch(e){this.warn("YouTubeEmbed: Could not sync muted state:",e)}this.setCustomControlState&&this.setCustomControlState(t),t?this.dispatchCustomEvent("play"):i?this.dispatchCustomEvent("pause"):s&&this.dispatchCustomEvent("ended")},onError:e=>{this.error("YouTubeEmbed: Player encountered an error:",e);let t="Unknown error occurred";switch(e.data){case 2:t="Invalid video ID";break;case 5:t="HTML5 player error";break;case 100:t="Video not found or private";break;case 101:case 150:t="Video cannot be embedded (restrictions by owner)";break;default:t=`YouTube error code: ${e.data}`}this.dispatchCustomEvent("error",{message:t,code:e.data})}}})}catch(e){this.error("YouTubeEmbed: YouTube API initialization failed:",e),this.showErrorMessage(e instanceof Error?e.message:"Failed to load YouTube player. Please refresh the page or check your connection."),this.dispatchCustomEvent("error",{message:e instanceof Error?e.message:"API load failed",code:"API_LOAD_ERROR",retryable:!0})}})}static loadYouTubeAPI(){return __awaiter(this,void 0,void 0,function*(){return new Promise((e,t)=>{if(this.apiReady)return void e();const i=setTimeout(()=>{s(),t(new Error("YouTube API loading timeout. The API script may be blocked by an ad blocker or network issue."))},this.API_LOAD_TIMEOUT),s=()=>{clearTimeout(i),delete window.onYouTubeIframeAPIReady};if(!this.apiLoaded){const e=document.createElement("script");e.src="https://www.youtube.com/iframe_api",e.onerror=()=>{s(),t(new Error("Failed to load YouTube API script. Please check your network connection or disable ad blockers."))},document.head.appendChild(e),this.apiLoaded=!0}window.onYouTubeIframeAPIReady=()=>{this.apiReady=!0,s(),e()}})})}static loadYouTubeAPIWithRetry(){return __awaiter(this,arguments,void 0,function*(e=0){try{yield this.loadYouTubeAPI()}catch(t){if(e<this.MAX_API_RETRIES)return console.warn(`YouTubeEmbed: API load failed, retrying (${e+1}/${this.MAX_API_RETRIES})...`),yield new Promise(e=>setTimeout(e,this.API_RETRY_DELAY)),this.loadYouTubeAPIWithRetry(e+1);throw t}})}addCustomControls(){this.classList.add("youtube-embed-container");const e=document.createElement("div");e.classList.add("button-overlay"),this.playPauseButton=document.createElement("div"),this.playPauseButton.classList.add("button");let t=!1;const i=e=>{t=e,e?this.classList.add("is-playing"):this.classList.remove("is-playing")};this.setCustomControlState=i,e.addEventListener("click",()=>{t?(this.player&&"function"==typeof this.player.pauseVideo?this.player.pauseVideo():this.iframe&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*"),i(!1)):(this.player&&"function"==typeof this.player.playVideo?this.player.playVideo():this.iframe&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"),i(!0))}),this.playPauseButton&&e.appendChild(this.playPauseButton),this.appendChild(e)}play(){return __awaiter(this,void 0,void 0,function*(){!__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")||this.player||this.iframe||(this.log("YouTubeEmbed: Lazy video needs to be loaded first. Initializing..."),this.setAttribute("data-should-autoplay","true"),yield this.initializePlayer(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f")),yield new Promise(e=>setTimeout(e,1e3))),this.playerReady||(this.warn("YouTubeEmbed: Player is not ready. Waiting for initialization."),yield new Promise(e=>{const t=setInterval(()=>{this.playerReady&&(clearInterval(t),e(null))},100);setTimeout(()=>{clearInterval(t),e(null)},5e3)})),this.removeAttribute("data-should-autoplay"),this.player&&"function"==typeof this.player.playVideo?(this.player.playVideo(),this.log("YouTubeEmbed: Video playback started via API.")):(this.log("YouTubeEmbed: Using iframe postMessage for play."),this.iframe&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*")),__classPrivateFieldSet(this,_YouTubeEmbed_playing,!0,"f"),this.setCustomControlState&&this.setCustomControlState(!0),this.dispatchCustomEvent("play")})}pause(){this.player&&"function"==typeof this.player.pauseVideo?(this.player.pauseVideo(),this.log("YouTubeEmbed: Video paused via API.")):(this.log("YouTubeEmbed: Using iframe postMessage for pause."),this.iframe&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")),__classPrivateFieldSet(this,_YouTubeEmbed_playing,!1,"f"),this.setCustomControlState&&this.setCustomControlState(!1),this.dispatchCustomEvent("pause")}stopVideo(){this.player&&"function"==typeof this.player.stopVideo?(this.player.stopVideo(),this.log("YouTubeEmbed: Video stopped via API.")):(this.log("YouTubeEmbed: Using iframe postMessage for stop."),this.iframe&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage('{"event":"command","func":"stopVideo","args":""}',"*")),__classPrivateFieldSet(this,_YouTubeEmbed_playing,!1,"f"),this.setCustomControlState&&this.setCustomControlState(!1),this.dispatchCustomEvent("stop")}mute(){this.muted=!0}unmute(){this.muted=!1}togglePlay(){__classPrivateFieldGet(this,_YouTubeEmbed_playing,"f")?this.pause():this.play()}toggleMute(){this.muted=!__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")}static toggleDebug(e){YouTubeEmbed.DEBUG=void 0!==e?e:!YouTubeEmbed.DEBUG,console.log(`YouTubeEmbed: Debugging is now ${YouTubeEmbed.DEBUG?"ENABLED":"DISABLED"}.`)}getPlayerState(){let e=__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f");if(this.player&&this.playerReady)try{e=this.player.isMuted(),e!==__classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")&&__classPrivateFieldSet(this,_YouTubeEmbed_muted,e,"f")}catch(e){this.warn("YouTubeEmbed: Could not get muted state from player:",e)}return{playing:__classPrivateFieldGet(this,_YouTubeEmbed_playing,"f"),muted:e,videoId:__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"),ready:this.playerReady,initialized:this.initialized}}isPlaying(){return __classPrivateFieldGet(this,_YouTubeEmbed_playing,"f")}isMuted(){if(this.player&&this.playerReady)try{return this.player.isMuted()}catch(e){this.warn("YouTubeEmbed: Could not get muted state from player:",e)}return __classPrivateFieldGet(this,_YouTubeEmbed_muted,"f")}enterFullscreen(){const e=this;return e.requestFullscreen?e.requestFullscreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.msRequestFullscreen?e.msRequestFullscreen():Promise.reject(new Error("Fullscreen API not supported"))}exitFullscreen(){const e=document;return e.exitFullscreen?e.exitFullscreen():e.webkitExitFullscreen?e.webkitExitFullscreen():e.mozCancelFullScreen?e.mozCancelFullScreen():e.msExitFullscreen?e.msExitFullscreen():Promise.reject(new Error("Fullscreen API not supported"))}toggleFullscreen(){return __awaiter(this,void 0,void 0,function*(){this.isFullscreen()?yield this.exitFullscreen():yield this.enterFullscreen()})}isFullscreen(){const e=document;return!!(e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement)}getAvailableQualities(){if(this.player&&this.playerReady)try{return this.player.getAvailableQualityLevels()||[]}catch(e){this.warn("YouTubeEmbed: Could not get available qualities:",e)}return[]}getCurrentQuality(){if(this.player&&this.playerReady)try{return this.player.getPlaybackQuality()||"auto"}catch(e){this.warn("YouTubeEmbed: Could not get current quality:",e)}return"auto"}setQuality(e){if(this.player&&this.playerReady)try{const t=this.getCurrentQuality();this.player.setPlaybackQuality(e);const i=new CustomEvent("qualitychange",{detail:{oldQuality:t,newQuality:e,availableQualities:this.getAvailableQualities()},bubbles:!0,composed:!0});this.dispatchEvent(i)}catch(e){this.warn("YouTubeEmbed: Could not set quality:",e)}else this.warn("YouTubeEmbed: Player not ready for quality change")}getCurrentTime(){if(this.player&&this.playerReady)try{return this.player.getCurrentTime()||0}catch(e){this.warn("YouTubeEmbed: Could not get current time from player:",e)}return 0}loadVideo(e){const t=this.extractVideoId(e);if(t?(__classPrivateFieldSet(this,_YouTubeEmbed_url,e,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_videoId,t,"f")):__classPrivateFieldSet(this,_YouTubeEmbed_videoId,e,"f"),!__classPrivateFieldGet(this,_YouTubeEmbed_lazy,"f")||this.player)this.initialized&&this.reinitializePlayer();else try{this.initializePlayer(__classPrivateFieldGet(this,_YouTubeEmbed_videoId,"f"))}catch(e){this.warn("YouTubeEmbed: loadVideo failed to initialize player:",e)}}}_YouTubeEmbed_url=new WeakMap,_YouTubeEmbed_videoId=new WeakMap,_YouTubeEmbed_autoplay=new WeakMap,_YouTubeEmbed_muted=new WeakMap,_YouTubeEmbed_controls=new WeakMap,_YouTubeEmbed_lazy=new WeakMap,_YouTubeEmbed_poster=new WeakMap,_YouTubeEmbed_playing=new WeakMap,_YouTubeEmbed_background=new WeakMap,_YouTubeEmbed_playerVars=new WeakMap,_YouTubeEmbed_instances=new WeakSet,_YouTubeEmbed_reflectBooleanAttribute=function(e,t){this.updatingAttribute=!0,t?this.setAttribute(e,""):this.removeAttribute(e),this.updatingAttribute=!1},_YouTubeEmbed_updateBackgroundMode=function(){__classPrivateFieldGet(this,_YouTubeEmbed_background,"f")?(this.classList.add("is-background"),__classPrivateFieldSet(this,_YouTubeEmbed_autoplay,!0,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_muted,!0,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_controls,!1,"f"),__classPrivateFieldSet(this,_YouTubeEmbed_lazy,!1,"f")):this.classList.remove("is-background")},YouTubeEmbed.apiLoaded=!1,YouTubeEmbed.apiReady=!1,YouTubeEmbed.instanceCount=0,YouTubeEmbed.DEBUG=!1,YouTubeEmbed.MAX_API_RETRIES=3,YouTubeEmbed.API_RETRY_DELAY=2e3,YouTubeEmbed.API_LOAD_TIMEOUT=1e4,customElements.define("youtube-embed",YouTubeEmbed);
@@ -0,0 +1,349 @@
1
+ /**
2
+ * SVG encoding functions
3
+ */
4
+ youtube-embed {
5
+ --video-aspect-ratio: 56.25%;
6
+ --poster-object-fit: cover;
7
+ --video-object-fit: contain;
8
+ --control-button-size: 70px;
9
+ --control-button-color: #ffffff;
10
+ --overlay-background-color: rgba(0, 0, 0, 0.5);
11
+ display: block;
12
+ position: relative;
13
+ width: 100%;
14
+ padding-top: var(--video-aspect-ratio);
15
+ overflow: hidden;
16
+ background-color: #000;
17
+ }
18
+ youtube-embed iframe {
19
+ position: absolute;
20
+ top: 0;
21
+ left: 0;
22
+ width: 100%;
23
+ height: 100%;
24
+ border: none;
25
+ object-fit: var(--video-object-fit);
26
+ }
27
+ youtube-embed .youtube-poster,
28
+ youtube-embed .video-poster {
29
+ position: absolute;
30
+ top: 0;
31
+ left: 0;
32
+ width: 100%;
33
+ height: 100%;
34
+ object-fit: var(--poster-object-fit);
35
+ display: block;
36
+ cursor: pointer;
37
+ }
38
+ youtube-embed .button-overlay {
39
+ background: var(--overlay-background-color);
40
+ cursor: pointer;
41
+ display: flex;
42
+ align-items: center;
43
+ justify-content: center;
44
+ position: absolute;
45
+ left: 0;
46
+ top: 0;
47
+ right: 0;
48
+ bottom: 0;
49
+ height: 100%;
50
+ width: 100%;
51
+ transition: opacity 0.3s ease;
52
+ z-index: 10;
53
+ }
54
+ youtube-embed.is-playing .button-overlay {
55
+ opacity: 0;
56
+ }
57
+ youtube-embed.is-playing:hover .button-overlay {
58
+ opacity: 1;
59
+ }
60
+ youtube-embed .button-overlay .button {
61
+ cursor: pointer;
62
+ display: flex;
63
+ align-items: center;
64
+ justify-content: center;
65
+ height: var(--control-button-size);
66
+ width: var(--control-button-size);
67
+ background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M8%2C5.14V19.14L19%2C12.14L8%2C5.14Z%22%20%2F%3E%3C%2Fsvg%3E");
68
+ background-size: cover;
69
+ background-repeat: no-repeat;
70
+ background-position: center;
71
+ }
72
+ youtube-embed.is-playing .button-overlay .button {
73
+ background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M14%2C19H18V5H14M6%2C19H10V5H6V19Z%22%20%2F%3E%3C%2Fsvg%3E");
74
+ }
75
+ youtube-embed.is-background {
76
+ padding-top: 0;
77
+ position: absolute;
78
+ height: 100%;
79
+ width: 100%;
80
+ top: 0;
81
+ left: 0;
82
+ z-index: 0;
83
+ overflow: hidden;
84
+ background: #000;
85
+ }
86
+ youtube-embed.is-background iframe {
87
+ position: absolute;
88
+ top: 50%;
89
+ left: 50%;
90
+ transform: translate(-50%, -50%);
91
+ min-width: 100%;
92
+ min-height: 100%;
93
+ width: auto;
94
+ height: auto;
95
+ }
96
+ @supports (aspect-ratio: 16/9) {
97
+ youtube-embed.is-background iframe {
98
+ aspect-ratio: 16/9;
99
+ }
100
+ }
101
+ youtube-embed.is-background iframe {
102
+ pointer-events: none;
103
+ }
104
+ youtube-embed.is-background .button-overlay {
105
+ display: none;
106
+ }
107
+ youtube-embed.has-background-controls .button-overlay {
108
+ display: flex;
109
+ background: none;
110
+ justify-content: flex-end;
111
+ align-items: flex-end;
112
+ padding: 1rem;
113
+ }
114
+ youtube-embed.has-background-controls .button-overlay .button {
115
+ --control-button-size: 40px;
116
+ opacity: 0.7;
117
+ transition: opacity 0.2s ease;
118
+ }
119
+ youtube-embed.has-background-controls .button-overlay .button:hover {
120
+ opacity: 1;
121
+ }
122
+ youtube-embed.has-background-controls.is-playing .button-overlay {
123
+ opacity: 0;
124
+ }
125
+ youtube-embed.has-background-controls.is-playing .button-overlay:hover {
126
+ opacity: 1;
127
+ }
128
+ youtube-embed .youtube-error-message {
129
+ position: absolute;
130
+ top: 0;
131
+ left: 0;
132
+ width: 100%;
133
+ height: 100%;
134
+ display: flex;
135
+ align-items: center;
136
+ justify-content: center;
137
+ background: rgba(0, 0, 0, 0.9);
138
+ color: white;
139
+ z-index: 1000;
140
+ }
141
+ youtube-embed .youtube-error-message .error-content {
142
+ text-align: center;
143
+ padding: 2rem;
144
+ max-width: 400px;
145
+ }
146
+ youtube-embed .youtube-error-message .error-content svg {
147
+ color: #ff4444;
148
+ margin-bottom: 1rem;
149
+ }
150
+ youtube-embed .youtube-error-message .error-content .error-message {
151
+ margin: 1rem 0;
152
+ font-size: 1rem;
153
+ line-height: 1.5;
154
+ }
155
+ youtube-embed .youtube-error-message .error-content .retry-button {
156
+ margin-top: 1rem;
157
+ padding: 0.75rem 1.5rem;
158
+ background: #ff0000;
159
+ color: white;
160
+ border: none;
161
+ border-radius: 4px;
162
+ cursor: pointer;
163
+ font-size: 1rem;
164
+ font-weight: 600;
165
+ transition: background 0.2s ease;
166
+ }
167
+ youtube-embed .youtube-error-message .error-content .retry-button:hover {
168
+ background: #cc0000;
169
+ }
170
+ youtube-embed .youtube-error-message .error-content .retry-button:focus {
171
+ outline: 2px solid white;
172
+ outline-offset: 2px;
173
+ }
174
+
175
+ /**
176
+ * SVG encoding functions (shared with YouTube embed)
177
+ */
178
+ vimeo-embed {
179
+ --video-aspect-ratio: 56.25%;
180
+ --poster-object-fit: cover;
181
+ --video-object-fit: contain;
182
+ --control-button-size: 70px;
183
+ --control-button-color: #ffffff;
184
+ --overlay-background-color: rgba(0, 0, 0, 0.5);
185
+ display: block;
186
+ position: relative;
187
+ width: 100%;
188
+ padding-top: var(--video-aspect-ratio);
189
+ overflow: hidden;
190
+ background-color: #000;
191
+ }
192
+ vimeo-embed iframe {
193
+ position: absolute;
194
+ top: 0;
195
+ left: 0;
196
+ width: 100%;
197
+ height: 100%;
198
+ border: none;
199
+ object-fit: var(--video-object-fit);
200
+ }
201
+ vimeo-embed .vimeo-poster,
202
+ vimeo-embed .video-poster {
203
+ position: absolute;
204
+ top: 0;
205
+ left: 0;
206
+ width: 100%;
207
+ height: 100%;
208
+ object-fit: var(--poster-object-fit);
209
+ display: block;
210
+ cursor: pointer;
211
+ }
212
+ vimeo-embed .button-overlay {
213
+ background: var(--overlay-background-color);
214
+ cursor: pointer;
215
+ display: flex;
216
+ align-items: center;
217
+ justify-content: center;
218
+ position: absolute;
219
+ left: 0;
220
+ top: 0;
221
+ right: 0;
222
+ bottom: 0;
223
+ height: 100%;
224
+ width: 100%;
225
+ transition: opacity 0.3s ease;
226
+ z-index: 10;
227
+ }
228
+ vimeo-embed.is-playing .button-overlay {
229
+ opacity: 0;
230
+ }
231
+ vimeo-embed.is-playing:hover .button-overlay {
232
+ opacity: 1;
233
+ }
234
+ vimeo-embed .button-overlay .button {
235
+ cursor: pointer;
236
+ display: flex;
237
+ align-items: center;
238
+ justify-content: center;
239
+ height: var(--control-button-size);
240
+ width: var(--control-button-size);
241
+ background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M8%2C5.14V19.14L19%2C12.14L8%2C5.14Z%22%20%2F%3E%3C%2Fsvg%3E");
242
+ background-size: cover;
243
+ background-repeat: no-repeat;
244
+ background-position: center;
245
+ }
246
+ vimeo-embed.is-playing .button-overlay .button {
247
+ background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M14%2C19H18V5H14M6%2C19H10V5H6V19Z%22%20%2F%3E%3C%2Fsvg%3E");
248
+ }
249
+ vimeo-embed.is-background {
250
+ padding-top: 0;
251
+ position: absolute;
252
+ height: 100%;
253
+ width: 100%;
254
+ top: 0;
255
+ left: 0;
256
+ z-index: 0;
257
+ overflow: hidden;
258
+ background: #000;
259
+ }
260
+ vimeo-embed.is-background iframe {
261
+ position: absolute;
262
+ top: 50%;
263
+ left: 50%;
264
+ transform: translate(-50%, -50%);
265
+ min-width: 100%;
266
+ min-height: 100%;
267
+ width: auto;
268
+ height: auto;
269
+ }
270
+ @supports (aspect-ratio: 16/9) {
271
+ vimeo-embed.is-background iframe {
272
+ aspect-ratio: 16/9;
273
+ }
274
+ }
275
+ vimeo-embed.is-background iframe {
276
+ pointer-events: none;
277
+ }
278
+ vimeo-embed.is-background .button-overlay {
279
+ display: none;
280
+ }
281
+ vimeo-embed.has-background-controls .button-overlay {
282
+ display: flex;
283
+ background: none;
284
+ justify-content: flex-end;
285
+ align-items: flex-end;
286
+ padding: 1rem;
287
+ }
288
+ vimeo-embed.has-background-controls .button-overlay .button {
289
+ --control-button-size: 40px;
290
+ opacity: 0.7;
291
+ transition: opacity 0.2s ease;
292
+ }
293
+ vimeo-embed.has-background-controls .button-overlay .button:hover {
294
+ opacity: 1;
295
+ }
296
+ vimeo-embed.has-background-controls.is-playing .button-overlay {
297
+ opacity: 0;
298
+ }
299
+ vimeo-embed.has-background-controls.is-playing .button-overlay:hover {
300
+ opacity: 1;
301
+ }
302
+ vimeo-embed .vimeo-error-message {
303
+ position: absolute;
304
+ top: 0;
305
+ left: 0;
306
+ width: 100%;
307
+ height: 100%;
308
+ display: flex;
309
+ align-items: center;
310
+ justify-content: center;
311
+ background: rgba(0, 0, 0, 0.9);
312
+ color: white;
313
+ z-index: 1000;
314
+ }
315
+ vimeo-embed .vimeo-error-message .error-content {
316
+ text-align: center;
317
+ padding: 2rem;
318
+ max-width: 400px;
319
+ }
320
+ vimeo-embed .vimeo-error-message .error-content svg {
321
+ color: #00adef;
322
+ margin-bottom: 1rem;
323
+ }
324
+ vimeo-embed .vimeo-error-message .error-content .error-message {
325
+ margin: 1rem 0;
326
+ font-size: 1rem;
327
+ line-height: 1.5;
328
+ }
329
+ vimeo-embed .vimeo-error-message .error-content .retry-button {
330
+ margin-top: 1rem;
331
+ padding: 0.75rem 1.5rem;
332
+ background: #00adef;
333
+ color: white;
334
+ border: none;
335
+ border-radius: 4px;
336
+ cursor: pointer;
337
+ font-size: 1rem;
338
+ font-weight: 600;
339
+ transition: background 0.2s ease;
340
+ }
341
+ vimeo-embed .vimeo-error-message .error-content .retry-button:hover {
342
+ background: #0088bf;
343
+ }
344
+ vimeo-embed .vimeo-error-message .error-content .retry-button:focus {
345
+ outline: 2px solid white;
346
+ outline-offset: 2px;
347
+ }
348
+
349
+ /*# sourceMappingURL=components.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["../../src/styles/youtube-embed.scss","../../src/styles/vimeo-embed.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAqDA;EAEE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;;AAGF;EACE;;AAMF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;;AAGA;EAdF;IAeI;;;AAfJ;EAoBE;;AAGF;EACE;;AAIF;EACE;EACA;EAEA;EACA;EACA;;AAEA;EAEE;EACA;EACA;;AACA;EACE;;AAMN;EACE;;AACA;EACE;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;;AC/PV;AAAA;AAAA;AAqDA;EAEE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;;AAGF;EACE;;AAMF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;AAEA;EAXF;IAYI;;;AAZJ;EAeE;;AAGF;EACE;;AAMF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AACA;EACE;;AAKN;EACE;;AACA;EACE;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA","file":"components.css"}
@@ -0,0 +1 @@
1
+ vimeo-embed,youtube-embed{--video-aspect-ratio:56.25%;--poster-object-fit:cover;--video-object-fit:contain;--control-button-size:70px;--control-button-color:#ffffff;--overlay-background-color:rgba(0, 0, 0, 0.5);display:block;position:relative;width:100%;padding-top:var(--video-aspect-ratio);overflow:hidden;background-color:#000}vimeo-embed iframe,youtube-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;object-fit:var(--video-object-fit)}youtube-embed .video-poster,youtube-embed .youtube-poster{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:var(--poster-object-fit);display:block;cursor:pointer}youtube-embed .button-overlay,youtube-embed .youtube-error-message{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}youtube-embed .button-overlay{background:var(--overlay-background-color);cursor:pointer;right:0;bottom:0;transition:opacity .3s ease;z-index:10}youtube-embed.is-playing .button-overlay{opacity:0}youtube-embed.has-background-controls .button-overlay .button:hover,youtube-embed.has-background-controls.is-playing .button-overlay:hover,youtube-embed.is-playing:hover .button-overlay{opacity:1}youtube-embed .button-overlay .button{cursor:pointer;display:flex;align-items:center;justify-content:center;height:var(--control-button-size);width:var(--control-button-size);background-image:url(data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M8%2C5.14V19.14L19%2C12.14L8%2C5.14Z%22%20%2F%3E%3C%2Fsvg%3E);background-size:cover;background-repeat:no-repeat;background-position:center}youtube-embed.is-playing .button-overlay .button{background-image:url(data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M14%2C19H18V5H14M6%2C19H10V5H6V19Z%22%20%2F%3E%3C%2Fsvg%3E)}vimeo-embed.is-background,youtube-embed.is-background{padding-top:0;position:absolute;height:100%;width:100%;top:0;left:0;z-index:0;overflow:hidden;background:#000}youtube-embed.is-background iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;width:auto;height:auto}@supports (aspect-ratio:16/9){youtube-embed.is-background iframe{aspect-ratio:16/9}}youtube-embed.is-background iframe{pointer-events:none}youtube-embed.is-background .button-overlay{display:none}youtube-embed.has-background-controls .button-overlay{display:flex;background:0 0;justify-content:flex-end;align-items:flex-end;padding:1rem}youtube-embed.has-background-controls .button-overlay .button{--control-button-size:40px;opacity:.7;transition:opacity .2s ease}youtube-embed.has-background-controls.is-playing .button-overlay{opacity:0}youtube-embed .youtube-error-message{background:rgba(0,0,0,.9);color:#fff;z-index:1000}youtube-embed .youtube-error-message .error-content{text-align:center;padding:2rem;max-width:400px}youtube-embed .youtube-error-message .error-content svg{color:#f44;margin-bottom:1rem}youtube-embed .youtube-error-message .error-content .error-message{margin:1rem 0;font-size:1rem;line-height:1.5}youtube-embed .youtube-error-message .error-content .retry-button{margin-top:1rem;padding:.75rem 1.5rem;background:red;color:#fff;border:0;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;transition:background .2s ease}youtube-embed .youtube-error-message .error-content .retry-button:hover{background:#c00}youtube-embed .youtube-error-message .error-content .retry-button:focus{outline:2px solid #fff;outline-offset:2px}vimeo-embed .video-poster,vimeo-embed .vimeo-poster{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:var(--poster-object-fit);display:block;cursor:pointer}vimeo-embed .button-overlay,vimeo-embed .vimeo-error-message{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}vimeo-embed .button-overlay{background:var(--overlay-background-color);cursor:pointer;right:0;bottom:0;transition:opacity .3s ease;z-index:10}vimeo-embed.is-playing .button-overlay{opacity:0}vimeo-embed.has-background-controls .button-overlay .button:hover,vimeo-embed.has-background-controls.is-playing .button-overlay:hover,vimeo-embed.is-playing:hover .button-overlay{opacity:1}vimeo-embed .button-overlay .button{cursor:pointer;display:flex;align-items:center;justify-content:center;height:var(--control-button-size);width:var(--control-button-size);background-image:url(data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M8%2C5.14V19.14L19%2C12.14L8%2C5.14Z%22%20%2F%3E%3C%2Fsvg%3E);background-size:cover;background-repeat:no-repeat;background-position:center}vimeo-embed.is-playing .button-overlay .button{background-image:url(data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M14%2C19H18V5H14M6%2C19H10V5H6V19Z%22%20%2F%3E%3C%2Fsvg%3E)}vimeo-embed.is-background iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;width:auto;height:auto}@supports (aspect-ratio:16/9){vimeo-embed.is-background iframe{aspect-ratio:16/9}}vimeo-embed.is-background iframe{pointer-events:none}vimeo-embed.is-background .button-overlay{display:none}vimeo-embed.has-background-controls .button-overlay{display:flex;background:0 0;justify-content:flex-end;align-items:flex-end;padding:1rem}vimeo-embed.has-background-controls .button-overlay .button{--control-button-size:40px;opacity:.7;transition:opacity .2s ease}vimeo-embed.has-background-controls.is-playing .button-overlay{opacity:0}vimeo-embed .vimeo-error-message{background:rgba(0,0,0,.9);color:#fff;z-index:1000}vimeo-embed .vimeo-error-message .error-content{text-align:center;padding:2rem;max-width:400px}vimeo-embed .vimeo-error-message .error-content svg{color:#00adef;margin-bottom:1rem}vimeo-embed .vimeo-error-message .error-content .error-message{margin:1rem 0;font-size:1rem;line-height:1.5}vimeo-embed .vimeo-error-message .error-content .retry-button{margin-top:1rem;padding:.75rem 1.5rem;background:#00adef;color:#fff;border:0;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;transition:background .2s ease}vimeo-embed .vimeo-error-message .error-content .retry-button:hover{background:#0088bf}vimeo-embed .vimeo-error-message .error-content .retry-button:focus{outline:2px solid #fff;outline-offset:2px}