/home/silvwabw/www/wp-content/plugins/gutenverse/lib/framework/assets/js/reactPlayerFilePlayer.js
(self.webpackChunkgutenverse_core=self.webpackChunkgutenverse_core||[]).push([[458],{3079(e,t,r){var i,n=Object.create,s=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,l=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty,h=(e,t,r,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let n of a(t))p.call(e,n)||n===r||s(e,n,{get:()=>t[n],enumerable:!(i=o(t,n))||i.enumerable});return e},u=(e,t,r)=>(((e,t,r)=>{t in e?s(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!=typeof t?t+"":t,r),r),c={};((e,t)=>{for(var r in t)s(e,r,{get:t[r],enumerable:!0})})(c,{default:()=>E}),e.exports=(i=c,h(s({},"__esModule",{value:!0}),i));var d=((e,t,r)=>(r=null!=e?n(l(e)):{},h(e&&e.__esModule?r:s(r,"default",{value:e,enumerable:!0}),e)))(r(1609)),y=r(2618),P=r(9420);const m="undefined"!=typeof navigator,f=m&&"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1,b=m&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||f)&&!window.MSStream,v=/www\.dropbox\.com\/.+/;class E extends d.Component{constructor(){super(...arguments),u(this,"onReady",(...e)=>this.props.onReady(...e)),u(this,"onPlay",(...e)=>this.props.onPlay(...e)),u(this,"onBuffer",(...e)=>this.props.onBuffer(...e)),u(this,"onBufferEnd",(...e)=>this.props.onBufferEnd(...e)),u(this,"onPause",(...e)=>this.props.onPause(...e)),u(this,"onEnded",(...e)=>this.props.onEnded(...e)),u(this,"onError",(...e)=>this.props.onError(...e)),u(this,"onPlayBackRateChange",e=>this.props.onPlaybackRateChange(e.target.playbackRate)),u(this,"onEnablePIP",(...e)=>this.props.onEnablePIP(...e)),u(this,"onDisablePIP",e=>{const{onDisablePIP:t,playing:r}=this.props;t(e),r&&this.play()}),u(this,"onPresentationModeChange",e=>{if(this.player&&(0,y.supportsWebKitPresentationMode)(this.player)){const{webkitPresentationMode:t}=this.player;"picture-in-picture"===t?this.onEnablePIP(e):"inline"===t&&this.onDisablePIP(e)}}),u(this,"onSeek",e=>{this.props.onSeek(e.target.currentTime)}),u(this,"mute",()=>{this.player.muted=!0}),u(this,"unmute",()=>{this.player.muted=!1}),u(this,"renderSourceElement",(e,t)=>"string"==typeof e?d.default.createElement("source",{key:t,src:e}):d.default.createElement("source",{key:t,...e})),u(this,"renderTrack",(e,t)=>d.default.createElement("track",{key:t,...e})),u(this,"ref",e=>{this.player&&(this.prevPlayer=this.player),this.player=e})}componentDidMount(){this.props.onMount&&this.props.onMount(this),this.addListeners(this.player);const e=this.getSource(this.props.url);e&&(this.player.src=e),(b||this.props.config.forceDisableHls)&&this.player.load()}componentDidUpdate(e){this.shouldUseAudio(this.props)!==this.shouldUseAudio(e)&&(this.removeListeners(this.prevPlayer,e.url),this.addListeners(this.player)),this.props.url===e.url||(0,y.isMediaStream)(this.props.url)||this.props.url instanceof Array||(this.player.srcObject=null)}componentWillUnmount(){this.player.removeAttribute("src"),this.removeListeners(this.player)}addListeners(e){const{playsinline:t}=this.props;e.addEventListener("play",this.onPlay),e.addEventListener("waiting",this.onBuffer),e.addEventListener("playing",this.onBufferEnd),e.addEventListener("pause",this.onPause),e.addEventListener("seeked",this.onSeek),e.addEventListener("ended",this.onEnded),e.addEventListener("error",this.onError),e.addEventListener("ratechange",this.onPlayBackRateChange),e.addEventListener("enterpictureinpicture",this.onEnablePIP),e.addEventListener("leavepictureinpicture",this.onDisablePIP),e.addEventListener("webkitpresentationmodechanged",this.onPresentationModeChange),t&&(e.setAttribute("playsinline",""),e.setAttribute("webkit-playsinline",""),e.setAttribute("x5-playsinline",""))}removeListeners(e){e.removeEventListener("canplay",this.onReady),e.removeEventListener("play",this.onPlay),e.removeEventListener("waiting",this.onBuffer),e.removeEventListener("playing",this.onBufferEnd),e.removeEventListener("pause",this.onPause),e.removeEventListener("seeked",this.onSeek),e.removeEventListener("ended",this.onEnded),e.removeEventListener("error",this.onError),e.removeEventListener("ratechange",this.onPlayBackRateChange),e.removeEventListener("enterpictureinpicture",this.onEnablePIP),e.removeEventListener("leavepictureinpicture",this.onDisablePIP),e.removeEventListener("webkitpresentationmodechanged",this.onPresentationModeChange)}shouldUseAudio(e){return!e.config.forceVideo&&!e.config.attributes.poster&&(P.AUDIO_EXTENSIONS.test(e.url)||e.config.forceAudio)}load(e){if(e instanceof Array)this.player.load();else if((0,y.isMediaStream)(e))try{this.player.srcObject=e}catch(t){this.player.src=window.URL.createObjectURL(e)}}play(){const e=this.player.play();e&&e.catch(this.props.onError)}pause(){this.player.pause()}stop(){this.player.removeAttribute("src")}seekTo(e,t=!0){this.player.currentTime=e,t||this.pause()}setVolume(e){this.player.volume=e}enablePIP(){this.player.requestPictureInPicture&&document.pictureInPictureElement!==this.player?this.player.requestPictureInPicture():(0,y.supportsWebKitPresentationMode)(this.player)&&"picture-in-picture"!==this.player.webkitPresentationMode&&this.player.webkitSetPresentationMode("picture-in-picture")}disablePIP(){document.exitPictureInPicture&&document.pictureInPictureElement===this.player?document.exitPictureInPicture():(0,y.supportsWebKitPresentationMode)(this.player)&&"inline"!==this.player.webkitPresentationMode&&this.player.webkitSetPresentationMode("inline")}setPlaybackRate(e){try{this.player.playbackRate=e}catch(e){this.props.onError(e)}}getDuration(){if(!this.player)return null;const{duration:e,seekable:t}=this.player;return e===1/0&&t.length>0?t.end(t.length-1):e}getCurrentTime(){return this.player?this.player.currentTime:null}getSecondsLoaded(){if(!this.player)return null;const{buffered:e}=this.player;if(0===e.length)return 0;const t=e.end(e.length-1),r=this.getDuration();return t>r?r:t}getSource(e){if(!(e instanceof Array||(0,y.isMediaStream)(e)))return v.test(e)?e.replace("www.dropbox.com","dl.dropboxusercontent.com"):e}render(){const{url:e,playing:t,loop:r,controls:i,muted:n,config:s,width:o,height:a}=this.props,l=this.shouldUseAudio(this.props)?"audio":"video",p={width:"auto"===o?o:"100%",height:"auto"===a?a:"100%"};return d.default.createElement(l,{ref:this.ref,src:this.getSource(e),style:p,preload:"auto",autoPlay:t||void 0,controls:i,muted:n,loop:r,...s.attributes},e instanceof Array&&e.map(this.renderSourceElement),s.tracks.map(this.renderTrack))}}u(E,"displayName","FilePlayer"),u(E,"canPlay",P.canPlay.file)}}]);