[package]
name = "dart-ffi"
version = "0.1.0"
edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lib]
name = "dart_ffi"
# this value will change depending on the target os
# default static library
crate-type = ["staticlib"]


[dependencies]
allo-isolate = { version = "^0.1", features = ["catch-unwind"] }
byteorder = { version = "1.4.3" }
protobuf.workspace = true
tokio = { workspace = true, features = ["full", "rt-multi-thread", "tracing"] }
serde.workspace = true
serde_repr.workspace = true
serde_json.workspace = true
bytes.workspace = true
crossbeam-utils = "0.8.15"
lazy_static = "1.4.0"
tracing.workspace = true
lib-log.workspace = true
semver = "1.0.22"

# workspace
lib-dispatch = { workspace = true, features = ["local_set"] }

# Core
#flowy-core = { workspace = true, features = ["profiling"] }
#flowy-core = { workspace = true, features = ["verbose_log"] }
flowy-core = { workspace = true }

flowy-notification = { workspace = true, features = ["dart"] }
flowy-document = { workspace = true, features = ["dart"] }
flowy-config = { workspace = true, features = ["dart"] }
flowy-user = { workspace = true, features = ["dart"] }
flowy-date = { workspace = true, features = ["dart"] }
flowy-server = { workspace = true }
flowy-server-pub = { workspace = true }
collab-integrate = { workspace = true }
flowy-derive.workspace = true
serde_yaml = "0.9.27"
flowy-error = { workspace = true, features = ["impl_from_sqlite", "impl_from_dispatch_error", "impl_from_appflowy_cloud", "impl_from_reqwest", "impl_from_serde", "dart"] }
futures = "0.3.26"

[features]
default = ["dart"]
dart = ["flowy-core/dart"]
http_sync = ["flowy-core/http_sync"]
openssl_vendored = ["flowy-core/openssl_vendored"]
verbose_log = []

[build-dependencies]
flowy-codegen = { workspace = true, features = ["dart"] }