[package]
name = "kanban-service"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
description = "Shared service layer implementing KanbanOperations over a pluggable PersistenceStore"

[features]
default = ["json", "sqlite"]
json = ["dep:kanban-persistence-json"]
sqlite = ["dep:kanban-persistence-sqlite"]
test-helpers = ["kanban-persistence/test-helpers"]

[dependencies]
kanban-core = { path = "../kanban-core", version = "^0.6" }
kanban-domain = { path = "../kanban-domain", version = "^0.6" }
kanban-persistence = { path = "../kanban-persistence", version = "^0.6" }
kanban-persistence-json = { path = "../kanban-persistence-json", version = "^0.6", optional = true }
kanban-persistence-sqlite = { path = "../kanban-persistence-sqlite", version = "^0.6", optional = true }
async-trait.workspace = true
tokio.workspace = true
serde.workspace = true
serde_json.workspace = true
toml = "0.8"
dirs = "5.0"
dunce.workspace = true
uuid.workspace = true
chrono.workspace = true
tracing.workspace = true
tempfile.workspace = true

[dev-dependencies]
kanban-persistence-json = { path = "../kanban-persistence-json" }
kanban-persistence-sqlite = { path = "../kanban-persistence-sqlite" }
kanban-persistence = { path = "../kanban-persistence", features = ["test-helpers"] }
tokio = { workspace = true, features = ["full"] }
