import { MaterialCommunityIcons } from '@expo/vector-icons';
import {
Image,
Pressable,
ScrollView,
StyleSheet,
Text,
View,
} from 'react-native';
const PRIMARY = '#083318';
const SECONDARY = '#4E8214';
const BACKGROUND = '#F4F7F2';
const TEXT = '#163321';
const MUTED = '#6B786F';
const BORDER = '#E2E8E2';
type MenuItemProps = {
icon: keyof typeof MaterialCommunityIcons.glyphMap;
title: string;
subtitle: string;
};
function MenuItem({ icon, title, subtitle }: MenuItemProps) {
return (
{title}
{subtitle}
);
}
function DataRow({
icon,
label,
value,
}: {
icon: keyof typeof MaterialCommunityIcons.glyphMap;
label: string;
value: string;
}) {
return (
{label}
{value}
);
}
export default function MenuPrincipalScreen() {
return (
Produtor
Acompanhe suas atividades no projeto G10 Bio
Propriedade
Área cadastrada para acompanhamento
Geocerca cadastrada
Dados cadastrais
Informações da propriedade
);
}
const styles = StyleSheet.create({
screen: {
flex: 1,
backgroundColor: PRIMARY,
},
container: {
paddingHorizontal: 18,
paddingTop: 18,
paddingBottom: 40,
},
headerCard: {
backgroundColor: '#FFFFFF',
borderRadius: 28,
paddingHorizontal: 20,
paddingVertical: 18,
alignItems: 'center',
},
logo: {
width: 205,
height: 105,
},
appName: {
marginTop: 4,
fontSize: 27,
fontWeight: '900',
color: TEXT,
},
appSubtitle: {
marginTop: 5,
fontSize: 13,
fontWeight: '600',
color: MUTED,
textAlign: 'center',
},
menuBox: {
marginTop: 16,
backgroundColor: '#FFFFFF',
borderRadius: 26,
overflow: 'hidden',
},
menuItem: {
minHeight: 84,
paddingHorizontal: 16,
paddingVertical: 14,
flexDirection: 'row',
alignItems: 'center',
borderBottomWidth: 1,
borderBottomColor: BORDER,
},
menuItemIcon: {
width: 54,
height: 54,
borderRadius: 18,
backgroundColor: '#EDF5E9',
alignItems: 'center',
justifyContent: 'center',
marginRight: 13,
},
menuItemTextBox: {
flex: 1,
},
menuItemTitle: {
color: TEXT,
fontSize: 17,
fontWeight: '900',
},
menuItemSubtitle: {
color: MUTED,
fontSize: 12,
lineHeight: 18,
marginTop: 3,
},
sectionCard: {
marginTop: 16,
backgroundColor: '#FFFFFF',
borderRadius: 26,
padding: 17,
},
sectionHeader: {
flexDirection: 'row',
alignItems: 'center',
marginBottom: 15,
},
sectionIcon: {
width: 48,
height: 48,
borderRadius: 17,
backgroundColor: '#EDF5E9',
alignItems: 'center',
justifyContent: 'center',
marginRight: 12,
},
sectionTitle: {
color: TEXT,
fontSize: 20,
fontWeight: '900',
},
sectionSubtitle: {
color: MUTED,
fontSize: 12,
marginTop: 2,
},
mapBox: {
height: 275,
borderRadius: 22,
overflow: 'hidden',
backgroundColor: BACKGROUND,
position: 'relative',
},
mapImage: {
width: '100%',
height: '100%',
},
mapOverlay: {
...StyleSheet.absoluteFillObject,
alignItems: 'center',
justifyContent: 'center',
},
geofenceShape: {
width: 125,
height: 145,
backgroundColor: 'rgba(76, 175, 80, 0.42)',
borderWidth: 3,
borderColor: '#F2B600',
transform: [
{ rotate: '7deg' },
{ skewX: '-5deg' },
],
},
mapBadge: {
position: 'absolute',
left: 12,
bottom: 12,
backgroundColor: 'rgba(8, 51, 24, 0.88)',
borderRadius: 15,
paddingHorizontal: 11,
paddingVertical: 8,
flexDirection: 'row',
alignItems: 'center',
},
mapBadgeText: {
color: '#FFFFFF',
fontSize: 12,
fontWeight: '800',
marginLeft: 6,
},
dataList: {
borderWidth: 1,
borderColor: BORDER,
borderRadius: 20,
overflow: 'hidden',
},
dataRow: {
minHeight: 68,
flexDirection: 'row',
alignItems: 'center',
paddingHorizontal: 14,
paddingVertical: 11,
borderBottomWidth: 1,
borderBottomColor: BORDER,
},
dataIcon: {
width: 40,
height: 40,
borderRadius: 14,
backgroundColor: '#EDF5E9',
alignItems: 'center',
justifyContent: 'center',
marginRight: 12,
},
dataTextBox: {
flex: 1,
},
dataLabel: {
color: MUTED,
fontSize: 11,
fontWeight: '700',
textTransform: 'uppercase',
},
dataValue: {
color: TEXT,
fontSize: 15,
fontWeight: '800',
marginTop: 2,
},
});