110 lines
2.7 KiB
TypeScript
110 lines
2.7 KiB
TypeScript
import { StyleSheet } from 'react-native';
|
|
import { colors, spacing, typography, borderRadius } from '../../../theme/tokens';
|
|
|
|
export const styles = StyleSheet.create({
|
|
container: {
|
|
padding: spacing.lg,
|
|
backgroundColor: colors.surface,
|
|
flexGrow: 1,
|
|
},
|
|
saveButton: {
|
|
marginTop: spacing.lg,
|
|
backgroundColor: colors.primary,
|
|
paddingVertical: spacing.md,
|
|
borderRadius: borderRadius.lg,
|
|
alignItems: 'center',
|
|
},
|
|
saveButtonText: {
|
|
color: colors.surface,
|
|
fontSize: typography.sizes.md,
|
|
fontWeight: typography.weights.semibold,
|
|
},
|
|
bottomSpacer: { height: spacing.xxl },
|
|
modalOverlay: {
|
|
flex: 1,
|
|
backgroundColor: colors.overlay,
|
|
justifyContent: 'flex-end',
|
|
},
|
|
modalCard: {
|
|
backgroundColor: colors.surface,
|
|
borderTopLeftRadius: 20,
|
|
borderTopRightRadius: 20,
|
|
padding: spacing.xl,
|
|
paddingBottom: spacing.xxl,
|
|
},
|
|
modalTitle: {
|
|
fontSize: typography.sizes.lg,
|
|
fontWeight: typography.weights.bold,
|
|
color: colors.textPrimary,
|
|
marginBottom: spacing.lg,
|
|
},
|
|
modalSection: { marginBottom: spacing.md },
|
|
modalSectionLabel: {
|
|
fontSize: typography.sizes.sm,
|
|
fontWeight: typography.weights.semibold,
|
|
color: colors.primary,
|
|
marginBottom: spacing.xs,
|
|
},
|
|
modalSectionText: {
|
|
fontSize: typography.sizes.sm,
|
|
color: colors.textSecondary,
|
|
lineHeight: 20,
|
|
},
|
|
modalClose: {
|
|
marginTop: spacing.lg,
|
|
backgroundColor: colors.background,
|
|
borderRadius: borderRadius.lg,
|
|
paddingVertical: spacing.md,
|
|
alignItems: 'center',
|
|
},
|
|
modalCloseText: {
|
|
fontSize: typography.sizes.md,
|
|
fontWeight: typography.weights.semibold,
|
|
color: colors.textPrimary,
|
|
},
|
|
loadingOverlay: {
|
|
flex: 1,
|
|
backgroundColor: colors.overlayStrong,
|
|
justifyContent: 'center',
|
|
alignItems: 'center',
|
|
padding: spacing.xl,
|
|
},
|
|
loadingCard: {
|
|
width: '100%',
|
|
backgroundColor: colors.surface,
|
|
borderRadius: borderRadius.xl,
|
|
padding: spacing.xl,
|
|
alignItems: 'center',
|
|
},
|
|
loadingTitle: {
|
|
fontSize: typography.sizes.lg,
|
|
fontWeight: typography.weights.bold,
|
|
color: colors.textPrimary,
|
|
marginBottom: spacing.xs,
|
|
},
|
|
loadingSubtitle: {
|
|
fontSize: typography.sizes.sm,
|
|
color: colors.textSecondary,
|
|
marginBottom: spacing.sm,
|
|
maxWidth: '100%',
|
|
},
|
|
loadingPercent: {
|
|
fontSize: typography.sizes.sm,
|
|
color: colors.textTertiary,
|
|
marginTop: spacing.sm,
|
|
},
|
|
activityIndicator: { marginVertical: spacing.lg },
|
|
progressBarBg: {
|
|
width: '100%',
|
|
height: 8,
|
|
backgroundColor: colors.background,
|
|
borderRadius: 999,
|
|
overflow: 'hidden',
|
|
},
|
|
progressBarFill: {
|
|
height: '100%',
|
|
backgroundColor: colors.primary,
|
|
borderRadius: 999,
|
|
},
|
|
});
|