import { Modal, Text, Button, Group, Stack } from "@mantine/core"; import { useTranslation } from "react-i18next"; import WarningAmberIcon from "@mui/icons-material/WarningAmber"; import CheckCircleOutlineIcon from "@mui/icons-material/CheckCircleOutline"; import CancelIcon from "@mui/icons-material/Cancel"; import { CSSProperties } from "react"; interface ZipWarningModalProps { opened: boolean; onConfirm: () => void; onCancel: () => void; fileCount: number; zipFileName: string; } const WARNING_ICON_STYLE: CSSProperties = { fontSize: 36, display: 'block', margin: '0 auto 8px', color: 'var(--mantine-color-blue-6)' }; const ZipWarningModal = ({ opened, onConfirm, onCancel, fileCount, zipFileName }: ZipWarningModalProps) => { const { t } = useTranslation(); return ( {zipFileName} {t("zipWarning.message", { count: fileCount, defaultValue: "This ZIP contains {{count}} files. Extract anyway?" })} {/* Desktop layout: centered buttons */} {/* Mobile layout: vertical stack */} ); }; export default ZipWarningModal;