[package]
name = "proxmox-tfa"
version = "4.0.3"
authors.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "tfa implementation for totp and u2f"

exclude.workspace = true

[dependencies]
anyhow = { workspace = true, optional = true }
base32.workspace = true
base64.workspace = true
hex.workspace = true
log.workspace = true
openssl.workspace = true
percent-encoding.workspace = true
serde.workspace = true
serde_plain.workspace = true
serde_json = { workspace = true, optional = true }
libc = { workspace = true, optional = true }
url.workspace = true
webauthn-rs = { workspace = true, optional = true }

proxmox-schema = { workspace = true, features = [ "api-macro" ], optional = true }
proxmox-time = { workspace = true, optional = true }
proxmox-uuid = { workspace = true, optional = true }

[features]
default = []
types = [ "serde/derive"]
u2f = [ "dep:libc", "dep:serde_json", "serde/derive" ]
api = [ "types", "u2f", "dep:anyhow", "dep:webauthn-rs", "dep:proxmox-uuid", "dep:proxmox-time" ]
api-types = [ "types", "dep:proxmox-schema" ]