feat(lists): Listen-Reihenfolge per Drag-and-Drop ändern (globales position-Feld nutzen) #331
Labels
No labels
app/archiv
app/einkaufslisten
app/imap-client
app/wissensbasis
arch-answered
arch-question
area/api
area/auth
area/infra
area/mobile
area/shared
area/ui
area/web
portfolio-status
prio/high
prio/low
prio/medium
roadmap/public
size/l
size/m
size/s
size/xl
size/xs
status/blocked
status/needs-info
type/bug
type/chore
type/docs
type/feature
type/idea
type/refactor
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
admin-mrrm/mrrmlabapp#331
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Motivation
Die Reihenfolge der Listen in der Übersicht ist aktuell fix nach
createdAtASC. Der User möchte die Sortierung selbst bestimmen — wichtige Listen oben, selten genutzte unten — über alle Bereiche (Einkaufen, Listen, Todo).Aktueller Stand
position: integer().notNull().default(0)-Feld auflists(sieheapps/api/src/modules/lists/lists.schema.ts:28)listForOwner(lists.service.ts:24) ordnet nur nachcreatedAtScope
Backend
lists.service.ts::listForOwner:orderBy(asc(lists.position), asc(lists.createdAt))als TiebreakerPATCH /lists/reorderoderPOST /lists/reordermit Body{ orderedIds: string[] }→ schreibtpositionfür alle Listen des Owners in der gegebenen ReihenfolgenextPosition-Analog)shared-types
Mobile
ListsOverviewScreen(packages/feature-lists/src/components/lists-overview-screen.tsx) Liste mitreact-native-draggable-flatlist(oder vergleichbar, Expo-kompatibel) ersetzenWeb
@dnd-kit/core— bereits in der App? prüfen, sonst neu)Tests
Akzeptanzkriterien
/einkaufen,/listenund (neu)/todoreflektiert die globalepositionVerwandt
Verwandt: #336 (App-Shell Refactor — Sidebar/Profil/Settings-Subnav, v0.4). Hauptmenü-Änderungen sollten dort koordiniert werden.