[package]
name = "dnd-character"
version = "0.14.0"
edition = "2021"
license = "MIT"
authors = ["DreamingCodes"]
description = "A Dungeons and Dragons character generator"
homepage = "https://dreaming.codes"
repository = "https://github.com/Dreaming-Codes/dnd-character"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
anyhow = "1.0.82"
cynic = { version = "3.5.1", features = [
    "http-reqwest",
    "serde_json",
], optional = true }
futures = "0.3.30"
lazy_static = "1.4.0"
regex = "1.10.4"
reqwest = { version = "0.12.3", optional = true }
serde = { version = "1.0.197", optional = true }
utoipa = { version = "5.0.0-beta.0", optional = true }
serde_json = { version = "1.0.115", optional = true }
serde_variant = { version = "0.1.3", optional = true }
thiserror = "1.0.58"

[dev-dependencies]
tokio = { version = "1.37.0", features = ["macros"] }
futures = "0.3.30"

[build-dependencies]
cynic-codegen = { version = "3.5.1", optional = true }

[features]
default = ["api-rustls", "serde"]
api = ["dep:cynic-codegen", "dep:cynic", "dep:reqwest"]
api-rustls = ["api", "reqwest/rustls-tls"]
serde = ["dep:serde", "dep:serde_json", "dep:serde_variant"]
utoipa = ["dep:utoipa"]
