[package]
edition = "2024"
name = "gpui-component"
version = "0.5.1"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "UI components for building fantastic desktop application by using GPUI."
homepage = "https://longbridge.github.io/gpui-component"
documentation = "https://docs.rs/gpui-component"
readme = "README.md"
keywords = [
"desktop",
"gpui",
"shadcn",
"ui",
"uikit",
]
license = "Apache-2.0"
repository = "https://github.com/longbridge/gpui-component"
resolver = "2"
[features]
decimal = ["dep:rust_decimal"]
inspector = [
"gpui-macros/inspector",
"gpui/inspector",
"wry/devtools",
]
tree-sitter-languages = [
"dep:tree-sitter-bash",
"dep:tree-sitter-c",
"dep:tree-sitter-c-sharp",
"dep:tree-sitter-cmake",
"dep:tree-sitter-cpp",
"dep:tree-sitter-css",
"dep:tree-sitter-diff",
"dep:tree-sitter-elixir",
"dep:tree-sitter-embedded-template",
"dep:tree-sitter-go",
"dep:tree-sitter-graphql",
"dep:tree-sitter-html",
"dep:tree-sitter-java",
"dep:tree-sitter-javascript",
"dep:tree-sitter-jsdoc",
"dep:tree-sitter-make",
"dep:tree-sitter-md",
"dep:tree-sitter-proto",
"dep:tree-sitter-python",
"dep:tree-sitter-ruby",
"dep:tree-sitter-rust",
"dep:tree-sitter-scala",
"dep:tree-sitter-sequel",
"dep:tree-sitter-swift",
"dep:tree-sitter-toml-ng",
"dep:tree-sitter-typescript",
"dep:tree-sitter-yaml",
"dep:tree-sitter-zig",
]
webview = ["dep:wry"]
[lib]
name = "gpui_component"
path = "src/lib.rs"
doctest = false
[dependencies.aho-corasick]
version = "1.1.3"
[dependencies.anyhow]
version = "1"
[dependencies.chrono]
version = "0.4.38"
[dependencies.enum-iterator]
version = "2.1.0"
[dependencies.gpui]
version = "0.2.2"
[dependencies.gpui-component-macros]
version = "0.5.1"
[dependencies.gpui-macros]
version = "0.2.2"
[dependencies.html5ever]
version = "0.27"
[dependencies.itertools]
version = "0.13.0"
[dependencies.lsp-types]
version = "0.97.0"
features = ["proposed"]
[dependencies.markdown]
version = "1.0.0"
[dependencies.markup5ever_rcdom]
version = "0.3.0"
[dependencies.notify]
version = "7.0.0"
[dependencies.num-traits]
version = "0.2"
[dependencies.once_cell]
version = "1.19.0"
[dependencies.paste]
version = "1"
[dependencies.regex]
version = "1"
[dependencies.ropey]
version = "=2.0.0-beta.1"
features = [
"metric_lines_lf",
"metric_utf16",
]
[dependencies.rust-i18n]
version = "3"
[dependencies.rust_decimal]
version = "1.37.0"
optional = true
[dependencies.schemars]
version = "1"
[dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_repr]
version = "0.1"
[dependencies.smallvec]
version = "1"
[dependencies.smol]
version = "2"
[dependencies.sum-tree]
version = "0.2.0"
package = "zed-sum-tree"
[dependencies.tracing]
version = "0.1.41"
[dependencies.tree-sitter]
version = "0.25.4"
[dependencies.tree-sitter-bash]
version = "0.23.3"
optional = true
[dependencies.tree-sitter-c]
version = "0.24.1"
optional = true
[dependencies.tree-sitter-c-sharp]
version = "0.23.1"
optional = true
[dependencies.tree-sitter-cmake]
version = "0.7.1"
optional = true
[dependencies.tree-sitter-cpp]
version = "0.23.4"
optional = true
[dependencies.tree-sitter-css]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-diff]
version = "0.1.0"
optional = true
[dependencies.tree-sitter-elixir]
version = "0.3"
optional = true
[dependencies.tree-sitter-embedded-template]
version = "0.23.0"
optional = true
[dependencies.tree-sitter-go]
version = "0.23.4"
optional = true
[dependencies.tree-sitter-graphql]
version = "0.1.0"
optional = true
[dependencies.tree-sitter-html]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-java]
version = "0.23.5"
optional = true
[dependencies.tree-sitter-javascript]
version = "0.23.1"
optional = true
[dependencies.tree-sitter-jsdoc]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-json]
version = "0.24.8"
[dependencies.tree-sitter-make]
version = "1.1.1"
optional = true
[dependencies.tree-sitter-md]
version = "0.5.1"
optional = true
[dependencies.tree-sitter-proto]
version = "0.2.0"
optional = true
[dependencies.tree-sitter-python]
version = "0.23.6"
optional = true
[dependencies.tree-sitter-ruby]
version = "0.23.1"
optional = true
[dependencies.tree-sitter-rust]
version = "0.24.0"
optional = true
[dependencies.tree-sitter-scala]
version = "0.23.4"
optional = true
[dependencies.tree-sitter-sequel]
version = "0.3.8"
optional = true
[dependencies.tree-sitter-swift]
version = "0.7.0"
optional = true
[dependencies.tree-sitter-toml-ng]
version = "0.7.0"
optional = true
[dependencies.tree-sitter-typescript]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-yaml]
version = "0.7.1"
optional = true
[dependencies.tree-sitter-zig]
version = "1.1.2"
optional = true
[dependencies.unicode-segmentation]
version = "1.12.0"
[dependencies.uuid]
version = "1.10"
[dependencies.wry]
version = "0.53.3"
optional = true
package = "lb-wry"
[dev-dependencies.gpui]
version = "0.2.2"
features = ["test-support"]
[dev-dependencies.indoc]
version = "2"
[target.'cfg(target_os = "macos")'.dependencies.core-text]
version = "=21.0.0"
[lints.clippy]
almost_complete_range = "allow"
arc_with_non_send_sync = "allow"
borrowed_box = "allow"
dbg_macro = "deny"
let_underscore_future = "allow"
manual_is_multiple_of = "allow"
map_entry = "allow"
module_inception = "allow"
non_canonical_partial_ord_impl = "allow"
reversed_empty_ranges = "allow"
single_range_in_vec_init = "allow"
todo = "deny"
type_complexity = "allow"
[lints.clippy.style]
level = "allow"
priority = -1