From 2ecf71cc42bfa7980c9f16c23233e854f068f2c7 Mon Sep 17 00:00:00 2001 From: Sandro Date: Tue, 27 Oct 2026 17:33:20 +0100 Subject: [PATCH] feat(lists): use unified modal for creating new shopping lists --- .../src/features/lists/SharedListsView.tsx | 81 ++++++++++++------- 1 file changed, 51 insertions(+), 30 deletions(-) diff --git a/frontend/src/features/lists/SharedListsView.tsx b/frontend/src/features/lists/SharedListsView.tsx index 49f9484..da5bb75 100644 --- a/frontend/src/features/lists/SharedListsView.tsx +++ b/frontend/src/features/lists/SharedListsView.tsx @@ -8,6 +8,7 @@ import { Sparkles, X, Hash, + ShoppingCart, } from 'lucide-react'; import { ListItem, SharedList, ListShare, Team, User, WSMessage } from '../../lib/types'; import { api, buildWebSocketURL, triggerHaptic, createRealtimeConnection, RealtimeTransport } from '../../lib/api'; @@ -953,41 +954,61 @@ export const SharedListsView: React.FC = ({ onRefreshGloba {showNewListModal && ( -
-
- {['🛒', '🏔️', '🍕', '🎉', '🧰', '🎁'].map((ic) => ( +
+
+
+

+ + Neue Einkaufsliste erstellen +

- ))} +
+ + +
+ +
+ setNewListIcon(e.target.value)} + maxLength={2} + className="w-10 h-8 text-center input-field text-sm" + title="Icon (Emoji)" + /> + setNewListTitle(e.target.value)} + placeholder="z.B. Supermarkt, Baumarkt, Drogerie" + autoFocus + required + className="flex-1 h-8 input-field px-2.5 text-xs" + /> +
+
+ +
+ + +
+
- setNewListTitle(e.target.value)} - placeholder="Titel der Liste (z. B. Baumarkt, Drogerie, Camping)…" - className="flex-1 h-9 px-3 input-field text-sm" - autoFocus - /> - - +
)} {/* Active Shared List View */}