[package]
name = "tinymist-project"
description = "Project model of typst for tinymist."
categories = ["compilers"]
keywords = ["language", "typst"]
# group: world
version = "0.15.0"
authors.workspace = true
license.workspace = true
edition.workspace = true
homepage.workspace = true
repository.workspace = true
rust-version.workspace = true

[dependencies]
anyhow.workspace = true
clap.workspace = true
comemo.workspace = true
dirs.workspace = true
ecow.workspace = true
js-sys = { workspace = true, optional = true }
log.workspace = true
notify = { workspace = true, optional = true }
parking_lot.workspace = true
rayon.workspace = true
rpds.workspace = true
semver.workspace = true
serde.workspace = true
serde_json.workspace = true
tinymist-task.workspace = true
tinymist-world = { workspace = true }
tinymist-derive.workspace = true
tinymist-l10n.workspace = true
tinymist-std = { workspace = true, features = ["typst"] }
tokio = { workspace = true, features = ["sync"] }
toml = { workspace = true, optional = true }
typst.workspace = true
typst-assets.workspace = true
wasm-bindgen = { workspace = true, optional = true }

[features]

fonts = ["typst-assets/fonts"]
mock = ["tinymist-world/mock", "no-content-hint"]
no-content-hint = ["tinymist-task/no-content-hint"]
lsp = ["toml"]
# "system", 

system = ["tinymist-std/system", "tinymist-world/system", "toml", "notify"]
web = ["tinymist-std/web", "tinymist-world/web", "js-sys", "wasm-bindgen"]

[dev-dependencies]
tinymist-world = { workspace = true, features = ["mock"] }
tempfile.workspace = true

[lints]
workspace = true
