@flowplayer/player
Version:
video player for the future
2 lines (1 loc) • 5.72 kB
JavaScript
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).flowplayer=t.flowplayer||{},t.flowplayer.comscore=e())}(this,(function(){"use strict";var t;function e(){return"undefined"!=typeof ns_}const s=((t=class ComscorePlugin{constructor(){this.started=!1,this.paused=!1,this.ad_playing=!1,this.title="",this.id="",this.account_id="",this.is_live=!1,this.content_duration=0}init(t,s,i){if("object"!=typeof t.comscore)return;if(i.hasState("consent-no-tracking"))return;if(this.video=i,this.config=t,e())return this.wireup();const n=document.createElement("script");n.src="https://sb.scorecardresearch.com/c2/libraries/js/v6/6.3.1.181004.js",n.onload=()=>this.wireup(),document.body.appendChild(n)}wireup(){if(e()&&this.video){if(document){document.addEventListener("unload",this.closed),document.addEventListener("pagehide",this.closed2);const t=this.getHiddenProp();if(t){const e=t.replace(/[H|h]idden/,"")+"visibilitychange";document.addEventListener(e,this.visChange)}}var t;this.video.on(["loadedmetadata","loadeddata","progress","loadstart","ended","seeked","seeking","pause","playing","load","config","ad-started","ad-completed","ad-break-completed"],(t=t=>{switch(t.type){case"playing":this.playing();break;case"pause":this.pause();break;case"seeking":this.seeking();break;case"seeked":this.seeked();break;case"ended":this.ended();break;case"config":this.configured(t);break;case"ad-started":this.ad_started(t);break;case"ad-completed":this.ad_completed();break;case"ad-break-completed":this.ad_break_completed()}},e=>{setTimeout((function(){if(!e.defaultPrevented&&!e.prevented)return t(e)}),0)}))}}playing(){this.streamingAnalytics||(this.streamingAnalytics=this.setupStreamingAnalytics()),this.started?this.paused&&this.setContentClip():(this.started=!0,this.setContentClip()),this.paused=!1}pause(){this.streamingAnalytics&&!this.ad_playing&&(this.paused=!0,this.streamingAnalytics.stop())}ended(){this.ad_playing=!1,this.started=!1,this.paused=!1,this.content_duration=0,this.streamingAnalytics&&(this.streamingAnalytics.stop(),this.interval=setInterval(()=>this.killStreamingAnalytics,1e3))}killStreamingAnalytics(){this.interval&&clearInterval(this.interval),this.streamingAnalytics&&(this.streamingAnalytics=null)}seeking(){}seeked(){}closed2(){this.ended()}closed(){this.ended()}visChange(){this.streamingAnalytics&&(this.isHidden()?this.streamingAnalytics.stop():this.setContentClip())}getHiddenProp(){const t=["webkit","moz","ms","o"];return"hidden"in document?"hidden":(Array.from({length:t.length}).map((t,e)=>e).forEach(e=>{if(t[e]+"Hidden"in document)return t[e]+"Hidden"}),null)}isHidden(){const t=this.getHiddenProp();return!!t&&document[t]}configured(t){!this.comscore_object&&this.config&&(this.comscore_object=this.config.comscore,this.title=this.comscore_object.media_title||"*null",this.id=this.comscore_object.media_id||"*null",this.account_id=this.comscore_object.account_id,this.streamingAnalytics=this.setupStreamingAnalytics(),t.data&&(t.data.live&&(this.is_live=!0),t.data.title&&(this.title=t.data.title),t.data.metadata&&t.data.metadata.media_id&&(this.id=t.data.metadata.media_id),t.data.duration&&(this.content_duration=Math.round(1e3*t.data.duration))))}ad_started(t){this.setAdvertisementClip(t)}ad_completed(){this.streamingAnalytics&&this.streamingAnalytics.stop()}ad_break_completed(){this.setContentClip()}setAdvertisementClip(t){var e;if(this.ad_playing=!0,null==this.comscore_object&&(this.comscore_object=null===(e=this.config)||void 0===e?void 0:e.comscore),!this.comscore_object)return;const s={};t&&t.data&&t.data.ad?s.ns_st_cl=Math.round(1e3*t.data.ad.duration)||0:s.ns_st_cl=0,s.c3=this.comscore_object.c3||"*null",s.c4=this.comscore_object.c4||"*null",s.c6=this.comscore_object.c6||"*null",this.streamingAnalytics&&(this.is_live?this.streamingAnalytics.playVideoAdvertisement(s,ns_.ReducedRequirementsStreamingAnalytics.AdType.LinearLive):this.streamingAnalytics.playVideoAdvertisement(s,ns_.ReducedRequirementsStreamingAnalytics.AdType.LinearOnDemandPreRoll))}setContentClip(){var t;this.ad_playing=!1;const e={};null==this.comscore_object&&(this.comscore_object=null===(t=this.config)||void 0===t?void 0:t.comscore),this.comscore_object&&this.video&&(e.ns_st_ci=this.id,e.ns_st_pr=this.title,e.ns_st_ep=this.comscore_object.ns_st_ep||"*null",e.ns_st_ia=this.comscore_object.ns_st_ia||0,e.ns_st_ge=this.comscore_object.ns_st_ge||"News",e.ns_st_ce=this.comscore_object.ns_st_ce||0,e.ns_st_ddt=this.comscore_object.ns_st_ddt||(new Date).getFullYear()+"-01-01",e.ns_st_tdt=this.comscore_object.ns_st_tdt||(new Date).getFullYear()+"-01-01",e.c3=this.comscore_object.c3||"*null",e.c4=this.comscore_object.c4||"*null",e.c6=this.comscore_object.c6||"*null",this.content_duration<=0&&(this.content_duration=Math.round(1e3*this.video.duration)),e.ns_st_cl=this.content_duration,this.streamingAnalytics&&(this.is_live?(e.ns_st_cl=0,this.streamingAnalytics.playVideoContentPart(e,ns_.ReducedRequirementsStreamingAnalytics.ContentType.Live)):this.streamingAnalytics.playVideoContentPart(e,ns_.ReducedRequirementsStreamingAnalytics.ContentType.ShortFormOnDemand)))}setupStreamingAnalytics(){return new ns_.ReducedRequirementsStreamingAnalytics({publisherId:this.account_id})}}).pluginName="comscore",t);return function(t,e){if("object"==typeof exports&&"undefined"!=typeof module)return e;if(null===document.currentScript)return e;"flowplayer"in t||(t.flowplayer={extensions:[]});const s=t.flowplayer;return"function"==typeof s?(s(e),e):(Array.isArray(s.extensions)||(s.extensions=[]),~s.extensions.indexOf(e)||s.extensions.push(e),e)}(window,s)}));