feat(profile): add round avatar with upload and cropping
- backend: user_avatar_objects binding (PG+SQLite), GC preserves avatar blobs, avatar service (EXIF-stripping WebP 128/512), public avatar read route - web: avatar upload/crop on profile, round avatar in header/members/comments/author - android: avatar upload/crop, round avatar on profile and albums header - openspec: add-user-avatar proposal/design/specs/tasks
This commit is contained in:
@@ -15,3 +15,8 @@ func objectKey(objectID, role, ext string) string {
|
||||
}
|
||||
return fmt.Sprintf("objects/%s/%s%s", objectID, role, ext)
|
||||
}
|
||||
|
||||
// ObjectKey exposes the opaque storage-key format for callers outside the
|
||||
// photos package that need to create their own journaled objects (for example
|
||||
// user avatars). The key stays entity-free; only the caller knows the binding.
|
||||
func ObjectKey(objectID, role, ext string) string { return objectKey(objectID, role, ext) }
|
||||
|
||||
Reference in New Issue
Block a user