1//! # UI – Zed UI Primitives & Components
2//!
3//! This crate provides a set of UI primitives and components that are used to build all of the elements in Zed's UI.
4//!
5//! ## Work in Progress
6//!
7//! This crate is still a work in progress. The initial primitives and components are built for getting all the UI on the screen,
8//! much of the state and functionality is mocked or hard codeded, and performance has not been a focus.
9//!
10//! Expect some inconsistencies from component to component as we work out the best way to build these components.
11//!
12//! ## Getting Started
13//!
14//! - [ThemeColor](crate::color::ThemeColor) is your one stop shop for all colors in the UI.
15//!
16//! ## Design Philosophy
17//!
18//! Work in Progress!
19//!
20
21#![allow(dead_code, unused_variables)]
22
23mod color;
24mod components;
25mod element_ext;
26mod elements;
27pub mod prelude;
28pub mod settings;
29mod static_data;
30mod theme;
31
32pub use components::*;
33pub use element_ext::*;
34pub use elements::*;
35pub use prelude::*;
36pub use static_data::*;
37
38// This needs to be fully qualified with `crate::` otherwise we get a panic
39// at:
40// thread '<unnamed>' panicked at crates/gpui2/src/platform/mac/platform.rs:66:81:
41// called `Option::unwrap()` on a `None` value
42//
43// AFAICT this is something to do with conflicting names between crates and modules that
44// interfaces with declaring the `ClassDecl`.
45pub use crate::settings::*;
46pub use crate::theme::*;
47
48#[cfg(feature = "stories")]
49mod story;
50#[cfg(feature = "stories")]
51pub use story::*;