feat: enhance media management with EXIF data extraction, metadata filtering, and storage path generation

refactor: update configuration handling to use environment variables and improve code organization
This commit is contained in:
2025-11-14 11:22:51 +01:00
parent 70dc0a7131
commit 3c3b51a2a7
24 changed files with 393 additions and 181 deletions

View File

@@ -57,8 +57,9 @@ pub struct SortParams {
#[derive(Debug, Clone, Default)]
pub struct FilterParams {
// In the future, you can add fields like:
// pub mime_type: Option<String>,
pub mime_type: Option<String>,
pub metadata_filters: Option<Vec<MetadataFilter>>,
// In the future, we can add fields like:
// pub date_range: Option<(chrono::DateTime<chrono::Utc>, chrono::DateTime<chrono::Utc>)>,
}
@@ -67,4 +68,10 @@ pub struct ListMediaOptions {
pub sort: Option<SortParams>,
pub filter: Option<FilterParams>,
// pub pagination: Option<PaginationParams>,
}
#[derive(Debug, Clone)]
pub struct MetadataFilter {
pub tag_name: String,
pub tag_value: String,
}