@eyevinn/web-player-cast 0.6.3 → 0.7.0

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.
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- var e,t,a=(e=require("mitt"))&&"object"==typeof e&&"default"in e?e.default:e,r=require("@eyevinn/web-player-core"),n=function(){function e(){this.emitter=a()}var t=e.prototype;return t.on=function(e,t){this.emitter.on.apply(this,arguments)},t.off=function(e,t){this.emitter.on.apply(this,arguments)},t.emit=function(e,t){this.emitter.emit.apply(this,arguments)},t.destroy=function(){this.emitter.all.clear()},e}();function s(e,t){return new Promise(function(a,r){window.__onGCastApiAvailable=function(n){n?(cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:e||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:t||chrome.cast.AutoJoinPolicy.PAGE_SCOPED}),a()):r(new Error("[Cast] not available"))};var n=document.createElement("script");n.src="//www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(n)})}(t=exports.CastSenderEvent||(exports.CastSenderEvent={})).CONNECTED="cast:connected",t.DISCONNECTED="cast:disconnected",t.STATE_CHANGE="cast:state_change",exports.CastSender=function(e){var t,a;function n(t,a){var n;return(n=e.call(this)||this).state={playbackState:r.PlaybackState.IDLE,currentTime:0,duration:0,isLive:!1,isAtLiveEdge:!1,isSeekable:!0,isMuted:!1,audioTracks:[],textTracks:[]},s(t,a).then(function(){n.player=new cast.framework.RemotePlayer,n.playerController=new cast.framework.RemotePlayerController(n.player),n.setupListeners()},function(e){return console.error(e)}),n}a=e,(t=n).prototype=Object.create(a.prototype),t.prototype.constructor=t,t.__proto__=a;var i=n.prototype;return i.setState=function(e){this.state=Object.assign({},this.state,e),this.emit(exports.CastSenderEvent.STATE_CHANGE,{state:this.state})},i.getPlaybackStateFromPlayerState=function(e){switch(e){case chrome.cast.media.PlayerState.BUFFERING:return r.PlaybackState.BUFFERING;case chrome.cast.media.PlayerState.PAUSED:return r.PlaybackState.PAUSED;case chrome.cast.media.PlayerState.PLAYING:return r.PlaybackState.PLAYING;case chrome.cast.media.PlayerState.IDLE:return r.PlaybackState.IDLE}},i.getDuration=function(){return this.player.liveSeekableRange?this.player.liveSeekableRange.end:this.player.duration},i.setupListeners=function(){var e=this;cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,function(t){switch(t.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_RESUMED:e.emit(exports.CastSenderEvent.CONNECTED),e.setState({playbackState:r.PlaybackState.READY,isMuted:e.player.isMuted});break;case cast.framework.SessionState.SESSION_ENDED:e.emit(exports.CastSenderEvent.DISCONNECTED),e.setState({playbackState:r.PlaybackState.IDLE})}}),this.playerController.addEventListener(cast.framework.RemotePlayerEventType.ANY_CHANGE,function(t){var a=t.value;switch(t.field){case"currentTime":e.setState({currentTime:a,isAtLiveEdge:a>=e.state.duration-20});break;case"duration":e.setState({duration:a});break;case"playerState":var n=e.getPlaybackStateFromPlayerState(a);e.setState({playbackState:n}),n===r.PlaybackState.IDLE&&e.stop();break;case"liveSeekableRange":e.setState(a?{isLive:!a.isLiveDone,duration:a.end-a.start,isSeekable:a.end-a.start>300}:{isLive:!1})}})},i.load=function(e,t){void 0===t&&(t=null);var a=cast.framework.CastContext.getInstance().getCurrentSession(),r=new chrome.cast.media.MediaInfo(e,"video/mp4"),n=new chrome.cast.media.LoadRequest(r);return t&&(n.currentTime=t),a.loadMedia(n)},i.play=function(){this.playerController.playOrPause()},i.pause=function(){this.playerController.playOrPause()},i.stop=function(){this.playerController.stop()},i.mute=function(){this.playerController.muteOrUnmute()},i.unmute=function(){this.playerController.muteOrUnmute()},i.setAudioTrack=function(){},i.setTextTrack=function(){},i.seekTo=function(e){var t=e.position,a=e.change,r=e.percentage;r?t=Math.min(r,99.9)/100*this.getDuration():a&&(t=this.player.currentTime+a),this.player.currentTime=t,this.playerController.seek()},n}(n),exports.initializeCast=s;
1
+ var e,t=(e=require("mitt"))&&"object"==typeof e&&"default"in e?e.default:e,a=require("@eyevinn/web-player-core");function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var n,s=function(){function e(){this.emitter=t()}var a=e.prototype;return a.on=function(e,t){this.emitter.on.apply(this,arguments)},a.off=function(e,t){this.emitter.on.apply(this,arguments)},a.emit=function(e,t){this.emitter.emit.apply(this,arguments)},a.destroy=function(){this.emitter.all.clear()},e}();function o(e,t){return new Promise(function(a,r){window.__onGCastApiAvailable=function(n){n?(cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:e||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:t||chrome.cast.AutoJoinPolicy.PAGE_SCOPED}),a()):r(new Error("[Cast] not available"))};var n=document.createElement("script");n.src="//www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(n)})}(n=exports.CastSenderEvent||(exports.CastSenderEvent={})).CONNECTED="cast:connected",n.DISCONNECTED="cast:disconnected",n.STATE_CHANGE="cast:state_change",exports.CastSender=function(e){var t,n;function s(t,r){var n;return(n=e.call(this)||this).state={playbackState:a.PlaybackState.IDLE,currentTime:0,duration:0,isLive:!1,isAtLiveEdge:!1,isSeekable:!0,isMuted:!1,audioTracks:[],textTracks:[],volume:1},o(t,r).then(function(){n.player=new cast.framework.RemotePlayer,n.playerController=new cast.framework.RemotePlayerController(n.player),n.setupListeners()},function(e){return console.error(e)}),n}n=e,(t=s).prototype=Object.create(n.prototype),t.prototype.constructor=t,r(t,n);var i=s.prototype;return i.setState=function(e){this.state=Object.assign({},this.state,e),this.emit(exports.CastSenderEvent.STATE_CHANGE,{state:this.state})},i.getPlaybackStateFromPlayerState=function(e){switch(e){case chrome.cast.media.PlayerState.BUFFERING:return a.PlaybackState.BUFFERING;case chrome.cast.media.PlayerState.PAUSED:return a.PlaybackState.PAUSED;case chrome.cast.media.PlayerState.PLAYING:return a.PlaybackState.PLAYING;case chrome.cast.media.PlayerState.IDLE:return a.PlaybackState.IDLE}},i.getDuration=function(){return this.player.liveSeekableRange?this.player.liveSeekableRange.end:this.player.duration},i.setupListeners=function(){var e=this;cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,function(t){switch(t.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_RESUMED:e.emit(exports.CastSenderEvent.CONNECTED),e.setState({playbackState:a.PlaybackState.READY,isMuted:e.player.isMuted});break;case cast.framework.SessionState.SESSION_ENDED:e.emit(exports.CastSenderEvent.DISCONNECTED),e.setState({playbackState:a.PlaybackState.IDLE})}}),this.playerController.addEventListener(cast.framework.RemotePlayerEventType.ANY_CHANGE,function(t){var r=t.value;switch(t.field){case"currentTime":e.setState({currentTime:r,isAtLiveEdge:r>=e.state.duration-20});break;case"duration":e.setState({duration:r});break;case"playerState":var n=e.getPlaybackStateFromPlayerState(r);e.setState({playbackState:n}),n===a.PlaybackState.IDLE&&e.stop();break;case"liveSeekableRange":e.setState(r?{isLive:!r.isLiveDone,duration:r.end-r.start,isSeekable:r.end-r.start>300}:{isLive:!1})}})},i.load=function(e,t){void 0===t&&(t=null);var a=cast.framework.CastContext.getInstance().getCurrentSession(),r=new chrome.cast.media.MediaInfo(e,"video/mp4"),n=new chrome.cast.media.LoadRequest(r);return t&&(n.currentTime=t),a.loadMedia(n)},i.play=function(){this.playerController.playOrPause()},i.pause=function(){this.playerController.playOrPause()},i.stop=function(){this.playerController.stop()},i.mute=function(){this.playerController.muteOrUnmute()},i.unmute=function(){this.playerController.muteOrUnmute()},i.setAudioTrack=function(){},i.setTextTrack=function(){},i.seekTo=function(e){var t=e.position,a=e.change,r=e.percentage;r?t=Math.min(r,99.9)/100*this.getDuration():a&&(t=this.player.currentTime+a),this.player.currentTime=t,this.playerController.seek()},s}(s),exports.initializeCast=o;
package/dist/index.m.js CHANGED
@@ -1 +1 @@
1
- import e from"mitt";import{PlaybackState as t}from"@eyevinn/web-player-core";var a,r=function(){function t(){this.emitter=e()}var a=t.prototype;return a.on=function(e,t){this.emitter.on.apply(this,arguments)},a.off=function(e,t){this.emitter.on.apply(this,arguments)},a.emit=function(e,t){this.emitter.emit.apply(this,arguments)},a.destroy=function(){this.emitter.all.clear()},t}();function n(e,t){return new Promise(function(a,r){window.__onGCastApiAvailable=function(n){n?(cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:e||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:t||chrome.cast.AutoJoinPolicy.PAGE_SCOPED}),a()):r(new Error("[Cast] not available"))};var n=document.createElement("script");n.src="//www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(n)})}!function(e){e.CONNECTED="cast:connected",e.DISCONNECTED="cast:disconnected",e.STATE_CHANGE="cast:state_change"}(a||(a={}));var i=function(e){var r,i;function o(a,r){var i;return(i=e.call(this)||this).state={playbackState:t.IDLE,currentTime:0,duration:0,isLive:!1,isAtLiveEdge:!1,isSeekable:!0,isMuted:!1,audioTracks:[],textTracks:[]},n(a,r).then(function(){i.player=new cast.framework.RemotePlayer,i.playerController=new cast.framework.RemotePlayerController(i.player),i.setupListeners()},function(e){return console.error(e)}),i}i=e,(r=o).prototype=Object.create(i.prototype),r.prototype.constructor=r,r.__proto__=i;var s=o.prototype;return s.setState=function(e){this.state=Object.assign({},this.state,e),this.emit(a.STATE_CHANGE,{state:this.state})},s.getPlaybackStateFromPlayerState=function(e){switch(e){case chrome.cast.media.PlayerState.BUFFERING:return t.BUFFERING;case chrome.cast.media.PlayerState.PAUSED:return t.PAUSED;case chrome.cast.media.PlayerState.PLAYING:return t.PLAYING;case chrome.cast.media.PlayerState.IDLE:return t.IDLE}},s.getDuration=function(){return this.player.liveSeekableRange?this.player.liveSeekableRange.end:this.player.duration},s.setupListeners=function(){var e=this;cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,function(r){switch(r.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_RESUMED:e.emit(a.CONNECTED),e.setState({playbackState:t.READY,isMuted:e.player.isMuted});break;case cast.framework.SessionState.SESSION_ENDED:e.emit(a.DISCONNECTED),e.setState({playbackState:t.IDLE})}}),this.playerController.addEventListener(cast.framework.RemotePlayerEventType.ANY_CHANGE,function(a){var r=a.value;switch(a.field){case"currentTime":e.setState({currentTime:r,isAtLiveEdge:r>=e.state.duration-20});break;case"duration":e.setState({duration:r});break;case"playerState":var n=e.getPlaybackStateFromPlayerState(r);e.setState({playbackState:n}),n===t.IDLE&&e.stop();break;case"liveSeekableRange":e.setState(r?{isLive:!r.isLiveDone,duration:r.end-r.start,isSeekable:r.end-r.start>300}:{isLive:!1})}})},s.load=function(e,t){void 0===t&&(t=null);var a=cast.framework.CastContext.getInstance().getCurrentSession(),r=new chrome.cast.media.MediaInfo(e,"video/mp4"),n=new chrome.cast.media.LoadRequest(r);return t&&(n.currentTime=t),a.loadMedia(n)},s.play=function(){this.playerController.playOrPause()},s.pause=function(){this.playerController.playOrPause()},s.stop=function(){this.playerController.stop()},s.mute=function(){this.playerController.muteOrUnmute()},s.unmute=function(){this.playerController.muteOrUnmute()},s.setAudioTrack=function(){},s.setTextTrack=function(){},s.seekTo=function(e){var t=e.position,a=e.change,r=e.percentage;r?t=Math.min(r,99.9)/100*this.getDuration():a&&(t=this.player.currentTime+a),this.player.currentTime=t,this.playerController.seek()},o}(r);export{i as CastSender,a as CastSenderEvent,n as initializeCast};
1
+ import e from"mitt";import{PlaybackState as t}from"@eyevinn/web-player-core";function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var r,n=function(){function t(){this.emitter=e()}var a=t.prototype;return a.on=function(e,t){this.emitter.on.apply(this,arguments)},a.off=function(e,t){this.emitter.on.apply(this,arguments)},a.emit=function(e,t){this.emitter.emit.apply(this,arguments)},a.destroy=function(){this.emitter.all.clear()},t}();function o(e,t){return new Promise(function(a,r){window.__onGCastApiAvailable=function(n){n?(cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:e||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:t||chrome.cast.AutoJoinPolicy.PAGE_SCOPED}),a()):r(new Error("[Cast] not available"))};var n=document.createElement("script");n.src="//www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(n)})}!function(e){e.CONNECTED="cast:connected",e.DISCONNECTED="cast:disconnected",e.STATE_CHANGE="cast:state_change"}(r||(r={}));var i=function(e){var n,i;function s(a,r){var n;return(n=e.call(this)||this).state={playbackState:t.IDLE,currentTime:0,duration:0,isLive:!1,isAtLiveEdge:!1,isSeekable:!0,isMuted:!1,audioTracks:[],textTracks:[],volume:1},o(a,r).then(function(){n.player=new cast.framework.RemotePlayer,n.playerController=new cast.framework.RemotePlayerController(n.player),n.setupListeners()},function(e){return console.error(e)}),n}i=e,(n=s).prototype=Object.create(i.prototype),n.prototype.constructor=n,a(n,i);var c=s.prototype;return c.setState=function(e){this.state=Object.assign({},this.state,e),this.emit(r.STATE_CHANGE,{state:this.state})},c.getPlaybackStateFromPlayerState=function(e){switch(e){case chrome.cast.media.PlayerState.BUFFERING:return t.BUFFERING;case chrome.cast.media.PlayerState.PAUSED:return t.PAUSED;case chrome.cast.media.PlayerState.PLAYING:return t.PLAYING;case chrome.cast.media.PlayerState.IDLE:return t.IDLE}},c.getDuration=function(){return this.player.liveSeekableRange?this.player.liveSeekableRange.end:this.player.duration},c.setupListeners=function(){var e=this;cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,function(a){switch(a.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_RESUMED:e.emit(r.CONNECTED),e.setState({playbackState:t.READY,isMuted:e.player.isMuted});break;case cast.framework.SessionState.SESSION_ENDED:e.emit(r.DISCONNECTED),e.setState({playbackState:t.IDLE})}}),this.playerController.addEventListener(cast.framework.RemotePlayerEventType.ANY_CHANGE,function(a){var r=a.value;switch(a.field){case"currentTime":e.setState({currentTime:r,isAtLiveEdge:r>=e.state.duration-20});break;case"duration":e.setState({duration:r});break;case"playerState":var n=e.getPlaybackStateFromPlayerState(r);e.setState({playbackState:n}),n===t.IDLE&&e.stop();break;case"liveSeekableRange":e.setState(r?{isLive:!r.isLiveDone,duration:r.end-r.start,isSeekable:r.end-r.start>300}:{isLive:!1})}})},c.load=function(e,t){void 0===t&&(t=null);var a=cast.framework.CastContext.getInstance().getCurrentSession(),r=new chrome.cast.media.MediaInfo(e,"video/mp4"),n=new chrome.cast.media.LoadRequest(r);return t&&(n.currentTime=t),a.loadMedia(n)},c.play=function(){this.playerController.playOrPause()},c.pause=function(){this.playerController.playOrPause()},c.stop=function(){this.playerController.stop()},c.mute=function(){this.playerController.muteOrUnmute()},c.unmute=function(){this.playerController.muteOrUnmute()},c.setAudioTrack=function(){},c.setTextTrack=function(){},c.seekTo=function(e){var t=e.position,a=e.change,r=e.percentage;r?t=Math.min(r,99.9)/100*this.getDuration():a&&(t=this.player.currentTime+a),this.player.currentTime=t,this.playerController.seek()},s}(n);export{i as CastSender,r as CastSenderEvent,o as initializeCast};
@@ -1 +1 @@
1
- import e from"mitt";import{PlaybackState as t}from"@eyevinn/web-player-core";function a(e,t){return new Promise((a,s)=>{window.__onGCastApiAvailable=r=>{r?(cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:e||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:t||chrome.cast.AutoJoinPolicy.PAGE_SCOPED}),a()):s(new Error("[Cast] not available"))};const r=document.createElement("script");r.src="//www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(r)})}var s;!function(e){e.CONNECTED="cast:connected",e.DISCONNECTED="cast:disconnected",e.STATE_CHANGE="cast:state_change"}(s||(s={}));class r extends class{constructor(){this.emitter=e()}on(e,t){this.emitter.on.apply(this,arguments)}off(e,t){this.emitter.on.apply(this,arguments)}emit(e,t){this.emitter.emit.apply(this,arguments)}destroy(){this.emitter.all.clear()}}{constructor(e,s){super(),this.state={playbackState:t.IDLE,currentTime:0,duration:0,isLive:!1,isAtLiveEdge:!1,isSeekable:!0,isMuted:!1,audioTracks:[],textTracks:[]},a(e,s).then(()=>{this.player=new cast.framework.RemotePlayer,this.playerController=new cast.framework.RemotePlayerController(this.player),this.setupListeners()},e=>console.error(e))}setState(e){this.state=Object.assign({},this.state,e),this.emit(s.STATE_CHANGE,{state:this.state})}getPlaybackStateFromPlayerState(e){switch(e){case chrome.cast.media.PlayerState.BUFFERING:return t.BUFFERING;case chrome.cast.media.PlayerState.PAUSED:return t.PAUSED;case chrome.cast.media.PlayerState.PLAYING:return t.PLAYING;case chrome.cast.media.PlayerState.IDLE:return t.IDLE}}getDuration(){return this.player.liveSeekableRange?this.player.liveSeekableRange.end:this.player.duration}setupListeners(){cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,e=>{switch(e.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_RESUMED:this.emit(s.CONNECTED),this.setState({playbackState:t.READY,isMuted:this.player.isMuted});break;case cast.framework.SessionState.SESSION_ENDED:this.emit(s.DISCONNECTED),this.setState({playbackState:t.IDLE})}}),this.playerController.addEventListener(cast.framework.RemotePlayerEventType.ANY_CHANGE,({field:e,value:a})=>{switch(e){case"currentTime":this.setState({currentTime:a,isAtLiveEdge:a>=this.state.duration-20});break;case"duration":this.setState({duration:a});break;case"playerState":{const e=this.getPlaybackStateFromPlayerState(a);this.setState({playbackState:e}),e===t.IDLE&&this.stop()}break;case"liveSeekableRange":this.setState(a?{isLive:!a.isLiveDone,duration:a.end-a.start,isSeekable:a.end-a.start>300}:{isLive:!1})}})}load(e,t=null){const a=cast.framework.CastContext.getInstance().getCurrentSession(),s=new chrome.cast.media.MediaInfo(e,"video/mp4"),r=new chrome.cast.media.LoadRequest(s);return t&&(r.currentTime=t),a.loadMedia(r)}play(){this.playerController.playOrPause()}pause(){this.playerController.playOrPause()}stop(){this.playerController.stop()}mute(){this.playerController.muteOrUnmute()}unmute(){this.playerController.muteOrUnmute()}setAudioTrack(){}setTextTrack(){}seekTo({position:e,change:t,percentage:a}){a?e=Math.min(a,99.9)/100*this.getDuration():t&&(e=this.player.currentTime+t),this.player.currentTime=e,this.playerController.seek()}}export{r as CastSender,s as CastSenderEvent,a as initializeCast};
1
+ import e from"mitt";import{PlaybackState as t}from"@eyevinn/web-player-core";function a(e,t){return new Promise((a,s)=>{window.__onGCastApiAvailable=r=>{r?(cast.framework.CastContext.getInstance().setOptions({receiverApplicationId:e||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,autoJoinPolicy:t||chrome.cast.AutoJoinPolicy.PAGE_SCOPED}),a()):s(new Error("[Cast] not available"))};const r=document.createElement("script");r.src="//www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1",document.body.appendChild(r)})}var s;!function(e){e.CONNECTED="cast:connected",e.DISCONNECTED="cast:disconnected",e.STATE_CHANGE="cast:state_change"}(s||(s={}));class r extends class{constructor(){this.emitter=e()}on(e,t){this.emitter.on.apply(this,arguments)}off(e,t){this.emitter.on.apply(this,arguments)}emit(e,t){this.emitter.emit.apply(this,arguments)}destroy(){this.emitter.all.clear()}}{constructor(e,s){super(),this.state={playbackState:t.IDLE,currentTime:0,duration:0,isLive:!1,isAtLiveEdge:!1,isSeekable:!0,isMuted:!1,audioTracks:[],textTracks:[],volume:1},a(e,s).then(()=>{this.player=new cast.framework.RemotePlayer,this.playerController=new cast.framework.RemotePlayerController(this.player),this.setupListeners()},e=>console.error(e))}setState(e){this.state=Object.assign({},this.state,e),this.emit(s.STATE_CHANGE,{state:this.state})}getPlaybackStateFromPlayerState(e){switch(e){case chrome.cast.media.PlayerState.BUFFERING:return t.BUFFERING;case chrome.cast.media.PlayerState.PAUSED:return t.PAUSED;case chrome.cast.media.PlayerState.PLAYING:return t.PLAYING;case chrome.cast.media.PlayerState.IDLE:return t.IDLE}}getDuration(){return this.player.liveSeekableRange?this.player.liveSeekableRange.end:this.player.duration}setupListeners(){cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,e=>{switch(e.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_RESUMED:this.emit(s.CONNECTED),this.setState({playbackState:t.READY,isMuted:this.player.isMuted});break;case cast.framework.SessionState.SESSION_ENDED:this.emit(s.DISCONNECTED),this.setState({playbackState:t.IDLE})}}),this.playerController.addEventListener(cast.framework.RemotePlayerEventType.ANY_CHANGE,({field:e,value:a})=>{switch(e){case"currentTime":this.setState({currentTime:a,isAtLiveEdge:a>=this.state.duration-20});break;case"duration":this.setState({duration:a});break;case"playerState":{const e=this.getPlaybackStateFromPlayerState(a);this.setState({playbackState:e}),e===t.IDLE&&this.stop()}break;case"liveSeekableRange":this.setState(a?{isLive:!a.isLiveDone,duration:a.end-a.start,isSeekable:a.end-a.start>300}:{isLive:!1})}})}load(e,t=null){const a=cast.framework.CastContext.getInstance().getCurrentSession(),s=new chrome.cast.media.MediaInfo(e,"video/mp4"),r=new chrome.cast.media.LoadRequest(s);return t&&(r.currentTime=t),a.loadMedia(r)}play(){this.playerController.playOrPause()}pause(){this.playerController.playOrPause()}stop(){this.playerController.stop()}mute(){this.playerController.muteOrUnmute()}unmute(){this.playerController.muteOrUnmute()}setAudioTrack(){}setTextTrack(){}seekTo({position:e,change:t,percentage:a}){a?e=Math.min(a,99.9)/100*this.getDuration():t&&(e=this.player.currentTime+t),this.player.currentTime=e,this.playerController.seek()}}export{r as CastSender,s as CastSenderEvent,a as initializeCast};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eyevinn/web-player-cast",
3
- "version": "0.6.3",
3
+ "version": "0.7.0",
4
4
  "author": "Eyevinn Technology <work@eyevinn.se>",
5
5
  "contributors": [
6
6
  "Benjamin Wallberg <benjamin.wallberg@eyevinn.se> (Eyevinn Technology AB)"
@@ -32,12 +32,12 @@
32
32
  "url": "https://github.com/Eyevinn/web-player/issues"
33
33
  },
34
34
  "dependencies": {
35
- "@eyevinn/web-player-core": "^0.8.0",
35
+ "@eyevinn/web-player-core": "^0.9.0",
36
36
  "@types/chromecast-caf-sender": "^1.0.3",
37
37
  "mitt": "^2.1.0"
38
38
  },
39
39
  "publishConfig": {
40
40
  "access": "public"
41
41
  },
42
- "gitHead": "f4c531b54534e8cb549a227e02e297aef9a78824"
42
+ "gitHead": "587ccc4763fcd4e67c093be0cd45b4f60394682e"
43
43
  }