import { DndContext, useSensor, useSensors, PointerSensor } from "@dnd-kit/core"; import { SortableContext, verticalListSortingStrategy, arrayMove } from "@dnd-kit/sortable"; import { restrictToVerticalAxis } from "@dnd-kit/modifiers"; import { SortableItem } from "./sortableItem"; const DndKit = ({ items, attributesKey, setAttributes, attributes, RenderTaxonomy, allTaxonomies, resetTaxonomyType, updateTaxonomyData, }) => { // drag and drop functions. const sensors = useSensors( useSensor(PointerSensor, { activationConstraint: { distance: 2 }, }) ); const handleDragEnd = (event) => { const { active, over } = event; if (active && over && active.id !== over.id) { const oldIndex = items.findIndex((i) => active.id === i.id); const newIndex = items.findIndex((i) => over.id === i.id); setAttributes({ [attributesKey]: arrayMove(items, oldIndex, newIndex), }); } }; return ( item.id)} strategy={verticalListSortingStrategy}> {items?.map((item) => ( ))} ); }; export default DndKit;