From 899d6e6e19ebff661a7785004358994efb54a882 Mon Sep 17 00:00:00 2001 From: Arnaud Nelissen Date: Sat, 13 Jun 2026 16:15:04 +0200 Subject: [PATCH] =?UTF-8?q?fix(settings):=20merge=20B=C3=A9b=C3=A9=20+=20B?= =?UTF-8?q?=C3=A9b=C3=A9s=20into=20single=20section?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Each baby row is tappable; inline edit form expands under the selected baby. Passes baby data directly to avoid stale context on first click. Co-Authored-By: Claude Sonnet 4.6 --- src/app/(app)/settings/page.tsx | 114 ++++++++++++++------------------ 1 file changed, 51 insertions(+), 63 deletions(-) diff --git a/src/app/(app)/settings/page.tsx b/src/app/(app)/settings/page.tsx index aab90a0..af02ec6 100644 --- a/src/app/(app)/settings/page.tsx +++ b/src/app/(app)/settings/page.tsx @@ -152,12 +152,13 @@ export default function SettingsPage() { setExportLoading(false); } - function startEditBaby() { - if (!selectedBaby) return; + function startEditBaby(b?: { name: string; birthDate: string; gender?: string }) { + const src = b ?? selectedBaby; + if (!src) return; setBabyForm({ - name: selectedBaby.name, - birthDate: selectedBaby.birthDate.slice(0, 10), - gender: selectedBaby.gender ?? "", + name: src.name, + birthDate: src.birthDate.slice(0, 10), + gender: src.gender ?? "", }); setEditingBaby(true); } @@ -252,67 +253,54 @@ export default function SettingsPage() {

Réglages

- {/* Baby info */} - {selectedBaby && ( -
- {editingBaby ? ( -
-
- - setBabyForm((f) => ({ ...f, name: e.target.value }))} - required className={inputCls} /> -
-
- - setBabyForm((f) => ({ ...f, birthDate: e.target.value }))} - required className={inputCls} /> -
-
- - -
-
- - -
-
- ) : ( - - )} -
- )} - - {/* Add baby */} + {/* Babies */}
{family?.babies.map((b) => ( -
-
- -
-
-

{b.name}

-

- {new Date(b.birthDate).toLocaleDateString("fr-FR", { day: "numeric", month: "long", year: "numeric" })} -

-
+
+ + {editingBaby && selectedBaby?.id === b.id && ( +
+
+ + setBabyForm((f) => ({ ...f, name: e.target.value }))} + required className={inputCls} /> +
+
+ + setBabyForm((f) => ({ ...f, birthDate: e.target.value }))} + required className={inputCls} /> +
+
+ + +
+
+ + +
+
+ )}
))}