Files
height_manager/client/screens/home/styles.ts

118 lines
2.8 KiB
TypeScript
Raw Normal View History

import { StyleSheet } from 'react-native';
import { Spacing, BorderRadius, Theme } from '@/constants/theme';
export const createStyles = (theme: Theme) => {
return StyleSheet.create({
scrollContent: {
flexGrow: 1,
paddingHorizontal: Spacing.lg,
paddingTop: Spacing.xl,
paddingBottom: Spacing["5xl"],
},
header: {
marginBottom: Spacing.xl,
},
calorieCard: {
padding: Spacing.xl,
marginBottom: Spacing.lg,
borderRadius: BorderRadius.xl,
shadowColor: theme.primary,
shadowOffset: { width: 0, height: 4 },
shadowOpacity: 0.1,
shadowRadius: 12,
elevation: 4,
},
weightCard: {
padding: Spacing.xl,
marginBottom: Spacing.xl,
borderRadius: BorderRadius.xl,
shadowColor: theme.primary,
shadowOffset: { width: 0, height: 4 },
shadowOpacity: 0.1,
shadowRadius: 12,
elevation: 4,
},
cardHeader: {
flexDirection: 'row',
alignItems: 'center',
marginBottom: Spacing.lg,
},
iconContainer: {
width: 48,
height: 48,
borderRadius: BorderRadius.lg,
backgroundColor: theme.backgroundTertiary,
justifyContent: 'center',
alignItems: 'center',
marginRight: Spacing.md,
},
calorieContent: {
flexDirection: 'row',
alignItems: 'baseline',
marginBottom: Spacing.md,
},
weightContent: {
flexDirection: 'row',
alignItems: 'baseline',
marginBottom: Spacing.md,
},
progressBar: {
height: 8,
backgroundColor: theme.backgroundTertiary,
borderRadius: BorderRadius.full,
overflow: 'hidden',
marginBottom: Spacing.sm,
},
progressFill: {
height: '100%',
backgroundColor: theme.primary,
borderRadius: BorderRadius.full,
},
remainingText: {
textAlign: 'right',
},
quickActions: {
flexDirection: 'row',
justifyContent: 'space-between',
marginBottom: Spacing.xl,
gap: Spacing.md,
},
actionButton: {
flex: 1,
padding: Spacing.lg,
borderRadius: BorderRadius.xl,
alignItems: 'center',
shadowColor: theme.primary,
shadowOffset: { width: 0, height: 2 },
shadowOpacity: 0.15,
shadowRadius: 8,
elevation: 3,
},
cameraButton: {
backgroundColor: theme.primary,
},
chartButton: {
backgroundColor: '#10B981',
},
aiButton: {
backgroundColor: '#059669',
},
actionIconContainer: {
marginBottom: Spacing.sm,
},
recentSection: {
marginBottom: Spacing.xl,
},
sectionHeader: {
flexDirection: 'row',
justifyContent: 'space-between',
alignItems: 'center',
marginBottom: Spacing.lg,
},
emptyText: {
textAlign: 'center',
paddingVertical: Spacing["2xl"],
},
});
};