[package]
name = "blueprint-client-eigenlayer"
version = "0.2.0-alpha.4"
description = "Eigenlayer client for Tangle Blueprints"
authors.workspace = true
edition.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
rust-version.workspace = true

[lints]
workspace = true

[dependencies]
blueprint-runner = { workspace = true, features = ["eigenlayer"] }

blueprint-core.workspace = true
blueprint-client-core = { workspace = true }
blueprint-std = { workspace = true }
blueprint-evm-extra = { workspace = true }
alloy-contract = { workspace = true }
alloy-network = { workspace = true }
alloy-primitives = { workspace = true }
alloy-provider = { workspace = true }
alloy-transport = { workspace = true }
eigensdk = { workspace = true, features = [
	"common",
	"client-avsregistry",
	"client-elcontracts",
	"services-blsaggregation",
	"services-operatorsinfo",
	"services-avsregistry",
	"types",
	"utils"
] }
num-bigint = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
tokio-util = { workspace = true }
url = { workspace = true }

[dev-dependencies]
# Path-only dev-deps to break publish cycles via testing-utils -> runner -> client-eigenlayer.
# Cargo strips path-only dev-deps from published manifests.
blueprint-chain-setup-anvil = { path = "../../chain-setup/anvil" }
blueprint-evm-extra = { path = "../../evm-extra" }
blueprint-core-testing-utils = { path = "../../testing-utils/core" }
blueprint-eigenlayer-testing-utils = { path = "../../testing-utils/eigenlayer" }
alloy-primitives = { workspace = true }
eigenlayer-contract-deployer = { workspace = true }
tokio = { workspace = true, features = ["full"] }
tracing-subscriber.workspace = true
tempfile = { workspace = true }

[features]
default = ["std", "tracing"]
std = [
	"blueprint-std/std",
	"blueprint-evm-extra/std",
	"tokio/full",
	"blueprint-client-core/std",
	"url/std",
]

tracing = ["blueprint-core/tracing"]
