Tier 0 crate with no dependencies on other qbz-* crates: - types.rs: Core API types (Track, Album, Artist, Playlist, Quality, etc.) - playback.rs: Playback types (QueueTrack, RepeatMode, PlaybackState, etc.) - events.rs: CoreEvent enum for frontend communication - traits.rs: FrontendAdapter trait enabling multiple frontends - error.rs: QbzError enum with error codes and recovery flags All types extracted from qbz-nix/src-tauri/src/api/models.rs and queue/mod.rs. Ready for use by Tier 1 crates (qbz-audio, qbz-qobuz).
24 lines
441 B
TOML
24 lines
441 B
TOML
[package]
|
|
name = "qbz-models"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
description = "Shared types, events, and traits for QBZ music player"
|
|
|
|
[dependencies]
|
|
# Serialization
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
|
|
# Async
|
|
async-trait = { workspace = true }
|
|
|
|
# Logging
|
|
log = { workspace = true }
|
|
|
|
# Error handling
|
|
thiserror = { workspace = true }
|
|
|
|
# Time
|
|
chrono = { workspace = true }
|