import { useMemo, useState, useEffect } from "react"; import { Stack, Text, Box, ActionIcon, Group, Center } from "@mantine/core"; import { useTranslation } from "react-i18next"; import RotateLeftIcon from "@mui/icons-material/RotateLeft"; import RotateRightIcon from "@mui/icons-material/RotateRight"; import { RotateParametersHook } from "../../../hooks/tools/rotate/useRotateParameters"; import { useSelectedFiles } from "../../../contexts/file/fileHooks"; import DocumentThumbnail from "../../shared/filePreview/DocumentThumbnail"; interface RotateSettingsProps { parameters: RotateParametersHook; disabled?: boolean; } const RotateSettings = ({ parameters, disabled = false }: RotateSettingsProps) => { const { t } = useTranslation(); const { selectedFileStubs } = useSelectedFiles(); // Get the first selected file for preview const selectedStub = useMemo(() => { return selectedFileStubs.length > 0 ? selectedFileStubs[0] : null; }, [selectedFileStubs]); // Get thumbnail for the selected file const [thumbnail, setThumbnail] = useState(null); useEffect(() => { setThumbnail(selectedStub?.thumbnailUrl || null); }, [selectedStub]); // Calculate current angle display const currentAngle = parameters.parameters.angle; return ( {/* Thumbnail Preview Section */} {t("rotate.preview.title", "Rotation Preview")}
{/* Rotation Controls */}
); }; export default RotateSettings;