{"version":3,"file":"static/js/main-e8ee3528-271584cb32bc24510e66.js","mappings":"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","sources":["webpack://leadsbridge/./node_modules/react-icons/lib/esm/iconBase.js","webpack://leadsbridge/./node_modules/react-icons/lib/esm/iconContext.js","webpack://leadsbridge/./node_modules/react-input-verification-code/src/styles.ts","webpack://leadsbridge/./node_modules/react-input-verification-code/src/index.tsx","webpack://leadsbridge/./node_modules/react-is/cjs/react-is.production.min.js","webpack://leadsbridge/./node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","webpack://leadsbridge/./node_modules/react-modal/lib/components/Modal.js","webpack://leadsbridge/./node_modules/react-modal/lib/components/ModalPortal.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/ariaAppHider.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/bodyTrap.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/classList.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/focusManager.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/portalOpenInstances.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/safeHTMLElement.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/scopeTab.js","webpack://leadsbridge/./node_modules/react-modal/lib/helpers/tabbable.js","webpack://leadsbridge/./node_modules/react-player/lib/Player.js","webpack://leadsbridge/./node_modules/react-player/lib/Preview.js","webpack://leadsbridge/./node_modules/react-player/lib/ReactPlayer.js","webpack://leadsbridge/./node_modules/react-player/lib/patterns.js","webpack://leadsbridge/./node_modules/react-player/lib/players/DailyMotion.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Facebook.js","webpack://leadsbridge/./node_modules/react-player/lib/players/FilePlayer.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Kaltura.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Mixcloud.js","webpack://leadsbridge/./node_modules/react-player/lib/players/SoundCloud.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Streamable.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Twitch.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Vidyard.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Vimeo.js","webpack://leadsbridge/./node_modules/react-player/lib/players/Wistia.js","webpack://leadsbridge/./node_modules/react-player/lib/players/YouTube.js","webpack://leadsbridge/./node_modules/react-player/lib/props.js","webpack://leadsbridge/./node_modules/react-query/es/core/focusManager.js","webpack://leadsbridge/./node_modules/react-query/es/core/logger.js","webpack://leadsbridge/./node_modules/react-query/es/core/mutation.js","webpack://leadsbridge/./node_modules/react-query/es/core/notifyManager.js","webpack://leadsbridge/./node_modules/react-query/es/core/onlineManager.js","webpack://leadsbridge/./node_modules/react-query/es/core/query.js","webpack://leadsbridge/./node_modules/react-query/es/core/queryCache.js","webpack://leadsbridge/./node_modules/react-query/es/core/mutationCache.js","webpack://leadsbridge/./node_modules/react-query/es/core/infiniteQueryBehavior.js","webpack://leadsbridge/./node_modules/react-query/es/core/queryClient.js","webpack://leadsbridge/./node_modules/react-query/es/core/retryer.js","webpack://leadsbridge/./node_modules/react-query/es/core/subscribable.js","webpack://leadsbridge/./node_modules/react-query/es/react/QueryClientProvider.js","webpack://leadsbridge/./node_modules/react-query/es/react/setBatchUpdatesFn.js","webpack://leadsbridge/./node_modules/react-query/es/react/reactBatchedUpdates.js","webpack://leadsbridge/./node_modules/react-query/es/react/logger.js","webpack://leadsbridge/./node_modules/react-query/es/react/setLogger.js","webpack://leadsbridge/./node_modules/react-query/es/core/mutationObserver.js","webpack://leadsbridge/./node_modules/react-query/es/react/useMutation.js","webpack://leadsbridge/./node_modules/react-query/es/core/queryObserver.js","webpack://leadsbridge/./node_modules/react-query/es/react/QueryErrorResetBoundary.js","webpack://leadsbridge/./node_modules/react-query/es/react/useBaseQuery.js","webpack://leadsbridge/./node_modules/react-query/es/react/useQuery.js","webpack://leadsbridge/./node_modules/react-redux/es/components/Context.js","webpack://leadsbridge/./node_modules/react-redux/es/components/Provider.js","webpack://leadsbridge/./node_modules/react-redux/es/hooks/useDispatch.js","webpack://leadsbridge/./node_modules/react-redux/es/hooks/useReduxContext.js","webpack://leadsbridge/./node_modules/react-redux/es/hooks/useSelector.js","webpack://leadsbridge/./node_modules/react-redux/es/hooks/useStore.js","webpack://leadsbridge/./node_modules/react-redux/es/utils/Subscription.js","webpack://leadsbridge/./node_modules/react-redux/es/utils/batch.js","webpack://leadsbridge/./node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","webpack://leadsbridge/./node_modules/react-query/node_modules/@babel/runtime/helpers/esm/extends.js","webpack://leadsbridge/./node_modules/react-query/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://leadsbridge/./node_modules/react-query/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"],"sourcesContent":["var __assign = this && this.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport React from 'react';\nimport { IconContext, DefaultContext } from './iconContext';\n\nfunction Tree2Element(tree) {\n return tree && tree.map(function (node, i) {\n return React.createElement(node.tag, __assign({\n key: i\n }, node.attr), Tree2Element(node.child));\n });\n}\n\nexport function GenIcon(data) {\n return function (props) {\n return React.createElement(IconBase, __assign({\n attr: __assign({}, data.attr)\n }, props), Tree2Element(data.child));\n };\n}\nexport function IconBase(props) {\n var elem = function (conf) {\n var attr = props.attr,\n size = props.size,\n title = props.title,\n svgProps = __rest(props, [\"attr\", \"size\", \"title\"]);\n\n var computedSize = size || conf.size || \"1em\";\n var className;\n if (conf.className) className = conf.className;\n if (props.className) className = (className ? className + ' ' : '') + props.className;\n return React.createElement(\"svg\", __assign({\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\"\n }, conf.attr, attr, svgProps, {\n className: className,\n style: __assign(__assign({\n color: props.color || conf.color\n }, conf.style), props.style),\n height: computedSize,\n width: computedSize,\n xmlns: \"http://www.w3.org/2000/svg\"\n }), title && React.createElement(\"title\", null, title), props.children);\n };\n\n return IconContext !== undefined ? React.createElement(IconContext.Consumer, null, function (conf) {\n return elem(conf);\n }) : elem(DefaultContext);\n}","import React from 'react';\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && React.createContext(DefaultContext);","import styled, { createGlobalStyle } from 'styled-components';\n\nexport const GlobalStyle = createGlobalStyle`\n :root {\n --ReactInputVerificationCode-itemWidth: 4.5rem;\n --ReactInputVerificationCode-itemHeight: 5rem;\n --ReactInputVerificationCode-itemSpacing: 1rem;\n }\n`;\n\ninterface ContainerProps {\n itemsCount: number;\n}\n\nexport const Container = styled.div<ContainerProps>`\n display: flex;\n position: relative;\n justify-content: space-between;\n width: ${({ itemsCount }) =>\n `calc(\n var(--ReactInputVerificationCode-itemWidth) * ${itemsCount}\n + var(--ReactInputVerificationCode-itemSpacing) * (${itemsCount} - 1)\n )`};\n`;\n\ninterface InputProps {\n activeIndex: number;\n}\n\nexport const Input = styled.input<InputProps>`\n position: absolute;\n top: 0;\n left: ${({ activeIndex }) =>\n `calc(\n var(--ReactInputVerificationCode-itemWidth) * ${activeIndex}\n + var(--ReactInputVerificationCode-itemSpacing) * ${activeIndex}\n )`};\n opacity: 0;\n width: var(--ReactInputVerificationCode-itemWidth);\n height: var(--ReactInputVerificationCode-itemHeight);\n`;\n\nexport const Item = styled.div`\n width: var(--ReactInputVerificationCode-itemWidth);\n height: var(--ReactInputVerificationCode-itemHeight);\n padding: 0;\n border-radius: 4px;\n font-size: 1.5rem;\n font-weight: 800;\n line-height: var(--ReactInputVerificationCode-itemHeight);\n text-align: center;\n border: 0;\n box-shadow: inset 0 0 0 1px #ccc;\n transition: box-shadow 0.2s ease-out;\n\n &.is-active {\n box-shadow: inset 0 0 0 2px #888;\n }\n`;\n","import * as React from 'react';\nimport * as S from './styles';\n\nconst KEY_CODE = {\n BACKSPACE: 8,\n ARROW_LEFT: 37,\n ARROW_RIGHT: 39,\n DELETE: 46,\n};\n\nexport interface ReactInputVerificationCodeProps {\n autoFocus?: boolean;\n length?: number;\n onChange?: (data: string) => void;\n onCompleted?: (data: string) => void;\n placeholder?: string;\n value?: string;\n dataCy?: string;\n type?: 'text' | 'password';\n passwordMask?: string;\n}\n\nconst ReactInputVerificationCode = ({\n autoFocus = false,\n length = 4,\n onChange = () => {},\n onCompleted = () => {},\n placeholder = '·',\n value: pValue,\n dataCy = 'verification-code',\n type = 'text',\n passwordMask = '•',\n}: ReactInputVerificationCodeProps) => {\n const emptyValue = new Array(length).fill(placeholder);\n\n const [activeIndex, setActiveIndex] = React.useState<number>(-1);\n const [value, setValue] = React.useState<string[]>(\n pValue ? pValue.split('') : emptyValue\n );\n\n const codeInputRef = React.createRef<HTMLInputElement>();\n const itemsRef = React.useMemo(\n () =>\n new Array(length).fill(null).map(() => React.createRef<HTMLDivElement>()),\n [length]\n );\n\n const isCodeRegex = new RegExp(`^[0-9]{${length}}$`);\n\n const getItem = (index: number) => itemsRef[index]?.current;\n const focusItem = (index: number): void => getItem(index)?.focus();\n const blurItem = (index: number): void => getItem(index)?.blur();\n\n const onItemFocus = (index: number) => () => {\n setActiveIndex(index);\n if (codeInputRef.current) codeInputRef.current.focus();\n };\n\n const onInputKeyUp = ({ key, keyCode }: React.KeyboardEvent) => {\n const newValue = [...value];\n const nextIndex = activeIndex + 1;\n const prevIndex = activeIndex - 1;\n\n const codeInput = codeInputRef.current;\n const currentItem = getItem(activeIndex);\n\n const isLast = nextIndex === length;\n const isDeleting =\n keyCode === KEY_CODE.DELETE || keyCode === KEY_CODE.BACKSPACE;\n\n // keep items focus in sync\n onItemFocus(activeIndex);\n\n // on delete, replace the current value\n // and focus on the previous item\n if (isDeleting) {\n newValue[activeIndex] = placeholder;\n setValue(newValue);\n\n if (activeIndex > 0) {\n setActiveIndex(prevIndex);\n focusItem(prevIndex);\n }\n\n return;\n }\n\n // if the key pressed is not a number\n // don't do anything\n if (Number.isNaN(+key)) return;\n\n // reset the current value\n // and set the new one\n if (codeInput) codeInput.value = '';\n newValue[activeIndex] = key;\n setValue(newValue);\n\n if (!isLast) {\n setActiveIndex(nextIndex);\n focusItem(nextIndex);\n return;\n }\n\n if (codeInput) codeInput.blur();\n if (currentItem) currentItem.blur();\n\n setActiveIndex(-1);\n };\n\n // handle mobile autocompletion\n const onInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const { value: changeValue } = e.target;\n const isCode = isCodeRegex.test(changeValue);\n\n if (!isCode) return;\n\n setValue(changeValue.split(''));\n blurItem(activeIndex);\n };\n\n const onInputBlur = () => {\n // https://github.com/ugogo/react-input-verification-code/issues/1\n if (activeIndex === -1) return;\n\n blurItem(activeIndex);\n setActiveIndex(-1);\n };\n\n // autoFocus\n React.useEffect(() => {\n if (autoFocus && itemsRef[0].current) {\n itemsRef[0].current.focus();\n }\n }, []);\n\n // handle pasting\n React.useEffect(() => {\n const codeInput = codeInputRef.current;\n if (!codeInput) return;\n\n const onPaste = (e: ClipboardEvent) => {\n e.preventDefault();\n\n const pastedString = e.clipboardData?.getData('text');\n if (!pastedString) return;\n\n const isNumber = /^\\d+$/.test(pastedString);\n if (isNumber) setValue(pastedString.split('').slice(0, length));\n };\n\n codeInput.addEventListener('paste', onPaste);\n return () => codeInput.removeEventListener('paste', onPaste);\n }, []);\n\n React.useEffect(() => {\n const stringValue = value.join('');\n const isCompleted = stringValue.length === length;\n\n if (isCompleted && stringValue !== emptyValue.join(''))\n onCompleted(stringValue);\n onChange(stringValue);\n }, [value, length]);\n\n React.useEffect(() => {\n if (typeof pValue !== 'string') return;\n\n // avoid infinite loop\n if (pValue === '' && value.join('') === emptyValue.join('')) return;\n\n // keep internal and external states in sync\n if (pValue !== value.join('')) setValue(pValue.split(''));\n }, [pValue]);\n\n const renderItemText = (itemValue: string) => {\n if (itemValue === placeholder) return placeholder;\n return type === 'password' ? passwordMask : itemValue;\n };\n\n return (\n <React.Fragment>\n <S.GlobalStyle />\n\n <S.Container\n className='ReactInputVerificationCode__container'\n // needed for styling\n itemsCount={length}\n >\n <S.Input\n ref={codeInputRef}\n className='ReactInputVerificationCode__input'\n autoComplete='one-time-code'\n type='text'\n inputMode='decimal'\n id='one-time-code'\n // use onKeyUp rather than onChange for a better control\n // onChange is still needed to handle the autocompletion\n // when receiving a code by SMS\n onChange={onInputChange}\n onKeyUp={onInputKeyUp}\n onBlur={onInputBlur}\n // needed for styling\n activeIndex={activeIndex}\n data-cy={`${dataCy}-otc-input`}\n />\n\n {itemsRef.map((ref, i) => (\n <S.Item\n key={i}\n ref={ref}\n role='button'\n tabIndex={0}\n className={`ReactInputVerificationCode__item ${\n value[i] !== placeholder ? 'is-filled' : ''\n } ${i === activeIndex ? 'is-active' : ''}`}\n onFocus={onItemFocus(i)}\n data-cy={`${dataCy}-${i}-item`}\n >\n {renderItemText(value[i])}\n </S.Item>\n ))}\n </S.Container>\n </React.Fragment>\n );\n};\n\nexport default ReactInputVerificationCode;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar createHTMLElement = function createHTMLElement(name) {\n return document.createElement(name);\n};\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\n \"div\",\n props,\n contentEl\n );\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\n \"div\",\n props,\n children\n );\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nif (process.env.NODE_ENV !== \"production\") {\n Modal.setCreateHTMLElement = function (fn) {\n return createHTMLElement = fn;\n };\n}\n\nexports.default = Modal;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\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 _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\nvar TAB_KEY = 9;\nvar ESC_KEY = 27;\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName;\n\n // Remove classes.\n\n bodyOpenClassName && classList.remove(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.openAnimationFrame = requestAnimationFrame(function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({ preventScroll: true });\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (event.keyCode === TAB_KEY) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n cancelAnimationFrame(this.openAnimationFrame);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName;\n\n // Add classes.\n\n bodyOpenClassName && classList.add(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n if (this.shouldBeClosed()) {\n return null;\n }\n\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({ modal: true }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n if (globalElement) {\n if (globalElement.removeAttribute) {\n globalElement.removeAttribute(\"aria-hidden\");\n } else if (globalElement.length != null) {\n globalElement.forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n } else {\n document.querySelectorAll(globalElement).forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n }\n }\n globalElement = null;\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var check = globalElement || {};\n console.log(\"ariaAppHider ----------\");\n console.log(check.nodeName, check.className, check.id);\n console.log(\"end ariaAppHider ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n var el = appElement || globalElement;\n if (el) {\n return Array.isArray(el) || el instanceof HTMLCollection || el instanceof NodeList ? el : [el];\n } else {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return [];\n }\n}\n\nfunction hide(appElement) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = validateElement(appElement)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n\n el.setAttribute(\"aria-hidden\", \"true\");\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\nfunction show(appElement) {\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = validateElement(appElement)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var el = _step2.value;\n\n el.removeAttribute(\"aria-hidden\");\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\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n var _arr = [before, after];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var item = _arr[_i];\n if (!item) continue;\n item.parentNode && item.parentNode.removeChild(item);\n }\n before = after = null;\n instances = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n console.log(\"bodyTrap ----------\");\n console.log(instances.length);\n var _arr2 = [before, after];\n for (var _i2 = 0; _i2 < _arr2.length; _i2++) {\n var item = _arr2[_i2];\n var check = item || {};\n console.log(check.nodeName, check.className, check.id);\n }\n console.log(\"edn bodyTrap ----------\");\n}\n/* eslint-enable no-console */\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before && !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction removeClass(at, cls) {\n at.classList.remove(cls);\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n var htmlElement = document.getElementsByTagName(\"html\")[0];\n for (var cls in htmlClassList) {\n removeClass(htmlElement, htmlClassList[cls]);\n }\n\n var body = document.body;\n for (var _cls in docBodyClassList) {\n removeClass(body, docBodyClassList[_cls]);\n }\n\n htmlClassList = {};\n docBodyClassList = {};\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n\n buffer += \"<html /> (\" + classes + \"):\\n \";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n \";\n }\n\n classes = document.body.className;\n\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n \";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n \";\n }\n\n buffer += \"\\n\";\n\n console.log(buffer);\n }\n}\n/* eslint-enable no-console */\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n focusLaterElements = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n console.log(\"focusManager ----------\");\n focusLaterElements.forEach(function (f) {\n var check = f || {};\n console.log(check.nodeName, check.className, check.id);\n });\n console.log(\"end focusManager ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({ preventScroll: preventScroll });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.log = log;\nexports.resetState = resetState;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction log() {\n console.log(\"portalOpenInstances ----------\");\n console.log(portalOpenInstances.openInstances.length);\n portalOpenInstances.openInstances.forEach(function (p) {\n return console.log(p);\n });\n console.log(\"end portalOpenInstances ----------\");\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n portalOpenInstances = new PortalOpenInstances();\n}\n/* eslint-enable no-console */\n\nexports.default = portalOpenInstances;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = exports.SafeNodeList = exports.SafeHTMLCollection = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar SafeHTMLCollection = exports.SafeHTMLCollection = EE.canUseDOM ? window.HTMLCollection : {};\n\nvar SafeNodeList = exports.SafeNodeList = EE.canUseDOM ? window.NodeList : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getActiveElement() {\n var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n\n return el.activeElement.shadowRoot ? getActiveElement(el.activeElement.shadowRoot) : el.activeElement;\n}\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n var activeElement = getActiveElement();\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar tabbableNode = /input|select|textarea|button|object/;\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n try {\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n return zeroSize ? style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0 : style.getPropertyValue(\"display\") == \"none\";\n } catch (exception) {\n // eslint-disable-next-line no-console\n console.warn(\"Failed to inspect element style\");\n return false;\n }\n}\n\nfunction visible(element) {\n var parentElement = element;\n var rootNode = element.getRootNode && element.getRootNode();\n while (parentElement) {\n if (parentElement === document.body) break;\n\n // if we are not hidden yet, skip to checking outside the Web Component\n if (rootNode && parentElement === rootNode) parentElement = rootNode.host.parentNode;\n\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n var descendants = [].slice.call(element.querySelectorAll(\"*\"), 0).reduce(function (finished, el) {\n return finished.concat(!el.shadowRoot ? [el] : findTabbableDescendants(el.shadowRoot));\n }, []);\n return descendants.filter(tabbable);\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _reactFastCompare = _interopRequireDefault(require(\"react-fast-compare\"));\n\nvar _props = require(\"./props\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar SEEK_ON_PLAY_EXPIRY = 5000;\n\nvar Player = /*#__PURE__*/function (_Component) {\n _inherits(Player, _Component);\n\n var _super = _createSuper(Player);\n\n function Player() {\n var _this;\n\n _classCallCheck(this, Player);\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), \"mounted\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"isReady\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"isPlaying\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"isLoading\", true);\n\n _defineProperty(_assertThisInitialized(_this), \"loadOnReady\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"startOnPlay\", true);\n\n _defineProperty(_assertThisInitialized(_this), \"seekOnPlay\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"onDurationCalled\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"handlePlayerMount\", function (player) {\n _this.player = player;\n\n _this.player.load(_this.props.url);\n\n _this.progress();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getInternalPlayer\", function (key) {\n if (!_this.player) return null;\n return _this.player[key];\n });\n\n _defineProperty(_assertThisInitialized(_this), \"progress\", function () {\n if (_this.props.url && _this.player && _this.isReady) {\n var playedSeconds = _this.getCurrentTime() || 0;\n\n var loadedSeconds = _this.getSecondsLoaded();\n\n var duration = _this.getDuration();\n\n if (duration) {\n var progress = {\n playedSeconds: playedSeconds,\n played: playedSeconds / duration\n };\n\n if (loadedSeconds !== null) {\n progress.loadedSeconds = loadedSeconds;\n progress.loaded = loadedSeconds / duration;\n } // Only call onProgress if values have changed\n\n\n if (progress.playedSeconds !== _this.prevPlayed || progress.loadedSeconds !== _this.prevLoaded) {\n _this.props.onProgress(progress);\n }\n\n _this.prevPlayed = progress.playedSeconds;\n _this.prevLoaded = progress.loadedSeconds;\n }\n }\n\n _this.progressTimeout = setTimeout(_this.progress, _this.props.progressFrequency || _this.props.progressInterval);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleReady\", function () {\n if (!_this.mounted) return;\n _this.isReady = true;\n _this.isLoading = false;\n var _this$props = _this.props,\n onReady = _this$props.onReady,\n playing = _this$props.playing,\n volume = _this$props.volume,\n muted = _this$props.muted;\n onReady();\n\n if (!muted && volume !== null) {\n _this.player.setVolume(volume);\n }\n\n if (_this.loadOnReady) {\n _this.player.load(_this.loadOnReady, true);\n\n _this.loadOnReady = null;\n } else if (playing) {\n _this.player.play();\n }\n\n _this.handleDurationCheck();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handlePlay\", function () {\n _this.isPlaying = true;\n _this.isLoading = false;\n var _this$props2 = _this.props,\n onStart = _this$props2.onStart,\n onPlay = _this$props2.onPlay,\n playbackRate = _this$props2.playbackRate;\n\n if (_this.startOnPlay) {\n if (_this.player.setPlaybackRate && playbackRate !== 1) {\n _this.player.setPlaybackRate(playbackRate);\n }\n\n onStart();\n _this.startOnPlay = false;\n }\n\n onPlay();\n\n if (_this.seekOnPlay) {\n _this.seekTo(_this.seekOnPlay);\n\n _this.seekOnPlay = null;\n }\n\n _this.handleDurationCheck();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handlePause\", function (e) {\n _this.isPlaying = false;\n\n if (!_this.isLoading) {\n _this.props.onPause(e);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleEnded\", function () {\n var _this$props3 = _this.props,\n activePlayer = _this$props3.activePlayer,\n loop = _this$props3.loop,\n onEnded = _this$props3.onEnded;\n\n if (activePlayer.loopOnEnded && loop) {\n _this.seekTo(0);\n }\n\n if (!loop) {\n _this.isPlaying = false;\n onEnded();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleError\", function () {\n var _this$props4;\n\n _this.isLoading = false;\n\n (_this$props4 = _this.props).onError.apply(_this$props4, arguments);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleDurationCheck\", function () {\n clearTimeout(_this.durationCheckTimeout);\n\n var duration = _this.getDuration();\n\n if (duration) {\n if (!_this.onDurationCalled) {\n _this.props.onDuration(duration);\n\n _this.onDurationCalled = true;\n }\n } else {\n _this.durationCheckTimeout = setTimeout(_this.handleDurationCheck, 100);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleLoaded\", function () {\n // Sometimes we know loading has stopped but onReady/onPlay are never called\n // so this provides a way for players to avoid getting stuck\n _this.isLoading = false;\n });\n\n return _this;\n }\n\n _createClass(Player, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.mounted = true;\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n clearTimeout(this.progressTimeout);\n clearTimeout(this.durationCheckTimeout);\n\n if (this.isReady && this.props.stopOnUnmount) {\n this.player.stop();\n\n if (this.player.disablePIP) {\n this.player.disablePIP();\n }\n }\n\n this.mounted = false;\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n var _this2 = this;\n\n // If there isn’t a player available, don’t do anything\n if (!this.player) {\n return;\n } // Invoke player methods based on changed props\n\n\n var _this$props5 = this.props,\n url = _this$props5.url,\n playing = _this$props5.playing,\n volume = _this$props5.volume,\n muted = _this$props5.muted,\n playbackRate = _this$props5.playbackRate,\n pip = _this$props5.pip,\n loop = _this$props5.loop,\n activePlayer = _this$props5.activePlayer;\n\n if (!(0, _reactFastCompare[\"default\"])(prevProps.url, url)) {\n if (this.isLoading && !activePlayer.forceLoad) {\n console.warn(\"ReactPlayer: the attempt to load \".concat(url, \" is being deferred until the player has loaded\"));\n this.loadOnReady = url;\n return;\n }\n\n this.isLoading = true;\n this.startOnPlay = true;\n this.onDurationCalled = false;\n this.player.load(url, this.isReady);\n }\n\n if (!prevProps.playing && playing && !this.isPlaying) {\n this.player.play();\n }\n\n if (prevProps.playing && !playing && this.isPlaying) {\n this.player.pause();\n }\n\n if (!prevProps.pip && pip && this.player.enablePIP) {\n this.player.enablePIP();\n }\n\n if (prevProps.pip && !pip && this.player.disablePIP) {\n this.player.disablePIP();\n }\n\n if (prevProps.volume !== volume && volume !== null) {\n this.player.setVolume(volume);\n }\n\n if (prevProps.muted !== muted) {\n if (muted) {\n this.player.mute();\n } else {\n this.player.unmute();\n\n if (volume !== null) {\n // Set volume next tick to fix a bug with DailyMotion\n setTimeout(function () {\n return _this2.player.setVolume(volume);\n });\n }\n }\n }\n\n if (prevProps.playbackRate !== playbackRate && this.player.setPlaybackRate) {\n this.player.setPlaybackRate(playbackRate);\n }\n\n if (prevProps.loop !== loop && this.player.setLoop) {\n this.player.setLoop(loop);\n }\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n if (!this.isReady) return null;\n return this.player.getDuration();\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n if (!this.isReady) return null;\n return this.player.getCurrentTime();\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n if (!this.isReady) return null;\n return this.player.getSecondsLoaded();\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(amount, type) {\n var _this3 = this;\n\n // When seeking before player is ready, store value and seek later\n if (!this.isReady && amount !== 0) {\n this.seekOnPlay = amount;\n setTimeout(function () {\n _this3.seekOnPlay = null;\n }, SEEK_ON_PLAY_EXPIRY);\n return;\n }\n\n var isFraction = !type ? amount > 0 && amount < 1 : type === 'fraction';\n\n if (isFraction) {\n // Convert fraction to seconds based on duration\n var duration = this.player.getDuration();\n\n if (!duration) {\n console.warn('ReactPlayer: could not seek using fraction – duration not yet available');\n return;\n }\n\n this.player.seekTo(duration * amount);\n return;\n }\n\n this.player.seekTo(amount);\n }\n }, {\n key: \"render\",\n value: function render() {\n var Player = this.props.activePlayer;\n\n if (!Player) {\n return null;\n }\n\n return /*#__PURE__*/_react[\"default\"].createElement(Player, _extends({}, this.props, {\n onMount: this.handlePlayerMount,\n onReady: this.handleReady,\n onPlay: this.handlePlay,\n onPause: this.handlePause,\n onEnded: this.handleEnded,\n onLoaded: this.handleLoaded,\n onError: this.handleError\n }));\n }\n }]);\n\n return Player;\n}(_react.Component);\n\nexports[\"default\"] = Player;\n\n_defineProperty(Player, \"displayName\", 'Player');\n\n_defineProperty(Player, \"propTypes\", _props.propTypes);\n\n_defineProperty(Player, \"defaultProps\", _props.defaultProps);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar ICON_SIZE = '64px';\nvar cache = {};\n\nvar Preview = /*#__PURE__*/function (_Component) {\n _inherits(Preview, _Component);\n\n var _super = _createSuper(Preview);\n\n function Preview() {\n var _this;\n\n _classCallCheck(this, Preview);\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), \"mounted\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n image: null\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleKeyPress\", function (e) {\n if (e.key === 'Enter' || e.key === ' ') {\n _this.props.onClick();\n }\n });\n\n return _this;\n }\n\n _createClass(Preview, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.mounted = true;\n this.fetchImage(this.props);\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n var _this$props = this.props,\n url = _this$props.url,\n light = _this$props.light;\n\n if (prevProps.url !== url || prevProps.light !== light) {\n this.fetchImage(this.props);\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.mounted = false;\n }\n }, {\n key: \"fetchImage\",\n value: function fetchImage(_ref) {\n var _this2 = this;\n\n var url = _ref.url,\n light = _ref.light;\n\n if (typeof light === 'string') {\n this.setState({\n image: light\n });\n return;\n }\n\n if (cache[url]) {\n this.setState({\n image: cache[url]\n });\n return;\n }\n\n this.setState({\n image: null\n });\n return window.fetch(\"https://noembed.com/embed?url=\".concat(url)).then(function (response) {\n return response.json();\n }).then(function (data) {\n if (data.thumbnail_url && _this2.mounted) {\n var image = data.thumbnail_url.replace('height=100', 'height=480');\n\n _this2.setState({\n image: image\n });\n\n cache[url] = image;\n }\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n onClick = _this$props2.onClick,\n playIcon = _this$props2.playIcon,\n previewTabIndex = _this$props2.previewTabIndex;\n var image = this.state.image;\n var flexCenter = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n };\n var styles = {\n preview: _objectSpread({\n width: '100%',\n height: '100%',\n backgroundImage: image ? \"url(\".concat(image, \")\") : undefined,\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n cursor: 'pointer'\n }, flexCenter),\n shadow: _objectSpread({\n background: 'radial-gradient(rgb(0, 0, 0, 0.3), rgba(0, 0, 0, 0) 60%)',\n borderRadius: ICON_SIZE,\n width: ICON_SIZE,\n height: ICON_SIZE\n }, flexCenter),\n playIcon: {\n borderStyle: 'solid',\n borderWidth: '16px 0 16px 26px',\n borderColor: 'transparent transparent transparent white',\n marginLeft: '7px'\n }\n };\n\n var defaultPlayIcon = /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: styles.shadow,\n className: \"react-player__shadow\"\n }, /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: styles.playIcon,\n className: \"react-player__play-icon\"\n }));\n\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: styles.preview,\n className: \"react-player__preview\",\n onClick: onClick,\n tabIndex: previewTabIndex,\n onKeyPress: this.handleKeyPress\n }, playIcon || defaultPlayIcon);\n }\n }]);\n\n return Preview;\n}(_react.Component);\n\nexports[\"default\"] = Preview;","\"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) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\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.canPlay = exports.FLV_EXTENSIONS = exports.DASH_EXTENSIONS = exports.HLS_EXTENSIONS = exports.VIDEO_EXTENSIONS = exports.AUDIO_EXTENSIONS = exports.MATCH_URL_KALTURA = exports.MATCH_URL_VIDYARD = exports.MATCH_URL_MIXCLOUD = exports.MATCH_URL_DAILYMOTION = exports.MATCH_URL_TWITCH_CHANNEL = exports.MATCH_URL_TWITCH_VIDEO = exports.MATCH_URL_WISTIA = exports.MATCH_URL_STREAMABLE = exports.MATCH_URL_FACEBOOK_WATCH = exports.MATCH_URL_FACEBOOK = exports.MATCH_URL_VIMEO = exports.MATCH_URL_SOUNDCLOUD = exports.MATCH_URL_YOUTUBE = void 0;\n\nvar _utils = require(\"./utils\");\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nvar MATCH_URL_YOUTUBE = /(?:youtu\\.be\\/|youtube(?:-nocookie)?\\.com\\/(?:embed\\/|v\\/|watch\\/|watch\\?v=|watch\\?.+&v=))((\\w|-){11})|youtube\\.com\\/playlist\\?list=|youtube\\.com\\/user\\//;\nexports.MATCH_URL_YOUTUBE = MATCH_URL_YOUTUBE;\nvar MATCH_URL_SOUNDCLOUD = /(?:soundcloud\\.com|snd\\.sc)\\/[^.]+$/;\nexports.MATCH_URL_SOUNDCLOUD = MATCH_URL_SOUNDCLOUD;\nvar MATCH_URL_VIMEO = /vimeo\\.com\\/.+/;\nexports.MATCH_URL_VIMEO = MATCH_URL_VIMEO;\nvar MATCH_URL_FACEBOOK = /^https?:\\/\\/(www\\.)?facebook\\.com.*\\/(video(s)?|watch|story)(\\.php?|\\/).+$/;\nexports.MATCH_URL_FACEBOOK = MATCH_URL_FACEBOOK;\nvar MATCH_URL_FACEBOOK_WATCH = /^https?:\\/\\/fb\\.watch\\/.+$/;\nexports.MATCH_URL_FACEBOOK_WATCH = MATCH_URL_FACEBOOK_WATCH;\nvar MATCH_URL_STREAMABLE = /streamable\\.com\\/([a-z0-9]+)$/;\nexports.MATCH_URL_STREAMABLE = MATCH_URL_STREAMABLE;\nvar MATCH_URL_WISTIA = /(?:wistia\\.(?:com|net)|wi\\.st)\\/(?:medias|embed)\\/(?:iframe\\/)?(.*)$/;\nexports.MATCH_URL_WISTIA = MATCH_URL_WISTIA;\nvar MATCH_URL_TWITCH_VIDEO = /(?:www\\.|go\\.)?twitch\\.tv\\/videos\\/(\\d+)($|\\?)/;\nexports.MATCH_URL_TWITCH_VIDEO = MATCH_URL_TWITCH_VIDEO;\nvar MATCH_URL_TWITCH_CHANNEL = /(?:www\\.|go\\.)?twitch\\.tv\\/([a-zA-Z0-9_]+)($|\\?)/;\nexports.MATCH_URL_TWITCH_CHANNEL = MATCH_URL_TWITCH_CHANNEL;\nvar MATCH_URL_DAILYMOTION = /^(?:(?:https?):)?(?:\\/\\/)?(?:www\\.)?(?:(?:dailymotion\\.com(?:\\/embed)?\\/video)|dai\\.ly)\\/([a-zA-Z0-9]+)(?:_[\\w_-]+)?$/;\nexports.MATCH_URL_DAILYMOTION = MATCH_URL_DAILYMOTION;\nvar MATCH_URL_MIXCLOUD = /mixcloud\\.com\\/([^/]+\\/[^/]+)/;\nexports.MATCH_URL_MIXCLOUD = MATCH_URL_MIXCLOUD;\nvar MATCH_URL_VIDYARD = /vidyard.com\\/(?:watch\\/)?([a-zA-Z0-9-]+)/;\nexports.MATCH_URL_VIDYARD = MATCH_URL_VIDYARD;\nvar MATCH_URL_KALTURA = /^https?:\\/\\/[a-zA-Z]+\\.kaltura.(com|org)\\/p\\/([0-9]+)\\/sp\\/([0-9]+)00\\/embedIframeJs\\/uiconf_id\\/([0-9]+)\\/partner_id\\/([0-9]+)(.*)entry_id.([a-zA-Z0-9-_]+)$/;\nexports.MATCH_URL_KALTURA = MATCH_URL_KALTURA;\nvar AUDIO_EXTENSIONS = /\\.(m4a|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx)($|\\?)/i;\nexports.AUDIO_EXTENSIONS = AUDIO_EXTENSIONS;\nvar VIDEO_EXTENSIONS = /\\.(mp4|og[gv]|webm|mov|m4v)($|\\?)/i;\nexports.VIDEO_EXTENSIONS = VIDEO_EXTENSIONS;\nvar HLS_EXTENSIONS = /\\.(m3u8)($|\\?)/i;\nexports.HLS_EXTENSIONS = HLS_EXTENSIONS;\nvar DASH_EXTENSIONS = /\\.(mpd)($|\\?)/i;\nexports.DASH_EXTENSIONS = DASH_EXTENSIONS;\nvar FLV_EXTENSIONS = /\\.(flv)($|\\?)/i;\nexports.FLV_EXTENSIONS = FLV_EXTENSIONS;\n\nvar canPlayFile = function canPlayFile(url) {\n if (url instanceof Array) {\n var _iterator = _createForOfIteratorHelper(url),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var item = _step.value;\n\n if (typeof item === 'string' && canPlayFile(item)) {\n return true;\n }\n\n if (canPlayFile(item.src)) {\n return true;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return false;\n }\n\n if ((0, _utils.isMediaStream)(url) || (0, _utils.isBlobUrl)(url)) {\n return true;\n }\n\n return AUDIO_EXTENSIONS.test(url) || VIDEO_EXTENSIONS.test(url) || HLS_EXTENSIONS.test(url) || DASH_EXTENSIONS.test(url) || FLV_EXTENSIONS.test(url);\n};\n\nvar canPlay = {\n youtube: function youtube(url) {\n if (url instanceof Array) {\n return url.every(function (item) {\n return MATCH_URL_YOUTUBE.test(item);\n });\n }\n\n return MATCH_URL_YOUTUBE.test(url);\n },\n soundcloud: function soundcloud(url) {\n return MATCH_URL_SOUNDCLOUD.test(url) && !AUDIO_EXTENSIONS.test(url);\n },\n vimeo: function vimeo(url) {\n return MATCH_URL_VIMEO.test(url) && !VIDEO_EXTENSIONS.test(url) && !HLS_EXTENSIONS.test(url);\n },\n facebook: function facebook(url) {\n return MATCH_URL_FACEBOOK.test(url) || MATCH_URL_FACEBOOK_WATCH.test(url);\n },\n streamable: function streamable(url) {\n return MATCH_URL_STREAMABLE.test(url);\n },\n wistia: function wistia(url) {\n return MATCH_URL_WISTIA.test(url);\n },\n twitch: function twitch(url) {\n return MATCH_URL_TWITCH_VIDEO.test(url) || MATCH_URL_TWITCH_CHANNEL.test(url);\n },\n dailymotion: function dailymotion(url) {\n return MATCH_URL_DAILYMOTION.test(url);\n },\n mixcloud: function mixcloud(url) {\n return MATCH_URL_MIXCLOUD.test(url);\n },\n vidyard: function vidyard(url) {\n return MATCH_URL_VIDYARD.test(url);\n },\n kaltura: function kaltura(url) {\n return MATCH_URL_KALTURA.test(url);\n },\n file: canPlayFile\n};\nexports.canPlay = canPlay;","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar SDK_URL = 'https://connect.facebook.net/en_US/sdk.js';\nvar SDK_GLOBAL = 'FB';\nvar SDK_GLOBAL_READY = 'fbAsyncInit';\nvar PLAYER_ID_PREFIX = 'facebook-player-';\n\nvar Facebook = /*#__PURE__*/function (_Component) {\n _inherits(Facebook, _Component);\n\n var _super = _createSuper(Facebook);\n\n function Facebook() {\n var _this;\n\n _classCallCheck(this, Facebook);\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('mute');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"unmute\", function () {\n _this.callPlayer('unmute');\n });\n\n return _this;\n }\n\n _createClass(Facebook, [{\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 if (isReady) {\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL, SDK_GLOBAL_READY).then(function (FB) {\n return FB.XFBML.parse();\n });\n return;\n }\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL, SDK_GLOBAL_READY).then(function (FB) {\n FB.init({\n appId: _this2.props.config.appId,\n xfbml: true,\n version: _this2.props.config.version\n });\n FB.Event.subscribe('xfbml.render', function (msg) {\n // Here we know the SDK has loaded, even if onReady/onPlay\n // is not called due to a video that cannot be embedded\n _this2.props.onLoaded();\n });\n FB.Event.subscribe('xfbml.ready', function (msg) {\n if (msg.type === 'video' && msg.id === _this2.playerID) {\n _this2.player = msg.instance;\n\n _this2.player.subscribe('startedPlaying', _this2.props.onPlay);\n\n _this2.player.subscribe('paused', _this2.props.onPause);\n\n _this2.player.subscribe('finishedPlaying', _this2.props.onEnded);\n\n _this2.player.subscribe('startedBuffering', _this2.props.onBuffer);\n\n _this2.player.subscribe('finishedBuffering', _this2.props.onBufferEnd);\n\n _this2.player.subscribe('error', _this2.props.onError);\n\n if (_this2.props.muted) {\n _this2.callPlayer('mute');\n } else {\n _this2.callPlayer('unmute');\n }\n\n _this2.props.onReady(); // For some reason Facebook have added `visibility: hidden`\n // to the iframe when autoplay fails, so here we set it back\n\n\n document.getElementById(_this2.playerID).querySelector('iframe').style.visibility = 'visible';\n }\n });\n });\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.callPlayer('getDuration');\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n return this.callPlayer('getCurrentPosition');\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return null;\n }\n }, {\n key: \"render\",\n value: function render() {\n var attributes = this.props.config.attributes;\n var style = {\n width: '100%',\n height: '100%'\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", _extends({\n style: style,\n id: this.playerID,\n className: \"fb-video\",\n \"data-href\": this.props.url,\n \"data-autoplay\": this.props.playing ? 'true' : 'false',\n \"data-allowfullscreen\": \"true\",\n \"data-controls\": this.props.controls ? 'true' : 'false'\n }, attributes));\n }\n }]);\n\n return Facebook;\n}(_react.Component);\n\nexports[\"default\"] = Facebook;\n\n_defineProperty(Facebook, \"displayName\", 'Facebook');\n\n_defineProperty(Facebook, \"canPlay\", _patterns.canPlay.facebook);\n\n_defineProperty(Facebook, \"loopOnEnded\", true);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 <video> so that poster is shown\n }\n\n return _patterns.AUDIO_EXTENSIONS.test(props.url) || props.config.forceAudio;\n }\n }, {\n key: \"shouldUseHLS\",\n value: function shouldUseHLS(url) {\n if (this.props.config.forceHLS) {\n return true;\n }\n\n if (IS_IOS) {\n return false;\n }\n\n return _patterns.HLS_EXTENSIONS.test(url) || MATCH_CLOUDFLARE_STREAM.test(url);\n }\n }, {\n key: \"shouldUseDASH\",\n value: function shouldUseDASH(url) {\n return _patterns.DASH_EXTENSIONS.test(url) || this.props.config.forceDASH;\n }\n }, {\n key: \"shouldUseFLV\",\n value: function shouldUseFLV(url) {\n return _patterns.FLV_EXTENSIONS.test(url) || this.props.config.forceFLV;\n }\n }, {\n key: \"load\",\n value: function load(url) {\n var _this2 = this;\n\n var _this$props$config = this.props.config,\n hlsVersion = _this$props$config.hlsVersion,\n hlsOptions = _this$props$config.hlsOptions,\n dashVersion = _this$props$config.dashVersion,\n flvVersion = _this$props$config.flvVersion;\n\n if (this.hls) {\n this.hls.destroy();\n }\n\n if (this.dash) {\n this.dash.reset();\n }\n\n if (this.shouldUseHLS(url)) {\n (0, _utils.getSDK)(HLS_SDK_URL.replace('VERSION', hlsVersion), HLS_GLOBAL).then(function (Hls) {\n _this2.hls = new Hls(hlsOptions);\n\n _this2.hls.on(Hls.Events.MANIFEST_PARSED, function () {\n _this2.props.onReady();\n });\n\n _this2.hls.on(Hls.Events.ERROR, function (e, data) {\n _this2.props.onError(e, data, _this2.hls, Hls);\n });\n\n if (MATCH_CLOUDFLARE_STREAM.test(url)) {\n var id = url.match(MATCH_CLOUDFLARE_STREAM)[1];\n\n _this2.hls.loadSource(REPLACE_CLOUDFLARE_STREAM.replace('{id}', id));\n } else {\n _this2.hls.loadSource(url);\n }\n\n _this2.hls.attachMedia(_this2.player);\n\n _this2.props.onLoaded();\n });\n }\n\n if (this.shouldUseDASH(url)) {\n (0, _utils.getSDK)(DASH_SDK_URL.replace('VERSION', dashVersion), DASH_GLOBAL).then(function (dashjs) {\n _this2.dash = dashjs.MediaPlayer().create();\n\n _this2.dash.initialize(_this2.player, url, _this2.props.playing);\n\n _this2.dash.on('error', _this2.props.onError);\n\n if (parseInt(dashVersion) < 3) {\n _this2.dash.getDebug().setLogToBrowserConsole(false);\n } else {\n _this2.dash.updateSettings({\n debug: {\n logLevel: dashjs.Debug.LOG_LEVEL_NONE\n }\n });\n }\n\n _this2.props.onLoaded();\n });\n }\n\n if (this.shouldUseFLV(url)) {\n (0, _utils.getSDK)(FLV_SDK_URL.replace('VERSION', flvVersion), FLV_GLOBAL).then(function (flvjs) {\n _this2.flv = flvjs.createPlayer({\n type: 'flv',\n url: url\n });\n\n _this2.flv.attachMediaElement(_this2.player);\n\n _this2.flv.load();\n\n _this2.props.onLoaded();\n });\n }\n\n if (url instanceof Array) {\n // When setting new urls (<source>) on an already loaded video,\n // HTMLMediaElement.load() is needed to reset the media element\n // and restart the media resource. Just replacing children source\n // dom nodes is not enough\n this.player.load();\n } else if ((0, _utils.isMediaStream)(url)) {\n try {\n this.player.srcObject = url;\n } catch (e) {\n this.player.src = window.URL.createObjectURL(url);\n }\n }\n }\n }, {\n key: \"play\",\n value: function play() {\n var promise = this.player.play();\n\n if (promise) {\n promise[\"catch\"](this.props.onError);\n }\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.player.pause();\n }\n }, {\n key: \"stop\",\n value: function stop() {\n this.player.removeAttribute('src');\n\n if (this.dash) {\n this.dash.reset();\n }\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(seconds) {\n this.player.currentTime = seconds;\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.player.volume = fraction;\n }\n }, {\n key: \"enablePIP\",\n value: function enablePIP() {\n if (this.player.requestPictureInPicture && document.pictureInPictureElement !== this.player) {\n this.player.requestPictureInPicture();\n } else if ((0, _utils.supportsWebKitPresentationMode)(this.player) && this.player.webkitPresentationMode !== 'picture-in-picture') {\n this.player.webkitSetPresentationMode('picture-in-picture');\n }\n }\n }, {\n key: \"disablePIP\",\n value: function disablePIP() {\n if (document.exitPictureInPicture && document.pictureInPictureElement === this.player) {\n document.exitPictureInPicture();\n } else if ((0, _utils.supportsWebKitPresentationMode)(this.player) && this.player.webkitPresentationMode !== 'inline') {\n this.player.webkitSetPresentationMode('inline');\n }\n }\n }, {\n key: \"setPlaybackRate\",\n value: function setPlaybackRate(rate) {\n this.player.playbackRate = rate;\n }\n }, {\n key: \"getDuration\",\n value: function getDuration() {\n if (!this.player) return null;\n var _this$player = this.player,\n duration = _this$player.duration,\n seekable = _this$player.seekable; // on iOS, live streams return Infinity for the duration\n // so instead we use the end of the seekable timerange\n\n if (duration === Infinity && seekable.length > 0) {\n return seekable.end(seekable.length - 1);\n }\n\n return duration;\n }\n }, {\n key: \"getCurrentTime\",\n value: function getCurrentTime() {\n if (!this.player) return null;\n return this.player.currentTime;\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n if (!this.player) return null;\n var buffered = this.player.buffered;\n\n if (buffered.length === 0) {\n return 0;\n }\n\n var end = buffered.end(buffered.length - 1);\n var duration = this.getDuration();\n\n if (end > duration) {\n return duration;\n }\n\n return end;\n }\n }, {\n key: \"getSource\",\n value: function getSource(url) {\n var useHLS = this.shouldUseHLS(url);\n var useDASH = this.shouldUseDASH(url);\n var useFLV = this.shouldUseFLV(url);\n\n if (url instanceof Array || (0, _utils.isMediaStream)(url) || useHLS || useDASH || useFLV) {\n return undefined;\n }\n\n if (MATCH_DROPBOX_URL.test(url)) {\n return url.replace('www.dropbox.com', 'dl.dropboxusercontent.com');\n }\n\n return url;\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props11 = this.props,\n url = _this$props11.url,\n playing = _this$props11.playing,\n loop = _this$props11.loop,\n controls = _this$props11.controls,\n muted = _this$props11.muted,\n config = _this$props11.config,\n width = _this$props11.width,\n height = _this$props11.height;\n var useAudio = this.shouldUseAudio(this.props);\n var Element = useAudio ? 'audio' : 'video';\n var style = {\n width: width === 'auto' ? width : '100%',\n height: height === 'auto' ? height : '100%'\n };\n return /*#__PURE__*/_react[\"default\"].createElement(Element, _extends({\n ref: this.ref,\n src: this.getSource(url),\n style: style,\n preload: \"auto\",\n autoPlay: playing || undefined,\n controls: controls,\n muted: muted,\n loop: loop\n }, config.attributes), url instanceof Array && url.map(this.renderSourceElement), config.tracks.map(this.renderTrack));\n }\n }]);\n\n return FilePlayer;\n}(_react.Component);\n\nexports[\"default\"] = FilePlayer;\n\n_defineProperty(FilePlayer, \"displayName\", 'FilePlayer');\n\n_defineProperty(FilePlayer, \"canPlay\", _patterns.canPlay.file);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar SDK_URL = 'https://w.soundcloud.com/player/api.js';\nvar SDK_GLOBAL = 'SC';\n\nvar SoundCloud = /*#__PURE__*/function (_Component) {\n _inherits(SoundCloud, _Component);\n\n var _super = _createSuper(SoundCloud);\n\n function SoundCloud() {\n var _this;\n\n _classCallCheck(this, SoundCloud);\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), \"fractionLoaded\", 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 (iframe) {\n _this.iframe = iframe;\n });\n\n return _this;\n }\n\n _createClass(SoundCloud, [{\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 (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL).then(function (SC) {\n if (!_this2.iframe) return;\n var _SC$Widget$Events = SC.Widget.Events,\n PLAY = _SC$Widget$Events.PLAY,\n PLAY_PROGRESS = _SC$Widget$Events.PLAY_PROGRESS,\n PAUSE = _SC$Widget$Events.PAUSE,\n FINISH = _SC$Widget$Events.FINISH,\n ERROR = _SC$Widget$Events.ERROR;\n\n if (!isReady) {\n _this2.player = SC.Widget(_this2.iframe);\n\n _this2.player.bind(PLAY, _this2.props.onPlay);\n\n _this2.player.bind(PAUSE, function () {\n var remaining = _this2.duration - _this2.currentTime;\n\n if (remaining < 0.05) {\n // Prevent onPause firing right before onEnded\n return;\n }\n\n _this2.props.onPause();\n });\n\n _this2.player.bind(PLAY_PROGRESS, function (e) {\n _this2.currentTime = e.currentPosition / 1000;\n _this2.fractionLoaded = e.loadedProgress;\n });\n\n _this2.player.bind(FINISH, function () {\n return _this2.props.onEnded();\n });\n\n _this2.player.bind(ERROR, function (e) {\n return _this2.props.onError(e);\n });\n }\n\n _this2.player.load(url, _objectSpread(_objectSpread({}, _this2.props.config.options), {}, {\n callback: function callback() {\n _this2.player.getDuration(function (duration) {\n _this2.duration = duration / 1000;\n\n _this2.props.onReady();\n });\n }\n }));\n });\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('seekTo', seconds * 1000);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction * 100);\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.fractionLoaded * this.duration;\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(\"iframe\", {\n ref: this.ref,\n src: \"https://w.soundcloud.com/player/?url=\".concat(encodeURIComponent(this.props.url)),\n style: style,\n frameBorder: 0,\n allow: \"autoplay\"\n });\n }\n }]);\n\n return SoundCloud;\n}(_react.Component);\n\nexports[\"default\"] = SoundCloud;\n\n_defineProperty(SoundCloud, \"displayName\", 'SoundCloud');\n\n_defineProperty(SoundCloud, \"canPlay\", _patterns.canPlay.soundcloud);\n\n_defineProperty(SoundCloud, \"loopOnEnded\", true);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar SDK_URL = 'https://play.vidyard.com/embed/v4.js';\nvar SDK_GLOBAL = 'VidyardV4';\nvar SDK_GLOBAL_READY = 'onVidyardAPI';\n\nvar Vidyard = /*#__PURE__*/function (_Component) {\n _inherits(Vidyard, _Component);\n\n var _super = _createSuper(Vidyard);\n\n function Vidyard() {\n var _this;\n\n _classCallCheck(this, Vidyard);\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), \"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(Vidyard, [{\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 playing = _this$props.playing,\n config = _this$props.config,\n onError = _this$props.onError,\n onDuration = _this$props.onDuration;\n var id = url && url.match(_patterns.MATCH_URL_VIDYARD)[1];\n\n if (this.player) {\n this.stop();\n }\n\n (0, _utils.getSDK)(SDK_URL, SDK_GLOBAL, SDK_GLOBAL_READY).then(function (Vidyard) {\n if (!_this2.container) return;\n Vidyard.api.addReadyListener(function (data, player) {\n _this2.player = player;\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('seek', _this2.props.onSeek);\n\n _this2.player.on('playerComplete', _this2.props.onEnded);\n }, id);\n Vidyard.api.renderPlayer(_objectSpread({\n uuid: id,\n container: _this2.container,\n autoplay: playing ? 1 : 0\n }, config.options));\n Vidyard.api.getPlayerMetadata(id).then(function (meta) {\n _this2.duration = meta.length_in_seconds;\n onDuration(meta.length_in_seconds);\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() {\n window.VidyardV4.api.destroyPlayer(this.player);\n }\n }, {\n key: \"seekTo\",\n value: function seekTo(amount) {\n this.callPlayer('seek', amount);\n }\n }, {\n key: \"setVolume\",\n value: function setVolume(fraction) {\n this.callPlayer('setVolume', fraction);\n }\n }, {\n key: \"setPlaybackRate\",\n value: function setPlaybackRate(rate) {\n this.callPlayer('setPlaybackSpeed', 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.callPlayer('currentTime');\n }\n }, {\n key: \"getSecondsLoaded\",\n value: function getSecondsLoaded() {\n return null;\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 Vidyard;\n}(_react.Component);\n\nexports[\"default\"] = Vidyard;\n\n_defineProperty(Vidyard, \"displayName\", 'Vidyard');\n\n_defineProperty(Vidyard, \"canPlay\", _patterns.canPlay.vidyard);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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);","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\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() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { \"default\": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj[\"default\"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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\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) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\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;","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { Subscribable } from './subscribable';\nimport { isServer } from './utils';\nexport var FocusManager = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(FocusManager, _Subscribable);\n\n function FocusManager() {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n\n _this.setup = function (onFocus) {\n var _window;\n\n if (!isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {\n var listener = function listener() {\n return onFocus();\n }; // Listen to visibillitychange and focus\n\n\n window.addEventListener('visibilitychange', listener, false);\n window.addEventListener('focus', listener, false);\n return function () {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('visibilitychange', listener);\n window.removeEventListener('focus', listener);\n };\n }\n };\n\n return _this;\n }\n\n var _proto = FocusManager.prototype;\n\n _proto.onSubscribe = function onSubscribe() {\n if (!this.cleanup) {\n this.setEventListener(this.setup);\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.hasListeners()) {\n var _this$cleanup;\n\n (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);\n this.cleanup = undefined;\n }\n };\n\n _proto.setEventListener = function setEventListener(setup) {\n var _this$cleanup2,\n _this2 = this;\n\n this.setup = setup;\n (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);\n this.cleanup = setup(function (focused) {\n if (typeof focused === 'boolean') {\n _this2.setFocused(focused);\n } else {\n _this2.onFocus();\n }\n });\n };\n\n _proto.setFocused = function setFocused(focused) {\n this.focused = focused;\n\n if (focused) {\n this.onFocus();\n }\n };\n\n _proto.onFocus = function onFocus() {\n this.listeners.forEach(function (listener) {\n listener();\n });\n };\n\n _proto.isFocused = function isFocused() {\n if (typeof this.focused === 'boolean') {\n return this.focused;\n } // document global can be unavailable in react native\n\n\n if (typeof document === 'undefined') {\n return true;\n }\n\n return [undefined, 'visible', 'prerender'].includes(document.visibilityState);\n };\n\n return FocusManager;\n}(Subscribable);\nexport var focusManager = new FocusManager();","// TYPES\n// FUNCTIONS\nvar logger = console;\nexport function getLogger() {\n return logger;\n}\nexport function setLogger(newLogger) {\n logger = newLogger;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { getLogger } from './logger';\nimport { notifyManager } from './notifyManager';\nimport { Retryer } from './retryer';\nimport { noop } from './utils'; // TYPES\n\n// CLASS\nexport var Mutation = /*#__PURE__*/function () {\n function Mutation(config) {\n this.options = _extends({}, config.defaultOptions, config.options);\n this.mutationId = config.mutationId;\n this.mutationCache = config.mutationCache;\n this.observers = [];\n this.state = config.state || getDefaultState();\n this.meta = config.meta;\n }\n\n var _proto = Mutation.prototype;\n\n _proto.setState = function setState(state) {\n this.dispatch({\n type: 'setState',\n state: state\n });\n };\n\n _proto.addObserver = function addObserver(observer) {\n if (this.observers.indexOf(observer) === -1) {\n this.observers.push(observer);\n }\n };\n\n _proto.removeObserver = function removeObserver(observer) {\n this.observers = this.observers.filter(function (x) {\n return x !== observer;\n });\n };\n\n _proto.cancel = function cancel() {\n if (this.retryer) {\n this.retryer.cancel();\n return this.retryer.promise.then(noop).catch(noop);\n }\n\n return Promise.resolve();\n };\n\n _proto.continue = function _continue() {\n if (this.retryer) {\n this.retryer.continue();\n return this.retryer.promise;\n }\n\n return this.execute();\n };\n\n _proto.execute = function execute() {\n var _this = this;\n\n var data;\n var restored = this.state.status === 'loading';\n var promise = Promise.resolve();\n\n if (!restored) {\n this.dispatch({\n type: 'loading',\n variables: this.options.variables\n });\n promise = promise.then(function () {\n // Notify cache callback\n _this.mutationCache.config.onMutate == null ? void 0 : _this.mutationCache.config.onMutate(_this.state.variables, _this);\n }).then(function () {\n return _this.options.onMutate == null ? void 0 : _this.options.onMutate(_this.state.variables);\n }).then(function (context) {\n if (context !== _this.state.context) {\n _this.dispatch({\n type: 'loading',\n context: context,\n variables: _this.state.variables\n });\n }\n });\n }\n\n return promise.then(function () {\n return _this.executeMutation();\n }).then(function (result) {\n data = result; // Notify cache callback\n\n _this.mutationCache.config.onSuccess == null ? void 0 : _this.mutationCache.config.onSuccess(data, _this.state.variables, _this.state.context, _this);\n }).then(function () {\n return _this.options.onSuccess == null ? void 0 : _this.options.onSuccess(data, _this.state.variables, _this.state.context);\n }).then(function () {\n return _this.options.onSettled == null ? void 0 : _this.options.onSettled(data, null, _this.state.variables, _this.state.context);\n }).then(function () {\n _this.dispatch({\n type: 'success',\n data: data\n });\n\n return data;\n }).catch(function (error) {\n // Notify cache callback\n _this.mutationCache.config.onError == null ? void 0 : _this.mutationCache.config.onError(error, _this.state.variables, _this.state.context, _this); // Log error\n\n getLogger().error(error);\n return Promise.resolve().then(function () {\n return _this.options.onError == null ? void 0 : _this.options.onError(error, _this.state.variables, _this.state.context);\n }).then(function () {\n return _this.options.onSettled == null ? void 0 : _this.options.onSettled(undefined, error, _this.state.variables, _this.state.context);\n }).then(function () {\n _this.dispatch({\n type: 'error',\n error: error\n });\n\n throw error;\n });\n });\n };\n\n _proto.executeMutation = function executeMutation() {\n var _this2 = this,\n _this$options$retry;\n\n this.retryer = new Retryer({\n fn: function fn() {\n if (!_this2.options.mutationFn) {\n return Promise.reject('No mutationFn found');\n }\n\n return _this2.options.mutationFn(_this2.state.variables);\n },\n onFail: function onFail() {\n _this2.dispatch({\n type: 'failed'\n });\n },\n onPause: function onPause() {\n _this2.dispatch({\n type: 'pause'\n });\n },\n onContinue: function onContinue() {\n _this2.dispatch({\n type: 'continue'\n });\n },\n retry: (_this$options$retry = this.options.retry) != null ? _this$options$retry : 0,\n retryDelay: this.options.retryDelay\n });\n return this.retryer.promise;\n };\n\n _proto.dispatch = function dispatch(action) {\n var _this3 = this;\n\n this.state = reducer(this.state, action);\n notifyManager.batch(function () {\n _this3.observers.forEach(function (observer) {\n observer.onMutationUpdate(action);\n });\n\n _this3.mutationCache.notify(_this3);\n });\n };\n\n return Mutation;\n}();\nexport function getDefaultState() {\n return {\n context: undefined,\n data: undefined,\n error: null,\n failureCount: 0,\n isPaused: false,\n status: 'idle',\n variables: undefined\n };\n}\n\nfunction reducer(state, action) {\n switch (action.type) {\n case 'failed':\n return _extends({}, state, {\n failureCount: state.failureCount + 1\n });\n\n case 'pause':\n return _extends({}, state, {\n isPaused: true\n });\n\n case 'continue':\n return _extends({}, state, {\n isPaused: false\n });\n\n case 'loading':\n return _extends({}, state, {\n context: action.context,\n data: undefined,\n error: null,\n isPaused: false,\n status: 'loading',\n variables: action.variables\n });\n\n case 'success':\n return _extends({}, state, {\n data: action.data,\n error: null,\n status: 'success',\n isPaused: false\n });\n\n case 'error':\n return _extends({}, state, {\n data: undefined,\n error: action.error,\n failureCount: state.failureCount + 1,\n isPaused: false,\n status: 'error'\n });\n\n case 'setState':\n return _extends({}, state, action.state);\n\n default:\n return state;\n }\n}","import { scheduleMicrotask } from './utils'; // TYPES\n\n// CLASS\nexport var NotifyManager = /*#__PURE__*/function () {\n function NotifyManager() {\n this.queue = [];\n this.transactions = 0;\n\n this.notifyFn = function (callback) {\n callback();\n };\n\n this.batchNotifyFn = function (callback) {\n callback();\n };\n }\n\n var _proto = NotifyManager.prototype;\n\n _proto.batch = function batch(callback) {\n var result;\n this.transactions++;\n\n try {\n result = callback();\n } finally {\n this.transactions--;\n\n if (!this.transactions) {\n this.flush();\n }\n }\n\n return result;\n };\n\n _proto.schedule = function schedule(callback) {\n var _this = this;\n\n if (this.transactions) {\n this.queue.push(callback);\n } else {\n scheduleMicrotask(function () {\n _this.notifyFn(callback);\n });\n }\n }\n /**\n * All calls to the wrapped function will be batched.\n */\n ;\n\n _proto.batchCalls = function batchCalls(callback) {\n var _this2 = this;\n\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this2.schedule(function () {\n callback.apply(void 0, args);\n });\n };\n };\n\n _proto.flush = function flush() {\n var _this3 = this;\n\n var queue = this.queue;\n this.queue = [];\n\n if (queue.length) {\n scheduleMicrotask(function () {\n _this3.batchNotifyFn(function () {\n queue.forEach(function (callback) {\n _this3.notifyFn(callback);\n });\n });\n });\n }\n }\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n ;\n\n _proto.setNotifyFunction = function setNotifyFunction(fn) {\n this.notifyFn = fn;\n }\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n ;\n\n _proto.setBatchNotifyFunction = function setBatchNotifyFunction(fn) {\n this.batchNotifyFn = fn;\n };\n\n return NotifyManager;\n}(); // SINGLETON\n\nexport var notifyManager = new NotifyManager();","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { Subscribable } from './subscribable';\nimport { isServer } from './utils';\nexport var OnlineManager = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(OnlineManager, _Subscribable);\n\n function OnlineManager() {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n\n _this.setup = function (onOnline) {\n var _window;\n\n if (!isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {\n var listener = function listener() {\n return onOnline();\n }; // Listen to online\n\n\n window.addEventListener('online', listener, false);\n window.addEventListener('offline', listener, false);\n return function () {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('online', listener);\n window.removeEventListener('offline', listener);\n };\n }\n };\n\n return _this;\n }\n\n var _proto = OnlineManager.prototype;\n\n _proto.onSubscribe = function onSubscribe() {\n if (!this.cleanup) {\n this.setEventListener(this.setup);\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.hasListeners()) {\n var _this$cleanup;\n\n (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);\n this.cleanup = undefined;\n }\n };\n\n _proto.setEventListener = function setEventListener(setup) {\n var _this$cleanup2,\n _this2 = this;\n\n this.setup = setup;\n (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);\n this.cleanup = setup(function (online) {\n if (typeof online === 'boolean') {\n _this2.setOnline(online);\n } else {\n _this2.onOnline();\n }\n });\n };\n\n _proto.setOnline = function setOnline(online) {\n this.online = online;\n\n if (online) {\n this.onOnline();\n }\n };\n\n _proto.onOnline = function onOnline() {\n this.listeners.forEach(function (listener) {\n listener();\n });\n };\n\n _proto.isOnline = function isOnline() {\n if (typeof this.online === 'boolean') {\n return this.online;\n }\n\n if (typeof navigator === 'undefined' || typeof navigator.onLine === 'undefined') {\n return true;\n }\n\n return navigator.onLine;\n };\n\n return OnlineManager;\n}(Subscribable);\nexport var onlineManager = new OnlineManager();","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { getAbortController, functionalUpdate, isValidTimeout, noop, replaceEqualDeep, timeUntilStale, ensureQueryKeyArray } from './utils';\nimport { notifyManager } from './notifyManager';\nimport { getLogger } from './logger';\nimport { Retryer, isCancelledError } from './retryer'; // TYPES\n\n// CLASS\nexport var Query = /*#__PURE__*/function () {\n function Query(config) {\n this.abortSignalConsumed = false;\n this.hadObservers = false;\n this.defaultOptions = config.defaultOptions;\n this.setOptions(config.options);\n this.observers = [];\n this.cache = config.cache;\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.initialState = config.state || this.getDefaultState(this.options);\n this.state = this.initialState;\n this.meta = config.meta;\n this.scheduleGc();\n }\n\n var _proto = Query.prototype;\n\n _proto.setOptions = function setOptions(options) {\n var _this$options$cacheTi;\n\n this.options = _extends({}, this.defaultOptions, options);\n this.meta = options == null ? void 0 : options.meta; // Default to 5 minutes if not cache time is set\n\n this.cacheTime = Math.max(this.cacheTime || 0, (_this$options$cacheTi = this.options.cacheTime) != null ? _this$options$cacheTi : 5 * 60 * 1000);\n };\n\n _proto.setDefaultOptions = function setDefaultOptions(options) {\n this.defaultOptions = options;\n };\n\n _proto.scheduleGc = function scheduleGc() {\n var _this = this;\n\n this.clearGcTimeout();\n\n if (isValidTimeout(this.cacheTime)) {\n this.gcTimeout = setTimeout(function () {\n _this.optionalRemove();\n }, this.cacheTime);\n }\n };\n\n _proto.clearGcTimeout = function clearGcTimeout() {\n clearTimeout(this.gcTimeout);\n this.gcTimeout = undefined;\n };\n\n _proto.optionalRemove = function optionalRemove() {\n if (!this.observers.length) {\n if (this.state.isFetching) {\n if (this.hadObservers) {\n this.scheduleGc();\n }\n } else {\n this.cache.remove(this);\n }\n }\n };\n\n _proto.setData = function setData(updater, options) {\n var _this$options$isDataE, _this$options;\n\n var prevData = this.state.data; // Get the new data\n\n var data = functionalUpdate(updater, prevData); // Use prev data if an isDataEqual function is defined and returns `true`\n\n if ((_this$options$isDataE = (_this$options = this.options).isDataEqual) == null ? void 0 : _this$options$isDataE.call(_this$options, prevData, data)) {\n data = prevData;\n } else if (this.options.structuralSharing !== false) {\n // Structurally share data between prev and new data if needed\n data = replaceEqualDeep(prevData, data);\n } // Set data and mark it as cached\n\n\n this.dispatch({\n data: data,\n type: 'success',\n dataUpdatedAt: options == null ? void 0 : options.updatedAt\n });\n return data;\n };\n\n _proto.setState = function setState(state, setStateOptions) {\n this.dispatch({\n type: 'setState',\n state: state,\n setStateOptions: setStateOptions\n });\n };\n\n _proto.cancel = function cancel(options) {\n var _this$retryer;\n\n var promise = this.promise;\n (_this$retryer = this.retryer) == null ? void 0 : _this$retryer.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n };\n\n _proto.destroy = function destroy() {\n this.clearGcTimeout();\n this.cancel({\n silent: true\n });\n };\n\n _proto.reset = function reset() {\n this.destroy();\n this.setState(this.initialState);\n };\n\n _proto.isActive = function isActive() {\n return this.observers.some(function (observer) {\n return observer.options.enabled !== false;\n });\n };\n\n _proto.isFetching = function isFetching() {\n return this.state.isFetching;\n };\n\n _proto.isStale = function isStale() {\n return this.state.isInvalidated || !this.state.dataUpdatedAt || this.observers.some(function (observer) {\n return observer.getCurrentResult().isStale;\n });\n };\n\n _proto.isStaleByTime = function isStaleByTime(staleTime) {\n if (staleTime === void 0) {\n staleTime = 0;\n }\n\n return this.state.isInvalidated || !this.state.dataUpdatedAt || !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n };\n\n _proto.onFocus = function onFocus() {\n var _this$retryer2;\n\n var observer = this.observers.find(function (x) {\n return x.shouldFetchOnWindowFocus();\n });\n\n if (observer) {\n observer.refetch();\n } // Continue fetch if currently paused\n\n\n (_this$retryer2 = this.retryer) == null ? void 0 : _this$retryer2.continue();\n };\n\n _proto.onOnline = function onOnline() {\n var _this$retryer3;\n\n var observer = this.observers.find(function (x) {\n return x.shouldFetchOnReconnect();\n });\n\n if (observer) {\n observer.refetch();\n } // Continue fetch if currently paused\n\n\n (_this$retryer3 = this.retryer) == null ? void 0 : _this$retryer3.continue();\n };\n\n _proto.addObserver = function addObserver(observer) {\n if (this.observers.indexOf(observer) === -1) {\n this.observers.push(observer);\n this.hadObservers = true; // Stop the query from being garbage collected\n\n this.clearGcTimeout();\n this.cache.notify({\n type: 'observerAdded',\n query: this,\n observer: observer\n });\n }\n };\n\n _proto.removeObserver = function removeObserver(observer) {\n if (this.observers.indexOf(observer) !== -1) {\n this.observers = this.observers.filter(function (x) {\n return x !== observer;\n });\n\n if (!this.observers.length) {\n // If the transport layer does not support cancellation\n // we'll let the query continue so the result can be cached\n if (this.retryer) {\n if (this.retryer.isTransportCancelable || this.abortSignalConsumed) {\n this.retryer.cancel({\n revert: true\n });\n } else {\n this.retryer.cancelRetry();\n }\n }\n\n if (this.cacheTime) {\n this.scheduleGc();\n } else {\n this.cache.remove(this);\n }\n }\n\n this.cache.notify({\n type: 'observerRemoved',\n query: this,\n observer: observer\n });\n }\n };\n\n _proto.getObserversCount = function getObserversCount() {\n return this.observers.length;\n };\n\n _proto.invalidate = function invalidate() {\n if (!this.state.isInvalidated) {\n this.dispatch({\n type: 'invalidate'\n });\n }\n };\n\n _proto.fetch = function fetch(options, fetchOptions) {\n var _this2 = this,\n _this$options$behavio,\n _context$fetchOptions,\n _abortController$abor;\n\n if (this.state.isFetching) {\n if (this.state.dataUpdatedAt && (fetchOptions == null ? void 0 : fetchOptions.cancelRefetch)) {\n // Silently cancel current fetch if the user wants to cancel refetches\n this.cancel({\n silent: true\n });\n } else if (this.promise) {\n var _this$retryer4;\n\n // make sure that retries that were potentially cancelled due to unmounts can continue\n (_this$retryer4 = this.retryer) == null ? void 0 : _this$retryer4.continueRetry(); // Return current promise if we are already fetching\n\n return this.promise;\n }\n } // Update config if passed, otherwise the config from the last execution is used\n\n\n if (options) {\n this.setOptions(options);\n } // Use the options from the first observer with a query function if no function is found.\n // This can happen when the query is hydrated or created with setQueryData.\n\n\n if (!this.options.queryFn) {\n var observer = this.observers.find(function (x) {\n return x.options.queryFn;\n });\n\n if (observer) {\n this.setOptions(observer.options);\n }\n }\n\n var queryKey = ensureQueryKeyArray(this.queryKey);\n var abortController = getAbortController(); // Create query function context\n\n var queryFnContext = {\n queryKey: queryKey,\n pageParam: undefined,\n meta: this.meta\n };\n Object.defineProperty(queryFnContext, 'signal', {\n enumerable: true,\n get: function get() {\n if (abortController) {\n _this2.abortSignalConsumed = true;\n return abortController.signal;\n }\n\n return undefined;\n }\n }); // Create fetch function\n\n var fetchFn = function fetchFn() {\n if (!_this2.options.queryFn) {\n return Promise.reject('Missing queryFn');\n }\n\n _this2.abortSignalConsumed = false;\n return _this2.options.queryFn(queryFnContext);\n }; // Trigger behavior hook\n\n\n var context = {\n fetchOptions: fetchOptions,\n options: this.options,\n queryKey: queryKey,\n state: this.state,\n fetchFn: fetchFn,\n meta: this.meta\n };\n\n if ((_this$options$behavio = this.options.behavior) == null ? void 0 : _this$options$behavio.onFetch) {\n var _this$options$behavio2;\n\n (_this$options$behavio2 = this.options.behavior) == null ? void 0 : _this$options$behavio2.onFetch(context);\n } // Store state in case the current fetch needs to be reverted\n\n\n this.revertState = this.state; // Set to fetching state if not already in it\n\n if (!this.state.isFetching || this.state.fetchMeta !== ((_context$fetchOptions = context.fetchOptions) == null ? void 0 : _context$fetchOptions.meta)) {\n var _context$fetchOptions2;\n\n this.dispatch({\n type: 'fetch',\n meta: (_context$fetchOptions2 = context.fetchOptions) == null ? void 0 : _context$fetchOptions2.meta\n });\n } // Try to fetch the data\n\n\n this.retryer = new Retryer({\n fn: context.fetchFn,\n abort: abortController == null ? void 0 : (_abortController$abor = abortController.abort) == null ? void 0 : _abortController$abor.bind(abortController),\n onSuccess: function onSuccess(data) {\n _this2.setData(data); // Notify cache callback\n\n\n _this2.cache.config.onSuccess == null ? void 0 : _this2.cache.config.onSuccess(data, _this2); // Remove query after fetching if cache time is 0\n\n if (_this2.cacheTime === 0) {\n _this2.optionalRemove();\n }\n },\n onError: function onError(error) {\n // Optimistically update state if needed\n if (!(isCancelledError(error) && error.silent)) {\n _this2.dispatch({\n type: 'error',\n error: error\n });\n }\n\n if (!isCancelledError(error)) {\n // Notify cache callback\n _this2.cache.config.onError == null ? void 0 : _this2.cache.config.onError(error, _this2); // Log error\n\n getLogger().error(error);\n } // Remove query after fetching if cache time is 0\n\n\n if (_this2.cacheTime === 0) {\n _this2.optionalRemove();\n }\n },\n onFail: function onFail() {\n _this2.dispatch({\n type: 'failed'\n });\n },\n onPause: function onPause() {\n _this2.dispatch({\n type: 'pause'\n });\n },\n onContinue: function onContinue() {\n _this2.dispatch({\n type: 'continue'\n });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay\n });\n this.promise = this.retryer.promise;\n return this.promise;\n };\n\n _proto.dispatch = function dispatch(action) {\n var _this3 = this;\n\n this.state = this.reducer(this.state, action);\n notifyManager.batch(function () {\n _this3.observers.forEach(function (observer) {\n observer.onQueryUpdate(action);\n });\n\n _this3.cache.notify({\n query: _this3,\n type: 'queryUpdated',\n action: action\n });\n });\n };\n\n _proto.getDefaultState = function getDefaultState(options) {\n var data = typeof options.initialData === 'function' ? options.initialData() : options.initialData;\n var hasInitialData = typeof options.initialData !== 'undefined';\n var initialDataUpdatedAt = hasInitialData ? typeof options.initialDataUpdatedAt === 'function' ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n var hasData = typeof data !== 'undefined';\n return {\n data: data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt != null ? initialDataUpdatedAt : Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchMeta: null,\n isFetching: false,\n isInvalidated: false,\n isPaused: false,\n status: hasData ? 'success' : 'idle'\n };\n };\n\n _proto.reducer = function reducer(state, action) {\n var _action$meta, _action$dataUpdatedAt;\n\n switch (action.type) {\n case 'failed':\n return _extends({}, state, {\n fetchFailureCount: state.fetchFailureCount + 1\n });\n\n case 'pause':\n return _extends({}, state, {\n isPaused: true\n });\n\n case 'continue':\n return _extends({}, state, {\n isPaused: false\n });\n\n case 'fetch':\n return _extends({}, state, {\n fetchFailureCount: 0,\n fetchMeta: (_action$meta = action.meta) != null ? _action$meta : null,\n isFetching: true,\n isPaused: false\n }, !state.dataUpdatedAt && {\n error: null,\n status: 'loading'\n });\n\n case 'success':\n return _extends({}, state, {\n data: action.data,\n dataUpdateCount: state.dataUpdateCount + 1,\n dataUpdatedAt: (_action$dataUpdatedAt = action.dataUpdatedAt) != null ? _action$dataUpdatedAt : Date.now(),\n error: null,\n fetchFailureCount: 0,\n isFetching: false,\n isInvalidated: false,\n isPaused: false,\n status: 'success'\n });\n\n case 'error':\n var error = action.error;\n\n if (isCancelledError(error) && error.revert && this.revertState) {\n return _extends({}, this.revertState);\n }\n\n return _extends({}, state, {\n error: error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n isFetching: false,\n isPaused: false,\n status: 'error'\n });\n\n case 'invalidate':\n return _extends({}, state, {\n isInvalidated: true\n });\n\n case 'setState':\n return _extends({}, state, action.state);\n\n default:\n return state;\n }\n };\n\n return Query;\n}();","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { hashQueryKeyByOptions, matchQuery, parseFilterArgs } from './utils';\nimport { Query } from './query';\nimport { notifyManager } from './notifyManager';\nimport { Subscribable } from './subscribable';\n// CLASS\nexport var QueryCache = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(QueryCache, _Subscribable);\n\n function QueryCache(config) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.config = config || {};\n _this.queries = [];\n _this.queriesMap = {};\n return _this;\n }\n\n var _proto = QueryCache.prototype;\n\n _proto.build = function build(client, options, state) {\n var _options$queryHash;\n\n var queryKey = options.queryKey;\n var queryHash = (_options$queryHash = options.queryHash) != null ? _options$queryHash : hashQueryKeyByOptions(queryKey, options);\n var query = this.get(queryHash);\n\n if (!query) {\n query = new Query({\n cache: this,\n queryKey: queryKey,\n queryHash: queryHash,\n options: client.defaultQueryOptions(options),\n state: state,\n defaultOptions: client.getQueryDefaults(queryKey),\n meta: options.meta\n });\n this.add(query);\n }\n\n return query;\n };\n\n _proto.add = function add(query) {\n if (!this.queriesMap[query.queryHash]) {\n this.queriesMap[query.queryHash] = query;\n this.queries.push(query);\n this.notify({\n type: 'queryAdded',\n query: query\n });\n }\n };\n\n _proto.remove = function remove(query) {\n var queryInMap = this.queriesMap[query.queryHash];\n\n if (queryInMap) {\n query.destroy();\n this.queries = this.queries.filter(function (x) {\n return x !== query;\n });\n\n if (queryInMap === query) {\n delete this.queriesMap[query.queryHash];\n }\n\n this.notify({\n type: 'queryRemoved',\n query: query\n });\n }\n };\n\n _proto.clear = function clear() {\n var _this2 = this;\n\n notifyManager.batch(function () {\n _this2.queries.forEach(function (query) {\n _this2.remove(query);\n });\n });\n };\n\n _proto.get = function get(queryHash) {\n return this.queriesMap[queryHash];\n };\n\n _proto.getAll = function getAll() {\n return this.queries;\n };\n\n _proto.find = function find(arg1, arg2) {\n var _parseFilterArgs = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs[0];\n\n if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n\n return this.queries.find(function (query) {\n return matchQuery(filters, query);\n });\n };\n\n _proto.findAll = function findAll(arg1, arg2) {\n var _parseFilterArgs2 = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs2[0];\n\n return Object.keys(filters).length > 0 ? this.queries.filter(function (query) {\n return matchQuery(filters, query);\n }) : this.queries;\n };\n\n _proto.notify = function notify(event) {\n var _this3 = this;\n\n notifyManager.batch(function () {\n _this3.listeners.forEach(function (listener) {\n listener(event);\n });\n });\n };\n\n _proto.onFocus = function onFocus() {\n var _this4 = this;\n\n notifyManager.batch(function () {\n _this4.queries.forEach(function (query) {\n query.onFocus();\n });\n });\n };\n\n _proto.onOnline = function onOnline() {\n var _this5 = this;\n\n notifyManager.batch(function () {\n _this5.queries.forEach(function (query) {\n query.onOnline();\n });\n });\n };\n\n return QueryCache;\n}(Subscribable);","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { notifyManager } from './notifyManager';\nimport { Mutation } from './mutation';\nimport { matchMutation, noop } from './utils';\nimport { Subscribable } from './subscribable'; // TYPES\n\n// CLASS\nexport var MutationCache = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(MutationCache, _Subscribable);\n\n function MutationCache(config) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.config = config || {};\n _this.mutations = [];\n _this.mutationId = 0;\n return _this;\n }\n\n var _proto = MutationCache.prototype;\n\n _proto.build = function build(client, options, state) {\n var mutation = new Mutation({\n mutationCache: this,\n mutationId: ++this.mutationId,\n options: client.defaultMutationOptions(options),\n state: state,\n defaultOptions: options.mutationKey ? client.getMutationDefaults(options.mutationKey) : undefined,\n meta: options.meta\n });\n this.add(mutation);\n return mutation;\n };\n\n _proto.add = function add(mutation) {\n this.mutations.push(mutation);\n this.notify(mutation);\n };\n\n _proto.remove = function remove(mutation) {\n this.mutations = this.mutations.filter(function (x) {\n return x !== mutation;\n });\n mutation.cancel();\n this.notify(mutation);\n };\n\n _proto.clear = function clear() {\n var _this2 = this;\n\n notifyManager.batch(function () {\n _this2.mutations.forEach(function (mutation) {\n _this2.remove(mutation);\n });\n });\n };\n\n _proto.getAll = function getAll() {\n return this.mutations;\n };\n\n _proto.find = function find(filters) {\n if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n\n return this.mutations.find(function (mutation) {\n return matchMutation(filters, mutation);\n });\n };\n\n _proto.findAll = function findAll(filters) {\n return this.mutations.filter(function (mutation) {\n return matchMutation(filters, mutation);\n });\n };\n\n _proto.notify = function notify(mutation) {\n var _this3 = this;\n\n notifyManager.batch(function () {\n _this3.listeners.forEach(function (listener) {\n listener(mutation);\n });\n });\n };\n\n _proto.onFocus = function onFocus() {\n this.resumePausedMutations();\n };\n\n _proto.onOnline = function onOnline() {\n this.resumePausedMutations();\n };\n\n _proto.resumePausedMutations = function resumePausedMutations() {\n var pausedMutations = this.mutations.filter(function (x) {\n return x.state.isPaused;\n });\n return notifyManager.batch(function () {\n return pausedMutations.reduce(function (promise, mutation) {\n return promise.then(function () {\n return mutation.continue().catch(noop);\n });\n }, Promise.resolve());\n });\n };\n\n return MutationCache;\n}(Subscribable);","import { isCancelable } from './retryer';\nimport { getAbortController } from './utils';\nexport function infiniteQueryBehavior() {\n return {\n onFetch: function onFetch(context) {\n context.fetchFn = function () {\n var _context$fetchOptions, _context$fetchOptions2, _context$fetchOptions3, _context$fetchOptions4, _context$state$data, _context$state$data2;\n\n var refetchPage = (_context$fetchOptions = context.fetchOptions) == null ? void 0 : (_context$fetchOptions2 = _context$fetchOptions.meta) == null ? void 0 : _context$fetchOptions2.refetchPage;\n var fetchMore = (_context$fetchOptions3 = context.fetchOptions) == null ? void 0 : (_context$fetchOptions4 = _context$fetchOptions3.meta) == null ? void 0 : _context$fetchOptions4.fetchMore;\n var pageParam = fetchMore == null ? void 0 : fetchMore.pageParam;\n var isFetchingNextPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'forward';\n var isFetchingPreviousPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'backward';\n var oldPages = ((_context$state$data = context.state.data) == null ? void 0 : _context$state$data.pages) || [];\n var oldPageParams = ((_context$state$data2 = context.state.data) == null ? void 0 : _context$state$data2.pageParams) || [];\n var abortController = getAbortController();\n var abortSignal = abortController == null ? void 0 : abortController.signal;\n var newPageParams = oldPageParams;\n var cancelled = false; // Get query function\n\n var queryFn = context.options.queryFn || function () {\n return Promise.reject('Missing queryFn');\n };\n\n var buildNewPages = function buildNewPages(pages, param, page, previous) {\n newPageParams = previous ? [param].concat(newPageParams) : [].concat(newPageParams, [param]);\n return previous ? [page].concat(pages) : [].concat(pages, [page]);\n }; // Create function to fetch a page\n\n\n var fetchPage = function fetchPage(pages, manual, param, previous) {\n if (cancelled) {\n return Promise.reject('Cancelled');\n }\n\n if (typeof param === 'undefined' && !manual && pages.length) {\n return Promise.resolve(pages);\n }\n\n var queryFnContext = {\n queryKey: context.queryKey,\n signal: abortSignal,\n pageParam: param,\n meta: context.meta\n };\n var queryFnResult = queryFn(queryFnContext);\n var promise = Promise.resolve(queryFnResult).then(function (page) {\n return buildNewPages(pages, param, page, previous);\n });\n\n if (isCancelable(queryFnResult)) {\n var promiseAsAny = promise;\n promiseAsAny.cancel = queryFnResult.cancel;\n }\n\n return promise;\n };\n\n var promise; // Fetch first page?\n\n if (!oldPages.length) {\n promise = fetchPage([]);\n } // Fetch next page?\n else if (isFetchingNextPage) {\n var manual = typeof pageParam !== 'undefined';\n var param = manual ? pageParam : getNextPageParam(context.options, oldPages);\n promise = fetchPage(oldPages, manual, param);\n } // Fetch previous page?\n else if (isFetchingPreviousPage) {\n var _manual = typeof pageParam !== 'undefined';\n\n var _param = _manual ? pageParam : getPreviousPageParam(context.options, oldPages);\n\n promise = fetchPage(oldPages, _manual, _param, true);\n } // Refetch pages\n else {\n (function () {\n newPageParams = [];\n var manual = typeof context.options.getNextPageParam === 'undefined';\n var shouldFetchFirstPage = refetchPage && oldPages[0] ? refetchPage(oldPages[0], 0, oldPages) : true; // Fetch first page\n\n promise = shouldFetchFirstPage ? fetchPage([], manual, oldPageParams[0]) : Promise.resolve(buildNewPages([], oldPageParams[0], oldPages[0])); // Fetch remaining pages\n\n var _loop = function _loop(i) {\n promise = promise.then(function (pages) {\n var shouldFetchNextPage = refetchPage && oldPages[i] ? refetchPage(oldPages[i], i, oldPages) : true;\n\n if (shouldFetchNextPage) {\n var _param2 = manual ? oldPageParams[i] : getNextPageParam(context.options, pages);\n\n return fetchPage(pages, manual, _param2);\n }\n\n return Promise.resolve(buildNewPages(pages, oldPageParams[i], oldPages[i]));\n });\n };\n\n for (var i = 1; i < oldPages.length; i++) {\n _loop(i);\n }\n })();\n }\n\n var finalPromise = promise.then(function (pages) {\n return {\n pages: pages,\n pageParams: newPageParams\n };\n });\n var finalPromiseAsAny = finalPromise;\n\n finalPromiseAsAny.cancel = function () {\n cancelled = true;\n abortController == null ? void 0 : abortController.abort();\n\n if (isCancelable(promise)) {\n promise.cancel();\n }\n };\n\n return finalPromise;\n };\n }\n };\n}\nexport function getNextPageParam(options, pages) {\n return options.getNextPageParam == null ? void 0 : options.getNextPageParam(pages[pages.length - 1], pages);\n}\nexport function getPreviousPageParam(options, pages) {\n return options.getPreviousPageParam == null ? void 0 : options.getPreviousPageParam(pages[0], pages);\n}\n/**\n * Checks if there is a next page.\n * Returns `undefined` if it cannot be determined.\n */\n\nexport function hasNextPage(options, pages) {\n if (options.getNextPageParam && Array.isArray(pages)) {\n var nextPageParam = getNextPageParam(options, pages);\n return typeof nextPageParam !== 'undefined' && nextPageParam !== null && nextPageParam !== false;\n }\n}\n/**\n * Checks if there is a previous page.\n * Returns `undefined` if it cannot be determined.\n */\n\nexport function hasPreviousPage(options, pages) {\n if (options.getPreviousPageParam && Array.isArray(pages)) {\n var previousPageParam = getPreviousPageParam(options, pages);\n return typeof previousPageParam !== 'undefined' && previousPageParam !== null && previousPageParam !== false;\n }\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { hashQueryKey, noop, parseFilterArgs, parseQueryArgs, partialMatchKey, hashQueryKeyByOptions } from './utils';\nimport { QueryCache } from './queryCache';\nimport { MutationCache } from './mutationCache';\nimport { focusManager } from './focusManager';\nimport { onlineManager } from './onlineManager';\nimport { notifyManager } from './notifyManager';\nimport { infiniteQueryBehavior } from './infiniteQueryBehavior';\n// CLASS\nexport var QueryClient = /*#__PURE__*/function () {\n function QueryClient(config) {\n if (config === void 0) {\n config = {};\n }\n\n this.queryCache = config.queryCache || new QueryCache();\n this.mutationCache = config.mutationCache || new MutationCache();\n this.defaultOptions = config.defaultOptions || {};\n this.queryDefaults = [];\n this.mutationDefaults = [];\n }\n\n var _proto = QueryClient.prototype;\n\n _proto.mount = function mount() {\n var _this = this;\n\n this.unsubscribeFocus = focusManager.subscribe(function () {\n if (focusManager.isFocused() && onlineManager.isOnline()) {\n _this.mutationCache.onFocus();\n\n _this.queryCache.onFocus();\n }\n });\n this.unsubscribeOnline = onlineManager.subscribe(function () {\n if (focusManager.isFocused() && onlineManager.isOnline()) {\n _this.mutationCache.onOnline();\n\n _this.queryCache.onOnline();\n }\n });\n };\n\n _proto.unmount = function unmount() {\n var _this$unsubscribeFocu, _this$unsubscribeOnli;\n\n (_this$unsubscribeFocu = this.unsubscribeFocus) == null ? void 0 : _this$unsubscribeFocu.call(this);\n (_this$unsubscribeOnli = this.unsubscribeOnline) == null ? void 0 : _this$unsubscribeOnli.call(this);\n };\n\n _proto.isFetching = function isFetching(arg1, arg2) {\n var _parseFilterArgs = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs[0];\n\n filters.fetching = true;\n return this.queryCache.findAll(filters).length;\n };\n\n _proto.isMutating = function isMutating(filters) {\n return this.mutationCache.findAll(_extends({}, filters, {\n fetching: true\n })).length;\n };\n\n _proto.getQueryData = function getQueryData(queryKey, filters) {\n var _this$queryCache$find;\n\n return (_this$queryCache$find = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find.state.data;\n };\n\n _proto.getQueriesData = function getQueriesData(queryKeyOrFilters) {\n return this.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref) {\n var queryKey = _ref.queryKey,\n state = _ref.state;\n var data = state.data;\n return [queryKey, data];\n });\n };\n\n _proto.setQueryData = function setQueryData(queryKey, updater, options) {\n var parsedOptions = parseQueryArgs(queryKey);\n var defaultedOptions = this.defaultQueryOptions(parsedOptions);\n return this.queryCache.build(this, defaultedOptions).setData(updater, options);\n };\n\n _proto.setQueriesData = function setQueriesData(queryKeyOrFilters, updater, options) {\n var _this2 = this;\n\n return notifyManager.batch(function () {\n return _this2.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref2) {\n var queryKey = _ref2.queryKey;\n return [queryKey, _this2.setQueryData(queryKey, updater, options)];\n });\n });\n };\n\n _proto.getQueryState = function getQueryState(queryKey, filters) {\n var _this$queryCache$find2;\n\n return (_this$queryCache$find2 = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find2.state;\n };\n\n _proto.removeQueries = function removeQueries(arg1, arg2) {\n var _parseFilterArgs2 = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs2[0];\n\n var queryCache = this.queryCache;\n notifyManager.batch(function () {\n queryCache.findAll(filters).forEach(function (query) {\n queryCache.remove(query);\n });\n });\n };\n\n _proto.resetQueries = function resetQueries(arg1, arg2, arg3) {\n var _this3 = this;\n\n var _parseFilterArgs3 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs3[0],\n options = _parseFilterArgs3[1];\n\n var queryCache = this.queryCache;\n\n var refetchFilters = _extends({}, filters, {\n active: true\n });\n\n return notifyManager.batch(function () {\n queryCache.findAll(filters).forEach(function (query) {\n query.reset();\n });\n return _this3.refetchQueries(refetchFilters, options);\n });\n };\n\n _proto.cancelQueries = function cancelQueries(arg1, arg2, arg3) {\n var _this4 = this;\n\n var _parseFilterArgs4 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs4[0],\n _parseFilterArgs4$ = _parseFilterArgs4[1],\n cancelOptions = _parseFilterArgs4$ === void 0 ? {} : _parseFilterArgs4$;\n\n if (typeof cancelOptions.revert === 'undefined') {\n cancelOptions.revert = true;\n }\n\n var promises = notifyManager.batch(function () {\n return _this4.queryCache.findAll(filters).map(function (query) {\n return query.cancel(cancelOptions);\n });\n });\n return Promise.all(promises).then(noop).catch(noop);\n };\n\n _proto.invalidateQueries = function invalidateQueries(arg1, arg2, arg3) {\n var _ref3,\n _filters$refetchActiv,\n _filters$refetchInact,\n _this5 = this;\n\n var _parseFilterArgs5 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs5[0],\n options = _parseFilterArgs5[1];\n\n var refetchFilters = _extends({}, filters, {\n // if filters.refetchActive is not provided and filters.active is explicitly false,\n // e.g. invalidateQueries({ active: false }), we don't want to refetch active queries\n active: (_ref3 = (_filters$refetchActiv = filters.refetchActive) != null ? _filters$refetchActiv : filters.active) != null ? _ref3 : true,\n inactive: (_filters$refetchInact = filters.refetchInactive) != null ? _filters$refetchInact : false\n });\n\n return notifyManager.batch(function () {\n _this5.queryCache.findAll(filters).forEach(function (query) {\n query.invalidate();\n });\n\n return _this5.refetchQueries(refetchFilters, options);\n });\n };\n\n _proto.refetchQueries = function refetchQueries(arg1, arg2, arg3) {\n var _this6 = this;\n\n var _parseFilterArgs6 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs6[0],\n options = _parseFilterArgs6[1];\n\n var promises = notifyManager.batch(function () {\n return _this6.queryCache.findAll(filters).map(function (query) {\n return query.fetch(undefined, _extends({}, options, {\n meta: {\n refetchPage: filters == null ? void 0 : filters.refetchPage\n }\n }));\n });\n });\n var promise = Promise.all(promises).then(noop);\n\n if (!(options == null ? void 0 : options.throwOnError)) {\n promise = promise.catch(noop);\n }\n\n return promise;\n };\n\n _proto.fetchQuery = function fetchQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n var defaultedOptions = this.defaultQueryOptions(parsedOptions); // https://github.com/tannerlinsley/react-query/issues/652\n\n if (typeof defaultedOptions.retry === 'undefined') {\n defaultedOptions.retry = false;\n }\n\n var query = this.queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(defaultedOptions.staleTime) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n };\n\n _proto.prefetchQuery = function prefetchQuery(arg1, arg2, arg3) {\n return this.fetchQuery(arg1, arg2, arg3).then(noop).catch(noop);\n };\n\n _proto.fetchInfiniteQuery = function fetchInfiniteQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n parsedOptions.behavior = infiniteQueryBehavior();\n return this.fetchQuery(parsedOptions);\n };\n\n _proto.prefetchInfiniteQuery = function prefetchInfiniteQuery(arg1, arg2, arg3) {\n return this.fetchInfiniteQuery(arg1, arg2, arg3).then(noop).catch(noop);\n };\n\n _proto.cancelMutations = function cancelMutations() {\n var _this7 = this;\n\n var promises = notifyManager.batch(function () {\n return _this7.mutationCache.getAll().map(function (mutation) {\n return mutation.cancel();\n });\n });\n return Promise.all(promises).then(noop).catch(noop);\n };\n\n _proto.resumePausedMutations = function resumePausedMutations() {\n return this.getMutationCache().resumePausedMutations();\n };\n\n _proto.executeMutation = function executeMutation(options) {\n return this.mutationCache.build(this, options).execute();\n };\n\n _proto.getQueryCache = function getQueryCache() {\n return this.queryCache;\n };\n\n _proto.getMutationCache = function getMutationCache() {\n return this.mutationCache;\n };\n\n _proto.getDefaultOptions = function getDefaultOptions() {\n return this.defaultOptions;\n };\n\n _proto.setDefaultOptions = function setDefaultOptions(options) {\n this.defaultOptions = options;\n };\n\n _proto.setQueryDefaults = function setQueryDefaults(queryKey, options) {\n var result = this.queryDefaults.find(function (x) {\n return hashQueryKey(queryKey) === hashQueryKey(x.queryKey);\n });\n\n if (result) {\n result.defaultOptions = options;\n } else {\n this.queryDefaults.push({\n queryKey: queryKey,\n defaultOptions: options\n });\n }\n };\n\n _proto.getQueryDefaults = function getQueryDefaults(queryKey) {\n var _this$queryDefaults$f;\n\n return queryKey ? (_this$queryDefaults$f = this.queryDefaults.find(function (x) {\n return partialMatchKey(queryKey, x.queryKey);\n })) == null ? void 0 : _this$queryDefaults$f.defaultOptions : undefined;\n };\n\n _proto.setMutationDefaults = function setMutationDefaults(mutationKey, options) {\n var result = this.mutationDefaults.find(function (x) {\n return hashQueryKey(mutationKey) === hashQueryKey(x.mutationKey);\n });\n\n if (result) {\n result.defaultOptions = options;\n } else {\n this.mutationDefaults.push({\n mutationKey: mutationKey,\n defaultOptions: options\n });\n }\n };\n\n _proto.getMutationDefaults = function getMutationDefaults(mutationKey) {\n var _this$mutationDefault;\n\n return mutationKey ? (_this$mutationDefault = this.mutationDefaults.find(function (x) {\n return partialMatchKey(mutationKey, x.mutationKey);\n })) == null ? void 0 : _this$mutationDefault.defaultOptions : undefined;\n };\n\n _proto.defaultQueryOptions = function defaultQueryOptions(options) {\n if (options == null ? void 0 : options._defaulted) {\n return options;\n }\n\n var defaultedOptions = _extends({}, this.defaultOptions.queries, this.getQueryDefaults(options == null ? void 0 : options.queryKey), options, {\n _defaulted: true\n });\n\n if (!defaultedOptions.queryHash && defaultedOptions.queryKey) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(defaultedOptions.queryKey, defaultedOptions);\n }\n\n return defaultedOptions;\n };\n\n _proto.defaultQueryObserverOptions = function defaultQueryObserverOptions(options) {\n return this.defaultQueryOptions(options);\n };\n\n _proto.defaultMutationOptions = function defaultMutationOptions(options) {\n if (options == null ? void 0 : options._defaulted) {\n return options;\n }\n\n return _extends({}, this.defaultOptions.mutations, this.getMutationDefaults(options == null ? void 0 : options.mutationKey), options, {\n _defaulted: true\n });\n };\n\n _proto.clear = function clear() {\n this.queryCache.clear();\n this.mutationCache.clear();\n };\n\n return QueryClient;\n}();","import { focusManager } from './focusManager';\nimport { onlineManager } from './onlineManager';\nimport { sleep } from './utils';\n\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1000 * Math.pow(2, failureCount), 30000);\n}\n\nexport function isCancelable(value) {\n return typeof (value == null ? void 0 : value.cancel) === 'function';\n}\nexport var CancelledError = function CancelledError(options) {\n this.revert = options == null ? void 0 : options.revert;\n this.silent = options == null ? void 0 : options.silent;\n};\nexport function isCancelledError(value) {\n return value instanceof CancelledError;\n} // CLASS\n\nexport var Retryer = function Retryer(config) {\n var _this = this;\n\n var cancelRetry = false;\n var cancelFn;\n var continueFn;\n var promiseResolve;\n var promiseReject;\n this.abort = config.abort;\n\n this.cancel = function (cancelOptions) {\n return cancelFn == null ? void 0 : cancelFn(cancelOptions);\n };\n\n this.cancelRetry = function () {\n cancelRetry = true;\n };\n\n this.continueRetry = function () {\n cancelRetry = false;\n };\n\n this.continue = function () {\n return continueFn == null ? void 0 : continueFn();\n };\n\n this.failureCount = 0;\n this.isPaused = false;\n this.isResolved = false;\n this.isTransportCancelable = false;\n this.promise = new Promise(function (outerResolve, outerReject) {\n promiseResolve = outerResolve;\n promiseReject = outerReject;\n });\n\n var resolve = function resolve(value) {\n if (!_this.isResolved) {\n _this.isResolved = true;\n config.onSuccess == null ? void 0 : config.onSuccess(value);\n continueFn == null ? void 0 : continueFn();\n promiseResolve(value);\n }\n };\n\n var reject = function reject(value) {\n if (!_this.isResolved) {\n _this.isResolved = true;\n config.onError == null ? void 0 : config.onError(value);\n continueFn == null ? void 0 : continueFn();\n promiseReject(value);\n }\n };\n\n var pause = function pause() {\n return new Promise(function (continueResolve) {\n continueFn = continueResolve;\n _this.isPaused = true;\n config.onPause == null ? void 0 : config.onPause();\n }).then(function () {\n continueFn = undefined;\n _this.isPaused = false;\n config.onContinue == null ? void 0 : config.onContinue();\n });\n }; // Create loop function\n\n\n var run = function run() {\n // Do nothing if already resolved\n if (_this.isResolved) {\n return;\n }\n\n var promiseOrValue; // Execute query\n\n try {\n promiseOrValue = config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n } // Create callback to cancel this fetch\n\n\n cancelFn = function cancelFn(cancelOptions) {\n if (!_this.isResolved) {\n reject(new CancelledError(cancelOptions));\n _this.abort == null ? void 0 : _this.abort(); // Cancel transport if supported\n\n if (isCancelable(promiseOrValue)) {\n try {\n promiseOrValue.cancel();\n } catch (_unused) {}\n }\n }\n }; // Check if the transport layer support cancellation\n\n\n _this.isTransportCancelable = isCancelable(promiseOrValue);\n Promise.resolve(promiseOrValue).then(resolve).catch(function (error) {\n var _config$retry, _config$retryDelay;\n\n // Stop if the fetch is already resolved\n if (_this.isResolved) {\n return;\n } // Do we need to retry the request?\n\n\n var retry = (_config$retry = config.retry) != null ? _config$retry : 3;\n var retryDelay = (_config$retryDelay = config.retryDelay) != null ? _config$retryDelay : defaultRetryDelay;\n var delay = typeof retryDelay === 'function' ? retryDelay(_this.failureCount, error) : retryDelay;\n var shouldRetry = retry === true || typeof retry === 'number' && _this.failureCount < retry || typeof retry === 'function' && retry(_this.failureCount, error);\n\n if (cancelRetry || !shouldRetry) {\n // We are done if the query does not need to be retried\n reject(error);\n return;\n }\n\n _this.failureCount++; // Notify on fail\n\n config.onFail == null ? void 0 : config.onFail(_this.failureCount, error); // Delay\n\n sleep(delay) // Pause if the document is not visible or when the device is offline\n .then(function () {\n if (!focusManager.isFocused() || !onlineManager.isOnline()) {\n return pause();\n }\n }).then(function () {\n if (cancelRetry) {\n reject(error);\n } else {\n run();\n }\n });\n });\n }; // Start loop\n\n\n run();\n};","export var Subscribable = /*#__PURE__*/function () {\n function Subscribable() {\n this.listeners = [];\n }\n\n var _proto = Subscribable.prototype;\n\n _proto.subscribe = function subscribe(listener) {\n var _this = this;\n\n var callback = listener || function () {\n return undefined;\n };\n\n this.listeners.push(callback);\n this.onSubscribe();\n return function () {\n _this.listeners = _this.listeners.filter(function (x) {\n return x !== callback;\n });\n\n _this.onUnsubscribe();\n };\n };\n\n _proto.hasListeners = function hasListeners() {\n return this.listeners.length > 0;\n };\n\n _proto.onSubscribe = function onSubscribe() {// Do nothing\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {// Do nothing\n };\n\n return Subscribable;\n}();","import React from 'react';\nvar defaultContext = /*#__PURE__*/React.createContext(undefined);\nvar QueryClientSharingContext = /*#__PURE__*/React.createContext(false); // if contextSharing is on, we share the first and at least one\n// instance of the context across the window\n// to ensure that if React Query is used across\n// different bundles or microfrontends they will\n// all use the same **instance** of context, regardless\n// of module scoping.\n\nfunction getQueryClientContext(contextSharing) {\n if (contextSharing && typeof window !== 'undefined') {\n if (!window.ReactQueryClientContext) {\n window.ReactQueryClientContext = defaultContext;\n }\n\n return window.ReactQueryClientContext;\n }\n\n return defaultContext;\n}\n\nexport var useQueryClient = function useQueryClient() {\n var queryClient = React.useContext(getQueryClientContext(React.useContext(QueryClientSharingContext)));\n\n if (!queryClient) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one');\n }\n\n return queryClient;\n};\nexport var QueryClientProvider = function QueryClientProvider(_ref) {\n var client = _ref.client,\n _ref$contextSharing = _ref.contextSharing,\n contextSharing = _ref$contextSharing === void 0 ? false : _ref$contextSharing,\n children = _ref.children;\n React.useEffect(function () {\n client.mount();\n return function () {\n client.unmount();\n };\n }, [client]);\n var Context = getQueryClientContext(contextSharing);\n return /*#__PURE__*/React.createElement(QueryClientSharingContext.Provider, {\n value: contextSharing\n }, /*#__PURE__*/React.createElement(Context.Provider, {\n value: client\n }, children));\n};","import { notifyManager } from '../core';\nimport { unstable_batchedUpdates } from './reactBatchedUpdates';\nnotifyManager.setBatchNotifyFunction(unstable_batchedUpdates);","import ReactDOM from 'react-dom';\nexport var unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates;","export var logger = console;","import { setLogger } from '../core';\nimport { logger } from './logger';\nsetLogger(logger);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { getDefaultState } from './mutation';\nimport { notifyManager } from './notifyManager';\nimport { Subscribable } from './subscribable';\n// CLASS\nexport var MutationObserver = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(MutationObserver, _Subscribable);\n\n function MutationObserver(client, options) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.client = client;\n\n _this.setOptions(options);\n\n _this.bindMethods();\n\n _this.updateResult();\n\n return _this;\n }\n\n var _proto = MutationObserver.prototype;\n\n _proto.bindMethods = function bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n };\n\n _proto.setOptions = function setOptions(options) {\n this.options = this.client.defaultMutationOptions(options);\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.listeners.length) {\n var _this$currentMutation;\n\n (_this$currentMutation = this.currentMutation) == null ? void 0 : _this$currentMutation.removeObserver(this);\n }\n };\n\n _proto.onMutationUpdate = function onMutationUpdate(action) {\n this.updateResult(); // Determine which callbacks to trigger\n\n var notifyOptions = {\n listeners: true\n };\n\n if (action.type === 'success') {\n notifyOptions.onSuccess = true;\n } else if (action.type === 'error') {\n notifyOptions.onError = true;\n }\n\n this.notify(notifyOptions);\n };\n\n _proto.getCurrentResult = function getCurrentResult() {\n return this.currentResult;\n };\n\n _proto.reset = function reset() {\n this.currentMutation = undefined;\n this.updateResult();\n this.notify({\n listeners: true\n });\n };\n\n _proto.mutate = function mutate(variables, options) {\n this.mutateOptions = options;\n\n if (this.currentMutation) {\n this.currentMutation.removeObserver(this);\n }\n\n this.currentMutation = this.client.getMutationCache().build(this.client, _extends({}, this.options, {\n variables: typeof variables !== 'undefined' ? variables : this.options.variables\n }));\n this.currentMutation.addObserver(this);\n return this.currentMutation.execute();\n };\n\n _proto.updateResult = function updateResult() {\n var state = this.currentMutation ? this.currentMutation.state : getDefaultState();\n\n var result = _extends({}, state, {\n isLoading: state.status === 'loading',\n isSuccess: state.status === 'success',\n isError: state.status === 'error',\n isIdle: state.status === 'idle',\n mutate: this.mutate,\n reset: this.reset\n });\n\n this.currentResult = result;\n };\n\n _proto.notify = function notify(options) {\n var _this2 = this;\n\n notifyManager.batch(function () {\n // First trigger the mutate callbacks\n if (_this2.mutateOptions) {\n if (options.onSuccess) {\n _this2.mutateOptions.onSuccess == null ? void 0 : _this2.mutateOptions.onSuccess(_this2.currentResult.data, _this2.currentResult.variables, _this2.currentResult.context);\n _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(_this2.currentResult.data, null, _this2.currentResult.variables, _this2.currentResult.context);\n } else if (options.onError) {\n _this2.mutateOptions.onError == null ? void 0 : _this2.mutateOptions.onError(_this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);\n _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(undefined, _this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);\n }\n } // Then trigger the listeners\n\n\n if (options.listeners) {\n _this2.listeners.forEach(function (listener) {\n listener(_this2.currentResult);\n });\n }\n });\n };\n\n return MutationObserver;\n}(Subscribable);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React from 'react';\nimport { notifyManager } from '../core/notifyManager';\nimport { noop, parseMutationArgs } from '../core/utils';\nimport { MutationObserver } from '../core/mutationObserver';\nimport { useQueryClient } from './QueryClientProvider';\nimport { shouldThrowError } from './utils'; // HOOK\n\nexport function useMutation(arg1, arg2, arg3) {\n var mountedRef = React.useRef(false);\n\n var _React$useState = React.useState(0),\n forceUpdate = _React$useState[1];\n\n var options = parseMutationArgs(arg1, arg2, arg3);\n var queryClient = useQueryClient();\n var obsRef = React.useRef();\n\n if (!obsRef.current) {\n obsRef.current = new MutationObserver(queryClient, options);\n } else {\n obsRef.current.setOptions(options);\n }\n\n var currentResult = obsRef.current.getCurrentResult();\n React.useEffect(function () {\n mountedRef.current = true;\n var unsubscribe = obsRef.current.subscribe(notifyManager.batchCalls(function () {\n if (mountedRef.current) {\n forceUpdate(function (x) {\n return x + 1;\n });\n }\n }));\n return function () {\n mountedRef.current = false;\n unsubscribe();\n };\n }, []);\n var mutate = React.useCallback(function (variables, mutateOptions) {\n obsRef.current.mutate(variables, mutateOptions).catch(noop);\n }, []);\n\n if (currentResult.error && shouldThrowError(undefined, obsRef.current.options.useErrorBoundary, [currentResult.error])) {\n throw currentResult.error;\n }\n\n return _extends({}, currentResult, {\n mutate: mutate,\n mutateAsync: currentResult.mutate\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { isServer, isValidTimeout, noop, replaceEqualDeep, shallowEqualObjects, timeUntilStale } from './utils';\nimport { notifyManager } from './notifyManager';\nimport { focusManager } from './focusManager';\nimport { Subscribable } from './subscribable';\nimport { getLogger } from './logger';\nimport { isCancelledError } from './retryer';\nexport var QueryObserver = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(QueryObserver, _Subscribable);\n\n function QueryObserver(client, options) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.client = client;\n _this.options = options;\n _this.trackedProps = [];\n _this.previousSelectError = null;\n\n _this.bindMethods();\n\n _this.setOptions(options);\n\n return _this;\n }\n\n var _proto = QueryObserver.prototype;\n\n _proto.bindMethods = function bindMethods() {\n this.remove = this.remove.bind(this);\n this.refetch = this.refetch.bind(this);\n };\n\n _proto.onSubscribe = function onSubscribe() {\n if (this.listeners.length === 1) {\n this.currentQuery.addObserver(this);\n\n if (shouldFetchOnMount(this.currentQuery, this.options)) {\n this.executeFetch();\n }\n\n this.updateTimers();\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.listeners.length) {\n this.destroy();\n }\n };\n\n _proto.shouldFetchOnReconnect = function shouldFetchOnReconnect() {\n return _shouldFetchOnReconnect(this.currentQuery, this.options);\n };\n\n _proto.shouldFetchOnWindowFocus = function shouldFetchOnWindowFocus() {\n return _shouldFetchOnWindowFocus(this.currentQuery, this.options);\n };\n\n _proto.destroy = function destroy() {\n this.listeners = [];\n this.clearTimers();\n this.currentQuery.removeObserver(this);\n };\n\n _proto.setOptions = function setOptions(options, notifyOptions) {\n var prevOptions = this.options;\n var prevQuery = this.currentQuery;\n this.options = this.client.defaultQueryObserverOptions(options);\n\n if (typeof this.options.enabled !== 'undefined' && typeof this.options.enabled !== 'boolean') {\n throw new Error('Expected enabled to be a boolean');\n } // Keep previous query key if the user does not supply one\n\n\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey;\n }\n\n this.updateQuery();\n var mounted = this.hasListeners(); // Fetch if there are subscribers\n\n if (mounted && shouldFetchOptionally(this.currentQuery, prevQuery, this.options, prevOptions)) {\n this.executeFetch();\n } // Update result\n\n\n this.updateResult(notifyOptions); // Update stale interval if needed\n\n if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.staleTime !== prevOptions.staleTime)) {\n this.updateStaleTimeout();\n }\n\n var nextRefetchInterval = this.computeRefetchInterval(); // Update refetch interval if needed\n\n if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || nextRefetchInterval !== this.currentRefetchInterval)) {\n this.updateRefetchInterval(nextRefetchInterval);\n }\n };\n\n _proto.getOptimisticResult = function getOptimisticResult(options) {\n var defaultedOptions = this.client.defaultQueryObserverOptions(options);\n var query = this.client.getQueryCache().build(this.client, defaultedOptions);\n return this.createResult(query, defaultedOptions);\n };\n\n _proto.getCurrentResult = function getCurrentResult() {\n return this.currentResult;\n };\n\n _proto.trackResult = function trackResult(result, defaultedOptions) {\n var _this2 = this;\n\n var trackedResult = {};\n\n var trackProp = function trackProp(key) {\n if (!_this2.trackedProps.includes(key)) {\n _this2.trackedProps.push(key);\n }\n };\n\n Object.keys(result).forEach(function (key) {\n Object.defineProperty(trackedResult, key, {\n configurable: false,\n enumerable: true,\n get: function get() {\n trackProp(key);\n return result[key];\n }\n });\n });\n\n if (defaultedOptions.useErrorBoundary || defaultedOptions.suspense) {\n trackProp('error');\n }\n\n return trackedResult;\n };\n\n _proto.getNextResult = function getNextResult(options) {\n var _this3 = this;\n\n return new Promise(function (resolve, reject) {\n var unsubscribe = _this3.subscribe(function (result) {\n if (!result.isFetching) {\n unsubscribe();\n\n if (result.isError && (options == null ? void 0 : options.throwOnError)) {\n reject(result.error);\n } else {\n resolve(result);\n }\n }\n });\n });\n };\n\n _proto.getCurrentQuery = function getCurrentQuery() {\n return this.currentQuery;\n };\n\n _proto.remove = function remove() {\n this.client.getQueryCache().remove(this.currentQuery);\n };\n\n _proto.refetch = function refetch(options) {\n return this.fetch(_extends({}, options, {\n meta: {\n refetchPage: options == null ? void 0 : options.refetchPage\n }\n }));\n };\n\n _proto.fetchOptimistic = function fetchOptimistic(options) {\n var _this4 = this;\n\n var defaultedOptions = this.client.defaultQueryObserverOptions(options);\n var query = this.client.getQueryCache().build(this.client, defaultedOptions);\n return query.fetch().then(function () {\n return _this4.createResult(query, defaultedOptions);\n });\n };\n\n _proto.fetch = function fetch(fetchOptions) {\n var _this5 = this;\n\n return this.executeFetch(fetchOptions).then(function () {\n _this5.updateResult();\n\n return _this5.currentResult;\n });\n };\n\n _proto.executeFetch = function executeFetch(fetchOptions) {\n // Make sure we reference the latest query as the current one might have been removed\n this.updateQuery(); // Fetch\n\n var promise = this.currentQuery.fetch(this.options, fetchOptions);\n\n if (!(fetchOptions == null ? void 0 : fetchOptions.throwOnError)) {\n promise = promise.catch(noop);\n }\n\n return promise;\n };\n\n _proto.updateStaleTimeout = function updateStaleTimeout() {\n var _this6 = this;\n\n this.clearStaleTimeout();\n\n if (isServer || this.currentResult.isStale || !isValidTimeout(this.options.staleTime)) {\n return;\n }\n\n var time = timeUntilStale(this.currentResult.dataUpdatedAt, this.options.staleTime); // The timeout is sometimes triggered 1 ms before the stale time expiration.\n // To mitigate this issue we always add 1 ms to the timeout.\n\n var timeout = time + 1;\n this.staleTimeoutId = setTimeout(function () {\n if (!_this6.currentResult.isStale) {\n _this6.updateResult();\n }\n }, timeout);\n };\n\n _proto.computeRefetchInterval = function computeRefetchInterval() {\n var _this$options$refetch;\n\n return typeof this.options.refetchInterval === 'function' ? this.options.refetchInterval(this.currentResult.data, this.currentQuery) : (_this$options$refetch = this.options.refetchInterval) != null ? _this$options$refetch : false;\n };\n\n _proto.updateRefetchInterval = function updateRefetchInterval(nextInterval) {\n var _this7 = this;\n\n this.clearRefetchInterval();\n this.currentRefetchInterval = nextInterval;\n\n if (isServer || this.options.enabled === false || !isValidTimeout(this.currentRefetchInterval) || this.currentRefetchInterval === 0) {\n return;\n }\n\n this.refetchIntervalId = setInterval(function () {\n if (_this7.options.refetchIntervalInBackground || focusManager.isFocused()) {\n _this7.executeFetch();\n }\n }, this.currentRefetchInterval);\n };\n\n _proto.updateTimers = function updateTimers() {\n this.updateStaleTimeout();\n this.updateRefetchInterval(this.computeRefetchInterval());\n };\n\n _proto.clearTimers = function clearTimers() {\n this.clearStaleTimeout();\n this.clearRefetchInterval();\n };\n\n _proto.clearStaleTimeout = function clearStaleTimeout() {\n clearTimeout(this.staleTimeoutId);\n this.staleTimeoutId = undefined;\n };\n\n _proto.clearRefetchInterval = function clearRefetchInterval() {\n clearInterval(this.refetchIntervalId);\n this.refetchIntervalId = undefined;\n };\n\n _proto.createResult = function createResult(query, options) {\n var prevQuery = this.currentQuery;\n var prevOptions = this.options;\n var prevResult = this.currentResult;\n var prevResultState = this.currentResultState;\n var prevResultOptions = this.currentResultOptions;\n var queryChange = query !== prevQuery;\n var queryInitialState = queryChange ? query.state : this.currentQueryInitialState;\n var prevQueryResult = queryChange ? this.currentResult : this.previousQueryResult;\n var state = query.state;\n var dataUpdatedAt = state.dataUpdatedAt,\n error = state.error,\n errorUpdatedAt = state.errorUpdatedAt,\n isFetching = state.isFetching,\n status = state.status;\n var isPreviousData = false;\n var isPlaceholderData = false;\n var data; // Optimistically set result in fetching state if needed\n\n if (options.optimisticResults) {\n var mounted = this.hasListeners();\n var fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n var fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n\n if (fetchOnMount || fetchOptionally) {\n isFetching = true;\n\n if (!dataUpdatedAt) {\n status = 'loading';\n }\n }\n } // Keep previous data if needed\n\n\n if (options.keepPreviousData && !state.dataUpdateCount && (prevQueryResult == null ? void 0 : prevQueryResult.isSuccess) && status !== 'error') {\n data = prevQueryResult.data;\n dataUpdatedAt = prevQueryResult.dataUpdatedAt;\n status = prevQueryResult.status;\n isPreviousData = true;\n } // Select data if needed\n else if (options.select && typeof state.data !== 'undefined') {\n var _this$previousSelect;\n\n // Memoize select result\n if (prevResult && state.data === (prevResultState == null ? void 0 : prevResultState.data) && options.select === ((_this$previousSelect = this.previousSelect) == null ? void 0 : _this$previousSelect.fn) && !this.previousSelectError) {\n data = this.previousSelect.result;\n } else {\n try {\n data = options.select(state.data);\n\n if (options.structuralSharing !== false) {\n data = replaceEqualDeep(prevResult == null ? void 0 : prevResult.data, data);\n }\n\n this.previousSelect = {\n fn: options.select,\n result: data\n };\n this.previousSelectError = null;\n } catch (selectError) {\n getLogger().error(selectError);\n error = selectError;\n this.previousSelectError = selectError;\n errorUpdatedAt = Date.now();\n status = 'error';\n }\n }\n } // Use query data\n else {\n data = state.data;\n } // Show placeholder data if needed\n\n\n if (typeof options.placeholderData !== 'undefined' && typeof data === 'undefined' && (status === 'loading' || status === 'idle')) {\n var placeholderData; // Memoize placeholder data\n\n if ((prevResult == null ? void 0 : prevResult.isPlaceholderData) && options.placeholderData === (prevResultOptions == null ? void 0 : prevResultOptions.placeholderData)) {\n placeholderData = prevResult.data;\n } else {\n placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData() : options.placeholderData;\n\n if (options.select && typeof placeholderData !== 'undefined') {\n try {\n placeholderData = options.select(placeholderData);\n\n if (options.structuralSharing !== false) {\n placeholderData = replaceEqualDeep(prevResult == null ? void 0 : prevResult.data, placeholderData);\n }\n\n this.previousSelectError = null;\n } catch (selectError) {\n getLogger().error(selectError);\n error = selectError;\n this.previousSelectError = selectError;\n errorUpdatedAt = Date.now();\n status = 'error';\n }\n }\n }\n\n if (typeof placeholderData !== 'undefined') {\n status = 'success';\n data = placeholderData;\n isPlaceholderData = true;\n }\n }\n\n var result = {\n status: status,\n isLoading: status === 'loading',\n isSuccess: status === 'success',\n isError: status === 'error',\n isIdle: status === 'idle',\n data: data,\n dataUpdatedAt: dataUpdatedAt,\n error: error,\n errorUpdatedAt: errorUpdatedAt,\n failureCount: state.fetchFailureCount,\n isFetched: state.dataUpdateCount > 0 || state.errorUpdateCount > 0,\n isFetchedAfterMount: state.dataUpdateCount > queryInitialState.dataUpdateCount || state.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching: isFetching,\n isRefetching: isFetching && status !== 'loading',\n isLoadingError: status === 'error' && state.dataUpdatedAt === 0,\n isPlaceholderData: isPlaceholderData,\n isPreviousData: isPreviousData,\n isRefetchError: status === 'error' && state.dataUpdatedAt !== 0,\n isStale: isStale(query, options),\n refetch: this.refetch,\n remove: this.remove\n };\n return result;\n };\n\n _proto.shouldNotifyListeners = function shouldNotifyListeners(result, prevResult) {\n if (!prevResult) {\n return true;\n }\n\n var _this$options = this.options,\n notifyOnChangeProps = _this$options.notifyOnChangeProps,\n notifyOnChangePropsExclusions = _this$options.notifyOnChangePropsExclusions;\n\n if (!notifyOnChangeProps && !notifyOnChangePropsExclusions) {\n return true;\n }\n\n if (notifyOnChangeProps === 'tracked' && !this.trackedProps.length) {\n return true;\n }\n\n var includedProps = notifyOnChangeProps === 'tracked' ? this.trackedProps : notifyOnChangeProps;\n return Object.keys(result).some(function (key) {\n var typedKey = key;\n var changed = result[typedKey] !== prevResult[typedKey];\n var isIncluded = includedProps == null ? void 0 : includedProps.some(function (x) {\n return x === key;\n });\n var isExcluded = notifyOnChangePropsExclusions == null ? void 0 : notifyOnChangePropsExclusions.some(function (x) {\n return x === key;\n });\n return changed && !isExcluded && (!includedProps || isIncluded);\n });\n };\n\n _proto.updateResult = function updateResult(notifyOptions) {\n var prevResult = this.currentResult;\n this.currentResult = this.createResult(this.currentQuery, this.options);\n this.currentResultState = this.currentQuery.state;\n this.currentResultOptions = this.options; // Only notify if something has changed\n\n if (shallowEqualObjects(this.currentResult, prevResult)) {\n return;\n } // Determine which callbacks to trigger\n\n\n var defaultNotifyOptions = {\n cache: true\n };\n\n if ((notifyOptions == null ? void 0 : notifyOptions.listeners) !== false && this.shouldNotifyListeners(this.currentResult, prevResult)) {\n defaultNotifyOptions.listeners = true;\n }\n\n this.notify(_extends({}, defaultNotifyOptions, notifyOptions));\n };\n\n _proto.updateQuery = function updateQuery() {\n var query = this.client.getQueryCache().build(this.client, this.options);\n\n if (query === this.currentQuery) {\n return;\n }\n\n var prevQuery = this.currentQuery;\n this.currentQuery = query;\n this.currentQueryInitialState = query.state;\n this.previousQueryResult = this.currentResult;\n\n if (this.hasListeners()) {\n prevQuery == null ? void 0 : prevQuery.removeObserver(this);\n query.addObserver(this);\n }\n };\n\n _proto.onQueryUpdate = function onQueryUpdate(action) {\n var notifyOptions = {};\n\n if (action.type === 'success') {\n notifyOptions.onSuccess = true;\n } else if (action.type === 'error' && !isCancelledError(action.error)) {\n notifyOptions.onError = true;\n }\n\n this.updateResult(notifyOptions);\n\n if (this.hasListeners()) {\n this.updateTimers();\n }\n };\n\n _proto.notify = function notify(notifyOptions) {\n var _this8 = this;\n\n notifyManager.batch(function () {\n // First trigger the configuration callbacks\n if (notifyOptions.onSuccess) {\n _this8.options.onSuccess == null ? void 0 : _this8.options.onSuccess(_this8.currentResult.data);\n _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(_this8.currentResult.data, null);\n } else if (notifyOptions.onError) {\n _this8.options.onError == null ? void 0 : _this8.options.onError(_this8.currentResult.error);\n _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(undefined, _this8.currentResult.error);\n } // Then trigger the listeners\n\n\n if (notifyOptions.listeners) {\n _this8.listeners.forEach(function (listener) {\n listener(_this8.currentResult);\n });\n } // Then the cache listeners\n\n\n if (notifyOptions.cache) {\n _this8.client.getQueryCache().notify({\n query: _this8.currentQuery,\n type: 'observerResultsUpdated'\n });\n }\n });\n };\n\n return QueryObserver;\n}(Subscribable);\n\nfunction shouldLoadOnMount(query, options) {\n return options.enabled !== false && !query.state.dataUpdatedAt && !(query.state.status === 'error' && options.retryOnMount === false);\n}\n\nfunction shouldRefetchOnMount(query, options) {\n return options.enabled !== false && query.state.dataUpdatedAt > 0 && (options.refetchOnMount === 'always' || options.refetchOnMount !== false && isStale(query, options));\n}\n\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || shouldRefetchOnMount(query, options);\n}\n\nfunction _shouldFetchOnReconnect(query, options) {\n return options.enabled !== false && (options.refetchOnReconnect === 'always' || options.refetchOnReconnect !== false && isStale(query, options));\n}\n\nfunction _shouldFetchOnWindowFocus(query, options) {\n return options.enabled !== false && (options.refetchOnWindowFocus === 'always' || options.refetchOnWindowFocus !== false && isStale(query, options));\n}\n\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return options.enabled !== false && (query !== prevQuery || prevOptions.enabled === false) && (!options.suspense || query.state.status !== 'error') && isStale(query, options);\n}\n\nfunction isStale(query, options) {\n return query.isStaleByTime(options.staleTime);\n}","import React from 'react'; // CONTEXT\n\nfunction createValue() {\n var _isReset = false;\n return {\n clearReset: function clearReset() {\n _isReset = false;\n },\n reset: function reset() {\n _isReset = true;\n },\n isReset: function isReset() {\n return _isReset;\n }\n };\n}\n\nvar QueryErrorResetBoundaryContext = /*#__PURE__*/React.createContext(createValue()); // HOOK\n\nexport var useQueryErrorResetBoundary = function useQueryErrorResetBoundary() {\n return React.useContext(QueryErrorResetBoundaryContext);\n}; // COMPONENT\n\nexport var QueryErrorResetBoundary = function QueryErrorResetBoundary(_ref) {\n var children = _ref.children;\n var value = React.useMemo(function () {\n return createValue();\n }, []);\n return /*#__PURE__*/React.createElement(QueryErrorResetBoundaryContext.Provider, {\n value: value\n }, typeof children === 'function' ? children(value) : children);\n};","import React from 'react';\nimport { notifyManager } from '../core/notifyManager';\nimport { useQueryErrorResetBoundary } from './QueryErrorResetBoundary';\nimport { useQueryClient } from './QueryClientProvider';\nimport { shouldThrowError } from './utils';\nexport function useBaseQuery(options, Observer) {\n var mountedRef = React.useRef(false);\n\n var _React$useState = React.useState(0),\n forceUpdate = _React$useState[1];\n\n var queryClient = useQueryClient();\n var errorResetBoundary = useQueryErrorResetBoundary();\n var defaultedOptions = queryClient.defaultQueryObserverOptions(options); // Make sure results are optimistically set in fetching state before subscribing or updating options\n\n defaultedOptions.optimisticResults = true; // Include callbacks in batch renders\n\n if (defaultedOptions.onError) {\n defaultedOptions.onError = notifyManager.batchCalls(defaultedOptions.onError);\n }\n\n if (defaultedOptions.onSuccess) {\n defaultedOptions.onSuccess = notifyManager.batchCalls(defaultedOptions.onSuccess);\n }\n\n if (defaultedOptions.onSettled) {\n defaultedOptions.onSettled = notifyManager.batchCalls(defaultedOptions.onSettled);\n }\n\n if (defaultedOptions.suspense) {\n // Always set stale time when using suspense to prevent\n // fetching again when directly mounting after suspending\n if (typeof defaultedOptions.staleTime !== 'number') {\n defaultedOptions.staleTime = 1000;\n } // Set cache time to 1 if the option has been set to 0\n // when using suspense to prevent infinite loop of fetches\n\n\n if (defaultedOptions.cacheTime === 0) {\n defaultedOptions.cacheTime = 1;\n }\n }\n\n if (defaultedOptions.suspense || defaultedOptions.useErrorBoundary) {\n // Prevent retrying failed query if the error boundary has not been reset yet\n if (!errorResetBoundary.isReset()) {\n defaultedOptions.retryOnMount = false;\n }\n }\n\n var _React$useState2 = React.useState(function () {\n return new Observer(queryClient, defaultedOptions);\n }),\n observer = _React$useState2[0];\n\n var result = observer.getOptimisticResult(defaultedOptions);\n React.useEffect(function () {\n mountedRef.current = true;\n errorResetBoundary.clearReset();\n var unsubscribe = observer.subscribe(notifyManager.batchCalls(function () {\n if (mountedRef.current) {\n forceUpdate(function (x) {\n return x + 1;\n });\n }\n })); // Update result to make sure we did not miss any query updates\n // between creating the observer and subscribing to it.\n\n observer.updateResult();\n return function () {\n mountedRef.current = false;\n unsubscribe();\n };\n }, [errorResetBoundary, observer]);\n React.useEffect(function () {\n // Do not notify on updates because of changes in the options because\n // these changes should already be reflected in the optimistic result.\n observer.setOptions(defaultedOptions, {\n listeners: false\n });\n }, [defaultedOptions, observer]); // Handle suspense\n\n if (defaultedOptions.suspense && result.isLoading) {\n throw observer.fetchOptimistic(defaultedOptions).then(function (_ref) {\n var data = _ref.data;\n defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);\n defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);\n }).catch(function (error) {\n errorResetBoundary.clearReset();\n defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);\n defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);\n });\n } // Handle error boundary\n\n\n if (result.isError && !errorResetBoundary.isReset() && !result.isFetching && shouldThrowError(defaultedOptions.suspense, defaultedOptions.useErrorBoundary, [result.error, observer.getCurrentQuery()])) {\n throw result.error;\n } // Handle result property usage tracking\n\n\n if (defaultedOptions.notifyOnChangeProps === 'tracked') {\n result = observer.trackResult(result, defaultedOptions);\n }\n\n return result;\n}","import { QueryObserver } from '../core';\nimport { parseQueryArgs } from '../core/utils';\nimport { useBaseQuery } from './useBaseQuery'; // HOOK\n\nexport function useQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n return useBaseQuery(parsedOptions, QueryObserver);\n}","import React from 'react';\nexport var ReactReduxContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== 'production') {\n ReactReduxContext.displayName = 'ReactRedux';\n}\n\nexport default ReactReduxContext;","import React, { useMemo, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { ReactReduxContext } from './Context';\nimport Subscription from '../utils/Subscription';\n\nfunction Provider(_ref) {\n var store = _ref.store,\n context = _ref.context,\n children = _ref.children;\n var contextValue = useMemo(function () {\n var subscription = new Subscription(store);\n subscription.onStateChange = subscription.notifyNestedSubs;\n return {\n store: store,\n subscription: subscription\n };\n }, [store]);\n var previousState = useMemo(function () {\n return store.getState();\n }, [store]);\n useEffect(function () {\n var subscription = contextValue.subscription;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return function () {\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n };\n }, [contextValue, previousState]);\n var Context = context || ReactReduxContext;\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nif (process.env.NODE_ENV !== 'production') {\n Provider.propTypes = {\n store: PropTypes.shape({\n subscribe: PropTypes.func.isRequired,\n dispatch: PropTypes.func.isRequired,\n getState: PropTypes.func.isRequired\n }),\n context: PropTypes.object,\n children: PropTypes.any\n };\n}\n\nexport default Provider;","import { ReactReduxContext } from '../components/Context';\nimport { useStore as useDefaultStore, createStoreHook } from './useStore';\n/**\n * Hook factory, which creates a `useDispatch` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useDispatch` hook bound to the specified context.\n */\n\nexport function createDispatchHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useStore = context === ReactReduxContext ? useDefaultStore : createStoreHook(context);\n return function useDispatch() {\n var store = useStore();\n return store.dispatch;\n };\n}\n/**\n * A hook to access the redux `dispatch` function.\n *\n * @returns {any|function} redux store's `dispatch` function\n *\n * @example\n *\n * import React, { useCallback } from 'react'\n * import { useDispatch } from 'react-redux'\n *\n * export const CounterComponent = ({ value }) => {\n * const dispatch = useDispatch()\n * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])\n * return (\n * <div>\n * <span>{value}</span>\n * <button onClick={increaseCounter}>Increase counter</button>\n * </div>\n * )\n * }\n */\n\nexport var useDispatch = /*#__PURE__*/createDispatchHook();","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\n/**\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\n * hook that you should usually not need to call directly.\n *\n * @returns {any} the value of the `ReactReduxContext`\n *\n * @example\n *\n * import React from 'react'\n * import { useReduxContext } from 'react-redux'\n *\n * export const CounterComponent = ({ value }) => {\n * const { store } = useReduxContext()\n * return <div>{store.getState()}</div>\n * }\n */\n\nexport function useReduxContext() {\n var contextValue = useContext(ReactReduxContext);\n\n if (process.env.NODE_ENV !== 'production' && !contextValue) {\n throw new Error('could not find react-redux context value; please ensure the component is wrapped in a <Provider>');\n }\n\n return contextValue;\n}","import { useReducer, useRef, useMemo, useContext, useDebugValue } from 'react';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport Subscription from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from '../components/Context';\n\nvar refEquality = function refEquality(a, b) {\n return a === b;\n};\n\nfunction useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub) {\n var _useReducer = useReducer(function (s) {\n return s + 1;\n }, 0),\n forceRender = _useReducer[1];\n\n var subscription = useMemo(function () {\n return new Subscription(store, contextSub);\n }, [store, contextSub]);\n var latestSubscriptionCallbackError = useRef();\n var latestSelector = useRef();\n var latestStoreState = useRef();\n var latestSelectedState = useRef();\n var storeState = store.getState();\n var selectedState;\n\n try {\n if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {\n selectedState = selector(storeState);\n } else {\n selectedState = latestSelectedState.current;\n }\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n err.message += \"\\nThe error may be correlated with this previous error:\\n\" + latestSubscriptionCallbackError.current.stack + \"\\n\\n\";\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(function () {\n latestSelector.current = selector;\n latestStoreState.current = storeState;\n latestSelectedState.current = selectedState;\n latestSubscriptionCallbackError.current = undefined;\n });\n useIsomorphicLayoutEffect(function () {\n function checkForUpdates() {\n try {\n var newSelectedState = latestSelector.current(store.getState());\n\n if (equalityFn(newSelectedState, latestSelectedState.current)) {\n return;\n }\n\n latestSelectedState.current = newSelectedState;\n } catch (err) {\n // we ignore all errors here, since when the component\n // is re-rendered, the selectors are called again, and\n // will throw again, if neither props nor store state\n // changed\n latestSubscriptionCallbackError.current = err;\n }\n\n forceRender();\n }\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe();\n checkForUpdates();\n return function () {\n return subscription.tryUnsubscribe();\n };\n }, [store, subscription]);\n return selectedState;\n}\n/**\n * Hook factory, which creates a `useSelector` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useSelector` hook bound to the specified context.\n */\n\n\nexport function createSelectorHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useSelector(selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = refEquality;\n }\n\n if (process.env.NODE_ENV !== 'production' && !selector) {\n throw new Error(\"You must pass a selector to useSelector\");\n }\n\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store,\n contextSub = _useReduxContext.subscription;\n\n var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\n * A hook to access the redux store's state. This hook takes a selector function\n * as an argument. The selector is called with the store state.\n *\n * This hook takes an optional equality comparison function as the second parameter\n * that allows you to customize the way the selected state is compared to determine\n * whether the component needs to be re-rendered.\n *\n * @param {Function} selector the selector function\n * @param {Function=} equalityFn the function that will be used to determine equality\n *\n * @returns {any} the selected state\n *\n * @example\n *\n * import React from 'react'\n * import { useSelector } from 'react-redux'\n *\n * export const CounterComponent = () => {\n * const counter = useSelector(state => state.counter)\n * return <div>{counter}</div>\n * }\n */\n\nexport var useSelector = /*#__PURE__*/createSelectorHook();","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\n/**\n * Hook factory, which creates a `useStore` hook bound to a given context.\n *\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\n * @returns {Function} A `useStore` hook bound to the specified context.\n */\n\nexport function createStoreHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useStore() {\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store;\n\n return store;\n };\n}\n/**\n * A hook to access the redux store.\n *\n * @returns {any} the redux store\n *\n * @example\n *\n * import React from 'react'\n * import { useStore } from 'react-redux'\n *\n * export const ExampleComponent = () => {\n * const store = useStore()\n * return <div>{store.getState()}</div>\n * }\n */\n\nexport var useStore = /*#__PURE__*/createStoreHook();","import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nvar nullListeners = {\n notify: function notify() {}\n};\n\nfunction createListenerCollection() {\n var batch = getBatch();\n var first = null;\n var last = null;\n return {\n clear: function clear() {\n first = null;\n last = null;\n },\n notify: function notify() {\n batch(function () {\n var listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n get: function get() {\n var listeners = [];\n var listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n subscribe: function subscribe(callback) {\n var isSubscribed = true;\n var listener = last = {\n callback: callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n };\n}\n\nvar Subscription = /*#__PURE__*/function () {\n function Subscription(store, parentSub) {\n this.store = store;\n this.parentSub = parentSub;\n this.unsubscribe = null;\n this.listeners = nullListeners;\n this.handleChangeWrapper = this.handleChangeWrapper.bind(this);\n }\n\n var _proto = Subscription.prototype;\n\n _proto.addNestedSub = function addNestedSub(listener) {\n this.trySubscribe();\n return this.listeners.subscribe(listener);\n };\n\n _proto.notifyNestedSubs = function notifyNestedSubs() {\n this.listeners.notify();\n };\n\n _proto.handleChangeWrapper = function handleChangeWrapper() {\n if (this.onStateChange) {\n this.onStateChange();\n }\n };\n\n _proto.isSubscribed = function isSubscribed() {\n return Boolean(this.unsubscribe);\n };\n\n _proto.trySubscribe = function trySubscribe() {\n if (!this.unsubscribe) {\n this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.handleChangeWrapper) : this.store.subscribe(this.handleChangeWrapper);\n this.listeners = createListenerCollection();\n }\n };\n\n _proto.tryUnsubscribe = function tryUnsubscribe() {\n if (this.unsubscribe) {\n this.unsubscribe();\n this.unsubscribe = null;\n this.listeners.clear();\n this.listeners = nullListeners;\n }\n };\n\n return Subscription;\n}();\n\nexport { Subscription as default };","// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nvar batch = defaultNoopBatch; // Allow injecting another batching function later\n\nexport var setBatch = function setBatch(newBatch) {\n return batch = newBatch;\n}; // Supply a getter just to skip dealing with ESM bindings\n\nexport var getBatch = function getBatch() {\n return batch;\n};","import { useEffect, useLayoutEffect } from 'react'; // React currently throws a warning when using useLayoutEffect on the server.\n// To get around it, we can conditionally useEffect on the server (no-op) and\n// useLayoutEffect in the browser. We need useLayoutEffect to ensure the store\n// subscription callback always has the selector from the latest render commit\n// available, otherwise a store update may happen between render and the effect,\n// which may cause missed updates; we also must ensure the store subscription\n// is created synchronously, otherwise a store update may occur before the\n// subscription is created and an inconsistent state may be observed\n\nexport var useIsomorphicLayoutEffect = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined' ? useLayoutEffect : useEffect;","export default function _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}","export default function _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}","import setPrototypeOf from \"@babel/runtime/helpers/esm/setPrototypeOf\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","Tree2Element","tree","map","node","tag","key","attr","child","GenIcon","data","props","IconBase","elem","conf","className","size","title","svgProps","computedSize","stroke","fill","strokeWidth","style","color","height","width","xmlns","children","undefined","DefaultContext","IconContext","GlobalStyle","createGlobalStyle","Container","styled","itemsCount","Input","activeIndex","Item","KEY_CODE","autoFocus","onChange","onCompleted","placeholder","pValue","value","dataCy","type","passwordMask","emptyValue","Array","React","setActiveIndex","split","setValue","codeInputRef","itemsRef","isCodeRegex","RegExp","getItem","index","current","focusItem","focus","blurItem","blur","codeInput","onPaste","preventDefault","pastedString","clipboardData","getData","test","slice","addEventListener","removeEventListener","stringValue","join","S","ref","autoComplete","inputMode","id","changeValue","target","onKeyUp","keyCode","newValue","nextIndex","prevIndex","currentItem","isLast","Number","isNaN","onBlur","role","tabIndex","onFocus","itemValue","b","Symbol","for","c","d","f","g","h","k","l","m","q","r","v","w","x","y","z","a","u","$$typeof","A","exports","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","componentWillMount","state","constructor","getDerivedStateFromProps","setState","componentWillReceiveProps","nextProps","prevState","bind","componentWillUpdate","nextState","prevProps","__reactInternalSnapshotFlag","__reactInternalSnapshot","getSnapshotBeforeUpdate","polyfill","Component","isReactComponent","Error","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","UNSAFE_componentWillMount","UNSAFE_componentWillReceiveProps","UNSAFE_componentWillUpdate","displayName","name","componentDidUpdate","maybeSnapshot","__suppressDeprecationWarning","defineProperty","bodyOpenClassName","portalClassName","_extends","source","_createClass","defineProperties","descriptor","enumerable","configurable","writable","Constructor","protoProps","staticProps","_react","_react2","_interopRequireDefault","_reactDom2","_propTypes2","_ModalPortal2","ariaAppHider","obj","__esModule","newObj","default","_interopRequireWildcard","_safeHTMLElement","_safeHTMLElement2","_reactLifecyclesCompat","_classCallCheck","instance","TypeError","_possibleConstructorReturn","self","ReferenceError","isReact16","canUseDOM","createPortal","createHTMLElement","document","createElement","getCreatePortal","unstable_renderSubtreeIntoContainer","getParentElement","parentSelector","Modal","_Component","_ref","_temp","_this","_len","args","_key","__proto__","getPrototypeOf","concat","removePortal","unmountComponentAtNode","parent","contains","removeChild","portalRef","portal","renderPortal","defaultStyles","subClass","superClass","create","setPrototypeOf","_inherits","appendChild","prevParent","nextParent","_","snapshot","_props","isOpen","now","Date","closesAt","closeTimeoutMS","beforeClose","closeWithTimeout","setTimeout","element","setElement","propTypes","bool","isRequired","shape","content","object","overlay","string","htmlOpenClassName","oneOfType","base","afterOpen","overlayClassName","appElement","instanceOf","SafeHTMLCollection","SafeNodeList","arrayOf","onAfterOpen","func","onRequestClose","number","ariaHideApp","shouldFocusAfterRender","shouldCloseOnOverlayClick","shouldReturnFocusAfterClose","preventScroll","aria","contentLabel","shouldCloseOnEsc","overlayRef","contentRef","overlayElement","contentElement","defaultProps","body","contentEl","position","top","left","right","bottom","backgroundColor","border","background","overflow","WebkitOverflowScrolling","borderRadius","outline","padding","_typeof","iterator","focusManager","_scopeTab2","classList","_portalOpenInstances2","CLASS_NAMES","ariaHiddenInstances","ModalPortal","setOverlayRef","setContentRef","afterClose","_this$props","remove","getElementsByTagName","show","returnFocus","teardownScopedFocus","popWithoutFocus","onAfterClose","deregister","open","beforeOpen","clearTimeout","closeTimer","setupScopedFocus","markForFocusLater","openAnimationFrame","requestAnimationFrame","overlayEl","close","closeWithoutTimeout","focusContent","contentHasFocus","handleKeyDown","event","stopPropagation","requestClose","handleOverlayOnClick","shouldClose","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","handleContentOnClick","handleContentOnMouseDown","shouldBeClosed","activeElement","buildClassName","which","additional","classNames","attributesFromObject","prefix","items","keys","reduce","acc","moveFromContentToOverlay","cancelAnimationFrame","add","hide","register","_props2","contentStyles","overlayStyles","overlayProps","onClick","onMouseDown","contentProps","onKeyDown","onMouseUp","modal","testId","module","resetState","globalElement","removeAttribute","forEach","querySelectorAll","log","assertNodeList","useElement","el","validateElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","next","done","setAttribute","err","return","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","documentNotReadyOrSSRTesting","_warning","_warning2","nodeList","selector","isArray","HTMLCollection","NodeList","_arr","before","after","_i","item","parentNode","instances","_arr2","_i2","_portalOpenInstances","subscribe","eventType","openInstances","opacity","cloneNode","firstChild","insertBefore","lastChild","parentElement","htmlElement","cls","htmlClassList","removeClass","_cls","docBodyClassList","at","classString","classListRef","poll","nodeName","toLowerCase","incrementReference","decrementReference","focusLaterElements","handleBlur","handleFocus","push","pop","modalElement","window","attachEvent","detachEvent","_tabbable","_tabbable2","needToFocus","portalOpenInstances","PortalOpenInstances","openInstance","emit","splice","callback","subscribers","subscriber","_exenv","EE","SafeHTMLElement","HTMLElement","tabbable","shiftKey","head","tail","getActiveElement","checkSafari","exec","navigator","userAgent","shadowRoot","findTabbableDescendants","descendants","finished","filter","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","innerHTML","getComputedStyle","getPropertyValue","scrollWidth","scrollHeight","exception","focusable","isTabIndexNotNaN","disabled","href","rootNode","getRootNode","host","visible","getAttribute","isTabIndexNaN","cache","_getRequireWildcardCache","has","get","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","_reactFastCompare","WeakMap","_defineProperties","_setPrototypeOf","o","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","toString","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","_assertThisInitialized","_defineProperty","Player","_super","_args","player","load","url","progress","isReady","playedSeconds","getCurrentTime","loadedSeconds","getSecondsLoaded","duration","getDuration","played","loaded","prevPlayed","prevLoaded","onProgress","progressTimeout","progressFrequency","progressInterval","mounted","isLoading","playing","volume","muted","onReady","setVolume","loadOnReady","play","handleDurationCheck","isPlaying","_this$props2","onStart","onPlay","playbackRate","startOnPlay","setPlaybackRate","seekOnPlay","seekTo","onPause","_this$props3","loop","onEnded","activePlayer","loopOnEnded","_this$props4","onError","durationCheckTimeout","onDurationCalled","onDuration","stopOnUnmount","stop","disablePIP","_this2","_this$props5","pip","forceLoad","pause","enablePIP","mute","unmute","setLoop","amount","_this3","onMount","handlePlayerMount","handleReady","handlePlay","handlePause","handleEnded","onLoaded","handleLoaded","handleError","ownKeys","enumerableOnly","symbols","sym","_objectSpread","getOwnPropertyDescriptors","ICON_SIZE","Preview","image","fetchImage","light","fetch","then","response","json","thumbnail_url","replace","playIcon","previewTabIndex","flexCenter","display","alignItems","justifyContent","styles","preview","backgroundImage","backgroundSize","backgroundPosition","cursor","shadow","borderStyle","borderWidth","borderColor","marginLeft","onKeyPress","handleKeyPress","createReactPlayer","_deepmerge","_memoizeOne","_utils","_Player3","_toConsumableArray","arr","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","minLen","_unsupportedIterableToArray","_nonIterableSpread","len","arr2","lazy","Promise","resolve","IS_BROWSER","IS_GLOBAL","SUPPORTED_PROPS","UniversalSuspense","customPlayers","players","fallback","_class","ReactPlayer","showPreview","wrapper","_wrapper","_player","onClickPreview","getInternalPlayer","fraction","canPlay","config","all","omit","getActivePlayer","getConfig","references","lazyPlayer","handleClickPreview","Wrapper","attributes","getAttributes","renderPreview","renderActivePlayer","_i3","_arr3","_Player2","canEnablePIP","FLV_EXTENSIONS","DASH_EXTENSIONS","HLS_EXTENSIONS","VIDEO_EXTENSIONS","AUDIO_EXTENSIONS","MATCH_URL_KALTURA","MATCH_URL_VIDYARD","MATCH_URL_MIXCLOUD","MATCH_URL_DAILYMOTION","MATCH_URL_TWITCH_CHANNEL","MATCH_URL_TWITCH_VIDEO","MATCH_URL_WISTIA","MATCH_URL_STREAMABLE","MATCH_URL_FACEBOOK_WATCH","MATCH_URL_FACEBOOK","MATCH_URL_VIMEO","MATCH_URL_SOUNDCLOUD","MATCH_URL_YOUTUBE","_createForOfIteratorHelper","allowArrayLike","it","F","_e","normalCompletion","didErr","step","_e2","youtube","every","soundcloud","vimeo","facebook","streamable","wistia","twitch","dailymotion","mixcloud","vidyard","kaltura","file","canPlayFile","src","isMediaStream","isBlobUrl","_patterns","_slicedToArray","_arrayWithHoles","_n","_d","_s","_iterableToArrayLimit","_nonIterableRest","DailyMotion","callPlayer","container","controls","match","start","parseStartTime","autoplay","getSDK","DM","video","params","origin","location","events","apiready","seeked","onSeek","currentTime","video_end","durationchange","onDurationChange","waiting","onBuffer","error","seconds","bufferedTime","SDK_URL","SDK_GLOBAL_READY","PLAYER_ID_PREFIX","Facebook","playerId","randomString","FB","XFBML","parse","init","appId","xfbml","version","Event","msg","playerID","onBufferEnd","getElementById","querySelector","visibility","HAS_NAVIGATOR","IS_IPAD_PRO","platform","maxTouchPoints","IS_IOS","MSStream","MATCH_DROPBOX_URL","MATCH_CLOUDFLARE_STREAM","FilePlayer","_this$props6","_this$props7","_this$props8","onEnablePIP","_this$props9","onDisablePIP","supportsWebKitPresentationMode","webkitPresentationMode","track","prevPlayer","addListeners","shouldUseAudio","removeListeners","srcObject","hls","destroy","_this$props10","playsinline","onPresentationModeChange","shouldUseHLS","forceVideo","poster","forceAudio","forceHLS","forceDASH","forceFLV","_this$props$config","hlsVersion","hlsOptions","dashVersion","flvVersion","dash","reset","Hls","on","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","promise","requestPictureInPicture","pictureInPictureElement","webkitSetPresentationMode","exitPictureInPicture","rate","_this$player","seekable","Infinity","end","buffered","useHLS","useDASH","useFLV","_this$props11","useAudio","getSource","preload","autoPlay","renderSourceElement","tracks","renderTrack","Kaltura","iframe","playerjs","_ref2","secondsLoaded","percent","frameBorder","scrolling","allowFullScreen","allow","referrerPolicy","Mixcloud","PlayerWidget","ready","ended","query","queryString","options","feed","SoundCloud","SC","_SC$Widget$Events","Widget","PLAY","PLAY_PROGRESS","PAUSE","FINISH","currentPosition","fractionLoaded","loadedProgress","encodeURIComponent","Streamable","Twitch","isChannel","setChannel","setVideo","channel","time","_Twitch$Player","PLAYING","ENDED","ONLINE","OFFLINE","READY","Vidyard","api","addReadyListener","renderPlayer","uuid","getPlayerMetadata","meta","length_in_seconds","VidyardV4","destroyPlayer","Vimeo","playerOptions","refreshDuration","Wistia","_onReady","customControls","control","defineControl","_wq","silentAutoPlay","controlsVisibleOnLoad","fullscreenButton","playbar","playbackRateControl","qualityControl","volumeControl","settingsControl","smallPlayButton","unbind","videoID","SDK_GLOBAL","MATCH_PLAYLIST","MATCH_USER_UPLOADS","MATCH_NOCOOKIE","YouTube","listType","playlist","getID","list","playerVars","_window$SDK_GLOBAL$Pl","PlayerState","PAUSED","BUFFERING","CUED","UNSTARTED","onUnstarted","isPlaylist","_onError","embedOptions","loadPlaylist","parsePlaylist","cueVideoById","videoId","startSeconds","endSeconds","parseEndTime","YT","onStateChange","_propTypes","array","render","noop","visual","buying","liking","download","sharing","show_comments","show_playcount","showinfo","rel","iv_load_policy","modestbranding","autopause","byline","portrait","hide_cover","_Subscribable","FocusManager","setup","_window","listener","_proto","onSubscribe","cleanup","setEventListener","onUnsubscribe","_this$cleanup","hasListeners","_this$cleanup2","focused","setFocused","listeners","isFocused","includes","visibilityState","logger","console","getLogger","setLogger","newLogger","Mutation","defaultOptions","mutationId","mutationCache","observers","getDefaultState","dispatch","addObserver","observer","removeObserver","cancel","retryer","catch","continue","execute","restored","status","variables","onMutate","context","executeMutation","onSuccess","onSettled","_this$options$retry","fn","mutationFn","reject","onFail","onContinue","retry","retryDelay","action","failureCount","isPaused","reducer","onMutationUpdate","notify","notifyManager","NotifyManager","queue","transactions","notifyFn","batchNotifyFn","batch","flush","schedule","batchCalls","setNotifyFunction","setBatchNotifyFunction","onlineManager","OnlineManager","onOnline","online","setOnline","isOnline","onLine","Query","abortSignalConsumed","hadObservers","setOptions","queryKey","queryHash","initialState","scheduleGc","_this$options$cacheTi","cacheTime","Math","max","setDefaultOptions","clearGcTimeout","gcTimeout","optionalRemove","isFetching","setData","updater","_this$options$isDataE","_this$options","prevData","isDataEqual","structuralSharing","dataUpdatedAt","updatedAt","setStateOptions","_this$retryer","silent","isActive","some","enabled","isStale","isInvalidated","getCurrentResult","isStaleByTime","staleTime","_this$retryer2","find","shouldFetchOnWindowFocus","refetch","_this$retryer3","shouldFetchOnReconnect","isTransportCancelable","revert","cancelRetry","getObserversCount","invalidate","fetchOptions","_this$options$behavio","_context$fetchOptions","_abortController$abor","cancelRefetch","_this$retryer4","continueRetry","queryFn","abortController","queryFnContext","pageParam","signal","_this$options$behavio2","_context$fetchOptions2","fetchFn","behavior","onFetch","revertState","fetchMeta","abort","onQueryUpdate","initialData","initialDataUpdatedAt","hasData","dataUpdateCount","errorUpdateCount","errorUpdatedAt","fetchFailureCount","_action$meta","_action$dataUpdatedAt","QueryCache","queries","queriesMap","build","client","_options$queryHash","defaultQueryOptions","getQueryDefaults","queryInMap","clear","getAll","arg1","arg2","filters","exact","findAll","_this4","_this5","MutationCache","mutations","mutation","defaultMutationOptions","mutationKey","getMutationDefaults","resumePausedMutations","pausedMutations","getNextPageParam","pages","getPreviousPageParam","QueryClient","queryCache","queryDefaults","mutationDefaults","mount","unsubscribeFocus","unsubscribeOnline","unmount","_this$unsubscribeFocu","_this$unsubscribeOnli","fetching","isMutating","getQueryData","_this$queryCache$find","getQueriesData","queryKeyOrFilters","getQueryCache","setQueryData","parsedOptions","defaultedOptions","setQueriesData","getQueryState","_this$queryCache$find2","removeQueries","resetQueries","arg3","_parseFilterArgs3","refetchFilters","active","refetchQueries","cancelQueries","_parseFilterArgs4","_parseFilterArgs4$","cancelOptions","promises","invalidateQueries","_ref3","_filters$refetchActiv","_filters$refetchInact","_parseFilterArgs5","refetchActive","inactive","refetchInactive","_this6","_parseFilterArgs6","refetchPage","throwOnError","fetchQuery","prefetchQuery","fetchInfiniteQuery","_context$fetchOptions3","_context$fetchOptions4","_context$state$data","_context$state$data2","fetchMore","isFetchingNextPage","direction","isFetchingPreviousPage","oldPages","oldPageParams","pageParams","abortSignal","newPageParams","cancelled","buildNewPages","param","page","previous","fetchPage","manual","queryFnResult","_manual","_param","shouldFetchFirstPage","_loop","_param2","finalPromise","prefetchInfiniteQuery","cancelMutations","_this7","getMutationCache","getDefaultOptions","setQueryDefaults","_this$queryDefaults$f","setMutationDefaults","_this$mutationDefault","_defaulted","defaultQueryObserverOptions","defaultRetryDelay","min","pow","isCancelable","CancelledError","isCancelledError","Retryer","cancelFn","continueFn","promiseResolve","promiseReject","isResolved","outerResolve","outerReject","run","promiseOrValue","_unused","_config$retry","_config$retryDelay","delay","shouldRetry","continueResolve","Subscribable","defaultContext","QueryClientSharingContext","getQueryClientContext","contextSharing","ReactQueryClientContext","useQueryClient","queryClient","QueryClientProvider","_ref$contextSharing","Context","Provider","MutationObserver","bindMethods","updateResult","mutate","_this$currentMutation","currentMutation","notifyOptions","currentResult","mutateOptions","isSuccess","isError","isIdle","useMutation","mountedRef","forceUpdate","obsRef","unsubscribe","useErrorBoundary","mutateAsync","QueryObserver","trackedProps","previousSelectError","currentQuery","shouldFetchOnMount","executeFetch","updateTimers","refetchOnReconnect","refetchOnWindowFocus","clearTimers","prevOptions","prevQuery","updateQuery","shouldFetchOptionally","updateStaleTimeout","nextRefetchInterval","computeRefetchInterval","currentRefetchInterval","updateRefetchInterval","getOptimisticResult","createResult","trackResult","trackedResult","trackProp","suspense","getNextResult","getCurrentQuery","fetchOptimistic","clearStaleTimeout","staleTimeoutId","_this$options$refetch","refetchInterval","nextInterval","clearRefetchInterval","refetchIntervalId","setInterval","refetchIntervalInBackground","clearInterval","prevResult","prevResultState","currentResultState","prevResultOptions","currentResultOptions","queryChange","queryInitialState","currentQueryInitialState","prevQueryResult","previousQueryResult","isPreviousData","isPlaceholderData","optimisticResults","fetchOnMount","fetchOptionally","keepPreviousData","select","_this$previousSelect","previousSelect","selectError","placeholderData","isFetched","isFetchedAfterMount","isRefetching","isLoadingError","isRefetchError","shouldNotifyListeners","notifyOnChangeProps","notifyOnChangePropsExclusions","includedProps","changed","isIncluded","isExcluded","defaultNotifyOptions","_this8","retryOnMount","shouldLoadOnMount","refetchOnMount","shouldRefetchOnMount","createValue","_isReset","clearReset","isReset","QueryErrorResetBoundaryContext","useBaseQuery","Observer","errorResetBoundary","useQuery","ReactReduxContext","store","contextValue","useMemo","subscription","notifyNestedSubs","previousState","getState","useEffect","trySubscribe","tryUnsubscribe","createDispatchHook","useStore","useDispatch","useReduxContext","useContext","refEquality","createSelectorHook","equalityFn","_useReduxContext","selectedState","contextSub","forceRender","useReducer","latestSubscriptionCallbackError","useRef","latestSelector","latestStoreState","latestSelectedState","storeState","message","stack","checkForUpdates","newSelectedState","useSelectorWithStoreAndSubscription","useDebugValue","useSelector","createStoreHook","nullListeners","Subscription","parentSub","handleChangeWrapper","addNestedSub","isSubscribed","Boolean","first","last","prev","setBatch","newBatch","getBatch","useIsomorphicLayoutEffect","useLayoutEffect","_inheritsLoose"],"sourceRoot":""}