[package]
name = "cashu"
version.workspace = true
edition.workspace = true
authors = ["CDK Developers"]
description = "Cashu shared types and crypto utilities, used as the foundation for the CDK and their crates"
homepage = "https://github.com/cashubtc/cdk"
repository = "https://github.com/cashubtc/cdk.git"
rust-version.workspace = true # MSRV
license.workspace = true
readme = "README.md"

[features]
default = ["mint", "wallet", "auth"]
swagger = ["dep:utoipa"]
mint = ["dep:uuid"]
wallet = []
auth = ["dep:strum", "dep:strum_macros", "dep:regex"]
bench = []

[dependencies]
uuid = { workspace = true, optional = true }
bitcoin.workspace = true
cbor-diag.workspace = true
ciborium.workspace = true
once_cell.workspace = true
serde.workspace = true
lightning-invoice.workspace = true
lightning.workspace = true
thiserror.workspace = true
tracing.workspace = true
url.workspace = true
utoipa = { workspace = true, optional = true }
serde_json.workspace = true
serde_with.workspace = true
regex = { workspace = true, optional = true }
strum = { workspace = true, optional = true }
strum_macros = { workspace = true, optional = true }
zeroize = "1"

[target.'cfg(target_arch = "wasm32")'.dependencies]
instant = { workspace = true, features = ["wasm-bindgen", "inaccurate"] }
uuid = { workspace = true, features = ["js"], optional = true }

[dev-dependencies]
bip39.workspace = true
