{"version":3,"sources":["webpack:///./node_modules/react-player/lib/players/YouTube.js","webpack:///./node_modules/react-player/lib/players/Mixcloud.js","webpack:///./node_modules/react-player/lib/ReactPlayer.js","webpack:///./node_modules/react-player/lib/index.js","webpack:///./node_modules/react-player/lib/players/Kaltura.js","webpack:///./node_modules/react-player/lib/players/Streamable.js","webpack:///./node_modules/react-player/lib/players/Vimeo.js","webpack:///./node_modules/load-script/index.js","webpack:///./node_modules/deepmerge/dist/cjs.js","webpack:///./node_modules/react-player/lib/props.js","webpack:///./node_modules/react-player/lib/players/DailyMotion.js","webpack:///./node_modules/react-player/lib/players/Wistia.js","webpack:///./node_modules/memoize-one/dist/memoize-one.esm.js","webpack:///./node_modules/react-player/lib/players/Twitch.js","webpack:///./node_modules/react-player/lib/players/FilePlayer.js","webpack:///./node_modules/react-player/lib/players/Facebook.js","webpack:///./node_modules/react-player/lib/players/Vidyard.js","webpack:///./node_modules/react-player/lib/Preview.js","webpack:///./node_modules/react-player/lib/patterns.js","webpack:///./node_modules/react-player/lib/Player.js","webpack:///./node_modules/react-player/lib/utils.js","webpack:///./node_modules/react-player/lib/players/SoundCloud.js","webpack:///./node_modules/react-player/lib/players/index.js"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","exports","value","_react","__esModule","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","hasOwnProperty","call","desc","set","_interopRequireWildcard","_utils","_patterns","WeakMap","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_slicedToArray","arr","Array","isArray","_arrayWithHoles","_arr","_n","_d","_e","undefined","_s","_i","next","done","err","_iterableToArrayLimit","o","minLen","_arrayLikeToArray","n","toString","slice","name","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","configurable","writable","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Date","e","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","getPrototypeOf","MATCH_PLAYLIST","MATCH_USER_UPLOADS","MATCH_NOCOOKIE","YouTube","_Component","subClass","superClass","create","_inherits","protoProps","staticProps","_super","_this","_len","args","_key","concat","callPlayer","url","listType","playlist","map","getID","join","list","match","replace","event","data","_this$props","onPlay","onPause","onBuffer","onBufferEnd","onEnded","onReady","loop","_this$props$config","config","playerVars","onUnstarted","_window$SDK_GLOBAL$Pl","window","PlayerState","UNSTARTED","PLAYING","PAUSED","BUFFERING","ENDED","CUED","isPlaylist","start","seekTo","play","container","onMount","MATCH_URL_YOUTUBE","isReady","_this2","_this$props2","playing","muted","playsinline","controls","_onError","onError","embedOptions","id","player","loadPlaylist","parsePlaylist","cueVideoById","videoId","startSeconds","parseStartTime","endSeconds","parseEndTime","end","getSDK","YT","loaded","then","Player","width","height","autoplay","mute","origin","location","events","setLoop","onStateChange","host","console","warn","document","body","contains","amount","pause","fraction","rate","getDuration","style","display","createElement","ref","Component","canPlay","youtube","Mixcloud","iframe","PlayerWidget","ready","on","ended","error","progress","seconds","duration","currentTime","MATCH_URL_MIXCLOUD","query","queryString","options","feed","src","frameBorder","mixcloud","createReactPlayer","_deepmerge","_interopRequireDefault","_memoizeOne","_reactFastCompare","_props","_Player3","_extends","assign","_toConsumableArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","Preview","lazy","Promise","resolve","IS_BROWSER","IS_GLOBAL","global","SUPPORTED_PROPS","propTypes","UniversalSuspense","Suspense","customPlayers","players","fallback","_class","_temp","ReactPlayer","showPreview","light","wrapper","_wrapper","_player","setState","onClickPreview","getCurrentTime","getSecondsLoaded","getInternalPlayer","type","all","defaultProps","omit","getActivePlayer","getConfig","references","activePlayer","lazyPlayer","handleReady","nextProps","nextState","state","prevProps","playIcon","previewTabIndex","onClick","handleClickPreview","Wrapper","attributes","getAttributes","renderPreview","renderActivePlayer","_i2","_arr2","_i3","_arr3","_Player2","canEnablePIP","_players","_ReactPlayer","_default","Kaltura","playerjs","onSeek","_ref","_ref2","percent","secondsLoaded","setTimeout","scrolling","allowFullScreen","allow","referrerPolicy","kaltura","Streamable","MATCH_URL_STREAMABLE","streamable","Vimeo","setVolume","volume","playerOptions","querySelector","refreshDuration","_this3","promise","overflow","vimeo","stdOnEnd","script","cb","onload","onerror","Error","ieOnEnd","onreadystatechange","readyState","module","opts","head","getElementsByTagName","charset","async","attrs","attr","setAttribute","setAttributes","text","appendChild","isMergeableObject","isNonNullObject","stringValue","$$typeof","REACT_ELEMENT_TYPE","isReactElement","isSpecial","for","cloneUnlessOtherwiseSpecified","clone","deepmerge","val","defaultArrayMerge","element","getKeys","symbol","propertyIsEnumerable","getEnumerableOwnPropertySymbols","propertyIsOnObject","property","_","mergeObject","destination","propertyIsUnsafe","customMerge","getMergeFunction","arrayMerge","sourceIsArray","array","reduce","prev","deepmerge_1","_propTypes","string","bool","number","oneOfType","shape","func","node","playbackRate","progressInterval","pip","stopOnUnmount","render","isRequired","soundcloud","facebook","appId","version","playerId","dailymotion","params","file","tracks","forceVideo","forceAudio","forceHLS","forceDASH","forceFLV","hlsOptions","hlsVersion","dashVersion","flvVersion","wistia","customControls","twitch","vidyard","onStart","onDuration","onProgress","onEnablePIP","onDisablePIP","noop","visual","buying","liking","download","sharing","show_comments","show_playcount","showinfo","rel","iv_load_policy","modestbranding","api","autopause","byline","portrait","title","hide_cover","DailyMotion","MATCH_URL_DAILYMOTION","load","DM","video","apiready","seeked","video_end","durationchange","onDurationChange","waiting","bufferedTime","Wistia","_args","randomString","_this$props3","_this$props4","_this$props5","_onReady","control","defineControl","_wq","playerID","autoPlay","silentAutoPlay","controlsVisibleOnLoad","fullscreenButton","playbar","playbackRateControl","qualityControl","volumeControl","settingsControl","smallPlayButton","unbind","bind","videoID","MATCH_URL_WISTIA","className","safeIsNaN","Number","isNaN","areInputsEqual","newInputs","lastInputs","first","second","resultFn","isEqual","lastThis","lastResult","lastArgs","calledOnce","newArgs","Twitch","isChannel","MATCH_URL_TWITCH_CHANNEL","MATCH_URL_TWITCH_VIDEO","setChannel","setVideo","channel","time","_Twitch$Player","READY","PAUSE","ONLINE","OFFLINE","addEventListener","onLoaded","HAS_NAVIGATOR","navigator","IS_IPAD_PRO","platform","maxTouchPoints","IS_IOS","userAgent","MSStream","MATCH_DROPBOX_URL","MATCH_CLOUDFLARE_STREAM","FilePlayer","_this$props6","_this$props7","_this$props8","_this$props9","supportsWebKitPresentationMode","webkitPresentationMode","index","track","prevPlayer","addListeners","shouldUseAudio","removeListeners","isMediaStream","srcObject","hls","destroy","_this$props10","onPresentationModeChange","shouldUseHLS","removeEventListener","poster","AUDIO_EXTENSIONS","HLS_EXTENSIONS","DASH_EXTENSIONS","FLV_EXTENSIONS","dash","reset","Hls","Events","MANIFEST_PARSED","ERROR","loadSource","attachMedia","shouldUseDASH","dashjs","MediaPlayer","initialize","parseInt","getDebug","setLogToBrowserConsole","updateSettings","debug","logLevel","Debug","LOG_LEVEL_NONE","shouldUseFLV","flvjs","flv","createPlayer","attachMediaElement","URL","createObjectURL","removeAttribute","requestPictureInPicture","pictureInPictureElement","webkitSetPresentationMode","exitPictureInPicture","_this$player","seekable","Infinity","buffered","useHLS","useDASH","useFLV","_this$props11","Element","getSource","preload","renderSourceElement","renderTrack","SDK_URL","Facebook","FB","XFBML","parse","init","xfbml","Event","subscribe","msg","getElementById","visibility","Vidyard","MATCH_URL_VIDYARD","stop","addReadyListener","renderPlayer","uuid","getPlayerMetadata","meta","length_in_seconds","VidyardV4","destroyPlayer","image","mounted","fetchImage","fetch","response","json","thumbnail_url","flexCenter","alignItems","justifyContent","styles","preview","backgroundImage","backgroundSize","backgroundPosition","cursor","shadow","background","borderRadius","borderStyle","borderWidth","borderColor","marginLeft","defaultPlayIcon","tabIndex","onKeyPress","handleKeyPress","VIDEO_EXTENSIONS","MATCH_URL_KALTURA","MATCH_URL_FACEBOOK_WATCH","MATCH_URL_FACEBOOK","MATCH_URL_VIMEO","MATCH_URL_SOUNDCLOUD","_createForOfIteratorHelper","allowArrayLike","it","F","s","f","normalCompletion","didErr","step","_e2","every","item","canPlayFile","_step","_iterator","isBlobUrl","playedSeconds","loadedSeconds","played","prevPlayed","prevLoaded","progressTimeout","progressFrequency","isLoading","loadOnReady","handleDurationCheck","isPlaying","startOnPlay","setPlaybackRate","seekOnPlay","loopOnEnded","clearTimeout","durationCheckTimeout","onDurationCalled","disablePIP","forceLoad","enablePIP","unmute","handlePlayerMount","handlePlay","handlePause","handleEnded","handleLoaded","handleError","parseTimeParam","MATCH_START_QUERY","MATCH_END_QUERY","Math","random","substr","sdkGlobal","sdkReady","isLoaded","fetchScript","_loadScript","existingGlobal","getGlobal","reject","requests","sdk","request","previousOnReady","arrays","omitKeys","output","_keys","indexOf","method","message","displayName","_len2","_key2","MediaStream","notMobile","webkitSupportsPresentationMode","MATCH_START_STAMP","MATCH_NUMERIC","pattern","stamp","exec","_array2","count","period","parseTimeString","SoundCloud","SC","_SC$Widget$Events","Widget","PLAY","PLAY_PROGRESS","FINISH","currentPosition","fractionLoaded","loadedProgress","callback","encodeURIComponent","pictureInPictureEnabled"],"mappings":"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","file":"e76c570d43f3ad566ca88b21c2a5101b3851e48b-f4e371b791142bcb2db4.js","sourcesContent":["\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://www.youtube.com/iframe_api';\nvar SDK_GLOBAL = 'YT';\nvar SDK_GLOBAL_READY = 'onYouTubeIframeAPIReady';\nvar MATCH_PLAYLIST = /[?&](?:list|channel)=([a-zA-Z0-9_-]+)/;\nvar MATCH_USER_UPLOADS = /user\\/([a-zA-Z0-9_-]+)\\/?/;\nvar MATCH_NOCOOKIE = /youtube-nocookie\\.com/;\nvar NOCOOKIE_HOST = 'https://www.youtube-nocookie.com';\n\nvar YouTube = /*#__PURE__*/function (_Component) {\n _inherits(YouTube, _Component);\n\n var _super = _createSuper(YouTube);\n\n function YouTube() {\n var _this;\n\n _classCallCheck(this, YouTube);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"parsePlaylist\", function (url) {\n if (url instanceof Array) {\n return {\n listType: 'playlist',\n playlist: url.map(_this.getID).join(',')\n };\n }\n\n if (MATCH_PLAYLIST.test(url)) {\n var _url$match = url.match(MATCH_PLAYLIST),\n _url$match2 = _slicedToArray(_url$match, 2),\n playlistId = _url$match2[1];\n\n return {\n listType: 'playlist',\n list: playlistId.replace(/^UC/, 'UU')\n };\n }\n\n if (MATCH_USER_UPLOADS.test(url)) {\n var _url$match3 = url.match(MATCH_USER_UPLOADS),\n _url$match4 = _slicedToArray(_url$match3, 2),\n username = _url$match4[1];\n\n return {\n listType: 'user_uploads',\n list: username\n };\n }\n\n return {};\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onStateChange\", function (event) {\n var data = event.data;\n var _this$props = _this.props,\n onPlay = _this$props.onPlay,\n onPause = _this$props.onPause,\n onBuffer = _this$props.onBuffer,\n onBufferEnd = _this$props.onBufferEnd,\n onEnded = _this$props.onEnded,\n onReady = _this$props.onReady,\n loop = _this$props.loop,\n _this$props$config = _this$props.config,\n playerVars = _this$props$config.playerVars,\n onUnstarted = _this$props$config.onUnstarted;\n var _window$SDK_GLOBAL$Pl = window[SDK_GLOBAL].PlayerState,\n UNSTARTED = _window$SDK_GLOBAL$Pl.UNSTARTED,\n PLAYING = _window$SDK_GLOBAL$Pl.PLAYING,\n PAUSED = _window$SDK_GLOBAL$Pl.PAUSED,\n BUFFERING = _window$SDK_GLOBAL$Pl.BUFFERING,\n ENDED = _window$SDK_GLOBAL$Pl.ENDED,\n CUED = _window$SDK_GLOBAL$Pl.CUED;\n if (data === UNSTARTED) onUnstarted();\n\n if (data === PLAYING) {\n onPlay();\n onBufferEnd();\n }\n\n if (data === PAUSED) onPause();\n if (data === BUFFERING) onBuffer();\n\n if (data === ENDED) {\n var isPlaylist = !!_this.callPlayer('getPlaylist'); // Only loop manually if not playing a playlist\n\n if (loop && !isPlaylist) {\n if (playerVars.start) {\n _this.seekTo(playerVars.start);\n } else {\n _this.play();\n }\n }\n\n onEnded();\n }\n\n if (data === CUED) onReady();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.callPlayer('mute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('unMute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (container) {\n _this.container = container;\n });\n\n return _this;\n }\n\n _createClass(YouTube, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"getID\",\n value: function getID(url) {\n if (!url || url instanceof Array || MATCH_PLAYLIST.test(url)) {\n return null;\n }\n\n return url.match(_patterns.MATCH_URL_YOUTUBE)[1];\n }\n }, {\n key: \"load\",\n value: function load(url, isReady) {\n var _this2 = this;\n\n var _this$props2 = this.props,\n playing = _this$props2.playing,\n muted = _this$props2.muted,\n playsinline = _this$props2.playsinline,\n controls = _this$props2.controls,\n loop = _this$props2.loop,\n config = _this$props2.config,\n _onError = _this$props2.onError;\n var playerVars = config.playerVars,\n embedOptions = config.embedOptions;\n var id = this.getID(url);\n\n if (isReady) {\n if (MATCH_PLAYLIST.test(url) || MATCH_USER_UPLOADS.test(url) || url instanceof Array) {\n this.player.loadPlaylist(this.parsePlaylist(url));\n return;\n }\n\n this.player.cueVideoById({\n videoId: id,\n startSeconds: (0, _utils.parseStartTime)(url) || playerVars.start,\n endSeconds: (0, _utils.parseEndTime)(url) || playerVars.end\n });\n return;\n }\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL, SDK_GLOBAL_READY, function (YT) {\n return YT.loaded;\n }).then(function (YT) {\n if (!_this2.container) return;\n _this2.player = new YT.Player(_this2.container, _objectSpread({\n width: '100%',\n height: '100%',\n videoId: id,\n playerVars: _objectSpread(_objectSpread({\n autoplay: playing ? 1 : 0,\n mute: muted ? 1 : 0,\n controls: controls ? 1 : 0,\n start: (0, _utils.parseStartTime)(url),\n end: (0, _utils.parseEndTime)(url),\n origin: window.location.origin,\n playsinline: playsinline ? 1 : 0\n }, _this2.parsePlaylist(url)), playerVars),\n events: {\n onReady: function onReady() {\n if (loop) {\n _this2.player.setLoop(true); // Enable playlist looping\n\n }\n\n _this2.props.onReady();\n },\n onStateChange: _this2.onStateChange,\n onError: function onError(event) {\n return _onError(event.data);\n }\n },\n host: MATCH_NOCOOKIE.test(url) ? NOCOOKIE_HOST : undefined\n }, embedOptions));\n }, _onError);\n\n if (embedOptions.events) {\n console.warn('Using `embedOptions.events` will likely break things. Use ReactPlayer’s callback props instead, eg onReady, onPlay, onPause');\n }\n }\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('playVideo');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pauseVideo');\n }\n }, {\n key: \"stop\",\n value: function stop() {\n if (!document.body.contains(this.callPlayer('getIframe'))) return;\n this.callPlayer('stopVideo');\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(amount) {\n this.callPlayer('seekTo', amount);\n\n if (!this.props.playing) {\n this.pause();\n }\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction * 100);\n }\n }, {\n key: \"setPlaybackRate\",\n value: function setPlaybackRate(rate) {\n this.callPlayer('setPlaybackRate', rate);\n }\n }, {\n key: \"setLoop\",\n value: function setLoop(loop) {\n this.callPlayer('setLoop', loop);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.callPlayer('getDuration');\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.callPlayer('getCurrentTime');\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return this.callPlayer('getVideoLoadedFraction') * this.getDuration();\n }\n }, {\n key: \"render\",\n value: function render() {\n var display = this.props.display;\n var style = {\n width: '100%',\n height: '100%',\n display: display\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: style\n }, /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n ref: this.ref\n }));\n }\n }]);\n\n return YouTube;\n}(_react.Component);\n\nexports[\"default\"] = YouTube;\n\n_defineProperty(YouTube, \"displayName\", 'YouTube');\n\n_defineProperty(YouTube, \"canPlay\", _patterns.canPlay.youtube);","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://widget.mixcloud.com/media/js/widgetApi.js';\nvar SDK_GLOBAL = 'Mixcloud';\n\nvar Mixcloud = /*#__PURE__*/function (_Component) {\n _inherits(Mixcloud, _Component);\n\n var _super = _createSuper(Mixcloud);\n\n function Mixcloud() {\n var _this;\n\n _classCallCheck(this, Mixcloud);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"duration\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"currentTime\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"secondsLoaded\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {// No volume support\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {// No volume support\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (iframe) {\n _this.iframe = iframe;\n });\n\n return _this;\n }\n\n _createClass(Mixcloud, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (Mixcloud) {\n _this2.player = Mixcloud.PlayerWidget(_this2.iframe);\n\n _this2.player.ready.then(function () {\n _this2.player.events.play.on(_this2.props.onPlay);\n\n _this2.player.events.pause.on(_this2.props.onPause);\n\n _this2.player.events.ended.on(_this2.props.onEnded);\n\n _this2.player.events.error.on(_this2.props.error);\n\n _this2.player.events.progress.on(function (seconds, duration) {\n _this2.currentTime = seconds;\n _this2.duration = duration;\n });\n\n _this2.props.onReady();\n });\n }, this.props.onError);\n }\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('play');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {// Nothing to do\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('seek', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {// No volume support\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.duration;\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.currentTime;\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return null;\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n url = _this$props.url,\n config = _this$props.config;\n var id = url.match(_patterns.MATCH_URL_MIXCLOUD)[1];\n var style = {\n width: '100%',\n height: '100%'\n };\n var query = (0, _utils.queryString)(_objectSpread(_objectSpread({}, config.options), {}, {\n feed: \"/\".concat(id, \"/\")\n })); // We have to give the iframe a key here to prevent a\n // weird dialog appearing when loading a new track\n\n return /*#__PURE__*/_react[\"default\"].createElement(\"iframe\", {\n key: id,\n ref: this.ref,\n style: style,\n src: \"https://www.mixcloud.com/widget/iframe/?\".concat(query),\n frameBorder: \"0\"\n });\n }\n }]);\n\n return Mixcloud;\n}(_react.Component);\n\nexports[\"default\"] = Mixcloud;\n\n_defineProperty(Mixcloud, \"displayName\", 'Mixcloud');\n\n_defineProperty(Mixcloud, \"canPlay\", _patterns.canPlay.mixcloud);\n\n_defineProperty(Mixcloud, \"loopOnEnded\", true);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.createReactPlayer = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _deepmerge = _interopRequireDefault(require(\"deepmerge\"));\n\nvar _memoizeOne = _interopRequireDefault(require(\"memoize-one\"));\n\nvar _reactFastCompare = _interopRequireDefault(require(\"react-fast-compare\"));\n\nvar _props = require(\"./props\");\n\nvar _utils = require(\"./utils\");\n\nvar _Player3 = _interopRequireDefault(require(\"./Player\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nvar Preview = /*#__PURE__*/(0, _react.lazy)(function () {\n return Promise.resolve().then(function () {\n return _interopRequireWildcard(require('./Preview'));\n });\n});\nvar IS_BROWSER = typeof window !== 'undefined' && window.document;\nvar IS_GLOBAL = typeof global !== 'undefined' && global.window && global.window.document;\nvar SUPPORTED_PROPS = Object.keys(_props.propTypes); // Return null when rendering on the server\n// as Suspense is not supported yet\n\nvar UniversalSuspense = IS_BROWSER || IS_GLOBAL ? _react.Suspense : function () {\n return null;\n};\nvar customPlayers = [];\n\nvar createReactPlayer = function createReactPlayer(players, fallback) {\n var _class, _temp;\n\n return _temp = _class = /*#__PURE__*/function (_Component) {\n _inherits(ReactPlayer, _Component);\n\n var _super = _createSuper(ReactPlayer);\n\n function ReactPlayer() {\n var _this;\n\n _classCallCheck(this, ReactPlayer);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n showPreview: !!_this.props.light\n });\n\n _defineProperty(_assertThisInitialized(_this), \"references\", {\n wrapper: function wrapper(_wrapper) {\n _this.wrapper = _wrapper;\n },\n player: function player(_player) {\n _this.player = _player;\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClickPreview\", function (e) {\n _this.setState({\n showPreview: false\n });\n\n _this.props.onClickPreview(e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"showPreview\", function () {\n _this.setState({\n showPreview: true\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getDuration\", function () {\n if (!_this.player) return null;\n return _this.player.getDuration();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getCurrentTime\", function () {\n if (!_this.player) return null;\n return _this.player.getCurrentTime();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getSecondsLoaded\", function () {\n if (!_this.player) return null;\n return _this.player.getSecondsLoaded();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getInternalPlayer\", function () {\n var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'player';\n if (!_this.player) return null;\n return _this.player.getInternalPlayer(key);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"seekTo\", function (fraction, type) {\n if (!_this.player) return null;\n\n _this.player.seekTo(fraction, type);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleReady\", function () {\n _this.props.onReady(_assertThisInitialized(_this));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getActivePlayer\", (0, _memoizeOne[\"default\"])(function (url) {\n for (var _i = 0, _arr = [].concat(customPlayers, _toConsumableArray(players)); _i < _arr.length; _i++) {\n var player = _arr[_i];\n\n if (player.canPlay(url)) {\n return player;\n }\n }\n\n if (fallback) {\n return fallback;\n }\n\n return null;\n }));\n\n _defineProperty(_assertThisInitialized(_this), \"getConfig\", (0, _memoizeOne[\"default\"])(function (url, key) {\n var config = _this.props.config;\n return _deepmerge[\"default\"].all([_props.defaultProps.config, _props.defaultProps.config[key] || {}, config, config[key] || {}]);\n }));\n\n _defineProperty(_assertThisInitialized(_this), \"getAttributes\", (0, _memoizeOne[\"default\"])(function (url) {\n return (0, _utils.omit)(_this.props, SUPPORTED_PROPS);\n }));\n\n _defineProperty(_assertThisInitialized(_this), \"renderActivePlayer\", function (url) {\n if (!url) return null;\n\n var player = _this.getActivePlayer(url);\n\n if (!player) return null;\n\n var config = _this.getConfig(url, player.key);\n\n return /*#__PURE__*/_react[\"default\"].createElement(_Player3[\"default\"], _extends({}, _this.props, {\n key: player.key,\n ref: _this.references.player,\n config: config,\n activePlayer: player.lazyPlayer || player,\n onReady: _this.handleReady\n }));\n });\n\n return _this;\n }\n\n _createClass(ReactPlayer, [{\n key: \"shouldComponentUpdate\",\n value: function shouldComponentUpdate(nextProps, nextState) {\n return !(0, _reactFastCompare[\"default\"])(this.props, nextProps) || !(0, _reactFastCompare[\"default\"])(this.state, nextState);\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n var light = this.props.light;\n\n if (!prevProps.light && light) {\n this.setState({\n showPreview: true\n });\n }\n\n if (prevProps.light && !light) {\n this.setState({\n showPreview: false\n });\n }\n }\n }, {\n key: \"renderPreview\",\n value: function renderPreview(url) {\n if (!url) return null;\n var _this$props = this.props,\n light = _this$props.light,\n playIcon = _this$props.playIcon,\n previewTabIndex = _this$props.previewTabIndex;\n return /*#__PURE__*/_react[\"default\"].createElement(Preview, {\n url: url,\n light: light,\n playIcon: playIcon,\n previewTabIndex: previewTabIndex,\n onClick: this.handleClickPreview\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n url = _this$props2.url,\n style = _this$props2.style,\n width = _this$props2.width,\n height = _this$props2.height,\n fallback = _this$props2.fallback,\n Wrapper = _this$props2.wrapper;\n var showPreview = this.state.showPreview;\n var attributes = this.getAttributes(url);\n return /*#__PURE__*/_react[\"default\"].createElement(Wrapper, _extends({\n ref: this.references.wrapper,\n style: _objectSpread(_objectSpread({}, style), {}, {\n width: width,\n height: height\n })\n }, attributes), /*#__PURE__*/_react[\"default\"].createElement(UniversalSuspense, {\n fallback: fallback\n }, showPreview ? this.renderPreview(url) : this.renderActivePlayer(url)));\n }\n }]);\n\n return ReactPlayer;\n }(_react.Component), _defineProperty(_class, \"displayName\", 'ReactPlayer'), _defineProperty(_class, \"propTypes\", _props.propTypes), _defineProperty(_class, \"defaultProps\", _props.defaultProps), _defineProperty(_class, \"addCustomPlayer\", function (player) {\n customPlayers.push(player);\n }), _defineProperty(_class, \"removeCustomPlayers\", function () {\n customPlayers.length = 0;\n }), _defineProperty(_class, \"canPlay\", function (url) {\n for (var _i2 = 0, _arr2 = [].concat(customPlayers, _toConsumableArray(players)); _i2 < _arr2.length; _i2++) {\n var _Player = _arr2[_i2];\n\n if (_Player.canPlay(url)) {\n return true;\n }\n }\n\n return false;\n }), _defineProperty(_class, \"canEnablePIP\", function (url) {\n for (var _i3 = 0, _arr3 = [].concat(customPlayers, _toConsumableArray(players)); _i3 < _arr3.length; _i3++) {\n var _Player2 = _arr3[_i3];\n\n if (_Player2.canEnablePIP && _Player2.canEnablePIP(url)) {\n return true;\n }\n }\n\n return false;\n }), _temp;\n};\n\nexports.createReactPlayer = createReactPlayer;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _players = _interopRequireDefault(require(\"./players\"));\n\nvar _ReactPlayer = require(\"./ReactPlayer\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n} // Fall back to FilePlayer if nothing else can play the URL\n\n\nvar fallback = _players[\"default\"][_players[\"default\"].length - 1];\n\nvar _default = (0, _ReactPlayer.createReactPlayer)(_players[\"default\"], fallback);\n\nexports[\"default\"] = _default;","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://cdn.embed.ly/player-0.1.0.min.js';\nvar SDK_GLOBAL = 'playerjs';\n\nvar Kaltura = /*#__PURE__*/function (_Component) {\n _inherits(Kaltura, _Component);\n\n var _super = _createSuper(Kaltura);\n\n function Kaltura() {\n var _this;\n\n _classCallCheck(this, Kaltura);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"duration\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"currentTime\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"secondsLoaded\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.callPlayer('mute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('unmute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (iframe) {\n _this.iframe = iframe;\n });\n\n return _this;\n }\n\n _createClass(Kaltura, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (playerjs) {\n if (!_this2.iframe) return;\n _this2.player = new playerjs.Player(_this2.iframe);\n\n _this2.player.on('ready', function () {\n _this2.player.isReady = true;\n\n _this2.player.on('play', _this2.props.onPlay);\n\n _this2.player.on('pause', _this2.props.onPause);\n\n _this2.player.on('seeked', _this2.props.onSeek);\n\n _this2.player.on('ended', _this2.props.onEnded);\n\n _this2.player.on('error', _this2.props.onError);\n\n _this2.player.on('timeupdate', function (_ref) {\n var duration = _ref.duration,\n seconds = _ref.seconds;\n _this2.duration = duration;\n _this2.currentTime = seconds;\n });\n\n _this2.player.on('buffered', function (_ref2) {\n var percent = _ref2.percent;\n\n if (_this2.duration) {\n _this2.secondsLoaded = _this2.duration * percent;\n }\n });\n\n _this2.player.setLoop(_this2.props.loop);\n\n if (_this2.props.muted) {\n _this2.player.mute();\n }\n\n setTimeout(function () {\n _this2.props.onReady();\n });\n });\n }, this.props.onError);\n }\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('play');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {// Nothing to do\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('setCurrentTime', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction);\n }\n }, {\n key: \"setLoop\",\n value: function setLoop(loop) {\n this.callPlayer('setLoop', loop);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.duration;\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.currentTime;\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return this.secondsLoaded;\n }\n }, {\n key: \"render\",\n value: function render() {\n var style = {\n width: '100%',\n height: '100%'\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"iframe\", {\n ref: this.ref,\n src: this.props.url,\n frameBorder: \"0\",\n scrolling: \"no\",\n style: style,\n allowFullScreen: true,\n allow: \"encrypted-media\",\n referrerPolicy: \"no-referrer-when-downgrade\"\n });\n }\n }]);\n\n return Kaltura;\n}(_react.Component);\n\nexports[\"default\"] = Kaltura;\n\n_defineProperty(Kaltura, \"displayName\", 'Kaltura');\n\n_defineProperty(Kaltura, \"canPlay\", _patterns.canPlay.kaltura);","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://cdn.embed.ly/player-0.1.0.min.js';\nvar SDK_GLOBAL = 'playerjs';\n\nvar Streamable = /*#__PURE__*/function (_Component) {\n _inherits(Streamable, _Component);\n\n var _super = _createSuper(Streamable);\n\n function Streamable() {\n var _this;\n\n _classCallCheck(this, Streamable);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"duration\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"currentTime\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"secondsLoaded\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.callPlayer('mute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('unmute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (iframe) {\n _this.iframe = iframe;\n });\n\n return _this;\n }\n\n _createClass(Streamable, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (playerjs) {\n if (!_this2.iframe) return;\n _this2.player = new playerjs.Player(_this2.iframe);\n\n _this2.player.setLoop(_this2.props.loop);\n\n _this2.player.on('ready', _this2.props.onReady);\n\n _this2.player.on('play', _this2.props.onPlay);\n\n _this2.player.on('pause', _this2.props.onPause);\n\n _this2.player.on('seeked', _this2.props.onSeek);\n\n _this2.player.on('ended', _this2.props.onEnded);\n\n _this2.player.on('error', _this2.props.onError);\n\n _this2.player.on('timeupdate', function (_ref) {\n var duration = _ref.duration,\n seconds = _ref.seconds;\n _this2.duration = duration;\n _this2.currentTime = seconds;\n });\n\n _this2.player.on('buffered', function (_ref2) {\n var percent = _ref2.percent;\n\n if (_this2.duration) {\n _this2.secondsLoaded = _this2.duration * percent;\n }\n });\n\n if (_this2.props.muted) {\n _this2.player.mute();\n }\n }, this.props.onError);\n }\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('play');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {// Nothing to do\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('setCurrentTime', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction * 100);\n }\n }, {\n key: \"setLoop\",\n value: function setLoop(loop) {\n this.callPlayer('setLoop', loop);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.duration;\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.currentTime;\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return this.secondsLoaded;\n }\n }, {\n key: \"render\",\n value: function render() {\n var id = this.props.url.match(_patterns.MATCH_URL_STREAMABLE)[1];\n var style = {\n width: '100%',\n height: '100%'\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"iframe\", {\n ref: this.ref,\n src: \"https://streamable.com/o/\".concat(id),\n frameBorder: \"0\",\n scrolling: \"no\",\n style: style,\n allowFullScreen: true\n });\n }\n }]);\n\n return Streamable;\n}(_react.Component);\n\nexports[\"default\"] = Streamable;\n\n_defineProperty(Streamable, \"displayName\", 'Streamable');\n\n_defineProperty(Streamable, \"canPlay\", _patterns.canPlay.streamable);","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://player.vimeo.com/api/player.js';\nvar SDK_GLOBAL = 'Vimeo';\n\nvar Vimeo = /*#__PURE__*/function (_Component) {\n _inherits(Vimeo, _Component);\n\n var _super = _createSuper(Vimeo);\n\n function Vimeo() {\n var _this;\n\n _classCallCheck(this, Vimeo);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"duration\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"currentTime\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"secondsLoaded\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.setVolume(0);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n if (_this.props.volume !== null) {\n _this.setVolume(_this.props.volume);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (container) {\n _this.container = container;\n });\n\n return _this;\n }\n\n _createClass(Vimeo, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n this.duration = null;\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (Vimeo) {\n if (!_this2.container) return;\n _this2.player = new Vimeo.Player(_this2.container, _objectSpread({\n url: url,\n autoplay: _this2.props.playing,\n muted: _this2.props.muted,\n loop: _this2.props.loop,\n playsinline: _this2.props.playsinline,\n controls: _this2.props.controls\n }, _this2.props.config.playerOptions));\n\n _this2.player.ready().then(function () {\n var iframe = _this2.container.querySelector('iframe');\n\n iframe.style.width = '100%';\n iframe.style.height = '100%';\n })[\"catch\"](_this2.props.onError);\n\n _this2.player.on('loaded', function () {\n _this2.props.onReady();\n\n _this2.refreshDuration();\n });\n\n _this2.player.on('play', function () {\n _this2.props.onPlay();\n\n _this2.refreshDuration();\n });\n\n _this2.player.on('pause', _this2.props.onPause);\n\n _this2.player.on('seeked', function (e) {\n return _this2.props.onSeek(e.seconds);\n });\n\n _this2.player.on('ended', _this2.props.onEnded);\n\n _this2.player.on('error', _this2.props.onError);\n\n _this2.player.on('timeupdate', function (_ref) {\n var seconds = _ref.seconds;\n _this2.currentTime = seconds;\n });\n\n _this2.player.on('progress', function (_ref2) {\n var seconds = _ref2.seconds;\n _this2.secondsLoaded = seconds;\n });\n\n _this2.player.on('bufferstart', _this2.props.onBuffer);\n\n _this2.player.on('bufferend', _this2.props.onBufferEnd);\n }, this.props.onError);\n }\n }, {\n key: \"refreshDuration\",\n value: function refreshDuration() {\n var _this3 = this;\n\n this.player.getDuration().then(function (duration) {\n _this3.duration = duration;\n });\n }\n }, {\n key: \"play\",\n value: function play() {\n var promise = this.callPlayer('play');\n\n if (promise) {\n promise[\"catch\"](this.props.onError);\n }\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {\n this.callPlayer('unload');\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('setCurrentTime', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction);\n }\n }, {\n key: \"setLoop\",\n value: function setLoop(loop) {\n this.callPlayer('setLoop', loop);\n }\n }, {\n key: \"setPlaybackRate\",\n value: function setPlaybackRate(rate) {\n this.callPlayer('setPlaybackRate', rate);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.duration;\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.currentTime;\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return this.secondsLoaded;\n }\n }, {\n key: \"render\",\n value: function render() {\n var display = this.props.display;\n var style = {\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n display: display\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: this.props.url,\n ref: this.ref,\n style: style\n });\n }\n }]);\n\n return Vimeo;\n}(_react.Component);\n\nexports[\"default\"] = Vimeo;\n\n_defineProperty(Vimeo, \"displayName\", 'Vimeo');\n\n_defineProperty(Vimeo, \"canPlay\", _patterns.canPlay.vimeo);\n\n_defineProperty(Vimeo, \"forceLoad\", true);","module.exports = function load(src, opts, cb) {\n var head = document.head || document.getElementsByTagName('head')[0];\n var script = document.createElement('script');\n\n if (typeof opts === 'function') {\n cb = opts;\n opts = {};\n }\n\n opts = opts || {};\n\n cb = cb || function () {};\n\n script.type = opts.type || 'text/javascript';\n script.charset = opts.charset || 'utf8';\n script.async = 'async' in opts ? !!opts.async : true;\n script.src = src;\n\n if (opts.attrs) {\n setAttributes(script, opts.attrs);\n }\n\n if (opts.text) {\n script.text = '' + opts.text;\n }\n\n var onend = 'onload' in script ? stdOnEnd : ieOnEnd;\n onend(script, cb); // some good legacy browsers (firefox) fail the 'in' detection above\n // so as a fallback we always set onload\n // old IE will ignore this and new IE will set onload\n\n if (!script.onload) {\n stdOnEnd(script, cb);\n }\n\n head.appendChild(script);\n};\n\nfunction setAttributes(script, attrs) {\n for (var attr in attrs) {\n script.setAttribute(attr, attrs[attr]);\n }\n}\n\nfunction stdOnEnd(script, cb) {\n script.onload = function () {\n this.onerror = this.onload = null;\n cb(null, script);\n };\n\n script.onerror = function () {\n // this.onload = null here is necessary\n // because even IE9 works not like others\n this.onerror = this.onload = null;\n cb(new Error('Failed to load ' + this.src), script);\n };\n}\n\nfunction ieOnEnd(script, cb) {\n script.onreadystatechange = function () {\n if (this.readyState != 'complete' && this.readyState != 'loaded') return;\n this.onreadystatechange = null;\n cb(null, script); // there is no way to catch loading errors in IE8\n };\n}","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n return isNonNullObject(value) && !isSpecial(value);\n};\n\nfunction isNonNullObject(value) {\n return !!value && typeof value === 'object';\n}\n\nfunction isSpecial(value) {\n var stringValue = Object.prototype.toString.call(value);\n return stringValue === '[object RegExp]' || stringValue === '[object Date]' || isReactElement(value);\n} // see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\n\n\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n return value.$$typeof === REACT_ELEMENT_TYPE;\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {};\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n return options.clone !== false && options.isMergeableObject(value) ? deepmerge(emptyTarget(value), value, options) : value;\n}\n\nfunction defaultArrayMerge(target, source, options) {\n return target.concat(source).map(function (element) {\n return cloneUnlessOtherwiseSpecified(element, options);\n });\n}\n\nfunction getMergeFunction(key, options) {\n if (!options.customMerge) {\n return deepmerge;\n }\n\n var customMerge = options.customMerge(key);\n return typeof customMerge === 'function' ? customMerge : deepmerge;\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(target).filter(function (symbol) {\n return target.propertyIsEnumerable(symbol);\n }) : [];\n}\n\nfunction getKeys(target) {\n return Object.keys(target).concat(getEnumerableOwnPropertySymbols(target));\n}\n\nfunction propertyIsOnObject(object, property) {\n try {\n return property in object;\n } catch (_) {\n return false;\n }\n} // Protects from prototype poisoning and unexpected merging up the prototype chain.\n\n\nfunction propertyIsUnsafe(target, key) {\n return propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n && !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n && Object.propertyIsEnumerable.call(target, key)); // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n var destination = {};\n\n if (options.isMergeableObject(target)) {\n getKeys(target).forEach(function (key) {\n destination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n });\n }\n\n getKeys(source).forEach(function (key) {\n if (propertyIsUnsafe(target, key)) {\n return;\n }\n\n if (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n destination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n } else {\n destination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n }\n });\n return destination;\n}\n\nfunction deepmerge(target, source, options) {\n options = options || {};\n options.arrayMerge = options.arrayMerge || defaultArrayMerge;\n options.isMergeableObject = options.isMergeableObject || isMergeableObject; // cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n // implementations can use it. The caller may not replace it.\n\n options.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n var sourceIsArray = Array.isArray(source);\n var targetIsArray = Array.isArray(target);\n var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n if (!sourceAndTargetTypesMatch) {\n return cloneUnlessOtherwiseSpecified(source, options);\n } else if (sourceIsArray) {\n return options.arrayMerge(target, source, options);\n } else {\n return mergeObject(target, source, options);\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n if (!Array.isArray(array)) {\n throw new Error('first argument should be an array');\n }\n\n return array.reduce(function (prev, next) {\n return deepmerge(prev, next, options);\n }, {});\n};\n\nvar deepmerge_1 = deepmerge;\nmodule.exports = deepmerge_1;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.defaultProps = exports.propTypes = void 0;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nvar string = _propTypes[\"default\"].string,\n bool = _propTypes[\"default\"].bool,\n number = _propTypes[\"default\"].number,\n array = _propTypes[\"default\"].array,\n oneOfType = _propTypes[\"default\"].oneOfType,\n shape = _propTypes[\"default\"].shape,\n object = _propTypes[\"default\"].object,\n func = _propTypes[\"default\"].func,\n node = _propTypes[\"default\"].node;\nvar propTypes = {\n url: oneOfType([string, array, object]),\n playing: bool,\n loop: bool,\n controls: bool,\n volume: number,\n muted: bool,\n playbackRate: number,\n width: oneOfType([string, number]),\n height: oneOfType([string, number]),\n style: object,\n progressInterval: number,\n playsinline: bool,\n pip: bool,\n stopOnUnmount: bool,\n light: oneOfType([bool, string]),\n playIcon: node,\n previewTabIndex: number,\n fallback: node,\n wrapper: oneOfType([string, func, shape({\n render: func.isRequired\n })]),\n config: shape({\n soundcloud: shape({\n options: object\n }),\n youtube: shape({\n playerVars: object,\n embedOptions: object,\n onUnstarted: func\n }),\n facebook: shape({\n appId: string,\n version: string,\n playerId: string,\n attributes: object\n }),\n dailymotion: shape({\n params: object\n }),\n vimeo: shape({\n playerOptions: object\n }),\n file: shape({\n attributes: object,\n tracks: array,\n forceVideo: bool,\n forceAudio: bool,\n forceHLS: bool,\n forceDASH: bool,\n forceFLV: bool,\n hlsOptions: object,\n hlsVersion: string,\n dashVersion: string,\n flvVersion: string\n }),\n wistia: shape({\n options: object,\n playerId: string,\n customControls: array\n }),\n mixcloud: shape({\n options: object\n }),\n twitch: shape({\n options: object,\n playerId: string\n }),\n vidyard: shape({\n options: object\n })\n }),\n onReady: func,\n onStart: func,\n onPlay: func,\n onPause: func,\n onBuffer: func,\n onBufferEnd: func,\n onEnded: func,\n onError: func,\n onDuration: func,\n onSeek: func,\n onProgress: func,\n onClickPreview: func,\n onEnablePIP: func,\n onDisablePIP: func\n};\nexports.propTypes = propTypes;\n\nvar noop = function noop() {};\n\nvar defaultProps = {\n playing: false,\n loop: false,\n controls: false,\n volume: null,\n muted: false,\n playbackRate: 1,\n width: '640px',\n height: '360px',\n style: {},\n progressInterval: 1000,\n playsinline: false,\n pip: false,\n stopOnUnmount: true,\n light: false,\n fallback: null,\n wrapper: 'div',\n previewTabIndex: 0,\n config: {\n soundcloud: {\n options: {\n visual: true,\n // Undocumented, but makes player fill container and look better\n buying: false,\n liking: false,\n download: false,\n sharing: false,\n show_comments: false,\n show_playcount: false\n }\n },\n youtube: {\n playerVars: {\n playsinline: 1,\n showinfo: 0,\n rel: 0,\n iv_load_policy: 3,\n modestbranding: 1\n },\n embedOptions: {},\n onUnstarted: noop\n },\n facebook: {\n appId: '1309697205772819',\n version: 'v3.3',\n playerId: null,\n attributes: {}\n },\n dailymotion: {\n params: {\n api: 1,\n 'endscreen-enable': false\n }\n },\n vimeo: {\n playerOptions: {\n autopause: false,\n byline: false,\n portrait: false,\n title: false\n }\n },\n file: {\n attributes: {},\n tracks: [],\n forceVideo: false,\n forceAudio: false,\n forceHLS: false,\n forceDASH: false,\n forceFLV: false,\n hlsOptions: {},\n hlsVersion: '0.14.16',\n dashVersion: '3.1.3',\n flvVersion: '1.5.0'\n },\n wistia: {\n options: {},\n playerId: null,\n customControls: null\n },\n mixcloud: {\n options: {\n hide_cover: 1\n }\n },\n twitch: {\n options: {},\n playerId: null\n },\n vidyard: {\n options: {}\n }\n },\n onReady: noop,\n onStart: noop,\n onPlay: noop,\n onPause: noop,\n onBuffer: noop,\n onBufferEnd: noop,\n onEnded: noop,\n onError: noop,\n onDuration: noop,\n onSeek: noop,\n onProgress: noop,\n onClickPreview: noop,\n onEnablePIP: noop,\n onDisablePIP: noop\n};\nexports.defaultProps = defaultProps;","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://api.dmcdn.net/all.js';\nvar SDK_GLOBAL = 'DM';\nvar SDK_GLOBAL_READY = 'dmAsyncInit';\n\nvar DailyMotion = /*#__PURE__*/function (_Component) {\n _inherits(DailyMotion, _Component);\n\n var _super = _createSuper(DailyMotion);\n\n function DailyMotion() {\n var _this;\n\n _classCallCheck(this, DailyMotion);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"onDurationChange\", function () {\n var duration = _this.getDuration();\n\n _this.props.onDuration(duration);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.callPlayer('setMuted', true);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('setMuted', false);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (container) {\n _this.container = container;\n });\n\n return _this;\n }\n\n _createClass(DailyMotion, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n var _this$props = this.props,\n controls = _this$props.controls,\n config = _this$props.config,\n onError = _this$props.onError,\n playing = _this$props.playing;\n\n var _url$match = url.match(_patterns.MATCH_URL_DAILYMOTION),\n _url$match2 = _slicedToArray(_url$match, 2),\n id = _url$match2[1];\n\n if (this.player) {\n this.player.load(id, {\n start: (0, _utils.parseStartTime)(url),\n autoplay: playing\n });\n return;\n }\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL, SDK_GLOBAL_READY, function (DM) {\n return DM.player;\n }).then(function (DM) {\n if (!_this2.container) return;\n var Player = DM.player;\n _this2.player = new Player(_this2.container, {\n width: '100%',\n height: '100%',\n video: id,\n params: _objectSpread({\n controls: controls,\n autoplay: _this2.props.playing,\n mute: _this2.props.muted,\n start: (0, _utils.parseStartTime)(url),\n origin: window.location.origin\n }, config.params),\n events: {\n apiready: _this2.props.onReady,\n seeked: function seeked() {\n return _this2.props.onSeek(_this2.player.currentTime);\n },\n video_end: _this2.props.onEnded,\n durationchange: _this2.onDurationChange,\n pause: _this2.props.onPause,\n playing: _this2.props.onPlay,\n waiting: _this2.props.onBuffer,\n error: function error(event) {\n return onError(event);\n }\n }\n });\n }, onError);\n }\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('play');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {// Nothing to do\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('seek', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.player.duration || null;\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.player.currentTime;\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return this.player.bufferedTime;\n }\n }, {\n key: \"render\",\n value: function render() {\n var display = this.props.display;\n var style = {\n width: '100%',\n height: '100%',\n display: display\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: style\n }, /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n ref: this.ref\n }));\n }\n }]);\n\n return DailyMotion;\n}(_react.Component);\n\nexports[\"default\"] = DailyMotion;\n\n_defineProperty(DailyMotion, \"displayName\", 'DailyMotion');\n\n_defineProperty(DailyMotion, \"canPlay\", _patterns.canPlay.dailymotion);\n\n_defineProperty(DailyMotion, \"loopOnEnded\", true);","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://fast.wistia.com/assets/external/E-v1.js';\nvar SDK_GLOBAL = 'Wistia';\nvar PLAYER_ID_PREFIX = 'wistia-player-';\n\nvar Wistia = /*#__PURE__*/function (_Component) {\n _inherits(Wistia, _Component);\n\n var _super = _createSuper(Wistia);\n\n function Wistia() {\n var _this;\n\n _classCallCheck(this, Wistia);\n\n for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {\n _args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(_args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"playerID\", _this.props.config.playerId || \"\".concat(PLAYER_ID_PREFIX).concat((0, _utils.randomString)()));\n\n _defineProperty(_assertThisInitialized(_this), \"onPlay\", function () {\n var _this$props;\n\n return (_this$props = _this.props).onPlay.apply(_this$props, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPause\", function () {\n var _this$props2;\n\n return (_this$props2 = _this.props).onPause.apply(_this$props2, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSeek\", function () {\n var _this$props3;\n\n return (_this$props3 = _this.props).onSeek.apply(_this$props3, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onEnded\", function () {\n var _this$props4;\n\n return (_this$props4 = _this.props).onEnded.apply(_this$props4, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.callPlayer('mute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('unmute');\n });\n\n return _this;\n }\n\n _createClass(Wistia, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n var _this$props5 = this.props,\n playing = _this$props5.playing,\n muted = _this$props5.muted,\n controls = _this$props5.controls,\n _onReady = _this$props5.onReady,\n config = _this$props5.config,\n onError = _this$props5.onError;\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (Wistia) {\n if (config.customControls) {\n config.customControls.forEach(function (control) {\n return Wistia.defineControl(control);\n });\n }\n\n window._wq = window._wq || [];\n\n window._wq.push({\n id: _this2.playerID,\n options: _objectSpread({\n autoPlay: playing,\n silentAutoPlay: 'allow',\n muted: muted,\n controlsVisibleOnLoad: controls,\n fullscreenButton: controls,\n playbar: controls,\n playbackRateControl: controls,\n qualityControl: controls,\n volumeControl: controls,\n settingsControl: controls,\n smallPlayButton: controls\n }, config.options),\n onReady: function onReady(player) {\n _this2.player = player;\n\n _this2.unbind();\n\n _this2.player.bind('play', _this2.onPlay);\n\n _this2.player.bind('pause', _this2.onPause);\n\n _this2.player.bind('seek', _this2.onSeek);\n\n _this2.player.bind('end', _this2.onEnded);\n\n _onReady();\n }\n });\n }, onError);\n }\n }, {\n key: \"unbind\",\n value: function unbind() {\n this.player.unbind('play', this.onPlay);\n this.player.unbind('pause', this.onPause);\n this.player.unbind('seek', this.onSeek);\n this.player.unbind('end', this.onEnded);\n } // Proxy methods to prevent listener leaks\n\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('play');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {\n this.unbind();\n this.callPlayer('remove');\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('time', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('volume', fraction);\n }\n }, {\n key: \"setPlaybackRate\",\n value: function setPlaybackRate(rate) {\n this.callPlayer('playbackRate', rate);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.callPlayer('duration');\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.callPlayer('time');\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return null;\n }\n }, {\n key: \"render\",\n value: function render() {\n var url = this.props.url;\n var videoID = url && url.match(_patterns.MATCH_URL_WISTIA)[1];\n var className = \"wistia_embed wistia_async_\".concat(videoID);\n var style = {\n width: '100%',\n height: '100%'\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n id: this.playerID,\n key: videoID,\n className: className,\n style: style\n });\n }\n }]);\n\n return Wistia;\n}(_react.Component);\n\nexports[\"default\"] = Wistia;\n\n_defineProperty(Wistia, \"displayName\", 'Wistia');\n\n_defineProperty(Wistia, \"canPlay\", _patterns.canPlay.wistia);\n\n_defineProperty(Wistia, \"loopOnEnded\", true);","var safeIsNaN = Number.isNaN || function ponyfill(value) {\n return typeof value === 'number' && value !== value;\n};\n\nfunction isEqual(first, second) {\n if (first === second) {\n return true;\n }\n\n if (safeIsNaN(first) && safeIsNaN(second)) {\n return true;\n }\n\n return false;\n}\n\nfunction areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n\n for (var i = 0; i < newInputs.length; i++) {\n if (!isEqual(newInputs[i], lastInputs[i])) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) {\n isEqual = areInputsEqual;\n }\n\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n\n function memoized() {\n var newArgs = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n }\n\n return memoized;\n}\n\nexport default memoizeOne;","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar SDK_URL = 'https://player.twitch.tv/js/embed/v1.js';\nvar SDK_GLOBAL = 'Twitch';\nvar PLAYER_ID_PREFIX = 'twitch-player-';\n\nvar Twitch = /*#__PURE__*/function (_Component) {\n _inherits(Twitch, _Component);\n\n var _super = _createSuper(Twitch);\n\n function Twitch() {\n var _this;\n\n _classCallCheck(this, Twitch);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"callPlayer\", _utils.callPlayer);\n\n _defineProperty(_assertThisInitialized(_this), \"playerID\", _this.props.config.playerId || \"\".concat(PLAYER_ID_PREFIX).concat((0, _utils.randomString)()));\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.callPlayer('setMuted', true);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('setMuted', false);\n });\n\n return _this;\n }\n\n _createClass(Twitch, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n }\n }, {\n key: \"load\",\n value: function load(url, isReady) {\n var _this2 = this;\n\n var _this$props = this.props,\n playsinline = _this$props.playsinline,\n onError = _this$props.onError,\n config = _this$props.config,\n controls = _this$props.controls;\n\n var isChannel = _patterns.MATCH_URL_TWITCH_CHANNEL.test(url);\n\n var id = isChannel ? url.match(_patterns.MATCH_URL_TWITCH_CHANNEL)[1] : url.match(_patterns.MATCH_URL_TWITCH_VIDEO)[1];\n\n if (isReady) {\n if (isChannel) {\n this.player.setChannel(id);\n } else {\n this.player.setVideo('v' + id);\n }\n\n return;\n }\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (Twitch) {\n _this2.player = new Twitch.Player(_this2.playerID, _objectSpread({\n video: isChannel ? '' : id,\n channel: isChannel ? id : '',\n height: '100%',\n width: '100%',\n playsinline: playsinline,\n autoplay: _this2.props.playing,\n muted: _this2.props.muted,\n // https://github.com/CookPete/react-player/issues/733#issuecomment-549085859\n controls: isChannel ? true : controls,\n time: (0, _utils.parseStartTime)(url)\n }, config.options));\n var _Twitch$Player = Twitch.Player,\n READY = _Twitch$Player.READY,\n PLAYING = _Twitch$Player.PLAYING,\n PAUSE = _Twitch$Player.PAUSE,\n ENDED = _Twitch$Player.ENDED,\n ONLINE = _Twitch$Player.ONLINE,\n OFFLINE = _Twitch$Player.OFFLINE;\n\n _this2.player.addEventListener(READY, _this2.props.onReady);\n\n _this2.player.addEventListener(PLAYING, _this2.props.onPlay);\n\n _this2.player.addEventListener(PAUSE, _this2.props.onPause);\n\n _this2.player.addEventListener(ENDED, _this2.props.onEnded); // Prevent weird isLoading behaviour when streams are offline\n\n\n _this2.player.addEventListener(ONLINE, _this2.props.onLoaded);\n\n _this2.player.addEventListener(OFFLINE, _this2.props.onLoaded);\n }, onError);\n }\n }, {\n key: \"play\",\n value: function play() {\n this.callPlayer('play');\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.callPlayer('pause');\n }\n }, {\n key: \"stop\",\n value: function stop() {\n this.callPlayer('pause');\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.callPlayer('seek', seconds);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction);\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n return this.callPlayer('getDuration');\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.callPlayer('getCurrentTime');\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return null;\n }\n }, {\n key: \"render\",\n value: function render() {\n var style = {\n width: '100%',\n height: '100%'\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: style,\n id: this.playerID\n });\n }\n }]);\n\n return Twitch;\n}(_react.Component);\n\nexports[\"default\"] = Twitch;\n\n_defineProperty(Twitch, \"displayName\", 'Twitch');\n\n_defineProperty(Twitch, \"canPlay\", _patterns.canPlay.twitch);\n\n_defineProperty(Twitch, \"loopOnEnded\", true);","\"use strict\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _utils = require(\"../utils\");\n\nvar _patterns = require(\"../patterns\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar HAS_NAVIGATOR = typeof navigator !== 'undefined';\nvar IS_IPAD_PRO = HAS_NAVIGATOR && navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1;\nvar IS_IOS = HAS_NAVIGATOR && (/iPad|iPhone|iPod/.test(navigator.userAgent) || IS_IPAD_PRO) && !window.MSStream;\nvar HLS_SDK_URL = 'https://cdn.jsdelivr.net/npm/hls.js@VERSION/dist/hls.min.js';\nvar HLS_GLOBAL = 'Hls';\nvar DASH_SDK_URL = 'https://cdnjs.cloudflare.com/ajax/libs/dashjs/VERSION/dash.all.min.js';\nvar DASH_GLOBAL = 'dashjs';\nvar FLV_SDK_URL = 'https://cdn.jsdelivr.net/npm/flv.js@VERSION/dist/flv.min.js';\nvar FLV_GLOBAL = 'flvjs';\nvar MATCH_DROPBOX_URL = /www\\.dropbox\\.com\\/.+/;\nvar MATCH_CLOUDFLARE_STREAM = /https:\\/\\/watch\\.cloudflarestream\\.com\\/([a-z0-9]+)/;\nvar REPLACE_CLOUDFLARE_STREAM = 'https://videodelivery.net/{id}/manifest/video.m3u8';\n\nvar FilePlayer = /*#__PURE__*/function (_Component) {\n _inherits(FilePlayer, _Component);\n\n var _super = _createSuper(FilePlayer);\n\n function FilePlayer() {\n var _this;\n\n _classCallCheck(this, FilePlayer);\n\n for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {\n _args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(_args));\n\n _defineProperty(_assertThisInitialized(_this), \"onReady\", function () {\n var _this$props;\n\n return (_this$props = _this.props).onReady.apply(_this$props, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPlay\", function () {\n var _this$props2;\n\n return (_this$props2 = _this.props).onPlay.apply(_this$props2, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onBuffer\", function () {\n var _this$props3;\n\n return (_this$props3 = _this.props).onBuffer.apply(_this$props3, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onBufferEnd\", function () {\n var _this$props4;\n\n return (_this$props4 = _this.props).onBufferEnd.apply(_this$props4, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPause\", function () {\n var _this$props5;\n\n return (_this$props5 = _this.props).onPause.apply(_this$props5, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onEnded\", function () {\n var _this$props6;\n\n return (_this$props6 = _this.props).onEnded.apply(_this$props6, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onError\", function () {\n var _this$props7;\n\n return (_this$props7 = _this.props).onError.apply(_this$props7, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onEnablePIP\", function () {\n var _this$props8;\n\n return (_this$props8 = _this.props).onEnablePIP.apply(_this$props8, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDisablePIP\", function (e) {\n var _this$props9 = _this.props,\n onDisablePIP = _this$props9.onDisablePIP,\n playing = _this$props9.playing;\n onDisablePIP(e);\n\n if (playing) {\n _this.play();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPresentationModeChange\", function (e) {\n if (_this.player && (0, _utils.supportsWebKitPresentationMode)(_this.player)) {\n var webkitPresentationMode = _this.player.webkitPresentationMode;\n\n if (webkitPresentationMode === 'picture-in-picture') {\n _this.onEnablePIP(e);\n } else if (webkitPresentationMode === 'inline') {\n _this.onDisablePIP(e);\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSeek\", function (e) {\n _this.props.onSeek(e.target.currentTime);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"mute\", function () {\n _this.player.muted = true;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.player.muted = false;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderSourceElement\", function (source, index) {\n if (typeof source === 'string') {\n return /*#__PURE__*/_react[\"default\"].createElement(\"source\", {\n key: index,\n src: source\n });\n }\n\n return /*#__PURE__*/_react[\"default\"].createElement(\"source\", _extends({\n key: index\n }, source));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderTrack\", function (track, index) {\n return /*#__PURE__*/_react[\"default\"].createElement(\"track\", _extends({\n key: index\n }, track));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"ref\", function (player) {\n if (_this.player) {\n // Store previous player to be used by removeListeners()\n _this.prevPlayer = _this.player;\n }\n\n _this.player = player;\n });\n\n return _this;\n }\n\n _createClass(FilePlayer, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.props.onMount && this.props.onMount(this);\n this.addListeners(this.player);\n\n if (IS_IOS) {\n this.player.load();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (this.shouldUseAudio(this.props) !== this.shouldUseAudio(prevProps)) {\n this.removeListeners(this.prevPlayer, prevProps.url);\n this.addListeners(this.player);\n }\n\n if (this.props.url !== prevProps.url && !(0, _utils.isMediaStream)(this.props.url)) {\n this.player.srcObject = null;\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.removeListeners(this.player);\n\n if (this.hls) {\n this.hls.destroy();\n }\n }\n }, {\n key: \"addListeners\",\n value: function addListeners(player) {\n var _this$props10 = this.props,\n url = _this$props10.url,\n playsinline = _this$props10.playsinline;\n player.addEventListener('play', this.onPlay);\n player.addEventListener('waiting', this.onBuffer);\n player.addEventListener('playing', this.onBufferEnd);\n player.addEventListener('pause', this.onPause);\n player.addEventListener('seeked', this.onSeek);\n player.addEventListener('ended', this.onEnded);\n player.addEventListener('error', this.onError);\n player.addEventListener('enterpictureinpicture', this.onEnablePIP);\n player.addEventListener('leavepictureinpicture', this.onDisablePIP);\n player.addEventListener('webkitpresentationmodechanged', this.onPresentationModeChange);\n\n if (!this.shouldUseHLS(url)) {\n // onReady is handled by hls.js\n player.addEventListener('canplay', this.onReady);\n }\n\n if (playsinline) {\n player.setAttribute('playsinline', '');\n player.setAttribute('webkit-playsinline', '');\n player.setAttribute('x5-playsinline', '');\n }\n }\n }, {\n key: \"removeListeners\",\n value: function removeListeners(player, url) {\n player.removeEventListener('canplay', this.onReady);\n player.removeEventListener('play', this.onPlay);\n player.removeEventListener('waiting', this.onBuffer);\n player.removeEventListener('playing', this.onBufferEnd);\n player.removeEventListener('pause', this.onPause);\n player.removeEventListener('seeked', this.onSeek);\n player.removeEventListener('ended', this.onEnded);\n player.removeEventListener('error', this.onError);\n player.removeEventListener('enterpictureinpicture', this.onEnablePIP);\n player.removeEventListener('leavepictureinpicture', this.onDisablePIP);\n player.removeEventListener('webkitpresentationmodechanged', this.onPresentationModeChange);\n\n if (!this.shouldUseHLS(url)) {\n // onReady is handled by hls.js\n player.removeEventListener('canplay', this.onReady);\n }\n } // Proxy methods to prevent listener leaks\n\n }, {\n key: \"shouldUseAudio\",\n value: function shouldUseAudio(props) {\n if (props.config.forceVideo) {\n return false;\n }\n\n if (props.config.attributes.poster) {\n return false; // Use