fix: address open triage issues (#21,#26,#45,#46,#47,#30-33)
CI / skip-ci-check (pull_request) Successful in 6s
CI / docker-ci (pull_request) Successful in 7s
CI / secret-scan (pull_request) Successful in 11s

- #45: re-read local folder when recursive checkbox toggles
- #47: clear Identify crop spinner when image is already cached
- #46: search selected people by person_ids; AND for "First Last"
- #21: enqueue network import without blocking API walk
- #26: serve resized grid thumbnails for photos
- #30/#31/#33: re-enable small-face filters in auto-match
This commit is contained in:
2026-07-09 14:42:08 -04:00
parent d69ad1576d
commit ffddeca268
10 changed files with 218 additions and 94 deletions
+8 -3
View File
@@ -22,9 +22,14 @@ export function isVideo(photo: Photo): boolean {
* - Videos → use thumbnail endpoint (for grid display)
*/
export function getImageSrc(photo: Photo, options?: { watermark?: boolean; thumbnail?: boolean }): string {
// For videos, use thumbnail endpoint if requested (for grid display)
if (options?.thumbnail && isVideo(photo)) {
return `/api/photos/${photo.id}/image?thumbnail=true`;
// Grid thumbnails: resize on server (images) or video poster (#26)
if (options?.thumbnail) {
const params = new URLSearchParams();
params.set('thumbnail', 'true');
if (options.watermark) {
params.set('watermark', 'true');
}
return `/api/photos/${photo.id}/image?${params.toString()}`;
}
if (isUrl(photo.path)) {