content: [package]
  name = "matrix-sdk-ui"
  description = "GUI-centric utilities on top of matrix-rust-sdk (experimental)."
  version = "0.14.0"
  edition = "2024"
  repository = "https://github.com/matrix-org/matrix-rust-sdk"
  license = "Apache-2.0"
  rust-version.workspace = true
  
  [package.metadata.docs.rs]
  rustdoc-args = ["--generate-link-to-definition"]
  
  [features]
  default = ["native-tls"]
  
  native-tls = ["matrix-sdk/native-tls"]
  rustls-tls = ["matrix-sdk/rustls-tls"]
  
  js = ["matrix-sdk/js"]
  uniffi = ["dep:uniffi", "matrix-sdk/uniffi", "matrix-sdk-base/uniffi"]
  
  # Add support for encrypted extensible events.
  unstable-msc3956 = ["ruma/unstable-msc3956"]
  
  # Add support for inline media galleries via msgtypes
  unstable-msc4274 = ["matrix-sdk/unstable-msc4274"]
  
  # Enable experimental support for encrypting state events; see
  # https://github.com/matrix-org/matrix-rust-sdk/issues/5397.
  experimental-encrypted-state-events = [
      "matrix-sdk-base/experimental-encrypted-state-events",
      "ruma/unstable-msc3414"
  ]
  
  [dependencies]
  as_variant.workspace = true
  async-rx.workspace = true
  async-stream.workspace = true
  async_cell = "0.2.3"
  bitflags.workspace = true
  chrono.workspace = true
  eyeball.workspace = true
  eyeball-im.workspace = true
  eyeball-im-util.workspace = true
  futures-core.workspace = true
  futures-util.workspace = true
  fuzzy-matcher = "0.3.7"
  growable-bloom-filter.workspace = true
  imbl = { workspace = true, features = ["serde"] }
  indexmap.workspace = true
  itertools.workspace = true
  matrix-sdk = { workspace = true, features = ["e2e-encryption"] }
  matrix-sdk-base.workspace = true
  matrix-sdk-common.workspace = true
  mime.workspace = true
  once_cell.workspace = true
  pin-project-lite.workspace = true
  ruma = { workspace = true, features = ["html", "unstable-msc3381"] }
  serde.workspace = true
  serde_json.workspace = true
  thiserror.workspace = true
  tokio.workspace = true
  tokio-stream = { workspace = true, features = ["sync"] }
  tracing = { workspace = true, features = ["attributes"] }
  unicode-normalization.workspace = true
  uniffi = { workspace = true, optional = true }
  
  emojis = "0.7.2"
  unicode-segmentation = "1.12.0"
  
  [dev-dependencies]
  anyhow.workspace = true
  assert-json-diff.workspace = true
  assert_matches.workspace = true
  assert_matches2.workspace = true
  eyeball-im-util.workspace = true
  matrix-sdk = { workspace = true, features = ["testing", "sqlite"] }
  matrix-sdk-test.workspace = true
  matrix-sdk-test-utils.workspace = true
  stream_assert.workspace = true
  tempfile.workspace = true
  url.workspace = true
  wiremock.workspace = true
  
  [lints]
  workspace = true
  