import { useParams } from "react-router-dom"; import { Box } from "@mui/material"; import { DragDropContext, Droppable } from "react-beautiful-dnd"; import { AnswerItem } from "./AnswerItem"; import { reorderVariants } from "@root/questions"; import { type ReactNode } from "react"; import type { DropResult } from "react-beautiful-dnd"; import type { ImageQuestionVariant, QuestionVariant } from "../../../model/questionTypes/shared"; type AnswerDraggableListProps = { variants: QuestionVariant[]; totalIndex: number; additionalContent?: (variant: QuestionVariant | ImageQuestionVariant, index: number) => ReactNode; additionalMobile?: (variant: QuestionVariant | ImageQuestionVariant, index: number) => ReactNode; }; export const AnswerDraggableList = ({ variants, totalIndex, additionalContent, additionalMobile, }: AnswerDraggableListProps) => { const quizId = Number(useParams().quizId); const onDragEnd = ({ destination, source }: DropResult) => { if (destination) { reorderVariants(quizId, totalIndex, source.index, destination.index); } }; return ( {(provided) => ( {variants.map((variant, index) => ( ))} {provided.placeholder} )} ); };