[package]
name = "kcl-wasm-lib"
version = "0.1.75"
edition = "2021"
repository = "https://github.com/KittyCAD/modeling-app"
rust-version = "1.83"
publish = false

[lib]
crate-type = ["cdylib"]
bench = false

[target.'cfg(target_arch = "wasm32")'.dependencies]
bson = { workspace = true, features = ["uuid-1", "chrono"] }
console_error_panic_hook = { workspace = true }
data-encoding = "2.6.0"
futures = "0.3.31"
# Enable the feature in a transitive dependency.
getrandom_2 = { package = "getrandom", version = "0.2", features = ["js"] }
getrandom_3 = { package = "getrandom", version = "0.3", features = ["wasm_js"] }
gloo-utils = "0.2.0"
js-sys = "0.3.72"
kcl-lib = { path = "../kcl-lib", features = ["artifact-graph"] }
kittycad = { workspace = true }
kittycad-modeling-cmds = { workspace = true }
serde_json = { workspace = true }
tokio = { workspace = true, features = ["sync", "rt"] }
toml = "0.8.19"
tower-lsp = { workspace = true, features = ["runtime-agnostic"] }
uuid = { workspace = true, features = ["v4", "js", "serde"] }
wasm-bindgen = "0.2.99"
wasm-bindgen-futures = { version = "0.4.49", features = ["futures-core-03-stream"] }
wasm-streams = "0.4.2"

[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3.76"
features = [
  "console",
  "HtmlTextAreaElement",
  "ReadableStream",
  "WritableStream",
]

[features]
dhat-heap = ["kcl-lib/dhat-heap"]

[dev-dependencies]
anyhow.workspace = true
pretty_assertions = "1.4.1"
wasm-bindgen-test = "0.3.50"

[dependencies]
typed-path = "0.11.0"

# Local development only. Placeholder to speed up development cycle
#[package.metadata.wasm-pack.profile.release]
#wasm-opt = false
