Skip to main content

Crate liora_components

Crate liora_components 

Source
Expand description

Liora’s public GPUI component prelude.

liora-components exports the visual and interactive controls used by the native Gallery and Docs applications: form controls, overlays, navigation, data display, charts, code blocks/editors, virtualized data views, and small utility widgets.

§Application setup

A GPUI app should initialize Liora once during application startup:

use gpui::App;
use liora_components::init_liora;

fn setup(cx: &mut App) {
    init_liora(cx);
}

The high-level liora_components::init_liora(cx) entry point initializes Liora core/theme state, global component services, and the app-level key bindings needed by inputs, text/code selection, overlays, Preview, Tour, and picker popups. Use liora_components::init_liora_with_mode(...) for an explicit Light or Dark startup mode.

§Stateful controls

Controls with focus, selection, open state, or text value should normally be stored as gpui::Entity<T> fields in a parent view. This preserves state across GPUI renders. Gallery and Docs are the maintained examples for this pattern.

§Architecture boundary

Liora components render native GPUI element trees. This crate does not require Tauri, WebView, HTML/CSS, DOM, or a browser runtime.

Re-exports§

pub use affix::*;
pub use alert::*;
pub use anchor::*;
pub use area_chart::*;
pub use autocomplete::*;
pub use avatar::*;
pub use backtop::*;
pub use badge::*;
pub use bar_chart::*;
pub use breadcrumb::*;
pub use button::*;
pub use button_group::*;
pub use calendar::*;
pub use card::*;
pub use carousel::*;
pub use cascader::*;
pub use chart::*;
pub use chart_scale::*;
pub use chart_shape::*;
pub use checkbox::*;
pub use checkbox_group::*;
pub use code_block::*;
pub use code_editor::*;
pub use col::*;
pub use collapse::*;
pub use color_picker::*;
pub use container::*;
pub use date_picker::*;
pub use date_time_picker::*;
pub use descriptions::*;
pub use dialog::*;
pub use divider::*;
pub use draggable::*;
pub use drawer::*;
pub use dropdown::*;
pub use empty::*;
pub use flex::*;
pub use form::*;
pub use heat_bar::*;
pub use horizontal_list::*;
pub use image::*;
pub use input::*;
pub use input_number::*;
pub use input_tag::*;
pub use kbd::*;
pub use label::*;
pub use line_chart::*;
pub use link::*;
pub use loading::*;
pub use mention::*;
pub use menu::*;
pub use message::*;
pub use message_box::*;
pub use motion::*;
pub use notification::*;
pub use operation::*;
pub use otp_input::*;
pub use page_header::*;
pub use pagination::*;
pub use paragraph::*;
pub use pie_chart::*;
pub use popconfirm::*;
pub use popover::*;
pub use preview::*;
pub use progress::*;
pub use qr_code::*;
pub use radio::*;
pub use radio_group::*;
pub use rate::*;
pub use result::*;
pub use row::*;
pub use scrollbar::*;
pub use segment_ratio_bar::*;
pub use segmented::*;
pub use select::*;
pub use selectable_text::*;
pub use signal_meter::*;
pub use skeleton::*;
pub use slider::*;
pub use space::*;
pub use sparkline::*;
pub use spinner::*;
pub use splitter::*;
pub use statistic::*;
pub use steps::*;
pub use switch::*;
pub use table::*;
pub use tabs::*;
pub use tag::*;
pub use text::*;
pub use textarea::*;
pub use time_picker::*;
pub use timeline::*;
pub use timer::*;
pub use title::*;
pub use tooltip::*;
pub use tour::*;
pub use transfer::*;
pub use tree::*;
pub use tree_select::*;
pub use upload::*;
pub use virtualized_list::*;
pub use virtualized_table::*;
pub use virtualized_tree::*;
pub use watermark::*;
pub use window_frame::*;

Modules§

affix
Affix module.
alert
Alert module.
anchor
Anchor module.
area_chart
Area Chart module.
autocomplete
Autocomplete module.
avatar
Avatar module.
backtop
Backtop module.
badge
Badge module.
bar_chart
Bar Chart module.
breadcrumb
Breadcrumb module.
button
Button module.
button_group
Button Group module.
calendar
Calendar module.
card
Card module.
carousel
Carousel module.
cascader
Cascader module.
chart
Chart module.
chart_scale
Chart Scale module.
chart_shape
Chart Shape module.
checkbox
Checkbox module.
checkbox_group
Checkbox Group module.
code_block
Code Block module.
code_editor
Code Editor module.
col
Col module.
collapse
Collapse module.
color_picker
Color Picker module.
container
Container module.
date_picker
Date Picker module.
date_time_picker
Date Time Picker module.
descriptions
Descriptions module.
dialog
Dialog module.
divider
Divider module.
draggable
Draggable module.
drawer
Drawer module.
dropdown
Dropdown module.
empty
Empty module.
flex
Flex module.
form
Form module.
heat_bar
Heat Bar module.
horizontal_list
Horizontal List module.
image
Image module.
input
Input module.
input_number
Input Number module.
input_tag
Input Tag module.
kbd
Kbd module.
label
Label module.
layout_helpers
Layout Helpers module.
line_chart
Line Chart module.
link
Link module.
loading
Loading module.
mention
Mention module.
menu
Menu module.
message
Message module.
message_box
Message Box module.
motion
Motion module.
notification
Notification module.
operation
Operation module.
otp_input
Otp Input module.
page_header
Page Header module.
pagination
Pagination module.
paragraph
Paragraph module.
pie_chart
Pie Chart module.
popconfirm
Popconfirm module.
popover
Popover module.
preview
Preview module.
progress
Progress module.
qr_code
Qr Code module.
radio
Radio module.
radio_group
Radio Group module.
rate
Rate module.
result
Result module.
row
Row module.
scrollbar
Scrollbar module.
segment_ratio_bar
Segment Ratio Bar module.
segmented
Segmented module.
select
Select module.
selectable_text
Selectable Text module.
signal_meter
Signal Meter module.
skeleton
Skeleton module.
slider
Slider module.
space
Space module.
sparkline
Sparkline module.
spinner
Spinner module.
splitter
Splitter module.
statistic
Statistic module.
steps
Steps module.
switch
Switch module.
table
Table module.
tabs
Tabs module.
tag
Tag module.
text
Text module.
textarea
Textarea module.
time_picker
Time Picker module.
timeline
Timeline module.
timer
Timer module.
title
Title module.
tooltip
Tooltip module.
tour
Tour module.
transfer
Transfer module.
tree
Tree module.
tree_select
Tree Select module.
upload
Upload module.
virtualized_list
Virtualized List module.
virtualized_table
Virtualized Table module.
virtualized_tree
Virtualized Tree module.
watermark
Watermark module.
window_frame
Window Frame module.

Macros§

toast_error
Generates the item helper used by Liora applications and examples.
toast_info
Generates the item helper used by Liora applications and examples.
toast_success
Generates the item helper used by Liora applications and examples.
toast_warning
Generates the item helper used by Liora applications and examples.

Enums§

ButtonSize
Options that control button size behavior.
ButtonVariant
Options that control button variant behavior.
ThemeMode
Options that control theme mode behavior.

Functions§

init_liora
Initialize Liora’s recommended application runtime in one call.
init_liora_with_mode
Initialize Liora’s recommended application runtime with an explicit theme mode.