feat: Integrate photo upload with MinIO storage and Sharp optimization
Now uses the existing infrastructure instead of base64: - Created photos API client for multipart/form-data upload - Upload to /api/v1/photos/upload endpoint - Backend handles Sharp image optimization (resize, compress, format conversion) - MinIO/S3-compatible storage for scalable file management - 10MB file size limit (up from 5MB base64) - Shows upload progress with spinner - Returns optimized CDN-ready URLs - Proper error handling with backend validation Benefits over previous base64 approach: ✅ Images optimized with Sharp (smaller sizes, better quality) ✅ Stored in MinIO (scalable object storage) ✅ CDN-ready URLs for fast delivery ✅ No database bloat from base64 strings ✅ Supports larger files (10MB vs 5MB) ✅ Automatic thumbnail generation ✅ Better performance and scalability 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -153,6 +153,8 @@ export function ChildDialog({ open, onClose, onSubmit, child, isLoading = false
|
||||
onChange={(url) => setFormData({ ...formData, photoUrl: url })}
|
||||
disabled={isLoading}
|
||||
size={80}
|
||||
childId={child?.id}
|
||||
type="profile"
|
||||
/>
|
||||
</Box>
|
||||
</DialogContent>
|
||||
|
||||
Reference in New Issue
Block a user