Phase 1 (Backend API): ✅ GroupRepository.updateImageOrder() with SQL transactions ✅ PUT /api/groups/:groupId/reorder API route with validation ✅ Manual testing: Reordering verified working (group qion_-lT1) ✅ Error handling: Invalid IDs, missing groups, empty arrays Phase 2 (Frontend DnD): ✅ @dnd-kit/core packages installed ✅ ReorderService.js for API communication ✅ useReordering.js custom hook with optimistic updates ✅ ImageGalleryCard.js extended with drag handles & sortable ✅ ImageGallery.js with DndContext and SortableContext ✅ CSS styles for drag states, handles, touch-friendly mobile Next: Integration with ModerationGroupImagesPage
13 lines
514 B
JavaScript
13 lines
514 B
JavaScript
const uploadRouter = require('./upload');
|
|
const downloadRouter = require('./download');
|
|
const batchUploadRouter = require('./batchUpload');
|
|
const groupsRouter = require('./groups');
|
|
const migrationRouter = require('./migration');
|
|
const reorderRouter = require('./reorder');
|
|
|
|
const renderRoutes = (app) => {
|
|
[uploadRouter, downloadRouter, batchUploadRouter, groupsRouter, migrationRouter].forEach(router => app.use('/', router));
|
|
app.use('/api/groups', reorderRouter);
|
|
};
|
|
|
|
module.exports = { renderRoutes }; |