[package]
name = "polymesh-api"
version = "3.1.0"
edition = "2021"
authors = ["Robert G. Jakabosky <robert@polymesh.network>"]
license = "Apache-2.0"
description = "Polymesh Rust API"
keywords = ["polymesh", "blockchain", "substrate", "codegen"]
repository = "https://github.com/PolymeshAssociation/polymesh-api"
homepage = "https://github.com/PolymeshAssociation/polymesh-api"
[workspace]
members = [
"crates/polymesh-api-codegen-macro",
"crates/polymesh-api-codegen",
"crates/polymesh-api-client",
"crates/polymesh-api-client-extras",
"crates/polymesh-api-ink",
"crates/polymesh-api-tester",
"crates/polymesh-offline-signer",
"examples/simple_transfer",
"examples/get_authorizations",
"examples/add_secondary_keys_with_auth",
"examples/subscribe_blocks",
"examples/test_api",
"examples/dump_blocks",
]
[workspace.dependencies]
polymesh-api-codegen-macro = { version = "3.1.0", path = "crates/polymesh-api-codegen-macro", default-features = false }
polymesh-api-codegen = { version = "3.1.0", path = "crates/polymesh-api-codegen", default-features = false }
polymesh-api-client = { version = "3.1.0", path = "crates/polymesh-api-client", default-features = false }
polymesh-api-client-extras = { version = "3.0.0", path = "crates/polymesh-api-client-extras", default-features = false }
polymesh-api-ink = { version = "0.5.0", path = "crates/polymesh-api-ink", default-features = false }
polymesh-api = { version = "3.1.0", path = "./", default-features = false }
frame-metadata = { version = "15.0.0", default-features = false }
primitive-types = { version = "0.12.0", default-features = false }
scale-info = { version = "2.3", default-features = false }
sp-arithmetic = { version = "16.0", default-features = false }
sp-application-crypto = { version = "23.0", default-features = false }
sp-core = { version = "21.0", default-features = false }
sp-core-hashing = { version = "9.0", default-features = false }
sp-io = { version = "23.0", default-features = false }
sp-keyring = { version = "24.0", default-features = false }
sp-runtime = { version = "24.0", default-features = false }
sp-std = { version = "8.0", default-features = false }
sp-weights = { version = "20.0", default-features = false }
ink_primitives = { version = "3.0", default-features = false }
ink_metadata = { version = "3.0", default-features = false }
ink_env = { version = "3.0", default-features = false }
ink_storage = { version = "3.0", default-features = false }
ink_lang = { version = "3.0", default-features = false }
ink_lang_codegen = { version = "3.0", default-features = false }
serde_json = { version = "1.0", default-features = false }
serde-big-array = { version = "0.4.1" }
serde = { version = "1.0" }
impl-serde = { version = "0.3.1", default-features = false }
async-trait = { version = "0.1" }
[dependencies]
log = "0.4"
polymesh-api-codegen-macro = { workspace = true, default-features = false }
polymesh-api-client = { workspace = true, optional = true, default-features = false }
polymesh-api-ink = { workspace = true, optional = true, default-features = false }
ink_primitives = { workspace = true, optional = true, default-features = false }
ink_metadata = { workspace = true, optional = true, default-features = false, features = ["derive"] }
ink_env = { workspace = true, optional = true, default-features = false }
ink_storage = { workspace = true, optional = true, default-features = false }
ink_lang = { workspace = true, optional = true, default-features = false }
ink_lang_codegen = { workspace = true, optional = true, default-features = false }
sp-arithmetic = { workspace = true, default-features = false }
codec = { version = "3", package = "parity-scale-codec", default-features = false }
scale-info = { workspace = true, default-features = false, optional = true }
async-trait = { workspace = true, optional = true }
serde-big-array = { workspace = true, optional = true }
serde_json = { workspace = true, features = ["preserve_order", "arbitrary_precision"], optional = true }
serde = { workspace = true, optional = true }
[dev-dependencies]
anyhow = "1"
log = "0.4"
hex = "0.4"
dotenv = "0.15"
env_logger = "0.9"
tokio = { version = "1.19", features = ["rt"] }
[features]
default = [ "std", "rpc", "serde", "v14" ]
polymesh_v5 = []
download_metadata = [
"polymesh-api-codegen-macro/download_metadata",
]
rpc = [
"async-trait",
"polymesh-api-client",
]
v14 = [
"polymesh-api-codegen-macro/v14",
"polymesh-api-client/v14",
]
ink = [
"polymesh-api-codegen-macro/v14",
"polymesh-api-ink",
"polymesh-api-codegen-macro/ink",
"polymesh-api-codegen-macro/no_std",
"ink_primitives",
"ink_env",
"ink_storage",
"ink_lang",
"ink_lang_codegen",
"type_info",
]
type_info = [
"scale-info",
"polymesh-api-client?/type_info",
]
wasm = [
"v14",
"rpc",
"polymesh-api-codegen-macro/no_std",
"polymesh-api-client/wasm",
]
serde = [
"dep:serde",
"sp-arithmetic/serde",
"polymesh-api-client/serde",
"serde-big-array",
"codec/serde",
]
std = [
"sp-arithmetic/std",
"polymesh-api-codegen-macro/std",
"polymesh-api-client?/std",
"polymesh-api-ink?/std",
"scale-info?/std",
"ink_primitives?/std",
"ink_metadata/std",
"ink_env?/std",
"ink_storage?/std",
]