feat: Implement face clustering and media retrieval for persons
This commit is contained in:
@@ -6,9 +6,9 @@ use libertas_core::{
|
||||
};
|
||||
use libertas_infra::factory::{
|
||||
build_album_repository, build_album_share_repository, build_database_pool,
|
||||
build_face_region_repository, build_media_metadata_repository, build_media_repository,
|
||||
build_person_repository, build_person_share_repository, build_tag_repository,
|
||||
build_user_repository,
|
||||
build_face_embedding_repository, build_face_region_repository, build_media_metadata_repository,
|
||||
build_media_repository, build_person_repository, build_person_share_repository,
|
||||
build_tag_repository, build_user_repository,
|
||||
};
|
||||
|
||||
use crate::{
|
||||
@@ -40,6 +40,8 @@ pub async fn build_app_state(config: AppConfig) -> CoreResult<AppState> {
|
||||
let face_region_repo = build_face_region_repository(&config.database, db_pool.clone()).await?;
|
||||
let person_share_repo =
|
||||
build_person_share_repository(&config.database, db_pool.clone()).await?;
|
||||
let face_embedding_repo =
|
||||
build_face_embedding_repository(&config.database, db_pool.clone()).await?;
|
||||
|
||||
let hasher = Arc::new(Argon2Hasher::default());
|
||||
let tokenizer = Arc::new(JwtGenerator::new(config.jwt_secret.clone()));
|
||||
@@ -81,6 +83,8 @@ pub async fn build_app_state(config: AppConfig) -> CoreResult<AppState> {
|
||||
person_repo.clone(),
|
||||
face_region_repo.clone(),
|
||||
person_share_repo.clone(),
|
||||
face_embedding_repo.clone(),
|
||||
media_repo.clone(),
|
||||
authorization_service.clone(),
|
||||
));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user