Files
sgw-owner-app/components/tripInfo/modal/style/CreateOrUpdateHaulModal.styles.ts
2025-11-28 16:59:57 +07:00

180 lines
4.0 KiB
TypeScript

import { Colors } from "@/constants/theme";
import { StyleSheet } from "react-native";
export const createStyles = (colors: typeof Colors.light) =>
StyleSheet.create({
container: {
flex: 1,
backgroundColor: colors.backgroundSecondary,
},
header: {
flexDirection: "row",
justifyContent: "space-between",
alignItems: "center",
paddingHorizontal: 20,
paddingTop: 30,
paddingBottom: 16,
backgroundColor: colors.surface,
borderBottomWidth: 1,
borderBottomColor: colors.separator,
},
title: {
fontSize: 22,
fontWeight: "700",
color: colors.text,
flex: 1,
},
headerButtons: {
flexDirection: "row",
gap: 12,
alignItems: "center",
},
closeButton: {
padding: 4,
},
closeIconButton: {
backgroundColor: colors.error,
borderRadius: 10,
padding: 10,
justifyContent: "center",
alignItems: "center",
},
saveButton: {
backgroundColor: colors.primary,
borderRadius: 8,
paddingHorizontal: 20,
paddingVertical: 10,
justifyContent: "center",
alignItems: "center",
},
saveButtonText: {
color: "#fff",
fontSize: 16,
fontWeight: "600",
},
content: {
flex: 1,
padding: 16,
marginBottom: 15,
},
fishCard: {
backgroundColor: colors.surfaceSecondary,
borderRadius: 12,
padding: 16,
marginBottom: 16,
shadowColor: "#000",
shadowOpacity: 0.05,
shadowRadius: 4,
shadowOffset: { width: 0, height: 2 },
elevation: 2,
},
fishCardHeaderContent: {
flexDirection: "row",
alignItems: "center",
gap: 8,
},
fishCardTitle: {
fontSize: 16,
fontWeight: "700",
color: colors.text,
},
fishCardSubtitle: {
fontSize: 15,
color: colors.warning,
fontWeight: "500",
},
fieldGroup: {
marginBottom: 14,
},
label: {
fontSize: 14,
fontWeight: "600",
color: colors.textSecondary,
marginBottom: 6,
},
input: {
borderWidth: 1,
borderColor: colors.primary,
borderRadius: 8,
paddingHorizontal: 12,
paddingVertical: 10,
fontSize: 16,
backgroundColor: colors.surface,
color: colors.text,
},
inputDisabled: {
backgroundColor: colors.backgroundSecondary,
color: colors.textSecondary,
borderColor: colors.border,
},
errorText: {
color: colors.error,
fontSize: 12,
marginTop: 4,
fontWeight: "500",
},
buttonRow: {
flexDirection: "row",
justifyContent: "flex-end",
gap: 8,
marginTop: 12,
},
removeButton: {
backgroundColor: colors.error,
borderRadius: 8,
paddingHorizontal: 16,
paddingVertical: 8,
justifyContent: "center",
alignItems: "center",
},
removeButtonText: {
color: "#fff",
fontSize: 14,
fontWeight: "600",
},
addButton: {
backgroundColor: colors.primary,
borderRadius: 12,
padding: 16,
marginBottom: 12,
justifyContent: "center",
alignItems: "center",
shadowColor: "#000",
shadowOpacity: 0.05,
shadowRadius: 4,
shadowOffset: { width: 0, height: 2 },
elevation: 2,
},
addButtonText: {
fontSize: 16,
fontWeight: "600",
color: "#fff",
},
footerSection: {
paddingHorizontal: 16,
paddingVertical: 16,
backgroundColor: colors.surface,
borderTopWidth: 1,
borderTopColor: colors.separator,
},
saveButtonLarge: {
backgroundColor: colors.primary,
borderRadius: 8,
paddingVertical: 14,
justifyContent: "center",
alignItems: "center",
},
saveButtonLargeText: {
color: "#fff",
fontSize: 16,
fontWeight: "700",
},
emptyStateText: {
textAlign: "center",
color: colors.textSecondary,
fontSize: 14,
marginTop: 20,
},
});