feat: Implement person management features
- Added hooks for listing, creating, updating, deleting, sharing, and merging people. - Introduced a new route for person details and media. - Implemented clustering faces functionality. - Created services for person-related API interactions. feat: Introduce tag management functionality - Added hooks for listing, adding, and removing tags from media. - Created services for tag-related API interactions. feat: Enhance user authentication handling - Added a hook to fetch current user details. - Updated auth storage to manage user state more effectively. feat: Update album management features - Enhanced album service to return created album details. - Updated API handlers to return album responses upon creation. - Modified album repository to return created album. feat: Implement media management improvements - Added media details fetching and processing of media URLs. - Enhanced media upload functionality to return processed media. feat: Introduce face management features - Added services for listing faces for media and assigning faces to persons. fix: Update API client to clear authentication state on 401 errors.
This commit is contained in:
@@ -40,7 +40,7 @@ pub trait UserRepository: Send + Sync {
|
||||
|
||||
#[async_trait]
|
||||
pub trait AlbumRepository: Send + Sync {
|
||||
async fn create(&self, album: Album) -> CoreResult<()>;
|
||||
async fn create(&self, album: Album) -> CoreResult<Album>;
|
||||
async fn find_by_id(&self, id: Uuid) -> CoreResult<Option<Album>>;
|
||||
async fn list_by_user(&self, user_id: Uuid) -> CoreResult<Vec<Album>>;
|
||||
async fn add_media_to_album(&self, album_id: Uuid, media_ids: &[Uuid]) -> CoreResult<()>;
|
||||
|
||||
@@ -39,7 +39,7 @@ pub trait UserService: Send + Sync {
|
||||
|
||||
#[async_trait]
|
||||
pub trait AlbumService: Send + Sync {
|
||||
async fn create_album(&self, data: CreateAlbumData<'_>) -> CoreResult<()>;
|
||||
async fn create_album(&self, data: CreateAlbumData<'_>) -> CoreResult<Album>;
|
||||
async fn get_album_details(&self, album_id: Uuid, user_id: Uuid) -> CoreResult<Album>;
|
||||
async fn add_media_to_album(&self, data: AddMediaToAlbumData, user_id: Uuid) -> CoreResult<()>;
|
||||
async fn list_user_albums(&self, user_id: Uuid) -> CoreResult<Vec<Album>>;
|
||||
|
||||
Reference in New Issue
Block a user