From 3694fd061defd2a46392ed2ee2b7e3d819cf1d0c Mon Sep 17 00:00:00 2001 From: Sam Becker Date: Sat, 28 Feb 2026 14:42:25 -0600 Subject: [PATCH] Make photo chooser searchable --- src/photo/form/FieldsetPhotoChooser.tsx | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/photo/form/FieldsetPhotoChooser.tsx b/src/photo/form/FieldsetPhotoChooser.tsx index 2f2cb2c5..e3e003c6 100644 --- a/src/photo/form/FieldsetPhotoChooser.tsx +++ b/src/photo/form/FieldsetPhotoChooser.tsx @@ -8,6 +8,8 @@ import { GRID_SPACE_CLASSNAME } from '@/components'; import useDynamicPhoto from '../useDynamicPhoto'; import { IoSearch } from 'react-icons/io5'; import { useState } from 'react'; +import usePhotoQuery from '../usePhotoQuery'; +import Spinner from '@/components/Spinner'; export default function FieldsetPhotoChooser({ label, @@ -25,6 +27,10 @@ export default function FieldsetPhotoChooser({ photosHidden?: Photo[] }) { const [query, setQuery] = useState(''); + const { + photos: photosQuery, + isLoading, + } = usePhotoQuery(query); const { photo: photoAvatar, @@ -76,17 +82,19 @@ export default function FieldsetPhotoChooser({
Choose photo
- + {isLoading ? : } - setQuery(e.target.value)} + onChange={setQuery} + hideLabel />
- {photos.map(photo => ( + {(photosQuery.length > 0 ? photosQuery : photos).map(photo => ( onChange(photo.id)} />