Files
pocket-chords/crates/application/src/songs/search_songs.rs
Gabriel Kaszewski d13df586dd refactor: DDD/CQRS architecture, unified crate layout
- crates: common→application, api→presentation, infrastructure/*→adapters/*
- new crates: api-types, infra-wiring
- domain: errors/, models/, value_objects/, ports/, services/
- application: CQRS use cases (songs/, tabs/) w/ commands, queries, deps
- unified DomainError replaces RepositoryError
- workspace deps, unused dep cleanup
- fix: parse plain-text chord lines (UG drops spans mid-song)
- tests extracted to separate modules (tests/ dirs)
2026-07-11 21:02:10 +02:00

15 lines
348 B
Rust

use domain::errors::DomainError;
use domain::models::SongSummary;
use super::deps::SongQueryDeps;
use super::queries::SearchSongsQuery;
pub async fn execute(
deps: &SongQueryDeps,
query: SearchSongsQuery,
) -> Result<Vec<SongSummary>, DomainError> {
deps.search
.search(&query.query, query.sort, query.order)
.await
}