This commit is contained in:
henrydays 2019-03-18 19:15:53 +00:00
commit 9cd9a49c9b
6 changed files with 595 additions and 528 deletions

View File

@ -39,7 +39,10 @@ import calendarDetail from './screens/calendarDetail';
import resetPassword from './screens/resetPassword';
import eventDetail from './screens/eventDetail'
import eventDetail from './screens/eventDetail';
import rally from './screens/rallyDetail';
const navigationOptions = ({navigation}) => ({
headerLeft: <HeaderBackButton onPress={() => navigation.goBack(null)}/>,
headerStyle: {backgroundColor: 'transparent', zIndex: 100 },
@ -106,9 +109,9 @@ const AppStack = createBottomTabNavigator(
},
{
// initialRouteName: 'Home',
initialRouteName: 'Home',
tabBarOptions: {
showLabel: true, // hide labels
activeTintColor: '#CC1A17', // active icon color
@ -206,6 +209,9 @@ const Stack = createStackNavigator({
eventDetail: {
screen: eventDetail,
},
rally:{
screen: rally,
},
resetPassword:{
screen:resetPassword

View File

@ -1,12 +1,13 @@
import * as React from "react";
import {View,
StyleSheet,
Dimensions,
Text,
Button,
ScrollView,
Image,
import {
View,
StyleSheet,
Dimensions,
Text,
Button,
ScrollView,
Image,
TouchableOpacity,
FlatList
} from "react-native";
@ -15,9 +16,9 @@ import {TabView, TabBar, SceneMap} from "react-native-tab-view";
import rallyImg from '../assets/rallyTascas.jpg';
import { connect } from "react-redux";
import {connect} from "react-redux";
import { bindActionCreators } from "redux";
import {bindActionCreators} from "redux";
import * as Actions from "../store/actions"; //Import your actionss
const SCREEN_HEIGHT = Dimensions.get("window").height;
@ -42,7 +43,7 @@ _update=()=> {
]
};
componentDidMount(){
componentDidMount() {
this.props.getAllEvents(this.props.internalToken);
this.props.getEventLocsVisited(this.props.team.id,this.props.internalToken);
}
@ -52,68 +53,66 @@ _update=()=> {
const {navigate} = this.props.navigation;
return (
<PTRView onRefresh={this._update}>
<View style={styles.container}>
<ScrollView styles={styles.scroll}>
<FlatList
data={this.props.eventsInternal}
renderItem={({item}) =>
<View>
<TouchableOpacity onPress={() => navigate('eventDetail',{ info: item })}>
<View style={styles.cardContainer}>
<Image
style={{
flex: 1,
width: undefined,
height: undefined
}}
resizeMode="contain"
source={{uri: item.imagem}}
>
</Image>
<View style={styles.cardDesc}>
<Text style={styles.cardDescText}>{item.nome}</Text>
<Text style={styles.cardHours}>{item.horas}</Text>
</View>
</View>
</TouchableOpacity>
</View>}
/>
</ScrollView>
</View>
<View style={styles.container}>
<ScrollView styles={styles.scroll}>
<FlatList
data={this.props.eventsInternal}
renderItem={({item}) =>
<View>
<TouchableOpacity onPress={() => navigate('eventDetail', {info: item})}>
<View style={styles.cardContainer}>
<Image
style={{
flex: 1,
width: undefined,
height: undefined
}}
resizeMode="contain"
source={{uri: item.imagem}}
>
</Image>
<View style={styles.cardDesc}>
<Text style={styles.cardDescText}>{item.nome}</Text>
<Text style={styles.cardHours}>{item.horas}</Text>
</View>
</View>
</TouchableOpacity>
</View>}
/>
</ScrollView>
</View>
</PTRView>
);
}
}
const styles = StyleSheet.create({
cardHours:{
textAlign:'center',
color:'white',
margin:10,
// width:'20%'
cardHours: {
textAlign: 'center',
color: 'white',
margin: 10,
// width:'20%'
},
cardDesc:{
cardDesc: {
//alignSelf:'center',
backgroundColor:'#CC1A17',
// flex:1,
flexDirection:'row',
backgroundColor: '#CC1A17',
// flex:1,
flexDirection: 'row',
},
cardDescText:{
fontWeight:'bold',
color:'white',
fontSize:18,
width:'45%',
margin:10
cardDescText: {
fontWeight: 'bold',
color: 'white',
fontSize: 18,
width: '45%',
margin: 10
},
container: {
@ -121,8 +120,8 @@ const styles = StyleSheet.create({
flex: 1,
flexGrow: 1,
flexDirection: 'column',
paddingBottom:20
paddingBottom: 20
},
@ -135,7 +134,7 @@ const styles = StyleSheet.create({
//flexDirection: 'row',
//padding: 10,
margin: 20,
marginBottom:0,
marginBottom: 0,
backgroundColor: '#fff',
height: SCREEN_WIDTH * 0.62,
borderRadius: 5,
@ -146,28 +145,29 @@ const styles = StyleSheet.create({
flex: 1
}
});
function mapStateToProps(state, props) {
return {
token: state.apiReducer.token,
user: state.apiReducer.user,
logged: state.apiReducer.logged,
userDetails: state.apiReducer.userDetails,
onHold: state.apiReducer.onHold,
bilhete: state.apiReducer.bilhete,
alimentacao: state.apiReducer.alimentacao,
alojamento: state.apiReducer.alojamento,
acesso: state.apiReducer.acesso,
team: state.apiReducer.team,
internalToken: state.apiReducer.internalToken,
eventsInternal:state.apiReducer.eventsInternal
token: state.apiReducer.token,
user: state.apiReducer.user,
logged: state.apiReducer.logged,
userDetails: state.apiReducer.userDetails,
onHold: state.apiReducer.onHold,
bilhete: state.apiReducer.bilhete,
alimentacao: state.apiReducer.alimentacao,
alojamento: state.apiReducer.alojamento,
acesso: state.apiReducer.acesso,
team: state.apiReducer.team,
internalToken: state.apiReducer.internalToken,
eventsInternal: state.apiReducer.eventsInternal
};
}
function mapDispatchToProps(dispatch) {
}
function mapDispatchToProps(dispatch) {
return bindActionCreators(Actions, dispatch);
}
export default connect(
}
export default connect(
mapStateToProps,
mapDispatchToProps
)(Eventos);
)(Eventos);

View File

@ -353,7 +353,7 @@ _creatTeam=()=>{
}}
>
<View style={{ width: "60%" }}>
<Text
<Text onPress={() => navigate('rally')}
style={{
fontSize: 25,
color: "white",
@ -374,7 +374,7 @@ _creatTeam=()=>{
{this.props.team.nMembros}/6 elementos
</Text>
</View>
{ this.props.team!= undefined && this.props.team.cap.qRcode == this.props.user.Code && <TouchableOpacity onPress={this._delTeam}>
{ this.props.team != undefined && this.props.team.cap.qRcode == this.props.user.Code && <TouchableOpacity onPress={this._delTeam}>
<View
style={{
alignItems: "center",

View File

@ -1,32 +1,32 @@
import * as React from "react";
import {
View,
StyleSheet,
Dimensions,
Image,
ScrollView,
Text,
Button,
TouchableOpacity,
ImageBackground,
ListView,
FlatList,
ActivityIndicator
View,
StyleSheet,
Dimensions,
Image,
ScrollView,
Text,
Button,
TouchableOpacity,
ImageBackground,
ListView,
FlatList,
ActivityIndicator
} from "react-native";
import moment from "moment";
import { Divider, Icon, Avatar } from "react-native-elements";
import { TabView, TabBar, SceneMap } from "react-native-tab-view";
import { RkButton, RkCard, RkText, RkTheme } from "react-native-ui-kitten";
import {Divider, Icon, Avatar} from "react-native-elements";
import {TabView, TabBar, SceneMap} from "react-native-tab-view";
import {RkButton, RkCard, RkText, RkTheme} from "react-native-ui-kitten";
import Timeline from "react-native-timeline-feed";
import * as Progress from "react-native-progress";
import NavAbsolute from "../components/Nav";
import { connect } from "react-redux";
import {connect} from "react-redux";
import { bindActionCreators } from "redux";
import {bindActionCreators} from "redux";
import * as Actions from "../store/actions"; //Import your actionss
import Swiper from "react-native-swiper";
@ -36,363 +36,362 @@ const SCREEN_WIDTH = Dimensions.get("window").width;
import FitImage from "react-native-fit-image";
import MapView, { PROVIDER_GOOGLE } from "react-native-maps";
import MapView, {PROVIDER_GOOGLE} from "react-native-maps";
const formatObj = obj => {
let a = {};
let a = {};
a.push({});
a.push({});
return a;
return a;
};
class eventDetail extends React.Component {
static navigationOptions = ({ navigation }) => ({
header: (
<NavAbsolute
navigation={navigation}
// title={navigation.state.params.info.name}
/>
)
});
static navigationOptions = ({navigation}) => ({
header: (
<NavAbsolute
navigation={navigation}
// title={navigation.state.params.info.name}
/>
)
});
state = {};
state = {};
componentDidMount() {
const { navigation } = this.props;
const info = navigation.getParam("info", "error");
componentDidMount() {
}
_update = () => {
this.setState({ user: this.props.user });
};
constructor(props) {
super(props);
this.data = [];
}
const {navigation} = this.props;
const info = navigation.getParam("info", "error");
render() {
const { navigation } = this.props;
const info = navigation.getParam("info", "error");
}
_update = () => {
this.setState({user: this.props.user});
return (
<View style={styles.mainViewStyle}>
<ScrollView style={styles.scroll}>
<View style={styles.container}>
<View style={styles.headerContainer}>
<View style={styles.headerContainer}>
<View style={styles.coverContainer}>
<ImageBackground
source={{
uri: info.imagem
}}
style={styles.coverImage}
/>
</View>
</View>
};
constructor(props) {
super(props);
this.data = [];
}
render() {
const {navigation} = this.props;
const info = navigation.getParam("info", "error");
return (
<View style={styles.mainViewStyle}>
<ScrollView style={styles.scroll}>
<View style={styles.container}>
<View style={styles.headerContainer}>
<View style={styles.headerContainer}>
<View style={styles.coverContainer}>
<ImageBackground
source={{
uri: info.imagem
}}
style={styles.coverImage}
/>
</View>
</View>
</View>
<View>
<View style={styles.header}>
<View
style={{
flexDirection: "row",
alignItems: "center",
alignSelf: "center"
}}
>
<View style={styles.timeText}>
<Text style={{color: "#CC1A17", fontSize: 15}}>
{info.hora}
</Text>
<Text>{info.horas}</Text>
</View>
</View>
<View>
<Text
style={{
margin: 10,
marginBottom: 0,
marginTop: 0,
marginBottom: 10,
fontSize: 20,
color: "#CC1A17"
}}
>
{info.nome}
</Text>
<View style={{margin: 10}}>
<Text
style={{fontSize: 15, color: "#CC1A17", fontWeight: "bold"}}
>
Descrição:
</Text>
<Divider style={{backgroundColor: "#000"}}/>
<View style={{marginTop: 10}}>
<Text>{info.desc}</Text>
</View>
<Text
style={{fontSize: 15, color: "#CC1A17", fontWeight: "bold", marginTop: 10}}
>
Como posso participar?
</Text>
<Divider style={{backgroundColor: "#000"}}/>
<View style={{marginTop: 10}}>
<Text>{info.notas}</Text>
</View>
<Text
style={{fontSize: 15, color: "#CC1A17", fontWeight: "bold", marginTop: 10}}
>
Qual é o custo de participação?
</Text>
<Divider style={{backgroundColor: "#000"}}/>
<View style={{marginTop: 10}}>
<Text>{info.custo}</Text>
</View>
</View>
</View>
</View>
</View>
</View>
<View style={styles.block}>
<Text
style={{fontSize: 15, color: "#CC1A17", fontWeight: "bold"}}
>
Localização
</Text>
<Divider style={{backgroundColor: "#000", marginBottom: 10}}/>
<Text>{info.localizacao}</Text>
</View>
</ScrollView>
<Divider style={{backgroundColor: "black"}}/>
</View>
<View>
<View style={styles.header}>
<View
style={{
flexDirection: "row",
alignItems: "center",
alignSelf: "center"
}}
>
<View style={styles.timeText}>
<Text style={{ color: "#CC1A17", fontSize: 15 }}>
{info.hora}
</Text>
<Text>{info.horas}</Text>
</View>
</View>
<View >
<Text
style={{
margin: 10,
marginBottom: 0,
marginTop: 0,
marginBottom:10,
fontSize: 20,
color: "#CC1A17"
}}
>
{info.nome}
</Text>
<View style={{margin:10}}>
<Text
style={{ fontSize: 15, color: "#CC1A17", fontWeight: "bold" }}
>
Descrição:
</Text>
<Divider style={{ backgroundColor: "#000" }} />
<View style={{ marginTop: 10 }}>
<Text>{info.desc}</Text>
</View>
<Text
style={{ fontSize: 15, color: "#CC1A17", fontWeight: "bold" ,marginTop:10}}
>
Como posso participar?
</Text>
<Divider style={{ backgroundColor: "#000" }} />
<View style={{ marginTop: 10 }}>
<Text>{info.notas}</Text>
</View>
<Text
style={{ fontSize: 15, color: "#CC1A17", fontWeight: "bold" ,marginTop:10}}
>
Qual é o custo de participação?
</Text>
<Divider style={{ backgroundColor: "#000" }} />
<View style={{ marginTop: 10 }}>
<Text>{info.custo}</Text>
</View>
</View>
</View>
</View>
</View>
</View>
<View style={styles.block}>
<Text
style={{ fontSize: 15, color: "#CC1A17", fontWeight: "bold" }}
>
Localização
</Text>
<Divider style={{ backgroundColor: "#000", marginBottom: 10 }} />
<Text>{info.localizacao}</Text>
</View>
</ScrollView>
<Divider style={{ backgroundColor: "black" }} />
</View>
);
}
);
}
}
const styles = StyleSheet.create({
block: {
marginTop: 15,
block: {
marginTop: 15,
backgroundColor: "white",
padding: 20,
shadowOffset: {
width: 0,
height: 2
backgroundColor: "white",
padding: 20,
shadowOffset: {
width: 0,
height: 2
},
shadowOpacity: 0.25,
shadowRadius: 3.84,
elevation: 3
},
shadowOpacity: 0.25,
shadowRadius: 3.84,
elevation: 3
},
AttendeeContainer: {
flexDirection: "row",
height: 55,
justifyContent: "center",
marginLeft: 10,
marginRight: 10
},
centerRow: {
alignItems: "center",
backgroundColor: "transparent",
flex: 3,
flexDirection: "column",
justifyContent: "center"
},
leftRow: {
backgroundColor: "transparent",
flex: 1,
flexDirection: "row",
justifyContent: "flex-start",
alignSelf: "center"
},
rightRow: {
alignItems: "flex-end",
backgroundColor: "transparent",
flex: 2,
flexDirection: "row",
justifyContent: "flex-end",
marginRight: 4,
alignSelf: "center"
},
icon: {
justifyContent: "flex-start",
marginTop: 2.8
},
nameAttendee: {
alignSelf: "center",
fontSize: 20,
fontWeight: "400",
color: "#000",
marginBottom: 10
},
details: {
marginTop: 20,
flex: 1,
alignSelf: "center"
},
infoRow: {
margin: 25
},
ramoText: {
alignSelf: "flex-start",
marginBottom: 5,
color: "white",
fontSize: 17,
fontWeight: "400"
},
timeText: {
alignItems: "flex-end",
flex: 2,
lineHeight: 10,
marginRight: 20
},
mainViewStyle: {
flex: 1,
flexGrow: 1,
flexDirection: "column"
},
scroll: {
backgroundColor: "#eee",
flex: 1
//marginBottom: 55,
},
header: {
flex: 1,
padding: 10,
backgroundColor: "white",
borderRadius: 0,
shadowColor: "#000",
shadowOffset: {
width: 0,
height: 2
AttendeeContainer: {
flexDirection: "row",
height: 55,
justifyContent: "center",
marginLeft: 10,
marginRight: 10
},
shadowOpacity: 0.25,
shadowRadius: 3.84,
elevation: 3
},
cardContainer: {
flex: 1,
padding: 10,
// margin: 20,
backgroundColor: "white",
borderRadius: 5
},
centerRow: {
alignItems: "center",
backgroundColor: "transparent",
flex: 3,
flexDirection: "column",
justifyContent: "center"
},
headerContainer: {
flex: 1
},
leftRow: {
backgroundColor: "transparent",
flex: 1,
flexDirection: "row",
justifyContent: "flex-start",
alignSelf: "center"
},
rightRow: {
alignItems: "flex-end",
backgroundColor: "transparent",
flex: 2,
flexDirection: "row",
justifyContent: "flex-end",
marginRight: 4,
alignSelf: "center"
},
container: {
flex: 1,
flexDirection: "column"
},
coverContainer: {
position: "relative"
},
coverImage: {
height: Dimensions.get("window").width * (2 / 4),
width: Dimensions.get("window").width
},
/*headerContainer: {
alignItems: 'center',
backgroundColor: '#FFF',
},*/
icon: {
justifyContent: "flex-start",
marginTop: 2.8
},
carreerPathContainer: {
backgroundColor: "#CC1A17",
height: 50,
flex: 1,
alignItems: "center",
justifyContent: "center",
paddingTop: 15
},
carreerPathText: {
height: 50,
color: "white",
fontWeight: "bold",
fontSize: 20
},
companyHeader: {
backgroundColor: "#dddddd",
// height:150,
borderRadius: 5,
margin: 10,
padding: 10
},
companyTitle: {
paddingBottom: 5,
fontWeight: "bold",
color: "#777777",
fontSize: 17
nameAttendee: {
alignSelf: "center",
fontSize: 20,
fontWeight: "400",
color: "#000",
marginBottom: 10
},
// padding:20
},
companyLogo: {
borderRadius: 20
},
details: {
marginTop: 20,
flex: 1,
alignSelf: "center"
},
wrapper: {},
company: {
flex: 1,
flexDirection: "row",
// backgroundColor:'red',
color: "black"
},
infoRow: {
margin: 25
},
companyLogoContainer: {
flex: 1,
justifyContent: "center",
width: "60%",
// backgroundColor:'white',
margin: 20
},
aboutCompany: {
width: SCREEN_WIDTH,
flex: 1,
justifyContent: "center",
alignItems: "center"
}
ramoText: {
alignSelf: "flex-start",
marginBottom: 5,
color: "white",
fontSize: 17,
fontWeight: "400"
},
timeText: {
alignItems: "flex-end",
flex: 2,
lineHeight: 10,
marginRight: 20
},
mainViewStyle: {
flex: 1,
flexGrow: 1,
flexDirection: "column"
},
scroll: {
backgroundColor: "#eee",
flex: 1
//marginBottom: 55,
},
header: {
flex: 1,
padding: 10,
backgroundColor: "white",
borderRadius: 0,
shadowColor: "#000",
shadowOffset: {
width: 0,
height: 2
},
shadowOpacity: 0.25,
shadowRadius: 3.84,
elevation: 3
},
cardContainer: {
flex: 1,
padding: 10,
// margin: 20,
backgroundColor: "white",
borderRadius: 5
},
headerContainer: {
flex: 1
},
container: {
flex: 1,
flexDirection: "column"
},
coverContainer: {
position: "relative"
},
coverImage: {
height: Dimensions.get("window").width * (2 / 4),
width: Dimensions.get("window").width
},
/*headerContainer: {
alignItems: 'center',
backgroundColor: '#FFF',
},*/
carreerPathContainer: {
backgroundColor: "#CC1A17",
height: 50,
flex: 1,
alignItems: "center",
justifyContent: "center",
paddingTop: 15
},
carreerPathText: {
height: 50,
color: "white",
fontWeight: "bold",
fontSize: 20
},
companyHeader: {
backgroundColor: "#dddddd",
// height:150,
borderRadius: 5,
margin: 10,
padding: 10
},
companyTitle: {
paddingBottom: 5,
fontWeight: "bold",
color: "#777777",
fontSize: 17
// padding:20
},
companyLogo: {
borderRadius: 20
},
wrapper: {},
company: {
flex: 1,
flexDirection: "row",
// backgroundColor:'red',
color: "black"
},
companyLogoContainer: {
flex: 1,
justifyContent: "center",
width: "60%",
// backgroundColor:'white',
margin: 20
},
aboutCompany: {
width: SCREEN_WIDTH,
flex: 1,
justifyContent: "center",
alignItems: "center"
}
});
function mapStateToProps(state, props) {
return {
token: state.apiReducer.token,
user: state.apiReducer.user,
logged: state.apiReducer.logged,
careerPath: state.apiReducer.careerPath,
sessionDetail: state.apiReducer.sessionDetail
};
return {
token: state.apiReducer.token,
user: state.apiReducer.user,
logged: state.apiReducer.logged,
careerPath: state.apiReducer.careerPath,
sessionDetail: state.apiReducer.sessionDetail
};
}
function mapDispatchToProps(dispatch) {
return bindActionCreators(Actions, dispatch);
return bindActionCreators(Actions, dispatch);
}
export default connect(
mapStateToProps,
mapDispatchToProps
mapStateToProps,
mapDispatchToProps
)(eventDetail);

View File

@ -0,0 +1,165 @@
/*
/*
/*
/*Esta página só está disponivel a 1 hora do rally..
*/
import * as React from "react";
import {View, StyleSheet, Dimensions, Text, Button, ScrollView} from "react-native";
import {TabView, TabBar, SceneMap} from "react-native-tab-view";
import * as Actions from "../store/actions";
import {connect} from "react-redux";
import {bindActionCreators} from "redux";
const SCREEN_WIDTH = Dimensions.get("window").width;
const SCREEN_HEIGHT = Dimensions.get("window").height;
export default class rallyDetail extends React.Component {
render() {
return (
<View>
<View style={styles.container}>
<View style={{height: SCREEN_HEIGHT * 0.1, paddingBottom: 10}}>
<View style={styles.row}>
<View style={styles.leftRow}>
<Text style={[styles.headerText, {color: '#777'}]}>
NOME
</Text>
</View>
<View style={styles.rightRow}>
<Text style={styles.headerText}>
Pontos
</Text>
</View>
</View>
</View>
<View style={{height: SCREEN_HEIGHT * 0.15, paddingBottom: 10}}>
<View style={styles.row}>
<ScrollView horizontal>
<View>
<Text>jdasdnoa</Text>
</View><View>
<Text>asd</Text>
</View><View>
<Text>ccc</Text>
</View><View>
<Text>jdasddddddnoa</Text>
</View><View>
<Text>fddsdfe</Text>
</View><View>
<Text>ertfvvc</Text>
</View><View>
<Text>cxaqwee</Text>
</View><View>
<Text>pokmdhjene</Text>
</View><View>
<Text>mndjheke</Text>
</View><View>
<Text>qaploef</Text>
</View><View>
<Text>ploçter</Text>
</View><View>
<Text>çpolx</Text>
</View>
</ScrollView>
</View>
</View>
<ScrollView style={styles.row}>
<FlatList
data={this.props.eventsInternal}
renderItem={({item}) =>
<View>
<TouchableOpacity onPress={() => navigate('eventDetail', {info: item})}>
<View style={styles.cardContainer}>
<Image
style={{
flex: 1,
width: undefined,
height: undefined
}}
resizeMode="contain"
source={{uri: item.imagem}}
>
</Image>
<View style={styles.cardDesc}>
<Text style={styles.cardDescText}>{item.nome}</Text>
<Text style={styles.cardHours}>{item.horas}</Text>
</View>
</View>
</TouchableOpacity>
</View>}
/>
</ScrollView>
</View>
</View>
)
}
}
const styles = StyleSheet.create({
container: {
margin: 10,
flex: 1,
flexGrow: 1,
flexDirection: "column"
},
row: {
flex: 1,
flexDirection: 'row',
padding: 10,
backgroundColor: "white",
borderRadius: 0,
shadowColor: "#000",
shadowOffset: {
width: 0,
height: 2
},
shadowOpacity: 0.25,
shadowRadius: 3.84,
elevation: 3
},
headerText: {
fontSize: 25,
color: "#CC1A17",
fontWeight: "bold",
},
centerRow: {
alignItems: "center",
backgroundColor: "transparent",
flex: 3,
flexDirection: "column",
justifyContent: "center"
},
leftRow: {
backgroundColor: "transparent",
flex: 1,
flexDirection: "row",
justifyContent: "flex-start",
alignSelf: "center"
},
rightRow: {
alignItems: "flex-end",
backgroundColor: "transparent",
flex: 2,
flexDirection: "row",
justifyContent: "flex-end",
marginRight: 4,
alignSelf: "center"
},
});

View File

@ -1,103 +0,0 @@
/*
/*
/*
/*Esta página só está disponivel a 1 hora do rally..
*/
import * as React from "react";
import {View, StyleSheet, Dimensions, Text, Button, ScrollView} from "react-native";
import {TabView, TabBar, SceneMap} from "react-native-tab-view";
import * as Actions from "../store/actions";
import {connect} from "react-redux";
import {bindActionCreators} from "redux";
export default class rallyTascas extends React.Component {
render() {
return (
<View>
<View style={styles.headerRow}>
<View style={styles.leftRow}>
<Text styles={styles.headerText}>
ndjiew
</Text>
</View>
<View style={styles.rightRow}>
<Text style={styles.headerText}>
rfmeof
</Text>
</View>
</View>
<ScrollView horizontal style={}>
</ScrollView>
<ScrollView>
</ScrollView>
</View>
)
}
}
const styles = StyleSheet.create({
headerRow: {
flex: 1,
flexDirection: "row",
},
headerText: {
fontSize: 15,
color: "#CC1A17",
fontWeight: "bold",
},
centerRow: {
alignItems: "center",
backgroundColor: "transparent",
flex: 3,
flexDirection: "column",
justifyContent: "center"
},
leftRow: {
backgroundColor: "transparent",
flex: 1,
flexDirection: "row",
justifyContent: "flex-start",
alignSelf: "center"
},
rightRow: {
alignItems: "flex-end",
backgroundColor: "transparent",
flex: 2,
flexDirection: "row",
justifyContent: "flex-end",
marginRight: 4,
alignSelf: "center"
},
});
function mapStateToProps(state, props) {
return {
token: state.apiReducer.token,
user: state.apiReducer.user,
logged: state.apiReducer.logged,
events: state.apiReducer.events
}
}
function mapDispatchToProps(dispatch) {
return bindActionCreators(Actions, dispatch);
}
export default connect(mapStateToProps, mapDispatchToProps)(rallyTascas);