{"version":3,"file":"static/js/1580.1168c6a0.chunk.js","mappings":"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","sources":["../node_modules/fast-deep-equal/index.js","../node_modules/load-script/index.js","../node_modules/react-youtube/src/YouTube.tsx","../node_modules/sister/src/sister.js","../node_modules/youtube-player/dist/FunctionStateMap.js","../node_modules/youtube-player/dist/YouTubePlayer.js","../node_modules/youtube-player/dist/constants/PlayerStates.js","../node_modules/youtube-player/dist/eventNames.js","../node_modules/youtube-player/dist/functionNames.js","../node_modules/youtube-player/dist/index.js","../node_modules/youtube-player/dist/loadYouTubeIframeApi.js","../node_modules/youtube-player/node_modules/debug/src/browser.js","../node_modules/youtube-player/node_modules/debug/src/debug.js","../node_modules/youtube-player/node_modules/ms/index.js"],"sourcesContent":["'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n","\nmodule.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 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)\n\n // 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 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 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}\n","/** @jsxRuntime classic */\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport isEqual from 'fast-deep-equal';\nimport youTubePlayer from 'youtube-player';\nimport type { YouTubePlayer, Options } from 'youtube-player/dist/types';\n\n/**\n * Check whether a `props` change should result in the video being updated.\n */\nfunction shouldUpdateVideo(prevProps: YouTubeProps, props: YouTubeProps) {\n // A changing video should always trigger an update\n if (prevProps.videoId !== props.videoId) {\n return true;\n }\n\n // Otherwise, a change in the start/end time playerVars also requires a player\n // update.\n const prevVars = prevProps.opts?.playerVars || {};\n const vars = props.opts?.playerVars || {};\n\n return prevVars.start !== vars.start || prevVars.end !== vars.end;\n}\n\n/**\n * Neutralize API options that only require a video update, leaving only options\n * that require a player reset. The results can then be compared to see if a\n * player reset is necessary.\n */\nfunction filterResetOptions(opts: Options = {}) {\n return {\n ...opts,\n height: 0,\n width: 0,\n playerVars: {\n ...opts.playerVars,\n autoplay: 0,\n start: 0,\n end: 0,\n },\n };\n}\n\n/**\n * Check whether a `props` change should result in the player being reset.\n * The player is reset when the `props.opts` change, except if the only change\n * is in the `start` and `end` playerVars, because a video update can deal with\n * those.\n */\nfunction shouldResetPlayer(prevProps: YouTubeProps, props: YouTubeProps) {\n return (\n prevProps.videoId !== props.videoId || !isEqual(filterResetOptions(prevProps.opts), filterResetOptions(props.opts))\n );\n}\n\n/**\n * Check whether a props change should result in an update of player.\n */\nfunction shouldUpdatePlayer(prevProps: YouTubeProps, props: YouTubeProps) {\n return (\n prevProps.id !== props.id ||\n prevProps.className !== props.className ||\n prevProps.opts?.width !== props.opts?.width ||\n prevProps.opts?.height !== props.opts?.height ||\n prevProps.iframeClassName !== props.iframeClassName ||\n prevProps.title !== props.title\n );\n}\n\ntype YoutubePlayerCueVideoOptions = {\n videoId: string;\n startSeconds?: number;\n endSeconds?: number;\n suggestedQuality?: string;\n};\n\nexport { YouTubePlayer };\n\nexport type YouTubeEvent = {\n data: T;\n target: YouTubePlayer;\n};\n\nexport type YouTubeProps = {\n /**\n * The YouTube video ID.\n *\n * Examples\n * - https://www.youtube.com/watch?v=XxVg_s8xAms (`XxVg_s8xAms` is the ID)\n * - https://www.youtube.com/embed/-DX3vJiqxm4 (`-DX3vJiqxm4` is the ID)\n */\n videoId?: string;\n /**\n * Custom ID for the player element\n */\n id?: string;\n /**\n * Custom class name for the player element\n */\n className?: string;\n /**\n * Custom class name for the iframe element\n */\n iframeClassName?: string;\n /**\n * Custom style for the player container element\n */\n style?: React.CSSProperties;\n /**\n * Title of the video for the iframe's title tag.\n */\n title?: React.IframeHTMLAttributes['title'];\n /**\n * Indicates how the browser should load the iframe\n * {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#attr-loading}\n */\n loading?: React.IframeHTMLAttributes['loading'];\n /**\n * An object that specifies player options\n * {@link https://developers.google.com/youtube/iframe_api_reference#Loading_a_Video_Player}\n */\n opts?: Options;\n /**\n * This event fires whenever a player has finished loading and is ready to begin receiving API calls.\n * {@link https://developers.google.com/youtube/iframe_api_reference#onReady}\n */\n onReady?: (event: YouTubeEvent) => void;\n /**\n * This event fires if an error occurs in the player.\n * {@link https://developers.google.com/youtube/iframe_api_reference#onError}\n */\n onError?: (event: YouTubeEvent) => void;\n /**\n * This event fires when the layer's state changes to PlayerState.PLAYING.\n */\n onPlay?: (event: YouTubeEvent) => void;\n /**\n * This event fires when the layer's state changes to PlayerState.PAUSED.\n */\n onPause?: (event: YouTubeEvent) => void;\n /**\n * This event fires when the layer's state changes to PlayerState.ENDED.\n */\n onEnd?: (event: YouTubeEvent) => void;\n /**\n * This event fires whenever the player's state changes.\n * {@link https://developers.google.com/youtube/iframe_api_reference#onStateChange}\n */\n onStateChange?: (event: YouTubeEvent) => void;\n /**\n * This event fires whenever the video playback quality changes.\n * {@link https://developers.google.com/youtube/iframe_api_reference#onPlaybackRateChange}\n */\n onPlaybackRateChange?: (event: YouTubeEvent) => void;\n /**\n * This event fires whenever the video playback rate changes.\n * {@link https://developers.google.com/youtube/iframe_api_reference#onPlaybackQualityChange}\n */\n onPlaybackQualityChange?: (event: YouTubeEvent) => void;\n};\n\nconst defaultProps: YouTubeProps = {\n videoId: '',\n id: '',\n className: '',\n iframeClassName: '',\n style: {},\n title: '',\n loading: undefined,\n opts: {},\n onReady: () => {},\n onError: () => {},\n onPlay: () => {},\n onPause: () => {},\n onEnd: () => {},\n onStateChange: () => {},\n onPlaybackRateChange: () => {},\n onPlaybackQualityChange: () => {},\n};\n\nconst propTypes = {\n videoId: PropTypes.string,\n id: PropTypes.string,\n className: PropTypes.string,\n iframeClassName: PropTypes.string,\n style: PropTypes.object,\n title: PropTypes.string,\n loading: PropTypes.oneOf(['lazy', 'eager']),\n opts: PropTypes.objectOf(PropTypes.any),\n onReady: PropTypes.func,\n onError: PropTypes.func,\n onPlay: PropTypes.func,\n onPause: PropTypes.func,\n onEnd: PropTypes.func,\n onStateChange: PropTypes.func,\n onPlaybackRateChange: PropTypes.func,\n onPlaybackQualityChange: PropTypes.func,\n};\n\nclass YouTube extends React.Component {\n static propTypes = propTypes;\n static defaultProps = defaultProps;\n\n /**\n * Expose PlayerState constants for convenience. These constants can also be\n * accessed through the global YT object after the YouTube IFrame API is instantiated.\n * https://developers.google.com/youtube/iframe_api_reference#onStateChange\n */\n static PlayerState = {\n UNSTARTED: -1,\n ENDED: 0,\n PLAYING: 1,\n PAUSED: 2,\n BUFFERING: 3,\n CUED: 5,\n };\n\n container: HTMLDivElement | null;\n internalPlayer: YouTubePlayer | null;\n\n constructor(props: any) {\n super(props);\n\n this.container = null;\n this.internalPlayer = null;\n }\n\n /**\n * Note: The `youtube-player` package that is used promisifies all YouTube\n * Player API calls, which introduces a delay of a tick before it actually\n * gets destroyed.\n *\n * The promise to destroy the player is stored here so we can make sure to\n * only re-create the Player after it's been destroyed.\n *\n * See: https://github.com/tjallingt/react-youtube/issues/355\n */\n destroyPlayerPromise: Promise | undefined = undefined;\n\n componentDidMount() {\n this.createPlayer();\n }\n\n async componentDidUpdate(prevProps: YouTubeProps) {\n if (shouldUpdatePlayer(prevProps, this.props)) {\n this.updatePlayer();\n }\n\n if (shouldResetPlayer(prevProps, this.props)) {\n await this.resetPlayer();\n }\n\n if (shouldUpdateVideo(prevProps, this.props)) {\n this.updateVideo();\n }\n }\n\n componentWillUnmount() {\n this.destroyPlayer();\n }\n\n /**\n * This event fires whenever a player has finished loading and is ready to begin receiving API calls.\n * https://developers.google.com/youtube/iframe_api_reference#onReady\n */\n onPlayerReady = (event: YouTubeEvent) => this.props.onReady?.(event);\n\n /**\n * This event fires if an error occurs in the player.\n * https://developers.google.com/youtube/iframe_api_reference#onError\n */\n onPlayerError = (event: YouTubeEvent) => this.props.onError?.(event);\n\n /**\n * This event fires whenever the video playback quality changes.\n * https://developers.google.com/youtube/iframe_api_reference#onStateChange\n */\n onPlayerStateChange = (event: YouTubeEvent) => {\n this.props.onStateChange?.(event);\n // @ts-ignore\n switch (event.data) {\n case YouTube.PlayerState.ENDED:\n this.props.onEnd?.(event);\n break;\n\n case YouTube.PlayerState.PLAYING:\n this.props.onPlay?.(event);\n break;\n\n case YouTube.PlayerState.PAUSED:\n this.props.onPause?.(event);\n break;\n\n default:\n }\n };\n\n /**\n * This event fires whenever the video playback quality changes.\n * https://developers.google.com/youtube/iframe_api_reference#onPlaybackRateChange\n */\n onPlayerPlaybackRateChange = (event: YouTubeEvent) => this.props.onPlaybackRateChange?.(event);\n\n /**\n * This event fires whenever the video playback rate changes.\n * https://developers.google.com/youtube/iframe_api_reference#onPlaybackQualityChange\n */\n onPlayerPlaybackQualityChange = (event: YouTubeEvent) => this.props.onPlaybackQualityChange?.(event);\n\n /**\n * Destroy the YouTube Player using its async API and store the promise so we\n * can await before re-creating it.\n */\n destroyPlayer = () => {\n if (this.internalPlayer) {\n this.destroyPlayerPromise = this.internalPlayer.destroy().then(() => (this.destroyPlayerPromise = undefined));\n return this.destroyPlayerPromise;\n }\n return Promise.resolve();\n };\n\n /**\n * Initialize the YouTube Player API on the container and attach event handlers\n */\n createPlayer = () => {\n // do not attempt to create a player server-side, it won't work\n if (typeof document === 'undefined') return;\n if (this.destroyPlayerPromise) {\n // We need to first await the existing player to be destroyed before\n // we can re-create it.\n this.destroyPlayerPromise.then(this.createPlayer);\n return;\n }\n // create player\n const playerOpts: Options = {\n ...this.props.opts,\n // preload the `videoId` video if one is already given\n videoId: this.props.videoId,\n };\n this.internalPlayer = youTubePlayer(this.container!, playerOpts);\n // attach event handlers\n this.internalPlayer.on('ready', this.onPlayerReady as any);\n this.internalPlayer.on('error', this.onPlayerError as any);\n this.internalPlayer.on('stateChange', this.onPlayerStateChange as any);\n this.internalPlayer.on('playbackRateChange', this.onPlayerPlaybackRateChange as any);\n this.internalPlayer.on('playbackQualityChange', this.onPlayerPlaybackQualityChange as any);\n if (this.props.title || this.props.loading) {\n this.internalPlayer.getIframe().then((iframe) => {\n if (this.props.title) iframe.setAttribute('title', this.props.title);\n if (this.props.loading) iframe.setAttribute('loading', this.props.loading);\n });\n }\n };\n\n /**\n * Shorthand for destroying and then re-creating the YouTube Player\n */\n resetPlayer = () => this.destroyPlayer().then(this.createPlayer);\n\n /**\n * Method to update the id and class of the YouTube Player iframe.\n * React should update this automatically but since the YouTube Player API\n * replaced the DIV that is mounted by React we need to do this manually.\n */\n updatePlayer = () => {\n this.internalPlayer?.getIframe().then((iframe) => {\n if (this.props.id) iframe.setAttribute('id', this.props.id);\n else iframe.removeAttribute('id');\n if (this.props.iframeClassName) iframe.setAttribute('class', this.props.iframeClassName);\n else iframe.removeAttribute('class');\n if (this.props.opts && this.props.opts.width) iframe.setAttribute('width', this.props.opts.width.toString());\n else iframe.removeAttribute('width');\n if (this.props.opts && this.props.opts.height) iframe.setAttribute('height', this.props.opts.height.toString());\n else iframe.removeAttribute('height');\n if (this.props.title) iframe.setAttribute('title', this.props.title);\n else iframe.setAttribute('title', 'YouTube video player');\n if (this.props.loading) iframe.setAttribute('loading', this.props.loading);\n else iframe.removeAttribute('loading');\n });\n };\n\n /**\n * Method to return the internalPlayer object.\n */\n getInternalPlayer = () => {\n return this.internalPlayer;\n };\n\n /**\n * Call YouTube Player API methods to update the currently playing video.\n * Depending on the `opts.playerVars.autoplay` this function uses one of two\n * YouTube Player API methods to update the video.\n */\n updateVideo = () => {\n if (typeof this.props.videoId === 'undefined' || this.props.videoId === null) {\n this.internalPlayer?.stopVideo();\n return;\n }\n\n // set queueing options\n let autoplay = false;\n const opts: YoutubePlayerCueVideoOptions = {\n videoId: this.props.videoId,\n };\n\n if (this.props.opts?.playerVars) {\n autoplay = this.props.opts.playerVars.autoplay === 1;\n if ('start' in this.props.opts.playerVars) {\n opts.startSeconds = this.props.opts.playerVars.start;\n }\n if ('end' in this.props.opts.playerVars) {\n opts.endSeconds = this.props.opts.playerVars.end;\n }\n }\n\n // if autoplay is enabled loadVideoById\n if (autoplay) {\n this.internalPlayer?.loadVideoById(opts);\n return;\n }\n // default behaviour just cues the video\n this.internalPlayer?.cueVideoById(opts);\n };\n\n refContainer = (container: HTMLDivElement) => {\n this.container = container;\n };\n\n render() {\n return (\n
\n
\n
\n );\n }\n}\n\nexport default YouTube;\n","'use strict';\n\nvar Sister;\n\n/**\n* @link https://github.com/gajus/sister for the canonical source repository\n* @license https://github.com/gajus/sister/blob/master/LICENSE BSD 3-Clause\n*/\nSister = function () {\n var sister = {},\n events = {};\n\n /**\n * @name handler\n * @function\n * @param {Object} data Event data.\n */\n\n /**\n * @param {String} name Event name.\n * @param {handler} handler\n * @return {listener}\n */\n sister.on = function (name, handler) {\n var listener = {name: name, handler: handler};\n events[name] = events[name] || [];\n events[name].unshift(listener);\n return listener;\n };\n\n /**\n * @param {listener}\n */\n sister.off = function (listener) {\n var index = events[listener.name].indexOf(listener);\n\n if (index !== -1) {\n events[listener.name].splice(index, 1);\n }\n };\n\n /**\n * @param {String} name Event name.\n * @param {Object} data Event data.\n */\n sister.trigger = function (name, data) {\n var listeners = events[name],\n i;\n\n if (listeners) {\n i = listeners.length;\n while (i--) {\n listeners[i].handler(data);\n }\n }\n };\n\n return sister;\n};\n\nmodule.exports = Sister;\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _PlayerStates = require('./constants/PlayerStates');\n\nvar _PlayerStates2 = _interopRequireDefault(_PlayerStates);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = {\n pauseVideo: {\n acceptableStates: [_PlayerStates2.default.ENDED, _PlayerStates2.default.PAUSED],\n stateChangeRequired: false\n },\n playVideo: {\n acceptableStates: [_PlayerStates2.default.ENDED, _PlayerStates2.default.PLAYING],\n stateChangeRequired: false\n },\n seekTo: {\n acceptableStates: [_PlayerStates2.default.ENDED, _PlayerStates2.default.PLAYING, _PlayerStates2.default.PAUSED],\n stateChangeRequired: true,\n\n // TRICKY: `seekTo` may not cause a state change if no buffering is\n // required.\n timeout: 3000\n }\n};\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _debug = require('debug');\n\nvar _debug2 = _interopRequireDefault(_debug);\n\nvar _functionNames = require('./functionNames');\n\nvar _functionNames2 = _interopRequireDefault(_functionNames);\n\nvar _eventNames = require('./eventNames');\n\nvar _eventNames2 = _interopRequireDefault(_eventNames);\n\nvar _FunctionStateMap = require('./FunctionStateMap');\n\nvar _FunctionStateMap2 = _interopRequireDefault(_FunctionStateMap);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* eslint-disable promise/prefer-await-to-then */\n\nvar debug = (0, _debug2.default)('youtube-player');\n\nvar YouTubePlayer = {};\n\n/**\n * Construct an object that defines an event handler for all of the YouTube\n * player events. Proxy captured events through an event emitter.\n *\n * @todo Capture event parameters.\n * @see https://developers.google.com/youtube/iframe_api_reference#Events\n */\nYouTubePlayer.proxyEvents = function (emitter) {\n var events = {};\n\n var _loop = function _loop(eventName) {\n var onEventName = 'on' + eventName.slice(0, 1).toUpperCase() + eventName.slice(1);\n\n events[onEventName] = function (event) {\n debug('event \"%s\"', onEventName, event);\n\n emitter.trigger(eventName, event);\n };\n };\n\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = _eventNames2.default[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var eventName = _step.value;\n\n _loop(eventName);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return events;\n};\n\n/**\n * Delays player API method execution until player state is ready.\n *\n * @todo Proxy all of the methods using Object.keys.\n * @todo See TRICKY below.\n * @param playerAPIReady Promise that resolves when player is ready.\n * @param strictState A flag designating whether or not to wait for\n * an acceptable state when calling supported functions.\n * @returns {Object}\n */\nYouTubePlayer.promisifyPlayer = function (playerAPIReady) {\n var strictState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var functions = {};\n\n var _loop2 = function _loop2(functionName) {\n if (strictState && _FunctionStateMap2.default[functionName]) {\n functions[functionName] = function () {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return playerAPIReady.then(function (player) {\n var stateInfo = _FunctionStateMap2.default[functionName];\n var playerState = player.getPlayerState();\n\n // eslint-disable-next-line no-warning-comments\n // TODO: Just spread the args into the function once Babel is fixed:\n // https://github.com/babel/babel/issues/4270\n //\n // eslint-disable-next-line prefer-spread\n var value = player[functionName].apply(player, args);\n\n // TRICKY: For functions like `seekTo`, a change in state must be\n // triggered given that the resulting state could match the initial\n // state.\n if (stateInfo.stateChangeRequired ||\n\n // eslint-disable-next-line no-extra-parens\n Array.isArray(stateInfo.acceptableStates) && stateInfo.acceptableStates.indexOf(playerState) === -1) {\n return new Promise(function (resolve) {\n var onPlayerStateChange = function onPlayerStateChange() {\n var playerStateAfterChange = player.getPlayerState();\n\n var timeout = void 0;\n\n if (typeof stateInfo.timeout === 'number') {\n timeout = setTimeout(function () {\n player.removeEventListener('onStateChange', onPlayerStateChange);\n\n resolve();\n }, stateInfo.timeout);\n }\n\n if (Array.isArray(stateInfo.acceptableStates) && stateInfo.acceptableStates.indexOf(playerStateAfterChange) !== -1) {\n player.removeEventListener('onStateChange', onPlayerStateChange);\n\n clearTimeout(timeout);\n\n resolve();\n }\n };\n\n player.addEventListener('onStateChange', onPlayerStateChange);\n }).then(function () {\n return value;\n });\n }\n\n return value;\n });\n };\n } else {\n functions[functionName] = function () {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return playerAPIReady.then(function (player) {\n // eslint-disable-next-line no-warning-comments\n // TODO: Just spread the args into the function once Babel is fixed:\n // https://github.com/babel/babel/issues/4270\n //\n // eslint-disable-next-line prefer-spread\n return player[functionName].apply(player, args);\n });\n };\n }\n };\n\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = _functionNames2.default[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var functionName = _step2.value;\n\n _loop2(functionName);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n return functions;\n};\n\nexports.default = YouTubePlayer;\nmodule.exports = exports['default'];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = {\n BUFFERING: 3,\n ENDED: 0,\n PAUSED: 2,\n PLAYING: 1,\n UNSTARTED: -1,\n VIDEO_CUED: 5\n};\nmodule.exports = exports[\"default\"];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n\n/**\n * @see https://developers.google.com/youtube/iframe_api_reference#Events\n * `volumeChange` is not officially supported but seems to work\n * it emits an object: `{volume: 82.6923076923077, muted: false}`\n */\nexports.default = ['ready', 'stateChange', 'playbackQualityChange', 'playbackRateChange', 'error', 'apiChange', 'volumeChange'];\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n\n/**\n * @see https://developers.google.com/youtube/iframe_api_reference#Functions\n */\nexports.default = ['cueVideoById', 'loadVideoById', 'cueVideoByUrl', 'loadVideoByUrl', 'playVideo', 'pauseVideo', 'stopVideo', 'getVideoLoadedFraction', 'cuePlaylist', 'loadPlaylist', 'nextVideo', 'previousVideo', 'playVideoAt', 'setShuffle', 'setLoop', 'getPlaylist', 'getPlaylistIndex', 'setOption', 'mute', 'unMute', 'isMuted', 'setVolume', 'getVolume', 'seekTo', 'getPlayerState', 'getPlaybackRate', 'setPlaybackRate', 'getAvailablePlaybackRates', 'getPlaybackQuality', 'setPlaybackQuality', 'getAvailableQualityLevels', 'getCurrentTime', 'getDuration', 'removeEventListener', 'getVideoUrl', 'getVideoEmbedCode', 'getOptions', 'getOption', 'addEventListener', 'destroy', 'setSize', 'getIframe'];\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _sister = require('sister');\n\nvar _sister2 = _interopRequireDefault(_sister);\n\nvar _loadYouTubeIframeApi = require('./loadYouTubeIframeApi');\n\nvar _loadYouTubeIframeApi2 = _interopRequireDefault(_loadYouTubeIframeApi);\n\nvar _YouTubePlayer = require('./YouTubePlayer');\n\nvar _YouTubePlayer2 = _interopRequireDefault(_YouTubePlayer);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * @typedef YT.Player\n * @see https://developers.google.com/youtube/iframe_api_reference\n * */\n\n/**\n * @see https://developers.google.com/youtube/iframe_api_reference#Loading_a_Video_Player\n */\nvar youtubeIframeAPI = void 0;\n\n/**\n * A factory function used to produce an instance of YT.Player and queue function calls and proxy events of the resulting object.\n *\n * @param maybeElementId Either An existing YT.Player instance,\n * the DOM element or the id of the HTML element where the API will insert an