diff --git a/src/components/pet/PetForm.tsx b/src/components/pet/PetForm.tsx index 5afef81..e86d1e5 100644 --- a/src/components/pet/PetForm.tsx +++ b/src/components/pet/PetForm.tsx @@ -19,6 +19,7 @@ import { SelectTrigger, SelectValue, } from "@/components/ui/select"; +import { Skeleton } from "@/components/ui/skeleton"; /** * PetForm — reusable create/edit form for pet profiles. @@ -98,12 +99,12 @@ export function PetForm({ initialValues?.speciesId ?? "" ); - const { data: speciesList = [] } = useQuery({ + const { data: speciesList = [], isLoading: speciesLoading } = useQuery({ ...trpc.pets.listSpecies.queryOptions(), staleTime: Infinity, }); - const { data: breedList = [] } = useQuery({ + const { data: breedList = [], isLoading: breedsLoading } = useQuery({ ...trpc.pets.listBreeds.queryOptions( { speciesId: selectedSpeciesId || "__none__" }, ), @@ -201,40 +202,42 @@ export function PetForm({ )} - {/* Species selector */} + {/* Species selector — defer render until list loaded so SelectValue resolves names */}
{errors.speciesId.message} @@ -242,49 +245,51 @@ export function PetForm({ )}
{errors.breedId.message}
)}