Files
Ely-GPUI-Components/src/forms/mod.rs
T
ZacharyZhang-NYandClaude Opus 5.5 f316ab56ba Calendar · Months: a month view, a year view, event chips and cards
CalendarMonthView lays a month in week rows. An event across days lies
over them as a bar in the first free lane, cut at the week's edge;
the rest sit by the hour as chips, and a crowded day keeps the rest
behind "N more". Arrows move a day, Page keys turn the month, and
Enter or a double press opens the day; the cursor holds through the
owner's echo of a turn. Days sit at sevenths of their row, as the bars
do, so text never widens a column.

YearView shows twelve small months; a day with something on it wears a
dot in its first event's hue. EventChip is an event in a line and
EventCard a block with its hours and place. MiniCalendar points to
forms::Calendar. Palette::hue is now the one home for a chart color by
index, for mail labels and events alike.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 02:49:37 -04:00

119 lines
3.3 KiB
Rust

mod avatar;
mod card;
mod cascade;
mod catalogs;
mod check;
mod checked;
mod chips;
mod code;
mod color;
mod combobox;
mod date;
mod expression;
mod files;
mod glyphs;
mod group;
mod hotkey;
mod inline;
mod input;
mod knob;
mod listbox;
mod masked;
mod mention;
mod multi;
mod number;
mod options;
mod pairs;
mod path;
mod pattern;
mod picks;
mod pin;
mod radio;
mod rating;
mod search;
mod select;
mod signature;
mod slider;
mod stepper;
mod structure;
mod switch;
mod tags;
#[cfg(all(test, feature = "test-support"))]
mod tests;
mod text;
mod transfer;
mod unit;
mod upload;
pub use avatar::AvatarUpload;
pub use card::{CheckboxCard, RadioCard};
pub use cascade::{Cascade, Cascader};
pub use catalogs::FontPicker;
pub(crate) use catalogs::flag;
pub(crate) use check::check_mark;
pub use check::{CheckState, Checkbox, CheckboxGroup};
pub use checked::{EmailInput, UrlInput, is_email, is_url};
pub use chips::ChoiceChips;
pub use code::{CodeInput, JsonInput, code_highlights, json_highlights};
pub(crate) use code::{Kind, lex};
pub use color::{ColorPalette, ColorPicker, ColorSwatch, EyeDropper, GradientEditor, GradientStop};
pub use combobox::Combobox;
pub use date::{
Calendar, CronEditor, CronRule, DatePicker, DateRangePicker, DateTimePicker, DurationPicker,
MonthPicker, QuarterPicker, RelativeDatePicker, RelativeRange, TimePicker, TimezoneSelect,
WeekPicker, YearPicker,
};
pub(crate) use date::{Face, dropdown, month_grid, picker_field, week_start};
pub use expression::{ExpressionInput, evaluate, expression_highlights};
pub use files::{DropZone, FileInput, PICTURES};
pub(crate) use files::{browse, dropped};
pub(crate) use glyphs::emoji_found;
pub use glyphs::{EmojiPicker, IconPicker};
pub use group::{InputAddon, InputGroup};
pub use hotkey::HotkeyInput;
pub(crate) use inline::Editing;
pub use inline::InlineEdit;
pub use input::{Input, PasswordInput};
pub use knob::Knob;
pub use listbox::ListBox;
pub use masked::{COUNTRIES, MaskedInput, PhoneInput};
pub use mention::{MentionInput, mention_highlights};
pub(crate) use mention::{
Suggestions, active_trigger, handles_matching, one_word, replace_trigger,
};
pub use multi::MultiSelect;
pub use number::{NumberInput, ScrubInput};
pub use options::Choice;
pub(crate) use options::{
OnFlag, OnNumber, OnValue, OnValues, Pick, Run, float, float_height, marked_row, reveal,
revealer, step, surface,
};
pub use pairs::{FieldArray, KeyValueInput, ListInput};
pub use path::PathInput;
pub(crate) use path::choose;
pub use pattern::{RegexInput, regex_highlights};
pub(crate) use picks::{Grid, finder, grid, rows};
pub use pin::PinInput;
pub use radio::{Radio, RadioGroup};
pub use rating::Rating;
pub use search::SearchInput;
pub use select::Select;
pub(crate) use select::{Listing, field_button, field_text, listing};
pub(crate) use signature::{Drawing, ink, pen};
pub use signature::{SignaturePad, Stroke};
pub(crate) use slider::keyed;
pub use slider::{RangeSlider, Slider};
pub use stepper::Stepper;
pub use structure::{
DirtyIndicator, Form, FormError, FormField, FormLabel, FormSection, InlineForm,
};
pub use switch::Switch;
pub use tags::TagInput;
pub(crate) use text::{
Backspace, Down, Enter, History, Redo, Submit, Undo, Up, bind_keys, from_utf16, to_utf16,
};
pub use text::{Highlight, InputEvent, TextInput};
pub use transfer::TransferList;
pub use unit::UnitInput;
pub use upload::{Upload, UploadList, UploadState};