diff options
| author | mo khan <mo@mokhan.ca> | 2016-12-31 18:16:44 -0700 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2016-12-31 18:16:44 -0700 |
| commit | a48e4510133cbf1f6067f0e08f5e303c3b79f004 (patch) | |
| tree | b7392d7fe5b0a0233af3fda526ccac3d5e94db21 | |
| parent | 22cdcc870306cb780d8c31626d5d04ade021de99 (diff) | |
render button for each set.
| -rw-r--r-- | app/components/set.js | 20 | ||||
| -rw-r--r-- | app/components/weight.js | 10 | ||||
| -rw-r--r-- | app/screens/new-workout-screen.js | 1 | ||||
| -rw-r--r-- | app/screens/workout-screen.js | 5 |
4 files changed, 35 insertions, 1 deletions
diff --git a/app/components/set.js b/app/components/set.js new file mode 100644 index 0000000..9e1c4f2 --- /dev/null +++ b/app/components/set.js @@ -0,0 +1,20 @@ +import React, { Component } from 'react'; +import { View } from 'react-native'; +import { Button, Icon, Spinner, Text } from 'native-base'; +import Weight from './weight'; + +export default class Set extends Component { + constructor(props) { + super(props); + this.state = { + actual_repetitions: 0 + }; + } + render() { + return ( + <Button block info> + {this.state.actual_repetitions} / {this.props.target_repetitions} @ <Weight weight={this.props.target_weight} /> + </Button> + ); + } +} diff --git a/app/components/weight.js b/app/components/weight.js new file mode 100644 index 0000000..65c6272 --- /dev/null +++ b/app/components/weight.js @@ -0,0 +1,10 @@ +import React, { Component } from 'react'; +import { Text } from 'react-native'; + +export default class Weight extends Component { + render() { + return ( + <Text>{this.props.weight.amount} {this.props.weight.unit}</Text> + ); + } +} diff --git a/app/screens/new-workout-screen.js b/app/screens/new-workout-screen.js index b1ce831..5049f42 100644 --- a/app/screens/new-workout-screen.js +++ b/app/screens/new-workout-screen.js @@ -98,6 +98,7 @@ export default class NewWorkoutScreen extends Screen { case events.FETCHED_NEW_WORKOUT: this.setState({ isLoading: false, ...event }); case events.CREATED_WORKOUT: + console.dir(event); this.loadScreen(WorkoutScreen, { ...event }) } } diff --git a/app/screens/workout-screen.js b/app/screens/workout-screen.js index 86e6670..6d01e1a 100644 --- a/app/screens/workout-screen.js +++ b/app/screens/workout-screen.js @@ -2,6 +2,7 @@ import * as events from '../services/events'; import React, { Component } from 'react'; import { View } from 'react-native'; import Screen from './screen'; +import Set from '../components/set'; import { Container, Header, Title, Content, Footer, FooterTab, Button, Icon, Spinner, DeckSwiper, Text, List, ListItem } from 'native-base'; export default class WorkoutScreen extends Screen { @@ -24,7 +25,9 @@ export default class WorkoutScreen extends Screen { <ListItem button> <View style={{flex: 1}}> <Text>{exercise.name}</Text> - {sets.map((set) => <Button key={set.id} rounded info>{set.actual_repetitions || ' '}</Button>)} + <View style={{flexDirection: 'column'}}> + {sets.map((set) => <Set key={set.id} {...set} />)} + </View> </View> </ListItem> ); |
