import React from 'react'; import { Text, View, TouchableOpacity, Image, StyleSheet } from 'react-native'; import PropTypes from 'prop-types'; import I18n from '../../../i18n'; import sharedStyles from '../../Styles'; import { themes } from '../../../constants/colors'; const styles = StyleSheet.create({ container: { flex: 1, alignItems: 'center', justifyContent: 'center' }, button: { flexDirection: 'row' }, title: { fontSize: 14, ...sharedStyles.textRegular }, server: { fontSize: 12, ...sharedStyles.textRegular }, disclosure: { marginLeft: 3, marginTop: 1, width: 12, height: 9 }, upsideDown: { transform: [{ scaleY: -1 }], marginTop: 4 } }); const HeaderTitle = React.memo(({ connecting, isFetching, theme }) => { let title = I18n.t('Messages'); if (connecting) { title = I18n.t('Connecting'); } if (isFetching) { title = I18n.t('Updating'); } return {title}; }); const Header = React.memo(({ connecting, isFetching, serverName, showServerDropdown, onPress, theme }) => ( {serverName} )); Header.propTypes = { connecting: PropTypes.bool, isFetching: PropTypes.bool, serverName: PropTypes.string, theme: PropTypes.string, showServerDropdown: PropTypes.bool.isRequired, onPress: PropTypes.func.isRequired }; Header.defaultProps = { serverName: 'Rocket.Chat' }; HeaderTitle.propTypes = { connecting: PropTypes.bool, isFetching: PropTypes.bool, theme: PropTypes.string }; export default Header;