[package]
name = "flowy-database2"
version = "0.1.0"
edition = "2024"

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

[dependencies]
collab = { workspace = true }
collab-database = { workspace = true }
collab-entity = { workspace = true }
collab-plugins = { workspace = true }
collab-integrate = { workspace = true }
flowy-database-pub = { workspace = true }

flowy-derive.workspace = true
flowy-notification = { workspace = true }
protobuf.workspace = true
flowy-error = { path = "../flowy-error", features = [
  "impl_from_dispatch_error",
  "impl_from_collab_database",
] }

lib-dispatch = { workspace = true }
tokio = { workspace = true, features = ["sync"] }
bytes.workspace = true
tracing.workspace = true
serde.workspace = true
serde_json.workspace = true
serde_repr.workspace = true
arc-swap.workspace = true
lib-infra = { workspace = true }
chrono = { workspace = true, default-features = false, features = ["clock"] }
rust_decimal = "1.28.1"
rusty-money = { version = "0.4.1", features = ["iso"] }
lazy_static = "1.4.0"
indexmap = { version = "2.1.0", features = ["serde"] }
url = { version = "2" }
fancy-regex = "0.11.0"
futures.workspace = true
dashmap.workspace = true
anyhow.workspace = true
async-stream = "0.3.4"
rayon = "1.9.0"
nanoid = "0.4.0"
async-trait.workspace = true
chrono-tz = "0.8.2"
csv = "1.3.0"
strum = "0.25"
strum_macros = "0.25"
validator = { workspace = true, features = ["derive"] }
tokio-util.workspace = true
moka = { version = "0.12.8", features = ["future"] }
uuid.workspace = true

[dev-dependencies]
event-integration-test = { path = "../event-integration-test", default-features = false }
flowy-database2 = { path = ".", features = ["verbose_log"] }

[build-dependencies]
flowy-codegen.workspace = true


[features]
dart = ["flowy-codegen/dart", "flowy-notification/dart"]
verbose_log = ["collab-database/verbose_log"]
