1#![forbid(unsafe_code)]
26#![warn(missing_docs)]
27
28mod agent_bar;
29mod attachments;
30mod cancel;
31mod chat_view;
32mod composer;
33pub mod editor;
34mod icon;
35mod markdown;
36mod model;
37#[cfg(feature = "ragrig")]
38mod rag;
39#[cfg(feature = "grobid")]
40mod references;
41#[cfg(feature = "grobid")]
42mod services;
43mod session_picker;
44mod setting_fields;
45mod settings;
46mod side_panel;
47
48pub mod prelude;
49
50pub use agent_bar::{AgentBar, AgentBarEvent};
51pub use attachments::{AttachmentEvent, AttachmentRows};
52pub use cancel::CancelFlag;
53pub use chat_view::{ChatIdentity, ChatView, ChatViewEvent, EmptyState};
54pub use composer::{Composer, ComposerEvent};
55pub use editor::*;
56pub use icon::ChatIcon;
57pub use markdown::stabilize_markdown;
58pub use model::*;
59#[cfg(feature = "ragrig")]
60pub use rag::*;
61#[cfg(feature = "grobid")]
62pub use references::{
63 CitationAttachment, ReferenceAction, ReferenceCopy, ReferenceEntry, ReferenceOptions,
64 ReferenceProgress, ReferenceReport, ReferenceRow, ReferenceSelection, ReferenceSelectionBar,
65 ReferenceStage, keys_text, paths_text,
66};
67#[cfg(feature = "grobid")]
68pub use services::{
69 GROBID_DISCOVERY_PORTS, GrobidContainerStatus, GrobidDockerStatus, GrobidProbe,
70 GrobidProbeStatus, GrobidService, GrobidServiceEvent, MANAGED_GROBID_CONTAINER,
71 MANAGED_GROBID_PORT, MANAGED_GROBID_URL, external_services_page, normalize_grobid_url,
72};
73pub use session_picker::{SessionPicker, SessionPickerEvent};
74pub use setting_fields::{
75 Control, SettingRow, control, dirty_color, dirty_header, dropdown_control, number_control,
76 path_control, path_setting, switch_control, text_control, token_control, token_slider,
77};
78pub use settings::{chat_settings, chat_settings_page};
79pub use side_panel::SidePanel;
80
81use gpui_kit::App;
82
83pub fn init(cx: &mut App) {
96 gpui_kit::init(cx);
97}