content: [package]
  name = "openid4vc"
  version.workspace = true
  edition.workspace = true
  rust-version.workspace = true
  
  [lints]
  workspace = true
  
  [lib]
  doctest = false
  
  [[test]]
  name = "issuance"
  path = "tests/issuance.rs"
  required-features = ["integration"]
  
  [[test]]
  name = "disclosure"
  path = "tests/disclosure.rs"
  required-features = ["integration"]
  
  [features]
  # Include implementations of the axum IntoResponse trait.
  axum = ["dep:axum"]
  # Allow the disclosure return URL and its prefix to use http://
  allow_insecure_url = ["http_utils/allow_insecure_url"]
  # Include mock implementations for testing
  mock = ["dep:mockall", "wscd/mock", "crypto/generate"]
  # Include miscellaneous test utilities
  test = ["jwt/test", "wscd/mock", "dep:assert_matches", "dep:parking_lot"]
  # All features needed to run the integration test
  integration = ["mock", "test", "example_constructors"]
  # Credential payload examples
  example_credential_payloads = []
  # Offers example constructors
  example_constructors = []
  # Generate typescript bindings for wallet_web
  ts_rs = []
  
  [dependencies]
  async-trait.workspace = true
  base64.workspace = true
  biscuit.workspace = true
  cfg-if.workspace = true
  chrono = { workspace = true, features = ["std", "clock"] }
  dashmap.workspace = true
  derive_more = { workspace = true, features = [
      "debug",
      "display",
      "constructor",
      "as_ref",
      "from",
      "from_str",
      "into",
      "into_iterator",
  ] }
  futures = { workspace = true, features = ["std", "async-await"] }
  hex.workspace = true
  http.workspace = true
  indexmap.workspace = true
  itertools.workspace = true
  josekit = { workspace = true, features = ["vendored"] }
  jsonwebtoken.workspace = true
  mime.workspace = true
  nutype = { workspace = true, features = ["serde"] }
  p256 = { workspace = true, features = ["ecdsa", "pem", "serde", "std"] }
  rand_core.workspace = true
  reqwest = { workspace = true, features = ["json", "rustls-tls-webpki-roots"] }
  ring.workspace = true
  rustls-pki-types.workspace = true
  serde = { workspace = true, features = ["derive"] }
  serde_json.workspace = true
  serde_urlencoded.workspace = true
  serde_with.workspace = true
  ssri.workspace = true
  strfmt.workspace = true
  strum = { workspace = true, features = ["derive"] }
  thiserror.workspace = true
  tokio.workspace = true
  tracing.workspace = true
  trait-variant.workspace = true
  url = { workspace = true, features = ["serde"] }
  
  assert_matches = { workspace = true, optional = true }
  axum = { workspace = true, optional = true, features = ["json"] }
  mockall = { workspace = true, optional = true }
  parking_lot = { workspace = true, optional = true }
  
  attestation_data.path = "../attestation_data"
  attestation_types.path = "../attestation_types"
  crypto.path = "../crypto"
  dcql.path = "../dcql"
  error_category.path = "../error_category"
  http_utils = { path = "../http_utils", features = ["client"] }
  jwt.path = "../jwt"
  mdoc.path = "../mdoc"
  sd_jwt.path = "../sd_jwt"
  sd_jwt_vc_metadata.path = "../sd_jwt_vc_metadata"
  utils.path = "../utils"
  wscd.path = "../wscd"
  
  [dev-dependencies]
  assert_matches.workspace = true
  mockall.workspace = true
  parking_lot.workspace = true
  rstest.workspace = true
  serde_bytes = { workspace = true, features = ["std"] }
  serde_json = { workspace = true, features = ["preserve_order"] }
  tracing-test.workspace = true
  ts-rs.workspace = true
  wiremock.workspace = true
  
  attestation_data = { path = "../attestation_data", features = [
      "generate",
      "mock",
      "example_credential_payloads",
      "test_credential",
  ] }
  crypto = { path = "../crypto", features = ["examples"] }
  dcql = { path = "../dcql", features = ["mock"] }
  http_utils = { path = "../http_utils", features = ["insecure_http_client"] }
  jwt = { path = "../jwt", features = ["test"] }
  mdoc = { path = "../mdoc", features = ["mock_example_constructors"] }
  sd_jwt = { path = "../sd_jwt", features = ["examples"] }
  sd_jwt_vc_metadata = { path = "../sd_jwt_vc_metadata", features = ["example_constructors"] }
  utils = { path = "../utils", features = ["mock_time"] }
  wscd = { path = "../wscd", features = ["mock"] }
  