/** * BracketViewController * * Yeah, I do it iOS style. Handles displaying tournament bracket data. * * @copyright Ryan McGrath 2018. */ import moment from 'moment'; import React from 'react'; import {ScrollView, Text, View} from 'react-native'; import {v4} from 'uuid'; //import SmashGG from '../store'; import MemeleeViewController from './MemeleeViewController'; const Match = ({set, ...rest}) => ( {set.entrant1.name ? set.entrant1.name : ''} {set.entrant1Score} {set.entrant2.name ? set.entrant2.name : ''} {set.entrant2Score} ); export default class BracketViewController extends MemeleeViewController { state = { brackets: { winners: [], losers: [], grandFinals: [] } }; componentWillMount() { const evtSlugs = this.props.evt.slug.split('/'); const evtSlug = evtSlugs.length > 0 ? evtSlugs[evtSlugs.length - 1] : null; const tournamentSlug = this.props.tournament.slugs[0].replace('tournament/', ''); SmashGG.fetchBracketData(tournamentSlug, evtSlug, this.props.bracket.id).then(this.updateBracketsData).catch(console.error); } updateBracketsData = (brackets) => { this.setState({brackets: brackets}); } render() { return ( {['winners', 'losers'].map(key => ( {this.state.brackets[key].map(bracket => ( {bracket.title} {bracket.sets.map(set => )} ))} ))} ); } }