dnd.ts
1 import { create } from "zustand"; 2 import { ISpool } from "../spools/model"; 3 4 export const ItemTypes = { 5 SPOOL: "spool", 6 CONTAINER: "spool-container", 7 }; 8 9 export interface DragItem { 10 index: number; 11 } 12 13 export interface SpoolDragItem extends DragItem { 14 spool: ISpool; 15 } 16 17 export interface ContainerDragItem extends DragItem { 18 title: string; 19 } 20 21 interface CurrentDraggedSpool { 22 draggedSpoolId: number; 23 setDraggedSpoolId: (spoolid: number) => void; 24 } 25 26 export const useCurrentDraggedSpool = create<CurrentDraggedSpool>((set) => ({ 27 draggedSpoolId: -1, 28 setDraggedSpoolId: (spoolid: number) => set({ draggedSpoolId: spoolid }), 29 }));