(self.webpackChunkgutenverse_core=self.webpackChunkgutenverse_core||[]).push([[42],{1409(e,t,r){var a,s=Object.create,l=Object.defineProperty,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,o=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty,h=(e,t,r,a)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of i(t))p.call(e,s)||s===r||l(e,s,{get:()=>t[s],enumerable:!(a=n(t,s))||a.enumerable});return e},c=(e,t,r)=>((e,t,r)=>t in e?l(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r)(e,"symbol"!=typeof t?t+"":t,r),u={};((e,t)=>{for(var r in t)l(e,r,{get:t[r],enumerable:!0})})(u,{default:()=>E}),e.exports=(a=u,h(l({},"__esModule",{value:!0}),a));var y=((e,t,r)=>(r=null!=e?s(o(e)):{},h(e&&e.__esModule?r:l(r,"default",{value:e,enumerable:!0}),e)))(r(1609)),d=r(2368),P=r(3742);const m=(0,d.getAssetPath)()+"/reactplayer-twitch-api.js";class E extends y.Component{constructor(){super(...arguments),c(this,"callPlayer",d.callPlayer),c(this,"playerID",this.props.config.playerId||`twitch-player-${(0,d.randomString)()}`),c(this,"mute",()=>{this.callPlayer("setMuted",!0)}),c(this,"unmute",()=>{this.callPlayer("setMuted",!1)})}componentDidMount(){this.props.onMount&&this.props.onMount(this)}load(e,t){const{playsinline:r,onError:a,config:s,controls:l}=this.props,n=P.MATCH_URL_TWITCH_CHANNEL.test(e),i=n?e.match(P.MATCH_URL_TWITCH_CHANNEL)[1]:e.match(P.MATCH_URL_TWITCH_VIDEO)[1];t?n?this.player.setChannel(i):this.player.setVideo("v"+i):(0,d.getSDK)(m,"Twitch").then(t=>{this.player=new t.Player(this.playerID,{video:n?"":i,channel:n?i:"",height:"100%",width:"100%",playsinline:r,autoplay:this.props.playing,muted:this.props.muted,controls:!!n||l,time:(0,d.parseStartTime)(e),...s.options});const{READY:a,PLAYING:o,PAUSE:p,ENDED:h,ONLINE:c,OFFLINE:u,SEEK:y}=t.Player;this.player.addEventListener(a,this.props.onReady),this.player.addEventListener(o,this.props.onPlay),this.player.addEventListener(p,this.props.onPause),this.player.addEventListener(h,this.props.onEnded),this.player.addEventListener(y,this.props.onSeek),this.player.addEventListener(c,this.props.onLoaded),this.player.addEventListener(u,this.props.onLoaded)},a)}play(){this.callPlayer("play")}pause(){this.callPlayer("pause")}stop(){this.callPlayer("pause")}seekTo(e,t=!0){this.callPlayer("seek",e),t||this.pause()}setVolume(e){this.callPlayer("setVolume",e)}getDuration(){return this.callPlayer("getDuration")}getCurrentTime(){return this.callPlayer("getCurrentTime")}getSecondsLoaded(){return null}render(){return y.default.createElement("div",{style:{width:"100%",height:"100%"},id:this.playerID})}}c(E,"displayName","Twitch"),c(E,"canPlay",P.canPlay.twitch),c(E,"loopOnEnded",!0)}}]);