{"version":3,"file":"js/scripts_react_shared_components_VideoModal_index_js-scripts_react_shared_hooks_useModalOptions_js.js?_t=7e01fc14a7a4b62b40d8","mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AAEA;AAEA;AACA;AAEA;AACA;AAEA;AAAA;AACA;AACA;AACA;AACA;AAGA;AAAA;AAGA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAIA;AAIA;AACA;AAEA;AACA;AAGA;AAEA;;;;;;;;;;;;;;;;ACnDA;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AAEA;AACA;AAwBA;AAGA;AAEA;;;;;;;;;;;;;;;;AClCA;;;;;;;;;;;;;;;;;ACAA;AACA;AAEA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAKA;AAIA;AAGA;AAGA;AAEA;;;;;;;;;;;;;;;;AC3BA;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AAEA;AACA;AAOA;AAEA;;;;;;;;;;;;;;;;AChBA;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AACA;AAEA;AAEA;AACA;AAAA;AAEA;AAAA;AACA;AAEA;AAAA;AACA;AAEA;AAAA;AACA;AAEA;AAAA;AACA;AAGA;AAAA;AACA;AAGA;AAAA;AACA;AAGA;AAAA;AACA;AAEA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEA;AAAA;AACA;AACA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;AC/DA;AAEA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAGA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAGA;AAGA;AAGA;AAEA;;;;;;;;;;;;;;;;AC/BA;;;;;;;;;;;;;;;;;;;;;;ACAA;AAEA;AAAA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AAAA;AACA;AAEA;AAAA;AAGA;AAAA;AAAA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAEA;AACA;AAEA;AASA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAiBA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAKA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAKA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AAAA;AAKA;AAAA;AAAA;AACA;AACA;AAAA;AAIA;AAAA;AAAA;AACA;AACA;AAAA;AAIA;AAEA;AAGA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAYA;AAMA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAIA;AAIA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAOA;;;;;;;;;;;;;;;;AClKA","sources":["webpack://@mlssoccer/netcore/./scripts/react/shared/components/AnimatedModal/AnimatedModal.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/AnimatedModal/index.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/BlockHeader/BlockHeader.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/BlockHeader/index.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/DefaultModal/DefaultModal.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/DefaultModal/index.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/VideoModal/VideoModal.js","webpack://@mlssoccer/netcore/./scripts/react/shared/components/VideoModal/index.js","webpack://@mlssoccer/netcore/./scripts/react/shared/hooks/useModalOptions.js","webpack://@mlssoccer/netcore/./scripts/react/shared/svg/CloseIcon/CloseIcon.js","webpack://@mlssoccer/netcore/./scripts/react/shared/svg/CloseIcon/index.js","webpack://@mlssoccer/netcore/./scripts/react/shared/svg/Svg.js","webpack://@mlssoccer/netcore/./scripts/react/shared/svg/index.js"],"sourcesContent":["import React from \"react\";\nimport { useTransition, config, animated } from \"react-spring\";\n\nimport { DialogOverlay, DialogContent } from \"@reach/dialog\";\n\nconst AnimatedDialogOverlay = animated(DialogOverlay);\nconst AnimatedDialogContent = animated(DialogContent);\n\nconst AnimatedModal = props => {\n const { isOpen, onHide, focusRef = null, children, label = \"modal\", style = {}, className } = props;\n\n const modalTransition = useTransition(!!isOpen, {\n config: isOpen ? { ...config.stiff } : { duration: 150 },\n from: { opacity: 0, transform: `translate3d(0px, -10px, 0px)` },\n enter: { opacity: 1, transform: `translate3d(0px, 0px, 0px)` },\n leave: { opacity: 0, transform: `translate3d(0px, 10px, 0px)` }\n });\n\n return modalTransition(\n (styles, isOpen) =>\n isOpen && (\n \n \n {\n React.Children.map(children, child => {\n return !child\n ? null\n : typeof child.type === 'string'\n ? child\n : React.cloneElement(child);\n })\n }\n \n \n )\n );\n};\n\nexport default AnimatedModal;\n","export { default } from './AnimatedModal';\n","import React from 'react';\nimport { Chevron } from \"../../svg\";\nimport { chevronDirection } from \"../../svg/Svg\";\n\nfunction BlockHeader({ title, link, iconSize = \"medium\", ...otherProps }) {\n return (\n
\n
\n
\n
\n {\n link\n ? (\n \n {title}\n \n \n )\n : (\n
\n {title}\n
\n )\n }\n
\n
\n
\n
\n );\n}\n\n// eslint-disable-next-line no-func-assign\nBlockHeader = React.memo(BlockHeader);\n\nexport default BlockHeader;\n","export { default } from './BlockHeader';\n","import React from \"react\";\nimport { DialogOverlay, DialogContent } from \"@reach/dialog\";\n\nconst DefaultModal = props => {\n const { isOpen, onHide, children, label = \"modal\", style = {}, className } = props;\n\n return (\n \n \n {\n React.Children.map(children, child => {\n return !child\n ? null\n : typeof child.type === 'string'\n ? child\n : React.cloneElement(child);\n })\n }\n \n \n );\n};\n\nexport default DefaultModal;\n","export { default } from './DefaultModal';\n","import React from \"react\";\nimport CloseIcon from \"../../svg/CloseIcon\";\nimport { svgSizes } from \"../../utils\";\nimport BlockHeader from \"../BlockHeader\";\nimport BrightCoveVideoPlaylist from \"../../../brightcove-video-playlist/main\";\n\nfunction VideoModal({ closeModal, videoList, label }) {\n return (\n <>\n \n \n \n \n );\n}\n\nexport default VideoModal;\n","export { default } from './VideoModal';\n","import { useReducer, useRef } from \"react\";\nimport AnimatedModal from \"../components/AnimatedModal\";\nimport DefaultModal from \"../components/DefaultModal\";\n\nexport const modalActionTypes = {\n show: 'show',\n modalData: 'modalData',\n component: 'component',\n label: 'label',\n modalType: 'modalType',\n modalClassName: 'modalClassName'\n};\n\nexport const modalTypes = {\n animated: 'animated',\n default: 'default'\n};\n\nexport function modalReducer(state, action) {\n switch (action.type) {\n case modalActionTypes.modalClassName: {\n return { ...state, modalClassName: action.payload };\n }\n case modalActionTypes.modalType: {\n return { ...state, modalType: action.payload };\n }\n case modalActionTypes.label: {\n return { ...state, label: action.payload };\n }\n case modalActionTypes.component: {\n return { ...state, component: action.payload };\n }\n\n case modalActionTypes.show: {\n return { ...state, show: !state.show };\n }\n\n case modalActionTypes.modalData: {\n return { ...state, modalData: action.payload };\n }\n\n default: {\n throw new Error(`Unsupported Modal Options type: ${action.type}`);\n }\n }\n}\n\nexport function useModalOptions({ initialState, reducer = modalReducer } = {}) {\n const { current: currentState } = useRef(initialState);\n const [state, dispatch] = useReducer(reducer, currentState);\n\n const { component, modalType } = state || {};\n const Modal = modalType === modalTypes.animated ? AnimatedModal : DefaultModal;\n const Component = component;\n\n const updateModalOptions = ({ type, payload }) => dispatch({ type, payload });\n\n return {\n state,\n Component,\n Modal,\n updateModalOptions,\n };\n}\n","import React, { useState } from \"react\";\n\nfunction CloseIcon(props) {\n const { handleClick, extraClasses, size = \"small\", wrapperElement = \"div\", ...otherProps } = props || {};\n const [WrapperComponent] = useState(wrapperElement);\n\n return (\n \n \n \n \n \n \n \n );\n}\n\n// eslint-disable-next-line no-func-assign\nCloseIcon = React.memo(CloseIcon);\n\nexport default CloseIcon;\n","export { default } from './CloseIcon';\n","import React from \"react\";\n\nexport const chevronDirection = {\n down: \"down\",\n up: \"up\",\n left: \"left\",\n right: \"right\",\n};\n\nexport const Chevron = ({\n useEmptyClasses = false,\n extraClasses,\n direction = chevronDirection.down,\n size = \"small\",\n}) =>\n !useEmptyClasses ? (\n \n \n \n \n \n \n \n ) : (\n
\n \n \n \n
\n );\n\nexport const Filters = ({ extraClasses, size = \"small\" }) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nexport const NoResults = ({ extraClasses, size = \"large\" }) => (\n \n \n \n \n \n \n \n \n \n \n);\n\nexport const MediaPlayingSVG = ({ extraClasses, size = \"large\" }) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nexport const CardBackground = ({ extraClasses }) => (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n);\n\nexport const TriangleSVG = ({ extraClasses, size = \"small\" }) => (\n \n \n \n \n \n \n \n);\n","export { Chevron } from './Svg';\n"],"names":[],"sourceRoot":""}