From 036885dd2453c1cc300a31c9a9a2c1e5ad1c12b3 Mon Sep 17 00:00:00 2001 From: HotelSync Date: Mon, 23 Mar 2026 13:28:08 +0300 Subject: [PATCH] feat: drag-and-drop photo reordering in category form MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thumbnails are draggable — drag one over another to swap positions. Dragged item shows opacity/scale hint while dragging. Co-Authored-By: Claude Sonnet 4.6 --- src/pages/RoomCategoriesPage.tsx | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/src/pages/RoomCategoriesPage.tsx b/src/pages/RoomCategoriesPage.tsx index dc0556c..b8cadbe 100644 --- a/src/pages/RoomCategoriesPage.tsx +++ b/src/pages/RoomCategoriesPage.tsx @@ -47,6 +47,7 @@ function CategoryForm({ category, onClose, onSave }: CategoryFormProps) { const [saving, setSaving] = useState(false) const [saveError, setSaveError] = useState('') const [dragging, setDragging] = useState(false) + const [dragSrcIdx, setDragSrcIdx] = useState(null) const fileRef = useRef(null) const toggleAmenity = (a: string) => @@ -245,8 +246,30 @@ function CategoryForm({ category, onClose, onSave }: CategoryFormProps) {
{photos.map((p, i) => ( - ))}