import React from 'react' import { connect } from 'react-redux' import { Arrow } from '../nav/viewer.icons' import { parseCredits, groupColumns } from 'app/utils/viewer.utils' const VenuesList = ({ venues }) => { const [ open, setOpen ] = React.useState(-1) return (
Previous venues
{venues.order.map(id => ( ))}
) } const mapStateToProps = state => ({ episodes: state.episode.index, venues: state.venue.index, }) export const Venues = connect(mapStateToProps)(VenuesList) export const CreditsColumns = ({ lines }) => { const creditSections = parseCredits(lines) return (
{creditSections.map(section => (
{section.title}
{section.lines.map((line, j) => (
))}
))}
) } const CreditsVenue = ({ venue, open, setOpen }) => { // const [ open, setOpen ] = React.useState(-1) const isOpen = open === venue.id const creditSections = parseCredits(venue.settings.credits) return (
setOpen(isOpen ? -1 : venue.id)}>
{venue.title}
{venue.date}
{isOpen && (
{creditSections.map(section => (
{section.title}
{section.lines.map((line, j) => (
))}
))}
)}
) } export const ArtistColumns = ({ artists }) => { const artistGroups = groupColumns(artists.trim().split('\n'), 4) return (
Artists
{artistGroups.map((group, i) => (
{group.map((line, j) => (
{line}
))}
))}
) }