Moves Logo component to separate file

This commit is contained in:
mashazyu
2020-03-24 12:33:50 +01:00
committed by Sofiya Tepikin
parent 4d6f0db30a
commit bf4446c742
2 changed files with 48 additions and 47 deletions
+7 -47
View File
@@ -1,21 +1,12 @@
import React, { Component } from 'react'
import { StyleSheet, TouchableOpacity, View } from 'react-native'
import PropTypes from 'prop-types'
import { StyleSheet, View } from 'react-native'
import AppText from '../common/app-text'
import Logo from './logo'
import SideMenu from './side-menu'
import { connect } from 'react-redux'
import { navigate } from '../../slices/navigation'
import { Colors, Containers, Fonts, Sizes } from '../../styles/redesign'
class Header extends Component {
static propTypes = {
navigate: PropTypes.func.isRequired
}
import { Colors, Containers, Sizes } from '../../styles/redesign'
export default class Header extends Component {
constructor(props) {
super(props)
@@ -31,48 +22,17 @@ class Header extends Component {
return (
<View style={styles.header}>
<DripIcon navigate={this.props.navigate}/>
<SideMenu
shouldShowMenu={shouldShowMenu}
onPress={this.toggleMenu}
/>
<Logo />
<SideMenu shouldShowMenu={shouldShowMenu} onPress={this.toggleMenu}/>
</View >
)
}
}
const DripIcon = ({ navigate }) => {
return(
<TouchableOpacity onPress={() => navigate('Home')}>
<AppText style={styles.icon}>drip.</AppText>
</TouchableOpacity>
)
}
DripIcon.propTypes = {
navigate: PropTypes.func.isRequired
}
const styles = StyleSheet.create({
header: {
backgroundColor: Colors.purple,
padding: Sizes.base,
...Containers.rowContainer
},
icon: {
color: Colors.tourquiseDark,
fontFamily: Fonts.bold,
fontSize: Sizes.title
}
})
const mapDispatchToProps = (dispatch) => {
return({
navigate: (page) => dispatch(navigate(page)),
})
}
export default connect(
null,
mapDispatchToProps,
)(Header)
})
+41
View File
@@ -0,0 +1,41 @@
import React from 'react'
import { StyleSheet, TouchableOpacity } from 'react-native'
import PropTypes from 'prop-types'
import AppText from '../common/app-text'
import { connect } from 'react-redux'
import { navigate } from '../../slices/navigation'
import { Colors, Fonts, Sizes } from '../../styles/redesign'
const Logo = ({ navigate }) => {
return(
<TouchableOpacity onPress={() => navigate('Home')}>
<AppText style={styles.logo}>drip.</AppText>
</TouchableOpacity>
)
}
Logo.propTypes = {
navigate: PropTypes.func.isRequired
}
const styles = StyleSheet.create({
logo: {
color: Colors.tourquiseDark,
fontFamily: Fonts.bold,
fontSize: Sizes.title
}
})
const mapDispatchToProps = (dispatch) => {
return({
navigate: (page) => dispatch(navigate(page)),
})
}
export default connect(
null,
mapDispatchToProps,
)(Logo)