Wrapping up bedrock implementation

This commit is contained in:
Ryan Ward
2026-05-13 10:04:59 -05:00
parent ed53aa99eb
commit cee61e2af0
1144 changed files with 2954 additions and 2660 deletions
+2 -2
View File
@@ -1,7 +1,7 @@
use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult};
use galaxyui::{AppContext, Entity, ModelContext, ModelHandle};
use std::collections::HashMap;
use std::sync::Arc;
use galaxyui::{AppContext, Entity, ModelContext, ModelHandle};
use crate::search::action::search_item::MatchedBinding;
use crate::search::command_palette::mixer::CommandPaletteItemAction;
@@ -194,9 +194,9 @@ mod full_text_searcher {
};
use crate::util::bindings::CommandBinding;
use fuzzy_match::FuzzyMatchResult;
use galaxyui::keymap::{BindingId, DescriptionContext};
use std::collections::HashMap;
use std::sync::Arc;
use galaxyui::keymap::{BindingId, DescriptionContext};
define_search_schema!(
schema_name: ACTION_SEARCH_SCHEMA,
+3 -3
View File
@@ -11,9 +11,6 @@ use crate::search::result_renderer::ItemHighlightState;
use crate::ui_components::icons::Icon;
use crate::util::bindings::{BindingGroup, CommandBinding};
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use pathfinder_color::ColorU;
use std::sync::Arc;
use galaxyui::elements::{
Align, ConstrainedBox, Container, Flex, Highlight, ParentElement, Shrinkable, Text,
};
@@ -21,6 +18,9 @@ use galaxyui::fonts::{Properties, Weight};
use galaxyui::keymap::{DescriptionContext, Keystroke};
use galaxyui::ui_components::components::UiComponent;
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
use pathfinder_color::ColorU;
use std::sync::Arc;
/// A matched binding from a search query.
#[derive(Debug)]
@@ -7,8 +7,8 @@ use crate::terminal::model::block::Block;
use crate::terminal::TerminalView;
use crate::workspace::ActiveSession;
use fuzzy_match::FuzzyMatchResult;
use itertools::Itertools;
use galaxyui::{AppContext, Entity, SingletonEntity};
use itertools::Itertools;
const MAX_RESULTS: usize = 20;
const ZERO_STATE_BASE_SCORE: i64 = 1000;
@@ -6,13 +6,13 @@ use crate::search::result_renderer::ItemHighlightState;
use crate::terminal::model::block::BlockId;
use crate::util::truncation::truncate_from_end;
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use galaxyui::elements::Highlight;
use galaxyui::fonts::{Properties, Weight};
use galaxyui::{
elements::{ConstrainedBox, Container, CrossAxisAlignment, Flex, Icon, ParentElement, Text},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use chrono::{DateTime, Local};
use galaxy_core::command::ExitCode;
@@ -13,6 +13,9 @@ use crate::search::mixer::{
};
use ai::index::Symbol;
use fuzzy_match::FuzzyMatchResult;
use galaxyui::AppContext;
#[cfg(not(target_family = "wasm"))]
use galaxyui::ModelSpawner;
#[cfg(not(target_family = "wasm"))]
use instant::Instant;
#[cfg(not(target_family = "wasm"))]
@@ -23,20 +26,17 @@ use std::collections::HashSet;
use std::path::PathBuf;
#[cfg(not(target_family = "wasm"))]
use std::time::Duration;
use galaxyui::AppContext;
#[cfg(not(target_family = "wasm"))]
use galaxyui::ModelSpawner;
#[cfg(not(target_family = "wasm"))]
use crate::ai::outline::{OutlineStatus, RepoOutlines, RepoOutlinesEvent};
#[cfg(not(target_family = "wasm"))]
use crate::workspace::ActiveSession;
#[cfg(not(target_family = "wasm"))]
use galaxyui::SingletonEntity;
#[cfg(not(target_family = "wasm"))]
use repo_metadata::repositories::DetectedRepositories;
#[cfg(not(target_family = "wasm"))]
use std::path::Path;
#[cfg(not(target_family = "wasm"))]
use galaxyui::SingletonEntity;
const MAX_RESULTS: usize = 200;
+2 -2
View File
@@ -6,11 +6,11 @@ pub mod search_item;
use crate::ai::outline::{OutlineStatus, RepoOutlines};
#[cfg(not(target_family = "wasm"))]
use crate::workspace::ActiveSession;
#[cfg(not(target_family = "wasm"))]
use std::path::Path;
use galaxyui::AppContext;
#[cfg(not(target_family = "wasm"))]
use galaxyui::SingletonEntity;
#[cfg(not(target_family = "wasm"))]
use std::path::Path;
/// Checks if the code symbols (outline) are currently being indexed for the active directory.
/// Returns true if the outline is in a pending state, false otherwise.
@@ -4,12 +4,12 @@ use crate::search::ai_context_menu::{mixer::AIContextMenuSearchableAction, safe_
use crate::search::item::{IconLocation, SearchItem};
use crate::search::result_renderer::ItemHighlightState;
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use galaxyui::elements::{
ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, ParentElement, Text,
};
use galaxyui::fonts::{Properties, Weight};
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
// Import CodeSymbol from the data_source module
use super::data_source::CodeSymbol;
@@ -4,8 +4,8 @@ use crate::search::data_source::{Query, QueryResult};
use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource};
use crate::terminal::History;
use fuzzy_match::FuzzyMatchResult;
use std::collections::HashSet;
use galaxyui::{AppContext, SingletonEntity};
use std::collections::HashSet;
const MAX_RESULTS: usize = 50;
@@ -3,11 +3,11 @@ use crate::search::ai_context_menu::mixer::AIContextMenuSearchableAction;
use crate::search::item::SearchItem;
use crate::search::result_renderer::ItemHighlightState;
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{ConstrainedBox, Container, Icon, Text},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
#[derive(Clone, Debug)]
pub struct CommandSearchItem {
@@ -6,8 +6,8 @@ use crate::search::ai_context_menu::mixer::AIContextMenuSearchableAction;
use crate::search::data_source::{Query, QueryResult};
use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource};
use fuzzy_match::FuzzyMatchResult;
use std::collections::HashSet;
use galaxyui::{AppContext, Entity, SingletonEntity};
use std::collections::HashSet;
const MAX_RESULTS: usize = 50;
/// Minimum fuzzy match score to include a conversation in filtered results.
@@ -5,11 +5,11 @@ use crate::search::ai_context_menu::styles;
use crate::search::item::SearchItem;
use crate::search::result_renderer::ItemHighlightState;
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use galaxyui::elements::{
ConstrainedBox, Container, CrossAxisAlignment, Flex, Icon, ParentElement, Text,
};
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
#[derive(Debug, Clone)]
pub struct DiffSetSearchItem {
@@ -10,13 +10,13 @@ use crate::search::mixer::{BoxFuture, DataSourceRunErrorWrapper};
use crate::workspace::ActiveSession;
use futures_lite::future::yield_now;
use fuzzy_match::FuzzyMatchResult;
use galaxyui::{AppContext, SingletonEntity};
use itertools::Itertools;
use repo_metadata::repositories::DetectedRepositories;
use std::collections::HashMap;
use std::collections::HashSet;
use std::path::{Path, PathBuf};
use std::sync::Arc;
use galaxyui::{AppContext, SingletonEntity};
const MAX_RESULTS: usize = 200;
@@ -9,6 +9,11 @@ use crate::search::{
mixer::AsyncDataSource,
};
use crate::{terminal::model::session::Session, workspace::ActiveSession};
use galaxyui::platform::WindowStyle;
use galaxyui::r#async::block_on;
use galaxyui::windowing::WindowManager;
use galaxyui::SingletonEntity;
use galaxyui::{elements::Empty, App, AppContext, Element, Entity, TypedActionView, View};
use repo_metadata::repositories::DetectedRepositories;
use repo_metadata::RepoMetadataModel;
use std::collections::HashMap;
@@ -17,11 +22,6 @@ use std::fs;
use std::path::PathBuf;
use std::sync::Arc;
use tempfile::tempdir;
use galaxyui::platform::WindowStyle;
use galaxyui::r#async::block_on;
use galaxyui::windowing::WindowManager;
use galaxyui::SingletonEntity;
use galaxyui::{elements::Empty, App, AppContext, Element, Entity, TypedActionView, View};
struct TestView;
impl Entity for TestView {
@@ -3,8 +3,8 @@ mod tests {
use std::sync::Arc;
use chrono::{Duration, Utc};
use settings::manager::SettingsManager;
use galaxyui::{App, SingletonEntity};
use settings::manager::SettingsManager;
use crate::auth::AuthStateProvider;
use crate::cloud_object::model::persistence::CloudModel;
@@ -1,8 +1,8 @@
use std::sync::Arc;
use chrono::{Duration, Utc};
use settings::manager::SettingsManager;
use galaxyui::{App, SingletonEntity};
use settings::manager::SettingsManager;
use crate::ai::facts::{AIFact, AIMemory, CloudAIFactModel};
use crate::auth::AuthStateProvider;
@@ -4,8 +4,8 @@ use crate::search::ai_context_menu::mixer::AIContextMenuSearchableAction;
use crate::search::data_source::{Query, QueryResult};
use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource};
use fuzzy_match::FuzzyMatchResult;
use std::path::PathBuf;
use galaxyui::{AppContext, Entity, SingletonEntity};
use std::path::PathBuf;
#[cfg(not(target_family = "wasm"))]
use crate::workspace::ActiveSession;
+5 -5
View File
@@ -34,11 +34,6 @@ use crate::search::result_renderer::{QueryResultRenderer, QueryResultRendererSty
use crate::search::search_bar::{SearchBar, SearchBarEvent, SearchBarState, SearchResultOrdering};
use crate::settings::InputSettings;
use async_channel::Sender;
use itertools::Itertools;
use settings::Setting as _;
use std::collections::HashSet;
use std::ops::Range;
use std::time::Duration;
use galaxy_core::features::FeatureFlag;
use galaxyui::elements::ConstrainedBox;
use galaxyui::elements::CrossAxisAlignment;
@@ -57,6 +52,11 @@ use galaxyui::elements::{
OffsetType, ParentElement, PositionedElementOffsetBounds, PositioningAxis, Radius,
SavePosition, Shrinkable, Stack, Text, XAxisAnchor, YAxisAnchor,
};
use itertools::Itertools;
use settings::Setting as _;
use std::collections::HashSet;
use std::ops::Range;
use std::time::Duration;
use galaxyui::platform::Cursor;
use galaxyui::windowing::WindowManager;
@@ -12,9 +12,9 @@ use crate::search::data_source::{DataSourceSearchError, Query, QueryResult};
use crate::search::mixer::DataSourceRunErrorWrapper;
use crate::search::SyncDataSource;
use crate::workspace::Workspace;
use galaxyui::{AppContext, Entity};
use itertools::Itertools;
use std::collections::HashMap;
use galaxyui::{AppContext, Entity};
/// Sections for grouping conversations in the command palette.
#[derive(Debug, PartialEq, Eq, Hash)]
@@ -10,9 +10,6 @@ use crate::search::result_renderer::ItemHighlightState;
use crate::search::SearchItem;
use crate::ui_components::buttons::icon_button;
use crate::util::time_format::format_approx_duration_from_now;
use ordered_float::OrderedFloat;
use pathfinder_color::ColorU;
use pathfinder_geometry::vector::vec2f;
use galaxy_core::ui::color::{blend::Blend, coloru_with_opacity};
use galaxy_core::ui::icons::Icon;
use galaxy_core::ui::theme::color::internal_colors;
@@ -25,6 +22,9 @@ use galaxyui::fonts::{Properties, Weight};
use galaxyui::ui_components::button::ButtonTooltipPosition;
use galaxyui::ui_components::components::{UiComponent, UiComponentStyles};
use galaxyui::{AppContext, Element, Gradient, SingletonEntity};
use ordered_float::OrderedFloat;
use pathfinder_color::ColorU;
use pathfinder_geometry::vector::vec2f;
/// Information about which action to take once the conversation item is accepted.
#[derive(Debug)]
@@ -1,8 +1,8 @@
use std::sync::Arc;
use chrono::Utc;
use settings::manager::SettingsManager;
use galaxyui::{App, SingletonEntity};
use settings::manager::SettingsManager;
use super::*;
use crate::auth::AuthStateProvider;
@@ -8,6 +8,8 @@ use crate::search::files::search_item::FileSearchResult;
use crate::search::mixer::{AsyncDataSource, BoxFuture, DataSourceRunErrorWrapper};
use futures_lite::FutureExt;
use fuzzy_match::FuzzyMatchResult;
use galaxy_util::path::CleanPathResult;
use galaxyui::{AppContext, Entity, SingletonEntity};
use instant::Instant;
use itertools::Itertools;
use std::collections::HashSet;
@@ -15,8 +17,6 @@ use std::collections::HashSet;
use std::path::Path;
use std::path::PathBuf;
use std::sync::Arc;
use galaxy_util::path::CleanPathResult;
use galaxyui::{AppContext, Entity, SingletonEntity};
const MAX_RESULTS: usize = 100;
@@ -1,8 +1,8 @@
use fuzzy_match::FuzzyMatchResult;
use galaxy_util::path::LineAndColumnArg;
use ordered_float::OrderedFloat;
use std::fmt::Debug;
use std::path::PathBuf;
use galaxy_util::path::LineAndColumnArg;
use crate::appearance::Appearance;
use crate::search::command_palette::mixer::CommandPaletteItemAction;
@@ -4,13 +4,13 @@ use crate::drive::DriveObjectType;
use crate::search::FilterChipRenderer as CommonFilterChipRenderer;
use crate::search::QueryFilter;
use crate::util::color::{ContrastingColor, MinimumAllowedContrast};
use pathfinder_color::ColorU;
use galaxyui::elements::{
ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, Icon,
MouseStateHandle, ParentElement, Radius, Text,
};
use galaxyui::platform::Cursor;
use galaxyui::{Element, EventContext};
use pathfinder_color::ColorU;
/// Trait to render filter chips for the command palette.
pub trait FilterChipRenderer: crate::search::FilterChipRenderer {
@@ -5,9 +5,9 @@ use crate::search::data_source::{DataSourceSearchError, Query, QueryResult};
use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource};
use crate::user_config::{WarpConfig, WarpConfigUpdateEvent};
use fuzzy_match::match_indices_case_insensitive;
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
use std::collections::HashMap;
use std::sync::Arc;
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
/// Datasource that searches against `LaunchConfig`s.
pub struct DataSource {
@@ -124,10 +124,10 @@ mod full_text_searcher {
use crate::search::searcher::{AsyncSearcher, DEFAULT_MEMORY_BUDGET, SCORE_CONVERSION_FACTOR};
use crate::user_config::WarpConfig;
use fuzzy_match::FuzzyMatchResult;
use std::collections::HashMap;
use std::sync::Arc;
use galaxyui::r#async::executor::Background;
use galaxyui::{AppContext, SingletonEntity};
use std::collections::HashMap;
use std::sync::Arc;
// The name of the launch configs are duplicated to ensure that the searcher
// hashes the name to uniquely identify the launch config.
@@ -6,9 +6,9 @@ use crate::search::command_palette::mixer::CommandPaletteItemAction;
use crate::search::command_palette::render_util::render_search_item_icon;
use crate::search::result_renderer::ItemHighlightState;
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
use std::sync::Arc;
use galaxyui::{AppContext, Element, SingletonEntity};
/// SearchItem for a matching [`LaunchConfig`].
#[derive(Debug)]
+2 -2
View File
@@ -6,11 +6,11 @@ use crate::search::mixer::SearchMixer;
use crate::server::ids::SyncId;
use crate::util::bindings::CommandBinding;
use crate::workspace::PaneViewLocator;
use std::sync::Arc;
use strum_macros::IntoStaticStr;
use galaxy_util::path::LineAndColumnArg;
use galaxyui::keymap::BindingId;
use galaxyui::{EntityId, WindowId};
use std::sync::Arc;
use strum_macros::IntoStaticStr;
pub type CommandPaletteMixer = SearchMixer<CommandPaletteItemAction>;
@@ -16,7 +16,6 @@ use crate::terminal::model::blockgrid::BlockGrid;
use crate::terminal::model::grid::Dimensions;
use crate::terminal::safe_mode_settings::get_secret_obfuscation_mode;
use crate::terminal::SizeInfo;
use pathfinder_geometry::vector::vec2f;
use galaxyui::elements::{
Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Highlight,
ParentElement, Radius, Shrinkable, Wrap,
@@ -25,6 +24,7 @@ use galaxyui::fonts::{Properties, Weight};
use galaxyui::ui_components::components::{UiComponent, UiComponentStyles};
use galaxyui::units::IntoPixels;
use galaxyui::{AppContext, Element, SingletonEntity};
use pathfinder_geometry::vector::vec2f;
/// Renders a navigation session.
pub fn render_navigation_session(
@@ -6,9 +6,9 @@ use crate::search::data_source::QueryResult;
use crate::search::SyncDataSource;
use crate::session_management::{CommandContext, SessionNavigationData, SessionSource};
use fuzzy_match::match_indices_case_insensitive;
use galaxyui::{AppContext, ModelHandle};
use itertools::Itertools;
use std::ops::Range;
use galaxyui::{AppContext, ModelHandle};
/// A session that was fuzzy matched against a search term.
pub struct MatchedSession {
@@ -252,9 +252,9 @@ mod full_text_searcher {
use crate::search::data_source::QueryResult;
use crate::search::searcher::{DEFAULT_MEMORY_BUDGET, SCORE_CONVERSION_FACTOR};
use crate::session_management::{SessionNavigationData, SessionSource};
use galaxyui::{AppContext, ModelHandle};
use itertools::Itertools;
use std::collections::HashMap;
use galaxyui::{AppContext, ModelHandle};
define_search_schema!(
schema_name: SESSION_SEARCH_SCHEMA,
@@ -8,9 +8,9 @@ use crate::search::item::IconLocation;
use crate::search::result_renderer::ItemHighlightState;
use crate::session_management::SessionNavigationData;
use crate::ui_components::icons::Icon;
use ordered_float::OrderedFloat;
use galaxyui::elements::Container;
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
/// Search item to render a session within the command palette.
pub struct SearchItem {
@@ -10,10 +10,10 @@ use crate::search::{
};
use crate::terminal::available_shells::AvailableShells;
use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult};
use std::collections::HashMap;
use std::sync::Arc;
use galaxy_core::features::FeatureFlag;
use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity};
use std::collections::HashMap;
use std::sync::Arc;
/// Controls which kinds of new sessions the data source should surface.
#[derive(Copy, Clone, Debug)]
@@ -312,9 +312,9 @@ mod full_text_searcher {
AsyncSearcher, DEFAULT_MEMORY_BUDGET, MIN_MEMORY_BUDGET, SCORE_CONVERSION_FACTOR,
};
use fuzzy_match::FuzzyMatchResult;
use galaxyui::r#async::executor::Background;
use std::collections::HashMap;
use std::sync::Arc;
use galaxyui::r#async::executor::Background;
define_search_schema!(
schema_name: NEW_SESSION_SEARCH_SCHEMA,
@@ -2,9 +2,9 @@ use crate::server::telemetry::AddTabWithShellSource;
use crate::terminal::available_shells::AvailableShell;
use crate::terminal::view::TerminalAction;
use crate::WorkspaceAction;
use galaxyui::Action;
use std::borrow::Cow;
use std::fmt;
use galaxyui::Action;
#[derive(Clone, Debug, PartialEq, Eq, Hash)]
pub struct NewSessionOptionId(pub(crate) String);
@@ -8,9 +8,9 @@ use fuzzy_match::FuzzyMatchResult;
use crate::search::command_palette::mixer::CommandPaletteItemAction;
use crate::search::result_renderer::ItemHighlightState;
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
use std::sync::Arc;
use galaxyui::{AppContext, Element, SingletonEntity};
#[derive(Debug)]
pub struct SearchItem {
@@ -3,10 +3,10 @@ use crate::search::result_renderer::ItemHighlightState;
use crate::themes::theme::Blend;
use crate::ui_components::icons::Icon;
use crate::util::color::{ContrastingColor, MinimumAllowedContrast};
use pathfinder_color::ColorU;
use galaxy_core::ui::theme::Fill;
use galaxyui::elements::{Align, ConstrainedBox, Container, Empty};
use galaxyui::Element;
use pathfinder_color::ColorU;
/// Helper function to render an icon for any search item within the command palette with consistent
/// styling.
@@ -1,7 +1,7 @@
use ai::workspace::WorkspaceMetadata;
use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult};
use itertools::Itertools;
use galaxyui::{AppContext, Entity, SingletonEntity};
use itertools::Itertools;
use super::RepoSearchItem;
use crate::ai::persisted_workspace::PersistedWorkspace;
@@ -1,13 +1,13 @@
use ai::workspace::WorkspaceMetadata;
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use std::path::Path;
use galaxy_core::ui::theme::Fill;
use galaxyui::{
elements::{Align, ConstrainedBox, Flex, Highlight, ParentElement, Shrinkable, Text},
fonts::{Properties, Weight},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use std::path::Path;
use crate::appearance::Appearance;
use crate::search::action::search_item::styles;
@@ -1,6 +1,6 @@
use super::*;
use itertools::Itertools;
use galaxyui::keymap::BindingId;
use itertools::Itertools;
#[test]
fn test_enqueue_new_item() {
@@ -1,11 +1,11 @@
use crate::search::item::SearchItem;
use crate::search::result_renderer::ItemHighlightState;
use crate::{appearance::Appearance, search::command_palette::mixer::CommandPaletteItemAction};
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{Empty, Text},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
/// A simple separator item that displays a title to visually separate sections in search results.
#[derive(Debug)]
+2 -2
View File
@@ -15,17 +15,17 @@ use crate::terminal::keys_settings::KeysSettings;
use crate::themes::theme::WarpTheme;
use crate::view_components::DismissibleToast;
use crate::ToastStack;
use lazy_static::lazy_static;
use galaxy_core::send_telemetry_from_app_ctx;
use galaxy_util::path::LineAndColumnArg;
use lazy_static::lazy_static;
use crate::search::action::search_item::MatchedBinding;
use itertools::Itertools;
use galaxyui::elements::DispatchEventResult;
use galaxyui::elements::EventHandler;
use galaxyui::event::KeyState;
use galaxyui::platform::keyboard::KeyCode;
use galaxyui::FocusContext;
use itertools::Itertools;
use crate::search::command_palette::zero_state::{self, Event as ZeroStateEvent, ZeroState};
use crate::search::data_source::QueryResult;
@@ -18,8 +18,8 @@ use crate::search::QueryFilter;
use crate::server::ids::{ObjectUid, SyncId};
use crate::settings::AISettings;
use crate::workflows::CloudWorkflow;
use std::collections::HashMap;
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
use std::collections::HashMap;
/// Datasource that searches against all Warp Drive objects
pub struct DataSource {
@@ -563,9 +563,9 @@ mod full_text_searcher {
use crate::server::ids::ObjectUid;
use crate::workflows::CloudWorkflow;
use fuzzy_match::FuzzyMatchResult;
use itertools::Itertools;
use galaxyui::r#async::executor::Background;
use galaxyui::{AppContext, SingletonEntity};
use itertools::Itertools;
/// Memory budget for the search index of warp drive.
/// Warp could potentially have a lot of objects, so we increase it from the default of 50MB to 100MB
@@ -10,11 +10,11 @@ use crate::search::env_var_collections::fuzzy_match::FuzzyMatchEnvVarCollectionR
use crate::search::item::{IconLocation, SearchItem};
use crate::search::result_renderer::ItemHighlightState;
use crate::ui_components::icons::Icon;
use itertools::Itertools;
use ordered_float::OrderedFloat;
use galaxyui::elements::{Container, Flex, Highlight, ParentElement, Text};
use galaxyui::fonts::{Properties, Weight};
use galaxyui::{AppContext, Element, SingletonEntity};
use itertools::Itertools;
use ordered_float::OrderedFloat;
pub const ENV_VAR_NAME_SEPARATOR: &str = ", ";
@@ -12,10 +12,10 @@ use crate::search::notebooks::fuzzy_match::{
};
use crate::search::result_renderer::ItemHighlightState;
use crate::ui_components::icons::Icon;
use ordered_float::OrderedFloat;
use galaxyui::elements::{Container, Flex, Highlight, ParentElement, Text};
use galaxyui::fonts::{Properties, Weight};
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
/// Search item result for a cloud notebook.
#[derive(Debug)]
@@ -10,10 +10,10 @@ use crate::search::result_renderer::ItemHighlightState;
use crate::search::workflows::fuzzy_match::FuzzyMatchWorkflowResult;
use crate::ui_components::icons::Icon;
use crate::workflows::CloudWorkflow;
use ordered_float::OrderedFloat;
use galaxyui::elements::{Clipped, Container, Flex, Highlight, ParentElement, Shrinkable, Text};
use galaxyui::fonts::{Properties, Weight};
use galaxyui::{AppContext, Element, SingletonEntity};
use ordered_float::OrderedFloat;
/// Search item result for a cloud workflow.
#[derive(Debug)]
+2 -2
View File
@@ -1,7 +1,7 @@
mod items;
pub use items::Items;
use galaxy_core::context_flag::ContextFlag;
use galaxy_core::features::FeatureFlag;
pub use items::Items;
use crate::appearance::Appearance;
use crate::search::command_palette::FilterChipRenderer;
@@ -10,12 +10,12 @@ use crate::drive::settings::WarpDriveSettings;
use crate::search::QueryFilter;
use crate::settings::AISettings;
use crate::workspace::Workspace;
use std::collections::HashMap;
use galaxyui::elements::{Container, Flex, MouseStateHandle, ParentElement, Shrinkable, Wrap};
use galaxyui::{
AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext,
WindowId,
};
use std::collections::HashMap;
/// A zero-state view for the command palette.
pub struct ZeroState {
@@ -1,5 +1,5 @@
use itertools::Itertools;
use galaxyui::{AppContext, SingletonEntity};
use itertools::Itertools;
use crate::ai::blocklist::BlocklistAIHistoryModel;
use crate::search::ai_queries::fuzzy_match::FuzzyMatchAIQueryResults;
@@ -4,7 +4,6 @@ use crate::{
util::time_format::format_approx_duration_from_now,
};
use chrono::{DateTime, Local};
use ordered_float::OrderedFloat;
use galaxy_core::ui::builder::MIN_FONT_SIZE;
use galaxyui::{
elements::{
@@ -15,6 +14,7 @@ use galaxyui::{
ui_components::components::{Coords, UiComponent, UiComponentStyles},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use crate::ui_components::icons::Icon as UiIcon;
@@ -1,5 +1,3 @@
use itertools::Itertools;
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{
ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, MainAxisAlignment,
@@ -9,6 +7,8 @@ use galaxyui::{
ui_components::components::{UiComponent, UiComponentStyles},
AppContext, Element, SingletonEntity,
};
use itertools::Itertools;
use ordered_float::OrderedFloat;
use crate::{
appearance::Appearance,
@@ -1,5 +1,5 @@
use itertools::Itertools;
use galaxyui::{AppContext, SingletonEntity};
use itertools::Itertools;
use crate::cloud_object::model::persistence::CloudModel;
@@ -1,6 +1,6 @@
use futures_lite::future::yield_now;
use std::sync::Arc;
use galaxyui::{AppContext, SingletonEntity};
use std::sync::Arc;
use crate::search::async_snapshot_data_source::AsyncSnapshotDataSource;
use crate::search::command_search::searcher::CommandSearchItemAction;
@@ -1,6 +1,4 @@
use crate::ui_components::icons::Icon as UiIcon;
use ordered_float::OrderedFloat;
use std::sync::Arc;
use galaxy_core::ui::builder;
use galaxyui::{
elements::{
@@ -11,6 +9,8 @@ use galaxyui::{
ui_components::components::{Coords, UiComponent, UiComponentStyles},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use std::sync::Arc;
use crate::search::item::SearchItem;
use crate::search::{
@@ -1,6 +1,5 @@
use std::sync::Arc;
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{
ConstrainedBox, Container, Flex, Highlight, Icon, MainAxisAlignment, MainAxisSize,
@@ -9,6 +8,7 @@ use galaxyui::{
fonts::{Properties, Weight},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use crate::appearance::Appearance;
use crate::notebooks::CloudNotebookModel;
@@ -1,6 +1,6 @@
use fuzzy_match::match_indices_case_insensitive;
use itertools::Itertools;
use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity};
use itertools::Itertools;
use super::ProjectSearchItem;
use crate::projects::ProjectManagementModel;
@@ -1,13 +1,13 @@
use chrono::NaiveDateTime;
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use std::{cmp::Ordering, path::PathBuf};
use galaxy_core::ui::theme::Fill;
use galaxyui::{
elements::{Align, ConstrainedBox, Flex, Highlight, ParentElement, Shrinkable, Text},
fonts::{Properties, Weight},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use std::{cmp::Ordering, path::PathBuf};
use crate::search::action::search_item::styles;
use crate::search::command_palette::render_util::render_search_item_icon;
@@ -1,9 +1,9 @@
use chrono::{Duration, NaiveDateTime, Utc};
use fuzzy_match::match_indices_case_insensitive;
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
use itertools::Itertools;
use std::collections::{HashMap, HashSet};
use std::path::Path;
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
use crate::search::command_palette::mixer::CommandPaletteItemAction;
use crate::search::command_search::projects::{os_probably_case_sensitive, ProjectSearchItem};
@@ -14,13 +14,13 @@ use crate::server::server_api::ServerApiProvider;
use crate::server::telemetry::context_provider::AppTelemetryContextProvider;
use crate::terminal::HistoryEntry;
use crate::{appearance::Appearance, search::command_search::history::history_data_source};
use galaxyui::r#async::Timer;
use galaxyui::AppContext;
use galaxyui::{elements::Empty, App, Element};
use itertools::Itertools;
use ordered_float::OrderedFloat;
use std::collections::HashSet;
use std::time::Duration;
use galaxyui::r#async::Timer;
use galaxyui::AppContext;
use galaxyui::{elements::Empty, App, Element};
#[derive(Clone, Debug)]
enum TestItemAction {
+3 -3
View File
@@ -5,8 +5,6 @@ use pathfinder_color::ColorU;
use pathfinder_geometry::vector::Vector2F;
use crate::search::mixer::AddAsyncSourceOptions;
use lazy_static::lazy_static;
use std::{collections::HashSet, ops::Range, sync::Arc, time::Duration};
use galaxy_core::features::FeatureFlag;
use galaxyui::{
accessibility::{AccessibilityContent, WarpA11yRole},
@@ -23,6 +21,8 @@ use galaxyui::{
AppContext, Element, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView, View,
ViewContext, ViewHandle, WeakViewHandle,
};
use lazy_static::lazy_static;
use std::{collections::HashSet, ops::Range, sync::Arc, time::Duration};
use crate::{
ai_assistant::{
@@ -1120,9 +1120,9 @@ impl CommandSearchView {
}
pub mod styles {
use galaxyui::elements::{Border, DropShadow, ScrollbarWidth};
use lazy_static::lazy_static;
use pathfinder_color::ColorU;
use galaxyui::elements::{Border, DropShadow, ScrollbarWidth};
use crate::{appearance::Appearance, themes::theme::Fill};
+4 -4
View File
@@ -26,15 +26,15 @@ use crate::{
};
use async_trait::async_trait;
use itertools::Itertools;
use ordered_float::OrderedFloat;
use serde_json::json;
use std::{any::Any, sync::Arc};
use galaxy_core::ui::builder;
use galaxyui::{
elements::{ConstrainedBox, Container, Text},
AppContext, Element, SingletonEntity,
};
use itertools::Itertools;
use ordered_float::OrderedFloat;
use serde_json::json;
use std::{any::Any, sync::Arc};
const OPEN_WARP_AI_ITEM_BODY_TEXT: &str = "Ask Warp AI for command suggestions";
const TRANSLATE_WITH_WARP_AI_ITEM_BODY_TEXT: &str = "Translate into shell command using Warp AI";
@@ -1,6 +1,5 @@
use std::sync::Arc;
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{
Border, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex,
@@ -10,6 +9,7 @@ use galaxyui::{
ui_components::components::{UiComponent, UiComponentStyles},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use crate::appearance::Appearance;
use crate::search::command_search::searcher::{AcceptedWorkflow, CommandSearchItemAction};
@@ -1,6 +1,6 @@
use galaxyui::AppContext;
use itertools::Itertools;
use std::collections::HashMap;
use galaxyui::AppContext;
use crate::completer::SessionContext;
use crate::search::command_search::settings::CommandSearchSettings;
+1 -1
View File
@@ -1,6 +1,5 @@
use std::collections::HashMap;
use lazy_static::lazy_static;
use galaxy_core::features::FeatureFlag;
use galaxy_core::ui::theme::color::internal_colors;
use galaxyui::elements::Wrap;
@@ -11,6 +10,7 @@ use galaxyui::{
platform::Cursor,
AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext,
};
use lazy_static::lazy_static;
use crate::appearance::Appearance;
use crate::drive::settings::{WarpDriveSettings, WarpDriveSettingsChangedEvent};
+3 -3
View File
@@ -3,15 +3,15 @@ use crate::search::mixer::{DataSourceRunError, SyncDataSource};
use crate::search::result_renderer::ItemHighlightState;
use crate::{appearance::Appearance, ui_components::icons::Icon};
use enum_iterator::{all, Sequence};
use galaxy_core::features::FeatureFlag;
use galaxy_core::ui::theme::Fill;
use galaxyui::{Action, AppContext, Element, Entity, ModelHandle};
use lazy_static::lazy_static;
use ordered_float::OrderedFloat;
use serde::{Deserialize, Serialize};
use serde_json::json;
use std::any::Any;
use std::{collections::HashSet, sync::Arc};
use galaxy_core::features::FeatureFlag;
use galaxy_core::ui::theme::Fill;
use galaxyui::{Action, AppContext, Element, Entity, ModelHandle};
use super::mixer::{AsyncDataSource, BoxFuture};
use super::{item::SearchItem, mixer::DataSourceRunErrorWrapper};
@@ -1,8 +1,8 @@
use crate::external_secrets::ExternalSecret;
use crate::search::data_source::{Query, QueryResult};
use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource};
use itertools::Itertools;
use galaxyui::AppContext;
use itertools::Itertools;
use super::external_secret_fuzzy_match::FuzzyMatchExternalSecretResult;
use super::external_secret_search_item::ExternalSecretSearchItem;
@@ -1,9 +1,9 @@
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{ConstrainedBox, Container, Highlight, Text},
fonts::{Properties, Weight},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use crate::search::item::SearchItem;
use crate::search::result_renderer::ItemHighlightState;
+1 -1
View File
@@ -366,8 +366,8 @@ impl TypedActionView for ExternalSecretsMenu {
}
pub mod styles {
use pathfinder_color::ColorU;
use galaxyui::elements::{Border, DropShadow, ScrollbarWidth};
use pathfinder_color::ColorU;
use crate::{appearance::Appearance, themes::theme::Fill};
+1 -1
View File
@@ -3,12 +3,12 @@ use fuzzy_match::{
contains_wildcards, match_indices_case_insensitive, match_wildcard_pattern_case_insensitive,
FuzzyMatchResult,
};
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
use std::sync::Arc;
use std::{
collections::HashSet,
path::{Path, PathBuf},
};
use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity};
cfg_if::cfg_if! {
if #[cfg(feature = "local_fs")] {
+1 -1
View File
@@ -1,9 +1,9 @@
use super::super::search_item::{FileSearchItem, FileSearchResult};
use super::FileSearchModel;
use fuzzy_match::FuzzyMatchResult;
use galaxyui::{App, SingletonEntity};
use repo_metadata::repositories::DetectedRepositories;
use repo_metadata::RepoMetadataModel;
use galaxyui::{App, SingletonEntity};
#[cfg(test)]
mod file_search_model_tests {
+1 -1
View File
@@ -1,6 +1,6 @@
use ordered_float::OrderedFloat;
use galaxy_core::ui::theme::Fill;
use galaxyui::{Action, AppContext, Element};
use ordered_float::OrderedFloat;
use crate::appearance::Appearance;
+2 -2
View File
@@ -6,14 +6,14 @@ use crate::server::telemetry::TelemetryEvent;
use async_channel::Sender;
use async_trait::async_trait;
use futures_util::stream::AbortHandle;
use galaxyui::r#async::Timer;
use galaxyui::{Action, AppContext, Entity, ModelContext};
use itertools::Itertools;
use std::any::Any;
use std::collections::{HashMap, HashSet};
use std::sync::atomic::{AtomicUsize, Ordering};
use std::sync::Arc;
use std::time::Duration;
use galaxyui::r#async::Timer;
use galaxyui::{Action, AppContext, Entity, ModelContext};
/// Maximum time to wait for matching data sources to return results before showing
/// partial results.
+2 -2
View File
@@ -4,11 +4,11 @@ use crate::auth::AuthStateProvider;
use crate::search::item::SearchItem;
use crate::server::server_api::ServerApiProvider;
use crate::server::telemetry::context_provider::AppTelemetryContextProvider;
use galaxyui::r#async::Timer;
use galaxyui::{App, AppContext, Element};
use ordered_float::OrderedFloat;
use std::collections::HashSet;
use std::time::Duration;
use galaxyui::r#async::Timer;
use galaxyui::{App, AppContext, Element};
#[derive(Clone, Debug, PartialEq)]
struct TestAction {
@@ -1,4 +1,3 @@
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{
ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, MainAxisAlignment,
@@ -8,6 +7,7 @@ use galaxyui::{
ui_components::components::{Coords, UiComponent, UiComponentStyles},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use crate::search::result_renderer::ItemHighlightState;
use crate::{
@@ -1,5 +1,5 @@
use itertools::Itertools;
use galaxyui::{AppContext, SingletonEntity};
use itertools::Itertools;
use crate::cloud_object::{CloudObject, Space};
use crate::notebooks::CloudNotebook;
+3 -3
View File
@@ -10,8 +10,6 @@ use crate::{
search_bar::{SearchBar, SearchBarEvent, SearchBarState, SearchResultOrdering},
},
};
use itertools::Itertools;
use lazy_static::lazy_static;
use galaxyui::{
elements::{
Align, ConstrainedBox, Container, CornerRadius, Dismiss, Empty, Fill, Flex, ParentElement,
@@ -23,6 +21,8 @@ use galaxyui::{
AppContext, Element, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView, View,
ViewContext, ViewHandle, WeakViewHandle,
};
use itertools::Itertools;
use lazy_static::lazy_static;
use super::searcher::{EmbeddingSearchItemAction, EmbeddingSearchMixer};
@@ -376,8 +376,8 @@ impl View for EmbeddingSearchMenu {
}
pub mod styles {
use pathfinder_color::ColorU;
use galaxyui::elements::{Border, DropShadow, ScrollbarWidth};
use pathfinder_color::ColorU;
use crate::{appearance::Appearance, themes::theme::Fill};
@@ -1,4 +1,3 @@
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{
Clipped, ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, MainAxisAlignment,
@@ -8,6 +7,7 @@ use galaxyui::{
ui_components::components::{Coords, UiComponent, UiComponentStyles},
AppContext, Element, SingletonEntity,
};
use ordered_float::OrderedFloat;
use crate::search::result_renderer::ItemHighlightState;
use crate::{
@@ -1,5 +1,5 @@
use itertools::Itertools;
use galaxyui::{AppContext, SingletonEntity};
use itertools::Itertools;
use crate::cloud_object::{CloudObject, Space};
use crate::search::notebook_embedding::embedded_fuzzy_match::FuzzyMatchEmbeddedObjectResult;
+1 -1
View File
@@ -4,11 +4,11 @@ use crate::search::result_renderer::ItemHighlightState;
use crate::server::ids::SyncId;
use crate::{appearance::Appearance, cloud_object::CloudObject};
use fuzzy_match::FuzzyMatchResult;
use ordered_float::OrderedFloat;
use galaxyui::{
elements::{Highlight, Text},
AppContext, SingletonEntity,
};
use ordered_float::OrderedFloat;
#[derive(Clone, Debug)]
/// Result of fuzzy matching a [`Notebook`].
+1 -1
View File
@@ -1,4 +1,3 @@
use std::sync::Arc;
use galaxyui::elements::{Border, DispatchEventResult, DropShadow, Fill as ElementFill};
use galaxyui::{
elements::{
@@ -9,6 +8,7 @@ use galaxyui::{
platform::Cursor,
Action, AppContext, Element, EventContext, SingletonEntity,
};
use std::sync::Arc;
use crate::search::item::IconLocation;
use crate::{appearance::Appearance, themes::theme::Fill};
+1 -1
View File
@@ -1,7 +1,7 @@
use itertools::{Either, Itertools};
use galaxy_editor::editor::NavigationKey;
use galaxyui::elements::ConstrainedBox;
use galaxyui::FocusContext;
use itertools::{Either, Itertools};
use std::collections::HashSet;
+3 -3
View File
@@ -4,9 +4,6 @@ use crate::search::search_bar::{
CreateQueryResultRendererFn, SearchBar, SearchBarEvent, SearchBarState, SearchResultOrdering,
};
use crate::search::QueryFilter;
use itertools::Itertools;
use std::marker::PhantomData;
use std::ops::Range;
use galaxyui::elements::{
ConstrainedBox, Container, Empty, Flex, ParentElement, SavePosition, ScrollStateHandle,
Scrollable, ScrollableElement, ScrollbarWidth, Text, UniformList, UniformListState,
@@ -16,6 +13,9 @@ use galaxyui::{
Action, AppContext, Element, Entity, ModelHandle, SingletonEntity, View, ViewContext,
ViewHandle, WeakViewHandle,
};
use itertools::Itertools;
use std::marker::PhantomData;
use std::ops::Range;
use super::styles::{ESTIMATED_RESULT_HEIGHT, MAX_DISPLAYED_RESULT_COUNT};
+1 -1
View File
@@ -2,6 +2,7 @@
use anyhow::Context;
use futures::FutureExt as _;
use galaxyui::r#async::{block_on, executor::Background, Timer};
use instant::Instant;
use itertools::Itertools;
use parking_lot::{Mutex, RwLock};
@@ -25,7 +26,6 @@ use tantivy::tokenizer::{Token, TokenStream, Tokenizer};
use tantivy::{
snippet::SnippetGenerator, Index, IndexReader, IndexWriter, ReloadPolicy, TantivyDocument, Term,
};
use galaxyui::r#async::{block_on, executor::Background, Timer};
pub type FullTextSearchDocumentEntry = HashMap<String, FullTextSearchFieldValue>;
+1 -1
View File
@@ -1,9 +1,9 @@
use crate::define_search_schema;
use crate::search::searcher::{CustomTokenizer, MIN_MEMORY_BUDGET};
use galaxyui::r#async::executor::Background;
use itertools::Itertools;
use std::sync::Arc;
use tantivy::tokenizer::{TextAnalyzer, Token};
use galaxyui::r#async::executor::Background;
fn token_stream_helper(text: &str) -> Vec<Token> {
let mut a = TextAnalyzer::from(CustomTokenizer::default());
@@ -1,8 +1,8 @@
use std::{collections::HashMap, sync::LazyLock};
use galaxy_core::features::FeatureFlag;
use serde::{Deserialize, Serialize};
use uuid::Uuid;
use galaxy_core::features::FeatureFlag;
use crate::search::slash_command_menu::{static_commands::Argument, StaticCommand};
+2 -2
View File
@@ -4,8 +4,6 @@ use std::path::PathBuf;
use std::sync::Arc;
use chrono::Utc;
use itertools::Itertools as _;
use pathfinder_geometry::vector::vec2f;
use galaxy_core::context_flag::ContextFlag;
use galaxy_core::features::FeatureFlag;
use galaxyui::elements::{
@@ -21,6 +19,8 @@ use galaxyui::{
AppContext, Element, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView,
ViewContext, ViewHandle,
};
use itertools::Itertools as _;
use pathfinder_geometry::vector::vec2f;
use super::super::palette_styles as styles;
use crate::appearance::Appearance;