Redesign for the v1 stable release #3
157
Cargo.lock
generated
157
Cargo.lock
generated
@@ -102,11 +102,11 @@ checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ar_archive_writer"
|
name = "ar_archive_writer"
|
||||||
version = "0.2.0"
|
version = "0.5.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f0c269894b6fe5e9d7ada0cf69b5bf847ff35bc25fc271f08e1d080fce80339a"
|
checksum = "7eb93bbb63b9c227414f6eb3a0adfddca591a8ce1e9b60661bb08969b87e340b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"object 0.32.2",
|
"object",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -567,9 +567,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "aws-lc-rs"
|
name = "aws-lc-rs"
|
||||||
version = "1.15.3"
|
version = "1.15.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e84ce723ab67259cfeb9877c6a639ee9eb7a27b28123abd71db7f0d5d0cc9d86"
|
checksum = "7b7b6141e96a8c160799cc2d5adecd5cbbe5054cb8c7c4af53da0f83bb7ad256"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aws-lc-sys",
|
"aws-lc-sys",
|
||||||
"zeroize",
|
"zeroize",
|
||||||
@@ -577,9 +577,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "aws-lc-sys"
|
name = "aws-lc-sys"
|
||||||
version = "0.36.0"
|
version = "0.37.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "43a442ece363113bd4bd4c8b18977a7798dd4d3c3383f34fb61936960e8f4ad8"
|
checksum = "5c34dda4df7017c8db52132f0f8a2e0f8161649d15723ed63fc00c82d0f2081a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cc",
|
"cc",
|
||||||
"cmake",
|
"cmake",
|
||||||
@@ -597,7 +597,7 @@ dependencies = [
|
|||||||
"cfg-if",
|
"cfg-if",
|
||||||
"libc",
|
"libc",
|
||||||
"miniz_oxide",
|
"miniz_oxide",
|
||||||
"object 0.37.3",
|
"object",
|
||||||
"rustc-demangle",
|
"rustc-demangle",
|
||||||
"windows-link 0.2.1",
|
"windows-link 0.2.1",
|
||||||
]
|
]
|
||||||
@@ -934,9 +934,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cc"
|
name = "cc"
|
||||||
version = "1.2.53"
|
version = "1.2.54"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "755d2fce177175ffca841e9a06afdb2c4ab0f593d53b4dee48147dfaade85932"
|
checksum = "6354c81bbfd62d9cfa9cb3c773c2b7b2a3a482d569de977fd0e961f6e7c00583"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"find-msvc-tools",
|
"find-msvc-tools",
|
||||||
"jobserver",
|
"jobserver",
|
||||||
@@ -1180,7 +1180,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "collections"
|
name = "collections"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"indexmap",
|
"indexmap",
|
||||||
"rustc-hash 2.1.1",
|
"rustc-hash 2.1.1",
|
||||||
@@ -1619,7 +1619,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "derive_refineable"
|
name = "derive_refineable"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@@ -1933,9 +1933,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "euclid"
|
name = "euclid"
|
||||||
version = "0.22.11"
|
version = "0.22.13"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48"
|
checksum = "df61bf483e837f88d5c2291dcf55c67be7e676b3a51acc48db3a7b163b91ed63"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"num-traits",
|
"num-traits",
|
||||||
]
|
]
|
||||||
@@ -2542,7 +2542,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "gpui"
|
name = "gpui"
|
||||||
version = "0.2.2"
|
version = "0.2.2"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"as-raw-xcb-connection",
|
"as-raw-xcb-connection",
|
||||||
@@ -2644,7 +2644,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "gpui_macros"
|
name = "gpui_macros"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"heck 0.5.0",
|
"heck 0.5.0",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
@@ -2655,7 +2655,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "gpui_tokio"
|
name = "gpui_tokio"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"gpui",
|
"gpui",
|
||||||
@@ -2877,7 +2877,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "http_client"
|
name = "http_client"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"async-compression",
|
"async-compression",
|
||||||
@@ -2902,7 +2902,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "http_client_tls"
|
name = "http_client_tls"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"rustls",
|
"rustls",
|
||||||
"rustls-platform-verifier",
|
"rustls-platform-verifier",
|
||||||
@@ -3142,7 +3142,7 @@ dependencies = [
|
|||||||
"rgb",
|
"rgb",
|
||||||
"tiff",
|
"tiff",
|
||||||
"zune-core 0.5.1",
|
"zune-core 0.5.1",
|
||||||
"zune-jpeg 0.5.10",
|
"zune-jpeg 0.5.11",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -3444,9 +3444,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libm"
|
name = "libm"
|
||||||
version = "0.2.15"
|
version = "0.2.16"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de"
|
checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libredox"
|
name = "libredox"
|
||||||
@@ -3663,7 +3663,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "media"
|
name = "media"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"bindgen",
|
"bindgen",
|
||||||
@@ -3903,7 +3903,7 @@ checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "nostr"
|
name = "nostr"
|
||||||
version = "0.44.1"
|
version = "0.44.1"
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
source = "git+https://github.com/rust-nostr/nostr#07daf26c737a712b74c8edb9a9697929f4de8b21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aes",
|
"aes",
|
||||||
"base64",
|
"base64",
|
||||||
@@ -3928,11 +3928,11 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "nostr-connect"
|
name = "nostr-connect"
|
||||||
version = "0.44.0"
|
version = "0.44.0"
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
source = "git+https://github.com/rust-nostr/nostr#07daf26c737a712b74c8edb9a9697929f4de8b21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-utility",
|
"async-utility",
|
||||||
"nostr",
|
"nostr",
|
||||||
"nostr-relay-pool",
|
"nostr-sdk",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tracing",
|
"tracing",
|
||||||
]
|
]
|
||||||
@@ -3940,7 +3940,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "nostr-database"
|
name = "nostr-database"
|
||||||
version = "0.44.0"
|
version = "0.44.0"
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
source = "git+https://github.com/rust-nostr/nostr#07daf26c737a712b74c8edb9a9697929f4de8b21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"btreecap",
|
"btreecap",
|
||||||
"flatbuffers",
|
"flatbuffers",
|
||||||
@@ -3952,7 +3952,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "nostr-gossip"
|
name = "nostr-gossip"
|
||||||
version = "0.44.0"
|
version = "0.44.0"
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
source = "git+https://github.com/rust-nostr/nostr#07daf26c737a712b74c8edb9a9697929f4de8b21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"nostr",
|
"nostr",
|
||||||
]
|
]
|
||||||
@@ -3960,7 +3960,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "nostr-lmdb"
|
name = "nostr-lmdb"
|
||||||
version = "0.44.0"
|
version = "0.44.0"
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
source = "git+https://github.com/rust-nostr/nostr#07daf26c737a712b74c8edb9a9697929f4de8b21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-utility",
|
"async-utility",
|
||||||
"flume",
|
"flume",
|
||||||
@@ -3972,32 +3972,20 @@ dependencies = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "nostr-relay-pool"
|
name = "nostr-sdk"
|
||||||
version = "0.44.0"
|
version = "0.44.1"
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
source = "git+https://github.com/rust-nostr/nostr#07daf26c737a712b74c8edb9a9697929f4de8b21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-utility",
|
"async-utility",
|
||||||
"async-wsocket",
|
"async-wsocket",
|
||||||
"atomic-destructor",
|
"atomic-destructor",
|
||||||
|
"futures",
|
||||||
"hex",
|
"hex",
|
||||||
"lru",
|
"lru",
|
||||||
"negentropy",
|
"negentropy",
|
||||||
"nostr",
|
"nostr",
|
||||||
"nostr-database",
|
"nostr-database",
|
||||||
"tokio",
|
|
||||||
"tracing",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "nostr-sdk"
|
|
||||||
version = "0.44.1"
|
|
||||||
source = "git+https://github.com/rust-nostr/nostr#6d776ad79052ec908ffdabfe4229281d917abb59"
|
|
||||||
dependencies = [
|
|
||||||
"async-utility",
|
|
||||||
"nostr",
|
|
||||||
"nostr-database",
|
|
||||||
"nostr-gossip",
|
"nostr-gossip",
|
||||||
"nostr-relay-pool",
|
|
||||||
"tokio",
|
"tokio",
|
||||||
"tracing",
|
"tracing",
|
||||||
]
|
]
|
||||||
@@ -4259,15 +4247,6 @@ dependencies = [
|
|||||||
"objc",
|
"objc",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "object"
|
|
||||||
version = "0.32.2"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
|
|
||||||
dependencies = [
|
|
||||||
"memchr",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "object"
|
name = "object"
|
||||||
version = "0.37.3"
|
version = "0.37.3"
|
||||||
@@ -4285,9 +4264,9 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "oneshot"
|
name = "oneshot"
|
||||||
version = "0.1.11"
|
version = "0.1.12"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b4ce411919553d3f9fa53a0880544cda985a112117a0444d5ff1e870a893d6ea"
|
checksum = "3ce66197e99546da6c6d991285f605192e794ceae69686c17163844a7bf8fcc2"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "oo7"
|
name = "oo7"
|
||||||
@@ -4375,9 +4354,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "openssl-probe"
|
name = "openssl-probe"
|
||||||
version = "0.2.0"
|
version = "0.2.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9f50d9b3dabb09ecd771ad0aa242ca6894994c130308ca3d7684634df8037391"
|
checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "openssl-sys"
|
name = "openssl-sys"
|
||||||
@@ -4523,7 +4502,7 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "perf"
|
name = "perf"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"collections",
|
"collections",
|
||||||
"serde",
|
"serde",
|
||||||
@@ -4777,9 +4756,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "proc-macro2"
|
name = "proc-macro2"
|
||||||
version = "1.0.105"
|
version = "1.0.106"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "535d180e0ecab6268a3e718bb9fd44db66bbbc256257165fc699dadf70d16fe7"
|
checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
@@ -4805,9 +4784,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "psm"
|
name = "psm"
|
||||||
version = "0.1.28"
|
version = "0.1.29"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "d11f2fedc3b7dafdc2851bc52f277377c5473d378859be234bc7ebb593144d01"
|
checksum = "1fa96cb91275ed31d6da3e983447320c4eb219ac180fa1679a0889ff32861e2d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ar_archive_writer",
|
"ar_archive_writer",
|
||||||
"cc",
|
"cc",
|
||||||
@@ -4921,9 +4900,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quote"
|
name = "quote"
|
||||||
version = "1.0.43"
|
version = "1.0.44"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "dc74d9a594b72ae6656596548f56f667211f8a97b3d4c3d467150794690dc40a"
|
checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
]
|
]
|
||||||
@@ -5158,7 +5137,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "refineable"
|
name = "refineable"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"derive_refineable",
|
"derive_refineable",
|
||||||
]
|
]
|
||||||
@@ -5257,7 +5236,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "reqwest_client"
|
name = "reqwest_client"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"bytes",
|
"bytes",
|
||||||
@@ -5311,7 +5290,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "rope"
|
name = "rope"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arrayvec",
|
"arrayvec",
|
||||||
"log",
|
"log",
|
||||||
@@ -5449,7 +5428,7 @@ version = "0.8.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63"
|
checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"openssl-probe 0.2.0",
|
"openssl-probe 0.2.1",
|
||||||
"rustls-pki-types",
|
"rustls-pki-types",
|
||||||
"schannel",
|
"schannel",
|
||||||
"security-framework 3.5.1",
|
"security-framework 3.5.1",
|
||||||
@@ -5590,7 +5569,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "scheduler"
|
name = "scheduler"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-task",
|
"async-task",
|
||||||
"backtrace",
|
"backtrace",
|
||||||
@@ -6023,9 +6002,9 @@ checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "socket2"
|
name = "socket2"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881"
|
checksum = "86f4aa3ad99f2088c990dfa82d367e19cb29268ed67c574d10d0a4bfe71f07e0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"windows-sys 0.60.2",
|
"windows-sys 0.60.2",
|
||||||
@@ -6182,7 +6161,7 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "sum_tree"
|
name = "sum_tree"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arrayvec",
|
"arrayvec",
|
||||||
"log",
|
"log",
|
||||||
@@ -7123,7 +7102,7 @@ checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "util"
|
name = "util"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"async-fs",
|
"async-fs",
|
||||||
@@ -7140,6 +7119,7 @@ dependencies = [
|
|||||||
"log",
|
"log",
|
||||||
"mach2",
|
"mach2",
|
||||||
"nix 0.29.0",
|
"nix 0.29.0",
|
||||||
|
"percent-encoding",
|
||||||
"regex",
|
"regex",
|
||||||
"rust-embed",
|
"rust-embed",
|
||||||
"schemars",
|
"schemars",
|
||||||
@@ -7152,6 +7132,7 @@ dependencies = [
|
|||||||
"tempfile",
|
"tempfile",
|
||||||
"tendril",
|
"tendril",
|
||||||
"unicase",
|
"unicase",
|
||||||
|
"url",
|
||||||
"walkdir",
|
"walkdir",
|
||||||
"which",
|
"which",
|
||||||
]
|
]
|
||||||
@@ -7159,7 +7140,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "util_macros"
|
name = "util_macros"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"perf",
|
"perf",
|
||||||
"quote",
|
"quote",
|
||||||
@@ -7168,9 +7149,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "uuid"
|
name = "uuid"
|
||||||
version = "1.19.0"
|
version = "1.20.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e2e054861b4bd027cd373e18e8d8d8e6548085000e41290d95ce0c373a654b4a"
|
checksum = "ee48d38b119b0cd71fe4141b30f5ba9c7c5d9f4e7a3a8b4a674e4b6ef789976f"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"getrandom 0.3.4",
|
"getrandom 0.3.4",
|
||||||
"js-sys",
|
"js-sys",
|
||||||
@@ -8366,9 +8347,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zbus"
|
name = "zbus"
|
||||||
version = "5.13.1"
|
version = "5.13.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "17f79257df967b6779afa536788657777a0001f5b42524fcaf5038d4344df40b"
|
checksum = "1bfeff997a0aaa3eb20c4652baf788d2dfa6d2839a0ead0b3ff69ce2f9c4bdd1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-broadcast",
|
"async-broadcast",
|
||||||
"async-executor",
|
"async-executor",
|
||||||
@@ -8401,9 +8382,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zbus_macros"
|
name = "zbus_macros"
|
||||||
version = "5.13.1"
|
version = "5.13.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "aad23e2d2f91cae771c7af7a630a49e755f1eb74f8a46e9f6d5f7a146edf5a37"
|
checksum = "0bbd5a90dbe8feee5b13def448427ae314ccd26a49cac47905cafefb9ff846f1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro-crate",
|
"proc-macro-crate",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
@@ -8635,7 +8616,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "zlog"
|
name = "zlog"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"chrono",
|
"chrono",
|
||||||
@@ -8645,14 +8626,14 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zmij"
|
name = "zmij"
|
||||||
version = "1.0.15"
|
version = "1.0.17"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "94f63c051f4fe3c1509da62131a678643c5b6fbdc9273b2b79d4378ebda003d2"
|
checksum = "02aae0f83f69aafc94776e879363e9771d7ecbffe2c7fbb6c14c5e00dfe88439"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ztracing"
|
name = "ztracing"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"tracing",
|
"tracing",
|
||||||
"tracing-subscriber",
|
"tracing-subscriber",
|
||||||
@@ -8663,7 +8644,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "ztracing_macro"
|
name = "ztracing_macro"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/zed-industries/zed#e476af6417576903700f8a7645a7de3315b5ff6c"
|
source = "git+https://github.com/zed-industries/zed#aceff52f8a93a31009d6f5284253f0b334a043dc"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zune-core"
|
name = "zune-core"
|
||||||
@@ -8697,9 +8678,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zune-jpeg"
|
name = "zune-jpeg"
|
||||||
version = "0.5.10"
|
version = "0.5.11"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ea2db9186c0a6ad1aa7012046f3fadc8db9001691b367c510f5867f17f975752"
|
checksum = "2959ca473aae96a14ecedf501d20b3608d2825ba280d5adb57d651721885b0c2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"zune-core 0.5.1",
|
"zune-core 0.5.1",
|
||||||
]
|
]
|
||||||
|
|||||||
3
assets/icons/chevron-down.svg
Normal file
3
assets/icons/chevron-down.svg
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none">
|
||||||
|
<path d="M9.8007 10.25C8.74816 10.25 8.16683 11.4713 8.83056 12.2882L11.0301 14.9953C11.5303 15.611 12.4701 15.611 12.9704 14.9953L15.1699 12.2882C15.8336 11.4713 15.2523 10.25 14.1997 10.25H9.8007Z" fill="currentColor"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 302 B |
0
assets/themes/.keep
Normal file
0
assets/themes/.keep
Normal file
@@ -302,6 +302,11 @@ impl ChatRegistry {
|
|||||||
.map(|this| this.downgrade())
|
.map(|this| this.downgrade())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Get all rooms.
|
||||||
|
pub fn rooms(&self, _cx: &App) -> &Vec<Entity<Room>> {
|
||||||
|
&self.rooms
|
||||||
|
}
|
||||||
|
|
||||||
/// Get all ongoing rooms.
|
/// Get all ongoing rooms.
|
||||||
pub fn ongoing_rooms(&self, cx: &App) -> Vec<Entity<Room>> {
|
pub fn ongoing_rooms(&self, cx: &App) -> Vec<Entity<Room>> {
|
||||||
self.rooms
|
self.rooms
|
||||||
|
|||||||
@@ -2,12 +2,12 @@ use std::ops::Range;
|
|||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
use anyhow::{anyhow, Error};
|
use anyhow::{anyhow, Error};
|
||||||
use chat::{ChatEvent, ChatRegistry, Room, RoomKind};
|
use chat::{ChatEvent, ChatRegistry, Room};
|
||||||
use common::{DebouncedDelay, RenderedTimestamp, TextUtils, BOOTSTRAP_RELAYS, SEARCH_RELAYS};
|
use common::{DebouncedDelay, RenderedTimestamp, TextUtils, BOOTSTRAP_RELAYS, SEARCH_RELAYS};
|
||||||
use dock::panel::{Panel, PanelEvent};
|
use dock::panel::{Panel, PanelEvent};
|
||||||
use gpui::prelude::FluentBuilder;
|
use gpui::prelude::FluentBuilder;
|
||||||
use gpui::{
|
use gpui::{
|
||||||
deferred, div, relative, rems, uniform_list, App, AppContext, Context, Entity, EventEmitter,
|
deferred, div, rems, uniform_list, App, AppContext, Context, Decorations, Entity, EventEmitter,
|
||||||
FocusHandle, Focusable, InteractiveElement, IntoElement, ParentElement, Render,
|
FocusHandle, Focusable, InteractiveElement, IntoElement, ParentElement, Render,
|
||||||
RetainAllImageCache, SharedString, Styled, Subscription, Task, Window,
|
RetainAllImageCache, SharedString, Styled, Subscription, Task, Window,
|
||||||
};
|
};
|
||||||
@@ -17,12 +17,11 @@ use nostr_sdk::prelude::*;
|
|||||||
use person::PersonRegistry;
|
use person::PersonRegistry;
|
||||||
use smallvec::{smallvec, SmallVec};
|
use smallvec::{smallvec, SmallVec};
|
||||||
use state::{NostrRegistry, GIFTWRAP_SUBSCRIPTION};
|
use state::{NostrRegistry, GIFTWRAP_SUBSCRIPTION};
|
||||||
use theme::{ActiveTheme, TITLEBAR_HEIGHT};
|
use theme::{ActiveTheme, CLIENT_SIDE_DECORATION_ROUNDING, TITLEBAR_HEIGHT};
|
||||||
use ui::avatar::Avatar;
|
use ui::avatar::Avatar;
|
||||||
use ui::button::{Button, ButtonVariants};
|
use ui::button::{Button, ButtonVariants};
|
||||||
use ui::input::{InputEvent, InputState, TextInput};
|
use ui::input::{InputEvent, InputState, TextInput};
|
||||||
use ui::popup_menu::PopupMenuExt;
|
use ui::{h_flex, v_flex, Icon, IconName, Sizable, StyledExt, WindowExtension};
|
||||||
use ui::{h_flex, v_flex, Icon, IconName, Selectable, Sizable, StyledExt, WindowExtension};
|
|
||||||
|
|
||||||
use crate::actions::{RelayStatus, Reload};
|
use crate::actions::{RelayStatus, Reload};
|
||||||
use crate::views::compose::compose_button;
|
use crate::views::compose::compose_button;
|
||||||
@@ -64,16 +63,12 @@ pub struct Sidebar {
|
|||||||
/// New request flag
|
/// New request flag
|
||||||
new_request: bool,
|
new_request: bool,
|
||||||
|
|
||||||
/// Current chat room filter
|
|
||||||
active_filter: Entity<RoomKind>,
|
|
||||||
|
|
||||||
/// Event subscriptions
|
/// Event subscriptions
|
||||||
_subscriptions: SmallVec<[Subscription; 2]>,
|
_subscriptions: SmallVec<[Subscription; 2]>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Sidebar {
|
impl Sidebar {
|
||||||
fn new(window: &mut Window, cx: &mut Context<Self>) -> Self {
|
fn new(window: &mut Window, cx: &mut Context<Self>) -> Self {
|
||||||
let active_filter = cx.new(|_| RoomKind::Ongoing);
|
|
||||||
let search_results = cx.new(|_| None);
|
let search_results = cx.new(|_| None);
|
||||||
|
|
||||||
// Define the find input state
|
// Define the find input state
|
||||||
@@ -131,7 +126,6 @@ impl Sidebar {
|
|||||||
find_debouncer: DebouncedDelay::new(),
|
find_debouncer: DebouncedDelay::new(),
|
||||||
finding: false,
|
finding: false,
|
||||||
new_request: false,
|
new_request: false,
|
||||||
active_filter,
|
|
||||||
find_input,
|
find_input,
|
||||||
search_results,
|
search_results,
|
||||||
search_task: None,
|
search_task: None,
|
||||||
@@ -412,19 +406,6 @@ impl Sidebar {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
fn filter(&self, kind: &RoomKind, cx: &Context<Self>) -> bool {
|
|
||||||
self.active_filter.read(cx) == kind
|
|
||||||
}
|
|
||||||
|
|
||||||
fn set_filter(&mut self, kind: RoomKind, cx: &mut Context<Self>) {
|
|
||||||
self.active_filter.update(cx, |this, cx| {
|
|
||||||
*this = kind;
|
|
||||||
cx.notify();
|
|
||||||
});
|
|
||||||
self.new_request = false;
|
|
||||||
cx.notify();
|
|
||||||
}
|
|
||||||
|
|
||||||
fn open(&mut self, id: u64, window: &mut Window, cx: &mut Context<Self>) {
|
fn open(&mut self, id: u64, window: &mut Window, cx: &mut Context<Self>) {
|
||||||
let chat = ChatRegistry::global(cx);
|
let chat = ChatRegistry::global(cx);
|
||||||
|
|
||||||
@@ -536,43 +517,53 @@ impl Sidebar {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
fn list_items(
|
fn render_list_items(
|
||||||
&self,
|
&self,
|
||||||
rooms: &[Entity<Room>],
|
|
||||||
range: Range<usize>,
|
range: Range<usize>,
|
||||||
|
_window: &Window,
|
||||||
cx: &Context<Self>,
|
cx: &Context<Self>,
|
||||||
) -> Vec<impl IntoElement> {
|
) -> Vec<impl IntoElement> {
|
||||||
let mut items = Vec::with_capacity(range.end - range.start);
|
let chat = ChatRegistry::global(cx);
|
||||||
|
|
||||||
for ix in range {
|
// Get all rooms from search results or chat registry
|
||||||
let Some(room) = rooms.get(ix) else {
|
let all_rooms = match self.search_results.read(cx).as_ref() {
|
||||||
items.push(RoomListItem::new(ix));
|
Some(results) => results,
|
||||||
continue;
|
None => chat.read(cx).rooms(cx),
|
||||||
};
|
};
|
||||||
|
|
||||||
let this = room.read(cx);
|
// If no rooms are found, return a placeholder element for each index in the range
|
||||||
let room_id = this.id;
|
let Some(visible_rooms) = all_rooms.get(range.clone()) else {
|
||||||
let member = this.display_member(cx);
|
return range
|
||||||
|
.into_iter()
|
||||||
|
.map(|ix| RoomListItem::new(ix).into_any_element())
|
||||||
|
.collect();
|
||||||
|
};
|
||||||
|
|
||||||
let handler = cx.listener({
|
visible_rooms
|
||||||
move |this, _, window, cx| {
|
.iter()
|
||||||
this.open(room_id, window, cx);
|
.enumerate()
|
||||||
}
|
.map(|(ix, item)| {
|
||||||
});
|
let this = item.read(cx);
|
||||||
|
let room_id = this.id;
|
||||||
|
let member = this.display_member(cx);
|
||||||
|
|
||||||
items.push(
|
let handler = cx.listener({
|
||||||
RoomListItem::new(ix)
|
move |this, _ev, window, cx| {
|
||||||
|
this.open(room_id, window, cx);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
RoomListItem::new(range.start + ix)
|
||||||
.room_id(room_id)
|
.room_id(room_id)
|
||||||
.name(this.display_name(cx))
|
.name(this.display_name(cx))
|
||||||
.avatar(this.display_image(cx))
|
.avatar(this.display_image(cx))
|
||||||
.public_key(member.public_key())
|
.public_key(member.public_key())
|
||||||
.kind(this.kind)
|
.kind(this.kind)
|
||||||
.created_at(this.created_at.to_ago())
|
.created_at(this.created_at.to_ago())
|
||||||
.on_click(handler),
|
.on_click(handler)
|
||||||
)
|
.into_any_element()
|
||||||
}
|
})
|
||||||
|
.collect()
|
||||||
items
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -591,10 +582,8 @@ impl Focusable for Sidebar {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Render for Sidebar {
|
impl Render for Sidebar {
|
||||||
fn render(&mut self, _window: &mut Window, cx: &mut Context<Self>) -> impl IntoElement {
|
fn render(&mut self, window: &mut Window, cx: &mut Context<Self>) -> impl IntoElement {
|
||||||
const EMPTY_HELP: &str = "Start a conversation with someone to get started.";
|
let decorations = window.window_decorations();
|
||||||
const REQUEST_HELP: &str =
|
|
||||||
"New message requests from people you don't know will appear here.";
|
|
||||||
|
|
||||||
let nostr = NostrRegistry::global(cx);
|
let nostr = NostrRegistry::global(cx);
|
||||||
let identity = nostr.read(cx).identity();
|
let identity = nostr.read(cx).identity();
|
||||||
@@ -603,15 +592,9 @@ impl Render for Sidebar {
|
|||||||
let loading = chat.read(cx).loading();
|
let loading = chat.read(cx).loading();
|
||||||
|
|
||||||
// Get rooms from either search results or the chat registry
|
// Get rooms from either search results or the chat registry
|
||||||
let rooms = if let Some(results) = self.search_results.read(cx).as_ref() {
|
let rooms = match self.search_results.read(cx).as_ref() {
|
||||||
results.to_owned()
|
Some(results) => results,
|
||||||
} else {
|
None => chat.read(cx).rooms(cx),
|
||||||
// Filter rooms based on the active filter
|
|
||||||
if self.active_filter.read(cx) == &RoomKind::Ongoing {
|
|
||||||
chat.read(cx).ongoing_rooms(cx)
|
|
||||||
} else {
|
|
||||||
chat.read(cx).request_rooms(cx)
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// Get total rooms count
|
// Get total rooms count
|
||||||
@@ -628,11 +611,18 @@ impl Render for Sidebar {
|
|||||||
.image_cache(self.image_cache.clone())
|
.image_cache(self.image_cache.clone())
|
||||||
.size_full()
|
.size_full()
|
||||||
.relative()
|
.relative()
|
||||||
.gap_3()
|
.gap_2()
|
||||||
.bg(cx.theme().surface_background)
|
.bg(cx.theme().surface_background)
|
||||||
|
.map(|this| match decorations {
|
||||||
|
Decorations::Server => this,
|
||||||
|
Decorations::Client { .. } => this
|
||||||
|
.rounded_tl(CLIENT_SIDE_DECORATION_ROUNDING)
|
||||||
|
.rounded_bl(CLIENT_SIDE_DECORATION_ROUNDING),
|
||||||
|
})
|
||||||
// Titlebar
|
// Titlebar
|
||||||
.child(
|
.child(
|
||||||
h_flex()
|
h_flex()
|
||||||
|
.px_2p5()
|
||||||
.child(
|
.child(
|
||||||
h_flex()
|
h_flex()
|
||||||
.w_full()
|
.w_full()
|
||||||
@@ -643,14 +633,15 @@ impl Render for Sidebar {
|
|||||||
let profile = persons.read(cx).get(&public_key, cx);
|
let profile = persons.read(cx).get(&public_key, cx);
|
||||||
|
|
||||||
this.child(
|
this.child(
|
||||||
Button::new("user")
|
h_flex()
|
||||||
.label(profile.name())
|
.gap_1p5()
|
||||||
.reverse()
|
.text_xs()
|
||||||
.transparent()
|
.text_color(cx.theme().text_muted)
|
||||||
.child(Avatar::new(profile.avatar()).size(rems(1.6))),
|
.child(Avatar::new(profile.avatar()).size(rems(1.25)))
|
||||||
|
.child(profile.name()),
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
.child(div().pr_2p5().child(compose_button())),
|
.child(compose_button()),
|
||||||
)
|
)
|
||||||
.h(TITLEBAR_HEIGHT),
|
.h(TITLEBAR_HEIGHT),
|
||||||
)
|
)
|
||||||
@@ -678,132 +669,39 @@ impl Render for Sidebar {
|
|||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
.when(!loading && total_rooms == 0, |this| {
|
||||||
|
this.child(deferred(
|
||||||
|
v_flex()
|
||||||
|
.py_2()
|
||||||
|
.px_3()
|
||||||
|
.items_center()
|
||||||
|
.justify_center()
|
||||||
|
.text_center()
|
||||||
|
.child(
|
||||||
|
div()
|
||||||
|
.text_sm()
|
||||||
|
.font_semibold()
|
||||||
|
.child(SharedString::from("No conversations")),
|
||||||
|
)
|
||||||
|
.child(div().text_xs().text_color(cx.theme().text_muted).child(
|
||||||
|
SharedString::from("Start a conversation with someone to get started."),
|
||||||
|
)),
|
||||||
|
))
|
||||||
|
})
|
||||||
// Chat Rooms
|
// Chat Rooms
|
||||||
.child(
|
.child(
|
||||||
v_flex()
|
v_flex()
|
||||||
.gap_1()
|
|
||||||
.flex_1()
|
|
||||||
.px_1p5()
|
.px_1p5()
|
||||||
.w_full()
|
.w_full()
|
||||||
|
.flex_1()
|
||||||
|
.gap_1()
|
||||||
.overflow_y_hidden()
|
.overflow_y_hidden()
|
||||||
.child(
|
|
||||||
div()
|
|
||||||
.px_1()
|
|
||||||
.h_flex()
|
|
||||||
.gap_2()
|
|
||||||
.flex_none()
|
|
||||||
.child(
|
|
||||||
Button::new("all")
|
|
||||||
.label("All")
|
|
||||||
.tooltip("All ongoing conversations")
|
|
||||||
.small()
|
|
||||||
.cta()
|
|
||||||
.bold()
|
|
||||||
.secondary()
|
|
||||||
.rounded()
|
|
||||||
.selected(self.filter(&RoomKind::Ongoing, cx))
|
|
||||||
.on_click(cx.listener(|this, _, _, cx| {
|
|
||||||
this.set_filter(RoomKind::Ongoing, cx);
|
|
||||||
})),
|
|
||||||
)
|
|
||||||
.child(
|
|
||||||
Button::new("requests")
|
|
||||||
.label("Requests")
|
|
||||||
.tooltip("Incoming new conversations")
|
|
||||||
.when(self.new_request, |this| {
|
|
||||||
this.child(
|
|
||||||
div().size_1().rounded_full().bg(cx.theme().cursor),
|
|
||||||
)
|
|
||||||
})
|
|
||||||
.small()
|
|
||||||
.cta()
|
|
||||||
.bold()
|
|
||||||
.secondary()
|
|
||||||
.rounded()
|
|
||||||
.selected(!self.filter(&RoomKind::Ongoing, cx))
|
|
||||||
.on_click(cx.listener(|this, _, _, cx| {
|
|
||||||
this.set_filter(RoomKind::default(), cx);
|
|
||||||
})),
|
|
||||||
)
|
|
||||||
.child(
|
|
||||||
h_flex()
|
|
||||||
.flex_1()
|
|
||||||
.w_full()
|
|
||||||
.justify_end()
|
|
||||||
.items_center()
|
|
||||||
.text_xs()
|
|
||||||
.child(
|
|
||||||
Button::new("option")
|
|
||||||
.icon(IconName::Ellipsis)
|
|
||||||
.xsmall()
|
|
||||||
.ghost()
|
|
||||||
.rounded()
|
|
||||||
.popup_menu(move |this, _window, _cx| {
|
|
||||||
this.menu("Reload", Box::new(Reload))
|
|
||||||
.menu("Relay Status", Box::new(RelayStatus))
|
|
||||||
}),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
.when(!loading && total_rooms == 0, |this| {
|
|
||||||
this.map(|this| {
|
|
||||||
if self.filter(&RoomKind::Ongoing, cx) {
|
|
||||||
this.child(deferred(
|
|
||||||
v_flex()
|
|
||||||
.py_2()
|
|
||||||
.px_1p5()
|
|
||||||
.gap_1p5()
|
|
||||||
.items_center()
|
|
||||||
.justify_center()
|
|
||||||
.text_center()
|
|
||||||
.child(
|
|
||||||
div()
|
|
||||||
.text_sm()
|
|
||||||
.font_semibold()
|
|
||||||
.line_height(relative(1.25))
|
|
||||||
.child(SharedString::from("No conversations")),
|
|
||||||
)
|
|
||||||
.child(
|
|
||||||
div()
|
|
||||||
.text_xs()
|
|
||||||
.text_color(cx.theme().text_muted)
|
|
||||||
.line_height(relative(1.25))
|
|
||||||
.child(SharedString::from(EMPTY_HELP)),
|
|
||||||
),
|
|
||||||
))
|
|
||||||
} else {
|
|
||||||
this.child(deferred(
|
|
||||||
v_flex()
|
|
||||||
.py_2()
|
|
||||||
.px_1p5()
|
|
||||||
.gap_1p5()
|
|
||||||
.items_center()
|
|
||||||
.justify_center()
|
|
||||||
.text_center()
|
|
||||||
.child(
|
|
||||||
div()
|
|
||||||
.text_sm()
|
|
||||||
.font_semibold()
|
|
||||||
.line_height(relative(1.25))
|
|
||||||
.child(SharedString::from("No message requests")),
|
|
||||||
)
|
|
||||||
.child(
|
|
||||||
div()
|
|
||||||
.text_xs()
|
|
||||||
.text_color(cx.theme().text_muted)
|
|
||||||
.line_height(relative(1.25))
|
|
||||||
.child(SharedString::from(REQUEST_HELP)),
|
|
||||||
),
|
|
||||||
))
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
.child(
|
.child(
|
||||||
uniform_list(
|
uniform_list(
|
||||||
"rooms",
|
"rooms",
|
||||||
total_rooms,
|
total_rooms,
|
||||||
cx.processor(move |this, range, _window, cx| {
|
cx.processor(|this, range, window, cx| {
|
||||||
this.list_items(&rooms, range, cx)
|
this.render_list_items(range, window, cx)
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
.h_full(),
|
.h_full(),
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
|
use anyhow::Error;
|
||||||
use common::{nip05_verify, shorten_pubkey};
|
use common::{nip05_verify, shorten_pubkey};
|
||||||
use gpui::prelude::FluentBuilder;
|
use gpui::prelude::FluentBuilder;
|
||||||
use gpui::{
|
use gpui::{
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
|
use anyhow::Error;
|
||||||
use common::{nip05_verify, shorten_pubkey, RenderedProfile, RenderedTimestamp, BOOTSTRAP_RELAYS};
|
use common::{nip05_verify, shorten_pubkey, RenderedProfile, RenderedTimestamp, BOOTSTRAP_RELAYS};
|
||||||
use gpui::prelude::FluentBuilder;
|
use gpui::prelude::FluentBuilder;
|
||||||
use gpui::{
|
use gpui::{
|
||||||
|
|||||||
@@ -75,13 +75,7 @@ impl RenderOnce for WindowControl {
|
|||||||
this.child(
|
this.child(
|
||||||
svg()
|
svg()
|
||||||
.external_path(path.into_os_string().into_string().unwrap())
|
.external_path(path.into_os_string().into_string().unwrap())
|
||||||
.map(|this| {
|
.text_color(cx.theme().text)
|
||||||
if cx.theme().is_dark() {
|
|
||||||
this.text_color(gpui::white())
|
|
||||||
} else {
|
|
||||||
this.text_color(gpui::black())
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.size_4(),
|
.size_4(),
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -8,13 +8,10 @@ use crate::scale::{ColorScale, ColorScaleSet, ColorScales};
|
|||||||
pub struct ThemeColors {
|
pub struct ThemeColors {
|
||||||
// Surface colors
|
// Surface colors
|
||||||
pub background: Hsla,
|
pub background: Hsla,
|
||||||
|
pub overlay: Hsla,
|
||||||
pub surface_background: Hsla,
|
pub surface_background: Hsla,
|
||||||
pub elevated_surface_background: Hsla,
|
pub elevated_surface_background: Hsla,
|
||||||
pub panel_background: Hsla,
|
pub panel_background: Hsla,
|
||||||
pub overlay: Hsla,
|
|
||||||
pub title_bar: Hsla,
|
|
||||||
pub title_bar_inactive: Hsla,
|
|
||||||
pub window_border: Hsla,
|
|
||||||
|
|
||||||
// Border colors
|
// Border colors
|
||||||
pub border: Hsla,
|
pub border: Hsla,
|
||||||
@@ -108,9 +105,6 @@ impl ThemeColors {
|
|||||||
elevated_surface_background: neutral().dark().step_3(),
|
elevated_surface_background: neutral().dark().step_3(),
|
||||||
panel_background: neutral().dark().step_1(),
|
panel_background: neutral().dark().step_1(),
|
||||||
overlay: neutral().dark_alpha().step_3(),
|
overlay: neutral().dark_alpha().step_3(),
|
||||||
title_bar: gpui::transparent_black(),
|
|
||||||
title_bar_inactive: neutral().dark().step_1(),
|
|
||||||
window_border: hsl(240.0, 3.7, 28.0),
|
|
||||||
|
|
||||||
border: neutral().dark().step_6(),
|
border: neutral().dark().step_6(),
|
||||||
border_variant: neutral().dark().step_5(),
|
border_variant: neutral().dark().step_5(),
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ pub enum IconName {
|
|||||||
ArrowLeft,
|
ArrowLeft,
|
||||||
ArrowRight,
|
ArrowRight,
|
||||||
Boom,
|
Boom,
|
||||||
|
ChevronDown,
|
||||||
CaretDown,
|
CaretDown,
|
||||||
CaretRight,
|
CaretRight,
|
||||||
CaretUp,
|
CaretUp,
|
||||||
@@ -57,6 +58,7 @@ impl IconName {
|
|||||||
Self::ArrowLeft => "icons/arrow-left.svg",
|
Self::ArrowLeft => "icons/arrow-left.svg",
|
||||||
Self::ArrowRight => "icons/arrow-right.svg",
|
Self::ArrowRight => "icons/arrow-right.svg",
|
||||||
Self::Boom => "icons/boom.svg",
|
Self::Boom => "icons/boom.svg",
|
||||||
|
Self::ChevronDown => "icons/chevron-down.svg",
|
||||||
Self::CaretDown => "icons/caret-down.svg",
|
Self::CaretDown => "icons/caret-down.svg",
|
||||||
Self::CaretRight => "icons/caret-right.svg",
|
Self::CaretRight => "icons/caret-right.svg",
|
||||||
Self::CaretUp => "icons/caret-up.svg",
|
Self::CaretUp => "icons/caret-up.svg",
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ use std::rc::Rc;
|
|||||||
|
|
||||||
use gpui::prelude::FluentBuilder;
|
use gpui::prelude::FluentBuilder;
|
||||||
use gpui::{
|
use gpui::{
|
||||||
canvas, div, point, px, AnyView, App, AppContext, Bounds, Context, CursorStyle, Decorations,
|
canvas, div, point, px, rgba, AnyView, App, AppContext, Bounds, Context, CursorStyle,
|
||||||
Edges, Entity, FocusHandle, HitboxBehavior, Hsla, InteractiveElement, IntoElement, MouseButton,
|
Decorations, Edges, Entity, FocusHandle, HitboxBehavior, Hsla, InteractiveElement, IntoElement,
|
||||||
ParentElement as _, Pixels, Point, Render, ResizeEdge, SharedString, Size, Styled,
|
MouseButton, ParentElement as _, Pixels, Point, Render, ResizeEdge, SharedString, Size, Styled,
|
||||||
WeakFocusHandle, Window,
|
WeakFocusHandle, Window,
|
||||||
};
|
};
|
||||||
use theme::{
|
use theme::{
|
||||||
@@ -324,7 +324,9 @@ impl Render for Root {
|
|||||||
.map(|div| match decorations {
|
.map(|div| match decorations {
|
||||||
Decorations::Server => div,
|
Decorations::Server => div,
|
||||||
Decorations::Client { tiling } => div
|
Decorations::Client { tiling } => div
|
||||||
.border_color(cx.theme().window_border)
|
.when(!cx.theme().platform.is_mac(), |div| {
|
||||||
|
div.border_color(rgba(0x64748b33))
|
||||||
|
})
|
||||||
.when(!(tiling.top || tiling.right), |div| {
|
.when(!(tiling.top || tiling.right), |div| {
|
||||||
div.rounded_tr(CLIENT_SIDE_DECORATION_ROUNDING)
|
div.rounded_tr(CLIENT_SIDE_DECORATION_ROUNDING)
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user