Files
2026-07-13 12:25:07 +08:00

169 lines
5.3 KiB
TOML

# ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
# ┃ ██████ ██████ ██████ █ █ █ █ █ █▄ ▀███ █ ┃
# ┃ ▄▄▄▄▄█ █▄▄▄▄▄ ▄▄▄▄▄█ ▀▀▀▀▀█▀▀▀▀▀ █ ▀▀▀▀▀█ ████████▌▐███ ███▄ ▀█ █ ▀▀▀▀▀ ┃
# ┃ █▀▀▀▀▀ █▀▀▀▀▀ █▀██▀▀ ▄▄▄▄▄ █ ▄▄▄▄▄█ ▄▄▄▄▄█ ████████▌▐███ █████▄ █ ▄▄▄▄▄ ┃
# ┃ █ ██████ █ ▀█▄ █ ██████ █ ███▌▐███ ███████▄ █ ┃
# ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
# ┃ Copyright (c) 2017, the Perspective Authors. ┃
# ┃ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ ┃
# ┃ This file is part of the Perspective library, distributed under the terms ┃
# ┃ of the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). ┃
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
[package]
name = "perspective-viewer"
version = "4.5.2"
authors = ["Andrew Stein <steinlink@gmail.com>"]
edition = "2024"
description = "A data visualization and analytics component, especially well-suited for large and/or streaming datasets."
repository = "https://github.com/perspective-dev/perspective"
license = "Apache-2.0"
homepage = "https://perspective-dev.github.io"
keywords = ["experimental"]
build = "build.rs"
include = ["build.rs", "src/**/*", "Cargo.toml", "package.json", "docs/**/*"]
[package.metadata.docs.rs]
rustc-args = ["--cfg", "web_sys_unstable_apis"]
rustdoc-args = ["--html-in-header", "docs/index.html"]
[lib]
crate-type = ["cdylib", "rlib"]
path = "src/rust/lib.rs"
[features]
external-bootstrap = []
metadata = []
default = []
talc-allocator = ["perspective-js/talc-allocator"]
trace-allocator = ["perspective-js/trace-allocator"]
[build-dependencies]
lightningcss = "1.0.0-alpha.71"
glob = "0.3.0"
anyhow = "1.0.66"
[dev-dependencies]
wasm-bindgen-test = "0.3.13"
[dependencies]
perspective-client = { version = "4.5.2" }
perspective-js = { version = "4.5.2" }
# Provides async `Mutex` for locked sections such as `render`
async-lock = "2.5.0"
# Encode HTML export
base64 = "0.22.1"
console_error_panic_hook = "0.1.6"
# Timezone correction
chrono = "0.4"
# More derivable traits
derivative = "2.2.0"
# Easy way to define & implement a singleton trait (type extension)
extend = "1.1.2"
# General async tools
futures = "0.3.31"
# General iterator improvements
itertools = "0.14.0"
# JavaScript stdlib bindings
js-sys = "0.3.85"
macro_rules_attribute = "0.2.2"
# Parse ExprTK for syntax highlighting.
nom = "7.1.1"
# Serialization for tokens and JS APIs
serde = { version = "1.0", features = ["derive"] }
# Support for "unknown"/dictionary types such as `plugin_config`
serde_json = { version = "1.0.107", features = ["raw_value"] }
# Faster struct serialize/deserialize
serde-wasm-bindgen = "0.6.0"
strum = { version = "0.26.1", features = ["derive"] }
thiserror = { version = "1.0.55" }
# specta = { version = "2.0.0-rc.9", features = ["typescript"] }
ts-rs = { version = "11.1.0", features = [
"serde-json-impl",
"no-serde-warnings",
] }
# Async-aware logging that can be disabled at compile-time.
tracing = { version = ">=0.1.36" }
tracing-subscriber = "0.3.15"
# Browser API bindings
wasm-bindgen = { version = "=0.2.108", features = ["enable-interning"] }
# Pass perspective-js arguments to viewer
wasm-bindgen-derive = "0.3.0"
# Browser `Promise` bindings
wasm-bindgen-futures = "0.4.41"
# Web framework
yew = { version = "0.22.0", features = ["csr"] }
# Browser stdlib bindings
web-sys.version = "0.3.85"
# Browser stdlib bindings
web-sys.features = [
"Blob",
"Clipboard",
"CssStyleDeclaration",
"CssStyleSheet",
"CssRuleList",
"CssRule",
"CssStyleRule",
"CustomEvent",
"CustomEventInit",
"DataTransfer",
"DomRect",
"DomStringMap",
"DomTokenList",
"Element",
"Event",
"EventTarget",
"EventListener",
"FontFace",
"FontFaceSet",
"FontFaceSetIterator",
"FontFaceSetIteratorResult",
"HtmlCollection",
"HtmlElement",
"HtmlTextAreaElement",
"HtmlStyleElement",
"HtmlSelectElement",
"InputEvent",
"KeyboardEvent",
"MutationObserver",
"MutationObserverInit",
"MutationRecord",
"Navigator",
"Node",
"NodeList",
"Performance",
"PerformanceMark",
"Range",
"Selection",
"ShadowRoot",
"ShadowRootMode",
"ShadowRootInit",
"StyleSheetList",
"Url",
"Window",
]