import { Stack, Checkbox, Group } from "@mantine/core"; import { useTranslation } from "react-i18next"; import { AddWatermarkParameters } from "../../../hooks/tools/addWatermark/useAddWatermarkParameters"; import NumberInputWithUnit from "../shared/NumberInputWithUnit"; interface WatermarkFormattingProps { parameters: AddWatermarkParameters; onParameterChange: (key: K, value: AddWatermarkParameters[K]) => void; disabled?: boolean; } const WatermarkFormatting = ({ parameters, onParameterChange, disabled = false }: WatermarkFormattingProps) => { const { t } = useTranslation(); return ( {/* Size - single row */} onParameterChange('fontSize', typeof value === 'number' ? value : 12)} unit={parameters.watermarkType === 'text' ? 'pt' : 'px'} min={1} disabled={disabled} /> {/* Position & Appearance - 2 per row */} onParameterChange('rotation', typeof value === 'number' ? value : 0)} unit="°" min={-360} max={360} disabled={disabled} /> onParameterChange('opacity', typeof value === 'number' ? value : 50)} unit="%" min={0} max={100} disabled={disabled} /> {/* Spacing - 2 per row */} onParameterChange('widthSpacer', typeof value === 'number' ? value : 50)} unit="px" min={0} max={200} disabled={disabled} /> onParameterChange('heightSpacer', typeof value === 'number' ? value : 50)} unit="px" min={0} max={200} disabled={disabled} /> {/* Advanced Options */} onParameterChange('convertPDFToImage', event.currentTarget.checked)} disabled={disabled} /> ); }; export default WatermarkFormatting;