PluginProbe
Elementor Website Builder – more than just a page builder / 4.3.0-beta3
Elementor Website Builder – more than just a page builder v4.3.0-beta3
4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
elementor / assets / js / youtube-handler.min.js

youtube-handler.min.js in Elementor Website Builder – more than just a page builder 4.3.0-beta3, at assets/js/youtube-handler.min.js

1 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 "use strict";(function(){var e=globalThis.elementorV2.frontendHandlers,getYoutubeVideoIdFromUrl=e=>{let t=e.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user|shorts)\/))([^?&"'>]+)/);return t?t[1]:null},loadYouTubeAPI=()=>new Promise(e=>{if(window.YT&&window.YT.loaded){e(window.YT);return}let t=`https://www.youtube.com/iframe_api`;if(!document.querySelector(`script[src="${t}"]`)){let e=document.createElement(`script`);e.src=t;let n=document.getElementsByTagName(`script`)[0];n.parentNode.insertBefore(e,n)}let checkYT=()=>{window.YT&&window.YT.loaded?e(window.YT):setTimeout(checkYT,350)};checkYT()});(0,e.register)({elementType:`e-youtube`,id:`e-youtube-handler`,callback:({element:e})=>{let t=document.createElement(`div`);t.style.height=`100%`,e.appendChild(t);let n=e.getAttribute(`data-settings`),r=n?JSON.parse(n):{},i=getYoutubeVideoIdFromUrl(r.source);if(!i)return;let a,o,prepareYTVideo=e=>{let n={videoId:i,events:{onReady:()=>{r.mute&&a.mute(),r.autoplay&&a.playVideo()},onStateChange:t=>{t.data===e.PlayerState.ENDED&&r.loop&&a.seekTo(r.start||0)}},playerVars:{controls:+!!r.controls,rel:+!r.rel,cc_load_policy:+!!r.cc_load_policy,autoplay:+!!r.autoplay,start:r.start,end:r.end}};return r.privacy&&(n.host=`https://www.youtube-nocookie.com`,n.origin=window.location.hostname),a=new e.Player(t,n),a};return r.lazyload?(o=new IntersectionObserver(t=>{t[0].isIntersecting&&(loadYouTubeAPI().then(e=>prepareYTVideo(e)),o.unobserve(e))}),o.observe(e)):loadYouTubeAPI().then(e=>prepareYTVideo(e)),()=>{a&&typeof a.destroy==`function`&&(a.destroy(),a=null),e.contains(t)&&e.removeChild(t),o&&typeof o.disconnect==`function`&&(o.disconnect(),o=null)}}})})();