PageSourceSearch

https://www.grant-thornton.gr/dist/v2/js-v2/modules/GTVideoBlock.1c845aa0d42d2bfe2a2d02dc01e883f1.js

js grant-thornton.gr collected 2026-09-24 19:40:35 UTC 11,955 bytes, 19 lines download raw bytes

1GT.VideoBlock=function(){const u=new GTHelper;let v={local:"local",youtube:"youtube",vimeo:"vimeo"},p={state:"paused",position:"inline",type:v.local,id:null,videos:{}},y={inline:"inline",modal:"modal",sticky:"sticky"},m={paused:"paused",buffering:"buffering",playing:"playing"};p.play=(e,t)=>{p.id=e;let i=p.videos[e];p.pauseAll(e),setTimeout(e=>{switch(t){case v.youtube:i.player.playVideo();break;case v.local:case v.vimeo:i.player.play()}})};const b=e=>{e&&e.querySelectorAll("iframe").forEach(e=>{e.removeAttribute("frameborder"),e.removeAttribute("width"),e.removeAttribute("height")})},f=e=>{if(e&&"true"!==e.dataset.iframeObserved){e.dataset.iframeObserved="true",b(e);const t=new MutationObserver(()=>b(e));t.observe(e,{childList:!0,subtree:!0})}},g=e=>{const t=document.querySelector("#external-video-player");if(t&&e){var i=t.dataset.position,e=e.dataset.videoDialogLabel;if(i===y.modal)t.setAttribute("role","dialog"),t.setAttribute("aria-modal","true"),t.removeAttribute("inert");else{if(i!==y.sticky)return t.removeAttribute("role"),t.removeAttribute("aria-modal"),t.removeAttribute("aria-label"),void t.setAttribute("inert","");t.setAttribute("role","region"),t.removeAttribute("aria-modal"),t.removeAttribute("inert")}e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label")}};function h(e){let t=/https:\/\/vimeo\.com\/(\d+)\/[0-9a-fA-F]+/;return(t=0<=e.indexOf("player.vimeo.com")?/https:\/\/player\.vimeo\.com\/video\/(\d+)\?h=[0-9a-zA-Z]+/:t).test(e)}function S(o,t,i,a,r){const n="Player_"+i;function l(){r?t.focus():setTimeout(e=>{("none"!=window.getComputedStyle(document.querySelector(".video-block-v2__toggle-stretch-btn")).display?document.querySelector(".video-block-v2__toggle-stretch-btn"):document.querySelector(".video-block-v2__close-btn")).focus()},500)}if(p.type=a,p.position=y.inline,a==v.youtube){function e(){var e;o.id!=p.id&&!r||!p.videos[o.id].player&&r?(t.innerHTML=`<div id="${n}"></div>`,e=new YT.Player(n,{videoId:i,playerVars:{autoplay:1,playsinline:1},events:{onReady:function(e){b(t),p.play(o.id,a)},onStateChange:function(e){switch(e.data){case 1:p.state=m.playing;break;case 3:p.state=m.buffering;break;default:p.state=m.paused}u.dispatchEvt("onStateChange",o)},onError:function(e){p.state=m.paused,u.dispatchEvt("onStateChange",o)}}}),p.videos[o.id].videoBlockElm=o,p.videos[o.id].player=e):p.play(o.id,a),l()}p.state=m.buffering,u.dispatchEvt("onStateChange",o),"undefined"==typeof YT||void 0===YT.Player?((d=document.createElement("script")).src="https://www.youtube.com/iframe_api",(c=document.getElementsByTagName("script")[0]).parentNode.insertBefore(d,c),window.onYouTubePlayerAPIReady=function(){e()}):e()}else if(a==v.vimeo){function s(){if(o.id!=p.id&&!r||!p.videos[o.id].player&&r){t.innerHTML=`<div id="${n}"></div>`;let e=new Vimeo.Player(n,{id:i,autoplay:!0,pip:0});(e=h(i)?new Vimeo.Player(n,{autoplay:!0,pip:0,url:i}):e).ready().then(()=>{b(t)}).catch(t=>{p.state=m.paused,p.id=null,u.dispatchEvt("onStateChange",o);let e=document.querySelector(".video-block-v2__player-container"),i=e?.querySelector(".error-message");if(i){let e=t.toString();(0<=e.indexOf("not found")||0<=e.indexOf("is not embeddable"))&&(i.innerHTML=t.toString(),i.style.display="flex")}}),e.on("play",e=>{p.state=m.playing,u.dispatchEvt("onStateChange",o)}),e.on("pause",e=>{p.state=m.paused,u.dispatchEvt("onStateChange",o)}),e.on("bufferstart",e=>{p.state=m.buffering,u.dispatchEvt("onStateChange",o)}),e.on("bufferend",e=>{p.state=m.playing,u.dispatchEvt("onStateChange",o)}),e.on("enterpictureinpicture",()=>{o.dataset.playingExternalPlayer=!0,r||(delete t.closest("#external-video-player").dataset.position,document.querySelector(".main")?.removeAttribute("inert"),document.querySelector("#"+p.id).dataset.position=y.sticky)}),e.on("leavepictureinpicture",()=>{var e;r||(e=document.querySelector("#"+p.id),document.querySelector("#"+p.id).dataset.position=y.modal,t.closest("#external-video-player").dataset.position=y.modal,t.closest("#external-video-player").querySelector(".video-block-v2__toggle-stretch-btn").focus(),document.querySelector(".main")?.setAttribute("inert",!0),g(e))}),p.play(o.id,a),p.videos[o.id].videoBlockElm=o,p.videos[o.id].player=e}else p.play(o.id,a);l()}var d,c;p.state=m.buffering,u.dispatchEvt("onStateChange",o),"undefined"==typeof Vimeo?((d=document.createElement("script")).src="https://player.vimeo.com/api/player.js",d.onload=function(){s()},(c=document.getElementsByTagName("script")[0]).parentNode.insertBefore(d,c)):s()}else{if(o.id!=p.id&&!r||!p.videos[o.id].player&&r){t.innerHTML=`<video id="${n}" src="${i}" controls playsinline></video>`;let e=t.querySelector("video");e.addEventListener("playing",e=>{p.state=m.playing,u.dispatchEvt("onStateChange",o)}),e.addEventListener("pause",e=>{p.state=m.paused,u.dispatchEvt("onStateChange",o)}),e.addEventListener("waiting",e=>{p.state=m.buffering,u.dispatchEvt("onStateChange",o)}),p.play(o.id,a),p.videos[o.id].videoBlockElm=o,(p.videos[o.id].player=e).addEventListener("enterpictureinpicture",()=>{o.dataset.playingExternalPlayer=!0,r||(delete t.closest("#external-video-player").dataset.position,document.querySelector(".main")?.removeAttribute("inert"),document.querySelector("#"+p.id).dataset.position=y.sticky)}),e.addEventListener("leavepictureinpicture",()=>{var e;r||(e=document.querySelector("#"+p.id),t.closest("#external-video-player").dataset.position=y.modal,t.closest("#external-video-player").querySelector(".video-block-v2__close-btn").focus(),document.querySelector(".main")?.setAttribute("inert",!0),document.querySelector("#"+p.id).dataset.position=y.modal,g(e))})}else p.play(o.id,a);l()}}p.pauseAll=i=>{document.exitPictureInPicture&&document.exitPictureInPicture().catch(e=>{}
1),Object.keys(p.videos).forEach(e=>{const t=p.videos[e];if(t.videoBlockElm&&e!=i){switch(t.type){case v.youtube:t.player.pauseVideo();break;case v.vimeo:case v.local:t.player.pause()}delete t.videoBlockElm.dataset.playingExternalPlayer}})},Array.prototype.slice.call(document.querySelectorAll(".video-block-v2")).forEach(async function(a){let r=a.querySelector(".video-block-v2__play"),e=a.querySelector(".video-block-v2__poster.from-iframe"),n=r.href,l=function(e){let t;t=e.indexOf("vimeo")<0?(t=e.match(/(?:youtube(?:-nocookie)?\.com\/(?:[^\/\n\s]+\/\S+\/|(?:v|e(?:mbed)?)\/|\S*?[?&]v=)|youtu\.be\/)([a-zA-Z0-9_-]{11})/))?t[1]:(t=e.match(/^(https?:)?(\/\/)?((www\.|m\.)?youtube(-nocookie)?\.com\/((watch)?\?(feature=\w*&)?vi?=|embed\/|vi?\/|e\/)|youtu.be\/)([\w\-]{10,20})/i))?t[9]:"":(t=e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^\/]*)\/videos\/|album\/(\d+)\/video\/|video\/|[\w]+\/review\/|)(\d+)(?:\/(\w+))?(?:$|\/|\?)/))?t[3]:"";return t}(n),s=a.classList.contains("has-iframe"),d=v.local;var t,o,c;s&&(d=0<=n.indexOf("vimeo")?v.vimeo:v.youtube),s&&e&&!e.dataset.bgset&&(n.indexOf("vimeo")<0?(o=l,c="maxresdefault",(t=await new Promise(e=>{const t=new Image,i=`https://img.youtube.com/vi/${o}/${c}.jpg`;t.onload=function(){120<t.naturalWidth?e({exists:!0,url:i}):e({exists:!1,url:i})},t.onerror=function(){e({exists:!1,url:i})},t.src=i})).exists?e.dataset.bgset=t.url:e.dataset.bgset="https://img.youtube.com/vi/"+l+"/hqdefault.jpg"):e.dataset.bgset="https://vumbnail.com/"+l+".jpg",e.classList.add("lazyload")),r.classList.contains("open-in-new-tab")||(p.videos[a.id]={state:m.buffering,position:y.inline,type:d,player:null},r.addEventListener("click",t=>{t.preventDefault();let i=(t.currentTarget||t.target).closest(".video-block-v2"),e="true"==i.dataset.playsinline;if(e)i.querySelector(".video-block-v2__player-area")||i.querySelector(".video-block-v2__video-wrap").insertAdjacentHTML("beforeend",`        
2                    <div class="video-block-v2__player">
3                        <div class="video-block-v2__player-container">
4                            <div class="video-block-v2__player-area"></div>
5                        </div>
6                    </div>`);else{document.querySelector("#external-video-player")||(t=`        
7                        <div class="video-block-v2__player" id="external-video-player" data-id="${a.id}">
8                            <div class="video-block-v2__player-container">
9                                <button class="btn-flat video-block-v2__toggle-stretch-btn" aria-pressed=false aria-label="${a.dataset.minimizeBtnText}">
10                                    <svg aria-hidden="true"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#minimize"></use></svg>
11                                    <svg aria-hidden="true"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#stretch"></use></svg>
12                                </button>
13                                <button class="btn-flat video-block-v2__close-btn" aria-label="${a.dataset.closeBtnText}">
14                                    <svg aria-hidden="true"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#close-icon"></use></svg>
15                                </button>
16                                <div class="video-block-v2__player-area"></div>
17                                <div class="error-message"></div>
18                            </div>
19                        </div>`,document.body.insertAdjacentHTML("beforeend",t),g(a),f(document.querySelector("#external-video-player .video-block-v2__player-area")),document.querySelector("#external-video-player .video-block-v2__toggle-stretch-btn").addEventListener("click",e=>{let t=e.currentTarget||e.target,i=t.closest("#external-video-player");i.dataset.position==y.sticky?(i.dataset.position=y.modal,document.querySelector(".main")?.setAttribute("inert",!0),t.setAttribute("aria-pressed",!1),document.querySelector("#"+p.id).dataset.position=y.modal):(i.dataset.position=y.sticky,document.querySelector(".main")?.removeAttribute("inert"),t.setAttribute("aria-pressed",!0),document.querySelector("#"+p.id).dataset.position=y.sticky),g(document.querySelector("#"+p.id))}),document.querySelector("#external-video-player .video-block-v2__close-btn").addEventListener("click",e=>{let i=(e.currentTarget||e.target).closest("#external-video-player"),o=(i.classList.add("closing"),document.querySelector(".video-block-v2__player-container"));setTimeout(e=>{document.querySelector(".main")?.removeAttribute("inert"),p.pauseAll(),i.classList.remove("closing"),delete i.dataset.position;
19let t=o?.querySelector(".error-message");t&&(t.style.display="none",t.innerHTML=""),p.state=m.paused,u.dispatchEvt("onStateChange",a),g(a),r.focus()},500)}));let e=document.querySelector("#external-video-player");g(i),e.dataset.allowsticky=!!i.dataset.allowsticky,e.dataset.hasiframe=d!=v.local,i.dataset.position=y.modal}var o,t=e?i.querySelector(".video-block-v2__player-area"):document.querySelector("#external-video-player .video-block-v2__player-area");f(t),e||setTimeout(e=>{const t=document.querySelector("#external-video-player");t.dataset.position=y.modal,document.querySelector(".main")?.setAttribute("inert",!0),i.dataset.playingExternalPlayer=!0,g(i)}),h(n)?(n.indexOf("player.vimeo.com")<0&&(o=function(e){e=e.match(/vimeo\.com\/\d+\/([0-9a-zA-Z]+)/);return e?e[1]:null}(n),n="https://player.vimeo.com/video/"+l+"?h="+o),S(i,t,n,d,e)):S(i,t,s?l:n,d,e)}),a.addEventListener("onStateChange",e=>{e.target.dataset.state=p.state}))}),GT.listFunctionsTriggerInScrollEvent.videoBlock=function(){if(!GT.isScrollingUp&&GT.wWidth>=GT.breakPoints.desktop_md){let t=document.querySelector("#external-video-player[data-position=modal][data-allowsticky=true]");if(t){if("true"==t.dataset.hasiframe)t.dataset.position=y.sticky;else{let e=t.querySelector("video");e&&e.requestPictureInPicture&&e.requestPictureInPicture().catch(e=>{console.log(e)})}document.querySelector(".main")?.removeAttribute("inert");var e=document.querySelector("#"+t.dataset.id);document.querySelector("#"+t.dataset.id).dataset.position=y.sticky,g(e)}}}},GT.domContentLoadedFncList.push(function(){GT.VideoBlock()});

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.