Compare commits

...

1 Commits

Author SHA1 Message Date
Test User d1ff61a909 fix(gro-817): guard appointments.past and map API pet field names
- Guard appointments.past with fallback: apptsData?.upcoming || [],
  apptsData?.past || [] to prevent TypeError when API returns unexpected shape
- Map API fields (weightKg, dateOfBirth, photoKey, groomingNotes) to
  interface fields (weight, birthDate, photoUrl, notes) expected by UI

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-19 02:11:16 +00:00
+11 -3
View File
@@ -71,10 +71,18 @@ export function PetProfiles({ sessionId, readOnly }: Props) {
}
const petsData = await petsRes.json();
const apptsData: AppointmentsResponse = await apptsRes.json();
const apptsData = await apptsRes.json();
setPets(petsData);
setAppointments(apptsData);
setPets(petsData.map((p: { id: string; name: string; breed: string; weightKg: number; dateOfBirth: string; photoKey: string | null; groomingNotes: string | null }) => ({
id: p.id,
name: p.name,
breed: p.breed,
weight: p.weightKg,
birthDate: p.dateOfBirth,
photoUrl: p.photoKey ?? null,
notes: p.groomingNotes ?? null,
})));
setAppointments({ upcoming: apptsData?.upcoming || [], past: apptsData?.past || [] });
if (petsData.length > 0 && !selectedPetId) {
setSelectedPetId(petsData[0].id);