From 52771644debc33e7480bb0940ad202d437c7a9e6 Mon Sep 17 00:00:00 2001 From: Gilles Soulier Date: Mon, 25 May 2026 10:18:15 +0200 Subject: [PATCH] =?UTF-8?q?fix(shopping):=20rafra=C3=AEchir=20le=20catalog?= =?UTF-8?q?ue=20apr=C3=A8s=20fermeture=20du=20modal=20Articles?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Les produits créés/modifiés via le modal Catalogue n'apparaissaient pas dans le bottom sheet car products n'était chargé qu'au montage de la page. refreshProducts() est désormais appelé à chaque fermeture du CatalogueModal. Co-Authored-By: Claude Sonnet 4.6 --- frontend/src/pages/ShoppingPage.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/src/pages/ShoppingPage.tsx b/frontend/src/pages/ShoppingPage.tsx index 242c028..bff6a82 100644 --- a/frontend/src/pages/ShoppingPage.tsx +++ b/frontend/src/pages/ShoppingPage.tsx @@ -128,6 +128,13 @@ export default function ShoppingPage() { useEffect(() => { void loadData() }, [loadData]) + async function refreshProducts() { + try { + const data = await searchProducts() + setProducts([...data].sort((a, b) => a.name.localeCompare(b.name, 'fr'))) + } catch { /* silencieux */ } + } + async function refreshCurrentList() { if (!currentList) return try { @@ -776,7 +783,7 @@ export default function ShoppingPage() { )} {showCatalogueModal && ( - setShowCatalogueModal(false)} /> + { setShowCatalogueModal(false); void refreshProducts() }} /> )} {showBoutiquesModal && (