/*! * MediaElement.js * http://www.mediaelementjs.com/ * * Wrapper that mimics native HTML5 MediaElement (audio and video) * using a variety of technologies (pure JavaScript, Flash, iframe) * * Copyright 2010-2017, John Dyer (http://j.hn/) * License: MIT * */ !function e(t,a,r){function i(o,n){if(!a[o]){if(!t[o]){var c="function"==typeof require&&require;if(!n&&c)return c(o,!0);if(s)return s(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var u=a[o]={exports:{}};t[o][0].call(u.exports,function(e){var a=t[o][1][e];return i(a||e)},u,u.exports,e,t,a,r)}return a[o].exports}for(var s="function"==typeof require&&require,o=0;o',e.chromecastLayer.style.display="none",a.insertBefore(e.chromecastLayer,a.firstChild),s.className=i.options.classPrefix+"button "+i.options.classPrefix+"chromecast-button",s.innerHTML='',s.style.display="none",i.addControlElement(s,"chromecast"),i.castButton=s,e.chromecastLayer.innerHTML='
'+mejs.i18n.t("mejs.chromecast-legend")+'
',r.originalNode.getAttribute("poster")&&(e.chromecastLayer.innerHTML+='',e.chromecastLayer.querySelector("img").addEventListener("click",function(){if(e.options.clickToPlayPause){var t=i.container.querySelector("."+i.options.classPrefix+"overlay-button"),a=t.getAttribute("aria-pressed");e.paused?e.play():e.pause(),t.setAttribute("aria-pressed",!!a),e.container.focus()}})),window.__onGCastApiAvailable=function(e){var t=mejs.Utils.getTypeFromFile(r.originalNode.src).toLowerCase(),a=t&&["application/x-mpegurl","application/vnd.apple.mpegurl","application/dash+xml","video/mp4","audio/mp3","audio/mp4"].indexOf(t)>-1;e&&a&&i._initializeCastPlayer()},window.cast){var n=i.controls.querySelector("."+i.options.classPrefix+"chromecast-button>button");return n&&"none"!==n.style.display&&(i.controls.querySelector("."+i.options.classPrefix+"chromecast-button").style.display=""),void i._initializeCastPlayer()}mejs.Utils.loadScript("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1")},cleanchromecast:function(e){if(window.cast){var t=cast.framework.CastContext.getInstance().getCurrentSession();t&&t.endSession(!0)}e.castButton&&e.castButton.remove(),e.chromecastLayer&&e.chromecastLayer.remove()},_initializeCastPlayer:function(){var e=this,t=void 0;switch(this.options.castPolicy){case"tab":t="TAB_AND_ORIGIN_SCOPED";break;case"page":t="PAGE_SCOPED";break;default:t="ORIGIN_SCOPED"}var a=cast.framework.CastContext.getInstance(),r=a.getCurrentSession();if(a.setOptions({receiverApplicationId:e.options.castAppID||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:chrome.cast.AutoJoinPolicy[t]}),a.addEventListener(cast.framework.CastContextEventType.CAST_STATE_CHANGED,e._checkCastButtonStatus.bind(e)),e.remotePlayer=new cast.framework.RemotePlayer,e.remotePlayerController=new cast.framework.RemotePlayerController(e.remotePlayer),e.remotePlayerController.addEventListener(cast.framework.RemotePlayerEventType.IS_CONNECTED_CHANGED,e._switchToCastPlayer.bind(this)),r){var i=a.getCastState(),s=e.controls.querySelector("."+e.options.classPrefix+"chromecast-button");s&&i===cast.framework.CastState.NO_DEVICES_AVAILABLE?s.style.display="none":s&&(e.chromecastLayer&&(e.chromecastLayer.style.display=i===cast.framework.CastState.CONNECTED?"":"none"),s.style.display=""),e._switchToCastPlayer()}},_checkCastButtonStatus:function(e){var t=this,a=t.controls.querySelector("."+t.options.classPrefix+"chromecast-button");a&&e.castState===cast.framework.CastState.NO_DEVICES_AVAILABLE?a.style.display="none":a&&(t.chromecastLayer&&(t.chromecastLayer.style.display=e.castState===cast.framework.CastState.CONNECTED?"":"none"),a.style.display=""),setTimeout(function(){t.setPlayerSize(t.width,t.height),t.setControlsSize()},0)},_switchToCastPlayer:function(){var e=this;e.proxy&&e.proxy.pause(),cast&&cast.framework&&(cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.CAST_STATE_CHANGED,e._checkCastButtonStatus.bind(e)),e.remotePlayer.isConnected)?e._setupCastPlayer():e._setDefaultPlayer()},_setupCastPlayer:function(){var e=this,t=cast.framework.CastContext.getInstance().getCurrentSession(),a=e.layers.querySelector("."+e.options.classPrefix+"chromecast-info");!0!==e.loadedChromecast&&(e.loadedChromecast=!0,e.proxy=new r.default(e.remotePlayer,e.remotePlayerController,e.media,e.options),a&&(a.querySelector(".device").innerText=t.getCastDevice().friendlyName),e.chromecastLayer&&(e.chromecastLayer.style.display=""),!0===e.options.castEnableTracks&&function(){var a=void 0!==e.captionsButton?e.captionsButton.querySelectorAll("input[type=radio]"):null;if(null!==a)for(var r=0,i=a.length;r=o.getDuration()&&(o.endedMedia=!0,setTimeout(function(){var e=mejs.Utils.createEvent("ended",o.media);o.media.dispatchEvent(e)},50))}),o.controller.addEventListener(cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED,function(){o.setMuted(o.player.isMuted)}),o.load(),o}return i(e,[{key:"getSrc",value:function(){return this.media.originalNode.src}},{key:"setSrc",value:function(e){this.media.originalNode.src="string"==typeof e?e:e[0].src,this.load()}},{key:"setCurrentTime",value:function(e){this.player.currentTime=e,this.controller.seek();var t=mejs.Utils.createEvent("timeupdate",this.media);this.media.dispatchEvent(t)}},{key:"getCurrentTime",value:function(){return this.player.currentTime}},{key:"getDuration",value:function(){return this.player.duration}},{key:"setVolume",value:function(e){this.player.volumeLevel=e,this.controller.setVolumeLevel();var t=mejs.Utils.createEvent("volumechange",this.media);this.media.dispatchEvent(t)}},{key:"getVolume",value:function(){return this.player.volumeLevel}},{key:"play",value:function(){if(this.player.isPaused){this.controller.playOrPause();var e=mejs.Utils.createEvent("play",this.media);this.media.dispatchEvent(e)}}},{key:"pause",value:function(){if(!this.player.isPaused){this.controller.playOrPause();var e=mejs.Utils.createEvent("pause",this.media);this.media.dispatchEvent(e)}}},{key:"load",value:function(){var e=this,t=this.media.originalNode.src,a=mejs.Utils.getTypeFromFile(t),r=new chrome.cast.media.MediaInfo(t,a),i=cast.framework.CastContext.getInstance().getCurrentSession();if(t!==window.location.href&&i){if(!0===e.enableTracks){for(var s=[],o=e.media.originalNode.children,n=1,c=0,l=o.length;c