[package]
name = "lemmy_api_common"
version.workspace = true
edition.workspace = true
description.workspace = true
license.workspace = true
homepage.workspace = true
documentation.workspace = true
repository.workspace = true

[lib]
name = "lemmy_api_common"
path = "src/lib.rs"
doctest = false

[lints]
workspace = true

[features]
full = [
  "tracing",
  "lemmy_db_views/full",
  "lemmy_utils/full",
  "activitypub_federation",
  "encoding_rs",
  "reqwest-middleware",
  "webpage",
  "ts-rs",
  "tokio",
  "uuid",
  "reqwest",
  "actix-web",
  "futures",
  "jsonwebtoken",
  "mime",
  "moka",
  "actix-web-httpauth",
  "webmention",
]

[dependencies]
lemmy_db_views = { workspace = true }
lemmy_db_schema = { workspace = true }
lemmy_utils = { workspace = true }
activitypub_federation = { workspace = true, optional = true }
serde = { workspace = true }
serde_with = { workspace = true }
url = { workspace = true }
chrono = { workspace = true }
tracing = { workspace = true, optional = true }
reqwest-middleware = { workspace = true, optional = true }
regex = { workspace = true }
futures = { workspace = true, optional = true }
uuid = { workspace = true, optional = true }
tokio = { workspace = true, optional = true }
reqwest = { workspace = true, optional = true }
ts-rs = { workspace = true, optional = true }
moka = { workspace = true, optional = true }
anyhow.workspace = true
enum-map = { workspace = true }
actix-web = { workspace = true, optional = true }
urlencoding = { workspace = true }
mime = { version = "0.3.17", optional = true }
mime_guess = "2.0.5"
infer = "0.19.0"
webpage = { version = "2.0", default-features = false, optional = true, features = [
  "serde",
] }
encoding_rs = { version = "0.8.35", optional = true }
jsonwebtoken = { version = "9.3.1", optional = true }
actix-web-httpauth = { version = "0.8.2", optional = true }
webmention = { version = "0.6.0", optional = true }

[dev-dependencies]
serial_test = { workspace = true }
reqwest-middleware = { workspace = true }
pretty_assertions = { workspace = true }
