{"version":3,"file":"govx-desktop.tickets.venuepage.45542d716e124188040f.js","mappings":"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","sources":["webpack://@govx/govx-shop/./node_modules/@material-ui/icons/LocalOffer.js","webpack://@govx/govx-shop/./src/desktop/components/Tickets/cards/VenueCard/index.js","webpack://@govx/govx-shop/./src/desktop/components/Tickets/TicketsVenuePage/index.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z\"\n}), 'LocalOffer');\n\nexports.default = _default;","import React from 'react'\nimport { connect } from 'react-redux'\nimport { compose, withState, lifecycle, branch, renderNothing } from 'recompose'\nimport { withStyles } from '@material-ui/core/styles'\nimport Grid from '@material-ui/core/Grid'\nimport Typography from '@material-ui/core/Typography'\nimport TicketIcon from '@material-ui/icons/LocalOffer'\n\nimport {\n gotoRegister,\n gotoLogin,\n fetchTicketDiscount,\n fetchTicketRestrictions,\n showModal,\n gotoTicketLink,\n viewedVenueTicket,\n clickedVenueTicket,\n launchedVenueTicketModal,\n} from '../../../../../redux/actions'\nimport { selectUser } from '../../../../../redux/selectors'\nimport { getTicketsVenuePath } from '../../../../../setup/routeConstants'\nimport {\n buildTicketsLogoPictureUrl,\n isImageAvailable,\n} from '../../../../../utilities/picture-util'\nimport {\n formatEventName,\n getVenueDisplayName,\n} from '../../../../../utilities/tickets-util'\nimport TicketCTA from '../TicketCTA'\nimport NoActionLink from '../../../common/links/NoActionLink'\nimport RouteLink from '../../../common/links/RouteLink'\nimport TicketDiscountCodeModal from '../../TicketDiscountCodeModal'\nimport NoTicketsModal from '../../NoTicketsModal'\nimport TicketRestrictionsModal from '../../TicketRestrictionsModal'\nimport Sensor from 'react-visibility-sensor'\n\nconst styles = {\n card: {\n position: 'relative',\n display: 'flex',\n minHeight: '112px',\n overflow: 'hidden',\n marginBottom: '15px',\n border: '1px solid #eaeaea',\n borderRadius: '3px',\n },\n logoContainer: {\n width: '120px',\n minHeight: '112px',\n float: 'left',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n padding: '15px 0px 15px 15px',\n backgroundColor: (props) =>\n isImageAvailable(props.venue.logoPicture) ? '#fff' : '#eaeaea',\n },\n logo: {\n display: 'flex',\n maxWidth: '100%',\n maxHeight: '100%',\n },\n info: {\n position: 'relative',\n minHeight: '112px',\n width: (props) => (props.isVenuePage ? '100%' : 'calc(100% - 120px)'),\n float: (props) => (props.isVenuePage ? 'none' : 'left'),\n padding: '15px',\n },\n ticketIcon: {\n width: '64px',\n height: '64px',\n fill: '#ccc',\n filter: 'drop-shadow(-1px 1px 0px rgba(0,0,0,.4))',\n },\n}\n\nconst VenueCard = ({\n classes,\n descriptionExpanded,\n isVenuePage,\n onLoginClick,\n onRestrictionsClick,\n onSignupClick,\n onTicketClick,\n setDescriptionExpanded,\n ticket,\n user,\n venue,\n tracked,\n trackTicket,\n}) => (\n <>\n {!tracked && (\n <Sensor partialVisibility={true} onChange={(x) => x && trackTicket()}>\n <span style={{}}> </span>\n </Sensor>\n )}\n <div className={classes.card}>\n {!isVenuePage && (\n <RouteLink\n unstyled\n to={getTicketsVenuePath(venue.id, venue.seoName)}\n extraClass={classes.logoContainer}\n >\n {isImageAvailable(venue.logoPicture) ? (\n <img\n src={buildTicketsLogoPictureUrl(venue.logoPicture, venue.seoName)}\n alt={venue.name}\n className={classes.logo}\n />\n ) : (\n <div className={classes.logo}>\n <TicketIcon className={classes.ticketIcon} />\n </div>\n )}\n </RouteLink>\n )}\n <div className={classes.info}>\n <Grid container spacing={2}>\n <Grid item xs={8}>\n {ticket.name && (\n <Typography\n variant='subtitle1'\n gutterBottom\n style={{ fontSize: '20px' }}\n >\n {formatEventName(ticket.name)}\n </Typography>\n )}\n {!isVenuePage && (\n <Typography variant='body1' noWrap>\n <RouteLink\n to={getTicketsVenuePath(venue.id, venue.seoName)}\n style={{ color: '#00a1df' }}\n >\n {venue.name.trim().length > 0\n ? venue.name\n : getVenueDisplayName(venue)}\n </RouteLink>\n {venue.city && `, ${venue.city}`}\n {venue.state && `, ${venue.state}`}\n </Typography>\n )}\n {ticket.description && (\n <Typography\n variant='body1'\n style={{ marginTop: '10px', color: '#999' }}\n >\n {ticket.description.length > 123 ? (\n descriptionExpanded ? (\n <span>\n {ticket.description} \n <NoActionLink\n style={{ color: '#00a1df' }}\n children='Less'\n onClick={() => setDescriptionExpanded(false)}\n />\n </span>\n ) : (\n <span>\n {ticket.description.slice(0, 123)} \n <NoActionLink\n style={{ color: '#00a1df' }}\n children='More'\n onClick={() => setDescriptionExpanded(true)}\n />\n </span>\n )\n ) : (\n ticket.description\n )}\n </Typography>\n )}\n </Grid>\n <Grid item xs={4}>\n <TicketCTA\n ticket={ticket}\n user={user}\n onSignupClick={onSignupClick}\n onLoginClick={onLoginClick}\n onRestrictionsClick={onRestrictionsClick}\n onTicketClick={onTicketClick}\n />\n </Grid>\n </Grid>\n </div>\n </div>\n </>\n)\n\nconst mapStateToProps = (state, ownProps) => ({\n user: selectUser(state),\n})\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n onSignupClick: (e) => {\n e && e.preventDefault()\n dispatch(gotoRegister())\n },\n onLoginClick: (e) => {\n e && e.preventDefault()\n dispatch(gotoLogin())\n },\n onRestrictionsClick: (e, ticket) => {\n e && e.preventDefault()\n dispatch(fetchTicketRestrictions(ticket.id)).then((restrictions) =>\n dispatch(\n showModal('DYNAMIC', {\n component: TicketRestrictionsModal,\n restrictions,\n }),\n ),\n )\n },\n onTicketClick: (e, ticket) => {\n e && e.preventDefault()\n dispatch(clickedVenueTicket(ownProps.ticket, ownProps.position))\n\n if (!ticket.accessGranted) {\n return dispatch(fetchTicketRestrictions(ticket.id)).then((restrictions) =>\n dispatch(\n showModal('DYNAMIC', {\n component: TicketRestrictionsModal,\n restrictions,\n isVenuePage: ownProps.isVenuePage,\n }),\n ),\n )\n } else if (ticket.link && ticket.discountType < 2)\n return dispatch(\n gotoTicketLink({\n entity: ownProps.venue,\n type: 'venue',\n ticket: ticket,\n }),\n )\n else\n return dispatch(fetchTicketDiscount(ticket.id)).then((discount) => {\n if (discount) {\n if (discount.finalDiscountType < 2)\n dispatch(\n gotoTicketLink({\n entity: ownProps.venue,\n type: 'venue',\n ticket: discount,\n }),\n )\n else {\n dispatch(\n launchedVenueTicketModal(ownProps.ticket, ownProps.position),\n )\n dispatch(\n showModal('DYNAMIC', {\n component: TicketDiscountCodeModal,\n isVenuePage: ownProps.isVenuePage,\n position: ownProps.position,\n venue: ownProps.venue,\n ticket: ownProps.ticket,\n discount: discount,\n }),\n )\n }\n } else {\n dispatch(launchedVenueTicketModal(ownProps.ticket, ownProps.position))\n dispatch(showModal('DYNAMIC', { component: NoTicketsModal }))\n }\n })\n },\n trackTicket: () => {\n if (!ownProps.tracked) {\n ownProps.setTracked(true)\n dispatch(viewedVenueTicket(ownProps.ticket, ownProps.position))\n }\n },\n})\n\nconst enhance = compose(\n withState('tracked', 'setTracked', false),\n connect(mapStateToProps, mapDispatchToProps),\n withState('error', 'setError', (props) => null),\n withState('descriptionExpanded', 'setDescriptionExpanded', (props) => false),\n lifecycle({\n componentDidCatch(error, info) {\n this.props.setError(error)\n console.log('Error in VenueCardDesktop:', error, info.componentStack)\n },\n }),\n withStyles(styles),\n branch(({ error }) => error, renderNothing),\n)\n\nexport default enhance(VenueCard)\n","import React from 'react'\nimport { connect } from 'react-redux'\nimport {\n compose,\n withState,\n withProps,\n lifecycle,\n withHandlers,\n} from 'recompose'\nimport { withRouter } from 'react-router'\nimport { withStyles } from '@material-ui/core/styles'\nimport Tabs from '@material-ui/core/Tabs'\nimport Tab from '@material-ui/core/Tab'\nimport Grid from '@material-ui/core/Grid'\nimport Typography from '@material-ui/core/Typography'\nimport CircularProgress from '@material-ui/core/CircularProgress'\nimport {\n fetchVenueEvents,\n fetchVenueTickets,\n onEvent,\n} from '../../../../redux/actions'\nimport {\n selectVenue,\n selectVenueEvents,\n selectVenueTickets,\n} from '../../../../redux/selectors'\nimport { RouteConstants } from '../../../../setup/routeConstants'\nimport { getVenueDisplayName } from '../../../../utilities/tickets-util'\nimport Hero from '../Hero'\nimport EventCard from '../cards/EventCard'\nimport VenueCard from '../cards/VenueCard'\nconst styles = {\n content: {\n minHeight: '100px',\n position: 'relative',\n display: 'flex',\n justifyContent: 'center',\n maxWidth: '1200px',\n margin: (props) =>\n props.venue && props.venue.description ? '-48px auto 0px' : '0px auto',\n },\n htmlContainer: {\n marginTop: (props) =>\n props.venue && props.venue.description ? '30px' : '0px',\n fontFamily: 'geomanist-regular, Helvetica, sans-serif',\n\n '@global': {\n a: {\n color: '#00a1df',\n textDecoration: 'none',\n\n '&:hover': {\n color: '#222',\n textDecoration: 'underline',\n },\n },\n },\n },\n adContainer: {\n marginTop: '30px',\n\n '@global': {\n 'svg, img': {\n maxWidth: '100%',\n },\n a: {\n color: '#00a1df',\n textDecoration: 'none',\n\n '&:hover': {\n textDecoration: 'underline',\n },\n },\n },\n },\n tabIndicator: {\n backgroundColor: 'transparent',\n },\n selectedTab: {\n color: '#00a1df',\n },\n tabsRoot: {\n '@media(max-width: 767px)': {\n height: '36px',\n minHeight: '36px',\n marginTop: '12px',\n },\n },\n tabRoot: {\n backgroundColor: '#fff',\n borderTopRightRadius: '3px',\n borderTopLeftRadius: '3px',\n\n '@media(max-width: 767px)': {\n height: '36px',\n },\n },\n}\n\nconst VenuePage = ({\n classes,\n events,\n onTabChange,\n selectedTab,\n tickets,\n venue,\n venueName,\n}) =>\n venue ? (\n <div>\n <Hero\n data={{ ...venue, name: venue.name || venueName }}\n withTabs={venue.description}\n />\n <div className={classes.content}>\n <Grid container spacing={3}>\n <Grid item xs={12} sm={9}>\n {venue.description && (\n <Tabs\n value={selectedTab}\n onChange={(e, v) => onTabChange(v)}\n classes={{\n root: classes.tabsRoot,\n indicator: classes.tabIndicator,\n }}\n >\n <Tab\n label='Tickets'\n classes={{\n root: classes.tabRoot,\n selected: classes.selectedTab,\n }}\n style={{ marginRight: '10px' }}\n />\n <Tab\n label='More info'\n classes={{\n root: classes.tabRoot,\n selected: classes.selectedTab,\n }}\n />\n </Tabs>\n )}\n {selectedTab === 0 && (\n <div style={{ marginTop: '30px' }}>\n {tickets &&\n tickets.length > 0 &&\n tickets.map((t, i) => (\n <VenueCard\n key={i}\n ticket={t}\n venue={venue}\n isVenuePage={true}\n position={i + 1}\n />\n ))}\n {events && events.length > 0 ? (\n <div>\n <Typography\n variant='subtitle1'\n gutterBottom\n style={{ fontFamily: 'geomanist-regular' }}\n >\n Upcoming events at {venueName}\n </Typography>\n {events\n .sort(\n (a, b) => new Date(a.eventDate) - new Date(b.eventDate),\n )\n .map((e, i) => (\n <EventCard\n key={i}\n event={e}\n isVenuePage={true}\n position={i + 1}\n />\n ))}\n </div>\n ) : null}\n </div>\n )}\n {selectedTab === 1 && (\n <div\n className={classes.htmlContainer}\n dangerouslySetInnerHTML={{ __html: venue.description }}\n />\n )}\n </Grid>\n <Grid item xs={12} sm={3}>\n {venue.ads && venue.ads.trim().length > 0 && (\n <div\n className={classes.adContainer}\n dangerouslySetInnerHTML={{ __html: venue.ads }}\n />\n )}\n </Grid>\n </Grid>\n </div>\n </div>\n ) : (\n <div className={classes.content}>\n <div style={{ marginTop: '150px' }}>\n <CircularProgress />\n </div>\n </div>\n )\n\nconst mapStateToProps = (state, ownProps) => ({\n venue: selectVenue(parseInt(ownProps.match.params.id))(state),\n events: selectVenueEvents(parseInt(ownProps.match.params.id))(state),\n tickets: selectVenueTickets(parseInt(ownProps.match.params.id))(state),\n})\n\nconst mapDispatchToProps = (dispatch, ownProps) => ({\n fetchVenueEvents: (id) => dispatch(fetchVenueEvents(id)),\n fetchVenueTickets: (id) => dispatch(fetchVenueTickets(id)),\n gotoHome: () => ownProps.history.push(RouteConstants.tickets.index.path),\n trackTabClick: (index) =>\n dispatch(\n onEvent({\n category: 'Venue Page',\n action: 'Tabs',\n label: index === 0 ? 'Tickets' : 'More info',\n }),\n ),\n})\n\nconst enhance = compose(\n withRouter,\n connect(mapStateToProps, mapDispatchToProps),\n withState('selectedTab', 'setSelectedTab', (props) => 0),\n withState('error', 'setError', (props) => null),\n withProps((o) => ({\n venueName:\n o.venue && o.venue.name\n ? o.venue.name.trim().length > 0\n ? o.venue.name\n : getVenueDisplayName(o.venue)\n : 'Venue',\n })),\n lifecycle({\n componentDidMount() {\n this.props.fetchVenueEvents(parseInt(this.props.match.params.id))\n this.props.fetchVenueTickets(parseInt(this.props.match.params.id))\n },\n componentDidCatch(error, info) {\n this.props.setError(error)\n console.log('Error in Venue:', error, info.componentStack)\n this.props.gotoHome()\n },\n }),\n withHandlers({\n onTabChange: (props) => (activeTabIndex) => {\n props.setSelectedTab(activeTabIndex)\n props.trackTabClick(activeTabIndex)\n },\n }),\n withStyles(styles),\n)\n\nexport default enhance(VenuePage)\n"],"names":["_interopRequireDefault","require","_interopRequireWildcard","exports","React","_default","createElement","d","styles","card","position","display","minHeight","overflow","marginBottom","border","borderRadius","logoContainer","width","float","justifyContent","alignItems","padding","backgroundColor","props","isImageAvailable","venue","logoPicture","logo","maxWidth","maxHeight","info","isVenuePage","ticketIcon","height","fill","filter","compose","withState","connect","state","ownProps","user","selectUser","dispatch","onSignupClick","e","preventDefault","gotoRegister","onLoginClick","gotoLogin","onRestrictionsClick","ticket","fetchTicketRestrictions","id","then","restrictions","showModal","component","TicketRestrictionsModal","onTicketClick","clickedVenueTicket","accessGranted","link","discountType","gotoTicketLink","entity","type","fetchTicketDiscount","discount","finalDiscountType","launchedVenueTicketModal","TicketDiscountCodeModal","NoTicketsModal","trackTicket","tracked","setTracked","viewedVenueTicket","lifecycle","componentDidCatch","error","this","setError","console","log","componentStack","withStyles","branch","_ref2","renderNothing","_ref","classes","descriptionExpanded","setDescriptionExpanded","Sensor","partialVisibility","onChange","x","style","className","RouteLink","unstyled","to","getTicketsVenuePath","seoName","extraClass","src","buildTicketsLogoPictureUrl","alt","name","TicketIcon","Grid","container","spacing","item","xs","Typography","variant","gutterBottom","fontSize","formatEventName","noWrap","color","trim","length","getVenueDisplayName","city","concat","description","marginTop","NoActionLink","children","onClick","slice","TicketCTA","withRouter","selectVenue","parseInt","match","params","events","selectVenueEvents","tickets","selectVenueTickets","fetchVenueEvents","fetchVenueTickets","gotoHome","history","push","RouteConstants","index","path","trackTabClick","onEvent","category","action","label","withProps","o","venueName","componentDidMount","withHandlers","onTabChange","activeTabIndex","setSelectedTab","content","margin","htmlContainer","fontFamily","a","textDecoration","adContainer","tabIndicator","selectedTab","tabsRoot","tabRoot","borderTopRightRadius","borderTopLeftRadius","Hero","data","_objectSpread","withTabs","sm","Tabs","value","v","root","indicator","Tab","selected","marginRight","map","t","i","VenueCard","key","sort","b","Date","eventDate","EventCard","event","dangerouslySetInnerHTML","__html","ads","CircularProgress"],"sourceRoot":""}