From a41cbd8cc7cd4266fd8c2d64e022a120a02785a2 Mon Sep 17 00:00:00 2001 From: Ryan Ward Date: Thu, 7 May 2026 11:29:34 -0500 Subject: [PATCH] Rebrand to Galaxy, major improvements to Bedrock support, still needs some TLC though --- Cargo.lock | 1882 +++++++-------- Cargo.toml | 52 +- REVIEW.md | 410 ++++ WARP.md | 9 + app/Cargo.toml | 92 +- app/DockTilePlugin/Info.plist | 4 +- app/assets/async/jpg/Galaxy_AI_Logo.jpg | Bin 0 -> 4944 bytes app/assets/async/png/Galaxy_AI_Logo.png | Bin 0 -> 18875 bytes app/build.rs | 12 +- app/examples/generate_default_settings.rs | 8 +- app/src/ai/active_agent_views_model.rs | 2 +- app/src/ai/active_agent_views_model_tests.rs | 2 +- app/src/ai/agent/api.rs | 10 +- app/src/ai/agent/api/convert_conversation.rs | 2 +- app/src/ai/agent/api/convert_from.rs | 2 +- app/src/ai/agent/api/convert_to_tests.rs | 2 +- app/src/ai/agent/api/impl.rs | 72 +- app/src/ai/agent/api/impl_tests.rs | 2 +- app/src/ai/agent/conversation.rs | 20 +- app/src/ai/agent/conversation_tests.rs | 2 +- app/src/ai/agent/icons.rs | 50 +- app/src/ai/agent/mod.rs | 4 +- app/src/ai/agent/telemetry.rs | 2 +- app/src/ai/agent/todos/popup.rs | 24 +- app/src/ai/agent/util.rs | 4 +- app/src/ai/agent_conversations_model.rs | 18 +- app/src/ai/agent_conversations_model_tests.rs | 6 +- app/src/ai/agent_events/driver.rs | 2 +- app/src/ai/agent_events/message_hydrator.rs | 2 +- .../agent_management_model.rs | 6 +- .../agent_management_model_tests.rs | 4 +- .../agent_management/agent_type_selector.rs | 20 +- .../cloud_setup_guide_view.rs | 26 +- .../details_action_buttons.rs | 8 +- app/src/ai/agent_management/mod.rs | 2 +- .../ai/agent_management/notifications/item.rs | 2 +- .../notifications/item_rendering.rs | 24 +- .../notifications/item_tests.rs | 2 +- .../notifications/toast_stack.rs | 20 +- .../ai/agent_management/notifications/view.rs | 20 +- app/src/ai/agent_management/telemetry.rs | 6 +- app/src/ai/agent_management/view.rs | 40 +- app/src/ai/agent_sdk/admin.rs | 6 +- app/src/ai/agent_sdk/agent_config.rs | 10 +- app/src/ai/agent_sdk/ambient.rs | 12 +- app/src/ai/agent_sdk/ambient_tests.rs | 4 +- app/src/ai/agent_sdk/artifact.rs | 10 +- app/src/ai/agent_sdk/artifact_tests.rs | 2 +- app/src/ai/agent_sdk/artifact_upload.rs | 2 +- app/src/ai/agent_sdk/artifact_upload_tests.rs | 2 +- app/src/ai/agent_sdk/common.rs | 10 +- app/src/ai/agent_sdk/config_file.rs | 2 +- app/src/ai/agent_sdk/config_file_tests.rs | 2 +- app/src/ai/agent_sdk/driver.rs | 26 +- app/src/ai/agent_sdk/driver/attachments.rs | 2 +- app/src/ai/agent_sdk/driver/cloud_provider.rs | 2 +- .../ai/agent_sdk/driver/cloud_provider/aws.rs | 8 +- .../ai/agent_sdk/driver/cloud_provider/gcp.rs | 2 +- app/src/ai/agent_sdk/driver/environment.rs | 14 +- .../agent_sdk/driver/error_classification.rs | 4 +- .../driver/error_classification_tests.rs | 2 +- .../agent_sdk/driver/harness/claude_code.rs | 4 +- .../harness/claude_code/parent_bridge.rs | 4 +- .../driver/harness/claude_transcript.rs | 2 +- app/src/ai/agent_sdk/driver/harness/gemini.rs | 6 +- app/src/ai/agent_sdk/driver/harness/mod.rs | 10 +- app/src/ai/agent_sdk/driver/output.rs | 2 +- app/src/ai/agent_sdk/driver/snapshot.rs | 4 +- app/src/ai/agent_sdk/driver/terminal.rs | 16 +- app/src/ai/agent_sdk/driver_tests.rs | 6 +- app/src/ai/agent_sdk/environment.rs | 70 +- app/src/ai/agent_sdk/federate.rs | 12 +- app/src/ai/agent_sdk/harness_support.rs | 12 +- app/src/ai/agent_sdk/integration.rs | 12 +- app/src/ai/agent_sdk/integration_output.rs | 4 +- app/src/ai/agent_sdk/mcp.rs | 8 +- app/src/ai/agent_sdk/mcp_config.rs | 2 +- app/src/ai/agent_sdk/mcp_config_tests.rs | 2 +- app/src/ai/agent_sdk/mod.rs | 28 +- app/src/ai/agent_sdk/mod_tests.rs | 4 +- app/src/ai/agent_sdk/model.rs | 6 +- app/src/ai/agent_sdk/oauth_flow.rs | 4 +- app/src/ai/agent_sdk/output.rs | 4 +- app/src/ai/agent_sdk/output_tests.rs | 4 +- app/src/ai/agent_sdk/profiles.rs | 8 +- app/src/ai/agent_sdk/provider.rs | 8 +- app/src/ai/agent_sdk/retry.rs | 4 +- app/src/ai/agent_sdk/schedule.rs | 10 +- app/src/ai/agent_sdk/secret.rs | 10 +- app/src/ai/agent_sdk/telemetry.rs | 6 +- app/src/ai/agent_tips.rs | 12 +- app/src/ai/ai_document_view.rs | 46 +- .../ai/ambient_agents/github_auth_notifier.rs | 2 +- app/src/ai/ambient_agents/scheduled.rs | 6 +- app/src/ai/ambient_agents/spawn.rs | 6 +- app/src/ai/ambient_agents/task.rs | 10 +- app/src/ai/ambient_agents/telemetry.rs | 8 +- app/src/ai/artifacts/buttons.rs | 8 +- app/src/ai/artifacts/mod.rs | 42 +- app/src/ai/artifacts/mod_tests.rs | 4 +- app/src/ai/aws_credentials.rs | 4 +- app/src/ai/bedrock/client.rs | 37 +- app/src/ai/bedrock/convert.rs | 9 +- app/src/ai/bedrock/convert_request.rs | 210 +- app/src/ai/bedrock/convert_tests.rs | 8 +- app/src/ai/bedrock/diagnostic.rs | 363 +++ app/src/ai/bedrock/e2e_tests.rs | 2126 +++++++++++++++++ app/src/ai/bedrock/integration_tests.rs | 604 +++++ app/src/ai/bedrock/mod.rs | 5 + app/src/ai/bedrock/models_tests.rs | 18 +- app/src/ai/bedrock/stream.rs | 306 ++- app/src/ai/bedrock/stream_tests.rs | 49 +- .../test_fixtures/sample_project/Cargo.toml | 9 + .../test_fixtures/sample_project/README.md | 19 + .../test_fixtures/sample_project/src/lib.rs | 24 + .../test_fixtures/sample_project/src/main.rs | 30 + .../test_fixtures/sample_project/src/utils.rs | 12 + app/src/ai/block_context.rs | 2 +- app/src/ai/blocklist/action_model.rs | 2 +- app/src/ai/blocklist/action_model/execute.rs | 14 +- .../action_model/execute/ask_user_question.rs | 2 +- .../execute/ask_user_question_tests.rs | 2 +- .../action_model/execute/call_mcp_tool.rs | 6 +- .../action_model/execute/create_documents.rs | 6 +- .../action_model/execute/edit_documents.rs | 2 +- .../execute/fetch_conversation.rs | 2 +- .../action_model/execute/file_glob.rs | 6 +- .../action_model/execute/get_files.rs | 2 +- .../ai/blocklist/action_model/execute/grep.rs | 8 +- .../action_model/execute/read_documents.rs | 2 +- .../action_model/execute/read_files.rs | 2 +- .../action_model/execute/read_mcp_resource.rs | 4 +- .../action_model/execute/read_skill.rs | 4 +- .../action_model/execute/read_skill_tests.rs | 2 +- .../execute/request_computer_use.rs | 2 +- .../execute/request_file_edits.rs | 6 +- .../request_file_edits/apply_diff_model.rs | 4 +- .../request_file_edits/diff_application.rs | 2 +- .../diff_application_tests.rs | 2 +- .../execute/request_file_edits/telemetry.rs | 6 +- .../action_model/execute/search_codebase.rs | 2 +- .../action_model/execute/send_message.rs | 6 +- .../action_model/execute/shell_command.rs | 10 +- .../action_model/execute/start_agent.rs | 6 +- .../action_model/execute/start_agent_tests.rs | 4 +- .../execute/suggest_new_conversation.rs | 2 +- .../action_model/execute/suggest_prompt.rs | 4 +- .../action_model/execute/upload_artifact.rs | 4 +- .../execute/upload_artifact_tests.rs | 2 +- .../action_model/execute/use_computer.rs | 2 +- .../agent_view/agent_input_footer/chips.rs | 2 +- .../agent_view/agent_input_footer/editor.rs | 6 +- .../environment_selector.rs | 10 +- .../agent_view/agent_input_footer/mod.rs | 34 +- .../blocklist/agent_view/agent_message_bar.rs | 16 +- .../blocklist/agent_view/agent_view_block.rs | 8 +- .../agent_view/child_agent_status_card.rs | 12 +- app/src/ai/blocklist/agent_view/controller.rs | 14 +- .../agent_view/ephemeral_message_model.rs | 6 +- .../agent_view/inline_agent_view_header.rs | 6 +- app/src/ai/blocklist/agent_view/mod.rs | 10 +- .../orchestration_conversation_links.rs | 10 +- .../ai/blocklist/agent_view/shortcuts/mod.rs | 6 +- .../blocklist/agent_view/shortcuts/model.rs | 4 +- .../blocklist/agent_view/zero_state_block.rs | 12 +- .../agent_view/zero_state_block_tests.rs | 2 +- app/src/ai/blocklist/block.rs | 52 +- app/src/ai/blocklist/block/cli.rs | 36 +- app/src/ai/blocklist/block/cli_controller.rs | 4 +- .../ai/blocklist/block/compact_agent_input.rs | 2 +- app/src/ai/blocklist/block/find.rs | 4 +- .../block/keyboard_navigable_buttons.rs | 22 +- app/src/ai/blocklist/block/model.rs | 6 +- .../blocklist/block/model/debug_model_impl.rs | 2 +- app/src/ai/blocklist/block/model/helper.rs | 2 +- .../ai/blocklist/block/model/model_impl.rs | 2 +- .../block/number_shortcut_buttons.rs | 14 +- .../block/number_shortcut_buttons_tests.rs | 8 +- app/src/ai/blocklist/block/numbered_button.rs | 8 +- .../block/pending_user_query_block.rs | 2 +- .../ai/blocklist/block/secret_redaction.rs | 4 +- .../blocklist/block/secret_redaction_test.rs | 4 +- app/src/ai/blocklist/block/status_bar.rs | 16 +- .../ai/blocklist/block/toggleable_items.rs | 4 +- app/src/ai/blocklist/block/view_impl.rs | 40 +- .../ai/blocklist/block/view_impl/comments.rs | 12 +- .../ai/blocklist/block/view_impl/common.rs | 44 +- .../blocklist/block/view_impl/common_tests.rs | 6 +- .../ai/blocklist/block/view_impl/header.rs | 18 +- .../block/view_impl/imported_comments.rs | 6 +- .../block/view_impl/orchestration.rs | 10 +- .../block/view_impl/orchestration_tests.rs | 6 +- .../ai/blocklist/block/view_impl/output.rs | 30 +- app/src/ai/blocklist/block/view_impl/query.rs | 8 +- app/src/ai/blocklist/block/view_impl/todos.rs | 10 +- app/src/ai/blocklist/block_tests.rs | 2 +- app/src/ai/blocklist/code_block.rs | 8 +- .../codebase_index_speedbump_banner.rs | 10 +- app/src/ai/blocklist/context_model.rs | 6 +- app/src/ai/blocklist/controller.rs | 8 +- .../ai/blocklist/controller/input_context.rs | 6 +- .../controller/pending_response_streams.rs | 2 +- .../blocklist/controller/response_stream.rs | 30 +- .../ai/blocklist/controller/shared_session.rs | 4 +- .../ai/blocklist/controller/slash_command.rs | 4 +- app/src/ai/blocklist/history_model.rs | 4 +- .../history_model/conversation_loader.rs | 12 +- app/src/ai/blocklist/history_model_test.rs | 2 +- .../inline_action/ask_user_question_view.rs | 14 +- .../aws_bedrock_credentials_error.rs | 10 +- .../blocklist/inline_action/code_diff_view.rs | 28 +- .../inline_action/create_or_edit_document.rs | 12 +- .../inline_action/inline_action_header.rs | 8 +- .../inline_action/inline_action_icons.rs | 22 +- .../inline_action/requested_action.rs | 14 +- .../inline_action/requested_command.rs | 24 +- .../requested_command_attribution.rs | 4 +- .../inline_action/requested_script.rs | 16 +- .../inline_action/search_codebase.rs | 14 +- .../inline_action/search_results_common.rs | 18 +- .../inline_action/suggested_unit_tests.rs | 6 +- .../ai/blocklist/inline_action/web_fetch.rs | 6 +- .../ai/blocklist/inline_action/web_search.rs | 6 +- app/src/ai/blocklist/input_model.rs | 8 +- .../blocklist/orchestration_event_streamer.rs | 6 +- .../orchestration_event_streamer_tests.rs | 20 +- app/src/ai/blocklist/orchestration_events.rs | 6 +- .../blocklist/orchestration_events_tests.rs | 4 +- .../blocklist/passive_suggestions/legacy.rs | 6 +- .../ai/blocklist/passive_suggestions/maa.rs | 12 +- .../ai/blocklist/passive_suggestions/mod.rs | 2 +- app/src/ai/blocklist/permissions.rs | 12 +- app/src/ai/blocklist/permissions_test.rs | 6 +- .../ai/blocklist/prompt/plan_and_todo_list.rs | 22 +- app/src/ai/blocklist/prompt/prompt_alert.rs | 6 +- app/src/ai/blocklist/queued_query.rs | 2 +- .../suggested_agent_mode_workflow_modal.rs | 6 +- app/src/ai/blocklist/suggested_rule_modal.rs | 18 +- app/src/ai/blocklist/suggestion_chip_view.rs | 8 +- .../blocklist/summarization_cancel_dialog.rs | 22 +- .../ai/blocklist/task_status_sync_model.rs | 4 +- .../blocklist/task_status_sync_model_tests.rs | 2 +- app/src/ai/blocklist/telemetry.rs | 6 +- app/src/ai/blocklist/telemetry_banner.rs | 4 +- .../usage/conversation_usage_view.rs | 10 +- app/src/ai/blocklist/usage/mod.rs | 8 +- app/src/ai/blocklist/view_util.rs | 22 +- app/src/ai/cloud_agent_config/mod.rs | 2 +- app/src/ai/cloud_environments/mod.rs | 4 +- app/src/ai/control_code_parser.rs | 2 +- app/src/ai/conversation_details_panel.rs | 34 +- .../ai/conversation_details_panel_tests.rs | 6 +- app/src/ai/conversation_navigation/mod.rs | 2 +- app/src/ai/conversation_status_ui.rs | 14 +- app/src/ai/conversation_utils.rs | 4 +- app/src/ai/document/ai_document_model.rs | 10 +- .../ai/document/ai_document_model_tests.rs | 2 +- .../ai/execution_profiles/editor/manager.rs | 2 +- app/src/ai/execution_profiles/editor/mod.rs | 24 +- .../execution_profiles/editor/ui_helpers.rs | 36 +- app/src/ai/execution_profiles/mod.rs | 6 +- .../ai/execution_profiles/model_menu_items.rs | 8 +- app/src/ai/execution_profiles/profiles.rs | 6 +- .../ai/execution_profiles/profiles_tests.rs | 2 +- app/src/ai/facts/manager.rs | 2 +- app/src/ai/facts/mod.rs | 2 +- app/src/ai/facts/view/mod.rs | 18 +- app/src/ai/facts/view/rule.rs | 24 +- app/src/ai/facts/view/rule_editor.rs | 10 +- app/src/ai/facts/view/style.rs | 4 +- app/src/ai/get_relevant_files/controller.rs | 4 +- app/src/ai/harness_display.rs | 4 +- app/src/ai/llms.rs | 22 +- .../loading/shimmering_warp_loading_text.rs | 8 +- app/src/ai/mcp/dummy_file_based_manager.rs | 2 +- app/src/ai/mcp/dummy_file_mcp_watcher.rs | 2 +- app/src/ai/mcp/file_based_manager.rs | 4 +- app/src/ai/mcp/file_based_manager_tests.rs | 6 +- app/src/ai/mcp/file_mcp_watcher.rs | 6 +- app/src/ai/mcp/gallery.rs | 4 +- app/src/ai/mcp/mod.rs | 10 +- app/src/ai/mcp/mod_test.rs | 2 +- app/src/ai/mcp/reconnecting_peer.rs | 2 +- app/src/ai/mcp/templatable.rs | 4 +- app/src/ai/mcp/templatable_installation.rs | 2 +- app/src/ai/mcp/templatable_manager.rs | 6 +- app/src/ai/mcp/templatable_manager/native.rs | 12 +- app/src/ai/mcp/templatable_manager/oauth.rs | 20 +- app/src/ai/mcp/templatable_manager/wasm.rs | 6 +- app/src/ai/mod.rs | 2 +- app/src/ai/onboarding.rs | 4 +- app/src/ai/outline/native.rs | 2 +- app/src/ai/outline/wasm.rs | 2 +- app/src/ai/persisted_workspace.rs | 10 +- app/src/ai/predict/next_command_model.rs | 18 +- app/src/ai/predict/next_command_model_test.rs | 6 +- app/src/ai/predict/prompt_suggestions/mod.rs | 2 +- app/src/ai/request_usage_model.rs | 8 +- app/src/ai/request_usage_model_test.rs | 6 +- app/src/ai/restored_conversations.rs | 2 +- app/src/ai/skills/dummy_skill_manager.rs | 2 +- .../ai/skills/file_watchers/skill_watcher.rs | 6 +- .../file_watchers/skill_watcher_tests.rs | 4 +- .../ai/skills/file_watchers/subscribers.rs | 2 +- app/src/ai/skills/file_watchers/utils.rs | 2 +- .../ai/skills/file_watchers/utils_tests.rs | 54 +- app/src/ai/skills/listed_skill.rs | 2 +- app/src/ai/skills/resolve_skill_spec.rs | 6 +- app/src/ai/skills/resolve_skill_spec_tests.rs | 2 +- app/src/ai/skills/skill_manager.rs | 14 +- app/src/ai/skills/skill_manager_tests.rs | 18 +- app/src/ai/skills/skill_utils.rs | 12 +- app/src/ai/skills/skill_utils_tests.rs | 2 +- app/src/ai/skills/telemetry.rs | 6 +- app/src/ai_assistant/mod.rs | 10 +- app/src/ai_assistant/panel.rs | 44 +- app/src/ai_assistant/requests.rs | 4 +- app/src/ai_assistant/transcript.rs | 12 +- app/src/ai_assistant/transcript_tests.rs | 2 +- app/src/ai_assistant/utils.rs | 2 +- app/src/antivirus/mod.rs | 2 +- app/src/antivirus/telemetry.rs | 6 +- app/src/antivirus/windows.rs | 4 +- app/src/app_menus.rs | 16 +- app/src/app_services/linux/mod.rs | 12 +- app/src/app_services/mac.rs | 2 +- app/src/app_services/mod.rs | 2 +- app/src/app_services/windows/mod.rs | 8 +- app/src/app_services/windows/registry.rs | 2 +- app/src/app_services/windows/service_impl.rs | 2 +- .../windows/single_instance_manager.rs | 4 +- app/src/app_state.rs | 4 +- app/src/appearance.rs | 42 +- app/src/auth/anonymous_id.rs | 2 +- app/src/auth/auth_manager.rs | 18 +- app/src/auth/auth_manager/user_persistence.rs | 6 +- .../auth_manager/user_persistence_test.rs | 10 +- app/src/auth/auth_manager_test.rs | 4 +- app/src/auth/auth_override_warning_body.rs | 24 +- app/src/auth/auth_override_warning_modal.rs | 18 +- app/src/auth/auth_state.rs | 10 +- app/src/auth/auth_view_body.rs | 6 +- app/src/auth/auth_view_modal.rs | 44 +- app/src/auth/auth_view_shared_helpers.rs | 8 +- app/src/auth/credentials.rs | 2 +- app/src/auth/login_error_modal.rs | 2 +- app/src/auth/login_failure_notification.rs | 4 +- app/src/auth/login_slide.rs | 32 +- app/src/auth/mod.rs | 6 +- app/src/auth/needs_sso_link_view.rs | 8 +- app/src/auth/paste_auth_token_modal.rs | 20 +- app/src/auth/user.rs | 26 +- app/src/auth/user_test.rs | 2 +- app/src/auth/user_uid.rs | 2 +- app/src/auth/web_handoff.rs | 2 +- app/src/autoupdate/linux.rs | 20 +- app/src/autoupdate/mac.rs | 26 +- app/src/autoupdate/mod.rs | 14 +- app/src/autoupdate/mod_test.rs | 4 +- app/src/autoupdate/windows.rs | 16 +- app/src/banner/state.rs | 2 +- app/src/banner/view.rs | 6 +- .../shared_objects_creation_denied_body.rs | 10 +- .../shared_objects_creation_denied_modal.rs | 20 +- app/src/bin/channel_config.rs | 2 +- app/src/bin/dev.rs | 6 +- app/src/bin/generate_settings_schema.rs | 4 +- app/src/bin/local.rs | 16 +- app/src/bin/oss.rs | 24 +- app/src/bin/preview.rs | 6 +- app/src/bin/stable.rs | 6 +- app/src/changelog_model.rs | 2 +- app/src/channel.rs | 2 +- app/src/chip_configurator/mod.rs | 20 +- app/src/chip_configurator/modal_shell.rs | 16 +- app/src/cloud_object/breadcrumbs.rs | 2 +- .../cloud_object/grab_edit_access_modal.rs | 14 +- app/src/cloud_object/mod.rs | 8 +- app/src/cloud_object/model/actions.rs | 2 +- app/src/cloud_object/model/actions_tests.rs | 2 +- app/src/cloud_object/model/model_test.rs | 12 +- app/src/cloud_object/model/persistence.rs | 6 +- app/src/cloud_object/model/view.rs | 4 +- app/src/cloud_object/toast_message.rs | 2 +- app/src/code/active_file.rs | 2 +- app/src/code/diff_viewer.rs | 8 +- app/src/code/editor/comment_editor.rs | 8 +- app/src/code/editor/comment_editor_tests.rs | 4 +- app/src/code/editor/comments.rs | 2 +- app/src/code/editor/diff.rs | 8 +- app/src/code/editor/diff_tests.rs | 18 +- app/src/code/editor/element.rs | 16 +- app/src/code/editor/element/gutter_button.rs | 14 +- app/src/code/editor/embedded_comment.rs | 16 +- app/src/code/editor/embedded_comment_tests.rs | 4 +- app/src/code/editor/find/view.rs | 32 +- app/src/code/editor/goto_line/view.rs | 2 +- app/src/code/editor/line.rs | 2 +- app/src/code/editor/model.rs | 62 +- app/src/code/editor/model_tests.rs | 8 +- app/src/code/editor/nav_bar.rs | 6 +- app/src/code/editor/scroll.rs | 4 +- app/src/code/editor/view.rs | 42 +- app/src/code/editor/view/actions.rs | 10 +- app/src/code/editor/view/view_tests.rs | 8 +- app/src/code/editor/view/vim_handler.rs | 6 +- app/src/code/editor/view/vim_handler_tests.rs | 12 +- app/src/code/editor_management.rs | 4 +- app/src/code/file_tree/view.rs | 46 +- app/src/code/file_tree/view/editing.rs | 6 +- app/src/code/file_tree/view/editing_tests.rs | 2 +- app/src/code/file_tree/view/render.rs | 2 +- app/src/code/file_tree/view/view_tests.rs | 74 +- app/src/code/find_references_view.rs | 26 +- app/src/code/footer.rs | 36 +- app/src/code/global_buffer_model.rs | 30 +- app/src/code/icon.rs | 4 +- app/src/code/inline_diff.rs | 14 +- app/src/code/language_server_extension.rs | 10 +- .../code/language_server_shutdown_manager.rs | 4 +- app/src/code/local_code_editor.rs | 22 +- app/src/code/local_code_editor_wasm.rs | 12 +- app/src/code/lsp_telemetry.rs | 6 +- app/src/code/mod.rs | 6 +- app/src/code/opened_files.rs | 2 +- app/src/code/view.rs | 32 +- app/src/code/wasm.rs | 4 +- .../code_review_header/header_revamp.rs | 14 +- app/src/code_review/code_review_header/mod.rs | 22 +- app/src/code_review/code_review_view.rs | 68 +- .../code_review_view_integration.rs | 6 +- app/src/code_review/code_review_view_tests.rs | 28 +- app/src/code_review/comment_list_view.rs | 24 +- app/src/code_review/comment_rendering.rs | 24 +- app/src/code_review/comments/batch.rs | 6 +- app/src/code_review/comments/batch_tests.rs | 4 +- app/src/code_review/comments/comment.rs | 2 +- .../code_review/comments/diff_hunk_parser.rs | 2 +- app/src/code_review/context.rs | 4 +- app/src/code_review/diff_menu.rs | 10 +- app/src/code_review/diff_selector.rs | 6 +- app/src/code_review/diff_state.rs | 20 +- app/src/code_review/editor_state.rs | 4 +- .../code_review/file_invalidation_queue.rs | 2 +- app/src/code_review/find_model.rs | 16 +- app/src/code_review/find_model_tests.rs | 20 +- app/src/code_review/git_dialog/commit.rs | 4 +- app/src/code_review/git_dialog/mod.rs | 10 +- app/src/code_review/git_dialog/pr.rs | 4 +- app/src/code_review/git_dialog/push.rs | 6 +- app/src/code_review/git_status_update.rs | 6 +- app/src/code_review/hidden_lines.rs | 4 +- app/src/code_review/mod.rs | 2 +- app/src/code_review/scroll_preservation.rs | 6 +- app/src/code_review/telemetry_event.rs | 6 +- app/src/coding_entrypoints/clone_repo_view.rs | 4 +- .../coding_entrypoints/create_project_view.rs | 8 +- app/src/coding_entrypoints/glowing_editor.rs | 6 +- app/src/coding_entrypoints/project_buttons.rs | 8 +- app/src/completer/js.rs | 4 +- app/src/completer/mod.rs | 16 +- app/src/completer/test.rs | 20 +- app/src/context_chips/builtins.rs | 2 +- app/src/context_chips/current_prompt.rs | 14 +- app/src/context_chips/current_prompt_test.rs | 12 +- app/src/context_chips/directory_fetcher.rs | 6 +- app/src/context_chips/display.rs | 4 +- app/src/context_chips/display_chip.rs | 22 +- app/src/context_chips/display_menu.rs | 30 +- app/src/context_chips/logging.rs | 8 +- app/src/context_chips/logging_tests.rs | 4 +- app/src/context_chips/mod.rs | 2 +- app/src/context_chips/node_version_popup.rs | 18 +- app/src/context_chips/prompt.rs | 2 +- app/src/context_chips/prompt_snapshot.rs | 2 +- app/src/context_chips/prompt_tests.rs | 2 +- app/src/context_chips/prompt_type.rs | 2 +- app/src/context_chips/renderer.rs | 22 +- app/src/context_chips/renderer_test.rs | 2 +- app/src/crash_recovery.rs | 26 +- app/src/crash_reporting/mac.rs | 2 +- app/src/crash_reporting/mod.rs | 10 +- app/src/crash_reporting/sentry_minidump.rs | 6 +- app/src/debounce.rs | 2 +- app/src/debug_dump.rs | 12 +- app/src/default_terminal/mac.rs | 2 +- app/src/default_terminal/mod.rs | 2 +- app/src/download_method.rs | 2 +- .../drive/cloud_action_confirmation_dialog.rs | 2 +- app/src/drive/cloud_object_naming_dialog.rs | 2 +- app/src/drive/cloud_object_styling.rs | 2 +- app/src/drive/drive_helpers.rs | 8 +- .../drive/empty_trash_confirmation_dialog.rs | 2 +- app/src/drive/export.rs | 4 +- app/src/drive/export_tests.rs | 4 +- app/src/drive/folders/mod.rs | 4 +- app/src/drive/import/import_tests.rs | 6 +- app/src/drive/import/modal.rs | 4 +- app/src/drive/import/modal_body.rs | 4 +- app/src/drive/import/nodes.rs | 16 +- app/src/drive/import/queue.rs | 2 +- app/src/drive/index.rs | 56 +- app/src/drive/index_test.rs | 8 +- app/src/drive/items/ai_fact.rs | 2 +- app/src/drive/items/ai_fact_collection.rs | 2 +- app/src/drive/items/env_var_collection.rs | 4 +- app/src/drive/items/folder.rs | 6 +- app/src/drive/items/item.rs | 12 +- app/src/drive/items/mcp_server.rs | 2 +- app/src/drive/items/mcp_server_collection.rs | 2 +- app/src/drive/items/mod.rs | 4 +- app/src/drive/items/notebook.rs | 2 +- app/src/drive/items/space.rs | 4 +- app/src/drive/items/workflow.rs | 6 +- app/src/drive/mod.rs | 4 +- app/src/drive/panel.rs | 6 +- app/src/drive/panel_test.rs | 4 +- app/src/drive/settings.rs | 6 +- app/src/drive/sharing/dialog/inheritance.rs | 4 +- app/src/drive/sharing/dialog/mod.rs | 24 +- app/src/drive/sharing/mod.rs | 8 +- app/src/drive/sharing/style.rs | 4 +- app/src/drive/workflows/ai_assist.rs | 4 +- app/src/drive/workflows/arguments_test.rs | 2 +- .../drive/workflows/enum_creation_dialog.rs | 10 +- app/src/drive/workflows/modal.rs | 14 +- app/src/drive/workflows/modal_test.rs | 4 +- .../drive/workflows/workflow_arg_selector.rs | 14 +- .../workflows/workflow_arg_type_helpers.rs | 24 +- .../accept_autosuggestion_keybinding_view.rs | 22 +- app/src/editor/autosuggestion_ignore_view.rs | 20 +- app/src/editor/mod.rs | 4 +- app/src/editor/soft_wrap.rs | 2 +- app/src/editor/view/element.rs | 30 +- app/src/editor/view/marked_text_tests.rs | 4 +- app/src/editor/view/mod.rs | 60 +- app/src/editor/view/mod_test.rs | 34 +- app/src/editor/view/model/buffer/mod.rs | 20 +- app/src/editor/view/model/buffer/mod_test.rs | 2 +- .../view/model/buffer/subword_boundaries.rs | 2 +- .../model/buffer/subword_boundaries_tests.rs | 2 +- app/src/editor/view/model/buffer/text.rs | 4 +- .../editor/view/model/display_map/fold_map.rs | 4 +- .../view/model/display_map/fold_map_test.rs | 2 +- app/src/editor/view/model/display_map/mod.rs | 4 +- .../editor/view/model/display_map/mod_test.rs | 2 +- app/src/editor/view/model/mod.rs | 4 +- app/src/editor/view/model/mod_test.rs | 2 +- app/src/editor/view/model/selections.rs | 4 +- app/src/editor/view/movement.rs | 2 +- app/src/editor/view/snapshot.rs | 14 +- app/src/editor/view/vim_handler_test.rs | 24 +- app/src/editor/view/voice.rs | 34 +- .../active_env_var_collection_data.rs | 2 +- app/src/env_vars/env_var_collection_block.rs | 8 +- app/src/env_vars/manager.rs | 2 +- app/src/env_vars/mod.rs | 2 +- .../command_dialog/command_dialog_view.rs | 10 +- app/src/env_vars/view/command_dialog/mod.rs | 2 +- app/src/env_vars/view/editors.rs | 4 +- app/src/env_vars/view/env_var_collection.rs | 6 +- .../env_vars/view/env_var_collection_tests.rs | 4 +- .../env_vars/view/fixed_view_components.rs | 8 +- app/src/env_vars/view/menus.rs | 4 +- app/src/env_vars/view/secrets.rs | 8 +- .../env_vars/view/unsaved_changes_dialog.rs | 4 +- .../free_tier_default_model_layer.rs | 2 +- .../improved_palette_search_layer.rs | 2 +- app/src/experiments/mod.rs | 4 +- app/src/external_secrets/mod.rs | 2 +- app/src/features.rs | 2 +- app/src/font_fallback.rs | 2 +- app/src/global_resource_handles.rs | 4 +- app/src/gpu_state.rs | 2 +- app/src/input_classifier.rs | 8 +- app/src/input_suggestions.rs | 14 +- app/src/input_suggestions_test.rs | 10 +- .../agent_mode/assertions.rs | 4 +- app/src/integration_testing/agent_mode/mod.rs | 6 +- .../integration_testing/agent_mode/step.rs | 6 +- app/src/integration_testing/assertions.rs | 2 +- .../integration_testing/block/assertions.rs | 2 +- .../block_filtering/step.rs | 6 +- .../clipboard/assertion.rs | 2 +- app/src/integration_testing/clipboard/step.rs | 2 +- .../cloud_object/assertion.rs | 2 +- .../integration_testing/cloud_object/mod.rs | 2 +- .../integration_testing/code_review/mod.rs | 2 +- .../codebase_context/step.rs | 2 +- .../command_palette/assertions.rs | 4 +- .../command_palette/step.rs | 4 +- .../command_search/assertion.rs | 2 +- .../context_chips/assertions.rs | 4 +- app/src/integration_testing/goto_line.rs | 4 +- .../integration_testing/input/assertions.rs | 2 +- app/src/integration_testing/input/step.rs | 4 +- app/src/integration_testing/mod.rs | 2 +- .../navigation_palette/assertion.rs | 4 +- .../navigation_palette/step.rs | 2 +- .../integration_testing/notebook/assertion.rs | 4 +- app/src/integration_testing/notebook/step.rs | 4 +- .../pane_group/assertions.rs | 2 +- .../integration_testing/pane_group/step.rs | 2 +- .../integration_testing/rules/assertion.rs | 2 +- app/src/integration_testing/rules/step.rs | 2 +- .../secret_redaction/assertion.rs | 2 +- app/src/integration_testing/settings/step.rs | 2 +- app/src/integration_testing/step.rs | 2 +- app/src/integration_testing/subshell/step.rs | 2 +- app/src/integration_testing/tab/assertion.rs | 2 +- app/src/integration_testing/tab/step.rs | 2 +- .../integration_testing/terminal/assertion.rs | 8 +- app/src/integration_testing/terminal/step.rs | 8 +- app/src/integration_testing/terminal/util.rs | 4 +- app/src/integration_testing/themes/step.rs | 4 +- app/src/integration_testing/view_getters.rs | 4 +- .../warp_drive/assertion.rs | 4 +- .../integration_testing/window/assertion.rs | 2 +- app/src/integration_testing/window/step.rs | 2 +- .../integration_testing/workflow/assertion.rs | 2 +- app/src/integration_testing/workflow/step.rs | 2 +- .../workspace/assertions.rs | 2 +- app/src/integration_testing/workspace/step.rs | 2 +- app/src/interval_timer.rs | 2 +- app/src/keyboard.rs | 8 +- app/src/keyboard_test.rs | 2 +- app/src/launch_configs/mod.rs | 2 +- app/src/launch_configs/save_modal.rs | 20 +- app/src/lib.rs | 134 +- app/src/login_item/macos.rs | 2 +- app/src/login_item/mod.rs | 4 +- app/src/login_item/windows.rs | 4 +- app/src/menu.rs | 14 +- app/src/menu_test.rs | 4 +- app/src/modal.rs | 6 +- app/src/network.rs | 2 +- app/src/notebooks/active_notebook_data.rs | 2 +- app/src/notebooks/context_menu.rs | 6 +- app/src/notebooks/context_menu_tests.rs | 6 +- .../notebooks/editor/block_insertion_menu.rs | 12 +- app/src/notebooks/editor/embedded_item.rs | 20 +- app/src/notebooks/editor/embedding_model.rs | 8 +- app/src/notebooks/editor/find_bar.rs | 10 +- .../editor/interaction_state_model.rs | 2 +- app/src/notebooks/editor/keys.rs | 2 +- app/src/notebooks/editor/link_editor.rs | 6 +- app/src/notebooks/editor/mod.rs | 10 +- app/src/notebooks/editor/model.rs | 12 +- app/src/notebooks/editor/model_tests.rs | 32 +- app/src/notebooks/editor/notebook_command.rs | 12 +- app/src/notebooks/editor/omnibar.rs | 26 +- app/src/notebooks/editor/view.rs | 30 +- app/src/notebooks/editor/view_tests.rs | 24 +- app/src/notebooks/file/mod.rs | 26 +- app/src/notebooks/file/mod_tests.rs | 6 +- app/src/notebooks/link.rs | 4 +- app/src/notebooks/link_tests.rs | 4 +- app/src/notebooks/manager.rs | 2 +- app/src/notebooks/manager_tests.rs | 4 +- app/src/notebooks/mod.rs | 4 +- app/src/notebooks/notebook.rs | 16 +- app/src/notebooks/notebook/details_bar.rs | 4 +- .../notebooks/notebook/details_bar_tests.rs | 2 +- app/src/notebooks/notebook_tests.rs | 8 +- app/src/notebooks/styles.rs | 2 +- app/src/notification.rs | 2 +- app/src/pane_group/child_agent.rs | 2 +- app/src/pane_group/focus_state.rs | 2 +- app/src/pane_group/mod.rs | 28 +- app/src/pane_group/mod_tests.rs | 4 +- app/src/pane_group/pane/ai_document_pane.rs | 2 +- app/src/pane_group/pane/ai_fact_pane.rs | 2 +- app/src/pane_group/pane/code_diff_pane.rs | 2 +- .../pane_group/pane/code_diff_pane_model.rs | 2 +- app/src/pane_group/pane/code_pane.rs | 4 +- .../pane/env_var_collection_pane.rs | 2 +- .../pane/environment_management_pane.rs | 2 +- .../pane/execution_profile_editor_pane.rs | 2 +- app/src/pane_group/pane/file_pane.rs | 2 +- app/src/pane_group/pane/get_started_pane.rs | 2 +- app/src/pane_group/pane/get_started_view.rs | 10 +- .../pane_group/pane/local_harness_launch.rs | 4 +- .../pane/local_harness_launch_tests.rs | 2 +- app/src/pane_group/pane/mod.rs | 12 +- app/src/pane_group/pane/network_log_pane.rs | 2 +- app/src/pane_group/pane/notebook_pane.rs | 2 +- app/src/pane_group/pane/settings_pane.rs | 2 +- app/src/pane_group/pane/terminal_pane.rs | 6 +- .../pane_group/pane/view/header/components.rs | 12 +- app/src/pane_group/pane/view/header/mod.rs | 6 +- .../pane_group/pane/view/header/mod_test.rs | 4 +- .../pane_group/pane/view/header/sharing.rs | 14 +- .../pane_group/pane/view/header_content.rs | 4 +- app/src/pane_group/pane/view/mod.rs | 6 +- app/src/pane_group/pane/welcome_pane.rs | 8 +- app/src/pane_group/pane/welcome_view.rs | 16 +- app/src/pane_group/pane/workflow_pane.rs | 2 +- app/src/pane_group/tree.rs | 8 +- app/src/pane_group/working_directories.rs | 6 +- .../pane_group/working_directories_tests.rs | 6 +- app/src/persistence/cloud_objects.rs | 4 +- app/src/persistence/mod.rs | 6 +- app/src/persistence/sqlite.rs | 14 +- app/src/persistence/sqlite_tests.rs | 4 +- app/src/platform/wasm.rs | 2 +- app/src/plugin/app/mod.rs | 4 +- .../plugin/app/service_impl/completions.rs | 2 +- app/src/plugin/host/native/js_api/mod.rs | 8 +- app/src/plugin/host/native/logging.rs | 2 +- app/src/plugin/host/native/mod.rs | 4 +- app/src/plugin/host/native/plugin.rs | 6 +- app/src/plugin/host/native/runner.rs | 2 +- app/src/plugin/host/native/runners.rs | 4 +- app/src/plugin/service/call_js_function.rs | 2 +- app/src/plugin/service/completions.rs | 2 +- app/src/preview_config_migration.rs | 4 +- app/src/pricing/mod.rs | 4 +- app/src/profiling.rs | 6 +- app/src/projects.rs | 2 +- app/src/prompt/editor_modal.rs | 22 +- app/src/quit_warning/mod.rs | 2 +- app/src/referral_theme_status.rs | 4 +- app/src/remote_server/auth_context.rs | 2 +- app/src/remote_server/mod.rs | 14 +- app/src/remote_server/server_model.rs | 18 +- app/src/remote_server/ssh_transport.rs | 4 +- app/src/remote_server/unix/mod.rs | 8 +- app/src/resource_center/keybindings_page.rs | 12 +- app/src/resource_center/main_page.rs | 2 +- app/src/resource_center/mod.rs | 2 +- .../section_views/changelog_section.rs | 4 +- .../section_views/content_section.rs | 2 +- .../section_views/feature_section.rs | 2 +- app/src/resource_center/section_views/mod.rs | 4 +- app/src/resource_center/sections.rs | 4 +- app/src/resource_center/utils.rs | 2 +- app/src/resource_center/view.rs | 4 +- app/src/reward_view.rs | 6 +- app/src/root_view.rs | 44 +- app/src/root_view_tests.rs | 4 +- app/src/search/action/data_source.rs | 8 +- app/src/search/action/search_item.rs | 10 +- .../ai_context_menu/blocks/data_source.rs | 2 +- .../blocks/data_source_tests.rs | 4 +- .../ai_context_menu/blocks/search_item.rs | 8 +- .../ai_context_menu/code/data_source.rs | 10 +- app/src/search/ai_context_menu/code/mod.rs | 4 +- .../ai_context_menu/code/search_item.rs | 6 +- .../ai_context_menu/commands/data_source.rs | 4 +- .../ai_context_menu/commands/search_item.rs | 6 +- .../conversations/data_source.rs | 2 +- .../conversations/search_item.rs | 6 +- .../ai_context_menu/diffset/data_source.rs | 4 +- .../ai_context_menu/diffset/search_item.rs | 4 +- .../ai_context_menu/files/data_source.rs | 2 +- .../files/data_source_tests.rs | 10 +- .../ai_context_menu/files/search_item.rs | 4 +- .../ai_context_menu/notebooks/data_source.rs | 4 +- .../notebooks/data_source_test.rs | 2 +- .../ai_context_menu/notebooks/search_item.rs | 6 +- .../ai_context_menu/rules/data_source.rs | 2 +- .../rules/data_source_tests.rs | 2 +- .../ai_context_menu/rules/search_item.rs | 6 +- .../ai_context_menu/skills/data_source.rs | 2 +- .../ai_context_menu/skills/search_item.rs | 12 +- app/src/search/ai_context_menu/view.rs | 38 +- .../ai_context_menu/workflows/data_source.rs | 4 +- .../ai_context_menu/workflows/search_item.rs | 6 +- app/src/search/async_snapshot_data_source.rs | 2 +- app/src/search/binding_source.rs | 2 +- .../conversations/data_source.rs | 2 +- .../command_palette/conversations/search.rs | 2 +- .../conversations/search_item.rs | 16 +- .../conversations/search_test.rs | 2 +- .../search/command_palette/data_sources.rs | 8 +- .../command_palette/data_sources_test.rs | 2 +- .../command_palette/files/data_source.rs | 4 +- .../command_palette/files/search_item.rs | 8 +- .../command_palette/filter_chip_renderer.rs | 8 +- .../launch_config/data_source.rs | 8 +- .../command_palette/launch_config/renderer.rs | 2 +- .../launch_config/search_item.rs | 2 +- app/src/search/command_palette/mixer.rs | 6 +- .../command_palette/navigation/data_source.rs | 4 +- .../command_palette/navigation/render.rs | 10 +- .../command_palette/navigation/search.rs | 4 +- .../command_palette/navigation/search_item.rs | 4 +- .../new_session/data_source.rs | 6 +- .../new_session/new_session_option.rs | 2 +- .../command_palette/new_session/renderer.rs | 2 +- .../new_session/search_item.rs | 2 +- app/src/search/command_palette/render_util.rs | 8 +- .../command_palette/repos/repo_data_source.rs | 2 +- .../command_palette/repos/repo_search_item.rs | 4 +- .../search/command_palette/selected_items.rs | 2 +- .../command_palette/selected_items_tests.rs | 2 +- .../command_palette/separator_search_item.rs | 2 +- app/src/search/command_palette/view.rs | 28 +- .../command_palette/warp_drive/data_source.rs | 8 +- .../env_var_collection_search_item.rs | 6 +- .../warp_drive/notebook_search_item.rs | 6 +- .../warp_drive/workflow_search_item.rs | 6 +- app/src/search/command_palette/zero_state.rs | 8 +- .../command_palette/zero_state/items.rs | 8 +- .../ai_queries/ai_queries_data_source.rs | 2 +- .../ai_queries/ai_queries_search_item.rs | 4 +- .../env_var_collection_search_item.rs | 2 +- .../env_var_collections_data_source.rs | 2 +- .../history/history_data_source.rs | 2 +- .../history/history_search_item.rs | 4 +- .../notebooks/notebook_search_item.rs | 2 +- .../notebooks/notebooks_data_source.rs | 2 +- .../projects/project_data_source.rs | 2 +- .../projects/project_search_item.rs | 4 +- .../suggested_projects_data_source.rs | 2 +- .../search/command_search/searcher_test.rs | 6 +- app/src/search/command_search/view.rs | 14 +- app/src/search/command_search/view_test.rs | 2 +- app/src/search/command_search/warp_ai.rs | 8 +- .../workflows/cloud_workflows_data_source.rs | 2 +- .../workflows/workflow_search_item.rs | 4 +- .../workflows/workflows_data_source.rs | 4 +- app/src/search/command_search/zero_state.rs | 10 +- app/src/search/data_source.rs | 8 +- .../external_secret_data_source.rs | 2 +- .../external_secret_search_item.rs | 4 +- app/src/search/external_secrets/view.rs | 4 +- app/src/search/files/icon.rs | 4 +- app/src/search/files/model.rs | 2 +- app/src/search/files/model_tests.rs | 2 +- app/src/search/filter_chip_renderer.rs | 8 +- app/src/search/item.rs | 4 +- app/src/search/macros.rs | 4 +- app/src/search/mixer.rs | 4 +- app/src/search/mixer_test.rs | 4 +- .../notebooks/notebook_search_item.rs | 6 +- .../notebooks/notebooks_data_source.rs | 2 +- app/src/search/notebook_embedding/view.rs | 6 +- .../workflows/workflow_search_item.rs | 6 +- .../workflows/workflows_data_source.rs | 2 +- app/src/search/notebooks/fuzzy_match.rs | 2 +- app/src/search/palette_styles.rs | 4 +- app/src/search/result_renderer.rs | 4 +- app/src/search/search_bar.rs | 12 +- app/src/search/search_results_menu/view.rs | 8 +- app/src/search/searcher.rs | 2 +- app/src/search/searcher_test.rs | 2 +- .../static_commands/bindings.rs | 2 +- .../static_commands/commands.rs | 2 +- app/src/search/welcome_palette/view.rs | 24 +- app/src/search_bar.rs | 6 +- app/src/server/block.rs | 2 +- .../cloud_objects/fake_object_client.rs | 2 +- app/src/server/cloud_objects/listener.rs | 4 +- app/src/server/cloud_objects/test_utils.rs | 4 +- .../server/cloud_objects/update_manager.rs | 22 +- .../cloud_objects/update_manager_test.rs | 24 +- app/src/server/experiments/convert.rs | 2 +- app/src/server/experiments/mod.rs | 6 +- app/src/server/experiments/model.rs | 2 +- app/src/server/experiments/model_tests.rs | 2 +- app/src/server/graphql/mod.rs | 4 +- app/src/server/graphql/schema/mod.rs | 2 +- app/src/server/graphql/schema/util.rs | 26 +- app/src/server/ids.rs | 6 +- app/src/server/mod.rs | 2 +- app/src/server/network_log_pane_manager.rs | 2 +- app/src/server/network_log_view.rs | 8 +- app/src/server/network_logging.rs | 2 +- app/src/server/network_logging_tests.rs | 2 +- app/src/server/retry_strategies.rs | 2 +- app/src/server/server_api.rs | 25 +- app/src/server/server_api/ai.rs | 176 +- app/src/server/server_api/auth.rs | 54 +- app/src/server/server_api/block.rs | 8 +- app/src/server/server_api/integrations.rs | 14 +- app/src/server/server_api/managed_secrets.rs | 18 +- app/src/server/server_api/object.rs | 24 +- app/src/server/server_api/referral.rs | 10 +- app/src/server/server_api/team.rs | 40 +- app/src/server/server_api/workspace.rs | 10 +- app/src/server/sync_queue.rs | 4 +- app/src/server/sync_queue_test.rs | 4 +- app/src/server/telemetry/collector.rs | 16 +- app/src/server/telemetry/context.rs | 2 +- app/src/server/telemetry/context_provider.rs | 4 +- app/src/server/telemetry/events.rs | 28 +- app/src/server/telemetry/events_test.rs | 4 +- app/src/server/telemetry/macros.rs | 16 +- app/src/server/telemetry/mod.rs | 22 +- app/src/server/telemetry/mod_tests.rs | 8 +- app/src/server/telemetry_ext.rs | 6 +- app/src/server/telemetry_ext_tests.rs | 2 +- app/src/server/voice_transcriber.rs | 2 +- app/src/session_management.rs | 2 +- app/src/settings/accessibility.rs | 2 +- app/src/settings/ai.rs | 48 +- app/src/settings/ai_tests.rs | 4 +- app/src/settings/app_icon.rs | 2 +- app/src/settings/cloud_preferences_syncer.rs | 12 +- .../cloud_preferences_syncer_tests.rs | 34 +- app/src/settings/debug.rs | 2 +- app/src/settings/editor.rs | 2 +- app/src/settings/font.rs | 17 +- app/src/settings/gpu.rs | 2 +- app/src/settings/import/alacritty_parser.rs | 4 +- .../settings/import/alacritty_parser_tests.rs | 2 +- app/src/settings/import/config.rs | 4 +- app/src/settings/import/iterm_parser.rs | 4 +- app/src/settings/import/iterm_parser_tests.rs | 4 +- app/src/settings/import/model.rs | 10 +- app/src/settings/import/view.rs | 38 +- app/src/settings/init.rs | 24 +- app/src/settings/init_tests.rs | 34 +- app/src/settings/initializer.rs | 6 +- app/src/settings/input.rs | 2 +- app/src/settings/linux.rs | 2 +- app/src/settings/mod.rs | 10 +- app/src/settings/onboarding.rs | 4 +- app/src/settings/onboarding_tests.rs | 2 +- app/src/settings/privacy.rs | 8 +- app/src/settings/same_line_prompt_block.rs | 2 +- app/src/settings/select.rs | 2 +- app/src/settings/theme.rs | 2 +- app/src/settings/vim_banner.rs | 2 +- app/src/settings_view/about_page.rs | 10 +- app/src/settings_view/admin_actions.rs | 2 +- .../agent_assisted_environment_modal.rs | 6 +- .../agent_assisted_environment_modal_tests.rs | 8 +- app/src/settings_view/ai_page.rs | 122 +- app/src/settings_view/appearance_page.rs | 264 +- .../billing_and_usage/overage_limit_modal.rs | 4 +- .../billing_and_usage/usage_history_entry.rs | 8 +- .../billing_and_usage/usage_history_model.rs | 10 +- .../settings_view/billing_and_usage_page.rs | 44 +- app/src/settings_view/code_page.rs | 26 +- .../delete_environment_confirmation_dialog.rs | 2 +- .../directory_color_add_picker.rs | 4 +- .../directory_color_add_picker_tests.rs | 2 +- app/src/settings_view/environments_page.rs | 26 +- .../new_environment_button.rs | 6 +- .../settings_view/environments_page_tests.rs | 16 +- .../settings_view/execution_profile_view.rs | 28 +- .../settings_view/features/external_editor.rs | 6 +- .../settings_view/features/startup_shell.rs | 4 +- app/src/settings_view/features/undo_close.rs | 4 +- .../features/working_directory.rs | 4 +- app/src/settings_view/features_page.rs | 32 +- app/src/settings_view/keybindings.rs | 12 +- app/src/settings_view/main_page.rs | 20 +- .../destructive_mcp_confirmation_dialog.rs | 2 +- .../settings_view/mcp_servers/edit_page.rs | 10 +- .../mcp_servers/installation_modal.rs | 22 +- .../settings_view/mcp_servers/list_page.rs | 8 +- .../settings_view/mcp_servers/server_card.rs | 10 +- app/src/settings_view/mcp_servers/style.rs | 4 +- .../settings_view/mcp_servers/update_modal.rs | 24 +- app/src/settings_view/mcp_servers_page.rs | 2 +- app/src/settings_view/mod.rs | 28 +- app/src/settings_view/nav.rs | 4 +- app/src/settings_view/pane_manager.rs | 2 +- .../platform/create_api_key_modal.rs | 38 +- .../platform/expire_api_key_button.rs | 12 +- app/src/settings_view/platform_page.rs | 16 +- .../settings_view/privacy/add_regex_modal.rs | 6 +- app/src/settings_view/privacy_page.rs | 30 +- app/src/settings_view/referrals_page.rs | 2 +- app/src/settings_view/settings_file_footer.rs | 24 +- app/src/settings_view/settings_page.rs | 28 +- app/src/settings_view/show_blocks_view.rs | 14 +- app/src/settings_view/tab_menu.rs | 10 +- app/src/settings_view/teams_page.rs | 20 +- app/src/settings_view/telemetry.rs | 6 +- .../transfer_ownership_confirmation_modal.rs | 2 +- .../settings_view/update_environment_form.rs | 30 +- .../update_environment_form_tests.rs | 8 +- app/src/settings_view/warp_drive_page.rs | 10 +- app/src/settings_view/warpify_page.rs | 8 +- .../suggestions/ignored_suggestions_model.rs | 2 +- app/src/system.rs | 6 +- app/src/system/info.rs | 6 +- app/src/tab.rs | 44 +- app/src/tab_configs/action_sidecar.rs | 14 +- app/src/tab_configs/branch_picker.rs | 2 +- app/src/tab_configs/mod.rs | 2 +- app/src/tab_configs/new_worktree_modal.rs | 12 +- app/src/tab_configs/params_modal.rs | 10 +- .../tab_configs/remove_confirmation_dialog.rs | 8 +- app/src/tab_configs/repo_picker.rs | 2 +- app/src/tab_configs/session_config_modal.rs | 20 +- .../tab_configs/session_config_rendering.rs | 24 +- app/src/tab_configs/tab_config.rs | 2 +- app/src/tab_configs/tab_config_tests.rs | 2 +- app/src/tab_configs/telemetry.rs | 6 +- app/src/terminal/alias.rs | 2 +- .../terminal/alt_screen/alt_screen_element.rs | 28 +- app/src/terminal/alt_screen/mod.rs | 2 +- app/src/terminal/audible_bell/mod.rs | 2 +- app/src/terminal/available_shells.rs | 12 +- app/src/terminal/available_shells_test.rs | 2 +- app/src/terminal/block_filter.rs | 14 +- app/src/terminal/block_list_element.rs | 48 +- app/src/terminal/block_list_viewport.rs | 4 +- app/src/terminal/blockgrid_element.rs | 6 +- app/src/terminal/blockgrid_renderer.rs | 8 +- app/src/terminal/bootstrap.rs | 2 +- app/src/terminal/buy_credits_banner.rs | 30 +- app/src/terminal/cli_agent.rs | 8 +- .../cli_agent_sessions/listener/mod.rs | 4 +- app/src/terminal/cli_agent_sessions/mod.rs | 2 +- app/src/terminal/cli_agent_tests.rs | 6 +- app/src/terminal/color.rs | 2 +- app/src/terminal/dynamic_enum_suggestions.rs | 6 +- app/src/terminal/enable_auto_reload_modal.rs | 24 +- app/src/terminal/find/model.rs | 2 +- app/src/terminal/find/model/block_list.rs | 2 +- .../terminal/find/model/block_list_test.rs | 2 +- app/src/terminal/find/model/rich_content.rs | 2 +- app/src/terminal/general_settings.rs | 2 +- app/src/terminal/grid_renderer.rs | 28 +- .../grid_renderer/cell_glyph_cache.rs | 10 +- app/src/terminal/grid_renderer/cell_type.rs | 2 +- app/src/terminal/grid_renderer_test.rs | 6 +- app/src/terminal/grid_size_util.rs | 8 +- app/src/terminal/history.rs | 4 +- app/src/terminal/history/up_arrow.rs | 4 +- app/src/terminal/history_tests.rs | 4 +- app/src/terminal/input.rs | 32 +- app/src/terminal/input/agent.rs | 10 +- app/src/terminal/input/buffer_model.rs | 2 +- app/src/terminal/input/classic.rs | 2 +- app/src/terminal/input/cli_agent.rs | 4 +- .../input/cloud_mode_v2_history_menu.rs | 10 +- app/src/terminal/input/common.rs | 14 +- .../input/conversations/data_source.rs | 2 +- app/src/terminal/input/conversations/mod.rs | 4 +- .../input/conversations/search_item.rs | 20 +- app/src/terminal/input/conversations/view.rs | 6 +- app/src/terminal/input/decorations.rs | 6 +- app/src/terminal/input/decorations_tests.rs | 6 +- .../input/inline_history/data_source.rs | 2 +- .../input/inline_history/search_item.rs | 22 +- app/src/terminal/input/inline_history/view.rs | 12 +- .../terminal/input/inline_menu/message_bar.rs | 10 +- .../input/inline_menu/message_provider.rs | 2 +- app/src/terminal/input/inline_menu/model.rs | 4 +- .../terminal/input/inline_menu/positioning.rs | 4 +- app/src/terminal/input/inline_menu/styles.rs | 10 +- app/src/terminal/input/inline_menu/view.rs | 40 +- .../input/message_bar/attached_context.rs | 4 +- app/src/terminal/input/message_bar/common.rs | 30 +- app/src/terminal/input/message_bar/mod.rs | 10 +- .../terminal/input/message_bar/mod_tests.rs | 6 +- app/src/terminal/input/models/data_source.rs | 40 +- .../input/models/model_spec_scores.rs | 10 +- app/src/terminal/input/models/view.rs | 12 +- app/src/terminal/input/plans/data_source.rs | 2 +- app/src/terminal/input/plans/mod.rs | 2 +- app/src/terminal/input/plans/search_item.rs | 16 +- app/src/terminal/input/plans/view.rs | 6 +- .../terminal/input/profiles/data_source.rs | 2 +- .../terminal/input/profiles/search_item.rs | 16 +- app/src/terminal/input/profiles/view.rs | 6 +- app/src/terminal/input/prompts/data_source.rs | 14 +- app/src/terminal/input/prompts/view.rs | 6 +- app/src/terminal/input/repos/data_source.rs | 2 +- app/src/terminal/input/repos/mod.rs | 2 +- app/src/terminal/input/repos/search_item.rs | 14 +- app/src/terminal/input/repos/view.rs | 6 +- app/src/terminal/input/rewind/data_source.rs | 2 +- app/src/terminal/input/rewind/mod.rs | 2 +- app/src/terminal/input/rewind/search_item.rs | 20 +- app/src/terminal/input/rewind/view.rs | 6 +- app/src/terminal/input/skills/data_source.rs | 20 +- app/src/terminal/input/skills/view.rs | 8 +- app/src/terminal/input/slash_command_model.rs | 4 +- .../input/slash_command_model_tests.rs | 2 +- .../input/slash_commands/data_source/mod.rs | 12 +- .../data_source/saved_prompts.rs | 6 +- .../data_source/saved_prompts_tests.rs | 2 +- .../slash_commands/data_source/zero_state.rs | 4 +- app/src/terminal/input/slash_commands/mod.rs | 12 +- .../input/slash_commands/search_item.rs | 12 +- app/src/terminal/input/slash_commands/view.rs | 8 +- .../terminal/input/suggestions_mode_menu.rs | 6 +- .../terminal/input/suggestions_mode_model.rs | 2 +- app/src/terminal/input/terminal.rs | 6 +- .../terminal/input/terminal_message_bar.rs | 8 +- app/src/terminal/input/universal.rs | 2 +- .../terminal/input/user_query/data_source.rs | 2 +- app/src/terminal/input/user_query/mod.rs | 4 +- .../terminal/input/user_query/search_item.rs | 18 +- app/src/terminal/input/user_query/view.rs | 6 +- app/src/terminal/input_test.rs | 12 +- app/src/terminal/keys.rs | 2 +- app/src/terminal/keys_settings.rs | 2 +- app/src/terminal/ligature_settings.rs | 2 +- app/src/terminal/line_editor_status.rs | 4 +- app/src/terminal/links.rs | 4 +- app/src/terminal/local_shell/mod.rs | 2 +- app/src/terminal/local_tty/docker_sandbox.rs | 4 +- app/src/terminal/local_tty/event_loop.rs | 4 +- app/src/terminal/local_tty/recorder.rs | 2 +- .../terminal/local_tty/server/event_loop.rs | 2 +- app/src/terminal/local_tty/server/mod.rs | 6 +- app/src/terminal/local_tty/shell.rs | 14 +- app/src/terminal/local_tty/spawner.rs | 2 +- .../terminal/local_tty/terminal_attributes.rs | 4 +- .../terminal/local_tty/terminal_manager.rs | 10 +- app/src/terminal/local_tty/unix.rs | 50 +- .../terminal/local_tty/windows/conpty_api.rs | 2 +- .../terminal/local_tty/windows/environment.rs | 4 +- app/src/terminal/local_tty/windows/mod.rs | 2 +- app/src/terminal/meta_shortcuts.rs | 6 +- app/src/terminal/mock_terminal_manager.rs | 14 +- app/src/terminal/mod.rs | 10 +- app/src/terminal/model/alt_screen.rs | 8 +- app/src/terminal/model/alt_screen_test.rs | 2 +- app/src/terminal/model/ansi/dcs_hooks.rs | 2 +- app/src/terminal/model/ansi/handler.rs | 6 +- app/src/terminal/model/ansi/mod.rs | 6 +- app/src/terminal/model/ansi/mod_test.rs | 4 +- app/src/terminal/model/block.rs | 22 +- .../terminal/model/block/interaction_mode.rs | 2 +- .../terminal/model/block/serialized_block.rs | 2 +- app/src/terminal/model/block_test.rs | 8 +- app/src/terminal/model/blockgrid.rs | 2 +- app/src/terminal/model/blocks.rs | 12 +- app/src/terminal/model/blocks/selection.rs | 6 +- .../terminal/model/blocks/selection_tests.rs | 2 +- app/src/terminal/model/blocks_test.rs | 6 +- app/src/terminal/model/completions.rs | 2 +- app/src/terminal/model/early_output.rs | 18 +- app/src/terminal/model/find.rs | 2 +- app/src/terminal/model/grid/ansi_handler.rs | 14 +- .../terminal/model/grid/filtering_tests.rs | 2 +- .../terminal/model/grid/grapheme_cursor.rs | 2 +- app/src/terminal/model/grid/grid_handler.rs | 20 +- .../terminal/model/grid/grid_handler_test.rs | 6 +- app/src/terminal/model/grid/grid_storage.rs | 2 +- app/src/terminal/model/grid/image.rs | 2 +- app/src/terminal/model/grid/indexing.rs | 4 +- app/src/terminal/model/grid/mod.rs | 2 +- app/src/terminal/model/grid/resize.rs | 2 +- .../terminal/model/grid/selection_cursor.rs | 2 +- app/src/terminal/model/grid/tests.rs | 2 +- app/src/terminal/model/header_grid.rs | 4 +- app/src/terminal/model/index.rs | 2 +- app/src/terminal/model/iterm_image.rs | 2 +- app/src/terminal/model/kitty.rs | 4 +- app/src/terminal/model/mod.rs | 6 +- app/src/terminal/model/secrets.rs | 4 +- app/src/terminal/model/selection.rs | 8 +- app/src/terminal/model/session.rs | 20 +- .../terminal/model/session/active_session.rs | 2 +- .../model/session/command_executor.rs | 8 +- .../in_band_command_executor.rs | 10 +- .../in_band_command_executor_tests.rs | 2 +- .../msys2_command_executor.rs | 4 +- .../remote_server_executor.rs | 6 +- .../session/command_executor/tmux_executor.rs | 4 +- .../command_executor/tmux_executor_tests.rs | 2 +- app/src/terminal/model/session_test.rs | 2 +- app/src/terminal/model/terminal_model.rs | 22 +- app/src/terminal/model/terminal_model_test.rs | 8 +- app/src/terminal/model/test_utils.rs | 16 +- app/src/terminal/model_events.rs | 4 +- app/src/terminal/package_installers.rs | 4 +- app/src/terminal/package_installers_test.rs | 12 +- app/src/terminal/platform.rs | 2 +- app/src/terminal/profile_model_selector.rs | 24 +- app/src/terminal/prompt/mod.rs | 2 +- app/src/terminal/prompt_render_helper.rs | 10 +- app/src/terminal/recorder.rs | 8 +- app/src/terminal/ref_tests/mod.rs | 2 +- app/src/terminal/remote_tty/event_loop.rs | 2 +- .../terminal/remote_tty/terminal_manager.rs | 2 +- app/src/terminal/resizable_data.rs | 10 +- app/src/terminal/rich_history.rs | 2 +- app/src/terminal/safe_mode_settings.rs | 2 +- app/src/terminal/secret_regex_updater.rs | 2 +- app/src/terminal/session_settings.rs | 2 +- .../session_settings/new_session_shell.rs | 4 +- .../working_directory_config.rs | 2 +- app/src/terminal/settings.rs | 2 +- app/src/terminal/share_block_modal.rs | 14 +- app/src/terminal/shared_session/manager.rs | 2 +- app/src/terminal/shared_session/mod.rs | 4 +- app/src/terminal/shared_session/mod_test.rs | 4 +- .../shared_session/network/heartbeat.rs | 4 +- .../shared_session/network/heartbeat_tests.rs | 6 +- .../shared_session/participant_avatar_view.rs | 14 +- .../shared_session/permissions_manager.rs | 2 +- .../shared_session/presence_manager.rs | 2 +- .../shared_session/presence_manager_test.rs | 4 +- .../terminal/shared_session/render_util.rs | 4 +- .../shared_session/role_change_modal/mod.rs | 6 +- .../role_change_modal/sharer_grant_body.rs | 14 +- .../role_change_modal/sharer_response_body.rs | 8 +- .../role_change_modal/viewer_request_body.rs | 4 +- .../shared_session/selections_test.rs | 6 +- .../shared_session/share_modal/body.rs | 16 +- .../shared_session/share_modal/body_test.rs | 2 +- .../shared_session/share_modal/denied_body.rs | 8 +- .../shared_session/share_modal/mod.rs | 20 +- .../shared_session/share_modal/style.rs | 4 +- .../shared_session/shared_handlers.rs | 6 +- .../terminal/shared_session/sharer/network.rs | 10 +- .../shared_session/sharer/network_test.rs | 4 +- .../shared_session/viewer/event_loop.rs | 2 +- .../shared_session/viewer/event_loop_test.rs | 4 +- .../shared_session/viewer/history_model.rs | 2 +- .../shared_session/viewer/mod_test.rs | 2 +- .../terminal/shared_session/viewer/network.rs | 6 +- .../shared_session/viewer/network_test.rs | 2 +- .../shared_session/viewer/terminal_manager.rs | 2 +- app/src/terminal/ssh/error.rs | 36 +- app/src/terminal/ssh/install_tmux.rs | 18 +- app/src/terminal/ssh/ssh_detection.rs | 4 +- app/src/terminal/ssh/warpify.rs | 14 +- app/src/terminal/ssh/warpify_test.rs | 2 +- app/src/terminal/terminal_manager.rs | 4 +- app/src/terminal/terminal_size_element.rs | 2 +- app/src/terminal/universal_developer_input.rs | 20 +- app/src/terminal/view.rs | 98 +- app/src/terminal/view/action.rs | 12 +- app/src/terminal/view/agent_view.rs | 4 +- app/src/terminal/view/ambient_agent/block.rs | 4 +- .../view/ambient_agent/block/entry.rs | 18 +- .../view/ambient_agent/block/query.rs | 4 +- .../view/ambient_agent/block/setup_command.rs | 6 +- .../ambient_agent/block/setup_command_text.rs | 6 +- .../view/ambient_agent/first_time_setup.rs | 6 +- app/src/terminal/view/ambient_agent/footer.rs | 6 +- .../view/ambient_agent/harness_selector.rs | 10 +- .../view/ambient_agent/host_selector.rs | 8 +- .../view/ambient_agent/loading_screen.rs | 42 +- app/src/terminal/view/ambient_agent/mod.rs | 6 +- app/src/terminal/view/ambient_agent/model.rs | 12 +- .../view/ambient_agent/model_selector.rs | 10 +- .../terminal/view/ambient_agent/progress.rs | 10 +- .../view/ambient_agent/progress_ui_state.rs | 8 +- app/src/terminal/view/ambient_agent/tips.rs | 4 +- .../terminal/view/ambient_agent/view_impl.rs | 16 +- app/src/terminal/view/block_banner/mod.rs | 2 +- app/src/terminal/view/block_banner/warpify.rs | 2 +- .../onboarding_agentic_suggestions_block.rs | 30 +- .../onboarding_drive_sharing_block.rs | 6 +- .../onboarding_prompt_block.rs | 4 +- .../terminal/view/block_onboarding/util.rs | 14 +- app/src/terminal/view/bookmarks.rs | 2 +- app/src/terminal/view/docker_sandbox/mod.rs | 12 +- app/src/terminal/view/init.rs | 18 +- app/src/terminal/view/init_environment/mod.rs | 4 +- .../view/init_environment/mode_selector.rs | 20 +- .../view/init_project/lsp_server_selector.rs | 2 +- app/src/terminal/view/init_project/mod.rs | 14 +- app/src/terminal/view/init_project/model.rs | 4 +- .../view/inline_banner/agent_mode_setup.rs | 2 +- .../view/inline_banner/alias_expansion.rs | 2 +- .../anonymous_user_ai_sign_up.rs | 14 +- .../view/inline_banner/aws_bedrock_login.rs | 4 +- .../inline_banner/aws_cli_not_installed.rs | 4 +- app/src/terminal/view/inline_banner/mod.rs | 8 +- .../inline_banner/notifications_discovery.rs | 2 +- .../view/inline_banner/notifications_error.rs | 4 +- .../view/inline_banner/open_in_warp.rs | 2 +- .../view/inline_banner/passive_code_diff.rs | 4 +- .../view/inline_banner/prompt_suggestions.rs | 20 +- .../view/inline_banner/session_state.rs | 2 +- .../view/inline_banner/shared_sessions.rs | 2 +- .../inline_banner/shell_process_terminated.rs | 2 +- app/src/terminal/view/inline_banner/ssh.rs | 2 +- .../terminal/view/inline_banner/vim_mode.rs | 2 +- app/src/terminal/view/link_detection.rs | 6 +- app/src/terminal/view/load_ai_conversation.rs | 10 +- app/src/terminal/view/open_in_warp.rs | 6 +- app/src/terminal/view/open_in_warp_tests.rs | 4 +- app/src/terminal/view/pane_impl.rs | 32 +- app/src/terminal/view/passive_suggestions.rs | 2 +- app/src/terminal/view/pending_user_query.rs | 4 +- .../view/plugin_instructions_block.rs | 10 +- app/src/terminal/view/rich_content.rs | 2 +- .../terminal/view/shared_session/adapter.rs | 6 +- .../conversation_ended_tombstone_view.rs | 22 +- ...conversation_ended_tombstone_view_tests.rs | 2 +- .../shared_session/sharer/inactivity_modal.rs | 16 +- .../view/shared_session/sharer/mod.rs | 2 +- .../view/shared_session/test_utils.rs | 4 +- .../terminal/view/shared_session/view_impl.rs | 26 +- .../view/shared_session/view_impl_test.rs | 2 +- .../terminal/view/shared_session/viewer.rs | 2 +- .../terminal/view/shell_terminated_banner.rs | 6 +- app/src/terminal/view/ssh_file_upload.rs | 10 +- .../view/ssh_remote_server_choice_view.rs | 4 +- .../view/ssh_remote_server_failed_banner.rs | 8 +- app/src/terminal/view/tab_metadata.rs | 4 +- app/src/terminal/view/testing.rs | 6 +- app/src/terminal/view/tooltips.rs | 6 +- app/src/terminal/view/use_agent_footer/mod.rs | 10 +- .../view/use_agent_footer/mod_test.rs | 4 +- .../view/use_agent_footer/warpify_footer.rs | 4 +- app/src/terminal/view/zero_state_block.rs | 6 +- app/src/terminal/view_test.rs | 20 +- app/src/terminal/warpify/mod.rs | 2 +- app/src/terminal/warpify/render.rs | 16 +- app/src/terminal/warpify/settings.rs | 6 +- app/src/terminal/warpify/success_block.rs | 10 +- app/src/terminal/warpify/trigger_state.rs | 4 +- app/src/terminal/waterfall_gap_element.rs | 36 +- .../writeable_pty/bootstrap_file/windows.rs | 2 +- .../terminal/writeable_pty/command_history.rs | 2 +- .../terminal/writeable_pty/pty_controller.rs | 6 +- .../writeable_pty/pty_controller_tests.rs | 2 +- .../writeable_pty/remote_server_controller.rs | 4 +- .../writeable_pty/terminal_manager_util.rs | 2 +- app/src/terminal/wsl/model.rs | 4 +- app/src/test_util/mod.rs | 2 +- app/src/test_util/settings.rs | 10 +- app/src/test_util/terminal.rs | 6 +- app/src/themes/default_themes.rs | 76 +- app/src/themes/mod.rs | 2 +- app/src/themes/theme.rs | 22 +- app/src/themes/theme_chooser.rs | 8 +- app/src/themes/theme_creator_body.rs | 16 +- app/src/themes/theme_creator_modal.rs | 18 +- app/src/themes/theme_deletion_body.rs | 12 +- app/src/themes/theme_deletion_modal.rs | 16 +- app/src/themes/theme_test.rs | 2 +- app/src/throttle.rs | 2 +- app/src/tips/mod.rs | 2 +- app/src/tips/tip_view.rs | 14 +- app/src/tips/tip_view_test.rs | 2 +- app/src/ui_components/avatar.rs | 6 +- app/src/ui_components/blended_colors.rs | 2 +- app/src/ui_components/breadcrumb.rs | 2 +- app/src/ui_components/buttons.rs | 12 +- app/src/ui_components/color_dot.rs | 10 +- app/src/ui_components/dialog.rs | 10 +- app/src/ui_components/icon_with_status.rs | 18 +- app/src/ui_components/item_highlight.rs | 8 +- app/src/ui_components/menu_button.rs | 12 +- app/src/ui_components/mod.rs | 2 +- app/src/ui_components/red_notification_dot.rs | 4 +- .../ui_components/render_file_search_row.rs | 12 +- app/src/ui_components/tab_selector.rs | 6 +- app/src/ui_components/window_focus_dimming.rs | 12 +- app/src/undo_close/mod.rs | 2 +- app/src/undo_close/stack.rs | 4 +- app/src/uri/browser_url_handler.rs | 2 +- app/src/uri/docker.rs | 4 +- app/src/uri/docker_test.rs | 2 +- app/src/uri/mod.rs | 6 +- app/src/uri/web_intent_parser.rs | 2 +- app/src/user_config/mod.rs | 10 +- app/src/user_config/native.rs | 2 +- app/src/user_config/wasm.rs | 2 +- app/src/util/bindings.rs | 14 +- app/src/util/bindings_tests.rs | 4 +- app/src/util/clipboard.rs | 4 +- app/src/util/color.rs | 4 +- app/src/util/file.rs | 4 +- app/src/util/file/external_editor/linux.rs | 6 +- .../util/file/external_editor/linux_tests.rs | 2 +- app/src/util/file/external_editor/mac.rs | 2 +- app/src/util/file/external_editor/mod.rs | 4 +- app/src/util/file/external_editor/mod_test.rs | 2 +- app/src/util/file/external_editor/windows.rs | 4 +- app/src/util/git.rs | 4 +- app/src/util/link_detection.rs | 26 +- app/src/util/openable_file_type.rs | 2 +- app/src/util/tooltips.rs | 4 +- app/src/util/traffic_lights.rs | 18 +- .../util/traffic_lights/windows/renderer.rs | 10 +- .../traffic_lights/windows/renderer_state.rs | 6 +- app/src/util/windows.rs | 2 +- app/src/view_components/action_button.rs | 12 +- app/src/view_components/agent_toast.rs | 10 +- app/src/view_components/alert.rs | 4 +- app/src/view_components/callout_bubble.rs | 14 +- .../view_components/clickable_text_input.rs | 2 +- app/src/view_components/compact_dropdown.rs | 4 +- .../view_components/compact_dropdown_tests.rs | 4 +- .../compactible_action_button.rs | 6 +- .../compactible_split_action_button.rs | 4 +- .../view_components/copyable_text_field.rs | 14 +- app/src/view_components/dismissible_toast.rs | 18 +- app/src/view_components/dropdown.rs | 2 +- app/src/view_components/feature_popup.rs | 6 +- .../view_components/filterable_dropdown.rs | 8 +- app/src/view_components/find.rs | 22 +- app/src/view_components/find_tests.rs | 8 +- .../view_components/markdown_toggle_view.rs | 14 +- .../view_components/submittable_text_input.rs | 2 +- app/src/view_components/warning_box.rs | 14 +- app/src/vim_registers.rs | 2 +- app/src/voice/transcriber.rs | 2 +- app/src/voltron.rs | 18 +- app/src/warp_managed_paths_watcher.rs | 16 +- app/src/wasm_nux_dialog.rs | 8 +- app/src/window_settings.rs | 2 +- app/src/word_block_editor.rs | 4 +- app/src/workflows/aliases.rs | 4 +- app/src/workflows/aliases_test.rs | 6 +- app/src/workflows/categories.rs | 22 +- app/src/workflows/export_workflow.rs | 2 +- app/src/workflows/info_box.rs | 16 +- app/src/workflows/local_workflows.rs | 10 +- app/src/workflows/local_workflows_test.rs | 2 +- app/src/workflows/manager.rs | 2 +- app/src/workflows/mod.rs | 6 +- app/src/workflows/mod_test.rs | 2 +- app/src/workflows/workflow_view.rs | 18 +- .../workflow_view/alias_argument_selector.rs | 6 +- app/src/workflows/workflow_view/alias_bar.rs | 6 +- .../workflow_view/argument_editor.rs | 6 +- .../workflow_view/env_var_selector.rs | 4 +- .../workflow_view/syntax_highlightable.rs | 12 +- app/src/workspace/action.rs | 12 +- app/src/workspace/action_tests.rs | 2 +- app/src/workspace/active_session.rs | 2 +- .../bonus_grant_notification_model.rs | 4 +- app/src/workspace/cli_install.rs | 4 +- .../close_session_confirmation_dialog.rs | 4 +- ...delete_conversation_confirmation_dialog.rs | 10 +- app/src/workspace/global_actions.rs | 10 +- app/src/workspace/header_toolbar_editor.rs | 6 +- app/src/workspace/header_toolbar_item.rs | 2 +- .../hoa_onboarding/hoa_onboarding_flow.rs | 24 +- app/src/workspace/hoa_onboarding/mod.rs | 4 +- .../hoa_onboarding/tab_config_step.rs | 10 +- .../hoa_onboarding/welcome_banner.rs | 14 +- app/src/workspace/home.rs | 2 +- app/src/workspace/lightbox_view.rs | 12 +- app/src/workspace/mod.rs | 34 +- app/src/workspace/native_modal.rs | 18 +- app/src/workspace/one_time_modal_model.rs | 4 +- app/src/workspace/registry.rs | 6 +- .../workspace/rewind_confirmation_dialog.rs | 10 +- app/src/workspace/sync_inputs.rs | 4 +- app/src/workspace/tab_settings.rs | 4 +- app/src/workspace/tab_settings_tests.rs | 2 +- app/src/workspace/toast_stack.rs | 2 +- app/src/workspace/util.rs | 4 +- app/src/workspace/view.rs | 120 +- .../view/build_plan_migration_modal.rs | 20 +- .../view/cloud_agent_capacity_modal/mod.rs | 24 +- app/src/workspace/view/codex_modal.rs | 18 +- .../workspace/view/conversation_list/item.rs | 22 +- .../workspace/view/conversation_list/view.rs | 28 +- .../view/conversation_list/view_model.rs | 2 +- app/src/workspace/view/crash_recovery.rs | 4 +- .../view/free_tier_limit_hit_modal.rs | 30 +- app/src/workspace/view/global_search/model.rs | 16 +- .../view/global_search/model_wasm.rs | 2 +- app/src/workspace/view/global_search/view.rs | 52 +- .../workspace/view/launch_modal/cta_button.rs | 2 +- app/src/workspace/view/launch_modal/mod.rs | 24 +- .../workspace/view/launch_modal/oz_launch.rs | 10 +- app/src/workspace/view/left_panel.rs | 24 +- app/src/workspace/view/onboarding.rs | 2 +- .../view/openwarp_launch_modal/view.rs | 18 +- app/src/workspace/view/right_panel.rs | 24 +- app/src/workspace/view/startup_directory.rs | 4 +- app/src/workspace/view/vertical_tabs.rs | 82 +- .../workspace/view/vertical_tabs/telemetry.rs | 8 +- app/src/workspace/view/vertical_tabs_tests.rs | 4 +- app/src/workspace/view/wasm_view.rs | 6 +- app/src/workspace/view_test.rs | 12 +- app/src/workspaces/gql_convert.rs | 122 +- app/src/workspaces/team_tester.rs | 2 +- app/src/workspaces/update_manager.rs | 6 +- app/src/workspaces/update_manager_tests.rs | 2 +- app/src/workspaces/user_profiles.rs | 2 +- app/src/workspaces/user_workspaces.rs | 14 +- app/src/workspaces/user_workspaces_tests.rs | 16 +- app/src/workspaces/workspace.rs | 4 +- crates/ai/Cargo.toml | 14 +- crates/ai/src/agent/action/convert.rs | 2 +- crates/ai/src/agent/action/mod.rs | 4 +- crates/ai/src/agent/action_result/mod.rs | 4 +- crates/ai/src/agent/file_locations.rs | 2 +- crates/ai/src/api_keys.rs | 4 +- crates/ai/src/aws_credentials.rs | 2 +- .../codebase_index.rs | 18 +- .../codebase_index_tests.rs | 4 +- .../full_source_code_embedding/manager.rs | 16 +- .../merkle_tree/hash.rs | 16 +- .../merkle_tree/node.rs | 2 +- .../merkle_tree/node_test.rs | 22 +- .../merkle_tree/test_util.rs | 8 +- .../index/full_source_code_embedding/mod.rs | 34 +- .../full_source_code_embedding/snapshot.rs | 12 +- .../full_source_code_embedding/sync_client.rs | 2 +- crates/ai/src/paths.rs | 6 +- crates/ai/src/paths_tests.rs | 2 +- crates/ai/src/project_context/model.rs | 2 +- crates/ai/src/skills/skill_provider.rs | 12 +- crates/ai/src/telemetry.rs | 4 +- crates/app-installation-detection/Cargo.toml | 2 +- crates/asset_cache/Cargo.toml | 2 +- crates/asset_cache/src/lib.rs | 2 +- crates/asset_macro/Cargo.toml | 2 +- crates/asset_macro/src/lib.rs | 8 +- crates/computer_use/Cargo.toml | 6 +- crates/computer_use/src/linux/wayland/mod.rs | 2 +- crates/computer_use/src/linux/x11/mod.rs | 2 +- crates/computer_use/src/mac/mod.rs | 2 +- crates/computer_use/src/mac/mouse.rs | 2 +- crates/computer_use/src/windows/mod.rs | 2 +- crates/editor/Cargo.toml | 12 +- crates/editor/benches/buffer_bench.rs | 4 +- crates/editor/src/content/anchor_test.rs | 2 +- crates/editor/src/content/buffer.rs | 12 +- crates/editor/src/content/buffer_test.rs | 6 +- crates/editor/src/content/core.rs | 2 +- crates/editor/src/content/edit.rs | 6 +- crates/editor/src/content/edit_tests.rs | 4 +- crates/editor/src/content/find.rs | 2 +- crates/editor/src/content/find_tests.rs | 2 +- .../editor/src/content/hidden_lines_model.rs | 2 +- crates/editor/src/content/markdown.rs | 6 +- crates/editor/src/content/markdown_tests.rs | 6 +- crates/editor/src/content/mermaid_diagram.rs | 2 +- crates/editor/src/content/outline_tests.rs | 2 +- crates/editor/src/content/segmentation.rs | 2 +- .../editor/src/content/segmentation_tests.rs | 4 +- crates/editor/src/content/selection_model.rs | 4 +- crates/editor/src/content/text.rs | 10 +- crates/editor/src/content/text_tests.rs | 4 +- crates/editor/src/content/undo.rs | 2 +- crates/editor/src/content/validation_tests.rs | 2 +- crates/editor/src/decoration/mod.rs | 2 +- crates/editor/src/editor.rs | 2 +- crates/editor/src/model.rs | 4 +- crates/editor/src/multiline.rs | 2 +- crates/editor/src/multiline_tests.rs | 2 +- .../src/render/element/broken_embedding.rs | 16 +- crates/editor/src/render/element/empty.rs | 6 +- crates/editor/src/render/element/header.rs | 6 +- .../src/render/element/hidden_section.rs | 12 +- .../src/render/element/horizontal_rule.rs | 8 +- crates/editor/src/render/element/image.rs | 10 +- .../editor/src/render/element/lens_element.rs | 2 +- crates/editor/src/render/element/mermaid.rs | 6 +- crates/editor/src/render/element/mod.rs | 12 +- .../editor/src/render/element/ordered_list.rs | 10 +- crates/editor/src/render/element/paint.rs | 4 +- crates/editor/src/render/element/paragraph.rs | 6 +- .../editor/src/render/element/placeholder.rs | 2 +- .../src/render/element/runnable_command.rs | 12 +- crates/editor/src/render/element/table.rs | 4 +- .../editor/src/render/element/table_tests.rs | 4 +- crates/editor/src/render/element/task_list.rs | 14 +- .../src/render/element/temporary_block.rs | 8 +- .../editor/src/render/element/text_block.rs | 6 +- .../src/render/element/unordered_list.rs | 10 +- crates/editor/src/render/layout.rs | 12 +- crates/editor/src/render/mod_tests.rs | 4 +- crates/editor/src/render/model/bounds.rs | 2 +- crates/editor/src/render/model/location.rs | 2 +- .../editor/src/render/model/location_tests.rs | 8 +- crates/editor/src/render/model/mod.rs | 12 +- crates/editor/src/render/model/mod_tests.rs | 16 +- crates/editor/src/render/model/offset_map.rs | 2 +- .../src/render/model/offset_map_tests.rs | 4 +- crates/editor/src/render/model/positioned.rs | 2 +- .../src/render/model/saved_positions.rs | 8 +- crates/editor/src/render/model/test_utils.rs | 10 +- crates/editor/src/render/model/viewport.rs | 2 +- .../editor/src/render/model/viewport_tests.rs | 2 +- crates/editor/src/search.rs | 6 +- crates/editor/src/search_tests.rs | 2 +- crates/editor/src/selection.rs | 4 +- crates/editor/src/selection_tests.rs | 10 +- crates/{warp_cli => galaxy_cli}/Cargo.toml | 6 +- crates/{warp_cli => galaxy_cli}/build.rs | 0 crates/{warp_cli => galaxy_cli}/src/agent.rs | 0 .../{warp_cli => galaxy_cli}/src/artifact.rs | 0 .../src/completions.rs | 2 +- .../src/config_file.rs | 0 .../src/environment.rs | 0 .../{warp_cli => galaxy_cli}/src/federate.rs | 0 .../src/harness_support.rs | 0 .../src/integration.rs | 0 .../src/json_filter.rs | 0 .../src/json_filter_tests.rs | 0 crates/{warp_cli => galaxy_cli}/src/lib.rs | 24 +- .../{warp_cli => galaxy_cli}/src/lib_tests.rs | 4 +- crates/{warp_cli => galaxy_cli}/src/mcp.rs | 0 .../{warp_cli => galaxy_cli}/src/mcp_tests.rs | 0 crates/{warp_cli => galaxy_cli}/src/model.rs | 0 .../src/process_handle.rs | 0 .../{warp_cli => galaxy_cli}/src/provider.rs | 0 .../{warp_cli => galaxy_cli}/src/schedule.rs | 0 crates/{warp_cli => galaxy_cli}/src/scope.rs | 0 crates/{warp_cli => galaxy_cli}/src/secret.rs | 0 crates/{warp_cli => galaxy_cli}/src/share.rs | 0 .../src/share_tests.rs | 0 crates/{warp_cli => galaxy_cli}/src/skill.rs | 0 .../src/skill_tests.rs | 0 crates/{warp_cli => galaxy_cli}/src/task.rs | 0 .../src/task_tests.rs | 0 .../Cargo.toml | 18 +- .../src/completer/coalesce.rs | 0 .../src/completer/context/mod.rs | 6 +- .../src/completer/context/v2.rs | 2 +- .../src/completer/describe.rs | 2 +- .../src/completer/describe_test.rs | 2 +- .../src/completer/engine/argument/legacy.rs | 4 +- .../src/completer/engine/argument/mod.rs | 0 .../src/completer/engine/argument/v2.rs | 0 .../src/completer/engine/command.rs | 0 .../src/completer/engine/flag/legacy.rs | 0 .../src/completer/engine/flag/mod.rs | 0 .../src/completer/engine/flag/v2.rs | 0 .../src/completer/engine/legacy.rs | 0 .../src/completer/engine/mod.rs | 0 .../src/completer/engine/path.rs | 2 +- .../src/completer/engine/path_test.rs | 22 +- .../src/completer/engine/test.rs | 2 +- .../src/completer/engine/v2.rs | 0 .../src/completer/engine/variable.rs | 0 .../src/completer/matchers.rs | 0 .../src/completer/matchers_test.rs | 0 .../src/completer/mod.rs | 0 .../src/completer/suggest/alias.rs | 0 .../src/completer/suggest/alias_test.rs | 38 +- .../src/completer/suggest/legacy.rs | 0 .../src/completer/suggest/mod.rs | 2 +- .../src/completer/suggest/priority/mod.rs | 0 .../suggest/priority/priority_test.rs | 0 .../src/completer/suggest/priority/v2.rs | 0 .../src/completer/suggest/test.rs | 10 +- .../src/completer/suggest/v2.rs | 0 .../src/completer/testing/mod.rs | 4 +- .../src/completer/testing/v2.rs | 2 +- .../src/completer/tests.rs | 0 .../src/lib.rs | 0 .../src/meta.rs | 0 .../src/meta_test.rs | 0 .../src/parsers/README.md | 0 .../src/parsers/errors.rs | 0 .../src/parsers/hir/mod.rs | 0 .../src/parsers/legacy.rs | 0 .../src/parsers/mod.rs | 0 .../src/parsers/simple/convert.rs | 0 .../src/parsers/simple/iter.rs | 0 .../src/parsers/simple/lexer.rs | 0 .../src/parsers/simple/lexer_test.rs | 0 .../src/parsers/simple/mod.rs | 2 +- .../src/parsers/simple/parser.rs | 0 .../src/parsers/simple/parser_test.rs | 2 +- .../src/parsers/simple/token.rs | 0 .../src/parsers/test.rs | 2 +- .../src/parsers/v2.rs | 0 .../src/signatures/clap.rs | 0 .../src/signatures/legacy/mod.rs | 6 +- .../src/signatures/legacy/registry.rs | 0 .../src/signatures/legacy/registry_test.rs | 4 +- .../src/signatures/mod.rs | 0 .../src/signatures/testing/legacy.rs | 2 +- .../src/signatures/testing/mod.rs | 0 .../src/signatures/testing/v2.rs | 2 +- .../src/signatures/v2/js.rs | 34 +- .../src/signatures/v2/lookup.rs | 0 .../src/signatures/v2/lookup_test.rs | 0 .../src/signatures/v2/mod.rs | 4 +- .../src/signatures/v2/registry.rs | 0 .../src/signatures/v2/registry_test.rs | 0 .../src/signatures/v2/signatures_test.rs | 0 .../src/util.rs | 0 crates/{warp_core => galaxy_core}/Cargo.toml | 10 +- crates/{warp_core => galaxy_core}/build.rs | 0 .../{warp_core => galaxy_core}/src/app_id.rs | 0 .../src/app_id_test.rs | 0 .../src/assertions.rs | 0 .../src/channel/config.rs | 10 +- .../src/channel/mod.rs | 12 +- .../src/channel/state.rs | 4 +- .../src/channel/state_tests.rs | 0 .../{warp_core => galaxy_core}/src/command.rs | 0 .../src/context_flag.rs | 0 .../{warp_core => galaxy_core}/src/errors.rs | 0 .../src/errors/anyhow.rs | 0 .../src/errors/registration.rs | 0 .../src/errors/reqwest.rs | 0 .../src/errors/tokio.rs | 0 .../src/errors/websocket.rs | 0 .../src/execution_mode.rs | 2 +- .../src/features.rs | 4 +- .../{warp_core => galaxy_core}/src/host_id.rs | 0 .../src/interval_timer.rs | 2 +- .../src/interval_timer_tests.rs | 0 crates/{warp_core => galaxy_core}/src/lib.rs | 0 .../{warp_core => galaxy_core}/src/macos.rs | 0 .../src/operating_system_info.rs | 4 +- .../{warp_core => galaxy_core}/src/paths.rs | 6 +- .../src/paths_tests.rs | 0 .../src/platform.rs | 0 .../src/safe_log.rs | 0 .../src/semantic_selection/mod.rs | 4 +- .../src/semantic_selection/mod_test.rs | 0 .../src/session_id.rs | 2 +- .../src/sync_queue.rs | 4 +- .../src/sync_queue_tests.rs | 2 +- .../src/telemetry.rs | 12 +- .../src/ui/appearance.rs | 4 +- .../src/ui/builder.rs | 34 +- .../src/ui/color/blend.rs | 2 +- .../src/ui/color/color_tests.rs | 0 .../src/ui/color/contrast.rs | 2 +- .../src/ui/color/contrast_tests.rs | 0 .../src/ui/color/hex_color.rs | 2 +- .../src/ui/color/mod.rs | 2 +- .../src/ui/external_product_icon.rs | 4 +- .../src/ui/icons.rs | 8 +- .../{warp_core => galaxy_core}/src/ui/mod.rs | 0 .../src/ui/theme/color.rs | 4 +- .../src/ui/theme/mod.rs | 10 +- .../src/ui/theme/phenomenon.rs | 2 +- .../src/ui/theme/theme_tests.rs | 0 .../src/user_preferences.rs | 8 +- .../Cargo.toml | 2 +- .../src/features_test.rs | 0 .../src/lib.rs | 0 .../{warp_files => galaxy_files}/Cargo.toml | 8 +- .../{warp_files => galaxy_files}/src/lib.rs | 14 +- .../src/lib_test.rs | 2 +- .../src/text_file_reader.rs | 0 .../src/text_file_reader_tests.rs | 0 .../test_data/test_file.rs | 0 .../.gitignore | 0 .../Cargo.toml | 2 +- .../api/client-schema.ts | 0 .../api/schema.graphql | 0 .../build.rs | 0 .../graphql.config.js | 0 .../package.json | 0 .../src/lib.rs | 0 .../yarn.lock | 0 crates/{warp_js => galaxy_js}/Cargo.toml | 2 +- .../{warp_js => galaxy_js}/src/convert/mod.rs | 0 .../src/convert/native/mod.rs | 18 +- .../src/convert/native/util.rs | 6 +- .../src/js_function/mod.rs | 0 .../src/js_function/native.rs | 4 +- crates/{warp_js => galaxy_js}/src/lib.rs | 0 .../Cargo.toml | 8 +- .../src/lib.rs | 0 .../src/native.rs | 16 +- .../src/wasm.rs | 2 +- .../Cargo.toml | 4 +- .../examples/test_search.rs | 2 +- .../src/lib.rs | 0 .../src/search.rs | 4 +- .../src/types.rs | 0 .../Cargo.toml | 8 +- .../src/auth/mod.rs | 0 .../src/auth/user_uid.rs | 0 .../src/cloud_object/mod.rs | 100 +- .../src/drive/mod.rs | 0 .../src/drive/sharing.rs | 2 +- .../src/ids.rs | 0 .../src/lib.rs | 0 .../src/persistence/cloud_objects.rs | 0 .../src/persistence/mod.rs | 2 +- .../Cargo.toml | 10 +- .../src/lib.rs | 0 .../src/model/ESCAPE_SEQUENCES.md | 0 .../model/ansi/control_sequence_parameters.rs | 0 .../src/model/ansi/mod.rs | 0 .../src/model/block_id.rs | 0 .../src/model/block_index.rs | 0 .../src/model/char_or_str.rs | 0 .../src/model/escape_sequences.rs | 4 +- .../kitty_keyboard_protocol.rs | 6 +- .../src/model/escape_sequences_test.rs | 4 +- .../src/model/grid/cell.rs | 0 .../src/model/grid/cell_test.rs | 0 .../src/model/grid/cell_type.rs | 0 .../src/model/grid/dimensions.rs | 0 .../model/grid/flat_storage/attribute_map.rs | 0 .../grid/flat_storage/attribute_map_tests.rs | 0 .../src/model/grid/flat_storage/content.rs | 0 .../model/grid/flat_storage/content_tests.rs | 0 .../src/model/grid/flat_storage/grapheme.rs | 0 .../src/model/grid/flat_storage/index.rs | 0 .../model/grid/flat_storage/index_tests.rs | 0 .../src/model/grid/flat_storage/mod.rs | 0 .../src/model/grid/flat_storage/mod_tests.rs | 0 .../model/grid/flat_storage/row_iterator.rs | 0 .../src/model/grid/flat_storage/style.rs | 0 .../src/model/grid/flat_storage/testing.rs | 0 .../src/model/grid/mod.rs | 0 .../src/model/grid/row.rs | 0 .../src/model/indexing.rs | 2 +- .../src/model/indexing_tests.rs | 0 .../src/model/mod.rs | 0 .../src/model/mode.rs | 0 .../src/model/mouse.rs | 2 +- .../src/shared_session.rs | 0 .../src/shell/mod.rs | 10 +- .../src/shell/mod_tests.rs | 0 .../src/shell/unescape.rs | 0 crates/{warp_util => galaxy_util}/Cargo.toml | 4 +- .../{warp_util => galaxy_util}/src/assets.rs | 0 .../src/content_version.rs | 0 .../src/content_version_test.rs | 0 crates/{warp_util => galaxy_util}/src/file.rs | 0 .../src/file_type.rs | 0 crates/{warp_util => galaxy_util}/src/lib.rs | 0 .../src/on_cancel.rs | 0 .../src/on_cancel_tests.rs | 4 +- crates/{warp_util => galaxy_util}/src/path.rs | 8 +- .../src/path_test.rs | 0 .../src/standardized_path.rs | 0 .../src/standardized_path_tests.rs | 0 .../src/user_input.rs | 0 .../{warp_util => galaxy_util}/src/windows.rs | 0 .../src/worktree_names.rs | 0 .../src/worktree_names_tests.rs | 0 .../Cargo.toml | 4 +- .../src/lib.rs | 0 crates/{warpui => galaxyui}/Cargo.toml | 20 +- crates/{warpui => galaxyui}/build.rs | 0 .../examples/animated-gradient-text/main.rs | 6 +- .../animated-gradient-text/root_view.rs | 14 +- .../examples/animated_images/main.rs | 6 +- .../examples/animated_images/root_view.rs | 2 +- .../examples/assets/README.md | 0 .../assets/bundled/svg/block-bulletedlist.svg | 0 .../examples/assets/bundled/svg/gear.svg | 0 .../examples/assets/bundled/svg/search.svg | 0 .../examples/assets/bundled/svg/user.svg | 0 .../examples/assets/numbers-1000ms.gif | Bin .../examples/assets/numbers-750ms.gif | Bin .../examples/assets/rustyrain.gif | Bin .../examples/autotracking}/main.rs | 6 +- .../examples/autotracking/root_view.rs | 8 +- .../examples/blur/main.rs | 6 +- .../examples/blur/root_view.rs | 2 +- .../examples/draggable/main.rs | 6 +- .../examples/draggable/root_view.rs | 4 +- .../example-black-background-box/main.rs | 6 +- .../example-black-background-box/root_view.rs | 2 +- .../examples/flex-expand/main.rs | 6 +- .../examples/flex-expand/root_view.rs | 12 +- .../examples/flex/main.rs | 6 +- .../examples/flex/root_view.rs | 10 +- .../examples/formatted-text/main.rs | 6 +- .../examples/formatted-text/root_view.rs | 12 +- .../examples/frame-capture-test/main.rs | 6 +- .../examples/frame-capture-test/root_view.rs | 6 +- .../examples/image/loading.svg | 0 .../examples/image/main.rs | 6 +- .../examples/image/root_view.rs | 2 +- .../examples/list/main.rs | 6 +- .../examples/list/root_view.rs | 10 +- .../examples/manual-scrolling}/main.rs | 6 +- .../examples/manual-scrolling/root_view.rs | 56 +- .../examples/percentage/main.rs | 6 +- .../examples/percentage/root_view.rs | 8 +- crates/galaxyui/examples/resizable/main.rs | 36 + .../examples/resizable/root_view.rs | 12 +- crates/galaxyui/examples/scrolling/main.rs | 36 + .../examples/scrolling/root_view.rs | 8 +- .../examples/segmented-control/main.rs | 6 +- .../examples/segmented-control/root_view.rs | 18 +- .../examples/selectable/main.rs | 6 +- .../examples/selectable/root_view.rs | 10 +- .../examples/shadows/main.rs | 6 +- .../examples/shadows/root_view.rs | 6 +- crates/galaxyui/examples/slider/main.rs | 36 + .../examples/slider/root_view.rs | 2 +- .../examples/table-sample/.gitignore | 0 .../examples/table-sample/WARP.md | 0 .../examples/table-sample/main.rs | 10 +- .../examples/table-sample/root_view.rs | 28 +- .../examples/typed_actions/main.rs | 6 +- .../examples/typed_actions/root_view.rs | 10 +- .../src/fonts/font_kit.rs | 6 +- crates/{warpui => galaxyui}/src/fonts/mod.rs | 2 +- .../src/fonts/text_layout_test.rs | 0 crates/{warpui => galaxyui}/src/lib.rs | 2 +- .../{warpui => galaxyui}/src/platform/app.rs | 4 +- .../src/platform/headless/app.rs | 2 +- .../src/platform/headless/delegate.rs | 0 .../src/platform/headless/event_loop.rs | 0 .../src/platform/headless/mod.rs | 0 .../src/platform/headless/windowing.rs | 4 +- .../src/platform/linux/mod.rs | 0 .../src/platform/mac/app.rs | 2 +- .../src/platform/mac/clipboard.rs | 2 +- .../src/platform/mac/clipboard_tests.rs | 4 +- .../src/platform/mac/delegate.rs | 14 +- .../src/platform/mac/event.rs | 6 +- .../src/platform/mac/fonts.rs | 8 +- .../src/platform/mac/geometry.rs | 0 .../src/platform/mac/keycode.rs | 4 +- .../src/platform/mac/menus.rs | 6 +- .../src/platform/mac/menus_tests.rs | 8 +- .../src/platform/mac/mod.rs | 0 .../src/platform/mac/notification.rs | 2 +- .../src/platform/mac/objc/.clang-format | 0 .../src/platform/mac/objc/alert.h | 0 .../src/platform/mac/objc/alert.m | 0 .../src/platform/mac/objc/app.h | 0 .../src/platform/mac/objc/app.m | 0 .../src/platform/mac/objc/fullscreen_queue.h | 0 .../src/platform/mac/objc/fullscreen_queue.m | 0 .../src/platform/mac/objc/host_view.h | 0 .../src/platform/mac/objc/host_view.m | 0 .../src/platform/mac/objc/hotkey.h | 0 .../src/platform/mac/objc/hotkey.m | 0 .../src/platform/mac/objc/keycode.m | 0 .../src/platform/mac/objc/menus.h | 0 .../src/platform/mac/objc/menus.m | 0 .../platform/mac/objc/notifications/README.md | 0 .../mac/objc/notifications/notifications.h | 0 .../mac/objc/notifications/notifications.m | 0 .../src/platform/mac/objc/reachability.h | 0 .../src/platform/mac/objc/reachability.m | 0 .../src/platform/mac/objc/window.m | 0 .../src/platform/mac/objc/window_blur.h | 0 .../src/platform/mac/objc/window_blur.m | 0 .../mac/rendering/metal/frame_capture.rs | 2 +- .../rendering/metal/frame_capture_tests.rs | 0 .../src/platform/mac/rendering/metal/mod.rs | 0 .../platform/mac/rendering/metal/renderer.rs | 10 +- .../mac/rendering/metal/renderer_manager.rs | 2 +- .../rendering/metal/shaders/shader_types.h | 0 .../mac/rendering/metal/shaders/shaders.metal | 0 .../src/platform/mac/rendering/mod.rs | 0 .../src/platform/mac/rendering/renderer.rs | 4 +- .../mac/rendering/renderer_manager.rs | 0 .../src/platform/mac/rendering/wgpu/mod.rs | 0 .../platform/mac/rendering/wgpu/renderer.rs | 0 .../mac/rendering/wgpu/renderer_manager.rs | 0 .../src/platform/mac/text_layout.rs | 6 +- .../src/platform/mac/text_layout_test.rs | 0 .../src/platform/mac/utils.rs | 0 .../src/platform/mac/window.rs | 14 +- .../{warpui => galaxyui}/src/platform/mod.rs | 4 +- .../src/platform/wasm/hidden_input.rs | 0 .../src/platform/wasm/mobile_detection/mod.rs | 0 .../wasm/mobile_detection/user_agent.rs | 0 .../wasm/mobile_detection/user_agent_tests.rs | 0 .../src/platform/wasm/mod.rs | 2 +- .../src/platform/wasm/soft_keyboard.rs | 0 .../src/platform/wasm/soft_keyboard_tests.rs | 0 .../src/platform/windows/mod.rs | 0 .../src/rendering/atlas/allocator.rs | 0 .../src/rendering/atlas/manager.rs | 0 .../src/rendering/atlas/mod.rs | 0 .../src/rendering/glyph_cache.rs | 0 .../{warpui => galaxyui}/src/rendering/mod.rs | 6 +- .../src/rendering/wgpu/mod.rs | 2 +- .../src/rendering/wgpu/renderer.rs | 2 +- .../src/rendering/wgpu/renderer/frame.rs | 0 .../src/rendering/wgpu/renderer/glyph.rs | 0 .../src/rendering/wgpu/renderer/image.rs | 0 .../src/rendering/wgpu/renderer/rect.rs | 0 .../src/rendering/wgpu/renderer/util.rs | 0 .../src/rendering/wgpu/resources.rs | 8 +- .../src/rendering/wgpu/resources/quad.rs | 0 .../src/rendering/wgpu/resources/uniforms.rs | 0 .../src/rendering/wgpu/resources_tests.rs | 0 .../src/rendering/wgpu/shader_types.rs | 0 .../rendering/wgpu/shaders/glyph_shader.wgsl | 0 .../rendering/wgpu/shaders/image_shader.wgsl | 0 .../rendering/wgpu/shaders/rect_shader.wgsl | 0 .../rendering/wgpu/texture_with_bind_group.rs | 0 .../{warpui => galaxyui}/src/windowing/mod.rs | 2 +- .../src/windowing/winit/app.rs | 0 .../src/windowing/winit/delegate.rs | 2 +- .../windowing/winit/delegate/global_hotkey.rs | 0 .../winit/event_loop/drag_drop_tests.rs | 0 .../windowing/winit/event_loop/key_events.rs | 2 +- .../winit/event_loop/key_events_tests.rs | 0 .../src/windowing/winit/event_loop/mod.rs | 26 +- .../src/windowing/winit/fonts.rs | 2 +- .../src/windowing/winit/fonts/font_handle.rs | 0 .../src/windowing/winit/fonts/linux.rs | 0 .../windowing/winit/fonts/str_index_map.rs | 0 .../winit/fonts/str_index_map_tests.rs | 0 .../windowing/winit/fonts/swash_rasterizer.rs | 0 .../src/windowing/winit/fonts/text_layout.rs | 0 .../src/windowing/winit/fonts/windows.rs | 0 .../src/windowing/winit/linux/app.rs | 0 .../src/windowing/winit/linux/clipboard.rs | 0 .../windowing/winit/linux/clipboard_tests.rs | 0 .../src/windowing/winit/linux/cursor_theme.rs | 0 .../winit/linux/cursor_theme_tests.rs | 0 .../src/windowing/winit/linux/mod.rs | 0 .../windowing/winit/linux/window_manager.rs | 0 .../winit/linux/zbus/desktop_settings.rs | 0 .../src/windowing/winit/linux/zbus/mod.rs | 0 .../winit/linux/zbus/network_status.rs | 0 .../winit/linux/zbus/suspend_resume.rs | 0 .../src/windowing/winit/mod.rs | 0 .../windowing/winit/notifications/linux.rs | 0 .../src/windowing/winit/notifications/mod.rs | 0 .../src/windowing/winit/notifications/wasm.rs | 0 .../windowing/winit/notifications/windows.rs | 0 .../src/windowing/winit/text_layout_tests.rs | 0 .../src/windowing/winit/wasm.rs | 0 .../src/windowing/winit/window.rs | 0 .../src/windowing/winit/window/windows_wm.rs | 0 .../src/windowing/winit/window/x11.rs | 0 .../src/windowing/winit/windows/clipboard.rs | 0 .../winit/windows/clipboard_tests.rs | 0 .../src/windowing/winit/windows/mod.rs | 0 .../src/windowing/winit/windows/network.rs | 0 .../src/windowing/winit/windows/registry.rs | 0 .../winit/windows/system_caption_buttons.rs | 0 .../winit/windows/window_attribute.rs | 0 .../src/windowing/winit/windows/window_ext.rs | 0 .../{warpui_core => galaxyui_core}/Cargo.toml | 6 +- .../{warpui_core => galaxyui_core}/README.md | 0 .../{warpui_core => galaxyui_core}/build.rs | 0 .../src/accessibility.rs | 2 +- .../src/actions.rs | 0 .../src/app_focus_telemetry.rs | 0 .../src/app_focus_telemetry_test.rs | 0 .../src/assets/asset_cache.rs | 0 .../src/assets/mod.rs | 0 .../src/async/mod.rs | 0 .../src/async/native/executor.rs | 0 .../src/async/native/mod.rs | 0 .../src/async/wasm/executor.rs | 0 .../src/async/wasm/mod.rs | 0 .../src/clipboard.rs | 0 .../src/clipboard_utils.rs | 2 +- .../src/clipboard_utils_tests.rs | 0 .../src/core/action.rs | 0 .../src/core/app.rs | 6 +- .../core/autotracking/autotracking_test.rs | 0 .../src/core/autotracking/mod.rs | 0 .../src/core/autotracking/tracked.rs | 0 .../src/core/entity.rs | 0 .../src/core/mod.rs | 0 .../src/core/mod_test.rs | 0 .../src/core/model/context.rs | 0 .../src/core/model/context_test.rs | 0 .../src/core/model/handle.rs | 0 .../src/core/model/mod.rs | 0 .../src/core/transfer_view_tests.rs | 0 .../src/core/view/context.rs | 0 .../src/core/view/context_test.rs | 0 .../src/core/view/handle.rs | 0 .../src/core/view/mod.rs | 6 +- .../src/core/window.rs | 0 .../src/debug/mod.rs | 0 .../src/debug/root_view.rs | 0 .../src/debug/view_tree_debug_view.rs | 0 .../src/elements/align.rs | 0 .../src/elements/child_view.rs | 0 .../src/elements/clipped.rs | 0 .../src/elements/clipped_scrollable.rs | 0 .../src/elements/clipped_scrollable_test.rs | 0 .../src/elements/clipped_test.rs | 0 .../src/elements/constrained_box.rs | 0 .../src/elements/container.rs | 0 .../src/elements/container_test.rs | 0 .../src/elements/debug.rs | 0 .../src/elements/dismiss.rs | 0 .../src/elements/drag/draggable.rs | 0 .../src/elements/drag/drop_target.rs | 0 .../src/elements/drag/mod.rs | 0 .../src/elements/drag_resize.rs | 0 .../src/elements/empty.rs | 0 .../src/elements/event_handler.rs | 0 .../src/elements/event_handler_test.rs | 0 .../src/elements/flex/WARP.md | 0 .../src/elements/flex/mod.rs | 0 .../src/elements/flex/mod_test.rs | 0 .../src/elements/flex/wrap.rs | 0 .../src/elements/flex/wrap_test.rs | 0 .../src/elements/formatted_text_element.rs | 0 .../elements/formatted_text_element_tests.rs | 0 .../src/elements/hoverable.rs | 0 .../src/elements/hoverable_test.rs | 0 .../src/elements/icon.rs | 0 .../src/elements/image.rs | 0 .../src/elements/image_tests.rs | 0 .../src/elements/list.rs | 0 .../src/elements/list_tests.rs | 0 .../src/elements/min_size.rs | 0 .../src/elements/mod.rs | 0 .../new_scrollable/dual_axis_config.rs | 0 .../src/elements/new_scrollable/mod.rs | 0 .../new_scrollable/scrollable_test.rs | 0 .../new_scrollable/single_axis_config.rs | 0 .../src/elements/new_scrollable/util.rs | 0 .../src/elements/percentage.rs | 0 .../src/elements/rect.rs | 0 .../src/elements/resizable.rs | 0 .../src/elements/scrollable.rs | 2 +- .../src/elements/scrollable_test.rs | 0 .../src/elements/selectable_area.rs | 0 .../src/elements/shared_scrollbar.rs | 0 .../src/elements/shimmering_text.rs | 0 .../src/elements/shimmering_text/config.rs | 0 .../elements/shimmering_text/glyph_index.rs | 0 .../src/elements/size_constraint_switch.rs | 0 .../elements/size_constraint_switch_test.rs | 0 .../src/elements/stack/mod.rs | 0 .../src/elements/stack/mod_test.rs | 0 .../src/elements/stack/offset_positioning.rs | 0 .../elements/stack/offset_positioning_test.rs | 0 .../src/elements/stack/overlay.rs | 0 .../src/elements/stack/positioned.rs | 0 .../src/elements/stack/save_position.rs | 0 .../src/elements/table/mod.rs | 0 .../src/elements/table/mod_tests.rs | 0 .../src/elements/text.rs | 0 .../src/elements/text_test.rs | 0 .../src/elements/uniform_list.rs | 0 .../src/elements/uniform_list_test.rs | 0 .../src/elements/viewported_list.rs | 0 .../src/elements/viewported_list_tests.rs | 0 .../src/event.rs | 0 .../src/fonts.rs | 0 .../src/fonts/canvas.rs | 0 .../src/fonts/external_fallback.rs | 0 .../src/fonts/metrics.rs | 0 .../src/fonts/text_layout_system.rs | 0 .../src/fonts_test.rs | 0 .../src/image_cache.rs | 0 .../src/image_cache_tests.rs | 2 +- .../src/integration/action_log.rs | 0 .../src/integration/artifacts.rs | 0 .../src/integration/capture_recorder.rs | 0 .../src/integration/driver.rs | 0 .../src/integration/mod.rs | 0 .../src/integration/overlay.rs | 0 .../src/integration/step.rs | 0 .../src/integration/video_recorder.rs | 0 .../src/keymap.rs | 2 +- .../src/keymap/context.rs | 0 .../src/keymap/context_test.rs | 0 .../src/keymap/matcher.rs | 0 .../src/keymap/matcher_test.rs | 0 .../src/keymap_test.rs | 0 .../{warpui_core => galaxyui_core}/src/lib.rs | 0 .../src/modals.rs | 0 .../src/notification.rs | 0 .../src/platform/app.rs | 0 .../src/platform/file_picker.rs | 0 .../src/platform/keyboard.rs | 0 .../src/platform/menu.rs | 0 .../src/platform/mod.rs | 2 +- .../src/platform/test/app.rs | 0 .../src/platform/test/delegate.rs | 0 .../src/platform/test/mod.rs | 0 .../src/platform/wasm.rs | 0 .../src/prelude.rs | 0 .../src/presenter.rs | 0 .../src/presenter_tests.rs | 0 .../src/rendering/gpu_info.rs | 0 .../src/rendering/mod.rs | 0 .../src/rendering/texture_cache.rs | 0 .../src/rendering/texture_cache_tests.rs | 0 .../src/scene.rs | 0 .../src/scene_test.rs | 0 .../src/telemetry/event_store.rs | 0 .../src/telemetry/event_store_test.rs | 0 .../src/telemetry/mod.rs | 0 .../src/test.rs | 0 .../src/text/header.rs | 0 .../src/text/mod.rs | 0 .../src/text/mod_tests.rs | 0 .../src/text/point.rs | 0 .../src/text/word_boundaries.rs | 0 .../src/text/word_boundaries_tests.rs | 0 .../src/text/words.rs | 0 .../src/text_layout.rs | 0 .../src/text_layout_test.rs | 0 .../src/text_selection_utils.rs | 0 .../src/time.rs | 0 .../src/traces.rs | 0 .../src/ui_components/button.rs | 0 .../src/ui_components/checkbox.rs | 0 .../src/ui_components/chip.rs | 0 .../src/ui_components/components.rs | 0 .../src/ui_components/components_test.rs | 0 .../src/ui_components/keyboard_shortcut.rs | 0 .../src/ui_components/link.rs | 0 .../src/ui_components/list.rs | 0 .../src/ui_components/mod.rs | 0 .../src/ui_components/progress_bar.rs | 0 .../src/ui_components/radio_buttons.rs | 0 .../src/ui_components/segmented_control.rs | 0 .../src/ui_components/slider.rs | 0 .../src/ui_components/switch.rs | 0 .../src/ui_components/text.rs | 0 .../src/ui_components/text_input.rs | 0 .../src/ui_components/toggle_button.rs | 0 .../src/ui_components/toggle_menu.rs | 0 .../src/ui_components/tool_tip.rs | 0 .../src/units.rs | 0 .../src/util.rs | 0 .../src/util_test.rs | 0 .../src/windowing/mod.rs | 0 .../src/windowing/state.rs | 0 .../src/windowing/system.rs | 0 .../src/zoom.rs | 0 .../test_data/animated.webp | Bin .../test_data/local.png | Bin .../Cargo.toml | 6 +- .../src/lib.rs | 0 .../src/secure_storage/linux.rs | 0 .../src/secure_storage/linux_test.rs | 0 .../src/secure_storage/mac.rs | 0 .../src/secure_storage/mod.rs | 26 +- .../src/secure_storage/noop.rs | 0 .../src/secure_storage/windows.rs | 0 .../src/secure_storage/windows_test.rs | 0 .../src/user_preferences/file_backed.rs | 0 .../src/user_preferences/in_memory.rs | 0 .../src/user_preferences/local_storage.rs | 0 .../src/user_preferences/mod.rs | 0 .../src/user_preferences/registry_backed.rs | 0 .../src/user_preferences/toml_backed.rs | 0 .../src/user_preferences/toml_backed_tests.rs | 0 .../src/user_preferences/user_defaults.rs | 2 +- crates/graphql/Cargo.toml | 6 +- crates/graphql/build.rs | 2 +- crates/graphql/src/api/mod.rs | 2 +- crates/graphql/src/client.rs | 2 +- crates/handlebars/Cargo.toml | 2 +- crates/handlebars/src/parser_test.rs | 2 +- crates/http_client/Cargo.toml | 2 +- crates/http_client/src/lib.rs | 4 +- crates/http_server/Cargo.toml | 2 +- crates/http_server/src/lib.rs | 2 +- crates/input_classifier/Cargo.toml | 2 +- crates/input_classifier/src/bin/evaluate.rs | 2 +- crates/input_classifier/src/fasttext/mod.rs | 4 +- .../src/heuristic_classifier/mod.rs | 4 +- .../src/heuristic_classifier/mod_tests.rs | 2 +- crates/input_classifier/src/lib.rs | 4 +- crates/input_classifier/src/onnx/candle.rs | 2 +- crates/input_classifier/src/onnx/mod.rs | 4 +- crates/input_classifier/src/onnx/ort.rs | 2 +- crates/input_classifier/src/test_utils.rs | 4 +- crates/input_classifier/src/util.rs | 2 +- crates/integration/Cargo.toml | 14 +- crates/integration/src/bin/integration.rs | 10 +- crates/integration/src/builder.rs | 14 +- crates/integration/src/lib.rs | 4 +- crates/integration/src/test.rs | 58 +- crates/integration/src/test/agent_mode.rs | 6 +- crates/integration/src/test/ai_assistant.rs | 4 +- .../integration/src/test/block_filtering.rs | 22 +- crates/integration/src/test/bootstrapping.rs | 4 +- crates/integration/src/test/code_review.rs | 6 +- crates/integration/src/test/ctrl_d.rs | 4 +- crates/integration/src/test/file_tree.rs | 4 +- crates/integration/src/test/goto_line.rs | 4 +- crates/integration/src/test/history.rs | 4 +- crates/integration/src/test/input.rs | 8 +- .../integration/src/test/keyboard_protocol.rs | 14 +- crates/integration/src/test/launch_configs.rs | 46 +- crates/integration/src/test/notebooks.rs | 4 +- .../integration/src/test/pane_restoration.rs | 46 +- .../src/test/preview_config_migration.rs | 4 +- crates/integration/src/test/rules.rs | 2 +- crates/integration/src/test/secrets.rs | 6 +- .../src/test/session_restoration.rs | 4 +- .../src/test/settings_file_errors.rs | 6 +- .../src/test/settings_file_hot_reload.rs | 6 +- .../src/test/settings_file_migration.rs | 6 +- .../integration/src/test/settings_private.rs | 8 +- crates/integration/src/test/ssh.rs | 4 +- crates/integration/src/test/subshell.rs | 18 +- crates/integration/src/test/sync_inputs.rs | 4 +- crates/integration/src/test/typeahead.rs | 6 +- .../integration/src/test/video_recording.rs | 10 +- crates/integration/src/test/websockets.rs | 2 +- crates/integration/src/test/workflows.rs | 6 +- crates/integration/src/test/workspace.rs | 10 +- crates/integration/src/user_defaults.rs | 4 +- crates/integration/src/util.rs | 6 +- crates/integration/tests/common/mod.rs | 2 +- crates/ipc/Cargo.toml | 2 +- crates/ipc/src/client.rs | 2 +- crates/ipc/src/native.rs | 2 +- crates/ipc/src/server.rs | 2 +- crates/isolation_platform/Cargo.toml | 4 +- crates/isolation_platform/src/lib.rs | 2 +- crates/isolation_platform/src/namespace.rs | 2 +- crates/jsonrpc/Cargo.toml | 2 +- crates/jsonrpc/src/service.rs | 2 +- crates/jsonrpc/src/service_tests.rs | 2 +- crates/languages/Cargo.toml | 2 +- crates/languages/src/lib.rs | 2 +- crates/lsp/Cargo.toml | 6 +- crates/lsp/examples/rust-lsp/main.rs | 4 +- crates/lsp/src/install.rs | 2 +- crates/lsp/src/lib.rs | 4 +- crates/lsp/src/manager.rs | 2 +- crates/lsp/src/model.rs | 6 +- crates/lsp/src/server_repo_watcher.rs | 4 +- crates/lsp/src/servers/clangd.rs | 2 +- crates/lsp/src/servers/pyright.rs | 4 +- crates/lsp/src/servers/rust.rs | 2 +- .../src/servers/typescript_language_server.rs | 4 +- crates/lsp/src/service.rs | 6 +- crates/lsp/src/transport.rs | 2 +- crates/managed_secrets/Cargo.toml | 10 +- crates/managed_secrets/src/client.rs | 4 +- crates/managed_secrets/src/envelope.rs | 2 +- crates/managed_secrets/src/gcp.rs | 2 +- crates/managed_secrets/src/manager.rs | 10 +- crates/managed_secrets/src/secret_value.rs | 2 +- crates/managed_secrets_wasm/Cargo.toml | 2 +- crates/managed_secrets_wasm/src/lib.rs | 2 +- crates/markdown_parser/src/lib.rs | 6 +- crates/node_runtime/Cargo.toml | 2 +- crates/node_runtime/src/lib.rs | 4 +- crates/onboarding/Cargo.toml | 8 +- crates/onboarding/examples/callout.rs | 14 +- crates/onboarding/examples/callout_flow.rs | 14 +- .../onboarding/src/agent_onboarding_view.rs | 18 +- crates/onboarding/src/bin/main.rs | 16 +- crates/onboarding/src/callout/mod.rs | 2 +- crates/onboarding/src/callout/model.rs | 4 +- crates/onboarding/src/callout/view.rs | 4 +- .../src/components/onboarding_callout.rs | 4 +- crates/onboarding/src/lib.rs | 2 +- crates/onboarding/src/model.rs | 14 +- crates/onboarding/src/slides/agent_slide.rs | 34 +- crates/onboarding/src/slides/bottom_nav.rs | 4 +- .../onboarding/src/slides/customize_slide.rs | 8 +- .../src/slides/free_user_no_ai_slide.rs | 20 +- .../onboarding/src/slides/intention_slide.rs | 16 +- crates/onboarding/src/slides/intro_slide.rs | 8 +- crates/onboarding/src/slides/layout.rs | 2 +- .../onboarding/src/slides/onboarding_slide.rs | 2 +- crates/onboarding/src/slides/progress_dots.rs | 4 +- crates/onboarding/src/slides/project_slide.rs | 20 +- crates/onboarding/src/slides/slide_content.rs | 4 +- .../src/slides/theme_picker_slide.rs | 8 +- .../src/slides/third_party_slide.rs | 8 +- crates/onboarding/src/slides/toggle_card.rs | 8 +- .../onboarding/src/slides/two_line_button.rs | 6 +- crates/onboarding/src/telemetry.rs | 6 +- crates/onboarding/src/telemetry_provider.rs | 4 +- crates/onboarding/src/visuals/agent_visual.rs | 4 +- .../src/visuals/intention_terminal_visual.rs | 4 +- .../src/visuals/intention_visual.rs | 4 +- .../src/visuals/onboarding_visual.rs | 12 +- .../onboarding/src/visuals/project_visual.rs | 6 +- .../src/visuals/theme_picker_mock_visual.rs | 4 +- crates/remote_server/Cargo.toml | 6 +- crates/remote_server/src/auth.rs | 2 +- crates/remote_server/src/client/mod.rs | 6 +- crates/remote_server/src/client_tests.rs | 4 +- crates/remote_server/src/host_id.rs | 4 +- crates/remote_server/src/manager.rs | 6 +- .../remote_server/src/repo_metadata_proto.rs | 2 +- crates/remote_server/src/setup.rs | 6 +- crates/remote_server/src/ssh.rs | 2 +- crates/remote_server/src/transport.rs | 2 +- crates/repo_metadata/Cargo.toml | 8 +- crates/repo_metadata/src/entry.rs | 2 +- crates/repo_metadata/src/file_tree_store.rs | 4 +- .../src/file_tree_store/file_tree_state.rs | 2 +- .../src/file_tree_store_tests.rs | 2 +- crates/repo_metadata/src/file_tree_update.rs | 2 +- .../src/file_tree_update_tests.rs | 2 +- crates/repo_metadata/src/lib.rs | 8 +- crates/repo_metadata/src/local_model.rs | 12 +- crates/repo_metadata/src/local_model_test.rs | 12 +- crates/repo_metadata/src/remote_model.rs | 6 +- crates/repo_metadata/src/repositories.rs | 8 +- .../repo_metadata/src/repositories_tests.rs | 4 +- crates/repo_metadata/src/repository.rs | 10 +- .../src/repository_identifier.rs | 4 +- crates/repo_metadata/src/telemetry.rs | 4 +- crates/repo_metadata/src/watcher.rs | 4 +- crates/repo_metadata/src/watcher_tests.rs | 6 +- crates/repo_metadata/src/wrapper_model.rs | 8 +- crates/serve-wasm/src/main.rs | 2 +- crates/settings/Cargo.toml | 8 +- crates/settings/src/lib.rs | 20 +- crates/settings/src/macros.rs | 40 +- crates/settings/src/macros_tests.rs | 64 +- crates/settings/src/manager.rs | 4 +- crates/settings/src/mod_tests.rs | 34 +- crates/settings/src/schema.rs | 2 +- crates/simple_logger/Cargo.toml | 4 +- crates/simple_logger/src/lib.rs | 2 +- crates/simple_logger/src/manager.rs | 8 +- crates/simple_logger/src/manager_tests.rs | 2 +- crates/syntax_tree/Cargo.toml | 10 +- crates/syntax_tree/src/lib.rs | 6 +- .../src/queries/highlight_query.rs | 4 +- .../syntax_tree/src/queries/indent_query.rs | 4 +- .../src/queries/indent_query_tests.rs | 14 +- crates/ui_components/Cargo.toml | 6 +- crates/ui_components/examples/library.rs | 38 +- crates/ui_components/src/button.rs | 6 +- crates/ui_components/src/button/params.rs | 6 +- crates/ui_components/src/button/themes.rs | 2 +- crates/ui_components/src/dialog.rs | 4 +- crates/ui_components/src/keyboard_shortcut.rs | 4 +- crates/ui_components/src/lib.rs | 26 +- crates/ui_components/src/lightbox.rs | 4 +- crates/ui_components/src/switch.rs | 4 +- crates/ui_components/src/tooltip.rs | 6 +- crates/vim/Cargo.toml | 4 +- crates/vim/src/find_char.rs | 2 +- crates/vim/src/matching_brackets.rs | 2 +- crates/vim/src/paragraph_iterator.rs | 2 +- crates/vim/src/text_objects/block.rs | 2 +- crates/vim/src/text_objects/paragraph.rs | 2 +- crates/vim/src/text_objects/quote.rs | 2 +- crates/vim/src/text_objects/word.rs | 2 +- crates/vim/src/vim.rs | 8 +- crates/vim/src/word_iterator.rs | 2 +- crates/voice_input/Cargo.toml | 2 +- crates/voice_input/src/lib.rs | 6 +- crates/warpui/examples/resizable/main.rs | 36 - crates/warpui/examples/scrolling/main.rs | 36 - crates/warpui/examples/slider/main.rs | 36 - crates/watcher/Cargo.toml | 2 +- crates/watcher/src/home_watcher.rs | 2 +- crates/watcher/src/lib.rs | 2 +- plans/galaxy-refactor.md | 297 +++ script/macos/bundle | 34 +- 2433 files changed, 14208 insertions(+), 9409 deletions(-) create mode 100644 REVIEW.md create mode 100644 app/assets/async/jpg/Galaxy_AI_Logo.jpg create mode 100644 app/assets/async/png/Galaxy_AI_Logo.png create mode 100644 app/src/ai/bedrock/diagnostic.rs create mode 100644 app/src/ai/bedrock/e2e_tests.rs create mode 100644 app/src/ai/bedrock/integration_tests.rs create mode 100644 app/src/ai/bedrock/test_fixtures/sample_project/Cargo.toml create mode 100644 app/src/ai/bedrock/test_fixtures/sample_project/README.md create mode 100644 app/src/ai/bedrock/test_fixtures/sample_project/src/lib.rs create mode 100644 app/src/ai/bedrock/test_fixtures/sample_project/src/main.rs create mode 100644 app/src/ai/bedrock/test_fixtures/sample_project/src/utils.rs rename crates/{warp_cli => galaxy_cli}/Cargo.toml (87%) rename crates/{warp_cli => galaxy_cli}/build.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/agent.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/artifact.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/completions.rs (94%) rename crates/{warp_cli => galaxy_cli}/src/config_file.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/environment.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/federate.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/harness_support.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/integration.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/json_filter.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/json_filter_tests.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/lib.rs (97%) rename crates/{warp_cli => galaxy_cli}/src/lib_tests.rs (99%) rename crates/{warp_cli => galaxy_cli}/src/mcp.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/mcp_tests.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/model.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/process_handle.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/provider.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/schedule.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/scope.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/secret.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/share.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/share_tests.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/skill.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/skill_tests.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/task.rs (100%) rename crates/{warp_cli => galaxy_cli}/src/task_tests.rs (100%) rename crates/{warp_completer => galaxy_completer}/Cargo.toml (82%) rename crates/{warp_completer => galaxy_completer}/src/completer/coalesce.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/context/mod.rs (98%) rename crates/{warp_completer => galaxy_completer}/src/completer/context/v2.rs (95%) rename crates/{warp_completer => galaxy_completer}/src/completer/describe.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/describe_test.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/argument/legacy.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/argument/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/argument/v2.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/command.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/flag/legacy.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/flag/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/flag/v2.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/legacy.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/path.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/path_test.rs (94%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/test.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/v2.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/engine/variable.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/matchers.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/matchers_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/alias.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/alias_test.rs (86%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/legacy.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/mod.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/priority/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/priority/priority_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/priority/v2.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/test.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/suggest/v2.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/completer/testing/mod.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/completer/testing/v2.rs (97%) rename crates/{warp_completer => galaxy_completer}/src/completer/tests.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/lib.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/meta.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/meta_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/README.md (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/errors.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/hir/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/legacy.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/convert.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/iter.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/lexer.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/lexer_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/mod.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/parser.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/parser_test.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/parsers/simple/token.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/parsers/test.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/parsers/v2.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/clap.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/legacy/mod.rs (95%) rename crates/{warp_completer => galaxy_completer}/src/signatures/legacy/registry.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/legacy/registry_test.rs (97%) rename crates/{warp_completer => galaxy_completer}/src/signatures/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/testing/legacy.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/signatures/testing/mod.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/testing/v2.rs (99%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/js.rs (92%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/lookup.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/lookup_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/mod.rs (98%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/registry.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/registry_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/signatures/v2/signatures_test.rs (100%) rename crates/{warp_completer => galaxy_completer}/src/util.rs (100%) rename crates/{warp_core => galaxy_core}/Cargo.toml (90%) rename crates/{warp_core => galaxy_core}/build.rs (100%) rename crates/{warp_core => galaxy_core}/src/app_id.rs (100%) rename crates/{warp_core => galaxy_core}/src/app_id_test.rs (100%) rename crates/{warp_core => galaxy_core}/src/assertions.rs (100%) rename crates/{warp_core => galaxy_core}/src/channel/config.rs (93%) rename crates/{warp_core => galaxy_core}/src/channel/mod.rs (87%) rename crates/{warp_core => galaxy_core}/src/channel/state.rs (99%) rename crates/{warp_core => galaxy_core}/src/channel/state_tests.rs (100%) rename crates/{warp_core => galaxy_core}/src/command.rs (100%) rename crates/{warp_core => galaxy_core}/src/context_flag.rs (100%) rename crates/{warp_core => galaxy_core}/src/errors.rs (100%) rename crates/{warp_core => galaxy_core}/src/errors/anyhow.rs (100%) rename crates/{warp_core => galaxy_core}/src/errors/registration.rs (100%) rename crates/{warp_core => galaxy_core}/src/errors/reqwest.rs (100%) rename crates/{warp_core => galaxy_core}/src/errors/tokio.rs (100%) rename crates/{warp_core => galaxy_core}/src/errors/websocket.rs (100%) rename crates/{warp_core => galaxy_core}/src/execution_mode.rs (98%) rename crates/{warp_core => galaxy_core}/src/features.rs (85%) rename crates/{warp_core => galaxy_core}/src/host_id.rs (100%) rename crates/{warp_core => galaxy_core}/src/interval_timer.rs (98%) rename crates/{warp_core => galaxy_core}/src/interval_timer_tests.rs (100%) rename crates/{warp_core => galaxy_core}/src/lib.rs (100%) rename crates/{warp_core => galaxy_core}/src/macos.rs (100%) rename crates/{warp_core => galaxy_core}/src/operating_system_info.rs (98%) rename crates/{warp_core => galaxy_core}/src/paths.rs (98%) rename crates/{warp_core => galaxy_core}/src/paths_tests.rs (100%) rename crates/{warp_core => galaxy_core}/src/platform.rs (100%) rename crates/{warp_core => galaxy_core}/src/safe_log.rs (100%) rename crates/{warp_core => galaxy_core}/src/semantic_selection/mod.rs (99%) rename crates/{warp_core => galaxy_core}/src/semantic_selection/mod_test.rs (100%) rename crates/{warp_core => galaxy_core}/src/session_id.rs (87%) rename crates/{warp_core => galaxy_core}/src/sync_queue.rs (99%) rename crates/{warp_core => galaxy_core}/src/sync_queue_tests.rs (99%) rename crates/{warp_core => galaxy_core}/src/telemetry.rs (95%) rename crates/{warp_core => galaxy_core}/src/ui/appearance.rs (99%) rename crates/{warp_core => galaxy_core}/src/ui/builder.rs (98%) rename crates/{warp_core => galaxy_core}/src/ui/color/blend.rs (98%) rename crates/{warp_core => galaxy_core}/src/ui/color/color_tests.rs (100%) rename crates/{warp_core => galaxy_core}/src/ui/color/contrast.rs (99%) rename crates/{warp_core => galaxy_core}/src/ui/color/contrast_tests.rs (100%) rename crates/{warp_core => galaxy_core}/src/ui/color/hex_color.rs (98%) rename crates/{warp_core => galaxy_core}/src/ui/color/mod.rs (99%) rename crates/{warp_core => galaxy_core}/src/ui/external_product_icon.rs (92%) rename crates/{warp_core => galaxy_core}/src/ui/icons.rs (98%) rename crates/{warp_core => galaxy_core}/src/ui/mod.rs (100%) rename crates/{warp_core => galaxy_core}/src/ui/theme/color.rs (99%) rename crates/{warp_core => galaxy_core}/src/ui/theme/mod.rs (98%) rename crates/{warp_core => galaxy_core}/src/ui/theme/phenomenon.rs (99%) rename crates/{warp_core => galaxy_core}/src/ui/theme/theme_tests.rs (100%) rename crates/{warp_core => galaxy_core}/src/user_preferences.rs (82%) rename crates/{warp_features => galaxy_features}/Cargo.toml (89%) rename crates/{warp_features => galaxy_features}/src/features_test.rs (100%) rename crates/{warp_features => galaxy_features}/src/lib.rs (100%) rename crates/{warp_files => galaxy_files}/Cargo.toml (83%) rename crates/{warp_files => galaxy_files}/src/lib.rs (99%) rename crates/{warp_files => galaxy_files}/src/lib_test.rs (99%) rename crates/{warp_files => galaxy_files}/src/text_file_reader.rs (100%) rename crates/{warp_files => galaxy_files}/src/text_file_reader_tests.rs (100%) rename crates/{warp_files => galaxy_files}/test_data/test_file.rs (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/.gitignore (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/Cargo.toml (88%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/api/client-schema.ts (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/api/schema.graphql (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/build.rs (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/graphql.config.js (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/package.json (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/src/lib.rs (100%) rename crates/{warp_graphql_schema => galaxy_graphql_schema}/yarn.lock (100%) rename crates/{warp_js => galaxy_js}/Cargo.toml (95%) rename crates/{warp_js => galaxy_js}/src/convert/mod.rs (100%) rename crates/{warp_js => galaxy_js}/src/convert/native/mod.rs (85%) rename crates/{warp_js => galaxy_js}/src/convert/native/util.rs (94%) rename crates/{warp_js => galaxy_js}/src/js_function/mod.rs (100%) rename crates/{warp_js => galaxy_js}/src/js_function/native.rs (97%) rename crates/{warp_js => galaxy_js}/src/lib.rs (100%) rename crates/{warp_logging => galaxy_logging}/Cargo.toml (81%) rename crates/{warp_logging => galaxy_logging}/src/lib.rs (100%) rename crates/{warp_logging => galaxy_logging}/src/native.rs (97%) rename crates/{warp_logging => galaxy_logging}/src/wasm.rs (98%) rename crates/{warp_ripgrep => galaxy_ripgrep}/Cargo.toml (93%) rename crates/{warp_ripgrep => galaxy_ripgrep}/examples/test_search.rs (83%) rename crates/{warp_ripgrep => galaxy_ripgrep}/src/lib.rs (100%) rename crates/{warp_ripgrep => galaxy_ripgrep}/src/search.rs (98%) rename crates/{warp_ripgrep => galaxy_ripgrep}/src/types.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/Cargo.toml (85%) rename crates/{warp_server_client => galaxy_server_client}/src/auth/mod.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/src/auth/user_uid.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/src/cloud_object/mod.rs (89%) rename crates/{warp_server_client => galaxy_server_client}/src/drive/mod.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/src/drive/sharing.rs (99%) rename crates/{warp_server_client => galaxy_server_client}/src/ids.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/src/lib.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/src/persistence/cloud_objects.rs (100%) rename crates/{warp_server_client => galaxy_server_client}/src/persistence/mod.rs (99%) rename crates/{warp_terminal => galaxy_terminal}/Cargo.toml (86%) rename crates/{warp_terminal => galaxy_terminal}/src/lib.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/ESCAPE_SEQUENCES.md (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/ansi/control_sequence_parameters.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/ansi/mod.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/block_id.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/block_index.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/char_or_str.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/escape_sequences.rs (99%) rename crates/{warp_terminal => galaxy_terminal}/src/model/escape_sequences/kitty_keyboard_protocol.rs (99%) rename crates/{warp_terminal => galaxy_terminal}/src/model/escape_sequences_test.rs (99%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/cell.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/cell_test.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/cell_type.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/dimensions.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/attribute_map.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/attribute_map_tests.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/content.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/content_tests.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/grapheme.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/index.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/index_tests.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/mod.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/mod_tests.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/row_iterator.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/style.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/flat_storage/testing.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/mod.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/grid/row.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/indexing.rs (99%) rename crates/{warp_terminal => galaxy_terminal}/src/model/indexing_tests.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/mod.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/mode.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/model/mouse.rs (96%) rename crates/{warp_terminal => galaxy_terminal}/src/shared_session.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/shell/mod.rs (99%) rename crates/{warp_terminal => galaxy_terminal}/src/shell/mod_tests.rs (100%) rename crates/{warp_terminal => galaxy_terminal}/src/shell/unescape.rs (100%) rename crates/{warp_util => galaxy_util}/Cargo.toml (94%) rename crates/{warp_util => galaxy_util}/src/assets.rs (100%) rename crates/{warp_util => galaxy_util}/src/content_version.rs (100%) rename crates/{warp_util => galaxy_util}/src/content_version_test.rs (100%) rename crates/{warp_util => galaxy_util}/src/file.rs (100%) rename crates/{warp_util => galaxy_util}/src/file_type.rs (100%) rename crates/{warp_util => galaxy_util}/src/lib.rs (100%) rename crates/{warp_util => galaxy_util}/src/on_cancel.rs (100%) rename crates/{warp_util => galaxy_util}/src/on_cancel_tests.rs (90%) rename crates/{warp_util => galaxy_util}/src/path.rs (99%) rename crates/{warp_util => galaxy_util}/src/path_test.rs (100%) rename crates/{warp_util => galaxy_util}/src/standardized_path.rs (100%) rename crates/{warp_util => galaxy_util}/src/standardized_path_tests.rs (100%) rename crates/{warp_util => galaxy_util}/src/user_input.rs (100%) rename crates/{warp_util => galaxy_util}/src/windows.rs (100%) rename crates/{warp_util => galaxy_util}/src/worktree_names.rs (100%) rename crates/{warp_util => galaxy_util}/src/worktree_names_tests.rs (100%) rename crates/{warp_web_event_bus => galaxy_web_event_bus}/Cargo.toml (81%) rename crates/{warp_web_event_bus => galaxy_web_event_bus}/src/lib.rs (100%) rename crates/{warpui => galaxyui}/Cargo.toml (91%) rename crates/{warpui => galaxyui}/build.rs (100%) rename crates/{warpui => galaxyui}/examples/animated-gradient-text/main.rs (86%) rename crates/{warpui => galaxyui}/examples/animated-gradient-text/root_view.rs (84%) rename crates/{warpui => galaxyui}/examples/animated_images/main.rs (84%) rename crates/{warpui => galaxyui}/examples/animated_images/root_view.rs (99%) rename crates/{warpui => galaxyui}/examples/assets/README.md (100%) rename crates/{warpui => galaxyui}/examples/assets/bundled/svg/block-bulletedlist.svg (100%) rename crates/{warpui => galaxyui}/examples/assets/bundled/svg/gear.svg (100%) rename crates/{warpui => galaxyui}/examples/assets/bundled/svg/search.svg (100%) rename crates/{warpui => galaxyui}/examples/assets/bundled/svg/user.svg (100%) rename crates/{warpui => galaxyui}/examples/assets/numbers-1000ms.gif (100%) rename crates/{warpui => galaxyui}/examples/assets/numbers-750ms.gif (100%) rename crates/{warpui => galaxyui}/examples/assets/rustyrain.gif (100%) rename crates/{warpui/examples/manual-scrolling => galaxyui/examples/autotracking}/main.rs (88%) rename crates/{warpui => galaxyui}/examples/autotracking/root_view.rs (97%) rename crates/{warpui => galaxyui}/examples/blur/main.rs (90%) rename crates/{warpui => galaxyui}/examples/blur/root_view.rs (86%) rename crates/{warpui => galaxyui}/examples/draggable/main.rs (86%) rename crates/{warpui => galaxyui}/examples/draggable/root_view.rs (98%) rename crates/{warpui => galaxyui}/examples/example-black-background-box/main.rs (86%) rename crates/{warpui => galaxyui}/examples/example-black-background-box/root_view.rs (86%) rename crates/{warpui => galaxyui}/examples/flex-expand/main.rs (88%) rename crates/{warpui => galaxyui}/examples/flex-expand/root_view.rs (98%) rename crates/{warpui => galaxyui}/examples/flex/main.rs (88%) rename crates/{warpui => galaxyui}/examples/flex/root_view.rs (98%) rename crates/{warpui => galaxyui}/examples/formatted-text/main.rs (85%) rename crates/{warpui => galaxyui}/examples/formatted-text/root_view.rs (96%) rename crates/{warpui => galaxyui}/examples/frame-capture-test/main.rs (86%) rename crates/{warpui => galaxyui}/examples/frame-capture-test/root_view.rs (99%) rename crates/{warpui => galaxyui}/examples/image/loading.svg (100%) rename crates/{warpui => galaxyui}/examples/image/main.rs (67%) rename crates/{warpui => galaxyui}/examples/image/root_view.rs (99%) rename crates/{warpui => galaxyui}/examples/list/main.rs (88%) rename crates/{warpui => galaxyui}/examples/list/root_view.rs (97%) rename crates/{warpui/examples/autotracking => galaxyui/examples/manual-scrolling}/main.rs (88%) rename crates/{warpui => galaxyui}/examples/manual-scrolling/root_view.rs (82%) rename crates/{warpui => galaxyui}/examples/percentage/main.rs (88%) rename crates/{warpui => galaxyui}/examples/percentage/root_view.rs (96%) create mode 100644 crates/galaxyui/examples/resizable/main.rs rename crates/{warpui => galaxyui}/examples/resizable/root_view.rs (94%) create mode 100644 crates/galaxyui/examples/scrolling/main.rs rename crates/{warpui => galaxyui}/examples/scrolling/root_view.rs (94%) rename crates/{warpui => galaxyui}/examples/segmented-control/main.rs (86%) rename crates/{warpui => galaxyui}/examples/segmented-control/root_view.rs (90%) rename crates/{warpui => galaxyui}/examples/selectable/main.rs (85%) rename crates/{warpui => galaxyui}/examples/selectable/root_view.rs (98%) rename crates/{warpui => galaxyui}/examples/shadows/main.rs (83%) rename crates/{warpui => galaxyui}/examples/shadows/root_view.rs (98%) create mode 100644 crates/galaxyui/examples/slider/main.rs rename crates/{warpui => galaxyui}/examples/slider/root_view.rs (99%) rename crates/{warpui => galaxyui}/examples/table-sample/.gitignore (100%) rename crates/{warpui => galaxyui}/examples/table-sample/WARP.md (100%) rename crates/{warpui => galaxyui}/examples/table-sample/main.rs (91%) rename crates/{warpui => galaxyui}/examples/table-sample/root_view.rs (98%) rename crates/{warpui => galaxyui}/examples/typed_actions/main.rs (90%) rename crates/{warpui => galaxyui}/examples/typed_actions/root_view.rs (95%) rename crates/{warpui => galaxyui}/src/fonts/font_kit.rs (98%) rename crates/{warpui => galaxyui}/src/fonts/mod.rs (91%) rename crates/{warpui => galaxyui}/src/fonts/text_layout_test.rs (100%) rename crates/{warpui => galaxyui}/src/lib.rs (81%) rename crates/{warpui => galaxyui}/src/platform/app.rs (98%) rename crates/{warpui => galaxyui}/src/platform/headless/app.rs (95%) rename crates/{warpui => galaxyui}/src/platform/headless/delegate.rs (100%) rename crates/{warpui => galaxyui}/src/platform/headless/event_loop.rs (100%) rename crates/{warpui => galaxyui}/src/platform/headless/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/headless/windowing.rs (97%) rename crates/{warpui => galaxyui}/src/platform/linux/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/app.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mac/clipboard.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mac/clipboard_tests.rs (95%) rename crates/{warpui => galaxyui}/src/platform/mac/delegate.rs (98%) rename crates/{warpui => galaxyui}/src/platform/mac/event.rs (98%) rename crates/{warpui => galaxyui}/src/platform/mac/fonts.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mac/geometry.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/keycode.rs (98%) rename crates/{warpui => galaxyui}/src/platform/mac/menus.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mac/menus_tests.rs (94%) rename crates/{warpui => galaxyui}/src/platform/mac/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/notification.rs (98%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/.clang-format (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/alert.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/alert.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/app.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/app.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/fullscreen_queue.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/fullscreen_queue.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/host_view.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/host_view.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/hotkey.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/hotkey.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/keycode.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/menus.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/menus.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/notifications/README.md (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/notifications/notifications.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/notifications/notifications.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/reachability.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/reachability.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/window.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/window_blur.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/objc/window_blur.m (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/frame_capture.rs (98%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/frame_capture_tests.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/renderer.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/renderer_manager.rs (96%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/shaders/shader_types.h (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/metal/shaders/shaders.metal (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/renderer.rs (96%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/renderer_manager.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/wgpu/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/wgpu/renderer.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/rendering/wgpu/renderer_manager.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/text_layout.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mac/text_layout_test.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/utils.rs (100%) rename crates/{warpui => galaxyui}/src/platform/mac/window.rs (99%) rename crates/{warpui => galaxyui}/src/platform/mod.rs (93%) rename crates/{warpui => galaxyui}/src/platform/wasm/hidden_input.rs (100%) rename crates/{warpui => galaxyui}/src/platform/wasm/mobile_detection/mod.rs (100%) rename crates/{warpui => galaxyui}/src/platform/wasm/mobile_detection/user_agent.rs (100%) rename crates/{warpui => galaxyui}/src/platform/wasm/mobile_detection/user_agent_tests.rs (100%) rename crates/{warpui => galaxyui}/src/platform/wasm/mod.rs (99%) rename crates/{warpui => galaxyui}/src/platform/wasm/soft_keyboard.rs (100%) rename crates/{warpui => galaxyui}/src/platform/wasm/soft_keyboard_tests.rs (100%) rename crates/{warpui => galaxyui}/src/platform/windows/mod.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/atlas/allocator.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/atlas/manager.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/atlas/mod.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/glyph_cache.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/mod.rs (93%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/mod.rs (99%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/renderer.rs (99%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/renderer/frame.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/renderer/glyph.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/renderer/image.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/renderer/rect.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/renderer/util.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/resources.rs (99%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/resources/quad.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/resources/uniforms.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/resources_tests.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/shader_types.rs (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/shaders/glyph_shader.wgsl (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/shaders/image_shader.wgsl (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/shaders/rect_shader.wgsl (100%) rename crates/{warpui => galaxyui}/src/rendering/wgpu/texture_with_bind_group.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/mod.rs (70%) rename crates/{warpui => galaxyui}/src/windowing/winit/app.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/delegate.rs (99%) rename crates/{warpui => galaxyui}/src/windowing/winit/delegate/global_hotkey.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/event_loop/drag_drop_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/event_loop/key_events.rs (98%) rename crates/{warpui => galaxyui}/src/windowing/winit/event_loop/key_events_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/event_loop/mod.rs (98%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts.rs (99%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/font_handle.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/linux.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/str_index_map.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/str_index_map_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/swash_rasterizer.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/text_layout.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/fonts/windows.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/app.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/clipboard.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/clipboard_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/cursor_theme.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/cursor_theme_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/mod.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/window_manager.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/zbus/desktop_settings.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/zbus/mod.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/zbus/network_status.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/linux/zbus/suspend_resume.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/mod.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/notifications/linux.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/notifications/mod.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/notifications/wasm.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/notifications/windows.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/text_layout_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/wasm.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/window.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/window/windows_wm.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/window/x11.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/clipboard.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/clipboard_tests.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/mod.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/network.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/registry.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/system_caption_buttons.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/window_attribute.rs (100%) rename crates/{warpui => galaxyui}/src/windowing/winit/windows/window_ext.rs (100%) rename crates/{warpui_core => galaxyui_core}/Cargo.toml (96%) rename crates/{warpui_core => galaxyui_core}/README.md (100%) rename crates/{warpui_core => galaxyui_core}/build.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/accessibility.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/actions.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/app_focus_telemetry.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/app_focus_telemetry_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/assets/asset_cache.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/assets/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/async/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/async/native/executor.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/async/native/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/async/wasm/executor.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/async/wasm/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/clipboard.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/clipboard_utils.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/clipboard_utils_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/action.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/app.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/core/autotracking/autotracking_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/autotracking/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/autotracking/tracked.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/entity.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/mod_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/model/context.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/model/context_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/model/handle.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/model/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/transfer_view_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/view/context.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/view/context_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/view/handle.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/core/view/mod.rs (96%) rename crates/{warpui_core => galaxyui_core}/src/core/window.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/debug/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/debug/root_view.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/debug/view_tree_debug_view.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/align.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/child_view.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/clipped.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/clipped_scrollable.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/clipped_scrollable_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/clipped_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/constrained_box.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/container.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/container_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/debug.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/dismiss.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/drag/draggable.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/drag/drop_target.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/drag/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/drag_resize.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/empty.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/event_handler.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/event_handler_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/flex/WARP.md (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/flex/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/flex/mod_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/flex/wrap.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/flex/wrap_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/formatted_text_element.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/formatted_text_element_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/hoverable.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/hoverable_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/icon.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/image.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/image_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/list.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/list_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/min_size.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/new_scrollable/dual_axis_config.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/new_scrollable/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/new_scrollable/scrollable_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/new_scrollable/single_axis_config.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/new_scrollable/util.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/percentage.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/rect.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/resizable.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/scrollable.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/elements/scrollable_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/selectable_area.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/shared_scrollbar.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/shimmering_text.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/shimmering_text/config.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/shimmering_text/glyph_index.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/size_constraint_switch.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/size_constraint_switch_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/mod_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/offset_positioning.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/offset_positioning_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/overlay.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/positioned.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/stack/save_position.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/table/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/table/mod_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/text.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/text_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/uniform_list.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/uniform_list_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/viewported_list.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/elements/viewported_list_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/event.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/fonts.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/fonts/canvas.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/fonts/external_fallback.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/fonts/metrics.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/fonts/text_layout_system.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/fonts_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/image_cache.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/image_cache_tests.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/integration/action_log.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/artifacts.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/capture_recorder.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/driver.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/overlay.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/step.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/integration/video_recorder.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/keymap.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/keymap/context.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/keymap/context_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/keymap/matcher.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/keymap/matcher_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/keymap_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/lib.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/modals.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/notification.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/app.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/file_picker.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/keyboard.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/menu.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/mod.rs (99%) rename crates/{warpui_core => galaxyui_core}/src/platform/test/app.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/test/delegate.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/test/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/platform/wasm.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/prelude.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/presenter.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/presenter_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/rendering/gpu_info.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/rendering/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/rendering/texture_cache.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/rendering/texture_cache_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/scene.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/scene_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/telemetry/event_store.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/telemetry/event_store_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/telemetry/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/header.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/mod_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/point.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/word_boundaries.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/word_boundaries_tests.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text/words.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text_layout.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text_layout_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/text_selection_utils.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/time.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/traces.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/button.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/checkbox.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/chip.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/components.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/components_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/keyboard_shortcut.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/link.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/list.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/progress_bar.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/radio_buttons.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/segmented_control.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/slider.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/switch.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/text.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/text_input.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/toggle_button.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/toggle_menu.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/ui_components/tool_tip.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/units.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/util.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/util_test.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/windowing/mod.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/windowing/state.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/windowing/system.rs (100%) rename crates/{warpui_core => galaxyui_core}/src/zoom.rs (100%) rename crates/{warpui_core => galaxyui_core}/test_data/animated.webp (100%) rename crates/{warpui_core => galaxyui_core}/test_data/local.png (100%) rename crates/{warpui_extras => galaxyui_extras}/Cargo.toml (93%) rename crates/{warpui_extras => galaxyui_extras}/src/lib.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/linux.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/linux_test.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/mac.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/mod.rs (90%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/noop.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/windows.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/secure_storage/windows_test.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/file_backed.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/in_memory.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/local_storage.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/mod.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/registry_backed.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/toml_backed.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/toml_backed_tests.rs (100%) rename crates/{warpui_extras => galaxyui_extras}/src/user_preferences/user_defaults.rs (97%) delete mode 100644 crates/warpui/examples/resizable/main.rs delete mode 100644 crates/warpui/examples/scrolling/main.rs delete mode 100644 crates/warpui/examples/slider/main.rs create mode 100644 plans/galaxy-refactor.md diff --git a/Cargo.lock b/Cargo.lock index 4432e1ca..748e273a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -315,6 +315,12 @@ dependencies = [ "dunce", "filetime", "futures", + "galaxy_core", + "galaxy_graphql", + "galaxy_terminal", + "galaxy_util", + "galaxyui", + "galaxyui_extras", "generic-array", "ignore", "instant", @@ -351,13 +357,7 @@ dependencies = [ "unicode-width 0.1.14", "uuid", "virtual-fs", - "warp_core", - "warp_graphql", "warp_multi_agent_api", - "warp_terminal", - "warp_util", - "warpui", - "warpui_extras", "watcher", ] @@ -540,13 +540,13 @@ dependencies = [ "axum", "axum-extra", "command", + "galaxy_cli", "nix 0.26.4", "tokio", "tower", "tower-http", "tracing", "tracing-subscriber", - "warp_cli", "win32job", ] @@ -1140,21 +1140,21 @@ dependencies = [ "bytes", "cfg-if", "futures", + "galaxyui_core", "log", "reqwest", "url", - "warpui_core", ] [[package]] name = "asset_macro" version = "0.1.0" dependencies = [ + "galaxy_util", "proc-macro2", "quote", "sha2", "syn 2.0.117", - "warp_util", ] [[package]] @@ -3058,6 +3058,7 @@ dependencies = [ "core-foundation 0.10.1", "dispatch2", "futures", + "galaxyui", "image", "instant", "log", @@ -3071,7 +3072,6 @@ dependencies = [ "tempfile", "tokio", "url", - "warpui", "windows 0.62.2", "x11rb", "zbus", @@ -5188,6 +5188,897 @@ dependencies = [ "fuzzy-matcher", ] +[[package]] +name = "galaxy" +version = "0.1.0" +dependencies = [ + "addr", + "aho-corasick", + "ai", + "anyhow", + "app-installation-detection", + "arrayvec", + "asset_cache", + "asset_macro", + "async-broadcast", + "async-channel", + "async-compat", + "async-executor", + "async-fs", + "async-io", + "async-process", + "async-recursion", + "async-stream", + "async-trait", + "aws-config", + "aws-credential-types", + "aws-sdk-bedrock", + "aws-sdk-bedrockruntime", + "aws-sdk-sts", + "aws-smithy-types", + "aws-types", + "axum", + "base64 0.22.1", + "bimap", + "bincode", + "bitflags 2.9.4", + "bitflags-serde-legacy", + "block", + "blocking", + "bounded-vec-deque", + "byte-unit", + "bytecount", + "bytemuck", + "bytes", + "cc", + "cfg-if", + "cfg_aliases 0.2.1", + "channel_versions", + "chrono", + "clap", + "cocoa 0.26.0", + "comfy-table", + "command", + "command-corrections", + "command-signatures-v2", + "computer_use", + "concat-idents", + "console_error_panic_hook", + "content_inspector", + "core-foundation 0.10.1", + "counter 0.6.0", + "crash-handler", + "crc", + "csv", + "ctor", + "cvt", + "cynic", + "dashmap", + "deltae", + "derivative", + "dhat", + "diesel", + "diesel_migrations", + "difflib 0.4.0 (git+https://github.com/warpdotdev/difflib.git?rev=114177e7d8e1f8017baca397f943e11644b14d63)", + "directories", + "dirs 6.0.0", + "dunce", + "email_address 0.2.3", + "embed-resource", + "embed_plist", + "enclose", + "enum-iterator", + "env_logger", + "event-listener", + "field_mask", + "firebase", + "flate2", + "float-cmp", + "freedesktop-desktop-entry", + "futures", + "futures-lite 1.13.0", + "futures-timer", + "futures-util", + "fuzzy_match", + "galaxy_cli", + "galaxy_completer", + "galaxy_core", + "galaxy_editor", + "galaxy_files", + "galaxy_graphql", + "galaxy_isolation_platform", + "galaxy_js", + "galaxy_logging", + "galaxy_managed_secrets", + "galaxy_ripgrep", + "galaxy_server_client", + "galaxy_terminal", + "galaxy_util", + "galaxy_web_event_bus", + "galaxyui", + "galaxyui_extras", + "gethostname", + "getrandom 0.2.16", + "getset", + "git2", + "gloo", + "handlebars", + "hex", + "http 1.1.0", + "http_client", + "http_server", + "hyper 1.8.1", + "image", + "indexmap 2.12.0", + "infer", + "input_classifier", + "inquire", + "instant", + "inventory", + "ipc", + "is_executable", + "itertools 0.14.0", + "jaq-all", + "jaq-json", + "jemalloc_pprof", + "js-sys", + "jsonschema", + "kmeans_colors", + "languages", + "lasso", + "lazy_static", + "libc", + "libsqlite3-sys", + "line-ending", + "log", + "log-panics", + "lsp", + "lsp-types", + "lz4_flex 0.11.6", + "mach2 0.5.0", + "markdown_parser", + "memchr", + "memo-map", + "mermaid_to_svg", + "mime_guess", + "minidumper", + "mio", + "mockall", + "mockito", + "natural_language_detection", + "nix 0.26.4", + "notify-debouncer-full", + "num-traits", + "num_cpus", + "oauth2", + "objc", + "objc2-foundation 0.3.2", + "onboarding", + "once_cell", + "ordered-float 3.9.2", + "os_info", + "palette", + "parking_lot", + "paste", + "pathfinder_color", + "pathfinder_geometry", + "permissions", + "persistence", + "pin-project", + "plist", + "pprof", + "prost 0.14.3", + "prost-build", + "prost-types", + "rand 0.8.5", + "rangemap", + "rayon", + "regex", + "regex-automata", + "remote_server", + "repo_metadata", + "reqwest", + "reqwest-eventsource", + "rmcp", + "rquickjs", + "rust-embed 8.7.2", + "rustls 0.23.39", + "schemars", + "security-framework-sys", + "sentry", + "sentry-log", + "serde", + "serde-bytes-repr", + "serde-wasm-bindgen", + "serde_bytes", + "serde_json", + "serde_regex", + "serde_urlencoded", + "serde_with", + "serde_yaml", + "serial_test", + "session-sharing-protocol", + "settings", + "settings_value", + "sha2", + "shell-words", + "shellexpand", + "shlex", + "signal-hook", + "signal-hook-mio", + "similar", + "simple_logger", + "siphasher 0.3.11", + "smallvec 1.15.1", + "smol_str", + "static_assertions", + "string-offset", + "strum", + "strum_macros", + "sum_tree", + "syntax_tree", + "syntect", + "sysinfo", + "tabwriter", + "tantivy", + "tempfile", + "thiserror 2.0.17", + "thousands", + "tikv-jemallocator", + "tokio", + "tokio-util", + "toml 0.8.23", + "tracing", + "typed-path 0.10.0", + "ui_components", + "unicase", + "unicode-width 0.1.14", + "unindent 0.1.11", + "url", + "urlencoding", + "urlocator", + "uuid", + "validator", + "variant_count", + "vec1", + "version-compare", + "vim", + "virtual-fs", + "voice_input", + "vte", + "walkdir", + "warp-command-signatures", + "warp-workflows", + "warp_multi_agent_api", + "wasm-bindgen", + "watcher", + "web-sys", + "websocket", + "wgpu", + "windows 0.62.2", + "windows-registry 0.2.0", + "windows-result 0.2.0", + "winit", + "winreg", + "x11rb", + "zbus", +] + +[[package]] +name = "galaxy_cli" +version = "0.0.0" +dependencies = [ + "anyhow", + "cfg-if", + "cfg_aliases 0.2.1", + "chrono", + "clap", + "clap_complete", + "color-print", + "galaxy_core", + "galaxy_util", + "humantime", + "jaq-all", + "serial_test", + "url", + "uuid", + "windows 0.62.2", +] + +[[package]] +name = "galaxy_completer" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-recursion", + "async-trait", + "bincode", + "cfg-if", + "clap", + "command", + "derive-new", + "dirs 6.0.0", + "futures", + "fuzzy_match", + "galaxy_cli", + "galaxy_completer", + "galaxy_core", + "galaxy_js", + "galaxy_util", + "galaxyui", + "getset", + "instant", + "itertools 0.14.0", + "lazy_static", + "log", + "memo-map", + "regex", + "rquickjs", + "serde", + "shellexpand", + "smol_str", + "string-offset", + "thiserror 2.0.17", + "typed-path 0.10.0", + "warp-command-signatures", +] + +[[package]] +name = "galaxy_core" +version = "0.0.0" +dependencies = [ + "anyhow", + "asset_macro", + "async-broadcast", + "cfg-if", + "chrono", + "cocoa 0.26.0", + "command-corrections", + "concat-idents", + "dashmap", + "directories", + "dirs 6.0.0", + "enum-iterator", + "futures", + "galaxy_features", + "galaxyui", + "galaxyui_extras", + "getset", + "http 1.1.0", + "instant", + "inventory", + "itertools 0.14.0", + "lazy_static", + "line-ending", + "log", + "mockito", + "objc", + "objc2-foundation 0.3.2", + "parking_lot", + "rand 0.8.5", + "regex", + "reqwest", + "schemars", + "sentry", + "sentry-log", + "serde", + "serde_json", + "serde_with", + "serde_yaml", + "settings", + "settings_value", + "shellexpand", + "string-offset", + "strum", + "sysinfo", + "tempfile", + "thiserror 2.0.17", + "tokio", + "url", + "websocket", +] + +[[package]] +name = "galaxy_editor" +version = "0.1.0" +dependencies = [ + "anyhow", + "arrayvec", + "asset_cache", + "async-channel", + "bytes", + "criterion", + "enclose", + "enum-iterator", + "env_logger", + "float-cmp", + "futures-lite 1.13.0", + "galaxy_core", + "galaxy_util", + "galaxyui", + "html5ever", + "imara-diff", + "instant", + "itertools 0.14.0", + "lazy_static", + "line-ending", + "log", + "markdown_parser", + "markup5ever", + "mermaid_to_svg", + "mime_guess", + "num-traits", + "ordered-float 3.9.2", + "parking_lot", + "pathfinder_color", + "rand 0.8.5", + "rangemap", + "rayon", + "regex-automata", + "regex-syntax", + "rust-embed 8.7.2", + "serde", + "serde_yaml", + "string-offset", + "sum_tree", + "thiserror 2.0.17", + "urlocator", + "vec1", + "vim", +] + +[[package]] +name = "galaxy_features" +version = "0.0.0" +dependencies = [ + "enum-iterator", +] + +[[package]] +name = "galaxy_files" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-channel", + "async-fs", + "futures", + "galaxy_core", + "galaxy_util", + "galaxyui", + "log", + "notify-debouncer-full", + "remote_server", + "repo_metadata", + "tempfile", + "thiserror 2.0.17", + "watcher", +] + +[[package]] +name = "galaxy_graphql" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-channel", + "chrono", + "cynic", + "cynic-codegen", + "futures", + "futures-util", + "galaxy_core", + "galaxy_graphql_schema", + "graphql-ws-client", + "http 1.1.0", + "http_client", + "instant", + "log", + "persistence", + "reqwest", + "serde", + "thiserror 2.0.17", + "websocket", + "ws_stream_wasm", +] + +[[package]] +name = "galaxy_graphql_schema" +version = "0.0.0" +dependencies = [ + "anyhow", + "cynic", + "cynic-codegen", +] + +[[package]] +name = "galaxy_isolation_platform" +version = "0.1.0" +dependencies = [ + "anyhow", + "base64 0.22.1", + "chrono", + "command", + "galaxy_core", + "log", + "serde", + "serde_json", + "thiserror 2.0.17", +] + +[[package]] +name = "galaxy_js" +version = "0.1.0" +dependencies = [ + "bincode", + "cfg-if", + "rquickjs", + "serde", + "thiserror 2.0.17", + "uuid", +] + +[[package]] +name = "galaxy_logging" +version = "0.0.0" +dependencies = [ + "anyhow", + "cfg-if", + "chrono", + "console_error_panic_hook", + "dirs 6.0.0", + "env_logger", + "galaxy_core", + "galaxy_web_event_bus", + "js-sys", + "log", + "log-panics", + "sentry", + "sentry-log", + "wasm-bindgen", + "web-sys", + "zip 2.4.2", +] + +[[package]] +name = "galaxy_managed_secrets" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-trait", + "base64 0.22.1", + "chrono", + "galaxy_core", + "galaxy_graphql", + "galaxy_isolation_platform", + "galaxyui", + "getrandom 0.3.4", + "hpke", + "log", + "rand 0.9.1", + "serde", + "serde_json", + "tempfile", + "thiserror 2.0.17", + "tink-core", + "tink-hybrid", + "tink-proto", + "vec1", + "zeroize", +] + +[[package]] +name = "galaxy_ripgrep" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-process", + "command", + "futures", + "galaxy_cli", + "getrandom 0.2.16", + "grep", + "ignore", + "instant", + "log", + "nix 0.26.4", + "serde", + "serde_json", + "string-offset", +] + +[[package]] +name = "galaxy_server_client" +version = "0.1.0" +dependencies = [ + "anyhow", + "bincode", + "chrono", + "cynic", + "derivative", + "diesel", + "galaxy_core", + "galaxy_graphql", + "galaxyui_core", + "itertools 0.14.0", + "lasso", + "log", + "pathfinder_geometry", + "persistence", + "schemars", + "serde", + "session-sharing-protocol", + "settings_value", + "thiserror 2.0.17", + "uuid", +] + +[[package]] +name = "galaxy_terminal" +version = "0.0.0" +dependencies = [ + "anyhow", + "bitflags 2.9.4", + "bitflags-serde-legacy", + "cfg-if", + "channel_versions", + "command-corrections", + "enum-iterator", + "galaxy_completer", + "galaxy_core", + "galaxy_util", + "galaxyui", + "get-size", + "itertools 0.14.0", + "lazy_static", + "log", + "pathfinder_color", + "regex", + "serde", + "session-sharing-protocol", + "smol_str", + "static_assertions", + "string-offset", + "thiserror 2.0.17", + "typed-path 0.10.0", + "unicode-segmentation", + "unicode-width 0.1.14", + "uuid", + "version-compare", + "vte", +] + +[[package]] +name = "galaxy_util" +version = "0.1.0" +dependencies = [ + "content_inspector", + "dirs 6.0.0", + "dunce", + "futures-util", + "galaxyui", + "gloo", + "hex", + "lazy_static", + "mime_guess", + "pathdiff", + "pin-project", + "rand 0.8.5", + "regex", + "serde", + "serde_json", + "thiserror 2.0.17", + "typed-path 0.10.0", + "windows 0.62.2", +] + +[[package]] +name = "galaxy_web_event_bus" +version = "0.0.0" +dependencies = [ + "js-sys", + "log", + "serde", + "serde-wasm-bindgen", + "wasm-bindgen", +] + +[[package]] +name = "galaxyui" +version = "0.0.0" +dependencies = [ + "anyhow", + "arboard", + "asset_cache", + "async-io", + "async-task", + "bimap", + "bindgen 0.70.1", + "block", + "blocking", + "bytemuck", + "cc", + "cfg-if", + "cfg_aliases 0.2.1", + "chrono", + "cocoa 0.26.0", + "command", + "core-foundation 0.10.1", + "core-graphics 0.25.0", + "core-text", + "cosmic-text", + "ctrlc", + "dashmap", + "derivative", + "derive_more 0.99.17", + "dirs 6.0.0", + "dispatch", + "dwrote", + "env_logger", + "font-kit", + "fontconfig", + "fontdb", + "foreign-types 0.5.0", + "futures", + "futures-lite 1.13.0", + "futures-timer", + "futures-util", + "galaxyui", + "galaxyui_core", + "global-hotkey", + "gloo", + "image", + "instant", + "itertools 0.14.0", + "js-sys", + "lazy_static", + "libc", + "log", + "markdown_parser", + "memmap2 0.9.7", + "metal", + "native-dialog", + "nix 0.26.4", + "notify-rust", + "num-traits", + "objc", + "open", + "ordered-float 3.9.2", + "owned_ttf_parser", + "parking_lot", + "pathfinder_color", + "pathfinder_geometry", + "rand 0.8.5", + "resvg", + "rust-embed 8.7.2", + "serde", + "sum_tree", + "takecell", + "tauri-winrt-notification", + "thiserror 2.0.17", + "tini", + "urlencoding", + "vec1", + "version-compare", + "virtual-fs", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "wgpu", + "windows 0.62.2", + "windows-core 0.62.2", + "windows-version", + "winit", + "winreg", + "x11-dl", + "x11rb", + "zbus", +] + +[[package]] +name = "galaxyui_core" +version = "0.1.0" +dependencies = [ + "anyhow", + "arboard", + "async-broadcast", + "async-channel", + "async-executor", + "async-fs", + "async-io", + "async-task", + "bounded-vec-deque", + "bytes", + "cfg-if", + "cfg_aliases 0.2.1", + "chrono", + "command", + "concat-idents", + "ctor", + "ctrlc", + "dashmap", + "derivative", + "derive_more 0.99.17", + "dirs 6.0.0", + "enum-iterator", + "float-cmp", + "font-kit", + "futures", + "futures-lite 1.13.0", + "futures-util", + "galaxy_util", + "galaxyui_core", + "gloo", + "image", + "infer", + "instant", + "itertools 0.14.0", + "lazy_static", + "log", + "markdown_parser", + "minimp4", + "num-derive", + "num-traits", + "num_cpus", + "openh264", + "ordered-float 3.9.2", + "parking_lot", + "pathfinder_color", + "pathfinder_geometry", + "rand 0.8.5", + "rangemap", + "raw-window-handle 0.6.2", + "resvg", + "rstar", + "rust-embed 8.7.2", + "rustc-hash 2.1.1", + "schemars", + "serde", + "serde_json", + "settings_value", + "similar", + "simplelog", + "smallvec 1.15.1", + "string-offset", + "strum", + "strum_macros", + "sum_tree", + "tempfile", + "thiserror 2.0.17", + "titlecase", + "tokio", + "trait-set", + "vec1", + "wasm-bindgen-futures", + "woothee", +] + +[[package]] +name = "galaxyui_extras" +version = "0.0.0" +dependencies = [ + "anyhow", + "async-channel", + "cocoa 0.26.0", + "galaxyui", + "galaxyui_extras", + "gloo-storage", + "log", + "objc", + "ouroboros", + "rand 0.8.5", + "ring", + "secret-service", + "security-framework 2.9.2", + "serde", + "serde_json", + "sha2", + "tempfile", + "thiserror 2.0.17", + "toml_edit 0.25.6+spec-1.1.0", + "windows 0.62.2", + "windows-registry 0.2.0", + "windows-result 0.2.0", +] + [[package]] name = "gemm" version = "0.19.0" @@ -5853,7 +6744,7 @@ dependencies = [ name = "handlebars" version = "0.0.0" dependencies = [ - "warpui", + "galaxyui", ] [[package]] @@ -6128,6 +7019,7 @@ dependencies = [ "bytes", "cfg-if", "futures", + "galaxy_core", "gloo", "http 1.1.0", "log", @@ -6139,7 +7031,6 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "warp_core", "wasm-bindgen-futures", ] @@ -6148,11 +7039,11 @@ name = "http_server" version = "0.0.0" dependencies = [ "axum", + "galaxyui", "log", "tokio", "tower", "tower-http", - "warpui", ] [[package]] @@ -6613,6 +7504,7 @@ dependencies = [ "fasttext", "futures", "futures-lite 1.13.0", + "galaxy_completer", "instant", "itertools 0.14.0", "lazy_static", @@ -6627,7 +7519,6 @@ dependencies = [ "smol_str", "tempfile", "tokenizers", - "warp_completer", ] [[package]] @@ -6670,6 +7561,11 @@ dependencies = [ "diesel", "directories", "float-cmp", + "galaxy", + "galaxy_cli", + "galaxy_core", + "galaxyui", + "galaxyui_extras", "instant", "itertools 0.14.0", "lazy_static", @@ -6690,14 +7586,9 @@ dependencies = [ "sum_tree", "sysinfo", "version-compare", - "warp", "warp-command-signatures", "warp-workflows", - "warp_cli", - "warp_core", "warp_multi_agent_api", - "warpui", - "warpui_extras", "whoami", ] @@ -6774,6 +7665,7 @@ dependencies = [ "async-trait", "bincode", "futures", + "galaxyui", "interprocess", "itertools 0.14.0", "log", @@ -6782,7 +7674,6 @@ dependencies = [ "serde", "thiserror 2.0.17", "uuid", - "warpui", ] [[package]] @@ -7081,10 +7972,10 @@ dependencies = [ "async-channel", "async-trait", "futures", + "galaxyui", "log", "serde", "serde_json", - "warpui", ] [[package]] @@ -7204,11 +8095,11 @@ name = "languages" version = "0.0.0" dependencies = [ "arborium", + "galaxy_editor", "lazy_static", "rust-embed 8.7.2", "serde", "serde_yaml", - "warp_editor", ] [[package]] @@ -7515,6 +8406,9 @@ dependencies = [ "command", "env_logger", "futures", + "galaxy_core", + "galaxy_util", + "galaxyui", "globset", "http_client", "instant", @@ -7533,9 +8427,6 @@ dependencies = [ "strum_macros", "tokio", "url", - "warp_core", - "warp_util", - "warpui", ] [[package]] @@ -7652,7 +8543,7 @@ dependencies = [ name = "managed_secrets_wasm" version = "0.1.0" dependencies = [ - "warp_managed_secrets", + "galaxy_managed_secrets", "wasm-bindgen", ] @@ -8278,6 +9169,7 @@ dependencies = [ "command", "flate2", "futures", + "galaxy_core", "http_client", "log", "semver", @@ -8285,7 +9177,6 @@ dependencies = [ "serde_json", "sha2", "tar", - "warp_core", "zip 2.4.2", ] @@ -8951,6 +9842,9 @@ dependencies = [ "ai", "anyhow", "cfg-if", + "galaxy_core", + "galaxy_logging", + "galaxyui", "instant", "log", "pathfinder_color", @@ -8962,9 +9856,6 @@ dependencies = [ "strum_macros", "ui_components", "uuid", - "warp_core", - "warp_logging", - "warpui", ] [[package]] @@ -10626,6 +11517,9 @@ dependencies = [ "dashmap", "futures", "futures-lite 1.13.0", + "galaxy_core", + "galaxy_util", + "galaxyui", "getrandom 0.2.16", "log", "prost 0.14.3", @@ -10636,9 +11530,6 @@ dependencies = [ "tokio", "tokio-util", "uuid", - "warp_core", - "warp_util", - "warpui", ] [[package]] @@ -10668,6 +11559,9 @@ dependencies = [ "env_logger", "futures", "futures-lite 1.13.0", + "galaxy_core", + "galaxy_util", + "galaxyui", "ignore", "itertools 0.14.0", "log", @@ -10681,9 +11575,6 @@ dependencies = [ "thiserror 2.0.17", "virtual-fs", "walkdir", - "warp_core", - "warp_util", - "warpui", "watcher", ] @@ -11865,6 +12756,9 @@ version = "0.0.0" dependencies = [ "anyhow", "concat-idents", + "galaxy_features", + "galaxyui", + "galaxyui_extras", "inventory", "log", "schemars", @@ -11873,9 +12767,6 @@ dependencies = [ "serial_test", "settings_value", "tempfile", - "warp_features", - "warpui", - "warpui_extras", ] [[package]] @@ -12038,10 +12929,10 @@ dependencies = [ "async-fs", "chrono", "futures", + "galaxy_core", + "galaxyui", "log", "thiserror 2.0.17", - "warp_core", - "warpui", ] [[package]] @@ -12497,15 +13388,15 @@ dependencies = [ "arborium", "futures", "futures-lite 1.13.0", + "galaxy_editor", + "galaxy_util", + "galaxyui", "languages", "log", "parking_lot", "rangemap", "streaming-iterator", "string-offset", - "warp_editor", - "warp_util", - "warpui", ] [[package]] @@ -13706,12 +14597,12 @@ version = "0.0.0" dependencies = [ "anyhow", "asset_cache", + "galaxy_core", + "galaxyui", "pathfinder_color", "pathfinder_geometry", "rust-embed 8.7.2", "rustls 0.23.39", - "warp_core", - "warpui", ] [[package]] @@ -14094,12 +14985,12 @@ name = "vim" version = "0.1.0" dependencies = [ "anyhow", + "galaxy_core", + "galaxyui", "itertools 0.14.0", "log", "string-offset", "unindent 0.2.4", - "warp_core", - "warpui", ] [[package]] @@ -14121,13 +15012,13 @@ dependencies = [ "base64 0.22.1", "cpal", "futures", + "galaxyui", "hound", "instant", "log", "parking_lot", "rubato", "thiserror 2.0.17", - "warpui", ] [[package]] @@ -14199,282 +15090,6 @@ dependencies = [ "try-lock", ] -[[package]] -name = "warp" -version = "0.1.0" -dependencies = [ - "addr", - "aho-corasick", - "ai", - "anyhow", - "app-installation-detection", - "arrayvec", - "asset_cache", - "asset_macro", - "async-broadcast", - "async-channel", - "async-compat", - "async-executor", - "async-fs", - "async-io", - "async-process", - "async-recursion", - "async-stream", - "async-trait", - "aws-config", - "aws-credential-types", - "aws-sdk-bedrock", - "aws-sdk-bedrockruntime", - "aws-sdk-sts", - "aws-smithy-types", - "aws-types", - "axum", - "base64 0.22.1", - "bimap", - "bincode", - "bitflags 2.9.4", - "bitflags-serde-legacy", - "block", - "blocking", - "bounded-vec-deque", - "byte-unit", - "bytecount", - "bytemuck", - "bytes", - "cc", - "cfg-if", - "cfg_aliases 0.2.1", - "channel_versions", - "chrono", - "clap", - "cocoa 0.26.0", - "comfy-table", - "command", - "command-corrections", - "command-signatures-v2", - "computer_use", - "concat-idents", - "console_error_panic_hook", - "content_inspector", - "core-foundation 0.10.1", - "counter 0.6.0", - "crash-handler", - "crc", - "csv", - "ctor", - "cvt", - "cynic", - "dashmap", - "deltae", - "derivative", - "dhat", - "diesel", - "diesel_migrations", - "difflib 0.4.0 (git+https://github.com/warpdotdev/difflib.git?rev=114177e7d8e1f8017baca397f943e11644b14d63)", - "directories", - "dirs 6.0.0", - "dunce", - "email_address 0.2.3", - "embed-resource", - "embed_plist", - "enclose", - "enum-iterator", - "env_logger", - "event-listener", - "field_mask", - "firebase", - "flate2", - "float-cmp", - "freedesktop-desktop-entry", - "futures", - "futures-lite 1.13.0", - "futures-timer", - "futures-util", - "fuzzy_match", - "gethostname", - "getrandom 0.2.16", - "getset", - "git2", - "gloo", - "handlebars", - "hex", - "http 1.1.0", - "http_client", - "http_server", - "hyper 1.8.1", - "image", - "indexmap 2.12.0", - "infer", - "input_classifier", - "inquire", - "instant", - "inventory", - "ipc", - "is_executable", - "itertools 0.14.0", - "jaq-all", - "jaq-json", - "jemalloc_pprof", - "js-sys", - "jsonschema", - "kmeans_colors", - "languages", - "lasso", - "lazy_static", - "libc", - "libsqlite3-sys", - "line-ending", - "log", - "log-panics", - "lsp", - "lsp-types", - "lz4_flex 0.11.6", - "mach2 0.5.0", - "markdown_parser", - "memchr", - "memo-map", - "mermaid_to_svg", - "mime_guess", - "minidumper", - "mio", - "mockall", - "mockito", - "natural_language_detection", - "nix 0.26.4", - "notify-debouncer-full", - "num-traits", - "num_cpus", - "oauth2", - "objc", - "objc2-foundation 0.3.2", - "onboarding", - "once_cell", - "ordered-float 3.9.2", - "os_info", - "palette", - "parking_lot", - "paste", - "pathfinder_color", - "pathfinder_geometry", - "permissions", - "persistence", - "pin-project", - "plist", - "pprof", - "prost 0.14.3", - "prost-build", - "prost-types", - "rand 0.8.5", - "rangemap", - "rayon", - "regex", - "regex-automata", - "remote_server", - "repo_metadata", - "reqwest", - "reqwest-eventsource", - "rmcp", - "rquickjs", - "rust-embed 8.7.2", - "rustls 0.23.39", - "schemars", - "security-framework-sys", - "sentry", - "sentry-log", - "serde", - "serde-bytes-repr", - "serde-wasm-bindgen", - "serde_bytes", - "serde_json", - "serde_regex", - "serde_urlencoded", - "serde_with", - "serde_yaml", - "serial_test", - "session-sharing-protocol", - "settings", - "settings_value", - "sha2", - "shell-words", - "shellexpand", - "shlex", - "signal-hook", - "signal-hook-mio", - "similar", - "simple_logger", - "siphasher 0.3.11", - "smallvec 1.15.1", - "smol_str", - "static_assertions", - "string-offset", - "strum", - "strum_macros", - "sum_tree", - "syntax_tree", - "syntect", - "sysinfo", - "tabwriter", - "tantivy", - "tempfile", - "thiserror 2.0.17", - "thousands", - "tikv-jemallocator", - "tokio", - "tokio-util", - "toml 0.8.23", - "tracing", - "typed-path 0.10.0", - "ui_components", - "unicase", - "unicode-width 0.1.14", - "unindent 0.1.11", - "url", - "urlencoding", - "urlocator", - "uuid", - "validator", - "variant_count", - "vec1", - "version-compare", - "vim", - "virtual-fs", - "voice_input", - "vte", - "walkdir", - "warp-command-signatures", - "warp-workflows", - "warp_cli", - "warp_completer", - "warp_core", - "warp_editor", - "warp_files", - "warp_graphql", - "warp_isolation_platform", - "warp_js", - "warp_logging", - "warp_managed_secrets", - "warp_multi_agent_api", - "warp_ripgrep", - "warp_server_client", - "warp_terminal", - "warp_util", - "warp_web_event_bus", - "warpui", - "warpui_extras", - "wasm-bindgen", - "watcher", - "web-sys", - "websocket", - "wgpu", - "windows 0.62.2", - "windows-registry 0.2.0", - "windows-result 0.2.0", - "winit", - "winreg", - "x11rb", - "zbus", -] - [[package]] name = "warp-command-signatures" version = "0.0.0" @@ -14528,307 +15143,6 @@ dependencies = [ "serde", ] -[[package]] -name = "warp_cli" -version = "0.0.0" -dependencies = [ - "anyhow", - "cfg-if", - "cfg_aliases 0.2.1", - "chrono", - "clap", - "clap_complete", - "color-print", - "humantime", - "jaq-all", - "serial_test", - "url", - "uuid", - "warp_core", - "warp_util", - "windows 0.62.2", -] - -[[package]] -name = "warp_completer" -version = "0.1.0" -dependencies = [ - "anyhow", - "async-recursion", - "async-trait", - "bincode", - "cfg-if", - "clap", - "command", - "derive-new", - "dirs 6.0.0", - "futures", - "fuzzy_match", - "getset", - "instant", - "itertools 0.14.0", - "lazy_static", - "log", - "memo-map", - "regex", - "rquickjs", - "serde", - "shellexpand", - "smol_str", - "string-offset", - "thiserror 2.0.17", - "typed-path 0.10.0", - "warp-command-signatures", - "warp_cli", - "warp_completer", - "warp_core", - "warp_js", - "warp_util", - "warpui", -] - -[[package]] -name = "warp_core" -version = "0.0.0" -dependencies = [ - "anyhow", - "asset_macro", - "async-broadcast", - "cfg-if", - "chrono", - "cocoa 0.26.0", - "command-corrections", - "concat-idents", - "dashmap", - "directories", - "dirs 6.0.0", - "enum-iterator", - "futures", - "getset", - "http 1.1.0", - "instant", - "inventory", - "itertools 0.14.0", - "lazy_static", - "line-ending", - "log", - "mockito", - "objc", - "objc2-foundation 0.3.2", - "parking_lot", - "rand 0.8.5", - "regex", - "reqwest", - "schemars", - "sentry", - "sentry-log", - "serde", - "serde_json", - "serde_with", - "serde_yaml", - "settings", - "settings_value", - "shellexpand", - "string-offset", - "strum", - "sysinfo", - "tempfile", - "thiserror 2.0.17", - "tokio", - "url", - "warp_features", - "warpui", - "warpui_extras", - "websocket", -] - -[[package]] -name = "warp_editor" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrayvec", - "asset_cache", - "async-channel", - "bytes", - "criterion", - "enclose", - "enum-iterator", - "env_logger", - "float-cmp", - "futures-lite 1.13.0", - "html5ever", - "imara-diff", - "instant", - "itertools 0.14.0", - "lazy_static", - "line-ending", - "log", - "markdown_parser", - "markup5ever", - "mermaid_to_svg", - "mime_guess", - "num-traits", - "ordered-float 3.9.2", - "parking_lot", - "pathfinder_color", - "rand 0.8.5", - "rangemap", - "rayon", - "regex-automata", - "regex-syntax", - "rust-embed 8.7.2", - "serde", - "serde_yaml", - "string-offset", - "sum_tree", - "thiserror 2.0.17", - "urlocator", - "vec1", - "vim", - "warp_core", - "warp_util", - "warpui", -] - -[[package]] -name = "warp_features" -version = "0.0.0" -dependencies = [ - "enum-iterator", -] - -[[package]] -name = "warp_files" -version = "0.1.0" -dependencies = [ - "anyhow", - "async-channel", - "async-fs", - "futures", - "log", - "notify-debouncer-full", - "remote_server", - "repo_metadata", - "tempfile", - "thiserror 2.0.17", - "warp_core", - "warp_util", - "warpui", - "watcher", -] - -[[package]] -name = "warp_graphql" -version = "0.1.0" -dependencies = [ - "anyhow", - "async-channel", - "chrono", - "cynic", - "cynic-codegen", - "futures", - "futures-util", - "graphql-ws-client", - "http 1.1.0", - "http_client", - "instant", - "log", - "persistence", - "reqwest", - "serde", - "thiserror 2.0.17", - "warp_core", - "warp_graphql_schema", - "websocket", - "ws_stream_wasm", -] - -[[package]] -name = "warp_graphql_schema" -version = "0.0.0" -dependencies = [ - "anyhow", - "cynic", - "cynic-codegen", -] - -[[package]] -name = "warp_isolation_platform" -version = "0.1.0" -dependencies = [ - "anyhow", - "base64 0.22.1", - "chrono", - "command", - "log", - "serde", - "serde_json", - "thiserror 2.0.17", - "warp_core", -] - -[[package]] -name = "warp_js" -version = "0.1.0" -dependencies = [ - "bincode", - "cfg-if", - "rquickjs", - "serde", - "thiserror 2.0.17", - "uuid", -] - -[[package]] -name = "warp_logging" -version = "0.0.0" -dependencies = [ - "anyhow", - "cfg-if", - "chrono", - "console_error_panic_hook", - "dirs 6.0.0", - "env_logger", - "js-sys", - "log", - "log-panics", - "sentry", - "sentry-log", - "warp_core", - "warp_web_event_bus", - "wasm-bindgen", - "web-sys", - "zip 2.4.2", -] - -[[package]] -name = "warp_managed_secrets" -version = "0.1.0" -dependencies = [ - "anyhow", - "async-trait", - "base64 0.22.1", - "chrono", - "getrandom 0.3.4", - "hpke", - "log", - "rand 0.9.1", - "serde", - "serde_json", - "tempfile", - "thiserror 2.0.17", - "tink-core", - "tink-hybrid", - "tink-proto", - "vec1", - "warp_core", - "warp_graphql", - "warp_isolation_platform", - "warpui", - "zeroize", -] - [[package]] name = "warp_multi_agent_api" version = "0.0.0" @@ -14841,320 +15155,6 @@ dependencies = [ "regex", ] -[[package]] -name = "warp_ripgrep" -version = "0.1.0" -dependencies = [ - "anyhow", - "async-process", - "command", - "futures", - "getrandom 0.2.16", - "grep", - "ignore", - "instant", - "log", - "nix 0.26.4", - "serde", - "serde_json", - "string-offset", - "warp_cli", -] - -[[package]] -name = "warp_server_client" -version = "0.1.0" -dependencies = [ - "anyhow", - "bincode", - "chrono", - "cynic", - "derivative", - "diesel", - "itertools 0.14.0", - "lasso", - "log", - "pathfinder_geometry", - "persistence", - "schemars", - "serde", - "session-sharing-protocol", - "settings_value", - "thiserror 2.0.17", - "uuid", - "warp_core", - "warp_graphql", - "warpui_core", -] - -[[package]] -name = "warp_terminal" -version = "0.0.0" -dependencies = [ - "anyhow", - "bitflags 2.9.4", - "bitflags-serde-legacy", - "cfg-if", - "channel_versions", - "command-corrections", - "enum-iterator", - "get-size", - "itertools 0.14.0", - "lazy_static", - "log", - "pathfinder_color", - "regex", - "serde", - "session-sharing-protocol", - "smol_str", - "static_assertions", - "string-offset", - "thiserror 2.0.17", - "typed-path 0.10.0", - "unicode-segmentation", - "unicode-width 0.1.14", - "uuid", - "version-compare", - "vte", - "warp_completer", - "warp_core", - "warp_util", - "warpui", -] - -[[package]] -name = "warp_util" -version = "0.1.0" -dependencies = [ - "content_inspector", - "dirs 6.0.0", - "dunce", - "futures-util", - "gloo", - "hex", - "lazy_static", - "mime_guess", - "pathdiff", - "pin-project", - "rand 0.8.5", - "regex", - "serde", - "serde_json", - "thiserror 2.0.17", - "typed-path 0.10.0", - "warpui", - "windows 0.62.2", -] - -[[package]] -name = "warp_web_event_bus" -version = "0.0.0" -dependencies = [ - "js-sys", - "log", - "serde", - "serde-wasm-bindgen", - "wasm-bindgen", -] - -[[package]] -name = "warpui" -version = "0.0.0" -dependencies = [ - "anyhow", - "arboard", - "asset_cache", - "async-io", - "async-task", - "bimap", - "bindgen 0.70.1", - "block", - "blocking", - "bytemuck", - "cc", - "cfg-if", - "cfg_aliases 0.2.1", - "chrono", - "cocoa 0.26.0", - "command", - "core-foundation 0.10.1", - "core-graphics 0.25.0", - "core-text", - "cosmic-text", - "ctrlc", - "dashmap", - "derivative", - "derive_more 0.99.17", - "dirs 6.0.0", - "dispatch", - "dwrote", - "env_logger", - "font-kit", - "fontconfig", - "fontdb", - "foreign-types 0.5.0", - "futures", - "futures-lite 1.13.0", - "futures-timer", - "futures-util", - "global-hotkey", - "gloo", - "image", - "instant", - "itertools 0.14.0", - "js-sys", - "lazy_static", - "libc", - "log", - "markdown_parser", - "memmap2 0.9.7", - "metal", - "native-dialog", - "nix 0.26.4", - "notify-rust", - "num-traits", - "objc", - "open", - "ordered-float 3.9.2", - "owned_ttf_parser", - "parking_lot", - "pathfinder_color", - "pathfinder_geometry", - "rand 0.8.5", - "resvg", - "rust-embed 8.7.2", - "serde", - "sum_tree", - "takecell", - "tauri-winrt-notification", - "thiserror 2.0.17", - "tini", - "urlencoding", - "vec1", - "version-compare", - "virtual-fs", - "warpui", - "warpui_core", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "wgpu", - "windows 0.62.2", - "windows-core 0.62.2", - "windows-version", - "winit", - "winreg", - "x11-dl", - "x11rb", - "zbus", -] - -[[package]] -name = "warpui_core" -version = "0.1.0" -dependencies = [ - "anyhow", - "arboard", - "async-broadcast", - "async-channel", - "async-executor", - "async-fs", - "async-io", - "async-task", - "bounded-vec-deque", - "bytes", - "cfg-if", - "cfg_aliases 0.2.1", - "chrono", - "command", - "concat-idents", - "ctor", - "ctrlc", - "dashmap", - "derivative", - "derive_more 0.99.17", - "dirs 6.0.0", - "enum-iterator", - "float-cmp", - "font-kit", - "futures", - "futures-lite 1.13.0", - "futures-util", - "gloo", - "image", - "infer", - "instant", - "itertools 0.14.0", - "lazy_static", - "log", - "markdown_parser", - "minimp4", - "num-derive", - "num-traits", - "num_cpus", - "openh264", - "ordered-float 3.9.2", - "parking_lot", - "pathfinder_color", - "pathfinder_geometry", - "rand 0.8.5", - "rangemap", - "raw-window-handle 0.6.2", - "resvg", - "rstar", - "rust-embed 8.7.2", - "rustc-hash 2.1.1", - "schemars", - "serde", - "serde_json", - "settings_value", - "similar", - "simplelog", - "smallvec 1.15.1", - "string-offset", - "strum", - "strum_macros", - "sum_tree", - "tempfile", - "thiserror 2.0.17", - "titlecase", - "tokio", - "trait-set", - "vec1", - "warp_util", - "warpui_core", - "wasm-bindgen-futures", - "woothee", -] - -[[package]] -name = "warpui_extras" -version = "0.0.0" -dependencies = [ - "anyhow", - "async-channel", - "cocoa 0.26.0", - "gloo-storage", - "log", - "objc", - "ouroboros", - "rand 0.8.5", - "ring", - "secret-service", - "security-framework 2.9.2", - "serde", - "serde_json", - "sha2", - "tempfile", - "thiserror 2.0.17", - "toml_edit 0.25.6+spec-1.1.0", - "warpui", - "warpui_extras", - "windows 0.62.2", - "windows-registry 0.2.0", - "windows-result 0.2.0", -] - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -15251,9 +15251,9 @@ dependencies = [ "anyhow", "async-channel", "futures", + "galaxyui", "log", "notify-debouncer-full", - "warpui", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 3b499172..71c4fdc1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,14 +16,14 @@ default-members = [ "crates/graphql", "crates/markdown_parser", "crates/sum_tree", - "crates/warpui", - "crates/warp_completer", - "crates/warp_terminal", - "crates/warp_util", + "crates/galaxyui", + "crates/galaxy_completer", + "crates/galaxy_terminal", + "crates/galaxy_util", ] [workspace.package] -authors = ["Warp Team "] +authors = ["Ryan Ward "] license = "AGPL-3.0-only" publish = false @@ -67,28 +67,28 @@ ui_components = { path = "crates/ui_components" } vim = { path = "crates/vim" } virtual-fs = { path = "crates/virtual_fs" } voice_input = { path = "crates/voice_input" } -warp = { path = "app" } -warp_cli = { path = "crates/warp_cli" } -warp_completer = { path = "crates/warp_completer" } -warp_core = { path = "crates/warp_core" } -warp_editor = { path = "crates/editor" } -warp_features = { path = "crates/warp_features" } +galaxy = { path = "app" } +galaxy_cli = { path = "crates/galaxy_cli" } +galaxy_completer = { path = "crates/galaxy_completer" } +galaxy_core = { path = "crates/galaxy_core" } +galaxy_editor = { path = "crates/editor" } +galaxy_features = { path = "crates/galaxy_features" } remote_server = { path = "crates/remote_server" } -warp_files = { path = "crates/warp_files" } -warp_graphql = { path = "crates/graphql" } -warp_graphql_schema = { path = "crates/warp_graphql_schema" } -warp_isolation_platform = { path = "crates/isolation_platform" } -warp_js = { path = "crates/warp_js" } -warp_logging = { path = "crates/warp_logging" } -warp_managed_secrets = { path = "crates/managed_secrets" } -warp_ripgrep = { path = "crates/warp_ripgrep" } -warp_server_client = { path = "crates/warp_server_client" } -warp_terminal = { path = "crates/warp_terminal" } -warp_util = { path = "crates/warp_util" } -warp_web_event_bus = { path = "crates/warp_web_event_bus" } -warpui = { path = "crates/warpui" } -warpui_core = { path = "crates/warpui_core" } -warpui_extras = { path = "crates/warpui_extras", default-features = false } +galaxy_files = { path = "crates/galaxy_files" } +galaxy_graphql = { path = "crates/graphql" } +galaxy_graphql_schema = { path = "crates/galaxy_graphql_schema" } +galaxy_isolation_platform = { path = "crates/isolation_platform" } +galaxy_js = { path = "crates/galaxy_js" } +galaxy_logging = { path = "crates/galaxy_logging" } +galaxy_managed_secrets = { path = "crates/managed_secrets" } +galaxy_ripgrep = { path = "crates/galaxy_ripgrep" } +galaxy_server_client = { path = "crates/galaxy_server_client" } +galaxy_terminal = { path = "crates/galaxy_terminal" } +galaxy_util = { path = "crates/galaxy_util" } +galaxy_web_event_bus = { path = "crates/galaxy_web_event_bus" } +galaxyui = { path = "crates/galaxyui" } +galaxyui_core = { path = "crates/galaxyui_core" } +galaxyui_extras = { path = "crates/galaxyui_extras", default-features = false } watcher = { path = "crates/watcher" } websocket = { path = "crates/websocket" } diff --git a/REVIEW.md b/REVIEW.md new file mode 100644 index 00000000..aec464c6 --- /dev/null +++ b/REVIEW.md @@ -0,0 +1,410 @@ +# Galaxy AI — Codebase Review + +> **Generated:** 2026-05-07 +> **Branch state:** HEAD detached at `f4e2475` ("Rebasing, going about this another way") +> **Scope:** ~55 files with uncommitted modifications reviewed for gaps, inconsistencies, and improvement opportunities. +> **Purpose:** Reference document for agents continuing this work. No code changes were made during this review. + +--- + +## Table of Contents + +1. [Executive Summary](#1-executive-summary) +2. [Branding Rebrand — Warp → Galaxy AI](#2-branding-rebrand--warp--galaxy-ai) +3. [Environment Variable Renames — WARP_ → GALAXY_](#3-environment-variable-renames--warp_--galaxy_) +4. [Config & Path Changes](#4-config--path-changes) +5. [Bedrock AI Feature](#5-bedrock-ai-feature) +6. [Samsung Themes & UI Font](#6-samsung-themes--ui-font) +7. [Autoupdate Changes](#7-autoupdate-changes) +8. [Unreviewed Files](#8-unreviewed-files) +9. [Crate Naming Inconsistency](#9-crate-naming-inconsistency) +10. [Prioritized Gap List](#10-prioritized-gap-list) +11. [Improvement Opportunities](#11-improvement-opportunities) + +--- + +## 1. Executive Summary + +This branch implements three major workstreams: + +1. **Rebrand** — Surface-level rename from "Warp" → "Galaxy AI" for Samsung product identity. +2. **Bedrock AI** — New direct AWS Bedrock call path as an alternative/fallback to the Warp server AI path, including new slash command handlers, stream normalization, and a diagnostic logger. +3. **Samsung Themes & UI Font** — New `SamsungDark`/`SamsungLight` themes and a `ui_font_name` setting for brand presets. + +The rebrand is **partially complete**. Several environment variable renames are missing on Windows code paths, and many `warp.dev` URLs remain untouched. There is a **critical runtime inconsistency** in integration test detection (`WARP_INTEGRATION` vs `GALAXY_INTEGRATION`) that will break integration test mode. The Bedrock feature is substantive and generally well-constructed, but has several reliability and API design concerns documented below. + +--- + +## 2. Branding Rebrand — Warp → Galaxy AI + +### ✅ Completed Correctly + +| File | Change | +|---|---| +| `app/src/app_menus.rs` | Menu title `"Warp"` → `"Galaxy AI"` | +| `app/src/root_view.rs` | `WINDOW_TITLE` → `"Galaxy AI"`, welcome message updated | +| `app/src/ai_assistant/mod.rs` | `AI_ASSISTANT_FEATURE_NAME` → `"Galaxy AI"`, `ASK_AI_ASSISTANT_TEXT` updated | +| `app/src/ai_assistant/panel.rs` | `"Restart Warp AI"` → `"Restart Galaxy AI"` (2 places) | +| `app/src/ai/harness_display.rs` | `"Warp Agent"` → `"Galaxy Agent"` | +| `app/src/settings_view/ai_page.rs` | Agent labels updated throughout | +| `app/src/settings_view/about_page.rs` | Logo SVG → `bedrock.svg`, copyright → Samsung Electronics Co., Ltd. | +| `app/src/workspace/mod.rs` | `"Warp Drive"` → `"Galaxy Drive"` throughout | +| `app/src/workspace/view.rs` | Update prompt, Drive references updated | +| `app/src/search/data_source.rs` | Drive filter label updated | +| `app/src/uri/browser_url_handler.rs` | `DEFAULT_TITLE` → `"Galaxy AI"` | +| `app/src/bin/local.rs` | CFBundle* keys → Samsung/GalaxyAI | +| `app/src/bin/oss.rs` | CFBundle* keys → Samsung/GalaxyAI, AppId updated | +| `crates/warp_core/src/channel/mod.rs` | CLI command names `oz` → `galaxy-ai` | + +### ❌ Gaps — Remaining "Warp" References + +#### UI / Window Titles +- **`app/src/root_view.rs` lines 797, 840, 892, 1264, 1449** — Still use `title: Some("Warp".to_owned())`. These are dialog/modal window titles. Need: `"Galaxy AI"`. +- **`app/src/workflows/local_workflows.rs:227`** — `author: Some("Warp".into())` for local workflows author attribution. + +#### Enum Values (May Be Intentional — Verify) +- **`app/src/terminal/view/ambient_agent/host_selector.rs:48`** — `Host::Warp => "Warp"` — Display label for an enum variant. If the `Host::Warp` variant is kept for protocol compatibility, the display label may still need updating. +- **`app/src/ai/mcp/mod.rs:76`** — `MCPProvider::Warp => "Warp"` — MCP provider display name. If Warp MCP is still a valid provider, this may be intentional. +- **`app/src/settings_view/appearance_page.rs:3459`** — `RadioButtonItem::text("Warp")` — Context unclear; needs investigation. + +#### External Editor / OAuth +- **`app/src/settings_view/features/external_editor.rs:157,179`** — `"Warp"` as an editor choice. Refers to using Warp itself as the external editor; likely intentional but should be verified. +- **`app/src/ai/mcp/templatable_manager/oauth.rs:306,324`** — `"Warp"` as OAuth client name. If this is sent to an external OAuth provider, it must be updated to `"Galaxy AI"`. + +#### Windows Startup Registry +- **`app/src/login_item/windows.rs`** — Multiple `"Warp"` registry key names for Windows startup login item. These control Windows startup behavior and must be updated to avoid conflicts with the actual Warp app if both are installed. + +#### URLs — All Still Point to `warp.dev` +These are all unmodified and need new Samsung/Galaxy AI target URLs: + +| File | URL(s) | +|---|---| +| `app/src/util/links.rs` | All doc, privacy, slack URLs — `warp.dev` | +| `app/src/resource_center/sections.rs` | `docs.warp.dev` | +| `app/src/resource_center/section_views/changelog_section.rs` | `docs.warp.dev/changelog` | +| `app/src/auth/auth_view_shared_helpers.rs:29` | `https://warp.dev/privacy` | +| `app/src/launch_configs/save_modal.rs:533` | `docs.warp.dev` | +| `app/src/wasm_nux_dialog.rs` | `app.warp.dev`, `www.warp.dev` | +| `app/src/integration_testing/agent_mode/mod.rs` | `staging.warp.dev` | +| `app/src/cloud_object/mod.rs` | `warp.dev/drive/` in comment, `joan@warp.dev` example email | + +#### Stale Comment +- **`app/src/workspace/view.rs:546`** — Comment still reads: *"Use the word 'Warp'..."* — should be updated or removed. + +#### Referral Theme Display Names +- **`app/src/themes/theme.rs`** — `ThemeKind::SentReferralReward` displays as `"Warp Referral"` and `ThemeKind::ReceivedReferralReward` displays as `"Referred to Warp"`. Not updated. + +--- + +## 3. Environment Variable Renames — WARP_ → GALAXY_ + +### ✅ Completed Correctly + +| Old Name | New Name | File | +|---|---|---| +| `WARP_SERVER_ROOT_URL` | `GALAXY_SERVER_ROOT_URL` | `crates/warp_cli/src/lib.rs` | +| `WARP_WS_SERVER_URL` | `GALAXY_WS_SERVER_URL` | `crates/warp_cli/src/lib.rs` | +| `WARP_SESSION_SHARING_SERVER_URL` | `GALAXY_SESSION_SHARING_SERVER_URL` | `crates/warp_cli/src/lib.rs` | +| `WARP_API_KEY` | `GALAXY_API_KEY` | `crates/warp_cli/src/lib.rs` | +| `WARP_OUTPUT_FORMAT` | `GALAXY_OUTPUT_FORMAT` | `crates/warp_cli/src/lib.rs` | +| `WARP_SHELL_PATH` | `GALAXY_SHELL_PATH` | `crates/warp_util/src/path.rs` | +| `WARP_INTEGRATION` | `GALAXY_INTEGRATION` | `crates/warp_logging/src/native.rs` | +| `WARP_EXTRA_HTTP_HEADERS` | `GALAXY_EXTRA_HTTP_HEADERS` | `crates/http_client/src/lib.rs` | +| `WARP_CLIENT_VERSION` | `GALAXY_CLIENT_VERSION` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_USE_SSH_WRAPPER` | `GALAXY_USE_SSH_WRAPPER` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_IS_LOCAL_SHELL_SESSION` | `GALAXY_IS_LOCAL_SHELL_SESSION` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_CLI_AGENT_PROTOCOL_VERSION` | `GALAXY_CLI_AGENT_PROTOCOL_VERSION` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_SHELL_DEBUG_MODE` | `GALAXY_SHELL_DEBUG_MODE` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_HONOR_PS1` | `GALAXY_HONOR_PS1` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_PATH_APPEND` | `GALAXY_PATH_APPEND` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_INITIAL_HISTFILESIZE` | `GALAXY_INITIAL_HISTFILESIZE` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_INITIAL_WORKING_DIR` | `GALAXY_INITIAL_WORKING_DIR` | `app/src/terminal/local_tty/unix.rs` | +| `WARP_CLOUD_MODE_DEFAULT_HOST` | `GALAXY_CLOUD_MODE_DEFAULT_HOST` | `app/src/terminal/view/ambient_agent/model.rs` | + +### ❌ CRITICAL: `WARP_INTEGRATION` Split + +**`app/src/lib.rs:658`** still reads `WARP_INTEGRATION`, but `crates/warp_logging/src/native.rs` was updated to `GALAXY_INTEGRATION`. These two reads must match or integration test detection will silently fail — the app won't recognize it's running in integration test mode even when `GALAXY_INTEGRATION=1` is set. + +**Fix:** Update `app/src/lib.rs:658` to read `GALAXY_INTEGRATION`. + +### ❌ Missing Renames + +#### Windows TTY Path (Complete Gap) +`app/src/terminal/local_tty/windows/environment.rs` — **ALL** of these env vars are still using `WARP_*` names (lines 20–27, 105–116). The Unix path was updated but Windows was skipped entirely: +- `WARP_HONOR_PS1` +- `WARP_INITIAL_WORKING_DIR` +- `WARP_USE_SSH_WRAPPER` +- `WARP_SHELL_DEBUG_MODE` +- `WARP_IS_LOCAL_SHELL_SESSION` +- `WARP_PATH_APPEND` +- `WARP_CLIENT_VERSION` +- `WARP_CLI_AGENT_PROTOCOL_VERSION` + +#### Other Missing Renames + +| File | Env Var | Priority | +|---|---|---| +| `app/src/lib.rs:643` | `WARP_CLI_MODE` | High | +| `app/src/lib.rs:658` | `WARP_INTEGRATION` | **CRITICAL** | +| `app/src/lib.rs:866` | `WARP_ENABLE_WAYLAND` | Medium | +| `app/src/plugin/mod.rs:17` | `WARP_PLUGIN_HOST_ADDRESS` | High | +| `app/src/terminal/remote_tty/event_loop.rs:179` | `WARP_HONOR_PS1` | High | +| `app/src/autoupdate/channel_versions.rs:20` | `WARP_CHANNEL_VERSIONS_PATH` | Medium | +| `app/src/autoupdate/mac.rs:150-151` | `WARP_CHANNEL_VERSIONS_PATH` | Medium | +| `app/src/autoupdate/linux.rs:153-154` | `WARP_CHANNEL_VERSIONS_PATH` | Medium | +| `app/src/auth/auth_state.rs:107` | `WARP_USER_SECRET` (build-time) | Medium | +| `app/src/settings/debug.rs:5` | Comment only — `WARP_SHELL_DEBUG_MODE` | Low | + +--- + +## 4. Config & Path Changes + +### Config Directory Migration Chain + +**`crates/warp_core/src/paths.rs`** was updated: +- `WARP_CONFIG_DIR` → `.galaxy-ai` +- `LEGACY_WARP_CONFIG_DIR` → `.warp-core` + +**Problem:** The migration chain is now: `.warp-core` → `.galaxy-ai` + +However, the original legacy path `.warp` needs to be in the migration chain. Users with an original Warp installation who never ran `.warp-core` will have their config in `.warp`. The current code only migrates from `.warp-core`, so original Warp users will lose their settings on first launch of Galaxy AI. + +**Recommendation:** Add a third legacy entry for `.warp` (the original Warp config dir) so the full chain is preserved: `.warp` (original Warp) → `.warp-core` (intermediate) → `.galaxy-ai` (current). Verify if this was already handled via a separate legacy migration step before assuming it's missing. + +### Server Config Cleared + +**`crates/warp_core/src/channel/config.rs`** — All production server URLs have been cleared to empty strings: +- `server_root_url = ""` +- `rtc_server_url = ""` +- `session_sharing_server_url = ""` +- `firebase_auth_api_key` = `None` +- `oz_root_url = ""` + +This appears intentional — the Samsung/Galaxy AI deployment won't use the Warp backend. The related fallback behavior in `channel/state.rs` and `server/server_api.rs` (silently falling back to `http://localhost` when URL is empty) handles this gracefully for Bedrock-only operation. + +**Concern:** If any codepath still requires server connectivity (e.g., sync, Drive, auth), it will silently talk to localhost and fail without a clear error. Consider surfacing a more descriptive error when server config is intentionally empty and a server-dependent feature is attempted. + +--- + +## 5. Bedrock AI Feature + +This is the primary new feature. A complete AWS Bedrock direct-call path runs alongside (and as an alternative to) the Warp server AI path. + +### New Files + +| File | Purpose | +|---|---| +| `app/src/ai/bedrock/diagnostic.rs` | `BedrockDiagnosticLogger` — file-based diagnostic logging, activated via `GALAXY_BEDROCK_DIAGNOSTICS=1`, 10MB rotation | +| `app/src/ai/bedrock/e2e_tests.rs` | Comprehensive E2E integration tests (requires `BEDROCK_INTEGRATION_TEST` env var) | +| `app/src/ai/bedrock/integration_tests.rs` | Unit-level stream output collection tests | + +### Modified Files + +| File | Key Change | +|---|---| +| `app/src/ai/bedrock/client.rs` | Added `needs_create_task: bool` and `diagnostic_logger` params to `converse_stream()` | +| `app/src/ai/bedrock/convert.rs` | Added `Clone`, `Debug`, `PartialEq` derives to core types | +| `app/src/ai/bedrock/convert_request.rs` | New input type handlers: `InitProjectRules`, `CreateEnvironment`, `CreateNewProject`, `CloneRepository`, `AutoCodeDiffQuery`, `ResumeConversation`, `QueryWithCannedResponse`, `CodeReview` | +| `app/src/ai/bedrock/stream.rs` | Buffered text flush threshold, `needs_create_task` / `CreateTask` event, reasoning content discarded | +| `app/src/ai/agent/api/impl.rs` | `needs_create_task` detection, diagnostic logger wiring, verbose debug logging | +| `app/src/ai/llms.rs` | Bedrock models added to `coding` and `cli_agent` feature slots (previously only `agent_mode`) | + +### Concerns & Gaps + +#### 🔴 Critical + +**`WARP_INTEGRATION` / `GALAXY_INTEGRATION` split** (also listed in §3) — The diagnostic logger in `diagnostic.rs` and the integration test detection in `app/src/lib.rs` use different env var names. This is already flagged under §3 but bears repeating here as it directly affects Bedrock E2E test execution. + +#### 🟠 High + +**`needs_create_task` detection logic** (`app/src/ai/agent/api/impl.rs`) +Detected via `task_context.tasks.is_empty()`. If the tasks list is populated with a placeholder or shell task entry before the first real task is submitted, this flag will be `false` and `CreateTask` will never be emitted, silently breaking the task creation flow for Bedrock on the first turn. + +**E2E test tool_use_id mismatch** (`app/src/ai/bedrock/e2e_tests.rs`) +In `test_agent_multi_turn_tool_use_produces_output`, the test synthesizes tool result IDs as `tool_{total_turns}`, but the actual tool call ID emitted from the stream is a different value. This means the tool_call_id round-trip assertion will fail or be skipped silently. The test may pass vacuously. + +**`ensure_tool_results_paired()` synthesized results** (`app/src/ai/bedrock/convert_request.rs`) +This function inserts placeholder tool results for orphaned tool calls. The synthesized content is empty/default, which could confuse the model on subsequent turns. The synthesized result should include a meaningful message like `"Tool result not available"` rather than empty content. + +#### 🟡 Medium + +**`TEXT_FLUSH_THRESHOLD = 20`** (`app/src/ai/bedrock/stream.rs`) +Text fragments shorter than 20 characters before a tool call boundary are silently discarded. This can drop model preamble text such as `"Let me look at that..."` or `"OK."`. Consider buffering until a natural boundary (tool call or stop event) rather than a character threshold, or surface buffered content even if short. + +**`converse_stream()` wide parameter surface** (`app/src/ai/bedrock/client.rs`) +The function now takes 9 parameters including `needs_create_task` in the middle of the list. This is fragile and hard to read at call sites. Recommend grouping into a `BedrockConversationConfig` struct. + +**Diagnostic logger privacy concern** (`app/src/ai/bedrock/diagnostic.rs`) +`log_protobuf_input` uses Rust's `{:?}` debug format rather than structured JSON. This is inconsistent with the rest of the logger (which emits JSON) and may dump sensitive content (full conversation history, file contents) to disk in an unstructured format. Consider either JSON serialization or explicit redaction. + +#### 🟢 Low + +**Reasoning content silently discarded** (`app/src/ai/bedrock/stream.rs`) +Reasoning/thinking content from models that emit it (e.g., Claude 3.7 extended thinking) is currently discarded. This is an intentional product decision but should be documented in a comment so future contributors understand why. + +**`diagnostic.rs` log path** — Uses `warp_logging::log_directory()`. The log file will land in the `warp_logging`-configured directory. Verify this resolves to the correct Galaxy AI log directory on all platforms. + +--- + +## 6. Samsung Themes & UI Font + +### New Additions + +- **`app/src/themes/default_themes.rs`** — `samsung_dark()` and `samsung_light()` theme functions with full ANSI color palettes. +- **`app/src/themes/theme.rs`** — `ThemeKind::SamsungDark` and `ThemeKind::SamsungLight` enum variants. +- **`app/src/settings/font.rs`** — `DEFAULT_UI_FONT_NAME: &str = ""` constant; new `ui_font_name` setting persisted at `appearance.text.ui_font_name`. +- **`app/src/settings_view/appearance_page.rs`** — `UIFontWidget`, `BrandPresetWidget`, `SetUIFontFamily(String)` action, `ApplySamsungBrandPreset` action. +- **`app/src/appearance.rs`** — `FontSettingsChangedEvent::UIFontName` handler; `set_ui_font_family()` called at init and on change. + +### Concerns + +**`DEFAULT_UI_FONT_NAME = ""`** — Empty string used as sentinel for "system default font". This works but is a code smell. Recommend `Option` or a named constant like `"system"` that is clearly documented as the system default sentinel. + +**`apply_samsung_brand_preset()` not fully reviewed** — The function is referenced in the appearance page but its full implementation wasn't visible in the reviewed diffs. Ensure it sets both font and theme atomically (not partially applied). + +**Referral theme display names not updated** — `ThemeKind::SentReferralReward` → `"Warp Referral"` and `ThemeKind::ReceivedReferralReward` → `"Referred to Warp"`. These should be updated to Galaxy AI equivalents. + +--- + +## 7. Autoupdate Changes + +`app/src/autoupdate/mac.rs` and `app/src/autoupdate/windows.rs` are modified per `git status` but were not fully reviewed. Key finding: + +- **`WARP_CHANNEL_VERSIONS_PATH`** env var is NOT renamed in any of the autoupdate files (`channel_versions.rs`, `mac.rs`, `linux.rs`). This means the auto-update channel selection won't respect the renamed env var. + +--- + +## 8. Unreviewed Files + +The following files appeared in `git status` but were not reviewed during this pass: + +| File | Likely Purpose | +|---|---| +| `crates/warpui/src/rendering/wgpu/mod.rs` | Unknown — possibly rendering/branding change | +| `crates/warpui/src/windowing/winit/delegate.rs` | Unknown — possibly window title or branding | +| `crates/integration/src/test.rs` | Integration test framework — possibly `GALAXY_INTEGRATION` wiring | +| `script/macos/bundle` | macOS bundle script — likely bundle ID / app name | +| `app/DockTilePlugin/Info.plist` | macOS Dock tile plugin — likely bundle ID / display name | +| `app/build.rs` | Cargo build script — likely binary name, bundle ID, version | +| `app/assets/bundled/svg/bedrock.svg` | New Bedrock/Samsung logo SVG asset | +| `app/assets/Galaxy_AI_Logo.jpg` | New logo asset | +| `app/assets/Galaxy_AI_Logo.png` | New logo asset | + +**These files must be reviewed** before this branch is considered complete. The `build.rs` in particular often controls bundle identifiers and binary names critical to the rebrand. + +--- + +## 9. Crate Naming Inconsistency + +All internal crates retain `warp_*` naming: +- `warp_core` +- `warpui` +- `warp_logging` +- `warp_cli` +- `warp_util` +- `warp_multi_agent_api` + +**Decision needed:** Is keeping `warp_*` crate names intentional (for internal stability / CI continuity) or an oversight? If Samsung intends to publish or open-source these crates under Galaxy AI branding, the crate names should be renamed. If they are purely internal, keeping `warp_*` is acceptable but should be documented explicitly in `WARP.md` or `README.md` to avoid future confusion. + +--- + +## 10. Prioritized Gap List + +### 🔴 Critical — Fix Before Ship + +| # | Issue | File(s) | +|---|---|---| +| C1 | `WARP_INTEGRATION` / `GALAXY_INTEGRATION` split — breaks integration test detection at runtime | `app/src/lib.rs:658` | +| C2 | Windows TTY env vars completely skipped — Windows shell integration broken | `app/src/terminal/local_tty/windows/environment.rs` | +| C3 | E2E test tool_use_id mismatch — multi-turn tool use test may be vacuously passing | `app/src/ai/bedrock/e2e_tests.rs` | + +### 🟠 High — Fix Before Beta + +| # | Issue | File(s) | +|---|---|---| +| H1 | `needs_create_task` false negative if task list pre-populated | `app/src/ai/agent/api/impl.rs` | +| H2 | `WARP_CLI_MODE`, `WARP_ENABLE_WAYLAND`, `WARP_PLUGIN_HOST_ADDRESS` not renamed | `app/src/lib.rs`, `app/src/plugin/mod.rs` | +| H3 | Remote TTY `WARP_HONOR_PS1` not renamed | `app/src/terminal/remote_tty/event_loop.rs:179` | +| H4 | OAuth client name still `"Warp"` — sent to external providers | `app/src/ai/mcp/templatable_manager/oauth.rs` | +| H5 | Windows registry login item still uses `"Warp"` key names | `app/src/login_item/windows.rs` | +| H6 | Unreviewed files — `build.rs`, `DockTilePlugin/Info.plist`, `script/macos/bundle` | See §8 | +| H7 | Config migration chain may leave original `.warp` users without migrated settings | `crates/warp_core/src/paths.rs` | + +### 🟡 Medium — Fix Before GA + +| # | Issue | File(s) | +|---|---|---| +| M1 | All `warp.dev` URLs untouched — wrong privacy policy, docs, and external links | `app/src/util/links.rs` + 7 other files | +| M2 | `converse_stream()` 9-param signature — should use config struct | `app/src/ai/bedrock/client.rs` | +| M3 | `TEXT_FLUSH_THRESHOLD = 20` may silently discard model preamble text | `app/src/ai/bedrock/stream.rs` | +| M4 | `ensure_tool_results_paired()` synthesizes empty tool results — may confuse model | `app/src/ai/bedrock/convert_request.rs` | +| M5 | `WARP_CHANNEL_VERSIONS_PATH` not renamed in autoupdate | `app/src/autoupdate/` | +| M6 | Diagnostic logger `log_protobuf_input` uses debug format, not JSON | `app/src/ai/bedrock/diagnostic.rs` | +| M7 | `WARP_USER_SECRET` build-time env not renamed | `app/src/auth/auth_state.rs:107` | +| M8 | `DEFAULT_UI_FONT_NAME = ""` sentinel is a code smell | `app/src/settings/font.rs` | +| M9 | Referral theme display names still say `"Warp Referral"` | `app/src/themes/theme.rs` | +| M10 | Root view dialog titles still `"Warp"` (5 locations) | `app/src/root_view.rs` | +| M11 | Local workflow author still `"Warp"` | `app/src/workflows/local_workflows.rs:227` | + +### 🟢 Low — Polish / Documentation + +| # | Issue | File(s) | +|---|---|---| +| L1 | Stale comment: *"Use the word 'Warp'..."* | `app/src/workspace/view.rs:546` | +| L2 | Reasoning content discard should be documented with a comment | `app/src/ai/bedrock/stream.rs` | +| L3 | `warp_*` crate naming — document intent (internal stable vs. rebrand needed) | All `Cargo.toml` files | +| L4 | `apply_samsung_brand_preset()` full implementation not reviewed | `app/src/settings_view/appearance_page.rs` | +| L5 | `WARP.md` build commands still reference `cargo bundle --bin warp` — should be updated | `WARP.md` | +| L6 | `RadioButtonItem::text("Warp")` in appearance page — context unclear | `app/src/settings_view/appearance_page.rs:3459` | +| L7 | Comment-only `WARP_SHELL_DEBUG_MODE` ref | `app/src/settings/debug.rs:5` | + +--- + +## 11. Improvement Opportunities + +### Bedrock API Design + +**`BedrockConversationConfig` struct** — The `converse_stream()` function now takes 9 parameters. Create a config struct: + +```rust +pub struct BedrockConversationConfig { + pub messages: Vec, + pub tools: Vec, + pub system_prompt: Option, + pub model_id: String, + pub needs_create_task: bool, + pub diagnostic_logger: Option>, + // ... +} +``` + +**Stream text buffering** — Instead of the character threshold approach (`TEXT_FLUSH_THRESHOLD = 20`), consider accumulating text until a semantic boundary (tool call start, stop event, or a configurable flush interval). This avoids the silent text discard problem. + +**Synthesized tool results** — When `ensure_tool_results_paired()` synthesizes a tool result for an orphaned call, inject a meaningful error message in the content rather than empty content: +```rust +content: "Error: tool result was not provided for this tool call".to_string() +``` + +### Diagnostic Logger + +**Structured logging** — Replace `{:?}` debug format in `log_protobuf_input` with proper JSON serialization. Consider using `serde_json` for consistent structured output across all log methods. + +**Redaction** — The diagnostic logger logs the full conversation including user messages and file contents. Add a redaction layer or at minimum document that `GALAXY_BEDROCK_DIAGNOSTICS=1` is a developer-only flag not intended for production use. + +### Settings & Themes + +**`Option` for UI font** — Replace `DEFAULT_UI_FONT_NAME = ""` with `Option` where `None` means system default. This is more idiomatic Rust and avoids the empty string sentinel. + +**Samsung brand preset atomicity** — Ensure `apply_samsung_brand_preset()` applies theme and font in a single transaction to avoid intermediate UI state where only one of the two is applied. + +### Error Handling for Empty Server Config + +When `server_root_url` is intentionally empty (the Galaxy AI deployment case), and a server-dependent feature (Drive, sync, auth) is attempted, the app currently falls back silently to `http://localhost`. Add a specific error variant or user-facing message for this case: +> *"This feature requires a Warp server connection which is not configured in this build."* + +### Documentation + +- Document the `warp_*` crate naming decision in `WARP.md` or `README.md`. +- Document `GALAXY_BEDROCK_DIAGNOSTICS=1` in `WARP.md` as a development diagnostic flag. +- Add a comment in `stream.rs` explaining why reasoning content is discarded. +- Update `WARP.md` build commands to reference the Galaxy AI binary name (if renamed). diff --git a/WARP.md b/WARP.md index 05d7c5f2..518605e8 100644 --- a/WARP.md +++ b/WARP.md @@ -178,3 +178,12 @@ if FeatureFlag::YourNewFeature.is_enabled() { ### Exhaustive Matching When adding/editing match statements, avoid using the wildcard _ when at all possible. Exhaustive matching is helpful for ensuring that all variants are handled, especially when adding new variants to enums in the future. + +### Appearance Settings Notes + +- Samsung-inspired built-in themes are available as `SamsungDark` and `SamsungLight`. +- UI font selection is persisted in `appearance.text.ui_font_name` and uses an empty string as the system-default sentinel. +- The one-click Samsung brand preset is implemented in `app/src/settings_view/appearance_page.rs` and applies: + - Samsung dark/light theme mapping + - terminal + AI font defaults + - a best-available Samsung-style UI font fallback diff --git a/app/Cargo.toml b/app/Cargo.toml index 9270045d..5693e897 100644 --- a/app/Cargo.toml +++ b/app/Cargo.toml @@ -1,16 +1,16 @@ [package] -authors = ["Warp Team "] -default-run = "warp-oss" -description = "The cloud-backed terminal for individuals and teams" +authors = ["Ryan Ward "] +default-run = "galaxy-ai-oss" +description = "Galaxy AI - AI-powered terminal for development teams" edition = "2021" autobins = false -name = "warp" +name = "galaxy" version = "0.1.0" publish.workspace = true license.workspace = true [lib] -name = "warp" +name = "galaxy" path = "src/lib.rs" # We define separate targets for each channel (stable, preview, dev) so that we can @@ -18,12 +18,12 @@ path = "src/lib.rs" # flag overrides). Otherwise these binaries are exactly identical to our main binary. [[bin]] -name = "warp-oss" +name = "galaxy-ai-oss" path = "src/bin/oss.rs" test = false [[bin]] -name = "warp" +name = "galaxy-ai" path = "src/bin/local.rs" test = false @@ -134,7 +134,7 @@ line-ending.workspace = true log.workspace = true log-panics = { version = "2.1.0", features = ["with-backtrace"] } lsp.workspace = true -warp_logging.workspace = true +galaxy_logging.workspace = true sentry = { workspace = true, optional = true } lz4_flex = "0.11" markdown_parser.workspace = true @@ -207,7 +207,7 @@ unindent = "0.1.7" url = { workspace = true, features = ["serde"] } urlocator.workspace = true uuid.workspace = true -warp_cli.workspace = true +galaxy_cli.workspace = true validator = "0.19.0" variant_count = "1.1.0" vec1.workspace = true @@ -215,19 +215,19 @@ version-compare.workspace = true vte.workspace = true walkdir.workspace = true warp-workflows.workspace = true -warp_completer.workspace = true -warp_core.workspace = true -warp_editor.workspace = true -warp_graphql.workspace = true -warp_js = { workspace = true, optional = true } -warp_server_client.workspace = true -warp_util.workspace = true -warpui = { workspace = true, features = ["schema_gen", "settings_value"] } +galaxy_completer.workspace = true +galaxy_core.workspace = true +galaxy_editor.workspace = true +galaxy_graphql.workspace = true +galaxy_js = { workspace = true, optional = true } +galaxy_server_client.workspace = true +galaxy_util.workspace = true +galaxyui = { workspace = true, features = ["schema_gen", "settings_value"] } voice_input = { workspace = true, optional = true } -warpui_extras = { workspace = true, features = ["default", "user_preferences-toml"] } +galaxyui_extras = { workspace = true, features = ["default", "user_preferences-toml"] } syntax_tree.workspace = true languages.workspace = true -warp_terminal.workspace = true +galaxy_terminal.workspace = true websocket.workspace = true wgpu = { workspace = true, optional = true } natural_language_detection.workspace = true @@ -246,9 +246,9 @@ remote_server.workspace = true repo_metadata.workspace = true vim.workspace = true rmcp = { workspace = true, features = ["client"] } -warp_isolation_platform.workspace = true -warp_ripgrep.workspace = true -warp_managed_secrets.workspace = true +galaxy_isolation_platform.workspace = true +galaxy_ripgrep.workspace = true +galaxy_managed_secrets.workspace = true [target.'cfg(target_os = "macos")'.dependencies] block.workspace = true @@ -308,7 +308,7 @@ warp-command-signatures = { workspace = true, features = ["embed-signatures"] } is_executable = "1.0.1" gethostname = "1.1.0" watcher.workspace = true -warp_files.workspace = true +galaxy_files.workspace = true tantivy = "0.26.0" [target.'cfg(target_family = "wasm")'.dependencies] @@ -333,7 +333,7 @@ serde-wasm-bindgen = "0.6.5" # For wasm, we don't use the feature "embed-signatures". warp-command-signatures = { workspace = true } web-sys.workspace = true -warp_web_event_bus.workspace = true +galaxy_web_event_bus.workspace = true [target.'cfg(unix)'.dependencies] cvt = "0.1.1" @@ -396,14 +396,14 @@ mockito.workspace = true serial_test = "0.8.0" sum_tree = { workspace = true, features = ["test-util"] } virtual-fs.workspace = true -warp_completer = { workspace = true, features = ["test-util"] } -warp_core = { workspace = true, features = ["test-util"] } -warp_editor = { workspace = true, features = ["test-util"] } -warp_server_client = { workspace = true, features = ["test-util"] } -warp_terminal = { workspace = true, features = ["test-util"] } -warpui = { workspace = true, features = ["test-util"] } -warpui_extras = { workspace = true, features = ["test-util"] } -warp_files = { workspace = true, features = ["test-util"] } +galaxy_completer = { workspace = true, features = ["test-util"] } +galaxy_core = { workspace = true, features = ["test-util"] } +galaxy_editor = { workspace = true, features = ["test-util"] } +galaxy_server_client = { workspace = true, features = ["test-util"] } +galaxy_terminal = { workspace = true, features = ["test-util"] } +galaxyui = { workspace = true, features = ["test-util"] } +galaxyui_extras = { workspace = true, features = ["test-util"] } +galaxy_files = { workspace = true, features = ["test-util"] } repo_metadata = { workspace = true, features = ["test-util"] } [target.'cfg(not(target_family = "wasm"))'.dev-dependencies] @@ -417,7 +417,7 @@ prost-build.workspace = true sha2.workspace = true tempfile.workspace = true walkdir = "2.3.2" -warp_util.workspace = true +galaxy_util.workspace = true [target.'cfg(windows)'.build-dependencies] embed-resource = "3.0" @@ -445,7 +445,7 @@ command_predictor = [] context_line_review_comments = [] completions_v2 = [ "plugin_host", - "warp_completer/v2", + "galaxy_completer/v2", "dep:command-signatures-v2", ] crash_reporting = [ @@ -453,7 +453,7 @@ crash_reporting = [ "dep:sentry-log", "dep:minidumper", "dep:crash-handler", - "warp_logging/crash_reporting", + "galaxy_logging/crash_reporting", "ai/crash_reporting", ] creating_shared_sessions = [] @@ -557,7 +557,7 @@ default = [ "ambient_agents_command_line", "ambient_agents_image_upload", "scheduled_ambient_agents", - "warp_managed_secrets", + "galaxy_managed_secrets", "v4a_file_diffs", "classic_completions", "force_classic_completions", @@ -668,8 +668,8 @@ agent_mode_evals = [ "full_source_code_embedding", "cross_repo_context", "rust-embed/debug-embed", - "warpui/log_named_telemetry_events", - "warp_logging/agent_mode_evals", + "galaxyui/log_named_telemetry_events", + "galaxy_logging/agent_mode_evals", ] ambient_agents_command_line = [] ambient_agents_image_upload = [] @@ -710,7 +710,7 @@ local_fs = [ "lsp/local_fs", "persistence/local_fs", "repo_metadata/local_fs", - "warp_core/local_fs", + "galaxy_core/local_fs", ] log_expensive_frames_in_sentry = [] markdown_tables = [] @@ -731,7 +731,7 @@ read_image_files = [] # This feature enables plugin support in Warp. Note that its typically checked # directly, rather than via the `FeatureFlag` enum, because its value is # required early in the app lifecycle prior to `FeatureFlag` initialization. -plugin_host = ["dep:rquickjs", "dep:warp_js", "warp_cli/plugin_host"] +plugin_host = ["dep:rquickjs", "dep:galaxy_js", "galaxy_cli/plugin_host"] # Enable this feature to automatically perform CPU profiling via pprof. The # generated profile will be written to profile.pb in the current directory. # NOTE: This may slow down program execution. @@ -743,7 +743,7 @@ recording_mode = [] # This feature should only be enabled when building a release bundle with # the bundle script, and can be used to conditionally enable functionality # accordingly. -release_bundle = ["rust-embed/debug-embed", "warp_core/release_bundle"] +release_bundle = ["rust-embed/debug-embed", "galaxy_core/release_bundle"] render_agent_mode_output_markdown = [] render_continuous_block_selections_with_single_border = [] rich_history = [] @@ -767,10 +767,10 @@ team_workflows = ["team_features_override"] toggle_bootstrap_block = [] # Feature enabled only when app is compiled for integration tests. integration_tests = [ - "warp_cli/integration_tests", - "warpui/integration_tests", - "warpui/test-util", - "warp_core/integration_tests", + "galaxy_cli/integration_tests", + "galaxyui/integration_tests", + "galaxyui/test-util", + "galaxy_core/integration_tests", ] traces = [] viewing_shared_sessions = [] @@ -874,7 +874,7 @@ revert_to_checkpoints = [] rewind_slash_command = [] agent_view = [] agent_view_block_context = ["agent_view"] -warp_managed_secrets = [] +galaxy_managed_secrets = [] v4a_file_diffs = [] agent_tips = [] agent_toolbar_editor = ["agent_view"] diff --git a/app/DockTilePlugin/Info.plist b/app/DockTilePlugin/Info.plist index 95033c14..d8eef742 100644 --- a/app/DockTilePlugin/Info.plist +++ b/app/DockTilePlugin/Info.plist @@ -3,11 +3,11 @@ CFBundleIdentifier - dev.warp.WarpDockTilePlugin + com.samsung.GalaxyAIDockTilePlugin CFBundleExecutable WarpDockTilePlugin CFBundleName - WarpDockTilePlugin + GalaxyAIDockTilePlugin CFBundlePackageType BNDL CFBundleShortVersionString diff --git a/app/assets/async/jpg/Galaxy_AI_Logo.jpg b/app/assets/async/jpg/Galaxy_AI_Logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6d358366b5a65dbe64a8d6a5dae400d16c4b022d GIT binary patch literal 4944 zcmeHLXHZjJw@w8@34u@p0twv&DFFom6{HE$Q6xxLP>?_r zKL#ZtA`IshL32yX$K&ZoUU2EHpTpL&U+2!y${`XcJb zo#Rd97OH+sU-Gmw_0YV$7W?`9no}ly)@QGi!-DHI1<0i7%u+Y4$!t@b6I2GBe+7r- zr{5mZB-TY;Iew|=+mNsWoX&E4?if!<-&<^|_J)>ki&NHxreK>`8*B{K0pQ50aKbkVJRA9=g;)U#b&%00$%i$<$cVXW#x6(y=w)XaRh6YG9^v)$=GCmvsJ>6qUQ zTr!pUSHJ*a8*&oVGcn$8TUgd_84umO9US8*XDl$?)5>%bWvZNJ7Pl==RbwL4x2<7< zB%{E2YYL8yX>Kd;?F_KeBu^Rv0D*vDFc?Vxr|$ihH2@tO zf*r|$md9{%3CrSb-GxMC9Z2&C79|%t;#C>-)fa zT~NS$zI5Q~PmXyH`9pvyXDZVn!0=K=kdzbQda($f_re!m{N+v+@40+IYG%*zI?Z#< zQ`qQ?1IMkK*wI8AZEUyPN!@)1a8X;+p#Ll72CJrK*0t`b&qF4h9l)z&B#haHPGJ|Z z^fJm>?Det9Ym1s86zxq@la^DnaTM`(Radt-|2{{a8{{SHkup-34fa9=_Ox5v5s8rc zh?&*s@W*4VMJh7ByDvRVw(d6%^ljhIQ)Ws>`G}==*@uRES@H7szf}#bw;XrA z{2-Yk*qc!U6HYXlxCi}daOLHb?y5&cR)d7SqFdVQBk$!8j%%+_CvKgrFiIRfzgA+W zbJzBc7P-#L7X4t_=MO-At|Or}T`peC`tIqj{Sha7B+r-h%S~U2V8KG~Fs@>7xM9nH zZIeNvt$ZcENdzFgongh@V&j6u`ws#B&25gZv0tsPpa;H&3X}G`mWhj@W1ucSm2ml% z%&fD*c=pQsPL)`Dh!`xhi9#pz=v1~DMYd4c%E{Z4UmO~H0{>1~TAPYdmwn{fv6VM6 zfgbR7(v&<cbC%?+zFzkybv2L zEo+#7&l8QI zQ&So>E3mV#@J!mABOY-rQB8k)GedC;Cs2kYZj4;vIXDE+VxidpU;q#d`6m_-1cm_E zY@sxE{S}N>Tl@;P%d>kBKs+%XSyevNZ=QL9USgn_vty<0X#8u9*_0B~nfC!QKO*Qz z=SsTTwB+C4HJ-Je9gD!9({XG19ZL}bpg9M_pbS9hA48*+C2VL}gqks!T~6J^j#S=) zaSu)!L<-56+JQ3 zRn;i}x37K8TfaY|YB^Eyp>EU)=Myoc{m4*wL8P+((6{0Q z@|g2(I%qJC;4j9rmUBbSRc`ZB_2ayOs|VVg`$bJIY)g$(dJ4PYUXe&kZ>5LHhX9+g zZYRfyH0ZM+sO`AeGb3_S&ikb*mk)I3k#`xpSOwk{(Fd@SyZTW@sc+&O8W`e`o@(ks zA1>-`*{0$(`8;m$5G`cj$FGFxf3w234_+2;AHUB#80U8PM)vtWtQf3w5+tN6aele8 zhUe@_g#^|FbMyU;)3n^fA!tes20f&SH!(Xg?v#3B3acUDtmHVy1D-@fm0 z(eg%#xNIf7vBB*%#AN;#kphQ155qo-3tm<)&m&DXDFv|Rxs?I(xMWj`_hg)mxz1e{aTJa|t#EVm zLz$`7F6R<>>s^6Ldxn&p%rH(@ep=czyG>2o0d7k4R@xzyda;v5A)gb@-Zm0t=(Lzj z#7nxiQ^%YaG@|cY;e)WOHZ8^2R29OMb6sYiz)@IfXTiqP-a13Ko%75VnFrI+GW^21qX@drPQNqvm(AFXc4SDogIx{yx@Ta{g%IS5G7fKpT* zF?ugi7b~s9nC8<_rh_}Rcg$sN%yQ>Aj9J(10(_Y?&0Ki9rf*H}GH>99BgGmbFKbod zA!l?^<*$qM$BAN2jgI9@i~1RTpE`E%H-e5V<$+e67RN%C0Q|A;VIK5(0bE(;IsBQz zMvva?T_ShX)fyP|1)O?EQO{4(OrDzfsBJF8%s4PsQr5s-QH&xbdX+kaC{@WV36&dO zR1R$NQR3Qm6>s1j2gVoa~Lih*1I8Je`kVa7b7<*XHt=#Rm;mJic zPp`l6>|VXKX&Hh(vh!UcF70_eN6!*Ef{~Q4C}GF-rSd@@!`g>c=J62fiE-h$I_*m5Oz_X>z7{X17tlh#^MlqXrUvM zg{{r1(>INbYi)W*aFz!%SBETH=ntlUtsuXc1p@wJ7WmJi2?(GGts27k4`yx9cr_>_ zb0({7^RJ5OG=iqCP>s@0Oi`J$=oNX0ymT(xt`P26Csu|YQfX8j$5pt5xC;rj|l`{Xw1KE^#G<8*0Hwi(ZfBNO0H zWiH`xen@(%{jS4{sWi$!|Ketun*D+H&Xe^_aG*;`w#j!h{GQX zjYQ&jn$5A z{Wg8?p4@&gQ^s~ejF07zY#86mN+!>Hl<+fG_1Kdq8Ys9A!Y9W~R*X^^ilg1$^wuR$ zOnn}2|MEthLD6RHN89jgHpk`tK0zHu%D3q8?fSOivKboOXxHjg?ew!G*o^dStJ=m{ z>kM+>+GgF0DqTKjri%dQyMXg?zSnW)@H))YVz=t6Ti&@d_L-o1K~jw5a>CqIYQoFN zK=MFH?SP1lANqE&fuUioX$Y)sCj}>Jn!v*Uj+=hC*Ye{Jvz_cOL0(dfrLXVze5VgB zzE<4&hJGx3>H%>9wz9KM+XV8bj&8?lj?b@?d@1ohd9t|IrB5JEFO@TP5BkR=eGGGv zHoORQlAay00~cv&fKv|DoBZh2*)UL8PYg-oi;G?>-QIjgF@fxaSGbi}3{5d=uxSP6 zvel}rWz1Y>#Lt+PUc2@s7MfLgU+j4LGfQkaG}D-V{yDEle7{bggOU(0BQzS~m_Bux%*aX{Hfbn2okV0vZ0P&VC&L zv9Y5uvTC+=!HIHs<3FoG*lEC$GBg5pYSSxqw`Qc&wy7K8<>Krte-C`7yZ7;NYpr#O zuE7NYi#r)5bRz55&I&{GO_PZK<(mzJ#>m;S%LXUfmACwM4F>*ltw?P|W9TBkb0+7^ gu}HCl#7e|>U|Yq=8P`b09&l^zu=SNMz{Ao10BxiXng9R* literal 0 HcmV?d00001 diff --git a/app/assets/async/png/Galaxy_AI_Logo.png b/app/assets/async/png/Galaxy_AI_Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a9c91479861f91e991ff933c4ea7c95b8048a759 GIT binary patch literal 18875 zcmV)+K#0GIP) z2bf$}dH4V4&Yikdt6pqLZn7=+j!g^(Q$lZnB(zXM3rPs1kPt!%ErgOrObwxg8k=ft za4@#PU~FXEi);gKlB~Ac-PxUf&-eV!+;@C6taex6gpg0~v-8aC%q{1h^Pc~C`*GE3 zRSO~Sz4n)!bNY3p*`C#&Wna(qi}cR{IzS7hay}Mwwb@Sm@aTwZcf2}sDwPX<=lG=B z?Y34d9aFv5bn3KK$mdj_sVV2Y;y6~jrSM*?6n(W?b#Wo5Tt3#GJ$rn4aKIIdMc?Uk zT&vztxmZ$dx~^8Mg@Q`-kUh9_d%b?$ zssDKZnYmsE=m7n%Vpn`Q?5|- zoC6ru>vatc5BpNN?2{x>qtWmHO1WI}`9eieuH@o;NyTCr2_;BAx!9?bv{Wd>`!%8C zhw7OPNM@U0eD}W{X!g~{eLdF!N#+3kkC96PAI>!DYSi0q#>vOUoTen*vU8{Inx0l% zF6+)c6Iwi6mP1r%HoaPHSBU|mNVV#WuhsKzYI@Rp7x|Gzi=9_a_V8e5-D4v;`LrjSMNSl$Cg=#Ct7TvLt|0p-^x` zLqowPGd0~%oG)nE(m@znGqtv_&NLP0iz*h2U4DUBRlwn#JerkknN{OH(lxc2n4TxCGMGFZ~oR9meiQ7Mk) zJ6`!*98{tGp#>Xi=L41Oq_atu{rtauWzV*AHmS?(Dt7DvTgn0YpQA)B7s-{%{+6xV z^tnsFqaWORug0-|EMBZ7Yu5$4$&R1>RHOB}*2IxcTDDB*9(Sw`TRP^-^2*1trl+Ts zFO)PfUH6L@FAjk6(T{yq7hZIU-tdMu=;RYu2#u#vZ>my^)T~!EI8gTOR^r<2UxE6Q zrT^^!@{2qJ{{x);s?h(1XFWjwyUDvq)q2Z2MH(rW)TvIXxqFWm4~}SfWRbRw@79i~ zohl6#G*HZ`F}_=cw%4k$#cr@z^wsGpKRq*p0;R-Bh0=fnA~xUM)&&<|qx*M7`p750 zu3d;hu{;2li@mSarhUEEb{KSnHwbX+f2Cd`d+nwEOioVvB}*{`2;wn%VcXqup+YcII+9H!?C3`eE0uU4GrVb-m-Sx#k+3dg`e`By2Pq zj_Yv`yJx@6#op=9{`+TviECt!H`!T+569CKk9FH|L1-Yc`ift{-}!& z6=-u$JRw{!s<@)N-%zQI)QI^H%WgsN)#)~mtDIfts5TlZ+PMJ+?Hm}fA*?P`rJ*oXxVW`sMgw{ zLCxqf$8FHlHlCt`UF@QnhB}Q&SFYsLYIamC4{Ca*uJX_#k4@&2U;MtNb4P0Vkt_7W z&9~{Md!*Bjl9F7aMswPY3=gPO81OrGOlWuj4^Rh$3vKF+ihmIJLR&HH+HZ8o_U+q) zyJ`9I<(|%GQV{@y|9W6xAe_$cTefV`ZMWT~8*jW(cieFY=V{ljU0Sqgk=CzYuZZqfR3ZLmnI(cMd1jh6C+;fkHhK9oTjYdN|cI@Ey;KrJZ3`7hxqA2p-dj~VyAlU@B z37nNK_Qe$T{p94NORwuVhv)g?7r*Gg@P#jEcz9SdGc%#xlarJBr+@kQRsS z#T)LOa#5sC9e|l}W5rmdQd!S>^ux8MQr35FyFp`1W1X~ajZR&^PD|sQ$_;tBoU8j- zNvb{tUh}yy{~s8a?%UB)yRcd_(PH_^v@ZGHojU2L!{nG-ZSMe#W>cmlvvqoUI!xHHv9WMClkV!Pul8U0%2)L5Z+|<0N&o6(lb*&ic@8<` z5IyNhPts!^^B5g}{PBR54nFwc5U9hTAr+NMB?q|7$COy3xgQfSy>D1O_`lQXcmOR) zk|1I6vX!@ga?d3R@a#kuT3Z0T?|kPwKi3YfZ_G(sxG(Sh_sUKjuE}{Yn6=HMEbcp- zBr{ukXZtNH>C8q8ap^O$_H}&-0PVkK|FQi*HWzUGPpgfL8`1>*%wqWb=RZHRkLRZE zSmXu<26WhAhw1FI&&K|MZ@HCc#|_M6RSm@iqH zP1@TR<-AwH0VwcKLsQKu-x%~-oFCM=r)|{cJ2t5>)zIl{4%3mtD+B~Ky<8OMRQE+G z7b{Y$E3L&PR3HE2>nC;pjtS+;2dR_Gt2{iaZ(VwYUh#s%w5%A*wUMNnO4>6jm&$4+ zO(n|pL=;@j;XMO2=~oYe3KM;FbTmv7CKIdjqD6}WV&8bayvR7x= zB(urFcQ7D8!STHQ;UE4%&w0*s^n1Vedph^rbHjC!g6MQs$b~Q%*Ry-tE35u+z3c$> zi`&_W)vpTKZ#+Y@+3bn0Fqy63+{?g^eu6lbXE3okOZ|piyM}?TeMg^}`m`?qoK5oS zHzxPrYk$eq&)MAQkbz#dzxwah|6PB(=ZXXR@Ajwx9+gT3Y1IGlhd&GwCllTz5%e}D)42s<|5^lE5xcdoeFWmM{2oFl4xMC5LBNluen*%jVQRCTZ$By zhjs7Wle+YZEqcylR;iF5_U-yE=M=)|lw?#KB$Mt_M6*gSz3+yHhr}k9h zV|($Ny-YIffA0Q1$hNuv`+eDQ9!hD3=QBP-rR|r_OfCKT*S{Y46EIeaJKCJTK==MxnRPE2rO&<08)e(}hlikjA#sycn`a-DhbYOTx_RY>GI z^~6U}Ob{+1`M%>j&U+U8999wCe1~+yt@p}R#?*>RYPh_Td`XL!AFQuk^xbew6uKi; zG4|>-rvk8Ha2$sh zD4!)jhVNiXez%F&-(h#(eYf8H<~Il6!iBYT>C#|p*}Z#rka*@I``y$Z7~k$kdr5}M zuKZc)qX<6>E3D6q9X_ zoi|&1XLH%lCh7DWbLS%Zb++@eZJ7%I`t2_Zv72Q3C@aBb`{kh`R1?PY$3OnDF1_^9 z-oj*(HRA~1{^&CZXmoZh%FFBt2&uD@r`9ydBV%7PUBHwg&d#(mpQ`=kCa zq00jW->BDJSMu=mKJvRC$>((L$tS8Y+18Rm!Q~oKC0BC!oP5)J7yFjf>5ffQEC;~2 z@|wG}V&wdsLEEONa zfYHfx9;@Cz{^LJ}jLUbw``rP_=duSFWhY#E&Am8|cK4q{TT$Pd%_h=NFu$#?Q9 z6bmlObuy)F8SGiR1t=g2!6C;zfQyl3^EHtX?2r}EsgP(h#f``W@=4U?h z8UL}5eJpe^odf#P;iey+c;bmdC3^bPpRU6XKm6x90h|Lhm;KfmQz# zpZG*Dj=lc%uXjt9Ea@TqTx7;n0~FMh&6_uSB%pimy*B_H?%%a**CGW4i3>H$JVfcF z=ow;@Bw@0K$-v;7+5qsOs$|7pn?Nw4^@EAj7;0y0YkEBcgrIBRe*5h~Vxv7UAZ^8f z4bx}aW7n|urjx68ul`AAD?P`jV6tD_n*qw6#Aojr(CYzRdVK@uU)r-Xn~L;M6Ke98 zzVxM_uCn0SVwaWnc)ss_?|Z>OyK2=ckBc~Kd)XHu*~4q&ZzYtwRZLjx7z$x%~9(TXiQrJruCsx-7g z4VBb(4dr8;Gi~h}uWRLsL-m6n-KMrbUP(@Bv?2`+megq{ic?;|ZR{P6iLN@-rAXan ztt+7f(AcwQPhi>$F1WzsQe%91XT|0-HUU5f2?jfY5uX7GJ|oTeKKkGXKS-uzxCSq5 zHK}{r6C?2EH@~@eEZ4d3zWXo^_v|IaiSW)uw&Sk4>MH-5*Sy9bdg!4{xX?DcCa>Y) zVgJM@KGA>T6QA&ipXp@uPk!=~k;eS-#~<%cJ@r(-e*JpCcJ0~#Xm;%f9(bVFo_D|d z-Qn6?Gusbaw{8u;(2I@%yJg{b_&7DW?$cg1stShsh5h(Qdwb`O9DK zFT3or-g$T4d1tuSX{VhQ+ROR$7yWO~!z%in?|jFvUcK5Ma>ya!*pp5=DZB&JFMa7t zd)K3FyrX*Zg6P{FJ9hM*`|PvN_G{Lx@kbwhbhr+ELtCHrw5Rp1gGx-h>H8B;JTbHl zK6&OdpV>PGUZQPWpT4D^jK8*Q*%H1po_XK<-WSH}j5E#%_dD*mCP zV_|*Hb6cBeAJ?|_&h^^8d#8NjePg1nM%Am;^!}zhy?^zazTkg&kN3O1_xDcj^3B?$ ze6=dSYf{P1?Y_F}4&U*Ue#>;*!^@sEFem~>fdIBFFyg5N?RnRYuEwbF?S0CD|rJto)$8%>TA67>g%jiQN`j9^V`OgOz{0BeyLC2(JCB6FUtAi1oHgde#mKZCpaoTC8 z>0R%77ogPh%-ITzsJ~&u2L0)u{%IHw0wuT& zD?$+nFw9C1^NkVr3F-Q|TnH_Oz!l zo*_u?p)?x*B2+32s9tNiYIWKdE2Az~kh|cb&Hl=3cWLE@s9Qe735DvK0#8fy3KkCBE)#?)@k$md7&g|B{Fr=9dT zziL!!X+TlEronPWg#i}XL`{PDI!zU^M-|K6MItz>L;pRf7k}$p-|{fFF~0%Is#UA> z@sEGJ2PhbBnd~M;ay*QR4$7*-K;h@NfU+~rI3w6mh*5!Hn%BMVbzzWS``Xt!T+HSX zvEVh-F=IZ^p7@yG|NYKI)6d}hr5?ce^bcMm2QZ9eqS zLm8j2D5N$rcl6OmhXsQBBkG%^cGFEa!9U^rG-^7m_~~R1Do3a?RxXF{pqp;G$rJNr z9z*jo0j${Q%+S6Nn;XRO^qG18veC{gTr5V`KM*SYGoSfP`gl8;+7+W6dt8AN* zF8=Pg?%rNghYREjDpUrP%SE9|94_fbt*MsJX=M4qdSIfXTke*|sTeny_i<%d)kZ

h_@46sB%%so%0K_}Ki50o`A+x9M?R9{5WNG_GuaqO7=sA{b8_za z=bs<$&#Dcj$Mq&EZKj<(2Ml4J8di9&1@pi1m9Gp|e;C(nGyN0$mm#DyBq0FhZEt&< z|Led0>i}YAAfzpj#q^k=+gy6Lln;<@!gxIOsZZ5$ z#~s(ZS1S64)t!Ze@65(S+c0#RRFK-~!gZLqc3-;=eL_qV#I;NUnU9Q*;iuF?hbONG zAe%OA3hFBSVAtdGAO7JV3Mnree91Z31uwbelAp5~{i>+dXeyU4sx*}M^+?)uo7Box zv|`-`ZGE7sE3ZNVk)pz=pX!v{OjJ^HKz?T;U3-u8flvNSS6+9o;^9@w4J=l**%3yN zq|;I%avG@&ipbf)p;7Ics%x^9)B8Vsk zvKBAx@^~5(uGlR3h@Id3<~Mr?&Zk2qV5Ko2y&i{gERF#NvcNci zg+YG(>t7#^A!?CpFmR~~5&)?`wuSSryz`HW~zfRkll zbDjkxnd{cnC75_N&(Z!8K+7||@r`fv?|ILAdf(eBXKg{fJLZ^Ug0u$VDdUASku_EW zjP#AU^ZA^OhvC_g=2DxOC$$3bKr%uV;aVnzU2@4KqD@GLsF6$(lOhNixbx0CL%#sb zOguglar&Ycy(l~r3rWaoP49imDW?Q!0yUCzOv1VR^2_OWPXsk;Am7v1v;n|itT1Te zDS_Y26T>+3Y_$0|fAcqW=9y=P?~!njh%KmcE;0i#i&`oZqxl z)*XI~9=QK@oqzE)`r0=x(eFO>aXRgU!*#+j^7*1vQdxU;wtXvUxm+AmMyi(x6dS@b zc^PO1!^BM{Bhm#P72-G27?BW;%z&kg7Tm8eKLcoPNApNnkQ%z~h7B8flb7Q;W^8OM z=;{{0#_>!NT+RGWo(-#Qwk#gR|EHgRdRS?m{p@G&Jp@S->;o|E=RWtj;BDbta~Wo( zm4!z1&PPmA`tYM4{b*=6ZbWPaX8XZQMl>-izfBq=o|(3ys$mD>96--(Bjz#Vxl96K z9L#pb7+^4e>|-Arq>{h;yT1!#nMRR@v#Gum}%9|S*eOqtJqak?>J4iBDKlSDHoMA8|u^(4VEfuOid}yxlp@yaCDLG-#w+c zv{>a_L2B&Ld7r*emtMJ2XPLXi0GVFwVkch}4MbFcL59Do7?U6aORK036mqTmwKtHQ@U+WIr6A zt}+PQCi>sxivMHjg&pdd*x31D0R=Uwl5SC||ppL}vS55~4tm1i?1 zd?*+OAYqcBvOwlWH)Ay5_KtVF!x^Ap{DWb+H*JBb&pYot_nOzdrWY7zMoJrxtZr}l zP4o%Q@#=e3S0|6!&-kHpRmZ=Fy6G(wuk{{kAC!{!)MynpZPr(WnAiE0ZW4z z!*5^t%2$F%G24IikJ$(z`XANL0^%&l5?kJ{TK(}vvqnCE0rJxKui2(OQ@eHSF$d{| z&snc?&*%cmPq#>){_-BZ>%-sGg+JUOx8fuXAAF*!8kR4QD#?$ik;Lk_T!=AouA@pR zuQ=ybh$FR|&A_+CfdSP!k?Ki7t=x!wd4-m&JxO*th2fg<~<^Q0D#oWZgz~2d7Qc|d*SY>%djV{ z!1y$nbFeQk$hI0Auo0OH;{r6OOrQGHr-BR4)GDqAlfL97FF}+KaVQ1|v?&c%b31qL z3`S#qM}$A~%rpJ5#~#}oB<^ME7T2?sgkOe;$3gth-ouQ+*m5vD(v4{_o_XBDO3tc` zbhdc$;t*-fBm)3gRW16K>j2>9JNAoT;hVIFh-@05}_YZFxJ`Zn(cmMG*Y~fSFed^#}DC{x|7} z>s@rwMS8_6Uh&JahaSv`;XRu%L$Q)}DCda!VPq3DWa+s?)!L*lkCwG#M*8wMF4xi( ztM!;ipRB`HOEc5b$3K3JuGn;!b|%XdFFQ=bhpbdH%4?!p)#&J;w(as7syGb}6bP_Y zeWohcuB#A5nyOY+it{Su$|^((8RoQhP#o-hHRu_s^fy z#a|!Qv!C(^J>k(OsO0h?FivVKLdu}+snNAJzyJUx3?NWH^{n)AY#3~!>IqMHLdYKi zFpx|T(QV>n7$!_yCM&8L_d-(W4On_Di{|CHeMNOB^7cE%Wd6svY7-uCv=*LTh8Y=48R8;e6UANvFEaD0tA2iw|^TxBTcMcz1o?vGz|z0YN-LpGoJB`FvbQ9 zHlgu)LDo0MUjPby{i#oVs^@|?iH?QlRj+#0gHte5vSK0L9{?CBhms>75#CwP$?0QwtbWE*3(V{0*C>@kU9mFruSVTlqy7|5WE+_+!=c z8#Hq0*-FL^)@~)5jB1KTVvTp2%8fd;V#&9qd|MijBTuMnD=L>Xr6jzBCpAxfS`6zI zO*f@RQc#p%rs>9jYY1nnrf;vBUAA1>S0%~R)HRgwT z_Q$5uA9`=?g2`B&4OC3U0?b$e7eba-1u=0`$);zZosZ1!0;99i6JLT?Cw0%8q}h9J zlXT4Gib{za9KsuC9v%3?qG{7uB!Il<)k7-ccL2}qA{HY98Q>V-a16F5C@r%QKI5h~ zk5sm>RyO2eE=p}eZt>#90SHa{MA9&Rv3{f<$V7%X$M_!bPfLC5H6L*A+q2jL3wYD# z@DI}4LdICxqtXPuZb@s>a}u`H2;~KuN#vs9kW^gcI)zcW(unVr7x^3RkuLwyHq|tu zcz8@ZCy)!IHEY*sc(9@}2G{zuT2mA1)W(A(5+_oWI59M}hE%Uf?RpDah$_X33Z+WO z{fP$#)JF1kfZc=XAEg2UL`O=R65Dm;bLzBPy8oWL!}uI?)X^Fk7}`q;>y1`6{M^VU zD`=k0y|Ki&USFkZ$y_gte3t!cWX!^~Y{1PHU>*#MMd6-=w4=vEta#AAtnyhY07gJ! zdc-3hvDdS4eeS(bP_$?7FQ|mXU^c0&h)sM>R_&UP%`zhEg{d2=K`&cUf1ZRk{LX zP1&VoudtJG{1bG?|r1}Yc>v!IkMUCHF&x;f^8L>P5d;; z$|eny$=rw8qEP!&-E3cZDrq`F_-x)5?uS~J2DQyA3LzO_53*=xBrDv{*53IDbp`Jm zxjWn&H!$?Jx4kXc4lFRxfW+F*SpV@K|8cNWLFV#h9FQ8hw>@um5kOtD+B4M2F}oSW zXCh>AZ=0%T35x_#ruL4#474`M&7P7~eHJ1~W=ndSB#QJ%c!BYU#l)a?^L+FfaaI_T zvk}9Pd5L%?>_n!Dr+pS;VXQR9LV_owAXDIYWiK6SyBY{nnGG-3sC!^{UA4CJgNrLF z3`#rO(s!0O(*7rA0t5aN|C99XK5ta45>u=Gwe>@d75Zid1^y*h0u0MOl zxjOUkMJnvMNAa%vH9S43(nM3kzNXzaU73A>LBTMLL}3GGy0+bim4OIPyJs5c z)=Rdt^ZFSutCO?x8^dKM%0dhA*!7I;8rcLg`sgXo+ftQGIRG9eVo(H|oYc5`k_TPmo^s+N1T_mp@9sanw>R zs@vi(G?^H6iMY&E*IU;CtF#x6pnp=)IoUYxhIx`*i`YGk5>GAtDx%D>X>-Q_) zxJ%D_`pJ6#J6@vKy!3b-xlXE1N!5wARxhuJl*O(p*Ll$UW7)=8BNd=R5ZMVQoDftX zGiYWfFE$H)V?~&Y%*(*4#<3QI0dp~V@PxoX7W`)DZ;YF*X<}qWg3Q&K&F;;*80~u) z-O4!FciG}Z^HINDDZ6qTnLQ=z3Z?+oeAiArJR#W2v~N>|%*8p+`N6%9y@2*`9gAH3 z{`bGXR|(5(%0I4XjFC@y%2Rrk{+QV0b)|NL;Epxpck0;-Ubobq5GElR>$sD%{ebcM z4R3fuuedZhL-YyfnX4M96;Lq{v>1Ng%*ebDNzx<;Y;^Dw##P#5d}j6|q?BWiJvQ{Q zWxJcr2qK0D6^Pg-lXN*38xc{<0Jr71S*U}lL~~IRRG)1AVyX?1E91#ulNOCgo9~xC zeg0Lt?#}I+PKFc@E!EiS!?iOiYG_z$?~=wRS{hhZ((vd(+Ewjn$2|||_K$o^k3H=a zopbV-Rt-ugoFJWi!a=(AM+fPOtM1UXcW=|~dR?`qm#-{QR2*aNQ<}|&l*XvwTJC`g`aim{ zMV^|?0oUJip7WfrYV~_RY%tNm$yS|j;E5Uqs342Bva^7paM< zX{z~Nx^32wYGQL1RIb1N`n`;a#!w3-1C{IqgqguJWlGnmWYCM|Xs$|z!}q+e1sD%gtBq&(UcYSN^t zOK^b$WLA3yj}^K7!AN$zHg3ZMO{!*J!2$BQ!JzsqB#h&(>4aIc?eyLL}$JnqO1RB+U&(8`B^mBbfR zUbI%x$~E$hx-Pio0bP9KPjvDT2kG%=EY~r^c=S+>4%dHOwOUu+uw9#eGO6iCQMuA! z*PJ6_R`BF@@aW}X>+QQTF@* zGN59au}ms-alnE2pZO?_^bI=~@IT{Vpt2C)Gxs)Q24G|BAg||7{^U=>?;+N+xILONJx-P za$6|IM%Qh=UW3aI)}mzxsU1tr zHWSvVI2<$<)mw=g7=GiNlKhaOl@+xcd-UTiTeS5nH|gZnWj*@1_1dsxrJithMLxGq zcWk{@Q`5MOmdHnWu}4_sx@s_GBXh}&YV}DiA1&yqk6W)J*GlzW(vrofIy?Nx@Q~~H zj_TDaL9Q-0Sa$7ZD*&TWL?_xRN{)|-aTcKolMow{GE13)Nx*%=l^lGwE5) z_@4=j%0q-JWNMC0hNnOM>1L!0NnaMOZAo@UFxf{w@{usw01A^9VTzw>^I-q?1BkVq)tl83&>;2(=0aL95c&6i|M#AxmEAVPfFfHg zoJntqnjA+ghq>GP?LhtQO7nI?u_`_TC;%wIY4)53hAbA=7W>{*B%*nF9wrUHrM8ux z@t)sODTO`{2H|wvLc{PNVb6efELI0&EsMz;-}uIGY!)DK>sk_IwidAEHCeRrLMTlZ zWTJ<*5X)plKLaSXklC03C|T7q8&hM3X8^_e8#U3qd}(>g&`K3izLJu5Z}iX}0zXfLbjKmYST_u9G;?+=mFi@dAlxVfF;f)ihYghYK~=nEH9mYwDjDk9HBpd#S?Vw@{SfqyH%aou4-M1 z2Bai*nyJ?mM;#S%EiE1?C~D0pYE-p;=~6xWDNon$J^!UzyKF@O6-M!-4Xc$jc4`>g zG&Vc7M9tF-uSy|SZO;y^7%6Jwx<%rtqok=)EOl@bC6q{ziusZ+7b}VckmOXxHJza- zJIMh8A`My1Ky&lXz zLc(ESJU`j=e$+7{Hv8jPkWSwBzW0SlNr*NBBD5KID)+Q@&_-O-xG~M^&|fCfJXgO6 zWxZi9c)<&Lfm25GA*(bsU_xi75{1RGq>@;OQl-6s^{uzws<*u5Eg{weDa{O;^O3E- zj17~R*b2+nG06=OroV{^vFKI6*d`6C6WPpUHAA+WWLouZUe_+h{)a#O;o+XyBtY_K zh&#$g1j8eix3v)O*h0wi%NXzM{j)hlw2gkvNU3{;QDpX&3c$!X7#Q*Szy9mLOo|CL zW72aL(Ee!e&$dZUpdsMOsv7DxXx9 zqdX;66>KZMqdZ%I?AfA?>zC?;BfEB#eAIGLjv6TiwaEv<(5r$HpI4MCI-lU^h=Z}2 z7u2(RFxiN&AS2c$vu&4QAc4V)EN5df z6Lr&=kf29eP~QG{fcjVIG}}5%SmHvUtiDbVn#E&~OSP|DBY>AMc~lWQ-=2Fu0^rkY zc-)`a9T3cpM8qs@fG9%&;1Z-}Kuez>-5}Kw(aXe7UA(haKFfLmZ3|J-E|8e0#mmG^ zqff&zS^F4?s@U*Qr5=j9Hda%I_T%+2FPD{Ouq|YGw+LfXbF%SPw9$%J!}my?R?35Z z#GsAC0lu}EA3Q;Gwao<>K_bcYUD)b^2v#O(q&%@aMXy}qT{CH@-57W6PC<%_zLbk} z+OmQUT~^TU>5?wGWv6ERkbIeI#41-3m0U;pJv+5=?P@)KgG7asWLnM@y3zk}p{Y)@ z;0{?Pf82(Zy8PxXsw`WqR?<<@juhu|s!fk8-=8`o-SS!z$q4Oa51HyesegPN(e zl`G^0gickvi=Bm2^h(ucK?SC?Z3dVecv_H7=vXG7c{WfXn55*65KKlu8qxxi0-X+M zP>kBPM9q3{vfD?ZF0dk-^ns0pfrL5G??%s z1B&1M?stRdijZ)NdC8{H8^ELqdGi`-XA}1`=?hFck^$YnV5dhbD^$KY@Gh4odzgYLSa7Qc_{Y)NHC!x2Hk?VkW5T6V2l9xKl`&k3pN5% zC%G4D1A9EZ^PTSug|tX=w5ss^{gC}1`xz7V^wUpw4|~|dJZ)eyn^cnh~X(fh3i>qin%EX z)#|(8;`{6@N$|c@37yYTCL*UilB}0nz9pX|E+R3t)zq@`5`X%kCEajOO}DqUD=M#0 zGhfio&V)uaqcvl(&e*U_D^QzB^`a0{C+7x=8>YUfTJx_nrt9z7CNrRvPMFD@O?&YhF06b43V>^=_I88|s!~bYnuG?wEd>)~E<#AdCs~AxW71g%0iy^|$k2Fl;c~18Io5rw~A9 zVcxa@6N6}825c@!9EkI#2APckfJ3z)h5*J#T;~|hwW3H_hR%w_Je%!xn+<;2UouGr zuN7(>*~Ne|F35h#i;@67;0L&(lv9eOd z4Hc7ZQpl&GPw5YnCV7q%PB|joEpOEj&`{2`w;E zR+1pk22mUp1=MF1vkKtZWG~BZwxZUix6;v;C2Qg*gUbqqO$7a(fxaUjW4dlZ>%Y*DSd&E6Q82-9l+L)yMh+QJ#=^Brqa1 zX|HYXknJl#&(uHzI*y^Atxc$YsAi}!3jr29Yq)QX`ORg_q@bn@eUFM_yF=PSfenPj zLo=$=CYx9k!)DQ#3v{hN7%vNhf9zu)>#})P)*cAnusSBF$#{`0lKPh=)NE9A$m-hA zKB~zXZ>L_jU}UufN%{oonD!G@%sa=eS+gdTJhk>`rJ-xDz1HkZAvI#IcDYnikw;qT zf(roB5jzIv)Ny$YjxP44%BZJ2qjz!GiX$Hpm}vIzD^k@kj(o#QpZVhFb?uEe`^rG%TM322(tM^s z-H74dY@+BA+dNvX3Y`l>QV*}Nw>!c;rsMIY6qYK;GzPXl*GN6q!`&PUSuv05YKMjJr)Tf zSB)>S72kNb!e4-Y8f2%3f>7mHUPfKI8aif)%192ip7%J z^;!UpvyLB7XU{g3+ml)pcN8}!v}`EW5$n1J+JuC{QeIQl8DB1ze4!{!)TNJq?i;%F zn%l*Q)sxuE5kT3LTt^A^A(xRx5L|;}+ zWP%W-i5CZ^e)-E^9+)^S))T^#asa9IQ-86kY+V%y(4)8#cA{reBjWYQNxd<;QehaGlUPx3I83ZlaP zd*1V&Ui2sZXr&&^K$<3d67AZvf6yMA=!`qAVkV^(J5PjsaXCzLeaYL8{0BN;t z;dk3%(1Haa<^l_yWmcyt0?uMzvh!ib&fQo_)oOW1)LO9TH5-bOwsM_DaM|XaS2511 zR17@qVhX{s_p$G)n{nd(;(?;;bP}zo6t!k$MV;DDHJaP5p_%*i$ivp_5EYdZ9-5Mx z`2p3Vf;vs7N`A=sPDzcr3)^f&O}SMg(r-QLRE^*ILya}IE7^9dp8Uv-S~4Wr+T6&Vce)Se@9+w;;GE{s@8uC#~%5~IQ6|Jk@+q=8Mg6o8rUGOzvi;8Q{0`!E z5J3@j5zlc~nzf(R39l4|nXwgMz~ylOr*qCZhmE!@wIGQ4NL0kMq{ilu(}A%U<~#iG z!#xv|RokL_0W90Q#*B+ro*`T5j7bl}0V>#q05>EFR#UULz}WOFsuGe7*R{YoCMv2Y zo(L1W@q(pxs{oR$n8XeNo|H;3sn7u0(jVsS+|*Fdb{qt&nNgf)p?{Dh@uI!#WiJa` zumE<9Hxn#tkDyQJe>0?;gld)L=yN71WT0kY@cT>s{E5d5exok|UIQGve^!#6jSsC@ zcDl7}h<&osrSyy018x5#u4@6JR?7wcKj)lt%!U(ynKpz)&gFt^VjF~-Z6!pa2DNCm zaQ|*?lhD3K-9>Q@&~SxZ$GgJsWXo6N-2%@jIRt1x|w=Yi^j%$hq|~^($zO^ zmmAukdR)-uo9bG1Zb^#<%f3~ur&&$NUIm4M#@UX}Cgo)ZjR-R zFr<@VuY%q51J7fn94x6ZYv?nH#3GQ5n2_e~wK~07LKWjWoM)l&_M90TQMfnvu=1Pz z{be~)e8!`cR{P&4nd&wh8F;1=4$ozYkKq|nBN%%tSPo&w!2Oyvz@mnH?aj@Vw-zWXUM=sV?*W94zJnM;i$qP1WAh>p_ZlsV` zvk|FK%=;Zx>C+eP(Z8L4nf%D|U_3tcnALjTlh)~k)zV_NUu|^lV(lnDH>em{=rkQ| zHUI`-uJ{65$*sD%iIe>Uxln>>Fo>mFqLN`6Kp^W1>~9YPY=&bdgL#MgCn+L3OwGiz zYX1Dj{{((w*d%Luo1}O|W~z*4wq| z)|+(HxOB}H*llQT6943BwQb?>)>Nf*4AzJDQ;|0xpB8nKG^Bi zzxNa^9V=q~2@dnU)SuaMOYFhTe{X|hlgq?JP#T7}zh zc6z{b6X#&SPSv6?xl{EiY-rDSCdM21q+#)a z(Xdmc?Fy2Q6|KrE#(49-m}?vr?MY91QYblKwNHqI zwvq}9QGw^q_L?^CR>TUxh5;;bmCtF|MChaJCV6S!1wOQl z`6Ls}X~nn=SWHUF7NT0n+;DhpS=e&1>aC_mO41oC57)9{MXSe_i$M8gvgRsL9JV5@ zB`x_5FQ*)Bg8w}QqT1@Ts($D0nnuS~Yt15Q)gtDIlrJOYG}UR;eQ|h17k~FMz2jZy zsZ%;sV@Ez-Noh>mcGlE!6|G*iUOVr+UsqkTN$u+Wdh45B6Lhb=KxJQpntfo)z|HQj zLRvfnlIHS+YGG+SfEC>do&C##iZMB>W$MNY6U)R-CV$p|Y~k0o?@-o)pT^q+v6e|` ztF28!dqx866&v|VdlhmFR`reGWY2okyfLs#* zF?EGGV3K4e&d6nr&{+e0fBoHsf=Vt=&6BnwA1hD4HyUm^xo%^t+38rm+H|=_(-+Dy zRc3>AgTOirySYLsEIvM$i13n;(TW=Fj%zh`tK%zDl=rUFb{*f+a3!av&xghLDNlK% zKjrjC>SLd~QQz3KokHANI#Sl2$qC(g*Jd5MWJoW1(Vys1XDq=i6n6ax!NS=fvDpU8 z$QXHF+l4YY48b|p)Dg~ENa5!BC@c9Oe%rllb+8F+gOptDZgXDu44TvEP zna7UR&PUs~C@P z9^v>HZi&7|B{0>(BuPL&8zZ$4>gP}HW6#(h$d-+W?dK<>Y=N+>lxz1gFhFX>7L--D ztu5C7ofL4glBL=E(wfP=d-Y59vpy^4kbI<8y{3w%pCU~s9kt=3Jl+5~UP6?SkT5L70(?aiksF@Abn&qi%3`g{Rwy z>`jXD-`FI5;Ilv0)@n^d!zG=2)=_%)W6C;gC^&xrn~0twdvKqI&QWo&Dq*y*Fq}EuE>_RuRVFgfvNaJ|$>+S8S7 zkh36_ZZ_5f4+9XSGVBVeq|j5Jj9IuRfr2Lf0w}gJWmEi-f-LvO7}qL`0YtL&tV{-y4O@#WbQeP7g?_TJ%kJ63;svKXZ7 zf)~ee;5l2k7(=U()8F=msC->YLUHQ0?@D*Y!HOSjw%p`Q&F6g~M6?!NE&vaepBl}E zTs~GV&Z`;K0w@)Vv7)4?b_ZT3Q8*v=86xg5?s$31z$vFytJem1_r%0*7v)9-GR@Sa zvrm&QySl8Yo9|OWIURe%Nm@B1HCoa@+;GIT5PQQG?faBe4$uM0k^!$(>@z8biDSi) zDA|B(JDcMJu#hPE$VWc1XVb{OW}Dy#Xm4VFpcZ(cL`9PS2*^!C%z{(L6IM@hVG?#R zY~`d@L{5=ZAOt^T>#!KH&rmm4hwq%vDc30|B0Yeia2@%m5w627hPa12Dy!+_)bR$a<QH4N9G`lZ z(k(%}*io<$KD(sgosYds@}B>@(JI}T7U!lFyJjexu&g9K`m{rJ#>Q1*g!2?^YS$F| zPB#K4ls|C$4t_g82PjLpfKj(hTCpu>4Je2^v6?k$!LIO`;6Y+N`s0)i(Ed@_BPh*r z4nPqq@n`qgc@RMCr8E- zmXrtdTaP`{AGH3EkhIuoH(f62$aPTbivmu<#$@~XYzOH7QzAaa;&IHzV=56qK{h)9 zVb~+A{tl7U?4y&dSpppZmi;F{A;f{Cdo6T&u9mb&e=5O*-39Ht3>bA)pma-+;QDp8 z3u|`^H0h*lx zFeF_|M@WY>dx=>;`rz7t1mc}n)UCD<2>VNdAva`9cPke}l!y%5b#zsjE>IP^^a+LZh8|`|a zr++a56!7{$HMZM{Qu|5xtt&+sS)Ewx>;OioL;{%9^NE^qTkWXh+0!{ryz)eRBwgbz z-k#vW31E~cpS0LAUh-`v`B>w)pv!|kA*-9P|9Va3Vo43(EscqB_kj2304<1Yr#_3j zA&NPTIu2<7#Qvnw)4hF*AmUJLlem4+0q>9ICEGN$Ya>bft?w9{%=Ud2Y=UGvmmuuZdshKYT O0000 Result<()> { cfg_aliases! { @@ -385,7 +385,7 @@ fn copy_async_assets() { let mut hasher = sha2::Sha256::new(); hasher.update(&contents); let hash: [u8; 32] = hasher.finalize().into(); - let new_relative_path = warp_util::assets::hashed_asset_path( + let new_relative_path = galaxy_util::assets::hashed_asset_path( asset_path .strip_prefix(&asset_dir) .expect("asset in unexpected location"), @@ -496,13 +496,13 @@ BEGIN BEGIN BLOCK "040904E4" BEGIN - VALUE "CompanyName", "Denver Technologies, Inc\0" + VALUE "CompanyName", "Samsung Electronics of America, Inc." VALUE "FileDescription", "{app_name}\0" VALUE "FileVersion", "{version}\0" - VALUE "LegalCopyright", "© 2025, Denver Technologies, Inc\0" + VALUE "LegalCopyright", "© 2026, Samsung Electronics Co., Ltd.\0" VALUE "InternalName", "\0" VALUE "OriginalFilename", "\0" - VALUE "ProductName", "Warp\0" + VALUE "ProductName", "Galaxy AI\0" VALUE "ProductVersion", "{version}\0" END END diff --git a/app/examples/generate_default_settings.rs b/app/examples/generate_default_settings.rs index f9d6696d..bc02f2ea 100644 --- a/app/examples/generate_default_settings.rs +++ b/app/examples/generate_default_settings.rs @@ -17,9 +17,9 @@ use std::collections::HashSet; use std::path::PathBuf; use settings::schema::SettingSchemaEntry; -use warp_core::features::{FeatureFlag, DEBUG_FLAGS, DOGFOOD_FLAGS, PREVIEW_FLAGS, RELEASE_FLAGS}; -use warpui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; -use warpui_extras::user_preferences::UserPreferences as _; +use galaxy_core::features::{FeatureFlag, DEBUG_FLAGS, DOGFOOD_FLAGS, PREVIEW_FLAGS, RELEASE_FLAGS}; +use galaxyui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; +use galaxyui_extras::user_preferences::UserPreferences as _; /// Ensures all `inventory::submit!` registrations from the app crate's /// dependency tree are linked into the binary. @@ -29,7 +29,7 @@ use warpui_extras::user_preferences::UserPreferences as _; /// not include most of the app's object files and the `inventory` /// submissions they contain. fn ensure_settings_linked() { - let _ = std::hint::black_box(warp::settings::RESTORE_SESSION); + let _ = std::hint::black_box(galaxy::settings::RESTORE_SESSION); } fn active_flags_for_channel(channel: &str) -> HashSet { diff --git a/app/src/ai/active_agent_views_model.rs b/app/src/ai/active_agent_views_model.rs index 3d61e411..46bb37ab 100644 --- a/app/src/ai/active_agent_views_model.rs +++ b/app/src/ai/active_agent_views_model.rs @@ -7,7 +7,7 @@ use crate::ai::ambient_agents::AmbientAgentTaskId; use crate::ai::blocklist::agent_view::{AgentViewController, AgentViewControllerEvent}; use crate::ai::blocklist::BlocklistAIHistoryModel; use crate::terminal::model::session::active_session::ActiveSession; -use warpui::{ +use galaxyui::{ AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle, WindowId, }; diff --git a/app/src/ai/active_agent_views_model_tests.rs b/app/src/ai/active_agent_views_model_tests.rs index a704c676..a3cc6ac4 100644 --- a/app/src/ai/active_agent_views_model_tests.rs +++ b/app/src/ai/active_agent_views_model_tests.rs @@ -1,6 +1,6 @@ use std::str::FromStr; -use warpui::{App, EntityId, WindowId}; +use galaxyui::{App, EntityId, WindowId}; use super::*; diff --git a/app/src/ai/agent/api.rs b/app/src/ai/agent/api.rs index 584a2fa7..39c6fc5f 100644 --- a/app/src/ai/agent/api.rs +++ b/app/src/ai/agent/api.rs @@ -17,9 +17,9 @@ use serde::Serialize; use std::path::Path; use std::pin::Pin; use std::sync::Arc; -use warp_core::channel::ChannelState; -use warp_core::execution_mode::AppExecutionMode; -use warp_core::features::FeatureFlag; +use galaxy_core::channel::ChannelState; +use galaxy_core::execution_mode::AppExecutionMode; +use galaxy_core::features::FeatureFlag; use crate::ai::agent::conversation::AIConversationId; use crate::ai::ambient_agents::AmbientAgentTaskId; @@ -35,8 +35,8 @@ use crate::ai::mcp::TemplatableMCPServerManager; use crate::settings::AISettings; use crate::terminal::safe_mode_settings::get_secret_obfuscation_mode; use crate::workspaces::user_workspaces::UserWorkspaces; -use warp_core::user_preferences::GetUserPreferences; -use warpui::{AppContext, EntityId, SingletonEntity as _}; +use galaxy_core::user_preferences::GetUserPreferences; +use galaxyui::{AppContext, EntityId, SingletonEntity as _}; /// Unique, server-generated conversation-scoped token to be roundtripped to the API when sending /// requests that follow-up within a given conversation. diff --git a/app/src/ai/agent/api/convert_conversation.rs b/app/src/ai/agent/api/convert_conversation.rs index b77e430c..d632936d 100644 --- a/app/src/ai/agent/api/convert_conversation.rs +++ b/app/src/ai/agent/api/convert_conversation.rs @@ -42,7 +42,7 @@ use chrono::{DateTime, Local, TimeZone}; use persistence::model::AgentConversationData; use std::collections::{HashMap, HashSet}; use std::sync::Arc; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; use warp_multi_agent_api as api; use warp_multi_agent_api::ask_user_question_result::answer_item::Answer as AskUserQuestionAnswer; diff --git a/app/src/ai/agent/api/convert_from.rs b/app/src/ai/agent/api/convert_from.rs index 36071c20..afc6b554 100644 --- a/app/src/ai/agent/api/convert_from.rs +++ b/app/src/ai/agent/api/convert_from.rs @@ -26,7 +26,7 @@ use ai::agent::convert::ToolToAIAgentActionError; use ai::agent::UnknownCitationTypeError; use ai::skills::SkillReference; use api::ask_user_question::question::QuestionType; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use warp_multi_agent_api as api; use crate::ai::agent::{AIAgentAttachment, UserQueryMode}; diff --git a/app/src/ai/agent/api/convert_to_tests.rs b/app/src/ai/agent/api/convert_to_tests.rs index 4fc4c21f..204a9202 100644 --- a/app/src/ai/agent/api/convert_to_tests.rs +++ b/app/src/ai/agent/api/convert_to_tests.rs @@ -3,7 +3,7 @@ use crate::ai::agent::{ AIAgentActionResult, AIAgentActionResultType, TransferShellCommandControlToUserResult, }; use crate::terminal::model::block::BlockId; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; use warp_multi_agent_api as api; #[test] diff --git a/app/src/ai/agent/api/impl.rs b/app/src/ai/agent/api/impl.rs index e2e392a4..aed119d2 100644 --- a/app/src/ai/agent/api/impl.rs +++ b/app/src/ai/agent/api/impl.rs @@ -2,10 +2,11 @@ use std::{collections::HashMap, sync::Arc}; use crate::{ai::agent::redaction, terminal::model::session::SessionType}; use futures_util::StreamExt; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api as api; use crate::ai::bedrock::client::{BedrockClient, BedrockClientConfig}; +use crate::ai::bedrock::diagnostic::BedrockDiagnosticLogger; use crate::server::server_api::ServerApi; use super::{convert_to::convert_input, ConvertToAPITypeError, RequestParams, ResponseStream}; @@ -141,7 +142,9 @@ pub async fn generate_multi_agent_output( let is_arn = model_id_for_fallback_check.starts_with("arn:"); let fallback_to_warp = config.fallback_to_warp && !is_arn; if is_arn && config.fallback_to_warp { - log::info!("[bedrock] Fallback disabled for ARN-based model (not available on Warp server)"); + log::info!( + "[bedrock] Fallback disabled for ARN-based model (not available on Warp server)" + ); } match BedrockClient::from_config(config).await { Ok(bedrock) => { @@ -156,6 +159,14 @@ pub async fn generate_multi_agent_output( log::info!("[bedrock] Starting stream with task_id={task_id}"); + let needs_create_task = request + .task_context + .as_ref() + .map(|tc| tc.tasks.is_empty()) + .unwrap_or(true); + + log::info!("[bedrock] needs_create_task={needs_create_task}"); + let model_id = request .settings .as_ref() @@ -165,6 +176,13 @@ pub async fn generate_multi_agent_output( log::info!("[bedrock] Model: {model_id}"); + let diagnostic_logger = + BedrockDiagnosticLogger::try_new(&model_id, "", "", &task_id).map(Arc::new); + + if let Some(ref logger) = diagnostic_logger { + logger.log_protobuf_input(&request); + } + let messages = crate::ai::bedrock::convert_request::extract_messages_from_request(&request); let system_prompt = @@ -178,16 +196,66 @@ pub async fn generate_multi_agent_output( tools.len() ); + for (i, msg) in messages.iter().enumerate() { + let content_desc = match &msg.content { + crate::ai::bedrock::convert::MessageContent::Text(t) => { + format!("Text({}chars)", t.len()) + } + crate::ai::bedrock::convert::MessageContent::ToolUse { + tool_use_id, + name, + .. + } => { + format!("ToolUse(name={}, id={})", name, tool_use_id) + } + crate::ai::bedrock::convert::MessageContent::ToolResult { + tool_use_id, + is_error, + .. + } => { + format!("ToolResult(id={}, is_error={})", tool_use_id, is_error) + } + crate::ai::bedrock::convert::MessageContent::MultiPart(parts) => { + let part_descs: Vec = parts + .iter() + .map(|p| match p { + crate::ai::bedrock::convert::ContentPart::Text(t) => { + format!("Text({})", t.len()) + } + crate::ai::bedrock::convert::ContentPart::ToolUse { + name, + tool_use_id, + .. + } => format!("ToolUse({},{})", name, tool_use_id), + crate::ai::bedrock::convert::ContentPart::ToolResult { + tool_use_id, + .. + } => format!("ToolResult({})", tool_use_id), + }) + .collect(); + format!("MultiPart[{}]", part_descs.join(", ")) + } + }; + log::debug!( + "[bedrock] msg[{}]: role={:?}, content={}", + i, + msg.role, + content_desc + ); + } + match bedrock .converse_stream( &model_id, &task_id, + needs_create_task, messages, system_prompt, tools, 8192, None, true, + diagnostic_logger, ) .await { diff --git a/app/src/ai/agent/api/impl_tests.rs b/app/src/ai/agent/api/impl_tests.rs index 73c2679a..1a2610ea 100644 --- a/app/src/ai/agent/api/impl_tests.rs +++ b/app/src/ai/agent/api/impl_tests.rs @@ -1,7 +1,7 @@ use crate::ai::agent::api::RequestParams; use crate::ai::blocklist::SessionContext; use crate::ai::llms::LLMId; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api as api; use super::get_supported_tools; diff --git a/app/src/ai/agent/conversation.rs b/app/src/ai/agent/conversation.rs index 05a2fbbe..1728efea 100644 --- a/app/src/ai/agent/conversation.rs +++ b/app/src/ai/agent/conversation.rs @@ -26,17 +26,17 @@ use std::{collections::HashMap, fmt::Display}; use super::task_store::TaskStore; use uuid::Uuid; use vec1::{Size0Error, Vec1}; -use warp_core::command::ExitCode; -use warp_core::execution_mode::AppExecutionMode; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::WarpTheme; +use galaxy_core::command::ExitCode; +use galaxy_core::execution_mode::AppExecutionMode; +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::WarpTheme; use warp_multi_agent_api::response_event::stream_finished; use warp_multi_agent_api::{self as api, response_event::stream_finished::TokenUsage}; -use warpui::color::ColorU; -use warpui::{EntityId, ModelContext, SingletonEntity}; +use galaxyui::color::ColorU; +use galaxyui::{EntityId, ModelContext, SingletonEntity}; use crate::ai::agent::{AIIdentifiers, CancellationReason}; use crate::{ @@ -3683,7 +3683,7 @@ impl std::fmt::Display for ConversationStatus { } impl ConversationStatus { - pub fn render_icon(&self, appearance: &Appearance) -> warpui::elements::Icon { + pub fn render_icon(&self, appearance: &Appearance) -> galaxyui::elements::Icon { match self { ConversationStatus::InProgress => in_progress_icon(appearance), ConversationStatus::Success => succeeded_icon(appearance), diff --git a/app/src/ai/agent/conversation_tests.rs b/app/src/ai/agent/conversation_tests.rs index d330f264..8c41e788 100644 --- a/app/src/ai/agent/conversation_tests.rs +++ b/app/src/ai/agent/conversation_tests.rs @@ -5,7 +5,7 @@ use super::{ }; use crate::ai::artifacts::Artifact; use crate::persistence::model::AgentConversationData; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api as api; fn restored_conversation(conversation_data: Option) -> AIConversation { diff --git a/app/src/ai/agent/icons.rs b/app/src/ai/agent/icons.rs index 93b79cd5..9209fe04 100644 --- a/app/src/ai/agent/icons.rs +++ b/app/src/ai/agent/icons.rs @@ -1,90 +1,90 @@ -use warp_core::ui::{appearance::Appearance, theme::AnsiColorIdentifier}; +use galaxy_core::ui::{appearance::Appearance, theme::AnsiColorIdentifier}; use crate::ui_components::{blended_colors, icons::Icon}; -pub fn todo_list_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn todo_list_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::BulletedListBlock.into(), blended_colors::neutral_7(appearance.theme()), ) } -pub fn pending_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn pending_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Queued.into(), blended_colors::neutral_5(appearance.theme()), ) } -pub fn in_progress_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn in_progress_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Circle.into(), AnsiColorIdentifier::Magenta.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } -pub fn succeeded_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn succeeded_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Check.into(), AnsiColorIdentifier::Green.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } -pub fn addressed_comment_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn addressed_comment_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::AddressedComment.into(), AnsiColorIdentifier::Green.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } -pub fn failed_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn failed_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Triangle.into(), AnsiColorIdentifier::Red.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } /// Not running, does not need user's attention -pub fn gray_stop_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn gray_stop_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::StopFilled.into(), blended_colors::neutral_5(appearance.theme()), ) } /// Agent is waiting for user to follow-up with next prompt. -pub fn gray_clock_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn gray_clock_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::ClockSnooze.into(), blended_colors::neutral_5(appearance.theme()), ) } /// Loading but not actionable yet. -pub fn gray_circle_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn gray_circle_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Circle.into(), blended_colors::neutral_5(appearance.theme()), ) } /// Not running, requires user's attention -pub fn yellow_stop_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn yellow_stop_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::StopFilled.into(), AnsiColorIdentifier::Yellow.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } /// To be used for actions (like running commands/reading files) that are long-running and executing. -pub fn yellow_running_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn yellow_running_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Circle.into(), AnsiColorIdentifier::Yellow.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } /// Used for buttons that stop the current task -pub fn red_stop_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new(Icon::StopFilled.into(), appearance.theme().ansi_fg_red()) +pub fn red_stop_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new(Icon::StopFilled.into(), appearance.theme().ansi_fg_red()) } diff --git a/app/src/ai/agent/mod.rs b/app/src/ai/agent/mod.rs index 769d84d2..87b44349 100644 --- a/app/src/ai/agent/mod.rs +++ b/app/src/ai/agent/mod.rs @@ -14,7 +14,7 @@ pub(super) mod util; // Re-export types that were moved to the ai crate. pub use ai::agent::{action::*, action_result::*, AIAgentCitation, FileLocations}; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; #[cfg(test)] mod suggestion_test; @@ -33,7 +33,7 @@ use comment::ReviewComment; use task::TaskId; pub use telemetry::AIIdentifiers; -use warp_editor::render::model::LineCount; +use galaxy_editor::render::model::LineCount; use parking_lot::RwLock; use std::collections::{HashMap, HashSet}; diff --git a/app/src/ai/agent/telemetry.rs b/app/src/ai/agent/telemetry.rs index 0680f0aa..ca0ca765 100644 --- a/app/src/ai/agent/telemetry.rs +++ b/app/src/ai/agent/telemetry.rs @@ -1,5 +1,5 @@ use serde::Serialize; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::llms::LLMId; use crate::CloudModel; diff --git a/app/src/ai/agent/todos/popup.rs b/app/src/ai/agent/todos/popup.rs index b69dcd22..8a88c0ad 100644 --- a/app/src/ai/agent/todos/popup.rs +++ b/app/src/ai/agent/todos/popup.rs @@ -1,15 +1,15 @@ use crate::ai::blocklist::{BlocklistAIContextEvent, BlocklistAIContextModel}; use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ ClippedScrollStateHandle, ClippedScrollable, Dismiss, Empty, Expanded, ParentElement, SavePosition, ScrollTarget, ScrollToPositionMode, ScrollbarWidth, Shrinkable, }; -use warpui::fonts::FamilyId; -use warpui::ModelHandle; -use warpui::SingletonEntity; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::ModelHandle; +use galaxyui::SingletonEntity; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, MainAxisSize, Radius, Text, @@ -50,7 +50,7 @@ struct Styles { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -124,9 +124,9 @@ impl AgentTodosPopupView { fn render_header( &self, - app: &warpui::AppContext, + app: &galaxyui::AppContext, todo_list: &AIAgentTodoList, - ) -> Box { + ) -> Box { let appearance = Appearance::as_ref(app); let styles = self.styles(appearance); let theme = appearance.theme(); @@ -159,7 +159,7 @@ impl View for AgentTodosPopupView { "AgentTodosPopup" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let Some(todo_list) = self .ai_context_model .as_ref(app) @@ -271,7 +271,7 @@ impl View for AgentTodosPopupView { ScrollbarWidth::Auto, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .finish(); diff --git a/app/src/ai/agent/util.rs b/app/src/ai/agent/util.rs index 84ac141c..23624363 100644 --- a/app/src/ai/agent/util.rs +++ b/app/src/ai/agent/util.rs @@ -13,7 +13,7 @@ use markdown_parser::{ use mermaid_to_svg::is_mermaid_diagram; use regex::Regex; use std::{collections::HashMap, path::PathBuf}; -use warp_util::path::LineAndColumnArg; +use galaxy_util::path::LineAndColumnArg; lazy_static! { /// Markdown prefix for code blocks. Matches on triple backticks followed by a language. @@ -258,7 +258,7 @@ fn image_section(image: FormattedImage, layout: AgentOutputImageLayout) -> AIAge } fn markdown_source_for_image(image: &FormattedImage) -> String { - warp_editor::content::text::format_image_markdown( + galaxy_editor::content::text::format_image_markdown( &image.alt_text, &image.source, image.title.as_deref(), diff --git a/app/src/ai/agent_conversations_model.rs b/app/src/ai/agent_conversations_model.rs index 89e16f60..3939785c 100644 --- a/app/src/ai/agent_conversations_model.rs +++ b/app/src/ai/agent_conversations_model.rs @@ -29,15 +29,15 @@ use serde::{Deserialize, Deserializer, Serialize, Serializer}; use session_sharing_protocol::common::SessionId; use std::collections::{HashMap, HashSet}; use std::time::Duration; -use warp_cli::agent::Harness; -use warp_core::execution_mode::AppExecutionMode; -use warp_core::features::FeatureFlag; -use warp_core::report_error; -use warp_core::ui::theme::{color::internal_colors, WarpTheme}; -use warpui::color::ColorU; -use warpui::r#async::Timer; -use warpui::windowing::{StateEvent, WindowManager}; -use warpui::{ +use galaxy_cli::agent::Harness; +use galaxy_core::execution_mode::AppExecutionMode; +use galaxy_core::features::FeatureFlag; +use galaxy_core::report_error; +use galaxy_core::ui::theme::{color::internal_colors, WarpTheme}; +use galaxyui::color::ColorU; +use galaxyui::r#async::Timer; +use galaxyui::windowing::{StateEvent, WindowManager}; +use galaxyui::{ duration_with_jitter, AppContext, Entity, EntityId, ModelContext, RequestState, SingletonEntity, WindowId, }; diff --git a/app/src/ai/agent_conversations_model_tests.rs b/app/src/ai/agent_conversations_model_tests.rs index 3042520a..cb1f7e47 100644 --- a/app/src/ai/agent_conversations_model_tests.rs +++ b/app/src/ai/agent_conversations_model_tests.rs @@ -8,8 +8,8 @@ use std::{ Arc, }, }; -use warp_core::features::FeatureFlag; -use warpui::{App, EntityId}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{App, EntityId}; use crate::ai::agent::conversation::{AIConversation, AIConversationId, ConversationStatus}; use crate::ai::ambient_agents::task::{TaskCreatorInfo, TaskStatusMessage}; @@ -29,7 +29,7 @@ use super::{ MAX_PERSONAL_TASKS, MAX_TEAM_TASKS, }; use crate::ai::ambient_agents::task::HarnessConfig; -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; /// Creates a test task with specified creator UID and updated_at time fn create_test_task( diff --git a/app/src/ai/agent_events/driver.rs b/app/src/ai/agent_events/driver.rs index 3db6cebe..31e76690 100644 --- a/app/src/ai/agent_events/driver.rs +++ b/app/src/ai/agent_events/driver.rs @@ -6,7 +6,7 @@ use async_trait::async_trait; use futures::future::Either; use futures::StreamExt; use instant::Instant; -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; use crate::server::server_api::ai::AgentRunEvent; use crate::server::server_api::ServerApi; diff --git a/app/src/ai/agent_events/message_hydrator.rs b/app/src/ai/agent_events/message_hydrator.rs index e73d78c3..6a68cdb2 100644 --- a/app/src/ai/agent_events/message_hydrator.rs +++ b/app/src/ai/agent_events/message_hydrator.rs @@ -5,7 +5,7 @@ use anyhow::{anyhow, Context, Result}; #[cfg(not(target_family = "wasm"))] use futures::future::Either; #[cfg(not(target_family = "wasm"))] -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; use crate::ai::agent::ReceivedMessageInput; use crate::server::server_api::ai::{AIClient, AgentRunEvent, ReadAgentMessageResponse}; diff --git a/app/src/ai/agent_management/agent_management_model.rs b/app/src/ai/agent_management/agent_management_model.rs index 71819526..64ba6342 100644 --- a/app/src/ai/agent_management/agent_management_model.rs +++ b/app/src/ai/agent_management/agent_management_model.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity, WindowId}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity, WindowId}; use crate::settings::AISettings; @@ -21,7 +21,7 @@ use crate::terminal::CLIAgent; use crate::workspace::util::is_terminal_view_in_same_tab; use crate::workspace::{Workspace, WorkspaceRegistry}; use crate::BlocklistAIHistoryModel; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; /// Singleton model responsible for triggering in-app notifications on blocking conversation /// status updates and tracking/storing these notifications for the notifications mailbox. diff --git a/app/src/ai/agent_management/agent_management_model_tests.rs b/app/src/ai/agent_management/agent_management_model_tests.rs index a385e977..315ce74d 100644 --- a/app/src/ai/agent_management/agent_management_model_tests.rs +++ b/app/src/ai/agent_management/agent_management_model_tests.rs @@ -1,5 +1,5 @@ -use warp_core::features::FeatureFlag; -use warpui::{App, EntityId, ModelHandle}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{App, EntityId, ModelHandle}; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::ai::agent::conversation::AIConversationId; diff --git a/app/src/ai/agent_management/agent_type_selector.rs b/app/src/ai/agent_management/agent_type_selector.rs index d0357dbe..62150044 100644 --- a/app/src/ai/agent_management/agent_type_selector.rs +++ b/app/src/ai/agent_management/agent_type_selector.rs @@ -7,18 +7,18 @@ use crate::appearance::Appearance; use crate::ui_components::icons::Icon; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, DropShadow, Element, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::{FixedBinding, Keystroke}; -use warpui::platform::Cursor; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::{FixedBinding, Keystroke}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; // Modal dimensions based on Figma design. const MODAL_WIDTH: f32 = 440.; @@ -79,7 +79,7 @@ pub struct AgentTypeSelector { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::new( @@ -223,7 +223,7 @@ impl AgentTypeSelector { (base_background, base_border) }; - let avatar_icon = ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + let avatar_icon = ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(AVATAR_ICON_SIZE) .with_height(AVATAR_ICON_SIZE) .finish(); diff --git a/app/src/ai/agent_management/cloud_setup_guide_view.rs b/app/src/ai/agent_management/cloud_setup_guide_view.rs index addff164..75bdfcbe 100644 --- a/app/src/ai/agent_management/cloud_setup_guide_view.rs +++ b/app/src/ai/agent_management/cloud_setup_guide_view.rs @@ -11,23 +11,23 @@ use crate::workflows::WorkflowType; use serde::Serialize; use std::collections::HashMap; use string_offset::CharCounter; -use warp_completer::signatures::CommandRegistry; -use warp_completer::{util::parse_current_commands_and_tokens, ParsedTokensSnapshot}; -use warp_core::report_error; -use warp_core::ui::theme::{AnsiColorIdentifier, AnsiColors}; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{ +use galaxy_completer::signatures::CommandRegistry; +use galaxy_completer::{util::parse_current_commands_and_tokens, ParsedTokensSnapshot}; +use galaxy_core::report_error; +use galaxy_core::ui::theme::{AnsiColorIdentifier, AnsiColors}; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{ new_scrollable::{ClippedAxisConfiguration, DualAxisConfig, NewScrollable}, Align, Border, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Empty, Expanded, Flex, Highlight, HighlightedRange, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::prelude::ChildView; -use warpui::text_layout::TextStyle; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::ViewHandle; -use warpui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::prelude::ChildView; +use galaxyui::text_layout::TextStyle; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::ViewHandle; +use galaxyui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; const DOCS_URL: &str = "https://docs.warp.dev/agent-platform/cloud-agents/overview"; const ENV_DOCS_URL: &str = @@ -617,7 +617,7 @@ impl View for CloudSetupGuideView { }, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(); diff --git a/app/src/ai/agent_management/details_action_buttons.rs b/app/src/ai/agent_management/details_action_buttons.rs index 819e11ba..87b9f099 100644 --- a/app/src/ai/agent_management/details_action_buttons.rs +++ b/app/src/ai/agent_management/details_action_buttons.rs @@ -1,8 +1,8 @@ //! Action buttons row for conversation details panel. -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::elements::{ChildView, CrossAxisAlignment, Empty, Flex, ParentElement}; -use warpui::{AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::elements::{ChildView, CrossAxisAlignment, Empty, Flex, ParentElement}; +use galaxyui::{AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; use crate::view_components::copyable_text_field::COPY_FEEDBACK_DURATION; @@ -274,7 +274,7 @@ impl TypedActionView for ConversationActionButtonsRow { let duration = COPY_FEEDBACK_DURATION; ctx.spawn( async move { - warpui::r#async::Timer::after(duration).await; + galaxyui::r#async::Timer::after(duration).await; }, |me, _, ctx| { me.copy_link_button.update(ctx, |button, ctx| { diff --git a/app/src/ai/agent_management/mod.rs b/app/src/ai/agent_management/mod.rs index 4199ac91..53588b6c 100644 --- a/app/src/ai/agent_management/mod.rs +++ b/app/src/ai/agent_management/mod.rs @@ -9,7 +9,7 @@ pub(crate) mod view; pub(crate) use agent_management_model::{AgentManagementEvent, AgentNotificationsModel}; -pub fn init(app: &mut warpui::AppContext) { +pub fn init(app: &mut galaxyui::AppContext) { view::init(app); agent_type_selector::init(app); notifications::view::NotificationMailboxView::init(app); diff --git a/app/src/ai/agent_management/notifications/item.rs b/app/src/ai/agent_management/notifications/item.rs index 95473350..e3b49b6f 100644 --- a/app/src/ai/agent_management/notifications/item.rs +++ b/app/src/ai/agent_management/notifications/item.rs @@ -1,7 +1,7 @@ use enum_iterator::Sequence; use instant::Instant; use uuid::Uuid; -use warpui::EntityId; +use galaxyui::EntityId; use crate::ai::agent::conversation::AIConversationId; use crate::ai::artifacts::Artifact; diff --git a/app/src/ai/agent_management/notifications/item_rendering.rs b/app/src/ai/agent_management/notifications/item_rendering.rs index 88dadc5c..90db7255 100644 --- a/app/src/ai/agent_management/notifications/item_rendering.rs +++ b/app/src/ai/agent_management/notifications/item_rendering.rs @@ -1,20 +1,20 @@ use std::sync::Arc; use pathfinder_color::ColorU; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{ +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{ ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, Element, EventHandler, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Radius, Rect, Shrinkable, }; -use warpui::fonts::Weight; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{View, ViewContext, ViewHandle}; +use galaxyui::fonts::Weight; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{View, ViewContext, ViewHandle}; -use warp_core::ui::appearance::Appearance as CoreAppearance; -use warp_core::ui::theme::color::internal_colors; +use galaxy_core::ui::appearance::Appearance as CoreAppearance; +use galaxy_core::ui::theme::color::internal_colors; use crate::ai::agent::conversation::ConversationStatus; use crate::ai::agent_management::notifications::item::NotificationSourceAgent; @@ -85,7 +85,7 @@ impl ActionButtonTheme for NotificationArtifactButtonTheme { } /// Callback invoked when the user clicks the expand/collapse affordance on a clamped message. -pub(crate) type OnExpandClick = Box; +pub(crate) type OnExpandClick = Box; /// Renders the inner content of a notification item. /// Dispatches to the rich layout (with branch row) or simple layout based on `item.branch`. @@ -258,7 +258,7 @@ fn render_branch_label(branch: &str, appearance: &Appearance) -> Box Box { let theme = appearance.theme(); - let on_expand: OnExpandClick = Box::new(move |ctx: &mut warpui::EventContext| { + let on_expand: OnExpandClick = Box::new(move |ctx: &mut galaxyui::EventContext| { ctx.dispatch_typed_action(AgentNotificationToastAction::ToggleMessageExpanded(id)); }); let keybinding_hint = keystroke.map(|ks| render_keybinding_hint(ks, appearance)); diff --git a/app/src/ai/agent_management/notifications/view.rs b/app/src/ai/agent_management/notifications/view.rs index 4680e8cf..4f4ba458 100644 --- a/app/src/ai/agent_management/notifications/view.rs +++ b/app/src/ai/agent_management/notifications/view.rs @@ -1,18 +1,18 @@ -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::new_scrollable::{ScrollableAppearance, SingleAxisConfig}; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::new_scrollable::{ScrollableAppearance, SingleAxisConfig}; +use galaxyui::elements::{ Border, ChildView, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, DispatchEventResult, Element, Empty, EventHandler, Fill as ElementFill, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, NewScrollable, Padding, ParentElement, Radius, SavePosition, ScrollTarget, ScrollToPositionMode, ScrollbarWidth, Shrinkable, }; -use warpui::fonts::Weight; -use warpui::keymap::macros::id; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle}; +use galaxyui::fonts::Weight; +use galaxyui::keymap::macros::id; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle}; use crate::ai::agent_management::notifications::item::NotificationFilter; use crate::ai::agent_management::notifications::item_rendering::{ @@ -56,7 +56,7 @@ impl Entity for NotificationMailboxView { #[derive(Debug, Clone)] pub enum NotificationMailboxViewEvent { - NavigateToTerminal { terminal_view_id: warpui::EntityId }, + NavigateToTerminal { terminal_view_id: galaxyui::EntityId }, Dismissed, } diff --git a/app/src/ai/agent_management/telemetry.rs b/app/src/ai/agent_management/telemetry.rs index 9beac781..80ec001b 100644 --- a/app/src/ai/agent_management/telemetry.rs +++ b/app/src/ai/agent_management/telemetry.rs @@ -1,7 +1,7 @@ use serde::Serialize; use serde_json::json; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; use crate::ai::agent_management::cloud_setup_guide_view::SetupGuideDocs; @@ -216,7 +216,7 @@ impl TelemetryEvent for AgentManagementTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -290,4 +290,4 @@ impl TelemetryEventDesc for AgentManagementTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(AgentManagementTelemetryEvent); +galaxy_core::register_telemetry_event!(AgentManagementTelemetryEvent); diff --git a/app/src/ai/agent_management/view.rs b/app/src/ai/agent_management/view.rs index 16076f06..17ee7ee3 100644 --- a/app/src/ai/agent_management/view.rs +++ b/app/src/ai/agent_management/view.rs @@ -6,9 +6,9 @@ use fuzzy_match::match_indices_case_insensitive; use lazy_static::lazy_static; use pathfinder_color::ColorU; use siphasher::sip::SipHasher; -use warp_core::features::FeatureFlag; -use warpui::scene::DropShadow; -use warpui::ui_components::button::ButtonVariant; +use galaxy_core::features::FeatureFlag; +use galaxyui::scene::DropShadow; +use galaxyui::ui_components::button::ButtonVariant; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent_conversations_model::{ @@ -65,26 +65,26 @@ use crate::workspaces::user_workspaces::UserWorkspaces; use crate::{send_telemetry_from_ctx, AgentModeEntrypoint}; use pathfinder_geometry::vector::vec2f; use settings::Setting; -use warp_cli::agent::Harness; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warpui::clipboard::ClipboardContent; -use warpui::elements::new_scrollable::{ +use galaxy_cli::agent::Harness; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::new_scrollable::{ NewScrollableElement, ScrollableAppearance, SingleAxisConfig, }; -use warpui::elements::{ +use galaxyui::elements::{ Align, Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Empty, Expanded, Flex, Hoverable, List, ListState, MainAxisSize, MouseStateHandle, NewScrollable, OffsetPositioning, Padding, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Rect, ScrollStateHandle, ScrollbarWidth, Shrinkable, SizeConstraintCondition, SizeConstraintSwitch, Stack, Text, Wrap, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::components::UiComponentStyles; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::{ keymap::FixedBinding, Action, AppContext, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WeakViewHandle, }; @@ -117,7 +117,7 @@ pub fn init(app: &mut AppContext) { app.register_fixed_bindings([FixedBinding::new( cmd_or_ctrl_shift("f"), AgentManagementViewAction::FocusSearch, - warpui::keymap::macros::id!(AgentManagementView::ui_name()), + galaxyui::keymap::macros::id!(AgentManagementView::ui_name()), )]); } @@ -1992,7 +1992,7 @@ impl AgentManagementView { let loading_icon = ConstrainedBox::new( Icon::Refresh - .to_warpui_icon(theme.sub_text_color(theme.surface_1())) + .to_galaxyui_icon(theme.sub_text_color(theme.surface_1())) .finish(), ) .with_height(icon_size) @@ -2036,7 +2036,7 @@ impl AgentManagementView { let loading_icon = ConstrainedBox::new( Icon::Loading - .to_warpui_icon(Fill::Solid(internal_colors::neutral_6(theme))) + .to_galaxyui_icon(Fill::Solid(internal_colors::neutral_6(theme))) .finish(), ) .with_height(appearance.ui_font_size() + 2.) @@ -2096,7 +2096,7 @@ impl AgentManagementView { let appearance = Appearance::as_ref(app); let icon = ConstrainedBox::new( Icon::FilterOff - .to_warpui_icon(appearance.theme().nonactive_ui_text_color()) + .to_galaxyui_icon(appearance.theme().nonactive_ui_text_color()) .finish(), ) .with_width(24.) @@ -2135,7 +2135,7 @@ impl AgentManagementView { axis_config, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_vertical_scrollbar(ScrollableAppearance::new(ScrollbarWidth::None, false)) .with_always_handle_events_first(false) diff --git a/app/src/ai/agent_sdk/admin.rs b/app/src/ai/agent_sdk/admin.rs index 2fb033cd..de75a9d8 100644 --- a/app/src/ai/agent_sdk/admin.rs +++ b/app/src/ai/agent_sdk/admin.rs @@ -2,8 +2,8 @@ use anyhow::{Context, Result}; use serde::Serialize; -use warp_cli::agent::OutputFormat; -use warpui::{platform::TerminationMode, AppContext, SingletonEntity}; +use galaxy_cli::agent::OutputFormat; +use galaxyui::{platform::TerminationMode, AppContext, SingletonEntity}; use crate::auth::auth_manager::{AuthManager, AuthManagerEvent}; use crate::auth::user::PrincipalType; @@ -116,7 +116,7 @@ struct WhoamiOutput { /// Singleton model that provides a `ModelContext` for the `whoami` command's async work. struct WhoamiRunner; -impl warpui::Entity for WhoamiRunner { +impl galaxyui::Entity for WhoamiRunner { type Event = (); } diff --git a/app/src/ai/agent_sdk/agent_config.rs b/app/src/ai/agent_sdk/agent_config.rs index 2df096ff..21d686e7 100644 --- a/app/src/ai/agent_sdk/agent_config.rs +++ b/app/src/ai/agent_sdk/agent_config.rs @@ -4,10 +4,10 @@ use crate::ai::agent_sdk::oauth_flow::poll_oauth_until_terminal; use crate::ai::cloud_environments::GithubRepo; use crate::server::server_api::ai::AgentListItem; use crate::server::server_api::ServerApiProvider; -use warp_cli::agent::ListAgentConfigsArgs; -use warp_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; -use warp_graphql::queries::user_repo_auth_status::UserRepoAuthStatusEnum; -use warpui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; +use galaxy_cli::agent::ListAgentConfigsArgs; +use galaxy_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; +use galaxy_graphql::queries::user_repo_auth_status::UserRepoAuthStatusEnum; +use galaxyui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; const MAX_LINE_WIDTH: usize = 90; const MAX_AUTH_ATTEMPTS: u32 = 8; @@ -304,7 +304,7 @@ impl AgentConfigRunner { } } -impl warpui::Entity for AgentConfigRunner { +impl galaxyui::Entity for AgentConfigRunner { type Event = (); } diff --git a/app/src/ai/agent_sdk/ambient.rs b/app/src/ai/agent_sdk/ambient.rs index 2f696004..0d22bcf1 100644 --- a/app/src/ai/agent_sdk/ambient.rs +++ b/app/src/ai/agent_sdk/ambient.rs @@ -27,7 +27,7 @@ use comfy_table::Cell; use futures::{future, StreamExt}; use serde::Serialize; -use warp_cli::{ +use galaxy_cli::{ agent::{Harness, OutputFormat, Prompt, RunCloudArgs}, json_filter::JsonOutput, task::{ @@ -37,10 +37,10 @@ use warp_cli::{ }, GlobalOptions, }; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; -use warpui::r#async::Timer; -use warpui::{ +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; +use galaxyui::r#async::Timer; +use galaxyui::{ platform::TerminationMode, r#async::Spawnable, AppContext, ModelContext, SingletonEntity, }; @@ -1240,7 +1240,7 @@ impl AmbientAgentRunner { } } -impl warpui::Entity for AmbientAgentRunner { +impl galaxyui::Entity for AmbientAgentRunner { type Event = (); } diff --git a/app/src/ai/agent_sdk/ambient_tests.rs b/app/src/ai/agent_sdk/ambient_tests.rs index 4522cad6..1810dbdb 100644 --- a/app/src/ai/agent_sdk/ambient_tests.rs +++ b/app/src/ai/agent_sdk/ambient_tests.rs @@ -3,8 +3,8 @@ use chrono::{TimeZone, Utc}; -use warp_cli::json_filter::JsonOutput; -use warp_cli::task::{ +use galaxy_cli::json_filter::JsonOutput; +use galaxy_cli::task::{ ArtifactTypeArg, ExecutionLocationArg, ListTasksArgs, RunSortByArg, RunSortOrderArg, RunSourceArg, RunStateArg, }; diff --git a/app/src/ai/agent_sdk/artifact.rs b/app/src/ai/agent_sdk/artifact.rs index 6ebf2152..2b3758c0 100644 --- a/app/src/ai/agent_sdk/artifact.rs +++ b/app/src/ai/agent_sdk/artifact.rs @@ -2,12 +2,12 @@ use std::{path::PathBuf, sync::Arc}; use anyhow::{Context, Result}; use serde::Serialize; -use warp_cli::agent::OutputFormat; -use warp_cli::artifact::{ +use galaxy_cli::agent::OutputFormat; +use galaxy_cli::artifact::{ ArtifactCommand, DownloadArtifactArgs, GetArtifactArgs, UploadArtifactArgs, }; -use warp_cli::GlobalOptions; -use warpui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; +use galaxy_cli::GlobalOptions; +use galaxyui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; use crate::ai::artifact_download::{download_artifact_bytes, download_destination}; #[cfg(test)] @@ -129,7 +129,7 @@ impl ArtifactCommandRunner { } } -impl warpui::Entity for ArtifactCommandRunner { +impl galaxyui::Entity for ArtifactCommandRunner { type Event = (); } diff --git a/app/src/ai/agent_sdk/artifact_tests.rs b/app/src/ai/agent_sdk/artifact_tests.rs index f3de11bc..4ddec4d8 100644 --- a/app/src/ai/agent_sdk/artifact_tests.rs +++ b/app/src/ai/agent_sdk/artifact_tests.rs @@ -1,5 +1,5 @@ use std::path::PathBuf; -use warp_cli::agent::OutputFormat; +use galaxy_cli::agent::OutputFormat; use super::*; diff --git a/app/src/ai/agent_sdk/artifact_upload.rs b/app/src/ai/agent_sdk/artifact_upload.rs index ff5ffa24..18022bdf 100644 --- a/app/src/ai/agent_sdk/artifact_upload.rs +++ b/app/src/ai/agent_sdk/artifact_upload.rs @@ -7,7 +7,7 @@ use std::sync::Arc; use anyhow::{anyhow, bail, Context, Result}; use blocking::unblock; use mime_guess::from_path; -use warp_cli::artifact::UploadArtifactArgs; +use galaxy_cli::artifact::UploadArtifactArgs; use super::common::parse_ambient_task_id; use crate::ai::agent::api::ServerConversationToken; diff --git a/app/src/ai/agent_sdk/artifact_upload_tests.rs b/app/src/ai/agent_sdk/artifact_upload_tests.rs index 81edaed9..893a3f98 100644 --- a/app/src/ai/agent_sdk/artifact_upload_tests.rs +++ b/app/src/ai/agent_sdk/artifact_upload_tests.rs @@ -4,7 +4,7 @@ use std::path::PathBuf; use chrono::Utc; use tempfile::tempdir; -use warp_cli::artifact::UploadArtifactArgs; +use galaxy_cli::artifact::UploadArtifactArgs; use super::*; use crate::ai::agent::api::ServerConversationToken; diff --git a/app/src/ai/agent_sdk/common.rs b/app/src/ai/agent_sdk/common.rs index 22ac0219..34c00836 100644 --- a/app/src/ai/agent_sdk/common.rs +++ b/app/src/ai/agent_sdk/common.rs @@ -7,10 +7,10 @@ use std::time::Duration; use futures::TryFutureExt; use inquire::{InquireError, Select}; -use warp_cli::agent::Harness; -use warp_cli::environment::{EnvironmentCreateArgs, EnvironmentUpdateArgs}; -use warpui::r#async::FutureExt; -use warpui::{AppContext, GetSingletonModelHandle, SingletonEntity as _, UpdateModel}; +use galaxy_cli::agent::Harness; +use galaxy_cli::environment::{EnvironmentCreateArgs, EnvironmentUpdateArgs}; +use galaxyui::r#async::FutureExt; +use galaxyui::{AppContext, GetSingletonModelHandle, SingletonEntity as _, UpdateModel}; use crate::ai::agent::conversation::ServerAIConversationMetadata; use crate::ai::agent_sdk::driver::{AgentDriverError, WARP_DRIVE_SYNC_TIMEOUT}; @@ -252,7 +252,7 @@ impl EnvironmentChoice { // If there are no synced environments, require the user to create one or use --no-environment. if options.len() == 1 { - let cli_name = warp_cli::binary_name().unwrap_or_else(|| "warp".to_string()); + let cli_name = galaxy_cli::binary_name().unwrap_or_else(|| "warp".to_string()); return Err(ResolveConfigurationError::Other(anyhow::anyhow!( "No environments are configured for this account.\n\ You can create an environment with `{cli_name} environment create`.\n\ diff --git a/app/src/ai/agent_sdk/config_file.rs b/app/src/ai/agent_sdk/config_file.rs index 472d4749..1a104510 100644 --- a/app/src/ai/agent_sdk/config_file.rs +++ b/app/src/ai/agent_sdk/config_file.rs @@ -2,7 +2,7 @@ use std::path::Path; use anyhow::Context as _; use serde_json::{Map, Value}; -use warp_cli::mcp::MCPSpec; +use galaxy_cli::mcp::MCPSpec; use crate::ai::ambient_agents::AgentConfigSnapshot; diff --git a/app/src/ai/agent_sdk/config_file_tests.rs b/app/src/ai/agent_sdk/config_file_tests.rs index d27a4bce..11acfdb2 100644 --- a/app/src/ai/agent_sdk/config_file_tests.rs +++ b/app/src/ai/agent_sdk/config_file_tests.rs @@ -5,7 +5,7 @@ use std::io::Write as _; use serde_json::json; use crate::ai::ambient_agents::AgentConfigSnapshot; -use warp_cli::mcp::MCPSpec; +use galaxy_cli::mcp::MCPSpec; fn write_temp(suffix: &str, contents: &str) -> tempfile::NamedTempFile { let mut file = tempfile::Builder::new().suffix(suffix).tempfile().unwrap(); diff --git a/app/src/ai/agent_sdk/driver.rs b/app/src/ai/agent_sdk/driver.rs index 84ad49ab..5ecb0345 100644 --- a/app/src/ai/agent_sdk/driver.rs +++ b/app/src/ai/agent_sdk/driver.rs @@ -76,13 +76,13 @@ use futures::{ }; use oneshot::{Canceled, Receiver, Sender}; use uuid::Uuid; -use warp_cli::agent::{Harness, OutputFormat}; -use warp_cli::mcp::MCPSpec; -use warp_cli::share::ShareRequest; -use warp_core::{features::FeatureFlag, report_error, report_if_error, safe_debug, safe_info}; -use warp_graphql::ai::AgentTaskState; -use warp_managed_secrets::ManagedSecretValue; -use warpui::{ +use galaxy_cli::agent::{Harness, OutputFormat}; +use galaxy_cli::mcp::MCPSpec; +use galaxy_cli::share::ShareRequest; +use galaxy_core::{features::FeatureFlag, report_error, report_if_error, safe_debug, safe_info}; +use galaxy_graphql::ai::AgentTaskState; +use galaxy_managed_secrets::ManagedSecretValue; +use galaxyui::{ r#async::{FutureExt, TimeoutError}, AppContext, Entity, ModelContext, ModelHandle, ModelSpawner, SingletonEntity, }; @@ -441,8 +441,8 @@ pub enum AgentDriverError { }, } -impl From for AgentDriverError { - fn from(_: warpui::ModelDropped) -> Self { +impl From for AgentDriverError { + fn from(_: galaxyui::ModelDropped) -> Self { AgentDriverError::InvalidRuntimeState } } @@ -596,7 +596,7 @@ impl AgentDriver { // Signal to third-party harnesses (e.g. Claude Code) that we're in a sandbox // so they allow root execution with permissive flags. - if warp_isolation_platform::detect().is_some() { + if galaxy_isolation_platform::detect().is_some() { env_vars.insert(OsString::from("IS_SANDBOX"), OsString::from("1")); } @@ -729,7 +729,7 @@ impl AgentDriver { ) { let timeout = idle_timeout.min(SETUP_FAILED_IDLE_TIMEOUT); log::info!("Environment setup failed; keeping session alive for {timeout:?}"); - warpui::r#async::Timer::after(timeout).await; + galaxyui::r#async::Timer::after(timeout).await; } } @@ -1402,7 +1402,7 @@ impl AgentDriver { // and then call stop_sharing_session when they're done. To know when streams are finished, we would need to modify start_ordered_terminal_events_listener // to send a message when the streams are finished, flushed, and the websocket is disconnected. For now, we'll just sleep for a second, as this seems // to be enough time for the streams to be finished and the events to be flushed. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; conversation_status.into_result() } @@ -1569,7 +1569,7 @@ impl AgentDriver { let command_result = loop { futures::select! { exit_code = command_handle => break exit_code, - _ = warpui::r#async::Timer::after(HARNESS_SAVE_INTERVAL).fuse() => { + _ = galaxyui::r#async::Timer::after(HARNESS_SAVE_INTERVAL).fuse() => { log::debug!("Triggering periodic save of harness conversation data"); report_if_error!(runner .save_conversation(SavePoint::Periodic, foreground) diff --git a/app/src/ai/agent_sdk/driver/attachments.rs b/app/src/ai/agent_sdk/driver/attachments.rs index 9e1bab3a..97ab41d4 100644 --- a/app/src/ai/agent_sdk/driver/attachments.rs +++ b/app/src/ai/agent_sdk/driver/attachments.rs @@ -8,7 +8,7 @@ use futures::TryStreamExt as _; use mime_guess::from_path; use tokio::fs; use tokio_util::io::StreamReader; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::ai::agent_sdk::retry::with_bounded_retry; use crate::ai::ambient_agents::task::{AttachmentInput, TaskAttachment}; diff --git a/app/src/ai/agent_sdk/driver/cloud_provider.rs b/app/src/ai/agent_sdk/driver/cloud_provider.rs index f09099e4..60cf90d9 100644 --- a/app/src/ai/agent_sdk/driver/cloud_provider.rs +++ b/app/src/ai/agent_sdk/driver/cloud_provider.rs @@ -1,7 +1,7 @@ use std::{collections::HashMap, ffi::OsString, future::Future, pin::Pin}; use anyhow::Error; -use warpui::ModelSpawner; +use galaxyui::ModelSpawner; use super::terminal::TerminalDriver; use crate::ai::cloud_environments::ProvidersConfig; diff --git a/app/src/ai/agent_sdk/driver/cloud_provider/aws.rs b/app/src/ai/agent_sdk/driver/cloud_provider/aws.rs index 55452049..ec14769d 100644 --- a/app/src/ai/agent_sdk/driver/cloud_provider/aws.rs +++ b/app/src/ai/agent_sdk/driver/cloud_provider/aws.rs @@ -3,9 +3,9 @@ use std::{collections::HashMap, ffi::OsString, future::Future, pin::Pin, time::D use anyhow::Context; use tempfile::{Builder, NamedTempFile}; use vec1::Vec1; -use warp_core::safe_info; -use warp_managed_secrets::ManagedSecretManager; -use warpui::{ModelSpawner, SingletonEntity}; +use galaxy_core::safe_info; +use galaxy_managed_secrets::ManagedSecretManager; +use galaxyui::{ModelSpawner, SingletonEntity}; use crate::ai::aws_credentials::aws_role_session_name; use crate::ai::cloud_environments::AwsProviderConfig; @@ -93,7 +93,7 @@ impl CloudProvider for AwsCloudProvider { ManagedSecretManager::handle(ctx) .as_ref(ctx) .issue_task_identity_token( - warp_managed_secrets::client::IdentityTokenOptions { + galaxy_managed_secrets::client::IdentityTokenOptions { audience, requested_duration: duration, subject_template, diff --git a/app/src/ai/agent_sdk/driver/cloud_provider/gcp.rs b/app/src/ai/agent_sdk/driver/cloud_provider/gcp.rs index f75e529f..a71900b0 100644 --- a/app/src/ai/agent_sdk/driver/cloud_provider/gcp.rs +++ b/app/src/ai/agent_sdk/driver/cloud_provider/gcp.rs @@ -1,7 +1,7 @@ use std::{collections::HashMap, ffi::OsString, future::Future, pin::Pin, time::Duration}; use anyhow::Context as _; -use warp_managed_secrets::{GcpCredentials, GcpFederationConfig}; +use galaxy_managed_secrets::{GcpCredentials, GcpFederationConfig}; use crate::ai::cloud_environments::GcpProviderConfig; diff --git a/app/src/ai/agent_sdk/driver/environment.rs b/app/src/ai/agent_sdk/driver/environment.rs index 76091c54..1a29bdd5 100644 --- a/app/src/ai/agent_sdk/driver/environment.rs +++ b/app/src/ai/agent_sdk/driver/environment.rs @@ -14,12 +14,12 @@ use ai::index::full_source_code_embedding::manager::{ }; use futures::{channel::oneshot, future::join_all}; use repo_metadata::repositories::{DetectedRepositories, RepoDetectionSource}; -use warp_completer::completer::CommandExitStatus; -use warp_core::{command::ExitCode, safe_info, safe_warn}; -use warpui::{r#async::FutureExt, ModelContext, ModelSpawner, SingletonEntity}; +use galaxy_completer::completer::CommandExitStatus; +use galaxy_core::{command::ExitCode, safe_info, safe_warn}; +use galaxyui::{r#async::FutureExt, ModelContext, ModelSpawner, SingletonEntity}; use super::{terminal::TerminalDriver, AgentDriverError}; -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; const CODEBASE_INDEX_SYNC_TIMEOUT: Duration = Duration::from_secs(60); @@ -260,10 +260,10 @@ async fn prepare_environment_impl( // We also skip this in Namespace to reduce startup time. #[cfg(not(target_family = "wasm"))] let should_wait_for_indexing = !matches!( - warp_isolation_platform::detect(), + galaxy_isolation_platform::detect(), Some( - warp_isolation_platform::IsolationPlatformType::DockerSandbox - | warp_isolation_platform::IsolationPlatformType::Namespace + galaxy_isolation_platform::IsolationPlatformType::DockerSandbox + | galaxy_isolation_platform::IsolationPlatformType::Namespace ) ); #[cfg(target_family = "wasm")] diff --git a/app/src/ai/agent_sdk/driver/error_classification.rs b/app/src/ai/agent_sdk/driver/error_classification.rs index 47d0f23d..3f292848 100644 --- a/app/src/ai/agent_sdk/driver/error_classification.rs +++ b/app/src/ai/agent_sdk/driver/error_classification.rs @@ -1,6 +1,6 @@ use crate::ai::blocklist::task_status_sync_model::classify_renderable_error; use crate::server::server_api::ai::TaskStatusUpdate; -use warp_graphql::ai::{AgentTaskState, PlatformErrorCode}; +use galaxy_graphql::ai::{AgentTaskState, PlatformErrorCode}; use super::terminal::ShareSessionError; use super::AgentDriverError; @@ -71,7 +71,7 @@ pub fn classify_driver_error(error: &AgentDriverError) -> (AgentTaskState, TaskS ), ), AgentDriverError::NotLoggedIn => { - let bin = warp_cli::binary_name().unwrap_or_else(|| "warp".to_string()); + let bin = galaxy_cli::binary_name().unwrap_or_else(|| "warp".to_string()); ( AgentTaskState::Error, TaskStatusUpdate::with_error_code( diff --git a/app/src/ai/agent_sdk/driver/error_classification_tests.rs b/app/src/ai/agent_sdk/driver/error_classification_tests.rs index 2f2f85e1..2ef1d508 100644 --- a/app/src/ai/agent_sdk/driver/error_classification_tests.rs +++ b/app/src/ai/agent_sdk/driver/error_classification_tests.rs @@ -1,4 +1,4 @@ -use warp_graphql::ai::{AgentTaskState, PlatformErrorCode}; +use galaxy_graphql::ai::{AgentTaskState, PlatformErrorCode}; use super::classify_driver_error; use crate::ai::agent_sdk::driver::terminal::ShareSessionError; diff --git a/app/src/ai/agent_sdk/driver/harness/claude_code.rs b/app/src/ai/agent_sdk/driver/harness/claude_code.rs index b6761eb6..d5ad3974 100644 --- a/app/src/ai/agent_sdk/driver/harness/claude_code.rs +++ b/app/src/ai/agent_sdk/driver/harness/claude_code.rs @@ -10,8 +10,8 @@ use serde::{Deserialize, Serialize}; use serde_json::{Map, Value}; use tempfile::NamedTempFile; use uuid::Uuid; -use warp_cli::agent::Harness; -use warpui::{ModelHandle, ModelSpawner}; +use galaxy_cli::agent::Harness; +use galaxyui::{ModelHandle, ModelSpawner}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::ambient_agents::AmbientAgentTaskId; diff --git a/app/src/ai/agent_sdk/driver/harness/claude_code/parent_bridge.rs b/app/src/ai/agent_sdk/driver/harness/claude_code/parent_bridge.rs index fe05e877..324ca2ef 100644 --- a/app/src/ai/agent_sdk/driver/harness/claude_code/parent_bridge.rs +++ b/app/src/ai/agent_sdk/driver/harness/claude_code/parent_bridge.rs @@ -20,8 +20,8 @@ use serde::{Deserialize, Serialize}; use tempfile::NamedTempFile; use tokio::sync::Mutex as AsyncMutex; use uuid::Uuid; -use warpui::r#async::SpawnedFutureHandle; -use warpui::ModelSpawner; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::ModelSpawner; use crate::ai::agent_events::{ run_agent_event_driver, AgentEventConsumer, AgentEventConsumerControlFlow, diff --git a/app/src/ai/agent_sdk/driver/harness/claude_transcript.rs b/app/src/ai/agent_sdk/driver/harness/claude_transcript.rs index ff118770..a12463b5 100644 --- a/app/src/ai/agent_sdk/driver/harness/claude_transcript.rs +++ b/app/src/ai/agent_sdk/driver/harness/claude_transcript.rs @@ -22,7 +22,7 @@ use anyhow::{Context, Result}; use serde::{Deserialize, Serialize}; use serde_json::Value; use uuid::Uuid; -use warp_core::safe_warn; +use galaxy_core::safe_warn; use crate::ai::agent::conversation::AIConversationId; diff --git a/app/src/ai/agent_sdk/driver/harness/gemini.rs b/app/src/ai/agent_sdk/driver/harness/gemini.rs index c3ecda57..0347f119 100644 --- a/app/src/ai/agent_sdk/driver/harness/gemini.rs +++ b/app/src/ai/agent_sdk/driver/harness/gemini.rs @@ -8,9 +8,9 @@ use parking_lot::Mutex; use serde::{Deserialize, Serialize}; use serde_json::{Map, Value}; use tempfile::NamedTempFile; -use warp_cli::agent::Harness; -use warp_managed_secrets::ManagedSecretValue; -use warpui::{ModelHandle, ModelSpawner}; +use galaxy_cli::agent::Harness; +use galaxy_managed_secrets::ManagedSecretValue; +use galaxyui::{ModelHandle, ModelSpawner}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::ambient_agents::AmbientAgentTaskId; diff --git a/app/src/ai/agent_sdk/driver/harness/mod.rs b/app/src/ai/agent_sdk/driver/harness/mod.rs index 34816a36..16e30cf1 100644 --- a/app/src/ai/agent_sdk/driver/harness/mod.rs +++ b/app/src/ai/agent_sdk/driver/harness/mod.rs @@ -9,9 +9,9 @@ use std::sync::Arc; use anyhow::{Context, Result}; use async_trait::async_trait; use tempfile::NamedTempFile; -use warp_cli::agent::Harness; -use warp_managed_secrets::ManagedSecretValue; -use warpui::{ModelHandle, ModelSpawner, SingletonEntity}; +use galaxy_cli::agent::Harness; +use galaxy_managed_secrets::ManagedSecretValue; +use galaxyui::{ModelHandle, ModelSpawner, SingletonEntity}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::ambient_agents::AmbientAgentTaskId; @@ -21,11 +21,11 @@ use crate::terminal::cli_agent_sessions::{CLIAgentSessionStatus, CLIAgentSession use crate::terminal::model::block::{BlockId, SerializedBlock}; use crate::terminal::CLIAgent; use crate::util::path::resolve_executable; -use warp_cli::{ +use galaxy_cli::{ OZ_CLI_ENV, OZ_HARNESS_ENV, OZ_PARENT_RUN_ID_ENV, OZ_RUN_ID_ENV, SERVER_ROOT_URL_OVERRIDE_ENV, SESSION_SHARING_SERVER_URL_OVERRIDE_ENV, WS_SERVER_URL_OVERRIDE_ENV, }; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use super::terminal::{CommandHandle, TerminalDriver}; use super::{ diff --git a/app/src/ai/agent_sdk/driver/output.rs b/app/src/ai/agent_sdk/driver/output.rs index f7e879a7..6a5c6fcd 100644 --- a/app/src/ai/agent_sdk/driver/output.rs +++ b/app/src/ai/agent_sdk/driver/output.rs @@ -1289,7 +1289,7 @@ pub mod json { use crate::ai::agent::{AIAgentText, AIAgentTextSection}; use crate::code::editor_management::CodeSource; use std::io::{self, BufWriter, Write}; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; /// Constructs the Oz dashboard URL for a given run ID. fn run_url(run_id: &str) -> String { diff --git a/app/src/ai/agent_sdk/driver/snapshot.rs b/app/src/ai/agent_sdk/driver/snapshot.rs index 602621d4..d03d63a5 100644 --- a/app/src/ai/agent_sdk/driver/snapshot.rs +++ b/app/src/ai/agent_sdk/driver/snapshot.rs @@ -34,8 +34,8 @@ use anyhow::Result; use command::r#async::Command; use command::Stdio; use futures::future::join_all; -use warp_core::report_error; -use warpui::r#async::FutureExt as _; +use galaxy_core::report_error; +use galaxyui::r#async::FutureExt as _; use crate::ai::agent_sdk::retry::with_bounded_retry; use crate::ai::ambient_agents::AmbientAgentTaskId; diff --git a/app/src/ai/agent_sdk/driver/terminal.rs b/app/src/ai/agent_sdk/driver/terminal.rs index f2e098aa..63fbb95f 100644 --- a/app/src/ai/agent_sdk/driver/terminal.rs +++ b/app/src/ai/agent_sdk/driver/terminal.rs @@ -12,12 +12,12 @@ use std::{ use futures::channel::oneshot; use session_sharing_protocol::common::{Role, SessionId}; use session_sharing_protocol::sharer::SessionSourceType; -use warp_cli::share::{ShareAccessLevel, ShareRequest, ShareSubject}; -use warp_completer::completer::CommandOutput; -use warp_core::command::ExitCode; -use warp_core::features::FeatureFlag; -use warp_util::path::ShellFamily; -use warpui::{ +use galaxy_cli::share::{ShareAccessLevel, ShareRequest, ShareSubject}; +use galaxy_completer::completer::CommandOutput; +use galaxy_core::command::ExitCode; +use galaxy_core::features::FeatureFlag; +use galaxy_util::path::ShellFamily; +use galaxyui::{ r#async::FutureExt, AppContext, Entity, ModelContext, ModelHandle, SingletonEntity as _, ViewHandle, }; @@ -198,7 +198,7 @@ impl TerminalDriver { // When sharing is disabled (or running against ngrok), leave both halves // as None so that `wait_for_session_shared` returns immediately. let sharing_expected = - should_share && !warp_core::channel::ChannelState::server_root_url().contains("ngrok"); + should_share && !galaxy_core::channel::ChannelState::server_root_url().contains("ngrok"); let (mut session_share_tx, session_share_rx) = if sharing_expected { if !FeatureFlag::CreatingSharedSessions.is_enabled() { // Session sharing was requested but the feature is not enabled for this @@ -272,7 +272,7 @@ impl TerminalDriver { pub fn with_terminal_view( &self, ctx: &mut ModelContext, - f: impl FnOnce(&mut TerminalView, &mut warpui::ViewContext), + f: impl FnOnce(&mut TerminalView, &mut galaxyui::ViewContext), ) { self.terminal_view.update(ctx, f); } diff --git a/app/src/ai/agent_sdk/driver_tests.rs b/app/src/ai/agent_sdk/driver_tests.rs index 2fb7602a..68e5a377 100644 --- a/app/src/ai/agent_sdk/driver_tests.rs +++ b/app/src/ai/agent_sdk/driver_tests.rs @@ -1,12 +1,12 @@ use std::{ffi::OsString, sync::Arc, time::Duration}; use futures::channel::oneshot; -use warp_cli::agent::Harness; -use warp_cli::{ +use galaxy_cli::agent::Harness; +use galaxy_cli::{ OZ_CLI_ENV, OZ_HARNESS_ENV, OZ_PARENT_RUN_ID_ENV, OZ_RUN_ID_ENV, SERVER_ROOT_URL_OVERRIDE_ENV, SESSION_SHARING_SERVER_URL_OVERRIDE_ENV, WS_SERVER_URL_OVERRIDE_ENV, }; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use super::{ IdleTimeoutSender, LEGACY_OZ_PARENT_LISTENER_MANAGED_EXTERNALLY_ENV, diff --git a/app/src/ai/agent_sdk/environment.rs b/app/src/ai/agent_sdk/environment.rs index 0ce500cf..2ff2df61 100644 --- a/app/src/ai/agent_sdk/environment.rs +++ b/app/src/ai/agent_sdk/environment.rs @@ -3,14 +3,14 @@ use std::collections::HashSet; use comfy_table::Cell; use inquire::{error::InquireError, Confirm, Select}; use serde::Serialize; -use warp_cli::{ +use galaxy_cli::{ agent::OutputFormat, environment::{EnvironmentCommand, ImageCommand}, scope::ObjectScope, GlobalOptions, }; -use warpui::r#async::FutureExt; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxyui::r#async::FutureExt; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::ai::agent_sdk::output::{self, TableFormat}; @@ -32,11 +32,11 @@ use crate::util::time_format::format_approx_duration_from_now_utc; use crate::workspaces::user_profiles::UserProfiles; use crate::CloudObjectTypeAndId; use cynic::QueryBuilder; -use warp_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; -use warp_graphql::queries::list_warp_dev_images::{ +use galaxy_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; +use galaxy_graphql::queries::list_warp_dev_images::{ ListWarpDevImages, ListWarpDevImagesResult, ListWarpDevImagesVariables, }; -use warp_graphql::queries::user_repo_auth_status::UserRepoAuthStatusEnum; +use galaxy_graphql::queries::user_repo_auth_status::UserRepoAuthStatusEnum; const WARP_DEV_ENVIRONMENTS_REPO: &str = "https://github.com/warpdotdev/warp-dev-environments"; @@ -174,7 +174,7 @@ impl EnvironmentCommandRunner { ); } output::print_list(image_infos, global_options.output_format); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); } ListWarpDevImagesResult::UserFacingError(_) | ListWarpDevImagesResult::Unknown => { super::report_fatal_error(anyhow::anyhow!("Failed to fetch images"), ctx); @@ -253,7 +253,7 @@ impl EnvironmentCommandRunner { output::print_list(environment_infos, global_options.output_format); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); }); } @@ -276,7 +276,7 @@ impl EnvironmentCommandRunner { Ok(sid) => sid, Err(_) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!("Environment {} not found", id))), ); return; @@ -287,10 +287,10 @@ impl EnvironmentCommandRunner { if let Some(environment) = environment { Self::print_environment_details(&environment.model().string_model); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); } else { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!("Environment {} not found", id))), ); } @@ -330,7 +330,7 @@ impl EnvironmentCommandRunner { match err { InquireError::OperationCanceled | InquireError::OperationInterrupted => { eprintln!("Environment creation canceled."); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); true } _ => false, @@ -426,7 +426,7 @@ impl EnvironmentCommandRunner { docker_image: Option, github_repos: Vec, setup_commands: Vec, - scope: warp_cli::scope::ObjectScope, + scope: galaxy_cli::scope::ObjectScope, ctx: &mut ModelContext, ) { if let Some(image) = docker_image { @@ -464,7 +464,7 @@ impl EnvironmentCommandRunner { docker_image: String, github_repos: Vec, setup_commands: Vec, - scope: warp_cli::scope::ObjectScope, + scope: galaxy_cli::scope::ObjectScope, ctx: &mut ModelContext, ) { let initial_sync = UpdateManager::as_ref(ctx) @@ -521,7 +521,7 @@ impl EnvironmentCommandRunner { if attempt > MAX_AUTH_ATTEMPTS { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "Exceeded maximum number of authorization attempts ({}). Please try again later.", MAX_AUTH_ATTEMPTS @@ -582,7 +582,7 @@ impl EnvironmentCommandRunner { if private_repo_owners.len() > 1 { let owners_str = private_repo_owners.into_iter().collect::>().join(", "); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "All private repositories in an environment must belong to the same owner. Found multiple owners: {}.\nIf you need support for private repos from multiple owners, please submit a GitHub issue.", owners_str @@ -644,7 +644,7 @@ impl EnvironmentCommandRunner { } Ok(OauthConnectTxStatus::Failed) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "GitHub authorization failed. Please try again." ))), @@ -652,7 +652,7 @@ impl EnvironmentCommandRunner { } Ok(OauthConnectTxStatus::Expired) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "GitHub authorization expired. Please try again." ))), @@ -662,7 +662,7 @@ impl EnvironmentCommandRunner { | Ok(OauthConnectTxStatus::InProgress) => { // Should not be returned by poll_oauth_until_terminal. ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "Unexpected non-terminal OAuth status returned" ))), @@ -670,7 +670,7 @@ impl EnvironmentCommandRunner { } Err(err) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "Error polling OAuth status: {err}" ))), @@ -685,14 +685,14 @@ impl EnvironmentCommandRunner { println!("\nAuthorize access here: {auth_url}\n"); println!("After authorizing, please re-run this command."); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, None, ); } (None, Some(_)) => { // Server returned txId without authUrl - unexpected. ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "Server error: did not receive auth URL for OAuth flow" ))), @@ -701,7 +701,7 @@ impl EnvironmentCommandRunner { (None, None) => { // No auth URL or txId provided, but we have auth issues. ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "Cannot {} environment: authorization required but no auth flow provided by server", operation_name @@ -712,7 +712,7 @@ impl EnvironmentCommandRunner { } Err(e) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(e.context("Failed to check GitHub auth status"))), ); } @@ -764,7 +764,7 @@ impl EnvironmentCommandRunner { { let server_id = result.server_id.unwrap(); println!("Environment created successfully with ID: {server_id}"); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); } } }); @@ -807,13 +807,13 @@ impl EnvironmentCommandRunner { Ok(false) | Err(InquireError::OperationCanceled | InquireError::OperationInterrupted) => { println!("Environment {action} canceled."); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, None, ); } Err(err) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!("Error prompting for confirmation: {err}"))), ); } @@ -824,7 +824,7 @@ impl EnvironmentCommandRunner { } Err(_) => { ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(anyhow::anyhow!( "Aborting environment {action} because integration usage could not be determined. Re-run with --force to override." ))), @@ -868,7 +868,7 @@ impl EnvironmentCommandRunner { Err(_) => { let error = anyhow::anyhow!("Environment {} not found", id); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(error)), ); return; @@ -879,7 +879,7 @@ impl EnvironmentCommandRunner { let Some(environment) = environment else { let error = anyhow::anyhow!("Environment {} not found", id); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(error)), ); return; @@ -1011,7 +1011,7 @@ impl EnvironmentCommandRunner { println!("Environment updated successfully!\n"); Self::print_environment_details(&updated_env); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, None, ); } @@ -1047,7 +1047,7 @@ impl EnvironmentCommandRunner { Err(_) => { let error = anyhow::anyhow!("Environment {} not found", id); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(error)), ); return; @@ -1058,7 +1058,7 @@ impl EnvironmentCommandRunner { let Some(environment) = environment else { let error = anyhow::anyhow!("Environment {} not found", id); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, Some(Err(error)), ); return; @@ -1094,7 +1094,7 @@ impl EnvironmentCommandRunner { OperationSuccessType::Success => { println!("Environment deleted successfully"); ctx.terminate_app( - warpui::platform::TerminationMode::ForceTerminate, + galaxyui::platform::TerminationMode::ForceTerminate, None, ); } @@ -1111,7 +1111,7 @@ impl EnvironmentCommandRunner { } } -impl warpui::Entity for EnvironmentCommandRunner { +impl galaxyui::Entity for EnvironmentCommandRunner { type Event = (); } impl SingletonEntity for EnvironmentCommandRunner {} diff --git a/app/src/ai/agent_sdk/federate.rs b/app/src/ai/agent_sdk/federate.rs index b5ee8308..5913c6f3 100644 --- a/app/src/ai/agent_sdk/federate.rs +++ b/app/src/ai/agent_sdk/federate.rs @@ -2,11 +2,11 @@ use std::process; use anyhow::{anyhow, Result}; use serde_json::json; -use warp_cli::federate::{FederateCommand, IssueGcpTokenArgs, IssueTokenArgs}; -use warp_cli::{agent::OutputFormat, GlobalOptions}; -use warp_core::{features::FeatureFlag, report_error}; -use warp_managed_secrets::ManagedSecretManager; -use warpui::{platform::TerminationMode, AppContext, SingletonEntity as _}; +use galaxy_cli::federate::{FederateCommand, IssueGcpTokenArgs, IssueTokenArgs}; +use galaxy_cli::{agent::OutputFormat, GlobalOptions}; +use galaxy_core::{features::FeatureFlag, report_error}; +use galaxy_managed_secrets::ManagedSecretManager; +use galaxyui::{platform::TerminationMode, AppContext, SingletonEntity as _}; use super::common::set_ambient_task_context_from_run_id; @@ -43,7 +43,7 @@ fn issue_token( ManagedSecretManager::handle(ctx).update(ctx, move |manager, ctx| { let future = - manager.issue_task_identity_token(warp_managed_secrets::client::IdentityTokenOptions { + manager.issue_task_identity_token(galaxy_managed_secrets::client::IdentityTokenOptions { audience, requested_duration: duration, subject_template, diff --git a/app/src/ai/agent_sdk/harness_support.rs b/app/src/ai/agent_sdk/harness_support.rs index 7b1e6c53..d748aee2 100644 --- a/app/src/ai/agent_sdk/harness_support.rs +++ b/app/src/ai/agent_sdk/harness_support.rs @@ -4,14 +4,14 @@ //! - [`ping`] — fetches the current run by task ID and prints its info. //! - [`report_artifact`] — reports an artifact (e.g. a PR) back to the Oz platform. use anyhow::Result; -use warp_cli::agent::OutputFormat; -use warp_cli::harness_support::{ +use galaxy_cli::agent::OutputFormat; +use galaxy_cli::harness_support::{ FinishTaskArgs, HarnessSupportArgs, HarnessSupportCommand, NotifyUserArgs, ReportArtifactArgs, ReportArtifactCommand, TaskStatus, }; -use warp_cli::GlobalOptions; -use warp_core::features::FeatureFlag; -use warpui::{platform::TerminationMode, AppContext, ModelHandle, SingletonEntity}; +use galaxy_cli::GlobalOptions; +use galaxy_core::features::FeatureFlag; +use galaxyui::{platform::TerminationMode, AppContext, ModelHandle, SingletonEntity}; use super::common::set_ambient_task_context_from_run_id; use crate::ai::ambient_agents::AmbientAgentTaskId; @@ -206,7 +206,7 @@ fn finish_task( /// Singleton model for running async harness-support operations. struct HarnessSupportRunner; -impl warpui::Entity for HarnessSupportRunner { +impl galaxyui::Entity for HarnessSupportRunner { type Event = (); } diff --git a/app/src/ai/agent_sdk/integration.rs b/app/src/ai/agent_sdk/integration.rs index 4aea316e..91907c9f 100644 --- a/app/src/ai/agent_sdk/integration.rs +++ b/app/src/ai/agent_sdk/integration.rs @@ -1,14 +1,14 @@ use crate::server::server_api::ServerApiProvider; use futures::future; -use warp_cli::{ +use galaxy_cli::{ integration::{CreateIntegrationArgs, IntegrationCommand, UpdateIntegrationArgs}, provider::ProviderType, GlobalOptions, }; -use warp_graphql::mutations::create_simple_integration::CreateSimpleIntegrationOutput; -use warp_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; -use warp_graphql::queries::get_simple_integrations::SimpleIntegrationsOutput; -use warpui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; +use galaxy_graphql::mutations::create_simple_integration::CreateSimpleIntegrationOutput; +use galaxy_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; +use galaxy_graphql::queries::get_simple_integrations::SimpleIntegrationsOutput; +use galaxyui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; use super::common::{EnvironmentChoice, ResolveConfigurationError}; use super::integration_output; @@ -518,7 +518,7 @@ impl IntegrationCommandRunner { } } -impl warpui::Entity for IntegrationCommandRunner { +impl galaxyui::Entity for IntegrationCommandRunner { type Event = (); } impl SingletonEntity for IntegrationCommandRunner {} diff --git a/app/src/ai/agent_sdk/integration_output.rs b/app/src/ai/agent_sdk/integration_output.rs index ddbede99..b31e14fb 100644 --- a/app/src/ai/agent_sdk/integration_output.rs +++ b/app/src/ai/agent_sdk/integration_output.rs @@ -2,11 +2,11 @@ use chrono::{DateTime, Utc}; use comfy_table::{presets::UTF8_FULL, Cell, Table}; use serde::Serialize; use serde_json::{Map, Value}; -use warp_cli::agent::OutputFormat; +use galaxy_cli::agent::OutputFormat; use crate::ai::agent_sdk::output::{self, TableFormat}; use crate::util::time_format::format_approx_duration_from_now_utc; -use warp_graphql::queries::get_simple_integrations::{ +use galaxy_graphql::queries::get_simple_integrations::{ ListedSimpleIntegrationConfig, SimpleIntegration, SimpleIntegrationConnectionStatus, SimpleIntegrationsOutput, }; diff --git a/app/src/ai/agent_sdk/mcp.rs b/app/src/ai/agent_sdk/mcp.rs index 92937e5d..32ff04dc 100644 --- a/app/src/ai/agent_sdk/mcp.rs +++ b/app/src/ai/agent_sdk/mcp.rs @@ -1,7 +1,7 @@ use comfy_table::Cell; use serde::Serialize; -use warp_cli::{mcp::MCPCommand, GlobalOptions}; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxy_cli::{mcp::MCPCommand, GlobalOptions}; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::ai::agent_sdk::output::{self, TableFormat}; use crate::ai::mcp::TemplatableMCPServerManager; @@ -40,12 +40,12 @@ impl MCPCommandRunner { global_options.output_format, ); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); }); } } -impl warpui::Entity for MCPCommandRunner { +impl galaxyui::Entity for MCPCommandRunner { type Event = (); } impl SingletonEntity for MCPCommandRunner {} diff --git a/app/src/ai/agent_sdk/mcp_config.rs b/app/src/ai/agent_sdk/mcp_config.rs index 46f65752..e0aae368 100644 --- a/app/src/ai/agent_sdk/mcp_config.rs +++ b/app/src/ai/agent_sdk/mcp_config.rs @@ -1,6 +1,6 @@ use anyhow::Context as _; use serde_json::{Map, Value}; -use warp_cli::mcp::MCPSpec; +use galaxy_cli::mcp::MCPSpec; use crate::ai::mcp::TemplatableMCPServer; diff --git a/app/src/ai/agent_sdk/mcp_config_tests.rs b/app/src/ai/agent_sdk/mcp_config_tests.rs index 1ed26732..e5aaea48 100644 --- a/app/src/ai/agent_sdk/mcp_config_tests.rs +++ b/app/src/ai/agent_sdk/mcp_config_tests.rs @@ -1,5 +1,5 @@ use serde_json::{json, Map, Value}; -use warp_cli::mcp::MCPSpec; +use galaxy_cli::mcp::MCPSpec; use super::build_mcp_servers_from_specs; diff --git a/app/src/ai/agent_sdk/mod.rs b/app/src/ai/agent_sdk/mod.rs index 391e3c2d..49dc7675 100644 --- a/app/src/ai/agent_sdk/mod.rs +++ b/app/src/ai/agent_sdk/mod.rs @@ -24,7 +24,7 @@ use crate::server::server_api::ai::AIClient; use crate::workflows::workflow::Workflow; use ai::api_keys::{ApiKeyManager, AwsCredentialsRefreshStrategy}; use anyhow::Context; -use warp_cli::{ +use galaxy_cli::{ agent::{AgentCommand, AgentProfileCommand, OutputFormat}, artifact::ArtifactCommand, environment::{EnvironmentCommand, ImageCommand}, @@ -40,13 +40,13 @@ use warp_cli::{ task::{MessageCommand, TaskCommand}, CliCommand, GlobalOptions, }; -use warp_core::features::FeatureFlag; -use warp_isolation_platform::IsolationPlatformError; +use galaxy_core::features::FeatureFlag; +use galaxy_isolation_platform::IsolationPlatformError; #[cfg(not(target_family = "wasm"))] -use warp_logging::log_file_path; -use warp_managed_secrets::ManagedSecretManager; -use warpui::ModelSpawner; -use warpui::{platform::TerminationMode, AppContext, SingletonEntity}; +use galaxy_logging::log_file_path; +use galaxy_managed_secrets::ManagedSecretManager; +use galaxyui::ModelSpawner; +use galaxyui::{platform::TerminationMode, AppContext, SingletonEntity}; use crate::{ ai::ambient_agents::{task::HarnessConfig, AmbientAgentTaskId}, @@ -60,7 +60,7 @@ use crate::{ terminal::view::ConversationRestorationInNewPaneType, }; use driver::AgentDriverError; -use warp_graphql::object_permissions::OwnerType; +use galaxy_graphql::object_permissions::OwnerType; use crate::ai::attachment_utils::attachments_download_dir; use crate::ai::skills::{ @@ -72,8 +72,8 @@ pub(crate) use driver::harness::{ }; pub use driver::AgentDriver; use telemetry::CliTelemetryEvent; -use warp_cli::agent::{Harness, Prompt, RunAgentArgs}; -use warp_cli::OZ_HARNESS_ENV; +use galaxy_cli::agent::{Harness, Prompt, RunAgentArgs}; +use galaxy_cli::OZ_HARNESS_ENV; mod admin; mod agent_config; @@ -510,7 +510,7 @@ fn run_task( )); } match conv_cmd { - warp_cli::task::ConversationCommand::Get(args) => { + galaxy_cli::task::ConversationCommand::Get(args) => { ambient::get_conversation(ctx, args.conversation_id) } } @@ -531,11 +531,11 @@ fn run_task( /// requires spawning an async task, which requires a ModelContext. struct AgentDriverRunner; -impl warpui::Entity for AgentDriverRunner { +impl galaxyui::Entity for AgentDriverRunner { type Event = (); } -impl warpui::SingletonEntity for AgentDriverRunner {} +impl galaxyui::SingletonEntity for AgentDriverRunner {} impl AgentDriverRunner { async fn setup_and_run_driver( @@ -1301,7 +1301,7 @@ fn launch_command( return dispatch_command(ctx, command, global_options); } - let cli_name = warp_cli::binary_name().unwrap_or_else(|| "warp".to_string()); + let cli_name = galaxy_cli::binary_name().unwrap_or_else(|| "warp".to_string()); let auth_state = AuthStateProvider::handle(ctx).as_ref(ctx).get(); if !auth_state.is_logged_in() { diff --git a/app/src/ai/agent_sdk/mod_tests.rs b/app/src/ai/agent_sdk/mod_tests.rs index 4091d934..d083f3ad 100644 --- a/app/src/ai/agent_sdk/mod_tests.rs +++ b/app/src/ai/agent_sdk/mod_tests.rs @@ -1,10 +1,10 @@ use serde_json::json; -use warp_cli::{ +use galaxy_cli::{ artifact::{ArtifactCommand, DownloadArtifactArgs, GetArtifactArgs, UploadArtifactArgs}, task::{MessageCommand, MessageSendArgs, MessageWatchArgs, TaskCommand}, CliCommand, }; -use warp_core::telemetry::TelemetryEvent; +use galaxy_core::telemetry::TelemetryEvent; use super::{command_requires_auth, command_to_telemetry_event}; diff --git a/app/src/ai/agent_sdk/model.rs b/app/src/ai/agent_sdk/model.rs index 074baf2d..2744ef97 100644 --- a/app/src/ai/agent_sdk/model.rs +++ b/app/src/ai/agent_sdk/model.rs @@ -4,8 +4,8 @@ use crate::ai::agent_sdk::output::{self, TableFormat}; use crate::ai::llms::LLMPreferences; use comfy_table::Cell; use serde::Serialize; -use warp_cli::{model::ModelCommand, GlobalOptions}; -use warpui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; +use galaxy_cli::{model::ModelCommand, GlobalOptions}; +use galaxyui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; /// Handle model-related CLI commands. pub fn run( @@ -59,7 +59,7 @@ impl ModelCommandRunner { } } -impl warpui::Entity for ModelCommandRunner { +impl galaxyui::Entity for ModelCommandRunner { type Event = (); } diff --git a/app/src/ai/agent_sdk/oauth_flow.rs b/app/src/ai/agent_sdk/oauth_flow.rs index 9f5f510d..dc6b3422 100644 --- a/app/src/ai/agent_sdk/oauth_flow.rs +++ b/app/src/ai/agent_sdk/oauth_flow.rs @@ -2,10 +2,10 @@ use std::sync::Arc; use std::time::Duration; use anyhow::{anyhow, Result}; -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; use crate::server::server_api::integrations::IntegrationsClient; -use warp_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; +use galaxy_graphql::queries::get_oauth_connect_tx_status::OauthConnectTxStatus; /// Shared helpers for OAuth-based connect flows (txId + polling). /// diff --git a/app/src/ai/agent_sdk/output.rs b/app/src/ai/agent_sdk/output.rs index a0349951..7469081f 100644 --- a/app/src/ai/agent_sdk/output.rs +++ b/app/src/ai/agent_sdk/output.rs @@ -11,8 +11,8 @@ use jaq_all::fmts::Format; use jaq_json::{write as jaq_write, Val}; use serde::Serialize; use tabwriter::TabWriter; -use warp_cli::agent::OutputFormat; -use warp_cli::json_filter::{JqFilter, JsonOutput}; +use galaxy_cli::agent::OutputFormat; +use galaxy_cli::json_filter::{JqFilter, JsonOutput}; pub fn standard_table() -> Table { let mut table = Table::new(); diff --git a/app/src/ai/agent_sdk/output_tests.rs b/app/src/ai/agent_sdk/output_tests.rs index 7467a779..47edc251 100644 --- a/app/src/ai/agent_sdk/output_tests.rs +++ b/app/src/ai/agent_sdk/output_tests.rs @@ -4,8 +4,8 @@ use super::{ use comfy_table::Cell; use serde::Serialize; use serde_json::json; -use warp_cli::agent::OutputFormat; -use warp_cli::json_filter::parse_jq_filter; +use galaxy_cli::agent::OutputFormat; +use galaxy_cli::json_filter::parse_jq_filter; #[derive(Serialize)] struct TestItem { diff --git a/app/src/ai/agent_sdk/profiles.rs b/app/src/ai/agent_sdk/profiles.rs index 645f69f7..a04a87dc 100644 --- a/app/src/ai/agent_sdk/profiles.rs +++ b/app/src/ai/agent_sdk/profiles.rs @@ -1,7 +1,7 @@ use comfy_table::Cell; use serde::Serialize; -use warp_cli::{agent::AgentProfileCommand, GlobalOptions}; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxy_cli::{agent::AgentProfileCommand, GlobalOptions}; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::ai::agent_sdk::output::{self, TableFormat}; use crate::ai::execution_profiles::profiles::AIExecutionProfilesModel; @@ -52,12 +52,12 @@ impl ProfilesCommandRunner { output::print_list(profiles, global_options.output_format); - ctx.terminate_app(warpui::platform::TerminationMode::ForceTerminate, None); + ctx.terminate_app(galaxyui::platform::TerminationMode::ForceTerminate, None); }); } } -impl warpui::Entity for ProfilesCommandRunner { +impl galaxyui::Entity for ProfilesCommandRunner { type Event = (); } impl SingletonEntity for ProfilesCommandRunner {} diff --git a/app/src/ai/agent_sdk/provider.rs b/app/src/ai/agent_sdk/provider.rs index 42028b2c..ea3eb94b 100644 --- a/app/src/ai/agent_sdk/provider.rs +++ b/app/src/ai/agent_sdk/provider.rs @@ -2,12 +2,12 @@ use crate::workspaces::user_workspaces::UserWorkspaces; use comfy_table::Cell; use serde::Serialize; -use warp_cli::{ +use galaxy_cli::{ provider::{ProviderCommand, ProviderType}, GlobalOptions, }; -use warp_core::channel::ChannelState; -use warpui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxyui::{platform::TerminationMode, AppContext, ModelContext, SingletonEntity}; use crate::ai::agent_sdk::output::{self, TableFormat}; @@ -123,7 +123,7 @@ impl ProviderCommandRunner { } } -impl warpui::Entity for ProviderCommandRunner { +impl galaxyui::Entity for ProviderCommandRunner { type Event = (); } impl SingletonEntity for ProviderCommandRunner {} diff --git a/app/src/ai/agent_sdk/retry.rs b/app/src/ai/agent_sdk/retry.rs index 9733c1df..2dd6ce2f 100644 --- a/app/src/ai/agent_sdk/retry.rs +++ b/app/src/ai/agent_sdk/retry.rs @@ -9,8 +9,8 @@ use std::future::Future; use std::time::Duration; use anyhow::{anyhow, Result}; -use warpui::duration_with_jitter; -use warpui::r#async::Timer; +use galaxyui::duration_with_jitter; +use galaxyui::r#async::Timer; pub(crate) use crate::server::retry_strategies::is_transient_http_error; diff --git a/app/src/ai/agent_sdk/schedule.rs b/app/src/ai/agent_sdk/schedule.rs index e74c8424..cb57f71b 100644 --- a/app/src/ai/agent_sdk/schedule.rs +++ b/app/src/ai/agent_sdk/schedule.rs @@ -2,14 +2,14 @@ use chrono::{DateTime, Utc}; use comfy_table::Cell; use futures::future; use serde::Serialize; -use warp_cli::schedule::{ +use galaxy_cli::schedule::{ CreateScheduleArgs, DeleteScheduleArgs, GetScheduleArgs, PauseScheduleArgs, ScheduleCommand, ScheduleSubcommand, UnpauseScheduleArgs, UpdateScheduleArgs, }; -use warp_cli::{agent::OutputFormat, GlobalOptions}; -use warp_graphql::queries::get_scheduled_agent_history::ScheduledAgentHistory; -use warpui::platform::TerminationMode; -use warpui::{AppContext, SingletonEntity}; +use galaxy_cli::{agent::OutputFormat, GlobalOptions}; +use galaxy_graphql::queries::get_scheduled_agent_history::ScheduledAgentHistory; +use galaxyui::platform::TerminationMode; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::ambient_agents::scheduled::{ CloudScheduledAmbientAgent, ScheduledAgentManager, ScheduledAmbientAgent, UpdateScheduleParams, diff --git a/app/src/ai/agent_sdk/secret.rs b/app/src/ai/agent_sdk/secret.rs index 9587315a..35a141fb 100644 --- a/app/src/ai/agent_sdk/secret.rs +++ b/app/src/ai/agent_sdk/secret.rs @@ -8,7 +8,7 @@ use chrono::{DateTime, Utc}; use comfy_table::Cell; use inquire::{Confirm, InquireError, Password}; use serde::Serialize; -use warp_cli::{ +use galaxy_cli::{ agent::OutputFormat, scope::ObjectScope, secret::{ @@ -17,13 +17,13 @@ use warp_cli::{ }, GlobalOptions, }; -use warp_core::features::FeatureFlag; -use warp_graphql::{ +use galaxy_core::features::FeatureFlag; +use galaxy_graphql::{ managed_secrets::{ManagedSecret, ManagedSecretType}, object::SpaceType, }; -use warp_managed_secrets::{client::SecretOwner, ManagedSecretManager, ManagedSecretValue}; -use warpui::{platform::TerminationMode, AppContext, SingletonEntity as _}; +use galaxy_managed_secrets::{client::SecretOwner, ManagedSecretManager, ManagedSecretValue}; +use galaxyui::{platform::TerminationMode, AppContext, SingletonEntity as _}; use crate::{ auth::UserUid, cloud_object::Owner, server::ids::ServerId, diff --git a/app/src/ai/agent_sdk/telemetry.rs b/app/src/ai/agent_sdk/telemetry.rs index 7880e991..4909e41a 100644 --- a/app/src/ai/agent_sdk/telemetry.rs +++ b/app/src/ai/agent_sdk/telemetry.rs @@ -1,7 +1,7 @@ use crate::features::FeatureFlag; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; #[derive(Debug, EnumDiscriminants)] #[strum_discriminants(derive(EnumIter))] @@ -204,7 +204,7 @@ impl TelemetryEvent for CliTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -421,4 +421,4 @@ impl TelemetryEventDesc for CliTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(CliTelemetryEvent); +galaxy_core::register_telemetry_event!(CliTelemetryEvent); diff --git a/app/src/ai/agent_tips.rs b/app/src/ai/agent_tips.rs index d451daab..41db9884 100644 --- a/app/src/ai/agent_tips.rs +++ b/app/src/ai/agent_tips.rs @@ -18,9 +18,9 @@ use markdown_parser::FormattedTextFragment; use std::path::Path; use std::sync::LazyLock; use std::time::Duration; -use warpui::keymap::Keystroke; -use warpui::r#async::SpawnedFutureHandle; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::keymap::Keystroke; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; /// Trait for tip implementations that can be displayed to users. /// Tips provide helpful information with optional links and keybindings. @@ -526,7 +526,7 @@ impl AITipModel { // Start 60-second cooldown let handle = ctx.spawn( async { - warpui::r#async::Timer::after(Duration::from_secs(60)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(60)).await; }, |me, _, _| { me.cooldown_handle = None; @@ -558,7 +558,7 @@ impl AITipModel { // Start 60-second cooldown let handle = ctx.spawn( async { - warpui::r#async::Timer::after(Duration::from_secs(60)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(60)).await; }, |me, _, _| { me.cooldown_handle = None; @@ -579,7 +579,7 @@ impl AITipModel { // Start a new 60-second cooldown let handle = ctx.spawn( async { - warpui::r#async::Timer::after(Duration::from_secs(60)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(60)).await; }, |me, _, _| { me.cooldown_handle = None; diff --git a/app/src/ai/ai_document_view.rs b/app/src/ai/ai_document_view.rs index 136a8454..e9fb3fa7 100644 --- a/app/src/ai/ai_document_view.rs +++ b/app/src/ai/ai_document_view.rs @@ -48,20 +48,20 @@ use crate::{ view_components::action_button::{ActionButton, PrimaryTheme}, }; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::icons; -use warp_core::ui::icons::ICON_DIMENSIONS; -use warp_core::ui::theme::Fill as ThemeFill; -use warpui::clipboard::ClipboardContent; -use warpui::elements::CrossAxisAlignment; -use warpui::elements::MainAxisAlignment; -use warpui::elements::MainAxisSize; -use warpui::elements::{ChildAnchor, PositionedElementAnchor, PositionedElementOffsetBounds}; -use warpui::keymap::EditableBinding; -use warpui::keymap::FixedBinding; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::button::ButtonTooltipPosition; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxy_core::ui::icons; +use galaxy_core::ui::icons::ICON_DIMENSIONS; +use galaxy_core::ui::theme::Fill as ThemeFill; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::CrossAxisAlignment; +use galaxyui::elements::MainAxisAlignment; +use galaxyui::elements::MainAxisSize; +use galaxyui::elements::{ChildAnchor, PositionedElementAnchor, PositionedElementOffsetBounds}; +use galaxyui::keymap::EditableBinding; +use galaxyui::keymap::FixedBinding; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::button::ButtonTooltipPosition; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ elements::{ ChildView, ConstrainedBox, Container, Flex, Hoverable, MouseStateHandle, OffsetPositioning, ParentElement, SavePosition, Stack, @@ -69,7 +69,7 @@ use warpui::{ AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; -use warpui::{id, EntityId}; +use galaxyui::{id, EntityId}; pub fn init(app: &mut AppContext) { app.register_editable_bindings([EditableBinding::new( @@ -97,7 +97,7 @@ use crate::util::file::external_editor::settings::EditorLayout; #[cfg(feature = "local_fs")] use crate::util::openable_file_type::FileTarget; #[cfg(feature = "local_fs")] -use warp_util::path::LineAndColumnArg; +use galaxy_util::path::LineAndColumnArg; // Import keybinding constants from code view to ensure consistency use crate::code::view::{SAVE_FILE_BINDING_DESCRIPTION, SAVE_FILE_BINDING_NAME}; @@ -641,7 +641,7 @@ impl AIDocumentView { Container::new( ConstrainedBox::new( Icon::RefreshCw04 - .to_warpui_icon(ThemeFill::Solid(color)) + .to_galaxyui_icon(ThemeFill::Solid(color)) .finish(), ) .with_width(16.) @@ -672,7 +672,7 @@ impl AIDocumentView { Hoverable::new(synced_status_mouse_state, move |state| { let icon = { let icon_elem = Icon::RefreshCw04 - .to_warpui_icon(ThemeFill::Solid(color)) + .to_galaxyui_icon(ThemeFill::Solid(color)) .finish(); ConstrainedBox::new(icon_elem) .with_width(16.) @@ -688,8 +688,8 @@ impl AIDocumentView { tooltip, OffsetPositioning::offset_from_parent( vec2f(0., 4.), - warpui::elements::ParentOffsetBounds::WindowByPosition, - warpui::elements::ParentAnchor::BottomRight, + galaxyui::elements::ParentOffsetBounds::WindowByPosition, + galaxyui::elements::ParentAnchor::BottomRight, ChildAnchor::TopRight, ), ); @@ -938,7 +938,7 @@ impl AIDocumentView { } /// Bind the underlying editor model to the given window, enabling render/event processing. - pub fn bind_window(&self, window_id: warpui::WindowId, ctx: &mut ViewContext) { + pub fn bind_window(&self, window_id: galaxyui::WindowId, ctx: &mut ViewContext) { self.editor.update(ctx, |editor_view, ctx| { editor_view .model() @@ -959,7 +959,7 @@ impl AIDocumentView { #[cfg(feature = "local_fs")] fn export(&self, ctx: &mut ViewContext) { use crate::drive::export::safe_filename; - use warpui::platform::SaveFilePickerConfiguration; + use galaxyui::platform::SaveFilePickerConfiguration; let markdown = self.editor.as_ref(ctx).markdown_unescaped(ctx); // Get the document title from the model @@ -1015,7 +1015,7 @@ impl View for AIDocumentView { "AIDocumentView" } - fn render(&self, _app: &AppContext) -> Box { + fn render(&self, _app: &AppContext) -> Box { let editor = Container::new(ChildView::new(&self.editor).finish()) .with_padding_left(8.) .with_padding_right(8.) diff --git a/app/src/ai/ambient_agents/github_auth_notifier.rs b/app/src/ai/ambient_agents/github_auth_notifier.rs index 8fd972ab..82bad0b4 100644 --- a/app/src/ai/ambient_agents/github_auth_notifier.rs +++ b/app/src/ai/ambient_agents/github_auth_notifier.rs @@ -4,7 +4,7 @@ //! any component in the app (e.g., `UpdateEnvironmentForm`) to react to //! auth state changes without relying on window activation timing. -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// Events emitted by the GitHub auth notifier. #[derive(Debug, Clone)] diff --git a/app/src/ai/ambient_agents/scheduled.rs b/app/src/ai/ambient_agents/scheduled.rs index 133833da..9f9561ab 100644 --- a/app/src/ai/ambient_agents/scheduled.rs +++ b/app/src/ai/ambient_agents/scheduled.rs @@ -27,8 +27,8 @@ use crate::{ }; use futures::channel::oneshot; use futures::FutureExt; -use warp_graphql::queries::get_scheduled_agent_history::ScheduledAgentHistory; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_graphql::queries::get_scheduled_agent_history::ScheduledAgentHistory; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; #[derive(Clone, Debug, Serialize, Deserialize, PartialEq)] /// A ScheduledAmbientAgent represents configuration for ambient agents that run on a cron schedule. @@ -213,7 +213,7 @@ impl ScheduledAgentManager { &self, schedule_id: SyncId, app: &AppContext, - ) -> impl warpui::r#async::Spawnable>> + ) -> impl galaxyui::r#async::Spawnable>> { let ai_client = ServerApiProvider::as_ref(app).get_ai_client(); diff --git a/app/src/ai/ambient_agents/spawn.rs b/app/src/ai/ambient_agents/spawn.rs index 8a6dc06e..2b7727c2 100644 --- a/app/src/ai/ambient_agents/spawn.rs +++ b/app/src/ai/ambient_agents/spawn.rs @@ -117,12 +117,12 @@ pub fn spawn_task( // We use a timeout to ensure we don't wait indefinitely for session info. // If no timeout is provided, we use a future that never completes. let mut timeout_timer = match timeout { - Some(d) => warpui::r#async::Timer::after(d), - None => warpui::r#async::Timer::never(), + Some(d) => galaxyui::r#async::Timer::after(d), + None => galaxyui::r#async::Timer::never(), }.fuse(); let mut last_state = None; loop { - let mut poll_timer = warpui::r#async::Timer::after(TASK_STATUS_POLL_INTERVAL).fuse(); + let mut poll_timer = galaxyui::r#async::Timer::after(TASK_STATUS_POLL_INTERVAL).fuse(); select! { _ = timeout_timer => { diff --git a/app/src/ai/ambient_agents/task.rs b/app/src/ai/ambient_agents/task.rs index 375b1d48..7653cb1d 100644 --- a/app/src/ai/ambient_agents/task.rs +++ b/app/src/ai/ambient_agents/task.rs @@ -3,17 +3,17 @@ use anyhow::anyhow; use chrono::{DateTime, Utc}; use serde::{Deserialize, Deserializer, Serialize, Serializer}; -use warp_cli::agent::Harness; -use warp_core::report_error; -use warp_core::ui::theme::WarpTheme; -use warpui::color::ColorU; +use galaxy_cli::agent::Harness; +use galaxy_core::report_error; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::color::ColorU; use crate::ai::artifacts::{deserialize_artifacts, Artifact}; use crate::server::server_api::ServerApiProvider; use crate::ui_components::icons::Icon; use crate::view_components::DismissibleToast; use crate::workspace::ToastStack; -use warpui::{SingletonEntity, View, ViewContext}; +use galaxyui::{SingletonEntity, View, ViewContext}; use super::AmbientAgentTaskId; diff --git a/app/src/ai/ambient_agents/telemetry.rs b/app/src/ai/ambient_agents/telemetry.rs index 176c9fb9..5b5b33a8 100644 --- a/app/src/ai/ambient_agents/telemetry.rs +++ b/app/src/ai/ambient_agents/telemetry.rs @@ -2,8 +2,8 @@ use crate::server::ids::ServerId; use serde::Serialize; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::features::FeatureFlag; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; /// The entry point through which Cloud Mode was entered. #[derive(Clone, Copy, Debug, Serialize)] @@ -124,7 +124,7 @@ impl TelemetryEvent for CloudAgentTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -178,4 +178,4 @@ impl TelemetryEventDesc for CloudAgentTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(CloudAgentTelemetryEvent); +galaxy_core::register_telemetry_event!(CloudAgentTelemetryEvent); diff --git a/app/src/ai/artifacts/buttons.rs b/app/src/ai/artifacts/buttons.rs index 66d59e1b..88e2ab9b 100644 --- a/app/src/ai/artifacts/buttons.rs +++ b/app/src/ai/artifacts/buttons.rs @@ -1,9 +1,9 @@ use std::sync::Arc; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::elements::{ChildView, Element, Empty, ParentElement, Wrap}; -use warpui::{AppContext, Entity, TypedActionView, View, ViewContext, ViewHandle}; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::elements::{ChildView, Element, Empty, ParentElement, Wrap}; +use galaxyui::{AppContext, Entity, TypedActionView, View, ViewContext, ViewHandle}; use crate::notebooks::NotebookId; use crate::terminal::input::MenuPositioning; diff --git a/app/src/ai/artifacts/mod.rs b/app/src/ai/artifacts/mod.rs index d6e28cc4..45bb6a0d 100644 --- a/app/src/ai/artifacts/mod.rs +++ b/app/src/ai/artifacts/mod.rs @@ -4,11 +4,11 @@ use std::path::PathBuf; use anyhow::anyhow; use ui_components::lightbox::{LightboxImage, LightboxImageSource}; -use warp_core::report_error; +use galaxy_core::report_error; use warp_multi_agent_api as api; #[cfg(feature = "local_fs")] -use warpui::platform::SaveFilePickerConfiguration; -use warpui::SingletonEntity; +use galaxyui::platform::SaveFilePickerConfiguration; +use galaxyui::SingletonEntity; #[cfg(feature = "local_fs")] use crate::ai::artifact_download::default_download_filename; @@ -208,19 +208,19 @@ impl From for Artifact { } } -impl TryFrom for Artifact { +impl TryFrom for Artifact { type Error = (); - fn try_from(value: warp_graphql::ai::AIConversationArtifact) -> Result { + fn try_from(value: galaxy_graphql::ai::AIConversationArtifact) -> Result { match value { - warp_graphql::ai::AIConversationArtifact::PlanArtifact(plan) => Ok(Artifact::Plan { + galaxy_graphql::ai::AIConversationArtifact::PlanArtifact(plan) => Ok(Artifact::Plan { document_uid: plan.document_uid.into_inner(), notebook_uid: plan .notebook_uid .map(|id| NotebookId::from(id.into_inner())), title: plan.title, }), - warp_graphql::ai::AIConversationArtifact::PullRequestArtifact(pr) => { + galaxy_graphql::ai::AIConversationArtifact::PullRequestArtifact(pr) => { let (repo, number) = parse_github_pr_url(&pr.url).unzip(); Ok(Artifact::PullRequest { url: pr.url, @@ -229,14 +229,14 @@ impl TryFrom for Artifact { number, }) } - warp_graphql::ai::AIConversationArtifact::ScreenshotArtifact(screenshot) => { + galaxy_graphql::ai::AIConversationArtifact::ScreenshotArtifact(screenshot) => { Ok(Artifact::Screenshot { artifact_uid: screenshot.artifact_uid.into_inner(), mime_type: screenshot.mime_type, description: screenshot.description, }) } - warp_graphql::ai::AIConversationArtifact::FileArtifact(file) => Ok(Artifact::File { + galaxy_graphql::ai::AIConversationArtifact::FileArtifact(file) => Ok(Artifact::File { artifact_uid: file.artifact_uid.into_inner(), filepath: file.filepath.clone(), filename: sanitized_basename(&file.filepath).unwrap_or(file.filepath), @@ -244,7 +244,7 @@ impl TryFrom for Artifact { description: file.description, size_bytes: file.size_bytes, }), - warp_graphql::ai::AIConversationArtifact::Unknown => Err(()), + galaxy_graphql::ai::AIConversationArtifact::Unknown => Err(()), } } } @@ -296,9 +296,9 @@ pub fn file_button_label(filename: &str, filepath: &str) -> String { "File".to_string() } -pub fn open_screenshot_lightbox( +pub fn open_screenshot_lightbox( artifact_uids: &[String], - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { // Open lightbox immediately with Loading placeholders. let loading_images: Vec = artifact_uids @@ -367,9 +367,9 @@ fn screenshot_lightbox_image_from_download_result( } } -pub fn download_file_artifact( +pub fn download_file_artifact( artifact_uid: &str, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { let ai_client = ServerApiProvider::handle(ctx).as_ref(ctx).get_ai_client(); let artifact_uid = artifact_uid.to_string(); @@ -395,10 +395,10 @@ pub fn download_file_artifact( ); } -fn open_file_download_result( +fn open_file_download_result( artifact_uid: &str, artifact: ArtifactDownloadResponse, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { match artifact { ArtifactDownloadResponse::File { .. } => { @@ -419,9 +419,9 @@ fn open_file_download_result( } #[cfg(feature = "local_fs")] -fn open_file_download_picker( +fn open_file_download_picker( artifact: ArtifactDownloadResponse, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { let mut config = SaveFilePickerConfiguration::new() .with_default_filename(default_download_filename(&artifact)); @@ -430,7 +430,7 @@ fn open_file_download_picker( } ctx.open_save_file_picker( - move |path_opt: Option, _me: &mut V, ctx: &mut warpui::ViewContext| { + move |path_opt: Option, _me: &mut V, ctx: &mut galaxyui::ViewContext| { let Some(path) = path_opt else { return; }; @@ -468,10 +468,10 @@ fn open_file_download_picker( ); } -fn show_file_download_toast( +fn show_file_download_toast( artifact_uid: &str, toast: DismissibleToast, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { let toast_id = format!("artifact_download:{artifact_uid}"); let window_id = ctx.window_id(); diff --git a/app/src/ai/artifacts/mod_tests.rs b/app/src/ai/artifacts/mod_tests.rs index e9f78282..c833e9b5 100644 --- a/app/src/ai/artifacts/mod_tests.rs +++ b/app/src/ai/artifacts/mod_tests.rs @@ -153,8 +153,8 @@ fn default_download_filename_falls_back_to_artifact_uid_with_extension() { #[test] fn converts_graphql_file_artifact() { - let artifact = Artifact::try_from(warp_graphql::ai::AIConversationArtifact::FileArtifact( - warp_graphql::ai::FileArtifact { + let artifact = Artifact::try_from(galaxy_graphql::ai::AIConversationArtifact::FileArtifact( + galaxy_graphql::ai::FileArtifact { artifact_uid: "artifact-file-1".into(), filepath: "outputs/report.txt".to_string(), mime_type: "text/plain".to_string(), diff --git a/app/src/ai/aws_credentials.rs b/app/src/ai/aws_credentials.rs index a7b56fb4..4d3a51c3 100644 --- a/app/src/ai/aws_credentials.rs +++ b/app/src/ai/aws_credentials.rs @@ -13,8 +13,8 @@ use futures::channel::oneshot::channel; use futures::future::BoxFuture; use tokio::sync::OnceCell; use vec1::vec1; -use warp_managed_secrets::{client::IdentityTokenOptions, ManagedSecretManager}; -use warpui::{ModelContext, ModelHandle, SingletonEntity}; +use galaxy_managed_secrets::{client::IdentityTokenOptions, ManagedSecretManager}; +use galaxyui::{ModelContext, ModelHandle, SingletonEntity}; /// Errors that can occur when loading AWS credentials. #[derive(Debug, Clone)] diff --git a/app/src/ai/bedrock/client.rs b/app/src/ai/bedrock/client.rs index fa1c2947..d8a97f67 100644 --- a/app/src/ai/bedrock/client.rs +++ b/app/src/ai/bedrock/client.rs @@ -1,3 +1,5 @@ +use std::sync::Arc; + use anyhow::Result; use aws_config::BehaviorVersion; use aws_sdk_bedrockruntime::config::Region; @@ -6,6 +8,7 @@ use aws_sdk_bedrockruntime::Client as BedrockRuntimeClient; use crate::settings::ai::BedrockAuthMethod; use super::convert::{build_converse_request, ConversationMessage, ToolDefinition}; +use super::diagnostic::BedrockDiagnosticLogger; use super::models::apply_cross_region_prefix; use super::stream::bedrock_stream_to_response_events; use crate::ai::agent::api::ResponseStream; @@ -102,12 +105,14 @@ impl BedrockClient { &self, model_id: &str, task_id: &str, + needs_create_task: bool, messages: Vec, system_prompt: Option, tools: Vec, max_tokens: i32, temperature: Option, cross_region_inference: bool, + diagnostic_logger: Option>, ) -> Result { let effective_model_id = if cross_region_inference { apply_cross_region_prefix(model_id, &self.region) @@ -122,8 +127,26 @@ impl BedrockClient { tools.len() ); - let converted = - build_converse_request(messages, system_prompt, tools, max_tokens, temperature, None, None); + let converted = build_converse_request( + messages.clone(), + system_prompt.clone(), + tools.clone(), + max_tokens, + temperature, + None, + None, + ); + + if let Some(ref logger) = diagnostic_logger { + logger.log_bedrock_input( + &messages, + &system_prompt, + &tools, + max_tokens, + temperature, + cross_region_inference, + ); + } let mut request = self .runtime_client @@ -147,6 +170,9 @@ impl BedrockClient { } else { display_msg }; + if let Some(ref logger) = diagnostic_logger { + logger.log_result_fail(&msg); + } if msg.contains("AccessDenied") || msg.contains("access denied") { BedrockError::AccessDenied(msg) } else if msg.contains("ThrottlingException") || msg.contains("throttl") { @@ -161,7 +187,12 @@ impl BedrockClient { })?; log::info!("[bedrock] Stream connected successfully"); - Ok(Box::pin(bedrock_stream_to_response_events(output, task_id.to_string()))) + Ok(Box::pin(bedrock_stream_to_response_events( + output, + task_id.to_string(), + needs_create_task, + diagnostic_logger, + ))) } pub fn runtime_client(&self) -> &BedrockRuntimeClient { diff --git a/app/src/ai/bedrock/convert.rs b/app/src/ai/bedrock/convert.rs index afe190e2..78e1b131 100644 --- a/app/src/ai/bedrock/convert.rs +++ b/app/src/ai/bedrock/convert.rs @@ -15,16 +15,19 @@ pub struct ConvertedRequest { pub tool_config: Option, } +#[derive(Clone)] pub struct ConversationMessage { pub role: MessageRole, pub content: MessageContent, } +#[derive(Clone, Debug, PartialEq)] pub enum MessageRole { User, Assistant, } +#[derive(Clone, Debug)] pub enum MessageContent { Text(String), ToolUse { @@ -40,6 +43,7 @@ pub enum MessageContent { MultiPart(Vec), } +#[derive(Clone, Debug)] pub enum ContentPart { Text(String), ToolUse { @@ -54,6 +58,7 @@ pub enum ContentPart { }, } +#[derive(Clone)] pub struct ToolDefinition { pub name: String, pub description: String, @@ -96,9 +101,7 @@ fn json_to_document(value: JsonValue) -> Document { } } JsonValue::String(s) => Document::String(s), - JsonValue::Array(arr) => { - Document::Array(arr.into_iter().map(json_to_document).collect()) - } + JsonValue::Array(arr) => Document::Array(arr.into_iter().map(json_to_document).collect()), JsonValue::Object(obj) => { let map: HashMap = obj .into_iter() diff --git a/app/src/ai/bedrock/convert_request.rs b/app/src/ai/bedrock/convert_request.rs index 5149ea98..20a202b9 100644 --- a/app/src/ai/bedrock/convert_request.rs +++ b/app/src/ai/bedrock/convert_request.rs @@ -74,14 +74,187 @@ pub fn extract_messages_from_request(request: &api::Request) -> Vec { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Initialize this project. Analyze the codebase structure and files, \ + generate an AGENTS.md file documenting project conventions and setup \ + instructions, and offer to create a development environment configuration. \ + Use the available tools to inspect the project before responding." + .to_string(), + ), + }); + } + api::request::input::Type::CreateEnvironment(env) => { + let repo_info = if env.repo_paths.is_empty() { + String::new() + } else { + format!(" Repositories: {}", env.repo_paths.join(", ")) + }; + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(format!( + "Create a development environment for this project. \ + Set up necessary dependencies, configuration files, and tooling.{}", + repo_info + )), + }); + } + api::request::input::Type::CreateNewProject(project) => { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(format!( + "Create a new project: {}", + project.query + )), + }); + } + api::request::input::Type::CloneRepository(repo) => { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(format!( + "Clone the repository at {} and set it up for development.", + repo.url + )), + }); + } + api::request::input::Type::AutoCodeDiffQuery(diff) => { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(format!( + "Apply code changes: {}", + diff.query + )), + }); + } + api::request::input::Type::ResumeConversation(_) => { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Continue where we left off. Review the conversation history and proceed with the next steps." + .to_string(), + ), + }); + } + api::request::input::Type::QueryWithCannedResponse(canned) => { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(canned.query.clone()), + }); + } + api::request::input::Type::CodeReview(_) => { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Review the following code changes and provide detailed feedback on correctness, style, and potential issues." + .to_string(), + ), + }); + } _ => {} } } } + ensure_starts_with_user_message(&mut messages); + ensure_tool_results_paired(&mut messages); messages } +fn ensure_starts_with_user_message(messages: &mut Vec) { + if messages.is_empty() { + messages.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("Please proceed with the requested task.".to_string()), + }); + return; + } + + if messages[0].role != MessageRole::User { + messages.insert( + 0, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Please proceed with the requested task.".to_string(), + ), + }, + ); + } +} + +fn ensure_tool_results_paired(messages: &mut Vec) { + let mut tool_use_ids: Vec = Vec::new(); + let mut tool_result_ids: std::collections::HashSet = std::collections::HashSet::new(); + + for msg in messages.iter() { + match &msg.content { + MessageContent::ToolUse { tool_use_id, .. } => { + tool_use_ids.push(tool_use_id.clone()); + } + MessageContent::ToolResult { tool_use_id, .. } => { + tool_result_ids.insert(tool_use_id.clone()); + } + MessageContent::MultiPart(parts) => { + for part in parts { + match part { + super::convert::ContentPart::ToolUse { tool_use_id, .. } => { + tool_use_ids.push(tool_use_id.clone()); + } + super::convert::ContentPart::ToolResult { tool_use_id, .. } => { + tool_result_ids.insert(tool_use_id.clone()); + } + _ => {} + } + } + } + _ => {} + } + } + + let orphaned: Vec = tool_use_ids + .into_iter() + .filter(|id| !tool_result_ids.contains(id)) + .collect(); + + if orphaned.is_empty() { + return; + } + + log::debug!( + "[bedrock] Synthesizing {} missing toolResult messages for orphaned tool calls", + orphaned.len() + ); + + for orphaned_id in &orphaned { + let insert_idx = messages + .iter() + .rposition(|m| match &m.content { + MessageContent::ToolUse { tool_use_id, .. } => tool_use_id == orphaned_id, + MessageContent::MultiPart(parts) => parts.iter().any(|p| matches!( + p, + super::convert::ContentPart::ToolUse { tool_use_id, .. } if tool_use_id == orphaned_id + )), + _ => false, + }) + .map(|i| i + 1) + .unwrap_or(messages.len()); + + messages.insert( + insert_idx, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: orphaned_id.clone(), + content: "Tool executed successfully.".to_string(), + is_error: false, + }, + }, + ); + } +} + pub fn extract_system_prompt(_request: &api::Request) -> Option { Some("You are a helpful AI coding assistant. You help users with software engineering tasks including writing code, debugging, and explaining concepts.".to_string()) } @@ -109,7 +282,10 @@ pub fn extract_tools(request: &api::Request) -> Vec { match input_type { api::request::input::Type::UserInputs(user_inputs) => { for user_input in &user_inputs.inputs { - if let Some(api::request::input::user_inputs::user_input::Input::ToolCallResult(_)) = &user_input.input { + if let Some( + api::request::input::user_inputs::user_input::Input::ToolCallResult(_), + ) = &user_input.input + { break; } } @@ -133,6 +309,10 @@ pub fn extract_tools(request: &api::Request) -> Vec { } } + if tools.is_empty() { + tools = default_tool_definitions(); + } + tools } @@ -232,7 +412,7 @@ fn convert_proto_message(msg: &api::Message) -> Option { Some(ConversationMessage { role: MessageRole::Assistant, content: MessageContent::ToolUse { - tool_use_id: msg.id.clone(), + tool_use_id: tool_call.tool_call_id.clone(), name, input, }, @@ -296,14 +476,12 @@ fn extract_tool_result_content(result: &api::request::input::ToolCallResult) -> match result_type { api::request::input::tool_call_result::Result::RunShellCommand(cmd_result) => { match &cmd_result.result { - Some( - api::run_shell_command_result::Result::CommandFinished(finished), - ) => finished.output.clone(), - Some( - api::run_shell_command_result::Result::LongRunningCommandSnapshot( - snapshot, - ), - ) => snapshot.output.clone(), + Some(api::run_shell_command_result::Result::CommandFinished(finished)) => { + finished.output.clone() + } + Some(api::run_shell_command_result::Result::LongRunningCommandSnapshot( + snapshot, + )) => snapshot.output.clone(), _ => "Command completed.".to_string(), } } @@ -341,19 +519,15 @@ fn format_tool_call_result(result: &api::message::ToolCallResult) -> String { match result_type { api::message::tool_call_result::Result::RunShellCommand(cmd_result) => { match &cmd_result.result { - Some( - api::run_shell_command_result::Result::CommandFinished(finished), - ) => { + Some(api::run_shell_command_result::Result::CommandFinished(finished)) => { format!( "Exit code: {}\nOutput: {}", finished.exit_code, finished.output ) } - Some( - api::run_shell_command_result::Result::LongRunningCommandSnapshot( - snapshot, - ), - ) => { + Some(api::run_shell_command_result::Result::LongRunningCommandSnapshot( + snapshot, + )) => { format!("Output (running): {}", snapshot.output) } _ => "Command completed.".to_string(), diff --git a/app/src/ai/bedrock/convert_tests.rs b/app/src/ai/bedrock/convert_tests.rs index c989f644..26389a80 100644 --- a/app/src/ai/bedrock/convert_tests.rs +++ b/app/src/ai/bedrock/convert_tests.rs @@ -158,7 +158,8 @@ fn test_system_prompt_separated_from_messages() { #[test] fn test_empty_system_prompt_produces_empty_vec() { - let result = build_converse_request(vec![], Some("".to_string()), vec![], 4096, None, None, None); + let result = + build_converse_request(vec![], Some("".to_string()), vec![], 4096, None, None, None); assert!(result.system.is_empty()); let result2 = build_converse_request(vec![], None, vec![], 4096, None, None, None); @@ -235,7 +236,10 @@ fn test_multipart_content_produces_multiple_blocks() { let result = build_converse_request(messages, None, vec![], 4096, None, None, None); assert_eq!(result.messages[0].content().len(), 2); - assert!(matches!(&result.messages[0].content()[0], ContentBlock::Text(_))); + assert!(matches!( + &result.messages[0].content()[0], + ContentBlock::Text(_) + )); assert!(matches!( &result.messages[0].content()[1], ContentBlock::ToolUse(_) diff --git a/app/src/ai/bedrock/diagnostic.rs b/app/src/ai/bedrock/diagnostic.rs new file mode 100644 index 00000000..c284883f --- /dev/null +++ b/app/src/ai/bedrock/diagnostic.rs @@ -0,0 +1,363 @@ +use std::fs::{self, File, OpenOptions}; +use std::io::{BufWriter, Write}; +use std::path::PathBuf; +use std::sync::Mutex; + +use chrono::Utc; +use serde_json::Value as JsonValue; + +use super::convert::{ConversationMessage, MessageContent, MessageRole, ToolDefinition}; + +const ENV_VAR: &str = "GALAXY_BEDROCK_DIAGNOSTICS"; +const LOG_FILENAME: &str = "bedrock-diagnostics.log"; +const MAX_ROTATIONS: usize = 5; + +#[derive(Debug, Clone, Copy, PartialEq)] +pub enum Layer { + Protobuf, + Bedrock, +} + +impl std::fmt::Display for Layer { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Layer::Protobuf => write!(f, "PROTOBUF"), + Layer::Bedrock => write!(f, "BEDROCK"), + } + } +} + +#[derive(Debug, Clone, Copy, PartialEq)] +pub enum Direction { + Input, + Stream, + Result, +} + +impl std::fmt::Display for Direction { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Direction::Input => write!(f, "INPUT"), + Direction::Stream => write!(f, "STREAM"), + Direction::Result => write!(f, "RESULT"), + } + } +} + +#[derive(Debug, Clone, Copy, PartialEq)] +pub enum Status { + Pending, + Success, + Fail, +} + +impl std::fmt::Display for Status { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Status::Pending => write!(f, "PENDING"), + Status::Success => write!(f, "SUCCESS"), + Status::Fail => write!(f, "FAIL"), + } + } +} + +pub struct BedrockDiagnosticLogger { + writer: Mutex>, + model_id: String, + conversation_id: Mutex, + request_id: Mutex, + task_id: String, +} + +impl BedrockDiagnosticLogger { + pub fn try_new( + model_id: &str, + conversation_id: &str, + request_id: &str, + task_id: &str, + ) -> Option { + if !is_enabled() { + return None; + } + + let log_path = match log_file_path() { + Some(path) => path, + None => { + log::warn!("[bedrock-diag] Could not determine log directory"); + return None; + } + }; + + if let Some(parent) = log_path.parent() { + let _ = fs::create_dir_all(parent); + } + + rotate_if_needed(&log_path); + + let file = match OpenOptions::new().create(true).append(true).open(&log_path) { + Ok(f) => f, + Err(e) => { + log::warn!( + "[bedrock-diag] Failed to open log file {:?}: {}", + log_path, + e + ); + return None; + } + }; + + log::info!( + "[bedrock-diag] Diagnostic logging enabled -> {:?}", + log_path + ); + + Some(Self { + writer: Mutex::new(BufWriter::new(file)), + model_id: model_id.to_string(), + conversation_id: Mutex::new(conversation_id.to_string()), + request_id: Mutex::new(request_id.to_string()), + task_id: task_id.to_string(), + }) + } + + pub fn set_ids(&self, conversation_id: &str, request_id: &str) { + if let Ok(mut cid) = self.conversation_id.lock() { + *cid = conversation_id.to_string(); + } + if let Ok(mut rid) = self.request_id.lock() { + *rid = request_id.to_string(); + } + } + + pub fn log_protobuf_input(&self, request: &warp_multi_agent_api::Request) { + let payload = format!("{:?}", request); + self.write_line(Layer::Protobuf, Direction::Input, Status::Pending, &payload); + } + + pub fn log_bedrock_input( + &self, + messages: &[ConversationMessage], + system_prompt: &Option, + tools: &[ToolDefinition], + max_tokens: i32, + temperature: Option, + cross_region_inference: bool, + ) { + let messages_json = serialize_messages(messages); + let tools_json = serialize_tools(tools); + + let payload = serde_json::json!({ + "model_id": self.model_id, + "cross_region_inference": cross_region_inference, + "max_tokens": max_tokens, + "temperature": temperature, + "system_prompt": system_prompt, + "messages": messages_json, + "tools": tools_json, + }); + + self.write_line( + Layer::Bedrock, + Direction::Input, + Status::Pending, + &payload.to_string(), + ); + } + + pub fn log_stream_event(&self, event_description: &str) { + self.write_line( + Layer::Bedrock, + Direction::Stream, + Status::Success, + event_description, + ); + } + + pub fn log_stream_error(&self, error: &str) { + self.write_line(Layer::Bedrock, Direction::Stream, Status::Fail, error); + } + + pub fn log_result_success(&self, input_tokens: i32, output_tokens: i32, stop_reason: &str) { + let payload = serde_json::json!({ + "input_tokens": input_tokens, + "output_tokens": output_tokens, + "stop_reason": stop_reason, + }); + self.write_line( + Layer::Bedrock, + Direction::Result, + Status::Success, + &payload.to_string(), + ); + } + + pub fn log_result_fail(&self, error: &str) { + let payload = serde_json::json!({ + "error": error, + }); + self.write_line( + Layer::Bedrock, + Direction::Result, + Status::Fail, + &payload.to_string(), + ); + } + + fn write_line(&self, layer: Layer, direction: Direction, status: Status, payload: &str) { + let timestamp = Utc::now().to_rfc3339_opts(chrono::SecondsFormat::Millis, true); + let conversation_id = self + .conversation_id + .lock() + .map(|c| c.clone()) + .unwrap_or_default(); + let request_id = self + .request_id + .lock() + .map(|r| r.clone()) + .unwrap_or_default(); + let line = format!( + "[{}][{}][{}][{}][{}][{}][{}][{}] {}\n", + timestamp, + layer, + direction, + self.model_id, + status, + conversation_id, + request_id, + self.task_id, + payload, + ); + + if let Ok(mut writer) = self.writer.lock() { + let _ = writer.write_all(line.as_bytes()); + let _ = writer.flush(); + } + } +} + +pub fn is_enabled() -> bool { + std::env::var(ENV_VAR) + .map(|v| v == "1" || v.eq_ignore_ascii_case("true")) + .unwrap_or(false) +} + +fn log_file_path() -> Option { + galaxy_logging::log_directory() + .ok() + .map(|dir| dir.join(LOG_FILENAME)) +} + +fn rotate_if_needed(path: &PathBuf) { + let metadata = match fs::metadata(path) { + Ok(m) => m, + Err(_) => return, + }; + + const TEN_MB: u64 = 10 * 1024 * 1024; + if metadata.len() < TEN_MB { + return; + } + + for i in (0..MAX_ROTATIONS - 1).rev() { + let from = if i == 0 { + path.clone() + } else { + path.with_extension(format!("log.{}", i)) + }; + let to = path.with_extension(format!("log.{}", i + 1)); + let _ = fs::rename(&from, &to); + } + + let first_rotation = path.with_extension("log.1"); + let _ = fs::rename(path, &first_rotation); +} + +fn serialize_messages(messages: &[ConversationMessage]) -> JsonValue { + let entries: Vec = messages + .iter() + .map(|msg| { + let role = match msg.role { + MessageRole::User => "user", + MessageRole::Assistant => "assistant", + }; + let content = match &msg.content { + MessageContent::Text(t) => serde_json::json!({"type": "text", "text": t}), + MessageContent::ToolUse { + tool_use_id, + name, + input, + } => { + serde_json::json!({ + "type": "tool_use", + "tool_use_id": tool_use_id, + "name": name, + "input": input, + }) + } + MessageContent::ToolResult { + tool_use_id, + content, + is_error, + } => { + serde_json::json!({ + "type": "tool_result", + "tool_use_id": tool_use_id, + "content": content, + "is_error": is_error, + }) + } + MessageContent::MultiPart(parts) => { + let part_values: Vec = parts + .iter() + .map(|p| match p { + super::convert::ContentPart::Text(t) => { + serde_json::json!({"type": "text", "text": t}) + } + super::convert::ContentPart::ToolUse { + tool_use_id, + name, + input, + } => { + serde_json::json!({ + "type": "tool_use", + "tool_use_id": tool_use_id, + "name": name, + "input": input, + }) + } + super::convert::ContentPart::ToolResult { + tool_use_id, + content, + is_error, + } => { + serde_json::json!({ + "type": "tool_result", + "tool_use_id": tool_use_id, + "content": content, + "is_error": is_error, + }) + } + }) + .collect(); + serde_json::json!({"type": "multi_part", "parts": part_values}) + } + }; + serde_json::json!({"role": role, "content": content}) + }) + .collect(); + JsonValue::Array(entries) +} + +fn serialize_tools(tools: &[ToolDefinition]) -> JsonValue { + let entries: Vec = tools + .iter() + .map(|t| { + serde_json::json!({ + "name": t.name, + "description": t.description, + "input_schema": t.input_schema, + }) + }) + .collect(); + JsonValue::Array(entries) +} diff --git a/app/src/ai/bedrock/e2e_tests.rs b/app/src/ai/bedrock/e2e_tests.rs new file mode 100644 index 00000000..bcb6a676 --- /dev/null +++ b/app/src/ai/bedrock/e2e_tests.rs @@ -0,0 +1,2126 @@ +use futures::StreamExt; +use serde_json::json; +use std::path::PathBuf; + +use super::client::{BedrockClient, BedrockClientConfig}; +use super::convert::{ConversationMessage, MessageContent, MessageRole, ToolDefinition}; +use crate::settings::ai::BedrockAuthMethod; +use warp_multi_agent_api as api; + +fn make_user_query_message(id: &str, task_id: &str, query: &str) -> api::Message { + api::Message { + id: id.into(), + task_id: task_id.into(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::UserQuery(api::message::UserQuery { + query: query.into(), + context: None, + referenced_attachments: std::collections::HashMap::new(), + mode: None, + intended_agent: 0, + })), + } +} + +fn make_tool_call_run_shell( + id: &str, + task_id: &str, + tool_call_id: &str, + command: &str, +) -> api::Message { + api::Message { + id: id.into(), + task_id: task_id.into(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::ToolCall(api::message::ToolCall { + tool_call_id: tool_call_id.into(), + tool: Some(api::message::tool_call::Tool::RunShellCommand( + api::message::tool_call::RunShellCommand { + command: command.into(), + is_read_only: true, + uses_pager: false, + citations: vec![], + is_risky: false, + risk_category: 0, + wait_until_complete_value: None, + }, + )), + })), + } +} + +fn make_tool_call_read_files( + id: &str, + task_id: &str, + tool_call_id: &str, + file_name: &str, +) -> api::Message { + api::Message { + id: id.into(), + task_id: task_id.into(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::ToolCall(api::message::ToolCall { + tool_call_id: tool_call_id.into(), + tool: Some(api::message::tool_call::Tool::ReadFiles( + api::message::tool_call::ReadFiles { + files: vec![api::message::tool_call::read_files::File { + name: file_name.into(), + line_ranges: vec![], + }], + }, + )), + })), + } +} + +#[allow(deprecated)] +fn make_tool_result_shell( + id: &str, + task_id: &str, + tool_call_id: &str, + output: &str, + exit_code: i32, +) -> api::Message { + api::Message { + id: id.into(), + task_id: task_id.into(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::ToolCallResult( + api::message::ToolCallResult { + tool_call_id: tool_call_id.into(), + context: None, + result: Some(api::message::tool_call_result::Result::RunShellCommand( + api::RunShellCommandResult { + command: String::new(), + output: String::new(), + exit_code: 0, + result: Some(api::run_shell_command_result::Result::CommandFinished( + api::ShellCommandFinished { + output: output.into(), + exit_code, + command_id: String::new(), + }, + )), + }, + )), + }, + )), + } +} + +fn make_tool_result_read_files( + id: &str, + task_id: &str, + tool_call_id: &str, + file_path: &str, + content: &str, +) -> api::Message { + api::Message { + id: id.into(), + task_id: task_id.into(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::ToolCallResult( + api::message::ToolCallResult { + tool_call_id: tool_call_id.into(), + context: None, + result: Some(api::message::tool_call_result::Result::ReadFiles( + api::ReadFilesResult { + result: Some(api::read_files_result::Result::TextFilesSuccess( + api::read_files_result::TextFilesSuccess { + files: vec![api::FileContent { + file_path: file_path.into(), + content: content.into(), + line_range: None, + }], + }, + )), + }, + )), + }, + )), + } +} + +fn make_user_inputs_input(query: &str) -> api::request::Input { + api::request::Input { + context: None, + r#type: Some(api::request::input::Type::UserInputs( + api::request::input::UserInputs { + inputs: vec![api::request::input::user_inputs::UserInput { + input: Some( + api::request::input::user_inputs::user_input::Input::UserQuery( + api::request::input::UserQuery { + query: query.into(), + referenced_attachments: std::collections::HashMap::new(), + mode: None, + intended_agent: 0, + }, + ), + ), + }], + }, + )), + } +} + +#[allow(deprecated)] +fn make_settings(model: &str) -> api::request::Settings { + api::request::Settings { + model_config: Some(api::request::settings::ModelConfig { + base: model.into(), + planning: String::new(), + coding: String::new(), + cli_agent: String::new(), + computer_use_agent: String::new(), + base_model_context_window_limit: 0, + }), + rules_enabled: false, + web_context_retrieval_enabled: false, + supports_parallel_tool_calls: true, + use_anthropic_text_editor_tools: false, + planning_enabled: false, + warp_drive_context_enabled: false, + supports_create_files: true, + supported_tools: vec![], + supports_long_running_commands: false, + should_preserve_file_content_in_history: true, + supports_todos_ui: false, + supports_linked_code_blocks: false, + supports_started_child_task_message: false, + supports_suggest_prompt: false, + supports_read_image_files: false, + supports_reasoning_message: true, + api_keys: None, + autonomy_level: 0, + isolation_level: 0, + web_search_enabled: false, + supported_cli_agent_tools: vec![], + supports_v4a_file_diffs: false, + supports_summarization_via_message_replacement: false, + supports_bundled_skills: false, + supports_research_agent: false, + supports_orchestration_v2: false, + } +} + +fn make_request( + task_id: &str, + messages: Vec, + input: api::request::Input, + model: &str, +) -> api::Request { + api::Request { + task_context: Some(api::request::TaskContext { + tasks: vec![api::Task { + id: task_id.into(), + description: String::new(), + dependencies: None, + messages, + summary: String::new(), + server_data: String::new(), + }], + }), + input: Some(input), + settings: Some(make_settings(model)), + metadata: None, + existing_suggestions: None, + mcp_context: None, + } +} + +fn get_test_config() -> Option { + if std::env::var("BEDROCK_INTEGRATION_TEST").is_err() { + return None; + } + + let profile = + std::env::var("BEDROCK_TEST_PROFILE").unwrap_or_else(|_| "coding-assistant".into()); + let region = std::env::var("BEDROCK_TEST_REGION").unwrap_or_else(|_| "us-east-1".into()); + + Some(BedrockClientConfig { + auth_method: BedrockAuthMethod::Profile, + profile, + region, + access_key_id: String::new(), + secret_access_key: String::new(), + cross_region_inference: false, + fallback_to_warp: false, + }) +} + +fn get_test_model() -> String { + std::env::var("BEDROCK_TEST_MODEL").unwrap_or_else(|_| { + "arn:aws:bedrock:us-east-1:156729649053:application-inference-profile/fma5bsw4oxhy".into() + }) +} + +fn sample_project_path() -> PathBuf { + PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("src/ai/bedrock/test_fixtures/sample_project") +} + +fn agent_tools() -> Vec { + vec![ + ToolDefinition { + name: "run_shell_command".into(), + description: "Execute a shell command and return its output.".into(), + input_schema: json!({ + "type": "object", + "properties": { + "command": { "type": "string", "description": "The shell command to execute" } + }, + "required": ["command"] + }), + }, + ToolDefinition { + name: "read_files".into(), + description: "Read the contents of one or more files.".into(), + input_schema: json!({ + "type": "object", + "properties": { + "files": { "type": "array", "items": { "type": "string" }, "description": "File paths to read" } + }, + "required": ["files"] + }), + }, + ToolDefinition { + name: "apply_file_diffs".into(), + description: "Apply search/replace diffs to files. Creates a file if it doesn't exist." + .into(), + input_schema: json!({ + "type": "object", + "properties": { + "diffs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "file_path": { "type": "string" }, + "search": { "type": "string", "description": "Text to find (empty for new file)" }, + "replace": { "type": "string", "description": "Replacement text" } + }, + "required": ["file_path", "search", "replace"] + } + } + }, + "required": ["diffs"] + }), + }, + ToolDefinition { + name: "grep".into(), + description: "Search for patterns in files using grep.".into(), + input_schema: json!({ + "type": "object", + "properties": { + "queries": { "type": "array", "items": { "type": "string" }, "description": "Search patterns" }, + "path": { "type": "string", "description": "Directory to search in" } + }, + "required": ["queries"] + }), + }, + ToolDefinition { + name: "file_glob".into(), + description: "Find files matching glob patterns.".into(), + input_schema: json!({ + "type": "object", + "properties": { + "patterns": { "type": "array", "items": { "type": "string" }, "description": "Glob patterns to match" } + }, + "required": ["patterns"] + }), + }, + ] +} + +#[derive(Debug)] +struct StreamEvent { + event_type: StreamEventType, +} + +#[derive(Debug)] +enum StreamEventType { + Init { + request_id: String, + conversation_id: String, + }, + CreateTask { + task_id: String, + }, + AddMessage { + task_id: String, + message_id: String, + text: String, + }, + AppendText { + task_id: String, + message_id: String, + delta: String, + }, + ToolCallMessage { + task_id: String, + text: String, + }, + Finished { + reason: String, + total_tokens: u32, + }, + Error(String), +} + +fn parse_response_event(event: &api::ResponseEvent) -> StreamEvent { + match &event.r#type { + Some(api::response_event::Type::Init(init)) => StreamEvent { + event_type: StreamEventType::Init { + request_id: init.request_id.clone(), + conversation_id: init.conversation_id.clone(), + }, + }, + Some(api::response_event::Type::ClientActions(actions)) => { + for action in &actions.actions { + if let Some(action_type) = &action.action { + match action_type { + api::client_action::Action::CreateTask(ct) => { + let task_id = + ct.task.as_ref().map(|t| t.id.clone()).unwrap_or_default(); + return StreamEvent { + event_type: StreamEventType::CreateTask { task_id }, + }; + } + api::client_action::Action::AddMessagesToTask(add) => { + let task_id = add.task_id.clone(); + for msg in &add.messages { + if let Some(api::message::Message::AgentOutput(output)) = + &msg.message + { + if output.text.starts_with("[Tool call:") { + return StreamEvent { + event_type: StreamEventType::ToolCallMessage { + task_id, + text: output.text.clone(), + }, + }; + } + return StreamEvent { + event_type: StreamEventType::AddMessage { + task_id, + message_id: msg.id.clone(), + text: output.text.clone(), + }, + }; + } + } + } + api::client_action::Action::AppendToMessageContent(append) => { + let task_id = append.task_id.clone(); + if let Some(msg) = &append.message { + let message_id = msg.id.clone(); + if let Some(api::message::Message::AgentOutput(output)) = + &msg.message + { + return StreamEvent { + event_type: StreamEventType::AppendText { + task_id, + message_id, + delta: output.text.clone(), + }, + }; + } + } + } + _ => {} + } + } + } + StreamEvent { + event_type: StreamEventType::Error("Unknown action".into()), + } + } + Some(api::response_event::Type::Finished(finished)) => { + let reason = format!("{:?}", finished.reason); + let total_tokens = finished + .conversation_usage_metadata + .as_ref() + .and_then(|m| m.byok_token_usage.get("bedrock")) + .map(|u| u.total_tokens) + .unwrap_or(0); + StreamEvent { + event_type: StreamEventType::Finished { + reason, + total_tokens, + }, + } + } + None => StreamEvent { + event_type: StreamEventType::Error("Empty event".into()), + }, + } +} + +struct AgentSimulation { + client: BedrockClient, + model: String, + task_id: String, + conversation: Vec, + tools: Vec, + system_prompt: String, + project_path: PathBuf, + all_text_output: String, + turn_count: u32, + max_turns: u32, +} + +#[derive(Debug)] +struct TurnResult { + text_output: String, + tool_calls: Vec, + finished: bool, + total_tokens: u32, + events_received: u32, + had_create_task: bool, +} + +#[derive(Debug, Clone)] +struct ToolCall { + name: String, + input: serde_json::Value, + raw_text: String, +} + +impl AgentSimulation { + fn new(client: BedrockClient, model: String, project_path: PathBuf) -> Self { + let task_id = uuid::Uuid::new_v4().to_string(); + Self { + client, + model, + task_id, + conversation: Vec::new(), + tools: agent_tools(), + system_prompt: format!( + "You are a helpful AI coding assistant. You help users with software engineering tasks. \ + The user's current working directory is: {}. \ + When using tools, use absolute paths based on this directory. \ + When asked to produce files, use the apply_file_diffs tool to create them.", + project_path.display() + ), + project_path, + all_text_output: String::new(), + turn_count: 0, + max_turns: 10, + } + } + + async fn send_user_message(&mut self, message: &str) -> TurnResult { + self.conversation.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(message.into()), + }); + self.execute_turn().await + } + + async fn execute_turn(&mut self) -> TurnResult { + self.turn_count += 1; + assert!( + self.turn_count <= self.max_turns, + "Exceeded max turns ({})", + self.max_turns + ); + + let needs_create_task = self.turn_count == 1; + + let stream = self + .client + .converse_stream( + &self.model, + &self.task_id, + needs_create_task, + self.conversation.clone(), + Some(self.system_prompt.clone()), + self.tools.clone(), + 8192, + None, + false, + ) + .await + .expect("converse_stream should succeed"); + + let mut text_output = String::new(); + let mut tool_calls = Vec::new(); + let mut finished = false; + let mut total_tokens = 0u32; + let mut events_received = 0u32; + let mut had_create_task = false; + let mut had_init = false; + + let mut stream = stream; + while let Some(event_result) = stream.next().await { + events_received += 1; + let event = event_result.expect("stream event should be Ok"); + let parsed = parse_response_event(&event); + + match parsed.event_type { + StreamEventType::Init { request_id, .. } => { + had_init = true; + assert!( + !request_id.is_empty(), + "StreamInit should have non-empty request_id" + ); + } + StreamEventType::CreateTask { ref task_id } => { + had_create_task = true; + assert_eq!( + task_id, &self.task_id, + "CreateTask task_id should match our task_id" + ); + } + StreamEventType::AddMessage { + ref task_id, + text: ref t, + .. + } => { + assert_eq!( + task_id, &self.task_id, + "AddMessage task_id should match our task_id" + ); + text_output.push_str(t); + } + StreamEventType::AppendText { + ref task_id, + delta: ref d, + .. + } => { + assert_eq!( + task_id, &self.task_id, + "AppendText task_id should match our task_id" + ); + text_output.push_str(d); + } + StreamEventType::ToolCallMessage { text: ref t, .. } => { + if let Some(call) = parse_tool_call_text(t) { + tool_calls.push(call); + } + } + StreamEventType::Finished { + total_tokens: tokens, + .. + } => { + finished = true; + total_tokens = tokens; + } + StreamEventType::Error(ref e) => { + panic!("Unexpected error event: {e}"); + } + } + } + + assert!(had_init, "Stream should start with Init event"); + if needs_create_task { + assert!(had_create_task, "First turn should have CreateTask event"); + } + assert!(finished, "Stream should end with Finished event"); + assert!( + events_received >= 3, + "Should receive at least Init + one content + Finished" + ); + + self.all_text_output.push_str(&text_output); + + if !text_output.is_empty() { + self.conversation.push(ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::Text(text_output.clone()), + }); + } + + TurnResult { + text_output, + tool_calls, + finished, + total_tokens, + events_received, + had_create_task, + } + } + + fn provide_tool_result( + &mut self, + tool_use_id: &str, + name: &str, + input: &serde_json::Value, + result: &str, + is_error: bool, + ) { + self.conversation.push(ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::ToolUse { + tool_use_id: tool_use_id.into(), + name: name.into(), + input: input.clone(), + }, + }); + self.conversation.push(ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: tool_use_id.into(), + content: result.into(), + is_error, + }, + }); + } + + fn execute_tool_locally(&self, name: &str, input: &serde_json::Value) -> (String, bool) { + match name { + "run_shell_command" => { + let command = input["command"].as_str().unwrap_or("echo 'no command'"); + let output = std::process::Command::new("sh") + .arg("-c") + .arg(command) + .current_dir(&self.project_path) + .output(); + match output { + Ok(out) => { + let stdout = String::from_utf8_lossy(&out.stdout); + let stderr = String::from_utf8_lossy(&out.stderr); + let result = if stderr.is_empty() { + stdout.to_string() + } else { + format!("{}\nstderr: {}", stdout, stderr) + }; + (result, !out.status.success()) + } + Err(e) => (format!("Error: {e}"), true), + } + } + "read_files" => { + let files = input["files"] + .as_array() + .map(|arr| arr.iter().filter_map(|v| v.as_str()).collect::>()) + .unwrap_or_default(); + let mut result = String::new(); + for file in files { + let path = if file.starts_with('/') { + PathBuf::from(file) + } else { + self.project_path.join(file) + }; + match std::fs::read_to_string(&path) { + Ok(content) => { + result.push_str(&format!("{}:\n{}\n\n", path.display(), content)); + } + Err(e) => { + result.push_str(&format!("Error reading {}: {}\n", path.display(), e)); + } + } + } + (result, false) + } + "file_glob" => { + let mut files = Vec::new(); + for entry in walkdir::WalkDir::new(&self.project_path) + .into_iter() + .filter_map(|e| e.ok()) + .filter(|e| e.file_type().is_file()) + { + files.push(entry.path().display().to_string()); + } + let result = if files.is_empty() { + "No files found.".into() + } else { + files.join("\n") + }; + (result, false) + } + "grep" => { + let queries = input["queries"] + .as_array() + .map(|arr| arr.iter().filter_map(|v| v.as_str()).collect::>()) + .unwrap_or_default(); + let path = input["path"] + .as_str() + .unwrap_or(self.project_path.to_str().unwrap_or(".")); + let mut result = String::new(); + for query in queries { + let output = std::process::Command::new("grep") + .args(["-rn", query, path]) + .output(); + if let Ok(out) = output { + result.push_str(&String::from_utf8_lossy(&out.stdout)); + } + } + if result.is_empty() { + result = "No matches found.".into(); + } + (result, false) + } + "apply_file_diffs" => { + let diffs = input["diffs"].as_array(); + match diffs { + Some(diffs) => { + let mut results = Vec::new(); + for diff in diffs { + let file_path = diff["file_path"].as_str().unwrap_or(""); + let search = diff["search"].as_str().unwrap_or(""); + let replace = diff["replace"].as_str().unwrap_or(""); + + let path = if file_path.starts_with('/') { + PathBuf::from(file_path) + } else { + self.project_path.join(file_path) + }; + + if search.is_empty() { + if let Some(parent) = path.parent() { + let _ = std::fs::create_dir_all(parent); + } + match std::fs::write(&path, replace) { + Ok(_) => results.push(format!("Created: {}", path.display())), + Err(e) => results.push(format!( + "Error creating {}: {}", + path.display(), + e + )), + } + } else { + match std::fs::read_to_string(&path) { + Ok(content) => { + let new_content = content.replace(search, replace); + match std::fs::write(&path, &new_content) { + Ok(_) => { + results.push(format!("Updated: {}", path.display())) + } + Err(e) => results.push(format!( + "Error writing {}: {}", + path.display(), + e + )), + } + } + Err(e) => results.push(format!( + "Error reading {}: {}", + path.display(), + e + )), + } + } + } + (results.join("\n"), false) + } + None => ("No diffs provided.".into(), true), + } + } + _ => (format!("Unknown tool: {name}"), true), + } + } +} + +fn parse_tool_call_text(text: &str) -> Option { + if text.starts_with("[Tool call: ") && text.ends_with("]") { + let inner = &text[12..text.len() - 1]; + if let Some(paren_pos) = inner.rfind(" (") { + let name = inner[..paren_pos].to_string(); + return Some(ToolCall { + name, + input: json!({}), + raw_text: text.to_string(), + }); + } + } + None +} + +/// This test simulates the exact flow when a user types: +/// /agent Please review this code and produce a WARP.md file for it. +/// +/// It verifies: +/// 1. StreamInit is emitted first +/// 2. CreateTask is emitted for new conversations (upgrades optimistic root task) +/// 3. Text output is substantial (not just "#" or empty) +/// 4. Tool calls are properly formed and can be executed +/// 5. Multi-turn conversation works (tool results fed back) +/// 6. The model eventually produces meaningful text output +/// 7. Stream finishes cleanly with token usage +#[tokio::test] +async fn test_agent_flow_review_code_produce_warp_md() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + let project_path = sample_project_path(); + + println!("\n{}", "=".repeat(80)); + println!("[E2E TEST] Agent flow: /agent Please review this code and produce a WARP.md file"); + println!("[E2E TEST] Project: {}", project_path.display()); + println!("[E2E TEST] Model: {model}"); + println!("{}\n", "=".repeat(80)); + + let mut sim = AgentSimulation::new(client, model, project_path.clone()); + + // Simulate the /agent command + let turn1 = sim + .send_user_message("Please review this code and produce a WARP.md file for it.") + .await; + + println!("\n--- Turn 1 ---"); + println!( + "[E2E] Text ({} chars): {:?}", + turn1.text_output.len(), + &turn1.text_output[..turn1.text_output.len().min(500)] + ); + println!("[E2E] Tool calls: {}", turn1.tool_calls.len()); + println!("[E2E] Events: {}", turn1.events_received); + println!("[E2E] Tokens: {}", turn1.total_tokens); + println!("[E2E] CreateTask: {}", turn1.had_create_task); + + // CRITICAL ASSERTIONS for the bug we're fixing: + // The model should NOT produce just "#" and stop. + // Either it produces substantial text OR it makes tool calls to explore the code first. + assert!( + turn1.text_output.len() > 5 || !turn1.tool_calls.is_empty(), + "Turn 1 should produce meaningful text (>5 chars) OR tool calls. Got text='{}', tool_calls={}", + &turn1.text_output[..turn1.text_output.len().min(100)], + turn1.tool_calls.len() + ); + + // Verify CreateTask was sent (first turn) + assert!( + turn1.had_create_task, + "First turn MUST have CreateTask to upgrade optimistic root task" + ); + + // Verify token usage is tracked + assert!(turn1.total_tokens > 0, "Should have non-zero token usage"); + + println!("\n[E2E] Turn 1 passed all assertions!"); + println!( + "[E2E] Total accumulated text: {} chars", + sim.all_text_output.len() + ); + + // Clean up any WARP.md that might have been created + let warp_md_path = project_path.join("WARP.md"); + if warp_md_path.exists() { + std::fs::remove_file(&warp_md_path).ok(); + println!("[E2E] Cleaned up WARP.md"); + } +} + +/// Multi-turn test: simulates the agent calling tools to explore code, +/// then producing a WARP.md file. Runs up to 5 turns of tool use. +#[tokio::test] +async fn test_agent_multi_turn_tool_use_produces_output() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + let project_path = sample_project_path(); + + println!("\n{}", "=".repeat(80)); + println!("[E2E TEST] Multi-turn agent flow with actual tool execution"); + println!("[E2E TEST] Project: {}", project_path.display()); + println!("{}\n", "=".repeat(80)); + + let mut sim = AgentSimulation::new(client, model, project_path.clone()); + + // Initial user message + let mut turn = sim + .send_user_message( + "Please review this code and produce a WARP.md file for it. \ + Start by listing the files, reading the important ones, then create the WARP.md.", + ) + .await; + + println!("\n--- Turn 1 ---"); + println!("[E2E] Text: {} chars", turn.text_output.len()); + println!( + "[E2E] Tool calls: {:?}", + turn.tool_calls.iter().map(|t| &t.name).collect::>() + ); + + // For models with extended thinking, the first turn might have reasoning + tool call + // The text should contain more than just "#" + let meaningful_text = turn.text_output.trim().len() > 5; + let has_tool_calls = !turn.tool_calls.is_empty(); + + println!("[E2E] Has meaningful text: {meaningful_text}"); + println!("[E2E] Has tool calls: {has_tool_calls}"); + + assert!( + meaningful_text || has_tool_calls, + "First turn must produce meaningful output. Text='{}' ({} chars), tools={}", + &turn.text_output[..turn.text_output.len().min(200)], + turn.text_output.len(), + turn.tool_calls.len() + ); + + // Now simulate multi-turn: if the model made tool calls, execute them and continue + let mut total_turns = 1u32; + let max_simulation_turns = 5u32; + + while !turn.tool_calls.is_empty() && total_turns < max_simulation_turns { + total_turns += 1; + let tool = turn.tool_calls[0].clone(); + println!( + "\n--- Turn {} (executing tool: {}) ---", + total_turns, tool.name + ); + + // For this test, provide simulated tool results since we can't parse + // the tool input from the `[Tool call: name (id)]` format that stream.rs emits. + // Instead, provide reasonable results based on the tool name. + let tool_use_id = format!("tool_{}", total_turns); + let (result, is_error) = match tool.name.as_str() { + "run_shell_command" => { + let ls_output = std::process::Command::new("ls") + .arg("-la") + .current_dir(&project_path) + .output() + .map(|o| String::from_utf8_lossy(&o.stdout).to_string()) + .unwrap_or_else(|_| "Error listing files".into()); + (ls_output, false) + } + "file_glob" | "list_files" => { + let mut files = Vec::new(); + for entry in walkdir::WalkDir::new(&project_path) + .into_iter() + .filter_map(|e| e.ok()) + .filter(|e| e.file_type().is_file()) + { + files.push(entry.path().display().to_string()); + } + (files.join("\n"), false) + } + "read_files" => { + // Read the main files + let mut content = String::new(); + for file in &["src/main.rs", "src/lib.rs", "Cargo.toml", "README.md"] { + let path = project_path.join(file); + if let Ok(c) = std::fs::read_to_string(&path) { + content.push_str(&format!("{}:\n{}\n\n", path.display(), c)); + } + } + (content, false) + } + "grep" => ("No matches found.".into(), false), + "apply_file_diffs" => ("Created: WARP.md".into(), false), + _ => (format!("Tool {} executed successfully", tool.name), false), + }; + + println!( + "[E2E] Tool result ({} chars): {:?}", + result.len(), + &result[..result.len().min(200)] + ); + + // Provide the result and get next turn + sim.provide_tool_result(&tool_use_id, &tool.name, &json!({}), &result, is_error); + turn = sim.execute_turn().await; + + println!( + "[E2E] Turn {} text: {} chars", + total_turns, + turn.text_output.len() + ); + println!( + "[E2E] Turn {} tool calls: {:?}", + total_turns, + turn.tool_calls.iter().map(|t| &t.name).collect::>() + ); + } + + println!("\n{}", "=".repeat(80)); + println!("[E2E] Completed in {} turns", total_turns); + println!( + "[E2E] Total text output: {} chars", + sim.all_text_output.len() + ); + println!( + "[E2E] Final text preview: {:?}", + &sim.all_text_output[..sim.all_text_output.len().min(1000)] + ); + println!("{}\n", "=".repeat(80)); + + // Final assertions + // Agent behavior: model may spend ALL turns using tools to explore code. + // This is valid. The key assertion is that: + // 1. Each turn either produces text OR tool calls (never neither) + // 2. No partial reasoning fragments leak to the UI + // 3. The stream protocol is correct (Init, CreateTask, content, Finished) + assert!( + sim.all_text_output.len() > 0 || total_turns > 1, + "Agent should either produce text or make multiple tool calls to explore" + ); + + println!( + "[E2E] SUCCESS: Agent completed {} turns, {} chars text output", + total_turns, + sim.all_text_output.len() + ); + + // Clean up + let warp_md_path = project_path.join("WARP.md"); + if warp_md_path.exists() { + std::fs::remove_file(&warp_md_path).ok(); + } +} + +/// This test verifies the exact scenario from the bug report: +/// - Model with extended thinking (Opus 4.6) sends reasoning blocks first +/// - Then sends actual text content +/// - The stream should capture BOTH reasoning and text as visible output +/// - It should NOT stop at just "#" +#[tokio::test] +async fn test_reasoning_model_produces_substantial_output() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + println!("\n{}", "=".repeat(80)); + println!("[E2E TEST] Reasoning model substantial output test"); + println!("[E2E TEST] Model: {model}"); + println!("{}\n", "=".repeat(80)); + + let system = + Some("You are a helpful coding assistant. Respond with detailed markdown.".to_string()); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Please review this code and produce a WARP.md file for it:\n\n\ + ```rust\n\ + fn main() {\n \ + let config = Config::from_env();\n \ + println!(\"Starting {} on port {}\", config.name, config.port);\n\ + }\n\ + ```\n\n\ + Write the full WARP.md content in your response." + .into(), + ), + }]; + + let stream = client + .converse_stream( + &model, + "test-task-id", + true, + messages, + system, + agent_tools(), + 8192, + None, + false, + ) + .await + .expect("converse_stream should succeed"); + + let mut total_text = String::new(); + let mut event_count = 0u32; + let mut had_create_task = false; + + let mut stream = stream; + while let Some(event_result) = stream.next().await { + event_count += 1; + let event = event_result.expect("event should be Ok"); + if let Some(event_type) = &event.r#type { + match event_type { + api::response_event::Type::ClientActions(actions) => { + for action in &actions.actions { + if let Some(action_type) = &action.action { + match action_type { + api::client_action::Action::CreateTask(_) => { + had_create_task = true; + } + api::client_action::Action::AddMessagesToTask(add) => { + for msg in &add.messages { + if let Some(api::message::Message::AgentOutput(output)) = + &msg.message + { + total_text.push_str(&output.text); + } + } + } + api::client_action::Action::AppendToMessageContent(append) => { + if let Some(msg) = &append.message { + if let Some(api::message::Message::AgentOutput(output)) = + &msg.message + { + total_text.push_str(&output.text); + } + } + } + _ => {} + } + } + } + } + _ => {} + } + } + } + + println!("[E2E] Events received: {event_count}"); + println!("[E2E] Total text: {} chars", total_text.len()); + println!("[E2E] Had CreateTask: {had_create_task}"); + println!( + "[E2E] Text preview: {:?}", + &total_text[..total_text.len().min(1000)] + ); + + // THE BUG CHECK: output must be more than just "#" + // With reasoning hidden, if the model only makes tool calls, text will be tool call messages. + // The key assertion is that we DON'T get partial reasoning fragments like "#" displayed. + let trimmed = total_text.trim(); + + // If text is present, it should be meaningful (not just a fragment from reasoning) + if !trimmed.is_empty() && !trimmed.starts_with("[Tool call:") { + assert!( + trimmed.len() > 10, + "If text output is present (not a tool call), it should be substantial. Got ({} chars): '{}'", + trimmed.len(), + &trimmed[..trimmed.len().min(100)] + ); + } + + // Should have CreateTask + assert!( + had_create_task, + "Should emit CreateTask for new conversation" + ); + + // Should have at least some events (either text or tool calls) + assert!( + event_count >= 3, + "Should have at least Init + CreateTask + Finished, got {}", + event_count + ); +} + +/// Verify the exact event sequence matches what the conversation controller expects: +/// 1. Init +/// 2. CreateTask (for new conversations only) +/// 3. AddMessagesToTask (first content) +/// 4. AppendToMessageContent (subsequent deltas) +/// 5. Finished +#[tokio::test] +async fn test_event_sequence_matches_controller_expectations() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("Say hello world.".into()), + }]; + + let stream = client + .converse_stream( + &model, + "my-task-id", + true, + messages, + None, + vec![], + 100, + None, + false, + ) + .await + .expect("should connect"); + + let mut events: Vec = Vec::new(); + let mut stream = stream; + while let Some(event_result) = stream.next().await { + let event = event_result.expect("event ok"); + match &event.r#type { + Some(api::response_event::Type::Init(_)) => events.push("Init".into()), + Some(api::response_event::Type::ClientActions(actions)) => { + for action in &actions.actions { + if let Some(a) = &action.action { + match a { + api::client_action::Action::CreateTask(_) => { + events.push("CreateTask".into()) + } + api::client_action::Action::AddMessagesToTask(_) => { + events.push("AddMessages".into()) + } + api::client_action::Action::AppendToMessageContent(_) => { + events.push("AppendText".into()) + } + _ => events.push(format!("Other({:?})", std::mem::discriminant(a))), + } + } + } + } + Some(api::response_event::Type::Finished(_)) => events.push("Finished".into()), + None => events.push("Empty".into()), + } + } + + println!("[E2E] Event sequence: {:?}", events); + + // Verify sequence + assert_eq!(events[0], "Init", "First event must be Init"); + assert_eq!( + events[1], "CreateTask", + "Second event must be CreateTask (new conversation)" + ); + + // After CreateTask, should have at least one content event + let content_events: Vec<_> = events[2..events.len() - 1] + .iter() + .filter(|e| *e == "AddMessages" || *e == "AppendText") + .collect(); + assert!( + !content_events.is_empty(), + "Should have content events between CreateTask and Finished" + ); + + // First content event should be AddMessages (creates the message) + let first_content_idx = events + .iter() + .position(|e| e == "AddMessages" || e == "AppendText") + .unwrap(); + assert_eq!( + events[first_content_idx], "AddMessages", + "First content event should be AddMessages (creates message). Sequence: {:?}", + events + ); + + // Last event should be Finished + assert_eq!( + events.last().unwrap(), + "Finished", + "Last event must be Finished" + ); +} + +/// Test that follow-up messages in the same conversation do NOT send CreateTask +/// (since the task is already Server-created after the first turn) +#[tokio::test] +async fn test_followup_turn_does_not_send_create_task() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + // Simulate turn 2: needs_create_task = false + let messages = vec![ + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("What is 2+2?".into()), + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::Text("4".into()), + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("And 3+3?".into()), + }, + ]; + + let stream = client + .converse_stream( + &model, + "existing-task-id", + false, + messages, + None, + vec![], + 100, + None, + false, + ) + .await + .expect("should connect"); + + let mut had_create_task = false; + let mut had_content = false; + let mut stream = stream; + while let Some(event_result) = stream.next().await { + let event = event_result.expect("event ok"); + if let Some(api::response_event::Type::ClientActions(actions)) = &event.r#type { + for action in &actions.actions { + if let Some(a) = &action.action { + match a { + api::client_action::Action::CreateTask(_) => had_create_task = true, + api::client_action::Action::AddMessagesToTask(_) + | api::client_action::Action::AppendToMessageContent(_) => { + had_content = true + } + _ => {} + } + } + } + } + } + + assert!( + !had_create_task, + "Follow-up turn should NOT have CreateTask (task already exists)" + ); + assert!(had_content, "Should still have content events"); +} + +// ============================================================================ +// Slash Command Tests +// ============================================================================ + +async fn run_slash_command_test( + user_message: &str, + tools: Vec, + system_prompt: Option, + test_name: &str, +) -> (Vec, String) { + let config = match get_test_config() { + Some(c) => c, + None => { + println!("[SKIP] {}: BEDROCK_INTEGRATION_TEST not set", test_name); + return (vec![], String::new()); + } + }; + + let model = get_test_model(); + let client = BedrockClient::from_config(config) + .await + .expect("client creation should succeed"); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text(user_message.to_string()), + }]; + + let task_id = uuid::Uuid::new_v4().to_string(); + println!( + "\n{}\n[SLASH CMD TEST] {}\n[SLASH CMD TEST] Model: {}\n[SLASH CMD TEST] Message: {:.100}\n{}", + "=".repeat(80), test_name, model, user_message, "=".repeat(80) + ); + + let stream = client + .converse_stream( + &model, + &task_id, + true, + messages, + system_prompt, + tools, + 4096, + None, + true, + ) + .await + .expect("stream should connect"); + + let mut events = Vec::new(); + let mut all_text = String::new(); + let mut stream = stream; + while let Some(event_result) = stream.next().await { + let event = event_result.expect("event should be ok"); + let parsed = parse_response_event(&event); + match &parsed.event_type { + StreamEventType::AddMessage { text, .. } => all_text.push_str(text), + StreamEventType::AppendText { delta, .. } => all_text.push_str(delta), + _ => {} + } + events.push(parsed); + } + + println!( + "[SLASH CMD] Events: {}, Text: {} chars", + events.len(), + all_text.len() + ); + (events, all_text) +} + +fn assert_valid_stream(events: &[StreamEvent], test_name: &str) { + if events.is_empty() { + return; // skipped + } + + assert!( + events.len() >= 3, + "[{}] Should have at least Init + CreateTask + Finished, got {}", + test_name, + events.len() + ); + + assert!( + matches!(events[0].event_type, StreamEventType::Init { .. }), + "[{}] First event should be Init", + test_name + ); + + assert!( + matches!(events[1].event_type, StreamEventType::CreateTask { .. }), + "[{}] Second event should be CreateTask", + test_name + ); + + let has_finished = events + .iter() + .any(|e| matches!(e.event_type, StreamEventType::Finished { .. })); + assert!(has_finished, "[{}] Should have a Finished event", test_name); + + let has_content = events.iter().any(|e| { + matches!( + e.event_type, + StreamEventType::AddMessage { .. } + | StreamEventType::AppendText { .. } + | StreamEventType::ToolCallMessage { .. } + ) + }); + assert!( + has_content, + "[{}] Should have at least one content event", + test_name + ); +} + +#[tokio::test] +async fn test_slash_init_project_rules() { + let (events, text) = run_slash_command_test( + "Initialize this project. Analyze the codebase structure and files, \ + generate an AGENTS.md file documenting project conventions and setup \ + instructions, and offer to create a development environment configuration. \ + Use the available tools to inspect the project before responding.", + agent_tools(), + Some("You are a helpful AI coding assistant. You help users with software engineering tasks.".into()), + "slash_init_project_rules", + ) + .await; + + assert_valid_stream(&events, "slash_init_project_rules"); + + if !events.is_empty() { + let has_tool_or_text = events.iter().any(|e| { + matches!( + e.event_type, + StreamEventType::ToolCallMessage { .. } | StreamEventType::AddMessage { .. } + ) + }); + assert!( + has_tool_or_text, + "/init should produce tool calls or text output" + ); + println!("[SLASH CMD] /init produced {} chars of text", text.len()); + } +} + +#[tokio::test] +async fn test_slash_create_environment() { + let project_path = sample_project_path().display().to_string(); + let message = format!( + "Create a development environment for this project. \ + Set up necessary dependencies, configuration files, and tooling. Repositories: {}", + project_path + ); + + let (events, _text) = run_slash_command_test( + &message, + agent_tools(), + Some("You are a helpful AI coding assistant.".into()), + "slash_create_environment", + ) + .await; + + assert_valid_stream(&events, "slash_create_environment"); +} + +#[tokio::test] +async fn test_slash_create_new_project() { + let (events, text) = run_slash_command_test( + "Create a new project: A simple Rust CLI tool that converts CSV files to JSON", + agent_tools(), + Some("You are a helpful AI coding assistant.".into()), + "slash_create_new_project", + ) + .await; + + assert_valid_stream(&events, "slash_create_new_project"); + + if !events.is_empty() { + assert!( + text.len() > 0 + || events + .iter() + .any(|e| matches!(e.event_type, StreamEventType::ToolCallMessage { .. })), + "/new-project should produce text or tool calls" + ); + } +} + +#[tokio::test] +async fn test_slash_clone_repository() { + let (events, _text) = run_slash_command_test( + "Clone the repository at https://github.com/rust-lang/rust-by-example and set it up for development.", + agent_tools(), + Some("You are a helpful AI coding assistant.".into()), + "slash_clone_repository", + ) + .await; + + assert_valid_stream(&events, "slash_clone_repository"); +} + +#[tokio::test] +async fn test_slash_auto_code_diff() { + let (events, text) = run_slash_command_test( + "Apply code changes: Add a new function called `subtract` to the math module that subtracts two numbers", + agent_tools(), + Some("You are a helpful AI coding assistant.".into()), + "slash_auto_code_diff", + ) + .await; + + assert_valid_stream(&events, "slash_auto_code_diff"); + + if !events.is_empty() { + let has_action = text.len() > 0 + || events + .iter() + .any(|e| matches!(e.event_type, StreamEventType::ToolCallMessage { .. })); + assert!( + has_action, + "/auto-code-diff should produce text or tool calls" + ); + } +} + +#[tokio::test] +async fn test_slash_resume_conversation() { + let config = match get_test_config() { + Some(c) => c, + None => { + println!("[SKIP] slash_resume_conversation: BEDROCK_INTEGRATION_TEST not set"); + return; + } + }; + + let model = get_test_model(); + let client = BedrockClient::from_config(config) + .await + .expect("client creation should succeed"); + + let messages = vec![ + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("What is the capital of France?".into()), + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::Text("The capital of France is Paris.".into()), + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Continue where we left off. Review the conversation history and proceed with the next steps." + .into(), + ), + }, + ]; + + let task_id = uuid::Uuid::new_v4().to_string(); + let stream = client + .converse_stream( + &model, + &task_id, + true, + messages, + None, + vec![], + 256, + None, + true, + ) + .await + .expect("stream should connect"); + + let mut had_content = false; + let mut had_finished = false; + let mut stream = stream; + while let Some(event_result) = stream.next().await { + let event = event_result.expect("event ok"); + let parsed = parse_response_event(&event); + match &parsed.event_type { + StreamEventType::AddMessage { .. } | StreamEventType::AppendText { .. } => { + had_content = true; + } + StreamEventType::Finished { .. } => had_finished = true, + _ => {} + } + } + + assert!(had_content, "/resume should produce content"); + assert!(had_finished, "/resume should finish"); +} + +#[tokio::test] +async fn test_slash_code_review() { + let (events, text) = run_slash_command_test( + "Review the following code changes and provide detailed feedback on correctness, style, and potential issues.\n\n\ + ```diff\n\ + --- a/src/lib.rs\n\ + +++ b/src/lib.rs\n\ + @@ -1,4 +1,8 @@\n\ + +pub fn divide(a: f64, b: f64) -> f64 {\n\ + + a / b\n\ + +}\n\ + +\n\ + pub fn add(a: i32, b: i32) -> i32 {\n\ + a + b\n\ + }\n\ + ```", + vec![], + Some("You are a code review assistant. Identify bugs, style issues, and suggest improvements.".into()), + "slash_code_review", + ) + .await; + + assert_valid_stream(&events, "slash_code_review"); + + if !events.is_empty() { + assert!( + text.len() > 20, + "/code-review should produce substantial feedback, got {} chars", + text.len() + ); + } +} + +#[tokio::test] +async fn test_slash_query_with_canned_response() { + let (events, text) = run_slash_command_test( + "Help me install dependencies and set up this project for development", + agent_tools(), + Some("You are a helpful AI coding assistant.".into()), + "slash_query_with_canned_response", + ) + .await; + + assert_valid_stream(&events, "slash_query_with_canned_response"); + + if !events.is_empty() { + let has_output = text.len() > 0 + || events + .iter() + .any(|e| matches!(e.event_type, StreamEventType::ToolCallMessage { .. })); + assert!(has_output, "Canned response query should produce output"); + } +} + +#[tokio::test] +async fn test_empty_messages_safety_check() { + let config = match get_test_config() { + Some(c) => c, + None => { + println!("[SKIP] empty_messages_safety_check: BEDROCK_INTEGRATION_TEST not set"); + return; + } + }; + + let model = get_test_model(); + let client = BedrockClient::from_config(config) + .await + .expect("client creation should succeed"); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("Please proceed with the requested task.".into()), + }]; + + let task_id = uuid::Uuid::new_v4().to_string(); + let stream = client + .converse_stream( + &model, + &task_id, + true, + messages, + None, + vec![], + 100, + None, + true, + ) + .await + .expect("safety fallback message should work"); + + let mut had_finished = false; + let mut stream = stream; + while let Some(event_result) = stream.next().await { + let event = event_result.expect("event ok"); + if matches!(event.r#type, Some(api::response_event::Type::Finished(_))) { + had_finished = true; + } + } + + assert!( + had_finished, + "Safety fallback should produce a complete stream" + ); +} + +/// Full round-trip test: builds a proto Request with tool call + tool result history, +/// runs through extract_messages_from_request → converse_stream, verifying the whole +/// pipeline handles tool_call_id matching correctly. +#[tokio::test] +async fn test_full_proto_round_trip_with_tool_history() { + let config = match get_test_config() { + Some(c) => c, + None => { + println!("[SKIP] full_proto_round_trip: BEDROCK_INTEGRATION_TEST not set"); + return; + } + }; + + let model = get_test_model(); + let task_id = uuid::Uuid::new_v4().to_string(); + let tool_call_id_1 = "tooluse_test_001"; + let tool_call_id_2 = "tooluse_test_002"; + + let request = make_request( + &task_id, + vec![ + make_user_query_message("msg-1", &task_id, "List all files in the current directory."), + make_tool_call_run_shell(tool_call_id_1, &task_id, tool_call_id_1, "ls -la"), + make_tool_call_read_files(tool_call_id_2, &task_id, tool_call_id_2, "README.md"), + make_tool_result_shell( + "msg-result-1", &task_id, tool_call_id_1, + "total 16\ndrwxr-xr-x 5 user staff 160 May 6 10:00 .\n-rw-r--r-- 1 user staff 100 May 6 10:00 README.md\n-rw-r--r-- 1 user staff 200 May 6 10:00 Cargo.toml", + 0, + ), + make_tool_result_read_files( + "msg-result-2", &task_id, tool_call_id_2, + "README.md", "# Sample Project\nA test project.", + ), + ], + make_user_inputs_input("Now summarize what you found in one sentence."), + &model, + ); + + let messages = super::convert_request::extract_messages_from_request(&request); + let system_prompt = super::convert_request::extract_system_prompt(&request); + let tools = super::convert_request::extract_tools(&request); + + println!("\n=== FULL PROTO ROUND-TRIP TEST ==="); + println!("Extracted {} messages:", messages.len()); + for (i, msg) in messages.iter().enumerate() { + let desc = match &msg.content { + MessageContent::Text(t) => format!("Text({}chars)", t.len()), + MessageContent::ToolUse { + tool_use_id, name, .. + } => { + format!("ToolUse(name={}, id={})", name, tool_use_id) + } + MessageContent::ToolResult { + tool_use_id, + is_error, + .. + } => { + format!("ToolResult(id={}, is_error={})", tool_use_id, is_error) + } + MessageContent::MultiPart(parts) => format!("MultiPart({} parts)", parts.len()), + }; + println!(" msg[{}]: role={:?}, content={}", i, msg.role, desc); + } + println!("System prompt: {:?}", system_prompt.is_some()); + println!("Tools: {}", tools.len()); + + assert!( + messages.len() >= 4, + "Should have user + assistant tool calls + user tool results + follow-up user" + ); + + let has_tool_use = messages + .iter() + .any(|m| matches!(m.content, MessageContent::ToolUse { .. })); + let has_tool_result = messages + .iter() + .any(|m| matches!(m.content, MessageContent::ToolResult { .. })); + assert!(has_tool_use, "Should have ToolUse messages from history"); + assert!( + has_tool_result, + "Should have ToolResult messages from history" + ); + + let tool_use_ids: Vec<&str> = messages + .iter() + .filter_map(|m| { + if let MessageContent::ToolUse { tool_use_id, .. } = &m.content { + Some(tool_use_id.as_str()) + } else { + None + } + }) + .collect(); + let tool_result_ids: Vec<&str> = messages + .iter() + .filter_map(|m| { + if let MessageContent::ToolResult { tool_use_id, .. } = &m.content { + Some(tool_use_id.as_str()) + } else { + None + } + }) + .collect(); + + println!("ToolUse IDs: {:?}", tool_use_ids); + println!("ToolResult IDs: {:?}", tool_result_ids); + + for use_id in &tool_use_ids { + assert!( + tool_result_ids.contains(use_id), + "ToolUse ID {} has no matching ToolResult", + use_id + ); + } + + let client = BedrockClient::from_config(config) + .await + .expect("client creation should succeed"); + + let stream_result = client + .converse_stream( + &model, + &task_id, + false, + messages, + system_prompt, + tools, + 1024, + None, + true, + ) + .await; + + match stream_result { + Ok(mut stream) => { + let mut text = String::new(); + let mut had_finished = false; + while let Some(event_result) = stream.next().await { + match event_result { + Ok(event) => { + if let Some(api::response_event::Type::Finished(_)) = &event.r#type { + had_finished = true; + } + if let Some(api::response_event::Type::ClientActions(actions)) = + &event.r#type + { + for action in &actions.actions { + if let Some(api::client_action::Action::AddMessagesToTask(add)) = + &action.action + { + for msg in &add.messages { + if let Some(api::message::Message::AgentOutput(output)) = + &msg.message + { + text.push_str(&output.text); + } + } + } + if let Some(api::client_action::Action::AppendToMessageContent( + append, + )) = &action.action + { + if let Some(msg) = &append.message { + if let Some(api::message::Message::AgentOutput(output)) = + &msg.message + { + text.push_str(&output.text); + } + } + } + } + } + } + Err(e) => { + panic!("Stream error (this is the bug we're testing for): {:?}", e); + } + } + } + assert!(had_finished, "Stream should finish normally"); + assert!( + !text.is_empty(), + "Model should produce a summary response, got: {}", + text + ); + println!("SUCCESS! Model response: {}", &text[..text.len().min(200)]); + } + Err(e) => { + panic!( + "converse_stream failed (likely toolResult ID mismatch): {:?}", + e + ); + } + } +} + +/// Tests that the message extraction correctly handles the ToolCall → ToolCallResult +/// tool_call_id mapping WITHOUT hitting the real API. +#[tokio::test] +async fn test_proto_tool_call_id_mapping() { + let task_id = "test-task-id"; + let tool_call_id = "tooluse_ABC123xyz"; + + let request = make_request( + task_id, + vec![ + make_user_query_message("msg-1", task_id, "Hello"), + make_tool_call_run_shell(tool_call_id, task_id, tool_call_id, "echo hi"), + make_tool_result_shell("msg-result-1", task_id, tool_call_id, "hi", 0), + ], + make_user_inputs_input("Thanks!"), + "", + ); + + let messages = super::convert_request::extract_messages_from_request(&request); + + println!("\n=== PROTO TOOL_CALL_ID MAPPING TEST ==="); + for (i, msg) in messages.iter().enumerate() { + println!( + " msg[{}]: role={:?}, content={:?}", + i, + msg.role, + match &msg.content { + MessageContent::Text(t) => format!("Text('{}')", t), + MessageContent::ToolUse { + tool_use_id, name, .. + } => format!("ToolUse(id={}, name={})", tool_use_id, name), + MessageContent::ToolResult { tool_use_id, .. } => + format!("ToolResult(id={})", tool_use_id), + MessageContent::MultiPart(parts) => format!("MultiPart({} parts)", parts.len()), + } + ); + } + + assert_eq!(messages.len(), 4); + assert_eq!(messages[0].role, MessageRole::User); + assert_eq!(messages[1].role, MessageRole::Assistant); + assert_eq!(messages[2].role, MessageRole::User); + assert_eq!(messages[3].role, MessageRole::User); + + if let MessageContent::ToolUse { + tool_use_id, name, .. + } = &messages[1].content + { + assert_eq!( + tool_use_id, tool_call_id, + "ToolUse must use tool_call.tool_call_id, not msg.id" + ); + assert_eq!(name, "run_shell_command"); + } else { + panic!( + "messages[1] should be ToolUse, got {:?}", + messages[1].content + ); + } + + if let MessageContent::ToolResult { tool_use_id, .. } = &messages[2].content { + assert_eq!( + tool_use_id, tool_call_id, + "ToolResult must use result.tool_call_id" + ); + } else { + panic!( + "messages[2] should be ToolResult, got {:?}", + messages[2].content + ); + } +} + +/// Tests a scenario where msg.id != tool_call.tool_call_id (edge case). +/// The code MUST use tool_call.tool_call_id, not msg.id. +#[tokio::test] +async fn test_tool_call_id_uses_proto_field_not_message_id() { + let task_id = "task-123"; + let message_id = "msg-uuid-different-from-tool-id"; + let tool_call_id = "tooluse_BedrockAssignedId"; + + let request = api::Request { + task_context: Some(api::request::TaskContext { + tasks: vec![api::Task { + id: task_id.into(), + description: String::new(), + dependencies: None, + messages: vec![ + make_user_query_message("msg-0", task_id, "Do something"), + { + let mut msg = + make_tool_call_run_shell(message_id, task_id, tool_call_id, "pwd"); + msg.id = message_id.into(); + msg + }, + make_tool_result_shell("msg-result", task_id, tool_call_id, "/home/user", 0), + ], + summary: String::new(), + server_data: String::new(), + }], + }), + input: Some(make_user_inputs_input("Done")), + settings: None, + metadata: None, + existing_suggestions: None, + mcp_context: None, + }; + + let messages = super::convert_request::extract_messages_from_request(&request); + + let tool_use_msg = messages + .iter() + .find(|m| matches!(m.content, MessageContent::ToolUse { .. })) + .unwrap(); + let tool_result_msg = messages + .iter() + .find(|m| matches!(m.content, MessageContent::ToolResult { .. })) + .unwrap(); + + if let MessageContent::ToolUse { tool_use_id, .. } = &tool_use_msg.content { + assert_eq!( + tool_use_id, tool_call_id, + "MUST use tool_call.tool_call_id ('{}'), NOT msg.id ('{}')", + tool_call_id, message_id + ); + } + if let MessageContent::ToolResult { tool_use_id, .. } = &tool_result_msg.content { + assert_eq!(tool_use_id, tool_call_id); + } +} diff --git a/app/src/ai/bedrock/integration_tests.rs b/app/src/ai/bedrock/integration_tests.rs new file mode 100644 index 00000000..608dffbb --- /dev/null +++ b/app/src/ai/bedrock/integration_tests.rs @@ -0,0 +1,604 @@ +use futures::StreamExt; +use serde_json::json; + +use super::client::{BedrockClient, BedrockClientConfig}; +use super::convert::{ConversationMessage, MessageContent, MessageRole, ToolDefinition}; +use crate::settings::ai::BedrockAuthMethod; + +fn get_test_config() -> Option { + if std::env::var("BEDROCK_INTEGRATION_TEST").is_err() { + return None; + } + + let profile = + std::env::var("BEDROCK_TEST_PROFILE").unwrap_or_else(|_| "coding-assistant".into()); + let region = std::env::var("BEDROCK_TEST_REGION").unwrap_or_else(|_| "us-east-1".into()); + + Some(BedrockClientConfig { + auth_method: BedrockAuthMethod::Profile, + profile, + region, + access_key_id: String::new(), + secret_access_key: String::new(), + cross_region_inference: false, + fallback_to_warp: false, + }) +} + +fn get_test_model() -> String { + std::env::var("BEDROCK_TEST_MODEL").unwrap_or_else(|_| { + "arn:aws:bedrock:us-east-1:156729649053:application-inference-profile/fma5bsw4oxhy".into() + }) +} + +struct StreamOutput { + text: String, + tool_calls: Vec, + finished_reason: Option, + total_tokens: u32, +} + +#[derive(Debug)] +struct ToolCallInfo { + name: String, + input_json: String, +} + +async fn collect_stream_output( + client: &BedrockClient, + model: &str, + messages: Vec, + system_prompt: Option, + tools: Vec, +) -> StreamOutput { + let stream = client + .converse_stream( + model, + "test-task-id", + true, + messages, + system_prompt, + tools, + 8192, + None, + false, + ) + .await + .expect("converse_stream should succeed"); + + let mut text = String::new(); + let tool_calls = Vec::new(); + let mut finished_reason = None; + let mut total_tokens = 0u32; + + let mut stream = stream; + while let Some(event) = stream.next().await { + let event = event.expect("stream event should be Ok"); + if let Some(event_type) = event.r#type { + use warp_multi_agent_api::response_event::Type; + match event_type { + Type::ClientActions(actions) => { + for action in actions.actions { + if let Some(action_type) = action.action { + use warp_multi_agent_api::client_action::Action; + match action_type { + Action::AddMessagesToTask(add) => { + for msg in add.messages { + if let Some(msg_content) = msg.message { + use warp_multi_agent_api::message::Message; + match msg_content { + Message::AgentOutput(output) => { + text.push_str(&output.text); + } + _ => {} + } + } + } + } + Action::AppendToMessageContent(append) => { + if let Some(msg) = append.message { + if let Some(msg_content) = msg.message { + use warp_multi_agent_api::message::Message; + if let Message::AgentOutput(output) = msg_content { + text.push_str(&output.text); + } + } + } + } + _ => {} + } + } + } + } + Type::Finished(finished) => { + finished_reason = Some(format!("{:?}", finished.reason)); + if let Some(meta) = finished.conversation_usage_metadata { + if let Some(usage) = meta.byok_token_usage.get("bedrock") { + total_tokens = usage.total_tokens; + } + } + } + _ => {} + } + } + } + + StreamOutput { + text, + tool_calls, + finished_reason, + total_tokens, + } +} + +#[tokio::test] +async fn test_simple_text_response() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("Say exactly: Hello there, how are you?".into()), + }]; + + let output = collect_stream_output(&client, &model, messages, None, vec![]).await; + println!("[test] Text output: {:?}", output.text); + println!("[test] Finished reason: {:?}", output.finished_reason); + println!("[test] Total tokens: {}", output.total_tokens); + + assert!(!output.text.is_empty(), "Expected non-empty text response"); + assert!( + output.finished_reason.is_some(), + "Expected stream to finish" + ); +} + +#[tokio::test] +async fn test_simple_with_system_prompt() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("What is your name?".into()), + }]; + + let output = collect_stream_output( + &client, + &model, + messages, + Some("You are a helpful assistant named Warp.".into()), + vec![], + ) + .await; + println!("[test] Text output: {:?}", output.text); + + assert!(!output.text.is_empty()); + assert!( + output.text.to_lowercase().contains("warp"), + "Expected response to mention 'Warp', got: {}", + &output.text[..output.text.len().min(200)] + ); +} + +#[tokio::test] +async fn test_tool_call_round_trip() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let tools = vec![ToolDefinition { + name: "list_files".into(), + description: "List files in a directory".into(), + input_schema: json!({ + "type": "object", + "properties": { + "path": { "type": "string", "description": "Directory path" } + }, + "required": ["path"] + }), + }]; + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("List the files in the /project directory.".into()), + }]; + + let output = collect_stream_output(&client, &model, messages, None, tools).await; + println!( + "[test] Text: {:?}", + &output.text[..output.text.len().min(200)] + ); + println!("[test] Tool calls: {:?}", output.tool_calls); + println!("[test] Finished: {:?}", output.finished_reason); + + assert!( + !output.text.is_empty() || !output.tool_calls.is_empty(), + "Expected either text or a tool call" + ); +} + +#[tokio::test] +async fn test_multi_turn_with_tool_result() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let tools = vec![ToolDefinition { + name: "list_files".into(), + description: "List files in a directory".into(), + input_schema: json!({ + "type": "object", + "properties": { + "path": { "type": "string", "description": "Directory path" } + }, + "required": ["path"] + }), + }]; + + let messages = vec![ + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "List files in /project and tell me what you see.".into(), + ), + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::ToolUse { + tool_use_id: "tool_1".into(), + name: "list_files".into(), + input: json!({"path": "/project"}), + }, + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: "tool_1".into(), + content: "README.md\nsrc/\nCargo.toml\n.gitignore".into(), + is_error: false, + }, + }, + ]; + + let output = collect_stream_output(&client, &model, messages, None, tools).await; + println!( + "[test] Text after tool result: {:?}", + &output.text[..output.text.len().min(300)] + ); + + assert!( + !output.text.is_empty(), + "Expected text response after tool result" + ); +} + +#[tokio::test] +async fn test_multi_turn_conversation_with_tools() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let tools = vec![ + ToolDefinition { + name: "list_files".into(), + description: "List files in a directory".into(), + input_schema: json!({ + "type": "object", + "properties": { + "path": { "type": "string", "description": "Directory path" } + }, + "required": ["path"] + }), + }, + ToolDefinition { + name: "read_file".into(), + description: "Read contents of a file".into(), + input_schema: json!({ + "type": "object", + "properties": { + "path": { "type": "string", "description": "File path" } + }, + "required": ["path"] + }), + }, + ToolDefinition { + name: "run_command".into(), + description: "Run a shell command".into(), + input_schema: json!({ + "type": "object", + "properties": { + "command": { "type": "string", "description": "Shell command" } + }, + "required": ["command"] + }), + }, + ]; + + let system = Some("You are a helpful coding assistant.".into()); + + // Turn 1: Ask model to inspect project + let turn1_messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Inspect this project and tell me what it does. Start by listing files in /project." + .into(), + ), + }]; + + let turn1 = collect_stream_output( + &client, + &model, + turn1_messages, + system.clone(), + tools.clone(), + ) + .await; + println!( + "[test] Turn 1 text: {:?}", + &turn1.text[..turn1.text.len().min(200)] + ); + println!("[test] Turn 1 tool_calls: {:?}", turn1.tool_calls); + + // Turn 2: Provide tool result, continue + let turn2_messages = vec![ + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Inspect this project and tell me what it does. Start by listing files in /project." + .into(), + ), + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::ToolUse { + tool_use_id: "tool_turn1".into(), + name: "list_files".into(), + input: json!({"path": "/project"}), + }, + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: "tool_turn1".into(), + content: "README.md\nsrc/main.rs\nsrc/lib.rs\nCargo.toml\ntests/\n.gitignore".into(), + is_error: false, + }, + }, + ]; + + let turn2 = collect_stream_output( + &client, + &model, + turn2_messages, + system.clone(), + tools.clone(), + ) + .await; + println!( + "[test] Turn 2 text: {:?}", + &turn2.text[..turn2.text.len().min(200)] + ); + println!("[test] Turn 2 tool_calls: {:?}", turn2.tool_calls); + + // Turn 3: Provide README content and ask for summary + let turn3_messages = vec![ + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Inspect this project and tell me what it does. Start by listing files in /project." + .into(), + ), + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::ToolUse { + tool_use_id: "tool_turn1".into(), + name: "list_files".into(), + input: json!({"path": "/project"}), + }, + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: "tool_turn1".into(), + content: "README.md\nsrc/main.rs\nsrc/lib.rs\nCargo.toml\ntests/\n.gitignore".into(), + is_error: false, + }, + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::ToolUse { + tool_use_id: "tool_turn2".into(), + name: "read_file".into(), + input: json!({"path": "/project/README.md"}), + }, + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: "tool_turn2".into(), + content: "# My CLI Tool\n\nA Rust command-line tool for managing developer workflows.\n\n## Features\n- Task tracking\n- Git integration\n- Custom scripts\n\n## Usage\n```\ncargo run -- \n```".into(), + is_error: false, + }, + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text( + "Based on what you've seen, give me a brief summary of this project. Do not use any tools." + .into(), + ), + }, + ]; + + let turn3 = collect_stream_output( + &client, + &model, + turn3_messages, + system.clone(), + tools.clone(), + ) + .await; + println!( + "[test] Turn 3 text: {:?}", + &turn3.text[..turn3.text.len().min(500)] + ); + + assert!( + !turn3.text.is_empty() || !turn3.tool_calls.is_empty(), + "Expected final summary or tool use after multi-turn conversation" + ); +} + +#[tokio::test] +async fn test_tool_error_recovery() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let tools = vec![ToolDefinition { + name: "read_file".into(), + description: "Read contents of a file".into(), + input_schema: json!({ + "type": "object", + "properties": { + "path": { "type": "string", "description": "File path" } + }, + "required": ["path"] + }), + }]; + + let messages = vec![ + ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("Read the file /project/config.yaml".into()), + }, + ConversationMessage { + role: MessageRole::Assistant, + content: MessageContent::ToolUse { + tool_use_id: "tool_err".into(), + name: "read_file".into(), + input: json!({"path": "/project/config.yaml"}), + }, + }, + ConversationMessage { + role: MessageRole::User, + content: MessageContent::ToolResult { + tool_use_id: "tool_err".into(), + content: "Error: File not found: /project/config.yaml".into(), + is_error: true, + }, + }, + ]; + + let output = collect_stream_output(&client, &model, messages, None, tools).await; + println!( + "[test] Error recovery text: {:?}", + &output.text[..output.text.len().min(300)] + ); + + assert!( + !output.text.is_empty(), + "Expected model to respond to tool error" + ); +} + +#[tokio::test] +async fn test_arn_based_model() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let arn = std::env::var("BEDROCK_TEST_ARN").unwrap_or_else(|_| { + "arn:aws:bedrock:us-east-1:156729649053:application-inference-profile/1tim45pgo320".into() + }); + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("Reply with the single word: confirmed".into()), + }]; + + let output = collect_stream_output(&client, &arn, messages, None, vec![]).await; + println!("[test] ARN model text: {:?}", output.text); + + assert!( + !output.text.is_empty(), + "Expected response from ARN-based model" + ); +} + +#[tokio::test] +async fn test_reasoning_model_output() { + let Some(config) = get_test_config() else { + eprintln!("Skipping: BEDROCK_INTEGRATION_TEST not set"); + return; + }; + + let client = BedrockClient::from_config(config) + .await + .expect("client creation"); + let model = get_test_model(); + + let messages = vec![ConversationMessage { + role: MessageRole::User, + content: MessageContent::Text("What is 15 * 37? Show your reasoning step by step.".into()), + }]; + + let output = collect_stream_output(&client, &model, messages, None, vec![]).await; + println!( + "[test] Reasoning model text ({} chars): {:?}", + output.text.len(), + &output.text[..output.text.len().min(500)] + ); + println!("[test] Finished: {:?}", output.finished_reason); + + assert!(!output.text.is_empty(), "Expected reasoning output"); + assert!( + output.text.contains("555"), + "Expected correct answer (555) in output, got: {}", + &output.text[..output.text.len().min(300)] + ); +} diff --git a/app/src/ai/bedrock/mod.rs b/app/src/ai/bedrock/mod.rs index 3a8352d7..3f7b71ef 100644 --- a/app/src/ai/bedrock/mod.rs +++ b/app/src/ai/bedrock/mod.rs @@ -1,6 +1,7 @@ pub mod client; pub mod convert; pub mod convert_request; +pub mod diagnostic; pub mod discovery; pub mod models; pub mod stream; @@ -8,6 +9,10 @@ pub mod stream; #[cfg(test)] mod convert_tests; #[cfg(test)] +mod e2e_tests; +#[cfg(test)] +mod integration_tests; +#[cfg(test)] mod models_tests; #[cfg(test)] mod stream_tests; diff --git a/app/src/ai/bedrock/models_tests.rs b/app/src/ai/bedrock/models_tests.rs index df9e590f..4f777d28 100644 --- a/app/src/ai/bedrock/models_tests.rs +++ b/app/src/ai/bedrock/models_tests.rs @@ -20,7 +20,10 @@ fn test_cross_region_prefix_eu_west() { #[test] fn test_cross_region_prefix_ap_northeast_1() { assert_eq!( - apply_cross_region_prefix("anthropic.claude-3-5-sonnet-20241022-v1:0", "ap-northeast-1"), + apply_cross_region_prefix( + "anthropic.claude-3-5-sonnet-20241022-v1:0", + "ap-northeast-1" + ), "jp.anthropic.claude-3-5-sonnet-20241022-v1:0" ); } @@ -28,7 +31,10 @@ fn test_cross_region_prefix_ap_northeast_1() { #[test] fn test_cross_region_prefix_ap_southeast_2() { assert_eq!( - apply_cross_region_prefix("anthropic.claude-3-5-sonnet-20241022-v1:0", "ap-southeast-2"), + apply_cross_region_prefix( + "anthropic.claude-3-5-sonnet-20241022-v1:0", + "ap-southeast-2" + ), "au.anthropic.claude-3-5-sonnet-20241022-v1:0" ); } @@ -36,7 +42,10 @@ fn test_cross_region_prefix_ap_southeast_2() { #[test] fn test_cross_region_prefix_ap_southeast_1() { assert_eq!( - apply_cross_region_prefix("anthropic.claude-3-5-sonnet-20241022-v1:0", "ap-southeast-1"), + apply_cross_region_prefix( + "anthropic.claude-3-5-sonnet-20241022-v1:0", + "ap-southeast-1" + ), "apac.anthropic.claude-3-5-sonnet-20241022-v1:0" ); } @@ -131,8 +140,7 @@ fn test_is_bedrock_model_arn() { #[test] fn test_cross_region_prefix_skips_arn() { - let arn = - "arn:aws:bedrock:us-east-1:156729649053:application-inference-profile/fma5bsw4oxhy"; + let arn = "arn:aws:bedrock:us-east-1:156729649053:application-inference-profile/fma5bsw4oxhy"; assert_eq!(apply_cross_region_prefix(arn, "us-east-1"), arn); } diff --git a/app/src/ai/bedrock/stream.rs b/app/src/ai/bedrock/stream.rs index e6b6739c..254cc74c 100644 --- a/app/src/ai/bedrock/stream.rs +++ b/app/src/ai/bedrock/stream.rs @@ -13,26 +13,50 @@ use warp_multi_agent_api::{self as api, ClientAction, ResponseEvent}; use crate::ai::agent::api::Event; use crate::server::server_api::AIApiError; +use super::diagnostic::BedrockDiagnosticLogger; + pub fn bedrock_stream_to_response_events( mut output: ConverseStreamOutput, task_id: String, + needs_create_task: bool, + diagnostic_logger: Option>, ) -> BoxStream<'static, Event> { let request_id = Uuid::new_v4().to_string(); let conversation_id = Uuid::new_v4().to_string(); + if let Some(ref logger) = diagnostic_logger { + logger.set_ids(&conversation_id, &request_id); + } + let stream = async_stream::stream! { - log::info!("[bedrock] Stream started: task_id={task_id}, request_id={request_id}"); + log::info!("[bedrock] Stream started: task_id={task_id}, request_id={request_id}, needs_create_task={needs_create_task}"); + + if let Some(ref logger) = diagnostic_logger { + logger.log_stream_event(&format!("StreamInit: request_id={request_id}, conversation_id={conversation_id}")); + } + let init_event = build_stream_init(&request_id, &conversation_id); yield Ok(init_event); + if needs_create_task { + log::debug!("[bedrock] Emitting CreateTask to upgrade optimistic root task"); + let create_task_event = build_create_task(&task_id); + yield Ok(create_task_event); + } + let mut current_text_message_id: Option = None; + let mut buffered_text = String::new(); + let mut text_flushed = false; let mut current_tool_use_id = String::new(); let mut current_tool_name = String::new(); let mut current_tool_input_json = String::new(); + let mut has_tool_calls = false; let mut input_tokens: i32 = 0; let mut output_tokens: i32 = 0; let mut stop_reason = stream_finished::Reason::Done(stream_finished::Done {}); + const TEXT_FLUSH_THRESHOLD: usize = 20; + loop { match output.stream.recv().await { Ok(Some(event)) => match event { @@ -41,6 +65,24 @@ pub fn bedrock_stream_to_response_events( if let Some(start) = block_start.start() { match start { ContentBlockStart::ToolUse(tool_start) => { + has_tool_calls = true; + if !text_flushed && !buffered_text.is_empty() { + if buffered_text.len() >= TEXT_FLUSH_THRESHOLD { + let msg_id = Uuid::new_v4().to_string(); + current_text_message_id = Some(msg_id.clone()); + text_flushed = true; + log::debug!("[bedrock] Flushing buffered text ({} chars) before tool call", buffered_text.len()); + let add_msg = build_add_agent_output_message( + &task_id, + &msg_id, + &buffered_text, + ); + yield Ok(add_msg); + } else { + log::debug!("[bedrock] Discarding short text fragment ({} chars) before tool call: {:?}", buffered_text.len(), &buffered_text); + } + buffered_text.clear(); + } current_tool_use_id = tool_start.tool_use_id().to_string(); current_tool_name = tool_start.name().to_string(); current_tool_input_json.clear(); @@ -54,17 +96,7 @@ pub fn bedrock_stream_to_response_events( match d { ContentBlockDelta::Text(text) => { log::trace!("[bedrock] Text delta ({} chars): {:?}", text.len(), &text[..text.len().min(100)]); - if current_text_message_id.is_none() { - let msg_id = Uuid::new_v4().to_string(); - current_text_message_id = Some(msg_id.clone()); - log::debug!("[bedrock] First text chunk, creating message msg_id={msg_id}"); - let add_msg = build_add_agent_output_message( - &task_id, - &msg_id, - text, - ); - yield Ok(add_msg); - } else { + if text_flushed { let msg_id = current_text_message_id.as_ref().unwrap(); let append = build_append_text( &task_id, @@ -72,30 +104,26 @@ pub fn bedrock_stream_to_response_events( text, ); yield Ok(append); + } else { + buffered_text.push_str(text); + if buffered_text.len() >= TEXT_FLUSH_THRESHOLD { + let msg_id = Uuid::new_v4().to_string(); + current_text_message_id = Some(msg_id.clone()); + text_flushed = true; + log::debug!("[bedrock] Text reached flush threshold, creating message msg_id={msg_id}"); + let add_msg = build_add_agent_output_message( + &task_id, + &msg_id, + &buffered_text, + ); + yield Ok(add_msg); + buffered_text.clear(); + } } } ContentBlockDelta::ReasoningContent(reasoning) => { if let ReasoningContentBlockDelta::Text(text) = reasoning { - log::trace!("[bedrock] Reasoning delta ({} chars)", text.len()); - if current_text_message_id.is_none() { - let msg_id = Uuid::new_v4().to_string(); - current_text_message_id = Some(msg_id.clone()); - log::debug!("[bedrock] First reasoning chunk, creating message msg_id={msg_id}"); - let add_msg = build_add_agent_output_message( - &task_id, - &msg_id, - text, - ); - yield Ok(add_msg); - } else { - let msg_id = current_text_message_id.as_ref().unwrap(); - let append = build_append_text( - &task_id, - msg_id, - text, - ); - yield Ok(append); - } + log::trace!("[bedrock] Reasoning delta ({} chars) - not displayed to user", text.len()); } } ContentBlockDelta::ToolUse(tool_delta) => { @@ -108,6 +136,12 @@ pub fn bedrock_stream_to_response_events( StreamEvent::ContentBlockStop(_) => { if !current_tool_use_id.is_empty() { log::debug!("[bedrock] Tool call complete: {} ({})", current_tool_name, current_tool_use_id); + if let Some(ref logger) = diagnostic_logger { + logger.log_stream_event(&format!( + "ToolCall: name={}, id={}, input={}", + current_tool_name, current_tool_use_id, current_tool_input_json + )); + } let tool_msg = build_tool_call_message( &task_id, ¤t_tool_use_id, @@ -150,6 +184,9 @@ pub fn bedrock_stream_to_response_events( } Err(e) => { log::error!("[bedrock] Stream error: {e}"); + if let Some(ref logger) = diagnostic_logger { + logger.log_stream_error(&format!("{e}")); + } yield Err(Arc::new(AIApiError::Stream { stream_type: "bedrock_converse", source: anyhow::anyhow!("Bedrock stream error: {}", e), @@ -159,7 +196,24 @@ pub fn bedrock_stream_to_response_events( } } + if !text_flushed && !buffered_text.is_empty() && !has_tool_calls { + let msg_id = Uuid::new_v4().to_string(); + log::debug!("[bedrock] Flushing remaining buffered text ({} chars) at stream end", buffered_text.len()); + let add_msg = build_add_agent_output_message(&task_id, &msg_id, &buffered_text); + yield Ok(add_msg); + } else if !text_flushed && !buffered_text.is_empty() && has_tool_calls { + log::debug!("[bedrock] Discarding short unflushed text ({} chars) - stream ended with tool calls", buffered_text.len()); + } + log::info!("[bedrock] Stream finished: input_tokens={input_tokens}, output_tokens={output_tokens}"); + if let Some(ref logger) = diagnostic_logger { + let stop_reason_str = match &stop_reason { + stream_finished::Reason::Done(_) => "EndTurn", + stream_finished::Reason::MaxTokenLimit(_) => "MaxTokens", + _ => "Other", + }; + logger.log_result_success(input_tokens, output_tokens, stop_reason_str); + } let finished_event = build_stream_finished(stop_reason, input_tokens, output_tokens); yield Ok(finished_event); }; @@ -167,6 +221,31 @@ pub fn bedrock_stream_to_response_events( Box::pin(stream) } +pub(crate) fn build_create_task(task_id: &str) -> ResponseEvent { + let task = api::Task { + id: task_id.to_string(), + description: String::new(), + dependencies: None, + messages: vec![], + summary: String::new(), + server_data: String::new(), + }; + + let action = ClientAction { + action: Some(api::client_action::Action::CreateTask( + api::client_action::CreateTask { task: Some(task) }, + )), + }; + + ResponseEvent { + r#type: Some(api::response_event::Type::ClientActions( + api::response_event::ClientActions { + actions: vec![action], + }, + )), + } +} + pub(super) fn build_stream_init(request_id: &str, conversation_id: &str) -> ResponseEvent { ResponseEvent { r#type: Some(api::response_event::Type::Init( @@ -304,22 +383,153 @@ fn build_tool_call_message( tool_name: &str, tool_input_json: &str, ) -> ResponseEvent { - let _tool_use_id = tool_use_id.to_string(); - let _tool_name = tool_name.to_string(); - let _tool_input_json = tool_input_json.to_string(); + let input: serde_json::Value = + serde_json::from_str(tool_input_json).unwrap_or(serde_json::json!({})); - let message = api::Message { - id: Uuid::new_v4().to_string(), - task_id: task_id.to_string(), - request_id: String::new(), - timestamp: None, - server_message_data: String::new(), - citations: vec![], - message: Some(api::message::Message::AgentOutput( - api::message::AgentOutput { - text: format!("[Tool call: {} ({})]", _tool_name, _tool_use_id), - }, - )), + let tool = match tool_name { + "run_shell_command" => { + let command = input + .get("command") + .and_then(|v| v.as_str()) + .unwrap_or("") + .to_string(); + Some(api::message::tool_call::Tool::RunShellCommand( + api::message::tool_call::RunShellCommand { + command, + is_read_only: false, + uses_pager: false, + citations: vec![], + is_risky: false, + risk_category: 0, + wait_until_complete_value: None, + }, + )) + } + "read_files" => { + let files = input + .get("files") + .and_then(|v| v.as_array()) + .map(|arr| { + arr.iter() + .filter_map(|f| f.as_str()) + .map(|name| api::message::tool_call::read_files::File { + name: name.to_string(), + line_ranges: vec![], + }) + .collect() + }) + .unwrap_or_default(); + Some(api::message::tool_call::Tool::ReadFiles( + api::message::tool_call::ReadFiles { files }, + )) + } + "apply_file_diffs" => { + let diffs = input + .get("diffs") + .and_then(|v| v.as_array()) + .map(|arr| { + arr.iter() + .filter_map(|d| { + Some(api::message::tool_call::apply_file_diffs::FileDiff { + file_path: d.get("file_path")?.as_str()?.to_string(), + search: d + .get("search") + .and_then(|v| v.as_str()) + .unwrap_or("") + .to_string(), + replace: d + .get("replace") + .and_then(|v| v.as_str()) + .unwrap_or("") + .to_string(), + }) + }) + .collect() + }) + .unwrap_or_default(); + Some(api::message::tool_call::Tool::ApplyFileDiffs( + api::message::tool_call::ApplyFileDiffs { + summary: String::new(), + diffs, + new_files: vec![], + deleted_files: vec![], + v4a_updates: vec![], + }, + )) + } + "grep" => { + let queries = input + .get("queries") + .and_then(|v| v.as_array()) + .map(|arr| { + arr.iter() + .filter_map(|q| q.as_str().map(String::from)) + .collect() + }) + .unwrap_or_default(); + let path = input + .get("path") + .and_then(|v| v.as_str()) + .unwrap_or("") + .to_string(); + Some(api::message::tool_call::Tool::Grep( + api::message::tool_call::Grep { queries, path }, + )) + } + "file_glob" => { + let patterns = input + .get("patterns") + .and_then(|v| v.as_array()) + .map(|arr| { + arr.iter() + .filter_map(|p| p.as_str().map(String::from)) + .collect() + }) + .unwrap_or_default(); + #[allow(deprecated)] + Some(api::message::tool_call::Tool::FileGlob( + api::message::tool_call::FileGlob { + patterns, + path: String::new(), + }, + )) + } + _ => { + log::warn!("[bedrock] Unknown tool name: {tool_name}, emitting as text"); + None + } + }; + + let message = if let Some(tool_variant) = tool { + api::Message { + id: tool_use_id.to_string(), + task_id: task_id.to_string(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::ToolCall(api::message::ToolCall { + tool_call_id: tool_use_id.to_string(), + tool: Some(tool_variant), + })), + } + } else { + api::Message { + id: Uuid::new_v4().to_string(), + task_id: task_id.to_string(), + request_id: String::new(), + timestamp: None, + server_message_data: String::new(), + citations: vec![], + message: Some(api::message::Message::AgentOutput( + api::message::AgentOutput { + text: format!( + "[Tool call: {} ({})]\nInput: {}", + tool_name, tool_use_id, tool_input_json + ), + }, + )), + } }; let action = ClientAction { @@ -339,5 +549,3 @@ fn build_tool_call_message( )), } } - - diff --git a/app/src/ai/bedrock/stream_tests.rs b/app/src/ai/bedrock/stream_tests.rs index d6a8cc37..0d1b863c 100644 --- a/app/src/ai/bedrock/stream_tests.rs +++ b/app/src/ai/bedrock/stream_tests.rs @@ -29,7 +29,14 @@ fn test_build_stream_finished_done_reason() { )); assert!(!finished.should_refresh_model_config); let metadata = finished.conversation_usage_metadata.unwrap(); - assert_eq!(metadata.byok_token_usage.get("bedrock").unwrap().total_tokens, 150); + assert_eq!( + metadata + .byok_token_usage + .get("bedrock") + .unwrap() + .total_tokens, + 150 + ); } other => panic!("Expected Finished event, got {:?}", other), } @@ -37,8 +44,7 @@ fn test_build_stream_finished_done_reason() { #[test] fn test_build_stream_finished_max_token_limit() { - let reason = - stream_finished::Reason::MaxTokenLimit(stream_finished::ReachedMaxTokenLimit {}); + let reason = stream_finished::Reason::MaxTokenLimit(stream_finished::ReachedMaxTokenLimit {}); let event = build_stream_finished(reason, 200, 100); match event.r#type { @@ -67,3 +73,40 @@ fn test_build_stream_finished_other_reason() { other => panic!("Expected Finished event, got {:?}", other), } } + +#[test] +fn test_build_create_task_event() { + let event = super::stream::build_create_task("task-abc-123"); + + match event.r#type { + Some(api::response_event::Type::ClientActions(actions)) => { + assert_eq!(actions.actions.len(), 1); + match &actions.actions[0].action { + Some(api::client_action::Action::CreateTask(create)) => { + let task = create.task.as_ref().unwrap(); + assert_eq!(task.id, "task-abc-123"); + assert!(task.messages.is_empty()); + assert!(task.description.is_empty()); + assert!(task.dependencies.is_none()); + } + other => panic!("Expected CreateTask action, got {:?}", other), + } + } + other => panic!("Expected ClientActions event, got {:?}", other), + } +} + +#[test] +fn test_build_create_task_has_no_parent() { + let event = super::stream::build_create_task("root-task-id"); + + if let Some(api::response_event::Type::ClientActions(actions)) = event.r#type { + if let Some(api::client_action::Action::CreateTask(create)) = &actions.actions[0].action { + let task = create.task.as_ref().unwrap(); + assert!( + task.dependencies.is_none(), + "Root task CreateTask must have no dependencies (no parent_id)" + ); + } + } +} diff --git a/app/src/ai/bedrock/test_fixtures/sample_project/Cargo.toml b/app/src/ai/bedrock/test_fixtures/sample_project/Cargo.toml new file mode 100644 index 00000000..064d1787 --- /dev/null +++ b/app/src/ai/bedrock/test_fixtures/sample_project/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "sample-project" +version = "0.1.0" +edition = "2021" + +[dependencies] +serde = { version = "1", features = ["derive"] } +serde_json = "1" +tokio = { version = "1", features = ["full"] } diff --git a/app/src/ai/bedrock/test_fixtures/sample_project/README.md b/app/src/ai/bedrock/test_fixtures/sample_project/README.md new file mode 100644 index 00000000..a4b7eb0a --- /dev/null +++ b/app/src/ai/bedrock/test_fixtures/sample_project/README.md @@ -0,0 +1,19 @@ +# Sample Project + +A simple Rust project used for testing the Warp AI Bedrock integration. + +## Features +- Configuration from environment variables +- Basic math utilities +- File reading helpers + +## Usage + +```bash +cargo run +``` + +Set environment variables: +- `APP_NAME` - Application name (default: "sample-app") +- `PORT` - Server port (default: 8080) +- `DEBUG` - Enable debug mode (set to "1") diff --git a/app/src/ai/bedrock/test_fixtures/sample_project/src/lib.rs b/app/src/ai/bedrock/test_fixtures/sample_project/src/lib.rs new file mode 100644 index 00000000..a4643b58 --- /dev/null +++ b/app/src/ai/bedrock/test_fixtures/sample_project/src/lib.rs @@ -0,0 +1,24 @@ +pub mod utils; + +pub fn add(a: i32, b: i32) -> i32 { + a + b +} + +pub fn multiply(a: i32, b: i32) -> i32 { + a * b +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_add() { + assert_eq!(add(2, 3), 5); + } + + #[test] + fn test_multiply() { + assert_eq!(multiply(3, 4), 12); + } +} diff --git a/app/src/ai/bedrock/test_fixtures/sample_project/src/main.rs b/app/src/ai/bedrock/test_fixtures/sample_project/src/main.rs new file mode 100644 index 00000000..3babc969 --- /dev/null +++ b/app/src/ai/bedrock/test_fixtures/sample_project/src/main.rs @@ -0,0 +1,30 @@ +use serde::{Deserialize, Serialize}; + +#[derive(Debug, Serialize, Deserialize)] +struct Config { + name: String, + port: u16, + debug: bool, +} + +impl Config { + fn from_env() -> Self { + Self { + name: std::env::var("APP_NAME").unwrap_or_else(|_| "sample-app".into()), + port: std::env::var("PORT") + .ok() + .and_then(|p| p.parse().ok()) + .unwrap_or(8080), + debug: std::env::var("DEBUG").map(|v| v == "1").unwrap_or(false), + } + } +} + +#[tokio::main] +async fn main() { + let config = Config::from_env(); + println!("Starting {} on port {}", config.name, config.port); + if config.debug { + println!("Debug mode enabled"); + } +} diff --git a/app/src/ai/bedrock/test_fixtures/sample_project/src/utils.rs b/app/src/ai/bedrock/test_fixtures/sample_project/src/utils.rs new file mode 100644 index 00000000..641149c3 --- /dev/null +++ b/app/src/ai/bedrock/test_fixtures/sample_project/src/utils.rs @@ -0,0 +1,12 @@ +use std::path::Path; + +pub fn file_exists(path: &str) -> bool { + Path::new(path).exists() +} + +pub fn read_lines(path: &str) -> Result, std::io::Error> { + use std::io::BufRead; + let file = std::fs::File::open(path)?; + let reader = std::io::BufReader::new(file); + reader.lines().collect() +} diff --git a/app/src/ai/block_context.rs b/app/src/ai/block_context.rs index bbf3ad6a..d6b73377 100644 --- a/app/src/ai/block_context.rs +++ b/app/src/ai/block_context.rs @@ -1,7 +1,7 @@ use channel_versions::overrides::TargetOS; use chrono::{DateTime, Local}; use serde::{Deserialize, Serialize}; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; use crate::terminal::event::UserBlockCompleted; use crate::terminal::model::block::BlockId; diff --git a/app/src/ai/blocklist/action_model.rs b/app/src/ai/blocklist/action_model.rs index 48615284..d8c42967 100644 --- a/app/src/ai/blocklist/action_model.rs +++ b/app/src/ai/blocklist/action_model.rs @@ -49,7 +49,7 @@ use std::{ use crate::ai::agent::conversation::AIConversationId; use itertools::Itertools; use parking_lot::FairMutex; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/action_model/execute.rs b/app/src/ai/blocklist/action_model/execute.rs index 5681dd3c..4a653d33 100644 --- a/app/src/ai/blocklist/action_model/execute.rs +++ b/app/src/ai/blocklist/action_model/execute.rs @@ -52,7 +52,7 @@ use suggest_new_conversation::SuggestNewConversationExecutor; pub use suggest_prompt::PromptSuggestionExecutor; use upload_artifact::UploadArtifactExecutor; use use_computer::UseComputerExecutor; -use warp_core::{execution_mode::AppExecutionMode, features::FeatureFlag}; +use galaxy_core::{execution_mode::AppExecutionMode, features::FeatureFlag}; #[cfg(feature = "local_fs")] use crate::util::openable_file_type::is_binary_file; @@ -60,12 +60,12 @@ use crate::util::openable_file_type::is_binary_file; use futures::AsyncReadExt; use std::{any::Any, path::PathBuf, pin::Pin, sync::Arc}; #[cfg(feature = "local_fs")] -use warp_files::{FileModel, TextFileReadResult}; +use galaxy_files::{FileModel, TextFileReadResult}; #[cfg(feature = "local_fs")] -use warp_util::file::FileLoadError; +use galaxy_util::file::FileLoadError; #[cfg(feature = "local_fs")] -use warp_util::file_type::is_buffer_binary; -use warpui::{ +use galaxy_util::file_type::is_buffer_binary; +use galaxyui::{ r#async::{Spawnable, SpawnableOutput}, AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity, }; @@ -1101,11 +1101,11 @@ async fn should_read_as_binary(path: &std::path::Path) -> bool { is_file_content_binary_async(path).await } -/// Async sibling of [`warp_util::file_type::is_file_content_binary`]. Reads +/// Async sibling of [`galaxy_util::file_type::is_file_content_binary`]. Reads /// the first 1 KiB of `path` asynchronously and returns `true` if the content /// looks binary according to [`is_buffer_binary`]. Returns `true` on any I/O /// error so callers default to the binary code path. Kept local to this -/// module so `warp_util` doesn't need to grow an `async_fs` dependency. +/// module so `galaxy_util` doesn't need to grow an `async_fs` dependency. #[cfg(feature = "local_fs")] async fn is_file_content_binary_async(path: &std::path::Path) -> bool { const CHUNK_SIZE: usize = 1024; diff --git a/app/src/ai/blocklist/action_model/execute/ask_user_question.rs b/app/src/ai/blocklist/action_model/execute/ask_user_question.rs index b7721667..c03df992 100644 --- a/app/src/ai/blocklist/action_model/execute/ask_user_question.rs +++ b/app/src/ai/blocklist/action_model/execute/ask_user_question.rs @@ -2,7 +2,7 @@ use crate::ai::agent::{AIAgentActionResultType, AIAgentActionType}; use crate::ai::blocklist::BlocklistAIPermissions; use ai::agent::action_result::{AskUserQuestionAnswerItem, AskUserQuestionResult}; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity}; use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessActionInput}; diff --git a/app/src/ai/blocklist/action_model/execute/ask_user_question_tests.rs b/app/src/ai/blocklist/action_model/execute/ask_user_question_tests.rs index 2864cdcf..c8efb958 100644 --- a/app/src/ai/blocklist/action_model/execute/ask_user_question_tests.rs +++ b/app/src/ai/blocklist/action_model/execute/ask_user_question_tests.rs @@ -16,7 +16,7 @@ use crate::workspaces::{team_tester::TeamTesterStatus, user_workspaces::UserWork use crate::LaunchMode; use ai::agent::action::AskUserQuestionItem; use ai::agent::action_result::{AskUserQuestionAnswerItem, AskUserQuestionResult}; -use warpui::{App, EntityId, ModelHandle}; +use galaxyui::{App, EntityId, ModelHandle}; fn build_action(action_id: &str) -> AIAgentAction { AIAgentAction { diff --git a/app/src/ai/blocklist/action_model/execute/call_mcp_tool.rs b/app/src/ai/blocklist/action_model/execute/call_mcp_tool.rs index 8810fed2..562466b0 100644 --- a/app/src/ai/blocklist/action_model/execute/call_mcp_tool.rs +++ b/app/src/ai/blocklist/action_model/execute/call_mcp_tool.rs @@ -1,7 +1,7 @@ use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessActionInput}; use crate::terminal::model::session::active_session::ActiveSession; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle}; #[cfg(not(target_family = "wasm"))] use super::get_server_output_id; @@ -17,7 +17,7 @@ use crate::{ #[cfg(not(target_family = "wasm"))] use itertools::Itertools; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; pub struct CallMCPToolExecutor { _active_session: ModelHandle, @@ -208,7 +208,7 @@ fn handle_call_tool_result( res: Result, server_output_id: Option, tool_name: String, - ctx: &warpui::AppContext, + ctx: &galaxyui::AppContext, ) -> AIAgentActionResultType { let action_result = match res { Ok(result) => { diff --git a/app/src/ai/blocklist/action_model/execute/create_documents.rs b/app/src/ai/blocklist/action_model/execute/create_documents.rs index 9576afa7..14b18fbf 100644 --- a/app/src/ai/blocklist/action_model/execute/create_documents.rs +++ b/app/src/ai/blocklist/action_model/execute/create_documents.rs @@ -1,5 +1,5 @@ use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::{ @@ -20,13 +20,13 @@ use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessA pub struct CreateDocumentsExecutor { active_session: ModelHandle, - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, } impl CreateDocumentsExecutor { pub fn new( active_session: ModelHandle, - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, ) -> Self { Self { active_session, diff --git a/app/src/ai/blocklist/action_model/execute/edit_documents.rs b/app/src/ai/blocklist/action_model/execute/edit_documents.rs index b3fd14a2..a34136f3 100644 --- a/app/src/ai/blocklist/action_model/execute/edit_documents.rs +++ b/app/src/ai/blocklist/action_model/execute/edit_documents.rs @@ -1,7 +1,7 @@ use ai::diff_validation::DiffDelta; use futures::{future::BoxFuture, FutureExt}; use std::collections::HashMap; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::ai::{ agent::{ diff --git a/app/src/ai/blocklist/action_model/execute/fetch_conversation.rs b/app/src/ai/blocklist/action_model/execute/fetch_conversation.rs index 9f4d3059..9928c9f8 100644 --- a/app/src/ai/blocklist/action_model/execute/fetch_conversation.rs +++ b/app/src/ai/blocklist/action_model/execute/fetch_conversation.rs @@ -5,7 +5,7 @@ use crate::ai::blocklist::history_model::CloudConversationData; use ai::agent::action_result::FetchConversationResult; use futures::future::BoxFuture; use futures::FutureExt; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::ai::agent::api::ServerConversationToken; use crate::ai::agent::AIAgentActionType; diff --git a/app/src/ai/blocklist/action_model/execute/file_glob.rs b/app/src/ai/blocklist/action_model/execute/file_glob.rs index 7a176b8d..22613314 100644 --- a/app/src/ai/blocklist/action_model/execute/file_glob.rs +++ b/app/src/ai/blocklist/action_model/execute/file_glob.rs @@ -5,8 +5,8 @@ use std::time::Duration; use futures::future::BoxFuture; use futures::FutureExt; use itertools::Itertools; -use warpui::r#async::FutureExt as AsyncFutureExt; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::r#async::FutureExt as AsyncFutureExt; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::agent::{ conversation::AIConversationId, AIAgentAction, AIAgentActionType, FileGlobResult, @@ -24,7 +24,7 @@ use crate::{ }, TelemetryEvent, }; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; const FILE_GLOB_TIMEOUT: Duration = Duration::from_secs(10); diff --git a/app/src/ai/blocklist/action_model/execute/get_files.rs b/app/src/ai/blocklist/action_model/execute/get_files.rs index 790d2bdd..71fe7c58 100644 --- a/app/src/ai/blocklist/action_model/execute/get_files.rs +++ b/app/src/ai/blocklist/action_model/execute/get_files.rs @@ -2,7 +2,7 @@ use std::path::{Path, PathBuf}; use futures::{future::BoxFuture, FutureExt}; use itertools::Itertools; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/action_model/execute/grep.rs b/app/src/ai/blocklist/action_model/execute/grep.rs index a69b2c87..059e09a6 100644 --- a/app/src/ai/blocklist/action_model/execute/grep.rs +++ b/app/src/ai/blocklist/action_model/execute/grep.rs @@ -4,12 +4,12 @@ use std::path::PathBuf; use std::sync::Arc; use std::time::Duration; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use futures::future::BoxFuture; use futures::FutureExt; -use warpui::r#async::FutureExt as AsyncFutureExt; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::r#async::FutureExt as AsyncFutureExt; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::agent::redaction::redact_secrets; use crate::ai::agent::{ @@ -437,7 +437,7 @@ async fn run_grep( #[cfg(not(target_family = "wasm"))] async fn run_ripgrep(queries: &[String], absolute_path: String) -> Result { let path = PathBuf::from(absolute_path); - let result = warp_ripgrep::search::search(queries, &[path], false, false).await; + let result = galaxy_ripgrep::search::search(queries, &[path], false, false).await; match result { Ok(matches) => { diff --git a/app/src/ai/blocklist/action_model/execute/read_documents.rs b/app/src/ai/blocklist/action_model/execute/read_documents.rs index 1fc8c98e..a9547170 100644 --- a/app/src/ai/blocklist/action_model/execute/read_documents.rs +++ b/app/src/ai/blocklist/action_model/execute/read_documents.rs @@ -1,5 +1,5 @@ use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::ai::{ agent::{ diff --git a/app/src/ai/blocklist/action_model/execute/read_files.rs b/app/src/ai/blocklist/action_model/execute/read_files.rs index fa504d5b..2c395295 100644 --- a/app/src/ai/blocklist/action_model/execute/read_files.rs +++ b/app/src/ai/blocklist/action_model/execute/read_files.rs @@ -1,7 +1,7 @@ use std::path::{Path, PathBuf}; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/action_model/execute/read_mcp_resource.rs b/app/src/ai/blocklist/action_model/execute/read_mcp_resource.rs index 12c69b4b..92ae8bcc 100644 --- a/app/src/ai/blocklist/action_model/execute/read_mcp_resource.rs +++ b/app/src/ai/blocklist/action_model/execute/read_mcp_resource.rs @@ -3,7 +3,7 @@ use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessA use crate::ai::mcp::TemplatableMCPServerManager; use crate::terminal::model::session::active_session::ActiveSession; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle}; #[cfg(not(target_family = "wasm"))] use crate::ai::{ @@ -14,7 +14,7 @@ use crate::ai::{ }, }; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; pub struct ReadMCPResourceExecutor { _active_session: ModelHandle, diff --git a/app/src/ai/blocklist/action_model/execute/read_skill.rs b/app/src/ai/blocklist/action_model/execute/read_skill.rs index acd95ac4..545518f4 100644 --- a/app/src/ai/blocklist/action_model/execute/read_skill.rs +++ b/app/src/ai/blocklist/action_model/execute/read_skill.rs @@ -2,14 +2,14 @@ use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessA use crate::ai::skills::{SkillManager, SkillTelemetryEvent}; use crate::send_telemetry_from_ctx; use ai::agent::action_result::AnyFileContent; -use warpui::{ModelContext, SingletonEntity}; +use galaxyui::{ModelContext, SingletonEntity}; use crate::ai::agent::AIAgentActionType; use crate::ai::agent::ReadSkillRequest; use crate::ai::agent::ReadSkillResult; use ai::agent::action_result::FileContext; use futures::future::{BoxFuture, FutureExt}; -use warpui::Entity; +use galaxyui::Entity; pub struct ReadSkillExecutor; diff --git a/app/src/ai/blocklist/action_model/execute/read_skill_tests.rs b/app/src/ai/blocklist/action_model/execute/read_skill_tests.rs index b3e7c4c7..74cbab91 100644 --- a/app/src/ai/blocklist/action_model/execute/read_skill_tests.rs +++ b/app/src/ai/blocklist/action_model/execute/read_skill_tests.rs @@ -14,7 +14,7 @@ use repo_metadata::{ use std::fs; use std::io::Write; use tempfile::TempDir; -use warpui::App; +use galaxyui::App; use watcher::HomeDirectoryWatcher; fn initialize_app(app: &mut App) { diff --git a/app/src/ai/blocklist/action_model/execute/request_computer_use.rs b/app/src/ai/blocklist/action_model/execute/request_computer_use.rs index 073e9265..ce790a5e 100644 --- a/app/src/ai/blocklist/action_model/execute/request_computer_use.rs +++ b/app/src/ai/blocklist/action_model/execute/request_computer_use.rs @@ -2,7 +2,7 @@ use std::collections::HashSet; use ai::agent::action_result::{AIAgentActionResultType, RequestComputerUseResult}; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity}; use crate::ai::agent::{AIAgentActionId, AIAgentActionType}; use crate::ai::ambient_agents::AmbientAgentTaskId; diff --git a/app/src/ai/blocklist/action_model/execute/request_file_edits.rs b/app/src/ai/blocklist/action_model/execute/request_file_edits.rs index 9798496c..88f4e5ac 100644 --- a/app/src/ai/blocklist/action_model/execute/request_file_edits.rs +++ b/app/src/ai/blocklist/action_model/execute/request_file_edits.rs @@ -2,7 +2,7 @@ mod apply_diff_model; mod diff_application; mod telemetry; -use warp_util::file::FileSaveError; +use galaxy_util::file::FileSaveError; use std::collections::HashMap; use std::path::PathBuf; @@ -11,8 +11,8 @@ use ai::diff_validation::AIRequestedCodeDiff; use futures::{channel::oneshot, future::BoxFuture, FutureExt}; use itertools::Itertools; use vec1::{vec1, Vec1}; -use warp_core::send_telemetry_from_ctx; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity as _, ViewHandle}; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity as _, ViewHandle}; use apply_diff_model::ApplyDiffModel; pub(crate) use diff_application::apply_edits; diff --git a/app/src/ai/blocklist/action_model/execute/request_file_edits/apply_diff_model.rs b/app/src/ai/blocklist/action_model/execute/request_file_edits/apply_diff_model.rs index 347b0750..fb72110c 100644 --- a/app/src/ai/blocklist/action_model/execute/request_file_edits/apply_diff_model.rs +++ b/app/src/ai/blocklist/action_model/execute/request_file_edits/apply_diff_model.rs @@ -11,8 +11,8 @@ use ai::diff_validation::AIRequestedCodeDiff; use futures::FutureExt; use vec1::Vec1; -use warpui::r#async::BoxFuture; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity as _}; +use galaxyui::r#async::BoxFuture; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity as _}; use crate::ai::agent::{AIIdentifiers, FileEdit}; use crate::ai::blocklist::SessionContext; diff --git a/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application.rs b/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application.rs index 3c1728a6..640ef8fa 100644 --- a/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application.rs +++ b/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application.rs @@ -13,7 +13,7 @@ use ai::diff_validation::{ }; use itertools::Itertools; use vec1::Vec1; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application_tests.rs b/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application_tests.rs index 0118b65e..f131e626 100644 --- a/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application_tests.rs +++ b/app/src/ai/blocklist/action_model/execute/request_file_edits/diff_application_tests.rs @@ -5,7 +5,7 @@ use ai::diff_validation::{DiffDelta, ParsedDiff, V4AHunk}; use async_io::block_on; use tempfile::NamedTempFile; use vec1::vec1; -use warpui::App; +use galaxyui::App; use crate::ai::agent::{AIIdentifiers, FileEdit}; use crate::ai::blocklist::SessionContext; diff --git a/app/src/ai/blocklist/action_model/execute/request_file_edits/telemetry.rs b/app/src/ai/blocklist/action_model/execute/request_file_edits/telemetry.rs index ffda961e..effe9691 100644 --- a/app/src/ai/blocklist/action_model/execute/request_file_edits/telemetry.rs +++ b/app/src/ai/blocklist/action_model/execute/request_file_edits/telemetry.rs @@ -6,7 +6,7 @@ use ai::diff_validation::DiffMatchFailures; use serde::Serialize; use serde_json::json; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; use crate::ai::{agent::AIIdentifiers, blocklist::RequestedEditResolution}; @@ -195,7 +195,7 @@ impl TelemetryEvent for RequestFileEditsTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -245,4 +245,4 @@ impl TelemetryEventDesc for RequestFileEditsTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(RequestFileEditsTelemetryEvent); +galaxy_core::register_telemetry_event!(RequestFileEditsTelemetryEvent); diff --git a/app/src/ai/blocklist/action_model/execute/search_codebase.rs b/app/src/ai/blocklist/action_model/execute/search_codebase.rs index 9ae2c6e1..2539c81a 100644 --- a/app/src/ai/blocklist/action_model/execute/search_codebase.rs +++ b/app/src/ai/blocklist/action_model/execute/search_codebase.rs @@ -5,7 +5,7 @@ use std::{ use futures::{channel::oneshot, future::BoxFuture, FutureExt}; use itertools::Itertools; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/action_model/execute/send_message.rs b/app/src/ai/blocklist/action_model/execute/send_message.rs index 9818371c..f7160be3 100644 --- a/app/src/ai/blocklist/action_model/execute/send_message.rs +++ b/app/src/ai/blocklist/action_model/execute/send_message.rs @@ -1,5 +1,5 @@ use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::ai::agent::{ AIAgentAction, AIAgentActionResultType, AIAgentActionType, SendMessageToAgentResult, @@ -13,8 +13,8 @@ use crate::ai::blocklist::telemetry::{ }; use crate::server::server_api::ai::SendAgentMessageRequest; use crate::server::server_api::ServerApiProvider; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessActionInput}; diff --git a/app/src/ai/blocklist/action_model/execute/shell_command.rs b/app/src/ai/blocklist/action_model/execute/shell_command.rs index ac7bd0aa..1626b8cd 100644 --- a/app/src/ai/blocklist/action_model/execute/shell_command.rs +++ b/app/src/ai/blocklist/action_model/execute/shell_command.rs @@ -9,11 +9,11 @@ use futures::{select, FutureExt}; use futures_lite::pin; use itertools::Itertools; use parking_lot::FairMutex; -use warp_core::command::ExitCode; -use warp_core::execution_mode::AppExecutionMode; -use warp_util::path::ShellFamily; -use warpui::r#async::{Spawnable, Timer}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::command::ExitCode; +use galaxy_core::execution_mode::AppExecutionMode; +use galaxy_util::path::ShellFamily; +use galaxyui::r#async::{Spawnable, Timer}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::agent::{ AIAgentActionId, AIAgentActionType, AIAgentPtyWriteMode, ReadShellCommandOutputResult, diff --git a/app/src/ai/blocklist/action_model/execute/start_agent.rs b/app/src/ai/blocklist/action_model/execute/start_agent.rs index da7272b7..32b60cee 100644 --- a/app/src/ai/blocklist/action_model/execute/start_agent.rs +++ b/app/src/ai/blocklist/action_model/execute/start_agent.rs @@ -1,5 +1,5 @@ use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::ai::agent::conversation::{AIConversationId, ConversationStatus}; use crate::ai::agent::{ @@ -9,8 +9,8 @@ use crate::ai::agent::{ use crate::ai::blocklist::orchestration_event_streamer::OrchestrationEventStreamer; use crate::ai::blocklist::orchestration_events::OrchestrationEventService; use crate::ai::blocklist::{BlocklistAIHistoryEvent, BlocklistAIHistoryModel}; -use warp_cli::agent::Harness; -use warp_core::features::FeatureFlag; +use galaxy_cli::agent::Harness; +use galaxy_core::features::FeatureFlag; use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessActionInput}; diff --git a/app/src/ai/blocklist/action_model/execute/start_agent_tests.rs b/app/src/ai/blocklist/action_model/execute/start_agent_tests.rs index 114a752b..e9a882c2 100644 --- a/app/src/ai/blocklist/action_model/execute/start_agent_tests.rs +++ b/app/src/ai/blocklist/action_model/execute/start_agent_tests.rs @@ -7,8 +7,8 @@ use crate::ai::agent::{ }; use crate::ai::blocklist::BlocklistAIHistoryModel; use ai::agent::action_result::StartAgentVersion; -use warp_core::features::FeatureFlag; -use warpui::{App, EntityId}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{App, EntityId}; fn build_start_agent_action( version: StartAgentVersion, execution_mode: StartAgentExecutionMode, diff --git a/app/src/ai/blocklist/action_model/execute/suggest_new_conversation.rs b/app/src/ai/blocklist/action_model/execute/suggest_new_conversation.rs index 08d0e7c1..a339bdae 100644 --- a/app/src/ai/blocklist/action_model/execute/suggest_new_conversation.rs +++ b/app/src/ai/blocklist/action_model/execute/suggest_new_conversation.rs @@ -1,5 +1,5 @@ use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; use crate::ai::agent::{ AIAgentAction, AIAgentActionResultType, AIAgentActionType, SuggestNewConversationResult, diff --git a/app/src/ai/blocklist/action_model/execute/suggest_prompt.rs b/app/src/ai/blocklist/action_model/execute/suggest_prompt.rs index c393474c..288a9faa 100644 --- a/app/src/ai/blocklist/action_model/execute/suggest_prompt.rs +++ b/app/src/ai/blocklist/action_model/execute/suggest_prompt.rs @@ -1,6 +1,6 @@ use futures::{channel::oneshot, future::BoxFuture, FutureExt}; -use warp_core::features::FeatureFlag; -use warpui::{Entity, ModelContext}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{Entity, ModelContext}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/action_model/execute/upload_artifact.rs b/app/src/ai/blocklist/action_model/execute/upload_artifact.rs index b613b4ff..7f4db960 100644 --- a/app/src/ai/blocklist/action_model/execute/upload_artifact.rs +++ b/app/src/ai/blocklist/action_model/execute/upload_artifact.rs @@ -6,7 +6,7 @@ use std::path::PathBuf; mod tests; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle}; use crate::terminal::model::session::active_session::ActiveSession; #[cfg(not(target_family = "wasm"))] @@ -20,7 +20,7 @@ use crate::{ server::server_api::ServerApiProvider, }; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; use super::{ActionExecution, AnyActionExecution, ExecuteActionInput, PreprocessActionInput}; diff --git a/app/src/ai/blocklist/action_model/execute/upload_artifact_tests.rs b/app/src/ai/blocklist/action_model/execute/upload_artifact_tests.rs index 672ce8fa..5f02cf2d 100644 --- a/app/src/ai/blocklist/action_model/execute/upload_artifact_tests.rs +++ b/app/src/ai/blocklist/action_model/execute/upload_artifact_tests.rs @@ -2,7 +2,7 @@ use std::fs; use std::path::{Path, PathBuf}; use async_channel::unbounded; -use warpui::{App, EntityId, ModelHandle}; +use galaxyui::{App, EntityId, ModelHandle}; use crate::ai::agent::task::TaskId; use crate::ai::agent::{ diff --git a/app/src/ai/blocklist/action_model/execute/use_computer.rs b/app/src/ai/blocklist/action_model/execute/use_computer.rs index 6029db47..7104fccd 100644 --- a/app/src/ai/blocklist/action_model/execute/use_computer.rs +++ b/app/src/ai/blocklist/action_model/execute/use_computer.rs @@ -1,6 +1,6 @@ use ai::agent::action_result::AIAgentActionResultType; use futures::{future::BoxFuture, FutureExt}; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; use crate::ai::agent::{AIAgentActionType, UseComputerResult}; diff --git a/app/src/ai/blocklist/agent_view/agent_input_footer/chips.rs b/app/src/ai/blocklist/agent_view/agent_input_footer/chips.rs index c8e4cf2c..d4b5a794 100644 --- a/app/src/ai/blocklist/agent_view/agent_input_footer/chips.rs +++ b/app/src/ai/blocklist/agent_view/agent_input_footer/chips.rs @@ -4,7 +4,7 @@ use crate::context_chips::{ prompt_type::PromptType, ChipResult, }; -use warpui::{ModelHandle, ViewContext, ViewHandle}; +use galaxyui::{ModelHandle, ViewContext, ViewHandle}; use super::{AgentInputFooter, AgentInputFooterEvent}; diff --git a/app/src/ai/blocklist/agent_view/agent_input_footer/editor.rs b/app/src/ai/blocklist/agent_view/agent_input_footer/editor.rs index 0625e63c..2c320a33 100644 --- a/app/src/ai/blocklist/agent_view/agent_input_footer/editor.rs +++ b/app/src/ai/blocklist/agent_view/agent_input_footer/editor.rs @@ -3,9 +3,9 @@ //! Uses the shared [`ChipConfigurator`] with `LeftRightZones` layout to let users //! drag/drop chips between left, right, and unused banks. -use warpui::keymap::FixedBinding; +use galaxyui::keymap::FixedBinding; -use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; use crate::chip_configurator::{ render_chip_editor_modal, render_chip_editor_sections, ChipConfigurator, @@ -225,7 +225,7 @@ impl View for AgentToolbarInlineEditor { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/ai/blocklist/agent_view/agent_input_footer/environment_selector.rs b/app/src/ai/blocklist/agent_view/agent_input_footer/environment_selector.rs index adaa050b..cc48a96d 100644 --- a/app/src/ai/blocklist/agent_view/agent_input_footer/environment_selector.rs +++ b/app/src/ai/blocklist/agent_view/agent_input_footer/environment_selector.rs @@ -1,10 +1,10 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use settings::Setting; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ ChildAnchor, ChildView, ConstrainedBox, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Stack, @@ -87,7 +87,7 @@ impl GenericMenuItem for EnvironmentMenuItem { let theme = Appearance::as_ref(app).theme(); let color = theme.main_text_color(theme.surface_2()).into_solid(); Some( - ConstrainedBox::new(Icon::Check.to_warpui_icon(Fill::Solid(color)).finish()) + ConstrainedBox::new(Icon::Check.to_galaxyui_icon(Fill::Solid(color)).finish()) .with_width(ENV_MENU_CHECK_ICON_SIZE) .with_height(ENV_MENU_CHECK_ICON_SIZE) .finish(), diff --git a/app/src/ai/blocklist/agent_view/agent_input_footer/mod.rs b/app/src/ai/blocklist/agent_view/agent_input_footer/mod.rs index 8c0b6ed9..06692a64 100644 --- a/app/src/ai/blocklist/agent_view/agent_input_footer/mod.rs +++ b/app/src/ai/blocklist/agent_view/agent_input_footer/mod.rs @@ -56,7 +56,7 @@ use crate::{ workspaces::user_workspaces::UserWorkspaces, }; use toolbar_item::AgentToolbarItemKind; -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; use std::sync::Arc; @@ -83,7 +83,7 @@ use tokio::fs; #[cfg(feature = "voice_input")] use voice_input::{StartListeningError, VoiceSessionResult}; -use warp_core::{ +use galaxy_core::{ context_flag::ContextFlag, report_if_error, ui::{ @@ -92,8 +92,8 @@ use warp_core::{ }, }; #[cfg(feature = "voice_input")] -use warpui::r#async::SpawnedFutureHandle; -use warpui::{ +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, Element, EventHandler, Expanded, Flex, @@ -106,7 +106,7 @@ use warpui::{ }; #[cfg(not(target_family = "wasm"))] -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; pub(crate) use self::environment_selector::{EnvironmentSelector, EnvironmentSelectorEvent}; #[cfg(not(target_family = "wasm"))] @@ -874,7 +874,7 @@ impl AgentInputFooter { fn select_cli_file(&mut self, ctx: &mut ViewContext) { let window_id = ctx.window_id(); let view_id = ctx.view_id(); - let file_picker_config = warpui::platform::FilePickerConfiguration::new(); + let file_picker_config = galaxyui::platform::FilePickerConfiguration::new(); ctx.open_file_picker( move |result, ctx| match result { @@ -1364,7 +1364,7 @@ impl AgentInputFooter { .unwrap_or_else(|| appearance.theme().foreground().into_solid()); left_buttons.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(icon_color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(icon_color)).finish()) .with_width(cli_icon_size) .with_height(cli_icon_size) .finish(), @@ -1571,8 +1571,8 @@ impl AgentInputFooter { // For key-based toggling, validate the key state against current voice state. if let voice_input::VoiceInputToggledFrom::Key { state } = source { match (&self.cli_voice_input_state, state) { - (CLIVoiceInputState::Stopped, warpui::event::KeyState::Released) => return, - (CLIVoiceInputState::Listening, warpui::event::KeyState::Pressed) => return, + (CLIVoiceInputState::Stopped, galaxyui::event::KeyState::Released) => return, + (CLIVoiceInputState::Listening, galaxyui::event::KeyState::Pressed) => return, _ => {} } } @@ -1936,7 +1936,7 @@ impl View for AgentInputFooter { "AgentViewFooter" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { if self.should_render_cloud_mode_v2(app) { return self.render_cloud_mode_v2_footer(app); } @@ -2098,7 +2098,7 @@ fn render_ftu_callout( .with_child( ConstrainedBox::new( Icon::CalloutTriangleBorderDown - .to_warpui_icon(Fill::Solid(theme.accent().into_solid())) + .to_galaxyui_icon(Fill::Solid(theme.accent().into_solid())) .finish(), ) .with_width(24.) @@ -2108,7 +2108,7 @@ fn render_ftu_callout( .with_child( ConstrainedBox::new( Icon::CalloutTriangleFillDown - .to_warpui_icon(background) + .to_galaxyui_icon(background) .finish(), ) .with_width(24.) @@ -2155,7 +2155,7 @@ pub enum AgentInputFooterAction { impl TypedActionView for AgentInputFooter { type Action = AgentInputFooterAction; - fn handle_action(&mut self, action: &Self::Action, ctx: &mut warpui::ViewContext) { + fn handle_action(&mut self, action: &Self::Action, ctx: &mut galaxyui::ViewContext) { match action { #[cfg(feature = "voice_input")] AgentInputFooterAction::ToggleVoiceInput => { @@ -2433,10 +2433,10 @@ impl ActionButtonTheme for AgentInputButtonTheme { true } - fn font_properties(&self) -> Option { + fn font_properties(&self) -> Option { if crate::features::FeatureFlag::CloudModeInputV2.is_enabled() { - Some(warpui::fonts::Properties { - weight: warpui::fonts::Weight::Semibold, + Some(galaxyui::fonts::Properties { + weight: galaxyui::fonts::Weight::Semibold, ..Default::default() }) } else { @@ -2478,7 +2478,7 @@ impl ActionButtonTheme for ActiveMicButtonTheme { true } - fn font_properties(&self) -> Option { + fn font_properties(&self) -> Option { AgentInputButtonTheme.font_properties() } } diff --git a/app/src/ai/blocklist/agent_view/agent_message_bar.rs b/app/src/ai/blocklist/agent_view/agent_message_bar.rs index a6d070b6..137c6a29 100644 --- a/app/src/ai/blocklist/agent_view/agent_message_bar.rs +++ b/app/src/ai/blocklist/agent_view/agent_message_bar.rs @@ -1,14 +1,14 @@ use std::sync::Arc; use parking_lot::FairMutex; -use warp_core::features::FeatureFlag; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::{Container, Element, Empty, MouseStateHandle}; -use warpui::keymap::Keystroke; -use warpui::platform::OperatingSystem; -use warpui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::{Container, Element, Empty, MouseStateHandle}; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::OperatingSystem; +use galaxyui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext}; use super::{AgentViewState, EphemeralMessageModel, EphemeralMessageModelEvent}; use crate::ai::agent::conversation::AIConversation; diff --git a/app/src/ai/blocklist/agent_view/agent_view_block.rs b/app/src/ai/blocklist/agent_view/agent_view_block.rs index 249b18b8..1734e18d 100644 --- a/app/src/ai/blocklist/agent_view/agent_view_block.rs +++ b/app/src/ai/blocklist/agent_view/agent_view_block.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; use settings::Setting; -use warp_core::ui::{appearance::Appearance, Icon}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, Icon}; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, Text, @@ -197,7 +197,7 @@ impl View for AgentViewEntryBlock { "EnterAgentBlock" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { if self.agent_view_controller.as_ref(app).is_fullscreen() { return Empty::new().finish(); } @@ -321,7 +321,7 @@ impl View for AgentViewEntryBlock { row.add_child( ConstrainedBox::new( Icon::ChevronRight - .to_warpui_icon( + .to_galaxyui_icon( blended_colors::text_sub( appearance.theme(), appearance.theme().background(), diff --git a/app/src/ai/blocklist/agent_view/child_agent_status_card.rs b/app/src/ai/blocklist/agent_view/child_agent_status_card.rs index 25fe30e3..4f198246 100644 --- a/app/src/ai/blocklist/agent_view/child_agent_status_card.rs +++ b/app/src/ai/blocklist/agent_view/child_agent_status_card.rs @@ -1,10 +1,10 @@ use std::collections::{HashMap, HashSet}; -use warpui::elements::{Element, Empty, Flex, MouseStateHandle, ParentElement}; -use warpui::platform::Cursor; -use warpui::prelude::Container; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::elements::{Element, Empty, Flex, MouseStateHandle, ParentElement}; +use galaxyui::platform::Cursor; +use galaxyui::prelude::Container; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ AppContext, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, }; @@ -218,7 +218,7 @@ impl View for ChildAgentStatusCard { let dismiss_button = close_button(appearance, dismiss_mouse_state) .build() - .on_click(move |ctx: &mut warpui::EventContext<'_>, _, _| { + .on_click(move |ctx: &mut galaxyui::EventContext<'_>, _, _| { ctx.dispatch_typed_action(ChildAgentStatusCardAction::Dismiss(conversation_id)); }) .with_cursor(Cursor::PointingHand) diff --git a/app/src/ai/blocklist/agent_view/controller.rs b/app/src/ai/blocklist/agent_view/controller.rs index 8c392c08..b482248e 100644 --- a/app/src/ai/blocklist/agent_view/controller.rs +++ b/app/src/ai/blocklist/agent_view/controller.rs @@ -3,10 +3,10 @@ use std::{sync::Arc, time::Duration}; use instant::Instant; use parking_lot::FairMutex; -use warp_core::ui::appearance::Appearance; -use warpui::keymap::Keystroke; -use warpui::AppContext; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::keymap::Keystroke; +use galaxyui::AppContext; +use galaxyui::{ r#async::SpawnedFutureHandle, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity, }; @@ -413,7 +413,7 @@ impl AgentViewController { /// and whether the escape keybinding should be displayed. pub fn can_exit_agent_view( &self, - ctx: &impl warpui::ModelAsRef, + ctx: &impl galaxyui::ModelAsRef, ) -> Result<(), ExitAgentViewError> { let model = self.terminal_model.lock(); @@ -495,7 +495,7 @@ impl AgentViewController { self.pending_confirmation = Some(pending_confirmation); let abort_handle = ctx.spawn_abortable( - async move { warpui::r#async::Timer::after(ENTER_OR_EXIT_CONFIRMATION_WINDOW).await }, + async move { galaxyui::r#async::Timer::after(ENTER_OR_EXIT_CONFIRMATION_WINDOW).await }, move |me, _, _ctx| { me.pending_confirmation = None; me.pending_confirmation_abort_handle = None; @@ -1010,7 +1010,7 @@ fn exit_confirmation_message( should_stop_and_exit: bool, app: &AppContext, ) -> Message { - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; use crate::terminal::input::message_bar::{Message, MessageItem}; diff --git a/app/src/ai/blocklist/agent_view/ephemeral_message_model.rs b/app/src/ai/blocklist/agent_view/ephemeral_message_model.rs index eefed195..bc77393a 100644 --- a/app/src/ai/blocklist/agent_view/ephemeral_message_model.rs +++ b/app/src/ai/blocklist/agent_view/ephemeral_message_model.rs @@ -1,8 +1,8 @@ use std::borrow::Cow; use std::time::Duration; -use warpui::r#async::SpawnedFutureHandle; -use warpui::{Entity, ModelContext}; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::{Entity, ModelContext}; use crate::terminal::input::message_bar::{Message, MessageProvider}; @@ -93,7 +93,7 @@ impl EphemeralMessageModel { // If we are dismissing via timer, start the timer. if let DismissalStrategy::Timer(duration) = dismissal { let abort_handle = ctx.spawn_abortable( - async move { warpui::r#async::Timer::after(duration).await }, + async move { galaxyui::r#async::Timer::after(duration).await }, |me, _, ctx| { me.current_message = None; me.clear_timer_handle = None; diff --git a/app/src/ai/blocklist/agent_view/inline_agent_view_header.rs b/app/src/ai/blocklist/agent_view/inline_agent_view_header.rs index 29263d4e..74802d0c 100644 --- a/app/src/ai/blocklist/agent_view/inline_agent_view_header.rs +++ b/app/src/ai/blocklist/agent_view/inline_agent_view_header.rs @@ -2,8 +2,8 @@ use std::sync::Arc; use ai::agent::action::{AIAgentActionType, ShellCommandDelay}; use parking_lot::FairMutex; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{CornerRadius, Radius}, AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity, View, ViewContext, }; @@ -121,7 +121,7 @@ impl View for InlineAgentViewHeader { }; if is_agent_tagged_in { let header_background = appearance.theme().surface_2(); - let icon = Icon::Oz.to_warpui_icon( + let icon = Icon::Oz.to_galaxyui_icon( blended_colors::text_main(appearance.theme(), header_background).into(), ); let message = if let Some(command) = top_level_command.as_deref() { diff --git a/app/src/ai/blocklist/agent_view/mod.rs b/app/src/ai/blocklist/agent_view/mod.rs index 1858442d..889f45f4 100644 --- a/app/src/ai/blocklist/agent_view/mod.rs +++ b/app/src/ai/blocklist/agent_view/mod.rs @@ -16,16 +16,16 @@ pub use agent_view_block::*; pub use controller::*; pub use ephemeral_message_model::*; pub use inline_agent_view_header::*; -use warpui::fonts::Properties; +use galaxyui::fonts::Properties; pub use zero_state_block::*; use std::sync::LazyLock; use pathfinder_color::ColorU; -use warp_core::ui::theme::Fill; -use warp_core::ui::{appearance::Appearance, color::blend::Blend}; -use warpui::keymap::Keystroke; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::{appearance::Appearance, color::blend::Blend}; +use galaxyui::keymap::Keystroke; +use galaxyui::{AppContext, SingletonEntity}; use crate::view_components::action_button::ActionButtonTheme; diff --git a/app/src/ai/blocklist/agent_view/orchestration_conversation_links.rs b/app/src/ai/blocklist/agent_view/orchestration_conversation_links.rs index b830f308..48f85f6d 100644 --- a/app/src/ai/blocklist/agent_view/orchestration_conversation_links.rs +++ b/app/src/ai/blocklist/agent_view/orchestration_conversation_links.rs @@ -1,8 +1,8 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::Vector2F; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Flex, Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, @@ -179,7 +179,7 @@ pub(crate) fn conversation_navigation_card_with_icon( if let Some((icon, color)) = icon { row.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(color)).finish()) .with_width(16.) .with_height(16.) .finish(), @@ -199,7 +199,7 @@ pub(crate) fn conversation_navigation_card_with_icon( Container::new( ConstrainedBox::new( Icon::ChevronRight - .to_warpui_icon(blended_colors::text_sub(theme, theme.background()).into()) + .to_galaxyui_icon(blended_colors::text_sub(theme, theme.background()).into()) .finish(), ) .with_height(20.) diff --git a/app/src/ai/blocklist/agent_view/shortcuts/mod.rs b/app/src/ai/blocklist/agent_view/shortcuts/mod.rs index 7611ce99..bfa41873 100644 --- a/app/src/ai/blocklist/agent_view/shortcuts/mod.rs +++ b/app/src/ai/blocklist/agent_view/shortcuts/mod.rs @@ -5,8 +5,8 @@ use pathfinder_color::ColorU; use std::borrow::Cow; -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxyui::{ elements::{Border, Container, CrossAxisAlignment, Expanded, Flex, ParentElement, Text}, keymap::Keystroke, ui_components::components::{Coords, UiComponent, UiComponentStyles}, @@ -267,7 +267,7 @@ pub fn render_agent_shortcuts_view( } pub mod styles { - use warp_core::ui::appearance::Appearance; + use galaxy_core::ui::appearance::Appearance; pub fn keystroke_size(appearance: &Appearance) -> f32 { font_size(appearance) + 2. diff --git a/app/src/ai/blocklist/agent_view/shortcuts/model.rs b/app/src/ai/blocklist/agent_view/shortcuts/model.rs index 77a0875b..d9fd6de7 100644 --- a/app/src/ai/blocklist/agent_view/shortcuts/model.rs +++ b/app/src/ai/blocklist/agent_view/shortcuts/model.rs @@ -1,6 +1,6 @@ -use warpui::{Entity, ModelContext, ModelHandle}; +use galaxyui::{Entity, ModelContext, ModelHandle}; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; use crate::{ ai::blocklist::agent_view::{AgentViewController, AgentViewControllerEvent}, diff --git a/app/src/ai/blocklist/agent_view/zero_state_block.rs b/app/src/ai/blocklist/agent_view/zero_state_block.rs index 17bc83d0..84b17a16 100644 --- a/app/src/ai/blocklist/agent_view/zero_state_block.rs +++ b/app/src/ai/blocklist/agent_view/zero_state_block.rs @@ -3,8 +3,8 @@ use markdown_parser::{parse_markdown, FormattedText, FormattedTextFragment, Form use parking_lot::FairMutex; use settings::Setting; use std::{borrow::Cow, cmp::Reverse, path::Path, sync::Arc}; -use warp_core::{features::FeatureFlag, report_if_error, ui::Icon}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, report_if_error, ui::Icon}; +use galaxyui::{ elements::{ Clipped, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, @@ -569,7 +569,7 @@ fn render_title_and_description(props: HeaderProps, app: &AppContext) -> Vec, app: &AppContext) -> Option, app: &AppContext) -> Option Box) -> TerminalModel { TerminalModel::new_for_test( diff --git a/app/src/ai/blocklist/block.rs b/app/src/ai/blocklist/block.rs index ff49e1a5..920f3fe7 100644 --- a/app/src/ai/blocklist/block.rs +++ b/app/src/ai/blocklist/block.rs @@ -55,8 +55,8 @@ use crate::view_components::compactible_action_button::CompactibleActionButton; use crate::AIAgentTodoList; use crate::FileEdit; use pathfinder_color::ColorU; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; use cli_controller::CLISubagentController; use cli_controller::CLISubagentEvent; @@ -64,11 +64,11 @@ use find::FindState; use model::AIBlockOutputStatus; use parking_lot::FairMutex; use settings::Setting as _; -use warp_core::features::FeatureFlag; -use warpui::elements::get_rich_content_position_id; -use warpui::elements::ClippedScrollStateHandle; -use warpui::elements::TableStateHandle; -use warpui::ui_components::radio_buttons::RadioButtonStateHandle; +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::get_rich_content_position_id; +use galaxyui::elements::ClippedScrollStateHandle; +use galaxyui::elements::TableStateHandle; +use galaxyui::ui_components::radio_buttons::RadioButtonStateHandle; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::AIAgentActionResultType; @@ -121,26 +121,26 @@ use std::ops::Range; use std::path::{Path, PathBuf}; use std::rc::Rc; use std::{cell::OnceCell, sync::Arc}; -use warp_util::path::ShellFamily; -use warpui::elements::MainAxisAlignment; -use warpui::elements::MainAxisSize; -use warpui::elements::SecretRange; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::button::TextAndIcon; -use warpui::ui_components::button::TextAndIconAlignment; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::components::UiComponentStyles; +use galaxy_util::path::ShellFamily; +use galaxyui::elements::MainAxisAlignment; +use galaxyui::elements::MainAxisSize; +use galaxyui::elements::SecretRange; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::button::TextAndIcon; +use galaxyui::ui_components::button::TextAndIconAlignment; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::components::UiComponentStyles; use crate::util::link_detection::*; use chrono::Duration; use itertools::Itertools; use secret_redaction::*; #[cfg(feature = "local_fs")] -use warp_editor::content::edit::resolve_asset_source_relative_to_directory; -use warp_editor::{ +use galaxy_editor::content::edit::resolve_asset_source_relative_to_directory; +use galaxy_editor::{ content::buffer::InitialBufferState, render::element::VerticalExpansionBehavior, }; -use warpui::{ +use galaxyui::{ assets::asset_cache::AssetCache, clipboard::ClipboardContent, elements::{MouseStateHandle, SelectionBound, SelectionHandle}, @@ -247,7 +247,7 @@ pub const RICH_CONTENT_SECRET_FIRST_CHAR_POSITION_ID: &str = "ai_block:rich_content_secret_first_char_position"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -794,7 +794,7 @@ pub struct AIBlock { active_session: ModelHandle, ambient_agent_view_model: ModelHandle, terminal_view_id: EntityId, - window_id: warpui::WindowId, + window_id: galaxyui::WindowId, /// The current working directory at the time the AI block was created. Note that this /// is different from `directory_context`, which represents the directory-related contexts @@ -2086,7 +2086,7 @@ impl AIBlock { button = button.with_text_and_icon_label(TextAndIcon::new( TextAndIconAlignment::TextFirst, accept_text.clone(), - Icon::CornerDownLeft.to_warpui_icon(appearance.theme().foreground()), + Icon::CornerDownLeft.to_galaxyui_icon(appearance.theme().foreground()), MainAxisSize::Max, MainAxisAlignment::SpaceBetween, vec2f( @@ -2128,7 +2128,7 @@ impl AIBlock { button = button.with_text_and_icon_label(TextAndIcon::new( TextAndIconAlignment::TextFirst, reject_text.clone(), - Icon::CornerDownLeft.to_warpui_icon(appearance.theme().foreground()), + Icon::CornerDownLeft.to_galaxyui_icon(appearance.theme().foreground()), MainAxisSize::Max, MainAxisAlignment::SpaceBetween, vec2f( @@ -5489,7 +5489,7 @@ pub enum AIBlockEvent { #[cfg(feature = "local_fs")] OpenDetectedFilePath { absolute_path: PathBuf, - line_and_column_num: Option, + line_and_column_num: Option, target_override: Option, }, ShowLinkTooltip(RichContentLinkTooltipInfo), @@ -5660,7 +5660,7 @@ pub enum AIBlockAction { is_positive: bool, }, /// Clear the selections of all other views **except** for the source view that dispatched the event. - /// The `source_view_id` will be `None` if the event is dispatched by the [`warpui::elements::SelectableArea`] + /// The `source_view_id` will be `None` if the event is dispatched by the [`galaxyui::elements::SelectableArea`] /// instead of a nested view (i.e. code block, requested command, etc.), which means all nested views /// should have their selections cleared. ClearOtherSelections { @@ -6350,7 +6350,7 @@ impl TypedActionView for AIBlock { }); images.push(ui_components::lightbox::LightboxImage { source: ui_components::lightbox::LightboxImageSource::Resolved { - asset_source: warpui::assets::asset_cache::AssetSource::Raw { + asset_source: galaxyui::assets::asset_cache::AssetSource::Raw { id: asset_id, }, }, diff --git a/app/src/ai/blocklist/block/cli.rs b/app/src/ai/blocklist/block/cli.rs index 0d75f025..9ff56d49 100644 --- a/app/src/ai/blocklist/block/cli.rs +++ b/app/src/ai/blocklist/block/cli.rs @@ -4,30 +4,30 @@ use settings::Setting as _; use std::sync::Arc; use std::time::Duration; use std::{cmp::Ordering, rc::Rc}; -use warp_core::features::FeatureFlag; -use warp_core::report_error; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::new_scrollable::SingleAxisConfig; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::report_error; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::new_scrollable::SingleAxisConfig; +use galaxyui::elements::{ ClippedScrollStateHandle, ConstrainedBox, Empty, Fill, FormattedTextElement, Highlight, HighlightedHyperlink, Hoverable, MainAxisAlignment, MainAxisSize, NewScrollable, SavePosition, SelectableArea, SizeConstraintCondition, SizeConstraintSwitch, }; -use warpui::fonts::Weight; -use warpui::platform::{Cursor, OperatingSystem}; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::fonts::Weight; +use galaxyui::platform::{Cursor, OperatingSystem}; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; use lazy_static::lazy_static; use pathfinder_geometry::vector::vec2f; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::semantic_selection::SemanticSelection; -use warp_core::ui::appearance::Appearance; -use warp_editor::{ +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::{ content::buffer::InitialBufferState, render::element::VerticalExpansionBehavior, }; -use warpui::r#async::Timer; -use warpui::{ +use galaxyui::r#async::Timer; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Border, ChildAnchor, ChildView, Container, CornerRadius, CrossAxisAlignment, DropShadow, @@ -145,7 +145,7 @@ const HAS_PENDING_NON_TRANSFER_CONTROL_ACTION_CONTEXT_KEY: &str = const BLOCKED_ACTION_MESSAGE_FOR_TRANSFER_CONTROL: &str = "Agent is asking you to take control."; pub fn init(app: &mut AppContext) { - use warpui::keymap::{macros::*, FixedBinding}; + use galaxyui::keymap::{macros::*, FixedBinding}; app.register_fixed_bindings([ FixedBinding::new( @@ -964,7 +964,7 @@ impl View for CLISubagentView { "CLISubagentView" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let terminal_model = self.terminal_model.lock(); let Some(block) = terminal_model.block_list().block_with_id(&self.block_id) else { return Empty::new().finish(); @@ -1399,7 +1399,7 @@ impl View for CLISubagentView { result.finish() } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); let terminal_model = self.terminal_model.lock(); @@ -1569,7 +1569,7 @@ fn render_action(action: AIAgentActionType, app: &AppContext) -> Option, app: &AppContext) -> Box, + ctx: &mut galaxyui::ViewContext, ) -> Vec { self.clear_matches(ctx); @@ -124,7 +124,7 @@ impl FindableRichContentView for AIBlock { new_match_ids } - fn clear_matches(&mut self, ctx: &mut warpui::ViewContext) { + fn clear_matches(&mut self, ctx: &mut galaxyui::ViewContext) { self.find_state.matches.clear(); ctx.notify(); } diff --git a/app/src/ai/blocklist/block/keyboard_navigable_buttons.rs b/app/src/ai/blocklist/block/keyboard_navigable_buttons.rs index 9d988fee..c36c3c0a 100644 --- a/app/src/ai/blocklist/block/keyboard_navigable_buttons.rs +++ b/app/src/ai/blocklist/block/keyboard_navigable_buttons.rs @@ -1,6 +1,6 @@ -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, @@ -21,7 +21,7 @@ const MARGIN_BETWEEN_BUTTONS: f32 = 4.; const HAS_OPTIONS: &str = "HasOptions"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -59,7 +59,7 @@ pub enum KeyboardNavigableButtonsAction { pub enum KeyboardNavigableButtonsEvent {} -pub type ButtonBuilder = Box Button>; +pub type ButtonBuilder = Box Button>; pub type OnButtonClickFn = Box)>; pub struct KeyboardNavigableButtonBuilder { @@ -70,7 +70,7 @@ pub struct KeyboardNavigableButtonBuilder { impl KeyboardNavigableButtonBuilder { pub fn new( - button_builder: impl Fn(bool, &warpui::AppContext) -> Button + 'static, + button_builder: impl Fn(bool, &galaxyui::AppContext) -> Button + 'static, on_selected: impl Fn(&mut ViewContext) + 'static, ) -> Self { Self { @@ -83,7 +83,7 @@ impl KeyboardNavigableButtonBuilder { /// Creates a simple navigation button with standard styling. /// This is a convenience function for the common case of a text-only button /// that dispatches an action when clicked. -pub fn simple_navigation_button( +pub fn simple_navigation_button( text_label: String, mouse_state: MouseStateHandle, action: A, @@ -195,7 +195,7 @@ fn build_rich_navigation_label( let right_element: Box = if show_enter_indicator { let enter_icon = ConstrainedBox::new( Icon::CornerDownLeft - .to_warpui_icon(theme.foreground()) + .to_galaxyui_icon(theme.foreground()) .finish(), ) .with_width(font_size) @@ -227,7 +227,7 @@ fn build_rich_navigation_label( /// Creates a keyboard-navigable button with a rich two-line label: a title /// (with an optional trailing "Recommended" badge) plus an optional muted /// sub-label underneath. -pub fn rich_navigation_button( +pub fn rich_navigation_button( text_label: String, sub_label: Option, recommended: bool, @@ -306,7 +306,7 @@ impl View for KeyboardNavigableButtons { "KeyboardNavigableButtons" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let mut content = Flex::column().with_cross_axis_alignment(CrossAxisAlignment::Stretch); for (index, button_builder) in self.button_builders.iter().enumerate() { let is_selected = index == self.selected_button_index(); @@ -336,7 +336,7 @@ impl View for KeyboardNavigableButtons { content.finish() } - fn keymap_context(&self, _app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, _app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if !self.button_builders.is_empty() { context.set.insert(HAS_OPTIONS); diff --git a/app/src/ai/blocklist/block/model.rs b/app/src/ai/blocklist/block/model.rs index e952e8bd..7370d49c 100644 --- a/app/src/ai/blocklist/block/model.rs +++ b/app/src/ai/blocklist/block/model.rs @@ -4,7 +4,7 @@ mod model_impl; pub use helper::AIBlockModelHelper; pub use model_impl::*; use session_sharing_protocol::common::ParticipantId; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::ai::{ agent::{ @@ -15,7 +15,7 @@ use crate::ai::{ llms::LLMId, }; use chrono::TimeDelta; -use warpui::{AppContext, ViewContext}; +use galaxyui::{AppContext, ViewContext}; #[derive(Debug, Clone, Copy)] pub enum PassiveRequestType { @@ -220,7 +220,7 @@ pub trait AIBlockModel { #[cfg(any(test, feature = "integration_tests"))] pub mod testing { - use warpui::{AppContext, ViewContext}; + use galaxyui::{AppContext, ViewContext}; use crate::ai::{ agent::{ diff --git a/app/src/ai/blocklist/block/model/debug_model_impl.rs b/app/src/ai/blocklist/block/model/debug_model_impl.rs index 84c3caca..a11b81d7 100644 --- a/app/src/ai/blocklist/block/model/debug_model_impl.rs +++ b/app/src/ai/blocklist/block/model/debug_model_impl.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ViewContext}; +use galaxyui::{AppContext, ViewContext}; use crate::ai::{ agent::{ diff --git a/app/src/ai/blocklist/block/model/helper.rs b/app/src/ai/blocklist/block/model/helper.rs index b8fd2576..6304bff3 100644 --- a/app/src/ai/blocklist/block/model/helper.rs +++ b/app/src/ai/blocklist/block/model/helper.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, EntityId, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, EntityId, ModelHandle, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/block/model/model_impl.rs b/app/src/ai/blocklist/block/model/model_impl.rs index f093a8ce..275fc595 100644 --- a/app/src/ai/blocklist/block/model/model_impl.rs +++ b/app/src/ai/blocklist/block/model/model_impl.rs @@ -4,7 +4,7 @@ use anyhow::{anyhow, Result}; use chrono::{Local, TimeDelta}; use history_model::{BlocklistAIHistoryEvent, BlocklistAIHistoryModel}; use session_sharing_protocol::common::ParticipantId; -use warpui::{AppContext, SingletonEntity, View, ViewContext}; +use galaxyui::{AppContext, SingletonEntity, View, ViewContext}; use crate::ai::{ agent::{ diff --git a/app/src/ai/blocklist/block/number_shortcut_buttons.rs b/app/src/ai/blocklist/block/number_shortcut_buttons.rs index 5492edbe..51fa2cd4 100644 --- a/app/src/ai/blocklist/block/number_shortcut_buttons.rs +++ b/app/src/ai/blocklist/block/number_shortcut_buttons.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ ClippedScrollStateHandle, Container, CrossAxisAlignment, DispatchEventResult, EventHandler, Flex, Hoverable, MouseInBehavior, MouseStateHandle, ParentElement, SavePosition, @@ -19,7 +19,7 @@ const KEYBOARD_NAVIGATION_ENABLED: &str = "KeyboardNavigationEnabled"; const ENTER_ACTIVATION_ENABLED: &str = "EnterActivationEnabled"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; for i in 1..=9u8 { app.register_fixed_bindings([FixedBinding::new( @@ -76,7 +76,7 @@ pub enum NumberShortcutButtonsAction { pub enum NumberShortcutButtonsEvent {} -pub type ButtonBuilder = Box Button>; +pub type ButtonBuilder = Box Button>; pub type OnButtonClickFn = Box)>; #[derive(Clone, Default)] @@ -122,7 +122,7 @@ pub struct NumberShortcutButtonBuilder { impl NumberShortcutButtonBuilder { pub fn new( - button_builder: impl Fn(bool, &warpui::AppContext) -> Button + 'static, + button_builder: impl Fn(bool, &galaxyui::AppContext) -> Button + 'static, on_click: impl Fn(&mut ViewContext) + 'static, ) -> Self { Self { @@ -132,7 +132,7 @@ impl NumberShortcutButtonBuilder { } } -pub fn numbered_shortcut_button( +pub fn numbered_shortcut_button( number: usize, text_label: String, is_checked: bool, @@ -307,7 +307,7 @@ impl View for NumberShortcutButtons { "NumberShortcutButtons" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { Hoverable::new(self.mouse_state.clone(), |_| { let mut content = Flex::column().with_cross_axis_alignment(CrossAxisAlignment::Stretch); for (index, button_builder) in self.button_builders.iter().enumerate() { @@ -357,7 +357,7 @@ impl View for NumberShortcutButtons { .finish() } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if !self.button_builders.is_empty() && self.keyboard_shortcuts_enabled(app) { context.set.insert(NUMBER_SELECT_ENABLED); diff --git a/app/src/ai/blocklist/block/number_shortcut_buttons_tests.rs b/app/src/ai/blocklist/block/number_shortcut_buttons_tests.rs index e37a7bf6..56aae29c 100644 --- a/app/src/ai/blocklist/block/number_shortcut_buttons_tests.rs +++ b/app/src/ai/blocklist/block/number_shortcut_buttons_tests.rs @@ -1,7 +1,7 @@ use pathfinder_geometry::vector::{vec2f, Vector2F}; use std::{cell::RefCell, rc::Rc}; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ new_scrollable::SingleAxisConfig, ChildView, Clipped, ClippedScrollStateHandle, ConstrainedBox, Fill, @@ -71,8 +71,8 @@ impl View for TestView { "NumberShortcutButtonsTestView" } - fn render(&self, _app: &warpui::AppContext) -> Box { - let scrollable = warpui::elements::NewScrollable::vertical( + fn render(&self, _app: &galaxyui::AppContext) -> Box { + let scrollable = galaxyui::elements::NewScrollable::vertical( SingleAxisConfig::Clipped { handle: self.scroll_state.clone(), child: ChildView::new(&self.buttons).finish(), diff --git a/app/src/ai/blocklist/block/numbered_button.rs b/app/src/ai/blocklist/block/numbered_button.rs index d7e009ac..b023c9ca 100644 --- a/app/src/ai/blocklist/block/numbered_button.rs +++ b/app/src/ai/blocklist/block/numbered_button.rs @@ -1,7 +1,7 @@ use crate::context_chips::spacing; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::{ elements::{ Border, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, FormattedTextElement, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, @@ -176,5 +176,5 @@ pub(super) fn build_text_button_content( pub(super) fn build_inline_input_content( input_view: &ViewHandle, ) -> Box { - warpui::presenter::ChildView::new(input_view).finish() + galaxyui::presenter::ChildView::new(input_view).finish() } diff --git a/app/src/ai/blocklist/block/pending_user_query_block.rs b/app/src/ai/blocklist/block/pending_user_query_block.rs index c1814295..73fb7e23 100644 --- a/app/src/ai/blocklist/block/pending_user_query_block.rs +++ b/app/src/ai/blocklist/block/pending_user_query_block.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ChildView, Container, CrossAxisAlignment, Expanded, Flex, ParentElement, Text}, fonts::{Properties, Style, Weight}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, diff --git a/app/src/ai/blocklist/block/secret_redaction.rs b/app/src/ai/blocklist/block/secret_redaction.rs index 13ca0079..5245c851 100644 --- a/app/src/ai/blocklist/block/secret_redaction.rs +++ b/app/src/ai/blocklist/block/secret_redaction.rs @@ -2,8 +2,8 @@ use std::collections::HashMap; use itertools::Itertools; use similar::DiffableStr; -use warpui::elements::{MouseStateHandle, PartialClickableElement, SecretRange}; -use warpui::platform::Cursor; +use galaxyui::elements::{MouseStateHandle, PartialClickableElement, SecretRange}; +use galaxyui::platform::Cursor; use crate::ai::agent::{AIAgentOutput, AIAgentTextSection, AgentOutputText}; use crate::terminal::model::secrets::{SecretLevel, REGEX_LEVEL_METADATA, SECRETS_REGEX}; diff --git a/app/src/ai/blocklist/block/secret_redaction_test.rs b/app/src/ai/blocklist/block/secret_redaction_test.rs index 6455b797..1db65a3c 100644 --- a/app/src/ai/blocklist/block/secret_redaction_test.rs +++ b/app/src/ai/blocklist/block/secret_redaction_test.rs @@ -1,7 +1,7 @@ use regex::Regex; use serial_test::serial; -use warpui::elements::Text; -use warpui::fonts::FamilyId; +use galaxyui::elements::Text; +use galaxyui::fonts::FamilyId; use crate::terminal::model::secrets::{self, SecretLevel}; diff --git a/app/src/ai/blocklist/block/status_bar.rs b/app/src/ai/blocklist/block/status_bar.rs index 0a41b92a..f7106296 100644 --- a/app/src/ai/blocklist/block/status_bar.rs +++ b/app/src/ai/blocklist/block/status_bar.rs @@ -70,12 +70,12 @@ use crate::{ use instant::Instant; use parking_lot::FairMutex; use pathfinder_color::ColorU; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{appearance::Appearance, theme::Fill, Icon as CoreIcon}, }; -use warpui::elements::shimmering_text::ShimmeringTextStateHandle; -use warpui::{ +use galaxyui::elements::shimmering_text::ShimmeringTextStateHandle; +use galaxyui::{ elements::{Border, Container, Empty, Flex, MouseStateHandle, ParentElement, Text}, keymap::Keystroke, presenter::ChildView, @@ -83,7 +83,7 @@ use warpui::{ AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle, }; -use warpui::{r#async::Timer, TypedActionView}; +use galaxyui::{r#async::Timer, TypedActionView}; pub fn init(app: &mut AppContext) { summarization_cancel_dialog::init(app); @@ -990,7 +990,7 @@ fn latest_model_used_before_exchange( fn render_agent_tip(tip: &AgentTip, app: &AppContext) -> Box { use crate::ai::agent_tips::AITip; use markdown_parser::{FormattedTextFragment, FormattedTextLine}; - use warpui::text_layout::ClipConfig; + use galaxyui::text_layout::ClipConfig; let appearance = Appearance::as_ref(app); let theme = appearance.theme(); @@ -1010,7 +1010,7 @@ fn render_agent_tip(tip: &AgentTip, app: &AppContext) -> Box { let formatted_text = markdown_parser::FormattedText::new(vec![FormattedTextLine::Line(fragments)]); - warpui::elements::FormattedTextElement::new( + galaxyui::elements::FormattedTextElement::new( formatted_text, appearance.monospace_font_size() - 3., appearance.ui_font_family(), @@ -1022,7 +1022,7 @@ fn render_agent_tip(tip: &AgentTip, app: &AppContext) -> Box { .set_selectable(true) .with_clip(ClipConfig::ellipsis()) .register_default_click_handlers_with_action_support(move |link, evt, app| { - use warpui::elements::HyperlinkLens; + use galaxyui::elements::HyperlinkLens; match link { HyperlinkLens::Url(url) => { send_telemetry_from_app_ctx!( @@ -1130,7 +1130,7 @@ impl View for BlocklistAIStatusBar { "BlocklistAIStatusBar" } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let agent_view_controller = self.agent_view_controller.as_ref(app); if let Some(cloud_mode_setup_terminal_message) = diff --git a/app/src/ai/blocklist/block/toggleable_items.rs b/app/src/ai/blocklist/block/toggleable_items.rs index ec2272c0..0143d51c 100644 --- a/app/src/ai/blocklist/block/toggleable_items.rs +++ b/app/src/ai/blocklist/block/toggleable_items.rs @@ -1,6 +1,6 @@ use crate::appearance::Appearance; use crate::ui_components::blended_colors; -use warpui::{ +use galaxyui::{ elements::{ Border, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, @@ -123,7 +123,7 @@ impl View for ToggleableItemsView { "ToggleableItemsView" } - fn keymap_context(&self, _app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, _app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if !self.items.is_empty() { context.set.insert(HAS_ITEMS); diff --git a/app/src/ai/blocklist/block/view_impl.rs b/app/src/ai/blocklist/block/view_impl.rs index cda8430f..952e0ac5 100644 --- a/app/src/ai/blocklist/block/view_impl.rs +++ b/app/src/ai/blocklist/block/view_impl.rs @@ -33,18 +33,18 @@ use common::get_highlight_ranges_for_find_matches; use pathfinder_color::ColorU; use settings::Setting as _; use std::collections::{HashMap, HashSet}; -use warp_core::features::FeatureFlag; -use warp_core::semantic_selection::SemanticSelection; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxyui::elements::{ Align, ConstrainedBox, CornerRadius, CrossAxisAlignment, Empty, Expanded, FormattedTextElement, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, Radius, SavePosition, SelectableArea, }; -use warpui::{ +use galaxyui::{ elements::{Border, Container, Flex, ParentElement}, AppContext, Element, SingletonEntity, }; -use warpui::{View, ViewContext}; +use galaxyui::{View, ViewContext}; use crate::ai::agent::AIAgentCitation; use crate::ai::agent::AIAgentInput; @@ -83,22 +83,22 @@ use crate::ui_components::icons::Icon; use crate::util::link_detection::DetectedLinkType; use crate::workspace::WorkspaceAction; use itertools::Itertools; -use warp_core::ui::color::contrast::{ +use galaxy_core::ui::color::contrast::{ foreground_color_with_minimum_contrast, MinimumAllowedContrast, }; -use warp_core::ui::color::Rgb; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warpui::elements::{Highlight, HighlightedRange, Text}; -use warpui::fonts::Properties; -use warpui::platform::Cursor; -use warpui::text_layout::TextStyle; -use warpui::ui_components::components::UiComponent; +use galaxy_core::ui::color::Rgb; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxyui::elements::{Highlight, HighlightedRange, Text}; +use galaxyui::fonts::Properties; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::TextStyle; +use galaxyui::ui_components::components::UiComponent; /// Helper function to create gray strikethrough highlight for secrets fn create_secret_gray_highlight() -> Highlight { Highlight::new().with_text_style( TextStyle::new() - .with_foreground_color(warpui::color::ColorU::new(128, 128, 128, 255)) + .with_foreground_color(galaxyui::color::ColorU::new(128, 128, 128, 255)) .with_show_strikethrough(true), ) } @@ -137,7 +137,7 @@ fn add_slash_command_highlight( let current_properties = existing.properties(); let mut bold_properties = current_properties; - bold_properties.weight = warpui::fonts::Weight::Bold; + bold_properties.weight = galaxyui::fonts::Weight::Bold; Highlight::new() .with_text_style(updated_style) @@ -145,7 +145,7 @@ fn add_slash_command_highlight( } else { // Create new highlight with default properties and bold weight let default_properties = Properties { - weight: warpui::fonts::Weight::Bold, + weight: galaxyui::fonts::Weight::Bold, ..Default::default() }; Highlight::new() @@ -693,13 +693,13 @@ pub fn render_citation( ) } AIAgentCitation::WarpDocumentation { .. } => { - let icon = Icon::Warp.to_warpui_icon(theme.foreground()).finish(); + let icon = Icon::Warp.to_galaxyui_icon(theme.foreground()).finish(); let name = String::from("Warp Docs"); (Some(icon), name) } AIAgentCitation::WebPage { url } => { let icon = Icon::LinkExternal - .to_warpui_icon(theme.foreground()) + .to_galaxyui_icon(theme.foreground()) .finish(); let name = url.clone(); (Some(icon), name) @@ -1225,13 +1225,13 @@ impl View for AIBlock { selectable.finish() } - fn on_focus(&mut self, focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { if focus_ctx.is_self_focused() { self.focus_subview_if_necessary(ctx); } } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if self diff --git a/app/src/ai/blocklist/block/view_impl/comments.rs b/app/src/ai/blocklist/block/view_impl/comments.rs index c61ba260..5d2f7190 100644 --- a/app/src/ai/blocklist/block/view_impl/comments.rs +++ b/app/src/ai/blocklist/block/view_impl/comments.rs @@ -2,14 +2,14 @@ use crate::ai::agent::comment::ReviewComment; use crate::ai::agent::icons::addressed_comment_icon; use crate::ai::blocklist::block::CommentElementState; use crate::code_review::comments::ReviewCommentBatch; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::Icon; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ Axis, Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Flex, Hoverable, MouseState, ParentElement, Radius, Text, Wrap, WrapFillEntireRun, }; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::{AppContext, Element, SingletonEntity}; const COMMENT_CHIP_MAX_HEIGHT: f32 = 200.; @@ -162,7 +162,7 @@ fn comment_icon(is_addressed: bool, appearance: &Appearance) -> Box addressed_comment_icon(appearance).finish() } else { Icon::MessageText - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().background()), diff --git a/app/src/ai/blocklist/block/view_impl/common.rs b/app/src/ai/blocklist/block/view_impl/common.rs index 4ac5cf57..7da8fb7e 100644 --- a/app/src/ai/blocklist/block/view_impl/common.rs +++ b/app/src/ai/blocklist/block/view_impl/common.rs @@ -16,11 +16,11 @@ use markdown_parser::{FormattedText, FormattedTextInline, TableAlignment}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use std::sync::Arc; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{appearance::Appearance, color::blend::Blend, theme::color::internal_colors}, }; -use warpui::{ +use galaxyui::{ assets::asset_cache::{AssetCache, AssetSource, AssetState}, elements::{ new_scrollable::{ScrollableAppearance, SingleAxisConfig}, @@ -113,13 +113,13 @@ use crate::{ search::slash_command_menu::static_commands::commands, settings::{FontSettings, InputSettings}, }; -use warp_core::channel::ChannelState; -use warp_editor::content::{ +use galaxy_core::channel::ChannelState; +use galaxy_editor::content::{ edit::resolve_asset_source_relative_to_directory, mermaid_diagram::mermaid_asset_source, }; -use warp_util::path::to_relative_path; -use warpui::elements::shimmering_text::ShimmeringTextStateHandle; -use warpui::elements::{Highlight, HighlightedRange}; +use galaxy_util::path::to_relative_path; +use galaxyui::elements::shimmering_text::ShimmeringTextStateHandle; +use galaxyui::elements::{Highlight, HighlightedRange}; pub const STATUS_ICON_SIZE_DELTA: f32 = 4.; pub const STATUS_FOOTER_VERTICAL_PADDING: f32 = 4.; @@ -854,7 +854,7 @@ fn render_queue_next_prompt_button( }; let icon_size = get_icon_size(appearance); let icon = Container::new( - ConstrainedBox::new(Icon::ClockPlus.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(Icon::ClockPlus.to_galaxyui_icon(icon_color).finish()) .with_height(icon_size) .with_width(icon_size) .finish(), @@ -889,7 +889,7 @@ fn render_auto_approve_button(props: ButtonProps, appearance: &Appearance) -> Bo let icon_size = get_icon_size(appearance); let icon = Container::new( ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().active_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(icon_size) @@ -1009,7 +1009,7 @@ where .with_child(content) .with_spacing(4.0); - if !warpui::platform::is_mobile_device() { + if !galaxyui::platform::is_mobile_device() { let keybinding_string = keybinding.map(|k| k.displayed()).unwrap_or_default(); let keybinding_label = Text::new_inline( keybinding_string, @@ -2183,8 +2183,8 @@ fn render_visual_markdown_block( tooltip, mouse_state, content, - warpui::elements::ParentAnchor::TopMiddle, - warpui::elements::ChildAnchor::BottomMiddle, + galaxyui::elements::ParentAnchor::TopMiddle, + galaxyui::elements::ChildAnchor::BottomMiddle, // Small negative Y offset keeps a hairline gap between the // tooltip's bottom edge and the image's top edge without // floating noticeably above the image. @@ -2232,7 +2232,7 @@ fn render_visual_card( let theme = appearance.theme(); let header_background = theme.surface_2(); let header_text_color = blended_colors::text_main(theme, header_background); - let header_icon = ConstrainedBox::new(icon.to_warpui_icon(header_text_color.into()).finish()) + let header_icon = ConstrainedBox::new(icon.to_galaxyui_icon(header_text_color.into()).finish()) .with_width(16.) .with_height(16.) .finish(); @@ -2444,7 +2444,7 @@ fn render_table_section( row_dividers: table_appearance.row_dividers, cell_padding, header_background: table_appearance.header_background, - row_background: warpui::elements::RowBackground { + row_background: galaxyui::elements::RowBackground { primary: table_appearance.cell_background, alternating: table_appearance.alternate_row_background, }, @@ -2548,7 +2548,7 @@ fn render_table_cell(props: TableCellProps, app: &AppContext) -> Box, home_dir: PathBuf, ) -> Option { - use warp_util::path::CleanPathResult; + use galaxy_util::path::CleanPathResult; use crate::util::file::{absolute_path_if_valid, ShellPathType}; @@ -3015,7 +3015,7 @@ pub fn render_failed_output(props: FailedOutputProps, app: &AppContext) -> Box( appearance .ui_builder() .button( - warpui::ui_components::button::ButtonVariant::Text, + galaxyui::ui_components::button::ButtonVariant::Text, props.submit_issue_button_handle, ) .with_centered_text_label("Send Feedback".to_string()) @@ -3311,8 +3311,8 @@ pub(crate) fn render_debug_footer( "Copy debug ID".to_string(), props.debug_copy_button_handle, copy_button, - warpui::elements::ParentAnchor::TopRight, - warpui::elements::ChildAnchor::BottomRight, + galaxyui::elements::ParentAnchor::TopRight, + galaxyui::elements::ChildAnchor::BottomRight, vec2f(0., -8.), ); diff --git a/app/src/ai/blocklist/block/view_impl/common_tests.rs b/app/src/ai/blocklist/block/view_impl/common_tests.rs index aa2c0d2e..faf24e77 100644 --- a/app/src/ai/blocklist/block/view_impl/common_tests.rs +++ b/app/src/ai/blocklist/block/view_impl/common_tests.rs @@ -3,8 +3,8 @@ use std::{collections::HashMap, path::PathBuf, sync::Arc}; use ai::skills::{ParsedSkill, SkillProvider, SkillScope}; #[cfg(feature = "local_fs")] -use warpui::assets::asset_cache::AssetSource; -use warpui::App; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::App; #[cfg(feature = "local_fs")] use super::{blocklist_image_asset_source, ResolvedBlocklistImageSources}; @@ -23,7 +23,7 @@ use crate::{ search::slash_command_menu::static_commands::commands, }; use ui_components::lightbox::{LightboxImage, LightboxImageSource}; -use warpui::{elements::Empty, Element}; +use galaxyui::{elements::Empty, Element}; #[test] fn query_prefix_highlight_len_highlights_invoke_skill_inputs() { diff --git a/app/src/ai/blocklist/block/view_impl/header.rs b/app/src/ai/blocklist/block/view_impl/header.rs index 7aefb6b4..2eba967b 100644 --- a/app/src/ai/blocklist/block/view_impl/header.rs +++ b/app/src/ai/blocklist/block/view_impl/header.rs @@ -1,12 +1,12 @@ //! Renders the AI block "header", which includes a version of the AI "prompt" as it was rendered //! when the query was submitted. -use warp_core::features::FeatureFlag; -use warp_util::path::user_friendly_path; -use warpui::elements::MouseStateHandle; -use warpui::elements::{ChildView, Hoverable, SavePosition}; -use warpui::platform::Cursor; -use warpui::EntityId; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_util::path::user_friendly_path; +use galaxyui::elements::MouseStateHandle; +use galaxyui::elements::{ChildView, Hoverable, SavePosition}; +use galaxyui::platform::Cursor; +use galaxyui::EntityId; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Radius, Text, @@ -26,7 +26,7 @@ use crate::terminal::view::{TerminalAction, WARP_PROMPT_HEIGHT_LINES}; use crate::ui_components::blended_colors; use crate::ui_components::icons::Icon; use crate::view_components::action_button::ActionButton; -use warpui::elements::Icon as ElementIcon; +use galaxyui::elements::Icon as ElementIcon; /// Data required to render the AI block header. pub(super) struct Props<'a> { @@ -163,7 +163,7 @@ fn render_attached_context_chip( Container::new( ConstrainedBox::new( Icon::Paperclip - .to_warpui_icon(block_count_color.into()) + .to_galaxyui_icon(block_count_color.into()) .finish(), ) .with_height(font_size) diff --git a/app/src/ai/blocklist/block/view_impl/imported_comments.rs b/app/src/ai/blocklist/block/view_impl/imported_comments.rs index 347a5e27..daac84a2 100644 --- a/app/src/ai/blocklist/block/view_impl/imported_comments.rs +++ b/app/src/ai/blocklist/block/view_impl/imported_comments.rs @@ -1,7 +1,7 @@ use crate::ai::blocklist::block::ImportedCommentGroup; -use warpui::elements::{CrossAxisAlignment, Flex, ParentElement}; -use warpui::prelude::ChildView; -use warpui::{AppContext, Element}; +use galaxyui::elements::{CrossAxisAlignment, Flex, ParentElement}; +use galaxyui::prelude::ChildView; +use galaxyui::{AppContext, Element}; pub(crate) fn render_imported_comments( group: &ImportedCommentGroup, diff --git a/app/src/ai/blocklist/block/view_impl/orchestration.rs b/app/src/ai/blocklist/block/view_impl/orchestration.rs index 71c757bc..99a38af4 100644 --- a/app/src/ai/blocklist/block/view_impl/orchestration.rs +++ b/app/src/ai/blocklist/block/view_impl/orchestration.rs @@ -1,15 +1,15 @@ //! Rendering functions for orchestration-related output items (messaging & agent management). use pathfinder_color::ColorU; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, Hoverable, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::platform::Cursor; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::platform::Cursor; +use galaxyui::{AppContext, Element, SingletonEntity}; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warpui::elements::FormattedTextElement; +use galaxyui::elements::FormattedTextElement; use crate::ai::agent::conversation::{AIConversation, AIConversationId, ConversationStatus}; use crate::ai::agent::{ @@ -655,7 +655,7 @@ fn render_collapse_chevron( Some( Hoverable::new(toggle_mouse_state, move |_| { - ConstrainedBox::new(chevron_icon.to_warpui_icon(text_color).finish()) + ConstrainedBox::new(chevron_icon.to_galaxyui_icon(text_color).finish()) .with_width(icon_sz) .with_height(icon_sz) .finish() diff --git a/app/src/ai/blocklist/block/view_impl/orchestration_tests.rs b/app/src/ai/blocklist/block/view_impl/orchestration_tests.rs index 3633b15a..bc9346a8 100644 --- a/app/src/ai/blocklist/block/view_impl/orchestration_tests.rs +++ b/app/src/ai/blocklist/block/view_impl/orchestration_tests.rs @@ -2,9 +2,9 @@ use crate::ai::agent::conversation::{AIConversationId, ConversationStatus}; use crate::ai::agent::{StartAgentExecutionMode, StartAgentResult}; use crate::BlocklistAIHistoryModel; use ai::agent::action_result::StartAgentVersion; -use warp_core::ui::appearance::Appearance; -use warpui::elements::MouseStateHandle; -use warpui::{App, EntityId}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::MouseStateHandle; +use galaxyui::{App, EntityId}; use super::{ agent_display_name_from_id, child_conversation_card_data_for_result, diff --git a/app/src/ai/blocklist/block/view_impl/output.rs b/app/src/ai/blocklist/block/view_impl/output.rs index 455346f2..8f34cfea 100644 --- a/app/src/ai/blocklist/block/view_impl/output.rs +++ b/app/src/ai/blocklist/block/view_impl/output.rs @@ -41,14 +41,14 @@ use ai::skills::SkillReference; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use ui_components::{button, Component as _, Options as _}; -use warp_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::color::internal_colors; #[allow(unused_imports)] -use warp_util::path::{common_path, CleanPathResult}; -use warpui::elements::new_scrollable::SingleAxisConfig; -use warpui::elements::{ +use galaxy_util::path::{common_path, CleanPathResult}; +use galaxyui::elements::new_scrollable::SingleAxisConfig; +use galaxyui::elements::{ ChildAnchor, NewScrollable, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack, }; -use warpui::EntityId; +use galaxyui::EntityId; use crate::ai::blocklist::block::{ CollapsibleElementState, CollapsibleExpansionState, FinishReason, ImportedCommentGroup, @@ -110,7 +110,7 @@ use crate::{ }; use itertools::Itertools; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use super::common::{ format_elapsed_seconds, render_debug_footer, render_failed_output, render_informational_footer, @@ -127,7 +127,7 @@ use super::{ render_citation_chips, todos::render_completed_todo_items, WithContentItemSpacing, CONTENT_ITEM_VERTICAL_MARGIN, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Fill, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, @@ -1936,7 +1936,7 @@ fn render_stopped_output(props: Props, app: &AppContext) -> Box { let ui_builder = appearance.ui_builder().clone(); let play_icon = Container::new( - ConstrainedBox::new(Icon::Play.to_warpui_icon(theme.foreground()).finish()) + ConstrainedBox::new(Icon::Play.to_galaxyui_icon(theme.foreground()).finish()) .with_height(appearance.ui_font_size() + 1.) .with_width(appearance.ui_font_size() + 1.) .finish(), @@ -1988,7 +1988,7 @@ fn render_stopped_output(props: Props, app: &AppContext) -> Box { .set_background(internal_colors::fg_overlay_3(theme).into()), ); - let resume_button = warpui::ui_components::button::Button::new( + let resume_button = galaxyui::ui_components::button::Button::new( props.state_handles.resume_conversation_handle.clone(), button_styles, Some(hovered_styles), @@ -2175,7 +2175,7 @@ fn render_suggest_new_conversation( ), SuggestNewConversationResult::Rejected => ( "Continuing current conversation", - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( Icon::FlipForward.into(), internal_colors::neutral_6(theme), ) @@ -2832,7 +2832,7 @@ fn render_references_footer( .finish(), ) .with_child( - ConstrainedBox::new(chevron.to_warpui_icon(title_row_color).finish()) + ConstrainedBox::new(chevron.to_galaxyui_icon(title_row_color).finish()) .with_height(icon_size(app) - 2.) .with_width(icon_size(app) - 2.) .finish(), @@ -3247,7 +3247,7 @@ fn render_usage_button(props: Props, app: &AppContext) -> Box { // Expansion icon ConstrainedBox::new( expansion_icon - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().background()), @@ -3312,7 +3312,7 @@ pub fn action_icon( action_model: &ModelHandle, ai_block_model: &dyn AIBlockModel, app: &AppContext, -) -> warpui::elements::Icon { +) -> galaxyui::elements::Icon { let appearance = Appearance::as_ref(app); let status = action_model.as_ref(app).get_action_status(action_id); match status { @@ -3412,7 +3412,7 @@ fn render_collapsible_header( ) .with_child( Container::new( - ConstrainedBox::new(chevron_icon.to_warpui_icon(text_color.into()).finish()) + ConstrainedBox::new(chevron_icon.to_galaxyui_icon(text_color.into()).finish()) .with_width(icon_size - 2.) .with_height(icon_size - 2.) .finish(), @@ -3627,7 +3627,7 @@ fn render_collapsible_debug_output( // Chevron icon row.add_child( Container::new( - ConstrainedBox::new(chevron_icon.to_warpui_icon(text_color.into()).finish()) + ConstrainedBox::new(chevron_icon.to_galaxyui_icon(text_color.into()).finish()) .with_width(icon_size - 2.) .with_height(icon_size - 2.) .finish(), diff --git a/app/src/ai/blocklist/block/view_impl/query.rs b/app/src/ai/blocklist/block/view_impl/query.rs index 07b5407a..df537329 100644 --- a/app/src/ai/blocklist/block/view_impl/query.rs +++ b/app/src/ai/blocklist/block/view_impl/query.rs @@ -2,8 +2,8 @@ //! //! Queries are not rendered in blocks corresponding to requested command or requested action responses. -use warp_core::{features::FeatureFlag, ui::theme::color::internal_colors}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::theme::color::internal_colors}; +use galaxyui::{ elements::{ Container, CornerRadius, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Radius, Shrinkable, Wrap, @@ -116,7 +116,7 @@ pub(crate) fn render_query( } Flex::row() - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Start) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Start) .with_child(avatar) .with_child(Shrinkable::new(1., query.finish()).finish()) .finish() @@ -153,7 +153,7 @@ fn render_attachments( ..Default::default() }, ) - .with_icon(icon.to_warpui_icon( + .with_icon(icon.to_galaxyui_icon( blended_colors::text_sub(appearance.theme(), appearance.theme().background()).into(), )) .build() diff --git a/app/src/ai/blocklist/block/view_impl/todos.rs b/app/src/ai/blocklist/block/view_impl/todos.rs index 7ffa3527..6ebac1d1 100644 --- a/app/src/ai/blocklist/block/view_impl/todos.rs +++ b/app/src/ai/blocklist/block/view_impl/todos.rs @@ -1,8 +1,8 @@ //! Rendering logic for todo list components in AI blocks. -use warpui::fonts::Properties; -use warpui::text_layout::TextStyle; -use warpui::{ +use galaxyui::fonts::Properties; +use galaxyui::text_layout::TextStyle; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, Highlight, ParentElement, Radius, Shrinkable, Text, @@ -169,9 +169,9 @@ pub(super) fn render_completed_todo_items( // Create a check mark icon let check_icon = Container::new( ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( Icon::Check.into(), - warp_core::ui::theme::Fill::Solid(sub_text_color), + galaxy_core::ui::theme::Fill::Solid(sub_text_color), ) .finish(), ) diff --git a/app/src/ai/blocklist/block_tests.rs b/app/src/ai/blocklist/block_tests.rs index d12ab1bd..32e35602 100644 --- a/app/src/ai/blocklist/block_tests.rs +++ b/app/src/ai/blocklist/block_tests.rs @@ -2,7 +2,7 @@ use super::{CollapsibleElementState, CollapsibleExpansionState}; use crate::settings::AISettings; use crate::test_util::settings::initialize_settings_for_tests; use settings::Setting; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; #[test] fn reasoning_auto_collapses_when_user_has_not_manually_toggled() { diff --git a/app/src/ai/blocklist/code_block.rs b/app/src/ai/blocklist/code_block.rs index 6af73078..cf70790e 100644 --- a/app/src/ai/blocklist/code_block.rs +++ b/app/src/ai/blocklist/code_block.rs @@ -6,9 +6,9 @@ use crate::code::editor_management::CodeSource; use crate::search::files::icon::icon_from_file_path; use crate::search::ItemHighlightState; use std::iter; -use warp_core::ui::theme::Fill; -use warpui::elements::{ChildView, HighlightedRange, MouseStateHandle}; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ChildView, HighlightedRange, MouseStateHandle}; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Radius, Shrinkable, Text, @@ -16,7 +16,7 @@ use warpui::{ ui_components::components::UiComponent, AppContext, Element, SingletonEntity, }; -use warpui::{EventContext, ViewHandle}; +use galaxyui::{EventContext, ViewHandle}; use crate::code::editor::view::CodeEditorView; use crate::ui_components::blended_colors; diff --git a/app/src/ai/blocklist/codebase_index_speedbump_banner.rs b/app/src/ai/blocklist/codebase_index_speedbump_banner.rs index ad1d6317..72528f55 100644 --- a/app/src/ai/blocklist/codebase_index_speedbump_banner.rs +++ b/app/src/ai/blocklist/codebase_index_speedbump_banner.rs @@ -4,10 +4,10 @@ use crate::appearance::Appearance; use crate::terminal::view::{InlineBannerId, TerminalAction}; use crate::ui_components::blended_colors; use crate::ui_components::icons::Icon; -use warpui::elements::{Align, ConstrainedBox}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::Coords; -use warpui::{ +use galaxyui::elements::{Align, ConstrainedBox}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::Coords; +use galaxyui::{ elements::{ Container, CrossAxisAlignment, Flex, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, @@ -150,7 +150,7 @@ impl CodebaseIndexSpeedbumpBannerState { let info_icon = Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_width(appearance.ui_font_size() * 1.2) diff --git a/app/src/ai/blocklist/context_model.rs b/app/src/ai/blocklist/context_model.rs index 671b1d46..b76092b7 100644 --- a/app/src/ai/blocklist/context_model.rs +++ b/app/src/ai/blocklist/context_model.rs @@ -16,8 +16,8 @@ use crate::ai::{ use super::agent_view::{AgentViewController, AgentViewEntryOrigin, EnterAgentViewError}; use ai::project_context::model::ProjectContextModel; use parking_lot::FairMutex; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::agent::conversation::{AIConversationAutoexecuteMode, ConversationStatus}; use crate::{ @@ -294,7 +294,7 @@ impl BlocklistAIContextModel { // In sandboxed/autonomous mode (SDK mode with --sandboxed flag), automatically set // conversations to RunToCompletion mode so they don't wait for user confirmation. let pending_query_state = - if warp_core::execution_mode::AppExecutionMode::as_ref(ctx).is_sandboxed() { + if galaxy_core::execution_mode::AppExecutionMode::as_ref(ctx).is_sandboxed() { PendingQueryState::New { autoexecute_override: AIConversationAutoexecuteMode::RunToCompletion, } diff --git a/app/src/ai/blocklist/controller.rs b/app/src/ai/blocklist/controller.rs index 5ddd07ac..cbaad41a 100644 --- a/app/src/ai/blocklist/controller.rs +++ b/app/src/ai/blocklist/controller.rs @@ -74,12 +74,12 @@ use session_sharing_protocol::common::ParticipantId; use std::collections::{HashMap, HashSet}; use std::sync::Arc; use std::time::Duration; -use warp_core::assertions::safe_assert; +use galaxy_core::assertions::safe_assert; use warp_multi_agent_api::{message, Task, ToolType}; -use warpui::r#async::{SpawnedFutureHandle, Timer}; +use galaxyui::r#async::{SpawnedFutureHandle, Timer}; use super::orchestration_events::{OrchestrationEventService, OrchestrationEventServiceEvent}; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; #[derive(Debug, Clone)] pub struct SessionContext { @@ -111,7 +111,7 @@ impl SessionContext { /// Returns the remote host ID if this is a `WarpifiedRemote` session with /// a connected `RemoteServerClient`. - pub fn host_id(&self) -> Option<&warp_core::HostId> { + pub fn host_id(&self) -> Option<&galaxy_core::HostId> { match &self.session_type { Some(SessionType::WarpifiedRemote { host_id }) => host_id.as_ref(), Some(SessionType::Local) | None => None, diff --git a/app/src/ai/blocklist/controller/input_context.rs b/app/src/ai/blocklist/controller/input_context.rs index edd7856b..0532b136 100644 --- a/app/src/ai/blocklist/controller/input_context.rs +++ b/app/src/ai/blocklist/controller/input_context.rs @@ -4,8 +4,8 @@ use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; use chrono::Local; use lazy_static::lazy_static; use regex::Regex; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, SingletonEntity}; use crate::{ ai::{ @@ -31,7 +31,7 @@ use crate::{ TerminalView, }, }; -use warp_graphql::generic_string_object::GenericStringObjectFormat as GraphQLFormat; +use galaxy_graphql::generic_string_object::GenericStringObjectFormat as GraphQLFormat; lazy_static! { // Regex to match patterns diff --git a/app/src/ai/blocklist/controller/pending_response_streams.rs b/app/src/ai/blocklist/controller/pending_response_streams.rs index ebed462e..d1413e73 100644 --- a/app/src/ai/blocklist/controller/pending_response_streams.rs +++ b/app/src/ai/blocklist/controller/pending_response_streams.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use itertools::Itertools; -use warpui::{AppContext, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::agent::{conversation::AIConversationId, CancellationReason}, diff --git a/app/src/ai/blocklist/controller/response_stream.rs b/app/src/ai/blocklist/controller/response_stream.rs index f427b1d9..07aa3d40 100644 --- a/app/src/ai/blocklist/controller/response_stream.rs +++ b/app/src/ai/blocklist/controller/response_stream.rs @@ -5,7 +5,7 @@ use chrono::{DateTime, Local, TimeDelta}; use futures::channel::oneshot; use uuid::Uuid; use warp_multi_agent_api::response_event; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::{ ai::{ @@ -121,15 +121,20 @@ impl ResponseStream { let request_id = Uuid::new_v4(); let bedrock_config = Self::bedrock_config_if_applicable(params.model.as_str(), ctx); let params_clone = params.clone(); - let _ = - ctx.spawn( - async move { - generate_multi_agent_output(server_api, bedrock_config, params_clone, cancellation_rx).await - }, - move |me, stream, ctx| { - me.handle_response_stream_result(request_id, stream, ctx); - }, - ); + let _ = ctx.spawn( + async move { + generate_multi_agent_output( + server_api, + bedrock_config, + params_clone, + cancellation_rx, + ) + .await + }, + move |me, stream, ctx| { + me.handle_response_stream_result(request_id, stream, ctx); + }, + ); Self { id: ResponseStreamId(Uuid::new_v4().to_string()), params: params.clone(), @@ -188,7 +193,10 @@ impl ResponseStream { let bedrock_config = Self::bedrock_config_if_applicable(params.model.as_str(), ctx); let server_api = ServerApiProvider::as_ref(ctx).get(); let _ = ctx.spawn( - async move { generate_multi_agent_output(server_api, bedrock_config, params, cancellation_rx).await }, + async move { + generate_multi_agent_output(server_api, bedrock_config, params, cancellation_rx) + .await + }, move |me, stream, ctx| { me.handle_response_stream_result(request_id, stream, ctx); }, diff --git a/app/src/ai/blocklist/controller/shared_session.rs b/app/src/ai/blocklist/controller/shared_session.rs index 600341a9..03a2b6da 100644 --- a/app/src/ai/blocklist/controller/shared_session.rs +++ b/app/src/ai/blocklist/controller/shared_session.rs @@ -5,7 +5,7 @@ use std::collections::HashMap; use itertools::Itertools; use session_sharing_protocol::common::{AgentAttachment, ParticipantId, ServerConversationToken}; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api::response_event::{stream_finished, ClientActions}; use warp_multi_agent_api::{client_action::Action, message::Message}; @@ -20,7 +20,7 @@ use crate::ai::blocklist::agent_view::AgentViewEntryOrigin; use crate::ai::blocklist::history_model::BlocklistAIHistoryModel; use crate::server::server_api::ServerApiProvider; use crate::terminal::model::block::BlockId; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; #[derive(Default)] pub(super) struct SharedSessionState { diff --git a/app/src/ai/blocklist/controller/slash_command.rs b/app/src/ai/blocklist/controller/slash_command.rs index 15f6ddc8..2f654039 100644 --- a/app/src/ai/blocklist/controller/slash_command.rs +++ b/app/src/ai/blocklist/controller/slash_command.rs @@ -1,7 +1,7 @@ use std::sync::Arc; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/history_model.rs b/app/src/ai/blocklist/history_model.rs index 3beeb8b4..f99664ac 100644 --- a/app/src/ai/blocklist/history_model.rs +++ b/app/src/ai/blocklist/history_model.rs @@ -6,13 +6,13 @@ use chrono::{DateTime, Local, NaiveDateTime}; use itertools::Itertools as _; use serde::{Deserialize, Serialize}; use uuid::Uuid; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api::response_event::stream_finished::ConversationUsageMetadata; use warp_multi_agent_api::{ client_action::{Action, StartNewConversation}, response_event::stream_finished::TokenUsage, }; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; #[cfg(feature = "local_fs")] use std::sync::{Arc, Mutex}; diff --git a/app/src/ai/blocklist/history_model/conversation_loader.rs b/app/src/ai/blocklist/history_model/conversation_loader.rs index 8a922145..8827f6aa 100644 --- a/app/src/ai/blocklist/history_model/conversation_loader.rs +++ b/app/src/ai/blocklist/history_model/conversation_loader.rs @@ -8,8 +8,8 @@ use std::sync::Arc; use futures::FutureExt; use itertools::Itertools as _; use persistence::model::AgentConversationRecord; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::agent::api::convert_conversation::{ convert_conversation_data_to_ai_conversation, RestorationMode, @@ -179,9 +179,9 @@ pub async fn load_conversation_from_server( /// Boxes a future with the right type for the platform. /// On WASM, futures must not implement Send. -fn box_future(f: F) -> warpui::r#async::BoxFuture<'static, Option> +fn box_future(f: F) -> galaxyui::r#async::BoxFuture<'static, Option> where - F: Future> + warpui::r#async::Spawnable, + F: Future> + galaxyui::r#async::Spawnable, { cfg_if::cfg_if! { if #[cfg(target_family = "wasm")] { @@ -207,7 +207,7 @@ impl BlocklistAIHistoryModel { &self, conversation_id: AIConversationId, ctx: &AppContext, - ) -> warpui::r#async::BoxFuture<'static, Option> { + ) -> galaxyui::r#async::BoxFuture<'static, Option> { // First check if the conversation is already in memory if let Some(conversation) = self.conversations_by_id.get(&conversation_id) { return box_future(futures::future::ready(Some(CloudConversationData::Oz( @@ -263,7 +263,7 @@ impl BlocklistAIHistoryModel { &self, server_token: &ServerConversationToken, ctx: &AppContext, - ) -> warpui::r#async::BoxFuture<'static, Option> { + ) -> galaxyui::r#async::BoxFuture<'static, Option> { // Fast path: token is known locally. if let Some(conversation_id) = self.find_conversation_id_by_server_token(server_token) { return self.load_conversation_data(conversation_id, ctx); diff --git a/app/src/ai/blocklist/history_model_test.rs b/app/src/ai/blocklist/history_model_test.rs index 6dc2a4f4..faaceb1e 100644 --- a/app/src/ai/blocklist/history_model_test.rs +++ b/app/src/ai/blocklist/history_model_test.rs @@ -3,7 +3,7 @@ use std::time::Duration; use chrono::{DateTime, Local, Utc}; use itertools::Itertools; -use warpui::{App, EntityId}; +use galaxyui::{App, EntityId}; use crate::{ ai::{ diff --git a/app/src/ai/blocklist/inline_action/ask_user_question_view.rs b/app/src/ai/blocklist/inline_action/ask_user_question_view.rs index 9eff4b4a..9952358f 100644 --- a/app/src/ai/blocklist/inline_action/ask_user_question_view.rs +++ b/app/src/ai/blocklist/inline_action/ask_user_question_view.rs @@ -5,8 +5,8 @@ use ai::agent::{ action_result::{AskUserQuestionAnswerItem, AskUserQuestionResult}, }; use itertools::Itertools; -use warp_core::ui::theme::{color::internal_colors, WarpTheme}; -use warpui::{ +use galaxy_core::ui::theme::{color::internal_colors, WarpTheme}; +use galaxyui::{ elements::{ new_scrollable::SingleAxisConfig, Border, ChildView, Clipped, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Fill, Flex, @@ -116,7 +116,7 @@ fn ask_user_question_auto_advance_enabled(is_multiselect: bool, is_last_question } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Scope these shortcuts to the active ask-user-question block so arrow/submit keys don't leak // into surrounding views. @@ -340,7 +340,7 @@ struct AskUserQuestionInteractiveViews { /// Header state for the collapsed/expanded completion summary. struct AskUserQuestionCompletionState { label: String, - status_icon: warpui::elements::Icon, + status_icon: galaxyui::elements::Icon, } /// Local questionnaire state machine used by the view. @@ -1305,7 +1305,7 @@ impl AskUserQuestionView { questions: &[AskUserQuestionItem], answers: Option<&[AskUserQuestionAnswerItem]>, label: String, - status_icon: warpui::elements::Icon, + status_icon: galaxyui::elements::Icon, appearance: &Appearance, app: &AppContext, ) -> Box { @@ -1365,7 +1365,7 @@ impl AskUserQuestionView { .with_child(self.render_options_list()) .finish(); - let scrollable = warpui::elements::NewScrollable::vertical( + let scrollable = galaxyui::elements::NewScrollable::vertical( SingleAxisConfig::Clipped { handle: self.options_scroll_state.clone(), child: body, @@ -1474,7 +1474,7 @@ impl View for AskUserQuestionView { } } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); // These context flags are what activate the fixed bindings registered in init(). if matches!(self.session.phase(), AskUserQuestionPhase::Editing) diff --git a/app/src/ai/blocklist/inline_action/aws_bedrock_credentials_error.rs b/app/src/ai/blocklist/inline_action/aws_bedrock_credentials_error.rs index 33362b3a..109c643c 100644 --- a/app/src/ai/blocklist/inline_action/aws_bedrock_credentials_error.rs +++ b/app/src/ai/blocklist/inline_action/aws_bedrock_credentials_error.rs @@ -1,12 +1,12 @@ use settings::Setting as _; -use warp_core::ui::Icon; -use warpui::elements::{ +use galaxy_core::ui::Icon; +use galaxyui::elements::{ ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, SizeConstraintCondition, SizeConstraintSwitch, Text, }; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ AppContext, Element, Entity, EventContext, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -131,7 +131,7 @@ impl View for AwsBedrockCredentialsErrorView { let make_alert_icon = || { ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(error_color(theme).into()) + .to_galaxyui_icon(error_color(theme).into()) .finish(), ) .with_width(icon_size(app)) diff --git a/app/src/ai/blocklist/inline_action/code_diff_view.rs b/app/src/ai/blocklist/inline_action/code_diff_view.rs index 8f108e1c..c786d59f 100644 --- a/app/src/ai/blocklist/inline_action/code_diff_view.rs +++ b/app/src/ai/blocklist/inline_action/code_diff_view.rs @@ -12,7 +12,7 @@ use std::{ sync::Arc, time::Duration, }; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, platform::SessionPlatform, settings::ToggleableSetting, @@ -26,13 +26,13 @@ use warp_core::{ }, HostId, }; -use warp_editor::{ +use galaxy_editor::{ content::buffer::InitialBufferState, render::element::VerticalExpansionBehavior, }; -use warp_util::file::FileSaveError; -use warp_util::path::common_path; -use warp_util::standardized_path::StandardizedPath; -use warpui::{ +use galaxy_util::file::FileSaveError; +use galaxy_util::path::common_path; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::{ elements::{ new_scrollable::{ScrollableAppearance, SingleAxisConfig}, Align, Border, ChildAnchor, ChildView, Clipped, ClippedScrollStateHandle, ConstrainedBox, @@ -164,7 +164,7 @@ lazy_static! { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -591,8 +591,8 @@ impl CodeDiffView { ctx, ) .with_horizontal_scrollbar_appearance( - warpui::elements::new_scrollable::ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::Auto, + galaxyui::elements::new_scrollable::ScrollableAppearance::new( + galaxyui::elements::ScrollbarWidth::Auto, true, ), ) @@ -1264,7 +1264,7 @@ impl CodeDiffView { fn render_scroll_icon_for_inline_banner(&self, appearance: &Appearance) -> Box { let background = appearance.theme().foreground(); - let icon = warpui::elements::Icon::new( + let icon = galaxyui::elements::Icon::new( Icon::ArrowDown.into(), appearance.theme().main_text_color(background).into_solid(), ) @@ -1470,7 +1470,7 @@ impl CodeDiffView { } CodeDiffState::WaitingForUser => { if self.display_mode().is_inline_banner() { - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( Icon::Code2.into(), appearance .theme() @@ -1970,7 +1970,7 @@ impl CodeDiffView { }, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_horizontal_scrollbar(ScrollableAppearance::new(ScrollbarWidth::Custom(4.), true)) .with_propagate_mousewheel_if_not_handled(true) @@ -2715,7 +2715,7 @@ impl View for CodeDiffView { root_stack.finish() } - fn keymap_context(&self, _app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, _app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if self.display_mode().is_full_pane() { @@ -3149,7 +3149,7 @@ impl BackingView for CodeDiffView { title: "Requested Edit".to_string(), title_secondary: None, title_style: None, - title_clip_config: warpui::text_layout::ClipConfig::start(), + title_clip_config: galaxyui::text_layout::ClipConfig::start(), title_max_width: None, left_of_title: None, right_of_title: None, diff --git a/app/src/ai/blocklist/inline_action/create_or_edit_document.rs b/app/src/ai/blocklist/inline_action/create_or_edit_document.rs index 8f0e0abb..5f093c66 100644 --- a/app/src/ai/blocklist/inline_action/create_or_edit_document.rs +++ b/app/src/ai/blocklist/inline_action/create_or_edit_document.rs @@ -1,5 +1,5 @@ -use warpui::SingletonEntity; -use warpui::{ +use galaxyui::SingletonEntity; +use galaxyui::{ elements::{ Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, Hoverable, Icon, MouseStateHandle, ParentElement, Radius, Text, @@ -8,9 +8,9 @@ use warpui::{ AppContext, Element, }; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::icons::Icon as CoreIcon; -use warp_core::ui::theme::color::internal_colors::neutral_2; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::icons::Icon as CoreIcon; +use galaxy_core::ui::theme::color::internal_colors::neutral_2; use crate::ai::blocklist::block::view_impl::WithContentItemSpacing; use crate::ai::blocklist::inline_action::inline_action_header::{ @@ -107,7 +107,7 @@ impl CreateOrEditDocumentAction { .with_vertical_padding(INLINE_ACTION_VERTICAL_PADDING) .with_corner_radius(CornerRadius::with_all(Radius::Pixels(8.))) .with_background_color(neutral_2(theme)) - .with_border(warpui::elements::Border::all(1.).with_border_fill(theme.surface_2())) + .with_border(galaxyui::elements::Border::all(1.).with_border_fill(theme.surface_2())) .finish(); Hoverable::new(self.mouse_state, move |_mouse_state| content) diff --git a/app/src/ai/blocklist/inline_action/inline_action_header.rs b/app/src/ai/blocklist/inline_action/inline_action_header.rs index 52b752c9..0b7a808b 100644 --- a/app/src/ai/blocklist/inline_action/inline_action_header.rs +++ b/app/src/ai/blocklist/inline_action/inline_action_header.rs @@ -1,8 +1,8 @@ use pathfinder_color::ColorU; use std::borrow::Cow; use std::rc::Rc; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, EventHandler, Expanded, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, @@ -115,7 +115,7 @@ pub struct HeaderConfig { pub font_family: FamilyId, /// Whether to parse the title as markdown when rendering. pub use_markdown: bool, - pub icon: Option, + pub icon: Option, pub badge: Option, pub interaction_mode: Option, pub is_text_selectable: bool, @@ -150,7 +150,7 @@ impl HeaderConfig { self } - pub fn with_icon(mut self, icon: warpui::elements::Icon) -> Self { + pub fn with_icon(mut self, icon: galaxyui::elements::Icon) -> Self { self.icon = Some(icon); self } diff --git a/app/src/ai/blocklist/inline_action/inline_action_icons.rs b/app/src/ai/blocklist/inline_action/inline_action_icons.rs index 85d89128..3f15be89 100644 --- a/app/src/ai/blocklist/inline_action/inline_action_icons.rs +++ b/app/src/ai/blocklist/inline_action/inline_action_icons.rs @@ -1,8 +1,8 @@ use crate::ui_components::blended_colors; use crate::ui_components::icons::Icon; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::{AppContext, SingletonEntity}; /// Returns the size for icons in the AI block, scaled to the user's current font size. pub fn icon_size(app: &AppContext) -> f32 { @@ -13,29 +13,29 @@ pub fn icon_size(app: &AppContext) -> f32 { ) } -pub fn green_check_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn green_check_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Check.into(), AnsiColorIdentifier::Green.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } -pub fn red_x_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn red_x_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::X.into(), AnsiColorIdentifier::Red.to_ansi_color(&appearance.theme().terminal_colors().normal), ) } -pub fn cancelled_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn cancelled_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::Cancelled.into(), blended_colors::neutral_6(appearance.theme()), ) } -pub fn reverted_icon(appearance: &Appearance) -> warpui::elements::Icon { - warpui::elements::Icon::new( +pub fn reverted_icon(appearance: &Appearance) -> galaxyui::elements::Icon { + galaxyui::elements::Icon::new( Icon::ReverseLeft.into(), blended_colors::neutral_6(appearance.theme()), ) diff --git a/app/src/ai/blocklist/inline_action/requested_action.rs b/app/src/ai/blocklist/inline_action/requested_action.rs index 65ffb9d8..69d9117a 100644 --- a/app/src/ai/blocklist/inline_action/requested_action.rs +++ b/app/src/ai/blocklist/inline_action/requested_action.rs @@ -16,13 +16,13 @@ use markdown_parser::FormattedTextLine; use pathfinder_color::ColorU; use std::borrow::Cow; use std::rc::Rc; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors::neutral_2; -use warpui::elements::Align; -use warpui::elements::Clipped; -use warpui::elements::FormattedTextElement; -use warpui::fonts::FamilyId; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors::neutral_2; +use galaxyui::elements::Align; +use galaxyui::elements::Clipped; +use galaxyui::elements::FormattedTextElement; +use galaxyui::fonts::FamilyId; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, Hoverable, MainAxisAlignment, MouseStateHandle, ParentElement, Radius, Shrinkable, diff --git a/app/src/ai/blocklist/inline_action/requested_command.rs b/app/src/ai/blocklist/inline_action/requested_command.rs index 1c1063e6..b5a68489 100644 --- a/app/src/ai/blocklist/inline_action/requested_command.rs +++ b/app/src/ai/blocklist/inline_action/requested_command.rs @@ -7,12 +7,12 @@ use std::cmp::{Ordering, PartialEq}; use std::collections::HashMap; use std::rc::Rc; use std::sync::Arc; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::Icon; -use warp_editor::render::element::VerticalExpansionBehavior; -use warpui::elements::{ConstrainedBox, ScrollbarWidth}; -use warpui::ui_components::components::UiComponent as _; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::Icon; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxyui::elements::{ConstrainedBox, ScrollbarWidth}; +use galaxyui::ui_components::components::UiComponent as _; +use galaxyui::{ elements::{ Align, Border, ChildView, Clipped, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentElement, Radius, @@ -24,7 +24,7 @@ use warpui::{ }; use crate::ai::agent::{AIAgentActionResult, AIAgentActionType}; -use warpui::{EntityId, EventContext}; +use galaxyui::{EntityId, EventContext}; use crate::ai::agent::RequestCommandOutputResult; use crate::ai::agent::{icons, AIAgentActionResultType}; @@ -120,7 +120,7 @@ lazy_static! { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -752,7 +752,7 @@ impl RequestedCommandView { Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon( + .to_galaxyui_icon( blended_colors::text_sub(theme, theme.surface_1()).into(), ) .finish(), @@ -1545,9 +1545,9 @@ impl View for RequestedCommandView { OffsetPositioning::offset_from_save_position_element( Self::get_position_id_for_accept_split_button(&self.position_id_prefix), vec2f(0., 8.), - warpui::elements::PositionedElementOffsetBounds::WindowByPosition, - warpui::elements::PositionedElementAnchor::BottomRight, - warpui::elements::ChildAnchor::TopRight, + galaxyui::elements::PositionedElementOffsetBounds::WindowByPosition, + galaxyui::elements::PositionedElementAnchor::BottomRight, + galaxyui::elements::ChildAnchor::TopRight, ), ); } diff --git a/app/src/ai/blocklist/inline_action/requested_command_attribution.rs b/app/src/ai/blocklist/inline_action/requested_command_attribution.rs index 9365f808..a6314162 100644 --- a/app/src/ai/blocklist/inline_action/requested_command_attribution.rs +++ b/app/src/ai/blocklist/inline_action/requested_command_attribution.rs @@ -1,8 +1,8 @@ //! Module to attribute AI-generated requested commands //! to known documents (e.g. Warp Drive objects). -use warpui::AppContext; -use warpui::SingletonEntity; +use galaxyui::AppContext; +use galaxyui::SingletonEntity; use crate::env_vars::EnvVarCollection; use crate::env_vars::EnvVarValue; diff --git a/app/src/ai/blocklist/inline_action/requested_script.rs b/app/src/ai/blocklist/inline_action/requested_script.rs index bda8c548..5fe74dab 100644 --- a/app/src/ai/blocklist/inline_action/requested_script.rs +++ b/app/src/ai/blocklist/inline_action/requested_script.rs @@ -3,19 +3,19 @@ use pathfinder_geometry::vector::Vector2F; use std::rc::Rc; -use warp_core::ui::appearance::Appearance; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, Wrap, }; -use warpui::keymap::Keystroke; -use warpui::platform::Cursor; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ui_components::toggle_menu::{ +use galaxyui::keymap::Keystroke; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ui_components::toggle_menu::{ ToggleMenuCallback, ToggleMenuItem, ToggleMenuStateHandle, }; -use warpui::{AppContext, Element, EventContext, SingletonEntity}; +use galaxyui::{AppContext, Element, EventContext, SingletonEntity}; use super::inline_action_header::{ INLINE_ACTION_HEADER_VERTICAL_PADDING, INLINE_ACTION_HORIZONTAL_PADDING, @@ -346,7 +346,7 @@ fn script_status( }; let is_expanded = (is_executing && is_viewing_detail) || (!is_executing && !is_collapsed); let icon = ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( if is_expanded { Icon::ChevronDown.into() } else { diff --git a/app/src/ai/blocklist/inline_action/search_codebase.rs b/app/src/ai/blocklist/inline_action/search_codebase.rs index 2f41d507..397d7f89 100644 --- a/app/src/ai/blocklist/inline_action/search_codebase.rs +++ b/app/src/ai/blocklist/inline_action/search_codebase.rs @@ -1,9 +1,9 @@ use std::ops::Range; use std::sync::{Arc, RwLock}; -use warp_core::ui::appearance::Appearance; -use warpui::ui_components::components::UiComponentStyles; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::{ elements::{ Container, CornerRadius, CrossAxisAlignment, Element, Flex, FormattedTextElement, MainAxisAlignment, ParentElement, Radius, SelectableArea, SelectionHandle, Shrinkable, @@ -54,7 +54,7 @@ pub enum SearchCodebaseViewEvent { #[cfg(feature = "local_fs")] OpenDetectedFilePath { absolute_path: std::path::PathBuf, - line_and_column_num: Option, + line_and_column_num: Option, }, TextSelected, } @@ -277,7 +277,7 @@ impl SearchCodebaseView { fn create_header_text_style( &self, appearance: &Appearance, - header_background: warp_core::ui::theme::Fill, + header_background: galaxy_core::ui::theme::Fill, ) -> UiComponentStyles { UiComponentStyles { font_family_id: Some(appearance.ui_font_family()), @@ -295,7 +295,7 @@ impl SearchCodebaseView { fn create_header_container( &self, header_row: Box, - header_background: warp_core::ui::theme::Fill, + header_background: galaxy_core::ui::theme::Fill, corner_radius: CornerRadius, app: &AppContext, ) -> Box { @@ -333,7 +333,7 @@ impl SearchCodebaseView { &self, _appearance: &Appearance, text: String, - icon: warpui::elements::Icon, + icon: galaxyui::elements::Icon, app: &AppContext, ) -> Box { super::search_results_common::render_loading_header(text, icon, app) diff --git a/app/src/ai/blocklist/inline_action/search_results_common.rs b/app/src/ai/blocklist/inline_action/search_results_common.rs index 8503e5d4..7ef1fe90 100644 --- a/app/src/ai/blocklist/inline_action/search_results_common.rs +++ b/app/src/ai/blocklist/inline_action/search_results_common.rs @@ -1,10 +1,10 @@ -use warp_core::ui::appearance::Appearance; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::platform::Cursor; -use warpui::{AppContext, EventContext, SingletonEntity}; +use galaxyui::platform::Cursor; +use galaxyui::{AppContext, EventContext, SingletonEntity}; use super::inline_action_header::{ ICON_MARGIN, INLINE_ACTION_HEADER_VERTICAL_PADDING, INLINE_ACTION_HORIZONTAL_PADDING, @@ -16,7 +16,7 @@ pub fn render_search_results_header( title_text: String, right_label_text: String, is_expanded: bool, - mouse_state: warpui::elements::MouseStateHandle, + mouse_state: galaxyui::elements::MouseStateHandle, on_toggle: impl Fn(&mut EventContext) + 'static, app: &AppContext, ) -> Box { @@ -32,7 +32,7 @@ pub fn render_search_results_header( // Left side: icon + title let mut left_side = Flex::row().with_cross_axis_alignment(CrossAxisAlignment::Center); let search_icon = ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( Icon::SearchSmall.into(), appearance.theme().main_text_color(header_background), ) @@ -69,7 +69,7 @@ pub fn render_search_results_header( right_side.add_child(Container::new(right_label).with_margin_right(8.).finish()); let chevron_icon = ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( if is_expanded { Icon::ChevronDown.into() } else { @@ -95,7 +95,7 @@ pub fn render_search_results_header( }) .finish(); - warpui::elements::Hoverable::new(mouse_state, |_| inner) + galaxyui::elements::Hoverable::new(mouse_state, |_| inner) .on_click(move |ctx, _, _| { on_toggle(ctx); }) @@ -115,7 +115,7 @@ pub fn render_results_body_container(body: Box, app: &AppContext) - pub fn render_loading_header( text: String, - icon: warpui::elements::Icon, + icon: galaxyui::elements::Icon, app: &AppContext, ) -> Box { let appearance = Appearance::as_ref(app); diff --git a/app/src/ai/blocklist/inline_action/suggested_unit_tests.rs b/app/src/ai/blocklist/inline_action/suggested_unit_tests.rs index 10e230cc..a26ec512 100644 --- a/app/src/ai/blocklist/inline_action/suggested_unit_tests.rs +++ b/app/src/ai/blocklist/inline_action/suggested_unit_tests.rs @@ -2,8 +2,8 @@ use std::sync::Arc; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use rand::{distributions::Alphanumeric, thread_rng, Rng as _}; -use warp_core::{settings::ToggleableSetting, ui::appearance::Appearance}; -use warpui::{ +use galaxy_core::{settings::ToggleableSetting, ui::appearance::Appearance}; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, @@ -172,7 +172,7 @@ impl SuggestedUnitTestsView { fn render_icon(&self, appearance: &Appearance) -> Box { Container::new( ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( Icon::Code2.into(), appearance .theme() diff --git a/app/src/ai/blocklist/inline_action/web_fetch.rs b/app/src/ai/blocklist/inline_action/web_fetch.rs index 00eb8733..fd00f602 100644 --- a/app/src/ai/blocklist/inline_action/web_fetch.rs +++ b/app/src/ai/blocklist/inline_action/web_fetch.rs @@ -1,6 +1,6 @@ -use warp_core::ui::appearance::Appearance; -use warpui::elements::{Container, CrossAxisAlignment, Element, Flex, ParentElement, Text}; -use warpui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{Container, CrossAxisAlignment, Element, Flex, ParentElement, Text}; +use galaxyui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; use super::search_results_common::{ render_collapsible_search_results, CollapsibleSearchResultsState, diff --git a/app/src/ai/blocklist/inline_action/web_search.rs b/app/src/ai/blocklist/inline_action/web_search.rs index 2d672342..8ddc75b0 100644 --- a/app/src/ai/blocklist/inline_action/web_search.rs +++ b/app/src/ai/blocklist/inline_action/web_search.rs @@ -1,6 +1,6 @@ -use warp_core::ui::appearance::Appearance; -use warpui::elements::{Container, CrossAxisAlignment, Element, Flex, ParentElement, Text}; -use warpui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{Container, CrossAxisAlignment, Element, Flex, ParentElement, Text}; +use galaxyui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; use super::search_results_common::{ render_collapsible_search_results, CollapsibleSearchResultsState, diff --git a/app/src/ai/blocklist/input_model.rs b/app/src/ai/blocklist/input_model.rs index 86182aa6..95aa0fd2 100644 --- a/app/src/ai/blocklist/input_model.rs +++ b/app/src/ai/blocklist/input_model.rs @@ -14,8 +14,8 @@ use parking_lot::FairMutex; use serde::{Deserialize, Serialize}; use session_sharing_protocol::common::{InputMode, InputType as ProtocolInputType}; use settings::Setting as _; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; pub use input_classifier::InputType; @@ -24,7 +24,7 @@ use crate::terminal::cli_agent_sessions::{ CLIAgentInputState, CLIAgentSessionsModel, CLIAgentSessionsModelEvent, }; use crate::PrivacySettings; -use warp_completer::completer::CompletionContext; +use galaxy_completer::completer::CompletionContext; use crate::{ input_classifier::InputClassifierModel, @@ -697,7 +697,7 @@ impl BlocklistAIInputModel { futures_lite::future::yield_now().await; let input = - warp_completer::util::expand_aliases(input, &completion_context).await; + galaxy_completer::util::expand_aliases(input, &completion_context).await; futures_lite::future::yield_now().await; diff --git a/app/src/ai/blocklist/orchestration_event_streamer.rs b/app/src/ai/blocklist/orchestration_event_streamer.rs index 644cb11f..86505961 100644 --- a/app/src/ai/blocklist/orchestration_event_streamer.rs +++ b/app/src/ai/blocklist/orchestration_event_streamer.rs @@ -17,10 +17,10 @@ use std::collections::{HashMap, HashSet}; use std::sync::Arc; use std::time::Duration; use uuid::Uuid; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api as api; -use warpui::r#async::Timer; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::r#async::Timer; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// Backoff schedule (seconds) reused for the post-restore /// `get_ambient_agent_task` retry: 1s, 2s, 5s, then 10s max. diff --git a/app/src/ai/blocklist/orchestration_event_streamer_tests.rs b/app/src/ai/blocklist/orchestration_event_streamer_tests.rs index 0ee1a066..92426420 100644 --- a/app/src/ai/blocklist/orchestration_event_streamer_tests.rs +++ b/app/src/ai/blocklist/orchestration_event_streamer_tests.rs @@ -196,7 +196,7 @@ fn finish_restore_fetch_uses_server_cursor_when_sqlite_is_absent() { use crate::server::server_api::ai::MockAIClient; use crate::server::server_api::ServerApiProvider; use std::sync::Arc; - use warpui::App; + use galaxyui::App; App::test((), |mut app| async move { let _v2_guard = FeatureFlag::OrchestrationV2.override_enabled(true); @@ -208,7 +208,7 @@ fn finish_restore_fetch_uses_server_cursor_when_sqlite_is_absent() { // the in-memory cursor to be 42 (max(0, 42)). let conversation = AIConversation::new(false); let conversation_id = conversation.id(); - let terminal_view_id = warpui::EntityId::new(); + let terminal_view_id = galaxyui::EntityId::new(); history_model.update(&mut app, |model, ctx| { model.restore_conversations(terminal_view_id, vec![conversation], ctx); }); @@ -252,7 +252,7 @@ fn restored_inprogress_parent_defers_delivery_until_success() { use crate::server::server_api::ai::MockAIClient; use crate::server::server_api::ServerApiProvider; use std::sync::Arc; - use warpui::App; + use galaxyui::App; App::test((), |mut app| async move { let _v2_guard = FeatureFlag::OrchestrationV2.override_enabled(true); @@ -264,7 +264,7 @@ fn restored_inprogress_parent_defers_delivery_until_success() { // an `AmbientAgentTaskId` for the (mocked) server fetch. conversation.set_run_id("550e8400-e29b-41d4-a716-446655440100".to_string()); let conversation_id: AIConversationId = conversation.id(); - let terminal_view_id = warpui::EntityId::new(); + let terminal_view_id = galaxyui::EntityId::new(); history_model.update(&mut app, |model, ctx| { model.restore_conversations(terminal_view_id, vec![conversation], ctx); // The default status after restore is `InProgress` for live @@ -340,7 +340,7 @@ fn handle_event_batch_persists_max_seq_to_history_model() { use crate::test_util::settings::initialize_settings_for_tests; use crate::{GlobalResourceHandles, GlobalResourceHandlesProvider}; use std::sync::Arc; - use warpui::App; + use galaxyui::App; App::test((), |mut app| async move { let _v2_guard = FeatureFlag::OrchestrationV2.override_enabled(true); @@ -359,7 +359,7 @@ fn handle_event_batch_persists_max_seq_to_history_model() { let mut conversation = AIConversation::new(false); conversation.set_run_id("550e8400-e29b-41d4-a716-446655440200".to_string()); let conversation_id: AIConversationId = conversation.id(); - let terminal_view_id = warpui::EntityId::new(); + let terminal_view_id = galaxyui::EntityId::new(); history_model.update(&mut app, |model, ctx| { model.restore_conversations(terminal_view_id, vec![conversation], ctx); }); @@ -437,7 +437,7 @@ fn finish_restore_fetch_no_ops_when_conversation_deleted_mid_flight() { use crate::server::server_api::ai::MockAIClient; use crate::server::server_api::ServerApiProvider; use std::sync::Arc; - use warpui::App; + use galaxyui::App; App::test((), |mut app| async move { let _v2_guard = FeatureFlag::OrchestrationV2.override_enabled(true); @@ -447,7 +447,7 @@ fn finish_restore_fetch_no_ops_when_conversation_deleted_mid_flight() { let mut conversation = AIConversation::new(false); conversation.set_run_id("550e8400-e29b-41d4-a716-446655440300".to_string()); let conversation_id = conversation.id(); - let terminal_view_id = warpui::EntityId::new(); + let terminal_view_id = galaxyui::EntityId::new(); history_model.update(&mut app, |model, ctx| { model.restore_conversations(terminal_view_id, vec![conversation], ctx); }); @@ -509,7 +509,7 @@ fn finish_restore_fetch_reconnects_sse_when_children_added_to_open_connection() use crate::server::server_api::ai::MockAIClient; use crate::server::server_api::ServerApiProvider; use std::sync::Arc; - use warpui::App; + use galaxyui::App; App::test((), |mut app| async move { let _v2_guard = FeatureFlag::OrchestrationV2.override_enabled(true); @@ -520,7 +520,7 @@ fn finish_restore_fetch_reconnects_sse_when_children_added_to_open_connection() let mut conversation = AIConversation::new(false); conversation.set_run_id(own_run_id.to_string()); let conversation_id = conversation.id(); - let terminal_view_id = warpui::EntityId::new(); + let terminal_view_id = galaxyui::EntityId::new(); history_model.update(&mut app, |model, ctx| { model.restore_conversations(terminal_view_id, vec![conversation], ctx); model.update_conversation_status( diff --git a/app/src/ai/blocklist/orchestration_events.rs b/app/src/ai/blocklist/orchestration_events.rs index ebec82d8..1503ce93 100644 --- a/app/src/ai/blocklist/orchestration_events.rs +++ b/app/src/ai/blocklist/orchestration_events.rs @@ -12,10 +12,10 @@ use crate::ai::agent::{ }; use std::collections::{HashMap, HashSet}; use uuid::Uuid; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; use warp_multi_agent_api as api; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; const MAX_RETRY_ATTEMPTS: i32 = 3; const MAX_PENDING_LIFECYCLE_EVENTS_PER_TARGET: usize = 200; diff --git a/app/src/ai/blocklist/orchestration_events_tests.rs b/app/src/ai/blocklist/orchestration_events_tests.rs index c3ba0a52..ed786c29 100644 --- a/app/src/ai/blocklist/orchestration_events_tests.rs +++ b/app/src/ai/blocklist/orchestration_events_tests.rs @@ -361,8 +361,8 @@ fn test_lifecycle_event_type_from_proto_includes_cancelled_and_blocked() { #[test] fn restored_v1_child_conversation_re_registers_lifecycle_subscription() { use crate::ai::agent::conversation::AIConversation; - use warp_core::features::FeatureFlag; - use warpui::{App, EntityId}; + use galaxy_core::features::FeatureFlag; + use galaxyui::{App, EntityId}; App::test((), |mut app| async move { // V1 path is gated on `!OrchestrationV2`. diff --git a/app/src/ai/blocklist/passive_suggestions/legacy.rs b/app/src/ai/blocklist/passive_suggestions/legacy.rs index 954fb558..a9987a89 100644 --- a/app/src/ai/blocklist/passive_suggestions/legacy.rs +++ b/app/src/ai/blocklist/passive_suggestions/legacy.rs @@ -34,9 +34,9 @@ use crate::workspaces::user_workspaces::UserWorkspaces; use chrono::Utc; use parking_lot::FairMutex; use serde_json::json; -use warp_core::features::FeatureFlag; -use warpui::r#async::{FutureExt as AsyncFutureExt, SpawnedFutureHandle, Timer}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::r#async::{FutureExt as AsyncFutureExt, SpawnedFutureHandle, Timer}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; const NUM_TOP_BLOCK_LINES: usize = 100; const NUM_BOTTOM_BLOCK_LINES: usize = 200; diff --git a/app/src/ai/blocklist/passive_suggestions/maa.rs b/app/src/ai/blocklist/passive_suggestions/maa.rs index 2a8d3a59..c05431bb 100644 --- a/app/src/ai/blocklist/passive_suggestions/maa.rs +++ b/app/src/ai/blocklist/passive_suggestions/maa.rs @@ -27,20 +27,20 @@ use ai::agent::action::{AIAgentActionType, FileEdit}; use ai::diff_validation::ParsedDiff; use chrono::{DateTime, Utc}; use parking_lot::FairMutex; -use warp_core::features::FeatureFlag; -use warpui::r#async::SpawnedFutureHandle; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { use std::{path::PathBuf, time::Duration}; use crate::ai::blocklist::{read_local_file_context, BlocklistAIPermissions}; - use warp_terminal::shell::ShellLaunchData; + use galaxy_terminal::shell::ShellLaunchData; use crate::util::link_detection::{detect_file_paths, DetectedLinkType}; use crate::util::openable_file_type::is_binary_file; use ai::agent::FileLocations; - use warpui::AppContext; - use warpui::r#async::FutureExt as AsyncFutureExt; + use galaxyui::AppContext; + use galaxyui::r#async::FutureExt as AsyncFutureExt; use itertools::Itertools; } } diff --git a/app/src/ai/blocklist/passive_suggestions/mod.rs b/app/src/ai/blocklist/passive_suggestions/mod.rs index a39aee51..2e9094a3 100644 --- a/app/src/ai/blocklist/passive_suggestions/mod.rs +++ b/app/src/ai/blocklist/passive_suggestions/mod.rs @@ -2,7 +2,7 @@ mod legacy; mod maa; mod static_prompt_suggestions; -use warpui::ModelHandle; +use galaxyui::ModelHandle; pub use legacy::{ PassiveSuggestionsEvent as LegacyPassiveSuggestionsEvent, diff --git a/app/src/ai/blocklist/permissions.rs b/app/src/ai/blocklist/permissions.rs index 40649462..e1ff581a 100644 --- a/app/src/ai/blocklist/permissions.rs +++ b/app/src/ai/blocklist/permissions.rs @@ -15,7 +15,7 @@ use crate::{ settings::{AISettings, AgentModeCodingPermissionsType, AgentModeCommandExecutionPredicate}, workspaces::{user_workspaces::UserWorkspaces, workspace::AiAutonomySettings}, }; -use warp_core::execution_mode::AppExecutionMode; +use galaxy_core::execution_mode::AppExecutionMode; use crate::ai::mcp::mcp_provider_from_file_path; #[cfg(not(target_family = "wasm"))] @@ -23,11 +23,11 @@ use crate::ai::mcp::TemplatableMCPServerManager; use anyhow::Result; use serde::{Deserialize, Serialize}; -use warp_completer::parsers::simple::decompose_command; -use warp_core::user_preferences::GetUserPreferences; -use warp_core::{features::FeatureFlag, settings::Setting}; -use warp_util::path::EscapeChar; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; +use galaxy_completer::parsers::simple::decompose_command; +use galaxy_core::user_preferences::GetUserPreferences; +use galaxy_core::{features::FeatureFlag, settings::Setting}; +use galaxy_util::path::EscapeChar; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; use super::BlocklistAIHistoryModel; diff --git a/app/src/ai/blocklist/permissions_test.rs b/app/src/ai/blocklist/permissions_test.rs index f21e3950..61b8615b 100644 --- a/app/src/ai/blocklist/permissions_test.rs +++ b/app/src/ai/blocklist/permissions_test.rs @@ -2,10 +2,10 @@ use std::path::PathBuf; use uuid::Uuid; -use warp_util::path::EscapeChar; -use warpui::{App, EntityId, ModelHandle}; +use galaxy_util::path::EscapeChar; +use galaxyui::{App, EntityId, ModelHandle}; -use warp_core::execution_mode::ExecutionMode; +use galaxy_core::execution_mode::ExecutionMode; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::terminal::cli_agent_sessions::CLIAgentSessionsModel; diff --git a/app/src/ai/blocklist/prompt/plan_and_todo_list.rs b/app/src/ai/blocklist/prompt/plan_and_todo_list.rs index ce123e87..646dd714 100644 --- a/app/src/ai/blocklist/prompt/plan_and_todo_list.rs +++ b/app/src/ai/blocklist/prompt/plan_and_todo_list.rs @@ -1,8 +1,8 @@ use std::sync::Arc; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Fill, Flex, Hoverable, MouseStateHandle, OffsetPositioning, @@ -12,12 +12,12 @@ use warpui::{ AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity as _, TypedActionView, View, ViewContext, ViewHandle, }; -use warpui::{ +use galaxyui::{ elements::{ParentElement, ParentOffsetBounds}, ui_components::components::UiComponent, }; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::{ ai::{ @@ -34,7 +34,7 @@ use crate::{ ui_components::blended_colors, AIAgentTodoList, BlocklistAIHistoryModel, }; -use warpui::fonts::{Properties, Weight}; +use galaxyui::fonts::{Properties, Weight}; const TODO_BUTTON_SAVE_POSITION_ID: &str = "plan_and_todo_list::todo_button"; @@ -213,7 +213,7 @@ impl PlanAndTodoListView { let icon_element = Container::new( ConstrainedBox::new( Icon::Compass - .to_warpui_icon(if self.is_in_agent_view { + .to_galaxyui_icon(if self.is_in_agent_view { theme.sub_text_color(blended_colors::neutral_1(theme).into()) } else { internal_colors::fg_overlay_7(appearance.theme()) @@ -436,8 +436,8 @@ impl PlanAndTodoListView { OffsetPositioning::offset_from_save_position_element( TODO_BUTTON_SAVE_POSITION_ID, vec2f(0., 4.), - warpui::elements::PositionedElementOffsetBounds::WindowByPosition, - warpui::elements::PositionedElementAnchor::BottomLeft, + galaxyui::elements::PositionedElementOffsetBounds::WindowByPosition, + galaxyui::elements::PositionedElementAnchor::BottomLeft, ChildAnchor::TopLeft, ) } @@ -445,8 +445,8 @@ impl PlanAndTodoListView { OffsetPositioning::offset_from_save_position_element( TODO_BUTTON_SAVE_POSITION_ID, vec2f(0., -4.), - warpui::elements::PositionedElementOffsetBounds::WindowByPosition, - warpui::elements::PositionedElementAnchor::TopLeft, + galaxyui::elements::PositionedElementOffsetBounds::WindowByPosition, + galaxyui::elements::PositionedElementAnchor::TopLeft, ChildAnchor::BottomLeft, ) } @@ -470,7 +470,7 @@ impl View for PlanAndTodoListView { "PlanAndTodoListView" } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); // Calculate icon size diff --git a/app/src/ai/blocklist/prompt/prompt_alert.rs b/app/src/ai/blocklist/prompt/prompt_alert.rs index 1aa68d29..4b6056fc 100644 --- a/app/src/ai/blocklist/prompt/prompt_alert.rs +++ b/app/src/ai/blocklist/prompt/prompt_alert.rs @@ -1,6 +1,6 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, HyperlinkLens, MainAxisAlignment, MainAxisSize, ParentElement, @@ -499,7 +499,7 @@ impl View for PromptAlertView { chip_row.add_child( ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(error_color(appearance.theme()).into()) + .to_galaxyui_icon(error_color(appearance.theme()).into()) .finish(), ) .with_width(icon_size) diff --git a/app/src/ai/blocklist/queued_query.rs b/app/src/ai/blocklist/queued_query.rs index c40d4326..d40b91ec 100644 --- a/app/src/ai/blocklist/queued_query.rs +++ b/app/src/ai/blocklist/queued_query.rs @@ -1,6 +1,6 @@ use std::collections::VecDeque; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; #[derive(Clone, Copy, Debug)] pub enum QueuedQueryOrigin { diff --git a/app/src/ai/blocklist/suggested_agent_mode_workflow_modal.rs b/app/src/ai/blocklist/suggested_agent_mode_workflow_modal.rs index 5b0f914b..6af25611 100644 --- a/app/src/ai/blocklist/suggested_agent_mode_workflow_modal.rs +++ b/app/src/ai/blocklist/suggested_agent_mode_workflow_modal.rs @@ -13,8 +13,8 @@ use crate::{ }; use pathfinder_geometry::vector::vec2f; use std::{collections::HashMap, default::Default, sync::Arc}; -use warp_core::{send_telemetry_from_ctx, ui::appearance::Appearance}; -use warpui::{ +use galaxy_core::{send_telemetry_from_ctx, ui::appearance::Appearance}; +use galaxyui::{ elements::{ ChildAnchor, Empty, OffsetPositioning, PositionedElementAnchor, PositionedElementOffsetBounds, @@ -66,7 +66,7 @@ pub enum SuggestedAgentModeWorkflowModalEvent { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/ai/blocklist/suggested_rule_modal.rs b/app/src/ai/blocklist/suggested_rule_modal.rs index 40ada757..acbccf64 100644 --- a/app/src/ai/blocklist/suggested_rule_modal.rs +++ b/app/src/ai/blocklist/suggested_rule_modal.rs @@ -24,18 +24,18 @@ use crate::{ ui_components::blended_colors, }; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::appearance::Appearance; -use warp_editor::editor::NavigationKey; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::{ ChildAnchor, OffsetPositioning, PositionedElementAnchor, PositionedElementOffsetBounds, }; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::{ elements::ClippedScrollStateHandle, ui_components::components::{Coords, UiComponentStyles}, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ChildView, ClippedScrollable, ConstrainedBox, Container, CornerRadius, Flex, ParentElement, Radius, ScrollbarWidth, @@ -49,7 +49,7 @@ const HEADER_TEXT: &str = "Suggested rule"; const MAX_EDITOR_HEIGHT: f32 = 240.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -592,7 +592,7 @@ impl SuggestedRuleView { ScrollbarWidth::Auto, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), ) diff --git a/app/src/ai/blocklist/suggestion_chip_view.rs b/app/src/ai/blocklist/suggestion_chip_view.rs index 97f6da84..bcf4d4e2 100644 --- a/app/src/ai/blocklist/suggestion_chip_view.rs +++ b/app/src/ai/blocklist/suggestion_chip_view.rs @@ -15,10 +15,10 @@ use crate::{ ui_components::{blended_colors, icons::Icon}, }; use pathfinder_color::ColorU; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{Align, ChildView, Container, ParentElement, SavePosition, Stack}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/ai/blocklist/summarization_cancel_dialog.rs b/app/src/ai/blocklist/summarization_cancel_dialog.rs index 396226bc..185a5bae 100644 --- a/app/src/ai/blocklist/summarization_cancel_dialog.rs +++ b/app/src/ai/blocklist/summarization_cancel_dialog.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{Align, Container, CrossAxisAlignment, Dismiss, Flex, ParentElement, Stack}, keymap::FixedBinding, platform::Cursor, @@ -17,10 +17,10 @@ use crate::ui_components::{ dialog::{dialog_styles, Dialog}, }; -use warpui::fonts::Weight; +use galaxyui::fonts::Weight; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -52,7 +52,7 @@ pub enum SummarizationCancelDialogAction { Continue, } -use warpui::elements::MouseStateHandle; +use galaxyui::elements::MouseStateHandle; #[derive(Default)] pub struct SummarizationCancelDialog { @@ -70,7 +70,7 @@ impl View for SummarizationCancelDialog { "SummarizationCancelDialog" } - fn on_focus(&mut self, _focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, _focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { // Ensure this dialog takes focus away from the terminal editor ctx.focus_self(); } @@ -125,7 +125,7 @@ impl View for SummarizationCancelDialog { .finish(); // Close header with Icon::X and ESC pill - let esc_keystroke = warpui::keymap::Keystroke::parse("escape").expect("Valid keystroke"); + let esc_keystroke = galaxyui::keymap::Keystroke::parse("escape").expect("Valid keystroke"); let close_header = Flex::row() .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_children([ @@ -197,11 +197,11 @@ impl View for SummarizationCancelDialog { let mut stack = Stack::new(); stack.add_positioned_child( dialog_dismiss, - warpui::elements::OffsetPositioning::offset_from_parent( + galaxyui::elements::OffsetPositioning::offset_from_parent( vec2f(0., 0.), - warpui::elements::ParentOffsetBounds::WindowByPosition, - warpui::elements::ParentAnchor::Center, - warpui::elements::ChildAnchor::Center, + galaxyui::elements::ParentOffsetBounds::WindowByPosition, + galaxyui::elements::ParentAnchor::Center, + galaxyui::elements::ChildAnchor::Center, ), ); diff --git a/app/src/ai/blocklist/task_status_sync_model.rs b/app/src/ai/blocklist/task_status_sync_model.rs index 5bb0e9b2..8200fbe0 100644 --- a/app/src/ai/blocklist/task_status_sync_model.rs +++ b/app/src/ai/blocklist/task_status_sync_model.rs @@ -9,8 +9,8 @@ use crate::terminal::cli_agent_sessions::{ }; use std::collections::HashMap; use std::sync::Arc; -use warp_graphql::ai::{AgentTaskState, PlatformErrorCode}; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity}; +use galaxy_graphql::ai::{AgentTaskState, PlatformErrorCode}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity}; /// Listens for conversation status changes and CLI agent session status /// changes, then reports the corresponding task state to the server via diff --git a/app/src/ai/blocklist/task_status_sync_model_tests.rs b/app/src/ai/blocklist/task_status_sync_model_tests.rs index d9adfd15..7d539e81 100644 --- a/app/src/ai/blocklist/task_status_sync_model_tests.rs +++ b/app/src/ai/blocklist/task_status_sync_model_tests.rs @@ -1,7 +1,7 @@ use crate::ai::agent::RenderableAIError; use crate::server::server_api::ai::TaskStatusUpdate; use crate::terminal::cli_agent_sessions::CLIAgentSessionStatus; -use warp_graphql::ai::{AgentTaskState, PlatformErrorCode}; +use galaxy_graphql::ai::{AgentTaskState, PlatformErrorCode}; use super::{classify_renderable_error, map_cli_session_status}; diff --git a/app/src/ai/blocklist/telemetry.rs b/app/src/ai/blocklist/telemetry.rs index ab48432a..c912d46e 100644 --- a/app/src/ai/blocklist/telemetry.rs +++ b/app/src/ai/blocklist/telemetry.rs @@ -2,7 +2,7 @@ use crate::ai::agent::conversation::AIConversationId; use serde::Serialize; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; #[derive(Debug, EnumDiscriminants)] #[strum_discriminants(derive(EnumIter))] @@ -82,7 +82,7 @@ impl TelemetryEvent for BlocklistOrchestrationTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -108,4 +108,4 @@ impl TelemetryEventDesc for BlocklistOrchestrationTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(BlocklistOrchestrationTelemetryEvent); +galaxy_core::register_telemetry_event!(BlocklistOrchestrationTelemetryEvent); diff --git a/app/src/ai/blocklist/telemetry_banner.rs b/app/src/ai/blocklist/telemetry_banner.rs index 40c08dca..26387f27 100644 --- a/app/src/ai/blocklist/telemetry_banner.rs +++ b/app/src/ai/blocklist/telemetry_banner.rs @@ -5,7 +5,7 @@ use crate::{ workspaces::{user_workspaces::UserWorkspaces, workspace::UgcCollectionEnablementSetting}, Appearance, FeatureFlag, WorkspaceAction, }; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, Text, @@ -64,7 +64,7 @@ impl View for TelemetryBanner { Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_height(20.) diff --git a/app/src/ai/blocklist/usage/conversation_usage_view.rs b/app/src/ai/blocklist/usage/conversation_usage_view.rs index b1a06161..da50f7a7 100644 --- a/app/src/ai/blocklist/usage/conversation_usage_view.rs +++ b/app/src/ai/blocklist/usage/conversation_usage_view.rs @@ -8,10 +8,10 @@ use crate::persistence::model::{ use crate::ui_components::blended_colors; use std::cmp::Ordering; use std::collections::HashMap; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::Icon; -use warpui::elements::ConstrainedBox; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::Icon; +use galaxyui::elements::ConstrainedBox; +use galaxyui::{ elements::{ Border, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, @@ -232,7 +232,7 @@ impl ConversationUsageView { if *is_byok { model_elements.push( - ConstrainedBox::new(Icon::Key.to_warpui_icon(text_color.into()).finish()) + ConstrainedBox::new(Icon::Key.to_galaxyui_icon(text_color.into()).finish()) .with_width(font_size) .with_height(font_size) .finish(), diff --git a/app/src/ai/blocklist/usage/mod.rs b/app/src/ai/blocklist/usage/mod.rs index 241cfd14..b668dcba 100644 --- a/app/src/ai/blocklist/usage/mod.rs +++ b/app/src/ai/blocklist/usage/mod.rs @@ -1,6 +1,6 @@ -use warp_core::ui::theme::{Fill, WarpTheme}; -use warp_core::ui::Icon; -use warpui::Element; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxy_core::ui::Icon; +use galaxyui::Element; pub mod conversation_usage_view; @@ -44,5 +44,5 @@ pub fn render_context_window_usage_icon( color_override.unwrap_or_else(|| theme.main_text_color(theme.background())) }; - icon.to_warpui_icon(fill).finish() + icon.to_galaxyui_icon(fill).finish() } diff --git a/app/src/ai/blocklist/view_util.rs b/app/src/ai/blocklist/view_util.rs index ed396226..74d2a12e 100644 --- a/app/src/ai/blocklist/view_util.rs +++ b/app/src/ai/blocklist/view_util.rs @@ -3,8 +3,8 @@ use std::sync::LazyLock; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, @@ -23,12 +23,12 @@ use crate::{ ui_components::icons::Icon, }; -use warpui::elements::ChildAnchor; -use warpui::elements::Hoverable; -use warpui::elements::OffsetPositioning; -use warpui::elements::ParentAnchor; -use warpui::elements::ParentOffsetBounds; -use warpui::elements::Stack; +use galaxyui::elements::ChildAnchor; +use galaxyui::elements::Hoverable; +use galaxyui::elements::OffsetPositioning; +use galaxyui::elements::ParentAnchor; +use galaxyui::elements::ParentOffsetBounds; +use galaxyui::elements::Stack; const PROVIDER_BUTTON_ICON_SIZE: f32 = 14.; const PROVIDER_BUTTON_ICON_TEXT_GAP: f32 = 8.; @@ -93,7 +93,7 @@ pub fn render_ai_follow_up_icon( .tool_tip("Follow up with existing conversation".to_owned()) .with_style(UiComponentStyles { font_size: Some(12.), - background: Some(warpui::elements::Fill::Solid(tooltip_background)), + background: Some(galaxyui::elements::Fill::Solid(tooltip_background)), font_color: Some(appearance.theme().background().into_solid()), ..Default::default() }); @@ -118,7 +118,7 @@ fn render_input_icon(icon: Icon, color: Fill, app: &AppContext) -> Box Option { let doc = self.documents.get(id)?; Some(doc.editor.as_ref(ctx).markdown_unescaped(ctx)) @@ -1212,7 +1212,7 @@ impl AIDocumentModel { } impl AIDocumentEarlierVersion { - pub fn get_content(&self, ctx: &warpui::AppContext) -> String { + pub fn get_content(&self, ctx: &galaxyui::AppContext) -> String { self.editor.as_ref(ctx).markdown_unescaped(ctx) } } diff --git a/app/src/ai/document/ai_document_model_tests.rs b/app/src/ai/document/ai_document_model_tests.rs index 75fb918a..b33b0e4b 100644 --- a/app/src/ai/document/ai_document_model_tests.rs +++ b/app/src/ai/document/ai_document_model_tests.rs @@ -1,7 +1,7 @@ use ai::diff_validation::DiffDelta; use chrono::Local; use std::ops::Range; -use warpui::App; +use galaxyui::App; use super::*; use crate::ai::agent::conversation::AIConversationId; diff --git a/app/src/ai/execution_profiles/editor/manager.rs b/app/src/ai/execution_profiles/editor/manager.rs index 9806d3fc..2623abf5 100644 --- a/app/src/ai/execution_profiles/editor/manager.rs +++ b/app/src/ai/execution_profiles/editor/manager.rs @@ -1,5 +1,5 @@ use std::collections::HashMap; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity, WindowId}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity, WindowId}; use crate::{ ai::execution_profiles::profiles::ClientProfileId, diff --git a/app/src/ai/execution_profiles/editor/mod.rs b/app/src/ai/execution_profiles/editor/mod.rs index 7863a369..5b4a3818 100644 --- a/app/src/ai/execution_profiles/editor/mod.rs +++ b/app/src/ai/execution_profiles/editor/mod.rs @@ -26,13 +26,13 @@ use crate::{ use ai::api_keys::{ApiKeyManager, ApiKeyManagerEvent}; use itertools::Itertools; use regex::Regex; -use warp_core::ui::theme::color::internal_colors; -use warpui::fonts::Properties; -use warpui::platform::Cursor; -use warpui::ui_components::switch::SwitchStateHandle; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::fonts::Properties; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::switch::SwitchStateHandle; use std::path::{Path, PathBuf}; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CrossAxisAlignment, Expanded, Flex, Highlight, MouseStateHandle, ParentElement, @@ -56,8 +56,8 @@ fn render_upgrade_footer( let text_color = theme.main_text_color(surface); let info_icon = ConstrainedBox::new( - warp_core::ui::Icon::Info - .to_warpui_icon(text_color) + galaxy_core::ui::Icon::Info + .to_galaxyui_icon(text_color) .finish(), ) .with_width(16.) @@ -1296,7 +1296,7 @@ impl View for ExecutionProfileEditorView { ScrollbarWidth::Auto, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish() } @@ -1474,17 +1474,17 @@ impl BackingView for ExecutionProfileEditorView { fn handle_pane_header_overflow_menu_action( &mut self, _action: &Self::PaneHeaderOverflowMenuAction, - _ctx: &mut warpui::ViewContext, + _ctx: &mut galaxyui::ViewContext, ) { self.handle_action(_action, _ctx) } - fn close(&mut self, ctx: &mut warpui::ViewContext) { + fn close(&mut self, ctx: &mut galaxyui::ViewContext) { self.save_profile_name_if_valid(ctx); ctx.emit(ExecutionProfileEditorViewEvent::Pane(PaneEvent::Close)); } - fn focus_contents(&mut self, ctx: &mut warpui::ViewContext) { + fn focus_contents(&mut self, ctx: &mut galaxyui::ViewContext) { self.focus(ctx); } @@ -1497,7 +1497,7 @@ impl BackingView for ExecutionProfileEditorView { title: HEADER_TEXT.into(), title_secondary: None, title_style: None, - title_clip_config: warpui::text_layout::ClipConfig::start(), + title_clip_config: galaxyui::text_layout::ClipConfig::start(), title_max_width: None, left_of_title: None, right_of_title: None, diff --git a/app/src/ai/execution_profiles/editor/ui_helpers.rs b/app/src/ai/execution_profiles/editor/ui_helpers.rs index d43351f1..99f4abfd 100644 --- a/app/src/ai/execution_profiles/editor/ui_helpers.rs +++ b/app/src/ai/execution_profiles/editor/ui_helpers.rs @@ -8,18 +8,18 @@ use crate::Appearance; use crate::TemplatableMCPServerManager; use pathfinder_geometry::vector::vec2f; use uuid::Uuid; -use warp_core::features::FeatureFlag; -use warpui::elements::Hoverable; -use warpui::elements::MouseStateHandle; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::Hoverable; +use galaxyui::elements::MouseStateHandle; +use galaxyui::elements::{ ChildAnchor, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Shrinkable, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::ui_components::components::UiComponent; -use warpui::AppContext; -use warpui::{Element, SingletonEntity, ViewHandle}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::AppContext; +use galaxyui::{Element, SingletonEntity, ViewHandle}; use super::ExecutionProfileEditorView; use super::ExecutionProfileEditorViewAction; @@ -136,7 +136,7 @@ fn render_info_section( let alert_icon = Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), @@ -173,7 +173,7 @@ fn render_permission_row( ) -> Box { let icon_elem = Container::new( ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().active_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(16.) @@ -247,7 +247,7 @@ pub fn render_permissions_section( appearance: &Appearance, view: &ExecutionProfileEditorView, profile_data: &AIExecutionProfile, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let ai_settings = AISettings::as_ref(app); let mut column = Flex::column().with_children([ @@ -505,7 +505,7 @@ fn render_directory_allowlist_section( view: &ExecutionProfileEditorView, profile_data: &AIExecutionProfile, appearance: &Appearance, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let ai_settings = AISettings::as_ref(app); let is_editable = ai_settings.is_directory_allowlist_editable(app); @@ -530,7 +530,7 @@ fn render_command_allowlist_section( view: &ExecutionProfileEditorView, profile_data: &AIExecutionProfile, appearance: &Appearance, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let ai_settings = AISettings::as_ref(app); let is_editable = ai_settings.is_command_allowlist_editable(app); @@ -556,7 +556,7 @@ fn render_command_denylist_section( view: &ExecutionProfileEditorView, profile_data: &AIExecutionProfile, appearance: &Appearance, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let ai_settings = AISettings::as_ref(app); let is_editable = ai_settings.is_command_denylist_editable(app); @@ -588,7 +588,7 @@ fn display_mcp_name(uuid: &Uuid, app: &AppContext) -> String { fn render_mcp_allowlist_section( view: &ExecutionProfileEditorView, profile_data: &AIExecutionProfile, - app: &warpui::AppContext, + app: &galaxyui::AppContext, appearance: &Appearance, ) -> Box { let ai_settings = AISettings::as_ref(app); @@ -614,7 +614,7 @@ fn render_mcp_allowlist_section( fn render_mcp_denylist_section( view: &ExecutionProfileEditorView, profile_data: &AIExecutionProfile, - app: &warpui::AppContext, + app: &galaxyui::AppContext, appearance: &Appearance, ) -> Box { let ai_settings = AISettings::as_ref(app); @@ -645,7 +645,7 @@ pub fn render_plan_auto_sync_toggle( let icon_elem = Container::new( ConstrainedBox::new( Icon::Compass - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(icon_size) @@ -719,7 +719,7 @@ pub fn render_web_search_toggle( let icon_elem = Container::new( ConstrainedBox::new( Icon::Globe - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(icon_size) diff --git a/app/src/ai/execution_profiles/mod.rs b/app/src/ai/execution_profiles/mod.rs index ceea985d..e2f51c3a 100644 --- a/app/src/ai/execution_profiles/mod.rs +++ b/app/src/ai/execution_profiles/mod.rs @@ -19,9 +19,9 @@ use crate::{ }, }; use serde::{Deserialize, Serialize}; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, SingletonEntity}; use super::llms::LLMId; diff --git a/app/src/ai/execution_profiles/model_menu_items.rs b/app/src/ai/execution_profiles/model_menu_items.rs index c187bd02..49aa7ee0 100644 --- a/app/src/ai/execution_profiles/model_menu_items.rs +++ b/app/src/ai/execution_profiles/model_menu_items.rs @@ -2,8 +2,8 @@ use crate::ai::llms::{is_using_api_key_for_provider, DisableReason, LLMId, LLMIn use crate::menu::{MenuItem, MenuItemFields, MenuTooltipPosition}; use itertools::Itertools; use std::sync::Arc; -use warp_core::ui::Icon; -use warpui::{ +use galaxy_core::ui::Icon; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, ParentElement, SavePosition, Shrinkable, Text, @@ -92,11 +92,11 @@ fn make_item_fields( let icon_container = Container::new( ConstrainedBox::new(if is_bedrock { Icon::BedrockLogo - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish() } else if is_using_api_key { Icon::Key - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish() } else { Empty::new().finish() diff --git a/app/src/ai/execution_profiles/profiles.rs b/app/src/ai/execution_profiles/profiles.rs index 093d3e18..9b09cfd6 100644 --- a/app/src/ai/execution_profiles/profiles.rs +++ b/app/src/ai/execution_profiles/profiles.rs @@ -5,9 +5,9 @@ use std::sync::atomic::{AtomicUsize, Ordering}; use serde::{Deserialize, Serialize}; use uuid::Uuid; -use warp_core::channel::ChannelState; -use warp_core::user_preferences::GetUserPreferences; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxy_core::user_preferences::GetUserPreferences; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; use crate::ai::llms::LLMId; use crate::ai::mcp::templatable_manager::TemplatableMCPServerManagerEvent; diff --git a/app/src/ai/execution_profiles/profiles_tests.rs b/app/src/ai/execution_profiles/profiles_tests.rs index 61c9fe80..3130d8db 100644 --- a/app/src/ai/execution_profiles/profiles_tests.rs +++ b/app/src/ai/execution_profiles/profiles_tests.rs @@ -1,5 +1,5 @@ use chrono::{DateTime, Utc}; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::ai::execution_profiles::profiles::AIExecutionProfilesModel; use crate::ai::execution_profiles::{ diff --git a/app/src/ai/facts/manager.rs b/app/src/ai/facts/manager.rs index 932720ba..58deebc3 100644 --- a/app/src/ai/facts/manager.rs +++ b/app/src/ai/facts/manager.rs @@ -4,7 +4,7 @@ use crate::{ PaneViewLocator, }; use std::collections::HashMap; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WindowId}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WindowId}; /// Singleton model to manage state of AI fact panes across multiple windows /// (where only one AI fact pane can exist per window). Specifically: diff --git a/app/src/ai/facts/mod.rs b/app/src/ai/facts/mod.rs index c23c2390..548b288a 100644 --- a/app/src/ai/facts/mod.rs +++ b/app/src/ai/facts/mod.rs @@ -13,7 +13,7 @@ use crate::{ drive::CloudObjectTypeAndId, }; use serde::{Deserialize, Serialize}; -use warp_core::ui::appearance::Appearance; +use galaxy_core::ui::appearance::Appearance; pub mod manager; pub mod view; diff --git a/app/src/ai/facts/view/mod.rs b/app/src/ai/facts/view/mod.rs index b4cf825e..221fefcb 100644 --- a/app/src/ai/facts/view/mod.rs +++ b/app/src/ai/facts/view/mod.rs @@ -8,8 +8,8 @@ use crate::pane_group::{pane::view, BackingView, PaneConfiguration, PaneEvent}; use crate::server::ids::SyncId; use crate::server::sync_queue::SyncQueue; use std::path::PathBuf; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Align, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CrossAxisAlignment, Expanded, Flex, MainAxisAlignment, MainAxisSize, ParentElement, @@ -20,8 +20,8 @@ use warpui::{ }; use crate::ui_components::icons::Icon; -use warpui::elements::ChildView; -use warpui::{SingletonEntity, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{SingletonEntity, ViewHandle}; use super::{AIFact, CloudAIFact, CloudAIFactModel}; @@ -192,7 +192,7 @@ impl AIFactView { .with_child( ConstrainedBox::new( Icon::CloudOffline - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), @@ -277,7 +277,7 @@ impl View for AIFactView { ScrollbarWidth::Auto, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish() } @@ -307,16 +307,16 @@ impl BackingView for AIFactView { fn handle_pane_header_overflow_menu_action( &mut self, _action: &Self::PaneHeaderOverflowMenuAction, - _ctx: &mut warpui::ViewContext, + _ctx: &mut galaxyui::ViewContext, ) { self.handle_action(_action, _ctx) } - fn close(&mut self, ctx: &mut warpui::ViewContext) { + fn close(&mut self, ctx: &mut galaxyui::ViewContext) { ctx.emit(AIFactViewEvent::Pane(PaneEvent::Close)); } - fn focus_contents(&mut self, ctx: &mut warpui::ViewContext) { + fn focus_contents(&mut self, ctx: &mut galaxyui::ViewContext) { self.focus(ctx); } diff --git a/app/src/ai/facts/view/rule.rs b/app/src/ai/facts/view/rule.rs index 79b75d14..f4a1aeb8 100644 --- a/app/src/ai/facts/view/rule.rs +++ b/app/src/ai/facts/view/rule.rs @@ -27,14 +27,14 @@ use markdown_parser::{ }; use std::fmt::Debug; use std::path::PathBuf; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::{Appearance, AppearanceEvent}, theme::color::internal_colors, }; -use warpui::elements::Shrinkable; -use warpui::platform::FilePickerConfiguration; -use warpui::ui_components::button::ButtonVariant; -use warpui::{ +use galaxyui::elements::Shrinkable; +use galaxyui::platform::FilePickerConfiguration; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, Hoverable, MainAxisAlignment, @@ -424,7 +424,7 @@ impl RuleView { .with_child( Container::new( ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( Icon::BookOpen.into(), appearance .theme() @@ -527,13 +527,13 @@ impl RuleView { if is_selected { container = container .with_background(appearance.theme().surface_2()) - .with_corner_radius(CornerRadius::with_all(warpui::elements::Radius::Pixels( + .with_corner_radius(CornerRadius::with_all(galaxyui::elements::Radius::Pixels( 4., ))); } else if state.is_hovered() { container = container .with_background(appearance.theme().surface_1()) - .with_corner_radius(CornerRadius::with_all(warpui::elements::Radius::Pixels( + .with_corner_radius(CornerRadius::with_all(galaxyui::elements::Radius::Pixels( 4., ))); } @@ -591,7 +591,7 @@ impl RuleView { Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().background()), @@ -609,7 +609,7 @@ impl RuleView { .finish(), ) .with_background(appearance.theme().accent_overlay()) - .with_corner_radius(CornerRadius::with_all(warpui::elements::Radius::Pixels(4.))) + .with_corner_radius(CornerRadius::with_all(galaxyui::elements::Radius::Pixels(4.))) .with_uniform_padding(style::BANNER_PADDING) .with_margin_bottom(style::ITEM_BOTTOM_MARGIN) .finish() @@ -704,7 +704,7 @@ impl RuleView { Some( Container::new(row.finish()) .with_background(internal_colors::neutral_1(appearance.theme())) - .with_corner_radius(CornerRadius::with_all(warpui::elements::Radius::Pixels(4.))) + .with_corner_radius(CornerRadius::with_all(galaxyui::elements::Radius::Pixels(4.))) .with_border( Border::all(1.) .with_border_color(internal_colors::neutral_2(appearance.theme())), @@ -785,7 +785,7 @@ impl RuleView { Container::new(row.finish()) .with_background(bg_color) - .with_corner_radius(CornerRadius::with_all(warpui::elements::Radius::Pixels(4.))) + .with_corner_radius(CornerRadius::with_all(galaxyui::elements::Radius::Pixels(4.))) .with_border( Border::all(1.) .with_border_color(internal_colors::neutral_2(appearance.theme())), diff --git a/app/src/ai/facts/view/rule_editor.rs b/app/src/ai/facts/view/rule_editor.rs index 805f4ec0..df44539b 100644 --- a/app/src/ai/facts/view/rule_editor.rs +++ b/app/src/ai/facts/view/rule_editor.rs @@ -9,10 +9,10 @@ use crate::network::NetworkStatus; use crate::server::ids::SyncId; use crate::ui_components::buttons::icon_button; use crate::view_components::action_button::{ActionButton, DangerSecondaryTheme, PrimaryTheme}; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warp_editor::editor::NavigationKey; -use warpui::elements::{Clipped, ConstrainedBox}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::{Clipped, ConstrainedBox}; +use galaxyui::{ elements::{ Border, ChildView, ClippedScrollStateHandle, ClippedScrollable, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, @@ -312,7 +312,7 @@ impl RuleEditorView { ScrollbarWidth::Auto, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), ) diff --git a/app/src/ai/facts/view/style.rs b/app/src/ai/facts/view/style.rs index 4d77075c..df728988 100644 --- a/app/src/ai/facts/view/style.rs +++ b/app/src/ai/facts/view/style.rs @@ -1,5 +1,5 @@ -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{ elements::{CornerRadius, Radius}, fonts::Weight, ui_components::components::{Coords, UiComponentStyles}, diff --git a/app/src/ai/get_relevant_files/controller.rs b/app/src/ai/get_relevant_files/controller.rs index 0580d76a..db1b4c7b 100644 --- a/app/src/ai/get_relevant_files/controller.rs +++ b/app/src/ai/get_relevant_files/controller.rs @@ -13,9 +13,9 @@ use std::{ path::{Path, PathBuf}, sync::Arc, }; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/harness_display.rs b/app/src/ai/harness_display.rs index db287b80..89f7fec9 100644 --- a/app/src/ai/harness_display.rs +++ b/app/src/ai/harness_display.rs @@ -5,7 +5,7 @@ //! icon, and brand color from here so the two surfaces cannot drift. use pathfinder_color::ColorU; -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; use crate::ai::agent::conversation::AIAgentHarness; use crate::ai::blocklist::CLAUDE_ORANGE; @@ -15,7 +15,7 @@ use crate::ui_components::icons::Icon; /// User-visible display name for a [`Harness`]. pub fn display_name(harness: Harness) -> &'static str { match harness { - Harness::Oz => "Warp Agent", + Harness::Oz => "Galaxy Agent", Harness::Claude => "Claude Code", Harness::OpenCode => "OpenCode", Harness::Gemini => "Gemini CLI", diff --git a/app/src/ai/llms.rs b/app/src/ai/llms.rs index 51c7d691..8d40283a 100644 --- a/app/src/ai/llms.rs +++ b/app/src/ai/llms.rs @@ -4,9 +4,9 @@ use std::{ collections::{HashMap, HashSet}, sync::{Arc, OnceLock}, }; -use warp_core::ui::icons::Icon; -use warp_core::user_preferences::GetUserPreferences; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; +use galaxy_core::ui::icons::Icon; +use galaxy_core::user_preferences::GetUserPreferences; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity}; use crate::{ auth::{ @@ -630,6 +630,13 @@ impl LLMPreferences { .agent_mode .choices .retain(|m| m.provider != LLMProvider::Bedrock); + self.models_by_feature + .coding + .choices + .retain(|m| m.provider != LLMProvider::Bedrock); + if let Some(ref mut cli) = self.models_by_feature.cli_agent { + cli.choices.retain(|m| m.provider != LLMProvider::Bedrock); + } let settings = AISettings::as_ref(ctx); if !*settings.bedrock_enabled.value() { @@ -671,7 +678,14 @@ impl LLMPreferences { )]), discount_percentage: None, }; - self.models_by_feature.agent_mode.choices.push(llm_info); + self.models_by_feature + .agent_mode + .choices + .push(llm_info.clone()); + self.models_by_feature.coding.choices.push(llm_info.clone()); + if let Some(ref mut cli) = self.models_by_feature.cli_agent { + cli.choices.push(llm_info); + } } } diff --git a/app/src/ai/loading/shimmering_warp_loading_text.rs b/app/src/ai/loading/shimmering_warp_loading_text.rs index fd6502db..8cc3ab1f 100644 --- a/app/src/ai/loading/shimmering_warp_loading_text.rs +++ b/app/src/ai/loading/shimmering_warp_loading_text.rs @@ -1,11 +1,11 @@ //! Shimmering Warp loading text - renders Warp logo with shimmering text for loading states. -use warp_core::ui::appearance::Appearance; -use warpui::elements::shimmering_text::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::shimmering_text::{ ShimmerConfig, ShimmeringTextElement, ShimmeringTextStateHandle, }; -use warpui::elements::Element; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::elements::Element; +use galaxyui::{AppContext, SingletonEntity}; /// Warp icon glyph character const WARP_GLYPH: &str = "\u{E500}"; diff --git a/app/src/ai/mcp/dummy_file_based_manager.rs b/app/src/ai/mcp/dummy_file_based_manager.rs index 7b2c2c97..42ca4113 100644 --- a/app/src/ai/mcp/dummy_file_based_manager.rs +++ b/app/src/ai/mcp/dummy_file_based_manager.rs @@ -3,7 +3,7 @@ use std::path::{Path, PathBuf}; use uuid::Uuid; use super::MCPProvider; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; pub struct FileBasedMCPManager {} diff --git a/app/src/ai/mcp/dummy_file_mcp_watcher.rs b/app/src/ai/mcp/dummy_file_mcp_watcher.rs index 34700f58..7092c9d7 100644 --- a/app/src/ai/mcp/dummy_file_mcp_watcher.rs +++ b/app/src/ai/mcp/dummy_file_mcp_watcher.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; pub struct FileMCPWatcher {} diff --git a/app/src/ai/mcp/file_based_manager.rs b/app/src/ai/mcp/file_based_manager.rs index 56ce2fb1..d47137a5 100644 --- a/app/src/ai/mcp/file_based_manager.rs +++ b/app/src/ai/mcp/file_based_manager.rs @@ -5,8 +5,8 @@ use repo_metadata::repositories::DetectedRepositories; use std::collections::{hash_map::Entry, HashMap, HashSet}; use std::path::{Path, PathBuf}; use uuid::Uuid; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::{ ai::mcp::{ diff --git a/app/src/ai/mcp/file_based_manager_tests.rs b/app/src/ai/mcp/file_based_manager_tests.rs index c3ebfd01..d4567c59 100644 --- a/app/src/ai/mcp/file_based_manager_tests.rs +++ b/app/src/ai/mcp/file_based_manager_tests.rs @@ -12,12 +12,12 @@ use settings::Setting as _; use std::collections::HashSet; use std::path::PathBuf; use uuid::Uuid; -use warp_core::features::FeatureFlag; -use warpui::{App, Entity, ModelHandle, SingletonEntity as _}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{App, Entity, ModelHandle, SingletonEntity as _}; use watcher::HomeDirectoryWatcher; // Helper to initialize dependencies and return FileBasedMCPManager handle -fn setup_app(app: &mut App) -> warpui::ModelHandle { +fn setup_app(app: &mut App) -> galaxyui::ModelHandle { app.add_singleton_model(DirectoryWatcher::new); app.add_singleton_model(|_| DetectedRepositories::default()); app.add_singleton_model(RepoMetadataModel::new); diff --git a/app/src/ai/mcp/file_mcp_watcher.rs b/app/src/ai/mcp/file_mcp_watcher.rs index d8c9daef..866b8227 100644 --- a/app/src/ai/mcp/file_mcp_watcher.rs +++ b/app/src/ai/mcp/file_mcp_watcher.rs @@ -11,8 +11,8 @@ use std::io::ErrorKind; use std::path::{Path, PathBuf}; use std::pin::Pin; use std::sync::LazyLock; -use warp_core::safe_warn; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::safe_warn; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity}; use watcher::HomeDirectoryWatcherEvent; use crate::ai::mcp::{ @@ -286,7 +286,7 @@ impl FileMCPWatcher { } let Ok(std_path) = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(subdir_path) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(subdir_path) else { return; }; diff --git a/app/src/ai/mcp/gallery.rs b/app/src/ai/mcp/gallery.rs index a7319578..2b2e6966 100644 --- a/app/src/ai/mcp/gallery.rs +++ b/app/src/ai/mcp/gallery.rs @@ -7,7 +7,7 @@ use crate::server::cloud_objects::update_manager::{UpdateManager, UpdateManagerE use crate::server::datetime_ext::DateTimeExt; use chrono::DateTime; use uuid::Uuid; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[derive(Clone, Debug)] pub struct GalleryMCPServer { @@ -130,7 +130,7 @@ impl MCPGalleryManager { /// Update gallery items from the server response pub fn update_gallery_items( &mut self, - templates: Vec, + templates: Vec, ctx: &mut ModelContext, ) { let mut gallery_items = HashMap::new(); diff --git a/app/src/ai/mcp/mod.rs b/app/src/ai/mcp/mod.rs index 872a7284..bee3ec63 100644 --- a/app/src/ai/mcp/mod.rs +++ b/app/src/ai/mcp/mod.rs @@ -28,8 +28,8 @@ use diesel::{QueryDsl, RunQueryDsl, SqliteConnection}; use serde::{Deserialize, Serialize}; use strum::IntoEnumIterator; use strum_macros::EnumIter; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::Icon; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::Icon; pub mod manager; pub mod templatable_manager; @@ -48,7 +48,7 @@ cfg_if::cfg_if! { pub(crate) fn home_config_file_path(provider: MCPProvider) -> Option { match provider { - MCPProvider::Warp => warp_core::paths::warp_home_mcp_config_file_path(), + MCPProvider::Warp => galaxy_core::paths::warp_home_mcp_config_file_path(), _ => dirs::home_dir().map(|home_dir| home_dir.join(provider.home_config_path())), } } @@ -147,7 +147,7 @@ mod tests { #[test] fn mcp_provider_from_file_path_recognizes_warp_home_path() { if let Some(warp_home_mcp_config_file_path) = - warp_core::paths::warp_home_mcp_config_file_path() + galaxy_core::paths::warp_home_mcp_config_file_path() { assert_eq!( mcp_provider_from_file_path(&warp_home_mcp_config_file_path), @@ -159,7 +159,7 @@ mod tests { pub mod gallery; pub use gallery::MCPGalleryManager; -use warpui::{AppContext, SingletonEntity as _}; +use galaxyui::{AppContext, SingletonEntity as _}; pub mod templatable; pub use templatable::JsonTemplate; pub use templatable::{TemplatableMCPServer, TemplateVariable}; diff --git a/app/src/ai/mcp/mod_test.rs b/app/src/ai/mcp/mod_test.rs index 122054c5..1c89eb99 100644 --- a/app/src/ai/mcp/mod_test.rs +++ b/app/src/ai/mcp/mod_test.rs @@ -10,7 +10,7 @@ mod tests { }; use serde_json; use std::collections::HashMap; - use warp_managed_secrets::ManagedSecretValue; + use galaxy_managed_secrets::ManagedSecretValue; #[test] fn test_mcp_server_config_serialization_excludes_secret_env_values() { diff --git a/app/src/ai/mcp/reconnecting_peer.rs b/app/src/ai/mcp/reconnecting_peer.rs index 71fbde0a..3283fe83 100644 --- a/app/src/ai/mcp/reconnecting_peer.rs +++ b/app/src/ai/mcp/reconnecting_peer.rs @@ -3,7 +3,7 @@ use std::future::Future; use uuid::Uuid; -use warpui::ModelSpawner; +use galaxyui::ModelSpawner; use super::TemplatableMCPServerManager; diff --git a/app/src/ai/mcp/templatable.rs b/app/src/ai/mcp/templatable.rs index fb193679..556ac254 100644 --- a/app/src/ai/mcp/templatable.rs +++ b/app/src/ai/mcp/templatable.rs @@ -4,8 +4,8 @@ use chrono::DateTime; use handlebars::get_arguments; use serde::{Deserialize, Serialize}; use uuid::Uuid; -use warp_core::ui::appearance::Appearance; -use warpui::{AppContext, SingletonEntity as _}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{AppContext, SingletonEntity as _}; use crate::{ cloud_object::{ diff --git a/app/src/ai/mcp/templatable_installation.rs b/app/src/ai/mcp/templatable_installation.rs index 966f8e57..83573861 100644 --- a/app/src/ai/mcp/templatable_installation.rs +++ b/app/src/ai/mcp/templatable_installation.rs @@ -5,7 +5,7 @@ use lazy_static::lazy_static; use serde::{Deserialize, Serialize}; use std::hash::{Hash, Hasher}; use uuid::Uuid; -use warp_managed_secrets::ManagedSecretValue; +use galaxy_managed_secrets::ManagedSecretValue; use crate::ai::mcp::{TemplatableMCPServer, TemplateVariable}; use siphasher::sip::SipHasher; diff --git a/app/src/ai/mcp/templatable_manager.rs b/app/src/ai/mcp/templatable_manager.rs index d6d9516f..c329b49d 100644 --- a/app/src/ai/mcp/templatable_manager.rs +++ b/app/src/ai/mcp/templatable_manager.rs @@ -22,8 +22,8 @@ use crate::ai::mcp::{templatable_installation::TemplatableMCPServerInstallation, use futures_util::stream::AbortHandle; use uuid::Uuid; #[cfg(not(target_family = "wasm"))] -use warpui::ModelSpawner; -use warpui::{Entity, SingletonEntity}; +use galaxyui::ModelSpawner; +use galaxyui::{Entity, SingletonEntity}; #[cfg(not(target_family = "wasm"))] type ReconnectResultSender = @@ -319,7 +319,7 @@ impl TemplatableMCPServerManager { pub fn get_active_file_based_servers( &self, cwd: &std::path::Path, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> HashMap { FileBasedMCPManager::as_ref(app) .get_servers_for_working_directory(cwd, app) diff --git a/app/src/ai/mcp/templatable_manager/native.rs b/app/src/ai/mcp/templatable_manager/native.rs index 65becf9a..e6401d1e 100644 --- a/app/src/ai/mcp/templatable_manager/native.rs +++ b/app/src/ai/mcp/templatable_manager/native.rs @@ -55,10 +55,10 @@ use simple_logger::manager::LogManager; use simple_logger::SimpleLogger; use tokio::io::AsyncBufReadExt as _; use uuid::Uuid; -use warp_core::safe_error; -use warp_core::{execution_mode::AppExecutionMode, features::FeatureFlag, settings::Setting as _}; -use warpui::AppContext; -use warpui::{windowing::WindowManager, ModelContext, SingletonEntity}; +use galaxy_core::safe_error; +use galaxy_core::{execution_mode::AppExecutionMode, features::FeatureFlag, settings::Setting as _}; +use galaxyui::AppContext; +use galaxyui::{windowing::WindowManager, ModelContext, SingletonEntity}; use super::{ oauth::{self, AuthContext, FileBasedPersistedCredentialsMap, PersistedCredentialsMap}, @@ -2097,8 +2097,8 @@ fn make_client_info() -> rmcp::model::ClientInfo { protocol_version: Default::default(), capabilities: Default::default(), client_info: rmcp::model::Implementation { - name: warp_core::channel::ChannelState::app_id().to_string(), - version: warp_core::channel::ChannelState::app_version() + name: galaxy_core::channel::ChannelState::app_id().to_string(), + version: galaxy_core::channel::ChannelState::app_version() .map(|v| v.to_string()) .unwrap_or_default(), title: None, diff --git a/app/src/ai/mcp/templatable_manager/oauth.rs b/app/src/ai/mcp/templatable_manager/oauth.rs index 48e81cbe..11dbe6fd 100644 --- a/app/src/ai/mcp/templatable_manager/oauth.rs +++ b/app/src/ai/mcp/templatable_manager/oauth.rs @@ -13,12 +13,12 @@ use serde::de::DeserializeOwned; use serde::{Deserialize, Serialize}; use url::Url; use uuid::Uuid; -use warp_core::channel::ChannelState; -use warpui::ModelSpawner; -use warpui_extras::secure_storage::AppContextExt as _; +use galaxy_core::channel::ChannelState; +use galaxyui::ModelSpawner; +use galaxyui_extras::secure_storage::AppContextExt as _; use super::{MCPServerState, TemplatableMCPServerManager}; -use {crate::ai::mcp::FileBasedMCPManager, warpui::SingletonEntity}; +use {crate::ai::mcp::FileBasedMCPManager, galaxyui::SingletonEntity}; pub(crate) const TEMPLATABLE_MCP_CREDENTIALS_KEY: &str = "TemplatableMcpCredentials"; pub(crate) const FILE_BASED_MCP_CREDENTIALS_KEY: &str = "FileBasedMcpCredentials"; @@ -476,7 +476,7 @@ impl TemplatableMCPServerManager { bail!("No spawned server found for uuid={server_uuid}"); }; - warpui::r#async::block_on(server_info.oauth_result_tx.send(result)).map_err(|_| { + galaxyui::r#async::block_on(server_info.oauth_result_tx.send(result)).map_err(|_| { anyhow!("Failed to send OAuth result to server {server_uuid} - receiver dropped") })?; @@ -486,7 +486,7 @@ impl TemplatableMCPServerManager { pub fn save_credentials_to_secure_storage( &mut self, - app: &mut warpui::AppContext, + app: &mut galaxyui::AppContext, installation_uuid: Uuid, credentials: PersistedCredentials, ) { @@ -517,7 +517,7 @@ impl TemplatableMCPServerManager { pub fn delete_credentials_from_secure_storage( &mut self, installation_uuid: Uuid, - app: &mut warpui::AppContext, + app: &mut galaxyui::AppContext, ) { if let Some(template_uuid) = self.get_template_uuid(installation_uuid) { self.server_credentials.remove(&template_uuid); @@ -534,13 +534,13 @@ impl TemplatableMCPServerManager { /// Loads credentials from secure storage at the provided key. pub(crate) fn load_credentials_from_secure_storage( - app: &mut warpui::AppContext, + app: &mut galaxyui::AppContext, key: &str, ) -> T { app.secure_storage() .read_value(key) .inspect_err(|err| { - if !matches!(err, warpui_extras::secure_storage::Error::NotFound) { + if !matches!(err, galaxyui_extras::secure_storage::Error::NotFound) { log::warn!("Failed to read MCP credentials from secure storage: {err:#}"); } }) @@ -551,7 +551,7 @@ pub(crate) fn load_credentials_from_secure_storage( - app: &mut warpui::AppContext, + app: &mut galaxyui::AppContext, key: &str, credentials: &T, ) { diff --git a/app/src/ai/mcp/templatable_manager/wasm.rs b/app/src/ai/mcp/templatable_manager/wasm.rs index 0fafd518..08781680 100644 --- a/app/src/ai/mcp/templatable_manager/wasm.rs +++ b/app/src/ai/mcp/templatable_manager/wasm.rs @@ -1,5 +1,5 @@ -use warpui::AppContext; -use warpui::ModelContext; +use galaxyui::AppContext; +use galaxyui::ModelContext; use super::TemplatableMCPServerManager; use crate::ai::mcp::templatable::{CloudTemplatableMCPServer, TemplatableMCPServer}; @@ -159,7 +159,7 @@ impl TemplatableMCPServerManager { pub fn delete_credentials_from_secure_storage( &mut self, _sync_id: Uuid, - _app: &mut warpui::AppContext, + _app: &mut galaxyui::AppContext, ) { log::warn!("Deleting credentials for MCP servers is not supported in WASM") } diff --git a/app/src/ai/mod.rs b/app/src/ai/mod.rs index 2d653639..8fd7002a 100644 --- a/app/src/ai/mod.rs +++ b/app/src/ai/mod.rs @@ -38,7 +38,7 @@ pub(crate) mod skills; pub(crate) mod voice; pub use agent_tips::*; pub use request_usage_model::*; -use warpui::AppContext; +use galaxyui::AppContext; #[cfg(not(target_family = "wasm"))] pub mod agent_sdk; pub mod cloud_agent_config; diff --git a/app/src/ai/onboarding.rs b/app/src/ai/onboarding.rs index cd1f898c..d78b1ec2 100644 --- a/app/src/ai/onboarding.rs +++ b/app/src/ai/onboarding.rs @@ -3,8 +3,8 @@ use ai::LLMId; use onboarding::slides::OnboardingModelInfo; use onboarding::OnboardingAuthState; -use warp_core::ui::icons::Icon; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::ui::icons::Icon; +use galaxyui::{AppContext, SingletonEntity}; use crate::auth::AuthStateProvider; use crate::experiments::FreeTierDefaultModel; diff --git a/app/src/ai/outline/native.rs b/app/src/ai/outline/native.rs index 9210eee7..6f56b5e0 100644 --- a/app/src/ai/outline/native.rs +++ b/app/src/ai/outline/native.rs @@ -15,7 +15,7 @@ use repo_metadata::{ DirectoryWatcher, Repository, RepositoryUpdate, }; use settings::Setting as _; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity}; use crate::{ ai::persisted_workspace::all_working_directories, diff --git a/app/src/ai/outline/wasm.rs b/app/src/ai/outline/wasm.rs index 7bfd06dc..e8b2c034 100644 --- a/app/src/ai/outline/wasm.rs +++ b/app/src/ai/outline/wasm.rs @@ -1,6 +1,6 @@ use std::path::{Path, PathBuf}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use super::OutlineStatus; diff --git a/app/src/ai/persisted_workspace.rs b/app/src/ai/persisted_workspace.rs index 019b0469..db78a004 100644 --- a/app/src/ai/persisted_workspace.rs +++ b/app/src/ai/persisted_workspace.rs @@ -27,10 +27,10 @@ use anyhow::Context; use chrono::Utc; use itertools::Itertools; use lsp::supported_servers::LSPServerType; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; #[cfg(feature = "local_fs")] -use warpui::windowing::WindowManager; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::windowing::WindowManager; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; #[cfg(feature = "local_fs")] use crate::code::language_server_shutdown_manager::LanguageServerShutdownManager; @@ -45,7 +45,7 @@ use crate::{view_components::DismissibleToast, workspace::ToastStack}; #[cfg(feature = "local_fs")] use lsp::LspEvent; #[cfg(feature = "local_fs")] -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use ai::project_context::model::{ProjectContextModel, ProjectContextModelEvent}; @@ -790,7 +790,7 @@ impl PersistedWorkspace { /// This ensures that the codebase index is up-to-date before the conversation begins. fn trigger_incremental_sync_for_conversation( &mut self, - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, ctx: &mut ModelContext, ) { if !UserWorkspaces::as_ref(ctx).is_codebase_context_enabled(ctx) { diff --git a/app/src/ai/predict/next_command_model.rs b/app/src/ai/predict/next_command_model.rs index 71563a10..6cecec03 100644 --- a/app/src/ai/predict/next_command_model.rs +++ b/app/src/ai/predict/next_command_model.rs @@ -18,17 +18,17 @@ use std::collections::HashMap; use std::sync::Arc; #[cfg(feature = "local_fs")] use std::time::Duration; -use warp_completer::completer::{ +use galaxy_completer::completer::{ self, expand_command_aliases, AliasExpansionResult, CompleterOptions, CompletionsFallbackStrategy, MatchStrategy, }; -use warp_completer::meta::Spanned; -use warp_completer::parsers::hir::{Command, Expression, FlagType}; -use warp_completer::parsers::ParsedExpression; -use warp_core::features::FeatureFlag; +use galaxy_completer::meta::Spanned; +use galaxy_completer::parsers::hir::{Command, Expression, FlagType}; +use galaxy_completer::parsers::ParsedExpression; +use galaxy_core::features::FeatureFlag; #[cfg(feature = "local_fs")] -use warpui::r#async::FutureExt; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::r#async::FutureExt; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use super::generate_ai_input_suggestions::{ create_generate_ai_input_suggestions_request, get_context_messages, @@ -39,7 +39,7 @@ cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { use diesel::SqliteConnection; use std::path::PathBuf; - use warp_completer::parsers::hir::ArgType; + use galaxy_completer::parsers::hir::ArgType; } } @@ -54,7 +54,7 @@ const NUM_ADDITIONAL_PREV_COMMAND_CONTEXT_LLM: usize = 2; #[cfg(feature = "local_fs")] const ARG_GENERATOR_VALIDATION_TIMEOUT: Duration = Duration::from_millis(150); -pub fn is_next_command_enabled(app: &warpui::AppContext) -> bool { +pub fn is_next_command_enabled(app: &galaxyui::AppContext) -> bool { AISettings::as_ref(app).is_intelligent_autosuggestions_enabled(app) && UserWorkspaces::as_ref(app).is_next_command_enabled() } diff --git a/app/src/ai/predict/next_command_model_test.rs b/app/src/ai/predict/next_command_model_test.rs index 2b3e2918..de0f98b3 100644 --- a/app/src/ai/predict/next_command_model_test.rs +++ b/app/src/ai/predict/next_command_model_test.rs @@ -4,9 +4,9 @@ use crate::terminal::model::session::{ command_executor::testing::TestCommandExecutor, SessionInfo, }; use typed_path::TypedPathBuf; -use warp_completer::signatures::CommandRegistry; -use warp_completer::{meta::SpannedItem, parsers::ParsedToken}; -use warpui::App; +use galaxy_completer::signatures::CommandRegistry; +use galaxy_completer::{meta::SpannedItem, parsers::ParsedToken}; +use galaxyui::App; use super::*; diff --git a/app/src/ai/predict/prompt_suggestions/mod.rs b/app/src/ai/predict/prompt_suggestions/mod.rs index 27eb648e..5ed76c5b 100644 --- a/app/src/ai/predict/prompt_suggestions/mod.rs +++ b/app/src/ai/predict/prompt_suggestions/mod.rs @@ -1,6 +1,6 @@ use std::sync::LazyLock; -use warpui::{keymap::Keystroke, AppContext}; +use galaxyui::{keymap::Keystroke, AppContext}; use crate::{terminal::TerminalModel, util::bindings::keybinding_name_to_keystroke}; diff --git a/app/src/ai/request_usage_model.rs b/app/src/ai/request_usage_model.rs index 86c4a4e5..1897c2b1 100644 --- a/app/src/ai/request_usage_model.rs +++ b/app/src/ai/request_usage_model.rs @@ -12,11 +12,11 @@ use chrono::{DateTime, Utc}; use instant::Instant; use serde::{Deserialize, Serialize}; use std::sync::Arc; -use warp_core::user_preferences::GetUserPreferences as _; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; -pub use warp_graphql::billing::BonusGrantType; +pub use galaxy_graphql::billing::BonusGrantType; /// Threshold of ambient-only credits at which we surface upgrade/CTA UI. pub const AMBIENT_AGENT_TRIAL_CREDIT_THRESHOLD: i32 = 20; diff --git a/app/src/ai/request_usage_model_test.rs b/app/src/ai/request_usage_model_test.rs index 72f3710c..f7451794 100644 --- a/app/src/ai/request_usage_model_test.rs +++ b/app/src/ai/request_usage_model_test.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use chrono::Duration; -use warpui::{App, ModelHandle}; +use galaxyui::{App, ModelHandle}; use crate::server::server_api::team::MockTeamClient; use crate::server::server_api::workspace::MockWorkspaceClient; @@ -15,7 +15,7 @@ use crate::workspaces::{ }; use ai::api_keys::ApiKeyManager; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use super::*; @@ -40,7 +40,7 @@ fn add_user_workspaces_with_workspace(app: &mut App, workspace: Workspace) { fn add_request_usage_model(app: &mut App) -> ModelHandle { app.add_singleton_model(|_| ServerApiProvider::new_for_test()); app.update(|ctx| { - warpui_extras::secure_storage::register_noop("test", ctx); + galaxyui_extras::secure_storage::register_noop("test", ctx); ctx.add_singleton_model(ApiKeyManager::new); }); app.add_singleton_model(|ctx| { diff --git a/app/src/ai/restored_conversations.rs b/app/src/ai/restored_conversations.rs index 7e4c1a6b..c76fd3de 100644 --- a/app/src/ai/restored_conversations.rs +++ b/app/src/ai/restored_conversations.rs @@ -1,7 +1,7 @@ //! A singleton model for storing conversations by ID to enable restoration across terminal views. use std::collections::HashMap; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; use crate::{ ai::{ diff --git a/app/src/ai/skills/dummy_skill_manager.rs b/app/src/ai/skills/dummy_skill_manager.rs index f5e3cde6..ecc0fd80 100644 --- a/app/src/ai/skills/dummy_skill_manager.rs +++ b/app/src/ai/skills/dummy_skill_manager.rs @@ -1,7 +1,7 @@ use std::path::Path; use ai::skills::{ParsedSkill, SkillProvider, SkillReference}; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::ai::skills::SkillDescriptor; diff --git a/app/src/ai/skills/file_watchers/skill_watcher.rs b/app/src/ai/skills/file_watchers/skill_watcher.rs index a762495d..4d79a9c5 100644 --- a/app/src/ai/skills/file_watchers/skill_watcher.rs +++ b/app/src/ai/skills/file_watchers/skill_watcher.rs @@ -29,7 +29,7 @@ use repo_metadata::{ repository::{Repository, SubscriberId}, DirectoryWatcher, RepoMetadataModel, RepositoryUpdate, }; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; #[derive(Debug, PartialEq)] pub enum SkillWatcherEvent { @@ -578,7 +578,7 @@ impl SkillWatcher { } let Ok(std_dir_path) = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized( + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized( &canonical_dir, ) else { @@ -827,7 +827,7 @@ impl SkillWatcher { ctx: &mut ModelContext, ) { let Ok(std_path) = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(path) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(path) else { return; }; diff --git a/app/src/ai/skills/file_watchers/skill_watcher_tests.rs b/app/src/ai/skills/file_watchers/skill_watcher_tests.rs index 53379618..cd349bdd 100644 --- a/app/src/ai/skills/file_watchers/skill_watcher_tests.rs +++ b/app/src/ai/skills/file_watchers/skill_watcher_tests.rs @@ -10,8 +10,8 @@ use repo_metadata::{ TargetFile, }; use tempfile::TempDir; -use warp_util::standardized_path::StandardizedPath; -use warpui::App; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::App; use super::SkillWatcher; diff --git a/app/src/ai/skills/file_watchers/subscribers.rs b/app/src/ai/skills/file_watchers/subscribers.rs index bd4cf2e9..15bc604a 100644 --- a/app/src/ai/skills/file_watchers/subscribers.rs +++ b/app/src/ai/skills/file_watchers/subscribers.rs @@ -5,7 +5,7 @@ use futures::Future; use ai::skills::{read_skills, ParsedSkill, SKILL_PROVIDER_DEFINITIONS}; use async_channel::Sender; use repo_metadata::{repository::RepositorySubscriber, Repository, RepositoryUpdate}; -use warpui::ModelContext; +use galaxyui::ModelContext; /// Messages sent from [`RepositorySubscriber`]s to [`SkillManager`]. pub enum SkillRepositoryMessage { diff --git a/app/src/ai/skills/file_watchers/utils.rs b/app/src/ai/skills/file_watchers/utils.rs index 4d664d48..1fb8df48 100644 --- a/app/src/ai/skills/file_watchers/utils.rs +++ b/app/src/ai/skills/file_watchers/utils.rs @@ -10,7 +10,7 @@ use ai::skills::{ use anyhow::Error; use regex::Regex; use repo_metadata::{local_model::GetContentsArgs, RepoContent, RepoMetadataModel}; -use warpui::AppContext; +use galaxyui::AppContext; use crate::warp_managed_paths_watcher::warp_managed_skill_dirs; diff --git a/app/src/ai/skills/file_watchers/utils_tests.rs b/app/src/ai/skills/file_watchers/utils_tests.rs index ac34dc4d..732817f3 100644 --- a/app/src/ai/skills/file_watchers/utils_tests.rs +++ b/app/src/ai/skills/file_watchers/utils_tests.rs @@ -5,7 +5,7 @@ use repo_metadata::{ DirectoryWatcher, RepoMetadataModel, }; use virtual_fs::{Stub, VirtualFS}; -use warpui::App; +use galaxyui::App; use super::{ extract_skill_parent_directory, find_skill_directories_in_tree, is_home_provider_path, @@ -327,7 +327,7 @@ fn is_home_provider_path_true_for_known_providers() { let path = home_dir.join(".agents").join("skills"); assert!(is_home_provider_path(&path)); - if let Some(path) = warp_core::paths::warp_home_skills_dir() { + if let Some(path) = galaxy_core::paths::warp_home_skills_dir() { assert!(is_home_provider_path(&path)); } @@ -350,7 +350,7 @@ fn extract_skill_parent_directory_returns_home_dir_for_warp_home_skill() { eprintln!("Skipping test: home directory not available"); return; }; - let Some(warp_home_skills_dir) = warp_core::paths::warp_home_skills_dir() else { + let Some(warp_home_skills_dir) = galaxy_core::paths::warp_home_skills_dir() else { eprintln!("Skipping test: Warp home skills directory not available"); return; }; @@ -429,7 +429,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { false, )); let skill1_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".agents/skills/root-skill-1"), ) .unwrap(), @@ -438,7 +438,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { loaded: true, }); let warp_skills = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".agents/skills"), ) .unwrap(), @@ -447,7 +447,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { loaded: true, }); let warp_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".agents"), ) .unwrap(), @@ -461,7 +461,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { false, )); let skill2_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".claude/skills/root-skill-2"), ) .unwrap(), @@ -470,7 +470,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { loaded: true, }); let claude_skills = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".claude/skills"), ) .unwrap(), @@ -479,7 +479,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { loaded: true, }); let claude_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".claude"), ) .unwrap(), @@ -489,7 +489,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { }); let root = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(&repo).unwrap(), + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo).unwrap(), children: vec![warp_dir, claude_dir], ignored: false, loaded: true, @@ -500,7 +500,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { app.add_singleton_model(|_| DetectedRepositories::default()); let repo_handle = watcher.update(&mut app, |w, ctx| { w.add_directory( - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(), ctx, ) @@ -511,7 +511,7 @@ fn find_skill_directories_in_tree_finds_root_skills() { let model_handle = app.add_singleton_model(RepoMetadataModel::new); model_handle.update(&mut app, |model, ctx| { let key = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(); model.insert_test_state(key, state, ctx); }); @@ -555,7 +555,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { false, )); let root_skill_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".agents/skills/root-skill"), ) .unwrap(), @@ -564,7 +564,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { loaded: true, }); let root_warp_skills = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".agents/skills"), ) .unwrap(), @@ -573,7 +573,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { loaded: true, }); let root_warp = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join(".agents"), ) .unwrap(), @@ -587,7 +587,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { false, )); let frontend_skill_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join("packages/frontend/.agents/skills/frontend-skill"), ) .unwrap(), @@ -596,7 +596,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { loaded: true, }); let frontend_warp_skills = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join("packages/frontend/.agents/skills"), ) .unwrap(), @@ -605,7 +605,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { loaded: true, }); let frontend_warp = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join("packages/frontend/.agents"), ) .unwrap(), @@ -614,7 +614,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { loaded: true, }); let frontend = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join("packages/frontend"), ) .unwrap(), @@ -623,7 +623,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { loaded: true, }); let packages = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo.join("packages"), ) .unwrap(), @@ -633,7 +633,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { }); let root = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(&repo).unwrap(), + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo).unwrap(), children: vec![root_warp, packages], ignored: false, loaded: true, @@ -644,7 +644,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { app.add_singleton_model(|_| DetectedRepositories::default()); let repo_handle = watcher.update(&mut app, |w, ctx| { w.add_directory( - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(), ctx, ) @@ -655,7 +655,7 @@ fn find_skill_directories_in_tree_finds_subdirectory_skills() { let model_handle = app.add_singleton_model(RepoMetadataModel::new); model_handle.update(&mut app, |model, ctx| { let key = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(); model.insert_test_state(key, state, ctx); }); @@ -683,14 +683,14 @@ fn find_skill_directories_in_tree_empty_repo() { vfs.mkdir("repo/src"); let src = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(&repo.join("src")) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo.join("src")) .unwrap(), children: vec![], ignored: false, loaded: true, }); let root = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(&repo).unwrap(), + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo).unwrap(), children: vec![src], ignored: false, loaded: true, @@ -701,7 +701,7 @@ fn find_skill_directories_in_tree_empty_repo() { app.add_singleton_model(|_| DetectedRepositories::default()); let repo_handle = watcher.update(&mut app, |w, ctx| { w.add_directory( - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(), ctx, ) @@ -712,7 +712,7 @@ fn find_skill_directories_in_tree_empty_repo() { let model_handle = app.add_singleton_model(RepoMetadataModel::new); model_handle.update(&mut app, |model, ctx| { let key = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(); model.insert_test_state(key, state, ctx); }); diff --git a/app/src/ai/skills/listed_skill.rs b/app/src/ai/skills/listed_skill.rs index eeba1eeb..749a6d0a 100644 --- a/app/src/ai/skills/listed_skill.rs +++ b/app/src/ai/skills/listed_skill.rs @@ -1,6 +1,6 @@ use ai::skills::{ParsedSkill, SkillProvider, SkillReference, SkillScope}; use serde::{Deserialize, Serialize}; -use warp_core::ui::icons::Icon; +use galaxy_core::ui::icons::Icon; #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)] pub struct SkillDescriptor { diff --git a/app/src/ai/skills/resolve_skill_spec.rs b/app/src/ai/skills/resolve_skill_spec.rs index b8b063df..1c529cf7 100644 --- a/app/src/ai/skills/resolve_skill_spec.rs +++ b/app/src/ai/skills/resolve_skill_spec.rs @@ -18,9 +18,9 @@ use ai::skills::{ }; use command::blocking::Command; use command::r#async::Command as AsyncCommand; -use warp_cli::skill::SkillSpec; -use warpui::AppContext; -use warpui::SingletonEntity as _; +use galaxy_cli::skill::SkillSpec; +use galaxyui::AppContext; +use galaxyui::SingletonEntity as _; use super::SkillManager; use crate::warp_managed_paths_watcher::warp_managed_skill_dirs; diff --git a/app/src/ai/skills/resolve_skill_spec_tests.rs b/app/src/ai/skills/resolve_skill_spec_tests.rs index ef881ade..2148937f 100644 --- a/app/src/ai/skills/resolve_skill_spec_tests.rs +++ b/app/src/ai/skills/resolve_skill_spec_tests.rs @@ -1,7 +1,7 @@ use std::{fs, path::Path}; use anyhow::{Context as _, Result}; -use warp_cli::skill::SkillSpec; +use galaxy_cli::skill::SkillSpec; use super::*; diff --git a/app/src/ai/skills/skill_manager.rs b/app/src/ai/skills/skill_manager.rs index 16bbc1f7..0f3ed431 100644 --- a/app/src/ai/skills/skill_manager.rs +++ b/app/src/ai/skills/skill_manager.rs @@ -16,10 +16,10 @@ use ai::skills::{ get_provider_for_path, parse_bundled_skill, provider_rank, ParsedSkill, SkillProvider, SkillReference, }; -use warp_core::{ +use galaxy_core::{ channel::ChannelState, features::FeatureFlag, report_error, safe_warn, ui::icons::Icon, }; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; /// Activation condition for a bundled skill. #[derive(Debug, Clone)] @@ -419,7 +419,7 @@ impl SkillManager { /// Load skill definitions bundled with Warp. async fn load_bundled_skills() -> HashMap { - let Some(resources_dir) = warp_core::paths::bundled_resources_dir() else { + let Some(resources_dir) = galaxy_core::paths::bundled_resources_dir() else { return HashMap::new(); }; let skills_dir = resources_dir.join("bundled").join("skills"); @@ -441,7 +441,7 @@ impl SkillManager { /// Load Figma-specific bundled skills from the `figma/` subdirectory. async fn load_figma_skills() -> HashMap { - let Some(resources_dir) = warp_core::paths::bundled_resources_dir() else { + let Some(resources_dir) = galaxy_core::paths::bundled_resources_dir() else { return HashMap::new(); }; let figma_skills_dir = resources_dir @@ -524,7 +524,7 @@ async fn read_bundled_skills(skills_dir: &Path) -> HashMap /// /// Supported variables: /// - `{{warp_server_url}}` - The server root URL (e.g., `https://api.warp.dev`) -/// - `{{warp_cli_binary_name}}` - The CLI binary name (e.g., `warp` or `warp-cli`) +/// - `{{galaxy_cli_binary_name}}` - The CLI binary name (e.g., `warp` or `warp-cli`) /// - `{{warp_url_scheme}}` - The URL scheme (e.g., `warp`, `warpdev`, `warppreview`) /// - `{{settings_schema_path}}` - Path to the bundled JSON settings schema /// - `{{settings_file_path}}` - Path to the user's settings TOML file @@ -535,7 +535,7 @@ fn build_bundled_skill_context() -> HashMap { ChannelState::server_root_url().into_owned(), ), ( - "warp_cli_binary_name".to_owned(), + "galaxy_cli_binary_name".to_owned(), ChannelState::channel().cli_command_name().to_owned(), ), ( @@ -551,7 +551,7 @@ fn build_bundled_skill_context() -> HashMap { .collect(); if let Some(schema_path) = - warp_core::paths::bundled_resources_dir().map(|dir| dir.join("settings_schema.json")) + galaxy_core::paths::bundled_resources_dir().map(|dir| dir.join("settings_schema.json")) { context.insert( "settings_schema_path".to_owned(), diff --git a/app/src/ai/skills/skill_manager_tests.rs b/app/src/ai/skills/skill_manager_tests.rs index 6ea71b7e..8a122bc5 100644 --- a/app/src/ai/skills/skill_manager_tests.rs +++ b/app/src/ai/skills/skill_manager_tests.rs @@ -5,8 +5,8 @@ use repo_metadata::{repositories::DetectedRepositories, DirectoryWatcher, RepoMe use std::collections::{HashMap, HashSet}; use std::fs; use tempfile::TempDir; -use warp_core::channel::ChannelState; -use warpui::App; +use galaxy_core::channel::ChannelState; +use galaxyui::App; use watcher::HomeDirectoryWatcher; // ============================================================================ @@ -79,7 +79,7 @@ fn get_skills_for_working_directory_scopes_subdirectory_skills() { // Register the repo root so get_root_for_path returns Some. let canonical_repo = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(); repo_handle.update(&mut app, |repos, _ctx| { repos.insert_test_repo_root(canonical_repo); @@ -201,7 +201,7 @@ fn get_skills_for_working_directory_name_collision_returns_both() { // Register the repo root so get_root_for_path returns Some. let canonical_repo = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo) .unwrap(); repo_handle.update(&mut app, |repos, _ctx| { repos.insert_test_repo_root(canonical_repo); @@ -296,7 +296,7 @@ fn cloud_environment_skills_always_included() { let skill_manager_handle = app.add_singleton_model(SkillManager::new); let canonical_repo_a = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_a) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_a) .unwrap(); repo_handle.update(&mut app, |repos, _ctx| { repos.insert_test_repo_root(canonical_repo_a); @@ -355,7 +355,7 @@ name: test-skill description: Test skill with variables --- -Run `{{warp_cli_binary_name}}` to connect to {{warp_server_url}}. +Run `{{galaxy_cli_binary_name}}` to connect to {{warp_server_url}}. "#, ) .unwrap(); @@ -388,7 +388,7 @@ name: test-skill description: Test skill with mixed variables --- -Use {{other_var}} and {{warp_cli_binary_name}} together. +Use {{other_var}} and {{galaxy_cli_binary_name}} together. "#, ) .unwrap(); @@ -440,7 +440,7 @@ fn test_build_bundled_skill_context() { // settings_schema_path is only present when bundled_resources_dir() returns Some. assert!(context.len() >= 4); assert!(context.contains_key("warp_server_url")); - assert!(context.contains_key("warp_cli_binary_name")); + assert!(context.contains_key("galaxy_cli_binary_name")); assert!(context.contains_key("warp_url_scheme")); assert!(context.contains_key("settings_file_path")); @@ -449,7 +449,7 @@ fn test_build_bundled_skill_context() { &ChannelState::server_root_url().to_string() ); assert_eq!( - context.get("warp_cli_binary_name").unwrap(), + context.get("galaxy_cli_binary_name").unwrap(), ChannelState::channel().cli_command_name() ); assert_eq!( diff --git a/app/src/ai/skills/skill_utils.rs b/app/src/ai/skills/skill_utils.rs index f4777721..461dc9f2 100644 --- a/app/src/ai/skills/skill_utils.rs +++ b/app/src/ai/skills/skill_utils.rs @@ -14,12 +14,12 @@ use std::collections::{HashMap, HashSet}; use std::hash::{Hash, Hasher}; use std::path::Path; use std::path::PathBuf; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::Icon; -use warpui::prelude::MouseStateHandle; -use warpui::EventContext; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::Icon; +use galaxyui::prelude::MouseStateHandle; +use galaxyui::EventContext; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::warp_managed_paths_watcher::warp_managed_skill_dirs; diff --git a/app/src/ai/skills/skill_utils_tests.rs b/app/src/ai/skills/skill_utils_tests.rs index ebcc01f9..da7cee26 100644 --- a/app/src/ai/skills/skill_utils_tests.rs +++ b/app/src/ai/skills/skill_utils_tests.rs @@ -14,7 +14,7 @@ fn test_skill_path_from_file_path_skill_md() { #[test] fn test_skill_path_from_file_path_warp_home_skill() { - let Some(warp_home_skills_dir) = warp_core::paths::warp_home_skills_dir() else { + let Some(warp_home_skills_dir) = galaxy_core::paths::warp_home_skills_dir() else { eprintln!("Skipping test: Warp home skills directory not available"); return; }; diff --git a/app/src/ai/skills/telemetry.rs b/app/src/ai/skills/telemetry.rs index 08878730..97e7901a 100644 --- a/app/src/ai/skills/telemetry.rs +++ b/app/src/ai/skills/telemetry.rs @@ -2,7 +2,7 @@ use ai::skills::{SkillProvider, SkillReference, SkillScope}; use serde::{Deserialize, Serialize}; use serde_json::json; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; use crate::features::FeatureFlag; @@ -94,7 +94,7 @@ impl TelemetryEvent for SkillTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -118,4 +118,4 @@ impl TelemetryEventDesc for SkillTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(SkillTelemetryEvent); +galaxy_core::register_telemetry_event!(SkillTelemetryEvent); diff --git a/app/src/ai_assistant/mod.rs b/app/src/ai_assistant/mod.rs index 2e9b0de2..e5725a96 100644 --- a/app/src/ai_assistant/mod.rs +++ b/app/src/ai_assistant/mod.rs @@ -1,4 +1,4 @@ -//! AI Assistant has since been renamed to "Warp AI" in the product. +//! AI Assistant has since been renamed to "Galaxy AI" in the product. use std::{collections::HashSet, sync::Arc}; use crate::{ @@ -11,8 +11,8 @@ use itertools::Itertools; use lazy_static::lazy_static; use pathfinder_color::ColorU; use serde::{Deserialize, Serialize}; -use warp_core::command::ExitCode; -use warp_graphql::{ +use galaxy_core::command::ExitCode; +use galaxy_graphql::{ ai::{ RequestLimitInfo as RequestLimitInfoGraphql, RequestLimitRefreshDuration as RequestLimitRefreshDurationGraphql, @@ -34,8 +34,8 @@ mod test_util; /// This is also roughly the limit at which the editor starts degrading. pub const PROMPT_CHARACTER_LIMIT: usize = 1000; -pub const AI_ASSISTANT_FEATURE_NAME: &str = "Warp AI"; -pub const ASK_AI_ASSISTANT_TEXT: &str = "Ask Warp AI"; +pub const AI_ASSISTANT_FEATURE_NAME: &str = "Galaxy AI"; +pub const ASK_AI_ASSISTANT_TEXT: &str = "Ask Galaxy AI"; pub const AI_ASSISTANT_SVG_PATH: &str = "bundled/svg/ai-assistant.svg"; diff --git a/app/src/ai_assistant/panel.rs b/app/src/ai_assistant/panel.rs index fb1c831b..967a0e78 100644 --- a/app/src/ai_assistant/panel.rs +++ b/app/src/ai_assistant/panel.rs @@ -4,24 +4,24 @@ use std::time::Duration; use chrono::Local; use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warp_editor::editor::NavigationKey; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{ resizable_state_handle, Align, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, DragBarSide, Empty, EventHandler, Fill, Flex, HyperlinkUrl, Icon, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentAnchor, PositionedElementAnchor, PositionedElementOffsetBounds, Radius, SavePosition, Shrinkable, Stack, Text, }; -use warpui::fonts::Properties; -use warpui::keymap::{EditableBinding, FixedBinding}; -use warpui::platform::Cursor; -use warpui::presenter::ChildView; -use warpui::r#async::Timer; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{elements::Element, AppContext, Entity, TypedActionView, View, ViewContext}; -use warpui::{FocusContext, ModelHandle, SingletonEntity, ViewHandle}; +use galaxyui::fonts::Properties; +use galaxyui::keymap::{EditableBinding, FixedBinding}; +use galaxyui::platform::Cursor; +use galaxyui::presenter::ChildView; +use galaxyui::r#async::Timer; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{elements::Element, AppContext, Entity, TypedActionView, View, ViewContext}; +use galaxyui::{FocusContext, ModelHandle, SingletonEntity, ViewHandle}; use crate::appearance::Appearance; use crate::editor::{ @@ -41,10 +41,10 @@ use crate::ui_components::buttons::icon_button; use crate::workspace::{ActiveSession, TAB_BAR_HEIGHT}; use crate::util::bindings::{cmd_or_ctrl_shift, CustomAction}; -use warpui::elements::MouseStateHandle; -use warpui::elements::ParentElement; -use warpui::elements::Resizable; -use warpui::elements::ResizableStateHandle; +use galaxyui::elements::MouseStateHandle; +use galaxyui::elements::ParentElement; +use galaxyui::elements::Resizable; +use galaxyui::elements::ResizableStateHandle; use super::execution_context::WarpAiExecutionContext; use super::requests::{Event as RequestsEvent, RequestStatus, Requests}; @@ -146,7 +146,7 @@ pub enum AIAssistantAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::custom( CustomAction::CloseCurrentSession, @@ -165,14 +165,14 @@ pub fn init(app: &mut AppContext) { .with_key_binding(cmd_or_ctrl_shift("l")), EditableBinding::new( "ai_assistant_panel:reset_context", - "Restart Warp AI", + "Restart Galaxy AI", AIAssistantAction::ResetContext, ) .with_context_predicate(id!("AIAssistantPanel")) .with_key_binding("ctrl-l"), EditableBinding::new( "ai_assistant_panel:reset_context", - "Restart Warp AI", + "Restart Galaxy AI", AIAssistantAction::ResetContext, ) .with_context_predicate(id!("AIAssistantPanel")) @@ -725,7 +725,7 @@ impl AIAssistantPanelView { .with_style(UiComponentStyles { font_family_id: Some(appearance.ui_font_family()), font_size: Some(TITLE_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Semibold), + font_weight: Some(galaxyui::fonts::Weight::Semibold), font_color: Some(appearance.theme().active_ui_text_color().into()), ..Default::default() }) @@ -851,7 +851,7 @@ impl AIAssistantPanelView { BODY_FONT_SIZE, ) .with_style(Properties { - weight: warpui::fonts::Weight::Bold, + weight: galaxyui::fonts::Weight::Bold, ..Default::default() }) .with_color(appearance.theme().ui_error_color()) @@ -1143,7 +1143,7 @@ impl View for AIAssistantPanelView { .finish(), OffsetPositioning::offset_from_parent( vec2f(0., HEADER_HEIGHT), - warpui::elements::ParentOffsetBounds::Unbounded, + galaxyui::elements::ParentOffsetBounds::Unbounded, ParentAnchor::TopLeft, ChildAnchor::BottomLeft, ), diff --git a/app/src/ai_assistant/requests.rs b/app/src/ai_assistant/requests.rs index bef58fc7..0c2dda34 100644 --- a/app/src/ai_assistant/requests.rs +++ b/app/src/ai_assistant/requests.rs @@ -5,8 +5,8 @@ use std::sync::Arc; use chrono::{OutOfRangeError, Utc}; use futures::stream::AbortHandle; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::{ ai::{RequestLimitInfo, RequestUsageInfo}, diff --git a/app/src/ai_assistant/transcript.rs b/app/src/ai_assistant/transcript.rs index e75a91c3..bbed31fd 100644 --- a/app/src/ai_assistant/transcript.rs +++ b/app/src/ai_assistant/transcript.rs @@ -2,11 +2,11 @@ use markdown_parser::markdown_parser::RUNNABLE_BLOCK_MARKDOWN_LANG; use markdown_parser::CodeBlockText; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::builder::AnimatedButtonOptions; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{DispatchEventResult, Stack}; -use warpui::units::Pixels; -use warpui::{ +use galaxy_core::ui::builder::AnimatedButtonOptions; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{DispatchEventResult, Stack}; +use galaxyui::units::Pixels; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, EventHandler, Fill, Flex, @@ -21,7 +21,7 @@ use warpui::{ AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, WeakViewHandle, }; -use warpui::{BlurContext, FocusContext}; +use galaxyui::{BlurContext, FocusContext}; use crate::workspaces::user_workspaces::UserWorkspaces; use crate::{ diff --git a/app/src/ai_assistant/transcript_tests.rs b/app/src/ai_assistant/transcript_tests.rs index 2a485f25..57b6a901 100644 --- a/app/src/ai_assistant/transcript_tests.rs +++ b/app/src/ai_assistant/transcript_tests.rs @@ -3,7 +3,7 @@ use crate::{ workspaces::user_workspaces::UserWorkspaces, }; -use warpui::{platform::WindowStyle, App}; +use galaxyui::{platform::WindowStyle, App}; use crate::ai_assistant::{ requests::Requests, diff --git a/app/src/ai_assistant/utils.rs b/app/src/ai_assistant/utils.rs index 6a012284..56943bd0 100644 --- a/app/src/ai_assistant/utils.rs +++ b/app/src/ai_assistant/utils.rs @@ -1,7 +1,7 @@ /// Common functionality used across different AI Assistant components. use markdown_parser::{parse_markdown, CodeBlockText, FormattedText, FormattedTextLine}; use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, HighlightedHyperlink, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, diff --git a/app/src/antivirus/mod.rs b/app/src/antivirus/mod.rs index 17cbd51c..5819532f 100644 --- a/app/src/antivirus/mod.rs +++ b/app/src/antivirus/mod.rs @@ -5,7 +5,7 @@ mod telemetry; #[cfg(windows)] mod windows; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// Singleton model that reports the currently running antivirus software. #[derive(Debug, Clone)] diff --git a/app/src/antivirus/telemetry.rs b/app/src/antivirus/telemetry.rs index 14cb4ca6..d66a3e4f 100644 --- a/app/src/antivirus/telemetry.rs +++ b/app/src/antivirus/telemetry.rs @@ -1,7 +1,7 @@ use serde_json::{json, Value}; use strum_macros::EnumDiscriminants; use strum_macros::EnumIter; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; #[derive(Debug, EnumDiscriminants)] #[strum_discriminants(derive(EnumIter))] @@ -38,7 +38,7 @@ impl TelemetryEvent for AntivirusInfoTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -66,4 +66,4 @@ impl TelemetryEventDesc for AntivirusInfoTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(AntivirusInfoTelemetryEvent); +galaxy_core::register_telemetry_event!(AntivirusInfoTelemetryEvent); diff --git a/app/src/antivirus/windows.rs b/app/src/antivirus/windows.rs index 0927530f..c353b40e 100644 --- a/app/src/antivirus/windows.rs +++ b/app/src/antivirus/windows.rs @@ -1,7 +1,7 @@ use crate::antivirus::telemetry::AntivirusInfoTelemetryEvent; use crate::antivirus::{AntivirusInfo, AntivirusInfoEvent}; -use warp_core::send_telemetry_from_ctx; -use warpui::ModelContext; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::ModelContext; use windows::Win32::System::Com::{ CoCreateInstance, CoInitializeEx, CoUninitialize, CLSCTX_ALL, COINIT_APARTMENTTHREADED, }; diff --git a/app/src/app_menus.rs b/app/src/app_menus.rs index da618eaa..8d05e897 100644 --- a/app/src/app_menus.rs +++ b/app/src/app_menus.rs @@ -26,15 +26,15 @@ use enclose::enclose; use itertools::Itertools; use settings::manager::SettingsManager; use settings::Setting as _; -use warp_core::context_flag::ContextFlag; -use warp_util::path::user_friendly_path; -use warpui::actions::StandardAction; -use warpui::keymap::{Keystroke, Trigger}; -use warpui::platform::menu::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_util::path::user_friendly_path; +use galaxyui::actions::StandardAction; +use galaxyui::keymap::{Keystroke, Trigger}; +use galaxyui::platform::menu::{ CustomMenuItem, Menu, MenuBar, MenuItem, MenuItemProperties, MenuItemPropertyChanges, }; -use warpui::windowing::WindowManager; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::windowing::WindowManager; +use galaxyui::{AppContext, SingletonEntity}; type CheckmarkStatusGetter = dyn 'static + Fn(&mut AppContext) -> bool; @@ -243,7 +243,7 @@ fn make_new_app_menu(ctx: &AppContext) -> Menu { None, ))); menu_items.push(MenuItem::Standard(StandardAction::Quit)); - Menu::new("Warp", menu_items) + Menu::new("Galaxy AI", menu_items) } fn make_new_file_menu(ctx: &AppContext) -> Menu { diff --git a/app/src/app_services/linux/mod.rs b/app/src/app_services/linux/mod.rs index 9b72c61a..a8617871 100644 --- a/app/src/app_services/linux/mod.rs +++ b/app/src/app_services/linux/mod.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use futures_util::FutureExt as _; use itertools::Itertools as _; -use warpui::{r#async::executor::BackgroundTask, AppContext, SingletonEntity}; +use galaxyui::{r#async::executor::BackgroundTask, AppContext, SingletonEntity}; use zbus::{interface, proxy, zvariant}; use crate::channel::ChannelState; @@ -26,13 +26,13 @@ pub fn teardown(ctx: &mut AppContext) { /// Returns Ok if an existing instance exists and was reachable. #[cfg(feature = "release_bundle")] pub fn pass_startup_args_to_existing_instance( - args: &warp_cli::AppArgs, + args: &galaxy_cli::AppArgs, ) -> Result<(), StartupArgsForwardingError> { if args.finish_update { return Err(StartupArgsForwardingError::IgnoredAfterAutoUpdate); } - warpui::r#async::block_on(async { + galaxyui::r#async::block_on(async { let conn = zbus::Connection::session().await?; let proxy = ExistingApplicationProxy::builder(&conn) .destination(DBusServiceHost::well_known_name())? @@ -181,7 +181,7 @@ struct DBusServiceHost { } impl DBusServiceHost { - fn new(ctx: &mut warpui::ModelContext) -> Self { + fn new(ctx: &mut galaxyui::ModelContext) -> Self { let (tx, rx) = async_channel::unbounded(); // Spawn a background task for the D-Bus server. @@ -232,7 +232,7 @@ impl DBusServiceHost { if let Some(server_task) = self.server_task.take() { server_task.abort(); // Wait until we've torn down the dbus service. - report_if_error!(warpui::r#async::block_on(server_task)); + report_if_error!(galaxyui::r#async::block_on(server_task)); } } @@ -248,7 +248,7 @@ impl DBusServiceHost { } } -impl warpui::Entity for DBusServiceHost { +impl galaxyui::Entity for DBusServiceHost { type Event = (); } diff --git a/app/src/app_services/mac.rs b/app/src/app_services/mac.rs index f20e9245..2d435023 100644 --- a/app/src/app_services/mac.rs +++ b/app/src/app_services/mac.rs @@ -1,6 +1,6 @@ #[allow(deprecated)] use cocoa::base::id; -use warpui::platform::mac::make_nsstring; +use galaxyui::platform::mac::make_nsstring; use crate::channel::ChannelState; diff --git a/app/src/app_services/mod.rs b/app/src/app_services/mod.rs index cb67e174..dd4164f6 100644 --- a/app/src/app_services/mod.rs +++ b/app/src/app_services/mod.rs @@ -12,7 +12,7 @@ mod mac; #[cfg(windows)] pub mod windows; -use warpui::AppContext; +use galaxyui::AppContext; pub fn init(_ctx: &mut AppContext) { log::info!("Initializing app services"); diff --git a/app/src/app_services/windows/mod.rs b/app/src/app_services/windows/mod.rs index ca191711..83e653bf 100644 --- a/app/src/app_services/windows/mod.rs +++ b/app/src/app_services/windows/mod.rs @@ -1,10 +1,10 @@ use registry::register_uri_handler; -use warpui::AppContext; +use galaxyui::AppContext; #[cfg(feature = "release_bundle")] use { service_impl::forward_uri_to_sole_running_instance, single_instance_manager::SingleInstanceManager, thiserror::Error, url::Url, - warp_core::channel::ChannelState, + galaxy_core::channel::ChannelState, }; mod registry; @@ -30,7 +30,7 @@ pub enum StartupArgsForwardingError { #[cfg(feature = "release_bundle")] pub fn pass_startup_args_to_existing_instance( - args: &warp_cli::AppArgs, + args: &galaxy_cli::AppArgs, ) -> Result<(), StartupArgsForwardingError> { if args.finish_update { return Err(StartupArgsForwardingError::IgnoredAfterAutoUpdate); @@ -39,7 +39,7 @@ pub fn pass_startup_args_to_existing_instance( return Err(StartupArgsForwardingError::NoExistingInstance); } - warpui::r#async::block_on(async { + galaxyui::r#async::block_on(async { if args.urls.is_empty() { // If there are no URLs on the command line, send one to open a new // window using the same current working directory as this process. diff --git a/app/src/app_services/windows/registry.rs b/app/src/app_services/windows/registry.rs index a4e02ea0..a39dee16 100644 --- a/app/src/app_services/windows/registry.rs +++ b/app/src/app_services/windows/registry.rs @@ -1,6 +1,6 @@ use std::ffi::OsString; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use windows_registry::{CURRENT_USER, HSTRING}; pub(super) fn register_uri_handler() { diff --git a/app/src/app_services/windows/service_impl.rs b/app/src/app_services/windows/service_impl.rs index be681686..a43e6ca1 100644 --- a/app/src/app_services/windows/service_impl.rs +++ b/app/src/app_services/windows/service_impl.rs @@ -4,7 +4,7 @@ use async_channel::Sender; use async_trait::async_trait; use ipc::{Client, ConnectionAddress}; use url::Url; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use super::single_instance_manager::uri_named_pipe_name; diff --git a/app/src/app_services/windows/single_instance_manager.rs b/app/src/app_services/windows/single_instance_manager.rs index 63b9a42c..451555b5 100644 --- a/app/src/app_services/windows/single_instance_manager.rs +++ b/app/src/app_services/windows/single_instance_manager.rs @@ -2,8 +2,8 @@ use std::sync::LazyLock; use ipc::ServerBuilder; use parking_lot::Mutex; -use warp_core::channel::ChannelState; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use windows::core::Error; use windows::Win32::Foundation::{CloseHandle, GetLastError, ERROR_ALREADY_EXISTS, HANDLE}; diff --git a/app/src/app_state.rs b/app/src/app_state.rs index f0e95151..b94f73aa 100644 --- a/app/src/app_state.rs +++ b/app/src/app_state.rs @@ -3,9 +3,9 @@ use serde::{Deserialize, Serialize}; use std::collections::HashMap; use std::path::PathBuf; use std::sync::Arc; -use warpui::platform::FullscreenState; +use galaxyui::platform::FullscreenState; -use warpui::AppContext; +use galaxyui::AppContext; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent_conversations_model::AgentManagementFilters; diff --git a/app/src/appearance.rs b/app/src/appearance.rs index 3eefed13..01eb81dd 100644 --- a/app/src/appearance.rs +++ b/app/src/appearance.rs @@ -1,5 +1,5 @@ use settings::Setting as _; -use warpui::{ +use galaxyui::{ fonts::FamilyId, AddSingletonModel, AppContext, AssetProvider, Entity, ModelContext, SingletonEntity, }; @@ -12,8 +12,8 @@ mod macos_app_icon { base::{id, nil}, }; pub use objc::{class, msg_send, sel, sel_impl}; - pub use warp_core::channel::{Channel, ChannelState}; - pub use warpui::platform::mac::{make_nsstring, AutoreleasePoolGuard}; + pub use galaxy_core::channel::{Channel, ChannelState}; + pub use galaxyui::platform::mac::{make_nsstring, AutoreleasePoolGuard}; pub use crate::settings::app_icon::{AppIcon, AppIconSettings, AppIconSettingsChangedEvent}; } @@ -31,7 +31,7 @@ use crate::{ use anyhow::anyhow; -pub use warp_core::ui::appearance::{Appearance, AppearanceEvent}; +pub use galaxy_core::ui::appearance::{Appearance, AppearanceEvent}; /// Manages the state of the app-wide Appearance settings, it is responsible /// for 1) listening to settings changes and update the underlying Appearance @@ -113,6 +113,22 @@ impl AppearanceManager { }); } } + FontSettingsChangedEvent::UIFontName { .. } => { + let ui_font_name = FontSettings::as_ref(ctx).ui_font_name.value().clone(); + let ui_font_family = load_default_ui_font_family(ctx) + .expect("unable to load default ui font family"); + let ui_font_family_from_settings = if ui_font_name.is_empty() { + None + } else { + get_or_load_font_family(&ui_font_name, ctx) + }; + Appearance::handle(ctx).update(ctx, |appearance, ctx| { + appearance.set_ui_font_family( + ui_font_family_from_settings.unwrap_or(ui_font_family), + ctx, + ) + }); + } FontSettingsChangedEvent::MatchAIFontToTerminalFont { .. } => { let settings = FontSettings::as_ref(ctx); let match_ai_font_to_terminal_font = @@ -275,7 +291,7 @@ impl Entity for AppearanceManager { impl SingletonEntity for AppearanceManager {} fn load_default_monospace_font_family(ctx: &mut AppContext) -> anyhow::Result { - warpui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { + galaxyui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { let default_monospace_font_family = font_cache.load_family_from_bytes( "Hack", vec![ @@ -302,7 +318,7 @@ fn load_default_monospace_font_family(ctx: &mut AppContext) -> anyhow::Result anyhow::Result { - warpui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { + galaxyui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { let roboto = font_cache.load_family_from_bytes( "Roboto", vec![ @@ -339,7 +355,7 @@ fn load_default_ui_font_family(ctx: &mut AppContext) -> anyhow::Result } fn load_password_font_family(ctx: &mut AppContext) -> anyhow::Result { - warpui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { + galaxyui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { font_cache.load_family_from_bytes( "PasswordCircle", vec![ASSETS.get("bundled/fonts/password.ttf")?.to_vec()], @@ -359,10 +375,10 @@ fn get_or_load_font_family(_font_name: &str, _ctx: &mut AppContext) -> Option Option { - warpui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { + galaxyui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { match font_cache.get_or_load_system_font(font_name) { Ok(family) => { - let font_id = font_cache.select_font(family, warpui::fonts::Properties::default()); + let font_id = font_cache.select_font(family, galaxyui::fonts::Properties::default()); // Validate that the font contains the `m` glyph since this is assumed in // various parts of the code. We already do this when surfacing fonts in the font @@ -401,6 +417,12 @@ fn build_appearance(ctx: &mut AppContext) -> Appearance { let ui_font_family = load_default_ui_font_family(ctx).expect("unable to load default ui font family"); + let ui_font_name = FontSettings::as_ref(ctx).ui_font_name.value().clone(); + let ui_font_family_from_settings = if ui_font_name.is_empty() { + None + } else { + get_or_load_font_family(&ui_font_name, ctx) + }; let am_font_family_from_settings = get_or_load_font_family(&am_font_name, ctx); @@ -423,7 +445,7 @@ fn build_appearance(ctx: &mut AppContext) -> Appearance { monospace_font_family_from_settings.unwrap_or(default_monospace_font_family), monospace_font_size, monospace_font_weight, - ui_font_family, + ui_font_family_from_settings.unwrap_or(ui_font_family), line_height_ratio, am_font_family_from_settings.unwrap_or(default_monospace_font_family), password_font_family, diff --git a/app/src/auth/anonymous_id.rs b/app/src/auth/anonymous_id.rs index b9ccbefc..f3888cff 100644 --- a/app/src/auth/anonymous_id.rs +++ b/app/src/auth/anonymous_id.rs @@ -1,5 +1,5 @@ use uuid::Uuid; -use warp_core::user_preferences::GetUserPreferences; +use galaxy_core::user_preferences::GetUserPreferences; /// Key used to persist the anonymous id to user defaults. We use "ExperimentId" as the key /// since we use the persisted id to determine experiment groups, and we want to avoid diff --git a/app/src/auth/auth_manager.rs b/app/src/auth/auth_manager.rs index 44aade03..de358e08 100644 --- a/app/src/auth/auth_manager.rs +++ b/app/src/auth/auth_manager.rs @@ -7,12 +7,12 @@ use std::time::Duration; use anyhow::{anyhow, Result}; use settings::Setting as _; use uuid::Uuid; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; -use warp_graphql::mutations::create_anonymous_user::{ +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; +use galaxy_graphql::mutations::create_anonymous_user::{ AnonymousUserType, CreateAnonymousUserResult, }; -use warpui::{clipboard::ClipboardContent, Entity, ModelContext, SingletonEntity, UpdateModel}; +use galaxyui::{clipboard::ClipboardContent, Entity, ModelContext, SingletonEntity, UpdateModel}; use super::auth_state::{AuthState, PersistAction}; use super::auth_view_modal::{AuthRedirectPayload, AuthViewVariant}; @@ -453,18 +453,18 @@ impl AuthManager { // TODO(alokedesai): Investigate a more robust way of handling events // that don't get flushed to Rudderstack outside of this event specifically. async move { - warpui::telemetry::record_identify_user_event( + galaxyui::telemetry::record_identify_user_event( user_id.as_string(), anonymous_id.clone(), - warpui::time::get_current_time(), + galaxyui::time::get_current_time(), ); - warpui::telemetry::record_event( + galaxyui::telemetry::record_event( Some(user_id.as_string()), anonymous_id, TelemetryEvent::Login.name().into(), TelemetryEvent::Login.payload(), TelemetryEvent::Login.contains_ugc(), - warpui::time::get_current_time(), + galaxyui::time::get_current_time(), ); // Note that this snapshot might get overwritten to disabled after the server fetch. @@ -483,7 +483,7 @@ impl AuthManager { // Once the user is authenticated, attempt to report the sandbox that Warp is running in, if any. ctx.spawn( - async { warp_isolation_platform::detect() }, + async { galaxy_isolation_platform::detect() }, |_, platform, ctx| { if let Some(platform) = platform { send_telemetry_from_ctx!( diff --git a/app/src/auth/auth_manager/user_persistence.rs b/app/src/auth/auth_manager/user_persistence.rs index ad6204a7..074136e1 100644 --- a/app/src/auth/auth_manager/user_persistence.rs +++ b/app/src/auth/auth_manager/user_persistence.rs @@ -1,7 +1,7 @@ use serde::{Deserialize, Serialize}; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::AppContext; -use warpui_extras::secure_storage::{self, AppContextExt}; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::AppContext; +use galaxyui_extras::secure_storage::{self, AppContextExt}; use crate::auth::{ user::{AnonymousUserType, FirebaseAuthTokens, PersonalObjectLimits, UserMetadata}, diff --git a/app/src/auth/auth_manager/user_persistence_test.rs b/app/src/auth/auth_manager/user_persistence_test.rs index 67211c37..ec4fafbb 100644 --- a/app/src/auth/auth_manager/user_persistence_test.rs +++ b/app/src/auth/auth_manager/user_persistence_test.rs @@ -81,7 +81,7 @@ fn test_serialize_persisted_user() { } /// Test serializing and deserializing persisted user data. -/// See warpui_extras::secure_storage::linux_test.rs for Linux-specific tests. +/// See galaxyui_extras::secure_storage::linux_test.rs for Linux-specific tests. #[cfg(target_os = "windows")] #[cfg_attr(windows, ignore = "passes locally but not in CI on Windows")] #[test] @@ -93,9 +93,9 @@ fn test_windows_user_persistence() { }; use crate::ServerApiProvider; use chrono::DateTime; - use warp_core::channel::ChannelState; - use warpui::{App, SingletonEntity}; - use warpui_extras::secure_storage; + use galaxy_core::channel::ChannelState; + use galaxyui::{App, SingletonEntity}; + use galaxyui_extras::secure_storage; App::test((), |mut app| async move { app.add_singleton_model(|_ctx| ServerApiProvider::new_for_test()); @@ -104,7 +104,7 @@ fn test_windows_user_persistence() { app.add_singleton_model(|ctx| { secure_storage::register_with_dir( ChannelState::data_domain().as_str(), - warp_core::paths::state_dir(), + galaxy_core::paths::state_dir(), ctx, ); AuthManager::new_for_test(ctx) diff --git a/app/src/auth/auth_manager_test.rs b/app/src/auth/auth_manager_test.rs index 5069fea1..90464ff8 100644 --- a/app/src/auth/auth_manager_test.rs +++ b/app/src/auth/auth_manager_test.rs @@ -10,7 +10,7 @@ use crate::auth::{ }; use crate::server::server_api::auth::UserAuthenticationError; use crate::ServerApiProvider; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; fn initialize_app(app: &mut App) { app.add_singleton_model(|_ctx| ServerApiProvider::new_for_test()); @@ -181,7 +181,7 @@ fn test_log_out_clears_pending_auth_state() { // routes to `PersistedUser::remove_from_secure_storage`. That requires // a `SecureStorage` singleton, so register a no-op one for this test. app.update(|ctx| { - warpui_extras::secure_storage::register_noop("warp_test", ctx); + galaxyui_extras::secure_storage::register_noop("warp_test", ctx); }); AuthManager::handle(&app).update(&mut app, |auth_manager, ctx| { diff --git a/app/src/auth/auth_override_warning_body.rs b/app/src/auth/auth_override_warning_body.rs index a14f285a..35e54acc 100644 --- a/app/src/auth/auth_override_warning_body.rs +++ b/app/src/auth/auth_override_warning_body.rs @@ -1,21 +1,21 @@ use crate::appearance::Appearance; use crate::util::color::lighten; -use warp_core::ui::builder::UiBuilder; -use warp_core::ui::color::darken; -use warpui::keymap::FixedBinding; +use galaxy_core::ui::builder::UiBuilder; +use galaxy_core::ui::color::darken; +use galaxyui::keymap::FixedBinding; use crate::modal::MODAL_CORNER_RADIUS; -use warp_core::ui::color::blend::Blend; -use warpui::accessibility::{AccessibilityContent, WarpA11yRole}; -use warpui::color::ColorU; -use warpui::elements::{ +use galaxy_core::ui::color::blend::Blend; +use galaxyui::accessibility::{AccessibilityContent, WarpA11yRole}; +use galaxyui::color::ColorU; +use galaxyui::elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Fill, Flex, Icon, MouseStateHandle, ParentElement, Radius, Shrinkable, }; -use warpui::fonts::Weight; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ AppContext, Element, Entity, FocusContext, SingletonEntity, TypedActionView, View, ViewContext, }; @@ -64,7 +64,7 @@ pub struct AuthOverrideWarningBody { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "enter", diff --git a/app/src/auth/auth_override_warning_modal.rs b/app/src/auth/auth_override_warning_modal.rs index e6b38060..c45480d5 100644 --- a/app/src/auth/auth_override_warning_modal.rs +++ b/app/src/auth/auth_override_warning_modal.rs @@ -1,20 +1,20 @@ use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warpui::elements::Container; -use warpui::elements::Fill; -use warpui::FocusContext; -use warpui::SingletonEntity; -use warpui::TypedActionView; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::Container; +use galaxyui::elements::Fill; +use galaxyui::FocusContext; +use galaxyui::SingletonEntity; +use galaxyui::TypedActionView; use crate::auth::auth_override_warning_body::AuthOverrideWarningBody; use crate::auth::auth_view_modal::AuthRedirectPayload; use crate::modal::Modal; use crate::root_view::unthemed_window_border; -use warpui::elements::ChildView; -use warpui::ui_components::components::{Coords, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, View, ViewContext, ViewHandle}; use super::auth_manager::AuthManager; use super::auth_manager::AuthManagerEvent; diff --git a/app/src/auth/auth_state.rs b/app/src/auth/auth_state.rs index 146b6c29..c411a863 100644 --- a/app/src/auth/auth_state.rs +++ b/app/src/auth/auth_state.rs @@ -7,9 +7,9 @@ use anyhow::anyhow; use chrono::{DateTime, Duration, Utc}; use parking_lot::RwLock; use uuid::Uuid; -use warp_core::channel::{Channel, ChannelState}; -use warp_graphql::object_permissions::OwnerType; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxy_graphql::object_permissions::OwnerType; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::{ cloud_object::{GenericStringObjectFormat, JsonObjectType, ObjectType}, @@ -466,8 +466,8 @@ impl AuthState { } } -// Adapter for the [`warp_managed_secrets`] crate, which needs to access the current user. -impl warp_managed_secrets::ActorProvider for AuthState { +// Adapter for the [`galaxy_managed_secrets`] crate, which needs to access the current user. +impl galaxy_managed_secrets::ActorProvider for AuthState { fn actor_uid(&self) -> Option { self.user_id().map(|uid| uid.as_string()) } diff --git a/app/src/auth/auth_view_body.rs b/app/src/auth/auth_view_body.rs index a39942b5..01b06edc 100644 --- a/app/src/auth/auth_view_body.rs +++ b/app/src/auth/auth_view_body.rs @@ -14,11 +14,11 @@ use crate::{ use anyhow::anyhow; use lazy_static::lazy_static; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{appearance::DEFAULT_COMMAND_PALETTE_FONT_SIZE, builder::UiBuilder}, }; -use warpui::{ +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, clipboard::ClipboardContent, color::ColorU, @@ -65,7 +65,7 @@ lazy_static! { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "enter", diff --git a/app/src/auth/auth_view_modal.rs b/app/src/auth/auth_view_modal.rs index 3a2ced99..9c0b04ce 100644 --- a/app/src/auth/auth_view_modal.rs +++ b/app/src/auth/auth_view_modal.rs @@ -7,30 +7,30 @@ use anyhow::{anyhow, Result}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use url::Url; -use warp_core::errors::ErrorExt; -use warp_core::features::FeatureFlag; -use warpui::elements::ChildAnchor; -use warpui::elements::Container; -use warpui::elements::Fill; -use warpui::elements::HighlightedHyperlink; -use warpui::elements::MouseStateHandle; -use warpui::elements::OffsetPositioning; -use warpui::elements::ParentAnchor; -use warpui::elements::ParentElement; -use warpui::elements::ParentOffsetBounds; -use warpui::elements::Stack; -use warpui::keymap::FixedBinding; -use warpui::AppContext; -use warpui::FocusContext; -use warpui::SingletonEntity; -use warpui::TypedActionView; +use galaxy_core::errors::ErrorExt; +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::ChildAnchor; +use galaxyui::elements::Container; +use galaxyui::elements::Fill; +use galaxyui::elements::HighlightedHyperlink; +use galaxyui::elements::MouseStateHandle; +use galaxyui::elements::OffsetPositioning; +use galaxyui::elements::ParentAnchor; +use galaxyui::elements::ParentElement; +use galaxyui::elements::ParentOffsetBounds; +use galaxyui::elements::Stack; +use galaxyui::keymap::FixedBinding; +use galaxyui::AppContext; +use galaxyui::FocusContext; +use galaxyui::SingletonEntity; +use galaxyui::TypedActionView; use crate::auth::auth_view_body::AuthViewBody; use crate::modal::Modal; use std::collections::HashMap; -use warpui::elements::ChildView; -use warpui::ui_components::components::{Coords, UiComponentStyles}; -use warpui::{Element, Entity, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponentStyles}; +use galaxyui::{Element, Entity, View, ViewContext, ViewHandle}; use super::auth_manager::AuthManager; use super::auth_manager::AuthManagerEvent; @@ -39,10 +39,10 @@ use super::auth_view_body::AuthViewBodyEvent; use super::credentials::RefreshToken; use super::login_failure_notification::{self, LoginFailureReason}; use super::UserUid; -use warpui::actions::StandardAction; +use galaxyui::actions::StandardAction; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ // Bindings for paste require the StandardAction and CustomAction binding to work on all platforms. diff --git a/app/src/auth/auth_view_shared_helpers.rs b/app/src/auth/auth_view_shared_helpers.rs index 7ce58ea0..bf648d96 100644 --- a/app/src/auth/auth_view_shared_helpers.rs +++ b/app/src/auth/auth_view_shared_helpers.rs @@ -1,13 +1,13 @@ use pathfinder_color::ColorU; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; -use warp_core::ui::{ +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::{ appearance::Appearance, builder::UiBuilder, color::{darken, lighten}, theme::ColorScheme, }; -use warpui::{ +use galaxyui::{ assets::asset_cache::AssetSource, elements::{ Border, CacheOption, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Fill, diff --git a/app/src/auth/credentials.rs b/app/src/auth/credentials.rs index 7f16dd87..655ad91f 100644 --- a/app/src/auth/credentials.rs +++ b/app/src/auth/credentials.rs @@ -8,7 +8,7 @@ //! When using Firebase, this is an OAuth2 refresh token. //! * [`AuthToken`], which is a short-lived token that's included in all other server requests. //! When using Firebase, this is an OAuth2 access token. -use warp_graphql::object_permissions::OwnerType; +use galaxy_graphql::object_permissions::OwnerType; use super::user::FirebaseAuthTokens; diff --git a/app/src/auth/login_error_modal.rs b/app/src/auth/login_error_modal.rs index 973acc47..0b4c5734 100644 --- a/app/src/auth/login_error_modal.rs +++ b/app/src/auth/login_error_modal.rs @@ -1,7 +1,7 @@ use std::borrow::Cow; use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, Flex, ParentElement, Shrinkable, }, diff --git a/app/src/auth/login_failure_notification.rs b/app/src/auth/login_failure_notification.rs index 0fad7828..4d4546d6 100644 --- a/app/src/auth/login_failure_notification.rs +++ b/app/src/auth/login_failure_notification.rs @@ -1,5 +1,5 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warpui::{ +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, Icon, MouseStateHandle, ParentElement, Shrinkable, @@ -151,7 +151,7 @@ pub fn render( } mod styles { - use warpui::elements::{CornerRadius, Radius}; + use galaxyui::elements::{CornerRadius, Radius}; pub const NOTIFICATION_CONTAINER_PADDING: f32 = 8.; pub const NOTIFICATION_CONTAINER_CORNER_RADIUS: CornerRadius = diff --git a/app/src/auth/login_slide.rs b/app/src/auth/login_slide.rs index 8528c6bd..df47d138 100644 --- a/app/src/auth/login_slide.rs +++ b/app/src/auth/login_slide.rs @@ -16,21 +16,21 @@ use onboarding::slides::{layout, slide_content}; use onboarding::{OnboardingIntention, AI_FEATURES, WARP_DRIVE_FEATURES}; use pathfinder_color::ColorU; use ui_components::{button, Component as _, Options as _}; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::Icon; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::Icon; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{ Align, Border, CacheOption, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Fill, Flex, FormattedTextElement, HighlightedHyperlink, Image, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentElement, Radius, Shrinkable, Stack, }; -use warpui::fonts::Weight; -use warpui::keymap::{FixedBinding, Keystroke}; -use warpui::text_layout::TextAlignment; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::keymap::{FixedBinding, Keystroke}; +use galaxyui::text_layout::TextAlignment; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ actions::StandardAction, AppContext, Element, Entity, FocusContext, SingletonEntity, TypedActionView, UpdateModel, View, ViewContext, ViewHandle, }; @@ -38,7 +38,7 @@ use warpui::{ use std::cell::Cell; use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ChildAnchor, ParentAnchor, ParentOffsetBounds}; +use galaxyui::elements::{ChildAnchor, ParentAnchor, ParentOffsetBounds}; const TOS_URL: &str = "https://www.warp.dev/terms-of-service"; @@ -47,7 +47,7 @@ const TOS_URL: &str = "https://www.warp.dev/terms-of-service"; // --------------------------------------------------------------------------- pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -758,7 +758,7 @@ impl LoginSlideView { } else { // First call (narrow layout fallback): placeholder. editor_rendered.set(true); - Container::new(warpui::elements::Empty::new().finish()) + Container::new(galaxyui::elements::Empty::new().finish()) .with_padding_top(12.) .with_padding_bottom(12.) .with_padding_left(16.) @@ -955,7 +955,7 @@ impl LoginSlideView { AI_FEATURES }; for &item in feature_items { - let icon_el = ConstrainedBox::new(Icon::X.to_warpui_icon(feature_x_fill).finish()) + let icon_el = ConstrainedBox::new(Icon::X.to_galaxyui_icon(feature_x_fill).finish()) .with_width(16.) .with_height(16.) .finish(); @@ -1109,13 +1109,13 @@ impl View for LoginSlideView { ); let overlay_opacity = (100u8).saturating_sub(img.opacity); stack.add_child( - warpui::elements::Rect::new() + galaxyui::elements::Rect::new() .with_background(theme.background().with_opacity(overlay_opacity)) .finish(), ); } else { stack.add_child( - Container::new(warpui::elements::Empty::new().finish()) + Container::new(galaxyui::elements::Empty::new().finish()) .with_background(theme.background()) .finish(), ); diff --git a/app/src/auth/mod.rs b/app/src/auth/mod.rs index 53222ea9..3ca4c06c 100644 --- a/app/src/auth/mod.rs +++ b/app/src/auth/mod.rs @@ -33,10 +33,10 @@ pub use auth_state::AuthStateProvider; use itertools::Itertools; pub use login_failure_notification::LoginFailureReason; pub use user_uid::UserUid; -use warpui::modals::{AlertDialogWithCallbacks, ModalButton}; +use galaxyui::modals::{AlertDialogWithCallbacks, ModalButton}; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::model::persistence::CloudModel; use crate::focus_running_window_and_show_native_modal; diff --git a/app/src/auth/needs_sso_link_view.rs b/app/src/auth/needs_sso_link_view.rs index 9b410cc7..b72fb367 100644 --- a/app/src/auth/needs_sso_link_view.rs +++ b/app/src/auth/needs_sso_link_view.rs @@ -1,9 +1,9 @@ use super::auth_manager::AuthManager; use crate::{appearance::Appearance, auth::login_error_modal::LoginErrorModal}; -use warpui::elements::{Align, MouseStateHandle, Shrinkable}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::elements::{Align, MouseStateHandle, Shrinkable}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; #[derive(Debug)] pub enum NeedsSsoLinkViewAction { diff --git a/app/src/auth/paste_auth_token_modal.rs b/app/src/auth/paste_auth_token_modal.rs index 6f5f69f1..af5cbeca 100644 --- a/app/src/auth/paste_auth_token_modal.rs +++ b/app/src/auth/paste_auth_token_modal.rs @@ -19,17 +19,17 @@ use crate::util::bindings::CustomAction; use pathfinder_color::ColorU; use ui_components::{button, Component as _, Options as _}; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Fill, Flex, FormattedTextElement, HighlightedHyperlink, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Stack, }; -use warpui::fonts::Weight; -use warpui::keymap::{FixedBinding, Keystroke}; -use warpui::text_layout::TextAlignment; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::keymap::{FixedBinding, Keystroke}; +use galaxyui::text_layout::TextAlignment; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ actions::StandardAction, AppContext, Element, Entity, FocusContext, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -38,7 +38,7 @@ const MODAL_WIDTH: f32 = 460.; const AUTH_TOKEN_INPUT_BORDER_RADIUS: Radius = Radius::Pixels(4.); pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( "enter", @@ -250,7 +250,7 @@ impl View for PasteAuthTokenModalView { let close_button = ui_builder .close_button(24., self.close_mouse_state.clone()) .build() - .on_click(|ctx: &mut warpui::EventContext, _, _| { + .on_click(|ctx: &mut galaxyui::EventContext, _, _| { ctx.dispatch_typed_action(PasteAuthTokenModalAction::Cancel); }) .finish(); @@ -401,7 +401,7 @@ impl View for PasteAuthTokenModalView { // Dim backdrop with click-to-dismiss behavior (matches the mockup). let mut stack = Stack::new(); stack.add_child( - Container::new(warpui::elements::Empty::new().finish()) + Container::new(galaxyui::elements::Empty::new().finish()) .with_background_color(ColorU::new(0, 0, 0, 179)) .finish(), ); diff --git a/app/src/auth/user.rs b/app/src/auth/user.rs index 7ee0f539..c80a523c 100644 --- a/app/src/auth/user.rs +++ b/app/src/auth/user.rs @@ -2,11 +2,11 @@ use crate::server::datetime_ext::DateTimeExt; use anyhow::{anyhow, Result}; use chrono::{DateTime, FixedOffset}; use serde::{Deserialize, Serialize}; -use warp_graphql::{queries::get_user::FirebaseProfile, scalars::time::ServerTimestamp}; +use galaxy_graphql::{queries::get_user::FirebaseProfile, scalars::time::ServerTimestamp}; use super::UserUid; -pub use warp_server_client::auth::{TEST_USER_EMAIL, TEST_USER_UID}; +pub use galaxy_server_client::auth::{TEST_USER_EMAIL, TEST_USER_UID}; #[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq, Eq)] pub enum AnonymousUserType { @@ -26,9 +26,9 @@ pub enum PrincipalType { ServiceAccount, } -impl From for PrincipalType { - fn from(value: warp_graphql::queries::get_user::PrincipalType) -> Self { - use warp_graphql::queries::get_user::PrincipalType as GqlPrincipalType; +impl From for PrincipalType { + fn from(value: galaxy_graphql::queries::get_user::PrincipalType) -> Self { + use galaxy_graphql::queries::get_user::PrincipalType as GqlPrincipalType; match value { GqlPrincipalType::User => PrincipalType::User, GqlPrincipalType::ServiceAccount => PrincipalType::ServiceAccount, @@ -36,18 +36,18 @@ impl From for PrincipalType { } } -impl TryFrom +impl TryFrom for AnonymousUserType { type Error = anyhow::Error; fn try_from( - value: warp_graphql::mutations::create_anonymous_user::AnonymousUserType, + value: galaxy_graphql::mutations::create_anonymous_user::AnonymousUserType, ) -> Result { match value { - warp_graphql::mutations::create_anonymous_user::AnonymousUserType::NativeClientAnonymousUser => Ok(AnonymousUserType::NativeClientAnonymousUser), - warp_graphql::mutations::create_anonymous_user::AnonymousUserType::NativeClientAnonymousUserFeatureGated => Ok(AnonymousUserType::NativeClientAnonymousUserFeatureGated), - warp_graphql::mutations::create_anonymous_user::AnonymousUserType::WebClientAnonymousUser => Ok(AnonymousUserType::WebClientAnonymousUser), - warp_graphql::mutations::create_anonymous_user::AnonymousUserType::Other(_) => { + galaxy_graphql::mutations::create_anonymous_user::AnonymousUserType::NativeClientAnonymousUser => Ok(AnonymousUserType::NativeClientAnonymousUser), + galaxy_graphql::mutations::create_anonymous_user::AnonymousUserType::NativeClientAnonymousUserFeatureGated => Ok(AnonymousUserType::NativeClientAnonymousUserFeatureGated), + galaxy_graphql::mutations::create_anonymous_user::AnonymousUserType::WebClientAnonymousUser => Ok(AnonymousUserType::WebClientAnonymousUser), + galaxy_graphql::mutations::create_anonymous_user::AnonymousUserType::Other(_) => { Err(anyhow!("could not convert unknown anonymous user type")) }, } @@ -61,12 +61,12 @@ pub struct PersonalObjectLimits { pub workflow_limit: usize, } -impl TryFrom +impl TryFrom for PersonalObjectLimits { type Error = anyhow::Error; fn try_from( - value: warp_graphql::queries::get_user::AnonymousUserPersonalObjectLimits, + value: galaxy_graphql::queries::get_user::AnonymousUserPersonalObjectLimits, ) -> Result { Ok(Self { env_var_limit: value.env_var_limit as usize, diff --git a/app/src/auth/user_test.rs b/app/src/auth/user_test.rs index d070af5e..05743ce4 100644 --- a/app/src/auth/user_test.rs +++ b/app/src/auth/user_test.rs @@ -1,6 +1,6 @@ use super::*; use anyhow::Result; -use warp_graphql::queries::get_user::FirebaseProfile; +use galaxy_graphql::queries::get_user::FirebaseProfile; #[test] fn test_parse_user_profile() -> Result<()> { diff --git a/app/src/auth/user_uid.rs b/app/src/auth/user_uid.rs index 0dc9875e..a8ceee6f 100644 --- a/app/src/auth/user_uid.rs +++ b/app/src/auth/user_uid.rs @@ -1 +1 @@ -pub use warp_server_client::auth::user_uid::*; +pub use galaxy_server_client::auth::user_uid::*; diff --git a/app/src/auth/web_handoff.rs b/app/src/auth/web_handoff.rs index 112b3374..fce72d63 100644 --- a/app/src/auth/web_handoff.rs +++ b/app/src/auth/web_handoff.rs @@ -1,7 +1,7 @@ use anyhow::anyhow; use wasm_bindgen::prelude::*; -use warpui::{ +use galaxyui::{ ui_components::components::UiComponent as _, AppContext, Element, Entity, SingletonEntity, View, ViewContext, }; diff --git a/app/src/autoupdate/linux.rs b/app/src/autoupdate/linux.rs index 988925f6..33f2130f 100644 --- a/app/src/autoupdate/linux.rs +++ b/app/src/autoupdate/linux.rs @@ -4,9 +4,9 @@ use std::path::PathBuf; use anyhow::{bail, Context as _, Result}; use channel_versions::VersionInfo; use instant::Duration; -use warp_core::channel::{Channel, ChannelState}; -use warp_terminal::shell::ShellType; -use warpui::ViewContext; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxy_terminal::shell::ShellType; +use galaxyui::ViewContext; use crate::workspace::Workspace; @@ -146,7 +146,7 @@ mod appimage { let mut command = command::blocking::Command::new(appimage_path); // Pass a flag to the app to let it know it was restarted as part of the // autoupdate process. - command.arg(warp_cli::finish_update_flag()); + command.arg(galaxy_cli::finish_update_flag()); // If we're testing with a local copy of channel_versions.json, have the // newly-started binary also reference that same file (so we can test // displaying an updated changelog after an autoupdate). @@ -164,7 +164,7 @@ mod package_manager { use markdown_parser::{ FormattedText, FormattedTextFragment, FormattedTextHeader, FormattedTextLine, }; - use warpui::{ + use galaxyui::{ elements::{Container, FormattedTextElement, HighlightedHyperlink}, Element, SingletonEntity as _, }; @@ -187,16 +187,16 @@ mod package_manager { } } - impl warpui::Entity for AutoupdateContextBlock { + impl galaxyui::Entity for AutoupdateContextBlock { type Event = (); } - impl warpui::View for AutoupdateContextBlock { + impl galaxyui::View for AutoupdateContextBlock { fn ui_name() -> &'static str { "AutoupdateContextBlock" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let theme = appearance.theme(); let package_manager_name = self.package_manager.to_string(); @@ -289,7 +289,7 @@ mod package_manager { // Add any arguments that were passed to warp, skipping the first // argument (the name of the executable) and dropping the flag for // finishing an update. - let finish_update_flag = warp_cli::finish_update_flag(); + let finish_update_flag = galaxy_cli::finish_update_flag(); command.args( std::env::args() .skip(1) @@ -393,7 +393,7 @@ impl PackageManager { is_signing_key_configured, } => { let repo_prefix = if !is_repo_configured { - let cache_dir = warp_core::paths::cache_dir(); + let cache_dir = galaxy_core::paths::cache_dir(); let cache_dir_str = cache_dir.display(); // Back up the existing pacman.conf file just in case // anything goes wrong, then add the repository config. diff --git a/app/src/autoupdate/mac.rs b/app/src/autoupdate/mac.rs index c31cdaaa..d9be46f1 100644 --- a/app/src/autoupdate/mac.rs +++ b/app/src/autoupdate/mac.rs @@ -13,14 +13,14 @@ use std::{ str, time::Duration, }; -use warp_core::safe_error; +use galaxy_core::safe_error; use anyhow::{anyhow, bail, ensure, Context, Result}; use channel_versions::VersionInfo; use nix::unistd::{fchown, getgid}; use nix::{errno::Errno, unistd::getuid}; -use warp_core::macos::get_bundle_path; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxy_core::macos::get_bundle_path; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::{ appearance::AppearanceManager, @@ -45,7 +45,7 @@ const OLD_EXECUTABLE_FILE_NAME: &str = "old"; const PERMISSIONS_TMP_FILE_NAME: &str = "permission_test"; fn old_executable_file_path() -> PathBuf { - warp_core::paths::state_dir().join(OLD_EXECUTABLE_FILE_NAME) + galaxy_core::paths::state_dir().join(OLD_EXECUTABLE_FILE_NAME) } /// Removes the old executable dir from the app bundle. This is necessary because after an @@ -143,7 +143,7 @@ pub(super) fn relaunch() -> Result<()> { launch_command.push(bundle_path.as_os_str()); // Pass a flag to the app to let it know it was restarted as part of the // autoupdate process. - launch_command.push(format!(" --args {}", warp_cli::finish_update_flag())); + launch_command.push(format!(" --args {}", galaxy_cli::finish_update_flag())); // If we're testing with a local copy of channel_versions.json, have the // newly-started binary also reference that same file (so we can test // displaying an updated changelog after an autoupdate). @@ -190,7 +190,7 @@ pub async fn cleanup(update_id: &str) { /// This helps prevent accumulation of old update directories from failed downloads, /// race conditions, or incomplete cleanups. pub async fn cleanup_all_except(preserve_update_id: Option<&str>) { - let mut autoupdate_dir = warp_core::paths::cache_dir(); + let mut autoupdate_dir = galaxy_core::paths::cache_dir(); autoupdate_dir.push("autoupdate"); if !autoupdate_dir.exists() { @@ -315,7 +315,7 @@ async fn verify_code_signature(component: &str, path: &Path) -> Result<()> { .arg("-v") .arg(format!( "-R=certificate leaf[subject.OU] = \"{}\"", - warp_core::macos::APPLE_TEAM_ID + galaxy_core::macos::APPLE_TEAM_ID )) .arg(path) .output() @@ -664,7 +664,7 @@ async fn download_dmg( } fn get_download_dir(update_id: &str) -> PathBuf { - let mut dir = warp_core::paths::cache_dir(); + let mut dir = galaxy_core::paths::cache_dir(); dir.push("autoupdate"); dir.push(update_id); dir @@ -732,12 +732,12 @@ fn dmg_name(channel: Channel) -> String { fn app_name_prefix(channel: Channel) -> &'static str { match channel { - Channel::Stable => "Warp", - Channel::Preview => "WarpPreview", - Channel::Local => "warp", + Channel::Stable => "GalaxyAI", + Channel::Preview => "GalaxyAIPreview", + Channel::Local => "galaxy-ai", Channel::Integration => "integration", - Channel::Dev => "WarpDev", - Channel::Oss => "warp-oss", + Channel::Dev => "GalaxyAIDev", + Channel::Oss => "galaxy-ai-oss", } } diff --git a/app/src/autoupdate/mod.rs b/app/src/autoupdate/mod.rs index 875d62b8..f5916258 100644 --- a/app/src/autoupdate/mod.rs +++ b/app/src/autoupdate/mod.rs @@ -23,16 +23,16 @@ use rand::Rng as _; use std::collections::VecDeque; use std::sync::Arc; use std::time::Duration; -use warp_core::execution_mode::AppExecutionMode; -use warpui::platform::TerminationMode; -use warpui::r#async::Timer; -use warpui::windowing::state::ApplicationStage; -use warpui::windowing::{self, WindowManager}; -use warpui::{ +use galaxy_core::execution_mode::AppExecutionMode; +use galaxyui::platform::TerminationMode; +use galaxyui::r#async::Timer; +use galaxyui::windowing::state::ApplicationStage; +use galaxyui::windowing::{self, WindowManager}; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, AppContext, }; -use warpui::{Entity, ModelContext, SingletonEntity, ViewContext}; +use galaxyui::{Entity, ModelContext, SingletonEntity, ViewContext}; pub use self::changelog::get_current_changelog; use self::channel_versions::fetch_channel_versions; diff --git a/app/src/autoupdate/mod_test.rs b/app/src/autoupdate/mod_test.rs index 36fe91df..73bb5d3b 100644 --- a/app/src/autoupdate/mod_test.rs +++ b/app/src/autoupdate/mod_test.rs @@ -1,5 +1,5 @@ use chrono::{Local, TimeZone}; -use warpui::{App, ModelHandle, ReadModel, UpdateModel}; +use galaxyui::{App, ModelHandle, ReadModel, UpdateModel}; use crate::{ auth::{AuthManager, AuthStateProvider}, @@ -8,7 +8,7 @@ use crate::{ }, }; -use warp_core::execution_mode::{AppExecutionMode, ExecutionMode}; +use galaxy_core::execution_mode::{AppExecutionMode, ExecutionMode}; use super::*; diff --git a/app/src/autoupdate/windows.rs b/app/src/autoupdate/windows.rs index e8e6b0ff..dddf0412 100644 --- a/app/src/autoupdate/windows.rs +++ b/app/src/autoupdate/windows.rs @@ -11,8 +11,8 @@ use std::sync::Arc; use std::{fs, io}; use std::{io::Write as _, time::Duration}; use tempfile::TempPath; -use warp_core::channel::{Channel, ChannelState}; -use warpui::AppContext; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxyui::AppContext; use super::{release_assets_directory_url, DownloadReady}; use crate::util::windows::install_dir; @@ -74,7 +74,7 @@ pub(super) async fn download_update_and_cleanup( const UPDATE_LOG_FILENAME: &str = "warp_update.log"; fn autoupdate_log_file() -> Result { - warp_logging::log_directory().map(|dir| dir.join(UPDATE_LOG_FILENAME)) + galaxy_logging::log_directory().map(|dir| dir.join(UPDATE_LOG_FILENAME)) } /// Checks the autoupdate log file from a previous update attempt. @@ -254,11 +254,11 @@ fn installer_file_name() -> Result { fn app_name_prefix(channel: Channel) -> &'static str { match channel { - Channel::Stable => "Warp", - Channel::Preview => "WarpPreview", - Channel::Local => "warp", + Channel::Stable => "GalaxyAI", + Channel::Preview => "GalaxyAIPreview", + Channel::Local => "galaxy-ai", Channel::Integration => "integration", - Channel::Dev => "WarpDev", - Channel::Oss => "warp-oss", + Channel::Dev => "GalaxyAIDev", + Channel::Oss => "galaxy-ai-oss", } } diff --git a/app/src/banner/state.rs b/app/src/banner/state.rs index f14251a5..669aeddc 100644 --- a/app/src/banner/state.rs +++ b/app/src/banner/state.rs @@ -1,5 +1,5 @@ use serde::{Deserialize, Serialize}; -use warpui::Entity; +use galaxyui::Entity; #[derive( Debug, diff --git a/app/src/banner/view.rs b/app/src/banner/view.rs index 95bce0bf..216f752f 100644 --- a/app/src/banner/view.rs +++ b/app/src/banner/view.rs @@ -3,8 +3,8 @@ use std::{marker::PhantomData, rc::Rc}; use markdown_parser::{ FormattedText, FormattedTextFragment, FormattedTextInline, FormattedTextLine, }; -use warpui::elements::HyperlinkLens; -use warpui::{ +use galaxyui::elements::HyperlinkLens; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, HyperlinkUrl, MainAxisAlignment, MainAxisSize, MouseStateHandle, @@ -213,7 +213,7 @@ impl Banner { fn render_icon(appearance: &Appearance, icon: &Icon) -> Box { let icon_size = font_size(appearance); - ConstrainedBox::new(icon.to_warpui_icon(appearance.theme().accent()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(appearance.theme().accent()).finish()) .with_width(icon_size) .with_height(icon_size) .finish() diff --git a/app/src/billing/shared_objects_creation_denied_body.rs b/app/src/billing/shared_objects_creation_denied_body.rs index da17c8f4..51b7d406 100644 --- a/app/src/billing/shared_objects_creation_denied_body.rs +++ b/app/src/billing/shared_objects_creation_denied_body.rs @@ -2,14 +2,14 @@ use crate::appearance::Appearance; use crate::drive::DriveObjectType; use crate::ui_components::blended_colors; use crate::workspaces::workspace::{BillingMetadata, CustomerType}; -use warpui::elements::{ +use galaxyui::elements::{ Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::fonts::Weight; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ platform::Cursor, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; diff --git a/app/src/billing/shared_objects_creation_denied_modal.rs b/app/src/billing/shared_objects_creation_denied_modal.rs index 409c8c42..c9d0a548 100644 --- a/app/src/billing/shared_objects_creation_denied_modal.rs +++ b/app/src/billing/shared_objects_creation_denied_modal.rs @@ -7,15 +7,15 @@ use crate::ui_components::icons::Icon; use crate::workspaces::user_workspaces::UserWorkspaces; use crate::workspaces::workspace::CustomerType; use std::default::Default; -use warp_core::ui::appearance::Appearance; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::presenter::ChildView; -use warpui::ui_components::components::{Coords, UiComponentStyles}; -use warpui::AppContext; -use warpui::SingletonEntity; -use warpui::ViewHandle; -use warpui::{Element, Entity, TypedActionView, View, ViewContext}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponentStyles}; +use galaxyui::AppContext; +use galaxyui::SingletonEntity; +use galaxyui::ViewHandle; +use galaxyui::{Element, Entity, TypedActionView, View, ViewContext}; use super::shared_objects_creation_denied_body::{ SharedObjectsCreationDeniedBody, SharedObjectsCreationDeniedBodyEvent, @@ -39,7 +39,7 @@ pub enum SharedObjectsCreationDeniedModalEvent { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/bin/channel_config.rs b/app/src/bin/channel_config.rs index cc82e824..76bf44dc 100644 --- a/app/src/bin/channel_config.rs +++ b/app/src/bin/channel_config.rs @@ -2,7 +2,7 @@ //! //! For non-bundled builds, the generator is invoked at runtime. For bundled builds, the config //! is embedded at compile time via the build script. -use warp_core::channel::ChannelConfig; +use galaxy_core::channel::ChannelConfig; /// The name of the config generator binary, expected to be on PATH. const CONFIG_BIN_NAME: &str = "warp-channel-config"; diff --git a/app/src/bin/dev.rs b/app/src/bin/dev.rs index 30fc63b4..e80f34ce 100644 --- a/app/src/bin/dev.rs +++ b/app/src/bin/dev.rs @@ -6,12 +6,12 @@ mod channel_config; use anyhow::Result; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, features, }; -// Simple wrapper around warp::run() for dev channel builds. +// Simple wrapper around galaxy::run() for dev channel builds. fn main() -> Result<()> { ChannelState::set( ChannelState::new(Channel::Dev, channel_config::load_config!("dev")) @@ -20,5 +20,5 @@ fn main() -> Result<()> { .with_additional_features(features::PREVIEW_FLAGS), ); - warp::run() + galaxy::run() } diff --git a/app/src/bin/generate_settings_schema.rs b/app/src/bin/generate_settings_schema.rs index cf252ce7..bbdcefb2 100644 --- a/app/src/bin/generate_settings_schema.rs +++ b/app/src/bin/generate_settings_schema.rs @@ -12,7 +12,7 @@ use schemars::SchemaGenerator; use serde_json::{Map, Value}; use settings::schema::SettingSchemaEntry; -use warp_core::features::{FeatureFlag, DEBUG_FLAGS, DOGFOOD_FLAGS, PREVIEW_FLAGS, RELEASE_FLAGS}; +use galaxy_core::features::{FeatureFlag, DEBUG_FLAGS, DOGFOOD_FLAGS, PREVIEW_FLAGS, RELEASE_FLAGS}; /// Ensures all `inventory::submit!` registrations from the app crate's /// dependency tree are linked into the binary. @@ -22,7 +22,7 @@ use warp_core::features::{FeatureFlag, DEBUG_FLAGS, DOGFOOD_FLAGS, PREVIEW_FLAGS /// not include most of the app's object files and the `inventory` /// submissions they contain. fn ensure_settings_linked() { - let _ = std::hint::black_box(warp::settings::RESTORE_SESSION); + let _ = std::hint::black_box(galaxy::settings::RESTORE_SESSION); } /// Recursively strips `minimum`, `maximum`, and `format` from integer and diff --git a/app/src/bin/local.rs b/app/src/bin/local.rs index 5e6642be..08cc4009 100644 --- a/app/src/bin/local.rs +++ b/app/src/bin/local.rs @@ -2,7 +2,7 @@ mod channel_config; use anyhow::Result; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, features, }; @@ -22,7 +22,7 @@ fn main() -> Result<()> { ChannelState::set(state); - warp::run() + galaxy::run() } // If we're not using an external plist, embed the following as the Info.plist. @@ -35,15 +35,15 @@ embed_plist::embed_info_plist_bytes!(r#" CFBundleDevelopmentRegion English CFBundleDisplayName - WarpLocal + Galaxy AI CFBundleExecutable - warp + galaxy-ai CFBundleIdentifier - dev.warp.Warp-Local + com.samsung.GalaxyAI-Local CFBundleInfoDictionaryVersion 6.0 CFBundleName - WarpLocal + Galaxy AI CFBundlePackageType APPL CFBundleShortVersionString @@ -55,9 +55,9 @@ embed_plist::embed_info_plist_bytes!(r#" UIDesignRequiresCompatibility CFBundleURLTypes - CFBundleURLNameCustom AppCFBundleURLSchemeswarplocal + CFBundleURLNameGalaxy AICFBundleURLSchemesgalaxyai NSHumanReadableCopyright - © 2026, Denver Technologies, Inc + © 2026, Samsung Electronics Co., Ltd. "#.as_bytes()); diff --git a/app/src/bin/oss.rs b/app/src/bin/oss.rs index dfe54547..887fd89d 100644 --- a/app/src/bin/oss.rs +++ b/app/src/bin/oss.rs @@ -3,18 +3,17 @@ #![cfg_attr(feature = "release_bundle", windows_subsystem = "windows")] use anyhow::Result; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelConfig, ChannelState, OzConfig, WarpServerConfig}, AppId, }; -// Simple wrapper around warp::run() for Warp OSS builds. fn main() -> Result<()> { let mut state = ChannelState::new( Channel::Oss, ChannelConfig { - app_id: AppId::new("dev", "warp", "WarpOss"), - logfile_name: "warp-oss.log".into(), + app_id: AppId::new("com", "samsung", "GalaxyAI"), + logfile_name: "galaxy-ai.log".into(), server_config: WarpServerConfig::production(), oz_config: OzConfig::production(), telemetry_config: None, @@ -24,14 +23,13 @@ fn main() -> Result<()> { }, ); if cfg!(debug_assertions) { - state = state.with_additional_features(warp_core::features::DEBUG_FLAGS); + state = state.with_additional_features(galaxy_core::features::DEBUG_FLAGS); } ChannelState::set(state); - warp::run() + galaxy::run() } -// If we're not using an external plist, embed the following as the Info.plist. #[cfg(all(not(feature = "extern_plist"), target_os = "macos"))] embed_plist::embed_info_plist_bytes!(r#" @@ -41,15 +39,15 @@ embed_plist::embed_info_plist_bytes!(r#" CFBundleDevelopmentRegion English CFBundleDisplayName - WarpOss + Galaxy AI CFBundleExecutable - warp-oss + galaxy-ai-oss CFBundleIdentifier - dev.warp.WarpOss + com.samsung.GalaxyAI CFBundleInfoDictionaryVersion 6.0 CFBundleName - WarpOss + Galaxy AI CFBundlePackageType APPL CFBundleShortVersionString @@ -61,9 +59,9 @@ embed_plist::embed_info_plist_bytes!(r#" UIDesignRequiresCompatibility CFBundleURLTypes - CFBundleURLNameCustom AppCFBundleURLSchemeswarposs + CFBundleURLNameGalaxy AICFBundleURLSchemesgalaxyai NSHumanReadableCopyright - © 2026, Denver Technologies, Inc + © 2026, Samsung Electronics Co., Ltd. "#.as_bytes()); diff --git a/app/src/bin/preview.rs b/app/src/bin/preview.rs index 65c95c69..f952af84 100644 --- a/app/src/bin/preview.rs +++ b/app/src/bin/preview.rs @@ -6,12 +6,12 @@ mod channel_config; use anyhow::Result; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, features, }; -// Simple wrapper around warp::run() for feature preview channel builds. +// Simple wrapper around galaxy::run() for feature preview channel builds. fn main() -> Result<()> { ChannelState::set( ChannelState::new(Channel::Preview, channel_config::load_config!("preview")) @@ -19,5 +19,5 @@ fn main() -> Result<()> { .with_additional_features(&[features::FeatureFlag::ForceLogin]), ); - warp::run() + galaxy::run() } diff --git a/app/src/bin/stable.rs b/app/src/bin/stable.rs index b63f83b9..bbdf8f9b 100644 --- a/app/src/bin/stable.rs +++ b/app/src/bin/stable.rs @@ -6,14 +6,14 @@ mod channel_config; use anyhow::Result; -use warp_core::channel::{Channel, ChannelState}; +use galaxy_core::channel::{Channel, ChannelState}; -// Simple wrapper around warp::run() for stable channel builds. +// Simple wrapper around galaxy::run() for stable channel builds. fn main() -> Result<()> { ChannelState::set(ChannelState::new( Channel::Stable, channel_config::load_config!("stable"), )); - warp::run() + galaxy::run() } diff --git a/app/src/changelog_model.rs b/app/src/changelog_model.rs index 962adfec..9a749ee8 100644 --- a/app/src/changelog_model.rs +++ b/app/src/changelog_model.rs @@ -3,7 +3,7 @@ use std::{collections::HashMap, fmt, sync::Arc}; use channel_versions::{Changelog, MarkdownSection}; use itertools::Itertools; use markdown_parser::{parse_markdown, FormattedText}; -use warpui::{ +use galaxyui::{ assets::asset_cache::{AssetCache, AssetSource}, image_cache::ImageType, Entity, ModelContext, SingletonEntity, diff --git a/app/src/channel.rs b/app/src/channel.rs index 55befbb3..b083a6cb 100644 --- a/app/src/channel.rs +++ b/app/src/channel.rs @@ -1 +1 @@ -pub use warp_core::channel::*; +pub use galaxy_core::channel::*; diff --git a/app/src/chip_configurator/mod.rs b/app/src/chip_configurator/mod.rs index 973632ac..a61bd75c 100644 --- a/app/src/chip_configurator/mod.rs +++ b/app/src/chip_configurator/mod.rs @@ -12,16 +12,16 @@ pub(crate) use modal_shell::{ use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Border, ConstrainedBox, Container, CrossAxisAlignment, Dash, DispatchEventResult, Draggable, DraggableState, Element, Empty, EventHandler, Flex, Hoverable, MouseStateHandle, OffsetPositioning, ParentElement, ParentOffsetBounds, SavePosition, Stack, Text, Wrap, }; -use warpui::fonts::Properties; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::{Action, View, ViewContext}; +use galaxyui::fonts::Properties; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{Action, View, ViewContext}; use crate::ai::blocklist::agent_view::toolbar_item::AgentToolbarItemKind; use crate::appearance::Appearance; @@ -185,7 +185,7 @@ impl ControlItemRenderer { let button = Hoverable::new(self.remove_button_state_handle.clone(), |_| { ConstrainedBox::new( icons::Icon::X - .to_warpui_icon(appearance.theme().ui_error_color().into()) + .to_galaxyui_icon(appearance.theme().ui_error_color().into()) .finish(), ) .with_height(icon_size) @@ -240,7 +240,7 @@ impl ControlItemRenderer { if let Some(icon) = icon { content.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(color)).finish()) .with_height(font_size) .with_width(font_size) .finish(), @@ -279,8 +279,8 @@ impl ControlItemRenderer { OffsetPositioning::offset_from_parent( vec2f(0., -2.5 * font_size), ParentOffsetBounds::Unbounded, - warpui::elements::ParentAnchor::Center, - warpui::elements::ChildAnchor::Center, + galaxyui::elements::ParentAnchor::Center, + galaxyui::elements::ChildAnchor::Center, ), ); stack.finish() diff --git a/app/src/chip_configurator/modal_shell.rs b/app/src/chip_configurator/modal_shell.rs index f8266f8a..2d2e0ace 100644 --- a/app/src/chip_configurator/modal_shell.rs +++ b/app/src/chip_configurator/modal_shell.rs @@ -6,16 +6,16 @@ //! overlay, while settings consumers can render the sections inline. use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Align, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, }; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{Action, Element}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{Action, Element}; use super::{ChipConfigurator, ChipConfiguratorAction}; use crate::Appearance; @@ -130,7 +130,7 @@ fn render_header(title: &str, appearance: &Appearance) -> Box { .span(title.to_string()) .with_style(UiComponentStyles { font_size: Some(MODAL_TITLE_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Bold), + font_weight: Some(galaxyui::fonts::Weight::Bold), ..Default::default() }) .build() @@ -170,7 +170,7 @@ fn render_section_label(label: &str, appearance: &Appearance) -> Box Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.editor).finish() } } diff --git a/app/src/code/editor/comments.rs b/app/src/code/editor/comments.rs index 2cc01fe8..98d67af4 100644 --- a/app/src/code/editor/comments.rs +++ b/app/src/code/editor/comments.rs @@ -1,5 +1,5 @@ use chrono::{DateTime, Local}; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; use crate::code::editor::line::EditorLineLocation; use crate::code_review::comments::{ diff --git a/app/src/code/editor/diff.rs b/app/src/code/editor/diff.rs index 15227764..34832a11 100644 --- a/app/src/code/editor/diff.rs +++ b/app/src/code/editor/diff.rs @@ -9,13 +9,13 @@ use pathfinder_color::ColorU; use rangemap::RangeMap; use similar::{ChangeTag, DiffOp, TextDiff}; use string_offset::CharOffset; -use warp_core::ui::theme::Fill; -use warp_editor::{ +use galaxy_core::ui::theme::Fill; +use galaxy_editor::{ content::{edit::TemporaryBlock, version::BufferVersion}, multiline::{AnyMultilineString, MultilineStr, MultilineString, LF}, render::model::{Decoration, LineCount, LineDecoration}, }; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; use super::super::DiffResult; @@ -23,7 +23,7 @@ use crate::{ appearance::Appearance, code::editor::{line::EditorLineLocation, line_iterator::LineIterator}, }; -use warp_core::ui::theme::AnsiColorIdentifier; +use galaxy_core::ui::theme::AnsiColorIdentifier; const OVERLAY_ALPHA: u8 = 56; const INLINE_OVERLAY_ALPHA: u8 = 71; diff --git a/app/src/code/editor/diff_tests.rs b/app/src/code/editor/diff_tests.rs index 8e804da8..64c5d035 100644 --- a/app/src/code/editor/diff_tests.rs +++ b/app/src/code/editor/diff_tests.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use rangemap::RangeMap; use unindent::Unindent as _; -use warp_editor::multiline::{MultilineStr, MultilineString}; +use galaxy_editor::multiline::{MultilineStr, MultilineString}; use crate::code::editor::diff::ChangeType; @@ -10,7 +10,7 @@ use super::DiffModel; #[test] fn test_diff_generation() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let (change_mapping, deletion_mapping) = DiffModel::compute_diff_internal( MultilineStr::try_new("Hello World\nThis is the second line.\nThis is the third.") @@ -76,7 +76,7 @@ fn test_diff_generation() { #[test] fn test_reverse_action() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let mut diff_model = DiffModel::new(); diff_model.set_base(MultilineString::apply( @@ -109,7 +109,7 @@ fn test_reverse_action() { #[test] fn test_reverse_action_replaced_newlines() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let mut diff_model = DiffModel::new(); let base_text = r" @@ -192,7 +192,7 @@ fn test_reverse_action_replaced_newlines() { #[test] fn test_reverse_action_replaced_text() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let mut diff_model = DiffModel::new(); let base_text = r" @@ -269,7 +269,7 @@ fn test_reverse_action_replaced_text() { #[test] fn test_reverse_action_deleted_lines() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let mut diff_model = DiffModel::new(); let base_text = r" @@ -353,7 +353,7 @@ fn test_reverse_action_deleted_lines() { #[test] fn test_diff_count_before_line() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let mut diff_model = DiffModel::new(); diff_model.set_base( @@ -373,7 +373,7 @@ fn test_diff_count_before_line() { #[test] fn test_unified_diff() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let diff = DiffModel::retrieve_unified_diff_internal( MultilineStr::try_new("Hello World\nThis is the second line.\nThis is the third.") @@ -395,7 +395,7 @@ fn test_unified_diff() { /// to produce duplicate deletion and insertion hunks for what is logically a replacement. #[test] fn test_coalesce_replacements() { - use warpui::App; + use galaxyui::App; App::test((), |_| async move { let mut diff_model = DiffModel::new(); let base_text = r" diff --git a/app/src/code/editor/element.rs b/app/src/code/editor/element.rs index 5c66e165..6cb4df74 100644 --- a/app/src/code/editor/element.rs +++ b/app/src/code/editor/element.rs @@ -15,11 +15,11 @@ use pathfinder_geometry::{ rect::RectF, vector::{vec2f, Vector2F}, }; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, theme::{color::internal_colors, Fill}, }; -use warp_editor::{ +use galaxy_editor::{ editor::EditorView, render::{ element::{ @@ -31,7 +31,7 @@ use warp_editor::{ }, }, }; -use warpui::{ +use galaxyui::{ elements::{ new_scrollable::{NewScrollableElement, ScrollableAxis}, Align, Axis, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, Empty, F32Ext, @@ -56,8 +56,8 @@ use crate::{ }, view_components::action_button::{ActionButtonTheme, SecondaryTheme}, }; -use warp_core::features::FeatureFlag; -use warpui::elements::{Hoverable, MouseStateHandle}; +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::{Hoverable, MouseStateHandle}; pub const GUTTER_WIDTH: f32 = 94.; const VERTICAL_DIFF_HUNK_INDICATOR_WIDTH: f32 = 3.; @@ -915,7 +915,7 @@ impl EditorWrapper { }; let icon = ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( expansion_type.icon().into(), line_number_config.text_color, ) @@ -971,7 +971,7 @@ impl EditorWrapper { let container = Container::new( ConstrainedBox::new( - warpui::elements::Icon::new(gutter_button.icon().into(), icon_color).finish(), + galaxyui::elements::Icon::new(gutter_button.icon().into(), icon_color).finish(), ) .with_width(icon_size) .with_height(icon_size) @@ -1011,7 +1011,7 @@ impl EditorWrapper { }); if enabled { - button = button.with_cursor(warpui::platform::Cursor::PointingHand); + button = button.with_cursor(galaxyui::platform::Cursor::PointingHand); if let Some(on_click_action) = on_click_action { let action = on_click_action.clone(); diff --git a/app/src/code/editor/element/gutter_button.rs b/app/src/code/editor/element/gutter_button.rs index 38fe0bdb..e493b9b2 100644 --- a/app/src/code/editor/element/gutter_button.rs +++ b/app/src/code/editor/element/gutter_button.rs @@ -1,13 +1,13 @@ use crate::view_components::action_button::{ ActionButtonTheme, DisabledSecondaryTheme, SecondaryTheme, }; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::color::contrast::MinimumAllowedContrast; -use warp_core::ui::color::ContrastingColor; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::MouseState; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::color::contrast::MinimumAllowedContrast; +use galaxy_core::ui::color::ContrastingColor; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::MouseState; /// A button rendered within the gutter of the editor. pub(super) trait GutterButton { diff --git a/app/src/code/editor/embedded_comment.rs b/app/src/code/editor/embedded_comment.rs index 7e182a41..a2a8d50a 100644 --- a/app/src/code/editor/embedded_comment.rs +++ b/app/src/code/editor/embedded_comment.rs @@ -6,18 +6,18 @@ use std::sync::Arc; use pathfinder_geometry::vector::{vec2f, Vector2F}; use serde_yaml::Mapping; use uuid::Uuid; -use warp_editor::content::markdown::MarkdownStyle; -use warp_editor::editor::EmbeddedItemModel; -use warp_editor::render::element::{RenderContext, RenderableBlock}; -use warp_editor::render::layout::TextLayout; +use galaxy_editor::content::markdown::MarkdownStyle; +use galaxy_editor::editor::EmbeddedItemModel; +use galaxy_editor::render::element::{RenderContext, RenderableBlock}; +use galaxy_editor::render::layout::TextLayout; -use warp_editor::render::model::{ +use galaxy_editor::render::model::{ viewport::ViewportItem, BlockSpacing, EmbeddedItem, EmbeddedItemHTMLRepresentation, EmbeddedItemRichFormat, LaidOutEmbeddedItem, RenderState, }; -use warpui::event::DispatchedEvent; -use warpui::units::Pixels; -use warpui::{AppContext, EntityId, EventContext, LayoutContext, ViewHandle, WindowId}; +use galaxyui::event::DispatchedEvent; +use galaxyui::units::Pixels; +use galaxyui::{AppContext, EntityId, EventContext, LayoutContext, ViewHandle, WindowId}; use crate::code::editor::comment_editor::CommentEditor; use crate::code_review::comments::CommentId; diff --git a/app/src/code/editor/embedded_comment_tests.rs b/app/src/code/editor/embedded_comment_tests.rs index b6ce6704..43ab5f6a 100644 --- a/app/src/code/editor/embedded_comment_tests.rs +++ b/app/src/code/editor/embedded_comment_tests.rs @@ -4,8 +4,8 @@ use super::{ }; use crate::code_review::comments::CommentId; use serde_yaml::{Mapping, Value}; -use warp_editor::content::markdown::MarkdownStyle; -use warpui::{EntityId, WindowId}; +use galaxy_editor::content::markdown::MarkdownStyle; +use galaxyui::{EntityId, WindowId}; #[test] fn test_comment_embedded_item_conversion_valid_input() { diff --git a/app/src/code/editor/find/view.rs b/app/src/code/editor/find/view.rs index 1af8522b..ab6e8c17 100644 --- a/app/src/code/editor/find/view.rs +++ b/app/src/code/editor/find/view.rs @@ -14,19 +14,19 @@ use crate::view_components::action_button::{ActionButton, DisabledSecondaryTheme use crate::view_components::find::FindDirection; use crate::{features::FeatureFlag, settings::AppEditorSettings}; use pathfinder_color::ColorU; -use warp_editor::editor::NavigationKey; -use warp_editor::search::{SearchEvent, Searcher}; -use warpui::elements::MainAxisAlignment; -use warpui::elements::{ChildAnchor, OffsetPositioning, Radius, SavePosition, Shrinkable}; -use warpui::keymap::EditableBinding; -use warpui::ui_components::components::UiComponent; -pub use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxy_editor::search::{SearchEvent, Searcher}; +use galaxyui::elements::MainAxisAlignment; +use galaxyui::elements::{ChildAnchor, OffsetPositioning, Radius, SavePosition, Shrinkable}; +use galaxyui::keymap::EditableBinding; +use galaxyui::ui_components::components::UiComponent; +pub use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ParentElement as _, Stack}, geometry::vector::vec2f, AppContext, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Element, Flex, Hoverable, MouseStateHandle, ParentAnchor, ParentOffsetBounds, @@ -34,8 +34,8 @@ use warpui::{ }, Entity, SingletonEntity, TypedActionView, View, }; -use warpui::{presenter::ChildView, ViewContext, ViewHandle}; -use warpui::{FocusContext, ModelHandle}; +use galaxyui::{presenter::ChildView, ViewContext, ViewHandle}; +use galaxyui::{FocusContext, ModelHandle}; pub const FIND_BAR_WIDTH: f32 = 500.; const ICON_PADDING: f32 = 4.; @@ -104,7 +104,7 @@ pub enum FindAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([ EditableBinding::new( "find:find_next_occurrence", @@ -490,7 +490,7 @@ impl CodeEditorFind { }; let icon = Container::new( ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().active_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(size) @@ -554,7 +554,7 @@ impl CodeEditorFind { appearance.theme().active_ui_text_color() }; Container::new( - ConstrainedBox::new(match_icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(match_icon.to_galaxyui_icon(icon_color).finish()) .with_height(height) .with_width(height) .finish(), @@ -581,7 +581,7 @@ impl CodeEditorFind { appearance.theme().active_ui_text_color() }; Container::new( - ConstrainedBox::new(Icon::Search.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(Icon::Search.to_galaxyui_icon(icon_color).finish()) .with_height(height) .with_width(height) .finish(), @@ -608,7 +608,7 @@ impl CodeEditorFind { }; Container::new( ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().active_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(height) @@ -964,7 +964,7 @@ impl View for CodeEditorFind { } } - fn on_blur(&mut self, _blur_ctx: &warpui::BlurContext, ctx: &mut ViewContext) { + fn on_blur(&mut self, _blur_ctx: &galaxyui::BlurContext, ctx: &mut ViewContext) { // Check if the currently focused view is one of our child components let focused_view_id = ctx.focused_view_id(ctx.window_id()); let is_focus_within_find_bar = [ diff --git a/app/src/code/editor/goto_line/view.rs b/app/src/code/editor/goto_line/view.rs index d9c176cf..76af905d 100644 --- a/app/src/code/editor/goto_line/view.rs +++ b/app/src/code/editor/goto_line/view.rs @@ -6,7 +6,7 @@ use crate::editor::{ EditorView, Event as EditorEvent, InteractionState, PropagateAndNoOpNavigationKeys, SingleLineEditorOptions, TextOptions, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CornerRadius, DropShadow, Flex, ParentElement, Radius, Text, diff --git a/app/src/code/editor/line.rs b/app/src/code/editor/line.rs index 8d17addc..a5596995 100644 --- a/app/src/code/editor/line.rs +++ b/app/src/code/editor/line.rs @@ -1,5 +1,5 @@ use std::ops::Range; -use warp_editor::render::model::{LineCount, RenderLineLocation}; +use galaxy_editor::render::model::{LineCount, RenderLineLocation}; #[derive(Debug, Clone, PartialEq, Eq)] pub enum EditorLineLocation { diff --git a/app/src/code/editor/model.rs b/app/src/code/editor/model.rs index 12a7a7d5..8d292f21 100644 --- a/app/src/code/editor/model.rs +++ b/app/src/code/editor/model.rs @@ -11,18 +11,18 @@ use std::path::Path; use std::rc::Rc; use std::sync::Arc; use std::{cmp, mem}; -use warp_core::platform::SessionPlatform; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::theme::Fill; -use warp_editor::content::anchor::Anchor; -use warp_editor::content::edit::EditDelta; -use warp_editor::content::find::{SearchConfig, SearchResults}; -use warp_editor::content::selection_model::BufferSelectionModel; -use warp_editor::content::version::BufferVersion; -use warp_editor::multiline::{AnyMultilineString, MultilineString, LF}; -use warp_editor::render::model::{AutoScrollMode, LineCount, StyleUpdateAction}; -use warp_editor::selection::TextDirection; -use warpui::units::{IntoPixels, Pixels}; +use galaxy_core::platform::SessionPlatform; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::theme::Fill; +use galaxy_editor::content::anchor::Anchor; +use galaxy_editor::content::edit::EditDelta; +use galaxy_editor::content::find::{SearchConfig, SearchResults}; +use galaxy_editor::content::selection_model::BufferSelectionModel; +use galaxy_editor::content::version::BufferVersion; +use galaxy_editor::multiline::{AnyMultilineString, MultilineString, LF}; +use galaxy_editor::render::model::{AutoScrollMode, LineCount, StyleUpdateAction}; +use galaxy_editor::selection::TextDirection; +use galaxyui::units::{IntoPixels, Pixels}; use crate::util::link_detection::get_word_range_at_offset; use crate::{ @@ -47,9 +47,9 @@ use vim::{ vim_a_quote, vim_a_word, vim_find_char_on_line, vim_find_matching_bracket, vim_inner_block, vim_inner_paragraph, vim_inner_quote, vim_inner_word, vim_word_iterator_from_offset, }; -use warp_core::semantic_selection::SemanticSelection; -use warp_editor::content::buffer::{ShouldAutoscroll, VimInsertPoint}; -use warp_editor::{ +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_editor::content::buffer::{ShouldAutoscroll, VimInsertPoint}; +use galaxy_editor::{ content::{ buffer::{ AutoScrollBehavior, Buffer, BufferEditAction, BufferEvent, BufferSelectAction, @@ -67,12 +67,12 @@ use warp_editor::{ }, selection::{SelectionMode, SelectionModel, TextUnit}, }; -use warpui::elements::{ +use galaxyui::elements::{ AnchorPair, OffsetPositioning, OffsetType, PositionedElementOffsetBounds, PositioningAxis, XAxisAnchor, YAxisAnchor, }; -use warpui::text::{point::Point, TextBuffer}; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::text::{point::Point, TextBuffer}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use super::super::DiffResult; use super::comments::{EditorCommentsModel, PendingComment, PendingCommentEvent}; @@ -558,7 +558,7 @@ impl CodeEditorModel { // Set the following line ranges to be hidden in the editor. pub fn set_hidden_lines( &mut self, - ranges: RangeSet, + ranges: RangeSet, ctx: &mut ModelContext, ) { self.hidden_lines.update(ctx, |model, ctx| { @@ -573,7 +573,7 @@ impl CodeEditorModel { // Set the following hidden line ranges to be visible. This is no-op if the lines are already visible. pub fn set_visible_line_range( &mut self, - range: Range, + range: Range, ctx: &mut ModelContext, ) { let version = self.content().as_ref(ctx).buffer_version(); @@ -1293,7 +1293,7 @@ impl CodeEditorModel { let line_count = self.line_count(ctx); // Calculate the visible line ranges (with context) - let mut visible_ranges: RangeSet = + let mut visible_ranges: RangeSet = RangeSet::new(); // Add ranges for diffs @@ -1311,14 +1311,14 @@ impl CodeEditorModel { } // Calculate hidden ranges as the complement of visible ranges - let all_lines: Range = - warp_editor::content::text::LineCount::from(0) - ..warp_editor::content::text::LineCount::from(line_count); + let all_lines: Range = + galaxy_editor::content::text::LineCount::from(0) + ..galaxy_editor::content::text::LineCount::from(line_count); // Find gaps in the visible ranges let hidden_ranges = visible_ranges .gaps(&all_lines) - .collect::>(); + .collect::>(); self.set_hidden_lines(hidden_ranges, ctx); } @@ -2085,10 +2085,10 @@ impl CodeEditorModel { self.update_content( |mut content, ctx| { content.apply_edit( - warp_editor::content::buffer::BufferEditAction::InsertForEachSelection { + galaxy_editor::content::buffer::BufferEditAction::InsertForEachSelection { texts: &texts, }, - warp_editor::content::buffer::EditOrigin::UserTyped, + galaxy_editor::content::buffer::EditOrigin::UserTyped, selection_model, ctx, ); @@ -2119,10 +2119,10 @@ impl CodeEditorModel { self.update_content( |mut content, ctx| { content.apply_edit( - warp_editor::content::buffer::BufferEditAction::InsertAtCharOffsetRanges { + galaxy_editor::content::buffer::BufferEditAction::InsertAtCharOffsetRanges { edits: &edits, }, - warp_editor::content::buffer::EditOrigin::UserTyped, + galaxy_editor::content::buffer::EditOrigin::UserTyped, selection_model, ctx, ); @@ -3721,10 +3721,10 @@ impl CoreEditorModel for CodeEditorModel { } // TODO(kevin): Add validation to the content model. - fn validate(&self, _ctx: &impl warpui::ModelAsRef) {} + fn validate(&self, _ctx: &impl galaxyui::ModelAsRef) {} // Since this is a plain text editor, there is no text styles. - fn active_text_style(&self) -> warp_editor::content::text::TextStyles { + fn active_text_style(&self) -> galaxy_editor::content::text::TextStyles { Default::default() } diff --git a/app/src/code/editor/model_tests.rs b/app/src/code/editor/model_tests.rs index 79b3d7be..ac88eade 100644 --- a/app/src/code/editor/model_tests.rs +++ b/app/src/code/editor/model_tests.rs @@ -1,10 +1,10 @@ use futures::channel::oneshot; use std::path::Path; use vec1::vec1; -use warp_editor::content::buffer::{InitialBufferState, SelectionOffsets}; -use warp_editor::multiline::MultilineString; -use warp_util::content_version::ContentVersion; -use warpui::App; +use galaxy_editor::content::buffer::{InitialBufferState, SelectionOffsets}; +use galaxy_editor::multiline::MultilineString; +use galaxy_util::content_version::ContentVersion; +use galaxyui::App; use crate::{ code::editor::line::EditorLineLocation, code::editor::view::code_text_styles, diff --git a/app/src/code/editor/nav_bar.rs b/app/src/code/editor/nav_bar.rs index 6e8fb76a..75b3679b 100644 --- a/app/src/code/editor/nav_bar.rs +++ b/app/src/code/editor/nav_bar.rs @@ -1,9 +1,9 @@ #![cfg_attr(target_family = "wasm", allow(dead_code, unused_imports))] // Adding this file level gate as some of the code around editability is not used in WASM yet. -use warp_core::ui::{appearance::Appearance, theme::Fill}; -use warp_editor::model::CoreEditorModel; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::Fill}; +use galaxy_editor::model::CoreEditorModel; +use galaxyui::{ elements::{ Align, Border, ConstrainedBox, Container, CrossAxisAlignment, Flex, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/code/editor/scroll.rs b/app/src/code/editor/scroll.rs index e3c729e5..1d900120 100644 --- a/app/src/code/editor/scroll.rs +++ b/app/src/code/editor/scroll.rs @@ -1,5 +1,5 @@ -use warp_editor::content::version::BufferVersion; -use warp_util::path::LineAndColumnArg; +use galaxy_editor::content::version::BufferVersion; +use galaxy_util::path::LineAndColumnArg; #[derive(Debug, Clone, Copy)] pub enum ScrollWheelBehavior { diff --git a/app/src/code/editor/view.rs b/app/src/code/editor/view.rs index b5259bb2..b0989e3e 100644 --- a/app/src/code/editor/view.rs +++ b/app/src/code/editor/view.rs @@ -40,8 +40,8 @@ use std::{collections::HashSet, path::Path}; use string_offset::CharOffset; use vec1::{vec1, Vec1}; use vim::vim::{Direction, InsertPosition, VimMode, VimModel, VimState, VimSubscriber}; -use warp_core::platform::SessionPlatform; -use warp_editor::{ +use galaxy_core::platform::SessionPlatform; +use galaxy_editor::{ content::{ buffer::{ Buffer, BufferEditAction, EditOrigin, InitialBufferState, ToBufferCharOffset as _, @@ -64,8 +64,8 @@ use warp_editor::{ }, search::{SearchEvent, Searcher, MATCH_FILL, SELECTED_MATCH_FILL}, }; -use warp_util::content_version::ContentVersion; -use warpui::{ +use galaxy_util::content_version::ContentVersion; +use galaxyui::{ elements::{ new_scrollable::{ AxisConfiguration, DualAxisConfig, NewScrollableElement, ScrollableAppearance, @@ -403,11 +403,11 @@ impl CodeEditorView { // from truncating space for the code editor. We should not render it as an overlay // for small code editors. horizontal_scrollbar_appearance: ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::Auto, + galaxyui::elements::ScrollbarWidth::Auto, false, ), vertical_scrollbar_appearance: ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::Auto, + galaxyui::elements::ScrollbarWidth::Auto, false, ), gutter_hover_target: GutterHoverTarget::GutterElement, @@ -877,21 +877,21 @@ impl CodeEditorView { let hidden_section_end = line_range.end.as_usize(); let lines_to_unhide = match expansion_type { ExpansionType::Both => { - warp_editor::content::text::LineCount::from(hidden_section_start) - ..warp_editor::content::text::LineCount::from(hidden_section_end) + galaxy_editor::content::text::LineCount::from(hidden_section_start) + ..galaxy_editor::content::text::LineCount::from(hidden_section_end) } ExpansionType::ExpandDown => { let end = hidden_section_end .min(hidden_section_start + CODE_EDITOR_HIDDEN_SECTION_EXPANSION_LINES); - warp_editor::content::text::LineCount::from(hidden_section_start) - ..warp_editor::content::text::LineCount::from(end) + galaxy_editor::content::text::LineCount::from(hidden_section_start) + ..galaxy_editor::content::text::LineCount::from(end) } ExpansionType::ExpandUp => { let start = hidden_section_start.max( hidden_section_end.saturating_sub(CODE_EDITOR_HIDDEN_SECTION_EXPANSION_LINES), ); - warp_editor::content::text::LineCount::from(start) - ..warp_editor::content::text::LineCount::from(hidden_section_end) + galaxy_editor::content::text::LineCount::from(start) + ..galaxy_editor::content::text::LineCount::from(hidden_section_end) } }; self.model.update(ctx, |model, ctx| { @@ -997,12 +997,12 @@ impl CodeEditorView { if let Some(results) = self.searcher.as_ref(ctx).results() { if !results.matches.is_empty() { // Convert all match ranges to selection offsets - let selection_offsets: Vec = + let selection_offsets: Vec = results .matches .iter() .map(|match_result| { - warp_editor::content::buffer::SelectionOffsets { + galaxy_editor::content::buffer::SelectionOffsets { head: match_result.end, tail: match_result.start, } @@ -1014,8 +1014,8 @@ impl CodeEditorView { self.model.update(ctx, |model, ctx| { model.selection().update(ctx, |selection_model, ctx| { selection_model.update_selection( - warp_editor::content::buffer::BufferSelectAction::SetSelectionOffsets { selections }, - warp_editor::content::buffer::AutoScrollBehavior::Selection, + galaxy_editor::content::buffer::BufferSelectAction::SetSelectionOffsets { selections }, + galaxy_editor::content::buffer::AutoScrollBehavior::Selection, ctx, ); }); @@ -1041,7 +1041,7 @@ impl CodeEditorView { self.model.update(ctx, |model, ctx| { model.update_content( |mut content_model, ctx| { content_model.apply_edit( - warp_editor::content::buffer::BufferEditAction::InsertAtCharOffsetRanges { edits: &edits }, + galaxy_editor::content::buffer::BufferEditAction::InsertAtCharOffsetRanges { edits: &edits }, EditOrigin::UserInitiated, selection_model, ctx, @@ -1093,7 +1093,7 @@ impl CodeEditorView { self.model.update(ctx, |model, ctx| { model.update_content(|mut content_model, ctx| { content_model.apply_edit( - warp_editor::content::buffer::BufferEditAction::InsertAtCharOffsetRanges { edits: &edits }, + galaxy_editor::content::buffer::BufferEditAction::InsertAtCharOffsetRanges { edits: &edits }, EditOrigin::UserInitiated, selection_model, ctx, @@ -2008,8 +2008,8 @@ impl CodeEditorView { self.model.update(ctx, |model, ctx| { model.selection_model().update(ctx, |selection, ctx| { selection.update_selection( - warp_editor::content::buffer::BufferSelectAction::MoveRight, - warp_editor::content::buffer::AutoScrollBehavior::Selection, + galaxy_editor::content::buffer::BufferSelectAction::MoveRight, + galaxy_editor::content::buffer::AutoScrollBehavior::Selection, ctx, ); }); @@ -2341,7 +2341,7 @@ impl View for CodeEditorView { } } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if self.interaction_state(app) != InteractionState::Editable { diff --git a/app/src/code/editor/view/actions.rs b/app/src/code/editor/view/actions.rs index 650081b0..f5b73eb3 100644 --- a/app/src/code/editor/view/actions.rs +++ b/app/src/code/editor/view/actions.rs @@ -18,7 +18,7 @@ use std::collections::{HashMap, HashSet}; use std::fmt::Debug; use std::ops::Range; use string_offset::CharOffset; -use warp_editor::{ +use galaxy_editor::{ content::version::BufferVersion, editor::{EmbeddedItemModel, RunnableCommandModel, TextDecoration}, model::{CoreEditorModel, PlainTextEditorModel}, @@ -28,8 +28,8 @@ use warp_editor::{ }, selection::{TextDirection, TextUnit}, }; -use warp_util::user_input::UserInput; -use warpui::{ +use galaxy_util::user_input::UserInput; +use galaxyui::{ actions::StandardAction, elements::Axis, event::ModifiersState, @@ -48,7 +48,7 @@ lazy_static! { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; let text_entry = id!("CodeEditorView") & !id!("IMEOpen"); // We use this to disable some keybindings that would conflict with the Agent Mode embedded editor. @@ -1109,7 +1109,7 @@ impl TypedActionView for CodeEditorView { } } -impl warp_editor::editor::EditorView for CodeEditorView { +impl galaxy_editor::editor::EditorView for CodeEditorView { type RichTextAction = CodeEditorViewAction; fn runnable_command_at<'a>( diff --git a/app/src/code/editor/view/view_tests.rs b/app/src/code/editor/view/view_tests.rs index 768fa2c6..6fde9194 100644 --- a/app/src/code/editor/view/view_tests.rs +++ b/app/src/code/editor/view/view_tests.rs @@ -1,7 +1,7 @@ use std::sync::Arc; -use warp_core::ui::appearance::Appearance; -use warp_editor::render::element::VerticalExpansionBehavior; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxyui::{ elements::{new_scrollable::ScrollableAppearance, ScrollbarWidth}, platform::WindowStyle, App, TypedActionView, ViewHandle, WindowId, @@ -21,7 +21,7 @@ use crate::{ }; use super::{CodeEditorRenderOptions, CodeEditorView, CodeEditorViewAction}; -use warp_util::user_input::UserInput; +use galaxy_util::user_input::UserInput; fn initialize_editor(app: &mut App) -> (WindowId, ViewHandle) { initialize_settings_for_tests(app); diff --git a/app/src/code/editor/view/vim_handler.rs b/app/src/code/editor/view/vim_handler.rs index 79aa4373..19cfaea0 100644 --- a/app/src/code/editor/view/vim_handler.rs +++ b/app/src/code/editor/view/vim_handler.rs @@ -12,7 +12,7 @@ use vim::vim::{ InsertPosition, LineMotion, ModeTransition, MotionType, TextObjectType, VimHandler, VimMode, VimMotion, VimOperand, VimOperator, VimTextObject, WordMotion, }; -use warp_editor::{ +use galaxy_editor::{ content::buffer::{ AutoScrollBehavior, BufferEditAction, EditOrigin, SelectionOffsets, ToBufferCharOffset as _, VimInsertPoint, @@ -20,7 +20,7 @@ use warp_editor::{ model::{CoreEditorModel, PlainTextEditorModel}, selection::{TextDirection, TextUnit}, }; -use warpui::{text::point::Point, SingletonEntity, ViewContext}; +use galaxyui::{text::point::Point, SingletonEntity, ViewContext}; impl VimHandler for CodeEditorView { fn insert_char(&mut self, c: char, ctx: &mut ViewContext) { @@ -154,7 +154,7 @@ impl VimHandler for CodeEditorView { ) { // Selection logic is almost the same for all operators, so capture that in a closure first. let selection_change = - |model: &mut CodeEditorModel, ctx: &mut warpui::ModelContext| { + |model: &mut CodeEditorModel, ctx: &mut galaxyui::ModelContext| { match operand { VimOperand::Motion { motion, diff --git a/app/src/code/editor/view/vim_handler_tests.rs b/app/src/code/editor/view/vim_handler_tests.rs index aef2348a..1af6c4c5 100644 --- a/app/src/code/editor/view/vim_handler_tests.rs +++ b/app/src/code/editor/view/vim_handler_tests.rs @@ -16,15 +16,15 @@ use crate::{ use std::sync::Arc; use unindent::Unindent; use vim::vim::{MotionType, VimMode}; -use warp_core::{features::FeatureFlag, settings::Setting, ui::appearance::Appearance}; -use warp_editor::model::CoreEditorModel; -use warp_editor::{ +use galaxy_core::{features::FeatureFlag, settings::Setting, ui::appearance::Appearance}; +use galaxy_editor::model::CoreEditorModel; +use galaxy_editor::{ content::buffer::{InitialBufferState, ToBufferCharOffset, ToBufferPoint}, render::element::VerticalExpansionBehavior, }; -use warp_util::user_input::UserInput; -use warpui::text::point::Point; -use warpui::{ +use galaxy_util::user_input::UserInput; +use galaxyui::text::point::Point; +use galaxyui::{ keymap::Keystroke, platform::WindowStyle, App, SingletonEntity, TypedActionView, UpdateModel, ViewHandle, }; diff --git a/app/src/code/editor_management.rs b/app/src/code/editor_management.rs index e5441a94..b5645f0a 100644 --- a/app/src/code/editor_management.rs +++ b/app/src/code/editor_management.rs @@ -6,8 +6,8 @@ use std::{ use crate::ai::skills::SkillOpenOrigin; use ai::skills::SkillReference; use serde::{Deserialize, Serialize}; -use warp_util::path::LineAndColumnArg; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WindowId}; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WindowId}; use crate::{ ai::agent::AIAgentActionId, diff --git a/app/src/code/file_tree/view.rs b/app/src/code/file_tree/view.rs index c1684d57..5d0963cf 100644 --- a/app/src/code/file_tree/view.rs +++ b/app/src/code/file_tree/view.rs @@ -13,22 +13,22 @@ use std::collections::{HashMap, HashSet}; use std::ops::Range; use std::path::{Path, PathBuf}; use std::sync::Arc; -use warp_util::path::LineAndColumnArg; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::path::LineAndColumnArg; +use galaxy_util::standardized_path::StandardizedPath; use repo_metadata::repositories::DetectedRepositories; -use warp_core::send_telemetry_from_ctx; -use warpui::elements::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::elements::{ AcceptedByDropTarget, Align, Clipped, ConstrainedBox, Container, Dismiss, Draggable, DraggableState, Empty, FormattedTextElement, MainAxisAlignment, Percentage, Rect, SavePosition, Scrollable, Shrinkable, }; -use warpui::fonts::Style; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::text_layout::TextAlignment; -use warpui::{clipboard::ClipboardContent, id, ViewContext, WeakViewHandle}; -use warpui::{ +use galaxyui::fonts::Style; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::TextAlignment; +use galaxyui::{clipboard::ClipboardContent, id, ViewContext, WeakViewHandle}; +use galaxyui::{ elements::{ ChildAnchor, ChildView, CrossAxisAlignment, Flex, Hoverable, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, @@ -39,7 +39,7 @@ use warpui::{ AppContext, Element, Entity, EventContext, SingletonEntity as _, TypedActionView, View, ViewHandle, }; -use warpui::{BlurContext, ModelHandle}; +use galaxyui::{BlurContext, ModelHandle}; use crate::code::active_file::{ActiveFileEvent, ActiveFileModel}; use crate::coding_panel_enablement_state::CodingPanelEnablementState; @@ -64,10 +64,10 @@ use crate::{ view_components::DismissibleToast, workspace::ToastStack, }; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::{color::internal_colors, Fill}; -use warp_core::HostId; -use warpui::ui_components::components::UiComponent; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::{color::internal_colors, Fill}; +use galaxy_core::HostId; +use galaxyui::ui_components::components::UiComponent; mod editing; mod render; @@ -985,8 +985,8 @@ impl FileTreeView { .collect(); // Ancestor-dedup only local inputs. Shared with `GlobalSearchView` - // via `warp_util::path::group_roots_by_common_ancestor`. - let grouping = warp_util::path::group_roots_by_common_ancestor(&local_inputs); + // via `galaxy_util::path::group_roots_by_common_ancestor`. + let grouping = galaxy_util::path::group_roots_by_common_ancestor(&local_inputs); // Final displayed order: local surviving roots (in input order), // followed by preserved remote roots (in their existing order). @@ -1786,7 +1786,7 @@ impl FileTreeView { let expand_icon = match expand_icon { Some(icon) => { let chevron_icon_color = item_highlight_state.text_and_icon_color(appearance); - icon.to_warpui_icon(chevron_icon_color.into()).finish() + icon.to_galaxyui_icon(chevron_icon_color.into()).finish() } None => Empty::new().finish(), }; @@ -1805,7 +1805,7 @@ impl FileTreeView { // Add the icon for the item. let icon_color = item_highlight_state.text_and_icon_color(appearance); let icon = match render_state.icon { - ImageOrIcon::Icon(icon) => icon.to_warpui_icon(icon_color.into()).finish(), + ImageOrIcon::Icon(icon) => icon.to_galaxyui_icon(icon_color.into()).finish(), ImageOrIcon::Image(image) => image, }; header_row.add_child( @@ -2637,7 +2637,7 @@ impl FileTreeView { ScrollbarWidth::Auto, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .finish(), @@ -2684,7 +2684,7 @@ impl FileTreeView { Container::new( ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(Fill::Solid(internal_colors::neutral_6(theme))) + .to_galaxyui_icon(Fill::Solid(internal_colors::neutral_6(theme))) .finish(), ) .with_width(24.) @@ -2749,7 +2749,7 @@ impl FileTreeView { // Create loading icon let loading_icon = Icon::Loading - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(); @@ -2771,7 +2771,7 @@ impl FileTreeView { header_row.add_child(loading_icon); let folder_icon = Icon::Folder - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(); diff --git a/app/src/code/file_tree/view/editing.rs b/app/src/code/file_tree/view/editing.rs index d1f8fa68..3c0a06b4 100644 --- a/app/src/code/file_tree/view/editing.rs +++ b/app/src/code/file_tree/view/editing.rs @@ -8,8 +8,8 @@ use repo_metadata::file_tree_store::FileTreeEntryState; use repo_metadata::{FileMetadata, FileTreeEntry}; use std::cmp::Ordering; use std::sync::Arc; -use warp_util::standardized_path::StandardizedPath; -use warpui::{elements::MouseStateHandle, ViewContext}; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::{elements::MouseStateHandle, ViewContext}; use super::{FileTreeIdentifier, FileTreeItem, FileTreeView}; use crate::{ @@ -108,7 +108,7 @@ impl FileTreeView { metadata: FileMetadata::from_standardized(path.join("new_file"), false).into(), depth: depth + 1, mouse_state_handle: MouseStateHandle::default(), - draggable_state: warpui::elements::DraggableState::default(), + draggable_state: galaxyui::elements::DraggableState::default(), }, ); diff --git a/app/src/code/file_tree/view/editing_tests.rs b/app/src/code/file_tree/view/editing_tests.rs index eeb148ad..8db97ca5 100644 --- a/app/src/code/file_tree/view/editing_tests.rs +++ b/app/src/code/file_tree/view/editing_tests.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use repo_metadata::file_tree_store::{FileTreeDirectoryEntryState, FileTreeEntryState}; use repo_metadata::{FileMetadata, FileTreeEntry}; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use super::sort_entries_for_file_tree; diff --git a/app/src/code/file_tree/view/render.rs b/app/src/code/file_tree/view/render.rs index a8f88938..59efc452 100644 --- a/app/src/code/file_tree/view/render.rs +++ b/app/src/code/file_tree/view/render.rs @@ -1,4 +1,4 @@ -use warpui::elements::{DraggableState, MouseStateHandle}; +use galaxyui::elements::{DraggableState, MouseStateHandle}; use super::FileTreeItem; use crate::code::icon_from_file_path; diff --git a/app/src/code/file_tree/view/view_tests.rs b/app/src/code/file_tree/view/view_tests.rs index b42ebb0d..5494eade 100644 --- a/app/src/code/file_tree/view/view_tests.rs +++ b/app/src/code/file_tree/view/view_tests.rs @@ -7,8 +7,8 @@ use repo_metadata::repositories::DetectedRepositories; use repo_metadata::watcher::DirectoryWatcher; use repo_metadata::RepoMetadataModel; use virtual_fs::{Stub, VirtualFS}; -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App, ModelHandle}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App, ModelHandle}; use crate::auth::AuthStateProvider; use crate::server::server_api::{team::MockTeamClient, workspace::MockWorkspaceClient}; @@ -21,8 +21,8 @@ use crate::workspaces::user_workspaces::UserWorkspaces; use super::FileTreeView; -fn std_path(path: &std::path::Path) -> warp_util::standardized_path::StandardizedPath { - warp_util::standardized_path::StandardizedPath::try_from_local(path).unwrap() +fn std_path(path: &std::path::Path) -> galaxy_util::standardized_path::StandardizedPath { + galaxy_util::standardized_path::StandardizedPath::try_from_local(path).unwrap() } fn initialize_app( @@ -58,7 +58,7 @@ fn build_repo_state(repo_root: &std::path::Path) -> FileTreeState { false, )); let src_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo_root.join("packages/app/src"), ) .unwrap(), @@ -67,7 +67,7 @@ fn build_repo_state(repo_root: &std::path::Path) -> FileTreeState { loaded: true, }); let app_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo_root.join("packages/app"), ) .unwrap(), @@ -76,7 +76,7 @@ fn build_repo_state(repo_root: &std::path::Path) -> FileTreeState { loaded: true, }); let packages_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo_root.join("packages"), ) .unwrap(), @@ -95,7 +95,7 @@ fn build_repo_state(repo_root: &std::path::Path) -> FileTreeState { fn build_repo_state_with_unloaded_directory(repo_root: &std::path::Path) -> FileTreeState { let unloaded_src_dir = Entry::Directory(DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &repo_root.join("src"), ) .unwrap(), @@ -126,7 +126,7 @@ fn repo_transition_unregisters_lazy_loaded_path() { let repo_root = dirs.tests().join("repo"); let displayed_root = repo_root.join("packages/app"); let canonical_repo_root = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_root) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_root) .unwrap(); App::test((), |mut app| async move { @@ -145,13 +145,13 @@ fn repo_transition_unregisters_lazy_loaded_path() { file_tree_view.read(&app, |view, _ctx| { assert!(view.registered_lazy_loaded_paths.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &displayed_root ) .unwrap() )); let displayed_std = - warp_util::standardized_path::StandardizedPath::try_from_local(&displayed_root) + galaxy_util::standardized_path::StandardizedPath::try_from_local(&displayed_root) .unwrap(); assert_eq!( view.root_directories @@ -162,7 +162,7 @@ fn repo_transition_unregisters_lazy_loaded_path() { }); repository_metadata_model.read(&app, |model, ctx| { assert!(model.is_lazy_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &displayed_root ) .unwrap(), @@ -180,10 +180,10 @@ fn repo_transition_unregisters_lazy_loaded_path() { file_tree_view.read(&app, |view, _ctx| { let displayed_std = - warp_util::standardized_path::StandardizedPath::try_from_local(&displayed_root) + galaxy_util::standardized_path::StandardizedPath::try_from_local(&displayed_root) .unwrap(); let repo_std = - warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(); assert!(!view.registered_lazy_loaded_paths.contains(&displayed_std)); assert_eq!(view.root_for_path(&displayed_std), Some(repo_std.clone())); @@ -196,7 +196,7 @@ fn repo_transition_unregisters_lazy_loaded_path() { }); repository_metadata_model.read(&app, |model, ctx| { assert!(!model.is_lazy_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &displayed_root ) .unwrap(), @@ -231,7 +231,7 @@ fn repo_backed_unloaded_directory_loads_through_model() { let nested_dir = repo_root.join("src/nested"); let source_file = repo_root.join("src/nested/main.rs"); let canonical_repo_root = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_root) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_root) .unwrap(); App::test((), |mut app| async move { @@ -259,11 +259,11 @@ fn repo_backed_unloaded_directory_loads_through_model() { assert!(!view .root_directories .get( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap() ) .is_some_and(|root_dir| root_dir.entry.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &source_file ) .unwrap() @@ -272,9 +272,9 @@ fn repo_backed_unloaded_directory_loads_through_model() { file_tree_view.update(&mut app, |view, ctx| { view.ensure_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), - &warp_util::standardized_path::StandardizedPath::try_from_local(&src_dir) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&src_dir) .unwrap(), ctx, ); @@ -284,11 +284,11 @@ fn repo_backed_unloaded_directory_loads_through_model() { assert!(view .root_directories .get( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap() ) .is_some_and(|root_dir| root_dir.entry.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &nested_dir ) .unwrap() @@ -297,9 +297,9 @@ fn repo_backed_unloaded_directory_loads_through_model() { file_tree_view.update(&mut app, |view, ctx| { view.ensure_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), - &warp_util::standardized_path::StandardizedPath::try_from_local(&nested_dir) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&nested_dir) .unwrap(), ctx, ); @@ -309,11 +309,11 @@ fn repo_backed_unloaded_directory_loads_through_model() { assert!(view .root_directories .get( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap() ) .is_some_and(|root_dir| root_dir.entry.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &source_file ) .unwrap() @@ -321,17 +321,17 @@ fn repo_backed_unloaded_directory_loads_through_model() { }); repository_metadata_model.read(&app, |model, ctx| { assert!(!model.is_lazy_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), ctx )); let id = repo_metadata::RepositoryIdentifier::local( - warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), ); assert!(model.get_repository(&id, ctx).is_some_and(|state| { state.entry.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &source_file, ) .unwrap(), @@ -352,7 +352,7 @@ fn pending_repository_root_does_not_register_lazy_loaded_path() { let repo_root = dirs.tests().join("repo"); let canonical_repo_root = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_root) + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized(&repo_root) .unwrap(); App::test((), |mut app| async move { @@ -374,7 +374,7 @@ fn pending_repository_root_does_not_register_lazy_loaded_path() { }); repository_metadata_model.read(&app, |model, ctx| { let id = repo_metadata::RepositoryIdentifier::local( - warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), ); assert!(matches!( @@ -390,18 +390,18 @@ fn pending_repository_root_does_not_register_lazy_loaded_path() { file_tree_view.read(&app, |view, _ctx| { assert!(!view.registered_lazy_loaded_paths.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap() )); }); repository_metadata_model.read(&app, |model, ctx| { assert!(!model.is_lazy_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + &galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), ctx )); let id = repo_metadata::RepositoryIdentifier::local( - warp_util::standardized_path::StandardizedPath::try_from_local(&repo_root) + galaxy_util::standardized_path::StandardizedPath::try_from_local(&repo_root) .unwrap(), ); assert!(matches!( @@ -430,7 +430,7 @@ fn failed_lazy_loaded_path_registration_is_retried() { file_tree_view.read(&app, |view, _ctx| { assert!(!view.registered_lazy_loaded_paths.contains( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &displayed_root ) .unwrap() @@ -438,7 +438,7 @@ fn failed_lazy_loaded_path_registration_is_retried() { }); repository_metadata_model.read(&app, |model, ctx| { assert!(!model.is_lazy_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &displayed_root ) .unwrap(), @@ -463,7 +463,7 @@ fn failed_lazy_loaded_path_registration_is_retried() { }); repository_metadata_model.read(&app, |model, ctx| { assert!(model.is_lazy_loaded_path( - &warp_util::standardized_path::StandardizedPath::try_from_local( + &galaxy_util::standardized_path::StandardizedPath::try_from_local( &displayed_root ) .unwrap(), diff --git a/app/src/code/find_references_view.rs b/app/src/code/find_references_view.rs index b5efa277..0a07d909 100644 --- a/app/src/code/find_references_view.rs +++ b/app/src/code/find_references_view.rs @@ -8,11 +8,11 @@ use std::{collections::HashMap, path::PathBuf}; use lsp::ReferenceLocation; use pathfinder_geometry::vector::Vector2F; use string_offset::CharOffset; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, icons::Icon as WarpIcon, theme::color::internal_colors, }; -use warp_files::FileModel; -use warpui::{ +use galaxy_files::FileModel; +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Fill, Flex, Hoverable, @@ -26,14 +26,14 @@ use warpui::{ }; use crate::search::result_renderer::ItemHighlightState; -use warpui::ui_components::components::UiComponent; +use galaxyui::ui_components::components::UiComponent; use super::{ editor::view::{CodeEditorRenderOptions, CodeEditorView}, global_buffer_model::GlobalBufferModel, }; use crate::editor::InteractionState; -use warp_editor::{ +use galaxy_editor::{ content::buffer::InitialBufferState, render::element::VerticalExpansionBehavior, }; @@ -43,7 +43,7 @@ pub const FIND_REFERENCES_CARD_MAX_HEIGHT: f32 = 300.; const HAS_REFERENCES: &str = "HasReferences"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -322,15 +322,15 @@ impl FindReferencesView { .with_can_show_diff_ui(false) .with_show_line_numbers(false) .with_horizontal_scrollbar_appearance( - warpui::elements::new_scrollable::ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::None, + galaxyui::elements::new_scrollable::ScrollableAppearance::new( + galaxyui::elements::ScrollbarWidth::None, false, ), ); editor_view.set_vertical_scrollbar_appearance( - warpui::elements::new_scrollable::ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::None, + galaxyui::elements::new_scrollable::ScrollableAppearance::new( + galaxyui::elements::ScrollbarWidth::None, false, ), ); @@ -403,7 +403,7 @@ impl View for FindReferencesView { "FindReferencesView" } - fn keymap_context(&self, _app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, _app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if !self.references.is_empty() { context.set.insert(HAS_REFERENCES); @@ -413,7 +413,7 @@ impl View for FindReferencesView { fn render(&self, app: &AppContext) -> Box { if self.references.is_empty() { - return warpui::elements::Empty::new().finish(); + return galaxyui::elements::Empty::new().finish(); } let appearance = Appearance::handle(app).as_ref(app); @@ -520,7 +520,7 @@ fn render_header( let icon_color = theme.sub_text_color(theme.background()); let close_button = Hoverable::new(back_mouse_state, move |state| { let close_icon = ConstrainedBox::new( - warpui::elements::Icon::new(WarpIcon::X.into(), icon_color).finish(), + galaxyui::elements::Icon::new(WarpIcon::X.into(), icon_color).finish(), ) .with_width(16.) .with_height(16.) diff --git a/app/src/code/footer.rs b/app/src/code/footer.rs index d98d43a6..5be1dc2b 100644 --- a/app/src/code/footer.rs +++ b/app/src/code/footer.rs @@ -6,30 +6,30 @@ use lsp::{ LanguageId, LanguageServerId, LspManagerModel, LspManagerModelEvent, LspServerModel, LspState as LspModelState, }; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; use crate::code::lsp_telemetry::{LspControlActionType, LspEnablementSource, LspTelemetryEvent}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::{Fill as ThemeFill, WarpTheme}; -use warp_core::ui::{appearance::Appearance, Icon}; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::{Fill as ThemeFill, WarpTheme}; +use galaxy_core::ui::{appearance::Appearance, Icon}; +use galaxyui::elements::{ ChildAnchor, ChildView, Dismiss, Empty, Hoverable, MainAxisSize, MouseStateHandle, ParentAnchor, ParentOffsetBounds, Rect, Shrinkable, }; -use warpui::platform::Cursor; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Fill, Flex, MainAxisAlignment, OffsetPositioning, Padding, ParentElement, Radius, Stack, }, AppContext, Element, Entity, ModelHandle, SingletonEntity, View, WeakModelHandle, }; -use warpui::{TypedActionView, ViewContext, ViewHandle}; +use galaxyui::{TypedActionView, ViewContext, ViewHandle}; -use warp_core::ui::theme::AnsiColorIdentifier; +use galaxy_core::ui::theme::AnsiColorIdentifier; #[cfg(feature = "local_fs")] use crate::ai::persisted_workspace::PersistedWorkspaceEvent; @@ -289,7 +289,7 @@ impl CodeFooterView { Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_width(12.) @@ -1170,7 +1170,7 @@ impl CodeFooterView { mouse_states.open_logs.clone(), move || { Icon::Code1 - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, "Open logs", @@ -1192,7 +1192,7 @@ impl CodeFooterView { mouse_states.restart_server.clone(), move || { Icon::RefreshCcw - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, "Restart server", @@ -1237,7 +1237,7 @@ impl CodeFooterView { mouse_states.start_server.clone(), move || { Icon::Play - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, "Start server", @@ -1259,7 +1259,7 @@ impl CodeFooterView { mouse_states.remove_server.clone(), move || { Icon::Trash - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, "Remove server", @@ -1282,7 +1282,7 @@ impl CodeFooterView { mouse_states.restart_all.clone(), move || { Icon::RefreshCcw - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, if is_plural { @@ -1338,7 +1338,7 @@ impl CodeFooterView { mouse_states.start_all.clone(), move || { Icon::Play - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, if !is_plural { @@ -1366,7 +1366,7 @@ impl CodeFooterView { mouse_states.manage_servers.clone(), move || { Icon::Gear - .to_warpui_icon(ThemeFill::Solid(text_color)) + .to_galaxyui_icon(ThemeFill::Solid(text_color)) .finish() }, "Manage servers", diff --git a/app/src/code/global_buffer_model.rs b/app/src/code/global_buffer_model.rs index 48c0e0c6..a438117d 100644 --- a/app/src/code/global_buffer_model.rs +++ b/app/src/code/global_buffer_model.rs @@ -9,22 +9,22 @@ use futures_util::stream::AbortHandle; use lsp::types::TextDocumentContentChangeEvent; use lsp::{LspManagerModel, LspServerLogLevel, LspServerModel}; use vec1::vec1; -use warp_core::features::FeatureFlag; -use warp_editor::content::buffer::Buffer; -use warp_editor::content::diff::{text_diff, TextDiff}; -use warp_editor::content::edit::PreciseDelta; -use warp_editor::content::version::BufferVersion; -use warp_util::content_version::ContentVersion; -use warp_util::file::{FileId, FileLoadError, FileSaveError}; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle}; +use galaxy_core::features::FeatureFlag; +use galaxy_editor::content::buffer::Buffer; +use galaxy_editor::content::diff::{text_diff, TextDiff}; +use galaxy_editor::content::edit::PreciseDelta; +use galaxy_editor::content::version::BufferVersion; +use galaxy_util::content_version::ContentVersion; +use galaxy_util::file::{FileId, FileLoadError, FileSaveError}; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle}; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { use lsp::LspManagerModelEvent; - use warp_files::{FileModelEvent, FileModel}; - use warp_editor::content::text::IndentBehavior; - use warp_editor::content::text::IndentUnit; - use warp_editor::content::buffer::EditOrigin; + use galaxy_files::{FileModelEvent, FileModel}; + use galaxy_editor::content::text::IndentBehavior; + use galaxy_editor::content::text::IndentUnit; + use galaxy_editor::content::buffer::EditOrigin; } } @@ -682,7 +682,7 @@ impl GlobalBufferModel { // Subscribe to buffer events for LSP sync. let path_clone = path.clone(); ctx.subscribe_to_model(&buffer, move |me, event, ctx| { - use warp_editor::content::buffer::BufferEvent; + use galaxy_editor::content::buffer::BufferEvent; let Some(state) = me.buffers.get(&file_id) else { return; @@ -787,7 +787,7 @@ impl GlobalBufferModel { let path_clone = path.to_path_buf(); ctx.subscribe_to_model(&buffer, move |me, event, ctx| { - use warp_editor::content::buffer::BufferEvent; + use galaxy_editor::content::buffer::BufferEvent; let Some(state) = me.buffers.get(&file_id) else { me.log_lsp_sync_debug( @@ -920,7 +920,7 @@ impl GlobalBufferModel { line_numbers: Vec, ctx: &mut ModelContext, ) -> Option> { - use warp_editor::content::text::LineCount; + use galaxy_editor::content::text::LineCount; if line_numbers.is_empty() { return Some(Vec::new()); diff --git a/app/src/code/icon.rs b/app/src/code/icon.rs index 6b88fb16..3784f79f 100644 --- a/app/src/code/icon.rs +++ b/app/src/code/icon.rs @@ -1,7 +1,7 @@ use std::path::Path; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ assets::asset_cache::AssetSource, elements::{CacheOption, Icon, Image}, Element, diff --git a/app/src/code/inline_diff.rs b/app/src/code/inline_diff.rs index 409fda8c..e2a78a73 100644 --- a/app/src/code/inline_diff.rs +++ b/app/src/code/inline_diff.rs @@ -4,15 +4,15 @@ use std::rc::Rc; use crate::ai::blocklist::inline_action::code_diff_view::DiffSessionType; use ai::diff_validation::DiffType; #[cfg(not(target_family = "wasm"))] -use warp_files::{FileModel, FileModelEvent}; -use warp_util::file::FileId; +use galaxy_files::{FileModel, FileModelEvent}; +use galaxy_util::file::FileId; #[cfg(not(target_family = "wasm"))] -use warp_util::file::FileSaveError; -use warp_util::standardized_path::StandardizedPath; -use warpui::elements::ChildView; +use galaxy_util::file::FileSaveError; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::elements::ChildView; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; -use warpui::{AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; +use galaxyui::SingletonEntity; +use galaxyui::{AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; use super::diff_viewer::DiffViewer; use super::diff_viewer::DisplayMode; diff --git a/app/src/code/language_server_extension.rs b/app/src/code/language_server_extension.rs index 17309e93..e5c00942 100644 --- a/app/src/code/language_server_extension.rs +++ b/app/src/code/language_server_extension.rs @@ -2,15 +2,15 @@ use lsp::{HoverContents, LspServerLogLevel, MarkupKind}; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use num_traits::SaturatingSub; use string_offset::CharOffset; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, theme::{color::internal_colors, WarpTheme}, }; -use warp_editor::{ +use galaxy_editor::{ content::buffer::InitialBufferState, render::{element::VerticalExpansionBehavior, model::Decoration}, }; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, @@ -27,7 +27,7 @@ use crate::editor::InteractionState; use super::editor::view::{CodeEditorRenderOptions, CodeEditorView}; use super::lsp_telemetry::LspTelemetryEvent; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; /// A processed diagnostic with its converted offset range. /// Stored on LocalCodeEditorView and used for both decoration and hover display. @@ -549,7 +549,7 @@ impl LocalCodeEditorView { ScrollbarWidth::Auto, theme.disabled_ui_text_color().into(), theme.active_ui_text_color().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(); diff --git a/app/src/code/language_server_shutdown_manager.rs b/app/src/code/language_server_shutdown_manager.rs index 85af43ed..4d43e01c 100644 --- a/app/src/code/language_server_shutdown_manager.rs +++ b/app/src/code/language_server_shutdown_manager.rs @@ -12,8 +12,8 @@ use std::time::Duration; use futures::stream::AbortHandle; use lsp::LspManagerModel; -use warpui::r#async::Timer; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::r#async::Timer; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::code::local_code_editor::LocalCodeEditorView; use crate::terminal::TerminalView; diff --git a/app/src/code/local_code_editor.rs b/app/src/code/local_code_editor.rs index a08e9ef2..5adf1a79 100644 --- a/app/src/code/local_code_editor.rs +++ b/app/src/code/local_code_editor.rs @@ -20,17 +20,17 @@ use num_traits::SaturatingSub; use pathfinder_geometry::{rect::RectF, vector::Vector2F}; use string_offset::CharOffset; use vec1::Vec1; -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; -use warp_editor::{ +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxy_editor::{ content::{buffer::InitialBufferState, text::IndentUnit}, render::model::{Decoration, LineCount}, }; -use warp_util::{ +use galaxy_util::{ content_version::ContentVersion, file::{FileId, FileLoadError, FileSaveError}, path::to_relative_path, }; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, Hoverable, MainAxisAlignment, @@ -46,7 +46,7 @@ use warpui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; -use warpui::{platform::SaveFilePickerConfiguration, ModelHandle}; +use galaxyui::{platform::SaveFilePickerConfiguration, ModelHandle}; use crate::menu::{Event, Menu, MenuItem, MenuItemFields}; @@ -71,7 +71,7 @@ use pathfinder_color::ColorU; #[cfg(feature = "local_fs")] use repo_metadata::repositories::DetectedRepositories; use vim::vim::{MotionType, VimMode}; -use warp_core::ui::icons::Icon; +use galaxy_core::ui::icons::Icon; use crate::ai::persisted_workspace::{PersistedWorkspace, PersistedWorkspaceEvent}; use crate::workspace::WorkspaceAction; @@ -94,7 +94,7 @@ use super::find_references_view::{FindReferencesView, FindReferencesViewEvent}; use super::language_server_extension::ProcessedDiagnostic; use super::lsp_telemetry::LspTelemetryEvent; use super::ImmediateSaveError; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; type SaveCallback = Box) + Send + Sync + 'static>; @@ -651,7 +651,7 @@ impl LocalCodeEditorView { let window_id = ctx.window_id(); // Create the on-click action based on whether we have a definition - let on_click: Box = if has_different_definition { + let on_click: Box = if has_different_definition { let target_location = definition_locations.first().unwrap().target.clone(); Box::new(move |app| { app.dispatch_typed_action_for_view( @@ -2081,13 +2081,13 @@ impl View for LocalCodeEditorView { "LocalCodeEditorView" } - fn on_focus(&mut self, focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { if focus_ctx.is_self_focused() { self.editor.update(ctx, |editor, ctx| editor.focus(ctx)); } } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { // Rendering the version conflict banner. let base: Box = if self.has_version_conflicts(app) { let appearance = Appearance::as_ref(app); @@ -2284,7 +2284,7 @@ pub fn render_unsaved_changes_banner( Container::new( ConstrainedBox::new( Icon::Warning - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(16.) diff --git a/app/src/code/local_code_editor_wasm.rs b/app/src/code/local_code_editor_wasm.rs index da68e24b..a8dbb358 100644 --- a/app/src/code/local_code_editor_wasm.rs +++ b/app/src/code/local_code_editor_wasm.rs @@ -5,9 +5,9 @@ use std::{ use std::ops::Range; -use warp_editor::{content::buffer::InitialBufferState, render::model::LineCount}; -use warp_util::file::{FileLoadError, FileSaveError}; -use warpui::{ +use galaxy_editor::{content::buffer::InitialBufferState, render::model::LineCount}; +use galaxy_util::file::{FileLoadError, FileSaveError}; +use galaxyui::{ elements::MouseStateHandle, AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; @@ -18,7 +18,7 @@ use super::editor::view::CodeEditorView; use super::ImmediateSaveError; use crate::terminal::TerminalView; use crate::{code::editor::EditorReviewComment, code_review::comments::CommentId}; -use warp_core::ui::appearance::Appearance; +use galaxy_core::ui::appearance::Appearance; pub use super::diff_viewer::DisplayMode; @@ -111,7 +111,7 @@ impl View for LocalCodeEditorView { "LocalCodeEditorView" } fn render(&self, _app: &AppContext) -> Box { - warpui::elements::Empty::new().finish() + galaxyui::elements::Empty::new().finish() } } @@ -128,5 +128,5 @@ pub fn render_unsaved_circle_with_tooltip( _right_margin: f32, _appearance: &Appearance, ) -> Box { - warpui::elements::Empty::new().finish() + galaxyui::elements::Empty::new().finish() } diff --git a/app/src/code/lsp_telemetry.rs b/app/src/code/lsp_telemetry.rs index 118ce5a6..f6237599 100644 --- a/app/src/code/lsp_telemetry.rs +++ b/app/src/code/lsp_telemetry.rs @@ -1,7 +1,7 @@ use serde::{Deserialize, Serialize}; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; /// The source from which the user enabled an LSP server. #[derive(Clone, Debug, Serialize, Deserialize)] @@ -160,7 +160,7 @@ impl TelemetryEvent for LspTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -200,4 +200,4 @@ impl TelemetryEventDesc for LspTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(LspTelemetryEvent); +galaxy_core::register_telemetry_event!(LspTelemetryEvent); diff --git a/app/src/code/mod.rs b/app/src/code/mod.rs index a814b8f4..6b8878a1 100644 --- a/app/src/code/mod.rs +++ b/app/src/code/mod.rs @@ -2,9 +2,9 @@ use pathfinder_geometry::rect::RectF; use std::any::Any; use std::fmt::Debug; use std::ops::AddAssign; -use warp_util::file::FileSaveError; -use warpui::elements::DropTargetData; -use warpui::AppContext; +use galaxy_util::file::FileSaveError; +use galaxyui::elements::DropTargetData; +use galaxyui::AppContext; #[cfg(not(target_family = "wasm"))] pub mod find_references_view; diff --git a/app/src/code/opened_files.rs b/app/src/code/opened_files.rs index d87f1357..998d61ba 100644 --- a/app/src/code/opened_files.rs +++ b/app/src/code/opened_files.rs @@ -4,7 +4,7 @@ use std::{collections::HashMap, path::PathBuf}; use instant::Instant; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[derive(Default, Clone)] pub struct OpenedFilesInRepo(HashMap); diff --git a/app/src/code/view.rs b/app/src/code/view.rs index 8e74510d..be330e0f 100644 --- a/app/src/code/view.rs +++ b/app/src/code/view.rs @@ -28,20 +28,20 @@ use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::vec2f; use std::collections::HashMap; use std::path::{Path, PathBuf}; -use warp_core::channel::{Channel, ChannelState}; -use warp_core::features::FeatureFlag; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::icons::ICON_DIMENSIONS; -use warp_editor::render::element::VerticalExpansionBehavior; -use warp_util::path::LineAndColumnArg; -use warpui::elements::Rect; -use warpui::fonts::Style; -use warpui::text::point::Point; -use warpui::text_layout::ClipConfig; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::icons::ICON_DIMENSIONS; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::elements::Rect; +use galaxyui::fonts::Style; +use galaxyui::text::point::Point; +use galaxyui::text_layout::ClipConfig; #[cfg(feature = "local_fs")] -use warpui::clipboard::ClipboardContent; -use warpui::{ +use galaxyui::clipboard::ClipboardContent; +use galaxyui::{ elements::{ AcceptedByDropTarget, Align, Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Draggable, DraggableState, DropTarget, Empty, @@ -378,8 +378,8 @@ impl CodeView { ctx, ) .with_horizontal_scrollbar_appearance( - warpui::elements::new_scrollable::ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::Auto, + galaxyui::elements::new_scrollable::ScrollableAppearance::new( + galaxyui::elements::ScrollbarWidth::Auto, true, ), ) @@ -419,8 +419,8 @@ impl CodeView { ctx, ) .with_horizontal_scrollbar_appearance( - warpui::elements::new_scrollable::ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::Auto, + galaxyui::elements::new_scrollable::ScrollableAppearance::new( + galaxyui::elements::ScrollbarWidth::Auto, true, ), ) diff --git a/app/src/code/wasm.rs b/app/src/code/wasm.rs index a8a4b532..ea6de9c9 100644 --- a/app/src/code/wasm.rs +++ b/app/src/code/wasm.rs @@ -1,7 +1,7 @@ use std::path::{Path, PathBuf}; -use warp_util::path::LineAndColumnArg; -use warpui::{ +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{ elements::{DraggableState, Empty, MouseStateHandle}, AppContext, Element, Entity, ModelHandle, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/code_review/code_review_header/header_revamp.rs b/app/src/code_review/code_review_header/header_revamp.rs index 7eca8de5..f62e442d 100644 --- a/app/src/code_review/code_review_header/header_revamp.rs +++ b/app/src/code_review/code_review_header/header_revamp.rs @@ -12,13 +12,13 @@ use crate::code_review::diff_selector::DiffSelector; use crate::menu::Menu; use crate::view_components::action_button::ActionButton; use pathfinder_geometry::vector::vec2f; -use warp_core::features::FeatureFlag; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::{ ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Shrinkable, Stack, }; -use warpui::{Element, ViewHandle}; +use galaxyui::{Element, ViewHandle}; use crate::appearance::Appearance; @@ -89,8 +89,8 @@ impl CodeReviewHeader { fn render_file_nav_button(button: &ViewHandle) -> Box { ConstrainedBox::new(ChildView::new(button).finish()) - .with_height(warp_core::ui::icons::ICON_DIMENSIONS) - .with_width(warp_core::ui::icons::ICON_DIMENSIONS) + .with_height(galaxy_core::ui::icons::ICON_DIMENSIONS) + .with_width(galaxy_core::ui::icons::ICON_DIMENSIONS) .finish() } @@ -142,8 +142,8 @@ impl CodeReviewHeader { ) -> Box { let button_container = Container::new( ConstrainedBox::new(ChildView::new(header_dropdown_button).finish()) - .with_height(warp_core::ui::icons::ICON_DIMENSIONS) - .with_width(warp_core::ui::icons::ICON_DIMENSIONS) + .with_height(galaxy_core::ui::icons::ICON_DIMENSIONS) + .with_width(galaxy_core::ui::icons::ICON_DIMENSIONS) .finish(), ) .finish(); diff --git a/app/src/code_review/code_review_header/mod.rs b/app/src/code_review/code_review_header/mod.rs index d0df5631..5fe584ec 100644 --- a/app/src/code_review/code_review_header/mod.rs +++ b/app/src/code_review/code_review_header/mod.rs @@ -14,11 +14,11 @@ use crate::{ view_components::action_button::ActionButton, }; use pathfinder_geometry::vector::vec2f; -use warp_core::features::FeatureFlag; -use warpui::elements::{Hoverable, ParentElement}; -use warpui::platform::Cursor; -use warpui::ui_components::components::{Coords, UiComponent}; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::{Hoverable, ParentElement}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{Coords, UiComponent}; +use galaxyui::{ elements::{ Align, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, @@ -271,7 +271,7 @@ impl CodeReviewHeader { let header_text = Self::get_header_text(diff_state_model, app); Container::new( - warpui::elements::Text::new_inline( + galaxyui::elements::Text::new_inline( header_text, appearance.ui_font_family(), appearance.ui_font_size() + 2., @@ -329,7 +329,7 @@ impl CodeReviewHeader { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Discard all".to_string(), - Icon::ReverseLeft.to_warpui_icon(warp_core::ui::theme::Fill::Solid( + Icon::ReverseLeft.to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( sub_text_color.into_solid(), )), MainAxisSize::Min, @@ -425,7 +425,7 @@ impl CodeReviewHeader { .with_text_and_icon_label(TextAndIcon::new( TextAndIconAlignment::IconFirst, "", - Icon::Paperclip.to_warpui_icon(warp_core::ui::theme::Fill::Solid( + Icon::Paperclip.to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( theme.main_text_color(theme.background()).into(), )), MainAxisSize::Min, @@ -445,7 +445,7 @@ impl CodeReviewHeader { .build() .finish() }) - .with_tooltip_position(warpui::ui_components::button::ButtonTooltipPosition::AboveLeft) + .with_tooltip_position(galaxyui::ui_components::button::ButtonTooltipPosition::AboveLeft) .build() .on_click(|ctx, _, _| { ctx.dispatch_typed_action(CodeReviewAction::AddDiffSetAsContext( @@ -470,8 +470,8 @@ impl CodeReviewHeader { ) -> Box { let button_container = Container::new( ConstrainedBox::new(ChildView::new(header_dropdown_button).finish()) - .with_height(warp_core::ui::icons::ICON_DIMENSIONS) - .with_width(warp_core::ui::icons::ICON_DIMENSIONS) + .with_height(galaxy_core::ui::icons::ICON_DIMENSIONS) + .with_width(galaxy_core::ui::icons::ICON_DIMENSIONS) .finish(), ) .with_margin_left(4.) diff --git a/app/src/code_review/code_review_view.rs b/app/src/code_review/code_review_view.rs index 11f834d4..6e1fddae 100644 --- a/app/src/code_review/code_review_view.rs +++ b/app/src/code_review/code_review_view.rs @@ -110,14 +110,14 @@ use itertools::Itertools; use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::{vec2f, Vector2F}; use rand::{distributions::Alphanumeric, Rng}; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, features::FeatureFlag, safe_error, safe_info, sync_queue::SyncQueue, ui::theme::color::internal_colors, }; -use warpui::{ +use galaxyui::{ clipboard::ClipboardContent, elements::{ new_scrollable::{ @@ -139,16 +139,16 @@ use warpui::{ units::Pixels, AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; -use warpui::{ +use galaxyui::{ elements::{Clipped, MainAxisSize, Shrinkable}, text_layout::{default_compute_baseline_position, ClipConfig}, }; -use warpui::{ +use galaxyui::{ elements::{Hoverable, SavePosition}, platform::Cursor, ui_components::components::UiComponent, }; -use warpui::{ +use galaxyui::{ fonts::{Properties, Weight}, r#async::SpawnedFutureHandle, ModelHandle, WeakViewHandle, @@ -192,14 +192,14 @@ use crate::code::ShowFindReferencesCard; use crate::code_review::comments::CommentId; use crate::ui_components::render_file_search_row::{render_file_search_row, FileSearchRowOptions}; use crate::workspace::view::right_panel::{ReviewDestination, ReviewSubmissionResult}; -use warp_editor::model::CoreEditorModel; +use galaxy_editor::model::CoreEditorModel; #[cfg(not(target_family = "wasm"))] -use warp_editor::render::model::AutoScrollMode; -use warp_editor::{ +use galaxy_editor::render::model::AutoScrollMode; +use galaxy_editor::{ content::buffer::{AutoScrollBehavior, InitialBufferState, SelectionOffsets}, render::{element::VerticalExpansionBehavior, model::LineCount}, }; -use warp_util::{ +use galaxy_util::{ content_version::ContentVersion, file::{FileLoadError, FileSaveError}, path::LineAndColumnArg, @@ -237,7 +237,7 @@ pub fn render_file_navigation_button( on_click: F, ) -> Box where - F: Fn(&mut warpui::EventContext<'_>) + 'static, + F: Fn(&mut galaxyui::EventContext<'_>) + 'static, { let ui_builder = appearance.ui_builder().clone(); let icon_color = appearance @@ -264,9 +264,9 @@ where .build() .finish() }) - .with_tooltip_position(warpui::ui_components::button::ButtonTooltipPosition::BelowLeft) + .with_tooltip_position(galaxyui::ui_components::button::ButtonTooltipPosition::BelowLeft) .build() - .on_click(move |ctx: &mut warpui::EventContext<'_>, _, _| { + .on_click(move |ctx: &mut galaxyui::EventContext<'_>, _, _| { on_click(ctx); }); @@ -3953,7 +3953,7 @@ impl CodeReviewView { let header_text = "Loading open changes..."; let loading_icon = Icon::Loading - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(); @@ -4091,7 +4091,7 @@ impl CodeReviewView { Container::new( ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(), @@ -4149,7 +4149,7 @@ impl CodeReviewView { .with_text_and_icon_label(TextAndIcon::new( TextAndIconAlignment::IconFirst, " Retry".to_string(), - Icon::Refresh.to_warpui_icon(warp_core::ui::theme::Fill::Solid( + Icon::Refresh.to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( theme.main_text_color(theme.background()).into(), )), MainAxisSize::Min, @@ -4201,7 +4201,7 @@ impl CodeReviewView { Container::new( ConstrainedBox::new( Icon::FolderClosed - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(), @@ -4281,7 +4281,7 @@ impl CodeReviewView { Container::new( ConstrainedBox::new( Icon::FolderClosed - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(), @@ -4385,7 +4385,7 @@ impl CodeReviewView { state: &LoadedState, appearance: &Appearance, is_in_split_pane: bool, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let top_section = Flex::column() .with_cross_axis_alignment(CrossAxisAlignment::Start) @@ -4450,7 +4450,7 @@ impl CodeReviewView { Container::new( ConstrainedBox::new( Icon::Diff - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(), @@ -4777,7 +4777,7 @@ impl CodeReviewView { // Add file icon let file_icon = Icon::File - .to_warpui_icon(warp_core::ui::theme::Fill::Solid( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_6(theme), )) .finish(); @@ -4801,7 +4801,7 @@ impl CodeReviewView { appearance.ui_font_size(), ) .with_color( - warp_core::ui::theme::Fill::Solid(internal_colors::neutral_6(theme)).into(), + galaxy_core::ui::theme::Fill::Solid(internal_colors::neutral_6(theme)).into(), ) .with_line_height_ratio(appearance.line_height_ratio()) .with_style(Properties::default().weight(Weight::Semibold)) @@ -4825,7 +4825,7 @@ impl CodeReviewView { ) .with_style(Properties::default().weight(Weight::Bold)) .with_color( - warp_core::ui::theme::Fill::Solid(internal_colors::neutral_6(theme)).into(), + galaxy_core::ui::theme::Fill::Solid(internal_colors::neutral_6(theme)).into(), ) .finish(), ) @@ -4880,7 +4880,7 @@ impl CodeReviewView { axis_config, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_vertical_scrollbar(ScrollableAppearance::new(ScrollbarWidth::Auto, false)) .with_propagate_mousewheel_if_not_handled(true) @@ -4939,7 +4939,7 @@ impl CodeReviewView { .with_corner_radius(CornerRadius::with_all(Radius::Pixels(4.))); if mouse_state.is_hovered() { - container = container.with_background(warp_core::ui::theme::Fill::Solid( + container = container.with_background(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_3(appearance.theme()), )) } @@ -4960,7 +4960,7 @@ impl CodeReviewView { }, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_vertical_scrollbar(ScrollableAppearance::new(ScrollbarWidth::Auto, false)) .finish(); @@ -5220,9 +5220,9 @@ impl CodeReviewView { // We effectively make this an absolutely positioned header. OffsetPositioning::offset_from_parent( vec2f(0., scroll_offset_from_top.offset_from_start().as_f32()), - warpui::elements::ParentOffsetBounds::ParentByPosition, - warpui::elements::ParentAnchor::TopMiddle, - warpui::elements::ChildAnchor::TopMiddle, + galaxyui::elements::ParentOffsetBounds::ParentByPosition, + galaxyui::elements::ParentAnchor::TopMiddle, + galaxyui::elements::ChildAnchor::TopMiddle, ), ); } @@ -5491,7 +5491,7 @@ impl CodeReviewView { Text::new("•", appearance.ui_font_family(), appearance.ui_font_size()) .with_style(Properties::default().weight(Weight::Bold)) .with_color( - warp_core::ui::theme::Fill::Solid(internal_colors::neutral_6( + galaxy_core::ui::theme::Fill::Solid(internal_colors::neutral_6( appearance.theme(), )) .into(), @@ -5519,7 +5519,7 @@ impl CodeReviewView { .with_horizontal_padding(8.) .with_vertical_padding(4.) .with_border( - Border::all(1.).with_border_fill(warp_core::ui::theme::Fill::Solid( + Border::all(1.).with_border_fill(galaxy_core::ui::theme::Fill::Solid( internal_colors::neutral_4(appearance.theme()), )), ) @@ -5816,7 +5816,7 @@ impl CodeReviewView { }, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_vertical_scrollbar(ScrollableAppearance::new(ScrollbarWidth::Auto, false)) .finish(); @@ -6346,7 +6346,7 @@ impl CodeReviewView { fn insert_diff_hunk_as_context( &mut self, file_path: PathBuf, - line_range: Range, + line_range: Range, ctx: &mut ViewContext, ) { let Some(repo_path) = self.repo_path() else { @@ -6519,7 +6519,7 @@ impl CodeReviewView { fn extract_diff_hunk_data( &self, file_path: &PathBuf, - line_range: &Range, + line_range: &Range, ) -> Option<(DiffHunk, u32, u32)> { if let CodeReviewViewState::Loaded(state) = self.state() { // Find the file state that matches the given file path @@ -6648,7 +6648,7 @@ impl CodeReviewView { fn restore_cursor_position( editor: &CodeEditorView, selections: Vec, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { if let Ok(selections_vec1) = Vec1::try_from_vec(selections) { editor.model.update(ctx, |model, ctx| { diff --git a/app/src/code_review/code_review_view_integration.rs b/app/src/code_review/code_review_view_integration.rs index b98d298a..5c7b53c8 100644 --- a/app/src/code_review/code_review_view_integration.rs +++ b/app/src/code_review/code_review_view_integration.rs @@ -1,10 +1,10 @@ use std::path::{Path, PathBuf}; -use warp_editor::model::CoreEditorModel; -use warp_editor::render::model::{ +use galaxy_editor::model::CoreEditorModel; +use galaxy_editor::render::model::{ BlockItem, HitTestOptions, LineCount, Location, RenderLineLocation, }; -use warpui::{units::Pixels, AppContext, ViewContext}; +use galaxyui::{units::Pixels, AppContext, ViewContext}; use super::{CodeReviewView, CodeReviewViewState, FILE_HEADER_HEIGHT}; use crate::code::editor::line::EditorLineLocation; diff --git a/app/src/code_review/code_review_view_tests.rs b/app/src/code_review/code_review_view_tests.rs index 0303d5f9..4207f5b4 100644 --- a/app/src/code_review/code_review_view_tests.rs +++ b/app/src/code_review/code_review_view_tests.rs @@ -33,24 +33,24 @@ use lsp::LspManagerModel; use repo_metadata::repositories::DetectedRepositories; use std::path::PathBuf; use std::sync::Arc; -use warp_core::features::FeatureFlag; -use warp_core::ui::appearance::Appearance; -use warp_editor::content::buffer::InitialBufferState; -use warp_editor::render::element::VerticalExpansionBehavior; -use warp_editor::render::model::LineCount; -use warpui::elements::{Empty, MouseStateHandle}; -use warpui::platform::WindowStyle; -use warpui::{App, ViewHandle}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::content::buffer::InitialBufferState; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxy_editor::render::model::LineCount; +use galaxyui::elements::{Empty, MouseStateHandle}; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, ViewHandle}; #[derive(Default)] struct TestView; -impl warpui::Entity for TestView { +impl galaxyui::Entity for TestView { type Event = (); } -impl warpui::View for TestView { - fn render(&self, _: &warpui::AppContext) -> Box { +impl galaxyui::View for TestView { + fn render(&self, _: &galaxyui::AppContext) -> Box { Empty::new().finish() } @@ -59,7 +59,7 @@ impl warpui::View for TestView { } } -impl warpui::TypedActionView for TestView { +impl galaxyui::TypedActionView for TestView { type Action = (); } @@ -244,7 +244,7 @@ use crate::view_components::action_button::{ActionButton, NakedTheme}; struct TestContext { repo_path: PathBuf, #[allow(dead_code)] - window_id: warpui::WindowId, + window_id: galaxyui::WindowId, state: LoadedState, code_review_view: ViewHandle, } @@ -291,7 +291,7 @@ impl TestContext { /// Must be called within an App context. fn create_loaded_state_with_editors( app: &mut App, - window_id: warpui::WindowId, + window_id: galaxyui::WindowId, file_editors: Vec<(PathBuf, ViewHandle)>, ) -> LoadedState { let file_states = file_editors diff --git a/app/src/code_review/comment_list_view.rs b/app/src/code_review/comment_list_view.rs index 84c25cb0..188a7bd7 100644 --- a/app/src/code_review/comment_list_view.rs +++ b/app/src/code_review/comment_list_view.rs @@ -26,16 +26,16 @@ use pathfinder_geometry::vector::vec2f; use std::path::PathBuf; use string_offset::CharOffset; use vec1::vec1; -use warp_core::features::FeatureFlag; -use warp_core::ui::color::blend::Blend; -use warp_editor::model::CoreEditorModel; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::color::blend::Blend; +use galaxy_editor::model::CoreEditorModel; -use warp_core::ui::theme::color::internal_colors::{ +use galaxy_core::ui::theme::color::internal_colors::{ accent_overlay_2, accent_overlay_3, neutral_1, neutral_3, neutral_4, neutral_6, text_main, text_sub, }; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ clipboard::ClipboardContent, elements::{ new_scrollable::{NewScrollable, ScrollableAppearance, SingleAxisConfig}, @@ -602,7 +602,7 @@ impl CommentListView { }, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_vertical_scrollbar(ScrollableAppearance::new(ScrollbarWidth::Auto, false)) .with_propagate_mousewheel_if_not_handled(true) @@ -691,7 +691,7 @@ impl CommentListView { }; let icon_element = icon - .to_warpui_icon(warp_core::ui::theme::Fill::Solid(text_sub( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid(text_sub( theme, neutral_1(theme), ))) @@ -773,7 +773,7 @@ impl CommentListView { false, /* bottom */ true, /* right */ ) - .with_border_fill(warp_core::ui::theme::Fill::Solid(neutral_4(theme))), + .with_border_fill(galaxy_core::ui::theme::Fill::Solid(neutral_4(theme))), ) .finish() } @@ -835,7 +835,7 @@ impl CommentListView { }; let icon_element = icon - .to_warpui_icon(warp_core::ui::theme::Fill::Solid(text_sub( + .to_galaxyui_icon(galaxy_core::ui::theme::Fill::Solid(text_sub( theme, neutral_3(theme), ))) @@ -1154,8 +1154,8 @@ impl View for CommentListView { Resizable::new(self.view_state.resizable_state.clone(), panel) .with_dragbar_side(DragBarSide::Top) - .with_dragbar_color(warpui::elements::Fill::Solid( - warpui::color::ColorU::transparent_black(), + .with_dragbar_color(galaxyui::elements::Fill::Solid( + galaxyui::color::ColorU::transparent_black(), )) .with_bounds_callback(Box::new(|window_size| (100.0, window_size.y() * 0.8))) .on_resize(|ctx, _| { diff --git a/app/src/code_review/comment_rendering.rs b/app/src/code_review/comment_rendering.rs index ecb42c99..8fb072a8 100644 --- a/app/src/code_review/comment_rendering.rs +++ b/app/src/code_review/comment_rendering.rs @@ -18,20 +18,20 @@ use crate::editor::InteractionState; use crate::notebooks::editor::view::RichTextEditorView; use crate::util::time_format::human_readable_approx_duration; use pathfinder_color::ColorU; -use warp_core::ui::theme::color::internal_colors::{neutral_1, neutral_2, text_sub}; -use warp_core::ui::theme::Fill; -use warp_editor::content::buffer::InitialBufferState; -use warp_editor::render::element::VerticalExpansionBehavior; -use warpui::elements::new_scrollable::ScrollableAppearance; -use warpui::elements::ScrollbarWidth; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors::{neutral_1, neutral_2, text_sub}; +use galaxy_core::ui::theme::Fill; +use galaxy_editor::content::buffer::InitialBufferState; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxyui::elements::new_scrollable::ScrollableAppearance; +use galaxyui::elements::ScrollbarWidth; +use galaxyui::elements::{ Border, ChildView, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::platform::Cursor; -use warpui::text_layout::ClipConfig; -use warpui::units::Pixels; -use warpui::{AppContext, Element, EventContext, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::ClipConfig; +use galaxyui::units::Pixels; +use galaxyui::{AppContext, Element, EventContext, SingletonEntity, View, ViewContext, ViewHandle}; /// Configuration for making the comment header clickable. pub(crate) struct HeaderClickHandler { @@ -43,7 +43,7 @@ pub(crate) struct HeaderClickHandler { /// (rounded corners, neutral background, outline border). fn comment_card_container( content: Box, - theme: &warp_core::ui::theme::WarpTheme, + theme: &galaxy_core::ui::theme::WarpTheme, ) -> Box { Container::new(content) .with_corner_radius(CornerRadius::with_all(Radius::Pixels(8.))) diff --git a/app/src/code_review/comments/batch.rs b/app/src/code_review/comments/batch.rs index 7cbc2cc3..01997da7 100644 --- a/app/src/code_review/comments/batch.rs +++ b/app/src/code_review/comments/batch.rs @@ -3,9 +3,9 @@ use super::{ }; use crate::{code::editor::EditorReviewComment, code_review::diff_state::DiffMode}; use std::{collections::HashMap, path::Path}; -use warp_core::features::FeatureFlag; -use warp_editor::render::model::LineCount; -use warpui::{Entity, ModelContext}; +use galaxy_core::features::FeatureFlag; +use galaxy_editor::render::model::LineCount; +use galaxyui::{Entity, ModelContext}; #[derive(Clone, Debug, PartialEq, Eq)] pub enum ReviewCommentBatchEvent { diff --git a/app/src/code_review/comments/batch_tests.rs b/app/src/code_review/comments/batch_tests.rs index 10978276..e3152976 100644 --- a/app/src/code_review/comments/batch_tests.rs +++ b/app/src/code_review/comments/batch_tests.rs @@ -1,6 +1,6 @@ use chrono::Local; -use warp_editor::render::model::LineCount; -use warpui::App; +use galaxy_editor::render::model::LineCount; +use galaxyui::App; use crate::code::editor::line::EditorLineLocation; use crate::code_review::comments::{ diff --git a/app/src/code_review/comments/comment.rs b/app/src/code_review/comments/comment.rs index 1f13d6d9..d2bf55ad 100644 --- a/app/src/code_review/comments/comment.rs +++ b/app/src/code_review/comments/comment.rs @@ -5,7 +5,7 @@ use crate::{ use chrono::{DateTime, Local}; use std::fmt::{Display, Formatter}; use std::path::PathBuf; -use warp_editor::render::model::LineCount; +use galaxy_editor::render::model::LineCount; use warp_multi_agent_api::{self as api}; #[derive(Clone, Debug, Default, PartialEq, Eq)] diff --git a/app/src/code_review/comments/diff_hunk_parser.rs b/app/src/code_review/comments/diff_hunk_parser.rs index 69b55efb..f81f6d67 100644 --- a/app/src/code_review/comments/diff_hunk_parser.rs +++ b/app/src/code_review/comments/diff_hunk_parser.rs @@ -2,7 +2,7 @@ use ai::agent::action::CommentSide; use num_traits::SaturatingSub; -use warp_editor::render::model::LineCount; +use galaxy_editor::render::model::LineCount; use crate::{ code::editor::line::EditorLineLocation, diff --git a/app/src/code_review/context.rs b/app/src/code_review/context.rs index 76517221..2ae9a336 100644 --- a/app/src/code_review/context.rs +++ b/app/src/code_review/context.rs @@ -1,7 +1,7 @@ use crate::ai::agent::DiffSetHunk; use crate::code_review::diff_state::{DiffLineType, FileDiff}; use std::collections::HashMap; -use warp_editor::render::model::LineCount; +use galaxy_editor::render::model::LineCount; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { @@ -9,7 +9,7 @@ cfg_if::cfg_if! { use crate::ai::agent::{AIAgentAttachment, CurrentHead, DiffBase}; use crate::ai::blocklist::BlocklistAIContextModel; use crate::code_review::{diff_state::DiffMode, DiffSetScope}; - use warpui::{AppContext, ModelHandle}; + use galaxyui::{AppContext, ModelHandle}; } } diff --git a/app/src/code_review/diff_menu.rs b/app/src/code_review/diff_menu.rs index 63eeab3d..18443105 100644 --- a/app/src/code_review/diff_menu.rs +++ b/app/src/code_review/diff_menu.rs @@ -3,9 +3,9 @@ use std::cmp; use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; -use warp_core::ui::theme::Fill; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ color::ColorU, elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, @@ -334,7 +334,7 @@ impl CodeReviewDiffMenu { let check_slot: Box = if target.is_selected { ConstrainedBox::new( - Icon::Check.to_warpui_icon(Fill::Solid(text_color)).finish(), + Icon::Check.to_galaxyui_icon(Fill::Solid(text_color)).finish(), ) .with_width(CHECK_SLOT_SIZE) .with_height(CHECK_SLOT_SIZE) @@ -415,7 +415,7 @@ impl CodeReviewDiffMenu { ScrollbarWidth::None, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_padding_end(0.) .with_padding_start(0.); diff --git a/app/src/code_review/diff_selector.rs b/app/src/code_review/diff_selector.rs index e2b26024..5143df83 100644 --- a/app/src/code_review/diff_selector.rs +++ b/app/src/code_review/diff_selector.rs @@ -1,8 +1,8 @@ //! Trigger button + [`CodeReviewDiffMenu`] overlay for picking the diff //! target in the code review header. use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, @@ -180,7 +180,7 @@ impl View for DiffSelector { // for short labels. let icon = ConstrainedBox::new( Icon::SwitchHorizontal01 - .to_warpui_icon(Fill::Solid(text_color)) + .to_galaxyui_icon(Fill::Solid(text_color)) .finish(), ) .with_width(15.) diff --git a/app/src/code_review/diff_state.rs b/app/src/code_review/diff_state.rs index e8372d07..e7f1ae2c 100644 --- a/app/src/code_review/diff_state.rs +++ b/app/src/code_review/diff_state.rs @@ -22,8 +22,8 @@ cfg_if::cfg_if! { } } #[cfg(not(target_arch = "wasm32"))] -use warpui::AppContext; -use warpui::{r#async::SpawnedFutureHandle, ModelContext}; +use galaxyui::AppContext; +use galaxyui::{r#async::SpawnedFutureHandle, ModelContext}; use crate::code_review::diff_size_limits::DiffSize; use crate::features::FeatureFlag; @@ -38,19 +38,19 @@ use super::diff_size_limits::compute_diff_size; use crate::code_review::CodeReviewTelemetryEvent; #[cfg(not(target_family = "wasm"))] -use warp_core::channel::ChannelState; -use warp_core::{safe_warn, send_telemetry_from_ctx}; +use galaxy_core::channel::ChannelState; +use galaxy_core::{safe_warn, send_telemetry_from_ctx}; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { use repo_metadata::repositories::{DetectedRepositories, RepoDetectionSource}; - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; use repo_metadata::{ repository::{RepositorySubscriber, SubscriberId}, RepoMetadataError, Repository, RepositoryUpdate, }; use async_channel::Sender; - use warpui::ModelHandle; + use galaxyui::ModelHandle; } } #[cfg(all(feature = "local_fs", feature = "local_tty"))] @@ -605,7 +605,7 @@ impl DiffStateModel { } #[cfg(not(feature = "local_fs"))] - pub fn is_git_operation_blocked(&self, _app: &warpui::AppContext) -> bool { + pub fn is_git_operation_blocked(&self, _app: &galaxyui::AppContext) -> bool { false } /// Get comprehensive git diff information including uncommitted stats, main branch stats, and main branch name @@ -658,7 +658,7 @@ impl DiffStateModel { } #[cfg(not(feature = "local_fs"))] - pub fn active_repository_path(&self, _app: &warpui::AppContext) -> Option { + pub fn active_repository_path(&self, _app: &galaxyui::AppContext) -> Option { None } @@ -1586,7 +1586,7 @@ impl DiffStateModel { let n = file.read(&mut buffer)?; buffer.truncate(n); - if warp_util::file_type::is_buffer_binary(&buffer) { + if galaxy_util::file_type::is_buffer_binary(&buffer) { return Ok(None); } file.rewind()?; @@ -2967,7 +2967,7 @@ pub enum DiffStateModelEvent { DiffModeChanged { should_fetch_base: bool }, } -impl warpui::Entity for DiffStateModel { +impl galaxyui::Entity for DiffStateModel { type Event = DiffStateModelEvent; } diff --git a/app/src/code_review/editor_state.rs b/app/src/code_review/editor_state.rs index 3623dc45..aaf1384a 100644 --- a/app/src/code_review/editor_state.rs +++ b/app/src/code_review/editor_state.rs @@ -1,5 +1,5 @@ -use warpui::elements::MouseStateHandle; -use warpui::{AppContext, ViewHandle}; +use galaxyui::elements::MouseStateHandle; +use galaxyui::{AppContext, ViewHandle}; use crate::code::local_code_editor::LocalCodeEditorView; diff --git a/app/src/code_review/file_invalidation_queue.rs b/app/src/code_review/file_invalidation_queue.rs index 5364ebb3..a70f654a 100644 --- a/app/src/code_review/file_invalidation_queue.rs +++ b/app/src/code_review/file_invalidation_queue.rs @@ -2,7 +2,7 @@ use std::future::Future; use std::path::PathBuf; use std::pin::Pin; -use warp_core::sync_queue::{IsTransientError, SyncQueueTaskTrait}; +use galaxy_core::sync_queue::{IsTransientError, SyncQueueTaskTrait}; use super::diff_state::{DiffMode, DiffStateModel, FileDiffAndContent}; diff --git a/app/src/code_review/find_model.rs b/app/src/code_review/find_model.rs index 3d88ff81..ef114a06 100644 --- a/app/src/code_review/find_model.rs +++ b/app/src/code_review/find_model.rs @@ -6,15 +6,15 @@ use std::collections::HashMap; use std::ops::Range; use string_offset::CharOffset; #[cfg(not(target_family = "wasm"))] -use warp_core::channel::ChannelState; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::channel::ChannelState; +use galaxy_core::send_telemetry_from_ctx; #[cfg(not(target_family = "wasm"))] -use warp_editor::content::find::SearchConfig; +use galaxy_editor::content::find::SearchConfig; #[cfg(not(target_family = "wasm"))] -use warp_editor::search::Searcher; -use warp_editor::search::{RestorableSearchResults, SelectedResult}; -use warpui::WeakViewHandle; -use warpui::{ +use galaxy_editor::search::Searcher; +use galaxy_editor::search::{RestorableSearchResults, SelectedResult}; +use galaxyui::WeakViewHandle; +use galaxyui::{ r#async::SpawnedFutureHandle, AppContext, Entity, EntityId, ModelContext, ViewHandle, }; @@ -222,7 +222,7 @@ impl CodeReviewFindModel { &self, editor_id: EntityId, ctx: &AppContext, - ) -> Option> { + ) -> Option> { let view = self.weak_view_handle.upgrade(ctx); if view.is_none() { if ChannelState::enable_debug_features() { diff --git a/app/src/code_review/find_model_tests.rs b/app/src/code_review/find_model_tests.rs index 761bd7f8..76160abb 100644 --- a/app/src/code_review/find_model_tests.rs +++ b/app/src/code_review/find_model_tests.rs @@ -20,22 +20,22 @@ use repo_metadata::repositories::DetectedRepositories; use std::path::PathBuf; use std::sync::Arc; use string_offset::CharOffset; -use warp_core::ui::appearance::Appearance; -use warp_editor::content::buffer::InitialBufferState; -use warp_editor::render::element::VerticalExpansionBehavior; -use warpui::elements::Empty; -use warpui::platform::WindowStyle; -use warpui::{App, Element as _, ModelHandle, ViewHandle}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::content::buffer::InitialBufferState; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxyui::elements::Empty; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, Element as _, ModelHandle, ViewHandle}; #[derive(Default)] struct TestView; -impl warpui::Entity for TestView { +impl galaxyui::Entity for TestView { type Event = (); } -impl warpui::View for TestView { - fn render(&self, _: &warpui::AppContext) -> Box { +impl galaxyui::View for TestView { + fn render(&self, _: &galaxyui::AppContext) -> Box { Empty::new().finish() } @@ -44,7 +44,7 @@ impl warpui::View for TestView { } } -impl warpui::TypedActionView for TestView { +impl galaxyui::TypedActionView for TestView { type Action = (); } diff --git a/app/src/code_review/git_dialog/commit.rs b/app/src/code_review/git_dialog/commit.rs index 767a19b9..58c75b94 100644 --- a/app/src/code_review/git_dialog/commit.rs +++ b/app/src/code_review/git_dialog/commit.rs @@ -4,8 +4,8 @@ use std::path::Path; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ ChildView, ClippedScrollStateHandle, Container, CornerRadius, CrossAxisAlignment, Element, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, diff --git a/app/src/code_review/git_dialog/mod.rs b/app/src/code_review/git_dialog/mod.rs index fbf41506..785be0b6 100644 --- a/app/src/code_review/git_dialog/mod.rs +++ b/app/src/code_review/git_dialog/mod.rs @@ -12,9 +12,9 @@ use std::path::PathBuf; use pathfinder_geometry::vector::vec2f; -use warp_core::features::FeatureFlag; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, Hoverable, @@ -68,7 +68,7 @@ pub fn init(ctx: &mut AppContext) { ctx.register_fixed_bindings(vec![FixedBinding::new( "escape", GitDialogAction::Cancel, - warpui::id!("GitDialog"), + galaxyui::id!("GitDialog"), )]); } @@ -370,7 +370,7 @@ fn render_file_changes_box( ScrollbarWidth::Auto, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), ) diff --git a/app/src/code_review/git_dialog/pr.rs b/app/src/code_review/git_dialog/pr.rs index f7d51290..e26553d1 100644 --- a/app/src/code_review/git_dialog/pr.rs +++ b/app/src/code_review/git_dialog/pr.rs @@ -4,8 +4,8 @@ //! with expandable per-file stats. On confirm, spawns `create_pr` and shows //! a toast with a clickable "Open PR" link. -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ ClippedScrollStateHandle, Container, Element, Flex, MouseStateHandle, ParentElement, Text, }, diff --git a/app/src/code_review/git_dialog/push.rs b/app/src/code_review/git_dialog/push.rs index 59896008..3603a34e 100644 --- a/app/src/code_review/git_dialog/push.rs +++ b/app/src/code_review/git_dialog/push.rs @@ -7,8 +7,8 @@ use std::collections::HashMap; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Border, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, Hoverable, MainAxisAlignment, @@ -356,7 +356,7 @@ fn render_commits_section(state: &PushState, appearance: &Appearance) -> Box impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -399,4 +399,4 @@ impl TelemetryEventDesc for CodeReviewTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(CodeReviewTelemetryEvent); +galaxy_core::register_telemetry_event!(CodeReviewTelemetryEvent); diff --git a/app/src/coding_entrypoints/clone_repo_view.rs b/app/src/coding_entrypoints/clone_repo_view.rs index ad4f8fb0..86b75a45 100644 --- a/app/src/coding_entrypoints/clone_repo_view.rs +++ b/app/src/coding_entrypoints/clone_repo_view.rs @@ -1,7 +1,7 @@ use crate::coding_entrypoints::glowing_editor::{GlowingEditor, GlowingEditorEvent}; use crate::TelemetryEvent; -use warp_core::send_telemetry_from_ctx; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::{ elements::{ChildView, Flex, ParentElement as _}, AppContext, Element, Entity, FocusContext, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/coding_entrypoints/create_project_view.rs b/app/src/coding_entrypoints/create_project_view.rs index 65d2cd73..59a9d5b3 100644 --- a/app/src/coding_entrypoints/create_project_view.rs +++ b/app/src/coding_entrypoints/create_project_view.rs @@ -3,9 +3,9 @@ use crate::appearance::Appearance; use crate::coding_entrypoints::glowing_editor::{GlowingEditor, GlowingEditorEvent}; use crate::settings::PrivacySettings; use crate::TelemetryEvent; -use warp_core::{send_telemetry_from_ctx, ui::icons::Icon}; -use warpui::elements::{ChildView, Expanded, Fill, MainAxisAlignment, MainAxisSize}; -use warpui::{ +use galaxy_core::{send_telemetry_from_ctx, ui::icons::Icon}; +use galaxyui::elements::{ChildView, Expanded, Fill, MainAxisAlignment, MainAxisSize}; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MouseStateHandle, ParentElement as _, Radius, Text, @@ -129,7 +129,7 @@ impl CreateProjectView { .with_main_axis_size(MainAxisSize::Max) .with_children([ Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_height(font_size) .with_width(font_size) .finish(), diff --git a/app/src/coding_entrypoints/glowing_editor.rs b/app/src/coding_entrypoints/glowing_editor.rs index c8cd2718..365a1a6e 100644 --- a/app/src/coding_entrypoints/glowing_editor.rs +++ b/app/src/coding_entrypoints/glowing_editor.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::Vector2F; -use warp_core::ui::{appearance::Appearance, Icon}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, Icon}; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, MainAxisAlignment, ParentElement as _, Radius, Shrinkable, @@ -157,7 +157,7 @@ impl View for GlowingEditor { let agent_icon = Container::new( ConstrainedBox::new( Icon::AgentMode - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish(), ) .with_height(font_size) diff --git a/app/src/coding_entrypoints/project_buttons.rs b/app/src/coding_entrypoints/project_buttons.rs index bc52c43c..c76cf71d 100644 --- a/app/src/coding_entrypoints/project_buttons.rs +++ b/app/src/coding_entrypoints/project_buttons.rs @@ -2,11 +2,11 @@ use std::borrow::Cow; use pathfinder_color::ColorU; use pathfinder_geometry::vector::Vector2F; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{appearance::Appearance, color::blend::Blend as _, theme::color::internal_colors, Icon}, }; -use warpui::{ +use galaxyui::{ elements::{ ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Expanded, Flex, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, @@ -24,7 +24,7 @@ use crate::util::bindings::{keybinding_name_to_display_string, BindingGroup, Cus const BUTTON_MIN_WIDTH: f32 = 149.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([ EditableBinding::new( @@ -106,7 +106,7 @@ impl ProjectButtons { Hoverable::new(mouse_state, move |state| { let icon_el = Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_height(20.) .with_width(20.) .finish(), diff --git a/app/src/completer/js.rs b/app/src/completer/js.rs index 115c25bb..eacdee3a 100644 --- a/app/src/completer/js.rs +++ b/app/src/completer/js.rs @@ -5,8 +5,8 @@ use async_trait::async_trait; use ipc::ServiceCaller; use std::sync::Arc; -use warp_completer::completer::{JsExecutionContext, JsExecutionError}; -use warp_js::{JsFunctionId, SerializedJsValue}; +use galaxy_completer::completer::{JsExecutionContext, JsExecutionError}; +use galaxy_js::{JsFunctionId, SerializedJsValue}; use crate::plugin::service::{ CallJsFunctionRequest, CallJsFunctionResponse, CallJsFunctionService, diff --git a/app/src/completer/mod.rs b/app/src/completer/mod.rs index d8929dc9..3094a971 100644 --- a/app/src/completer/mod.rs +++ b/app/src/completer/mod.rs @@ -11,14 +11,14 @@ use async_trait::async_trait; use lazy_static::lazy_static; use smol_str::SmolStr; use typed_path::{TypedPath, TypedPathBuf}; -use warp_completer::completer::{ +use galaxy_completer::completer::{ CommandExitStatus, CommandOutput, CompletionContext, EngineDirEntry, EngineFileType, GeneratorContext, PathCompletionContext, PathSeparators, TopLevelCommandCaseSensitivity, }; -use warp_completer::signatures::CommandRegistry; -use warp_core::features::FeatureFlag; -use warp_util::path::{EscapeChar, ShellFamily}; -use warpui::{AppContext, SingletonEntity}; +use galaxy_completer::signatures::CommandRegistry; +use galaxy_core::features::FeatureFlag; +use galaxy_util::path::{EscapeChar, ShellFamily}; +use galaxyui::{AppContext, SingletonEntity}; use crate::safe_warn; use crate::terminal::model::session::{ExecuteCommandOptions, Session, SessionType}; @@ -320,10 +320,10 @@ impl CompletionContext for SessionContext { } #[cfg(feature = "completions_v2")] - fn js_context(&self) -> Option<&dyn warp_completer::completer::JsExecutionContext> { + fn js_context(&self) -> Option<&dyn galaxy_completer::completer::JsExecutionContext> { self.js_ctx .as_ref() - .map(|ctx| -> &dyn warp_completer::completer::JsExecutionContext { ctx }) + .map(|ctx| -> &dyn galaxy_completer::completer::JsExecutionContext { ctx }) } fn shell_family(&self) -> Option { @@ -459,7 +459,7 @@ fn ls_script_for_dir(directory: &TypedPath) -> Option { log::warn!("Non-unicode character found in path: `{directory:?}`"); return None; }; - let escaped_dir = warp_util::path::ShellFamily::Posix.shell_escape(dir_str); + let escaped_dir = galaxy_util::path::ShellFamily::Posix.shell_escape(dir_str); // Get all directories with -print0, which makes all items end in `\0` (null character) // Get all files with -print0, which makes all items end in `\0` diff --git a/app/src/completer/test.rs b/app/src/completer/test.rs index b1f743ed..c59a78b9 100644 --- a/app/src/completer/test.rs +++ b/app/src/completer/test.rs @@ -6,10 +6,10 @@ use itertools::Itertools; use typed_path::TypedPathBuf; #[cfg(windows)] use typed_path::{UnixComponent, WindowsComponent, WindowsPrefix}; -use warp_completer::completer::PathCompletionContext; -use warp_completer::completer::{CompletionContext, EngineDirEntry}; -use warp_completer::signatures::CommandRegistry; -use warpui::App; +use galaxy_completer::completer::PathCompletionContext; +use galaxy_completer::completer::{CompletionContext, EngineDirEntry}; +use galaxy_completer::signatures::CommandRegistry; +use galaxyui::App; use crate::completer::SessionContext; use crate::terminal::model::session::Session; @@ -120,7 +120,7 @@ pub fn test_session_context_top_level_commands_includes_external_commands() { SessionInfo::new_for_test(), Arc::new(TestCommandExecutor::default()), ); - warpui::r#async::block_on(session.load_external_commands()); + galaxyui::r#async::block_on(session.load_external_commands()); let ctx = test_session_context(session, working_directory(), &app); @@ -160,7 +160,7 @@ pub fn test_session_context_lists_directory_entries_locally() { sandbox.touch(vec![ Stub::EmptyFile("Cargo.toml"), Stub::EmptyFile("src/app/mod.rs"), - Stub::EmptyFile("target/debug/warpui"), + Stub::EmptyFile("target/debug/galaxyui"), ]); let tests_dir = TypedPathBuf::from(dirs.tests().to_string_lossy().as_bytes()); @@ -172,7 +172,7 @@ pub fn test_session_context_lists_directory_entries_locally() { assert_eq!( HashSet::::from_iter(Arc::unwrap_or_clone( - warpui::r#async::block_on(ctx.list_directory_entries(tests_dir)) + galaxyui::r#async::block_on(ctx.list_directory_entries(tests_dir)) )), HashSet::from_iter([ EngineDirEntry::test_dir(".hidden"), @@ -235,7 +235,7 @@ pub fn test_session_context_lists_directory_entries_remotely() { Stub::EmptyFile("control_path.socket"), Stub::EmptyFile("Cargo.toml"), Stub::EmptyFile("src/app/mod.rs"), - Stub::EmptyFile("target/debug/warpui"), + Stub::EmptyFile("target/debug/galaxyui"), ]); let cwd = TypedPathBuf::from(dirs.tests().to_string_lossy().as_bytes()); @@ -256,7 +256,7 @@ pub fn test_session_context_lists_directory_entries_remotely() { let ctx = test_session_context(Session::test_remote(), cwd.clone(), &app); let mut entries = HashSet::::from_iter(Arc::unwrap_or_clone( - warpui::r#async::block_on(ctx.list_directory_entries(cwd)), + galaxyui::r#async::block_on(ctx.list_directory_entries(cwd)), )); // TODO(CORE-2000): The ls script we use to list entries in remote // sessions adds a spurious "." directory when run in the VirtualFS. @@ -322,7 +322,7 @@ fn perform_special_characters_in_path_test(session: Session, file_names: Vec<&st let ctx = test_session_context(session, test_dir.clone(), &app); let mut entries = HashSet::::from_iter(Arc::unwrap_or_clone( - warpui::r#async::block_on(ctx.list_directory_entries(test_dir)), + galaxyui::r#async::block_on(ctx.list_directory_entries(test_dir)), )); // TODO(CORE-2000): The ls script we use to list entries in remote // sessions adds a spurious "." directory when run in the VirtualFS. diff --git a/app/src/context_chips/builtins.rs b/app/src/context_chips/builtins.rs index 13ce46ba..c012fba9 100644 --- a/app/src/context_chips/builtins.rs +++ b/app/src/context_chips/builtins.rs @@ -1,7 +1,7 @@ //! Context chips built into Warp use chrono::Local; -use warp_util::path::user_friendly_path; +use galaxy_util::path::user_friendly_path; use crate::terminal::shell::ShellType; diff --git a/app/src/context_chips/current_prompt.rs b/app/src/context_chips/current_prompt.rs index c89f4269..751cc3c4 100644 --- a/app/src/context_chips/current_prompt.rs +++ b/app/src/context_chips/current_prompt.rs @@ -23,8 +23,8 @@ use crate::{ use futures::{pin_mut, FutureExt as _}; use itertools::Itertools; use settings::Setting as _; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; -use warp_core::user_preferences::GetUserPreferences; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_core::user_preferences::GetUserPreferences; use super::ChipResult; use super::{ @@ -47,12 +47,12 @@ use std::hash::{Hash as _, Hasher as _}; use std::sync::Arc; use std::time::Duration; #[cfg(feature = "local_fs")] -use warpui::WeakModelHandle; -use warpui::{ +use galaxyui::WeakModelHandle; +use galaxyui::{ r#async::{SpawnedFutureHandle, Timer}, AppContext, ViewHandle, }; -use warpui::{Entity, ModelAsRef, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, ModelAsRef, ModelContext, ModelHandle, SingletonEntity}; #[cfg(test)] #[path = "current_prompt_test.rs"] @@ -592,7 +592,7 @@ impl CurrentPrompt { current_dir_path: Option, environment_variables: Option>, timeout: Option, - ) -> (Option, bool) { + ) -> (Option, bool) { let command_future = session .execute_command( &command, @@ -1217,7 +1217,7 @@ impl CurrentPrompt { #[cfg(test)] pub fn await_generators( &self, - ctx: &mut warpui::AppContext, + ctx: &mut galaxyui::AppContext, ) -> futures_util::future::BoxFuture<'static, ()> { use futures_util::FutureExt; use itertools::Itertools; diff --git a/app/src/context_chips/current_prompt_test.rs b/app/src/context_chips/current_prompt_test.rs index 34178559..173bf150 100644 --- a/app/src/context_chips/current_prompt_test.rs +++ b/app/src/context_chips/current_prompt_test.rs @@ -9,9 +9,9 @@ use async_trait::async_trait; use itertools::Itertools; use parking_lot::Mutex; use settings::Setting as _; -use warp_core::command::ExitCode; -use warpui::{App, SingletonEntity}; -use warpui_extras::user_preferences; +use galaxy_core::command::ExitCode; +use galaxyui::{App, SingletonEntity}; +use galaxyui_extras::user_preferences; #[cfg(feature = "local_fs")] use crate::code_review::diff_state::DiffStats; @@ -45,7 +45,7 @@ use crate::{ }; #[cfg(feature = "local_fs")] use repo_metadata::DirectoryWatcher; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; use super::{ChipUpdateStatus, CurrentPrompt, PromptContext}; @@ -1170,7 +1170,7 @@ fn test_externally_driven_chip_skips_periodic_timer() { let repo_handle = watcher_handle.update(&mut app, |watcher, ctx| { watcher .add_directory( - warp_util::standardized_path::StandardizedPath::from_local_canonicalized( + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized( temp_dir.path(), ) .unwrap(), @@ -1231,7 +1231,7 @@ fn test_git_status_change_updates_chip_value() { let repo_handle = watcher_handle.update(&mut app, |watcher, ctx| { watcher .add_directory( - warp_util::standardized_path::StandardizedPath::from_local_canonicalized( + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized( temp_dir.path(), ) .unwrap(), diff --git a/app/src/context_chips/directory_fetcher.rs b/app/src/context_chips/directory_fetcher.rs index 1361babf..d9b0cf72 100644 --- a/app/src/context_chips/directory_fetcher.rs +++ b/app/src/context_chips/directory_fetcher.rs @@ -3,9 +3,9 @@ use std::cmp::Ordering; use crate::completer::SessionContext; use crate::ui_components::icons::Icon; use typed_path::TypedPathBuf; -use warp_completer::completer::{EngineDirEntry, EngineFileType, PathCompletionContext}; -use warp_util::file_type::is_binary_file; -use warpui::{r#async::SpawnedFutureHandle, AppContext, Entity, ModelContext}; +use galaxy_completer::completer::{EngineDirEntry, EngineFileType, PathCompletionContext}; +use galaxy_util::file_type::is_binary_file; +use galaxyui::{r#async::SpawnedFutureHandle, AppContext, Entity, ModelContext}; use super::display_menu::GenericMenuItem; diff --git a/app/src/context_chips/display.rs b/app/src/context_chips/display.rs index a68a7a79..34acc2fa 100644 --- a/app/src/context_chips/display.rs +++ b/app/src/context_chips/display.rs @@ -13,8 +13,8 @@ use crate::{ terminal::input::MenuPositioningProvider, }; use std::path::PathBuf; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{ ChildView, Clipped, Container, CrossAxisAlignment, Element, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Wrap, diff --git a/app/src/context_chips/display_chip.rs b/app/src/context_chips/display_chip.rs index 72cdec32..5050d24b 100644 --- a/app/src/context_chips/display_chip.rs +++ b/app/src/context_chips/display_chip.rs @@ -27,14 +27,14 @@ use crate::view_components::{FeaturePopup, NewFeaturePopupEvent, NewFeaturePopup use pathfinder_color::ColorU; use pathfinder_geometry::vector::{vec2f, Vector2F}; use std::path::PathBuf; -use warp_core::ui::theme::Fill; -use warp_core::{features::FeatureFlag, ui::theme::color::internal_colors}; -use warpui::elements::Empty; -use warpui::keymap::Keystroke; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponentStyles; -use warpui::ui_components::components::{Coords, UiComponent}; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxy_core::{features::FeatureFlag, ui::theme::color::internal_colors}; +use galaxyui::elements::Empty; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::ui_components::components::{Coords, UiComponent}; +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, @@ -78,12 +78,12 @@ pub fn render_git_diff_stats_content( let icon_element = if has_changes { // Use file icon when there are changes Icon::File - .to_warpui_icon(Fill::Solid(internal_colors::neutral_6(theme))) + .to_galaxyui_icon(Fill::Solid(internal_colors::neutral_6(theme))) .finish() } else { // Use diff icon when there are no changes Icon::Diff - .to_warpui_icon(Fill::Solid(internal_colors::neutral_6(theme))) + .to_galaxyui_icon(Fill::Solid(internal_colors::neutral_6(theme))) .finish() }; @@ -1810,7 +1810,7 @@ pub(crate) fn render_udi_chip(config: UdiChipConfig, appearance: &Appearance) -> if let Some(icon) = config.icon { content.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(config.color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(config.color)).finish()) .with_height(icon_size) .with_width(icon_size) .finish(), diff --git a/app/src/context_chips/display_menu.rs b/app/src/context_chips/display_menu.rs index 5d6c437e..34bd654c 100644 --- a/app/src/context_chips/display_menu.rs +++ b/app/src/context_chips/display_menu.rs @@ -21,17 +21,17 @@ use crate::{ }, }; use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::{appearance::Appearance, builder::MIN_FONT_SIZE, theme::Fill}; -use warp_editor::editor::NavigationKey; -use warpui::units::Pixels; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::{appearance::Appearance, builder::MIN_FONT_SIZE, theme::Fill}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::units::Pixels; +use galaxyui::{ color::ColorU, elements::Highlight, fonts::{Properties, Weight}, ui_components::components::{Coords, UiComponentStyles}, }; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, DispatchEventResult, @@ -47,8 +47,8 @@ use warpui::{ ViewContext, ViewHandle, WindowId, }; -use warpui::clipboard::ClipboardContent; -use warpui::r#async::Timer; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::r#async::Timer; /// Trait for items that can be displayed in a generic menu pub trait GenericMenuItem: Debug + 'static { @@ -130,7 +130,7 @@ const ENV_SIDE_CAR_OUTER_RADIUS: f32 = 6.; const ENV_SIDE_CAR_INNER_RADIUS: f32 = 4.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -702,7 +702,7 @@ impl DisplayChipMenu { let image_key = format!("env-sidecar:{}:image", data.id); let icon = |icon: Icon| { - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(label_text_color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(label_text_color)).finish()) .with_width(ENV_SIDE_CAR_ICON_SIZE) .with_height(ENV_SIDE_CAR_ICON_SIZE) .finish() @@ -825,7 +825,7 @@ impl DisplayChipMenu { theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), // Leave the scrollbar gutter background transparent. - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_padding_start(0.) .with_padding_end(0.) @@ -919,7 +919,7 @@ impl DisplayChipMenu { updated_text.add_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(Fill::Solid(text_color)).finish(), + icon.to_galaxyui_icon(Fill::Solid(text_color)).finish(), ) .with_height(icon_size) .with_width(icon_size) @@ -1090,7 +1090,7 @@ impl DisplayChipMenu { let glyph_size = ENV_MENU_ICON_SIZE; let icon_glyph = ConstrainedBox::new( - icon.to_warpui_icon(Fill::Solid(main_text)).finish(), + icon.to_galaxyui_icon(Fill::Solid(main_text)).finish(), ) .with_width(glyph_size) .with_height(glyph_size) @@ -1117,7 +1117,7 @@ impl DisplayChipMenu { left_side.add_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(Fill::Solid(main_text)).finish(), + icon.to_galaxyui_icon(Fill::Solid(main_text)).finish(), ) .with_height(icon_size) .with_width(icon_size) @@ -1234,7 +1234,7 @@ impl DisplayChipMenu { scrollbar_width, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_padding_end(0.) .with_padding_start(0.); diff --git a/app/src/context_chips/logging.rs b/app/src/context_chips/logging.rs index 7b333dcc..8f5ad68a 100644 --- a/app/src/context_chips/logging.rs +++ b/app/src/context_chips/logging.rs @@ -11,7 +11,7 @@ use std::{ use chrono::{Local, SecondsFormat}; #[cfg(test)] use parking_lot::Mutex; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; #[cfg(test)] use std::sync::Arc; @@ -101,7 +101,7 @@ impl PromptChipLogger { #[cfg(not(target_family = "wasm"))] fn init_runtime() -> Self { - if !warp_core::channel::ChannelState::enable_debug_features() { + if !galaxy_core::channel::ChannelState::enable_debug_features() { return Self::Disabled; } @@ -133,8 +133,8 @@ impl PromptChipLogger { #[cfg(not(target_family = "wasm"))] pub(crate) fn log_file_path() -> anyhow::Result { - let log_directory = warp_logging::log_directory()?; - let channel_logfile_name = warp_core::channel::ChannelState::logfile_name(); + let log_directory = galaxy_logging::log_directory()?; + let channel_logfile_name = galaxy_core::channel::ChannelState::logfile_name(); Ok(log_directory.join(prompt_chip_log_filename(&channel_logfile_name))) } diff --git a/app/src/context_chips/logging_tests.rs b/app/src/context_chips/logging_tests.rs index aa5d1acd..f9005f59 100644 --- a/app/src/context_chips/logging_tests.rs +++ b/app/src/context_chips/logging_tests.rs @@ -1,5 +1,5 @@ use super::*; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; #[test] fn test_prompt_chip_log_filename_uses_channel_logfile_stem() { @@ -40,7 +40,7 @@ fn test_format_log_entry_preserves_stdout_and_stderr_sections() { stdout: b"https://github.com/warpdotdev/warp-internal/pull/123\n".to_vec(), stderr: b"warning output\n".to_vec(), status: CommandExitStatus::Success, - exit_code: Some(warp_core::command::ExitCode::from(0)), + exit_code: Some(galaxy_core::command::ExitCode::from(0)), }; let entry = format_log_entry(&ChipCommandLogEntry { diff --git a/app/src/context_chips/mod.rs b/app/src/context_chips/mod.rs index ef8589a5..0d3d219f 100644 --- a/app/src/context_chips/mod.rs +++ b/app/src/context_chips/mod.rs @@ -20,7 +20,7 @@ use std::time::Duration; use context_chip::PromptGenerator; use serde::{Deserialize, Serialize}; use smol_str::SmolStr; -use warpui::{ +use galaxyui::{ color::ColorU, elements::Text, fonts::{Properties, Weight}, diff --git a/app/src/context_chips/node_version_popup.rs b/app/src/context_chips/node_version_popup.rs index 24238bbb..454a1a9d 100644 --- a/app/src/context_chips/node_version_popup.rs +++ b/app/src/context_chips/node_version_popup.rs @@ -1,11 +1,11 @@ use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ ChildView, ClippedScrollStateHandle, ClippedScrollable, Dismiss, ParentElement, ScrollbarWidth, }; -use warpui::fonts::FamilyId; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, MainAxisAlignment, MainAxisSize, Radius, Text, @@ -61,7 +61,7 @@ struct Styles { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -168,7 +168,7 @@ impl NodeVersionPopupView { Container::new( ConstrainedBox::new( icons::Icon::NodeJS - .to_warpui_icon(styles.tertiary_text_color.into()) + .to_galaxyui_icon(styles.tertiary_text_color.into()) .finish(), ) .with_width(24.) @@ -228,7 +228,7 @@ impl NodeVersionPopupView { Container::new( ConstrainedBox::new( icons::Icon::NodeJS - .to_warpui_icon(styles.tertiary_text_color.into()) + .to_galaxyui_icon(styles.tertiary_text_color.into()) .finish(), ) .with_width(24.) @@ -372,7 +372,7 @@ impl View for NodeVersionPopupView { ScrollbarWidth::Auto, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .finish(); diff --git a/app/src/context_chips/prompt.rs b/app/src/context_chips/prompt.rs index 8e493fff..a34c1800 100644 --- a/app/src/context_chips/prompt.rs +++ b/app/src/context_chips/prompt.rs @@ -10,7 +10,7 @@ pub use super::ContextChipKind; use itertools::Itertools; use serde::{Deserialize, Serialize}; use settings::Setting as _; -use warpui::{Entity, GetSingletonModelHandle, ModelContext, SingletonEntity, UpdateModel}; +use galaxyui::{Entity, GetSingletonModelHandle, ModelContext, SingletonEntity, UpdateModel}; #[cfg(test)] #[path = "prompt_tests.rs"] diff --git a/app/src/context_chips/prompt_snapshot.rs b/app/src/context_chips/prompt_snapshot.rs index 81e27761..d7c1f974 100644 --- a/app/src/context_chips/prompt_snapshot.rs +++ b/app/src/context_chips/prompt_snapshot.rs @@ -1,6 +1,6 @@ use itertools::Itertools; use serde::{Deserialize, Serialize}; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::context_chips::ContextChipKind; diff --git a/app/src/context_chips/prompt_tests.rs b/app/src/context_chips/prompt_tests.rs index 7da02fb9..2d60fdcb 100644 --- a/app/src/context_chips/prompt_tests.rs +++ b/app/src/context_chips/prompt_tests.rs @@ -1,5 +1,5 @@ use serde_json::Value; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use super::Prompt; use crate::auth::AuthStateProvider; diff --git a/app/src/context_chips/prompt_type.rs b/app/src/context_chips/prompt_type.rs index c813f04f..4e14bb4b 100644 --- a/app/src/context_chips/prompt_type.rs +++ b/app/src/context_chips/prompt_type.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use crate::{ menu::{MenuItem, MenuItemFields}, diff --git a/app/src/context_chips/renderer.rs b/app/src/context_chips/renderer.rs index 762dd01e..0acf4416 100644 --- a/app/src/context_chips/renderer.rs +++ b/app/src/context_chips/renderer.rs @@ -1,16 +1,16 @@ //! The renderer for a single context chip. use pathfinder_color::ColorU; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ ConstrainedBox, DraggableState, Hoverable, MouseStateHandle, OffsetPositioning, ParentElement, ParentOffsetBounds, Stack, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::Action; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::Action; +use galaxyui::{ elements::{Container, CrossAxisAlignment, Flex, Text}, Element, }; @@ -134,7 +134,7 @@ impl Renderer { let button = Hoverable::new(self.remove_button_state_handle.clone(), |_| { ConstrainedBox::new( icons::Icon::X - .to_warpui_icon(appearance.theme().ui_error_color().into()) + .to_galaxyui_icon(appearance.theme().ui_error_color().into()) .finish(), ) .with_height(icon_size) @@ -164,7 +164,7 @@ impl Renderer { if let Some(icon) = self.kind.udi_icon() { content.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(color)).finish()) .with_height(font_size) .with_width(font_size) .finish(), @@ -214,8 +214,8 @@ impl Renderer { OffsetPositioning::offset_from_parent( vec2f(0., -2.5 * font_size), ParentOffsetBounds::Unbounded, - warpui::elements::ParentAnchor::Center, - warpui::elements::ChildAnchor::Center, + galaxyui::elements::ParentAnchor::Center, + galaxyui::elements::ChildAnchor::Center, ), ); stack.finish() diff --git a/app/src/context_chips/renderer_test.rs b/app/src/context_chips/renderer_test.rs index 279c6f23..dc7004ba 100644 --- a/app/src/context_chips/renderer_test.rs +++ b/app/src/context_chips/renderer_test.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::fonts::Properties; +use galaxyui::fonts::Properties; use crate::context_chips::{ChipAvailability, ChipDisabledReason, ContextChipKind}; diff --git a/app/src/crash_recovery.rs b/app/src/crash_recovery.rs index 524be1c1..6040ba14 100644 --- a/app/src/crash_recovery.rs +++ b/app/src/crash_recovery.rs @@ -5,14 +5,14 @@ use ::settings::Setting as _; use cfg_if::cfg_if; use lazy_static::lazy_static; use parking_lot::RwLock; -use warp_cli::RecoveryMechanism; -use warp_core::channel::{Channel, ChannelState}; -use warpui::{Entity, ModelContext, SingletonEntity, WindowId}; -use warpui_extras::user_preferences::UserPreferences; +use galaxy_cli::RecoveryMechanism; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxyui::{Entity, ModelContext, SingletonEntity, WindowId}; +use galaxyui_extras::user_preferences::UserPreferences; use crate::{report_if_error, settings}; -/// Keep in sync with [`warp_cli::AppArgs`]. +/// Keep in sync with [`galaxy_cli::AppArgs`]. pub const RECOVERY_MECHANISM_ARG: &str = "crash-recovery-mechanism"; lazy_static! { @@ -33,7 +33,7 @@ pub enum Event { } /// Returns true if this process is the crash recovery process. -pub fn is_crash_recovery_process(args: &warp_cli::AppArgs) -> bool { +pub fn is_crash_recovery_process(args: &galaxy_cli::AppArgs) -> bool { args.crash_recovery_mechanism.is_some() } @@ -79,7 +79,7 @@ impl CrashRecoveryProcess { *IS_CRASH_RECOVERY_PROCESS_RUNNING.write() = false; self.is_alive = false; - warp_logging::on_crash_recovery_process_killed(); + galaxy_logging::on_crash_recovery_process_killed(); } fn handle_draw_frame_error(&mut self, window_id: WindowId) { @@ -215,14 +215,14 @@ impl CrashRecovery { } #[cfg(test)] - pub fn register_for_test(app: &mut warpui::App) { - use warp_core::user_preferences::GetUserPreferences as _; + pub fn register_for_test(app: &mut galaxyui::App) { + use galaxy_core::user_preferences::GetUserPreferences as _; app.update(|ctx| { ctx.add_singleton_model(|ctx| { let user_preferences = ctx.private_user_preferences(); let launch_mode = crate::LaunchMode::App { - args: warp_cli::AppArgs::default(), + args: galaxy_cli::AppArgs::default(), api_key: None, }; crate::crash_recovery::CrashRecovery::new(&launch_mode, user_preferences) @@ -378,7 +378,7 @@ fn spawn_recovery_process( } #[cfg(windows)] -fn wait_for_parent_crash(args: &warp_cli::AppArgs) { +fn wait_for_parent_crash(args: &galaxy_cli::AppArgs) { use windows::Win32::{ Foundation::{GetLastError, WAIT_FAILED, WAIT_OBJECT_0}, System::Threading::{GetProcessId, WaitForSingleObject, INFINITE}, @@ -410,7 +410,7 @@ fn wait_for_parent_crash(args: &warp_cli::AppArgs) { } #[cfg(unix)] -fn wait_for_parent_crash(args: &warp_cli::AppArgs) { +fn wait_for_parent_crash(args: &galaxy_cli::AppArgs) { use nix::unistd::Pid; let parent_pid = args @@ -438,7 +438,7 @@ fn handle_parent_crash( recovery_mechanism: RecoveryMechanism, user_preferences: &dyn UserPreferences, ) -> bool { - warp_logging::on_parent_process_crash(); + galaxy_logging::on_parent_process_crash(); match recovery_mechanism { #[cfg(target_os = "linux")] diff --git a/app/src/crash_reporting/mac.rs b/app/src/crash_reporting/mac.rs index b78c4f13..e69b3600 100644 --- a/app/src/crash_reporting/mac.rs +++ b/app/src/crash_reporting/mac.rs @@ -4,7 +4,7 @@ use cocoa::{ base::{id, nil, BOOL}, foundation::NSAutoreleasePool, }; -use warpui::platform::mac::make_nsstring; +use galaxyui::platform::mac::make_nsstring; use super::*; diff --git a/app/src/crash_reporting/mod.rs b/app/src/crash_reporting/mod.rs index 48fc8a27..4ff9b643 100644 --- a/app/src/crash_reporting/mod.rs +++ b/app/src/crash_reporting/mod.rs @@ -11,8 +11,8 @@ use std::ops::DerefMut; use lazy_static::lazy_static; use sentry::{ClientInitGuard, IntoDsn, SessionMode}; -use warp_core::channel::Channel; -use warpui::{r#async::block_on, AppContext, SingletonEntity}; +use galaxy_core::channel::Channel; +use galaxyui::{r#async::block_on, AppContext, SingletonEntity}; use crate::antivirus::{AntivirusInfo, AntivirusInfoEvent}; use crate::auth::anonymous_id::get_or_create_anonymous_id; @@ -24,9 +24,9 @@ use parking_lot::{Mutex, RwLock}; use regex::Regex; use std::collections::{BTreeMap, HashMap}; use std::sync::Arc; -use warpui::rendering::GPUDeviceInfo; -use warpui::windowing::state::ApplicationStage; -use warpui::windowing::{self, StateEvent, WindowManager}; +use galaxyui::rendering::GPUDeviceInfo; +use galaxyui::windowing::state::ApplicationStage; +use galaxyui::windowing::{self, StateEvent, WindowManager}; #[cfg(linux_or_windows)] pub use sentry_minidump::run_server as run_minidump_server; diff --git a/app/src/crash_reporting/sentry_minidump.rs b/app/src/crash_reporting/sentry_minidump.rs index 1a424558..1ac6de5c 100644 --- a/app/src/crash_reporting/sentry_minidump.rs +++ b/app/src/crash_reporting/sentry_minidump.rs @@ -32,7 +32,7 @@ use sentry::{ }; use serde::{Deserialize, Serialize}; use uuid::Uuid; -use warp_core::report_error; +use galaxy_core::report_error; use super::ToSentryTags; @@ -126,7 +126,7 @@ pub struct MinidumpGuard { pub fn run_server(socket_path: &Path) -> anyhow::Result<()> { // For troubleshooting, attempt to log from the minidump server. There's not much we can really // do if crash reporting fails, so creating the log file itself is best-effort. - let log_dir = warp_core::paths::state_dir().join(warp_core::paths::WARP_LOGS_DIR); + let log_dir = galaxy_core::paths::state_dir().join(galaxy_core::paths::WARP_LOGS_DIR); let _ = std::fs::create_dir_all(&log_dir); let log_path = log_dir.join("warp-minidump.log"); let log_target = File::create(log_path) @@ -269,7 +269,7 @@ impl MinidumpGuard { // On macOS, the maximum length of a socket path is fairly short, so use the temp directory. std::env::temp_dir().join(socket_name) } else { - warp_core::paths::state_dir().join(socket_name) + galaxy_core::paths::state_dir().join(socket_name) }; let child = diff --git a/app/src/debounce.rs b/app/src/debounce.rs index 907df2ee..457dd393 100644 --- a/app/src/debounce.rs +++ b/app/src/debounce.rs @@ -4,7 +4,7 @@ use futures_lite::{ready, Stream}; use pin::Pin; use pin_project::pin_project; use task::{Context, Poll}; -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; /// Debounce takes in a stream and limits the rate of firing events from the stream /// by bundling all events occurred within the set interval into one. diff --git a/app/src/debug_dump.rs b/app/src/debug_dump.rs index 1308161b..4578b590 100644 --- a/app/src/debug_dump.rs +++ b/app/src/debug_dump.rs @@ -1,12 +1,12 @@ -//! This module contains the code path for the [`warp_cli::Command::DumpDebugInfo`] subcommand. +//! This module contains the code path for the [`galaxy_cli::Command::DumpDebugInfo`] subcommand. //! //! This is intended to never be used by a vast majority of users. This is only intended for users //! who are unable to run Warp and want to provide us, the dev team, with useful debugging //! information. #[cfg(not(windows))] use command::blocking::Command; -use warp_core::channel::ChannelState; -use warpui::windowing; +use galaxy_core::channel::ChannelState; +use galaxyui::windowing; pub(crate) fn run() -> anyhow::Result<()> { println!("Warp version: {:?}", ChannelState::app_version()); @@ -31,7 +31,7 @@ pub(crate) fn run() -> anyhow::Result<()> { #[cfg(not(target_os = "macos"))] { if let Ok(event_loop) = winit::event_loop::EventLoop::new() { - warpui::rendering::wgpu::init_wgpu_instance(Box::new( + galaxyui::rendering::wgpu::init_wgpu_instance(Box::new( event_loop.owned_display_handle(), )); @@ -62,7 +62,7 @@ pub(crate) fn run() -> anyhow::Result<()> { init_private_user_preferences, PreferLowPowerGPU, PreferredGraphicsBackend, }; use settings::Setting as _; - use warpui::rendering::GPUPowerPreference; + use galaxyui::rendering::GPUPowerPreference; let user_preferences = init_private_user_preferences(); @@ -83,7 +83,7 @@ pub(crate) fn run() -> anyhow::Result<()> { println!("##################################################"); println!("# wgpu Adapters"); println!("##################################################"); - warpui::r#async::block_on(warpui::rendering::wgpu::print_wgpu_adapters( + galaxyui::r#async::block_on(galaxyui::rendering::wgpu::print_wgpu_adapters( gpu_power_preference, backend_preference, windowing_system, diff --git a/app/src/default_terminal/mac.rs b/app/src/default_terminal/mac.rs index db728064..9c0e59e2 100644 --- a/app/src/default_terminal/mac.rs +++ b/app/src/default_terminal/mac.rs @@ -8,7 +8,7 @@ use core_foundation::{ string::{CFString, CFStringRef}, }; use objc::{class, msg_send, sel, sel_impl}; -use warp_core::channel::{Channel, ChannelState}; +use galaxy_core::channel::{Channel, ChannelState}; // Launch Services constants type LSRolesMask = u32; diff --git a/app/src/default_terminal/mod.rs b/app/src/default_terminal/mod.rs index f5e421f5..11aa2901 100644 --- a/app/src/default_terminal/mod.rs +++ b/app/src/default_terminal/mod.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ windowing::{StateEvent, WindowManager}, Entity, ModelContext, SingletonEntity, }; diff --git a/app/src/download_method.rs b/app/src/download_method.rs index 85c20b73..38e06569 100644 --- a/app/src/download_method.rs +++ b/app/src/download_method.rs @@ -4,7 +4,7 @@ use crate::{ server::telemetry::{DownloadSource, TelemetryEvent}, }; use std::sync::Arc; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; /// Determine the Warp download method (if possible) and send a telemetry event reporting that /// method diff --git a/app/src/drive/cloud_action_confirmation_dialog.rs b/app/src/drive/cloud_action_confirmation_dialog.rs index 2ee6065c..0a6db8e1 100644 --- a/app/src/drive/cloud_action_confirmation_dialog.rs +++ b/app/src/drive/cloud_action_confirmation_dialog.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{CornerRadius, Dismiss, MouseStateHandle, Radius}, fonts::Weight, platform::Cursor, diff --git a/app/src/drive/cloud_object_naming_dialog.rs b/app/src/drive/cloud_object_naming_dialog.rs index 74405f9c..c07960e0 100644 --- a/app/src/drive/cloud_object_naming_dialog.rs +++ b/app/src/drive/cloud_object_naming_dialog.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ Border, Clipped, Container, CornerRadius, Dismiss, Empty, Flex, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, diff --git a/app/src/drive/cloud_object_styling.rs b/app/src/drive/cloud_object_styling.rs index 19b1676c..0f037b62 100644 --- a/app/src/drive/cloud_object_styling.rs +++ b/app/src/drive/cloud_object_styling.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, color::{contrast::MinimumAllowedContrast, ContrastingColor}, theme::Fill, diff --git a/app/src/drive/drive_helpers.rs b/app/src/drive/drive_helpers.rs index 54895905..0d8bcba9 100644 --- a/app/src/drive/drive_helpers.rs +++ b/app/src/drive/drive_helpers.rs @@ -1,4 +1,4 @@ -use warpui::{SingletonEntity, ViewContext}; +use galaxyui::{SingletonEntity, ViewContext}; use crate::{ auth::{auth_manager::AuthManager, AuthStateProvider}, @@ -8,7 +8,7 @@ use crate::{ }, }; -pub fn has_feature_gated_anonymous_user_reached_notebook_limit( +pub fn has_feature_gated_anonymous_user_reached_notebook_limit( ctx: &mut ViewContext, ) -> bool { let count = CloudModel::handle(ctx).read(ctx, |model, ctx| { @@ -31,7 +31,7 @@ pub fn has_feature_gated_anonymous_user_reached_notebook_limit( false } -pub fn has_feature_gated_anonymous_user_reached_workflow_limit( +pub fn has_feature_gated_anonymous_user_reached_workflow_limit( ctx: &mut ViewContext, ) -> bool { let count = CloudModel::handle(ctx).read(ctx, |model, ctx| { @@ -54,7 +54,7 @@ pub fn has_feature_gated_anonymous_user_reached_workflow_limit( false } -pub fn has_feature_gated_anonymous_user_reached_env_var_limit( +pub fn has_feature_gated_anonymous_user_reached_env_var_limit( ctx: &mut ViewContext, ) -> bool { let count = CloudModel::handle(ctx).read(ctx, |model, ctx| { diff --git a/app/src/drive/empty_trash_confirmation_dialog.rs b/app/src/drive/empty_trash_confirmation_dialog.rs index 49892dcb..707eb736 100644 --- a/app/src/drive/empty_trash_confirmation_dialog.rs +++ b/app/src/drive/empty_trash_confirmation_dialog.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::MouseStateHandle, fonts::Weight, platform::Cursor, diff --git a/app/src/drive/export.rs b/app/src/drive/export.rs index 62d5223f..86546543 100644 --- a/app/src/drive/export.rs +++ b/app/src/drive/export.rs @@ -14,8 +14,8 @@ use aho_corasick::{AhoCorasick, MatchKind}; use anyhow::{anyhow, Context}; #[cfg(feature = "local_fs")] use futures::AsyncWriteExt; -use warp_util::path::ShellFamily; -use warpui::{ +use galaxy_util::path::ShellFamily; +use galaxyui::{ platform::{file_picker::FilePickerError, FilePickerConfiguration, OperatingSystem}, r#async::SpawnedFutureHandle, AppContext, Entity, ModelContext, SingletonEntity, WindowId, diff --git a/app/src/drive/export_tests.rs b/app/src/drive/export_tests.rs index c2501d4a..de8c40d6 100644 --- a/app/src/drive/export_tests.rs +++ b/app/src/drive/export_tests.rs @@ -8,8 +8,8 @@ use std::{ use futures::channel::oneshot; use parking_lot::Mutex; use tempfile::TempDir; -use warp_util::path::ShellFamily; -use warpui::{AddSingletonModel, App, SingletonEntity, WindowId}; +use galaxy_util::path::ShellFamily; +use galaxyui::{AddSingletonModel, App, SingletonEntity, WindowId}; use crate::{ cloud_object::{ diff --git a/app/src/drive/folders/mod.rs b/app/src/drive/folders/mod.rs index 076b12f2..e88c58d3 100644 --- a/app/src/drive/folders/mod.rs +++ b/app/src/drive/folders/mod.rs @@ -21,8 +21,8 @@ use crate::{ use anyhow::Result; use async_trait::async_trait; -// Re-exported from warp_server_client. -pub use warp_server_client::ids::FolderId; +// Re-exported from galaxy_server_client. +pub use galaxy_server_client::ids::FolderId; /// The model for a `CloudFolder`. #[derive(Clone, Debug, PartialEq)] diff --git a/app/src/drive/import/import_tests.rs b/app/src/drive/import/import_tests.rs index 677c0cb1..e0a0057e 100644 --- a/app/src/drive/import/import_tests.rs +++ b/app/src/drive/import/import_tests.rs @@ -1,7 +1,7 @@ use std::env::current_dir; -use warp_core::ui::appearance::Appearance; -use warpui::App; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::App; use crate::{ cloud_object::model::persistence::CloudModel, @@ -37,6 +37,6 @@ fn test_expand_directories() { .join("integration"); // Open a folder and verify we could expand it into the correct folder tree structure. - assert_eq!(warpui::r#async::block_on(expand_dirs([directory].into_iter().collect())).debug_print(), "(integration(tests(INTEGRATION_TESTING, data(test, test_launch_config, test_theme, test_theme_with_name, test_workflow))))"); + assert_eq!(galaxyui::r#async::block_on(expand_dirs([directory].into_iter().collect())).debug_print(), "(integration(tests(INTEGRATION_TESTING, data(test, test_launch_config, test_theme, test_theme_with_name, test_workflow))))"); }); } diff --git a/app/src/drive/import/modal.rs b/app/src/drive/import/modal.rs index 0edcb8b2..38aae7f5 100644 --- a/app/src/drive/import/modal.rs +++ b/app/src/drive/import/modal.rs @@ -6,8 +6,8 @@ use crate::{ workspaces::user_workspaces::UserWorkspaces, }; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Highlight, MouseStateHandle, diff --git a/app/src/drive/import/modal_body.rs b/app/src/drive/import/modal_body.rs index f1cb95d9..8abc5ba2 100644 --- a/app/src/drive/import/modal_body.rs +++ b/app/src/drive/import/modal_body.rs @@ -1,7 +1,7 @@ use futures_util::stream::AbortHandle; use pathfinder_geometry::vector::vec2f; use std::path::PathBuf; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, @@ -394,7 +394,7 @@ impl ImportModalBody { TextAndIcon::new( TextAndIconAlignment::TextFirst, "Choose files...".to_string(), - Icon::Import.to_warpui_icon( + Icon::Import.to_galaxyui_icon( appearance .theme() .main_text_color(appearance.theme().accent_button_color()), diff --git a/app/src/drive/import/nodes.rs b/app/src/drive/import/nodes.rs index fe48bdab..83a4cb5c 100644 --- a/app/src/drive/import/nodes.rs +++ b/app/src/drive/import/nodes.rs @@ -15,7 +15,7 @@ use std::{ ops::{Add, AddAssign, SubAssign}, path::{Path, PathBuf}, }; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MouseStateHandle, ParentElement, Radius, Shrinkable, @@ -331,7 +331,7 @@ impl FolderNode { override_color.unwrap_or(warp_drive_icon_color(appearance, DriveObjectType::Folder)); let icon = ConstrainedBox::new( Icon::Folder - .to_warpui_icon(Fill::Solid(icon_color)) + .to_galaxyui_icon(Fill::Solid(icon_color)) .finish(), ) .with_height(IMPORT_FONT_SIZE) @@ -459,24 +459,24 @@ impl UploadStatus { ) -> Box { let status_icon_element = match &self { UploadStatus::SavedLocally if !sync_queue_dequeueing => Icon::Laptop - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_1()), ) .finish(), UploadStatus::Loading | UploadStatus::SavedLocally => Icon::Refresh - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_1()), ) .finish(), UploadStatus::Loaded(_) => Icon::Check - .to_warpui_icon(Fill::Solid(ColorU::new(11, 142, 71, 255))) + .to_galaxyui_icon(Fill::Solid(ColorU::new(11, 142, 71, 255))) .finish(), UploadStatus::Error(_) => Icon::AlertTriangle - .to_warpui_icon(Fill::Solid(appearance.theme().ui_error_color())) + .to_galaxyui_icon(Fill::Solid(appearance.theme().ui_error_color())) .finish(), }; @@ -553,12 +553,12 @@ impl FileNode { let icon_element = match &self.file_type { FileType::Workflow => Icon::Workflow - .to_warpui_icon(Fill::Solid(override_color.unwrap_or( + .to_galaxyui_icon(Fill::Solid(override_color.unwrap_or( warp_drive_icon_color(appearance, DriveObjectType::Workflow), ))) .finish(), FileType::Notebook => Icon::Notebook - .to_warpui_icon(Fill::Solid(override_color.unwrap_or( + .to_galaxyui_icon(Fill::Solid(override_color.unwrap_or( warp_drive_icon_color( appearance, DriveObjectType::Notebook { diff --git a/app/src/drive/import/queue.rs b/app/src/drive/import/queue.rs index 574038c8..82f38888 100644 --- a/app/src/drive/import/queue.rs +++ b/app/src/drive/import/queue.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::{ cloud_object::{model::persistence::CloudModel, CloudObjectEventEntrypoint, Owner}, diff --git a/app/src/drive/index.rs b/app/src/drive/index.rs index 0025d090..10c199b2 100644 --- a/app/src/drive/index.rs +++ b/app/src/drive/index.rs @@ -81,8 +81,8 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::{vec2f, Vector2F}; use std::{any::Any, collections::HashMap, sync::Arc}; use url::Url; -use warp_core::{context_flag::ContextFlag, settings::Setting, ui::theme::color::internal_colors}; -use warpui::{ +use galaxy_core::{context_flag::ContextFlag, settings::Setting, ui::theme::color::internal_colors}; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, AnchorPair, Border, ChildAnchor, ChildView, ClippedScrollStateHandle, @@ -575,7 +575,7 @@ pub struct DriveIndex { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::new("up", DriveIndexAction::FocusPreviousItem, id!("DriveIndex")), @@ -1314,7 +1314,7 @@ impl DriveIndex { let icon = Container::new( ConstrainedBox::new( Icon::CreateTeam - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .main_text_color(appearance.theme().surface_1()), @@ -1461,7 +1461,7 @@ impl DriveIndex { if let Some(focused_index) = self.focused_index { if Some(&WarpDriveItemId::Space(space)) == self.ordered_items.get(focused_index) { container = container.with_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_4( + galaxy_core::ui::theme::color::internal_colors::fg_overlay_4( appearance.theme(), ), ); @@ -1476,7 +1476,7 @@ impl DriveIndex { // If the item is hovered, set a hover background that matches the hover state of warp drive items. if mouse_state.is_hovered() && !is_focused || section_state.menu_open { container = container.with_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_2( + galaxy_core::ui::theme::color::internal_colors::fg_overlay_2( appearance.theme(), ), ); @@ -1570,7 +1570,7 @@ impl DriveIndex { font_color: Some(empty_trash_default_font_color), font_size: Some(14.), font_family_id: Some(appearance.ui_font_family()), - font_weight: Some(warpui::fonts::Weight::Semibold), + font_weight: Some(galaxyui::fonts::Weight::Semibold), padding: Some(Coords::uniform(6.)), border_radius: Some(CornerRadius::with_all(Radius::Pixels(6.))), ..Default::default() @@ -1664,7 +1664,7 @@ impl DriveIndex { if let Some(focused_index) = self.focused_index { if Some(&WarpDriveItemId::Space(space)) == self.ordered_items.get(focused_index) { container = container.with_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_4( + galaxy_core::ui::theme::color::internal_colors::fg_overlay_4( appearance.theme(), ), ); @@ -1679,7 +1679,7 @@ impl DriveIndex { // If the item is hovered, set a hover background that matches the hover state of warp drive items. if mouse_state.is_hovered() && !is_focused || section_state.menu_open { container = container.with_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_2( + galaxy_core::ui::theme::color::internal_colors::fg_overlay_2( appearance.theme(), ), ); @@ -1801,7 +1801,7 @@ impl DriveIndex { fn render_trash_row(&self, appearance: &Appearance, _: &AppContext) -> Box { let font_color = self.font_color_based_on_focused_state(appearance, WarpDriveItemId::Trash); let icon = Container::new( - ConstrainedBox::new(Icon::Trash.to_warpui_icon(font_color.into()).finish()) + ConstrainedBox::new(Icon::Trash.to_galaxyui_icon(font_color.into()).finish()) .with_width(SECTION_HEADER_FONT_SIZE) .with_height(SECTION_HEADER_FONT_SIZE) .finish(), @@ -1850,7 +1850,7 @@ impl DriveIndex { if let Some(focused_index) = self.focused_index { if Some(&WarpDriveItemId::Trash) == self.ordered_items.get(focused_index) { container = container.with_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_4(appearance.theme()), + galaxy_core::ui::theme::color::internal_colors::fg_overlay_4(appearance.theme()), ); is_focused = true; } @@ -1863,7 +1863,7 @@ impl DriveIndex { if mouse_state.is_hovered() && !is_focused { container .with_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_2( + galaxy_core::ui::theme::color::internal_colors::fg_overlay_2( appearance.theme(), ), ) @@ -2042,7 +2042,7 @@ impl DriveIndex { appearance: &Appearance, ) -> Box { let rendered_icon = ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().nonactive_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().nonactive_ui_text_color()) .finish(), ) .with_width(ITEM_FONT_SIZE) @@ -2384,7 +2384,7 @@ impl DriveIndex { Container::new( ConstrainedBox::new( Icon::CloudOffline - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), @@ -2600,7 +2600,7 @@ impl DriveIndex { Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon(appearance.theme().nonactive_ui_text_color()) + .to_galaxyui_icon(appearance.theme().nonactive_ui_text_color()) .finish(), ) .with_height(15.) @@ -2913,7 +2913,7 @@ impl DriveIndex { section: DriveIndexSection, is_collapsed: bool, appearance: &Appearance, - ) -> Box { + ) -> Box { let icon = if is_collapsed { Icon::ListCollapsed } else { @@ -2937,7 +2937,7 @@ impl DriveIndex { // This icon should render the same as other WarpDrive icons but with no click or hover states. Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(SECTION_HEADER_FONT_SIZE) .with_height(SECTION_HEADER_FONT_SIZE) .finish(), @@ -2946,13 +2946,13 @@ impl DriveIndex { .finish() } - fn render_warp_drive_loading_icon(&self, appearance: &Appearance) -> Box { + fn render_warp_drive_loading_icon(&self, appearance: &Appearance) -> Box { // Use same padding as icon_button (4px) to center the icon within ICON_DIMENSIONS let icon_button_padding = (ICON_DIMENSIONS - LOADING_ICON_WIDTH) / 2.; let loading_icon = Container::new( ConstrainedBox::new( Icon::Refresh - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_1()), @@ -2995,7 +2995,7 @@ impl DriveIndex { hoverable.finish() } - fn render_sorting_button(&self, appearance: &Appearance) -> Box { + fn render_sorting_button(&self, appearance: &Appearance) -> Box { let mut button = icon_button_with_context_menu( Icon::Sort, move |ctx, _, _| ctx.dispatch_typed_action(DriveIndexAction::ToggleSortingMenu), @@ -3033,7 +3033,7 @@ impl DriveIndex { hoverable.finish() } - fn render_retry_button(&self, appearance: &Appearance) -> Box { + fn render_retry_button(&self, appearance: &Appearance) -> Box { let ui_builder = appearance.ui_builder().clone(); icon_button( @@ -3061,7 +3061,7 @@ impl DriveIndex { space: Space, state: &DriveIndexSectionState, app: &AppContext, - ) -> Box { + ) -> Box { let mut button; // Set color contrast correctly when focused if self.focused_index.is_some() @@ -3139,7 +3139,7 @@ impl DriveIndex { appearance: &Appearance, state: &DriveIndexSectionState, space: Space, - ) -> Box { + ) -> Box { let mut button = icon_button( appearance, Icon::AddTeammates, @@ -3940,7 +3940,7 @@ impl DriveIndex { |_| { ConstrainedBox::new( Icon::X - .to_warpui_icon(appearance.theme().main_text_color(background_color)) + .to_galaxyui_icon(appearance.theme().main_text_color(background_color)) .finish(), ) .with_width(12.) @@ -3961,7 +3961,7 @@ impl DriveIndex { Text::new_inline("Warp Drive".to_string(), appearance.ui_font_family(), 14.) .with_color(theme.main_text_color(background_color).into()) .with_style(Properties { - weight: warpui::fonts::Weight::Bold, + weight: galaxyui::fonts::Weight::Bold, ..Default::default() }) .finish(), @@ -4694,7 +4694,7 @@ impl DriveIndex { .into_item(), ); } - if !warpui::platform::is_mobile_device() + if !galaxyui::platform::is_mobile_device() && !ContextFlag::HideOpenOnDesktopButton.is_enabled() && *UserAppInstallDetectionSettings::as_ref(app) .user_app_installation_detected @@ -5075,7 +5075,7 @@ impl View for DriveIndex { } } - fn keymap_context(&self, _ctx: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, _ctx: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); // Disable WD Vim keybindings when a dialog is open @@ -5088,7 +5088,7 @@ impl View for DriveIndex { context } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let workspaces = UserWorkspaces::as_ref(app); diff --git a/app/src/drive/index_test.rs b/app/src/drive/index_test.rs index e388411a..1d62d035 100644 --- a/app/src/drive/index_test.rs +++ b/app/src/drive/index_test.rs @@ -1,6 +1,6 @@ -use warp_core::ui::appearance::Appearance; -use warp_server_client::cloud_object::ServerPermissions; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_server_client::cloud_object::ServerPermissions; +use galaxyui::{ platform::WindowStyle, AddSingletonModel, App, SingletonEntity, TypedActionView, ViewHandle, }; @@ -103,7 +103,7 @@ fn create_notebook(app: &mut App) -> SyncId { fn set_object_in_error(app: &mut App, cloud_object_type_and_id: &CloudObjectTypeAndId) { CloudModel::handle(app).update( app, - |cloud_model, _ctx: &mut warpui::ModelContext<'_, CloudModel>| { + |cloud_model, _ctx: &mut galaxyui::ModelContext<'_, CloudModel>| { if let Some(object) = cloud_model.get_mut_by_uid(&cloud_object_type_and_id.uid()) { object.set_pending_content_changes_status(CloudObjectSyncStatus::Errored); } diff --git a/app/src/drive/items/ai_fact.rs b/app/src/drive/items/ai_fact.rs index 9e85fed2..e16704a3 100644 --- a/app/src/drive/items/ai_fact.rs +++ b/app/src/drive/items/ai_fact.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{Container, Flex, MouseStateHandle, ParentElement}, fonts::Weight, ui_components::components::{UiComponent, UiComponentStyles}, diff --git a/app/src/drive/items/ai_fact_collection.rs b/app/src/drive/items/ai_fact_collection.rs index 4c1c707d..28a4fe99 100644 --- a/app/src/drive/items/ai_fact_collection.rs +++ b/app/src/drive/items/ai_fact_collection.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, AppContext, Element}; +use galaxyui::{elements::MouseStateHandle, AppContext, Element}; use crate::{ appearance::Appearance, diff --git a/app/src/drive/items/env_var_collection.rs b/app/src/drive/items/env_var_collection.rs index 8040fa79..724c0ba0 100644 --- a/app/src/drive/items/env_var_collection.rs +++ b/app/src/drive/items/env_var_collection.rs @@ -1,6 +1,6 @@ use itertools::Itertools; -use warp_core::context_flag::ContextFlag; -use warpui::{ +use galaxy_core::context_flag::ContextFlag; +use galaxyui::{ elements::{Clipped, Container, Flex, MouseStateHandle, ParentElement}, fonts::Weight, ui_components::components::{UiComponent, UiComponentStyles}, diff --git a/app/src/drive/items/folder.rs b/app/src/drive/items/folder.rs index bff65ea2..a049ade7 100644 --- a/app/src/drive/items/folder.rs +++ b/app/src/drive/items/folder.rs @@ -1,5 +1,5 @@ -use warp_core::features::FeatureFlag; -use warpui::{elements::MouseStateHandle, AppContext, Element}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{elements::MouseStateHandle, AppContext, Element}; use crate::{ appearance::Appearance, @@ -52,7 +52,7 @@ impl WarpDriveItem for WarpDriveFolder { Icon::from(DriveObjectType::Folder) }; - Some(icon.to_warpui_icon(icon_fill).finish()) + Some(icon.to_galaxyui_icon(icon_fill).finish()) } fn secondary_icon(&self, _color: Option) -> Option> { diff --git a/app/src/drive/items/item.rs b/app/src/drive/items/item.rs index 5f4939f7..e53a5cff 100644 --- a/app/src/drive/items/item.rs +++ b/app/src/drive/items/item.rs @@ -1,5 +1,5 @@ use pathfinder_geometry::{rect::RectF, vector::Vector2F}; -use warpui::{ +use galaxyui::{ elements::{ AcceptedByDropTarget, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Draggable, DraggableState, DropShadow, Empty, Flex, Hoverable, @@ -110,7 +110,7 @@ impl WarpDriveItemStyles { .set_font_size(ITEM_FONT_SIZE) .set_font_color(theme.foreground().into()) .set_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_4(theme).into(), + galaxy_core::ui::theme::color::internal_colors::fg_overlay_4(theme).into(), ) .set_border_color(theme.accent().into()), hovered: UiComponentStyles::default() @@ -118,7 +118,7 @@ impl WarpDriveItemStyles { .set_font_size(ITEM_FONT_SIZE) .set_font_color(blended_colors::text_main(theme, background)) .set_background( - warp_core::ui::theme::color::internal_colors::fg_overlay_2(theme).into(), + galaxy_core::ui::theme::color::internal_colors::fg_overlay_2(theme).into(), ), } } @@ -461,7 +461,7 @@ impl<'a> WarpDriveRow<'a> { let text_color = appearance.theme().sub_text_color(background); let icon = Container::new( - ConstrainedBox::new(Icon::Users.to_warpui_icon(text_color).finish()) + ConstrainedBox::new(Icon::Users.to_galaxyui_icon(text_color).finish()) .with_height(15.) .with_width(15.) .finish(), @@ -509,7 +509,7 @@ impl<'a> WarpDriveRow<'a> { Container::new( ConstrainedBox::new( Icon::Clock - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), @@ -587,7 +587,7 @@ impl<'a> WarpDriveRow<'a> { }); Container::new( - ConstrainedBox::new(chevron_icon.to_warpui_icon(icon_color.into()).finish()) + ConstrainedBox::new(chevron_icon.to_galaxyui_icon(icon_color.into()).finish()) .with_width(16.) .with_height(16.) .finish(), diff --git a/app/src/drive/items/mcp_server.rs b/app/src/drive/items/mcp_server.rs index 3b310118..4e318757 100644 --- a/app/src/drive/items/mcp_server.rs +++ b/app/src/drive/items/mcp_server.rs @@ -6,7 +6,7 @@ use crate::{ drive::{index::DriveIndexAction, CloudObjectTypeAndId, DriveObjectType}, themes::theme::Fill, }; -use warpui::{elements::MouseStateHandle, AppContext, Element}; +use galaxyui::{elements::MouseStateHandle, AppContext, Element}; #[derive(Clone)] pub struct WarpDriveMCPServer { diff --git a/app/src/drive/items/mcp_server_collection.rs b/app/src/drive/items/mcp_server_collection.rs index 31008637..be7d8dd7 100644 --- a/app/src/drive/items/mcp_server_collection.rs +++ b/app/src/drive/items/mcp_server_collection.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, AppContext, Element}; +use galaxyui::{elements::MouseStateHandle, AppContext, Element}; use crate::{ appearance::Appearance, diff --git a/app/src/drive/items/mod.rs b/app/src/drive/items/mod.rs index 7e8525cb..01fb2f74 100644 --- a/app/src/drive/items/mod.rs +++ b/app/src/drive/items/mod.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, AppContext, Element}; +use galaxyui::{elements::MouseStateHandle, AppContext, Element}; use crate::{ appearance::Appearance, @@ -44,7 +44,7 @@ pub trait WarpDriveItem { fn icon(&self, appearance: &Appearance, color: Option) -> Option> { let object_type = self.object_type()?; let icon_fill = color.unwrap_or(warp_drive_icon_color(appearance, object_type).into()); - Some(Icon::from(object_type).to_warpui_icon(icon_fill).finish()) + Some(Icon::from(object_type).to_galaxyui_icon(icon_fill).finish()) } /// If implemented, returns a string that summarizes the primary action history. For example, "Run 2 times in the last week" diff --git a/app/src/drive/items/notebook.rs b/app/src/drive/items/notebook.rs index d4946e36..a8cdda2c 100644 --- a/app/src/drive/items/notebook.rs +++ b/app/src/drive/items/notebook.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{Flex, MouseStateHandle, ParentElement}, fonts::Weight, ui_components::components::{UiComponent, UiComponentStyles}, diff --git a/app/src/drive/items/space.rs b/app/src/drive/items/space.rs index 4b9ab3d6..1a764750 100644 --- a/app/src/drive/items/space.rs +++ b/app/src/drive/items/space.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, Element}; +use galaxyui::{elements::MouseStateHandle, Element}; use crate::{ appearance::Appearance, @@ -63,7 +63,7 @@ impl WarpDriveItem for WarpDriveSpace { Box::new(self.clone()) } - fn action_summary(&self, _app: &warpui::AppContext) -> Option { + fn action_summary(&self, _app: &galaxyui::AppContext) -> Option { None } } diff --git a/app/src/drive/items/workflow.rs b/app/src/drive/items/workflow.rs index f99e0b28..b156b84a 100644 --- a/app/src/drive/items/workflow.rs +++ b/app/src/drive/items/workflow.rs @@ -1,5 +1,5 @@ -use warp_core::context_flag::ContextFlag; -use warpui::{ +use galaxy_core::context_flag::ContextFlag; +use galaxyui::{ elements::{Container, Flex, MouseStateHandle, ParentElement}, fonts::Weight, ui_components::components::{UiComponent, UiComponentStyles}, @@ -71,7 +71,7 @@ impl WarpDriveItem for WarpDriveWorkflow { fn preview(&self, appearance: &Appearance) -> Option> { let mut modal = - Flex::column().with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Stretch); + Flex::column().with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Stretch); let mut text = Flex::column() .with_child(Container::new(self.render_workflow_name(appearance)).finish()); diff --git a/app/src/drive/mod.rs b/app/src/drive/mod.rs index a95caa63..c4899f02 100644 --- a/app/src/drive/mod.rs +++ b/app/src/drive/mod.rs @@ -18,8 +18,8 @@ use std::{cmp::Ordering, fmt}; pub use index::DriveIndexVariant; pub use panel::{DrivePanel, DrivePanelEvent}; use serde::{Deserialize, Serialize}; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::AppContext; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::AppContext; use crate::{ cloud_object::{ diff --git a/app/src/drive/panel.rs b/app/src/drive/panel.rs index 0b5f0222..e58849c3 100644 --- a/app/src/drive/panel.rs +++ b/app/src/drive/panel.rs @@ -1,5 +1,5 @@ use futures::Future; -use warpui::{ +use galaxyui::{ elements::{Align, Flex, Hoverable, MouseStateHandle, ParentElement, SavePosition, Shrinkable}, presenter::ChildView, windowing::{StateEvent, WindowManager}, @@ -683,7 +683,7 @@ impl View for DrivePanel { } } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { let body = Hoverable::new( self.mouse_state_handles.focus_panel_mouse_state.clone(), |_| { @@ -705,7 +705,7 @@ impl View for DrivePanel { let mut col = Flex::column(); col.add_child(Shrinkable::new(1., body).finish()); - col.with_main_axis_size(warpui::elements::MainAxisSize::Max) + col.with_main_axis_size(galaxyui::elements::MainAxisSize::Max) .finish() } } diff --git a/app/src/drive/panel_test.rs b/app/src/drive/panel_test.rs index ad8eebe1..ad7b5be4 100644 --- a/app/src/drive/panel_test.rs +++ b/app/src/drive/panel_test.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App}; use crate::{ ai::blocklist::BlocklistAIHistoryModel, diff --git a/app/src/drive/settings.rs b/app/src/drive/settings.rs index 0bd5e3d2..615c54d7 100644 --- a/app/src/drive/settings.rs +++ b/app/src/drive/settings.rs @@ -1,7 +1,7 @@ use settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use super::DriveSortOrder; @@ -40,8 +40,8 @@ impl WarpDriveSettings { /// Returns whether Warp Drive should be considered enabled. /// Returns `false` when the user is anonymous or fully logged out, /// regardless of the user setting. - pub fn is_warp_drive_enabled(app: &warpui::AppContext) -> bool { - use warpui::SingletonEntity as _; + pub fn is_warp_drive_enabled(app: &galaxyui::AppContext) -> bool { + use galaxyui::SingletonEntity as _; let is_anonymous_or_logged_out = FeatureFlag::SkipFirebaseAnonymousUser.is_enabled() && crate::auth::AuthStateProvider::as_ref(app) .get() diff --git a/app/src/drive/sharing/dialog/inheritance.rs b/app/src/drive/sharing/dialog/inheritance.rs index 50ec8ccf..df9414f8 100644 --- a/app/src/drive/sharing/dialog/inheritance.rs +++ b/app/src/drive/sharing/dialog/inheritance.rs @@ -1,7 +1,7 @@ //! Support for displaying inherited ACLs. -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{CrossAxisAlignment, Flex, MouseStateHandle, ParentElement as _}, ui_components::components::UiComponent as _, AppContext, Element, SingletonEntity as _, diff --git a/app/src/drive/sharing/dialog/mod.rs b/app/src/drive/sharing/dialog/mod.rs index 1831e986..30b18b3c 100644 --- a/app/src/drive/sharing/dialog/mod.rs +++ b/app/src/drive/sharing/dialog/mod.rs @@ -36,21 +36,21 @@ use inheritance::{InheritanceDetails, InheritanceState}; use itertools::Itertools; use pathfinder_geometry::vector::vec2f; use session_sharing_protocol::common::{Guest, PendingGuest, SessionId, TeamAclData}; -use warp_core::ui::appearance::Appearance; -use warp_editor::editor::NavigationKey; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::{ Align, ChildAnchor, ChildView, Fill, Highlight, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, PositionedElementAnchor, PositionedElementOffsetBounds, SavePosition, ScrollStateHandle, Scrollable, ScrollableElement, ScrollbarWidth, Shrinkable, Stack, UniformList, UniformListState, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; -use warpui::ui_components::components::Coords; -use warpui::FocusContext; -use warpui::WeakViewHandle; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; +use galaxyui::ui_components::components::Coords; +use galaxyui::FocusContext; +use galaxyui::WeakViewHandle; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Empty, Flex, @@ -198,7 +198,7 @@ pub enum SharingDialogAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -2425,7 +2425,7 @@ impl SharingDialog { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Copy link", - Icon::Link.to_warpui_icon(copy_button_foreground), + Icon::Link.to_galaxyui_icon(copy_button_foreground), MainAxisSize::Min, MainAxisAlignment::SpaceBetween, vec2f(12., 12.), diff --git a/app/src/drive/sharing/mod.rs b/app/src/drive/sharing/mod.rs index 643103e8..0f4fd30e 100644 --- a/app/src/drive/sharing/mod.rs +++ b/app/src/drive/sharing/mod.rs @@ -2,8 +2,8 @@ use std::borrow::Cow; use chrono::{DateTime, Local}; use session_sharing_protocol::common::SessionId; -use warp_core::{channel::ChannelState, ui::appearance::Appearance}; -use warpui::{ +use galaxy_core::{channel::ChannelState, ui::appearance::Appearance}; +use galaxyui::{ color::ColorU, ui_components::components::{UiComponent, UiComponentStyles}, AppContext, SingletonEntity, WeakViewHandle, @@ -24,8 +24,8 @@ use crate::{ pub mod dialog; mod style; -// Re-export types from warp_server_client. -pub use warp_server_client::drive::sharing::{ +// Re-export types from galaxy_server_client. +pub use galaxy_server_client::drive::sharing::{ LinkSharingSubjectType, SharingAccessLevel, Subject, TeamKind, UserKind, }; diff --git a/app/src/drive/sharing/style.rs b/app/src/drive/sharing/style.rs index 48b5a6bc..283b7a44 100644 --- a/app/src/drive/sharing/style.rs +++ b/app/src/drive/sharing/style.rs @@ -1,10 +1,10 @@ use std::borrow::Cow; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, theme::{color::internal_colors, Fill}, }; -use warpui::{ +use galaxyui::{ color::ColorU, elements::{CornerRadius, Radius}, fonts::Weight, diff --git a/app/src/drive/workflows/ai_assist.rs b/app/src/drive/workflows/ai_assist.rs index db8870ca..c01a0b06 100644 --- a/app/src/drive/workflows/ai_assist.rs +++ b/app/src/drive/workflows/ai_assist.rs @@ -1,9 +1,9 @@ use itertools::Itertools; use serde::{Deserialize, Serialize}; -use warp_graphql::mutations::generate_metadata_for_command::{ +use galaxy_graphql::mutations::generate_metadata_for_command::{ GenerateMetadataForCommandFailureType, GenerateMetadataForCommandSuccess, }; -use warpui::{SingletonEntity, ViewContext}; +use galaxyui::{SingletonEntity, ViewContext}; use crate::{ ai::AIRequestUsageModel, diff --git a/app/src/drive/workflows/arguments_test.rs b/app/src/drive/workflows/arguments_test.rs index 07455cce..e12a10ab 100644 --- a/app/src/drive/workflows/arguments_test.rs +++ b/app/src/drive/workflows/arguments_test.rs @@ -1,7 +1,7 @@ use std::{fmt::Debug, iter::zip}; use crate::workflows::workflow::Argument; -use warpui::App; +use galaxyui::App; use super::ArgumentsState; diff --git a/app/src/drive/workflows/enum_creation_dialog.rs b/app/src/drive/workflows/enum_creation_dialog.rs index 33901084..3809193d 100644 --- a/app/src/drive/workflows/enum_creation_dialog.rs +++ b/app/src/drive/workflows/enum_creation_dialog.rs @@ -2,9 +2,9 @@ use std::rc::Rc; use strum::IntoEnumIterator; use strum_macros::{EnumIter, IntoStaticStr}; -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ Border, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Fill, Flex, MainAxisAlignment, MainAxisSize, @@ -597,7 +597,7 @@ impl EnumCreationDialog { .with_centered_text_label(label_text.to_owned()) .with_style(UiComponentStyles { font_size: Some(BUTTON_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Normal), + font_weight: Some(galaxyui::fonts::Weight::Normal), ..Default::default() }); @@ -608,7 +608,7 @@ impl EnumCreationDialog { button .build() .on_click(move |ctx, _, _| ctx.dispatch_typed_action(action.clone())) - .with_cursor(warpui::platform::Cursor::PointingHand) + .with_cursor(galaxyui::platform::Cursor::PointingHand) .finish() } diff --git a/app/src/drive/workflows/modal.rs b/app/src/drive/workflows/modal.rs index 8458ff92..1b636cf4 100644 --- a/app/src/drive/workflows/modal.rs +++ b/app/src/drive/workflows/modal.rs @@ -5,11 +5,11 @@ use std::{cmp::Ordering, sync::Arc}; use itertools::Itertools; use pathfinder_geometry::vector::vec2f; use string_offset::CharOffset; -use warp_core::ui::theme::Fill; -use warp_editor::editor::NavigationKey; -use warpui::elements::Clipped; -use warpui::FocusContext; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::Clipped; +use galaxyui::FocusContext; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, Border, ChildAnchor, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, @@ -1412,7 +1412,7 @@ impl WorkflowModal { let workflow_icon = Container::new( ConstrainedBox::new( Icon::from(DriveObjectType::Workflow) - .to_warpui_icon( + .to_galaxyui_icon( warp_drive_icon_color(appearance, DriveObjectType::Workflow).into(), ) .finish(), @@ -1710,7 +1710,7 @@ impl WorkflowModal { let text_and_icon = TextAndIcon::new( TextAndIconAlignment::TextFirst, label.to_string(), - icon.to_warpui_icon(appearance.theme().active_ui_text_color()), + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(16., 16.), diff --git a/app/src/drive/workflows/modal_test.rs b/app/src/drive/workflows/modal_test.rs index 23a812e1..44c75dca 100644 --- a/app/src/drive/workflows/modal_test.rs +++ b/app/src/drive/workflows/modal_test.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App, SingletonEntity, ViewHandle}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App, SingletonEntity, ViewHandle}; use std::sync::Arc; diff --git a/app/src/drive/workflows/workflow_arg_selector.rs b/app/src/drive/workflows/workflow_arg_selector.rs index ed85d920..acafdab8 100644 --- a/app/src/drive/workflows/workflow_arg_selector.rs +++ b/app/src/drive/workflows/workflow_arg_selector.rs @@ -1,9 +1,9 @@ use itertools::Itertools; use std::{collections::HashMap, rc::Rc}; use strum::IntoEnumIterator; -use warp_core::ui::{appearance::Appearance, theme::Fill}; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::Fill}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Empty, EventHandler, @@ -33,9 +33,9 @@ use crate::{ workflows::workflow::ArgumentType, }; -use warpui::platform::Cursor; +use galaxyui::platform::Cursor; -use warpui::{ +use galaxyui::{ elements::{ParentAnchor, ParentOffsetBounds}, fonts::FamilyId, }; @@ -610,7 +610,7 @@ impl WorkflowArgSelector { fn render_search_icon(&self, appearance: &Appearance) -> Box { ConstrainedBox::new( icons::Icon::SearchSmall - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(12.) @@ -865,7 +865,7 @@ impl WorkflowArgSelector { ScrollbarWidth::Auto, theme.disabled_text_color(theme.background()).into(), theme.main_text_color(theme.background()).into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), ) diff --git a/app/src/drive/workflows/workflow_arg_type_helpers.rs b/app/src/drive/workflows/workflow_arg_type_helpers.rs index 977cfc33..871ccd5b 100644 --- a/app/src/drive/workflows/workflow_arg_type_helpers.rs +++ b/app/src/drive/workflows/workflow_arg_type_helpers.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use warpui::{AppContext, SingletonEntity, ViewHandle}; +use galaxyui::{AppContext, SingletonEntity, ViewHandle}; use crate::{ cloud_object::{model::persistence::CloudModel, CloudObjectEventEntrypoint, Owner}, @@ -36,10 +36,10 @@ impl ArgumentTypeEditor for super::modal::ArgumentEditorRow { /// Get all workflow enums in the space, filtering to only show the shared ones pub fn load_workflow_enums_with_owner( owner: Owner, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) -> HashMap where - V: warpui::View, + V: galaxyui::View, { let cloud_model = CloudModel::as_ref(ctx); cloud_model @@ -65,7 +65,7 @@ pub fn load_argument_into_selector( selector: &mut WorkflowArgSelector, argument: &Argument, all_workflow_enums: &mut HashMap, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { let selected_type = argument.arg_type.clone().into(); selector.set_selected_type(selected_type, ctx); @@ -153,9 +153,9 @@ pub fn extract_typed_argument_from_selector( pub fn save_enum( enum_data: &WorkflowEnumData, owner: Option, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) where - V: warpui::View, + V: galaxyui::View, { let Some(variants) = enum_data.new_data.clone() else { return; @@ -203,10 +203,10 @@ pub fn create_enum( all_workflow_enums: &mut HashMap, arguments_rows: &[T], pending_argument_editor_row: &mut Option, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) where T: ArgumentTypeEditor, - V: warpui::View, + V: galaxyui::View, { let enum_id = enum_data.id; let enum_name = enum_data.name.clone(); @@ -244,10 +244,10 @@ pub fn edit_enum( all_workflow_enums: &mut HashMap, arguments_rows: &[T], pending_argument_editor_row: &mut Option, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) where T: ArgumentTypeEditor, - V: warpui::View, + V: galaxyui::View, { let enum_id = enum_data.id; let enum_name = &enum_data.name; @@ -291,10 +291,10 @@ pub fn load_enum( id: &SyncId, all_workflow_enums: &HashMap, enum_creation_dialog: &ViewHandle, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) -> bool where - V: warpui::View, + V: galaxyui::View, { match all_workflow_enums.get(id) { // If we have local variants for this enum, pass them in diff --git a/app/src/editor/accept_autosuggestion_keybinding_view.rs b/app/src/editor/accept_autosuggestion_keybinding_view.rs index cf0fc528..1e1e988f 100644 --- a/app/src/editor/accept_autosuggestion_keybinding_view.rs +++ b/app/src/editor/accept_autosuggestion_keybinding_view.rs @@ -13,24 +13,24 @@ use crate::util::bindings::{ use crate::workspace::WorkspaceAction; use lazy_static::lazy_static; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::elements::{Border, ChildView, Flex, ParentElement}; -use warpui::elements::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{Border, ChildView, Flex, ParentElement}; +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Radius, DEFAULT_UI_LINE_HEIGHT_RATIO, }; -use warpui::keymap::Keystroke; -use warpui::platform::Cursor; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::ui_components::keyboard_shortcut::KeyboardShortcut; -use warpui::ViewContext; -use warpui::{ +use galaxyui::keymap::Keystroke; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::ui_components::keyboard_shortcut::KeyboardShortcut; +use galaxyui::ViewContext; +use galaxyui::{ elements::{ ChildAnchor, CornerRadius, Element, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack, }, AppContext, SingletonEntity, }; -use warpui::{Entity, TypedActionView, View, ViewHandle}; +use galaxyui::{Entity, TypedActionView, View, ViewHandle}; use super::EditorElement; @@ -310,7 +310,7 @@ impl View for AcceptAutosuggestionKeybinding { let chevron_down = Container::new( ConstrainedBox::new( Icon::ArrowDropDown - .to_warpui_icon(Fill::Solid(font_color)) + .to_galaxyui_icon(Fill::Solid(font_color)) .finish(), ) .with_height(height_without_border) diff --git a/app/src/editor/autosuggestion_ignore_view.rs b/app/src/editor/autosuggestion_ignore_view.rs index 1422232f..34945213 100644 --- a/app/src/editor/autosuggestion_ignore_view.rs +++ b/app/src/editor/autosuggestion_ignore_view.rs @@ -4,15 +4,15 @@ use crate::appearance::Appearance; use crate::ui_components::blended_colors; use crate::ui_components::icons::Icon; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ ChildAnchor, ConstrainedBox, Container, CornerRadius, Element, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, }; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::{Entity, TypedActionView, View}; -use warpui::{SingletonEntity, ViewContext}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{Entity, TypedActionView, View}; +use galaxyui::{SingletonEntity, ViewContext}; use super::EditorElement; @@ -77,7 +77,7 @@ impl View for AutosuggestionIgnore { "AutosuggestionIgnore" } - fn render(&self, ctx: &warpui::AppContext) -> Box { + fn render(&self, ctx: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(ctx); // Because the icon's origin is NOT the top of the line but the top of the cursor, // we should render it with line height ratio no larger than DEFAULT_UI_LINE_HEIGHT_RATIO. @@ -85,7 +85,7 @@ impl View for AutosuggestionIgnore { // But we do need to account for smaller line height ratios so the text can be rendered in the smaller space. let line_height_ratio = appearance .line_height_ratio() - .min(warpui::elements::DEFAULT_UI_LINE_HEIGHT_RATIO); + .min(galaxyui::elements::DEFAULT_UI_LINE_HEIGHT_RATIO); // We want the ignore icon to be the same height as the cursor in the input. let height = EditorElement::cursor_height(appearance.monospace_font_size(), line_height_ratio) @@ -112,7 +112,7 @@ impl View for AutosuggestionIgnore { let height_without_border = height - border_width * 2.; let close_icon = Container::new( - ConstrainedBox::new(Icon::X.to_warpui_icon(Fill::Solid(icon_color)).finish()) + ConstrainedBox::new(Icon::X.to_galaxyui_icon(Fill::Solid(icon_color)).finish()) .with_height(height_without_border) .with_width(height_without_border) .finish(), @@ -122,7 +122,7 @@ impl View for AutosuggestionIgnore { let mut ignore_button = Container::new(close_icon) .with_uniform_padding(2.) .with_border( - warpui::elements::Border::all(border_width).with_border_color(disabled_color), + galaxyui::elements::Border::all(border_width).with_border_color(disabled_color), ) .with_corner_radius(CornerRadius::with_all(Radius::Percentage(25.))); diff --git a/app/src/editor/mod.rs b/app/src/editor/mod.rs index 9f350b96..93c1dde9 100644 --- a/app/src/editor/mod.rs +++ b/app/src/editor/mod.rs @@ -7,10 +7,10 @@ mod view; /// They should _not_ be able to interface with the internal /// details of the editor (e.g. the [`Buffer`]). pub use view::*; -pub use warpui::text::point::Point; +pub use galaxyui::text::point::Point; use std::{cmp, ops::Range}; -use warpui::AppContext; +use galaxyui::AppContext; pub fn init(app: &mut AppContext) { view::init(app); diff --git a/app/src/editor/soft_wrap.rs b/app/src/editor/soft_wrap.rs index 65e79c3c..82eb5fa1 100644 --- a/app/src/editor/soft_wrap.rs +++ b/app/src/editor/soft_wrap.rs @@ -2,7 +2,7 @@ use anyhow::anyhow; use parking_lot::Mutex; use std::sync::Arc; -use warpui::text_layout; +use galaxyui::text_layout; use crate::editor::{view::DisplayPoint, Point}; diff --git a/app/src/editor/view/element.rs b/app/src/editor/view/element.rs index d12a498e..23162d92 100644 --- a/app/src/editor/view/element.rs +++ b/app/src/editor/view/element.rs @@ -23,16 +23,16 @@ use pathfinder_geometry::{ vector::{vec2f, Vector2F}, }; use vim::vim::{MotionType, VimMode}; -use warp_core::features::FeatureFlag; -use warp_core::ui::appearance::DEFAULT_UI_FONT_SIZE; -use warp_util::user_input::UserInput; -use warpui::event::KeyState; -use warpui::text_selection_utils::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::appearance::DEFAULT_UI_FONT_SIZE; +use galaxy_util::user_input::UserInput; +use galaxyui::event::KeyState; +use galaxyui::text_selection_utils::{ calculate_tick_width, create_newline_tick_rect, selection_crosses_newline_row_based, NewlineTickParams, }; -use warpui::ViewHandle; -use warpui::{event::ModifiersState, text_layout::ComputeBaselinePositionArgs}; +use galaxyui::ViewHandle; +use galaxyui::{event::ModifiersState, text_layout::ComputeBaselinePositionArgs}; use crate::editor::view::AutosuggestionLocation; use crate::themes::theme::Fill; @@ -44,7 +44,7 @@ use std::{ sync::{Arc, Mutex}, time::Duration, }; -use warpui::{ +use galaxyui::{ elements::{ AfterLayoutContext, CornerRadius, Element, Event, EventContext, LayoutContext, PaintContext, Point, SizeConstraint, @@ -56,13 +56,13 @@ use warpui::{ AppContext, SingletonEntity, TaskId, }; -use warpui::elements::{ +use galaxyui::elements::{ ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, ParentElement, Text, }; -use warpui::platform::keyboard::KeyCode; +use galaxyui::platform::keyboard::KeyCode; use instant::Instant; -use warpui::elements::{Radius, DEFAULT_UI_LINE_HEIGHT_RATIO}; +use galaxyui::elements::{Radius, DEFAULT_UI_LINE_HEIGHT_RATIO}; // Similar to the terminal::model::ansi::CursorShape, this Editor Element has different cursor // shapes. However, this element doesn't implement all the same variants, so we don't share that @@ -880,7 +880,7 @@ impl EditorElement { cursor.origin.y() - cursor_height, ); // New layer is started so avatars are rendered over text and prompt - ctx.scene.start_layer(warpui::ClipBounds::None); + ctx.scene.start_layer(galaxyui::ClipBounds::None); drawable_selections_data .avatar .paint(avatar_origin, ctx, app); @@ -896,7 +896,7 @@ impl EditorElement { cursor.origin.y() - icon_size.y() - VOICE_INPUT_ICON_CURSOR_GAP, ); // New layer is started so voice icon is rendered over text and prompt - ctx.scene.start_layer(warpui::ClipBounds::None); + ctx.scene.start_layer(galaxyui::ClipBounds::None); element.paint(icon_origin, ctx, app); ctx.scene.stop_layer(); } @@ -1491,7 +1491,7 @@ impl EditorElement { let cycle_next_command_hint = if self.should_show_cycle_next_command_hint(is_cycling, ctx) { let appearance = Appearance::as_ref(ctx); Some( - self.render_cycle_next_command_hint(warp_core::ui::theme::Fill::Solid( + self.render_cycle_next_command_hint(galaxy_core::ui::theme::Fill::Solid( blended_colors::semantic_text_disabled(appearance.theme()), )), ) @@ -1511,7 +1511,7 @@ impl EditorElement { .with_cross_axis_alignment(CrossAxisAlignment::End) .with_children([ Container::new( - ConstrainedBox::new(Icon::ArrowDown.to_warpui_icon(color).finish()) + ConstrainedBox::new(Icon::ArrowDown.to_galaxyui_icon(color).finish()) .with_max_height(icon_height) .with_max_width(icon_height) .finish(), diff --git a/app/src/editor/view/marked_text_tests.rs b/app/src/editor/view/marked_text_tests.rs index 9e1f867e..0b2b6be5 100644 --- a/app/src/editor/view/marked_text_tests.rs +++ b/app/src/editor/view/marked_text_tests.rs @@ -1,6 +1,6 @@ use vim::vim::VimMode; -use warp_core::features::FeatureFlag; -use warpui::{keymap::Keystroke, platform::WindowStyle, App}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{keymap::Keystroke, platform::WindowStyle, App}; use crate::editor::{DisplayPoint, EditorOptions, EditorView}; diff --git a/app/src/editor/view/mod.rs b/app/src/editor/view/mod.rs index ace141c4..33a1992b 100644 --- a/app/src/editor/view/mod.rs +++ b/app/src/editor/view/mod.rs @@ -38,12 +38,12 @@ use pathfinder_color::ColorU; use settings::Setting as _; use snapshot::{EditorHeightShrinkDelay, ViewSnapshot}; use vec1::{vec1, Vec1}; -use warp_core::{safe_error, send_telemetry_from_ctx}; -use warp_util::{path::ShellFamily, user_input::UserInput}; -use warpui::platform::keyboard::KeyCode; -use warpui::ui_components::button::ButtonTooltipPosition; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{elements, ViewHandle}; +use galaxy_core::{safe_error, send_telemetry_from_ctx}; +use galaxy_util::{path::ShellFamily, user_input::UserInput}; +use galaxyui::platform::keyboard::KeyCode; +use galaxyui::ui_components::button::ButtonTooltipPosition; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{elements, ViewHandle}; use crate::ai::agent::ImageContext; use crate::ai::blocklist::{BlocklistAIContextModel, PendingAttachment, PendingFile}; @@ -97,7 +97,7 @@ use vim::{ vim_a_block, vim_a_paragraph, vim_a_quote, vim_a_word, vim_inner_block, vim_inner_paragraph, vim_inner_quote, vim_inner_word, vim_word_iterator_from_offset, }; -use warp_core::semantic_selection::SemanticSelection; +use galaxy_core::semantic_selection::SemanticSelection; use num_traits::SaturatingSub; use parking_lot::Mutex; @@ -114,31 +114,31 @@ use std::{ time::Duration, }; use string_offset::{ByteOffset, CharOffset}; -use warp_completer::completer::Description; -use warp_editor::editor::NavigationKey; -use warpui::actions::StandardAction; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{ +use galaxy_completer::completer::Description; +use galaxy_editor::editor::NavigationKey; +use galaxyui::actions::StandardAction; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{ ChildView, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MainAxisSize, ParentElement, Shrinkable, DEFAULT_UI_LINE_HEIGHT_RATIO, }; -use warpui::elements::{MouseStateHandle, Radius}; -use warpui::fonts::{FamilyId, Properties, Weight}; -use warpui::keymap::{Keystroke, PerPlatformKeystroke}; -use warpui::platform::{Cursor, FilePickerConfiguration, OperatingSystem}; -use warpui::r#async::{SpawnedFutureHandle, Timer}; -use warpui::text::word_boundaries::WordBoundariesPolicy; -use warpui::text::TextBuffer; -use warpui::text_layout::TextStyle; -use warpui::windowing::WindowManager; -use warpui::{ +use galaxyui::elements::{MouseStateHandle, Radius}; +use galaxyui::fonts::{FamilyId, Properties, Weight}; +use galaxyui::keymap::{Keystroke, PerPlatformKeystroke}; +use galaxyui::platform::{Cursor, FilePickerConfiguration, OperatingSystem}; +use galaxyui::r#async::{SpawnedFutureHandle, Timer}; +use galaxyui::text::word_boundaries::WordBoundariesPolicy; +use galaxyui::text::TextBuffer; +use galaxyui::text_layout::TextStyle; +use galaxyui::windowing::WindowManager; +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, fonts::Cache as FontCache, keymap::{EditableBinding, FixedBinding}, AppContext, Element, Entity, ModelAsRef, ModelHandle, View, ViewContext, WindowId, }; -use warpui::{windowing, BlurContext, EntityId, FocusContext}; -use warpui::{CursorInfo, ModelContext, SingletonEntity, TypedActionView}; +use galaxyui::{windowing, BlurContext, EntityId, FocusContext}; +use galaxyui::{CursorInfo, ModelContext, SingletonEntity, TypedActionView}; const CURSOR_BLINK_INTERVAL: Duration = Duration::from_millis(500); const DEFAULT_TAB_SIZE: usize = 4; @@ -149,7 +149,7 @@ pub const VOICE_ERROR_TOAST_TEXT: &str = "An error occurred while processing you pub const MAX_IMAGES_PER_CONVERSATION: usize = 200; -use warpui::clipboard_utils::CLIPBOARD_IMAGE_MIME_TYPES; +use galaxyui::clipboard_utils::CLIPBOARD_IMAGE_MIME_TYPES; #[derive(Clone, Copy)] pub enum AutosuggestionLocation { @@ -191,7 +191,7 @@ pub const SELECT_UP_ACTION_NAME: &str = "editor_view:select_up"; pub const SELECT_DOWN_ACTION_NAME: &str = "editor_view:select_down"; pub fn init(ctx: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; ctx.register_fixed_bindings(vec![ // Below are default bindings that are similar to the behavior in all other text editors. @@ -1383,7 +1383,7 @@ type RenderDecoratorElementsFn = Box EditorDecoratorEleme /// Type alias for a closure that allows parent views to add flags to the EditorView's keymap context. /// The closure takes the context by mutable reference and can insert additional flags. -pub type KeymapContextModifierFn = Box; +pub type KeymapContextModifierFn = Box; /// Enum to choose between different methods of computing the baseline offset for text. #[derive(Clone, Debug)] @@ -7912,7 +7912,7 @@ impl EditorView { // from the filesystem (the path transformer, if any, only applies to text insertion). let paths_as_strings: Vec = paths.iter().map(|path| path.to_string()).collect(); let image_filepaths = - warpui::clipboard_utils::get_image_filepaths_from_paths(&paths_as_strings); + galaxyui::clipboard_utils::get_image_filepaths_from_paths(&paths_as_strings); // If we have image file paths, emit event for parent to handle terminal-specific processing let num_image_files = image_filepaths.len(); @@ -7931,7 +7931,7 @@ impl EditorView { }; let input = - warpui::clipboard_utils::escaped_paths_str(&transformed_paths, self.shell_family); + galaxyui::clipboard_utils::escaped_paths_str(&transformed_paths, self.shell_family); self.user_insert(&input, ctx); } @@ -8667,7 +8667,7 @@ impl View for EditorView { } } - fn keymap_context(&self, ctx: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, ctx: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if self.single_cursor_at_buffer_end(false /* respect_line_cap */, ctx) { diff --git a/app/src/editor/view/mod_test.rs b/app/src/editor/view/mod_test.rs index 8b342b05..1ef39b15 100644 --- a/app/src/editor/view/mod_test.rs +++ b/app/src/editor/view/mod_test.rs @@ -16,11 +16,11 @@ use itertools::Itertools; use pathfinder_geometry::vector::vec2f; use settings::ToggleableSetting; use unindent::Unindent; -use warpui::color::ColorU; -use warpui::platform::WindowStyle; -use warpui::text_layout::TextFrame; -use warpui::windowing::WindowManager; -use warpui::{AddSingletonModel, App, UpdateModel, UpdateView}; +use galaxyui::color::ColorU; +use galaxyui::platform::WindowStyle; +use galaxyui::text_layout::TextFrame; +use galaxyui::windowing::WindowManager; +use galaxyui::{AddSingletonModel, App, UpdateModel, UpdateView}; impl EditorView { fn selected_ranges(&self, app: &AppContext) -> Vec> { @@ -2038,7 +2038,7 @@ fn test_delete_and_cut_all_right() -> Result<()> { #[test] fn test_autosuggestions() -> Result<()> { - use warpui::text_layout::LayoutCache; + use galaxyui::text_layout::LayoutCache; App::test((), |mut app| async move { initialize_app(&mut app); @@ -2316,7 +2316,7 @@ fn test_partial_autosuggestion() -> Result<()> { #[test] fn test_placeholder_text() { - use warpui::text_layout::LayoutCache; + use galaxyui::text_layout::LayoutCache; App::test((), |mut app| async move { initialize_app(&mut app); @@ -4169,7 +4169,7 @@ fn test_paste_clipboard_with_text_only_should_paste_text_normally() { // Text-only clipboard - should paste text normally app.update(|ctx| { - let clipboard_content = warpui::clipboard::ClipboardContent { + let clipboard_content = galaxyui::clipboard::ClipboardContent { plain_text: "hello world".to_string(), paths: None, html: None, @@ -4185,7 +4185,7 @@ fn test_paste_clipboard_with_text_only_should_paste_text_normally() { // Empty images array should also fall back to text paste app.update(|ctx| { - let clipboard_content = warpui::clipboard::ClipboardContent { + let clipboard_content = galaxyui::clipboard::ClipboardContent { plain_text: "fallback text".to_string(), paths: None, html: None, @@ -4223,12 +4223,12 @@ fn test_paste_clipboard_with_image_only_should_switch_to_agent_mode() { // Image-only clipboard - should switch to Agent Mode and attach image app.update(|ctx| { - let png_image = warpui::clipboard::ImageData { + let png_image = galaxyui::clipboard::ImageData { data: vec![137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13], // PNG header + minimal data mime_type: "image/png".to_string(), filename: None, }; - let clipboard_content = warpui::clipboard::ClipboardContent { + let clipboard_content = galaxyui::clipboard::ClipboardContent { plain_text: "".to_string(), // No text paths: None, html: None, @@ -4266,12 +4266,12 @@ fn test_paste_clipboard_with_supported_image_and_text_should_handle_both() { // PNG (supported) image and text clipboard - should switch to Agent Mode, attach image, and paste text app.update(|ctx| { - let png_image = warpui::clipboard::ImageData { + let png_image = galaxyui::clipboard::ImageData { data: vec![137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13], // PNG header + minimal data mime_type: "image/png".to_string(), filename: Some("test.png".to_string()), }; - let clipboard_content = warpui::clipboard::ClipboardContent { + let clipboard_content = galaxyui::clipboard::ClipboardContent { plain_text: "some descriptive text".to_string(), paths: None, html: None, @@ -4310,12 +4310,12 @@ fn test_paste_clipboard_with_unsupported_image_and_text_should_show_error() { // BMP (unsupported) image and text clipboard - should show error and paste text only app.update(|ctx| { - let bmp_image = warpui::clipboard::ImageData { + let bmp_image = galaxyui::clipboard::ImageData { data: vec![66, 77, 54, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0], // BMP header + minimal data mime_type: "image/bmp".to_string(), filename: Some("test.bmp".to_string()), }; - let clipboard_content = warpui::clipboard::ClipboardContent { + let clipboard_content = galaxyui::clipboard::ClipboardContent { plain_text: "text with unsupported image".to_string(), paths: None, html: None, @@ -4503,7 +4503,7 @@ fn test_drag_and_drop_files_applies_path_transformer() { view.update(&mut app, |view, ctx| { view.clear_buffer(ctx); view.set_drag_drop_path_transformer(Some(Box::new( - warp_util::path::convert_windows_path_to_wsl, + galaxy_util::path::convert_windows_path_to_wsl, ))); view.drag_and_drop_files(&paths(), ctx); assert_eq!(view.buffer_text(ctx), "/mnt/c/foo/bar /mnt/d/baz "); @@ -4512,7 +4512,7 @@ fn test_drag_and_drop_files_applies_path_transformer() { view.update(&mut app, |view, ctx| { view.clear_buffer(ctx); view.set_drag_drop_path_transformer(Some(Box::new( - warp_util::path::convert_windows_path_to_msys2, + galaxy_util::path::convert_windows_path_to_msys2, ))); view.drag_and_drop_files(&paths(), ctx); assert_eq!(view.buffer_text(ctx), "/c/foo/bar /d/baz "); diff --git a/app/src/editor/view/model/buffer/mod.rs b/app/src/editor/view/model/buffer/mod.rs index 25c0f13d..955b6ec4 100644 --- a/app/src/editor/view/model/buffer/mod.rs +++ b/app/src/editor/view/model/buffer/mod.rs @@ -42,10 +42,10 @@ use sum_tree::{self, Cursor, FilterCursor, SeekBias, SumTree}; use time::{Global, Lamport}; use undo::{LocalUndoStack, UndoHistory}; use vec1::{vec1, Vec1}; -use warpui::color::ColorU; -use warpui::text::{point::Point, words::is_default_word_boundary, BufferIndex, TextBuffer}; -use warpui::text_layout::TextStyle; -use warpui::{Entity, ModelContext}; +use galaxyui::color::ColorU; +use galaxyui::text::{point::Point, words::is_default_word_boundary, BufferIndex, TextBuffer}; +use galaxyui::text_layout::TextStyle; +use galaxyui::{Entity, ModelContext}; #[cfg(test)] use rand::prelude::*; @@ -365,9 +365,9 @@ impl TextStyleOperation { /// /// # Example /// ``` - /// use warpui::color::ColorU; - /// use warpui::text_layout::TextStyle; - /// use warp::editor::TextStyleOperation; + /// use galaxyui::color::ColorU; + /// use galaxyui::text_layout::TextStyle; + /// use galaxy::editor::TextStyleOperation; /// TextStyleOperation::apply_text_style_operation( /// TextStyle::default(), /// TextStyleOperation::default().set_error_underline_color(ColorU::black()), @@ -1646,9 +1646,9 @@ impl Buffer { /// /// # Example /// ```ignore - /// use warpui::{color::ColorU, App, ModelHandle}; - /// use warp::Assets; - /// use warp::editor::model::buffer::{Buffer, TextStyleOperation, EditOrigin}; + /// use galaxyui::{color::ColorU, App, ModelHandle}; + /// use galaxy::Assets; + /// use galaxy::editor::model::buffer::{Buffer, TextStyleOperation, EditOrigin}; /// use string_offset::CharOffset; /// App::test((), |mut app| async move { /// let buffer_model: &mut ModelHandle = diff --git a/app/src/editor/view/model/buffer/mod_test.rs b/app/src/editor/view/model/buffer/mod_test.rs index a5a46f14..f2bb1ed2 100644 --- a/app/src/editor/view/model/buffer/mod_test.rs +++ b/app/src/editor/view/model/buffer/mod_test.rs @@ -15,7 +15,7 @@ use std::{ collections::HashSet, pin::{pin, Pin}, }; -use warpui::{color::ColorU, App, ModelHandle}; +use galaxyui::{color::ColorU, App, ModelHandle}; fn visible_text_styles(buffer: &Buffer) -> Vec> { buffer diff --git a/app/src/editor/view/model/buffer/subword_boundaries.rs b/app/src/editor/view/model/buffer/subword_boundaries.rs index 916f8592..d28b4004 100644 --- a/app/src/editor/view/model/buffer/subword_boundaries.rs +++ b/app/src/editor/view/model/buffer/subword_boundaries.rs @@ -1,7 +1,7 @@ use super::{CharOffset, Point}; use itertools::Either; use std::iter::Peekable; -use warpui::text::{ +use galaxyui::text::{ word_boundaries::WordBoundariesApproach, words::is_subword_boundary_char, TextBuffer, }; diff --git a/app/src/editor/view/model/buffer/subword_boundaries_tests.rs b/app/src/editor/view/model/buffer/subword_boundaries_tests.rs index 321fd00a..49cd4e3f 100644 --- a/app/src/editor/view/model/buffer/subword_boundaries_tests.rs +++ b/app/src/editor/view/model/buffer/subword_boundaries_tests.rs @@ -1,5 +1,5 @@ use super::super::Buffer; -use warpui::text::point::Point; +use galaxyui::text::point::Point; #[test] fn test_subword_boundaries_forward_starts() { diff --git a/app/src/editor/view/model/buffer/text.rs b/app/src/editor/view/model/buffer/text.rs index 56dacfd0..174b4801 100644 --- a/app/src/editor/view/model/buffer/text.rs +++ b/app/src/editor/view/model/buffer/text.rs @@ -8,8 +8,8 @@ use std::{ }; use string_offset::{ByteOffset, CharOffset}; use sum_tree::{self, SeekBias, SumTree}; -use warpui::text::point::Point; -use warpui::text_layout::TextStyle; +use galaxyui::text::point::Point; +use galaxyui::text_layout::TextStyle; #[derive(Copy, Clone, Debug, Eq, PartialEq)] enum Run { diff --git a/app/src/editor/view/model/display_map/fold_map.rs b/app/src/editor/view/model/display_map/fold_map.rs index 031c565b..95d17381 100644 --- a/app/src/editor/view/model/display_map/fold_map.rs +++ b/app/src/editor/view/model/display_map/fold_map.rs @@ -10,8 +10,8 @@ use std::{ }; use string_offset::CharOffset; use sum_tree::{self, Cursor, Dimension, SeekBias, SumTree}; -use warpui::text_layout::TextStyle; -use warpui::{AppContext, ModelHandle}; +use galaxyui::text_layout::TextStyle; +use galaxyui::{AppContext, ModelHandle}; pub struct FoldMap { buffer: ModelHandle, diff --git a/app/src/editor/view/model/display_map/fold_map_test.rs b/app/src/editor/view/model/display_map/fold_map_test.rs index 9704c052..999405e9 100644 --- a/app/src/editor/view/model/display_map/fold_map_test.rs +++ b/app/src/editor/view/model/display_map/fold_map_test.rs @@ -2,7 +2,7 @@ use super::*; use crate::editor::tests::{sample_text, RandomCharIter}; use crate::editor::EditOrigin; use tests::buffer::RangesWhenEditing; -use warpui::App; +use galaxyui::App; #[test] fn test_basic_folds() -> Result<()> { diff --git a/app/src/editor/view/model/display_map/mod.rs b/app/src/editor/view/model/display_map/mod.rs index 121561b4..b78892dd 100644 --- a/app/src/editor/view/model/display_map/mod.rs +++ b/app/src/editor/view/model/display_map/mod.rs @@ -8,8 +8,8 @@ use fold_map::FoldMap; use std::cmp; use std::ops::Range; use string_offset::CharOffset; -use warpui::text::point::Point; -use warpui::{AppContext, Entity, ModelContext, ModelHandle}; +use galaxyui::text::point::Point; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle}; #[derive(Copy, Clone)] pub enum Bias { diff --git a/app/src/editor/view/model/display_map/mod_test.rs b/app/src/editor/view/model/display_map/mod_test.rs index 1533827e..8a977f18 100644 --- a/app/src/editor/view/model/display_map/mod_test.rs +++ b/app/src/editor/view/model/display_map/mod_test.rs @@ -3,7 +3,7 @@ use crate::editor::tests::sample_text; use super::*; use crate::editor::EditOrigin; use anyhow::Error; -use warpui::App; +use galaxyui::App; #[test] fn test_chars_at() -> Result<()> { diff --git a/app/src/editor/view/model/mod.rs b/app/src/editor/view/model/mod.rs index d038143f..44f1e809 100644 --- a/app/src/editor/view/model/mod.rs +++ b/app/src/editor/view/model/mod.rs @@ -29,12 +29,12 @@ use std::{ use num_traits::SaturatingSub; use string_offset::{ByteOffset, CharOffset}; use vec1::{vec1, Vec1}; -use warpui::{ +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, text_layout::TextStyle, AppContext, Entity, ModelAsRef, ModelContext, ModelHandle, }; -use warpui::{ +use galaxyui::{ text::{point::Point, word_boundaries::WordBoundariesPolicy, TextBuffer}, SingletonEntity, }; diff --git a/app/src/editor/view/model/mod_test.rs b/app/src/editor/view/model/mod_test.rs index 4696667a..134692b6 100644 --- a/app/src/editor/view/model/mod_test.rs +++ b/app/src/editor/view/model/mod_test.rs @@ -1,5 +1,5 @@ use string_offset::{ByteOffset, CharOffset}; -use warpui::{text_layout::TextStyle, App}; +use galaxyui::{text_layout::TextStyle, App}; use crate::editor::{EditorSnapshot, PlainTextEditorViewAction, TextRun, ValidInputType}; diff --git a/app/src/editor/view/model/selections.rs b/app/src/editor/view/model/selections.rs index 0bce27ee..37e76d7b 100644 --- a/app/src/editor/view/model/selections.rs +++ b/app/src/editor/view/model/selections.rs @@ -4,8 +4,8 @@ use pathfinder_geometry::vector::Vector2F; use serde::{Deserialize, Serialize}; use string_offset::{ByteOffset, CharOffset}; use vec1::Vec1; -use warpui::text::point::Point; -use warpui::AppContext; +use galaxyui::text::point::Point; +use galaxyui::AppContext; use super::{ buffer::{Anchor, Buffer, LamportValue, ToBufferOffset, ToCharOffset, ToPoint}, diff --git a/app/src/editor/view/movement.rs b/app/src/editor/view/movement.rs index 282d1065..a757a5d0 100644 --- a/app/src/editor/view/movement.rs +++ b/app/src/editor/view/movement.rs @@ -1,6 +1,6 @@ use super::{DisplayMap, DisplayPoint}; use anyhow::Result; -use warpui::AppContext; +use galaxyui::AppContext; pub fn left( map: &DisplayMap, diff --git a/app/src/editor/view/snapshot.rs b/app/src/editor/view/snapshot.rs index c9c13602..006a5f51 100644 --- a/app/src/editor/view/snapshot.rs +++ b/app/src/editor/view/snapshot.rs @@ -26,19 +26,19 @@ use std::{ ops::Range, sync::Arc, }; -use warp_completer::completer::Description; -use warpui::text::point::Point; +use galaxy_completer::completer::Description; +use galaxyui::text::point::Point; use string_offset::ByteOffset; -use warpui::fonts::{FamilyId, Properties}; -use warpui::platform::LineStyle; -use warpui::text_layout::{ +use galaxyui::fonts::{FamilyId, Properties}; +use galaxyui::platform::LineStyle; +use galaxyui::text_layout::{ default_compute_baseline_position_fn, ClipConfig, ComputeBaselinePositionFn, StyleAndFont, TextAlignment, TextStyle, DEFAULT_TOP_BOTTOM_RATIO, }; -use warpui::EntityId; -use warpui::{ +use galaxyui::EntityId; +use galaxyui::{ fonts::Cache as FontCache, text_layout::{self, LayoutCache}, AppContext, ModelHandle, diff --git a/app/src/editor/view/vim_handler_test.rs b/app/src/editor/view/vim_handler_test.rs index ed098717..49379c9f 100644 --- a/app/src/editor/view/vim_handler_test.rs +++ b/app/src/editor/view/vim_handler_test.rs @@ -3,8 +3,8 @@ use crate::editor::EditorView; use itertools::Itertools; use std::collections::HashSet; use unindent::Unindent; -use warpui::platform::WindowStyle; -use warpui::{App, ViewHandle}; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, ViewHandle}; /// Helper function for testing vim mode commands. /// This creates an editor with the given content and enters Vim Normal mode, @@ -294,11 +294,11 @@ fn test_vim_number_repeat_line_motion() { // Lay out the window so that up and down motions work. // Layout code starts here. let window_id = app.read(|ctx| editor.window_id(ctx)); - let mut presenter = warpui::presenter::Presenter::new(window_id); + let mut presenter = galaxyui::presenter::Presenter::new(window_id); let mut updated = HashSet::new(); updated.insert(app.root_view_id(window_id).unwrap()); - let invalidation = warpui::WindowInvalidation { + let invalidation = galaxyui::WindowInvalidation { updated, ..Default::default() }; @@ -374,11 +374,11 @@ fn test_vim_number_repeat_character_motion() { // Lay out the window so that up and down motions work. // Layout code starts here. let window_id = app.read(|ctx| editor.window_id(ctx)); - let mut presenter = warpui::presenter::Presenter::new(window_id); + let mut presenter = galaxyui::presenter::Presenter::new(window_id); let mut updated = HashSet::new(); updated.insert(app.root_view_id(window_id).unwrap()); - let invalidation = warpui::WindowInvalidation { + let invalidation = galaxyui::WindowInvalidation { updated, ..Default::default() }; @@ -2393,11 +2393,11 @@ fn test_vim_begin_line_above() { // Lay out the window so that up and down motions work. // Layout code starts here. let window_id = app.read(|ctx| editor.window_id(ctx)); - let mut presenter = warpui::presenter::Presenter::new(window_id); + let mut presenter = galaxyui::presenter::Presenter::new(window_id); let mut updated = HashSet::new(); updated.insert(app.root_view_id(window_id).unwrap()); - let invalidation = warpui::WindowInvalidation { + let invalidation = galaxyui::WindowInvalidation { updated, ..Default::default() }; @@ -7624,10 +7624,10 @@ fn test_vim_visual_selection_with_newlines() { // Ensure layout so vertical motions (j/k) use real geometry for goal columns. let window_id = app.read(|ctx| editor.window_id(ctx)); - let mut presenter = warpui::presenter::Presenter::new(window_id); + let mut presenter = galaxyui::presenter::Presenter::new(window_id); let mut updated = std::collections::HashSet::new(); updated.insert(app.root_view_id(window_id).unwrap()); - let invalidation = warpui::WindowInvalidation { + let invalidation = galaxyui::WindowInvalidation { updated, ..Default::default() }; @@ -7672,10 +7672,10 @@ fn test_vim_visual_selection_with_newlines() { // Re-layout for new content let window_id = app.read(|ctx| editor.window_id(ctx)); - let mut presenter = warpui::presenter::Presenter::new(window_id); + let mut presenter = galaxyui::presenter::Presenter::new(window_id); let mut updated = std::collections::HashSet::new(); updated.insert(app.root_view_id(window_id).unwrap()); - let invalidation = warpui::WindowInvalidation { + let invalidation = galaxyui::WindowInvalidation { updated, ..Default::default() }; diff --git a/app/src/editor/view/voice.rs b/app/src/editor/view/voice.rs index fb296dcd..97aea52f 100644 --- a/app/src/editor/view/voice.rs +++ b/app/src/editor/view/voice.rs @@ -13,17 +13,17 @@ use crate::workspace::ToastStack; use crate::workspaces::user_workspaces::UserWorkspaces; use settings::Setting as _; use voice_input::{StartListeningError, VoiceInput, VoiceSessionResult}; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::elements; -use warpui::elements::{Container, CornerRadius, Icon, Radius}; -use warpui::platform::Cursor; -use warpui::r#async::SpawnedFutureHandle; -use warpui::ui_components::button::ButtonTooltipPosition; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ViewHandle; -use warpui::{AppContext, Element, SingletonEntity, ViewContext}; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::elements; +use galaxyui::elements::{Container, CornerRadius, Icon, Radius}; +use galaxyui::platform::Cursor; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::ui_components::button::ButtonTooltipPosition; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ViewHandle; +use galaxyui::{AppContext, Element, SingletonEntity, ViewContext}; use super::VoiceTranscriber; @@ -82,7 +82,7 @@ impl EditorView { crate::view_components::NewFeaturePopupEvent::Dismissed ) { AISettings::handle(ctx).update(ctx, |settings, ctx| { - warp_core::report_if_error!(settings + galaxy_core::report_if_error!(settings .dismissed_voice_input_new_feature_popup .set_value(true, ctx)); }); @@ -238,7 +238,7 @@ impl EditorView { // For example, the user could press Fn in a different app, then switch focus // to Warp and let it go - we should NOT activate voice input in this case. VoiceInputState::Stopped => { - if matches!(state, warpui::event::KeyState::Released) { + if matches!(state, galaxyui::event::KeyState::Released) { return false; } } @@ -247,7 +247,7 @@ impl EditorView { // key events). Thus, the user cannot enter a state where we're listening for voice input // but the key is not held already. VoiceInputState::Listening => { - if matches!(state, warpui::event::KeyState::Pressed) { + if matches!(state, galaxyui::event::KeyState::Pressed) { return false; } } @@ -526,8 +526,8 @@ impl EditorView { let microphone_access_state = app.microphone_access_state(); let mic_access_denied = matches!( microphone_access_state, - warpui::platform::MicrophoneAccessState::Restricted - | warpui::platform::MicrophoneAccessState::Denied + galaxyui::platform::MicrophoneAccessState::Restricted + | galaxyui::platform::MicrophoneAccessState::Denied ); let modifier_key = AISettings::handle(app).as_ref(app).voice_input_toggle_key; @@ -606,7 +606,7 @@ impl EditorView { button = button.disabled(); } - warpui::elements::SavePosition::new( + galaxyui::elements::SavePosition::new( button .build() .on_click(move |ctx, _, _| { diff --git a/app/src/env_vars/active_env_var_collection_data.rs b/app/src/env_vars/active_env_var_collection_data.rs index 1750d4eb..3c7b10ef 100644 --- a/app/src/env_vars/active_env_var_collection_data.rs +++ b/app/src/env_vars/active_env_var_collection_data.rs @@ -15,7 +15,7 @@ use crate::{ AppContext, CloudModel, UpdateManager, }; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use super::CloudEnvVarCollectionModel; diff --git a/app/src/env_vars/env_var_collection_block.rs b/app/src/env_vars/env_var_collection_block.rs index b67b80f9..b7721b0e 100644 --- a/app/src/env_vars/env_var_collection_block.rs +++ b/app/src/env_vars/env_var_collection_block.rs @@ -10,9 +10,9 @@ use settings::Setting as _; use std::borrow::Cow; use std::rc::Rc; use std::sync::Arc; -use warp_core::semantic_selection::SemanticSelection; -use warp_core::{features::FeatureFlag, ui::Icon}; -use warpui::{ +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_core::{features::FeatureFlag, ui::Icon}; +use galaxyui::{ elements::{ get_rich_content_position_id, Border, Clipped, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, MouseStateHandle, ParentElement, Radius, SavePosition, @@ -118,7 +118,7 @@ pub struct EnvVarCollectionBlock { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( diff --git a/app/src/env_vars/manager.rs b/app/src/env_vars/manager.rs index 70338021..105e17f2 100644 --- a/app/src/env_vars/manager.rs +++ b/app/src/env_vars/manager.rs @@ -12,7 +12,7 @@ use crate::{ PaneViewLocator, WindowId, }; use std::collections::{hash_map::Entry, HashMap}; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity, WeakViewHandle}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity, WeakViewHandle}; pub struct EnvVarCollectionManager { panes_by_hashed_id: HashMap, diff --git a/app/src/env_vars/mod.rs b/app/src/env_vars/mod.rs index b8e14379..a8b2c9bd 100644 --- a/app/src/env_vars/mod.rs +++ b/app/src/env_vars/mod.rs @@ -1,7 +1,7 @@ use itertools::Itertools; use serde::{Deserialize, Serialize}; use view::command_dialog::EnvVarSecretCommand; -use warp_util::path::ShellFamily; +use galaxy_util::path::ShellFamily; pub mod active_env_var_collection_data; pub mod env_var_collection_block; diff --git a/app/src/env_vars/view/command_dialog/command_dialog_view.rs b/app/src/env_vars/view/command_dialog/command_dialog_view.rs index 6055a2b0..d1c1bfe2 100644 --- a/app/src/env_vars/view/command_dialog/command_dialog_view.rs +++ b/app/src/env_vars/view/command_dialog/command_dialog_view.rs @@ -1,6 +1,6 @@ -use warp_core::ui::appearance::Appearance; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, Flex, MouseStateHandle, ParentElement, Radius, Shrinkable, @@ -201,7 +201,7 @@ impl EnvVarCommandDialog { .with_centered_text_label(label_text.to_owned()) .with_style(UiComponentStyles { font_size: Some(BUTTON_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Normal), + font_weight: Some(galaxyui::fonts::Weight::Normal), ..Default::default() }); @@ -212,7 +212,7 @@ impl EnvVarCommandDialog { button .build() .on_click(move |ctx, _, _| ctx.dispatch_typed_action(action.clone())) - .with_cursor(warpui::platform::Cursor::PointingHand) + .with_cursor(galaxyui::platform::Cursor::PointingHand) .finish() } diff --git a/app/src/env_vars/view/command_dialog/mod.rs b/app/src/env_vars/view/command_dialog/mod.rs index dd4840f6..3933f1e2 100644 --- a/app/src/env_vars/view/command_dialog/mod.rs +++ b/app/src/env_vars/view/command_dialog/mod.rs @@ -1,6 +1,6 @@ use serde::{Deserialize, Serialize}; -use warpui::ViewContext; +use galaxyui::ViewContext; use super::env_var_collection::{EnvVarCollectionView, VariableRowIndex}; use crate::env_vars::{active_env_var_collection_data::SavingStatus, EnvVarValue}; diff --git a/app/src/env_vars/view/editors.rs b/app/src/env_vars/view/editors.rs index d17cbb63..440a6f4d 100644 --- a/app/src/env_vars/view/editors.rs +++ b/app/src/env_vars/view/editors.rs @@ -1,5 +1,5 @@ -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, Flex, ParentElement, SavePosition, Shrinkable, Stack, }, diff --git a/app/src/env_vars/view/env_var_collection.rs b/app/src/env_vars/view/env_var_collection.rs index 000855d6..2e1677ce 100644 --- a/app/src/env_vars/view/env_var_collection.rs +++ b/app/src/env_vars/view/env_var_collection.rs @@ -1,7 +1,7 @@ use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, AnchorPair, ChildAnchor, Clipped, ClippedScrollStateHandle, ClippedScrollable, @@ -1292,7 +1292,7 @@ impl View for EnvVarCollectionView { } } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let theme = appearance.theme(); let mut content = Flex::column(); diff --git a/app/src/env_vars/view/env_var_collection_tests.rs b/app/src/env_vars/view/env_var_collection_tests.rs index a2515668..bd157d7f 100644 --- a/app/src/env_vars/view/env_var_collection_tests.rs +++ b/app/src/env_vars/view/env_var_collection_tests.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App, ViewHandle}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App, ViewHandle}; use crate::auth::AuthStateProvider; use crate::{ diff --git a/app/src/env_vars/view/fixed_view_components.rs b/app/src/env_vars/view/fixed_view_components.rs index c37fdf09..22458f54 100644 --- a/app/src/env_vars/view/fixed_view_components.rs +++ b/app/src/env_vars/view/fixed_view_components.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::Vector2F; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Rect, Shrinkable, Stack, @@ -73,7 +73,7 @@ impl EnvVarCollectionView { .with_children([ ConstrainedBox::new( Icon::Trash - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_width(16.) @@ -247,7 +247,7 @@ impl EnvVarCollectionView { TextAndIcon::new( TextAndIconAlignment::TextFirst, "Load", - Icon::TerminalInput.to_warpui_icon(appearance.theme().active_ui_text_color()), + Icon::TerminalInput.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Min, MainAxisAlignment::SpaceBetween, Vector2F::new(10., 10.), diff --git a/app/src/env_vars/view/menus.rs b/app/src/env_vars/view/menus.rs index 2c3dfb39..26e10a6e 100644 --- a/app/src/env_vars/view/menus.rs +++ b/app/src/env_vars/view/menus.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::Vector2F; -use warp_core::context_flag::ContextFlag; -use warpui::{keymap::Trigger, SingletonEntity, ViewContext, ViewHandle}; +use galaxy_core::context_flag::ContextFlag; +use galaxyui::{keymap::Trigger, SingletonEntity, ViewContext, ViewHandle}; use crate::{ cloud_object::{CloudObject, GenericStringObjectFormat, Space}, diff --git a/app/src/env_vars/view/secrets.rs b/app/src/env_vars/view/secrets.rs index 25b8f077..91f926d2 100644 --- a/app/src/env_vars/view/secrets.rs +++ b/app/src/env_vars/view/secrets.rs @@ -1,8 +1,8 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; -use warpui::{ +use galaxyui::SingletonEntity; +use galaxyui::{ elements::{ ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, Empty, Fill, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, @@ -172,7 +172,7 @@ impl EnvVarCollectionView { let text_and_icon = TextAndIcon::new( TextAndIconAlignment::IconFirst, display_name, - icon.to_warpui_icon(appearance.theme().active_ui_text_color()), + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Max, MainAxisAlignment::Center, vec2f(16., 16.), diff --git a/app/src/env_vars/view/unsaved_changes_dialog.rs b/app/src/env_vars/view/unsaved_changes_dialog.rs index 34b017a3..4251f6e0 100644 --- a/app/src/env_vars/view/unsaved_changes_dialog.rs +++ b/app/src/env_vars/view/unsaved_changes_dialog.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{Container, MouseStateHandle}, fonts::Weight, platform::Cursor, diff --git a/app/src/experiments/free_tier_default_model_layer.rs b/app/src/experiments/free_tier_default_model_layer.rs index 24612f13..9dc0d311 100644 --- a/app/src/experiments/free_tier_default_model_layer.rs +++ b/app/src/experiments/free_tier_default_model_layer.rs @@ -2,7 +2,7 @@ use super::{BucketRange, Experiment, Layer}; use lazy_static::lazy_static; use std::collections::HashMap; use std::str::FromStr; -use warpui::AppContext; +use galaxyui::AppContext; lazy_static! { pub static ref FREE_TIER_DEFAULT_MODEL_LAYER: Layer = Layer { diff --git a/app/src/experiments/improved_palette_search_layer.rs b/app/src/experiments/improved_palette_search_layer.rs index b84ee2bb..11b21d82 100644 --- a/app/src/experiments/improved_palette_search_layer.rs +++ b/app/src/experiments/improved_palette_search_layer.rs @@ -2,7 +2,7 @@ use crate::experiments::{BucketRange, Experiment, Layer}; use lazy_static::lazy_static; use std::collections::HashMap; use std::str::FromStr; -use warpui::AppContext; +use galaxyui::AppContext; lazy_static! { pub static ref IMPROVED_PALETTE_SEARCH_LAYER: Layer = Layer { diff --git a/app/src/experiments/mod.rs b/app/src/experiments/mod.rs index 22e9abb3..ecb8cb61 100644 --- a/app/src/experiments/mod.rs +++ b/app/src/experiments/mod.rs @@ -12,7 +12,7 @@ pub use block_onboarding_layer::{BlockOnboarding, BLOCK_ONBOARDING_LAYER}; pub use free_tier_default_model_layer::{FreeTierDefaultModel, FREE_TIER_DEFAULT_MODEL_LAYER}; pub use improved_palette_search_layer::{ImprovedPaletteSearch, IMPROVED_PALETTE_SEARCH_LAYER}; pub use login_layer::{AuthFlowInstructions, LOGIN_LAYER}; -use warp_core::user_preferences::GetUserPreferences as _; +use galaxy_core::user_preferences::GetUserPreferences as _; use crate::auth::auth_state::AuthStateProvider; use crate::channel::{Channel, ChannelState}; @@ -25,7 +25,7 @@ use std::ops::Range; use std::str::FromStr; use std::{collections::HashMap, hash::Hasher}; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::send_telemetry_sync_from_app_ctx; diff --git a/app/src/external_secrets/mod.rs b/app/src/external_secrets/mod.rs index d8f6e3f7..1da7f438 100644 --- a/app/src/external_secrets/mod.rs +++ b/app/src/external_secrets/mod.rs @@ -9,7 +9,7 @@ use lazy_static::lazy_static; use serde::{Deserialize, Serialize}; use serde_json::Value; use std::path::PathBuf; -use warp_util::path::ShellFamily; +use galaxy_util::path::ShellFamily; #[cfg(all(not(target_family = "wasm"), feature = "local_tty"))] use crate::terminal::local_shell::execute_command; diff --git a/app/src/features.rs b/app/src/features.rs index 9fee90a0..d263ab37 100644 --- a/app/src/features.rs +++ b/app/src/features.rs @@ -1 +1 @@ -pub use warp_core::features::*; +pub use galaxy_core::features::*; diff --git a/app/src/font_fallback.rs b/app/src/font_fallback.rs index 10de734a..c89b7473 100644 --- a/app/src/font_fallback.rs +++ b/app/src/font_fallback.rs @@ -1,5 +1,5 @@ use crate::ChannelState; -use warpui::fonts::ExternalFontFamily; +use galaxyui::fonts::ExternalFontFamily; use std::sync::Arc; diff --git a/app/src/global_resource_handles.rs b/app/src/global_resource_handles.rs index 823130bc..a7788097 100644 --- a/app/src/global_resource_handles.rs +++ b/app/src/global_resource_handles.rs @@ -3,7 +3,7 @@ use crate::{ resource_center::TipsCompleted, settings::SettingsFileError, }; use std::sync::mpsc::SyncSender; -use warpui::{Entity, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, ModelHandle, SingletonEntity}; /// Interfaces that allow us to interact with global resources owned by the main /// thread that exist throughout the app including Model handles, channel senders, @@ -56,7 +56,7 @@ pub struct GlobalResourceHandles { impl GlobalResourceHandles { #[cfg(any(test, feature = "integration_tests"))] - pub fn mock(app: &mut warpui::App) -> Self { + pub fn mock(app: &mut galaxyui::App) -> Self { let referral_theme_status = app.add_model(ReferralThemeStatus::new); let user_default_shell_unsupported_banner_model_handle = app.add_model(|_| BannerState::default()); diff --git a/app/src/gpu_state.rs b/app/src/gpu_state.rs index f4211461..ce3d2527 100644 --- a/app/src/gpu_state.rs +++ b/app/src/gpu_state.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// Singleton model that tracks GPU state. #[derive(Debug, Default, Clone)] diff --git a/app/src/input_classifier.rs b/app/src/input_classifier.rs index fc4dda36..f81a1419 100644 --- a/app/src/input_classifier.rs +++ b/app/src/input_classifier.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use input_classifier::{HeuristicClassifier, InputClassifier}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; pub struct InputClassifierModel { pub classifier: Arc, @@ -51,9 +51,9 @@ impl SingletonEntity for InputClassifierModel {} #[cfg(feature = "nld_fasttext_model")] /// Returns true iff the NLD classifier model is enabled. -pub fn is_nld_classifier_enabled(ctx: &warpui::AppContext) -> bool { - use warp_core::user_preferences::GetUserPreferences as _; - use warp_core::{channel::ChannelState, features::FeatureFlag}; +pub fn is_nld_classifier_enabled(ctx: &galaxyui::AppContext) -> bool { + use galaxy_core::user_preferences::GetUserPreferences as _; + use galaxy_core::{channel::ChannelState, features::FeatureFlag}; if ChannelState::channel().is_dogfood() { // The `EnableNLDClassifierModel` can be used to force enable / disable diff --git a/app/src/input_suggestions.rs b/app/src/input_suggestions.rs index c2a4cb5f..a2071acc 100644 --- a/app/src/input_suggestions.rs +++ b/app/src/input_suggestions.rs @@ -10,17 +10,17 @@ use std::cmp::Ordering; use std::collections::HashSet; use std::{cmp, ops::Range, vec}; use warp_command_signatures::IconType; -use warp_completer::completer::{ +use galaxy_completer::completer::{ MatchType, PathSeparators, Suggestion, SuggestionResults, SuggestionType, }; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::elements::{ ChildAnchor, DispatchEventResult, Expanded, Hoverable, MouseStateHandle, ParentAnchor, ParentOffsetBounds, ScrollbarWidth, }; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ Align, AnchorPair, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, @@ -810,7 +810,7 @@ impl InputSuggestions { Properties::default() .weight(appearance.monospace_font_weight()), ) - .autosize_text(warp_core::ui::builder::MIN_FONT_SIZE) + .autosize_text(galaxy_core::ui::builder::MIN_FONT_SIZE) .with_color(main_text); let matches = item.matches.clone(); diff --git a/app/src/input_suggestions_test.rs b/app/src/input_suggestions_test.rs index ad48aa3e..2f59a4d5 100644 --- a/app/src/input_suggestions_test.rs +++ b/app/src/input_suggestions_test.rs @@ -1,17 +1,17 @@ use chrono::Local; use std::collections::HashSet; -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App}; use crate::ai::blocklist::AIQueryHistory; use crate::input_suggestions::{filter_tab_suggestions, HistoryOrder}; use crate::terminal::model::session::SessionId; use crate::terminal::HistoryEntry; -use warp_completer::completer::{ +use galaxy_completer::completer::{ EngineFileType, Match, MatchStrategy, MatchedSuggestion, Priority, Suggestion, SuggestionResults, SuggestionType, TopLevelCommandCaseSensitivity, }; -use warp_completer::meta::Span; +use galaxy_completer::meta::Span; use super::{HistoryInputSuggestion, InputSuggestions, TabCompletionsPreselectOption}; @@ -36,7 +36,7 @@ fn test_basic_tab_prefix() { prefix_matched_suggestion("stash"), prefix_matched_suggestion("status"), prefix_matched_suggestion("stats/") - .with_file_type(warp_completer::completer::EngineFileType::Directory), + .with_file_type(galaxy_completer::completer::EngineFileType::Directory), ]; let suggestion_results = SuggestionResults { diff --git a/app/src/integration_testing/agent_mode/assertions.rs b/app/src/integration_testing/agent_mode/assertions.rs index 65db3eb4..23af5223 100644 --- a/app/src/integration_testing/agent_mode/assertions.rs +++ b/app/src/integration_testing/agent_mode/assertions.rs @@ -16,8 +16,8 @@ use crate::{ BlocklistAIHistoryModel, }; use warp_multi_agent_api as api; -use warpui::{integration::AssertionCallback, integration_assert, EntityId}; -use warpui::{integration::AssertionOutcome, SingletonEntity}; +use galaxyui::{integration::AssertionCallback, integration_assert, EntityId}; +use galaxyui::{integration::AssertionOutcome, SingletonEntity}; type TextAssertion = Box bool + 'static>; type ActionAssertion = Box bool + 'static>; diff --git a/app/src/integration_testing/agent_mode/mod.rs b/app/src/integration_testing/agent_mode/mod.rs index e9c98012..5b81e282 100644 --- a/app/src/integration_testing/agent_mode/mod.rs +++ b/app/src/integration_testing/agent_mode/mod.rs @@ -15,9 +15,9 @@ pub use assertions::*; pub use step::*; pub use user_defaults::*; pub use util::*; -use warpui::integration::PersistedDataMap; -pub use warpui::integration::RUNTIME_TAG_FAILURE_REASON; -use warpui::{App, SingletonEntity as _, WindowId}; +use galaxyui::integration::PersistedDataMap; +pub use galaxyui::integration::RUNTIME_TAG_FAILURE_REASON; +use galaxyui::{App, SingletonEntity as _, WindowId}; pub const TOTAL_REQUEST_COST_PREFIX: &str = "Total request cost: "; pub const TOTAL_EXCHANGES_PREFIX: &str = "Total number of exchanges: "; diff --git a/app/src/integration_testing/agent_mode/step.rs b/app/src/integration_testing/agent_mode/step.rs index 9e1a2a4e..050bd4ff 100644 --- a/app/src/integration_testing/agent_mode/step.rs +++ b/app/src/integration_testing/agent_mode/step.rs @@ -1,7 +1,7 @@ use std::{fs::read, io::Cursor, path::Path, time::Duration}; use prost::Message; -use warpui::{async_assert, integration::TestStep, SingletonEntity}; +use galaxyui::{async_assert, integration::TestStep, SingletonEntity}; use crate::ai::execution_profiles::profiles::AIExecutionProfilesModel; use crate::ai::execution_profiles::ActionPermission; @@ -160,10 +160,10 @@ pub fn submit_ai_query(query: &str, timeout: Duration) -> TestStep { /// Returns an assertion that prints the conversation ID to stdout once available. /// This assertion will poll until the conversation token is received from the server. fn print_conversation_id_assertion( -) -> impl FnMut(&mut warpui::App, warpui::WindowId) -> warpui::integration::AssertionOutcome { +) -> impl FnMut(&mut galaxyui::App, galaxyui::WindowId) -> galaxyui::integration::AssertionOutcome { |app, window_id| { use crate::BlocklistAIHistoryModel; - use warpui::integration::AssertionOutcome; + use galaxyui::integration::AssertionOutcome; let terminal_view = terminal_view(app, window_id, 0, 0); BlocklistAIHistoryModel::handle(app).read(app, |history_model, _| { if let Some(conversation) = history_model.active_conversation(terminal_view.id()) { diff --git a/app/src/integration_testing/assertions.rs b/app/src/integration_testing/assertions.rs index ec1229a0..556a2b26 100644 --- a/app/src/integration_testing/assertions.rs +++ b/app/src/integration_testing/assertions.rs @@ -11,7 +11,7 @@ use crate::{ workflows::workflow::Workflow, workspaces::{team::Team, user_workspaces::UserWorkspaces, workspace::Workspace}, }; -use warpui::{async_assert, async_assert_eq, integration::TestStep, SingletonEntity}; +use galaxyui::{async_assert, async_assert_eq, integration::TestStep, SingletonEntity}; fn set_and_assert_network_status(status: NetworkStatusKind) -> TestStep { TestStep::new("Set and assert network status") diff --git a/app/src/integration_testing/block/assertions.rs b/app/src/integration_testing/block/assertions.rs index c0004fc5..5d6b2114 100644 --- a/app/src/integration_testing/block/assertions.rs +++ b/app/src/integration_testing/block/assertions.rs @@ -1,5 +1,5 @@ use settings::Setting as _; -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionOutcome}, units::{IntoPixels, Lines}, diff --git a/app/src/integration_testing/block_filtering/step.rs b/app/src/integration_testing/block_filtering/step.rs index dc8767dd..4f03084b 100644 --- a/app/src/integration_testing/block_filtering/step.rs +++ b/app/src/integration_testing/block_filtering/step.rs @@ -6,9 +6,9 @@ use crate::integration_testing::terminal::util::ExpectedExitStatus; use crate::integration_testing::view_getters::single_terminal_view_for_tab; use crate::terminal::model::terminal_model::BlockIndex; use std::time::Duration; -use warpui::integration::AssertionCallback; -use warpui::integration::TestStep; -use warpui::{async_assert, async_assert_eq}; +use galaxyui::integration::AssertionCallback; +use galaxyui::integration::TestStep; +use galaxyui::{async_assert, async_assert_eq}; /// This test case covers the creates the following output grid: /// ----------- diff --git a/app/src/integration_testing/clipboard/assertion.rs b/app/src/integration_testing/clipboard/assertion.rs index 59e42b1a..2854f0a4 100644 --- a/app/src/integration_testing/clipboard/assertion.rs +++ b/app/src/integration_testing/clipboard/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert_eq, integration::AssertionCallback}; +use galaxyui::{async_assert_eq, integration::AssertionCallback}; pub fn assert_clipboard_contains_string(string: String) -> AssertionCallback { Box::new(move |app, _window_id| { diff --git a/app/src/integration_testing/clipboard/step.rs b/app/src/integration_testing/clipboard/step.rs index d0548aa9..69d9dfba 100644 --- a/app/src/integration_testing/clipboard/step.rs +++ b/app/src/integration_testing/clipboard/step.rs @@ -1,5 +1,5 @@ use super::assert_clipboard_contains_string; -use warpui::{clipboard::ClipboardContent, integration::TestStep}; +use galaxyui::{clipboard::ClipboardContent, integration::TestStep}; pub fn write_to_clipboard(text: String) -> TestStep { let expected = text.clone(); diff --git a/app/src/integration_testing/cloud_object/assertion.rs b/app/src/integration_testing/cloud_object/assertion.rs index 86fde85c..70122cd1 100644 --- a/app/src/integration_testing/cloud_object/assertion.rs +++ b/app/src/integration_testing/cloud_object/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert, integration::AssertionCallback}; +use galaxyui::{async_assert, integration::AssertionCallback}; use crate::{ cloud_object::{model::persistence::CloudModel, CloudModelType, GenericCloudObject, Revision}, diff --git a/app/src/integration_testing/cloud_object/mod.rs b/app/src/integration_testing/cloud_object/mod.rs index 1b3275e0..7116f209 100644 --- a/app/src/integration_testing/cloud_object/mod.rs +++ b/app/src/integration_testing/cloud_object/mod.rs @@ -5,7 +5,7 @@ use futures::{future::join_all, FutureExt}; use itertools::Itertools; use std::future::Future; use std::pin::Pin; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::{ cloud_object::{model::persistence::CloudModel, Space}, diff --git a/app/src/integration_testing/code_review/mod.rs b/app/src/integration_testing/code_review/mod.rs index 86f07228..a3ccb685 100644 --- a/app/src/integration_testing/code_review/mod.rs +++ b/app/src/integration_testing/code_review/mod.rs @@ -1,6 +1,6 @@ use std::path::{Path, PathBuf}; -use warpui::{ +use galaxyui::{ async_assert, integration::{AssertionCallback, AssertionOutcome, TestStep}, App, ViewHandle, WindowId, diff --git a/app/src/integration_testing/codebase_context/step.rs b/app/src/integration_testing/codebase_context/step.rs index d7a6acde..87a4e1c9 100644 --- a/app/src/integration_testing/codebase_context/step.rs +++ b/app/src/integration_testing/codebase_context/step.rs @@ -2,7 +2,7 @@ use std::{path::PathBuf, time::Duration}; use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; use settings::Setting; -use warpui::{ +use galaxyui::{ async_assert, integration::{AssertionOutcome, StepData, TestStep}, App, ReadModel, SingletonEntity, UpdateModel, WindowId, diff --git a/app/src/integration_testing/command_palette/assertions.rs b/app/src/integration_testing/command_palette/assertions.rs index e9a482de..aa268bf2 100644 --- a/app/src/integration_testing/command_palette/assertions.rs +++ b/app/src/integration_testing/command_palette/assertions.rs @@ -1,6 +1,6 @@ use crate::integration_testing::view_getters::{command_palette_view, workspace_view}; -use warpui::async_assert; -use warpui::integration::AssertionCallback; +use galaxyui::async_assert; +use galaxyui::integration::AssertionCallback; /// Asserts that the command palette is currently open. pub fn assert_command_palette_is_open() -> AssertionCallback { diff --git a/app/src/integration_testing/command_palette/step.rs b/app/src/integration_testing/command_palette/step.rs index 24f588bd..db35b831 100644 --- a/app/src/integration_testing/command_palette/step.rs +++ b/app/src/integration_testing/command_palette/step.rs @@ -3,8 +3,8 @@ use crate::integration_testing::command_palette::assertions::{ assert_command_palette_is_open, }; use crate::util::bindings::cmd_or_ctrl_shift; -use warpui::integration::{AssertionOutcome, TestStep}; -use warpui::{App, WindowId}; +use galaxyui::integration::{AssertionOutcome, TestStep}; +use galaxyui::{App, WindowId}; /// Extension trait for `Vec` that allows chaining assertions onto the last step. pub trait TestStepsExt { diff --git a/app/src/integration_testing/command_search/assertion.rs b/app/src/integration_testing/command_search/assertion.rs index 5a185ba1..bdfc512b 100644 --- a/app/src/integration_testing/command_search/assertion.rs +++ b/app/src/integration_testing/command_search/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert, async_assert_eq, integration::AssertionCallback}; +use galaxyui::{async_assert, async_assert_eq, integration::AssertionCallback}; use crate::{ integration_testing::view_getters::{command_search_view, workspace_view}, diff --git a/app/src/integration_testing/context_chips/assertions.rs b/app/src/integration_testing/context_chips/assertions.rs index 823fc695..33cf333d 100644 --- a/app/src/integration_testing/context_chips/assertions.rs +++ b/app/src/integration_testing/context_chips/assertions.rs @@ -1,7 +1,7 @@ use crate::context_chips::ContextChipKind; use crate::integration_testing::view_getters::single_terminal_view_for_tab; -use warpui::async_assert; -use warpui::integration::AssertionCallback; +use galaxyui::async_assert; +use galaxyui::integration::AssertionCallback; /// Assertion that the working dir chip is present in the current prompt. pub fn assert_working_dir_is_present(tab_index: usize) -> AssertionCallback { diff --git a/app/src/integration_testing/goto_line.rs b/app/src/integration_testing/goto_line.rs index 16d0b27d..504547d6 100644 --- a/app/src/integration_testing/goto_line.rs +++ b/app/src/integration_testing/goto_line.rs @@ -1,11 +1,11 @@ -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::AssertionCallback, App, ViewHandle, WindowId, }; use crate::code::editor::goto_line::view::GoToLineView; use crate::code::editor::view::CodeEditorView; -use warp_editor::content::buffer::ToBufferPoint; +use galaxy_editor::content::buffer::ToBufferPoint; fn file_code_editor_view(app: &App, window_id: WindowId) -> ViewHandle { let views = app diff --git a/app/src/integration_testing/input/assertions.rs b/app/src/integration_testing/input/assertions.rs index 01e02abd..8a698221 100644 --- a/app/src/integration_testing/input/assertions.rs +++ b/app/src/integration_testing/input/assertions.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert, async_assert_eq, integration::AssertionCallback}; +use galaxyui::{async_assert, async_assert_eq, integration::AssertionCallback}; use crate::{ integration_testing::view_getters::{input_view, single_input_view_for_tab}, diff --git a/app/src/integration_testing/input/step.rs b/app/src/integration_testing/input/step.rs index 18676a37..a607a2ad 100644 --- a/app/src/integration_testing/input/step.rs +++ b/app/src/integration_testing/input/step.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::Vector2F; -use warpui::integration::TestStep; -use warpui::{windowing::WindowManager, SingletonEntity}; +use galaxyui::integration::TestStep; +use galaxyui::{windowing::WindowManager, SingletonEntity}; use crate::{ integration_testing::{ diff --git a/app/src/integration_testing/mod.rs b/app/src/integration_testing/mod.rs index 903f7fdb..29189a4a 100644 --- a/app/src/integration_testing/mod.rs +++ b/app/src/integration_testing/mod.rs @@ -1,6 +1,6 @@ use std::borrow::Cow; -use warpui::{App, AssetProvider, View, ViewHandle, WindowId}; +use galaxyui::{App, AssetProvider, View, ViewHandle, WindowId}; pub mod agent_mode; pub mod assertions; diff --git a/app/src/integration_testing/navigation_palette/assertion.rs b/app/src/integration_testing/navigation_palette/assertion.rs index 79b66fd4..121c0830 100644 --- a/app/src/integration_testing/navigation_palette/assertion.rs +++ b/app/src/integration_testing/navigation_palette/assertion.rs @@ -1,5 +1,5 @@ -use warpui::integration::AssertionCallback; -use warpui::{async_assert, integration::AssertionOutcome, App, ViewHandle, WindowId}; +use galaxyui::integration::AssertionCallback; +use galaxyui::{async_assert, integration::AssertionOutcome, App, ViewHandle, WindowId}; use crate::integration_testing::view_getters::workspace_view; use crate::palette::PaletteMode; diff --git a/app/src/integration_testing/navigation_palette/step.rs b/app/src/integration_testing/navigation_palette/step.rs index 7908567d..51c13fc5 100644 --- a/app/src/integration_testing/navigation_palette/step.rs +++ b/app/src/integration_testing/navigation_palette/step.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert, integration::TestStep, ViewHandle}; +use galaxyui::{async_assert, integration::TestStep, ViewHandle}; use crate::integration_testing::command_palette::assert_command_palette_is_open; use crate::integration_testing::navigation_palette::assert_navigation_mode_enabled_in_command_palette; diff --git a/app/src/integration_testing/notebook/assertion.rs b/app/src/integration_testing/notebook/assertion.rs index 40afde06..fe9ac398 100644 --- a/app/src/integration_testing/notebook/assertion.rs +++ b/app/src/integration_testing/notebook/assertion.rs @@ -1,7 +1,7 @@ use itertools::Itertools; use string_offset::CharOffset; -use warp_editor::render::model::BlockItem; -use warpui::{ +use galaxy_editor::render::model::BlockItem; +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionOutcome, AssertionWithDataCallback}, App, ViewHandle, diff --git a/app/src/integration_testing/notebook/step.rs b/app/src/integration_testing/notebook/step.rs index 5fef1e36..3c46edb1 100644 --- a/app/src/integration_testing/notebook/step.rs +++ b/app/src/integration_testing/notebook/step.rs @@ -1,8 +1,8 @@ use std::sync::Arc; use string_offset::CharOffset; -use warp_editor::model::CoreEditorModel; -use warpui::{ +use galaxy_editor::model::CoreEditorModel; +use galaxyui::{ async_assert, integration::TestStep, windowing::WindowManager, App, SingletonEntity, ViewHandle, WindowId, }; diff --git a/app/src/integration_testing/pane_group/assertions.rs b/app/src/integration_testing/pane_group/assertions.rs index 0fcf8b4d..396c16c8 100644 --- a/app/src/integration_testing/pane_group/assertions.rs +++ b/app/src/integration_testing/pane_group/assertions.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert_eq, integration::{AssertionCallback, AssertionOutcome}, }; diff --git a/app/src/integration_testing/pane_group/step.rs b/app/src/integration_testing/pane_group/step.rs index 92711f7a..ceb0063f 100644 --- a/app/src/integration_testing/pane_group/step.rs +++ b/app/src/integration_testing/pane_group/step.rs @@ -1,4 +1,4 @@ -use warpui::integration::TestStep; +use galaxyui::integration::TestStep; use crate::integration_testing::view_getters::pane_group_view; use crate::pane_group::tree::Direction; diff --git a/app/src/integration_testing/rules/assertion.rs b/app/src/integration_testing/rules/assertion.rs index a0ad5bfa..889880d2 100644 --- a/app/src/integration_testing/rules/assertion.rs +++ b/app/src/integration_testing/rules/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionWithDataCallback}, AppContext, SingletonEntity, diff --git a/app/src/integration_testing/rules/step.rs b/app/src/integration_testing/rules/step.rs index e9241cdc..4c114d53 100644 --- a/app/src/integration_testing/rules/step.rs +++ b/app/src/integration_testing/rules/step.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warpui::{ +use galaxyui::{ async_assert, integration::TestStep, windowing::WindowManager, SingletonEntity, WindowId, }; diff --git a/app/src/integration_testing/secret_redaction/assertion.rs b/app/src/integration_testing/secret_redaction/assertion.rs index c3c920b4..438e1072 100644 --- a/app/src/integration_testing/secret_redaction/assertion.rs +++ b/app/src/integration_testing/secret_redaction/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert_eq, integration::{AssertionCallback, AssertionOutcome}, }; diff --git a/app/src/integration_testing/settings/step.rs b/app/src/integration_testing/settings/step.rs index e0d0b25a..5c493708 100644 --- a/app/src/integration_testing/settings/step.rs +++ b/app/src/integration_testing/settings/step.rs @@ -1,5 +1,5 @@ use settings::Setting; -use warpui::{async_assert, integration::TestStep, windowing::WindowManager, SingletonEntity}; +use galaxyui::{async_assert, integration::TestStep, windowing::WindowManager, SingletonEntity}; use crate::{ integration_testing::{ diff --git a/app/src/integration_testing/step.rs b/app/src/integration_testing/step.rs index bec5ab0e..8c3d5e79 100644 --- a/app/src/integration_testing/step.rs +++ b/app/src/integration_testing/step.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert, integration::{AssertionCallback, TestStep}, }; diff --git a/app/src/integration_testing/subshell/step.rs b/app/src/integration_testing/subshell/step.rs index d2d01e74..4c3317c6 100644 --- a/app/src/integration_testing/subshell/step.rs +++ b/app/src/integration_testing/subshell/step.rs @@ -1,6 +1,6 @@ use regex::Regex; use std::time::Duration; -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionOutcome, TestStep}, }; diff --git a/app/src/integration_testing/tab/assertion.rs b/app/src/integration_testing/tab/assertion.rs index c34b1eff..32caceee 100644 --- a/app/src/integration_testing/tab/assertion.rs +++ b/app/src/integration_testing/tab/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert, integration::AssertionCallback}; +use galaxyui::{async_assert, integration::AssertionCallback}; use crate::integration_testing::{terminal::util::ExpectedOutput, view_getters::pane_group_view}; diff --git a/app/src/integration_testing/tab/step.rs b/app/src/integration_testing/tab/step.rs index b2509821..7656ca28 100644 --- a/app/src/integration_testing/tab/step.rs +++ b/app/src/integration_testing/tab/step.rs @@ -1,4 +1,4 @@ -use warpui::integration::TestStep; +use galaxyui::integration::TestStep; use crate::integration_testing::{step::new_step_with_default_assertions, tab::assert_tab_title}; diff --git a/app/src/integration_testing/terminal/assertion.rs b/app/src/integration_testing/terminal/assertion.rs index 65344063..0f2f72c9 100644 --- a/app/src/integration_testing/terminal/assertion.rs +++ b/app/src/integration_testing/terminal/assertion.rs @@ -1,8 +1,8 @@ use pathfinder_geometry::rect::RectF; use regex::Regex; use settings::Setting as _; -use warp_util::path::user_friendly_path; -use warpui::{ +use galaxy_util::path::user_friendly_path; +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionOutcome}, units::Lines, @@ -772,8 +772,8 @@ pub fn assert_scroll_position( pub fn validate_git_branch( expected_git_branch: Option, tab_idx: usize, - window_id: warpui::WindowId, - app: &warpui::App, + window_id: galaxyui::WindowId, + app: &galaxyui::App, ) -> AssertionOutcome { let terminal_view = single_terminal_view_for_tab(app, window_id, tab_idx); terminal_view.read(app, |view, _ctx| { diff --git a/app/src/integration_testing/terminal/step.rs b/app/src/integration_testing/terminal/step.rs index 0d41de0e..6a3b8f68 100644 --- a/app/src/integration_testing/terminal/step.rs +++ b/app/src/integration_testing/terminal/step.rs @@ -2,7 +2,7 @@ use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::Arc; use std::time::Duration; -use warpui::{ +use galaxyui::{ async_assert, integration::{AssertionOutcome, TestStep}, Event, SingletonEntity, @@ -235,7 +235,7 @@ fn switch_to_terminal_mode_and_type_command( pane_idx: usize, was_ai_mode: Arc, command: String, -) -> impl Fn(&mut warpui::App, warpui::WindowId) -> Event + 'static { +) -> impl Fn(&mut galaxyui::App, galaxyui::WindowId) -> Event + 'static { move |app, window_id| { let tv = terminal_view(app, window_id, tab_idx, pane_idx); let is_ai = tv.read(app, |view, ctx| { @@ -264,7 +264,7 @@ fn restore_ai_mode_if_needed( tab_idx: usize, pane_idx: usize, was_ai_mode: Arc, -) -> impl Fn(&mut warpui::App, warpui::WindowId) + 'static { +) -> impl Fn(&mut galaxyui::App, galaxyui::WindowId) + 'static { move |app, window_id| { if was_ai_mode.load(Ordering::SeqCst) { let tv = terminal_view(app, window_id, tab_idx, pane_idx); @@ -286,7 +286,7 @@ fn execute_command_step( tab_idx: usize, pane_idx: usize, command: String, - validate_output_fn: impl FnMut(&mut warpui::App, warpui::WindowId) -> AssertionOutcome + 'static, + validate_output_fn: impl FnMut(&mut galaxyui::App, galaxyui::WindowId) -> AssertionOutcome + 'static, ) -> TestStep { let was_ai_mode = Arc::new(AtomicBool::new(false)); let was_ai_mode_for_restore = was_ai_mode.clone(); diff --git a/app/src/integration_testing/terminal/util.rs b/app/src/integration_testing/terminal/util.rs index d2e840d6..9480accd 100644 --- a/app/src/integration_testing/terminal/util.rs +++ b/app/src/integration_testing/terminal/util.rs @@ -3,9 +3,9 @@ use command::blocking::Command; use std::borrow::Cow; use std::iter; use std::path::{Path, PathBuf}; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; #[cfg(windows)] -use warp_core::paths::base_config_dir; +use galaxy_core::paths::base_config_dir; use rand::Rng; use rand::{distributions::Alphanumeric, thread_rng}; diff --git a/app/src/integration_testing/themes/step.rs b/app/src/integration_testing/themes/step.rs index 2c0ce8e3..627db3bb 100644 --- a/app/src/integration_testing/themes/step.rs +++ b/app/src/integration_testing/themes/step.rs @@ -1,7 +1,7 @@ use crate::integration_testing::command_palette::open_command_palette_and_run_action; use crate::integration_testing::view_getters::workspace_view; -use warpui::async_assert; -use warpui::integration::TestStep; +use galaxyui::async_assert; +use galaxyui::integration::TestStep; pub fn open_theme_picker() -> Vec { let mut steps = open_command_palette_and_run_action("Open Theme Picker"); diff --git a/app/src/integration_testing/view_getters.rs b/app/src/integration_testing/view_getters.rs index 671646c3..90db11d8 100644 --- a/app/src/integration_testing/view_getters.rs +++ b/app/src/integration_testing/view_getters.rs @@ -24,8 +24,8 @@ use crate::{ workflows::{workflow_view::WorkflowView, CategoriesView}, workspace::Workspace, }; -use warpui::Entity; -use warpui::{async_assert, integration::AssertionCallback, App, View, ViewHandle, WindowId}; +use galaxyui::Entity; +use galaxyui::{async_assert, integration::AssertionCallback, App, View, ViewHandle, WindowId}; /// This identifier is useful when you'd like to weakly identify a terminal view /// without actually grabbing a handle to it. Often useful when writing reusable assertions. diff --git a/app/src/integration_testing/warp_drive/assertion.rs b/app/src/integration_testing/warp_drive/assertion.rs index d56347b3..03a10dd2 100644 --- a/app/src/integration_testing/warp_drive/assertion.rs +++ b/app/src/integration_testing/warp_drive/assertion.rs @@ -1,6 +1,6 @@ use crate::integration_testing::view_getters::workspace_view; -use warpui::async_assert; -use warpui::integration::AssertionCallback; +use galaxyui::async_assert; +use galaxyui::integration::AssertionCallback; pub fn assert_workflow_modal_is_open() -> AssertionCallback { Box::new(move |app, window_id| { diff --git a/app/src/integration_testing/window/assertion.rs b/app/src/integration_testing/window/assertion.rs index ef70c7bf..75d127a2 100644 --- a/app/src/integration_testing/window/assertion.rs +++ b/app/src/integration_testing/window/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert_eq, integration::{AssertionCallback, AssertionOutcome, StepData}, windowing::WindowManager, diff --git a/app/src/integration_testing/window/step.rs b/app/src/integration_testing/window/step.rs index feb618e7..3d8f4aa8 100644 --- a/app/src/integration_testing/window/step.rs +++ b/app/src/integration_testing/window/step.rs @@ -1,5 +1,5 @@ use pathfinder_geometry::rect::RectF; -use warpui::{ +use galaxyui::{ async_assert_eq, integration::TestStep, platform::TerminationMode, windowing::WindowManager, SingletonEntity, }; diff --git a/app/src/integration_testing/workflow/assertion.rs b/app/src/integration_testing/workflow/assertion.rs index d55fc806..31edb20a 100644 --- a/app/src/integration_testing/workflow/assertion.rs +++ b/app/src/integration_testing/workflow/assertion.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionWithDataCallback}, App, ViewHandle, diff --git a/app/src/integration_testing/workflow/step.rs b/app/src/integration_testing/workflow/step.rs index fcc2786d..33d38b79 100644 --- a/app/src/integration_testing/workflow/step.rs +++ b/app/src/integration_testing/workflow/step.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ async_assert, integration::TestStep, windowing::WindowManager, SingletonEntity, WindowId, }; diff --git a/app/src/integration_testing/workspace/assertions.rs b/app/src/integration_testing/workspace/assertions.rs index 223a4f11..82c646c1 100644 --- a/app/src/integration_testing/workspace/assertions.rs +++ b/app/src/integration_testing/workspace/assertions.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert_eq, integration::AssertionCallback}; +use galaxyui::{async_assert_eq, integration::AssertionCallback}; use crate::integration_testing::view_getters::workspace_view; diff --git a/app/src/integration_testing/workspace/step.rs b/app/src/integration_testing/workspace/step.rs index 05fe3e99..af807bd4 100644 --- a/app/src/integration_testing/workspace/step.rs +++ b/app/src/integration_testing/workspace/step.rs @@ -1,4 +1,4 @@ -use warpui::{async_assert, integration::TestStep, SingletonEntity}; +use galaxyui::{async_assert, integration::TestStep, SingletonEntity}; use crate::{ integration_testing::view_getters::workspace_view, undo_close::UndoCloseStack, diff --git a/app/src/interval_timer.rs b/app/src/interval_timer.rs index 7dacff1f..43d4b501 100644 --- a/app/src/interval_timer.rs +++ b/app/src/interval_timer.rs @@ -1 +1 @@ -pub use warp_core::interval_timer::IntervalTimer; +pub use galaxy_core::interval_timer::IntervalTimer; diff --git a/app/src/keyboard.rs b/app/src/keyboard.rs index 57ab0b0a..231d7ac1 100644 --- a/app/src/keyboard.rs +++ b/app/src/keyboard.rs @@ -3,10 +3,10 @@ use serde::{Deserialize, Serialize}; #[cfg(not(test))] use std::env::var_os; use vec1::{vec1, Vec1}; -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; #[cfg(not(test))] -use warpui::keymap::Trigger; -use warpui::AppContext; +use galaxyui::keymap::Trigger; +use galaxyui::AppContext; use anyhow::Context; @@ -95,7 +95,7 @@ where #[cfg(not(test))] pub fn keybinding_file_path() -> std::path::PathBuf { - warp_core::paths::config_local_dir().join(KEYBINDINGS_FILE_NAME) + galaxy_core::paths::config_local_dir().join(KEYBINDINGS_FILE_NAME) } /// Save the custom keybindings map to disk. diff --git a/app/src/keyboard_test.rs b/app/src/keyboard_test.rs index ed358d56..8ab3ca3a 100644 --- a/app/src/keyboard_test.rs +++ b/app/src/keyboard_test.rs @@ -2,7 +2,7 @@ use crate::keyboard::{PersistedTrigger, UserDefinedKeybinding, REMOVED_KEYBINDIN use anyhow::{Ok, Result}; use vec1::vec1; -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; #[test] fn test_short_user_defined_keybinding_to_persisted_trigger() { diff --git a/app/src/launch_configs/mod.rs b/app/src/launch_configs/mod.rs index cb79fa0c..45292afe 100644 --- a/app/src/launch_configs/mod.rs +++ b/app/src/launch_configs/mod.rs @@ -1,7 +1,7 @@ pub mod launch_config; pub mod save_modal; -use warpui::AppContext; +use galaxyui::AppContext; pub fn init(app: &mut AppContext) { save_modal::init(app); diff --git a/app/src/launch_configs/save_modal.rs b/app/src/launch_configs/save_modal.rs index 67168868..0b2be88d 100644 --- a/app/src/launch_configs/save_modal.rs +++ b/app/src/launch_configs/save_modal.rs @@ -17,18 +17,18 @@ use markdown_parser::{ }; use pathfinder_geometry::vector::vec2f; use serde::{Deserialize, Serialize}; -use warp_core::paths::home_relative_path; -use warp_core::ui::theme::Fill; -use warpui::accessibility::{AccessibilityContent, WarpA11yRole}; -use warpui::elements::{ +use galaxy_core::paths::home_relative_path; +use galaxy_core::ui::theme::Fill; +use galaxyui::accessibility::{AccessibilityContent, WarpA11yRole}; +use galaxyui::elements::{ Align, Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, Element, Empty, Flex, FormattedTextElement, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, SavePosition, Shrinkable, Stack, Text, }; -use warpui::keymap::FixedBinding; -use warpui::ui_components::button::{Button, ButtonVariant}; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::keymap::FixedBinding; +use galaxyui::ui_components::button::{Button, ButtonVariant}; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ AppContext, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -41,7 +41,7 @@ const SAVE_CONFIG_BUTTON_LABEL: &str = "Save Configuration"; const OPEN_FILE_BUTTON_LABEL: &str = "Open YAML File"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -160,7 +160,7 @@ pub enum LaunchConfigModalEvent { OpenFileWithTarget { path: std::path::PathBuf, target: FileTarget, - line_col: Option, + line_col: Option, }, Close, } diff --git a/app/src/lib.rs b/app/src/lib.rs index 77b401f2..4f877dea 100644 --- a/app/src/lib.rs +++ b/app/src/lib.rs @@ -107,7 +107,7 @@ mod workspaces; // // If you feel the need to export a module so that a type or function within it // can be used by an integration test, you should define a new assertion function -// in the warp::integration_testing::assertions module (or a sub-module). These +// in the galaxy::integration_testing::assertions module (or a sub-module). These // functions will allow us to keep types internal to this crate and expose a // simpler API for integration tests to consume. pub mod ai_assistant; @@ -160,8 +160,8 @@ use server::voice_transcriber::ServerVoiceTranscriber; #[cfg(feature = "local_fs")] use settings::import::model::ImportedConfigModel; use voice::transcriber::VoiceTranscriber; -use warp_cli::GlobalOptions; -use warp_cli::{agent::AgentCommand, CliCommand}; +use galaxy_cli::GlobalOptions; +use galaxy_cli::{agent::AgentCommand, CliCommand}; #[cfg(feature = "local_fs")] use repo_metadata::{ @@ -183,13 +183,13 @@ pub mod workspace; pub use persistence::testing as sqlite_testing; use ::settings::{Setting, ToggleableSetting}; -pub use warp_core::errors::{report_error, report_if_error}; +pub use galaxy_core::errors::{report_error, report_if_error}; #[cfg(feature = "plugin_host")] pub use plugin::{run_plugin_host, PLUGIN_HOST_FLAG}; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::modals::{AlertDialogWithCallbacks, AppModalCallback}; -use warpui::platform::app::ApproveTerminateResult; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::modals::{AlertDialogWithCallbacks, AppModalCallback}; +use galaxyui::platform::app::ApproveTerminateResult; use window_settings::WindowSettings; use workflows::manager::WorkflowManager; @@ -265,11 +265,11 @@ use std::sync::Arc; use terminal::input; use terminal::session_settings::SessionSettings; use url::Url; -use warp_core::execution_mode::{AppExecutionMode, ExecutionMode}; -use warp_managed_secrets::ManagedSecretManager; +use galaxy_core::execution_mode::{AppExecutionMode, ExecutionMode}; +use galaxy_managed_secrets::ManagedSecretManager; use workspace::sync_inputs::SyncedInputState; -use warpui::{integration::TestDriver, App, AssetProvider, Event}; +use galaxyui::{integration::TestDriver, App, AssetProvider, Event}; use self::features::FeatureFlag; use crate::app_state::AppState; @@ -291,21 +291,21 @@ use crate::util::bindings::is_binding_cross_platform; use crate::workspace::{PaneViewLocator, Workspace, WorkspaceAction}; use crate::workspaces::update_manager::TeamUpdateManager; use crate::workspaces::user_workspaces::UserWorkspaces; -use warp_logging::LogDestination; +use galaxy_logging::LogDestination; // Re-export the send_telemetry_from_ctx macro at the crate root level -pub use warp_core::send_telemetry_from_app_ctx; -pub use warp_core::send_telemetry_from_ctx; +pub use galaxy_core::send_telemetry_from_app_ctx; +pub use galaxy_core::send_telemetry_from_ctx; // Re-export the safe logging macros at the crate root level for backwards compatibility -pub use warp_core::{safe_debug, safe_error, safe_info, safe_warn}; +pub use galaxy_core::{safe_debug, safe_error, safe_info, safe_warn}; use crate::antivirus::AntivirusInfo; #[cfg(feature = "local_fs")] -use warp_files::FileModel; -use warpui::platform::TerminationMode; -use warpui::windowing::state::ApplicationStage; -use warpui::{AppContext, SingletonEntity, WindowId}; +use galaxy_files::FileModel; +use galaxyui::platform::TerminationMode; +use galaxyui::windowing::state::ApplicationStage; +use galaxyui::{AppContext, SingletonEntity, WindowId}; #[derive(Clone, Copy, RustEmbed)] #[folder = "assets"] @@ -344,7 +344,7 @@ fn determine_agent_source( pub enum LaunchMode { /// Run the regular GUI application. App { - args: warp_cli::AppArgs, + args: galaxy_cli::AppArgs, /// API key for server authentication, if provided via `--api-key` or `WARP_API_KEY`. /// Only used on dogfood channels. api_key: Option, @@ -352,7 +352,7 @@ pub enum LaunchMode { /// Run the Warp command-line SDK. CommandLine { - command: warp_cli::CliCommand, + command: galaxy_cli::CliCommand, global_options: GlobalOptions, debug: bool, /// Whether this CLI invocation is running in a sandboxed environment. @@ -368,10 +368,10 @@ pub enum LaunchMode { } impl LaunchMode { - fn args(&self) -> Cow<'_, warp_cli::AppArgs> { + fn args(&self) -> Cow<'_, galaxy_cli::AppArgs> { match self { LaunchMode::App { args, .. } => Cow::Borrowed(args), - _ => Cow::Owned(warp_cli::AppArgs::default()), + _ => Cow::Owned(galaxy_cli::AppArgs::default()), } } @@ -506,7 +506,7 @@ pub fn run() -> Result<()> { init_feature_flags(); // Parse command-line arguments. - let args = warp_cli::Args::from_env(); + let args = galaxy_cli::Args::from_env(); // Server URL overrides are only honored on internal dev channels. Release channels silently // ignore `--server-root-url` / `--ws-server-url` / `--session-sharing-server-url` (and their @@ -536,11 +536,11 @@ pub fn run() -> Result<()> { #[cfg(windows)] if command.prints_to_stdout() { // We attach a console to ensure that all standard output gets printed correctly. - warp_util::windows::attach_to_parent_console(); + galaxy_util::windows::attach_to_parent_console(); } match command { #[cfg(all(feature = "local_tty", unix))] - warp_cli::Command::Worker(warp_cli::WorkerCommand::TerminalServer(args)) => { + galaxy_cli::Command::Worker(galaxy_cli::WorkerCommand::TerminalServer(args)) => { // If we were asked to run as a terminal server (as opposed to the main // GUI application), do so immediately. Ideally, the terminal server would // be a separate binary, but it's much easier to distribute a single binary, @@ -550,11 +550,11 @@ pub fn run() -> Result<()> { return Ok(()); } #[cfg(feature = "plugin_host")] - warp_cli::Command::Worker(warp_cli::WorkerCommand::PluginHost { .. }) => { + galaxy_cli::Command::Worker(galaxy_cli::WorkerCommand::PluginHost { .. }) => { return crate::run_plugin_host(); } #[cfg(feature = "local_tty")] - warp_cli::Command::Worker(warp_cli::WorkerCommand::MinidumpServer { socket_name }) => { + galaxy_cli::Command::Worker(galaxy_cli::WorkerCommand::MinidumpServer { socket_name }) => { cfg_if::cfg_if! { if #[cfg(all(linux_or_windows, feature = "crash_reporting"))] { return crate::crash_reporting::run_minidump_server(socket_name); @@ -565,22 +565,22 @@ pub fn run() -> Result<()> { } } #[cfg(not(target_family = "wasm"))] - warp_cli::Command::Worker(warp_cli::WorkerCommand::RemoteServerProxy(args)) => { + galaxy_cli::Command::Worker(galaxy_cli::WorkerCommand::RemoteServerProxy(args)) => { return crate::remote_server::run_proxy(args.identity_key.clone()); } #[cfg(not(target_family = "wasm"))] - warp_cli::Command::Worker(warp_cli::WorkerCommand::RemoteServerDaemon(args)) => { + galaxy_cli::Command::Worker(galaxy_cli::WorkerCommand::RemoteServerDaemon(args)) => { return crate::remote_server::run_daemon(args.identity_key.clone()); } #[cfg(not(target_family = "wasm"))] - warp_cli::Command::Worker(warp_cli::WorkerCommand::RipgrepSearch { + galaxy_cli::Command::Worker(galaxy_cli::WorkerCommand::RipgrepSearch { parent, ignore_case, multiline, pattern, paths, }) => { - warp_ripgrep::search::run_search_subprocess( + galaxy_ripgrep::search::run_search_subprocess( std::slice::from_ref(pattern), paths.clone(), *ignore_case, @@ -595,20 +595,20 @@ pub fn run() -> Result<()> { feature = "plugin_host", not(target_family = "wasm") )))] - warp_cli::Command::Worker(worker) => { + galaxy_cli::Command::Worker(worker) => { // Need this case to handle platforms where there are no enum variants in - // warp_cli::WorkerCommand, as we still need to check Command::Worker. + // galaxy_cli::WorkerCommand, as we still need to check Command::Worker. // On wasm, specifically, we should fail spectacularly if we get here. #[cfg(target_family = "wasm")] panic!("Worker process not supported on WASM: {worker:?}") } - warp_cli::Command::Completions { shell } => { - return warp_cli::completions::generate_to_stdout(*shell); + galaxy_cli::Command::Completions { shell } => { + return galaxy_cli::completions::generate_to_stdout(*shell); } - warp_cli::Command::CommandLine(cmd) => { + galaxy_cli::Command::CommandLine(cmd) => { let (is_sandboxed, computer_use_override) = match cmd.as_ref() { - warp_cli::CliCommand::Agent(warp_cli::agent::AgentCommand::Run(run_args)) => ( + galaxy_cli::CliCommand::Agent(galaxy_cli::agent::AgentCommand::Run(run_args)) => ( run_args.sandboxed, run_args.computer_use.computer_use_override(), ), @@ -626,11 +626,11 @@ pub fn run() -> Result<()> { computer_use_override, }); } - warp_cli::Command::DumpDebugInfo => { + galaxy_cli::Command::DumpDebugInfo => { return debug_dump::run(); } #[cfg(not(target_family = "wasm"))] - warp_cli::Command::PrintTelemetryEvents => { + galaxy_cli::Command::PrintTelemetryEvents => { return TelemetryEvent::print_telemetry_events_json(); } } @@ -639,10 +639,10 @@ pub fn run() -> Result<()> { // If running as a standalone CLI binary or invoked as "oz", print help // instead of launching the GUI app. let is_cli_binary = cfg!(feature = "standalone") - || warp_cli::binary_name().is_some_and(|name| name.starts_with("oz")) + || galaxy_cli::binary_name().is_some_and(|name| name.starts_with("oz")) || std::env::var_os("WARP_CLI_MODE").is_some(); if is_cli_binary { - warp_cli::Args::clap_command().print_help()?; + galaxy_cli::Args::clap_command().print_help()?; return Ok(()); } @@ -704,12 +704,12 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { cfg_if::cfg_if! { if #[cfg(enable_crash_recovery)] { if crash_recovery::is_crash_recovery_process(launch_mode.args().as_ref()) { - warp_logging::init_for_crash_recovery_process()?; + galaxy_logging::init_for_crash_recovery_process()?; } else { - warp_logging::init(warp_logging::LogConfig { is_cli, log_destination })?; + galaxy_logging::init(galaxy_logging::LogConfig { is_cli, log_destination })?; } } else { - warp_logging::init(warp_logging::LogConfig { is_cli, log_destination })?; + galaxy_logging::init(galaxy_logging::LogConfig { is_cli, log_destination })?; } } @@ -806,7 +806,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { // the TOML-backed store. When disabled, they live in the platform-native // store (same backend as private). Use the correct one for pre-app reads. #[cfg_attr(not(any(enable_crash_recovery, target_os = "linux")), expect(unused))] - let prefs_for_public_settings: &dyn warpui_extras::user_preferences::UserPreferences = + let prefs_for_public_settings: &dyn galaxyui_extras::user_preferences::UserPreferences = if FeatureFlag::SettingsFile.is_enabled() { public_preferences.as_ref() } else { @@ -826,13 +826,13 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { terminal::local_tty::spawner::PtySpawner::new().context("Failed to create pty spawner")?; let mut app_builder = if launch_mode.is_headless() { - warpui::platform::AppBuilder::new_headless( + galaxyui::platform::AppBuilder::new_headless( app_callbacks(launch_mode.is_integration_test()), Box::new(ASSETS), launch_mode.take_test_driver(), ) } else { - warpui::platform::AppBuilder::new( + galaxyui::platform::AppBuilder::new( app_callbacks(launch_mode.is_integration_test()), Box::new(ASSETS), launch_mode.take_test_driver(), @@ -841,7 +841,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { #[cfg(target_os = "macos")] { - use warpui::platform::mac::AppExt; + use galaxyui::platform::mac::AppExt; let activate_on_launch = !launch_mode.is_integration_test() || std::env::var("WARPUI_USE_REAL_DISPLAY_IN_INTEGRATION_TESTS").is_ok(); @@ -857,7 +857,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { #[cfg(target_os = "linux")] { use crate::settings::ForceX11; - use warpui::platform::linux::{self, AppBuilderExt}; + use galaxyui::platform::linux::{self, AppBuilderExt}; app_builder.set_window_class(ChannelState::app_id().to_string()); @@ -870,7 +870,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { #[cfg(target_os = "windows")] { - use warpui::platform::windows::AppBuilderExt; + use galaxyui::platform::windows::AppBuilderExt; app_builder.set_app_user_model_id(ChannelState::app_id().to_string()); // Only use DXC for DirectX shader compilation if we're not running in a Parallels VM @@ -878,7 +878,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { let is_parallels_vm = crate::util::vm_detection::is_running_in_windows_parallels_vm(); if !is_parallels_vm { log::info!("Using DXC for DirectX shader compilation"); - use warpui::platform::windows::DXCPath; + use galaxyui::platform::windows::DXCPath; app_builder.use_dxc_for_directx_shader_compilation(DXCPath { dxc_path: "dxcompiler.dll".to_string(), @@ -907,7 +907,7 @@ fn run_internal(mut launch_mode: LaunchMode) -> Result<()> { #[cfg(not(target_family = "wasm"))] // Rotate the log files in the background. ctx.background_executor() - .spawn(warp_logging::rotate_log_files()) + .spawn(galaxy_logging::rotate_log_files()) .detach(); ctx.add_singleton_model(|ctx| { @@ -966,8 +966,8 @@ pub struct UpdateQuakeModeEventArg { fn initialize_app( launch_mode: &LaunchMode, mut timer: IntervalTimer, - startup_toml_parse_error: Option, - ctx: &mut warpui::AppContext, + startup_toml_parse_error: Option, + ctx: &mut galaxyui::AppContext, _pre_sentry_errors: impl IntoIterator, ) -> Option { // WARNING: Errors that happen here before crash_reporting::init will not be collected in @@ -978,13 +978,13 @@ fn initialize_app( // Register an implementation of the secure storage service. cfg_if::cfg_if! { if #[cfg(feature = "integration_tests")] { - warpui_extras::secure_storage::register_noop(&data_domain, ctx); + galaxyui_extras::secure_storage::register_noop(&data_domain, ctx); } else if #[cfg(target_os = "linux")] { - warpui_extras::secure_storage::register_with_fallback(&data_domain, warp_core::paths::state_dir(), ctx) + galaxyui_extras::secure_storage::register_with_fallback(&data_domain, galaxy_core::paths::state_dir(), ctx) } else if #[cfg(target_os = "windows")] { - warpui_extras::secure_storage::register_with_dir(&data_domain, warp_core::paths::state_dir(), ctx) + galaxyui_extras::secure_storage::register_with_dir(&data_domain, galaxy_core::paths::state_dir(), ctx) } else { - warpui_extras::secure_storage::register(&data_domain, ctx); + galaxyui_extras::secure_storage::register(&data_domain, ctx); } } @@ -1320,7 +1320,7 @@ fn initialize_app( GPUState::handle(ctx).update(ctx, |gpu_state, ctx| { gpu_state - .set_has_lower_power_gpu(warpui::rendering::is_low_power_gpu_available(), ctx); + .set_has_lower_power_gpu(galaxyui::rendering::is_low_power_gpu_available(), ctx); }); for window_id in ctx.window_ids().collect_vec() { @@ -1366,7 +1366,7 @@ fn initialize_app( let imported_config_model = ctx.add_singleton_model(ImportedConfigModel::new); if FeatureFlag::SettingsImport.is_enabled() - && ChannelState::channel() != warp_core::channel::Channel::Integration + && ChannelState::channel() != galaxy_core::channel::Channel::Integration { imported_config_model.update(ctx, |model, ctx| { model.search_for_settings_to_import(ctx); @@ -1568,7 +1568,7 @@ fn initialize_app( ctx.add_singleton_model(BlocklistAIPermissions::new); ctx.add_singleton_model(ai::blocklist::orchestration_events::OrchestrationEventService::new); ctx.add_singleton_model(ai::blocklist::task_status_sync_model::TaskStatusSyncModel::new); - if warp_core::features::FeatureFlag::OrchestrationV2.is_enabled() { + if galaxy_core::features::FeatureFlag::OrchestrationV2.is_enabled() { ctx.add_singleton_model( ai::blocklist::orchestration_event_streamer::OrchestrationEventStreamer::new, ); @@ -1576,7 +1576,7 @@ fn initialize_app( ctx.add_singleton_model(RepoOutlines::new); ctx.add_singleton_model(|ctx| { - warp_core::sync_queue::SyncQueue::::new_with_rate_limit( + galaxy_core::sync_queue::SyncQueue::::new_with_rate_limit( &ctx.background_executor(), Some(DEFAULT_SYNC_REQUESTS_PER_MIN), ) @@ -1786,8 +1786,8 @@ fn initialize_app( app_state } -fn app_callbacks(is_integration_test: bool) -> warpui::platform::AppCallbacks { - warpui::platform::AppCallbacks { +fn app_callbacks(is_integration_test: bool) -> galaxyui::platform::AppCallbacks { + galaxyui::platform::AppCallbacks { on_internet_reachability_changed: Some(Box::new(move |reachable, ctx| { NetworkStatus::handle(ctx) .update(ctx, move |me, ctx| me.reachability_changed(reachable, ctx)); @@ -2219,7 +2219,7 @@ fn on_close_window_cancelled( } } -fn launch(ctx: &mut warpui::AppContext, app_state: Option, launch_mode: LaunchMode) { +fn launch(ctx: &mut galaxyui::AppContext, app_state: Option, launch_mode: LaunchMode) { IntervalTimer::handle(ctx).update(ctx, |timer, _ctx| { timer.mark_interval_end("APP_LAUNCHED"); }); @@ -2305,7 +2305,7 @@ fn launch(ctx: &mut warpui::AppContext, app_state: Option, launch_mode #[cfg(test)] fn init_logging_for_unit_tests_glue() { // Initialize terminal-friendly logging for tests from the shared logger crate. - warp_logging::init_logging_for_unit_tests(); + galaxy_logging::init_logging_for_unit_tests(); } /// Mark all features which should be enabled on the current channel as enabled. @@ -2648,7 +2648,7 @@ pub fn enabled_features() -> HashSet { FeatureFlag::AgentView, #[cfg(feature = "agent_view_block_context")] FeatureFlag::AgentViewBlockContext, - #[cfg(feature = "warp_managed_secrets")] + #[cfg(feature = "galaxy_managed_secrets")] FeatureFlag::WarpManagedSecrets, #[cfg(feature = "v4a_file_diffs")] FeatureFlag::V4AFileDiffs, diff --git a/app/src/login_item/macos.rs b/app/src/login_item/macos.rs index 129537a8..a7654c4f 100644 --- a/app/src/login_item/macos.rs +++ b/app/src/login_item/macos.rs @@ -7,7 +7,7 @@ use crate::report_if_error; use crate::terminal::general_settings::GeneralSettings; use ::settings::Setting; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; #[allow(deprecated)] pub(super) fn maybe_register_app_as_login_item(ctx: &mut AppContext) { diff --git a/app/src/login_item/mod.rs b/app/src/login_item/mod.rs index 3ddc792a..5146e0e8 100644 --- a/app/src/login_item/mod.rs +++ b/app/src/login_item/mod.rs @@ -12,9 +12,9 @@ mod macos; mod windows; #[cfg(any(target_os = "macos", target_os = "windows"))] -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; #[cfg(any(target_os = "macos", target_os = "windows"))] -use warpui::AppContext; +use galaxyui::AppContext; /// Reconciles whether Warp is registered to launch at login with the user's /// current preference. diff --git a/app/src/login_item/windows.rs b/app/src/login_item/windows.rs index b342eb61..df79c16d 100644 --- a/app/src/login_item/windows.rs +++ b/app/src/login_item/windows.rs @@ -10,8 +10,8 @@ use crate::report_if_error; use crate::terminal::general_settings::GeneralSettings; use ::settings::Setting; use std::path::{Path, PathBuf}; -use warp_core::channel::ChannelState; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxyui::{AppContext, SingletonEntity}; use winreg::enums::{HKEY_CURRENT_USER, KEY_SET_VALUE}; use winreg::RegKey; diff --git a/app/src/menu.rs b/app/src/menu.rs index f74be18d..32c57233 100644 --- a/app/src/menu.rs +++ b/app/src/menu.rs @@ -10,14 +10,14 @@ use chrono::{DateTime, Local}; use pathfinder_color::ColorU; use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warp_core::ui::color::blend::Blend; -use warpui::elements::{ +use galaxy_core::ui::color::blend::Blend; +use galaxyui::elements::{ ChildAnchor, ClippedScrollStateHandle, ClippedScrollable, DropShadow, OffsetPositioning, ParentAnchor, ParentOffsetBounds, PositionedElementAnchor, PositionedElementOffsetBounds, ScrollTarget, ScrollToPositionMode, ScrollbarWidth, Stack, }; -use warpui::WindowId; -use warpui::{ +use galaxyui::WindowId; +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, @@ -834,7 +834,7 @@ impl MenuItemFields { Shrinkable::new( 1., Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), @@ -1526,7 +1526,7 @@ pub enum MenuAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -2006,7 +2006,7 @@ impl SubMenu { ScrollbarWidth::Auto, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .finish(), diff --git a/app/src/menu_test.rs b/app/src/menu_test.rs index b7f5105b..5bef4ade 100644 --- a/app/src/menu_test.rs +++ b/app/src/menu_test.rs @@ -1,7 +1,7 @@ use super::{Menu, MenuAction, MenuItem, MenuItemFields, SelectAction, SubMenu}; -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App, TypedActionView}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App, TypedActionView}; #[derive(Clone, Debug, PartialEq, Eq)] enum TestAction { diff --git a/app/src/modal.rs b/app/src/modal.rs index c14b2456..975fb732 100644 --- a/app/src/modal.rs +++ b/app/src/modal.rs @@ -1,7 +1,7 @@ use crate::ui_components::blended_colors; use crate::{appearance::Appearance, themes::theme::Fill, ui_components::icons}; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ color::ColorU, elements::{ Align, Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, @@ -92,7 +92,7 @@ pub enum ModalAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![FixedBinding::new( "escape", @@ -262,7 +262,7 @@ impl Modal { Some( Align::new( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), diff --git a/app/src/network.rs b/app/src/network.rs index e96fba51..da4b429d 100644 --- a/app/src/network.rs +++ b/app/src/network.rs @@ -1,6 +1,6 @@ use std::future::Future; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::util::sync::Condition; diff --git a/app/src/notebooks/active_notebook_data.rs b/app/src/notebooks/active_notebook_data.rs index 6e184f8a..61e75565 100644 --- a/app/src/notebooks/active_notebook_data.rs +++ b/app/src/notebooks/active_notebook_data.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::{ ai::document::ai_document_model::AIDocumentId, diff --git a/app/src/notebooks/context_menu.rs b/app/src/notebooks/context_menu.rs index b6ae7dc3..dfb2e747 100644 --- a/app/src/notebooks/context_menu.rs +++ b/app/src/notebooks/context_menu.rs @@ -1,8 +1,8 @@ //! Shared context menu implementation for notebooks. use pathfinder_geometry::vector::Vector2F; -use warp_core::context_flag::ContextFlag; -use warpui::{ +use galaxy_core::context_flag::ContextFlag; +use galaxyui::{ elements::{ChildAnchor, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack}, keymap::Trigger, presenter::ChildView, @@ -248,7 +248,7 @@ where #[cfg(test)] /// List out the context menu items by name. - pub fn item_names<'a>(&self, ctx: &'a impl warpui::ViewAsRef) -> Vec<&'a str> { + pub fn item_names<'a>(&self, ctx: &'a impl galaxyui::ViewAsRef) -> Vec<&'a str> { self.menu .as_ref(ctx) .items() diff --git a/app/src/notebooks/context_menu_tests.rs b/app/src/notebooks/context_menu_tests.rs index f947dbc2..47b18990 100644 --- a/app/src/notebooks/context_menu_tests.rs +++ b/app/src/notebooks/context_menu_tests.rs @@ -1,8 +1,8 @@ use pathfinder_geometry::vector::vec2f; use string_offset::ByteOffset; -use warp_core::ui::appearance::Appearance; -use warp_editor::model::CoreEditorModel; -use warpui::{platform::WindowStyle, App}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::model::CoreEditorModel; +use galaxyui::{platform::WindowStyle, App}; use crate::search::files::model::FileSearchModel; diff --git a/app/src/notebooks/editor/block_insertion_menu.rs b/app/src/notebooks/editor/block_insertion_menu.rs index f1602163..124e408a 100644 --- a/app/src/notebooks/editor/block_insertion_menu.rs +++ b/app/src/notebooks/editor/block_insertion_menu.rs @@ -1,8 +1,8 @@ use std::sync::Arc; use serde::{Deserialize, Serialize}; -use warp_editor::content::text::BufferBlockItem; -use warpui::{ +use galaxy_editor::content::text::BufferBlockItem; +use galaxyui::{ elements::{ AnchorPair, Border, Container, CornerRadius, MouseStateHandle, OffsetPositioning, OffsetType, PositionedElementOffsetBounds, PositioningAxis, Radius, SavePosition, Stack, @@ -98,7 +98,7 @@ impl BlockInsertionMenuState { MenuItemFields::new(block_type.label()) .with_icon(block_type.icon()) .with_on_select_action(EditorViewAction::InsertBlock( - warp_editor::content::text::BlockType::Text(block_type.into()), + galaxy_editor::content::text::BlockType::Text(block_type.into()), )) .into_item(), ); @@ -117,7 +117,7 @@ impl BlockInsertionMenuState { let mut item_fields = MenuItemFields::new(block_type.label()) .with_icon(block_type.icon()) .with_on_select_action(EditorViewAction::InsertBlock( - warp_editor::content::text::BlockType::Text(block_type.into()), + galaxy_editor::content::text::BlockType::Text(block_type.into()), )); if let Some(icon_fill) = block_type.icon_color(appearance) { item_fields = item_fields.with_override_icon_color(icon_fill); @@ -129,7 +129,7 @@ impl BlockInsertionMenuState { MenuItemFields::new("Divider") .with_icon(Icon::HorizontalRuleBlock) .with_on_select_action(EditorViewAction::InsertBlock( - warp_editor::content::text::BlockType::Item(BufferBlockItem::HorizontalRule), + galaxy_editor::content::text::BlockType::Item(BufferBlockItem::HorizontalRule), )) .with_override_icon_color(Fill::Solid(appearance.theme().ui_warning_color())) .into_item(), @@ -222,7 +222,7 @@ impl RichTextEditorView { /// Insert an embedded workflow block at the current insertion menu source. fn insert_embedded_workflow(&mut self, id: &SyncId, ctx: &mut ViewContext) { self.insert_block( - warp_editor::content::text::BlockType::Item(BufferBlockItem::Embedded { + galaxy_editor::content::text::BlockType::Item(BufferBlockItem::Embedded { item: Arc::new(EmbeddedWorkflow::new( id.sqlite_uid_hash(ObjectIdType::Workflow), )), diff --git a/app/src/notebooks/editor/embedded_item.rs b/app/src/notebooks/editor/embedded_item.rs index 41eb4ded..9ec17654 100644 --- a/app/src/notebooks/editor/embedded_item.rs +++ b/app/src/notebooks/editor/embedded_item.rs @@ -6,8 +6,8 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::{vec2f, Vector2F}; use serde_yaml::Mapping; use string_offset::ByteOffset; -use warp_core::ui::appearance::Appearance; -use warp_editor::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::{ content::{markdown::MarkdownStyle, text::TextStylesWithMetadata}, editor::EmbeddedItemModel, extract_block, @@ -22,11 +22,11 @@ use warp_editor::{ BLOCK_FOOTER_HEIGHT, }, }; -use warpui::{ +use galaxyui::{ elements::{Border, Empty}, SingletonEntity, }; -use warpui::{ +use galaxyui::{ elements::{ConstrainedBox, CornerRadius, Margin, Padding, Radius}, text_layout::TextFrame, units::{IntoPixels, Pixels}, @@ -467,7 +467,7 @@ impl RenderableEmbeddedWorkflow { ) }; let workflow_icon = ConstrainedBox::new( - icon.to_warpui_icon(icon_color.into()) + icon.to_galaxyui_icon(icon_color.into()) .with_opacity(1.0) .finish(), ) @@ -616,7 +616,7 @@ impl RenderableBlock for RenderableEmbeddedWorkflow { ); } - ctx.paint.scene.start_layer(warpui::ClipBounds::ActiveLayer); + ctx.paint.scene.start_layer(galaxyui::ClipBounds::ActiveLayer); // Position the block footer right below the content area, flush with its right-hand edge. // This gives the footer some padding relative to the visible area with a background. @@ -631,15 +631,15 @@ impl RenderableBlock for RenderableEmbeddedWorkflow { ctx.paint.scene.stop_layer(); } - fn after_layout(&mut self, ctx: &mut warpui::AfterLayoutContext, app: &warpui::AppContext) { + fn after_layout(&mut self, ctx: &mut galaxyui::AfterLayoutContext, app: &galaxyui::AppContext) { self.footer.after_layout(ctx, app); } fn dispatch_event( &mut self, - _model: &warp_editor::render::model::RenderState, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, + _model: &galaxy_editor::render::model::RenderState, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, app: &AppContext, ) -> bool { self.footer.dispatch_event(event, ctx, app) diff --git a/app/src/notebooks/editor/embedding_model.rs b/app/src/notebooks/editor/embedding_model.rs index 27d4c28d..c19c9dfb 100644 --- a/app/src/notebooks/editor/embedding_model.rs +++ b/app/src/notebooks/editor/embedding_model.rs @@ -1,13 +1,13 @@ use std::{borrow::Cow, mem, ops::Range, sync::Arc}; use string_offset::{ByteOffset, CharOffset}; -use warp_completer::signatures::CommandRegistry; -use warp_editor::{ +use galaxy_completer::signatures::CommandRegistry; +use galaxy_editor::{ content::{anchor::Anchor, buffer::Buffer, selection_model::BufferSelectionModel}, editor::EmbeddedItemModel, }; -use warp_util::user_input::UserInput; -use warpui::{ +use galaxy_util::user_input::UserInput; +use galaxyui::{ elements::{ Align, Border, Container, CrossAxisAlignment, Empty, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/notebooks/editor/find_bar.rs b/app/src/notebooks/editor/find_bar.rs index e3158078..2f490231 100644 --- a/app/src/notebooks/editor/find_bar.rs +++ b/app/src/notebooks/editor/find_bar.rs @@ -2,11 +2,11 @@ use std::{fmt::Write, time::Duration}; use async_channel::Sender; use pathfinder_geometry::vector::vec2f; -use warp_editor::{ +use galaxy_editor::{ render::model::{AutoScrollMode, Decoration}, search::{SearchEvent, Searcher}, }; -use warpui::{ +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, elements::{ Border, ChildAnchor, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, @@ -259,7 +259,7 @@ impl FindBar { .ui_builder() .button(ButtonVariant::Text, mouse_state_handle) // The fill here doesn't matter, since it's overridden by the button text color. - .with_icon_label(icon.to_warpui_icon(crate::themes::theme::Fill::white())) + .with_icon_label(icon.to_galaxyui_icon(crate::themes::theme::Fill::white())) .with_style(base_styles) .with_hovered_styles(UiComponentStyles { background: Some(appearance.theme().foreground_button_color().into()), @@ -356,7 +356,7 @@ impl View for FindBar { "FindBar" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let searcher = self.searcher.as_ref(app); let theme = appearance.theme(); @@ -364,7 +364,7 @@ impl View for FindBar { let has_matches = searcher.match_count() > 0; let find_icon = Container::new( - ConstrainedBox::new(Icon::Find.to_warpui_icon(theme.active_ui_detail()).finish()) + ConstrainedBox::new(Icon::Find.to_galaxyui_icon(theme.active_ui_detail()).finish()) .with_height(editor_height) .with_width(editor_height) .finish(), diff --git a/app/src/notebooks/editor/interaction_state_model.rs b/app/src/notebooks/editor/interaction_state_model.rs index 34aa4c4a..dd47d20b 100644 --- a/app/src/notebooks/editor/interaction_state_model.rs +++ b/app/src/notebooks/editor/interaction_state_model.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; use crate::editor::InteractionState; diff --git a/app/src/notebooks/editor/keys.rs b/app/src/notebooks/editor/keys.rs index c21ed54f..bb4ebc20 100644 --- a/app/src/notebooks/editor/keys.rs +++ b/app/src/notebooks/editor/keys.rs @@ -1,6 +1,6 @@ //! Utilities for notebook keybindings. -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::{ settings_view::keybindings::{KeybindingChangedEvent, KeybindingChangedNotifier}, diff --git a/app/src/notebooks/editor/link_editor.rs b/app/src/notebooks/editor/link_editor.rs index cbe93a0a..20b44676 100644 --- a/app/src/notebooks/editor/link_editor.rs +++ b/app/src/notebooks/editor/link_editor.rs @@ -1,5 +1,5 @@ -use warp_editor::{editor::NavigationKey, model::RichTextEditorModel, render::model::RenderState}; -use warpui::{ +use galaxy_editor::{editor::NavigationKey, model::RichTextEditorModel, render::model::RenderState}; +use galaxyui::{ elements::{ AnchorPair, Container, Flex, MouseStateHandle, OffsetPositioning, OffsetType, ParentElement, PositionedElementOffsetBounds, PositioningAxis, XAxisAnchor, YAxisAnchor, @@ -201,7 +201,7 @@ impl View for LinkEditor { } } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let mut editors = Flex::column(); diff --git a/app/src/notebooks/editor/mod.rs b/app/src/notebooks/editor/mod.rs index 3732c444..ebff5a04 100644 --- a/app/src/notebooks/editor/mod.rs +++ b/app/src/notebooks/editor/mod.rs @@ -4,8 +4,8 @@ use std::sync::Arc; use markdown_parser::markdown_parser::CODE_BLOCK_DEFAULT_MARKDOWN_LANG; use pathfinder_color::ColorU; -use warp_core::ui::{builder::CHECK_SVG_PATH, theme::color::internal_colors}; -use warp_editor::{ +use galaxy_core::ui::{builder::CHECK_SVG_PATH, theme::color::internal_colors}; +use galaxy_editor::{ content::text::{ BlockHeaderSize, BlockType as ContentBlockType, BufferBlockStyle, CodeBlockType, }, @@ -14,8 +14,8 @@ use warp_editor::{ ParagraphStyles, RichTextStyles, TableStyle, PARAGRAPH_MIN_HEIGHT, }, }; -use warp_util::user_input::UserInput; -use warpui::{elements::Border, fonts::FamilyId, ui_components::checkbox::HOVER_BACKGROUND_COLOR}; +use galaxy_util::user_input::UserInput; +use galaxyui::{elements::Border, fonts::FamilyId, ui_components::checkbox::HOVER_BACKGROUND_COLOR}; use crate::{ appearance::Appearance, @@ -40,7 +40,7 @@ mod omnibar; pub mod view; pub use block_insertion_menu::BlockInsertionSource; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; const NOTEBOOK_LINE_HEIGHT_RATIO: f32 = 1.6; const NOTEBOOK_BASELINE_RATIO: f32 = 0.7; diff --git a/app/src/notebooks/editor/model.rs b/app/src/notebooks/editor/model.rs index e7aa9b8a..ae8afb17 100644 --- a/app/src/notebooks/editor/model.rs +++ b/app/src/notebooks/editor/model.rs @@ -9,7 +9,7 @@ use num_traits::SaturatingSub; use regex::Regex; use url::Url; use vec1::{vec1, Vec1}; -use warpui::{ +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, clipboard::ClipboardContent, AppContext, Entity, ModelAsRef, ModelContext, ModelHandle, SingletonEntity, WindowId, @@ -26,14 +26,14 @@ use crate::{ terminal::ShellLaunchData, }; use string_offset::CharOffset; -use warp_core::features::FeatureFlag; -use warp_core::semantic_selection::SemanticSelection; -use warp_editor::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_editor::{ content::{buffer::ShouldAutoscroll, selection_model::BufferSelectionModel}, model::BufferUpdateWrapper, render::model::{BlockItem, StyleUpdateAction}, }; -use warp_editor::{ +use galaxy_editor::{ content::{ buffer::{ AutoScrollBehavior, Buffer, BufferEditAction, BufferEvent, BufferSelectAction, @@ -49,7 +49,7 @@ use warp_editor::{ search::Searcher, selection::{SelectionMode, SelectionModel, TextDirection, TextUnit}, }; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; use super::{ super::telemetry::SelectionMode as TelemetrySelectionMode, embedding_model::NotebookEmbed, diff --git a/app/src/notebooks/editor/model_tests.rs b/app/src/notebooks/editor/model_tests.rs index 40ffc655..4194fca1 100644 --- a/app/src/notebooks/editor/model_tests.rs +++ b/app/src/notebooks/editor/model_tests.rs @@ -37,21 +37,21 @@ use markdown_parser::{ use pathfinder_geometry::vector::Vector2F; use string_offset::CharOffset; use vec1::vec1; -use warp_core::features::FeatureFlag; -use warp_editor::content::buffer::{AutoScrollBehavior, BufferSelectAction, SelectionOffsets}; -use warp_editor::content::text::{BlockType, BufferBlockStyle, CodeBlockType, TextStyles}; -use warp_editor::model::{CoreEditorModel, RichTextEditorModel}; -use warp_editor::render::model::viewport::SizeInfo; -use warp_editor::render::model::BlockItem; -use warp_editor::render::model::RenderEvent; -use warp_editor::selection::{TextDirection, TextUnit}; -use warpui::elements::ListIndentLevel; -use warpui::platform::WindowStyle; -use warpui::presenter::ChildView; -use warpui::r#async::{block_on, FutureId}; -use warpui::text::word_boundaries::WordBoundariesPolicy; -use warpui::{r#async::Timer, App, Entity, ModelHandle, SingletonEntity, TypedActionView}; -use warpui::{AddSingletonModel, AppContext, Element, View, ViewHandle}; +use galaxy_core::features::FeatureFlag; +use galaxy_editor::content::buffer::{AutoScrollBehavior, BufferSelectAction, SelectionOffsets}; +use galaxy_editor::content::text::{BlockType, BufferBlockStyle, CodeBlockType, TextStyles}; +use galaxy_editor::model::{CoreEditorModel, RichTextEditorModel}; +use galaxy_editor::render::model::viewport::SizeInfo; +use galaxy_editor::render::model::BlockItem; +use galaxy_editor::render::model::RenderEvent; +use galaxy_editor::selection::{TextDirection, TextUnit}; +use galaxyui::elements::ListIndentLevel; +use galaxyui::platform::WindowStyle; +use galaxyui::presenter::ChildView; +use galaxyui::r#async::{block_on, FutureId}; +use galaxyui::text::word_boundaries::WordBoundariesPolicy; +use galaxyui::{r#async::Timer, App, Entity, ModelHandle, SingletonEntity, TypedActionView}; +use galaxyui::{AddSingletonModel, AppContext, Element, View, ViewHandle}; /// Container for a [`RichTextEditorView`] in unit tests. struct TestView { @@ -67,7 +67,7 @@ impl View for TestView { "TestView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.editor).finish() } } diff --git a/app/src/notebooks/editor/notebook_command.rs b/app/src/notebooks/editor/notebook_command.rs index bf578b74..3b5db17c 100644 --- a/app/src/notebooks/editor/notebook_command.rs +++ b/app/src/notebooks/editor/notebook_command.rs @@ -11,8 +11,8 @@ use syntect::{ parsing::SyntaxSet, util::LinesWithEndings, }; -use warp_completer::signatures::CommandRegistry; -use warp_editor::{ +use galaxy_completer::signatures::CommandRegistry; +use galaxy_editor::{ content::{ anchor::Anchor, buffer::{Buffer, BufferEvent, EditOrigin}, @@ -26,9 +26,9 @@ use warp_editor::{ }; use markdown_parser::markdown_parser::CODE_BLOCK_DEFAULT_MARKDOWN_LANG; -use warp_util::user_input::UserInput; -use warpui::{elements::Align, r#async::SpawnedFutureHandle, AppContext}; -use warpui::{ +use galaxy_util::user_input::UserInput; +use galaxyui::{elements::Align, r#async::SpawnedFutureHandle, AppContext}; +use galaxyui::{ elements::{ Border, Container, CrossAxisAlignment, Empty, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Shrinkable, Text, @@ -603,7 +603,7 @@ impl RunnableCommandModel for NotebookCommand { appearance.ui_font_size(), ) .with_style(Properties { - weight: warpui::fonts::Weight::Light, + weight: galaxyui::fonts::Weight::Light, ..Default::default() }) .with_color( diff --git a/app/src/notebooks/editor/omnibar.rs b/app/src/notebooks/editor/omnibar.rs index 099ace5f..cd54eea2 100644 --- a/app/src/notebooks/editor/omnibar.rs +++ b/app/src/notebooks/editor/omnibar.rs @@ -3,7 +3,7 @@ use itertools::Itertools; use pathfinder_geometry::{rect::RectF, vector::Vector2F}; -use warp_editor::{ +use galaxy_editor::{ content::text::{ BlockType as ContentBlockType, BufferBlockStyle, BufferTextStyle, TextStyles, TextStylesWithMetadata, @@ -11,7 +11,7 @@ use warp_editor::{ model::RichTextEditorModel, render::model::RenderState, }; -use warpui::{ +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, elements::{ AnchorPair, Border, ConstrainedBox, Container, CornerRadius, DropShadow, Flex, @@ -263,7 +263,7 @@ impl View for Omnibar { "Omnibar" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let mut actions = Flex::row().with_main_axis_size(MainAxisSize::Min); @@ -488,9 +488,9 @@ impl Compact { impl Element for Compact { fn layout( &mut self, - constraint: warpui::SizeConstraint, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + constraint: galaxyui::SizeConstraint, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) -> Vector2F { self.child.layout( SizeConstraint { @@ -505,8 +505,8 @@ impl Element for Compact { fn paint( &mut self, origin: Vector2F, - ctx: &mut warpui::PaintContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::PaintContext, + app: &galaxyui::AppContext, ) { self.child.paint(origin, ctx, app) } @@ -521,18 +521,18 @@ impl Element for Compact { fn dispatch_event( &mut self, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, - app: &warpui::AppContext, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, + app: &galaxyui::AppContext, ) -> bool { self.child.dispatch_event(event, ctx, app) } - fn after_layout(&mut self, ctx: &mut warpui::AfterLayoutContext, app: &AppContext) { + fn after_layout(&mut self, ctx: &mut galaxyui::AfterLayoutContext, app: &AppContext) { self.child.after_layout(ctx, app) } - fn z_index(&self) -> Option { + fn z_index(&self) -> Option { self.child.z_index() } diff --git a/app/src/notebooks/editor/view.rs b/app/src/notebooks/editor/view.rs index ae62959c..d4e623f6 100644 --- a/app/src/notebooks/editor/view.rs +++ b/app/src/notebooks/editor/view.rs @@ -8,7 +8,7 @@ use std::{ use markdown_parser::{parse_html, parse_markdown, FormattedText}; use pathfinder_geometry::vector::vec2f; use string_offset::CharOffset; -use warp_editor::{ +use galaxy_editor::{ content::{ anchor::Anchor, text::{BufferTextStyle, CodeBlockType, TextStyles}, @@ -26,8 +26,8 @@ use warp_editor::{ selection::{TextDirection, TextUnit}, }; -use warp_util::{path::LineAndColumnArg, user_input::UserInput}; -use warpui::{ +use galaxy_util::{path::LineAndColumnArg, user_input::UserInput}; +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, assets::asset_cache::{AssetCache, AssetHandle, AssetState}, clipboard::ClipboardContent, @@ -52,8 +52,8 @@ use warpui::{ windowing, AppContext, BlurContext, CursorInfo, Element, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WeakViewHandle, }; -use warpui::{actions::StandardAction, elements::Hoverable}; -use warpui::{keymap::PerPlatformKeystroke, windowing::WindowManager}; +use galaxyui::{actions::StandardAction, elements::Hoverable}; +use galaxyui::{keymap::PerPlatformKeystroke, windowing::WindowManager}; use crate::{ appearance::Appearance, @@ -80,7 +80,7 @@ use crate::{ use crate::util::link_detection::{detect_file_paths, get_word_range_at_offset, DetectedLinkType}; #[cfg(feature = "local_fs")] -use warpui::text::word_boundaries::WordBoundariesPolicy; +use galaxyui::text::word_boundaries::WordBoundariesPolicy; use super::{ block_insertion_menu::{BlockInsertionMenuState, BlockInsertionSource}, @@ -103,7 +103,7 @@ const MAX_EDITOR_TIP_WIDTH: f32 = 300.; const GUTTER_WIDTH: f32 = ICON_DIMENSIONS + 4.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Context for text entry/navigation/selection: // - The editor is focused @@ -847,7 +847,7 @@ pub enum EditorViewAction { Redo, OpenBlockInsertionMenu, /// Insert a block of the given type after the hovered location. - InsertBlock(warp_editor::content::text::BlockType), + InsertBlock(galaxy_editor::content::text::BlockType), Indent, Unindent, Tab, @@ -1977,7 +1977,7 @@ impl RichTextEditorView { /// Inserts a new `block_type` block after the hovered block. pub(super) fn insert_block( &mut self, - block_type: warp_editor::content::text::BlockType, + block_type: galaxy_editor::content::text::BlockType, ctx: &mut ViewContext, ) { enum InsertionMode { @@ -2030,7 +2030,7 @@ impl RichTextEditorView { model.insert_block_after(insertion_offset + 1, block_type, ctx); } InsertionMode::DeleteSlashAndRestyleLine(cursor_position) => match block_type { - warp_editor::content::text::BlockType::Item(item) => { + galaxy_editor::content::text::BlockType::Item(item) => { // Set one more offset position to the left to avoid additional linebreaks. // Note: We can use `set_last_selection_head` because the menu cannot // be opened when there are multiple selections. @@ -2038,7 +2038,7 @@ impl RichTextEditorView { model.insert_block_item(item, ctx); model.cursor_at(cursor_position + 1, ctx); } - warp_editor::content::text::BlockType::Text(style) => { + galaxy_editor::content::text::BlockType::Text(style) => { // Note: We can use `set_last_selection_head` because the menu cannot // be opened when there are multiple selections. model.set_last_selection_head(cursor_position, ctx); @@ -2409,7 +2409,7 @@ impl RichTextEditorView { appearance: &Appearance, ctx: &AppContext, ) -> Box { - use warpui::EventContext; + use galaxyui::EventContext; type FilePathTooltipLinks = Vec>>; let path = selected_file_path.path.clone(); @@ -2647,7 +2647,7 @@ impl View for RichTextEditorView { stack.finish() } - fn active_cursor_position(&self, ctx: &ViewContext) -> Option { + fn active_cursor_position(&self, ctx: &ViewContext) -> Option { let model = self.model.as_ref(ctx); let render_state = model.render_state().as_ref(ctx); let font_size = model.cursor_font_size(ctx); @@ -2658,7 +2658,7 @@ impl View for RichTextEditorView { }) } - fn keymap_context(&self, ctx: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, ctx: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if self.is_editable(ctx) { @@ -3222,7 +3222,7 @@ impl TypedActionView for RichTextEditorView { } } -impl warp_editor::editor::EditorView for RichTextEditorView { +impl galaxy_editor::editor::EditorView for RichTextEditorView { type RichTextAction = EditorViewAction; fn runnable_command_at<'a>( diff --git a/app/src/notebooks/editor/view_tests.rs b/app/src/notebooks/editor/view_tests.rs index 2a0c0006..570fc010 100644 --- a/app/src/notebooks/editor/view_tests.rs +++ b/app/src/notebooks/editor/view_tests.rs @@ -2,17 +2,17 @@ use crate::features::FeatureFlag; use async_channel::TryRecvError; use std::sync::Arc; use string_offset::CharOffset; -use warp_editor::render::{ +use galaxy_editor::render::{ element::RichTextAction, model::{HitTestBlockType, Location, RenderEvent}, }; -use warp_util::user_input::UserInput; +use galaxy_util::user_input::UserInput; -use warpui::event::ModifiersState; -use warpui::r#async::block_on; -use warpui::windowing::WindowManager; -use warpui::{platform::WindowStyle, presenter::ChildView, App, Element, Entity, View, ViewHandle}; -use warpui::{SingletonEntity, TypedActionView, WindowId}; +use galaxyui::event::ModifiersState; +use galaxyui::r#async::block_on; +use galaxyui::windowing::WindowManager; +use galaxyui::{platform::WindowStyle, presenter::ChildView, App, Element, Entity, View, ViewHandle}; +use galaxyui::{SingletonEntity, TypedActionView, WindowId}; use super::{EditorViewAction, RichTextEditorConfig, RichTextEditorView}; use crate::appearance::Appearance; @@ -52,7 +52,7 @@ impl View for TestView { "TestView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.editor).finish() } } @@ -136,7 +136,7 @@ async fn reset_editor_with_markdown( fn rendered_mermaid_block_range( editor: &RichTextEditorView, - ctx: &warpui::AppContext, + ctx: &galaxyui::AppContext, ) -> Option> { let render_state = editor.model.as_ref(ctx).render_state().clone(); let render_state = render_state.as_ref(ctx); @@ -147,7 +147,7 @@ fn rendered_mermaid_block_range( let block_end = block_start + block.content_length(); if matches!( block, - warp_editor::render::model::BlockItem::MermaidDiagram { .. } + galaxy_editor::render::model::BlockItem::MermaidDiagram { .. } ) { return Some(block_start..block_end); } @@ -247,7 +247,7 @@ fn test_appearance_changes() { // Simulate an appearance change. Appearance::handle(&app).update(&mut app, |appearance, ctx| { - appearance.set_monospace_font_family(warpui::fonts::FamilyId(123), ctx); + appearance.set_monospace_font_family(galaxyui::fonts::FamilyId(123), ctx); ctx.notify() }); @@ -258,7 +258,7 @@ fn test_appearance_changes() { // The render model's style should be updated. assert_eq!( model.styles().code_text.font_family, - warpui::fonts::FamilyId(123) + galaxyui::fonts::FamilyId(123) ); }); diff --git a/app/src/notebooks/file/mod.rs b/app/src/notebooks/file/mod.rs index 7526fd9a..8773838a 100644 --- a/app/src/notebooks/file/mod.rs +++ b/app/src/notebooks/file/mod.rs @@ -5,10 +5,10 @@ use std::{ }; use pathfinder_geometry::vector::vec2f; -use warp_util::path::user_friendly_path; +use galaxy_util::path::user_friendly_path; #[cfg(feature = "local_fs")] -use warpui::clipboard::ClipboardContent; -use warpui::{ +use galaxyui::clipboard::ClipboardContent; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ Align, Container, CrossAxisAlignment, DispatchEventResult, Empty, EventHandler, Flex, @@ -64,12 +64,12 @@ use super::{ use crate::code::editor_management::CodeSource; #[cfg(feature = "local_fs")] use crate::util::openable_file_type::FileTarget; -use warp_core::ui::icons::ICON_DIMENSIONS; -use warp_editor::model::CoreEditorModel; +use galaxy_core::ui::icons::ICON_DIMENSIONS; +use galaxy_editor::model::CoreEditorModel; #[cfg(feature = "local_fs")] -use warp_files::{FileModel, FileModelEvent}; +use galaxy_files::{FileModel, FileModelEvent}; #[cfg(feature = "local_fs")] -use warp_util::file::FileId; +use galaxy_util::file::FileId; pub use crate::util::openable_file_type::is_markdown_file; @@ -120,7 +120,7 @@ pub enum FileNotebookEvent { OpenFileWithTarget { path: PathBuf, target: FileTarget, - line_col: Option, + line_col: Option, }, } @@ -153,7 +153,7 @@ impl From for FileNotebookAction { } /// Information about the notebook's backing file. -// TODO: This should probably build on the `warp_files` abstractions. +// TODO: This should probably build on the `galaxy_files` abstractions. #[derive(Debug, Clone)] enum SourceFile { Local { @@ -214,7 +214,7 @@ impl FileState { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([ EditableBinding::new( @@ -741,7 +741,7 @@ impl FileNotebookView { TextAndIcon::new( TextAndIconAlignment::TextFirst, "Try again".to_string(), - Icon::Refresh.to_warpui_icon(error_text_color), + Icon::Refresh.to_galaxyui_icon(error_text_color), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(16., 16.), @@ -1024,7 +1024,7 @@ impl BackingView for FileNotebookView { let title_text = render_pane_header_title_text( title, appearance, - warpui::text_layout::ClipConfig::start(), + galaxyui::text_layout::ClipConfig::start(), ); view::HeaderContent::Custom { @@ -1047,7 +1047,7 @@ impl BackingView for FileNotebookView { title, title_secondary: None, title_style: None, - title_clip_config: warpui::text_layout::ClipConfig::start(), + title_clip_config: galaxyui::text_layout::ClipConfig::start(), title_max_width: None, left_of_title: None, right_of_title: None, diff --git a/app/src/notebooks/file/mod_tests.rs b/app/src/notebooks/file/mod_tests.rs index 2c44392b..ec4fee56 100644 --- a/app/src/notebooks/file/mod_tests.rs +++ b/app/src/notebooks/file/mod_tests.rs @@ -5,10 +5,10 @@ use pathfinder_geometry::vector::vec2f; #[cfg(feature = "local_fs")] use repo_metadata::RepoMetadataModel; use repo_metadata::{repositories::DetectedRepositories, watcher::DirectoryWatcher}; -use warp_core::ui::appearance::Appearance; +use galaxy_core::ui::appearance::Appearance; #[cfg(feature = "local_fs")] -use warp_files::FileModel; -use warpui::{platform::WindowStyle, App, SingletonEntity, View}; +use galaxy_files::FileModel; +use galaxyui::{platform::WindowStyle, App, SingletonEntity, View}; use crate::server::server_api::team::MockTeamClient; use crate::server::server_api::workspace::MockWorkspaceClient; diff --git a/app/src/notebooks/link.rs b/app/src/notebooks/link.rs index 220af17c..7704737d 100644 --- a/app/src/notebooks/link.rs +++ b/app/src/notebooks/link.rs @@ -10,8 +10,8 @@ use std::{ use futures_util::future::Either; use url::Url; -use warp_util::path::{CleanPathResult, LineAndColumnArg}; -use warpui::{ +use galaxy_util::path::{CleanPathResult, LineAndColumnArg}; +use galaxyui::{ r#async::SpawnedFutureHandle, AppContext, Entity, ModelContext, ModelHandle, SingletonEntity, WindowId, }; diff --git a/app/src/notebooks/link_tests.rs b/app/src/notebooks/link_tests.rs index c37d9c66..edc3cf4f 100644 --- a/app/src/notebooks/link_tests.rs +++ b/app/src/notebooks/link_tests.rs @@ -8,8 +8,8 @@ use lazy_static::lazy_static; use parking_lot::Mutex; use tempfile::tempdir; use url::Url; -use warp_util::path::LineAndColumnArg; -use warpui::{App, ModelHandle, WindowId}; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{App, ModelHandle, WindowId}; use crate::{ notebooks::{file::is_markdown_file, link::LinkEvent}, diff --git a/app/src/notebooks/manager.rs b/app/src/notebooks/manager.rs index e58b78f9..2c35ff7a 100644 --- a/app/src/notebooks/manager.rs +++ b/app/src/notebooks/manager.rs @@ -3,7 +3,7 @@ use std::sync::Arc; use futures_util::stream::AbortHandle; use markdown_parser::markdown_parser::parse_markdown_to_raw_text; -use warpui::{ +use galaxyui::{ r#async::SpawnedFutureHandle, Entity, EntityId, ModelContext, SingletonEntity, WeakViewHandle, WindowId, }; diff --git a/app/src/notebooks/manager_tests.rs b/app/src/notebooks/manager_tests.rs index 2450801d..6c93df5e 100644 --- a/app/src/notebooks/manager_tests.rs +++ b/app/src/notebooks/manager_tests.rs @@ -1,7 +1,7 @@ use std::sync::mpsc; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ platform::WindowStyle, AddSingletonModel, App, EntityId, ModelHandle, ViewContext, ViewHandle, }; diff --git a/app/src/notebooks/mod.rs b/app/src/notebooks/mod.rs index d3dba78b..a123dddc 100644 --- a/app/src/notebooks/mod.rs +++ b/app/src/notebooks/mod.rs @@ -15,7 +15,7 @@ use async_trait::async_trait; use anyhow::Result; use itertools::Itertools; use serde::{Deserialize, Serialize}; -use warpui::AppContext; +use galaxyui::AppContext; use crate::server::cloud_objects::update_manager::InitiatedBy; use crate::{ @@ -269,7 +269,7 @@ pub fn post_process_notebook(data: &str) -> String { /// * Includes extra context for embedded objects. #[cfg_attr(not(feature = "local_fs"), allow(dead_code))] pub fn export_notebook(data: &str, ctx: &AppContext) -> anyhow::Result { - use warp_editor::content::{buffer::Buffer, markdown::MarkdownStyle}; + use galaxy_editor::content::{buffer::Buffer, markdown::MarkdownStyle}; // Parse the Markdown directly rather than using [`Buffer::from_markdown`] so that we can // report errors to the exporter. diff --git a/app/src/notebooks/notebook.rs b/app/src/notebooks/notebook.rs index 3e5345f9..252874b3 100644 --- a/app/src/notebooks/notebook.rs +++ b/app/src/notebooks/notebook.rs @@ -6,16 +6,16 @@ use regex::Regex; use settings::Setting as _; use std::{sync::Arc, time::Duration}; use url::Url; -use warp_core::context_flag::ContextFlag; +use galaxy_core::context_flag::ContextFlag; #[cfg(target_family = "wasm")] use crate::uri::web_intent_parser::open_url_on_desktop; -use warp_editor::{ +use galaxy_editor::{ editor::NavigationKey, model::{CoreEditorModel, RichTextEditorModel}, }; -use warpui::{ +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, clipboard::ClipboardContent, elements::{ @@ -156,7 +156,7 @@ lazy_static! { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([ EditableBinding::new( @@ -1443,7 +1443,7 @@ impl NotebookView { ); } - if !warpui::platform::is_mobile_device() + if !galaxyui::platform::is_mobile_device() && !ContextFlag::HideOpenOnDesktopButton.is_enabled() && *UserAppInstallDetectionSettings::as_ref(ctx) .user_app_installation_detected @@ -1943,7 +1943,7 @@ impl NotebookView { .with_children([ ConstrainedBox::new( icons::Icon::Trash - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_width(16.) @@ -2203,7 +2203,7 @@ impl View for NotebookView { } } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let mut content = Flex::column(); content.extend(self.render_trash_banner(app)); content.add_child(self.render_title(app)); @@ -2256,7 +2256,7 @@ impl View for NotebookView { SavePosition::new(stack.finish(), &self.view_position_id).finish() } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); match self.mode_app_ctx(app) { diff --git a/app/src/notebooks/notebook/details_bar.rs b/app/src/notebooks/notebook/details_bar.rs index f728be79..7a8e4eea 100644 --- a/app/src/notebooks/notebook/details_bar.rs +++ b/app/src/notebooks/notebook/details_bar.rs @@ -1,7 +1,7 @@ //! Components for the notebook header. -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{ Container, CrossAxisAlignment, Flex, Highlight, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/notebooks/notebook/details_bar_tests.rs b/app/src/notebooks/notebook/details_bar_tests.rs index 0b6e4b6b..6c36f20b 100644 --- a/app/src/notebooks/notebook/details_bar_tests.rs +++ b/app/src/notebooks/notebook/details_bar_tests.rs @@ -1,4 +1,4 @@ -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::{ auth::UserUid, diff --git a/app/src/notebooks/notebook_tests.rs b/app/src/notebooks/notebook_tests.rs index 121dd199..5658501d 100644 --- a/app/src/notebooks/notebook_tests.rs +++ b/app/src/notebooks/notebook_tests.rs @@ -3,9 +3,9 @@ use std::sync::Arc; use chrono::{Duration, Utc}; use futures_util::future::BoxFuture; use itertools::Itertools; -use warp_core::ui::appearance::Appearance; -use warp_editor::editor::EditorView; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::editor::EditorView; +use galaxyui::{ platform::WindowStyle, presenter::ChildView, r#async::Timer, telemetry::EventPayload, AddSingletonModel, App, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewHandle, WindowId, @@ -391,7 +391,7 @@ fn test_focus_tracking() { #[ignore] fn test_edit_telemetry() { fn edit_events() -> Vec { - warpui::telemetry::flush_events() + galaxyui::telemetry::flush_events() .into_iter() .filter_map(|event| match event.payload { EventPayload::NamedEvent { name, value, .. } if name == "Notebook Edited" => value, diff --git a/app/src/notebooks/styles.rs b/app/src/notebooks/styles.rs index e7188a58..d7f8506e 100644 --- a/app/src/notebooks/styles.rs +++ b/app/src/notebooks/styles.rs @@ -1,6 +1,6 @@ //! Shared styles for notebooks. -use warpui::{ +use galaxyui::{ elements::{ Container, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MouseStateHandle, ParentElement, diff --git a/app/src/notification.rs b/app/src/notification.rs index 2794f41c..dd306942 100644 --- a/app/src/notification.rs +++ b/app/src/notification.rs @@ -2,7 +2,7 @@ /// notification structs, but with the data parsed to our liking. /// The similar structs at the UI framework layer are lower-level (mostly strings). use serde::{Deserialize, Serialize}; -use warpui::{EntityId, WindowId}; +use galaxyui::{EntityId, WindowId}; use crate::pane_group::PaneId; diff --git a/app/src/pane_group/child_agent.rs b/app/src/pane_group/child_agent.rs index ed633684..06c28220 100644 --- a/app/src/pane_group/child_agent.rs +++ b/app/src/pane_group/child_agent.rs @@ -1,6 +1,6 @@ use std::{collections::HashMap, ffi::OsString}; -use warpui::{EntityId, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::{EntityId, SingletonEntity, ViewContext, ViewHandle}; use crate::ai::agent::conversation::{AIConversationId, ConversationStatus}; use crate::ai::blocklist::agent_view::AgentViewEntryOrigin; diff --git a/app/src/pane_group/focus_state.rs b/app/src/pane_group/focus_state.rs index f889f377..2af508e2 100644 --- a/app/src/pane_group/focus_state.rs +++ b/app/src/pane_group/focus_state.rs @@ -1,6 +1,6 @@ use super::pane::{PaneId, TerminalPaneId}; use super::{PaneState, SplitPaneState}; -use warpui::{AppContext, Entity, ModelContext, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle}; /// Centralized focus state for a pane group. /// This model tracks which pane is focused, which session is active, diff --git a/app/src/pane_group/mod.rs b/app/src/pane_group/mod.rs index cd6477e1..d3fbef85 100644 --- a/app/src/pane_group/mod.rs +++ b/app/src/pane_group/mod.rs @@ -53,7 +53,7 @@ use crate::uri::browser_url_handler::update_browser_url; use crate::util::openable_file_type::FileTarget; use crate::view_components::ToastFlavor; use crate::workflows::workflow::Workflow; -use warp_terminal::shell::{ShellName, ShellType}; +use galaxy_terminal::shell::{ShellName, ShellType}; use std::any::Any; use std::cell::RefCell; @@ -78,26 +78,26 @@ use tree::DEFAULT_FLEX_VALUE; use typed_path::TypedPath; use url::Url; use uuid::Uuid; -use warp_cli::agent::Harness; -use warp_core::command::ExitCode; -use warp_core::context_flag::ContextFlag; -use warp_core::HostId; -use warp_util::path::convert_wsl_to_windows_host_path; +use galaxy_cli::agent::Harness; +use galaxy_core::command::ExitCode; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::HostId; +use galaxy_util::path::convert_wsl_to_windows_host_path; #[cfg(feature = "local_fs")] -use warp_util::path::LineAndColumnArg; -use warpui::elements::{ +use galaxy_util::path::LineAndColumnArg; +use galaxyui::elements::{ Clipped, CrossAxisAlignment, DispatchEventResult, EventHandler, Flex, MainAxisSize, Shrinkable, Stack, }; -use warpui::keymap::{Context, EditableBinding, FixedBinding}; -use warpui::notification::NotificationSendError; +use galaxyui::keymap::{Context, EditableBinding, FixedBinding}; +use galaxyui::notification::NotificationSendError; -use warpui::windowing::WindowManager; -use warpui::{ +use galaxyui::windowing::WindowManager; +use galaxyui::{ elements::{ChildView, Element, ParentElement}, AppContext, Entity, EntityId, ModelHandle, TypedActionView, View, ViewHandle, WindowId, }; -use warpui::{SingletonEntity, ViewContext}; +use galaxyui::{SingletonEntity, ViewContext}; use crate::ai::blocklist::SerializedBlockListItem; use crate::ai_assistant::AskAIType; @@ -297,7 +297,7 @@ enum PaneRemovalReason { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_binding_validator::(is_binding_pty_compliant); self::pane::init(app); diff --git a/app/src/pane_group/mod_tests.rs b/app/src/pane_group/mod_tests.rs index b2d21601..e0f035d4 100644 --- a/app/src/pane_group/mod_tests.rs +++ b/app/src/pane_group/mod_tests.rs @@ -74,8 +74,8 @@ use ai::{ }; use pathfinder_geometry::rect::RectF; use shared_session::permissions_manager::SessionPermissionsManager; -use warpui::windowing::{state::ApplicationStage, WindowManager}; -use warpui::{ +use galaxyui::windowing::{state::ApplicationStage, WindowManager}; +use galaxyui::{ platform::{WindowBounds, WindowStyle}, App, ModelHandle, }; diff --git a/app/src/pane_group/pane/ai_document_pane.rs b/app/src/pane_group/pane/ai_document_pane.rs index c875cebb..6f87ca57 100644 --- a/app/src/pane_group/pane/ai_document_pane.rs +++ b/app/src/pane_group/pane/ai_document_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; use crate::{ ai::ai_document_view::{AIDocumentEvent, AIDocumentView}, diff --git a/app/src/pane_group/pane/ai_fact_pane.rs b/app/src/pane_group/pane/ai_fact_pane.rs index 88675217..ee3b9718 100644 --- a/app/src/pane_group/pane/ai_fact_pane.rs +++ b/app/src/pane_group/pane/ai_fact_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; use crate::{ ai::facts::{AIFactManager, AIFactView, AIFactViewEvent}, diff --git a/app/src/pane_group/pane/code_diff_pane.rs b/app/src/pane_group/pane/code_diff_pane.rs index 8fa013d1..23fbe300 100644 --- a/app/src/pane_group/pane/code_diff_pane.rs +++ b/app/src/pane_group/pane/code_diff_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; use crate::{ ai::blocklist::inline_action::code_diff_view::{CodeDiffView, CodeDiffViewEvent}, diff --git a/app/src/pane_group/pane/code_diff_pane_model.rs b/app/src/pane_group/pane/code_diff_pane_model.rs index 3931d657..74129f70 100644 --- a/app/src/pane_group/pane/code_diff_pane_model.rs +++ b/app/src/pane_group/pane/code_diff_pane_model.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, ViewHandle}; +use galaxyui::{Entity, ModelContext, ViewHandle}; use crate::ai::blocklist::inline_action::code_diff_view::{CodeDiffView, CodeDiffViewEvent}; diff --git a/app/src/pane_group/pane/code_pane.rs b/app/src/pane_group/pane/code_pane.rs index 0cb78da2..682d64fa 100644 --- a/app/src/pane_group/pane/code_pane.rs +++ b/app/src/pane_group/pane/code_pane.rs @@ -1,5 +1,5 @@ -use warp_util::path::LineAndColumnArg; -use warpui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; use crate::{ app_state::{CodePaneSnapShot, CodePaneTabSnapshot, LeafContents}, diff --git a/app/src/pane_group/pane/env_var_collection_pane.rs b/app/src/pane_group/pane/env_var_collection_pane.rs index eb8cfafc..482d88e5 100644 --- a/app/src/pane_group/pane/env_var_collection_pane.rs +++ b/app/src/pane_group/pane/env_var_collection_pane.rs @@ -1,5 +1,5 @@ use anyhow::Context; -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; use crate::{ app_state::{EnvVarCollectionPaneSnapshot, LeafContents}, diff --git a/app/src/pane_group/pane/environment_management_pane.rs b/app/src/pane_group/pane/environment_management_pane.rs index deb61761..8c25cf89 100644 --- a/app/src/pane_group/pane/environment_management_pane.rs +++ b/app/src/pane_group/pane/environment_management_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, ViewContext, ViewHandle}; use crate::{ app_state::{EnvironmentManagementPaneSnapshot, LeafContents}, diff --git a/app/src/pane_group/pane/execution_profile_editor_pane.rs b/app/src/pane_group/pane/execution_profile_editor_pane.rs index 25c2be01..9bb0bad2 100644 --- a/app/src/pane_group/pane/execution_profile_editor_pane.rs +++ b/app/src/pane_group/pane/execution_profile_editor_pane.rs @@ -9,7 +9,7 @@ use crate::{ ai::execution_profiles::profiles::ClientProfileId, app_state::LeafContents, }; -use warpui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; pub struct ExecutionProfileEditorPane { view: ViewHandle>, diff --git a/app/src/pane_group/pane/file_pane.rs b/app/src/pane_group/pane/file_pane.rs index a6387e12..b0a19672 100644 --- a/app/src/pane_group/pane/file_pane.rs +++ b/app/src/pane_group/pane/file_pane.rs @@ -1,6 +1,6 @@ use std::{path::PathBuf, sync::Arc}; -use warpui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; #[cfg(feature = "local_fs")] use crate::code::editor_management::CodeSource; diff --git a/app/src/pane_group/pane/get_started_pane.rs b/app/src/pane_group/pane/get_started_pane.rs index 963c8e7d..dcdf0913 100644 --- a/app/src/pane_group/pane/get_started_pane.rs +++ b/app/src/pane_group/pane/get_started_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, View, ViewContext, ViewHandle}; use crate::{ app_state::LeafContents, diff --git a/app/src/pane_group/pane/get_started_view.rs b/app/src/pane_group/pane/get_started_view.rs index 45d9bd8c..9d54cd80 100644 --- a/app/src/pane_group/pane/get_started_view.rs +++ b/app/src/pane_group/pane/get_started_view.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::{self, appearance::Appearance, color::blend::Blend as _}; -use warpui::{ +use galaxy_core::ui::{self, appearance::Appearance, color::blend::Blend as _}; +use galaxyui::{ elements::{ Align, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement as _, Radius, @@ -34,7 +34,7 @@ use crate::{ }; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([EditableBinding::new( "workspace:new_tab", @@ -229,7 +229,7 @@ impl GetStartedView { .finish(), appearance .ui_builder() - .paragraph("Welcome to Warp") + .paragraph("Welcome to Galaxy AI") .with_style(UiComponentStyles { font_size: Some(20.), ..Default::default() @@ -286,7 +286,7 @@ impl GetStartedView { keybinding_name_to_display_string("workspace:new_tab", app) .unwrap_or_default() ), - ui::Icon::Terminal.to_warpui_icon(theme.foreground()), + ui::Icon::Terminal.to_galaxyui_icon(theme.foreground()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(16., 16.), diff --git a/app/src/pane_group/pane/local_harness_launch.rs b/app/src/pane_group/pane/local_harness_launch.rs index b65844aa..adbaa556 100644 --- a/app/src/pane_group/pane/local_harness_launch.rs +++ b/app/src/pane_group/pane/local_harness_launch.rs @@ -2,8 +2,8 @@ use std::{collections::HashMap, ffi::OsString, path::PathBuf, sync::Arc}; use shell_words::quote as shell_quote; use uuid::Uuid; -use warp_cli::agent::Harness; -use warp_managed_secrets::ManagedSecretValue; +use galaxy_cli::agent::Harness; +use galaxy_managed_secrets::ManagedSecretValue; use crate::ai::{ agent_sdk::{ diff --git a/app/src/pane_group/pane/local_harness_launch_tests.rs b/app/src/pane_group/pane/local_harness_launch_tests.rs index 5b7f12bb..ddf69bb7 100644 --- a/app/src/pane_group/pane/local_harness_launch_tests.rs +++ b/app/src/pane_group/pane/local_harness_launch_tests.rs @@ -1,4 +1,4 @@ -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; use super::{ build_local_claude_child_command, build_local_opencode_child_command, diff --git a/app/src/pane_group/pane/mod.rs b/app/src/pane_group/pane/mod.rs index 191f58ce..62a3e23a 100644 --- a/app/src/pane_group/pane/mod.rs +++ b/app/src/pane_group/pane/mod.rs @@ -55,8 +55,8 @@ use crate::{ }; use serde::{Deserialize, Serialize}; use url::Url; -use warp_core::HostId; -use warpui::{ +use galaxy_core::HostId; +use galaxyui::{ elements::{DispatchEventResult, EventHandler, MouseInBehavior}, presenter::ChildView, Action, AppContext, Element, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity, @@ -381,7 +381,7 @@ impl PaneId { pub(super) fn deferred_placeholder_pane_id() -> Self { Self(IPaneId { pane_type: IPaneType::DeferredPlaceholder, - pane_view_id: warpui::EntityId::new(), + pane_view_id: galaxyui::EntityId::new(), }) } @@ -390,7 +390,7 @@ impl PaneId { pub fn dummy_pane_id() -> Self { Self(IPaneId { pane_type: IPaneType::Dummy, - pane_view_id: warpui::EntityId::new(), + pane_view_id: galaxyui::EntityId::new(), }) } @@ -495,9 +495,9 @@ impl PaneId { IPaneType::Welcome => { ChildView::>::with_id(self.0.pane_view_id).finish() } - IPaneType::DeferredPlaceholder => warpui::elements::Empty::new().finish(), + IPaneType::DeferredPlaceholder => galaxyui::elements::Empty::new().finish(), #[cfg(test)] - IPaneType::Dummy => warpui::elements::Empty::new().finish(), + IPaneType::Dummy => galaxyui::elements::Empty::new().finish(), }; if *PaneSettings::as_ref(app).focus_panes_on_hover { element = EventHandler::new(element) diff --git a/app/src/pane_group/pane/network_log_pane.rs b/app/src/pane_group/pane/network_log_pane.rs index db2caa79..3b97e545 100644 --- a/app/src/pane_group/pane/network_log_pane.rs +++ b/app/src/pane_group/pane/network_log_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; use crate::app_state::LeafContents; use crate::server::network_log_pane_manager::NetworkLogPaneManager; diff --git a/app/src/pane_group/pane/notebook_pane.rs b/app/src/pane_group/pane/notebook_pane.rs index e006090e..d673e67f 100644 --- a/app/src/pane_group/pane/notebook_pane.rs +++ b/app/src/pane_group/pane/notebook_pane.rs @@ -2,7 +2,7 @@ use anyhow::Context; use std::sync::Arc; use url::Url; -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; use crate::{ app_state::{LeafContents, NotebookPaneSnapshot}, diff --git a/app/src/pane_group/pane/settings_pane.rs b/app/src/pane_group/pane/settings_pane.rs index ebc27364..d570ae3b 100644 --- a/app/src/pane_group/pane/settings_pane.rs +++ b/app/src/pane_group/pane/settings_pane.rs @@ -1,4 +1,4 @@ -use warpui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle, WindowId}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle, WindowId}; use crate::{ app_state::{LeafContents, SettingsPaneSnapshot}, diff --git a/app/src/pane_group/pane/terminal_pane.rs b/app/src/pane_group/pane/terminal_pane.rs index cba52d7f..59bd8e61 100644 --- a/app/src/pane_group/pane/terminal_pane.rs +++ b/app/src/pane_group/pane/terminal_pane.rs @@ -5,10 +5,10 @@ use std::{collections::HashMap, sync::mpsc::SyncSender}; use base64::{engine::general_purpose::STANDARD as BASE64_STANDARD, Engine as _}; use url::Url; -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; use warp_multi_agent_api as multi_agent_api; -use warpui::{ +use galaxyui::{ AppContext, EntityId, ModelHandle, SingletonEntity, ViewContext, ViewHandle, WindowId, }; @@ -58,7 +58,7 @@ use crate::ai::blocklist::BlocklistAIHistoryEvent; #[cfg(not(target_family = "wasm"))] use crate::server::server_api::ServerApiProvider; -use warp_core::execution_mode::AppExecutionMode; +use galaxy_core::execution_mode::AppExecutionMode; #[cfg(not(target_family = "wasm"))] use super::local_harness_launch::{prepare_local_harness_child_launch, PreparedLocalHarnessLaunch}; diff --git a/app/src/pane_group/pane/view/header/components.rs b/app/src/pane_group/pane/view/header/components.rs index ea97ee7a..f2a103a0 100644 --- a/app/src/pane_group/pane/view/header/components.rs +++ b/app/src/pane_group/pane/view/header/components.rs @@ -5,16 +5,16 @@ use crate::ui_components::icons::Icon; use super::super::header_content::HeaderRenderContext; use super::{ActionPayload, PaneHeaderAction}; -use warp_core::ui::icons::ICON_DIMENSIONS; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::icons::ICON_DIMENSIONS; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Align, Clipped, ConstrainedBox, Container, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, SavePosition, Shrinkable, Text, }; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::components::UiComponent; -use warpui::Element; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::Element; /// Horizontal padding applied inside each edge column of the three-column header. pub const HEADER_EDGE_PADDING: f32 = 4.; diff --git a/app/src/pane_group/pane/view/header/mod.rs b/app/src/pane_group/pane/view/header/mod.rs index 216a990f..668aabaf 100644 --- a/app/src/pane_group/pane/view/header/mod.rs +++ b/app/src/pane_group/pane/view/header/mod.rs @@ -29,8 +29,8 @@ use pathfinder_geometry::{ rect::RectF, vector::{vec2f, Vector2F}, }; -use warp_core::{features::FeatureFlag, settings::Setting}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, settings::Setting}; +use galaxyui::{ elements::{ AcceptedByDropTarget, Align, Border, ChildAnchor, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Draggable, DraggableState, Empty, Flex, @@ -766,7 +766,7 @@ impl View for PaneHeader

{ let element = match header_content { HeaderContent::Standard(mut header) => { // On mobile devices, always show icons since hover effects don't work with touch - if warpui::platform::is_mobile_device() { + if galaxyui::platform::is_mobile_device() { header.options.always_show_icons = true; } self.render_standard_header(header, app) diff --git a/app/src/pane_group/pane/view/header/mod_test.rs b/app/src/pane_group/pane/view/header/mod_test.rs index ea3ce400..fc082185 100644 --- a/app/src/pane_group/pane/view/header/mod_test.rs +++ b/app/src/pane_group/pane/view/header/mod_test.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::Empty, platform::WindowStyle, App, AppContext, Element, Entity, TypedActionView, View, ViewContext, }; diff --git a/app/src/pane_group/pane/view/header/sharing.rs b/app/src/pane_group/pane/view/header/sharing.rs index 71c64aa7..4338b35a 100644 --- a/app/src/pane_group/pane/view/header/sharing.rs +++ b/app/src/pane_group/pane/view/header/sharing.rs @@ -3,16 +3,16 @@ //! This is tightly coupled to the pane header so that different overlays (context menus, the //! sharing dialog, and so on) are correctly displayed. -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxyui::{ elements::{MouseStateHandle, ParentElement}, platform::Cursor, ui_components::components::UiComponent, AppContext, Element, ViewContext, ViewHandle, }; -use warp_core::ui::theme::Fill; -use warpui::elements::ConstrainedBox; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::ConstrainedBox; use crate::{ drive::sharing::{ @@ -74,17 +74,17 @@ impl PaneHeader

{ &self.shared_content.sharing_dialog } - pub fn has_shareable_object(&self, ctx: &C) -> bool { + pub fn has_shareable_object(&self, ctx: &C) -> bool { self.sharing_dialog().as_ref(ctx).has_target() } - pub fn has_shareable_shared_session(&self, ctx: &C) -> bool { + pub fn has_shareable_shared_session(&self, ctx: &C) -> bool { self.sharing_dialog() .as_ref(ctx) .has_shared_session_target() } - pub fn is_sharing_dialog_enabled(&self, ctx: &C) -> bool { + pub fn is_sharing_dialog_enabled(&self, ctx: &C) -> bool { let sharing_enabled = self.has_shareable_object(ctx); if self.has_shareable_shared_session(ctx) { sharing_enabled && FeatureFlag::SessionSharingAcls.is_enabled() diff --git a/app/src/pane_group/pane/view/header_content.rs b/app/src/pane_group/pane/view/header_content.rs index ee2c692a..232f5cf2 100644 --- a/app/src/pane_group/pane/view/header_content.rs +++ b/app/src/pane_group/pane/view/header_content.rs @@ -3,8 +3,8 @@ //! This module provides the infrastructure for backing views to declaratively //! specify their header content without worrying about draggable behavior. -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{DraggableState, MouseStateHandle}, fonts::Properties, text_layout::ClipConfig, diff --git a/app/src/pane_group/pane/view/mod.rs b/app/src/pane_group/pane/view/mod.rs index 70c8486d..687bed7d 100644 --- a/app/src/pane_group/pane/view/mod.rs +++ b/app/src/pane_group/pane/view/mod.rs @@ -15,7 +15,7 @@ use super::{ }; use header::PaneHeader; -use warpui::{ +use galaxyui::{ elements::{ Border, Container, DropTarget, DropTargetData, Flex, MainAxisSize, ParentElement, SavePosition, Shrinkable, @@ -37,7 +37,7 @@ pub use header_content::{ const HAS_SHARED_OBJECT_CONTEXT_KEY: &str = "PaneView_HasSharedObject"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([EditableBinding::new( "pane:share_pane_contents", @@ -425,7 +425,7 @@ impl View for PaneView

{ .finish() } - fn keymap_context(&self, ctx: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, ctx: &AppContext) -> galaxyui::keymap::Context { let mut keymap_context = Self::default_keymap_context(); if self.header.as_ref(ctx).is_sharing_dialog_enabled(ctx) { keymap_context.set.insert(HAS_SHARED_OBJECT_CONTEXT_KEY); diff --git a/app/src/pane_group/pane/welcome_pane.rs b/app/src/pane_group/pane/welcome_pane.rs index 76da6d1e..955f6056 100644 --- a/app/src/pane_group/pane/welcome_pane.rs +++ b/app/src/pane_group/pane/welcome_pane.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use warpui::{AppContext, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, View, ViewContext, ViewHandle}; use crate::{ app_state::LeafContents, @@ -58,7 +58,7 @@ impl PaneContent for WelcomePane { &self, _group: &PaneGroup, _detach_type: super::DetachType, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { let child = self.view.as_ref(ctx).child(ctx); ctx.unsubscribe_to_view(&child); @@ -76,11 +76,11 @@ impl PaneContent for WelcomePane { } } - fn has_application_focus(&self, ctx: &mut warpui::ViewContext) -> bool { + fn has_application_focus(&self, ctx: &mut galaxyui::ViewContext) -> bool { self.view.is_self_or_child_focused(ctx) } - fn focus(&self, ctx: &mut warpui::ViewContext) { + fn focus(&self, ctx: &mut galaxyui::ViewContext) { self.view .as_ref(ctx) .child(ctx) diff --git a/app/src/pane_group/pane/welcome_view.rs b/app/src/pane_group/pane/welcome_view.rs index 42644fe3..fbaaa188 100644 --- a/app/src/pane_group/pane/welcome_view.rs +++ b/app/src/pane_group/pane/welcome_view.rs @@ -3,15 +3,15 @@ use std::path::PathBuf; use std::sync::Arc; use itertools::Itertools as _; -use warp_core::context_flag::ContextFlag; -use warp_core::ui::appearance::Appearance; -use warpui::elements::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{ Align, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, Icon, ParentElement, }; -use warpui::keymap::EditableBinding; -use warpui::platform::FilePickerConfiguration; -use warpui::ViewHandle; -use warpui::{ +use galaxyui::keymap::EditableBinding; +use galaxyui::platform::FilePickerConfiguration; +use galaxyui::ViewHandle; +use galaxyui::{ AppContext, Element, Entity, ModelHandle, SingletonEntity as _, TypedActionView, View, ViewContext, WindowId, }; @@ -30,7 +30,7 @@ use crate::view_components::DismissibleToast; use crate::workspace::{ToastStack, Workspace}; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([ EditableBinding::new( diff --git a/app/src/pane_group/pane/workflow_pane.rs b/app/src/pane_group/pane/workflow_pane.rs index 21d61122..7f10268d 100644 --- a/app/src/pane_group/pane/workflow_pane.rs +++ b/app/src/pane_group/pane/workflow_pane.rs @@ -16,7 +16,7 @@ use crate::{ use anyhow::Context; use std::{collections::HashMap, sync::Arc}; use url::Url; -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewContext, ViewHandle}; pub struct WorkflowPane { view: ViewHandle>, diff --git a/app/src/pane_group/tree.rs b/app/src/pane_group/tree.rs index 247677cc..ad35ee70 100644 --- a/app/src/pane_group/tree.rs +++ b/app/src/pane_group/tree.rs @@ -3,13 +3,13 @@ use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::Vector2F; use std::collections::HashSet; use std::{fmt, iter, mem}; -use warpui::elements::{ +use galaxyui::elements::{ ChildAnchor, Container, DispatchEventResult, Empty, OffsetPositioning, ParentAnchor, ParentOffsetBounds, PositionedElementAnchor, PositionedElementOffsetBounds, SavePosition, Stack, }; -use warpui::AppContext; -use warpui::{ +use galaxyui::AppContext; +use galaxyui::{ elements::{ ConstrainedBox, Element, EventHandler, Flex, Hoverable, MouseStateHandle, ParentElement, Rect, Shrinkable, @@ -21,7 +21,7 @@ use warpui::{ use super::{ActivationReason, PaneGroup, PaneId}; use crate::pane_group::{get_minimum_pane_size, DraggedBorder, PaneGroupAction}; use crate::themes::theme::WarpTheme; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; #[cfg(test)] #[path = "tree_tests.rs"] diff --git a/app/src/pane_group/working_directories.rs b/app/src/pane_group/working_directories.rs index 395494bd..fd4e8ff2 100644 --- a/app/src/pane_group/working_directories.rs +++ b/app/src/pane_group/working_directories.rs @@ -7,9 +7,9 @@ use std::collections::HashMap; use std::collections::HashSet; use std::path::{Path, PathBuf}; #[cfg(feature = "local_fs")] -use warpui::{AppContext, SingletonEntity as _}; -use warpui::{Entity, EntityId, ModelContext}; -use warpui::{ModelHandle, ViewHandle}; +use galaxyui::{AppContext, SingletonEntity as _}; +use galaxyui::{Entity, EntityId, ModelContext}; +use galaxyui::{ModelHandle, ViewHandle}; #[cfg(feature = "local_fs")] use crate::code::file_tree::FileTreeView; diff --git a/app/src/pane_group/working_directories_tests.rs b/app/src/pane_group/working_directories_tests.rs index 2cabe6c1..0e46de3c 100644 --- a/app/src/pane_group/working_directories_tests.rs +++ b/app/src/pane_group/working_directories_tests.rs @@ -5,7 +5,7 @@ use std::fs; use std::path::PathBuf; use repo_metadata::repositories::DetectedRepositories; -use warpui::{App, EntityId}; +use galaxyui::{App, EntityId}; use crate::pane_group::WorkingDirectoriesModel; @@ -21,14 +21,14 @@ fn refresh_working_directories_collapses_subroots_to_nearest_repo_root() { fs::create_dir_all(&repo_a).expect("create repo/a"); fs::create_dir_all(&repo_b).expect("create repo/b"); - // Use dunce::canonicalize to match the behavior of warp_util::standardized_path::StandardizedPath and normalize_cwd, + // Use dunce::canonicalize to match the behavior of galaxy_util::standardized_path::StandardizedPath and normalize_cwd, // which strip the Windows extended-length path prefix (\\?\) for consistent comparison. let canonical_repo_root = dunce::canonicalize(&repo_root).expect("canonical repo root"); // Seed DetectedRepositories so get_root_for_path resolves to this repo. detected_repos_handle.update(&mut app, |repos, _ctx| { let canonical = - warp_util::standardized_path::StandardizedPath::from_local_canonicalized( + galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized( canonical_repo_root.as_path(), ) .expect("canonicalized path"); diff --git a/app/src/persistence/cloud_objects.rs b/app/src/persistence/cloud_objects.rs index 87c600c3..a68bf6d0 100644 --- a/app/src/persistence/cloud_objects.rs +++ b/app/src/persistence/cloud_objects.rs @@ -1,9 +1,9 @@ //! Supporting types for persisting cloud objects to SQLite. -pub use warp_server_client::persistence::{decode_guests, decode_link_sharing}; +pub use galaxy_server_client::persistence::{decode_guests, decode_link_sharing}; #[cfg(test)] -pub use warp_server_client::persistence::encode_guests; +pub use galaxy_server_client::persistence::encode_guests; #[cfg(test)] #[path = "cloud_object_tests.rs"] diff --git a/app/src/persistence/mod.rs b/app/src/persistence/mod.rs index 6b474de9..227d6429 100644 --- a/app/src/persistence/mod.rs +++ b/app/src/persistence/mod.rs @@ -29,10 +29,10 @@ use ai::project_context::model::ProjectRulePath; use chrono::{DateTime, Local, Utc}; use lsp::supported_servers::LSPServerType; use uuid::Uuid; -use warp_core::command::ExitCode; -use warp_graphql::scalars::time::ServerTimestamp; +use galaxy_core::command::ExitCode; +use galaxy_graphql::scalars::time::ServerTimestamp; use warp_multi_agent_api as api; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::ai::blocklist::PersistedAIInput; use crate::ai::mcp::TemplatableMCPServerInstallation; diff --git a/app/src/persistence/sqlite.rs b/app/src/persistence/sqlite.rs index 94496b14..195e354c 100644 --- a/app/src/persistence/sqlite.rs +++ b/app/src/persistence/sqlite.rs @@ -30,9 +30,9 @@ use num_traits::FromPrimitive; use pathfinder_geometry::{rect::RectF, vector::Vector2F}; use persistence::model::AMBIENT_AGENT_PANE_KIND; use uuid::Uuid; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::platform::FullscreenState; -use warpui::{AppContext, SingletonEntity}; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::platform::FullscreenState; +use galaxyui::{AppContext, SingletonEntity}; use super::agent::{delete_agent_conversations, upsert_agent_conversation}; use super::block_list::{ @@ -139,7 +139,7 @@ diesel::define_sql_function! { const CHANNEL_SIZE: usize = 1024; const COMMANDS_COUNT_LIMIT: i64 = 10000; -use warp_server_client::persistence::{upsert_cloud_object, CloudObjectId}; +use galaxy_server_client::persistence::{upsert_cloud_object, CloudObjectId}; const WARP_SQLITE_FILE_NAME: &str = "warp.sqlite"; @@ -349,7 +349,7 @@ pub(super) fn init_db() -> Result { } // Migrate old SQLite files into the secure application container. - let old_db_path = warp_core::paths::state_dir().join(WARP_SQLITE_FILE_NAME); + let old_db_path = galaxy_core::paths::state_dir().join(WARP_SQLITE_FILE_NAME); if old_db_path != db_path && old_db_path.exists() && !db_path.exists() { match std::fs::rename(&old_db_path, &db_path) { Ok(_) => { @@ -414,8 +414,8 @@ fn setup_database(database_path: &Path) -> Result { /// Integration tests that initialize the database with known data should use /// this function to determine where to create the database file. pub fn database_file_path() -> PathBuf { - warp_core::paths::secure_state_dir() - .unwrap_or_else(warp_core::paths::state_dir) + galaxy_core::paths::secure_state_dir() + .unwrap_or_else(galaxy_core::paths::state_dir) .join(WARP_SQLITE_FILE_NAME) } diff --git a/app/src/persistence/sqlite_tests.rs b/app/src/persistence/sqlite_tests.rs index 93dfcb76..f823f3db 100644 --- a/app/src/persistence/sqlite_tests.rs +++ b/app/src/persistence/sqlite_tests.rs @@ -1,7 +1,7 @@ use std::{path::PathBuf, sync::Arc}; -use warp_core::features::FeatureFlag; -use warp_graphql::scalars::time::ServerTimestamp; +use galaxy_core::features::FeatureFlag; +use galaxy_graphql::scalars::time::ServerTimestamp; use crate::{ app_state::{ diff --git a/app/src/platform/wasm.rs b/app/src/platform/wasm.rs index 5e695517..f0e0bdd7 100644 --- a/app/src/platform/wasm.rs +++ b/app/src/platform/wasm.rs @@ -2,7 +2,7 @@ use js_sys::ReferenceError; use thiserror::Error; use wasm_bindgen::{JsCast, JsValue}; -pub use warp_web_event_bus::{emit_event, WarpEvent}; +pub use galaxy_web_event_bus::{emit_event, WarpEvent}; /// This function should be called early in application initialization to ensure that /// static variables are initialized. diff --git a/app/src/plugin/app/mod.rs b/app/src/plugin/app/mod.rs index 1114548a..fb4e1109 100644 --- a/app/src/plugin/app/mod.rs +++ b/app/src/plugin/app/mod.rs @@ -4,7 +4,7 @@ use command::blocking::Command; use std::sync::Arc; use anyhow::{Context, Result}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use super::{PLUGIN_HOST_ADDRESS_ENV_VAR, PLUGIN_HOST_FLAG}; use service_impl::{LogServiceImpl, PluginHostBootstrapServiceImpl}; @@ -71,7 +71,7 @@ impl PluginHost { #[cfg(feature = "completions_v2")] let server_builder = server_builder.with_service(service_impl::RegisterCommandSignatureServiceImpl::new( - warp_completer::signatures::CommandRegistry::global_instance(), + galaxy_completer::signatures::CommandRegistry::global_instance(), )); let (server, plugin_host_process) = diff --git a/app/src/plugin/app/service_impl/completions.rs b/app/src/plugin/app/service_impl/completions.rs index a91a7c11..f8bde832 100644 --- a/app/src/plugin/app/service_impl/completions.rs +++ b/app/src/plugin/app/service_impl/completions.rs @@ -3,7 +3,7 @@ use std::{fmt, sync::Arc}; use async_trait::async_trait; -use warp_completer::signatures::CommandRegistry; +use galaxy_completer::signatures::CommandRegistry; use crate::plugin::service::{ RegisterCommandSignatureRequest, RegisterCommandSignatureResponse, diff --git a/app/src/plugin/host/native/js_api/mod.rs b/app/src/plugin/host/native/js_api/mod.rs index fc602680..dbaff1df 100644 --- a/app/src/plugin/host/native/js_api/mod.rs +++ b/app/src/plugin/host/native/js_api/mod.rs @@ -5,8 +5,8 @@ use super::plugin::PluginHandle; cfg_if::cfg_if! { if #[cfg(feature = "completions_v2")] { use rquickjs::{prelude::MutFn, Value}; - use warp_completer::signatures::CommandSignature; - use warp_js::FromWarpJs; + use galaxy_completer::signatures::CommandSignature; + use galaxy_js::FromWarpJs; } } @@ -59,7 +59,7 @@ fn completions<'js>(plugin: PluginHandle, ctx: Ctx<'js>) -> rquickjs::Result| { if val.is_array() { let mut plugin = plugin.get_mut(); - match Vec::::from_warp_js( + match Vec::::from_galaxy_js( ctx, val, plugin.js_function_registry_mut(), @@ -71,7 +71,7 @@ fn completions<'js>(plugin: PluginHandle, ctx: Ctx<'js>) -> rquickjs::Result Result<()> { - warpui::r#async::block_on(async move { + galaxyui::r#async::block_on(async move { let executor = Arc::new(Background::default()); // Initialize a client connection to the warp app process. diff --git a/app/src/plugin/host/native/plugin.rs b/app/src/plugin/host/native/plugin.rs index 1a3023a6..cbdc2901 100644 --- a/app/src/plugin/host/native/plugin.rs +++ b/app/src/plugin/host/native/plugin.rs @@ -6,11 +6,11 @@ use std::{ use anyhow::anyhow; use rquickjs::Context; -use warp_js::{JsFunctionId, JsFunctionRegistry, SerializedJsValue}; +use galaxy_js::{JsFunctionId, JsFunctionRegistry, SerializedJsValue}; cfg_if::cfg_if! { if #[cfg(feature = "completions_v2")] { - use warp_completer::signatures::CommandSignature; + use galaxy_completer::signatures::CommandSignature; use crate::plugin::service::{ RegisterCommandSignatureRequest, RegisterCommandSignatureService, @@ -96,7 +96,7 @@ impl Plugin { /// Registers the given command signatures. #[cfg(feature = "completions_v2")] pub(super) fn register_command_signatures(&mut self, signatures: Vec) { - if let Err(e) = warpui::r#async::block_on( + if let Err(e) = galaxyui::r#async::block_on( self.app_services .register_command_signatures_caller .call(RegisterCommandSignatureRequest { signatures }), diff --git a/app/src/plugin/host/native/runner.rs b/app/src/plugin/host/native/runner.rs index f5b9aea5..ce4c3ac9 100644 --- a/app/src/plugin/host/native/runner.rs +++ b/app/src/plugin/host/native/runner.rs @@ -1,7 +1,7 @@ use anyhow::{Context as AnyhowContext, Result}; use async_channel::Receiver; use rquickjs::{Context, Function, Runtime}; -use warp_js::JsFunctionId; +use galaxy_js::JsFunctionId; use super::{ js_api, diff --git a/app/src/plugin/host/native/runners.rs b/app/src/plugin/host/native/runners.rs index 0cbb16e5..aba935bd 100644 --- a/app/src/plugin/host/native/runners.rs +++ b/app/src/plugin/host/native/runners.rs @@ -6,8 +6,8 @@ use std::{ use async_channel::Receiver; use futures::channel::oneshot; use parking_lot::Mutex; -use warp_js::JsFunctionId; -use warpui::r#async::executor::Background; +use galaxy_js::JsFunctionId; +use galaxyui::r#async::executor::Background; use super::{ plugin::{AppServiceCallers, PluginRequest, PluginResponse}, diff --git a/app/src/plugin/service/call_js_function.rs b/app/src/plugin/service/call_js_function.rs index 859a67bd..ee41eb61 100644 --- a/app/src/plugin/service/call_js_function.rs +++ b/app/src/plugin/service/call_js_function.rs @@ -16,7 +16,7 @@ //! To serialize input/deserialize output, callers are expected to use `bincode`. use async_trait::async_trait; use serde::{Deserialize, Serialize}; -use warp_js::{JsFunctionId, SerializedJsValue}; +use galaxy_js::{JsFunctionId, SerializedJsValue}; #[derive(Clone, Serialize, Deserialize, Debug)] pub struct CallJsFunctionRequest { diff --git a/app/src/plugin/service/completions.rs b/app/src/plugin/service/completions.rs index 1452ba0b..d65bef58 100644 --- a/app/src/plugin/service/completions.rs +++ b/app/src/plugin/service/completions.rs @@ -4,7 +4,7 @@ //! This IPC is hosted by the rust app process and called by the plugin process when plugins //! register command signatures. use serde::{Deserialize, Serialize}; -use warp_completer::signatures::CommandSignature; +use galaxy_completer::signatures::CommandSignature; #[derive(Clone, Serialize, Deserialize, Debug)] pub struct RegisterCommandSignatureRequest { diff --git a/app/src/preview_config_migration.rs b/app/src/preview_config_migration.rs index 547b315c..cbbc60cf 100644 --- a/app/src/preview_config_migration.rs +++ b/app/src/preview_config_migration.rs @@ -11,8 +11,8 @@ use std::path::Path; -use warp_core::channel::{Channel, ChannelState}; -use warp_core::paths::{data_dir, WARP_CONFIG_DIR}; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxy_core::paths::{data_dir, WARP_CONFIG_DIR}; /// Files that should not be symlinked during the Preview config directory /// migration. These are intentionally kept separate between Stable and diff --git a/app/src/pricing/mod.rs b/app/src/pricing/mod.rs index 0b36b157..01d8ed4f 100644 --- a/app/src/pricing/mod.rs +++ b/app/src/pricing/mod.rs @@ -1,7 +1,7 @@ -use warp_graphql::billing::{ +use galaxy_graphql::billing::{ AddonCreditsOption, OveragesPricing, PlanPricing, PricingInfo, StripeSubscriptionPlan, }; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// A global model for maintaining pricing information from the server. #[derive(Debug)] diff --git a/app/src/profiling.rs b/app/src/profiling.rs index 905be415..14d97f0b 100644 --- a/app/src/profiling.rs +++ b/app/src/profiling.rs @@ -7,7 +7,7 @@ //! automatic heap profile generation every 500MB of memory allocated. //! //! If run from a release bundle, profiles will be written to -//! [`warp_core::paths::state_dir()`]. Otherwise, profiles will be written +//! [`galaxy_core::paths::state_dir()`]. Otherwise, profiles will be written //! to the current working directory. use cfg_if::cfg_if; @@ -147,7 +147,7 @@ fn pprof_binary_path() -> anyhow::Result { if #[cfg(target_os = "macos")] { use anyhow::Context as _; - let app_bundle_dir = std::path::PathBuf::from(warp_core::macos::get_bundle_path().context("Failed to get app bundle path")?); + let app_bundle_dir = std::path::PathBuf::from(galaxy_core::macos::get_bundle_path().context("Failed to get app bundle path")?); Ok(app_bundle_dir.join("Contents/Helpers/pprof")) } else { @@ -195,7 +195,7 @@ fn write_pprof_report(report: pprof::Report) -> anyhow::Result<()> { fn profile_output_dir() -> std::path::PathBuf { cfg_if::cfg_if! { if #[cfg(feature = "release_bundle")] { - warp_core::paths::secure_state_dir().unwrap_or(warp_core::paths::state_dir()) + galaxy_core::paths::secure_state_dir().unwrap_or(galaxy_core::paths::state_dir()) } else { std::env::current_dir().ok().unwrap_or_else(|| { dirs::home_dir().expect("Should not fail to compute both the current directory and the user's home directory") diff --git a/app/src/projects.rs b/app/src/projects.rs index c9ea9e51..67722a7a 100644 --- a/app/src/projects.rs +++ b/app/src/projects.rs @@ -2,7 +2,7 @@ use std::sync::mpsc::SyncSender; use std::{collections::HashMap, path::PathBuf}; use chrono::Utc; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::persistence::{model::Project, ModelEvent}; diff --git a/app/src/prompt/editor_modal.rs b/app/src/prompt/editor_modal.rs index e38db25d..8b6c895b 100644 --- a/app/src/prompt/editor_modal.rs +++ b/app/src/prompt/editor_modal.rs @@ -1,14 +1,14 @@ use itertools::Itertools; -use warp_core::ui::theme::Fill; +use galaxy_core::ui::theme::Fill; use pathfinder_geometry::vector::vec2f; use serde::Serialize; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -31,7 +31,7 @@ use crate::terminal::session_settings::SessionSettings; use crate::view_components::{Dropdown, DropdownItem}; use crate::Appearance; use crate::{report_if_error, send_telemetry_from_ctx}; -use warpui::elements::{ +use galaxyui::elements::{ Align, Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, @@ -62,7 +62,7 @@ const SHELL_PROMPT_SECTION_HEADER: &str = "Shell prompt (PS1)"; const RESTORE_DEFAULT_BUTTON: &str = "Restore default"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -487,7 +487,7 @@ impl EditorModal { .span(MODAL_TITLE.to_string()) .with_style(UiComponentStyles { font_size: Some(MODAL_TITLE_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Bold), + font_weight: Some(galaxyui::fonts::Weight::Bold), ..Default::default() }) .build() @@ -678,7 +678,7 @@ impl EditorModal { .span(WARP_PROMPT_SECTION_HEADER.to_string()) .with_style(UiComponentStyles { font_size: Some(MODAL_CONTENT_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Semibold), + font_weight: Some(galaxyui::fonts::Weight::Semibold), ..Default::default() }) .build() @@ -727,7 +727,7 @@ impl EditorModal { .span(SHELL_PROMPT_SECTION_HEADER.to_string()) .with_style(UiComponentStyles { font_size: Some(MODAL_CONTENT_FONT_SIZE), - font_weight: Some(warpui::fonts::Weight::Semibold), + font_weight: Some(galaxyui::fonts::Weight::Semibold), ..Default::default() }) .build() diff --git a/app/src/quit_warning/mod.rs b/app/src/quit_warning/mod.rs index 30ffec69..a29b79bc 100644 --- a/app/src/quit_warning/mod.rs +++ b/app/src/quit_warning/mod.rs @@ -1,7 +1,7 @@ use itertools::Itertools; use settings::ToggleableSetting as _; use std::fmt::Write; -use warpui::{ +use galaxyui::{ modals::{AlertDialogWithCallbacks, AppModalCallback, ModalButton}, AppContext, EntityId, SingletonEntity, ViewContext, WeakViewHandle, WindowId, }; diff --git a/app/src/referral_theme_status.rs b/app/src/referral_theme_status.rs index 7b3d63cc..c7c863b3 100644 --- a/app/src/referral_theme_status.rs +++ b/app/src/referral_theme_status.rs @@ -6,8 +6,8 @@ use crate::{ server::server_api::referral::{ReferralInfo, ReferralsClient}, }; use serde::{Deserialize, Serialize}; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::{Entity, ModelContext, SingletonEntity}; // Note: The name of this key is from before this model was created. For consistency, it should // remain the same value diff --git a/app/src/remote_server/auth_context.rs b/app/src/remote_server/auth_context.rs index ac9ab93d..9d1dcb30 100644 --- a/app/src/remote_server/auth_context.rs +++ b/app/src/remote_server/auth_context.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use remote_server::auth::RemoteServerAuthContext; -use warpui::r#async::BoxFuture; +use galaxyui::r#async::BoxFuture; use crate::auth::auth_state::AuthState; use crate::server::server_api::auth::AuthClient; diff --git a/app/src/remote_server/mod.rs b/app/src/remote_server/mod.rs index 4677fa4b..e1cf14ee 100644 --- a/app/src/remote_server/mod.rs +++ b/app/src/remote_server/mod.rs @@ -3,7 +3,7 @@ use crate::server::server_api::{ServerApiEvent, ServerApiProvider}; #[cfg(not(target_family = "wasm"))] use remote_server::manager::RemoteServerManager; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; // Re-export everything from the `remote_server` crate so existing // `crate::remote_server::*` imports in `app` continue to work. pub use remote_server::*; @@ -54,16 +54,16 @@ pub fn run_daemon(_identity_key: String) -> anyhow::Result<()> { /// ``` #[cfg(not(target_family = "wasm"))] pub(super) fn run_daemon_app( - server_model_init: impl FnOnce(&mut warpui::ModelContext) -> server_model::ServerModel + server_model_init: impl FnOnce(&mut galaxyui::ModelContext) -> server_model::ServerModel + 'static, ) -> anyhow::Result<()> { - use warpui::platform::app::AppCallbacks; - use warpui::platform::AppBuilder; + use galaxyui::platform::app::AppCallbacks; + use galaxyui::platform::AppBuilder; AppBuilder::new_headless(AppCallbacks::default(), Box::new(()), None).run(|ctx| { // Rotate log files from the previous daemon invocation in the background. ctx.background_executor() - .spawn(warp_logging::rotate_log_files()) + .spawn(galaxy_logging::rotate_log_files()) .detach(); use crate::server::telemetry::context_provider::NoopTelemetryContextProvider; @@ -82,7 +82,7 @@ pub(super) fn run_daemon_app( ctx.add_singleton_model(DirectoryWatcher::new); ctx.add_singleton_model(|_ctx| DetectedRepositories::default()); ctx.add_singleton_model(RepoMetadataModel::new_with_incremental_updates); - ctx.add_singleton_model(warp_files::FileModel::new); + ctx.add_singleton_model(galaxy_files::FileModel::new); ctx.add_singleton_model(server_model_init); })?; Ok(()) @@ -90,7 +90,7 @@ pub(super) fn run_daemon_app( /// Forwards app auth-token rotation events to the remote-server manager. #[cfg(not(target_family = "wasm"))] -pub fn wire_auth_token_rotation(ctx: &mut warpui::AppContext) { +pub fn wire_auth_token_rotation(ctx: &mut galaxyui::AppContext) { let server_api = ServerApiProvider::handle(ctx); let manager = RemoteServerManager::handle(ctx); ctx.subscribe_to_model(&server_api, move |_, event, ctx| { diff --git a/app/src/remote_server/server_model.rs b/app/src/remote_server/server_model.rs index f4319059..29bdfda2 100644 --- a/app/src/remote_server/server_model.rs +++ b/app/src/remote_server/server_model.rs @@ -5,16 +5,16 @@ use std::collections::{HashMap, HashSet}; use std::future::Future; use std::path::{Path, PathBuf}; use std::sync::Arc; -use warp_core::channel::ChannelState; -use warp_core::SessionId; -use warp_util::standardized_path::StandardizedPath; -use warpui::platform::TerminationMode; -use warpui::r#async::{Spawnable, SpawnableOutput, SpawnedFutureHandle}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxy_core::SessionId; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::platform::TerminationMode; +use galaxyui::r#async::{Spawnable, SpawnableOutput, SpawnedFutureHandle}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; -use warp_files::{FileModel, FileModelEvent}; -use warp_util::content_version::ContentVersion; -use warp_util::file::FileId; +use galaxy_files::{FileModel, FileModelEvent}; +use galaxy_util::content_version::ContentVersion; +use galaxy_util::file::FileId; use super::proto::{ client_message, delete_file_response, run_command_response, server_message, diff --git a/app/src/remote_server/ssh_transport.rs b/app/src/remote_server/ssh_transport.rs index a98c6fe4..0aa1dc98 100644 --- a/app/src/remote_server/ssh_transport.rs +++ b/app/src/remote_server/ssh_transport.rs @@ -11,7 +11,7 @@ use std::process::Stdio; use std::sync::Arc; use anyhow::Result; -use warpui::r#async::executor; +use galaxyui::r#async::executor; use remote_server::auth::RemoteServerAuthContext; use remote_server::client::RemoteServerClient; @@ -188,7 +188,7 @@ impl RemoteTransport for SshTransport { #[cfg(test)] mod tests { use super::*; - use warpui::r#async::BoxFuture; + use galaxyui::r#async::BoxFuture; fn static_auth_context() -> Arc { Arc::new(RemoteServerAuthContext::new( || -> BoxFuture<'static, Option> { Box::pin(async { None }) }, diff --git a/app/src/remote_server/unix/mod.rs b/app/src/remote_server/unix/mod.rs index 3c7f352c..dda42c58 100644 --- a/app/src/remote_server/unix/mod.rs +++ b/app/src/remote_server/unix/mod.rs @@ -16,7 +16,7 @@ mod proxy; use super::server_model::{ConnectionId, ServerModel}; use std::fs::Permissions; use std::os::unix::fs::PermissionsExt; -use warpui::r#async::executor; +use galaxyui::r#async::executor; /// Run the `remote-server-proxy` subcommand. /// @@ -40,9 +40,9 @@ pub fn run_daemon(identity_key: String) -> anyhow::Result<()> { // The file is written to the same directory as client logs (~/Library/Logs // on macOS, ~/.local/share/warp-terminal on Linux). Since the daemon runs // on the remote host, there is no conflict with client-side log files. - warp_logging::init(warp_logging::LogConfig { + galaxy_logging::init(galaxy_logging::LogConfig { is_cli: true, - log_destination: Some(warp_logging::LogDestination::File), + log_destination: Some(galaxy_logging::LogDestination::File), })?; // socket_path: ~/.warp[-channel]/remote-server/{identity_key}/server.sock @@ -137,7 +137,7 @@ pub fn run_daemon(identity_key: String) -> anyhow::Result<()> { pub(super) async fn handle_daemon_connection( conn_id: ConnectionId, stream: async_io::Async, - spawner: warpui::ModelSpawner, + spawner: galaxyui::ModelSpawner, exec: std::sync::Arc, ) { use futures::io::{AsyncWriteExt, BufReader, BufWriter}; diff --git a/app/src/resource_center/keybindings_page.rs b/app/src/resource_center/keybindings_page.rs index 368411aa..e52fb862 100644 --- a/app/src/resource_center/keybindings_page.rs +++ b/app/src/resource_center/keybindings_page.rs @@ -1,10 +1,10 @@ use enum_iterator::{all, Sequence}; use itertools::{Either, Itertools}; -use warpui::elements::CornerRadius; -use warpui::presenter::ChildView; -use warpui::units::Pixels; -use warpui::FocusContext; -use warpui::{ +use galaxyui::elements::CornerRadius; +use galaxyui::presenter::ChildView; +use galaxyui::units::Pixels; +use galaxyui::FocusContext; +use galaxyui::{ elements::{ Align, Border, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CrossAxisAlignment, Element, Fill, Flex, MainAxisSize, MouseStateHandle, ParentElement, @@ -25,7 +25,7 @@ use crate::{ util::bindings::filter_bindings_including_keystroke, workspace::WorkspaceAction, }; -use warpui::ModelHandle; +use galaxyui::ModelHandle; use crate::{ editor::{ diff --git a/app/src/resource_center/main_page.rs b/app/src/resource_center/main_page.rs index 9ad9fe30..2e394486 100644 --- a/app/src/resource_center/main_page.rs +++ b/app/src/resource_center/main_page.rs @@ -10,7 +10,7 @@ use crate::{ themes::theme::{Blend, Fill as FillTheme}, }; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{ Align, ClippedScrollStateHandle, ClippedScrollable, Container, CornerRadius, Element, Empty, Fill, Flex, Hoverable, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, diff --git a/app/src/resource_center/mod.rs b/app/src/resource_center/mod.rs index 14e6ce18..1a0311bf 100644 --- a/app/src/resource_center/mod.rs +++ b/app/src/resource_center/mod.rs @@ -20,7 +20,7 @@ pub mod sections; mod view; use serde::{Deserialize, Serialize}; pub use view::{ResourceCenterAction, ResourceCenterEvent, ResourceCenterPage, ResourceCenterView}; -use warpui::{keymap::Keystroke, AppContext, Entity, SingletonEntity}; +use galaxyui::{keymap::Keystroke, AppContext, Entity, SingletonEntity}; use self::section_views::feature_section::FeatureSection; diff --git a/app/src/resource_center/section_views/changelog_section.rs b/app/src/resource_center/section_views/changelog_section.rs index 0a0db577..2b5d02ac 100644 --- a/app/src/resource_center/section_views/changelog_section.rs +++ b/app/src/resource_center/section_views/changelog_section.rs @@ -1,7 +1,7 @@ use instant::Instant; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{ Border, CacheOption, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, FormattedTextElement, HighlightedHyperlink, Icon, Image, MouseStateHandle, diff --git a/app/src/resource_center/section_views/content_section.rs b/app/src/resource_center/section_views/content_section.rs index a6b4aee7..9007499c 100644 --- a/app/src/resource_center/section_views/content_section.rs +++ b/app/src/resource_center/section_views/content_section.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, Element, Empty, Flex, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/resource_center/section_views/feature_section.rs b/app/src/resource_center/section_views/feature_section.rs index e03aaa54..866971ee 100644 --- a/app/src/resource_center/section_views/feature_section.rs +++ b/app/src/resource_center/section_views/feature_section.rs @@ -5,7 +5,7 @@ use crate::{ settings_view::keybindings::{KeybindingChangedEvent, KeybindingChangedNotifier}, themes::theme::Fill, }; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Element, Flex, Hoverable, Icon, MouseState, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/resource_center/section_views/mod.rs b/app/src/resource_center/section_views/mod.rs index d3e118e4..aa165e58 100644 --- a/app/src/resource_center/section_views/mod.rs +++ b/app/src/resource_center/section_views/mod.rs @@ -2,14 +2,14 @@ pub mod feature_section; pub use feature_section::FeatureSectionView; pub mod content_section; pub use content_section::ContentSectionView; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; pub mod changelog_section; use crate::{ appearance::Appearance, resource_center::{section_views::feature_section::FeatureSection, TipAction}, }; pub use changelog_section::ChangelogSectionView; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ConstrainedBox, Container, CrossAxisAlignment, Element, Flex, Hoverable, Icon, MouseStateHandle, ParentElement, ScrollbarWidth, Shrinkable, diff --git a/app/src/resource_center/sections.rs b/app/src/resource_center/sections.rs index d307eb24..46fcd675 100644 --- a/app/src/resource_center/sections.rs +++ b/app/src/resource_center/sections.rs @@ -1,5 +1,5 @@ -use warp_core::{context_flag::ContextFlag, features::FeatureFlag}; -use warpui::ViewContext; +use galaxy_core::{context_flag::ContextFlag, features::FeatureFlag}; +use galaxyui::ViewContext; use super::{ ContentItem, ContentSectionData, FeatureItem, FeatureSection, FeatureSectionData, diff --git a/app/src/resource_center/utils.rs b/app/src/resource_center/utils.rs index ddc6b3c5..7d8f46a1 100644 --- a/app/src/resource_center/utils.rs +++ b/app/src/resource_center/utils.rs @@ -1,7 +1,7 @@ // Hard coded constants to divide keybindings into their respective categories/sections. // This should always align with documentation: https://docs.warp.dev/getting-started/keyboard-shortcuts -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; use crate::util::bindings::CommandBinding; diff --git a/app/src/resource_center/view.rs b/app/src/resource_center/view.rs index a980f428..30d5edc0 100644 --- a/app/src/resource_center/view.rs +++ b/app/src/resource_center/view.rs @@ -1,6 +1,6 @@ use vec1::{vec1, Vec1}; -use warp_core::{features::FeatureFlag, ui::builder::AnimatedButtonOptions}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::builder::AnimatedButtonOptions}; +use galaxyui::{ elements::{ Align, Border, ConstrainedBox, Container, CrossAxisAlignment, Element, Flex, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, SavePosition, Shrinkable, diff --git a/app/src/reward_view.rs b/app/src/reward_view.rs index 01f8a919..2fe0cd3f 100644 --- a/app/src/reward_view.rs +++ b/app/src/reward_view.rs @@ -1,5 +1,5 @@ -use warp_core::ui::builder::UiBuilder; -use warpui::{ +use galaxy_core::ui::builder::UiBuilder; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{Align, Container, Element, Flex, MouseStateHandle, ParentElement}, keymap::FixedBinding, @@ -37,7 +37,7 @@ const BUTTON_MARGIN_BOTTOM: f32 = 14.; const ACCESSIBILITY_HELP: &str = "Press enter to open the theme chooser or escape to dismiss."; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "enter", diff --git a/app/src/root_view.rs b/app/src/root_view.rs index 7cc47ce5..0c5c362a 100644 --- a/app/src/root_view.rs +++ b/app/src/root_view.rs @@ -93,36 +93,36 @@ use std::sync::mpsc::SyncSender; use std::sync::Arc; use std::{collections::HashMap, path::PathBuf}; use url::Url; -use warp_core::context_flag::ContextFlag; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::clipboard::ClipboardContent; -use warpui::keymap::{EditableBinding, FixedBinding}; -use warpui::windowing::WindowManager; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::keymap::{EditableBinding, FixedBinding}; +use galaxyui::windowing::WindowManager; use crate::ai::llms::{LLMPreferences, LLMPreferencesEvent}; use crate::ai::onboarding::{ apply_free_tier_default_model_override, build_onboarding_models, current_onboarding_auth_state, }; use crate::pricing::{PricingInfoModel, PricingInfoModelEvent}; -use warp_graphql::billing::StripeSubscriptionPlan; +use galaxy_graphql::billing::StripeSubscriptionPlan; -use warpui::elements::{ +use galaxyui::elements::{ Border, ChildAnchor, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Stack, }; -use warpui::rendering::OnGPUDeviceSelected; -use warpui::{id, AddWindowOptions, DisplayId, SingletonEntity}; -use warpui::{ +use galaxyui::rendering::OnGPUDeviceSelected; +use galaxyui::{id, AddWindowOptions, DisplayId, SingletonEntity}; +use galaxyui::{ platform::{WindowBounds, WindowStyle}, presenter::ChildView, AppContext, Element, Entity, EntityId, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; -use warpui::{FocusContext, NextNewWindowsHasThisWindowsBoundsUponClose}; +use galaxyui::{FocusContext, NextNewWindowsHasThisWindowsBoundsUponClose}; #[cfg(target_family = "wasm")] use crate::auth::web_handoff::{WebHandoffEvent, WebHandoffView}; -const WINDOW_TITLE: &str = "Warp"; +const WINDOW_TITLE: &str = "Galaxy AI"; lazy_static! { static ref FALLBACK_WINDOW_SIZE: Vector2F = vec2f(800.0, 600.0); @@ -280,11 +280,11 @@ impl CreateEnvironmentArg { // Accept valid URLs (e.g., https://github.com/user/repo) Url::parse(repo).is_ok() // Or valid POSIX portable pathnames (e.g., user/repo) - || warp_util::path::is_posix_portable_pathname(repo) + || galaxy_util::path::is_posix_portable_pathname(repo) // Or absolute POSIX paths with portable components (e.g., /Users/me/repo) || repo .strip_prefix('/') - .is_some_and(warp_util::path::is_posix_portable_pathname) + .is_some_and(galaxy_util::path::is_posix_portable_pathname) }) .join(" "); @@ -1451,7 +1451,7 @@ fn toggle_quake_mode_window(global_resource_handles: &GlobalResourceHandles, ctx background_blur_texture: *window_settings.background_blur_texture, // Ignore the quake window for positioning the next window anchor_new_windows_from_closed_position: - warpui::NextNewWindowsHasThisWindowsBoundsUponClose::No, + galaxyui::NextNewWindowsHasThisWindowsBoundsUponClose::No, on_gpu_driver_selected: on_gpu_driver_selected_callback(), window_instance: Some(ChannelState::app_id().to_string() + "-hotkey"), ..Default::default() @@ -1831,7 +1831,7 @@ impl RootView { // the default if it's not already set and the user is logging in. #[cfg(target_os = "macos")] { - use warpui_extras::user_preferences::UserPreferences; + use galaxyui_extras::user_preferences::UserPreferences; // Make sure we're interacting with user defaults instead // of some other preferences store. Apple implements some @@ -1839,7 +1839,7 @@ impl RootView { // defaults (like press-and-hold being either accented // characters or key repeat), so we need to make sure we're // interacting with the user defaults system. - let user_defaults = warpui_extras::user_preferences::user_defaults::UserDefaultsPreferencesStorage::new(None); + let user_defaults = galaxyui_extras::user_preferences::user_defaults::UserDefaultsPreferencesStorage::new(None); if user_defaults .read_value("ApplePressAndHoldEnabled") .unwrap_or_default() @@ -3231,12 +3231,12 @@ impl RootView { #[cfg(feature = "voice_input")] fn maybe_stop_active_voice_input( &mut self, - key_code: &warpui::platform::keyboard::KeyCode, + key_code: &galaxyui::platform::keyboard::KeyCode, ctx: &mut ViewContext, ) -> bool { use crate::settings::AISettings; use voice_input::{VoiceInput, VoiceInputState, VoiceInputToggledFrom}; - use warpui::event::KeyState; + use galaxyui::event::KeyState; // Check that the released key matches the configured voice input toggle key. let ai_settings = AISettings::as_ref(ctx); @@ -3422,10 +3422,10 @@ impl View for RootView { cfg_if::cfg_if! { if #[cfg(feature = "voice_input")] { - use warpui::elements::{EventHandler, DispatchEventResult}; + use galaxyui::elements::{EventHandler, DispatchEventResult}; EventHandler::new(stack.finish()) .on_modifier_state_changed(|ctx, _app, key_code, key_state| { - if matches!(key_state, warpui::event::KeyState::Released) { + if matches!(key_state, galaxyui::event::KeyState::Released) { ctx.dispatch_action("root_view:maybe_stop_active_voice_input", *key_code); } DispatchEventResult::PropagateToParent @@ -3437,7 +3437,7 @@ impl View for RootView { } } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if quake_mode_window_is_open() { context.set.insert(flags::QUAKE_WINDOW_OPEN_FLAG); diff --git a/app/src/root_view_tests.rs b/app/src/root_view_tests.rs index 065eefcc..c84ddc52 100644 --- a/app/src/root_view_tests.rs +++ b/app/src/root_view_tests.rs @@ -1,5 +1,5 @@ -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::{App, SingletonEntity}; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::{App, SingletonEntity}; use super::{has_completed_local_onboarding, RootView, HAS_COMPLETED_ONBOARDING_KEY}; use crate::auth::auth_manager::AuthManager; diff --git a/app/src/search/action/data_source.rs b/app/src/search/action/data_source.rs index eb2dc766..0644a732 100644 --- a/app/src/search/action/data_source.rs +++ b/app/src/search/action/data_source.rs @@ -1,7 +1,7 @@ use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; use std::collections::HashMap; use std::sync::Arc; -use warpui::{AppContext, Entity, ModelContext, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle}; use crate::search::action::search_item::MatchedBinding; use crate::search::command_palette::mixer::CommandPaletteItemAction; @@ -11,7 +11,7 @@ use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use crate::util::bindings::CommandBinding; use crate::search::binding_source::BindingSource; -use warpui::keymap::{BindingId, DescriptionContext}; +use galaxyui::keymap::{BindingId, DescriptionContext}; /// Data source for [`CommandBinding`]s. Produces a list of in-app actions a user can currently /// perform. @@ -22,7 +22,7 @@ pub struct CommandBindingDataSource { impl CommandBindingDataSource { #[cfg(not(target_family = "wasm"))] pub fn new(binding_source: ModelHandle, ctx: &mut ModelContext) -> Self { - if warp_core::features::FeatureFlag::UseTantivySearch.is_enabled() { + if galaxy_core::features::FeatureFlag::UseTantivySearch.is_enabled() { Self::new_full_text(binding_source, ctx) } else { Self::new_fuzzy(binding_source, ctx) @@ -196,7 +196,7 @@ mod full_text_searcher { use fuzzy_match::FuzzyMatchResult; use std::collections::HashMap; use std::sync::Arc; - use warpui::keymap::{BindingId, DescriptionContext}; + use galaxyui::keymap::{BindingId, DescriptionContext}; define_search_schema!( schema_name: ACTION_SEARCH_SCHEMA, diff --git a/app/src/search/action/search_item.rs b/app/src/search/action/search_item.rs index 55be013f..824fe97d 100644 --- a/app/src/search/action/search_item.rs +++ b/app/src/search/action/search_item.rs @@ -14,13 +14,13 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; use pathfinder_color::ColorU; use std::sync::Arc; -use warpui::elements::{ +use galaxyui::elements::{ Align, ConstrainedBox, Container, Flex, Highlight, ParentElement, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::{DescriptionContext, Keystroke}; -use warpui::ui_components::components::UiComponent; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::{DescriptionContext, Keystroke}; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{AppContext, Element, SingletonEntity}; /// A matched binding from a search query. #[derive(Debug)] diff --git a/app/src/search/ai_context_menu/blocks/data_source.rs b/app/src/search/ai_context_menu/blocks/data_source.rs index 1ec6dac8..53a9086c 100644 --- a/app/src/search/ai_context_menu/blocks/data_source.rs +++ b/app/src/search/ai_context_menu/blocks/data_source.rs @@ -8,7 +8,7 @@ use crate::terminal::TerminalView; use crate::workspace::ActiveSession; use fuzzy_match::FuzzyMatchResult; use itertools::Itertools; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; const MAX_RESULTS: usize = 20; const ZERO_STATE_BASE_SCORE: i64 = 1000; diff --git a/app/src/search/ai_context_menu/blocks/data_source_tests.rs b/app/src/search/ai_context_menu/blocks/data_source_tests.rs index a00aa9ab..a16212e5 100644 --- a/app/src/search/ai_context_menu/blocks/data_source_tests.rs +++ b/app/src/search/ai_context_menu/blocks/data_source_tests.rs @@ -12,8 +12,8 @@ use crate::test_util::terminal::{ use crate::workspace::ActiveSession; use fuzzy_match::FuzzyMatchResult; -use warp_core::command::ExitCode; -use warpui::{App, SingletonEntity}; +use galaxy_core::command::ExitCode; +use galaxyui::{App, SingletonEntity}; /// Helper to create a `BlockSearchItem` with the given parameters. fn make_block_search_item( diff --git a/app/src/search/ai_context_menu/blocks/search_item.rs b/app/src/search/ai_context_menu/blocks/search_item.rs index f3f27e91..f79eabaa 100644 --- a/app/src/search/ai_context_menu/blocks/search_item.rs +++ b/app/src/search/ai_context_menu/blocks/search_item.rs @@ -7,15 +7,15 @@ use crate::terminal::model::block::BlockId; use crate::util::truncation::truncate_from_end; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warpui::elements::Highlight; -use warpui::fonts::{Properties, Weight}; -use warpui::{ +use galaxyui::elements::Highlight; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{ elements::{ConstrainedBox, Container, CrossAxisAlignment, Flex, Icon, ParentElement, Text}, AppContext, Element, SingletonEntity, }; use chrono::{DateTime, Local}; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; /// Calculate how long ago a timestamp was fn time_ago_string(timestamp: Option<&DateTime>) -> String { diff --git a/app/src/search/ai_context_menu/code/data_source.rs b/app/src/search/ai_context_menu/code/data_source.rs index ec4b1a96..f38531e5 100644 --- a/app/src/search/ai_context_menu/code/data_source.rs +++ b/app/src/search/ai_context_menu/code/data_source.rs @@ -23,9 +23,9 @@ use std::collections::HashSet; use std::path::PathBuf; #[cfg(not(target_family = "wasm"))] use std::time::Duration; -use warpui::AppContext; +use galaxyui::AppContext; #[cfg(not(target_family = "wasm"))] -use warpui::ModelSpawner; +use galaxyui::ModelSpawner; #[cfg(not(target_family = "wasm"))] use crate::ai::outline::{OutlineStatus, RepoOutlines, RepoOutlinesEvent}; @@ -36,7 +36,7 @@ use repo_metadata::repositories::DetectedRepositories; #[cfg(not(target_family = "wasm"))] use std::path::Path; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; const MAX_RESULTS: usize = 200; @@ -71,13 +71,13 @@ pub struct CodeSymbolCache { spawner: ModelSpawner, } -impl warpui::Entity for CodeSymbolCache { +impl galaxyui::Entity for CodeSymbolCache { type Event = (); } impl CodeSymbolCache { #[cfg(not(target_family = "wasm"))] - pub fn new(ctx: &mut warpui::ModelContext) -> Self { + pub fn new(ctx: &mut galaxyui::ModelContext) -> Self { let spawner = ctx.spawner(); let cache = Self { symbol_cache: RefCell::new(HashMap::new()), diff --git a/app/src/search/ai_context_menu/code/mod.rs b/app/src/search/ai_context_menu/code/mod.rs index d06e58d2..6272dcd4 100644 --- a/app/src/search/ai_context_menu/code/mod.rs +++ b/app/src/search/ai_context_menu/code/mod.rs @@ -8,9 +8,9 @@ use crate::ai::outline::{OutlineStatus, RepoOutlines}; use crate::workspace::ActiveSession; #[cfg(not(target_family = "wasm"))] use std::path::Path; -use warpui::AppContext; +use galaxyui::AppContext; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; /// 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. diff --git a/app/src/search/ai_context_menu/code/search_item.rs b/app/src/search/ai_context_menu/code/search_item.rs index 8721e548..ae227718 100644 --- a/app/src/search/ai_context_menu/code/search_item.rs +++ b/app/src/search/ai_context_menu/code/search_item.rs @@ -5,11 +5,11 @@ use crate::search::item::{IconLocation, SearchItem}; use crate::search::result_renderer::ItemHighlightState; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; // Import CodeSymbol from the data_source module use super::data_source::CodeSymbol; diff --git a/app/src/search/ai_context_menu/commands/data_source.rs b/app/src/search/ai_context_menu/commands/data_source.rs index acc3d3bf..22374da3 100644 --- a/app/src/search/ai_context_menu/commands/data_source.rs +++ b/app/src/search/ai_context_menu/commands/data_source.rs @@ -5,7 +5,7 @@ use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use crate::terminal::History; use fuzzy_match::FuzzyMatchResult; use std::collections::HashSet; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; const MAX_RESULTS: usize = 50; @@ -118,6 +118,6 @@ impl SyncDataSource for CommandDataSource { } } -impl warpui::Entity for CommandDataSource { +impl galaxyui::Entity for CommandDataSource { type Event = (); } diff --git a/app/src/search/ai_context_menu/commands/search_item.rs b/app/src/search/ai_context_menu/commands/search_item.rs index 70f3e5e6..cb744d85 100644 --- a/app/src/search/ai_context_menu/commands/search_item.rs +++ b/app/src/search/ai_context_menu/commands/search_item.rs @@ -4,7 +4,7 @@ use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ConstrainedBox, Container, Icon, Text}, AppContext, Element, SingletonEntity, }; @@ -53,9 +53,9 @@ impl SearchItem for CommandSearchItem { ) .with_color(highlight_state.main_text_fill(appearance).into_solid()) .with_single_highlight( - warpui::elements::Highlight::new() + galaxyui::elements::Highlight::new() .with_properties( - warpui::fonts::Properties::default().weight(warpui::fonts::Weight::Bold), + galaxyui::fonts::Properties::default().weight(galaxyui::fonts::Weight::Bold), ) .with_foreground_color(highlight_state.main_text_fill(appearance).into_solid()), self.match_result.matched_indices.clone(), diff --git a/app/src/search/ai_context_menu/conversations/data_source.rs b/app/src/search/ai_context_menu/conversations/data_source.rs index 5ddde586..3e02776d 100644 --- a/app/src/search/ai_context_menu/conversations/data_source.rs +++ b/app/src/search/ai_context_menu/conversations/data_source.rs @@ -7,7 +7,7 @@ use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use fuzzy_match::FuzzyMatchResult; use std::collections::HashSet; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; const MAX_RESULTS: usize = 50; /// Minimum fuzzy match score to include a conversation in filtered results. diff --git a/app/src/search/ai_context_menu/conversations/search_item.rs b/app/src/search/ai_context_menu/conversations/search_item.rs index a627ea38..542be805 100644 --- a/app/src/search/ai_context_menu/conversations/search_item.rs +++ b/app/src/search/ai_context_menu/conversations/search_item.rs @@ -9,11 +9,11 @@ use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; use crate::util::time_format::format_approx_duration_from_now_utc; use crate::util::truncation::truncate_from_end; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; const MAX_TITLE_LENGTH: usize = 45; diff --git a/app/src/search/ai_context_menu/diffset/data_source.rs b/app/src/search/ai_context_menu/diffset/data_source.rs index 70056221..163e3aca 100644 --- a/app/src/search/ai_context_menu/diffset/data_source.rs +++ b/app/src/search/ai_context_menu/diffset/data_source.rs @@ -4,7 +4,7 @@ use crate::code_review::diff_state::DiffMode; use crate::search::ai_context_menu::mixer::AIContextMenuSearchableAction; use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; -use warpui::AppContext; +use galaxyui::AppContext; const UNCOMMITTED_CHANGES_NAME: &str = "uncommitted changes"; const MAIN_BRANCH_CHANGES_NAME: &str = "changes vs. main branch"; @@ -53,6 +53,6 @@ impl SyncDataSource for DiffSetDataSource { } } -impl warpui::Entity for DiffSetDataSource { +impl galaxyui::Entity for DiffSetDataSource { type Event = (); } diff --git a/app/src/search/ai_context_menu/diffset/search_item.rs b/app/src/search/ai_context_menu/diffset/search_item.rs index b9bcbce1..8adba286 100644 --- a/app/src/search/ai_context_menu/diffset/search_item.rs +++ b/app/src/search/ai_context_menu/diffset/search_item.rs @@ -6,10 +6,10 @@ use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Icon, ParentElement, Text, }; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::{AppContext, Element, SingletonEntity}; #[derive(Debug, Clone)] pub struct DiffSetSearchItem { diff --git a/app/src/search/ai_context_menu/files/data_source.rs b/app/src/search/ai_context_menu/files/data_source.rs index 4329a998..c7de5271 100644 --- a/app/src/search/ai_context_menu/files/data_source.rs +++ b/app/src/search/ai_context_menu/files/data_source.rs @@ -16,7 +16,7 @@ use std::collections::HashMap; use std::collections::HashSet; use std::path::{Path, PathBuf}; use std::sync::Arc; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; const MAX_RESULTS: usize = 200; diff --git a/app/src/search/ai_context_menu/files/data_source_tests.rs b/app/src/search/ai_context_menu/files/data_source_tests.rs index 8b3e5d51..ff79ae54 100644 --- a/app/src/search/ai_context_menu/files/data_source_tests.rs +++ b/app/src/search/ai_context_menu/files/data_source_tests.rs @@ -17,11 +17,11 @@ use std::fs; use std::path::PathBuf; use std::sync::Arc; use tempfile::tempdir; -use warpui::platform::WindowStyle; -use warpui::r#async::block_on; -use warpui::windowing::WindowManager; -use warpui::SingletonEntity; -use warpui::{elements::Empty, App, AppContext, Element, Entity, TypedActionView, View}; +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 { diff --git a/app/src/search/ai_context_menu/files/search_item.rs b/app/src/search/ai_context_menu/files/search_item.rs index 896b813d..4c15977e 100644 --- a/app/src/search/ai_context_menu/files/search_item.rs +++ b/app/src/search/ai_context_menu/files/search_item.rs @@ -8,8 +8,8 @@ use crate::search::ai_context_menu::mixer::AIContextMenuSearchableAction; use crate::search::ai_context_menu::styles; use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; -use warpui::elements::{ConstrainedBox, Container, Icon}; -use warpui::{AppContext, Element}; +use galaxyui::elements::{ConstrainedBox, Container, Icon}; +use galaxyui::{AppContext, Element}; use crate::search::files::icon::icon_from_file_path; use crate::ui_components::render_file_search_row::{render_file_search_row, FileSearchRowOptions}; diff --git a/app/src/search/ai_context_menu/notebooks/data_source.rs b/app/src/search/ai_context_menu/notebooks/data_source.rs index c477cf0e..044d4bee 100644 --- a/app/src/search/ai_context_menu/notebooks/data_source.rs +++ b/app/src/search/ai_context_menu/notebooks/data_source.rs @@ -7,7 +7,7 @@ use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use crate::workspaces::user_workspaces::UserWorkspaces; use fuzzy_match::FuzzyMatchResult; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; const MAX_RESULTS: usize = 50; /// Base score for zero-state results. Each item gets an additional bonus based on @@ -152,6 +152,6 @@ impl SyncDataSource for NotebookDataSource { } } -impl warpui::Entity for NotebookDataSource { +impl galaxyui::Entity for NotebookDataSource { type Event = (); } diff --git a/app/src/search/ai_context_menu/notebooks/data_source_test.rs b/app/src/search/ai_context_menu/notebooks/data_source_test.rs index 6b29d5b8..3b64db61 100644 --- a/app/src/search/ai_context_menu/notebooks/data_source_test.rs +++ b/app/src/search/ai_context_menu/notebooks/data_source_test.rs @@ -4,7 +4,7 @@ mod tests { use chrono::{Duration, Utc}; use settings::manager::SettingsManager; - use warpui::{App, SingletonEntity}; + use galaxyui::{App, SingletonEntity}; use crate::auth::AuthStateProvider; use crate::cloud_object::model::persistence::CloudModel; diff --git a/app/src/search/ai_context_menu/notebooks/search_item.rs b/app/src/search/ai_context_menu/notebooks/search_item.rs index 85f3aae6..28c03eea 100644 --- a/app/src/search/ai_context_menu/notebooks/search_item.rs +++ b/app/src/search/ai_context_menu/notebooks/search_item.rs @@ -8,11 +8,11 @@ use crate::search::ai_context_menu::styles; use crate::search::ai_context_menu::{mixer::AIContextMenuSearchableAction, safe_truncate}; use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; const MAX_COMBINED_LENGTH: usize = 55; diff --git a/app/src/search/ai_context_menu/rules/data_source.rs b/app/src/search/ai_context_menu/rules/data_source.rs index a9f0d00b..c116eb82 100644 --- a/app/src/search/ai_context_menu/rules/data_source.rs +++ b/app/src/search/ai_context_menu/rules/data_source.rs @@ -7,7 +7,7 @@ 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 warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; const MAX_RESULTS: usize = 50; const ZERO_STATE_BASE_SCORE: i64 = 1000; diff --git a/app/src/search/ai_context_menu/rules/data_source_tests.rs b/app/src/search/ai_context_menu/rules/data_source_tests.rs index 39955075..95e57520 100644 --- a/app/src/search/ai_context_menu/rules/data_source_tests.rs +++ b/app/src/search/ai_context_menu/rules/data_source_tests.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use chrono::{Duration, Utc}; use settings::manager::SettingsManager; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::ai::facts::{AIFact, AIMemory, CloudAIFactModel}; use crate::auth::AuthStateProvider; diff --git a/app/src/search/ai_context_menu/rules/search_item.rs b/app/src/search/ai_context_menu/rules/search_item.rs index 1520359c..74e4c134 100644 --- a/app/src/search/ai_context_menu/rules/search_item.rs +++ b/app/src/search/ai_context_menu/rules/search_item.rs @@ -8,11 +8,11 @@ use crate::search::ai_context_menu::styles; use crate::search::ai_context_menu::{mixer::AIContextMenuSearchableAction, safe_truncate}; use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; const MAX_COMBINED_LENGTH: usize = 55; diff --git a/app/src/search/ai_context_menu/skills/data_source.rs b/app/src/search/ai_context_menu/skills/data_source.rs index 01272863..cc53bbfb 100644 --- a/app/src/search/ai_context_menu/skills/data_source.rs +++ b/app/src/search/ai_context_menu/skills/data_source.rs @@ -5,7 +5,7 @@ use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use fuzzy_match::FuzzyMatchResult; use std::path::PathBuf; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; #[cfg(not(target_family = "wasm"))] use crate::workspace::ActiveSession; diff --git a/app/src/search/ai_context_menu/skills/search_item.rs b/app/src/search/ai_context_menu/skills/search_item.rs index 6f24606a..cdd74038 100644 --- a/app/src/search/ai_context_menu/skills/search_item.rs +++ b/app/src/search/ai_context_menu/skills/search_item.rs @@ -7,12 +7,12 @@ use crate::search::ai_context_menu::mixer::AIContextMenuSearchableAction; use crate::search::ai_context_menu::styles; use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; -use warp_core::ui::icons::Icon; -use warpui::elements::{ +use galaxy_core::ui::icons::Icon; +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, ParentElement, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; const MAX_DESCRIPTION_LEN: usize = 60; @@ -36,11 +36,11 @@ impl SearchItem for SkillSearchItem { let icon_color = highlight_state.icon_fill(appearance).into_solid(); let icon_element = if let Some(override_icon) = self.icon_override { - override_icon.to_warpui_icon(icon_color.into()).finish() + override_icon.to_galaxyui_icon(icon_color.into()).finish() } else { self.provider .icon() - .to_warpui_icon(self.provider.icon_fill(icon_color.into())) + .to_galaxyui_icon(self.provider.icon_fill(icon_color.into())) .finish() }; diff --git a/app/src/search/ai_context_menu/view.rs b/app/src/search/ai_context_menu/view.rs index 5333e92b..8f47d346 100644 --- a/app/src/search/ai_context_menu/view.rs +++ b/app/src/search/ai_context_menu/view.rs @@ -39,30 +39,30 @@ use settings::Setting as _; use std::collections::HashSet; use std::ops::Range; use std::time::Duration; -use warp_core::features::FeatureFlag; -use warpui::elements::ConstrainedBox; -use warpui::elements::CrossAxisAlignment; -use warpui::elements::Empty; -use warpui::elements::Fill; -use warpui::elements::Hoverable; -use warpui::elements::MouseStateHandle; -use warpui::elements::ScrollStateHandle; -use warpui::elements::Scrollable; -use warpui::elements::ScrollableElement; -use warpui::elements::ScrollbarWidth; -use warpui::elements::UniformList; -use warpui::elements::UniformListState; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::ConstrainedBox; +use galaxyui::elements::CrossAxisAlignment; +use galaxyui::elements::Empty; +use galaxyui::elements::Fill; +use galaxyui::elements::Hoverable; +use galaxyui::elements::MouseStateHandle; +use galaxyui::elements::ScrollStateHandle; +use galaxyui::elements::Scrollable; +use galaxyui::elements::ScrollableElement; +use galaxyui::elements::ScrollbarWidth; +use galaxyui::elements::UniformList; +use galaxyui::elements::UniformListState; +use galaxyui::elements::{ AnchorPair, Border, ChildView, Container, CornerRadius, Dismiss, Flex, Icon, OffsetPositioning, OffsetType, ParentElement, PositionedElementOffsetBounds, PositioningAxis, Radius, SavePosition, Shrinkable, Stack, Text, XAxisAnchor, YAxisAnchor, }; -use warpui::platform::Cursor; -use warpui::windowing::WindowManager; -use warpui::SingletonEntity; -use warpui::View; -use warpui::{ +use galaxyui::platform::Cursor; +use galaxyui::windowing::WindowManager; +use galaxyui::SingletonEntity; +use galaxyui::View; +use galaxyui::{ AppContext, Element, Entity, ModelHandle, TypedActionView, ViewContext, ViewHandle, WeakViewHandle, }; diff --git a/app/src/search/ai_context_menu/workflows/data_source.rs b/app/src/search/ai_context_menu/workflows/data_source.rs index 271555b1..e26660d1 100644 --- a/app/src/search/ai_context_menu/workflows/data_source.rs +++ b/app/src/search/ai_context_menu/workflows/data_source.rs @@ -6,7 +6,7 @@ use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use crate::workspaces::user_workspaces::UserWorkspaces; use fuzzy_match::FuzzyMatchResult; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; const MAX_RESULTS: usize = 50; /// Base score for zero-state results. Each item gets an additional bonus based on @@ -125,6 +125,6 @@ impl SyncDataSource for WorkflowDataSource { } } -impl warpui::Entity for WorkflowDataSource { +impl galaxyui::Entity for WorkflowDataSource { type Event = (); } diff --git a/app/src/search/ai_context_menu/workflows/search_item.rs b/app/src/search/ai_context_menu/workflows/search_item.rs index 9a7ffa66..250f9baa 100644 --- a/app/src/search/ai_context_menu/workflows/search_item.rs +++ b/app/src/search/ai_context_menu/workflows/search_item.rs @@ -8,11 +8,11 @@ use crate::search::ai_context_menu::styles; use crate::search::ai_context_menu::{mixer::AIContextMenuSearchableAction, safe_truncate}; use crate::search::item::SearchItem; use crate::search::result_renderer::ItemHighlightState; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; const MAX_COMBINED_LENGTH: usize = 55; diff --git a/app/src/search/async_snapshot_data_source.rs b/app/src/search/async_snapshot_data_source.rs index 5f0e274d..8c933b36 100644 --- a/app/src/search/async_snapshot_data_source.rs +++ b/app/src/search/async_snapshot_data_source.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warpui::{Action, AppContext}; +use galaxyui::{Action, AppContext}; use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{AsyncDataSource, BoxFuture, DataSourceRunErrorWrapper}; diff --git a/app/src/search/binding_source.rs b/app/src/search/binding_source.rs index d6c27f54..cc533ae8 100644 --- a/app/src/search/binding_source.rs +++ b/app/src/search/binding_source.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warpui::{Entity, EntityId, WindowId}; +use galaxyui::{Entity, EntityId, WindowId}; use crate::util::bindings::CommandBinding; diff --git a/app/src/search/command_palette/conversations/data_source.rs b/app/src/search/command_palette/conversations/data_source.rs index 3d204d2e..afe99b44 100644 --- a/app/src/search/command_palette/conversations/data_source.rs +++ b/app/src/search/command_palette/conversations/data_source.rs @@ -14,7 +14,7 @@ use crate::search::SyncDataSource; use crate::workspace::Workspace; use itertools::Itertools; use std::collections::HashMap; -use warpui::{AppContext, Entity}; +use galaxyui::{AppContext, Entity}; /// Sections for grouping conversations in the command palette. #[derive(Debug, PartialEq, Eq, Hash)] diff --git a/app/src/search/command_palette/conversations/search.rs b/app/src/search/command_palette/conversations/search.rs index 77f22fdd..5f67caa1 100644 --- a/app/src/search/command_palette/conversations/search.rs +++ b/app/src/search/command_palette/conversations/search.rs @@ -5,7 +5,7 @@ use crate::search::command_palette::conversations::DataSource; use crate::search::data_source::QueryResult; use crate::search::SyncDataSource; use fuzzy_match::match_indices_case_insensitive; -use warpui::AppContext; +use galaxyui::AppContext; /// A conversation that was fuzzy matched against a search term. #[derive(Debug)] diff --git a/app/src/search/command_palette/conversations/search_item.rs b/app/src/search/command_palette/conversations/search_item.rs index eed59f95..3e8ca1bd 100644 --- a/app/src/search/command_palette/conversations/search_item.rs +++ b/app/src/search/command_palette/conversations/search_item.rs @@ -13,18 +13,18 @@ use crate::util::time_format::format_approx_duration_from_now; use ordered_float::OrderedFloat; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::color::{blend::Blend, coloru_with_opacity}; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ +use galaxy_core::ui::color::{blend::Blend, coloru_with_opacity}; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ AnchorPair, Container, CrossAxisAlignment, Expanded, Fill, Flex, Highlight, MainAxisSize, MouseStateHandle, OffsetPositioning, OffsetType, ParentElement, ParentOffsetBounds, PositioningAxis, Stack, Text, XAxisAnchor, YAxisAnchor, }; -use warpui::fonts::{Properties, Weight}; -use warpui::ui_components::button::ButtonTooltipPosition; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{AppContext, Element, Gradient, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::ui_components::button::ButtonTooltipPosition; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Element, Gradient, SingletonEntity}; /// Information about which action to take once the conversation item is accepted. #[derive(Debug)] diff --git a/app/src/search/command_palette/conversations/search_test.rs b/app/src/search/command_palette/conversations/search_test.rs index fdf9df4f..8349abc7 100644 --- a/app/src/search/command_palette/conversations/search_test.rs +++ b/app/src/search/command_palette/conversations/search_test.rs @@ -1,7 +1,7 @@ use crate::ai::{ agent::conversation::AIConversationId, conversation_navigation::ConversationNavigationData, }; -use warpui::{EntityId, WindowId}; +use galaxyui::{EntityId, WindowId}; #[test] fn test_conversation_navigation_data_ordering() { diff --git a/app/src/search/command_palette/data_sources.rs b/app/src/search/command_palette/data_sources.rs index 9391936a..13ddd410 100644 --- a/app/src/search/command_palette/data_sources.rs +++ b/app/src/search/command_palette/data_sources.rs @@ -16,10 +16,10 @@ use crate::search::mixer::AddAsyncSourceOptions; use crate::search::QueryFilter; use crate::session_management::SessionSource; use crate::settings::AISettings; -use warp_core::context_flag::ContextFlag; -use warp_core::features::FeatureFlag; -use warpui::keymap::BindingId; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::features::FeatureFlag; +use galaxyui::keymap::BindingId; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use super::conversations; use super::warp_drive; diff --git a/app/src/search/command_palette/data_sources_test.rs b/app/src/search/command_palette/data_sources_test.rs index 77e58e93..d23060be 100644 --- a/app/src/search/command_palette/data_sources_test.rs +++ b/app/src/search/command_palette/data_sources_test.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use chrono::Utc; use settings::manager::SettingsManager; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use super::*; use crate::auth::AuthStateProvider; diff --git a/app/src/search/command_palette/files/data_source.rs b/app/src/search/command_palette/files/data_source.rs index cddf08dc..86e2a128 100644 --- a/app/src/search/command_palette/files/data_source.rs +++ b/app/src/search/command_palette/files/data_source.rs @@ -15,8 +15,8 @@ use std::collections::HashSet; use std::path::Path; use std::path::PathBuf; use std::sync::Arc; -use warp_util::path::CleanPathResult; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxy_util::path::CleanPathResult; +use galaxyui::{AppContext, Entity, SingletonEntity}; const MAX_RESULTS: usize = 100; diff --git a/app/src/search/command_palette/files/search_item.rs b/app/src/search/command_palette/files/search_item.rs index f82ffb92..b47c6df6 100644 --- a/app/src/search/command_palette/files/search_item.rs +++ b/app/src/search/command_palette/files/search_item.rs @@ -2,16 +2,16 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; use std::fmt::Debug; use std::path::PathBuf; -use warp_util::path::LineAndColumnArg; +use galaxy_util::path::LineAndColumnArg; use crate::appearance::Appearance; use crate::search::command_palette::mixer::CommandPaletteItemAction; use crate::search::command_palette::styles; use crate::search::item::{IconLocation, SearchItem}; use crate::search::result_renderer::ItemHighlightState; -use warpui::elements::{Align, ConstrainedBox, Container, Flex, Icon, ParentElement, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::elements::{Align, ConstrainedBox, Container, Flex, Icon, ParentElement, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::search::files::icon::icon_from_file_path; use crate::ui_components::render_file_search_row::{render_file_search_row, FileSearchRowOptions}; diff --git a/app/src/search/command_palette/filter_chip_renderer.rs b/app/src/search/command_palette/filter_chip_renderer.rs index ccc358cf..8b260078 100644 --- a/app/src/search/command_palette/filter_chip_renderer.rs +++ b/app/src/search/command_palette/filter_chip_renderer.rs @@ -5,12 +5,12 @@ use crate::search::FilterChipRenderer as CommonFilterChipRenderer; use crate::search::QueryFilter; use crate::util::color::{ContrastingColor, MinimumAllowedContrast}; use pathfinder_color::ColorU; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, Icon, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::platform::Cursor; -use warpui::{Element, EventContext}; +use galaxyui::platform::Cursor; +use galaxyui::{Element, EventContext}; /// Trait to render filter chips for the command palette. pub trait FilterChipRenderer: crate::search::FilterChipRenderer { @@ -147,7 +147,7 @@ impl FilterChipRenderer for QueryFilter { mod styles { use crate::themes::theme::{Blend, Fill, WarpTheme}; - use warpui::elements::{Border, MouseState}; + use galaxyui::elements::{Border, MouseState}; /// Size of the border when the query filter is hovered. const HOVERED_BORDER_SIZE: f32 = 2.; diff --git a/app/src/search/command_palette/launch_config/data_source.rs b/app/src/search/command_palette/launch_config/data_source.rs index e6fade83..01fa7131 100644 --- a/app/src/search/command_palette/launch_config/data_source.rs +++ b/app/src/search/command_palette/launch_config/data_source.rs @@ -7,7 +7,7 @@ use crate::user_config::{WarpConfig, WarpConfigUpdateEvent}; use fuzzy_match::match_indices_case_insensitive; use std::collections::HashMap; use std::sync::Arc; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; /// Datasource that searches against `LaunchConfig`s. pub struct DataSource { @@ -17,7 +17,7 @@ pub struct DataSource { impl DataSource { #[cfg(not(target_family = "wasm"))] pub fn new(ctx: &mut ModelContext) -> Self { - if warp_core::features::FeatureFlag::UseTantivySearch.is_enabled() { + if galaxy_core::features::FeatureFlag::UseTantivySearch.is_enabled() { Self::new_full_text(ctx) } else { Self::new_fuzzy(ctx) @@ -126,8 +126,8 @@ mod full_text_searcher { use fuzzy_match::FuzzyMatchResult; use std::collections::HashMap; use std::sync::Arc; - use warpui::r#async::executor::Background; - use warpui::{AppContext, SingletonEntity}; + use galaxyui::r#async::executor::Background; + use galaxyui::{AppContext, SingletonEntity}; // The name of the launch configs are duplicated to ensure that the searcher // hashes the name to uniquely identify the launch config. diff --git a/app/src/search/command_palette/launch_config/renderer.rs b/app/src/search/command_palette/launch_config/renderer.rs index f68a3384..df4b7213 100644 --- a/app/src/search/command_palette/launch_config/renderer.rs +++ b/app/src/search/command_palette/launch_config/renderer.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, Flex, Highlight, ParentElement, Radius, Shrinkable, Text, diff --git a/app/src/search/command_palette/launch_config/search_item.rs b/app/src/search/command_palette/launch_config/search_item.rs index c81f0752..a21bd9fd 100644 --- a/app/src/search/command_palette/launch_config/search_item.rs +++ b/app/src/search/command_palette/launch_config/search_item.rs @@ -8,7 +8,7 @@ use crate::search::result_renderer::ItemHighlightState; use ordered_float::OrderedFloat; use std::sync::Arc; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::{AppContext, Element, SingletonEntity}; /// SearchItem for a matching [`LaunchConfig`]. #[derive(Debug)] diff --git a/app/src/search/command_palette/mixer.rs b/app/src/search/command_palette/mixer.rs index b4e2a1aa..f3c862b4 100644 --- a/app/src/search/command_palette/mixer.rs +++ b/app/src/search/command_palette/mixer.rs @@ -8,9 +8,9 @@ use crate::util::bindings::CommandBinding; use crate::workspace::PaneViewLocator; use std::sync::Arc; use strum_macros::IntoStaticStr; -use warp_util::path::LineAndColumnArg; -use warpui::keymap::BindingId; -use warpui::{EntityId, WindowId}; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::keymap::BindingId; +use galaxyui::{EntityId, WindowId}; pub type CommandPaletteMixer = SearchMixer; diff --git a/app/src/search/command_palette/navigation/data_source.rs b/app/src/search/command_palette/navigation/data_source.rs index 7de62e62..c33e07cd 100644 --- a/app/src/search/command_palette/navigation/data_source.rs +++ b/app/src/search/command_palette/navigation/data_source.rs @@ -8,7 +8,7 @@ use crate::search::mixer::DataSourceRunErrorWrapper; use crate::search::SyncDataSource; use crate::session_management::{SessionNavigationData, SessionSource}; use crate::workspace::PaneViewLocator; -use warpui::{AppContext, Entity, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelHandle}; /// Data source that produces possible running sessions a user could navigate to. pub struct DataSource { @@ -18,7 +18,7 @@ pub struct DataSource { impl DataSource { #[cfg(not(target_family = "wasm"))] pub fn new(active_session_handle: ModelHandle) -> Self { - if warp_core::features::FeatureFlag::UseTantivySearch.is_enabled() { + if galaxy_core::features::FeatureFlag::UseTantivySearch.is_enabled() { Self::new_full_text(active_session_handle) } else { Self::new_fuzzy(active_session_handle) diff --git a/app/src/search/command_palette/navigation/render.rs b/app/src/search/command_palette/navigation/render.rs index 4b549946..9cf8b521 100644 --- a/app/src/search/command_palette/navigation/render.rs +++ b/app/src/search/command_palette/navigation/render.rs @@ -17,14 +17,14 @@ 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 warpui::elements::{ +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Highlight, ParentElement, Radius, Shrinkable, Wrap, }; -use warpui::fonts::{Properties, Weight}; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::units::IntoPixels; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::units::IntoPixels; +use galaxyui::{AppContext, Element, SingletonEntity}; /// Renders a navigation session. pub fn render_navigation_session( diff --git a/app/src/search/command_palette/navigation/search.rs b/app/src/search/command_palette/navigation/search.rs index 7e9f61c4..af6b3f71 100644 --- a/app/src/search/command_palette/navigation/search.rs +++ b/app/src/search/command_palette/navigation/search.rs @@ -8,7 +8,7 @@ use crate::session_management::{CommandContext, SessionNavigationData, SessionSo use fuzzy_match::match_indices_case_insensitive; use itertools::Itertools; use std::ops::Range; -use warpui::{AppContext, ModelHandle}; +use galaxyui::{AppContext, ModelHandle}; /// A session that was fuzzy matched against a search term. pub struct MatchedSession { @@ -254,7 +254,7 @@ mod full_text_searcher { use crate::session_management::{SessionNavigationData, SessionSource}; use itertools::Itertools; use std::collections::HashMap; - use warpui::{AppContext, ModelHandle}; + use galaxyui::{AppContext, ModelHandle}; define_search_schema!( schema_name: SESSION_SEARCH_SCHEMA, diff --git a/app/src/search/command_palette/navigation/search_item.rs b/app/src/search/command_palette/navigation/search_item.rs index 1d264807..c49842a2 100644 --- a/app/src/search/command_palette/navigation/search_item.rs +++ b/app/src/search/command_palette/navigation/search_item.rs @@ -9,8 +9,8 @@ use crate::search::result_renderer::ItemHighlightState; use crate::session_management::SessionNavigationData; use crate::ui_components::icons::Icon; use ordered_float::OrderedFloat; -use warpui::elements::Container; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::elements::Container; +use galaxyui::{AppContext, Element, SingletonEntity}; /// Search item to render a session within the command palette. pub struct SearchItem { diff --git a/app/src/search/command_palette/new_session/data_source.rs b/app/src/search/command_palette/new_session/data_source.rs index 1564d57c..0b66b0ee 100644 --- a/app/src/search/command_palette/new_session/data_source.rs +++ b/app/src/search/command_palette/new_session/data_source.rs @@ -12,8 +12,8 @@ use crate::terminal::available_shells::AvailableShells; use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; use std::collections::HashMap; use std::sync::Arc; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; /// Controls which kinds of new sessions the data source should surface. #[derive(Copy, Clone, Debug)] @@ -314,7 +314,7 @@ mod full_text_searcher { use fuzzy_match::FuzzyMatchResult; use std::collections::HashMap; use std::sync::Arc; - use warpui::r#async::executor::Background; + use galaxyui::r#async::executor::Background; define_search_schema!( schema_name: NEW_SESSION_SEARCH_SCHEMA, diff --git a/app/src/search/command_palette/new_session/new_session_option.rs b/app/src/search/command_palette/new_session/new_session_option.rs index d084c632..ad30bf45 100644 --- a/app/src/search/command_palette/new_session/new_session_option.rs +++ b/app/src/search/command_palette/new_session/new_session_option.rs @@ -4,7 +4,7 @@ use crate::terminal::view::TerminalAction; use crate::WorkspaceAction; use std::borrow::Cow; use std::fmt; -use warpui::Action; +use galaxyui::Action; #[derive(Clone, Debug, PartialEq, Eq, Hash)] pub struct NewSessionOptionId(pub(crate) String); diff --git a/app/src/search/command_palette/new_session/renderer.rs b/app/src/search/command_palette/new_session/renderer.rs index 21a6995b..6ca5bfa3 100644 --- a/app/src/search/command_palette/new_session/renderer.rs +++ b/app/src/search/command_palette/new_session/renderer.rs @@ -1,7 +1,7 @@ use super::new_session_option::NewSessionOption; use crate::search::command_palette::styles::SEARCH_ITEM_TEXT_PADDING; -use warpui::{ +use galaxyui::{ elements::{Container, Flex, Highlight, ParentElement, Text}, fonts::{Properties, Weight}, Element, diff --git a/app/src/search/command_palette/new_session/search_item.rs b/app/src/search/command_palette/new_session/search_item.rs index a901f772..bd55495c 100644 --- a/app/src/search/command_palette/new_session/search_item.rs +++ b/app/src/search/command_palette/new_session/search_item.rs @@ -10,7 +10,7 @@ use crate::search::result_renderer::ItemHighlightState; use ordered_float::OrderedFloat; use std::sync::Arc; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::{AppContext, Element, SingletonEntity}; #[derive(Debug)] pub struct SearchItem { diff --git a/app/src/search/command_palette/render_util.rs b/app/src/search/command_palette/render_util.rs index 3431a427..c2f32729 100644 --- a/app/src/search/command_palette/render_util.rs +++ b/app/src/search/command_palette/render_util.rs @@ -4,9 +4,9 @@ use crate::themes::theme::Blend; use crate::ui_components::icons::Icon; use crate::util::color::{ContrastingColor, MinimumAllowedContrast}; use pathfinder_color::ColorU; -use warp_core::ui::theme::Fill; -use warpui::elements::{Align, ConstrainedBox, Container, Empty}; -use warpui::Element; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{Align, ConstrainedBox, Container, Empty}; +use galaxyui::Element; /// Helper function to render an icon for any search item within the command palette with consistent /// styling. @@ -25,7 +25,7 @@ pub fn render_search_item_icon( background_color.into_solid(), MinimumAllowedContrast::NonText, ); - let icon_element = icon.to_warpui_icon(Fill::Solid(icon_color)).finish(); + let icon_element = icon.to_galaxyui_icon(Fill::Solid(icon_color)).finish(); render_search_item_icon_inner(appearance, icon_element) } diff --git a/app/src/search/command_palette/repos/repo_data_source.rs b/app/src/search/command_palette/repos/repo_data_source.rs index a0e8b8bb..d3ba3fbb 100644 --- a/app/src/search/command_palette/repos/repo_data_source.rs +++ b/app/src/search/command_palette/repos/repo_data_source.rs @@ -1,7 +1,7 @@ use ai::workspace::WorkspaceMetadata; use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; use itertools::Itertools; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use super::RepoSearchItem; use crate::ai::persisted_workspace::PersistedWorkspace; diff --git a/app/src/search/command_palette/repos/repo_search_item.rs b/app/src/search/command_palette/repos/repo_search_item.rs index 1d83e70e..afe66369 100644 --- a/app/src/search/command_palette/repos/repo_search_item.rs +++ b/app/src/search/command_palette/repos/repo_search_item.rs @@ -2,8 +2,8 @@ use ai::workspace::WorkspaceMetadata; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; use std::path::Path; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{Align, ConstrainedBox, Flex, Highlight, ParentElement, Shrinkable, Text}, fonts::{Properties, Weight}, AppContext, Element, SingletonEntity, diff --git a/app/src/search/command_palette/selected_items.rs b/app/src/search/command_palette/selected_items.rs index d4d7ec63..835905b6 100644 --- a/app/src/search/command_palette/selected_items.rs +++ b/app/src/search/command_palette/selected_items.rs @@ -1,6 +1,6 @@ use crate::search::command_palette::mixer::ItemSummary; use bounded_vec_deque::BoundedVecDeque; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; /// Maximum number of elements to store. Per the [`BoundedVecDeque`] docs, it is recommended that /// this is one less than the power of two to avoid unnecessary allocations. diff --git a/app/src/search/command_palette/selected_items_tests.rs b/app/src/search/command_palette/selected_items_tests.rs index a75d568d..1170db23 100644 --- a/app/src/search/command_palette/selected_items_tests.rs +++ b/app/src/search/command_palette/selected_items_tests.rs @@ -1,6 +1,6 @@ use super::*; use itertools::Itertools; -use warpui::keymap::BindingId; +use galaxyui::keymap::BindingId; #[test] fn test_enqueue_new_item() { diff --git a/app/src/search/command_palette/separator_search_item.rs b/app/src/search/command_palette/separator_search_item.rs index 84524337..b8c58b9f 100644 --- a/app/src/search/command_palette/separator_search_item.rs +++ b/app/src/search/command_palette/separator_search_item.rs @@ -2,7 +2,7 @@ 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 warpui::{ +use galaxyui::{ elements::{Empty, Text}, AppContext, Element, SingletonEntity, }; diff --git a/app/src/search/command_palette/view.rs b/app/src/search/command_palette/view.rs index d4f5e913..083105a5 100644 --- a/app/src/search/command_palette/view.rs +++ b/app/src/search/command_palette/view.rs @@ -16,16 +16,16 @@ use crate::themes::theme::WarpTheme; use crate::view_components::DismissibleToast; use crate::ToastStack; use lazy_static::lazy_static; -use warp_core::send_telemetry_from_app_ctx; -use warp_util::path::LineAndColumnArg; +use galaxy_core::send_telemetry_from_app_ctx; +use galaxy_util::path::LineAndColumnArg; use crate::search::action::search_item::MatchedBinding; use itertools::Itertools; -use warpui::elements::DispatchEventResult; -use warpui::elements::EventHandler; -use warpui::event::KeyState; -use warpui::platform::keyboard::KeyCode; -use warpui::FocusContext; +use galaxyui::elements::DispatchEventResult; +use galaxyui::elements::EventHandler; +use galaxyui::event::KeyState; +use galaxyui::platform::keyboard::KeyCode; +use galaxyui::FocusContext; use crate::search::command_palette::zero_state::{self, Event as ZeroStateEvent, ZeroState}; use crate::search::data_source::QueryResult; @@ -41,14 +41,14 @@ use crate::search::command_palette::data_sources::DataSourceStore; use crate::server::ids::SyncId; use crate::session_management::SessionSource; use crate::workspace::{active_terminal_in_window, ForkedConversationDestination, WorkspaceAction}; -use warpui::elements::{ +use galaxyui::elements::{ Align, Border, ChildView, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, Dismiss, Empty, Fill, Flex, ParentElement, Radius, SavePosition, Shrinkable, }; -use warpui::keymap::BindingId; -use warpui::units::{IntoPixels, Pixels}; -use warpui::{ +use galaxyui::keymap::BindingId; +use galaxyui::units::{IntoPixels, Pixels}; +use galaxyui::{ AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity, TypedActionView, ViewContext, ViewHandle, WindowId, }; @@ -170,7 +170,7 @@ impl TypedActionView for View { } } -impl warpui::View for View { +impl galaxyui::View for View { fn ui_name() -> &'static str { "CommandPaletteView" } @@ -1000,11 +1000,11 @@ impl View { self.close(ctx, Some(result_action.result_type())); } - /// Dispatches `action` to the correct window and [`warpui::View`] by using the current state of + /// Dispatches `action` to the correct window and [`galaxyui::View`] by using the current state of /// the [`BindingSource`] model. fn dispatch_typed_action_on_view( &self, - action: &dyn warpui::Action, + action: &dyn galaxyui::Action, ctx: &mut ViewContext, ) { send_telemetry_from_ctx!( diff --git a/app/src/search/command_palette/warp_drive/data_source.rs b/app/src/search/command_palette/warp_drive/data_source.rs index 860beb98..25ae2aa8 100644 --- a/app/src/search/command_palette/warp_drive/data_source.rs +++ b/app/src/search/command_palette/warp_drive/data_source.rs @@ -19,7 +19,7 @@ use crate::server::ids::{ObjectUid, SyncId}; use crate::settings::AISettings; use crate::workflows::CloudWorkflow; use std::collections::HashMap; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; /// Datasource that searches against all Warp Drive objects pub struct DataSource { @@ -29,7 +29,7 @@ pub struct DataSource { impl DataSource { #[cfg(not(target_family = "wasm"))] pub fn new(ctx: &mut ModelContext) -> Self { - if warp_core::features::FeatureFlag::UseTantivySearch.is_enabled() { + if galaxy_core::features::FeatureFlag::UseTantivySearch.is_enabled() { Self::new_full_text(ctx) } else { Self::new_fuzzy(ctx) @@ -564,8 +564,8 @@ mod full_text_searcher { use crate::workflows::CloudWorkflow; use fuzzy_match::FuzzyMatchResult; use itertools::Itertools; - use warpui::r#async::executor::Background; - use warpui::{AppContext, SingletonEntity}; + use galaxyui::r#async::executor::Background; + use galaxyui::{AppContext, SingletonEntity}; /// 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 diff --git a/app/src/search/command_palette/warp_drive/env_var_collection_search_item.rs b/app/src/search/command_palette/warp_drive/env_var_collection_search_item.rs index 6b92e094..0aa1f306 100644 --- a/app/src/search/command_palette/warp_drive/env_var_collection_search_item.rs +++ b/app/src/search/command_palette/warp_drive/env_var_collection_search_item.rs @@ -12,9 +12,9 @@ use crate::search::result_renderer::ItemHighlightState; use crate::ui_components::icons::Icon; use itertools::Itertools; use ordered_float::OrderedFloat; -use warpui::elements::{Container, Flex, Highlight, ParentElement, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::elements::{Container, Flex, Highlight, ParentElement, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; pub const ENV_VAR_NAME_SEPARATOR: &str = ", "; diff --git a/app/src/search/command_palette/warp_drive/notebook_search_item.rs b/app/src/search/command_palette/warp_drive/notebook_search_item.rs index 19fcfdda..81af9d4a 100644 --- a/app/src/search/command_palette/warp_drive/notebook_search_item.rs +++ b/app/src/search/command_palette/warp_drive/notebook_search_item.rs @@ -13,9 +13,9 @@ use crate::search::notebooks::fuzzy_match::{ use crate::search::result_renderer::ItemHighlightState; use crate::ui_components::icons::Icon; use ordered_float::OrderedFloat; -use warpui::elements::{Container, Flex, Highlight, ParentElement, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::elements::{Container, Flex, Highlight, ParentElement, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; /// Search item result for a cloud notebook. #[derive(Debug)] diff --git a/app/src/search/command_palette/warp_drive/workflow_search_item.rs b/app/src/search/command_palette/warp_drive/workflow_search_item.rs index 4da7dc43..9600ea2e 100644 --- a/app/src/search/command_palette/warp_drive/workflow_search_item.rs +++ b/app/src/search/command_palette/warp_drive/workflow_search_item.rs @@ -11,9 +11,9 @@ use crate::search::workflows::fuzzy_match::FuzzyMatchWorkflowResult; use crate::ui_components::icons::Icon; use crate::workflows::CloudWorkflow; use ordered_float::OrderedFloat; -use warpui::elements::{Clipped, Container, Flex, Highlight, ParentElement, Shrinkable, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::elements::{Clipped, Container, Flex, Highlight, ParentElement, Shrinkable, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{AppContext, Element, SingletonEntity}; /// Search item result for a cloud workflow. #[derive(Debug)] diff --git a/app/src/search/command_palette/zero_state.rs b/app/src/search/command_palette/zero_state.rs index bf06f4b0..c9e987a1 100644 --- a/app/src/search/command_palette/zero_state.rs +++ b/app/src/search/command_palette/zero_state.rs @@ -1,7 +1,7 @@ mod items; pub use items::Items; -use warp_core::context_flag::ContextFlag; -use warp_core::features::FeatureFlag; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::features::FeatureFlag; use crate::appearance::Appearance; use crate::search::command_palette::FilterChipRenderer; @@ -11,8 +11,8 @@ use crate::search::QueryFilter; use crate::settings::AISettings; use crate::workspace::Workspace; use std::collections::HashMap; -use warpui::elements::{Container, Flex, MouseStateHandle, ParentElement, Shrinkable, Wrap}; -use warpui::{ +use galaxyui::elements::{Container, Flex, MouseStateHandle, ParentElement, Shrinkable, Wrap}; +use galaxyui::{ AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, WindowId, }; diff --git a/app/src/search/command_palette/zero_state/items.rs b/app/src/search/command_palette/zero_state/items.rs index 124b59c9..958c62d8 100644 --- a/app/src/search/command_palette/zero_state/items.rs +++ b/app/src/search/command_palette/zero_state/items.rs @@ -3,10 +3,10 @@ use crate::search::command_palette::mixer::CommandPaletteItemAction; use crate::search::result_renderer::QueryResultRenderer; use crate::search::search_bar::SelectionUpdate; -use warpui::elements::{Container, Flex, ParentElement}; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::ui_components::text::WrappableText; -use warpui::{AppContext, Element, Entity, ModelContext, SingletonEntity}; +use galaxyui::elements::{Container, Flex, ParentElement}; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::ui_components::text::WrappableText; +use galaxyui::{AppContext, Element, Entity, ModelContext, SingletonEntity}; /// List of items shown within the zero state. "Recent" items are shown first followed by /// "Suggested" items. diff --git a/app/src/search/command_search/ai_queries/ai_queries_data_source.rs b/app/src/search/command_search/ai_queries/ai_queries_data_source.rs index 8d59ce53..b6c3f574 100644 --- a/app/src/search/command_search/ai_queries/ai_queries_data_source.rs +++ b/app/src/search/command_search/ai_queries/ai_queries_data_source.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::blocklist::BlocklistAIHistoryModel; use crate::search::ai_queries::fuzzy_match::FuzzyMatchAIQueryResults; diff --git a/app/src/search/command_search/ai_queries/ai_queries_search_item.rs b/app/src/search/command_search/ai_queries/ai_queries_search_item.rs index 912496ba..550cec22 100644 --- a/app/src/search/command_search/ai_queries/ai_queries_search_item.rs +++ b/app/src/search/command_search/ai_queries/ai_queries_search_item.rs @@ -5,8 +5,8 @@ use crate::{ }; use chrono::{DateTime, Local}; use ordered_float::OrderedFloat; -use warp_core::ui::builder::MIN_FONT_SIZE; -use warpui::{ +use galaxy_core::ui::builder::MIN_FONT_SIZE; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, MainAxisAlignment, MainAxisSize, ParentElement, Shrinkable, Text, diff --git a/app/src/search/command_search/env_var_collections/env_var_collection_search_item.rs b/app/src/search/command_search/env_var_collections/env_var_collection_search_item.rs index b186d9e9..2250ffeb 100644 --- a/app/src/search/command_search/env_var_collections/env_var_collection_search_item.rs +++ b/app/src/search/command_search/env_var_collections/env_var_collection_search_item.rs @@ -1,6 +1,6 @@ use itertools::Itertools; use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, MainAxisAlignment, MainAxisSize, ParentElement, Text, diff --git a/app/src/search/command_search/env_var_collections/env_var_collections_data_source.rs b/app/src/search/command_search/env_var_collections/env_var_collections_data_source.rs index eac0af29..9ac2a426 100644 --- a/app/src/search/command_search/env_var_collections/env_var_collections_data_source.rs +++ b/app/src/search/command_search/env_var_collections/env_var_collections_data_source.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::model::persistence::CloudModel; diff --git a/app/src/search/command_search/history/history_data_source.rs b/app/src/search/command_search/history/history_data_source.rs index d65255bf..ae03c3e6 100644 --- a/app/src/search/command_search/history/history_data_source.rs +++ b/app/src/search/command_search/history/history_data_source.rs @@ -1,6 +1,6 @@ use futures_lite::future::yield_now; use std::sync::Arc; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::search::async_snapshot_data_source::AsyncSnapshotDataSource; use crate::search::command_search::searcher::CommandSearchItemAction; diff --git a/app/src/search/command_search/history/history_search_item.rs b/app/src/search/command_search/history/history_search_item.rs index c6c2fd04..9aed01a1 100644 --- a/app/src/search/command_search/history/history_search_item.rs +++ b/app/src/search/command_search/history/history_search_item.rs @@ -1,8 +1,8 @@ use crate::ui_components::icons::Icon as UiIcon; use ordered_float::OrderedFloat; use std::sync::Arc; -use warp_core::ui::builder; -use warpui::{ +use galaxy_core::ui::builder; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, Icon, MainAxisAlignment, MainAxisSize, ParentElement, Shrinkable, Text, diff --git a/app/src/search/command_search/notebooks/notebook_search_item.rs b/app/src/search/command_search/notebooks/notebook_search_item.rs index e0bd367a..b74a79f5 100644 --- a/app/src/search/command_search/notebooks/notebook_search_item.rs +++ b/app/src/search/command_search/notebooks/notebook_search_item.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, Flex, Highlight, Icon, MainAxisAlignment, MainAxisSize, ParentElement, Text, diff --git a/app/src/search/command_search/notebooks/notebooks_data_source.rs b/app/src/search/command_search/notebooks/notebooks_data_source.rs index b17db9f6..76277176 100644 --- a/app/src/search/command_search/notebooks/notebooks_data_source.rs +++ b/app/src/search/command_search/notebooks/notebooks_data_source.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use futures_lite::future::yield_now; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::model::persistence::CloudModel; use crate::notebooks::manager::NotebookManager; diff --git a/app/src/search/command_search/projects/project_data_source.rs b/app/src/search/command_search/projects/project_data_source.rs index b80ee9f0..171dc42d 100644 --- a/app/src/search/command_search/projects/project_data_source.rs +++ b/app/src/search/command_search/projects/project_data_source.rs @@ -1,6 +1,6 @@ use fuzzy_match::match_indices_case_insensitive; use itertools::Itertools; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use super::ProjectSearchItem; use crate::projects::ProjectManagementModel; diff --git a/app/src/search/command_search/projects/project_search_item.rs b/app/src/search/command_search/projects/project_search_item.rs index 9c4c7148..3105571e 100644 --- a/app/src/search/command_search/projects/project_search_item.rs +++ b/app/src/search/command_search/projects/project_search_item.rs @@ -2,8 +2,8 @@ use chrono::NaiveDateTime; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; use std::{cmp::Ordering, path::PathBuf}; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{Align, ConstrainedBox, Flex, Highlight, ParentElement, Shrinkable, Text}, fonts::{Properties, Weight}, AppContext, Element, SingletonEntity, diff --git a/app/src/search/command_search/projects/suggested_projects_data_source.rs b/app/src/search/command_search/projects/suggested_projects_data_source.rs index 3ee570d7..c4494df7 100644 --- a/app/src/search/command_search/projects/suggested_projects_data_source.rs +++ b/app/src/search/command_search/projects/suggested_projects_data_source.rs @@ -3,7 +3,7 @@ use fuzzy_match::match_indices_case_insensitive; use itertools::Itertools; use std::collections::{HashMap, HashSet}; use std::path::Path; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use crate::search::command_palette::mixer::CommandPaletteItemAction; use crate::search::command_search::projects::{os_probably_case_sensitive, ProjectSearchItem}; diff --git a/app/src/search/command_search/searcher_test.rs b/app/src/search/command_search/searcher_test.rs index 83daa478..46498818 100644 --- a/app/src/search/command_search/searcher_test.rs +++ b/app/src/search/command_search/searcher_test.rs @@ -18,9 +18,9 @@ use itertools::Itertools; use ordered_float::OrderedFloat; use std::collections::HashSet; use std::time::Duration; -use warpui::r#async::Timer; -use warpui::AppContext; -use warpui::{elements::Empty, App, Element}; +use galaxyui::r#async::Timer; +use galaxyui::AppContext; +use galaxyui::{elements::Empty, App, Element}; #[derive(Clone, Debug)] enum TestItemAction { diff --git a/app/src/search/command_search/view.rs b/app/src/search/command_search/view.rs index ce567f8e..8223ec18 100644 --- a/app/src/search/command_search/view.rs +++ b/app/src/search/command_search/view.rs @@ -7,8 +7,8 @@ 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 warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ resizable_state_handle, Align, AnchorPair, Border, ConstrainedBox, Container, CornerRadius, @@ -589,7 +589,7 @@ impl CommandSearchView { .build() .finish(); let row = Flex::row() - .with_main_axis_size(warpui::elements::MainAxisSize::Max) + .with_main_axis_size(galaxyui::elements::MainAxisSize::Max) .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_child(Shrinkable::new(1., text).finish()); @@ -652,7 +652,7 @@ impl CommandSearchView { Container::new( Flex::row() - .with_main_axis_size(warpui::elements::MainAxisSize::Max) + .with_main_axis_size(galaxyui::elements::MainAxisSize::Max) .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_child(Shrinkable::new(1., text).finish()) .finish(), @@ -671,7 +671,7 @@ impl CommandSearchView { user_id: UserUid, ) -> Box { let mut row = Flex::row() - .with_main_axis_size(warpui::elements::MainAxisSize::Max) + .with_main_axis_size(galaxyui::elements::MainAxisSize::Max) .with_cross_axis_alignment(CrossAxisAlignment::Center); let upgrade_link = team_uid @@ -1010,7 +1010,7 @@ impl View for CommandSearchView { )) } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let mixer = self.mixer.as_ref(app); @@ -1122,7 +1122,7 @@ impl CommandSearchView { pub mod styles { use lazy_static::lazy_static; use pathfinder_color::ColorU; - use warpui::elements::{Border, DropShadow, ScrollbarWidth}; + use galaxyui::elements::{Border, DropShadow, ScrollbarWidth}; use crate::{appearance::Appearance, themes::theme::Fill}; diff --git a/app/src/search/command_search/view_test.rs b/app/src/search/command_search/view_test.rs index 426d0fd5..2ef332b8 100644 --- a/app/src/search/command_search/view_test.rs +++ b/app/src/search/command_search/view_test.rs @@ -1,4 +1,4 @@ -use warpui::{platform::WindowStyle, App}; +use galaxyui::{platform::WindowStyle, App}; use crate::{ cloud_object::model::persistence::CloudModel, diff --git a/app/src/search/command_search/warp_ai.rs b/app/src/search/command_search/warp_ai.rs index 00417b6d..5f04c97c 100644 --- a/app/src/search/command_search/warp_ai.rs +++ b/app/src/search/command_search/warp_ai.rs @@ -30,8 +30,8 @@ use itertools::Itertools; use ordered_float::OrderedFloat; use serde_json::json; use std::{any::Any, sync::Arc}; -use warp_core::ui::builder; -use warpui::{ +use galaxy_core::ui::builder; +use galaxyui::{ elements::{ConstrainedBox, Container, Text}, AppContext, Element, SingletonEntity, }; @@ -75,7 +75,7 @@ impl SearchItem for WarpAISearchItem { let icon = if FeatureFlag::AgentMode.is_enabled() { UIIcon::Oz - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .main_text_color(appearance.theme().accent()), @@ -86,7 +86,7 @@ impl SearchItem for WarpAISearchItem { item_background_color.into_solid(), MinimumAllowedContrast::NonText, ); - UIIcon::AiAssistant.to_warpui_icon(color.into()).finish() + UIIcon::AiAssistant.to_galaxyui_icon(color.into()).finish() }; Container::new( diff --git a/app/src/search/command_search/workflows/cloud_workflows_data_source.rs b/app/src/search/command_search/workflows/cloud_workflows_data_source.rs index 69f889f8..3f035e76 100644 --- a/app/src/search/command_search/workflows/cloud_workflows_data_source.rs +++ b/app/src/search/command_search/workflows/cloud_workflows_data_source.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use futures_lite::future::yield_now; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::model::persistence::CloudModel; use crate::search::async_snapshot_data_source::AsyncSnapshotDataSource; diff --git a/app/src/search/command_search/workflows/workflow_search_item.rs b/app/src/search/command_search/workflows/workflow_search_item.rs index 7248e0b5..1c1573fb 100644 --- a/app/src/search/command_search/workflows/workflow_search_item.rs +++ b/app/src/search/command_search/workflows/workflow_search_item.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ Border, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Highlight, MainAxisAlignment, MainAxisSize, ParentElement, Radius, Shrinkable, Text, @@ -117,7 +117,7 @@ impl SearchItem for WorkflowSearchItem { } else { Icon::Workflow } - .to_warpui_icon(highlight_state.icon_fill(appearance)) + .to_galaxyui_icon(highlight_state.icon_fill(appearance)) .finish(), ) .with_width(appearance.monospace_font_size()) diff --git a/app/src/search/command_search/workflows/workflows_data_source.rs b/app/src/search/command_search/workflows/workflows_data_source.rs index 47e19eac..4c7502ce 100644 --- a/app/src/search/command_search/workflows/workflows_data_source.rs +++ b/app/src/search/command_search/workflows/workflows_data_source.rs @@ -1,6 +1,6 @@ use itertools::Itertools; use std::collections::HashMap; -use warpui::AppContext; +use galaxyui::AppContext; use crate::completer::SessionContext; use crate::search::command_search::settings::CommandSearchSettings; @@ -10,7 +10,7 @@ use crate::workflows::local_workflows::LocalWorkflows; use crate::workflows::local_workflows::UseCache; use crate::workflows::workflow::Workflow; use crate::workflows::{WorkflowSource, WorkflowType}; -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; use super::{WorkflowIdentity, WorkflowSearchItem}; use crate::search::command_search::searcher::CommandSearchItemAction; diff --git a/app/src/search/command_search/zero_state.rs b/app/src/search/command_search/zero_state.rs index ab141638..de6ad7fb 100644 --- a/app/src/search/command_search/zero_state.rs +++ b/app/src/search/command_search/zero_state.rs @@ -1,10 +1,10 @@ use std::collections::HashMap; use lazy_static::lazy_static; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::Wrap; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::Wrap; +use galaxyui::{ elements::{ Container, CornerRadius, Flex, Hoverable, MouseStateHandle, ParentElement, Radius, Text, }, @@ -191,7 +191,7 @@ impl View for CommandSearchZeroStateView { "CommandSearchZeroStateView" } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let command_search_text = Container::new( diff --git a/app/src/search/data_source.rs b/app/src/search/data_source.rs index 832c93e7..05d5cdac 100644 --- a/app/src/search/data_source.rs +++ b/app/src/search/data_source.rs @@ -9,9 +9,9 @@ use serde::{Deserialize, Serialize}; use serde_json::json; use std::any::Any; use std::{collections::HashSet, sync::Arc}; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::Fill; -use warpui::{Action, AppContext, Element, Entity, ModelHandle}; +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}; @@ -307,7 +307,7 @@ impl QueryFilter { QueryFilter::Sessions => "sessions", QueryFilter::Conversations => "conversations", QueryFilter::LaunchConfigurations => "launch configurations", - QueryFilter::Drive => "Warp Drive", + QueryFilter::Drive => "Galaxy Drive", QueryFilter::EnvironmentVariables => "environment variables", QueryFilter::PromptHistory => "prompt history", QueryFilter::Files => "files", diff --git a/app/src/search/external_secrets/external_secret_data_source.rs b/app/src/search/external_secrets/external_secret_data_source.rs index 2ef03721..d2ff1804 100644 --- a/app/src/search/external_secrets/external_secret_data_source.rs +++ b/app/src/search/external_secrets/external_secret_data_source.rs @@ -2,7 +2,7 @@ use crate::external_secrets::ExternalSecret; use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::{DataSourceRunErrorWrapper, SyncDataSource}; use itertools::Itertools; -use warpui::AppContext; +use galaxyui::AppContext; use super::external_secret_fuzzy_match::FuzzyMatchExternalSecretResult; use super::external_secret_search_item::ExternalSecretSearchItem; diff --git a/app/src/search/external_secrets/external_secret_search_item.rs b/app/src/search/external_secrets/external_secret_search_item.rs index ac7e9df7..c67a261f 100644 --- a/app/src/search/external_secrets/external_secret_search_item.rs +++ b/app/src/search/external_secrets/external_secret_search_item.rs @@ -1,5 +1,5 @@ use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ConstrainedBox, Container, Highlight, Text}, fonts::{Properties, Weight}, AppContext, Element, SingletonEntity, @@ -38,7 +38,7 @@ impl SearchItem for ExternalSecretSearchItem { ConstrainedBox::new( self.external_secret .icon() - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(ICON_SIZE) diff --git a/app/src/search/external_secrets/view.rs b/app/src/search/external_secrets/view.rs index db98eb96..91814940 100644 --- a/app/src/search/external_secrets/view.rs +++ b/app/src/search/external_secrets/view.rs @@ -2,7 +2,7 @@ use itertools::Itertools; use lazy_static::lazy_static; use std::{collections::HashSet, ops::Range}; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, Dismiss, Empty, Fill, Flex, ParentElement, Radius, SavePosition, ScrollStateHandle, Scrollable, ScrollableElement, Shrinkable, @@ -367,7 +367,7 @@ impl TypedActionView for ExternalSecretsMenu { pub mod styles { use pathfinder_color::ColorU; - use warpui::elements::{Border, DropShadow, ScrollbarWidth}; + use galaxyui::elements::{Border, DropShadow, ScrollbarWidth}; use crate::{appearance::Appearance, themes::theme::Fill}; diff --git a/app/src/search/files/icon.rs b/app/src/search/files/icon.rs index b09eb2dc..d4871db7 100644 --- a/app/src/search/files/icon.rs +++ b/app/src/search/files/icon.rs @@ -1,6 +1,6 @@ use crate::search::result_renderer::ItemHighlightState; -use warp_core::ui::appearance::Appearance; -use warpui::{elements::Icon, Element}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{elements::Icon, Element}; /// Assumes the path is a file, not a folder pub fn icon_from_file_path( diff --git a/app/src/search/files/model.rs b/app/src/search/files/model.rs index 6d649169..326c801f 100644 --- a/app/src/search/files/model.rs +++ b/app/src/search/files/model.rs @@ -8,7 +8,7 @@ use std::{ collections::HashSet, path::{Path, PathBuf}, }; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { diff --git a/app/src/search/files/model_tests.rs b/app/src/search/files/model_tests.rs index ebffbe1d..f0c04f78 100644 --- a/app/src/search/files/model_tests.rs +++ b/app/src/search/files/model_tests.rs @@ -3,7 +3,7 @@ use super::FileSearchModel; use fuzzy_match::FuzzyMatchResult; use repo_metadata::repositories::DetectedRepositories; use repo_metadata::RepoMetadataModel; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; #[cfg(test)] mod file_search_model_tests { diff --git a/app/src/search/filter_chip_renderer.rs b/app/src/search/filter_chip_renderer.rs index 5462a5f2..93401441 100644 --- a/app/src/search/filter_chip_renderer.rs +++ b/app/src/search/filter_chip_renderer.rs @@ -1,12 +1,12 @@ use crate::appearance::Appearance; use crate::search::QueryFilter; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, Icon, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::platform::Cursor; -use warpui::{Element, EventContext}; +use galaxyui::platform::Cursor; +use galaxyui::{Element, EventContext}; /// Trait to render a filter chip. pub trait FilterChipRenderer { diff --git a/app/src/search/item.rs b/app/src/search/item.rs index 3bdf3064..ca2b2cbb 100644 --- a/app/src/search/item.rs +++ b/app/src/search/item.rs @@ -1,6 +1,6 @@ use ordered_float::OrderedFloat; -use warp_core::ui::theme::Fill; -use warpui::{Action, AppContext, Element}; +use galaxy_core::ui::theme::Fill; +use galaxyui::{Action, AppContext, Element}; use crate::appearance::Appearance; diff --git a/app/src/search/macros.rs b/app/src/search/macros.rs index 89ec0e95..32862ce6 100644 --- a/app/src/search/macros.rs +++ b/app/src/search/macros.rs @@ -45,8 +45,8 @@ pub use get_factor_or_default; /// Here is an example of using this schema to create a simple searcher: /// ``` /// use itertools::Itertools; -/// use warp::define_search_schema; -/// use warp::search::searcher::{SimpleFullTextSearcher, DEFAULT_MEMORY_BUDGET}; +/// use galaxy::define_search_schema; +/// use galaxy::search::searcher::{SimpleFullTextSearcher, DEFAULT_MEMORY_BUDGET}; /// /// define_search_schema!( /// schema_name: MY_SCHEMA, diff --git a/app/src/search/mixer.rs b/app/src/search/mixer.rs index fb597e2d..f38cf4f6 100644 --- a/app/src/search/mixer.rs +++ b/app/src/search/mixer.rs @@ -12,8 +12,8 @@ use std::collections::{HashMap, HashSet}; use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::Arc; use std::time::Duration; -use warpui::r#async::Timer; -use warpui::{Action, AppContext, Entity, ModelContext}; +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. diff --git a/app/src/search/mixer_test.rs b/app/src/search/mixer_test.rs index 1a7fe093..17b02250 100644 --- a/app/src/search/mixer_test.rs +++ b/app/src/search/mixer_test.rs @@ -7,8 +7,8 @@ use crate::server::telemetry::context_provider::AppTelemetryContextProvider; use ordered_float::OrderedFloat; use std::collections::HashSet; use std::time::Duration; -use warpui::r#async::Timer; -use warpui::{App, AppContext, Element}; +use galaxyui::r#async::Timer; +use galaxyui::{App, AppContext, Element}; #[derive(Clone, Debug, PartialEq)] struct TestAction { diff --git a/app/src/search/notebook_embedding/notebooks/notebook_search_item.rs b/app/src/search/notebook_embedding/notebooks/notebook_search_item.rs index e2ebde39..72f351cf 100644 --- a/app/src/search/notebook_embedding/notebooks/notebook_search_item.rs +++ b/app/src/search/notebook_embedding/notebooks/notebook_search_item.rs @@ -1,5 +1,5 @@ use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, MainAxisAlignment, MainAxisSize, ParentElement, Text, @@ -52,7 +52,7 @@ impl SearchItem for NotebookSearchItem { Container::new( ConstrainedBox::new( Icon::Notebook - .to_warpui_icon( + .to_galaxyui_icon( warp_drive_icon_color( appearance, DriveObjectType::Notebook { @@ -117,7 +117,7 @@ impl SearchItem for NotebookSearchItem { .finish(); let warning_icon = ConstrainedBox::new( Icon::Warning - .to_warpui_icon(appearance.theme().ui_warning_color().into()) + .to_galaxyui_icon(appearance.theme().ui_warning_color().into()) .finish(), ) .with_width(warning_font_size) diff --git a/app/src/search/notebook_embedding/notebooks/notebooks_data_source.rs b/app/src/search/notebook_embedding/notebooks/notebooks_data_source.rs index 9af0d22d..c0c4c97f 100644 --- a/app/src/search/notebook_embedding/notebooks/notebooks_data_source.rs +++ b/app/src/search/notebook_embedding/notebooks/notebooks_data_source.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::{CloudObject, Space}; use crate::notebooks::CloudNotebook; diff --git a/app/src/search/notebook_embedding/view.rs b/app/src/search/notebook_embedding/view.rs index cae3e692..7d4f2fdb 100644 --- a/app/src/search/notebook_embedding/view.rs +++ b/app/src/search/notebook_embedding/view.rs @@ -12,7 +12,7 @@ use crate::{ }; use itertools::Itertools; use lazy_static::lazy_static; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, Dismiss, Empty, Fill, Flex, ParentElement, Radius, SavePosition, ScrollStateHandle, Scrollable, ScrollableElement, Shrinkable, @@ -333,7 +333,7 @@ impl View for EmbeddingSearchMenu { } } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); // So that everything lines up correctly, we apply the corner radius and border on the @@ -377,7 +377,7 @@ impl View for EmbeddingSearchMenu { pub mod styles { use pathfinder_color::ColorU; - use warpui::elements::{Border, DropShadow, ScrollbarWidth}; + use galaxyui::elements::{Border, DropShadow, ScrollbarWidth}; use crate::{appearance::Appearance, themes::theme::Fill}; diff --git a/app/src/search/notebook_embedding/workflows/workflow_search_item.rs b/app/src/search/notebook_embedding/workflows/workflow_search_item.rs index 03f0fd94..f068cd59 100644 --- a/app/src/search/notebook_embedding/workflows/workflow_search_item.rs +++ b/app/src/search/notebook_embedding/workflows/workflow_search_item.rs @@ -1,5 +1,5 @@ use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{ Clipped, ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, MainAxisAlignment, MainAxisSize, ParentElement, Shrinkable, Text, @@ -62,7 +62,7 @@ impl SearchItem for WorkflowSearchItem { }; Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color.into()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color.into()).finish()) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish(), @@ -118,7 +118,7 @@ impl SearchItem for WorkflowSearchItem { .finish(); let warning_icon = ConstrainedBox::new( Icon::Warning - .to_warpui_icon(appearance.theme().ui_warning_color().into()) + .to_galaxyui_icon(appearance.theme().ui_warning_color().into()) .finish(), ) .with_width(warning_font_size) diff --git a/app/src/search/notebook_embedding/workflows/workflows_data_source.rs b/app/src/search/notebook_embedding/workflows/workflows_data_source.rs index db0fcda5..5538411f 100644 --- a/app/src/search/notebook_embedding/workflows/workflows_data_source.rs +++ b/app/src/search/notebook_embedding/workflows/workflows_data_source.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::{CloudObject, Space}; use crate::search::notebook_embedding::embedded_fuzzy_match::FuzzyMatchEmbeddedObjectResult; diff --git a/app/src/search/notebooks/fuzzy_match.rs b/app/src/search/notebooks/fuzzy_match.rs index d2ea8f54..6239fe55 100644 --- a/app/src/search/notebooks/fuzzy_match.rs +++ b/app/src/search/notebooks/fuzzy_match.rs @@ -5,7 +5,7 @@ use crate::server::ids::SyncId; use crate::{appearance::Appearance, cloud_object::CloudObject}; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warpui::{ +use galaxyui::{ elements::{Highlight, Text}, AppContext, SingletonEntity, }; diff --git a/app/src/search/palette_styles.rs b/app/src/search/palette_styles.rs index 6070efff..cd9e61a7 100644 --- a/app/src/search/palette_styles.rs +++ b/app/src/search/palette_styles.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::elements::{Border, CornerRadius, DropShadow, Radius, ScrollbarWidth}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{Border, CornerRadius, DropShadow, Radius, ScrollbarWidth}; use crate::search::result_renderer::QueryResultRendererStyles; diff --git a/app/src/search/result_renderer.rs b/app/src/search/result_renderer.rs index 73a50d53..fab8b551 100644 --- a/app/src/search/result_renderer.rs +++ b/app/src/search/result_renderer.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warpui::elements::{Border, DispatchEventResult, DropShadow, Fill as ElementFill}; -use warpui::{ +use galaxyui::elements::{Border, DispatchEventResult, DropShadow, Fill as ElementFill}; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, EventHandler, Flex, Hoverable, MainAxisSize, MouseState, MouseStateHandle, ParentElement, Radius, Shrinkable, diff --git a/app/src/search/search_bar.rs b/app/src/search/search_bar.rs index b6a50b58..d55f830d 100644 --- a/app/src/search/search_bar.rs +++ b/app/src/search/search_bar.rs @@ -1,12 +1,12 @@ use itertools::{Either, Itertools}; -use warp_editor::editor::NavigationKey; -use warpui::elements::ConstrainedBox; -use warpui::FocusContext; +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::ConstrainedBox; +use galaxyui::FocusContext; use std::collections::HashSet; -use warpui::fonts::FamilyId; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{Clipped, Container, CrossAxisAlignment, Flex, ParentElement, Shrinkable, Text}, fonts::{Properties, Style, Weight}, @@ -1014,7 +1014,7 @@ impl View for SearchBar { let magnifying_glass = Container::new( ConstrainedBox::new( Icon::Search - .to_warpui_icon(blended_colors::text_sub(theme, theme.surface_2()).into()) + .to_galaxyui_icon(blended_colors::text_sub(theme, theme.surface_2()).into()) .finish(), ) .with_height(size) diff --git a/app/src/search/search_results_menu/view.rs b/app/src/search/search_results_menu/view.rs index 6407a57c..1591ff2d 100644 --- a/app/src/search/search_results_menu/view.rs +++ b/app/src/search/search_results_menu/view.rs @@ -7,12 +7,12 @@ use crate::search::QueryFilter; use itertools::Itertools; use std::marker::PhantomData; use std::ops::Range; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, Empty, Flex, ParentElement, SavePosition, ScrollStateHandle, Scrollable, ScrollableElement, ScrollbarWidth, Text, UniformList, UniformListState, }; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{ Action, AppContext, Element, Entity, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle, WeakViewHandle, }; @@ -176,7 +176,7 @@ impl SearchResultsMenuView { ScrollbarWidth::Auto, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .finish(), diff --git a/app/src/search/searcher.rs b/app/src/search/searcher.rs index 611123a8..1a454c0c 100644 --- a/app/src/search/searcher.rs +++ b/app/src/search/searcher.rs @@ -25,7 +25,7 @@ use tantivy::tokenizer::{Token, TokenStream, Tokenizer}; use tantivy::{ snippet::SnippetGenerator, Index, IndexReader, IndexWriter, ReloadPolicy, TantivyDocument, Term, }; -use warpui::r#async::{block_on, executor::Background, Timer}; +use galaxyui::r#async::{block_on, executor::Background, Timer}; pub type FullTextSearchDocumentEntry = HashMap; diff --git a/app/src/search/searcher_test.rs b/app/src/search/searcher_test.rs index 05d00028..99c7926d 100644 --- a/app/src/search/searcher_test.rs +++ b/app/src/search/searcher_test.rs @@ -3,7 +3,7 @@ use crate::search::searcher::{CustomTokenizer, MIN_MEMORY_BUDGET}; use itertools::Itertools; use std::sync::Arc; use tantivy::tokenizer::{TextAnalyzer, Token}; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; fn token_stream_helper(text: &str) -> Vec { let mut a = TextAnalyzer::from(CustomTokenizer::default()); diff --git a/app/src/search/slash_command_menu/static_commands/bindings.rs b/app/src/search/slash_command_menu/static_commands/bindings.rs index 4574aed7..7a2f2df7 100644 --- a/app/src/search/slash_command_menu/static_commands/bindings.rs +++ b/app/src/search/slash_command_menu/static_commands/bindings.rs @@ -1,4 +1,4 @@ -use warpui::keymap::{BindingDescription, PerPlatformKeystroke}; +use galaxyui::keymap::{BindingDescription, PerPlatformKeystroke}; use super::StaticCommand; diff --git a/app/src/search/slash_command_menu/static_commands/commands.rs b/app/src/search/slash_command_menu/static_commands/commands.rs index 48e614ab..29207dc8 100644 --- a/app/src/search/slash_command_menu/static_commands/commands.rs +++ b/app/src/search/slash_command_menu/static_commands/commands.rs @@ -2,7 +2,7 @@ use std::{collections::HashMap, sync::LazyLock}; use serde::{Deserialize, Serialize}; use uuid::Uuid; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::search::slash_command_menu::{static_commands::Argument, StaticCommand}; diff --git a/app/src/search/welcome_palette/view.rs b/app/src/search/welcome_palette/view.rs index 04a82d4b..02f8342a 100644 --- a/app/src/search/welcome_palette/view.rs +++ b/app/src/search/welcome_palette/view.rs @@ -6,17 +6,17 @@ use std::sync::Arc; use chrono::Utc; use itertools::Itertools as _; use pathfinder_geometry::vector::vec2f; -use warp_core::context_flag::ContextFlag; -use warp_core::features::FeatureFlag; -use warpui::elements::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::{ Border, ChildView, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, Fill, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, SavePosition, Shrinkable, }; -use warpui::platform::Cursor; -use warpui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; -use warpui::ui_components::components::UiComponent as _; -use warpui::{ +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; +use galaxyui::ui_components::components::UiComponent as _; +use galaxyui::{ units::{IntoPixels, Pixels}, AppContext, Element, Entity, FocusContext, ModelHandle, SingletonEntity, TypedActionView, ViewContext, ViewHandle, @@ -161,7 +161,7 @@ impl TypedActionView for WelcomePalette { } } -impl warpui::View for WelcomePalette { +impl galaxyui::View for WelcomePalette { fn ui_name() -> &'static str { "WelcomePalette" } @@ -704,7 +704,7 @@ impl WelcomePalette { Some(keystroke) => format!("Add repository {keystroke}"), None => "Add repository".to_string(), }, - Icon::Plus.to_warpui_icon(theme.foreground()), + Icon::Plus.to_galaxyui_icon(theme.foreground()), MainAxisSize::Max, MainAxisAlignment::Center, vec2f(16., 16.), @@ -727,7 +727,7 @@ impl WelcomePalette { Some(keystroke) => format!("Terminal session {keystroke}"), None => "Terminal session".to_string(), }, - Icon::Terminal.to_warpui_icon(theme.foreground()), + Icon::Terminal.to_galaxyui_icon(theme.foreground()), MainAxisSize::Max, MainAxisAlignment::Center, vec2f(16., 16.), @@ -832,11 +832,11 @@ impl WelcomePalette { } } - /// Dispatches `action` to the correct window and [`warpui::View`] by using the current state of + /// Dispatches `action` to the correct window and [`galaxyui::View`] by using the current state of /// the [`BindingSource`] model. fn dispatch_typed_action_on_view( &self, - action: &dyn warpui::Action, + action: &dyn galaxyui::Action, ctx: &mut ViewContext, ) { send_telemetry_from_ctx!( diff --git a/app/src/search_bar.rs b/app/src/search_bar.rs index cfc173bc..8e5d7b05 100644 --- a/app/src/search_bar.rs +++ b/app/src/search_bar.rs @@ -1,6 +1,6 @@ use crate::{appearance::Appearance, editor::EditorView}; -use warpui::SingletonEntity; -use warpui::{ +use galaxyui::SingletonEntity; +use galaxyui::{ elements::{ Border, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, EventHandler, Flex, Icon, ParentElement, Radius, Shrinkable, @@ -43,7 +43,7 @@ impl View for SearchBar { "SearchBar" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let styles = { let appearance = Appearance::as_ref(app); let context_styles = UiComponentStyles { diff --git a/app/src/server/block.rs b/app/src/server/block.rs index 4543c46b..06991ad1 100644 --- a/app/src/server/block.rs +++ b/app/src/server/block.rs @@ -5,7 +5,7 @@ use crate::terminal::model::{ }; use chrono::{DateTime, FixedOffset, Utc}; use serde::{Deserialize, Serialize}; -use warp_graphql::mutations::share_block::DisplaySetting as GqlDisplaySetting; +use galaxy_graphql::mutations::share_block::DisplaySetting as GqlDisplaySetting; // These are pixel heights of various parts of an embedded block. pub const TITLE_HEIGHT: u32 = 34; diff --git a/app/src/server/cloud_objects/fake_object_client.rs b/app/src/server/cloud_objects/fake_object_client.rs index 6dc126bc..fcc2ec3a 100644 --- a/app/src/server/cloud_objects/fake_object_client.rs +++ b/app/src/server/cloud_objects/fake_object_client.rs @@ -23,7 +23,7 @@ use anyhow::{anyhow, Result}; use async_channel::Sender; use async_trait::async_trait; use chrono::{DateTime, Utc}; -use warp_graphql::object_permissions::AccessLevel; +use galaxy_graphql::object_permissions::AccessLevel; use crate::{ cloud_object::{ diff --git a/app/src/server/cloud_objects/listener.rs b/app/src/server/cloud_objects/listener.rs index a8a24482..b3d66fd7 100644 --- a/app/src/server/cloud_objects/listener.rs +++ b/app/src/server/cloud_objects/listener.rs @@ -22,12 +22,12 @@ use super::update_manager::UpdateManager; use chrono::{DateTime, Utc}; use futures_util::stream::AbortHandle; use std::time::Duration; -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; use async_channel::Sender; use std::sync::Arc; -use warpui::{Entity, ModelContext, RequestState, SingletonEntity}; +use galaxyui::{Entity, ModelContext, RequestState, SingletonEntity}; use instant::Instant; diff --git a/app/src/server/cloud_objects/test_utils.rs b/app/src/server/cloud_objects/test_utils.rs index 09ffc8c4..68d44e91 100644 --- a/app/src/server/cloud_objects/test_utils.rs +++ b/app/src/server/cloud_objects/test_utils.rs @@ -7,8 +7,8 @@ use std::{ }; use settings::manager::SettingsManager; -use warp_core::execution_mode::{AppExecutionMode, ExecutionMode}; -use warpui::{App, ModelHandle, SingletonEntity}; +use galaxy_core::execution_mode::{AppExecutionMode, ExecutionMode}; +use galaxyui::{App, ModelHandle, SingletonEntity}; use crate::{ auth::{auth_manager::AuthManager, AuthStateProvider}, diff --git a/app/src/server/cloud_objects/update_manager.rs b/app/src/server/cloud_objects/update_manager.rs index b47e4048..9dd36490 100644 --- a/app/src/server/cloud_objects/update_manager.rs +++ b/app/src/server/cloud_objects/update_manager.rs @@ -79,13 +79,13 @@ use std::collections::{HashMap, HashSet}; use std::future::Future; use std::sync::{mpsc::SyncSender, Arc}; use std::time::Duration; -use warp_core::features::FeatureFlag; -use warp_graphql::mcp_gallery_template::MCPGalleryTemplate; -use warp_graphql::object_permissions::AccessLevel; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::r#async::{FutureId, Timer}; -use warpui::{duration_with_jitter, AppContext}; -use warpui::{Entity, ModelContext, RequestState, RetryOption, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxy_graphql::mcp_gallery_template::MCPGalleryTemplate; +use galaxy_graphql::object_permissions::AccessLevel; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::r#async::{FutureId, Timer}; +use galaxyui::{duration_with_jitter, AppContext}; +use galaxyui::{Entity, ModelContext, RequestState, RetryOption, SingletonEntity}; use super::listener::ObjectUpdateMessage; @@ -2703,8 +2703,8 @@ impl UpdateManager { ctx: &mut ModelContext, ) where P: 'static + FnMut(Arc) -> S, - S: warpui::r#async::Spawnable + Future>, - ::Output: warpui::r#async::SpawnableOutput, + S: galaxyui::r#async::Spawnable + Future>, + ::Output: galaxyui::r#async::SpawnableOutput, F: 'static + FnMut(R, &mut AppContext) -> Option, { let object_client = self.object_client.clone(); @@ -2765,8 +2765,8 @@ impl UpdateManager { mut on_success: impl FnMut(&mut Self, M, &mut ModelContext) + 'static, ) where P: 'static + FnMut(Arc) -> S, - S: warpui::r#async::Spawnable + Future>, - ::Output: warpui::r#async::SpawnableOutput, + S: galaxyui::r#async::Spawnable + Future>, + ::Output: galaxyui::r#async::SpawnableOutput, { let cloud_model = CloudModel::handle(ctx); let uid = server_id.uid(); diff --git a/app/src/server/cloud_objects/update_manager_test.rs b/app/src/server/cloud_objects/update_manager_test.rs index 0b111fe8..9d02760f 100644 --- a/app/src/server/cloud_objects/update_manager_test.rs +++ b/app/src/server/cloud_objects/update_manager_test.rs @@ -3,9 +3,9 @@ use std::{collections::HashMap, sync::Arc, time::Duration}; use chrono::{DateTime, Utc}; use futures_lite::future; use settings::{RespectUserSyncSetting, SyncToCloud}; -use warp_core::features::FeatureFlag; -use warp_graphql::{object_permissions::AccessLevel, scalars::time::ServerTimestamp}; -use warpui::{App, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxy_graphql::{object_permissions::AccessLevel, scalars::time::ServerTimestamp}; +use galaxyui::{App, ModelHandle, SingletonEntity}; #[cfg(test)] use crate::server::server_api::object::MockObjectClient; @@ -1666,7 +1666,7 @@ fn test_sync_state_after_creation_failure_item_not_in_sync_queue() { .await; // await long enough that all the sync queue retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; // because there aren't any items in the sync queue left for this object, // it should be marked as errored @@ -1758,7 +1758,7 @@ fn test_sync_state_after_update_failure_item_in_sync_queue() { .await; // await long enough that all the sync queue retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; // because notebook updates are dependent on one another, all should have registered // as failed and there should be no updates left in the sync queue. @@ -2580,7 +2580,7 @@ fn test_metadata_after_trash_item_failure() { .await; // await long enough that all the trash object retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; assert_trashed_status_for_object(&mut app, &sync_id.uid(), false); assert_pending_status_for_object(&mut app, &sync_id.uid(), false); @@ -5761,7 +5761,7 @@ fn test_move_object_personal_to_team_failure() { .await; // await long enough that all the move object retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; assert_pending_online_only_change_for_object(&mut app, &sync_id.uid(), false); @@ -6096,7 +6096,7 @@ fn test_move_workflow_with_enums_personal_to_team_failure() { .await; // await long enough that all the move object retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; // The workflow and enum should remain in the personal space assert_pending_online_only_change_for_object(&mut app, &workflow_sync_id.uid(), false); @@ -6341,7 +6341,7 @@ fn test_move_object_root_to_folder_failure() { .await; // await long enough that all the move object retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; assert_pending_online_only_change_for_object(&mut app, &sync_id.uid(), false); @@ -6533,7 +6533,7 @@ fn test_move_object_folder_to_root_failure() { .await; // await long enough that all the move object retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; assert_pending_online_only_change_for_object(&mut app, &sync_id.uid(), false); @@ -6729,7 +6729,7 @@ fn test_move_object_folder_to_folder_failure() { .await; // await long enough that all the move object retries are exhausted - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; assert_pending_online_only_change_for_object(&mut app, &sync_id.uid(), false); @@ -7496,7 +7496,7 @@ fn test_add_guest_failure() { ctx.await_spawned_future(update_manager.spawned_futures[0]) }) .await; - warpui::r#async::Timer::after(Duration::from_secs(10)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(10)).await; assert_pending_online_only_change_for_object(&mut app, &uid, false); diff --git a/app/src/server/experiments/convert.rs b/app/src/server/experiments/convert.rs index f6ac2192..27e0fa4e 100644 --- a/app/src/server/experiments/convert.rs +++ b/app/src/server/experiments/convert.rs @@ -3,7 +3,7 @@ use std::fmt::{Display, Formatter}; use anyhow::{Ok, Result}; -use warp_graphql::experiment::Experiment; +use galaxy_graphql::experiment::Experiment; use super::ServerExperiment; diff --git a/app/src/server/experiments/mod.rs b/app/src/server/experiments/mod.rs index c325b57e..9b6fd498 100644 --- a/app/src/server/experiments/mod.rs +++ b/app/src/server/experiments/mod.rs @@ -14,11 +14,11 @@ use crate::features::FeatureFlag; use crate::workspaces::user_workspaces::UserWorkspaces; use crate::workspaces::workspace::CustomerType; -use warpui::AppContext; +use galaxyui::AppContext; #[cfg(not(test))] -use warpui::SingletonEntity as _; +use galaxyui::SingletonEntity as _; #[cfg(test)] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; mod convert; mod model; diff --git a/app/src/server/experiments/model.rs b/app/src/server/experiments/model.rs index ee260cb4..3e9f66b8 100644 --- a/app/src/server/experiments/model.rs +++ b/app/src/server/experiments/model.rs @@ -5,7 +5,7 @@ use std::collections::HashSet; use super::ServerExperiment; use crate::{persistence::ModelEvent, report_if_error, GlobalResourceHandlesProvider}; use anyhow::Context; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[cfg(test)] pub use tests::TestModel; diff --git a/app/src/server/experiments/model_tests.rs b/app/src/server/experiments/model_tests.rs index 06d9d925..5ef8b87a 100644 --- a/app/src/server/experiments/model_tests.rs +++ b/app/src/server/experiments/model_tests.rs @@ -1,6 +1,6 @@ use super::{ServerExperiment, ServerExperiments}; use crate::{GlobalResourceHandles, GlobalResourceHandlesProvider}; -use warpui::{App, Entity, SingletonEntity}; +use galaxyui::{App, Entity, SingletonEntity}; /// A model for testing purposes only. /// diff --git a/app/src/server/graphql/mod.rs b/app/src/server/graphql/mod.rs index a7db865a..d3fc1a0f 100644 --- a/app/src/server/graphql/mod.rs +++ b/app/src/server/graphql/mod.rs @@ -1,7 +1,7 @@ pub mod schema; -use warp_graphql::client::RequestOptions; -pub use warp_graphql::client::{get_request_context, get_user_facing_error_message, GraphQLError}; +use galaxy_graphql::client::RequestOptions; +pub use galaxy_graphql::client::{get_request_context, get_user_facing_error_message, GraphQLError}; /// Returns the default [`RequestOptions`] that should be used for a GraphQL request. pub fn default_request_options() -> RequestOptions { diff --git a/app/src/server/graphql/schema/mod.rs b/app/src/server/graphql/schema/mod.rs index 07f1fda0..c723404f 100644 --- a/app/src/server/graphql/schema/mod.rs +++ b/app/src/server/graphql/schema/mod.rs @@ -19,7 +19,7 @@ use crate::{ }; use anyhow::{bail, Result}; -use warp_graphql::{ +use galaxy_graphql::{ generic_string_object::GenericStringObjectFormat, mutations::update_generic_string_object::{ GenericStringObjectUpdate, UpdateGenericStringObjectResult, diff --git a/app/src/server/graphql/schema/util.rs b/app/src/server/graphql/schema/util.rs index e2196234..315a6ff7 100644 --- a/app/src/server/graphql/schema/util.rs +++ b/app/src/server/graphql/schema/util.rs @@ -7,10 +7,10 @@ use crate::cloud_object::{GenericStringObjectUniqueKey, UniquePer}; use crate::server::ids::{HashedSqliteId, ObjectUid, ServerId, SyncId}; impl From - for warp_graphql::generic_string_object::GenericStringObjectUniqueKey + for galaxy_graphql::generic_string_object::GenericStringObjectUniqueKey { fn from(key: GenericStringObjectUniqueKey) -> Self { - use warp_graphql::generic_string_object::GenericStringObjectUniqueKey as GraphQLFormat; + use galaxy_graphql::generic_string_object::GenericStringObjectUniqueKey as GraphQLFormat; GraphQLFormat { key: key.key, unique_per: key.unique_per.into(), @@ -18,40 +18,40 @@ impl From } } -impl From for warp_graphql::generic_string_object::UniquePer { +impl From for galaxy_graphql::generic_string_object::UniquePer { fn from(unique_per: UniquePer) -> Self { - use warp_graphql::generic_string_object::UniquePer as GraphQLUniquePer; + use galaxy_graphql::generic_string_object::UniquePer as GraphQLUniquePer; match unique_per { UniquePer::User => GraphQLUniquePer::User, } } } -impl From for warp_graphql::object_actions::ActionType { +impl From for galaxy_graphql::object_actions::ActionType { fn from(action: ObjectActionType) -> Self { match action { - ObjectActionType::Execute => warp_graphql::object_actions::ActionType::Executed, + ObjectActionType::Execute => galaxy_graphql::object_actions::ActionType::Executed, } } } /// Converts the graphql action type ("EXECUTED", etc) to ObjectActionType. fn try_into_object_action_type( - action_type: warp_graphql::object_actions::ActionType, + action_type: galaxy_graphql::object_actions::ActionType, ) -> Result { match action_type { - warp_graphql::object_actions::ActionType::Executed => Ok(ObjectActionType::Execute), + galaxy_graphql::object_actions::ActionType::Executed => Ok(ObjectActionType::Execute), } } /// Converts the graphql action entry (SingleAction, BundledActions) into its ObjectAction corollary. fn try_into_object_action( - record: &warp_graphql::object_actions::ActionRecord, + record: &galaxy_graphql::object_actions::ActionRecord, uid: ObjectUid, hashed_sqlite_id: HashedSqliteId, ) -> Result { match record { - warp_graphql::object_actions::ActionRecord::SingleAction(s) => Ok(ObjectAction { + galaxy_graphql::object_actions::ActionRecord::SingleAction(s) => Ok(ObjectAction { action_type: try_into_object_action_type(s.action_type)?, action_subtype: ObjectActionSubtype::SingleAction { timestamp: s.timestamp.utc(), @@ -62,7 +62,7 @@ fn try_into_object_action( uid, hashed_sqlite_id, }), - warp_graphql::object_actions::ActionRecord::BundledActions(b) => Ok(ObjectAction { + galaxy_graphql::object_actions::ActionRecord::BundledActions(b) => Ok(ObjectAction { action_type: try_into_object_action_type(b.action_type)?, action_subtype: ObjectActionSubtype::BundledActions { count: b.count, @@ -73,7 +73,7 @@ fn try_into_object_action( uid, hashed_sqlite_id, }), - warp_graphql::object_actions::ActionRecord::Unknown => { + galaxy_graphql::object_actions::ActionRecord::Unknown => { Err(anyhow!("Unknown object action subtype")) } } @@ -81,7 +81,7 @@ fn try_into_object_action( /// Converts the graphql action history type into an ObjectActionHistory, requires converting /// the individual actions, action types, and action subtypes. -impl TryInto for warp_graphql::object_actions::ObjectActionHistory { +impl TryInto for galaxy_graphql::object_actions::ObjectActionHistory { type Error = anyhow::Error; fn try_into(self) -> Result { let uid: ObjectUid = self.uid.into_inner(); diff --git a/app/src/server/ids.rs b/app/src/server/ids.rs index 664e792e..2e9bc990 100644 --- a/app/src/server/ids.rs +++ b/app/src/server/ids.rs @@ -1,5 +1,5 @@ -// Re-export types from warp_server_client. -pub use warp_server_client::ids::{ +// Re-export types from galaxy_server_client. +pub use galaxy_server_client::ids::{ parse_sqlite_id_to_uid, ApiKeyUid, ClientId, HashableId, HashedSqliteId, ObjectUid, ServerId, ServerIdAndType, SyncId, ToServerId, }; @@ -9,7 +9,7 @@ pub use warp_server_client::ids::{ /// Takes type and desired prefix for HashableId. /// /// Note: This macro uses `$crate::server::ids::*` paths, so it only works within the warp crate. -/// For types defined in warp_server_client, use `warp_server_client::server_id_traits!` instead. +/// For types defined in galaxy_server_client, use `galaxy_server_client::server_id_traits!` instead. #[macro_export] macro_rules! server_id_traits { ($t:ty, $prefix:literal) => { diff --git a/app/src/server/mod.rs b/app/src/server/mod.rs index 4369bec8..9bfec97b 100644 --- a/app/src/server/mod.rs +++ b/app/src/server/mod.rs @@ -14,4 +14,4 @@ pub mod telemetry; pub(crate) mod telemetry_ext; pub mod voice_transcriber; -pub use warp_core::operating_system_info::OperatingSystemInfo; +pub use galaxy_core::operating_system_info::OperatingSystemInfo; diff --git a/app/src/server/network_log_pane_manager.rs b/app/src/server/network_log_pane_manager.rs index cb37d5e8..76a4cbd3 100644 --- a/app/src/server/network_log_pane_manager.rs +++ b/app/src/server/network_log_pane_manager.rs @@ -4,7 +4,7 @@ //! Mirrors the pattern used by [`crate::ai::execution_profiles::editor::manager::ExecutionProfileEditorManager`]. use std::collections::HashMap; -use warpui::{Entity, SingletonEntity, WindowId}; +use galaxyui::{Entity, SingletonEntity, WindowId}; use crate::workspace::PaneViewLocator; diff --git a/app/src/server/network_log_view.rs b/app/src/server/network_log_view.rs index 19d3bf70..fca30ac0 100644 --- a/app/src/server/network_log_view.rs +++ b/app/src/server/network_log_view.rs @@ -8,10 +8,10 @@ //! so the user can pick up items captured since the pane was opened. The //! pane header also exposes a refresh icon that reloads the snapshot in //! place. -use warp_editor::content::buffer::InitialBufferState; -use warp_editor::render::element::VerticalExpansionBehavior; -use warp_util::path::LineAndColumnArg; -use warpui::{ +use galaxy_editor::content::buffer::InitialBufferState; +use galaxy_editor::render::element::VerticalExpansionBehavior; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{ elements::{ChildView, MouseStateHandle}, text_layout::ClipConfig, ui_components::components::UiComponent, diff --git a/app/src/server/network_logging.rs b/app/src/server/network_logging.rs index 6f9a68c2..137d041d 100644 --- a/app/src/server/network_logging.rs +++ b/app/src/server/network_logging.rs @@ -3,7 +3,7 @@ use std::fmt; use bounded_vec_deque::BoundedVecDeque; use chrono::{DateTime, FixedOffset}; use enclose::enclose; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::server::datetime_ext::DateTimeExt; use crate::server::server_api::ServerApiProvider; diff --git a/app/src/server/network_logging_tests.rs b/app/src/server/network_logging_tests.rs index 9efdaf0f..fc226335 100644 --- a/app/src/server/network_logging_tests.rs +++ b/app/src/server/network_logging_tests.rs @@ -1,5 +1,5 @@ use super::{NetworkLogItem, NetworkLogModel, NETWORK_LOGGING_MAX_ITEMS}; -use warpui::App; +use galaxyui::App; #[test] fn empty_snapshot_is_empty_string() { diff --git a/app/src/server/retry_strategies.rs b/app/src/server/retry_strategies.rs index 2d4deee0..a9c9edc0 100644 --- a/app/src/server/retry_strategies.rs +++ b/app/src/server/retry_strategies.rs @@ -1,5 +1,5 @@ use std::time::Duration; -use warpui::RetryOption; +use galaxyui::RetryOption; use crate::server::server_api::presigned_upload::HttpStatusError; diff --git a/app/src/server/server_api.rs b/app/src/server/server_api.rs index 0c31d7d4..6b3935b5 100644 --- a/app/src/server/server_api.rs +++ b/app/src/server/server_api.rs @@ -34,10 +34,10 @@ use prost::Message; use referral::ReferralsClient; use team::TeamClient; use url::Url; -use warp_core::context_flag::ContextFlag; -use warp_core::errors::{register_error, AnyhowErrorExt, ErrorExt}; -use warp_managed_secrets::client::ManagedSecretsClient; -use warpui::{r#async::BoxFuture, ModelContext}; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::errors::{register_error, AnyhowErrorExt, ErrorExt}; +use galaxy_managed_secrets::client::ManagedSecretsClient; +use galaxyui::{r#async::BoxFuture, ModelContext}; use workspace::WorkspaceClient; use crate::server::telemetry::TelemetryApi; @@ -58,9 +58,9 @@ use std::fmt; use std::path::Path; use std::sync::Arc; use std::time::Duration; -use warp_core::telemetry::TelemetryEvent; -use warpui::Entity; -use warpui::SingletonEntity; +use galaxy_core::telemetry::TelemetryEvent; +use galaxyui::Entity; +use galaxyui::SingletonEntity; use super::experiments::ServerExperiment; use super::experiments::ServerExperiments; @@ -401,7 +401,7 @@ pub struct ServerApi { // We technically use OAuth2 for headless device authentication. oauth_client: self::auth::OAuth2Client, /// Cached ambient workload token for requests from ambient agents. - ambient_workload_token: Arc>>, + ambient_workload_token: Arc>>, /// The ambient agent task ID for requests from cloud agents. ambient_agent_task_id: Arc>>, /// The source of agent runs (e.g. CLI, GitHub Action). Set once at startup and immutable. @@ -491,8 +491,9 @@ impl ServerApi { } fn create_oauth_client() -> self::auth::OAuth2Client { - let server_root = - Url::parse(&ChannelState::server_root_url()).expect("Server root URL must be valid"); + let server_root_str = ChannelState::server_root_url(); + let server_root = Url::parse(&server_root_str) + .unwrap_or_else(|_| Url::parse("http://localhost").unwrap()); let token_url = server_root .join("/api/v1/oauth/token") @@ -507,7 +508,7 @@ impl ServerApi { .set_device_authorization_url(oauth2::DeviceAuthorizationUrl::from_url(device_url)) } - pub fn send_graphql_request<'a, QF, O: warp_graphql::client::Operation + Send + 'a>( + pub fn send_graphql_request<'a, QF, O: galaxy_graphql::client::Operation + Send + 'a>( &'a self, operation: O, timeout: Option, @@ -541,7 +542,7 @@ impl ServerApi { headers.insert(name.to_string(), value); } - let options = warp_graphql::client::RequestOptions { + let options = galaxy_graphql::client::RequestOptions { auth_token: auth_token.bearer_token(), timeout, headers, diff --git a/app/src/server/server_api/ai.rs b/app/src/server/server_api/ai.rs index 84285c1d..432e2394 100644 --- a/app/src/server/server_api/ai.rs +++ b/app/src/server/server_api/ai.rs @@ -11,8 +11,8 @@ use std::{ collections::{HashMap, HashSet}, time::Duration, }; -use warp_core::channel::ChannelState; -use warp_core::{features::FeatureFlag, report_error}; +use galaxy_core::channel::ChannelState; +use galaxy_core::{features::FeatureFlag, report_error}; use warp_multi_agent_api::ConversationData; use super::auth::AuthClient; @@ -61,12 +61,12 @@ use ai::index::full_source_code_embedding::{ store_client::{IntermediateNode, StoreClient}, CodebaseContextConfig, ContentHash, EmbeddingConfig, NodeHash, RepoMetadata, }; -use warp_graphql::client::Operation; +use galaxy_graphql::client::Operation; #[cfg(not(feature = "agent_mode_evals"))] -use warp_graphql::queries::get_request_limit_info::{ +use galaxy_graphql::queries::get_request_limit_info::{ GetRequestLimitInfo, GetRequestLimitInfoVariables, }; -use warp_graphql::{ +use galaxy_graphql::{ ai::{AgentTaskState, PlatformErrorCode}, mutations::{ confirm_file_artifact_upload::{ @@ -961,7 +961,7 @@ pub trait AIClient: 'static + Send + Sync { } fn into_file_artifact_record( - artifact: warp_graphql::mutations::create_file_artifact_upload_target::FileArtifact, + artifact: galaxy_graphql::mutations::create_file_artifact_upload_target::FileArtifact, ) -> FileArtifactRecord { FileArtifactRecord { artifact_uid: artifact.artifact_uid.into_inner(), @@ -1122,7 +1122,7 @@ impl AIClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; match response.user { - warp_graphql::queries::get_request_limit_info::UserResult::UserOutput(user_output) => { + galaxy_graphql::queries::get_request_limit_info::UserResult::UserOutput(user_output) => { let request_limit_info = user_output.user.request_limit_info.into(); let workspace_bonus_grants = user_output @@ -1158,10 +1158,10 @@ impl AIClient for ServerApi { bonus_grants, }) } - warp_graphql::queries::get_request_limit_info::UserResult::UserFacingError(e) => { + galaxy_graphql::queries::get_request_limit_info::UserResult::UserFacingError(e) => { Err(anyhow!(get_user_facing_error_message(e))) } - warp_graphql::queries::get_request_limit_info::UserResult::Unknown => { + galaxy_graphql::queries::get_request_limit_info::UserResult::Unknown => { Err(anyhow!("failed to get request limit info")) } } @@ -1175,9 +1175,9 @@ impl AIClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; match response.user { - warp_graphql::queries::get_feature_model_choices::UserResult::UserOutput( - warp_graphql::queries::get_feature_model_choices::UserOutput { - user: warp_graphql::queries::get_feature_model_choices::User { mut workspaces }, + galaxy_graphql::queries::get_feature_model_choices::UserResult::UserOutput( + galaxy_graphql::queries::get_feature_model_choices::UserOutput { + user: galaxy_graphql::queries::get_feature_model_choices::User { mut workspaces }, }, ) if !workspaces.is_empty() => { // This is safe (`remove()` can panic) because we ensure workspaces is non-empty @@ -1211,7 +1211,7 @@ impl AIClient for ServerApi { let response = operation .send_request( self.client.clone(), - warp_graphql::client::RequestOptions { + galaxy_graphql::client::RequestOptions { auth_token, ..default_request_options() }, @@ -1483,7 +1483,7 @@ impl AIClient for ServerApi { &self, server_conversation_token: ServerConversationToken, ) -> anyhow::Result<(ConversationData, ServerAIConversationMetadata), anyhow::Error> { - use warp_graphql::queries::list_ai_conversations::{ + use galaxy_graphql::queries::list_ai_conversations::{ ListAIConversations, ListAIConversationsInput, ListAIConversationsResult, ListAIConversationsVariables, }; @@ -1531,7 +1531,7 @@ impl AIClient for ServerApi { if !FeatureFlag::CloudConversations.is_enabled() { return Ok(vec![]); } - use warp_graphql::queries::list_ai_conversations::{ + use galaxy_graphql::queries::list_ai_conversations::{ ListAIConversationMetadata, ListAIConversationMetadataResult, ListAIConversationMetadataVariables, ListAIConversationsInput, }; @@ -1571,11 +1571,11 @@ impl AIClient for ServerApi { &self, server_conversation_token: ServerConversationToken, ) -> anyhow::Result { - use warp_graphql::queries::get_ai_conversation_format::{ + use galaxy_graphql::queries::get_ai_conversation_format::{ GetAIConversationFormat, GetAIConversationFormatResult, GetAIConversationFormatVariables, }; - use warp_graphql::queries::list_ai_conversations::ListAIConversationsInput; + use galaxy_graphql::queries::list_ai_conversations::ListAIConversationsInput; let conversation_id = server_conversation_token.as_str().to_string(); let operation = GetAIConversationFormat::build(GetAIConversationFormatVariables { @@ -1958,13 +1958,13 @@ impl AIClient for ServerApi { } } -impl TryFrom +impl TryFrom for ModelsByFeature { type Error = anyhow::Error; fn try_from( - value: warp_graphql::queries::get_feature_model_choices::FeatureModelChoice, + value: galaxy_graphql::queries::get_feature_model_choices::FeatureModelChoice, ) -> Result { Ok(Self { agent_mode: value.agent_mode.try_into()?, @@ -1975,10 +1975,10 @@ impl TryFrom for ModelsByFeature { +impl TryFrom for ModelsByFeature { type Error = anyhow::Error; - fn try_from(value: warp_graphql::workspace::FeatureModelChoice) -> Result { + fn try_from(value: galaxy_graphql::workspace::FeatureModelChoice) -> Result { Ok(Self { agent_mode: value.agent_mode.try_into()?, coding: value.coding.try_into()?, @@ -1988,11 +1988,11 @@ impl TryFrom for ModelsByFeature { } } -impl TryFrom for AvailableLLMs { +impl TryFrom for AvailableLLMs { type Error = anyhow::Error; fn try_from( - value: warp_graphql::queries::get_feature_model_choices::AvailableLlms, + value: galaxy_graphql::queries::get_feature_model_choices::AvailableLlms, ) -> Result { Self::new( value.default_id.into(), @@ -2002,10 +2002,10 @@ impl TryFrom fo } } -impl TryFrom for AvailableLLMs { +impl TryFrom for AvailableLLMs { type Error = anyhow::Error; - fn try_from(value: warp_graphql::workspace::AvailableLlms) -> Result { + fn try_from(value: galaxy_graphql::workspace::AvailableLlms) -> Result { Self::new( value.default_id.into(), value.choices.into_iter().map(LLMInfo::from), @@ -2014,8 +2014,8 @@ impl TryFrom for AvailableLLMs { } } -impl From for LLMInfo { - fn from(value: warp_graphql::queries::get_feature_model_choices::LlmInfo) -> Self { +impl From for LLMInfo { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::LlmInfo) -> Self { let host_configs = { let mut map = std::collections::HashMap::new(); for config in value.host_configs { @@ -2047,8 +2047,8 @@ impl From for LLMInfo } } -impl From for LLMInfo { - fn from(value: warp_graphql::workspace::LlmInfo) -> Self { +impl From for LLMInfo { + fn from(value: galaxy_graphql::workspace::LlmInfo) -> Self { let host_configs = { let mut map = std::collections::HashMap::new(); for config in value.host_configs { @@ -2080,10 +2080,10 @@ impl From for LLMInfo { } } -impl From +impl From for RoutingHostConfig { - fn from(value: warp_graphql::queries::get_feature_model_choices::RoutingHostConfig) -> Self { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::RoutingHostConfig) -> Self { Self { enabled: value.enabled, model_routing_host: value.model_routing_host.into(), @@ -2091,8 +2091,8 @@ impl From } } -impl From for RoutingHostConfig { - fn from(value: warp_graphql::workspace::RoutingHostConfig) -> Self { +impl From for RoutingHostConfig { + fn from(value: galaxy_graphql::workspace::RoutingHostConfig) -> Self { Self { enabled: value.enabled, model_routing_host: value.model_routing_host.into(), @@ -2100,16 +2100,16 @@ impl From for RoutingHostConfig { } } -impl From for LLMModelHost { - fn from(value: warp_graphql::queries::get_feature_model_choices::LlmModelHost) -> Self { +impl From for LLMModelHost { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::LlmModelHost) -> Self { match value { - warp_graphql::queries::get_feature_model_choices::LlmModelHost::DirectApi => { + galaxy_graphql::queries::get_feature_model_choices::LlmModelHost::DirectApi => { LLMModelHost::DirectApi } - warp_graphql::queries::get_feature_model_choices::LlmModelHost::AwsBedrock => { + galaxy_graphql::queries::get_feature_model_choices::LlmModelHost::AwsBedrock => { LLMModelHost::AwsBedrock } - warp_graphql::queries::get_feature_model_choices::LlmModelHost::Other(value) => { + galaxy_graphql::queries::get_feature_model_choices::LlmModelHost::Other(value) => { report_error!(anyhow!( "Unknown LlmModelHost '{value}'. Make sure to update client GraphQL types!" )); @@ -2119,23 +2119,23 @@ impl From for LL } } -impl From for LLMProvider { - fn from(value: warp_graphql::queries::get_feature_model_choices::LlmProvider) -> Self { +impl From for LLMProvider { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::LlmProvider) -> Self { match value { - warp_graphql::queries::get_feature_model_choices::LlmProvider::Openai => { + galaxy_graphql::queries::get_feature_model_choices::LlmProvider::Openai => { LLMProvider::OpenAI } - warp_graphql::queries::get_feature_model_choices::LlmProvider::Anthropic => { + galaxy_graphql::queries::get_feature_model_choices::LlmProvider::Anthropic => { LLMProvider::Anthropic } - warp_graphql::queries::get_feature_model_choices::LlmProvider::Google => { + galaxy_graphql::queries::get_feature_model_choices::LlmProvider::Google => { LLMProvider::Google } - warp_graphql::queries::get_feature_model_choices::LlmProvider::Xai => LLMProvider::Xai, - warp_graphql::queries::get_feature_model_choices::LlmProvider::Unknown => { + galaxy_graphql::queries::get_feature_model_choices::LlmProvider::Xai => LLMProvider::Xai, + galaxy_graphql::queries::get_feature_model_choices::LlmProvider::Unknown => { LLMProvider::Unknown } - warp_graphql::queries::get_feature_model_choices::LlmProvider::Other(value) => { + galaxy_graphql::queries::get_feature_model_choices::LlmProvider::Other(value) => { report_error!(anyhow!( "Invalid LlmProvider '{value}'. Make sure to update client GraphQL types!" )); @@ -2145,15 +2145,15 @@ impl From for LLM } } -impl From for LLMProvider { - fn from(value: warp_graphql::workspace::LlmProvider) -> Self { +impl From for LLMProvider { + fn from(value: galaxy_graphql::workspace::LlmProvider) -> Self { match value { - warp_graphql::workspace::LlmProvider::Openai => LLMProvider::OpenAI, - warp_graphql::workspace::LlmProvider::Anthropic => LLMProvider::Anthropic, - warp_graphql::workspace::LlmProvider::Google => LLMProvider::Google, - warp_graphql::workspace::LlmProvider::Xai => LLMProvider::Xai, - warp_graphql::workspace::LlmProvider::Unknown => LLMProvider::Unknown, - warp_graphql::workspace::LlmProvider::Other(value) => { + galaxy_graphql::workspace::LlmProvider::Openai => LLMProvider::OpenAI, + galaxy_graphql::workspace::LlmProvider::Anthropic => LLMProvider::Anthropic, + galaxy_graphql::workspace::LlmProvider::Google => LLMProvider::Google, + galaxy_graphql::workspace::LlmProvider::Xai => LLMProvider::Xai, + galaxy_graphql::workspace::LlmProvider::Unknown => LLMProvider::Unknown, + galaxy_graphql::workspace::LlmProvider::Other(value) => { report_error!(anyhow!( "Invalid LlmProvider '{value}'. Make sure to update client GraphQL types!" )); @@ -2163,8 +2163,8 @@ impl From for LLMProvider { } } -impl From for LLMSpec { - fn from(value: warp_graphql::queries::get_feature_model_choices::LlmSpec) -> Self { +impl From for LLMSpec { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::LlmSpec) -> Self { Self { cost: value.cost as f32, quality: value.quality as f32, @@ -2173,8 +2173,8 @@ impl From for LLMSpec } } -impl From for LLMSpec { - fn from(value: warp_graphql::workspace::LlmSpec) -> Self { +impl From for LLMSpec { + fn from(value: galaxy_graphql::workspace::LlmSpec) -> Self { Self { cost: value.cost as f32, quality: value.quality as f32, @@ -2183,8 +2183,8 @@ impl From for LLMSpec { } } -impl From for LLMUsageMetadata { - fn from(value: warp_graphql::queries::get_feature_model_choices::LlmUsageMetadata) -> Self { +impl From for LLMUsageMetadata { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::LlmUsageMetadata) -> Self { Self { request_multiplier: value.request_multiplier.max(1) as usize, credit_multiplier: value.credit_multiplier.map(|v| v as f32), @@ -2192,8 +2192,8 @@ impl From fo } } -impl From for LLMUsageMetadata { - fn from(value: warp_graphql::workspace::LlmUsageMetadata) -> Self { +impl From for LLMUsageMetadata { + fn from(value: galaxy_graphql::workspace::LlmUsageMetadata) -> Self { Self { request_multiplier: value.request_multiplier.max(1) as usize, credit_multiplier: value.credit_multiplier.map(|v| v as f32), @@ -2201,50 +2201,50 @@ impl From for LLMUsageMetadata { } } -impl From for DisableReason { - fn from(value: warp_graphql::queries::get_feature_model_choices::DisableReason) -> Self { +impl From for DisableReason { + fn from(value: galaxy_graphql::queries::get_feature_model_choices::DisableReason) -> Self { match value { - warp_graphql::queries::get_feature_model_choices::DisableReason::AdminDisabled => { + galaxy_graphql::queries::get_feature_model_choices::DisableReason::AdminDisabled => { DisableReason::AdminDisabled } - warp_graphql::queries::get_feature_model_choices::DisableReason::OutOfRequests => { + galaxy_graphql::queries::get_feature_model_choices::DisableReason::OutOfRequests => { DisableReason::OutOfRequests } - warp_graphql::queries::get_feature_model_choices::DisableReason::ProviderOutage => { + galaxy_graphql::queries::get_feature_model_choices::DisableReason::ProviderOutage => { DisableReason::ProviderOutage } - warp_graphql::queries::get_feature_model_choices::DisableReason::RequiresUpgrade => { + galaxy_graphql::queries::get_feature_model_choices::DisableReason::RequiresUpgrade => { DisableReason::RequiresUpgrade } - warp_graphql::queries::get_feature_model_choices::DisableReason::Other(_) => { + galaxy_graphql::queries::get_feature_model_choices::DisableReason::Other(_) => { DisableReason::Unavailable } } } } -impl From for DisableReason { - fn from(value: warp_graphql::workspace::DisableReason) -> Self { +impl From for DisableReason { + fn from(value: galaxy_graphql::workspace::DisableReason) -> Self { match value { - warp_graphql::workspace::DisableReason::AdminDisabled => DisableReason::AdminDisabled, - warp_graphql::workspace::DisableReason::OutOfRequests => DisableReason::OutOfRequests, - warp_graphql::workspace::DisableReason::ProviderOutage => DisableReason::ProviderOutage, - warp_graphql::workspace::DisableReason::RequiresUpgrade => { + galaxy_graphql::workspace::DisableReason::AdminDisabled => DisableReason::AdminDisabled, + galaxy_graphql::workspace::DisableReason::OutOfRequests => DisableReason::OutOfRequests, + galaxy_graphql::workspace::DisableReason::ProviderOutage => DisableReason::ProviderOutage, + galaxy_graphql::workspace::DisableReason::RequiresUpgrade => { DisableReason::RequiresUpgrade } - warp_graphql::workspace::DisableReason::Other(_) => DisableReason::Unavailable, + galaxy_graphql::workspace::DisableReason::Other(_) => DisableReason::Unavailable, } } } // Conversions for AIConversationMetadata from GraphQL types -fn convert_harness(harness: warp_graphql::ai::AgentHarness) -> AIAgentHarness { +fn convert_harness(harness: galaxy_graphql::ai::AgentHarness) -> AIAgentHarness { match harness { - warp_graphql::ai::AgentHarness::Oz => AIAgentHarness::Oz, - warp_graphql::ai::AgentHarness::ClaudeCode => AIAgentHarness::ClaudeCode, - warp_graphql::ai::AgentHarness::Gemini => AIAgentHarness::Gemini, - warp_graphql::ai::AgentHarness::Other(value) => { + galaxy_graphql::ai::AgentHarness::Oz => AIAgentHarness::Oz, + galaxy_graphql::ai::AgentHarness::ClaudeCode => AIAgentHarness::ClaudeCode, + galaxy_graphql::ai::AgentHarness::Gemini => AIAgentHarness::Gemini, + galaxy_graphql::ai::AgentHarness::Other(value) => { report_error!(anyhow!( "Invalid AgentHarness '{value}'. Make sure to update client GraphQL types!" )); @@ -2254,15 +2254,15 @@ fn convert_harness(harness: warp_graphql::ai::AgentHarness) -> AIAgentHarness { } fn convert_block_snapshot_format( - format: warp_graphql::ai::SerializedBlockFormat, + format: galaxy_graphql::ai::SerializedBlockFormat, ) -> AIAgentSerializedBlockFormat { match format { - warp_graphql::ai::SerializedBlockFormat::JsonV1 => AIAgentSerializedBlockFormat::JsonV1, + galaxy_graphql::ai::SerializedBlockFormat::JsonV1 => AIAgentSerializedBlockFormat::JsonV1, } } fn convert_conversation_format( - format: warp_graphql::ai::AIConversationFormat, + format: galaxy_graphql::ai::AIConversationFormat, ) -> AIAgentConversationFormat { AIAgentConversationFormat { has_task_list: format.has_task_list, @@ -2286,10 +2286,10 @@ fn convert_usage_metadata( } } -impl TryFrom for ServerAIConversationMetadata { +impl TryFrom for ServerAIConversationMetadata { type Error = anyhow::Error; - fn try_from(value: warp_graphql::ai::AIConversation) -> Result { + fn try_from(value: galaxy_graphql::ai::AIConversation) -> Result { let usage = convert_usage_metadata( value.usage.usage_metadata.summarized, value.usage.usage_metadata.context_window_usage, @@ -2326,13 +2326,13 @@ impl TryFrom for ServerAIConversationMetadata } } -impl TryFrom +impl TryFrom for ServerAIConversationMetadata { type Error = anyhow::Error; fn try_from( - value: warp_graphql::queries::list_ai_conversations::AIConversationMetadata, + value: galaxy_graphql::queries::list_ai_conversations::AIConversationMetadata, ) -> Result { let usage = convert_usage_metadata( value.usage.usage_metadata.summarized, diff --git a/app/src/server/server_api/auth.rs b/app/src/server/server_api/auth.rs index a1dbe27a..b60d69a8 100644 --- a/app/src/server/server_api/auth.rs +++ b/app/src/server/server_api/auth.rs @@ -10,23 +10,23 @@ use instant::Duration; use mockall::{automock, predicate::*}; use oauth2::TokenResponse; use thiserror::Error; -use warp_core::errors::{AnyhowErrorExt, ErrorExt}; -use warp_graphql::client::Operation; -use warp_graphql::mutations::expire_api_key::{ +use galaxy_core::errors::{AnyhowErrorExt, ErrorExt}; +use galaxy_graphql::client::Operation; +use galaxy_graphql::mutations::expire_api_key::{ ExpireApiKey, ExpireApiKeyResult, ExpireApiKeyVariables, }; -use warp_graphql::queries::get_conversation_usage::{ +use galaxy_graphql::queries::get_conversation_usage::{ ConversationUsage, GetConversationUsage, GetConversationUsageVariables, UserResult, }; -use warp_graphql::mutations::set_user_is_onboarded::{ +use galaxy_graphql::mutations::set_user_is_onboarded::{ SetUserIsOnboarded, SetUserIsOnboardedResult, SetUserIsOnboardedVariables, }; -use warp_graphql::mutations::update_user_settings::{ +use galaxy_graphql::mutations::update_user_settings::{ UpdateUserSettings, UpdateUserSettingsInput, UpdateUserSettingsResult, UpdateUserSettingsVariables, }; -use warp_graphql::mutations::{ +use galaxy_graphql::mutations::{ create_anonymous_user::{ AnonymousUserType, CreateAnonymousUser, CreateAnonymousUserResult, CreateAnonymousUserVariables, @@ -36,13 +36,13 @@ use warp_graphql::mutations::{ }, mint_custom_token::{MintCustomTokenResult, MintCustomTokenVariables}, }; -use warp_graphql::object_permissions::OwnerType; -use warp_graphql::queries::api_keys::{ +use galaxy_graphql::object_permissions::OwnerType; +use galaxy_graphql::queries::api_keys::{ ApiKeyProperties, ApiKeyPropertiesResult, ApiKeys, ApiKeysVariables, }; -use warp_graphql::queries::get_user::{GetUser, GetUserVariables, UserOutput as GqlUserOutput}; -use warp_graphql::queries::get_user_settings::{GetUserSettings, GetUserSettingsVariables}; -use warpui::r#async::BoxFuture; +use galaxy_graphql::queries::get_user::{GetUser, GetUserVariables, UserOutput as GqlUserOutput}; +use galaxy_graphql::queries::get_user_settings::{GetUserSettings, GetUserSettingsVariables}; +use galaxyui::r#async::BoxFuture; use crate::auth::UserUid; use crate::server::graphql::{default_request_options, get_user_facing_error_message}; @@ -168,7 +168,7 @@ pub trait AuthClient: 'static + Send + Sync { &self, days: Option, limit: Option, - last_updated_end_timestamp: Option, + last_updated_end_timestamp: Option, ) -> Result>; async fn set_is_telemetry_enabled(&self, value: bool) -> Result<()>; @@ -201,7 +201,7 @@ pub trait AuthClient: 'static + Send + Sync { &self, name: String, team_id: Option, - expires_at: Option, + expires_at: Option, ) -> Result; async fn expire_api_key(&self, key_uid: &ApiKeyUid) -> Result; @@ -221,9 +221,9 @@ impl AuthClient for ServerApi { anonymous_user_type: AnonymousUserType, ) -> Result { let variables = CreateAnonymousUserVariables { - input: warp_graphql::mutations::create_anonymous_user::CreateAnonymousUserInput { + input: galaxy_graphql::mutations::create_anonymous_user::CreateAnonymousUserInput { anonymous_user_type, - expiration_type: warp_graphql::mutations::create_anonymous_user::AnonymousUserExpirationType::NoExpiration, + expiration_type: galaxy_graphql::mutations::create_anonymous_user::AnonymousUserExpirationType::NoExpiration, referral_code, }, request_context: get_request_context(), @@ -329,7 +329,7 @@ impl AuthClient for ServerApi { }; let operation = - warp_graphql::mutations::mint_custom_token::MintCustomToken::build(variables); + galaxy_graphql::mutations::mint_custom_token::MintCustomToken::build(variables); let response = self.send_graphql_request(operation, None).await?; Ok(response.mint_custom_token) } @@ -363,7 +363,7 @@ impl AuthClient for ServerApi { let response = operation .send_request( self.client.clone(), - warp_graphql::client::RequestOptions { + galaxy_graphql::client::RequestOptions { auth_token: auth_token.map(ToOwned::to_owned), headers: std::collections::HashMap::from([( EXPERIMENT_ID_HEADER.to_string(), @@ -377,8 +377,8 @@ impl AuthClient for ServerApi { .ok_or_else(|| anyhow!("Expected valid response.data"))?; match response.user { - warp_graphql::queries::get_user::UserResult::UserOutput(user_output) => Ok(user_output), - warp_graphql::queries::get_user::UserResult::Unknown => { + galaxy_graphql::queries::get_user::UserResult::UserOutput(user_output) => Ok(user_output), + galaxy_graphql::queries::get_user::UserResult::Unknown => { Err(anyhow!("Unable to fetch user")) } } @@ -392,7 +392,7 @@ impl AuthClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; match response.user { - warp_graphql::queries::get_user_settings::UserResult::UserOutput(user_output) => { + galaxy_graphql::queries::get_user_settings::UserResult::UserOutput(user_output) => { match user_output.user.settings { Some(user_settings) => Ok(Some(SyncedUserSettings { is_cloud_conversation_storage_enabled: user_settings @@ -403,7 +403,7 @@ impl AuthClient for ServerApi { None => Ok(None), } } - warp_graphql::queries::get_user_settings::UserResult::Unknown => { + galaxy_graphql::queries::get_user_settings::UserResult::Unknown => { Err(anyhow!("Unable to fetch user settings")) } } @@ -414,7 +414,7 @@ impl AuthClient for ServerApi { &self, days: Option, limit: Option, - last_updated_end_timestamp: Option, + last_updated_end_timestamp: Option, ) -> Result> { let operation = GetConversationUsage::build(GetConversationUsageVariables { request_context: get_request_context(), @@ -572,7 +572,7 @@ impl AuthClient for ServerApi { .exchange_device_access_token(details) .request_async( self.client.as_ref(), - |delay| warpui::r#async::Timer::after(delay).map(|_| ()), + |delay| galaxyui::r#async::Timer::after(delay).map(|_| ()), Some(timeout), ) .await @@ -606,7 +606,7 @@ impl AuthClient for ServerApi { &self, name: String, team_id: Option, - expires_at: Option, + expires_at: Option, ) -> Result { let variables = GenerateApiKeyVariables { input: GenerateApiKeyInput { @@ -650,13 +650,13 @@ impl AuthClient for ServerApi { } // Issue a new token. - let workload_token = match warp_isolation_platform::issue_workload_token(Some( + let workload_token = match galaxy_isolation_platform::issue_workload_token(Some( AMBIENT_WORKLOAD_TOKEN_DURATION, )) .await { Ok(token) => token, - Err(warp_isolation_platform::IsolationPlatformError::NoIsolationPlatformDetected) => { + Err(galaxy_isolation_platform::IsolationPlatformError::NoIsolationPlatformDetected) => { return Ok(None); } Err(e) => return Err(e.into()), diff --git a/app/src/server/server_api/block.rs b/app/src/server/server_api/block.rs index 3f33a745..71961e7b 100644 --- a/app/src/server/server_api/block.rs +++ b/app/src/server/server_api/block.rs @@ -12,8 +12,8 @@ use cynic::{MutationBuilder, QueryBuilder}; #[cfg(test)] use mockall::automock; use std::convert::TryFrom; -use warp_core::channel::{Channel, ChannelState}; -use warp_graphql::{ +use galaxy_core::channel::{Channel, ChannelState}; +use galaxy_graphql::{ mutations::{ share_block::{BlockInput, ShareBlock, ShareBlockResult, ShareBlockVariables}, unshare_block::{ @@ -127,7 +127,7 @@ impl BlockClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; match response.user { - warp_graphql::queries::get_blocks_for_user::UserResult::UserOutput(user_output) => { + galaxy_graphql::queries::get_blocks_for_user::UserResult::UserOutput(user_output) => { Ok(user_output .user .blocks @@ -135,7 +135,7 @@ impl BlockClient for ServerApi { .filter_map(|block| block.try_into().ok()) .collect()) } - warp_graphql::queries::get_blocks_for_user::UserResult::Unknown => { + galaxy_graphql::queries::get_blocks_for_user::UserResult::Unknown => { Err(anyhow!("Unable to fetch blocks")) } } diff --git a/app/src/server/server_api/integrations.rs b/app/src/server/server_api/integrations.rs index 77e4a693..f75701b8 100644 --- a/app/src/server/server_api/integrations.rs +++ b/app/src/server/server_api/integrations.rs @@ -9,32 +9,32 @@ use crate::features::FeatureFlag; use mockall::automock; use crate::server::graphql::{get_request_context, get_user_facing_error_message}; -use warp_graphql::mutations::create_simple_integration::{ +use galaxy_graphql::mutations::create_simple_integration::{ CreateSimpleIntegration, CreateSimpleIntegrationOutput, CreateSimpleIntegrationResult, CreateSimpleIntegrationVariables, SimpleIntegrationConfig, }; -use warp_graphql::queries::get_integrations_using_environment::{ +use galaxy_graphql::queries::get_integrations_using_environment::{ GetIntegrationsUsingEnvironment, GetIntegrationsUsingEnvironmentInput, GetIntegrationsUsingEnvironmentOutput, GetIntegrationsUsingEnvironmentResult, GetIntegrationsUsingEnvironmentVariables, }; -use warp_graphql::queries::get_oauth_connect_tx_status::{ +use galaxy_graphql::queries::get_oauth_connect_tx_status::{ GetOAuthConnectTxStatus, GetOAuthConnectTxStatusInput, GetOAuthConnectTxStatusResult, GetOAuthConnectTxStatusVariables, OauthConnectTxStatus, }; -use warp_graphql::queries::get_simple_integrations::{ +use galaxy_graphql::queries::get_simple_integrations::{ SimpleIntegrations, SimpleIntegrationsInput, SimpleIntegrationsOutput, SimpleIntegrationsResult, SimpleIntegrationsVariables, }; -use warp_graphql::queries::suggest_cloud_environment_image::{ +use galaxy_graphql::queries::suggest_cloud_environment_image::{ RepoInput as SuggestCloudEnvironmentImageRepoInput, SuggestCloudEnvironmentImage, SuggestCloudEnvironmentImageInput, SuggestCloudEnvironmentImageResult, SuggestCloudEnvironmentImageVariables, }; -use warp_graphql::queries::user_github_info::{ +use galaxy_graphql::queries::user_github_info::{ GithubAuthRequiredOutput, UserGithubInfo, UserGithubInfoResult, UserGithubInfoVariables, }; -use warp_graphql::queries::user_repo_auth_status::{ +use galaxy_graphql::queries::user_repo_auth_status::{ RepoInput as UserRepoAuthStatusRepoInput, UserRepoAuthStatus, UserRepoAuthStatusInput, UserRepoAuthStatusOutput, UserRepoAuthStatusResult, UserRepoAuthStatusVariables, }; diff --git a/app/src/server/server_api/managed_secrets.rs b/app/src/server/server_api/managed_secrets.rs index f666a0a1..0253f29a 100644 --- a/app/src/server/server_api/managed_secrets.rs +++ b/app/src/server/server_api/managed_secrets.rs @@ -3,21 +3,21 @@ use std::collections::HashMap; use anyhow::{anyhow, Context, Result}; use async_trait::async_trait; use cynic::{MutationBuilder, QueryBuilder}; -use warp_graphql::mutations::issue_task_identity_token::{ +use galaxy_graphql::mutations::issue_task_identity_token::{ IssueTaskIdentityToken, IssueTaskIdentityTokenInput, IssueTaskIdentityTokenResult, IssueTaskIdentityTokenVariables, }; -use warp_graphql::object_permissions::OwnerType; -use warp_graphql::queries::list_managed_secrets::{ +use galaxy_graphql::object_permissions::OwnerType; +use galaxy_graphql::queries::list_managed_secrets::{ ListManagedSecrets, ListManagedSecretsVariables, ManagedSecretsInput, ManagedSecretsResult, }; -use warp_graphql::queries::managed_secret_config::{ +use galaxy_graphql::queries::managed_secret_config::{ GetManagedSecretConfig, GetManagedSecretConfigVariables, UserResult, }; -use warp_graphql::queries::task_secrets::{ +use galaxy_graphql::queries::task_secrets::{ ManagedSecretValue, TaskSecrets, TaskSecretsInput, TaskSecretsResult, TaskSecretsVariables, }; -use warp_graphql::{ +use galaxy_graphql::{ managed_secrets::{ManagedSecret, ManagedSecretType}, mutations::{ create_managed_secret::{ @@ -35,12 +35,12 @@ use warp_graphql::{ }, object_permissions::Owner, }; -use warp_managed_secrets::client::{SecretOwner, TaskIdentityToken}; +use galaxy_managed_secrets::client::{SecretOwner, TaskIdentityToken}; use super::ServerApi; use crate::server::graphql::{get_request_context, get_user_facing_error_message}; -pub use warp_managed_secrets::client::{ManagedSecretConfigs, ManagedSecretsClient}; +pub use galaxy_managed_secrets::client::{ManagedSecretConfigs, ManagedSecretsClient}; #[cfg_attr(not(target_family = "wasm"), async_trait)] #[cfg_attr(target_family = "wasm", async_trait(?Send))] @@ -254,7 +254,7 @@ impl ManagedSecretsClient for ServerApi { async fn issue_task_identity_token( &self, - options: warp_managed_secrets::client::IdentityTokenOptions, + options: galaxy_managed_secrets::client::IdentityTokenOptions, ) -> Result { let requested_duration_seconds = options .requested_duration diff --git a/app/src/server/server_api/object.rs b/app/src/server/server_api/object.rs index 8819cb1e..1c62d685 100644 --- a/app/src/server/server_api/object.rs +++ b/app/src/server/server_api/object.rs @@ -49,8 +49,8 @@ use cynic::{MutationBuilder, QueryBuilder, SubscriptionBuilder}; #[cfg(test)] use mockall::{automock, predicate::*}; use std::collections::HashMap; -use warp_core::report_error; -use warp_graphql::{ +use galaxy_core::report_error; +use galaxy_graphql::{ error::UserFacingErrorInterface, generic_string_object::GenericStringObjectInput, mutations::{ @@ -986,7 +986,7 @@ impl ObjectClient for ServerApi { }; match gso.format { - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonEnvVarCollection => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonEnvVarCollection => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::EnvVarCollection), @@ -996,7 +996,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonPreference => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonPreference => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::Preference), @@ -1006,7 +1006,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonWorkflowEnum => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonWorkflowEnum => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::WorkflowEnum), @@ -1016,7 +1016,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonAIFact => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonAIFact => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::AIFact), @@ -1026,7 +1026,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonMCPServer => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonMCPServer => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::MCPServer), @@ -1036,7 +1036,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonAIExecutionProfile => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonAIExecutionProfile => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::AIExecutionProfile), @@ -1046,7 +1046,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonTemplatableMCPServer => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonTemplatableMCPServer => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::TemplatableMCPServer), @@ -1056,7 +1056,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonCloudEnvironment => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonCloudEnvironment => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::CloudEnvironment), @@ -1066,7 +1066,7 @@ impl ObjectClient for ServerApi { gso.serialized_model, ); } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonScheduledAmbientAgent => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonScheduledAmbientAgent => { parse_server_gso::( &mut updated_generic_string_objects, GenericStringObjectFormat::Json(JsonObjectType::ScheduledAmbientAgent), @@ -1296,7 +1296,7 @@ impl ObjectClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; let result = match response.untrash_object { - warp_graphql::mutations::untrash_object::UntrashObjectResult::UntrashObjectOutput( + galaxy_graphql::mutations::untrash_object::UntrashObjectResult::UntrashObjectOutput( output, ) => { if output.success { diff --git a/app/src/server/server_api/referral.rs b/app/src/server/server_api/referral.rs index ced3fc35..c0882eb6 100644 --- a/app/src/server/server_api/referral.rs +++ b/app/src/server/server_api/referral.rs @@ -5,8 +5,8 @@ use async_trait::async_trait; use cynic::{MutationBuilder, QueryBuilder}; #[cfg(test)] use mockall::{automock, predicate::*}; -use warp_core::channel::ChannelState; -use warp_graphql::{ +use galaxy_core::channel::ChannelState; +use galaxy_graphql::{ mutations::send_referral_invite_emails::{ SendReferralInviteEmails, SendReferralInviteEmailsResult, SendReferralInviteEmailsVariables, }, @@ -47,7 +47,7 @@ impl ReferralsClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; match response.user { - warp_graphql::queries::get_referral_info::UserResult::UserOutput(user_output) => { + galaxy_graphql::queries::get_referral_info::UserResult::UserOutput(user_output) => { Ok(ReferralInfo { url: format!( "{}/referral/{}", @@ -60,7 +60,7 @@ impl ReferralsClient for ServerApi { is_referred: user_output.user.referrals.is_referred, }) } - warp_graphql::queries::get_referral_info::UserResult::Unknown => { + galaxy_graphql::queries::get_referral_info::UserResult::Unknown => { Err(anyhow!("Unable to fetch referral info")) } } @@ -68,7 +68,7 @@ impl ReferralsClient for ServerApi { async fn send_invite(&self, emails: Vec) -> Result> { let variables = SendReferralInviteEmailsVariables { - input: warp_graphql::mutations::send_referral_invite_emails::SendReferralInviteEmailsInput { + input: galaxy_graphql::mutations::send_referral_invite_emails::SendReferralInviteEmailsInput { emails, }, request_context: get_request_context(), diff --git a/app/src/server/server_api/team.rs b/app/src/server/server_api/team.rs index d243a0c9..1691eec6 100644 --- a/app/src/server/server_api/team.rs +++ b/app/src/server/server_api/team.rs @@ -6,57 +6,57 @@ use crate::workspaces::workspace::Workspace; use anyhow::{anyhow, Result}; use async_trait::async_trait; use cynic::{MutationBuilder, QueryBuilder}; -use warp_graphql::mutations::add_invite_link_domain_restriction::{ +use galaxy_graphql::mutations::add_invite_link_domain_restriction::{ AddInviteLinkDomainRestriction, AddInviteLinkDomainRestrictionInput, AddInviteLinkDomainRestrictionResult, AddInviteLinkDomainRestrictionVariables, }; -use warp_graphql::mutations::create_team::{ +use galaxy_graphql::mutations::create_team::{ CreateTeam, CreateTeamInput, CreateTeamResult, CreateTeamVariables, }; -use warp_graphql::mutations::delete_invite_link_domain_restriction::{ +use galaxy_graphql::mutations::delete_invite_link_domain_restriction::{ DeleteInviteLinkDomainRestriction, DeleteInviteLinkDomainRestrictionInput, DeleteInviteLinkDomainRestrictionResult, DeleteInviteLinkDomainRestrictionVariables, }; -use warp_graphql::mutations::delete_team_invite::{ +use galaxy_graphql::mutations::delete_team_invite::{ DeleteTeamInvite, DeleteTeamInviteInput, DeleteTeamInviteResult, DeleteTeamInviteVariables, }; -use warp_graphql::mutations::join_team_with_team_discovery::{ +use galaxy_graphql::mutations::join_team_with_team_discovery::{ JoinTeamWithTeamDiscovery, JoinTeamWithTeamDiscoveryInput, JoinTeamWithTeamDiscoveryResult, JoinTeamWithTeamDiscoveryVariables, TeamDiscoveryEntrypoint, }; -use warp_graphql::mutations::remove_user_from_team::{ +use galaxy_graphql::mutations::remove_user_from_team::{ RemoveUserFromTeam, RemoveUserFromTeamInput, RemoveUserFromTeamResult, RemoveUserFromTeamVariables, }; -use warp_graphql::mutations::rename_team::{ +use galaxy_graphql::mutations::rename_team::{ RenameTeam, RenameTeamInput, RenameTeamResult, RenameTeamVariables, }; -use warp_graphql::mutations::reset_invite_links::{ +use galaxy_graphql::mutations::reset_invite_links::{ ResetInviteLinks, ResetInviteLinksInput, ResetInviteLinksResult, ResetInviteLinksVariables, }; -use warp_graphql::mutations::send_team_invite_email::{ +use galaxy_graphql::mutations::send_team_invite_email::{ SendTeamInviteEmail, SendTeamInviteEmailInput, SendTeamInviteEmailResult, SendTeamInviteEmailVariables, }; -use warp_graphql::mutations::set_is_invite_link_enabled::{ +use galaxy_graphql::mutations::set_is_invite_link_enabled::{ SetIsInviteLinkEnabled, SetIsInviteLinkEnabledInput, SetIsInviteLinkEnabledResult, SetIsInviteLinkEnabledVariables, }; -use warp_graphql::mutations::set_team_discoverability::{ +use galaxy_graphql::mutations::set_team_discoverability::{ SetTeamDiscoverability, SetTeamDiscoverabilityInput, SetTeamDiscoverabilityResult, SetTeamDiscoverabilityVariables, }; -use warp_graphql::mutations::set_team_member_role::{ +use galaxy_graphql::mutations::set_team_member_role::{ SetTeamMemberRole, SetTeamMemberRoleInput, SetTeamMemberRoleResult, SetTeamMemberRoleVariables, }; -use warp_graphql::mutations::transfer_team_ownership::{ +use galaxy_graphql::mutations::transfer_team_ownership::{ TransferTeamOwnership, TransferTeamOwnershipInput, TransferTeamOwnershipResult, TransferTeamOwnershipVariables, }; -use warp_graphql::queries::get_discoverable_teams::{ +use galaxy_graphql::queries::get_discoverable_teams::{ GetDiscoverableTeams, GetDiscoverableTeamsVariables, }; -use warp_graphql::queries::get_workspaces_metadata_for_user::{ +use galaxy_graphql::queries::get_workspaces_metadata_for_user::{ GetWorkspacesMetadataForUser, GetWorkspacesMetadataForUserVariables, PricingInfoResult, }; @@ -175,10 +175,10 @@ impl TeamClient for ServerApi { let response = self.send_graphql_request(operation, None).await?; let metadata = match response.user { - warp_graphql::queries::get_workspaces_metadata_for_user::UserResult::UserOutput( + galaxy_graphql::queries::get_workspaces_metadata_for_user::UserResult::UserOutput( user_output, ) => user_output.user.into(), - warp_graphql::queries::get_workspaces_metadata_for_user::UserResult::Unknown => { + galaxy_graphql::queries::get_workspaces_metadata_for_user::UserResult::Unknown => { return Err(anyhow!("Unable to fetch workspaces metadata")); } }; @@ -502,7 +502,7 @@ impl TeamClient for ServerApi { let result = self.send_graphql_request(operation, None).await?; match result.user { - warp_graphql::queries::get_discoverable_teams::UserResult::UserOutput(user_output) => { + galaxy_graphql::queries::get_discoverable_teams::UserResult::UserOutput(user_output) => { Ok(user_output .user .discoverable_teams @@ -510,10 +510,10 @@ impl TeamClient for ServerApi { .map(|gql_team_data| Ok(gql_team_data.into())) .collect::>>()?) } - warp_graphql::queries::get_discoverable_teams::UserResult::UserFacingError( + galaxy_graphql::queries::get_discoverable_teams::UserResult::UserFacingError( user_facing_error, ) => Err(anyhow!(get_user_facing_error_message(user_facing_error))), - warp_graphql::queries::get_discoverable_teams::UserResult::Unknown => { + galaxy_graphql::queries::get_discoverable_teams::UserResult::Unknown => { Err(anyhow!("unknown error while getting discoverable teams")) } } diff --git a/app/src/server/server_api/workspace.rs b/app/src/server/server_api/workspace.rs index 3238b9ce..d40aefa4 100644 --- a/app/src/server/server_api/workspace.rs +++ b/app/src/server/server_api/workspace.rs @@ -4,21 +4,21 @@ use crate::workspaces::workspace::AiOverages; use anyhow::{anyhow, Result}; use async_trait::async_trait; use cynic::{MutationBuilder, QueryBuilder}; -use warp_graphql::error::UserFacingErrorInterface; -use warp_graphql::mutations::purchase_addon_credits::{ +use galaxy_graphql::error::UserFacingErrorInterface; +use galaxy_graphql::mutations::purchase_addon_credits::{ PurchaseAddonCredits, PurchaseAddonCreditsInput, PurchaseAddonCreditsResult, PurchaseAddonCreditsVariables, }; -use warp_graphql::mutations::stripe_billing_portal::{ +use galaxy_graphql::mutations::stripe_billing_portal::{ StripeBillingPortal, StripeBillingPortalInput, StripeBillingPortalResult, StripeBillingPortalVariables, }; -use warp_graphql::mutations::update_workspace_settings::{ +use galaxy_graphql::mutations::update_workspace_settings::{ AddonCreditsSettingsInput, UpdateWorkspaceSettings, UpdateWorkspaceSettingsInput, UpdateWorkspaceSettingsResult, UpdateWorkspaceSettingsVariables, UsageBasedPricingSettingsInput, }; -use warp_graphql::queries::get_ai_overages_for_workspace::{ +use galaxy_graphql::queries::get_ai_overages_for_workspace::{ GetAiOveragesForWorkspace, GetAiOveragesForWorkspaceVariables, UserResult, }; diff --git a/app/src/server/sync_queue.rs b/app/src/server/sync_queue.rs index f25314eb..ab724043 100644 --- a/app/src/server/sync_queue.rs +++ b/app/src/server/sync_queue.rs @@ -7,8 +7,8 @@ use std::{ sync::Arc, time::Duration, }; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::{r#async::FutureId, Entity, ModelContext, RequestState, RetryOption, SingletonEntity}; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::{r#async::FutureId, Entity, ModelContext, RequestState, RetryOption, SingletonEntity}; use lazy_static::lazy_static; use uuid::Uuid; diff --git a/app/src/server/sync_queue_test.rs b/app/src/server/sync_queue_test.rs index 42bec2b8..cbe8966e 100644 --- a/app/src/server/sync_queue_test.rs +++ b/app/src/server/sync_queue_test.rs @@ -27,8 +27,8 @@ use chrono::{DateTime, Duration, Utc}; use firebase::FirebaseError; use itertools::Itertools; use std::sync::Arc; -use warp_server_client::cloud_object::ServerPermissions; -use warpui::{r#async::Timer, App, Entity, ModelHandle, SingletonEntity}; +use galaxy_server_client::cloud_object::ServerPermissions; +use galaxyui::{r#async::Timer, App, Entity, ModelHandle, SingletonEntity}; #[cfg(test)] use crate::server::server_api::object::MockObjectClient; diff --git a/app/src/server/telemetry/collector.rs b/app/src/server/telemetry/collector.rs index a18dd4d8..c86d12f4 100644 --- a/app/src/server/telemetry/collector.rs +++ b/app/src/server/telemetry/collector.rs @@ -3,10 +3,10 @@ use std::{fs::remove_file, time::Duration}; use anyhow::Context; use chrono::{LocalResult, TimeZone, Utc}; -use warp_core::execution_mode::AppExecutionMode; -use warp_core::{report_error, report_if_error}; -use warpui::r#async::{FutureExt as _, Timer}; -use warpui::{App, Entity, ModelContext, SingletonEntity}; +use galaxy_core::execution_mode::AppExecutionMode; +use galaxy_core::{report_error, report_if_error}; +use galaxyui::r#async::{FutureExt as _, Timer}; +use galaxyui::{App, Entity, ModelContext, SingletonEntity}; use super::{rudder_event_file_path, RUDDER_TELEMETRY_EVENTS_FILE_NAME}; use crate::auth::AuthStateProvider; @@ -107,7 +107,7 @@ impl TelemetryCollector { if execution_mode.send_telemetry_at_shutdown() { let privacy_settings_snapshot = PrivacySettings::as_ref(ctx).get_snapshot(ctx); let server_api = self.server_api.clone(); - match warpui::r#async::block_on(async move { + match galaxyui::r#async::block_on(async move { server_api .flush_telemetry_events(privacy_settings_snapshot) .with_timeout(TELEMETRY_SHUTDOWN_FLUSH_TIMEOUT) @@ -144,7 +144,7 @@ impl TelemetryCollector { async move { let new_path = rudder_event_file_path(); let old_path = - warp_core::paths::state_dir().join(RUDDER_TELEMETRY_EVENTS_FILE_NAME); + galaxy_core::paths::state_dir().join(RUDDER_TELEMETRY_EVENTS_FILE_NAME); // Try flushing from both new and legacy locations. for path in [new_path, old_path] { @@ -156,7 +156,7 @@ impl TelemetryCollector { // case where we accidentally try to re-flush the events on the next app startup. if let Err(e) = remove_file(&path) { if e.kind() != std::io::ErrorKind::NotFound { - warp_core::report_error!( + galaxy_core::report_error!( anyhow::anyhow!(e).context("Failed to remove persisted event file") ); } @@ -184,7 +184,7 @@ impl TelemetryCollector { if let LocalResult::Single(timestamp) = Utc.timestamp_opt(last_active_timestamp, 0) { - warpui::telemetry::record_app_active_event( + galaxyui::telemetry::record_app_active_event( auth_state.user_id().map(|uid| uid.as_string()), auth_state.anonymous_id(), timestamp, diff --git a/app/src/server/telemetry/context.rs b/app/src/server/telemetry/context.rs index 9636572e..f950b2ab 100644 --- a/app/src/server/telemetry/context.rs +++ b/app/src/server/telemetry/context.rs @@ -10,7 +10,7 @@ use serde_json::{json, Value}; use std::sync::OnceLock; #[cfg(target_family = "wasm")] -use warpui::platform::wasm; +use galaxyui::platform::wasm; static TELEMETRY_CONTEXT: OnceLock = OnceLock::new(); diff --git a/app/src/server/telemetry/context_provider.rs b/app/src/server/telemetry/context_provider.rs index 306d1826..0c4ee904 100644 --- a/app/src/server/telemetry/context_provider.rs +++ b/app/src/server/telemetry/context_provider.rs @@ -1,5 +1,5 @@ -use warp_core::telemetry::{TelemetryContextModel, TelemetryContextProvider}; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxy_core::telemetry::{TelemetryContextModel, TelemetryContextProvider}; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::auth::AuthStateProvider; diff --git a/app/src/server/telemetry/events.rs b/app/src/server/telemetry/events.rs index 1dda5604..67d86a12 100644 --- a/app/src/server/telemetry/events.rs +++ b/app/src/server/telemetry/events.rs @@ -10,14 +10,14 @@ use session_sharing_protocol::common::SessionId as SharedSessionId; use session_sharing_protocol::sharer::SessionEndedReason; use strum_macros::EnumDiscriminants; use strum_macros::EnumIter; -use warp_completer::completer::MatchType; -use warp_core::command::ExitCode; -use warp_core::telemetry::EnablementState; -use warp_core::telemetry::TelemetryEvent as TelemetryEventTrait; -use warp_core::telemetry::TelemetryEventDesc; -use warpui::keymap::Keystroke; -use warpui::notification::{NotificationSendError, RequestPermissionsOutcome}; -use warpui::rendering::ThinStrokes; +use galaxy_completer::completer::MatchType; +use galaxy_core::command::ExitCode; +use galaxy_core::telemetry::EnablementState; +use galaxy_core::telemetry::TelemetryEvent as TelemetryEventTrait; +use galaxy_core::telemetry::TelemetryEventDesc; +use galaxyui::keymap::Keystroke; +use galaxyui::notification::{NotificationSendError, RequestPermissionsOutcome}; +use galaxyui::rendering::ThinStrokes; use crate::ai::agent::api::ServerConversationToken; use crate::ai::agent::conversation::AIConversationId; @@ -105,7 +105,7 @@ use crate::workspace::tab_settings::TabCloseButtonPosition; use crate::workspace::tab_settings::WorkspaceDecorationVisibility; use crate::workspace::TabMovement; use session_sharing_protocol::sharer::SessionSourceType; -use warp_core::interval_timer::TimingDataPoint; +use galaxy_core::interval_timer::TimingDataPoint; #[derive(Clone, Serialize, Deserialize)] pub struct BootstrappingInfo { @@ -2624,7 +2624,7 @@ pub enum TelemetryEvent { AgentManagementViewCopiedSessionLink, /// Detected that Warp is running in an isolated sandbox. DetectedIsolationPlatform { - platform: warp_isolation_platform::IsolationPlatformType, + platform: galaxy_isolation_platform::IsolationPlatformType, }, AgentTipShown { @@ -2852,7 +2852,7 @@ impl TelemetryEventTrait for TelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -5008,7 +5008,7 @@ impl TelemetryEvent { // We initialize the feature flags so that we can determine which telemetry events to print. crate::init_feature_flags(); - let events: serde_json::Map = warp_core::telemetry::all_events() + let events: serde_json::Map = galaxy_core::telemetry::all_events() .filter_map(|event| { if !event.enablement_state().is_enabled() { return None; @@ -6677,7 +6677,7 @@ impl TelemetryEventDesc for TelemetryEventDiscriminants { Self::ObjectLinkCopied => "The web link to an object has been copied.", Self::FileTreeToggled => "Opened the file tree/project explorer", Self::GlobalSearchOpened => "Opened the global search view", - Self::GlobalSearchQueryStarted => "Started a global search (warp_ripgrep) search", + Self::GlobalSearchQueryStarted => "Started a global search (galaxy_ripgrep) search", Self::FileTreeItemAttachedAsContext => { "Attached a file or directory as context from the file tree" } @@ -6994,7 +6994,7 @@ impl TelemetryEventDesc for TelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(TelemetryEvent); +galaxy_core::register_telemetry_event!(TelemetryEvent); #[cfg(test)] #[path = "events_test.rs"] diff --git a/app/src/server/telemetry/events_test.rs b/app/src/server/telemetry/events_test.rs index 9365ecf2..db42b4b9 100644 --- a/app/src/server/telemetry/events_test.rs +++ b/app/src/server/telemetry/events_test.rs @@ -1,4 +1,4 @@ -use warp_core::telemetry::TelemetryEventDesc; +use galaxy_core::telemetry::TelemetryEventDesc; #[derive(Debug)] enum TelemetryEventPropertyError { @@ -16,7 +16,7 @@ enum TelemetryEventPropertyError { #[cfg(not(target_family = "wasm"))] fn telemetry_events_have_nonempty_name_and_description() -> Result<(), TelemetryEventPropertyError> { - for event in warp_core::telemetry::all_events() { + for event in galaxy_core::telemetry::all_events() { if event.name().is_empty() { return Err(TelemetryEventPropertyError::EmptyName(event)); } diff --git a/app/src/server/telemetry/macros.rs b/app/src/server/telemetry/macros.rs index 8a3315af..b72a960f 100644 --- a/app/src/server/telemetry/macros.rs +++ b/app/src/server/telemetry/macros.rs @@ -5,17 +5,17 @@ macro_rules! send_telemetry_sync_from_ctx { ($event:expr, $ctx:expr) => { #[allow(unused_imports)] - use warp_core::telemetry::TelemetryEvent as _; + use galaxy_core::telemetry::TelemetryEvent as _; let event = $event; if event.enablement_state().is_enabled() { let server_api = - <$crate::server::server_api::ServerApiProvider as warpui::SingletonEntity>::handle( + <$crate::server::server_api::ServerApiProvider as galaxyui::SingletonEntity>::handle( $ctx, ) .as_ref($ctx) .get(); let privacy_settings_snapshot = - <$crate::settings::PrivacySettings as warpui::SingletonEntity>::handle($ctx) + <$crate::settings::PrivacySettings as galaxyui::SingletonEntity>::handle($ctx) .as_ref($ctx) .get_snapshot($ctx); let _ = $ctx.spawn( @@ -40,16 +40,16 @@ macro_rules! send_telemetry_sync_from_ctx { macro_rules! send_telemetry_sync_from_app_ctx { ($event:expr, $app_ctx:expr) => { #[allow(unused_imports)] - use warp_core::telemetry::TelemetryEvent as _; + use galaxy_core::telemetry::TelemetryEvent as _; if $event.enablement_state().is_enabled() { let server_api = - <$crate::server::server_api::ServerApiProvider as warpui::SingletonEntity>::handle( + <$crate::server::server_api::ServerApiProvider as galaxyui::SingletonEntity>::handle( $app_ctx, ) .as_ref($app_ctx) .get(); let privacy_settings_snapshot = - <$crate::settings::PrivacySettings as warpui::SingletonEntity>::handle($app_ctx) + <$crate::settings::PrivacySettings as galaxyui::SingletonEntity>::handle($app_ctx) .as_ref($app_ctx) .get_snapshot($app_ctx); $app_ctx @@ -75,12 +75,12 @@ macro_rules! send_telemetry_sync_from_app_ctx { macro_rules! send_telemetry_on_executor { ($auth_state: expr, $event:expr, $executor:expr) => { #[allow(unused_imports)] - use warp_core::telemetry::TelemetryEvent as _; + use galaxy_core::telemetry::TelemetryEvent as _; let event = $event; if event.enablement_state().is_enabled() { let user_id = $auth_state.user_id().map(|uid| uid.as_string()); let anonymous_id = $auth_state.anonymous_id(); - warpui::record_telemetry_on_executor!( + galaxyui::record_telemetry_on_executor!( user_id, anonymous_id, event.name().into(), diff --git a/app/src/server/telemetry/mod.rs b/app/src/server/telemetry/mod.rs index 5e451b62..443f6ddb 100644 --- a/app/src/server/telemetry/mod.rs +++ b/app/src/server/telemetry/mod.rs @@ -28,22 +28,22 @@ use std::fs::File; use std::fs::OpenOptions; use std::future::Future; use std::path::{Path, PathBuf}; -use warp_core::channel::RudderStackDestination; -use warpui::telemetry::Event; +use galaxy_core::channel::RudderStackDestination; +use galaxyui::telemetry::Event; /// Filename for file where telemetry events are written on app quit. const RUDDER_TELEMETRY_EVENTS_FILE_NAME: &str = "rudder_telemetry_events.json"; /// Filepath where the Rudder events should be written on app quit. fn rudder_event_file_path() -> PathBuf { - warp_core::paths::secure_state_dir() - .unwrap_or_else(warp_core::paths::state_dir) + galaxy_core::paths::secure_state_dir() + .unwrap_or_else(galaxy_core::paths::state_dir) .join(RUDDER_TELEMETRY_EVENTS_FILE_NAME) } /// Removes all telemetry events from the app telemetry event queue. pub fn clear_event_queue() { - let _ = warpui::telemetry::flush_events(); + let _ = galaxyui::telemetry::flush_events(); } pub struct TelemetryApi { @@ -91,7 +91,7 @@ impl TelemetryApi { // Batches up telemetry events from the global queue and sends a Message to the Rudderstack API. // Returns the number of events that were flushed. pub async fn flush_events(&self, settings_snapshot: PrivacySettingsSnapshot) -> Result { - let events = warpui::telemetry::flush_events(); + let events = galaxyui::telemetry::flush_events(); let event_count = events.len(); #[cfg(not(target_family = "wasm"))] @@ -169,7 +169,7 @@ impl TelemetryApi { let file = File::create(path)?; - let events = warpui::telemetry::flush_events(); + let events = galaxyui::telemetry::flush_events(); if events.len() > max_event_count { log::error!("More telemetry events in queue than the limit to persist") } @@ -198,7 +198,7 @@ impl TelemetryApi { #[cfg(not(target_family = "wasm"))] fn persist_events_to_telemetry_log_file(&self, events: Vec) -> Result<()> { - let log_directory = warp_logging::log_directory()?; + let log_directory = galaxy_logging::log_directory()?; let telemetry_file_path = log_directory.join(&*ChannelState::telemetry_file_name()); let file = OpenOptions::new() @@ -214,16 +214,16 @@ impl TelemetryApi { &self, user_id: Option, anonymous_id: String, - event: impl warp_core::telemetry::TelemetryEvent, + event: impl galaxy_core::telemetry::TelemetryEvent, settings_snapshot: PrivacySettingsSnapshot, ) -> Result<()> { - let event = warpui::telemetry::create_event( + let event = galaxyui::telemetry::create_event( user_id.map(|uid| uid.as_string()), anonymous_id, event.name().into(), event.payload(), event.contains_ugc(), - warpui::time::get_current_time(), + galaxyui::time::get_current_time(), ); self.send_telemetry_event_internal(event, settings_snapshot) diff --git a/app/src/server/telemetry/mod_tests.rs b/app/src/server/telemetry/mod_tests.rs index 479146e1..f88d915a 100644 --- a/app/src/server/telemetry/mod_tests.rs +++ b/app/src/server/telemetry/mod_tests.rs @@ -15,22 +15,22 @@ fn test_persist_events_doesnt_include_ugc_events() { let user_id = Some("user".into()); let anonymous_id = "anonymous_id".to_owned(); - warpui::telemetry::record_event( + galaxyui::telemetry::record_event( user_id.clone(), anonymous_id.clone(), "non UGC event name".into(), None, /* payload */ false, /* contains_ugc */ - warpui::time::get_current_time(), + galaxyui::time::get_current_time(), ); - warpui::telemetry::record_event( + galaxyui::telemetry::record_event( user_id.clone(), anonymous_id.clone(), "UGC event name".into(), None, /* payload */ true, /* contains_ugc */ - warpui::time::get_current_time(), + galaxyui::time::get_current_time(), ); let file_path = dirs.root().join("rudderstack"); diff --git a/app/src/server/telemetry_ext.rs b/app/src/server/telemetry_ext.rs index fb0c501b..8efcf26f 100644 --- a/app/src/server/telemetry_ext.rs +++ b/app/src/server/telemetry_ext.rs @@ -6,11 +6,11 @@ use super::telemetry::secret_redaction::redact_secrets_in_value; use crate::auth::UserUid; use chrono::{DateTime, Utc}; use serde_json::{json, Value}; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, execution_mode, }; -use warpui::telemetry::EventPayload; +use galaxyui::telemetry::EventPayload; use super::telemetry::telemetry_context; @@ -18,7 +18,7 @@ pub trait TelemetryExt { fn to_rudder_batch_message(self) -> RudderBatchMessage; } -impl TelemetryExt for warpui::telemetry::Event { +impl TelemetryExt for galaxyui::telemetry::Event { fn to_rudder_batch_message(self) -> RudderBatchMessage { let message = match self.payload { EventPayload::IdentifyUser { diff --git a/app/src/server/telemetry_ext_tests.rs b/app/src/server/telemetry_ext_tests.rs index 53c4388e..b66badc4 100644 --- a/app/src/server/telemetry_ext_tests.rs +++ b/app/src/server/telemetry_ext_tests.rs @@ -1,6 +1,6 @@ use chrono::Utc; use serde_json::json; -use warpui::telemetry::{Event, EventPayload}; +use galaxyui::telemetry::{Event, EventPayload}; use super::*; diff --git a/app/src/server/voice_transcriber.rs b/app/src/server/voice_transcriber.rs index 7f6e53c0..3c774de6 100644 --- a/app/src/server/voice_transcriber.rs +++ b/app/src/server/voice_transcriber.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use async_trait::async_trait; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; use crate::ai::voice::transcribe::{Provider, TranscribeRequest}; use crate::voice::transcriber::Transcriber; diff --git a/app/src/session_management.rs b/app/src/session_management.rs index dc451ea8..c9878ccc 100644 --- a/app/src/session_management.rs +++ b/app/src/session_management.rs @@ -2,7 +2,7 @@ use std::collections::HashSet; use chrono::NaiveDateTime; -use warpui::{AppContext, Entity, EntityId, WindowId}; +use galaxyui::{AppContext, Entity, EntityId, WindowId}; use crate::context_chips::prompt_snapshot::PromptSnapshot; use crate::pane_group::PaneGroup; diff --git a/app/src/settings/accessibility.rs b/app/src/settings/accessibility.rs index 6a5de1f9..a163b35f 100644 --- a/app/src/settings/accessibility.rs +++ b/app/src/settings/accessibility.rs @@ -1,7 +1,7 @@ use settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; -use warpui::accessibility::AccessibilityVerbosity; +use galaxyui::accessibility::AccessibilityVerbosity; define_settings_group!(AccessibilitySettings, settings: [ a11y_verbosity: AccessibilityVerbosityState { diff --git a/app/src/settings/ai.rs b/app/src/settings/ai.rs index 88073c73..b2858b88 100644 --- a/app/src/settings/ai.rs +++ b/app/src/settings/ai.rs @@ -17,16 +17,16 @@ use cfg_if::cfg_if; use chrono::{DateTime, Utc}; use lazy_static::lazy_static; use regex::Regex; -use warpui::platform::OperatingSystem; -use warpui::{ +use galaxyui::platform::OperatingSystem; +use galaxyui::{ platform::keyboard::KeyCode, AppContext, Entity, ModelContext, SingletonEntity, UpdateModel, }; use settings::{ define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, }; -use warp_core::execution_mode::AppExecutionMode; -use warp_core::features::FeatureFlag; +use galaxy_core::execution_mode::AppExecutionMode; +use galaxy_core::features::FeatureFlag; use serde::{de::Deserializer, Deserialize, Serialize}; use strum::IntoEnumIterator; @@ -215,8 +215,8 @@ impl VoiceInputToggleKey { /// Converts the voice input toggle key to a Keystroke representation. /// Since these are standalone modifier keys, we construct the Keystroke directly /// rather than using `parse()` (which always requires a non-modifier key to be included). - pub fn keystroke(&self) -> Option { - use warpui::keymap::Keystroke; + pub fn keystroke(&self) -> Option { + use galaxyui::keymap::Keystroke; let keystroke = match self { VoiceInputToggleKey::None => return None, @@ -442,7 +442,9 @@ impl BedrockAuthMethod { #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, schemars::JsonSchema)] #[schemars(description = "Configuration for a single AWS Bedrock model.")] pub struct BedrockModelConfig { - #[schemars(description = "The Bedrock model ID (e.g. anthropic.claude-sonnet-4-20250514-v1:0).")] + #[schemars( + description = "The Bedrock model ID (e.g. anthropic.claude-sonnet-4-20250514-v1:0)." + )] pub model_id: String, #[schemars(description = "Display name shown in the model picker.")] pub display_name: String, @@ -1461,7 +1463,7 @@ define_settings_group!(AISettings, settings: [ // This setting is only used when the AI autonomy setting is AlwaysAsk or not set. cloud_agent_computer_use_enabled: CloudAgentComputerUseEnabled { type: bool, - default: warp_core::channel::ChannelState::channel().is_dogfood(), + default: galaxy_core::channel::ChannelState::channel().is_dogfood(), supported_platforms: SupportedPlatforms::DESKTOP, sync_to_cloud: SyncToCloud::Globally(RespectUserSyncSetting::Yes), private: false, @@ -1667,41 +1669,41 @@ impl AISettings { .cloned() } - pub fn is_active_ai_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_active_ai_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_any_ai_enabled(app) && *self.is_active_ai_enabled_internal && AppExecutionMode::as_ref(app).allows_active_ai() } - pub fn is_prompt_suggestions_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_prompt_suggestions_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.prompt_suggestions_enabled_internal } - pub fn is_rule_suggestions_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_rule_suggestions_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.rule_suggestions_enabled_internal } - pub fn is_code_suggestions_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_code_suggestions_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.code_suggestions_enabled_internal } - pub fn is_natural_language_autosuggestions_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_natural_language_autosuggestions_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.natural_language_autosuggestions_enabled_internal } - pub fn is_shared_block_title_generation_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_shared_block_title_generation_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.shared_block_title_generation_enabled_internal } - pub fn is_git_operations_autogen_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_git_operations_autogen_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.git_operations_autogen_enabled_internal } - pub fn is_intelligent_autosuggestions_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_intelligent_autosuggestions_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_active_ai_enabled(app) && *self.intelligent_autosuggestions_enabled_internal } - pub fn is_voice_input_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_voice_input_enabled(&self, app: &galaxyui::AppContext) -> bool { // Voice input is conditionally-compiled because it requires additional dependencies on some platforms. cfg!(feature = "voice_input") && self.is_any_ai_enabled(app) @@ -1712,7 +1714,7 @@ impl AISettings { /// /// If `FeatureFlag::AgentView` is enabled, this specifically gates NLD enablement in the agent /// view only. - pub fn is_ai_autodetection_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_ai_autodetection_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_any_ai_enabled(app) && *self.ai_autodetection_enabled_internal } @@ -1721,19 +1723,19 @@ impl AISettings { /// This is only used when `FeatureFlag::AgentView` is enabled. /// If the user has not explicitly set this setting, it defaults to the value of /// `ai_autodetection_enabled_internal`. - pub fn is_nld_in_terminal_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_nld_in_terminal_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_any_ai_enabled(app) && *self.nld_in_terminal_enabled_internal } - pub fn is_memory_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_memory_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_any_ai_enabled(app) && *self.memory_enabled } - pub fn is_warp_drive_context_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_warp_drive_context_enabled(&self, app: &galaxyui::AppContext) -> bool { self.is_any_ai_enabled(app) && *self.warp_drive_context_enabled } - pub fn is_file_based_mcp_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_file_based_mcp_enabled(&self, app: &galaxyui::AppContext) -> bool { if !FeatureFlag::FileBasedMcp.is_enabled() || !self.is_any_ai_enabled(app) { return false; } @@ -1748,7 +1750,7 @@ impl AISettings { *self.file_based_mcp_enabled } - pub fn is_orchestration_enabled(&self, app: &warpui::AppContext) -> bool { + pub fn is_orchestration_enabled(&self, app: &galaxyui::AppContext) -> bool { FeatureFlag::Orchestration.is_enabled() && self.is_any_ai_enabled(app) && *self.orchestration_enabled diff --git a/app/src/settings/ai_tests.rs b/app/src/settings/ai_tests.rs index 061b9082..e15ad295 100644 --- a/app/src/settings/ai_tests.rs +++ b/app/src/settings/ai_tests.rs @@ -4,8 +4,8 @@ use crate::{ test_util::settings::initialize_settings_for_tests, }; use chrono::Utc; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::{App, SingletonEntity}; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::{App, SingletonEntity}; fn create_test_request_limit_info( limit: usize, diff --git a/app/src/settings/app_icon.rs b/app/src/settings/app_icon.rs index b7e35461..2950f1e5 100644 --- a/app/src/settings/app_icon.rs +++ b/app/src/settings/app_icon.rs @@ -1,6 +1,6 @@ use enum_iterator::Sequence; use serde::{Deserialize, Serialize}; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}, }; diff --git a/app/src/settings/cloud_preferences_syncer.rs b/app/src/settings/cloud_preferences_syncer.rs index c93ff5a5..476b7880 100644 --- a/app/src/settings/cloud_preferences_syncer.rs +++ b/app/src/settings/cloud_preferences_syncer.rs @@ -7,11 +7,11 @@ use std::{ use lazy_static::lazy_static; use settings::{Setting as _, SyncToCloud}; use std::time::Duration; -use warp_core::settings::ChangeEventReason; -use warp_core::user_preferences::GetUserPreferences; -use warpui::r#async::Timer; -use warpui::{Entity, ModelContext, SingletonEntity}; -use warpui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; +use galaxy_core::settings::ChangeEventReason; +use galaxy_core::user_preferences::GetUserPreferences; +use galaxyui::r#async::Timer; +use galaxyui::{Entity, ModelContext, SingletonEntity}; +use galaxyui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; use crate::{ auth::auth_state::AuthState, @@ -39,7 +39,7 @@ use crate::{ workspaces::user_workspaces::UserWorkspaces, }; -use warp_core::execution_mode::AppExecutionMode; +use galaxy_core::execution_mode::AppExecutionMode; use super::{ cloud_preferences::{CloudPreferencesSettings, CloudPreferencesSettingsChangedEvent}, diff --git a/app/src/settings/cloud_preferences_syncer_tests.rs b/app/src/settings/cloud_preferences_syncer_tests.rs index 437930b3..b76dc4d8 100644 --- a/app/src/settings/cloud_preferences_syncer_tests.rs +++ b/app/src/settings/cloud_preferences_syncer_tests.rs @@ -6,7 +6,7 @@ use std::{ }; use chrono::{DateTime, Utc}; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::{ auth::auth_state::AuthState, @@ -31,7 +31,7 @@ use crate::{ Assets, }; -use warp_core::{ +use galaxy_core::{ settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, @@ -313,7 +313,7 @@ fn test_sync_local_pref_to_cloud_after_initial_sync_creates_prefs_setting() { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // Wait for the syncer to create the preferences and privacy settings. await_spawned_futures( @@ -419,7 +419,7 @@ fn test_sync_local_pref_to_cloud_after_initial_sync() { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; app.update(|ctx| { // And then update all settings forcing the create requests @@ -533,7 +533,7 @@ fn run_initial_sync_test(is_onboarded: bool) { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; let expected_num_spawned_futures = if !is_onboarded { 4 } else { 3 }; await_spawned_futures( @@ -553,7 +553,7 @@ fn run_initial_sync_test(is_onboarded: bool) { }); }); - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; assert_eq!( is_onboarded, @@ -645,7 +645,7 @@ fn test_sync_local_pref_to_cloud_updates_existing_pref() { }); // Give the initial load time to complete - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // complete the create request for the cloud settings and the telemetry/crash reporting settings await_spawned_futures( @@ -667,7 +667,7 @@ fn test_sync_local_pref_to_cloud_updates_existing_pref() { }); // Give the update time to spawn futures - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; assert_num_spawned_futures(&mut app, 4, "expect the syncer to send an update request"); spawned_sync_queue_future_at_index(&mut app, 3).await; @@ -737,7 +737,7 @@ fn test_sync_cloud_pref_to_local_on_initial_load_or_collab_update() { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // complete the create request for the cloud settings and the telemetry/crash reporting settings await_spawned_futures( @@ -896,7 +896,7 @@ fn test_cloud_preferences_setting_initial_load_skipped_when_setting_is_off() { enable_settings_sync(&mut app); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // complete the create request for the cloud settings and the telemetry/crash reporting settings await_spawned_futures( @@ -961,7 +961,7 @@ fn test_sync_local_pref_to_cloud_doesnt_update_equal_pref() { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // Complete the create request for cloud prefs syncing await_spawned_futures( @@ -1049,7 +1049,7 @@ fn test_cloud_preferences_setting_enabling_setting_syncs_prefs() { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; await_spawned_futures( &mut app, @@ -1121,7 +1121,7 @@ fn test_cloud_pref_not_synced_when_current_value_not_syncable() { }); // Run any spawned futures - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; await_spawned_futures(&mut app, 3, "initial load").await; // Verify that the local value remains false and wasn't synced from cloud's true @@ -1200,7 +1200,7 @@ fn test_ensure_no_duplicate_cloud_prefs() { }); // Give time for the initial load and deduplication to complete - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // Wait for the initial creation of cloud settings and telemetry settings await_spawned_futures( @@ -1258,7 +1258,7 @@ async fn drain_sync_queue(app: &mut App) { // one can cause others to be spawned (e.g. an update in response // to a cloud change). for _ in 0..5 { - warpui::r#async::Timer::after(Duration::from_millis(200)).await; + galaxyui::r#async::Timer::after(Duration::from_millis(200)).await; let num = SyncQueue::handle(app).read(app, |sq, _| sq.spawned_futures().len()); if num == 0 { return; @@ -1274,7 +1274,7 @@ async fn drain_sync_queue(app: &mut App) { /// syncer will compare against. fn write_settings_file_with_content(path: &std::path::Path, content: &str) -> String { std::fs::write(path, content).expect("write temp settings file"); - warpui_extras::user_preferences::toml_backed::TomlBackedUserPreferences::file_content_hash(path) + galaxyui_extras::user_preferences::toml_backed::TomlBackedUserPreferences::file_content_hash(path) .expect("hash should be Some for non-empty file") } @@ -1696,7 +1696,7 @@ fn test_offline_ui_change_does_not_update_hash_until_sync_succeeds() { // Give the syncer a moment to finish handling the setting // change event. - warpui::r#async::Timer::after(Duration::from_millis(200)).await; + galaxyui::r#async::Timer::after(Duration::from_millis(200)).await; // CRITICAL ASSERTION: the stored hash must NOT have been // updated. The upload is enqueued but the SyncQueue is diff --git a/app/src/settings/debug.rs b/app/src/settings/debug.rs index 511f94f7..ee4c0dbe 100644 --- a/app/src/settings/debug.rs +++ b/app/src/settings/debug.rs @@ -61,7 +61,7 @@ impl DebugSettings { pub fn should_show_memory_stats(&self) -> bool { // We only want to show memory stats in dogfood and not in tests. *self.show_memory_stats.value() - && warp_core::channel::ChannelState::enable_debug_features() + && galaxy_core::channel::ChannelState::enable_debug_features() && !cfg!(test) } } diff --git a/app/src/settings/editor.rs b/app/src/settings/editor.rs index 87f68e4a..7901edbb 100644 --- a/app/src/settings/editor.rs +++ b/app/src/settings/editor.rs @@ -6,7 +6,7 @@ use settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting as _, SupportedPlatforms, SyncToCloud, }; -use warpui::ModelContext; +use galaxyui::ModelContext; #[derive( Clone, diff --git a/app/src/settings/font.rs b/app/src/settings/font.rs index 26e1dd6a..801c53e2 100644 --- a/app/src/settings/font.rs +++ b/app/src/settings/font.rs @@ -1,14 +1,15 @@ -use warp_core::ui::builder::MIN_FONT_SIZE; -use warpui::{fonts::Weight, rendering::ThinStrokes, AppContext, SingletonEntity}; +use galaxy_core::ui::builder::MIN_FONT_SIZE; +use galaxyui::{fonts::Weight, rendering::ThinStrokes, AppContext, SingletonEntity}; use settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, }; -use warpui::elements::DEFAULT_UI_LINE_HEIGHT_RATIO; +use galaxyui::elements::DEFAULT_UI_LINE_HEIGHT_RATIO; use super::EnforceMinimumContrast as EnforceMinimumContrastEnum; pub const DEFAULT_MONOSPACE_FONT_NAME: &str = "Hack"; +pub const DEFAULT_UI_FONT_NAME: &str = ""; pub const DEFAULT_MONOSPACE_FONT_SIZE: f32 = 13.0; pub const DEFAULT_MONOSPACE_FONT_WEIGHT: Weight = Weight::Normal; @@ -24,6 +25,16 @@ define_settings_group!(FontSettings, toml_path: "appearance.text.font_name", description: "The monospace font used in the terminal.", }, + ui_font_name: UIFontName { + type: String, + default: DEFAULT_UI_FONT_NAME.to_string(), + supported_platforms: SupportedPlatforms::ALL, + sync_to_cloud: SyncToCloud::Never, + private: false, + storage_key: "UIFontName", + toml_path: "appearance.text.ui_font_name", + description: "The font used for UI chrome text.", + }, monospace_font_size: MonospaceFontSize { type: f32, default: DEFAULT_MONOSPACE_FONT_SIZE, diff --git a/app/src/settings/gpu.rs b/app/src/settings/gpu.rs index 8c66705a..09ed20ec 100644 --- a/app/src/settings/gpu.rs +++ b/app/src/settings/gpu.rs @@ -1,5 +1,5 @@ use settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}; -use warpui::platform::GraphicsBackend; +use galaxyui::platform::GraphicsBackend; define_settings_group!(GPUSettings, settings: [ prefer_low_power_gpu: PreferLowPowerGPU { diff --git a/app/src/settings/import/alacritty_parser.rs b/app/src/settings/import/alacritty_parser.rs index 320de10e..c72ff1c3 100644 --- a/app/src/settings/import/alacritty_parser.rs +++ b/app/src/settings/import/alacritty_parser.rs @@ -3,11 +3,11 @@ use async_recursion::async_recursion; use async_trait::async_trait; use serde::Deserialize; use std::{env, io::ErrorKind, path::PathBuf}; -use warp_core::ui::{ +use galaxy_core::ui::{ color::hex_color::coloru_from_hex_string, theme::{AnsiColor, AnsiColors, TerminalColors, WarpTheme}, }; -use warpui::fonts::FontInfo; +use galaxyui::fonts::FontInfo; use super::config::{ calculate_accent_color, Config, ConfigError, ImportableSetting, ParseableConfig, SettingType, diff --git a/app/src/settings/import/alacritty_parser_tests.rs b/app/src/settings/import/alacritty_parser_tests.rs index b9188fd0..5aeb491e 100644 --- a/app/src/settings/import/alacritty_parser_tests.rs +++ b/app/src/settings/import/alacritty_parser_tests.rs @@ -1,6 +1,6 @@ use async_io::block_on; use virtual_fs::{Stub, VirtualFS}; -use warp_core::ui::{color::hex_color::coloru_from_hex_string, theme::AnsiColor}; +use galaxy_core::ui::{color::hex_color::coloru_from_hex_string, theme::AnsiColor}; use crate::settings::import::config::{ParseableConfig, ThemeType}; diff --git a/app/src/settings/import/config.rs b/app/src/settings/import/config.rs index 3beb1022..1ac547a9 100644 --- a/app/src/settings/import/config.rs +++ b/app/src/settings/import/config.rs @@ -3,14 +3,14 @@ use std::{path::PathBuf, sync::Arc}; use pathfinder_color::ColorU; use serde::Serialize; use strum_macros::EnumIter; -use warp_core::ui::{ +use galaxy_core::ui::{ color::hex_color::HexColorError as UiHexColorError, theme::{AnsiColors, WarpTheme}, }; use async_trait::async_trait; use thiserror::Error; -use warpui::{fonts::FontInfo, keymap::Keystroke, DisplayIdx}; +use galaxyui::{fonts::FontInfo, keymap::Keystroke, DisplayIdx}; use crate::{ interval_timer::IntervalTimer, diff --git a/app/src/settings/import/iterm_parser.rs b/app/src/settings/import/iterm_parser.rs index 4d907880..dc7911ed 100644 --- a/app/src/settings/import/iterm_parser.rs +++ b/app/src/settings/import/iterm_parser.rs @@ -6,8 +6,8 @@ use itertools::Itertools; use palette::Srgba; use pathfinder_color::ColorU; use plist::{Dictionary, Value}; -use warp_core::ui::theme::{AnsiColors, TerminalColors, WarpTheme}; -use warpui::{ +use galaxy_core::ui::theme::{AnsiColors, TerminalColors, WarpTheme}; +use galaxyui::{ fonts::FontInfo, keymap::Keystroke, platform::mac::utils::unicode_char_to_key, DisplayIdx, }; diff --git a/app/src/settings/import/iterm_parser_tests.rs b/app/src/settings/import/iterm_parser_tests.rs index 94577957..b60e340a 100644 --- a/app/src/settings/import/iterm_parser_tests.rs +++ b/app/src/settings/import/iterm_parser_tests.rs @@ -2,8 +2,8 @@ use async_io::block_on; use pathfinder_color::ColorU; use plist::{Dictionary, Value}; use virtual_fs::{Stub, VirtualFS}; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warpui::{fonts::FontInfo, keymap::Keystroke}; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxyui::{fonts::FontInfo, keymap::Keystroke}; use crate::settings::import::{ config::{GlobalHotkey, HotkeyError, ImportedFont, ParseableConfig, ThemeType}, diff --git a/app/src/settings/import/model.rs b/app/src/settings/import/model.rs index 88848ed3..805bd326 100644 --- a/app/src/settings/import/model.rs +++ b/app/src/settings/import/model.rs @@ -7,10 +7,10 @@ use crate::{send_telemetry_from_ctx, TelemetryEvent}; use serde::Serialize; use strum::IntoEnumIterator; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::features::FeatureFlag; -use warpui::Entity; -use warpui::ModelContext; -use warpui::SingletonEntity; +use galaxy_core::features::FeatureFlag; +use galaxyui::Entity; +use galaxyui::ModelContext; +use galaxyui::SingletonEntity; #[cfg(target_os = "macos")] use super::config::HotkeyError; @@ -50,7 +50,7 @@ impl ImportedConfigModel { use strum::IntoEnumIterator; self.started = true; - let loaded_system_fonts = warpui::fonts::Cache::handle(ctx) + let loaded_system_fonts = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |font_cache, ctx| font_cache.all_system_fonts(ctx)); ctx.spawn(loaded_system_fonts, |_, fonts, ctx| { let fonts = fonts diff --git a/app/src/settings/import/view.rs b/app/src/settings/import/view.rs index ff1cd73b..ca008f57 100644 --- a/app/src/settings/import/view.rs +++ b/app/src/settings/import/view.rs @@ -1,7 +1,7 @@ use itertools::Itertools; -use warp_core::{settings::Setting, ui::appearance::Appearance}; +use galaxy_core::{settings::Setting, ui::appearance::Appearance}; -use warpui::{ +use galaxyui::{ elements::{ Border, Container, CornerRadius, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, @@ -17,7 +17,7 @@ use warpui::{ ViewContext, }; -use warpui::ui_components::radio_buttons::RadioButtonStateHandle; +use galaxyui::ui_components::radio_buttons::RadioButtonStateHandle; use crate::{ report_if_error, send_telemetry_from_ctx, @@ -217,7 +217,7 @@ impl SettingsImportView { &self, appearance: &Appearance, name: impl Into>, - ) -> Box { + ) -> Box { let theme = appearance.theme(); let font_color = theme.disabled_text_color(theme.background()); let font_family = appearance.monospace_font_family(); @@ -237,8 +237,8 @@ impl SettingsImportView { fn render_import_button( &self, appearance: &Appearance, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let model = ImportedConfigModel::as_ref(app); let button = if self .radio_button_state @@ -282,7 +282,7 @@ impl SettingsImportView { .finish() } - fn render_reset_button(&self, appearance: &Appearance) -> Box { + fn render_reset_button(&self, appearance: &Appearance) -> Box { appearance .ui_builder() .button(ButtonVariant::Secondary, self.skip_button_handle.clone()) @@ -311,8 +311,8 @@ impl SettingsImportView { appearance: &Appearance, setting: &ToggleableSetting, idx: usize, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let theme = appearance.theme(); let font_family = appearance.monospace_font_family(); let font_color = blended_colors::text_sub(theme, theme.background()); @@ -343,7 +343,7 @@ impl SettingsImportView { ) .with_child(Shrinkable::new(1.0, description.finish()).finish()) .with_main_axis_size(MainAxisSize::Max) - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center) .finish(), ) .finish() @@ -356,8 +356,8 @@ impl SettingsImportView { is_selected: bool, hovered: bool, idx: usize, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let theme = appearance.theme(); let font_family = appearance.monospace_font_family(); let font_color = theme.main_text_color(theme.background()); @@ -389,7 +389,7 @@ impl SettingsImportView { } let config_name_flex = Flex::row() - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center) .with_children(config_name_text_elements) .finish(); @@ -461,7 +461,7 @@ impl SettingsImportView { .with_opacity(appearance.theme().settings_import_config_hover_opacity()); let preference_flex = Flex::row() - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center) .with_children(preference_text_elements) .finish(); Container::new( @@ -473,7 +473,7 @@ impl SettingsImportView { .with_child(Shrinkable::new(3.0, config_name_flex).finish()) .with_child(Shrinkable::new(1.0, preference_flex).finish()) .with_cross_axis_alignment( - warpui::elements::CrossAxisAlignment::Center, + galaxyui::elements::CrossAxisAlignment::Center, ) .with_main_axis_size(MainAxisSize::Max) .with_main_axis_alignment(MainAxisAlignment::SpaceBetween) @@ -516,7 +516,7 @@ impl SettingsImportView { appearance: &Appearance, settings: &[ToggleableSetting], idx: usize, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let mut iter = settings.iter(); let mut column_holder = Flex::row().with_main_axis_size(MainAxisSize::Max); @@ -747,7 +747,7 @@ impl SettingsImportView { } fn set_theme( - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, theme_type: ThemeType, terminal_name: &String, ) { @@ -861,7 +861,7 @@ impl SettingsImportView { ); } - pub(crate) fn interrupt_block(&mut self, ctx: &mut warpui::ViewContext) { + pub(crate) fn interrupt_block(&mut self, ctx: &mut galaxyui::ViewContext) { self.state = State::Completed { imported_idx: None }; ctx.notify(); } @@ -907,7 +907,7 @@ impl View for SettingsImportView { "SettingsImportView" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let font_family = appearance.monospace_font_family(); let font_size = appearance.monospace_font_size(); diff --git a/app/src/settings/init.rs b/app/src/settings/init.rs index f14ec26a..e929921c 100644 --- a/app/src/settings/init.rs +++ b/app/src/settings/init.rs @@ -1,7 +1,7 @@ use settings::{Setting as _, SettingsManager}; -use warp_core::features::FeatureFlag; -use warpui::{rendering::GPUPowerPreference, AppContext, SingletonEntity}; -use warpui_extras::user_preferences; +use galaxy_core::features::FeatureFlag; +use galaxyui::{rendering::GPUPowerPreference, AppContext, SingletonEntity}; +use galaxyui_extras::user_preferences; use crate::{ ai::cloud_agent_settings::CloudAgentSettings, @@ -29,7 +29,7 @@ use crate::{ workspace::tab_settings::TabSettings, }; -use warp_core::semantic_selection::SemanticSelection; +use galaxy_core::semantic_selection::SemanticSelection; use super::{ app_icon::AppIconSettings, app_installation_detection::UserAppInstallDetectionSettings, @@ -206,7 +206,7 @@ pub fn init( // push changed values into setting models. #[cfg(feature = "local_fs")] { - let prefs = ::as_ref(ctx); + let prefs = ::as_ref(ctx); if prefs.is_settings_file() { ctx.subscribe_to_model( &crate::user_config::WarpConfig::handle(ctx), @@ -222,7 +222,7 @@ pub fn init( /// the settings file is modified, created, or deleted. #[cfg(feature = "local_fs")] fn handle_warp_config_change( - _: warpui::ModelHandle, + _: galaxyui::ModelHandle, event: &crate::user_config::WarpConfigUpdateEvent, ctx: &mut AppContext, ) { @@ -231,7 +231,7 @@ fn handle_warp_config_change( if !matches!(event, WarpConfigUpdateEvent::Settings) { return; } - let prefs = ::as_ref(ctx); + let prefs = ::as_ref(ctx); if let Err(err) = prefs.reload_from_disk() { log::warn!("Settings file reload failed: {err}"); WarpConfig::handle(ctx).update(ctx, |_, ctx| { @@ -270,11 +270,11 @@ fn init_platform_native_preferences() -> user_preferences::Model { } } } else if #[cfg(target_os = "windows")] { - let app_id = warp_core::channel::ChannelState::app_id(); + let app_id = galaxy_core::channel::ChannelState::app_id(); Box::new(user_preferences::registry_backed::RegistryBackedPreferences::new(app_id.application_name())) } else if #[cfg(target_os = "macos")] { Box::new(user_preferences::user_defaults::UserDefaultsPreferencesStorage::new( - warp_core::channel::ChannelState::data_domain_if_not_default() + galaxy_core::channel::ChannelState::data_domain_if_not_default() )) } else if #[cfg(target_family = "wasm")] { Box::::default() @@ -309,7 +309,7 @@ pub fn init_public_user_preferences() -> (user_preferences::Model, Option::default(), None) } else { - if warp_core::features::FeatureFlag::SettingsFile.is_enabled() { + if galaxy_core::features::FeatureFlag::SettingsFile.is_enabled() { let (prefs, parse_error) = user_preferences::toml_backed::TomlBackedUserPreferences::new( super::user_preferences_toml_file_path(), @@ -342,7 +342,7 @@ fn needs_settings_file_migration(ctx: &AppContext) -> bool { return false; } - use warp_core::user_preferences::GetUserPreferences as _; + use galaxy_core::user_preferences::GetUserPreferences as _; ctx.private_user_preferences() .read_value(SETTINGS_FILE_MIGRATION_COMPLETE_KEY) .unwrap_or_default() @@ -359,7 +359,7 @@ fn needs_settings_file_migration(ctx: &AppContext) -> bool { /// the in-memory setting, and writes to the TOML file with the correct /// hierarchy, `serialize_for_file` transforms, and `max_table_depth`. fn migrate_native_settings_to_settings_file(ctx: &mut AppContext) { - use warp_core::user_preferences::GetUserPreferences as _; + use galaxy_core::user_preferences::GetUserPreferences as _; log::info!("Migrating public settings from native store to settings.toml"); diff --git a/app/src/settings/init_tests.rs b/app/src/settings/init_tests.rs index e5d60bf8..b54ef851 100644 --- a/app/src/settings/init_tests.rs +++ b/app/src/settings/init_tests.rs @@ -4,11 +4,11 @@ use settings::{ Setting, SettingsManager, }; use settings_value::SettingsValue; -use warp_core::features::FeatureFlag; -use warp_core::settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::SingletonEntity; -use warpui_extras::user_preferences; +use galaxy_core::features::FeatureFlag; +use galaxy_core::settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::SingletonEntity; +use galaxyui_extras::user_preferences; use crate::terminal::session_settings::{NotificationsMode, NotificationsSettings}; @@ -47,7 +47,7 @@ define_settings_group!(MigrationTestSettings, settings: [ /// Registers separate InMemoryPreferences singletons for public and private /// stores, then adds a SettingsManager and the test settings group. -fn init_test_app(ctx: &mut warpui::AppContext) { +fn init_test_app(ctx: &mut galaxyui::AppContext) { ctx.add_singleton_model(move |_| { PublicPreferences::new(Box::::default()) }); @@ -80,7 +80,7 @@ impl Drop for SettingsFileEnabledGuard { #[test] #[serial_test::serial] fn test_migration_copies_public_settings_from_native_store() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { // Enable the settings file so `preferences_for_setting` routes // public setting writes to the Model singleton (not the private store). let _guard = FeatureFlag::SettingsFile.override_enabled(true); @@ -144,7 +144,7 @@ fn test_migration_copies_public_settings_from_native_store() { #[test] fn test_migration_writes_marker_to_native_store() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_test_app); // No marker before migration. @@ -174,7 +174,7 @@ fn test_migration_writes_marker_to_native_store() { #[test] #[serial_test::serial] fn test_migration_skips_settings_absent_from_native_store() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { let _guard = FeatureFlag::SettingsFile.override_enabled(true); let _settings_file_enabled = SettingsFileEnabledGuard::new(true); app.update(init_test_app); @@ -217,7 +217,7 @@ fn test_migration_skips_settings_absent_from_native_store() { #[test] fn test_migration_handles_string_setting() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_test_app); // Seed a JSON-encoded string value in the native store. @@ -245,7 +245,7 @@ fn test_migration_handles_string_setting() { #[test] fn test_migration_does_not_rerun_when_marker_present() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { let _guard = FeatureFlag::SettingsFile.override_enabled(true); app.update(init_test_app); @@ -284,7 +284,7 @@ fn test_migration_does_not_rerun_when_marker_present() { #[test] #[serial_test::serial] fn test_migration_with_multiple_setting_types() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { let _guard = FeatureFlag::SettingsFile.override_enabled(true); let _settings_file_enabled = SettingsFileEnabledGuard::new(true); @@ -380,8 +380,8 @@ fn test_migration_with_multiple_setting_types() { mod notifications_migration { use settings::{PrivatePreferences, PublicPreferences, SettingsManager}; - use warp_core::settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}; - use warpui_extras::user_preferences; + use galaxy_core::settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}; + use galaxyui_extras::user_preferences; use crate::terminal::session_settings::NotificationsSettings; @@ -397,7 +397,7 @@ mod notifications_migration { }, ]); - pub fn init_notifications_migration_test_app(ctx: &mut warpui::AppContext) { + pub fn init_notifications_migration_test_app(ctx: &mut galaxyui::AppContext) { ctx.add_singleton_model(move |_| { PublicPreferences::new( Box::::default(), @@ -464,7 +464,7 @@ fn test_notifications_from_file_value_rejects_serde_format_duration() { #[test] #[serial_test::serial] fn test_migration_preserves_notifications_mode() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { let _guard = FeatureFlag::SettingsFile.override_enabled(true); let _settings_file_enabled = SettingsFileEnabledGuard::new(true); @@ -503,7 +503,7 @@ fn test_migration_preserves_notifications_mode() { #[test] #[serial_test::serial] fn test_migration_preserves_custom_long_running_threshold() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { let _guard = FeatureFlag::SettingsFile.override_enabled(true); let _settings_file_enabled = SettingsFileEnabledGuard::new(true); diff --git a/app/src/settings/initializer.rs b/app/src/settings/initializer.rs index a90967a4..061f1eef 100644 --- a/app/src/settings/initializer.rs +++ b/app/src/settings/initializer.rs @@ -1,7 +1,7 @@ use std::sync::Arc; -use warp_core::{features::FeatureFlag, settings::Setting}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::{features::FeatureFlag, settings::Setting}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::settings::{AISettings, FontSettings, ThinkingDisplayMode}; use crate::{ @@ -132,7 +132,7 @@ impl SettingsInitializer { // // TODO(jefflloyd): Remove this approximately 6 weeks from 3/19/26. { - use warp_core::user_preferences::GetUserPreferences as _; + use galaxy_core::user_preferences::GetUserPreferences as _; AISettings::handle(ctx).update(ctx, |ai_settings, ctx| { // If the new setting already has a value in preferences, the diff --git a/app/src/settings/input.rs b/app/src/settings/input.rs index a03fe3f4..1f2694f2 100644 --- a/app/src/settings/input.rs +++ b/app/src/settings/input.rs @@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize}; /// TODO: move alias_expansion setting into this group. use settings::{define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud}; use std::collections::HashMap; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::terminal::input::inline_menu::InlineMenuType; use crate::terminal::session_settings::SessionSettings; diff --git a/app/src/settings/linux.rs b/app/src/settings/linux.rs index 343c40cf..e194c2d2 100644 --- a/app/src/settings/linux.rs +++ b/app/src/settings/linux.rs @@ -1,5 +1,5 @@ use settings::{macros::define_settings_group, SupportedPlatforms, SyncToCloud}; -use warpui::platform::linux; +use galaxyui::platform::linux; define_settings_group!(LinuxAppConfiguration, settings: [ diff --git a/app/src/settings/mod.rs b/app/src/settings/mod.rs index 7c99c799..325ca906 100644 --- a/app/src/settings/mod.rs +++ b/app/src/settings/mod.rs @@ -64,7 +64,7 @@ pub use select::*; pub use ssh::*; pub use theme::*; pub use vim_banner::*; -use warp_core::user_preferences::GetUserPreferences as _; +use galaxy_core::user_preferences::GetUserPreferences as _; /// Describes errors encountered when loading settings from `settings.toml`. #[derive(Clone, Debug, PartialEq, Eq)] @@ -127,8 +127,8 @@ use serde::{Deserialize, Serialize}; use serde_json::{json, Value}; use settings::Setting as _; use std::{collections::HashMap, ops::Mul, path::PathBuf}; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::DEFAULT_UI_LINE_HEIGHT_RATIO, keymap::Keystroke, AppContext, DisplayIdx, SingletonEntity, }; @@ -583,10 +583,10 @@ pub struct ExtraMetaKeysChangedArg { /// Returns the path to the user preferences file. pub fn user_preferences_file_path() -> PathBuf { - warp_core::paths::config_local_dir().join("user_preferences.json") + galaxy_core::paths::config_local_dir().join("user_preferences.json") } /// Returns the path to the TOML settings file. pub fn user_preferences_toml_file_path() -> PathBuf { - warp_core::paths::config_local_dir().join("settings.toml") + galaxy_core::paths::config_local_dir().join("settings.toml") } diff --git a/app/src/settings/onboarding.rs b/app/src/settings/onboarding.rs index 1d761aac..7b127da3 100644 --- a/app/src/settings/onboarding.rs +++ b/app/src/settings/onboarding.rs @@ -9,8 +9,8 @@ use crate::workspaces::user_workspaces::UserWorkspaces; use onboarding::slides::{AgentAutonomy, AgentDevelopmentSettings}; use onboarding::{SelectedSettings, SessionDefault, UICustomizationSettings}; use settings::Setting as _; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, SingletonEntity as _}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, SingletonEntity as _}; /// Applies onboarding settings based on the user's selected mode. pub fn apply_onboarding_settings(selected_settings: &SelectedSettings, app: &mut AppContext) { diff --git a/app/src/settings/onboarding_tests.rs b/app/src/settings/onboarding_tests.rs index 694f0f4e..085efee2 100644 --- a/app/src/settings/onboarding_tests.rs +++ b/app/src/settings/onboarding_tests.rs @@ -2,7 +2,7 @@ use ai::LLMId; use chrono::{DateTime, Utc}; use onboarding::slides::{AgentAutonomy, AgentDevelopmentSettings, ProjectOnboardingSettings}; use onboarding::SelectedSettings; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::ai::execution_profiles::profiles::AIExecutionProfilesModel; use crate::ai::execution_profiles::{ diff --git a/app/src/settings/privacy.rs b/app/src/settings/privacy.rs index b186a71a..d3036298 100644 --- a/app/src/settings/privacy.rs +++ b/app/src/settings/privacy.rs @@ -3,10 +3,10 @@ use std::sync::Arc; use anyhow::Result; use regex::Regex; -use warp_core::features::FeatureFlag; -use warp_core::report_if_error; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity, UpdateModel}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::report_if_error; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity, UpdateModel}; use crate::ai::blocklist::telemetry_banner::should_collect_ai_ugc_telemetry; use crate::auth::auth_state::AuthState; diff --git a/app/src/settings/same_line_prompt_block.rs b/app/src/settings/same_line_prompt_block.rs index ec9b85ea..6919a864 100644 --- a/app/src/settings/same_line_prompt_block.rs +++ b/app/src/settings/same_line_prompt_block.rs @@ -1,5 +1,5 @@ use settings::{RespectUserSyncSetting, SupportedPlatforms, SyncToCloud}; -use warp_core::define_settings_group; +use galaxy_core::define_settings_group; use serde::{Deserialize, Serialize}; diff --git a/app/src/settings/select.rs b/app/src/settings/select.rs index 2342295c..98d41a2f 100644 --- a/app/src/settings/select.rs +++ b/app/src/settings/select.rs @@ -1,6 +1,6 @@ use std::ops::Not; -use warpui::{clipboard::ClipboardContent, AppContext}; +use galaxyui::{clipboard::ClipboardContent, AppContext}; use settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, diff --git a/app/src/settings/theme.rs b/app/src/settings/theme.rs index d119c75f..076a48c2 100644 --- a/app/src/settings/theme.rs +++ b/app/src/settings/theme.rs @@ -1,4 +1,4 @@ -use warpui::{platform::SystemTheme, AppContext}; +use galaxyui::{platform::SystemTheme, AppContext}; use crate::themes::theme::{RespectSystemTheme, SelectedSystemThemes, ThemeKind}; use settings::{ diff --git a/app/src/settings/vim_banner.rs b/app/src/settings/vim_banner.rs index 452de5c9..c7b1da82 100644 --- a/app/src/settings/vim_banner.rs +++ b/app/src/settings/vim_banner.rs @@ -1,6 +1,6 @@ use crate::banner::BannerState; use settings::{RespectUserSyncSetting, SupportedPlatforms, SyncToCloud}; -use warp_core::define_settings_group; +use galaxy_core::define_settings_group; // This isn't exactly a setting, but rather a record of a // user action that should be persisted the same way we would a setting. diff --git a/app/src/settings_view/about_page.rs b/app/src/settings_view/about_page.rs index b5c03b66..1be5ca7e 100644 --- a/app/src/settings_view/about_page.rs +++ b/app/src/settings_view/about_page.rs @@ -9,7 +9,7 @@ use crate::{ appearance::Appearance, channel::ChannelState, themes::theme::ColorScheme, workspace::WorkspaceAction, }; -use warpui::{ +use galaxyui::{ assets::asset_cache::AssetSource, elements::{ Align, CacheOption, ConstrainedBox, Container, CrossAxisAlignment, Element, Flex, Image, @@ -54,7 +54,7 @@ impl SettingsWidget for AboutPageWidget { type View = AboutPageView; fn search_terms(&self) -> &str { - "about warp version" + "about galaxy ai version" } fn render( @@ -67,9 +67,9 @@ impl SettingsWidget for AboutPageWidget { let ui_builder = appearance.ui_builder(); let image_path = if theme.inferred_color_scheme() == ColorScheme::LightOnDark { - "bundled/svg/warp-logo-with-light-title.svg" + "bundled/svg/bedrock.svg" } else { - "bundled/svg/warp-logo-with-dark-title.svg" + "bundled/svg/bedrock.svg" }; let version = ChannelState::app_version().unwrap_or("v#.##.###"); @@ -118,7 +118,7 @@ impl SettingsWidget for AboutPageWidget { .with_child(version_row.finish()) .with_child( ui_builder - .span("Copyright 2026 Warp") + .span("Copyright 2026 Samsung Electronics Co., Ltd.") .build() .with_margin_top(16.) .finish(), diff --git a/app/src/settings_view/admin_actions.rs b/app/src/settings_view/admin_actions.rs index 06360029..d944c9f1 100644 --- a/app/src/settings_view/admin_actions.rs +++ b/app/src/settings_view/admin_actions.rs @@ -1,5 +1,5 @@ use crate::{channel::ChannelState, server::ids::ServerId}; -use warpui::AppContext; +use galaxyui::AppContext; /// Shared admin panel actions and utilities for settings views pub struct AdminActions; diff --git a/app/src/settings_view/agent_assisted_environment_modal.rs b/app/src/settings_view/agent_assisted_environment_modal.rs index 6fc255fb..e062a5b3 100644 --- a/app/src/settings_view/agent_assisted_environment_modal.rs +++ b/app/src/settings_view/agent_assisted_environment_modal.rs @@ -5,10 +5,10 @@ use std::{ }; use pathfinder_color::ColorU; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, paths::home_relative_path, ui::theme::color::internal_colors, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, Empty, Expanded, Flex, @@ -529,7 +529,7 @@ impl AgentAssistedEnvironmentModal { ScrollbarWidth::Auto, theme.nonactive_ui_text_color().into(), theme.active_ui_text_color().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .with_padding_start(0.) diff --git a/app/src/settings_view/agent_assisted_environment_modal_tests.rs b/app/src/settings_view/agent_assisted_environment_modal_tests.rs index 5eafc98b..e57bfb98 100644 --- a/app/src/settings_view/agent_assisted_environment_modal_tests.rs +++ b/app/src/settings_view/agent_assisted_environment_modal_tests.rs @@ -5,10 +5,10 @@ use crate::test_util::settings::initialize_settings_for_tests; use crate::workspace::ToastStack; use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; use std::path::PathBuf; -use warp_core::ui::appearance::Appearance; -use warpui::elements::{ChildView, Empty}; -use warpui::platform::WindowStyle; -use warpui::{App, AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{ChildView, Empty}; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; fn init_modal_test_models(app: &mut App) { initialize_settings_for_tests(app); diff --git a/app/src/settings_view/ai_page.rs b/app/src/settings_view/ai_page.rs index a8c18634..1ad9e8d4 100644 --- a/app/src/settings_view/ai_page.rs +++ b/app/src/settings_view/ai_page.rs @@ -23,16 +23,15 @@ use crate::settings::InputSettings; use crate::settings::{ AIAutoDetectionEnabled, AICommandDenylist, AISettingsChangedEvent, AgentModeCodingPermissionsType, AgentModeCommandExecutionDenylist, - AgentModeCommandExecutionPredicate, AgentModeQuerySuggestionsEnabled, BedrockAutoLogin, - BedrockAuthMethod, BedrockCrossRegionInference, BedrockEnabled, BedrockFallbackToWarp, - CanUseWarpCreditsWithByok, CodeSettings, CodebaseContextEnabled, - FileBasedMcpEnabled, GitOperationsAutogenEnabled, IncludeAgentCommandsInHistory, - IntelligentAutosuggestionsEnabled, MemoryEnabled, NLDInTerminalEnabled, - NaturalLanguageAutosuggestionsEnabled, OrchestrationEnabled, RuleSuggestionsEnabled, - SharedBlockTitleGenerationEnabled, ShouldRenderCLIAgentToolbar, - ShouldRenderUseAgentToolbarForUserCommands, ShouldShowOzUpdatesInZeroState, ShowAgentTips, - ShowConversationHistory, ShowHintText, ThinkingDisplayMode, VoiceInputEnabled, - WarpDriveContextEnabled, + AgentModeCommandExecutionPredicate, AgentModeQuerySuggestionsEnabled, BedrockAuthMethod, + BedrockAutoLogin, BedrockCrossRegionInference, BedrockEnabled, BedrockFallbackToWarp, + CanUseWarpCreditsWithByok, CodeSettings, CodebaseContextEnabled, FileBasedMcpEnabled, + GitOperationsAutogenEnabled, IncludeAgentCommandsInHistory, IntelligentAutosuggestionsEnabled, + MemoryEnabled, NLDInTerminalEnabled, NaturalLanguageAutosuggestionsEnabled, + OrchestrationEnabled, RuleSuggestionsEnabled, SharedBlockTitleGenerationEnabled, + ShouldRenderCLIAgentToolbar, ShouldRenderUseAgentToolbarForUserCommands, + ShouldShowOzUpdatesInZeroState, ShowAgentTips, ShowConversationHistory, ShowHintText, + ThinkingDisplayMode, VoiceInputEnabled, WarpDriveContextEnabled, }; use crate::terminal::session_settings::{SessionSettings, SessionSettingsChangedEvent}; use crate::terminal::CLIAgent; @@ -47,18 +46,18 @@ use itertools::Itertools; use regex::Regex; use settings::{Setting, ToggleableSetting}; use strum::IntoEnumIterator; -use warp_core::channel::ChannelState; -use warp_core::context_flag::ContextFlag; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ - ChildView, ConstrainedBox, CornerRadius, CrossAxisAlignment, Fill, - HyperlinkLens, MainAxisAlignment, MainAxisSize, MouseStateHandle, Radius, Shrinkable, Text, +use galaxy_core::channel::ChannelState; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ + ChildView, ConstrainedBox, CornerRadius, CrossAxisAlignment, Fill, HyperlinkLens, + MainAxisAlignment, MainAxisSize, MouseStateHandle, Radius, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::id; -use warpui::keymap::ContextPredicate; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::id; +use galaxyui::keymap::ContextPredicate; +use galaxyui::{ elements::{ Container, Flex, FormattedTextElement, HighlightedHyperlink, HyperlinkUrl, ParentElement, }, @@ -295,7 +294,7 @@ pub fn init_actions_from_parent_view( ); { use crate::settings::ThinkingDisplayMode; - use warpui::keymap::FixedBinding; + use galaxyui::keymap::FixedBinding; let ai_context = context.clone() & id!(flags::IS_ANY_AI_ENABLED); let mode_bindings: Vec = ThinkingDisplayMode::iter() @@ -2038,7 +2037,7 @@ impl View for AISettingsPageView { "AISettingsPage" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { self.page.render(self, app) } } @@ -2768,9 +2767,7 @@ impl TypedActionView for AISettingsPageView { } AISettingsPageAction::ToggleBedrockEnabled => { AISettings::handle(ctx).update(ctx, |settings, ctx| { - report_if_error!(settings - .bedrock_enabled - .toggle_and_save_value(ctx)); + report_if_error!(settings.bedrock_enabled.toggle_and_save_value(ctx)); }); ctx.notify(); } @@ -2801,9 +2798,7 @@ impl TypedActionView for AISettingsPageView { }); } Err(e) => { - log::error!( - "Failed to discover Bedrock inference profiles: {e}" - ); + log::error!("Failed to discover Bedrock inference profiles: {e}"); } }, ); @@ -2832,9 +2827,7 @@ impl TypedActionView for AISettingsPageView { } AISettingsPageAction::ToggleBedrockFallbackToWarp => { AISettings::handle(ctx).update(ctx, |settings, ctx| { - report_if_error!(settings - .bedrock_fallback_to_warp - .toggle_and_save_value(ctx)); + report_if_error!(settings.bedrock_fallback_to_warp.toggle_and_save_value(ctx)); }); ctx.notify(); } @@ -3154,7 +3147,7 @@ impl SettingsWidget for GlobalAIWidget { .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_child( Text::new_inline( - "Warp Agent", + "Galaxy Agent", appearance.ui_font_family(), PRIMARY_HEADER_FONT_SIZE, ) @@ -3269,13 +3262,13 @@ impl UsageWidget { is_unlimited: bool, workspace_is_delinquent_due_to_payment_issue: bool, appearance: &Appearance, - ) -> Box { + ) -> Box { let mut row = Flex::row(); if used >= limit || workspace_is_delinquent_due_to_payment_issue { row.add_child( ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(appearance.theme().ui_error_color().into()) + .to_galaxyui_icon(appearance.theme().ui_error_color().into()) .finish(), ) .with_height(16.) @@ -3334,7 +3327,7 @@ impl UsageWidget { is_unlimited: bool, workspace_is_delinquent_due_to_payment_issue: bool, appearance: &Appearance, - ) -> Box { + ) -> Box { let request_usage_details = Flex::column() .with_cross_axis_alignment(CrossAxisAlignment::End) .with_child(self.render_request_usage_count( @@ -3612,8 +3605,8 @@ impl ActiveAIWidget { fn render_next_command_section( &self, view: &AISettingsPageView, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_active_ai_enabled(app); @@ -3640,8 +3633,8 @@ impl ActiveAIWidget { fn render_prompt_suggestions_section( &self, view: &AISettingsPageView, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_active_ai_enabled(app); Flex::column() @@ -3667,8 +3660,8 @@ impl ActiveAIWidget { fn render_suggested_code_banners_section( &self, view: &AISettingsPageView, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_active_ai_enabled(app); Flex::column() @@ -3694,8 +3687,8 @@ impl ActiveAIWidget { fn render_natural_language_autosuggestions_section( &self, view: &AISettingsPageView, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_active_ai_enabled(app); Flex::column() @@ -3721,8 +3714,8 @@ impl ActiveAIWidget { fn render_shared_block_title_generation_section( &self, view: &AISettingsPageView, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_active_ai_enabled(app); Flex::column() @@ -3748,8 +3741,8 @@ impl ActiveAIWidget { fn render_git_operations_autogen_section( &self, view: &AISettingsPageView, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_active_ai_enabled(app); Flex::column() @@ -4182,7 +4175,7 @@ impl AgentsWidget { dropdown_menu: &ViewHandle>, ai_settings: &AISettings, appearance: &Appearance, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let header = Container::new(render_body_item_label_with_icon::( header_text.into(), @@ -4202,7 +4195,7 @@ impl AgentsWidget { let alert_icon = Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), @@ -4410,7 +4403,7 @@ impl AgentsWidget { view: &AISettingsPageView, ai_settings: &AISettings, appearance: &Appearance, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let code_settings = CodeSettings::as_ref(app); let toggle = render_ai_setting_toggle::( @@ -4772,8 +4765,8 @@ impl AIInputWidget { view: &AISettingsPageView, ai_settings: &AISettings, appearance: &Appearance, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let is_toggleable = ai_settings.is_any_ai_enabled(app); let is_nld_enabled = *ai_settings.ai_autodetection_enabled_internal.value(); @@ -5084,7 +5077,7 @@ impl AIFactWidget { view: &AISettingsPageView, ai_settings: &AISettings, appearance: &Appearance, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let toggle = render_ai_setting_toggle::( "Rules", @@ -5135,7 +5128,7 @@ impl AIFactWidget { &self, view: &AISettingsPageView, ai_settings: &AISettings, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let toggle = render_ai_setting_toggle::( "Suggested Rules", @@ -5163,10 +5156,10 @@ impl AIFactWidget { &self, view: &AISettingsPageView, ai_settings: &AISettings, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Box { let toggle = render_ai_setting_toggle::( - "Warp Drive as agent context", + "Galaxy Drive as agent context", AISettingsPageAction::ToggleWarpDriveContext, *ai_settings.warp_drive_context_enabled, ai_settings.is_any_ai_enabled(app), @@ -5176,7 +5169,7 @@ impl AIFactWidget { ); let description = render_ai_setting_description( - "The Warp Agent can leverage your Warp Drive Contents to tailor responses to your personal and team developer workflows and environments. This includes any Workflows, Notebooks, and Environment Variables.", + "The Galaxy Agent can leverage your Galaxy Drive Contents to tailor responses to your personal and team developer workflows and environments. This includes any Workflows, Notebooks, and Environment Variables.", ai_settings.is_any_ai_enabled(app), app, ); @@ -5250,8 +5243,8 @@ impl VoiceWidget { &self, view: &AISettingsPageView, appearance: &Appearance, - app: &warpui::AppContext, - ) -> Box { + app: &galaxyui::AppContext, + ) -> Box { let ai_settings = AISettings::as_ref(app); let is_toggleable = ai_settings.is_any_ai_enabled(app); let mut column = Flex::column().with_child(render_ai_setting_toggle::( @@ -6397,10 +6390,7 @@ impl BedrockSettingsWidget { BedrockAuthMethod::Sso, ]; let current = AISettings::as_ref(ctx).bedrock_auth_method.value().clone(); - let selected_index = methods - .iter() - .position(|m| *m == current) - .unwrap_or(0); + let selected_index = methods.iter().position(|m| *m == current).unwrap_or(0); dropdown.add_items( methods .into_iter() @@ -6859,8 +6849,8 @@ impl SettingsWidget for BedrockSettingsWidget { } mod styles { - use warp_core::ui::{appearance::Appearance, theme::Fill}; - use warpui::{AppContext, SingletonEntity}; + use galaxy_core::ui::{appearance::Appearance, theme::Fill}; + use galaxyui::{AppContext, SingletonEntity}; // Apply a negative margin to the description text so it appears closer to the main // settings option text. diff --git a/app/src/settings_view/appearance_page.rs b/app/src/settings_view/appearance_page.rs index 4f6297b7..7acaedff 100644 --- a/app/src/settings_view/appearance_page.rs +++ b/app/src/settings_view/appearance_page.rs @@ -31,7 +31,7 @@ use crate::settings::{ respect_system_theme, AIFontName, AppEditorSettings, CursorBlink, CursorBlinkEnabled, EnforceMinimumContrast, FocusPaneOnHover, FontSettings, FontSettingsChangedEvent, InputBoxType, InputModeSettings, InputModeState, MonospaceFontName, PaneSettings, ShouldDimInactivePanes, - ThemeSettings, UseSystemTheme, DEFAULT_MONOSPACE_FONT_NAME, + ThemeSettings, UIFontName, UseSystemTheme, DEFAULT_MONOSPACE_FONT_NAME, DEFAULT_UI_FONT_NAME, }; use crate::settings::{CursorDisplayType, GPUSettings, InputSettings, InputSettingsChangedEvent}; use crate::terminal::block_list_viewport::InputMode; @@ -74,25 +74,25 @@ use std::cell::RefCell; use std::collections::HashMap; use std::path::PathBuf; use std::rc::Rc; -use warp_core::ui::theme::color::internal_colors; -use warp_util::path::user_friendly_path; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_util::path::user_friendly_path; +use galaxyui::elements::{ Clipped, Empty, FormattedTextElement, MainAxisAlignment, MainAxisSize, Text, Wrap, }; -use warpui::fonts::{FamilyId, FontInfo, Weight}; -use warpui::keymap::{ContextPredicate, FixedBinding}; -use warpui::platform::{Cursor, FilePickerConfiguration, GraphicsBackend}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ui_components::radio_buttons::{ +use galaxyui::fonts::{FamilyId, FontInfo, Weight}; +use galaxyui::keymap::{ContextPredicate, FixedBinding}; +use galaxyui::platform::{Cursor, FilePickerConfiguration, GraphicsBackend}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ui_components::radio_buttons::{ RadioButtonItem, RadioButtonLayout, RadioButtonStateHandle, }; -use warpui::ui_components::slider::SliderStateHandle; -use warpui::ui_components::switch::SwitchStateHandle; -use warpui::units::IntoPixels; +use galaxyui::ui_components::slider::SliderStateHandle; +use galaxyui::ui_components::switch::SwitchStateHandle; +use galaxyui::units::IntoPixels; -use warpui::id; -use warpui::{ +use galaxyui::id; +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, Fill, Flex, Hoverable, MouseStateHandle, ParentElement, Radius, @@ -100,8 +100,8 @@ use warpui::{ }, rendering::ThinStrokes, }; -use warpui::{platform::SystemTheme, Action}; -use warpui::{ +use galaxyui::{platform::SystemTheme, Action}; +use galaxyui::{ AppContext, Entity, ModelHandle, SingletonEntity, TypedActionView, UpdateModel, View, ViewContext, ViewHandle, WindowId, }; @@ -121,6 +121,8 @@ const MIN_FONT_SIZE: usize = 1; const MAX_FONT_SIZE: usize = 120; const MIN_LINE_SPACING: f32 = 0.1; const MAX_LINE_SPACING: f32 = 5.; +const SAMSUNG_BRAND_THEME_DARK: ThemeKind = ThemeKind::SamsungDark; +const SAMSUNG_BRAND_THEME_LIGHT: ThemeKind = ThemeKind::SamsungLight; const INPUT_MODE_DROPDOWN_WIDTH: f32 = 225.; @@ -136,6 +138,10 @@ fn default_font_label(is_ai_font: bool) -> String { } } +fn default_ui_font_label() -> String { + "Default (system)".to_string() +} + pub fn init_actions_from_parent_view( app: &mut AppContext, context: &ContextPredicate, @@ -427,7 +433,9 @@ pub enum AppearancePageAction { OpacitySliderDragged(f32), BlurSliderDragged(f32), SetFontFamily(String), + SetUIFontFamily(String), SetAIFontFamily(String), + ApplySamsungBrandPreset, SetThinStrokes(ThinStrokes), SetInputMode { new_mode: InputMode, @@ -481,6 +489,7 @@ pub struct AppearanceSettingsPageView { line_height_editor: ViewHandle, notebook_font_size_editor: ViewHandle, ai_font_family_dropdown: ViewHandle>, + ui_font_family_dropdown: ViewHandle>, new_window_columns_editor: ViewHandle, valid_new_window_columns: bool, new_window_rows_editor: ViewHandle, @@ -544,6 +553,7 @@ impl TypedActionView for AppearanceSettingsPageView { SetOpacity(value) => self.set_opacity(*value, true, ctx), SetBlur(value) => self.set_blur(*value, true, ctx), SetFontFamily(name) => self.set_font_family(name, ctx), + SetUIFontFamily(name) => self.set_ui_font_family(name, ctx), SetAIFontFamily(name) => { self.set_ai_font_family(name, ctx); FontSettings::handle(ctx).update(ctx, |font_settings, ctx| { @@ -667,6 +677,7 @@ impl TypedActionView for AppearanceSettingsPageView { }); ctx.notify(); } + ApplySamsungBrandPreset => self.apply_samsung_brand_preset(ctx), } } } @@ -817,6 +828,9 @@ impl AppearanceSettingsPageView { }); ctx.notify(); } + FontSettingsChangedEvent::UIFontName { .. } => { + me.update_font_dropdown(ctx); + } _ => {} }, ); @@ -975,7 +989,7 @@ impl AppearanceSettingsPageView { // `all_system_fonts` API doesn't exist. #[cfg(not(target_family = "wasm"))] { - let all_system_fonts = warpui::fonts::Cache::handle(ctx) + let all_system_fonts = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |font_cache, ctx| font_cache.all_system_fonts(ctx)); ctx.spawn(all_system_fonts, Self::set_system_fonts); } @@ -990,6 +1004,14 @@ impl AppearanceSettingsPageView { dropdown.set_selected_by_index(0, ctx); dropdown }); + let ui_font_family_dropdown = ctx.add_typed_action_view(|ctx| { + let mut dropdown = FilterableDropdown::new(ctx); + dropdown.set_top_bar_max_width(FONT_FAMILY_DROPDOWN_WIDTH); + dropdown.set_menu_width(FONT_FAMILY_DROPDOWN_WIDTH, ctx); + dropdown.add_items(vec![Self::default_ui_font_item(ctx)], ctx); + dropdown.set_selected_by_index(0, ctx); + dropdown + }); let ai_font_family_dropdown = ctx.add_typed_action_view(|ctx| { let mut dropdown = FilterableDropdown::new(ctx); @@ -1193,6 +1215,7 @@ impl AppearanceSettingsPageView { window_id: ctx.window_id(), local_only_icon_tooltip_states: Default::default(), ai_font_family_dropdown, + ui_font_family_dropdown, notebook_font_size_editor, font_size_editor, line_height_editor, @@ -1238,6 +1261,7 @@ impl AppearanceSettingsPageView { vec![ Box::new(CreateCustomThemeWidget::default()), Box::new(ThemeSelectWidget::default()), + Box::new(BrandPresetWidget::default()), ], )]; @@ -1321,6 +1345,7 @@ impl AppearanceSettingsPageView { let font_settings = FontSettings::as_ref(ctx); let mut text_settings_widgets: Vec>> = vec![ Box::new(TerminalFontWidget::default()), + Box::new(UIFontWidget::default()), Box::new(AIFontWidget::default()), Box::new(NotebookFontSizeWidget::default()), ]; @@ -1501,6 +1526,16 @@ impl AppearanceSettingsPageView { initial_dropdown_item } + fn default_ui_font_item(_: &mut ViewContext) -> DropdownItem + where + V: View, + { + DropdownItem::new( + default_ui_font_label(), + AppearancePageAction::SetUIFontFamily(DEFAULT_UI_FONT_NAME.to_string()), + ) + } + fn input_mode_dropdown_item_label(val: InputMode) -> &'static str { match val { InputMode::PinnedToBottom => "Pin to the bottom (Warp mode)", @@ -1988,6 +2023,36 @@ impl AppearanceSettingsPageView { } }); + self.ui_font_family_dropdown.update(ctx, |dropdown, ctx| { + let selected_ui_font = FontSettings::as_ref(ctx).ui_font_name.value().clone(); + let mut items = self + .available_families + .iter() + .map(|(name, (family, _font_type))| { + let mut item = DropdownItem::new( + name, + AppearancePageAction::SetUIFontFamily(name.clone()), + ); + if cfg!(not(target_os = "linux")) { + if let Some(family_id) = family { + item = item.with_font_override(*family_id); + } + } + item + }) + .collect::>(); + + items.sort_by(|a, b| a.display_text.cmp(&b.display_text)); + items.insert(0, Self::default_ui_font_item(ctx)); + dropdown.set_items(items, ctx); + + if selected_ui_font.is_empty() { + dropdown.set_selected_by_name(default_ui_font_label(), ctx); + } else { + dropdown.set_selected_by_name(selected_ui_font, ctx); + } + }); + ctx.notify(); } @@ -2055,6 +2120,74 @@ impl AppearanceSettingsPageView { }); } + pub fn set_ui_font_family(&mut self, name: &str, ctx: &mut ViewContext) { + let ui_font_name = if name == default_ui_font_label() { + DEFAULT_UI_FONT_NAME.to_string() + } else { + name.to_string() + }; + FontSettings::handle(ctx).update(ctx, |font_settings, ctx| { + report_if_error!(font_settings + .ui_font_name + .set_value(ui_font_name.clone(), ctx)); + }); + } + + fn resolve_samsung_ui_font_name(&self) -> String { + const SAMSUNG_UI_FONT_CANDIDATES: &[&str] = &[ + "SamsungOne", + "Samsung One", + "One UI Sans", + "Inter", + "Helvetica Neue", + "Arial", + ]; + SAMSUNG_UI_FONT_CANDIDATES + .iter() + .find_map(|candidate| { + self.available_families + .keys() + .find(|name| name.eq_ignore_ascii_case(candidate)) + .cloned() + }) + .unwrap_or_else(|| DEFAULT_UI_FONT_NAME.to_string()) + } + + pub fn apply_samsung_brand_preset(&mut self, ctx: &mut ViewContext) { + ThemeSettings::handle(ctx).update(ctx, |theme_settings, ctx| { + report_if_error!(theme_settings + .theme_kind + .set_value(SAMSUNG_BRAND_THEME_DARK, ctx)); + report_if_error!(theme_settings.selected_system_themes.set_value( + SelectedSystemThemes { + light: SAMSUNG_BRAND_THEME_LIGHT, + dark: SAMSUNG_BRAND_THEME_DARK, + }, + ctx, + )); + report_if_error!(theme_settings.use_system_theme.set_value(true, ctx)); + }); + + let ui_font_name = self.resolve_samsung_ui_font_name(); + FontSettings::handle(ctx).update(ctx, |font_settings, ctx| { + report_if_error!(font_settings + .monospace_font_name + .set_value(DEFAULT_MONOSPACE_FONT_NAME.to_string(), ctx)); + report_if_error!(font_settings + .ai_font_name + .set_value(DEFAULT_MONOSPACE_FONT_NAME.to_string(), ctx)); + report_if_error!(font_settings + .match_ai_font_to_terminal_font + .set_value(true, ctx)); + report_if_error!(font_settings + .ui_font_name + .set_value(ui_font_name.clone(), ctx)); + }); + + self.update_font_dropdown(ctx); + ctx.notify(); + } + fn set_thin_strokes(&mut self, value: &ThinStrokes, ctx: &mut ViewContext) { FontSettings::handle(ctx).update(ctx, |font_settings, ctx| { match font_settings.use_thin_strokes.set_value(*value, ctx) { @@ -3773,6 +3906,101 @@ impl SettingsWidget for AIFontWidget { } } +#[derive(Default)] +struct UIFontWidget {} + +impl SettingsWidget for UIFontWidget { + type View = AppearanceSettingsPageView; + + fn search_terms(&self) -> &str { + "text ui font family" + } + + fn render( + &self, + view: &Self::View, + appearance: &Appearance, + app: &AppContext, + ) -> Box { + Flex::column() + .with_child(render_body_item_label::( + "UI font".to_string(), + None, + None, + LocalOnlyIconState::for_setting( + UIFontName::storage_key(), + UIFontName::sync_to_cloud(), + &mut view.local_only_icon_tooltip_states.borrow_mut(), + app, + ), + ToggleState::Enabled, + appearance, + )) + .with_child( + Container::new(ChildView::new(&view.ui_font_family_dropdown).finish()) + .with_margin_bottom(10.) + .finish(), + ) + .finish() + } +} + +#[derive(Default)] +struct BrandPresetWidget { + button_mouse_state: MouseStateHandle, +} + +impl SettingsWidget for BrandPresetWidget { + type View = AppearanceSettingsPageView; + + fn search_terms(&self) -> &str { + "samsung brand preset one-click" + } + + fn render( + &self, + _view: &Self::View, + appearance: &Appearance, + _app: &AppContext, + ) -> Box { + let button = Hoverable::new(self.button_mouse_state.clone(), |hover_state| { + let border_width = if hover_state.is_hovered() { 1.0 } else { 0.0 }; + Container::new( + Text::new( + "Apply Samsung-style preset", + appearance.ui_font_family(), + appearance.ui_font_size(), + ) + .with_color(appearance.theme().active_ui_text_color().into()) + .finish(), + ) + .with_background(appearance.theme().surface_2()) + .with_border(Border::all(border_width).with_border_fill(appearance.theme().accent())) + .with_corner_radius(CornerRadius::with_all(Radius::Pixels(6.))) + .with_padding_top(8. - border_width) + .with_padding_bottom(8. - border_width) + .with_padding_left(12. - border_width) + .with_padding_right(12. - border_width) + .finish() + }) + .with_cursor(Cursor::PointingHand) + .on_click(move |ctx, _, _| { + ctx.dispatch_typed_action(AppearancePageAction::ApplySamsungBrandPreset); + }) + .finish(); + + render_body_item::( + "Brand preset".into(), + None, + LocalOnlyIconState::Hidden, + ToggleState::Enabled, + appearance, + button, + Some("Apply Samsung-inspired themes and font defaults.".to_string()), + ) + } +} + #[derive(Default)] struct TerminalFontWidget { line_height_button_state: MouseStateHandle, diff --git a/app/src/settings_view/billing_and_usage/overage_limit_modal.rs b/app/src/settings_view/billing_and_usage/overage_limit_modal.rs index 0d7dba2b..00a93579 100644 --- a/app/src/settings_view/billing_and_usage/overage_limit_modal.rs +++ b/app/src/settings_view/billing_and_usage/overage_limit_modal.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{Align, Clipped}, ui_components::components::{Coords, UiComponentStyles}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, @@ -8,7 +8,7 @@ use crate::{ editor::{EditorView, Event as EditorEvent, SingleLineEditorOptions, TextOptions}, Appearance, }; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildView, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, MouseStateHandle, Padding, ParentElement, Radius, Text, diff --git a/app/src/settings_view/billing_and_usage/usage_history_entry.rs b/app/src/settings_view/billing_and_usage/usage_history_entry.rs index cf702dc1..59d6631d 100644 --- a/app/src/settings_view/billing_and_usage/usage_history_entry.rs +++ b/app/src/settings_view/billing_and_usage/usage_history_entry.rs @@ -7,9 +7,9 @@ use crate::{ ui_components::{blended_colors, icons::Icon}, }; use chrono::Local; -use warp_core::ui::appearance::Appearance; -use warp_graphql::queries::get_conversation_usage::ConversationUsage; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_graphql::queries::get_conversation_usage::ConversationUsage; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, @@ -129,7 +129,7 @@ impl UsageHistoryEntry { }; let chevron = ConstrainedBox::new( chevron_icon - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_width(16.) diff --git a/app/src/settings_view/billing_and_usage/usage_history_model.rs b/app/src/settings_view/billing_and_usage/usage_history_model.rs index 0ce1d829..753fe93d 100644 --- a/app/src/settings_view/billing_and_usage/usage_history_model.rs +++ b/app/src/settings_view/billing_and_usage/usage_history_model.rs @@ -1,17 +1,17 @@ use std::sync::Arc; -use warp_core::report_error; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::report_error; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::auth::AuthStateProvider; use crate::server::server_api::{auth::AuthClient, ServerApiProvider}; -use warp_graphql::scalars::Time; +use galaxy_graphql::scalars::Time; const PAGE_SIZE: i32 = 20; pub struct UsageHistoryModel { auth_client: Arc, - entries: Vec, + entries: Vec, is_loading: bool, // Whether the server indicated that there may be more entries to load. has_more_entries: bool, @@ -34,7 +34,7 @@ impl UsageHistoryModel { } } - pub fn entries(&self) -> &[warp_graphql::queries::get_conversation_usage::ConversationUsage] { + pub fn entries(&self) -> &[galaxy_graphql::queries::get_conversation_usage::ConversationUsage] { &self.entries } diff --git a/app/src/settings_view/billing_and_usage_page.rs b/app/src/settings_view/billing_and_usage_page.rs index 70aef07e..f2b49f77 100644 --- a/app/src/settings_view/billing_and_usage_page.rs +++ b/app/src/settings_view/billing_and_usage_page.rs @@ -7,11 +7,11 @@ use std::cell::RefCell; use std::collections::HashMap; use std::sync::Arc; use thousands::Separable; -use warp_core::ui::theme::Fill; -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; -use warp_graphql::billing::AddonCreditsOption; -use warpui::prelude::ChildView; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxy_graphql::billing::AddonCreditsOption; +use galaxyui::prelude::ChildView; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, FormattedTextElement, HighlightedHyperlink, Hoverable, HyperlinkUrl, @@ -1505,7 +1505,7 @@ impl UsageWidget { let theme = appearance.theme(); ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(theme.ui_error_color().into()) + .to_galaxyui_icon(theme.ui_error_color().into()) .finish(), ) .with_height(16.) @@ -1589,10 +1589,10 @@ impl UsageWidget { fragment.text, None, maybe_action.map(|act| { - Box::new(move |ctx: &mut warpui::EventContext| { + Box::new(move |ctx: &mut galaxyui::EventContext| { ctx.dispatch_typed_action(act.clone()); }) - as Box + as Box }), self.exceed_limit_link_mouse_state.clone(), ) @@ -1655,7 +1655,7 @@ impl UsageWidget { .finish(); let icon = Container::new( - ConstrainedBox::new(Icon::Credits.to_warpui_icon(fg).finish()) + ConstrainedBox::new(Icon::Credits.to_galaxyui_icon(fg).finish()) .with_height(16.) .with_width(16.) .finish(), @@ -1719,10 +1719,10 @@ impl UsageWidget { .with_hyperlink_font_color(theme.accent().into_solid()) .register_default_click_handlers_with_action_support( |hyperlink_lens, event, ctx| match hyperlink_lens { - warpui::elements::HyperlinkLens::Url(url) => { + galaxyui::elements::HyperlinkLens::Url(url) => { ctx.open_url(url); } - warpui::elements::HyperlinkLens::Action(action_ref) => { + galaxyui::elements::HyperlinkLens::Action(action_ref) => { if let Some(action) = action_ref .as_any() .downcast_ref::() @@ -2267,7 +2267,7 @@ impl UsageWidget { workspace_is_delinquent_due_to_payment_issue: bool, appearance: &Appearance, prorated_request_limits_info: Option, - ) -> Box { + ) -> Box { let mut row = Flex::row(); let show_alert = workspace_is_delinquent_due_to_payment_issue @@ -2294,7 +2294,7 @@ impl UsageWidget { row.add_child( ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(appearance.theme().ui_error_color().into()) + .to_galaxyui_icon(appearance.theme().ui_error_color().into()) .finish(), ) .with_height(16.) @@ -2361,7 +2361,7 @@ impl UsageWidget { workspace_is_delinquent_due_to_payment_issue: bool, appearance: &Appearance, prorated_request_limits_info: Option, - ) -> Box { + ) -> Box { let request_usage_details = Flex::column() .with_cross_axis_alignment(CrossAxisAlignment::End) .with_child(self.render_request_usage_count( @@ -2642,7 +2642,7 @@ impl UsageWidget { Container::new( ConstrainedBox::new( Icon::Conversation - .to_warpui_icon( + .to_galaxyui_icon( blended_colors::text_sub( appearance.theme(), appearance.theme().surface_1(), @@ -2708,7 +2708,7 @@ impl UsageWidget { let icon = Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon(blended_colors::text_sub(theme, theme.surface_1()).into()) + .to_galaxyui_icon(blended_colors::text_sub(theme, theme.surface_1()).into()) .finish(), ) .with_width(16.) @@ -3243,10 +3243,10 @@ impl UsageWidget { } else { upgrade_cta = upgrade_cta.register_default_click_handlers_with_action_support( |hyperlink_lens, event, ctx| match hyperlink_lens { - warpui::elements::HyperlinkLens::Url(url) => { + galaxyui::elements::HyperlinkLens::Url(url) => { ctx.open_url(url); } - warpui::elements::HyperlinkLens::Action(action_ref) => { + galaxyui::elements::HyperlinkLens::Action(action_ref) => { if let Some(action) = action_ref .as_any() .downcast_ref::() @@ -3419,7 +3419,7 @@ impl PlanWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Compare plans", - Icon::CoinsStacked.to_warpui_icon(appearance.theme().accent()), + Icon::CoinsStacked.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -3487,7 +3487,7 @@ impl PlanWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Manage billing", - Icon::CoinsStacked.to_warpui_icon(appearance.theme().accent()), + Icon::CoinsStacked.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -3548,7 +3548,7 @@ impl PlanWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Open admin panel", - Icon::Users.to_warpui_icon(appearance.theme().accent()), + Icon::Users.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -3589,7 +3589,7 @@ impl PlanWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Compare plans", - Icon::CoinsStacked.to_warpui_icon(appearance.theme().accent()), + Icon::CoinsStacked.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), diff --git a/app/src/settings_view/code_page.rs b/app/src/settings_view/code_page.rs index 778acec0..239f089e 100644 --- a/app/src/settings_view/code_page.rs +++ b/app/src/settings_view/code_page.rs @@ -48,14 +48,14 @@ use pathfinder_color::ColorU; use std::borrow::Cow; use std::collections::HashMap; use std::path::{Path, PathBuf}; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, report_if_error, settings::ToggleableSetting as _, ui::theme::{AnsiColorIdentifier, Fill as ThemeFill}, }; -use warp_util::path::user_friendly_path; -use warpui::{ +use galaxy_util::path::user_friendly_path; +use galaxyui::{ elements::{ ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Empty, Expanded, Fill, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, @@ -1342,15 +1342,15 @@ impl CodePageWidget { ..Default::default() }) .with_text_and_icon_label( - warpui::ui_components::button::TextAndIcon::new( - warpui::ui_components::button::TextAndIconAlignment::IconFirst, + galaxyui::ui_components::button::TextAndIcon::new( + galaxyui::ui_components::button::TextAndIconAlignment::IconFirst, "Open project rules", - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( "bundled/svg/file-code-02.svg", theme.foreground(), ), - warpui::elements::MainAxisSize::Min, - warpui::elements::MainAxisAlignment::Center, + galaxyui::elements::MainAxisSize::Min, + galaxyui::elements::MainAxisAlignment::Center, pathfinder_geometry::vector::vec2f(14., 14.), ) .with_inner_padding(4.), @@ -1456,7 +1456,7 @@ impl CodePageWidget { Container::new( ConstrainedBox::new( Icon::SlashCircle - .to_warpui_icon(ThemeFill::Solid(status_color)) + .to_galaxyui_icon(ThemeFill::Solid(status_color)) .finish(), ) .with_width(STATUS_ICON_SIZE) @@ -1541,7 +1541,7 @@ impl CodePageWidget { label_row.add_child( Container::new( ConstrainedBox::new( - status_icon.to_warpui_icon(ThemeFill::Solid(color)).finish(), + status_icon.to_galaxyui_icon(ThemeFill::Solid(color)).finish(), ) .with_width(STATUS_ICON_SIZE) .with_height(STATUS_ICON_SIZE) @@ -1823,7 +1823,7 @@ impl CodePageWidget { &self, workspace_path: &Path, server_type: LSPServerType, - server_model: Option<&warpui::ModelHandle>, + server_model: Option<&galaxyui::ModelHandle>, is_enabled: bool, mouse_states: LspServerRowMouseStates, appearance: &Appearance, @@ -2012,9 +2012,9 @@ impl CodePageWidget { /// Gets the status color and text for an LSP server. fn get_lsp_status_info( &self, - server_model: Option<&warpui::ModelHandle>, + server_model: Option<&galaxyui::ModelHandle>, app: &AppContext, - theme: &warp_core::ui::theme::WarpTheme, + theme: &galaxy_core::ui::theme::WarpTheme, ) -> (ColorU, &'static str) { match server_model { Some(model) => { diff --git a/app/src/settings_view/delete_environment_confirmation_dialog.rs b/app/src/settings_view/delete_environment_confirmation_dialog.rs index 92593595..43b2ea06 100644 --- a/app/src/settings_view/delete_environment_confirmation_dialog.rs +++ b/app/src/settings_view/delete_environment_confirmation_dialog.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ChildView, Container, Dismiss, Empty}, ui_components::components::UiComponent, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, diff --git a/app/src/settings_view/directory_color_add_picker.rs b/app/src/settings_view/directory_color_add_picker.rs index 7734ccdd..eaa8fa22 100644 --- a/app/src/settings_view/directory_color_add_picker.rs +++ b/app/src/settings_view/directory_color_add_picker.rs @@ -5,8 +5,8 @@ use ai::index::full_source_code_embedding::manager::{ CodebaseIndexManager, CodebaseIndexManagerEvent, }; use settings::Setting; -use warp_util::path::user_friendly_path; -use warpui::{ +use galaxy_util::path::user_friendly_path; +use galaxyui::{ elements::{ Border, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Text, diff --git a/app/src/settings_view/directory_color_add_picker_tests.rs b/app/src/settings_view/directory_color_add_picker_tests.rs index 5e823d0e..ab51a78e 100644 --- a/app/src/settings_view/directory_color_add_picker_tests.rs +++ b/app/src/settings_view/directory_color_add_picker_tests.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use std::path::{Path, PathBuf}; -use warp_core::ui::theme::AnsiColorIdentifier; +use galaxy_core::ui::theme::AnsiColorIdentifier; use super::compute_candidate_paths; use crate::workspace::tab_settings::{DirectoryTabColor, DirectoryTabColors}; diff --git a/app/src/settings_view/environments_page.rs b/app/src/settings_view/environments_page.rs index 5f345786..0cdcd56f 100644 --- a/app/src/settings_view/environments_page.rs +++ b/app/src/settings_view/environments_page.rs @@ -48,11 +48,11 @@ use crate::{ use instant::Instant; use pathfinder_geometry::vector::vec2f; use std::collections::HashMap; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::theme::color::internal_colors; -use warp_editor::editor::NavigationKey; -use warp_graphql::scalars::time::ServerTimestamp; -use warpui::{ +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_editor::editor::NavigationKey; +use galaxy_graphql::scalars::time::ServerTimestamp; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Empty, Expanded, Flex, Hoverable, MainAxisAlignment, @@ -78,7 +78,7 @@ use new_environment_button::NewEnvironmentButtonView; #[allow(unused_imports)] // IntegrationsClient trait is used in fetch_github_repos use { crate::server::server_api::{integrations::IntegrationsClient, ServerApiProvider}, - warp_graphql::queries::user_github_info::UserGithubInfoResult, + galaxy_graphql::queries::user_github_info::UserGithubInfoResult, }; const PAGE_TITLE_TEXT: &str = "Environments"; @@ -929,7 +929,7 @@ impl TypedActionView for EnvironmentsPageView { } EnvironmentsPageAction::CopyEnvId(sync_id, env_id_string) => { ctx.clipboard() - .write(warpui::clipboard::ClipboardContent::plain_text( + .write(galaxyui::clipboard::ClipboardContent::plain_text( env_id_string.clone(), )); // Track when this was copied for feedback @@ -938,7 +938,7 @@ impl TypedActionView for EnvironmentsPageView { let duration = COPY_FEEDBACK_DURATION; ctx.spawn( async move { - warpui::r#async::Timer::after(duration).await; + galaxyui::r#async::Timer::after(duration).await; }, |me, _, ctx| { ctx.notify(); @@ -999,8 +999,8 @@ impl TypedActionView for EnvironmentsPageView { &mut self, _action: &Self::Action, _ctx: &mut ViewContext, - ) -> warpui::accessibility::ActionAccessibilityContent { - warpui::accessibility::ActionAccessibilityContent::default() + ) -> galaxyui::accessibility::ActionAccessibilityContent { + galaxyui::accessibility::ActionAccessibilityContent::default() } } @@ -1241,7 +1241,7 @@ impl EnvironmentsPageWidget { let search_icon = ConstrainedBox::new( Icon::Search - .to_warpui_icon(blended_colors::text_sub(theme, theme.surface_2()).into()) + .to_galaxyui_icon(blended_colors::text_sub(theme, theme.surface_2()).into()) .finish(), ) .with_width(icon_size) @@ -1543,7 +1543,7 @@ impl EnvironmentsPageWidget { let theme = appearance.theme(); let build_icon = || { Container::new( - ConstrainedBox::new(icon.to_warpui_icon(theme.active_ui_text_color()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(theme.active_ui_text_color()).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), @@ -1919,7 +1919,7 @@ impl EnvironmentsPageWidget { let icon_color: ThemeFill = if is_card_hovered { theme.foreground() } else { - ThemeFill::Solid(warpui::color::ColorU::transparent_black()) + ThemeFill::Solid(galaxyui::color::ColorU::transparent_black()) }; let should_render_share_button = list_scope == EnvironmentListScope::Personal diff --git a/app/src/settings_view/environments_page/new_environment_button.rs b/app/src/settings_view/environments_page/new_environment_button.rs index 0bc10662..056c50a0 100644 --- a/app/src/settings_view/environments_page/new_environment_button.rs +++ b/app/src/settings_view/environments_page/new_environment_button.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Border, Container, CornerRadius, DispatchEventResult, EventHandler, Flex, MainAxisAlignment, MouseStateHandle, ParentElement as _, Radius, Text, @@ -84,7 +84,7 @@ impl View for NewEnvironmentButtonView { let is_focused = self.is_focused(app); let trigger = { - warpui::elements::Hoverable::new(self.trigger_mouse_state.clone(), move |s| { + galaxyui::elements::Hoverable::new(self.trigger_mouse_state.clone(), move |s| { let is_hovered = s.is_hovered(); let background = if is_hovered || is_focused { Some(theme.surface_3()) diff --git a/app/src/settings_view/environments_page_tests.rs b/app/src/settings_view/environments_page_tests.rs index 7ef48698..02fed602 100644 --- a/app/src/settings_view/environments_page_tests.rs +++ b/app/src/settings_view/environments_page_tests.rs @@ -19,10 +19,10 @@ use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; use instant::Instant; use std::collections::HashMap; use std::sync::{Arc, Mutex}; -use warp_core::ui::appearance::Appearance; -use warpui::elements::Empty; -use warpui::platform::WindowStyle; -use warpui::{App, AppContext, Element, Entity, TypedActionView, View, WindowId}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::Empty; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, AppContext, Element, Entity, TypedActionView, View, WindowId}; fn make_test_environment( name: &str, @@ -45,8 +45,8 @@ fn make_test_environment_with_timestamps( docker_image: &str, github_repos: Vec<(String, String)>, setup_commands: Vec, - last_edited_ts: Option, - last_used_ts: Option, + last_edited_ts: Option, + last_used_ts: Option, ) -> EnvironmentDisplayData { EnvironmentDisplayData { id: SyncId::ClientId(ClientId::new()), @@ -1329,7 +1329,7 @@ fn test_toolbar_renders_search_editor_view() { #[test] fn test_render_environment_card_with_last_used_never() { use chrono::{Duration, Utc}; - use warp_graphql::scalars::time::ServerTimestamp; + use galaxy_graphql::scalars::time::ServerTimestamp; App::test((), |mut app| async move { app.add_singleton_model(|_| Appearance::mock()); @@ -1400,7 +1400,7 @@ fn test_render_environment_card_with_last_used_never() { #[test] fn test_render_environment_card_with_last_used_timestamp() { use chrono::{Duration, Utc}; - use warp_graphql::scalars::time::ServerTimestamp; + use galaxy_graphql::scalars::time::ServerTimestamp; App::test((), |mut app| async move { app.add_singleton_model(|_| Appearance::mock()); diff --git a/app/src/settings_view/execution_profile_view.rs b/app/src/settings_view/execution_profile_view.rs index 76674557..33d8e3bf 100644 --- a/app/src/settings_view/execution_profile_view.rs +++ b/app/src/settings_view/execution_profile_view.rs @@ -14,10 +14,10 @@ use crate::view_components::action_button::{ActionButton, ButtonSize, SecondaryT use crate::TemplatableMCPServerManager; use std::path::PathBuf; use uuid::Uuid; -use warp_core::features::FeatureFlag; -use warpui::elements::ParentElement; -use warpui::SingletonEntity; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::ParentElement; +use galaxyui::SingletonEntity; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, Shrinkable, Text, Wrap, @@ -380,10 +380,10 @@ impl View for ExecutionProfileView { ) .with_background(appearance.theme().surface_2()) .with_border( - warpui::elements::Border::new(1.).with_border_fill(appearance.theme().outline()), + galaxyui::elements::Border::new(1.).with_border_fill(appearance.theme().outline()), ) - .with_corner_radius(warpui::elements::CornerRadius::with_all( - warpui::elements::Radius::Pixels(4.), + .with_corner_radius(galaxyui::elements::CornerRadius::with_all( + galaxyui::elements::Radius::Pixels(4.), )) .with_horizontal_padding(16.) .with_vertical_padding(12.) @@ -439,11 +439,11 @@ where ) .with_background(appearance.theme().surface_2()) .with_border( - warpui::elements::Border::all(1.) + galaxyui::elements::Border::all(1.) .with_border_fill(appearance.theme().outline()), ) - .with_corner_radius(warpui::elements::CornerRadius::with_all( - warpui::elements::Radius::Pixels(3.), + .with_corner_radius(galaxyui::elements::CornerRadius::with_all( + galaxyui::elements::Radius::Pixels(3.), )) .with_horizontal_padding(6.) .with_vertical_padding(2.) @@ -470,7 +470,7 @@ fn render_allowlist_denylist_row( .with_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(if is_ai_enabled { + icon.to_galaxyui_icon(if is_ai_enabled { appearance .theme() .sub_text_color(appearance.theme().surface_1()) @@ -508,7 +508,7 @@ fn render_allowlist_denylist_row( .finish(), ) .with_margin_left(8.) - .with_border(warpui::elements::Border::left(1.).with_border_fill(appearance.theme().outline())) + .with_border(galaxyui::elements::Border::left(1.).with_border_fill(appearance.theme().outline())) .with_padding_left(8.) .finish() } @@ -573,7 +573,7 @@ fn render_model_line_with_icon( .with_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(if is_ai_enabled { + icon.to_galaxyui_icon(if is_ai_enabled { appearance .theme() .sub_text_color(appearance.theme().surface_1()) @@ -634,7 +634,7 @@ fn render_permission_line_with_icon( .with_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(if is_ai_enabled { + icon.to_galaxyui_icon(if is_ai_enabled { appearance .theme() .sub_text_color(appearance.theme().surface_1()) diff --git a/app/src/settings_view/features/external_editor.rs b/app/src/settings_view/features/external_editor.rs index 06051e60..d6e4bd22 100644 --- a/app/src/settings_view/features/external_editor.rs +++ b/app/src/settings_view/features/external_editor.rs @@ -1,8 +1,8 @@ use std::{cell::RefCell, collections::HashMap}; use settings::{Setting, ToggleableSetting}; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{Flex, MouseStateHandle, ParentElement}, ui_components::{components::UiComponent, switch::SwitchStateHandle}, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, @@ -275,7 +275,7 @@ impl View for ExternalEditorView { "ExternalEditorView" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let default_editor = render_dropdown_item( diff --git a/app/src/settings_view/features/startup_shell.rs b/app/src/settings_view/features/startup_shell.rs index 5b8867f7..2c9fecf9 100644 --- a/app/src/settings_view/features/startup_shell.rs +++ b/app/src/settings_view/features/startup_shell.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{CrossAxisAlignment, Fill, Flex, ParentElement, Shrinkable}, presenter::ChildView, ui_components::components::{Coords, UiComponent, UiComponentStyles}, @@ -207,7 +207,7 @@ impl View for StartupShellView { } /// Renders controls to change the default shell for new sessions. - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let ui_builder = appearance.ui_builder(); let theme = appearance.theme(); diff --git a/app/src/settings_view/features/undo_close.rs b/app/src/settings_view/features/undo_close.rs index b4dce008..d6df33ec 100644 --- a/app/src/settings_view/features/undo_close.rs +++ b/app/src/settings_view/features/undo_close.rs @@ -1,7 +1,7 @@ use std::{cell::RefCell, collections::HashMap, time::Duration}; use settings::{Setting, ToggleableSetting}; -use warpui::{ +use galaxyui::{ elements::{ Container, CrossAxisAlignment, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Text, @@ -213,7 +213,7 @@ impl View for UndoCloseView { impl TypedActionView for UndoCloseView { type Action = Action; - fn handle_action(&mut self, action: &Self::Action, ctx: &mut warpui::ViewContext) { + fn handle_action(&mut self, action: &Self::Action, ctx: &mut galaxyui::ViewContext) { match action { Action::ToggleUndoCloseEnabled => { UndoCloseSettings::handle(ctx).update(ctx, |settings, ctx| { diff --git a/app/src/settings_view/features/working_directory.rs b/app/src/settings_view/features/working_directory.rs index c1dec61c..fe6d98f2 100644 --- a/app/src/settings_view/features/working_directory.rs +++ b/app/src/settings_view/features/working_directory.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warpui::{ +use galaxyui::{ elements::{Container, CrossAxisAlignment, Flex, ParentElement, Shrinkable}, presenter::ChildView, ui_components::components::{Coords, UiComponent, UiComponentStyles}, @@ -126,7 +126,7 @@ impl View for WorkingDirectoryView { "WorkingDirectoryView" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); let ui_builder = appearance.ui_builder(); diff --git a/app/src/settings_view/features_page.rs b/app/src/settings_view/features_page.rs index ffeab1ea..5fe8265e 100644 --- a/app/src/settings_view/features_page.rs +++ b/app/src/settings_view/features_page.rs @@ -5,14 +5,14 @@ use crate::terminal::input::OPEN_COMPLETIONS_KEYBINDING_NAME; use crate::terminal::session_settings::WorkingDirectoryConfig; use lazy_static::lazy_static; -use warp_core::context_flag::ContextFlag; -use warpui::platform::GraphicsBackend; -use warpui::rendering::GPUPowerPreference; -use warpui::{elements::DispatchEventResult, platform::Cursor}; +use galaxy_core::context_flag::ContextFlag; +use galaxyui::platform::GraphicsBackend; +use galaxyui::rendering::GPUPowerPreference; +use galaxyui::{elements::DispatchEventResult, platform::Cursor}; #[cfg(target_os = "linux")] use { crate::settings::ForceX11, crate::settings::LinuxAppConfiguration, - warpui::platform::linux::windowing_system_is_customizable, + galaxyui::platform::linux::windowing_system_is_customizable, }; use super::keybindings::KeyBindingModifyingState; @@ -95,20 +95,20 @@ use std::collections::HashMap; use std::sync::{Arc, Mutex}; use std::time::Duration; use strum::IntoEnumIterator; -use warp_core::channel::ChannelState; -use warp_core::semantic_selection::{ +use galaxy_core::channel::ChannelState; +use galaxy_core::semantic_selection::{ SemanticSelection, SemanticSelectionChangedEvent, SmartSelectEnabled, }; -use warpui::elements::{ +use galaxyui::elements::{ Align, Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, Empty, EventHandler, Fill, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseState, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::keymap::{ContextPredicate, FixedBinding, Keystroke}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ui_components::switch::SwitchStateHandle; -use warpui::{ +use galaxyui::keymap::{ContextPredicate, FixedBinding, Keystroke}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ui_components::switch::SwitchStateHandle; +use galaxyui::{ Action, AppContext, DisplayIdx, Entity, EventContext, ModelHandle, SingletonEntity, Tracked, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; @@ -128,7 +128,7 @@ pub fn init_actions_from_parent_view( context: &ContextPredicate, builder: fn(SettingsAction) -> T, ) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Add all of the toggle settings from the Features Page that you want to show up on the Command Palette here. let mut toggle_binding_pairs = vec![ @@ -1842,7 +1842,7 @@ impl TypedActionView for FeaturesPageView { self.force_x11_changed = true; // This is a workaround to make sure the user sees the new text that is added to the description after changing the setting. // Without scrolling, the new description text gets cut off. - self.page.scroll_by(warpui::units::Pixels::new(40.)); + self.page.scroll_by(galaxyui::units::Pixels::new(40.)); ctx.notify(); } ToggleQuitOnLastWindowClosed => { @@ -4037,7 +4037,7 @@ impl SettingsPageMeta for FeaturesPageView { } fn on_page_selected(&mut self, _: bool, ctx: &mut ViewContext) { - // On MacOS, we rely on [`warpui::platform::AppCallbacks::on_screen_changed`] to update and + // On MacOS, we rely on [`galaxyui::platform::AppCallbacks::on_screen_changed`] to update and // notify on the [`DisplayCount`] model. However, no mechanism exists on Linux to trigger // that callback. As a workaround, we check for updates here where quake mode is // configured. diff --git a/app/src/settings_view/keybindings.rs b/app/src/settings_view/keybindings.rs index 19ff1928..d6b279ed 100644 --- a/app/src/settings_view/keybindings.rs +++ b/app/src/settings_view/keybindings.rs @@ -27,9 +27,9 @@ use crate::{ }; use itertools::Itertools; -use warp_core::ui::theme::color::internal_colors; -use warpui::{elements::Wrap, units::Pixels}; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::{elements::Wrap, units::Pixels}; +use galaxyui::{ elements::{ Align, Border, ClippedScrollStateHandle, ClippedScrollable, Container, CornerRadius, Empty, EventHandler, Fill, Flex, Hoverable, MouseState, MouseStateHandle, ParentElement, Radius, @@ -40,11 +40,11 @@ use warpui::{ ui_components::components::{Coords, UiComponent, UiComponentStyles}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; -use warpui::{ +use galaxyui::{ elements::{ConstrainedBox, DispatchEventResult}, presenter::ChildView, }; -use warpui::{ +use galaxyui::{ elements::{CrossAxisAlignment, Text}, keymap::DescriptionContext, }; @@ -376,7 +376,7 @@ impl KeybindingRow { .with_margin_right(CLEAR_CANCEL_BUTTONS_SPACING) .finish(), ) - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center) .finish(), ) .finish(), diff --git a/app/src/settings_view/main_page.rs b/app/src/settings_view/main_page.rs index 5203c401..f01e53ef 100644 --- a/app/src/settings_view/main_page.rs +++ b/app/src/settings_view/main_page.rs @@ -26,32 +26,32 @@ use lazy_static::lazy_static; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use std::sync::{Arc, Mutex}; -use warp_core::features::FeatureFlag; -use warp_core::ui::icons::Icon; -use warp_core::{channel::ChannelState, context_flag::ContextFlag}; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::icons::Icon; +use galaxy_core::{channel::ChannelState, context_flag::ContextFlag}; +use galaxyui::{ assets::asset_cache::AssetSource, elements::{Border, Empty, MainAxisAlignment, MainAxisSize}, id, platform::Cursor, ui_components::switch::SwitchStateHandle, }; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }, Action, AppContext, }; -use warpui::{ +use galaxyui::{ elements::{CacheOption, Image}, ui_components::{ button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}, components::{Coords, UiComponent, UiComponentStyles}, }, }; -use warpui::{fonts::Weight, keymap::ContextPredicate}; -use warpui::{ +use galaxyui::{fonts::Weight, keymap::ContextPredicate}; +use galaxyui::{ Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -365,7 +365,7 @@ impl AccountWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Compare plans", - Icon::CoinsStacked.to_warpui_icon(appearance.theme().accent()), + Icon::CoinsStacked.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -621,7 +621,7 @@ impl SettingsWidget for AccountWidget { self.render_anonymous_account_info(view.auth_state.as_ref(), appearance) } else { let profile_image_source = view.auth_state.user_photo_url().map(|url| { - asset_cache::url_source_with_persistence(url, &warp_core::paths::cache_dir()) + asset_cache::url_source_with_persistence(url, &galaxy_core::paths::cache_dir()) }); self.render_account_info( profile_image_source.as_ref(), diff --git a/app/src/settings_view/mcp_servers/destructive_mcp_confirmation_dialog.rs b/app/src/settings_view/mcp_servers/destructive_mcp_confirmation_dialog.rs index 6b3c3bb7..50cfac1a 100644 --- a/app/src/settings_view/mcp_servers/destructive_mcp_confirmation_dialog.rs +++ b/app/src/settings_view/mcp_servers/destructive_mcp_confirmation_dialog.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ChildView, Container, Dismiss, Empty}, ui_components::components::UiComponent, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, diff --git a/app/src/settings_view/mcp_servers/edit_page.rs b/app/src/settings_view/mcp_servers/edit_page.rs index 911f3414..076ebaa5 100644 --- a/app/src/settings_view/mcp_servers/edit_page.rs +++ b/app/src/settings_view/mcp_servers/edit_page.rs @@ -8,14 +8,14 @@ use diesel::SqliteConnection; use parking_lot::Mutex; use pathfinder_geometry::vector::vec2f; use uuid::Uuid; -use warp_core::{ +use galaxy_core::{ send_telemetry_from_ctx, ui::{appearance::Appearance, theme::color::internal_colors}, }; -use warp_editor::{ +use galaxy_editor::{ content::buffer::InitialBufferState, render::element::VerticalExpansionBehavior, }; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, @@ -170,8 +170,8 @@ impl MCPServersEditPageView { ctx, ) .with_horizontal_scrollbar_appearance( - warpui::elements::new_scrollable::ScrollableAppearance::new( - warpui::elements::ScrollbarWidth::Auto, + galaxyui::elements::new_scrollable::ScrollableAppearance::new( + galaxyui::elements::ScrollbarWidth::Auto, true, ), ); diff --git a/app/src/settings_view/mcp_servers/installation_modal.rs b/app/src/settings_view/mcp_servers/installation_modal.rs index b85dbccd..972410e3 100644 --- a/app/src/settings_view/mcp_servers/installation_modal.rs +++ b/app/src/settings_view/mcp_servers/installation_modal.rs @@ -11,11 +11,11 @@ use crate::settings_view::mcp_servers::style::{ }; use crate::view_components::dropdown::{Dropdown, DropdownItem}; use markdown_parser::parse_markdown; -use warpui::elements::Shrinkable; -use warpui::fonts::{Properties, Weight}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::elements::Shrinkable; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, FormattedTextElement, HighlightedHyperlink, Hoverable, MainAxisAlignment, MouseStateHandle, @@ -24,7 +24,7 @@ use warpui::{ platform::Cursor, AppContext, Element, Entity, FocusContext, TypedActionView, View, ViewHandle, }; -use warpui::{SingletonEntity, ViewContext}; +use galaxyui::{SingletonEntity, ViewContext}; use crate::ai::mcp::{TemplatableMCPServer, TemplatableMCPServerManager, TemplateVariable}; @@ -32,9 +32,9 @@ use crate::ui_components::{ avatar::{Avatar, AvatarContent}, blended_colors, }; -use warpui::elements::{CornerRadius, Padding, Radius}; +use galaxyui::elements::{CornerRadius, Padding, Radius}; -use warp_core::ui::{ +use galaxy_core::ui::{ color::coloru_with_opacity, external_product_icon::ExternalProductIcon, icons::Icon, }; @@ -269,7 +269,7 @@ impl InstallationModalBody { let mut icon = Container::new( ConstrainedBox::new( Icon::X - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_width(16.) @@ -411,7 +411,7 @@ impl InstallationModalBody { fn render_source_indicator(is_shared: bool, appearance: &Appearance) -> Box { let info_icon = ConstrainedBox::new( Icon::Info - .to_warpui_icon(appearance.theme().disabled_ui_text_color()) + .to_galaxyui_icon(appearance.theme().disabled_ui_text_color()) .finish(), ) .with_width(16.) @@ -462,7 +462,7 @@ impl InstallationModalBody { let corner_down_left_icon = Container::new( ConstrainedBox::new( Icon::CornerDownLeft - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(appearance.monospace_font_size()) diff --git a/app/src/settings_view/mcp_servers/list_page.rs b/app/src/settings_view/mcp_servers/list_page.rs index 2fca04c2..6f9692f2 100644 --- a/app/src/settings_view/mcp_servers/list_page.rs +++ b/app/src/settings_view/mcp_servers/list_page.rs @@ -59,10 +59,10 @@ use std::cmp::Ordering; use std::{collections::HashMap, path::PathBuf}; use strum::IntoEnumIterator; use uuid::Uuid; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::{appearance::AppearanceEvent, theme::color::internal_colors, Icon}; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::{appearance::AppearanceEvent, theme::color::internal_colors, Icon}; +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Fill, Flex, FormattedTextElement, HighlightedHyperlink, MainAxisAlignment, diff --git a/app/src/settings_view/mcp_servers/server_card.rs b/app/src/settings_view/mcp_servers/server_card.rs index e9393a4e..a9b90af4 100644 --- a/app/src/settings_view/mcp_servers/server_card.rs +++ b/app/src/settings_view/mcp_servers/server_card.rs @@ -1,6 +1,6 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use pathfinder_color::ColorU; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{ external_product_icon::ExternalProductIcon, @@ -8,7 +8,7 @@ use warp_core::{ theme::{color::internal_colors, AnsiColorIdentifier}, }, }; -use warpui::{ +use galaxyui::{ accessibility::ActionAccessibilityContent, elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Fill, Flex, @@ -524,7 +524,7 @@ impl ServerCardView { .with_child( Container::new( ConstrainedBox::new( - chevron_icon.to_warpui_icon(text_color.into()).finish(), + chevron_icon.to_galaxyui_icon(text_color.into()).finish(), ) .with_width(chevron_dimensions) .with_height(chevron_dimensions) @@ -561,7 +561,7 @@ impl ServerCardView { .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_spacing(2.) .with_child( - ConstrainedBox::new(icon.to_warpui_icon(chip_color.into()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(chip_color.into()).finish()) .with_width(style::TITLE_CHIP_FONT_SIZE) .with_height(style::TITLE_CHIP_FONT_SIZE) .finish(), @@ -871,7 +871,7 @@ impl ServerCardView { } if self.render_options.show_add_icon { - let add_icon = warpui::elements::Icon::new( + let add_icon = galaxyui::elements::Icon::new( Icon::Plus.into(), blended_colors::text_main(appearance.theme(), appearance.theme().background()), ); diff --git a/app/src/settings_view/mcp_servers/style.rs b/app/src/settings_view/mcp_servers/style.rs index f75be570..e0755027 100644 --- a/app/src/settings_view/mcp_servers/style.rs +++ b/app/src/settings_view/mcp_servers/style.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ fonts::Weight, ui_components::components::{Coords, UiComponentStyles}, }; diff --git a/app/src/settings_view/mcp_servers/update_modal.rs b/app/src/settings_view/mcp_servers/update_modal.rs index 1cde05f7..8596e846 100644 --- a/app/src/settings_view/mcp_servers/update_modal.rs +++ b/app/src/settings_view/mcp_servers/update_modal.rs @@ -8,16 +8,16 @@ use crate::ui_components::blended_colors; use crate::util::time_format::format_approx_duration_from_now; use chrono::{Local, TimeZone}; use uuid::Uuid; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::external_product_icon::ExternalProductIcon; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{Align, Empty, Padding, Shrinkable}; -use warpui::fonts::{Properties, Weight}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::SingletonEntity; -use warpui::{ +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::external_product_icon::ExternalProductIcon; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{Align, Empty, Padding, Shrinkable}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::SingletonEntity; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MouseStateHandle, ParentElement, Radius, Text, @@ -129,7 +129,7 @@ impl UpdateModalBody { let mut icon = Container::new( ConstrainedBox::new( Icon::X - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_width(16.) @@ -320,7 +320,7 @@ impl UpdateModalBody { let corner_down_left_icon = Container::new( ConstrainedBox::new( Icon::CornerDownLeft - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(appearance.monospace_font_size()) diff --git a/app/src/settings_view/mcp_servers_page.rs b/app/src/settings_view/mcp_servers_page.rs index fc246680..d14f2307 100644 --- a/app/src/settings_view/mcp_servers_page.rs +++ b/app/src/settings_view/mcp_servers_page.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; use uuid::Uuid; -use warpui::{ +use galaxyui::{ elements::{ChildView, Container}, ui_components::components::{Coords, UiComponentStyles}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, diff --git a/app/src/settings_view/mod.rs b/app/src/settings_view/mod.rs index 8ffae34b..57a11431 100644 --- a/app/src/settings_view/mod.rs +++ b/app/src/settings_view/mod.rs @@ -50,15 +50,15 @@ use std::collections::HashMap; use std::path::PathBuf; use std::str::FromStr; use teams_page::{TeamsPageView, TeamsPageViewEvent}; -use warp_core::send_telemetry_from_ctx; -use warp_core::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::{ channel::ChannelState, context_flag::ContextFlag, features::FeatureFlag, settings::ToggleableSetting as _, ui::theme::color::internal_colors, }; -use warp_editor::editor::NavigationKey; +use galaxy_editor::editor::NavigationKey; use warpify_page::{WarpifyPageAction, WarpifyPageView}; -use warpui::Element; -use warpui::{ +use galaxyui::Element; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ChildView, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, @@ -235,8 +235,8 @@ impl Display for SettingsSection { SettingsSection::Keybindings => write!(f, "Keyboard shortcuts"), SettingsSection::SharedBlocks => write!(f, "Shared blocks"), SettingsSection::MCPServers => write!(f, "MCP Servers"), - SettingsSection::WarpDrive => write!(f, "Warp Drive"), - SettingsSection::WarpAgent => write!(f, "Warp Agent"), + SettingsSection::WarpDrive => write!(f, "Galaxy Drive"), + SettingsSection::WarpAgent => write!(f, "Galaxy Agent"), SettingsSection::AgentProfiles => write!(f, "Profiles"), SettingsSection::AgentMCPServers => write!(f, "MCP servers"), SettingsSection::Knowledge => write!(f, "Knowledge"), @@ -338,9 +338,9 @@ impl FromStr for SettingsSection { "Shared blocks" => Ok(Self::SharedBlocks), "Teams" => Ok(Self::Teams), "Warpify" => Ok(Self::Warpify), - "WarpDrive" | "Warp Drive" => Ok(Self::WarpDrive), + "WarpDrive" | "Warp Drive" | "Galaxy Drive" => Ok(Self::WarpDrive), // This page was called "Oz" at one point, keep for backward compatibility. - "Oz" | "Warp Agent" => Ok(Self::WarpAgent), + "Oz" | "Warp Agent" | "Galaxy Agent" => Ok(Self::WarpAgent), "Profiles" | "AgentProfiles" => Ok(Self::AgentProfiles), "MCP servers" | "AgentMCPServers" => Ok(Self::AgentMCPServers), "Knowledge" => Ok(Self::Knowledge), @@ -662,7 +662,7 @@ impl ToggleSettingActionPair { context_prefix: &ContextPredicate, context_boolean_flag: &'static str, ) -> Self { - use warpui::keymap::macros::id; + use galaxyui::keymap::macros::id; ToggleSettingActionPair { descriptions: SettingActionPairDescriptions { @@ -2198,7 +2198,7 @@ impl SettingsView { Container::new( ConstrainedBox::new( icons::Icon::SearchSmall - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(16.) @@ -2641,16 +2641,16 @@ impl BackingView for SettingsView { fn handle_pane_header_overflow_menu_action( &mut self, action: &Self::PaneHeaderOverflowMenuAction, - ctx: &mut warpui::ViewContext, + ctx: &mut galaxyui::ViewContext, ) { self.handle_action(action, ctx) } - fn close(&mut self, ctx: &mut warpui::ViewContext) { + fn close(&mut self, ctx: &mut galaxyui::ViewContext) { ctx.emit(SettingsViewEvent::Pane(PaneEvent::Close)); } - fn focus_contents(&mut self, ctx: &mut warpui::ViewContext) { + fn focus_contents(&mut self, ctx: &mut galaxyui::ViewContext) { ctx.focus(&self.search_editor) } diff --git a/app/src/settings_view/nav.rs b/app/src/settings_view/nav.rs index a0738ccc..7c6c3afc 100644 --- a/app/src/settings_view/nav.rs +++ b/app/src/settings_view/nav.rs @@ -1,7 +1,7 @@ use crate::appearance::Appearance; use crate::ui_components::icons::Icon; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle}, ui_components::{ button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}, @@ -80,7 +80,7 @@ impl SettingsUmbrella { .with_text_and_icon_label(TextAndIcon::new( TextAndIconAlignment::TextFirst, self.label.to_string(), - chevron_icon.to_warpui_icon(text_color), + chevron_icon.to_galaxyui_icon(text_color), MainAxisSize::Max, MainAxisAlignment::SpaceBetween, vec2f(16., 16.), diff --git a/app/src/settings_view/pane_manager.rs b/app/src/settings_view/pane_manager.rs index 4fab4412..5f06bc2b 100644 --- a/app/src/settings_view/pane_manager.rs +++ b/app/src/settings_view/pane_manager.rs @@ -4,7 +4,7 @@ use crate::{ PaneViewLocator, }; use std::collections::HashMap; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WindowId}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WindowId}; use super::SettingsView; struct SettingsPaneData { diff --git a/app/src/settings_view/platform/create_api_key_modal.rs b/app/src/settings_view/platform/create_api_key_modal.rs index 24b75012..68b77b6d 100644 --- a/app/src/settings_view/platform/create_api_key_modal.rs +++ b/app/src/settings_view/platform/create_api_key_modal.rs @@ -10,18 +10,18 @@ use crate::{ }; use chrono::Utc; use pathfinder_geometry::vector::vec2f; -use warp_core::features::FeatureFlag; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::{ Border, ChildView, ConstrainedBox, Container, CornerRadius, Empty, Fill, Flex, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::elements::{CrossAxisAlignment, Expanded, MainAxisAlignment, MainAxisSize, Padding}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ui_components::segmented_control::{ +use galaxyui::elements::{CrossAxisAlignment, Expanded, MainAxisAlignment, MainAxisSize, Padding}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ui_components::segmented_control::{ LabelConfig, RenderableOptionConfig, SegmentedControl, }; -use warpui::{ +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -108,7 +108,7 @@ pub enum CreateApiKeyModalAction { pub enum CreateApiKeyModalEvent { Close, Created { - api_key: warp_graphql::queries::api_keys::ApiKeyProperties, + api_key: galaxy_graphql::queries::api_keys::ApiKeyProperties, }, Error { message: String, @@ -260,7 +260,7 @@ impl CreateApiKeyModal { let expires_at = match self.expiration.days() { Some(days) => { let t = Utc::now() + chrono::Duration::days(days); - Some(warp_graphql::scalars::Time::from(t)) + Some(galaxy_graphql::scalars::Time::from(t)) } None => None, }; @@ -294,7 +294,7 @@ impl CreateApiKeyModal { async move { server_api.create_api_key(final_name, team_id, expires_at).await }, |me, res, ctx| { match res { - Ok(warp_graphql::mutations::generate_api_key::GenerateApiKeyResult::GenerateApiKeyOutput(output)) => { + Ok(galaxy_graphql::mutations::generate_api_key::GenerateApiKeyResult::GenerateApiKeyOutput(output)) => { // Notify parent to append ctx.emit(CreateApiKeyModalEvent::Created { api_key: output.api_key }); // Switch to success view and show raw key @@ -303,13 +303,13 @@ impl CreateApiKeyModal { me.raw_key = Some(output.raw_api_key); ctx.notify(); } - Ok(warp_graphql::mutations::generate_api_key::GenerateApiKeyResult::UserFacingError(e)) => { - let msg = warp_graphql::client::get_user_facing_error_message(e); + Ok(galaxy_graphql::mutations::generate_api_key::GenerateApiKeyResult::UserFacingError(e)) => { + let msg = galaxy_graphql::client::get_user_facing_error_message(e); me.request_state = RequestState::Idle; ctx.emit(CreateApiKeyModalEvent::Error { message: msg }); ctx.notify(); } - Ok(warp_graphql::mutations::generate_api_key::GenerateApiKeyResult::Unknown) | Err(_) => { + Ok(galaxy_graphql::mutations::generate_api_key::GenerateApiKeyResult::Unknown) | Err(_) => { me.request_state = RequestState::Idle; ctx.emit(CreateApiKeyModalEvent::Error { message: "Failed to create API key. Please try again.".to_string() }); ctx.notify(); @@ -407,10 +407,10 @@ impl CreateApiKeyModal { "Copy" }; let copy_icon = if self.raw_key_copied { - warp_core::ui::icons::Icon::Check.to_warpui_icon(appearance.theme().background()) + galaxy_core::ui::icons::Icon::Check.to_galaxyui_icon(appearance.theme().background()) } else { - warp_core::ui::icons::Icon::Copy - .to_warpui_icon(appearance.theme().active_ui_text_color()) + galaxy_core::ui::icons::Icon::Copy + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) }; let mut copy_button_builder = appearance .ui_builder() @@ -423,8 +423,8 @@ impl CreateApiKeyModal { self.create_button_mouse_state.clone(), ) .with_text_and_icon_label( - warpui::ui_components::button::TextAndIcon::new( - warpui::ui_components::button::TextAndIconAlignment::IconFirst, + galaxyui::ui_components::button::TextAndIcon::new( + galaxyui::ui_components::button::TextAndIconAlignment::IconFirst, copy_label, copy_icon, MainAxisSize::Min, @@ -647,7 +647,7 @@ impl TypedActionView for CreateApiKeyModal { CreateApiKeyModalAction::CopyRawKey => { let content = self.raw_key.clone().unwrap_or_default(); ctx.clipboard() - .write(warpui::clipboard::ClipboardContent::plain_text(content)); + .write(galaxyui::clipboard::ClipboardContent::plain_text(content)); self.raw_key_copied = true; // Success toast let window_id = ctx.window_id(); diff --git a/app/src/settings_view/platform/expire_api_key_button.rs b/app/src/settings_view/platform/expire_api_key_button.rs index c1e7399a..22591823 100644 --- a/app/src/settings_view/platform/expire_api_key_button.rs +++ b/app/src/settings_view/platform/expire_api_key_button.rs @@ -1,6 +1,6 @@ use crate::server::{ids::ApiKeyUid, server_api::auth::AuthClient}; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::MouseStateHandle, ui_components::components::UiComponent, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; @@ -51,7 +51,7 @@ impl ExpireApiKeyButton { async move { server_api.expire_api_key(&uid_for_req).await }, move |me, res, ctx| match res { Ok( - warp_graphql::mutations::expire_api_key::ExpireApiKeyResult::ExpireApiKeyOutput( + galaxy_graphql::mutations::expire_api_key::ExpireApiKeyResult::ExpireApiKeyOutput( _output, ), ) => { @@ -62,14 +62,14 @@ impl ExpireApiKeyButton { ctx.notify(); } Ok( - warp_graphql::mutations::expire_api_key::ExpireApiKeyResult::UserFacingError(e), + galaxy_graphql::mutations::expire_api_key::ExpireApiKeyResult::UserFacingError(e), ) => { - let _msg = warp_graphql::client::get_user_facing_error_message(e); + let _msg = galaxy_graphql::client::get_user_facing_error_message(e); me.request_state = RequestState::Idle; ctx.emit(ExpireApiKeyButtonEvent::ExpireApiKeyFailed { message: _msg }); ctx.notify(); } - Ok(warp_graphql::mutations::expire_api_key::ExpireApiKeyResult::Unknown) + Ok(galaxy_graphql::mutations::expire_api_key::ExpireApiKeyResult::Unknown) | Err(_) => { me.request_state = RequestState::Idle; ctx.emit(ExpireApiKeyButtonEvent::ExpireApiKeyFailed { diff --git a/app/src/settings_view/platform_page.rs b/app/src/settings_view/platform_page.rs index 6115b643..38d92628 100644 --- a/app/src/settings_view/platform_page.rs +++ b/app/src/settings_view/platform_page.rs @@ -21,8 +21,8 @@ use crate::{ use chrono::{DateTime, Utc}; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use std::collections::HashMap; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{ Align, Border, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Element, Empty, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, MainAxisSize, MouseStateHandle, @@ -85,10 +85,10 @@ impl PlatformPageView { let uid = gql_key.uid.into_inner(); me.ensure_expire_button_for_key(ctx, uid.clone()); let scope = match gql_key.owner_type { - warp_graphql::object_permissions::OwnerType::User => { + galaxy_graphql::object_permissions::OwnerType::User => { ApiKeyScope::Personal } - warp_graphql::object_permissions::OwnerType::Team => { + galaxy_graphql::object_permissions::OwnerType::Team => { ApiKeyScope::Team } }; @@ -141,7 +141,7 @@ impl PlatformPageView { right: 24., }), font_size: Some(16.), - font_weight: Some(warpui::fonts::Weight::Bold), + font_weight: Some(galaxyui::fonts::Weight::Bold), ..Default::default() }) .with_body_style(UiComponentStyles { @@ -212,8 +212,8 @@ impl PlatformPageView { self.ensure_expire_button_for_key(ctx, uid.clone()); let scope = match api_key.owner_type { - warp_graphql::object_permissions::OwnerType::User => ApiKeyScope::Personal, - warp_graphql::object_permissions::OwnerType::Team => ApiKeyScope::Team, + galaxy_graphql::object_permissions::OwnerType::User => ApiKeyScope::Personal, + galaxy_graphql::object_permissions::OwnerType::Team => ApiKeyScope::Team, }; let ui_key = APIKeyProperties::new( uid, @@ -645,7 +645,7 @@ impl PlatformPageWidget { .with_child( ConstrainedBox::new( Icon::Key - .to_warpui_icon(appearance.theme().nonactive_ui_text_color()) + .to_galaxyui_icon(appearance.theme().nonactive_ui_text_color()) .finish(), ) .with_width(48.) diff --git a/app/src/settings_view/privacy/add_regex_modal.rs b/app/src/settings_view/privacy/add_regex_modal.rs index c0109c2c..2ff7625d 100644 --- a/app/src/settings_view/privacy/add_regex_modal.rs +++ b/app/src/settings_view/privacy/add_regex_modal.rs @@ -5,9 +5,9 @@ use crate::{ editor::{EditorView, PropagateAndNoOpNavigationKeys, SingleLineEditorOptions, TextOptions}, }; use regex::Regex; -use warp_editor::editor::NavigationKey; -use warpui::elements::{CrossAxisAlignment, Expanded, MainAxisSize}; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::{CrossAxisAlignment, Expanded, MainAxisSize}; +use galaxyui::{ elements::{ChildView, Container, Empty, Flex, MouseStateHandle, ParentElement, Text}, ui_components::{ button::ButtonVariant, diff --git a/app/src/settings_view/privacy_page.rs b/app/src/settings_view/privacy_page.rs index c7f8af40..53adc6ce 100644 --- a/app/src/settings_view/privacy_page.rs +++ b/app/src/settings_view/privacy_page.rs @@ -6,28 +6,28 @@ use std::time::Duration; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::color::internal_colors; -use warpui::r#async::{SpawnedFutureHandle, Timer}; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::r#async::{SpawnedFutureHandle, Timer}; use regex::Regex; use settings::Setting as _; -use warp_core::context_flag::ContextFlag; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::WarpTheme; -use warpui::elements::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::elements::{ Align, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Rect, Shrinkable, Stack, Text, }; -use warpui::keymap::ContextPredicate; -use warpui::platform::Cursor; -use warpui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; -use warpui::ui_components::{ +use galaxyui::keymap::ContextPredicate; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; +use galaxyui::ui_components::{ components::{Coords, UiComponent, UiComponentStyles}, switch::{SwitchStateHandle, TooltipConfig}, }; -use warpui::{ +use galaxyui::{ Action, AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, UpdateModel, View, ViewContext, ViewHandle, }; @@ -69,7 +69,7 @@ use super::{ }; use crate::modal::{Modal, ModalEvent, ModalViewState}; -use warpui::fonts::Weight; +use galaxyui::fonts::Weight; const FONT_SIZE: f32 = 12.; @@ -1087,7 +1087,7 @@ impl SecretRedactionWidget { let info_icon = Container::new( ConstrainedBox::new( Icon::Info - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .hint_text_color(appearance.theme().background()), @@ -1127,7 +1127,7 @@ impl SecretRedactionWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, text, - Icon::Plus.to_warpui_icon(appearance.theme().active_ui_text_color()), + Icon::Plus.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Min, MainAxisAlignment::SpaceBetween, vec2f(16., 16.), @@ -2040,6 +2040,6 @@ mod styles { pub const DESCRIPTION_LINE_MARGIN_BOTTOM: f32 = 6.; } -fn description_text_color(theme: &WarpTheme) -> warp_core::ui::theme::Fill { +fn description_text_color(theme: &WarpTheme) -> galaxy_core::ui::theme::Fill { theme.sub_text_color(theme.surface_2()) } diff --git a/app/src/settings_view/referrals_page.rs b/app/src/settings_view/referrals_page.rs index aa661219..bab14c8c 100644 --- a/app/src/settings_view/referrals_page.rs +++ b/app/src/settings_view/referrals_page.rs @@ -24,7 +24,7 @@ use crate::{ ui_components::blended_colors, view_components::ToastFlavor, }; -use warpui::{ +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Fill, diff --git a/app/src/settings_view/settings_file_footer.rs b/app/src/settings_view/settings_file_footer.rs index a6410e8c..cdde72d2 100644 --- a/app/src/settings_view/settings_file_footer.rs +++ b/app/src/settings_view/settings_file_footer.rs @@ -12,16 +12,16 @@ use crate::settings::SettingsFileError; use crate::ui_components::icons::Icon; use crate::WorkspaceAction; use pathfinder_color::ColorU; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Border, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Empty, Expanded, Flex, Highlight, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, ScrollbarWidth, Text, Wrap, }; -use warpui::fonts::{FamilyId, Properties, Weight}; -use warpui::platform::Cursor; +use galaxyui::fonts::{FamilyId, Properties, Weight}; +use galaxyui::platform::Cursor; /// Horizontal + vertical padding applied to the footer inside the sidebar. const FOOTER_PADDING: f32 = 12.; @@ -107,7 +107,7 @@ pub fn render_open_settings_file_button( let ui_font_family = appearance.ui_font_family(); Hoverable::new(mouse_state, move |state| { - let icon = ConstrainedBox::new(Icon::Code2.to_warpui_icon(text_fill).finish()) + let icon = ConstrainedBox::new(Icon::Code2.to_galaxyui_icon(text_fill).finish()) .with_width(FOOTER_ICON_SIZE) .with_height(FOOTER_ICON_SIZE) .finish(); @@ -186,7 +186,7 @@ pub fn render_settings_error_alert( let alert_icon = ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon(Fill::Solid(text_color)) + .to_galaxyui_icon(Fill::Solid(text_color)) .finish(), ) .with_width(FOOTER_ICON_SIZE) @@ -205,7 +205,7 @@ pub fn render_settings_error_alert( // action buttons below stay fixed and always actionable. Scrollbar thumb // colors are derived from `text_color` (which already contrasts against // the yellow alert background) so they remain visible in both themes. - // `ClippedScrollable` wants `warpui::elements::Fill` (not the theme + // `ClippedScrollable` wants `galaxyui::elements::Fill` (not the theme // `Fill` used elsewhere in this file), so the three fills below are // fully qualified to avoid an import alias. let scrollable_text = ConstrainedBox::new( @@ -213,9 +213,9 @@ pub fn render_settings_error_alert( mouse_states.alert_text_scroll_state.clone(), text_row, ScrollbarWidth::Auto, - warpui::elements::Fill::Solid(coloru_with_opacity(text_color, 30)), - warpui::elements::Fill::Solid(coloru_with_opacity(text_color, 60)), - warpui::elements::Fill::None, + galaxyui::elements::Fill::Solid(coloru_with_opacity(text_color, 30)), + galaxyui::elements::Fill::Solid(coloru_with_opacity(text_color, 60)), + galaxyui::elements::Fill::None, ) .finish(), ) @@ -332,7 +332,7 @@ fn render_alert_action_button( if let Some(icon) = icon { row.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(text_color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(text_color)).finish()) .with_width(ALERT_OZ_ICON_SIZE) .with_height(ALERT_OZ_ICON_SIZE) .finish(), diff --git a/app/src/settings_view/settings_page.rs b/app/src/settings_view/settings_page.rs index 058dfd2c..4fbe1114 100644 --- a/app/src/settings_view/settings_page.rs +++ b/app/src/settings_view/settings_page.rs @@ -32,11 +32,11 @@ use crate::{ view_components::{Dropdown, SubmittableTextInput}, }; use settings::Setting; -use warp_core::{ +use galaxy_core::{ settings::SyncToCloud, ui::{color::blend::Blend, theme::color::internal_colors}, }; -use warpui::{ +use galaxyui::{ elements::{ new_scrollable::{ClippedAxisConfiguration, DualAxisConfig, SingleAxisConfig}, Align, Border, ChildView, ClippedScrollStateHandle, ConstrainedBox, Container, @@ -434,7 +434,7 @@ pub fn render_full_pane_width_ai_button( .with_child( ConstrainedBox::new( Icon::ChevronRight - .to_warpui_icon(appearance.theme().main_text_color(icon_bg)) + .to_galaxyui_icon(appearance.theme().main_text_color(icon_bg)) .finish(), ) .with_width(16.) @@ -654,7 +654,7 @@ pub fn render_body_item_label_internal( if let Some(icon) = label_icon { label.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(label_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(label_color).finish()) .with_width(16.) .with_height(16.) .finish(), @@ -942,7 +942,7 @@ pub(crate) fn render_settings_info_banner( let icon = Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(16.) @@ -1179,7 +1179,7 @@ where /// Structured contents of a settings tab page. This type breaks all the content into /// [`SettingsWidget`]s. -pub(super) enum PageType { +pub(super) enum PageType { /// A page where the contents cannot be separated for showing search results. If any part /// matches the search query, the whole page must show. The whole page is one big /// [`SettingsWidget`]. @@ -1259,7 +1259,7 @@ impl From for MatchData { } } -impl PageType { +impl PageType { /// A page where the contents cannot be separated for showing search results. If any part /// matches the search query, the whole page must show. The whole page is one big /// [`SettingsWidget`]. @@ -1680,7 +1680,7 @@ impl PageType { }, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), vec![( @@ -1707,7 +1707,7 @@ impl PageType { }, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), )], @@ -1731,7 +1731,7 @@ impl PageType { } /// The results from a [`PageType`] with only matching [`SettingsWidget`]s. -pub(super) enum FilteredPageType<'a, V: warpui::View> { +pub(super) enum FilteredPageType<'a, V: galaxyui::View> { Monolith { widget: Option<&'a dyn SettingsWidget>, title: Option<&'static str>, @@ -1755,13 +1755,13 @@ pub(super) enum FilteredPageType<'a, V: warpui::View> { } /// A grouping of related [`SettingsWidget`]s that fall under the same sub-header. -pub(super) struct Category { +pub(super) struct Category { title: &'static str, subtitle: Option<&'static str>, widgets: Vec>>, } -impl Category { +impl Category { pub(super) fn new( title: &'static str, widgets: Vec>>, @@ -1780,7 +1780,7 @@ impl Category { } /// A [`Category`] with only the results which match a search query. -pub(super) struct FilteredCategory<'a, V: warpui::View> { +pub(super) struct FilteredCategory<'a, V: galaxyui::View> { pub(super) title: &'static str, pub(super) subtitle: Option<&'static str>, pub(super) widgets: Vec<&'a dyn SettingsWidget>, @@ -1790,7 +1790,7 @@ pub(super) struct FilteredCategory<'a, V: warpui::View> { /// content to match against. pub(super) trait SettingsWidget { /// Which View (settings page) this widget belongs to. - type View: warpui::View; + type View: galaxyui::View; fn static_widget_id() -> &'static str where diff --git a/app/src/settings_view/show_blocks_view.rs b/app/src/settings_view/show_blocks_view.rs index 80ca258f..c1230dbb 100644 --- a/app/src/settings_view/show_blocks_view.rs +++ b/app/src/settings_view/show_blocks_view.rs @@ -17,10 +17,10 @@ use anyhow::Result; use chrono::{DateTime, FixedOffset, Local}; use pathfinder_geometry::vector::vec2f; use std::sync::Arc; -use warp_core::ui::theme::color::internal_colors; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, @@ -30,9 +30,9 @@ use warpui::{ ScrollableElement, Shrinkable, Stack, UniformList, UniformListState, }, }; -use warpui::{color::ColorU, elements::Radius}; -use warpui::{elements::ScrollbarWidth, fonts::Weight}; -use warpui::{ +use galaxyui::{color::ColorU, elements::Radius}; +use galaxyui::{elements::ScrollbarWidth, fonts::Weight}; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/settings_view/tab_menu.rs b/app/src/settings_view/tab_menu.rs index 098011bb..4294975c 100644 --- a/app/src/settings_view/tab_menu.rs +++ b/app/src/settings_view/tab_menu.rs @@ -1,14 +1,14 @@ use std::fmt::Display; -use warpui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::button::ButtonVariant; use super::teams_page::TeamsPageAction; use crate::cloud_object::model::persistence::CloudModel; use crate::workspaces::team::Team; use crate::Appearance; -use warpui::elements::MouseStateHandle; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::components::UiComponentStyles; -use warpui::Element; +use galaxyui::elements::MouseStateHandle; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::Element; /// The Tabs trait provides common functionality for an enum to be used as a tabs menu UI component. /// It requires the trait-user to implement action_on_click() and label(). diff --git a/app/src/settings_view/teams_page.rs b/app/src/settings_view/teams_page.rs index f2f44261..0f3b31fb 100644 --- a/app/src/settings_view/teams_page.rs +++ b/app/src/settings_view/teams_page.rs @@ -58,10 +58,10 @@ use regex::Regex; use serde::{Deserialize, Serialize}; use std::sync::Arc; use std::{cmp::Ordering, collections::HashSet}; -use warp_core::ui::theme::color::internal_colors; -use warpui::FocusContext; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::FocusContext; -use warpui::{ +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, Border, ChildAnchor, ClippedScrollStateHandle, ConstrainedBox, Container, @@ -1798,7 +1798,7 @@ impl TeamsWidget { let currency_icon = Container::new( ConstrainedBox::new( Icon::CoinsStacked - .to_warpui_icon(appearance.theme().active_ui_text_color().with_opacity(90)) + .to_galaxyui_icon(appearance.theme().active_ui_text_color().with_opacity(90)) .finish(), ) .with_max_height(20.) @@ -2063,7 +2063,7 @@ impl TeamsWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Contact support", - Icon::Phone.to_warpui_icon(appearance.theme().accent()), + Icon::Phone.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -2092,7 +2092,7 @@ impl TeamsWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Manage billing", - Icon::CoinsStacked.to_warpui_icon(appearance.theme().accent()), + Icon::CoinsStacked.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -2123,7 +2123,7 @@ impl TeamsWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Open admin panel", - Icon::Users.to_warpui_icon(appearance.theme().accent()), + Icon::Users.to_galaxyui_icon(appearance.theme().accent()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), @@ -3254,7 +3254,7 @@ impl TeamsWidget { Hoverable::new(handle.clone(), move |_mouse_state| { Container::new( ConstrainedBox::new( - icon.to_warpui_icon( + icon.to_galaxyui_icon( appearance .theme() .active_ui_text_color() @@ -3287,7 +3287,7 @@ impl TeamsWidget { Container::new( ConstrainedBox::new( Icon::DotsVertical - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .active_ui_text_color() @@ -3872,7 +3872,7 @@ impl TeamsWidget { TextAndIcon::new( TextAndIconAlignment::IconFirst, text.to_string(), - Icon::CoinsStacked.to_warpui_icon(icon_color), + Icon::CoinsStacked.to_galaxyui_icon(icon_color), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(14., 14.), diff --git a/app/src/settings_view/telemetry.rs b/app/src/settings_view/telemetry.rs index 2df02524..f2745801 100644 --- a/app/src/settings_view/telemetry.rs +++ b/app/src/settings_view/telemetry.rs @@ -1,7 +1,7 @@ use serde_json::Value; use strum_macros::EnumDiscriminants; use strum_macros::EnumIter; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; #[derive(Debug, EnumDiscriminants)] #[strum_discriminants(derive(EnumIter))] @@ -33,7 +33,7 @@ impl TelemetryEvent for SettingsTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -61,4 +61,4 @@ impl TelemetryEventDesc for SettingsTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(SettingsTelemetryEvent); +galaxy_core::register_telemetry_event!(SettingsTelemetryEvent); diff --git a/app/src/settings_view/transfer_ownership_confirmation_modal.rs b/app/src/settings_view/transfer_ownership_confirmation_modal.rs index 8010dd5f..0c8635f4 100644 --- a/app/src/settings_view/transfer_ownership_confirmation_modal.rs +++ b/app/src/settings_view/transfer_ownership_confirmation_modal.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{Align, Container, CrossAxisAlignment, Flex, MouseStateHandle, ParentElement, Text}, ui_components::{ button::ButtonVariant, diff --git a/app/src/settings_view/update_environment_form.rs b/app/src/settings_view/update_environment_form.rs index df2f0eb8..49b017a1 100644 --- a/app/src/settings_view/update_environment_form.rs +++ b/app/src/settings_view/update_environment_form.rs @@ -30,10 +30,10 @@ use log::debug; #[cfg(not(target_family = "wasm"))] use std::collections::HashMap; use url::Url; -use warp_core::send_telemetry_from_ctx; -use warp_editor::editor::NavigationKey; -use warp_graphql::queries::user_github_info::UserGithubInfoResult; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_editor::editor::NavigationKey; +use galaxy_graphql::queries::user_github_info::UserGithubInfoResult; +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, Empty, @@ -56,7 +56,7 @@ use warpui::{ const SUBMIT_BUTTON_FOCUSED: &str = "SubmitButtonFocused"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -1413,7 +1413,7 @@ impl UpdateEnvironmentForm { match result { Ok(result) => match result { - warp_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::SuggestCloudEnvironmentImageOutput(output) => { + galaxy_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::SuggestCloudEnvironmentImageOutput(output) => { let image = output.image; let needs_custom_image = output.needs_custom_image; let reason = output.reason; @@ -1425,7 +1425,7 @@ impl UpdateEnvironmentForm { ctx, ); } - warp_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::SuggestCloudEnvironmentImageAuthRequiredOutput(output) => { + galaxy_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::SuggestCloudEnvironmentImageAuthRequiredOutput(output) => { me.suggest_image_cache.insert( key.clone(), CachedSuggestImageResult::AuthRequired { @@ -1437,7 +1437,7 @@ impl UpdateEnvironmentForm { auth_url: output.auth_url, }; } - warp_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::UserFacingError(_) => { + galaxy_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::UserFacingError(_) => { let error_message = "Failed to suggest a Docker image".to_string(); send_telemetry_from_ctx!( CloudAgentTelemetryEvent::ImageSuggestionFailed { @@ -1450,7 +1450,7 @@ impl UpdateEnvironmentForm { message: error_message, }; } - warp_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::Unknown => { + galaxy_graphql::queries::suggest_cloud_environment_image::SuggestCloudEnvironmentImageResult::Unknown => { let error_message = "Unknown response from suggestCloudEnvironmentImage".to_string(); send_telemetry_from_ctx!( CloudAgentTelemetryEvent::ImageSuggestionFailed { @@ -1987,7 +1987,7 @@ impl UpdateEnvironmentForm { .with_child( ConstrainedBox::new( Icon::Github - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_width(icon_size) @@ -2104,7 +2104,7 @@ impl UpdateEnvironmentForm { .with_child( ConstrainedBox::new( Icon::Refresh - .to_warpui_icon(theme.active_ui_text_color()) + .to_galaxyui_icon(theme.active_ui_text_color()) .finish(), ) .with_width(icon_size) @@ -3085,7 +3085,7 @@ impl UpdateEnvironmentForm { }; let icon_size = appearance.ui_font_size(); - let icon = ConstrainedBox::new(Icon::Lightbulb.to_warpui_icon(text_fill).finish()) + let icon = ConstrainedBox::new(Icon::Lightbulb.to_galaxyui_icon(text_fill).finish()) .with_width(icon_size) .with_height(icon_size) .finish(); @@ -3454,8 +3454,8 @@ impl TypedActionView for UpdateEnvironmentForm { &mut self, _action: &Self::Action, _ctx: &mut ViewContext, - ) -> warpui::accessibility::ActionAccessibilityContent { - warpui::accessibility::ActionAccessibilityContent::default() + ) -> galaxyui::accessibility::ActionAccessibilityContent { + galaxyui::accessibility::ActionAccessibilityContent::default() } } @@ -3464,7 +3464,7 @@ impl View for UpdateEnvironmentForm { "UpdateEnvironmentForm" } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if self.submit_button.is_focused(app) { context.set.insert(SUBMIT_BUTTON_FOCUSED); diff --git a/app/src/settings_view/update_environment_form_tests.rs b/app/src/settings_view/update_environment_form_tests.rs index 16a14d70..f3ce13c2 100644 --- a/app/src/settings_view/update_environment_form_tests.rs +++ b/app/src/settings_view/update_environment_form_tests.rs @@ -18,10 +18,10 @@ use crate::workspaces::team_tester::TeamTesterStatus; use crate::workspaces::user_workspaces::UserWorkspaces; use crate::workspaces::workspace::Workspace; use url::Url; -use warp_core::ui::appearance::Appearance; -use warpui::elements::{Empty, MouseStateHandle}; -use warpui::platform::WindowStyle; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{Empty, MouseStateHandle}; +use galaxyui::platform::WindowStyle; +use galaxyui::{ AddSingletonModel, App, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, WindowId, }; diff --git a/app/src/settings_view/warp_drive_page.rs b/app/src/settings_view/warp_drive_page.rs index a74eed3f..1f3b77fa 100644 --- a/app/src/settings_view/warp_drive_page.rs +++ b/app/src/settings_view/warp_drive_page.rs @@ -6,8 +6,8 @@ use super::{ LocalOnlyIconState, SettingsSection, ToggleState, }; use crate::{appearance::Appearance, auth::AuthStateProvider, drive::settings::WarpDriveSettings}; -use warp_core::{features::FeatureFlag, report_if_error, settings::ToggleableSetting as _}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, report_if_error, settings::ToggleableSetting as _}; +use galaxyui::{ elements::{Container, Element, Flex, MouseStateHandle, ParentElement, Shrinkable, Text}, fonts::Weight, ui_components::{ @@ -160,8 +160,8 @@ impl SettingsWidget for WarpDriveHeaderWidget { .with_style(UiComponentStyles { font_size: Some(14.), font_weight: Some(Weight::Semibold), - border_radius: Some(warpui::elements::CornerRadius::with_all( - warpui::elements::Radius::Pixels(4.), + border_radius: Some(galaxyui::elements::CornerRadius::with_all( + galaxyui::elements::Radius::Pixels(4.), )), padding: Some(Coords { top: 8., @@ -182,7 +182,7 @@ impl SettingsWidget for WarpDriveHeaderWidget { Container::new( Flex::row() - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center) .with_child(Shrinkable::new(1., message).finish()) .with_child(button) .finish(), diff --git a/app/src/settings_view/warpify_page.rs b/app/src/settings_view/warpify_page.rs index 3b03469b..927030aa 100644 --- a/app/src/settings_view/warpify_page.rs +++ b/app/src/settings_view/warpify_page.rs @@ -6,10 +6,10 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use regex::Regex; use settings::{Setting, ToggleableSetting}; use strum::IntoEnumIterator; -use warp_core::features::FeatureFlag; -use warpui::elements::{FormattedTextElement, HighlightedHyperlink}; -use warpui::keymap::ContextPredicate; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::{FormattedTextElement, HighlightedHyperlink}; +use galaxyui::keymap::ContextPredicate; +use galaxyui::{ elements::{Container, Flex, MouseStateHandle, ParentElement}, presenter::ChildView, ui_components::{ diff --git a/app/src/suggestions/ignored_suggestions_model.rs b/app/src/suggestions/ignored_suggestions_model.rs index 0f31d7e9..23d0c227 100644 --- a/app/src/suggestions/ignored_suggestions_model.rs +++ b/app/src/suggestions/ignored_suggestions_model.rs @@ -1,7 +1,7 @@ use std::collections::HashSet; use serde::{Deserialize, Serialize}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::{persistence::ModelEvent, GlobalResourceHandlesProvider}; diff --git a/app/src/system.rs b/app/src/system.rs index 7fb4a073..c64ce768 100644 --- a/app/src/system.rs +++ b/app/src/system.rs @@ -6,7 +6,7 @@ cfg_if::cfg_if! { } } -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[derive(Clone, Copy, Default, PartialEq)] pub struct SystemStats; @@ -37,13 +37,13 @@ impl Entity for SystemStats { impl SingletonEntity for SystemStats {} #[cfg(not(target_family = "wasm"))] -pub fn long_os_version(ctx: &warpui::AppContext) -> Option { +pub fn long_os_version(ctx: &galaxyui::AppContext) -> Option { crate::system::SystemInfo::as_ref(ctx) .long_os_version() .map(ToOwned::to_owned) } #[cfg(target_family = "wasm")] -pub fn long_os_version(_ctx: &warpui::AppContext) -> Option { +pub fn long_os_version(_ctx: &galaxyui::AppContext) -> Option { None } diff --git a/app/src/system/info.rs b/app/src/system/info.rs index eedae246..004b38af 100644 --- a/app/src/system/info.rs +++ b/app/src/system/info.rs @@ -8,8 +8,8 @@ use num_traits::Zero; use ordered_float::OrderedFloat; use serde::Serialize; use sysinfo::ProcessesToUpdate; -use warp_core::channel::ChannelState; -use warpui::{App, AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxyui::{App, AppContext, Entity, ModelContext, SingletonEntity}; use crate::{ send_telemetry_from_app_ctx, send_telemetry_sync_from_ctx, server::telemetry, @@ -128,7 +128,7 @@ impl SystemInfo { fn schedule_refresh(ctx: &mut ModelContext) { ctx.spawn( async { - warpui::r#async::Timer::after(REFRESH_INTERVAL).await; + galaxyui::r#async::Timer::after(REFRESH_INTERVAL).await; }, |me, _, ctx| { me.refresh(ctx); diff --git a/app/src/tab.rs b/app/src/tab.rs index b2bc28b2..a715a923 100644 --- a/app/src/tab.rs +++ b/app/src/tab.rs @@ -33,11 +33,11 @@ use crate::BlocklistAIHistoryModel; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use serde::{Deserialize, Serialize}; -use warp_core::context_flag::ContextFlag; -use warp_core::ui::builder::UiBuilder; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::AnsiColors; -use warpui::elements::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::ui::builder::UiBuilder; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::AnsiColors; +use galaxyui::elements::{ Align, Border, ChildAnchor, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DragAxis, Draggable, DraggableState, DropTarget, Element, Empty, Fill, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, Padding, @@ -45,11 +45,11 @@ use warpui::elements::{ PositionedElementOffsetBounds, Radius, Rect, SavePosition, Shrinkable, SizeConstraintCondition, SizeConstraintSwitch, Stack, Text, }; -use warpui::fonts::Weight; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ui_components::text_input::TextInput; -use warpui::{AppContext, SingletonEntity, ViewHandle}; +use galaxyui::fonts::Weight; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ui_components::text_input::TextInput; +use galaxyui::{AppContext, SingletonEntity, ViewHandle}; pub const TAB_BAR_BORDER_HEIGHT: f32 = 1.0; const TAB_INDICATOR_HEIGHT: f32 = 14.0; @@ -1082,22 +1082,22 @@ impl<'a> TabComponent<'a> { Indicator::None => None, Indicator::Synced => Some( Icon::LinkHorizontal - .to_warpui_icon(self.styles.synced_input_indicator_color.into()) + .to_galaxyui_icon(self.styles.synced_input_indicator_color.into()) .finish(), ), Indicator::Error => Some( Icon::AlertTriangle - .to_warpui_icon(self.styles.error_color.into()) + .to_galaxyui_icon(self.styles.error_color.into()) .finish(), ), Indicator::Shared => Some( Icon::Sharing - .to_warpui_icon(self.styles.sharing_color.into()) + .to_galaxyui_icon(self.styles.sharing_color.into()) .finish(), ), Indicator::Maximized => Some( Icon::Maximize - .to_warpui_icon( + .to_galaxyui_icon( self.styles .default .font_color @@ -1109,7 +1109,7 @@ impl<'a> TabComponent<'a> { Indicator::Shell(shell_indicator_type) => Some( shell_indicator_type .to_icon() - .to_warpui_icon(internal_colors::neutral_5(self.appearance.theme()).into()) + .to_galaxyui_icon(internal_colors::neutral_5(self.appearance.theme()).into()) .finish(), ), Indicator::Agent { @@ -1124,7 +1124,7 @@ impl<'a> TabComponent<'a> { } } else { let icon_color = self.appearance.theme().nonactive_ui_text_color(); - Some(Icon::Oz.to_warpui_icon(icon_color).finish()) + Some(Icon::Oz.to_galaxyui_icon(icon_color).finish()) } } Indicator::AmbientAgent => { @@ -1139,7 +1139,7 @@ impl<'a> TabComponent<'a> { Some( Hoverable::new(mouse_state, move |state| { let mut stack = Stack::new() - .with_child(Icon::OzCloud.to_warpui_icon(icon_color.into()).finish()); + .with_child(Icon::OzCloud.to_galaxyui_icon(icon_color.into()).finish()); if state.is_hovered() { let tooltip = ui_builder @@ -1264,7 +1264,7 @@ impl<'a> TabComponent<'a> { let mut flex_row = Flex::row() .with_main_axis_size(MainAxisSize::Max) .with_main_axis_alignment(MainAxisAlignment::Center) - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center); + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center); if let Some(indicator) = self.render_indicator() { flex_row.add_child(indicator); } @@ -1287,7 +1287,7 @@ impl<'a> TabComponent<'a> { } else { // Fallback to terminal icon if no indicator is present Icon::Terminal - .to_warpui_icon( + .to_galaxyui_icon( self.styles .default .font_color @@ -1301,7 +1301,7 @@ impl<'a> TabComponent<'a> { Flex::row() .with_main_axis_size(MainAxisSize::Max) .with_main_axis_alignment(MainAxisAlignment::Center) - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Center) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Center) .with_child( ConstrainedBox::new(compact_icon) .with_max_width(TAB_INDICATOR_HEIGHT) @@ -1515,7 +1515,7 @@ impl UiComponent for TabComponent<'_> { if let Some(directory) = &tooltip_directory_clone { let folder_icon = Icon::Folder - .to_warpui_icon(ThemeFill::Solid(font_color)) + .to_galaxyui_icon(ThemeFill::Solid(font_color)) .finish(); let directory_row = Flex::row() @@ -1548,7 +1548,7 @@ impl UiComponent for TabComponent<'_> { if let Some(branch) = &tooltip_git_branch_clone { let branch_icon = Icon::GitBranch - .to_warpui_icon(ThemeFill::Solid(font_color)) + .to_galaxyui_icon(ThemeFill::Solid(font_color)) .finish(); let branch_row = Flex::row() diff --git a/app/src/tab_configs/action_sidecar.rs b/app/src/tab_configs/action_sidecar.rs index d2b7003a..fbdec4a3 100644 --- a/app/src/tab_configs/action_sidecar.rs +++ b/app/src/tab_configs/action_sidecar.rs @@ -1,5 +1,5 @@ -use warp_util::path::user_friendly_path; -use warpui::{ +use galaxy_util::path::user_friendly_path; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, @@ -95,9 +95,9 @@ pub(crate) fn render_action_sidecar( let primary_text_color = theme.main_text_color(theme.surface_2()); let button_style = UiComponentStyles { font_size: Some(12.), - font_weight: Some(warpui::fonts::Weight::Bold), + font_weight: Some(galaxyui::fonts::Weight::Bold), font_color: Some(primary_text_color.into()), - padding: Some(warpui::ui_components::components::Coords { + padding: Some(galaxyui::ui_components::components::Coords { top: 4., bottom: 4., left: 8., @@ -156,7 +156,7 @@ pub(crate) fn render_action_sidecar( .with_style(button_style) .build() .with_cursor(Cursor::PointingHand) - .on_click(move |ctx: &mut warpui::elements::EventContext, _, _| { + .on_click(move |ctx: &mut galaxyui::elements::EventContext, _, _| { ctx.dispatch_typed_action(make_default_action.clone()) }) .finish() @@ -178,7 +178,7 @@ pub(crate) fn render_action_sidecar( .with_style(button_style) .build() .with_cursor(Cursor::PointingHand) - .on_click(move |ctx: &mut warpui::elements::EventContext, _, _| { + .on_click(move |ctx: &mut galaxyui::elements::EventContext, _, _| { ctx.dispatch_typed_action(WorkspaceAction::TabConfigSidecarEditConfig { path: edit_path.clone(), }) @@ -213,7 +213,7 @@ pub(crate) fn render_action_sidecar( }) .build() .with_cursor(Cursor::PointingHand) - .on_click(move |ctx: &mut warpui::elements::EventContext, _, _| { + .on_click(move |ctx: &mut galaxyui::elements::EventContext, _, _| { ctx.dispatch_typed_action(WorkspaceAction::TabConfigSidecarRemoveConfig { name: remove_name.clone(), path: remove_path.clone(), diff --git a/app/src/tab_configs/branch_picker.rs b/app/src/tab_configs/branch_picker.rs index e036ef86..43a68a24 100644 --- a/app/src/tab_configs/branch_picker.rs +++ b/app/src/tab_configs/branch_picker.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use warpui::{ +use galaxyui::{ elements::ChildView, ui_components::components::UiComponentStyles, AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/tab_configs/mod.rs b/app/src/tab_configs/mod.rs index 157f4d71..6ab6ef05 100644 --- a/app/src/tab_configs/mod.rs +++ b/app/src/tab_configs/mod.rs @@ -10,7 +10,7 @@ pub mod session_config_rendering; pub mod tab_config; pub mod telemetry; -use warp_core::ui::theme::Fill; +use galaxy_core::ui::theme::Fill; pub use new_worktree_modal::{NewWorktreeModal, NewWorktreeModalEvent}; pub use params_modal::{TabConfigParamsModal, TabConfigParamsModalEvent}; diff --git a/app/src/tab_configs/new_worktree_modal.rs b/app/src/tab_configs/new_worktree_modal.rs index 6da4cfdd..6bd77fe5 100644 --- a/app/src/tab_configs/new_worktree_modal.rs +++ b/app/src/tab_configs/new_worktree_modal.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Fill as ElementFill, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, Padding, @@ -19,7 +19,7 @@ use warpui::{ /// Registers keybindings for the new-worktree modal (ESC to close). pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![FixedBinding::new( "escape", NewWorktreeModalAction::Escape, @@ -27,7 +27,7 @@ pub fn init(app: &mut AppContext) { )]); } -use warp_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::color::internal_colors; use crate::{ ai::persisted_workspace::PersistedWorkspace, @@ -364,8 +364,8 @@ impl View for NewWorktreeModal { // X close icon let close_icon = ConstrainedBox::new( - warp_core::ui::Icon::X - .to_warpui_icon(theme.sub_text_color(theme.background())) + galaxy_core::ui::Icon::X + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish(), ) .with_width(CLOSE_ICON_SIZE) @@ -379,7 +379,7 @@ impl View for NewWorktreeModal { .with_child(esc_badge) .finish(); - let close_hoverable = warpui::elements::Hoverable::new( + let close_hoverable = galaxyui::elements::Hoverable::new( self.close_button_mouse_state.clone(), move |_state| close_button, ) diff --git a/app/src/tab_configs/params_modal.rs b/app/src/tab_configs/params_modal.rs index 4a4650ef..ad5d03a0 100644 --- a/app/src/tab_configs/params_modal.rs +++ b/app/src/tab_configs/params_modal.rs @@ -1,9 +1,9 @@ use std::{collections::HashMap, path::PathBuf}; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::Icon; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::Icon; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ Border, ChildView, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Fill, Flex, Hoverable, MainAxisAlignment, MainAxisSize, @@ -545,7 +545,7 @@ impl View for TabConfigParamsModal { .with_corner_radius(CornerRadius::with_all(Radius::Pixels(3.))) .finish(); - let close_icon = ConstrainedBox::new(Icon::X.to_warpui_icon(sub_text).finish()) + let close_icon = ConstrainedBox::new(Icon::X.to_galaxyui_icon(sub_text).finish()) .with_width(14.) .with_height(14.) .finish(); diff --git a/app/src/tab_configs/remove_confirmation_dialog.rs b/app/src/tab_configs/remove_confirmation_dialog.rs index a7425903..aca1c446 100644 --- a/app/src/tab_configs/remove_confirmation_dialog.rs +++ b/app/src/tab_configs/remove_confirmation_dialog.rs @@ -1,8 +1,8 @@ use std::path::PathBuf; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ Align, ChildAnchor, ChildView, Container, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack, @@ -21,7 +21,7 @@ use crate::{ }; pub(crate) fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -98,7 +98,7 @@ impl View for RemoveTabConfigConfirmationDialog { "RemoveTabConfigConfirmationDialog" } - fn on_focus(&mut self, _focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, _focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { ctx.focus_self(); } diff --git a/app/src/tab_configs/repo_picker.rs b/app/src/tab_configs/repo_picker.rs index 57681878..b6566491 100644 --- a/app/src/tab_configs/repo_picker.rs +++ b/app/src/tab_configs/repo_picker.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use warpui::{ +use galaxyui::{ elements::{Border, ChildView, Container, Hoverable, MouseStateHandle, Text}, platform::Cursor, ui_components::components::UiComponentStyles, diff --git a/app/src/tab_configs/session_config_modal.rs b/app/src/tab_configs/session_config_modal.rs index 62476689..470d71bb 100644 --- a/app/src/tab_configs/session_config_modal.rs +++ b/app/src/tab_configs/session_config_modal.rs @@ -1,18 +1,18 @@ use std::path::PathBuf; use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ +use galaxyui::elements::{ ChildAnchor, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, FormattedTextElement, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Stack, }; -use warpui::fonts::Weight; -use warpui::keymap::macros::id; -use warpui::keymap::FixedBinding; -use warpui::keymap::Keystroke; -use warpui::platform::file_picker::FilePickerConfiguration; -use warpui::FocusContext; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::keymap::macros::id; +use galaxyui::keymap::FixedBinding; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::file_picker::FilePickerConfiguration; +use galaxyui::FocusContext; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -25,7 +25,7 @@ use crate::view_components::action_button::{ use super::session_config::{is_git_repo, SessionConfigSelection, SessionType}; use super::session_config_rendering; -pub fn init(app: &mut warpui::AppContext) { +pub fn init(app: &mut galaxyui::AppContext) { app.register_fixed_bindings([FixedBinding::new( "enter", SessionConfigModalAction::Submit, @@ -39,7 +39,7 @@ const SECTION_GAP: f32 = 16.; pub enum SessionConfigModalAction { SelectSessionType(usize), OpenDirectoryPicker, - DirectorySelected(Result), + DirectorySelected(Result), ToggleWorktree, ToggleAutogenerateWorktreeBranchName, Submit, diff --git a/app/src/tab_configs/session_config_rendering.rs b/app/src/tab_configs/session_config_rendering.rs index 3fcad386..033636cc 100644 --- a/app/src/tab_configs/session_config_rendering.rs +++ b/app/src/tab_configs/session_config_rendering.rs @@ -3,20 +3,20 @@ use std::sync::Arc; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ +use galaxyui::elements::{ Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::geometry::vector::Vector2F; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::Element; -use warpui::EventContext; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::geometry::vector::Vector2F; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::Element; +use galaxyui::EventContext; -use warp_core::ui::theme::Fill; -use warp_core::ui::theme::WarpTheme; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::theme::WarpTheme; use crate::appearance::Appearance; use crate::tab_configs::session_config::SessionType; @@ -109,7 +109,7 @@ where let icon = ConstrainedBox::new( session_type .icon() - .to_warpui_icon(item_color.into()) + .to_galaxyui_icon(item_color.into()) .finish(), ) .with_width(14.) @@ -241,7 +241,7 @@ where let home_dir = dirs::home_dir(); let raw_path = selected_directory.to_string_lossy(); let dir_display = - warp_util::path::user_friendly_path(&raw_path, home_dir.as_ref().and_then(|h| h.to_str())) + galaxy_util::path::user_friendly_path(&raw_path, home_dir.as_ref().and_then(|h| h.to_str())) .into_owned(); let dir_text = Text::new_inline(dir_display, appearance.ui_font_family(), 14.) @@ -320,7 +320,7 @@ pub fn render_worktree_checkbox_with_background( appearance: &Appearance, ) -> Box where - F: Fn(&mut warpui::EventContext, warpui::geometry::vector::Vector2F) + 'static, + F: Fn(&mut galaxyui::EventContext, galaxyui::geometry::vector::Vector2F) + 'static, { let disabled = !is_git_repo; let on_accent_bg = bg.is_some(); diff --git a/app/src/tab_configs/tab_config.rs b/app/src/tab_configs/tab_config.rs index 6cd46a8b..ffe858c9 100644 --- a/app/src/tab_configs/tab_config.rs +++ b/app/src/tab_configs/tab_config.rs @@ -45,7 +45,7 @@ pub(crate) fn generated_worktree_repo_dir(repo_path: &Path) -> PathBuf { .and_then(|name| name.to_str()) .filter(|name| !name.is_empty()) .unwrap_or("untitled"); - warp_core::paths::data_dir() + galaxy_core::paths::data_dir() .join("worktrees") .join(repo_name) } diff --git a/app/src/tab_configs/tab_config_tests.rs b/app/src/tab_configs/tab_config_tests.rs index b35ce1c8..bedb0541 100644 --- a/app/src/tab_configs/tab_config_tests.rs +++ b/app/src/tab_configs/tab_config_tests.rs @@ -66,7 +66,7 @@ fn test_generated_worktree_path_uses_repo_name_directory() { assert_eq!( repo_dir, - warp_core::paths::data_dir() + galaxy_core::paths::data_dir() .join("worktrees") .join("backend") ); diff --git a/app/src/tab_configs/telemetry.rs b/app/src/tab_configs/telemetry.rs index 055e7bff..cc959429 100644 --- a/app/src/tab_configs/telemetry.rs +++ b/app/src/tab_configs/telemetry.rs @@ -1,7 +1,7 @@ use serde::Serialize; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; use crate::tab_configs::session_config::SessionType; @@ -117,7 +117,7 @@ impl TelemetryEvent for TabConfigsTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -157,4 +157,4 @@ impl TelemetryEventDesc for TabConfigsTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(TabConfigsTelemetryEvent); +galaxy_core::register_telemetry_event!(TabConfigsTelemetryEvent); diff --git a/app/src/terminal/alias.rs b/app/src/terminal/alias.rs index f06d8a60..6dd48d8e 100644 --- a/app/src/terminal/alias.rs +++ b/app/src/terminal/alias.rs @@ -1,7 +1,7 @@ use crate::terminal::model::session::Session; use smol_str::SmolStr; use std::sync::Arc; -use warp_completer::parsers::simple::all_parsed_commands; +use galaxy_completer::parsers::simple::all_parsed_commands; /// Contains information about an aliased command. #[derive(Clone, Debug, Eq, PartialEq)] diff --git a/app/src/terminal/alt_screen/alt_screen_element.rs b/app/src/terminal/alt_screen/alt_screen_element.rs index 0eaa6c59..af0c98b7 100644 --- a/app/src/terminal/alt_screen/alt_screen_element.rs +++ b/app/src/terminal/alt_screen/alt_screen_element.rs @@ -28,28 +28,28 @@ use num_traits::Float as _; use parking_lot::FairMutex; use pathfinder_geometry::vector::vec2f; use vec1::Vec1; -use warp_core::features::FeatureFlag; -use warp_util::user_input::UserInput; -use warpui::elements::new_scrollable::{NewScrollableElement, ScrollableAxis}; -use warpui::event::{KeyState, ModifiersState}; -use warpui::platform::keyboard::KeyCode; -use warpui::text::SelectionType; +use galaxy_core::features::FeatureFlag; +use galaxy_util::user_input::UserInput; +use galaxyui::elements::new_scrollable::{NewScrollableElement, ScrollableAxis}; +use galaxyui::event::{KeyState, ModifiersState}; +use galaxyui::platform::keyboard::KeyCode; +use galaxyui::text::SelectionType; use super::{should_intercept_mouse, should_intercept_scroll}; use std::ops::{Deref as _, Range}; use std::sync::Arc; -use warpui::elements::{Axis, Fill, Point as UiPoint, ScrollData, ScrollableElement}; -use warpui::fonts::Properties; -use warpui::geometry::rect::RectF; -use warpui::geometry::vector::Vector2F; -use warpui::units::{IntoLines, IntoPixels, Lines, Pixels}; -use warpui::{ +use galaxyui::elements::{Axis, Fill, Point as UiPoint, ScrollData, ScrollableElement}; +use galaxyui::fonts::Properties; +use galaxyui::geometry::rect::RectF; +use galaxyui::geometry::vector::Vector2F; +use galaxyui::units::{IntoLines, IntoPixels, Lines, Pixels}; +use galaxyui::{ end_trace, event::{DispatchedEvent, InBoundsExt}, record_trace_event, start_trace, AfterLayoutContext, AppContext, Element, Event, EventContext, LayoutContext, PaintContext, SizeConstraint, }; -use warpui::{ClipBounds, EntityId, ModelHandle}; +use galaxyui::{ClipBounds, EntityId, ModelHandle}; const CLI_SUBAGENT_HORIZONTAL_MARGIN: f32 = 8.; const CLI_SUBAGENT_VERTICAL_MARGIN: f32 = 8.; @@ -260,7 +260,7 @@ impl AltScreenElement { ctx.dispatch_typed_action(TerminalAction::Focus); // On mobile, request soft keyboard so users can input. - if warpui::platform::is_mobile_device() { + if galaxyui::platform::is_mobile_device() { ctx.request_soft_keyboard(); } diff --git a/app/src/terminal/alt_screen/mod.rs b/app/src/terminal/alt_screen/mod.rs index a6e4ac56..4771fc67 100644 --- a/app/src/terminal/alt_screen/mod.rs +++ b/app/src/terminal/alt_screen/mod.rs @@ -1,5 +1,5 @@ use settings::Setting as _; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use super::{ alt_screen_reporting::AltScreenReporting, model::grid::grid_handler::TermMode, TerminalModel, diff --git a/app/src/terminal/audible_bell/mod.rs b/app/src/terminal/audible_bell/mod.rs index e8413752..3f45c42c 100644 --- a/app/src/terminal/audible_bell/mod.rs +++ b/app/src/terminal/audible_bell/mod.rs @@ -1,7 +1,7 @@ //! Module containing the definition of a platform agnostic audible bell. use anyhow::Result; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; #[cfg_attr(target_os = "linux", path = "linux.rs")] #[cfg_attr(target_os = "macos", path = "macos.rs")] diff --git a/app/src/terminal/available_shells.rs b/app/src/terminal/available_shells.rs index 3474b620..d07322c0 100644 --- a/app/src/terminal/available_shells.rs +++ b/app/src/terminal/available_shells.rs @@ -9,8 +9,8 @@ use std::sync::Arc; #[cfg(feature = "local_tty")] use settings::Setting as _; #[cfg(feature = "local_tty")] -use warpui::{AppContext, ModelContext}; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{AppContext, ModelContext}; +use galaxyui::{Entity, SingletonEntity}; #[cfg(feature = "local_tty")] use crate::util::path::file_exists_and_is_executable; @@ -606,7 +606,7 @@ impl AvailableShells { ctx: &mut ModelContext, ) -> anyhow::Result<()> { use super::session_settings::SessionSettings; - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; SessionSettings::handle(ctx).update(ctx, |settings, ctx| { if FeatureFlag::ShellSelector.is_enabled() { settings @@ -624,7 +624,7 @@ impl AvailableShells { paths_to_search: &[PathBuf], fallback_path: Option<&Path>, ) -> Vec { - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; if !FeatureFlag::ShellSelector.is_enabled() { return vec![ @@ -722,7 +722,7 @@ impl AvailableShells { fn locate_msys2_executables() -> Vec { use std::env; - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; let mut paths = Vec::new(); @@ -982,7 +982,7 @@ impl Entity for AvailableShells { impl SingletonEntity for AvailableShells {} #[cfg(feature = "local_tty")] -pub fn register(app: &mut impl warpui::AddSingletonModel) { +pub fn register(app: &mut impl galaxyui::AddSingletonModel) { #[cfg(windows)] app.add_singleton_model(super::wsl::WslInfo::new); app.add_singleton_model(AvailableShells::new); diff --git a/app/src/terminal/available_shells_test.rs b/app/src/terminal/available_shells_test.rs index 8abe79cb..c02a758b 100644 --- a/app/src/terminal/available_shells_test.rs +++ b/app/src/terminal/available_shells_test.rs @@ -4,7 +4,7 @@ use crate::test_util::{Stub, VirtualFS}; use std::collections::HashMap; use std::path::{Path, PathBuf}; use std::sync::Arc; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; fn make_available_shells(shells: Vec) -> AvailableShells { AvailableShells { diff --git a/app/src/terminal/block_filter.rs b/app/src/terminal/block_filter.rs index b6de36f9..2090aa2d 100644 --- a/app/src/terminal/block_filter.rs +++ b/app/src/terminal/block_filter.rs @@ -1,11 +1,11 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use regex_automata::hybrid::BuildError; -use warp_editor::editor::NavigationKey; -use warpui::elements::{Align, Dash}; -use warpui::ui_components::components::UiComponent; -use warpui::FocusContext; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::{Align, Dash}; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::FocusContext; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ Border, ChildAnchor, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, @@ -475,7 +475,7 @@ impl BlockFilterEditor { }; let icon = Container::new( ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().active_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(size) @@ -641,7 +641,7 @@ impl View for BlockFilterEditor { |state| { let context_line_icon = ConstrainedBox::new( Icon::DistributeSpacingVertical - .to_warpui_icon( + .to_galaxyui_icon( blended_colors::text_main( appearance.theme(), appearance.theme().background(), diff --git a/app/src/terminal/block_list_element.rs b/app/src/terminal/block_list_element.rs index ca4e779f..d73798a3 100644 --- a/app/src/terminal/block_list_element.rs +++ b/app/src/terminal/block_list_element.rs @@ -27,12 +27,12 @@ use enum_iterator::Sequence; use itertools::Itertools; use parking_lot::FairMutex; use vec1::Vec1; -use warp_core::semantic_selection::SemanticSelection; -use warp_core::ui::builder::UiBuilder; -use warp_core::ui::theme::AnsiColorIdentifier; -use warp_util::user_input::UserInput; -use warpui::platform::Cursor; -use warpui::text::SelectionType; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_core::ui::builder::UiBuilder; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxy_util::user_input::UserInput; +use galaxyui::platform::Cursor; +use galaxyui::text::SelectionType; use pathfinder_color::ColorU; use session_sharing_protocol::common::{ParticipantId, Selection}; @@ -43,25 +43,25 @@ use std::ops::{Deref, Range, RangeInclusive}; use std::rc::Rc; use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::{Arc, Mutex, MutexGuard}; -use warpui::elements::new_scrollable::{NewScrollableElement, ScrollableAxis}; -use warpui::elements::{ +use galaxyui::elements::new_scrollable::{NewScrollableElement, ScrollableAxis}; +use galaxyui::elements::{ Axis, Border, ChildAnchor, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Point, Radius, ScrollData, ScrollableElement, Stack, Text, ZIndex, }; -use warpui::event::{KeyState, ModifiersState}; -use warpui::fonts::{FamilyId, Properties, Weight}; -use warpui::geometry::rect::RectF; -use warpui::geometry::vector::{vec2f, Vector2F}; -use warpui::platform::keyboard::KeyCode; -use warpui::ui_components::components::UiComponent; -use warpui::units::{IntoLines, IntoPixels, Lines, Pixels}; -use warpui::{elements::Icon, ClipBounds}; -use warpui::{ +use galaxyui::event::{KeyState, ModifiersState}; +use galaxyui::fonts::{FamilyId, Properties, Weight}; +use galaxyui::geometry::rect::RectF; +use galaxyui::geometry::vector::{vec2f, Vector2F}; +use galaxyui::platform::keyboard::KeyCode; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::units::{IntoLines, IntoPixels, Lines, Pixels}; +use galaxyui::{elements::Icon, ClipBounds}; +use galaxyui::{ elements::SavePosition, event::DispatchedEvent, AfterLayoutContext, AppContext, Element, Event, EventContext, LayoutContext, PaintContext, SizeConstraint, }; -use warpui::{EntityId, ModelHandle, SingletonEntity as _}; +use galaxyui::{EntityId, ModelHandle, SingletonEntity as _}; use super::block_list_viewport::{ClampingMode, InputMode, ScrollPosition, ViewportState}; use super::blockgrid_renderer::GridRenderParams; @@ -1140,11 +1140,11 @@ impl BlockListElement { let icon = Container::new( ConstrainedBox::new(if FeatureFlag::AgentView.is_enabled() { UIIcon::Icon::Paperclip - .to_warpui_icon(icon_color.into()) + .to_galaxyui_icon(icon_color.into()) .finish() } else if FeatureFlag::AgentMode.is_enabled() { UIIcon::Icon::Stars - .to_warpui_icon(icon_color.into()) + .to_galaxyui_icon(icon_color.into()) .finish() } else { Icon::new(AI_ASSISTANT_SVG_PATH, icon_color).finish() @@ -1207,7 +1207,7 @@ impl BlockListElement { let icon = Container::new( ConstrainedBox::new( ui_components::icons::Icon::Save - .to_warpui_icon(icon_color.into()) + .to_galaxyui_icon(icon_color.into()) .finish(), ) .with_height(16.) @@ -1282,7 +1282,7 @@ impl BlockListElement { } /// We only want to process control characters here and return `false` for everything else. - /// That way, we'll receive a `warpui::Event::TypedCharacters` event for printable characters. + /// That way, we'll receive a `galaxyui::Event::TypedCharacters` event for printable characters. /// So `TerminalAction::KeyDown` is for control characters only while /// `TerminalAction::TypedCharacters` is for characters that can go into the editor. fn key_down(&mut self, chars: &str, ctx: &mut EventContext) -> bool { @@ -1576,7 +1576,7 @@ impl BlockListElement { .is_some_and(|block| block.is_active_and_long_running()); // On mobile, request soft keyboard so users can input - if warpui::platform::is_mobile_device() && on_long_running_block { + if galaxyui::platform::is_mobile_device() && on_long_running_block { ctx.request_soft_keyboard(); } @@ -4113,7 +4113,7 @@ impl Element for BlockListElement { None => 0., }, // Otherwise, we need to measure the prompt grid(s). Grids - // aren't warpui::Elements, and hence their width isn't + // aren't galaxyui::Elements, and hence their width isn't // straightforward to measure. We'll use the column index of the // right-most non-empty cell as a proxy for width. None => { diff --git a/app/src/terminal/block_list_viewport.rs b/app/src/terminal/block_list_viewport.rs index dd87f58b..c41cd622 100644 --- a/app/src/terminal/block_list_viewport.rs +++ b/app/src/terminal/block_list_viewport.rs @@ -3,8 +3,8 @@ use std::{ops::Range, rc::Rc, sync::MutexGuard}; use pathfinder_geometry::vector::Vector2F; use serde::{Deserialize, Serialize}; use sum_tree::{Cursor, SeekBias}; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::ClippedScrollStateHandle, units::{IntoLines, IntoPixels, Lines, Pixels}, AppContext, ModelHandle, diff --git a/app/src/terminal/blockgrid_element.rs b/app/src/terminal/blockgrid_element.rs index 29d32466..7264d6e3 100644 --- a/app/src/terminal/blockgrid_element.rs +++ b/app/src/terminal/blockgrid_element.rs @@ -6,12 +6,12 @@ use crate::terminal::model::grid::Dimensions; use crate::terminal::model::ObfuscateSecrets; use crate::terminal::{color, SizeInfo}; use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warpui::elements::{ +use galaxyui::elements::{ AfterLayoutContext, AppContext, Element, EventContext, LayoutContext, PaintContext, Point, SizeConstraint, }; -use warpui::event::DispatchedEvent; -use warpui::geometry::rect::RectF; +use galaxyui::event::DispatchedEvent; +use galaxyui::geometry::rect::RectF; use super::blockgrid_renderer::GridRenderParams; diff --git a/app/src/terminal/blockgrid_renderer.rs b/app/src/terminal/blockgrid_renderer.rs index 783ee8cd..33d5e43d 100644 --- a/app/src/terminal/blockgrid_renderer.rs +++ b/app/src/terminal/blockgrid_renderer.rs @@ -11,10 +11,10 @@ use pathfinder_color::ColorU; use std::collections::HashMap; use std::ops::Neg; use std::ops::RangeInclusive; -use warpui::fonts::{FamilyId, Properties, Weight}; -use warpui::geometry::rect::RectF; -use warpui::geometry::vector::{vec2f, Vector2F}; -use warpui::{AppContext, Element, EntityId, PaintContext}; +use galaxyui::fonts::{FamilyId, Properties, Weight}; +use galaxyui::geometry::rect::RectF; +use galaxyui::geometry::vector::{vec2f, Vector2F}; +use galaxyui::{AppContext, Element, EntityId, PaintContext}; use super::model::ansi::{CursorShape, CursorStyle}; use super::model::grid::RespectDisplayedOutput; diff --git a/app/src/terminal/bootstrap.rs b/app/src/terminal/bootstrap.rs index 0c89a694..e010ff87 100644 --- a/app/src/terminal/bootstrap.rs +++ b/app/src/terminal/bootstrap.rs @@ -3,7 +3,7 @@ use std::borrow::Cow; use itertools::Itertools; use lazy_static::lazy_static; use memo_map::MemoMap; -use warpui::{AppContext, AssetProvider, SingletonEntity}; +use galaxyui::{AppContext, AssetProvider, SingletonEntity}; use crate::{ env_vars::EnvVar, diff --git a/app/src/terminal/buy_credits_banner.rs b/app/src/terminal/buy_credits_banner.rs index f7d9e4eb..15bcc5ed 100644 --- a/app/src/terminal/buy_credits_banner.rs +++ b/app/src/terminal/buy_credits_banner.rs @@ -5,20 +5,20 @@ use itertools::Itertools as _; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::Icon; -use warp_graphql::billing::AddonCreditsOption; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::Icon; +use galaxy_graphql::billing::AddonCreditsOption; +use galaxyui::elements::{ Align, Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, Hoverable, Icon as WarpUiIcon, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement as _, ParentOffsetBounds, Radius, Shrinkable, SizeConstraintCondition, SizeConstraintSwitch, Stack, Text, }; -use warpui::fonts::Weight; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent as _, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, SingletonEntity as _, View, ViewContext, ViewHandle}; +use galaxyui::fonts::Weight; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent as _, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity as _, View, ViewContext, ViewHandle}; use crate::ai::request_usage_model::{ AIRequestUsageModel, AIRequestUsageModelEvent, BuyCreditsBannerDisplayState, @@ -33,7 +33,7 @@ use crate::server::telemetry::{OutOfCreditsBannerAction, TelemetryEvent}; use crate::settings_view::create_discount_badge; use crate::view_components::Dropdown; use crate::workspaces::user_workspaces::{UserWorkspaces, UserWorkspacesEvent}; -use warp_graphql::error::BudgetExceededError; +use galaxy_graphql::error::BudgetExceededError; #[derive(Default)] struct MouseStates { @@ -384,7 +384,7 @@ impl BuyCreditsBanner { let alert_icon = Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon(theme.foreground()) + .to_galaxyui_icon(theme.foreground()) .finish(), ) .with_height(16.) @@ -505,7 +505,7 @@ impl BuyCreditsBanner { Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon(theme.foreground()) + .to_galaxyui_icon(theme.foreground()) .finish(), ) .with_height(16.) @@ -579,8 +579,8 @@ impl BuyCreditsBanner { .with_hyperlink_font_color(theme.accent().into_solid()) .register_default_click_handlers_with_action_support( |hyperlink_lens, event, _ctx| match hyperlink_lens { - warpui::elements::HyperlinkLens::Url(_url) => {} - warpui::elements::HyperlinkLens::Action(action_ref) => { + galaxyui::elements::HyperlinkLens::Url(_url) => {} + galaxyui::elements::HyperlinkLens::Action(action_ref) => { if let Some(action) = action_ref.as_any().downcast_ref::() { event.dispatch_typed_action(action.clone()); } @@ -818,7 +818,7 @@ impl View for BuyCreditsBanner { match display_state { BuyCreditsBannerDisplayState::Hidden => { - Container::new(warpui::elements::Empty::new().finish()).finish() + Container::new(galaxyui::elements::Empty::new().finish()).finish() } BuyCreditsBannerDisplayState::OutOfCredits => { self.render_out_of_credits(appearance, app) @@ -839,7 +839,7 @@ pub enum Action { ToggleAutoReload, } -impl warpui::TypedActionView for BuyCreditsBanner { +impl galaxyui::TypedActionView for BuyCreditsBanner { type Action = Action; fn handle_action(&mut self, action: &Self::Action, ctx: &mut ViewContext) { diff --git a/app/src/terminal/cli_agent.rs b/app/src/terminal/cli_agent.rs index fd909f3d..03bd1caf 100644 --- a/app/src/terminal/cli_agent.rs +++ b/app/src/terminal/cli_agent.rs @@ -13,9 +13,9 @@ use markdown_parser::parse_markdown; use pathfinder_color::ColorU; use serde::{Deserialize, Serialize}; use smol_str::SmolStr; -use warp_editor::content::{buffer::Buffer, markdown::MarkdownStyle}; +use galaxy_editor::content::{buffer::Buffer, markdown::MarkdownStyle}; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::agent::{AgentReviewCommentBatch, DiffSetHunk}; use crate::ai::blocklist::CLAUDE_ORANGE; @@ -24,8 +24,8 @@ use crate::code_review::comments::AttachedReviewCommentTarget; use crate::server::telemetry::CLIAgentType; use crate::ui_components::icons::Icon; use crate::workspaces::user_workspaces::UserWorkspaces; -use warp_completer::parsers::simple::top_level_command; -use warp_util::path::EscapeChar; +use galaxy_completer::parsers::simple::top_level_command; +use galaxy_util::path::EscapeChar; /// UID for the Uber team. /// See https://warp.metabaseapp.com/dashboard/1454?team_id=46347 diff --git a/app/src/terminal/cli_agent_sessions/listener/mod.rs b/app/src/terminal/cli_agent_sessions/listener/mod.rs index 23c6a886..74a5fa89 100644 --- a/app/src/terminal/cli_agent_sessions/listener/mod.rs +++ b/app/src/terminal/cli_agent_sessions/listener/mod.rs @@ -1,4 +1,4 @@ -use warpui::{EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{EntityId, ModelContext, ModelHandle, SingletonEntity}; use super::{CLIAgentEvent, CLIAgentSessionsModel}; use crate::terminal::cli_agent_sessions::event::parse_event; @@ -152,7 +152,7 @@ pub struct CLIAgentSessionListener { inner: Box, } -impl warpui::Entity for CLIAgentSessionListener { +impl galaxyui::Entity for CLIAgentSessionListener { type Event = (); } diff --git a/app/src/terminal/cli_agent_sessions/mod.rs b/app/src/terminal/cli_agent_sessions/mod.rs index fa9d4db9..11538587 100644 --- a/app/src/terminal/cli_agent_sessions/mod.rs +++ b/app/src/terminal/cli_agent_sessions/mod.rs @@ -5,7 +5,7 @@ pub(crate) mod plugin_manager; use std::collections::{HashMap, HashSet}; -use warpui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::blocklist::InputConfig; diff --git a/app/src/terminal/cli_agent_tests.rs b/app/src/terminal/cli_agent_tests.rs index 60b08a8c..a7d5de92 100644 --- a/app/src/terminal/cli_agent_tests.rs +++ b/app/src/terminal/cli_agent_tests.rs @@ -4,9 +4,9 @@ use std::sync::Arc; use chrono::Local; use smol_str::SmolStr; -use warp_editor::render::model::LineCount; -use warp_util::path::EscapeChar; -use warpui::App; +use galaxy_editor::render::model::LineCount; +use galaxy_util::path::EscapeChar; +use galaxyui::App; use super::{ build_diff_hunk_prompt, build_review_prompt, build_selection_line_range_prompt, diff --git a/app/src/terminal/color.rs b/app/src/terminal/color.rs index b9707c4d..042d52f5 100644 --- a/app/src/terminal/color.rs +++ b/app/src/terminal/color.rs @@ -2,7 +2,7 @@ use crate::terminal::model::ansi::color_index; use crate::themes::theme::{AnsiColors, WarpTheme}; use std::fmt; use std::ops::{Index, IndexMut}; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub const COUNT: usize = 269; diff --git a/app/src/terminal/dynamic_enum_suggestions.rs b/app/src/terminal/dynamic_enum_suggestions.rs index ffa9aead..bbb18cdf 100644 --- a/app/src/terminal/dynamic_enum_suggestions.rs +++ b/app/src/terminal/dynamic_enum_suggestions.rs @@ -1,4 +1,4 @@ -use warp_completer::completer::{CommandOutput, GeneratorContext}; +use galaxy_completer::completer::{CommandOutput, GeneratorContext}; use crate::completer::SessionContext; @@ -17,7 +17,7 @@ pub(crate) async fn run_dynamic_enum_command( /// trims each row and splits on newlines. fn parse_dynamic_command(output: &CommandOutput) -> anyhow::Result> { match output.status { - warp_completer::completer::CommandExitStatus::Success => { + galaxy_completer::completer::CommandExitStatus::Success => { let output = String::from_utf8_lossy(output.output()); let cleaned_output: Vec = output .split("\n") @@ -26,7 +26,7 @@ fn parse_dynamic_command(output: &CommandOutput) -> anyhow::Result> .collect(); Ok(cleaned_output) } - warp_completer::completer::CommandExitStatus::Failure => { + galaxy_completer::completer::CommandExitStatus::Failure => { Err(anyhow::anyhow!("Command exited with failure code")) } } diff --git a/app/src/terminal/enable_auto_reload_modal.rs b/app/src/terminal/enable_auto_reload_modal.rs index 93f6b2c8..5a4f77ba 100644 --- a/app/src/terminal/enable_auto_reload_modal.rs +++ b/app/src/terminal/enable_auto_reload_modal.rs @@ -3,16 +3,16 @@ use std::sync::Arc; use enclose::enclose; use itertools::Itertools as _; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::ui::appearance::Appearance; -use warp_graphql::billing::AddonCreditsOption; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_graphql::billing::AddonCreditsOption; +use galaxyui::elements::{ Border, ChildView, Container, CrossAxisAlignment, Empty, Flex, HighlightedHyperlink, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Text, }; -use warpui::fonts::Weight; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent as _, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, SingletonEntity as _, View, ViewContext, ViewHandle}; +use galaxyui::fonts::Weight; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent as _, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity as _, View, ViewContext, ViewHandle}; use crate::features::FeatureFlag; use crate::menu::MenuItemFields; @@ -222,7 +222,7 @@ impl EnableAutoReloadModalBody { "https://docs.warp.dev/support-and-community/plans-and-billing/add-on-credits#id-2.-enable-auto-reload", ), ]; - let explanation_text = warpui::elements::FormattedTextElement::new( + let explanation_text = galaxyui::elements::FormattedTextElement::new( FormattedText::new([FormattedTextLine::Line(explanation_fragments)]), appearance.ui_font_size(), appearance.ui_font_family(), @@ -233,10 +233,10 @@ impl EnableAutoReloadModalBody { .with_hyperlink_font_color(theme.accent().into_solid()) .register_default_click_handlers_with_action_support(|hyperlink_lens, _event, ctx| { match hyperlink_lens { - warpui::elements::HyperlinkLens::Url(url) => { + galaxyui::elements::HyperlinkLens::Url(url) => { ctx.open_url(url); } - warpui::elements::HyperlinkLens::Action(_action_ref) => {} + galaxyui::elements::HyperlinkLens::Action(_action_ref) => {} } }) .finish(); @@ -370,7 +370,7 @@ pub enum Action { Enable, } -impl warpui::TypedActionView for EnableAutoReloadModalBody { +impl galaxyui::TypedActionView for EnableAutoReloadModalBody { type Action = Action; fn handle_action(&mut self, action: &Self::Action, ctx: &mut ViewContext) { @@ -490,7 +490,7 @@ impl Entity for EnableAutoReloadModal { type Event = EnableAutoReloadModalEvent; } -impl warpui::TypedActionView for EnableAutoReloadModal { +impl galaxyui::TypedActionView for EnableAutoReloadModal { type Action = (); } diff --git a/app/src/terminal/find/model.rs b/app/src/terminal/find/model.rs index 725f7ab4..ec466f6c 100644 --- a/app/src/terminal/find/model.rs +++ b/app/src/terminal/find/model.rs @@ -14,7 +14,7 @@ use std::{collections::HashMap, sync::Arc}; use alt_screen::{run_find_on_alt_screen, AltScreenFindRun}; use parking_lot::FairMutex; use settings::Setting as _; -use warpui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity, ViewHandle}; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, SingletonEntity, ViewHandle}; use crate::{ settings::InputModeSettings, diff --git a/app/src/terminal/find/model/block_list.rs b/app/src/terminal/find/model/block_list.rs index c50ba478..4e6d67e9 100644 --- a/app/src/terminal/find/model/block_list.rs +++ b/app/src/terminal/find/model/block_list.rs @@ -2,7 +2,7 @@ use std::{collections::HashMap, iter, ops::RangeInclusive}; use itertools::Itertools; -use warpui::{units::Lines, AppContext, EntityId}; +use galaxyui::{units::Lines, AppContext, EntityId}; use crate::terminal::{ model::{ diff --git a/app/src/terminal/find/model/block_list_test.rs b/app/src/terminal/find/model/block_list_test.rs index 29f02f42..ae02f3d6 100644 --- a/app/src/terminal/find/model/block_list_test.rs +++ b/app/src/terminal/find/model/block_list_test.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use itertools::Itertools; -use warpui::App; +use galaxyui::App; use crate::terminal::{ block_filter::BlockFilterQuery, diff --git a/app/src/terminal/find/model/rich_content.rs b/app/src/terminal/find/model/rich_content.rs index 6bb728c9..176ce759 100644 --- a/app/src/terminal/find/model/rich_content.rs +++ b/app/src/terminal/find/model/rich_content.rs @@ -1,7 +1,7 @@ //! Traits and abstractions supporting the find operation across rich content blocks. use std::sync::atomic::{AtomicUsize, Ordering}; -use warpui::{AppContext, View, ViewContext, ViewHandle}; +use galaxyui::{AppContext, View, ViewContext, ViewHandle}; use super::FindOptions; diff --git a/app/src/terminal/general_settings.rs b/app/src/terminal/general_settings.rs index e84c96c7..d71e2c89 100644 --- a/app/src/terminal/general_settings.rs +++ b/app/src/terminal/general_settings.rs @@ -1,7 +1,7 @@ use std::collections::HashSet; use crate::{banner::BannerState, resource_center::Tip}; -use warp_core::settings::{ +use galaxy_core::settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; diff --git a/app/src/terminal/grid_renderer.rs b/app/src/terminal/grid_renderer.rs index 817a156b..23291768 100644 --- a/app/src/terminal/grid_renderer.rs +++ b/app/src/terminal/grid_renderer.rs @@ -21,18 +21,18 @@ use std::cmp::Ordering; use std::ops::Range; use std::{collections::HashMap, ops::RangeInclusive}; use unicode_width::UnicodeWidthChar; -use warp_core::features::FeatureFlag; -use warpui::assets::asset_cache::{AssetCache, AssetSource, AssetState}; -use warpui::color::ColorU; -use warpui::elements::{Border, CornerRadius, Fill, Radius, DEFAULT_UI_LINE_HEIGHT_RATIO}; -use warpui::fonts::{FamilyId, FontId, Properties, Style, Weight}; -use warpui::geometry::rect::RectF; -use warpui::geometry::vector::{vec2f, Vector2F}; -use warpui::image_cache::{AnimatedImageBehavior, CacheOption, FitType, Image, ImageCache}; -use warpui::platform::LineStyle; -use warpui::text_layout::{Line, StyleAndFont, TextStyle, DEFAULT_TOP_BOTTOM_RATIO}; -use warpui::units::{IntoLines as _, Lines, Pixels}; -use warpui::{AppContext, Element, EntityId, PaintContext, Scene, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::assets::asset_cache::{AssetCache, AssetSource, AssetState}; +use galaxyui::color::ColorU; +use galaxyui::elements::{Border, CornerRadius, Fill, Radius, DEFAULT_UI_LINE_HEIGHT_RATIO}; +use galaxyui::fonts::{FamilyId, FontId, Properties, Style, Weight}; +use galaxyui::geometry::rect::RectF; +use galaxyui::geometry::vector::{vec2f, Vector2F}; +use galaxyui::image_cache::{AnimatedImageBehavior, CacheOption, FitType, Image, ImageCache}; +use galaxyui::platform::LineStyle; +use galaxyui::text_layout::{Line, StyleAndFont, TextStyle, DEFAULT_TOP_BOTTOM_RATIO}; +use galaxyui::units::{IntoLines as _, Lines, Pixels}; +use galaxyui::{AppContext, Element, EntityId, PaintContext, Scene, SingletonEntity}; pub use self::cell_glyph_cache::CellGlyphCache; use self::cell_type::{CellType, IsFocused, Secret}; @@ -583,7 +583,7 @@ fn render_grid_without_ligatures<'a>( } if !foreground_image_ids.is_empty() { - ctx.scene.start_layer(warpui::ClipBounds::ActiveLayer); + ctx.scene.start_layer(galaxyui::ClipBounds::ActiveLayer); for image_placement in foreground_image_ids { if let Some((image_metadata, image_placement_data)) = image_metadata .get(&image_placement.image_id) @@ -1082,7 +1082,7 @@ fn render_grid_with_ligatures<'a>( } if !foreground_image_ids.is_empty() { - ctx.scene.start_layer(warpui::ClipBounds::ActiveLayer); + ctx.scene.start_layer(galaxyui::ClipBounds::ActiveLayer); for image_placement in foreground_image_ids { if let Some((image_metadata, image_placement_data)) = image_metadata .get(&image_placement.image_id) diff --git a/app/src/terminal/grid_renderer/cell_glyph_cache.rs b/app/src/terminal/grid_renderer/cell_glyph_cache.rs index 4f657bf6..11f9b9b7 100644 --- a/app/src/terminal/grid_renderer/cell_glyph_cache.rs +++ b/app/src/terminal/grid_renderer/cell_glyph_cache.rs @@ -1,11 +1,11 @@ //! This module defines CellGlyphCache, a struct which manages the caching of glyph values for cells //! when rendering Grids within Warp. -use warpui::elements::DEFAULT_LINE_HEIGHT_RATIO; +use galaxyui::elements::DEFAULT_LINE_HEIGHT_RATIO; -use warpui::fonts::{Cache as FontCache, FamilyId, FontId, GlyphId, Properties}; -use warpui::platform::LineStyle; -use warpui::text_layout::{StyleAndFont, DEFAULT_TOP_BOTTOM_RATIO}; -use warpui::PaintContext; +use galaxyui::fonts::{Cache as FontCache, FamilyId, FontId, GlyphId, Properties}; +use galaxyui::platform::LineStyle; +use galaxyui::text_layout::{StyleAndFont, DEFAULT_TOP_BOTTOM_RATIO}; +use galaxyui::PaintContext; use std::collections::HashMap; diff --git a/app/src/terminal/grid_renderer/cell_type.rs b/app/src/terminal/grid_renderer/cell_type.rs index b633aed0..6ee13da4 100644 --- a/app/src/terminal/grid_renderer/cell_type.rs +++ b/app/src/terminal/grid_renderer/cell_type.rs @@ -106,7 +106,7 @@ impl CellType { } else if self.is_url() || self.is_hovered_secret() { *URL_COLOR } else if matches!(obfuscate_mode, ObfuscateSecrets::Strikethrough) && is_unhovered_secret { - warpui::color::ColorU::new(128, 128, 128, 255) + galaxyui::color::ColorU::new(128, 128, 128, 255) } else if self.is_default() || self.is_marked_text_char() || is_unhovered_secret diff --git a/app/src/terminal/grid_renderer_test.rs b/app/src/terminal/grid_renderer_test.rs index 0b270cc5..8a30ac2c 100644 --- a/app/src/terminal/grid_renderer_test.rs +++ b/app/src/terminal/grid_renderer_test.rs @@ -5,8 +5,8 @@ use crate::terminal::model::selection::SelectionPoint; use crate::terminal::{grid_renderer, SizeInfo}; use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warpui::fonts::Cache as FontCache; -use warpui::units::{IntoLines, Lines, Pixels}; +use galaxyui::fonts::Cache as FontCache; +use galaxyui::units::{IntoLines, Lines, Pixels}; fn rect_from_points(min_x: f32, min_y: f32, max_x: f32, max_y: f32) -> RectF { RectF::from_points(vec2f(min_x, min_y), vec2f(max_x, max_y)) @@ -19,7 +19,7 @@ fn rect_from_points(min_x: f32, min_y: f32, max_x: f32, max_y: f32) -> RectF { ignore = "Assumes existence of Arial font, which is only guaranteed on macOS" )] fn test_calculate_grid_baseline_position() { - let font_db = warpui::platform::test::FontDB::new(); + let font_db = galaxyui::platform::test::FontDB::new(); let mut font_cache = FontCache::new(Box::new(font_db)); // Note we've restricted this unit test to Mac, so we expect Arial to exist. let arial = font_cache diff --git a/app/src/terminal/grid_size_util.rs b/app/src/terminal/grid_size_util.rs index 8b7142b0..95f7011d 100644 --- a/app/src/terminal/grid_size_util.rs +++ b/app/src/terminal/grid_size_util.rs @@ -3,10 +3,10 @@ use num_traits::Zero; use pathfinder_geometry::vector::vec2f; use pathfinder_geometry::vector::Vector2F; -use warpui::elements::DEFAULT_UI_LINE_HEIGHT_RATIO; -use warpui::fonts::Cache as FontCache; -use warpui::fonts::FamilyId; -use warpui::text_layout::ComputeBaselinePositionFn; +use galaxyui::elements::DEFAULT_UI_LINE_HEIGHT_RATIO; +use galaxyui::fonts::Cache as FontCache; +use galaxyui::fonts::FamilyId; +use galaxyui::text_layout::ComputeBaselinePositionFn; /// Computes the grid cell size given the font and size at which the grid should /// be rendered. We use a similar algorithm to Alacritty to do this, where the diff --git a/app/src/terminal/history.rs b/app/src/terminal/history.rs index f570fba9..6025ca6e 100644 --- a/app/src/terminal/history.rs +++ b/app/src/terminal/history.rs @@ -6,8 +6,8 @@ use std::{ sync::Arc, }; -use warp_core::command::ExitCode; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_core::command::ExitCode; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; use super::{ model::block::{AgentInteractionMetadata, Block, SerializedAIMetadata, SerializedBlock}, diff --git a/app/src/terminal/history/up_arrow.rs b/app/src/terminal/history/up_arrow.rs index 5db7d733..7bb5b015 100644 --- a/app/src/terminal/history/up_arrow.rs +++ b/app/src/terminal/history/up_arrow.rs @@ -1,7 +1,7 @@ use std::collections::HashSet; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, EntityId, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, EntityId, SingletonEntity}; use crate::ai::blocklist::BlocklistAIHistoryModel; use crate::ai::blocklist::InputConfig; diff --git a/app/src/terminal/history_tests.rs b/app/src/terminal/history_tests.rs index e65b694f..e1e4e3b7 100644 --- a/app/src/terminal/history_tests.rs +++ b/app/src/terminal/history_tests.rs @@ -18,8 +18,8 @@ use futures::future::join_all; use futures::Future; use futures_lite::StreamExt; use itertools::Itertools; -use warp_core::command::ExitCode; -use warpui::{App, ModelHandle}; +use galaxy_core::command::ExitCode; +use galaxyui::{App, ModelHandle}; use std::path::PathBuf; use std::pin::pin; diff --git a/app/src/terminal/input.rs b/app/src/terminal/input.rs index 5e5d1af8..4785cf9c 100644 --- a/app/src/terminal/input.rs +++ b/app/src/terminal/input.rs @@ -249,9 +249,9 @@ use std::{ use string_offset::CharOffset; use vec1::Vec1; use vim::vim::{VimHandler, VimMode}; -use warp_completer::util::parse_current_commands_and_tokens; +use galaxy_completer::util::parse_current_commands_and_tokens; -use warp_completer::{ +use galaxy_completer::{ completer::{ self, CompleterOptions, CompletionContext, CompletionsFallbackStrategy, Description, Match, MatchStrategy, MatchType, PathSeparators, SuggestionResults, @@ -260,14 +260,14 @@ use warp_completer::{ parsers::{simple::command_at_cursor_position, LiteCommand}, signatures::CommandRegistry, }; -use warp_core::user_preferences::GetUserPreferences as _; -use warp_core::{ +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxy_core::{ context_flag::ContextFlag, ui::theme::{color::internal_colors, AnsiColorIdentifier}, }; -use warp_editor::editor::NavigationKey; -use warp_util::path::ShellFamily; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxy_util::path::ShellFamily; +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, clipboard::{ClipboardContent, ImageData}, clipboard_utils::CLIPBOARD_IMAGE_MIME_TYPES, @@ -295,7 +295,7 @@ use warpui::{ AppContext, Entity, EntityId, FocusContext, ModelAsRef, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WeakViewHandle, }; -pub use warpui::{ +pub use galaxyui::{ elements::{ParentElement as _, Stack}, geometry::vector::{vec2f, Vector2F}, WindowId, @@ -1728,7 +1728,7 @@ impl DeferredRemoteOperations { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; if cfg!(feature = "integration_tests") { app.register_fixed_bindings([ @@ -8984,7 +8984,7 @@ impl Input { // the completions finish quickly, since that causes a jittery UX. let _ = ctx.spawn( async move { - warpui::r#async::Timer::after(Duration::from_millis(750)).await; + galaxyui::r#async::Timer::after(Duration::from_millis(750)).await; old_buffer_text_original }, move |input, old_buffer_text_original, ctx| { @@ -9603,7 +9603,7 @@ impl Input { .map(|session| session.is_wsl()) .unwrap_or(false); - let relative_path = warp_util::path::to_relative_path( + let relative_path = galaxy_util::path::to_relative_path( is_wsl, &absolute_path, Path::new(pwd), @@ -9680,7 +9680,7 @@ impl Input { None => image_filepaths.clone(), }; let paths_str = - warpui::clipboard_utils::escaped_paths_str(&transformed, shell_family); + galaxyui::clipboard_utils::escaped_paths_str(&transformed, shell_family); self.editor.update(ctx, |editor, ctx| { editor.user_insert(&paths_str, ctx); @@ -9726,7 +9726,7 @@ impl Input { // Check if we should insert clipboard text in advance let mut already_inserted_text = false; - if warpui::clipboard::should_insert_text_on_paste(&content) { + if galaxyui::clipboard::should_insert_text_on_paste(&content) { self.insert_clipboard_text_content(ctx, content.clone()); already_inserted_text = true; } @@ -9738,7 +9738,7 @@ impl Input { self.handle_pasted_image_data(content.clone(), ctx) == 0 } else if content.num_paths() > 0 { // Else, we check the pasted file paths for any images. - let image_filepaths = warpui::clipboard_utils::get_image_filepaths_from_paths( + let image_filepaths = galaxyui::clipboard_utils::get_image_filepaths_from_paths( content.paths.as_deref().unwrap_or(&[]), ); let num_images_expected = image_filepaths.len(); @@ -13623,7 +13623,7 @@ impl Input { ..Default::default() }, ) - .with_icon(icon.to_warpui_icon( + .with_icon(icon.to_galaxyui_icon( blended_colors::text_main(appearance.theme(), appearance.theme().background()).into(), )) .with_close_button(close_button) @@ -14108,7 +14108,7 @@ impl View for Input { } } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut ctx = Self::default_keymap_context(); let ai_settings = AISettings::as_ref(app); diff --git a/app/src/terminal/input/agent.rs b/app/src/terminal/input/agent.rs index f8f64238..64373155 100644 --- a/app/src/terminal/input/agent.rs +++ b/app/src/terminal/input/agent.rs @@ -22,10 +22,10 @@ use crate::{ terminal::{settings::TerminalSettings, view::TerminalAction}, BlocklistAIHistoryModel, }; -use warp_core::settings::Setting; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::Expanded; -use warpui::{ +use galaxy_core::settings::Setting; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::Expanded; +use galaxyui::{ elements::{ Align, AnchorPair, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, DropTarget, Element, EventHandler, Flex, Hoverable, MainAxisSize, @@ -600,7 +600,7 @@ impl Input { pub mod styles { use pathfinder_color::ColorU; - use warp_core::ui::theme::WarpTheme; + use galaxy_core::ui::theme::WarpTheme; use crate::ui_components::blended_colors; diff --git a/app/src/terminal/input/buffer_model.rs b/app/src/terminal/input/buffer_model.rs index f13a2724..64b09ed6 100644 --- a/app/src/terminal/input/buffer_model.rs +++ b/app/src/terminal/input/buffer_model.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, ViewHandle}; +use galaxyui::{Entity, ModelContext, ViewHandle}; use crate::editor::{self, EditorView, Point}; diff --git a/app/src/terminal/input/classic.rs b/app/src/terminal/input/classic.rs index 537bb56f..5679f198 100644 --- a/app/src/terminal/input/classic.rs +++ b/app/src/terminal/input/classic.rs @@ -23,7 +23,7 @@ use crate::{ }; use pathfinder_geometry::vector::vec2f; use settings::Setting; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, Clipped, Container, DropTarget, Element, Empty, Flex, Hoverable, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, diff --git a/app/src/terminal/input/cli_agent.rs b/app/src/terminal/input/cli_agent.rs index 8a68f431..bb6b5969 100644 --- a/app/src/terminal/input/cli_agent.rs +++ b/app/src/terminal/input/cli_agent.rs @@ -11,11 +11,11 @@ use crate::{ features::FeatureFlag, terminal::{cli_agent_sessions::CLIAgentSessionsModel, view::TerminalAction}, }; -use warp_core::ui::{ +use galaxy_core::ui::{ color::{contrast::MinimumAllowedContrast, ContrastingColor}, theme::color::internal_colors, }; -use warpui::{ +use galaxyui::{ elements::{ Border, Clipped, ConstrainedBox, Container, DispatchEventResult, DropTarget, Element, EventHandler, Flex, Hoverable, ParentElement, SavePosition, Stack, diff --git a/app/src/terminal/input/cloud_mode_v2_history_menu.rs b/app/src/terminal/input/cloud_mode_v2_history_menu.rs index 7ec24fe2..008ef1f0 100644 --- a/app/src/terminal/input/cloud_mode_v2_history_menu.rs +++ b/app/src/terminal/input/cloud_mode_v2_history_menu.rs @@ -1,13 +1,13 @@ use std::collections::HashSet; use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, DropShadow, Radius, Text, }; -use warpui::{ +use galaxyui::{ AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle, }; diff --git a/app/src/terminal/input/common.rs b/app/src/terminal/input/common.rs index 33a5bdf1..cd65d561 100644 --- a/app/src/terminal/input/common.rs +++ b/app/src/terminal/input/common.rs @@ -18,9 +18,9 @@ use crate::{ }; use pathfinder_geometry::vector::vec2f; use vim::vim::{VimMode, VimState}; -use warp_completer::completer::Description; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_completer::completer::Description; +use galaxy_core::features::FeatureFlag; +use galaxyui::{ elements::{ AnchorPair, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, Element, EventHandler, Flex, OffsetPositioning, @@ -54,17 +54,17 @@ pub(super) fn render_vim_status(vim_state: &VimState, appearance: &Appearance) - let theme = appearance.theme(); let ansi_colors = theme.terminal_colors().bright; let icon = match vim_state.mode { - VimMode::Normal => Icon::VimNormalMode.to_warpui_icon(ansi_colors.green.into()), + VimMode::Normal => Icon::VimNormalMode.to_galaxyui_icon(ansi_colors.green.into()), VimMode::Insert => { use crate::themes::theme::Blend; - Icon::VimInsertMode.to_warpui_icon( + Icon::VimInsertMode.to_galaxyui_icon( theme .background() .blend(&theme.foreground().with_opacity(50)), ) } - VimMode::Visual(_) => Icon::VimVisualMode.to_warpui_icon(ansi_colors.blue.into()), - VimMode::Replace => Icon::VimReplaceMode.to_warpui_icon(ansi_colors.red.into()), + VimMode::Visual(_) => Icon::VimVisualMode.to_galaxyui_icon(ansi_colors.blue.into()), + VimMode::Replace => Icon::VimReplaceMode.to_galaxyui_icon(ansi_colors.red.into()), }; Container::new( Flex::row() diff --git a/app/src/terminal/input/conversations/data_source.rs b/app/src/terminal/input/conversations/data_source.rs index 14e97a9c..97dec2fd 100644 --- a/app/src/terminal/input/conversations/data_source.rs +++ b/app/src/terminal/input/conversations/data_source.rs @@ -2,7 +2,7 @@ use itertools::Itertools; use ordered_float::OrderedFloat; -use warpui::{AppContext, Entity, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelHandle}; use crate::ai::blocklist::agent_view::AgentViewController; use crate::ai::conversation_navigation::ConversationNavigationData; diff --git a/app/src/terminal/input/conversations/mod.rs b/app/src/terminal/input/conversations/mod.rs index 4db0016a..33065913 100644 --- a/app/src/terminal/input/conversations/mod.rs +++ b/app/src/terminal/input/conversations/mod.rs @@ -7,8 +7,8 @@ mod view; pub use view::{InlineConversationMenuEvent, InlineConversationMenuView}; use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warpui::{keymap::Keystroke, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{keymap::Keystroke, SingletonEntity}; use crate::ai::active_agent_views_model::{ActiveAgentViewsModel, ConversationOrTaskId}; use crate::ai::conversation_navigation::ConversationNavigationData; diff --git a/app/src/terminal/input/conversations/search_item.rs b/app/src/terminal/input/conversations/search_item.rs index f7185190..afeb5607 100644 --- a/app/src/terminal/input/conversations/search_item.rs +++ b/app/src/terminal/input/conversations/search_item.rs @@ -2,15 +2,15 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ConstrainedBox, Container, Highlight, ParentElement, Shrinkable, Text}; -use warpui::fonts::{Properties, Style, Weight}; -use warpui::prelude::{Align, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize}; -use warpui::scene::{CornerRadius, Radius}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Highlight, ParentElement, Shrinkable, Text}; +use galaxyui::fonts::{Properties, Style, Weight}; +use galaxyui::prelude::{Align, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize}; +use galaxyui::scene::{CornerRadius, Radius}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::ai::active_agent_views_model::{ActiveAgentViewsModel, ConversationOrTaskId}; use crate::ai::agent::conversation::ConversationStatus; @@ -76,7 +76,7 @@ impl SearchItem for ConversationSearchItem { .theme() .sub_text_color(appearance.theme().background()); Container::new( - ConstrainedBox::new(Icon::History.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(Icon::History.to_galaxyui_icon(icon_color).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), diff --git a/app/src/terminal/input/conversations/view.rs b/app/src/terminal/input/conversations/view.rs index c65d2b42..af466310 100644 --- a/app/src/terminal/input/conversations/view.rs +++ b/app/src/terminal/input/conversations/view.rs @@ -3,8 +3,8 @@ use std::collections::HashSet; use std::sync::LazyLock; -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, SingletonEntity, View, ViewContext, ViewHandle}; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::ai::blocklist::agent_view::AgentViewController; @@ -200,7 +200,7 @@ impl View for InlineConversationMenuView { "InlineConversationMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/decorations.rs b/app/src/terminal/input/decorations.rs index aed24792..c73a871b 100644 --- a/app/src/terminal/input/decorations.rs +++ b/app/src/terminal/input/decorations.rs @@ -5,8 +5,8 @@ use std::{collections::HashMap, ops::Range}; use settings::Setting as _; use string_offset::{ByteOffset, CharOffset}; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, SingletonEntity, ViewContext}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, SingletonEntity, ViewContext}; use crate::{ appearance::Appearance, @@ -18,7 +18,7 @@ use crate::{ use super::Input; -pub use warp_completer::{ +pub use galaxy_completer::{ completer::SuggestionTypeName, util::parse_current_commands_and_tokens, ParsedTokenData, ParsedTokensSnapshot, }; diff --git a/app/src/terminal/input/decorations_tests.rs b/app/src/terminal/input/decorations_tests.rs index 42c4f98b..5c9d74c3 100644 --- a/app/src/terminal/input/decorations_tests.rs +++ b/app/src/terminal/input/decorations_tests.rs @@ -1,4 +1,4 @@ -use warpui::{text_layout::TextStyle, App}; +use galaxyui::{text_layout::TextStyle, App}; use crate::{ appearance::Appearance, @@ -14,7 +14,7 @@ use crate::{ }, themes::theme::AnsiColorIdentifier, }; -use warp_completer::completer::SuggestionTypeName; +use galaxy_completer::completer::SuggestionTypeName; #[test] fn test_decorations_with_multibyte_chars() { @@ -45,7 +45,7 @@ fn test_decorations_with_multibyte_chars() { .update(ctx, |sessions, _ctx| { // Wait until external commands have been loaded. let session = sessions.get(session_id).expect("session should exist"); - warpui::r#async::block_on(session.load_external_commands()); + galaxyui::r#async::block_on(session.load_external_commands()); }); session_id }); diff --git a/app/src/terminal/input/inline_history/data_source.rs b/app/src/terminal/input/inline_history/data_source.rs index 06434f8b..1bd3996c 100644 --- a/app/src/terminal/input/inline_history/data_source.rs +++ b/app/src/terminal/input/inline_history/data_source.rs @@ -24,7 +24,7 @@ use crate::terminal::model::session::SessionId; use chrono::{DateTime, Local}; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warpui::{AppContext, Entity, EntityId, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, EntityId, ModelHandle, SingletonEntity}; #[derive(Clone, Debug)] pub enum AcceptHistoryItem { diff --git a/app/src/terminal/input/inline_history/search_item.rs b/app/src/terminal/input/inline_history/search_item.rs index 5b8a09d0..75f264ec 100644 --- a/app/src/terminal/input/inline_history/search_item.rs +++ b/app/src/terminal/input/inline_history/search_item.rs @@ -9,15 +9,15 @@ use crate::util::time_format::format_approx_duration_from_now_utc; use chrono::{DateTime, Local}; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ConstrainedBox, Container, Highlight, ParentElement, Shrinkable, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::prelude::{Align, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize}; -use warpui::scene::{CornerRadius, Radius}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Highlight, ParentElement, Shrinkable, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::prelude::{Align, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize}; +use galaxyui::scene::{CornerRadius, Radius}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity}; #[derive(Debug, Clone)] pub struct InlineHistoryItem { @@ -123,7 +123,7 @@ impl SearchItem for InlineHistoryItem { HistoryItemType::Command { .. } => { let icon_color = inline_styles::icon_color(appearance); Container::new( - ConstrainedBox::new(Icon::Terminal.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(Icon::Terminal.to_galaxyui_icon(icon_color).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), @@ -138,7 +138,7 @@ impl SearchItem for InlineHistoryItem { HistoryItemType::AIPrompt { .. } => { let icon_color = inline_styles::icon_color(appearance); Container::new( - ConstrainedBox::new(Icon::Prompt.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(Icon::Prompt.to_galaxyui_icon(icon_color).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), diff --git a/app/src/terminal/input/inline_history/view.rs b/app/src/terminal/input/inline_history/view.rs index ac97ce79..8835cc91 100644 --- a/app/src/terminal/input/inline_history/view.rs +++ b/app/src/terminal/input/inline_history/view.rs @@ -2,11 +2,11 @@ use std::collections::HashSet; use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warpui::elements::ChildView; -use warpui::{AppContext, Element, Entity, EntityId, ModelHandle, View, ViewContext, ViewHandle}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::ChildView; +use galaxyui::{AppContext, Element, Entity, EntityId, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::blocklist::agent_view::{AgentViewController, AgentViewControllerEvent}; @@ -518,7 +518,7 @@ impl View for InlineHistoryMenuView { "InlineHistoryMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/inline_menu/message_bar.rs b/app/src/terminal/input/inline_menu/message_bar.rs index 07240d2a..b9075d07 100644 --- a/app/src/terminal/input/inline_menu/message_bar.rs +++ b/app/src/terminal/input/inline_menu/message_bar.rs @@ -1,8 +1,8 @@ -use warp_core::ui::appearance::Appearance; -use warpui::elements::Element; -use warpui::prelude::Container; -use warpui::scene::Border; -use warpui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::Element; +use galaxyui::prelude::Container; +use galaxyui::scene::Border; +use galaxyui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext}; use crate::ai::blocklist::agent_view::{AgentViewController, AgentViewControllerEvent}; use crate::terminal::input::inline_menu::model::InlineMenuModel; diff --git a/app/src/terminal/input/inline_menu/message_provider.rs b/app/src/terminal/input/inline_menu/message_provider.rs index 0d990e4d..40e523fc 100644 --- a/app/src/terminal/input/inline_menu/message_provider.rs +++ b/app/src/terminal/input/inline_menu/message_provider.rs @@ -1,7 +1,7 @@ use std::marker::PhantomData; use std::sync::LazyLock; -use warpui::{keymap::Keystroke, AppContext}; +use galaxyui::{keymap::Keystroke, AppContext}; use crate::editor::{SELECT_DOWN_ACTION_NAME, SELECT_UP_ACTION_NAME}; use crate::terminal::input::inline_menu::{ diff --git a/app/src/terminal/input/inline_menu/model.rs b/app/src/terminal/input/inline_menu/model.rs index 18209171..0ac1581a 100644 --- a/app/src/terminal/input/inline_menu/model.rs +++ b/app/src/terminal/input/inline_menu/model.rs @@ -1,7 +1,7 @@ //! Generic model for tracking the selected item in an inline menu. use std::collections::HashSet; -use warpui::elements::MouseStateHandle; -use warpui::{Entity, ModelContext}; +use galaxyui::elements::MouseStateHandle; +use galaxyui::{Entity, ModelContext}; use crate::search::data_source::QueryFilter; use crate::terminal::input::inline_menu::view::InlineMenuAction; diff --git a/app/src/terminal/input/inline_menu/positioning.rs b/app/src/terminal/input/inline_menu/positioning.rs index dfd75e4f..fb75ee1d 100644 --- a/app/src/terminal/input/inline_menu/positioning.rs +++ b/app/src/terminal/input/inline_menu/positioning.rs @@ -1,8 +1,8 @@ use super::styles::{HEADER_BORDER, HEADER_ROW_HEIGHT}; use settings::Setting as _; use std::collections::HashMap; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ units::{IntoPixels, Pixels}, AppContext, Entity, ModelContext, ModelHandle, SingletonEntity, WindowId, }; diff --git a/app/src/terminal/input/inline_menu/styles.rs b/app/src/terminal/input/inline_menu/styles.rs index 6757541c..2883d332 100644 --- a/app/src/terminal/input/inline_menu/styles.rs +++ b/app/src/terminal/input/inline_menu/styles.rs @@ -3,11 +3,11 @@ //! This module provides common styling functions used across all inline menu //! implementations (models, slash commands, conversations) to ensure consistent //! visual design matching the Figma specifications. -use warp_core::ui::appearance::Appearance; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warpui::color::ColorU; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxyui::color::ColorU; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::blocklist::agent_view::agent_view_bg_fill; use crate::search::result_renderer::ItemHighlightState; diff --git a/app/src/terminal/input/inline_menu/view.rs b/app/src/terminal/input/inline_menu/view.rs index 19534b8e..3d5a3c39 100644 --- a/app/src/terminal/input/inline_menu/view.rs +++ b/app/src/terminal/input/inline_menu/view.rs @@ -3,30 +3,30 @@ use std::sync::LazyLock; use itertools::Itertools; use pathfinder_geometry::vector::vec2f; -use warp_core::features::FeatureFlag; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::color::ColorU; -use warpui::elements::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::color::ColorU; +use galaxyui::elements::{ drag_resize::drag_resize_handle, ChildAnchor, Clipped, DispatchEventResult, DragResizeElement, DragResizeHandle, EventHandler, Expanded, Hoverable, MainAxisAlignment, MainAxisSize, MouseInBehavior, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, ResizeEndFn, Scrollable, ScrollableElement, ScrollbarWidth, SizeConstraintCondition, SizeConstraintSwitch, Stack, UniformList, UniformListState, }; -use warpui::fonts::Weight; -use warpui::platform::Cursor; -use warpui::prelude::{ +use galaxyui::fonts::Weight; +use galaxyui::platform::Cursor; +use galaxyui::prelude::{ Align, ChildView, ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, SavePosition, Text, }; -use warpui::scene::{Border, CornerRadius, Radius}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{elements::ScrollStateHandle, ModelHandle, View}; -use warpui::{ +use galaxyui::scene::{Border, CornerRadius, Radius}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{elements::ScrollStateHandle, ModelHandle, View}; +use galaxyui::{ Action, AppContext, Element, Entity, SingletonEntity, TypedActionView, ViewContext, ViewHandle, WeakViewHandle, }; @@ -117,8 +117,8 @@ impl QueryResultRenderer { is_selected: bool, app: &AppContext, ) -> Box { - use warpui::elements::{DispatchEventResult, EventHandler, Hoverable}; - use warpui::platform::Cursor; + use galaxyui::elements::{DispatchEventResult, EventHandler, Hoverable}; + use galaxyui::platform::Cursor; if self.search_result.is_static_separator() { return self.render_inline_with_highlight_state(ItemHighlightState::Default, true, app); @@ -175,7 +175,7 @@ impl QueryResultRenderer { is_static_separator: bool, app: &AppContext, ) -> Box { - use warpui::elements::{MainAxisSize, Shrinkable}; + use galaxyui::elements::{MainAxisSize, Shrinkable}; let appearance = Appearance::as_ref(app); let icon = self.search_result.render_icon(highlight_state, appearance); @@ -811,7 +811,7 @@ impl InlineMenuView { let drag_indicator = Hoverable::new(self.drag_indicator_mouse_state.clone(), |_| { ConstrainedBox::new( Icon::DragIndicator - .to_warpui_icon(Fill::Solid( + .to_galaxyui_icon(Fill::Solid( theme.disabled_text_color(header_bg.into()).into_solid(), )) .finish(), @@ -914,7 +914,7 @@ impl InlineMenuView { ScrollbarWidth::Auto, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .with_overlayed_scrollbar() .finish(); diff --git a/app/src/terminal/input/message_bar/attached_context.rs b/app/src/terminal/input/message_bar/attached_context.rs index bd358d95..b49af717 100644 --- a/app/src/terminal/input/message_bar/attached_context.rs +++ b/app/src/terminal/input/message_bar/attached_context.rs @@ -1,7 +1,7 @@ //! Shared message producers for displaying attached blocks/text context. -use warp_core::features::FeatureFlag; -use warpui::keymap::Keystroke; +use galaxy_core::features::FeatureFlag; +use galaxyui::keymap::Keystroke; use crate::ai::blocklist::agent_view::{AgentMessageBarMouseStates, AgentViewController}; use crate::ai::blocklist::{BlocklistAIContextModel, BlocklistAIInputModel}; diff --git a/app/src/terminal/input/message_bar/common.rs b/app/src/terminal/input/message_bar/common.rs index 9d510786..175b4e9a 100644 --- a/app/src/terminal/input/message_bar/common.rs +++ b/app/src/terminal/input/message_bar/common.rs @@ -1,16 +1,16 @@ use crate::ai::blocklist::agent_view::agent_view_bg_color; use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ Border, CacheOption, Clipped, Container, CornerRadius, Element, Hoverable, Image, ParentElement, Radius, }; -use warpui::platform::Cursor; -use warpui::prelude::{Align, ConstrainedBox, CrossAxisAlignment, Flex, Text}; -use warpui::ui_components::keyboard_shortcut::keystroke_to_keys; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::platform::Cursor; +use galaxyui::prelude::{Align, ConstrainedBox, CrossAxisAlignment, Flex, Text}; +use galaxyui::ui_components::keyboard_shortcut::keystroke_to_keys; +use galaxyui::{AppContext, SingletonEntity}; use crate::ai::blocklist::agent_view::shortcuts::render_keystroke_with_color_overrides; use crate::terminal; @@ -29,7 +29,7 @@ pub fn render_standard_message_bar( right_element: Option>, app: &AppContext, ) -> Box { - use warpui::prelude::{MainAxisAlignment, MainAxisSize}; + use galaxyui::prelude::{MainAxisAlignment, MainAxisSize}; let (left_items, right_chips): (Vec<_>, Vec<_>) = message.items.into_iter().partition(|item| { !matches!( @@ -145,7 +145,7 @@ fn render_message_bar_items(items: &[MessageItem], app: &AppContext) -> Box { let icon_color = color.unwrap_or(default_font_color); - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(icon_color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(icon_color)).finish()) .with_height(styles::font_size(app)) .with_width(styles::font_size(app)) .finish() @@ -284,7 +284,7 @@ fn render_terminal_message_items(items: &[MessageItem], app: &AppContext) -> Box let rendered_key = if key_text == "⏎" { ConstrainedBox::new( Icon::CornerDownLeft - .to_warpui_icon(Fill::Solid(keystroke_color)) + .to_galaxyui_icon(Fill::Solid(keystroke_color)) .finish(), ) .with_height(icon_size) @@ -293,7 +293,7 @@ fn render_terminal_message_items(items: &[MessageItem], app: &AppContext) -> Box } else if key_text == "⇧" { ConstrainedBox::new( Icon::ArrowBlockUp - .to_warpui_icon(Fill::Solid(keystroke_color)) + .to_galaxyui_icon(Fill::Solid(keystroke_color)) .finish(), ) .with_height(icon_size) @@ -349,7 +349,7 @@ fn render_terminal_message_items(items: &[MessageItem], app: &AppContext) -> Box } MessageItem::Icon { icon, color } => { let icon_color = color.unwrap_or(default_text_color); - ConstrainedBox::new(icon.to_warpui_icon(Fill::Solid(icon_color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(Fill::Solid(icon_color)).finish()) .with_height(icon_size) .with_width(icon_size) .finish() @@ -469,8 +469,8 @@ pub fn disableable_message_item_color_overrides( pub mod styles { use pathfinder_color::ColorU; - use warp_core::ui::appearance::Appearance; - use warpui::{AppContext, SingletonEntity}; + use galaxy_core::ui::appearance::Appearance; + use galaxyui::{AppContext, SingletonEntity}; use crate::ui_components::blended_colors; diff --git a/app/src/terminal/input/message_bar/mod.rs b/app/src/terminal/input/message_bar/mod.rs index df38d838..ed924514 100644 --- a/app/src/terminal/input/message_bar/mod.rs +++ b/app/src/terminal/input/message_bar/mod.rs @@ -6,11 +6,11 @@ use std::borrow::Cow; use std::sync::Arc; use pathfinder_color::ColorU; -use warp_core::ui::Icon; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::MouseStateHandle; -use warpui::keymap::Keystroke; -use warpui::EventContext; +use galaxy_core::ui::Icon; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::MouseStateHandle; +use galaxyui::keymap::Keystroke; +use galaxyui::EventContext; /// A trait for types that can produce a message based on some contextual arguments. /// /// The generic `Args` parameter allows each call site to define its own diff --git a/app/src/terminal/input/message_bar/mod_tests.rs b/app/src/terminal/input/message_bar/mod_tests.rs index 0fe4acb4..40051e81 100644 --- a/app/src/terminal/input/message_bar/mod_tests.rs +++ b/app/src/terminal/input/message_bar/mod_tests.rs @@ -1,6 +1,6 @@ -use warp_core::ui::Icon; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::MouseStateHandle; +use galaxy_core::ui::Icon; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::MouseStateHandle; use super::{ChipHorizontalAlignment, MessageItem}; diff --git a/app/src/terminal/input/models/data_source.rs b/app/src/terminal/input/models/data_source.rs index 6b56ef0c..aacb2650 100644 --- a/app/src/terminal/input/models/data_source.rs +++ b/app/src/terminal/input/models/data_source.rs @@ -2,20 +2,20 @@ use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; use itertools::Itertools; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use ordered_float::OrderedFloat; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ ConstrainedBox, Container, CornerRadius, FormattedTextElement, Highlight, HighlightedHyperlink, MouseStateHandle, Radius, Text, }; -use warpui::fonts::{Properties, Style, Weight}; -use warpui::platform::Cursor; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, EntityId, SingletonEntity as _}; +use galaxyui::fonts::{Properties, Style, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, EntityId, SingletonEntity as _}; use crate::ai::llms::{ is_using_api_key_for_provider, DisableReason, LLMId, LLMInfo, LLMPreferences, LLMProvider, @@ -35,8 +35,8 @@ use crate::terminal::input::inline_menu::{styles as inline_styles, DetailsRender use crate::terminal::input::message_bar::{Message, MessageItem}; use crate::workspace::WorkspaceAction; use crate::workspaces::user_workspaces::UserWorkspaces; -use warpui::keymap::Keystroke; -use warpui::platform::OperatingSystem; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::OperatingSystem; use super::model_spec_scores::{ render_model_spec_header, render_model_spec_scores, CostRow, ModelSpecScoresLayout, @@ -273,7 +273,7 @@ impl SearchItem for ModelSearchItem { let icon = self .provider_icon .unwrap_or(Icon::Oz) - .to_warpui_icon(icon_color) + .to_galaxyui_icon(icon_color) .finish(); Container::new( @@ -291,8 +291,8 @@ impl SearchItem for ModelSearchItem { _highlight_state: ItemHighlightState, app: &AppContext, ) -> Box { - use warpui::elements::{Flex, ParentElement as _}; - use warpui::prelude::CrossAxisAlignment; + use galaxyui::elements::{Flex, ParentElement as _}; + use galaxyui::prelude::CrossAxisAlignment; let appearance = crate::appearance::Appearance::as_ref(app); let theme = appearance.theme(); @@ -332,7 +332,7 @@ impl SearchItem for ModelSearchItem { if is_using_api_key_for_provider(&self.provider, app) { let key_icon = - ConstrainedBox::new(Icon::Key.to_warpui_icon(secondary_text_color).finish()) + ConstrainedBox::new(Icon::Key.to_galaxyui_icon(secondary_text_color).finish()) .with_width(font_size) .with_height(font_size) .finish(); @@ -412,7 +412,7 @@ impl SearchItem for ModelSearchItem { } fn render_details(&self, app: &AppContext) -> Option> { - use warpui::elements::{Flex, ParentElement as _}; + use galaxyui::elements::{Flex, ParentElement as _}; let appearance = crate::appearance::Appearance::as_ref(app); let theme = appearance.theme(); @@ -528,10 +528,10 @@ impl SearchItem for ModelSearchItem { .with_hyperlink_font_color(theme.accent().into_solid()) .register_default_click_handlers_with_action_support(|hyperlink_lens, event, ctx| { match hyperlink_lens { - warpui::elements::HyperlinkLens::Url(url) => { + galaxyui::elements::HyperlinkLens::Url(url) => { ctx.open_url(url); } - warpui::elements::HyperlinkLens::Action(action_ref) => { + galaxyui::elements::HyperlinkLens::Action(action_ref) => { if let Some(action) = action_ref.as_any().downcast_ref::() { event.dispatch_typed_action(action.clone()); diff --git a/app/src/terminal/input/models/model_spec_scores.rs b/app/src/terminal/input/models/model_spec_scores.rs index ba208364..11e40851 100644 --- a/app/src/terminal/input/models/model_spec_scores.rs +++ b/app/src/terminal/input/models/model_spec_scores.rs @@ -1,12 +1,12 @@ use pathfinder_color::ColorU; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ Border, ConstrainedBox, Container, CornerRadius, Expanded, Flex, MainAxisAlignment, MainAxisSize, ParentElement as _, Percentage, Radius, Rect, Stack, Text, }; -use warpui::prelude::{Align, CrossAxisAlignment}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity as _}; +use galaxyui::prelude::{Align, CrossAxisAlignment}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity as _}; use crate::ai::llms::LLMSpec; use crate::appearance::Appearance; diff --git a/app/src/terminal/input/models/view.rs b/app/src/terminal/input/models/view.rs index 0c4338ed..211b8f71 100644 --- a/app/src/terminal/input/models/view.rs +++ b/app/src/terminal/input/models/view.rs @@ -2,11 +2,11 @@ use std::collections::HashSet; use std::sync::LazyLock; use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warpui::elements::{ChildView, MainAxisSize}; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ChildView, MainAxisSize}; +use galaxyui::{ AppContext, Element, Entity, EntityId, ModelHandle, SingletonEntity as _, View, ViewContext, ViewHandle, }; @@ -488,7 +488,7 @@ impl View for InlineModelSelectorView { "InlineModelSelectorView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/plans/data_source.rs b/app/src/terminal/input/plans/data_source.rs index 06b3bcd5..f9e8eb99 100644 --- a/app/src/terminal/input/plans/data_source.rs +++ b/app/src/terminal/input/plans/data_source.rs @@ -3,7 +3,7 @@ use fuzzy_match::match_indices_case_insensitive; use itertools::Itertools; use ordered_float::OrderedFloat; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::document::ai_document_model::AIDocumentModel; diff --git a/app/src/terminal/input/plans/mod.rs b/app/src/terminal/input/plans/mod.rs index 91120ae6..4f7b12fe 100644 --- a/app/src/terminal/input/plans/mod.rs +++ b/app/src/terminal/input/plans/mod.rs @@ -6,7 +6,7 @@ mod view; pub use view::{InlinePlanMenuEvent, InlinePlanMenuView}; use ai::document::AIDocumentId; -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; use crate::ai::document::ai_document_model::AIDocumentVersion; use crate::terminal::input::inline_menu::{ diff --git a/app/src/terminal/input/plans/search_item.rs b/app/src/terminal/input/plans/search_item.rs index ded5ee12..71e6c5bc 100644 --- a/app/src/terminal/input/plans/search_item.rs +++ b/app/src/terminal/input/plans/search_item.rs @@ -3,13 +3,13 @@ use ai::document::AIDocumentId; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ConstrainedBox, Container, Highlight, ParentElement, Shrinkable, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::prelude::{Align, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Highlight, ParentElement, Shrinkable, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::prelude::{Align, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::ai::document::ai_document_model::{AIDocument, AIDocumentVersion}; use crate::appearance::Appearance; @@ -68,7 +68,7 @@ impl SearchItem for PlanSearchItem { .sub_text_color(appearance.theme().background()); let icon = Container::new( - ConstrainedBox::new(Icon::Compass.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(Icon::Compass.to_galaxyui_icon(icon_color).finish()) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish(), diff --git a/app/src/terminal/input/plans/view.rs b/app/src/terminal/input/plans/view.rs index 87c6af3b..c6636f94 100644 --- a/app/src/terminal/input/plans/view.rs +++ b/app/src/terminal/input/plans/view.rs @@ -1,8 +1,8 @@ //! Inline plan menu view for selecting among multiple AI document plans. use ai::document::AIDocumentId; -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::blocklist::agent_view::AgentViewController; @@ -141,7 +141,7 @@ impl View for InlinePlanMenuView { "InlinePlanMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/profiles/data_source.rs b/app/src/terminal/input/profiles/data_source.rs index c111dbb1..796d8825 100644 --- a/app/src/terminal/input/profiles/data_source.rs +++ b/app/src/terminal/input/profiles/data_source.rs @@ -1,6 +1,6 @@ use fuzzy_match::match_indices_case_insensitive; use ordered_float::OrderedFloat; -use warpui::{AppContext, Entity, EntityId, SingletonEntity}; +use galaxyui::{AppContext, Entity, EntityId, SingletonEntity}; use crate::ai::execution_profiles::profiles::{AIExecutionProfilesModel, ClientProfileId}; use crate::cloud_object::model::generic_string_model::StringModel; diff --git a/app/src/terminal/input/profiles/search_item.rs b/app/src/terminal/input/profiles/search_item.rs index 2ce9768a..abc4ba47 100644 --- a/app/src/terminal/input/profiles/search_item.rs +++ b/app/src/terminal/input/profiles/search_item.rs @@ -1,12 +1,12 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ConstrainedBox, Container, Flex, Highlight, ParentElement as _, Text}; -use warpui::fonts::{Properties, Style, Weight}; -use warpui::prelude::CrossAxisAlignment; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity as _}; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Flex, Highlight, ParentElement as _, Text}; +use galaxyui::fonts::{Properties, Style, Weight}; +use galaxyui::prelude::CrossAxisAlignment; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity as _}; use crate::ai::execution_profiles::profiles::ClientProfileId; use crate::appearance::Appearance; @@ -81,7 +81,7 @@ impl SearchItem for ProfileSearchItem { ProfileSearchItemKind::Profile { .. } => Icon::Psychology, ProfileSearchItemKind::ManageProfiles => Icon::Gear, } - .to_warpui_icon(inline_styles::icon_color(appearance)); + .to_galaxyui_icon(inline_styles::icon_color(appearance)); Container::new( ConstrainedBox::new(icon.finish()) diff --git a/app/src/terminal/input/profiles/view.rs b/app/src/terminal/input/profiles/view.rs index 1a04dcea..6234375c 100644 --- a/app/src/terminal/input/profiles/view.rs +++ b/app/src/terminal/input/profiles/view.rs @@ -1,5 +1,5 @@ -use warpui::elements::ChildView; -use warpui::{ +use galaxyui::elements::ChildView; +use galaxyui::{ Element, Entity, EntityId, ModelHandle, SingletonEntity as _, View, ViewContext, ViewHandle, }; @@ -210,7 +210,7 @@ impl View for InlineProfileSelectorView { "InlineProfileSelectorView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/prompts/data_source.rs b/app/src/terminal/input/prompts/data_source.rs index 0fc34d46..7e0e2397 100644 --- a/app/src/terminal/input/prompts/data_source.rs +++ b/app/src/terminal/input/prompts/data_source.rs @@ -1,10 +1,10 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::icons::Icon; -use warpui::elements::{ConstrainedBox, Container, Highlight, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, Entity, ModelContext, ModelHandle, SingletonEntity as _}; +use galaxy_core::ui::icons::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Highlight, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, Entity, ModelContext, ModelHandle, SingletonEntity as _}; use crate::appearance::Appearance; use crate::cloud_object::model::persistence::CloudModel; @@ -164,7 +164,7 @@ impl SearchItem for PromptSearchItem { let icon_color = inline_styles::icon_color(appearance); let icon_size = inline_styles::font_size(appearance); - let icon = Icon::Prompt.to_warpui_icon(icon_color).finish(); + let icon = Icon::Prompt.to_galaxyui_icon(icon_color).finish(); Container::new( ConstrainedBox::new(icon) @@ -209,7 +209,7 @@ impl SearchItem for PromptSearchItem { &self, highlight_state: ItemHighlightState, appearance: &Appearance, - ) -> Option { + ) -> Option { inline_styles::item_background(highlight_state, appearance) } diff --git a/app/src/terminal/input/prompts/view.rs b/app/src/terminal/input/prompts/view.rs index ffbe426f..0e1024fd 100644 --- a/app/src/terminal/input/prompts/view.rs +++ b/app/src/terminal/input/prompts/view.rs @@ -1,5 +1,5 @@ -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::blocklist::agent_view::AgentViewController; use crate::search::data_source::Query; @@ -119,7 +119,7 @@ impl View for InlinePromptsMenuView { "InlinePromptsMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/repos/data_source.rs b/app/src/terminal/input/repos/data_source.rs index f20c0dc5..226dff1f 100644 --- a/app/src/terminal/input/repos/data_source.rs +++ b/app/src/terminal/input/repos/data_source.rs @@ -2,7 +2,7 @@ use std::path::PathBuf; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::ai::persisted_workspace::PersistedWorkspace; use crate::search::data_source::{Query, QueryResult}; diff --git a/app/src/terminal/input/repos/mod.rs b/app/src/terminal/input/repos/mod.rs index 86b59b10..ef35650c 100644 --- a/app/src/terminal/input/repos/mod.rs +++ b/app/src/terminal/input/repos/mod.rs @@ -8,7 +8,7 @@ pub use view::{InlineReposMenuEvent, InlineReposMenuView}; use std::path::PathBuf; -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; use crate::terminal::input::inline_menu::{ default_navigation_message_items, InlineMenuAction, InlineMenuMessageArgs, InlineMenuRowAction, diff --git a/app/src/terminal/input/repos/search_item.rs b/app/src/terminal/input/repos/search_item.rs index 857d17a9..8a25f4f3 100644 --- a/app/src/terminal/input/repos/search_item.rs +++ b/app/src/terminal/input/repos/search_item.rs @@ -4,12 +4,12 @@ use std::path::{Path, PathBuf}; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::theme::{AnsiColorIdentifier, Fill}; -use warp_core::ui::Icon; -use warpui::elements::{ConstrainedBox, Container, Highlight, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::theme::{AnsiColorIdentifier, Fill}; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Highlight, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::appearance::Appearance; use crate::search::result_renderer::ItemHighlightState; @@ -62,7 +62,7 @@ impl SearchItem for RepoSearchItem { let icon_size = inline_styles::font_size(appearance); let icon_color = inline_styles::icon_color(appearance); - let icon = ConstrainedBox::new(Icon::Folder.to_warpui_icon(icon_color).finish()) + let icon = ConstrainedBox::new(Icon::Folder.to_galaxyui_icon(icon_color).finish()) .with_width(icon_size) .with_height(icon_size) .finish(); diff --git a/app/src/terminal/input/repos/view.rs b/app/src/terminal/input/repos/view.rs index 3849a205..95973c1b 100644 --- a/app/src/terminal/input/repos/view.rs +++ b/app/src/terminal/input/repos/view.rs @@ -3,8 +3,8 @@ use std::collections::HashSet; use std::path::PathBuf; -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::blocklist::agent_view::AgentViewController; use crate::search::data_source::{Query, QueryFilter}; @@ -145,7 +145,7 @@ impl View for InlineReposMenuView { "InlineReposMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/rewind/data_source.rs b/app/src/terminal/input/rewind/data_source.rs index be9e001b..2ed553a2 100644 --- a/app/src/terminal/input/rewind/data_source.rs +++ b/app/src/terminal/input/rewind/data_source.rs @@ -5,7 +5,7 @@ use std::collections::HashSet; use ai::agent::action_result::RequestFileEditsResult; use itertools::Itertools; use ordered_float::OrderedFloat; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::{AIAgentActionResultType, AIAgentExchangeId, AIAgentInput}; diff --git a/app/src/terminal/input/rewind/mod.rs b/app/src/terminal/input/rewind/mod.rs index e14f8e67..7ea47f71 100644 --- a/app/src/terminal/input/rewind/mod.rs +++ b/app/src/terminal/input/rewind/mod.rs @@ -8,7 +8,7 @@ mod view; pub use data_source::SelectRewindPoint; pub use view::{RewindMenuEvent, RewindMenuView}; -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; use crate::terminal::input::inline_menu::{ default_navigation_message_items, InlineMenuAction, InlineMenuMessageArgs, InlineMenuType, diff --git a/app/src/terminal/input/rewind/search_item.rs b/app/src/terminal/input/rewind/search_item.rs index 6332241a..80363d5b 100644 --- a/app/src/terminal/input/rewind/search_item.rs +++ b/app/src/terminal/input/rewind/search_item.rs @@ -3,16 +3,16 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::scene::{CornerRadius, Radius}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::scene::{CornerRadius, Radius}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::ai::agent::AIAgentExchangeId; use crate::appearance::Appearance; @@ -93,7 +93,7 @@ impl SearchItem for RewindSearchItem { let color = icon_color(appearance); let icon = Container::new( - ConstrainedBox::new(Icon::ClockRewind.to_warpui_icon(color).finish()) + ConstrainedBox::new(Icon::ClockRewind.to_galaxyui_icon(color).finish()) .with_width(appearance.monospace_font_size()) .with_height(appearance.monospace_font_size()) .finish(), @@ -135,7 +135,7 @@ impl SearchItem for RewindSearchItem { } // Line 2: Code changes summary - let secondary_text_color: warpui::color::ColorU = + let secondary_text_color: galaxyui::color::ColorU = theme.sub_text_color(theme.surface_1()).into(); let changes_element: Box = if self.is_current { diff --git a/app/src/terminal/input/rewind/view.rs b/app/src/terminal/input/rewind/view.rs index a7c5750c..df1261bc 100644 --- a/app/src/terminal/input/rewind/view.rs +++ b/app/src/terminal/input/rewind/view.rs @@ -1,7 +1,7 @@ //! View for the rewind menu. -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::AIAgentExchangeId; @@ -138,7 +138,7 @@ impl View for RewindMenuView { "RewindMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/skills/data_source.rs b/app/src/terminal/input/skills/data_source.rs index a401d4c4..db1c8df0 100644 --- a/app/src/terminal/input/skills/data_source.rs +++ b/app/src/terminal/input/skills/data_source.rs @@ -3,16 +3,16 @@ use std::path::PathBuf; use ai::skills::{SkillProvider, SkillReference, SkillScope}; use fuzzy_match::{match_indices_case_insensitive, FuzzyMatchResult}; use ordered_float::OrderedFloat; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Highlight, ParentElement, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::Keystroke; -use warpui::scene::{CornerRadius, Radius}; -use warpui::text_layout::ClipConfig; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::Keystroke; +use galaxyui::scene::{CornerRadius, Radius}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{ AppContext, Element, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity as _, }; @@ -266,11 +266,11 @@ impl SearchItem for SkillSearchItem { // Use icon_override if set (e.g. Figma skills), otherwise derive from provider. let icon = if let Some(override_icon) = self.icon_override { - override_icon.to_warpui_icon(icon_color).finish() + override_icon.to_galaxyui_icon(icon_color).finish() } else { self.provider .icon() - .to_warpui_icon(self.provider.icon_fill(icon_color)) + .to_galaxyui_icon(self.provider.icon_fill(icon_color)) .finish() }; diff --git a/app/src/terminal/input/skills/view.rs b/app/src/terminal/input/skills/view.rs index a1b7689b..f845e326 100644 --- a/app/src/terminal/input/skills/view.rs +++ b/app/src/terminal/input/skills/view.rs @@ -1,6 +1,6 @@ use ai::skills::SkillReference; -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::blocklist::agent_view::AgentViewController; use crate::search::data_source::Query; @@ -14,7 +14,7 @@ use crate::terminal::input::suggestions_mode_model::{ InputSuggestionsModeEvent, InputSuggestionsModeModel, }; use crate::terminal::model::session::active_session::ActiveSession; -use warpui::EntityId; +use galaxyui::EntityId; #[derive(Debug, Clone)] pub enum InlineSkillSelectorEvent { @@ -156,7 +156,7 @@ impl View for InlineSkillSelectorView { "InlineSkillSelectorView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/slash_command_model.rs b/app/src/terminal/input/slash_command_model.rs index f70fa6eb..bd958962 100644 --- a/app/src/terminal/input/slash_command_model.rs +++ b/app/src/terminal/input/slash_command_model.rs @@ -1,7 +1,7 @@ use ai::skills::SkillReference; use input_classifier::InputType; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::blocklist::{BlocklistAIInputEvent, BlocklistAIInputModel}; use crate::ai::skills::SkillManager; diff --git a/app/src/terminal/input/slash_command_model_tests.rs b/app/src/terminal/input/slash_command_model_tests.rs index 922167fb..c26506fb 100644 --- a/app/src/terminal/input/slash_command_model_tests.rs +++ b/app/src/terminal/input/slash_command_model_tests.rs @@ -4,7 +4,7 @@ use crate::search::slash_command_menu::static_commands::commands; use crate::settings::AISettings; use crate::terminal::input::tests::{add_window_with_bootstrapped_terminal, initialize_app}; use settings::Setting as _; -use warpui::{App, SingletonEntity as _}; +use galaxyui::{App, SingletonEntity as _}; #[test] fn test_parse_slash_command_handles_argument_rules() { diff --git a/app/src/terminal/input/slash_commands/data_source/mod.rs b/app/src/terminal/input/slash_commands/data_source/mod.rs index c712bfab..29d42fd1 100644 --- a/app/src/terminal/input/slash_commands/data_source/mod.rs +++ b/app/src/terminal/input/slash_commands/data_source/mod.rs @@ -3,7 +3,7 @@ mod zero_state; use ai::skills::SkillProvider; pub(crate) use saved_prompts::*; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; pub use zero_state::*; use std::collections::HashMap; @@ -11,9 +11,9 @@ use std::path::PathBuf; use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::appearance::Appearance; -use warpui::fonts::FamilyId; -use warpui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::fonts::FamilyId; +use galaxyui::{AppContext, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::blocklist::BlocklistAIHistoryModel; use crate::ai::skills::{SkillDescriptor, SkillManager}; @@ -25,7 +25,7 @@ use crate::terminal::cli_agent_sessions::{ CLIAgentInputState, CLIAgentSessionsModel, CLIAgentSessionsModelEvent, }; use crate::terminal::model::session::SessionType; -use warp_core::ui::Icon as WarpIcon; +use galaxy_core::ui::Icon as WarpIcon; use super::AcceptSlashCommandOrSavedPrompt; use crate::{ @@ -279,7 +279,7 @@ impl SyncDataSource for SlashCommandDataSource { fn run_query( &self, query: &Query, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Result>, DataSourceRunErrorWrapper> { if query.text.is_empty() { return Ok(vec![]); diff --git a/app/src/terminal/input/slash_commands/data_source/saved_prompts.rs b/app/src/terminal/input/slash_commands/data_source/saved_prompts.rs index 5ea9fd1a..9cbbfabc 100644 --- a/app/src/terminal/input/slash_commands/data_source/saved_prompts.rs +++ b/app/src/terminal/input/slash_commands/data_source/saved_prompts.rs @@ -2,9 +2,9 @@ use std::sync::Arc; use futures_lite::future::yield_now; use ordered_float::OrderedFloat; -use warp_core::ui::appearance::Appearance; -use warpui::fonts::FamilyId; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::fonts::FamilyId; +use galaxyui::{AppContext, SingletonEntity}; use crate::cloud_object::model::persistence::CloudModel; use crate::cloud_object::CloudObject; diff --git a/app/src/terminal/input/slash_commands/data_source/saved_prompts_tests.rs b/app/src/terminal/input/slash_commands/data_source/saved_prompts_tests.rs index 6d4801eb..adea3641 100644 --- a/app/src/terminal/input/slash_commands/data_source/saved_prompts_tests.rs +++ b/app/src/terminal/input/slash_commands/data_source/saved_prompts_tests.rs @@ -7,7 +7,7 @@ use ordered_float::OrderedFloat; use super::{fuzzy_match_saved_prompts, SavedPromptCandidate, SavedPromptsSnapshot}; -const TEST_FONT_FAMILY: warpui::fonts::FamilyId = warpui::fonts::FamilyId(0); +const TEST_FONT_FAMILY: galaxyui::fonts::FamilyId = galaxyui::fonts::FamilyId(0); fn test_candidate(name: &str, query: &str) -> SavedPromptCandidate { SavedPromptCandidate { diff --git a/app/src/terminal/input/slash_commands/data_source/zero_state.rs b/app/src/terminal/input/slash_commands/data_source/zero_state.rs index 14243e9e..9697f7de 100644 --- a/app/src/terminal/input/slash_commands/data_source/zero_state.rs +++ b/app/src/terminal/input/slash_commands/data_source/zero_state.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warpui::{Entity, ModelHandle}; +use galaxyui::{Entity, ModelHandle}; use crate::search::data_source::{Query, QueryResult}; use crate::search::mixer::DataSourceRunErrorWrapper; @@ -31,7 +31,7 @@ impl SyncDataSource for ZeroStateDataSource { fn run_query( &self, query: &Query, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) -> Result>, DataSourceRunErrorWrapper> { if !query.text.is_empty() { return Ok(vec![]); diff --git a/app/src/terminal/input/slash_commands/mod.rs b/app/src/terminal/input/slash_commands/mod.rs index 7bf1255e..e2f8bbf1 100644 --- a/app/src/terminal/input/slash_commands/mod.rs +++ b/app/src/terminal/input/slash_commands/mod.rs @@ -6,11 +6,11 @@ pub use data_source::*; pub use view::*; use ai::skills::SkillReference; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::appearance::Appearance; -use warpui::clipboard::ClipboardContent; -use warpui::{SingletonEntity, ViewContext}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::{SingletonEntity, ViewContext}; use crate::ai::blocklist::agent_view::{ AgentViewEntryOrigin, DismissalStrategy, EphemeralMessage, ENTER_OR_EXIT_CONFIRMATION_WINDOW, @@ -451,7 +451,7 @@ impl Input { match argument { Some(args) if !args.is_empty() => { use shellexpand::tilde; - use warp_util::path::CleanPathResult; + use galaxy_util::path::CleanPathResult; let Some(session_id) = self.active_block_session_id() else { return false; diff --git a/app/src/terminal/input/slash_commands/search_item.rs b/app/src/terminal/input/slash_commands/search_item.rs index c70d12df..104a5b03 100644 --- a/app/src/terminal/input/slash_commands/search_item.rs +++ b/app/src/terminal/input/slash_commands/search_item.rs @@ -1,10 +1,10 @@ use ordered_float::OrderedFloat; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::elements::{Expanded, Highlight, Icon, ParentElement, Shrinkable}; -use warpui::fonts::{Properties, Weight}; -use warpui::prelude::{ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, Text}; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{Expanded, Highlight, Icon, ParentElement, Shrinkable}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::prelude::{ConstrainedBox, Container, CrossAxisAlignment, Empty, Flex, Text}; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::ai::blocklist::agent_view::shortcuts::render_keystroke_with_color_overrides; use crate::search::slash_command_menu::static_commands::commands::COMMAND_REGISTRY; diff --git a/app/src/terminal/input/slash_commands/view.rs b/app/src/terminal/input/slash_commands/view.rs index 6eb7ee30..742dd77b 100644 --- a/app/src/terminal/input/slash_commands/view.rs +++ b/app/src/terminal/input/slash_commands/view.rs @@ -2,9 +2,9 @@ use std::collections::HashSet; use ai::skills::SkillReference; use lazy_static::lazy_static; -use warpui::elements::ChildView; -use warpui::{AppContext, Element, ViewContext}; -use warpui::{Entity, ModelHandle, View, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{AppContext, Element, ViewContext}; +use galaxyui::{Entity, ModelHandle, View, ViewHandle}; use crate::ai::blocklist::agent_view::AgentViewController; use crate::search::data_source::{Query, QueryFilter}; @@ -268,7 +268,7 @@ impl View for InlineSlashCommandView { "InlineSlashCommandView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input/suggestions_mode_menu.rs b/app/src/terminal/input/suggestions_mode_menu.rs index 37c8d3c1..69432245 100644 --- a/app/src/terminal/input/suggestions_mode_menu.rs +++ b/app/src/terminal/input/suggestions_mode_menu.rs @@ -19,13 +19,13 @@ use crate::input_suggestions::{ LABEL_PADDING as InputSuggestionsLabelPadding, }; use crate::themes::theme::WarpTheme; -use warpui::elements::{ +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DragBarSide, DropShadow, Element, Empty, Flex, ParentElement, Radius, Resizable, Shrinkable, SizeConstraintCondition, SizeConstraintSwitch, Text, }; -use warpui::presenter::ChildView; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; enum SuggestionsResizeConfig { WidthAndHeight, diff --git a/app/src/terminal/input/suggestions_mode_model.rs b/app/src/terminal/input/suggestions_mode_model.rs index 35650558..86cd7484 100644 --- a/app/src/terminal/input/suggestions_mode_model.rs +++ b/app/src/terminal/input/suggestions_mode_model.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, ModelHandle}; +use galaxyui::{Entity, ModelContext, ModelHandle}; use crate::ai::agent::conversation::AIConversationId; use crate::terminal::input::buffer_model::InputBufferModel; diff --git a/app/src/terminal/input/terminal.rs b/app/src/terminal/input/terminal.rs index f46bee85..1aa6281c 100644 --- a/app/src/terminal/input/terminal.rs +++ b/app/src/terminal/input/terminal.rs @@ -17,8 +17,8 @@ use crate::{ settings::TerminalSettings, view::TerminalAction, }, }; -use warp_core::settings::Setting; -use warpui::{ +use galaxy_core::settings::Setting; +use galaxyui::{ elements::{ Border, Clipped, Container, DropTarget, Element, Flex, Hoverable, ParentElement, SavePosition, Stack, @@ -299,7 +299,7 @@ impl Input { pub mod styles { use pathfinder_color::ColorU; - use warp_core::ui::theme::WarpTheme; + use galaxy_core::ui::theme::WarpTheme; pub fn default_border_color(theme: &WarpTheme) -> ColorU { theme.outline().into() diff --git a/app/src/terminal/input/terminal_message_bar.rs b/app/src/terminal/input/terminal_message_bar.rs index c812e7d9..ad63b0f6 100644 --- a/app/src/terminal/input/terminal_message_bar.rs +++ b/app/src/terminal/input/terminal_message_bar.rs @@ -2,10 +2,10 @@ use std::sync::Arc; use parking_lot::FairMutex; use pathfinder_color::ColorU; -use warp_core::ui::theme::WarpTheme; -use warpui::elements::{Container, Element}; -use warpui::keymap::Keystroke; -use warpui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext}; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::elements::{Container, Element}; +use galaxyui::keymap::Keystroke; +use galaxyui::{AppContext, Entity, ModelHandle, SingletonEntity, View, ViewContext}; use super::buffer_model::InputBufferModel; use super::message_bar::{ diff --git a/app/src/terminal/input/universal.rs b/app/src/terminal/input/universal.rs index 8ebaa9ee..2b875e9d 100644 --- a/app/src/terminal/input/universal.rs +++ b/app/src/terminal/input/universal.rs @@ -13,7 +13,7 @@ use crate::{ themes::theme::color::internal_colors, }; use settings::Setting; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildView, Container, CornerRadius, DropTarget, Element, Flex, Hoverable, ParentElement, Radius, SavePosition, Stack, diff --git a/app/src/terminal/input/user_query/data_source.rs b/app/src/terminal/input/user_query/data_source.rs index 34288b03..49b0d0ba 100644 --- a/app/src/terminal/input/user_query/data_source.rs +++ b/app/src/terminal/input/user_query/data_source.rs @@ -2,7 +2,7 @@ use itertools::Itertools; use ordered_float::OrderedFloat; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::AIAgentExchangeId; diff --git a/app/src/terminal/input/user_query/mod.rs b/app/src/terminal/input/user_query/mod.rs index 2ed72b5f..d3da2691 100644 --- a/app/src/terminal/input/user_query/mod.rs +++ b/app/src/terminal/input/user_query/mod.rs @@ -8,8 +8,8 @@ mod view; pub use data_source::SelectUserQuery; pub use view::{UserQueryMenuEvent, UserQueryMenuView}; -use warpui::keymap::Keystroke; -use warpui::platform::OperatingSystem; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::OperatingSystem; use crate::terminal::input::inline_menu::{ default_navigation_message_items, InlineMenuAction, InlineMenuMessageArgs, InlineMenuRowAction, diff --git a/app/src/terminal/input/user_query/search_item.rs b/app/src/terminal/input/user_query/search_item.rs index e1916298..ce43d00f 100644 --- a/app/src/terminal/input/user_query/search_item.rs +++ b/app/src/terminal/input/user_query/search_item.rs @@ -2,14 +2,14 @@ use fuzzy_match::FuzzyMatchResult; use ordered_float::OrderedFloat; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::Fill; -use warp_core::ui::Icon; -use warpui::elements::{ConstrainedBox, Container, Highlight, Shrinkable, Text}; -use warpui::fonts::{Properties, Weight}; -use warpui::scene::{CornerRadius, Radius}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ConstrainedBox, Container, Highlight, Shrinkable, Text}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::scene::{CornerRadius, Radius}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element, SingletonEntity}; use crate::ai::agent::AIAgentExchangeId; use crate::appearance::Appearance; @@ -65,7 +65,7 @@ impl SearchItem for UserQuerySearchItem { // Once this search item is used by multiple sources, // we'll want to set this icon based on which source is generating this item. let icon = Container::new( - ConstrainedBox::new(Icon::ArrowSplit.to_warpui_icon(color).finish()) + ConstrainedBox::new(Icon::ArrowSplit.to_galaxyui_icon(color).finish()) .with_width(appearance.monospace_font_size()) .with_height(appearance.monospace_font_size()) .finish(), diff --git a/app/src/terminal/input/user_query/view.rs b/app/src/terminal/input/user_query/view.rs index 3435bfa9..58bf60e3 100644 --- a/app/src/terminal/input/user_query/view.rs +++ b/app/src/terminal/input/user_query/view.rs @@ -1,7 +1,7 @@ //! View for the user query menu. -use warpui::elements::ChildView; -use warpui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; +use galaxyui::elements::ChildView; +use galaxyui::{Element, Entity, ModelHandle, View, ViewContext, ViewHandle}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::AIAgentExchangeId; @@ -148,7 +148,7 @@ impl View for UserQueryMenuView { "UserQueryMenuView" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.menu_view).finish() } } diff --git a/app/src/terminal/input_test.rs b/app/src/terminal/input_test.rs index 5022a093..22ba461f 100644 --- a/app/src/terminal/input_test.rs +++ b/app/src/terminal/input_test.rs @@ -60,7 +60,7 @@ use crate::terminal::model::session::{BootstrapSessionType, SessionInfo}; use crate::terminal::model::terminal_model::BlockIndex; use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; use chrono::Local; -use warpui::text::SelectionType; +use galaxyui::text::SelectionType; use crate::terminal::shell::ShellType; use crate::test_util::settings::initialize_settings_for_tests; @@ -74,22 +74,22 @@ use crate::{experiments, AgentNotificationsModel}; use fuzzy_match::FuzzyMatchResult; use session_sharing_protocol::common::Role; use smol_str::SmolStr; -use warp_completer::completer::{ +use galaxy_completer::completer::{ EngineFileType, Match, MatchStrategy, MatchedSuggestion, Priority, Suggestion, SuggestionResults, SuggestionType, }; -use warp_completer::meta::Span; +use galaxy_completer::meta::Span; use unindent::Unindent; #[cfg(feature = "voice_input")] use voice_input::VoiceInputToggledFrom; -use warpui::platform::WindowStyle; -use warpui::{App, ReadModel, UpdateView}; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, ReadModel, UpdateView}; use crate::terminal::universal_developer_input::UniversalDeveloperInputButtonBarEvent; -use warp_util::user_input::UserInput; +use galaxy_util::user_input::UserInput; use workflows::workflow::{Argument, ArgumentType, Workflow}; use crate::context_chips::prompt::Prompt; diff --git a/app/src/terminal/keys.rs b/app/src/terminal/keys.rs index dd24413f..65c978a9 100644 --- a/app/src/terminal/keys.rs +++ b/app/src/terminal/keys.rs @@ -1,6 +1,6 @@ //! Utilities for terminal keybindings. -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::{ settings_view::keybindings::{KeybindingChangedEvent, KeybindingChangedNotifier}, diff --git a/app/src/terminal/keys_settings.rs b/app/src/terminal/keys_settings.rs index 301596ad..d7e7344b 100644 --- a/app/src/terminal/keys_settings.rs +++ b/app/src/terminal/keys_settings.rs @@ -1,7 +1,7 @@ use settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, }; -use warpui::{keymap::Keystroke, AppContext, DisplayIdx, ModelContext}; +use galaxyui::{keymap::Keystroke, AppContext, DisplayIdx, ModelContext}; use crate::{ report_if_error, diff --git a/app/src/terminal/ligature_settings.rs b/app/src/terminal/ligature_settings.rs index c78c141c..db15a910 100644 --- a/app/src/terminal/ligature_settings.rs +++ b/app/src/terminal/ligature_settings.rs @@ -3,7 +3,7 @@ use crate::features::FeatureFlag; use settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, }; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; define_settings_group!(LigatureSettings, settings: [ ligature_rendering_enabled: LigatureRenderingEnabled { diff --git a/app/src/terminal/line_editor_status.rs b/app/src/terminal/line_editor_status.rs index c650ffc9..1389daca 100644 --- a/app/src/terminal/line_editor_status.rs +++ b/app/src/terminal/line_editor_status.rs @@ -2,7 +2,7 @@ use std::time::Duration; use crate::terminal::model::session::Sessions; use crate::terminal::model_events::AnsiHandlerEvent; -use warpui::{r#async::SpawnedFutureHandle, Entity, ModelContext, ModelHandle}; +use galaxyui::{r#async::SpawnedFutureHandle, Entity, ModelContext, ModelHandle}; use super::{shell::ShellType, ModelEvent, ModelEventDispatcher}; @@ -111,7 +111,7 @@ impl LineEditorStatus { // For zsh, we use this heuristic -- 10ms after EndPrompt -- to approximate when the line // editor is active. let abort_handle = ctx.spawn_abortable( - async move { warpui::r#async::Timer::after(delay).await }, + async move { galaxyui::r#async::Timer::after(delay).await }, |me, _, ctx| { me.is_line_editor_active = true; ctx.emit(LineEditorStatusEvent::Active); diff --git a/app/src/terminal/links.rs b/app/src/terminal/links.rs index e68efed9..51443bc7 100644 --- a/app/src/terminal/links.rs +++ b/app/src/terminal/links.rs @@ -1,7 +1,7 @@ //! Module containing helper functions for opening links within the terminal. -use warpui::event::ModifiersState; -use warpui::platform::OperatingSystem; +use galaxyui::event::ModifiersState; +use galaxyui::platform::OperatingSystem; /// Returns a string denoting the keybinding to directly open a link. pub fn directly_open_link_keybinding_string() -> &'static str { diff --git a/app/src/terminal/local_shell/mod.rs b/app/src/terminal/local_shell/mod.rs index cc561319..39dbb621 100644 --- a/app/src/terminal/local_shell/mod.rs +++ b/app/src/terminal/local_shell/mod.rs @@ -10,7 +10,7 @@ use crate::terminal::available_shells::AvailableShells; use crate::terminal::local_tty::shell::ShellStarterSourceOrWslName; #[cfg(feature = "local_tty")] use command::r#async::Command; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[derive(Debug)] pub enum LocalShellState { diff --git a/app/src/terminal/local_tty/docker_sandbox.rs b/app/src/terminal/local_tty/docker_sandbox.rs index 07b032e9..6bfbe960 100644 --- a/app/src/terminal/local_tty/docker_sandbox.rs +++ b/app/src/terminal/local_tty/docker_sandbox.rs @@ -15,7 +15,7 @@ use futures::FutureExt as _; use serde::{Deserialize, Serialize}; use std::ffi::OsStr; use std::path::{Path, PathBuf}; -use warpui::{AppContext, SingletonEntity as _}; +use galaxyui::{AppContext, SingletonEntity as _}; use super::shell::DirectShellStarter; use crate::{ @@ -46,7 +46,7 @@ const DOCKER_SANDBOX_NAME_PREFIX: &str = "warp-sandbox"; /// /// Layout: `/docker-sandbox/{init,workspace}//`. fn docker_sandbox_host_root() -> PathBuf { - warp_core::paths::cache_dir().join("docker-sandbox") + galaxy_core::paths::cache_dir().join("docker-sandbox") } /// Resolves the absolute path to the `sbx` CLI binary using the Warp diff --git a/app/src/terminal/local_tty/event_loop.rs b/app/src/terminal/local_tty/event_loop.rs index 506f8fac..65576587 100644 --- a/app/src/terminal/local_tty/event_loop.rs +++ b/app/src/terminal/local_tty/event_loop.rs @@ -315,7 +315,7 @@ where pub fn spawn(mut self) -> JoinHandle<()> { #[cfg(test)] - let feature_flag_overrides = warp_core::features::get_overrides(); + let feature_flag_overrides = galaxy_core::features::get_overrides(); thread::Builder::new() .name("PTY reader".into()) @@ -323,7 +323,7 @@ where // Make sure any overridden feature flags are also overridden // in the PTY reader thread. #[cfg(test)] - warp_core::features::set_overrides(feature_flag_overrides); + galaxy_core::features::set_overrides(feature_flag_overrides); let mut state = State::default(); let mut buf = [0u8; READ_BUFFER_SIZE]; diff --git a/app/src/terminal/local_tty/recorder.rs b/app/src/terminal/local_tty/recorder.rs index 7d6e1d32..f3d27508 100644 --- a/app/src/terminal/local_tty/recorder.rs +++ b/app/src/terminal/local_tty/recorder.rs @@ -7,7 +7,7 @@ use futures_lite::StreamExt; use instant::{Duration, Instant}; use parking_lot::FairMutex; use std::sync::{Arc, Mutex}; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; /// We want to measure throughput as bytes / sec. const PTY_THROUGHPUT_TIME_INTERVAL: Duration = Duration::from_secs(1); diff --git a/app/src/terminal/local_tty/server/event_loop.rs b/app/src/terminal/local_tty/server/event_loop.rs index 94ef6e30..c85d36bb 100644 --- a/app/src/terminal/local_tty/server/event_loop.rs +++ b/app/src/terminal/local_tty/server/event_loop.rs @@ -4,7 +4,7 @@ use itertools::Itertools; use mio::Interest; use parking_lot::Mutex; use signal_hook_mio::v1_0::Signals; -use warp_cli::TerminalServerArgs; +use galaxy_cli::TerminalServerArgs; use crate::terminal::{ local_tty::{self, server::protocol::NonblockingSocketFd}, diff --git a/app/src/terminal/local_tty/server/mod.rs b/app/src/terminal/local_tty/server/mod.rs index a208a036..7bcdba4f 100644 --- a/app/src/terminal/local_tty/server/mod.rs +++ b/app/src/terminal/local_tty/server/mod.rs @@ -57,7 +57,7 @@ const SEND_SOCKET_FILENO: RawFd = RECV_SOCKET_FILENO + 1; /// This should be executed very shortly after process start; it is important /// to minimize the number of resources acquired that could be leaked to a child /// process through a fork/exec pair. -pub fn run_terminal_server(args: &warp_cli::TerminalServerArgs) { +pub fn run_terminal_server(args: &galaxy_cli::TerminalServerArgs) { // We initialize context-independent feature flags early, as the terminal // server process may need to reference them. User-controlled flags are overridden // soon after. @@ -179,11 +179,11 @@ impl TerminalServer { } Ok(()) }) - .arg(warp_cli::terminal_server_subcommand()) + .arg(galaxy_cli::terminal_server_subcommand()) // Tell the terminal server process what process ID it should // expect its parent to have. This allows it to terminate // itself when it detects its parent process to have changed. - .arg(warp_cli::parent_flag()) + .arg(galaxy_cli::parent_flag()) .spawn() .context("Failed to spawn terminal server process")?; diff --git a/app/src/terminal/local_tty/shell.rs b/app/src/terminal/local_tty/shell.rs index f94e09e8..17f41199 100644 --- a/app/src/terminal/local_tty/shell.rs +++ b/app/src/terminal/local_tty/shell.rs @@ -7,8 +7,8 @@ use std::{ process, }; use typed_path::UnixPathBuf; -use warp_core::channel::{Channel, ChannelState}; -use warp_util::path::{canonicalize_git_bash_path, is_msys2_path, warp_shell_path}; +use galaxy_core::channel::{Channel, ChannelState}; +use galaxy_util::path::{canonicalize_git_bash_path, is_msys2_path, warp_shell_path}; use crate::{ terminal::{ @@ -36,7 +36,7 @@ pub fn extra_path_entries() -> impl Iterator { if #[cfg(target_os = "macos")] { use itertools::Either; - if let Some(resources_path) = warp_core::paths::bundled_resources_dir() { + if let Some(resources_path) = galaxy_core::paths::bundled_resources_dir() { let bin_path = resources_path.join("bin"); Either::Left(std::iter::once(bin_path)) } else { @@ -159,7 +159,9 @@ impl ShellStarter { if let Some(warp_shell_env_var) = warp_shell_path() { let (warp_shell_path, shell_type) = supported_shell_path_and_type(&warp_shell_env_var) .unwrap_or_else(|| { - panic!("Cannot spawn shell; $WARP_SHELL_PATH is invalid: {warp_shell_env_var}") + panic!( + "Cannot spawn shell; $GALAXY_SHELL_PATH is invalid: {warp_shell_env_var}" + ) }); return Some( ShellStarterSource::Environment(DirectShellStarter { @@ -326,7 +328,7 @@ pub enum ShellStarterSource { /// The user chose the path by setting a custom shell path in settings or selecting a WSL /// distribution. Override(ShellStarter), - /// The user chose the path to the shell by setting the `WARP_SHELL_PATH` environment variable. + /// The user chose the path to the shell by setting the `GALAXY_SHELL_PATH` environment variable. Environment(DirectShellStarter), /// The default shell for the user (as indicated by the user's passwd entry on UNIX). /// On Windows, this an ordered list of shells hardcoded _by Warp_. @@ -526,7 +528,7 @@ impl WslShellStarter { .output(); let home_dir = decode_wsl_path_result(command_result).filter(|s| !s.as_bytes().is_empty())?; - warp_util::path::convert_wsl_to_windows_host_path( + galaxy_util::path::convert_wsl_to_windows_host_path( &home_dir.to_typed_path(), &self.distribution, ) diff --git a/app/src/terminal/local_tty/spawner.rs b/app/src/terminal/local_tty/spawner.rs index 5a4c4e7c..29364cc1 100644 --- a/app/src/terminal/local_tty/spawner.rs +++ b/app/src/terminal/local_tty/spawner.rs @@ -1,5 +1,5 @@ use anyhow::Result; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; use crate::{ send_telemetry_from_app_ctx, diff --git a/app/src/terminal/local_tty/terminal_attributes.rs b/app/src/terminal/local_tty/terminal_attributes.rs index 3ac62474..c8f2f8b8 100644 --- a/app/src/terminal/local_tty/terminal_attributes.rs +++ b/app/src/terminal/local_tty/terminal_attributes.rs @@ -2,7 +2,7 @@ use std::{os::fd::RawFd, time::Duration}; use nix::sys::termios::{self, Termios}; use nix::Result; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; /// The default amount of time we wait before polling the terminal attributes again. const POLL_INTERVAL: Duration = Duration::from_secs(1); @@ -50,7 +50,7 @@ impl TerminalAttributesPoller { let fd = self.fd; ctx.spawn( async move { - warpui::r#async::Timer::after(POLL_INTERVAL).await; + galaxyui::r#async::Timer::after(POLL_INTERVAL).await; fetch_termial_attributes(fd) }, move |me, termios, ctx| { diff --git a/app/src/terminal/local_tty/terminal_manager.rs b/app/src/terminal/local_tty/terminal_manager.rs index e2cf335b..040d0508 100644 --- a/app/src/terminal/local_tty/terminal_manager.rs +++ b/app/src/terminal/local_tty/terminal_manager.rs @@ -50,10 +50,10 @@ use session_sharing_protocol::common::{ LongRunningCommandAgentInteractionState, SelectedConversation, UniversalDeveloperInputContext, }; use settings::Setting as _; -use warpui::r#async::executor::Background; -use warpui::{AppContext, ModelContext, ModelHandle, SingletonEntity, ViewHandle, WindowId}; +use galaxyui::r#async::executor::Background; +use galaxyui::{AppContext, ModelContext, ModelHandle, SingletonEntity, ViewHandle, WindowId}; -use warp_core::execution_mode::AppExecutionMode; +use galaxy_core::execution_mode::AppExecutionMode; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::ai::agent::conversation::AIConversation; @@ -76,7 +76,7 @@ use crate::send_telemetry_on_executor; use crate::server::telemetry::{TelemetryAgentViewEntryOrigin, TelemetryEvent}; use crate::settings::DebugSettings; use crate::settings::{PrivacySettings, SshSettings}; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; use crate::terminal::model::session::Sessions; @@ -2433,7 +2433,7 @@ pub fn get_shell_starter( // TODO(alokedesai): Further refactor this function to make it clear that it's expensive. shell_starter_or_wsl_name .and_then(|starter| { - warpui::r#async::block_on(async { starter.to_shell_starter_source().await }) + galaxyui::r#async::block_on(async { starter.to_shell_starter_source().await }) }) .map(|starter_source| { get_shell_starter_internal( diff --git a/app/src/terminal/local_tty/unix.rs b/app/src/terminal/local_tty/unix.rs index 9b1c8eb0..3036e2af 100644 --- a/app/src/terminal/local_tty/unix.rs +++ b/app/src/terminal/local_tty/unix.rs @@ -10,7 +10,7 @@ use crate::terminal::local_tty::shell::{ use crate::terminal::model::session::command_executor::shell_escape_single_quotes; use crate::terminal::shell::ShellType; use crate::ASSETS; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::report_if_error; use itertools::Itertools; @@ -44,8 +44,8 @@ use std::{ path::{Path, PathBuf}, ptr, }; -use warp_core::channel::ChannelState; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::channel::ChannelState; +use galaxyui::{AppContext, SingletonEntity}; /// Get raw fds for leader/follower ends of a new PTY. fn make_pty(size: winsize) -> Result<(RawFd, RawFd)> { @@ -277,11 +277,11 @@ fn build_host_shell_command( // plugins can do warp-specific version checks without worrying // that the version env var might be coming from a different terminal // (for ex., in the ssh case). - builder.env("WARP_CLIENT_VERSION", version); + builder.env("GALAXY_CLIENT_VERSION", version); } else { // Local builds don't have GIT_RELEASE_TAG, so app_version() is None. // Use "local" so plugins can still distinguish this from a missing value. - builder.env("WARP_CLIENT_VERSION", "local"); + builder.env("GALAXY_CLIENT_VERSION", "local"); } // Set the `SHELL` environment variable to match the path of the shell we are using. @@ -296,9 +296,9 @@ fn build_host_shell_command( // Set whether or not we should utilize the SSH wrapper in this shell. if enable_ssh_wrapper { - builder.env("WARP_USE_SSH_WRAPPER", "1"); + builder.env("GALAXY_USE_SSH_WRAPPER", "1"); } else { - builder.env("WARP_USE_SSH_WRAPPER", "0"); + builder.env("GALAXY_USE_SSH_WRAPPER", "0"); } // For integration tests, put SSH control master sockets under the actual @@ -309,32 +309,32 @@ fn build_host_shell_command( // We currently don't support bootstrapping recursive SSH sessions so we will only run the SSH // logic if this flag is set. - builder.env("WARP_IS_LOCAL_SHELL_SESSION", "1"); + builder.env("GALAXY_IS_LOCAL_SHELL_SESSION", "1"); // Only advertise the protocol version when the HOA notifications feature is enabled. // Without it, Warp can't render structured CLI agent notifications, // so the plugin should fall back to legacy notifications. if FeatureFlag::HOANotifications.is_enabled() { builder.env( - "WARP_CLI_AGENT_PROTOCOL_VERSION", + "GALAXY_CLI_AGENT_PROTOCOL_VERSION", current_protocol_version().to_string(), ); } if shell_debug_mode { - builder.env("WARP_SHELL_DEBUG_MODE", "1"); + builder.env("GALAXY_SHELL_DEBUG_MODE", "1"); } if honor_ps1 { - builder.env("WARP_HONOR_PS1", "1"); + builder.env("GALAXY_HONOR_PS1", "1"); } else { - builder.env("WARP_HONOR_PS1", "0"); + builder.env("GALAXY_HONOR_PS1", "0"); } // Pass through any additional entries to add to PATH. let path_append = extra_path_entries() .map(|p| p.to_string_lossy().into_owned()) .join(":"); - builder.env("WARP_PATH_APPEND", path_append); + builder.env("GALAXY_PATH_APPEND", path_append); if matches!(shell_starter.shell_type(), ShellType::Bash) { // Set an initial very large value for HISTFILESIZE so that it @@ -343,7 +343,7 @@ fn build_host_shell_command( builder.env("HISTFILESIZE", sentinel_value); // Set a second environment variable that we can use to know whether // the user rcfiles set HISTFILESIZE or not. - builder.env("WARP_INITIAL_HISTFILESIZE", sentinel_value); + builder.env("GALAXY_INITIAL_HISTFILESIZE", sentinel_value); } // Pass the desired initial working directory as an environment variable @@ -356,7 +356,7 @@ fn build_host_shell_command( // directory could be on a network filesystem; deferring the `cd` to // shell bootstrap avoids that. if let Some(start_dir) = start_dir { - builder.env("WARP_INITIAL_WORKING_DIR", start_dir); + builder.env("GALAXY_INITIAL_WORKING_DIR", start_dir); } // Apply any caller-provided environment overrides last, so they win. @@ -402,7 +402,7 @@ fn spawn_command_in_pty( // Detect isolation platform outside pre_exec, since detect() is not async-signal-safe. #[cfg(target_os = "linux")] - let is_isolated = warp_isolation_platform::detect().is_some(); + let is_isolated = galaxy_isolation_platform::detect().is_some(); unsafe { let fdlimit = libc::sysconf(libc::_SC_OPEN_MAX) as i32; @@ -775,39 +775,39 @@ fn build_docker_sandbox_command( builder.env_remove("DESKTOP_STARTUP_ID"); if let Some(version) = ChannelState::app_version() { builder.env("TERM_PROGRAM_VERSION", version); - builder.env("WARP_CLIENT_VERSION", version); + builder.env("GALAXY_CLIENT_VERSION", version); } else { - builder.env("WARP_CLIENT_VERSION", "local"); + builder.env("GALAXY_CLIENT_VERSION", "local"); } builder.env("SHELL", docker_starter.logical_shell_path()); if let Some(window_id) = window_id { builder.env("WINDOWID", format!("{window_id}")); } builder.env( - "WARP_USE_SSH_WRAPPER", + "GALAXY_USE_SSH_WRAPPER", if enable_ssh_wrapper { "1" } else { "0" }, ); builder.env("SSH_SOCKET_DIR", ssh_socket_dir()); - builder.env("WARP_IS_LOCAL_SHELL_SESSION", "1"); + builder.env("GALAXY_IS_LOCAL_SHELL_SESSION", "1"); if FeatureFlag::HOANotifications.is_enabled() { builder.env( - "WARP_CLI_AGENT_PROTOCOL_VERSION", + "GALAXY_CLI_AGENT_PROTOCOL_VERSION", current_protocol_version().to_string(), ); } if shell_debug_mode { - builder.env("WARP_SHELL_DEBUG_MODE", "1"); + builder.env("GALAXY_SHELL_DEBUG_MODE", "1"); } - builder.env("WARP_HONOR_PS1", if honor_ps1 { "1" } else { "0" }); + builder.env("GALAXY_HONOR_PS1", if honor_ps1 { "1" } else { "0" }); let path_append = extra_path_entries() .map(|p| p.to_string_lossy().into_owned()) .join(":"); - builder.env("WARP_PATH_APPEND", path_append); + builder.env("GALAXY_PATH_APPEND", path_append); // Sandbox shell is always bash (per the container image convention), // matching the host-shell path's behavior for bash shells. let sentinel_value = "57265949261"; builder.env("HISTFILESIZE", sentinel_value); - builder.env("WARP_INITIAL_HISTFILESIZE", sentinel_value); + builder.env("GALAXY_INITIAL_HISTFILESIZE", sentinel_value); // Intentionally do NOT set `WARP_INITIAL_WORKING_DIR` for sandboxes: // the container's init script cds into the sandbox home dir, not // the host's startup dir. diff --git a/app/src/terminal/local_tty/windows/conpty_api.rs b/app/src/terminal/local_tty/windows/conpty_api.rs index efa4b19f..3abe39d3 100644 --- a/app/src/terminal/local_tty/windows/conpty_api.rs +++ b/app/src/terminal/local_tty/windows/conpty_api.rs @@ -1,7 +1,7 @@ use std::mem::transmute; use std::path::Path; use thiserror::Error; -use warp_util::path::TargetDirError; +use galaxy_util::path::TargetDirError; use windows::core::{s, HRESULT, HSTRING, PCWSTR}; use windows::Win32::Foundation::HANDLE; use windows::Win32::System::Console::{COORD, HPCON}; diff --git a/app/src/terminal/local_tty/windows/environment.rs b/app/src/terminal/local_tty/windows/environment.rs index 893d28eb..f9dc2e54 100644 --- a/app/src/terminal/local_tty/windows/environment.rs +++ b/app/src/terminal/local_tty/windows/environment.rs @@ -4,8 +4,8 @@ use std::{collections::BTreeMap, ffi::OsString}; use crate::terminal::cli_agent_sessions::event::current_protocol_version; use crate::terminal::local_tty::shell::{extra_path_entries, ssh_socket_dir}; use itertools::Itertools; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; use windows::core::{HSTRING, PCWSTR}; use windows::Win32::System::Environment::ExpandEnvironmentStringsW; use winreg::types::FromRegValue; diff --git a/app/src/terminal/local_tty/windows/mod.rs b/app/src/terminal/local_tty/windows/mod.rs index cb36fcc6..9afd75f4 100644 --- a/app/src/terminal/local_tty/windows/mod.rs +++ b/app/src/terminal/local_tty/windows/mod.rs @@ -19,7 +19,7 @@ use std::os::windows::ffi::OsStrExt; use std::os::windows::io::FromRawHandle as _; use std::path::PathBuf; use thiserror::Error; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use windows::core::{HSTRING, PCWSTR, PWSTR}; use windows::Win32::Foundation::{HANDLE, WAIT_OBJECT_0}; use windows::Win32::System::Console::{COORD, HPCON}; diff --git a/app/src/terminal/meta_shortcuts.rs b/app/src/terminal/meta_shortcuts.rs index 45ac37d9..c000c32d 100644 --- a/app/src/terminal/meta_shortcuts.rs +++ b/app/src/terminal/meta_shortcuts.rs @@ -1,7 +1,7 @@ -use warpui::keymap::Keystroke; +use galaxyui::keymap::Keystroke; /// Whether this keystroke should dispatch an action in Warp despite the -/// [`warpui::event::Event::KeyDown::is_composing`] being true. +/// [`galaxyui::event::Event::KeyDown::is_composing`] being true. /// /// Generally, we ignore all `KeyDown` events if the `is_composing` field is true. However it's /// possible to have keybinding conflicts between terminal apps which use the meta key and MacOS @@ -14,7 +14,7 @@ use warpui::keymap::Keystroke; /// /// https://support.apple.com/guide/mac-help/enter-characters-with-accent-marks-on-mac-mh27474/mac#mchl45cdda7f /// -/// This function is intended to be used when handling [`warpui::event::Event::KeyDown`] when its +/// This function is intended to be used when handling [`galaxyui::event::Event::KeyDown`] when its /// `is_composing` is true. Returning true _does not_ mean the keystroke is a dead key necessarily. /// Interpreting it that way would result in false-positives. Rather, it means the app may dispatch /// an action for the keystroke _despite_ the fact that `is_composing` is true. diff --git a/app/src/terminal/mock_terminal_manager.rs b/app/src/terminal/mock_terminal_manager.rs index 8d41b98d..02bf8b9a 100644 --- a/app/src/terminal/mock_terminal_manager.rs +++ b/app/src/terminal/mock_terminal_manager.rs @@ -3,7 +3,7 @@ use std::sync::Arc; use parking_lot::FairMutex; use pathfinder_geometry::vector::Vector2F; -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewHandle, WindowId}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewHandle, WindowId}; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::{ @@ -133,7 +133,7 @@ impl TerminalManager for MockTerminalManager { #[cfg(test)] mod testing { - use warpui::{platform::WindowStyle, App, Element, SingletonEntity}; + use galaxyui::{platform::WindowStyle, App, Element, SingletonEntity}; use crate::{ server::server_api::ServerApiProvider, @@ -149,21 +149,21 @@ mod testing { terminal_view: ViewHandle, } - impl warpui::Entity for TerminalRootView { + impl galaxyui::Entity for TerminalRootView { type Event = (); } - impl warpui::View for TerminalRootView { + impl galaxyui::View for TerminalRootView { fn ui_name() -> &'static str { "TerminalRootView" } - fn render(&self, _app: &warpui::AppContext) -> Box { - warpui::elements::ChildView::new(&self.terminal_view).finish() + fn render(&self, _app: &galaxyui::AppContext) -> Box { + galaxyui::elements::ChildView::new(&self.terminal_view).finish() } } - impl warpui::TypedActionView for TerminalRootView { + impl galaxyui::TypedActionView for TerminalRootView { type Action = (); } diff --git a/app/src/terminal/mod.rs b/app/src/terminal/mod.rs index d43ecdbc..4d97c4b8 100644 --- a/app/src/terminal/mod.rs +++ b/app/src/terminal/mod.rs @@ -11,11 +11,11 @@ mod package_installers; pub(crate) use history::UpArrowHistoryConfig; pub use view::Event; pub use view::TerminalView; -pub use warp_terminal::shell::{self, ShellLaunchData}; -use warpui::geometry::vector::Vector2F; -use warpui::units::{IntoPixels, Lines, Pixels}; -use warpui::AppContext; -use warpui::WindowId; +pub use galaxy_terminal::shell::{self, ShellLaunchData}; +use galaxyui::geometry::vector::Vector2F; +use galaxyui::units::{IntoPixels, Lines, Pixels}; +use galaxyui::AppContext; +use galaxyui::WindowId; pub use {history::History, history::HistoryEntry, history::HistoryEvent, history::ShellHost}; mod block_list_settings; diff --git a/app/src/terminal/model/alt_screen.rs b/app/src/terminal/model/alt_screen.rs index 563cd75e..5e7c6398 100644 --- a/app/src/terminal/model/alt_screen.rs +++ b/app/src/terminal/model/alt_screen.rs @@ -32,10 +32,10 @@ use parking_lot::Mutex; use pathfinder_color::ColorU; use std::sync::Arc; use vec1::Vec1; -use warp_core::semantic_selection::SemanticSelection; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; -use warpui::text::SelectionType; -use warpui::units::Lines; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxyui::text::SelectionType; +use galaxyui::units::Lines; pub struct AltScreen { grid_handler: GridHandler, diff --git a/app/src/terminal/model/alt_screen_test.rs b/app/src/terminal/model/alt_screen_test.rs index f7375d93..0e78cbed 100644 --- a/app/src/terminal/model/alt_screen_test.rs +++ b/app/src/terminal/model/alt_screen_test.rs @@ -1,4 +1,4 @@ -use warpui::units::IntoLines as _; +use galaxyui::units::IntoLines as _; use super::*; use crate::terminal::SizeUpdateReason; diff --git a/app/src/terminal/model/ansi/dcs_hooks.rs b/app/src/terminal/model/ansi/dcs_hooks.rs index 4c80a40d..ad03b4a6 100644 --- a/app/src/terminal/model/ansi/dcs_hooks.rs +++ b/app/src/terminal/model/ansi/dcs_hooks.rs @@ -6,7 +6,7 @@ use ordered_float::OrderedFloat; use serde::{Deserialize, Deserializer, Serialize}; use std::collections::HashSet; use std::path::PathBuf; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; /// Indicates that the following JSON-encoded message is hex-encoded for Warp's lifecycle hooks. /// In DCS, it is used as the final char in the DCS start sequence. diff --git a/app/src/terminal/model/ansi/handler.rs b/app/src/terminal/model/ansi/handler.rs index 2ff26aef..ea74861c 100644 --- a/app/src/terminal/model/ansi/handler.rs +++ b/app/src/terminal/model/ansi/handler.rs @@ -1,9 +1,9 @@ use std::collections::HashMap; use std::io; -use warp_terminal::model::ansi::control_sequence_parameters::*; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; -use warpui::color::ColorU; +use galaxy_terminal::model::ansi::control_sequence_parameters::*; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxyui::color::ColorU; use super::dcs_hooks::*; use super::ProcessorInput; diff --git a/app/src/terminal/model/ansi/mod.rs b/app/src/terminal/model/ansi/mod.rs index 14f7338f..92e7fe1f 100644 --- a/app/src/terminal/model/ansi/mod.rs +++ b/app/src/terminal/model/ansi/mod.rs @@ -18,8 +18,8 @@ pub use dcs_hooks::*; pub use handler::*; use instant::Instant; use itertools::Itertools; -pub use warp_terminal::model::ansi::control_sequence_parameters::*; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +pub use galaxy_terminal::model::ansi::control_sequence_parameters::*; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; use crate::features::FeatureFlag; use crate::terminal::model::completions::{ @@ -49,7 +49,7 @@ use std::str::FromStr as _; use std::time::Duration; use std::{io, str}; use vte::{Params, Parser as VteParser, Perform as VtePerform}; -use warpui::color::ColorU; +use galaxyui::color::ColorU; use super::kitty::parse_kitty_chunk; use super::terminal_model::TmuxInstallationState; diff --git a/app/src/terminal/model/ansi/mod_test.rs b/app/src/terminal/model/ansi/mod_test.rs index eb0e60cb..387ccc65 100644 --- a/app/src/terminal/model/ansi/mod_test.rs +++ b/app/src/terminal/model/ansi/mod_test.rs @@ -1,6 +1,6 @@ use hex; -use warp_core::command::ExitCode; -use warpui::color::ColorU; +use galaxy_core::command::ExitCode; +use galaxyui::color::ColorU; use super::*; use crate::terminal::model::index::VisibleRow; diff --git a/app/src/terminal/model/block.rs b/app/src/terminal/model/block.rs index 841a0ec6..1347c206 100644 --- a/app/src/terminal/model/block.rs +++ b/app/src/terminal/model/block.rs @@ -3,7 +3,7 @@ mod serialized_block; pub use interaction_mode::*; pub use serialized_block::*; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use super::grid::grid_handler::{GridHandler, PerformResetGridChecks}; use super::grid::{Cursor, RespectDisplayedOutput}; @@ -16,7 +16,7 @@ use super::selection::ScrollDelta; use super::session::{command_executor, Sessions}; pub use super::BlockId; use super::{bootstrap::BootstrapStage, find::RegexDFAs}; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; use crate::ai::agent::conversation::AIConversationId; use crate::ai::blocklist::agent_view::{AgentViewDisplayMode, AgentViewState}; @@ -54,11 +54,11 @@ use hex; use instant::Instant; use pathfinder_color::ColorU; use pathfinder_geometry::vector::Vector2F; -use warp_core::command::ExitCode; -use warp_terminal::model::grid::Dimensions as _; -use warp_util::path::user_friendly_path; -use warpui::units::{IntoLines, Lines}; -use warpui::{r#async::executor::Background, record_trace_event}; +use galaxy_core::command::ExitCode; +use galaxy_terminal::model::grid::Dimensions as _; +use galaxy_util::path::user_friendly_path; +use galaxyui::units::{IntoLines, Lines}; +use galaxyui::{r#async::executor::Background, record_trace_event}; use enum_iterator::all; use lazy_static::lazy_static; @@ -2175,7 +2175,7 @@ impl Block { let escape_char = session.shell_family().escape_char(); // Parse the raw command string to get the top-level command. - let command = warp_completer::parsers::simple::top_level_command( + let command = galaxy_completer::parsers::simple::top_level_command( self.command_to_string(), escape_char, )?; @@ -2185,7 +2185,7 @@ impl Block { .alias_value(command.as_str()) .map(|s| s.to_owned()) // An alias can technically expand into an entire command (e.g. "gl" => "PAGER=0 git log"). - .and_then(|s| warp_completer::parsers::simple::top_level_command(s, escape_char)) + .and_then(|s| galaxy_completer::parsers::simple::top_level_command(s, escape_char)) // If alias expansion didn't work, then just return the original top-level command. .or(Some(command)) } @@ -2503,7 +2503,7 @@ impl Block { self.background_executor .spawn(async move { - warpui::r#async::Timer::after(std::time::Duration::from_millis(delay_ms)).await; + galaxyui::r#async::Timer::after(std::time::Duration::from_millis(delay_ms)).await; ready_to_render.store(true, Ordering::Relaxed); event_proxy.send_wakeup_event(); }) @@ -2824,7 +2824,7 @@ impl Block { } pub fn grid_storage_lines(&self) -> usize { - use warp_terminal::model::grid::Dimensions as _; + use galaxy_terminal::model::grid::Dimensions as _; self.all_grids_iter() .map(|grid| grid.grid_storage().total_rows()) diff --git a/app/src/terminal/model/block/interaction_mode.rs b/app/src/terminal/model/block/interaction_mode.rs index 2fe9ceb2..08241c58 100644 --- a/app/src/terminal/model/block/interaction_mode.rs +++ b/app/src/terminal/model/block/interaction_mode.rs @@ -1,5 +1,5 @@ use anyhow::anyhow; -use warp_terminal::model::{grid::Dimensions, Point}; +use galaxy_terminal::model::{grid::Dimensions, Point}; use crate::{ ai::{ diff --git a/app/src/terminal/model/block/serialized_block.rs b/app/src/terminal/model/block/serialized_block.rs index 8f6067f7..0fab5c55 100644 --- a/app/src/terminal/model/block/serialized_block.rs +++ b/app/src/terminal/model/block/serialized_block.rs @@ -15,7 +15,7 @@ use crate::util::extensions::TrimStringExt; use chrono::{DateTime, Local, TimeZone as _}; use serde::{Deserialize, Serialize}; use serde_bytes_repr::{ByteFmtDeserializer, ByteFmtSerializer}; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; use super::AgentInteractionMetadata; diff --git a/app/src/terminal/model/block_test.rs b/app/src/terminal/model/block_test.rs index b8b113a8..fe99e0e3 100644 --- a/app/src/terminal/model/block_test.rs +++ b/app/src/terminal/model/block_test.rs @@ -260,7 +260,7 @@ pub fn test_find() { #[test] pub fn test_long_running_block_bottom_padding() { - warpui::r#async::block_on(async { + galaxyui::r#async::block_on(async { let mut block = TestBlockBuilder::new().build(); block.precmd(Default::default()); @@ -279,7 +279,7 @@ pub fn test_long_running_block_bottom_padding() { // After the long running duration, the block should switch let duration = LONG_RUNNING_COMMAND_DURATION_MS + 1; - warpui::r#async::Timer::after(Duration::from_millis(duration)).await; + galaxyui::r#async::Timer::after(Duration::from_millis(duration)).await; assert!(block.is_active_and_long_running()); assert!(block.padding_bottom() == LONG_RUNNING_BOTTOM_PADDING_LINES.into_lines()); @@ -508,7 +508,7 @@ pub fn test_block_emits_block_completed_event_for_in_band_command() { events_rx.close(); let block_completed_event = - warpui::r#async::block_on(pin!(events_rx).find(|event| match event { + galaxyui::r#async::block_on(pin!(events_rx).find(|event| match event { Event::BlockCompleted(event) => matches!(event.block_type, BlockType::InBandCommand), _ => false, })); @@ -1306,7 +1306,7 @@ fn test_top_level_command_with_aliases() { #[test] fn test_mark_end_of_prompt_with_some_rows_in_flat_storage() { - use warp_terminal::model::grid::Dimensions as _; + use galaxy_terminal::model::grid::Dimensions as _; let mut block = TestBlockBuilder::new() // Set the number of visible rows to 1, so that the first row of the diff --git a/app/src/terminal/model/blockgrid.rs b/app/src/terminal/model/blockgrid.rs index fd8d191b..5142a5f7 100644 --- a/app/src/terminal/model/blockgrid.rs +++ b/app/src/terminal/model/blockgrid.rs @@ -27,7 +27,7 @@ use super::image_map::StoredImageMetadata; use super::kitty::{KittyAction, KittyResponse}; use super::secrets::RespectObfuscatedSecrets; use super::selection::ScrollDelta; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; #[derive(Clone)] pub struct BlockGrid { diff --git a/app/src/terminal/model/blocks.rs b/app/src/terminal/model/blocks.rs index a5586228..15588888 100644 --- a/app/src/terminal/model/blocks.rs +++ b/app/src/terminal/model/blocks.rs @@ -35,13 +35,13 @@ use std::ops::{AddAssign, Range, RangeInclusive}; use std::sync::Arc; use std::time::Duration; use sum_tree::{Dimension, Item, SeekBias, SumTree}; -use warp_core::features::FeatureFlag; -use warpui::color::ColorU; -use warpui::r#async::executor::Background; -use warpui::record_trace_event; +use galaxy_core::features::FeatureFlag; +use galaxyui::color::ColorU; +use galaxyui::r#async::executor::Background; +use galaxyui::record_trace_event; use std::collections::{HashMap, HashSet}; -use warpui::{ +use galaxyui::{ units::{IntoLines, IntoPixels, Lines}, AppContext, EntityId, ViewHandle, }; @@ -65,7 +65,7 @@ use crate::terminal::model::blockgrid::BlockGrid; use crate::terminal::model::grid::Dimensions; use crate::terminal::model::secrets::ObfuscateSecrets; use crate::terminal::model::terminal_model::{BlockIndex, WithinBlock}; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; use selection::BlockListSelection; pub use selection::SelectionRange; diff --git a/app/src/terminal/model/blocks/selection.rs b/app/src/terminal/model/blocks/selection.rs index ddea1e70..6085802b 100644 --- a/app/src/terminal/model/blocks/selection.rs +++ b/app/src/terminal/model/blocks/selection.rs @@ -2,9 +2,9 @@ use std::{cmp::max, fmt::Debug, mem, ops::RangeInclusive}; use sum_tree::SeekBias; use vec1::{vec1, Vec1}; -use warp_core::semantic_selection::SemanticSelection; -use warp_terminal::model::grid::CellType; -use warpui::{ +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_terminal::model::grid::CellType; +use galaxyui::{ text::{IsRect, SelectionType}, units::{IntoLines as _, Lines}, AppContext, EntityId, ViewAsRef as _, diff --git a/app/src/terminal/model/blocks/selection_tests.rs b/app/src/terminal/model/blocks/selection_tests.rs index 06a06b82..6bd3e0fe 100644 --- a/app/src/terminal/model/blocks/selection_tests.rs +++ b/app/src/terminal/model/blocks/selection_tests.rs @@ -1,5 +1,5 @@ use float_cmp::assert_approx_eq; -use warpui::App; +use galaxyui::App; use crate::{ ai::blocklist::agent_view::AgentViewState, diff --git a/app/src/terminal/model/blocks_test.rs b/app/src/terminal/model/blocks_test.rs index 731d82ad..2de0c829 100644 --- a/app/src/terminal/model/blocks_test.rs +++ b/app/src/terminal/model/blocks_test.rs @@ -1,7 +1,7 @@ use float_cmp::{approx_eq, assert_approx_eq}; -use warp_core::features::FeatureFlag; -use warpui::units::IntoLines; -use warpui::{elements::DEFAULT_UI_LINE_HEIGHT_RATIO, App}; +use galaxy_core::features::FeatureFlag; +use galaxyui::units::IntoLines; +use galaxyui::{elements::DEFAULT_UI_LINE_HEIGHT_RATIO, App}; use super::*; use crate::ai::agent::AIAgentActionId; diff --git a/app/src/terminal/model/completions.rs b/app/src/terminal/model/completions.rs index 6d6bb568..4ae52357 100644 --- a/app/src/terminal/model/completions.rs +++ b/app/src/terminal/model/completions.rs @@ -1,4 +1,4 @@ -use warp_completer::completer::{Match, MatchedSuggestion, Suggestion, SuggestionType}; +use galaxy_completer::completer::{Match, MatchedSuggestion, Suggestion, SuggestionType}; /// The completions data coming from the shell. /// diff --git a/app/src/terminal/model/early_output.rs b/app/src/terminal/model/early_output.rs index 4f02cd59..26ffed1f 100644 --- a/app/src/terminal/model/early_output.rs +++ b/app/src/terminal/model/early_output.rs @@ -13,7 +13,7 @@ use super::block::Block; use super::blocks::BlockList; use super::selection::ScrollDelta; use super::session::SessionInfo; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; #[cfg(test)] #[path = "early_output_tests.rs"] @@ -148,8 +148,8 @@ impl EarlyOutput { full: ("Matched {ch:?} as typeahead") ); - if warp_core::channel::ChannelState::channel() - == warp_core::channel::Channel::Integration + if galaxy_core::channel::ChannelState::channel() + == galaxy_core::channel::Channel::Integration { log::info!( "Sending input-matched typeahead event for {:?}", @@ -168,8 +168,8 @@ impl EarlyOutput { /// internal count is then updated to match the new typeahead length. pub fn advance_typeahead(&mut self) -> Option<(&str, CharOffset)> { if self.typeahead.is_empty() { - if warp_core::channel::ChannelState::channel() - == warp_core::channel::Channel::Integration + if galaxy_core::channel::ChannelState::channel() + == galaxy_core::channel::Channel::Integration { log::warn!("Tried to advance typeahead, but it was empty"); } @@ -316,8 +316,8 @@ impl ansi::Handler for EarlyOutputHandler<'_> { /// information, such as when the shell reports its input buffer. fn input_buffer(&mut self, data: ansi::InputBufferValue) { if data.buffer.is_empty() { - if warp_core::channel::ChannelState::channel() - == warp_core::channel::Channel::Integration + if galaxy_core::channel::ChannelState::channel() + == galaxy_core::channel::Channel::Integration { log::info!("Ignoring empty input buffer"); } @@ -338,8 +338,8 @@ impl ansi::Handler for EarlyOutputHandler<'_> { let me = self.inner(); if me.mode == TypeaheadMode::ShellReported { me.typeahead = data.buffer; - if warp_core::channel::ChannelState::channel() - == warp_core::channel::Channel::Integration + if galaxy_core::channel::ChannelState::channel() + == galaxy_core::channel::Channel::Integration { log::info!( "Sending shell-reported typeahead event for {:?}", diff --git a/app/src/terminal/model/find.rs b/app/src/terminal/model/find.rs index c4802869..36070a1c 100644 --- a/app/src/terminal/model/find.rs +++ b/app/src/terminal/model/find.rs @@ -7,7 +7,7 @@ use regex_automata::nfa::thompson; use regex_automata::util::pool::Pool; use regex_automata::util::syntax::Config; use regex_automata::{Anchored, Input}; -use warp_terminal::model::grid::CellType; +use galaxy_terminal::model::grid::CellType; use crate::terminal::model::index::Direction; use crate::terminal::model::index::Point; diff --git a/app/src/terminal/model/grid/ansi_handler.rs b/app/src/terminal/model/grid/ansi_handler.rs index 5bc05c1c..6d19327a 100644 --- a/app/src/terminal/model/grid/ansi_handler.rs +++ b/app/src/terminal/model/grid/ansi_handler.rs @@ -14,12 +14,12 @@ use bounded_vec_deque::BoundedVecDeque; use pathfinder_geometry::vector::Vector2F; use rand::Rng; use unicode_width::{UnicodeWidthChar, UnicodeWidthStr}; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; -use warp_terminal::model::ansi::CharsetIndex; -use warp_terminal::model::grid::cell; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; -use warpui::image_cache::{resize_dimensions, FitType}; +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; +use galaxy_terminal::model::ansi::CharsetIndex; +use galaxy_terminal::model::grid::cell; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxyui::image_cache::{resize_dimensions, FitType}; use crate::server::telemetry::ImageProtocol; use crate::terminal::event::Event; @@ -1133,7 +1133,7 @@ impl ansi::Handler for GridHandler { self.grid.cursor.charsets[index] = charset; } - fn set_color(&mut self, _: usize, _: warpui::color::ColorU) { + fn set_color(&mut self, _: usize, _: galaxyui::color::ColorU) { log::error!("Handler method GridHandler::set_color should never be called. This should be handled by TerminalModel."); } diff --git a/app/src/terminal/model/grid/filtering_tests.rs b/app/src/terminal/model/grid/filtering_tests.rs index 2db0bb0c..bba80f0f 100644 --- a/app/src/terminal/model/grid/filtering_tests.rs +++ b/app/src/terminal/model/grid/filtering_tests.rs @@ -1,4 +1,4 @@ -use warp_terminal::model::grid::cell::Flags; +use galaxy_terminal::model::grid::cell::Flags; use crate::{ terminal::model::{ diff --git a/app/src/terminal/model/grid/grapheme_cursor.rs b/app/src/terminal/model/grid/grapheme_cursor.rs index dc00dcf7..dda02ff1 100644 --- a/app/src/terminal/model/grid/grapheme_cursor.rs +++ b/app/src/terminal/model/grid/grapheme_cursor.rs @@ -1,6 +1,6 @@ use std::borrow::Cow; -use warp_terminal::model::grid::{ +use galaxy_terminal::model::grid::{ cell::{self, Cell}, row::Row, CellType, diff --git a/app/src/terminal/model/grid/grid_handler.rs b/app/src/terminal/model/grid/grid_handler.rs index 9ccc1acc..ea684f36 100644 --- a/app/src/terminal/model/grid/grid_handler.rs +++ b/app/src/terminal/model/grid/grid_handler.rs @@ -24,15 +24,15 @@ use itertools::Itertools; use lazy_static::lazy_static; use unicode_width::UnicodeWidthChar; use urlocator::{UrlLocation, UrlLocator}; -use warp_core::features::FeatureFlag; -use warp_core::semantic_selection::{SemanticSelection, SMART_SELECT_MATCH_WINDOW_LIMIT}; -use warp_core::{safe_assert, safe_assert_eq}; -use warp_terminal::model::grid::CellType; -use warp_terminal::model::grid::FlatStorage; -pub use warp_terminal::model::TermMode; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; -use warp_util::path::CleanPathResult; -use warpui::color::ColorU; +use galaxy_core::features::FeatureFlag; +use galaxy_core::semantic_selection::{SemanticSelection, SMART_SELECT_MATCH_WINDOW_LIMIT}; +use galaxy_core::{safe_assert, safe_assert_eq}; +use galaxy_terminal::model::grid::CellType; +use galaxy_terminal::model::grid::FlatStorage; +pub use galaxy_terminal::model::TermMode; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxy_util::path::CleanPathResult; +use galaxyui::color::ColorU; use crate::terminal::event_listener::ChannelEventListener; use crate::terminal::model::ansi::{self, Color, CursorStyle, Handler, NamedColor}; @@ -2475,7 +2475,7 @@ impl GridHandler { /// appropriately. #[cfg(test)] pub(super) fn input_at_cursor(&mut self, text: &str) { - use warp_terminal::model::VisiblePoint; + use galaxy_terminal::model::VisiblePoint; let columns = self.columns(); let mut last_row = self.grid.cursor.point.row; diff --git a/app/src/terminal/model/grid/grid_handler_test.rs b/app/src/terminal/model/grid/grid_handler_test.rs index 9a24cd90..78dc23c9 100644 --- a/app/src/terminal/model/grid/grid_handler_test.rs +++ b/app/src/terminal/model/grid/grid_handler_test.rs @@ -1,8 +1,8 @@ use std::ops::BitOrAssign; -use warp_terminal::model::char_or_str::CharOrStr; -use warp_util::path::LineAndColumnArg; -use warpui::text::words::is_default_word_boundary; +use galaxy_terminal::model::char_or_str::CharOrStr; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::text::words::is_default_word_boundary; use crate::terminal::model::secrets::{ObfuscateSecrets, SecretLevel}; use crate::terminal::model::{blockgrid::BlockGrid, secrets::IsObfuscated}; diff --git a/app/src/terminal/model/grid/grid_storage.rs b/app/src/terminal/model/grid/grid_storage.rs index de8153f5..69d5f0ea 100644 --- a/app/src/terminal/model/grid/grid_storage.rs +++ b/app/src/terminal/model/grid/grid_storage.rs @@ -6,7 +6,7 @@ use std::cmp::min; use std::ops::{Index, IndexMut, Range}; use serde::{Deserialize, Serialize}; -pub use warp_terminal::model::grid::Dimensions; +pub use galaxy_terminal::model::grid::Dimensions; use crate::features::FeatureFlag; use crate::terminal::model::ansi::{CharsetIndex, StandardCharset}; diff --git a/app/src/terminal/model/grid/image.rs b/app/src/terminal/model/grid/image.rs index be95f99e..a635b13d 100644 --- a/app/src/terminal/model/grid/image.rs +++ b/app/src/terminal/model/grid/image.rs @@ -1,7 +1,7 @@ use crate::terminal::model::image_map::ImagePlacementData; use super::{AbsolutePoint, AbsoluteRectangle, GridHandler}; -use warp_terminal::model::Point; +use galaxy_terminal::model::Point; impl GridHandler { pub fn get_image_ids_in_range( diff --git a/app/src/terminal/model/grid/indexing.rs b/app/src/terminal/model/grid/indexing.rs index 8e67d3e5..46cdf630 100644 --- a/app/src/terminal/model/grid/indexing.rs +++ b/app/src/terminal/model/grid/indexing.rs @@ -1,7 +1,7 @@ use std::ops::{Index, IndexMut, Range, RangeFrom, RangeFull, RangeTo}; -use warp_terminal::model::grid::cell::Cell; -use warp_terminal::model::grid::row::Row; +use galaxy_terminal::model::grid::cell::Cell; +use galaxy_terminal::model::grid::row::Row; use crate::terminal::model::{ grid::Dimensions as _, diff --git a/app/src/terminal/model/grid/mod.rs b/app/src/terminal/model/grid/mod.rs index 0f8bdbae..ca381411 100644 --- a/app/src/terminal/model/grid/mod.rs +++ b/app/src/terminal/model/grid/mod.rs @@ -9,7 +9,7 @@ pub(super) mod grapheme_cursor; #[cfg(test)] mod tests; -pub use warp_terminal::model::grid::row; +pub use galaxy_terminal::model::grid::row; pub use displayed_output::RespectDisplayedOutput; pub use grid_storage::*; diff --git a/app/src/terminal/model/grid/resize.rs b/app/src/terminal/model/grid/resize.rs index d79171e5..14961f47 100644 --- a/app/src/terminal/model/grid/resize.rs +++ b/app/src/terminal/model/grid/resize.rs @@ -1,5 +1,5 @@ use string_offset::ByteOffset; -use warp_terminal::model::{ +use galaxy_terminal::model::{ grid::{ cell::{self, LineLength as _}, Dimensions as _, diff --git a/app/src/terminal/model/grid/selection_cursor.rs b/app/src/terminal/model/grid/selection_cursor.rs index 79316cca..3a4188d4 100644 --- a/app/src/terminal/model/grid/selection_cursor.rs +++ b/app/src/terminal/model/grid/selection_cursor.rs @@ -1,4 +1,4 @@ -use warp_terminal::model::grid::CellType; +use galaxy_terminal::model::grid::CellType; use crate::terminal::model::index::Point; diff --git a/app/src/terminal/model/grid/tests.rs b/app/src/terminal/model/grid/tests.rs index 76a67a43..6665615b 100644 --- a/app/src/terminal/model/grid/tests.rs +++ b/app/src/terminal/model/grid/tests.rs @@ -1,7 +1,7 @@ //! Tests for the Grid. use grid_handler::GridHandler; -use warp_terminal::model::grid::cell; +use galaxy_terminal::model::grid::cell; use crate::features::FeatureFlag; use crate::terminal::model::ansi::Handler; diff --git a/app/src/terminal/model/header_grid.rs b/app/src/terminal/model/header_grid.rs index dee69bfd..b4e9a488 100644 --- a/app/src/terminal/model/header_grid.rs +++ b/app/src/terminal/model/header_grid.rs @@ -9,7 +9,7 @@ use super::{ }; use instant::Instant; use pathfinder_color::ColorU; -use warpui::units::{IntoLines as _, Lines}; +use galaxyui::units::{IntoLines as _, Lines}; use crate::terminal::event::Event; @@ -25,7 +25,7 @@ use super::{ ObfuscateSecrets, RespectObfuscatedSecrets, }; use crate::terminal::{event_listener::ChannelEventListener, SizeInfo}; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; macro_rules! delegate { ($self:ident.$method:ident( $( $arg:expr ),* )) => { diff --git a/app/src/terminal/model/index.rs b/app/src/terminal/model/index.rs index 397b891e..200ea74a 100644 --- a/app/src/terminal/model/index.rs +++ b/app/src/terminal/model/index.rs @@ -1,6 +1,6 @@ //! Indexing-related newtypes for strongly typed tty/grid/terminal APIs. -pub use warp_terminal::model::{Index, IndexRange, Point, VisiblePoint, VisibleRow}; +pub use galaxy_terminal::model::{Index, IndexRange, Point, VisiblePoint, VisibleRow}; /// The side of a cell. pub type Side = Direction; diff --git a/app/src/terminal/model/iterm_image.rs b/app/src/terminal/model/iterm_image.rs index 77e00fd1..4317842a 100644 --- a/app/src/terminal/model/iterm_image.rs +++ b/app/src/terminal/model/iterm_image.rs @@ -3,7 +3,7 @@ use std::path::Path; use base64::Engine; use pathfinder_geometry::vector::Vector2F; use rand::Rng; -use warpui::util::parse_u32; +use galaxyui::util::parse_u32; #[derive(Debug, Default, Clone)] pub struct ITermImage { diff --git a/app/src/terminal/model/kitty.rs b/app/src/terminal/model/kitty.rs index e8b84096..d4d51a24 100644 --- a/app/src/terminal/model/kitty.rs +++ b/app/src/terminal/model/kitty.rs @@ -7,8 +7,8 @@ use std::cmp::min; use std::io::Read; #[cfg(feature = "local_fs")] use std::{env, fs, str}; -use warpui::image_cache::{resize_dimensions, FitType}; -use warpui::{ +use galaxyui::image_cache::{resize_dimensions, FitType}; +use galaxyui::{ assets::asset_cache::Asset, image_cache::{CustomHeaderCreationError, CustomImageFormat, CustomImageHeader, ImageType}, util::{parse_i32, parse_u32}, diff --git a/app/src/terminal/model/mod.rs b/app/src/terminal/model/mod.rs index dc074d94..0469138b 100644 --- a/app/src/terminal/model/mod.rs +++ b/app/src/terminal/model/mod.rs @@ -6,9 +6,9 @@ pub use terminal_model::TerminalModel; macro_rules! assert_lines_approx_eq { ($actual:expr, $expected:expr) => {{ float_cmp::assert_approx_eq!( - warpui::units::Lines, + galaxyui::units::Lines, $actual, - warpui::units::IntoLines::into_lines($expected) + galaxyui::units::IntoLines::into_lines($expected) ) }}; } @@ -42,4 +42,4 @@ pub use secrets::{ set_user_and_enterprise_secret_regexes, ObfuscateSecrets, RespectObfuscatedSecrets, Secret, SecretHandle, }; -pub use warp_terminal::model::{char_or_str, escape_sequences, grid::cell, mouse, BlockId}; +pub use galaxy_terminal::model::{char_or_str, escape_sequences, grid::cell, mouse, BlockId}; diff --git a/app/src/terminal/model/secrets.rs b/app/src/terminal/model/secrets.rs index e84d63f9..8a98db54 100644 --- a/app/src/terminal/model/secrets.rs +++ b/app/src/terminal/model/secrets.rs @@ -10,8 +10,8 @@ use rangemap::{RangeInclusiveMap, StepLite}; use std::collections::HashMap; use std::ops::{Not, RangeInclusive}; use std::sync::atomic::{AtomicUsize, Ordering}; -use warpui::elements::SecretRange; -use warpui::EntityId; +use galaxyui::elements::SecretRange; +use galaxyui::EntityId; use super::grid::grid_handler::GridHandler; use super::grid::{Dimensions as _, RespectDisplayedOutput}; diff --git a/app/src/terminal/model/selection.rs b/app/src/terminal/model/selection.rs index b41744c4..1f58ae82 100644 --- a/app/src/terminal/model/selection.rs +++ b/app/src/terminal/model/selection.rs @@ -6,7 +6,7 @@ //! also be cleared if the user clicks off of the selection. use std::fmt::Debug; use vec1::Vec1; -use warp_terminal::model::grid::cell; +use galaxy_terminal::model::grid::cell; use crate::terminal::model::ansi::CursorShape; use crate::terminal::model::cell::Flags; @@ -19,9 +19,9 @@ use std::cmp::{max, min}; use std::mem; use std::ops::RangeInclusive; pub use std::ops::{Range, RangeBounds}; -use warp_core::semantic_selection::SemanticSelection; -use warpui::text::SelectionType; -use warpui::units::Lines; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxyui::text::SelectionType; +use galaxyui::units::Lines; use super::index::{Direction, VisibleRow}; diff --git a/app/src/terminal/model/session.rs b/app/src/terminal/model/session.rs index 83ad953f..6273e7cc 100644 --- a/app/src/terminal/model/session.rs +++ b/app/src/terminal/model/session.rs @@ -17,16 +17,16 @@ use std::ops::Deref; use std::path::{Path, PathBuf}; use std::sync::Arc; use typed_path::{TypedPath, TypedPathBuf, WindowsPath}; -use warp_util::path::{ +use galaxy_util::path::{ convert_msys2_to_windows_native_path, convert_wsl_to_windows_host_path, msys2_exe_to_root, ShellFamily, }; use version_compare::Version; -use warp_completer::completer::{ +use galaxy_completer::completer::{ CommandExitStatus, CommandOutput, PathSeparators, TopLevelCommandCaseSensitivity, }; -use warpui::{platform::OperatingSystem, Entity, ModelContext, SingletonEntity}; +use galaxyui::{platform::OperatingSystem, Entity, ModelContext, SingletonEntity}; #[cfg(feature = "local_tty")] use crate::features::FeatureFlag; @@ -69,8 +69,8 @@ pub enum ReadHistoryContentsError { AsyncFsError(std::io::Error), } -// SessionId is defined in warp_core and re-exported here for backward compatibility. -pub use warp_core::SessionId; +// SessionId is defined in galaxy_core and re-exported here for backward compatibility. +pub use galaxy_core::SessionId; /// Information about the sessions within a given terminal pane/top-level /// shell. @@ -842,7 +842,7 @@ pub enum SessionType { /// `RemoteServerManager` has completed the connection handshake. It is /// `None` when the feature flag is off or the connection hasn't been /// established yet. - WarpifiedRemote { host_id: Option }, + WarpifiedRemote { host_id: Option }, } impl From for SessionType { @@ -918,7 +918,7 @@ impl Session { /// Updates the `host_id` on a `WarpifiedRemote` session type after the /// remote server handshake completes (or clears it on disconnect). - pub fn set_remote_host_id(&self, host_id: Option) { + pub fn set_remote_host_id(&self, host_id: Option) { let mut st = self.session_type.lock(); if let SessionType::WarpifiedRemote { host_id: ref mut h } = *st { *h = host_id; @@ -946,7 +946,7 @@ impl Session { pub fn home_dir(&self) -> Option<&str> { if cfg!(test) { - return warp_util::path::TEST_SESSION_HOME_DIR.as_deref(); + return galaxy_util::path::TEST_SESSION_HOME_DIR.as_deref(); } self.info.home_dir.as_deref() @@ -989,9 +989,9 @@ impl Session { /// representation, or `None` when no conversion is appropriate. pub fn windows_path_converter(&self) -> Option String> { if self.is_wsl() { - Some(warp_util::path::convert_windows_path_to_wsl) + Some(galaxy_util::path::convert_windows_path_to_wsl) } else if self.is_msys2() { - Some(warp_util::path::convert_windows_path_to_msys2) + Some(galaxy_util::path::convert_windows_path_to_msys2) } else { None } diff --git a/app/src/terminal/model/session/active_session.rs b/app/src/terminal/model/session/active_session.rs index b5067064..cf487d65 100644 --- a/app/src/terminal/model/session/active_session.rs +++ b/app/src/terminal/model/session/active_session.rs @@ -1,5 +1,5 @@ use std::sync::Arc; -use warpui::{AppContext, Entity, ModelContext, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle}; use crate::{ ai_assistant::execution_context::WarpAiExecutionContext, diff --git a/app/src/terminal/model/session/command_executor.rs b/app/src/terminal/model/session/command_executor.rs index 35bff028..f2a70233 100644 --- a/app/src/terminal/model/session/command_executor.rs +++ b/app/src/terminal/model/session/command_executor.rs @@ -19,8 +19,8 @@ use std::{any::Any, fmt::Debug, sync::Arc}; use anyhow::Result; use async_channel::{Receiver, Sender}; use async_trait::async_trait; -use warp_completer::completer::CommandOutput; -use warpui::ModelContext; +use galaxy_completer::completer::CommandOutput; +use galaxyui::ModelContext; use crate::terminal::{ event::ExecutedExecutorCommandEvent, model::session::Sessions, shell::Shell, @@ -151,7 +151,7 @@ fn new_command_executor_for_local_tty_session( use remote_server_executor::RemoteServerCommandExecutor; use settings::Setting as _; use tmux_executor::TmuxCommandExecutor; - use warpui::SingletonEntity as _; + use galaxyui::SingletonEntity as _; use wsl_command_executor::WslCommandExecutor; use crate::{ @@ -373,7 +373,7 @@ pub mod testing { use anyhow::anyhow; use command::r#async::Command; - use warp_completer::completer::CommandOutput; + use galaxy_completer::completer::CommandOutput; use super::*; diff --git a/app/src/terminal/model/session/command_executor/in_band_command_executor.rs b/app/src/terminal/model/session/command_executor/in_band_command_executor.rs index 3f27b012..c55396f0 100644 --- a/app/src/terminal/model/session/command_executor/in_band_command_executor.rs +++ b/app/src/terminal/model/session/command_executor/in_band_command_executor.rs @@ -9,21 +9,21 @@ use async_channel::{self, Receiver, Sender}; use async_trait::async_trait; use chrono::DateTime; use parking_lot::{Mutex, MutexGuard}; -use warp_core::command::ExitCode; -use warp_terminal::model::Point; -use warpui::r#async::block_on; +use galaxy_core::command::ExitCode; +use galaxy_terminal::model::Point; +use galaxyui::r#async::block_on; use crate::safe_info; use crate::server::datetime_ext::DateTimeExt; use crate::terminal::event::ExecutedExecutorCommandEvent; use crate::terminal::shell::{Shell, ShellType}; -use warp_util::on_cancel::OnCancelFutureExt; +use galaxy_util::on_cancel::OnCancelFutureExt; use crate::terminal::model::session::command_executor::{ shared, CommandExecutor, ExecutorCommandEvent, }; use crate::terminal::SizeInfo; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; use super::ExecuteCommandOptions; diff --git a/app/src/terminal/model/session/command_executor/in_band_command_executor_tests.rs b/app/src/terminal/model/session/command_executor/in_band_command_executor_tests.rs index 29f92030..67739b3b 100644 --- a/app/src/terminal/model/session/command_executor/in_band_command_executor_tests.rs +++ b/app/src/terminal/model/session/command_executor/in_band_command_executor_tests.rs @@ -1,5 +1,5 @@ use futures_util::future::{AbortHandle, Abortable, Aborted}; -use warpui::App; +use galaxyui::App; use crate::terminal::model::session::ExecuteCommandOptions; diff --git a/app/src/terminal/model/session/command_executor/msys2_command_executor.rs b/app/src/terminal/model/session/command_executor/msys2_command_executor.rs index 27efbcc9..6988b29a 100644 --- a/app/src/terminal/model/session/command_executor/msys2_command_executor.rs +++ b/app/src/terminal/model/session/command_executor/msys2_command_executor.rs @@ -9,8 +9,8 @@ use command::r#async::Command; use itertools::Itertools; use std::{any::Any, collections::HashMap, ffi::OsString, path::PathBuf}; use typed_path::{TypedPath, WindowsPath}; -use warp_completer::completer::CommandOutput; -use warp_util::path::{convert_msys2_to_windows_native_path, msys2_exe_to_root}; +use galaxy_completer::completer::CommandOutput; +use galaxy_util::path::{convert_msys2_to_windows_native_path, msys2_exe_to_root}; const BASH_CONFIG_FLAG: &str = "--norc"; const POWERSHELL_CONFIG_FLAG: &str = "-NoProfile"; diff --git a/app/src/terminal/model/session/command_executor/remote_server_executor.rs b/app/src/terminal/model/session/command_executor/remote_server_executor.rs index 6a73311b..ea8ba05c 100644 --- a/app/src/terminal/model/session/command_executor/remote_server_executor.rs +++ b/app/src/terminal/model/session/command_executor/remote_server_executor.rs @@ -5,9 +5,9 @@ use std::sync::Arc; use crate::remote_server::client::RemoteServerClient; use anyhow::{anyhow, Result}; use async_trait::async_trait; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; -use warp_core::command::ExitCode; -use warp_core::SessionId; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_core::command::ExitCode; +use galaxy_core::SessionId; use crate::remote_server::proto::run_command_response; use crate::terminal::model::session::command_executor::{CommandExecutor, ExecuteCommandOptions}; diff --git a/app/src/terminal/model/session/command_executor/tmux_executor.rs b/app/src/terminal/model/session/command_executor/tmux_executor.rs index 3b0a7ec7..58326b2e 100644 --- a/app/src/terminal/model/session/command_executor/tmux_executor.rs +++ b/app/src/terminal/model/session/command_executor/tmux_executor.rs @@ -16,8 +16,8 @@ use crate::terminal::model::tmux::commands::TmuxCommand; use crate::terminal::shell::Shell; use super::CommandExecutor; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; -use warp_core::command::ExitCode; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_core::command::ExitCode; /// A `Session`-scoped executor for commands via tmux. pub struct TmuxCommandExecutor { diff --git a/app/src/terminal/model/session/command_executor/tmux_executor_tests.rs b/app/src/terminal/model/session/command_executor/tmux_executor_tests.rs index 2e622dba..9e0f854a 100644 --- a/app/src/terminal/model/session/command_executor/tmux_executor_tests.rs +++ b/app/src/terminal/model/session/command_executor/tmux_executor_tests.rs @@ -1,7 +1,7 @@ use crate::terminal::{model::session::ExecuteCommandOptions, shell::ShellType}; use super::*; -use warpui::App; +use galaxyui::App; async fn execute_test_command( executor: Arc, diff --git a/app/src/terminal/model/session_test.rs b/app/src/terminal/model/session_test.rs index 5a879e6f..75ef4b3d 100644 --- a/app/src/terminal/model/session_test.rs +++ b/app/src/terminal/model/session_test.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use warpui::{ +use galaxyui::{ elements::Empty, platform::WindowStyle, App, AppContext, Element, Entity, ModelHandle, TypedActionView, View, ViewContext, }; diff --git a/app/src/terminal/model/terminal_model.rs b/app/src/terminal/model/terminal_model.rs index 87566339..0cecdc09 100644 --- a/app/src/terminal/model/terminal_model.rs +++ b/app/src/terminal/model/terminal_model.rs @@ -62,9 +62,9 @@ use crate::terminal::shell::{ShellName, ShellType}; use crate::terminal::model::secrets::ObfuscateSecrets; use session_sharing_protocol::sharer::SessionSourceType; -use warp_core::report_error; +use galaxy_core::report_error; #[cfg(not(target_family = "wasm"))] -use warpui::util::save_as_file; +use galaxyui::util::save_as_file; use async_channel::Sender; use base64::Engine; @@ -82,14 +82,14 @@ use std::ops::{Range, RangeInclusive}; use std::path::PathBuf; use std::str::FromStr; use std::sync::Arc; -use warp_core::features::FeatureFlag; -use warp_core::semantic_selection::SemanticSelection; -pub use warp_terminal::model::BlockIndex; -use warp_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; -use warpui::assets::asset_cache::Asset; -use warpui::image_cache::ImageType; -use warpui::r#async::executor::Background; -use warpui::AppContext; +use galaxy_core::features::FeatureFlag; +use galaxy_core::semantic_selection::SemanticSelection; +pub use galaxy_terminal::model::BlockIndex; +use galaxy_terminal::model::{KeyboardModes, KeyboardModesApplyBehavior}; +use galaxyui::assets::asset_cache::Asset; +use galaxyui::image_cache::ImageType; +use galaxyui::r#async::executor::Background; +use galaxyui::AppContext; /// Max size of the window title stack. const TITLE_STACK_MAX_DEPTH: usize = 4096; @@ -2694,7 +2694,7 @@ impl ansi::Handler for TerminalModel { delegate!(self.configure_charset(index, charset)); } - fn set_color(&mut self, index: usize, color: warpui::color::ColorU) { + fn set_color(&mut self, index: usize, color: galaxyui::color::ColorU) { self.override_colors[index] = Some(color); } diff --git a/app/src/terminal/model/terminal_model_test.rs b/app/src/terminal/model/terminal_model_test.rs index 06cb31bc..2860142a 100644 --- a/app/src/terminal/model/terminal_model_test.rs +++ b/app/src/terminal/model/terminal_model_test.rs @@ -7,10 +7,10 @@ use crate::terminal::model::index::Side; use crate::terminal::model::selection::ExpandedSelectionRange; use chrono::{DateTime, Local}; use vec1::vec1; -use warp_core::command::ExitCode; -use warp_terminal::model::ansi::ClearMode; -use warpui::text::str_to_byte_vec; -use warpui::text::SelectionType; +use galaxy_core::command::ExitCode; +use galaxy_terminal::model::ansi::ClearMode; +use galaxyui::text::str_to_byte_vec; +use galaxyui::text::SelectionType; /// Helper function to create a SerializedBlock with default values, /// including the new is_local field. diff --git a/app/src/terminal/model/test_utils.rs b/app/src/terminal/model/test_utils.rs index 18f6a23f..b426f355 100644 --- a/app/src/terminal/model/test_utils.rs +++ b/app/src/terminal/model/test_utils.rs @@ -8,8 +8,8 @@ use std::{io::sink, sync::Arc}; -use warp_core::command::ExitCode; -use warpui::r#async::executor::Background; +use galaxy_core::command::ExitCode; +use galaxyui::r#async::executor::Background; use crate::ai::blocklist::SerializedBlockListItem; use crate::terminal::{ @@ -51,7 +51,7 @@ fn block_padding() -> BlockPadding { /// prompt: /// /// ```no_run -/// # use warp::terminal::model::test_utils::TestBlockListBuilder; +/// # use galaxy::terminal::model::test_utils::TestBlockListBuilder; /// let block_list = TestBlockListBuilder::new() /// .with_honor_ps1(true) /// .build(); @@ -63,10 +63,10 @@ fn block_padding() -> BlockPadding { /// the channel event proxy: /// /// ```no_run -/// # use warp::terminal::event::{BlockType, Event}; -/// # use warp::terminal::event_listener::ChannelEventListener; -/// # use warp::terminal::model::block::SerializedBlock; -/// # use warp::terminal::model::test_utils::TestBlockListBuilder; +/// # use galaxy::terminal::event::{BlockType, Event}; +/// # use galaxy::terminal::event_listener::ChannelEventListener; +/// # use galaxy::terminal::model::block::SerializedBlock; +/// # use galaxy::terminal::model::test_utils::TestBlockListBuilder; /// /// let (events_tx, events_rx) = async_channel::unbounded(); /// let channel_event_proxy = ChannelEventListener::builder_for_test() @@ -157,7 +157,7 @@ impl Default for TestBlockListBuilder<'_> { /// For example, to create a [`Block`] that respects the user's custom prompt: /// /// ```no_run -/// # use warp::terminal::model::test_utils::TestBlockBuilder; +/// # use galaxy::terminal::model::test_utils::TestBlockBuilder; /// let block = TestBlockBuilder::new() /// .with_honor_ps1(true) /// .build(); diff --git a/app/src/terminal/model_events.rs b/app/src/terminal/model_events.rs index e17ead6b..e1e2ba77 100644 --- a/app/src/terminal/model_events.rs +++ b/app/src/terminal/model_events.rs @@ -13,8 +13,8 @@ use instant::Instant; use std::sync::Arc; use crate::remote_server::manager::RemoteServerManager; -use warpui::SingletonEntity; -use warpui::{Entity, ModelContext, ModelHandle}; +use galaxyui::SingletonEntity; +use galaxyui::{Entity, ModelContext, ModelHandle}; use super::event::SshLoginStatus; use super::model::ansi::{FinishUpdateValue, WarpificationUnavailableReason}; diff --git a/app/src/terminal/package_installers.rs b/app/src/terminal/package_installers.rs index 8a6ca10b..6bd48e27 100644 --- a/app/src/terminal/package_installers.rs +++ b/app/src/terminal/package_installers.rs @@ -3,8 +3,8 @@ use crate::completer::SessionContext; use crate::terminal::alias::is_expandable_alias; use string_offset::ByteOffset; -use warp_completer::parsers::simple::command_at_cursor_position; -use warp_util::path::ShellFamily; +use galaxy_completer::parsers::simple::command_at_cursor_position; +use galaxy_util::path::ShellFamily; /// Returns true if the command at the cursor position is likely a package installer command that would allow `@` at the start of the package name. /// This excludes package managers like Rust or Go that do not allow `@` at the start of the package name. diff --git a/app/src/terminal/package_installers_test.rs b/app/src/terminal/package_installers_test.rs index 9c8c9221..a7f1e927 100644 --- a/app/src/terminal/package_installers_test.rs +++ b/app/src/terminal/package_installers_test.rs @@ -2,7 +2,7 @@ use crate::terminal::package_installers::command_at_cursor_has_common_package_in #[test] fn test_command_at_cursor_has_common_package_installer_prefix_basic_prefixes() { - use warp_util::path::ShellFamily; + use galaxy_util::path::ShellFamily; // A representative subset of prefixes from is_common_package_installer_prefix let prefixes = vec![ @@ -51,9 +51,9 @@ fn test_command_at_cursor_has_common_package_installer_prefix_with_alias_expansi use std::sync::Arc; use typed_path::TypedPathBuf; - use warp_completer::signatures::CommandRegistry; - use warp_util::path::ShellFamily; - use warpui::App; + use galaxy_completer::signatures::CommandRegistry; + use galaxy_util::path::ShellFamily; + use galaxyui::App; use crate::completer::SessionContext; use crate::terminal::model::session::{ @@ -95,7 +95,7 @@ fn test_command_at_cursor_has_common_package_installer_prefix_with_alias_expansi #[test] fn test_command_at_cursor_has_common_package_installer_prefix_negative_cases() { - use warp_util::path::ShellFamily; + use galaxy_util::path::ShellFamily; let cases = vec!["git add @", "echo @", "cargo run @"]; @@ -117,7 +117,7 @@ fn test_command_at_cursor_has_common_package_installer_prefix_negative_cases() { #[test] fn test_command_at_cursor_has_common_package_installer_prefix_multi_segment_commands() { - use warp_util::path::ShellFamily; + use galaxy_util::path::ShellFamily; // Test cases with multi-segment commands and different cursor positions let test_cases = vec![ diff --git a/app/src/terminal/platform.rs b/app/src/terminal/platform.rs index 5f555d0d..a61a6c84 100644 --- a/app/src/terminal/platform.rs +++ b/app/src/terminal/platform.rs @@ -21,7 +21,7 @@ mod mac { str, }; - use warpui::platform::mac::utils::nsstring_as_str; + use galaxyui::platform::mac::utils::nsstring_as_str; const FALLBACK_LOCALE: &str = "UTF-8"; diff --git a/app/src/terminal/profile_model_selector.rs b/app/src/terminal/profile_model_selector.rs index 8da417f8..d750da4f 100644 --- a/app/src/terminal/profile_model_selector.rs +++ b/app/src/terminal/profile_model_selector.rs @@ -5,7 +5,7 @@ use parking_lot::FairMutex; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use std::sync::Arc; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Empty, Expanded, Flex, Hoverable, MainAxisAlignment, @@ -59,8 +59,8 @@ use crate::{ workspace::WorkspaceAction, }; -use warp_core::ui::theme::{color::internal_colors, Fill}; -use warp_core::{ +use galaxy_core::ui::theme::{color::internal_colors, Fill}; +use galaxy_core::{ features::FeatureFlag, ui::color::{coloru_with_opacity, Opacity}, }; @@ -82,7 +82,7 @@ const MAX_PROFILE_NAME_WIDTH_SCALE_FACTOR: f32 = 10.0; const PROFILE_SELECTOR_POSITION_ID: &str = "profile_selector"; -pub fn calculate_scaled_font_size(appearance: &warp_core::ui::appearance::Appearance) -> f32 { +pub fn calculate_scaled_font_size(appearance: &galaxy_core::ui::appearance::Appearance) -> f32 { if FeatureFlag::AgentView.is_enabled() { udi_font_size(appearance) } else { @@ -91,7 +91,7 @@ pub fn calculate_scaled_font_size(appearance: &warp_core::ui::appearance::Appear } /// Calculate the maximum width for profile name text (we will clip to this width) -pub fn calculate_max_profile_name_width(appearance: &warp_core::ui::appearance::Appearance) -> f32 { +pub fn calculate_max_profile_name_width(appearance: &galaxy_core::ui::appearance::Appearance) -> f32 { let scaled_font_size = calculate_scaled_font_size(appearance); scaled_font_size * MAX_PROFILE_NAME_WIDTH_SCALE_FACTOR } @@ -140,10 +140,10 @@ impl ActionButtonTheme for SelectorChipTheme { } } - fn font_properties(&self) -> Option { + fn font_properties(&self) -> Option { if FeatureFlag::CloudModeInputV2.is_enabled() { - Some(warpui::fonts::Properties { - weight: warpui::fonts::Weight::Semibold, + Some(galaxyui::fonts::Properties { + weight: galaxyui::fonts::Weight::Semibold, ..Default::default() }) } else { @@ -432,7 +432,7 @@ impl ProfileModelSelector { llm_preferences.hide_llm_popup(terminal_view_id); } else if config.input_type.is_ai() { ctx.spawn( - warpui::r#async::Timer::after(NEW_MODEL_CHOICES_POPUP_DELAY), + galaxyui::r#async::Timer::after(NEW_MODEL_CHOICES_POPUP_DELAY), |_, _, ctx| { ctx.notify(); }, @@ -1286,7 +1286,7 @@ impl ProfileModelSelector { let (vertical_padding, horizontal_padding) = self.get_padding_values(scaled_font_size); let profile_icon = Icon::Psychology - .to_warpui_icon(Fill::Solid(text_color)) + .to_galaxyui_icon(Fill::Solid(text_color)) .finish(); let max_label_width = calculate_max_profile_name_width(appearance); @@ -1417,7 +1417,7 @@ impl ProfileModelSelector { let mut content = Flex::row().with_cross_axis_alignment(CrossAxisAlignment::Center); if is_lrc { let terminal_icon = Icon::Terminal - .to_warpui_icon(Fill::Solid(text_color)) + .to_galaxyui_icon(Fill::Solid(text_color)) .finish(); content = content.with_child( Container::new( @@ -1438,7 +1438,7 @@ impl ProfileModelSelector { // (when enabled, clicking opens the inline model selector instead of a dropdown). if has_edit_access && !FeatureFlag::InlineMenuHeaders.is_enabled() { let chevron_icon = Icon::ChevronDown - .to_warpui_icon(Fill::Solid(text_color)) + .to_galaxyui_icon(Fill::Solid(text_color)) .finish(); content = content.with_child( diff --git a/app/src/terminal/prompt/mod.rs b/app/src/terminal/prompt/mod.rs index 857daeb8..2b930242 100644 --- a/app/src/terminal/prompt/mod.rs +++ b/app/src/terminal/prompt/mod.rs @@ -1,4 +1,4 @@ -use warp_util::path::user_friendly_path; +use galaxy_util::path::user_friendly_path; use crate::terminal::model::block::Block; use crate::terminal::model::session::Sessions; diff --git a/app/src/terminal/prompt_render_helper.rs b/app/src/terminal/prompt_render_helper.rs index dee7ab95..c57a3e4d 100644 --- a/app/src/terminal/prompt_render_helper.rs +++ b/app/src/terminal/prompt_render_helper.rs @@ -12,10 +12,10 @@ use settings::Setting as _; use std::fmt; use std::num::NonZeroUsize; -use warp_core::semantic_selection::SemanticSelection; -use warpui::elements::{DispatchEventResult, SelectionHandle}; -use warpui::ModelAsRef; -use warpui::{ +use galaxy_core::semantic_selection::SemanticSelection; +use galaxyui::elements::{DispatchEventResult, SelectionHandle}; +use galaxyui::ModelAsRef; +use galaxyui::{ elements::{Container, Element, EventHandler, SavePosition, SelectableArea, Text}, fonts::{Properties, Weight}, presenter::ChildView, @@ -39,7 +39,7 @@ use crate::terminal::model::session::Sessions; use crate::terminal::view::PADDING_LEFT as TERMINAL_VIEW_PADDING_LEFT; use crate::terminal::model::ObfuscateSecrets; -use warpui::units::Pixels; +use galaxyui::units::Pixels; /// How long we're willing to wait after precmd for a marker-based prompt to appear before we /// display an empty prompt grid in the input. diff --git a/app/src/terminal/recorder.rs b/app/src/terminal/recorder.rs index 6caf502f..44c0f8da 100644 --- a/app/src/terminal/recorder.rs +++ b/app/src/terminal/recorder.rs @@ -4,7 +4,7 @@ use std::{ }; use async_broadcast::InactiveReceiver; -use warpui::{r#async::SpawnedFutureHandle, Entity, ModelContext, SingletonEntity, WindowId}; +use galaxyui::{r#async::SpawnedFutureHandle, Entity, ModelContext, SingletonEntity, WindowId}; use crate::{ settings::{DebugSettings, DebugSettingsChangedEvent}, @@ -74,7 +74,7 @@ impl PtyRecorder { fn recording_path(ctx: &ModelContext) -> PathBuf { use chrono::Local; - let recordings_dir = warp_core::paths::state_dir().join(PTY_RECORDINGS_DIR); + let recordings_dir = galaxy_core::paths::state_dir().join(PTY_RECORDINGS_DIR); let timestamp = Local::now().format("%Y-%m-%d_%H-%M-%S"); recordings_dir.join(format!("{timestamp}-{}.pty.recording", ctx.model_id())) } @@ -103,7 +103,7 @@ impl PtyRecorder { if should_record && !self.is_recording() { if let Some(path) = self.start_recording(ctx) { - let display_path = warp_core::paths::home_relative_path(path); + let display_path = galaxy_core::paths::home_relative_path(path); let file_path = path.to_owned(); self.show_toast( format!("PTY recording started: {display_path}"), @@ -112,7 +112,7 @@ impl PtyRecorder { ); } } else if !should_record && self.is_recording() { - let display_path = warp_core::paths::home_relative_path(&self.path); + let display_path = galaxy_core::paths::home_relative_path(&self.path); self.stop_recording(); self.show_toast( format!("PTY recording stopped: {display_path}"), diff --git a/app/src/terminal/ref_tests/mod.rs b/app/src/terminal/ref_tests/mod.rs index 8f2fdb27..975f6168 100644 --- a/app/src/terminal/ref_tests/mod.rs +++ b/app/src/terminal/ref_tests/mod.rs @@ -6,7 +6,7 @@ use std::sync::Arc; use serde::Deserialize; use serde_json as json; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use crate::terminal::color; use crate::terminal::color::Colors; diff --git a/app/src/terminal/remote_tty/event_loop.rs b/app/src/terminal/remote_tty/event_loop.rs index d17e372e..da8f701e 100644 --- a/app/src/terminal/remote_tty/event_loop.rs +++ b/app/src/terminal/remote_tty/event_loop.rs @@ -9,7 +9,7 @@ use parking_lot::FairMutex; use serde::Serialize; use std::io; use std::sync::Arc; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use websocket::{Message, Sink, Stream, WebSocket, WebsocketMessage as _}; const CREATE_SESSION_ENDPOINT: &str = "ws://127.0.0.1:3030/create"; diff --git a/app/src/terminal/remote_tty/terminal_manager.rs b/app/src/terminal/remote_tty/terminal_manager.rs index ba4bfd43..44ec6b97 100644 --- a/app/src/terminal/remote_tty/terminal_manager.rs +++ b/app/src/terminal/remote_tty/terminal_manager.rs @@ -21,7 +21,7 @@ use parking_lot::FairMutex; use pathfinder_geometry::vector::Vector2F; use std::sync::mpsc::SyncSender; use std::sync::Arc; -use warpui::{AppContext, ModelHandle, ViewHandle, WindowId}; +use galaxyui::{AppContext, ModelHandle, ViewHandle, WindowId}; type PtyController = writeable_pty::PtyController>; diff --git a/app/src/terminal/resizable_data.rs b/app/src/terminal/resizable_data.rs index 10ffe6fc..5785b32e 100644 --- a/app/src/terminal/resizable_data.rs +++ b/app/src/terminal/resizable_data.rs @@ -1,10 +1,10 @@ use std::collections::HashMap; -use warpui::elements::resizable_state_handle; -use warpui::elements::ResizableStateHandle; -use warpui::Entity; -use warpui::SingletonEntity; -use warpui::WindowId; +use galaxyui::elements::resizable_state_handle; +use galaxyui::elements::ResizableStateHandle; +use galaxyui::Entity; +use galaxyui::SingletonEntity; +use galaxyui::WindowId; use crate::app_state::WindowSnapshot; diff --git a/app/src/terminal/rich_history.rs b/app/src/terminal/rich_history.rs index 05a73e52..db63138e 100644 --- a/app/src/terminal/rich_history.rs +++ b/app/src/terminal/rich_history.rs @@ -1,6 +1,6 @@ use crate::input_suggestions::AIQueryHistoryEntryDetails; use std::{borrow::Cow, ops::Sub}; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Flex, Icon, ParentElement, Shrinkable, }, diff --git a/app/src/terminal/safe_mode_settings.rs b/app/src/terminal/safe_mode_settings.rs index a3a19646..d93bb2c3 100644 --- a/app/src/terminal/safe_mode_settings.rs +++ b/app/src/terminal/safe_mode_settings.rs @@ -1,7 +1,7 @@ use settings::{ macros::define_settings_group, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, }; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::{terminal::model::ObfuscateSecrets, workspaces::user_workspaces::UserWorkspaces}; diff --git a/app/src/terminal/secret_regex_updater.rs b/app/src/terminal/secret_regex_updater.rs index b69b9806..0de15c80 100644 --- a/app/src/terminal/secret_regex_updater.rs +++ b/app/src/terminal/secret_regex_updater.rs @@ -1,7 +1,7 @@ use crate::server::telemetry::secret_redaction::update_telemetry_secrets_regex; use crate::settings::{CustomSecretRegex, PrivacySettings, PrivacySettingsChangedEvent}; use crate::terminal::model::set_user_and_enterprise_secret_regexes; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// Dummy singleton model that is used to update the current set of custom regexes within the /// terminal model. We do this via a singleton model since we only want to do this once any time diff --git a/app/src/terminal/session_settings.rs b/app/src/terminal/session_settings.rs index 3593a8a2..681411ae 100644 --- a/app/src/terminal/session_settings.rs +++ b/app/src/terminal/session_settings.rs @@ -9,7 +9,7 @@ use serde::{Deserialize, Serialize}; pub use startup_shell::*; pub use working_directory_config::*; -use warp_core::settings::{ +use galaxy_core::settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; diff --git a/app/src/terminal/session_settings/new_session_shell.rs b/app/src/terminal/session_settings/new_session_shell.rs index 25e4197f..e20a402e 100644 --- a/app/src/terminal/session_settings/new_session_shell.rs +++ b/app/src/terminal/session_settings/new_session_shell.rs @@ -1,8 +1,8 @@ use std::path::PathBuf; use serde::{Deserialize, Serialize}; -use warp_util::path::ShellFamily; -use warpui::platform::OperatingSystem; +use galaxy_util::path::ShellFamily; +use galaxyui::platform::OperatingSystem; #[derive( Debug, diff --git a/app/src/terminal/session_settings/working_directory_config.rs b/app/src/terminal/session_settings/working_directory_config.rs index 1bb0dc93..4d8e14e8 100644 --- a/app/src/terminal/session_settings/working_directory_config.rs +++ b/app/src/terminal/session_settings/working_directory_config.rs @@ -157,7 +157,7 @@ impl WorkingDirectoryConfig { pub fn update_and_save_value( &mut self, update_fn: F, - ctx: &mut warpui::ModelContext<::Group>, + ctx: &mut galaxyui::ModelContext<::Group>, ) -> anyhow::Result<()> where F: FnOnce(&mut ::Value), diff --git a/app/src/terminal/settings.rs b/app/src/terminal/settings.rs index 1fc944b7..aca7e365 100644 --- a/app/src/terminal/settings.rs +++ b/app/src/terminal/settings.rs @@ -4,7 +4,7 @@ use crate::settings::{AISettings, InputSettings, TerminalSpacing}; use settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; -use warpui::{units::Pixels, AppContext, SingletonEntity}; +use galaxyui::{units::Pixels, AppContext, SingletonEntity}; #[derive( Clone, diff --git a/app/src/terminal/share_block_modal.rs b/app/src/terminal/share_block_modal.rs index 709ff010..e5c08805 100644 --- a/app/src/terminal/share_block_modal.rs +++ b/app/src/terminal/share_block_modal.rs @@ -37,10 +37,10 @@ use pathfinder_geometry::{ }; use serde::Serialize; use std::{ops::RangeInclusive, sync::Arc}; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::Fill; -use warpui::r#async::SpawnedFutureHandle; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::Fill; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::{ clipboard::ClipboardContent, elements::{ try_rect_with_z, Align, Border, ConstrainedBox, Container, CornerRadius, @@ -157,7 +157,7 @@ pub enum ShareBlockModalAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::custom( @@ -670,7 +670,7 @@ impl ShareBlockModal { } else { text_label.to_string() }, - icon.to_warpui_icon(appearance.theme().active_ui_text_color()), + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Max, MainAxisAlignment::Center, vec2f(16., 16.), @@ -797,7 +797,7 @@ impl ShareBlockModal { let text_and_icon = TextAndIcon::new( TextAndIconAlignment::TextFirst, "Copy".to_string(), - Icon::Copy.to_warpui_icon(appearance.theme().active_ui_text_color()), + Icon::Copy.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Max, MainAxisAlignment::Center, vec2f(16., 16.), diff --git a/app/src/terminal/shared_session/manager.rs b/app/src/terminal/shared_session/manager.rs index a3c17368..09bd8e26 100644 --- a/app/src/terminal/shared_session/manager.rs +++ b/app/src/terminal/shared_session/manager.rs @@ -3,7 +3,7 @@ use std::collections::HashMap; use itertools::Itertools; use session_sharing_protocol::common::SessionId; -use warpui::{ +use galaxyui::{ AppContext, Entity, EntityId, ModelContext, SingletonEntity, ViewHandle, WeakViewHandle, WindowId, }; diff --git a/app/src/terminal/shared_session/mod.rs b/app/src/terminal/shared_session/mod.rs index b99ffff8..bbdd4d36 100644 --- a/app/src/terminal/shared_session/mod.rs +++ b/app/src/terminal/shared_session/mod.rs @@ -3,7 +3,7 @@ use instant::Duration; use serde::{Deserialize, Serialize}; use session_sharing_protocol::common::{Role, Scrollback, ScrollbackBlock, SessionId}; use session_sharing_protocol::sharer::SessionSourceType; -use warpui::{id, keymap::ContextPredicate, AppContext}; +use galaxyui::{id, keymap::ContextPredicate, AppContext}; use crate::{ channel::{Channel, ChannelState}, @@ -249,7 +249,7 @@ impl SharedSessionScrollbackType { #[cfg(not(test))] pub fn max_session_size(ctx: &AppContext) -> Byte { use crate::workspaces::user_workspaces::UserWorkspaces; - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; UserWorkspaces::as_ref(ctx) .current_team() diff --git a/app/src/terminal/shared_session/mod_test.rs b/app/src/terminal/shared_session/mod_test.rs index 260371af..fe478b1d 100644 --- a/app/src/terminal/shared_session/mod_test.rs +++ b/app/src/terminal/shared_session/mod_test.rs @@ -15,8 +15,8 @@ use serde_json::Value; use session_sharing_protocol::common::{Scrollback, ScrollbackBlock}; use std::sync::Arc; use url::Url; -use warpui::r#async::executor::Background; -use warpui::units::Lines; +use galaxyui::r#async::executor::Background; +use galaxyui::units::Lines; pub const MAX_BYTES_SHAREABLE: usize = 5000; diff --git a/app/src/terminal/shared_session/network/heartbeat.rs b/app/src/terminal/shared_session/network/heartbeat.rs index 91b35eb2..c01ebfe4 100644 --- a/app/src/terminal/shared_session/network/heartbeat.rs +++ b/app/src/terminal/shared_session/network/heartbeat.rs @@ -1,7 +1,7 @@ use futures::stream::AbortHandle; use std::time::Duration; -use warpui::r#async::Timer; -use warpui::{Entity, ModelContext}; +use galaxyui::r#async::Timer; +use galaxyui::{Entity, ModelContext}; const DEFAULT_PING_FREQUENCY: Duration = Duration::from_secs(5); const DEFAULT_IDLE_TIMEOUT: Duration = Duration::from_secs(30); diff --git a/app/src/terminal/shared_session/network/heartbeat_tests.rs b/app/src/terminal/shared_session/network/heartbeat_tests.rs index 1965e3ed..d50690e0 100644 --- a/app/src/terminal/shared_session/network/heartbeat_tests.rs +++ b/app/src/terminal/shared_session/network/heartbeat_tests.rs @@ -1,7 +1,7 @@ use super::{Event, Heartbeat}; use std::time::Duration; -use warpui::r#async::Timer; -use warpui::App; +use galaxyui::r#async::Timer; +use galaxyui::App; #[test] #[ignore = "Flakes in CI"] @@ -65,7 +65,7 @@ fn test_idle_timeout() { // Reset the idle timeout. heartbeat.update( &mut app, - |heartbeat, ctx: &mut warpui::ModelContext| { + |heartbeat, ctx: &mut galaxyui::ModelContext| { heartbeat.reset_idle_timeout(ctx) }, ); diff --git a/app/src/terminal/shared_session/participant_avatar_view.rs b/app/src/terminal/shared_session/participant_avatar_view.rs index add310d0..312ca86a 100644 --- a/app/src/terminal/shared_session/participant_avatar_view.rs +++ b/app/src/terminal/shared_session/participant_avatar_view.rs @@ -10,8 +10,8 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use session_sharing_protocol::common::{ParticipantId, ParticipantInfo, Role}; use session_sharing_protocol::sharer::RoleUpdateReason; -use warpui::r#async::{SpawnedFutureHandle, Timer}; -use warpui::{ +use galaxyui::r#async::{SpawnedFutureHandle, Timer}; +use galaxyui::{ accessibility::AccessibilityContent, elements::{ Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, @@ -22,7 +22,7 @@ use warpui::{ ui_components::components::{UiComponent, UiComponentStyles}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; -use warpui::{FocusContext, ViewHandle}; +use galaxyui::{FocusContext, ViewHandle}; use super::render_util::non_hoverable_participant_avatar; @@ -208,7 +208,7 @@ impl ParticipantAvatarView { Container::new( ConstrainedBox::new( Icon::Edit - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_height(8.) @@ -218,7 +218,7 @@ impl ParticipantAvatarView { .with_uniform_padding(2.) .with_background(background) .with_corner_radius(CornerRadius::with_all( - warpui::elements::Radius::Percentage(50.), + galaxyui::elements::Radius::Percentage(50.), )) .finish() } @@ -489,10 +489,10 @@ pub fn render_revoke_all_button( appearance: &Appearance, ) -> Box { let edit = Icon::Edit - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(); let slash = Icon::Slash - .to_warpui_icon(appearance.theme().terminal_colors().normal.red.into()) + .to_galaxyui_icon(appearance.theme().terminal_colors().normal.red.into()) .finish(); let mut stack = Stack::new().with_constrain_absolute_children(); diff --git a/app/src/terminal/shared_session/permissions_manager.rs b/app/src/terminal/shared_session/permissions_manager.rs index c96c4bb5..e68eb54b 100644 --- a/app/src/terminal/shared_session/permissions_manager.rs +++ b/app/src/terminal/shared_session/permissions_manager.rs @@ -1,5 +1,5 @@ use session_sharing_protocol::common::{Guest, PendingGuest, Role, SessionId, TeamAclData}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::drive::sharing::SharingAccessLevel; pub struct SessionPermissionsManager {} diff --git a/app/src/terminal/shared_session/presence_manager.rs b/app/src/terminal/shared_session/presence_manager.rs index adadd31f..fa210cbb 100644 --- a/app/src/terminal/shared_session/presence_manager.rs +++ b/app/src/terminal/shared_session/presence_manager.rs @@ -14,7 +14,7 @@ use session_sharing_protocol::common::{ }; use asset_cache::AssetCacheExt as _; -use warpui::{ +use galaxyui::{ assets::asset_cache::{AssetCache, AssetState}, image_cache::ImageType, r#async::SpawnedFutureHandle, diff --git a/app/src/terminal/shared_session/presence_manager_test.rs b/app/src/terminal/shared_session/presence_manager_test.rs index 7aea8913..d4cb3602 100644 --- a/app/src/terminal/shared_session/presence_manager_test.rs +++ b/app/src/terminal/shared_session/presence_manager_test.rs @@ -11,8 +11,8 @@ use itertools::Itertools; use session_sharing_protocol::common::{ ParticipantId, ParticipantInfo, ParticipantList, ProfileData, Role, Selection, Sharer, Viewer, }; -use warp_core::command::ExitCode; -use warpui::App; +use galaxy_core::command::ExitCode; +use galaxyui::App; #[test] fn test_choosing_preset_colors() { diff --git a/app/src/terminal/shared_session/render_util.rs b/app/src/terminal/shared_session/render_util.rs index f9e66d84..077d6a2b 100644 --- a/app/src/terminal/shared_session/render_util.rs +++ b/app/src/terminal/shared_session/render_util.rs @@ -2,11 +2,11 @@ use crate::{ appearance::Appearance, ui_components::avatar::{Avatar, AvatarContent}, }; -use warpui::{elements::CornerRadius, fonts::Weight}; +use galaxyui::{elements::CornerRadius, fonts::Weight}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{ ChildAnchor, Fill, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, diff --git a/app/src/terminal/shared_session/role_change_modal/mod.rs b/app/src/terminal/shared_session/role_change_modal/mod.rs index ae09b5eb..46935208 100644 --- a/app/src/terminal/shared_session/role_change_modal/mod.rs +++ b/app/src/terminal/shared_session/role_change_modal/mod.rs @@ -1,7 +1,7 @@ use session_sharing_protocol::common::{ParticipantId, Role, RoleRequestId}; -use warpui::elements::Empty; -use warpui::presenter::ChildView; -use warpui::{ +use galaxyui::elements::Empty; +use galaxyui::presenter::ChildView; +use galaxyui::{ ui_components::components::{Coords, UiComponentStyles}, AppContext, Element, Entity, View, ViewContext, ViewHandle, }; diff --git a/app/src/terminal/shared_session/role_change_modal/sharer_grant_body.rs b/app/src/terminal/shared_session/role_change_modal/sharer_grant_body.rs index 6cb9ea97..737d3d63 100644 --- a/app/src/terminal/shared_session/role_change_modal/sharer_grant_body.rs +++ b/app/src/terminal/shared_session/role_change_modal/sharer_grant_body.rs @@ -1,12 +1,12 @@ -use warpui::elements::{ +use galaxyui::elements::{ Container, CrossAxisAlignment, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::ui_components::text::Span; -use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::ui_components::text::Span; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; use crate::appearance::Appearance; use crate::ui_components::blended_colors; diff --git a/app/src/terminal/shared_session/role_change_modal/sharer_response_body.rs b/app/src/terminal/shared_session/role_change_modal/sharer_response_body.rs index 7a3f1a1a..c5068f66 100644 --- a/app/src/terminal/shared_session/role_change_modal/sharer_response_body.rs +++ b/app/src/terminal/shared_session/role_change_modal/sharer_response_body.rs @@ -5,11 +5,11 @@ use crate::terminal::shared_session::render_util::{ }; use crate::{appearance::Appearance, ui_components::blended_colors}; use session_sharing_protocol::common::{ParticipantId, Role, RoleRequestId}; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Text, }; -use warpui::fonts::Properties; -use warpui::{ +use galaxyui::fonts::Properties; +use galaxyui::{ elements::CrossAxisAlignment, fonts::Weight, platform::Cursor, @@ -20,7 +20,7 @@ use warpui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use super::{BODY_PADDING, HEADER_FONT_SIZE, MODAL_PADDING, TEXT_FONT_SIZE}; diff --git a/app/src/terminal/shared_session/role_change_modal/viewer_request_body.rs b/app/src/terminal/shared_session/role_change_modal/viewer_request_body.rs index e7a24583..19cf69b2 100644 --- a/app/src/terminal/shared_session/role_change_modal/viewer_request_body.rs +++ b/app/src/terminal/shared_session/role_change_modal/viewer_request_body.rs @@ -1,7 +1,7 @@ use crate::{appearance::Appearance, ui_components::blended_colors}; use session_sharing_protocol::common::Role; -use warpui::elements::{Container, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Text}; -use warpui::{ +use galaxyui::elements::{Container, Flex, MainAxisAlignment, MouseStateHandle, ParentElement, Text}; +use galaxyui::{ elements::CrossAxisAlignment, fonts::Weight, platform::Cursor, diff --git a/app/src/terminal/shared_session/selections_test.rs b/app/src/terminal/shared_session/selections_test.rs index ed86bdb8..354bf91c 100644 --- a/app/src/terminal/shared_session/selections_test.rs +++ b/app/src/terminal/shared_session/selections_test.rs @@ -1,5 +1,5 @@ -use warp_core::semantic_selection::SemanticSelection; -use warpui::App; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxyui::App; use crate::terminal::{ block_filter::BlockFilterQuery, @@ -13,7 +13,7 @@ use crate::terminal::{ shared_session::tests::terminal_model_for_viewer, GridType, SizeInfo, SizeUpdate, SizeUpdateReason, TerminalModel, }; -use warpui::text::SelectionType; +use galaxyui::text::SelectionType; /// Creates a [`SelectionType::Simple`], left-to-right text selection /// from `start` to `end` in the `model`'s blocklist. diff --git a/app/src/terminal/shared_session/share_modal/body.rs b/app/src/terminal/shared_session/share_modal/body.rs index 8ea385dc..a608bfde 100644 --- a/app/src/terminal/shared_session/share_modal/body.rs +++ b/app/src/terminal/shared_session/share_modal/body.rs @@ -9,24 +9,24 @@ use crate::terminal::shared_session::{ }; use crate::terminal::TerminalModel; use byte_unit::Byte; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use std::default::Default; use std::sync::Arc; use parking_lot::FairMutex; -use warpui::elements::{ +use galaxyui::elements::{ Container, Flex, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, Text, }; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::radio_buttons::{ +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::radio_buttons::{ RadioButtonItem, RadioButtonLayout, RadioButtonStateHandle, }; use super::style::{self, BUTTON_GAP, MODAL_MARGIN}; -use warpui::{ +use galaxyui::{ platform::Cursor, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; @@ -82,7 +82,7 @@ impl Body { /// during session initialization. This is important because these events count toward /// the session size quota, but are separate from the scrollback blocks. fn calculate_agent_conversations_size( - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, ctx: &ViewContext, ) -> Byte { let conversations: Vec<_> = BlocklistAIHistoryModel::as_ref(ctx) @@ -105,7 +105,7 @@ impl Body { &mut self, open_source: SharedSessionActionSource, model: Arc>, - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, ctx: &mut ViewContext, ) { let model = model.lock(); diff --git a/app/src/terminal/shared_session/share_modal/body_test.rs b/app/src/terminal/shared_session/share_modal/body_test.rs index e730da3c..758d3c57 100644 --- a/app/src/terminal/shared_session/share_modal/body_test.rs +++ b/app/src/terminal/shared_session/share_modal/body_test.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use parking_lot::FairMutex; -use warpui::App; +use galaxyui::App; use crate::terminal::shared_session::MAX_BYTES_SHAREABLE; use crate::terminal::TerminalModel; diff --git a/app/src/terminal/shared_session/share_modal/denied_body.rs b/app/src/terminal/shared_session/share_modal/denied_body.rs index 86ef62ea..a733e981 100644 --- a/app/src/terminal/shared_session/share_modal/denied_body.rs +++ b/app/src/terminal/shared_session/share_modal/denied_body.rs @@ -1,8 +1,8 @@ use crate::appearance::Appearance; -use warpui::elements::{Container, Flex, MainAxisSize, MouseStateHandle, ParentElement}; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::elements::{Container, Flex, MainAxisSize, MouseStateHandle, ParentElement}; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ platform::Cursor, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; diff --git a/app/src/terminal/shared_session/share_modal/mod.rs b/app/src/terminal/shared_session/share_modal/mod.rs index f524e87a..54764061 100644 --- a/app/src/terminal/shared_session/share_modal/mod.rs +++ b/app/src/terminal/shared_session/share_modal/mod.rs @@ -10,16 +10,16 @@ use std::sync::Arc; use parking_lot::FairMutex; use style::{DENIED_MODAL_WIDTH, MODAL_HEIGHT, MODAL_WIDTH}; -use warp_core::ui::appearance::Appearance; -use warpui::keymap::FixedBinding; -use warpui::EntityId; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::keymap::FixedBinding; +use galaxyui::EntityId; -use warpui::presenter::ChildView; -use warpui::ui_components::components::UiComponentStyles; -use warpui::AppContext; -use warpui::SingletonEntity; -use warpui::ViewHandle; -use warpui::{Element, Entity, TypedActionView, View, ViewContext}; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::AppContext; +use galaxyui::SingletonEntity; +use galaxyui::ViewHandle; +use galaxyui::{Element, Entity, TypedActionView, View, ViewContext}; mod body; mod denied_body; @@ -60,7 +60,7 @@ pub enum ShareSessionModalEvent { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/terminal/shared_session/share_modal/style.rs b/app/src/terminal/shared_session/share_modal/style.rs index e379f616..5fefead4 100644 --- a/app/src/terminal/shared_session/share_modal/style.rs +++ b/app/src/terminal/shared_session/share_modal/style.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ fonts::Weight, ui_components::components::{Coords, UiComponentStyles}, }; diff --git a/app/src/terminal/shared_session/shared_handlers.rs b/app/src/terminal/shared_session/shared_handlers.rs index 0d9aa11d..1a9e1186 100644 --- a/app/src/terminal/shared_session/shared_handlers.rs +++ b/app/src/terminal/shared_session/shared_handlers.rs @@ -6,8 +6,8 @@ use session_sharing_protocol::common::{ CLIAgentSessionState, InputMode, InputType as ProtocolInputType, SelectedAgentModel, SelectedConversation, ServerConversationToken, UniversalDeveloperInputContextUpdate, }; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, ModelHandle, SingletonEntity, WeakViewHandle}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, WeakViewHandle}; use crate::ai::blocklist::agent_view::{AgentViewController, AgentViewEntryOrigin}; use crate::ai::blocklist::{BlocklistAIContextModel, BlocklistAIHistoryModel, InputConfig}; @@ -22,7 +22,7 @@ use crate::terminal::TerminalView; /// Handles updating the local LLM preferences when a selected agent model update is received. /// This function is shared between the viewer and sharer to ensure consistent behavior. pub(crate) fn apply_selected_agent_model_update( - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, selected_model: &SelectedAgentModel, _guard: &ActiveRemoteUpdate, ctx: &mut AppContext, diff --git a/app/src/terminal/shared_session/sharer/network.rs b/app/src/terminal/shared_session/sharer/network.rs index afe084ce..6511e235 100644 --- a/app/src/terminal/shared_session/sharer/network.rs +++ b/app/src/terminal/shared_session/sharer/network.rs @@ -31,14 +31,14 @@ use session_sharing_protocol::sharer::{ }; use session_sharing_protocol::sharer::{FailedToInitializeSessionReason, SessionEndedReason}; use std::collections::HashMap; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use std::pin::pin; use std::sync::Arc; use std::time::Duration; -use warpui::r#async::Timer; -use warpui::{Entity, ModelContext, ModelHandle, RequestState, RetryOption, SingletonEntity}; +use galaxyui::r#async::Timer; +use galaxyui::{Entity, ModelContext, ModelHandle, RequestState, RetryOption, SingletonEntity}; use websocket::{Message, Sink, Stream, WebSocket, WebsocketMessage as _}; use crate::editor::CrdtOperation; @@ -225,7 +225,7 @@ impl Network { active_prompt: ActivePrompt, selection: Selection, input_replica_id: ReplicaId, - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, universal_developer_input_context: UniversalDeveloperInputContext, lifetime: Lifetime, source_type: SessionSourceType, @@ -586,7 +586,7 @@ impl Network { window_size: WindowSize, init_block_id: BlockId, input_replica_id: ReplicaId, - terminal_view_id: warpui::EntityId, + terminal_view_id: galaxyui::EntityId, universal_developer_input_context: UniversalDeveloperInputContext, lifetime: Lifetime, source_type: SessionSourceType, diff --git a/app/src/terminal/shared_session/sharer/network_test.rs b/app/src/terminal/shared_session/sharer/network_test.rs index 6bdded55..ba5b7e15 100644 --- a/app/src/terminal/shared_session/sharer/network_test.rs +++ b/app/src/terminal/shared_session/sharer/network_test.rs @@ -12,7 +12,7 @@ use session_sharing_protocol::{ }, sharer::{DownstreamMessage, ReconnectToken, UpstreamMessage}, }; -use warpui::{App, ModelHandle}; +use galaxyui::{App, ModelHandle}; use websocket::{Message, WebsocketMessage as _}; use crate::{ @@ -700,7 +700,7 @@ fn test_events_are_saved_on_send_and_removed_on_ack() { // Simulate receiving the EventsProcessedAck message from the server. network.update( &mut app, - |network, ctx: &mut warpui::ModelContext<'_, Network>| { + |network, ctx: &mut galaxyui::ModelContext<'_, Network>| { let downstream_message = DownstreamMessage::EventsProcessedAck { latest_processed_event_no: 1, }; diff --git a/app/src/terminal/shared_session/viewer/event_loop.rs b/app/src/terminal/shared_session/viewer/event_loop.rs index c4863b50..55016066 100644 --- a/app/src/terminal/shared_session/viewer/event_loop.rs +++ b/app/src/terminal/shared_session/viewer/event_loop.rs @@ -9,7 +9,7 @@ use session_sharing_protocol::common::{ }; use std::io::{sink, Sink}; use std::sync::Arc; -use warpui::{Entity, ModelContext, SingletonEntity, WeakViewHandle}; +use galaxyui::{Entity, ModelContext, SingletonEntity, WeakViewHandle}; use crate::terminal::event_listener::ChannelEventListener; use crate::terminal::model::ansi::{self}; diff --git a/app/src/terminal/shared_session/viewer/event_loop_test.rs b/app/src/terminal/shared_session/viewer/event_loop_test.rs index 3ea07c52..343d6ba2 100644 --- a/app/src/terminal/shared_session/viewer/event_loop_test.rs +++ b/app/src/terminal/shared_session/viewer/event_loop_test.rs @@ -13,8 +13,8 @@ use session_sharing_protocol::common::{ OrderedTerminalEvent, OrderedTerminalEventType, Scrollback, ScrollbackBlock, WindowSize, }; use std::sync::Arc; -use warpui::units::Lines; -use warpui::{App, ViewHandle}; +use galaxyui::units::Lines; +use galaxyui::{App, ViewHandle}; fn ordered_terminal_event_from_bytes( bytes: impl Into>, diff --git a/app/src/terminal/shared_session/viewer/history_model.rs b/app/src/terminal/shared_session/viewer/history_model.rs index 52c33d88..3fd79d01 100644 --- a/app/src/terminal/shared_session/viewer/history_model.rs +++ b/app/src/terminal/shared_session/viewer/history_model.rs @@ -1,5 +1,5 @@ use crate::terminal::HistoryEntry; -use warpui::Entity; +use galaxyui::Entity; /// Responsible for managing the history of a shared session for a viewer. #[derive(Default)] diff --git a/app/src/terminal/shared_session/viewer/mod_test.rs b/app/src/terminal/shared_session/viewer/mod_test.rs index a4d1db92..861a2dbb 100644 --- a/app/src/terminal/shared_session/viewer/mod_test.rs +++ b/app/src/terminal/shared_session/viewer/mod_test.rs @@ -1,5 +1,5 @@ use settings::Setting; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; use crate::{ terminal::{ diff --git a/app/src/terminal/shared_session/viewer/network.rs b/app/src/terminal/shared_session/viewer/network.rs index b8d99958..3c9645b5 100644 --- a/app/src/terminal/shared_session/viewer/network.rs +++ b/app/src/terminal/shared_session/viewer/network.rs @@ -6,7 +6,7 @@ use anyhow::bail; use async_channel::Receiver; use instant::Instant; use std::{pin::pin, sync::Arc}; -use warpui::r#async::{SpawnedFutureHandle, Timer}; +use galaxyui::r#async::{SpawnedFutureHandle, Timer}; use futures_util::{stream::AbortHandle, SinkExt, StreamExt}; @@ -32,8 +32,8 @@ use session_sharing_protocol::{ }; use std::time::Duration; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ Entity, ModelContext, ModelHandle, RequestState, RetryOption, SingletonEntity, WeakViewHandle, }; use websocket::{Message, Sink, Stream, WebsocketMessage as _}; diff --git a/app/src/terminal/shared_session/viewer/network_test.rs b/app/src/terminal/shared_session/viewer/network_test.rs index 73dd5d4d..54670b35 100644 --- a/app/src/terminal/shared_session/viewer/network_test.rs +++ b/app/src/terminal/shared_session/viewer/network_test.rs @@ -6,7 +6,7 @@ use std::{sync::Arc, time::Duration}; use parking_lot::FairMutex; -use warpui::{App, ModelHandle}; +use galaxyui::{App, ModelHandle}; use crate::{ terminal::{event_listener::ChannelEventListener, TerminalModel}, diff --git a/app/src/terminal/shared_session/viewer/terminal_manager.rs b/app/src/terminal/shared_session/viewer/terminal_manager.rs index 152fb958..dc4d1da3 100644 --- a/app/src/terminal/shared_session/viewer/terminal_manager.rs +++ b/app/src/terminal/shared_session/viewer/terminal_manager.rs @@ -14,7 +14,7 @@ use std::any::Any; use std::sync::Arc; -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewHandle, WeakViewHandle, WindowId}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewHandle, WeakViewHandle, WindowId}; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::ai::agent::conversation::ConversationStatus; diff --git a/app/src/terminal/ssh/error.rs b/app/src/terminal/ssh/error.rs index 5dc6e31c..f7a21501 100644 --- a/app/src/terminal/ssh/error.rs +++ b/app/src/terminal/ssh/error.rs @@ -8,23 +8,23 @@ use crate::ui_components::icons::Icon as UiIcon; use markdown_parser::FormattedText; use markdown_parser::FormattedTextFragment; use markdown_parser::FormattedTextLine; -use warp_core::channel::ChannelState; -use warp_core::ui::theme::WarpTheme; -use warpui::elements::HighlightedHyperlink; -use warpui::elements::Hoverable; -use warpui::elements::Icon; -use warpui::elements::MainAxisAlignment; -use warpui::elements::MainAxisSize; -use warpui::elements::MouseStateHandle; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::components::UiComponentStyles; -use warpui::AppContext; -use warpui::BlurContext; -use warpui::FocusContext; -use warpui::{ +use galaxy_core::channel::ChannelState; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::elements::HighlightedHyperlink; +use galaxyui::elements::Hoverable; +use galaxyui::elements::Icon; +use galaxyui::elements::MainAxisAlignment; +use galaxyui::elements::MainAxisSize; +use galaxyui::elements::MouseStateHandle; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::AppContext; +use galaxyui::BlurContext; +use galaxyui::FocusContext; +use galaxyui::{ elements::{Border, Container, CrossAxisAlignment, Flex, ParentElement}, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; @@ -118,7 +118,7 @@ pub struct SshErrorBlock { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( diff --git a/app/src/terminal/ssh/install_tmux.rs b/app/src/terminal/ssh/install_tmux.rs index 83cfa040..fab18980 100644 --- a/app/src/terminal/ssh/install_tmux.rs +++ b/app/src/terminal/ssh/install_tmux.rs @@ -11,18 +11,18 @@ use crate::terminal::warpify::settings::WarpifySettings; use crate::ui_components::blended_colors; use crate::ui_components::icons::Icon as UiIcon; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::ui::theme::WarpTheme; -use warpui::elements::{ +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::elements::{ FormattedTextElement, HighlightedHyperlink, Hoverable, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, }; -use warpui::keymap::FixedBinding; -use warpui::ui_components::toggle_menu::ToggleMenuStateHandle; -use warpui::{ +use galaxyui::keymap::FixedBinding; +use galaxyui::ui_components::toggle_menu::ToggleMenuStateHandle; +use galaxyui::{ elements::{Border, Container, CrossAxisAlignment, Flex, ParentElement}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; -use warpui::{BlurContext, FocusContext}; +use galaxyui::{BlurContext, FocusContext}; pub const WHY_INSTALL_TMUX_URL: &str = "https://docs.warp.dev/terminal/warpify/ssh#why-do-i-need-tmux-on-the-remote-machine"; @@ -113,7 +113,7 @@ pub struct SystemInstallState { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -511,7 +511,7 @@ impl TypedActionView for SshInstallTmuxBlock { #[allow(unused_variables)] pub fn install_tmux_script(system: &SystemDetails, app: &AppContext) -> Option { use asset_macro::bundled_asset; - use warpui::assets::asset_cache::{AssetCache, AssetState}; + use galaxyui::assets::asset_cache::{AssetCache, AssetState}; let asset_source = match ( system.operating_system.as_str(), @@ -549,7 +549,7 @@ pub fn install_root_tmux_script( can_run_sudo: bool, ) -> Option { use asset_macro::bundled_asset; - use warpui::assets::asset_cache::{AssetCache, AssetState}; + use galaxyui::assets::asset_cache::{AssetCache, AssetState}; let asset_source = match ( system.operating_system.as_str(), diff --git a/app/src/terminal/ssh/ssh_detection.rs b/app/src/terminal/ssh/ssh_detection.rs index 3c2eab2e..0a71ddbb 100644 --- a/app/src/terminal/ssh/ssh_detection.rs +++ b/app/src/terminal/ssh/ssh_detection.rs @@ -1,6 +1,6 @@ use serde::{Deserialize, Serialize}; -use warp_core::{features::FeatureFlag, settings::Setting}; -use warp_util::path::ShellFamily; +use galaxy_core::{features::FeatureFlag, settings::Setting}; +use galaxy_util::path::ShellFamily; use crate::terminal::warpify::settings::WarpifySettings; diff --git a/app/src/terminal/ssh/warpify.rs b/app/src/terminal/ssh/warpify.rs index e520aa6e..bd428926 100644 --- a/app/src/terminal/ssh/warpify.rs +++ b/app/src/terminal/ssh/warpify.rs @@ -1,7 +1,7 @@ use asset_macro::bundled_asset; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::ui::theme::WarpTheme; -use warpui::assets::asset_cache::{AssetCache, AssetState}; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::assets::asset_cache::{AssetCache, AssetState}; use crate::ai::blocklist::inline_action::requested_action::RenderableAction; use crate::appearance::Appearance; @@ -9,10 +9,10 @@ use crate::terminal::shell::ShellType; use crate::terminal::warpify; use crate::terminal::warpify::render::SSH_DOCS_URL; use crate::ui_components::icons::Icon as UiIcon; -use warpui::elements::{HighlightedHyperlink, Hoverable, Icon, MouseStateHandle}; -use warpui::keymap::FixedBinding; -use warpui::AppContext; -use warpui::{ +use galaxyui::elements::{HighlightedHyperlink, Hoverable, Icon, MouseStateHandle}; +use galaxyui::keymap::FixedBinding; +use galaxyui::AppContext; +use galaxyui::{ elements::{Border, Container, CrossAxisAlignment, Flex, ParentElement}, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; @@ -36,7 +36,7 @@ pub struct SshWarpifyBlock { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "ctrl-c", diff --git a/app/src/terminal/ssh/warpify_test.rs b/app/src/terminal/ssh/warpify_test.rs index a3fd89c3..20898fca 100644 --- a/app/src/terminal/ssh/warpify_test.rs +++ b/app/src/terminal/ssh/warpify_test.rs @@ -1,4 +1,4 @@ -use warpui::{assets::asset_cache::AssetSource, App}; +use galaxyui::{assets::asset_cache::AssetSource, App}; use crate::{ terminal::ssh::util::convert_script_to_one_line, diff --git a/app/src/terminal/terminal_manager.rs b/app/src/terminal/terminal_manager.rs index 85b0c6ab..d0f7d17f 100644 --- a/app/src/terminal/terminal_manager.rs +++ b/app/src/terminal/terminal_manager.rs @@ -2,7 +2,7 @@ use parking_lot::FairMutex; use pathfinder_geometry::vector::Vector2F; use settings::Setting as _; use std::{any::Any, path::PathBuf, sync::Arc}; -use warpui::{AppContext, SingletonEntity, ViewHandle}; +use galaxyui::{AppContext, SingletonEntity, ViewHandle}; use crate::PrivacySettings; use crate::{ @@ -44,7 +44,7 @@ pub trait TerminalManager: Any { fn as_any_mut(&mut self) -> &mut dyn Any; } -impl warpui::Entity for Box { +impl galaxyui::Entity for Box { type Event = (); } diff --git a/app/src/terminal/terminal_size_element.rs b/app/src/terminal/terminal_size_element.rs index 0ca813d1..20478eb7 100644 --- a/app/src/terminal/terminal_size_element.rs +++ b/app/src/terminal/terminal_size_element.rs @@ -2,7 +2,7 @@ use std::any::Any; use async_channel::Sender; -use warpui::{ +use galaxyui::{ elements::Point, event::DispatchedEvent, geometry::{rect::RectF, vector::Vector2F}, diff --git a/app/src/terminal/universal_developer_input.rs b/app/src/terminal/universal_developer_input.rs index 15213629..e7d5e1a0 100644 --- a/app/src/terminal/universal_developer_input.rs +++ b/app/src/terminal/universal_developer_input.rs @@ -18,7 +18,7 @@ use std::borrow::Cow; use std::cell::RefCell; use std::rc::Rc; use std::sync::Arc; -use warpui::{ +use galaxyui::{ elements::{ ChildView, Clipped, Container, CornerRadius, CrossAxisAlignment, Fill, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Radius, Rect, Shrinkable, @@ -29,7 +29,7 @@ use warpui::{ ViewContext, ViewHandle, }; -use warp_core::ui::{ +use galaxy_core::ui::{ color::{ coloru_with_opacity, contrast::{foreground_color_with_minimum_contrast, MinimumAllowedContrast}, @@ -39,13 +39,13 @@ use warp_core::ui::{ }; use std::boxed::Box; -use warpui::{ +use galaxyui::{ ui_components::segmented_control::{SegmentedControl, SegmentedControlEvent}, ModelHandle, }; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; use crate::ai::blocklist::prompt::PromptIconButtonTheme; use crate::ai::blocklist::BlocklistAIHistoryEvent; @@ -79,8 +79,8 @@ use crate::{ workspaces::user_workspaces::UserWorkspaces, BlocklistAIHistoryModel, }; -use warp_core::features::FeatureFlag; -use warpui::ui_components::segmented_control::{LabelConfig, TooltipConfig}; +use galaxy_core::features::FeatureFlag; +use galaxyui::ui_components::segmented_control::{LabelConfig, TooltipConfig}; pub enum AtContextMenuDisabledReason { #[cfg(target_family = "wasm")] @@ -787,7 +787,7 @@ impl View for UniversalDeveloperInputButtonBar { "UniversalDeveloperInputButtonBar" } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let theme = appearance.theme(); #[cfg(feature = "voice_input")] @@ -796,7 +796,7 @@ impl View for UniversalDeveloperInputButtonBar { // Helper function to create a 1px vertical divider let create_divider = || { Container::new( - warpui::elements::ConstrainedBox::new( + galaxyui::elements::ConstrainedBox::new( Rect::new().with_background(theme.surface_3()).finish(), ) .with_width(1.0) @@ -808,7 +808,7 @@ impl View for UniversalDeveloperInputButtonBar { .finish() }; - let build_buttons = |model_selector_element: Box| { + let build_buttons = |model_selector_element: Box| { // Create a horizontal layout with buttons arranged in a row let mut buttons = Flex::row() .with_main_axis_size(MainAxisSize::Max) diff --git a/app/src/terminal/view.rs b/app/src/terminal/view.rs index 6e8bf8c2..e3c9a1ae 100644 --- a/app/src/terminal/view.rs +++ b/app/src/terminal/view.rs @@ -45,7 +45,7 @@ mod tooltips; pub mod use_agent_footer; mod zero_state_block; -use warpui::clipboard_utils::get_image_filepaths_from_paths; +use galaxyui::clipboard_utils::get_image_filepaths_from_paths; use std::ops::Deref as _; @@ -187,10 +187,10 @@ use session_sharing_protocol::common::LongRunningCommandAgentInteractionState; use session_sharing_protocol::sharer::{RoleUpdateReason, SessionEndedReason, SessionSourceType}; use ssh_file_upload::{FileUpload, FileUploadEvent}; use uuid::Uuid; -use warp_core::channel::ChannelState; -use warpui::elements::{shimmering_text::ShimmeringTextStateHandle, Border, ChildView}; -use warpui::fonts::Properties; -use warpui::{ViewHandle, WeakModelHandle}; +use galaxy_core::channel::ChannelState; +use galaxyui::elements::{shimmering_text::ShimmeringTextStateHandle, Border, ChildView}; +use galaxyui::fonts::Properties; +use galaxyui::{ViewHandle, WeakModelHandle}; use crate::ai::agent::conversation::{AIConversation, AIConversationId, ConversationStatus}; @@ -378,35 +378,35 @@ use std::thread::JoinHandle; use std::time::Duration; use sum_tree::SeekBias; use vec1::vec1; -use warp_core::context_flag::ContextFlag; -use warp_core::user_preferences::GetUserPreferences as _; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::user_preferences::GetUserPreferences as _; #[cfg(feature = "local_fs")] -use warp_util::path::LineAndColumnArg; -use warp_util::path::ShellFamily; -use warpui::clipboard::ClipboardContent; -use warpui::elements::new_scrollable::{ +use galaxy_util::path::LineAndColumnArg; +use galaxy_util::path::ShellFamily; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::new_scrollable::{ AxisConfiguration, ClippedAxisConfiguration, DualAxisConfig, NewScrollableElement, ScrollableAppearance, SingleAxisConfig, }; -use warpui::elements::{ +use galaxyui::elements::{ get_rich_content_position_id, ChildAnchor, ClippedScrollStateHandle, Container, CrossAxisAlignment, DispatchEventResult, DropTarget, DropTargetData, Empty, EventHandler, Expanded, Flex, NewScrollable, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, PositionedElementAnchor, PositionedElementOffsetBounds, Radius, ScrollableElement, ScrollbarWidth, Shrinkable, Text, }; -use warpui::event::ModifiersState; -use warpui::keymap::Keystroke; -use warpui::notification::{NotificationSendError, RequestPermissionsOutcome, UserNotification}; -use warpui::platform::{Cursor, OperatingSystem}; -use warpui::r#async::executor::Background; -use warpui::r#async::{SpawnedFutureHandle, Timer}; -use warpui::windowing::WindowManager; +use galaxyui::event::ModifiersState; +use galaxyui::keymap::Keystroke; +use galaxyui::notification::{NotificationSendError, RequestPermissionsOutcome, UserNotification}; +use galaxyui::platform::{Cursor, OperatingSystem}; +use galaxyui::r#async::executor::Background; +use galaxyui::r#async::{SpawnedFutureHandle, Timer}; +use galaxyui::windowing::WindowManager; -use warpui::assets::asset_cache::{AssetCache, AssetCacheEvent}; -use warpui::image_cache::ImageType; -use warpui::units::{IntoLines, IntoPixels, Lines, Pixels}; -use warpui::{ +use galaxyui::assets::asset_cache::{AssetCache, AssetCacheEvent}; +use galaxyui::image_cache::ImageType; +use galaxyui::units::{IntoLines, IntoPixels, Lines, Pixels}; +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, elements::SavePosition, elements::{ @@ -418,14 +418,14 @@ use warpui::{ AccessibilityData, AppContext, BlurContext, Element, Entity, FocusContext, ModelHandle, TypedActionView, UpdateView, View, ViewAsRef, ViewContext, WeakViewHandle, }; -use warpui::{ +use galaxyui::{ elements::Stack, end_trace_after_next, geometry::vector::{vec2f, Vector2F}, record_trace_event, WindowId, }; -use warpui::{windowing, CursorInfo, EntityId, EventContext, ModelAsRef, SingletonEntity, Tracked}; +use galaxyui::{windowing, CursorInfo, EntityId, EventContext, ModelAsRef, SingletonEntity, Tracked}; use crate::ai_assistant::{AskAIType, ASK_AI_ASSISTANT_TEXT}; use crate::appearance::{Appearance, AppearanceEvent}; @@ -510,8 +510,8 @@ use crate::terminal::{ }; use crate::view_components::find::{Event as FindEvent, Find, FindDirection, FindWithinBlockState}; use settings::{Setting, ToggleableSetting}; -use warp_core::semantic_selection::SemanticSelection; -use warpui::text::SelectionType; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxyui::text::SelectionType; use crate::menu::{Event as MenuEvent, Menu, MenuItem, MenuItemFields}; use crate::server::telemetry::{BlockLatencyInfo, BootstrappingInfo}; @@ -578,7 +578,7 @@ use inline_banner::{ AwsCliNotInstalledBannerAction, AwsCliNotInstalledBannerState, ByoLlmAuthBannerSessionState, OpenInWarpBannerState, SSHBannerAction, SSHBannerState, VimModeBannerAction, }; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; lazy_static! { // A set of commands that perform minimal work that we use as a baseline to measure the latency of blocks. @@ -2561,14 +2561,14 @@ pub struct TerminalView { /// 2. Whether this View's window is the active window. /// /// We need to derive and cache this state on this View in order to correctly implement focus - /// reporting. Because focus is window-scoped, i.e. warpui does not consider activating a + /// reporting. Because focus is window-scoped, i.e. galaxyui does not consider activating a /// different window as blurring the focused View in the previously active window, we cannot - /// simply rely on the warpui::View::on_blur and on_focus methods to report focus-in/out to the + /// simply rely on the galaxyui::View::on_blur and on_focus methods to report focus-in/out to the /// PTY, as those methods will not trigger when changing active windows. The singleton model - /// [`warpui::windowing::State`] will allow us to subscribe to active window change. So, we can + /// [`galaxyui::windowing::State`] will allow us to subscribe to active window change. So, we can /// subscribe to that and have that callback also report focus-in/out. However, that will still /// leave cases for potential double-reporting, as a single click can trigger both - /// [`warpui::View::on_focus`] and emit a [`warpui::windowing::StateEvent`]. This field will + /// [`galaxyui::View::on_focus`] and emit a [`galaxyui::windowing::StateEvent`]. This field will /// guard against that double- reporting case, though it needs to be kept in sync with the /// focused view and active window. is_focused_and_active: bool, @@ -2749,9 +2749,9 @@ pub struct TerminalView { /// Mouse state handle for the cloud mode details panel toggle button in the pane header. /// Only available on non-WASM platforms (WASM uses a per-window button instead). #[cfg(not(target_arch = "wasm32"))] - cloud_mode_details_panel_toggle_mouse_state: warpui::elements::MouseStateHandle, + cloud_mode_details_panel_toggle_mouse_state: galaxyui::elements::MouseStateHandle, /// Mouse state handle for the ambient agent cancel button in the pane header. - ambient_agent_cancel_mouse_state: warpui::elements::MouseStateHandle, + ambient_agent_cancel_mouse_state: galaxyui::elements::MouseStateHandle, /// First-time cloud agent setup view (full-screen overlay for creating initial environment). first_time_cloud_agent_setup_view: ViewHandle, @@ -6429,7 +6429,7 @@ impl TerminalView { } #[cfg(any(test, feature = "integration_tests"))] - pub fn sessions<'a, A: warpui::ModelAsRef>(&self, ctx: &'a A) -> &'a Sessions { + pub fn sessions<'a, A: galaxyui::ModelAsRef>(&self, ctx: &'a A) -> &'a Sessions { self.sessions.as_ref(ctx) } @@ -7413,7 +7413,7 @@ impl TerminalView { }); } - /// Receiving the warpui::Event::KeyDown event from a child element. + /// Receiving the galaxyui::Event::KeyDown event from a child element. /// Generally, this should be control characters rather than printable characters. fn keydown_on_terminal(&mut self, characters: &str, ctx: &mut ViewContext) { if self.is_long_running() { @@ -7457,7 +7457,7 @@ impl TerminalView { was_bootstrap_script_echoed || is_shared_session_executor } - /// Receiving a warpui::Event::TypedCharacters event from a child element. + /// Receiving a galaxyui::Event::TypedCharacters event from a child element. /// We can assume `characters` consists of all printable characters, and therefore, /// can go into the input box. fn typed_characters_on_terminal(&mut self, characters: &str, ctx: &mut ViewContext) { @@ -9857,7 +9857,7 @@ impl TerminalView { }; let escape_char = session.shell_family().escape_char(); let Some(top_level_command) = - warp_completer::parsers::simple::top_level_command(command, escape_char) + galaxy_completer::parsers::simple::top_level_command(command, escape_char) else { return false; }; @@ -10562,7 +10562,7 @@ impl TerminalView { if self.is_login_shell_bootstrapped { let _ = ctx.spawn( async move { - warpui::r#async::Timer::after(EXECUTE_PENDING_COMMAND_DELAY).await; + galaxyui::r#async::Timer::after(EXECUTE_PENDING_COMMAND_DELAY).await; }, Self::execute_pending_command, ); @@ -11110,7 +11110,7 @@ impl TerminalView { ctx.spawn( async { - warpui::r#async::Timer::after(*TRIGGER_RC_FILE_SUBSHELL_BOOTSTRAP_DELAY) + galaxyui::r#async::Timer::after(*TRIGGER_RC_FILE_SUBSHELL_BOOTSTRAP_DELAY) .await }, move |me, _, ctx| { @@ -14379,7 +14379,7 @@ impl TerminalView { fn start_bootstrap_timer(&self, duration: Duration, ctx: &mut ViewContext) { let _ = ctx.spawn( async move { - warpui::r#async::Timer::after(duration).await; + galaxyui::r#async::Timer::after(duration).await; }, Self::on_bootstrap_failed_timer_complete, ); @@ -21409,11 +21409,11 @@ impl TerminalView { let icon = Container::new( ConstrainedBox::new(if has_active_filter { icons::Icon::FilterFunnelFilled - .to_warpui_icon(appearance.theme().accent()) + .to_galaxyui_icon(appearance.theme().accent()) .finish() } else { icons::Icon::FilterFunnel - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), @@ -23710,7 +23710,7 @@ impl TerminalView { && session.shell_family() == ShellFamily::Posix && is_in_long_running_command; if is_msys2_long_running { - let input = warpui::clipboard_utils::escaped_paths_str(paths, None); + let input = galaxyui::clipboard_utils::escaped_paths_str(paths, None); self.typed_characters_on_terminal(&input, ctx); return; } @@ -23721,7 +23721,7 @@ impl TerminalView { let paths = if session.is_wsl() { paths_converted = paths .iter() - .map(|p| warp_util::path::convert_windows_path_to_wsl(p)) + .map(|p| galaxy_util::path::convert_windows_path_to_wsl(p)) .collect::>(); paths_converted.as_slice() } else { @@ -23729,7 +23729,7 @@ impl TerminalView { }; let input = - warpui::clipboard_utils::escaped_paths_str(paths, Some(self.shell_family(ctx))); + galaxyui::clipboard_utils::escaped_paths_str(paths, Some(self.shell_family(ctx))); self.typed_characters_on_terminal(&input, ctx); } } @@ -23872,7 +23872,7 @@ impl TerminalView { let active_block_id = self.model.lock().block_list().active_block_id().clone(); ctx.spawn( async { - warpui::r#async::Timer::after(Duration::from_secs(3)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(3)).await; active_block_id }, move |terminal_view, active_block_id, _| { @@ -25938,7 +25938,7 @@ impl View for TerminalView { Container::new( Flex::row() - .with_main_axis_size(warpui::elements::MainAxisSize::Max) + .with_main_axis_size(galaxyui::elements::MainAxisSize::Max) .with_cross_axis_alignment(CrossAxisAlignment::Stretch) .with_child(Shrinkable::new(1., final_element).finish()) .with_child(panel_with_background) @@ -25977,7 +25977,7 @@ impl View for TerminalView { } } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); context.map.insert( "TerminalView_BlockSelectionCardinality", diff --git a/app/src/terminal/view/action.rs b/app/src/terminal/view/action.rs index f036131d..9a73f072 100644 --- a/app/src/terminal/view/action.rs +++ b/app/src/terminal/view/action.rs @@ -8,11 +8,11 @@ use command_corrections::Correction; use pathfinder_geometry::vector::Vector2F; use session_sharing_protocol::common::Role; use session_sharing_protocol::sharer::RoleUpdateReason; -use warp_util::user_input::UserInput; -use warpui::elements::HyperlinkUrl; -use warpui::event::ModifiersState; -use warpui::units::Lines; -use warpui::EntityId; +use galaxy_util::user_input::UserInput; +use galaxyui::elements::HyperlinkUrl; +use galaxyui::event::ModifiersState; +use galaxyui::units::Lines; +use galaxyui::EntityId; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::AIAgentExchangeId; @@ -281,7 +281,7 @@ pub enum TerminalAction { OpenCodeInWarp { path: PathBuf, layout: crate::util::file::external_editor::settings::EditorLayout, - line_col: Option, + line_col: Option, }, OpenWorkflowModal, OpenWorkflowModalForAIWorkflow(Workflow), diff --git a/app/src/terminal/view/agent_view.rs b/app/src/terminal/view/agent_view.rs index ce0e9788..be640c9c 100644 --- a/app/src/terminal/view/agent_view.rs +++ b/app/src/terminal/view/agent_view.rs @@ -1,5 +1,5 @@ -use warp_core::{features::FeatureFlag, send_telemetry_from_ctx, ui::appearance::Appearance}; -use warpui::{keymap::Keystroke, EntityId, SingletonEntity, ViewContext}; +use galaxy_core::{features::FeatureFlag, send_telemetry_from_ctx, ui::appearance::Appearance}; +use galaxyui::{keymap::Keystroke, EntityId, SingletonEntity, ViewContext}; use crate::{ ai::{ diff --git a/app/src/terminal/view/ambient_agent/block.rs b/app/src/terminal/view/ambient_agent/block.rs index 46f3f08e..5be65559 100644 --- a/app/src/terminal/view/ambient_agent/block.rs +++ b/app/src/terminal/view/ambient_agent/block.rs @@ -8,8 +8,8 @@ pub use query::*; pub use setup_command::*; pub use setup_command_text::*; -use warpui::prelude::Container; -use warpui::{AppContext, Element, ModelHandle}; +use galaxyui::prelude::Container; +use galaxyui::{AppContext, Element, ModelHandle}; use crate::ai::blocklist::block::view_impl::{ WithContentItemSpacing, CONTENT_ITEM_VERTICAL_MARGIN, diff --git a/app/src/terminal/view/ambient_agent/block/entry.rs b/app/src/terminal/view/ambient_agent/block/entry.rs index 7546ca50..ee9befb2 100644 --- a/app/src/terminal/view/ambient_agent/block/entry.rs +++ b/app/src/terminal/view/ambient_agent/block/entry.rs @@ -1,9 +1,9 @@ use settings::Setting; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::{appearance::Appearance, Icon}; -use warpui::prelude::Empty; -use warpui::AppContext; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::{appearance::Appearance, Icon}; +use galaxyui::prelude::Empty; +use galaxyui::AppContext; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, Text, @@ -132,7 +132,7 @@ impl AmbientAgentEntryBlock { &self, appearance: &Appearance, app: &AppContext, - ) -> Box { + ) -> Box { let theme = appearance.theme(); let view_model = self.ambient_agent_view_model(app); @@ -155,7 +155,7 @@ impl AmbientAgentEntryBlock { }; Container::new( - ConstrainedBox::new(icon.to_warpui_icon(color.into()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(color.into()).finish()) .with_width(STATUS_ICON_SIZE) .with_height(STATUS_ICON_SIZE) .finish(), @@ -191,7 +191,7 @@ impl View for AmbientAgentEntryBlock { ) .with_color(theme.main_text_color(theme.background()).into_solid()) .with_style(Properties { - weight: warpui::fonts::Weight::Bold, + weight: galaxyui::fonts::Weight::Bold, ..Default::default() }) .soft_wrap(false) @@ -232,7 +232,7 @@ impl View for AmbientAgentEntryBlock { .with_child( ConstrainedBox::new( Icon::ChevronRight - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish(), ) .with_height(20.) diff --git a/app/src/terminal/view/ambient_agent/block/query.rs b/app/src/terminal/view/ambient_agent/block/query.rs index 84345802..4a2f00d3 100644 --- a/app/src/terminal/view/ambient_agent/block/query.rs +++ b/app/src/terminal/view/ambient_agent/block/query.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::ParentElement, prelude::{Container, Empty, Flex, Text}, AppContext, Element, Entity, ModelHandle, SingletonEntity, View, ViewContext, diff --git a/app/src/terminal/view/ambient_agent/block/setup_command.rs b/app/src/terminal/view/ambient_agent/block/setup_command.rs index d9b118b4..3c545041 100644 --- a/app/src/terminal/view/ambient_agent/block/setup_command.rs +++ b/app/src/terminal/view/ambient_agent/block/setup_command.rs @@ -1,9 +1,9 @@ use std::sync::Arc; use parking_lot::FairMutex; -use warp_core::ui::appearance::Appearance; -use warp_terminal::model::BlockId; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_terminal::model::BlockId; +use galaxyui::{ prelude::{Container, Empty, MouseStateHandle}, scene::{CornerRadius, Radius}, AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, diff --git a/app/src/terminal/view/ambient_agent/block/setup_command_text.rs b/app/src/terminal/view/ambient_agent/block/setup_command_text.rs index 2031767f..e673eb7e 100644 --- a/app/src/terminal/view/ambient_agent/block/setup_command_text.rs +++ b/app/src/terminal/view/ambient_agent/block/setup_command_text.rs @@ -1,5 +1,5 @@ -use warp_core::ui::{appearance::Appearance, Icon}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, Icon}; +use galaxyui::{ elements::ParentElement, prelude::{ ConstrainedBox, Container, CrossAxisAlignment, Cursor, Empty, Flex, Hoverable, @@ -164,7 +164,7 @@ impl View for CloudModeSetupTextBlock { .with_child( Container::new( ConstrainedBox::new( - chevron_icon.to_warpui_icon(text_color.into()).finish(), + chevron_icon.to_galaxyui_icon(text_color.into()).finish(), ) .with_width(icon_size) .with_height(icon_size) diff --git a/app/src/terminal/view/ambient_agent/first_time_setup.rs b/app/src/terminal/view/ambient_agent/first_time_setup.rs index 7776bb04..6f687b6e 100644 --- a/app/src/terminal/view/ambient_agent/first_time_setup.rs +++ b/app/src/terminal/view/ambient_agent/first_time_setup.rs @@ -17,8 +17,8 @@ use crate::{ ui_components::blended_colors, }; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::ui::theme::{AnsiColorIdentifier, Fill}; -use warpui::{ +use galaxy_core::ui::theme::{AnsiColorIdentifier, Fill}; +use galaxyui::{ elements::{ new_scrollable::SingleAxisConfig, Align, Border, ChildView, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Expanded, Flex, @@ -355,7 +355,7 @@ impl View for FirstTimeCloudAgentSetupView { }, appearance.theme().nonactive_ui_detail().into(), appearance.theme().active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(); diff --git a/app/src/terminal/view/ambient_agent/footer.rs b/app/src/terminal/view/ambient_agent/footer.rs index bcbff65d..9bc06566 100644 --- a/app/src/terminal/view/ambient_agent/footer.rs +++ b/app/src/terminal/view/ambient_agent/footer.rs @@ -1,6 +1,6 @@ use pathfinder_color::ColorU; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Text, @@ -100,7 +100,7 @@ pub fn render_error_footer(error_message: &str, appearance: &Appearance) -> Box< let header_color = theme.ui_error_color(); let body_color = blended_colors::text_main(theme, theme.background()); let background: ColorU = { - let red: warp_core::ui::theme::Fill = theme.ui_error_color().into(); + let red: galaxy_core::ui::theme::Fill = theme.ui_error_color().into(); red.with_opacity(50).into() }; let border_color = theme.ui_error_color(); diff --git a/app/src/terminal/view/ambient_agent/harness_selector.rs b/app/src/terminal/view/ambient_agent/harness_selector.rs index f7c86c7a..2cf8a50f 100644 --- a/app/src/terminal/view/ambient_agent/harness_selector.rs +++ b/app/src/terminal/view/ambient_agent/harness_selector.rs @@ -5,7 +5,7 @@ use std::sync::Arc; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, OffsetPositioning, ParentAnchor, ParentElement as _, ParentOffsetBounds, Stack, @@ -14,10 +14,10 @@ use warpui::{ ViewHandle, }; -use warp_cli::agent::Harness; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; +use galaxy_cli::agent::Harness; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; use crate::ai::blocklist::agent_view::agent_input_footer::AgentInputButtonTheme; use crate::ai::harness_display::{display_name, icon_for}; diff --git a/app/src/terminal/view/ambient_agent/host_selector.rs b/app/src/terminal/view/ambient_agent/host_selector.rs index ddf585cd..25c85540 100644 --- a/app/src/terminal/view/ambient_agent/host_selector.rs +++ b/app/src/terminal/view/ambient_agent/host_selector.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, OffsetPositioning, ParentAnchor, ParentElement as _, ParentOffsetBounds, Stack, @@ -11,9 +11,9 @@ use warpui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; use crate::menu::{Event as MenuEvent, Menu, MenuItem, MenuItemFields}; use crate::terminal::input::{MenuPositioning, MenuPositioningProvider}; diff --git a/app/src/terminal/view/ambient_agent/loading_screen.rs b/app/src/terminal/view/ambient_agent/loading_screen.rs index f4bb9c84..e725bed6 100644 --- a/app/src/terminal/view/ambient_agent/loading_screen.rs +++ b/app/src/terminal/view/ambient_agent/loading_screen.rs @@ -1,22 +1,22 @@ //! Loading screen UI for cloud mode initialization. use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::AnsiColorIdentifier; -use warp_core::ui::Icon; -use warpui::elements::shimmering_text::ShimmeringTextStateHandle; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxy_core::ui::Icon; +use galaxyui::elements::shimmering_text::ShimmeringTextStateHandle; +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CrossAxisAlignment, Element, Expanded, Flex, FormattedTextElement, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, SelectableArea, SelectionHandle, Text, }; -use warpui::fonts::Properties; -use warpui::fonts::Weight; -use warpui::prelude::{CornerRadius, Radius}; -use warpui::text_layout::TextAlignment; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::UiComponent; -use warpui::{AppContext, ModelHandle, SingletonEntity}; +use galaxyui::fonts::Properties; +use galaxyui::fonts::Weight; +use galaxyui::prelude::{CornerRadius, Radius}; +use galaxyui::text_layout::TextAlignment; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{AppContext, ModelHandle, SingletonEntity}; use crate::ai::agent_tips::{AITip, AITipModel}; use crate::ai::loading::shimmering_warp_loading_text; @@ -67,7 +67,7 @@ pub fn render_cloud_mode_loading_screen( .with_hyperlink_font_color(theme.accent().into()) .set_selectable(true) .register_default_click_handlers_with_action_support(|link, _evt, app| { - use warpui::elements::HyperlinkLens; + use galaxyui::elements::HyperlinkLens; if let HyperlinkLens::Url(url) = link { app.open_url(url); } @@ -182,7 +182,7 @@ fn render_tier_limits_footer( .with_alignment(TextAlignment::Center) .with_hyperlink_font_color(theme.accent().into()) .register_default_click_handlers_with_action_support(|link, _evt, app| { - use warpui::elements::HyperlinkLens; + use galaxyui::elements::HyperlinkLens; if let HyperlinkLens::Url(url) = link { app.open_url(url); } @@ -193,7 +193,7 @@ fn render_tier_limits_footer( let icon_size = footer_font_size; let info_icon = ConstrainedBox::new( Icon::Info - .to_warpui_icon(blended_colors::text_sub(theme, theme.surface_1()).into()) + .to_galaxyui_icon(blended_colors::text_sub(theme, theme.surface_1()).into()) .finish(), ) .with_width(icon_size) @@ -225,7 +225,7 @@ pub fn render_cloud_mode_error_screen( // Error icon with fixed size constraints - using AlertTriangle icon let error_icon = ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(error_color.into()) + .to_galaxyui_icon(error_color.into()) .finish(), ) .with_width(ERROR_ICON_SIZE) @@ -274,7 +274,7 @@ pub fn render_cloud_mode_error_screen( .finish(); // Red bordered container with 10% opacity background - let error_background = warp_core::ui::color::coloru_with_opacity(error_color.into(), 10); + let error_background = galaxy_core::ui::color::coloru_with_opacity(error_color.into(), 10); let error_container = Container::new(content) .with_background(error_background) @@ -317,7 +317,7 @@ pub fn render_cloud_mode_github_auth_required_screen( let border_color = blended_colors::neutral_4(theme); // Info icon with fixed size constraints - let auth_icon = ConstrainedBox::new(Icon::Info.to_warpui_icon(accent_color).finish()) + let auth_icon = ConstrainedBox::new(Icon::Info.to_galaxyui_icon(accent_color).finish()) .with_width(ERROR_ICON_SIZE) .with_height(ERROR_ICON_SIZE) .finish(); @@ -364,7 +364,7 @@ pub fn render_cloud_mode_github_auth_required_screen( .finish(); // Dark background (surface_2) with subtle border - let auth_background: warpui::elements::Fill = theme.surface_2().into(); + let auth_background: galaxyui::elements::Fill = theme.surface_2().into(); let auth_container = Container::new(content) .with_background(auth_background) @@ -402,7 +402,7 @@ pub fn render_cloud_mode_cancelled_screen(appearance: &Appearance) -> Box Box Box { let check_icon = ConstrainedBox::new( Icon::Check - .to_warpui_icon(theme.main_text_color(background)) + .to_galaxyui_icon(theme.main_text_color(background)) .finish(), ) .with_width(ICON_SIZE) diff --git a/app/src/terminal/view/ambient_agent/progress_ui_state.rs b/app/src/terminal/view/ambient_agent/progress_ui_state.rs index b2bc4dde..d6e18d72 100644 --- a/app/src/terminal/view/ambient_agent/progress_ui_state.rs +++ b/app/src/terminal/view/ambient_agent/progress_ui_state.rs @@ -1,8 +1,8 @@ //! UI state for the ambient agent progress/loading screen. -use warpui::elements::shimmering_text::ShimmeringTextStateHandle; -use warpui::elements::{MouseStateHandle, SelectionHandle}; -use warpui::ModelHandle; +use galaxyui::elements::shimmering_text::ShimmeringTextStateHandle; +use galaxyui::elements::{MouseStateHandle, SelectionHandle}; +use galaxyui::ModelHandle; use crate::ai::agent_tips::AITipModel; use crate::terminal::view::ambient_agent::model::AmbientAgentViewModel; @@ -29,7 +29,7 @@ pub struct AmbientAgentProgressUIState { impl AmbientAgentProgressUIState { /// Creates a new ambient agent progress UI state with initialized handles. - pub fn new(ctx: &mut warpui::ModelContext) -> Self { + pub fn new(ctx: &mut galaxyui::ModelContext) -> Self { let tip_model = ctx.add_model(|_ctx| { use crate::terminal::view::ambient_agent; AITipModel::new(ambient_agent::get_cloud_mode_tips()) diff --git a/app/src/terminal/view/ambient_agent/tips.rs b/app/src/terminal/view/ambient_agent/tips.rs index 7fade2f9..70f4e065 100644 --- a/app/src/terminal/view/ambient_agent/tips.rs +++ b/app/src/terminal/view/ambient_agent/tips.rs @@ -1,8 +1,8 @@ //! Tips for cloud mode loading screen. use crate::ai::agent_tips::AITip; -use warpui::keymap::Keystroke; -use warpui::AppContext; +use galaxyui::keymap::Keystroke; +use galaxyui::AppContext; /// A cloud mode tip with text and optional link. #[derive(Clone, Debug)] diff --git a/app/src/terminal/view/ambient_agent/view_impl.rs b/app/src/terminal/view/ambient_agent/view_impl.rs index f8817c19..6442c088 100644 --- a/app/src/terminal/view/ambient_agent/view_impl.rs +++ b/app/src/terminal/view/ambient_agent/view_impl.rs @@ -2,14 +2,14 @@ use std::cell::Cell; use std::rc::Rc; -use warp_cli::agent::Harness; -use warp_terminal::model::BlockId; +use galaxy_cli::agent::Harness; +use galaxy_terminal::model::BlockId; use crate::ai::agent::conversation::{AIConversationId, ConversationStatus}; use crate::ai::AIRequestUsageModel; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warpui::prelude::{Empty, Vector2F}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::prelude::{Empty, Vector2F}; use crate::ai::ambient_agents::telemetry::{CloudAgentTelemetryEvent, CloudModeEntryPoint}; use crate::ai::blocklist::{agent_view::AgentViewEntryOrigin, BlocklistAIHistoryModel}; @@ -22,9 +22,9 @@ use crate::terminal::view::TerminalView; use crate::terminal::CLIAgent; use crate::workspace::view::cloud_agent_capacity_modal::CloudAgentCapacityModalVariant; use crate::workspaces::user_workspaces::UserWorkspaces; -use warp_core::ui::appearance::Appearance; -use warpui::elements::Align; -use warpui::{AppContext, Element, EntityId, SingletonEntity, ViewContext}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::Align; +use galaxyui::{AppContext, Element, EntityId, SingletonEntity, ViewContext}; use super::loading_screen::{ render_cloud_mode_cancelled_screen, render_cloud_mode_error_screen, diff --git a/app/src/terminal/view/block_banner/mod.rs b/app/src/terminal/view/block_banner/mod.rs index e2de8ace..3f4b005d 100644 --- a/app/src/terminal/view/block_banner/mod.rs +++ b/app/src/terminal/view/block_banner/mod.rs @@ -9,7 +9,7 @@ mod warpify; pub use warpify::*; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, Hoverable, MouseState, MouseStateHandle, ParentElement, Radius, Stack, diff --git a/app/src/terminal/view/block_banner/warpify.rs b/app/src/terminal/view/block_banner/warpify.rs index fe20a1cd..9473de80 100644 --- a/app/src/terminal/view/block_banner/warpify.rs +++ b/app/src/terminal/view/block_banner/warpify.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Flex, HighlightedHyperlink, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/terminal/view/block_onboarding/onboarding_agentic_suggestions_block.rs b/app/src/terminal/view/block_onboarding/onboarding_agentic_suggestions_block.rs index 09a2ae74..82480bae 100644 --- a/app/src/terminal/view/block_onboarding/onboarding_agentic_suggestions_block.rs +++ b/app/src/terminal/view/block_onboarding/onboarding_agentic_suggestions_block.rs @@ -18,18 +18,18 @@ use markdown_parser::FormattedTextFragment; use markdown_parser::FormattedTextLine; use regex::Regex; use serde::{Deserialize, Serialize}; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::CornerRadius; -use warpui::elements::CrossAxisAlignment; -use warpui::elements::FormattedTextElement; -use warpui::elements::Radius; -use warpui::keymap::Keystroke; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::components::UiComponentStyles; -use warpui::TypedActionView; -use warpui::WeakViewHandle; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::CornerRadius; +use galaxyui::elements::CrossAxisAlignment; +use galaxyui::elements::FormattedTextElement; +use galaxyui::elements::Radius; +use galaxyui::keymap::Keystroke; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::TypedActionView; +use galaxyui::WeakViewHandle; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Text, Wrap, @@ -444,7 +444,7 @@ impl OnboardingAgenticSuggestionsBlock { self.agent_suggestions[index] .0 .icon - .to_warpui_icon(main_text_color) + .to_galaxyui_icon(main_text_color) .finish(), ) .with_height(KEYBOARD_ICON_SIZE) @@ -526,7 +526,7 @@ impl OnboardingAgenticSuggestionsBlock { // Use a more muted background for disabled state theme.surface_1() } else { - warp_core::ui::theme::Fill::Solid(internal_colors::neutral_1(theme)) + galaxy_core::ui::theme::Fill::Solid(internal_colors::neutral_1(theme)) }; let mut button_content = @@ -638,7 +638,7 @@ impl OnboardingAgenticSuggestionsBlock { Container::new( ConstrainedBox::new( UIIcon::Icon::Loading - .to_warpui_icon(ai_brand_color(appearance.theme()).into()) + .to_galaxyui_icon(ai_brand_color(appearance.theme()).into()) .finish(), ) .with_height(icon_size) diff --git a/app/src/terminal/view/block_onboarding/onboarding_drive_sharing_block.rs b/app/src/terminal/view/block_onboarding/onboarding_drive_sharing_block.rs index deba80dc..1d81a4bd 100644 --- a/app/src/terminal/view/block_onboarding/onboarding_drive_sharing_block.rs +++ b/app/src/terminal/view/block_onboarding/onboarding_drive_sharing_block.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Border, Container, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Text, @@ -118,7 +118,7 @@ impl View for OnboardingDriveSharingBlock { TextAndIcon::new( TextAndIconAlignment::IconFirst, button_label, - Icon::Share.to_warpui_icon(appearance.theme().background()), + Icon::Share.to_galaxyui_icon(appearance.theme().background()), MainAxisSize::Min, MainAxisAlignment::SpaceEvenly, vec2f(BUTTON_FONT_SIZE, BUTTON_FONT_SIZE), diff --git a/app/src/terminal/view/block_onboarding/onboarding_prompt_block.rs b/app/src/terminal/view/block_onboarding/onboarding_prompt_block.rs index 6243a623..addc4e5d 100644 --- a/app/src/terminal/view/block_onboarding/onboarding_prompt_block.rs +++ b/app/src/terminal/view/block_onboarding/onboarding_prompt_block.rs @@ -12,7 +12,7 @@ use crate::terminal::view::block_onboarding::util; use crate::terminal::SizeInfo; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use settings::Setting as _; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, Clipped, ConstrainedBox, Container, CornerRadius, Flex, FormattedTextElement, HighlightedHyperlink, Hoverable, HyperlinkUrl, MainAxisAlignment, @@ -108,7 +108,7 @@ impl OnboardingPromptBlock { let mut confirm_button = appearance .ui_builder() .button( - warpui::ui_components::button::ButtonVariant::Accent, + galaxyui::ui_components::button::ButtonVariant::Accent, self.mouse_state_handle_confirm.clone(), ) .with_style(UiComponentStyles { diff --git a/app/src/terminal/view/block_onboarding/util.rs b/app/src/terminal/view/block_onboarding/util.rs index 15f3815c..802b8c39 100644 --- a/app/src/terminal/view/block_onboarding/util.rs +++ b/app/src/terminal/view/block_onboarding/util.rs @@ -2,11 +2,11 @@ use crate::appearance::Appearance; use crate::editor::EditorView; use crate::ui_components::icons::Icon; use pathfinder_color::ColorU; -use warp_core::ui::theme::Fill; -use warpui::elements::{Flex, ParentElement}; -use warpui::ui_components::components::Coords; -use warpui::ui_components::text_input::TextInput; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{Flex, ParentElement}; +use galaxyui::ui_components::components::Coords; +use galaxyui::ui_components::text_input::TextInput; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, MouseStateHandle, Radius, Shrinkable, @@ -19,7 +19,7 @@ use warpui::{ }, Action, AppContext, Element, }; -use warpui::{SingletonEntity, ViewHandle}; +use galaxyui::{SingletonEntity, ViewHandle}; pub const INPUT_BOX_FONT_SIZE: f32 = 14.; pub const TEAM_BLOCK_INITIAL_HEIGHT: f32 = 92.; @@ -161,7 +161,7 @@ pub fn render_input_row( } else { ConstrainedBox::new( Icon::Check - .to_warpui_icon(Fill::Solid(ColorU::new(11, 142, 71, 255))) + .to_galaxyui_icon(Fill::Solid(ColorU::new(11, 142, 71, 255))) .finish(), ) .with_width(24.) diff --git a/app/src/terminal/view/bookmarks.rs b/app/src/terminal/view/bookmarks.rs index 8c7d034e..4571ee5e 100644 --- a/app/src/terminal/view/bookmarks.rs +++ b/app/src/terminal/view/bookmarks.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{Border, ConstrainedBox, Container, CornerRadius, Flex, ParentElement, Radius}, fonts::Weight, ui_components::components::{UiComponent, UiComponentStyles}, diff --git a/app/src/terminal/view/docker_sandbox/mod.rs b/app/src/terminal/view/docker_sandbox/mod.rs index 8b57d917..8f9b00b8 100644 --- a/app/src/terminal/view/docker_sandbox/mod.rs +++ b/app/src/terminal/view/docker_sandbox/mod.rs @@ -2,12 +2,12 @@ use std::sync::mpsc::SyncSender; #[cfg(feature = "local_tty")] -use warpui::geometry::vector::Vector2F; +use galaxyui::geometry::vector::Vector2F; #[cfg(feature = "local_tty")] -use warpui::ModelHandle; -use warpui::ViewContext; +use galaxyui::ModelHandle; +use galaxyui::ViewContext; #[cfg(not(target_family = "wasm"))] -use warpui::{SingletonEntity, View, ViewHandle}; +use galaxyui::{SingletonEntity, View, ViewHandle}; #[cfg(feature = "local_tty")] use crate::pane_group::TerminalViewResources; @@ -35,9 +35,9 @@ use crate::terminal::local_tty::docker_sandbox::DOCKER_SANDBOX_HOME_DIR; #[cfg(feature = "remote_tty")] use crate::terminal::remote_tty::TerminalManager as RemoteTtyTerminalManager; #[cfg(not(target_family = "wasm"))] -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; #[cfg(not(target_family = "wasm"))] -use warpui::r#async::FutureExt; +use galaxyui::r#async::FutureExt; use super::TerminalView; diff --git a/app/src/terminal/view/init.rs b/app/src/terminal/view/init.rs index bb1e612f..6c10682d 100644 --- a/app/src/terminal/view/init.rs +++ b/app/src/terminal/view/init.rs @@ -31,11 +31,11 @@ use crate::{ terminal::TerminalView, util::bindings::CustomAction, }; -use warp_core::context_flag::ContextFlag; -use warpui::keymap::ContextPredicate; -use warpui::keymap::{BindingDescription, PerPlatformKeystroke}; -use warpui::platform::OperatingSystem; -use warpui::{ +use galaxy_core::context_flag::ContextFlag; +use galaxyui::keymap::ContextPredicate; +use galaxyui::keymap::{BindingDescription, PerPlatformKeystroke}; +use galaxyui::platform::OperatingSystem; +use galaxyui::{ keymap::{EditableBinding, FixedBinding}, units::IntoLines, AppContext, @@ -65,7 +65,7 @@ pub const ROOT_CLOUD_MODE_PANE_KEY: &str = "RootCloudModePane"; /// these into their own function to ensure we pay special attention to /// these overlaps, and ensure only 1 action is taken. fn init_overlapping_keybindings(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; let escape_key: &str = "escape"; let cmd_or_ctrl_enter: &str = "cmdorctrl-enter"; @@ -98,7 +98,7 @@ fn init_overlapping_keybindings(app: &mut AppContext) { /// Register keybindings for [`TerminalView`] actions. pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_binding_validator::(is_binding_pty_compliant); @@ -199,7 +199,7 @@ pub fn init(app: &mut AppContext) { // On the web, we get pastes from system paste events. #[cfg(target_family = "wasm")] FixedBinding::standard( - warpui::actions::StandardAction::Paste, + galaxyui::actions::StandardAction::Paste, TerminalAction::Paste, id!("Terminal") & !id!("IMEOpen"), ), @@ -1106,7 +1106,7 @@ pub fn init(app: &mut AppContext) { /// Registers bindings related to input modes. fn register_input_mode_bindings(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // A context predicate that matches when the input mode bindings are // available for use. Disabled when a CLI agent session is active — the diff --git a/app/src/terminal/view/init_environment/mod.rs b/app/src/terminal/view/init_environment/mod.rs index a4ad557e..398996e6 100644 --- a/app/src/terminal/view/init_environment/mod.rs +++ b/app/src/terminal/view/init_environment/mod.rs @@ -10,11 +10,11 @@ use crate::ai::blocklist::inline_action::inline_action_header::{ use crate::ai::blocklist::inline_action::inline_action_icons::cancelled_icon; use crate::ai::blocklist::inline_action::requested_action::RenderableAction; use crate::appearance::Appearance; -use warpui::elements::{ +use galaxyui::elements::{ ChildView, Container, CornerRadius, CrossAxisAlignment, Flex, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::{ +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/terminal/view/init_environment/mode_selector.rs b/app/src/terminal/view/init_environment/mode_selector.rs index 547ab692..cee746c2 100644 --- a/app/src/terminal/view/init_environment/mode_selector.rs +++ b/app/src/terminal/view/init_environment/mode_selector.rs @@ -2,18 +2,18 @@ use crate::appearance::Appearance; use crate::ui_components::icons::Icon; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{ +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, DropShadow, Element, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::{FixedBinding, Keystroke}; -use warpui::platform::Cursor; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::{FixedBinding, Keystroke}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Entity, SingletonEntity, TypedActionView, View, ViewContext}; // Figma node 6583:23542 const MODAL_WIDTH: f32 = 441.; @@ -73,7 +73,7 @@ pub struct EnvironmentSetupModeSelector { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::new( @@ -227,7 +227,7 @@ impl EnvironmentSetupModeSelector { (base_background, base_border) }; - let avatar_icon = ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + let avatar_icon = ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(AVATAR_ICON_SIZE) .with_height(AVATAR_ICON_SIZE) .finish(); diff --git a/app/src/terminal/view/init_project/lsp_server_selector.rs b/app/src/terminal/view/init_project/lsp_server_selector.rs index ca2a8389..c57943c0 100644 --- a/app/src/terminal/view/init_project/lsp_server_selector.rs +++ b/app/src/terminal/view/init_project/lsp_server_selector.rs @@ -7,7 +7,7 @@ use crate::ui_components::blended_colors; use lsp::supported_servers::LSPServerType; use std::path::PathBuf; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, diff --git a/app/src/terminal/view/init_project/mod.rs b/app/src/terminal/view/init_project/mod.rs index 06e63209..f76a3bb0 100644 --- a/app/src/terminal/view/init_project/mod.rs +++ b/app/src/terminal/view/init_project/mod.rs @@ -27,8 +27,8 @@ use lsp_server_selector::{create_lsp_server_selector, LSPServerInfo}; pub use model::{InitProjectModel, InitProjectModelEvent, InitStepKind}; use model::{InitStepData, InitStepStatus}; use std::path::{Path, PathBuf}; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ Border, ChildView, Container, CrossAxisAlignment, Empty, Flex, MouseStateHandle, ParentElement, Text, @@ -493,7 +493,7 @@ impl InitStepBlock { /// Renders a success completion state with check icon. fn render_success_completion(text: &str, app: &AppContext) -> Box { RenderableAction::new(text, app) - .with_icon(Icon::Check.to_warpui_icon(Fill::success()).finish()) + .with_icon(Icon::Check.to_galaxyui_icon(Fill::success()).finish()) .with_content_item_spacing() .render(app) .finish() @@ -502,7 +502,7 @@ impl InitStepBlock { /// Renders a skipped/cancelled completion state with X icon. fn render_skipped_completion(text: &str, app: &AppContext) -> Box { RenderableAction::new(text, app) - .with_icon(Icon::X.to_warpui_icon(Fill::error()).finish()) + .with_icon(Icon::X.to_galaxyui_icon(Fill::error()).finish()) .with_content_item_spacing() .render(app) .finish() @@ -669,7 +669,7 @@ impl InitStepBlock { match indexing_result { CodebaseIndexingResult::Accepted => { RenderableAction::new("Codebase index started", app) - .with_icon(Icon::Check.to_warpui_icon(Fill::success()).finish()) + .with_icon(Icon::Check.to_galaxyui_icon(Fill::success()).finish()) .with_action_button( Appearance::as_ref(app) .ui_builder() @@ -925,7 +925,7 @@ impl InitStepBlock { button_disabled, .. } => { let mut action = RenderableAction::new("Project rules configured", app) - .with_icon(Icon::Check.to_warpui_icon(Fill::success()).finish()); + .with_icon(Icon::Check.to_galaxyui_icon(Fill::success()).finish()); if init_completed { action = action.with_action_button(Self::regenerate_button( &mouse_states.regenerate_button, @@ -937,7 +937,7 @@ impl InitStepBlock { } ProjectScopedRulesResult::AlreadyExists { button_disabled } => { let mut action = RenderableAction::new("Project rules already configured", app) - .with_icon(Icon::Check.to_warpui_icon(Fill::success()).finish()); + .with_icon(Icon::Check.to_galaxyui_icon(Fill::success()).finish()); if init_completed { action = action.with_action_button(Self::regenerate_button( &mouse_states.regenerate_button, diff --git a/app/src/terminal/view/init_project/model.rs b/app/src/terminal/view/init_project/model.rs index 966d3b5c..3e4d912e 100644 --- a/app/src/terminal/view/init_project/model.rs +++ b/app/src/terminal/view/init_project/model.rs @@ -6,7 +6,7 @@ use enum_iterator::Sequence; use lsp::supported_servers::LSPServerType; #[cfg(not(target_family = "wasm"))] use repo_metadata::repositories::DetectedRepositories; -use warpui::{Entity, ModelContext, SingletonEntity as _}; +use galaxyui::{Entity, ModelContext, SingletonEntity as _}; use crate::{ ai::persisted_workspace::PersistedWorkspace, @@ -176,7 +176,7 @@ impl InitProjectModel { } /// Check if there are any steps that need user action - pub fn should_have_available_steps(path: &Path, ctx: &warpui::AppContext) -> bool { + pub fn should_have_available_steps(path: &Path, ctx: &galaxyui::AppContext) -> bool { // Note that we consider auto-indexing setting to true to satisfy the codebase context step. // This avoids the potential race condition with the banner showing just when we start auto-indexing. let has_pending_codebase_context = UserWorkspaces::as_ref(ctx) diff --git a/app/src/terminal/view/inline_banner/agent_mode_setup.rs b/app/src/terminal/view/inline_banner/agent_mode_setup.rs index ea60e70e..8de07e77 100644 --- a/app/src/terminal/view/inline_banner/agent_mode_setup.rs +++ b/app/src/terminal/view/inline_banner/agent_mode_setup.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use warpui::{ +use galaxyui::{ elements::{MouseStateHandle, Text}, Element, }; diff --git a/app/src/terminal/view/inline_banner/alias_expansion.rs b/app/src/terminal/view/inline_banner/alias_expansion.rs index 4bb9545d..7807c8e7 100644 --- a/app/src/terminal/view/inline_banner/alias_expansion.rs +++ b/app/src/terminal/view/inline_banner/alias_expansion.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{MouseStateHandle, Text}, Element, }; diff --git a/app/src/terminal/view/inline_banner/anonymous_user_ai_sign_up.rs b/app/src/terminal/view/inline_banner/anonymous_user_ai_sign_up.rs index eee2c18f..62b5dc11 100644 --- a/app/src/terminal/view/inline_banner/anonymous_user_ai_sign_up.rs +++ b/app/src/terminal/view/inline_banner/anonymous_user_ai_sign_up.rs @@ -2,15 +2,15 @@ use crate::appearance::Appearance; use crate::terminal::view::{InlineBannerId, TerminalAction}; use crate::ui_components::buttons::icon_button; use crate::ui_components::icons::Icon as UiIcon; -use warpui::elements::{ +use galaxyui::elements::{ Container, CornerRadius, CrossAxisAlignment, Flex, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, Text, }; -use warpui::ui_components::{ +use galaxyui::ui_components::{ button::ButtonVariant, components::{Coords, UiComponent, UiComponentStyles}, }; -use warpui::Element; +use galaxyui::Element; use super::{ INLINE_BANNER_BUTTON_HOVER_OPACITY, INLINE_BANNER_BUTTON_PADDING, @@ -81,7 +81,7 @@ fn render_three_column_inline_banner( let active_text_color = theme.active_ui_text_color().into_solid(); let content_text_color = theme.nonactive_ui_text_color().into_solid(); - let hover_background_fill = warpui::elements::Fill::from( + let hover_background_fill = galaxyui::elements::Fill::from( theme .active_ui_text_color() .with_opacity(INLINE_BANNER_BUTTON_HOVER_OPACITY), @@ -122,7 +122,7 @@ fn render_three_column_inline_banner( let icon_color = active_text_color; let icon_column = Container::new( - warpui::elements::ConstrainedBox::new( + galaxyui::elements::ConstrainedBox::new( Icon::new("bundled/svg/info.svg", icon_color).finish(), ) .with_width(icon_width) @@ -179,8 +179,8 @@ fn render_three_column_inline_banner( let button_styles = UiComponentStyles { font_color: Some(active_text_color), font_size: Some(button_text_size), - font_weight: Some(warpui::fonts::Weight::Semibold), - border_color: Some(warpui::elements::Fill::Solid(content_text_color)), + font_weight: Some(galaxyui::fonts::Weight::Semibold), + border_color: Some(galaxyui::elements::Fill::Solid(content_text_color)), border_width: Some(1.0), border_radius: Some(CornerRadius::with_all(Radius::Pixels( INLINE_BANNER_BUTTON_PADDING, diff --git a/app/src/terminal/view/inline_banner/aws_bedrock_login.rs b/app/src/terminal/view/inline_banner/aws_bedrock_login.rs index 2559e076..5e8ce0e5 100644 --- a/app/src/terminal/view/inline_banner/aws_bedrock_login.rs +++ b/app/src/terminal/view/inline_banner/aws_bedrock_login.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, Element}; +use galaxyui::{elements::MouseStateHandle, Element}; use crate::{appearance::Appearance, terminal::view::TerminalAction}; @@ -62,7 +62,7 @@ pub fn render_aws_bedrock_login_banner( }); // Use sub_text_color for description to differentiate from title - let description_text = warpui::elements::Text::new( + let description_text = galaxyui::elements::Text::new( "Your Warp admin has enabled AWS Bedrock for your team.", appearance.ui_font_family(), appearance.monospace_font_size() - 2., diff --git a/app/src/terminal/view/inline_banner/aws_cli_not_installed.rs b/app/src/terminal/view/inline_banner/aws_cli_not_installed.rs index 3521f7b3..6464bfa3 100644 --- a/app/src/terminal/view/inline_banner/aws_cli_not_installed.rs +++ b/app/src/terminal/view/inline_banner/aws_cli_not_installed.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, Element}; +use galaxyui::{elements::MouseStateHandle, Element}; use crate::{appearance::Appearance, terminal::view::TerminalAction}; @@ -65,7 +65,7 @@ pub fn render_aws_cli_not_installed_banner( mouse_state_handle: state.dismiss_button_mouse_state.clone(), }); - let description_text = warpui::elements::Text::new( + let description_text = galaxyui::elements::Text::new( "The AWS CLI is required to authenticate with your organization's AWS Bedrock. Install it to continue.", appearance.ui_font_family(), appearance.monospace_font_size() - 2., diff --git a/app/src/terminal/view/inline_banner/mod.rs b/app/src/terminal/view/inline_banner/mod.rs index 9de93845..53d8bcd7 100644 --- a/app/src/terminal/view/inline_banner/mod.rs +++ b/app/src/terminal/view/inline_banner/mod.rs @@ -34,8 +34,8 @@ pub use ssh::*; pub use vim_mode::*; use pathfinder_color::ColorU; -use warpui::elements::Clipped; -use warpui::{ +use galaxyui::elements::Clipped; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, SavePosition, @@ -187,7 +187,7 @@ fn render_inline_block_list_banner( let theme = appearance.theme(); let title_font_size = appearance.ui_font_size() + 1.; let button_text_size = title_font_size; - let hover_background_fill = warpui::elements::Fill::from( + let hover_background_fill = galaxyui::elements::Fill::from( theme .active_ui_text_color() .with_opacity(INLINE_BANNER_BUTTON_HOVER_OPACITY), @@ -413,7 +413,7 @@ fn render_inline_banner_text_button( font_color: Some(coloru_with_opacity(button_info.text_color, text_opacity)), font_family_id: button_info.font.family, font_weight: button_info.font.weight, - border_color: Some(warpui::elements::Fill::Solid(coloru_with_opacity( + border_color: Some(galaxyui::elements::Fill::Solid(coloru_with_opacity( button_info.text_color, text_opacity, ))), diff --git a/app/src/terminal/view/inline_banner/notifications_discovery.rs b/app/src/terminal/view/inline_banner/notifications_discovery.rs index 751ecf9e..ef9ff7ea 100644 --- a/app/src/terminal/view/inline_banner/notifications_discovery.rs +++ b/app/src/terminal/view/inline_banner/notifications_discovery.rs @@ -1,5 +1,5 @@ use serde::Serialize; -use warpui::{elements::MouseStateHandle, notification::RequestPermissionsOutcome, Element}; +use galaxyui::{elements::MouseStateHandle, notification::RequestPermissionsOutcome, Element}; use crate::{ appearance::Appearance, diff --git a/app/src/terminal/view/inline_banner/notifications_error.rs b/app/src/terminal/view/inline_banner/notifications_error.rs index 0c23c05d..af200492 100644 --- a/app/src/terminal/view/inline_banner/notifications_error.rs +++ b/app/src/terminal/view/inline_banner/notifications_error.rs @@ -1,5 +1,5 @@ use serde::Serialize; -use warpui::{elements::MouseStateHandle, Element}; +use galaxyui::{elements::MouseStateHandle, Element}; use crate::{ appearance::Appearance, @@ -11,7 +11,7 @@ use super::{ InlineBannerContent, InlineBannerStyle, InlineBannerTextButton, InlineBannerTextButtonVariant, }; -use warpui::notification::NotificationSendError; +use galaxyui::notification::NotificationSendError; #[derive(Clone, Copy, Debug, Serialize)] pub enum NotificationsErrorBannerAction { diff --git a/app/src/terminal/view/inline_banner/open_in_warp.rs b/app/src/terminal/view/inline_banner/open_in_warp.rs index 555e7091..701774ff 100644 --- a/app/src/terminal/view/inline_banner/open_in_warp.rs +++ b/app/src/terminal/view/inline_banner/open_in_warp.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warpui::{elements::MouseStateHandle, fonts::Weight, Element, EntityId}; +use galaxyui::{elements::MouseStateHandle, fonts::Weight, Element, EntityId}; use crate::{ appearance::Appearance, diff --git a/app/src/terminal/view/inline_banner/passive_code_diff.rs b/app/src/terminal/view/inline_banner/passive_code_diff.rs index d8ee441a..43ce3d72 100644 --- a/app/src/terminal/view/inline_banner/passive_code_diff.rs +++ b/app/src/terminal/view/inline_banner/passive_code_diff.rs @@ -1,5 +1,5 @@ -use warpui::elements::{Border, ChildView, Container}; -use warpui::{AppContext, Element, Entity, SingletonEntity, View, ViewHandle}; +use galaxyui::elements::{Border, ChildView, Container}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, View, ViewHandle}; use crate::ai::blocklist::inline_action::code_diff_view::CodeDiffView; use crate::ai::blocklist::inline_action::inline_action_header::INLINE_ACTION_HORIZONTAL_PADDING; diff --git a/app/src/terminal/view/inline_banner/prompt_suggestions.rs b/app/src/terminal/view/inline_banner/prompt_suggestions.rs index 2cada938..e2e215ae 100644 --- a/app/src/terminal/view/inline_banner/prompt_suggestions.rs +++ b/app/src/terminal/view/inline_banner/prompt_suggestions.rs @@ -13,26 +13,26 @@ use crate::settings::InputSettings; use crate::terminal::view::passive_suggestions::PromptSuggestionResolution; use crate::util::bindings::keybinding_name_to_keystroke; use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ +use galaxyui::elements::{ ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Fill, Flex, HighlightedHyperlink, Hoverable, Icon, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Shrinkable, Stack, Text, }; -use warpui::keymap::Keystroke; -use warpui::platform::Cursor; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{elements::MouseStateHandle, Element}; -use warpui::{ +use galaxyui::keymap::Keystroke; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{elements::MouseStateHandle, Element}; +use galaxyui::{ AppContext, Entity, EventContext, ModelHandle, TypedActionView, ViewContext, ViewHandle, }; -use warpui::{SingletonEntity, View}; +use galaxyui::{SingletonEntity, View}; use crate::terminal::view::{ContextMenuAction, InputType, PromptSuggestion}; use crate::ui_components::blended_colors; use crate::{appearance::Appearance, terminal::view::TerminalAction}; -use warp_core::channel::ChannelState; -use warp_core::ui::theme::color::internal_colors::{neutral_2, neutral_3}; +use galaxy_core::channel::ChannelState; +use galaxy_core::ui::theme::color::internal_colors::{neutral_2, neutral_3}; use crate::ui_components::icons::Icon as WarpUIIcon; @@ -412,7 +412,7 @@ impl View for PromptSuggestionsView { 0, keybinding_name_to_keystroke(ACCEPT_PROMPT_SUGGESTION_KEYBINDING, app), banner_state.accept_button_mouse_state.clone(), - Rc::new(move |ctx: &mut warpui::EventContext<'_>| { + Rc::new(move |ctx: &mut galaxyui::EventContext<'_>| { ctx.dispatch_typed_action(TerminalAction::ResolvePromptSuggestion( PromptSuggestionResolution::Accept { interaction_source: InteractionSource::Button, diff --git a/app/src/terminal/view/inline_banner/session_state.rs b/app/src/terminal/view/inline_banner/session_state.rs index 784f0bbe..5edc3967 100644 --- a/app/src/terminal/view/inline_banner/session_state.rs +++ b/app/src/terminal/view/inline_banner/session_state.rs @@ -1,6 +1,6 @@ use crate::settings::{AISettings, AISettingsChangedEvent}; use settings::Setting; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; /// Tracks whether the BYO LLM auth banner (e.g., AWS Bedrock login) has been dismissed. /// diff --git a/app/src/terminal/view/inline_banner/shared_sessions.rs b/app/src/terminal/view/inline_banner/shared_sessions.rs index 0db6782b..9c7ef3f2 100644 --- a/app/src/terminal/view/inline_banner/shared_sessions.rs +++ b/app/src/terminal/view/inline_banner/shared_sessions.rs @@ -1,6 +1,6 @@ //! The rendering logic for shared session banners. use chrono::{DateTime, Datelike, Local}; -use warpui::{ +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisSize, ParentElement, Radius, Rect, Shrinkable, Text, diff --git a/app/src/terminal/view/inline_banner/shell_process_terminated.rs b/app/src/terminal/view/inline_banner/shell_process_terminated.rs index 6e760c38..bfb15bbf 100644 --- a/app/src/terminal/view/inline_banner/shell_process_terminated.rs +++ b/app/src/terminal/view/inline_banner/shell_process_terminated.rs @@ -1,4 +1,4 @@ -use warpui::{elements::Text, Element}; +use galaxyui::{elements::Text, Element}; use crate::appearance::Appearance; diff --git a/app/src/terminal/view/inline_banner/ssh.rs b/app/src/terminal/view/inline_banner/ssh.rs index 41299887..e842415c 100644 --- a/app/src/terminal/view/inline_banner/ssh.rs +++ b/app/src/terminal/view/inline_banner/ssh.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, Element}; +use galaxyui::{elements::MouseStateHandle, Element}; use crate::{appearance::Appearance, terminal::view::TerminalAction}; diff --git a/app/src/terminal/view/inline_banner/vim_mode.rs b/app/src/terminal/view/inline_banner/vim_mode.rs index cf3b730b..a0041475 100644 --- a/app/src/terminal/view/inline_banner/vim_mode.rs +++ b/app/src/terminal/view/inline_banner/vim_mode.rs @@ -1,4 +1,4 @@ -use warpui::{elements::MouseStateHandle, Element}; +use galaxyui::{elements::MouseStateHandle, Element}; use crate::{appearance::Appearance, terminal::view::TerminalAction}; diff --git a/app/src/terminal/view/link_detection.rs b/app/src/terminal/view/link_detection.rs index 916bf825..f339b2d2 100644 --- a/app/src/terminal/view/link_detection.rs +++ b/app/src/terminal/view/link_detection.rs @@ -2,7 +2,7 @@ use std::ops::Deref; use serde::{Serialize, Serializer}; -use warpui::{platform::Cursor, ViewContext}; +use galaxyui::{platform::Cursor, ViewContext}; use crate::{ send_telemetry_from_ctx, @@ -27,8 +27,8 @@ cfg_if::cfg_if! { util::openable_file_type::FileTarget, }; use std::path::PathBuf; - use warp_util::path::CleanPathResult; - use warp_util::path::LineAndColumnArg; + use galaxy_util::path::CleanPathResult; + use galaxy_util::path::LineAndColumnArg; } } diff --git a/app/src/terminal/view/load_ai_conversation.rs b/app/src/terminal/view/load_ai_conversation.rs index b83b80f4..38381a29 100644 --- a/app/src/terminal/view/load_ai_conversation.rs +++ b/app/src/terminal/view/load_ai_conversation.rs @@ -2,8 +2,8 @@ use std::path::Path; use std::rc::Rc; use std::sync::Arc; use vec1::Vec1; -use warp_core::features::FeatureFlag; -use warpui::{EntityId, ViewContext}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{EntityId, ViewContext}; use super::blocklist_filter::exchanges_for_blocklist; use crate::ai::blocklist::agent_view::{ @@ -62,10 +62,10 @@ use crate::{ }, }, }; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use warp_multi_agent_api as api; -use warpui::units::IntoPixels; -use warpui::{ModelHandle, SingletonEntity}; +use galaxyui::units::IntoPixels; +use galaxyui::{ModelHandle, SingletonEntity}; /// Describes restore-context setup state for directory reconciliation and hinting. #[derive(Clone, Debug, PartialEq, Eq)] diff --git a/app/src/terminal/view/open_in_warp.rs b/app/src/terminal/view/open_in_warp.rs index 0ab868a0..dba86355 100644 --- a/app/src/terminal/view/open_in_warp.rs +++ b/app/src/terminal/view/open_in_warp.rs @@ -6,8 +6,8 @@ use std::{ use itertools::Itertools; use lazy_static::lazy_static; -use warp_util::path::EscapeChar; -use warpui::{ +use galaxy_util::path::EscapeChar; +use galaxyui::{ accessibility::{AccessibilityContent, ActionAccessibilityContent, WarpA11yRole}, SingletonEntity, ViewContext, }; @@ -25,7 +25,7 @@ use crate::{ util::openable_file_type::{is_file_openable_in_warp, OpenableFileType}, }; use settings::Setting as _; -use warp_completer::{ +use galaxy_completer::{ completer::TopLevelCommandCaseSensitivity, parsers::{ classify_command, diff --git a/app/src/terminal/view/open_in_warp_tests.rs b/app/src/terminal/view/open_in_warp_tests.rs index 15eae70d..9560fdae 100644 --- a/app/src/terminal/view/open_in_warp_tests.rs +++ b/app/src/terminal/view/open_in_warp_tests.rs @@ -1,7 +1,7 @@ use std::path::Path; -use warp_completer::completer::TopLevelCommandCaseSensitivity; -use warp_util::path::EscapeChar; +use galaxy_completer::completer::TopLevelCommandCaseSensitivity; +use galaxy_util::path::EscapeChar; use super::{check_openable_in_warp, OpenablePath}; use crate::util::openable_file_type::OpenableFileType; diff --git a/app/src/terminal/view/pane_impl.rs b/app/src/terminal/view/pane_impl.rs index 3af4358c..94f9661e 100644 --- a/app/src/terminal/view/pane_impl.rs +++ b/app/src/terminal/view/pane_impl.rs @@ -33,19 +33,19 @@ use crate::ui_components::buttons::icon_button_with_color; use crate::ui_components::icons; use crate::workspace::tab_settings::TabSettings; use settings::Setting as _; -use warp_core::context_flag::ContextFlag; -use warp_core::ui::Icon as WarpIcon; -use warpui::elements::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::ui::Icon as WarpIcon; +use galaxyui::elements::{ ChildAnchor, ConstrainedBox, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Shrinkable, Stack, }; -use warpui::prelude::{vec2f, ChildView, Container, Hoverable}; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::components::UiComponent; +use galaxyui::prelude::{vec2f, ChildView, Container, Hoverable}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::components::UiComponent; #[cfg(not(target_arch = "wasm32"))] -use warpui::ui_components::components::UiComponentStyles; -use warpui::WeakModelHandle; -use warpui::{AppContext, Element, ModelHandle, SingletonEntity, TypedActionView, ViewContext}; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::WeakModelHandle; +use galaxyui::{AppContext, Element, ModelHandle, SingletonEntity, TypedActionView, ViewContext}; impl TerminalView { /// Returns a reference to the focus handle if one has been set. @@ -228,7 +228,7 @@ impl TerminalView { /// Renders the back button for the pane header, or an empty element if the /// back button should not be shown. fn maybe_render_header_back_button(&self, app: &AppContext) -> Box { - if !FeatureFlag::AgentView.is_enabled() || warpui::platform::is_mobile_device() { + if !FeatureFlag::AgentView.is_enabled() || galaxyui::platform::is_mobile_device() { return Flex::row().finish(); } @@ -304,7 +304,7 @@ impl TerminalView { Some( ConstrainedBox::new( icons::Icon::Sharing - .to_warpui_icon(shared_session_indicator_color(appearance).into()) + .to_galaxyui_icon(shared_session_indicator_color(appearance).into()) .finish(), ) .with_height(appearance.ui_font_size()) @@ -772,7 +772,7 @@ impl TerminalView { let Some(conversation) = BlocklistAIHistoryModel::as_ref(app).conversation(&conversation_id) else { - return warpui::elements::Empty::new().finish(); + return galaxyui::elements::Empty::new().finish(); }; let appearance = Appearance::as_ref(app); @@ -800,7 +800,7 @@ impl TerminalView { } else { WarpIcon::Oz } - .to_warpui_icon(blended_colors::text_sub(theme, theme.background()).into()) + .to_galaxyui_icon(blended_colors::text_sub(theme, theme.background()).into()) .finish(), ) .with_height(appearance.ui_font_size()) @@ -828,7 +828,7 @@ impl TerminalView { return Some( ConstrainedBox::new( icons::Icon::AlertTriangle - .to_warpui_icon(appearance.theme().ui_error_color().into()) + .to_galaxyui_icon(appearance.theme().ui_error_color().into()) .finish(), ) .with_height(font_size) @@ -841,7 +841,7 @@ impl TerminalView { if let Some(shell_indicator_type) = self.shell_indicator_type { let shell_indicator_icon = shell_indicator_type .to_icon() - .to_warpui_icon( + .to_galaxyui_icon( blended_colors::text_sub(appearance.theme(), appearance.theme().background()) .into(), ) @@ -871,7 +871,7 @@ impl TerminalView { .clone(), move |state| { let mut stack = Stack::new().with_child( - ConstrainedBox::new(icons::Icon::OzCloud.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icons::Icon::OzCloud.to_galaxyui_icon(icon_color).finish()) .with_height(font_size * 1.5) .with_width(font_size * 1.5) .finish(), diff --git a/app/src/terminal/view/passive_suggestions.rs b/app/src/terminal/view/passive_suggestions.rs index efdd4e61..abd8e60f 100644 --- a/app/src/terminal/view/passive_suggestions.rs +++ b/app/src/terminal/view/passive_suggestions.rs @@ -1,4 +1,4 @@ -use warpui::ViewContext; +use galaxyui::ViewContext; use crate::{server::telemetry::InteractionSource, terminal::view::CodeDiffAction}; diff --git a/app/src/terminal/view/pending_user_query.rs b/app/src/terminal/view/pending_user_query.rs index 1d50f327..3ca07f9f 100644 --- a/app/src/terminal/view/pending_user_query.rs +++ b/app/src/terminal/view/pending_user_query.rs @@ -1,5 +1,5 @@ -use warp_core::features::FeatureFlag; -use warpui::{SingletonEntity, ViewContext}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{SingletonEntity, ViewContext}; use crate::{ ai::{ diff --git a/app/src/terminal/view/plugin_instructions_block.rs b/app/src/terminal/view/plugin_instructions_block.rs index 4fb29f43..e0107460 100644 --- a/app/src/terminal/view/plugin_instructions_block.rs +++ b/app/src/terminal/view/plugin_instructions_block.rs @@ -1,19 +1,19 @@ use std::iter; use pathfinder_geometry::vector::vec2f; -use warpui::clipboard::ClipboardContent; -use warpui::elements::{ +use galaxyui::clipboard::ClipboardContent; +use galaxyui::elements::{ Border, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Expanded, Flex, HyperlinkLens, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; -use warpui::elements::FormattedTextElement; +use galaxyui::elements::FormattedTextElement; use crate::ai::blocklist::code_block::{ render_code_block_plain, CodeBlockOptions, CodeSnippetButtonHandles, diff --git a/app/src/terminal/view/rich_content.rs b/app/src/terminal/view/rich_content.rs index a2991320..8b7c6427 100644 --- a/app/src/terminal/view/rich_content.rs +++ b/app/src/terminal/view/rich_content.rs @@ -1,4 +1,4 @@ -use warpui::{prelude::ChildView, Element, EntityId, View, ViewContext, ViewHandle}; +use galaxyui::{prelude::ChildView, Element, EntityId, View, ViewContext, ViewHandle}; use crate::{ ai::{ diff --git a/app/src/terminal/view/shared_session/adapter.rs b/app/src/terminal/view/shared_session/adapter.rs index 084f0236..22638f89 100644 --- a/app/src/terminal/view/shared_session/adapter.rs +++ b/app/src/terminal/view/shared_session/adapter.rs @@ -21,9 +21,9 @@ use session_sharing_protocol::common::{ParticipantId, ParticipantList, Role, Ses use session_sharing_protocol::sharer::SessionSourceType; use std::collections::{HashMap, HashSet}; use std::time::Duration; -use warp_core::features::FeatureFlag; -use warpui::{elements::MouseStateHandle, ModelHandle, ViewContext, ViewHandle}; -use warpui::{AppContext, Element}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{elements::MouseStateHandle, ModelHandle, ViewContext, ViewHandle}; +use galaxyui::{AppContext, Element}; /// The kind of shared session this is. pub enum Kind { diff --git a/app/src/terminal/view/shared_session/conversation_ended_tombstone_view.rs b/app/src/terminal/view/shared_session/conversation_ended_tombstone_view.rs index 4929c14e..75b1b8e2 100644 --- a/app/src/terminal/view/shared_session/conversation_ended_tombstone_view.rs +++ b/app/src/terminal/view/shared_session/conversation_ended_tombstone_view.rs @@ -14,20 +14,20 @@ use crate::view_components::action_button::{ActionButton, PrimaryTheme}; use crate::workspace::WorkspaceAction; use std::path::Path; #[cfg(not(target_family = "wasm"))] -use warp_cli::agent::Harness; -use warp_core::paths::home_relative_path; +use galaxy_cli::agent::Harness; +use galaxy_core::paths::home_relative_path; #[cfg(not(target_family = "wasm"))] use crate::ai::ambient_agents::AmbientAgentTask; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::{AnsiColorIdentifier, Fill}; -use warpui::elements::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::{AnsiColorIdentifier, Fill}; +use galaxyui::elements::{ Border, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, MainAxisSize, Padding, ParentElement, Radius, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::{ AppContext, Element, Entity, EntityId, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -263,7 +263,7 @@ impl ConversationEndedTombstoneView { ctx ); ctx.clipboard() - .write(warpui::clipboard::ClipboardContent::plain_text( + .write(galaxyui::clipboard::ClipboardContent::plain_text( branch.clone(), )); } @@ -349,7 +349,7 @@ impl ConversationEndedTombstoneView { Fill::Solid(theme.ansi_fg_green()) }; let icon_element = Container::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_height(14.) .with_width(14.) .finish(), @@ -496,7 +496,7 @@ impl ConversationEndedTombstoneView { #[cfg(target_family = "wasm")] { // Don't show on mobile devices - they can't use the desktop app - if !warpui::platform::wasm::is_mobile_device() { + if !galaxyui::platform::wasm::is_mobile_device() { if let Some(ref open_in_warp_button) = self.open_in_warp_button { row.add_child(ChildView::new(open_in_warp_button).finish()); has_button = true; diff --git a/app/src/terminal/view/shared_session/conversation_ended_tombstone_view_tests.rs b/app/src/terminal/view/shared_session/conversation_ended_tombstone_view_tests.rs index 7a50ade1..c3ef5c11 100644 --- a/app/src/terminal/view/shared_session/conversation_ended_tombstone_view_tests.rs +++ b/app/src/terminal/view/shared_session/conversation_ended_tombstone_view_tests.rs @@ -1,5 +1,5 @@ use chrono::{Duration, Utc}; -use warp_cli::agent::Harness; +use galaxy_cli::agent::Harness; use crate::ai::ambient_agents::task::{ AgentConfigSnapshot, HarnessConfig, RequestUsage, TaskCreatorInfo, diff --git a/app/src/terminal/view/shared_session/sharer/inactivity_modal.rs b/app/src/terminal/view/shared_session/sharer/inactivity_modal.rs index f7c2bf2b..aac5c660 100644 --- a/app/src/terminal/view/shared_session/sharer/inactivity_modal.rs +++ b/app/src/terminal/view/shared_session/sharer/inactivity_modal.rs @@ -2,16 +2,16 @@ use std::time::Duration; use crate::modal::Modal; use crate::ui_components::blended_colors; -use warp_core::ui::appearance::Appearance; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::elements::{ ChildView, Container, CrossAxisAlignment, Flex, MouseStateHandle, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::r#async::Timer; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::r#async::Timer; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; diff --git a/app/src/terminal/view/shared_session/sharer/mod.rs b/app/src/terminal/view/shared_session/sharer/mod.rs index d4525bba..561babe9 100644 --- a/app/src/terminal/view/shared_session/sharer/mod.rs +++ b/app/src/terminal/view/shared_session/sharer/mod.rs @@ -2,7 +2,7 @@ pub mod inactivity_modal; use inactivity_modal::InactivityModal; use async_channel::Sender; -use warpui::{ +use galaxyui::{ elements::MouseStateHandle, r#async::SpawnedFutureHandle, SingletonEntity, ViewContext, ViewHandle, }; diff --git a/app/src/terminal/view/shared_session/test_utils.rs b/app/src/terminal/view/shared_session/test_utils.rs index 8165578e..c187c759 100644 --- a/app/src/terminal/view/shared_session/test_utils.rs +++ b/app/src/terminal/view/shared_session/test_utils.rs @@ -1,7 +1,7 @@ use session_sharing_protocol::common::{ParticipantId, ParticipantList, SessionId}; use session_sharing_protocol::sharer::SessionSourceType; -use warpui::platform::WindowStyle; -use warpui::{App, SingletonEntity, ViewHandle}; +use galaxyui::platform::WindowStyle; +use galaxyui::{App, SingletonEntity, ViewHandle}; use crate::auth::UserUid; use crate::editor::ReplicaId; diff --git a/app/src/terminal/view/shared_session/view_impl.rs b/app/src/terminal/view/shared_session/view_impl.rs index 5460b3d2..3f024d08 100644 --- a/app/src/terminal/view/shared_session/view_impl.rs +++ b/app/src/terminal/view/shared_session/view_impl.rs @@ -40,19 +40,19 @@ use session_sharing_protocol::common::{ use session_sharing_protocol::sharer::SessionSourceType; use session_sharing_protocol::sharer::{RoleUpdateReason, SessionEndedReason}; use session_sharing_protocol::viewer::RoleUpdatedReason; -use warp_core::features::FeatureFlag; -use warpui::r#async::Timer; +use galaxy_core::features::FeatureFlag; +use galaxyui::r#async::Timer; use settings::Setting as _; -use warp_core::semantic_selection::SemanticSelection; -use warp_core::ui::appearance::Appearance; -use warpui::clipboard::ClipboardContent; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::UiComponent; -use warpui::units::IntoLines; -use warpui::{Element, SingletonEntity}; -use warpui::{ModelHandle, ViewContext}; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::clipboard::ClipboardContent; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::units::IntoLines; +use galaxyui::{Element, SingletonEntity}; +use galaxyui::{ModelHandle, ViewContext}; use crate::menu::Event as MenuEvent; @@ -62,8 +62,8 @@ use crate::terminal::shared_session::participant_avatar_view::ParticipantAvatarV use session_sharing_protocol::common::ParticipantList; use session_sharing_protocol::common::ParticipantPresenceUpdate; -use warpui::elements::MouseStateHandle; -use warpui::AppContext; +use galaxyui::elements::MouseStateHandle; +use galaxyui::AppContext; use super::adapter::{Adapter, Kind, Participant}; use super::sharer::inactivity_modal::InactivityModalEvent; diff --git a/app/src/terminal/view/shared_session/view_impl_test.rs b/app/src/terminal/view/shared_session/view_impl_test.rs index 7ec88227..5ed67710 100644 --- a/app/src/terminal/view/shared_session/view_impl_test.rs +++ b/app/src/terminal/view/shared_session/view_impl_test.rs @@ -1,7 +1,7 @@ use pathfinder_geometry::vector::vec2f; use session_sharing_protocol::sharer::SessionSourceType; -use warpui::App; +use galaxyui::App; use crate::context_chips::prompt_type::PromptType; diff --git a/app/src/terminal/view/shared_session/viewer.rs b/app/src/terminal/view/shared_session/viewer.rs index 4fc6cf6d..fbee0919 100644 --- a/app/src/terminal/view/shared_session/viewer.rs +++ b/app/src/terminal/view/shared_session/viewer.rs @@ -6,7 +6,7 @@ use crate::terminal::view::{TerminalAction, TerminalView}; use crate::ui_components::icons::Icon; use session_sharing_protocol::common::{Role, WindowSize}; -use warpui::{elements::MouseStateHandle, ViewContext, ViewHandle}; +use galaxyui::{elements::MouseStateHandle, ViewContext, ViewHandle}; use super::adapter::Participant; diff --git a/app/src/terminal/view/shell_terminated_banner.rs b/app/src/terminal/view/shell_terminated_banner.rs index b5630275..8c65e423 100644 --- a/app/src/terminal/view/shell_terminated_banner.rs +++ b/app/src/terminal/view/shell_terminated_banner.rs @@ -1,11 +1,11 @@ use std::{borrow::Cow, cell::RefCell}; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, builder::UiBuilder, theme::{color::internal_colors, WarpTheme}, }; -use warpui::{ +use galaxyui::{ clipboard::ClipboardContent, elements::*, text_layout::ClipConfig, @@ -152,7 +152,7 @@ impl TerminationType { Container::new( ConstrainedBox::new( icon_type - .to_warpui_icon(appearance.theme().background()) + .to_galaxyui_icon(appearance.theme().background()) .finish(), ) .with_width(ICON_SIZE) diff --git a/app/src/terminal/view/ssh_file_upload.rs b/app/src/terminal/view/ssh_file_upload.rs index 7c5d97a0..7f476227 100644 --- a/app/src/terminal/view/ssh_file_upload.rs +++ b/app/src/terminal/view/ssh_file_upload.rs @@ -4,9 +4,9 @@ use itertools::Itertools; use markdown_parser::{ FormattedText, FormattedTextFragment, FormattedTextHeader, FormattedTextLine, }; -use warp_core::command::ExitCode; -use warp_core::ui::{appearance::Appearance, color::blend::Blend as _}; -use warpui::{ +use galaxy_core::command::ExitCode; +use galaxy_core::ui::{appearance::Appearance, color::blend::Blend as _}; +use galaxyui::{ elements::{ Border, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, MainAxisSize, MouseStateHandle, ParentElement, Radius, @@ -91,7 +91,7 @@ impl TypedActionView for FileUpload { &mut self, _action: &Self::Action, _ctx: &mut ViewContext, - ) -> warpui::accessibility::ActionAccessibilityContent { + ) -> galaxyui::accessibility::ActionAccessibilityContent { Default::default() } } @@ -101,7 +101,7 @@ impl View for FileUpload { "SSH File Upload" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let appearance = Appearance::as_ref(app); self.render_file_upload_element(&self.uploads, appearance) } diff --git a/app/src/terminal/view/ssh_remote_server_choice_view.rs b/app/src/terminal/view/ssh_remote_server_choice_view.rs index f7173945..a7e31647 100644 --- a/app/src/terminal/view/ssh_remote_server_choice_view.rs +++ b/app/src/terminal/view/ssh_remote_server_choice_view.rs @@ -17,8 +17,8 @@ //! Dismissing the block (on click of either option, or when the session is //! deregistered) is the parent's responsibility. use settings::Setting; -use warp_core::ui::theme::color::internal_colors; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::{ elements::{ Border, ChildView, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, diff --git a/app/src/terminal/view/ssh_remote_server_failed_banner.rs b/app/src/terminal/view/ssh_remote_server_failed_banner.rs index 13f46554..25dfa604 100644 --- a/app/src/terminal/view/ssh_remote_server_failed_banner.rs +++ b/app/src/terminal/view/ssh_remote_server_failed_banner.rs @@ -1,8 +1,8 @@ //! Banner shown when the remote-server binary check, installation, or connection fails on the remote host. //! We fall back to the existing Warpification behavior and display this banner so the user knows why advanced features are unavailable. -use warp_core::ui::theme::color::internal_colors; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::{ elements::{ ConstrainedBox, Container, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, Text, @@ -60,7 +60,7 @@ impl View for SshRemoteServerFailedBanner { // Alert-circle icon let icon = Container::new( - ConstrainedBox::new(Icon::AlertCircle.to_warpui_icon(fg_color.into()).finish()) + ConstrainedBox::new(Icon::AlertCircle.to_galaxyui_icon(fg_color.into()).finish()) .with_width(16.) .with_height(16.) .finish(), @@ -93,7 +93,7 @@ impl View for SshRemoteServerFailedBanner { // Close (X) button let close_icon_color = muted_color; let close = Hoverable::new(self.close_mouse_state.clone(), move |_| { - ConstrainedBox::new(Icon::X.to_warpui_icon(close_icon_color.into()).finish()) + ConstrainedBox::new(Icon::X.to_galaxyui_icon(close_icon_color.into()).finish()) .with_width(16.) .with_height(16.) .finish() diff --git a/app/src/terminal/view/tab_metadata.rs b/app/src/terminal/view/tab_metadata.rs index ad27661f..ac1748a7 100644 --- a/app/src/terminal/view/tab_metadata.rs +++ b/app/src/terminal/view/tab_metadata.rs @@ -1,7 +1,7 @@ use crate::context_chips::display_chip::GitLineChanges; use crate::context_chips::{git_line_changes_from_chips, ContextChipKind}; use crate::terminal::TerminalView; -use warpui::AppContext; +use galaxyui::AppContext; impl TerminalView { fn prompt_chip_value(&self, chip_kind: &ContextChipKind, ctx: &AppContext) -> Option { @@ -20,7 +20,7 @@ impl TerminalView { .active_block_session_id() .and_then(|session_id| self.sessions.as_ref(ctx).get(session_id)) .and_then(|session| session.home_dir().map(str::to_owned)); - Some(warp_util::path::user_friendly_path(&raw, home_dir.as_deref()).to_string()) + Some(galaxy_util::path::user_friendly_path(&raw, home_dir.as_deref()).to_string()) } pub fn terminal_title_from_shell(&self) -> String { diff --git a/app/src/terminal/view/testing.rs b/app/src/terminal/view/testing.rs index b9542e4b..e82e89fb 100644 --- a/app/src/terminal/view/testing.rs +++ b/app/src/terminal/view/testing.rs @@ -1,5 +1,5 @@ //! Module for test-only convenience methods on `TerminalView`. -use warpui::ModelHandle; +use galaxyui::ModelHandle; use crate::terminal::find::TerminalFindModel; cfg_if::cfg_if! { @@ -7,7 +7,7 @@ cfg_if::cfg_if! { use std::sync::Arc; use parking_lot::FairMutex; - use warpui::{ViewContext}; + use galaxyui::{ViewContext}; use crate::{ ai::blocklist::SerializedBlockListItem, pane_group::TerminalViewResources, @@ -33,7 +33,7 @@ impl TerminalView { ctx: &mut ViewContext, ) -> Self { use pathfinder_geometry::vector::vec2f; - use warpui::units::{IntoPixels as _, Pixels}; + use galaxyui::units::{IntoPixels as _, Pixels}; use crate::{ server::server_api::ServerApiProvider, diff --git a/app/src/terminal/view/tooltips.rs b/app/src/terminal/view/tooltips.rs index 0ff22bf3..b6b65d02 100644 --- a/app/src/terminal/view/tooltips.rs +++ b/app/src/terminal/view/tooltips.rs @@ -2,7 +2,7 @@ use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{ ChildAnchor, Dismiss, MouseStateHandle, OffsetPositioning, PositionedElementAnchor, PositionedElementOffsetBounds, Stack, @@ -44,7 +44,7 @@ struct GridTooltipLink { #[cfg(feature = "local_fs")] fn open_in_warp_tooltip( path: std::path::PathBuf, - line_and_column_num: Option, + line_and_column_num: Option, detail_for_default: &mut Option, mouse_state: MouseStateHandle, app: &AppContext, @@ -54,7 +54,7 @@ fn open_in_warp_tooltip( util::tooltips::should_show_open_in_warp_link, }; use settings::Setting as _; - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; if !should_show_open_in_warp_link(&path, app) { return None; diff --git a/app/src/terminal/view/use_agent_footer/mod.rs b/app/src/terminal/view/use_agent_footer/mod.rs index 42ce7ad5..b7fa1fe7 100644 --- a/app/src/terminal/view/use_agent_footer/mod.rs +++ b/app/src/terminal/view/use_agent_footer/mod.rs @@ -12,7 +12,7 @@ use crate::terminal::cli_agent_sessions::{CLIAgentInputEntrypoint, CLIAgentSessi use crate::terminal::shared_session::{SharedSessionActionSource, SharedSessionScrollbackType}; use base64::Engine; use session_sharing_protocol::sharer::SessionSourceType; -use warpui::clipboard::{ClipboardContent, ImageData}; +use galaxyui::clipboard::{ClipboardContent, ImageData}; mod warpify_footer; pub use crate::terminal::CLIAgent; @@ -21,14 +21,14 @@ use warpify_footer::{WarpifyFooterView, WarpifyFooterViewEvent}; use std::sync::{Arc, LazyLock}; use std::time::Duration; -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; use crate::code_review::diff_state::GitDeltaPreference; use crate::code_review::telemetry_event::CodeReviewPaneEntrypoint; use anyhow::anyhow; use parking_lot::FairMutex; use pathfinder_color::ColorU; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, report_error, send_telemetry_from_ctx, settings::Setting, @@ -41,7 +41,7 @@ use warp_core::{ }, }; -use warpui::{ +use galaxyui::{ elements::{ ChildView, Container, CrossAxisAlignment, Empty, Expanded, Flex, MainAxisSize, ParentElement, @@ -70,7 +70,7 @@ use crate::{ }, }; -use warp_terminal::model::escape_sequences::{BRACKETED_PASTE_END, BRACKETED_PASTE_START}; +use galaxy_terminal::model::escape_sequences::{BRACKETED_PASTE_END, BRACKETED_PASTE_START}; use super::{RichContentInsertionPosition, TerminalAction, TerminalView}; use crate::terminal::view::block_banner::WarpificationMode; diff --git a/app/src/terminal/view/use_agent_footer/mod_test.rs b/app/src/terminal/view/use_agent_footer/mod_test.rs index 58d7b710..df4bd3d9 100644 --- a/app/src/terminal/view/use_agent_footer/mod_test.rs +++ b/app/src/terminal/view/use_agent_footer/mod_test.rs @@ -1,8 +1,8 @@ use std::rc::Rc; use session_sharing_protocol::sharer::SessionSourceType; -use warp_core::settings::Setting as _; -use warpui::{App, AppContext, SingletonEntity, ViewContext}; +use galaxy_core::settings::Setting as _; +use galaxyui::{App, AppContext, SingletonEntity, ViewContext}; use crate::{ ai::{ diff --git a/app/src/terminal/view/use_agent_footer/warpify_footer.rs b/app/src/terminal/view/use_agent_footer/warpify_footer.rs index 9637690a..b315bf56 100644 --- a/app/src/terminal/view/use_agent_footer/warpify_footer.rs +++ b/app/src/terminal/view/use_agent_footer/warpify_footer.rs @@ -1,8 +1,8 @@ use std::sync::Arc; use parking_lot::FairMutex; -use warpui::prelude::Empty; -use warpui::{ +use galaxyui::prelude::Empty; +use galaxyui::{ elements::{ ChildView, Container, CrossAxisAlignment, Expanded, Flex, MainAxisSize, ParentElement, }, diff --git a/app/src/terminal/view/zero_state_block.rs b/app/src/terminal/view/zero_state_block.rs index 5b7ac114..99e2131a 100644 --- a/app/src/terminal/view/zero_state_block.rs +++ b/app/src/terminal/view/zero_state_block.rs @@ -1,6 +1,6 @@ use settings::Setting; -use warp_core::{report_if_error, ui::Icon}; -use warpui::{ +use galaxy_core::{report_if_error, ui::Icon}; +use galaxyui::{ elements::{ ChildAnchor, Container, CrossAxisAlignment, Flex, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Shrinkable, Stack, Text, @@ -154,7 +154,7 @@ impl View for TerminalViewZeroStateBlock { Container::new( ConstrainedBox::new( Icon::Warp - .to_warpui_icon(theme.main_text_color(theme.background())) + .to_galaxyui_icon(theme.main_text_color(theme.background())) .finish(), ) .with_height(title_font_size) diff --git a/app/src/terminal/view_test.rs b/app/src/terminal/view_test.rs index 8c61cbb1..f89e8265 100644 --- a/app/src/terminal/view_test.rs +++ b/app/src/terminal/view_test.rs @@ -3,12 +3,12 @@ use std::pin::pin; use std::rc::Rc; use crate::ai::agent::conversation::ConversationStatus; -use warp_terminal::model::escape_sequences::{BRACKETED_PASTE_END, BRACKETED_PASTE_START}; -use warpui::{notification::UserNotification, Presenter, WindowInvalidation}; +use galaxy_terminal::model::escape_sequences::{BRACKETED_PASTE_END, BRACKETED_PASTE_START}; +use galaxyui::{notification::UserNotification, Presenter, WindowInvalidation}; use crate::ai::agent::task::TaskId; use crate::ai::blocklist::block::cli_controller::UserTakeOverReason; -use warpui::App; +use galaxyui::App; use crate::pane_group::focus_state::PaneGroupFocusState; use crate::pane_group::{BackingView, TerminalPaneId}; @@ -404,7 +404,7 @@ fn set_input_mode_agent_does_not_enter_local_agent_from_root_cloud_mode_pane() { /// Test clearing of session flag state when terminal is cleared #[test] fn test_clear_session_flag_state() { - use warp_terminal::shell::ShellType; + use galaxy_terminal::shell::ShellType; use crate::ai::blocklist::SerializedBlockListItem; use crate::terminal::model::block::SerializedBlock; @@ -855,7 +855,7 @@ fn test_alt_screen_select_with_sgr_mouse() { rerender!(app, presenter, invalidation, size_info); app.update(enclose!((presenter) move |ctx| { ctx.simulate_window_event( - warpui::Event::LeftMouseDown { + galaxyui::Event::LeftMouseDown { position: start_position, modifiers: Default::default(), click_count: 1, @@ -868,7 +868,7 @@ fn test_alt_screen_select_with_sgr_mouse() { rerender!(app, presenter, invalidation, size_info); app.update(enclose!((presenter) move |ctx| { ctx.simulate_window_event( - warpui::Event::LeftMouseDragged { + galaxyui::Event::LeftMouseDragged { position: end_position, modifiers: Default::default(), }, @@ -879,7 +879,7 @@ fn test_alt_screen_select_with_sgr_mouse() { rerender!(app, presenter, invalidation, size_info); app.update(enclose!((presenter) move |ctx| { ctx.simulate_window_event( - warpui::Event::LeftMouseUp { + galaxyui::Event::LeftMouseUp { position: end_position, modifiers: Default::default(), }, @@ -901,7 +901,7 @@ fn test_alt_screen_select_with_sgr_mouse() { rerender!(app, presenter, invalidation, size_info); app.update(enclose!((presenter) move |ctx| { ctx.simulate_window_event( - warpui::Event::LeftMouseDown { + galaxyui::Event::LeftMouseDown { position: start_position, modifiers: ModifiersState { shift: true, @@ -917,7 +917,7 @@ fn test_alt_screen_select_with_sgr_mouse() { rerender!(app, presenter, invalidation, size_info); app.update(enclose!((presenter) move |ctx| { ctx.simulate_window_event( - warpui::Event::LeftMouseDragged { + galaxyui::Event::LeftMouseDragged { position: end_position, modifiers: ModifiersState { shift: true, @@ -931,7 +931,7 @@ fn test_alt_screen_select_with_sgr_mouse() { rerender!(app, presenter, invalidation, size_info); app.update(enclose!((presenter) move |ctx| { ctx.simulate_window_event( - warpui::Event::LeftMouseUp { + galaxyui::Event::LeftMouseUp { position: end_position, modifiers: ModifiersState { shift: true, diff --git a/app/src/terminal/warpify/mod.rs b/app/src/terminal/warpify/mod.rs index 237396d3..d4913957 100644 --- a/app/src/terminal/warpify/mod.rs +++ b/app/src/terminal/warpify/mod.rs @@ -7,7 +7,7 @@ use crate::terminal::model::terminal_model::SubshellInitializationInfo; use crate::terminal::shell::ShellType; use crate::ASSETS; use channel_versions::overrides::TargetOS; -use warpui::AssetProvider; +use galaxyui::AssetProvider; #[derive(Debug)] pub enum WarpificationSource { diff --git a/app/src/terminal/warpify/render.rs b/app/src/terminal/warpify/render.rs index 9876c5c2..87fbc0ab 100644 --- a/app/src/terminal/warpify/render.rs +++ b/app/src/terminal/warpify/render.rs @@ -4,17 +4,17 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use pathfinder_color::ColorU; use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::Vector2F; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxyui::elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, HighlightedHyperlink, Icon, MouseStateHandle, ParentElement, Radius, Rect, Shrinkable, Stack, Text, }; -use warpui::fonts::{FamilyId, Properties, Weight}; -use warpui::ui_components::components::UiComponent as _; -use warpui::ui_components::components::UiComponentStyles; -use warpui::{AppContext, Element, EventContext, PaintContext, SingletonEntity as _}; +use galaxyui::fonts::{FamilyId, Properties, Weight}; +use galaxyui::ui_components::components::UiComponent as _; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::{AppContext, Element, EventContext, PaintContext, SingletonEntity as _}; use super::settings::WarpifySettings; use super::SubshellSource; @@ -231,7 +231,7 @@ pub fn draw_flag_pole( /// Implementation should match `[draw_subshell_flag_pole]`. pub fn render_subshell_flag_pole( max_height: f32, - fill: impl Into, + fill: impl Into, ) -> Box { ConstrainedBox::new(Rect::new().with_background(fill.into()).finish()) .with_width(LEFT_STRIPE_WIDTH) diff --git a/app/src/terminal/warpify/settings.rs b/app/src/terminal/warpify/settings.rs index db9c7c55..90646e09 100644 --- a/app/src/terminal/warpify/settings.rs +++ b/app/src/terminal/warpify/settings.rs @@ -6,9 +6,9 @@ use settings::{ ChangeEventReason, RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud, }; use strum_macros::EnumIter; -use warp_util::path::ShellFamily; -use warpui::{AppContext, ModelContext}; -use warpui::{Entity, SingletonEntity}; +use galaxy_util::path::ShellFamily; +use galaxyui::{AppContext, ModelContext}; +use galaxyui::{Entity, SingletonEntity}; use crate::terminal::ssh::util::{parse_interactive_ssh_command, SshWarpifyCommand}; diff --git a/app/src/terminal/warpify/success_block.rs b/app/src/terminal/warpify/success_block.rs index 0a4bb57b..fe92dfcb 100644 --- a/app/src/terminal/warpify/success_block.rs +++ b/app/src/terminal/warpify/success_block.rs @@ -11,14 +11,14 @@ use crate::ui_components::icons::Icon as UiIcon; use crate::workspace::WorkspaceAction; use channel_versions::overrides::TargetOS; use parking_lot::RwLock; -use warp_core::semantic_selection::SemanticSelection; -use warp_core::ui::theme::WarpTheme; -use warpui::elements::{ +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::elements::{ CrossAxisAlignment, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, SelectableArea, SelectionHandle, Text, }; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{ elements::{Border, Container, Flex, ParentElement}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; diff --git a/app/src/terminal/warpify/trigger_state.rs b/app/src/terminal/warpify/trigger_state.rs index 17c88204..4a2b3c69 100644 --- a/app/src/terminal/warpify/trigger_state.rs +++ b/app/src/terminal/warpify/trigger_state.rs @@ -1,6 +1,6 @@ use parking_lot::FairMutex; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ r#async::SpawnedFutureHandle, AppContext, EntityId, SingletonEntity as _, ViewContext, ViewHandle, }; diff --git a/app/src/terminal/waterfall_gap_element.rs b/app/src/terminal/waterfall_gap_element.rs index e904b84f..d2665180 100644 --- a/app/src/terminal/waterfall_gap_element.rs +++ b/app/src/terminal/waterfall_gap_element.rs @@ -1,9 +1,9 @@ use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warpui::elements::ZIndex; -use warpui::event::ModifiersState; -use warpui::units::{IntoLines, IntoPixels, Pixels}; -use warpui::ModelHandle; -use warpui::{ +use galaxyui::elements::ZIndex; +use galaxyui::event::ModifiersState; +use galaxyui::units::{IntoLines, IntoPixels, Pixels}; +use galaxyui::ModelHandle; +use galaxyui::{ elements::{ScrollData, ScrollableElement}, AppContext, Element, EventContext, SizeConstraint, }; @@ -60,7 +60,7 @@ pub struct WaterfallGapElement { child_max_z_index: Option, /// Standard element size and origin fields - origin: Option, + origin: Option, size: Option, inline_menu_positioner: ModelHandle, @@ -141,8 +141,8 @@ impl WaterfallGapElement { impl Element for WaterfallGapElement { fn layout( &mut self, - constraint: warpui::SizeConstraint, - ctx: &mut warpui::LayoutContext, + constraint: galaxyui::SizeConstraint, + ctx: &mut galaxyui::LayoutContext, app: &AppContext, ) -> Vector2F { // To layout the gap element, we first layout the input element and then @@ -191,13 +191,13 @@ impl Element for WaterfallGapElement { constraint.max } - fn after_layout(&mut self, ctx: &mut warpui::AfterLayoutContext, app: &AppContext) { + fn after_layout(&mut self, ctx: &mut galaxyui::AfterLayoutContext, app: &AppContext) { self.input_element.after_layout(ctx, app); self.block_list_element.after_layout(ctx, app); } - fn paint(&mut self, origin: Vector2F, ctx: &mut warpui::PaintContext, app: &AppContext) { - self.origin = Some(warpui::elements::Point::from_vec2f( + fn paint(&mut self, origin: Vector2F, ctx: &mut galaxyui::PaintContext, app: &AppContext) { + self.origin = Some(galaxyui::elements::Point::from_vec2f( origin, ctx.scene.z_index(), )); @@ -221,14 +221,14 @@ impl Element for WaterfallGapElement { self.size } - fn origin(&self) -> Option { + fn origin(&self) -> Option { self.origin } fn dispatch_event( &mut self, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, app: &AppContext, ) -> bool { let mut handled = false; @@ -240,10 +240,10 @@ impl Element for WaterfallGapElement { ctx, ); handled |= match event_at_z_index { - Some(warpui::Event::LeftMouseDown { position, .. }) => { + Some(galaxyui::Event::LeftMouseDown { position, .. }) => { self.mouse_down(*position, ctx) } - Some(warpui::Event::RightMouseDown { position, .. }) => { + Some(galaxyui::Event::RightMouseDown { position, .. }) => { let position_in_terminal_view = *position - self.origin().expect("origin set after paint").xy(); ctx.dispatch_typed_action(TerminalAction::BlockListContextMenu( @@ -253,7 +253,7 @@ impl Element for WaterfallGapElement { )); true } - Some(warpui::Event::ScrollWheel { + Some(galaxyui::Event::ScrollWheel { position, delta, precise, @@ -268,7 +268,7 @@ impl Element for WaterfallGapElement { } impl ScrollableElement for WaterfallGapElement { - fn scroll_data(&self, app: &AppContext) -> Option { + fn scroll_data(&self, app: &AppContext) -> Option { // You might be wondering - 'what is this blocklist top inset'? // // This is the height of the inline menu when it is open and rendered above the input. diff --git a/app/src/terminal/writeable_pty/bootstrap_file/windows.rs b/app/src/terminal/writeable_pty/bootstrap_file/windows.rs index f15636f9..a795b5f7 100644 --- a/app/src/terminal/writeable_pty/bootstrap_file/windows.rs +++ b/app/src/terminal/writeable_pty/bootstrap_file/windows.rs @@ -3,7 +3,7 @@ use std::io::Write; use std::path::PathBuf; use typed_path::TypedPath; -use warp_util::path::{convert_wsl_to_windows_host_path, WSLPathConversionError}; +use galaxy_util::path::{convert_wsl_to_windows_host_path, WSLPathConversionError}; use crate::terminal::shell::ShellType; diff --git a/app/src/terminal/writeable_pty/command_history.rs b/app/src/terminal/writeable_pty/command_history.rs index e955f78d..22d5f04e 100644 --- a/app/src/terminal/writeable_pty/command_history.rs +++ b/app/src/terminal/writeable_pty/command_history.rs @@ -2,7 +2,7 @@ use std::sync::mpsc::SyncSender; use std::sync::Arc; use parking_lot::FairMutex; -use warpui::{AppContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity}; use crate::persistence::StartedCommandMetadata; use crate::terminal::{view::ExecuteCommandEvent, TerminalModel}; diff --git a/app/src/terminal/writeable_pty/pty_controller.rs b/app/src/terminal/writeable_pty/pty_controller.rs index 01fb12b1..8dcf5c88 100644 --- a/app/src/terminal/writeable_pty/pty_controller.rs +++ b/app/src/terminal/writeable_pty/pty_controller.rs @@ -3,8 +3,8 @@ use std::{borrow::Cow, collections::VecDeque, sync::Arc}; use async_channel::{Receiver, Sender}; use parking_lot::FairMutex; use thiserror::Error; -use warpui::r#async::block_on; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::r#async::block_on; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity}; use crate::ai::agent::AIAgentPtyWriteMode; use crate::terminal::input::CommandExecutionSource; @@ -482,7 +482,7 @@ impl PtyController { shell_type: ShellType, ctx: &mut ModelContext, ) { - use warp_util::path::ShellFamily; + use galaxy_util::path::ShellFamily; // TODO(CORE-2099): Figure out a more robust solution here. Fish users // can redefine these functions via fish functions. Ideally this won't diff --git a/app/src/terminal/writeable_pty/pty_controller_tests.rs b/app/src/terminal/writeable_pty/pty_controller_tests.rs index 0165b462..e6ceb442 100644 --- a/app/src/terminal/writeable_pty/pty_controller_tests.rs +++ b/app/src/terminal/writeable_pty/pty_controller_tests.rs @@ -24,7 +24,7 @@ impl PtyController { let _ = tx.send(()); })), }); - let _ = warpui::r#async::block_on(rx); + let _ = galaxyui::r#async::block_on(rx); } } diff --git a/app/src/terminal/writeable_pty/remote_server_controller.rs b/app/src/terminal/writeable_pty/remote_server_controller.rs index 64b7bfdd..d146b8bb 100644 --- a/app/src/terminal/writeable_pty/remote_server_controller.rs +++ b/app/src/terminal/writeable_pty/remote_server_controller.rs @@ -5,8 +5,8 @@ use remote_server::auth::RemoteServerAuthContext; use settings::Setting; use std::path::PathBuf; use std::sync::Arc; -use warp_core::SessionId; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle}; +use galaxy_core::SessionId; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle}; use crate::terminal::warpify::settings::SshExtensionInstallMode; diff --git a/app/src/terminal/writeable_pty/terminal_manager_util.rs b/app/src/terminal/writeable_pty/terminal_manager_util.rs index 3ddf5623..a658ba6c 100644 --- a/app/src/terminal/writeable_pty/terminal_manager_util.rs +++ b/app/src/terminal/writeable_pty/terminal_manager_util.rs @@ -14,7 +14,7 @@ use async_channel::Receiver; use parking_lot::FairMutex; use std::sync::mpsc::SyncSender; use std::sync::Arc; -use warpui::{AppContext, ModelHandle, ViewHandle}; +use galaxyui::{AppContext, ModelHandle, ViewHandle}; /// Wires up bi-directional communication between the PtyController and the TerminalView. /// Note that this interaction can't live in the TerminalView because the view must be manager-agnostic. diff --git a/app/src/terminal/wsl/model.rs b/app/src/terminal/wsl/model.rs index b1b5b5fd..a1e47305 100644 --- a/app/src/terminal/wsl/model.rs +++ b/app/src/terminal/wsl/model.rs @@ -1,7 +1,7 @@ use crate::{send_telemetry_from_ctx, server::telemetry::TelemetryEvent}; use itertools::Itertools as _; -use warpui::{Entity, ModelContext, SingletonEntity}; -use warpui_extras::user_preferences::registry_backed::KEY_NOT_FOUND_ERR; +use galaxyui::{Entity, ModelContext, SingletonEntity}; +use galaxyui_extras::user_preferences::registry_backed::KEY_NOT_FOUND_ERR; use windows_registry::CURRENT_USER; use windows_result::Error as WindowsError; diff --git a/app/src/test_util/mod.rs b/app/src/test_util/mod.rs index edf2cd26..fb099d77 100644 --- a/app/src/test_util/mod.rs +++ b/app/src/test_util/mod.rs @@ -21,7 +21,7 @@ macro_rules! assert_eventually { pass = true; break; } - warpui::r#async::Timer::after(std::time::Duration::from_millis(5)).await; + galaxyui::r#async::Timer::after(std::time::Duration::from_millis(5)).await; } if !pass { panic!("{}", format_args!($($arg)+)); diff --git a/app/src/test_util/settings.rs b/app/src/test_util/settings.rs index 813aec0c..1ff0b226 100644 --- a/app/src/test_util/settings.rs +++ b/app/src/test_util/settings.rs @@ -1,16 +1,16 @@ #[cfg(test)] -use warpui::App; +use galaxyui::App; #[cfg(test)] pub fn initialize_settings_for_tests(app: &mut App) { - use warp_core::execution_mode::ExecutionMode; + use galaxy_core::execution_mode::ExecutionMode; initialize_settings_for_tests_with_mode(app, ExecutionMode::App, false); } #[cfg(test)] pub fn initialize_settings_for_tests_with_mode( app: &mut App, - mode: warp_core::execution_mode::ExecutionMode, + mode: galaxy_core::execution_mode::ExecutionMode, is_sandboxed: bool, ) { use crate::{ @@ -38,7 +38,7 @@ pub fn initialize_settings_for_tests_with_mode( window_settings::WindowSettings, workspace::tab_settings::TabSettings, }; - use warp_core::{execution_mode::AppExecutionMode, semantic_selection::SemanticSelection}; + use galaxy_core::{execution_mode::AppExecutionMode, semantic_selection::SemanticSelection}; app.add_singleton_model(|ctx| AppExecutionMode::new(mode, is_sandboxed, ctx)); app.update(init_and_register_user_preferences); @@ -102,7 +102,7 @@ pub fn initialize_settings_for_tests_with_mode( app.update(|ctx| { // Register a no-op secure storage provider for testing. - warpui_extras::secure_storage::register_noop("test", ctx); + galaxyui_extras::secure_storage::register_noop("test", ctx); // Add settings models that are backed by secure storage, not user preferences. ctx.add_singleton_model(ai::api_keys::ApiKeyManager::new); diff --git a/app/src/test_util/terminal.rs b/app/src/test_util/terminal.rs index 56bfac21..51950801 100644 --- a/app/src/test_util/terminal.rs +++ b/app/src/test_util/terminal.rs @@ -2,7 +2,7 @@ use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; use repo_metadata::repositories::DetectedRepositories; #[cfg(feature = "local_fs")] use repo_metadata::RepoMetadataModel; -use warp_core::ui::appearance::Appearance; +use galaxy_core::ui::appearance::Appearance; use crate::ai::active_agent_views_model::ActiveAgentViewsModel; use crate::ai::agent_conversations_model::AgentConversationsModel; @@ -16,8 +16,8 @@ use crate::ai::skills::SkillManager; use crate::code_review::git_status_update::GitStatusUpdateModel; use crate::terminal::cli_agent_sessions::CLIAgentSessionsModel; use crate::warp_managed_paths_watcher::WarpManagedPathsWatcher; -use warpui::SingletonEntity; -use warpui::{platform::WindowStyle, App, ViewHandle, WindowId}; +use galaxyui::SingletonEntity; +use galaxyui::{platform::WindowStyle, App, ViewHandle, WindowId}; use watcher::HomeDirectoryWatcher; use super::settings::initialize_settings_for_tests; diff --git a/app/src/themes/default_themes.rs b/app/src/themes/default_themes.rs index c75bf248..5fc0e302 100644 --- a/app/src/themes/default_themes.rs +++ b/app/src/themes/default_themes.rs @@ -1,6 +1,6 @@ use asset_macro::bundled_or_fetched_asset; use pathfinder_color::ColorU; -use warp_core::ui::{ +use galaxy_core::ui::{ color::{blend::Blend, coloru_with_opacity, OPAQUE}, theme::{ color::CustomDetails, AnsiColor, AnsiColors, Details, Fill, HorizontalGradient, Image, @@ -112,6 +112,47 @@ const DRACULA_BRIGHT_COLORS: AnsiColors = AnsiColors::new( AnsiColor::from_u32(0x8BE9FDFF), AnsiColor::from_u32(0xFFFFFFFF), ); +const SAMSUNG_DARK_NORMAL_COLORS: AnsiColors = AnsiColors::new( + AnsiColor::from_u32(0x1C1E25FF), + AnsiColor::from_u32(0xF05767FF), + AnsiColor::from_u32(0x4FB37FFF), + AnsiColor::from_u32(0xE2B44FFF), + AnsiColor::from_u32(0x3E6FF4FF), + AnsiColor::from_u32(0xA680F2FF), + AnsiColor::from_u32(0x4EAEDCFF), + AnsiColor::from_u32(0xE9ECF3FF), +); +const SAMSUNG_DARK_BRIGHT_COLORS: AnsiColors = AnsiColors::new( + AnsiColor::from_u32(0x343944FF), + AnsiColor::from_u32(0xFF7D8BFF), + AnsiColor::from_u32(0x73C99CFF), + AnsiColor::from_u32(0xF0C971FF), + AnsiColor::from_u32(0x5F8EFFFF), + AnsiColor::from_u32(0xB99CFFFF), + AnsiColor::from_u32(0x70C5EBFF), + AnsiColor::from_u32(0xFFFFFFFF), +); + +const SAMSUNG_LIGHT_NORMAL_COLORS: AnsiColors = AnsiColors::new( + AnsiColor::from_u32(0xD8DEE8FF), + AnsiColor::from_u32(0xB93E4DFF), + AnsiColor::from_u32(0x2D8C5DFF), + AnsiColor::from_u32(0xA87D2EFF), + AnsiColor::from_u32(0x0056D8FF), + AnsiColor::from_u32(0x7858C7FF), + AnsiColor::from_u32(0x2D7EA4FF), + AnsiColor::from_u32(0x1A1F2BFF), +); +const SAMSUNG_LIGHT_BRIGHT_COLORS: AnsiColors = AnsiColors::new( + AnsiColor::from_u32(0xC4CDDCFF), + AnsiColor::from_u32(0xD35765FF), + AnsiColor::from_u32(0x3FA472FF), + AnsiColor::from_u32(0xC2983FFF), + AnsiColor::from_u32(0x2674F4FF), + AnsiColor::from_u32(0x9372DEFF), + AnsiColor::from_u32(0x4297C1FF), + AnsiColor::from_u32(0x04080FFF), +); const PHENOMENON_NORMAL_COLORS: AnsiColors = AnsiColors::new( AnsiColor::from_u32(0x121212FF), @@ -258,6 +299,14 @@ pub(super) fn adeberry_colors() -> TerminalColors { TerminalColors::new(ADEBERRY_NORMAL_COLORS, ADEBERRY_BRIGHT_COLORS) } +pub(super) fn samsung_dark_colors() -> TerminalColors { + TerminalColors::new(SAMSUNG_DARK_NORMAL_COLORS, SAMSUNG_DARK_BRIGHT_COLORS) +} + +pub(super) fn samsung_light_colors() -> TerminalColors { + TerminalColors::new(SAMSUNG_LIGHT_NORMAL_COLORS, SAMSUNG_LIGHT_BRIGHT_COLORS) +} + /// Default bundled themes pub fn dark_theme() -> WarpTheme { WarpTheme::new( @@ -614,6 +663,31 @@ pub(super) fn adeberry() -> WarpTheme { ) } +pub(super) fn samsung_dark() -> WarpTheme { + WarpTheme::new( + Fill::Solid(ColorU::from_u32(0x0C0F16FF)), + ColorU::from_u32(0xEEF2FAFF), + Fill::Solid(ColorU::from_u32(0x1F6FFFFF)), + None, + Some(Details::Darker), + samsung_dark_colors(), + None, + Some("Samsung Dark".to_string()), + ) +} + +pub(super) fn samsung_light() -> WarpTheme { + WarpTheme::new( + Fill::Solid(ColorU::from_u32(0xF7F9FCFF)), + ColorU::from_u32(0x10131BFF), + Fill::Solid(ColorU::from_u32(0x034AE5FF)), + None, + Some(Details::Lighter), + samsung_light_colors(), + None, + Some("Samsung Light".to_string()), + ) +} pub(super) fn received_referral_reward() -> WarpTheme { WarpTheme::new( Fill::Solid(ColorU::from_u32(0xFFFFFFFF)), diff --git a/app/src/themes/mod.rs b/app/src/themes/mod.rs index 1f4de561..9c91a3e5 100644 --- a/app/src/themes/mod.rs +++ b/app/src/themes/mod.rs @@ -7,7 +7,7 @@ pub mod theme_creator_modal; pub mod theme_deletion_body; pub mod theme_deletion_modal; -use warp_core::ui::theme::WarpTheme; +use galaxy_core::ui::theme::WarpTheme; pub fn onboarding_theme_picker_themes() -> [WarpTheme; 4] { [ diff --git a/app/src/themes/theme.rs b/app/src/themes/theme.rs index 13cb1ad3..ab733505 100644 --- a/app/src/themes/theme.rs +++ b/app/src/themes/theme.rs @@ -4,9 +4,9 @@ use serde::{Deserialize, Serialize}; use std::collections::HashMap; use std::iter::FromIterator; use std::path::PathBuf; -use warp_core::ui::color::pick_foreground_color; -use warpui::assets::asset_cache::AssetSource; -use warpui::{ +use galaxy_core::ui::color::pick_foreground_color; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::{ color::ColorU, elements::{ Align, Border, ConstrainedBox, Container, Element, Empty, Flex, ParentElement, Rect, @@ -17,8 +17,8 @@ use warpui::{ use super::theme_creator::{pick_accent_color_from_options, top_colors_for_image}; -pub use warp_core::ui::color::blend::Blend; -pub use warp_core::ui::theme::*; +pub use galaxy_core::ui::color::blend::Blend; +pub use galaxy_core::ui::theme::*; const THUMBNAIL_MARGIN: f32 = 10.; @@ -49,6 +49,10 @@ pub enum ThemeKind { ReceivedReferralReward, #[schemars(description = "Adeberry")] Adeberry, + #[schemars(description = "Samsung Dark")] + SamsungDark, + #[schemars(description = "Samsung Light")] + SamsungLight, #[schemars(description = "Phenomenon")] Phenomenon, #[default] @@ -133,6 +137,8 @@ impl std::fmt::Display for ThemeKind { ThemeKind::Phenomenon => "Phenomenon", ThemeKind::SolarFlare => "Solar Flare", ThemeKind::Adeberry => "Adeberry", + ThemeKind::SamsungDark => "Samsung Dark", + ThemeKind::SamsungLight => "Samsung Light", ThemeKind::SentReferralReward => "Warp Referral", ThemeKind::ReceivedReferralReward => "Referred to Warp", ThemeKind::Custom(custom_theme) => custom_theme.name.as_str(), @@ -321,6 +327,8 @@ impl WarpThemeConfig { (ThemeKind::Phenomenon, phenomenon()), (ThemeKind::SolarFlare, solar_flare()), (ThemeKind::Adeberry, adeberry()), + (ThemeKind::SamsungDark, samsung_dark()), + (ThemeKind::SamsungLight, samsung_light()), ]); WarpThemeConfig { theme_map } } @@ -517,9 +525,9 @@ pub fn render_preview( thumbnail.add_child( Shrinkable::new( 1., - warpui::elements::Image::new( + galaxyui::elements::Image::new( background_image.source(), - warpui::elements::CacheOption::BySize, + galaxyui::elements::CacheOption::BySize, ) .cover() .finish(), diff --git a/app/src/themes/theme_chooser.rs b/app/src/themes/theme_chooser.rs index 9fc34e00..c5c29b02 100644 --- a/app/src/themes/theme_chooser.rs +++ b/app/src/themes/theme_chooser.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; use settings::Setting as _; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ Align, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, @@ -150,7 +150,7 @@ pub struct ThemeChooser { search_editor: ViewHandle, referral_theme_status: ModelHandle, tips_completed: ModelHandle, - window_id: warpui::WindowId, + window_id: galaxyui::WindowId, } #[derive(Debug)] @@ -165,7 +165,7 @@ pub enum ThemeChooserAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::new("up", ThemeChooserAction::Up, id!("ThemeChooser")), diff --git a/app/src/themes/theme_creator_body.rs b/app/src/themes/theme_creator_body.rs index 43d82757..52029128 100644 --- a/app/src/themes/theme_creator_body.rs +++ b/app/src/themes/theme_creator_body.rs @@ -14,18 +14,18 @@ use std::path::PathBuf; #[cfg(feature = "local_fs")] use std::{fs::copy, io::Write}; #[cfg(feature = "local_fs")] -use warp_core::ui::theme::WarpTheme; -use warpui::elements::{ +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, EventHandler, Fill, Flex, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Rect, SavePosition, Shrinkable, Text, }; -use warpui::fonts::Weight; -use warpui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::ui_components::text_input::TextInput; -use warpui::ViewHandle; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::ui_components::text_input::TextInput; +use galaxyui::ViewHandle; +use galaxyui::{ platform::Cursor, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; diff --git a/app/src/themes/theme_creator_modal.rs b/app/src/themes/theme_creator_modal.rs index 03ec424d..281da824 100644 --- a/app/src/themes/theme_creator_modal.rs +++ b/app/src/themes/theme_creator_modal.rs @@ -7,14 +7,14 @@ use crate::view_components::DismissibleToast; use crate::workspace::ToastStack; use std::default::Default; use std::path::PathBuf; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::platform::{FilePickerConfiguration, FileType}; -use warpui::presenter::ChildView; -use warpui::ui_components::components::{Coords, UiComponentStyles}; -use warpui::ViewHandle; -use warpui::{AppContext, SingletonEntity as _}; -use warpui::{Element, Entity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::{FilePickerConfiguration, FileType}; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponentStyles}; +use galaxyui::ViewHandle; +use galaxyui::{AppContext, SingletonEntity as _}; +use galaxyui::{Element, Entity, TypedActionView, View, ViewContext}; const THEME_CREATOR_MODAL_HEADER: &str = "Create new theme from image"; @@ -34,7 +34,7 @@ pub enum ThemeCreatorModalEvent { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/themes/theme_deletion_body.rs b/app/src/themes/theme_deletion_body.rs index 9cf7b2b4..be22d054 100644 --- a/app/src/themes/theme_deletion_body.rs +++ b/app/src/themes/theme_deletion_body.rs @@ -8,15 +8,15 @@ use crate::user_config::util::from_yaml; use std::default::Default; use std::fs; use std::fs::remove_file; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::{ +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::{ Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisSize, MouseStateHandle, ParentElement, Radius, SavePosition, Shrinkable, Text, }; -use warpui::fonts::Weight; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ platform::Cursor, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; diff --git a/app/src/themes/theme_deletion_modal.rs b/app/src/themes/theme_deletion_modal.rs index d7bdabdd..5d31455a 100644 --- a/app/src/themes/theme_deletion_modal.rs +++ b/app/src/themes/theme_deletion_modal.rs @@ -2,13 +2,13 @@ use crate::modal::Modal; use crate::themes::theme::ThemeKind; use crate::themes::theme_deletion_body::{ThemeDeletionBody, ThemeDeletionBodyEvent}; use std::default::Default; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::presenter::ChildView; -use warpui::ui_components::components::{Coords, UiComponentStyles}; -use warpui::AppContext; -use warpui::ViewHandle; -use warpui::{Element, Entity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponentStyles}; +use galaxyui::AppContext; +use galaxyui::ViewHandle; +use galaxyui::{Element, Entity, TypedActionView, View, ViewContext}; const THEME_DELETION_MODAL_HEADER: &str = "Are you sure you want to delete this theme?"; @@ -28,7 +28,7 @@ pub enum ThemeDeletionModalEvent { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/themes/theme_test.rs b/app/src/themes/theme_test.rs index 5dc4ac5c..3639c208 100644 --- a/app/src/themes/theme_test.rs +++ b/app/src/themes/theme_test.rs @@ -14,7 +14,7 @@ fn in_memory_theme_generation_test() { .iter() .collect(); - let mut in_memory_theme = warpui::r#async::block_on(InMemoryThemeOptions::new( + let mut in_memory_theme = galaxyui::r#async::block_on(InMemoryThemeOptions::new( "mountains".to_string(), mountains_bg_path.clone(), )) diff --git a/app/src/throttle.rs b/app/src/throttle.rs index d5458162..2694d613 100644 --- a/app/src/throttle.rs +++ b/app/src/throttle.rs @@ -3,7 +3,7 @@ use std::{pin, task, time::Duration}; use futures_lite::{ready, Stream}; use pin::Pin; use task::{Context, Poll}; -use warpui::r#async::Timer; +use galaxyui::r#async::Timer; pub struct Throttle { period: Duration, diff --git a/app/src/tips/mod.rs b/app/src/tips/mod.rs index 95a7fb1f..b1fe29c8 100644 --- a/app/src/tips/mod.rs +++ b/app/src/tips/mod.rs @@ -1,5 +1,5 @@ use serde::{Deserialize, Serialize}; -use warpui::{keymap::Keystroke, AppContext}; +use galaxyui::{keymap::Keystroke, AppContext}; pub mod tip_view; pub use tip_view::{TipsEvent, TipsView}; diff --git a/app/src/tips/tip_view.rs b/app/src/tips/tip_view.rs index 2b5cd382..70c7c4b7 100644 --- a/app/src/tips/tip_view.rs +++ b/app/src/tips/tip_view.rs @@ -1,12 +1,12 @@ use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ +use galaxyui::elements::{ Align, ChildAnchor, ClippedScrollStateHandle, ClippedScrollable, DispatchEventResult, EventHandler, Hoverable, Icon, MouseStateHandle, OffsetPositioning, PositionedElementAnchor, PositionedElementOffsetBounds, Radius, ScrollbarWidth, Stack, }; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::{ +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Flex, ParentElement, Shrinkable, @@ -16,8 +16,8 @@ use warpui::{ ui_components::components::{UiComponent, UiComponentStyles}, AppContext, Entity, TypedActionView, View, }; -use warpui::{keymap::FixedBinding, ViewContext}; -use warpui::{Action, BlurContext, EntityId, ModelHandle, SingletonEntity, WindowId}; +use galaxyui::{keymap::FixedBinding, ViewContext}; +use galaxyui::{Action, BlurContext, EntityId, ModelHandle, SingletonEntity, WindowId}; use crate::appearance::Appearance; use crate::resource_center::{Tip, TipAction, TipsCompleted}; @@ -95,7 +95,7 @@ pub enum TipsAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![FixedBinding::new( "escape", diff --git a/app/src/tips/tip_view_test.rs b/app/src/tips/tip_view_test.rs index 0718839c..5683000c 100644 --- a/app/src/tips/tip_view_test.rs +++ b/app/src/tips/tip_view_test.rs @@ -1,5 +1,5 @@ use super::*; -use warpui::{ +use galaxyui::{ elements::{ChildView, Empty, SavePosition}, platform::WindowStyle, App, ViewHandle, diff --git a/app/src/ui_components/avatar.rs b/app/src/ui_components/avatar.rs index 298be8e5..33200a0c 100644 --- a/app/src/ui_components/avatar.rs +++ b/app/src/ui_components/avatar.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ self, Align, Border, CacheOption, ConstrainedBox, Container, Element, Image, ParentElement, Text, @@ -7,10 +7,10 @@ use warpui::{ }; use super::red_notification_dot::RedNotificationDot; -use warp_core::ui::{external_product_icon::ExternalProductIcon, icons::Icon}; +use galaxy_core::ui::{external_product_icon::ExternalProductIcon, icons::Icon}; use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ChildAnchor, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack}; +use galaxyui::elements::{ChildAnchor, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack}; pub enum AvatarContent { /// Rendered as capital initial of the given display name. diff --git a/app/src/ui_components/blended_colors.rs b/app/src/ui_components/blended_colors.rs index 537e753f..c462238c 100644 --- a/app/src/ui_components/blended_colors.rs +++ b/app/src/ui_components/blended_colors.rs @@ -1 +1 @@ -pub use warp_core::ui::theme::color::internal_colors::*; +pub use galaxy_core::ui::theme::color::internal_colors::*; diff --git a/app/src/ui_components/breadcrumb.rs b/app/src/ui_components/breadcrumb.rs index 039638c8..1813f85d 100644 --- a/app/src/ui_components/breadcrumb.rs +++ b/app/src/ui_components/breadcrumb.rs @@ -1,7 +1,7 @@ use std::fmt::Debug; use itertools::{Itertools, Position}; -use warpui::{ +use galaxyui::{ elements::{ CrossAxisAlignment, Flex, Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Shrinkable, diff --git a/app/src/ui_components/buttons.rs b/app/src/ui_components/buttons.rs index 38788e3e..aba3703c 100644 --- a/app/src/ui_components/buttons.rs +++ b/app/src/ui_components/buttons.rs @@ -3,10 +3,10 @@ use super::{blended_colors, BORDER_RADIUS}; use crate::appearance::Appearance; use crate::themes::theme::Fill; use crate::themes::theme::WarpTheme; -use warpui::elements::Radius; -use warpui::elements::{CornerRadius, MouseStateHandle}; -use warpui::ui_components::button::Button; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::elements::Radius; +use galaxyui::elements::{CornerRadius, MouseStateHandle}; +use galaxyui::ui_components::button::Button; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; const ICON_BUTTON_PADDING: f32 = 4.; @@ -130,7 +130,7 @@ pub fn combo_inner_button( Some(combo_inner_button_styles(theme, ButtonState::Pressed)), Some(combo_inner_button_styles(theme, ButtonState::Disabled)), ) - .with_icon_label(icon.to_warpui_icon(theme.foreground())); + .with_icon_label(icon.to_galaxyui_icon(theme.foreground())); if active { return button.active(); @@ -163,7 +163,7 @@ fn icon_button_internal( button_styles.clicked_styles, button_styles.disabled_styles, ) - .with_icon_label(icon.to_warpui_icon(color.unwrap_or(icon_color(theme, mode)))); + .with_icon_label(icon.to_galaxyui_icon(color.unwrap_or(icon_color(theme, mode)))); if let Some(color) = color.take() { // We also need to set the font color here to get the button to be colored correctly. diff --git a/app/src/ui_components/color_dot.rs b/app/src/ui_components/color_dot.rs index 068dcae9..421a5618 100644 --- a/app/src/ui_components/color_dot.rs +++ b/app/src/ui_components/color_dot.rs @@ -2,13 +2,13 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use ui_components::tooltip::{Params as TooltipParams, Tooltip as TooltipComponent}; use ui_components::{Component as _, Options as ComponentOptions}; -use warp_core::ui::theme::{AnsiColorIdentifier, Fill as ThemeFill}; -use warpui::elements::{ +use galaxy_core::ui::theme::{AnsiColorIdentifier, Fill as ThemeFill}; +use galaxyui::elements::{ Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, Element, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, }; -use warpui::platform::Cursor; +use galaxyui::platform::Cursor; use crate::appearance::Appearance; use crate::ui_components::icons::Icon; @@ -40,7 +40,7 @@ pub(crate) fn render_color_dot( ) -> Hoverable { Hoverable::new(mouse_state, move |state| { let overlay: Option> = if is_no_color { - Some(Icon::SlashCircle.to_warpui_icon(foreground_color).finish()) + Some(Icon::SlashCircle.to_galaxyui_icon(foreground_color).finish()) } else { None }; @@ -81,7 +81,7 @@ fn render_dot_element( ring_color: ColorU, overlay: Option>, ) -> Box { - let dot = ConstrainedBox::new(Icon::Ellipse.to_warpui_icon(dot_color.into()).finish()) + let dot = ConstrainedBox::new(Icon::Ellipse.to_galaxyui_icon(dot_color.into()).finish()) .with_width(COLOR_DOT_SIZE) .with_height(COLOR_DOT_SIZE) .finish(); diff --git a/app/src/ui_components/dialog.rs b/app/src/ui_components/dialog.rs index 0d50c6a3..16f42a96 100644 --- a/app/src/ui_components/dialog.rs +++ b/app/src/ui_components/dialog.rs @@ -1,11 +1,11 @@ use super::blended_colors; use crate::appearance::Appearance; -use warpui::elements::{ +use galaxyui::elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; const DIALOG_PADDING: f32 = 20.; @@ -32,10 +32,10 @@ pub fn dialog_styles(appearance: &Appearance) -> UiComponentStyles { font_family_id: Some(appearance.header_font_family()), font_size: Some(16.), font_color: Some(blended_colors::text_main(theme, background)), - font_weight: Some(warpui::fonts::Weight::Bold), + font_weight: Some(galaxyui::fonts::Weight::Bold), background: Some(background.into()), border_color: Some(theme.surface_3().into()), - border_radius: Some(CornerRadius::with_all(warpui::elements::Radius::Pixels(8.))), + border_radius: Some(CornerRadius::with_all(galaxyui::elements::Radius::Pixels(8.))), border_width: Some(1.), ..Default::default() } diff --git a/app/src/ui_components/icon_with_status.rs b/app/src/ui_components/icon_with_status.rs index 4531883e..9add667f 100644 --- a/app/src/ui_components/icon_with_status.rs +++ b/app/src/ui_components/icon_with_status.rs @@ -1,9 +1,9 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::icons::Icon as WarpIcon; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::{Fill as WarpThemeFill, WarpTheme}; -use warpui::elements::{ +use galaxy_core::ui::icons::Icon as WarpIcon; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::{Fill as WarpThemeFill, WarpTheme}; +use galaxyui::elements::{ ChildAnchor, ConstrainedBox, Container, CornerRadius, Element, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, }; @@ -58,7 +58,7 @@ pub(crate) fn render_icon_with_status( match variant { IconWithStatusVariant::Neutral { icon, icon_color } => { - let inner = ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + let inner = ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(sizing.icon_size) .with_height(sizing.icon_size) .finish(); @@ -90,7 +90,7 @@ pub(crate) fn render_icon_with_status( WarpIcon::Oz }; let inner = ConstrainedBox::new( - icon.to_warpui_icon(theme.main_text_color(theme.background())) + icon.to_galaxyui_icon(theme.main_text_color(theme.background())) .finish(), ) .with_width(sizing.icon_size) @@ -119,10 +119,10 @@ pub(crate) fn render_icon_with_status( let icon_element = agent .icon() .map(|icon| { - icon.to_warpui_icon(WarpThemeFill::Solid(icon_color)) + icon.to_galaxyui_icon(WarpThemeFill::Solid(icon_color)) .finish() }) - .unwrap_or_else(|| WarpIcon::Terminal.to_warpui_icon(sub_text).finish()); + .unwrap_or_else(|| WarpIcon::Terminal.to_galaxyui_icon(sub_text).finish()); let inner = ConstrainedBox::new(icon_element) .with_width(sizing.icon_size) .with_height(sizing.icon_size) @@ -157,7 +157,7 @@ fn render_with_optional_status_badge( return circle; }; let (icon, color) = status.status_icon_and_color(theme); - let badge_icon = ConstrainedBox::new(icon.to_warpui_icon(WarpThemeFill::Solid(color)).finish()) + let badge_icon = ConstrainedBox::new(icon.to_galaxyui_icon(WarpThemeFill::Solid(color)).finish()) .with_width(sizing.badge_icon_size) .with_height(sizing.badge_icon_size) .finish(); diff --git a/app/src/ui_components/item_highlight.rs b/app/src/ui_components/item_highlight.rs index 92e837d3..419d187c 100644 --- a/app/src/ui_components/item_highlight.rs +++ b/app/src/ui_components/item_highlight.rs @@ -1,10 +1,10 @@ use crate::ui_components::blended_colors; use crate::{appearance::Appearance, ui_components::icons::Icon}; use pathfinder_color::ColorU; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::Fill; -use warpui::elements::{CornerRadius, MouseState, Radius}; -use warpui::Element; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{CornerRadius, MouseState, Radius}; +use galaxyui::Element; /// Shared item highlight state for left-panel style lists (file tree, global search results, /// warp drive rows, etc.). diff --git a/app/src/ui_components/menu_button.rs b/app/src/ui_components/menu_button.rs index 8c0515db..528c39df 100644 --- a/app/src/ui_components/menu_button.rs +++ b/app/src/ui_components/menu_button.rs @@ -1,12 +1,12 @@ use crate::appearance::Appearance; use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warpui::elements::{ +use galaxyui::elements::{ ChildAnchor, ChildView, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Stack, }; -use warpui::platform::Cursor; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{AppContext, Element, EventContext, View, ViewHandle}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Element, EventContext, View, ViewHandle}; use super::buttons::{highlight, icon_button}; use super::icons::Icon; @@ -104,7 +104,7 @@ where { let button = icon_button(appearance, icon, is_menu_open, mouse_state_handle) .with_hovered_styles( - warpui::ui_components::components::UiComponentStyles::default() + galaxyui::ui_components::components::UiComponentStyles::default() .set_background(appearance.theme().surface_1().into()) .set_border_color(appearance.theme().surface_3().into()), ) @@ -141,7 +141,7 @@ where appearance, ) .with_hovered_styles( - warpui::ui_components::components::UiComponentStyles::default() + galaxyui::ui_components::components::UiComponentStyles::default() .set_background(appearance.theme().surface_1().into()) .set_border_color(appearance.theme().surface_3().into()), ); diff --git a/app/src/ui_components/mod.rs b/app/src/ui_components/mod.rs index c6d123c7..c88c669b 100644 --- a/app/src/ui_components/mod.rs +++ b/app/src/ui_components/mod.rs @@ -16,6 +16,6 @@ pub(crate) mod render_file_search_row; pub mod tab_selector; pub(crate) mod window_focus_dimming; -pub use warp_core::ui::icons; +pub use galaxy_core::ui::icons; const BORDER_RADIUS: f32 = 4.; diff --git a/app/src/ui_components/red_notification_dot.rs b/app/src/ui_components/red_notification_dot.rs index 33064d6f..c505e07a 100644 --- a/app/src/ui_components/red_notification_dot.rs +++ b/app/src/ui_components/red_notification_dot.rs @@ -1,7 +1,7 @@ use crate::appearance::Appearance; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::{ +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::{ elements::{ ChildAnchor, ConstrainedBox, Container, CornerRadius, Empty, Fill, OffsetPositioning, ParentAnchor, ParentElement as _, ParentOffsetBounds, Radius, Stack, diff --git a/app/src/ui_components/render_file_search_row.rs b/app/src/ui_components/render_file_search_row.rs index e1e6c013..eb97d762 100644 --- a/app/src/ui_components/render_file_search_row.rs +++ b/app/src/ui_components/render_file_search_row.rs @@ -13,18 +13,18 @@ use fuzzy_match::FuzzyMatchResult; use std::path::Path; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Container, CrossAxisAlignment, Flex, Highlight, MainAxisSize, ParentElement, Shrinkable, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::text_layout::ClipConfig; -use warpui::{AppContext, Element}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::{AppContext, Element}; use crate::appearance::Appearance; use crate::search::ai_context_menu::safe_truncate; use crate::search::ItemHighlightState; -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; pub const MAX_COMBINED_LENGTH: usize = 55; diff --git a/app/src/ui_components/tab_selector.rs b/app/src/ui_components/tab_selector.rs index e4d0ee4d..8a5b5029 100644 --- a/app/src/ui_components/tab_selector.rs +++ b/app/src/ui_components/tab_selector.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Border, Container, CrossAxisAlignment, Element, Empty, Fill, Flex, MouseStateHandle, ParentElement, @@ -36,7 +36,7 @@ pub fn render_tab_selector( where // The on select function will take in the click event context and the selected label, // and will then presumably change the passed in selected label. - F: Fn(&str, &mut warpui::EventContext) + 'static + Clone, + F: Fn(&str, &mut galaxyui::EventContext) + 'static + Clone, { let mut tabs_row = Flex::row() .with_spacing(12.) diff --git a/app/src/ui_components/window_focus_dimming.rs b/app/src/ui_components/window_focus_dimming.rs index 818a95ef..54d4939c 100644 --- a/app/src/ui_components/window_focus_dimming.rs +++ b/app/src/ui_components/window_focus_dimming.rs @@ -1,9 +1,9 @@ -use warp_core::ui::color::coloru_with_opacity; -use warpui::elements::{ +use galaxy_core::ui::color::coloru_with_opacity; +use galaxyui::elements::{ ConstrainedBox, Element, Fill, Hoverable, MouseStateHandle, ParentElement, Rect, Stack, }; -use warpui::windowing::WindowManager; -use warpui::{AppContext, SingletonEntity, WindowId}; +use galaxyui::windowing::WindowManager; +use galaxyui::{AppContext, SingletonEntity, WindowId}; use crate::window_settings::WindowSettings; use crate::workspace::panel_header_corner_radius; @@ -23,7 +23,7 @@ impl WindowFocusDimming { /// unreliable due to soft keyboard management. pub fn is_window_focused(window_id: WindowId, ctx: &AppContext) -> bool { #[cfg(target_family = "wasm")] - if warpui::platform::wasm::is_mobile_device() { + if galaxyui::platform::wasm::is_mobile_device() { return true; } @@ -41,7 +41,7 @@ impl WindowFocusDimming { element: Box, mouse_state: MouseStateHandle, height: f32, - background_color: warpui::color::ColorU, + background_color: galaxyui::color::ColorU, window_id: WindowId, ctx: &AppContext, ) -> Box { diff --git a/app/src/undo_close/mod.rs b/app/src/undo_close/mod.rs index edde6c42..bc76cd95 100644 --- a/app/src/undo_close/mod.rs +++ b/app/src/undo_close/mod.rs @@ -1,7 +1,7 @@ pub mod settings; mod stack; -use warpui::{keymap::EditableBinding, AppContext}; +use galaxyui::{keymap::EditableBinding, AppContext}; use crate::{util::bindings::CustomAction, workspace::WorkspaceAction}; diff --git a/app/src/undo_close/stack.rs b/app/src/undo_close/stack.rs index c77df5a9..01916fd3 100644 --- a/app/src/undo_close/stack.rs +++ b/app/src/undo_close/stack.rs @@ -1,5 +1,5 @@ use uuid::Uuid; -use warpui::{ +use galaxyui::{ r#async::SpawnedFutureHandle, AppContext, ClosedWindowData, Entity, EntityId, ModelContext, ModelHandle, SingletonEntity, ViewHandle, WeakViewHandle, WindowId, }; @@ -362,7 +362,7 @@ impl UndoCloseStack { let id = ItemId::new(); let grace_period = *settings.grace_period; let task_handle = ctx.spawn_abortable( - warpui::r#async::Timer::after(grace_period), + galaxyui::r#async::Timer::after(grace_period), move |me, _, ctx| { let initial_len = me.stack.len(); if let Some(pos) = me.stack.iter().position(|item| item.expiry_data.id == id) { diff --git a/app/src/uri/browser_url_handler.rs b/app/src/uri/browser_url_handler.rs index 82da34f6..241f674e 100644 --- a/app/src/uri/browser_url_handler.rs +++ b/app/src/uri/browser_url_handler.rs @@ -1,6 +1,6 @@ use url::Url; -const DEFAULT_TITLE: &str = "Warp"; +const DEFAULT_TITLE: &str = "Galaxy AI"; const BASE_APP_PATH: &str = "/app"; pub fn update_browser_url(url: Option, force_redirect: bool) { diff --git a/app/src/uri/docker.rs b/app/src/uri/docker.rs index 59d2a781..1e6ca232 100644 --- a/app/src/uri/docker.rs +++ b/app/src/uri/docker.rs @@ -5,8 +5,8 @@ use crate::{ }; use regex::Regex; use url::Url; -use warp_util::path::{is_posix_portable_pathname, ShellFamily}; -use warpui::AppContext; +use galaxy_util::path::{is_posix_portable_pathname, ShellFamily}; +use galaxyui::AppContext; use crate::root_view::SubshellCommandArg; diff --git a/app/src/uri/docker_test.rs b/app/src/uri/docker_test.rs index bfbe63f2..6234f937 100644 --- a/app/src/uri/docker_test.rs +++ b/app/src/uri/docker_test.rs @@ -1,4 +1,4 @@ -use warpui::App; +use galaxyui::App; use crate::{ auth::{auth_manager::AuthManager, AuthStateProvider}, diff --git a/app/src/uri/mod.rs b/app/src/uri/mod.rs index 700cb8db..7639eaa9 100644 --- a/app/src/uri/mod.rs +++ b/app/src/uri/mod.rs @@ -33,10 +33,10 @@ use std::collections::HashMap; use std::path::PathBuf; use std::str::FromStr; use url::Url; -use warpui::notification::UserNotification; -use warpui::{platform::TerminationMode, SingletonEntity as _, TypedActionView}; +use galaxyui::notification::UserNotification; +use galaxyui::{platform::TerminationMode, SingletonEntity as _, TypedActionView}; -use warpui::{AppContext, EntityId, ViewHandle, WindowId}; +use galaxyui::{AppContext, EntityId, ViewHandle, WindowId}; use self::docker::open_docker_container; diff --git a/app/src/uri/web_intent_parser.rs b/app/src/uri/web_intent_parser.rs index 628451bc..eba7054e 100644 --- a/app/src/uri/web_intent_parser.rs +++ b/app/src/uri/web_intent_parser.rs @@ -6,7 +6,7 @@ use url::Url; use uuid::Uuid; #[cfg(target_family = "wasm")] -use warp_core::context_flag::ContextFlag; +use galaxy_core::context_flag::ContextFlag; #[derive(Debug)] /// Represents an intent parsed from a web url diff --git a/app/src/user_config/mod.rs b/app/src/user_config/mod.rs index e32e187e..79e66f15 100644 --- a/app/src/user_config/mod.rs +++ b/app/src/user_config/mod.rs @@ -14,8 +14,8 @@ use lazy_static::lazy_static; #[cfg(feature = "local_fs")] use std::path::Path; use std::path::PathBuf; -use warp_core::ui::theme::WarpTheme; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::ui::theme::WarpTheme; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[cfg(test)] pub(crate) use imp::load_tab_configs; @@ -48,7 +48,7 @@ lazy_static! { # commands: # - exec: code . ", - warp_core::paths::home_relative_path(&crate::user_config::launch_configs_dir()) + galaxy_core::paths::home_relative_path(&crate::user_config::launch_configs_dir()) ); } @@ -168,12 +168,12 @@ impl WarpConfig { /// Returns the base directory in which all of the user's data is stored. fn base_dir() -> PathBuf { - warp_core::paths::data_dir() + galaxy_core::paths::data_dir() } /// Returns the path to the directory containing the user's custom themes. pub fn themes_dir() -> PathBuf { - warp_core::paths::themes_dir() + galaxy_core::paths::themes_dir() } /// Returns the path to the directory containing the user's custom workflows. diff --git a/app/src/user_config/native.rs b/app/src/user_config/native.rs index 8ca82291..0099c892 100644 --- a/app/src/user_config/native.rs +++ b/app/src/user_config/native.rs @@ -6,7 +6,7 @@ use std::path::Path; use anyhow::{anyhow, Result}; use itertools::Itertools; use repo_metadata::RepositoryUpdate; -use warpui::{ModelContext, SingletonEntity}; +use galaxyui::{ModelContext, SingletonEntity}; use crate::features::FeatureFlag; use crate::launch_configs::launch_config::LaunchConfig; diff --git a/app/src/user_config/wasm.rs b/app/src/user_config/wasm.rs index 3dce4fa5..0d4ccbb1 100644 --- a/app/src/user_config/wasm.rs +++ b/app/src/user_config/wasm.rs @@ -1,6 +1,6 @@ use std::path::Path; -use warpui::ModelContext; +use galaxyui::ModelContext; use crate::launch_configs::launch_config::LaunchConfig; use crate::themes::theme::WarpThemeConfig; diff --git a/app/src/util/bindings.rs b/app/src/util/bindings.rs index acef9f9b..83c64d48 100644 --- a/app/src/util/bindings.rs +++ b/app/src/util/bindings.rs @@ -12,9 +12,9 @@ use std::{ collections::{HashMap, HashSet}, sync::Arc, }; -use warpui::keymap::{BindingId, IsBindingValid}; -use warpui::platform::OperatingSystem; -use warpui::{ +use galaxyui::keymap::{BindingId, IsBindingValid}; +use galaxyui::platform::OperatingSystem; +use galaxyui::{ actions::StandardAction, keymap::{ BindingDescription, BindingLens, CustomTag, DescriptionContext, EditableBindingLens, @@ -22,7 +22,7 @@ use warpui::{ }, Action, }; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; pub const MAC_MENUS_CONTEXT: DescriptionContext = DescriptionContext::Custom("mac_menus"); @@ -797,7 +797,7 @@ fn materialize_description(desc: &BindingDescription, ctx: &AppContext) -> Bindi /// Possible groups a Binding can be part of. The string representation (produced in /// [`BindingGroup::as_str`]) is used as the group identifier within -/// [`warpui::keymap::FixedBinding`] or [`EditableBinding`]. +/// [`galaxyui::keymap::FixedBinding`] or [`EditableBinding`]. #[derive(Copy, Clone, Debug, Sequence)] pub enum BindingGroup { Settings, @@ -857,8 +857,8 @@ impl BindingGroup { /// framework and we can't easily produce the shift-modified version of the key ourselves. In this case the recommended /// solution is to to create separate [`Keystroke`]s for the Mac and non-Mac cases. For example: /// ``` -/// use warpui::keymap::Keystroke; -/// use warpui::platform::OperatingSystem; +/// use galaxyui::keymap::Keystroke; +/// use galaxyui::platform::OperatingSystem; /// let keystroke = if OperatingSystem::get().is_mac() { /// Keystroke::parse("cmd-[") /// } else { diff --git a/app/src/util/bindings_tests.rs b/app/src/util/bindings_tests.rs index 029d8c38..b09cd4c6 100644 --- a/app/src/util/bindings_tests.rs +++ b/app/src/util/bindings_tests.rs @@ -1,5 +1,5 @@ -use warpui::platform::OperatingSystem; -use warpui::{ +use galaxyui::platform::OperatingSystem; +use galaxyui::{ keymap::{EditableBinding, Keystroke, Trigger}, App, }; diff --git a/app/src/util/clipboard.rs b/app/src/util/clipboard.rs index b612cf70..ffe99807 100644 --- a/app/src/util/clipboard.rs +++ b/app/src/util/clipboard.rs @@ -1,8 +1,8 @@ use std::borrow::Cow; use itertools::Itertools; -use warp_util::path::ShellFamily; -use warpui::clipboard::ClipboardContent; +use galaxy_util::path::ShellFamily; +use galaxyui::clipboard::ClipboardContent; /// Returns a string representation of the ClipboardContent with any paths properly escaped if there is a known shell. If not, do not escape the paths. pub fn clipboard_content_with_escaped_paths( diff --git a/app/src/util/color.rs b/app/src/util/color.rs index a3c53c51..382d6077 100644 --- a/app/src/util/color.rs +++ b/app/src/util/color.rs @@ -1,2 +1,2 @@ -pub use warp_core::ui::color::contrast::*; -pub use warp_core::ui::color::*; +pub use galaxy_core::ui::color::contrast::*; +pub use galaxy_core::ui::color::*; diff --git a/app/src/util/file.rs b/app/src/util/file.rs index 4245ef6e..d1fdecf8 100644 --- a/app/src/util/file.rs +++ b/app/src/util/file.rs @@ -4,8 +4,8 @@ use std::io; use std::path::{Path, PathBuf}; #[cfg(windows)] -use warp_util::path::is_network_resource; -use warp_util::path::{CleanPathResult, LineAndColumnArg}; +use galaxy_util::path::is_network_resource; +use galaxy_util::path::{CleanPathResult, LineAndColumnArg}; use crate::terminal::model::grid::grid_handler::{ContainsPoint, Link}; use crate::terminal::model::index::Point; diff --git a/app/src/util/file/external_editor/linux.rs b/app/src/util/file/external_editor/linux.rs index 6d45c5fb..5120735e 100644 --- a/app/src/util/file/external_editor/linux.rs +++ b/app/src/util/file/external_editor/linux.rs @@ -7,8 +7,8 @@ use std::{ use command::blocking::Command; use freedesktop_desktop_entry::DesktopEntry; -use warp_util::path::LineAndColumnArg; -use warpui::AppContext; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::AppContext; use super::Editor; @@ -78,7 +78,7 @@ impl EditorMetadata { /// /// ```ignore /// use std::path::PathBuf; - /// use warp::util::file::external_editor::linux::EditorMetadata; + /// use galaxy::util::file::external_editor::linux::EditorMetadata; /// /// let desktop_file_path = PathBuf::from("/var/lib/snapd/desktop/applications/webstorm_webstorm.desktop"); /// let metadata = EditorMetadata::try_new(desktop_file_path)?; diff --git a/app/src/util/file/external_editor/linux_tests.rs b/app/src/util/file/external_editor/linux_tests.rs index 1061263c..e029faf1 100644 --- a/app/src/util/file/external_editor/linux_tests.rs +++ b/app/src/util/file/external_editor/linux_tests.rs @@ -1,4 +1,4 @@ -use warp_util::path::LineAndColumnArg; +use galaxy_util::path::LineAndColumnArg; use super::{DesktopExecError, EditorMetadata}; use std::path::PathBuf; diff --git a/app/src/util/file/external_editor/mac.rs b/app/src/util/file/external_editor/mac.rs index 90f14617..a1df6792 100644 --- a/app/src/util/file/external_editor/mac.rs +++ b/app/src/util/file/external_editor/mac.rs @@ -9,7 +9,7 @@ use cocoa::{ foundation::{NSAutoreleasePool, NSString}, }; use command::r#async::Command; -use warpui::{platform::mac::make_nsstring, ApplicationBundleInfo}; +use galaxyui::{platform::mac::make_nsstring, ApplicationBundleInfo}; use super::*; diff --git a/app/src/util/file/external_editor/mod.rs b/app/src/util/file/external_editor/mod.rs index 7fde89ee..f2e04b38 100644 --- a/app/src/util/file/external_editor/mod.rs +++ b/app/src/util/file/external_editor/mod.rs @@ -10,8 +10,8 @@ use std::path::PathBuf; use serde::{Deserialize, Serialize}; use settings::EditorChoice; -use warp_util::path::LineAndColumnArg; -use warpui::{AppContext, SingletonEntity}; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{AppContext, SingletonEntity}; pub use self::settings::{EditorLayout, EditorSettings}; diff --git a/app/src/util/file/external_editor/mod_test.rs b/app/src/util/file/external_editor/mod_test.rs index a6cd7de1..25716eae 100644 --- a/app/src/util/file/external_editor/mod_test.rs +++ b/app/src/util/file/external_editor/mod_test.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use warp_util::path::LineAndColumnArg; +use galaxy_util::path::LineAndColumnArg; use super::generate_editor_command; diff --git a/app/src/util/file/external_editor/windows.rs b/app/src/util/file/external_editor/windows.rs index 882399c6..ae77807c 100644 --- a/app/src/util/file/external_editor/windows.rs +++ b/app/src/util/file/external_editor/windows.rs @@ -6,8 +6,8 @@ use enum_iterator::{all, cardinality}; use std::collections::HashMap; use std::path::{Path, PathBuf}; use std::sync::OnceLock; -use warp_util::path::LineAndColumnArg; -use warpui::AppContext; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::AppContext; use winreg::enums::{HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE}; use winreg::RegKey; use winreg::HKEY; diff --git a/app/src/util/git.rs b/app/src/util/git.rs index 889eccfa..96873a7a 100644 --- a/app/src/util/git.rs +++ b/app/src/util/git.rs @@ -698,7 +698,7 @@ pub async fn get_diff_for_commit_message( continue; } let check_len = bytes.len().min(BINARY_CHECK_BYTES); - if warp_util::file_type::is_buffer_binary(&bytes[..check_len]) { + if galaxy_util::file_type::is_buffer_binary(&bytes[..check_len]) { continue; } let Ok(content) = std::str::from_utf8(&bytes) else { @@ -1055,7 +1055,7 @@ fn count_lines_if_text_file(path: &Path) -> u32 { return 0; }; let check_len = content.len().min(BINARY_CHECK_SIZE); - if warp_util::file_type::is_buffer_binary(&content[..check_len]) { + if galaxy_util::file_type::is_buffer_binary(&content[..check_len]) { return 0; } bytecount::count(&content, b'\n') as u32 diff --git a/app/src/util/link_detection.rs b/app/src/util/link_detection.rs index de469540..3a4337af 100644 --- a/app/src/util/link_detection.rs +++ b/app/src/util/link_detection.rs @@ -1,9 +1,9 @@ use std::collections::HashMap; use std::ops::Range; use urlocator::{UrlLocation, UrlLocator}; -use warpui::elements::PartialClickableElement; +use galaxyui::elements::PartialClickableElement; -use warpui::platform::Cursor; +use galaxyui::platform::Cursor; use crate::ai::agent::{AIAgentActionType, AIAgentOutput, AIAgentTextSection, ReadFilesRequest}; use crate::ai::blocklist::block::view_impl::output::LinkActionConstructors; @@ -11,16 +11,16 @@ use crate::ai::blocklist::block::TextLocation; use crate::terminal::links::should_directly_open_link; use crate::terminal::model::grid::grid_handler::FILE_LINK_SEPARATORS; use crate::terminal::ShellLaunchData; -use warpui::elements::MouseStateHandle; -use warpui::text::char_slice; -use warpui::Action; +use galaxyui::elements::MouseStateHandle; +use galaxyui::text::char_slice; +use galaxyui::Action; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { use std::collections::HashSet; use std::path::Path; use std::path::PathBuf; - use warp_util::path::CleanPathResult; + use galaxy_util::path::CleanPathResult; } } @@ -113,7 +113,7 @@ pub(crate) enum DetectedLinkType { #[cfg(feature = "local_fs")] FilePath { absolute_path: PathBuf, - line_and_column_num: Option, + line_and_column_num: Option, }, } @@ -356,7 +356,7 @@ pub(crate) fn detect_file_paths( // Create a new DetectedLinkType with the same file path but with the line number let line_range_link = DetectedLinkType::FilePath { absolute_path: absolute_path.clone(), - line_and_column_num: Some(warp_util::path::LineAndColumnArg { + line_and_column_num: Some(galaxy_util::path::LineAndColumnArg { line_num: line_number as usize, column_num: None, }), @@ -374,8 +374,8 @@ pub(crate) fn detect_file_paths( } use string_offset::CharOffset; -use warp_editor::content::buffer::Buffer; -use warpui::text::word_boundaries::WordBoundariesPolicy; +use galaxy_editor::content::buffer::Buffer; +use galaxyui::text::word_boundaries::WordBoundariesPolicy; /// Returns the range of the word surrounding the given offset. pub(crate) fn get_word_range_at_offset( @@ -383,9 +383,9 @@ pub(crate) fn get_word_range_at_offset( offset: CharOffset, word_boundary_policy: Option, ) -> Option> { - use warp_editor::content::buffer::{ToBufferCharOffset, ToBufferPoint}; - use warpui::text::words::is_default_word_boundary; - use warpui::text::TextBuffer; + use galaxy_editor::content::buffer::{ToBufferCharOffset, ToBufferPoint}; + use galaxyui::text::words::is_default_word_boundary; + use galaxyui::text::TextBuffer; let word_boundary_policy = word_boundary_policy.unwrap_or(WordBoundariesPolicy::Default); let mut word_found_at: Option = None; diff --git a/app/src/util/openable_file_type.rs b/app/src/util/openable_file_type.rs index 1dce2c92..f587afca 100644 --- a/app/src/util/openable_file_type.rs +++ b/app/src/util/openable_file_type.rs @@ -4,7 +4,7 @@ use crate::util::file::external_editor::{settings::EditorChoice, Editor, EditorSettings}; use serde::{Deserialize, Serialize}; use std::path::Path; -pub use warp_util::file_type::{is_binary_file, is_file_content_binary, is_markdown_file}; +pub use galaxy_util::file_type::{is_binary_file, is_file_content_binary, is_markdown_file}; #[derive( Debug, diff --git a/app/src/util/tooltips.rs b/app/src/util/tooltips.rs index 321bca1d..18dbba54 100644 --- a/app/src/util/tooltips.rs +++ b/app/src/util/tooltips.rs @@ -3,7 +3,7 @@ #[cfg(feature = "local_fs")] use std::path::Path; -use warpui::{ +use galaxyui::{ elements::{ Border, Container, CornerRadius, Flex, MouseStateHandle, ParentElement, Radius, Text, }, @@ -249,7 +249,7 @@ pub fn should_show_open_in_warp_link(path: &Path, app: &AppContext) -> bool { notebooks::file::is_markdown_file, util::file::external_editor::{settings::EditorChoice, EditorSettings}, }; - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; let settings = EditorSettings::as_ref(app); diff --git a/app/src/util/traffic_lights.rs b/app/src/util/traffic_lights.rs index 5de80e86..2605dac0 100644 --- a/app/src/util/traffic_lights.rs +++ b/app/src/util/traffic_lights.rs @@ -13,7 +13,7 @@ mod linux_only { pub(super) use pathfinder_color::ColorU; pub(super) use pathfinder_geometry::vector::vec2f; pub(super) use std::sync::Arc; - pub(super) use warpui::elements::{ + pub(super) use galaxyui::elements::{ Align, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, Flex, Hoverable, Icon, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Rect, Stack, }; @@ -27,8 +27,8 @@ mod windows_only { pub(super) use crate::ui_components::icons::Icon as IconComponent; pub(super) use pathfinder_color::ColorU; pub(super) use pathfinder_geometry::vector::vec2f; - pub(super) use warp_core::ui::theme; - pub(super) use warpui::elements::{ + pub(super) use galaxy_core::ui::theme; + pub(super) use galaxyui::elements::{ Align, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, Hoverable, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Radius, Rect, Stack, }; @@ -47,12 +47,12 @@ mod windows_only { use windows_only::*; #[cfg(not(target_os = "windows"))] -use warpui::elements::Empty; +use galaxyui::elements::Empty; use crate::themes::theme::WarpTheme; -use warpui::elements::MouseStateHandle; -use warpui::platform::FullscreenState; -use warpui::{AppContext, Element, WindowId}; +use galaxyui::elements::MouseStateHandle; +use galaxyui::platform::FullscreenState; +use galaxyui::{AppContext, Element, WindowId}; #[cfg(any(target_os = "windows", target_os = "linux"))] const BUTTON_ICON_SIZE: f32 = 22.; @@ -135,7 +135,7 @@ impl TrafficLightData { /// Horizontal space needed for the traffic light buttons. /// /// Normally, we don't need to manually adjust any sizes based on zoom level as it is handled - /// by warpui. However, native traffic light buttons (e.g. on macOS) don't scale with zoom, so + /// by galaxyui. However, native traffic light buttons (e.g. on macOS) don't scale with zoom, so /// we need to divide by the zoom factor to keep the padding constant. pub fn width(&self, zoom_factor: f32) -> f32 { if self.scales_with_zoom { @@ -410,7 +410,7 @@ impl TrafficLightData { fn render_windows_close_button_icon(icon_color: ColorU) -> Box { ConstrainedBox::new( IconComponent::X - .to_warpui_icon(theme::Fill::Solid(icon_color)) + .to_galaxyui_icon(theme::Fill::Solid(icon_color)) .finish(), ) .with_height(16.) diff --git a/app/src/util/traffic_lights/windows/renderer.rs b/app/src/util/traffic_lights/windows/renderer.rs index a208d818..8bd0d9b6 100644 --- a/app/src/util/traffic_lights/windows/renderer.rs +++ b/app/src/util/traffic_lights/windows/renderer.rs @@ -6,14 +6,14 @@ use crate::util::traffic_lights::{TrafficLightData, TrafficLightMouseStates}; use crate::workspace::TOTAL_TAB_BAR_HEIGHT; use pathfinder_color::ColorU; use std::sync::Arc; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warpui::elements::{ +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxyui::elements::{ Align, ConstrainedBox, Container, CrossAxisAlignment, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Text, }; -use warpui::fonts::FamilyId; -use warpui::platform::FullscreenState; -use warpui::{AppContext, Element, SingletonEntity}; +use galaxyui::fonts::FamilyId; +use galaxyui::platform::FullscreenState; +use galaxyui::{AppContext, Element, SingletonEntity}; /// Possible window traffic light icons. #[derive(Copy, Clone)] diff --git a/app/src/util/traffic_lights/windows/renderer_state.rs b/app/src/util/traffic_lights/windows/renderer_state.rs index d67b21cd..97e25c27 100644 --- a/app/src/util/traffic_lights/windows/renderer_state.rs +++ b/app/src/util/traffic_lights/windows/renderer_state.rs @@ -1,7 +1,7 @@ //! Module containing the definition of [`RendererState`]. -use warpui::fonts::FamilyId; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::fonts::FamilyId; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; /// Helper singleton model that stores the icon font used to render native window controls on /// Windows. Using a symbol font (as opposed to SVGs) produces windows controls that are better @@ -33,7 +33,7 @@ impl RendererState { } fn load_symbol_font(symbol_font_to_load: &str, ctx: &mut AppContext) -> Option { - warpui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { + galaxyui::fonts::Cache::handle(ctx).update(ctx, |font_cache, _| { match font_cache.get_or_load_system_font(symbol_font_to_load) { Ok(family) => Some(family), Err(err) => { diff --git a/app/src/util/windows.rs b/app/src/util/windows.rs index 029c2ab0..7fbfd619 100644 --- a/app/src/util/windows.rs +++ b/app/src/util/windows.rs @@ -3,7 +3,7 @@ use std::path::{Path, PathBuf}; use std::sync::LazyLock; use std::{env, path}; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::system::SystemInfo; use crate::util::path::{file_exists_and_is_executable, resolve_executable}; diff --git a/app/src/view_components/action_button.rs b/app/src/view_components/action_button.rs index 2bd5bb3a..23d9378e 100644 --- a/app/src/view_components/action_button.rs +++ b/app/src/view_components/action_button.rs @@ -1,14 +1,14 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::{vec2f, Vector2F}; use std::{borrow::Cow, sync::Arc}; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, color::{coloru_with_opacity, contrast::MinimumAllowedContrast, ContrastingColor}, theme::{color::internal_colors, AnsiColorIdentifier, Fill}, }; -use warpui::{elements::MainAxisAlignment, Gradient}; -use warpui::{elements::MainAxisSize, text_layout::ClipConfig}; -use warpui::{ +use galaxyui::{elements::MainAxisAlignment, Gradient}; +use galaxyui::{elements::MainAxisSize, text_layout::ClipConfig}; +use galaxyui::{ elements::{ Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MouseStateHandle, OffsetPositioning, Padding, ParentAnchor, ParentElement as _, @@ -752,7 +752,7 @@ impl View for ActionButton { }) .unwrap_or(Fill::Solid(text_color)); row.add_child( - ConstrainedBox::new(icon.to_warpui_icon(icon_fill).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_fill).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), @@ -820,7 +820,7 @@ impl View for ActionButton { row.add_child( Container::new( ConstrainedBox::new( - Icon::ChevronDown.to_warpui_icon(text_color.into()).finish(), + Icon::ChevronDown.to_galaxyui_icon(text_color.into()).finish(), ) .with_width(icon_size) .with_height(icon_size) diff --git a/app/src/view_components/agent_toast.rs b/app/src/view_components/agent_toast.rs index 6dbc0603..f8adbb54 100644 --- a/app/src/view_components/agent_toast.rs +++ b/app/src/view_components/agent_toast.rs @@ -3,10 +3,10 @@ use std::time::Duration; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use uuid::Uuid; -use warpui::elements::{DropShadow, Expanded}; -use warpui::r#async::Timer; -use warpui::WindowId; -use warpui::{ +use galaxyui::elements::{DropShadow, Expanded}; +use galaxyui::r#async::Timer; +use galaxyui::WindowId; +use galaxyui::{ elements::{ ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, EventHandler, Flex, Hoverable, Icon, MouseStateHandle, @@ -434,7 +434,7 @@ impl AgentToast { keystroke: Keystroke, ) -> Box { use crate::ui_components::blended_colors; - use warpui::ui_components::keyboard_shortcut::KeyboardShortcut; + use galaxyui::ui_components::keyboard_shortcut::KeyboardShortcut; let theme = appearance.theme(); diff --git a/app/src/view_components/alert.rs b/app/src/view_components/alert.rs index 85611ab4..82422a0f 100644 --- a/app/src/view_components/alert.rs +++ b/app/src/view_components/alert.rs @@ -1,6 +1,6 @@ use pathfinder_color::ColorU; -use warp_core::ui::theme::color::internal_colors; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Icon, MainAxisSize, ParentElement, Radius, Shrinkable, diff --git a/app/src/view_components/callout_bubble.rs b/app/src/view_components/callout_bubble.rs index 7e087426..e439702c 100644 --- a/app/src/view_components/callout_bubble.rs +++ b/app/src/view_components/callout_bubble.rs @@ -1,12 +1,12 @@ use pathfinder_color::ColorU; -use warp_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; -use warpui::elements::{ +use galaxy_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; +use galaxyui::elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisSize, MouseStateHandle, ParentElement, Radius, Stack, }; -use warpui::ui_components::checkbox::Checkbox; -use warpui::ui_components::components::UiComponentStyles; -use warpui::Element; +use galaxyui::ui_components::checkbox::Checkbox; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::Element; use crate::appearance::Appearance; use crate::ui_components::icons::Icon; @@ -114,7 +114,7 @@ pub fn render_callout_bubble( .with_child( ConstrainedBox::new( border_icon - .to_warpui_icon(Fill::Solid(border_color)) + .to_galaxyui_icon(Fill::Solid(border_color)) .finish(), ) .with_width(24.) @@ -122,7 +122,7 @@ pub fn render_callout_bubble( .finish(), ) .with_child( - ConstrainedBox::new(fill_icon.to_warpui_icon(background).finish()) + ConstrainedBox::new(fill_icon.to_galaxyui_icon(background).finish()) .with_width(24.) .with_height(24.) .finish(), diff --git a/app/src/view_components/clickable_text_input.rs b/app/src/view_components/clickable_text_input.rs index b3531013..c538a464 100644 --- a/app/src/view_components/clickable_text_input.rs +++ b/app/src/view_components/clickable_text_input.rs @@ -2,7 +2,7 @@ use crate::{ appearance::Appearance, editor::{EditorOptions, EditorView, Event as EditorEvent, TextOptions}, }; -use warpui::{ +use galaxyui::{ elements::{Container, CornerRadius, Dismiss, MouseStateHandle, Radius}, fonts::Weight, platform::Cursor, diff --git a/app/src/view_components/compact_dropdown.rs b/app/src/view_components/compact_dropdown.rs index 0a2e6e28..c1f34d68 100644 --- a/app/src/view_components/compact_dropdown.rs +++ b/app/src/view_components/compact_dropdown.rs @@ -6,7 +6,7 @@ use crate::{ ui_components::icons::Icon, }; use pathfinder_geometry::vector::vec2f; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ConstrainedBox, CornerRadius, CrossAxisAlignment, Flex, Icon as WarpUiIcon, MainAxisAlignment, MouseStateHandle, OffsetPositioning, ParentElement, @@ -130,7 +130,7 @@ impl CompactDropdown { .override_icon_color() .unwrap_or_else(|| appearance.theme().active_ui_text_color()); button_label - .add_child(self.render_sized_icon(appearance, icon.to_warpui_icon(icon_color))); + .add_child(self.render_sized_icon(appearance, icon.to_galaxyui_icon(icon_color))); } } diff --git a/app/src/view_components/compact_dropdown_tests.rs b/app/src/view_components/compact_dropdown_tests.rs index 786422a4..767f41e4 100644 --- a/app/src/view_components/compact_dropdown_tests.rs +++ b/app/src/view_components/compact_dropdown_tests.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App, View}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App, View}; use crate::{menu::MenuVariant, ui_components::icons::Icon}; diff --git a/app/src/view_components/compactible_action_button.rs b/app/src/view_components/compactible_action_button.rs index 559b9ccf..2a10afb7 100644 --- a/app/src/view_components/compactible_action_button.rs +++ b/app/src/view_components/compactible_action_button.rs @@ -7,8 +7,8 @@ use crate::{ ActionButton, ActionButtonTheme, AdjoinedSide, ButtonSize, KeystrokeSource, }, }; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ ChildView, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, ParentElement, @@ -209,7 +209,7 @@ pub fn render_expansion_icon( app: &AppContext, ) -> Box { ConstrainedBox::new( - warpui::elements::Icon::new( + galaxyui::elements::Icon::new( if expanded { if expands_upwards { Icon::ChevronUp.into() diff --git a/app/src/view_components/compactible_split_action_button.rs b/app/src/view_components/compactible_split_action_button.rs index a5fdef6e..747bf981 100644 --- a/app/src/view_components/compactible_split_action_button.rs +++ b/app/src/view_components/compactible_split_action_button.rs @@ -1,7 +1,7 @@ use std::sync::Arc; -use warpui::elements::{ChildView, Flex, ParentElement, SavePosition}; -use warpui::{Action, Element, TypedActionView, View, ViewContext, ViewHandle}; +use galaxyui::elements::{ChildView, Flex, ParentElement, SavePosition}; +use galaxyui::{Action, Element, TypedActionView, View, ViewContext, ViewHandle}; use crate::view_components::action_button::AdjoinedSide; use crate::view_components::compactible_action_button::RenderCompactibleActionButton; diff --git a/app/src/view_components/copyable_text_field.rs b/app/src/view_components/copyable_text_field.rs index d5140c64..d7411042 100644 --- a/app/src/view_components/copyable_text_field.rs +++ b/app/src/view_components/copyable_text_field.rs @@ -3,17 +3,17 @@ use instant::Instant; use std::time::Duration; -use warpui::elements::{ +use galaxyui::elements::{ ConstrainedBox, Container, CrossAxisAlignment, Element, Expanded, Flex, MouseStateHandle, ParentElement, Shrinkable, Text, }; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::components::UiComponent; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{AppContext, SingletonEntity}; use crate::appearance::Appearance; use crate::ui_components::icons::Icon; -use warpui::color::ColorU; +use galaxyui::color::ColorU; /// Duration to show the checkmark after copying. pub const COPY_FEEDBACK_DURATION: Duration = Duration::from_secs(2); @@ -145,7 +145,7 @@ pub fn render_copyable_text_field( app: &AppContext, ) -> Box where - F: FnMut(&mut warpui::EventContext) + 'static, + F: FnMut(&mut galaxyui::EventContext) + 'static, { let appearance = Appearance::as_ref(app); let theme = appearance.theme(); @@ -169,7 +169,7 @@ where let copy_button: Box = if show_checkmark { // Show green checkmark - let check_icon = warpui::elements::Icon::new(Icon::Check.into(), theme.ansi_fg_green()); + let check_icon = galaxyui::elements::Icon::new(Icon::Check.into(), theme.ansi_fg_green()); ConstrainedBox::new(check_icon.finish()) .with_width(config.icon_size) .with_height(config.icon_size) diff --git a/app/src/view_components/dismissible_toast.rs b/app/src/view_components/dismissible_toast.rs index 9faba52c..f17c1215 100644 --- a/app/src/view_components/dismissible_toast.rs +++ b/app/src/view_components/dismissible_toast.rs @@ -4,12 +4,12 @@ use std::time::Duration; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use uuid::Uuid; -use warp_core::ui::builder::UiBuilder; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::ChildView; -use warpui::keymap::Keystroke; -use warpui::r#async::Timer; -use warpui::{ +use galaxy_core::ui::builder::UiBuilder; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::ChildView; +use galaxyui::keymap::Keystroke; +use galaxyui::r#async::Timer; +use galaxyui::{ elements::{ Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, EventHandler, Flex, Hoverable, Icon, MainAxisAlignment, MainAxisSize, @@ -21,7 +21,7 @@ use warpui::{ ui_components::components::{Coords, UiComponent, UiComponentStyles}, AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, }; -use warpui::{Action, ViewHandle}; +use galaxyui::{Action, ViewHandle}; use crate::{appearance::Appearance, themes::theme::Fill}; @@ -455,14 +455,14 @@ impl DismissibleToast { let is_clickable = self.is_clickable(); // On mobile devices, always show close button since hover effects don't work with touch - let is_mobile = warpui::platform::is_mobile_device(); + let is_mobile = galaxyui::platform::is_mobile_device(); Hoverable::new(self.close_button_hover_state.clone(), move |mouse_state| { let toast_container = Container::new(row.finish()) .with_vertical_padding(VERTICAL_PADDING) .with_horizontal_padding(HORIZONTAL_PADDING) .with_background(self.flavor.bg_color(appearance)) - .with_corner_radius(warpui::elements::CornerRadius::with_all(Radius::Pixels( + .with_corner_radius(galaxyui::elements::CornerRadius::with_all(Radius::Pixels( TOAST_CORNER_RADIUS, ))) .with_border(Border::all(1.).with_border_fill(self.flavor.border_color(appearance))) diff --git a/app/src/view_components/dropdown.rs b/app/src/view_components/dropdown.rs index e8e8e055..7a350c7f 100644 --- a/app/src/view_components/dropdown.rs +++ b/app/src/view_components/dropdown.rs @@ -1,7 +1,7 @@ use std::fmt::Debug; use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ Border, ChildAnchor, ChildView, ConstrainedBox, Container, Element, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentElement, diff --git a/app/src/view_components/feature_popup.rs b/app/src/view_components/feature_popup.rs index 24b51da6..8d9f653c 100644 --- a/app/src/view_components/feature_popup.rs +++ b/app/src/view_components/feature_popup.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MouseStateHandle, ParentElement, Radius, Text, @@ -76,7 +76,7 @@ impl FeaturePopup { FeaturePopupBadge::AlertIcon => Container::new( ConstrainedBox::new( Icon::AlertCircle - .to_warpui_icon(appearance.theme().main_text_color( + .to_galaxyui_icon(appearance.theme().main_text_color( appearance.theme().terminal_colors().normal.green.into(), )) .finish(), @@ -126,7 +126,7 @@ impl View for FeaturePopup { Hoverable::new(self.dismiss_mouse_state.clone(), |_| { ConstrainedBox::new( Icon::X - .to_warpui_icon(appearance.theme().sub_text_color( + .to_galaxyui_icon(appearance.theme().sub_text_color( appearance.theme().main_text_color(background), )) .finish(), diff --git a/app/src/view_components/filterable_dropdown.rs b/app/src/view_components/filterable_dropdown.rs index 6a9543ac..c9d7680e 100644 --- a/app/src/view_components/filterable_dropdown.rs +++ b/app/src/view_components/filterable_dropdown.rs @@ -11,8 +11,8 @@ use crate::{ menu::{Event as MenuEvent, Menu, MenuItem, MenuVariant}, ui_components::icons, }; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, EventHandler, Flex, MainAxisAlignment, MainAxisSize, @@ -411,7 +411,7 @@ where TextAndIconAlignment::TextFirst, selected_item_text, icons::Icon::ChevronDown - .to_warpui_icon(appearance.theme().active_ui_text_color()), + .to_galaxyui_icon(appearance.theme().active_ui_text_color()), self.main_axis_size, MainAxisAlignment::SpaceBetween, vec2f(15., 15.), @@ -459,7 +459,7 @@ where let search_icon = ConstrainedBox::new( icons::Icon::SearchSmall - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_width(12.) diff --git a/app/src/view_components/find.rs b/app/src/view_components/find.rs index 70d67495..bc655c7c 100644 --- a/app/src/view_components/find.rs +++ b/app/src/view_components/find.rs @@ -11,16 +11,16 @@ use serde::Serialize; use crate::themes::theme::Fill; use pathfinder_color::ColorU; -use warpui::elements::{ChildAnchor, OffsetPositioning, Radius, SavePosition, Shrinkable}; -use warpui::keymap::EditableBinding; -use warpui::ui_components::components::UiComponent; -pub use warpui::{ +use galaxyui::elements::{ChildAnchor, OffsetPositioning, Radius, SavePosition, Shrinkable}; +use galaxyui::keymap::EditableBinding; +use galaxyui::ui_components::components::UiComponent; +pub use galaxyui::{ accessibility::{AccessibilityContent, WarpA11yRole}, elements::{ParentElement as _, Stack}, geometry::vector::vec2f, AppContext, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Element, Flex, Hoverable, MouseStateHandle, ParentAnchor, ParentOffsetBounds, @@ -28,8 +28,8 @@ use warpui::{ }, Entity, SingletonEntity, TypedActionView, View, }; -use warpui::{presenter::ChildView, ViewContext, ViewHandle}; -use warpui::{FocusContext, ModelHandle}; +use galaxyui::{presenter::ChildView, ViewContext, ViewHandle}; +use galaxyui::{FocusContext, ModelHandle}; pub const FIND_BAR_WIDTH: f32 = 500.; const ICON_PADDING: f32 = 4.; @@ -125,7 +125,7 @@ pub enum FindAction { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([ EditableBinding::new( @@ -359,7 +359,7 @@ impl + 'static> Find { }; let icon = Container::new( ConstrainedBox::new( - icon.to_warpui_icon(appearance.theme().active_ui_text_color()) + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(size) @@ -423,7 +423,7 @@ impl + 'static> Find { appearance.theme().active_ui_text_color() }; Container::new( - ConstrainedBox::new(match_icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(match_icon.to_galaxyui_icon(icon_color).finish()) .with_height(height) .with_width(height) .finish(), @@ -450,7 +450,7 @@ impl + 'static> Find { Container::new( ConstrainedBox::new( Icon::X - .to_warpui_icon(appearance.theme().active_ui_text_color()) + .to_galaxyui_icon(appearance.theme().active_ui_text_color()) .finish(), ) .with_height(height) diff --git a/app/src/view_components/find_tests.rs b/app/src/view_components/find_tests.rs index 75fbf650..10930ddc 100644 --- a/app/src/view_components/find_tests.rs +++ b/app/src/view_components/find_tests.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warp_core::ui::appearance::Appearance; -use warpui::{platform::WindowStyle, App}; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{platform::WindowStyle, App}; use crate::auth::AuthStateProvider; use crate::server::server_api::{team::MockTeamClient, workspace::MockWorkspaceClient}; @@ -15,7 +15,7 @@ use super::{Find, FindDirection, FindEvent, FindModel}; struct MockFindModel; -impl warpui::Entity for MockFindModel { +impl galaxyui::Entity for MockFindModel { type Event = FindEvent; } @@ -26,7 +26,7 @@ impl FindModel for MockFindModel { fn match_count(&self) -> usize { 0 } - fn default_find_direction(&self, _app: &warpui::AppContext) -> FindDirection { + fn default_find_direction(&self, _app: &galaxyui::AppContext) -> FindDirection { FindDirection::Down } } diff --git a/app/src/view_components/markdown_toggle_view.rs b/app/src/view_components/markdown_toggle_view.rs index cecb774e..16228c71 100644 --- a/app/src/view_components/markdown_toggle_view.rs +++ b/app/src/view_components/markdown_toggle_view.rs @@ -1,12 +1,12 @@ use crate::appearance::Appearance; use crate::notebooks::file::MarkdownDisplayMode; -use warpui::elements::{CornerRadius, Fill as UiFill, Radius}; -use warpui::presenter::ChildView; -use warpui::ui_components::components::UiComponentStyles; -use warpui::ui_components::segmented_control::{ +use galaxyui::elements::{CornerRadius, Fill as UiFill, Radius}; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::UiComponentStyles; +use galaxyui::ui_components::segmented_control::{ LabelConfig, RenderableOptionConfig, SegmentedControl, SegmentedControlEvent, }; -use warpui::{ +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -113,8 +113,8 @@ fn markdown_toggle_styles(app: &AppContext) -> UiComponentStyles { border_color: Some(UiFill::Solid(theme.surface_3().into())), background: Some(UiFill::Solid(theme.background().into())), height: Some(20.0), - padding: Some(warpui::ui_components::components::Coords::uniform(0.0)), - margin: Some(warpui::ui_components::components::Coords { + padding: Some(galaxyui::ui_components::components::Coords::uniform(0.0)), + margin: Some(galaxyui::ui_components::components::Coords { top: 0.0, bottom: 0.0, left: 0.0, diff --git a/app/src/view_components/submittable_text_input.rs b/app/src/view_components/submittable_text_input.rs index e1df70fc..13724ad6 100644 --- a/app/src/view_components/submittable_text_input.rs +++ b/app/src/view_components/submittable_text_input.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ Border, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Shrinkable, diff --git a/app/src/view_components/warning_box.rs b/app/src/view_components/warning_box.rs index 435b4d8c..1155f923 100644 --- a/app/src/view_components/warning_box.rs +++ b/app/src/view_components/warning_box.rs @@ -1,13 +1,13 @@ //! A reusable warning callout component with optional action button. -use warp_core::ui::color::blend::Blend; -use warpui::color::ColorU; -use warpui::elements::{ +use galaxy_core::ui::color::blend::Blend; +use galaxyui::color::ColorU; +use galaxyui::elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Expanded, Flex, Hoverable, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::platform::Cursor; -use warpui::EventContext; +use galaxyui::platform::Cursor; +use galaxyui::EventContext; use crate::appearance::Appearance; use crate::themes::theme::Fill as ThemeFill; @@ -132,7 +132,7 @@ pub fn render_warning_box(config: WarningBoxConfig, appearance: &Appearance) -> .with_cross_axis_alignment(CrossAxisAlignment::Start) .with_spacing(12.) .with_child( - ConstrainedBox::new(config.icon.to_warpui_icon(icon_fill).finish()) + ConstrainedBox::new(config.icon.to_galaxyui_icon(icon_fill).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), @@ -144,7 +144,7 @@ pub fn render_warning_box(config: WarningBoxConfig, appearance: &Appearance) -> .with_cross_axis_alignment(CrossAxisAlignment::Start) .with_spacing(12.) .with_child( - ConstrainedBox::new(config.icon.to_warpui_icon(icon_fill).finish()) + ConstrainedBox::new(config.icon.to_galaxyui_icon(icon_fill).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), diff --git a/app/src/vim_registers.rs b/app/src/vim_registers.rs index 1cb99e30..22736153 100644 --- a/app/src/vim_registers.rs +++ b/app/src/vim_registers.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use vim::vim::MotionType; -use warpui::{clipboard::ClipboardContent, AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::{clipboard::ClipboardContent, AppContext, Entity, ModelContext, SingletonEntity}; use crate::settings::AppEditorSettings; use settings::Setting as _; diff --git a/app/src/voice/transcriber.rs b/app/src/voice/transcriber.rs index 4ae08925..156a9cc4 100644 --- a/app/src/voice/transcriber.rs +++ b/app/src/voice/transcriber.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use async_trait::async_trait; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; use crate::server::server_api::TranscribeError; diff --git a/app/src/voltron.rs b/app/src/voltron.rs index 84908c18..ca18754c 100644 --- a/app/src/voltron.rs +++ b/app/src/voltron.rs @@ -29,18 +29,18 @@ use enclose::enclose; use pathfinder_geometry::vector::Vector2F; use std::path::PathBuf; use vec1::Vec1; -use warpui::accessibility::AccessibilityContent; -use warpui::elements::{ +use galaxyui::accessibility::AccessibilityContent; +use galaxyui::elements::{ resizable_state_handle, Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, DispatchEventResult, Element, EventHandler, Flex, Icon, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Resizable, ResizableStateHandle, Shrinkable, Stack, }; -use warpui::geometry::vector::vec2f; -use warpui::keymap::{Context, FixedBinding}; -use warpui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::geometry::vector::vec2f; +use galaxyui::keymap::{Context, FixedBinding}; +use galaxyui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ AppContext, Entity, FocusContext, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -55,7 +55,7 @@ const VOLTRON_RIGHT_PADDING: f32 = 15.; const EDITOR_PADDING_LEFT: f32 = 14.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -491,7 +491,7 @@ impl View for Voltron { } } - fn render(&self, app: &AppContext) -> Box { + fn render(&self, app: &AppContext) -> Box { let appearance = Appearance::as_ref(app); let theme = appearance.theme(); let current_feature = self diff --git a/app/src/warp_managed_paths_watcher.rs b/app/src/warp_managed_paths_watcher.rs index 83bc2368..4211f773 100644 --- a/app/src/warp_managed_paths_watcher.rs +++ b/app/src/warp_managed_paths_watcher.rs @@ -9,8 +9,8 @@ use repo_metadata::RepositoryUpdate; #[cfg(any(not(target_family = "wasm"), test))] use repo_metadata::TargetFile; #[cfg(not(target_family = "wasm"))] -use warpui::ModelHandle; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::ModelHandle; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[cfg(not(target_family = "wasm"))] use watcher::{BulkFilesystemWatcher, BulkFilesystemWatcherEvent}; @@ -19,7 +19,7 @@ use watcher::{BulkFilesystemWatcher, BulkFilesystemWatcherEvent}; const WARP_MANAGED_PATHS_WATCHER_DEBOUNCE_MILLI_SECS: u64 = 500; pub(crate) fn warp_data_dir() -> PathBuf { - warp_core::paths::data_dir() + galaxy_core::paths::data_dir() } #[cfg(target_family = "wasm")] @@ -35,7 +35,7 @@ pub(crate) fn ensure_warp_watch_roots_exist() { ); } - let config_local_dir = warp_core::paths::config_local_dir(); + let config_local_dir = galaxy_core::paths::config_local_dir(); if config_local_dir != data_dir { if let Err(err) = fs::create_dir_all(&config_local_dir) { log::warn!( @@ -48,16 +48,16 @@ pub(crate) fn ensure_warp_watch_roots_exist() { #[cfg_attr(target_family = "wasm", allow(dead_code))] pub(crate) fn warp_home_config_dir() -> Option { - warp_core::paths::warp_home_config_dir() + galaxy_core::paths::warp_home_config_dir() } pub(crate) fn warp_home_skills_dir() -> Option { - warp_core::paths::warp_home_skills_dir() + galaxy_core::paths::warp_home_skills_dir() } #[cfg_attr(target_family = "wasm", allow(dead_code))] pub(crate) fn warp_home_mcp_config_file_path() -> Option { - warp_core::paths::warp_home_mcp_config_file_path() + galaxy_core::paths::warp_home_mcp_config_file_path() } #[cfg_attr(target_family = "wasm", allow(dead_code))] @@ -241,7 +241,7 @@ impl WarpManagedPathsWatcher { if should_register_watcher { let data_dir = warp_data_dir(); - let config_local_dir = warp_core::paths::config_local_dir(); + let config_local_dir = galaxy_core::paths::config_local_dir(); let should_register_config_local_dir = config_local_dir != data_dir; let worktrees_dir = data_dir.join("worktrees"); Self::register_path( diff --git a/app/src/wasm_nux_dialog.rs b/app/src/wasm_nux_dialog.rs index 50775e53..92360358 100644 --- a/app/src/wasm_nux_dialog.rs +++ b/app/src/wasm_nux_dialog.rs @@ -7,12 +7,12 @@ use crate::settings::{NativePreferenceSettings, UserNativePreference}; use crate::ui_components::dialog::{dialog_styles, Dialog}; use crate::uri::web_intent_parser::{self, WebIntent}; use settings::Setting as _; -use warpui::elements::{Align, CrossAxisAlignment, Flex}; -use warpui::ui_components::{ +use galaxyui::elements::{Align, CrossAxisAlignment, Flex}; +use galaxyui::ui_components::{ button::ButtonVariant, components::{Coords, UiComponent, UiComponentStyles}, }; -use warpui::{ +use galaxyui::{ elements::{MainAxisSize, MouseStateHandle, ParentElement as _}, fonts::Weight, platform::Cursor, @@ -80,7 +80,7 @@ impl WasmNUXDialog { /// behavior: if Warp is installed, redirect to it; otherwise stay on the web. pub fn should_display(app: &AppContext) -> bool { // Don't show on mobile devices - they can't use the desktop app - if warpui::platform::wasm::is_mobile_device() { + if galaxyui::platform::wasm::is_mobile_device() { return false; } diff --git a/app/src/window_settings.rs b/app/src/window_settings.rs index 14bbb041..3871b4e1 100644 --- a/app/src/window_settings.rs +++ b/app/src/window_settings.rs @@ -1,7 +1,7 @@ use settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; -use warpui::{AppContext, WindowId}; +use galaxyui::{AppContext, WindowId}; define_settings_group!(WindowSettings, settings: [ background_blur_radius: BackgroundBlurRadius { diff --git a/app/src/word_block_editor.rs b/app/src/word_block_editor.rs index 62b26bbb..15c3fbeb 100644 --- a/app/src/word_block_editor.rs +++ b/app/src/word_block_editor.rs @@ -1,6 +1,6 @@ use pathfinder_color::ColorU; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Wrap, WrapFill, diff --git a/app/src/workflows/aliases.rs b/app/src/workflows/aliases.rs index 19122319..3db7d78f 100644 --- a/app/src/workflows/aliases.rs +++ b/app/src/workflows/aliases.rs @@ -3,11 +3,11 @@ use std::collections::{HashMap, HashSet}; use anyhow::Error; use serde::{Deserialize, Serialize}; use settings_value::SettingsValue; -use warp_core::{ +use galaxy_core::{ define_settings_group, settings::{RespectUserSyncSetting, Setting, SupportedPlatforms, SyncToCloud}, }; -use warpui::{AppContext, ModelContext, SingletonEntity}; +use galaxyui::{AppContext, ModelContext, SingletonEntity}; use crate::{ cloud_object::{ diff --git a/app/src/workflows/aliases_test.rs b/app/src/workflows/aliases_test.rs index 7f597e07..64fd189d 100644 --- a/app/src/workflows/aliases_test.rs +++ b/app/src/workflows/aliases_test.rs @@ -26,7 +26,7 @@ fn test_set_aliases() { env_vars: None, }; - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_user_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -77,7 +77,7 @@ fn test_set_aliases_replacement() { env_vars: None, }; - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_user_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -128,7 +128,7 @@ fn test_remove_aliases() { env_vars: None, }; - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_user_preferences); app.add_singleton_model(|_| SettingsManager::default()); diff --git a/app/src/workflows/categories.rs b/app/src/workflows/categories.rs index bd545522..d6a9a028 100644 --- a/app/src/workflows/categories.rs +++ b/app/src/workflows/categories.rs @@ -1,6 +1,6 @@ use itertools::Itertools; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ ConstrainedBox, Container, DispatchEventResult, Element, Fill, Flex, ParentElement, ScrollStateHandle, Scrollable, ScrollableElement, ScrollbarWidth, Shrinkable, Text, @@ -29,17 +29,17 @@ use std::ops::Deref; #[cfg(feature = "local_fs")] use std::path::PathBuf; use std::sync::Arc; -use warp_core::ui::builder::UiBuilder; -use warp_core::ui::theme::color::internal_colors; +use galaxy_core::ui::builder::UiBuilder; +use galaxy_core::ui::theme::color::internal_colors; use warp_workflows::workflows as global_workflows; -use warpui::accessibility::{AccessibilityContent, WarpA11yRole}; -use warpui::color::ColorU; -use warpui::elements::{ +use galaxyui::accessibility::{AccessibilityContent, WarpA11yRole}; +use galaxyui::color::ColorU; +use galaxyui::elements::{ Align, CrossAxisAlignment, EventHandler, Highlight, Hoverable, MainAxisSize, MouseStateHandle, }; -use warpui::keymap::FixedBinding; -use warpui::text_layout::TextStyle; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::keymap::FixedBinding; +use galaxyui::text_layout::TextStyle; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; use super::{workflow::Workflow, WorkflowSource}; @@ -54,7 +54,7 @@ const WORKFLOW_LIST_PADDING_MIDDLE: f32 = 5.; pub const WORKFLOW_SUBTEXT_FONT_SIZE: f32 = 14.0; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::new("up", WorkflowsViewAction::Up, id!("WorkflowsView")), diff --git a/app/src/workflows/export_workflow.rs b/app/src/workflows/export_workflow.rs index fd028a95..5f1064be 100644 --- a/app/src/workflows/export_workflow.rs +++ b/app/src/workflows/export_workflow.rs @@ -6,7 +6,7 @@ use serde::{ use serde_yaml::Value; use strum::VariantNames as _; use strum_macros::{Display, EnumString, VariantNames}; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use std::{collections::HashMap, fmt, result::Result, str::FromStr}; diff --git a/app/src/workflows/info_box.rs b/app/src/workflows/info_box.rs index e7e70771..3c429bc6 100644 --- a/app/src/workflows/info_box.rs +++ b/app/src/workflows/info_box.rs @@ -1,8 +1,8 @@ use std::collections::HashMap; use std::ops::Range; -use warp_core::{features::FeatureFlag, settings::Setting}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, settings::Setting}; +use galaxyui::{ elements::{ self, Align, Border, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, Highlight, Icon, @@ -34,10 +34,10 @@ use crate::{ use crate::{cloud_object::model::actions::ObjectActionType, terminal::view::TerminalAction}; use crate::{terminal::input::InputAction, ui_components::buttons::icon_button}; -use warpui::color::ColorU; -use warpui::keymap::Keystroke; -use warpui::text_layout::TextStyle; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::color::ColorU; +use galaxyui::keymap::Keystroke; +use galaxyui::text_layout::TextStyle; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; use super::{ command_parser::{compute_workflow_display_data, WorkflowArgumentIndex, WorkflowDisplayData}, @@ -262,7 +262,7 @@ impl WorkflowsMoreInfoView { icons::Icon::Rename, Some(label.to_owned()), self.button_mouse_states.edit_cloud_workflow.clone(), - move |ctx: &mut warpui::EventContext<'_>, _, _| { + move |ctx: &mut galaxyui::EventContext<'_>, _, _| { ctx.dispatch_typed_action(TerminalAction::OpenWorkflowModalWithCloudWorkflow( workflow.id, )) @@ -422,7 +422,7 @@ impl WorkflowsMoreInfoView { Container::new( ConstrainedBox::new( icons::Icon::AlertCircle - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().surface_2()), diff --git a/app/src/workflows/local_workflows.rs b/app/src/workflows/local_workflows.rs index f8cb69b7..acb99d23 100644 --- a/app/src/workflows/local_workflows.rs +++ b/app/src/workflows/local_workflows.rs @@ -4,11 +4,11 @@ use std::{ sync::Arc, }; -use warp_util::path::ShellFamily; +use galaxy_util::path::ShellFamily; use warp_workflows::workflows as global_workflows; #[cfg(not(target_family = "wasm"))] -use warpui::platform::OperatingSystem; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui::platform::OperatingSystem; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; #[cfg(feature = "local_fs")] use crate::user_config::load_workflows; @@ -184,7 +184,7 @@ pub(super) fn load_project_workflows(path: &Path) -> Vec { match git2::Repository::discover(path) { Ok(repository) => repository.workdir().map_or(Vec::new(), |workdir| { load_workflows(&workflows_dir( - workdir.join(warp_core::paths::WARP_CONFIG_DIR), + workdir.join(galaxy_core::paths::WARP_CONFIG_DIR), )) }), Err(_) => Vec::new(), @@ -210,7 +210,7 @@ pub fn tail_command_for_shell(shell_family: ShellFamily, path: &PathBuf) -> Stri #[cfg(not(target_family = "wasm"))] pub fn prompt_chip_logging_workflow(shell_family: ShellFamily) -> Option { - if !warp_core::channel::ChannelState::enable_debug_features() { + if !galaxy_core::channel::ChannelState::enable_debug_features() { return None; } let log_file_path = crate::context_chips::logging::log_file_path().ok()?; diff --git a/app/src/workflows/local_workflows_test.rs b/app/src/workflows/local_workflows_test.rs index b3c23d9e..5f54642a 100644 --- a/app/src/workflows/local_workflows_test.rs +++ b/app/src/workflows/local_workflows_test.rs @@ -1,5 +1,5 @@ use std::sync::Arc; -use warpui::App; +use galaxyui::App; use super::*; diff --git a/app/src/workflows/manager.rs b/app/src/workflows/manager.rs index a09898cd..3cc59328 100644 --- a/app/src/workflows/manager.rs +++ b/app/src/workflows/manager.rs @@ -14,7 +14,7 @@ use crate::{ PaneViewLocator, WindowId, }; use std::collections::{hash_map::Entry, HashMap}; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity}; pub struct WorkflowManager { panes_by_hashed_id: HashMap, diff --git a/app/src/workflows/mod.rs b/app/src/workflows/mod.rs index aae551a0..929a073f 100644 --- a/app/src/workflows/mod.rs +++ b/app/src/workflows/mod.rs @@ -1,9 +1,9 @@ use std::sync::Arc; use serde::{Deserialize, Serialize}; -use warp_core::context_flag::ContextFlag; -use warp_core::features::FeatureFlag; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::features::FeatureFlag; +use galaxyui::{AppContext, SingletonEntity}; pub mod categories; use anyhow::Result; diff --git a/app/src/workflows/mod_test.rs b/app/src/workflows/mod_test.rs index 6de77f5c..6173487e 100644 --- a/app/src/workflows/mod_test.rs +++ b/app/src/workflows/mod_test.rs @@ -1,4 +1,4 @@ -use warpui::App; +use galaxyui::App; use crate::server::ids::SyncId; diff --git a/app/src/workflows/workflow_view.rs b/app/src/workflows/workflow_view.rs index 7d9ba239..a4dd41d4 100644 --- a/app/src/workflows/workflow_view.rs +++ b/app/src/workflows/workflow_view.rs @@ -82,9 +82,9 @@ use crate::{ FeatureFlag, UserWorkspaces, }; -use warp_core::{context_flag::ContextFlag, settings::Setting, ui::theme::AnsiColorIdentifier}; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::{context_flag::ContextFlag, settings::Setting, ui::theme::AnsiColorIdentifier}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ clipboard::ClipboardContent, elements::{ Align, Border, ChildAnchor, ChildView, Clipped, ClippedScrollStateHandle, @@ -120,7 +120,7 @@ pub mod env_var_selector; mod syntax_highlightable; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::id; + use galaxyui::keymap::macros::id; app.register_editable_bindings([EditableBinding::new( "workflowview:save", "Save workflow", @@ -2064,7 +2064,7 @@ impl WorkflowView { } else { Icon::Workflow } - .to_warpui_icon( + .to_galaxyui_icon( warp_drive_icon_color( appearance, if self.is_for_agent_mode { @@ -2219,7 +2219,7 @@ impl WorkflowView { let mut stack = Stack::new().with_child( ConstrainedBox::new( Icon::HelpCircle - .to_warpui_icon( + .to_galaxyui_icon( appearance .theme() .sub_text_color(appearance.theme().background()), @@ -2370,7 +2370,7 @@ impl WorkflowView { let text_and_icon = TextAndIcon::new( alignment, label, - icon.to_warpui_icon(appearance.theme().active_ui_text_color()), + icon.to_galaxyui_icon(appearance.theme().active_ui_text_color()), MainAxisSize::Min, MainAxisAlignment::Center, vec2f(10., 10.), @@ -2843,7 +2843,7 @@ impl WorkflowView { .with_children([ ConstrainedBox::new( Icon::Trash - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_width(16.) @@ -3059,7 +3059,7 @@ impl View for WorkflowView { SCROLLBAR_WIDTH, theme.nonactive_ui_detail().into(), theme.active_ui_detail().into(), - warpui::elements::Fill::None, + galaxyui::elements::Fill::None, ) .finish(), ); diff --git a/app/src/workflows/workflow_view/alias_argument_selector.rs b/app/src/workflows/workflow_view/alias_argument_selector.rs index c72a1db7..b06e538c 100644 --- a/app/src/workflows/workflow_view/alias_argument_selector.rs +++ b/app/src/workflows/workflow_view/alias_argument_selector.rs @@ -1,8 +1,8 @@ use std::collections::HashMap; -use warp_core::ui::appearance::Appearance; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::ChildView, ui_components::components::{Coords, UiComponent, UiComponentStyles}, AppContext, Element, Entity, FocusContext, SingletonEntity, TypedActionView, View, ViewContext, diff --git a/app/src/workflows/workflow_view/alias_bar.rs b/app/src/workflows/workflow_view/alias_bar.rs index 94a3b0aa..cad9356a 100644 --- a/app/src/workflows/workflow_view/alias_bar.rs +++ b/app/src/workflows/workflow_view/alias_bar.rs @@ -2,14 +2,14 @@ use std::{cmp::Ordering, collections::HashMap}; use anyhow::Error; use pathfinder_geometry::vector::vec2f; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{ appearance::Appearance, theme::{color::internal_colors::neutral_4, Fill}, }, }; -use warpui::{ +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Flex, Hoverable, MainAxisAlignment, MainAxisSize, MouseState, MouseStateHandle, ParentElement, Radius, @@ -472,7 +472,7 @@ impl View for AliasBar { TextAndIcon::new( TextAndIconAlignment::IconFirst, "Add alias", - Icon::Plus.to_warpui_icon( + Icon::Plus.to_galaxyui_icon( appearance .theme() .main_text_color(appearance.theme().background()), diff --git a/app/src/workflows/workflow_view/argument_editor.rs b/app/src/workflows/workflow_view/argument_editor.rs index b76b1dc1..dcf09943 100644 --- a/app/src/workflows/workflow_view/argument_editor.rs +++ b/app/src/workflows/workflow_view/argument_editor.rs @@ -2,9 +2,9 @@ use std::cmp::Ordering; use itertools::Itertools; use pathfinder_color::ColorU; -use warp_core::{features::FeatureFlag, ui::appearance::Appearance}; -use warp_editor::editor::NavigationKey; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::appearance::Appearance}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::{ elements::{ ChildView, ConstrainedBox, Container, CrossAxisAlignment, Fill, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Shrinkable, diff --git a/app/src/workflows/workflow_view/env_var_selector.rs b/app/src/workflows/workflow_view/env_var_selector.rs index 7b41d9ed..cb25499f 100644 --- a/app/src/workflows/workflow_view/env_var_selector.rs +++ b/app/src/workflows/workflow_view/env_var_selector.rs @@ -1,5 +1,5 @@ use itertools::Itertools as _; -use warpui::{ +use galaxyui::{ elements::ChildView, Element as _, Entity, SingletonEntity as _, TypedActionView, View, ViewAsRef, ViewContext, ViewHandle, }; @@ -133,7 +133,7 @@ impl View for EnvVarSelector { "EnvVarSelector" } - fn render(&self, _app: &warpui::AppContext) -> Box { + fn render(&self, _app: &galaxyui::AppContext) -> Box { ChildView::new(&self.dropdown).finish() } } diff --git a/app/src/workflows/workflow_view/syntax_highlightable.rs b/app/src/workflows/workflow_view/syntax_highlightable.rs index 32f8dafa..bfe5a793 100644 --- a/app/src/workflows/workflow_view/syntax_highlightable.rs +++ b/app/src/workflows/workflow_view/syntax_highlightable.rs @@ -4,12 +4,12 @@ use std::time::Duration; use async_channel::Sender; use string_offset::ByteOffset; -use warp_completer::completer::SuggestionTypeName; -use warp_completer::signatures::CommandRegistry; -use warp_core::ui::theme::AnsiColorIdentifier; -use warpui::r#async::SpawnedFutureHandle; -use warpui::ViewHandle; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_completer::completer::SuggestionTypeName; +use galaxy_completer::signatures::CommandRegistry; +use galaxy_core::ui::theme::AnsiColorIdentifier; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::ViewHandle; +use galaxyui::{Entity, ModelContext, SingletonEntity}; use crate::appearance::Appearance; use crate::completer::SessionAgnosticContext; diff --git a/app/src/workspace/action.rs b/app/src/workspace/action.rs index b8fe92ef..3a688b70 100644 --- a/app/src/workspace/action.rs +++ b/app/src/workspace/action.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use std::path::PathBuf; use std::sync::Arc; -use warp_util::path::LineAndColumnArg; +use galaxy_util::path::LineAndColumnArg; use crate::ai::agent::api::ServerConversationToken; use crate::ai::agent::conversation::AIConversationId; @@ -32,11 +32,11 @@ use crate::workspace::PaneViewLocator; use session_sharing_protocol::common::SessionId; use ui_components::lightbox; -use warpui::accessibility::AccessibilityVerbosity; -use warpui::geometry::rect::RectF; -use warpui::geometry::vector::Vector2F; -use warpui::platform::Cursor; -use warpui::{EntityId, WeakViewHandle, WindowId}; +use galaxyui::accessibility::AccessibilityVerbosity; +use galaxyui::geometry::rect::RectF; +use galaxyui::geometry::vector::Vector2F; +use galaxyui::platform::Cursor; +use galaxyui::{EntityId, WeakViewHandle, WindowId}; use super::global_actions::{ForkFromExchange, ForkedConversationDestination}; use super::tab_settings::{ diff --git a/app/src/workspace/action_tests.rs b/app/src/workspace/action_tests.rs index e32bbc7f..d7d4d409 100644 --- a/app/src/workspace/action_tests.rs +++ b/app/src/workspace/action_tests.rs @@ -5,7 +5,7 @@ use crate::workspace::tab_settings::{ VerticalTabsViewMode, }; use crate::workspace::PaneViewLocator; -use warpui::EntityId; +use galaxyui::EntityId; #[test] fn vertical_tabs_view_mode_change_does_not_save_workspace_state() { diff --git a/app/src/workspace/active_session.rs b/app/src/workspace/active_session.rs index ff5d6f34..3c66d40a 100644 --- a/app/src/workspace/active_session.rs +++ b/app/src/workspace/active_session.rs @@ -4,7 +4,7 @@ use std::{ sync::{Arc, Weak}, }; -use warpui::{Entity, EntityId, ModelContext, SingletonEntity, WindowId}; +use galaxyui::{Entity, EntityId, ModelContext, SingletonEntity, WindowId}; use crate::terminal::model::session::Session; diff --git a/app/src/workspace/bonus_grant_notification_model.rs b/app/src/workspace/bonus_grant_notification_model.rs index 8a357f69..b8cd3a24 100644 --- a/app/src/workspace/bonus_grant_notification_model.rs +++ b/app/src/workspace/bonus_grant_notification_model.rs @@ -4,8 +4,8 @@ use crate::ai::request_usage_model::{ use crate::terminal::general_settings::GeneralSettings; use chrono::{Duration, Utc}; use std::collections::HashSet; -use warp_core::settings::Setting; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxy_core::settings::Setting; +use galaxyui::{Entity, ModelContext, SingletonEntity}; pub struct BonusGrantNotificationModel { /// In-memory tracking of grants shown during this session. This prevents duplicate diff --git a/app/src/workspace/cli_install.rs b/app/src/workspace/cli_install.rs index 52888541..122df886 100644 --- a/app/src/workspace/cli_install.rs +++ b/app/src/workspace/cli_install.rs @@ -4,8 +4,8 @@ use std::path::{Path, PathBuf}; use anyhow::{anyhow, Context, Result}; use command::blocking::Command; -use warp_core::channel::ChannelState; -use warp_util::path::ShellFamily; +use galaxy_core::channel::ChannelState; +use galaxy_util::path::ShellFamily; /// Compute the target path where the symlink should be installed, based on channel fn cli_install_target_path() -> PathBuf { diff --git a/app/src/workspace/close_session_confirmation_dialog.rs b/app/src/workspace/close_session_confirmation_dialog.rs index 7df60fcd..f2179a26 100644 --- a/app/src/workspace/close_session_confirmation_dialog.rs +++ b/app/src/workspace/close_session_confirmation_dialog.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ Align, ChildAnchor, Container, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack, diff --git a/app/src/workspace/delete_conversation_confirmation_dialog.rs b/app/src/workspace/delete_conversation_confirmation_dialog.rs index e95b9c58..145a633f 100644 --- a/app/src/workspace/delete_conversation_confirmation_dialog.rs +++ b/app/src/workspace/delete_conversation_confirmation_dialog.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::Fill; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::{ elements::{ Align, ChildAnchor, ChildView, Container, OffsetPositioning, ParentAnchor, ParentOffsetBounds, Stack, @@ -20,7 +20,7 @@ use crate::{ }; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -42,7 +42,7 @@ const DIALOG_WIDTH: f32 = 460.; pub struct DeleteConversationDialogSource { pub conversation_id: AIConversationId, pub conversation_title: String, - pub terminal_view_id: Option, + pub terminal_view_id: Option, } pub struct DeleteConversationConfirmationDialog { @@ -89,7 +89,7 @@ impl View for DeleteConversationConfirmationDialog { "DeleteConversationConfirmationDialog" } - fn on_focus(&mut self, _focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, _focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { ctx.focus_self(); } diff --git a/app/src/workspace/global_actions.rs b/app/src/workspace/global_actions.rs index 1a955c5f..4f26d150 100644 --- a/app/src/workspace/global_actions.rs +++ b/app/src/workspace/global_actions.rs @@ -6,7 +6,7 @@ use crate::terminal::alt_screen_reporting::AltScreenReporting; use crate::terminal::general_settings::GeneralSettings; use crate::{app_state::get_app_state, server::server_api::ServerApiProvider}; use ::settings::ToggleableSetting; -use warp_core::execution_mode::AppExecutionMode; +use galaxy_core::execution_mode::AppExecutionMode; use crate::ai::agent::conversation::AIConversationId; use crate::ai::agent::AIAgentExchangeId; @@ -15,9 +15,9 @@ use crate::undo_close::UndoCloseStack; use crate::workspace::{Workspace, WorkspaceAction}; use crate::GlobalResourceHandlesProvider; use std::path::PathBuf; -use warp_graphql::mutations::create_anonymous_user::AnonymousUserType; -use warpui::windowing::WindowManager; -use warpui::{AppContext, SingletonEntity, TypedActionView}; +use galaxy_graphql::mutations::create_anonymous_user::AnonymousUserType; +use galaxyui::windowing::WindowManager; +use galaxyui::{AppContext, SingletonEntity, TypedActionView}; /// Specifies where a forked conversation should be opened. #[derive(Debug, Clone, Copy, Default, PartialEq, Eq)] @@ -162,7 +162,7 @@ fn create_anonymous_user(_: &(), ctx: &mut AppContext) { let anonymous_user_type = AnonymousUserType::NativeClientAnonymousUser; let server_api = ServerApiProvider::handle(ctx).read(ctx, |provider, _ctx| provider.get()); let result = - warpui::r#async::block_on(server_api.create_anonymous_user(None, anonymous_user_type)); + galaxyui::r#async::block_on(server_api.create_anonymous_user(None, anonymous_user_type)); match result { Ok(user) => log::info!("Successfully created anonymous user {user:?}"), Err(err) => log::error!("Failed to create anonymous user: {err:?}"), diff --git a/app/src/workspace/header_toolbar_editor.rs b/app/src/workspace/header_toolbar_editor.rs index 5985adb6..e57d5fce 100644 --- a/app/src/workspace/header_toolbar_editor.rs +++ b/app/src/workspace/header_toolbar_editor.rs @@ -1,6 +1,6 @@ -use warpui::keymap::FixedBinding; +use galaxyui::keymap::FixedBinding; -use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; use crate::chip_configurator::{ render_chip_editor_modal, render_chip_editor_sections, ChipConfigurator, @@ -20,7 +20,7 @@ use settings::Setting as _; const MODAL_TITLE: &str = "Edit toolbar"; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/workspace/header_toolbar_item.rs b/app/src/workspace/header_toolbar_item.rs index 92328fab..835c30a8 100644 --- a/app/src/workspace/header_toolbar_item.rs +++ b/app/src/workspace/header_toolbar_item.rs @@ -7,7 +7,7 @@ use crate::ui_components::icons::Icon; use crate::workspace::tab_settings::TabSettings; use settings::Setting as _; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; /// A configurable item in the vertical tabs header toolbar. /// diff --git a/app/src/workspace/hoa_onboarding/hoa_onboarding_flow.rs b/app/src/workspace/hoa_onboarding/hoa_onboarding_flow.rs index e48861fa..f90aaab5 100644 --- a/app/src/workspace/hoa_onboarding/hoa_onboarding_flow.rs +++ b/app/src/workspace/hoa_onboarding/hoa_onboarding_flow.rs @@ -3,24 +3,24 @@ use std::path::PathBuf; use markdown_parser::{ FormattedText, FormattedTextFragment, FormattedTextLine, FormattedTextStyles, Hyperlink, }; -use warpui::elements::{ +use galaxyui::elements::{ Align, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, FormattedTextElement, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::geometry::vector::Vector2F; -use warpui::keymap::{FixedBinding, Keystroke}; -use warpui::platform::file_picker::{FilePickerConfiguration, FilePickerError}; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::geometry::vector::Vector2F; +use galaxyui::keymap::{FixedBinding, Keystroke}; +use galaxyui::platform::file_picker::{FilePickerConfiguration, FilePickerError}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ AppContext, Element, Entity, EventContext, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; use pathfinder_color::ColorU; -use warp_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; +use galaxy_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; use crate::appearance::Appearance; use crate::settings::AISettings; @@ -120,8 +120,8 @@ impl HoaOnboardingStep { } } -pub fn init(app: &mut warpui::AppContext) { - use warpui::keymap::macros::*; +pub fn init(app: &mut galaxyui::AppContext) { + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "enter", @@ -570,7 +570,7 @@ impl View for HoaOnboardingFlow { "HoaOnboardingFlow" } - fn on_focus(&mut self, _focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, _focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { ctx.focus_self(); } diff --git a/app/src/workspace/hoa_onboarding/mod.rs b/app/src/workspace/hoa_onboarding/mod.rs index d0db0141..3ae11034 100644 --- a/app/src/workspace/hoa_onboarding/mod.rs +++ b/app/src/workspace/hoa_onboarding/mod.rs @@ -4,9 +4,9 @@ mod welcome_banner; pub use hoa_onboarding_flow::{init, HoaOnboardingFlow, HoaOnboardingFlowEvent, HoaOnboardingStep}; -use warpui::AppContext; +use galaxyui::AppContext; -use warp_core::user_preferences::GetUserPreferences; +use galaxy_core::user_preferences::GetUserPreferences; const HAS_COMPLETED_HOA_ONBOARDING_KEY: &str = "HasCompletedHOAOnboarding"; diff --git a/app/src/workspace/hoa_onboarding/tab_config_step.rs b/app/src/workspace/hoa_onboarding/tab_config_step.rs index 04d72d8e..4b6db4d6 100644 --- a/app/src/workspace/hoa_onboarding/tab_config_step.rs +++ b/app/src/workspace/hoa_onboarding/tab_config_step.rs @@ -1,12 +1,12 @@ use std::path::Path; -use warpui::elements::{ +use galaxyui::elements::{ Container, CrossAxisAlignment, Flex, MouseStateHandle, ParentElement, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::geometry::vector::Vector2F; -use warpui::Element; -use warpui::EventContext; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::geometry::vector::Vector2F; +use galaxyui::Element; +use galaxyui::EventContext; use crate::appearance::Appearance; use crate::tab_configs::session_config::SessionType; diff --git a/app/src/workspace/hoa_onboarding/welcome_banner.rs b/app/src/workspace/hoa_onboarding/welcome_banner.rs index b785f3f7..e2550032 100644 --- a/app/src/workspace/hoa_onboarding/welcome_banner.rs +++ b/app/src/workspace/hoa_onboarding/welcome_banner.rs @@ -1,19 +1,19 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::{ +use galaxy_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::{ CacheOption, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, Image, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::Element; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::Element; use crate::appearance::Appearance; use crate::ui_components::icons::Icon; use crate::view_components::action_button::ActionButton; -use warpui::ViewHandle; +use galaxyui::ViewHandle; const BANNER_WIDTH: f32 = 420.; const HERO_HEIGHT: f32 = 92.; @@ -114,7 +114,7 @@ pub fn render_welcome_banner( for item in FEATURE_ITEMS { let icon_el = ConstrainedBox::new( item.icon - .to_warpui_icon(Fill::Solid(PhenomenonStyle::modal_feature_title_text())) + .to_galaxyui_icon(Fill::Solid(PhenomenonStyle::modal_feature_title_text())) .finish(), ) .with_width(16.) diff --git a/app/src/workspace/home.rs b/app/src/workspace/home.rs index 7dbd0e8c..71cad351 100644 --- a/app/src/workspace/home.rs +++ b/app/src/workspace/home.rs @@ -3,7 +3,7 @@ //! This is the landing page for new tabs if session creation isn't supported (e.g. on the web). //! It's barebones at the moment, but may grow into a more full-featured admin experience. -use warpui::ViewContext; +use galaxyui::ViewContext; use super::view::Workspace; use crate::pane_group::{AnyPaneContent, FilePane}; diff --git a/app/src/workspace/lightbox_view.rs b/app/src/workspace/lightbox_view.rs index b38f29b1..c3160585 100644 --- a/app/src/workspace/lightbox_view.rs +++ b/app/src/workspace/lightbox_view.rs @@ -2,18 +2,18 @@ use std::sync::Arc; use pathfinder_geometry::vector::Vector2F; use ui_components::{lightbox, Component as _}; -use warpui::assets::asset_cache::{AssetCache, AssetSource, AssetState}; -use warpui::image_cache::ImageType; -use warpui::keymap::{FixedBinding, Keystroke}; -use warpui::prelude::*; -use warpui::{AppContext, BlurContext, Element, Entity, SingletonEntity, View, ViewContext}; +use galaxyui::assets::asset_cache::{AssetCache, AssetSource, AssetState}; +use galaxyui::image_cache::ImageType; +use galaxyui::keymap::{FixedBinding, Keystroke}; +use galaxyui::prelude::*; +use galaxyui::{AppContext, BlurContext, Element, Entity, SingletonEntity, View, ViewContext}; use crate::appearance::Appearance; pub use lightbox::LightboxImage; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; let view_id = id!(LightboxView::ui_name()); app.register_fixed_bindings([ FixedBinding::new("escape", LightboxViewAction::Dismiss, view_id.clone()), diff --git a/app/src/workspace/mod.rs b/app/src/workspace/mod.rs index 1326c78d..2f927e9a 100644 --- a/app/src/workspace/mod.rs +++ b/app/src/workspace/mod.rs @@ -36,7 +36,7 @@ use crate::settings::AISettings; use crate::settings_view::{self, flags, SettingsSection}; use crate::tab::uses_vertical_tabs; use crate::tab_configs; -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; use crate::channel::ChannelState; @@ -44,12 +44,12 @@ use crate::util::bindings::{self, cmd_or_ctrl_shift, is_binding_pty_compliant, C use crate::palette::PaletteMode; use serde::{Deserialize, Serialize}; -use warp_core::context_flag::ContextFlag; -use warpui::accessibility::AccessibilityVerbosity; -use warpui::elements::DropTargetData; -use warpui::keymap::FixedBinding; -use warpui::keymap::{BindingDescription, EditableBinding}; -use warpui::AppContext; +use galaxy_core::context_flag::ContextFlag; +use galaxyui::accessibility::AccessibilityVerbosity; +use galaxyui::elements::DropTargetData; +use galaxyui::keymap::FixedBinding; +use galaxyui::keymap::{BindingDescription, EditableBinding}; +use galaxyui::AppContext; pub use action::{ CommandSearchOptions, InitContent, RestoreConversationLayout, TabContextMenuAnchor, @@ -66,8 +66,8 @@ pub use view::{ }; // Helper function to access panel header corner radius from other modules -pub fn panel_header_corner_radius() -> warpui::elements::CornerRadius { - warpui::elements::CornerRadius::with_top(warpui::elements::Radius::Pixels(8.)) +pub fn panel_header_corner_radius() -> galaxyui::elements::CornerRadius { + galaxyui::elements::CornerRadius::with_top(galaxyui::elements::Radius::Pixels(8.)) } /// Returns `true` when `WorkspaceAction::SendFeedback` will launch the guided @@ -100,7 +100,7 @@ pub use toast_stack::ToastStack; pub fn init(app: &mut AppContext) { app.add_singleton_model(|_| WorkspaceRegistry::new()); - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_binding_validator::(is_binding_pty_compliant); modal::init(app); @@ -763,7 +763,7 @@ pub fn init(app: &mut AppContext) { .with_custom_action(CustomAction::ToggleGlobalSearch), EditableBinding::new( LEFT_PANEL_WARP_DRIVE_BINDING_NAME, - BindingDescription::new("Left Panel: Warp Drive"), + BindingDescription::new("Left Panel: Galaxy Drive"), WorkspaceAction::ToggleWarpDrive, ) .with_group(bindings::BindingGroup::Navigation.as_str()) @@ -789,7 +789,7 @@ pub fn init(app: &mut AppContext) { .with_linux_or_windows_key_binding("alt-shift-F"), EditableBinding::new( TOGGLE_WARP_DRIVE_BINDING_NAME, - BindingDescription::new("Toggle Warp Drive") + BindingDescription::new("Toggle Galaxy Drive") .with_custom_description(bindings::MAC_MENUS_CONTEXT, "Warp Drive"), WorkspaceAction::ToggleWarpDrive, ) @@ -1020,7 +1020,7 @@ pub fn init(app: &mut AppContext) { EditableBinding::new( // If you rename this name, please update the name in command_palette/action/data_source.rs "workspace:search_drive", - "Search Warp Drive", + "Search Galaxy Drive", WorkspaceAction::OpenPalette { mode: PaletteMode::WarpDrive, source: PaletteSource::Keybinding, @@ -1075,7 +1075,7 @@ pub fn init(app: &mut AppContext) { if cfg!(not(target_family = "wasm")) { app.register_editable_bindings([EditableBinding::new( "workspace:export_all_warp_drive_objects", - "Export all Warp Drive objects", + "Export all Galaxy Drive objects", WorkspaceAction::ExportAllWarpDriveObjects, ) .with_group(bindings::BindingGroup::Settings.as_str()) @@ -1336,7 +1336,7 @@ pub fn init(app: &mut AppContext) { } fn add_open_setting_pages_as_editable_binding(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Add the ability to open setting modals to the command palette. app.register_editable_bindings([ @@ -1396,7 +1396,7 @@ fn add_open_setting_pages_as_editable_binding(app: &mut AppContext) { EditableBinding::new( "workspace:show_settings_about_page", BindingDescription::new("Open Settings: About") - .with_custom_description(bindings::MAC_MENUS_CONTEXT, "About Warp"), + .with_custom_description(bindings::MAC_MENUS_CONTEXT, "About Galaxy AI"), WorkspaceAction::ShowSettingsPage(SettingsSection::About), ) .with_group(bindings::BindingGroup::Settings.as_str()) @@ -1481,7 +1481,7 @@ fn add_open_setting_pages_as_editable_binding(app: &mut AppContext) { } fn add_overflow_menu_items_as_editable_binding(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Add the ability to open all overflow menu items to the command palette. app.register_editable_bindings([ diff --git a/app/src/workspace/native_modal.rs b/app/src/workspace/native_modal.rs index db509801..f29e2644 100644 --- a/app/src/workspace/native_modal.rs +++ b/app/src/workspace/native_modal.rs @@ -2,22 +2,22 @@ use crate::appearance::Appearance; use crate::terminal::general_settings::{GeneralSettings, GeneralSettingsChangedEvent}; use crate::ui_components::dialog::{dialog_styles, Dialog}; use settings::Setting as _; -use warp_core::ui::theme::Fill; -use warpui::elements::{Align, Container, Empty, Flex, ParentElement}; -use warpui::keymap::FixedBinding; -use warpui::modals::{AlertDialogWithCallbacks, AppModalCallback}; -use warpui::ui_components::components::{Coords, UiComponent}; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{Align, Container, Empty, Flex, ParentElement}; +use galaxyui::keymap::FixedBinding; +use galaxyui::modals::{AlertDialogWithCallbacks, AppModalCallback}; +use galaxyui::ui_components::components::{Coords, UiComponent}; +use galaxyui::{ elements::MouseStateHandle, fonts::Weight, platform::Cursor, ui_components::{button::ButtonVariant, components::UiComponentStyles, text::Span}, Element, Entity, TypedActionView, View, }; -use warpui::{AppContext, ModelHandle, SingletonEntity, ViewContext}; +use galaxyui::{AppContext, ModelHandle, SingletonEntity, ViewContext}; pub(super) fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings(vec![ FixedBinding::new("escape", NativeModalAction::Close, id!("NativeModal")), @@ -120,7 +120,7 @@ impl View for NativeModal { "NativeModal" } - fn render(&self, app: &warpui::AppContext) -> Box { + fn render(&self, app: &galaxyui::AppContext) -> Box { let Some(alert_dialog) = self.alert_dialog.as_ref() else { log::warn!("No alert dialog was set for the native modal"); return Empty::new().finish(); diff --git a/app/src/workspace/one_time_modal_model.rs b/app/src/workspace/one_time_modal_model.rs index 70f2a4cf..fb32ea57 100644 --- a/app/src/workspace/one_time_modal_model.rs +++ b/app/src/workspace/one_time_modal_model.rs @@ -8,8 +8,8 @@ use crate::settings::cloud_preferences_syncer::{ use crate::settings::{AISettings, CodeSettings}; use crate::terminal::general_settings::GeneralSettings; use settings::Setting as _; -use warp_core::features::FeatureFlag; -use warpui::{Entity, ModelContext, SingletonEntity, WindowId}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{Entity, ModelContext, SingletonEntity, WindowId}; /// A generic model for managing one-time modals that should be shown to users only once. /// diff --git a/app/src/workspace/registry.rs b/app/src/workspace/registry.rs index 21ca3cb2..d8cf9bad 100644 --- a/app/src/workspace/registry.rs +++ b/app/src/workspace/registry.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use warpui::{AppContext, Entity, SingletonEntity, WeakViewHandle, WindowId}; +use galaxyui::{AppContext, Entity, SingletonEntity, WeakViewHandle, WindowId}; use super::Workspace; @@ -40,7 +40,7 @@ impl WorkspaceRegistry { &self, window_id: WindowId, app: &AppContext, - ) -> Option> { + ) -> Option> { self.workspaces.get(&window_id)?.upgrade(app) } @@ -49,7 +49,7 @@ impl WorkspaceRegistry { pub fn all_workspaces( &self, app: &AppContext, - ) -> Vec<(WindowId, warpui::ViewHandle)> { + ) -> Vec<(WindowId, galaxyui::ViewHandle)> { self.workspaces .iter() .filter_map(|(window_id, weak_handle)| { diff --git a/app/src/workspace/rewind_confirmation_dialog.rs b/app/src/workspace/rewind_confirmation_dialog.rs index 82748c39..ab2d73b6 100644 --- a/app/src/workspace/rewind_confirmation_dialog.rs +++ b/app/src/workspace/rewind_confirmation_dialog.rs @@ -1,6 +1,6 @@ use pathfinder_geometry::vector::vec2f; -use warp_core::ui::{color::coloru_with_opacity, theme::Fill}; -use warpui::{ +use galaxy_core::ui::{color::coloru_with_opacity, theme::Fill}; +use galaxyui::{ elements::{ Align, ChildAnchor, ConstrainedBox, Container, CrossAxisAlignment, Flex, Hoverable, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, @@ -24,7 +24,7 @@ use crate::{ }; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -86,7 +86,7 @@ impl View for RewindConfirmationDialog { "RewindConfirmationDialog" } - fn on_focus(&mut self, _focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, _focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { ctx.focus_self(); } @@ -178,7 +178,7 @@ impl View for RewindConfirmationDialog { .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_child( Container::new( - ConstrainedBox::new(Icon::Info.to_warpui_icon(info_color).finish()) + ConstrainedBox::new(Icon::Info.to_galaxyui_icon(info_color).finish()) .with_height(14.) .with_width(14.) .finish(), diff --git a/app/src/workspace/sync_inputs.rs b/app/src/workspace/sync_inputs.rs index d0854098..940cded8 100644 --- a/app/src/workspace/sync_inputs.rs +++ b/app/src/workspace/sync_inputs.rs @@ -1,13 +1,13 @@ use std::collections::{HashMap, HashSet}; -use warpui::{keymap::EditableBinding, AppContext, Entity, EntityId, SingletonEntity, WindowId}; +use galaxyui::{keymap::EditableBinding, AppContext, Entity, EntityId, SingletonEntity, WindowId}; use crate::util::bindings::{BindingGroup, CustomAction}; use super::WorkspaceAction; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings(vec![ EditableBinding::new( diff --git a/app/src/workspace/tab_settings.rs b/app/src/workspace/tab_settings.rs index 69349a88..a07d6628 100644 --- a/app/src/workspace/tab_settings.rs +++ b/app/src/workspace/tab_settings.rs @@ -4,7 +4,7 @@ use std::path::Path; use settings::{ macros::define_settings_group, RespectUserSyncSetting, SupportedPlatforms, SyncToCloud, }; -use warp_core::ui::theme::AnsiColorIdentifier; +use galaxy_core::ui::theme::AnsiColorIdentifier; #[derive( Default, @@ -196,7 +196,7 @@ settings::macros::implement_setting_for_enum!( toml_path: "appearance.tabs.directory_tab_colors", max_table_depth: 0, description: "Mapping of directory paths to their tab color assignments.", - feature_flag: warp_core::features::FeatureFlag::DirectoryTabColors, + feature_flag: galaxy_core::features::FeatureFlag::DirectoryTabColors, ); impl DirectoryTabColors { diff --git a/app/src/workspace/tab_settings_tests.rs b/app/src/workspace/tab_settings_tests.rs index 063469ef..186ed312 100644 --- a/app/src/workspace/tab_settings_tests.rs +++ b/app/src/workspace/tab_settings_tests.rs @@ -1,7 +1,7 @@ use super::*; use crate::test_util::settings::initialize_settings_for_tests; use settings::Setting; -use warpui::{App, SingletonEntity}; +use galaxyui::{App, SingletonEntity}; #[test] fn use_latest_user_prompt_as_conversation_title_in_tab_names_defaults_to_false() { diff --git a/app/src/workspace/toast_stack.rs b/app/src/workspace/toast_stack.rs index 9b2be738..cc9b9dd7 100644 --- a/app/src/workspace/toast_stack.rs +++ b/app/src/workspace/toast_stack.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, SingletonEntity, WindowId}; +use galaxyui::{Entity, ModelContext, SingletonEntity, WindowId}; use crate::{ view_components::{DismissibleToast, ToastType}, diff --git a/app/src/workspace/util.rs b/app/src/workspace/util.rs index 857b61f5..edf5c488 100644 --- a/app/src/workspace/util.rs +++ b/app/src/workspace/util.rs @@ -1,5 +1,5 @@ use serde::{Deserialize, Serialize}; -use warpui::{ +use galaxyui::{ elements::MouseStateHandle, AppContext, EntityId, SingletonEntity, ViewContext, ViewHandle, WindowId, }; @@ -364,7 +364,7 @@ pub fn get_context_target_terminal_view( pub fn get_terminal_background_fill( window_id: WindowId, app: &AppContext, -) -> warpui::elements::Fill { +) -> galaxyui::elements::Fill { let theme = Appearance::as_ref(app).theme(); let terminal_opacity = get_terminal_background_opacity(window_id, app); theme.background().with_opacity(terminal_opacity).into() diff --git a/app/src/workspace/view.rs b/app/src/workspace/view.rs index 86f74f90..24455ce1 100644 --- a/app/src/workspace/view.rs +++ b/app/src/workspace/view.rs @@ -138,7 +138,7 @@ use ai::index::full_source_code_embedding::manager::CodebaseIndexManager; #[cfg(all(target_os = "macos", feature = "crash_reporting"))] use sentry::protocol::{Attachment, AttachmentType}; use serde_json; -use warpui::notification::NotificationSendError; +use galaxyui::notification::NotificationSendError; use super::hoa_onboarding::{ mark_hoa_onboarding_completed, HoaOnboardingFlow, HoaOnboardingFlowEvent, HoaOnboardingStep, @@ -318,7 +318,7 @@ use crate::workspace::cli_install; use crate::workspaces::user_workspaces::UserWorkspaces; use crate::{report_if_error, AgentNotificationsModel}; use ::settings::{Setting, ToggleableSetting}; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::search::{self, QueryFilter}; use crate::terminal::view::{ @@ -386,22 +386,22 @@ use std::convert::TryFrom; use std::time::Duration; #[cfg(target_os = "macos")] use std::time::{SystemTime, UNIX_EPOCH}; -use warp_core::context_flag::ContextFlag; -use warp_core::semantic_selection::SemanticSelection; -use warp_util::path::{user_friendly_path, LineAndColumnArg}; -use warpui::fonts::Weight; -use warpui::modals::{AlertDialogWithCallbacks, AppModalCallback}; -use warpui::windowing::{StateEvent, WindowManager}; +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::semantic_selection::SemanticSelection; +use galaxy_util::path::{user_friendly_path, LineAndColumnArg}; +use galaxyui::fonts::Weight; +use galaxyui::modals::{AlertDialogWithCallbacks, AppModalCallback}; +use galaxyui::windowing::{StateEvent, WindowManager}; -use warp_core::user_preferences::GetUserPreferences as _; -use warpui::clipboard::ClipboardContent; +use galaxy_core::user_preferences::GetUserPreferences as _; +use galaxyui::clipboard::ClipboardContent; #[cfg(target_family = "wasm")] -use warpui::elements::Percentage; -use warpui::elements::{ +use galaxyui::elements::Percentage; +use galaxyui::elements::{ CacheOption, DispatchEventResult, DropTarget, EventHandler, Image, MouseInBehavior, Rect, }; -use warpui::ui_components::button::{Button, ButtonVariant}; -use warpui::{elements::MouseStateHandle, fonts::Properties}; +use galaxyui::ui_components::button::{Button, ButtonVariant}; +use galaxyui::{elements::MouseStateHandle, fonts::Properties}; use crate::{autoupdate, channel::ChannelState}; @@ -481,17 +481,17 @@ use std::path::PathBuf; use std::process; use std::sync::{mpsc, Mutex}; use std::{cmp::Ordering, sync::Arc}; -use warp_core::ui::theme::{color::internal_colors, phenomenon::PhenomenonStyle, Fill}; -use warp_core::ui::{color::coloru_with_opacity, Icon}; -use warp_editor::editor::NavigationKey; -use warpui::keymap::Context; -use warpui::notification::{RequestPermissionsOutcome, UserNotification}; -use warpui::platform::{ +use galaxy_core::ui::theme::{color::internal_colors, phenomenon::PhenomenonStyle, Fill}; +use galaxy_core::ui::{color::coloru_with_opacity, Icon}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::keymap::Context; +use galaxyui::notification::{RequestPermissionsOutcome, UserNotification}; +use galaxyui::platform::{ Cursor, FilePickerConfiguration, FullscreenState, SystemTheme, TerminationMode, }; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::components::{Coords, UiComponent, UiComponentStyles}; +use galaxyui::{ accessibility::{ AccessibilityContent, AccessibilityVerbosity, ActionAccessibilityContent, WarpA11yRole, }, @@ -506,7 +506,7 @@ use warpui::{ geometry::vector::{vec2f, Vector2F}, AppContext, Entity, TypedActionView, UpdateView, View, ViewContext, ViewHandle, }; -use warpui::{ +use galaxyui::{ EntityId, FocusContext, ModelHandle, SingletonEntity, UpdateModel, ViewAsRef, WeakViewHandle, WindowId, }; @@ -545,7 +545,7 @@ const TAB_BAR_PILL_WIDTH: f32 = 100.; const PILL_FONT_SIZE: f32 = 12.; // We use the word "Warp" in the Update Ready button to make it obvious that the terminal is Warp. // This can lead to free advertising when users screen-share Warp when an update is available. -const UPDATE_READY_TEXT: &str = "Update Warp"; +const UPDATE_READY_TEXT: &str = "Update Galaxy AI"; const TAB_BAR_OVERFLOW_MENU_WIDTH: f32 = 300.; @@ -2279,7 +2279,7 @@ impl Workspace { |hover_state| { let icon = ConstrainedBox::new( icons::Icon::X - .to_warpui_icon(Fill::Solid(PhenomenonStyle::modal_close_button_text())) + .to_galaxyui_icon(Fill::Solid(PhenomenonStyle::modal_close_button_text())) .finish(), ) .with_width(16.) @@ -4041,7 +4041,7 @@ impl Workspace { // Open the transcript details panel by default on WASM (unless on mobile) #[cfg(target_family = "wasm")] { - if !warpui::platform::wasm::is_mobile_device() { + if !galaxyui::platform::wasm::is_mobile_device() { me.current_workspace_state.is_transcript_details_panel_open = true; me.transcript_info_button.update(ctx, |button, ctx| { button.set_active(true, ctx); @@ -4161,7 +4161,7 @@ impl Workspace { .ambient_agent_task_id(); if task_id.is_some() { // Open the details panel for shared ambient agent sessions (unless on mobile) - if !warpui::platform::wasm::is_mobile_device() { + if !galaxyui::platform::wasm::is_mobile_device() { me.current_workspace_state.is_transcript_details_panel_open = true; me.transcript_info_button.update(ctx, |button, ctx| { button.set_active(true, ctx); @@ -5945,7 +5945,7 @@ impl Workspace { #[cfg(not(target_family = "wasm"))] fn view_logs(&mut self, ctx: &mut ViewContext) { ctx.spawn( - async { tokio::task::spawn_blocking(warp_logging::create_log_bundle_zip).await }, + async { tokio::task::spawn_blocking(galaxy_logging::create_log_bundle_zip).await }, |me, result, ctx| match result { Ok(Ok(path)) => { ctx.open_file_path_in_explorer(&path); @@ -7510,13 +7510,13 @@ impl Workspace { } /// Find an active session and pre-fill the input editor the Warp executable with the - /// [`warp_cli::Command::DumpDebugInfo`] subcommand. + /// [`galaxy_cli::Command::DumpDebugInfo`] subcommand. fn dump_debug_info(&mut self, ctx: &mut ViewContext) { if let Some(exec) = std::env::current_exe() .ok() .map(|path| path.to_string_lossy().into_owned()) { - let command = format!("{exec} {}", warp_cli::dump_debug_info_flag()); + let command = format!("{exec} {}", galaxy_cli::dump_debug_info_flag()); // Get the active session for this tab if it exists. let mut active_session_handle = self .active_tab_pane_group() @@ -8511,7 +8511,7 @@ impl Workspace { let theme = appearance.theme(); let search_icon = ConstrainedBox::new( icons::Icon::SearchSmall - .to_warpui_icon(theme.sub_text_color(theme.surface_2())) + .to_galaxyui_icon(theme.sub_text_color(theme.surface_2())) .finish(), ) .with_width(16.) @@ -8633,7 +8633,7 @@ impl Workspace { .finish() }) .with_cursor(Cursor::PointingHand) - .on_click(|ctx: &mut warpui::elements::EventContext, _, _| { + .on_click(|ctx: &mut galaxyui::elements::EventContext, _, _| { ctx.dispatch_typed_action(WorkspaceAction::OpenWorktreeAddRepoPicker); ctx.dispatch_typed_action(crate::menu::MenuAction::Close(true)); }) @@ -9029,7 +9029,7 @@ impl Workspace { }); }); }, - warpui::platform::FilePickerConfiguration::new().folders_only(), + galaxyui::platform::FilePickerConfiguration::new().folders_only(), ); } @@ -9103,7 +9103,7 @@ impl Workspace { .map(crate::util::git::list_local_branches_sync) .unwrap_or_default(); let branch_refs: HashSet<&str> = branches.iter().map(|s| s.as_str()).collect(); - Some(warp_util::worktree_names::generate_worktree_branch_name( + Some(galaxy_util::worktree_names::generate_worktree_branch_name( &branch_refs, )) } @@ -9143,7 +9143,7 @@ impl Workspace { } else { let branches = crate::util::git::list_local_branches_sync(Path::new(repo)); let branch_refs: HashSet<&str> = branches.iter().map(|s| s.as_str()).collect(); - warp_util::worktree_names::generate_worktree_branch_name(&branch_refs) + galaxy_util::worktree_names::generate_worktree_branch_name(&branch_refs) }; let toml_content = crate::tab_configs::build_worktree_config_toml( @@ -9229,7 +9229,7 @@ impl Workspace { }); }); }, - warpui::platform::FilePickerConfiguration::new().folders_only(), + galaxyui::platform::FilePickerConfiguration::new().folders_only(), ); } @@ -9250,7 +9250,7 @@ impl Workspace { }; let branches = crate::util::git::list_local_branches_sync(Path::new(&repo_path)); let branch_refs: HashSet<&str> = branches.iter().map(|s| s.as_str()).collect(); - let branch_name = warp_util::worktree_names::generate_worktree_branch_name(&branch_refs); + let branch_name = galaxy_util::worktree_names::generate_worktree_branch_name(&branch_refs); let repo_display_name = Path::new(&repo_path) .file_name() .map(|name| name.to_string_lossy().to_string()) @@ -9330,7 +9330,7 @@ impl Workspace { persisted.user_added_workspace(path_buf, ctx); }); }, - warpui::platform::FilePickerConfiguration::new().folders_only(), + galaxyui::platform::FilePickerConfiguration::new().folders_only(), ); } @@ -11998,7 +11998,7 @@ impl Workspace { #[cfg(target_os = "macos")] pub fn sync_window_button_visibility(&self, ctx: &mut ViewContext) { - use warpui::platform::mac::WindowExt; + use galaxyui::platform::mac::WindowExt; let show = if FeatureFlag::FullScreenZenMode.is_enabled() && TabSettings::as_ref(ctx) .workspace_decoration_visibility @@ -13434,7 +13434,7 @@ impl Workspace { host_id, indexed_path, } => { - use warp_util::standardized_path::StandardizedPath; + use galaxy_util::standardized_path::StandardizedPath; if let Ok(std_path) = StandardizedPath::try_new(indexed_path) { let remote_id = RemoteRepositoryIdentifier::new(host_id.clone(), std_path); @@ -15034,7 +15034,7 @@ impl Workspace { }, ) { new_toast = DismissibleToast::success( - "Plan synced to your Warp Drive".to_string(), + "Plan synced to your Galaxy Drive".to_string(), ) .with_object_id(object_id_clone) .with_link( @@ -16434,7 +16434,7 @@ impl Workspace { .with_child( Text::new_inline(AI_ASSISTANT_FEATURE_NAME, appearance.ui_font_family(), 14.) .with_style(Properties { - weight: warpui::fonts::Weight::Bold, + weight: galaxyui::fonts::Weight::Bold, ..Default::default() }) .finish(), @@ -16598,7 +16598,7 @@ impl Workspace { { ToolPanelView::ProjectExplorer => "Project explorer", ToolPanelView::GlobalSearch { .. } => "Global search", - ToolPanelView::WarpDrive => "Warp Drive", + ToolPanelView::WarpDrive => "Galaxy Drive", ToolPanelView::ConversationListView => "Agent conversations", } } else { @@ -16652,7 +16652,7 @@ impl Workspace { { ToolPanelView::ProjectExplorer => "Project explorer", ToolPanelView::GlobalSearch { .. } => "Global search", - ToolPanelView::WarpDrive => "Warp Drive", + ToolPanelView::WarpDrive => "Galaxy Drive", ToolPanelView::ConversationListView => "Agent conversations", } } else { @@ -16715,7 +16715,7 @@ impl Workspace { }; // Build the button content: Diff icon + optional diff stats - let icon = ConstrainedBox::new(icons::Icon::Diff.to_warpui_icon(font_color).finish()) + let icon = ConstrainedBox::new(icons::Icon::Diff.to_galaxyui_icon(font_color).finish()) .with_width(16.) .with_height(16.) .finish(); @@ -16871,7 +16871,7 @@ impl Workspace { .with_spacing(10.) .with_child( ConstrainedBox::new( - icons::Icon::Search.to_warpui_icon(text_color).finish(), + icons::Icon::Search.to_galaxyui_icon(text_color).finish(), ) .with_width(16.) .with_height(16.) @@ -16946,8 +16946,8 @@ impl Workspace { // Left: Warp logo - clickable to link to warp.dev let warp_logo = Hoverable::new(self.mouse_states.warp_logo.clone(), |_state| { ConstrainedBox::new( - warp_core::ui::Icon::Warp - .to_warpui_icon(appearance.theme().foreground()) + galaxy_core::ui::Icon::Warp + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_height(24.) @@ -17002,7 +17002,7 @@ impl Workspace { } // Hide "Open in Warp" button on mobile devices - if !warpui::platform::wasm::is_mobile_device() { + if !galaxyui::platform::wasm::is_mobile_device() { right_row.add_child(ChildView::new(&self.open_in_warp_button).finish()); } tab_bar.add_child(right_row.finish()); @@ -17906,7 +17906,7 @@ impl Workspace { let icon = ConstrainedBox::new( Container::new( icons::Icon::CloudOffline - .to_warpui_icon(appearance.theme().foreground()) + .to_galaxyui_icon(appearance.theme().foreground()) .finish(), ) .with_uniform_padding(3.) @@ -18422,7 +18422,7 @@ impl Workspace { // Left side: alert icon + bold heading + regular description, all inline. let icon = - ConstrainedBox::new(Icon::AlertCircle.to_warpui_icon(text_color.into()).finish()) + ConstrainedBox::new(Icon::AlertCircle.to_galaxyui_icon(text_color.into()).finish()) .with_width(16.) .with_height(16.) .finish(); @@ -18523,7 +18523,7 @@ impl Workspace { // `x-close.svg`), matching the Figma // design. `Icon::XCircle` wraps the x in // a circle which is not what we want. - Icon::X.to_warpui_icon(text_color.into()).finish(), + Icon::X.to_galaxyui_icon(text_color.into()).finish(), ) .with_width(16.) .with_height(16.) @@ -18586,7 +18586,7 @@ impl Workspace { if let Some(icon) = icon { row.add_child( Container::new( - ConstrainedBox::new(icon.to_warpui_icon(text_color.into()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(text_color.into()).finish()) .with_width(14.) .with_height(14.) .finish(), @@ -18831,7 +18831,7 @@ impl Workspace { } #[cfg(target_family = "wasm")] - if !warpui::platform::wasm::is_mobile_device() + if !galaxyui::platform::wasm::is_mobile_device() && self .current_workspace_state .is_transcript_details_panel_open @@ -18912,7 +18912,7 @@ impl Workspace { ) } HeaderToolbarItemKind::ToolsPanel => { - if !pane_group.left_panel_open || warpui::platform::is_mobile_device() { + if !pane_group.left_panel_open || galaxyui::platform::is_mobile_device() { return None; } Some(ChildView::new(&self.left_panel_view).finish()) @@ -20579,7 +20579,7 @@ impl TypedActionView for Workspace { // Blocking is ok here only because this action is only registered in dev and local // builds to aid in debugging and development. let access_token = - warpui::r#async::block_on(self.server_api.get_or_refresh_access_token()); + galaxyui::r#async::block_on(self.server_api.get_or_refresh_access_token()); if let Ok(token) = access_token { if let Some(bearer) = token.bearer_token() { ctx.clipboard().write(ClipboardContent::plain_text(bearer)); @@ -21663,7 +21663,7 @@ impl View for Workspace { self.sync_window_button_visibility(ctx); } - fn keymap_context(&self, app: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, app: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if NetworkStatus::as_ref(app).is_online() { @@ -21896,7 +21896,7 @@ impl View for Workspace { #[cfg(target_family = "wasm")] { let pane_group = self.active_tab_pane_group().as_ref(app); - if warpui::platform::wasm::is_mobile_device() && pane_group.left_panel_open { + if galaxyui::platform::wasm::is_mobile_device() && pane_group.left_panel_open { let scrim = Rect::new() .with_background(Fill::Solid(ColorU::new( 0, @@ -22000,7 +22000,7 @@ impl View for Workspace { // Transcript details panel overlay (right side, mobile only) #[cfg(target_family = "wasm")] - if warpui::platform::wasm::is_mobile_device() + if galaxyui::platform::wasm::is_mobile_device() && self .current_workspace_state .is_transcript_details_panel_open diff --git a/app/src/workspace/view/build_plan_migration_modal.rs b/app/src/workspace/view/build_plan_migration_modal.rs index 0d7d52ee..6f6bfbe7 100644 --- a/app/src/workspace/view/build_plan_migration_modal.rs +++ b/app/src/workspace/view/build_plan_migration_modal.rs @@ -11,20 +11,20 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use settings::Setting as _; use thousands::Separable; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warp_graphql::billing::{AddonCreditsOption, StripeSubscriptionPlan}; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxy_graphql::billing::{AddonCreditsOption, StripeSubscriptionPlan}; +use galaxyui::elements::{ Align, Border, CacheOption, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, FormattedTextElement, HighlightedHyperlink, Image, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Shrinkable, Stack, }; -use warpui::fonts::{FamilyId, Weight}; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{ +use galaxyui::fonts::{FamilyId, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -282,7 +282,7 @@ impl BuildPlanMigrationModal { ChildView::new(&self.reload_denominations_dropdown).finish() } else { // Match dropdown height to prevent layout shift (dropdown is typically ~28-32px) - ConstrainedBox::new(warpui::elements::Empty::new().finish()) + ConstrainedBox::new(galaxyui::elements::Empty::new().finish()) .with_width(DROPDOWN_WIDTH) .with_height(28.) .finish() diff --git a/app/src/workspace/view/cloud_agent_capacity_modal/mod.rs b/app/src/workspace/view/cloud_agent_capacity_modal/mod.rs index 150fad7a..fe4b9202 100644 --- a/app/src/workspace/view/cloud_agent_capacity_modal/mod.rs +++ b/app/src/workspace/view/cloud_agent_capacity_modal/mod.rs @@ -9,21 +9,21 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use thousands::Separable; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warp_graphql::billing::StripeSubscriptionPlan; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxy_graphql::billing::StripeSubscriptionPlan; +use galaxyui::elements::{ Align, CacheOption, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, Image, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, }; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; use crate::send_telemetry_from_ctx; use crate::TelemetryEvent; @@ -43,7 +43,7 @@ pub enum CloudAgentCapacityModalVariant { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -243,7 +243,7 @@ impl CloudAgentCapacityModal { Container::new( ConstrainedBox::new( Icon::CheckCircleBroken - .to_warpui_icon(Fill::Solid(theme.ansi_fg_green())) + .to_galaxyui_icon(Fill::Solid(theme.ansi_fg_green())) .finish(), ) .with_width(14.) diff --git a/app/src/workspace/view/codex_modal.rs b/app/src/workspace/view/codex_modal.rs index 26db2aca..b9278ae7 100644 --- a/app/src/workspace/view/codex_modal.rs +++ b/app/src/workspace/view/codex_modal.rs @@ -4,19 +4,19 @@ use crate::view_components::action_button::{ActionButton, ActionButtonTheme}; use asset_macro::bundled_or_fetched_asset; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::elements::{ Align, Border, CacheOption, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, FormattedTextElement, Image, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, Text, }; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::presenter::ChildView; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -48,7 +48,7 @@ const LEFT_PANEL_WIDTH: f32 = 330.; const RIGHT_PANEL_WIDTH: f32 = 325.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", diff --git a/app/src/workspace/view/conversation_list/item.rs b/app/src/workspace/view/conversation_list/item.rs index d3a406ba..995661b3 100644 --- a/app/src/workspace/view/conversation_list/item.rs +++ b/app/src/workspace/view/conversation_list/item.rs @@ -11,21 +11,21 @@ use crate::util::time_format::format_approx_duration_from_now_utc; use crate::util::truncation::truncate_from_end; use crate::workspace::view::conversation_list::view::ConversationListViewAction; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::color::internal_colors; -use warp_util::path::user_friendly_path; -use warpui::elements::{ +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_util::path::user_friendly_path; +use galaxyui::elements::{ AnchorPair, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, Element, EventHandler, Flex, Highlight, Hoverable, MainAxisAlignment, MainAxisSize, MouseInBehavior, MouseStateHandle, OffsetPositioning, OffsetType, ParentAnchor, ParentElement, ParentOffsetBounds, PositionedElementOffsetBounds, PositioningAxis, Radius, SavePosition, Shrinkable, Stack, Text, XAxisAnchor, YAxisAnchor, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::text_layout::TextStyle; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{AppContext, SingletonEntity, ViewHandle}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::TextStyle; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, SingletonEntity, ViewHandle}; /// Maximum length for tooltip text before truncation const MAX_TOOLTIP_LENGTH: usize = 80; @@ -98,7 +98,7 @@ pub fn render_static_item(props: StaticItemProps<'_>, app: &AppContext) -> Box, app: &AppContext) -> Box { let icon_element: Box = if conversation.is_ambient_agent_conversation() { ConstrainedBox::new( Icon::Cloud - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish(), ) .with_width(status_element_size) diff --git a/app/src/workspace/view/conversation_list/view.rs b/app/src/workspace/view/conversation_list/view.rs index 376c19e3..a9c41cda 100644 --- a/app/src/workspace/view/conversation_list/view.rs +++ b/app/src/workspace/view/conversation_list/view.rs @@ -29,25 +29,25 @@ use crate::workspace::view::conversation_list::item::{ }; use crate::workspace::ToastStack; use crate::workspace::WorkspaceAction; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::Icon; +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::Icon; use super::view_model::{ConversationEntry, ConversationListViewModel}; -use warp_editor::editor::NavigationKey; -use warpui::elements::{ +use galaxy_editor::editor::NavigationKey; +use galaxyui::elements::{ Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Element, Fill, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, Padding, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, SavePosition, ScrollStateHandle, Scrollable, ScrollableElement, ScrollbarWidth, Shrinkable, Stack, Text, UniformList, UniformListState, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::macros::*; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::text_layout::TextAlignment; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::macros::*; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::TextAlignment; +use galaxyui::{ AppContext, BlurContext, Entity, EntityId, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; @@ -649,7 +649,7 @@ fn render_zero_state( let chat_icon = ConstrainedBox::new( Icon::ChatDashed - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish(), ) .with_width(24.) @@ -693,7 +693,7 @@ fn render_zero_state( .with_child( ConstrainedBox::new( Icon::Plus - .to_warpui_icon(theme.main_text_color(theme.background())) + .to_galaxyui_icon(theme.main_text_color(theme.background())) .finish(), ) .with_width(14.) @@ -776,7 +776,7 @@ fn render_section_header( }; let chevron = ConstrainedBox::new( chevron_icon - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish(), ) .with_width(12.) diff --git a/app/src/workspace/view/conversation_list/view_model.rs b/app/src/workspace/view/conversation_list/view_model.rs index af2b3158..a44503c8 100644 --- a/app/src/workspace/view/conversation_list/view_model.rs +++ b/app/src/workspace/view/conversation_list/view_model.rs @@ -5,7 +5,7 @@ use crate::ai::agent_conversations_model::{ StatusFilter, }; use fuzzy_match::match_indices_case_insensitive; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; pub struct ConversationListViewModelEvent; diff --git a/app/src/workspace/view/crash_recovery.rs b/app/src/workspace/view/crash_recovery.rs index a59fe7e8..0cff5714 100644 --- a/app/src/workspace/view/crash_recovery.rs +++ b/app/src/workspace/view/crash_recovery.rs @@ -1,5 +1,5 @@ -use warp_cli::RecoveryMechanism; -use warpui::{AppContext, SingletonEntity as _, ViewContext}; +use galaxy_cli::RecoveryMechanism; +use galaxyui::{AppContext, SingletonEntity as _, ViewContext}; use crate::crash_recovery::CrashRecovery; diff --git a/app/src/workspace/view/free_tier_limit_hit_modal.rs b/app/src/workspace/view/free_tier_limit_hit_modal.rs index 7d5ce6d9..88f82e61 100644 --- a/app/src/workspace/view/free_tier_limit_hit_modal.rs +++ b/app/src/workspace/view/free_tier_limit_hit_modal.rs @@ -10,22 +10,22 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use thousands::Separable; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::{Fill, WarpTheme}; -use warp_graphql::billing::{PlanPricing, StripeSubscriptionPlan}; -use warpui::elements::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::{Fill, WarpTheme}; +use galaxy_graphql::billing::{PlanPricing, StripeSubscriptionPlan}; +use galaxyui::elements::{ Align, Border, CacheOption, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, FormattedTextElement, HighlightedHyperlink, Image, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, }; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::ui_components::button::ButtonVariant; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::button::ButtonVariant; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::{AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext}; const BUTTON_DIAMETER: f32 = 20.; const MODAL_HEIGHT: f32 = 440.; @@ -33,7 +33,7 @@ const LEFT_PANEL_WIDTH: f32 = 360.; const RIGHT_PANEL_WIDTH: f32 = 360.; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -108,7 +108,7 @@ impl FreeTierLimitHitModal { Container::new( ConstrainedBox::new( Icon::CheckCircleBroken - .to_warpui_icon(Fill::Solid(theme.ansi_fg_green())) + .to_galaxyui_icon(Fill::Solid(theme.ansi_fg_green())) .finish(), ) .with_width(14.) @@ -240,7 +240,7 @@ impl FreeTierLimitHitModal { Container::new( ConstrainedBox::new( Icon::CheckCircleBroken - .to_warpui_icon(Fill::Solid(theme.ansi_fg_green())) + .to_galaxyui_icon(Fill::Solid(theme.ansi_fg_green())) .finish(), ) .with_width(14.) @@ -283,7 +283,7 @@ impl FreeTierLimitHitModal { Container::new( ConstrainedBox::new( Icon::CheckCircleBroken - .to_warpui_icon(Fill::Solid(theme.ansi_fg_green())) + .to_galaxyui_icon(Fill::Solid(theme.ansi_fg_green())) .finish(), ) .with_width(14.) diff --git a/app/src/workspace/view/global_search/model.rs b/app/src/workspace/view/global_search/model.rs index 5da34985..c766c57b 100644 --- a/app/src/workspace/view/global_search/model.rs +++ b/app/src/workspace/view/global_search/model.rs @@ -7,9 +7,9 @@ use num_traits::SaturatingSub; use regex::escape; use std::path::PathBuf; use string_offset::ByteOffset; -use warp_ripgrep::search::{Match as RipgrepMatch, Submatch}; -use warpui::r#async::SpawnedFutureHandle; -use warpui::{Entity, ModelContext, ModelSpawner}; +use galaxy_ripgrep::search::{Match as RipgrepMatch, Submatch}; +use galaxyui::r#async::SpawnedFutureHandle; +use galaxyui::{Entity, ModelContext, ModelSpawner}; const START_BATCH_AFTER_COUNT: usize = 50; const MAX_BATCH_SIZE: usize = 512; @@ -85,7 +85,7 @@ impl GlobalSearch { let handle = ctx.spawn( async move { - Self::run_warp_ripgrep_cli( + Self::run_galaxy_ripgrep_cli( search_id, effective_pattern, roots, @@ -103,7 +103,7 @@ impl GlobalSearch { }); } Err(err) => { - log::error!("GlobalSearch: warp_ripgrep CLI search failed or aborted: {err}"); + log::error!("GlobalSearch: galaxy_ripgrep CLI search failed or aborted: {err}"); ctx.emit(GlobalSearchEvent::Failed { search_id, error: "Global search failed.".to_string(), @@ -115,7 +115,7 @@ impl GlobalSearch { self.search_handle = Some(handle); } - async fn run_warp_ripgrep_cli( + async fn run_galaxy_ripgrep_cli( search_id: u32, pattern: String, roots: Vec, @@ -125,12 +125,12 @@ impl GlobalSearch { ) -> Result { let roots_display: Vec<_> = roots.iter().map(|r| r.display().to_string()).collect(); log::info!( - "GlobalSearch: starting warp_ripgrep CLI search with pattern={pattern}, roots={:?}", + "GlobalSearch: starting galaxy_ripgrep CLI search with pattern={pattern}, roots={:?}", roots_display ); let stream = - warp_ripgrep::search::search_streaming(&[pattern], &roots, ignore_case, multiline)?; + galaxy_ripgrep::search::search_streaming(&[pattern], &roots, ignore_case, multiline)?; futures::pin_mut!(stream); let mut total_match_count: usize = 0; diff --git a/app/src/workspace/view/global_search/model_wasm.rs b/app/src/workspace/view/global_search/model_wasm.rs index 4b2e2ce1..3d0947ee 100644 --- a/app/src/workspace/view/global_search/model_wasm.rs +++ b/app/src/workspace/view/global_search/model_wasm.rs @@ -2,7 +2,7 @@ use std::path::PathBuf; use crate::workspace::view::global_search::view::GlobalSearchEvent; use crate::workspace::view::global_search::SearchConfig; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; pub struct GlobalSearch {} diff --git a/app/src/workspace/view/global_search/view.rs b/app/src/workspace/view/global_search/view.rs index ebcb7c4d..582421bb 100644 --- a/app/src/workspace/view/global_search/view.rs +++ b/app/src/workspace/view/global_search/view.rs @@ -10,8 +10,8 @@ use crate::coding_panel_enablement_state::CodingPanelEnablementState; use async_channel::Sender; use pathfinder_geometry::vector::vec2f; use string_offset::{ByteOffset, CharCounter}; -use warp_editor::editor::NavigationKey; -use warp_ripgrep::search::{Match as RipgrepMatch, Submatch}; +use galaxy_editor::editor::NavigationKey; +use galaxy_ripgrep::search::{Match as RipgrepMatch, Submatch}; use crate::code::icon_from_file_path; use crate::debounce::debounce; @@ -28,12 +28,12 @@ use crate::view_components::action_button::{ActionButton, ButtonSize, NakedTheme use crate::workspace::view::global_search::model::GlobalSearch; use crate::workspace::view::global_search::SearchConfig; use crate::TelemetryEvent; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::{AnsiColorIdentifier, Fill as ThemeFill}; -use warp_core::ui::Icon; -use warpui::elements::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::{AnsiColorIdentifier, Fill as ThemeFill}; +use galaxy_core::ui::Icon; +use galaxyui::elements::{ Border, ChildAnchor, ChildView, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DispatchEventResult, Empty, EventHandler, Fill, Flex, FormattedTextElement, Highlight, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, @@ -41,13 +41,13 @@ use warpui::elements::{ Scrollable, ScrollableElement, ScrollbarWidth, Shrinkable, Stack, Text, UniformList, UniformListState, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::text_layout::{TextAlignment, TextStyle}; -use warpui::ui_components::components::{UiComponent as _, UiComponentStyles}; -use warpui::ui_components::text::Span; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::text_layout::{TextAlignment, TextStyle}; +use galaxyui::ui_components::components::{UiComponent as _, UiComponentStyles}; +use galaxyui::ui_components::text::Span; +use galaxyui::{ AppContext, Element, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WeakViewHandle, }; @@ -598,7 +598,7 @@ impl GlobalSearchView { } pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new( @@ -984,7 +984,7 @@ impl GlobalSearchView { // Ancestor-dedup search roots so we don't search the same file twice // when terminal directories are nested (e.g. `~/code` + `~/code/a`). // Shared with `FileTreeView` for consistency. - self.search_roots = warp_util::path::group_roots_by_common_ancestor(&roots).roots; + self.search_roots = galaxy_util::path::group_roots_by_common_ancestor(&roots).roots; self.root_directories = roots; } @@ -1074,7 +1074,7 @@ impl GlobalSearchView { directory_path: &Path, matched_path: &MatchedPath, appearance: &Appearance, - theme: &warp_core::ui::theme::WarpTheme, + theme: &galaxy_core::ui::theme::WarpTheme, app: &AppContext, ) -> Box { let is_selected = self.is_row_at_index_selected(index); @@ -1105,7 +1105,7 @@ impl GlobalSearchView { let icon_size = 16.0; let chevron_color = item_highlight_state.text_and_icon_color(appearance); let chevron_icon = chevron_icon_enum - .to_warpui_icon(ThemeFill::from(chevron_color)) + .to_galaxyui_icon(ThemeFill::from(chevron_color)) .finish(); let chevron_icon = ConstrainedBox::new(chevron_icon) .with_width(icon_size) @@ -1157,7 +1157,7 @@ impl GlobalSearchView { let icon_color = list_highlight_state.text_and_icon_color(appearance); let file_icon = match icon_from_file_path { ImageOrIcon::Icon(icon) => { - icon.to_warpui_icon(ThemeFill::from(icon_color)).finish() + icon.to_galaxyui_icon(ThemeFill::from(icon_color)).finish() } ImageOrIcon::Image(image) => image, }; @@ -1249,7 +1249,7 @@ impl GlobalSearchView { matched: &Match, match_index: usize, appearance: &Appearance, - theme: &warp_core::ui::theme::WarpTheme, + theme: &galaxy_core::ui::theme::WarpTheme, ) -> Box { let is_selected = self.is_row_at_index_selected(index); let line_number = matched.line_number; @@ -1853,7 +1853,7 @@ impl GlobalSearchView { index: usize, dir_entry: &DirectoryEntry, appearance: &Appearance, - theme: &warp_core::ui::theme::WarpTheme, + theme: &galaxy_core::ui::theme::WarpTheme, ) -> Box { let is_selected = self.is_row_at_index_selected(index); let mouse_state = dir_entry.mouse_state.clone(); @@ -1883,7 +1883,7 @@ impl GlobalSearchView { let icon_size = 16.0; let chevron_color = list_highlight_state.text_and_icon_color(appearance); let chevron_icon = chevron_icon_enum - .to_warpui_icon(ThemeFill::from(chevron_color)) + .to_galaxyui_icon(ThemeFill::from(chevron_color)) .finish(); let chevron_icon = ConstrainedBox::new(chevron_icon) .with_width(icon_size) @@ -1894,7 +1894,7 @@ impl GlobalSearchView { // Folder icon let icon_color = list_highlight_state.text_and_icon_color(appearance); let folder_icon = Icon::Folder - .to_warpui_icon(ThemeFill::from(icon_color)) + .to_galaxyui_icon(ThemeFill::from(icon_color)) .finish(); let folder_icon_element = Container::new( ConstrainedBox::new(folder_icon) @@ -2108,7 +2108,7 @@ impl View for GlobalSearchView { if self.capped_matches { let alert_icon = ConstrainedBox::new( Icon::AlertTriangle - .to_warpui_icon(ThemeFill::Solid( + .to_galaxyui_icon(ThemeFill::Solid( theme.terminal_colors().normal.yellow.into(), )) .finish(), @@ -2184,7 +2184,7 @@ impl GlobalSearchView { .with_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(ThemeFill::Solid(internal_colors::neutral_6(theme))) + icon.to_galaxyui_icon(ThemeFill::Solid(internal_colors::neutral_6(theme))) .finish(), ) .with_width(24.) diff --git a/app/src/workspace/view/launch_modal/cta_button.rs b/app/src/workspace/view/launch_modal/cta_button.rs index a85a679a..0e8286c3 100644 --- a/app/src/workspace/view/launch_modal/cta_button.rs +++ b/app/src/workspace/view/launch_modal/cta_button.rs @@ -1,7 +1,7 @@ use super::Slide; use crate::server::telemetry::TelemetryEvent; use std::rc::Rc; -use warpui::ViewContext; +use galaxyui::ViewContext; /// A callback function for custom CTA button actions. type CustomCallback = Rc>)>; diff --git a/app/src/workspace/view/launch_modal/mod.rs b/app/src/workspace/view/launch_modal/mod.rs index 68c4ac2a..7d8406f2 100644 --- a/app/src/workspace/view/launch_modal/mod.rs +++ b/app/src/workspace/view/launch_modal/mod.rs @@ -13,27 +13,27 @@ use crate::workspace::view::launch_modal::cta_button::{CTAButton, CTAButtonActio use markdown_parser::{parse_markdown, FormattedText, FormattedTextLine}; use pathfinder_color::ColorU; use std::collections::HashMap; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::Fill; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::Fill; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::{ Align, Border, CacheOption, ChildAnchor, Clipped, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Empty, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, Hoverable, HyperlinkLens, Image, MainAxisAlignment, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Shrinkable, SizeConstraintCondition, SizeConstraintSwitch, Stack, }; -use warpui::fonts::Weight; -use warpui::keymap::FixedBinding; -use warpui::platform::Cursor; -use warpui::presenter::ChildView; -use warpui::ui_components::components::UiComponent; -use warpui::{ +use galaxyui::fonts::Weight; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::Cursor; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([ FixedBinding::new("escape", LaunchModalAction::::Close, id!("LaunchModal")), @@ -371,7 +371,7 @@ impl LaunchModal { .with_child( Container::new( ConstrainedBox::new( - icon.to_warpui_icon(Fill::Solid( + icon.to_galaxyui_icon(Fill::Solid( blended_colors::text_main( theme, blended_colors::neutral_2(theme), diff --git a/app/src/workspace/view/launch_modal/oz_launch.rs b/app/src/workspace/view/launch_modal/oz_launch.rs index c9c41cb8..59611135 100644 --- a/app/src/workspace/view/launch_modal/oz_launch.rs +++ b/app/src/workspace/view/launch_modal/oz_launch.rs @@ -8,9 +8,9 @@ use crate::workspaces::user_workspaces::UserWorkspaces; use crate::workspaces::workspace::{AdminEnablementSetting, UgcCollectionEnablementSetting}; use asset_macro::bundled_or_fetched_asset; use markdown_parser::{FormattedTextFragment, FormattedTextLine}; -use warp_core::send_telemetry_from_ctx; -use warpui::assets::asset_cache::AssetSource; -use warpui::{AppContext, SingletonEntity}; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::{AppContext, SingletonEntity}; #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] pub enum OzLaunchSlide { @@ -188,7 +188,7 @@ impl Slide for OzLaunchSlide { ) && !matches!(ugc_setting, UgcCollectionEnablementSetting::Enable) } - fn on_close(&self, ctx: &mut warpui::ViewContext>) { + fn on_close(&self, ctx: &mut galaxyui::ViewContext>) { ctx.dispatch_typed_action(&WorkspaceAction::StartAgentOnboardingTutorial( OnboardingTutorial::NoProject { intention: OnboardingIntention::AgentDrivenDevelopment, @@ -197,6 +197,6 @@ impl Slide for OzLaunchSlide { } } -pub fn init(app: &mut warpui::AppContext) { +pub fn init(app: &mut galaxyui::AppContext) { super::init::(app); } diff --git a/app/src/workspace/view/left_panel.rs b/app/src/workspace/view/left_panel.rs index 038ee5fa..0dc38d6b 100644 --- a/app/src/workspace/view/left_panel.rs +++ b/app/src/workspace/view/left_panel.rs @@ -1,10 +1,10 @@ use std::collections::HashSet; use std::path::PathBuf; -use warp_core::ui::theme::color::internal_colors; -use warp_core::{send_telemetry_from_ctx, ui::Icon}; -use warp_util::path::LineAndColumnArg; -use warpui::{ +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::{send_telemetry_from_ctx, ui::Icon}; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::{ elements::{ resizable_state_handle, ChildView, ConstrainedBox, Container, CrossAxisAlignment, DragBarSide, Element, Empty, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, @@ -91,7 +91,7 @@ pub enum LeftPanelEvent { ShowDeleteConfirmationDialog { conversation_id: AIConversationId, conversation_title: String, - terminal_view_id: Option, + terminal_view_id: Option, }, } @@ -107,7 +107,7 @@ pub enum ToolPanelView { /// `active_view_state::set`, which handles necessary side effects. mod active_view_state { use super::ToolPanelView; - use warpui::ViewContext; + use galaxyui::ViewContext; pub struct ActiveViewState(ToolPanelView); @@ -144,9 +144,9 @@ mod active_view_state { } pub struct ToolbeltButtonConfig { - pub icon: warp_core::ui::Icon, + pub icon: galaxy_core::ui::Icon, /// Optional icon to use when the given toolbelt option is in an active state. - pub active_icon: Option, + pub active_icon: Option, pub tooltip_text: String, pub action: LeftPanelAction, /// Whether the button should be rendered with an "active" state. @@ -445,7 +445,7 @@ impl LeftPanelView { fn get_or_create_global_search_view_for_pane_group( &mut self, - pane_group_id: warpui::EntityId, + pane_group_id: galaxyui::EntityId, ctx: &mut ViewContext, ) -> ViewHandle { if let Some(view) = self @@ -471,7 +471,7 @@ impl LeftPanelView { fn get_or_create_file_tree_view_for_pane_group( &mut self, - pane_group_id: warpui::EntityId, + pane_group_id: galaxyui::EntityId, ctx: &mut ViewContext, ) -> ViewHandle { if let Some(view) = self @@ -988,7 +988,7 @@ impl LeftPanelView { fn deactivate_file_tree_view_for_pane_group( &self, - pane_group_id: warpui::EntityId, + pane_group_id: galaxyui::EntityId, ctx: &mut ViewContext, ) { if let Some(view) = self @@ -1182,7 +1182,7 @@ impl View for LeftPanelView { }) .finish(); - if warpui::platform::is_mobile_device() { + if galaxyui::platform::is_mobile_device() { return panel_content; } diff --git a/app/src/workspace/view/onboarding.rs b/app/src/workspace/view/onboarding.rs index ad4e2ea4..64647b27 100644 --- a/app/src/workspace/view/onboarding.rs +++ b/app/src/workspace/view/onboarding.rs @@ -10,7 +10,7 @@ use onboarding::{ProjectOnboardingSettings, SelectedSettings}; use std::collections::HashMap; use std::path::PathBuf; use std::sync::Arc; -use warpui::{SingletonEntity as _, ViewContext}; +use galaxyui::{SingletonEntity as _, ViewContext}; /// Configuration for starting the agent onboarding tutorial. #[derive(Debug, Clone)] diff --git a/app/src/workspace/view/openwarp_launch_modal/view.rs b/app/src/workspace/view/openwarp_launch_modal/view.rs index 4295bc6a..29a95cd3 100644 --- a/app/src/workspace/view/openwarp_launch_modal/view.rs +++ b/app/src/workspace/view/openwarp_launch_modal/view.rs @@ -3,17 +3,17 @@ use markdown_parser::{ }; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; -use warpui::assets::asset_cache::AssetSource; -use warpui::elements::{ +use galaxy_core::ui::theme::{phenomenon::PhenomenonStyle, Fill}; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::elements::{ Align, CacheOption, ChildAnchor, ChildView, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Expanded, Flex, FormattedTextElement, HighlightedHyperlink, Image, MainAxisSize, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::keymap::FixedBinding; -use warpui::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::keymap::FixedBinding; +use galaxyui::{ AppContext, Element, Entity, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, }; @@ -69,7 +69,7 @@ const FEATURE_ITEMS: &[FeatureItem] = &[ ]; pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_fixed_bindings([FixedBinding::new( "escape", @@ -295,7 +295,7 @@ impl OpenWarpLaunchModal { fn render_feature_row(item: &FeatureItem, appearance: &Appearance) -> Box { let icon_el = ConstrainedBox::new( item.icon - .to_warpui_icon(Fill::Solid( + .to_galaxyui_icon(Fill::Solid( PhenomenonStyle::modal_feature_description_text(), )) .finish(), @@ -370,7 +370,7 @@ impl View for OpenWarpLaunchModal { "OpenWarpLaunchModal" } - fn on_focus(&mut self, _focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, _focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { ctx.focus_self(); } diff --git a/app/src/workspace/view/right_panel.rs b/app/src/workspace/view/right_panel.rs index 459f16ea..01bba543 100644 --- a/app/src/workspace/view/right_panel.rs +++ b/app/src/workspace/view/right_panel.rs @@ -36,13 +36,13 @@ use std::{ path::{Path, PathBuf}, sync::Arc, }; -use warp_core::features::FeatureFlag; -use warp_core::ui::Icon; -use warp_util::path::LineAndColumnArg; -use warpui::elements::{ChildAnchor, Empty, PositionedElementAnchor}; -use warpui::keymap::EditableBinding; -use warpui::EntityId; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::Icon; +use galaxy_util::path::LineAndColumnArg; +use galaxyui::elements::{ChildAnchor, Empty, PositionedElementAnchor}; +use galaxyui::keymap::EditableBinding; +use galaxyui::EntityId; +use galaxyui::{ elements::{ resizable_state_handle, Container, DragBarSide, Element, MainAxisSize, MouseStateHandle, Resizable, ResizableStateHandle, @@ -50,7 +50,7 @@ use warpui::{ AppContext, Entity, ModelHandle, SingletonEntity, TypedActionView, View, ViewContext, ViewHandle, WeakViewHandle, }; -use warpui::{ +use galaxyui::{ elements::{ ChildView, Clipped, ConstrainedBox, CrossAxisAlignment, Flex, MainAxisAlignment, ParentElement, Shrinkable, Text, @@ -156,7 +156,7 @@ impl CodeReviewState { dropdown.set_font_color(font_color, ctx); dropdown.set_font_size(ui_font_size, ctx); dropdown.set_vertical_margin(0., ctx); - dropdown.set_top_bar_height(warp_core::ui::icons::ICON_DIMENSIONS, ctx); + dropdown.set_top_bar_height(galaxy_core::ui::icons::ICON_DIMENSIONS, ctx); dropdown.set_padding(HEADER_BUTTON_PADDING, ctx); dropdown }), @@ -345,7 +345,7 @@ pub struct RightPanelView { impl RightPanelView { pub fn init(app: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; app.register_editable_bindings([EditableBinding::new( "workspace:toggle_maximize_code_review_panel", @@ -838,8 +838,8 @@ impl RightPanelView { #[cfg_attr(not(feature = "local_fs"), allow(dead_code))] fn render_maximize_pane_button(&self) -> Box { ConstrainedBox::new(ChildView::new(&self.maximize_button).finish()) - .with_height(warp_core::ui::icons::ICON_DIMENSIONS) - .with_width(warp_core::ui::icons::ICON_DIMENSIONS) + .with_height(galaxy_core::ui::icons::ICON_DIMENSIONS) + .with_width(galaxy_core::ui::icons::ICON_DIMENSIONS) .finish() } diff --git a/app/src/workspace/view/startup_directory.rs b/app/src/workspace/view/startup_directory.rs index fb5a5965..a73260cb 100644 --- a/app/src/workspace/view/startup_directory.rs +++ b/app/src/workspace/view/startup_directory.rs @@ -7,8 +7,8 @@ use crate::terminal::available_shells::AvailableShells; use crate::terminal::session_settings::{NewSessionSource, SessionSettings}; use crate::terminal::ShellLaunchData; use std::path::PathBuf; -use warpui::SingletonEntity; -use warpui::{AppContext, ViewContext, WindowId}; +use galaxyui::SingletonEntity; +use galaxyui::{AppContext, ViewContext, WindowId}; impl Workspace { /// Helper function to compute the initial directory for a new session diff --git a/app/src/workspace/view/vertical_tabs.rs b/app/src/workspace/view/vertical_tabs.rs index 8b52af66..129d2ba0 100644 --- a/app/src/workspace/view/vertical_tabs.rs +++ b/app/src/workspace/view/vertical_tabs.rs @@ -56,15 +56,15 @@ use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::{vec2f, Vector2F}; use settings::Setting as _; use std::path::{Path, PathBuf}; -use warp_core::context_flag::ContextFlag; -use warp_core::telemetry::TelemetryEvent as _; -use warp_core::ui::color::blend::Blend; -use warp_core::ui::color::coloru_with_opacity; -use warp_core::ui::theme::color::internal_colors; -use warp_core::ui::theme::{AnsiColorIdentifier, Fill as WarpThemeFill, WarpTheme}; -use warp_core::ui::Icon as WarpIcon; -use warpui::elements::DispatchEventResult; -use warpui::elements::{ +use galaxy_core::context_flag::ContextFlag; +use galaxy_core::telemetry::TelemetryEvent as _; +use galaxy_core::ui::color::blend::Blend; +use galaxy_core::ui::color::coloru_with_opacity; +use galaxy_core::ui::theme::color::internal_colors; +use galaxy_core::ui::theme::{AnsiColorIdentifier, Fill as WarpThemeFill, WarpTheme}; +use galaxy_core::ui::Icon as WarpIcon; +use galaxyui::elements::DispatchEventResult; +use galaxyui::elements::{ resizable_state_handle, Border, ChildAnchor, Clipped, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DragAxis, DragBarSide, Draggable, DropShadow, DropTarget, Element, Empty, EventHandler, Expanded, @@ -73,13 +73,13 @@ use warpui::elements::{ PositionedElementOffsetBounds, Radius, Resizable, ResizableStateHandle, SavePosition, ScrollTarget, ScrollToPositionMode, ScrollbarWidth, Shrinkable, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::platform::Cursor; -use warpui::prelude::{Align, MainAxisAlignment}; -use warpui::text_layout::ClipConfig; -use warpui::ui_components::components::{UiComponent, UiComponentStyles}; -use warpui::ui_components::text_input::TextInput; -use warpui::{AppContext, EntityId, SingletonEntity, ViewHandle, WindowId}; +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::platform::Cursor; +use galaxyui::prelude::{Align, MainAxisAlignment}; +use galaxyui::text_layout::ClipConfig; +use galaxyui::ui_components::components::{UiComponent, UiComponentStyles}; +use galaxyui::ui_components::text_input::TextInput; +use galaxyui::{AppContext, EntityId, SingletonEntity, ViewHandle, WindowId}; const PANEL_WIDTH: f32 = 248.; const MIN_PANEL_WIDTH: f32 = 200.; @@ -1166,7 +1166,7 @@ fn render_control_bar( let theme = appearance.theme(); let sub_text = theme.sub_text_color(theme.background()); - let search_icon = ConstrainedBox::new(WarpIcon::Search.to_warpui_icon(sub_text).finish()) + let search_icon = ConstrainedBox::new(WarpIcon::Search.to_galaxyui_icon(sub_text).finish()) .with_width(SEARCH_ICON_SIZE) .with_height(SEARCH_ICON_SIZE) .finish(); @@ -1228,7 +1228,7 @@ fn render_detail_kind_badge_icon( .and_then(|session| session.agent.brand_color()) .map(WarpThemeFill::Solid) .unwrap_or_else(|| theme.accent()); - return icon.to_warpui_icon(color).finish(); + return icon.to_galaxyui_icon(color).finish(); } let icon = if terminal_view.is_ambient_agent_session(app) { @@ -1246,10 +1246,10 @@ fn render_detail_kind_badge_icon( WarpIcon::Terminal => disabled_text, _ => sub_text, }; - icon.to_warpui_icon(color).finish() + icon.to_galaxyui_icon(color).finish() } TypedPane::Code(_) => icon_from_file_path(&props.title, appearance) - .unwrap_or_else(|| WarpIcon::Code2.to_warpui_icon(sub_text).finish()), + .unwrap_or_else(|| WarpIcon::Code2.to_galaxyui_icon(sub_text).finish()), typed => { let fill = typed .warp_drive_object_type() @@ -1257,7 +1257,7 @@ fn render_detail_kind_badge_icon( WarpThemeFill::Solid(warp_drive_icon_color(appearance, object_type)) }) .unwrap_or(sub_text); - typed.icon().to_warpui_icon(fill).finish() + typed.icon().to_galaxyui_icon(fill).finish() } } } @@ -1277,7 +1277,7 @@ fn render_settings_button( move |hover_state| { let icon = ConstrainedBox::new( WarpIcon::Settings - .to_warpui_icon(if is_popup_open { main_text } else { sub_text }) + .to_galaxyui_icon(if is_popup_open { main_text } else { sub_text }) .finish(), ) .with_width(16.) @@ -2090,7 +2090,7 @@ fn render_group_action_buttons( let kebab_button = Hoverable::new(kebab_mouse_state, move |button_state| { let mut container = Container::new( - ConstrainedBox::new(WarpIcon::DotsVertical.to_warpui_icon(meta_color).finish()) + ConstrainedBox::new(WarpIcon::DotsVertical.to_galaxyui_icon(meta_color).finish()) .with_width(GROUP_ACTION_BUTTON_ICON_SIZE) .with_height(GROUP_ACTION_BUTTON_ICON_SIZE) .finish(), @@ -2113,7 +2113,7 @@ fn render_group_action_buttons( let close_button = Hoverable::new(close_mouse_state, move |button_state| { let mut container = Container::new( - ConstrainedBox::new(WarpIcon::X.to_warpui_icon(meta_color).finish()) + ConstrainedBox::new(WarpIcon::X.to_galaxyui_icon(meta_color).finish()) .with_width(GROUP_ACTION_BUTTON_ICON_SIZE) .with_height(GROUP_ACTION_BUTTON_ICON_SIZE) .finish(), @@ -2344,7 +2344,7 @@ const INDICATOR_DOT_SIZE: f32 = 8.; fn render_title_indicator(theme: &WarpTheme) -> Box { ConstrainedBox::new( WarpIcon::CircleFilled - .to_warpui_icon(theme.accent()) + .to_galaxyui_icon(theme.accent()) .finish(), ) .with_width(INDICATOR_DOT_SIZE) @@ -2594,7 +2594,7 @@ fn pane_display_title_and_subtitle( .unwrap_or_default(); let home_dir = dirs::home_dir(); let home_str = home_dir.as_ref().and_then(|path| path.to_str()); - let parent = warp_util::path::user_friendly_path(&parent_raw, home_str).to_string(); + let parent = galaxy_util::path::user_friendly_path(&parent_raw, home_str).to_string(); (filename, parent) } else { ( @@ -3341,7 +3341,7 @@ fn render_git_branch_text( .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_spacing(2.) .with_child( - ConstrainedBox::new(UiIcon::GitBranch.to_warpui_icon(text_color).finish()) + ConstrainedBox::new(UiIcon::GitBranch.to_galaxyui_icon(text_color).finish()) .with_width(font_size - 2.) .with_height(font_size - 2.) .finish(), @@ -3634,7 +3634,7 @@ fn render_summary_pane_kind_icon_circle( WarpIcon::Oz }; ( - icon.to_warpui_icon(oz_icon_fill(theme)).finish(), + icon.to_galaxyui_icon(oz_icon_fill(theme)).finish(), theme.background().into(), ) } @@ -3643,12 +3643,12 @@ fn render_summary_pane_kind_icon_circle( let icon_element = agent .icon() .map(|icon| { - icon.to_warpui_icon(WarpThemeFill::Solid(icon_color)) + icon.to_galaxyui_icon(WarpThemeFill::Solid(icon_color)) .finish() }) .unwrap_or_else(|| { WarpIcon::Terminal - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish() }); ( @@ -3664,7 +3664,7 @@ fn render_summary_pane_kind_icon_circle( SummaryPaneKind::Code { title } => ( icon_from_file_path(&title, appearance).unwrap_or_else(|| { WarpIcon::Code2 - .to_warpui_icon(theme.sub_text_color(theme.background())) + .to_galaxyui_icon(theme.sub_text_color(theme.background())) .finish() }), internal_colors::fg_overlay_2(theme).into(), @@ -3683,7 +3683,7 @@ fn render_summary_pane_kind_icon_circle( | SummaryPaneKind::Other => { let (icon, icon_color) = summary_pane_kind_icon(kind, appearance); ( - icon.to_warpui_icon(icon_color).finish(), + icon.to_galaxyui_icon(icon_color).finish(), internal_colors::fg_overlay_2(theme).into(), ) } @@ -3871,7 +3871,7 @@ fn render_terminal_primary_line( .with_child( ConstrainedBox::new( UiIcon::AlertTriangle - .to_warpui_icon(error_color.into()) + .to_galaxyui_icon(error_color.into()) .finish(), ) .with_width(BADGE_ICON_SIZE) @@ -4154,7 +4154,7 @@ fn render_pull_request_badge_content(label: &str, appearance: &Appearance) -> Bo .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_spacing(4.) .with_child( - ConstrainedBox::new(UiIcon::Github.to_warpui_icon(main_text_color).finish()) + ConstrainedBox::new(UiIcon::Github.to_galaxyui_icon(main_text_color).finish()) .with_width(BADGE_ICON_SIZE) .with_height(BADGE_ICON_SIZE) .finish(), @@ -4716,7 +4716,7 @@ fn render_compact_subtitle_option( let main_text = theme.main_text_color(theme.background()); Hoverable::new(mouse_state, move |hover_state| { let check_icon: Box = if is_selected { - ConstrainedBox::new(WarpIcon::Check.to_warpui_icon(main_text).finish()) + ConstrainedBox::new(WarpIcon::Check.to_galaxyui_icon(main_text).finish()) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish() @@ -4769,7 +4769,7 @@ fn render_tab_item_mode_option( let main_text = theme.main_text_color(theme.background()); Hoverable::new(mouse_state, move |hover_state| { let check_icon: Box = if is_selected { - ConstrainedBox::new(WarpIcon::Check.to_warpui_icon(main_text).finish()) + ConstrainedBox::new(WarpIcon::Check.to_galaxyui_icon(main_text).finish()) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish() @@ -4822,7 +4822,7 @@ fn render_primary_info_option( let main_text = theme.main_text_color(theme.background()); Hoverable::new(mouse_state, move |hover_state| { let check_icon: Box = if is_selected { - ConstrainedBox::new(WarpIcon::Check.to_warpui_icon(main_text).finish()) + ConstrainedBox::new(WarpIcon::Check.to_galaxyui_icon(main_text).finish()) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish() @@ -4889,7 +4889,7 @@ fn render_show_toggle_option( Hoverable::new(mouse_state, move |hover_state| { let check_icon: Box = if is_enabled { - ConstrainedBox::new(WarpIcon::Check.to_warpui_icon(main_text).finish()) + ConstrainedBox::new(WarpIcon::Check.to_galaxyui_icon(main_text).finish()) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish() @@ -4912,7 +4912,7 @@ fn render_show_toggle_option( { let builder = ui_builder.clone(); let info_icon = Hoverable::new(info_ms, move |info_hover| { - let icon = ConstrainedBox::new(UiIcon::Info.to_warpui_icon(info_color).finish()) + let icon = ConstrainedBox::new(UiIcon::Info.to_galaxyui_icon(info_color).finish()) .with_width(INFO_ICON_SIZE) .with_height(INFO_ICON_SIZE) .finish(); @@ -4977,7 +4977,7 @@ fn render_popup_segment( Container::new( Align::new( - ConstrainedBox::new(icon.to_warpui_icon(icon_color).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(icon_color).finish()) .with_width(COMPACT_ICON_SIZE) .with_height(COMPACT_ICON_SIZE) .finish(), @@ -5244,7 +5244,7 @@ fn render_detail_status_pill( .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_spacing(4.) .with_child( - ConstrainedBox::new(icon.to_warpui_icon(WarpThemeFill::Solid(color)).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(WarpThemeFill::Solid(color)).finish()) .with_width(12.) .with_height(12.) .finish(), diff --git a/app/src/workspace/view/vertical_tabs/telemetry.rs b/app/src/workspace/view/vertical_tabs/telemetry.rs index 85ec3432..394271a2 100644 --- a/app/src/workspace/view/vertical_tabs/telemetry.rs +++ b/app/src/workspace/view/vertical_tabs/telemetry.rs @@ -1,7 +1,7 @@ use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::features::FeatureFlag; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::features::FeatureFlag; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; use crate::workspace::tab_settings::{ VerticalTabsCompactSubtitle, VerticalTabsDisplayGranularity, VerticalTabsPrimaryInfo, @@ -133,7 +133,7 @@ impl TelemetryEvent for VerticalTabsTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -165,4 +165,4 @@ impl TelemetryEventDesc for VerticalTabsTelemetryEventDiscriminants { } } -warp_core::register_telemetry_event!(VerticalTabsTelemetryEvent); +galaxy_core::register_telemetry_event!(VerticalTabsTelemetryEvent); diff --git a/app/src/workspace/view/vertical_tabs_tests.rs b/app/src/workspace/view/vertical_tabs_tests.rs index edced61b..cf9dd9f3 100644 --- a/app/src/workspace/view/vertical_tabs_tests.rs +++ b/app/src/workspace/view/vertical_tabs_tests.rs @@ -7,8 +7,8 @@ use crate::workspace::tab_settings::VerticalTabsDisplayGranularity; use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::Vector2F; use std::path::PathBuf; -use warpui::elements::PositionedElementOffsetBounds; -use warpui::EntityId; +use galaxyui::elements::PositionedElementOffsetBounds; +use galaxyui::EntityId; use super::{ branch_label_display, coalesce_summary_branch_entries, code_detail_kind_label, diff --git a/app/src/workspace/view/wasm_view.rs b/app/src/workspace/view/wasm_view.rs index b86f0678..c083d2fd 100644 --- a/app/src/workspace/view/wasm_view.rs +++ b/app/src/workspace/view/wasm_view.rs @@ -1,9 +1,9 @@ //! WASM-only view functions for the Workspace. -use warpui::elements::{ChildView, Element}; -use warpui::{AppContext, SingletonEntity, ViewContext, ViewHandle}; +use galaxyui::elements::{ChildView, Element}; +use galaxyui::{AppContext, SingletonEntity, ViewContext, ViewHandle}; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use crate::uri::browser_url_handler::parse_current_url; diff --git a/app/src/workspace/view_test.rs b/app/src/workspace/view_test.rs index fbff35ff..f4c2e524 100644 --- a/app/src/workspace/view_test.rs +++ b/app/src/workspace/view_test.rs @@ -80,9 +80,9 @@ use pane_group::{NotebookPane, PaneState, SplitPaneState, TerminalPaneId}; use session_sharing_protocol::common::SessionId; use terminal::shared_session::permissions_manager::SessionPermissionsManager; use terminal::view::ActiveSessionState; -use warp_editor::editor::NavigationKey; -use warpui::AddSingletonModel; -use warpui::{platform::WindowStyle, App, ViewHandle}; +use galaxy_editor::editor::NavigationKey; +use galaxyui::AddSingletonModel; +use galaxyui::{platform::WindowStyle, App, ViewHandle}; fn initialize_app(app: &mut App) { initialize_settings_for_tests(app); @@ -2719,11 +2719,11 @@ fn test_worktree_sidecar_hides_linked_worktrees_from_repo_list() { let external_git_dir_canon = CanonicalizedPath::try_from(external_git_dir.as_path()) .expect("canonical external git dir"); - let main_repo_std: warp_util::standardized_path::StandardizedPath = + let main_repo_std: galaxy_util::standardized_path::StandardizedPath = main_repo_canon.into(); - let linked_worktree_std: warp_util::standardized_path::StandardizedPath = + let linked_worktree_std: galaxy_util::standardized_path::StandardizedPath = linked_worktree_canon.into(); - let external_git_dir_std: warp_util::standardized_path::StandardizedPath = + let external_git_dir_std: galaxy_util::standardized_path::StandardizedPath = external_git_dir_canon.into(); DetectedRepositories::handle(ctx).update(ctx, |repos, _ctx| { diff --git a/app/src/workspaces/gql_convert.rs b/app/src/workspaces/gql_convert.rs index 597d6e63..8a5b033a 100644 --- a/app/src/workspaces/gql_convert.rs +++ b/app/src/workspaces/gql_convert.rs @@ -44,8 +44,8 @@ use crate::{ use anyhow::{anyhow, bail}; use regex::Regex; use std::path::PathBuf; -use warp_graphql::workspace::AddonCreditsSettings as GqlAddonCreditsSettings; -use warp_graphql::{ +use galaxy_graphql::workspace::AddonCreditsSettings as GqlAddonCreditsSettings; +use galaxy_graphql::{ billing::{ AiAutonomyPolicy as GqlAiAutonomyPolicy, AmbientAgentsPolicy as GqlAmbientAgentsPolicy, BillingMetadata as GqlBillingMetadata, BonusGrant as GqlBonusGrant, @@ -650,9 +650,9 @@ impl ToPathBufs for Vec { self.into_iter().map(PathBuf::from).collect() } } -impl From for crate::ai::llms::LLMModelHost { - fn from(gql_host: warp_graphql::workspace::LlmModelHost) -> Self { - use warp_graphql::workspace::LlmModelHost as GqlLlmModelHost; +impl From for crate::ai::llms::LLMModelHost { + fn from(gql_host: galaxy_graphql::workspace::LlmModelHost) -> Self { + use galaxy_graphql::workspace::LlmModelHost as GqlLlmModelHost; match gql_host { GqlLlmModelHost::DirectApi => Self::DirectApi, GqlLlmModelHost::AwsBedrock => Self::AwsBedrock, @@ -666,8 +666,8 @@ impl From for crate::ai::llms::LLMModelHo } } -impl From for super::workspace::LlmHostSettings { - fn from(gql_settings: warp_graphql::workspace::LlmHostSettings) -> Self { +impl From for super::workspace::LlmHostSettings { + fn from(gql_settings: galaxy_graphql::workspace::LlmHostSettings) -> Self { Self { enabled: gql_settings.enabled, enablement_setting: gql_settings @@ -678,8 +678,8 @@ impl From for super::workspace::LlmHos } } -impl From for LlmSettings { - fn from(gql_settings: warp_graphql::workspace::LlmSettings) -> Self { +impl From for LlmSettings { + fn from(gql_settings: galaxy_graphql::workspace::LlmSettings) -> Self { let mut host_configs = std::collections::HashMap::new(); for entry in gql_settings.host_configs { let host: crate::ai::llms::LLMModelHost = entry.host.into(); @@ -1040,10 +1040,10 @@ impl TryFrom for ObjectUpdateMessage { } } -impl TryFrom for ServerFolder { +impl TryFrom for ServerFolder { type Error = anyhow::Error; - fn try_from(folder: warp_graphql::folder::Folder) -> Result { + fn try_from(folder: galaxy_graphql::folder::Folder) -> Result { ServerFolder::try_from_graphql_fields( ServerId::from_string_lossy(folder.metadata.uid.inner()), Some(folder.name), @@ -1054,10 +1054,10 @@ impl TryFrom for ServerFolder { } } -impl TryFrom for ServerNotebook { +impl TryFrom for ServerNotebook { type Error = anyhow::Error; - fn try_from(notebook: warp_graphql::notebook::Notebook) -> Result { + fn try_from(notebook: galaxy_graphql::notebook::Notebook) -> Result { ServerNotebook::try_from_graphql_fields( ServerId::from_string_lossy(notebook.metadata.uid.inner()), Some(notebook.title), @@ -1069,10 +1069,10 @@ impl TryFrom for ServerNotebook { } } -impl TryFrom for ServerWorkflow { +impl TryFrom for ServerWorkflow { type Error = anyhow::Error; - fn try_from(workflow: warp_graphql::workflow::Workflow) -> Result { + fn try_from(workflow: galaxy_graphql::workflow::Workflow) -> Result { ServerWorkflow::try_from_graphql_fields( ServerId::from_string_lossy(workflow.metadata.uid.inner()), workflow.data, @@ -1082,11 +1082,11 @@ impl TryFrom for ServerWorkflow { } } -impl TryFrom for ServerEnvVarCollection { +impl TryFrom for ServerEnvVarCollection { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerEnvVarCollection::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1097,11 +1097,11 @@ impl TryFrom for Serve } } -impl TryFrom for ServerWorkflowEnum { +impl TryFrom for ServerWorkflowEnum { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerWorkflowEnum::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1112,11 +1112,11 @@ impl TryFrom for Serve } } -impl TryFrom for ServerAIFact { +impl TryFrom for ServerAIFact { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerAIFact::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1127,13 +1127,13 @@ impl TryFrom for Serve } } -impl TryFrom +impl TryFrom for ServerAIExecutionProfile { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerAIExecutionProfile::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1143,11 +1143,11 @@ impl TryFrom ) } } -impl TryFrom for ServerMCPServer { +impl TryFrom for ServerMCPServer { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerMCPServer::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1158,12 +1158,12 @@ impl TryFrom for Serve } } -impl TryFrom +impl TryFrom for ServerTemplatableMCPServer { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerTemplatableMCPServer::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1174,11 +1174,11 @@ impl TryFrom } } -impl TryFrom for ServerPreference { +impl TryFrom for ServerPreference { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerPreference::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1189,13 +1189,13 @@ impl TryFrom for Serve } } -impl TryFrom +impl TryFrom for ServerAmbientAgentEnvironment { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerAmbientAgentEnvironment::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1206,13 +1206,13 @@ impl TryFrom } } -impl TryFrom +impl TryFrom for ServerScheduledAmbientAgent { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerScheduledAmbientAgent::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1223,11 +1223,11 @@ impl TryFrom } } -impl TryFrom for ServerCloudAgentConfig { +impl TryFrom for ServerCloudAgentConfig { type Error = anyhow::Error; fn try_from( - gso: warp_graphql::generic_string_object::GenericStringObject, + gso: galaxy_graphql::generic_string_object::GenericStringObject, ) -> Result { ServerCloudAgentConfig::try_from_graphql_fields( ServerId::from_string_lossy(gso.metadata.uid.inner()), @@ -1238,55 +1238,55 @@ impl TryFrom for Serve } } -impl TryFrom for ServerCloudObject { +impl TryFrom for ServerCloudObject { type Error = anyhow::Error; - fn try_from(value: warp_graphql::object::CloudObject) -> Result { + fn try_from(value: galaxy_graphql::object::CloudObject) -> Result { match value { - warp_graphql::object::CloudObject::AIConversation(_) => { + galaxy_graphql::object::CloudObject::AIConversation(_) => { Err(anyhow::anyhow!("AIConversation is not a supported object type for this operation")) } - warp_graphql::object::CloudObject::Folder(folder) => { + galaxy_graphql::object::CloudObject::Folder(folder) => { Ok(ServerCloudObject::Folder(folder.try_into()?)) } - warp_graphql::object::CloudObject::GenericStringObject(gso) => { + galaxy_graphql::object::CloudObject::GenericStringObject(gso) => { match gso.format { - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonEnvVarCollection => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonEnvVarCollection => { Ok(ServerCloudObject::EnvVarCollection(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonPreference => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonPreference => { Ok(ServerCloudObject::Preference(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonWorkflowEnum => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonWorkflowEnum => { Ok(ServerCloudObject::WorkflowEnum(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonAIFact => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonAIFact => { Ok(ServerCloudObject::AIFact(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonMCPServer => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonMCPServer => { Ok(ServerCloudObject::MCPServer(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonAIExecutionProfile => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonAIExecutionProfile => { Ok(ServerCloudObject::AIExecutionProfile(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonTemplatableMCPServer => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonTemplatableMCPServer => { Ok(ServerCloudObject::TemplatableMCPServer(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonCloudEnvironment => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonCloudEnvironment => { Ok(ServerCloudObject::AmbientAgentEnvironment(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonScheduledAmbientAgent => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonScheduledAmbientAgent => { Ok(ServerCloudObject::ScheduledAmbientAgent(gso.try_into()?)) } } } - warp_graphql::object::CloudObject::Notebook(notebook) => { + galaxy_graphql::object::CloudObject::Notebook(notebook) => { Ok(ServerCloudObject::Notebook(notebook.try_into()?)) } - warp_graphql::object::CloudObject::Workflow(workflow) => { + galaxy_graphql::object::CloudObject::Workflow(workflow) => { Ok(ServerCloudObject::Workflow(Box::new(workflow.try_into()?))) } - warp_graphql::object::CloudObject::Unknown => { + galaxy_graphql::object::CloudObject::Unknown => { Err(anyhow::anyhow!("Unable to convert cloud object type")) } } @@ -1305,31 +1305,31 @@ impl TryFrom for ServerCloudObject { Ok(ServerCloudObject::Folder(fwd.folder.try_into()?)) } CloudObjectWithDescendants::GenericStringObject(gso) => match gso.format { - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonEnvVarCollection => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonEnvVarCollection => { Ok(ServerCloudObject::EnvVarCollection(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonPreference => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonPreference => { Ok(ServerCloudObject::Preference(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonWorkflowEnum => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonWorkflowEnum => { Ok(ServerCloudObject::WorkflowEnum(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonAIFact => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonAIFact => { Ok(ServerCloudObject::AIFact(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonMCPServer => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonMCPServer => { Ok(ServerCloudObject::MCPServer(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonAIExecutionProfile => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonAIExecutionProfile => { Ok(ServerCloudObject::AIExecutionProfile(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonTemplatableMCPServer => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonTemplatableMCPServer => { Ok(ServerCloudObject::TemplatableMCPServer(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonCloudEnvironment => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonCloudEnvironment => { Ok(ServerCloudObject::AmbientAgentEnvironment(gso.try_into()?)) } - warp_graphql::generic_string_object::GenericStringObjectFormat::JsonScheduledAmbientAgent => { + galaxy_graphql::generic_string_object::GenericStringObjectFormat::JsonScheduledAmbientAgent => { Ok(ServerCloudObject::ScheduledAmbientAgent(gso.try_into()?)) } } diff --git a/app/src/workspaces/team_tester.rs b/app/src/workspaces/team_tester.rs index caff6a83..c873ecd5 100644 --- a/app/src/workspaces/team_tester.rs +++ b/app/src/workspaces/team_tester.rs @@ -1,4 +1,4 @@ -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; #[derive(Clone)] pub struct TeamTesterStatus {} diff --git a/app/src/workspaces/update_manager.rs b/app/src/workspaces/update_manager.rs index 67e43e4a..c735bd3e 100644 --- a/app/src/workspaces/update_manager.rs +++ b/app/src/workspaces/update_manager.rs @@ -22,9 +22,9 @@ use futures::channel::oneshot::{self, Receiver}; use futures::stream::AbortHandle; use std::sync::mpsc::SyncSender; use std::sync::Arc; -use warpui::r#async::Timer; -use warpui::{duration_with_jitter, RequestState}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::r#async::Timer; +use galaxyui::{duration_with_jitter, RequestState}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; pub enum TeamUpdateManagerEvent { LeaveSuccess, diff --git a/app/src/workspaces/update_manager_tests.rs b/app/src/workspaces/update_manager_tests.rs index 17e641be..c85c699e 100644 --- a/app/src/workspaces/update_manager_tests.rs +++ b/app/src/workspaces/update_manager_tests.rs @@ -1,6 +1,6 @@ use chrono::Utc; use itertools::Itertools; -use warpui::{AddSingletonModel, App}; +use galaxyui::{AddSingletonModel, App}; use crate::{ auth::AuthManager, diff --git a/app/src/workspaces/user_profiles.rs b/app/src/workspaces/user_profiles.rs index 93857fc8..e7c86b19 100644 --- a/app/src/workspaces/user_profiles.rs +++ b/app/src/workspaces/user_profiles.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use session_sharing_protocol::common::ProfileData; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; use crate::auth::UserUid; diff --git a/app/src/workspaces/user_workspaces.rs b/app/src/workspaces/user_workspaces.rs index a81cb73d..fe187ce6 100644 --- a/app/src/workspaces/user_workspaces.rs +++ b/app/src/workspaces/user_workspaces.rs @@ -29,12 +29,12 @@ use crate::{ use anyhow::Result; use regex::Regex; use std::sync::Arc; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, settings::{ChangeEventReason, Setting}, }; -use warp_graphql::workspace::FeatureModelChoice; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity, Tracked}; +use galaxy_graphql::workspace::FeatureModelChoice; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity, Tracked}; #[cfg(test)] use crate::server::server_api::{team::MockTeamClient, workspace::MockWorkspaceClient}; @@ -122,7 +122,7 @@ pub struct WorkspacesMetadataResponse { // independent queries. pub struct WorkspacesMetadataWithPricing { pub metadata: WorkspacesMetadataResponse, - pub pricing_info: Option, + pub pricing_info: Option, } pub struct CreateTeamResponse { @@ -519,9 +519,9 @@ impl UserWorkspaces { match self.aws_bedrock_host_enablement_setting() { HostEnablementSetting::Enforce => true, - HostEnablementSetting::RespectUserSetting => *AISettings::as_ref(app) - .bedrock_enabled - .value(), + HostEnablementSetting::RespectUserSetting => { + *AISettings::as_ref(app).bedrock_enabled.value() + } } } diff --git a/app/src/workspaces/user_workspaces_tests.rs b/app/src/workspaces/user_workspaces_tests.rs index dc64f8c7..d37054d3 100644 --- a/app/src/workspaces/user_workspaces_tests.rs +++ b/app/src/workspaces/user_workspaces_tests.rs @@ -25,8 +25,8 @@ use crate::workspaces::workspace::{ use mockall::Sequence; use settings::{PrivatePreferences, PublicPreferences}; use std::time::Duration; -use warpui::{AddSingletonModel, App}; -use warpui_extras::user_preferences; +use galaxyui::{AddSingletonModel, App}; +use galaxyui_extras::user_preferences; use super::*; @@ -170,7 +170,7 @@ fn test_loading_all_spaces_after_switching_from_offline() { }); // Spend time waiting for the initial load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // Lets go offline NetworkStatus::handle(&app).update(&mut app, |network_status, ctx| { @@ -183,7 +183,7 @@ fn test_loading_all_spaces_after_switching_from_offline() { }); // Spend time waiting for the load to finish etc. - warpui::r#async::Timer::after(Duration::from_secs(1)).await; + galaxyui::r#async::Timer::after(Duration::from_secs(1)).await; // We also ensure that UserWorkspaces stores a team UserWorkspaces::handle(&app).read(&app, |teams, _| { @@ -302,9 +302,7 @@ fn test_aws_bedrock_credentials_respect_user_setting() { ); AISettings::handle(&app).update(&mut app, |settings, ctx| { - let _ = settings - .bedrock_enabled - .set_value(false, ctx); + let _ = settings.bedrock_enabled.set_value(false, ctx); }); app.read(|ctx| { @@ -357,9 +355,7 @@ fn test_aws_bedrock_credentials_enforced_by_admin() { ); AISettings::handle(&app).update(&mut app, |settings, ctx| { - let _ = settings - .bedrock_enabled - .set_value(false, ctx); + let _ = settings.bedrock_enabled.set_value(false, ctx); }); app.read(|ctx| { diff --git a/app/src/workspaces/workspace.rs b/app/src/workspaces/workspace.rs index 9e198ea1..e427fced 100644 --- a/app/src/workspaces/workspace.rs +++ b/app/src/workspaces/workspace.rs @@ -7,7 +7,7 @@ use chrono::Utc; use regex::Regex; use serde::{Deserialize, Serialize}; use std::{cmp::Ordering, path::PathBuf}; -use warp_graphql::billing::{AddonCreditAutoReloadStatus, ServiceAgreement, ServiceAgreementType}; +use galaxy_graphql::billing::{AddonCreditAutoReloadStatus, ServiceAgreement, ServiceAgreementType}; use super::team::{MembershipRole, Team}; @@ -156,7 +156,7 @@ impl Workspace { /// Returns None if auto-reload is not configured or if the denomination can't be found in pricing options. pub fn get_auto_reload_price_cents( &self, - addon_credits_options: &[warp_graphql::billing::AddonCreditsOption], + addon_credits_options: &[galaxy_graphql::billing::AddonCreditsOption], ) -> Option { let selected_credits = self .settings diff --git a/crates/ai/Cargo.toml b/crates/ai/Cargo.toml index e461ca44..2074c6a4 100644 --- a/crates/ai/Cargo.toml +++ b/crates/ai/Cargo.toml @@ -38,9 +38,9 @@ sentry = { workspace = true, optional = true } shellexpand.workspace = true strum.workspace = true strum_macros.workspace = true -warpui.workspace = true -warpui_extras = { workspace = true, features = ["default"] } -warp_graphql.workspace = true +galaxyui.workspace = true +galaxyui_extras = { workspace = true, features = ["default"] } +galaxy_graphql.workspace = true warp_multi_agent_api.workspace = true dirs.workspace = true lazy_static.workspace = true @@ -53,9 +53,9 @@ tokio = { workspace = true, features = ["rt"] } futures.workspace = true generic-array = "0.14.7" derivative.workspace = true -warp_core.workspace = true -warp_terminal.workspace = true -warp_util.workspace = true +galaxy_core.workspace = true +galaxy_terminal.workspace = true +galaxy_util.workspace = true chrono.workspace = true persistence.workspace = true priority-queue = "2.3.1" @@ -79,7 +79,7 @@ notify-debouncer-full.workspace = true filetime = "0.2.25" tempfile.workspace = true virtual-fs.workspace = true -warp_core = { workspace = true, features = ["test-util"] } +galaxy_core = { workspace = true, features = ["test-util"] } [build-dependencies] anyhow.workspace = true diff --git a/crates/ai/src/agent/action/convert.rs b/crates/ai/src/agent/action/convert.rs index 671c7b68..b1c32763 100644 --- a/crates/ai/src/agent/action/convert.rs +++ b/crates/ai/src/agent/action/convert.rs @@ -2,7 +2,7 @@ use std::{path::PathBuf, time::Duration}; use itertools::Itertools as _; use uuid::Uuid; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use warp_multi_agent_api as api; use crate::{ diff --git a/crates/ai/src/agent/action/mod.rs b/crates/ai/src/agent/action/mod.rs index 618adb09..5a56be11 100644 --- a/crates/ai/src/agent/action/mod.rs +++ b/crates/ai/src/agent/action/mod.rs @@ -6,7 +6,7 @@ use itertools::Itertools as _; use serde::{Deserialize, Serialize}; use strum_macros::EnumDiscriminants; use uuid::Uuid; -use warp_terminal::model::BlockId; +use galaxy_terminal::model::BlockId; use crate::{ agent::{ @@ -704,7 +704,7 @@ impl AIAgentPtyWriteMode { bytes: impl Into>, is_bracketed_paste_enabled: bool, ) -> Vec { - use warp_terminal::model::escape_sequences; + use galaxy_terminal::model::escape_sequences; let bytes = bytes.into(); match self { diff --git a/crates/ai/src/agent/action_result/mod.rs b/crates/ai/src/agent/action_result/mod.rs index a5610455..c185e201 100644 --- a/crates/ai/src/agent/action_result/mod.rs +++ b/crates/ai/src/agent/action_result/mod.rs @@ -4,9 +4,9 @@ use std::{fmt::Display, ops::Range, time::SystemTime}; use itertools::Itertools as _; use serde::{Deserialize, Serialize}; -use warp_core::command::ExitCode; +use galaxy_core::command::ExitCode; use warp_multi_agent_api::apply_file_diffs_result::success::UpdatedFileContent; -use warp_terminal::model::BlockId; +use galaxy_terminal::model::BlockId; use crate::{ agent::FileLocations, diff --git a/crates/ai/src/agent/file_locations.rs b/crates/ai/src/agent/file_locations.rs index e7589f7f..6cece7aa 100644 --- a/crates/ai/src/agent/file_locations.rs +++ b/crates/ai/src/agent/file_locations.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use std::ops::Range; use itertools::Itertools as _; -use warp_terminal::shell::ShellLaunchData; +use galaxy_terminal::shell::ShellLaunchData; use crate::agent::action_result::FileContext; use crate::{index::locations::CodeContextLocation, paths::shell_native_absolute_path}; diff --git a/crates/ai/src/api_keys.rs b/crates/ai/src/api_keys.rs index 5cc96c22..20feaaeb 100644 --- a/crates/ai/src/api_keys.rs +++ b/crates/ai/src/api_keys.rs @@ -1,8 +1,8 @@ pub use crate::aws_credentials::{AwsCredentials, AwsCredentialsState}; use serde::{Deserialize, Serialize}; use warp_multi_agent_api as api; -use warpui::{Entity, ModelContext, SingletonEntity}; -use warpui_extras::secure_storage::{self, AppContextExt}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; +use galaxyui_extras::secure_storage::{self, AppContextExt}; const SECURE_STORAGE_KEY: &str = "AiApiKeys"; diff --git a/crates/ai/src/aws_credentials.rs b/crates/ai/src/aws_credentials.rs index f0b514dc..96114837 100644 --- a/crates/ai/src/aws_credentials.rs +++ b/crates/ai/src/aws_credentials.rs @@ -1,7 +1,7 @@ use std::time::SystemTime; use chrono::{DateTime, Local}; -use warp_core::ui::Icon; +use galaxy_core::ui::Icon; use warp_multi_agent_api as api; /// Temporary AWS credentials loaded from the AWS SDK. diff --git a/crates/ai/src/index/full_source_code_embedding/codebase_index.rs b/crates/ai/src/index/full_source_code_embedding/codebase_index.rs index c75429a7..9feb6f6f 100644 --- a/crates/ai/src/index/full_source_code_embedding/codebase_index.rs +++ b/crates/ai/src/index/full_source_code_embedding/codebase_index.rs @@ -7,8 +7,8 @@ use ignore::gitignore::Gitignore; use repo_metadata::entry::IgnoredPathStrategy; use repo_metadata::Repository; use std::{path::Path, sync::Arc}; -use warp_core::safe_error; -use warpui::{Entity, ModelContext, ModelHandle}; +use galaxy_core::safe_error; +use galaxyui::{Entity, ModelContext, ModelHandle}; use super::{ fragment_metadata::{FragmentMetadata, LeafToFragmentMetadata, LeafToFragmentMetadataUpdates}, @@ -46,11 +46,11 @@ cfg_if::cfg_if! { full_source_code_embedding::sync_client::CodebaseIndexSyncOperation, full_source_code_embedding::FragmentLocation }; - use warp_core::send_telemetry_from_ctx; - use warp_core::interval_timer::IntervalTimer; - use warpui::r#async::Timer; - use warpui::SingletonEntity; - use warp_core::sync_queue::SyncQueue; + use galaxy_core::send_telemetry_from_ctx; + use galaxy_core::interval_timer::IntervalTimer; + use galaxyui::r#async::Timer; + use galaxyui::SingletonEntity; + use galaxy_core::sync_queue::SyncQueue; use sha2::Digest; } } @@ -584,7 +584,7 @@ impl CodebaseIndex { let mut flushed_fragment_result = FlushFragmentResult::default(); if !changed_files.deletions().is_empty() { - if warp_core::channel::ChannelState::enable_debug_features() { + if galaxy_core::channel::ChannelState::enable_debug_features() { log::info!( "Trying to remove changed files: {:?}", changed_files.deletions() @@ -650,7 +650,7 @@ impl CodebaseIndex { } if !changed_files.upsertions.is_empty() { - if warp_core::channel::ChannelState::enable_debug_features() { + if galaxy_core::channel::ChannelState::enable_debug_features() { log::debug!( "Trying to upsert changed files: {:?}", &changed_files.upsertions diff --git a/crates/ai/src/index/full_source_code_embedding/codebase_index_tests.rs b/crates/ai/src/index/full_source_code_embedding/codebase_index_tests.rs index 93abd439..f3fe0086 100644 --- a/crates/ai/src/index/full_source_code_embedding/codebase_index_tests.rs +++ b/crates/ai/src/index/full_source_code_embedding/codebase_index_tests.rs @@ -22,8 +22,8 @@ use std::collections::HashMap; use std::ops::Range; use std::path::PathBuf; use std::sync::Arc; -use warp_util::standardized_path::StandardizedPath; -use warpui::{App, SingletonEntity}; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::{App, SingletonEntity}; use super::{ CodebaseIndex, CodebaseIndexTimeStampMetadata, TreeSourceSyncState, diff --git a/crates/ai/src/index/full_source_code_embedding/manager.rs b/crates/ai/src/index/full_source_code_embedding/manager.rs index 85221aee..c2402493 100644 --- a/crates/ai/src/index/full_source_code_embedding/manager.rs +++ b/crates/ai/src/index/full_source_code_embedding/manager.rs @@ -16,18 +16,18 @@ cfg_if::cfg_if! { use crate::index::path_passes_filters; use ignore::gitignore::Gitignore; use notify_debouncer_full::notify::{RecursiveMode, WatchFilter}; - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; use watcher::{BulkFilesystemWatcher, BulkFilesystemWatcherEvent}; - use warpui::r#async::Timer; - use warp_core::{send_telemetry_from_ctx, report_if_error}; + use galaxyui::r#async::Timer; + use galaxy_core::{send_telemetry_from_ctx, report_if_error}; use crate::telemetry::AITelemetryEvent; use instant::Instant; - use warp_core::channel::ChannelState; - use warp_core::safe_warn; + use galaxy_core::channel::ChannelState; + use galaxy_core::safe_warn; } } -use warp_core::safe_anyhow; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::safe_anyhow; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; use super::{ codebase_index::{CodebaseIndexEvent, RetrievalID, SyncProgress}, @@ -618,7 +618,7 @@ impl CodebaseIndexManager { }; let standardized_path = - match warp_util::standardized_path::StandardizedPath::from_local_canonicalized( + match galaxy_util::standardized_path::StandardizedPath::from_local_canonicalized( repo_path, ) { Ok(path) => path, diff --git a/crates/ai/src/index/full_source_code_embedding/merkle_tree/hash.rs b/crates/ai/src/index/full_source_code_embedding/merkle_tree/hash.rs index 71e8dd62..1a5d80de 100644 --- a/crates/ai/src/index/full_source_code_embedding/merkle_tree/hash.rs +++ b/crates/ai/src/index/full_source_code_embedding/merkle_tree/hash.rs @@ -35,17 +35,17 @@ impl FromStr for NodeHash { } } -impl From for warp_graphql::full_source_code_embedding::NodeHash { +impl From for galaxy_graphql::full_source_code_embedding::NodeHash { fn from(value: NodeHash) -> Self { - warp_graphql::full_source_code_embedding::NodeHash(value.0.to_string()) + galaxy_graphql::full_source_code_embedding::NodeHash(value.0.to_string()) } } -impl TryFrom for NodeHash { +impl TryFrom for NodeHash { type Error = Error; fn try_from( - value: warp_graphql::full_source_code_embedding::NodeHash, + value: galaxy_graphql::full_source_code_embedding::NodeHash, ) -> Result { Ok(Self(MerkleHash::from_str(&value.0)?)) } @@ -99,17 +99,17 @@ impl FromStr for ContentHash { } } -impl From for warp_graphql::full_source_code_embedding::ContentHash { +impl From for galaxy_graphql::full_source_code_embedding::ContentHash { fn from(value: ContentHash) -> Self { - warp_graphql::full_source_code_embedding::ContentHash(value.0.to_string()) + galaxy_graphql::full_source_code_embedding::ContentHash(value.0.to_string()) } } -impl TryFrom for ContentHash { +impl TryFrom for ContentHash { type Error = Error; fn try_from( - value: warp_graphql::full_source_code_embedding::ContentHash, + value: galaxy_graphql::full_source_code_embedding::ContentHash, ) -> Result { Ok(Self(MerkleHash::from_str(&value.0)?)) } diff --git a/crates/ai/src/index/full_source_code_embedding/merkle_tree/node.rs b/crates/ai/src/index/full_source_code_embedding/merkle_tree/node.rs index a8813241..55643e58 100644 --- a/crates/ai/src/index/full_source_code_embedding/merkle_tree/node.rs +++ b/crates/ai/src/index/full_source_code_embedding/merkle_tree/node.rs @@ -9,7 +9,7 @@ use rayon::iter::{IntoParallelIterator, ParallelIterator}; use repo_metadata::entry::is_file_parsable; use serde::{Deserialize, Serialize}; use sha2::{Digest, Sha256}; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use std::{ collections::{HashMap, HashSet}, diff --git a/crates/ai/src/index/full_source_code_embedding/merkle_tree/node_test.rs b/crates/ai/src/index/full_source_code_embedding/merkle_tree/node_test.rs index 4e1a2e6f..73ac8665 100644 --- a/crates/ai/src/index/full_source_code_embedding/merkle_tree/node_test.rs +++ b/crates/ai/src/index/full_source_code_embedding/merkle_tree/node_test.rs @@ -19,7 +19,7 @@ fn test_node_hash_for_directory_is_sorted() { sandbox.with_files(vec![Stub::FileWithContent("bar", "bar")]); let mut directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -66,7 +66,7 @@ fn test_merkle_node_upsert_file() { )]); let mut directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -275,7 +275,7 @@ fn test_merkle_node_upsert_file() { // Create a new MerkleTree with the expected structure manually let mut expected_directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -291,7 +291,7 @@ fn test_merkle_node_upsert_file() { // Create a subdirectory entry for 'a' let mut subdirectory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &dirs.tests().join("a"), ) .unwrap(), @@ -336,7 +336,7 @@ fn test_merkle_node_remove_file() { ]); let mut directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -420,7 +420,7 @@ fn test_merkle_node_remove_file() { // Create a new MerkleNode with only the remaining files let mut directory_entry_after_remove = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -461,7 +461,7 @@ fn test_merkle_node_multiple_operations() { ]); let mut directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -570,7 +570,7 @@ fn test_merkle_node_multiple_operations() { ); let mut directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -772,7 +772,7 @@ fn test_merkle_node_multiple_operations() { // Create a new MerkleTree with the expected final structure manually let mut expected_directory_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()) .unwrap(), children: vec![], ignored: false, @@ -788,7 +788,7 @@ fn test_merkle_node_multiple_operations() { // Create nested subdirectory structure let mut subdir1_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &dirs.tests().join("subdir1"), ) .unwrap(), @@ -798,7 +798,7 @@ fn test_merkle_node_multiple_operations() { }; let mut subdir2_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &dirs.tests().join("subdir1/subdir2"), ) .unwrap(), diff --git a/crates/ai/src/index/full_source_code_embedding/merkle_tree/test_util.rs b/crates/ai/src/index/full_source_code_embedding/merkle_tree/test_util.rs index 1bf9e659..0fcb27dc 100644 --- a/crates/ai/src/index/full_source_code_embedding/merkle_tree/test_util.rs +++ b/crates/ai/src/index/full_source_code_embedding/merkle_tree/test_util.rs @@ -31,7 +31,7 @@ pub async fn construct_test_merkle_tree( ]); let mut root_dir_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()).unwrap(), + path: galaxy_util::standardized_path::StandardizedPath::try_from_local(dirs.tests()).unwrap(), children: vec![], ignored: false, loaded: true, @@ -41,7 +41,7 @@ pub async fn construct_test_merkle_tree( .expect("Should be able to insert root file"); let mut top_dir_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &dirs.tests().join("top_dir"), ) .unwrap(), @@ -54,7 +54,7 @@ pub async fn construct_test_merkle_tree( .expect("Should be able to insert file1"); let mut subdir_a_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &dirs.tests().join("top_dir/subdir_a"), ) .unwrap(), @@ -70,7 +70,7 @@ pub async fn construct_test_merkle_tree( .expect("Should be able to insert file3"); let mut subdir_b_entry = DirectoryEntry { - path: warp_util::standardized_path::StandardizedPath::try_from_local( + path: galaxy_util::standardized_path::StandardizedPath::try_from_local( &dirs.tests().join("top_dir/subdir_b"), ) .unwrap(), diff --git a/crates/ai/src/index/full_source_code_embedding/mod.rs b/crates/ai/src/index/full_source_code_embedding/mod.rs index 056c9de0..cbe439ce 100644 --- a/crates/ai/src/index/full_source_code_embedding/mod.rs +++ b/crates/ai/src/index/full_source_code_embedding/mod.rs @@ -18,7 +18,7 @@ pub use merkle_tree::{ContentHash, NodeHash}; use fragment_metadata::FragmentMetadata; use string_offset::ByteOffset; use thiserror::Error; -use warp_graphql::queries::rerank_fragments::FragmentLocationInput; +use galaxy_graphql::queries::rerank_fragments::FragmentLocationInput; #[derive(Error, Debug)] pub enum Error { @@ -94,48 +94,48 @@ pub struct RepoMetadata { pub path: Option, } -impl From for warp_graphql::full_source_code_embedding::RepoMetadata { +impl From for galaxy_graphql::full_source_code_embedding::RepoMetadata { fn from(val: RepoMetadata) -> Self { Self { path: val.path } } } -impl From for warp_graphql::full_source_code_embedding::EmbeddingConfig { +impl From for galaxy_graphql::full_source_code_embedding::EmbeddingConfig { fn from(val: EmbeddingConfig) -> Self { match val { EmbeddingConfig::OpenAiTextSmall3_256 => { - warp_graphql::full_source_code_embedding::EmbeddingConfig::OpenaiTextSmall3256 + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::OpenaiTextSmall3256 } EmbeddingConfig::VoyageCode3_512 => { - warp_graphql::full_source_code_embedding::EmbeddingConfig::VoyageCode3512 + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::VoyageCode3512 } EmbeddingConfig::Voyage3_5_512 => { - warp_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35512 + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35512 } EmbeddingConfig::Voyage3_5_Lite_512 => { - warp_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35Lite512 + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35Lite512 } } } } -impl TryFrom for EmbeddingConfig { +impl TryFrom for EmbeddingConfig { type Error = Error; fn try_from( - value: warp_graphql::full_source_code_embedding::EmbeddingConfig, + value: galaxy_graphql::full_source_code_embedding::EmbeddingConfig, ) -> Result { match value { - warp_graphql::full_source_code_embedding::EmbeddingConfig::OpenaiTextSmall3256 => { + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::OpenaiTextSmall3256 => { Ok(Self::OpenAiTextSmall3_256) } - warp_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35Lite512 => { + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35Lite512 => { Ok(Self::Voyage3_5_Lite_512) } - warp_graphql::full_source_code_embedding::EmbeddingConfig::VoyageCode3512 => { + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::VoyageCode3512 => { Ok(Self::VoyageCode3_512) } - warp_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35512 => { + galaxy_graphql::full_source_code_embedding::EmbeddingConfig::Voyage35512 => { Ok(Self::Voyage3_5_512) } } @@ -161,7 +161,7 @@ pub struct Fragment { location: FragmentLocation, } -impl From for warp_graphql::full_source_code_embedding::Fragment { +impl From for galaxy_graphql::full_source_code_embedding::Fragment { fn from(val: Fragment) -> Self { Self { content: val.content, @@ -170,7 +170,7 @@ impl From for warp_graphql::full_source_code_embedding::Fragment { } } -impl From for warp_graphql::queries::rerank_fragments::RerankFragmentInput { +impl From for galaxy_graphql::queries::rerank_fragments::RerankFragmentInput { fn from(val: Fragment) -> Self { Self { content: val.content, @@ -184,11 +184,11 @@ impl From for warp_graphql::queries::rerank_fragments::RerankFragmentI } } -impl TryFrom for Fragment { +impl TryFrom for Fragment { type Error = Error; fn try_from( - val: warp_graphql::queries::rerank_fragments::RerankFragment, + val: galaxy_graphql::queries::rerank_fragments::RerankFragment, ) -> Result { Ok(Self { content: val.content, diff --git a/crates/ai/src/index/full_source_code_embedding/snapshot.rs b/crates/ai/src/index/full_source_code_embedding/snapshot.rs index a8f4a25f..04b8773c 100644 --- a/crates/ai/src/index/full_source_code_embedding/snapshot.rs +++ b/crates/ai/src/index/full_source_code_embedding/snapshot.rs @@ -8,15 +8,15 @@ use std::{ time::Duration, }; #[cfg(feature = "local_fs")] -use warpui::ModelHandle; +use galaxyui::ModelHandle; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { use super::Error as CodebaseIndexError; use std::sync::Arc; - use warpui::ModelContext; + use galaxyui::ModelContext; use anyhow::Context; - use warp_core::safe_info; + use galaxy_core::safe_info; use super::{store_client::StoreClient, CodebaseIndex, EmbeddingConfig}; } } @@ -176,7 +176,7 @@ pub(super) fn snapshot_dir() -> Option { #[cfg(feature = "local_fs")] { let base_dir = - warp_core::paths::secure_state_dir().unwrap_or_else(warp_core::paths::state_dir); + galaxy_core::paths::secure_state_dir().unwrap_or_else(galaxy_core::paths::state_dir); let snapshot_dir_path = base_dir.join(REPO_SNAPSHOT_SUBDIR_NAME); if !snapshot_dir_path.is_dir() { @@ -202,12 +202,12 @@ mod tests; #[cfg(feature = "local_fs")] pub(super) fn migrate_snapshots_to_secure_dir_if_needed() -> anyhow::Result<()> { // Only perform migration if a secure state directory is available. - let Some(secure_base) = warp_core::paths::secure_state_dir() else { + let Some(secure_base) = galaxy_core::paths::secure_state_dir() else { return Ok(()); }; let new_dir = secure_base.join(REPO_SNAPSHOT_SUBDIR_NAME); - let old_dir = warp_core::paths::state_dir().join(REPO_SNAPSHOT_SUBDIR_NAME); + let old_dir = galaxy_core::paths::state_dir().join(REPO_SNAPSHOT_SUBDIR_NAME); if new_dir == old_dir { return Ok(()); diff --git a/crates/ai/src/index/full_source_code_embedding/sync_client.rs b/crates/ai/src/index/full_source_code_embedding/sync_client.rs index 0bee3ea0..047ae844 100644 --- a/crates/ai/src/index/full_source_code_embedding/sync_client.rs +++ b/crates/ai/src/index/full_source_code_embedding/sync_client.rs @@ -8,7 +8,7 @@ use std::{ mem, sync::Arc, }; -use warp_core::sync_queue::{IsTransientError, SyncQueue, SyncQueueTaskTrait}; +use galaxy_core::sync_queue::{IsTransientError, SyncQueue, SyncQueueTaskTrait}; use super::{CodebaseContextConfig, NodeHash}; diff --git a/crates/ai/src/paths.rs b/crates/ai/src/paths.rs index 6546a66e..a30fbc07 100644 --- a/crates/ai/src/paths.rs +++ b/crates/ai/src/paths.rs @@ -1,9 +1,9 @@ use typed_path::{TypedPath, TypedPathBuf, WindowsPath}; -use warp_terminal::shell::ShellLaunchData; -use warp_util::path::{ +use galaxy_terminal::shell::ShellLaunchData; +use galaxy_util::path::{ convert_msys2_to_windows_native_path, convert_wsl_to_windows_host_path, msys2_exe_to_root, }; -use warpui::platform::OperatingSystem; +use galaxyui::platform::OperatingSystem; fn use_unix_paths(shell: Option<&ShellLaunchData>) -> bool { OperatingSystem::get().is_linux() diff --git a/crates/ai/src/paths_tests.rs b/crates/ai/src/paths_tests.rs index e89c92aa..25f2e3d0 100644 --- a/crates/ai/src/paths_tests.rs +++ b/crates/ai/src/paths_tests.rs @@ -2,7 +2,7 @@ use std::path::PathBuf; #[cfg(windows)] -use warp_terminal::shell::{ShellLaunchData, ShellType}; +use galaxy_terminal::shell::{ShellLaunchData, ShellType}; use super::*; diff --git a/crates/ai/src/project_context/model.rs b/crates/ai/src/project_context/model.rs index 396d23b3..c2109894 100644 --- a/crates/ai/src/project_context/model.rs +++ b/crates/ai/src/project_context/model.rs @@ -3,7 +3,7 @@ use anyhow::Result; use repo_metadata::repositories::RepoDetectionSource; use std::collections::HashMap; use std::path::{Path, PathBuf}; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; cfg_if::cfg_if! { if #[cfg(feature = "local_fs")] { diff --git a/crates/ai/src/skills/skill_provider.rs b/crates/ai/src/skills/skill_provider.rs index 7c084148..fa797a14 100644 --- a/crates/ai/src/skills/skill_provider.rs +++ b/crates/ai/src/skills/skill_provider.rs @@ -10,9 +10,9 @@ use std::sync::LazyLock; use serde::{Deserialize, Serialize}; use strum_macros::{Display, EnumString, VariantNames}; -use warp_core::ui::color::CLAUDE_ORANGE; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::Fill; +use galaxy_core::ui::color::CLAUDE_ORANGE; +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::Fill; /// Represents a skill provider/origin (Agents, Claude, Codex, or Warp). #[derive( @@ -159,7 +159,7 @@ pub fn provider_rank(provider: SkillProvider) -> usize { pub fn home_skills_path(provider: SkillProvider) -> Option { if provider == SkillProvider::Warp { - return warp_core::paths::warp_home_skills_dir(); + return galaxy_core::paths::warp_home_skills_dir(); } let definition = SKILL_PROVIDER_DEFINITIONS .iter() @@ -220,13 +220,13 @@ mod tests { fn warp_home_skills_path_uses_warp_home_path() { assert_eq!( home_skills_path(SkillProvider::Warp), - warp_core::paths::warp_home_skills_dir() + galaxy_core::paths::warp_home_skills_dir() ); } #[test] fn warp_home_skill_path_is_home_warp_skill() { - let Some(warp_home_skills_dir) = warp_core::paths::warp_home_skills_dir() else { + let Some(warp_home_skills_dir) = galaxy_core::paths::warp_home_skills_dir() else { eprintln!("Skipping test: home directory not available"); return; }; diff --git a/crates/ai/src/telemetry.rs b/crates/ai/src/telemetry.rs index a97a4bea..f088123c 100644 --- a/crates/ai/src/telemetry.rs +++ b/crates/ai/src/telemetry.rs @@ -3,7 +3,7 @@ use std::time::Duration; use serde::Serialize; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, register_telemetry_event, telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}, @@ -127,7 +127,7 @@ impl TelemetryEvent for AITelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } diff --git a/crates/app-installation-detection/Cargo.toml b/crates/app-installation-detection/Cargo.toml index 6c1c1a2e..9617c808 100644 --- a/crates/app-installation-detection/Cargo.toml +++ b/crates/app-installation-detection/Cargo.toml @@ -16,7 +16,7 @@ tower.workspace = true tower-http = { workspace = true, features = ["trace", "cors"] } tracing.workspace = true tracing-subscriber = { version = "0.3", features = ["env-filter"] } -warp_cli.workspace = true +galaxy_cli.workspace = true [target.'cfg(target_os = "windows")'.dependencies] win32job = "2.0.1" diff --git a/crates/asset_cache/Cargo.toml b/crates/asset_cache/Cargo.toml index 4c2d4f54..19279021 100644 --- a/crates/asset_cache/Cargo.toml +++ b/crates/asset_cache/Cargo.toml @@ -16,4 +16,4 @@ futures.workspace = true log.workspace = true reqwest.workspace = true url.workspace = true -warpui_core.workspace = true +galaxyui_core.workspace = true diff --git a/crates/asset_cache/src/lib.rs b/crates/asset_cache/src/lib.rs index 2c18a240..66ee5ee6 100644 --- a/crates/asset_cache/src/lib.rs +++ b/crates/asset_cache/src/lib.rs @@ -7,7 +7,7 @@ use async_fs::{OpenOptions, create_dir_all}; use bytes::Bytes; use futures::AsyncWriteExt; use reqwest::Url; -use warpui_core::assets::asset_cache::{ +use galaxyui_core::assets::asset_cache::{ Asset, AssetCache, AssetSource, AssetState, AsyncAssetId, AsyncAssetType, }; diff --git a/crates/asset_macro/Cargo.toml b/crates/asset_macro/Cargo.toml index e4844e5c..97bb853c 100644 --- a/crates/asset_macro/Cargo.toml +++ b/crates/asset_macro/Cargo.toml @@ -15,4 +15,4 @@ quote = "1" syn = { version = "2", default-features = false, features = ["derive", "parsing", "proc-macro", "printing"] } proc-macro2 = "1" sha2.workspace = true -warp_util.workspace = true +galaxy_util.workspace = true diff --git a/crates/asset_macro/src/lib.rs b/crates/asset_macro/src/lib.rs index 87a9f1df..57fbe134 100644 --- a/crates/asset_macro/src/lib.rs +++ b/crates/asset_macro/src/lib.rs @@ -31,7 +31,7 @@ use std::{ }; use syn::{parse::Parse, Token}; use syn::{parse_macro_input, LitStr}; -use warp_util::assets::{ASSETS_DIR, ASYNC_ASSETS_DIR, BUNDLED_ASSETS_DIR, REMOTE_ASSETS_DIR}; +use galaxy_util::assets::{ASSETS_DIR, ASYNC_ASSETS_DIR, BUNDLED_ASSETS_DIR, REMOTE_ASSETS_DIR}; struct MacroArgs { /// The name of the asset. E.g. `jpg/jellyfish_bg.jpg` @@ -73,7 +73,7 @@ fn construct_bundled_asset(asset_name: &str, asset_dir: &str) -> Result Result"] version = "0.1.0" edition = "2024" @@ -46,9 +46,9 @@ sum_tree.workspace = true thiserror.workspace = true pathfinder_color = "0.5.0" vec1.workspace = true -warpui.workspace = true -warp_core.workspace = true -warp_util.workspace = true +galaxyui.workspace = true +galaxy_core.workspace = true +galaxy_util.workspace = true rayon.workspace = true line-ending.workspace = true vim.workspace = true @@ -59,8 +59,8 @@ rust-embed.workspace = true enclose = "1.1.8" env_logger.workspace = true sum_tree = { workspace = true, features = ["test-util"] } -warp_core = { workspace = true, features = ["test-util"] } -warpui = { workspace = true, features = ["test-util"] } +galaxy_core = { workspace = true, features = ["test-util"] } +galaxyui = { workspace = true, features = ["test-util"] } criterion = { version = "0.5.1", features = ["html_reports"] } [[bench]] diff --git a/crates/editor/benches/buffer_bench.rs b/crates/editor/benches/buffer_bench.rs index ae9afb0e..af3c8960 100644 --- a/crates/editor/benches/buffer_bench.rs +++ b/crates/editor/benches/buffer_bench.rs @@ -2,10 +2,10 @@ use std::fs; use criterion::{Criterion, criterion_group, criterion_main}; use rand::{SeedableRng, rngs::StdRng}; -use warp_editor::content::{ +use galaxy_editor::content::{ buffer::Buffer, selection_model::BufferSelectionModel, text::IndentBehavior, }; -use warpui::{App, ModelHandle}; +use galaxyui::{App, ModelHandle}; const EDIT_SAMPLE_SIZE: usize = 10; const MAX_EDIT_REPLACEMENT_LENGTH: usize = 20; diff --git a/crates/editor/src/content/anchor_test.rs b/crates/editor/src/content/anchor_test.rs index d58bb606..69a249ae 100644 --- a/crates/editor/src/content/anchor_test.rs +++ b/crates/editor/src/content/anchor_test.rs @@ -1,7 +1,7 @@ use std::cmp::Ordering; use sum_tree::SumTree; -use warpui::App; +use galaxyui::App; use super::{AnchorSide, Anchors}; diff --git a/crates/editor/src/content/buffer.rs b/crates/editor/src/content/buffer.rs index 73e92bf8..7cd61094 100644 --- a/crates/editor/src/content/buffer.rs +++ b/crates/editor/src/content/buffer.rs @@ -17,7 +17,7 @@ use std::{ sync::Arc, }; use vec1::{Vec1, vec1}; -use warp_util::content_version::ContentVersion; +use galaxy_util::content_version::ContentVersion; use super::{ anchor::{Anchor, AnchorSide, Anchors}, @@ -34,7 +34,7 @@ use super::{ undo::{NonAtomicType, UndoActionType, UndoArg, UndoStack}, validation::validate_content, }; -use warp_core::{platform::SessionPlatform, safe_error}; +use galaxy_core::{platform::SessionPlatform, safe_error}; use crate::{ content::{ @@ -53,9 +53,9 @@ use crate::{ use enum_iterator::all; use string_offset::{ByteOffset, CharOffset}; use sum_tree::{SeekBias, SumTree}; -use warpui::{AppContext, Entity, ModelContext}; -use warpui::{EntityId, ModelHandle, elements::ListIndentLevel}; -use warpui::{ +use galaxyui::{AppContext, Entity, ModelContext}; +use galaxyui::{EntityId, ModelHandle, elements::ListIndentLevel}; +use galaxyui::{ fonts::Weight, text::{TextBuffer, char_slice, point::Point}, }; @@ -836,7 +836,7 @@ impl Buffer { selection_model: ModelHandle, ctx: &mut ModelContext, ) -> Self { - let parse_fn = if warp_core::features::FeatureFlag::MarkdownTables.is_enabled() { + let parse_fn = if galaxy_core::features::FeatureFlag::MarkdownTables.is_enabled() { parse_markdown_with_gfm_tables } else { parse_markdown diff --git a/crates/editor/src/content/buffer_test.rs b/crates/editor/src/content/buffer_test.rs index e895febf..0d2830be 100644 --- a/crates/editor/src/content/buffer_test.rs +++ b/crates/editor/src/content/buffer_test.rs @@ -12,7 +12,7 @@ use rand::SeedableRng; use rand::rngs::StdRng; use serde_yaml::{Mapping, Value}; use vec1::{Vec1, vec1}; -use warpui::{App, AppContext, ModelContext, ModelHandle, ReadModel}; +use galaxyui::{App, AppContext, ModelContext, ModelHandle, ReadModel}; use crate::content::buffer::{ AutoScrollBehavior, BufferEditAction, BufferSelectAction, EditOrigin, EmbeddedItemConversion, @@ -39,8 +39,8 @@ use crate::render::model::{ }; use string_offset::ByteOffset; use string_offset::CharOffset; -use warpui::elements::ListIndentLevel; -use warpui::text::point::Point; +use galaxyui::elements::ListIndentLevel; +use galaxyui::text::point::Point; use crate::content::buffer::{Buffer, StyledBufferRun}; diff --git a/crates/editor/src/content/core.rs b/crates/editor/src/content/core.rs index 19e6cb36..02bceb5d 100644 --- a/crates/editor/src/content/core.rs +++ b/crates/editor/src/content/core.rs @@ -23,7 +23,7 @@ use markdown_parser::{FormattedText, FormattedTextFragment, FormattedTextLine}; use std::ops::Range; use string_offset::CharOffset; use sum_tree::SumTree; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; #[derive(Debug, Clone)] pub struct CoreEditorAction { diff --git a/crates/editor/src/content/edit.rs b/crates/editor/src/content/edit.rs index cc10787b..13427a07 100644 --- a/crates/editor/src/content/edit.rs +++ b/crates/editor/src/content/edit.rs @@ -14,8 +14,8 @@ use rangemap::RangeSet; use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, ParallelIterator}; use urlocator::{UrlLocation, UrlLocator}; use vec1::Vec1; -use warp_core::{features::FeatureFlag, ui::theme::Fill as ThemeFill}; -use warpui::{ +use galaxy_core::{features::FeatureFlag, ui::theme::Fill as ThemeFill}; +use galaxyui::{ AppContext, assets::asset_cache::AssetSource, fonts::Weight, @@ -39,7 +39,7 @@ use crate::{ }, }; use string_offset::{ByteOffset, CharOffset}; -use warpui::text::char_slice; +use galaxyui::text::char_slice; use super::{ buffer::{StyledBufferBlock, StyledBufferRun, StyledTextBlock}, diff --git a/crates/editor/src/content/edit_tests.rs b/crates/editor/src/content/edit_tests.rs index d1f6b11e..8e6c7db3 100644 --- a/crates/editor/src/content/edit_tests.rs +++ b/crates/editor/src/content/edit_tests.rs @@ -15,8 +15,8 @@ use crate::{ }; use std::path::Path; use string_offset::CharOffset; -use warp_core::features::FeatureFlag; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::{ App, SingletonEntity, assets::asset_cache::{AssetCache, AssetSource, AssetState}, fonts::{Properties, Style, Weight}, diff --git a/crates/editor/src/content/find.rs b/crates/editor/src/content/find.rs index f85f2e4c..84134de0 100644 --- a/crates/editor/src/content/find.rs +++ b/crates/editor/src/content/find.rs @@ -199,7 +199,7 @@ impl Engine { buffer: &SumTree, buffer_offset: CharOffset, ) -> anyhow::Result> { - warpui::r#async::block_on(self.find(buffer, buffer_offset)) + galaxyui::r#async::block_on(self.find(buffer, buffer_offset)) } /// Find all matches for this pattern in the given slice of content. diff --git a/crates/editor/src/content/find_tests.rs b/crates/editor/src/content/find_tests.rs index f8ef733c..8f97e9f3 100644 --- a/crates/editor/src/content/find_tests.rs +++ b/crates/editor/src/content/find_tests.rs @@ -4,7 +4,7 @@ use futures_lite::future; use itertools::Itertools; use rangemap::RangeSet; use sum_tree::SumTree; -use warpui::App; +use galaxyui::App; use crate::content::{ buffer::Buffer, diff --git a/crates/editor/src/content/hidden_lines_model.rs b/crates/editor/src/content/hidden_lines_model.rs index dab7290e..2f0926a2 100644 --- a/crates/editor/src/content/hidden_lines_model.rs +++ b/crates/editor/src/content/hidden_lines_model.rs @@ -3,7 +3,7 @@ use std::ops::Range; use rangemap::RangeSet; use string_offset::CharOffset; -use warpui::{AppContext, Entity, ModelContext, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle}; use crate::content::edit::EditDelta; use crate::content::selection_model::BufferSelectionModel; diff --git a/crates/editor/src/content/markdown.rs b/crates/editor/src/content/markdown.rs index 9c5b84c3..e8d93ed5 100644 --- a/crates/editor/src/content/markdown.rs +++ b/crates/editor/src/content/markdown.rs @@ -15,11 +15,11 @@ use std::collections::VecDeque; use std::fmt::Write; use std::iter; use std::{io, ops::Range}; -use warpui::text::point::Point; -use warpui::{AppContext, ModelContext, ModelHandle}; +use galaxyui::text::point::Point; +use galaxyui::{AppContext, ModelContext, ModelHandle}; use string_offset::CharOffset; -use warpui::elements::{ListIndentLevel, ListNumbering}; +use galaxyui::elements::{ListIndentLevel, ListNumbering}; use crate::content::anchor::AnchorSide; use crate::content::selection_model::BufferSelectionModel; diff --git a/crates/editor/src/content/markdown_tests.rs b/crates/editor/src/content/markdown_tests.rs index 21083dd3..d86670ef 100644 --- a/crates/editor/src/content/markdown_tests.rs +++ b/crates/editor/src/content/markdown_tests.rs @@ -4,7 +4,7 @@ use markdown_parser::{compute_formatted_text_delta, parse_markdown}; use serde_yaml::Value; use string_offset::CharOffset; use vec1::Vec1; -use warpui::{App, ReadModel}; +use galaxyui::{App, ReadModel}; use crate::content::{ buffer::{ @@ -60,7 +60,7 @@ print_endline "Hello, World!" #[test] fn test_mermaid_markdown_round_trip() { App::test((), |mut app| async move { - let _flag = warp_core::features::FeatureFlag::MarkdownMermaid.override_enabled(true); + let _flag = galaxy_core::features::FeatureFlag::MarkdownMermaid.override_enabled(true); let markdown = "```mermaid\ngraph TD\nA --> B\n```\n"; let (buffer, _selection) = Buffer::mock_from_markdown( markdown, @@ -157,7 +157,7 @@ fn test_table_html_serialization() { #[test] fn test_gfm_table_html_serialization() { App::test((), |mut app| async move { - let _flag = warp_core::features::FeatureFlag::MarkdownTables.override_enabled(true); + let _flag = galaxy_core::features::FeatureFlag::MarkdownTables.override_enabled(true); let markdown = "\ | header 1 | header 2 |\n\ | --- | --- |\n\ diff --git a/crates/editor/src/content/mermaid_diagram.rs b/crates/editor/src/content/mermaid_diagram.rs index 4dd184a1..94541c10 100644 --- a/crates/editor/src/content/mermaid_diagram.rs +++ b/crates/editor/src/content/mermaid_diagram.rs @@ -5,7 +5,7 @@ use std::{ use bytes::Bytes; use mermaid_to_svg::MermaidTheme; -use warpui::{ +use galaxyui::{ AppContext, SingletonEntity, assets::asset_cache::{AssetCache, AssetSource, AssetState, AsyncAssetId, AsyncAssetType}, image_cache::ImageType, diff --git a/crates/editor/src/content/outline_tests.rs b/crates/editor/src/content/outline_tests.rs index 601efb03..5bd74213 100644 --- a/crates/editor/src/content/outline_tests.rs +++ b/crates/editor/src/content/outline_tests.rs @@ -7,7 +7,7 @@ use crate::content::{ text::{BlockType, BufferBlockStyle, IndentBehavior, TextStyles}, }; use string_offset::CharOffset; -use warpui::App; +use galaxyui::App; #[test] fn test_no_blocks() { diff --git a/crates/editor/src/content/segmentation.rs b/crates/editor/src/content/segmentation.rs index 554f6478..37d02f1c 100644 --- a/crates/editor/src/content/segmentation.rs +++ b/crates/editor/src/content/segmentation.rs @@ -4,7 +4,7 @@ use anyhow::anyhow; use string_offset::CharOffset; -use warpui::text::{TextBuffer, point::Point, word_boundaries::WordBoundariesPolicy}; +use galaxyui::text::{TextBuffer, point::Point, word_boundaries::WordBoundariesPolicy}; use super::{ buffer::{Buffer, ToBufferCharOffset, ToBufferPoint}, diff --git a/crates/editor/src/content/segmentation_tests.rs b/crates/editor/src/content/segmentation_tests.rs index ab86c704..853a0917 100644 --- a/crates/editor/src/content/segmentation_tests.rs +++ b/crates/editor/src/content/segmentation_tests.rs @@ -1,14 +1,14 @@ use itertools::Itertools; use markdown_parser::parse_markdown; use string_offset::CharOffset; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use crate::content::{ buffer::{Buffer, EditOrigin}, selection_model::BufferSelectionModel, text::IndentBehavior, }; -use warpui::{ +use galaxyui::{ App, text::{TextBuffer, point::Point, word_boundaries::WordBoundariesPolicy}, }; diff --git a/crates/editor/src/content/selection_model.rs b/crates/editor/src/content/selection_model.rs index 9496d744..6d7dc282 100644 --- a/crates/editor/src/content/selection_model.rs +++ b/crates/editor/src/content/selection_model.rs @@ -3,7 +3,7 @@ use std::ops::Range; use itertools::Itertools; use string_offset::CharOffset; use vec1::{Vec1, vec1}; -use warpui::{AppContext, Entity, ModelHandle}; +use galaxyui::{AppContext, Entity, ModelHandle}; use crate::content::{ anchor::{Anchor, AnchorSide, AnchorUpdate, Anchors}, @@ -309,7 +309,7 @@ impl BufferSelectionModel { } /// Validate the buffer content with this selection model's anchors. - pub fn validate_buffer(&self, ctx: &impl warpui::ModelAsRef) { + pub fn validate_buffer(&self, ctx: &impl galaxyui::ModelAsRef) { self.buffer.as_ref(ctx).validate(&self.anchors); } diff --git a/crates/editor/src/content/text.rs b/crates/editor/src/content/text.rs index a46bd947..9ac414cf 100644 --- a/crates/editor/src/content/text.rs +++ b/crates/editor/src/content/text.rs @@ -30,11 +30,11 @@ use std::{ }; use string_offset::{ByteOffset, CharOffset, impl_offset}; use sum_tree::{Cursor, SeekBias, SumTree}; -use warp_core::features::FeatureFlag; -use warpui::elements::ListIndentLevel; -use warpui::text::BlockHeaderSize as HeaderSize; -use warpui::text::point::Point; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxyui::elements::ListIndentLevel; +use galaxyui::text::BlockHeaderSize as HeaderSize; +use galaxyui::text::point::Point; +use galaxyui::{ AppContext, fonts::{Properties, Style, Weight}, }; diff --git a/crates/editor/src/content/text_tests.rs b/crates/editor/src/content/text_tests.rs index a716d0d6..6b4fc5c3 100644 --- a/crates/editor/src/content/text_tests.rs +++ b/crates/editor/src/content/text_tests.rs @@ -1,8 +1,8 @@ use markdown_parser::CodeBlockText; -use warpui::fonts::Weight; +use galaxyui::fonts::Weight; use markdown_parser::FormattedTable; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use super::{ BufferBlockItem, BufferTextStyle, CodeBlockType, MarkdownStyle, TextStyles, diff --git a/crates/editor/src/content/undo.rs b/crates/editor/src/content/undo.rs index 6b79794c..faeded43 100644 --- a/crates/editor/src/content/undo.rs +++ b/crates/editor/src/content/undo.rs @@ -1,7 +1,7 @@ use std::{collections::VecDeque, time::Duration}; use instant::Instant; -use warp_util::content_version::ContentVersion; +use galaxy_util::content_version::ContentVersion; use crate::render::model::RenderedSelectionSet; diff --git a/crates/editor/src/content/validation_tests.rs b/crates/editor/src/content/validation_tests.rs index af0ef638..3ef39140 100644 --- a/crates/editor/src/content/validation_tests.rs +++ b/crates/editor/src/content/validation_tests.rs @@ -5,7 +5,7 @@ use crate::content::{ }, }; use sum_tree::SumTree; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; #[test] #[should_panic( diff --git a/crates/editor/src/decoration/mod.rs b/crates/editor/src/decoration/mod.rs index 70cf3432..4d3473f3 100644 --- a/crates/editor/src/decoration/mod.rs +++ b/crates/editor/src/decoration/mod.rs @@ -1,4 +1,4 @@ -use warpui::ModelContext; +use galaxyui::ModelContext; use crate::content::{buffer::BufferSnapshot, edit::PreciseDelta, version::BufferVersion}; diff --git a/crates/editor/src/editor.rs b/crates/editor/src/editor.rs index c635b9eb..d05b7d9a 100644 --- a/crates/editor/src/editor.rs +++ b/crates/editor/src/editor.rs @@ -6,7 +6,7 @@ use std::{any::Any, cell::Ref, ops::Range}; use num_traits::SaturatingSub; use pathfinder_color::ColorU; use rangemap::{RangeMap, RangeSet}; -use warpui::{ +use galaxyui::{ Action, AppContext, Element, TypedActionView, View, elements::Border, text_layout::PaintStyleOverride, }; diff --git a/crates/editor/src/model.rs b/crates/editor/src/model.rs index d72584ad..af020046 100644 --- a/crates/editor/src/model.rs +++ b/crates/editor/src/model.rs @@ -3,7 +3,7 @@ use std::ops::Range; use itertools::{Either, Itertools}; use line_ending::LineEnding; use vec1::{Vec1, vec1}; -use warpui::{ +use galaxyui::{ AppContext, Entity, ModelAsRef, ModelContext, ModelHandle, clipboard::ClipboardContent, }; @@ -22,7 +22,7 @@ use crate::{ selection::{SelectionMode, SelectionModel, TextDirection, TextUnit}, }; use string_offset::{ByteOffset, CharOffset}; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; /// A wrapper for a buffer that provides access to its internal update_content method. /// It's important this is only returned from `CoreEditorModel::update_content` method diff --git a/crates/editor/src/multiline.rs b/crates/editor/src/multiline.rs index 2ceacce9..bdfba55f 100644 --- a/crates/editor/src/multiline.rs +++ b/crates/editor/src/multiline.rs @@ -47,7 +47,7 @@ use std::{ use itertools::Itertools as _; use line_ending::LineEnding; -use warp_core::platform::SessionPlatform; +use galaxy_core::platform::SessionPlatform; /// A line ending format. This is the compile-time equivalent to [`LineEnding`]. pub trait LineFormat { diff --git a/crates/editor/src/multiline_tests.rs b/crates/editor/src/multiline_tests.rs index 0a6d9b12..8b0bfc5f 100644 --- a/crates/editor/src/multiline_tests.rs +++ b/crates/editor/src/multiline_tests.rs @@ -3,7 +3,7 @@ #![allow(clippy::disallowed_methods)] use super::*; -use warp_core::platform::SessionPlatform; +use galaxy_core::platform::SessionPlatform; #[test] fn test_infer_line_ending_empty_file() { diff --git a/crates/editor/src/render/element/broken_embedding.rs b/crates/editor/src/render/element/broken_embedding.rs index 58c4ef6e..db948337 100644 --- a/crates/editor/src/render/element/broken_embedding.rs +++ b/crates/editor/src/render/element/broken_embedding.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ AppContext, Element, SizeConstraint, elements::{ Align, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, Icon, @@ -79,8 +79,8 @@ impl RenderableBlock for RenderableBrokenEmbedding { fn layout( &mut self, model: &crate::render::model::RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { self.row.layout( SizeConstraint::strict(vec2f( @@ -104,7 +104,7 @@ impl RenderableBlock for RenderableBrokenEmbedding { &mut self, model: &crate::render::model::RenderState, ctx: &mut super::RenderContext, - app: &warpui::AppContext, + app: &galaxyui::AppContext, ) { let content = model.content(); let broken_link = extract_block!(self.viewport_item, content, (block, BlockItem::Embedded(item)) => block.embedded(item)); @@ -154,21 +154,21 @@ impl RenderableBlock for RenderableBrokenEmbedding { ); } - ctx.paint.scene.start_layer(warpui::ClipBounds::ActiveLayer); + ctx.paint.scene.start_layer(galaxyui::ClipBounds::ActiveLayer); self.row .paint(ctx.content_to_screen(content_origin), ctx.paint, app); ctx.paint.scene.stop_layer(); } - fn after_layout(&mut self, ctx: &mut warpui::AfterLayoutContext, app: &warpui::AppContext) { + fn after_layout(&mut self, ctx: &mut galaxyui::AfterLayoutContext, app: &galaxyui::AppContext) { self.row.after_layout(ctx, app); } fn dispatch_event( &mut self, _model: &crate::render::model::RenderState, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, app: &AppContext, ) -> bool { self.row.dispatch_event(event, ctx, app) diff --git a/crates/editor/src/render/element/empty.rs b/crates/editor/src/render/element/empty.rs index aa2f5de7..bfafa3f9 100644 --- a/crates/editor/src/render/element/empty.rs +++ b/crates/editor/src/render/element/empty.rs @@ -37,8 +37,8 @@ impl RenderableBlock for Empty { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { self.placeholder .layout(&self.viewport_item, model, ctx, app, |_| { @@ -49,7 +49,7 @@ impl RenderableBlock for Empty { }); } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { let content = model.content(); let cursor = extract_block!(self.viewport_item, content, (block, BlockItem::TrailingNewLine(cursor)) => block.trailing_newline(cursor)); if self.placeholder.paint(cursor.content_origin(), model, ctx) { diff --git a/crates/editor/src/render/element/header.rs b/crates/editor/src/render/element/header.rs index dc46df1a..0e4be678 100644 --- a/crates/editor/src/render/element/header.rs +++ b/crates/editor/src/render/element/header.rs @@ -31,8 +31,8 @@ impl RenderableBlock for RenderableHeader { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { self.placeholder .layout(&self.viewport_item, model, ctx, app, |block| { @@ -53,7 +53,7 @@ impl RenderableBlock for RenderableHeader { }); } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { let content = model.content(); let (paragraph, header_size) = extract_block!( self.viewport_item, content, diff --git a/crates/editor/src/render/element/hidden_section.rs b/crates/editor/src/render/element/hidden_section.rs index e0afa41e..46face3c 100644 --- a/crates/editor/src/render/element/hidden_section.rs +++ b/crates/editor/src/render/element/hidden_section.rs @@ -3,10 +3,10 @@ use crate::render::model::BlockItem; use super::super::model::{RenderState, viewport::ViewportItem}; use super::{RenderContext, RenderableBlock}; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warpui::elements::{CrossAxisAlignment, Empty, Flex, ParentElement}; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::elements::{CrossAxisAlignment, Empty, Flex, ParentElement}; +use galaxyui::{ AfterLayoutContext, AppContext, Element, LayoutContext, SingletonEntity, SizeConstraint, elements::Container, geometry::vector::vec2f, }; @@ -71,8 +71,8 @@ impl RenderableBlock for RenderableHiddenSection { fn dispatch_event( &mut self, _model: &RenderState, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, app: &AppContext, ) -> bool { self.element.dispatch_event(event, ctx, app) diff --git a/crates/editor/src/render/element/horizontal_rule.rs b/crates/editor/src/render/element/horizontal_rule.rs index e6ef0a90..492ef2af 100644 --- a/crates/editor/src/render/element/horizontal_rule.rs +++ b/crates/editor/src/render/element/horizontal_rule.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ elements::{CornerRadius, Radius}, geometry::{ rect::RectF, @@ -77,12 +77,12 @@ impl RenderableBlock for HorizontalRule { fn layout( &mut self, _model: &RenderState, - _ctx: &mut warpui::LayoutContext, - _app: &warpui::AppContext, + _ctx: &mut galaxyui::LayoutContext, + _app: &galaxyui::AppContext, ) { } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { let content = model.content(); let horizontal_rule = extract_block!(self.viewport_item, content, (block, BlockItem::HorizontalRule(rule)) => block.horizontal_rule(rule)); diff --git a/crates/editor/src/render/element/image.rs b/crates/editor/src/render/element/image.rs index b5ca517f..fd84ea79 100644 --- a/crates/editor/src/render/element/image.rs +++ b/crates/editor/src/render/element/image.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ Element, SizeConstraint, elements::{CacheOption, Image}, geometry::vector::vec2f, @@ -39,8 +39,8 @@ impl RenderableBlock for RenderableImage { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { let content = model.content(); let (asset_source, config) = extract_block!( @@ -60,7 +60,7 @@ impl RenderableBlock for RenderableImage { self.image_element = Some(Box::new(image)); } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, app: &galaxyui::AppContext) { let content = model.content(); let positioned_image = extract_block!( self.viewport_item, @@ -83,7 +83,7 @@ impl RenderableBlock for RenderableImage { } if selected { - let rect_bounds = warpui::geometry::rect::RectF::new(screen_position, size); + let rect_bounds = galaxyui::geometry::rect::RectF::new(screen_position, size); ctx.paint .scene .draw_rect_with_hit_recording(rect_bounds) diff --git a/crates/editor/src/render/element/lens_element.rs b/crates/editor/src/render/element/lens_element.rs index 1ab79d34..ef419ed6 100644 --- a/crates/editor/src/render/element/lens_element.rs +++ b/crates/editor/src/render/element/lens_element.rs @@ -1,6 +1,6 @@ use std::ops::Range; -use warpui::{ +use galaxyui::{ AfterLayoutContext, AppContext, Element, EventContext, LayoutContext, ModelHandle, PaintContext, SizeConstraint, WeakViewHandle, elements::Point, diff --git a/crates/editor/src/render/element/mermaid.rs b/crates/editor/src/render/element/mermaid.rs index 40ffd613..1ce3e94a 100644 --- a/crates/editor/src/render/element/mermaid.rs +++ b/crates/editor/src/render/element/mermaid.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ AppContext, Element, SizeConstraint, elements::{Align, CacheOption, CornerRadius, Image, Radius, Text}, geometry::vector::vec2f, @@ -33,7 +33,7 @@ impl RenderableBlock for RenderableMermaidDiagram { &self.viewport_item } - fn layout(&mut self, model: &RenderState, ctx: &mut warpui::LayoutContext, app: &AppContext) { + fn layout(&mut self, model: &RenderState, ctx: &mut galaxyui::LayoutContext, app: &AppContext) { let content = model.content(); let (asset_source, config) = extract_block!( self.viewport_item, @@ -111,7 +111,7 @@ impl RenderableBlock for RenderableMermaidDiagram { } } - fn after_layout(&mut self, ctx: &mut warpui::AfterLayoutContext, app: &warpui::AppContext) { + fn after_layout(&mut self, ctx: &mut galaxyui::AfterLayoutContext, app: &galaxyui::AppContext) { if let Some(ref mut image_element) = self.image_element { image_element.after_layout(ctx, app); } diff --git a/crates/editor/src/render/element/mod.rs b/crates/editor/src/render/element/mod.rs index 0d3ff274..36b8de22 100644 --- a/crates/editor/src/render/element/mod.rs +++ b/crates/editor/src/render/element/mod.rs @@ -11,8 +11,8 @@ use std::{ }; use temporary_block::RenderableTemporaryBlock; use vim::vim::VimMode; -use warp_core::ui::theme::Fill as ThemeFill; -use warpui::{ +use galaxy_core::ui::theme::Fill as ThemeFill; +use galaxyui::{ AfterLayoutContext, AppContext, Element, Event, EventContext, LayoutContext, ModelHandle, PaintContext, SizeConstraint, WeakViewHandle, color::ColorU, @@ -85,7 +85,7 @@ pub enum VerticalExpansionBehavior { /// An element that renders rich text, with no additional UI or decorations. /// /// This element caches the positions listed in [`super::model::saved_positions::SavedPositions`], -/// and the parent view can overlay UI controls on top of them using a [`warpui::elements::Stack`]. +/// and the parent view can overlay UI controls on top of them using a [`galaxyui::elements::Stack`]. /// /// It additionally reserves horizontal gutters, which are considered in-bounds for content hit /// testing. @@ -1077,7 +1077,7 @@ impl Element for RichTextElement { return; }; ctx.scene - .start_layer(warpui::ClipBounds::BoundedBy(clip_bounds)); + .start_layer(galaxyui::ClipBounds::BoundedBy(clip_bounds)); // Save the clipped content layer z-index for hover detection. self.content_z_index = Some(ctx.scene.z_index()); @@ -1236,7 +1236,7 @@ impl NewScrollableElement for RichTextElement { }) } - fn scroll(&mut self, delta: warpui::units::Pixels, axis: Axis, ctx: &mut EventContext) { + fn scroll(&mut self, delta: galaxyui::units::Pixels, axis: Axis, ctx: &mut EventContext) { if let Some(action) = V::Action::scroll(delta, axis) { ctx.dispatch_typed_action(action); } @@ -1257,7 +1257,7 @@ impl ScrollableElement for RichTextElement { Some(self.vertical_scroll_data(app)) } - fn scroll(&mut self, delta: warpui::units::Pixels, ctx: &mut EventContext) { + fn scroll(&mut self, delta: galaxyui::units::Pixels, ctx: &mut EventContext) { if let Some(action) = V::Action::scroll(delta, Axis::Vertical) { ctx.dispatch_typed_action(action); } diff --git a/crates/editor/src/render/element/ordered_list.rs b/crates/editor/src/render/element/ordered_list.rs index 8720560c..283775ab 100644 --- a/crates/editor/src/render/element/ordered_list.rs +++ b/crates/editor/src/render/element/ordered_list.rs @@ -8,8 +8,8 @@ use crate::{ model::{BlockItem, RenderState, viewport::ViewportItem}, }, }; -use warpui::elements::ListIndentLevel; -use warpui::{geometry::vector::vec2f, text_layout::TextFrame}; +use galaxyui::elements::ListIndentLevel; +use galaxyui::{geometry::vector::vec2f, text_layout::TextFrame}; use super::{ RenderableBlock, @@ -44,8 +44,8 @@ impl RenderableBlock for RenderableOrderedListItem { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { let text_layout = TextLayout::from_layout_context(ctx, app, model); let block_style = BufferBlockStyle::OrderedList { @@ -75,7 +75,7 @@ impl RenderableBlock for RenderableOrderedListItem { }); } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { let content = model.content(); let paragraph = extract_block!(self.viewport_item, content, (block, BlockItem::OrderedList{ paragraph: inner, ..}) => block.ordered_list(inner)); diff --git a/crates/editor/src/render/element/paint.rs b/crates/editor/src/render/element/paint.rs index 339ce175..bcb88873 100644 --- a/crates/editor/src/render/element/paint.rs +++ b/crates/editor/src/render/element/paint.rs @@ -2,8 +2,8 @@ use std::ops::Range; -use warp_core::ui::appearance::DEFAULT_UI_FONT_SIZE; -use warpui::{ +use galaxy_core::ui::appearance::DEFAULT_UI_FONT_SIZE; +use galaxyui::{ PaintContext, elements::{CornerRadius, Point, Radius}, geometry::{ diff --git a/crates/editor/src/render/element/paragraph.rs b/crates/editor/src/render/element/paragraph.rs index 056395a4..10cc232b 100644 --- a/crates/editor/src/render/element/paragraph.rs +++ b/crates/editor/src/render/element/paragraph.rs @@ -47,8 +47,8 @@ impl RenderableBlock for RenderableParagraph { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { self.placeholder .layout(&self.viewport_item, model, ctx, app, |_| { @@ -59,7 +59,7 @@ impl RenderableBlock for RenderableParagraph { }); } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { let content = model.content(); let paragraph = extract_block!(self.viewport_item, content, (block, BlockItem::Paragraph(inner)) => block.paragraph(inner)); diff --git a/crates/editor/src/render/element/placeholder.rs b/crates/editor/src/render/element/placeholder.rs index 229e3a63..57eaca20 100644 --- a/crates/editor/src/render/element/placeholder.rs +++ b/crates/editor/src/render/element/placeholder.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use warpui::{ +use galaxyui::{ AppContext, LayoutContext, geometry::vector::{Vector2F, vec2f}, text_layout::Line, diff --git a/crates/editor/src/render/element/runnable_command.rs b/crates/editor/src/render/element/runnable_command.rs index d3bb7aa4..59bbc95a 100644 --- a/crates/editor/src/render/element/runnable_command.rs +++ b/crates/editor/src/render/element/runnable_command.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ AppContext, Element, SizeConstraint, elements::{Border, CornerRadius, Empty, Radius}, geometry::vector::vec2f, @@ -48,7 +48,7 @@ impl RenderableBlock for RenderableRunnableCommand { &self.viewport_item } - fn layout(&mut self, _model: &RenderState, ctx: &mut warpui::LayoutContext, app: &AppContext) { + fn layout(&mut self, _model: &RenderState, ctx: &mut galaxyui::LayoutContext, app: &AppContext) { self.footer.layout( SizeConstraint::strict(vec2f( self.viewport_item.content_size.x(), @@ -87,7 +87,7 @@ impl RenderableBlock for RenderableRunnableCommand { // Place the button at a higher z-index for event handling. See the comment on // `RichTextElement::content_z_index` for context. - ctx.paint.scene.start_layer(warpui::ClipBounds::ActiveLayer); + ctx.paint.scene.start_layer(galaxyui::ClipBounds::ActiveLayer); // Position the block footer right below the content area, flush with its right-hand edge. // This gives the footer some padding relative to the visible area with a background. @@ -102,15 +102,15 @@ impl RenderableBlock for RenderableRunnableCommand { ctx.paint.scene.stop_layer(); } - fn after_layout(&mut self, ctx: &mut warpui::AfterLayoutContext, app: &warpui::AppContext) { + fn after_layout(&mut self, ctx: &mut galaxyui::AfterLayoutContext, app: &galaxyui::AppContext) { self.footer.after_layout(ctx, app); } fn dispatch_event( &mut self, _model: &crate::render::model::RenderState, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, app: &AppContext, ) -> bool { self.footer.dispatch_event(event, ctx, app) diff --git a/crates/editor/src/render/element/table.rs b/crates/editor/src/render/element/table.rs index 7c8163db..063072c4 100644 --- a/crates/editor/src/render/element/table.rs +++ b/crates/editor/src/render/element/table.rs @@ -1,6 +1,6 @@ use std::ops::Range; use string_offset::CharOffset; -use warpui::{ +use galaxyui::{ AppContext, ClipBounds, Event, EventContext, elements::{ Axis, CornerRadius, DEFAULT_SCROLL_WHEEL_PIXELS_PER_LINE, Radius, ScrollData, @@ -121,7 +121,7 @@ impl RenderableBlock for RenderableTable { &self.viewport_item } - fn layout(&mut self, _: &RenderState, _: &mut warpui::LayoutContext, _: &AppContext) {} + fn layout(&mut self, _: &RenderState, _: &mut galaxyui::LayoutContext, _: &AppContext) {} fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &AppContext) { let content = model.content(); diff --git a/crates/editor/src/render/element/table_tests.rs b/crates/editor/src/render/element/table_tests.rs index 77b7685a..6c53bc86 100644 --- a/crates/editor/src/render/element/table_tests.rs +++ b/crates/editor/src/render/element/table_tests.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; use std::{cell::Cell, sync::Arc}; use string_offset::CharOffset; -use warpui::{ +use galaxyui::{ elements::{Axis, scroll_delta_for_pointer_movement}, fonts::FamilyId, geometry::{rect::RectF, vector::vec2f}, @@ -214,7 +214,7 @@ fn cells_in_range_entire_table() { } fn single_line_cell_layout(char_count: usize, line_height: f32, line_width: f32) -> CellLayout { - use warpui::text_layout::CaretPosition; + use galaxyui::text_layout::CaretPosition; let mut carets = Vec::with_capacity(char_count); let char_width = if char_count > 0 { line_width / char_count as f32 diff --git a/crates/editor/src/render/element/task_list.rs b/crates/editor/src/render/element/task_list.rs index 6cbeafc2..4442bdc6 100644 --- a/crates/editor/src/render/element/task_list.rs +++ b/crates/editor/src/render/element/task_list.rs @@ -5,8 +5,8 @@ use crate::{ render::model::{BlockItem, RenderState, RichTextStyles, bounds, viewport::ViewportItem}, }; use pathfinder_color::ColorU; -use warpui::elements::ListIndentLevel; -use warpui::{ +use galaxyui::elements::ListIndentLevel; +use galaxyui::{ AppContext, Element, SizeConstraint, WeakViewHandle, elements::{ Align, Border, ConstrainedBox, Container, CornerRadius, Hoverable, Icon, MouseStateHandle, @@ -112,8 +112,8 @@ impl RenderableBlock for RenderableTaskList { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { self.task_list_icon.layout( SizeConstraint::strict(vec2f(self.icon_size, self.icon_size)), @@ -142,7 +142,7 @@ impl RenderableBlock for RenderableTaskList { }) } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, app: &galaxyui::AppContext) { let content = model.content(); let task_list = extract_block!(self.viewport_item, content, (block, BlockItem::TaskList{ paragraph: inner, ..}) => block.task_list(inner)); let text_styling = &model.styles().base_text; @@ -174,8 +174,8 @@ impl RenderableBlock for RenderableTaskList { fn dispatch_event( &mut self, _model: &crate::render::model::RenderState, - event: &warpui::event::DispatchedEvent, - ctx: &mut warpui::EventContext, + event: &galaxyui::event::DispatchedEvent, + ctx: &mut galaxyui::EventContext, app: &AppContext, ) -> bool { self.task_list_icon.dispatch_event(event, ctx, app) diff --git a/crates/editor/src/render/element/temporary_block.rs b/crates/editor/src/render/element/temporary_block.rs index 25fae894..cc47f572 100644 --- a/crates/editor/src/render/element/temporary_block.rs +++ b/crates/editor/src/render/element/temporary_block.rs @@ -1,4 +1,4 @@ -use warp_core::ui::theme::Fill; +use galaxy_core::ui::theme::Fill; use crate::render::model::{BlockItem, Decoration, RenderState, viewport::ViewportItem}; @@ -36,12 +36,12 @@ impl RenderableBlock for RenderableTemporaryBlock { fn layout( &mut self, _model: &RenderState, - _ctx: &mut warpui::LayoutContext, - _app: &warpui::AppContext, + _ctx: &mut galaxyui::LayoutContext, + _app: &galaxyui::AppContext, ) { } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { // We cannot use `extract_block` macro here since we need to locate the viewport item by content height instead of charoffset // (temporary block has an offset of zero). let content = model.content(); diff --git a/crates/editor/src/render/element/text_block.rs b/crates/editor/src/render/element/text_block.rs index 65f4e17c..5295cc83 100644 --- a/crates/editor/src/render/element/text_block.rs +++ b/crates/editor/src/render/element/text_block.rs @@ -23,12 +23,12 @@ impl RenderableBlock for RenderableTextBlock { fn layout( &mut self, _model: &RenderState, - _ctx: &mut warpui::LayoutContext, - _app: &warpui::AppContext, + _ctx: &mut galaxyui::LayoutContext, + _app: &galaxyui::AppContext, ) { } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, _app: &galaxyui::AppContext) { let content = model.content(); let text_block = extract_block!( self.viewport_item, diff --git a/crates/editor/src/render/element/unordered_list.rs b/crates/editor/src/render/element/unordered_list.rs index 585c6bcf..7396474f 100644 --- a/crates/editor/src/render/element/unordered_list.rs +++ b/crates/editor/src/render/element/unordered_list.rs @@ -3,8 +3,8 @@ use crate::{ extract_block, render::model::{BlockItem, RenderState, RichTextStyles, bounds, viewport::ViewportItem}, }; -use warpui::elements::ListIndentLevel; -use warpui::{ +use galaxyui::elements::ListIndentLevel; +use galaxyui::{ Element, SizeConstraint, elements::{Border, CornerRadius, Radius, Rect}, geometry::vector::vec2f, @@ -67,8 +67,8 @@ impl RenderableBlock for RenderableBulletList { fn layout( &mut self, model: &RenderState, - ctx: &mut warpui::LayoutContext, - app: &warpui::AppContext, + ctx: &mut galaxyui::LayoutContext, + app: &galaxyui::AppContext, ) { self.bullet_point.layout( SizeConstraint::strict(vec2f(self.bullet_size, self.bullet_size)), @@ -88,7 +88,7 @@ impl RenderableBlock for RenderableBulletList { }) } - fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, app: &warpui::AppContext) { + fn paint(&mut self, model: &RenderState, ctx: &mut RenderContext, app: &galaxyui::AppContext) { let content = model.content(); let unordered_list = extract_block!(self.viewport_item, content, (block, BlockItem::UnorderedList{ paragraph: inner, ..}) => block.unordered_list(inner)); diff --git a/crates/editor/src/render/layout.rs b/crates/editor/src/render/layout.rs index 5aa1e89b..c4c1b262 100644 --- a/crates/editor/src/render/layout.rs +++ b/crates/editor/src/render/layout.rs @@ -6,15 +6,15 @@ use std::ops::Range; use std::sync::Arc; use crate::content::text::{BufferBlockStyle, TextStylesWithMetadata}; -use warpui::fonts::TextLayoutSystem; +use galaxyui::fonts::TextLayoutSystem; #[cfg(test)] -use warpui::fonts::{Style, Weight}; -use warpui::text_layout::{ +use galaxyui::fonts::{Style, Weight}; +use galaxyui::text_layout::{ ClipConfig, LayoutCache, Line, StyleAndFont, TextAlignment, TextBorder, TextStyle, }; -use warpui::units::{IntoPixels, Pixels}; -use warpui::{AppContext, LayoutContext}; -use warpui::{color::ColorU, text_layout::TextFrame}; +use galaxyui::units::{IntoPixels, Pixels}; +use galaxyui::{AppContext, LayoutContext}; +use galaxyui::{color::ColorU, text_layout::TextFrame}; use super::model::{BlockSpacing, ParagraphStyles, RenderState, RichTextStyles}; diff --git a/crates/editor/src/render/mod_tests.rs b/crates/editor/src/render/mod_tests.rs index 7edc3294..61b617bf 100644 --- a/crates/editor/src/render/mod_tests.rs +++ b/crates/editor/src/render/mod_tests.rs @@ -1,7 +1,7 @@ //! End-to-end editor tests. -use warp_core::features::FeatureFlag; -use warpui::{App, ModelHandle, ReadModel}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{App, ModelHandle, ReadModel}; use crate::content::{ buffer::{ diff --git a/crates/editor/src/render/model/bounds.rs b/crates/editor/src/render/model/bounds.rs index 6d58c86d..ccadd180 100644 --- a/crates/editor/src/render/model/bounds.rs +++ b/crates/editor/src/render/model/bounds.rs @@ -9,7 +9,7 @@ //! * The **reserved box** is the rectangle containing a block's content, padding, borders, and //! margin - all space reserved for the block. -use warpui::{ +use galaxyui::{ geometry::{ rect::RectF, vector::{Vector2F, vec2f}, diff --git a/crates/editor/src/render/model/location.rs b/crates/editor/src/render/model/location.rs index f4947835..381c5475 100644 --- a/crates/editor/src/render/model/location.rs +++ b/crates/editor/src/render/model/location.rs @@ -2,7 +2,7 @@ use num_traits::SaturatingSub; use sum_tree::SeekBias; -use warpui::units::{IntoPixels, Pixels}; +use galaxyui::units::{IntoPixels, Pixels}; use string_offset::CharOffset; diff --git a/crates/editor/src/render/model/location_tests.rs b/crates/editor/src/render/model/location_tests.rs index 5686faaa..a26a61aa 100644 --- a/crates/editor/src/render/model/location_tests.rs +++ b/crates/editor/src/render/model/location_tests.rs @@ -16,10 +16,10 @@ use std::{cell::Cell, sync::Arc}; use string_offset::CharOffset; use sum_tree::SumTree; -use warpui::assets::asset_cache::AssetSource; -use warpui::fonts::FamilyId; -use warpui::text_layout::{CaretPosition, TextFrame}; -use warpui::units::IntoPixels; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::fonts::FamilyId; +use galaxyui::text_layout::{CaretPosition, TextFrame}; +use galaxyui::units::IntoPixels; fn test_table_layout() -> LaidOutTable { let source = "aaa\tbbb\nccc\tddd\n"; diff --git a/crates/editor/src/render/model/mod.rs b/crates/editor/src/render/model/mod.rs index a52c6cde..7de70973 100644 --- a/crates/editor/src/render/model/mod.rs +++ b/crates/editor/src/render/model/mod.rs @@ -21,11 +21,11 @@ use serde_yaml::Mapping; use sum_tree::{SeekBias, SumTree}; use vec1::Vec1; use vim::vim::{MotionType, VimMode}; -use warp_core::{ +use galaxy_core::{ channel::ChannelState, ui::{Icon, theme::Fill as ThemeFill}, }; -use warpui::{ +use galaxyui::{ AppContext, Entity, EntityId, ModelContext, ModelHandle, assets::asset_cache::AssetSource, color::ColorU, @@ -69,7 +69,7 @@ use crate::{ render::model::debug::Describe, }; use string_offset::{CharOffset, impl_offset}; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; use super::{ BLOCK_FOOTER_HEIGHT, @@ -664,7 +664,7 @@ impl LineCount { } /// A character offset within a [`TextFrame`]. These offsets count characters in the Rust string -/// passed to [`warpui::text_layout::LayoutCache::layout_text()`]. +/// passed to [`galaxyui::text_layout::LayoutCache::layout_text()`]. /// /// Frame offsets often, but not always, correspond to glyph indices and caret positions. However, /// they do not line up 1:1 if a glyph or grapheme contains multiple characters @@ -4305,7 +4305,7 @@ impl<'a> Positioned<'a, Paragraph> { vec2f(underline_width, UNDERLINE_THICKNESS), ); - let dash = warpui::scene::Dash { + let dash = galaxyui::scene::Dash { dash_length: DASHED_UNDERLINE_DASH_LENGTH, gap_length: DASHED_UNDERLINE_GAP_LENGTH, force_consistent_gap_length: true, @@ -4314,7 +4314,7 @@ impl<'a> Positioned<'a, Paragraph> { .scene .draw_rect_without_hit_recording(underline_rect) .with_border( - warpui::scene::Border::bottom(UNDERLINE_THICKNESS) + galaxyui::scene::Border::bottom(UNDERLINE_THICKNESS) .with_dashed_border(dash) .with_border_color(color), ); diff --git a/crates/editor/src/render/model/mod_tests.rs b/crates/editor/src/render/model/mod_tests.rs index ad0c3328..33318aa5 100644 --- a/crates/editor/src/render/model/mod_tests.rs +++ b/crates/editor/src/render/model/mod_tests.rs @@ -2,8 +2,8 @@ use rangemap::RangeSet; use std::{cell::Cell, sync::Arc}; use sum_tree::SumTree; use vec1::{Vec1, vec1}; -use warpui::assets::asset_cache::AssetSource; -use warpui::{ +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::{ color::ColorU, fonts::FamilyId, geometry::{rect::RectF, vector::vec2f}, @@ -34,7 +34,7 @@ use crate::{ }; use markdown_parser::{FormattedTextStyles, Hyperlink}; use string_offset::CharOffset; -use warpui::elements::ListIndentLevel; +use galaxyui::elements::ListIndentLevel; #[test] fn test_height() { @@ -930,7 +930,7 @@ fn test_multiselect_autoscroll_bounding_box() { ); } -// 18:09:15 [INFO] [warp_editor::render::model] Initial tree: +// 18:09:15 [INFO] [galaxy_editor::render::model] Initial tree: // -------- 0.00px / 0 characters -------- // Hidden (3067 characters, 87 lines, 20.00px tall) // -------- 20.00px / 3067 characters -------- @@ -1033,7 +1033,7 @@ fn test_dedupe_hidden_ranges_logged_tree_is_unchanged() { assert_eq!(initial, resulting); } -// 18:09:14 [INFO] [warp_editor::render::model] Initial tree: +// 18:09:14 [INFO] [galaxy_editor::render::model] Initial tree: // -------- 0.00px / 0 characters -------- // Hidden (3066 characters, 87 lines, 20.00px tall) // -------- 20.00px / 3067 characters -------- @@ -1158,17 +1158,17 @@ fn make_test_cell_layout() -> CellLayout { line_char_ranges: vec![CharOffset::from(0)..CharOffset::from(3)], line_widths: vec![30.0], line_caret_positions: vec![vec![ - warpui::text_layout::CaretPosition { + galaxyui::text_layout::CaretPosition { position_in_line: 0.0, start_offset: 0, last_offset: 0, }, - warpui::text_layout::CaretPosition { + galaxyui::text_layout::CaretPosition { position_in_line: 10.0, start_offset: 1, last_offset: 1, }, - warpui::text_layout::CaretPosition { + galaxyui::text_layout::CaretPosition { position_in_line: 20.0, start_offset: 2, last_offset: 2, diff --git a/crates/editor/src/render/model/offset_map.rs b/crates/editor/src/render/model/offset_map.rs index 905f20a1..d63a6b12 100644 --- a/crates/editor/src/render/model/offset_map.rs +++ b/crates/editor/src/render/model/offset_map.rs @@ -19,7 +19,7 @@ mod tests; /// certain character runs are interactive. Within those runs, there's a 1:1 mapping between /// `char`s in the content model and `char`s in the text frame. It translates in two directions: /// * From a [`CharOffset`] relative to the start of the content model block (a [`super::Paragraph`]) -/// to the character index in the [`warpui::text_layout::TextFrame`]. +/// to the character index in the [`galaxyui::text_layout::TextFrame`]. /// * From a [`FrameOffset`] in the `TextFrame` to the closest `CharOffset` in the content model /// block (for example, clicking within a placeholder should snap the cursor to a regular content /// character). diff --git a/crates/editor/src/render/model/offset_map_tests.rs b/crates/editor/src/render/model/offset_map_tests.rs index 84d0e171..646204b2 100644 --- a/crates/editor/src/render/model/offset_map_tests.rs +++ b/crates/editor/src/render/model/offset_map_tests.rs @@ -76,7 +76,7 @@ fn test_offset_map_placeholders() { fn test_end_to_end() { // Group imports here so they don't cause "unused import" warnings on other targets. - use warpui::{ + use galaxyui::{ App, color::ColorU, elements::Fill, fonts::Cache as FontCache, text_layout::LayoutCache, }; @@ -97,7 +97,7 @@ fn test_end_to_end() { }; App::test((), |mut app| async move { - let mut font_cache = FontCache::new(Box::new(warpui::platform::current::FontDB::new())); + let mut font_cache = FontCache::new(Box::new(galaxyui::platform::current::FontDB::new())); let layout_cache = LayoutCache::new(); let paragraph_styles = ParagraphStyles { font_family: font_cache diff --git a/crates/editor/src/render/model/positioned.rs b/crates/editor/src/render/model/positioned.rs index 13cd534e..9293b24a 100644 --- a/crates/editor/src/render/model/positioned.rs +++ b/crates/editor/src/render/model/positioned.rs @@ -4,7 +4,7 @@ use std::sync::Arc; use sum_tree::{Cursor, Dimension}; -use warpui::{ +use galaxyui::{ geometry::vector::Vector2F, text_layout::Line, units::{IntoPixels, Pixels}, diff --git a/crates/editor/src/render/model/saved_positions.rs b/crates/editor/src/render/model/saved_positions.rs index aefd2b59..c41a1054 100644 --- a/crates/editor/src/render/model/saved_positions.rs +++ b/crates/editor/src/render/model/saved_positions.rs @@ -1,4 +1,4 @@ -use warpui::EntityId; +use galaxyui::EntityId; /// Utility for consistently creating and referencing saved position IDs for /// rich text. @@ -17,16 +17,16 @@ impl SavedPositions { /// Saved position ID for the cursor location. pub fn cursor_id(&self) -> String { - format!("warp_editor:cursor_{}", self.model_id) + format!("galaxy_editor:cursor_{}", self.model_id) } /// The bounding box for the text selection. pub fn text_selection_id(&self) -> String { - format!("warp_editor:text_selection_{}", self.model_id) + format!("galaxy_editor:text_selection_{}", self.model_id) } /// The first line of the block that the mouse is currently hovered over. pub fn hovered_block_start(&self) -> String { - format!("warp_editor:hovered_block_start_{}", self.model_id) + format!("galaxy_editor:hovered_block_start_{}", self.model_id) } } diff --git a/crates/editor/src/render/model/test_utils.rs b/crates/editor/src/render/model/test_utils.rs index 60451df9..a470c4f2 100644 --- a/crates/editor/src/render/model/test_utils.rs +++ b/crates/editor/src/render/model/test_utils.rs @@ -6,8 +6,8 @@ use vec1::{Vec1, vec1}; use crate::content::text::BufferBlockStyle; use ordered_float::OrderedFloat; -use warpui::elements::ListIndentLevel; -use warpui::{ +use galaxyui::elements::ListIndentLevel; +use galaxyui::{ color::ColorU, elements::{Border, Fill}, fonts::{FamilyId, Weight}, @@ -241,7 +241,7 @@ pub fn layout(text: &str, styles: &RichTextStyles, max_width: impl IntoPixels) - width: line_width.as_f32(), trailing_whitespace_width: 0., runs: vec![Run { - font_id: warpui::fonts::FontId(0), + font_id: galaxyui::fonts::FontId(0), styles: Default::default(), glyphs: mem::take(&mut glyphs_acc), width: line_width.as_f32(), @@ -280,7 +280,7 @@ pub fn layout(text: &str, styles: &RichTextStyles, max_width: impl IntoPixels) - width: line_width.as_f32(), trailing_whitespace_width: 0., runs: vec![Run { - font_id: warpui::fonts::FontId(0), + font_id: galaxyui::fonts::FontId(0), styles: Default::default(), glyphs: glyphs_acc, width: line_width.as_f32(), @@ -316,7 +316,7 @@ pub fn init_logging() { static INIT: Once = Once::new(); INIT.call_once(|| { env_logger::builder() - .parse_filters("warp_editor=trace") + .parse_filters("galaxy_editor=trace") .is_test(true) .init(); }); diff --git a/crates/editor/src/render/model/viewport.rs b/crates/editor/src/render/model/viewport.rs index 78e39464..c2bdcff5 100644 --- a/crates/editor/src/render/model/viewport.rs +++ b/crates/editor/src/render/model/viewport.rs @@ -1,6 +1,6 @@ use float_cmp::ApproxEq; use sum_tree::{SeekBias, SumTree}; -use warpui::{ +use galaxyui::{ SizeConstraint, geometry::{ rect::RectF, diff --git a/crates/editor/src/render/model/viewport_tests.rs b/crates/editor/src/render/model/viewport_tests.rs index c913770f..33976ef8 100644 --- a/crates/editor/src/render/model/viewport_tests.rs +++ b/crates/editor/src/render/model/viewport_tests.rs @@ -1,7 +1,7 @@ use itertools::Itertools; use sum_tree::SumTree; -use warpui::{ +use galaxyui::{ SizeConstraint, geometry::vector::vec2f, units::{IntoPixels, Pixels}, diff --git a/crates/editor/src/search.rs b/crates/editor/src/search.rs index 3b2b659c..f4147453 100644 --- a/crates/editor/src/search.rs +++ b/crates/editor/src/search.rs @@ -3,8 +3,8 @@ use std::ops::Range; use itertools::Itertools; use lazy_static::lazy_static; use pathfinder_color::ColorU; -use warp_core::ui::theme::Fill; -use warpui::{Entity, ModelContext, ModelHandle, r#async::SpawnedFutureHandle}; +use galaxy_core::ui::theme::Fill; +use galaxyui::{Entity, ModelContext, ModelHandle, r#async::SpawnedFutureHandle}; use crate::{ content::{ @@ -276,7 +276,7 @@ impl Searcher { #[cfg(test)] pub fn search_finished( &self, - ctx: &mut warpui::AppContext, + ctx: &mut galaxyui::AppContext, ) -> impl std::future::Future + use<> { let maybe_search = self .search_handle diff --git a/crates/editor/src/search_tests.rs b/crates/editor/src/search_tests.rs index f2571385..0ea1b99d 100644 --- a/crates/editor/src/search_tests.rs +++ b/crates/editor/src/search_tests.rs @@ -1,4 +1,4 @@ -use warpui::{App, ModelHandle}; +use galaxyui::{App, ModelHandle}; use crate::content::{ buffer::{AutoScrollBehavior, Buffer, BufferEditAction, BufferSelectAction, EditOrigin}, diff --git a/crates/editor/src/selection.rs b/crates/editor/src/selection.rs index 75cd5b47..d3d66227 100644 --- a/crates/editor/src/selection.rs +++ b/crates/editor/src/selection.rs @@ -1,7 +1,7 @@ use num_traits::SaturatingSub; use std::ops::Range; use vec1::Vec1; -use warpui::{AppContext, Entity, ModelAsRef, ModelContext, ModelHandle, units::Pixels}; +use galaxyui::{AppContext, Entity, ModelAsRef, ModelContext, ModelHandle, units::Pixels}; use crate::{ content::{ @@ -16,7 +16,7 @@ use crate::{ render::model::{RenderState, SoftWrapPoint}, }; use string_offset::CharOffset; -use warpui::text::{TextBuffer, point::Point, word_boundaries::WordBoundariesPolicy}; +use galaxyui::text::{TextBuffer, point::Point, word_boundaries::WordBoundariesPolicy}; #[cfg(test)] #[path = "selection_tests.rs"] diff --git a/crates/editor/src/selection_tests.rs b/crates/editor/src/selection_tests.rs index 9b4f124c..49ec1e0d 100644 --- a/crates/editor/src/selection_tests.rs +++ b/crates/editor/src/selection_tests.rs @@ -3,8 +3,8 @@ use std::sync::Arc; use serde_yaml::Value; use sum_tree::SumTree; use vec1::vec1; -use warp_core::features::FeatureFlag; -use warpui::{App, ModelAsRef, units::IntoPixels}; +use galaxy_core::features::FeatureFlag; +use galaxyui::{App, ModelAsRef, units::IntoPixels}; use crate::{ content::{ @@ -22,8 +22,8 @@ use crate::{ selection::SelectionMode, }; use string_offset::CharOffset; -use warpui::assets::asset_cache::AssetSource; -use warpui::text::word_boundaries::WordBoundariesPolicy; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::text::word_boundaries::WordBoundariesPolicy; use super::{SelectionModel, TextDirection, TextUnit}; @@ -37,7 +37,7 @@ impl SelectionModel { } } -fn selection_model_with_rendered_mermaid(app: &mut App) -> warpui::ModelHandle { +fn selection_model_with_rendered_mermaid(app: &mut App) -> galaxyui::ModelHandle { app.add_model(|ctx| { let buffer = ctx.add_model(|_| Buffer::new(Box::new(|_, _| IndentBehavior::Ignore))); let buffer_selection = ctx.add_model(|_| BufferSelectionModel::new(buffer.clone())); diff --git a/crates/warp_cli/Cargo.toml b/crates/galaxy_cli/Cargo.toml similarity index 87% rename from crates/warp_cli/Cargo.toml rename to crates/galaxy_cli/Cargo.toml index 26ca9c04..e73d831e 100644 --- a/crates/warp_cli/Cargo.toml +++ b/crates/galaxy_cli/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_cli" +name = "galaxy_cli" edition = "2024" description = "CLI argument parsing for Warp" authors.workspace = true @@ -14,9 +14,9 @@ humantime.workspace = true jaq-all.workspace = true url = { workspace = true, features = ["serde"] } uuid = { workspace = true } -warp_core = { path = "../warp_core" } +galaxy_core = { path = "../galaxy_core" } color-print = "0.3" -warp_util = { path = "../warp_util" } +galaxy_util = { path = "../galaxy_util" } clap_complete = "4.5.58" anyhow.workspace = true diff --git a/crates/warp_cli/build.rs b/crates/galaxy_cli/build.rs similarity index 100% rename from crates/warp_cli/build.rs rename to crates/galaxy_cli/build.rs diff --git a/crates/warp_cli/src/agent.rs b/crates/galaxy_cli/src/agent.rs similarity index 100% rename from crates/warp_cli/src/agent.rs rename to crates/galaxy_cli/src/agent.rs diff --git a/crates/warp_cli/src/artifact.rs b/crates/galaxy_cli/src/artifact.rs similarity index 100% rename from crates/warp_cli/src/artifact.rs rename to crates/galaxy_cli/src/artifact.rs diff --git a/crates/warp_cli/src/completions.rs b/crates/galaxy_cli/src/completions.rs similarity index 94% rename from crates/warp_cli/src/completions.rs rename to crates/galaxy_cli/src/completions.rs index 908d20b1..932d41ef 100644 --- a/crates/warp_cli/src/completions.rs +++ b/crates/galaxy_cli/src/completions.rs @@ -3,7 +3,7 @@ use std::io; use clap_complete::aot::{Shell, generate}; use crate::{Args, binary_name}; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; /// Generate shell completions for the Warp CLI and write them to stdout. pub fn generate_to_stdout(shell: Option) -> anyhow::Result<()> { diff --git a/crates/warp_cli/src/config_file.rs b/crates/galaxy_cli/src/config_file.rs similarity index 100% rename from crates/warp_cli/src/config_file.rs rename to crates/galaxy_cli/src/config_file.rs diff --git a/crates/warp_cli/src/environment.rs b/crates/galaxy_cli/src/environment.rs similarity index 100% rename from crates/warp_cli/src/environment.rs rename to crates/galaxy_cli/src/environment.rs diff --git a/crates/warp_cli/src/federate.rs b/crates/galaxy_cli/src/federate.rs similarity index 100% rename from crates/warp_cli/src/federate.rs rename to crates/galaxy_cli/src/federate.rs diff --git a/crates/warp_cli/src/harness_support.rs b/crates/galaxy_cli/src/harness_support.rs similarity index 100% rename from crates/warp_cli/src/harness_support.rs rename to crates/galaxy_cli/src/harness_support.rs diff --git a/crates/warp_cli/src/integration.rs b/crates/galaxy_cli/src/integration.rs similarity index 100% rename from crates/warp_cli/src/integration.rs rename to crates/galaxy_cli/src/integration.rs diff --git a/crates/warp_cli/src/json_filter.rs b/crates/galaxy_cli/src/json_filter.rs similarity index 100% rename from crates/warp_cli/src/json_filter.rs rename to crates/galaxy_cli/src/json_filter.rs diff --git a/crates/warp_cli/src/json_filter_tests.rs b/crates/galaxy_cli/src/json_filter_tests.rs similarity index 100% rename from crates/warp_cli/src/json_filter_tests.rs rename to crates/galaxy_cli/src/json_filter_tests.rs diff --git a/crates/warp_cli/src/lib.rs b/crates/galaxy_cli/src/lib.rs similarity index 97% rename from crates/warp_cli/src/lib.rs rename to crates/galaxy_cli/src/lib.rs index 3ec4cce0..4bf67fd2 100644 --- a/crates/warp_cli/src/lib.rs +++ b/crates/galaxy_cli/src/lib.rs @@ -5,8 +5,8 @@ use std::{env, fmt, path::Path}; use clap::{CommandFactory, Parser, Subcommand, ValueEnum}; use url::Url; -use warp_core::channel::ChannelState; -use warp_core::features::FeatureFlag; +use galaxy_core::channel::ChannelState; +use galaxy_core::features::FeatureFlag; use crate::agent::OutputFormat; @@ -36,9 +36,9 @@ pub const OZ_RUN_ID_ENV: &str = "OZ_RUN_ID"; pub const OZ_PARENT_RUN_ID_ENV: &str = "OZ_PARENT_RUN_ID"; pub const OZ_CLI_ENV: &str = "OZ_CLI"; pub const OZ_HARNESS_ENV: &str = "OZ_HARNESS"; -pub const SERVER_ROOT_URL_OVERRIDE_ENV: &str = "WARP_SERVER_ROOT_URL"; -pub const WS_SERVER_URL_OVERRIDE_ENV: &str = "WARP_WS_SERVER_URL"; -pub const SESSION_SHARING_SERVER_URL_OVERRIDE_ENV: &str = "WARP_SESSION_SHARING_SERVER_URL"; +pub const SERVER_ROOT_URL_OVERRIDE_ENV: &str = "GALAXY_SERVER_ROOT_URL"; +pub const WS_SERVER_URL_OVERRIDE_ENV: &str = "GALAXY_WS_SERVER_URL"; +pub const SESSION_SHARING_SERVER_URL_OVERRIDE_ENV: &str = "GALAXY_SESSION_SHARING_SERVER_URL"; /// Options related to the parent process that spawned this Warp instance. #[derive(Debug, Default, Clone, clap::Args)] @@ -74,7 +74,7 @@ pub struct RemoteServerIdentityArgs { #[derive(Debug, Default, Clone, clap::Args)] pub struct GlobalOptions { /// API key for server authentication. - #[arg(long = "api-key", global = true, env = "WARP_API_KEY")] + #[arg(long = "api-key", global = true, env = "GALAXY_API_KEY")] pub api_key: Option, /// Set the output format. @@ -83,7 +83,7 @@ pub struct GlobalOptions { global = true, value_enum, default_value_t = OutputFormat::Pretty, - env = "WARP_OUTPUT_FORMAT" + env = "GALAXY_OUTPUT_FORMAT" )] pub output_format: OutputFormat, } @@ -116,7 +116,7 @@ pub struct Args { long = "server-root-url", global = true, hide = true, - env = "WARP_SERVER_ROOT_URL" + env = "GALAXY_SERVER_ROOT_URL" )] server_root_url: Option, @@ -125,7 +125,7 @@ pub struct Args { long = "ws-server-url", global = true, hide = true, - env = "WARP_WS_SERVER_URL" + env = "GALAXY_WS_SERVER_URL" )] ws_server_url: Option, @@ -134,7 +134,7 @@ pub struct Args { long = "session-sharing-server-url", global = true, hide = true, - env = "WARP_SESSION_SHARING_SERVER_URL" + env = "GALAXY_SESSION_SHARING_SERVER_URL" )] session_sharing_server_url: Option, @@ -251,7 +251,7 @@ impl Args { // We attach a console to ensure help and error messages are printed // when using the CLI. #[cfg(windows)] - warp_util::windows::attach_to_parent_console(); + galaxy_util::windows::attach_to_parent_console(); err.exit() }) } @@ -361,7 +361,7 @@ impl Args { Learn more: * Use {bin_name} help to learn more about each command -* Read the documentation at https://docs.warp.dev/reference/cli +* Read the documentation at https://github.com/user/galaxy-ai "# )); diff --git a/crates/warp_cli/src/lib_tests.rs b/crates/galaxy_cli/src/lib_tests.rs similarity index 99% rename from crates/warp_cli/src/lib_tests.rs rename to crates/galaxy_cli/src/lib_tests.rs index 69cbbc6e..c2b58682 100644 --- a/crates/warp_cli/src/lib_tests.rs +++ b/crates/galaxy_cli/src/lib_tests.rs @@ -596,7 +596,7 @@ fn artifact_upload_accepts_run_id() { #[test] fn artifact_help_hides_upload_but_keeps_download_visible() { - warp_core::features::mark_initialized(); + galaxy_core::features::mark_initialized(); let mut command = Args::clap_command(); command.build(); @@ -631,7 +631,7 @@ fn artifact_help_hides_upload_but_keeps_download_visible() { #[test] fn run_help_hides_message_when_orchestration_v2_disabled() { - warp_core::features::mark_initialized(); + galaxy_core::features::mark_initialized(); let mut command = Args::clap_command(); command.build(); diff --git a/crates/warp_cli/src/mcp.rs b/crates/galaxy_cli/src/mcp.rs similarity index 100% rename from crates/warp_cli/src/mcp.rs rename to crates/galaxy_cli/src/mcp.rs diff --git a/crates/warp_cli/src/mcp_tests.rs b/crates/galaxy_cli/src/mcp_tests.rs similarity index 100% rename from crates/warp_cli/src/mcp_tests.rs rename to crates/galaxy_cli/src/mcp_tests.rs diff --git a/crates/warp_cli/src/model.rs b/crates/galaxy_cli/src/model.rs similarity index 100% rename from crates/warp_cli/src/model.rs rename to crates/galaxy_cli/src/model.rs diff --git a/crates/warp_cli/src/process_handle.rs b/crates/galaxy_cli/src/process_handle.rs similarity index 100% rename from crates/warp_cli/src/process_handle.rs rename to crates/galaxy_cli/src/process_handle.rs diff --git a/crates/warp_cli/src/provider.rs b/crates/galaxy_cli/src/provider.rs similarity index 100% rename from crates/warp_cli/src/provider.rs rename to crates/galaxy_cli/src/provider.rs diff --git a/crates/warp_cli/src/schedule.rs b/crates/galaxy_cli/src/schedule.rs similarity index 100% rename from crates/warp_cli/src/schedule.rs rename to crates/galaxy_cli/src/schedule.rs diff --git a/crates/warp_cli/src/scope.rs b/crates/galaxy_cli/src/scope.rs similarity index 100% rename from crates/warp_cli/src/scope.rs rename to crates/galaxy_cli/src/scope.rs diff --git a/crates/warp_cli/src/secret.rs b/crates/galaxy_cli/src/secret.rs similarity index 100% rename from crates/warp_cli/src/secret.rs rename to crates/galaxy_cli/src/secret.rs diff --git a/crates/warp_cli/src/share.rs b/crates/galaxy_cli/src/share.rs similarity index 100% rename from crates/warp_cli/src/share.rs rename to crates/galaxy_cli/src/share.rs diff --git a/crates/warp_cli/src/share_tests.rs b/crates/galaxy_cli/src/share_tests.rs similarity index 100% rename from crates/warp_cli/src/share_tests.rs rename to crates/galaxy_cli/src/share_tests.rs diff --git a/crates/warp_cli/src/skill.rs b/crates/galaxy_cli/src/skill.rs similarity index 100% rename from crates/warp_cli/src/skill.rs rename to crates/galaxy_cli/src/skill.rs diff --git a/crates/warp_cli/src/skill_tests.rs b/crates/galaxy_cli/src/skill_tests.rs similarity index 100% rename from crates/warp_cli/src/skill_tests.rs rename to crates/galaxy_cli/src/skill_tests.rs diff --git a/crates/warp_cli/src/task.rs b/crates/galaxy_cli/src/task.rs similarity index 100% rename from crates/warp_cli/src/task.rs rename to crates/galaxy_cli/src/task.rs diff --git a/crates/warp_cli/src/task_tests.rs b/crates/galaxy_cli/src/task_tests.rs similarity index 100% rename from crates/warp_cli/src/task_tests.rs rename to crates/galaxy_cli/src/task_tests.rs diff --git a/crates/warp_completer/Cargo.toml b/crates/galaxy_completer/Cargo.toml similarity index 82% rename from crates/warp_completer/Cargo.toml rename to crates/galaxy_completer/Cargo.toml index 8efe6dbd..1021d772 100644 --- a/crates/warp_completer/Cargo.toml +++ b/crates/galaxy_completer/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_completer" +name = "galaxy_completer" authors = ["Warp Team "] version = "0.1.0" edition = "2021" @@ -30,11 +30,11 @@ shellexpand.workspace = true smol_str.workspace = true string-offset.workspace = true thiserror.workspace = true -warp_cli.workspace = true -warp_core.workspace = true -warp_js = { workspace = true, optional = true } -warpui.workspace = true -warp_util.workspace = true +galaxy_cli.workspace = true +galaxy_core.workspace = true +galaxy_js = { workspace = true, optional = true } +galaxyui.workspace = true +galaxy_util.workspace = true typed-path.workspace = true [target.'cfg(target_family = "wasm")'.dependencies] @@ -52,11 +52,11 @@ command = { path = "../command", features = ["test-util"] } [dev-dependencies] anyhow.workspace = true # Enable the `test-util` feature for our own package when running tests. -warp_completer = { path = ".", features = ["test-util"] } +galaxy_completer = { path = ".", features = ["test-util"] } [features] # Enables the completions-on-js implementation of the completion engine. # Note that this feature is only compatible with non-wasm targets. -v2 = ["dep:warp_js", "dep:rquickjs"] +v2 = ["dep:galaxy_js", "dep:rquickjs"] # Enables utilities for testing. -test-util = ["warp_js?/test-util"] +test-util = ["galaxy_js?/test-util"] diff --git a/crates/warp_completer/src/completer/coalesce.rs b/crates/galaxy_completer/src/completer/coalesce.rs similarity index 100% rename from crates/warp_completer/src/completer/coalesce.rs rename to crates/galaxy_completer/src/completer/coalesce.rs diff --git a/crates/warp_completer/src/completer/context/mod.rs b/crates/galaxy_completer/src/completer/context/mod.rs similarity index 98% rename from crates/warp_completer/src/completer/context/mod.rs rename to crates/galaxy_completer/src/completer/context/mod.rs index 0afd2d15..78833182 100644 --- a/crates/warp_completer/src/completer/context/mod.rs +++ b/crates/galaxy_completer/src/completer/context/mod.rs @@ -12,9 +12,9 @@ use anyhow::Result; use async_trait::async_trait; use smol_str::SmolStr; use typed_path::{TypedPath, TypedPathBuf}; -use warp_core::command::ExitCode; -use warp_util::path::{EscapeChar, ShellFamily}; -use warpui::platform::OperatingSystem; +use galaxy_core::command::ExitCode; +use galaxy_util::path::{EscapeChar, ShellFamily}; +use galaxyui::platform::OperatingSystem; use crate::{completer::TopLevelCommandCaseSensitivity, signatures::CommandRegistry}; diff --git a/crates/warp_completer/src/completer/context/v2.rs b/crates/galaxy_completer/src/completer/context/v2.rs similarity index 95% rename from crates/warp_completer/src/completer/context/v2.rs rename to crates/galaxy_completer/src/completer/context/v2.rs index 71b3eb39..b89a21ce 100644 --- a/crates/warp_completer/src/completer/context/v2.rs +++ b/crates/galaxy_completer/src/completer/context/v2.rs @@ -1,6 +1,6 @@ use async_trait::async_trait; use serde::{de::DeserializeOwned, Serialize}; -use warp_js::{JsFunctionId, SerializedJsValue, TypedJsFunctionRef}; +use galaxy_js::{JsFunctionId, SerializedJsValue, TypedJsFunctionRef}; #[derive(thiserror::Error, Debug)] pub enum JsExecutionError { diff --git a/crates/warp_completer/src/completer/describe.rs b/crates/galaxy_completer/src/completer/describe.rs similarity index 99% rename from crates/warp_completer/src/completer/describe.rs rename to crates/galaxy_completer/src/completer/describe.rs index 12d2e487..cfd695d0 100644 --- a/crates/warp_completer/src/completer/describe.rs +++ b/crates/galaxy_completer/src/completer/describe.rs @@ -1,6 +1,6 @@ use itertools::Itertools; use string_offset::ByteOffset; -use warpui::platform::OperatingSystem; +use galaxyui::platform::OperatingSystem; use crate::{ completer::suggest::MatchRequirement, diff --git a/crates/warp_completer/src/completer/describe_test.rs b/crates/galaxy_completer/src/completer/describe_test.rs similarity index 99% rename from crates/warp_completer/src/completer/describe_test.rs rename to crates/galaxy_completer/src/completer/describe_test.rs index fbabc43e..387f94bf 100644 --- a/crates/warp_completer/src/completer/describe_test.rs +++ b/crates/galaxy_completer/src/completer/describe_test.rs @@ -42,7 +42,7 @@ fn describe_at_cursor( pos: ByteOffset, ctx: &T, ) -> Option { - warpui::r#async::block_on(describe(line, pos, ctx)) + galaxyui::r#async::block_on(describe(line, pos, ctx)) } #[test] diff --git a/crates/warp_completer/src/completer/engine/argument/legacy.rs b/crates/galaxy_completer/src/completer/engine/argument/legacy.rs similarity index 99% rename from crates/warp_completer/src/completer/engine/argument/legacy.rs rename to crates/galaxy_completer/src/completer/engine/argument/legacy.rs index 52a36e8e..a9746b4a 100644 --- a/crates/warp_completer/src/completer/engine/argument/legacy.rs +++ b/crates/galaxy_completer/src/completer/engine/argument/legacy.rs @@ -8,8 +8,8 @@ use warp_command_signatures::{ Argument, ArgumentType, DynamicCompletionData, Generator, GeneratorProcess, Signature, Template, TemplateFilter, TemplateType, }; -use warp_core::features::FeatureFlag; -use warp_util::path::ShellFamily; +use galaxy_core::features::FeatureFlag; +use galaxy_util::path::ShellFamily; use crate::completer::{ context::CompletionContext, diff --git a/crates/warp_completer/src/completer/engine/argument/mod.rs b/crates/galaxy_completer/src/completer/engine/argument/mod.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/argument/mod.rs rename to crates/galaxy_completer/src/completer/engine/argument/mod.rs diff --git a/crates/warp_completer/src/completer/engine/argument/v2.rs b/crates/galaxy_completer/src/completer/engine/argument/v2.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/argument/v2.rs rename to crates/galaxy_completer/src/completer/engine/argument/v2.rs diff --git a/crates/warp_completer/src/completer/engine/command.rs b/crates/galaxy_completer/src/completer/engine/command.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/command.rs rename to crates/galaxy_completer/src/completer/engine/command.rs diff --git a/crates/warp_completer/src/completer/engine/flag/legacy.rs b/crates/galaxy_completer/src/completer/engine/flag/legacy.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/flag/legacy.rs rename to crates/galaxy_completer/src/completer/engine/flag/legacy.rs diff --git a/crates/warp_completer/src/completer/engine/flag/mod.rs b/crates/galaxy_completer/src/completer/engine/flag/mod.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/flag/mod.rs rename to crates/galaxy_completer/src/completer/engine/flag/mod.rs diff --git a/crates/warp_completer/src/completer/engine/flag/v2.rs b/crates/galaxy_completer/src/completer/engine/flag/v2.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/flag/v2.rs rename to crates/galaxy_completer/src/completer/engine/flag/v2.rs diff --git a/crates/warp_completer/src/completer/engine/legacy.rs b/crates/galaxy_completer/src/completer/engine/legacy.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/legacy.rs rename to crates/galaxy_completer/src/completer/engine/legacy.rs diff --git a/crates/warp_completer/src/completer/engine/mod.rs b/crates/galaxy_completer/src/completer/engine/mod.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/mod.rs rename to crates/galaxy_completer/src/completer/engine/mod.rs diff --git a/crates/warp_completer/src/completer/engine/path.rs b/crates/galaxy_completer/src/completer/engine/path.rs similarity index 99% rename from crates/warp_completer/src/completer/engine/path.rs rename to crates/galaxy_completer/src/completer/engine/path.rs index a650e942..0245ee01 100644 --- a/crates/warp_completer/src/completer/engine/path.rs +++ b/crates/galaxy_completer/src/completer/engine/path.rs @@ -6,7 +6,7 @@ use lazy_static::lazy_static; use serde::{Deserialize, Serialize}; use typed_path::{TypedPath, TypedPathBuf}; use warp_command_signatures::{IconType, PathSuggestionType}; -use warp_util::path::HOME_DIR_ENV_VAR_PREFIX; +use galaxy_util::path::HOME_DIR_ENV_VAR_PREFIX; use crate::completer::suggest::Priority; use crate::completer::{ diff --git a/crates/warp_completer/src/completer/engine/path_test.rs b/crates/galaxy_completer/src/completer/engine/path_test.rs similarity index 94% rename from crates/warp_completer/src/completer/engine/path_test.rs rename to crates/galaxy_completer/src/completer/engine/path_test.rs index adf6ed25..4009b8ba 100644 --- a/crates/warp_completer/src/completer/engine/path_test.rs +++ b/crates/galaxy_completer/src/completer/engine/path_test.rs @@ -98,7 +98,7 @@ pub fn test_sorted_paths_relative_to() { ]); assert_eq!( - warpui::r#async::block_on(sorted_paths_relative_to( + galaxyui::r#async::block_on(sorted_paths_relative_to( &ParsedToken::empty(), MatchStrategy::CaseInsensitive, &ctx @@ -135,7 +135,7 @@ pub fn test_sorted_paths_relative_to() { ); assert_eq!( - warpui::r#async::block_on(sorted_paths_relative_to( + galaxyui::r#async::block_on(sorted_paths_relative_to( &ParsedToken::new("sr"), MatchStrategy::CaseInsensitive, &ctx @@ -154,7 +154,7 @@ pub fn test_sorted_paths_relative_to() { ); assert_eq!( - warpui::r#async::block_on(sorted_paths_relative_to( + galaxyui::r#async::block_on(sorted_paths_relative_to( &ParsedToken::new("."), MatchStrategy::CaseInsensitive, &ctx @@ -201,7 +201,7 @@ pub fn test_sorted_directories_relative_to() { ]); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::empty(), MatchStrategy::CaseInsensitive, &ctx @@ -230,7 +230,7 @@ pub fn test_sorted_directories_relative_to() { ); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::new("s"), MatchStrategy::CaseInsensitive, &ctx @@ -264,7 +264,7 @@ pub fn test_sorted_paths_case_insensitive_ordering() { file_entry("cherry.txt"), ]); - let suggestions: Vec = warpui::r#async::block_on(sorted_paths_relative_to( + let suggestions: Vec = galaxyui::r#async::block_on(sorted_paths_relative_to( &ParsedToken::empty(), MatchStrategy::CaseInsensitive, &ctx, @@ -292,7 +292,7 @@ pub fn test_path_completions_with_special_characters_relative_to_cwd() { let ctx = mock_path_completion_ctx_special_characters(); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::empty(), MatchStrategy::CaseInsensitive, &ctx @@ -337,7 +337,7 @@ pub fn test_path_completions_with_special_characters_relative_to_cwd() { pub fn test_path_completions_with_special_character_case_insensitive() { let ctx = mock_path_completion_ctx_special_characters(); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::new("~"), MatchStrategy::CaseInsensitive, &ctx @@ -374,7 +374,7 @@ pub fn test_path_completions_with_special_characters_fuzzy() { let ctx = mock_path_completion_ctx_special_characters(); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::new("~"), MatchStrategy::Fuzzy, &ctx @@ -427,7 +427,7 @@ pub fn test_path_completions_tilde_expansion() { let ctx = mock_path_completion_ctx_special_characters_home_dir(); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::new("~/"), MatchStrategy::Fuzzy, &ctx @@ -453,7 +453,7 @@ pub fn test_path_completions_home_env_var_special_characters() { let ctx = mock_path_completion_ctx_special_characters_home_dir(); assert_eq!( - warpui::r#async::block_on(sorted_directories_relative_to( + galaxyui::r#async::block_on(sorted_directories_relative_to( &ParsedToken::new("$HOME/"), MatchStrategy::Fuzzy, &ctx diff --git a/crates/warp_completer/src/completer/engine/test.rs b/crates/galaxy_completer/src/completer/engine/test.rs similarity index 99% rename from crates/warp_completer/src/completer/engine/test.rs rename to crates/galaxy_completer/src/completer/engine/test.rs index 8ba66b88..e2a6fb49 100644 --- a/crates/warp_completer/src/completer/engine/test.rs +++ b/crates/galaxy_completer/src/completer/engine/test.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warp_util::path::EscapeChar; +use galaxy_util::path::EscapeChar; use super::LocationType; use crate::completer::testing::FakeCompletionContext; diff --git a/crates/warp_completer/src/completer/engine/v2.rs b/crates/galaxy_completer/src/completer/engine/v2.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/v2.rs rename to crates/galaxy_completer/src/completer/engine/v2.rs diff --git a/crates/warp_completer/src/completer/engine/variable.rs b/crates/galaxy_completer/src/completer/engine/variable.rs similarity index 100% rename from crates/warp_completer/src/completer/engine/variable.rs rename to crates/galaxy_completer/src/completer/engine/variable.rs diff --git a/crates/warp_completer/src/completer/matchers.rs b/crates/galaxy_completer/src/completer/matchers.rs similarity index 100% rename from crates/warp_completer/src/completer/matchers.rs rename to crates/galaxy_completer/src/completer/matchers.rs diff --git a/crates/warp_completer/src/completer/matchers_test.rs b/crates/galaxy_completer/src/completer/matchers_test.rs similarity index 100% rename from crates/warp_completer/src/completer/matchers_test.rs rename to crates/galaxy_completer/src/completer/matchers_test.rs diff --git a/crates/warp_completer/src/completer/mod.rs b/crates/galaxy_completer/src/completer/mod.rs similarity index 100% rename from crates/warp_completer/src/completer/mod.rs rename to crates/galaxy_completer/src/completer/mod.rs diff --git a/crates/warp_completer/src/completer/suggest/alias.rs b/crates/galaxy_completer/src/completer/suggest/alias.rs similarity index 100% rename from crates/warp_completer/src/completer/suggest/alias.rs rename to crates/galaxy_completer/src/completer/suggest/alias.rs diff --git a/crates/warp_completer/src/completer/suggest/alias_test.rs b/crates/galaxy_completer/src/completer/suggest/alias_test.rs similarity index 86% rename from crates/warp_completer/src/completer/suggest/alias_test.rs rename to crates/galaxy_completer/src/completer/suggest/alias_test.rs index 68cfbfc3..2d8d5f2e 100644 --- a/crates/warp_completer/src/completer/suggest/alias_test.rs +++ b/crates/galaxy_completer/src/completer/suggest/alias_test.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use warp_util::path::ShellFamily; +use galaxy_util::path::ShellFamily; use crate::completer::expand_command_aliases; use crate::completer::testing::{FakeCompletionContext, MockGeneratorContext}; @@ -18,7 +18,7 @@ pub fn test_expand_command_aliases() { .with_aliases(aliases); // Simple case: there's a command we don't have an alias for - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "normalCommandWithoutAlias ", false, &ctx, @@ -31,7 +31,7 @@ pub fn test_expand_command_aliases() { assert!(result.signature_for_completions.is_none()); // We have a top-level "aliasForTest" which expands to "test". - let result = warpui::r#async::block_on(expand_command_aliases("aliasForTest ", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("aliasForTest ", false, &ctx)); assert_eq!(result.expanded_command_line, "test "); assert_eq!(result.tokens_from_command, vec!["test"]); #[cfg(not(feature = "v2"))] @@ -47,7 +47,7 @@ pub fn test_expand_command_aliases() { #[cfg(not(feature = "v2"))] { // The test signature has an alias function, which expands subcommand "twelve" to "one". - let result = warpui::r#async::block_on(expand_command_aliases("test twelve ", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("test twelve ", false, &ctx)); assert_eq!(result.expanded_command_line, "test one "); assert_eq!(result.tokens_from_command, vec!["test", "one"]); // Should be using the subcommand signature for completions @@ -62,7 +62,7 @@ pub fn test_expand_command_aliases() { // We have a top-level aliasForTest which expands to test, and then the test signature expands "twelve" to "one" let result = - warpui::r#async::block_on(expand_command_aliases("aliasForTest twelve ", false, &ctx)); + galaxyui::r#async::block_on(expand_command_aliases("aliasForTest twelve ", false, &ctx)); assert_eq!(result.expanded_command_line, "test one "); assert_eq!(result.tokens_from_command, vec!["test", "one"]); // Should be using the subcommand signature for completions @@ -89,7 +89,7 @@ pub fn test_expand_command_aliases_env_vars() { .with_aliases(aliases); // We have a top-level "aliasForTest" which expands to "test". - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "ENV1=VAL1 ENV2=VAL2 aliasForTest ", false, &ctx, @@ -118,7 +118,7 @@ pub fn test_expand_command_aliases_env_vars() { #[cfg(not(feature = "v2"))] { // The test signature has an alias function, which expands subcommand "twelve" to "one". - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "ENV1=VAL1 ENV2=VAL2 test twelve ", false, &ctx, @@ -148,7 +148,7 @@ pub fn test_expand_command_aliases_env_vars() { ); // We have a top-level aliasForTest which expands to test, and then the test signature expands "twelve" to "one" - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "ENV1=VAL1 ENV2=VAL2 aliasForTest twelve ", false, &ctx, @@ -191,13 +191,13 @@ pub fn test_expand_command_aliases_should_not_expand_if_no_space_after_alias() { .with_aliases(aliases); // We have a top-level "aliasForTest" which expands to "test", but there's no trailing space so we shouldn't expand. - let result = warpui::r#async::block_on(expand_command_aliases("aliasForTest", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("aliasForTest", false, &ctx)); assert_eq!(result.expanded_command_line, "aliasForTest"); assert_eq!(result.tokens_from_command, vec!["aliasForTest"]); assert!(result.signature_for_completions.is_none()); // The test signature has an alias function which expands subcommand "twelve" to "one", but there's no trailing space so we shouldn't expand. - let result = warpui::r#async::block_on(expand_command_aliases("test twelve", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("test twelve", false, &ctx)); assert_eq!(result.expanded_command_line, "test twelve"); assert_eq!(result.tokens_from_command, vec!["test", "twelve"]); // "twelve" isn't a valid subcommand, so we should use the "test" signature. @@ -213,7 +213,7 @@ pub fn test_expand_command_aliases_should_not_expand_if_no_space_after_alias() { // We have a top-level aliasForTest which expands to test. But the test signature does not expand "twelve" to "one" because there's no trailing space. let result = - warpui::r#async::block_on(expand_command_aliases("aliasForTest twelve", false, &ctx)); + galaxyui::r#async::block_on(expand_command_aliases("aliasForTest twelve", false, &ctx)); assert_eq!(result.expanded_command_line, "test twelve"); assert_eq!(result.tokens_from_command, vec!["test", "twelve"]); // "twelve" isn't a valid subcommand, so we should use the "test" signature. @@ -240,13 +240,13 @@ pub fn test_expand_command_aliases_case_insensitive_for_powershell() { .with_aliases(aliases) .with_shell_family(ShellFamily::PowerShell); - let result = warpui::r#async::block_on(expand_command_aliases("ALIASFORTEST ", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("ALIASFORTEST ", false, &ctx)); assert_eq!(result.expanded_command_line, "test "); - let result = warpui::r#async::block_on(expand_command_aliases("aliasfortest ", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("aliasfortest ", false, &ctx)); assert_eq!(result.expanded_command_line, "test "); - let result = warpui::r#async::block_on(expand_command_aliases("ALIASFORTEST", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("ALIASFORTEST", false, &ctx)); assert_eq!(result.expanded_command_line, "ALIASFORTEST"); } @@ -262,10 +262,10 @@ pub fn test_expand_command_aliases_case_sensitive_for_posix() { .with_aliases(aliases) .with_shell_family(ShellFamily::Posix); - let result = warpui::r#async::block_on(expand_command_aliases("ALIASFORTEST ", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("ALIASFORTEST ", false, &ctx)); assert_eq!(result.expanded_command_line, "ALIASFORTEST "); - let result = warpui::r#async::block_on(expand_command_aliases("aliasForTest ", false, &ctx)); + let result = galaxyui::r#async::block_on(expand_command_aliases("aliasForTest ", false, &ctx)); assert_eq!(result.expanded_command_line, "test "); } @@ -281,7 +281,7 @@ pub fn test_expand_command_aliases_multiple_commands() { .with_aliases(aliases); // We have a top-level "aliasForTest" which expands to "test". - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "kubectl get pod && ENV1=VAL1 ENV2=VAL2 aliasForTest ", false, &ctx, @@ -294,7 +294,7 @@ pub fn test_expand_command_aliases_multiple_commands() { #[cfg(not(feature = "v2"))] { // The test signature has an alias function, which expands subcommand "twelve" to "one". - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "kubectl get pod && ENV1=VAL1 ENV2=VAL2 test twelve ", false, &ctx, @@ -307,7 +307,7 @@ pub fn test_expand_command_aliases_multiple_commands() { // Multiple commands should all have their aliases expanded. // It is a known issue that only the last command is expanded currently. // TODO(INT-830): fix this case, it should expand to "ENV1=VAL1 ENV2=VAL2 test && ENV3=VAL3 ENV3=VAL3 test " - let result = warpui::r#async::block_on(expand_command_aliases( + let result = galaxyui::r#async::block_on(expand_command_aliases( "ENV1=VAL1 ENV2=VAL2 aliasForTest && ENV3=VAL3 ENV3=VAL3 aliasForTest ", false, &ctx, diff --git a/crates/warp_completer/src/completer/suggest/legacy.rs b/crates/galaxy_completer/src/completer/suggest/legacy.rs similarity index 100% rename from crates/warp_completer/src/completer/suggest/legacy.rs rename to crates/galaxy_completer/src/completer/suggest/legacy.rs diff --git a/crates/warp_completer/src/completer/suggest/mod.rs b/crates/galaxy_completer/src/completer/suggest/mod.rs similarity index 99% rename from crates/warp_completer/src/completer/suggest/mod.rs rename to crates/galaxy_completer/src/completer/suggest/mod.rs index bb18a45f..4c79193e 100644 --- a/crates/warp_completer/src/completer/suggest/mod.rs +++ b/crates/galaxy_completer/src/completer/suggest/mod.rs @@ -7,7 +7,7 @@ use alias::{expand_command_aliases, AliasExpansionResult}; pub use priority::Priority; use imp::*; -use warp_core::ui::theme::AnsiColorIdentifier; +use galaxy_core::ui::theme::AnsiColorIdentifier; use std::cmp::Ordering; use std::collections::HashMap; diff --git a/crates/warp_completer/src/completer/suggest/priority/mod.rs b/crates/galaxy_completer/src/completer/suggest/priority/mod.rs similarity index 100% rename from crates/warp_completer/src/completer/suggest/priority/mod.rs rename to crates/galaxy_completer/src/completer/suggest/priority/mod.rs diff --git a/crates/warp_completer/src/completer/suggest/priority/priority_test.rs b/crates/galaxy_completer/src/completer/suggest/priority/priority_test.rs similarity index 100% rename from crates/warp_completer/src/completer/suggest/priority/priority_test.rs rename to crates/galaxy_completer/src/completer/suggest/priority/priority_test.rs diff --git a/crates/warp_completer/src/completer/suggest/priority/v2.rs b/crates/galaxy_completer/src/completer/suggest/priority/v2.rs similarity index 100% rename from crates/warp_completer/src/completer/suggest/priority/v2.rs rename to crates/galaxy_completer/src/completer/suggest/priority/v2.rs diff --git a/crates/warp_completer/src/completer/suggest/test.rs b/crates/galaxy_completer/src/completer/suggest/test.rs similarity index 99% rename from crates/warp_completer/src/completer/suggest/test.rs rename to crates/galaxy_completer/src/completer/suggest/test.rs index 54ea4208..f1ddd05c 100644 --- a/crates/warp_completer/src/completer/suggest/test.rs +++ b/crates/galaxy_completer/src/completer/suggest/test.rs @@ -51,7 +51,7 @@ fn suggestions_for_test( options: CompleterOptions, ctx: &T, ) -> Option { - warpui::r#async::block_on(suggestions(line, pos, None, options, ctx)) + galaxyui::r#async::block_on(suggestions(line, pos, None, options, ctx)) } /// Runs the completer at the end of the given line and returns the associated @@ -1273,7 +1273,7 @@ pub fn test_env_var_completion() { ) .with_entries( pwd.join("target/debug"), - [EngineDirEntry::test_file("warpui")], + [EngineDirEntry::test_file("galaxyui")], ); let env_vars = HashSet::from_iter([("HOME".into()), ("BAR".into()), ("BAZZ".into())]); @@ -1352,7 +1352,7 @@ pub fn test_alias_completion() { ) .with_entries( pwd.join("target/debug"), - [EngineDirEntry::test_file("warpui")], + [EngineDirEntry::test_file("galaxyui")], ); let aliases = HashMap::from_iter([ @@ -1446,7 +1446,7 @@ pub fn test_path_fallback() { ) .with_entries( pwd.join("target/debug"), - [EngineDirEntry::test_file("warpui")], + [EngineDirEntry::test_file("galaxyui")], ); let ctx = FakeCompletionContext::new(registry).with_path_completion_context(path_ctx); @@ -1546,7 +1546,7 @@ pub fn test_completions() { ) .with_entries( pwd.join("target/debug"), - [EngineDirEntry::test_file("warpui")], + [EngineDirEntry::test_file("galaxyui")], ); let registry = create_test_command_registry([git_signature(), cd_signature()]); diff --git a/crates/warp_completer/src/completer/suggest/v2.rs b/crates/galaxy_completer/src/completer/suggest/v2.rs similarity index 100% rename from crates/warp_completer/src/completer/suggest/v2.rs rename to crates/galaxy_completer/src/completer/suggest/v2.rs diff --git a/crates/warp_completer/src/completer/testing/mod.rs b/crates/galaxy_completer/src/completer/testing/mod.rs similarity index 99% rename from crates/warp_completer/src/completer/testing/mod.rs rename to crates/galaxy_completer/src/completer/testing/mod.rs index f0b39dd8..b531e08f 100644 --- a/crates/warp_completer/src/completer/testing/mod.rs +++ b/crates/galaxy_completer/src/completer/testing/mod.rs @@ -13,8 +13,8 @@ use async_trait::async_trait; use smol_str::SmolStr; use typed_path::{TypedPath, TypedPathBuf}; use warp_command_signatures::IconType; -use warp_core::command::ExitCode; -use warp_util::path::{EscapeChar, ShellFamily, TEST_SESSION_HOME_DIR}; +use galaxy_core::command::ExitCode; +use galaxy_util::path::{EscapeChar, ShellFamily, TEST_SESSION_HOME_DIR}; use crate::{ completer::{ diff --git a/crates/warp_completer/src/completer/testing/v2.rs b/crates/galaxy_completer/src/completer/testing/v2.rs similarity index 97% rename from crates/warp_completer/src/completer/testing/v2.rs rename to crates/galaxy_completer/src/completer/testing/v2.rs index ab17e724..9b20539e 100644 --- a/crates/warp_completer/src/completer/testing/v2.rs +++ b/crates/galaxy_completer/src/completer/testing/v2.rs @@ -1,5 +1,5 @@ use async_trait::async_trait; -use warp_js::{JsFunctionId, SerializedJsValue}; +use galaxy_js::{JsFunctionId, SerializedJsValue}; use crate::{ completer::context::{JsExecutionContext, JsExecutionError}, diff --git a/crates/warp_completer/src/completer/tests.rs b/crates/galaxy_completer/src/completer/tests.rs similarity index 100% rename from crates/warp_completer/src/completer/tests.rs rename to crates/galaxy_completer/src/completer/tests.rs diff --git a/crates/warp_completer/src/lib.rs b/crates/galaxy_completer/src/lib.rs similarity index 100% rename from crates/warp_completer/src/lib.rs rename to crates/galaxy_completer/src/lib.rs diff --git a/crates/warp_completer/src/meta.rs b/crates/galaxy_completer/src/meta.rs similarity index 100% rename from crates/warp_completer/src/meta.rs rename to crates/galaxy_completer/src/meta.rs diff --git a/crates/warp_completer/src/meta_test.rs b/crates/galaxy_completer/src/meta_test.rs similarity index 100% rename from crates/warp_completer/src/meta_test.rs rename to crates/galaxy_completer/src/meta_test.rs diff --git a/crates/warp_completer/src/parsers/README.md b/crates/galaxy_completer/src/parsers/README.md similarity index 100% rename from crates/warp_completer/src/parsers/README.md rename to crates/galaxy_completer/src/parsers/README.md diff --git a/crates/warp_completer/src/parsers/errors.rs b/crates/galaxy_completer/src/parsers/errors.rs similarity index 100% rename from crates/warp_completer/src/parsers/errors.rs rename to crates/galaxy_completer/src/parsers/errors.rs diff --git a/crates/warp_completer/src/parsers/hir/mod.rs b/crates/galaxy_completer/src/parsers/hir/mod.rs similarity index 100% rename from crates/warp_completer/src/parsers/hir/mod.rs rename to crates/galaxy_completer/src/parsers/hir/mod.rs diff --git a/crates/warp_completer/src/parsers/legacy.rs b/crates/galaxy_completer/src/parsers/legacy.rs similarity index 100% rename from crates/warp_completer/src/parsers/legacy.rs rename to crates/galaxy_completer/src/parsers/legacy.rs diff --git a/crates/warp_completer/src/parsers/mod.rs b/crates/galaxy_completer/src/parsers/mod.rs similarity index 100% rename from crates/warp_completer/src/parsers/mod.rs rename to crates/galaxy_completer/src/parsers/mod.rs diff --git a/crates/warp_completer/src/parsers/simple/convert.rs b/crates/galaxy_completer/src/parsers/simple/convert.rs similarity index 100% rename from crates/warp_completer/src/parsers/simple/convert.rs rename to crates/galaxy_completer/src/parsers/simple/convert.rs diff --git a/crates/warp_completer/src/parsers/simple/iter.rs b/crates/galaxy_completer/src/parsers/simple/iter.rs similarity index 100% rename from crates/warp_completer/src/parsers/simple/iter.rs rename to crates/galaxy_completer/src/parsers/simple/iter.rs diff --git a/crates/warp_completer/src/parsers/simple/lexer.rs b/crates/galaxy_completer/src/parsers/simple/lexer.rs similarity index 100% rename from crates/warp_completer/src/parsers/simple/lexer.rs rename to crates/galaxy_completer/src/parsers/simple/lexer.rs diff --git a/crates/warp_completer/src/parsers/simple/lexer_test.rs b/crates/galaxy_completer/src/parsers/simple/lexer_test.rs similarity index 100% rename from crates/warp_completer/src/parsers/simple/lexer_test.rs rename to crates/galaxy_completer/src/parsers/simple/lexer_test.rs diff --git a/crates/warp_completer/src/parsers/simple/mod.rs b/crates/galaxy_completer/src/parsers/simple/mod.rs similarity index 99% rename from crates/warp_completer/src/parsers/simple/mod.rs rename to crates/galaxy_completer/src/parsers/simple/mod.rs index 4dc2b37b..cfde19e5 100644 --- a/crates/warp_completer/src/parsers/simple/mod.rs +++ b/crates/galaxy_completer/src/parsers/simple/mod.rs @@ -9,7 +9,7 @@ mod token; use crate::parsers::LiteCommand; use lexer::Lexer; use parser::Parser; -use warp_util::path::EscapeChar; +use galaxy_util::path::EscapeChar; use string_offset::ByteOffset; diff --git a/crates/warp_completer/src/parsers/simple/parser.rs b/crates/galaxy_completer/src/parsers/simple/parser.rs similarity index 100% rename from crates/warp_completer/src/parsers/simple/parser.rs rename to crates/galaxy_completer/src/parsers/simple/parser.rs diff --git a/crates/warp_completer/src/parsers/simple/parser_test.rs b/crates/galaxy_completer/src/parsers/simple/parser_test.rs similarity index 99% rename from crates/warp_completer/src/parsers/simple/parser_test.rs rename to crates/galaxy_completer/src/parsers/simple/parser_test.rs index b9d136f2..bdda3634 100644 --- a/crates/warp_completer/src/parsers/simple/parser_test.rs +++ b/crates/galaxy_completer/src/parsers/simple/parser_test.rs @@ -1,6 +1,6 @@ use std::collections::HashSet; -use warp_util::path::EscapeChar; +use galaxy_util::path::EscapeChar; use crate::parsers::simple::{decompose_command, top_level_command}; diff --git a/crates/warp_completer/src/parsers/simple/token.rs b/crates/galaxy_completer/src/parsers/simple/token.rs similarity index 100% rename from crates/warp_completer/src/parsers/simple/token.rs rename to crates/galaxy_completer/src/parsers/simple/token.rs diff --git a/crates/warp_completer/src/parsers/test.rs b/crates/galaxy_completer/src/parsers/test.rs similarity index 99% rename from crates/warp_completer/src/parsers/test.rs rename to crates/galaxy_completer/src/parsers/test.rs index 9db6fe99..e904e2ad 100644 --- a/crates/warp_completer/src/parsers/test.rs +++ b/crates/galaxy_completer/src/parsers/test.rs @@ -1,5 +1,5 @@ use itertools::Itertools; -use warp_util::path::EscapeChar; +use galaxy_util::path::EscapeChar; use crate::{ parsers::{ diff --git a/crates/warp_completer/src/parsers/v2.rs b/crates/galaxy_completer/src/parsers/v2.rs similarity index 100% rename from crates/warp_completer/src/parsers/v2.rs rename to crates/galaxy_completer/src/parsers/v2.rs diff --git a/crates/warp_completer/src/signatures/clap.rs b/crates/galaxy_completer/src/signatures/clap.rs similarity index 100% rename from crates/warp_completer/src/signatures/clap.rs rename to crates/galaxy_completer/src/signatures/clap.rs diff --git a/crates/warp_completer/src/signatures/legacy/mod.rs b/crates/galaxy_completer/src/signatures/legacy/mod.rs similarity index 95% rename from crates/warp_completer/src/signatures/legacy/mod.rs rename to crates/galaxy_completer/src/signatures/legacy/mod.rs index 4096ee96..5536b1c5 100644 --- a/crates/warp_completer/src/signatures/legacy/mod.rs +++ b/crates/galaxy_completer/src/signatures/legacy/mod.rs @@ -1,6 +1,6 @@ use std::sync::{Arc, OnceLock}; -use warp_core::channel::Channel; +use galaxy_core::channel::Channel; pub mod registry; @@ -50,7 +50,7 @@ impl CommandRegistry { /// Register signatures for Warp CLI commands. /// - /// Ideally this would be done outside of the `warp_completer` crate, but it's not currently + /// Ideally this would be done outside of the `galaxy_completer` crate, but it's not currently /// possible to configure the shared [`Self::global_instance`]. fn register_warp_signatures(registry: &Self) { // We use the current instance's signature for each channel. This is not entirely accurate - for example: @@ -61,7 +61,7 @@ impl CommandRegistry { for channel in channels { let bin_name = channel.cli_command_name(); - let mut clap_cmd = warp_cli::Args::clap_command(); + let mut clap_cmd = galaxy_cli::Args::clap_command(); let signature = crate::signatures::clap::signature_from_clap_command(&mut clap_cmd, bin_name); registry.register_signature(signature); diff --git a/crates/warp_completer/src/signatures/legacy/registry.rs b/crates/galaxy_completer/src/signatures/legacy/registry.rs similarity index 100% rename from crates/warp_completer/src/signatures/legacy/registry.rs rename to crates/galaxy_completer/src/signatures/legacy/registry.rs diff --git a/crates/warp_completer/src/signatures/legacy/registry_test.rs b/crates/galaxy_completer/src/signatures/legacy/registry_test.rs similarity index 97% rename from crates/warp_completer/src/signatures/legacy/registry_test.rs rename to crates/galaxy_completer/src/signatures/legacy/registry_test.rs index 70348122..b73e1a6c 100644 --- a/crates/warp_completer/src/signatures/legacy/registry_test.rs +++ b/crates/galaxy_completer/src/signatures/legacy/registry_test.rs @@ -192,7 +192,7 @@ fn test_alias_expansion_path_skips_flag_with_value_before_subcommand() { let registry = create_test_command_registry([kubectl]); let ctx = FakeCompletionContext::new(registry).with_case_sensitivity(); - let result = warpui::r#async::block_on(ctx.command_registry().signature_with_alias_expansion( + let result = galaxyui::r#async::block_on(ctx.command_registry().signature_with_alias_expansion( &["kubectl", "-n", "default", "get"], true, &ctx, @@ -214,7 +214,7 @@ fn test_alias_expansion_path_skips_multiple_flags_before_subcommand() { let registry = create_test_command_registry([kubectl]); let ctx = FakeCompletionContext::new(registry).with_case_sensitivity(); - let result = warpui::r#async::block_on(ctx.command_registry().signature_with_alias_expansion( + let result = galaxyui::r#async::block_on(ctx.command_registry().signature_with_alias_expansion( &[ "kubectl", "--context", diff --git a/crates/warp_completer/src/signatures/mod.rs b/crates/galaxy_completer/src/signatures/mod.rs similarity index 100% rename from crates/warp_completer/src/signatures/mod.rs rename to crates/galaxy_completer/src/signatures/mod.rs diff --git a/crates/warp_completer/src/signatures/testing/legacy.rs b/crates/galaxy_completer/src/signatures/testing/legacy.rs similarity index 99% rename from crates/warp_completer/src/signatures/testing/legacy.rs rename to crates/galaxy_completer/src/signatures/testing/legacy.rs index 85f19641..d1301e90 100644 --- a/crates/warp_completer/src/signatures/testing/legacy.rs +++ b/crates/galaxy_completer/src/signatures/testing/legacy.rs @@ -15,7 +15,7 @@ use warp_command_signatures::{ Generator, GeneratorName, GeneratorResults, Importance, IsArgumentOptional, Opt, Order, ParserDirectives, Priority, Signature, Suggestion as MetadataSuggestion, Template, }; -use warp_util::path::ShellFamily; +use galaxy_util::path::ShellFamily; use super::{TEST_ALIAS_COMMAND, TEST_GENERATOR_1_COMMAND, TEST_GENERATOR_2_COMMAND}; diff --git a/crates/warp_completer/src/signatures/testing/mod.rs b/crates/galaxy_completer/src/signatures/testing/mod.rs similarity index 100% rename from crates/warp_completer/src/signatures/testing/mod.rs rename to crates/galaxy_completer/src/signatures/testing/mod.rs diff --git a/crates/warp_completer/src/signatures/testing/v2.rs b/crates/galaxy_completer/src/signatures/testing/v2.rs similarity index 99% rename from crates/warp_completer/src/signatures/testing/v2.rs rename to crates/galaxy_completer/src/signatures/testing/v2.rs index f900e345..8d6cf3c3 100644 --- a/crates/warp_completer/src/signatures/testing/v2.rs +++ b/crates/galaxy_completer/src/signatures/testing/v2.rs @@ -3,7 +3,7 @@ //! Each signature in this file should be semantically equivalent with a command signature returned //! by a function of the same name in `super::legacy`; this is to ensure that the same test //! coverage can run with the "v2" Cargo feature both enabled and disabled. -use warp_js::TypedJsFunctionRef; +use galaxy_js::TypedJsFunctionRef; use crate::signatures::{ Argument, ArgumentValue, Arity, Command, CommandSignature, GeneratorFn, GeneratorResults, diff --git a/crates/warp_completer/src/signatures/v2/js.rs b/crates/galaxy_completer/src/signatures/v2/js.rs similarity index 92% rename from crates/warp_completer/src/signatures/v2/js.rs rename to crates/galaxy_completer/src/signatures/v2/js.rs index d4a609cf..a5fc7a89 100644 --- a/crates/warp_completer/src/signatures/v2/js.rs +++ b/crates/galaxy_completer/src/signatures/v2/js.rs @@ -1,9 +1,9 @@ //! Contains `FromWarpJs` trait implementations for converting JavaScript command signatures to -//! `warp_completer::signatures::CommandSignature`s, as well as `IntoWarpJs` implementations for +//! `galaxy_completer::signatures::CommandSignature`s, as well as `IntoWarpJs` implementations for //! Rust structs that may be passed to JS functions defined on the Command Signature (e.g. //! `GeneratorCompletionContext`). use rquickjs::{FromJs, Function, Object, Value}; -use warp_js::{ +use galaxy_js::{ util::{get_one_or_more_optional, get_one_or_more_required, get_optional, get_required}, FromWarpJs, IntoWarpJs, JsFunctionRegistry, }; @@ -14,19 +14,19 @@ use super::{ }; impl<'js> FromWarpJs<'js> for CommandSignature { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, ) -> rquickjs::Result { let object = Object::from_value(value)?; - let command = Command::from_warp_js(ctx, object.get("command")?, js_function_registry)?; + let command = Command::from_galaxy_js(ctx, object.get("command")?, js_function_registry)?; Ok(Self { command }) } } impl<'js> FromWarpJs<'js> for Command { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -58,7 +58,7 @@ impl<'js> FromWarpJs<'js> for Command { } impl<'js> FromWarpJs<'js> for Argument { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -83,7 +83,7 @@ impl<'js> FromWarpJs<'js> for Argument { } impl<'js> FromWarpJs<'js> for ArgumentValue { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -93,7 +93,7 @@ impl<'js> FromWarpJs<'js> for ArgumentValue { if value.is_object() { let object = Object::from_value(value)?; if object.contains_key("value")? { - Ok(ArgumentValue::Suggestion(Suggestion::from_warp_js( + Ok(ArgumentValue::Suggestion(Suggestion::from_galaxy_js( ctx, object.into_value(), js_function_registry, @@ -132,7 +132,7 @@ impl<'js> FromWarpJs<'js> for ArgumentValue { } impl<'js> FromWarpJs<'js> for Suggestion { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -155,12 +155,12 @@ impl<'js> FromWarpJs<'js> for Suggestion { } impl<'js> FromWarpJs<'js> for TemplateType { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, ) -> rquickjs::Result { - let type_string = String::from_warp_js(ctx, value, js_function_registry)?; + let type_string = String::from_galaxy_js(ctx, value, js_function_registry)?; match type_string.as_str() { "TemplateType.Files" => Ok(TemplateType::Files), "TemplateType.Folders" => Ok(TemplateType::Folders), @@ -175,7 +175,7 @@ impl<'js> FromWarpJs<'js> for TemplateType { } impl<'js> FromWarpJs<'js> for GeneratorFn { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -183,7 +183,7 @@ impl<'js> FromWarpJs<'js> for GeneratorFn { if value.is_object() { let object = Object::from_value(value)?; let value: Value = object.get("script")?; - let script = GeneratorScript::from_warp_js(ctx, value, js_function_registry)?; + let script = GeneratorScript::from_galaxy_js(ctx, value, js_function_registry)?; let post_process = if object.contains_key("postProcess")? { let function: Function = object.get("postProcess")?; let function_ref = js_function_registry @@ -214,7 +214,7 @@ impl<'js> FromWarpJs<'js> for GeneratorFn { } impl<'js> FromWarpJs<'js> for GeneratorScript { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -237,7 +237,7 @@ impl<'js> FromWarpJs<'js> for GeneratorScript { } impl<'js> FromWarpJs<'js> for Opt { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -264,7 +264,7 @@ impl<'js> FromWarpJs<'js> for Opt { } impl<'js> FromWarpJs<'js> for GeneratorResults { - fn from_warp_js( + fn from_galaxy_js( ctx: rquickjs::Ctx<'js>, value: rquickjs::Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -283,7 +283,7 @@ impl<'js> FromWarpJs<'js> for GeneratorResults { } impl<'js> IntoWarpJs<'js> for GeneratorCompletionContext { - fn into_warp_js(self, ctx: rquickjs::Ctx<'js>) -> rquickjs::Result> { + fn into_galaxy_js(self, ctx: rquickjs::Ctx<'js>) -> rquickjs::Result> { let object = Object::new(ctx)?; object.set("tokens", self.tokens)?; object.set("pwd", self.pwd)?; diff --git a/crates/warp_completer/src/signatures/v2/lookup.rs b/crates/galaxy_completer/src/signatures/v2/lookup.rs similarity index 100% rename from crates/warp_completer/src/signatures/v2/lookup.rs rename to crates/galaxy_completer/src/signatures/v2/lookup.rs diff --git a/crates/warp_completer/src/signatures/v2/lookup_test.rs b/crates/galaxy_completer/src/signatures/v2/lookup_test.rs similarity index 100% rename from crates/warp_completer/src/signatures/v2/lookup_test.rs rename to crates/galaxy_completer/src/signatures/v2/lookup_test.rs diff --git a/crates/warp_completer/src/signatures/v2/mod.rs b/crates/galaxy_completer/src/signatures/v2/mod.rs similarity index 98% rename from crates/warp_completer/src/signatures/v2/mod.rs rename to crates/galaxy_completer/src/signatures/v2/mod.rs index 3c97084e..bd7ddf94 100644 --- a/crates/warp_completer/src/signatures/v2/mod.rs +++ b/crates/galaxy_completer/src/signatures/v2/mod.rs @@ -1,7 +1,7 @@ //! This module contains Command Signature types for use with the v2 (JS-compatible) completions //! engine. -// The `js` module contains implementations of `warp_js::{IntoWarpJs, FromWarpJs}` for V2 command +// The `js` module contains implementations of `galaxy_js::{IntoWarpJs, FromWarpJs}` for V2 command // signatures, which is only supported on native non-wasm platforms. #[cfg(not(target_family = "wasm"))] mod js; @@ -15,7 +15,7 @@ pub use lookup::*; pub use registry::*; use serde::{Deserialize, Serialize}; -use warp_js::TypedJsFunctionRef; +use galaxy_js::TypedJsFunctionRef; #[derive(Debug, Clone, Serialize, Deserialize)] #[cfg_attr(feature = "test-util", derive(Default))] diff --git a/crates/warp_completer/src/signatures/v2/registry.rs b/crates/galaxy_completer/src/signatures/v2/registry.rs similarity index 100% rename from crates/warp_completer/src/signatures/v2/registry.rs rename to crates/galaxy_completer/src/signatures/v2/registry.rs diff --git a/crates/warp_completer/src/signatures/v2/registry_test.rs b/crates/galaxy_completer/src/signatures/v2/registry_test.rs similarity index 100% rename from crates/warp_completer/src/signatures/v2/registry_test.rs rename to crates/galaxy_completer/src/signatures/v2/registry_test.rs diff --git a/crates/warp_completer/src/signatures/v2/signatures_test.rs b/crates/galaxy_completer/src/signatures/v2/signatures_test.rs similarity index 100% rename from crates/warp_completer/src/signatures/v2/signatures_test.rs rename to crates/galaxy_completer/src/signatures/v2/signatures_test.rs diff --git a/crates/warp_completer/src/util.rs b/crates/galaxy_completer/src/util.rs similarity index 100% rename from crates/warp_completer/src/util.rs rename to crates/galaxy_completer/src/util.rs diff --git a/crates/warp_core/Cargo.toml b/crates/galaxy_core/Cargo.toml similarity index 90% rename from crates/warp_core/Cargo.toml rename to crates/galaxy_core/Cargo.toml index 998aa98d..1e1af21d 100644 --- a/crates/warp_core/Cargo.toml +++ b/crates/galaxy_core/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_core" +name = "galaxy_core" edition = "2021" authors = ["Warp Team "] publish.workspace = true @@ -10,7 +10,7 @@ crash_reporting = ["dep:sentry", "dep:sentry-log"] integration_tests = [] local_fs = [] release_bundle = [] -test-util = ["dep:mockito", "warp_features/test-util"] +test-util = ["dep:mockito", "galaxy_features/test-util"] [dependencies] anyhow.workspace = true @@ -21,7 +21,7 @@ dirs.workspace = true directories.workspace = true shellexpand.workspace = true enum-iterator.workspace = true -warp_features.workspace = true +galaxy_features.workspace = true itertools.workspace = true getset.workspace = true http.workspace = true @@ -48,8 +48,8 @@ settings_value = { workspace = true, features = ["derive"] } async-broadcast.workspace = true futures.workspace = true line-ending.workspace = true -warpui.workspace = true -warpui_extras = { workspace = true, features = ["default"] } +galaxyui.workspace = true +galaxyui_extras = { workspace = true, features = ["default"] } mockito = { workspace = true, optional = true } asset_macro.workspace = true string-offset.workspace = true diff --git a/crates/warp_core/build.rs b/crates/galaxy_core/build.rs similarity index 100% rename from crates/warp_core/build.rs rename to crates/galaxy_core/build.rs diff --git a/crates/warp_core/src/app_id.rs b/crates/galaxy_core/src/app_id.rs similarity index 100% rename from crates/warp_core/src/app_id.rs rename to crates/galaxy_core/src/app_id.rs diff --git a/crates/warp_core/src/app_id_test.rs b/crates/galaxy_core/src/app_id_test.rs similarity index 100% rename from crates/warp_core/src/app_id_test.rs rename to crates/galaxy_core/src/app_id_test.rs diff --git a/crates/warp_core/src/assertions.rs b/crates/galaxy_core/src/assertions.rs similarity index 100% rename from crates/warp_core/src/assertions.rs rename to crates/galaxy_core/src/assertions.rs diff --git a/crates/warp_core/src/channel/config.rs b/crates/galaxy_core/src/channel/config.rs similarity index 93% rename from crates/warp_core/src/channel/config.rs rename to crates/galaxy_core/src/channel/config.rs index 2b1f2081..005ad701 100644 --- a/crates/warp_core/src/channel/config.rs +++ b/crates/galaxy_core/src/channel/config.rs @@ -43,10 +43,10 @@ pub struct WarpServerConfig { impl WarpServerConfig { pub fn production() -> Self { Self { - server_root_url: "https://app.warp.dev".into(), - rtc_server_url: "wss://rtc.app.warp.dev/graphql/v2".into(), - session_sharing_server_url: Some("wss://sessions.app.warp.dev".into()), - firebase_auth_api_key: "AIzaSyBdy3O3S9hrdayLJxJ7mriBR4qgUaUygAs".into(), + server_root_url: "".into(), + rtc_server_url: "".into(), + session_sharing_server_url: None, + firebase_auth_api_key: "".into(), } } } @@ -65,7 +65,7 @@ pub struct OzConfig { impl OzConfig { pub fn production() -> Self { Self { - oz_root_url: "https://oz.warp.dev".into(), + oz_root_url: "".into(), workload_audience_url: None, } } diff --git a/crates/warp_core/src/channel/mod.rs b/crates/galaxy_core/src/channel/mod.rs similarity index 87% rename from crates/warp_core/src/channel/mod.rs rename to crates/galaxy_core/src/channel/mod.rs index b72cc1e7..c24c990d 100644 --- a/crates/warp_core/src/channel/mod.rs +++ b/crates/galaxy_core/src/channel/mod.rs @@ -50,12 +50,12 @@ impl Channel { /// Returns the CLI command name corresponding to this channel. pub fn cli_command_name(&self) -> &'static str { match self { - Channel::Stable => "oz", - Channel::Dev => "oz-dev", - Channel::Preview => "oz-preview", - Channel::Local => "oz-local", - Channel::Integration => "oz-integration", - Channel::Oss => "warp-oss", + Channel::Stable => "galaxy-ai", + Channel::Dev => "galaxy-ai-dev", + Channel::Preview => "galaxy-ai-preview", + Channel::Local => "galaxy-ai-local", + Channel::Integration => "galaxy-ai-integration", + Channel::Oss => "galaxy-ai-oss", } } } diff --git a/crates/warp_core/src/channel/state.rs b/crates/galaxy_core/src/channel/state.rs similarity index 99% rename from crates/warp_core/src/channel/state.rs rename to crates/galaxy_core/src/channel/state.rs index 01e9701e..876922bc 100644 --- a/crates/warp_core/src/channel/state.rs +++ b/crates/galaxy_core/src/channel/state.rs @@ -284,7 +284,7 @@ impl ChannelState { // Returns the origin url, with scheme, domain, and ports (if any) pub fn server_root_domain() -> Origin { Url::parse(&Self::server_root_url()) - .expect("Server root URL should be valid") + .unwrap_or_else(|_| Url::parse("http://localhost").unwrap()) .origin() } @@ -429,7 +429,7 @@ fn app_id_from_bundle() -> Option { foundation::NSBundle, }; use objc::{msg_send, sel, sel_impl}; - use warpui::platform::mac::utils::nsstring_as_str; + use galaxyui::platform::mac::utils::nsstring_as_str; let bundle = id::mainBundle(); if bundle != nil { diff --git a/crates/warp_core/src/channel/state_tests.rs b/crates/galaxy_core/src/channel/state_tests.rs similarity index 100% rename from crates/warp_core/src/channel/state_tests.rs rename to crates/galaxy_core/src/channel/state_tests.rs diff --git a/crates/warp_core/src/command.rs b/crates/galaxy_core/src/command.rs similarity index 100% rename from crates/warp_core/src/command.rs rename to crates/galaxy_core/src/command.rs diff --git a/crates/warp_core/src/context_flag.rs b/crates/galaxy_core/src/context_flag.rs similarity index 100% rename from crates/warp_core/src/context_flag.rs rename to crates/galaxy_core/src/context_flag.rs diff --git a/crates/warp_core/src/errors.rs b/crates/galaxy_core/src/errors.rs similarity index 100% rename from crates/warp_core/src/errors.rs rename to crates/galaxy_core/src/errors.rs diff --git a/crates/warp_core/src/errors/anyhow.rs b/crates/galaxy_core/src/errors/anyhow.rs similarity index 100% rename from crates/warp_core/src/errors/anyhow.rs rename to crates/galaxy_core/src/errors/anyhow.rs diff --git a/crates/warp_core/src/errors/registration.rs b/crates/galaxy_core/src/errors/registration.rs similarity index 100% rename from crates/warp_core/src/errors/registration.rs rename to crates/galaxy_core/src/errors/registration.rs diff --git a/crates/warp_core/src/errors/reqwest.rs b/crates/galaxy_core/src/errors/reqwest.rs similarity index 100% rename from crates/warp_core/src/errors/reqwest.rs rename to crates/galaxy_core/src/errors/reqwest.rs diff --git a/crates/warp_core/src/errors/tokio.rs b/crates/galaxy_core/src/errors/tokio.rs similarity index 100% rename from crates/warp_core/src/errors/tokio.rs rename to crates/galaxy_core/src/errors/tokio.rs diff --git a/crates/warp_core/src/errors/websocket.rs b/crates/galaxy_core/src/errors/websocket.rs similarity index 100% rename from crates/warp_core/src/errors/websocket.rs rename to crates/galaxy_core/src/errors/websocket.rs diff --git a/crates/warp_core/src/execution_mode.rs b/crates/galaxy_core/src/execution_mode.rs similarity index 98% rename from crates/warp_core/src/execution_mode.rs rename to crates/galaxy_core/src/execution_mode.rs index 093af1da..ca994590 100644 --- a/crates/warp_core/src/execution_mode.rs +++ b/crates/galaxy_core/src/execution_mode.rs @@ -1,5 +1,5 @@ use std::sync::OnceLock; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; // Global execution mode, for logic that runs outside the UI framework. static GLOBAL_EXECUTION_MODE: OnceLock = OnceLock::new(); diff --git a/crates/warp_core/src/features.rs b/crates/galaxy_core/src/features.rs similarity index 85% rename from crates/warp_core/src/features.rs rename to crates/galaxy_core/src/features.rs index 85a2dbc1..26cf5c97 100644 --- a/crates/warp_core/src/features.rs +++ b/crates/galaxy_core/src/features.rs @@ -1,6 +1,6 @@ -pub use warp_features::*; +pub use galaxy_features::*; -use warpui::platform::menu::{CustomMenuItem, MenuItem, MenuItemPropertyChanges}; +use galaxyui::platform::menu::{CustomMenuItem, MenuItem, MenuItemPropertyChanges}; fn feature_flag_menu_item(flag: FeatureFlag) -> MenuItem { MenuItem::Custom(CustomMenuItem::new( &format!("{flag:?}"), diff --git a/crates/warp_core/src/host_id.rs b/crates/galaxy_core/src/host_id.rs similarity index 100% rename from crates/warp_core/src/host_id.rs rename to crates/galaxy_core/src/host_id.rs diff --git a/crates/warp_core/src/interval_timer.rs b/crates/galaxy_core/src/interval_timer.rs similarity index 98% rename from crates/warp_core/src/interval_timer.rs rename to crates/galaxy_core/src/interval_timer.rs index 6b1ccf60..7bd6fcd8 100644 --- a/crates/warp_core/src/interval_timer.rs +++ b/crates/galaxy_core/src/interval_timer.rs @@ -2,7 +2,7 @@ use std::time::Duration; use instant::Instant; use serde::{Deserialize, Serialize}; -use warpui::{Entity, SingletonEntity}; +use galaxyui::{Entity, SingletonEntity}; /// This represents one interval, i.e. one stage in a multiple-stage timer. struct TimingInterval { diff --git a/crates/warp_core/src/interval_timer_tests.rs b/crates/galaxy_core/src/interval_timer_tests.rs similarity index 100% rename from crates/warp_core/src/interval_timer_tests.rs rename to crates/galaxy_core/src/interval_timer_tests.rs diff --git a/crates/warp_core/src/lib.rs b/crates/galaxy_core/src/lib.rs similarity index 100% rename from crates/warp_core/src/lib.rs rename to crates/galaxy_core/src/lib.rs diff --git a/crates/warp_core/src/macos.rs b/crates/galaxy_core/src/macos.rs similarity index 100% rename from crates/warp_core/src/macos.rs rename to crates/galaxy_core/src/macos.rs diff --git a/crates/warp_core/src/operating_system_info.rs b/crates/galaxy_core/src/operating_system_info.rs similarity index 98% rename from crates/warp_core/src/operating_system_info.rs rename to crates/galaxy_core/src/operating_system_info.rs index 150106c2..15b59697 100644 --- a/crates/warp_core/src/operating_system_info.rs +++ b/crates/galaxy_core/src/operating_system_info.rs @@ -6,9 +6,9 @@ use std::fmt::{Display, Formatter}; use std::sync::OnceLock; #[cfg(target_family = "wasm")] -use warpui::platform::wasm; +use galaxyui::platform::wasm; #[cfg(target_family = "wasm")] -use warpui::platform::OperatingSystem; +use galaxyui::platform::OperatingSystem; static OS_INFO: OnceLock> = OnceLock::new(); diff --git a/crates/warp_core/src/paths.rs b/crates/galaxy_core/src/paths.rs similarity index 98% rename from crates/warp_core/src/paths.rs rename to crates/galaxy_core/src/paths.rs index a410d086..931d4c21 100644 --- a/crates/warp_core/src/paths.rs +++ b/crates/galaxy_core/src/paths.rs @@ -28,11 +28,11 @@ use crate::{ /// /// This should be used, for example, as the base directory under which /// repository workflows would be stored (in "./.warp-core/workflows"). -pub const WARP_CONFIG_DIR: &str = ".warp-core"; +pub const WARP_CONFIG_DIR: &str = ".galaxy-ai"; /// The legacy config directory name used by Warp before the rename to Warp Core. /// Used for auto-migration on first launch. -pub const LEGACY_WARP_CONFIG_DIR: &str = ".warp"; +pub const LEGACY_WARP_CONFIG_DIR: &str = ".warp-core"; /// The name of the folder that stores Warp execution logs and network logs. /// This is currently only used on Windows to maintain backwards compatibility. @@ -428,7 +428,7 @@ pub fn app_group_container_path() -> Option { /// Returns the path to resources included in the Warp distribution. /// -/// Unlike [`warpui::AssetProvider`] assets, which are generally embedded in the binary, these are +/// Unlike [`galaxyui::AssetProvider`] assets, which are generally embedded in the binary, these are /// stored on the filesystem alongside the rest of Warp. /// /// ## macOS diff --git a/crates/warp_core/src/paths_tests.rs b/crates/galaxy_core/src/paths_tests.rs similarity index 100% rename from crates/warp_core/src/paths_tests.rs rename to crates/galaxy_core/src/paths_tests.rs diff --git a/crates/warp_core/src/platform.rs b/crates/galaxy_core/src/platform.rs similarity index 100% rename from crates/warp_core/src/platform.rs rename to crates/galaxy_core/src/platform.rs diff --git a/crates/warp_core/src/safe_log.rs b/crates/galaxy_core/src/safe_log.rs similarity index 100% rename from crates/warp_core/src/safe_log.rs rename to crates/galaxy_core/src/safe_log.rs diff --git a/crates/warp_core/src/semantic_selection/mod.rs b/crates/galaxy_core/src/semantic_selection/mod.rs similarity index 99% rename from crates/warp_core/src/semantic_selection/mod.rs rename to crates/galaxy_core/src/semantic_selection/mod.rs index 2af83283..ab6c77bb 100644 --- a/crates/warp_core/src/semantic_selection/mod.rs +++ b/crates/galaxy_core/src/semantic_selection/mod.rs @@ -4,9 +4,9 @@ use lazy_static::lazy_static; use regex::Regex; use settings::{macros::define_settings_group, Setting, SupportedPlatforms, SyncToCloud}; use string_offset::ByteOffset; -use warpui::elements::SmartSelectFn; +use galaxyui::elements::SmartSelectFn; -use warpui::text::{ +use galaxyui::text::{ word_boundaries::WordBoundariesPolicy, words::{is_default_word_boundary, DEFAULT_WORD_BOUNDARY_CHARS}, }; diff --git a/crates/warp_core/src/semantic_selection/mod_test.rs b/crates/galaxy_core/src/semantic_selection/mod_test.rs similarity index 100% rename from crates/warp_core/src/semantic_selection/mod_test.rs rename to crates/galaxy_core/src/semantic_selection/mod_test.rs diff --git a/crates/warp_core/src/session_id.rs b/crates/galaxy_core/src/session_id.rs similarity index 87% rename from crates/warp_core/src/session_id.rs rename to crates/galaxy_core/src/session_id.rs index e6c0ebe6..ac273085 100644 --- a/crates/warp_core/src/session_id.rs +++ b/crates/galaxy_core/src/session_id.rs @@ -3,7 +3,7 @@ use serde::{Deserialize, Serialize}; /// Unique identifier for a terminal session. /// /// Each bootstrapped subshell (including SSH sessions) gets its own `SessionId`. -/// This type is defined in `warp_core` so that lower-level crates (e.g. `repo_metadata`) +/// This type is defined in `galaxy_core` so that lower-level crates (e.g. `repo_metadata`) /// can reference it without depending on the `app` crate. #[derive(Copy, Clone, Debug, Default, Deserialize, Eq, Hash, PartialEq, Serialize)] pub struct SessionId(u64); diff --git a/crates/warp_core/src/sync_queue.rs b/crates/galaxy_core/src/sync_queue.rs similarity index 99% rename from crates/warp_core/src/sync_queue.rs rename to crates/galaxy_core/src/sync_queue.rs index e2fcc987..b9ab15f4 100644 --- a/crates/warp_core/src/sync_queue.rs +++ b/crates/galaxy_core/src/sync_queue.rs @@ -9,10 +9,10 @@ use std::future::Future; use std::sync::atomic::{AtomicU64, Ordering}; use std::sync::{Arc, Mutex}; use std::time::Duration; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use anyhow::Result; -use warpui::{r#async::Timer, Entity, RetryOption, SingletonEntity}; +use galaxyui::{r#async::Timer, Entity, RetryOption, SingletonEntity}; const DEFAULT_BUFFER_SIZE: usize = 1024; const DEFAULT_SYNC_RETRY_STRATEGY: RetryOption = RetryOption::exponential( diff --git a/crates/warp_core/src/sync_queue_tests.rs b/crates/galaxy_core/src/sync_queue_tests.rs similarity index 99% rename from crates/warp_core/src/sync_queue_tests.rs rename to crates/galaxy_core/src/sync_queue_tests.rs index 7d5aafdb..335b26d3 100644 --- a/crates/warp_core/src/sync_queue_tests.rs +++ b/crates/galaxy_core/src/sync_queue_tests.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use futures::channel::oneshot; use futures::StreamExt; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use super::*; diff --git a/crates/warp_core/src/telemetry.rs b/crates/galaxy_core/src/telemetry.rs similarity index 95% rename from crates/warp_core/src/telemetry.rs rename to crates/galaxy_core/src/telemetry.rs index 684d7b8b..bb71f03f 100644 --- a/crates/warp_core/src/telemetry.rs +++ b/crates/galaxy_core/src/telemetry.rs @@ -2,7 +2,7 @@ use std::{fmt, marker::PhantomData}; use serde_json::Value; use strum::IntoEnumIterator; -use warpui::{AppContext, Entity, SingletonEntity}; +use galaxyui::{AppContext, Entity, SingletonEntity}; // Re-export for macro use. #[doc(hidden)] @@ -149,15 +149,15 @@ pub fn all_events() -> impl Iterator> { macro_rules! send_telemetry_from_ctx { ($event:expr, $ctx:expr) => { #[allow(unused_imports)] - use warp_core::telemetry::TelemetryEvent as _; + use galaxy_core::telemetry::TelemetryEvent as _; let event = $event; if event.enablement_state().is_enabled() { let auth_state = - <$crate::telemetry::TelemetryContextModel as warpui::SingletonEntity>::handle($ctx) + <$crate::telemetry::TelemetryContextModel as galaxyui::SingletonEntity>::handle($ctx) .as_ref($ctx); let user_id = auth_state.user_id($ctx); let anonymous_id = auth_state.anonymous_id($ctx); - warpui::record_telemetry_from_ctx!( + galaxyui::record_telemetry_from_ctx!( user_id, anonymous_id, event.name().into(), @@ -180,13 +180,13 @@ macro_rules! send_telemetry_from_app_ctx { let event = $event; if event.enablement_state().is_enabled() { let auth_state = - <$crate::telemetry::TelemetryContextModel as warpui::SingletonEntity>::handle( + <$crate::telemetry::TelemetryContextModel as galaxyui::SingletonEntity>::handle( $app_ctx, ) .as_ref($app_ctx); let user_id = auth_state.user_id($app_ctx.as_ref()); let anonymous_id = auth_state.anonymous_id($app_ctx.as_ref()); - warpui::record_telemetry_on_executor!( + galaxyui::record_telemetry_on_executor!( user_id, anonymous_id, event.name().into(), diff --git a/crates/warp_core/src/ui/appearance.rs b/crates/galaxy_core/src/ui/appearance.rs similarity index 99% rename from crates/warp_core/src/ui/appearance.rs rename to crates/galaxy_core/src/ui/appearance.rs index 06fa2fb7..415f5bb4 100644 --- a/crates/warp_core/src/ui/appearance.rs +++ b/crates/galaxy_core/src/ui/appearance.rs @@ -1,4 +1,4 @@ -use warpui::{ +use galaxyui::{ fonts::{FamilyId, Weight}, Entity, ModelContext, SingletonEntity, }; @@ -101,7 +101,7 @@ impl Appearance { #[cfg(feature = "test-util")] pub fn mock() -> Self { - use warpui::color::ColorU; + use galaxyui::color::ColorU; use crate::ui::theme::{mock_terminal_colors, Details, Fill}; diff --git a/crates/warp_core/src/ui/builder.rs b/crates/galaxy_core/src/ui/builder.rs similarity index 98% rename from crates/warp_core/src/ui/builder.rs rename to crates/galaxy_core/src/ui/builder.rs index 3596ad98..fa82fbaf 100644 --- a/crates/warp_core/src/ui/builder.rs +++ b/crates/galaxy_core/src/ui/builder.rs @@ -4,30 +4,30 @@ use std::rc::Rc; use super::color::{blend::Blend, contrast::MinimumAllowedContrast, ContrastingColor}; use super::theme::color::internal_colors::{self, text_main}; use super::theme::{Fill, WarpTheme}; -use warpui::color::ColorU; -use warpui::elements::{ +use galaxyui::color::ColorU; +use galaxyui::elements::{ ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Radius, Stack, Text, }; -use warpui::fonts::{Properties, Weight}; -use warpui::geometry::vector::{vec2f, Vector2F}; -use warpui::platform::Cursor; -use warpui::ui_components::components::UiComponent; -use warpui::ui_components::keyboard_shortcut::KeyboardShortcut; -use warpui::ui_components::link::{LinkStyles, OnClickFn}; -use warpui::ui_components::list::{List, ListStyle}; -use warpui::ui_components::radio_buttons::{ +use galaxyui::fonts::{Properties, Weight}; +use galaxyui::geometry::vector::{vec2f, Vector2F}; +use galaxyui::platform::Cursor; +use galaxyui::ui_components::components::UiComponent; +use galaxyui::ui_components::keyboard_shortcut::KeyboardShortcut; +use galaxyui::ui_components::link::{LinkStyles, OnClickFn}; +use galaxyui::ui_components::list::{List, ListStyle}; +use galaxyui::ui_components::radio_buttons::{ RadioButtonItem, RadioButtonLayout, RadioButtonStateHandle, RadioButtons, }; -use warpui::ui_components::slider::{Slider, SliderStateHandle}; -use warpui::ui_components::switch::{Switch, SwitchStateHandle, TRACK_COLOR}; -use warpui::ui_components::text::WrappableText; -use warpui::ui_components::toggle_menu::{ +use galaxyui::ui_components::slider::{Slider, SliderStateHandle}; +use galaxyui::ui_components::switch::{Switch, SwitchStateHandle, TRACK_COLOR}; +use galaxyui::ui_components::text::WrappableText; +use galaxyui::ui_components::toggle_menu::{ ToggleMenu, ToggleMenuCallback, ToggleMenuItem, ToggleMenuStateHandle, }; -use warpui::ui_components::tool_tip::{Tooltip, TooltipWithSublabel}; -use warpui::View; -use warpui::{ +use galaxyui::ui_components::tool_tip::{Tooltip, TooltipWithSublabel}; +use galaxyui::View; +use galaxyui::{ elements::{Icon, MouseStateHandle}, fonts::FamilyId, keymap::Keystroke, diff --git a/crates/warp_core/src/ui/color/blend.rs b/crates/galaxy_core/src/ui/color/blend.rs similarity index 98% rename from crates/warp_core/src/ui/color/blend.rs rename to crates/galaxy_core/src/ui/color/blend.rs index 056d5f8c..89e23985 100644 --- a/crates/warp_core/src/ui/color/blend.rs +++ b/crates/galaxy_core/src/ui/color/blend.rs @@ -1,4 +1,4 @@ -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub trait Blend { type Output; diff --git a/crates/warp_core/src/ui/color/color_tests.rs b/crates/galaxy_core/src/ui/color/color_tests.rs similarity index 100% rename from crates/warp_core/src/ui/color/color_tests.rs rename to crates/galaxy_core/src/ui/color/color_tests.rs diff --git a/crates/warp_core/src/ui/color/contrast.rs b/crates/galaxy_core/src/ui/color/contrast.rs similarity index 99% rename from crates/warp_core/src/ui/color/contrast.rs rename to crates/galaxy_core/src/ui/color/contrast.rs index e226557a..516a279c 100644 --- a/crates/warp_core/src/ui/color/contrast.rs +++ b/crates/galaxy_core/src/ui/color/contrast.rs @@ -1,4 +1,4 @@ -use warpui::color::ColorU; +use galaxyui::color::ColorU; use super::{blend::Blend, coloru_with_opacity, Rgb}; diff --git a/crates/warp_core/src/ui/color/contrast_tests.rs b/crates/galaxy_core/src/ui/color/contrast_tests.rs similarity index 100% rename from crates/warp_core/src/ui/color/contrast_tests.rs rename to crates/galaxy_core/src/ui/color/contrast_tests.rs diff --git a/crates/warp_core/src/ui/color/hex_color.rs b/crates/galaxy_core/src/ui/color/hex_color.rs similarity index 98% rename from crates/warp_core/src/ui/color/hex_color.rs rename to crates/galaxy_core/src/ui/color/hex_color.rs index 4f814a6c..4bde762c 100644 --- a/crates/warp_core/src/ui/color/hex_color.rs +++ b/crates/galaxy_core/src/ui/color/hex_color.rs @@ -1,6 +1,6 @@ use serde::{de, Deserialize, Deserializer, Serialize, Serializer}; use std::{borrow::Cow, fmt}; -use warpui::color::ColorU; +use galaxyui::color::ColorU; use super::OPAQUE; diff --git a/crates/warp_core/src/ui/color/mod.rs b/crates/galaxy_core/src/ui/color/mod.rs similarity index 99% rename from crates/warp_core/src/ui/color/mod.rs rename to crates/galaxy_core/src/ui/color/mod.rs index a3384464..4eeaecb4 100644 --- a/crates/warp_core/src/ui/color/mod.rs +++ b/crates/galaxy_core/src/ui/color/mod.rs @@ -1,4 +1,4 @@ -use warpui::color::ColorU; +use galaxyui::color::ColorU; use self::contrast::{high_enough_contrast, pick_constrasting_color, MinimumAllowedContrast}; diff --git a/crates/warp_core/src/ui/external_product_icon.rs b/crates/galaxy_core/src/ui/external_product_icon.rs similarity index 92% rename from crates/warp_core/src/ui/external_product_icon.rs rename to crates/galaxy_core/src/ui/external_product_icon.rs index 87ee8b47..f4576284 100644 --- a/crates/warp_core/src/ui/external_product_icon.rs +++ b/crates/galaxy_core/src/ui/external_product_icon.rs @@ -1,5 +1,5 @@ use crate::ui::theme::Fill; -use warpui::elements::Icon as WarpUiIcon; +use galaxyui::elements::Icon as WarpUiIcon; pub enum ExternalProductIcon { Heroku, @@ -35,7 +35,7 @@ impl ExternalProductIcon { } } - pub fn to_warpui_icon(&self, color: Fill) -> WarpUiIcon { + pub fn to_galaxyui_icon(&self, color: Fill) -> WarpUiIcon { let path = self.get_path(); WarpUiIcon::new(path, color.into_solid()) } diff --git a/crates/warp_core/src/ui/icons.rs b/crates/galaxy_core/src/ui/icons.rs similarity index 98% rename from crates/warp_core/src/ui/icons.rs rename to crates/galaxy_core/src/ui/icons.rs index dd30df0e..cd7f1071 100644 --- a/crates/warp_core/src/ui/icons.rs +++ b/crates/galaxy_core/src/ui/icons.rs @@ -1,10 +1,10 @@ use crate::ui::theme::Fill; -use warpui::elements::Icon as WarpUiIcon; +use galaxyui::elements::Icon as WarpUiIcon; /// Default icon dimensions that apply to all icons used within the ui system. pub const ICON_DIMENSIONS: f32 = 24.; -/// Icon enum to be used within the app in place of the warpui::elements::Icon directly. It +/// Icon enum to be used within the app in place of the galaxyui::elements::Icon directly. It /// abstracts things like svg paths out and provides a utility method to convert into the actual Icon. #[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)] pub enum Icon { @@ -622,13 +622,13 @@ impl From for &'static str { } impl Icon { - pub fn to_warpui_icon(self, color: Fill) -> WarpUiIcon { + pub fn to_galaxyui_icon(self, color: Fill) -> WarpUiIcon { WarpUiIcon::new(self.into(), color.into_solid()) } pub fn icon_for_key(key: &str) -> Option { match key { - "⏎" => Some(Self::CornerDownLeft.to_warpui_icon(Fill::black())), + "⏎" => Some(Self::CornerDownLeft.to_galaxyui_icon(Fill::black())), _ => None, } } diff --git a/crates/warp_core/src/ui/mod.rs b/crates/galaxy_core/src/ui/mod.rs similarity index 100% rename from crates/warp_core/src/ui/mod.rs rename to crates/galaxy_core/src/ui/mod.rs diff --git a/crates/warp_core/src/ui/theme/color.rs b/crates/galaxy_core/src/ui/theme/color.rs similarity index 99% rename from crates/warp_core/src/ui/theme/color.rs rename to crates/galaxy_core/src/ui/theme/color.rs index d81c1aa3..c842686b 100644 --- a/crates/warp_core/src/ui/theme/color.rs +++ b/crates/galaxy_core/src/ui/theme/color.rs @@ -17,7 +17,7 @@ use crate::ui::color::{ }; use getset::Getters; use serde::{Deserialize, Serialize}; -use warpui::color::ColorU; +use galaxyui::color::ColorU; const BLOCK_SELECTION_OPACITY: Opacity = 10; @@ -421,7 +421,7 @@ impl WarpTheme { /// Internal color system tokens, defined in "Colors" [Figma project](https://www.figma.com/design/dnvTdLbfFaosFSP00F30S0/Colors). /// Should not be used directly outside of reusable components. Use color methods on `WarpTheme` instead. pub mod internal_colors { - use warpui::color::ColorU; + use galaxyui::color::ColorU; use super::{Fill, WarpTheme}; use crate::ui::color::blend::Blend; diff --git a/crates/warp_core/src/ui/theme/mod.rs b/crates/galaxy_core/src/ui/theme/mod.rs similarity index 98% rename from crates/warp_core/src/ui/theme/mod.rs rename to crates/galaxy_core/src/ui/theme/mod.rs index e513dc86..50c4abf2 100644 --- a/crates/warp_core/src/ui/theme/mod.rs +++ b/crates/galaxy_core/src/ui/theme/mod.rs @@ -19,7 +19,7 @@ use self::color::CustomDetails; use dirs::home_dir; use serde::{Deserialize, Serialize}; -use warpui::{assets::asset_cache::AssetSource, color::ColorU, geometry::vector::vec2f}; +use galaxyui::{assets::asset_cache::AssetSource, color::ColorU, geometry::vector::vec2f}; #[derive(Clone, Debug, PartialEq, Eq)] pub struct Image { @@ -439,17 +439,17 @@ impl ContrastingColor for Fill { } } -impl From for warpui::elements::Fill { +impl From for galaxyui::elements::Fill { fn from(theme: Fill) -> Self { match theme { - Fill::Solid(c) => warpui::elements::Fill::Solid(c), - Fill::HorizontalGradient(g) => warpui::elements::Fill::Gradient { + Fill::Solid(c) => galaxyui::elements::Fill::Solid(c), + Fill::HorizontalGradient(g) => galaxyui::elements::Fill::Gradient { start: vec2f(0.0, 0.0), end: vec2f(1.0, 0.0), start_color: g.left, end_color: g.right, }, - Fill::VerticalGradient(g) => warpui::elements::Fill::Gradient { + Fill::VerticalGradient(g) => galaxyui::elements::Fill::Gradient { start: vec2f(0.0, 0.0), end: vec2f(0.0, 1.0), start_color: g.top, diff --git a/crates/warp_core/src/ui/theme/phenomenon.rs b/crates/galaxy_core/src/ui/theme/phenomenon.rs similarity index 99% rename from crates/warp_core/src/ui/theme/phenomenon.rs rename to crates/galaxy_core/src/ui/theme/phenomenon.rs index eb76aa42..a7ad97f6 100644 --- a/crates/warp_core/src/ui/theme/phenomenon.rs +++ b/crates/galaxy_core/src/ui/theme/phenomenon.rs @@ -1,4 +1,4 @@ -use warpui::color::ColorU; +use galaxyui::color::ColorU; use crate::ui::color::blend::Blend; diff --git a/crates/warp_core/src/ui/theme/theme_tests.rs b/crates/galaxy_core/src/ui/theme/theme_tests.rs similarity index 100% rename from crates/warp_core/src/ui/theme/theme_tests.rs rename to crates/galaxy_core/src/ui/theme/theme_tests.rs diff --git a/crates/warp_core/src/user_preferences.rs b/crates/galaxy_core/src/user_preferences.rs similarity index 82% rename from crates/warp_core/src/user_preferences.rs rename to crates/galaxy_core/src/user_preferences.rs index 021ddec8..2e9e5ef0 100644 --- a/crates/warp_core/src/user_preferences.rs +++ b/crates/galaxy_core/src/user_preferences.rs @@ -7,10 +7,10 @@ use std::ops::Deref; use settings::PrivatePreferences; -use warpui::SingletonEntity; -use warpui_extras::user_preferences::UserPreferences; +use galaxyui::SingletonEntity; +use galaxyui_extras::user_preferences::UserPreferences; -/// An extension trait on [`warpui::AppContext`] for accessing private user +/// An extension trait on [`galaxyui::AppContext`] for accessing private user /// preferences. /// /// Private settings are always stored in the platform-native store (e.g. @@ -24,7 +24,7 @@ pub trait GetUserPreferences { fn private_user_preferences(&self) -> &dyn UserPreferences; } -impl GetUserPreferences for warpui::AppContext { +impl GetUserPreferences for galaxyui::AppContext { fn private_user_preferences(&self) -> &dyn UserPreferences { ::as_ref(self).deref() } diff --git a/crates/warp_features/Cargo.toml b/crates/galaxy_features/Cargo.toml similarity index 89% rename from crates/warp_features/Cargo.toml rename to crates/galaxy_features/Cargo.toml index f61fcc4e..1a545271 100644 --- a/crates/warp_features/Cargo.toml +++ b/crates/galaxy_features/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_features" +name = "galaxy_features" version = "0.0.0" edition = "2021" authors.workspace = true diff --git a/crates/warp_features/src/features_test.rs b/crates/galaxy_features/src/features_test.rs similarity index 100% rename from crates/warp_features/src/features_test.rs rename to crates/galaxy_features/src/features_test.rs diff --git a/crates/warp_features/src/lib.rs b/crates/galaxy_features/src/lib.rs similarity index 100% rename from crates/warp_features/src/lib.rs rename to crates/galaxy_features/src/lib.rs diff --git a/crates/warp_files/Cargo.toml b/crates/galaxy_files/Cargo.toml similarity index 83% rename from crates/warp_files/Cargo.toml rename to crates/galaxy_files/Cargo.toml index 2768fcdb..df5904c8 100644 --- a/crates/warp_files/Cargo.toml +++ b/crates/galaxy_files/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_files" +name = "galaxy_files" version = "0.1.0" edition = "2021" authors = ["Warp Team "] @@ -12,10 +12,10 @@ async-channel.workspace = true async-fs.workspace = true futures.workspace = true thiserror.workspace = true -warpui.workspace = true +galaxyui.workspace = true remote_server.workspace = true -warp_core.workspace = true -warp_util.workspace = true +galaxy_core.workspace = true +galaxy_util.workspace = true watcher.workspace = true notify-debouncer-full.workspace = true repo_metadata.workspace = true diff --git a/crates/warp_files/src/lib.rs b/crates/galaxy_files/src/lib.rs similarity index 99% rename from crates/warp_files/src/lib.rs rename to crates/galaxy_files/src/lib.rs index b09b90c0..e95a1616 100644 --- a/crates/warp_files/src/lib.rs +++ b/crates/galaxy_files/src/lib.rs @@ -16,8 +16,8 @@ use std::{ use remote_server::client::RemoteServerClient; use remote_server::manager::RemoteServerManager; -use warp_core::HostId; -use warp_util::standardized_path::StandardizedPath; +use galaxy_core::HostId; +use galaxy_util::standardized_path::StandardizedPath; use futures::io::{AsyncBufReadExt, BufReader}; use futures::StreamExt; @@ -29,11 +29,11 @@ use repo_metadata::{ repository::{RepositorySubscriber, SubscriberId}, CanonicalizedPath, Repository, RepositoryUpdate, }; -use warp_util::content_version::ContentVersion; -use warp_util::file::FileSaveError; -use warp_util::file::{FileId, FileLoadError}; -use warpui::ModelHandle; -use warpui::{r#async::SpawnedFutureHandle, AppContext, Entity, ModelContext, SingletonEntity}; +use galaxy_util::content_version::ContentVersion; +use galaxy_util::file::FileSaveError; +use galaxy_util::file::{FileId, FileLoadError}; +use galaxyui::ModelHandle; +use galaxyui::{r#async::SpawnedFutureHandle, AppContext, Entity, ModelContext, SingletonEntity}; use watcher::{BulkFilesystemWatcher, BulkFilesystemWatcherEvent}; pub mod text_file_reader; diff --git a/crates/warp_files/src/lib_test.rs b/crates/galaxy_files/src/lib_test.rs similarity index 99% rename from crates/warp_files/src/lib_test.rs rename to crates/galaxy_files/src/lib_test.rs index 512554df..41747cbf 100644 --- a/crates/warp_files/src/lib_test.rs +++ b/crates/galaxy_files/src/lib_test.rs @@ -1,5 +1,5 @@ use async_channel::{unbounded, Receiver}; -use warpui::{r#async::block_on, App, ModelHandle}; +use galaxyui::{r#async::block_on, App, ModelHandle}; // lib_tests.rs use super::*; diff --git a/crates/warp_files/src/text_file_reader.rs b/crates/galaxy_files/src/text_file_reader.rs similarity index 100% rename from crates/warp_files/src/text_file_reader.rs rename to crates/galaxy_files/src/text_file_reader.rs diff --git a/crates/warp_files/src/text_file_reader_tests.rs b/crates/galaxy_files/src/text_file_reader_tests.rs similarity index 100% rename from crates/warp_files/src/text_file_reader_tests.rs rename to crates/galaxy_files/src/text_file_reader_tests.rs diff --git a/crates/warp_files/test_data/test_file.rs b/crates/galaxy_files/test_data/test_file.rs similarity index 100% rename from crates/warp_files/test_data/test_file.rs rename to crates/galaxy_files/test_data/test_file.rs diff --git a/crates/warp_graphql_schema/.gitignore b/crates/galaxy_graphql_schema/.gitignore similarity index 100% rename from crates/warp_graphql_schema/.gitignore rename to crates/galaxy_graphql_schema/.gitignore diff --git a/crates/warp_graphql_schema/Cargo.toml b/crates/galaxy_graphql_schema/Cargo.toml similarity index 88% rename from crates/warp_graphql_schema/Cargo.toml rename to crates/galaxy_graphql_schema/Cargo.toml index 1179b796..01b72b0e 100644 --- a/crates/warp_graphql_schema/Cargo.toml +++ b/crates/galaxy_graphql_schema/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_graphql_schema" +name = "galaxy_graphql_schema" version = "0.0.0" edition = "2024" authors.workspace = true diff --git a/crates/warp_graphql_schema/api/client-schema.ts b/crates/galaxy_graphql_schema/api/client-schema.ts similarity index 100% rename from crates/warp_graphql_schema/api/client-schema.ts rename to crates/galaxy_graphql_schema/api/client-schema.ts diff --git a/crates/warp_graphql_schema/api/schema.graphql b/crates/galaxy_graphql_schema/api/schema.graphql similarity index 100% rename from crates/warp_graphql_schema/api/schema.graphql rename to crates/galaxy_graphql_schema/api/schema.graphql diff --git a/crates/warp_graphql_schema/build.rs b/crates/galaxy_graphql_schema/build.rs similarity index 100% rename from crates/warp_graphql_schema/build.rs rename to crates/galaxy_graphql_schema/build.rs diff --git a/crates/warp_graphql_schema/graphql.config.js b/crates/galaxy_graphql_schema/graphql.config.js similarity index 100% rename from crates/warp_graphql_schema/graphql.config.js rename to crates/galaxy_graphql_schema/graphql.config.js diff --git a/crates/warp_graphql_schema/package.json b/crates/galaxy_graphql_schema/package.json similarity index 100% rename from crates/warp_graphql_schema/package.json rename to crates/galaxy_graphql_schema/package.json diff --git a/crates/warp_graphql_schema/src/lib.rs b/crates/galaxy_graphql_schema/src/lib.rs similarity index 100% rename from crates/warp_graphql_schema/src/lib.rs rename to crates/galaxy_graphql_schema/src/lib.rs diff --git a/crates/warp_graphql_schema/yarn.lock b/crates/galaxy_graphql_schema/yarn.lock similarity index 100% rename from crates/warp_graphql_schema/yarn.lock rename to crates/galaxy_graphql_schema/yarn.lock diff --git a/crates/warp_js/Cargo.toml b/crates/galaxy_js/Cargo.toml similarity index 95% rename from crates/warp_js/Cargo.toml rename to crates/galaxy_js/Cargo.toml index 7c1baa28..1a86fc6f 100644 --- a/crates/warp_js/Cargo.toml +++ b/crates/galaxy_js/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_js" +name = "galaxy_js" authors = ["Warp Team "] version = "0.1.0" edition = "2021" diff --git a/crates/warp_js/src/convert/mod.rs b/crates/galaxy_js/src/convert/mod.rs similarity index 100% rename from crates/warp_js/src/convert/mod.rs rename to crates/galaxy_js/src/convert/mod.rs diff --git a/crates/warp_js/src/convert/native/mod.rs b/crates/galaxy_js/src/convert/native/mod.rs similarity index 85% rename from crates/warp_js/src/convert/native/mod.rs rename to crates/galaxy_js/src/convert/native/mod.rs index f95e0feb..974ca1bc 100644 --- a/crates/warp_js/src/convert/native/mod.rs +++ b/crates/galaxy_js/src/convert/native/mod.rs @@ -11,7 +11,7 @@ use crate::JsFunctionRegistry; /// This is similar to `rquickjs`'s native `FromJs` trait, except it enables registering JS /// functions in the given `JsFunctionRegistry` so these functions can be called arbitrarily. pub trait FromWarpJs<'js>: Sized { - fn from_warp_js( + fn from_galaxy_js( ctx: Ctx<'js>, value: Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -27,14 +27,14 @@ pub trait FromWarpJs<'js>: Sized { /// like `Vec`, which causes issues when the Rust compiler attempts to generate `CallableJsFunction` /// for monomorphized `TypedJsFunction`s (which have generic type params). pub trait IntoWarpJs<'js>: Sized { - fn into_warp_js(self, ctx: Ctx<'js>) -> rquickjs::Result>; + fn into_galaxy_js(self, ctx: Ctx<'js>) -> rquickjs::Result>; } impl<'js, T> FromWarpJs<'js> for Vec where T: FromWarpJs<'js>, { - fn from_warp_js( + fn from_galaxy_js( ctx: Ctx<'js>, value: Value<'js>, js_function_registry: &mut JsFunctionRegistry, @@ -43,7 +43,7 @@ where let values = value.get::>()?; Ok(values .into_iter() - .flat_map(|value| T::from_warp_js(ctx, value, js_function_registry).ok()) + .flat_map(|value| T::from_galaxy_js(ctx, value, js_function_registry).ok()) .collect()) } else { Err(rquickjs::Error::FromJs { @@ -56,7 +56,7 @@ where } impl<'js> FromWarpJs<'js> for String { - fn from_warp_js( + fn from_galaxy_js( ctx: Ctx<'js>, value: Value<'js>, _js_function_registry: &mut JsFunctionRegistry, @@ -66,7 +66,7 @@ impl<'js> FromWarpJs<'js> for String { } impl<'js> FromWarpJs<'js> for bool { - fn from_warp_js( + fn from_galaxy_js( ctx: Ctx<'js>, value: Value<'js>, _js_function_registry: &mut JsFunctionRegistry, @@ -76,7 +76,7 @@ impl<'js> FromWarpJs<'js> for bool { } impl<'js> FromWarpJs<'js> for i32 { - fn from_warp_js( + fn from_galaxy_js( ctx: Ctx<'js>, value: Value<'js>, _js_function_registry: &mut JsFunctionRegistry, @@ -86,13 +86,13 @@ impl<'js> FromWarpJs<'js> for i32 { } impl<'js> IntoWarpJs<'js> for String { - fn into_warp_js(self, ctx: Ctx<'js>) -> rquickjs::Result> { + fn into_galaxy_js(self, ctx: Ctx<'js>) -> rquickjs::Result> { self.into_js(ctx) } } impl<'js> IntoWarpJs<'js> for Vec { - fn into_warp_js(self, ctx: Ctx<'js>) -> rquickjs::Result> { + fn into_galaxy_js(self, ctx: Ctx<'js>) -> rquickjs::Result> { self.into_js(ctx) } } diff --git a/crates/warp_js/src/convert/native/util.rs b/crates/galaxy_js/src/convert/native/util.rs similarity index 94% rename from crates/warp_js/src/convert/native/util.rs rename to crates/galaxy_js/src/convert/native/util.rs index e2edeed0..51c4ebe9 100644 --- a/crates/warp_js/src/convert/native/util.rs +++ b/crates/galaxy_js/src/convert/native/util.rs @@ -55,9 +55,9 @@ where { let value: Value = object.get(field_name)?; if value.is_array() { - Vec::::from_warp_js(ctx, value, js_function_registry) + Vec::::from_galaxy_js(ctx, value, js_function_registry) } else { - Ok(vec![T::from_warp_js(ctx, value, js_function_registry)?]) + Ok(vec![T::from_galaxy_js(ctx, value, js_function_registry)?]) } } @@ -78,7 +78,7 @@ where T: FromWarpJs<'js>, { let value = object.get(field_name)?; - T::from_warp_js(ctx, value, js_function_registry) + T::from_galaxy_js(ctx, value, js_function_registry) } /// Returns the value for an optional property of type `T`. diff --git a/crates/warp_js/src/js_function/mod.rs b/crates/galaxy_js/src/js_function/mod.rs similarity index 100% rename from crates/warp_js/src/js_function/mod.rs rename to crates/galaxy_js/src/js_function/mod.rs diff --git a/crates/warp_js/src/js_function/native.rs b/crates/galaxy_js/src/js_function/native.rs similarity index 97% rename from crates/warp_js/src/js_function/native.rs rename to crates/galaxy_js/src/js_function/native.rs index c86d1152..41ded3ba 100644 --- a/crates/warp_js/src/js_function/native.rs +++ b/crates/galaxy_js/src/js_function/native.rs @@ -123,9 +123,9 @@ where ctx: Ctx<'_>, ) -> Result { let input: I = input.to_value().map_err(JsFunctionError::Deserialization)?; - let input_value = input.into_warp_js(ctx)?; + let input_value = input.into_galaxy_js(ctx)?; let func = self.js_function.clone().restore(ctx)?; - let output = O::from_warp_js(ctx, func.call((input_value,))?, function_registry)?; + let output = O::from_galaxy_js(ctx, func.call((input_value,))?, function_registry)?; SerializedJsValue::from_value(output).map_err(JsFunctionError::Serialization) } } diff --git a/crates/warp_js/src/lib.rs b/crates/galaxy_js/src/lib.rs similarity index 100% rename from crates/warp_js/src/lib.rs rename to crates/galaxy_js/src/lib.rs diff --git a/crates/warp_logging/Cargo.toml b/crates/galaxy_logging/Cargo.toml similarity index 81% rename from crates/warp_logging/Cargo.toml rename to crates/galaxy_logging/Cargo.toml index e8a22dd2..f95cd3fe 100644 --- a/crates/warp_logging/Cargo.toml +++ b/crates/galaxy_logging/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_logging" +name = "galaxy_logging" edition = "2024" description = "Warp logging configuration" publish.workspace = true @@ -11,7 +11,7 @@ chrono.workspace = true cfg-if.workspace = true env_logger.workspace = true log.workspace = true -warp_core.workspace = true +galaxy_core.workspace = true [target.'cfg(not(target_family = "wasm"))'.dependencies] dirs.workspace = true @@ -27,8 +27,8 @@ console_error_panic_hook = { version = "0.1.6" } js-sys = "0.3.63" wasm-bindgen.workspace = true web-sys.workspace = true -warp_web_event_bus.workspace = true +galaxy_web_event_bus.workspace = true [features] -crash_reporting = ["dep:sentry", "dep:sentry-log", "warp_core/crash_reporting"] +crash_reporting = ["dep:sentry", "dep:sentry-log", "galaxy_core/crash_reporting"] agent_mode_evals = [] diff --git a/crates/warp_logging/src/lib.rs b/crates/galaxy_logging/src/lib.rs similarity index 100% rename from crates/warp_logging/src/lib.rs rename to crates/galaxy_logging/src/lib.rs diff --git a/crates/warp_logging/src/native.rs b/crates/galaxy_logging/src/native.rs similarity index 97% rename from crates/warp_logging/src/native.rs rename to crates/galaxy_logging/src/native.rs index 43150d23..b0d536c6 100644 --- a/crates/warp_logging/src/native.rs +++ b/crates/galaxy_logging/src/native.rs @@ -9,11 +9,11 @@ use anyhow::Result; use chrono::Local; use log::LevelFilter; use std::sync::OnceLock; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; use zip::{CompressionMethod, ZipWriter, write::SimpleFileOptions}; use crate::{LogConfig, LogDestination}; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; const MAX_FILES_IN_GUI_ROTATION: usize = 5; const MAX_FILES_IN_CLI_ROTATION: usize = 10; @@ -318,7 +318,7 @@ fn temp_log_file_path(log_directory: impl AsRef) -> PathBuf { #[cfg(feature = "crash_reporting")] fn sentry_log_filter(md: &log::Metadata) -> sentry_log::LogFilter { - if warp_core::errors::should_ignore_log_for_sentry(md) { + if galaxy_core::errors::should_ignore_log_for_sentry(md) { return sentry_log::LogFilter::Ignore; } @@ -332,11 +332,11 @@ fn sentry_log_filter(md: &log::Metadata) -> sentry_log::LogFilter { } // Filter out the "redraw_frame" logging from breadcrumbs. - "warpui::core::redraw_frame" => sentry_log::LogFilter::Ignore, + "galaxyui::core::redraw_frame" => sentry_log::LogFilter::Ignore, // Filter out logs from the crash-reporting implementation, in case it logs // anything in the process of forwarding logs to Sentry. - t if t.starts_with("warp::crash_reporting::") => sentry_log::LogFilter::Ignore, + t if t.starts_with("galaxy::crash_reporting::") => sentry_log::LogFilter::Ignore, _ => sentry_log::default_filter(md), } @@ -403,7 +403,7 @@ fn init_internal( let stdout_is_a_tty = std::io::stdout().is_terminal(); let in_ci = env::var("CI").is_ok(); - let integration_test = env::var("WARP_INTEGRATION").is_ok(); + let integration_test = env::var("GALAXY_INTEGRATION").is_ok(); let use_logfile = match log_destination { Some(LogDestination::File) => true, Some(LogDestination::Stderr) => false, @@ -481,9 +481,9 @@ fn init_log_directory() -> Result { })? .join("Library/Logs/")) } else if #[cfg(target_os = "linux")] { - Ok(warp_core::paths::state_dir()) + Ok(galaxy_core::paths::state_dir()) } else if #[cfg(windows)] { - Ok(warp_core::paths::state_dir().join(warp_core::paths::WARP_LOGS_DIR)) + Ok(galaxy_core::paths::state_dir().join(galaxy_core::paths::WARP_LOGS_DIR)) } else { Err(anyhow::anyhow!("Have not configured file-based logging for the current platform!")) } diff --git a/crates/warp_logging/src/wasm.rs b/crates/galaxy_logging/src/wasm.rs similarity index 98% rename from crates/warp_logging/src/wasm.rs rename to crates/galaxy_logging/src/wasm.rs index ef34cd65..1bb78cfd 100644 --- a/crates/warp_logging/src/wasm.rs +++ b/crates/galaxy_logging/src/wasm.rs @@ -170,7 +170,7 @@ impl Log for WasmLogger { .map_or_else(|| "[Unknown]".to_string(), |line| line.to_string()), ); // Send error logs to Sentry. - warp_web_event_bus::emit_event(warp_web_event_bus::WarpEvent::ErrorLogged { + galaxy_web_event_bus::emit_event(galaxy_web_event_bus::WarpEvent::ErrorLogged { error, }); diff --git a/crates/warp_ripgrep/Cargo.toml b/crates/galaxy_ripgrep/Cargo.toml similarity index 93% rename from crates/warp_ripgrep/Cargo.toml rename to crates/galaxy_ripgrep/Cargo.toml index f18901e8..6c41277b 100644 --- a/crates/warp_ripgrep/Cargo.toml +++ b/crates/galaxy_ripgrep/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_ripgrep" +name = "galaxy_ripgrep" authors = ["Warp Team "] version = "0.1.0" edition = "2021" @@ -18,7 +18,7 @@ log.workspace = true serde.workspace = true serde_json.workspace = true string-offset.workspace = true -warp_cli.workspace = true +galaxy_cli.workspace = true [target.'cfg(not(target_family = "wasm"))'.dependencies] async-process.workspace = true diff --git a/crates/warp_ripgrep/examples/test_search.rs b/crates/galaxy_ripgrep/examples/test_search.rs similarity index 83% rename from crates/warp_ripgrep/examples/test_search.rs rename to crates/galaxy_ripgrep/examples/test_search.rs index 8e4c6283..c26d4898 100644 --- a/crates/warp_ripgrep/examples/test_search.rs +++ b/crates/galaxy_ripgrep/examples/test_search.rs @@ -15,7 +15,7 @@ fn main() -> Result<()> { println!("Searching for pattern: {pattern}"); println!("In paths: {paths:?}"); - warp_ripgrep::search::run_search_subprocess(&[pattern], paths, false, false, None)?; + galaxy_ripgrep::search::run_search_subprocess(&[pattern], paths, false, false, None)?; Ok(()) } diff --git a/crates/warp_ripgrep/src/lib.rs b/crates/galaxy_ripgrep/src/lib.rs similarity index 100% rename from crates/warp_ripgrep/src/lib.rs rename to crates/galaxy_ripgrep/src/lib.rs diff --git a/crates/warp_ripgrep/src/search.rs b/crates/galaxy_ripgrep/src/search.rs similarity index 98% rename from crates/warp_ripgrep/src/search.rs rename to crates/galaxy_ripgrep/src/search.rs index 31f792ea..a2f5cfb0 100644 --- a/crates/warp_ripgrep/src/search.rs +++ b/crates/galaxy_ripgrep/src/search.rs @@ -189,8 +189,8 @@ mod process_impl { let current_exe = std::env::current_exe()?; let mut cmd = command::r#async::Command::new(current_exe); - cmd.arg(warp_cli::ripgrep_search_subcommand()) - .arg(warp_cli::parent_flag()); + cmd.arg(galaxy_cli::ripgrep_search_subcommand()) + .arg(galaxy_cli::parent_flag()); if ignore_case { cmd.arg("--ignore-case"); diff --git a/crates/warp_ripgrep/src/types.rs b/crates/galaxy_ripgrep/src/types.rs similarity index 100% rename from crates/warp_ripgrep/src/types.rs rename to crates/galaxy_ripgrep/src/types.rs diff --git a/crates/warp_server_client/Cargo.toml b/crates/galaxy_server_client/Cargo.toml similarity index 85% rename from crates/warp_server_client/Cargo.toml rename to crates/galaxy_server_client/Cargo.toml index 47082f29..f05faa0c 100644 --- a/crates/warp_server_client/Cargo.toml +++ b/crates/galaxy_server_client/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_server_client" +name = "galaxy_server_client" version = "0.1.0" edition = "2024" authors.workspace = true @@ -26,9 +26,9 @@ settings_value.workspace = true session-sharing-protocol.workspace = true thiserror.workspace = true uuid.workspace = true -warp_core.workspace = true -warp_graphql.workspace = true -warpui_core.workspace = true +galaxy_core.workspace = true +galaxy_graphql.workspace = true +galaxyui_core.workspace = true [target.'cfg(not(target_family = "wasm"))'.dependencies] diesel = { workspace = true, features = ["sqlite", "chrono"] } diff --git a/crates/warp_server_client/src/auth/mod.rs b/crates/galaxy_server_client/src/auth/mod.rs similarity index 100% rename from crates/warp_server_client/src/auth/mod.rs rename to crates/galaxy_server_client/src/auth/mod.rs diff --git a/crates/warp_server_client/src/auth/user_uid.rs b/crates/galaxy_server_client/src/auth/user_uid.rs similarity index 100% rename from crates/warp_server_client/src/auth/user_uid.rs rename to crates/galaxy_server_client/src/auth/user_uid.rs diff --git a/crates/warp_server_client/src/cloud_object/mod.rs b/crates/galaxy_server_client/src/cloud_object/mod.rs similarity index 89% rename from crates/warp_server_client/src/cloud_object/mod.rs rename to crates/galaxy_server_client/src/cloud_object/mod.rs index 77e65401..af20f526 100644 --- a/crates/warp_server_client/src/cloud_object/mod.rs +++ b/crates/galaxy_server_client/src/cloud_object/mod.rs @@ -5,12 +5,12 @@ use chrono::{DateTime, Utc}; use derivative::Derivative; use pathfinder_geometry::vector::vec2f; use serde::{Deserialize, Serialize}; -use warp_core::{ +use galaxy_core::{ features::FeatureFlag, ui::{Icon, appearance::Appearance, theme::Fill}, }; -use warp_graphql::{object_permissions::AccessLevel, scalars::time::ServerTimestamp}; -use warpui_core::{ +use galaxy_graphql::{object_permissions::AccessLevel, scalars::time::ServerTimestamp}; +use galaxyui_core::{ Element, elements::{ Align, ChildAnchor, ConstrainedBox, Hoverable, MouseStateHandle, OffsetPositioning, @@ -202,35 +202,35 @@ impl TryFrom<&str> for JsonObjectType { } } -impl TryFrom for ObjectIdType { +impl TryFrom for ObjectIdType { type Error = anyhow::Error; - fn try_from(object_type: warp_graphql::object::ObjectType) -> Result { + fn try_from(object_type: galaxy_graphql::object::ObjectType) -> Result { match object_type { - warp_graphql::object::ObjectType::AIConversation => Err(anyhow!( + galaxy_graphql::object::ObjectType::AIConversation => Err(anyhow!( "AIConversation is not a supported object type for this operation" )), - warp_graphql::object::ObjectType::Notebook => Ok(ObjectIdType::Notebook), - warp_graphql::object::ObjectType::Workflow => Ok(ObjectIdType::Workflow), - warp_graphql::object::ObjectType::Folder => Ok(ObjectIdType::Folder), - warp_graphql::object::ObjectType::GenericStringObject => { + galaxy_graphql::object::ObjectType::Notebook => Ok(ObjectIdType::Notebook), + galaxy_graphql::object::ObjectType::Workflow => Ok(ObjectIdType::Workflow), + galaxy_graphql::object::ObjectType::Folder => Ok(ObjectIdType::Folder), + galaxy_graphql::object::ObjectType::GenericStringObject => { Ok(ObjectIdType::GenericStringObject) } - warp_graphql::object::ObjectType::Unknown => { + galaxy_graphql::object::ObjectType::Unknown => { Err(anyhow!("could not convert unknown cloud object type")) } } } } -impl From for warp_graphql::object::ObjectType { +impl From for galaxy_graphql::object::ObjectType { fn from(value: ObjectType) -> Self { match value { - ObjectType::Notebook => warp_graphql::object::ObjectType::Notebook, - ObjectType::Workflow => warp_graphql::object::ObjectType::Workflow, - ObjectType::Folder => warp_graphql::object::ObjectType::Folder, + ObjectType::Notebook => galaxy_graphql::object::ObjectType::Notebook, + ObjectType::Workflow => galaxy_graphql::object::ObjectType::Workflow, + ObjectType::Folder => galaxy_graphql::object::ObjectType::Folder, ObjectType::GenericStringObject(GenericStringObjectFormat::Json( JsonObjectType::EnvVarCollection, - )) => warp_graphql::object::ObjectType::GenericStringObject, + )) => galaxy_graphql::object::ObjectType::GenericStringObject, ObjectType::GenericStringObject(gso) => { todo!("Moving is not implemented for {:?}", gso); } @@ -711,17 +711,17 @@ impl CloudObjectStatuses { let icon_and_tooltip_text = if should_show_local_only_indicator { Some(( - Icon::Laptop.to_warpui_icon(theme.main_text_color(theme.surface_1())), + Icon::Laptop.to_galaxyui_icon(theme.main_text_color(theme.surface_1())), SYNC_STATUS_TOOLTIP_LOCAL_ONLY, )) } else if should_show_syncing_indicator { Some(( - Icon::Refresh.to_warpui_icon(theme.sub_text_color(theme.surface_2())), + Icon::Refresh.to_galaxyui_icon(theme.sub_text_color(theme.surface_2())), SYNC_STATUS_TOOLTIP_INFLIGHT, )) } else if should_show_error_indicator { Some(( - Icon::AlertTriangle.to_warpui_icon(Fill::Solid(theme.ui_error_color())), + Icon::AlertTriangle.to_galaxyui_icon(Fill::Solid(theme.ui_error_color())), SYNC_STATUS_TOOLTIP_ERROR, )) } else { @@ -787,10 +787,10 @@ pub enum CloudObjectEventEntrypoint { // GraphQL conversion impls. impl From - for warp_graphql::generic_string_object::GenericStringObjectFormat + for galaxy_graphql::generic_string_object::GenericStringObjectFormat { fn from(format: GenericStringObjectFormat) -> Self { - use warp_graphql::generic_string_object::GenericStringObjectFormat as GraphQLFormat; + use galaxy_graphql::generic_string_object::GenericStringObjectFormat as GraphQLFormat; match format { GenericStringObjectFormat::Json(JsonObjectType::Preference) => { GraphQLFormat::JsonPreference @@ -824,9 +824,9 @@ impl From } } -impl From for warp_graphql::object::CloudObjectEventEntrypoint { +impl From for galaxy_graphql::object::CloudObjectEventEntrypoint { fn from(entrypoint: CloudObjectEventEntrypoint) -> Self { - use warp_graphql::object::CloudObjectEventEntrypoint as GraphQLEntrypoint; + use galaxy_graphql::object::CloudObjectEventEntrypoint as GraphQLEntrypoint; match entrypoint { CloudObjectEventEntrypoint::TeamSettings => GraphQLEntrypoint::TeamSettings, CloudObjectEventEntrypoint::ResourceCenter => GraphQLEntrypoint::ResourceCenter, @@ -840,12 +840,12 @@ impl From for warp_graphql::object::CloudObjectEvent } } -impl TryFrom for ServerMetadata { +impl TryFrom for ServerMetadata { type Error = anyhow::Error; - fn try_from(value: warp_graphql::object::ObjectMetadata) -> Result { + fn try_from(value: galaxy_graphql::object::ObjectMetadata) -> Result { let folder_id: Option = match value.parent { - warp_graphql::object::Container::FolderContainer(folder_container) => { + galaxy_graphql::object::Container::FolderContainer(folder_container) => { Some(folder_container.folder_uid.into_inner().into()) } _ => None, @@ -865,11 +865,11 @@ impl TryFrom for ServerMetadata { } } -impl TryFrom for ServerPermissions { +impl TryFrom for ServerPermissions { type Error = anyhow::Error; fn try_from( - value: warp_graphql::object_permissions::ObjectPermissions, + value: galaxy_graphql::object_permissions::ObjectPermissions, ) -> Result { let server_object_guests: Result, _> = value .guests @@ -889,10 +889,10 @@ impl TryFrom for ServerPerm } } -impl TryFrom for ServerObjectGuest { +impl TryFrom for ServerObjectGuest { type Error = anyhow::Error; - fn try_from(value: warp_graphql::object_permissions::ObjectGuest) -> Result { + fn try_from(value: galaxy_graphql::object_permissions::ObjectGuest) -> Result { let object_guest = ServerObjectGuest { subject: value.subject.try_into()?, access_level: value.access_level, @@ -905,38 +905,38 @@ impl TryFrom for ServerObjectGues } } -impl TryFrom for ServerGuestSubject { +impl TryFrom for ServerGuestSubject { type Error = anyhow::Error; fn try_from( - value: warp_graphql::object_permissions::GuestSubject, + value: galaxy_graphql::object_permissions::GuestSubject, ) -> Result { match value { - warp_graphql::object_permissions::GuestSubject::UserGuest(user_guest) => { + galaxy_graphql::object_permissions::GuestSubject::UserGuest(user_guest) => { let guest_subject = ServerGuestSubject::User { firebase_uid: user_guest.firebase_uid.into_inner(), }; Ok(guest_subject) } - warp_graphql::object_permissions::GuestSubject::PendingUserGuest(guest) => { + galaxy_graphql::object_permissions::GuestSubject::PendingUserGuest(guest) => { Ok(ServerGuestSubject::PendingUser { email: guest.email }) } - warp_graphql::object_permissions::GuestSubject::TeamGuest(team_guest) => { + galaxy_graphql::object_permissions::GuestSubject::TeamGuest(team_guest) => { Ok(ServerGuestSubject::Team { team_uid: ServerId::from_string_lossy(team_guest.uid.inner()), }) } - warp_graphql::object_permissions::GuestSubject::Unknown => { + galaxy_graphql::object_permissions::GuestSubject::Unknown => { anyhow::bail!("Unknown GuestSubject type") } } } } -impl TryFrom for ServerLinkSharing { +impl TryFrom for ServerLinkSharing { type Error = anyhow::Error; - fn try_from(value: warp_graphql::object_permissions::LinkSharing) -> Result { + fn try_from(value: galaxy_graphql::object_permissions::LinkSharing) -> Result { Ok(ServerLinkSharing { access_level: value.access_level, source: value.source.map(TryInto::try_into).transpose()?, @@ -944,35 +944,35 @@ impl TryFrom for ServerLinkSharin } } -impl TryFrom for ServerObjectContainer { +impl TryFrom for ServerObjectContainer { type Error = anyhow::Error; - fn try_from(value: warp_graphql::object::Container) -> Result { + fn try_from(value: galaxy_graphql::object::Container) -> Result { match value { - warp_graphql::object::Container::FolderContainer(folder) => { + galaxy_graphql::object::Container::FolderContainer(folder) => { Ok(ServerObjectContainer::Folder { folder_uid: ServerId::from_string_lossy(folder.folder_uid.inner()), }) } - warp_graphql::object::Container::Space(space) => Ok(ServerObjectContainer::Drive { + galaxy_graphql::object::Container::Space(space) => Ok(ServerObjectContainer::Drive { owner: space.try_into()?, }), - warp_graphql::object::Container::Unknown => { + galaxy_graphql::object::Container::Unknown => { anyhow::bail!("Unknown Container type") } } } } -impl TryFrom for Owner { +impl TryFrom for Owner { type Error = anyhow::Error; - fn try_from(value: warp_graphql::object::Space) -> Result { + fn try_from(value: galaxy_graphql::object::Space) -> Result { let owner = match value.type_ { - warp_graphql::object::SpaceType::Team => Owner::Team { + galaxy_graphql::object::SpaceType::Team => Owner::Team { team_uid: ServerId::from_string_lossy(value.uid.inner()), }, - warp_graphql::object::SpaceType::User => Owner::User { + galaxy_graphql::object::SpaceType::User => Owner::User { user_uid: UserUid::new(value.uid.inner()), }, }; @@ -980,10 +980,10 @@ impl TryFrom for Owner { } } -impl From for warp_graphql::object_permissions::Owner { +impl From for galaxy_graphql::object_permissions::Owner { fn from(owner: Owner) -> Self { - use warp_graphql::object_permissions::Owner as GraphQLOwner; - use warp_graphql::object_permissions::OwnerType; + use galaxy_graphql::object_permissions::Owner as GraphQLOwner; + use galaxy_graphql::object_permissions::OwnerType; match owner { Owner::User { user_uid } => GraphQLOwner { type_: OwnerType::User, diff --git a/crates/warp_server_client/src/drive/mod.rs b/crates/galaxy_server_client/src/drive/mod.rs similarity index 100% rename from crates/warp_server_client/src/drive/mod.rs rename to crates/galaxy_server_client/src/drive/mod.rs diff --git a/crates/warp_server_client/src/drive/sharing.rs b/crates/galaxy_server_client/src/drive/sharing.rs similarity index 99% rename from crates/warp_server_client/src/drive/sharing.rs rename to crates/galaxy_server_client/src/drive/sharing.rs index 615c1197..33e70ec2 100644 --- a/crates/warp_server_client/src/drive/sharing.rs +++ b/crates/galaxy_server_client/src/drive/sharing.rs @@ -2,7 +2,7 @@ use std::str::FromStr; use serde::{Deserialize, Serialize}; use session_sharing_protocol::common::{ProfileData as SessionSharingProfileData, Role}; -use warp_graphql::object_permissions::AccessLevel; +use galaxy_graphql::object_permissions::AccessLevel; use crate::{auth::UserUid, cloud_object::Owner, ids::ServerId}; diff --git a/crates/warp_server_client/src/ids.rs b/crates/galaxy_server_client/src/ids.rs similarity index 100% rename from crates/warp_server_client/src/ids.rs rename to crates/galaxy_server_client/src/ids.rs diff --git a/crates/warp_server_client/src/lib.rs b/crates/galaxy_server_client/src/lib.rs similarity index 100% rename from crates/warp_server_client/src/lib.rs rename to crates/galaxy_server_client/src/lib.rs diff --git a/crates/warp_server_client/src/persistence/cloud_objects.rs b/crates/galaxy_server_client/src/persistence/cloud_objects.rs similarity index 100% rename from crates/warp_server_client/src/persistence/cloud_objects.rs rename to crates/galaxy_server_client/src/persistence/cloud_objects.rs diff --git a/crates/warp_server_client/src/persistence/mod.rs b/crates/galaxy_server_client/src/persistence/mod.rs similarity index 99% rename from crates/warp_server_client/src/persistence/mod.rs rename to crates/galaxy_server_client/src/persistence/mod.rs index 701ac648..47cc1fda 100644 --- a/crates/warp_server_client/src/persistence/mod.rs +++ b/crates/galaxy_server_client/src/persistence/mod.rs @@ -13,7 +13,7 @@ use crate::cloud_object::{ use crate::ids::SyncId; use persistence::model::{NewObjectMetadata, NewObjectPermissions, ObjectMetadata}; use persistence::schema; -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; /// The sqlite id of a cloud object. pub type CloudObjectId = i32; diff --git a/crates/warp_terminal/Cargo.toml b/crates/galaxy_terminal/Cargo.toml similarity index 86% rename from crates/warp_terminal/Cargo.toml rename to crates/galaxy_terminal/Cargo.toml index 9dd1ee21..b9d62793 100644 --- a/crates/warp_terminal/Cargo.toml +++ b/crates/galaxy_terminal/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["Warp Team "] edition = "2021" -name = "warp_terminal" +name = "galaxy_terminal" publish.workspace = true license.workspace = true @@ -30,10 +30,10 @@ unicode-width.workspace = true uuid.workspace = true version-compare.workspace = true vte.workspace = true -warp_completer.workspace = true -warp_core.workspace = true -warp_util.workspace = true -warpui.workspace = true +galaxy_completer.workspace = true +galaxy_core.workspace = true +galaxy_util.workspace = true +galaxyui.workspace = true [dev-dependencies] unicode-segmentation = "1.11.0" diff --git a/crates/warp_terminal/src/lib.rs b/crates/galaxy_terminal/src/lib.rs similarity index 100% rename from crates/warp_terminal/src/lib.rs rename to crates/galaxy_terminal/src/lib.rs diff --git a/crates/warp_terminal/src/model/ESCAPE_SEQUENCES.md b/crates/galaxy_terminal/src/model/ESCAPE_SEQUENCES.md similarity index 100% rename from crates/warp_terminal/src/model/ESCAPE_SEQUENCES.md rename to crates/galaxy_terminal/src/model/ESCAPE_SEQUENCES.md diff --git a/crates/warp_terminal/src/model/ansi/control_sequence_parameters.rs b/crates/galaxy_terminal/src/model/ansi/control_sequence_parameters.rs similarity index 100% rename from crates/warp_terminal/src/model/ansi/control_sequence_parameters.rs rename to crates/galaxy_terminal/src/model/ansi/control_sequence_parameters.rs diff --git a/crates/warp_terminal/src/model/ansi/mod.rs b/crates/galaxy_terminal/src/model/ansi/mod.rs similarity index 100% rename from crates/warp_terminal/src/model/ansi/mod.rs rename to crates/galaxy_terminal/src/model/ansi/mod.rs diff --git a/crates/warp_terminal/src/model/block_id.rs b/crates/galaxy_terminal/src/model/block_id.rs similarity index 100% rename from crates/warp_terminal/src/model/block_id.rs rename to crates/galaxy_terminal/src/model/block_id.rs diff --git a/crates/warp_terminal/src/model/block_index.rs b/crates/galaxy_terminal/src/model/block_index.rs similarity index 100% rename from crates/warp_terminal/src/model/block_index.rs rename to crates/galaxy_terminal/src/model/block_index.rs diff --git a/crates/warp_terminal/src/model/char_or_str.rs b/crates/galaxy_terminal/src/model/char_or_str.rs similarity index 100% rename from crates/warp_terminal/src/model/char_or_str.rs rename to crates/galaxy_terminal/src/model/char_or_str.rs diff --git a/crates/warp_terminal/src/model/escape_sequences.rs b/crates/galaxy_terminal/src/model/escape_sequences.rs similarity index 99% rename from crates/warp_terminal/src/model/escape_sequences.rs rename to crates/galaxy_terminal/src/model/escape_sequences.rs index a92d2b07..01593046 100644 --- a/crates/warp_terminal/src/model/escape_sequences.rs +++ b/crates/galaxy_terminal/src/model/escape_sequences.rs @@ -1,8 +1,8 @@ use std::collections::HashMap; use lazy_static::lazy_static; -use warpui::keymap::Keystroke; -use warpui::platform::OperatingSystem; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::OperatingSystem; use super::{ mouse::{MouseAction, MouseButton, MouseState}, diff --git a/crates/warp_terminal/src/model/escape_sequences/kitty_keyboard_protocol.rs b/crates/galaxy_terminal/src/model/escape_sequences/kitty_keyboard_protocol.rs similarity index 99% rename from crates/warp_terminal/src/model/escape_sequences/kitty_keyboard_protocol.rs rename to crates/galaxy_terminal/src/model/escape_sequences/kitty_keyboard_protocol.rs index bc2b117c..073f633e 100644 --- a/crates/warp_terminal/src/model/escape_sequences/kitty_keyboard_protocol.rs +++ b/crates/galaxy_terminal/src/model/escape_sequences/kitty_keyboard_protocol.rs @@ -1,6 +1,6 @@ -use warpui::keymap::Keystroke; -use warpui::platform::keyboard::KeyCode; -use warpui::platform::OperatingSystem; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::keyboard::KeyCode; +use galaxyui::platform::OperatingSystem; use super::{ModeProvider, TermMode}; diff --git a/crates/warp_terminal/src/model/escape_sequences_test.rs b/crates/galaxy_terminal/src/model/escape_sequences_test.rs similarity index 99% rename from crates/warp_terminal/src/model/escape_sequences_test.rs rename to crates/galaxy_terminal/src/model/escape_sequences_test.rs index 8e2ebbd7..a590b91f 100644 --- a/crates/warp_terminal/src/model/escape_sequences_test.rs +++ b/crates/galaxy_terminal/src/model/escape_sequences_test.rs @@ -1,5 +1,5 @@ -use warpui::keymap::Keystroke; -use warpui::platform::OperatingSystem; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::OperatingSystem; use crate::model::{ indexing::Point, diff --git a/crates/warp_terminal/src/model/grid/cell.rs b/crates/galaxy_terminal/src/model/grid/cell.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/cell.rs rename to crates/galaxy_terminal/src/model/grid/cell.rs diff --git a/crates/warp_terminal/src/model/grid/cell_test.rs b/crates/galaxy_terminal/src/model/grid/cell_test.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/cell_test.rs rename to crates/galaxy_terminal/src/model/grid/cell_test.rs diff --git a/crates/warp_terminal/src/model/grid/cell_type.rs b/crates/galaxy_terminal/src/model/grid/cell_type.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/cell_type.rs rename to crates/galaxy_terminal/src/model/grid/cell_type.rs diff --git a/crates/warp_terminal/src/model/grid/dimensions.rs b/crates/galaxy_terminal/src/model/grid/dimensions.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/dimensions.rs rename to crates/galaxy_terminal/src/model/grid/dimensions.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/attribute_map.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/attribute_map.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/attribute_map.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/attribute_map.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/attribute_map_tests.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/attribute_map_tests.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/attribute_map_tests.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/attribute_map_tests.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/content.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/content.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/content.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/content.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/content_tests.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/content_tests.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/content_tests.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/content_tests.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/grapheme.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/grapheme.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/grapheme.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/grapheme.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/index.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/index.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/index.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/index.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/index_tests.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/index_tests.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/index_tests.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/index_tests.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/mod.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/mod.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/mod.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/mod.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/mod_tests.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/mod_tests.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/mod_tests.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/mod_tests.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/row_iterator.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/row_iterator.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/row_iterator.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/row_iterator.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/style.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/style.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/style.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/style.rs diff --git a/crates/warp_terminal/src/model/grid/flat_storage/testing.rs b/crates/galaxy_terminal/src/model/grid/flat_storage/testing.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/flat_storage/testing.rs rename to crates/galaxy_terminal/src/model/grid/flat_storage/testing.rs diff --git a/crates/warp_terminal/src/model/grid/mod.rs b/crates/galaxy_terminal/src/model/grid/mod.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/mod.rs rename to crates/galaxy_terminal/src/model/grid/mod.rs diff --git a/crates/warp_terminal/src/model/grid/row.rs b/crates/galaxy_terminal/src/model/grid/row.rs similarity index 100% rename from crates/warp_terminal/src/model/grid/row.rs rename to crates/galaxy_terminal/src/model/grid/row.rs diff --git a/crates/warp_terminal/src/model/indexing.rs b/crates/galaxy_terminal/src/model/indexing.rs similarity index 99% rename from crates/warp_terminal/src/model/indexing.rs rename to crates/galaxy_terminal/src/model/indexing.rs index 052e9499..eb43e62c 100644 --- a/crates/warp_terminal/src/model/indexing.rs +++ b/crates/galaxy_terminal/src/model/indexing.rs @@ -5,7 +5,7 @@ use std::fmt; use std::ops::{Add, AddAssign, Range, Sub, SubAssign}; use serde::{Deserialize, Serialize}; -use warpui::units::Lines; +use galaxyui::units::Lines; use super::grid::Dimensions; diff --git a/crates/warp_terminal/src/model/indexing_tests.rs b/crates/galaxy_terminal/src/model/indexing_tests.rs similarity index 100% rename from crates/warp_terminal/src/model/indexing_tests.rs rename to crates/galaxy_terminal/src/model/indexing_tests.rs diff --git a/crates/warp_terminal/src/model/mod.rs b/crates/galaxy_terminal/src/model/mod.rs similarity index 100% rename from crates/warp_terminal/src/model/mod.rs rename to crates/galaxy_terminal/src/model/mod.rs diff --git a/crates/warp_terminal/src/model/mode.rs b/crates/galaxy_terminal/src/model/mode.rs similarity index 100% rename from crates/warp_terminal/src/model/mode.rs rename to crates/galaxy_terminal/src/model/mode.rs diff --git a/crates/warp_terminal/src/model/mouse.rs b/crates/galaxy_terminal/src/model/mouse.rs similarity index 96% rename from crates/warp_terminal/src/model/mouse.rs rename to crates/galaxy_terminal/src/model/mouse.rs index 72e45d14..b7296ee7 100644 --- a/crates/warp_terminal/src/model/mouse.rs +++ b/crates/galaxy_terminal/src/model/mouse.rs @@ -1,4 +1,4 @@ -use warpui::event::ModifiersState; +use galaxyui::event::ModifiersState; use super::indexing::Point; diff --git a/crates/warp_terminal/src/shared_session.rs b/crates/galaxy_terminal/src/shared_session.rs similarity index 100% rename from crates/warp_terminal/src/shared_session.rs rename to crates/galaxy_terminal/src/shared_session.rs diff --git a/crates/warp_terminal/src/shell/mod.rs b/crates/galaxy_terminal/src/shell/mod.rs similarity index 99% rename from crates/warp_terminal/src/shell/mod.rs rename to crates/galaxy_terminal/src/shell/mod.rs index 471995ee..c5cd4eac 100644 --- a/crates/warp_terminal/src/shell/mod.rs +++ b/crates/galaxy_terminal/src/shell/mod.rs @@ -13,11 +13,11 @@ use serde::{Deserialize, Serialize}; use smol_str::SmolStr; use typed_path::{TypedPath, TypedPathBuf, WindowsPath}; use version_compare::{Cmp, Version}; -use warp_completer::completer::{CommandExitStatus, CommandOutput}; +use galaxy_completer::completer::{CommandExitStatus, CommandOutput}; #[cfg(windows)] -use warp_core::paths::base_config_dir; -use warp_core::platform::SessionPlatform; -use warp_util::path::{ +use galaxy_core::paths::base_config_dir; +use galaxy_core::platform::SessionPlatform; +use galaxy_util::path::{ convert_msys2_to_windows_native_path, convert_wsl_to_windows_host_path, msys2_exe_to_root, }; @@ -265,7 +265,7 @@ impl From for command_corrections::Shell { } } -impl From for warp_util::path::ShellFamily { +impl From for galaxy_util::path::ShellFamily { fn from(value: ShellType) -> Self { match value { ShellType::Zsh | ShellType::Bash | ShellType::Fish => Self::Posix, diff --git a/crates/warp_terminal/src/shell/mod_tests.rs b/crates/galaxy_terminal/src/shell/mod_tests.rs similarity index 100% rename from crates/warp_terminal/src/shell/mod_tests.rs rename to crates/galaxy_terminal/src/shell/mod_tests.rs diff --git a/crates/warp_terminal/src/shell/unescape.rs b/crates/galaxy_terminal/src/shell/unescape.rs similarity index 100% rename from crates/warp_terminal/src/shell/unescape.rs rename to crates/galaxy_terminal/src/shell/unescape.rs diff --git a/crates/warp_util/Cargo.toml b/crates/galaxy_util/Cargo.toml similarity index 94% rename from crates/warp_util/Cargo.toml rename to crates/galaxy_util/Cargo.toml index 9996cff8..de6ed992 100644 --- a/crates/warp_util/Cargo.toml +++ b/crates/galaxy_util/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_util" +name = "galaxy_util" authors = ["Warp Team "] version = "0.1.0" edition = "2021" @@ -33,4 +33,4 @@ windows.workspace = true gloo.workspace = true [dev-dependencies] -warpui.workspace = true +galaxyui.workspace = true diff --git a/crates/warp_util/src/assets.rs b/crates/galaxy_util/src/assets.rs similarity index 100% rename from crates/warp_util/src/assets.rs rename to crates/galaxy_util/src/assets.rs diff --git a/crates/warp_util/src/content_version.rs b/crates/galaxy_util/src/content_version.rs similarity index 100% rename from crates/warp_util/src/content_version.rs rename to crates/galaxy_util/src/content_version.rs diff --git a/crates/warp_util/src/content_version_test.rs b/crates/galaxy_util/src/content_version_test.rs similarity index 100% rename from crates/warp_util/src/content_version_test.rs rename to crates/galaxy_util/src/content_version_test.rs diff --git a/crates/warp_util/src/file.rs b/crates/galaxy_util/src/file.rs similarity index 100% rename from crates/warp_util/src/file.rs rename to crates/galaxy_util/src/file.rs diff --git a/crates/warp_util/src/file_type.rs b/crates/galaxy_util/src/file_type.rs similarity index 100% rename from crates/warp_util/src/file_type.rs rename to crates/galaxy_util/src/file_type.rs diff --git a/crates/warp_util/src/lib.rs b/crates/galaxy_util/src/lib.rs similarity index 100% rename from crates/warp_util/src/lib.rs rename to crates/galaxy_util/src/lib.rs diff --git a/crates/warp_util/src/on_cancel.rs b/crates/galaxy_util/src/on_cancel.rs similarity index 100% rename from crates/warp_util/src/on_cancel.rs rename to crates/galaxy_util/src/on_cancel.rs diff --git a/crates/warp_util/src/on_cancel_tests.rs b/crates/galaxy_util/src/on_cancel_tests.rs similarity index 90% rename from crates/warp_util/src/on_cancel_tests.rs rename to crates/galaxy_util/src/on_cancel_tests.rs index 7a785154..1536aa5c 100644 --- a/crates/warp_util/src/on_cancel_tests.rs +++ b/crates/galaxy_util/src/on_cancel_tests.rs @@ -7,7 +7,7 @@ fn test_ready_future_doesnt_call_callback() { let callback_called = AtomicBool::new(false); let future = async {}.on_cancel(|| callback_called.store(true, Ordering::SeqCst)); - warpui::r#async::block_on(future); + galaxyui::r#async::block_on(future); assert!(!callback_called.load(Ordering::Relaxed)); } @@ -24,7 +24,7 @@ fn test_aborted_future_calls_callback() { // Abort the future before it is ever polled. handle.abort(); - let future_result = warpui::r#async::block_on(future); + let future_result = galaxyui::r#async::block_on(future); // The future should be aborted and the callback should have been called. assert_eq!(future_result, Err(Aborted)); diff --git a/crates/warp_util/src/path.rs b/crates/galaxy_util/src/path.rs similarity index 99% rename from crates/warp_util/src/path.rs rename to crates/galaxy_util/src/path.rs index ef6fcce9..75d121a5 100644 --- a/crates/warp_util/src/path.rs +++ b/crates/galaxy_util/src/path.rs @@ -80,7 +80,7 @@ const DIRS_IN_MSYS2_ROOT: [&[u8]; 14] = [ /// \return any override shell launch path, reading from the WARP_SHELL_PATH variable. pub fn warp_shell_path() -> Option { // TODO(peter): we ought to tolerate non-Unicode paths here. - env::var("WARP_SHELL_PATH").ok() + env::var("GALAXY_SHELL_PATH").ok() } /// Abbreviates the session home directory in the given path to '~', if it is in the given path, @@ -556,7 +556,7 @@ pub fn is_msys2_path(path: &Path) -> bool { /// # #[cfg(not(windows))] /// # { /// use std::path::Path; -/// use warp_util::path::to_relative_path; +/// use galaxy_util::path::to_relative_path; /// /// let is_wsl = false; /// let abs_path = Path::new("/Users/john/projects/app/src/main.rs"); @@ -639,7 +639,7 @@ pub fn normalize_relative_path_for_glob(path: &Path) -> String { /// # Examples /// ``` /// use std::path::Path; -/// use warp_util::path::common_path; +/// use galaxy_util::path::common_path; /// /// let paths = [Path::new("/foo/bar/baz"), Path::new("/foo/bar/quux"), Path::new("/foo/bar/quuux")]; /// assert_eq!(common_path(paths), Some(Path::new("/foo/bar").to_path_buf())); @@ -767,7 +767,7 @@ pub struct RootGrouping

{ /// # Examples /// ``` /// use std::path::PathBuf; -/// use warp_util::path::group_roots_by_common_ancestor; +/// use galaxy_util::path::group_roots_by_common_ancestor; /// /// let grouping = group_roots_by_common_ancestor(&[ /// PathBuf::from("/code/a/z"), diff --git a/crates/warp_util/src/path_test.rs b/crates/galaxy_util/src/path_test.rs similarity index 100% rename from crates/warp_util/src/path_test.rs rename to crates/galaxy_util/src/path_test.rs diff --git a/crates/warp_util/src/standardized_path.rs b/crates/galaxy_util/src/standardized_path.rs similarity index 100% rename from crates/warp_util/src/standardized_path.rs rename to crates/galaxy_util/src/standardized_path.rs diff --git a/crates/warp_util/src/standardized_path_tests.rs b/crates/galaxy_util/src/standardized_path_tests.rs similarity index 100% rename from crates/warp_util/src/standardized_path_tests.rs rename to crates/galaxy_util/src/standardized_path_tests.rs diff --git a/crates/warp_util/src/user_input.rs b/crates/galaxy_util/src/user_input.rs similarity index 100% rename from crates/warp_util/src/user_input.rs rename to crates/galaxy_util/src/user_input.rs diff --git a/crates/warp_util/src/windows.rs b/crates/galaxy_util/src/windows.rs similarity index 100% rename from crates/warp_util/src/windows.rs rename to crates/galaxy_util/src/windows.rs diff --git a/crates/warp_util/src/worktree_names.rs b/crates/galaxy_util/src/worktree_names.rs similarity index 100% rename from crates/warp_util/src/worktree_names.rs rename to crates/galaxy_util/src/worktree_names.rs diff --git a/crates/warp_util/src/worktree_names_tests.rs b/crates/galaxy_util/src/worktree_names_tests.rs similarity index 100% rename from crates/warp_util/src/worktree_names_tests.rs rename to crates/galaxy_util/src/worktree_names_tests.rs diff --git a/crates/warp_web_event_bus/Cargo.toml b/crates/galaxy_web_event_bus/Cargo.toml similarity index 81% rename from crates/warp_web_event_bus/Cargo.toml rename to crates/galaxy_web_event_bus/Cargo.toml index 47c24947..b6760fe5 100644 --- a/crates/warp_web_event_bus/Cargo.toml +++ b/crates/galaxy_web_event_bus/Cargo.toml @@ -1,11 +1,11 @@ [package] -name = "warp_web_event_bus" +name = "galaxy_web_event_bus" edition = "2024" publish.workspace = true license.workspace = true [lib] -name = "warp_web_event_bus" +name = "galaxy_web_event_bus" path = "src/lib.rs" [dependencies] diff --git a/crates/warp_web_event_bus/src/lib.rs b/crates/galaxy_web_event_bus/src/lib.rs similarity index 100% rename from crates/warp_web_event_bus/src/lib.rs rename to crates/galaxy_web_event_bus/src/lib.rs diff --git a/crates/warpui/Cargo.toml b/crates/galaxyui/Cargo.toml similarity index 91% rename from crates/warpui/Cargo.toml rename to crates/galaxyui/Cargo.toml index 6830eb07..41b4c9c4 100644 --- a/crates/warpui/Cargo.toml +++ b/crates/galaxyui/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warpui" +name = "galaxyui" version = "0.0.0" edition = "2021" authors.workspace = true @@ -14,16 +14,16 @@ license = "MIT" enable-metal-frame-capture = [] # Enables the font-kit rasterizer on Windows. fontkit-rasterizer = [] -traces = ["warpui_core/traces"] +traces = ["galaxyui_core/traces"] # Feature enabled only when app is compiled for integration tests. -integration_tests = ["warpui_core/integration_tests"] +integration_tests = ["galaxyui_core/integration_tests"] # If enabled, writes named telemetry events to the info log. Should never be # enabled in release builds without a PII audit of telemetry data. -log_named_telemetry_events = ["warpui_core/log_named_telemetry_events"] -schema_gen = ["warpui_core/schema_gen"] -settings_value = ["warpui_core/settings_value"] +log_named_telemetry_events = ["galaxyui_core/log_named_telemetry_events"] +schema_gen = ["galaxyui_core/schema_gen"] +settings_value = ["galaxyui_core/settings_value"] # Enables utilities for testing. -test-util = ["warpui_core/test-util"] +test-util = ["galaxyui_core/test-util"] experimental-wgpu-renderer = ["dep:wgpu", "dep:bytemuck", "dep:version-compare"] [dependencies] @@ -50,7 +50,7 @@ takecell = "0.1.1" thiserror.workspace = true vec1.workspace = true version-compare = { workspace = true, optional = true } -warpui_core.workspace = true +galaxyui_core.workspace = true wgpu = { workspace = true, optional = true } [dev-dependencies] @@ -59,8 +59,8 @@ env_logger.workspace = true futures-timer = "3.0.2" image = { workspace = true, default-features = false, features = ["png"] } rust-embed.workspace = true -warpui = { workspace = true, features = ["test-util"] } -warpui_core = { workspace = true, features = ["test-util"] } +galaxyui = { workspace = true, features = ["test-util"] } +galaxyui_core = { workspace = true, features = ["test-util"] } [target.'cfg(target_os = "macos")'.dependencies] block.workspace = true diff --git a/crates/warpui/build.rs b/crates/galaxyui/build.rs similarity index 100% rename from crates/warpui/build.rs rename to crates/galaxyui/build.rs diff --git a/crates/warpui/examples/animated-gradient-text/main.rs b/crates/galaxyui/examples/animated-gradient-text/main.rs similarity index 86% rename from crates/warpui/examples/animated-gradient-text/main.rs rename to crates/galaxyui/examples/animated-gradient-text/main.rs index 119125e3..e01064a3 100644 --- a/crates/warpui/examples/animated-gradient-text/main.rs +++ b/crates/galaxyui/examples/animated-gradient-text/main.rs @@ -3,9 +3,9 @@ use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -26,7 +26,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(|ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/animated-gradient-text/root_view.rs b/crates/galaxyui/examples/animated-gradient-text/root_view.rs similarity index 84% rename from crates/warpui/examples/animated-gradient-text/root_view.rs rename to crates/galaxyui/examples/animated-gradient-text/root_view.rs index 720e6c01..7b5304ef 100644 --- a/crates/warpui/examples/animated-gradient-text/root_view.rs +++ b/crates/galaxyui/examples/animated-gradient-text/root_view.rs @@ -1,11 +1,11 @@ -use warpui::color::ColorU; -use warpui::elements::shimmering_text::{ +use galaxyui::color::ColorU; +use galaxyui::elements::shimmering_text::{ ShimmerConfig, ShimmeringTextElement, ShimmeringTextStateHandle, }; -use warpui::elements::{Align, ConstrainedBox, ParentElement, Rect, Stack}; -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{AppContext, Element, Entity, TypedActionView, View, ViewContext}; +use galaxyui::elements::{Align, ConstrainedBox, ParentElement, Rect, Stack}; +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{AppContext, Element, Entity, TypedActionView, View, ViewContext}; pub struct RootView { text: String, @@ -21,7 +21,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { + let font_family = galaxyui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { cache .load_system_font("Times") .or_else(|_| cache.load_system_font("Arial")) diff --git a/crates/warpui/examples/animated_images/main.rs b/crates/galaxyui/examples/animated_images/main.rs similarity index 84% rename from crates/warpui/examples/animated_images/main.rs rename to crates/galaxyui/examples/animated_images/main.rs index 8190c8ae..c465c75f 100644 --- a/crates/warpui/examples/animated_images/main.rs +++ b/crates/galaxyui/examples/animated_images/main.rs @@ -3,9 +3,9 @@ use root_view::RootView; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { let app_builder = platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { - ctx.add_window(warpui::AddWindowOptions::default(), |_| RootView::new()); + ctx.add_window(galaxyui::AddWindowOptions::default(), |_| RootView::new()); }); Ok(()) diff --git a/crates/warpui/examples/animated_images/root_view.rs b/crates/galaxyui/examples/animated_images/root_view.rs similarity index 99% rename from crates/warpui/examples/animated_images/root_view.rs rename to crates/galaxyui/examples/animated_images/root_view.rs index 97d77dfe..40ccd26c 100644 --- a/crates/warpui/examples/animated_images/root_view.rs +++ b/crates/galaxyui/examples/animated_images/root_view.rs @@ -1,5 +1,5 @@ use instant::Instant; -use warpui::{ +use galaxyui::{ assets::asset_cache::AssetSource, elements::{ CacheOption, ConstrainedBox, CrossAxisAlignment, Flex, Image, ParentElement, Shrinkable, diff --git a/crates/warpui/examples/assets/README.md b/crates/galaxyui/examples/assets/README.md similarity index 100% rename from crates/warpui/examples/assets/README.md rename to crates/galaxyui/examples/assets/README.md diff --git a/crates/warpui/examples/assets/bundled/svg/block-bulletedlist.svg b/crates/galaxyui/examples/assets/bundled/svg/block-bulletedlist.svg similarity index 100% rename from crates/warpui/examples/assets/bundled/svg/block-bulletedlist.svg rename to crates/galaxyui/examples/assets/bundled/svg/block-bulletedlist.svg diff --git a/crates/warpui/examples/assets/bundled/svg/gear.svg b/crates/galaxyui/examples/assets/bundled/svg/gear.svg similarity index 100% rename from crates/warpui/examples/assets/bundled/svg/gear.svg rename to crates/galaxyui/examples/assets/bundled/svg/gear.svg diff --git a/crates/warpui/examples/assets/bundled/svg/search.svg b/crates/galaxyui/examples/assets/bundled/svg/search.svg similarity index 100% rename from crates/warpui/examples/assets/bundled/svg/search.svg rename to crates/galaxyui/examples/assets/bundled/svg/search.svg diff --git a/crates/warpui/examples/assets/bundled/svg/user.svg b/crates/galaxyui/examples/assets/bundled/svg/user.svg similarity index 100% rename from crates/warpui/examples/assets/bundled/svg/user.svg rename to crates/galaxyui/examples/assets/bundled/svg/user.svg diff --git a/crates/warpui/examples/assets/numbers-1000ms.gif b/crates/galaxyui/examples/assets/numbers-1000ms.gif similarity index 100% rename from crates/warpui/examples/assets/numbers-1000ms.gif rename to crates/galaxyui/examples/assets/numbers-1000ms.gif diff --git a/crates/warpui/examples/assets/numbers-750ms.gif b/crates/galaxyui/examples/assets/numbers-750ms.gif similarity index 100% rename from crates/warpui/examples/assets/numbers-750ms.gif rename to crates/galaxyui/examples/assets/numbers-750ms.gif diff --git a/crates/warpui/examples/assets/rustyrain.gif b/crates/galaxyui/examples/assets/rustyrain.gif similarity index 100% rename from crates/warpui/examples/assets/rustyrain.gif rename to crates/galaxyui/examples/assets/rustyrain.gif diff --git a/crates/warpui/examples/manual-scrolling/main.rs b/crates/galaxyui/examples/autotracking/main.rs similarity index 88% rename from crates/warpui/examples/manual-scrolling/main.rs rename to crates/galaxyui/examples/autotracking/main.rs index baeaf5d2..d7f67fe3 100644 --- a/crates/warpui/examples/manual-scrolling/main.rs +++ b/crates/galaxyui/examples/autotracking/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -28,7 +28,7 @@ fn main() -> Result<()> { let _ = app_builder.run(move |ctx| { root_view::init(ctx); ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/autotracking/root_view.rs b/crates/galaxyui/examples/autotracking/root_view.rs similarity index 97% rename from crates/warpui/examples/autotracking/root_view.rs rename to crates/galaxyui/examples/autotracking/root_view.rs index 8089decc..28cb7fef 100644 --- a/crates/warpui/examples/autotracking/root_view.rs +++ b/crates/galaxyui/examples/autotracking/root_view.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; -use warpui::elements::DispatchEventResult; -use warpui::fonts::FamilyId; -use warpui::{ +use galaxyui::elements::DispatchEventResult; +use galaxyui::fonts::FamilyId; +use galaxyui::{ elements::{ Align, Border, ChildView, Container, CornerRadius, EventHandler, Flex, ParentElement, Radius, Rect, Stack, Text, @@ -106,7 +106,7 @@ enum MainViewAction { impl MainView { fn new(ctx: &mut ViewContext) -> Self { let model = ctx.add_model(|_| Counter::default()); - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); MainView { model, diff --git a/crates/warpui/examples/blur/main.rs b/crates/galaxyui/examples/blur/main.rs similarity index 90% rename from crates/warpui/examples/blur/main.rs rename to crates/galaxyui/examples/blur/main.rs index 65a54ef9..27071b91 100644 --- a/crates/warpui/examples/blur/main.rs +++ b/crates/galaxyui/examples/blur/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions { + galaxyui::AddWindowOptions { // Set the window background blur radius to 18 pixels. background_blur_radius_pixels: Some(18), ..Default::default() diff --git a/crates/warpui/examples/blur/root_view.rs b/crates/galaxyui/examples/blur/root_view.rs similarity index 86% rename from crates/warpui/examples/blur/root_view.rs rename to crates/galaxyui/examples/blur/root_view.rs index baed48df..8dce81cb 100644 --- a/crates/warpui/examples/blur/root_view.rs +++ b/crates/galaxyui/examples/blur/root_view.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{elements::Rect, AppContext, Element, Entity, TypedActionView, View}; +use galaxyui::{elements::Rect, AppContext, Element, Entity, TypedActionView, View}; pub struct BlurredView {} diff --git a/crates/warpui/examples/draggable/main.rs b/crates/galaxyui/examples/draggable/main.rs similarity index 86% rename from crates/warpui/examples/draggable/main.rs rename to crates/galaxyui/examples/draggable/main.rs index 7ae685e1..2d037087 100644 --- a/crates/warpui/examples/draggable/main.rs +++ b/crates/galaxyui/examples/draggable/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -28,7 +28,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { - ctx.add_window(warpui::AddWindowOptions::default(), |_| { + ctx.add_window(galaxyui::AddWindowOptions::default(), |_| { root_view::RootView::default() }); }); diff --git a/crates/warpui/examples/draggable/root_view.rs b/crates/galaxyui/examples/draggable/root_view.rs similarity index 98% rename from crates/warpui/examples/draggable/root_view.rs rename to crates/galaxyui/examples/draggable/root_view.rs index c9f87628..1f11f08f 100644 --- a/crates/warpui/examples/draggable/root_view.rs +++ b/crates/galaxyui/examples/draggable/root_view.rs @@ -5,8 +5,8 @@ use pathfinder_geometry::{ rect::RectF, vector::{vec2f, Vector2F}, }; -use warpui::elements::{AcceptedByDropTarget, DropTarget, DropTargetData}; -use warpui::{ +use galaxyui::elements::{AcceptedByDropTarget, DropTarget, DropTargetData}; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, DragAxis, Draggable, DraggableState, ParentElement, Rect, Stack, diff --git a/crates/warpui/examples/example-black-background-box/main.rs b/crates/galaxyui/examples/example-black-background-box/main.rs similarity index 86% rename from crates/warpui/examples/example-black-background-box/main.rs rename to crates/galaxyui/examples/example-black-background-box/main.rs index 8ee22615..582a7b60 100644 --- a/crates/warpui/examples/example-black-background-box/main.rs +++ b/crates/galaxyui/examples/example-black-background-box/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -26,7 +26,7 @@ fn main() -> Result<()> { let app_builder = platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { - ctx.add_window(warpui::AddWindowOptions::default(), |_| { + ctx.add_window(galaxyui::AddWindowOptions::default(), |_| { root_view::RootView {} }); }); diff --git a/crates/warpui/examples/example-black-background-box/root_view.rs b/crates/galaxyui/examples/example-black-background-box/root_view.rs similarity index 86% rename from crates/warpui/examples/example-black-background-box/root_view.rs rename to crates/galaxyui/examples/example-black-background-box/root_view.rs index 82e6aae1..74cbf518 100644 --- a/crates/warpui/examples/example-black-background-box/root_view.rs +++ b/crates/galaxyui/examples/example-black-background-box/root_view.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{elements::Rect, AppContext, Element, Entity, TypedActionView, View}; +use galaxyui::{elements::Rect, AppContext, Element, Entity, TypedActionView, View}; pub struct RootView {} diff --git a/crates/warpui/examples/flex-expand/main.rs b/crates/galaxyui/examples/flex-expand/main.rs similarity index 88% rename from crates/warpui/examples/flex-expand/main.rs rename to crates/galaxyui/examples/flex-expand/main.rs index 3fb46165..ffafa94c 100644 --- a/crates/warpui/examples/flex-expand/main.rs +++ b/crates/galaxyui/examples/flex-expand/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/flex-expand/root_view.rs b/crates/galaxyui/examples/flex-expand/root_view.rs similarity index 98% rename from crates/warpui/examples/flex-expand/root_view.rs rename to crates/galaxyui/examples/flex-expand/root_view.rs index 1b46188a..9ef6cc60 100644 --- a/crates/warpui/examples/flex-expand/root_view.rs +++ b/crates/galaxyui/examples/flex-expand/root_view.rs @@ -1,7 +1,7 @@ -use warpui::elements::{Expanded, Shrinkable}; -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::elements::{Expanded, Shrinkable}; +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Rect, Stack, Text, @@ -9,7 +9,7 @@ use warpui::{ AppContext, Element, Entity, TypedActionView, View, ViewContext, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub struct RootView { font_family: FamilyId, @@ -17,7 +17,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); RootView { font_family } } diff --git a/crates/warpui/examples/flex/main.rs b/crates/galaxyui/examples/flex/main.rs similarity index 88% rename from crates/warpui/examples/flex/main.rs rename to crates/galaxyui/examples/flex/main.rs index 3fb46165..ffafa94c 100644 --- a/crates/warpui/examples/flex/main.rs +++ b/crates/galaxyui/examples/flex/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/flex/root_view.rs b/crates/galaxyui/examples/flex/root_view.rs similarity index 98% rename from crates/warpui/examples/flex/root_view.rs rename to crates/galaxyui/examples/flex/root_view.rs index af302a10..980bf6ca 100644 --- a/crates/warpui/examples/flex/root_view.rs +++ b/crates/galaxyui/examples/flex/root_view.rs @@ -1,6 +1,6 @@ -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, Flex, MainAxisAlignment, MainAxisSize, ParentElement, Rect, Shrinkable, Stack, Text, Wrap, @@ -8,7 +8,7 @@ use warpui::{ AppContext, Element, Entity, TypedActionView, View, ViewContext, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub struct RootView { font_family: FamilyId, @@ -16,7 +16,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); RootView { font_family } } diff --git a/crates/warpui/examples/formatted-text/main.rs b/crates/galaxyui/examples/formatted-text/main.rs similarity index 85% rename from crates/warpui/examples/formatted-text/main.rs rename to crates/galaxyui/examples/formatted-text/main.rs index 93f2eb66..46f3ad2d 100644 --- a/crates/warpui/examples/formatted-text/main.rs +++ b/crates/galaxyui/examples/formatted-text/main.rs @@ -3,9 +3,9 @@ use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -28,7 +28,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { let view_handle = root_view::RootView::new; - ctx.add_window(warpui::AddWindowOptions::default(), view_handle); + ctx.add_window(galaxyui::AddWindowOptions::default(), view_handle); }); Ok(()) diff --git a/crates/warpui/examples/formatted-text/root_view.rs b/crates/galaxyui/examples/formatted-text/root_view.rs similarity index 96% rename from crates/warpui/examples/formatted-text/root_view.rs rename to crates/galaxyui/examples/formatted-text/root_view.rs index 7c762810..6888877a 100644 --- a/crates/warpui/examples/formatted-text/root_view.rs +++ b/crates/galaxyui/examples/formatted-text/root_view.rs @@ -1,9 +1,9 @@ //! A UI sample demonstrating how the SelectableArea element can be used. use markdown_parser::{parse_markdown, FormattedTextFragment, FormattedTextLine}; -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{ ChildView, ConstrainedBox, Flex, FormattedTextElement, HeadingFontSizeMultipliers, ParentElement, Rect, SelectableArea, SelectionHandle, Stack, Text, @@ -11,8 +11,8 @@ use warpui::{ AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle, }; -use warpui::color::ColorU; -use warpui::elements::{Align, HighlightedHyperlink, HyperlinkLens}; +use galaxyui::color::ColorU; +use galaxyui::elements::{Align, HighlightedHyperlink, HyperlinkLens}; pub struct RootView { sub_view: ViewHandle, @@ -21,7 +21,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { let sub_view = ctx.add_view(|ctx| { - let font_family = warpui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { + let font_family = galaxyui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { cache.load_system_font("Menlo").expect("Should load Menlo") }); let view = FormattedTextView { diff --git a/crates/warpui/examples/frame-capture-test/main.rs b/crates/galaxyui/examples/frame-capture-test/main.rs similarity index 86% rename from crates/warpui/examples/frame-capture-test/main.rs rename to crates/galaxyui/examples/frame-capture-test/main.rs index 9e3cb2ad..785da95f 100644 --- a/crates/warpui/examples/frame-capture-test/main.rs +++ b/crates/galaxyui/examples/frame-capture-test/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/frame-capture-test/root_view.rs b/crates/galaxyui/examples/frame-capture-test/root_view.rs similarity index 99% rename from crates/warpui/examples/frame-capture-test/root_view.rs rename to crates/galaxyui/examples/frame-capture-test/root_view.rs index 87382b32..b52bc135 100644 --- a/crates/warpui/examples/frame-capture-test/root_view.rs +++ b/crates/galaxyui/examples/frame-capture-test/root_view.rs @@ -2,8 +2,8 @@ use image::ImageEncoder; use pathfinder_color::ColorU; use std::sync::{Arc, Mutex}; use std::time::{SystemTime, UNIX_EPOCH}; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{ Align, ConstrainedBox, Container, DispatchEventResult, EventHandler, Padding, ParentElement, Rect, Stack, Text, @@ -19,7 +19,7 @@ pub enum RootViewAction { } pub struct RootView { - window_id: warpui::WindowId, + window_id: galaxyui::WindowId, font_family: FamilyId, last_capture_msg: Arc>>, } diff --git a/crates/warpui/examples/image/loading.svg b/crates/galaxyui/examples/image/loading.svg similarity index 100% rename from crates/warpui/examples/image/loading.svg rename to crates/galaxyui/examples/image/loading.svg diff --git a/crates/warpui/examples/image/main.rs b/crates/galaxyui/examples/image/main.rs similarity index 67% rename from crates/warpui/examples/image/main.rs rename to crates/galaxyui/examples/image/main.rs index 5d4dbc23..85e8e0df 100644 --- a/crates/warpui/examples/image/main.rs +++ b/crates/galaxyui/examples/image/main.rs @@ -2,14 +2,14 @@ use anyhow::Result; use root_view::RootView; pub mod root_view; -extern crate warpui; -use warpui::platform; +extern crate galaxyui; +use galaxyui::platform; fn main() -> Result<()> { let app_builder = platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(()), None); let _ = app_builder.run(move |ctx| { - ctx.add_window(warpui::AddWindowOptions::default(), |_| RootView::new()); + ctx.add_window(galaxyui::AddWindowOptions::default(), |_| RootView::new()); }); Ok(()) diff --git a/crates/warpui/examples/image/root_view.rs b/crates/galaxyui/examples/image/root_view.rs similarity index 99% rename from crates/warpui/examples/image/root_view.rs rename to crates/galaxyui/examples/image/root_view.rs index e39758e7..e1b6f4b4 100644 --- a/crates/warpui/examples/image/root_view.rs +++ b/crates/galaxyui/examples/image/root_view.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{ CacheOption, ConstrainedBox, Flex, Icon, Image, MainAxisAlignment, MainAxisSize, ParentElement, Rect, Stack, diff --git a/crates/warpui/examples/list/main.rs b/crates/galaxyui/examples/list/main.rs similarity index 88% rename from crates/warpui/examples/list/main.rs rename to crates/galaxyui/examples/list/main.rs index 3fb46165..ffafa94c 100644 --- a/crates/warpui/examples/list/main.rs +++ b/crates/galaxyui/examples/list/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/list/root_view.rs b/crates/galaxyui/examples/list/root_view.rs similarity index 97% rename from crates/warpui/examples/list/root_view.rs rename to crates/galaxyui/examples/list/root_view.rs index e34c5639..65a430d9 100644 --- a/crates/warpui/examples/list/root_view.rs +++ b/crates/galaxyui/examples/list/root_view.rs @@ -1,6 +1,6 @@ -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, Fill, Flex, List, ListState, MainAxisSize, ParentElement, Rect, ScrollStateHandle, Scrollable, ScrollableElement, ScrollbarWidth, @@ -10,7 +10,7 @@ use warpui::{ }; use std::sync::{Arc, Mutex}; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub struct RootView { font_family: FamilyId, @@ -20,7 +20,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); let list_state = ListState::new(move |i, _scroll_offset, _app| { diff --git a/crates/warpui/examples/autotracking/main.rs b/crates/galaxyui/examples/manual-scrolling/main.rs similarity index 88% rename from crates/warpui/examples/autotracking/main.rs rename to crates/galaxyui/examples/manual-scrolling/main.rs index baeaf5d2..d7f67fe3 100644 --- a/crates/warpui/examples/autotracking/main.rs +++ b/crates/galaxyui/examples/manual-scrolling/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -28,7 +28,7 @@ fn main() -> Result<()> { let _ = app_builder.run(move |ctx| { root_view::init(ctx); ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/manual-scrolling/root_view.rs b/crates/galaxyui/examples/manual-scrolling/root_view.rs similarity index 82% rename from crates/warpui/examples/manual-scrolling/root_view.rs rename to crates/galaxyui/examples/manual-scrolling/root_view.rs index fbe5ed4a..e7d95666 100644 --- a/crates/warpui/examples/manual-scrolling/root_view.rs +++ b/crates/galaxyui/examples/manual-scrolling/root_view.rs @@ -1,34 +1,34 @@ use pathfinder_geometry::rect::RectF; use pathfinder_geometry::vector::vec2f; use pathfinder_geometry::vector::Vector2F; -use warpui::elements::new_scrollable::AxisConfiguration; -use warpui::elements::new_scrollable::ClippedAxisConfiguration; -use warpui::elements::new_scrollable::DualAxisConfig; -use warpui::elements::new_scrollable::NewScrollableElement; -use warpui::elements::new_scrollable::ScrollableAppearance; -use warpui::elements::new_scrollable::ScrollableAxis; -use warpui::elements::Axis; +use galaxyui::elements::new_scrollable::AxisConfiguration; +use galaxyui::elements::new_scrollable::ClippedAxisConfiguration; +use galaxyui::elements::new_scrollable::DualAxisConfig; +use galaxyui::elements::new_scrollable::NewScrollableElement; +use galaxyui::elements::new_scrollable::ScrollableAppearance; +use galaxyui::elements::new_scrollable::ScrollableAxis; +use galaxyui::elements::Axis; -use warpui::elements::ChildView; -use warpui::elements::ClippedScrollStateHandle; -use warpui::elements::NewScrollable; -use warpui::elements::Point; -use warpui::elements::ScrollData; -use warpui::elements::ScrollStateHandle; -use warpui::keymap::FixedBinding; -use warpui::units::Pixels; -use warpui::AppContext; -use warpui::TypedActionView; -use warpui::ViewHandle; -use warpui::{ +use galaxyui::elements::ChildView; +use galaxyui::elements::ClippedScrollStateHandle; +use galaxyui::elements::NewScrollable; +use galaxyui::elements::Point; +use galaxyui::elements::ScrollData; +use galaxyui::elements::ScrollStateHandle; +use galaxyui::keymap::FixedBinding; +use galaxyui::units::Pixels; +use galaxyui::AppContext; +use galaxyui::TypedActionView; +use galaxyui::ViewHandle; +use galaxyui::{ elements::{ConstrainedBox, ParentElement, Rect, ScrollbarWidth, Stack}, Element, Entity, View, ViewContext, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub fn init(ctx: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Add bindings to trigger actions in the subview. ctx.register_fixed_bindings([ @@ -160,8 +160,8 @@ impl ScrollableElement { impl Element for ScrollableElement { fn layout( &mut self, - constraint: warpui::SizeConstraint, - _: &mut warpui::LayoutContext, + constraint: galaxyui::SizeConstraint, + _: &mut galaxyui::LayoutContext, _: &AppContext, ) -> Vector2F { let size = vec2f( @@ -172,9 +172,9 @@ impl Element for ScrollableElement { size } - fn after_layout(&mut self, _: &mut warpui::AfterLayoutContext, _: &AppContext) {} + fn after_layout(&mut self, _: &mut galaxyui::AfterLayoutContext, _: &AppContext) {} - fn paint(&mut self, origin: Vector2F, ctx: &mut warpui::PaintContext, _app: &AppContext) { + fn paint(&mut self, origin: Vector2F, ctx: &mut galaxyui::PaintContext, _app: &AppContext) { self.origin = Some(Point::from_vec2f(origin, ctx.scene.z_index())); let adjusted_origin = origin - vec2f(0., self.scroll_top); for i in 0..10 { @@ -206,8 +206,8 @@ impl Element for ScrollableElement { fn dispatch_event( &mut self, - _: &warpui::event::DispatchedEvent, - _: &mut warpui::EventContext, + _: &galaxyui::event::DispatchedEvent, + _: &mut galaxyui::EventContext, _: &AppContext, ) -> bool { false @@ -230,7 +230,7 @@ impl NewScrollableElement for ScrollableElement { } } - fn scroll(&mut self, delta: warpui::units::Pixels, axis: Axis, ctx: &mut warpui::EventContext) { + fn scroll(&mut self, delta: galaxyui::units::Pixels, axis: Axis, ctx: &mut galaxyui::EventContext) { match axis { Axis::Horizontal => (), Axis::Vertical => { diff --git a/crates/warpui/examples/percentage/main.rs b/crates/galaxyui/examples/percentage/main.rs similarity index 88% rename from crates/warpui/examples/percentage/main.rs rename to crates/galaxyui/examples/percentage/main.rs index 3fb46165..ffafa94c 100644 --- a/crates/warpui/examples/percentage/main.rs +++ b/crates/galaxyui/examples/percentage/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/percentage/root_view.rs b/crates/galaxyui/examples/percentage/root_view.rs similarity index 96% rename from crates/warpui/examples/percentage/root_view.rs rename to crates/galaxyui/examples/percentage/root_view.rs index 7505cfe1..a81241d1 100644 --- a/crates/warpui/examples/percentage/root_view.rs +++ b/crates/galaxyui/examples/percentage/root_view.rs @@ -1,6 +1,6 @@ -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ color::ColorU, elements::{ Align, Border, ConstrainedBox, Container, CrossAxisAlignment, Flex, MainAxisAlignment, @@ -15,7 +15,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); RootView { font_family } } diff --git a/crates/galaxyui/examples/resizable/main.rs b/crates/galaxyui/examples/resizable/main.rs new file mode 100644 index 00000000..ffafa94c --- /dev/null +++ b/crates/galaxyui/examples/resizable/main.rs @@ -0,0 +1,36 @@ +use anyhow::{anyhow, Result}; +use std::borrow::Cow; +pub mod root_view; + +extern crate galaxyui; +use rust_embed::RustEmbed; +use galaxyui::{platform, AssetProvider}; + +#[derive(Clone, Copy, RustEmbed)] +#[folder = "examples/assets"] +pub struct Assets; + +// The static assets we need to load in app. +pub static ASSETS: Assets = Assets; + +// Implement the AssetProvider trait here (required by App::new). +impl AssetProvider for Assets { + fn get(&self, path: &str) -> Result> { + ::get(path) + .map(|f| f.data) + .ok_or_else(|| anyhow!("no asset exists at path {}", path)) + } +} + +fn main() -> Result<()> { + let app_builder = + platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); + let _ = app_builder.run(move |ctx| { + ctx.add_window( + galaxyui::AddWindowOptions::default(), + root_view::RootView::new, + ); + }); + + Ok(()) +} diff --git a/crates/warpui/examples/resizable/root_view.rs b/crates/galaxyui/examples/resizable/root_view.rs similarity index 94% rename from crates/warpui/examples/resizable/root_view.rs rename to crates/galaxyui/examples/resizable/root_view.rs index caa5bb9f..fe1eb46e 100644 --- a/crates/warpui/examples/resizable/root_view.rs +++ b/crates/galaxyui/examples/resizable/root_view.rs @@ -1,6 +1,6 @@ -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ color::ColorU, elements::{ resizable_state_handle, Container, CrossAxisAlignment, DragBarSide, Flex, @@ -18,7 +18,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); // Initialize resizable state handles @@ -80,7 +80,7 @@ impl View for RootView { ), ) .with_dragbar_side(DragBarSide::Bottom) - .with_dragbar_color(warpui::elements::Fill::Solid(ColorU::new(0, 255, 255, 200))) + .with_dragbar_color(galaxyui::elements::Fill::Solid(ColorU::new(0, 255, 255, 200))) .on_resize(move |ctx, _| { ctx.notify(); }) @@ -114,7 +114,7 @@ impl View for RootView { ), ) .with_dragbar_side(DragBarSide::Right) - .with_dragbar_color(warpui::elements::Fill::Solid(ColorU::new(255, 255, 0, 200))) + .with_dragbar_color(galaxyui::elements::Fill::Solid(ColorU::new(255, 255, 0, 200))) .on_resize(move |ctx, _| { ctx.notify(); }) diff --git a/crates/galaxyui/examples/scrolling/main.rs b/crates/galaxyui/examples/scrolling/main.rs new file mode 100644 index 00000000..ffafa94c --- /dev/null +++ b/crates/galaxyui/examples/scrolling/main.rs @@ -0,0 +1,36 @@ +use anyhow::{anyhow, Result}; +use std::borrow::Cow; +pub mod root_view; + +extern crate galaxyui; +use rust_embed::RustEmbed; +use galaxyui::{platform, AssetProvider}; + +#[derive(Clone, Copy, RustEmbed)] +#[folder = "examples/assets"] +pub struct Assets; + +// The static assets we need to load in app. +pub static ASSETS: Assets = Assets; + +// Implement the AssetProvider trait here (required by App::new). +impl AssetProvider for Assets { + fn get(&self, path: &str) -> Result> { + ::get(path) + .map(|f| f.data) + .ok_or_else(|| anyhow!("no asset exists at path {}", path)) + } +} + +fn main() -> Result<()> { + let app_builder = + platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); + let _ = app_builder.run(move |ctx| { + ctx.add_window( + galaxyui::AddWindowOptions::default(), + root_view::RootView::new, + ); + }); + + Ok(()) +} diff --git a/crates/warpui/examples/scrolling/root_view.rs b/crates/galaxyui/examples/scrolling/root_view.rs similarity index 94% rename from crates/warpui/examples/scrolling/root_view.rs rename to crates/galaxyui/examples/scrolling/root_view.rs index 57bdd7eb..d4ca46ef 100644 --- a/crates/warpui/examples/scrolling/root_view.rs +++ b/crates/galaxyui/examples/scrolling/root_view.rs @@ -1,12 +1,12 @@ -use warpui::elements::ClippedScrollStateHandle; -use warpui::elements::ClippedScrollable; +use galaxyui::elements::ClippedScrollStateHandle; +use galaxyui::elements::ClippedScrollable; -use warpui::{ +use galaxyui::{ elements::{ConstrainedBox, Container, Flex, ParentElement, Rect, ScrollbarWidth, Stack}, AppContext, Element, Entity, TypedActionView, View, ViewContext, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; #[derive(Default)] pub struct RootView { diff --git a/crates/warpui/examples/segmented-control/main.rs b/crates/galaxyui/examples/segmented-control/main.rs similarity index 86% rename from crates/warpui/examples/segmented-control/main.rs rename to crates/galaxyui/examples/segmented-control/main.rs index acb69185..bb24dc9b 100644 --- a/crates/warpui/examples/segmented-control/main.rs +++ b/crates/galaxyui/examples/segmented-control/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -25,7 +25,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/segmented-control/root_view.rs b/crates/galaxyui/examples/segmented-control/root_view.rs similarity index 90% rename from crates/warpui/examples/segmented-control/root_view.rs rename to crates/galaxyui/examples/segmented-control/root_view.rs index e14ab91f..7239ca21 100644 --- a/crates/warpui/examples/segmented-control/root_view.rs +++ b/crates/galaxyui/examples/segmented-control/root_view.rs @@ -1,15 +1,15 @@ -use warpui::color::ColorU; -use warpui::elements::{ +use galaxyui::color::ColorU; +use galaxyui::elements::{ Align, Container, CornerRadius, CrossAxisAlignment, Fill, Flex, ParentElement, Radius, Text, }; -use warpui::fonts::FamilyId; -use warpui::presenter::ChildView; -use warpui::ui_components::components::{Coords, UiComponentStyles}; -use warpui::ui_components::segmented_control::{ +use galaxyui::fonts::FamilyId; +use galaxyui::presenter::ChildView; +use galaxyui::ui_components::components::{Coords, UiComponentStyles}; +use galaxyui::ui_components::segmented_control::{ LabelConfig, RenderableOptionConfig, SegmentedControl, SegmentedControlEvent, }; -use warpui::SingletonEntity as _; -use warpui::{AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; +use galaxyui::SingletonEntity as _; +use galaxyui::{AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle}; #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum DisplayMode { @@ -25,7 +25,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); let segmented_control = ctx.add_typed_action_view(move |_ctx| { diff --git a/crates/warpui/examples/selectable/main.rs b/crates/galaxyui/examples/selectable/main.rs similarity index 85% rename from crates/warpui/examples/selectable/main.rs rename to crates/galaxyui/examples/selectable/main.rs index 3d982ba6..d819c469 100644 --- a/crates/warpui/examples/selectable/main.rs +++ b/crates/galaxyui/examples/selectable/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -27,7 +27,7 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { let view_handle = root_view::RootView::new; - ctx.add_window(warpui::AddWindowOptions::default(), view_handle); + ctx.add_window(galaxyui::AddWindowOptions::default(), view_handle); }); Ok(()) diff --git a/crates/warpui/examples/selectable/root_view.rs b/crates/galaxyui/examples/selectable/root_view.rs similarity index 98% rename from crates/warpui/examples/selectable/root_view.rs rename to crates/galaxyui/examples/selectable/root_view.rs index 34333a6c..619b9cfb 100644 --- a/crates/warpui/examples/selectable/root_view.rs +++ b/crates/galaxyui/examples/selectable/root_view.rs @@ -1,8 +1,8 @@ //! A UI sample demonstrating how the SelectableArea element can be used. -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{ Border, ChildView, ConstrainedBox, Container, Flex, ParentElement, Rect, SelectableArea, SelectionHandle, Stack, Text, @@ -10,7 +10,7 @@ use warpui::{ AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub struct RootView { sub_view: ViewHandle, @@ -19,7 +19,7 @@ pub struct RootView { impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { let sub_view = ctx.add_view(|ctx| { - let font_family = warpui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { + let font_family = galaxyui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { cache.load_system_font("Menlo").expect("Should load Menlo") }); let view = SelectableExampleView { diff --git a/crates/warpui/examples/shadows/main.rs b/crates/galaxyui/examples/shadows/main.rs similarity index 83% rename from crates/warpui/examples/shadows/main.rs rename to crates/galaxyui/examples/shadows/main.rs index 26896fc7..920c2f7c 100644 --- a/crates/warpui/examples/shadows/main.rs +++ b/crates/galaxyui/examples/shadows/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -26,7 +26,7 @@ fn main() -> Result<()> { let app_builder = platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { - ctx.add_window(warpui::AddWindowOptions::default(), |_| root_view::RootView); + ctx.add_window(galaxyui::AddWindowOptions::default(), |_| root_view::RootView); }); Ok(()) diff --git a/crates/warpui/examples/shadows/root_view.rs b/crates/galaxyui/examples/shadows/root_view.rs similarity index 98% rename from crates/warpui/examples/shadows/root_view.rs rename to crates/galaxyui/examples/shadows/root_view.rs index c8c25b50..c854a60c 100644 --- a/crates/warpui/examples/shadows/root_view.rs +++ b/crates/galaxyui/examples/shadows/root_view.rs @@ -1,13 +1,13 @@ use pathfinder_geometry::vector::vec2f; -use warpui::elements::{ +use galaxyui::elements::{ Align, ConstrainedBox, Container, CornerRadius, DropShadow, Radius, Shrinkable, }; -use warpui::{ +use galaxyui::{ elements::{Flex, ParentElement, Rect}, AppContext, Element, Entity, TypedActionView, View, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; pub struct RootView; diff --git a/crates/galaxyui/examples/slider/main.rs b/crates/galaxyui/examples/slider/main.rs new file mode 100644 index 00000000..ffafa94c --- /dev/null +++ b/crates/galaxyui/examples/slider/main.rs @@ -0,0 +1,36 @@ +use anyhow::{anyhow, Result}; +use std::borrow::Cow; +pub mod root_view; + +extern crate galaxyui; +use rust_embed::RustEmbed; +use galaxyui::{platform, AssetProvider}; + +#[derive(Clone, Copy, RustEmbed)] +#[folder = "examples/assets"] +pub struct Assets; + +// The static assets we need to load in app. +pub static ASSETS: Assets = Assets; + +// Implement the AssetProvider trait here (required by App::new). +impl AssetProvider for Assets { + fn get(&self, path: &str) -> Result> { + ::get(path) + .map(|f| f.data) + .ok_or_else(|| anyhow!("no asset exists at path {}", path)) + } +} + +fn main() -> Result<()> { + let app_builder = + platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); + let _ = app_builder.run(move |ctx| { + ctx.add_window( + galaxyui::AddWindowOptions::default(), + root_view::RootView::new, + ); + }); + + Ok(()) +} diff --git a/crates/warpui/examples/slider/root_view.rs b/crates/galaxyui/examples/slider/root_view.rs similarity index 99% rename from crates/warpui/examples/slider/root_view.rs rename to crates/galaxyui/examples/slider/root_view.rs index b3fa3b5d..37c67c0a 100644 --- a/crates/warpui/examples/slider/root_view.rs +++ b/crates/galaxyui/examples/slider/root_view.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warpui::{ +use galaxyui::{ elements::{Align, Container}, presenter::ChildView, ui_components::{ diff --git a/crates/warpui/examples/table-sample/.gitignore b/crates/galaxyui/examples/table-sample/.gitignore similarity index 100% rename from crates/warpui/examples/table-sample/.gitignore rename to crates/galaxyui/examples/table-sample/.gitignore diff --git a/crates/warpui/examples/table-sample/WARP.md b/crates/galaxyui/examples/table-sample/WARP.md similarity index 100% rename from crates/warpui/examples/table-sample/WARP.md rename to crates/galaxyui/examples/table-sample/WARP.md diff --git a/crates/warpui/examples/table-sample/main.rs b/crates/galaxyui/examples/table-sample/main.rs similarity index 91% rename from crates/warpui/examples/table-sample/main.rs rename to crates/galaxyui/examples/table-sample/main.rs index 32b99641..b3f1a6ec 100644 --- a/crates/warpui/examples/table-sample/main.rs +++ b/crates/galaxyui/examples/table-sample/main.rs @@ -3,9 +3,9 @@ use pathfinder_geometry::vector::vec2f; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, platform::WindowBounds, AssetProvider}; +use galaxyui::{platform, platform::WindowBounds, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -69,12 +69,12 @@ fn main() -> Result<()> { platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(move |ctx| { root_view::init(ctx); - let window_options = warpui::AddWindowOptions { + let window_options = galaxyui::AddWindowOptions { window_bounds: WindowBounds::ExactSize(vec2f(1000.0, 800.0)), window_style: if capture_config.capture_screenshots { - warpui::platform::WindowStyle::NotStealFocus + galaxyui::platform::WindowStyle::NotStealFocus } else { - warpui::platform::WindowStyle::Normal + galaxyui::platform::WindowStyle::Normal }, ..Default::default() }; diff --git a/crates/warpui/examples/table-sample/root_view.rs b/crates/galaxyui/examples/table-sample/root_view.rs similarity index 98% rename from crates/warpui/examples/table-sample/root_view.rs rename to crates/galaxyui/examples/table-sample/root_view.rs index 2d6d365d..49d51f55 100644 --- a/crates/warpui/examples/table-sample/root_view.rs +++ b/crates/galaxyui/examples/table-sample/root_view.rs @@ -1,19 +1,19 @@ use crate::CaptureConfig; use image::ImageEncoder; use std::sync::{Arc, Mutex}; -use warpui::color::ColorU; -use warpui::elements::{ +use galaxyui::color::ColorU; +use galaxyui::elements::{ ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, Empty, Fill, Flex, MainAxisSize, ParentElement, RowBackground, ScrollStateHandle, Scrollable, ScrollableElement, ScrollbarWidth, SelectableArea, SelectionHandle, Table, TableColumnWidth, TableConfig, TableHeader, TableStateHandle, Text, }; -use warpui::fonts::FamilyId; -use warpui::keymap::FixedBinding; -use warpui::platform::CapturedFrame; -use warpui::presenter::ChildView; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::keymap::FixedBinding; +use galaxyui::platform::CapturedFrame; +use galaxyui::presenter::ChildView; +use galaxyui::SingletonEntity as _; +use galaxyui::{ AppContext, Element, Entity, TypedActionView, View, ViewContext, ViewHandle, WindowId, }; @@ -26,7 +26,7 @@ pub enum SampleAction { } pub fn init(ctx: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; ctx.register_fixed_bindings([ FixedBinding::new("right", SampleAction::NextDemo, id!("TableSampleView")), @@ -42,7 +42,7 @@ impl RootView { pub fn new(ctx: &mut ViewContext, capture_config: CaptureConfig) -> Self { let config_clone = capture_config.clone(); let sub_view = ctx.add_typed_action_view(move |ctx| { - let font_family = warpui::fonts::Cache::handle(ctx) + let font_family = galaxyui::fonts::Cache::handle(ctx) .update(ctx, |cache, _| cache.load_system_font("Arial").unwrap()); ctx.focus_self(); TableSampleView::new(font_family, config_clone.clone(), ctx) @@ -130,7 +130,7 @@ impl TableSampleView { let spawner = ctx.spawner(); ctx.spawn( async move { - use warpui::r#async::Timer; + use galaxyui::r#async::Timer; Timer::after(std::time::Duration::from_millis(800)).await; for i in 0..TOTAL_DEMOS { let _ = spawner @@ -213,7 +213,7 @@ impl TableSampleView { if auto_capture && !is_last_demo { ctx.spawn( async { - warpui::r#async::Timer::after(std::time::Duration::from_millis(350)).await; + galaxyui::r#async::Timer::after(std::time::Duration::from_millis(350)).await; }, |_, _, ctx| { ctx.dispatch_typed_action(&SampleAction::NextDemo); @@ -1219,7 +1219,7 @@ impl View for TableSampleView { Container::new( Flex::column() .with_main_axis_size(MainAxisSize::Max) - .with_cross_axis_alignment(warpui::elements::CrossAxisAlignment::Stretch) + .with_cross_axis_alignment(galaxyui::elements::CrossAxisAlignment::Stretch) .with_child( Container::new(demo_content) .with_uniform_padding(20.0) @@ -1246,7 +1246,7 @@ impl TypedActionView for TableSampleView { ctx.spawn( async { // Wait for render to complete - warpui::r#async::Timer::after(std::time::Duration::from_millis(300)) + galaxyui::r#async::Timer::after(std::time::Duration::from_millis(300)) .await; }, |view, _, ctx| { diff --git a/crates/warpui/examples/typed_actions/main.rs b/crates/galaxyui/examples/typed_actions/main.rs similarity index 90% rename from crates/warpui/examples/typed_actions/main.rs rename to crates/galaxyui/examples/typed_actions/main.rs index 0e87367e..a11726c9 100644 --- a/crates/warpui/examples/typed_actions/main.rs +++ b/crates/galaxyui/examples/typed_actions/main.rs @@ -2,9 +2,9 @@ use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; -extern crate warpui; +extern crate galaxyui; use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; +use galaxyui::{platform, AssetProvider}; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] @@ -32,7 +32,7 @@ fn main() -> Result<()> { let _ = app_builder.run(move |ctx| { root_view::init(ctx); ctx.add_window( - warpui::AddWindowOptions::default(), + galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); diff --git a/crates/warpui/examples/typed_actions/root_view.rs b/crates/galaxyui/examples/typed_actions/root_view.rs similarity index 95% rename from crates/warpui/examples/typed_actions/root_view.rs rename to crates/galaxyui/examples/typed_actions/root_view.rs index 98464254..bdfa856e 100644 --- a/crates/warpui/examples/typed_actions/root_view.rs +++ b/crates/galaxyui/examples/typed_actions/root_view.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; -use warpui::fonts::FamilyId; -use warpui::SingletonEntity as _; -use warpui::{ +use galaxyui::fonts::FamilyId; +use galaxyui::SingletonEntity as _; +use galaxyui::{ elements::{Align, ConstrainedBox, ParentElement, Rect, Stack, Text}, keymap::FixedBinding, presenter::ChildView, @@ -10,7 +10,7 @@ use warpui::{ // We could initiate global action and bindings here. pub fn init(ctx: &mut AppContext) { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; // Add bindings to trigger actions in the subview. ctx.register_fixed_bindings([ @@ -32,7 +32,7 @@ impl RootView { pub fn new(ctx: &mut ViewContext) -> Self { // Adding typed action view allows the view to receive keydown events. let sub_view = ctx.add_typed_action_view(|ctx| { - let menlo = warpui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { + let menlo = galaxyui::fonts::Cache::handle(ctx).update(ctx, |cache, _| { cache.load_system_font("Menlo").expect("Should load Menlo") }); let view = SubView { diff --git a/crates/warpui/src/fonts/font_kit.rs b/crates/galaxyui/src/fonts/font_kit.rs similarity index 98% rename from crates/warpui/src/fonts/font_kit.rs rename to crates/galaxyui/src/fonts/font_kit.rs index c8f861b5..1f60a697 100644 --- a/crates/warpui/src/fonts/font_kit.rs +++ b/crates/galaxyui/src/fonts/font_kit.rs @@ -10,11 +10,11 @@ use font_kit::hinting::HintingOptions; use pathfinder_geometry::rect::RectI; use pathfinder_geometry::transform2d::Transform2F; use pathfinder_geometry::vector::{vec2i, Vector2F, Vector2I}; -use warpui_core::fonts::canvas::RasterFormat; -use warpui_core::fonts::{ +use galaxyui_core::fonts::canvas::RasterFormat; +use galaxyui_core::fonts::{ FontId, GlyphId, Properties, RasterizedGlyph, Style, SubpixelAlignment, Weight, }; -use warpui_core::rendering; +use galaxyui_core::rendering; #[cfg(target_os = "macos")] use crate::platform::mac::AutoreleasePoolGuard; diff --git a/crates/warpui/src/fonts/mod.rs b/crates/galaxyui/src/fonts/mod.rs similarity index 91% rename from crates/warpui/src/fonts/mod.rs rename to crates/galaxyui/src/fonts/mod.rs index c0c82b88..6aeef8ac 100644 --- a/crates/warpui/src/fonts/mod.rs +++ b/crates/galaxyui/src/fonts/mod.rs @@ -6,7 +6,7 @@ pub mod font_kit; #[path = "text_layout_test.rs"] mod text_layout_tests; -pub use warpui_core::fonts::*; +pub use galaxyui_core::fonts::*; #[cfg(test)] pub(crate) use text_layout_tests::{collect_glyph_indices, init_fonts}; diff --git a/crates/warpui/src/fonts/text_layout_test.rs b/crates/galaxyui/src/fonts/text_layout_test.rs similarity index 100% rename from crates/warpui/src/fonts/text_layout_test.rs rename to crates/galaxyui/src/fonts/text_layout_test.rs diff --git a/crates/warpui/src/lib.rs b/crates/galaxyui/src/lib.rs similarity index 81% rename from crates/warpui/src/lib.rs rename to crates/galaxyui/src/lib.rs index cdad7d90..1a4b4de6 100644 --- a/crates/warpui/src/lib.rs +++ b/crates/galaxyui/src/lib.rs @@ -4,4 +4,4 @@ pub mod rendering; pub mod windowing; // Re-export everything from the core crate. -pub use warpui_core::*; +pub use galaxyui_core::*; diff --git a/crates/warpui/src/platform/app.rs b/crates/galaxyui/src/platform/app.rs similarity index 98% rename from crates/warpui/src/platform/app.rs rename to crates/galaxyui/src/platform/app.rs index 17082150..bc2bd880 100644 --- a/crates/warpui/src/platform/app.rs +++ b/crates/galaxyui/src/platform/app.rs @@ -1,11 +1,11 @@ -use warpui_core::{ +use galaxyui_core::{ integration::TestDriver, keymap::{CustomTag, Keystroke}, r#async::LocalBoxFuture, AppContext, AssetProvider, }; -pub use warpui_core::platform::app::*; +pub use galaxyui_core::platform::app::*; use super::AsInnerMut; diff --git a/crates/warpui/src/platform/headless/app.rs b/crates/galaxyui/src/platform/headless/app.rs similarity index 95% rename from crates/warpui/src/platform/headless/app.rs rename to crates/galaxyui/src/platform/headless/app.rs index 656dbd90..f23e3e09 100644 --- a/crates/warpui/src/platform/headless/app.rs +++ b/crates/galaxyui/src/platform/headless/app.rs @@ -50,7 +50,7 @@ impl App { .expect("should not fail to construct application"); let mut callbacks = - warpui_core::platform::app::AppCallbackDispatcher::new(callbacks, ui_app.clone()); + galaxyui_core::platform::app::AppCallbackDispatcher::new(callbacks, ui_app.clone()); // Run the event loop until the app terminates. event_loop::run(ui_app, &mut callbacks, Box::new(init_fn), receiver, sender) diff --git a/crates/warpui/src/platform/headless/delegate.rs b/crates/galaxyui/src/platform/headless/delegate.rs similarity index 100% rename from crates/warpui/src/platform/headless/delegate.rs rename to crates/galaxyui/src/platform/headless/delegate.rs diff --git a/crates/warpui/src/platform/headless/event_loop.rs b/crates/galaxyui/src/platform/headless/event_loop.rs similarity index 100% rename from crates/warpui/src/platform/headless/event_loop.rs rename to crates/galaxyui/src/platform/headless/event_loop.rs diff --git a/crates/warpui/src/platform/headless/mod.rs b/crates/galaxyui/src/platform/headless/mod.rs similarity index 100% rename from crates/warpui/src/platform/headless/mod.rs rename to crates/galaxyui/src/platform/headless/mod.rs diff --git a/crates/warpui/src/platform/headless/windowing.rs b/crates/galaxyui/src/platform/headless/windowing.rs similarity index 97% rename from crates/warpui/src/platform/headless/windowing.rs rename to crates/galaxyui/src/platform/headless/windowing.rs index bfc53201..147f7a50 100644 --- a/crates/warpui/src/platform/headless/windowing.rs +++ b/crates/galaxyui/src/platform/headless/windowing.rs @@ -42,7 +42,7 @@ impl WindowManager { } } -impl warpui_core::platform::WindowManager for WindowManager { +impl galaxyui_core::platform::WindowManager for WindowManager { fn open_window( &mut self, window_id: WindowId, @@ -55,7 +55,7 @@ impl warpui_core::platform::WindowManager for WindowManager { Ok(()) } - fn platform_window(&self, window_id: WindowId) -> warpui_core::OptionalPlatformWindow { + fn platform_window(&self, window_id: WindowId) -> galaxyui_core::OptionalPlatformWindow { self.windows .get(&window_id) .map(Rc::clone) diff --git a/crates/warpui/src/platform/linux/mod.rs b/crates/galaxyui/src/platform/linux/mod.rs similarity index 100% rename from crates/warpui/src/platform/linux/mod.rs rename to crates/galaxyui/src/platform/linux/mod.rs diff --git a/crates/warpui/src/platform/mac/app.rs b/crates/galaxyui/src/platform/mac/app.rs similarity index 99% rename from crates/warpui/src/platform/mac/app.rs rename to crates/galaxyui/src/platform/mac/app.rs index a1589c51..ec076527 100644 --- a/crates/warpui/src/platform/mac/app.rs +++ b/crates/galaxyui/src/platform/mac/app.rs @@ -22,7 +22,7 @@ use crate::platform::{ app::{AppBackend, AppBuilder}, AsInnerMut, }; -use warpui_core::{ +use galaxyui_core::{ assets::AssetProvider, integration::TestDriver, keymap::{Keystroke, Trigger}, diff --git a/crates/warpui/src/platform/mac/clipboard.rs b/crates/galaxyui/src/platform/mac/clipboard.rs similarity index 99% rename from crates/warpui/src/platform/mac/clipboard.rs rename to crates/galaxyui/src/platform/mac/clipboard.rs index 77540866..61135ce0 100644 --- a/crates/warpui/src/platform/mac/clipboard.rs +++ b/crates/galaxyui/src/platform/mac/clipboard.rs @@ -11,7 +11,7 @@ use std::os::raw::{c_uchar, c_void}; use std::slice; use super::make_nsstring; -use warpui_core::clipboard::{ClipboardContent, ImageData}; +use galaxyui_core::clipboard::{ClipboardContent, ImageData}; extern "C" { fn getFilePathsFromPasteboard() -> id; diff --git a/crates/warpui/src/platform/mac/clipboard_tests.rs b/crates/galaxyui/src/platform/mac/clipboard_tests.rs similarity index 95% rename from crates/warpui/src/platform/mac/clipboard_tests.rs rename to crates/galaxyui/src/platform/mac/clipboard_tests.rs index 85158e5e..c10d26dd 100644 --- a/crates/warpui/src/platform/mac/clipboard_tests.rs +++ b/crates/galaxyui/src/platform/mac/clipboard_tests.rs @@ -1,4 +1,4 @@ -//! Memory-behavior repro for APP-4154 batch 1.C (warpui-platform-nsstring). +//! Memory-behavior repro for APP-4154 batch 1.C (galaxyui-platform-nsstring). //! //! Exercises the `NSString::alloc(nil).init_str(...)` → `make_nsstring(...)` conversions //! applied to `pasteboard_type_for_image_mime_type` and related clipboard @@ -17,7 +17,7 @@ //! outer iterations. //! //! Run as: -//! cargo test --release -p warpui \ +//! cargo test --release -p galaxyui \ //! pasteboard_type_for_image_mime_type_memory_behavior -- --nocapture --ignored //! and measure peak RSS with `/usr/bin/time -l`. use cocoa::base::nil; diff --git a/crates/warpui/src/platform/mac/delegate.rs b/crates/galaxyui/src/platform/mac/delegate.rs similarity index 98% rename from crates/warpui/src/platform/mac/delegate.rs rename to crates/galaxyui/src/platform/mac/delegate.rs index 3fdd628f..be7475fb 100644 --- a/crates/warpui/src/platform/mac/delegate.rs +++ b/crates/galaxyui/src/platform/mac/delegate.rs @@ -13,16 +13,16 @@ use objc::{class, msg_send, sel, sel_impl}; use std::ffi::c_void; use std::path::Path; use std::sync::Arc; -use warpui_core::clipboard::InMemoryClipboard; -use warpui_core::keymap::Keystroke; -use warpui_core::modals::{AlertDialog, ModalId}; -use warpui_core::notification::{NotificationSendError, RequestPermissionsOutcome}; -use warpui_core::platform::{ +use galaxyui_core::clipboard::InMemoryClipboard; +use galaxyui_core::keymap::Keystroke; +use galaxyui_core::modals::{AlertDialog, ModalId}; +use galaxyui_core::notification::{NotificationSendError, RequestPermissionsOutcome}; +use galaxyui_core::platform::{ Cursor, FilePickerCallback, FilePickerConfiguration, MicrophoneAccessState, SendNotificationErrorCallback, TerminationMode, }; -use warpui_core::ApplicationBundleInfo; -use warpui_core::{ +use galaxyui_core::ApplicationBundleInfo; +use galaxyui_core::{ accessibility::AccessibilityContent, notification::UserNotification, platform, WindowId, }; diff --git a/crates/warpui/src/platform/mac/event.rs b/crates/galaxyui/src/platform/mac/event.rs similarity index 98% rename from crates/warpui/src/platform/mac/event.rs rename to crates/galaxyui/src/platform/mac/event.rs index 62ee1f8d..698c0631 100644 --- a/crates/warpui/src/platform/mac/event.rs +++ b/crates/galaxyui/src/platform/mac/event.rs @@ -1,9 +1,9 @@ use cocoa::foundation::NSUInteger; use std::{ffi::CStr, os::raw::c_char}; -use warpui_core::event::{KeyEventDetails, ModifiersState}; -use warpui_core::platform::keyboard::{KeyCode, PhysicalKey}; -use warpui_core::{keymap::Keystroke, Event}; +use galaxyui_core::event::{KeyEventDetails, ModifiersState}; +use galaxyui_core::platform::keyboard::{KeyCode, PhysicalKey}; +use galaxyui_core::{keymap::Keystroke, Event}; use cocoa::{ appkit::{NSEvent, NSEventModifierFlags, NSEventType}, diff --git a/crates/warpui/src/platform/mac/fonts.rs b/crates/galaxyui/src/platform/mac/fonts.rs similarity index 99% rename from crates/warpui/src/platform/mac/fonts.rs rename to crates/galaxyui/src/platform/mac/fonts.rs index a021a016..02cb34be 100644 --- a/crates/warpui/src/platform/mac/fonts.rs +++ b/crates/galaxyui/src/platform/mac/fonts.rs @@ -30,13 +30,13 @@ use std::sync::{ atomic::{AtomicUsize, Ordering}, Arc, }; -use warpui_core::fonts::{ +use galaxyui_core::fonts::{ canvas::RasterFormat, FamilyId, FontId, FontInfo, GlyphId, Metrics, Properties, RasterizedGlyph, SubpixelAlignment, }; -use warpui_core::platform::{self, FontDB as _, LineStyle, TextLayoutSystem}; -use warpui_core::rendering; -use warpui_core::text_layout::{ClipConfig, StyleAndFont, TextAlignment, TextFrame}; +use galaxyui_core::platform::{self, FontDB as _, LineStyle, TextLayoutSystem}; +use galaxyui_core::rendering; +use galaxyui_core::text_layout::{ClipConfig, StyleAndFont, TextAlignment, TextFrame}; struct FontFamily { name: String, diff --git a/crates/warpui/src/platform/mac/geometry.rs b/crates/galaxyui/src/platform/mac/geometry.rs similarity index 100% rename from crates/warpui/src/platform/mac/geometry.rs rename to crates/galaxyui/src/platform/mac/geometry.rs diff --git a/crates/warpui/src/platform/mac/keycode.rs b/crates/galaxyui/src/platform/mac/keycode.rs similarity index 98% rename from crates/warpui/src/platform/mac/keycode.rs rename to crates/galaxyui/src/platform/mac/keycode.rs index b9e637de..590ace05 100644 --- a/crates/warpui/src/platform/mac/keycode.rs +++ b/crates/galaxyui/src/platform/mac/keycode.rs @@ -5,8 +5,8 @@ use cocoa::{ foundation::{NSArray, NSString, NSUInteger}, }; use objc::{msg_send, sel, sel_impl}; -use warpui_core::keymap::Keystroke; -use warpui_core::platform::keyboard::{KeyCode, NativeKeyCode, PhysicalKey}; +use galaxyui_core::keymap::Keystroke; +use galaxyui_core::platform::keyboard::{KeyCode, NativeKeyCode, PhysicalKey}; use super::make_nsstring; diff --git a/crates/warpui/src/platform/mac/menus.rs b/crates/galaxyui/src/platform/mac/menus.rs similarity index 99% rename from crates/warpui/src/platform/mac/menus.rs rename to crates/galaxyui/src/platform/mac/menus.rs index 912ceb0d..f1a5a6f3 100644 --- a/crates/warpui/src/platform/mac/menus.rs +++ b/crates/galaxyui/src/platform/mac/menus.rs @@ -17,9 +17,9 @@ use lazy_static::lazy_static; use objc::runtime::{NO, YES}; use objc::{msg_send, sel, sel_impl}; use std::{boxed::Box, cell::RefCell, collections::HashMap, ffi::c_void, rc::Rc}; -use warpui_core::actions::StandardAction; -use warpui_core::keymap::Keystroke; -use warpui_core::platform::menu::{ +use galaxyui_core::actions::StandardAction; +use galaxyui_core::keymap::Keystroke; +use galaxyui_core::platform::menu::{ ItemTriggeredCallback, Menu, MenuBar, MenuItem, MenuItemProperties, MenuItemPropertyChanges, UpdateMenuItemCallback, }; diff --git a/crates/warpui/src/platform/mac/menus_tests.rs b/crates/galaxyui/src/platform/mac/menus_tests.rs similarity index 94% rename from crates/warpui/src/platform/mac/menus_tests.rs rename to crates/galaxyui/src/platform/mac/menus_tests.rs index 8f41267a..afb3e67d 100644 --- a/crates/warpui/src/platform/mac/menus_tests.rs +++ b/crates/galaxyui/src/platform/mac/menus_tests.rs @@ -1,4 +1,4 @@ -//! Memory-behavior repros for APP-4154 batch 1.C (warpui-platform-nsstring). +//! Memory-behavior repros for APP-4154 batch 1.C (galaxyui-platform-nsstring). //! //! Covers two kinds of fix in `menus.rs`: //! @@ -21,9 +21,9 @@ use cocoa::base::nil; use cocoa::foundation::NSAutoreleasePool; use objc::runtime::Object; use objc::{msg_send, sel, sel_impl}; -use warpui_core::actions::StandardAction; -use warpui_core::keymap::Keystroke; -use warpui_core::platform::menu::{MenuItem, MenuItemPropertyChanges}; +use galaxyui_core::actions::StandardAction; +use galaxyui_core::keymap::Keystroke; +use galaxyui_core::platform::menu::{MenuItem, MenuItemPropertyChanges}; use super::{apply_changes, make_menu_item}; diff --git a/crates/warpui/src/platform/mac/mod.rs b/crates/galaxyui/src/platform/mac/mod.rs similarity index 100% rename from crates/warpui/src/platform/mac/mod.rs rename to crates/galaxyui/src/platform/mac/mod.rs diff --git a/crates/warpui/src/platform/mac/notification.rs b/crates/galaxyui/src/platform/mac/notification.rs similarity index 98% rename from crates/warpui/src/platform/mac/notification.rs rename to crates/galaxyui/src/platform/mac/notification.rs index fb6eed23..7ffb0ce3 100644 --- a/crates/warpui/src/platform/mac/notification.rs +++ b/crates/galaxyui/src/platform/mac/notification.rs @@ -2,7 +2,7 @@ use anyhow::{anyhow, Result}; use chrono::DateTime; use cocoa::base::id; use cocoa::foundation::NSUInteger; -use warpui_core::notification::{ +use galaxyui_core::notification::{ NotificationResponse, NotificationSendError, RequestPermissionsOutcome, }; diff --git a/crates/warpui/src/platform/mac/objc/.clang-format b/crates/galaxyui/src/platform/mac/objc/.clang-format similarity index 100% rename from crates/warpui/src/platform/mac/objc/.clang-format rename to crates/galaxyui/src/platform/mac/objc/.clang-format diff --git a/crates/warpui/src/platform/mac/objc/alert.h b/crates/galaxyui/src/platform/mac/objc/alert.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/alert.h rename to crates/galaxyui/src/platform/mac/objc/alert.h diff --git a/crates/warpui/src/platform/mac/objc/alert.m b/crates/galaxyui/src/platform/mac/objc/alert.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/alert.m rename to crates/galaxyui/src/platform/mac/objc/alert.m diff --git a/crates/warpui/src/platform/mac/objc/app.h b/crates/galaxyui/src/platform/mac/objc/app.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/app.h rename to crates/galaxyui/src/platform/mac/objc/app.h diff --git a/crates/warpui/src/platform/mac/objc/app.m b/crates/galaxyui/src/platform/mac/objc/app.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/app.m rename to crates/galaxyui/src/platform/mac/objc/app.m diff --git a/crates/warpui/src/platform/mac/objc/fullscreen_queue.h b/crates/galaxyui/src/platform/mac/objc/fullscreen_queue.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/fullscreen_queue.h rename to crates/galaxyui/src/platform/mac/objc/fullscreen_queue.h diff --git a/crates/warpui/src/platform/mac/objc/fullscreen_queue.m b/crates/galaxyui/src/platform/mac/objc/fullscreen_queue.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/fullscreen_queue.m rename to crates/galaxyui/src/platform/mac/objc/fullscreen_queue.m diff --git a/crates/warpui/src/platform/mac/objc/host_view.h b/crates/galaxyui/src/platform/mac/objc/host_view.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/host_view.h rename to crates/galaxyui/src/platform/mac/objc/host_view.h diff --git a/crates/warpui/src/platform/mac/objc/host_view.m b/crates/galaxyui/src/platform/mac/objc/host_view.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/host_view.m rename to crates/galaxyui/src/platform/mac/objc/host_view.m diff --git a/crates/warpui/src/platform/mac/objc/hotkey.h b/crates/galaxyui/src/platform/mac/objc/hotkey.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/hotkey.h rename to crates/galaxyui/src/platform/mac/objc/hotkey.h diff --git a/crates/warpui/src/platform/mac/objc/hotkey.m b/crates/galaxyui/src/platform/mac/objc/hotkey.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/hotkey.m rename to crates/galaxyui/src/platform/mac/objc/hotkey.m diff --git a/crates/warpui/src/platform/mac/objc/keycode.m b/crates/galaxyui/src/platform/mac/objc/keycode.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/keycode.m rename to crates/galaxyui/src/platform/mac/objc/keycode.m diff --git a/crates/warpui/src/platform/mac/objc/menus.h b/crates/galaxyui/src/platform/mac/objc/menus.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/menus.h rename to crates/galaxyui/src/platform/mac/objc/menus.h diff --git a/crates/warpui/src/platform/mac/objc/menus.m b/crates/galaxyui/src/platform/mac/objc/menus.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/menus.m rename to crates/galaxyui/src/platform/mac/objc/menus.m diff --git a/crates/warpui/src/platform/mac/objc/notifications/README.md b/crates/galaxyui/src/platform/mac/objc/notifications/README.md similarity index 100% rename from crates/warpui/src/platform/mac/objc/notifications/README.md rename to crates/galaxyui/src/platform/mac/objc/notifications/README.md diff --git a/crates/warpui/src/platform/mac/objc/notifications/notifications.h b/crates/galaxyui/src/platform/mac/objc/notifications/notifications.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/notifications/notifications.h rename to crates/galaxyui/src/platform/mac/objc/notifications/notifications.h diff --git a/crates/warpui/src/platform/mac/objc/notifications/notifications.m b/crates/galaxyui/src/platform/mac/objc/notifications/notifications.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/notifications/notifications.m rename to crates/galaxyui/src/platform/mac/objc/notifications/notifications.m diff --git a/crates/warpui/src/platform/mac/objc/reachability.h b/crates/galaxyui/src/platform/mac/objc/reachability.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/reachability.h rename to crates/galaxyui/src/platform/mac/objc/reachability.h diff --git a/crates/warpui/src/platform/mac/objc/reachability.m b/crates/galaxyui/src/platform/mac/objc/reachability.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/reachability.m rename to crates/galaxyui/src/platform/mac/objc/reachability.m diff --git a/crates/warpui/src/platform/mac/objc/window.m b/crates/galaxyui/src/platform/mac/objc/window.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/window.m rename to crates/galaxyui/src/platform/mac/objc/window.m diff --git a/crates/warpui/src/platform/mac/objc/window_blur.h b/crates/galaxyui/src/platform/mac/objc/window_blur.h similarity index 100% rename from crates/warpui/src/platform/mac/objc/window_blur.h rename to crates/galaxyui/src/platform/mac/objc/window_blur.h diff --git a/crates/warpui/src/platform/mac/objc/window_blur.m b/crates/galaxyui/src/platform/mac/objc/window_blur.m similarity index 100% rename from crates/warpui/src/platform/mac/objc/window_blur.m rename to crates/galaxyui/src/platform/mac/objc/window_blur.m diff --git a/crates/warpui/src/platform/mac/rendering/metal/frame_capture.rs b/crates/galaxyui/src/platform/mac/rendering/metal/frame_capture.rs similarity index 98% rename from crates/warpui/src/platform/mac/rendering/metal/frame_capture.rs rename to crates/galaxyui/src/platform/mac/rendering/metal/frame_capture.rs index 41b3fc0b..689c34cf 100644 --- a/crates/warpui/src/platform/mac/rendering/metal/frame_capture.rs +++ b/crates/galaxyui/src/platform/mac/rendering/metal/frame_capture.rs @@ -1,6 +1,6 @@ use metal::{MTLPixelFormat, MTLStorageMode}; use pathfinder_geometry::vector::Vector2F; -use warpui_core::platform::CapturedFrame; +use galaxyui_core::platform::CapturedFrame; #[cfg(test)] #[path = "frame_capture_tests.rs"] diff --git a/crates/warpui/src/platform/mac/rendering/metal/frame_capture_tests.rs b/crates/galaxyui/src/platform/mac/rendering/metal/frame_capture_tests.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/metal/frame_capture_tests.rs rename to crates/galaxyui/src/platform/mac/rendering/metal/frame_capture_tests.rs diff --git a/crates/warpui/src/platform/mac/rendering/metal/mod.rs b/crates/galaxyui/src/platform/mac/rendering/metal/mod.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/metal/mod.rs rename to crates/galaxyui/src/platform/mac/rendering/metal/mod.rs diff --git a/crates/warpui/src/platform/mac/rendering/metal/renderer.rs b/crates/galaxyui/src/platform/mac/rendering/metal/renderer.rs similarity index 99% rename from crates/warpui/src/platform/mac/rendering/metal/renderer.rs rename to crates/galaxyui/src/platform/mac/rendering/metal/renderer.rs index c8105651..ae14ba01 100644 --- a/crates/warpui/src/platform/mac/rendering/metal/renderer.rs +++ b/crates/galaxyui/src/platform/mac/rendering/metal/renderer.rs @@ -1,6 +1,6 @@ use crate::rendering::atlas::{AllocatedRegion, TextureId}; use crate::rendering::{get_best_dash_gap, GlyphCache, GlyphRasterBoundsFn, RasterizeGlyphFn}; -use warpui_core::{ +use galaxyui_core::{ fonts::{self, SubpixelAlignment}, rendering::{self, texture_cache::TextureCache}, }; @@ -14,22 +14,22 @@ use metal::{ MTLResourceOptions, RenderPipelineDescriptor, }; use objc::{msg_send, sel, sel_impl}; -use warpui_core::platform::CapturedFrame; +use galaxyui_core::platform::CapturedFrame; use pathfinder_color::{ColorF, ColorU}; use pathfinder_geometry::{ rect::RectF, vector::{vec2f, Vector2F}, }; -use warpui_core::fonts::{canvas, RasterizedGlyph}; -use warpui_core::scene::{CornerRadius, GlyphFade, Icon, Image, Layer, Scene}; +use galaxyui_core::fonts::{canvas, RasterizedGlyph}; +use galaxyui_core::scene::{CornerRadius, GlyphFade, Icon, Image, Layer, Scene}; use std::collections::HashMap; use pathfinder_geometry::rect::RectI; use std::{fs::File, mem, sync::Once}; use std::{io::Write, os::raw::c_void}; -use warpui_core::scene::GlyphKey; +use galaxyui_core::scene::GlyphKey; const METAL_LIB_BYTES: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/shaders.metallib")); static WRITE_LIB_TO_FILE: Once = Once::new(); diff --git a/crates/warpui/src/platform/mac/rendering/metal/renderer_manager.rs b/crates/galaxyui/src/platform/mac/rendering/metal/renderer_manager.rs similarity index 96% rename from crates/warpui/src/platform/mac/rendering/metal/renderer_manager.rs rename to crates/galaxyui/src/platform/mac/rendering/metal/renderer_manager.rs index 54296535..99eb1e4f 100644 --- a/crates/warpui/src/platform/mac/rendering/metal/renderer_manager.rs +++ b/crates/galaxyui/src/platform/mac/rendering/metal/renderer_manager.rs @@ -1,7 +1,7 @@ use crate::platform::mac::rendering::metal::renderer::Renderer; use std::collections::HashMap; -use warpui_core::rendering; +use galaxyui_core::rendering; pub struct RendererManager { /// Maps a device's registry ID to its renderer (collection of state related diff --git a/crates/warpui/src/platform/mac/rendering/metal/shaders/shader_types.h b/crates/galaxyui/src/platform/mac/rendering/metal/shaders/shader_types.h similarity index 100% rename from crates/warpui/src/platform/mac/rendering/metal/shaders/shader_types.h rename to crates/galaxyui/src/platform/mac/rendering/metal/shaders/shader_types.h diff --git a/crates/warpui/src/platform/mac/rendering/metal/shaders/shaders.metal b/crates/galaxyui/src/platform/mac/rendering/metal/shaders/shaders.metal similarity index 100% rename from crates/warpui/src/platform/mac/rendering/metal/shaders/shaders.metal rename to crates/galaxyui/src/platform/mac/rendering/metal/shaders/shaders.metal diff --git a/crates/warpui/src/platform/mac/rendering/mod.rs b/crates/galaxyui/src/platform/mac/rendering/mod.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/mod.rs rename to crates/galaxyui/src/platform/mac/rendering/mod.rs diff --git a/crates/warpui/src/platform/mac/rendering/renderer.rs b/crates/galaxyui/src/platform/mac/rendering/renderer.rs similarity index 96% rename from crates/warpui/src/platform/mac/rendering/renderer.rs rename to crates/galaxyui/src/platform/mac/rendering/renderer.rs index 89f16dd6..6ea73c92 100644 --- a/crates/warpui/src/platform/mac/rendering/renderer.rs +++ b/crates/galaxyui/src/platform/mac/rendering/renderer.rs @@ -1,10 +1,10 @@ use crate::platform::mac::rendering::is_integrated_gpu; use crate::platform::mac::window::WindowState; use cocoa::base::id; -use warpui_core::rendering::{ +use galaxyui_core::rendering::{ GPUBackend, GPUDeviceInfo, GPUDeviceType, GPUPowerPreference, OnGPUDeviceSelected, }; -use warpui_core::{fonts, Scene}; +use galaxyui_core::{fonts, Scene}; /// Trait to render the [`Scene`] onto the screen using the provided [`WindowState`]. pub trait Renderer { diff --git a/crates/warpui/src/platform/mac/rendering/renderer_manager.rs b/crates/galaxyui/src/platform/mac/rendering/renderer_manager.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/renderer_manager.rs rename to crates/galaxyui/src/platform/mac/rendering/renderer_manager.rs diff --git a/crates/warpui/src/platform/mac/rendering/wgpu/mod.rs b/crates/galaxyui/src/platform/mac/rendering/wgpu/mod.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/wgpu/mod.rs rename to crates/galaxyui/src/platform/mac/rendering/wgpu/mod.rs diff --git a/crates/warpui/src/platform/mac/rendering/wgpu/renderer.rs b/crates/galaxyui/src/platform/mac/rendering/wgpu/renderer.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/wgpu/renderer.rs rename to crates/galaxyui/src/platform/mac/rendering/wgpu/renderer.rs diff --git a/crates/warpui/src/platform/mac/rendering/wgpu/renderer_manager.rs b/crates/galaxyui/src/platform/mac/rendering/wgpu/renderer_manager.rs similarity index 100% rename from crates/warpui/src/platform/mac/rendering/wgpu/renderer_manager.rs rename to crates/galaxyui/src/platform/mac/rendering/wgpu/renderer_manager.rs diff --git a/crates/warpui/src/platform/mac/text_layout.rs b/crates/galaxyui/src/platform/mac/text_layout.rs similarity index 99% rename from crates/warpui/src/platform/mac/text_layout.rs rename to crates/galaxyui/src/platform/mac/text_layout.rs index 820763ab..fcf1dfea 100644 --- a/crates/warpui/src/platform/mac/text_layout.rs +++ b/crates/galaxyui/src/platform/mac/text_layout.rs @@ -37,9 +37,9 @@ use std::ops::Range; use std::rc::Rc; use std::slice; use vec1::Vec1; -use warpui_core::fonts::GlyphId; -use warpui_core::platform::LineStyle; -use warpui_core::text_layout::{ +use galaxyui_core::fonts::GlyphId; +use galaxyui_core::platform::LineStyle; +use galaxyui_core::text_layout::{ CaretPosition, ClipConfig, Glyph, Line, Run, StyleAndFont, TextAlignment, TextBorder, TextFrame, TextStyle, }; diff --git a/crates/warpui/src/platform/mac/text_layout_test.rs b/crates/galaxyui/src/platform/mac/text_layout_test.rs similarity index 100% rename from crates/warpui/src/platform/mac/text_layout_test.rs rename to crates/galaxyui/src/platform/mac/text_layout_test.rs diff --git a/crates/warpui/src/platform/mac/utils.rs b/crates/galaxyui/src/platform/mac/utils.rs similarity index 100% rename from crates/warpui/src/platform/mac/utils.rs rename to crates/galaxyui/src/platform/mac/utils.rs diff --git a/crates/warpui/src/platform/mac/window.rs b/crates/galaxyui/src/platform/mac/window.rs similarity index 99% rename from crates/warpui/src/platform/mac/window.rs rename to crates/galaxyui/src/platform/mac/window.rs index b8f474e2..dfdf36f2 100644 --- a/crates/warpui/src/platform/mac/window.rs +++ b/crates/galaxyui/src/platform/mac/window.rs @@ -25,22 +25,22 @@ use pathfinder_geometry::{ rect::RectF, vector::{vec2f, Vector2F}, }; -use warpui_core::event::ModifiersState; -use warpui_core::platform::{ +use galaxyui_core::event::ModifiersState; +use galaxyui_core::platform::{ file_picker, FilePickerCallback, FilePickerConfiguration, FullscreenState, GraphicsBackend, TerminationMode, WindowFocusBehavior, }; -use warpui_core::r#async::Timer; -use warpui_core::rendering::GPUPowerPreference; -use warpui_core::windowing::WindowCallbacks; -use warpui_core::{ +use galaxyui_core::r#async::Timer; +use galaxyui_core::rendering::GPUPowerPreference; +use galaxyui_core::windowing::WindowCallbacks; +use galaxyui_core::{ accessibility::AccessibilityContent, actions::StandardAction, platform::{self, WindowBounds, WindowOptions, WindowStyle}, r#async::executor, Event, OptionalPlatformWindow, Scene, WindowId, }; -use warpui_core::{DisplayId, DisplayIdx}; +use galaxyui_core::{DisplayId, DisplayIdx}; use instant::Instant; use std::collections::HashMap; diff --git a/crates/warpui/src/platform/mod.rs b/crates/galaxyui/src/platform/mod.rs similarity index 93% rename from crates/warpui/src/platform/mod.rs rename to crates/galaxyui/src/platform/mod.rs index 8b866390..56e0e2c6 100644 --- a/crates/warpui/src/platform/mod.rs +++ b/crates/galaxyui/src/platform/mod.rs @@ -21,12 +21,12 @@ pub mod current { } else if #[cfg(target_os = "windows")] { pub use super::windows::*; } else { - pub use warpui_core::platform::test::*; + pub use galaxyui_core::platform::test::*; } } } -pub use warpui_core::platform::*; +pub use galaxyui_core::platform::*; pub use app::AppBuilder; diff --git a/crates/warpui/src/platform/wasm/hidden_input.rs b/crates/galaxyui/src/platform/wasm/hidden_input.rs similarity index 100% rename from crates/warpui/src/platform/wasm/hidden_input.rs rename to crates/galaxyui/src/platform/wasm/hidden_input.rs diff --git a/crates/warpui/src/platform/wasm/mobile_detection/mod.rs b/crates/galaxyui/src/platform/wasm/mobile_detection/mod.rs similarity index 100% rename from crates/warpui/src/platform/wasm/mobile_detection/mod.rs rename to crates/galaxyui/src/platform/wasm/mobile_detection/mod.rs diff --git a/crates/warpui/src/platform/wasm/mobile_detection/user_agent.rs b/crates/galaxyui/src/platform/wasm/mobile_detection/user_agent.rs similarity index 100% rename from crates/warpui/src/platform/wasm/mobile_detection/user_agent.rs rename to crates/galaxyui/src/platform/wasm/mobile_detection/user_agent.rs diff --git a/crates/warpui/src/platform/wasm/mobile_detection/user_agent_tests.rs b/crates/galaxyui/src/platform/wasm/mobile_detection/user_agent_tests.rs similarity index 100% rename from crates/warpui/src/platform/wasm/mobile_detection/user_agent_tests.rs rename to crates/galaxyui/src/platform/wasm/mobile_detection/user_agent_tests.rs diff --git a/crates/warpui/src/platform/wasm/mod.rs b/crates/galaxyui/src/platform/wasm/mod.rs similarity index 99% rename from crates/warpui/src/platform/wasm/mod.rs rename to crates/galaxyui/src/platform/wasm/mod.rs index 910f7f3f..698b364c 100644 --- a/crates/warpui/src/platform/wasm/mod.rs +++ b/crates/galaxyui/src/platform/wasm/mod.rs @@ -16,7 +16,7 @@ pub use soft_keyboard::{SoftKeyboardInput, SoftKeyboardManager, SoftKeyboardStat pub use crate::windowing::winit::app::App; // Re-export the functions from the core crate. -pub use warpui_core::platform::wasm::*; +pub use galaxyui_core::platform::wasm::*; use super::KEYS_TO_IGNORE; diff --git a/crates/warpui/src/platform/wasm/soft_keyboard.rs b/crates/galaxyui/src/platform/wasm/soft_keyboard.rs similarity index 100% rename from crates/warpui/src/platform/wasm/soft_keyboard.rs rename to crates/galaxyui/src/platform/wasm/soft_keyboard.rs diff --git a/crates/warpui/src/platform/wasm/soft_keyboard_tests.rs b/crates/galaxyui/src/platform/wasm/soft_keyboard_tests.rs similarity index 100% rename from crates/warpui/src/platform/wasm/soft_keyboard_tests.rs rename to crates/galaxyui/src/platform/wasm/soft_keyboard_tests.rs diff --git a/crates/warpui/src/platform/windows/mod.rs b/crates/galaxyui/src/platform/windows/mod.rs similarity index 100% rename from crates/warpui/src/platform/windows/mod.rs rename to crates/galaxyui/src/platform/windows/mod.rs diff --git a/crates/warpui/src/rendering/atlas/allocator.rs b/crates/galaxyui/src/rendering/atlas/allocator.rs similarity index 100% rename from crates/warpui/src/rendering/atlas/allocator.rs rename to crates/galaxyui/src/rendering/atlas/allocator.rs diff --git a/crates/warpui/src/rendering/atlas/manager.rs b/crates/galaxyui/src/rendering/atlas/manager.rs similarity index 100% rename from crates/warpui/src/rendering/atlas/manager.rs rename to crates/galaxyui/src/rendering/atlas/manager.rs diff --git a/crates/warpui/src/rendering/atlas/mod.rs b/crates/galaxyui/src/rendering/atlas/mod.rs similarity index 100% rename from crates/warpui/src/rendering/atlas/mod.rs rename to crates/galaxyui/src/rendering/atlas/mod.rs diff --git a/crates/warpui/src/rendering/glyph_cache.rs b/crates/galaxyui/src/rendering/glyph_cache.rs similarity index 100% rename from crates/warpui/src/rendering/glyph_cache.rs rename to crates/galaxyui/src/rendering/glyph_cache.rs diff --git a/crates/warpui/src/rendering/mod.rs b/crates/galaxyui/src/rendering/mod.rs similarity index 93% rename from crates/warpui/src/rendering/mod.rs rename to crates/galaxyui/src/rendering/mod.rs index 255be7ef..1d0d8e56 100644 --- a/crates/warpui/src/rendering/mod.rs +++ b/crates/galaxyui/src/rendering/mod.rs @@ -3,8 +3,8 @@ pub(crate) mod glyph_cache; #[cfg(wgpu)] pub mod wgpu; -pub use warpui_core::rendering::*; -use warpui_core::scene::Dash; +pub use galaxyui_core::rendering::*; +use galaxyui_core::scene::Dash; pub(crate) use glyph_cache::{GlyphCache, GlyphRasterBoundsFn, RasterizeGlyphFn}; @@ -21,7 +21,7 @@ pub fn is_low_power_gpu_available() -> bool { if #[cfg(target_os = "macos")] { crate::platform::mac::is_low_power_gpu_available() } else if #[cfg(wgpu)] { - warpui_core::r#async::block_on(wgpu::is_low_power_gpu_available()) + galaxyui_core::r#async::block_on(wgpu::is_low_power_gpu_available()) } else { false } diff --git a/crates/warpui/src/rendering/wgpu/mod.rs b/crates/galaxyui/src/rendering/wgpu/mod.rs similarity index 99% rename from crates/warpui/src/rendering/wgpu/mod.rs rename to crates/galaxyui/src/rendering/wgpu/mod.rs index e4ed5db7..5488bcec 100644 --- a/crates/warpui/src/rendering/wgpu/mod.rs +++ b/crates/galaxyui/src/rendering/wgpu/mod.rs @@ -33,7 +33,7 @@ pub fn reset_wgpu_instance(display_handle: Box) { // Check whether DirectComposition should be explicitly disabled on Windows. - let disable_dcomp = std::env::var("WARP_USE_DIRECT_COMPOSITION") + let disable_dcomp = std::env::var("GALAXY_USE_DIRECT_COMPOSITION") .ok() .is_some_and(|val| { let val = val.to_lowercase(); diff --git a/crates/warpui/src/rendering/wgpu/renderer.rs b/crates/galaxyui/src/rendering/wgpu/renderer.rs similarity index 99% rename from crates/warpui/src/rendering/wgpu/renderer.rs rename to crates/galaxyui/src/rendering/wgpu/renderer.rs index f0c9dd6d..c98cfcf9 100644 --- a/crates/warpui/src/rendering/wgpu/renderer.rs +++ b/crates/galaxyui/src/rendering/wgpu/renderer.rs @@ -7,7 +7,7 @@ mod util; use frame::Frame; use pathfinder_geometry::vector::Vector2F; use util::with_error_scope; -use warpui_core::platform::CapturedFrame; +use galaxyui_core::platform::CapturedFrame; use wgpu::wgc::{device::DeviceError, present::SurfaceError}; use crate::r#async::block_on; diff --git a/crates/warpui/src/rendering/wgpu/renderer/frame.rs b/crates/galaxyui/src/rendering/wgpu/renderer/frame.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/renderer/frame.rs rename to crates/galaxyui/src/rendering/wgpu/renderer/frame.rs diff --git a/crates/warpui/src/rendering/wgpu/renderer/glyph.rs b/crates/galaxyui/src/rendering/wgpu/renderer/glyph.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/renderer/glyph.rs rename to crates/galaxyui/src/rendering/wgpu/renderer/glyph.rs diff --git a/crates/warpui/src/rendering/wgpu/renderer/image.rs b/crates/galaxyui/src/rendering/wgpu/renderer/image.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/renderer/image.rs rename to crates/galaxyui/src/rendering/wgpu/renderer/image.rs diff --git a/crates/warpui/src/rendering/wgpu/renderer/rect.rs b/crates/galaxyui/src/rendering/wgpu/renderer/rect.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/renderer/rect.rs rename to crates/galaxyui/src/rendering/wgpu/renderer/rect.rs diff --git a/crates/warpui/src/rendering/wgpu/renderer/util.rs b/crates/galaxyui/src/rendering/wgpu/renderer/util.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/renderer/util.rs rename to crates/galaxyui/src/rendering/wgpu/renderer/util.rs diff --git a/crates/warpui/src/rendering/wgpu/resources.rs b/crates/galaxyui/src/rendering/wgpu/resources.rs similarity index 99% rename from crates/warpui/src/rendering/wgpu/resources.rs rename to crates/galaxyui/src/rendering/wgpu/resources.rs index ae01ddb2..efe2a478 100644 --- a/crates/warpui/src/rendering/wgpu/resources.rs +++ b/crates/galaxyui/src/rendering/wgpu/resources.rs @@ -17,7 +17,7 @@ use lazy_static::lazy_static; use pathfinder_geometry::vector::Vector2F; use thiserror::Error; use version_compare::Version; -use warpui_core::rendering::{GPUBackend, GPUDeviceInfo, GPUDeviceType}; +use galaxyui_core::rendering::{GPUBackend, GPUDeviceInfo, GPUDeviceType}; use wgpu::{ Adapter, Backend, CompositeAlphaMode, CurrentSurfaceTexture, Device, DeviceType, PresentMode, Queue, Surface, SurfaceConfiguration, @@ -406,7 +406,7 @@ fn is_vulkan_nvidia_adapter(adapter_info: &wgpu::AdapterInfo) -> bool { adapter_info.backend == wgpu::Backend::Vulkan && is_nvidia_adapter(adapter_info) } -/// Returns whether or not the provided adapter is an unsupported Nvidia driver version for warpui +/// Returns whether or not the provided adapter is an unsupported Nvidia driver version for galaxyui /// to render properly. fn is_older_nvidia_adapter(adapter_info: &wgpu::AdapterInfo) -> bool { if !is_vulkan_nvidia_adapter(adapter_info) { @@ -466,7 +466,7 @@ fn is_gl_to_metal_adapter_on_windows_in_parallels(adapter_info: &wgpu::AdapterIn } /// Returns whether or not the provided adapter is an unsupported Intel UHD Mesa driver version for -/// warpui to render properly. Currently, we limit this to "Intel UHD Graphics 620", but we do have +/// galaxyui to render properly. Currently, we limit this to "Intel UHD Graphics 620", but we do have /// some suspicion that more Intel UHD devices are affected, e.g. PLAT-599 has a "Intel(R) UHD /// Graphics (TGL GT1)" user seeing the exact same issue. fn is_older_vulkan_intel_uhd_adapter(adapter_info: &wgpu::AdapterInfo) -> bool { @@ -536,7 +536,7 @@ pub fn adapter_has_rendering_offset_bug(adapter_info: &wgpu::AdapterInfo) -> boo } /// Checks whether the provided adapter info describes a lavapipe -/// (Vulkan llvmpipe) adapter that may not work properly with warpui. +/// (Vulkan llvmpipe) adapter that may not work properly with galaxyui. fn is_older_lavapipe_adapter(adapter_info: &wgpu::AdapterInfo) -> bool { // Only consider Vulkan adapters using the llvmpipe driver. if adapter_info.backend != wgpu::Backend::Vulkan || adapter_info.driver != "llvmpipe" { diff --git a/crates/warpui/src/rendering/wgpu/resources/quad.rs b/crates/galaxyui/src/rendering/wgpu/resources/quad.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/resources/quad.rs rename to crates/galaxyui/src/rendering/wgpu/resources/quad.rs diff --git a/crates/warpui/src/rendering/wgpu/resources/uniforms.rs b/crates/galaxyui/src/rendering/wgpu/resources/uniforms.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/resources/uniforms.rs rename to crates/galaxyui/src/rendering/wgpu/resources/uniforms.rs diff --git a/crates/warpui/src/rendering/wgpu/resources_tests.rs b/crates/galaxyui/src/rendering/wgpu/resources_tests.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/resources_tests.rs rename to crates/galaxyui/src/rendering/wgpu/resources_tests.rs diff --git a/crates/warpui/src/rendering/wgpu/shader_types.rs b/crates/galaxyui/src/rendering/wgpu/shader_types.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/shader_types.rs rename to crates/galaxyui/src/rendering/wgpu/shader_types.rs diff --git a/crates/warpui/src/rendering/wgpu/shaders/glyph_shader.wgsl b/crates/galaxyui/src/rendering/wgpu/shaders/glyph_shader.wgsl similarity index 100% rename from crates/warpui/src/rendering/wgpu/shaders/glyph_shader.wgsl rename to crates/galaxyui/src/rendering/wgpu/shaders/glyph_shader.wgsl diff --git a/crates/warpui/src/rendering/wgpu/shaders/image_shader.wgsl b/crates/galaxyui/src/rendering/wgpu/shaders/image_shader.wgsl similarity index 100% rename from crates/warpui/src/rendering/wgpu/shaders/image_shader.wgsl rename to crates/galaxyui/src/rendering/wgpu/shaders/image_shader.wgsl diff --git a/crates/warpui/src/rendering/wgpu/shaders/rect_shader.wgsl b/crates/galaxyui/src/rendering/wgpu/shaders/rect_shader.wgsl similarity index 100% rename from crates/warpui/src/rendering/wgpu/shaders/rect_shader.wgsl rename to crates/galaxyui/src/rendering/wgpu/shaders/rect_shader.wgsl diff --git a/crates/warpui/src/rendering/wgpu/texture_with_bind_group.rs b/crates/galaxyui/src/rendering/wgpu/texture_with_bind_group.rs similarity index 100% rename from crates/warpui/src/rendering/wgpu/texture_with_bind_group.rs rename to crates/galaxyui/src/rendering/wgpu/texture_with_bind_group.rs diff --git a/crates/warpui/src/windowing/mod.rs b/crates/galaxyui/src/windowing/mod.rs similarity index 70% rename from crates/warpui/src/windowing/mod.rs rename to crates/galaxyui/src/windowing/mod.rs index abbab401..6a37f03d 100644 --- a/crates/warpui/src/windowing/mod.rs +++ b/crates/galaxyui/src/windowing/mod.rs @@ -1,6 +1,6 @@ #[cfg(winit)] pub mod winit; -pub use warpui_core::windowing::*; +pub use galaxyui_core::windowing::*; #[cfg(target_os = "linux")] pub use winit::WindowingSystem; diff --git a/crates/warpui/src/windowing/winit/app.rs b/crates/galaxyui/src/windowing/winit/app.rs similarity index 100% rename from crates/warpui/src/windowing/winit/app.rs rename to crates/galaxyui/src/windowing/winit/app.rs diff --git a/crates/warpui/src/windowing/winit/delegate.rs b/crates/galaxyui/src/windowing/winit/delegate.rs similarity index 99% rename from crates/warpui/src/windowing/winit/delegate.rs rename to crates/galaxyui/src/windowing/winit/delegate.rs index 6acb5821..ed123578 100644 --- a/crates/warpui/src/windowing/winit/delegate.rs +++ b/crates/galaxyui/src/windowing/winit/delegate.rs @@ -129,7 +129,7 @@ pub fn open_url_in_system(url: &str) { fn use_wsl_browser() -> bool { static USE_WSL_BROWSER: OnceLock = OnceLock::new(); USE_WSL_BROWSER - .get_or_init(|| std::env::var("WARP_FORCE_WSL_BROWSER").is_ok()) + .get_or_init(|| std::env::var("GALAXY_FORCE_WSL_BROWSER").is_ok()) .to_owned() } diff --git a/crates/warpui/src/windowing/winit/delegate/global_hotkey.rs b/crates/galaxyui/src/windowing/winit/delegate/global_hotkey.rs similarity index 100% rename from crates/warpui/src/windowing/winit/delegate/global_hotkey.rs rename to crates/galaxyui/src/windowing/winit/delegate/global_hotkey.rs diff --git a/crates/warpui/src/windowing/winit/event_loop/drag_drop_tests.rs b/crates/galaxyui/src/windowing/winit/event_loop/drag_drop_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/event_loop/drag_drop_tests.rs rename to crates/galaxyui/src/windowing/winit/event_loop/drag_drop_tests.rs diff --git a/crates/warpui/src/windowing/winit/event_loop/key_events.rs b/crates/galaxyui/src/windowing/winit/event_loop/key_events.rs similarity index 98% rename from crates/warpui/src/windowing/winit/event_loop/key_events.rs rename to crates/galaxyui/src/windowing/winit/event_loop/key_events.rs index fa590f2b..a182e1cb 100644 --- a/crates/warpui/src/windowing/winit/event_loop/key_events.rs +++ b/crates/galaxyui/src/windowing/winit/event_loop/key_events.rs @@ -183,7 +183,7 @@ fn get_input_key(logical_key: &Key, is_shift: bool) -> Key { // If the key is a character AND shift is NOT pressed, we force the key to lowercase. // This is to align with existing behavior where we expect bindings with shift // to have uppercase characters, and bindings without shift to have lowercase characters. - // See warpui::keymap::Keystroke::parse and warp::util::bindings::cmd_or_ctrl_shift. + // See galaxyui::keymap::Keystroke::parse and galaxy::util::bindings::cmd_or_ctrl_shift. (Character(character), true) => Character(character.to_uppercase().into()), (Character(character), false) => Character(character.to_lowercase().into()), (non_char_key, _) => non_char_key.clone(), diff --git a/crates/warpui/src/windowing/winit/event_loop/key_events_tests.rs b/crates/galaxyui/src/windowing/winit/event_loop/key_events_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/event_loop/key_events_tests.rs rename to crates/galaxyui/src/windowing/winit/event_loop/key_events_tests.rs diff --git a/crates/warpui/src/windowing/winit/event_loop/mod.rs b/crates/galaxyui/src/windowing/winit/event_loop/mod.rs similarity index 98% rename from crates/warpui/src/windowing/winit/event_loop/mod.rs rename to crates/galaxyui/src/windowing/winit/event_loop/mod.rs index d36bfbde..c01a16c6 100644 --- a/crates/warpui/src/windowing/winit/event_loop/mod.rs +++ b/crates/galaxyui/src/windowing/winit/event_loop/mod.rs @@ -246,7 +246,7 @@ impl LogicalPositionExt for winit::dpi::LogicalPosition { } /// The state that we need to track across frames in order to properly convert -/// winit events into warpui events. +/// winit events into galaxyui events. #[derive(Default)] struct State { windows: HashMap, @@ -426,7 +426,7 @@ fn convert_touch_moved( /// Handles the `TouchPhase::Ended` phase of a touch event. /// /// Note: This function intentionally does NOT clear `last_touch_purpose` for normal taps. -/// The purpose is cleared later in `handle_converted_warpui_event` after soft keyboard +/// The purpose is cleared later in `handle_converted_galaxyui_event` after soft keyboard /// logic runs, which needs to check if the touch was still a Tap (vs Scroll/Select/WindowDrag). fn convert_touch_ended( touch: Touch, @@ -434,7 +434,7 @@ fn convert_touch_ended( scale_factor: f32, ) -> Option { // Check the purpose but don't clear it yet - we'll clear it later - // in handle_converted_warpui_event after checking if we need to + // in handle_converted_galaxyui_event after checking if we need to // update the soft keyboard. let is_long_press = if let Some(TouchPurpose::Tap(_, _, start_time)) = &window_state.last_touch_purpose { @@ -471,7 +471,7 @@ fn convert_touch_ended( } // Don't clear last_touch_purpose yet - it will be cleared in - // handle_converted_warpui_event after soft keyboard logic runs. + // handle_converted_galaxyui_event after soft keyboard logic runs. Some(ConvertedEvent::Event(crate::event::Event::LeftMouseUp { position: window_state.last_cursor_position.to_vec2f(), modifiers: from_winit_modifiers_state(window_state.modifiers), @@ -831,7 +831,7 @@ impl EventLoop { // Convert velocity (px/sec) to scroll delta using elapsed time. let delta = velocity.velocity * elapsed; let position = window_state.last_cursor_position.to_vec2f(); - self.handle_converted_warpui_event( + self.handle_converted_galaxyui_event( window_id, crate::event::Event::ScrollWheel { position, @@ -1060,7 +1060,7 @@ impl EventLoop { match event { ConvertedEvent::Event(event) => { - self.handle_converted_warpui_event(window_id, event); + self.handle_converted_galaxyui_event(window_id, event); } ConvertedEvent::Resize => { let window = downcast_window(window.as_ref()); @@ -1442,10 +1442,10 @@ impl EventLoop { // Create and dispatch the batched drag-and-drop event let drag_drop_event = crate::Event::DragAndDropFiles { paths, location }; - self.handle_converted_warpui_event(window_id, drag_drop_event); + self.handle_converted_galaxyui_event(window_id, drag_drop_event); } - /// Handles a request to close the window with the given warpui and winit + /// Handles a request to close the window with the given galaxyui and winit /// IDs. fn close_window_requested( &mut self, @@ -1558,9 +1558,9 @@ impl EventLoop { }; } - /// Handle events that may be handled by warpui, or maybe not in some cases, e.g. window + /// Handle events that may be handled by galaxyui, or maybe not in some cases, e.g. window /// drag-to-resize or drag-to-move. - fn handle_converted_warpui_event( + fn handle_converted_galaxyui_event( &mut self, window_id: winit::window::WindowId, event: crate::Event, @@ -1585,7 +1585,7 @@ impl EventLoop { } // Check if we should start a window drag-resize. If so, do that instead of - // passing the event into warpui. Skip for touch events as drag_resize_window + // passing the event into galaxyui. Skip for touch events as drag_resize_window // doesn't work properly with touch input on Windows. if let crate::event::Event::LeftMouseDown { .. } = event { if !winit_window.is_decorated() @@ -1605,7 +1605,7 @@ impl EventLoop { .for_window(winit_window) .dispatch_event(event.clone()); - // If the app didn't handle the event, warpui might still want to do something + // If the app didn't handle the event, galaxyui might still want to do something // with it if it's a click within the "titlebar region" at the top. if !dispatch_result.handled { if let crate::event::Event::LeftMouseDown { @@ -1924,7 +1924,7 @@ impl EventLoop { /// Handles input events from the soft keyboard on mobile WASM. /// - /// Converts `SoftKeyboardInput` events into warpui `Event`s and dispatches + /// Converts `SoftKeyboardInput` events into galaxyui `Event`s and dispatches /// them to the active window, similar to how `handle_ime_event` works. #[cfg(target_family = "wasm")] fn handle_soft_keyboard_input(&mut self, input: crate::platform::wasm::SoftKeyboardInput) { diff --git a/crates/warpui/src/windowing/winit/fonts.rs b/crates/galaxyui/src/windowing/winit/fonts.rs similarity index 99% rename from crates/warpui/src/windowing/winit/fonts.rs rename to crates/galaxyui/src/windowing/winit/fonts.rs index bd8e1cc0..b7f3b32d 100644 --- a/crates/warpui/src/windowing/winit/fonts.rs +++ b/crates/galaxyui/src/windowing/winit/fonts.rs @@ -9,7 +9,7 @@ mod linux; #[cfg(target_os = "windows")] mod windows; -use warpui_core::fonts::{Style, Weight}; +use galaxyui_core::fonts::{Style, Weight}; #[cfg(target_os = "windows")] use windows::loader; diff --git a/crates/warpui/src/windowing/winit/fonts/font_handle.rs b/crates/galaxyui/src/windowing/winit/fonts/font_handle.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/font_handle.rs rename to crates/galaxyui/src/windowing/winit/fonts/font_handle.rs diff --git a/crates/warpui/src/windowing/winit/fonts/linux.rs b/crates/galaxyui/src/windowing/winit/fonts/linux.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/linux.rs rename to crates/galaxyui/src/windowing/winit/fonts/linux.rs diff --git a/crates/warpui/src/windowing/winit/fonts/str_index_map.rs b/crates/galaxyui/src/windowing/winit/fonts/str_index_map.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/str_index_map.rs rename to crates/galaxyui/src/windowing/winit/fonts/str_index_map.rs diff --git a/crates/warpui/src/windowing/winit/fonts/str_index_map_tests.rs b/crates/galaxyui/src/windowing/winit/fonts/str_index_map_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/str_index_map_tests.rs rename to crates/galaxyui/src/windowing/winit/fonts/str_index_map_tests.rs diff --git a/crates/warpui/src/windowing/winit/fonts/swash_rasterizer.rs b/crates/galaxyui/src/windowing/winit/fonts/swash_rasterizer.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/swash_rasterizer.rs rename to crates/galaxyui/src/windowing/winit/fonts/swash_rasterizer.rs diff --git a/crates/warpui/src/windowing/winit/fonts/text_layout.rs b/crates/galaxyui/src/windowing/winit/fonts/text_layout.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/text_layout.rs rename to crates/galaxyui/src/windowing/winit/fonts/text_layout.rs diff --git a/crates/warpui/src/windowing/winit/fonts/windows.rs b/crates/galaxyui/src/windowing/winit/fonts/windows.rs similarity index 100% rename from crates/warpui/src/windowing/winit/fonts/windows.rs rename to crates/galaxyui/src/windowing/winit/fonts/windows.rs diff --git a/crates/warpui/src/windowing/winit/linux/app.rs b/crates/galaxyui/src/windowing/winit/linux/app.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/app.rs rename to crates/galaxyui/src/windowing/winit/linux/app.rs diff --git a/crates/warpui/src/windowing/winit/linux/clipboard.rs b/crates/galaxyui/src/windowing/winit/linux/clipboard.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/clipboard.rs rename to crates/galaxyui/src/windowing/winit/linux/clipboard.rs diff --git a/crates/warpui/src/windowing/winit/linux/clipboard_tests.rs b/crates/galaxyui/src/windowing/winit/linux/clipboard_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/clipboard_tests.rs rename to crates/galaxyui/src/windowing/winit/linux/clipboard_tests.rs diff --git a/crates/warpui/src/windowing/winit/linux/cursor_theme.rs b/crates/galaxyui/src/windowing/winit/linux/cursor_theme.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/cursor_theme.rs rename to crates/galaxyui/src/windowing/winit/linux/cursor_theme.rs diff --git a/crates/warpui/src/windowing/winit/linux/cursor_theme_tests.rs b/crates/galaxyui/src/windowing/winit/linux/cursor_theme_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/cursor_theme_tests.rs rename to crates/galaxyui/src/windowing/winit/linux/cursor_theme_tests.rs diff --git a/crates/warpui/src/windowing/winit/linux/mod.rs b/crates/galaxyui/src/windowing/winit/linux/mod.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/mod.rs rename to crates/galaxyui/src/windowing/winit/linux/mod.rs diff --git a/crates/warpui/src/windowing/winit/linux/window_manager.rs b/crates/galaxyui/src/windowing/winit/linux/window_manager.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/window_manager.rs rename to crates/galaxyui/src/windowing/winit/linux/window_manager.rs diff --git a/crates/warpui/src/windowing/winit/linux/zbus/desktop_settings.rs b/crates/galaxyui/src/windowing/winit/linux/zbus/desktop_settings.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/zbus/desktop_settings.rs rename to crates/galaxyui/src/windowing/winit/linux/zbus/desktop_settings.rs diff --git a/crates/warpui/src/windowing/winit/linux/zbus/mod.rs b/crates/galaxyui/src/windowing/winit/linux/zbus/mod.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/zbus/mod.rs rename to crates/galaxyui/src/windowing/winit/linux/zbus/mod.rs diff --git a/crates/warpui/src/windowing/winit/linux/zbus/network_status.rs b/crates/galaxyui/src/windowing/winit/linux/zbus/network_status.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/zbus/network_status.rs rename to crates/galaxyui/src/windowing/winit/linux/zbus/network_status.rs diff --git a/crates/warpui/src/windowing/winit/linux/zbus/suspend_resume.rs b/crates/galaxyui/src/windowing/winit/linux/zbus/suspend_resume.rs similarity index 100% rename from crates/warpui/src/windowing/winit/linux/zbus/suspend_resume.rs rename to crates/galaxyui/src/windowing/winit/linux/zbus/suspend_resume.rs diff --git a/crates/warpui/src/windowing/winit/mod.rs b/crates/galaxyui/src/windowing/winit/mod.rs similarity index 100% rename from crates/warpui/src/windowing/winit/mod.rs rename to crates/galaxyui/src/windowing/winit/mod.rs diff --git a/crates/warpui/src/windowing/winit/notifications/linux.rs b/crates/galaxyui/src/windowing/winit/notifications/linux.rs similarity index 100% rename from crates/warpui/src/windowing/winit/notifications/linux.rs rename to crates/galaxyui/src/windowing/winit/notifications/linux.rs diff --git a/crates/warpui/src/windowing/winit/notifications/mod.rs b/crates/galaxyui/src/windowing/winit/notifications/mod.rs similarity index 100% rename from crates/warpui/src/windowing/winit/notifications/mod.rs rename to crates/galaxyui/src/windowing/winit/notifications/mod.rs diff --git a/crates/warpui/src/windowing/winit/notifications/wasm.rs b/crates/galaxyui/src/windowing/winit/notifications/wasm.rs similarity index 100% rename from crates/warpui/src/windowing/winit/notifications/wasm.rs rename to crates/galaxyui/src/windowing/winit/notifications/wasm.rs diff --git a/crates/warpui/src/windowing/winit/notifications/windows.rs b/crates/galaxyui/src/windowing/winit/notifications/windows.rs similarity index 100% rename from crates/warpui/src/windowing/winit/notifications/windows.rs rename to crates/galaxyui/src/windowing/winit/notifications/windows.rs diff --git a/crates/warpui/src/windowing/winit/text_layout_tests.rs b/crates/galaxyui/src/windowing/winit/text_layout_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/text_layout_tests.rs rename to crates/galaxyui/src/windowing/winit/text_layout_tests.rs diff --git a/crates/warpui/src/windowing/winit/wasm.rs b/crates/galaxyui/src/windowing/winit/wasm.rs similarity index 100% rename from crates/warpui/src/windowing/winit/wasm.rs rename to crates/galaxyui/src/windowing/winit/wasm.rs diff --git a/crates/warpui/src/windowing/winit/window.rs b/crates/galaxyui/src/windowing/winit/window.rs similarity index 100% rename from crates/warpui/src/windowing/winit/window.rs rename to crates/galaxyui/src/windowing/winit/window.rs diff --git a/crates/warpui/src/windowing/winit/window/windows_wm.rs b/crates/galaxyui/src/windowing/winit/window/windows_wm.rs similarity index 100% rename from crates/warpui/src/windowing/winit/window/windows_wm.rs rename to crates/galaxyui/src/windowing/winit/window/windows_wm.rs diff --git a/crates/warpui/src/windowing/winit/window/x11.rs b/crates/galaxyui/src/windowing/winit/window/x11.rs similarity index 100% rename from crates/warpui/src/windowing/winit/window/x11.rs rename to crates/galaxyui/src/windowing/winit/window/x11.rs diff --git a/crates/warpui/src/windowing/winit/windows/clipboard.rs b/crates/galaxyui/src/windowing/winit/windows/clipboard.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/clipboard.rs rename to crates/galaxyui/src/windowing/winit/windows/clipboard.rs diff --git a/crates/warpui/src/windowing/winit/windows/clipboard_tests.rs b/crates/galaxyui/src/windowing/winit/windows/clipboard_tests.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/clipboard_tests.rs rename to crates/galaxyui/src/windowing/winit/windows/clipboard_tests.rs diff --git a/crates/warpui/src/windowing/winit/windows/mod.rs b/crates/galaxyui/src/windowing/winit/windows/mod.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/mod.rs rename to crates/galaxyui/src/windowing/winit/windows/mod.rs diff --git a/crates/warpui/src/windowing/winit/windows/network.rs b/crates/galaxyui/src/windowing/winit/windows/network.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/network.rs rename to crates/galaxyui/src/windowing/winit/windows/network.rs diff --git a/crates/warpui/src/windowing/winit/windows/registry.rs b/crates/galaxyui/src/windowing/winit/windows/registry.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/registry.rs rename to crates/galaxyui/src/windowing/winit/windows/registry.rs diff --git a/crates/warpui/src/windowing/winit/windows/system_caption_buttons.rs b/crates/galaxyui/src/windowing/winit/windows/system_caption_buttons.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/system_caption_buttons.rs rename to crates/galaxyui/src/windowing/winit/windows/system_caption_buttons.rs diff --git a/crates/warpui/src/windowing/winit/windows/window_attribute.rs b/crates/galaxyui/src/windowing/winit/windows/window_attribute.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/window_attribute.rs rename to crates/galaxyui/src/windowing/winit/windows/window_attribute.rs diff --git a/crates/warpui/src/windowing/winit/windows/window_ext.rs b/crates/galaxyui/src/windowing/winit/windows/window_ext.rs similarity index 100% rename from crates/warpui/src/windowing/winit/windows/window_ext.rs rename to crates/galaxyui/src/windowing/winit/windows/window_ext.rs diff --git a/crates/warpui_core/Cargo.toml b/crates/galaxyui_core/Cargo.toml similarity index 96% rename from crates/warpui_core/Cargo.toml rename to crates/galaxyui_core/Cargo.toml index 80401b41..30f522f1 100644 --- a/crates/warpui_core/Cargo.toml +++ b/crates/galaxyui_core/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warpui_core" +name = "galaxyui_core" version = "0.1.0" edition = "2021" authors.workspace = true @@ -76,7 +76,7 @@ titlecase = "1.0" tokio.workspace = true trait-set = "0.3.0" vec1.workspace = true -warp_util.workspace = true +galaxy_util.workspace = true [dev-dependencies] command = { workspace = true, features = ["test-util"] } @@ -86,7 +86,7 @@ ctor = "0.1.19" rust-embed.workspace = true simplelog.workspace = true # Enable the `test-util` feature for our own package when running tests. -warpui_core = { path = ".", features = ["test-util"] } +galaxyui_core = { path = ".", features = ["test-util"] } [target.'cfg(not(target_family = "wasm"))'.dependencies] async-io.workspace = true diff --git a/crates/warpui_core/README.md b/crates/galaxyui_core/README.md similarity index 100% rename from crates/warpui_core/README.md rename to crates/galaxyui_core/README.md diff --git a/crates/warpui_core/build.rs b/crates/galaxyui_core/build.rs similarity index 100% rename from crates/warpui_core/build.rs rename to crates/galaxyui_core/build.rs diff --git a/crates/warpui_core/src/accessibility.rs b/crates/galaxyui_core/src/accessibility.rs similarity index 99% rename from crates/warpui_core/src/accessibility.rs rename to crates/galaxyui_core/src/accessibility.rs index 1ce0a5fe..a1a37d32 100644 --- a/crates/warpui_core/src/accessibility.rs +++ b/crates/galaxyui_core/src/accessibility.rs @@ -4,7 +4,7 @@ //! life with screen readers. //! //! ## How does a11y work in Warp? -//! Because Warp uses its own rust UI framework (warpui), we don’t benefit from the built-in +//! Because Warp uses its own rust UI framework (galaxyui), we don’t benefit from the built-in //! VoiceOver integration and objc NSAccessibility APIs. This is both good and bad for our app and //! the UI framework. //! diff --git a/crates/warpui_core/src/actions.rs b/crates/galaxyui_core/src/actions.rs similarity index 100% rename from crates/warpui_core/src/actions.rs rename to crates/galaxyui_core/src/actions.rs diff --git a/crates/warpui_core/src/app_focus_telemetry.rs b/crates/galaxyui_core/src/app_focus_telemetry.rs similarity index 100% rename from crates/warpui_core/src/app_focus_telemetry.rs rename to crates/galaxyui_core/src/app_focus_telemetry.rs diff --git a/crates/warpui_core/src/app_focus_telemetry_test.rs b/crates/galaxyui_core/src/app_focus_telemetry_test.rs similarity index 100% rename from crates/warpui_core/src/app_focus_telemetry_test.rs rename to crates/galaxyui_core/src/app_focus_telemetry_test.rs diff --git a/crates/warpui_core/src/assets/asset_cache.rs b/crates/galaxyui_core/src/assets/asset_cache.rs similarity index 100% rename from crates/warpui_core/src/assets/asset_cache.rs rename to crates/galaxyui_core/src/assets/asset_cache.rs diff --git a/crates/warpui_core/src/assets/mod.rs b/crates/galaxyui_core/src/assets/mod.rs similarity index 100% rename from crates/warpui_core/src/assets/mod.rs rename to crates/galaxyui_core/src/assets/mod.rs diff --git a/crates/warpui_core/src/async/mod.rs b/crates/galaxyui_core/src/async/mod.rs similarity index 100% rename from crates/warpui_core/src/async/mod.rs rename to crates/galaxyui_core/src/async/mod.rs diff --git a/crates/warpui_core/src/async/native/executor.rs b/crates/galaxyui_core/src/async/native/executor.rs similarity index 100% rename from crates/warpui_core/src/async/native/executor.rs rename to crates/galaxyui_core/src/async/native/executor.rs diff --git a/crates/warpui_core/src/async/native/mod.rs b/crates/galaxyui_core/src/async/native/mod.rs similarity index 100% rename from crates/warpui_core/src/async/native/mod.rs rename to crates/galaxyui_core/src/async/native/mod.rs diff --git a/crates/warpui_core/src/async/wasm/executor.rs b/crates/galaxyui_core/src/async/wasm/executor.rs similarity index 100% rename from crates/warpui_core/src/async/wasm/executor.rs rename to crates/galaxyui_core/src/async/wasm/executor.rs diff --git a/crates/warpui_core/src/async/wasm/mod.rs b/crates/galaxyui_core/src/async/wasm/mod.rs similarity index 100% rename from crates/warpui_core/src/async/wasm/mod.rs rename to crates/galaxyui_core/src/async/wasm/mod.rs diff --git a/crates/warpui_core/src/clipboard.rs b/crates/galaxyui_core/src/clipboard.rs similarity index 100% rename from crates/warpui_core/src/clipboard.rs rename to crates/galaxyui_core/src/clipboard.rs diff --git a/crates/warpui_core/src/clipboard_utils.rs b/crates/galaxyui_core/src/clipboard_utils.rs similarity index 99% rename from crates/warpui_core/src/clipboard_utils.rs rename to crates/galaxyui_core/src/clipboard_utils.rs index 5c4c56e0..8b128f8b 100644 --- a/crates/warpui_core/src/clipboard_utils.rs +++ b/crates/galaxyui_core/src/clipboard_utils.rs @@ -424,7 +424,7 @@ pub fn get_image_filepaths_from_paths(paths: &[String]) -> Vec { /// Create escaped file paths text string for insertion into terminal. pub fn escaped_paths_str( paths: &[String], - shell_family: Option, + shell_family: Option, ) -> String { // Handle regular file paths as text #[allow(unused_mut)] diff --git a/crates/warpui_core/src/clipboard_utils_tests.rs b/crates/galaxyui_core/src/clipboard_utils_tests.rs similarity index 100% rename from crates/warpui_core/src/clipboard_utils_tests.rs rename to crates/galaxyui_core/src/clipboard_utils_tests.rs diff --git a/crates/warpui_core/src/core/action.rs b/crates/galaxyui_core/src/core/action.rs similarity index 100% rename from crates/warpui_core/src/core/action.rs rename to crates/galaxyui_core/src/core/action.rs diff --git a/crates/warpui_core/src/core/app.rs b/crates/galaxyui_core/src/core/app.rs similarity index 99% rename from crates/warpui_core/src/core/app.rs rename to crates/galaxyui_core/src/core/app.rs index 70d99978..33a1b901 100644 --- a/crates/warpui_core/src/core/app.rs +++ b/crates/galaxyui_core/src/core/app.rs @@ -716,7 +716,7 @@ pub struct AppContext { /// An optional provider that creates an [`AssetSource`] for loading a /// fallback font from a URL string. Injected by the application layer so - /// that `warpui_core` does not depend on `reqwest`. + /// that `galaxyui_core` does not depend on `reqwest`. #[allow(clippy::type_complexity)] fallback_font_source_provider: Option AssetSource>>, } @@ -838,7 +838,7 @@ impl AppContext { } /// Registers a provider that creates an [`AssetSource`] for a given URL. - /// Used to load fallback fonts without pulling `reqwest` into `warpui_core`. + /// Used to load fallback fonts without pulling `reqwest` into `galaxyui_core`. pub fn set_fallback_font_source_provider( &mut self, provider: impl Fn(&str) -> AssetSource + 'static, @@ -4236,7 +4236,7 @@ impl AppContext { window_bounds: WindowBounds::ExactPosition(RectF::new(origin, size)), anchor_new_windows_from_closed_position: NextNewWindowsHasThisWindowsBoundsUponClose::No, - window_instance: Some("dev.warp.warpui-debug".to_owned()), + window_instance: Some("dev.warp.galaxyui-debug".to_owned()), title: Some("View Tree Debugger".to_owned()), ..Default::default() }; diff --git a/crates/warpui_core/src/core/autotracking/autotracking_test.rs b/crates/galaxyui_core/src/core/autotracking/autotracking_test.rs similarity index 100% rename from crates/warpui_core/src/core/autotracking/autotracking_test.rs rename to crates/galaxyui_core/src/core/autotracking/autotracking_test.rs diff --git a/crates/warpui_core/src/core/autotracking/mod.rs b/crates/galaxyui_core/src/core/autotracking/mod.rs similarity index 100% rename from crates/warpui_core/src/core/autotracking/mod.rs rename to crates/galaxyui_core/src/core/autotracking/mod.rs diff --git a/crates/warpui_core/src/core/autotracking/tracked.rs b/crates/galaxyui_core/src/core/autotracking/tracked.rs similarity index 100% rename from crates/warpui_core/src/core/autotracking/tracked.rs rename to crates/galaxyui_core/src/core/autotracking/tracked.rs diff --git a/crates/warpui_core/src/core/entity.rs b/crates/galaxyui_core/src/core/entity.rs similarity index 100% rename from crates/warpui_core/src/core/entity.rs rename to crates/galaxyui_core/src/core/entity.rs diff --git a/crates/warpui_core/src/core/mod.rs b/crates/galaxyui_core/src/core/mod.rs similarity index 100% rename from crates/warpui_core/src/core/mod.rs rename to crates/galaxyui_core/src/core/mod.rs diff --git a/crates/warpui_core/src/core/mod_test.rs b/crates/galaxyui_core/src/core/mod_test.rs similarity index 100% rename from crates/warpui_core/src/core/mod_test.rs rename to crates/galaxyui_core/src/core/mod_test.rs diff --git a/crates/warpui_core/src/core/model/context.rs b/crates/galaxyui_core/src/core/model/context.rs similarity index 100% rename from crates/warpui_core/src/core/model/context.rs rename to crates/galaxyui_core/src/core/model/context.rs diff --git a/crates/warpui_core/src/core/model/context_test.rs b/crates/galaxyui_core/src/core/model/context_test.rs similarity index 100% rename from crates/warpui_core/src/core/model/context_test.rs rename to crates/galaxyui_core/src/core/model/context_test.rs diff --git a/crates/warpui_core/src/core/model/handle.rs b/crates/galaxyui_core/src/core/model/handle.rs similarity index 100% rename from crates/warpui_core/src/core/model/handle.rs rename to crates/galaxyui_core/src/core/model/handle.rs diff --git a/crates/warpui_core/src/core/model/mod.rs b/crates/galaxyui_core/src/core/model/mod.rs similarity index 100% rename from crates/warpui_core/src/core/model/mod.rs rename to crates/galaxyui_core/src/core/model/mod.rs diff --git a/crates/warpui_core/src/core/transfer_view_tests.rs b/crates/galaxyui_core/src/core/transfer_view_tests.rs similarity index 100% rename from crates/warpui_core/src/core/transfer_view_tests.rs rename to crates/galaxyui_core/src/core/transfer_view_tests.rs diff --git a/crates/warpui_core/src/core/view/context.rs b/crates/galaxyui_core/src/core/view/context.rs similarity index 100% rename from crates/warpui_core/src/core/view/context.rs rename to crates/galaxyui_core/src/core/view/context.rs diff --git a/crates/warpui_core/src/core/view/context_test.rs b/crates/galaxyui_core/src/core/view/context_test.rs similarity index 100% rename from crates/warpui_core/src/core/view/context_test.rs rename to crates/galaxyui_core/src/core/view/context_test.rs diff --git a/crates/warpui_core/src/core/view/handle.rs b/crates/galaxyui_core/src/core/view/handle.rs similarity index 100% rename from crates/warpui_core/src/core/view/handle.rs rename to crates/galaxyui_core/src/core/view/handle.rs diff --git a/crates/warpui_core/src/core/view/mod.rs b/crates/galaxyui_core/src/core/view/mod.rs similarity index 96% rename from crates/warpui_core/src/core/view/mod.rs rename to crates/galaxyui_core/src/core/view/mod.rs index 897adb4a..d1efa605 100644 --- a/crates/warpui_core/src/core/view/mod.rs +++ b/crates/galaxyui_core/src/core/view/mod.rs @@ -36,14 +36,14 @@ impl BlurContext { /// /// Conceptually, an implementation of [`View`] is analogous to a React /// component - a structure that holds instance state and can be asked to render -/// itself, a process that produces a tree of rendering primitives (in [`warpui`](crate), +/// itself, a process that produces a tree of rendering primitives (in [`galaxyui`](crate), /// these are structures that implement [`Element`]; in React, these are DOM /// elements). /// /// # Example /// /// ``` -/// # use warpui_core::{*, elements::Rect}; +/// # use galaxyui_core::{*, elements::Rect}; /// /// struct MyView {} /// @@ -154,7 +154,7 @@ pub trait TypedActionView { /// /// ### When and how to use it? /// This method should be implemented for all the meaningful Actions. For example, actions related to mouse movement are not meaningful, but action related to user copying the selected content - is. - /// If your Action enum has tons of actions, and only some of them are meaningful, you can use helper implementations from the `warpui::accessibility` (like `ActionAccessibilityContent::Default()` or `ActionAccessibility_content::from_debug()`). + /// If your Action enum has tons of actions, and only some of them are meaningful, you can use helper implementations from the `galaxyui::accessibility` (like `ActionAccessibilityContent::Default()` or `ActionAccessibility_content::from_debug()`). fn action_accessibility_contents( &mut self, _action: &Self::Action, diff --git a/crates/warpui_core/src/core/window.rs b/crates/galaxyui_core/src/core/window.rs similarity index 100% rename from crates/warpui_core/src/core/window.rs rename to crates/galaxyui_core/src/core/window.rs diff --git a/crates/warpui_core/src/debug/mod.rs b/crates/galaxyui_core/src/debug/mod.rs similarity index 100% rename from crates/warpui_core/src/debug/mod.rs rename to crates/galaxyui_core/src/debug/mod.rs diff --git a/crates/warpui_core/src/debug/root_view.rs b/crates/galaxyui_core/src/debug/root_view.rs similarity index 100% rename from crates/warpui_core/src/debug/root_view.rs rename to crates/galaxyui_core/src/debug/root_view.rs diff --git a/crates/warpui_core/src/debug/view_tree_debug_view.rs b/crates/galaxyui_core/src/debug/view_tree_debug_view.rs similarity index 100% rename from crates/warpui_core/src/debug/view_tree_debug_view.rs rename to crates/galaxyui_core/src/debug/view_tree_debug_view.rs diff --git a/crates/warpui_core/src/elements/align.rs b/crates/galaxyui_core/src/elements/align.rs similarity index 100% rename from crates/warpui_core/src/elements/align.rs rename to crates/galaxyui_core/src/elements/align.rs diff --git a/crates/warpui_core/src/elements/child_view.rs b/crates/galaxyui_core/src/elements/child_view.rs similarity index 100% rename from crates/warpui_core/src/elements/child_view.rs rename to crates/galaxyui_core/src/elements/child_view.rs diff --git a/crates/warpui_core/src/elements/clipped.rs b/crates/galaxyui_core/src/elements/clipped.rs similarity index 100% rename from crates/warpui_core/src/elements/clipped.rs rename to crates/galaxyui_core/src/elements/clipped.rs diff --git a/crates/warpui_core/src/elements/clipped_scrollable.rs b/crates/galaxyui_core/src/elements/clipped_scrollable.rs similarity index 100% rename from crates/warpui_core/src/elements/clipped_scrollable.rs rename to crates/galaxyui_core/src/elements/clipped_scrollable.rs diff --git a/crates/warpui_core/src/elements/clipped_scrollable_test.rs b/crates/galaxyui_core/src/elements/clipped_scrollable_test.rs similarity index 100% rename from crates/warpui_core/src/elements/clipped_scrollable_test.rs rename to crates/galaxyui_core/src/elements/clipped_scrollable_test.rs diff --git a/crates/warpui_core/src/elements/clipped_test.rs b/crates/galaxyui_core/src/elements/clipped_test.rs similarity index 100% rename from crates/warpui_core/src/elements/clipped_test.rs rename to crates/galaxyui_core/src/elements/clipped_test.rs diff --git a/crates/warpui_core/src/elements/constrained_box.rs b/crates/galaxyui_core/src/elements/constrained_box.rs similarity index 100% rename from crates/warpui_core/src/elements/constrained_box.rs rename to crates/galaxyui_core/src/elements/constrained_box.rs diff --git a/crates/warpui_core/src/elements/container.rs b/crates/galaxyui_core/src/elements/container.rs similarity index 100% rename from crates/warpui_core/src/elements/container.rs rename to crates/galaxyui_core/src/elements/container.rs diff --git a/crates/warpui_core/src/elements/container_test.rs b/crates/galaxyui_core/src/elements/container_test.rs similarity index 100% rename from crates/warpui_core/src/elements/container_test.rs rename to crates/galaxyui_core/src/elements/container_test.rs diff --git a/crates/warpui_core/src/elements/debug.rs b/crates/galaxyui_core/src/elements/debug.rs similarity index 100% rename from crates/warpui_core/src/elements/debug.rs rename to crates/galaxyui_core/src/elements/debug.rs diff --git a/crates/warpui_core/src/elements/dismiss.rs b/crates/galaxyui_core/src/elements/dismiss.rs similarity index 100% rename from crates/warpui_core/src/elements/dismiss.rs rename to crates/galaxyui_core/src/elements/dismiss.rs diff --git a/crates/warpui_core/src/elements/drag/draggable.rs b/crates/galaxyui_core/src/elements/drag/draggable.rs similarity index 100% rename from crates/warpui_core/src/elements/drag/draggable.rs rename to crates/galaxyui_core/src/elements/drag/draggable.rs diff --git a/crates/warpui_core/src/elements/drag/drop_target.rs b/crates/galaxyui_core/src/elements/drag/drop_target.rs similarity index 100% rename from crates/warpui_core/src/elements/drag/drop_target.rs rename to crates/galaxyui_core/src/elements/drag/drop_target.rs diff --git a/crates/warpui_core/src/elements/drag/mod.rs b/crates/galaxyui_core/src/elements/drag/mod.rs similarity index 100% rename from crates/warpui_core/src/elements/drag/mod.rs rename to crates/galaxyui_core/src/elements/drag/mod.rs diff --git a/crates/warpui_core/src/elements/drag_resize.rs b/crates/galaxyui_core/src/elements/drag_resize.rs similarity index 100% rename from crates/warpui_core/src/elements/drag_resize.rs rename to crates/galaxyui_core/src/elements/drag_resize.rs diff --git a/crates/warpui_core/src/elements/empty.rs b/crates/galaxyui_core/src/elements/empty.rs similarity index 100% rename from crates/warpui_core/src/elements/empty.rs rename to crates/galaxyui_core/src/elements/empty.rs diff --git a/crates/warpui_core/src/elements/event_handler.rs b/crates/galaxyui_core/src/elements/event_handler.rs similarity index 100% rename from crates/warpui_core/src/elements/event_handler.rs rename to crates/galaxyui_core/src/elements/event_handler.rs diff --git a/crates/warpui_core/src/elements/event_handler_test.rs b/crates/galaxyui_core/src/elements/event_handler_test.rs similarity index 100% rename from crates/warpui_core/src/elements/event_handler_test.rs rename to crates/galaxyui_core/src/elements/event_handler_test.rs diff --git a/crates/warpui_core/src/elements/flex/WARP.md b/crates/galaxyui_core/src/elements/flex/WARP.md similarity index 100% rename from crates/warpui_core/src/elements/flex/WARP.md rename to crates/galaxyui_core/src/elements/flex/WARP.md diff --git a/crates/warpui_core/src/elements/flex/mod.rs b/crates/galaxyui_core/src/elements/flex/mod.rs similarity index 100% rename from crates/warpui_core/src/elements/flex/mod.rs rename to crates/galaxyui_core/src/elements/flex/mod.rs diff --git a/crates/warpui_core/src/elements/flex/mod_test.rs b/crates/galaxyui_core/src/elements/flex/mod_test.rs similarity index 100% rename from crates/warpui_core/src/elements/flex/mod_test.rs rename to crates/galaxyui_core/src/elements/flex/mod_test.rs diff --git a/crates/warpui_core/src/elements/flex/wrap.rs b/crates/galaxyui_core/src/elements/flex/wrap.rs similarity index 100% rename from crates/warpui_core/src/elements/flex/wrap.rs rename to crates/galaxyui_core/src/elements/flex/wrap.rs diff --git a/crates/warpui_core/src/elements/flex/wrap_test.rs b/crates/galaxyui_core/src/elements/flex/wrap_test.rs similarity index 100% rename from crates/warpui_core/src/elements/flex/wrap_test.rs rename to crates/galaxyui_core/src/elements/flex/wrap_test.rs diff --git a/crates/warpui_core/src/elements/formatted_text_element.rs b/crates/galaxyui_core/src/elements/formatted_text_element.rs similarity index 100% rename from crates/warpui_core/src/elements/formatted_text_element.rs rename to crates/galaxyui_core/src/elements/formatted_text_element.rs diff --git a/crates/warpui_core/src/elements/formatted_text_element_tests.rs b/crates/galaxyui_core/src/elements/formatted_text_element_tests.rs similarity index 100% rename from crates/warpui_core/src/elements/formatted_text_element_tests.rs rename to crates/galaxyui_core/src/elements/formatted_text_element_tests.rs diff --git a/crates/warpui_core/src/elements/hoverable.rs b/crates/galaxyui_core/src/elements/hoverable.rs similarity index 100% rename from crates/warpui_core/src/elements/hoverable.rs rename to crates/galaxyui_core/src/elements/hoverable.rs diff --git a/crates/warpui_core/src/elements/hoverable_test.rs b/crates/galaxyui_core/src/elements/hoverable_test.rs similarity index 100% rename from crates/warpui_core/src/elements/hoverable_test.rs rename to crates/galaxyui_core/src/elements/hoverable_test.rs diff --git a/crates/warpui_core/src/elements/icon.rs b/crates/galaxyui_core/src/elements/icon.rs similarity index 100% rename from crates/warpui_core/src/elements/icon.rs rename to crates/galaxyui_core/src/elements/icon.rs diff --git a/crates/warpui_core/src/elements/image.rs b/crates/galaxyui_core/src/elements/image.rs similarity index 100% rename from crates/warpui_core/src/elements/image.rs rename to crates/galaxyui_core/src/elements/image.rs diff --git a/crates/warpui_core/src/elements/image_tests.rs b/crates/galaxyui_core/src/elements/image_tests.rs similarity index 100% rename from crates/warpui_core/src/elements/image_tests.rs rename to crates/galaxyui_core/src/elements/image_tests.rs diff --git a/crates/warpui_core/src/elements/list.rs b/crates/galaxyui_core/src/elements/list.rs similarity index 100% rename from crates/warpui_core/src/elements/list.rs rename to crates/galaxyui_core/src/elements/list.rs diff --git a/crates/warpui_core/src/elements/list_tests.rs b/crates/galaxyui_core/src/elements/list_tests.rs similarity index 100% rename from crates/warpui_core/src/elements/list_tests.rs rename to crates/galaxyui_core/src/elements/list_tests.rs diff --git a/crates/warpui_core/src/elements/min_size.rs b/crates/galaxyui_core/src/elements/min_size.rs similarity index 100% rename from crates/warpui_core/src/elements/min_size.rs rename to crates/galaxyui_core/src/elements/min_size.rs diff --git a/crates/warpui_core/src/elements/mod.rs b/crates/galaxyui_core/src/elements/mod.rs similarity index 100% rename from crates/warpui_core/src/elements/mod.rs rename to crates/galaxyui_core/src/elements/mod.rs diff --git a/crates/warpui_core/src/elements/new_scrollable/dual_axis_config.rs b/crates/galaxyui_core/src/elements/new_scrollable/dual_axis_config.rs similarity index 100% rename from crates/warpui_core/src/elements/new_scrollable/dual_axis_config.rs rename to crates/galaxyui_core/src/elements/new_scrollable/dual_axis_config.rs diff --git a/crates/warpui_core/src/elements/new_scrollable/mod.rs b/crates/galaxyui_core/src/elements/new_scrollable/mod.rs similarity index 100% rename from crates/warpui_core/src/elements/new_scrollable/mod.rs rename to crates/galaxyui_core/src/elements/new_scrollable/mod.rs diff --git a/crates/warpui_core/src/elements/new_scrollable/scrollable_test.rs b/crates/galaxyui_core/src/elements/new_scrollable/scrollable_test.rs similarity index 100% rename from crates/warpui_core/src/elements/new_scrollable/scrollable_test.rs rename to crates/galaxyui_core/src/elements/new_scrollable/scrollable_test.rs diff --git a/crates/warpui_core/src/elements/new_scrollable/single_axis_config.rs b/crates/galaxyui_core/src/elements/new_scrollable/single_axis_config.rs similarity index 100% rename from crates/warpui_core/src/elements/new_scrollable/single_axis_config.rs rename to crates/galaxyui_core/src/elements/new_scrollable/single_axis_config.rs diff --git a/crates/warpui_core/src/elements/new_scrollable/util.rs b/crates/galaxyui_core/src/elements/new_scrollable/util.rs similarity index 100% rename from crates/warpui_core/src/elements/new_scrollable/util.rs rename to crates/galaxyui_core/src/elements/new_scrollable/util.rs diff --git a/crates/warpui_core/src/elements/percentage.rs b/crates/galaxyui_core/src/elements/percentage.rs similarity index 100% rename from crates/warpui_core/src/elements/percentage.rs rename to crates/galaxyui_core/src/elements/percentage.rs diff --git a/crates/warpui_core/src/elements/rect.rs b/crates/galaxyui_core/src/elements/rect.rs similarity index 100% rename from crates/warpui_core/src/elements/rect.rs rename to crates/galaxyui_core/src/elements/rect.rs diff --git a/crates/warpui_core/src/elements/resizable.rs b/crates/galaxyui_core/src/elements/resizable.rs similarity index 100% rename from crates/warpui_core/src/elements/resizable.rs rename to crates/galaxyui_core/src/elements/resizable.rs diff --git a/crates/warpui_core/src/elements/scrollable.rs b/crates/galaxyui_core/src/elements/scrollable.rs similarity index 99% rename from crates/warpui_core/src/elements/scrollable.rs rename to crates/galaxyui_core/src/elements/scrollable.rs index 8fbaea5d..4403f6a7 100644 --- a/crates/warpui_core/src/elements/scrollable.rs +++ b/crates/galaxyui_core/src/elements/scrollable.rs @@ -103,7 +103,7 @@ pub trait ScrollableElement: Element { /// /// # Examples /// ``` -/// use warpui_core::elements::ScrollbarWidth; +/// use galaxyui_core::elements::ScrollbarWidth; /// /// // Default width of 8. /// let y = ScrollbarWidth::Auto; diff --git a/crates/warpui_core/src/elements/scrollable_test.rs b/crates/galaxyui_core/src/elements/scrollable_test.rs similarity index 100% rename from crates/warpui_core/src/elements/scrollable_test.rs rename to crates/galaxyui_core/src/elements/scrollable_test.rs diff --git a/crates/warpui_core/src/elements/selectable_area.rs b/crates/galaxyui_core/src/elements/selectable_area.rs similarity index 100% rename from crates/warpui_core/src/elements/selectable_area.rs rename to crates/galaxyui_core/src/elements/selectable_area.rs diff --git a/crates/warpui_core/src/elements/shared_scrollbar.rs b/crates/galaxyui_core/src/elements/shared_scrollbar.rs similarity index 100% rename from crates/warpui_core/src/elements/shared_scrollbar.rs rename to crates/galaxyui_core/src/elements/shared_scrollbar.rs diff --git a/crates/warpui_core/src/elements/shimmering_text.rs b/crates/galaxyui_core/src/elements/shimmering_text.rs similarity index 100% rename from crates/warpui_core/src/elements/shimmering_text.rs rename to crates/galaxyui_core/src/elements/shimmering_text.rs diff --git a/crates/warpui_core/src/elements/shimmering_text/config.rs b/crates/galaxyui_core/src/elements/shimmering_text/config.rs similarity index 100% rename from crates/warpui_core/src/elements/shimmering_text/config.rs rename to crates/galaxyui_core/src/elements/shimmering_text/config.rs diff --git a/crates/warpui_core/src/elements/shimmering_text/glyph_index.rs b/crates/galaxyui_core/src/elements/shimmering_text/glyph_index.rs similarity index 100% rename from crates/warpui_core/src/elements/shimmering_text/glyph_index.rs rename to crates/galaxyui_core/src/elements/shimmering_text/glyph_index.rs diff --git a/crates/warpui_core/src/elements/size_constraint_switch.rs b/crates/galaxyui_core/src/elements/size_constraint_switch.rs similarity index 100% rename from crates/warpui_core/src/elements/size_constraint_switch.rs rename to crates/galaxyui_core/src/elements/size_constraint_switch.rs diff --git a/crates/warpui_core/src/elements/size_constraint_switch_test.rs b/crates/galaxyui_core/src/elements/size_constraint_switch_test.rs similarity index 100% rename from crates/warpui_core/src/elements/size_constraint_switch_test.rs rename to crates/galaxyui_core/src/elements/size_constraint_switch_test.rs diff --git a/crates/warpui_core/src/elements/stack/mod.rs b/crates/galaxyui_core/src/elements/stack/mod.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/mod.rs rename to crates/galaxyui_core/src/elements/stack/mod.rs diff --git a/crates/warpui_core/src/elements/stack/mod_test.rs b/crates/galaxyui_core/src/elements/stack/mod_test.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/mod_test.rs rename to crates/galaxyui_core/src/elements/stack/mod_test.rs diff --git a/crates/warpui_core/src/elements/stack/offset_positioning.rs b/crates/galaxyui_core/src/elements/stack/offset_positioning.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/offset_positioning.rs rename to crates/galaxyui_core/src/elements/stack/offset_positioning.rs diff --git a/crates/warpui_core/src/elements/stack/offset_positioning_test.rs b/crates/galaxyui_core/src/elements/stack/offset_positioning_test.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/offset_positioning_test.rs rename to crates/galaxyui_core/src/elements/stack/offset_positioning_test.rs diff --git a/crates/warpui_core/src/elements/stack/overlay.rs b/crates/galaxyui_core/src/elements/stack/overlay.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/overlay.rs rename to crates/galaxyui_core/src/elements/stack/overlay.rs diff --git a/crates/warpui_core/src/elements/stack/positioned.rs b/crates/galaxyui_core/src/elements/stack/positioned.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/positioned.rs rename to crates/galaxyui_core/src/elements/stack/positioned.rs diff --git a/crates/warpui_core/src/elements/stack/save_position.rs b/crates/galaxyui_core/src/elements/stack/save_position.rs similarity index 100% rename from crates/warpui_core/src/elements/stack/save_position.rs rename to crates/galaxyui_core/src/elements/stack/save_position.rs diff --git a/crates/warpui_core/src/elements/table/mod.rs b/crates/galaxyui_core/src/elements/table/mod.rs similarity index 100% rename from crates/warpui_core/src/elements/table/mod.rs rename to crates/galaxyui_core/src/elements/table/mod.rs diff --git a/crates/warpui_core/src/elements/table/mod_tests.rs b/crates/galaxyui_core/src/elements/table/mod_tests.rs similarity index 100% rename from crates/warpui_core/src/elements/table/mod_tests.rs rename to crates/galaxyui_core/src/elements/table/mod_tests.rs diff --git a/crates/warpui_core/src/elements/text.rs b/crates/galaxyui_core/src/elements/text.rs similarity index 100% rename from crates/warpui_core/src/elements/text.rs rename to crates/galaxyui_core/src/elements/text.rs diff --git a/crates/warpui_core/src/elements/text_test.rs b/crates/galaxyui_core/src/elements/text_test.rs similarity index 100% rename from crates/warpui_core/src/elements/text_test.rs rename to crates/galaxyui_core/src/elements/text_test.rs diff --git a/crates/warpui_core/src/elements/uniform_list.rs b/crates/galaxyui_core/src/elements/uniform_list.rs similarity index 100% rename from crates/warpui_core/src/elements/uniform_list.rs rename to crates/galaxyui_core/src/elements/uniform_list.rs diff --git a/crates/warpui_core/src/elements/uniform_list_test.rs b/crates/galaxyui_core/src/elements/uniform_list_test.rs similarity index 100% rename from crates/warpui_core/src/elements/uniform_list_test.rs rename to crates/galaxyui_core/src/elements/uniform_list_test.rs diff --git a/crates/warpui_core/src/elements/viewported_list.rs b/crates/galaxyui_core/src/elements/viewported_list.rs similarity index 100% rename from crates/warpui_core/src/elements/viewported_list.rs rename to crates/galaxyui_core/src/elements/viewported_list.rs diff --git a/crates/warpui_core/src/elements/viewported_list_tests.rs b/crates/galaxyui_core/src/elements/viewported_list_tests.rs similarity index 100% rename from crates/warpui_core/src/elements/viewported_list_tests.rs rename to crates/galaxyui_core/src/elements/viewported_list_tests.rs diff --git a/crates/warpui_core/src/event.rs b/crates/galaxyui_core/src/event.rs similarity index 100% rename from crates/warpui_core/src/event.rs rename to crates/galaxyui_core/src/event.rs diff --git a/crates/warpui_core/src/fonts.rs b/crates/galaxyui_core/src/fonts.rs similarity index 100% rename from crates/warpui_core/src/fonts.rs rename to crates/galaxyui_core/src/fonts.rs diff --git a/crates/warpui_core/src/fonts/canvas.rs b/crates/galaxyui_core/src/fonts/canvas.rs similarity index 100% rename from crates/warpui_core/src/fonts/canvas.rs rename to crates/galaxyui_core/src/fonts/canvas.rs diff --git a/crates/warpui_core/src/fonts/external_fallback.rs b/crates/galaxyui_core/src/fonts/external_fallback.rs similarity index 100% rename from crates/warpui_core/src/fonts/external_fallback.rs rename to crates/galaxyui_core/src/fonts/external_fallback.rs diff --git a/crates/warpui_core/src/fonts/metrics.rs b/crates/galaxyui_core/src/fonts/metrics.rs similarity index 100% rename from crates/warpui_core/src/fonts/metrics.rs rename to crates/galaxyui_core/src/fonts/metrics.rs diff --git a/crates/warpui_core/src/fonts/text_layout_system.rs b/crates/galaxyui_core/src/fonts/text_layout_system.rs similarity index 100% rename from crates/warpui_core/src/fonts/text_layout_system.rs rename to crates/galaxyui_core/src/fonts/text_layout_system.rs diff --git a/crates/warpui_core/src/fonts_test.rs b/crates/galaxyui_core/src/fonts_test.rs similarity index 100% rename from crates/warpui_core/src/fonts_test.rs rename to crates/galaxyui_core/src/fonts_test.rs diff --git a/crates/warpui_core/src/image_cache.rs b/crates/galaxyui_core/src/image_cache.rs similarity index 100% rename from crates/warpui_core/src/image_cache.rs rename to crates/galaxyui_core/src/image_cache.rs diff --git a/crates/warpui_core/src/image_cache_tests.rs b/crates/galaxyui_core/src/image_cache_tests.rs similarity index 99% rename from crates/warpui_core/src/image_cache_tests.rs rename to crates/galaxyui_core/src/image_cache_tests.rs index 0ab8ea42..ec24c8ee 100644 --- a/crates/warpui_core/src/image_cache_tests.rs +++ b/crates/galaxyui_core/src/image_cache_tests.rs @@ -19,7 +19,7 @@ impl AssetProvider for Assets { match path { "animated.webp" => Ok(Cow::Borrowed(include_bytes!("../test_data/animated.webp"))), "numbers-1000ms.gif" => Ok(Cow::Borrowed(include_bytes!( - "../../warpui/examples/assets/numbers-1000ms.gif" + "../../galaxyui/examples/assets/numbers-1000ms.gif" ))), _ => ::get(path) .map(|f| f.data) diff --git a/crates/warpui_core/src/integration/action_log.rs b/crates/galaxyui_core/src/integration/action_log.rs similarity index 100% rename from crates/warpui_core/src/integration/action_log.rs rename to crates/galaxyui_core/src/integration/action_log.rs diff --git a/crates/warpui_core/src/integration/artifacts.rs b/crates/galaxyui_core/src/integration/artifacts.rs similarity index 100% rename from crates/warpui_core/src/integration/artifacts.rs rename to crates/galaxyui_core/src/integration/artifacts.rs diff --git a/crates/warpui_core/src/integration/capture_recorder.rs b/crates/galaxyui_core/src/integration/capture_recorder.rs similarity index 100% rename from crates/warpui_core/src/integration/capture_recorder.rs rename to crates/galaxyui_core/src/integration/capture_recorder.rs diff --git a/crates/warpui_core/src/integration/driver.rs b/crates/galaxyui_core/src/integration/driver.rs similarity index 100% rename from crates/warpui_core/src/integration/driver.rs rename to crates/galaxyui_core/src/integration/driver.rs diff --git a/crates/warpui_core/src/integration/mod.rs b/crates/galaxyui_core/src/integration/mod.rs similarity index 100% rename from crates/warpui_core/src/integration/mod.rs rename to crates/galaxyui_core/src/integration/mod.rs diff --git a/crates/warpui_core/src/integration/overlay.rs b/crates/galaxyui_core/src/integration/overlay.rs similarity index 100% rename from crates/warpui_core/src/integration/overlay.rs rename to crates/galaxyui_core/src/integration/overlay.rs diff --git a/crates/warpui_core/src/integration/step.rs b/crates/galaxyui_core/src/integration/step.rs similarity index 100% rename from crates/warpui_core/src/integration/step.rs rename to crates/galaxyui_core/src/integration/step.rs diff --git a/crates/warpui_core/src/integration/video_recorder.rs b/crates/galaxyui_core/src/integration/video_recorder.rs similarity index 100% rename from crates/warpui_core/src/integration/video_recorder.rs rename to crates/galaxyui_core/src/integration/video_recorder.rs diff --git a/crates/warpui_core/src/keymap.rs b/crates/galaxyui_core/src/keymap.rs similarity index 99% rename from crates/warpui_core/src/keymap.rs rename to crates/galaxyui_core/src/keymap.rs index 425b6776..d32b242d 100644 --- a/crates/warpui_core/src/keymap.rs +++ b/crates/galaxyui_core/src/keymap.rs @@ -229,7 +229,7 @@ impl> From for BindingDescription { /// its context predicate is false, the binding is still registered in the total set of bindings. /// /// Enabled predicates dynamically decide if a binding is registered or not. They're similar to -/// conditionally calling [`warpui::app::AppContext::register_editable_bindings`], except +/// conditionally calling [`galaxyui::app::AppContext::register_editable_bindings`], except /// that the condition is re-evaluated at runtime. The main use for enabled predicates is to check /// feature flags that might change post-initialization. If a feature is disabled, any bindings /// related to it should be as well. Once the feature is enabled, the UI framework will start diff --git a/crates/warpui_core/src/keymap/context.rs b/crates/galaxyui_core/src/keymap/context.rs similarity index 100% rename from crates/warpui_core/src/keymap/context.rs rename to crates/galaxyui_core/src/keymap/context.rs diff --git a/crates/warpui_core/src/keymap/context_test.rs b/crates/galaxyui_core/src/keymap/context_test.rs similarity index 100% rename from crates/warpui_core/src/keymap/context_test.rs rename to crates/galaxyui_core/src/keymap/context_test.rs diff --git a/crates/warpui_core/src/keymap/matcher.rs b/crates/galaxyui_core/src/keymap/matcher.rs similarity index 100% rename from crates/warpui_core/src/keymap/matcher.rs rename to crates/galaxyui_core/src/keymap/matcher.rs diff --git a/crates/warpui_core/src/keymap/matcher_test.rs b/crates/galaxyui_core/src/keymap/matcher_test.rs similarity index 100% rename from crates/warpui_core/src/keymap/matcher_test.rs rename to crates/galaxyui_core/src/keymap/matcher_test.rs diff --git a/crates/warpui_core/src/keymap_test.rs b/crates/galaxyui_core/src/keymap_test.rs similarity index 100% rename from crates/warpui_core/src/keymap_test.rs rename to crates/galaxyui_core/src/keymap_test.rs diff --git a/crates/warpui_core/src/lib.rs b/crates/galaxyui_core/src/lib.rs similarity index 100% rename from crates/warpui_core/src/lib.rs rename to crates/galaxyui_core/src/lib.rs diff --git a/crates/warpui_core/src/modals.rs b/crates/galaxyui_core/src/modals.rs similarity index 100% rename from crates/warpui_core/src/modals.rs rename to crates/galaxyui_core/src/modals.rs diff --git a/crates/warpui_core/src/notification.rs b/crates/galaxyui_core/src/notification.rs similarity index 100% rename from crates/warpui_core/src/notification.rs rename to crates/galaxyui_core/src/notification.rs diff --git a/crates/warpui_core/src/platform/app.rs b/crates/galaxyui_core/src/platform/app.rs similarity index 100% rename from crates/warpui_core/src/platform/app.rs rename to crates/galaxyui_core/src/platform/app.rs diff --git a/crates/warpui_core/src/platform/file_picker.rs b/crates/galaxyui_core/src/platform/file_picker.rs similarity index 100% rename from crates/warpui_core/src/platform/file_picker.rs rename to crates/galaxyui_core/src/platform/file_picker.rs diff --git a/crates/warpui_core/src/platform/keyboard.rs b/crates/galaxyui_core/src/platform/keyboard.rs similarity index 100% rename from crates/warpui_core/src/platform/keyboard.rs rename to crates/galaxyui_core/src/platform/keyboard.rs diff --git a/crates/warpui_core/src/platform/menu.rs b/crates/galaxyui_core/src/platform/menu.rs similarity index 100% rename from crates/warpui_core/src/platform/menu.rs rename to crates/galaxyui_core/src/platform/menu.rs diff --git a/crates/warpui_core/src/platform/mod.rs b/crates/galaxyui_core/src/platform/mod.rs similarity index 99% rename from crates/warpui_core/src/platform/mod.rs rename to crates/galaxyui_core/src/platform/mod.rs index 20d33b2b..3821a862 100644 --- a/crates/warpui_core/src/platform/mod.rs +++ b/crates/galaxyui_core/src/platform/mod.rs @@ -14,7 +14,7 @@ pub use file_picker::{ SaveFilePickerConfiguration, }; use serde::{Deserialize, Serialize}; -use warp_util::path::ShellFamily; +use galaxy_util::path::ShellFamily; use crate::fonts::SubpixelAlignment; use crate::keymap::Keystroke; diff --git a/crates/warpui_core/src/platform/test/app.rs b/crates/galaxyui_core/src/platform/test/app.rs similarity index 100% rename from crates/warpui_core/src/platform/test/app.rs rename to crates/galaxyui_core/src/platform/test/app.rs diff --git a/crates/warpui_core/src/platform/test/delegate.rs b/crates/galaxyui_core/src/platform/test/delegate.rs similarity index 100% rename from crates/warpui_core/src/platform/test/delegate.rs rename to crates/galaxyui_core/src/platform/test/delegate.rs diff --git a/crates/warpui_core/src/platform/test/mod.rs b/crates/galaxyui_core/src/platform/test/mod.rs similarity index 100% rename from crates/warpui_core/src/platform/test/mod.rs rename to crates/galaxyui_core/src/platform/test/mod.rs diff --git a/crates/warpui_core/src/platform/wasm.rs b/crates/galaxyui_core/src/platform/wasm.rs similarity index 100% rename from crates/warpui_core/src/platform/wasm.rs rename to crates/galaxyui_core/src/platform/wasm.rs diff --git a/crates/warpui_core/src/prelude.rs b/crates/galaxyui_core/src/prelude.rs similarity index 100% rename from crates/warpui_core/src/prelude.rs rename to crates/galaxyui_core/src/prelude.rs diff --git a/crates/warpui_core/src/presenter.rs b/crates/galaxyui_core/src/presenter.rs similarity index 100% rename from crates/warpui_core/src/presenter.rs rename to crates/galaxyui_core/src/presenter.rs diff --git a/crates/warpui_core/src/presenter_tests.rs b/crates/galaxyui_core/src/presenter_tests.rs similarity index 100% rename from crates/warpui_core/src/presenter_tests.rs rename to crates/galaxyui_core/src/presenter_tests.rs diff --git a/crates/warpui_core/src/rendering/gpu_info.rs b/crates/galaxyui_core/src/rendering/gpu_info.rs similarity index 100% rename from crates/warpui_core/src/rendering/gpu_info.rs rename to crates/galaxyui_core/src/rendering/gpu_info.rs diff --git a/crates/warpui_core/src/rendering/mod.rs b/crates/galaxyui_core/src/rendering/mod.rs similarity index 100% rename from crates/warpui_core/src/rendering/mod.rs rename to crates/galaxyui_core/src/rendering/mod.rs diff --git a/crates/warpui_core/src/rendering/texture_cache.rs b/crates/galaxyui_core/src/rendering/texture_cache.rs similarity index 100% rename from crates/warpui_core/src/rendering/texture_cache.rs rename to crates/galaxyui_core/src/rendering/texture_cache.rs diff --git a/crates/warpui_core/src/rendering/texture_cache_tests.rs b/crates/galaxyui_core/src/rendering/texture_cache_tests.rs similarity index 100% rename from crates/warpui_core/src/rendering/texture_cache_tests.rs rename to crates/galaxyui_core/src/rendering/texture_cache_tests.rs diff --git a/crates/warpui_core/src/scene.rs b/crates/galaxyui_core/src/scene.rs similarity index 100% rename from crates/warpui_core/src/scene.rs rename to crates/galaxyui_core/src/scene.rs diff --git a/crates/warpui_core/src/scene_test.rs b/crates/galaxyui_core/src/scene_test.rs similarity index 100% rename from crates/warpui_core/src/scene_test.rs rename to crates/galaxyui_core/src/scene_test.rs diff --git a/crates/warpui_core/src/telemetry/event_store.rs b/crates/galaxyui_core/src/telemetry/event_store.rs similarity index 100% rename from crates/warpui_core/src/telemetry/event_store.rs rename to crates/galaxyui_core/src/telemetry/event_store.rs diff --git a/crates/warpui_core/src/telemetry/event_store_test.rs b/crates/galaxyui_core/src/telemetry/event_store_test.rs similarity index 100% rename from crates/warpui_core/src/telemetry/event_store_test.rs rename to crates/galaxyui_core/src/telemetry/event_store_test.rs diff --git a/crates/warpui_core/src/telemetry/mod.rs b/crates/galaxyui_core/src/telemetry/mod.rs similarity index 100% rename from crates/warpui_core/src/telemetry/mod.rs rename to crates/galaxyui_core/src/telemetry/mod.rs diff --git a/crates/warpui_core/src/test.rs b/crates/galaxyui_core/src/test.rs similarity index 100% rename from crates/warpui_core/src/test.rs rename to crates/galaxyui_core/src/test.rs diff --git a/crates/warpui_core/src/text/header.rs b/crates/galaxyui_core/src/text/header.rs similarity index 100% rename from crates/warpui_core/src/text/header.rs rename to crates/galaxyui_core/src/text/header.rs diff --git a/crates/warpui_core/src/text/mod.rs b/crates/galaxyui_core/src/text/mod.rs similarity index 100% rename from crates/warpui_core/src/text/mod.rs rename to crates/galaxyui_core/src/text/mod.rs diff --git a/crates/warpui_core/src/text/mod_tests.rs b/crates/galaxyui_core/src/text/mod_tests.rs similarity index 100% rename from crates/warpui_core/src/text/mod_tests.rs rename to crates/galaxyui_core/src/text/mod_tests.rs diff --git a/crates/warpui_core/src/text/point.rs b/crates/galaxyui_core/src/text/point.rs similarity index 100% rename from crates/warpui_core/src/text/point.rs rename to crates/galaxyui_core/src/text/point.rs diff --git a/crates/warpui_core/src/text/word_boundaries.rs b/crates/galaxyui_core/src/text/word_boundaries.rs similarity index 100% rename from crates/warpui_core/src/text/word_boundaries.rs rename to crates/galaxyui_core/src/text/word_boundaries.rs diff --git a/crates/warpui_core/src/text/word_boundaries_tests.rs b/crates/galaxyui_core/src/text/word_boundaries_tests.rs similarity index 100% rename from crates/warpui_core/src/text/word_boundaries_tests.rs rename to crates/galaxyui_core/src/text/word_boundaries_tests.rs diff --git a/crates/warpui_core/src/text/words.rs b/crates/galaxyui_core/src/text/words.rs similarity index 100% rename from crates/warpui_core/src/text/words.rs rename to crates/galaxyui_core/src/text/words.rs diff --git a/crates/warpui_core/src/text_layout.rs b/crates/galaxyui_core/src/text_layout.rs similarity index 100% rename from crates/warpui_core/src/text_layout.rs rename to crates/galaxyui_core/src/text_layout.rs diff --git a/crates/warpui_core/src/text_layout_test.rs b/crates/galaxyui_core/src/text_layout_test.rs similarity index 100% rename from crates/warpui_core/src/text_layout_test.rs rename to crates/galaxyui_core/src/text_layout_test.rs diff --git a/crates/warpui_core/src/text_selection_utils.rs b/crates/galaxyui_core/src/text_selection_utils.rs similarity index 100% rename from crates/warpui_core/src/text_selection_utils.rs rename to crates/galaxyui_core/src/text_selection_utils.rs diff --git a/crates/warpui_core/src/time.rs b/crates/galaxyui_core/src/time.rs similarity index 100% rename from crates/warpui_core/src/time.rs rename to crates/galaxyui_core/src/time.rs diff --git a/crates/warpui_core/src/traces.rs b/crates/galaxyui_core/src/traces.rs similarity index 100% rename from crates/warpui_core/src/traces.rs rename to crates/galaxyui_core/src/traces.rs diff --git a/crates/warpui_core/src/ui_components/button.rs b/crates/galaxyui_core/src/ui_components/button.rs similarity index 100% rename from crates/warpui_core/src/ui_components/button.rs rename to crates/galaxyui_core/src/ui_components/button.rs diff --git a/crates/warpui_core/src/ui_components/checkbox.rs b/crates/galaxyui_core/src/ui_components/checkbox.rs similarity index 100% rename from crates/warpui_core/src/ui_components/checkbox.rs rename to crates/galaxyui_core/src/ui_components/checkbox.rs diff --git a/crates/warpui_core/src/ui_components/chip.rs b/crates/galaxyui_core/src/ui_components/chip.rs similarity index 100% rename from crates/warpui_core/src/ui_components/chip.rs rename to crates/galaxyui_core/src/ui_components/chip.rs diff --git a/crates/warpui_core/src/ui_components/components.rs b/crates/galaxyui_core/src/ui_components/components.rs similarity index 100% rename from crates/warpui_core/src/ui_components/components.rs rename to crates/galaxyui_core/src/ui_components/components.rs diff --git a/crates/warpui_core/src/ui_components/components_test.rs b/crates/galaxyui_core/src/ui_components/components_test.rs similarity index 100% rename from crates/warpui_core/src/ui_components/components_test.rs rename to crates/galaxyui_core/src/ui_components/components_test.rs diff --git a/crates/warpui_core/src/ui_components/keyboard_shortcut.rs b/crates/galaxyui_core/src/ui_components/keyboard_shortcut.rs similarity index 100% rename from crates/warpui_core/src/ui_components/keyboard_shortcut.rs rename to crates/galaxyui_core/src/ui_components/keyboard_shortcut.rs diff --git a/crates/warpui_core/src/ui_components/link.rs b/crates/galaxyui_core/src/ui_components/link.rs similarity index 100% rename from crates/warpui_core/src/ui_components/link.rs rename to crates/galaxyui_core/src/ui_components/link.rs diff --git a/crates/warpui_core/src/ui_components/list.rs b/crates/galaxyui_core/src/ui_components/list.rs similarity index 100% rename from crates/warpui_core/src/ui_components/list.rs rename to crates/galaxyui_core/src/ui_components/list.rs diff --git a/crates/warpui_core/src/ui_components/mod.rs b/crates/galaxyui_core/src/ui_components/mod.rs similarity index 100% rename from crates/warpui_core/src/ui_components/mod.rs rename to crates/galaxyui_core/src/ui_components/mod.rs diff --git a/crates/warpui_core/src/ui_components/progress_bar.rs b/crates/galaxyui_core/src/ui_components/progress_bar.rs similarity index 100% rename from crates/warpui_core/src/ui_components/progress_bar.rs rename to crates/galaxyui_core/src/ui_components/progress_bar.rs diff --git a/crates/warpui_core/src/ui_components/radio_buttons.rs b/crates/galaxyui_core/src/ui_components/radio_buttons.rs similarity index 100% rename from crates/warpui_core/src/ui_components/radio_buttons.rs rename to crates/galaxyui_core/src/ui_components/radio_buttons.rs diff --git a/crates/warpui_core/src/ui_components/segmented_control.rs b/crates/galaxyui_core/src/ui_components/segmented_control.rs similarity index 100% rename from crates/warpui_core/src/ui_components/segmented_control.rs rename to crates/galaxyui_core/src/ui_components/segmented_control.rs diff --git a/crates/warpui_core/src/ui_components/slider.rs b/crates/galaxyui_core/src/ui_components/slider.rs similarity index 100% rename from crates/warpui_core/src/ui_components/slider.rs rename to crates/galaxyui_core/src/ui_components/slider.rs diff --git a/crates/warpui_core/src/ui_components/switch.rs b/crates/galaxyui_core/src/ui_components/switch.rs similarity index 100% rename from crates/warpui_core/src/ui_components/switch.rs rename to crates/galaxyui_core/src/ui_components/switch.rs diff --git a/crates/warpui_core/src/ui_components/text.rs b/crates/galaxyui_core/src/ui_components/text.rs similarity index 100% rename from crates/warpui_core/src/ui_components/text.rs rename to crates/galaxyui_core/src/ui_components/text.rs diff --git a/crates/warpui_core/src/ui_components/text_input.rs b/crates/galaxyui_core/src/ui_components/text_input.rs similarity index 100% rename from crates/warpui_core/src/ui_components/text_input.rs rename to crates/galaxyui_core/src/ui_components/text_input.rs diff --git a/crates/warpui_core/src/ui_components/toggle_button.rs b/crates/galaxyui_core/src/ui_components/toggle_button.rs similarity index 100% rename from crates/warpui_core/src/ui_components/toggle_button.rs rename to crates/galaxyui_core/src/ui_components/toggle_button.rs diff --git a/crates/warpui_core/src/ui_components/toggle_menu.rs b/crates/galaxyui_core/src/ui_components/toggle_menu.rs similarity index 100% rename from crates/warpui_core/src/ui_components/toggle_menu.rs rename to crates/galaxyui_core/src/ui_components/toggle_menu.rs diff --git a/crates/warpui_core/src/ui_components/tool_tip.rs b/crates/galaxyui_core/src/ui_components/tool_tip.rs similarity index 100% rename from crates/warpui_core/src/ui_components/tool_tip.rs rename to crates/galaxyui_core/src/ui_components/tool_tip.rs diff --git a/crates/warpui_core/src/units.rs b/crates/galaxyui_core/src/units.rs similarity index 100% rename from crates/warpui_core/src/units.rs rename to crates/galaxyui_core/src/units.rs diff --git a/crates/warpui_core/src/util.rs b/crates/galaxyui_core/src/util.rs similarity index 100% rename from crates/warpui_core/src/util.rs rename to crates/galaxyui_core/src/util.rs diff --git a/crates/warpui_core/src/util_test.rs b/crates/galaxyui_core/src/util_test.rs similarity index 100% rename from crates/warpui_core/src/util_test.rs rename to crates/galaxyui_core/src/util_test.rs diff --git a/crates/warpui_core/src/windowing/mod.rs b/crates/galaxyui_core/src/windowing/mod.rs similarity index 100% rename from crates/warpui_core/src/windowing/mod.rs rename to crates/galaxyui_core/src/windowing/mod.rs diff --git a/crates/warpui_core/src/windowing/state.rs b/crates/galaxyui_core/src/windowing/state.rs similarity index 100% rename from crates/warpui_core/src/windowing/state.rs rename to crates/galaxyui_core/src/windowing/state.rs diff --git a/crates/warpui_core/src/windowing/system.rs b/crates/galaxyui_core/src/windowing/system.rs similarity index 100% rename from crates/warpui_core/src/windowing/system.rs rename to crates/galaxyui_core/src/windowing/system.rs diff --git a/crates/warpui_core/src/zoom.rs b/crates/galaxyui_core/src/zoom.rs similarity index 100% rename from crates/warpui_core/src/zoom.rs rename to crates/galaxyui_core/src/zoom.rs diff --git a/crates/warpui_core/test_data/animated.webp b/crates/galaxyui_core/test_data/animated.webp similarity index 100% rename from crates/warpui_core/test_data/animated.webp rename to crates/galaxyui_core/test_data/animated.webp diff --git a/crates/warpui_core/test_data/local.png b/crates/galaxyui_core/test_data/local.png similarity index 100% rename from crates/warpui_core/test_data/local.png rename to crates/galaxyui_core/test_data/local.png diff --git a/crates/warpui_extras/Cargo.toml b/crates/galaxyui_extras/Cargo.toml similarity index 93% rename from crates/warpui_extras/Cargo.toml rename to crates/galaxyui_extras/Cargo.toml index 2663701f..f7ee3459 100644 --- a/crates/warpui_extras/Cargo.toml +++ b/crates/galaxyui_extras/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["Warp Team "] edition = "2021" -name = "warpui_extras" +name = "galaxyui_extras" version = "0.0.0" publish.workspace = true license.workspace = true @@ -23,11 +23,11 @@ serde_json = { workspace = true, optional = true } sha2.workspace = true toml_edit = { workspace = true, optional = true } thiserror.workspace = true -warpui.workspace = true +galaxyui.workspace = true [dev-dependencies] # Enable the `test-util` feature for our own package when running tests. -warpui_extras = { path = ".", features = ["test-util"] } +galaxyui_extras = { path = ".", features = ["test-util"] } tempfile.workspace = true [target.'cfg(target_os = "macos")'.dependencies] diff --git a/crates/warpui_extras/src/lib.rs b/crates/galaxyui_extras/src/lib.rs similarity index 100% rename from crates/warpui_extras/src/lib.rs rename to crates/galaxyui_extras/src/lib.rs diff --git a/crates/warpui_extras/src/secure_storage/linux.rs b/crates/galaxyui_extras/src/secure_storage/linux.rs similarity index 100% rename from crates/warpui_extras/src/secure_storage/linux.rs rename to crates/galaxyui_extras/src/secure_storage/linux.rs diff --git a/crates/warpui_extras/src/secure_storage/linux_test.rs b/crates/galaxyui_extras/src/secure_storage/linux_test.rs similarity index 100% rename from crates/warpui_extras/src/secure_storage/linux_test.rs rename to crates/galaxyui_extras/src/secure_storage/linux_test.rs diff --git a/crates/warpui_extras/src/secure_storage/mac.rs b/crates/galaxyui_extras/src/secure_storage/mac.rs similarity index 100% rename from crates/warpui_extras/src/secure_storage/mac.rs rename to crates/galaxyui_extras/src/secure_storage/mac.rs diff --git a/crates/warpui_extras/src/secure_storage/mod.rs b/crates/galaxyui_extras/src/secure_storage/mod.rs similarity index 90% rename from crates/warpui_extras/src/secure_storage/mod.rs rename to crates/galaxyui_extras/src/secure_storage/mod.rs index 928d68e9..c61a7a0d 100644 --- a/crates/warpui_extras/src/secure_storage/mod.rs +++ b/crates/galaxyui_extras/src/secure_storage/mod.rs @@ -23,12 +23,12 @@ mod windows_only { #[cfg(target_os = "windows")] use windows_only::*; -/// A type alias for the concrete type stored within a warpui +/// A type alias for the concrete type stored within a galaxyui /// app context, enabling usage such as: /// /// ``` -/// use warpui::{App, SingletonEntity}; -/// use warpui_extras::secure_storage; +/// use galaxyui::{App, SingletonEntity}; +/// use galaxyui_extras::secure_storage; /// /// App::test((), |mut app| async move { /// app.update(|ctx| { @@ -51,12 +51,12 @@ pub type Model = Box; /// is recommended that this be a unique identifier for the application; one /// common scheme is reverse-DNS notation (e.g.: "dev.warp.Warp"). #[cfg(not(target_os = "windows"))] -pub fn register(service_name: &str, ctx: &mut warpui::AppContext) { +pub fn register(service_name: &str, ctx: &mut galaxyui::AppContext) { ctx.add_singleton_model(|_| -> Model { Box::new(imp::SecureStorage::new(service_name)) }); } /// Registers a no-op Secure Storage provider with the application. -pub fn register_noop(service_name: &str, ctx: &mut warpui::AppContext) { +pub fn register_noop(service_name: &str, ctx: &mut galaxyui::AppContext) { ctx.add_singleton_model(|_| -> Model { Box::new(noop::SecureStorage::new(service_name)) }); } @@ -64,7 +64,7 @@ pub fn register_noop(service_name: &str, ctx: &mut warpui::AppContext) { pub fn register_with_fallback( service_name: &str, fallback_dir: std::path::PathBuf, - ctx: &mut warpui::AppContext, + ctx: &mut galaxyui::AppContext, ) { ctx.add_singleton_model(|_| -> Model { Box::new(imp::SecureStorage::new_with_fallback( @@ -80,7 +80,7 @@ pub fn register_with_fallback( pub fn register_with_dir( service_name: &str, storage_dir: std::path::PathBuf, - ctx: &mut warpui::AppContext, + ctx: &mut galaxyui::AppContext, ) { ctx.add_singleton_model(|_| -> Model { Box::new(imp::SecureStorage::new_with_path(service_name, storage_dir)) @@ -101,11 +101,11 @@ pub trait SecureStorage { fn remove_value(&self, key: &str) -> Result<(), Error>; } -impl warpui::Entity for Model { +impl galaxyui::Entity for Model { type Event = (); } -impl warpui::SingletonEntity for Model {} +impl galaxyui::SingletonEntity for Model {} /// Enumerates the various errors that can occur when interacting with secure /// storage. @@ -154,8 +154,8 @@ impl From for Error { /// An extension trait to make secure storage easier to use. /// /// ``` -/// use warpui::{App, SingletonEntity}; -/// use warpui_extras::secure_storage; +/// use galaxyui::{App, SingletonEntity}; +/// use galaxyui_extras::secure_storage; /// /// App::test((), |mut app| async move { /// app.update(|ctx| { @@ -175,9 +175,9 @@ pub trait AppContextExt { fn secure_storage(&self) -> &dyn SecureStorage; } -impl AppContextExt for warpui::AppContext { +impl AppContextExt for galaxyui::AppContext { fn secure_storage(&self) -> &dyn SecureStorage { - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; ::as_ref(self).as_ref() } diff --git a/crates/warpui_extras/src/secure_storage/noop.rs b/crates/galaxyui_extras/src/secure_storage/noop.rs similarity index 100% rename from crates/warpui_extras/src/secure_storage/noop.rs rename to crates/galaxyui_extras/src/secure_storage/noop.rs diff --git a/crates/warpui_extras/src/secure_storage/windows.rs b/crates/galaxyui_extras/src/secure_storage/windows.rs similarity index 100% rename from crates/warpui_extras/src/secure_storage/windows.rs rename to crates/galaxyui_extras/src/secure_storage/windows.rs diff --git a/crates/warpui_extras/src/secure_storage/windows_test.rs b/crates/galaxyui_extras/src/secure_storage/windows_test.rs similarity index 100% rename from crates/warpui_extras/src/secure_storage/windows_test.rs rename to crates/galaxyui_extras/src/secure_storage/windows_test.rs diff --git a/crates/warpui_extras/src/user_preferences/file_backed.rs b/crates/galaxyui_extras/src/user_preferences/file_backed.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/file_backed.rs rename to crates/galaxyui_extras/src/user_preferences/file_backed.rs diff --git a/crates/warpui_extras/src/user_preferences/in_memory.rs b/crates/galaxyui_extras/src/user_preferences/in_memory.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/in_memory.rs rename to crates/galaxyui_extras/src/user_preferences/in_memory.rs diff --git a/crates/warpui_extras/src/user_preferences/local_storage.rs b/crates/galaxyui_extras/src/user_preferences/local_storage.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/local_storage.rs rename to crates/galaxyui_extras/src/user_preferences/local_storage.rs diff --git a/crates/warpui_extras/src/user_preferences/mod.rs b/crates/galaxyui_extras/src/user_preferences/mod.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/mod.rs rename to crates/galaxyui_extras/src/user_preferences/mod.rs diff --git a/crates/warpui_extras/src/user_preferences/registry_backed.rs b/crates/galaxyui_extras/src/user_preferences/registry_backed.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/registry_backed.rs rename to crates/galaxyui_extras/src/user_preferences/registry_backed.rs diff --git a/crates/warpui_extras/src/user_preferences/toml_backed.rs b/crates/galaxyui_extras/src/user_preferences/toml_backed.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/toml_backed.rs rename to crates/galaxyui_extras/src/user_preferences/toml_backed.rs diff --git a/crates/warpui_extras/src/user_preferences/toml_backed_tests.rs b/crates/galaxyui_extras/src/user_preferences/toml_backed_tests.rs similarity index 100% rename from crates/warpui_extras/src/user_preferences/toml_backed_tests.rs rename to crates/galaxyui_extras/src/user_preferences/toml_backed_tests.rs diff --git a/crates/warpui_extras/src/user_preferences/user_defaults.rs b/crates/galaxyui_extras/src/user_preferences/user_defaults.rs similarity index 97% rename from crates/warpui_extras/src/user_preferences/user_defaults.rs rename to crates/galaxyui_extras/src/user_preferences/user_defaults.rs index 2ca7329a..f9001440 100644 --- a/crates/warpui_extras/src/user_preferences/user_defaults.rs +++ b/crates/galaxyui_extras/src/user_preferences/user_defaults.rs @@ -64,7 +64,7 @@ impl super::UserPreferences for UserDefaultsPreferencesStorage { let value: id = msg_send![*self.user_defaults, stringForKey: *key]; if value != nil { Ok(Some( - warpui::platform::mac::utils::nsstring_as_str(value)?.to_owned(), + galaxyui::platform::mac::utils::nsstring_as_str(value)?.to_owned(), )) } else { Ok(None) diff --git a/crates/graphql/Cargo.toml b/crates/graphql/Cargo.toml index b576b8f4..f4496849 100644 --- a/crates/graphql/Cargo.toml +++ b/crates/graphql/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["Warp Team "] edition = "2021" -name = "warp_graphql" +name = "galaxy_graphql" version = "0.1.0" publish.workspace = true license.workspace = true @@ -21,8 +21,8 @@ persistence.workspace = true reqwest.workspace = true serde.workspace = true thiserror.workspace = true -warp_core.workspace = true -warp_graphql_schema.workspace = true +galaxy_core.workspace = true +galaxy_graphql_schema.workspace = true websocket = {path = "../websocket"} [target.'cfg(not(target_family = "wasm"))'.dependencies] diff --git a/crates/graphql/build.rs b/crates/graphql/build.rs index 506085f5..c0eff1e6 100644 --- a/crates/graphql/build.rs +++ b/crates/graphql/build.rs @@ -6,7 +6,7 @@ fn main() -> Result<()> { // We need to register the schema here, even though the code is generated in the schema crate. cynic_codegen::register_schema("warp-server") - .from_sdl_file("../warp_graphql_schema/api/schema.graphql") + .from_sdl_file("../galaxy_graphql_schema/api/schema.graphql") .context("Should be able to register schema")? .as_default()?; diff --git a/crates/graphql/src/api/mod.rs b/crates/graphql/src/api/mod.rs index 3b986453..5bd05c1c 100644 --- a/crates/graphql/src/api/mod.rs +++ b/crates/graphql/src/api/mod.rs @@ -20,7 +20,7 @@ pub mod workflow; pub mod workspace; // Re-export the schema that's generated by the schema crate. -pub use warp_graphql_schema::schema; +pub use galaxy_graphql_schema::schema; use cynic::impl_scalar; impl_scalar!(crate::scalars::Time, schema::Time); diff --git a/crates/graphql/src/client.rs b/crates/graphql/src/client.rs index cbccf043..91df2832 100644 --- a/crates/graphql/src/client.rs +++ b/crates/graphql/src/client.rs @@ -5,7 +5,7 @@ use http::StatusCode; use instant::Duration; use reqwest::header::CONTENT_TYPE; use serde::{de::DeserializeOwned, Serialize}; -use warp_core::{channel::ChannelState, operating_system_info::OperatingSystemInfo}; +use galaxy_core::{channel::ChannelState, operating_system_info::OperatingSystemInfo}; use crate::{ error::{UserFacingError, UserFacingErrorInterface}, diff --git a/crates/handlebars/Cargo.toml b/crates/handlebars/Cargo.toml index 8a7d215b..ec62b2d1 100644 --- a/crates/handlebars/Cargo.toml +++ b/crates/handlebars/Cargo.toml @@ -6,4 +6,4 @@ publish.workspace = true license.workspace = true [dependencies] -warpui.workspace = true +galaxyui.workspace = true diff --git a/crates/handlebars/src/parser_test.rs b/crates/handlebars/src/parser_test.rs index 246d34f4..864eb547 100644 --- a/crates/handlebars/src/parser_test.rs +++ b/crates/handlebars/src/parser_test.rs @@ -1,4 +1,4 @@ -use warpui::App; +use galaxyui::App; use crate::parser::{ParsedArgument, ParsedArgumentResult, ParsedArgumentsIterator}; diff --git a/crates/http_client/Cargo.toml b/crates/http_client/Cargo.toml index 1289a9eb..8bc11cfa 100644 --- a/crates/http_client/Cargo.toml +++ b/crates/http_client/Cargo.toml @@ -25,7 +25,7 @@ reqwest-eventsource.workspace = true serde.workspace = true serde_json.workspace = true serde_urlencoded.workspace = true -warp_core.workspace = true +galaxy_core.workspace = true [target.'cfg(target_arch = "wasm32")'.dependencies] gloo.workspace = true diff --git a/crates/http_client/src/lib.rs b/crates/http_client/src/lib.rs index f10875d0..0baa1376 100644 --- a/crates/http_client/src/lib.rs +++ b/crates/http_client/src/lib.rs @@ -15,7 +15,7 @@ use reqwest::IntoUrl; use reqwest_eventsource::RequestBuilderExt; use serde::Serialize; use serde::de::DeserializeOwned; -use warp_core::{ +use galaxy_core::{ channel::{Channel, ChannelState}, execution_mode, operating_system_info::OperatingSystemInfo, @@ -47,7 +47,7 @@ pub mod headers { /// The environment variable containing extra HTTP headers to attach to requests. /// Only read when the channel is `Channel::Integration`. The value is a newline-separated /// list of `Name:Value` pairs, where each pair is split on the first colon. -const EXTRA_HTTP_HEADERS_ENV_VAR: &str = "WARP_EXTRA_HTTP_HEADERS"; +const EXTRA_HTTP_HEADERS_ENV_VAR: &str = "GALAXY_EXTRA_HTTP_HEADERS"; /// A wrapper around a `reqwest::Client` to execute requests. Returns a custom `RequestBuilder` type /// that ensures any call to the underlying `reqwest::Client` are properly adapted so that they can diff --git a/crates/http_server/Cargo.toml b/crates/http_server/Cargo.toml index 48f01b37..585de21d 100644 --- a/crates/http_server/Cargo.toml +++ b/crates/http_server/Cargo.toml @@ -11,4 +11,4 @@ log.workspace = true tokio.workspace = true tower.workspace = true tower-http = { workspace = true, features = ["trace", "cors"] } -warpui.workspace = true +galaxyui.workspace = true diff --git a/crates/http_server/src/lib.rs b/crates/http_server/src/lib.rs index 4797502a..21e6e807 100644 --- a/crates/http_server/src/lib.rs +++ b/crates/http_server/src/lib.rs @@ -1,7 +1,7 @@ use std::net::SocketAddr; use tower_http::trace::TraceLayer; -use warpui::{Entity, ModelContext, SingletonEntity}; +use galaxyui::{Entity, ModelContext, SingletonEntity}; // Spells "Warp" - should hopefully not conflict with other ports. // Does not conflict with known ports on https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers diff --git a/crates/input_classifier/Cargo.toml b/crates/input_classifier/Cargo.toml index 976744d4..1e655aec 100644 --- a/crates/input_classifier/Cargo.toml +++ b/crates/input_classifier/Cargo.toml @@ -51,6 +51,6 @@ serde.workspace = true smol_str.workspace = true tempfile = { workspace = true, optional = true } tokenizers = { version = "0.21.4", optional = true } -warp_completer.workspace = true +galaxy_completer.workspace = true [dev-dependencies] diff --git a/crates/input_classifier/src/bin/evaluate.rs b/crates/input_classifier/src/bin/evaluate.rs index a13564ee..4f965494 100644 --- a/crates/input_classifier/src/bin/evaluate.rs +++ b/crates/input_classifier/src/bin/evaluate.rs @@ -66,7 +66,7 @@ fn get_binary_confidence_color(is_correct: bool, is_low_confidence: bool) -> Str "\x1b[31m".to_string() // Red for incorrect } } -use warp_completer::{ParsedTokensSnapshot, util::parse_current_commands_and_tokens}; +use galaxy_completer::{ParsedTokensSnapshot, util::parse_current_commands_and_tokens}; #[cfg(feature = "fasttext")] use input_classifier::FasttextClassifier; diff --git a/crates/input_classifier/src/fasttext/mod.rs b/crates/input_classifier/src/fasttext/mod.rs index 7f8ccfa7..05924218 100644 --- a/crates/input_classifier/src/fasttext/mod.rs +++ b/crates/input_classifier/src/fasttext/mod.rs @@ -52,7 +52,7 @@ impl FasttextClassifier { impl InputClassifier for FasttextClassifier { async fn detect_input_type( &self, - input: warp_completer::ParsedTokensSnapshot, + input: galaxy_completer::ParsedTokensSnapshot, context: &Context, ) -> InputType { let word_tokens = parse_query_into_tokens(input.buffer_text.as_str()); @@ -80,7 +80,7 @@ impl InputClassifier for FasttextClassifier { async fn classify_input( &self, - input: warp_completer::ParsedTokensSnapshot, + input: galaxy_completer::ParsedTokensSnapshot, context: &Context, ) -> anyhow::Result { if let Ok(classification_result) = diff --git a/crates/input_classifier/src/heuristic_classifier/mod.rs b/crates/input_classifier/src/heuristic_classifier/mod.rs index bb085c0e..20fb1595 100644 --- a/crates/input_classifier/src/heuristic_classifier/mod.rs +++ b/crates/input_classifier/src/heuristic_classifier/mod.rs @@ -3,7 +3,7 @@ use std::borrow::Cow; use async_trait::async_trait; use itertools::Itertools as _; use natural_language_detection::natural_language_words_score; -use warp_completer::ParsedTokensSnapshot; +use galaxy_completer::ParsedTokensSnapshot; use crate::{ ClassificationResult, Context, InputClassifier, InputType, @@ -61,7 +61,7 @@ impl InputClassifier for HeuristicClassifier { async fn classify_input( &self, - input: warp_completer::ParsedTokensSnapshot, + input: galaxy_completer::ParsedTokensSnapshot, context: &Context, ) -> anyhow::Result { let word_tokens = parse_query_into_tokens(input.buffer_text.as_str()); diff --git a/crates/input_classifier/src/heuristic_classifier/mod_tests.rs b/crates/input_classifier/src/heuristic_classifier/mod_tests.rs index b31ded62..afed1b42 100644 --- a/crates/input_classifier/src/heuristic_classifier/mod_tests.rs +++ b/crates/input_classifier/src/heuristic_classifier/mod_tests.rs @@ -1,4 +1,4 @@ -use warp_completer::util::parse_current_commands_and_tokens; +use galaxy_completer::util::parse_current_commands_and_tokens; use crate::{Context, test_utils::CompletionContext}; diff --git a/crates/input_classifier/src/lib.rs b/crates/input_classifier/src/lib.rs index 20622907..d2b1a395 100644 --- a/crates/input_classifier/src/lib.rs +++ b/crates/input_classifier/src/lib.rs @@ -24,13 +24,13 @@ pub use onnx::{Model as OnnxModel, OnnxClassifier}; pub trait InputClassifier: 'static + Send + Sync { async fn detect_input_type( &self, - input: warp_completer::ParsedTokensSnapshot, + input: galaxy_completer::ParsedTokensSnapshot, context: &Context, ) -> InputType; async fn classify_input( &self, - input: warp_completer::ParsedTokensSnapshot, + input: galaxy_completer::ParsedTokensSnapshot, context: &Context, ) -> anyhow::Result; } diff --git a/crates/input_classifier/src/onnx/candle.rs b/crates/input_classifier/src/onnx/candle.rs index 390840ed..310b67dc 100644 --- a/crates/input_classifier/src/onnx/candle.rs +++ b/crates/input_classifier/src/onnx/candle.rs @@ -5,7 +5,7 @@ use candle_core::{IndexOp as _, Tensor}; use candle_onnx::onnx::ModelProto; use prost::Message as _; use tokenizers::Tokenizer; -use warp_completer::ParsedTokensSnapshot; +use galaxy_completer::ParsedTokensSnapshot; use super::ClassificationResult; diff --git a/crates/input_classifier/src/onnx/mod.rs b/crates/input_classifier/src/onnx/mod.rs index a0c69377..67f0c00a 100644 --- a/crates/input_classifier/src/onnx/mod.rs +++ b/crates/input_classifier/src/onnx/mod.rs @@ -8,7 +8,7 @@ use std::borrow::Cow; use anyhow::Result; use async_trait::async_trait; use rust_embed::RustEmbed; -use warp_completer::ParsedTokensSnapshot; +use galaxy_completer::ParsedTokensSnapshot; use crate::{ ClassificationResult, Context, InputClassifier, InputType, @@ -119,7 +119,7 @@ impl InputClassifier for OnnxClassifier { async fn classify_input( &self, - input: warp_completer::ParsedTokensSnapshot, + input: galaxy_completer::ParsedTokensSnapshot, _context: &Context, ) -> anyhow::Result { // If we ever panicked while running inference, we should fall back to the heuristic classifier. diff --git a/crates/input_classifier/src/onnx/ort.rs b/crates/input_classifier/src/onnx/ort.rs index 93724af7..d3573c8d 100644 --- a/crates/input_classifier/src/onnx/ort.rs +++ b/crates/input_classifier/src/onnx/ort.rs @@ -6,7 +6,7 @@ use ort::{ }; use parking_lot::Mutex; use tokenizers::Tokenizer; -use warp_completer::ParsedTokensSnapshot; +use galaxy_completer::ParsedTokensSnapshot; use super::ClassificationResult; diff --git a/crates/input_classifier/src/test_utils.rs b/crates/input_classifier/src/test_utils.rs index c341fff4..350039c5 100644 --- a/crates/input_classifier/src/test_utils.rs +++ b/crates/input_classifier/src/test_utils.rs @@ -1,7 +1,7 @@ use std::{collections::HashSet, sync::Arc}; use smol_str::SmolStr; -use warp_completer::{ +use galaxy_completer::{ completer::{GeneratorContext, PathCompletionContext}, signatures::CommandRegistry, }; @@ -20,7 +20,7 @@ impl CompletionContext { } } -impl warp_completer::completer::CompletionContext for CompletionContext { +impl galaxy_completer::completer::CompletionContext for CompletionContext { fn top_level_commands(&self) -> Box + '_> { Box::new(self.command_registry.registered_commands()) } diff --git a/crates/input_classifier/src/util.rs b/crates/input_classifier/src/util.rs index ce87ddcf..4be1c7b9 100644 --- a/crates/input_classifier/src/util.rs +++ b/crates/input_classifier/src/util.rs @@ -2,7 +2,7 @@ use std::collections::HashSet; use lazy_static::lazy_static; use natural_language_detection::check_if_token_has_shell_syntax; -use warp_completer::ParsedTokensSnapshot; +use galaxy_completer::ParsedTokensSnapshot; /// The percentage of input tokens that can be described by our completion engine before /// we consider the input as a shell command. This could be tuned. diff --git a/crates/integration/Cargo.toml b/crates/integration/Cargo.toml index c20891e6..c1a20aba 100644 --- a/crates/integration/Cargo.toml +++ b/crates/integration/Cargo.toml @@ -38,22 +38,22 @@ strum.workspace = true strum_macros.workspace = true sum_tree.workspace = true version-compare.workspace = true -warp = { workspace = true, features = ["integration_tests"] } -warp_cli = { workspace = true, features = ["integration_tests"] } -warp_core.workspace = true +galaxy = { workspace = true, features = ["integration_tests"] } +galaxy_cli = { workspace = true, features = ["integration_tests"] } +galaxy_core.workspace = true warp-command-signatures.workspace = true warp_multi_agent_api.workspace = true warp-workflows.workspace = true -warpui.workspace = true -warpui_extras = { workspace = true, features = [ +galaxyui.workspace = true +galaxyui_extras = { workspace = true, features = [ "user_preferences-file", ] } whoami = "1.5.2" [dev-dependencies] command = { workspace = true, features = ["test-util"] } -warpui = { workspace = true, features = ["integration_tests"] } -warp_core = { workspace = true, features = ["test-util"] } +galaxyui = { workspace = true, features = ["integration_tests"] } +galaxy_core = { workspace = true, features = ["test-util"] } [target.'cfg(not(target_family = "wasm"))'.dependencies] app-installation-detection.workspace = true diff --git a/crates/integration/src/bin/integration.rs b/crates/integration/src/bin/integration.rs index 4708d92e..f63f7b74 100644 --- a/crates/integration/src/bin/integration.rs +++ b/crates/integration/src/bin/integration.rs @@ -4,9 +4,9 @@ use anyhow::Result; use clap::Parser; use integration::test::*; use integration::Builder; -use warp_cli::WorkerCommand; -use warp_core::channel::{Channel, ChannelConfig, ChannelState, OzConfig, WarpServerConfig}; -use warp_core::AppId; +use galaxy_cli::WorkerCommand; +use galaxy_core::channel::{Channel, ChannelConfig, ChannelState, OzConfig, WarpServerConfig}; +use galaxy_core::AppId; /// The Warp integration test runner. #[derive(Debug, Default, Parser, Clone)] @@ -67,7 +67,7 @@ pub fn main() -> Result<()> { // GUI application), do so. This must occur before init_logging, as the // terminal server sets up its own logger, and attempting to set a second // logger leads to a panic. - warp::terminal::local_tty::server::run_terminal_server(args); + galaxy::terminal::local_tty::server::run_terminal_server(args); return Ok(()); } // This is a catch-all to handle the plugin host, which the integration test crate doesn't have a feature flag for. @@ -105,7 +105,7 @@ pub fn main() -> Result<()> { } #[cfg_attr(not(unix), allow(unreachable_code))] - warp::run_integration_test(driver) + galaxy::run_integration_test(driver) } /// Type of a function that produces an integration test builder. diff --git a/crates/integration/src/builder.rs b/crates/integration/src/builder.rs index 15df8060..6492c6df 100644 --- a/crates/integration/src/builder.rs +++ b/crates/integration/src/builder.rs @@ -4,11 +4,11 @@ use std::future::Future; use std::path::PathBuf; use std::pin::Pin; use std::time::Duration; -use warpui::integration::{self, PersistedDataMap, TestStep}; -use warpui::integration::{TestDriver, TestSetupUtils}; -use warpui::{App, WindowId}; -use warpui_extras::user_preferences::file_backed::FileBackedUserPreferences; -use warpui_extras::user_preferences::UserPreferences; +use galaxyui::integration::{self, PersistedDataMap, TestStep}; +use galaxyui::integration::{TestDriver, TestSetupUtils}; +use galaxyui::{App, WindowId}; +use galaxyui_extras::user_preferences::file_backed::FileBackedUserPreferences; +use galaxyui_extras::user_preferences::UserPreferences; // We have logic in our build script to pass the path of the cargo target // tmp directory to our app. This needs to be done as a build script because @@ -179,7 +179,7 @@ impl Builder { // Set the DISABLE_SAVE_ENV_VAR to make sure we don't write any keybinding changes to the // filesystem - utils.set_env(warp::keyboard::DISABLE_SAVE_ENV_VAR, Some("true")); + utils.set_env(galaxy::keyboard::DISABLE_SAVE_ENV_VAR, Some("true")); // On Ubuntu (and possibly other Linux distros), a message is // printed out during shell initialization telling the user how to @@ -199,7 +199,7 @@ impl Builder { // As part of initializing the test driver, $HOME gets set to a unique // temporary directory. We can now construct a file containing any // initial user preferences that are needed for the test. - let file_path = warp::settings::user_preferences_file_path(); + let file_path = galaxy::settings::user_preferences_file_path(); // Use println because logging may not have been initialized yet. println!("Initializing preferences file at {file_path:?}"); let prefs = match FileBackedUserPreferences::new(file_path.clone()) { diff --git a/crates/integration/src/lib.rs b/crates/integration/src/lib.rs index 18a97b76..95c41f9a 100644 --- a/crates/integration/src/lib.rs +++ b/crates/integration/src/lib.rs @@ -6,5 +6,5 @@ pub mod user_defaults; pub mod util; pub use builder::Builder; -pub use warp::integration_testing::view_getters; -pub use warpui::integration::TestStep; +pub use galaxy::integration_testing::view_getters; +pub use galaxyui::integration::TestStep; diff --git a/crates/integration/src/test.rs b/crates/integration/src/test.rs index 024d8f74..7b8565bc 100644 --- a/crates/integration/src/test.rs +++ b/crates/integration/src/test.rs @@ -75,7 +75,7 @@ use pathfinder_geometry::{rect::RectF, vector::Vector2F}; use rust_embed::RustEmbed; use settings::Setting as _; use shell::ShellType; -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionOutcome, StepData, TestStep}, keymap::{Keystroke, Trigger}, @@ -84,11 +84,11 @@ use warpui::{ AssetProvider, Event, SingletonEntity, UpdateView, ViewHandle, }; -use warp::{terminal::find::TerminalFindModel, util::bindings::CustomAction, AgentModeEntrypoint}; +use galaxy::{terminal::find::TerminalFindModel, util::bindings::CustomAction, AgentModeEntrypoint}; use sysinfo::{Pid, ProcessesToUpdate, System}; use version_compare::Cmp; -use warpui::units::Lines; +use galaxyui::units::Lines; use crate::util::{skip_if_powershell_core_2303, ShellRcType}; @@ -96,19 +96,19 @@ use crate::builder::cargo_target_tmpdir; use crate::user_defaults; use crate::Builder; use sum_tree::SeekBias; -use warp::integration_testing::terminal::assert_focused_editor_in_tab; -use warp::integration_testing::{ +use galaxy::integration_testing::terminal::assert_focused_editor_in_tab; +use galaxy::integration_testing::{ settings::assert_theme_chooser_contains, tab::{assert_pane_title, assert_tab_title}, }; -use warp::settings::CtrlTabBehavior; -use warp::terminal::keys_settings::KeysSettings; -use warp::terminal::{ +use galaxy::settings::CtrlTabBehavior; +use galaxy::terminal::keys_settings::KeysSettings; +use galaxy::terminal::{ model::{blocks::BlockHeightSummary, terminal_model::BlockIndex}, view::TerminalViewState, }; -use warp::workflows::categories::CategoriesView; -use warp::{ +use galaxy::workflows::categories::CategoriesView; +use galaxy::{ appearance::Appearance, cmd_or_ctrl_shift, integration_testing::{ @@ -168,8 +168,8 @@ use warp::{ }, }; -use warp::terminal::view::ALIAS_EXPANSION_BANNER_SEEN_KEY; -use warp::{ +use galaxy::terminal::view::ALIAS_EXPANSION_BANNER_SEEN_KEY; +use galaxy::{ features::FeatureFlag, integration_testing::{ find::{Find, FindWithinBlockState}, @@ -180,13 +180,13 @@ use warp::{ window::add_and_save_window, }, }; -use warp::{ +use galaxy::{ integration_testing::warp_drive::{ assert_is_left_panel_open, assert_warp_drive_is_closed, assert_warp_drive_is_open, }, settings::CompletionsOpenWhileTyping, }; -use warp::{ +use galaxy::{ integration_testing::{ self, input::{input_contains_string, input_is_empty}, @@ -196,11 +196,11 @@ use warp::{ }, settings::MonospaceFontSize, }; -use warp::{ +use galaxy::{ integration_testing::{assertions::join_a_workspace, view_getters::single_terminal_view}, terminal::view::TerminalAction, }; -use warp::{ +use galaxy::{ integration_testing::{ command_palette::{ close_command_palette, open_command_palette, open_command_palette_and_run_action, @@ -210,11 +210,11 @@ use warp::{ }, pane_group::AGENT_MODE_PANE_DEFAULT_MINIMUM_WIDTH, }; -use warp::{ +use galaxy::{ integration_testing::{terminal::util::ExactLine, workspace::assert_tab_count}, terminal::available_shells::AvailableShells, }; -use warp::{ +use galaxy::{ integration_testing::{ terminal::{ assert_active_block_output, assert_alt_grid_active, assert_alt_screen_output, @@ -225,8 +225,8 @@ use warp::{ }, workspace::WorkspaceAction, }; -use warp::{settings_view::SettingsAction, terminal::block_list_viewport::ScrollLines}; -use warp::{ +use galaxy::{settings_view::SettingsAction, terminal::block_list_viewport::ScrollLines}; +use galaxy::{ settings_view::{keybindings::KeybindingsView, SettingsSection, SettingsView}, terminal::{ input::{Input, InputSuggestionsMode}, @@ -239,9 +239,9 @@ use warp::{ }, workspace::{Workspace, NEW_SESSION_MENU_BUTTON_POSITION_ID, NEW_TAB_BUTTON_POSITION_ID}, }; -use warpui::event::KeyState; -use warpui::keymap::PerPlatformKeystroke; -use warpui::platform::keyboard::KeyCode; +use galaxyui::event::KeyState; +use galaxyui::keymap::PerPlatformKeystroke; +use galaxyui::platform::keyboard::KeyCode; const ADD_NEXT_OCCURRENCE_KEYBINDING: &str = "ctrl-g"; @@ -270,7 +270,7 @@ fn new_builder() -> Builder { pub fn test_add_workflows_to_warp_config() -> Builder { new_builder() .with_setup(move |utils| { - utils.set_env("WARP_CONFIG_WATCHER_DELAY_MS", Some((10).to_string())); + utils.set_env("GALAXY_CONFIG_WATCHER_DELAY_MS", Some((10).to_string())); std::fs::create_dir_all(integration_testing::workflow::workflows_dir()) .expect("Should be able to create workflows dir"); @@ -324,7 +324,7 @@ pub fn test_add_workflows_to_warp_config() -> Builder { pub fn test_launch_warp_with_theme_in_warp_config() -> Builder { new_builder() .with_setup(move |utils| { - utils.set_env("WARP_CONFIG_WATCHER_DELAY_MS", Some((10).to_string())); + utils.set_env("GALAXY_CONFIG_WATCHER_DELAY_MS", Some((10).to_string())); integration_testing::create_file_from_assets( TEST_ONLY_ASSETS, @@ -340,7 +340,7 @@ pub fn test_launch_warp_with_theme_in_warp_config() -> Builder { pub fn test_add_theme_to_warp_config() -> Builder { new_builder() .with_setup(move |utils| { - utils.set_env("WARP_CONFIG_WATCHER_DELAY_MS", Some((10).to_string())); + utils.set_env("GALAXY_CONFIG_WATCHER_DELAY_MS", Some((10).to_string())); std::fs::create_dir_all(integration_testing::themes::themes_dir()) .expect("Should be able to create themes dir"); @@ -2053,7 +2053,7 @@ pub fn test_add_and_close_session() -> Builder { .expect("pane at index 0 is a terminal pane") .as_ref(ctx) .as_any() - .downcast_ref::() + .downcast_ref::() .expect("terminal pane at index 0 contains a local session") .pid() .expect("shell should be spawned") @@ -3419,14 +3419,14 @@ pub fn test_warp_auto_title_disabled() -> Builder { write_rc_files_for_test( &dir, r#" -WARP_DISABLE_AUTO_TITLE="1" +GALAXY_DISABLE_AUTO_TITLE="1" "#, [ShellRcType::Bash], ); write_rc_files_for_test( &dir, r#" -WARP_DISABLE_AUTO_TITLE="true" +GALAXY_DISABLE_AUTO_TITLE="true" "#, [ShellRcType::Zsh], ); diff --git a/crates/integration/src/test/agent_mode.rs b/crates/integration/src/test/agent_mode.rs index eba9b09c..01b068aa 100644 --- a/crates/integration/src/test/agent_mode.rs +++ b/crates/integration/src/test/agent_mode.rs @@ -8,7 +8,7 @@ use crate::{util::skip_if_powershell_core_2303, Builder}; use lazy_static::lazy_static; use pathfinder_geometry::vector::{vec2f, Vector2F}; use settings::ToggleableSetting; -use warp::{ +use galaxy::{ cmd_or_ctrl_shift, features::FeatureFlag, integration_testing::{ @@ -23,7 +23,7 @@ use warp::{ settings::SelectionSettings, }; use warp_multi_agent_api as api; -use warpui::{async_assert, integration::TestStep, text::SelectionType, Event, SingletonEntity}; +use galaxyui::{async_assert, integration::TestStep, text::SelectionType, Event, SingletonEntity}; cfg_if::cfg_if! { if #[cfg(target_os = "linux")] { @@ -104,7 +104,7 @@ fn builder_with_setup() -> Builder { } fn markdown_visuals_fixture_directory() -> String { - let fixture_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("../warpui_core/test_data"); + let fixture_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("../galaxyui_core/test_data"); fixture_dir .canonicalize() .unwrap_or(fixture_dir) diff --git a/crates/integration/src/test/ai_assistant.rs b/crates/integration/src/test/ai_assistant.rs index b969cb91..67e78f33 100644 --- a/crates/integration/src/test/ai_assistant.rs +++ b/crates/integration/src/test/ai_assistant.rs @@ -1,5 +1,5 @@ use crate::Builder; -use warp::integration_testing::{ +use galaxy::integration_testing::{ step::new_step_with_default_assertions, terminal::{ assert_selected_block_index_is_last_renderable, execute_command_for_single_terminal_in_tab, @@ -7,7 +7,7 @@ use warp::integration_testing::{ }, view_getters::ai_assistant_panel_view, }; -use warpui::async_assert; +use galaxyui::async_assert; use super::new_builder; diff --git a/crates/integration/src/test/block_filtering.rs b/crates/integration/src/test/block_filtering.rs index 79d1fbda..2ff5f10e 100644 --- a/crates/integration/src/test/block_filtering.rs +++ b/crates/integration/src/test/block_filtering.rs @@ -13,21 +13,21 @@ use crate::test::integration_testing::terminal::{ use crate::test::new_step_with_default_assertions; use crate::test::toggle_setting; use crate::test::TestStep; -use warp::cmd_or_ctrl_shift; -use warp::integration_testing::terminal::util::current_shell_starter_and_version; -use warp::integration_testing::terminal::{ +use galaxy::cmd_or_ctrl_shift; +use galaxy::integration_testing::terminal::util::current_shell_starter_and_version; +use galaxy::integration_testing::terminal::{ assert_context_menu_is_open, initialize_secret_regexes, wait_until_bootstrapped_single_pane_for_tab, }; -use warp::integration_testing::view_getters::single_terminal_view_for_tab; +use galaxy::integration_testing::view_getters::single_terminal_view_for_tab; -use warp::settings_view::PrivacyPageAction; -use warp::settings_view::SettingsAction; -use warp::terminal::model::index::Point; -use warp::terminal::model::terminal_model::{BlockIndex, WithinBlock, WithinModel}; -use warp::terminal::shell::ShellType; -use warp::terminal::GridType; -use warpui::{async_assert, async_assert_eq}; +use galaxy::settings_view::PrivacyPageAction; +use galaxy::settings_view::SettingsAction; +use galaxy::terminal::model::index::Point; +use galaxy::terminal::model::terminal_model::{BlockIndex, WithinBlock, WithinModel}; +use galaxy::terminal::shell::ShellType; +use galaxy::terminal::GridType; +use galaxyui::{async_assert, async_assert_eq}; use crate::Builder; diff --git a/crates/integration/src/test/bootstrapping.rs b/crates/integration/src/test/bootstrapping.rs index df5d2c11..3fdf8249 100644 --- a/crates/integration/src/test/bootstrapping.rs +++ b/crates/integration/src/test/bootstrapping.rs @@ -2,7 +2,7 @@ use settings::Setting as _; use version_compare::Cmp; -use warp::{ +use galaxy::{ cmd_or_ctrl_shift, integration_testing::{ input::{ @@ -24,7 +24,7 @@ use warp::{ terminal::shell::{self, ShellType}, workspace::Workspace, }; -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, clipboard::ClipboardContent, integration::TestStep, ViewHandle, }; diff --git a/crates/integration/src/test/code_review.rs b/crates/integration/src/test/code_review.rs index dbc028d8..eab8d3b6 100644 --- a/crates/integration/src/test/code_review.rs +++ b/crates/integration/src/test/code_review.rs @@ -6,8 +6,8 @@ use std::{ use command::blocking::Command; -use warp::features::FeatureFlag; -use warp::{ +use galaxy::features::FeatureFlag; +use galaxy::{ integration_testing::{ code_review::{ assert_code_review_anchor, assert_code_review_line_text, assert_code_review_loaded, @@ -20,7 +20,7 @@ use warp::{ }, workspace::WorkspaceAction, }; -use warpui::{ +use galaxyui::{ async_assert, integration::{AssertionCallback, TestStep}, App, WindowId, diff --git a/crates/integration/src/test/ctrl_d.rs b/crates/integration/src/test/ctrl_d.rs index 7226175b..d648c0d8 100644 --- a/crates/integration/src/test/ctrl_d.rs +++ b/crates/integration/src/test/ctrl_d.rs @@ -1,6 +1,6 @@ //! Integration tests for CTRL-D / EOT behaviour. -use warp::{ +use galaxy::{ integration_testing::{ step::new_step_with_default_assertions, terminal::{ @@ -15,7 +15,7 @@ use warp::{ terminal::{model::bootstrap::BootstrapStage, shell::ShellType, TerminalView}, workspace::Workspace, }; -use warpui::integration::TestStep; +use galaxyui::integration::TestStep; use super::{new_builder, Builder}; use crate::util::write_all_rc_files_for_test; diff --git a/crates/integration/src/test/file_tree.rs b/crates/integration/src/test/file_tree.rs index 884651d4..b5752ac8 100644 --- a/crates/integration/src/test/file_tree.rs +++ b/crates/integration/src/test/file_tree.rs @@ -1,7 +1,7 @@ use super::{new_builder, Builder}; use regex::Regex; -use warp::{ +use galaxy::{ integration_testing::{ step::new_step_with_default_assertions, tab::assert_pane_title, @@ -10,7 +10,7 @@ use warp::{ }, workspace::WorkspaceAction, }; -use warpui::{async_assert, async_assert_eq, integration::TestStep, App}; +use galaxyui::{async_assert, async_assert_eq, integration::TestStep, App}; use crate::util::write_all_rc_files_for_test; diff --git a/crates/integration/src/test/goto_line.rs b/crates/integration/src/test/goto_line.rs index 73201fbc..aeefef6b 100644 --- a/crates/integration/src/test/goto_line.rs +++ b/crates/integration/src/test/goto_line.rs @@ -1,7 +1,7 @@ use super::{new_builder, Builder}; use regex::Regex; -use warp::{ +use galaxy::{ integration_testing::{ goto_line::{ assert_cursor_at_line, assert_cursor_at_line_and_column, @@ -14,7 +14,7 @@ use warp::{ }, workspace::WorkspaceAction, }; -use warpui::{async_assert_eq, App}; +use galaxyui::{async_assert_eq, App}; use crate::util::write_all_rc_files_for_test; diff --git a/crates/integration/src/test/history.rs b/crates/integration/src/test/history.rs index a26ff101..2e65aa0d 100644 --- a/crates/integration/src/test/history.rs +++ b/crates/integration/src/test/history.rs @@ -2,7 +2,7 @@ use std::collections::HashMap; use crate::Builder; use settings::Setting as _; -use warp::{ +use galaxy::{ integration_testing::{ self, command_search::{assert_command_search_is_open, assert_history_filter_is_active}, @@ -15,7 +15,7 @@ use warp::{ sqlite_testing::set_user_and_hostname_for_commands, terminal::{input::Input, model::session::get_local_hostname, shell::ShellType}, }; -use warpui::{async_assert, ViewHandle}; +use galaxyui::{async_assert, ViewHandle}; use crate::util::{get_local_user, write_histfiles_for_test}; diff --git a/crates/integration/src/test/input.rs b/crates/integration/src/test/input.rs index c6adcc3c..8c462a1b 100644 --- a/crates/integration/src/test/input.rs +++ b/crates/integration/src/test/input.rs @@ -1,8 +1,8 @@ use std::time::Duration; -use warp::integration_testing::terminal::util::current_shell_starter_and_version; -use warp::terminal::shell::ShellType; -use warp::{ +use galaxy::integration_testing::terminal::util::current_shell_starter_and_version; +use galaxy::terminal::shell::ShellType; +use galaxy::{ features::FeatureFlag, integration_testing::{ clipboard::write_to_clipboard, @@ -18,7 +18,7 @@ use warp::{ view_getters::{single_input_view_for_tab, single_terminal_view_for_tab}, }, }; -use warpui::{async_assert_eq, integration::TestStep, Event}; +use galaxyui::{async_assert_eq, integration::TestStep, Event}; use crate::Builder; diff --git a/crates/integration/src/test/keyboard_protocol.rs b/crates/integration/src/test/keyboard_protocol.rs index a509f645..56ca8c6c 100644 --- a/crates/integration/src/test/keyboard_protocol.rs +++ b/crates/integration/src/test/keyboard_protocol.rs @@ -1,7 +1,7 @@ use std::time::Duration; -use warp::features::FeatureFlag; -use warp::integration_testing::{ +use galaxy::features::FeatureFlag; +use galaxy::integration_testing::{ step::new_step_with_default_assertions, terminal::{ assert_long_running_block_executing_for_single_terminal_in_tab, @@ -9,10 +9,10 @@ use warp::integration_testing::{ }, view_getters::single_terminal_view_for_tab, }; -use warpui::event::{KeyEventDetails, KeyState}; -use warpui::keymap::Keystroke; -use warpui::platform::keyboard::KeyCode; -use warpui::{async_assert, integration::TestStep, Event}; +use galaxyui::event::{KeyEventDetails, KeyState}; +use galaxyui::keymap::Keystroke; +use galaxyui::platform::keyboard::KeyCode; +use galaxyui::{async_assert, integration::TestStep, Event}; use crate::Builder; @@ -50,7 +50,7 @@ fn wait_for_protocol_enabled() -> TestStep { fn assert_output_contains( expected: &'static str, description: &'static str, -) -> impl FnMut(&mut warpui::App, warpui::WindowId) -> warpui::integration::AssertionOutcome { +) -> impl FnMut(&mut galaxyui::App, galaxyui::WindowId) -> galaxyui::integration::AssertionOutcome { move |app, window_id| { let terminal_view = single_terminal_view_for_tab(app, window_id, 0); terminal_view.read(app, |view, _ctx| { diff --git a/crates/integration/src/test/launch_configs.rs b/crates/integration/src/test/launch_configs.rs index 31bcb886..70205a63 100644 --- a/crates/integration/src/test/launch_configs.rs +++ b/crates/integration/src/test/launch_configs.rs @@ -1,6 +1,6 @@ use std::{path::PathBuf, time::Duration}; -use warpui::{ +use galaxyui::{ async_assert, integration::{AssertionOutcome, TestStep}, ModelHandle, @@ -8,22 +8,22 @@ use warpui::{ use super::{assert_approx_eq, new_builder, TEST_ONLY_ASSETS}; use crate::Builder; -use warp::integration_testing::{ +use galaxy::integration_testing::{ pane_group::assert_focused_pane_index, window::assert_num_windows_open, workspace::{assert_focused_tab_index, assert_tab_count}, }; -use warp::integration_testing::{ +use galaxy::integration_testing::{ step::new_step_with_default_assertions, terminal::{validate_block_output, wait_until_bootstrapped_single_pane_for_tab}, }; -use warp::search::command_palette::launch_config; -use warp::workspace::NEW_TAB_BUTTON_POSITION_ID; -use warp::{features::FeatureFlag, integration_testing::settings::set_window_custom_size}; -use warp::{ +use galaxy::search::command_palette::launch_config; +use galaxy::workspace::NEW_TAB_BUTTON_POSITION_ID; +use galaxy::{features::FeatureFlag, integration_testing::settings::set_window_custom_size}; +use galaxy::{ integration_testing::type_getters::get_launch_config_ui_location, search::SyncDataSource, }; -use warp::{ +use galaxy::{ integration_testing::{self}, search::data_source::Query, }; @@ -104,9 +104,9 @@ pub fn test_with_launch_config() -> Builder { move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: - warp::launch_configs::launch_config::make_mock_single_window_launch_config(), + galaxy::launch_configs::launch_config::make_mock_single_window_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: false, }, @@ -164,10 +164,10 @@ pub fn test_open_launch_config_from_add_tab_menu_legacy() -> Builder { } pub fn test_launch_config_single_child_branch() -> Builder { - use warp::launch_configs::launch_config::{ + use galaxy::launch_configs::launch_config::{ LaunchConfig, PaneMode, PaneTemplateType, SplitDirection, TabTemplate, WindowTemplate, }; - use warpui::actions::StandardAction; + use galaxyui::actions::StandardAction; /// Create a launch config that has a branch with a single child fn create_launch_config() -> LaunchConfig { @@ -201,7 +201,7 @@ pub fn test_launch_config_single_child_branch() -> Builder { .with_action(move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: create_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: false, @@ -233,9 +233,9 @@ pub fn test_open_launch_config_with_custom_size() -> Builder { move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: - warp::launch_configs::launch_config::make_mock_single_window_launch_config(), + galaxy::launch_configs::launch_config::make_mock_single_window_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: false, }, @@ -273,9 +273,9 @@ pub fn test_open_launch_config_in_active_window() -> Builder { move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: - warp::launch_configs::launch_config::make_mock_single_window_launch_config(), + galaxy::launch_configs::launch_config::make_mock_single_window_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: true, }, @@ -294,7 +294,7 @@ pub fn test_open_launch_config_in_active_window() -> Builder { } pub fn test_with_launch_config_with_active_tab_index() -> Builder { - use warp::launch_configs::launch_config::{ + use galaxy::launch_configs::launch_config::{ LaunchConfig, PaneMode, PaneTemplateType, SplitDirection, TabTemplate, WindowTemplate, }; @@ -336,7 +336,7 @@ pub fn test_with_launch_config_with_active_tab_index() -> Builder { move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: create_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: false, @@ -353,7 +353,7 @@ pub fn test_with_launch_config_with_active_tab_index() -> Builder { } pub fn test_with_launch_config_with_active_pane() -> Builder { - use warp::launch_configs::launch_config::{ + use galaxy::launch_configs::launch_config::{ LaunchConfig, PaneMode, PaneTemplateType, SplitDirection, TabTemplate, WindowTemplate, }; @@ -413,7 +413,7 @@ pub fn test_with_launch_config_with_active_pane() -> Builder { move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: create_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: false, @@ -431,7 +431,7 @@ pub fn test_with_launch_config_with_active_pane() -> Builder { } pub fn test_with_launch_config_with_no_active_pane() -> Builder { - use warp::launch_configs::launch_config::{ + use galaxy::launch_configs::launch_config::{ LaunchConfig, PaneMode, PaneTemplateType, SplitDirection, TabTemplate, WindowTemplate, }; @@ -491,7 +491,7 @@ pub fn test_with_launch_config_with_no_active_pane() -> Builder { move |app, _, _| { app.dispatch_global_action( "root_view:open_launch_config", - warp::root_view::OpenLaunchConfigArg { + galaxy::root_view::OpenLaunchConfigArg { launch_config: create_launch_config(), ui_location: get_launch_config_ui_location(), open_in_active_window: false, diff --git a/crates/integration/src/test/notebooks.rs b/crates/integration/src/test/notebooks.rs index f75e5843..9d7f2d71 100644 --- a/crates/integration/src/test/notebooks.rs +++ b/crates/integration/src/test/notebooks.rs @@ -1,4 +1,4 @@ -use warp::{ +use galaxy::{ cmd_or_ctrl_shift, features::FeatureFlag, integration_testing::{ @@ -20,7 +20,7 @@ use warp::{ window::{add_and_save_window, close_window, save_active_window_id}, }, }; -use warpui::integration::TestStep; +use galaxyui::integration::TestStep; use super::{new_builder, Builder}; diff --git a/crates/integration/src/test/pane_restoration.rs b/crates/integration/src/test/pane_restoration.rs index 5a38d862..adeecf1f 100644 --- a/crates/integration/src/test/pane_restoration.rs +++ b/crates/integration/src/test/pane_restoration.rs @@ -3,7 +3,7 @@ use super::{new_builder, Builder}; use std::{collections::HashMap, time::Duration}; -use warp::{ +use galaxy::{ cmd_or_ctrl_shift, features::FeatureFlag, integration_testing::{ @@ -201,23 +201,23 @@ pub fn test_undo_close_grace_period_cleanup() -> Builder { .with_step( new_step_with_default_assertions("Check pane count before undo close") .add_assertion(move |app, window_id| { - let workspace_view = warp::integration_testing::view_getters::workspace_view(app, window_id); + let workspace_view = galaxy::integration_testing::view_getters::workspace_view(app, window_id); let initial_pane_count = workspace_view.read(app, |workspace, ctx| { let pane_group_view = workspace.get_pane_group_view(0).expect("should have tab 0"); pane_group_view.read(ctx, |pane_group, _| pane_group.pane_count()) }); - warpui::async_assert_eq!(initial_pane_count, 1, "Should have exactly one pane after grace period expires - closed pane should be cleaned up") + galaxyui::async_assert_eq!(initial_pane_count, 1, "Should have exactly one pane after grace period expires - closed pane should be cleaned up") }), ) .with_step(trigger_undo_close() .add_assertion(assert_focused_pane_index(0, 0)) // Should still be focused on original pane .add_assertion(move |app, window_id| { // Assert we still only have one pane (no restoration occurred) - let workspace_view = warp::integration_testing::view_getters::workspace_view(app, window_id); + let workspace_view = galaxy::integration_testing::view_getters::workspace_view(app, window_id); workspace_view.read(app, |workspace, ctx| { let pane_group_view = workspace.get_pane_group_view(0).expect("should have tab 0"); let pane_count = pane_group_view.read(ctx, |pane_group, _| pane_group.pane_count()); - warpui::async_assert_eq!(pane_count, 1, "Should still have only one pane after attempted restore - no pane should be restored") + galaxyui::async_assert_eq!(pane_count, 1, "Should still have only one pane after attempted restore - no pane should be restored") }) }), ) @@ -272,7 +272,7 @@ pub fn test_closed_panes_cleared_on_rearrangement() -> Builder { )) .with_step( // Close the middle pane by using a direct operation targeting pane index 1 - warp::integration_testing::pane_group::close_pane_by_index( + galaxy::integration_testing::pane_group::close_pane_by_index( 0, // tab index 1, // pane index - the middle pane ), @@ -280,27 +280,27 @@ pub fn test_closed_panes_cleared_on_rearrangement() -> Builder { .with_step( new_step_with_default_assertions("Verify we have 2 visible panes after closing one") .add_assertion(move |app, window_id| { - let workspace_view = warp::integration_testing::view_getters::workspace_view(app, window_id); + let workspace_view = galaxy::integration_testing::view_getters::workspace_view(app, window_id); workspace_view.read(app, |workspace, ctx| { let pane_group_view = workspace.get_pane_group_view(0).expect("should have tab 0"); let (visible_pane_count, total_pane_count) = pane_group_view.read(ctx, |pane_group, _| { (pane_group.visible_pane_count(), pane_group.pane_count()) }); if visible_pane_count != 2 { - warpui::integration::AssertionOutcome::failure(format!("Should have 2 visible panes after closing one (got {visible_pane_count} visible, {total_pane_count} total)")) + galaxyui::integration::AssertionOutcome::failure(format!("Should have 2 visible panes after closing one (got {visible_pane_count} visible, {total_pane_count} total)")) } else { - warpui::integration::AssertionOutcome::Success + galaxyui::integration::AssertionOutcome::Success } }) }), ) .with_step( // Trigger pane rearrangement by moving panes - warp::integration_testing::pane_group::move_pane_by_indices( + galaxy::integration_testing::pane_group::move_pane_by_indices( 0, 0, 1, - warp::pane_group::tree::Direction::Right, + galaxy::pane_group::tree::Direction::Right, ), ) .with_step( @@ -310,31 +310,31 @@ pub fn test_closed_panes_cleared_on_rearrangement() -> Builder { .with_step( new_step_with_default_assertions("Verify pane was NOT restored - still have same visible panes") .add_assertion(move |app, window_id| { - let workspace_view = warp::integration_testing::view_getters::workspace_view(app, window_id); + let workspace_view = galaxy::integration_testing::view_getters::workspace_view(app, window_id); workspace_view.read(app, |workspace, ctx| { let pane_group_view = workspace.get_pane_group_view(0).expect("should have tab 0"); let visible_pane_count = pane_group_view.read(ctx, |pane_group, _| pane_group.visible_pane_count()); // After rearrangement, we should still have the same visible panes (no restoration) // The exact count might vary based on how the move operation affects the layout if visible_pane_count < 1 { - warpui::integration::AssertionOutcome::failure(format!("Should have at least 1 visible pane after undo close attempt, got {visible_pane_count}")) + galaxyui::integration::AssertionOutcome::failure(format!("Should have at least 1 visible pane after undo close attempt, got {visible_pane_count}")) } else { - warpui::integration::AssertionOutcome::Success + galaxyui::integration::AssertionOutcome::Success } }) }), ) .with_step( trigger_undo_close().add_assertion(move |app, window_id| { - let workspace_view = warp::integration_testing::view_getters::workspace_view(app, window_id); + let workspace_view = galaxy::integration_testing::view_getters::workspace_view(app, window_id); workspace_view.read(app, |workspace, ctx| { let pane_group_view = workspace.get_pane_group_view(0).expect("should have tab 0"); let visible_pane_count = pane_group_view.read(ctx, |pane_group, _| pane_group.visible_pane_count()); // Should still have the same panes, no restoration should occur if visible_pane_count < 1 { - warpui::integration::AssertionOutcome::failure(format!("Should have at least 1 visible pane after second undo close attempt, got {visible_pane_count}")) + galaxyui::integration::AssertionOutcome::failure(format!("Should have at least 1 visible pane after second undo close attempt, got {visible_pane_count}")) } else { - warpui::integration::AssertionOutcome::Success + galaxyui::integration::AssertionOutcome::Success } }) }) @@ -342,7 +342,7 @@ pub fn test_closed_panes_cleared_on_rearrangement() -> Builder { .with_step( new_step_with_default_assertions("Verify remaining pane has expected state") .add_assertion(move |app, window_id| { - let workspace_view = warp::integration_testing::view_getters::workspace_view(app, window_id); + let workspace_view = galaxy::integration_testing::view_getters::workspace_view(app, window_id); let visible_pane_count = workspace_view.read(app, |workspace, ctx| { let pane_group_view = workspace.get_pane_group_view(0).expect("should have tab 0"); pane_group_view.read(ctx, |pane_group, _| pane_group.visible_pane_count()) @@ -367,13 +367,13 @@ pub fn test_closed_panes_cleared_on_rearrangement() -> Builder { 0, 0, window_id, app, ); match (original_result, third_result) { - (warpui::integration::AssertionOutcome::Success, warpui::integration::AssertionOutcome::Success) => { - warpui::integration::AssertionOutcome::Success + (galaxyui::integration::AssertionOutcome::Success, galaxyui::integration::AssertionOutcome::Success) => { + galaxyui::integration::AssertionOutcome::Success } - _ => warpui::integration::AssertionOutcome::failure("Expected to find both original_pane and third_pane content".to_string()) + _ => galaxyui::integration::AssertionOutcome::failure("Expected to find both original_pane and third_pane content".to_string()) } } else { - warpui::integration::AssertionOutcome::failure(format!("Unexpected pane count: {visible_pane_count}")) + galaxyui::integration::AssertionOutcome::failure(format!("Unexpected pane count: {visible_pane_count}")) } }), ) @@ -448,7 +448,7 @@ pub fn test_tab_closes_when_last_visible_pane_closed() -> Builder { .set_pause_on_failure(std::time::Duration::from_secs(30)) .add_assertion(move |app, window_id| { let workspace_view = - warp::integration_testing::view_getters::workspace_view(app, window_id); + galaxy::integration_testing::view_getters::workspace_view(app, window_id); workspace_view.read(app, |workspace, _ctx| { let focused_tab_idx = workspace.active_tab_index(); diff --git a/crates/integration/src/test/preview_config_migration.rs b/crates/integration/src/test/preview_config_migration.rs index 379ceefa..28d11cd0 100644 --- a/crates/integration/src/test/preview_config_migration.rs +++ b/crates/integration/src/test/preview_config_migration.rs @@ -1,7 +1,7 @@ use std::fs; use std::path::PathBuf; -use warpui::integration::{AssertionOutcome, TestStep}; +use galaxyui::integration::{AssertionOutcome, TestStep}; use crate::Builder; @@ -37,7 +37,7 @@ pub fn test_preview_config_dir_migration() -> Builder { // integration channel is Integration, not Preview, so the public // entry point would no-op. let new_dir = home.join(".warp-preview"); - warp::integration_testing::preview_config_migration::run_config_dir_symlink_migration( + galaxy::integration_testing::preview_config_migration::run_config_dir_symlink_migration( &old_dir, &new_dir, ); }) diff --git a/crates/integration/src/test/rules.rs b/crates/integration/src/test/rules.rs index 13128aa0..dd767f61 100644 --- a/crates/integration/src/test/rules.rs +++ b/crates/integration/src/test/rules.rs @@ -1,4 +1,4 @@ -use warp::integration_testing::{ +use galaxy::integration_testing::{ rules::{ assert_rule_count, assert_rule_exists, assert_rule_pane_open, create_a_personal_rule, open_rule_pane, update_rule_content, diff --git a/crates/integration/src/test/secrets.rs b/crates/integration/src/test/secrets.rs index 59d2fc47..428fac9f 100644 --- a/crates/integration/src/test/secrets.rs +++ b/crates/integration/src/test/secrets.rs @@ -1,7 +1,7 @@ -use warp::integration_testing::terminal::{ +use galaxy::integration_testing::terminal::{ initialize_secret_regexes, open_context_menu_for_selected_block, }; -use warp::{ +use galaxy::{ integration_testing::{ clipboard::assert_clipboard_contains_string, secret_redaction::{assert_secret_tooltip_open, assert_secrets_redacted_for_ai}, @@ -17,7 +17,7 @@ use warp::{ settings_view::{PrivacyPageAction, SettingsAction}, terminal::model::{index::Point, terminal_model::WithinModel}, }; -use warpui::{async_assert, integration::TestStep}; +use galaxyui::{async_assert, integration::TestStep}; use crate::util::skip_if_powershell_core_2303; diff --git a/crates/integration/src/test/session_restoration.rs b/crates/integration/src/test/session_restoration.rs index 0fab41a8..0a52499c 100644 --- a/crates/integration/src/test/session_restoration.rs +++ b/crates/integration/src/test/session_restoration.rs @@ -1,5 +1,5 @@ use settings::{RespectUserSyncSetting, SyncToCloud}; -use warp::{ +use galaxy::{ features::FeatureFlag, integration_testing::{ self, @@ -23,7 +23,7 @@ use warp::{ }, workspace::Workspace, }; -use warpui::{ +use galaxyui::{ async_assert_eq, integration::{AssertionOutcome, TestStep}, SingletonEntity, ViewHandle, diff --git a/crates/integration/src/test/settings_file_errors.rs b/crates/integration/src/test/settings_file_errors.rs index ff0f5bbc..cf9284bc 100644 --- a/crates/integration/src/test/settings_file_errors.rs +++ b/crates/integration/src/test/settings_file_errors.rs @@ -6,20 +6,20 @@ //! when the file is fixed. use std::time::Duration; -use warp::{ +use galaxy::{ features::FeatureFlag, integration_testing::{ step::new_step_with_default_assertions, terminal::wait_until_bootstrapped_single_pane_for_tab, view_getters::workspace_view, }, }; -use warpui::{async_assert, integration::TestStep}; +use galaxyui::{async_assert, integration::TestStep}; use super::{new_builder, Builder}; /// Helper: returns the path to the TOML settings file. fn toml_file_path() -> std::path::PathBuf { - warp::settings::user_preferences_toml_file_path() + galaxy::settings::user_preferences_toml_file_path() } // --------------------------------------------------------------------------- diff --git a/crates/integration/src/test/settings_file_hot_reload.rs b/crates/integration/src/test/settings_file_hot_reload.rs index 661fe978..e78f0fe2 100644 --- a/crates/integration/src/test/settings_file_hot_reload.rs +++ b/crates/integration/src/test/settings_file_hot_reload.rs @@ -6,7 +6,7 @@ use settings::Setting as _; use std::time::Duration; -use warp::{ +use galaxy::{ features::FeatureFlag, integration_testing::{ step::new_step_with_default_assertions, @@ -14,13 +14,13 @@ use warp::{ }, settings::FontSettings, }; -use warpui::{async_assert_eq, integration::TestStep, SingletonEntity}; +use galaxyui::{async_assert_eq, integration::TestStep, SingletonEntity}; use super::{new_builder, Builder}; /// Helper: returns the path to the TOML settings file. fn toml_file_path() -> std::path::PathBuf { - warp::settings::user_preferences_toml_file_path() + galaxy::settings::user_preferences_toml_file_path() } /// Verifies the full settings hot-reload pipeline end-to-end: the filesystem diff --git a/crates/integration/src/test/settings_file_migration.rs b/crates/integration/src/test/settings_file_migration.rs index 326338a6..cfe3d6e9 100644 --- a/crates/integration/src/test/settings_file_migration.rs +++ b/crates/integration/src/test/settings_file_migration.rs @@ -4,12 +4,12 @@ use std::collections::HashMap; use settings::Setting as _; -use warp::{ +use galaxy::{ features::FeatureFlag, integration_testing::terminal::wait_until_bootstrapped_single_pane_for_tab, settings::{BlockVisibilitySettings, ScrollSettings}, }; -use warpui::{async_assert, async_assert_eq, integration::AssertionOutcome, SingletonEntity}; +use galaxyui::{async_assert, async_assert_eq, integration::AssertionOutcome, SingletonEntity}; use super::{new_builder, Builder}; @@ -66,7 +66,7 @@ pub fn test_settings_file_migration_from_native_store() -> Builder { .add_named_assertion( "TOML settings file should contain the migrated settings", move |_app, _window_id| { - let toml_path = warp::settings::user_preferences_toml_file_path(); + let toml_path = galaxy::settings::user_preferences_toml_file_path(); let contents = match std::fs::read_to_string(&toml_path) { Ok(c) => c, Err(err) => { diff --git a/crates/integration/src/test/settings_private.rs b/crates/integration/src/test/settings_private.rs index a68a73b3..bda36395 100644 --- a/crates/integration/src/test/settings_private.rs +++ b/crates/integration/src/test/settings_private.rs @@ -6,7 +6,7 @@ use std::collections::HashMap; use settings::Setting as _; -use warp::{ +use galaxy::{ features::FeatureFlag, integration_testing::{ step::new_step_with_default_assertions, @@ -14,21 +14,21 @@ use warp::{ }, settings::{CodeSettings, DebugSettings, FontSettings}, }; -use warpui::{async_assert, async_assert_eq, integration::TestStep, SingletonEntity}; +use galaxyui::{async_assert, async_assert_eq, integration::TestStep, SingletonEntity}; use super::{new_builder, Builder}; /// Helper: read the TOML settings file from disk and return its contents. /// Returns an empty string if the file does not exist. fn read_toml_file() -> String { - let path = warp::settings::user_preferences_toml_file_path(); + let path = galaxy::settings::user_preferences_toml_file_path(); std::fs::read_to_string(path).unwrap_or_default() } /// Helper: read the JSON user preferences file from disk and return its contents. /// Returns an empty string if the file does not exist. fn read_json_prefs_file() -> String { - let path = warp::settings::user_preferences_file_path(); + let path = galaxy::settings::user_preferences_file_path(); std::fs::read_to_string(path).unwrap_or_default() } diff --git a/crates/integration/src/test/ssh.rs b/crates/integration/src/test/ssh.rs index 62d2245f..65f125db 100644 --- a/crates/integration/src/test/ssh.rs +++ b/crates/integration/src/test/ssh.rs @@ -3,7 +3,7 @@ use std::collections::HashMap; use crate::Builder; use regex::Regex; use settings::Setting as _; -use warp::{ +use galaxy::{ features::FeatureFlag, integration_testing::{ step::new_step_with_default_assertions, @@ -28,7 +28,7 @@ use warp::{ shell::ShellType, }, }; -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionOutcome, TestStep}, }; diff --git a/crates/integration/src/test/subshell.rs b/crates/integration/src/test/subshell.rs index b6079fa4..668b8d0c 100644 --- a/crates/integration/src/test/subshell.rs +++ b/crates/integration/src/test/subshell.rs @@ -1,11 +1,11 @@ use std::collections::HashMap; use settings::Setting as _; -use warp::integration_testing::terminal::util::current_shell_starter_and_version; -use warp::integration_testing::view_getters::single_input_view_for_tab; -use warp::root_view::SubshellCommandArg; -use warp::terminal::shell::ShellType; -use warp::{ +use galaxy::integration_testing::terminal::util::current_shell_starter_and_version; +use galaxy::integration_testing::view_getters::single_input_view_for_tab; +use galaxy::root_view::SubshellCommandArg; +use galaxy::terminal::shell::ShellType; +use galaxy::{ integration_testing::{ step::new_step_with_default_assertions, subshell::{ @@ -18,10 +18,10 @@ use warp::{ }, terminal::warpify::settings::AddedSubshellCommands, }; -use warpui::integration::{AssertionOutcome, TestStep}; -use warpui::windowing::state::ApplicationStage; -use warpui::windowing::WindowManager; -use warpui::{async_assert, UpdateModel}; +use galaxyui::integration::{AssertionOutcome, TestStep}; +use galaxyui::windowing::state::ApplicationStage; +use galaxyui::windowing::WindowManager; +use galaxyui::{async_assert, UpdateModel}; use crate::util::skip_if_powershell_core_2303; diff --git a/crates/integration/src/test/sync_inputs.rs b/crates/integration/src/test/sync_inputs.rs index 11c3033c..b357b650 100644 --- a/crates/integration/src/test/sync_inputs.rs +++ b/crates/integration/src/test/sync_inputs.rs @@ -1,4 +1,4 @@ -use warp::{ +use galaxy::{ cmd_or_ctrl_shift, integration_testing::{ step::new_step_with_default_assertions, @@ -12,7 +12,7 @@ use warp::{ }, workspace::WorkspaceAction, }; -use warpui::{async_assert, async_assert_eq, integration::TestStep}; +use galaxyui::{async_assert, async_assert_eq, integration::TestStep}; use crate::util::{get_input_buffer, skip_if_powershell_core_2303}; diff --git a/crates/integration/src/test/typeahead.rs b/crates/integration/src/test/typeahead.rs index 2e4fc59b..f101c0bc 100644 --- a/crates/integration/src/test/typeahead.rs +++ b/crates/integration/src/test/typeahead.rs @@ -1,4 +1,4 @@ -use warp::{ +use galaxy::{ integration_testing::{ agent_mode::AgentViewState, step::new_step_with_default_assertions, @@ -15,7 +15,7 @@ use warp::{ shell::{Shell, ShellType}, }, }; -use warpui::{ +use galaxyui::{ async_assert, async_assert_eq, integration::{AssertionCallback, AssertionOutcome, TestStep}, }; @@ -212,7 +212,7 @@ pub fn test_input_reporting_powershell() -> Builder { pub fn test_background_output() -> Builder { use regex::Regex; use std::{fs::OpenOptions, io::Write, os::unix::prelude::OpenOptionsExt}; - use warp::integration_testing::{ + use galaxy::integration_testing::{ block::assert_background_output, terminal::{execute_command_for_single_terminal_in_tab, util::ExpectedExitStatus}, }; diff --git a/crates/integration/src/test/video_recording.rs b/crates/integration/src/test/video_recording.rs index 3cece519..8e930cfb 100644 --- a/crates/integration/src/test/video_recording.rs +++ b/crates/integration/src/test/video_recording.rs @@ -2,13 +2,13 @@ use std::future::Future; use std::pin::Pin; use pathfinder_geometry::vector::vec2f; -use warpui::event::{Event, ModifiersState}; -use warpui::integration::{TestStep, ARTIFACTS_DIR_ENV_VAR}; +use galaxyui::event::{Event, ModifiersState}; +use galaxyui::integration::{TestStep, ARTIFACTS_DIR_ENV_VAR}; use crate::Builder; -use warp::integration_testing::step::new_step_with_default_assertions; -use warp::integration_testing::terminal::util::ExpectedExitStatus; -use warp::integration_testing::terminal::{ +use galaxy::integration_testing::step::new_step_with_default_assertions; +use galaxy::integration_testing::terminal::util::ExpectedExitStatus; +use galaxy::integration_testing::terminal::{ assert_view_has_text_selection, clear_blocklist_to_remove_bootstrapped_blocks, execute_command_for_single_terminal_in_tab, execute_echo_str, wait_until_bootstrapped_single_pane_for_tab, diff --git a/crates/integration/src/test/websockets.rs b/crates/integration/src/test/websockets.rs index 7fc16d25..b8ca61bd 100644 --- a/crates/integration/src/test/websockets.rs +++ b/crates/integration/src/test/websockets.rs @@ -1,4 +1,4 @@ -use warp::integration_testing::{ +use galaxy::integration_testing::{ self, assertions::{ assert_websocket_has_not_started, assert_websocket_has_started, create_a_personal_workflow, diff --git a/crates/integration/src/test/workflows.rs b/crates/integration/src/test/workflows.rs index 92e4148b..31e35c1d 100644 --- a/crates/integration/src/test/workflows.rs +++ b/crates/integration/src/test/workflows.rs @@ -1,8 +1,8 @@ use std::time::Duration; -use warp::integration_testing::workflow::{ +use galaxy::integration_testing::workflow::{ assert_no_team_workflow_pane_open, assert_open_team_workflow_pane_count_equals, }; -use warp::{ +use galaxy::{ integration_testing::{ self, assertions::{go_offline, go_online, join_a_workspace}, @@ -21,7 +21,7 @@ use warp::{ }, workflows::CategoriesView, }; -use warpui::{async_assert_eq, integration::TestStep, ViewHandle}; +use galaxyui::{async_assert_eq, integration::TestStep, ViewHandle}; use crate::Builder; diff --git a/crates/integration/src/test/workspace.rs b/crates/integration/src/test/workspace.rs index 375eae8e..22b6235d 100644 --- a/crates/integration/src/test/workspace.rs +++ b/crates/integration/src/test/workspace.rs @@ -3,10 +3,10 @@ use std::fs; use settings::Setting as _; -use warp::integration_testing::terminal::assert_long_running_block_executing_for_single_terminal_in_tab; -use warp::integration_testing::view_getters::terminal_view; -use warp::integration_testing::workspace::{assert_tab_count, press_native_modal_button}; -use warp::{ +use galaxy::integration_testing::terminal::assert_long_running_block_executing_for_single_terminal_in_tab; +use galaxy::integration_testing::view_getters::terminal_view; +use galaxy::integration_testing::workspace::{assert_tab_count, press_native_modal_button}; +use galaxy::{ cmd_or_ctrl_shift, integration_testing::{ pane_group::assert_focused_pane_index, @@ -19,7 +19,7 @@ use warp::{ settings::PaneSettings, workspace::NEW_TAB_BUTTON_POSITION_ID, }; -use warpui::{async_assert, integration::TestStep, SingletonEntity}; +use galaxyui::{async_assert, integration::TestStep, SingletonEntity}; use crate::{util::skip_if_powershell_core_2303, Builder}; diff --git a/crates/integration/src/user_defaults.rs b/crates/integration/src/user_defaults.rs index e6c970bc..641c43d4 100644 --- a/crates/integration/src/user_defaults.rs +++ b/crates/integration/src/user_defaults.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use warp::settings::INPUT_MODE; -use warp::terminal::block_list_viewport::InputMode; +use galaxy::settings::INPUT_MODE; +use galaxy::terminal::block_list_viewport::InputMode; /// Returns a user defaults map with the `InputMode` set to `input_mode`. #[allow(dead_code)] diff --git a/crates/integration/src/util.rs b/crates/integration/src/util.rs index 872800ec..8a70e4e5 100644 --- a/crates/integration/src/util.rs +++ b/crates/integration/src/util.rs @@ -12,7 +12,7 @@ use strum_macros::EnumIter; use version_compare::Version; use crate::builder::cargo_target_tmpdir; -use warp::{ +use galaxy::{ integration_testing::{ terminal::util::{ current_shell_starter_and_version, default_histfile_directory, ExpectedOutput, @@ -21,9 +21,9 @@ use warp::{ }, terminal::shell::ShellType, }; -use warpui::{App, WindowId}; +use galaxyui::{App, WindowId}; -use warp::terminal::shell; +use galaxy::terminal::shell; pub fn get_input_buffer( app: &App, diff --git a/crates/integration/tests/common/mod.rs b/crates/integration/tests/common/mod.rs index 90b4bea7..e34d60e5 100644 --- a/crates/integration/tests/common/mod.rs +++ b/crates/integration/tests/common/mod.rs @@ -1,7 +1,7 @@ use command::blocking::Command; use std::env; use std::process::Stdio; -use warpui::integration::RERUN_EXIT_CODE; +use galaxyui::integration::RERUN_EXIT_CODE; const MAX_TEST_RUNS: usize = 10; diff --git a/crates/ipc/Cargo.toml b/crates/ipc/Cargo.toml index 59bba6ec..5690c07f 100644 --- a/crates/ipc/Cargo.toml +++ b/crates/ipc/Cargo.toml @@ -18,7 +18,7 @@ rand.workspace = true serde.workspace = true thiserror.workspace = true uuid.workspace = true -warpui.workspace = true +galaxyui.workspace = true [dev-dependencies] parking_lot.workspace = true diff --git a/crates/ipc/src/client.rs b/crates/ipc/src/client.rs index 385be79c..4ae4925e 100644 --- a/crates/ipc/src/client.rs +++ b/crates/ipc/src/client.rs @@ -1,7 +1,7 @@ use std::{collections::HashMap, sync::Arc}; use futures::{channel::oneshot, future::FutureExt, io::BufReader, AsyncRead, AsyncWrite}; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use crate::{platform::client::connect_client, protocol::Request}; diff --git a/crates/ipc/src/native.rs b/crates/ipc/src/native.rs index 77b3d394..befb6383 100644 --- a/crates/ipc/src/native.rs +++ b/crates/ipc/src/native.rs @@ -44,7 +44,7 @@ pub(crate) mod server { impl ConnectionListenerImpl { pub fn new(connection_address: ConnectionAddress) -> Result { - let listener = warpui::r#async::block_on( + let listener = galaxyui::r#async::block_on( async move { LocalSocketListener::bind(connection_address.to_string()) }.compat(), ) .map_err(|e| ServerError::Initialization(InitializationError::Io(e)))?; diff --git a/crates/ipc/src/server.rs b/crates/ipc/src/server.rs index ab65e9d2..cebe0711 100644 --- a/crates/ipc/src/server.rs +++ b/crates/ipc/src/server.rs @@ -3,7 +3,7 @@ use std::{collections::HashMap, sync::Arc}; use async_channel::{Receiver, Sender}; use async_trait::async_trait; use futures::{io::BufReader, AsyncRead, AsyncWrite}; -use warpui::r#async::executor::{Background, BackgroundTask}; +use galaxyui::r#async::executor::{Background, BackgroundTask}; use crate::{ platform::server::{ConnectionImpl, ConnectionListenerImpl}, diff --git a/crates/isolation_platform/Cargo.toml b/crates/isolation_platform/Cargo.toml index 69b7e52a..d14ac40c 100644 --- a/crates/isolation_platform/Cargo.toml +++ b/crates/isolation_platform/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_isolation_platform" +name = "galaxy_isolation_platform" description = "Utilities for running Warp within an isolated sandbox, such as a Docker container or Github Actions" version = "0.1.0" authors.workspace = true @@ -16,4 +16,4 @@ serde.workspace = true serde_json.workspace = true thiserror.workspace = true command.workspace = true -warp_core.workspace = true +galaxy_core.workspace = true diff --git a/crates/isolation_platform/src/lib.rs b/crates/isolation_platform/src/lib.rs index 6b9b6cc5..a5c58074 100644 --- a/crates/isolation_platform/src/lib.rs +++ b/crates/isolation_platform/src/lib.rs @@ -2,7 +2,7 @@ use std::{io, process::ExitStatus, sync::OnceLock, time::Duration}; use chrono::{DateTime, Utc}; use serde::Serialize; -use warp_core::channel::{Channel, ChannelState}; +use galaxy_core::channel::{Channel, ChannelState}; #[cfg(not(target_family = "wasm"))] mod docker; diff --git a/crates/isolation_platform/src/namespace.rs b/crates/isolation_platform/src/namespace.rs index 1bb07e46..312633dd 100644 --- a/crates/isolation_platform/src/namespace.rs +++ b/crates/isolation_platform/src/namespace.rs @@ -3,7 +3,7 @@ use std::{env, fs, time::Duration}; use base64::prelude::{BASE64_URL_SAFE_NO_PAD, Engine as _}; use chrono::{DateTime, Utc}; use command::r#async::Command; -use warp_core::channel::ChannelState; +use galaxy_core::channel::ChannelState; use crate::{IsolationPlatformError, WorkloadToken}; diff --git a/crates/jsonrpc/Cargo.toml b/crates/jsonrpc/Cargo.toml index 872a59c5..7fe8f53b 100644 --- a/crates/jsonrpc/Cargo.toml +++ b/crates/jsonrpc/Cargo.toml @@ -13,4 +13,4 @@ futures = { workspace = true } log = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } -warpui = { workspace = true } +galaxyui = { workspace = true } diff --git a/crates/jsonrpc/src/service.rs b/crates/jsonrpc/src/service.rs index 6f19d98e..26cb8517 100644 --- a/crates/jsonrpc/src/service.rs +++ b/crates/jsonrpc/src/service.rs @@ -11,7 +11,7 @@ use anyhow::{anyhow, Result}; use futures::{channel::oneshot, lock::Mutex as AsyncMutex}; use serde::{Deserialize, Serialize}; use serde_json::{value::RawValue, Value}; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; pub const JSON_RPC_VERSION: &str = "2.0"; diff --git a/crates/jsonrpc/src/service_tests.rs b/crates/jsonrpc/src/service_tests.rs index 50ea72a5..669fcf06 100644 --- a/crates/jsonrpc/src/service_tests.rs +++ b/crates/jsonrpc/src/service_tests.rs @@ -4,7 +4,7 @@ mod service_tests { use async_trait::async_trait; use std::sync::Arc; use std::sync::Mutex; - use warpui::r#async::executor::Background; + use galaxyui::r#async::executor::Background; #[derive(Debug, Clone)] struct MockTransport { diff --git a/crates/languages/Cargo.toml b/crates/languages/Cargo.toml index a8baa302..c3520f33 100644 --- a/crates/languages/Cargo.toml +++ b/crates/languages/Cargo.toml @@ -11,4 +11,4 @@ serde_yaml.workspace = true rust-embed.workspace = true arborium.workspace = true lazy_static.workspace = true -warp_editor = { path = "../editor" } +galaxy_editor = { path = "../editor" } diff --git a/crates/languages/src/lib.rs b/crates/languages/src/lib.rs index 7089d036..8e0fd869 100644 --- a/crates/languages/src/lib.rs +++ b/crates/languages/src/lib.rs @@ -9,7 +9,7 @@ use arborium::tree_sitter::{Language as ParserGrammar, Query}; use lazy_static::lazy_static; use rust_embed::RustEmbed; use serde::{Deserialize, Serialize}; -use warp_editor::content::text::IndentUnit; +use galaxy_editor::content::text::IndentUnit; #[derive(RustEmbed)] #[folder = "grammars"] diff --git a/crates/lsp/Cargo.toml b/crates/lsp/Cargo.toml index 0a43760b..962e5d39 100644 --- a/crates/lsp/Cargo.toml +++ b/crates/lsp/Cargo.toml @@ -30,9 +30,9 @@ serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } strum = { workspace = true } strum_macros = { workspace = true } -warp_core = { workspace = true } -warp_util.workspace = true -warpui.workspace = true +galaxy_core = { workspace = true } +galaxy_util.workspace = true +galaxyui.workspace = true instant.workspace = true http_client = { workspace = true } cfg-if.workspace = true diff --git a/crates/lsp/examples/rust-lsp/main.rs b/crates/lsp/examples/rust-lsp/main.rs index a76e01fa..279bbf2f 100644 --- a/crates/lsp/examples/rust-lsp/main.rs +++ b/crates/lsp/examples/rust-lsp/main.rs @@ -20,7 +20,7 @@ use lsp::{ LspServiceInitializationResult, }; use lsp_types::Position; -use warpui::r#async::{executor::Background, Timer}; +use galaxyui::r#async::{executor::Background, Timer}; fn init_logging() { let mut base_logger = env_logger::builder(); @@ -114,7 +114,7 @@ fn main() -> anyhow::Result<()> { } }); - warpui::r#async::block_on(task)?; + galaxyui::r#async::block_on(task)?; Ok(()) } diff --git a/crates/lsp/src/install.rs b/crates/lsp/src/install.rs index 89ae2509..1701e9b2 100644 --- a/crates/lsp/src/install.rs +++ b/crates/lsp/src/install.rs @@ -199,7 +199,7 @@ pub async fn install_from_github( // Create the destination directory: {data_dir}/{server_name}/{version} // If it already exists, remove it first to ensure a clean installation - let install_dir = warp_core::paths::data_dir() + let install_dir = galaxy_core::paths::data_dir() .join(server_name) .join(&metadata.version); if install_dir.exists() { diff --git a/crates/lsp/src/lib.rs b/crates/lsp/src/lib.rs index 72685283..57d4fc8c 100644 --- a/crates/lsp/src/lib.rs +++ b/crates/lsp/src/lib.rs @@ -56,8 +56,8 @@ use anyhow::Result; #[cfg(not(target_arch = "wasm32"))] use simple_logger::SimpleLogger; use std::sync::Arc; -use warpui::r#async::executor::Background; -use warpui::AppContext; +use galaxyui::r#async::executor::Background; +use galaxyui::AppContext; pub struct LspServiceInitializationResult { pub service: LspService, diff --git a/crates/lsp/src/manager.rs b/crates/lsp/src/manager.rs index 5ce43af8..ce67e8ee 100644 --- a/crates/lsp/src/manager.rs +++ b/crates/lsp/src/manager.rs @@ -7,7 +7,7 @@ use crate::{ config::LanguageId, model::LanguageServerId, supported_servers::LSPServerType, LspEvent, LspServerConfig, LspServerModel, }; -use warpui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle, SingletonEntity}; #[derive(Debug)] pub enum LspManagerModelEvent { diff --git a/crates/lsp/src/model.rs b/crates/lsp/src/model.rs index 783bce3d..03ed52a0 100644 --- a/crates/lsp/src/model.rs +++ b/crates/lsp/src/model.rs @@ -31,10 +31,10 @@ use jsonrpc::ServerNotificationEvent; #[cfg(not(target_arch = "wasm32"))] use simple_logger::manager::LogManager; #[cfg(not(target_arch = "wasm32"))] -use warp_core::features::FeatureFlag; +use galaxy_core::features::FeatureFlag; #[cfg(not(target_arch = "wasm32"))] -use warpui::SingletonEntity; -use warpui::{r#async::executor::Background, Entity, ModelContext}; +use galaxyui::SingletonEntity; +use galaxyui::{r#async::executor::Background, Entity, ModelContext}; static NEXT_LANGUAGE_SERVER_ID: AtomicUsize = AtomicUsize::new(0); diff --git a/crates/lsp/src/server_repo_watcher.rs b/crates/lsp/src/server_repo_watcher.rs index c43f65b6..eb603632 100644 --- a/crates/lsp/src/server_repo_watcher.rs +++ b/crates/lsp/src/server_repo_watcher.rs @@ -6,8 +6,8 @@ use repo_metadata::{ repository::{RepositorySubscriber, SubscriberId}, DirectoryWatcher, Repository, RepositoryUpdate, }; -use warp_util::standardized_path::StandardizedPath; -use warpui::{ModelContext, SingletonEntity, WeakModelHandle}; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::{ModelContext, SingletonEntity, WeakModelHandle}; use crate::{model::LspServerModel, types::WatchedFileChangeEvent, LspServerConfig}; diff --git a/crates/lsp/src/servers/clangd.rs b/crates/lsp/src/servers/clangd.rs index 9b6ca14d..cc6ad385 100644 --- a/crates/lsp/src/servers/clangd.rs +++ b/crates/lsp/src/servers/clangd.rs @@ -29,7 +29,7 @@ impl ClangdCandidate { #[cfg(feature = "local_fs")] pub async fn find_installed_binary_in_data_dir() -> Option { - let install_root = warp_core::paths::data_dir().join(SERVER_NAME); + let install_root = galaxy_core::paths::data_dir().join(SERVER_NAME); if !install_root.is_dir() { return None; } diff --git a/crates/lsp/src/servers/pyright.rs b/crates/lsp/src/servers/pyright.rs index de827ef5..1696792e 100644 --- a/crates/lsp/src/servers/pyright.rs +++ b/crates/lsp/src/servers/pyright.rs @@ -47,7 +47,7 @@ impl PyrightCandidate { pub async fn find_installed_binary_config( path_env_var: Option<&str>, ) -> Option { - let install_dir = warp_core::paths::data_dir().join("pyright"); + let install_dir = galaxy_core::paths::data_dir().join("pyright"); let langserver_js = install_dir.join(Self::LANGSERVER_JS_PATH); // Check if the JS file exists @@ -137,7 +137,7 @@ impl LanguageServerCandidate for PyrightCandidate { ) -> anyhow::Result<()> { log::info!("Installing pyright version {}", metadata.version); - let install_dir = warp_core::paths::data_dir().join("pyright"); + let install_dir = galaxy_core::paths::data_dir().join("pyright"); // Create the installation directory async_fs::create_dir_all(&install_dir) diff --git a/crates/lsp/src/servers/rust.rs b/crates/lsp/src/servers/rust.rs index d4dc3e8d..f45a0b55 100644 --- a/crates/lsp/src/servers/rust.rs +++ b/crates/lsp/src/servers/rust.rs @@ -70,7 +70,7 @@ impl RustAnalyzerCandidate { pub async fn find_installed_binary_in_data_dir() -> Option { use tokio::process::Command; - let install_dir = warp_core::paths::data_dir().join(SERVER_NAME); + let install_dir = galaxy_core::paths::data_dir().join(SERVER_NAME); if !install_dir.exists() { return None; } diff --git a/crates/lsp/src/servers/typescript_language_server.rs b/crates/lsp/src/servers/typescript_language_server.rs index 4f620d16..b751b9f8 100644 --- a/crates/lsp/src/servers/typescript_language_server.rs +++ b/crates/lsp/src/servers/typescript_language_server.rs @@ -41,7 +41,7 @@ impl TypeScriptLanguageServerCandidate { pub async fn find_installed_binary_config( path_env_var: Option<&str>, ) -> Option { - let install_dir = warp_core::paths::data_dir().join("typescript-language-server"); + let install_dir = galaxy_core::paths::data_dir().join("typescript-language-server"); // Check for the JS file - prefer new path (cli.mjs) over old path (cli.js) let server_js = { @@ -140,7 +140,7 @@ impl LanguageServerCandidate for TypeScriptLanguageServerCandidate { metadata.version ); - let install_dir = warp_core::paths::data_dir().join("typescript-language-server"); + let install_dir = galaxy_core::paths::data_dir().join("typescript-language-server"); // Create the installation directory async_fs::create_dir_all(&install_dir) diff --git a/crates/lsp/src/service.rs b/crates/lsp/src/service.rs index 167dcd1f..b7e26f16 100644 --- a/crates/lsp/src/service.rs +++ b/crates/lsp/src/service.rs @@ -29,7 +29,7 @@ use lsp_types::{ use serde_json::Value; #[cfg(not(target_arch = "wasm32"))] use simple_logger::SimpleLogger; -use warp_util::on_cancel::OnCancelFutureExt; +use galaxy_util::on_cancel::OnCancelFutureExt; /// Tracks the sync state for an open document. #[derive(Debug, Clone)] @@ -360,7 +360,7 @@ impl WatchedFilesRegistry { return false; }; - let path_relative = warp_util::path::normalize_relative_path_for_glob(path_relative); + let path_relative = galaxy_util::path::normalize_relative_path_for_glob(path_relative); self.registrations .values() @@ -418,7 +418,7 @@ impl WatchedFilesRegistry { }; // Normalize to forward slashes so glob patterns and event paths are comparable across platforms (esp. Windows). - let prefix = warp_util::path::normalize_relative_path_for_glob(base_relative); + let prefix = galaxy_util::path::normalize_relative_path_for_glob(base_relative); if prefix.is_empty() { Some(pattern) diff --git a/crates/lsp/src/transport.rs b/crates/lsp/src/transport.rs index f0d7da46..8f79da64 100644 --- a/crates/lsp/src/transport.rs +++ b/crates/lsp/src/transport.rs @@ -10,7 +10,7 @@ use futures::{ }; use jsonrpc::Transport; use simple_logger::SimpleLogger; -use warpui::r#async::{ +use galaxyui::r#async::{ executor::{Background, BackgroundTask}, Timer, }; diff --git a/crates/managed_secrets/Cargo.toml b/crates/managed_secrets/Cargo.toml index 2bf7c18b..105a2e4b 100644 --- a/crates/managed_secrets/Cargo.toml +++ b/crates/managed_secrets/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "warp_managed_secrets" +name = "galaxy_managed_secrets" version = "0.1.0" authors.workspace = true publish.workspace = true @@ -20,11 +20,11 @@ tink-core = "0.3" tink-proto = "0.3" tink-hybrid = "0.3" zeroize = "1.8" -warpui.workspace = true -warp_core.workspace = true -warp_graphql.workspace = true +galaxyui.workspace = true +galaxy_core.workspace = true +galaxy_graphql.workspace = true vec1.workspace = true -warp_isolation_platform.workspace = true +galaxy_isolation_platform.workspace = true # Pure-Rust HPKE implementation (RFC 9180). hpke = { version = "0.13", default-features = false, features = ["alloc", "x25519"] } diff --git a/crates/managed_secrets/src/client.rs b/crates/managed_secrets/src/client.rs index 87d2c504..159d9c96 100644 --- a/crates/managed_secrets/src/client.rs +++ b/crates/managed_secrets/src/client.rs @@ -7,9 +7,9 @@ use anyhow::Result; use chrono::{DateTime, Utc}; use vec1::Vec1; -use warp_graphql::managed_secrets::{ManagedSecret, ManagedSecretConfig, ManagedSecretType}; +use galaxy_graphql::managed_secrets::{ManagedSecret, ManagedSecretConfig, ManagedSecretType}; -pub use warp_graphql::queries::task_secrets::ManagedSecretValue; +pub use galaxy_graphql::queries::task_secrets::ManagedSecretValue; /// An OIDC identity token issued for a task workload. #[derive(Debug, Clone)] diff --git a/crates/managed_secrets/src/envelope.rs b/crates/managed_secrets/src/envelope.rs index cb067931..fb57761f 100644 --- a/crates/managed_secrets/src/envelope.rs +++ b/crates/managed_secrets/src/envelope.rs @@ -1,7 +1,7 @@ use std::{io, sync::Once}; use base64::Engine; -use warp_graphql::managed_secrets::ManagedSecretType; +use galaxy_graphql::managed_secrets::ManagedSecretType; use crate::secret_value::ManagedSecretValue; diff --git a/crates/managed_secrets/src/gcp.rs b/crates/managed_secrets/src/gcp.rs index 9720379d..fae260c4 100644 --- a/crates/managed_secrets/src/gcp.rs +++ b/crates/managed_secrets/src/gcp.rs @@ -9,7 +9,7 @@ use std::{ use serde::{Deserialize, Serialize}; use serde_json::{Value, json}; use tempfile::NamedTempFile; -use warp_core::safe_debug; +use galaxy_core::safe_debug; use crate::client::TaskIdentityToken; diff --git a/crates/managed_secrets/src/manager.rs b/crates/managed_secrets/src/manager.rs index 08d8df82..48e5d2c1 100644 --- a/crates/managed_secrets/src/manager.rs +++ b/crates/managed_secrets/src/manager.rs @@ -2,9 +2,9 @@ use std::{collections::HashMap, future::Future, sync::Arc, time::Duration}; use vec1::vec1; -use warp_core::features::FeatureFlag; -use warp_graphql::managed_secrets::ManagedSecret; -use warpui::{Entity, SingletonEntity}; +use galaxy_core::features::FeatureFlag; +use galaxy_graphql::managed_secrets::ManagedSecret; +use galaxyui::{Entity, SingletonEntity}; use crate::{ ManagedSecretValue, @@ -15,7 +15,7 @@ use crate::{ envelope::UploadKey, gcp::{self, GcpWorkloadIdentityFederationError, GcpWorkloadIdentityFederationToken}, }; -use warp_graphql::queries::task_secrets::ManagedSecretValue as GqlManagedSecretValue; +use galaxy_graphql::queries::task_secrets::ManagedSecretValue as GqlManagedSecretValue; /// Singleton model for working with Warp-managed secrets. pub struct ManagedSecretManager { @@ -165,7 +165,7 @@ impl ManagedSecretManager { async move { // We only need the workload token for the duration of the request. let workload_token = - warp_isolation_platform::issue_workload_token(Some(Duration::from_mins(5))).await?; + galaxy_isolation_platform::issue_workload_token(Some(Duration::from_mins(5))).await?; let gql_secrets = client .get_task_secrets(task_id, workload_token.token) .await?; diff --git a/crates/managed_secrets/src/secret_value.rs b/crates/managed_secrets/src/secret_value.rs index 182c2476..76886a56 100644 --- a/crates/managed_secrets/src/secret_value.rs +++ b/crates/managed_secrets/src/secret_value.rs @@ -1,7 +1,7 @@ use std::fmt; use serde::Serialize; -use warp_graphql::managed_secrets::ManagedSecretType; +use galaxy_graphql::managed_secrets::ManagedSecretType; #[derive(Serialize)] #[serde(untagged)] diff --git a/crates/managed_secrets_wasm/Cargo.toml b/crates/managed_secrets_wasm/Cargo.toml index f3ed6608..30aa7491 100644 --- a/crates/managed_secrets_wasm/Cargo.toml +++ b/crates/managed_secrets_wasm/Cargo.toml @@ -10,5 +10,5 @@ edition = "2024" crate-type = ["cdylib"] [dependencies] -warp_managed_secrets.workspace = true +galaxy_managed_secrets.workspace = true wasm-bindgen.workspace = true diff --git a/crates/managed_secrets_wasm/src/lib.rs b/crates/managed_secrets_wasm/src/lib.rs index 36cbcb39..57c29c74 100644 --- a/crates/managed_secrets_wasm/src/lib.rs +++ b/crates/managed_secrets_wasm/src/lib.rs @@ -1,4 +1,4 @@ -use warp_managed_secrets::{ManagedSecretValue, UploadKey, init_envelope}; +use galaxy_managed_secrets::{ManagedSecretValue, UploadKey, init_envelope}; use wasm_bindgen::prelude::*; /// Called once when the WASM module is instantiated. diff --git a/crates/markdown_parser/src/lib.rs b/crates/markdown_parser/src/lib.rs index f2bc1bc6..2a6b77fe 100644 --- a/crates/markdown_parser/src/lib.rs +++ b/crates/markdown_parser/src/lib.rs @@ -16,11 +16,11 @@ use serde_yaml::Mapping; use weight::CustomWeight; /// Trait for an "action" that can be dispatched via a hyperlink click handler. -/// This purposefully shadows the `Action` trait from `warpui`. +/// This purposefully shadows the `Action` trait from `galaxyui`. /// -/// Since `warpui` depends on this crate, we can't depend on the `warpui::Action` trait directly. +/// Since `galaxyui` depends on this crate, we can't depend on the `galaxyui::Action` trait directly. /// Instead, we create a new trait with a blanket implementation that implicitly results -/// in any `warpui::Action` implementing this `Action`. +/// in any `galaxyui::Action` implementing this `Action`. pub trait Action: Any + Debug + Send + Sync { fn as_any(&self) -> &dyn Any; } diff --git a/crates/node_runtime/Cargo.toml b/crates/node_runtime/Cargo.toml index 2a4e9d3c..8cd16ecc 100644 --- a/crates/node_runtime/Cargo.toml +++ b/crates/node_runtime/Cargo.toml @@ -18,7 +18,7 @@ http_client = { workspace = true } semver = "1.0" serde = { workspace = true } serde_json = { workspace = true } -warp_core = { workspace = true } +galaxy_core = { workspace = true } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] async-fs = { workspace = true } diff --git a/crates/node_runtime/src/lib.rs b/crates/node_runtime/src/lib.rs index fcc12aca..88a7c2c4 100644 --- a/crates/node_runtime/src/lib.rs +++ b/crates/node_runtime/src/lib.rs @@ -137,7 +137,7 @@ impl NodeDistribution { pub fn node_installation_dir() -> Result { let dist = NodeDistribution::current()?; let folder_name = dist.folder_name(NODE_VERSION); - Ok(warp_core::paths::data_dir().join("node").join(folder_name)) + Ok(galaxy_core::paths::data_dir().join("node").join(folder_name)) } /// Returns the path to the installed node binary. @@ -175,7 +175,7 @@ pub async fn install_npm(client: &http_client::Client) -> Result { let version = NODE_VERSION; let folder_name = dist.folder_name(version); - let node_containing_dir = warp_core::paths::data_dir().join("node"); + let node_containing_dir = galaxy_core::paths::data_dir().join("node"); let node_dir = node_containing_dir.join(&folder_name); let node_binary = node_dir.join(NODE_BINARY_PATH); diff --git a/crates/onboarding/Cargo.toml b/crates/onboarding/Cargo.toml index 1fd0e90c..083c7cbb 100644 --- a/crates/onboarding/Cargo.toml +++ b/crates/onboarding/Cargo.toml @@ -12,7 +12,7 @@ path = "src/bin/main.rs" required-features = ["bin"] [features] -bin = ["warpui/log_named_telemetry_events"] +bin = ["galaxyui/log_named_telemetry_events"] [dependencies] ai.workspace = true @@ -29,6 +29,6 @@ serde_json.workspace = true strum.workspace = true strum_macros.workspace = true uuid.workspace = true -warp_core = { workspace = true } -warpui.workspace = true -warp_logging.workspace = true +galaxy_core = { workspace = true } +galaxyui.workspace = true +galaxy_logging.workspace = true diff --git a/crates/onboarding/examples/callout.rs b/crates/onboarding/examples/callout.rs index fdda0c2d..591bba41 100644 --- a/crates/onboarding/examples/callout.rs +++ b/crates/onboarding/examples/callout.rs @@ -6,13 +6,13 @@ use onboarding::components::onboarding_callout::{ use rust_embed::RustEmbed; use std::borrow::Cow; use ui_components::Component as _; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::{AnsiColor, AnsiColors, Details, Fill, TerminalColors, WarpTheme}; -use warpui::color::ColorU; -use warpui::elements::{Rect, Stack}; -use warpui::fonts::{Cache, FamilyId, Weight}; -use warpui::platform; -use warpui::{prelude::*, AddWindowOptions, AssetProvider, ModelContext}; +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::{AnsiColor, AnsiColors, Details, Fill, TerminalColors, WarpTheme}; +use galaxyui::color::ColorU; +use galaxyui::elements::{Rect, Stack}; +use galaxyui::fonts::{Cache, FamilyId, Weight}; +use galaxyui::platform; +use galaxyui::{prelude::*, AddWindowOptions, AssetProvider, ModelContext}; #[derive(Clone, Copy, RustEmbed)] #[folder = "../../app/assets"] diff --git a/crates/onboarding/examples/callout_flow.rs b/crates/onboarding/examples/callout_flow.rs index f886ab67..e94eb3d7 100644 --- a/crates/onboarding/examples/callout_flow.rs +++ b/crates/onboarding/examples/callout_flow.rs @@ -7,12 +7,12 @@ use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use rust_embed::RustEmbed; use std::borrow::Cow; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::{AnsiColor, AnsiColors, Details, Fill, TerminalColors, WarpTheme}; -use warpui::fonts::{Cache, FamilyId, Weight}; -use warpui::platform; -use warpui::prelude::CrossAxisAlignment; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::{AnsiColor, AnsiColors, Details, Fill, TerminalColors, WarpTheme}; +use galaxyui::fonts::{Cache, FamilyId, Weight}; +use galaxyui::platform; +use galaxyui::prelude::CrossAxisAlignment; +use galaxyui::{ elements::{ ChildAnchor, ChildView, ConstrainedBox, Container, Flex, MainAxisAlignment, MainAxisSize, OffsetPositioning, ParentElement, PositionedElementAnchor, PositionedElementOffsetBounds, @@ -172,7 +172,7 @@ impl TypedActionView for OnboardingExampleView { fn main() -> Result<()> { // Initialize logging for the onboarding binary. - warp_logging::init(warp_logging::LogConfig { + galaxy_logging::init(galaxy_logging::LogConfig { is_cli: false, log_destination: None, })?; diff --git a/crates/onboarding/src/agent_onboarding_view.rs b/crates/onboarding/src/agent_onboarding_view.rs index 021bcc37..cf5f43a0 100644 --- a/crates/onboarding/src/agent_onboarding_view.rs +++ b/crates/onboarding/src/agent_onboarding_view.rs @@ -11,11 +11,11 @@ use crate::telemetry::OnboardingEvent; use ai::LLMId; use instant::Instant; use std::time::Duration; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warpui::assets::asset_cache::AssetSource; -use warpui::image_cache::ImageType; -use warpui::windowing::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::image_cache::ImageType; +use galaxyui::windowing::{ state::{ApplicationStage, StateEvent}, WindowManager, }; @@ -24,9 +24,9 @@ const APP_BECAME_ACTIVE_DEBOUNCE: Duration = Duration::from_secs(15); use pathfinder_geometry::vector::vec2f; use ui_components::{button, Component as _, Options as _}; -use warp_core::ui::{appearance::Appearance, theme::WarpTheme}; -use warpui::elements::Rect; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::WarpTheme}; +use galaxyui::elements::Rect; +use galaxyui::{ elements::{ CacheOption, ChildAnchor, Container, Empty, Image, OffsetPositioning, ParentAnchor, ParentElement, ParentOffsetBounds, Shrinkable, Stack, @@ -339,7 +339,7 @@ impl AgentOnboardingView { /// Eagerly loads all onboarding slide images into the asset cache /// so they display instantly when the user navigates between slides. fn preload_onboarding_images(ctx: &mut ViewContext) { - let asset_cache = warpui::assets::asset_cache::AssetCache::as_ref(ctx); + let asset_cache = galaxyui::assets::asset_cache::AssetCache::as_ref(ctx); // Preload the shared background image used on all right panels. asset_cache.load_asset::(AssetSource::Bundled { path: crate::slides::layout::ONBOARDING_BG_PATH, diff --git a/crates/onboarding/src/bin/main.rs b/crates/onboarding/src/bin/main.rs index 8bae20e5..ca08971a 100644 --- a/crates/onboarding/src/bin/main.rs +++ b/crates/onboarding/src/bin/main.rs @@ -9,12 +9,12 @@ use onboarding::{ use pathfinder_color::ColorU; use rust_embed::RustEmbed; use std::borrow::Cow; -use warp_core::ui::icons::Icon; -use warp_core::ui::theme::{AnsiColor, AnsiColors, Details, Fill, Image, TerminalColors}; -use warp_core::ui::{appearance::Appearance, theme::WarpTheme}; -use warpui::assets::asset_cache::AssetSource; -use warpui::platform; -use warpui::{ +use galaxy_core::ui::icons::Icon; +use galaxy_core::ui::theme::{AnsiColor, AnsiColors, Details, Fill, Image, TerminalColors}; +use galaxy_core::ui::{appearance::Appearance, theme::WarpTheme}; +use galaxyui::assets::asset_cache::AssetSource; +use galaxyui::platform; +use galaxyui::{ elements::{ Container, CrossAxisAlignment, Flex, MainAxisAlignment, MainAxisSize, ParentElement, }, @@ -41,7 +41,7 @@ impl AssetProvider for Assets { fn main() -> Result<()> { // Initialize logging for the onboarding binary. - warp_logging::init(warp_logging::LogConfig { + galaxy_logging::init(galaxy_logging::LogConfig { is_cli: false, log_destination: None, })?; @@ -266,7 +266,7 @@ impl View for OnboardingMainView { } } - fn on_focus(&mut self, focus_ctx: &warpui::FocusContext, ctx: &mut ViewContext) { + fn on_focus(&mut self, focus_ctx: &galaxyui::FocusContext, ctx: &mut ViewContext) { if let OnboardingMainState::Onboarding(view) = &self.state { if focus_ctx.is_self_focused() { ctx.focus(view); diff --git a/crates/onboarding/src/callout/mod.rs b/crates/onboarding/src/callout/mod.rs index 4b91c78e..fc15705f 100644 --- a/crates/onboarding/src/callout/mod.rs +++ b/crates/onboarding/src/callout/mod.rs @@ -4,6 +4,6 @@ mod view; pub use model::{FinalState, OnboardingQuery}; pub use view::{OnboardingCalloutView, OnboardingCalloutViewEvent, OnboardingKeybindings}; -pub fn init(app: &mut warpui::AppContext) { +pub fn init(app: &mut galaxyui::AppContext) { view::init(app); } diff --git a/crates/onboarding/src/callout/model.rs b/crates/onboarding/src/callout/model.rs index d9af6458..5619891e 100644 --- a/crates/onboarding/src/callout/model.rs +++ b/crates/onboarding/src/callout/model.rs @@ -1,7 +1,7 @@ use crate::telemetry::OnboardingEvent; use crate::OnboardingIntention; -use warp_core::send_telemetry_from_ctx; -use warpui::{Entity, ModelContext}; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::{Entity, ModelContext}; #[derive(Clone, Copy, Debug, PartialEq, Eq)] pub enum FinalState { diff --git a/crates/onboarding/src/callout/view.rs b/crates/onboarding/src/callout/view.rs index d5d4b520..8a365c7e 100644 --- a/crates/onboarding/src/callout/view.rs +++ b/crates/onboarding/src/callout/view.rs @@ -1,6 +1,6 @@ use ui_components::Component; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::Empty, keymap::{macros::*, FixedBinding, Keystroke}, AppContext, Element, Entity, EventContext, ModelHandle, SingletonEntity, TypedActionView, View, diff --git a/crates/onboarding/src/components/onboarding_callout.rs b/crates/onboarding/src/components/onboarding_callout.rs index 6418f67a..c10e7363 100644 --- a/crates/onboarding/src/components/onboarding_callout.rs +++ b/crates/onboarding/src/components/onboarding_callout.rs @@ -5,12 +5,12 @@ use pathfinder_geometry::vector::vec2f; use ui_components::{ button, button::Button as ButtonComponent, Component, MouseEventHandler, Options as _, }; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, color::{coloru_with_opacity, contrast::relative_luminance}, theme::{phenomenon::PhenomenonStyle, Fill}, }; -use warpui::{ +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, MainAxisAlignment, MainAxisSize, MouseStateHandle, ParentElement, Radius, Rect, diff --git a/crates/onboarding/src/lib.rs b/crates/onboarding/src/lib.rs index 00016d98..e8f6ff73 100644 --- a/crates/onboarding/src/lib.rs +++ b/crates/onboarding/src/lib.rs @@ -76,7 +76,7 @@ pub use model::{OnboardingAuthState, SelectedSettings, UICustomizationSettings}; pub use slides::ProjectOnboardingSettings; pub use telemetry::OnboardingEvent; -pub fn init(app: &mut warpui::AppContext) { +pub fn init(app: &mut galaxyui::AppContext) { agent_onboarding_view::init(app); callout::init(app); } diff --git a/crates/onboarding/src/model.rs b/crates/onboarding/src/model.rs index 8eb073f3..087398d3 100644 --- a/crates/onboarding/src/model.rs +++ b/crates/onboarding/src/model.rs @@ -4,8 +4,8 @@ use crate::slides::{ use crate::telemetry::OnboardingEvent; use crate::OnboardingIntention; use ai::LLMId; -use warp_core::send_telemetry_from_ctx; -use warpui::{Entity, ModelContext}; +use galaxy_core::send_telemetry_from_ctx; +use galaxyui::{Entity, ModelContext}; /// UI customization settings chosen during the "Customize your UI" onboarding slide. #[derive(Clone, Debug)] @@ -78,7 +78,7 @@ pub enum SelectedSettings { impl SelectedSettings { pub fn is_ai_enabled(&self) -> bool { - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; match self { SelectedSettings::AgentDrivenDevelopment { agent_settings, .. } => { !agent_settings.disable_oz @@ -197,7 +197,7 @@ impl OnboardingStateModel { } pub(crate) fn settings(&self) -> SelectedSettings { - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; let ui_customization = if FeatureFlag::OpenWarpNewSettingsModes.is_enabled() { Some(self.ui_customization.clone()) } else { @@ -551,7 +551,7 @@ impl OnboardingStateModel { default_model_id: LLMId, ctx: &mut ModelContext, ) { - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; // If the user is past the agent slide, don't change the agent model from underneath them. // When the new settings modes flag is on, ThemePicker comes after the agent slides @@ -663,7 +663,7 @@ impl OnboardingStateModel { } pub(crate) fn back(&mut self, ctx: &mut ModelContext) { - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; let theme_picker_last = FeatureFlag::OpenWarpNewSettingsModes.is_enabled(); let prev = if theme_picker_last { @@ -698,7 +698,7 @@ impl OnboardingStateModel { } pub(crate) fn next(&mut self, ctx: &mut ModelContext) { - use warp_core::features::FeatureFlag; + use galaxy_core::features::FeatureFlag; let theme_picker_last = FeatureFlag::OpenWarpNewSettingsModes.is_enabled(); let is_last_step = if theme_picker_last { diff --git a/crates/onboarding/src/slides/agent_slide.rs b/crates/onboarding/src/slides/agent_slide.rs index 0db5bfae..c747ab68 100644 --- a/crates/onboarding/src/slides/agent_slide.rs +++ b/crates/onboarding/src/slides/agent_slide.rs @@ -2,18 +2,18 @@ use super::two_line_button::{render_two_line_button, TwoLineButtonSpec}; use crate::model::{OnboardingAuthState, OnboardingStateEvent, OnboardingStateModel}; use crate::slides::{bottom_nav, layout, slide_content}; use crate::telemetry::OnboardingEvent; -use warp_core::send_telemetry_from_ctx; +use galaxy_core::send_telemetry_from_ctx; use super::OnboardingSlide; use crate::visuals::agent_visual; use pathfinder_geometry::vector::vec2f; use ui_components::{button, Component as _, Options as _}; -use warp_core::features::FeatureFlag; -use warp_core::ui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::{ appearance::Appearance, theme::{color::internal_colors, Fill}, }; -use warpui::{ +use galaxyui::{ elements::{ AnchorPair, Border, ClippedScrollStateHandle, ClippedScrollable, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Empty, Flex, FormattedTextElement, Hoverable, @@ -35,7 +35,7 @@ use warpui::{ use ai::LLMId; use pathfinder_color::ColorU; use ui_components::button::State as ButtonState; -use warp_core::ui::icons::Icon; +use galaxy_core::ui::icons::Icon; /// high-contrast "inverted" fill (foreground color) struct UpgradeButtonTheme; @@ -45,8 +45,8 @@ impl button::Theme for UpgradeButtonTheme { &self, button_state: ButtonState, appearance: &Appearance, - ) -> Option { - use warp_core::ui::color::blend::Blend; + ) -> Option { + use galaxy_core::ui::color::blend::Blend; let theme = appearance.theme(); let base = theme.foreground(); match button_state { @@ -60,7 +60,7 @@ impl button::Theme for UpgradeButtonTheme { fn text_color( &self, - background: Option, + background: Option, appearance: &Appearance, ) -> ColorU { let bg = background @@ -152,7 +152,7 @@ pub enum AgentSlideEvent { } pub struct AgentSlide { - onboarding_state: warpui::ModelHandle, + onboarding_state: galaxyui::ModelHandle, /// Mouse state handles for each model row. model_mouse_states: Vec, @@ -201,7 +201,7 @@ fn sorted_models(models: &[OnboardingModelInfo]) -> Vec { impl AgentSlide { pub(crate) fn new( - onboarding_state: warpui::ModelHandle, + onboarding_state: galaxyui::ModelHandle, ctx: &mut ViewContext, ) -> Self { let model_count = onboarding_state.as_ref(ctx).models().len(); @@ -234,7 +234,7 @@ impl AgentSlide { me.show_plan_activated_toast = true; // Auto-dismiss after the configured duration. let _ = ctx.spawn( - warpui::r#async::Timer::after(PLAN_ACTIVATED_TOAST_DURATION), + galaxyui::r#async::Timer::after(PLAN_ACTIVATED_TOAST_DURATION), |me: &mut Self, _, ctx| { if me.show_plan_activated_toast { me.show_plan_activated_toast = false; @@ -541,7 +541,7 @@ impl AgentSlide { let title_row: Box = if let Some(icon) = icon { const ICON_SIZE: f32 = 14.; let icon_el = - ConstrainedBox::new(Box::new(icon.to_warpui_icon(title_color.into()))) + ConstrainedBox::new(Box::new(icon.to_galaxyui_icon(title_color.into()))) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish(); @@ -720,7 +720,7 @@ impl AgentSlide { .finish(); const ICON_SIZE: f32 = 14.; - let icon_el = ConstrainedBox::new(Box::new(icon.to_warpui_icon(title_color.into()))) + let icon_el = ConstrainedBox::new(Box::new(icon.to_galaxyui_icon(title_color.into()))) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish(); @@ -1003,7 +1003,7 @@ impl AgentSlide { ); let step_index = 2; - let step_count = if warp_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled() + let step_count = if galaxy_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled() { 5 } else { @@ -1165,7 +1165,7 @@ impl AgentSlide { }; let icon = ConstrainedBox::new(Box::new( - Icon::AlertCircle.to_warpui_icon(Fill::Solid(text_color)), + Icon::AlertCircle.to_galaxyui_icon(Fill::Solid(text_color)), )) .with_width(ICON_SIZE) .with_height(ICON_SIZE) @@ -1263,7 +1263,7 @@ impl AgentSlide { let ui_builder = appearance.ui_builder(); let check_icon = ConstrainedBox::new(Box::new( - Icon::CheckSkinny.to_warpui_icon(Fill::Solid(text_color)), + Icon::CheckSkinny.to_galaxyui_icon(Fill::Solid(text_color)), )) .with_width(ICON_SIZE) .with_height(ICON_SIZE) @@ -1362,7 +1362,7 @@ impl View for AgentSlide { let mut stack = Stack::new(); stack.add_child(slide); stack.add_child( - warpui::elements::Align::new(bottom_overlay) + galaxyui::elements::Align::new(bottom_overlay) .bottom_center() .finish(), ); diff --git a/crates/onboarding/src/slides/bottom_nav.rs b/crates/onboarding/src/slides/bottom_nav.rs index 8e83915a..c2b38257 100644 --- a/crates/onboarding/src/slides/bottom_nav.rs +++ b/crates/onboarding/src/slides/bottom_nav.rs @@ -1,6 +1,6 @@ use crate::slides::progress_dots; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Align, Container, CrossAxisAlignment, Empty, Flex, MainAxisSize, ParentElement, Shrinkable, }, diff --git a/crates/onboarding/src/slides/customize_slide.rs b/crates/onboarding/src/slides/customize_slide.rs index 93314d6f..d5323a06 100644 --- a/crates/onboarding/src/slides/customize_slide.rs +++ b/crates/onboarding/src/slides/customize_slide.rs @@ -5,10 +5,10 @@ use crate::slides::{bottom_nav, layout, slide_content}; use crate::visuals::{intention_terminal_visual, intention_visual}; use crate::OnboardingIntention; use ui_components::{button, Component as _, Options as _}; -use warp_core::features::FeatureFlag; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::prelude::Align; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::prelude::Align; +use galaxyui::{ elements::{ ClippedScrollStateHandle, Container, CrossAxisAlignment, Flex, FormattedTextElement, MainAxisSize, MouseStateHandle, ParentElement, diff --git a/crates/onboarding/src/slides/free_user_no_ai_slide.rs b/crates/onboarding/src/slides/free_user_no_ai_slide.rs index 81358a0a..e8c95ea4 100644 --- a/crates/onboarding/src/slides/free_user_no_ai_slide.rs +++ b/crates/onboarding/src/slides/free_user_no_ai_slide.rs @@ -4,11 +4,11 @@ use crate::slides::{bottom_nav, layout, slide_content}; use crate::telemetry::OnboardingEvent; use crate::OnboardingIntention; use ui_components::{button, Component as _, Options as _}; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::theme::Fill; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; -use warpui::prelude::Align; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; +use galaxyui::prelude::Align; +use galaxyui::{ elements::{ Border, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, DropShadow, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, @@ -162,7 +162,7 @@ impl FreeUserNoAiSlide { &self, appearance: &Appearance, text: String, - text_color: warpui::color::ColorU, + text_color: galaxyui::color::ColorU, border_color: Fill, ) -> Box { let label = appearance @@ -232,7 +232,7 @@ impl FreeUserNoAiSlide { ); Hoverable::new(mouse_state, move |_| { - let icon_el = ConstrainedBox::new(icon.to_warpui_icon(text_fill).finish()) + let icon_el = ConstrainedBox::new(icon.to_galaxyui_icon(text_fill).finish()) .with_width(20.) .with_height(20.) .finish(); @@ -415,15 +415,15 @@ impl FreeUserNoAiSlide { .with_main_axis_alignment(MainAxisAlignment::Center) .with_cross_axis_alignment(CrossAxisAlignment::Center) .with_child( - warpui::elements::Text::new_inline( + galaxyui::elements::Text::new_inline( "Subscribe", appearance.ui_font_family(), 14., ) .with_color(fg_color) - .with_style(warpui::fonts::Properties { + .with_style(galaxyui::fonts::Properties { weight: Weight::Semibold, - style: warpui::fonts::Style::Normal, + style: galaxyui::fonts::Style::Normal, }) .with_selectable(false) .finish(), diff --git a/crates/onboarding/src/slides/intention_slide.rs b/crates/onboarding/src/slides/intention_slide.rs index 32ddbe04..4f88a76d 100644 --- a/crates/onboarding/src/slides/intention_slide.rs +++ b/crates/onboarding/src/slides/intention_slide.rs @@ -4,11 +4,11 @@ use crate::slides::{bottom_nav, layout, slide_content}; use crate::visuals::{intention_terminal_visual, intention_visual}; use crate::{OnboardingIntention, AI_FEATURES}; use ui_components::{button, Component as _, Options as _}; -use warp_core::features::FeatureFlag; -use warp_core::ui::theme::Fill; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; -use warpui::prelude::Align; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; +use galaxyui::prelude::Align; +use galaxyui::{ elements::{ Border, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, MainAxisSize, @@ -73,7 +73,7 @@ impl IntentionSlide { let theme = appearance.theme(); let logo_fill = internal_colors::fg_overlay_4(theme); - let logo = ConstrainedBox::new(Icon::WarpLogoLight.to_warpui_icon(logo_fill).finish()) + let logo = ConstrainedBox::new(Icon::WarpLogoLight.to_galaxyui_icon(logo_fill).finish()) .with_width(64.) .with_height(64.) .finish(); @@ -216,7 +216,7 @@ impl IntentionSlide { .iter() .enumerate() { - let el = ConstrainedBox::new(icon.to_warpui_icon(icon_fill).finish()) + let el = ConstrainedBox::new(icon.to_galaxyui_icon(icon_fill).finish()) .with_width(16.) .with_height(16.) .finish(); @@ -260,7 +260,7 @@ impl IntentionSlide { .with_main_axis_size(MainAxisSize::Min) .with_cross_axis_alignment(CrossAxisAlignment::Start); for &item in items { - let icon_el = ConstrainedBox::new(Icon::Check.to_warpui_icon(check_fill).finish()) + let icon_el = ConstrainedBox::new(Icon::Check.to_galaxyui_icon(check_fill).finish()) .with_width(16.) .with_height(16.) .finish(); diff --git a/crates/onboarding/src/slides/intro_slide.rs b/crates/onboarding/src/slides/intro_slide.rs index 3305649f..084c2c37 100644 --- a/crates/onboarding/src/slides/intro_slide.rs +++ b/crates/onboarding/src/slides/intro_slide.rs @@ -5,9 +5,9 @@ use super::OnboardingSlide; use pathfinder_color::ColorU; use pathfinder_geometry::vector::vec2f; use ui_components::{button, Component as _, Options as _}; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; -use warpui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors, Icon}; +use galaxyui::{ elements::{ shimmering_text::{ShimmerConfig, ShimmeringTextElement, ShimmeringTextStateHandle}, Align, ChildAnchor, ConstrainedBox, Container, CrossAxisAlignment, Flex, @@ -139,7 +139,7 @@ impl IntroSlide { let theme = appearance.theme(); let logo_fill = internal_colors::fg_overlay_4(theme); - let logo = ConstrainedBox::new(Icon::WarpLogoLight.to_warpui_icon(logo_fill).finish()) + let logo = ConstrainedBox::new(Icon::WarpLogoLight.to_galaxyui_icon(logo_fill).finish()) .with_width(64.) .with_height(64.) .finish(); diff --git a/crates/onboarding/src/slides/layout.rs b/crates/onboarding/src/slides/layout.rs index 860e5af5..8510a706 100644 --- a/crates/onboarding/src/slides/layout.rs +++ b/crates/onboarding/src/slides/layout.rs @@ -1,5 +1,5 @@ use pathfinder_geometry::vector::{vec2f, Vector2F}; -use warpui::{ +use galaxyui::{ assets::asset_cache::AssetSource, elements::{ Align, CacheOption, Clipped, ConstrainedBox, Container, CrossAxisAlignment, Empty, diff --git a/crates/onboarding/src/slides/onboarding_slide.rs b/crates/onboarding/src/slides/onboarding_slide.rs index 4fd8358a..14dba166 100644 --- a/crates/onboarding/src/slides/onboarding_slide.rs +++ b/crates/onboarding/src/slides/onboarding_slide.rs @@ -1,4 +1,4 @@ -use warpui::{View, ViewContext}; +use galaxyui::{View, ViewContext}; pub trait OnboardingSlide: View { fn on_up(&mut self, _ctx: &mut ViewContext) {} diff --git a/crates/onboarding/src/slides/progress_dots.rs b/crates/onboarding/src/slides/progress_dots.rs index bf6cf01b..7fa6fdeb 100644 --- a/crates/onboarding/src/slides/progress_dots.rs +++ b/crates/onboarding/src/slides/progress_dots.rs @@ -1,5 +1,5 @@ -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::{ +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{ elements::{ ConstrainedBox, Container, CornerRadius, Empty, Flex, MainAxisSize, ParentElement, Radius, }, diff --git a/crates/onboarding/src/slides/project_slide.rs b/crates/onboarding/src/slides/project_slide.rs index afc5b3c0..8011cb1d 100644 --- a/crates/onboarding/src/slides/project_slide.rs +++ b/crates/onboarding/src/slides/project_slide.rs @@ -3,13 +3,13 @@ use crate::slides::{bottom_nav, layout, slide_content}; use crate::telemetry::OnboardingEvent; use crate::visuals::project_visual; use ui_components::{button, keyboard_shortcut, Component as _, Options as _}; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::{ +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::{ appearance::Appearance, color::coloru_with_opacity, theme::color::internal_colors, Icon, }; -use warpui::prelude::{MainAxisAlignment, MainAxisSize, Vector2F}; -use warpui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; -use warpui::{ +use galaxyui::prelude::{MainAxisAlignment, MainAxisSize, Vector2F}; +use galaxyui::ui_components::button::{ButtonVariant, TextAndIcon, TextAndIconAlignment}; +use galaxyui::{ elements::{ Align, ClippedScrollStateHandle, ConstrainedBox, Container, CrossAxisAlignment, Flex, MouseStateHandle, ParentElement, Shrinkable, @@ -174,7 +174,7 @@ impl ProjectSlide { TextAndIcon::new( TextAndIconAlignment::IconFirst, selected_local_folder.to_owned(), - Icon::Folder.to_warpui_icon(theme.foreground()), + Icon::Folder.to_galaxyui_icon(theme.foreground()), MainAxisSize::Max, MainAxisAlignment::Center, Vector2F::new(16., 16.), @@ -204,7 +204,7 @@ impl ProjectSlide { ); let folder_icon = - ConstrainedBox::new(Icon::Folder.to_warpui_icon(theme.foreground()).finish()) + ConstrainedBox::new(Icon::Folder.to_galaxyui_icon(theme.foreground()).finish()) .with_width(16.) .with_height(16.) .finish(); @@ -291,7 +291,7 @@ impl ProjectSlide { ); let theme_picker_last = - warp_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled(); + galaxy_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled(); let (label, keystroke, action) = match settings { ProjectOnboardingSettings::Project { .. } => ( @@ -483,7 +483,7 @@ impl ProjectSlide { } self.onboarding_state.update(ctx, |model, ctx| { - if warp_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled() { + if galaxy_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled() { model.next(ctx); } else { model.complete(ctx); @@ -494,7 +494,7 @@ impl ProjectSlide { fn skip(&mut self, ctx: &mut ViewContext) { self.onboarding_state.update(ctx, |model, ctx| { model.set_project_selected_local_folder(None, ctx); - if warp_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled() { + if galaxy_core::features::FeatureFlag::OpenWarpNewSettingsModes.is_enabled() { model.next(ctx); } else { model.complete(ctx); diff --git a/crates/onboarding/src/slides/slide_content.rs b/crates/onboarding/src/slides/slide_content.rs index fa54d030..5a714ed7 100644 --- a/crates/onboarding/src/slides/slide_content.rs +++ b/crates/onboarding/src/slides/slide_content.rs @@ -1,5 +1,5 @@ -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{ Align, ClippedScrollStateHandle, ClippedScrollable, Container, CrossAxisAlignment, Flex, MainAxisSize, ParentElement, ScrollbarWidth, Shrinkable, diff --git a/crates/onboarding/src/slides/theme_picker_slide.rs b/crates/onboarding/src/slides/theme_picker_slide.rs index 674d509c..2248bf8c 100644 --- a/crates/onboarding/src/slides/theme_picker_slide.rs +++ b/crates/onboarding/src/slides/theme_picker_slide.rs @@ -6,10 +6,10 @@ use crate::visuals::theme_picker_visual; use crate::OnboardingIntention; use pathfinder_color::ColorU; use ui_components::{button, Component as _, Options as _}; -use warp_core::features::FeatureFlag; -use warp_core::send_telemetry_from_ctx; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors, theme::WarpTheme}; -use warpui::{ +use galaxy_core::features::FeatureFlag; +use galaxy_core::send_telemetry_from_ctx; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors, theme::WarpTheme}; +use galaxyui::{ elements::{ Border, ClippedScrollStateHandle, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Empty, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, diff --git a/crates/onboarding/src/slides/third_party_slide.rs b/crates/onboarding/src/slides/third_party_slide.rs index 5543914a..9dbe3a11 100644 --- a/crates/onboarding/src/slides/third_party_slide.rs +++ b/crates/onboarding/src/slides/third_party_slide.rs @@ -5,10 +5,10 @@ use crate::slides::{bottom_nav, layout, slide_content}; use crate::OnboardingIntention; use ui_components::{button, Component as _, Options as _}; -use warp_core::ui::appearance::Appearance; -use warp_core::ui::theme::color::internal_colors; -use warpui::prelude::Align; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxy_core::ui::theme::color::internal_colors; +use galaxyui::prelude::Align; +use galaxyui::{ elements::{ ClippedScrollStateHandle, Container, CrossAxisAlignment, Flex, FormattedTextElement, MainAxisSize, MouseStateHandle, ParentElement, diff --git a/crates/onboarding/src/slides/toggle_card.rs b/crates/onboarding/src/slides/toggle_card.rs index 3cdc3b1a..956e64ca 100644 --- a/crates/onboarding/src/slides/toggle_card.rs +++ b/crates/onboarding/src/slides/toggle_card.rs @@ -1,8 +1,8 @@ use pathfinder_geometry::vector::Vector2F; -use warp_core::ui::theme::Fill; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::prelude::Align; -use warpui::{ +use galaxy_core::ui::theme::Fill; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::prelude::Align; +use galaxyui::{ elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, FormattedTextElement, Hoverable, MainAxisAlignment, MainAxisSize, MouseStateHandle, diff --git a/crates/onboarding/src/slides/two_line_button.rs b/crates/onboarding/src/slides/two_line_button.rs index 4276b375..a81e99a2 100644 --- a/crates/onboarding/src/slides/two_line_button.rs +++ b/crates/onboarding/src/slides/two_line_button.rs @@ -1,11 +1,11 @@ use super::agent_slide::AgentSlideAction; use pathfinder_geometry::vector::vec2f; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, icons::Icon, theme::{color::internal_colors, Fill}, }; -use warpui::{ +use galaxyui::{ elements::{ Align, Border, ChildAnchor, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Flex, Hoverable, MainAxisSize, MouseStateHandle, OffsetPositioning, ParentAnchor, @@ -97,7 +97,7 @@ pub(super) fn render_two_line_button( // Build title row with optional icon let title_el: Box = if let Some(icon) = icon { const ICON_SIZE: f32 = 14.; - let icon_el = ConstrainedBox::new(Box::new(icon.to_warpui_icon(title_fill))) + let icon_el = ConstrainedBox::new(Box::new(icon.to_galaxyui_icon(title_fill))) .with_width(ICON_SIZE) .with_height(ICON_SIZE) .finish(); diff --git a/crates/onboarding/src/telemetry.rs b/crates/onboarding/src/telemetry.rs index 84410af8..7a836188 100644 --- a/crates/onboarding/src/telemetry.rs +++ b/crates/onboarding/src/telemetry.rs @@ -1,7 +1,7 @@ use serde::{Deserialize, Serialize}; use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; +use galaxy_core::telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}; /// Telemetry events for the onboarding flow. #[derive(Clone, Debug, Serialize, Deserialize, EnumDiscriminants)] @@ -144,7 +144,7 @@ impl TelemetryEvent for OnboardingEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } @@ -214,4 +214,4 @@ impl TelemetryEventDesc for OnboardingEventDiscriminant { } } -warp_core::register_telemetry_event!(OnboardingEvent); +galaxy_core::register_telemetry_event!(OnboardingEvent); diff --git a/crates/onboarding/src/telemetry_provider.rs b/crates/onboarding/src/telemetry_provider.rs index a9bc6336..ebdd13b9 100644 --- a/crates/onboarding/src/telemetry_provider.rs +++ b/crates/onboarding/src/telemetry_provider.rs @@ -1,5 +1,5 @@ -use warp_core::telemetry::{TelemetryContextModel, TelemetryContextProvider}; -use warpui::{AppContext, ModelContext}; +use galaxy_core::telemetry::{TelemetryContextModel, TelemetryContextProvider}; +use galaxyui::{AppContext, ModelContext}; /// A mock telemetry context provider for the onboarding binary that logs events /// instead of sending them to a server. diff --git a/crates/onboarding/src/visuals/agent_visual.rs b/crates/onboarding/src/visuals/agent_visual.rs index 51fab1f1..89b87b56 100644 --- a/crates/onboarding/src/visuals/agent_visual.rs +++ b/crates/onboarding/src/visuals/agent_visual.rs @@ -1,6 +1,6 @@ use pathfinder_color::ColorU; -use warpui::elements::Align; -use warpui::Element; +use galaxyui::elements::Align; +use galaxyui::Element; use super::onboarding_visual::{OnboardingVisual, Pill, RectPct}; diff --git a/crates/onboarding/src/visuals/intention_terminal_visual.rs b/crates/onboarding/src/visuals/intention_terminal_visual.rs index 13028092..583d55a1 100644 --- a/crates/onboarding/src/visuals/intention_terminal_visual.rs +++ b/crates/onboarding/src/visuals/intention_terminal_visual.rs @@ -1,6 +1,6 @@ use pathfinder_color::ColorU; -use warpui::elements::Align; -use warpui::Element; +use galaxyui::elements::Align; +use galaxyui::Element; use crate::visuals::onboarding_visual::Rect; diff --git a/crates/onboarding/src/visuals/intention_visual.rs b/crates/onboarding/src/visuals/intention_visual.rs index 677c8f24..78837267 100644 --- a/crates/onboarding/src/visuals/intention_visual.rs +++ b/crates/onboarding/src/visuals/intention_visual.rs @@ -1,6 +1,6 @@ use pathfinder_color::ColorU; -use warpui::elements::Align; -use warpui::Element; +use galaxyui::elements::Align; +use galaxyui::Element; use super::onboarding_visual::{OnboardingVisual, Pill, RectPct}; diff --git a/crates/onboarding/src/visuals/onboarding_visual.rs b/crates/onboarding/src/visuals/onboarding_visual.rs index eba2f573..38b7c111 100644 --- a/crates/onboarding/src/visuals/onboarding_visual.rs +++ b/crates/onboarding/src/visuals/onboarding_visual.rs @@ -1,10 +1,10 @@ use pathfinder_color::ColorU; -use warp_core::ui::Icon; -use warpui::assets::asset_cache::{AssetCache, AssetSource, AssetState}; -use warpui::geometry::rect::RectF; -use warpui::geometry::vector::{vec2f, Vector2F}; -use warpui::image_cache::{AnimatedImageBehavior, CacheOption, FitType, Image, ImageCache}; -use warpui::{ +use galaxy_core::ui::Icon; +use galaxyui::assets::asset_cache::{AssetCache, AssetSource, AssetState}; +use galaxyui::geometry::rect::RectF; +use galaxyui::geometry::vector::{vec2f, Vector2F}; +use galaxyui::image_cache::{AnimatedImageBehavior, CacheOption, FitType, Image, ImageCache}; +use galaxyui::{ elements::{CornerRadius, Fill, Point, Radius}, event::DispatchedEvent, AfterLayoutContext, AppContext, Element, EventContext, LayoutContext, PaintContext, diff --git a/crates/onboarding/src/visuals/project_visual.rs b/crates/onboarding/src/visuals/project_visual.rs index 70af6a35..320d245e 100644 --- a/crates/onboarding/src/visuals/project_visual.rs +++ b/crates/onboarding/src/visuals/project_visual.rs @@ -1,7 +1,7 @@ use pathfinder_color::ColorU; -use warp_core::ui::Icon; -use warpui::elements::Align; -use warpui::Element; +use galaxy_core::ui::Icon; +use galaxyui::elements::Align; +use galaxyui::Element; use super::onboarding_visual::{IconPct, OnboardingVisual, Pill, RectPct}; diff --git a/crates/onboarding/src/visuals/theme_picker_mock_visual.rs b/crates/onboarding/src/visuals/theme_picker_mock_visual.rs index b6e71d82..eb2da407 100644 --- a/crates/onboarding/src/visuals/theme_picker_mock_visual.rs +++ b/crates/onboarding/src/visuals/theme_picker_mock_visual.rs @@ -1,6 +1,6 @@ use super::onboarding_visual::{OnboardingVisual, Pill, RectPct}; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::{elements::Align, Element}; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{elements::Align, Element}; pub(crate) fn theme_picker_visual(appearance: &Appearance) -> Box { let theme = appearance.theme(); diff --git a/crates/remote_server/Cargo.toml b/crates/remote_server/Cargo.toml index 791c812b..ce66f495 100644 --- a/crates/remote_server/Cargo.toml +++ b/crates/remote_server/Cargo.toml @@ -19,9 +19,9 @@ repo_metadata.workspace = true serde.workspace = true thiserror.workspace = true uuid.workspace = true -warp_core.workspace = true -warp_util.workspace = true -warpui.workspace = true +galaxy_core.workspace = true +galaxy_util.workspace = true +galaxyui.workspace = true [target.'cfg(not(target_family = "wasm"))'.dependencies] async-io.workspace = true diff --git a/crates/remote_server/src/auth.rs b/crates/remote_server/src/auth.rs index fe22de19..0f3d2968 100644 --- a/crates/remote_server/src/auth.rs +++ b/crates/remote_server/src/auth.rs @@ -1,5 +1,5 @@ use std::sync::Arc; -use warpui::r#async::BoxFuture; +use galaxyui::r#async::BoxFuture; type GetAuthTokenFn = dyn Fn() -> BoxFuture<'static, Option> + Send + Sync; type RemoteServerIdentityKeyFn = dyn Fn() -> String + Send + Sync; diff --git a/crates/remote_server/src/client/mod.rs b/crates/remote_server/src/client/mod.rs index 06251c68..972a5a65 100644 --- a/crates/remote_server/src/client/mod.rs +++ b/crates/remote_server/src/client/mod.rs @@ -7,7 +7,7 @@ use std::time::Duration; use dashmap::DashMap; use futures::channel::oneshot; use futures::io::{AsyncRead, AsyncWrite}; -use warpui::r#async::{executor, FutureExt as _}; +use galaxyui::r#async::{executor, FutureExt as _}; use crate::proto::{ client_message, server_message, Abort, Authenticate, ClientMessage, DeleteFile, ErrorCode, @@ -18,8 +18,8 @@ use crate::proto::{ use crate::protocol::{self, ProtocolError, RequestId}; -use warp_core::SessionId; -use warpui::r#async::TransportStream; +use galaxy_core::SessionId; +use galaxyui::r#async::TransportStream; /// Default request timeout (2 minutes). const REQUEST_TIMEOUT: Duration = Duration::from_secs(120); diff --git a/crates/remote_server/src/client_tests.rs b/crates/remote_server/src/client_tests.rs index f737ce93..18d8d973 100644 --- a/crates/remote_server/src/client_tests.rs +++ b/crates/remote_server/src/client_tests.rs @@ -6,8 +6,8 @@ use crate::proto::{ InitializeResponse, RunCommandResponse, RunCommandSuccess, ServerMessage, }; use crate::protocol; -use warp_core::SessionId; -use warpui::r#async::executor; +use galaxy_core::SessionId; +use galaxyui::r#async::executor; use super::*; diff --git a/crates/remote_server/src/host_id.rs b/crates/remote_server/src/host_id.rs index 7062035c..4c0fe8c9 100644 --- a/crates/remote_server/src/host_id.rs +++ b/crates/remote_server/src/host_id.rs @@ -1,3 +1,3 @@ -// Re-export from warp_core so existing `remote_server::HostId` imports +// Re-export from galaxy_core so existing `remote_server::HostId` imports // continue to work. -pub use warp_core::HostId; +pub use galaxy_core::HostId; diff --git a/crates/remote_server/src/manager.rs b/crates/remote_server/src/manager.rs index 5a5a6186..006f1fd9 100644 --- a/crates/remote_server/src/manager.rs +++ b/crates/remote_server/src/manager.rs @@ -17,8 +17,8 @@ use crate::transport::RemoteTransport; use crate::HostId; use repo_metadata::RepoMetadataUpdate; use serde::Serialize; -use warp_core::SessionId; -use warpui::{Entity, ModelContext, ModelSpawner, SingletonEntity}; +use galaxy_core::SessionId; +use galaxyui::{Entity, ModelContext, ModelSpawner, SingletonEntity}; /// Maximum number of reconnection attempts after a spontaneous disconnect. #[cfg(not(target_family = "wasm"))] @@ -598,7 +598,7 @@ impl RemoteServerManager { transport: &dyn RemoteTransport, auth_context: &RemoteServerAuthContext, spawner: &ModelSpawner, - executor: &Arc, + executor: &Arc, ) -> Result { // Phase 1: Connect (establish streams, create client). let Connection { diff --git a/crates/remote_server/src/repo_metadata_proto.rs b/crates/remote_server/src/repo_metadata_proto.rs index 2b7033e5..9a1a33e2 100644 --- a/crates/remote_server/src/repo_metadata_proto.rs +++ b/crates/remote_server/src/repo_metadata_proto.rs @@ -8,7 +8,7 @@ use repo_metadata::file_tree_update::{ DirectoryNodeMetadata, FileNodeMetadata, FileTreeEntryUpdate, RepoMetadataUpdate, RepoNodeMetadata, }; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use crate::proto; diff --git a/crates/remote_server/src/setup.rs b/crates/remote_server/src/setup.rs index 6a9d624b..11a94d31 100644 --- a/crates/remote_server/src/setup.rs +++ b/crates/remote_server/src/setup.rs @@ -1,7 +1,7 @@ use std::time::Duration; use anyhow::{anyhow, Result}; -use warp_core::channel::{Channel, ChannelState}; +use galaxy_core::channel::{Channel, ChannelState}; /// State machine for the remote server install → launch → initialize flow. #[derive(Clone, Debug, PartialEq, Eq)] @@ -124,9 +124,7 @@ pub fn remote_server_dir() -> String { Channel::Preview => ".warp-core-preview", Channel::Dev | Channel::Integration => ".warp-core-dev", Channel::Local => ".warp-core-local", - Channel::Oss => { - ".warp-core-dev" - } + Channel::Oss => ".warp-core-dev", }; format!("~/{warp_dir}/remote-server") } diff --git a/crates/remote_server/src/ssh.rs b/crates/remote_server/src/ssh.rs index b4a425df..140b2152 100644 --- a/crates/remote_server/src/ssh.rs +++ b/crates/remote_server/src/ssh.rs @@ -4,7 +4,7 @@ use std::time::Duration; use anyhow::{anyhow, Result}; use command::r#async::Command; -use warpui::r#async::FutureExt as _; +use galaxyui::r#async::FutureExt as _; /// Timeout for `ssh -O exit`. The command only talks to the local /// ControlMaster over a Unix socket, so it should return almost diff --git a/crates/remote_server/src/transport.rs b/crates/remote_server/src/transport.rs index 60e534d2..81bce7b1 100644 --- a/crates/remote_server/src/transport.rs +++ b/crates/remote_server/src/transport.rs @@ -15,7 +15,7 @@ use std::path::PathBuf; use std::pin::Pin; use async_channel::Receiver; -use warpui::r#async::executor; +use galaxyui::r#async::executor; use crate::client::{ClientEvent, RemoteServerClient}; use crate::setup::RemotePlatform; diff --git a/crates/repo_metadata/Cargo.toml b/crates/repo_metadata/Cargo.toml index 76821c39..0dbb3f27 100644 --- a/crates/repo_metadata/Cargo.toml +++ b/crates/repo_metadata/Cargo.toml @@ -21,9 +21,9 @@ serde_json.workspace = true thiserror.workspace = true walkdir.workspace = true itertools.workspace = true -warpui.workspace = true -warp_core.workspace = true -warp_util.workspace = true +galaxyui.workspace = true +galaxy_core.workspace = true +galaxy_util.workspace = true ignore = "0.4.23" once_cell.workspace = true log.workspace = true @@ -47,4 +47,4 @@ anyhow.workspace = true env_logger.workspace = true futures = "0.3" virtual-fs.workspace = true -warpui = { workspace = true, features = ["test-util"] } +galaxyui = { workspace = true, features = ["test-util"] } diff --git a/crates/repo_metadata/src/entry.rs b/crates/repo_metadata/src/entry.rs index 879eb761..efa932f0 100644 --- a/crates/repo_metadata/src/entry.rs +++ b/crates/repo_metadata/src/entry.rs @@ -5,7 +5,7 @@ use std::io; use std::path::{Component, Path, PathBuf}; use std::sync::atomic::{AtomicUsize, Ordering}; use thiserror::Error; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; /// Maximum file size allowed for treesitter parsing (3MB). const MAX_FILE_SIZE: usize = 3 * 1000 * 1000; diff --git a/crates/repo_metadata/src/file_tree_store.rs b/crates/repo_metadata/src/file_tree_store.rs index 4d05a5ab..dc45c859 100644 --- a/crates/repo_metadata/src/file_tree_store.rs +++ b/crates/repo_metadata/src/file_tree_store.rs @@ -4,8 +4,8 @@ use crate::file_tree_store::file_tree_state::FileTreeMapStore; use crate::{BuildTreeError, Entry, FileId, FileMetadata, Repository}; use ignore::gitignore::Gitignore; use std::sync::Arc; -use warp_util::standardized_path::StandardizedPath; -use warpui::ModelHandle; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::ModelHandle; #[derive(Debug, Clone)] pub struct FileTreeEntry { diff --git a/crates/repo_metadata/src/file_tree_store/file_tree_state.rs b/crates/repo_metadata/src/file_tree_store/file_tree_state.rs index fb80b082..caaee1a9 100644 --- a/crates/repo_metadata/src/file_tree_store/file_tree_state.rs +++ b/crates/repo_metadata/src/file_tree_store/file_tree_state.rs @@ -5,7 +5,7 @@ use ignore::gitignore::Gitignore; use std::collections::{HashMap, HashSet}; use std::iter; use std::sync::Arc; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; #[derive(Debug, Clone)] pub(super) struct FileTreeMapStore { diff --git a/crates/repo_metadata/src/file_tree_store_tests.rs b/crates/repo_metadata/src/file_tree_store_tests.rs index e9bbf0a3..bb95fee0 100644 --- a/crates/repo_metadata/src/file_tree_store_tests.rs +++ b/crates/repo_metadata/src/file_tree_store_tests.rs @@ -1,7 +1,7 @@ use crate::entry::{DirectoryEntry, Entry, FileId, FileMetadata}; use crate::file_tree_store::{FileTreeEntry, FileTreeEntryState}; use std::sync::Arc; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; fn std_path(s: &str) -> StandardizedPath { StandardizedPath::try_new(s).expect("test path should be valid") diff --git a/crates/repo_metadata/src/file_tree_update.rs b/crates/repo_metadata/src/file_tree_update.rs index 90d47d58..a57b7c60 100644 --- a/crates/repo_metadata/src/file_tree_update.rs +++ b/crates/repo_metadata/src/file_tree_update.rs @@ -5,7 +5,7 @@ //! by the server after processing watcher events and consumed by the client //! to update its [`RemoteRepoMetadataModel`](crate::remote_model::RemoteRepoMetadataModel). -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use crate::entry::{DirectoryEntry, Entry, FileMetadata}; diff --git a/crates/repo_metadata/src/file_tree_update_tests.rs b/crates/repo_metadata/src/file_tree_update_tests.rs index 653392ad..4a9ad9d7 100644 --- a/crates/repo_metadata/src/file_tree_update_tests.rs +++ b/crates/repo_metadata/src/file_tree_update_tests.rs @@ -3,7 +3,7 @@ use crate::file_tree_store::{FileTreeEntry, FileTreeEntryState}; use crate::file_tree_update::*; use crate::local_model::LocalRepoMetadataModel; use std::path::{Path, PathBuf}; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; // ── Helpers ────────────────────────────────────────────────────────── diff --git a/crates/repo_metadata/src/lib.rs b/crates/repo_metadata/src/lib.rs index 3f6639ae..33b7e159 100644 --- a/crates/repo_metadata/src/lib.rs +++ b/crates/repo_metadata/src/lib.rs @@ -8,10 +8,10 @@ use std::{ }; use thiserror::Error; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; #[cfg(not(target_family = "wasm"))] -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; /// Errors that can occur when working with repository metadata. #[derive(Error, Debug)] @@ -54,7 +54,7 @@ pub use repository::Repository; pub use watcher::{DirectoryWatcher, RepositoryUpdate, TargetFile}; #[cfg(not(target_family = "wasm"))] -pub fn is_in_repo(path: &str, app: &warpui::AppContext) -> bool { +pub fn is_in_repo(path: &str, app: &galaxyui::AppContext) -> bool { use crate::repositories::DetectedRepositories; DetectedRepositories::as_ref(app) @@ -63,7 +63,7 @@ pub fn is_in_repo(path: &str, app: &warpui::AppContext) -> bool { } #[cfg(target_family = "wasm")] -pub fn is_in_repo(_path: &str, _app: &warpui::AppContext) -> bool { +pub fn is_in_repo(_path: &str, _app: &galaxyui::AppContext) -> bool { false } pub use file_tree_store::FileTreeEntry; diff --git a/crates/repo_metadata/src/local_model.rs b/crates/repo_metadata/src/local_model.rs index 848faced..ad02021a 100644 --- a/crates/repo_metadata/src/local_model.rs +++ b/crates/repo_metadata/src/local_model.rs @@ -9,8 +9,8 @@ use std::{ path::{Path, PathBuf}, }; -use warp_core::{safe_warn, send_telemetry_from_ctx}; -use warpui::ModelHandle; +use galaxy_core::{safe_warn, send_telemetry_from_ctx}; +use galaxyui::ModelHandle; /// Represents either a file or directory in a repository. #[derive(Debug, Clone)] @@ -19,7 +19,7 @@ pub enum RepoContent<'a> { Directory(&'a FileTreeDirectoryEntryState), } -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use crate::{ entry::{Entry, FileId, IgnoredPathStrategy}, @@ -34,7 +34,7 @@ cfg_if::cfg_if! { use notify_debouncer_full::notify::{RecursiveMode, WatchFilter}; use crate::repositories::{DetectedRepositories, DetectedRepositoriesEvent}; use watcher::{BulkFilesystemWatcher, BulkFilesystemWatcherEvent}; - use warpui::SingletonEntity as _; + use galaxyui::SingletonEntity as _; /// Duration between filesystem watch events in seconds const FILESYSTEM_WATCHER_DEBOUNCE_SECS: u64 = 1; @@ -50,7 +50,7 @@ use crate::file_tree_update::{ RepoMetadataUpdate, RepoNodeMetadata, }; use ignore::gitignore::Gitignore; -use warpui::ModelContext; +use galaxyui::ModelContext; /// Maximum depth to traverse when building file trees const MAX_TREE_DEPTH: usize = 200; @@ -979,7 +979,7 @@ impl LocalRepoMetadataModel { } } -impl warpui::Entity for LocalRepoMetadataModel { +impl galaxyui::Entity for LocalRepoMetadataModel { type Event = RepositoryMetadataEvent; } diff --git a/crates/repo_metadata/src/local_model_test.rs b/crates/repo_metadata/src/local_model_test.rs index c934cba8..0da9a91e 100644 --- a/crates/repo_metadata/src/local_model_test.rs +++ b/crates/repo_metadata/src/local_model_test.rs @@ -20,9 +20,9 @@ mod tests { use std::rc::Rc; use std::time::Duration; use virtual_fs::{Stub, VirtualFS}; - use warp_util::standardized_path::StandardizedPath; - use warpui::r#async::FutureExt as _; - use warpui::App; + use galaxy_util::standardized_path::StandardizedPath; + use galaxyui::r#async::FutureExt as _; + use galaxyui::App; impl LocalRepoMetadataModel { fn new_for_test() -> Self { @@ -1038,7 +1038,7 @@ Thumbs.db #[test] fn test_canonicalized_path_functionality() { - use warp_util::standardized_path::StandardizedPath; + use galaxy_util::standardized_path::StandardizedPath; VirtualFS::test("canonicalized_path_test", |dirs, mut vfs| { let repo_path = dirs.tests(); @@ -1107,7 +1107,7 @@ Thumbs.db #[test] fn test_repository_operations_with_standardized_paths() { - use warp_util::standardized_path::StandardizedPath; + use galaxy_util::standardized_path::StandardizedPath; VirtualFS::test("repo_canonicalized_test", |dirs, mut vfs| { let test_root = dirs.tests(); @@ -1220,7 +1220,7 @@ Thumbs.db #[test] fn test_standardized_path_edge_cases() { - use warp_util::standardized_path::StandardizedPath; + use galaxy_util::standardized_path::StandardizedPath; VirtualFS::test("canonicalized_edge_cases", |dirs, mut vfs| { let test_root = dirs.tests(); diff --git a/crates/repo_metadata/src/remote_model.rs b/crates/repo_metadata/src/remote_model.rs index a8197286..9c95ec13 100644 --- a/crates/repo_metadata/src/remote_model.rs +++ b/crates/repo_metadata/src/remote_model.rs @@ -7,8 +7,8 @@ use std::collections::HashMap; use std::sync::Arc; -use warp_core::HostId; -use warpui::ModelContext; +use galaxy_core::HostId; +use galaxyui::ModelContext; use crate::file_tree_store::{FileTreeEntry, FileTreeState}; use crate::file_tree_update::RepoMetadataUpdate; @@ -203,7 +203,7 @@ impl RemoteRepoMetadataModel { } } -impl warpui::Entity for RemoteRepoMetadataModel { +impl galaxyui::Entity for RemoteRepoMetadataModel { type Event = RemoteRepositoryMetadataEvent; } diff --git a/crates/repo_metadata/src/repositories.rs b/crates/repo_metadata/src/repositories.rs index e985208d..5f705050 100644 --- a/crates/repo_metadata/src/repositories.rs +++ b/crates/repo_metadata/src/repositories.rs @@ -3,15 +3,15 @@ use std::{collections::HashSet, future::Future, path::PathBuf}; #[cfg(test)] use virtual_fs::{Stub, VirtualFS}; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; #[cfg(test)] -use warpui::r#async::FutureId; -use warpui::{AppContext, Entity, ModelContext, ModelHandle}; +use galaxyui::r#async::FutureId; +use galaxyui::{AppContext, Entity, ModelContext, ModelHandle}; use crate::DirectoryWatcher; use crate::Repository; use futures::future::{ready, Either}; -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; /// Indicates why a repository detection event was emitted. #[derive(Debug, Clone, Copy, PartialEq, Eq)] diff --git a/crates/repo_metadata/src/repositories_tests.rs b/crates/repo_metadata/src/repositories_tests.rs index e5068d30..cb584e11 100644 --- a/crates/repo_metadata/src/repositories_tests.rs +++ b/crates/repo_metadata/src/repositories_tests.rs @@ -3,8 +3,8 @@ use std::fs; use crate::repositories::{stub_git_repository, RepoDetectionSource}; use crate::{repositories::DetectedRepositories, watcher::DirectoryWatcher}; use virtual_fs::{Stub, VirtualFS}; -use warp_util::standardized_path::StandardizedPath; -use warpui::App; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::App; #[test] fn test_detect_possible_git_repo_non_existent_directory() { diff --git a/crates/repo_metadata/src/repository.rs b/crates/repo_metadata/src/repository.rs index a3b46b72..f587ada3 100644 --- a/crates/repo_metadata/src/repository.rs +++ b/crates/repo_metadata/src/repository.rs @@ -10,11 +10,11 @@ use std::path::Path; use futures::future::ready; #[cfg(feature = "local_fs")] use ignore::gitignore::Gitignore; -use warp_util::standardized_path::StandardizedPath; -use warpui::r#async::{BoxFuture, SpawnedFutureHandle}; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::r#async::{BoxFuture, SpawnedFutureHandle}; #[cfg(feature = "local_fs")] -use warpui::SingletonEntity; -use warpui::{Entity, ModelContext, ModelHandle}; +use galaxyui::SingletonEntity; +use galaxyui::{Entity, ModelContext, ModelHandle}; #[cfg(feature = "local_fs")] use crate::watcher::DirectoryWatcher; @@ -459,7 +459,7 @@ where let st = state.lock().unwrap(); st.version }; - warpui::r#async::Timer::after(wait).await; + galaxyui::r#async::Timer::after(wait).await; // If version unchanged, we're quiet; flush pending and exit loop. let maybe_merged = { diff --git a/crates/repo_metadata/src/repository_identifier.rs b/crates/repo_metadata/src/repository_identifier.rs index a2fe6c7f..83f01424 100644 --- a/crates/repo_metadata/src/repository_identifier.rs +++ b/crates/repo_metadata/src/repository_identifier.rs @@ -1,7 +1,7 @@ use std::path::{Path, PathBuf}; -use warp_core::HostId; -use warp_util::standardized_path::StandardizedPath; +use galaxy_core::HostId; +use galaxy_util::standardized_path::StandardizedPath; /// Identifies a repository across local and remote environments. #[derive(Debug, Clone, PartialEq, Eq, Hash)] diff --git a/crates/repo_metadata/src/telemetry.rs b/crates/repo_metadata/src/telemetry.rs index c47a41f5..f8169f0b 100644 --- a/crates/repo_metadata/src/telemetry.rs +++ b/crates/repo_metadata/src/telemetry.rs @@ -1,6 +1,6 @@ use serde_json::{json, Value}; use strum_macros::{EnumDiscriminants, EnumIter}; -use warp_core::{ +use galaxy_core::{ register_telemetry_event, telemetry::{EnablementState, TelemetryEvent, TelemetryEventDesc}, }; @@ -39,7 +39,7 @@ impl TelemetryEvent for RepoMetadataTelemetryEvent { } fn event_descs() -> impl Iterator> { - warp_core::telemetry::enum_events::() + galaxy_core::telemetry::enum_events::() } } diff --git a/crates/repo_metadata/src/watcher.rs b/crates/repo_metadata/src/watcher.rs index 9b588e89..83869f0e 100644 --- a/crates/repo_metadata/src/watcher.rs +++ b/crates/repo_metadata/src/watcher.rs @@ -8,9 +8,9 @@ use std::{ #[cfg(feature = "local_fs")] use futures::{future::OptionFuture, FutureExt as _}; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle}; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity, WeakModelHandle}; -use warp_util::standardized_path::StandardizedPath; +use galaxy_util::standardized_path::StandardizedPath; use crate::{repository::SubscriberId, RepoMetadataError, Repository}; diff --git a/crates/repo_metadata/src/watcher_tests.rs b/crates/repo_metadata/src/watcher_tests.rs index 27718ebf..fa40f4d3 100644 --- a/crates/repo_metadata/src/watcher_tests.rs +++ b/crates/repo_metadata/src/watcher_tests.rs @@ -12,9 +12,9 @@ use crate::{CanonicalizedPath, RepoMetadataError, Repository, RepositoryUpdate}; use futures::channel::mpsc; use futures::StreamExt as _; use virtual_fs::{Stub, VirtualFS}; -use warp_util::standardized_path::StandardizedPath; -use warpui::r#async::Timer; -use warpui::{App, ModelContext, ModelHandle}; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::r#async::Timer; +use galaxyui::{App, ModelContext, ModelHandle}; #[test] fn test_add_repository_success() { diff --git a/crates/repo_metadata/src/wrapper_model.rs b/crates/repo_metadata/src/wrapper_model.rs index e211868c..19362158 100644 --- a/crates/repo_metadata/src/wrapper_model.rs +++ b/crates/repo_metadata/src/wrapper_model.rs @@ -8,9 +8,9 @@ #[cfg(feature = "local_fs")] use std::path::Path; -use warp_core::HostId; -use warp_util::standardized_path::StandardizedPath; -use warpui::{AppContext, ModelContext, ModelHandle, SingletonEntity}; +use galaxy_core::HostId; +use galaxy_util::standardized_path::StandardizedPath; +use galaxyui::{AppContext, ModelContext, ModelHandle, SingletonEntity}; use crate::file_tree_store::FileTreeState; use crate::file_tree_update::RepoMetadataUpdate; @@ -356,7 +356,7 @@ impl RepoMetadataModel { } } -impl warpui::Entity for RepoMetadataModel { +impl galaxyui::Entity for RepoMetadataModel { type Event = RepoMetadataEvent; } diff --git a/crates/serve-wasm/src/main.rs b/crates/serve-wasm/src/main.rs index de287fab..3098f98a 100644 --- a/crates/serve-wasm/src/main.rs +++ b/crates/serve-wasm/src/main.rs @@ -87,7 +87,7 @@ fn make_router(build_directory: &Path) -> Router { "/assets/client/wasm", ServeDir::new(build_directory.join("wasm")), ) - // This needs to be kept in sync with warp_util::path::hashed_asset_url. + // This needs to be kept in sync with galaxy_util::path::hashed_asset_url. .nest_service( "/assets/client/static", ServeDir::new(build_directory.join("assets")), diff --git a/crates/settings/Cargo.toml b/crates/settings/Cargo.toml index 507b57f4..8308f106 100644 --- a/crates/settings/Cargo.toml +++ b/crates/settings/Cargo.toml @@ -14,14 +14,14 @@ schemars.workspace = true serde.workspace = true serde_json.workspace = true settings_value = { workspace = true, features = ["derive"] } -warp_features.workspace = true -warpui = { workspace = true, features = ["settings_value"] } -warpui_extras = { workspace = true, features = ["default"] } +galaxy_features.workspace = true +galaxyui = { workspace = true, features = ["settings_value"] } +galaxyui_extras = { workspace = true, features = ["default"] } [dev-dependencies] serial_test = "0.8.0" tempfile.workspace = true -warpui_extras = { workspace = true, features = ["user_preferences-toml"] } +galaxyui_extras = { workspace = true, features = ["user_preferences-toml"] } [features] integration_tests = [] diff --git a/crates/settings/src/lib.rs b/crates/settings/src/lib.rs index 746125ac..84e03e82 100644 --- a/crates/settings/src/lib.rs +++ b/crates/settings/src/lib.rs @@ -60,8 +60,8 @@ pub const fn toml_path_hierarchy(path: &str) -> Option<&str> { use anyhow::{Context, Result}; use serde::{Serialize, de::DeserializeOwned}; -use warpui::{AppContext, Entity, ModelContext}; -use warpui_extras::user_preferences::UserPreferences; +use galaxyui::{AppContext, Entity, ModelContext}; +use galaxyui_extras::user_preferences::UserPreferences; /// Whether the TOML-backed settings file is active. /// @@ -117,16 +117,16 @@ impl PublicPreferences { } /// Reloads the backing store from disk. - pub fn reload_from_disk(&self) -> Result<(), warpui_extras::user_preferences::Error> { + pub fn reload_from_disk(&self) -> Result<(), galaxyui_extras::user_preferences::Error> { self.0.reload_from_disk() } } -impl warpui::Entity for PublicPreferences { +impl galaxyui::Entity for PublicPreferences { type Event = (); } -impl warpui::SingletonEntity for PublicPreferences {} +impl galaxyui::SingletonEntity for PublicPreferences {} /// A newtype wrapper for the private preferences backend. /// @@ -150,11 +150,11 @@ impl Deref for PrivatePreferences { } } -impl warpui::Entity for PrivatePreferences { +impl galaxyui::Entity for PrivatePreferences { type Event = (); } -impl warpui::SingletonEntity for PrivatePreferences {} +impl galaxyui::SingletonEntity for PrivatePreferences {} /// An enum representing the different platforms a setting could apply to. #[derive(Debug, Clone)] @@ -370,7 +370,7 @@ pub trait Setting { fn set_value_from_cloud_sync( &mut self, new_value: Self::Value, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()>; /// Sets the value of the setting persisting it to storage. @@ -386,7 +386,7 @@ pub trait Setting { /// Sets the value of the setting to its default and persists it to storage. fn set_value_to_default( &mut self, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { self.set_value(Self::default_value(), ctx) } @@ -396,7 +396,7 @@ pub trait Setting { /// Private settings use the platform-native store; public settings use /// the main preferences backend (which may be the TOML settings file). fn preferences_for_setting(ctx: &AppContext) -> &dyn UserPreferences { - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; if Self::is_private() { ::as_ref(ctx).deref() diff --git a/crates/settings/src/macros.rs b/crates/settings/src/macros.rs index 0291979b..ea5d0ed5 100644 --- a/crates/settings/src/macros.rs +++ b/crates/settings/src/macros.rs @@ -109,11 +109,11 @@ //! Once you've defined a setting, usage is straightforward: //! //! ``` -//! # use warpui::*; +//! # use galaxyui::*; //! # use settings::macros::*; //! # use settings::manager::SettingsManager; //! # use settings::*; -//! # use warpui_extras::user_preferences; +//! # use galaxyui_extras::user_preferences; //! define_settings_group!(ExampleGroup, settings: [ //! bool_setting: BoolSetting { //! type: bool, @@ -312,7 +312,7 @@ macro_rules! define_setting { fn clear_value( &mut self, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; Self::clear_from_preferences(Self::preferences_for_setting(ctx))?; @@ -327,7 +327,7 @@ macro_rules! define_setting { fn set_value_from_cloud_sync( &mut self, new_value: Self::Value, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; let changed_in_storage = @@ -345,7 +345,7 @@ macro_rules! define_setting { fn set_value( &mut self, new_value: Self::Value, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; let changed_in_storage = @@ -364,7 +364,7 @@ macro_rules! define_setting { &mut self, new_value: Self::Value, explicitly_set: bool, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; let validated = self.validate(new_value); @@ -582,7 +582,7 @@ macro_rules! implement_setting_for_enum { fn clear_value( &mut self, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; Self::clear_from_preferences(Self::preferences_for_setting(ctx))?; @@ -596,7 +596,7 @@ macro_rules! implement_setting_for_enum { fn set_value_from_cloud_sync( &mut self, new_value: Self::Value, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; let changed_in_storage = @@ -613,7 +613,7 @@ macro_rules! implement_setting_for_enum { fn set_value( &mut self, new_value: Self::Value, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; let changed_in_storage = @@ -631,7 +631,7 @@ macro_rules! implement_setting_for_enum { &mut self, new_value: Self::Value, _explicitly_set: bool, - ctx: &mut warpui::ModelContext, + ctx: &mut galaxyui::ModelContext, ) -> anyhow::Result<()> { use $crate::ChangeEventReason; let validated = self.validate(new_value); @@ -714,7 +714,7 @@ macro_rules! define_settings_group { impl $group { #[allow(dead_code)] - fn new_from_storage(ctx: &mut warpui::ModelContext) -> Self { + fn new_from_storage(ctx: &mut galaxyui::ModelContext) -> Self { use $crate::Setting; Self { $( @@ -725,7 +725,7 @@ macro_rules! define_settings_group { #[cfg(any(test, feature = "integration_tests"))] #[allow(dead_code)] - pub fn new_with_defaults(_ctx: &mut warpui::ModelContext) -> Self { + pub fn new_with_defaults(_ctx: &mut galaxyui::ModelContext) -> Self { use $crate::Setting; Self { $( @@ -735,7 +735,7 @@ macro_rules! define_settings_group { } #[allow(dead_code)] - pub fn register(ctx: &mut (impl warpui::GetSingletonModelHandle + warpui::AddSingletonModel + warpui::UpdateModel)) -> warpui::ModelHandle { + pub fn register(ctx: &mut (impl galaxyui::GetSingletonModelHandle + galaxyui::AddSingletonModel + galaxyui::UpdateModel)) -> galaxyui::ModelHandle { let settings_group = ctx.add_singleton_model(|ctx| { Self::new_from_storage(ctx) }); @@ -781,12 +781,12 @@ macro_rules! define_settings_group { )* } - impl warpui::Entity for $group { + impl galaxyui::Entity for $group { type Event = EventName; } }); - impl warpui::SingletonEntity for $group {} + impl galaxyui::SingletonEntity for $group {} }; } pub use define_settings_group; @@ -816,16 +816,16 @@ macro_rules! generate_settings_event_fn { #[allow(dead_code)] #[allow(non_snake_case)] fn fn_name( - settings_group: warpui::ModelHandle<$group>, + settings_group: galaxyui::ModelHandle<$group>, ctx: &mut ( - impl warpui::GetSingletonModelHandle - + warpui::AddSingletonModel - + warpui::UpdateModel + impl galaxyui::GetSingletonModelHandle + + galaxyui::AddSingletonModel + + galaxyui::UpdateModel ), ) { use anyhow::anyhow; use serde_json; - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; use $crate::Setting as _; use $crate::manager::{SettingsEvent, SettingsManager}; SettingsManager::handle(ctx).update(ctx, |manager, ctx| { diff --git a/crates/settings/src/macros_tests.rs b/crates/settings/src/macros_tests.rs index dc2c2e34..efa0b712 100644 --- a/crates/settings/src/macros_tests.rs +++ b/crates/settings/src/macros_tests.rs @@ -1,5 +1,5 @@ use anyhow::Result; -use warpui::{AppContext, SingletonEntity}; +use galaxyui::{AppContext, SingletonEntity}; use crate::manager::SettingsManager; use crate::{Setting, SupportedPlatforms, SyncToCloud}; @@ -36,12 +36,12 @@ define_settings_group!(TestSettings, settings: [ pub fn init_and_register_preferences(ctx: &mut AppContext) { ctx.add_singleton_model(move |_| { crate::PublicPreferences::new(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); ctx.add_singleton_model(move |_| { crate::PrivatePreferences::new(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); } @@ -53,7 +53,7 @@ struct EventListener { } impl EventListener { - fn new(ctx: &mut warpui::ModelContext) -> Self { + fn new(ctx: &mut galaxyui::ModelContext) -> Self { let test_settings = TestSettings::handle(ctx); ctx.subscribe_to_model(&test_settings, |me, event, _ctx| { // Update our internal state if we get a change event for @@ -67,7 +67,7 @@ impl EventListener { } } -impl warpui::Entity for EventListener { +impl galaxyui::Entity for EventListener { type Event = (); } @@ -92,7 +92,7 @@ fn test_can_override_storage_key() { #[test] fn test_set_value_raises_changed_event_no_save() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -124,7 +124,7 @@ fn test_set_value_raises_changed_event_no_save() { #[test] fn test_set_value_raises_changed_event_save() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -156,7 +156,7 @@ fn test_set_value_raises_changed_event_save() { #[test] fn test_save_and_load_lifecycle() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -195,7 +195,7 @@ fn test_save_and_load_lifecycle() { #[test] fn test_toggleable_setting() -> Result<()> { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -254,7 +254,7 @@ fn test_explicit_value_tracking_with_some() { #[test] fn test_explicit_value_tracking_after_set_value() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -284,7 +284,7 @@ fn test_explicit_value_tracking_after_set_value() { #[test] fn test_explicit_value_tracking_after_clear_value() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -325,7 +325,7 @@ fn test_explicit_value_tracking_after_clear_value() { #[test] fn test_explicit_value_tracking_from_storage() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -399,7 +399,7 @@ fn test_private_setting_storage_key_is_explicit_override() { #[test] fn test_load_value_updates_value_without_persisting() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -430,7 +430,7 @@ fn test_load_value_updates_value_without_persisting() { #[test] fn test_load_value_emits_event_on_change() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -461,7 +461,7 @@ fn test_load_value_emits_event_on_change() { #[test] fn test_load_value_skips_event_when_unchanged() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -490,7 +490,7 @@ fn test_load_value_skips_event_when_unchanged() { #[test] fn test_load_value_updates_explicitly_set_flag() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -526,7 +526,7 @@ fn test_load_value_updates_explicitly_set_flag() { #[test] fn test_load_value_resets_explicitly_set_flag() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -569,7 +569,7 @@ fn test_load_value_resets_explicitly_set_flag() { #[test] fn test_explicit_value_tracking_cloud_sync() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -655,7 +655,7 @@ fn test_settings_file_enabled_flag_round_trip() { #[serial_test::serial] fn test_public_setting_writes_to_public_prefs_when_flag_enabled() { crate::set_settings_file_enabled(true); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -693,7 +693,7 @@ fn test_public_setting_writes_to_public_prefs_when_flag_enabled() { #[serial_test::serial] fn test_private_setting_writes_to_private_prefs_when_flag_enabled() { crate::set_settings_file_enabled(true); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -740,7 +740,7 @@ fn test_private_setting_writes_to_private_prefs_when_flag_enabled() { #[serial_test::serial] fn test_new_from_storage_reads_from_correct_backend_when_flag_enabled() { crate::set_settings_file_enabled(true); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -778,7 +778,7 @@ fn test_new_from_storage_reads_from_correct_backend_when_flag_enabled() { #[serial_test::serial] fn test_clear_value_clears_from_correct_backend() { crate::set_settings_file_enabled(true); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -834,7 +834,7 @@ fn test_clear_value_clears_from_correct_backend() { #[serial_test::serial] fn test_public_setting_uses_private_prefs_when_flag_disabled() { crate::set_settings_file_enabled(false); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -875,7 +875,7 @@ fn test_public_setting_uses_private_prefs_when_flag_disabled() { #[serial_test::serial] fn test_private_setting_uses_private_prefs_when_flag_disabled() { crate::set_settings_file_enabled(false); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -909,7 +909,7 @@ fn test_private_setting_uses_private_prefs_when_flag_disabled() { #[serial_test::serial] fn test_new_from_storage_reads_from_private_backend_when_flag_disabled() { crate::set_settings_file_enabled(false); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -950,7 +950,7 @@ fn test_new_from_storage_reads_from_private_backend_when_flag_disabled() { #[test] fn test_manager_is_private_for_storage_key() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -975,7 +975,7 @@ fn test_manager_is_private_for_storage_key() { #[test] fn test_manager_default_values_for_settings_file_excludes_private() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -1006,7 +1006,7 @@ fn test_manager_default_values_for_settings_file_excludes_private() { #[serial_test::serial] fn test_manager_read_local_setting_value_routes_when_flag_enabled() { crate::set_settings_file_enabled(true); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -1054,7 +1054,7 @@ fn test_manager_read_local_setting_value_routes_when_flag_enabled() { #[serial_test::serial] fn test_manager_read_local_setting_value_falls_back_when_flag_disabled() { crate::set_settings_file_enabled(false); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_preferences); app.add_singleton_model(|_| SettingsManager::default()); TestSettings::register(&mut app); @@ -1104,13 +1104,13 @@ fn test_manager_read_local_setting_value_falls_back_when_flag_disabled() { #[test] #[serial_test::serial] fn test_manager_read_local_setting_value_respects_hierarchy_with_settings_file() { - use warpui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; + use galaxyui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; crate::set_settings_file_enabled(true); let dir = tempfile::tempdir().unwrap(); let file_path = dir.path().join("settings.toml"); - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { // Use the TOML-backed store for public preferences so the hierarchy // routing actually matters; in-memory preferences ignore hierarchy // entirely and would hide this bug. @@ -1121,7 +1121,7 @@ fn test_manager_read_local_setting_value_respects_hierarchy_with_settings_file() }); app.add_singleton_model(|_| { crate::PrivatePreferences::new(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); app.add_singleton_model(|_| SettingsManager::default()); diff --git a/crates/settings/src/manager.rs b/crates/settings/src/manager.rs index 4b7daa12..68ccd871 100644 --- a/crates/settings/src/manager.rs +++ b/crates/settings/src/manager.rs @@ -3,8 +3,8 @@ use std::collections::HashMap; use std::ops::Deref; use anyhow::{Result, anyhow}; -use warpui::{AppContext, Entity, ModelContext, SingletonEntity}; -use warpui_extras::user_preferences::UserPreferences; +use galaxyui::{AppContext, Entity, ModelContext, SingletonEntity}; +use galaxyui_extras::user_preferences::UserPreferences; use super::PrivatePreferences; diff --git a/crates/settings/src/mod_tests.rs b/crates/settings/src/mod_tests.rs index d7736a6e..504ae814 100644 --- a/crates/settings/src/mod_tests.rs +++ b/crates/settings/src/mod_tests.rs @@ -1,4 +1,4 @@ -use warpui::SingletonEntity; +use galaxyui::SingletonEntity; use crate::manager::SettingsManager; use crate::{Setting, SupportedPlatforms, SyncToCloud}; @@ -51,19 +51,19 @@ define_settings_group!(TestSettings, settings: [ pub fn init_and_register_user_preferences(ctx: &mut AppContext) { ctx.add_singleton_model(move |_| { crate::PublicPreferences::new(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); ctx.add_singleton_model(move |_| { crate::PrivatePreferences::new(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); } #[test] fn test_is_setting_syncable_on_current_platform() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_and_register_user_preferences); app.add_singleton_model(|_| SettingsManager::default()); @@ -155,7 +155,7 @@ fn test_is_setting_syncable_on_current_platform() { } mod reload_all_public_settings_tests { - use warpui::SingletonEntity; + use galaxyui::SingletonEntity; use crate::manager::SettingsManager; use crate::{Setting, SupportedPlatforms, SyncToCloud}; @@ -183,12 +183,12 @@ mod reload_all_public_settings_tests { fn init_prefs(ctx: &mut AppContext) { ctx.add_singleton_model(move |_| -> crate::PublicPreferences { crate::PublicPreferences::new(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); ctx.add_singleton_model(move |_| -> crate::PrivatePreferences { crate::PrivatePreferences(Box::< - warpui_extras::user_preferences::in_memory::InMemoryPreferences, + galaxyui_extras::user_preferences::in_memory::InMemoryPreferences, >::default()) }); } @@ -197,7 +197,7 @@ mod reload_all_public_settings_tests { /// in the preferences backend. #[test] fn test_loads_present_keys() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); ReloadTestSettings::register(&mut app); @@ -231,7 +231,7 @@ mod reload_all_public_settings_tests { /// reload (the key-deletion scenario). #[test] fn test_resets_absent_keys_to_defaults() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); ReloadTestSettings::register(&mut app); @@ -272,7 +272,7 @@ mod reload_all_public_settings_tests { /// This is the property that prevents the infinite watcher loop. #[test] fn test_absent_keys_are_not_written_back() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); ReloadTestSettings::register(&mut app); @@ -313,7 +313,7 @@ mod reload_all_public_settings_tests { /// of settings that fail to deserialize (invalid value in file). #[test] fn test_reload_returns_failed_keys_for_invalid_values() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); ReloadTestSettings::register(&mut app); @@ -354,7 +354,7 @@ mod reload_all_public_settings_tests { /// when all values are valid. #[test] fn test_reload_returns_empty_vec_on_success() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); ReloadTestSettings::register(&mut app); @@ -384,7 +384,7 @@ mod reload_all_public_settings_tests { /// values without modifying in-memory state. #[test] fn test_validate_detects_invalid_values() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { crate::set_settings_file_enabled(true); app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); @@ -423,7 +423,7 @@ mod reload_all_public_settings_tests { /// stored values are valid. #[test] fn test_validate_returns_empty_when_all_valid() { - warpui::App::test((), |mut app| async move { + galaxyui::App::test((), |mut app| async move { crate::set_settings_file_enabled(true); app.update(init_prefs); app.add_singleton_model(|_| SettingsManager::default()); @@ -507,7 +507,7 @@ mod write_to_preferences_tests { #[test] fn test_no_spurious_write_with_format_differences() { let prefs = - Box::::default(); + Box::::default(); // Simulate what a TOML backend produces after a round-trip: // - null fields (optional_field) are stripped @@ -541,7 +541,7 @@ mod write_to_preferences_tests { #[test] fn test_no_spurious_write_with_hashmap_and_missing_options() { use std::collections::HashMap; - use warpui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; + use galaxyui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; #[derive( Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize, schemars::JsonSchema, @@ -604,7 +604,7 @@ mod write_to_preferences_tests { /// null-stripping and key-reordering happens. #[test] fn test_no_spurious_write_with_toml_backend() { - use warpui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; + use galaxyui_extras::user_preferences::toml_backed::TomlBackedUserPreferences; let dir = tempfile::tempdir().unwrap(); let file_path = dir.path().join("settings.toml"); diff --git a/crates/settings/src/schema.rs b/crates/settings/src/schema.rs index b22ab7dd..c6e1af52 100644 --- a/crates/settings/src/schema.rs +++ b/crates/settings/src/schema.rs @@ -26,7 +26,7 @@ pub struct SettingSchemaEntry { /// Feature flag gating this setting. /// If Some, the setting is only included in the schema when the flag /// is active for the target build channel. - pub feature_flag: Option, + pub feature_flag: Option, /// Returns which platforms this setting applies to. pub supported_platforms_fn: fn() -> SupportedPlatforms, diff --git a/crates/simple_logger/Cargo.toml b/crates/simple_logger/Cargo.toml index fa11ed25..12d8d9fe 100644 --- a/crates/simple_logger/Cargo.toml +++ b/crates/simple_logger/Cargo.toml @@ -14,5 +14,5 @@ chrono = { workspace = true } futures = { workspace = true } log = { workspace = true } thiserror.workspace = true -warp_core = { workspace = true } -warpui.workspace = true +galaxy_core = { workspace = true } +galaxyui.workspace = true diff --git a/crates/simple_logger/src/lib.rs b/crates/simple_logger/src/lib.rs index 48fe00d7..00e54d2f 100644 --- a/crates/simple_logger/src/lib.rs +++ b/crates/simple_logger/src/lib.rs @@ -6,7 +6,7 @@ use std::{ use async_channel::Sender; use async_fs::OpenOptions; use futures::AsyncWriteExt as _; -use warpui::r#async::executor::{Background, BackgroundTask}; +use galaxyui::r#async::executor::{Background, BackgroundTask}; pub mod manager; diff --git a/crates/simple_logger/src/manager.rs b/crates/simple_logger/src/manager.rs index 81c3c178..c5a04c26 100644 --- a/crates/simple_logger/src/manager.rs +++ b/crates/simple_logger/src/manager.rs @@ -4,8 +4,8 @@ use std::io::ErrorKind; use std::path::{Path, PathBuf}; use std::sync::{Arc, Weak}; use thiserror::Error; -use warpui::r#async::executor::Background; -use warpui::{Entity, SingletonEntity}; +use galaxyui::r#async::executor::Background; +use galaxyui::{Entity, SingletonEntity}; #[derive(Error, Debug)] pub enum LogManagerError { @@ -36,10 +36,10 @@ pub fn resolve_log_path(namespace: &str, relative_path: impl AsRef) -> Pat /// Returns the base log directory for a given namespace name. fn log_directory_path(namespace: &str) -> PathBuf { - let base_dir = warp_core::paths::secure_state_dir().unwrap_or_else(warp_core::paths::state_dir); + let base_dir = galaxy_core::paths::secure_state_dir().unwrap_or_else(galaxy_core::paths::state_dir); if cfg!(windows) { base_dir - .join(warp_core::paths::WARP_LOGS_DIR) + .join(galaxy_core::paths::WARP_LOGS_DIR) .join(namespace) } else { base_dir.join(namespace) diff --git a/crates/simple_logger/src/manager_tests.rs b/crates/simple_logger/src/manager_tests.rs index e0a48794..0dcfeb86 100644 --- a/crates/simple_logger/src/manager_tests.rs +++ b/crates/simple_logger/src/manager_tests.rs @@ -6,7 +6,7 @@ use std::{ }, }; -use warpui::r#async::executor::Background; +use galaxyui::r#async::executor::Background; use super::LogManager; diff --git a/crates/syntax_tree/Cargo.toml b/crates/syntax_tree/Cargo.toml index e49845a6..fcb9e839 100644 --- a/crates/syntax_tree/Cargo.toml +++ b/crates/syntax_tree/Cargo.toml @@ -9,8 +9,8 @@ license.workspace = true [dependencies] rangemap.workspace = true arborium.workspace = true -warpui.workspace = true -warp_editor.workspace = true +galaxyui.workspace = true +galaxy_editor.workspace = true languages.workspace = true futures.workspace = true futures-lite.workspace = true @@ -18,8 +18,8 @@ parking_lot.workspace = true log.workspace = true string-offset.workspace = true streaming-iterator = "0.1.9" -warp_util.workspace = true +galaxy_util.workspace = true [dev-dependencies] -warp_editor = { workspace = true, features = ["test-util"] } -warpui = { workspace = true, features = ["test-util"] } +galaxy_editor = { workspace = true, features = ["test-util"] } +galaxyui = { workspace = true, features = ["test-util"] } diff --git a/crates/syntax_tree/src/lib.rs b/crates/syntax_tree/src/lib.rs index d721d0c0..cf95132a 100644 --- a/crates/syntax_tree/src/lib.rs +++ b/crates/syntax_tree/src/lib.rs @@ -18,9 +18,9 @@ use queries::{ }; use rangemap::{RangeMap, RangeSet}; use string_offset::{ByteOffset, CharOffset}; -use warpui::{color::ColorU, AppContext, Entity, ModelContext, WeakModelHandle}; +use galaxyui::{color::ColorU, AppContext, Entity, ModelContext, WeakModelHandle}; -use warp_editor::{ +use galaxy_editor::{ content::{ buffer::{Buffer, BufferSnapshot}, edit::PreciseDelta, @@ -29,7 +29,7 @@ use warp_editor::{ }, decoration::DecorationLayer, }; -use warpui::text::point::Point; +use galaxyui::text::point::Point; const MAX_SYNTAX_TREES: usize = 3; diff --git a/crates/syntax_tree/src/queries/highlight_query.rs b/crates/syntax_tree/src/queries/highlight_query.rs index 5ed72e4f..02741e57 100644 --- a/crates/syntax_tree/src/queries/highlight_query.rs +++ b/crates/syntax_tree/src/queries/highlight_query.rs @@ -4,11 +4,11 @@ use arborium::tree_sitter::{Node, Query, QueryCursor, TextProvider, Tree}; use rangemap::RangeMap; use streaming_iterator::StreamingIterator; use string_offset::{ByteOffset, CharOffset}; -use warp_editor::content::{ +use galaxy_editor::content::{ buffer::{Buffer, ToBufferByteOffset, ToBufferCharOffset}, text::Bytes, }; -use warpui::color::ColorU; +use galaxyui::color::ColorU; /// Color mapping from parsed syntax token name to its corresponding highlighting color. #[derive(Clone, Copy)] diff --git a/crates/syntax_tree/src/queries/indent_query.rs b/crates/syntax_tree/src/queries/indent_query.rs index 621e246d..01f111f4 100644 --- a/crates/syntax_tree/src/queries/indent_query.rs +++ b/crates/syntax_tree/src/queries/indent_query.rs @@ -2,8 +2,8 @@ use std::{collections::HashMap, ops::Range}; use arborium::tree_sitter::{Node, Query, QueryCursor, Tree}; use streaming_iterator::StreamingIterator; -use warp_editor::content::buffer::Buffer; -use warpui::text::point::Point; +use galaxy_editor::content::buffer::Buffer; +use galaxyui::text::point::Point; use super::highlight_query::TextBuffer; diff --git a/crates/syntax_tree/src/queries/indent_query_tests.rs b/crates/syntax_tree/src/queries/indent_query_tests.rs index 4662fa5c..b5052487 100644 --- a/crates/syntax_tree/src/queries/indent_query_tests.rs +++ b/crates/syntax_tree/src/queries/indent_query_tests.rs @@ -2,10 +2,10 @@ use std::sync::Arc; use arborium::tree_sitter::Tree; use languages::{language_by_filename, Language}; -use warp_editor::content::buffer::{Buffer, BufferSnapshot}; -use warp_editor::content::selection_model::BufferSelectionModel; -use warp_editor::content::text::IndentBehavior; -use warpui::App; +use galaxy_editor::content::buffer::{Buffer, BufferSnapshot}; +use galaxy_editor::content::selection_model::BufferSelectionModel; +use galaxy_editor::content::text::IndentBehavior; +use galaxyui::App; use crate::SyntaxTreeState; @@ -15,7 +15,7 @@ use super::*; fn mock_buffer_and_tree(text_content: &str, language: Arc) -> (Buffer, Tree) { // Create a tree by parsing the text let snapshot = BufferSnapshot::from_plain_text(text_content); - let tree = warpui::r#async::block_on(async { + let tree = galaxyui::r#async::block_on(async { SyntaxTreeState::parse_text(snapshot, None, &language).await }); @@ -55,7 +55,7 @@ fn test_indent_query() { }); let buffer_snapshot = buffer_handle.read(&app, |buffer, _| buffer.buffer_snapshot()); - let tree = warpui::r#async::block_on(async { + let tree = galaxyui::r#async::block_on(async { SyntaxTreeState::parse_text(buffer_snapshot, None, &language).await }); @@ -151,7 +151,7 @@ fn test_indent_query_on_go() { }); let buffer_snapshot = buffer_handle.read(&app, |buffer, _| buffer.buffer_snapshot()); - let tree = warpui::r#async::block_on(async { + let tree = galaxyui::r#async::block_on(async { SyntaxTreeState::parse_text(buffer_snapshot, None, &language).await }); diff --git a/crates/ui_components/Cargo.toml b/crates/ui_components/Cargo.toml index 4c8846c7..c78e6d30 100644 --- a/crates/ui_components/Cargo.toml +++ b/crates/ui_components/Cargo.toml @@ -8,12 +8,12 @@ license.workspace = true [dependencies] pathfinder_color.workspace = true pathfinder_geometry.workspace = true -warpui.workspace = true -warp_core.workspace = true +galaxyui.workspace = true +galaxy_core.workspace = true [dev-dependencies] anyhow.workspace = true asset_cache.workspace = true rust-embed.workspace = true rustls.workspace = true -warp_core = { workspace = true, features = ["test-util"] } +galaxy_core = { workspace = true, features = ["test-util"] } diff --git a/crates/ui_components/examples/library.rs b/crates/ui_components/examples/library.rs index ac38cee3..4db7d73e 100644 --- a/crates/ui_components/examples/library.rs +++ b/crates/ui_components/examples/library.rs @@ -8,8 +8,8 @@ use ui_components::{ lightbox::{self, LightboxImage, LightboxImageSource, NavigationDirection}, switch, tooltip, }; -use warp_core::ui::{Icon, appearance::Appearance, theme::color::internal_colors}; -use warpui::{ +use galaxy_core::ui::{Icon, appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{ AssetProvider, SingletonEntity, Tracked, assets::asset_cache::{AssetCache, AssetSource, AssetState}, r#async::Timer, @@ -37,7 +37,7 @@ impl AssetProvider for Assets { } } -fn main() -> warpui::platform::app::TerminationResult { +fn main() -> galaxyui::platform::app::TerminationResult { // Initialize the TLS provider so reqwest can make HTTPS requests. rustls::crypto::aws_lc_rs::default_provider() .install_default() @@ -54,7 +54,7 @@ fn main() -> warpui::platform::app::TerminationResult { "Noto Sans".to_string() }; - let font_family = warpui::fonts::Cache::handle(ctx).update(ctx, |cache, _ctx| { + let font_family = galaxyui::fonts::Cache::handle(ctx).update(ctx, |cache, _ctx| { cache.load_system_font(&font_name).unwrap() }); ctx.add_singleton_model(|ctx| { @@ -64,7 +64,7 @@ fn main() -> warpui::platform::app::TerminationResult { }); { - use warpui::keymap::macros::*; + use galaxyui::keymap::macros::*; let lightbox_open = id!("RootView") & id!("RootView_LightboxOpen"); ctx.register_fixed_bindings([ FixedBinding::new( @@ -82,7 +82,7 @@ fn main() -> warpui::platform::app::TerminationResult { ]); } - ctx.add_window(warpui::AddWindowOptions::default(), RootView::new); + ctx.add_window(galaxyui::AddWindowOptions::default(), RootView::new); }) } @@ -174,7 +174,7 @@ impl View for RootView { "RootView" } - fn keymap_context(&self, _: &AppContext) -> warpui::keymap::Context { + fn keymap_context(&self, _: &AppContext) -> galaxyui::keymap::Context { let mut context = Self::default_keymap_context(); if *self.dialog_open { context.set.insert("RootView_DialogOpen"); @@ -240,7 +240,7 @@ impl RootView { options: switch::Options { hover_border_size: Some(10.), label: Some(Box::new(move |appearance: &Appearance| { - warpui::elements::Text::new( + galaxyui::elements::Text::new( "Switch", appearance.ui_font_family(), appearance.ui_font_size(), @@ -260,7 +260,7 @@ impl RootView { tooltip::Params { label: "Tooltip label".into(), options: tooltip::Options { - keyboard_shortcut: Some(warpui::keymap::Keystroke { + keyboard_shortcut: Some(galaxyui::keymap::Keystroke { ctrl: true, key: "k".to_string(), ..Default::default() @@ -282,7 +282,7 @@ impl RootView { content: button::Content::Label("Primary".into()), theme: &button::themes::Primary, options: button::Options { - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { ctrl: true, key: "k".to_string(), ..Default::default() @@ -304,7 +304,7 @@ impl RootView { content: button::Content::Label("Secondary".into()), theme: &button::themes::Secondary, options: button::Options { - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { cmd: true, key: "enter".to_string(), ..Default::default() @@ -327,7 +327,7 @@ impl RootView { theme: &button::themes::Primary, options: button::Options { disabled: true, - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { shift: true, key: "d".to_string(), ..Default::default() @@ -368,7 +368,7 @@ impl RootView { theme: &button::themes::Primary, options: button::Options { size: button::Size::Small, - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { ctrl: true, key: "k".to_string(), ..Default::default() @@ -391,7 +391,7 @@ impl RootView { theme: &button::themes::Secondary, options: button::Options { size: button::Size::Small, - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { cmd: true, key: "enter".to_string(), ..Default::default() @@ -415,7 +415,7 @@ impl RootView { options: button::Options { disabled: true, size: button::Size::Small, - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { shift: true, key: "d".to_string(), ..Default::default() @@ -438,7 +438,7 @@ impl RootView { theme: &button::themes::Secondary, options: button::Options { size: button::Size::Small, - keystroke: Some(warpui::keymap::Keystroke { + keystroke: Some(galaxyui::keymap::Keystroke { key: "escape".to_string(), ..Default::default() }), @@ -498,7 +498,7 @@ impl RootView { on_dismiss: Some(Arc::new(|ctx, _app| { ctx.dispatch_typed_action(Action::CloseDialog); })), - dismiss_keystroke: Some(warpui::keymap::Keystroke { + dismiss_keystroke: Some(galaxyui::keymap::Keystroke { key: "escape".to_string(), ..Default::default() }), @@ -564,7 +564,7 @@ impl RootView { }), current_image_native_size, options: lightbox::Options { - dismiss_keystroke: Some(warpui::keymap::Keystroke { + dismiss_keystroke: Some(galaxyui::keymap::Keystroke { key: "escape".to_string(), ..Default::default() }), @@ -597,7 +597,7 @@ impl RootView { }), current_image_native_size, options: lightbox::Options { - dismiss_keystroke: Some(warpui::keymap::Keystroke { + dismiss_keystroke: Some(galaxyui::keymap::Keystroke { key: "escape".to_string(), ..Default::default() }), diff --git a/crates/ui_components/src/button.rs b/crates/ui_components/src/button.rs index 9012e0d1..abd0d135 100644 --- a/crates/ui_components/src/button.rs +++ b/crates/ui_components/src/button.rs @@ -1,11 +1,11 @@ mod params; pub mod themes; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, color::{ContrastingColor as _, contrast::MinimumAllowedContrast}, }; -use warpui::{ +use galaxyui::{ elements::{MouseState, MouseStateHandle}, prelude::*, }; @@ -55,7 +55,7 @@ impl crate::Component for Button { Content::Icon(icon) | Content::IconAndLabel(icon, _) => { let icon_size = size.icon_size(); row.add_child( - ConstrainedBox::new(icon.to_warpui_icon(text_color.into()).finish()) + ConstrainedBox::new(icon.to_galaxyui_icon(text_color.into()).finish()) .with_width(icon_size) .with_height(icon_size) .finish(), diff --git a/crates/ui_components/src/button/params.rs b/crates/ui_components/src/button/params.rs index c82270aa..b3713c64 100644 --- a/crates/ui_components/src/button/params.rs +++ b/crates/ui_components/src/button/params.rs @@ -1,8 +1,8 @@ use std::borrow::Cow; -use warp_core::ui::Icon; -use warp_core::ui::appearance::Appearance; -use warpui::{fonts, keymap::Keystroke, prelude::stack}; +use galaxy_core::ui::Icon; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{fonts, keymap::Keystroke, prelude::stack}; use crate::{keyboard_shortcut, tooltip}; diff --git a/crates/ui_components/src/button/themes.rs b/crates/ui_components/src/button/themes.rs index 22fc0e6f..ecbfa76a 100644 --- a/crates/ui_components/src/button/themes.rs +++ b/crates/ui_components/src/button/themes.rs @@ -1,5 +1,5 @@ use pathfinder_color::ColorU; -use warp_core::ui::{ +use galaxy_core::ui::{ appearance::Appearance, color::coloru_with_opacity, theme::Fill, theme::color::internal_colors, }; diff --git a/crates/ui_components/src/dialog.rs b/crates/ui_components/src/dialog.rs index 660e579d..29c902ea 100644 --- a/crates/ui_components/src/dialog.rs +++ b/crates/ui_components/src/dialog.rs @@ -1,7 +1,7 @@ use std::{borrow::Cow, sync::Arc}; -use warp_core::ui::{Icon, appearance::Appearance, theme::color::internal_colors}; -use warpui::{ +use galaxy_core::ui::{Icon, appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{ AppContext, EventContext, elements::{ Border, ConstrainedBox, Container, CornerRadius, CrossAxisAlignment, Dismiss, Element, diff --git a/crates/ui_components/src/keyboard_shortcut.rs b/crates/ui_components/src/keyboard_shortcut.rs index b0021fcb..e60ceaa9 100644 --- a/crates/ui_components/src/keyboard_shortcut.rs +++ b/crates/ui_components/src/keyboard_shortcut.rs @@ -1,7 +1,7 @@ use std::borrow::Cow; -use warp_core::ui::{appearance::Appearance, icons::Icon}; -use warpui::{keymap::Keystroke, platform::OperatingSystem, prelude::*}; +use galaxy_core::ui::{appearance::Appearance, icons::Icon}; +use galaxyui::{keymap::Keystroke, platform::OperatingSystem, prelude::*}; use crate::Component; diff --git a/crates/ui_components/src/lib.rs b/crates/ui_components/src/lib.rs index 58e712e8..e46693c0 100644 --- a/crates/ui_components/src/lib.rs +++ b/crates/ui_components/src/lib.rs @@ -7,8 +7,8 @@ pub mod tooltip; pub use keyboard_shortcut::KeyboardShortcut; -use warp_core::ui::appearance::Appearance; -use warpui::Element; +use galaxy_core::ui::appearance::Appearance; +use galaxyui::Element; /// A reusable UI component that can be rendered with configurable parameters. /// @@ -31,8 +31,8 @@ use warpui::Element; /// /// ```rust /// use ui_components::{Component, Options, button}; -/// use warp_core::ui::appearance::Appearance; -/// use warpui::prelude::*; +/// use galaxy_core::ui::appearance::Appearance; +/// use galaxyui::prelude::*; /// /// // Store component as a field in your view. /// struct MyView { @@ -40,7 +40,7 @@ use warpui::Element; /// } /// /// impl MyView { -/// fn render_button(&self, appearance: &Appearance) -> Box { +/// fn render_button(&self, appearance: &Appearance) -> Box { /// self.my_button.render( /// appearance, /// button::Params { @@ -62,8 +62,8 @@ use warpui::Element; /// /// ```rust /// use ui_components::Component; -/// use warp_core::ui::appearance::Appearance; -/// use warpui::prelude::*; +/// use galaxy_core::ui::appearance::Appearance; +/// use galaxyui::prelude::*; /// /// // 1. Define the component struct with any persistent state. /// #[derive(Default)] @@ -136,7 +136,7 @@ pub trait Component: Default { /// /// ```rust /// use ui_components::{Params, Options}; -/// use warp_core::ui::appearance::Appearance; +/// use galaxy_core::ui::appearance::Appearance; /// /// pub struct MyParams { /// pub content: String, // Required. @@ -177,7 +177,7 @@ pub trait Params { /// /// ```rust /// use ui_components::{Options, MouseEventHandler}; -/// use warp_core::ui::appearance::Appearance; +/// use galaxy_core::ui::appearance::Appearance; /// /// pub struct MyOptions { /// pub disabled: bool, @@ -232,8 +232,8 @@ pub trait Options { /// /// ```rust /// use ui_components::{Renderable, Options}; -/// use warp_core::ui::appearance::Appearance; -/// use warpui::prelude::*; +/// use galaxy_core::ui::appearance::Appearance; +/// use galaxyui::prelude::*; /// /// pub struct SwitchOptions<'a> { /// pub disabled: bool, @@ -283,8 +283,8 @@ where /// A function that handles mouse events. pub type MouseEventHandler = Box< dyn FnMut( - &mut warpui::EventContext, - &warpui::AppContext, + &mut galaxyui::EventContext, + &galaxyui::AppContext, pathfinder_geometry::vector::Vector2F, ), >; diff --git a/crates/ui_components/src/lightbox.rs b/crates/ui_components/src/lightbox.rs index df59dbd4..9c558075 100644 --- a/crates/ui_components/src/lightbox.rs +++ b/crates/ui_components/src/lightbox.rs @@ -1,8 +1,8 @@ use std::sync::Arc; use pathfinder_geometry::vector::{Vector2F, vec2f}; -use warp_core::ui::{Icon, appearance::Appearance}; -use warpui::{ +use galaxy_core::ui::{Icon, appearance::Appearance}; +use galaxyui::{ assets::asset_cache::AssetSource, elements::{CacheOption, Dismiss, DispatchEventResult, EventHandler, Image, Shrinkable}, keymap::Keystroke, diff --git a/crates/ui_components/src/switch.rs b/crates/ui_components/src/switch.rs index 17631108..8565c576 100644 --- a/crates/ui_components/src/switch.rs +++ b/crates/ui_components/src/switch.rs @@ -1,7 +1,7 @@ use std::sync::LazyLock; -use warp_core::ui::appearance::Appearance; -use warpui::{ +use galaxy_core::ui::appearance::Appearance; +use galaxyui::{ elements::{MouseStateHandle, Rect}, prelude::{stack::*, *}, }; diff --git a/crates/ui_components/src/tooltip.rs b/crates/ui_components/src/tooltip.rs index d568ddfb..068f6b5d 100644 --- a/crates/ui_components/src/tooltip.rs +++ b/crates/ui_components/src/tooltip.rs @@ -1,7 +1,7 @@ use std::borrow::Cow; -use warp_core::ui::{appearance::Appearance, theme::color::internal_colors}; -use warpui::{keymap::Keystroke, prelude::*}; +use galaxy_core::ui::{appearance::Appearance, theme::color::internal_colors}; +use galaxyui::{keymap::Keystroke, prelude::*}; use crate::{Component, keyboard_shortcut}; @@ -39,7 +39,7 @@ impl Component for Tooltip { &self, appearance: &Appearance, params: Self::Params<'a>, - ) -> Box { + ) -> Box { let font_family = appearance.ui_font_family(); let font_size = appearance.ui_font_size() + UI_FONT_SIZE_ADJUSTMENT; diff --git a/crates/vim/Cargo.toml b/crates/vim/Cargo.toml index 2a879c85..3077c6d8 100644 --- a/crates/vim/Cargo.toml +++ b/crates/vim/Cargo.toml @@ -6,8 +6,8 @@ publish.workspace = true license.workspace = true [dependencies] -warp_core.workspace = true -warpui.workspace = true +galaxy_core.workspace = true +galaxyui.workspace = true log.workspace = true itertools.workspace = true string-offset.workspace = true diff --git a/crates/vim/src/find_char.rs b/crates/vim/src/find_char.rs index 0c83589b..b52cc3d1 100644 --- a/crates/vim/src/find_char.rs +++ b/crates/vim/src/find_char.rs @@ -1,5 +1,5 @@ use crate::vim::{Direction, FindCharDestination, FindCharMotion}; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; /// Find the destination column for Vim's f/F/t/T motions on a single line. /// diff --git a/crates/vim/src/matching_brackets.rs b/crates/vim/src/matching_brackets.rs index e5998caa..969ca942 100644 --- a/crates/vim/src/matching_brackets.rs +++ b/crates/vim/src/matching_brackets.rs @@ -1,6 +1,6 @@ use itertools::Itertools; use string_offset::CharOffset; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; use crate::vim::{BracketChar, BracketEnd}; diff --git a/crates/vim/src/paragraph_iterator.rs b/crates/vim/src/paragraph_iterator.rs index 35c18e33..b1b1771e 100644 --- a/crates/vim/src/paragraph_iterator.rs +++ b/crates/vim/src/paragraph_iterator.rs @@ -1,5 +1,5 @@ use string_offset::CharOffset; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; /// Returns the offset of the first newline above a paragraph start before the current position. pub fn find_previous_paragraph_start<'a, T, C>(buffer: &'a T, offset: C) -> Option diff --git a/crates/vim/src/text_objects/block.rs b/crates/vim/src/text_objects/block.rs index a24acafd..b694f5b7 100644 --- a/crates/vim/src/text_objects/block.rs +++ b/crates/vim/src/text_objects/block.rs @@ -4,7 +4,7 @@ use std::ops::Range; use itertools::Itertools; use string_offset::CharOffset; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; use crate::{ vim::{BracketChar, BracketEnd, BracketType}, diff --git a/crates/vim/src/text_objects/paragraph.rs b/crates/vim/src/text_objects/paragraph.rs index 3cab18dd..f0fe0cd6 100644 --- a/crates/vim/src/text_objects/paragraph.rs +++ b/crates/vim/src/text_objects/paragraph.rs @@ -1,7 +1,7 @@ use std::ops::Range; use string_offset::CharOffset; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; use crate::{find_next_paragraph_end, find_previous_paragraph_start}; diff --git a/crates/vim/src/text_objects/quote.rs b/crates/vim/src/text_objects/quote.rs index c72ce5e2..9ec65abf 100644 --- a/crates/vim/src/text_objects/quote.rs +++ b/crates/vim/src/text_objects/quote.rs @@ -2,7 +2,7 @@ use std::ops::Range; use itertools::Itertools; use string_offset::CharOffset; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; use crate::vim::QuoteType; diff --git a/crates/vim/src/text_objects/word.rs b/crates/vim/src/text_objects/word.rs index f950b0d6..fbd891be 100644 --- a/crates/vim/src/text_objects/word.rs +++ b/crates/vim/src/text_objects/word.rs @@ -1,7 +1,7 @@ use std::ops::Range; use string_offset::CharOffset; -use warpui::text::TextBuffer; +use galaxyui::text::TextBuffer; use crate::{vim::WordType, word_iterator::CharacterKind}; diff --git a/crates/vim/src/vim.rs b/crates/vim/src/vim.rs index 68d838f3..34f6e036 100644 --- a/crates/vim/src/vim.rs +++ b/crates/vim/src/vim.rs @@ -1,5 +1,5 @@ -use warp_core::safe_info; -use warpui::{keymap::Keystroke, Entity, ModelContext, ModelHandle, ViewContext}; +use galaxy_core::safe_info; +use galaxyui::{keymap::Keystroke, Entity, ModelContext, ModelHandle, ViewContext}; use crate::register::{valid_register_name, BLACK_HOLE_REGISTER}; @@ -1744,8 +1744,8 @@ pub struct VimState<'a> { pub showcmd: &'a str, } -/// This struct is a wrapper around the VimFSA that turns it into a warpui::Entity. We want to keep -/// the VimFSA independent of our UI framework, so anything involving warpui should live here +/// This struct is a wrapper around the VimFSA that turns it into a galaxyui::Entity. We want to keep +/// the VimFSA independent of our UI framework, so anything involving galaxyui should live here /// instead. #[derive(Default)] pub struct VimModel { diff --git a/crates/vim/src/word_iterator.rs b/crates/vim/src/word_iterator.rs index 579e136b..82827ea7 100644 --- a/crates/vim/src/word_iterator.rs +++ b/crates/vim/src/word_iterator.rs @@ -3,7 +3,7 @@ use std::iter::Peekable; use anyhow::Result; use itertools::{peek_nth, Either, PeekNth}; use string_offset::CharOffset; -use warpui::text::{words::is_default_word_boundary, TextBuffer}; +use galaxyui::text::{words::is_default_word_boundary, TextBuffer}; use crate::vim::{Direction, WordBound, WordType}; diff --git a/crates/voice_input/Cargo.toml b/crates/voice_input/Cargo.toml index 64fc4224..14f1ebdf 100644 --- a/crates/voice_input/Cargo.toml +++ b/crates/voice_input/Cargo.toml @@ -17,7 +17,7 @@ instant = { workspace = true } log = { workspace = true } parking_lot = { workspace = true } rubato = "0.16.1" -warpui.workspace = true +galaxyui.workspace = true [features] # No features; compiled when the app enables its `voice` feature which depends on this crate diff --git a/crates/voice_input/src/lib.rs b/crates/voice_input/src/lib.rs index d192ee53..a6a22c6b 100644 --- a/crates/voice_input/src/lib.rs +++ b/crates/voice_input/src/lib.rs @@ -12,8 +12,8 @@ use rubato::{ }; use thiserror::Error; -use warpui::event::KeyState; -use warpui::{Entity, ModelContext, SingletonEntity, platform::MicrophoneAccessState}; +use galaxyui::event::KeyState; +use galaxyui::{Entity, ModelContext, SingletonEntity, platform::MicrophoneAccessState}; const DEFAULT_CHUNK_SIZE: u32 = 512; // We only support mono for now. @@ -217,7 +217,7 @@ impl VoiceInput { .collect(); // This is blocking, but we aren't on the main thread. - let _ = warpui::r#async::block_on(audio_frame_tx.send(mono_samples)); + let _ = galaxyui::r#async::block_on(audio_frame_tx.send(mono_samples)); }, |err| { log::error!("Error in voice input stream: {err}"); diff --git a/crates/warpui/examples/resizable/main.rs b/crates/warpui/examples/resizable/main.rs deleted file mode 100644 index 3fb46165..00000000 --- a/crates/warpui/examples/resizable/main.rs +++ /dev/null @@ -1,36 +0,0 @@ -use anyhow::{anyhow, Result}; -use std::borrow::Cow; -pub mod root_view; - -extern crate warpui; -use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; - -#[derive(Clone, Copy, RustEmbed)] -#[folder = "examples/assets"] -pub struct Assets; - -// The static assets we need to load in app. -pub static ASSETS: Assets = Assets; - -// Implement the AssetProvider trait here (required by App::new). -impl AssetProvider for Assets { - fn get(&self, path: &str) -> Result> { - ::get(path) - .map(|f| f.data) - .ok_or_else(|| anyhow!("no asset exists at path {}", path)) - } -} - -fn main() -> Result<()> { - let app_builder = - platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); - let _ = app_builder.run(move |ctx| { - ctx.add_window( - warpui::AddWindowOptions::default(), - root_view::RootView::new, - ); - }); - - Ok(()) -} diff --git a/crates/warpui/examples/scrolling/main.rs b/crates/warpui/examples/scrolling/main.rs deleted file mode 100644 index 3fb46165..00000000 --- a/crates/warpui/examples/scrolling/main.rs +++ /dev/null @@ -1,36 +0,0 @@ -use anyhow::{anyhow, Result}; -use std::borrow::Cow; -pub mod root_view; - -extern crate warpui; -use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; - -#[derive(Clone, Copy, RustEmbed)] -#[folder = "examples/assets"] -pub struct Assets; - -// The static assets we need to load in app. -pub static ASSETS: Assets = Assets; - -// Implement the AssetProvider trait here (required by App::new). -impl AssetProvider for Assets { - fn get(&self, path: &str) -> Result> { - ::get(path) - .map(|f| f.data) - .ok_or_else(|| anyhow!("no asset exists at path {}", path)) - } -} - -fn main() -> Result<()> { - let app_builder = - platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); - let _ = app_builder.run(move |ctx| { - ctx.add_window( - warpui::AddWindowOptions::default(), - root_view::RootView::new, - ); - }); - - Ok(()) -} diff --git a/crates/warpui/examples/slider/main.rs b/crates/warpui/examples/slider/main.rs deleted file mode 100644 index 3fb46165..00000000 --- a/crates/warpui/examples/slider/main.rs +++ /dev/null @@ -1,36 +0,0 @@ -use anyhow::{anyhow, Result}; -use std::borrow::Cow; -pub mod root_view; - -extern crate warpui; -use rust_embed::RustEmbed; -use warpui::{platform, AssetProvider}; - -#[derive(Clone, Copy, RustEmbed)] -#[folder = "examples/assets"] -pub struct Assets; - -// The static assets we need to load in app. -pub static ASSETS: Assets = Assets; - -// Implement the AssetProvider trait here (required by App::new). -impl AssetProvider for Assets { - fn get(&self, path: &str) -> Result> { - ::get(path) - .map(|f| f.data) - .ok_or_else(|| anyhow!("no asset exists at path {}", path)) - } -} - -fn main() -> Result<()> { - let app_builder = - platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); - let _ = app_builder.run(move |ctx| { - ctx.add_window( - warpui::AddWindowOptions::default(), - root_view::RootView::new, - ); - }); - - Ok(()) -} diff --git a/crates/watcher/Cargo.toml b/crates/watcher/Cargo.toml index d3662753..3f341aef 100644 --- a/crates/watcher/Cargo.toml +++ b/crates/watcher/Cargo.toml @@ -8,7 +8,7 @@ license.workspace = true [dependencies] async-channel.workspace = true -warpui.workspace = true +galaxyui.workspace = true log.workspace = true anyhow.workspace = true notify-debouncer-full.workspace = true diff --git a/crates/watcher/src/home_watcher.rs b/crates/watcher/src/home_watcher.rs index 27dfe8d7..22f54333 100644 --- a/crates/watcher/src/home_watcher.rs +++ b/crates/watcher/src/home_watcher.rs @@ -1,7 +1,7 @@ use notify_debouncer_full::notify::{RecursiveMode, WatchFilter}; use std::path::PathBuf; use std::time::Duration; -use warpui::{Entity, ModelContext, ModelHandle, SingletonEntity}; +use galaxyui::{Entity, ModelContext, ModelHandle, SingletonEntity}; use crate::{BulkFilesystemWatcher, BulkFilesystemWatcherEvent}; diff --git a/crates/watcher/src/lib.rs b/crates/watcher/src/lib.rs index 073e1da2..611d5009 100644 --- a/crates/watcher/src/lib.rs +++ b/crates/watcher/src/lib.rs @@ -21,7 +21,7 @@ use notify_debouncer_full::{ }, DebounceEventHandler, DebounceEventResult, DebouncedEvent, Debouncer, NoCache, }; -use warpui::{Entity, ModelContext}; +use galaxyui::{Entity, ModelContext}; #[derive(Debug)] enum BackgroundFileWatcherCommand { diff --git a/plans/galaxy-refactor.md b/plans/galaxy-refactor.md new file mode 100644 index 00000000..f331d800 --- /dev/null +++ b/plans/galaxy-refactor.md @@ -0,0 +1,297 @@ +# Galaxy Refactor — Implementation Plan + +> **Created:** 2026-05-07 +> **Status:** In Progress +> **Current Phase:** Phase 1 — Crate Renaming + +--- + +## Table of Contents + +1. [Phase 1: Crate Renaming](#phase-1-crate-renaming) +2. [Phase 2: Feature Removal](#phase-2-feature-removal) +3. [Phase 3: Branding Rename](#phase-3-branding-rename) +4. [Phase 4: System Prompt & Rules Redesign](#phase-4-system-prompt--rules-redesign) +5. [Phase 5: Binary & Build Config](#phase-5-binary--build-config) +6. [Phase 6: Bedrock Improvements](#phase-6-bedrock-improvements) +7. [Phase 7: Verification](#phase-7-verification) +8. [Critical Fixes from REVIEW.md](#critical-fixes-from-reviewmd) + +--- + +## Phase 1: Crate Renaming + +**Status:** 🔄 In Progress + +Rename all 21 `warp*` crates to `galaxy*` equivalents. + +### Mapping + +| Current | New | Directory Rename | +|---------|-----|-----------------| +| `warp` (app) | `galaxy` | `app/` (keep) | +| `warp_cli` | `galaxy_cli` | `crates/warp_cli/` → `crates/galaxy_cli/` | +| `warp_core` | `galaxy_core` | `crates/warp_core/` → `crates/galaxy_core/` | +| `warp_completer` | `galaxy_completer` | `crates/warp_completer/` → `crates/galaxy_completer/` | +| `warp_editor` | `galaxy_editor` | `crates/editor/` (keep) | +| `warp_features` | `galaxy_features` | `crates/warp_features/` → `crates/galaxy_features/` | +| `warp_files` | `galaxy_files` | `crates/warp_files/` → `crates/galaxy_files/` | +| `warp_graphql` | `galaxy_graphql` | `crates/graphql/` (keep) | +| `warp_graphql_schema` | `galaxy_graphql_schema` | `crates/warp_graphql_schema/` → `crates/galaxy_graphql_schema/` | +| `warp_isolation_platform` | `galaxy_isolation_platform` | `crates/isolation_platform/` (keep) | +| `warp_js` | `galaxy_js` | `crates/warp_js/` → `crates/galaxy_js/` | +| `warp_logging` | `galaxy_logging` | `crates/warp_logging/` → `crates/galaxy_logging/` | +| `warp_managed_secrets` | `galaxy_managed_secrets` | `crates/managed_secrets/` (keep) | +| `warp_ripgrep` | `galaxy_ripgrep` | `crates/warp_ripgrep/` → `crates/galaxy_ripgrep/` | +| `warp_server_client` | `galaxy_server_client` | `crates/warp_server_client/` → `crates/galaxy_server_client/` | +| `warp_terminal` | `galaxy_terminal` | `crates/warp_terminal/` → `crates/galaxy_terminal/` | +| `warp_util` | `galaxy_util` | `crates/warp_util/` → `crates/galaxy_util/` | +| `warp_web_event_bus` | `galaxy_web_event_bus` | `crates/warp_web_event_bus/` → `crates/galaxy_web_event_bus/` | +| `warpui` | `galaxyui` | `crates/warpui/` → `crates/galaxyui/` | +| `warpui_core` | `galaxyui_core` | `crates/warpui_core/` → `crates/galaxyui_core/` | +| `warpui_extras` | `galaxyui_extras` | `crates/warpui_extras/` → `crates/galaxyui_extras/` | + +### Actions + +- [ ] Update `name =` in each crate's `Cargo.toml` +- [ ] Update `[workspace.dependencies]` in root `Cargo.toml` +- [ ] Update all `[dependencies]` references across all crates +- [ ] Update all `use warp_*::` / `extern crate warp_*` in source files +- [ ] Update `default-members` in workspace root +- [ ] Rename directories containing "warp" +- [ ] Update workspace `authors` to `Ryan Ward ` + +--- + +## Phase 2: Feature Removal + +**Status:** ⬜ Pending + +### 2a: Non-Bedrock AI Providers +- [ ] Remove `LLMProvider::OpenAI`, `::Anthropic`, `::Google`, `::Xai` from enum +- [ ] Remove `ApiKeys` fields: `openai`, `anthropic`, `google`, `open_router` +- [ ] Remove BYO key settings UI editors +- [ ] Remove GraphQL `LlmProvider` non-Bedrock variants +- [ ] Remove `ManagedSecretValue::AnthropicApiKey` (keep Bedrock variants) +- [ ] Remove OpenAI/Anthropic/Google/Fireworks secret detection regex +- [ ] Remove `can_use_warp_credits_with_byok` setting +- [ ] Remove `fallback_to_warp` setting + fallback logic + +### 2b: CLI Agent Detection & Third-Party Harnesses +- [ ] Delete plugin manager files: `codex.rs`, `claude.rs`, `gemini.rs`, `opencode.rs` + tests +- [ ] Delete harness files: `claude_code.rs`, `claude_transcript.rs`, `gemini.rs` + dirs + tests +- [ ] Delete `codex_modal.rs` +- [ ] Remove `CLIAgent` enum variants (all third-party agents) +- [ ] Remove icons: `OpenAILogo`, `ClaudeLogo`, `GeminiLogo`, `AmpLogo`, `DroidLogo`, `OpenCodeLogo`, `CopilotLogo`, `Oz` +- [ ] Remove `FeatureFlag::CodexNotifications`, `FeatureFlag::GeminiNotifications` +- [ ] Remove color constants: `OPENAI_COLOR`, `GEMINI_BLUE` + +### 2c: Oz/Cloud Agent +- [ ] Remove `Harness::Oz`, `AgentHarness::Oz` +- [ ] Remove Oz CLI commands +- [ ] Remove `cloud_setup_guide_view.rs` + +### 2d: Referral System +- [ ] Delete `referrals_page.rs`, `referral.rs` (server_api), `referral_theme_status.rs` +- [ ] Delete 8 `referral-*.svg` assets +- [ ] Remove referral themes, GraphQL queries/mutations +- [ ] Remove `WorkspaceAction::ShowReferralSettingsPage` +- [ ] Remove workspace/auth/resource center referral integration + +### 2e: Warp Server Fallback +- [ ] Remove server fallback request path entirely +- [ ] Make Bedrock the ONLY AI path +- [ ] Remove `rules_enabled` server flag + +--- + +## Phase 3: Branding Rename + +**Status:** ⬜ Pending + +### 3a: Critical Code Identifiers +| Find | Replace | +|------|---------| +| `dev.warp.` | `dev.galaxy.` | +| `warp://` | `galaxy://` | +| `WarpTerminal` | `GalaxyTerminal` | +| `warp-app` | `galaxy-app` | +| `warp-cli` | `galaxy-cli` | +| `warp-bedrock-static` | `galaxy-bedrock-static` | +| `warp-bedrock-discovery` | `galaxy-bedrock-discovery` | +| `X-Warp-` | `X-Galaxy-` | +| `warp.sqlite` | `galaxy.sqlite` | +| `warp-terminal` (Linux pkg) | `galaxy-terminal` | +| `/opt/warpdotdev/` | `/opt/galaxydotdev/` | + +### 3b: Environment Variables +- [ ] All `WARP_*` → `GALAXY_*` (~15+ env vars) +- [ ] **CRITICAL:** Fix `WARP_INTEGRATION` split in `app/src/lib.rs:658` +- [ ] **CRITICAL:** Windows TTY env vars (entire file skipped previously) +- [ ] Fix `WARP_CLI_MODE`, `WARP_ENABLE_WAYLAND`, `WARP_PLUGIN_HOST_ADDRESS` +- [ ] Fix `WARP_HONOR_PS1` in remote TTY +- [ ] Fix `WARP_CHANNEL_VERSIONS_PATH` in autoupdate files +- [ ] Fix `WARP_USER_SECRET` build-time env + +### 3c: User-Facing Strings +- [ ] "Warp" → "Galaxy" in all display text +- [ ] "Warp AI" → "Galaxy AI" +- [ ] "Warp Drive" → "Galaxy Drive" +- [ ] "Open in Warp" → "Open in Galaxy" +- [ ] OAuth client name `"Warp"` → `"Galaxy AI"` in MCP +- [ ] Windows registry login item keys + +### 3d: URLs & Org References +- [ ] `warp.dev` → `galaxy.dev` +- [ ] `warpdotdev` → `galaxydotdev` +- [ ] Git dep URLs +- [ ] Email addresses + +### 3e: Platform Files +- [ ] 5 Linux desktop entries (rename files + content) +- [ ] RPM/DEB templates +- [ ] Windows installer +- [ ] `deny.toml` + +### 3f: Telemetry/Sentry +- [ ] Tags: `warp.*` → `galaxy.*` +- [ ] Events: "Warp AI *" → "Galaxy AI *" + +### 3g: Documentation & Assets +- [ ] README.md, CONTRIBUTING.md, FAQ.md, etc. +- [ ] 35+ asset files with "warp" → "galaxy" +- [ ] `WARP.md` → `GALAXY.md` + +--- + +## Phase 4: System Prompt & Rules Redesign + +**Status:** ⬜ Pending + +### 4a: Rewrite `extract_system_prompt` +- [ ] Build dynamic system prompt from `request.input.context` +- [ ] Include: identity, environment, tool list (brief), tips, autonomy mode +- [ ] Conditionally include: project rules, global rules, skills, MCP servers + +### 4b: Add `get_tool_documentation` Meta-Tool +- [ ] New tool definition in `default_tool_definitions()` +- [ ] Client-side handler returns docs for: + - Core tools (detailed parameters, guidelines) + - `"capabilities"` keyword (system overview) + - MCP tools (schema + description) +- [ ] No filesystem/network — pure string lookup + +### 4c: Global Rules Loader +- [ ] New function: `galaxy_home_rules_dir()` → `~/.galaxy-ai/rules/` +- [ ] Glob `*.md`, read contents, inject into system prompt +- [ ] Filename stem = rule name, content = rule text + +### 4d: Update Project Rules Pattern +- [ ] Change `RULES_FILE_PATTERN` from `["WARP.md", "AGENTS.md"]` to `["GALAXY.md", "AGENTS.md"]` + +### 4e: Remove Cloud Rules Infrastructure +- [ ] Remove `CloudAIFactModel`, `AIFact`/`AIMemory` +- [ ] Remove `JsonObjectType::AIFact` / `GraphQLFormat::JsonAIFact` +- [ ] Remove cloud sync for rules + +### 4f: Rules Settings UI +- [ ] Rework `ai/facts/view/rule.rs` for filesystem-based rules +- [ ] List/add/edit/delete rules as `.md` files + +--- + +## Phase 5: Binary & Build Config + +**Status:** ⬜ Pending + +- [ ] Channel binaries: `stable` → `galaxy-stable`, `dev` → `galaxy-dev`, `preview` → `galaxy-preview` +- [ ] Verify `default-run = "galaxy-ai-oss"` +- [ ] Rename `WARP.md` → `GALAXY.md` at project root +- [ ] Update workspace `authors` +- [ ] Review `build.rs`, `DockTilePlugin/Info.plist`, `script/macos/bundle` (flagged as unreviewed) + +--- + +## Phase 6: Bedrock Improvements + +**Status:** ⬜ Pending + +Items from REVIEW.md that improve the Bedrock path: + +### 6a: Config Struct Refactor +- [ ] Create `BedrockConversationConfig` struct to replace 9-param `converse_stream()` signature + +### 6b: Stream Text Buffering Fix +- [ ] Fix `TEXT_FLUSH_THRESHOLD = 20` silent text discard +- [ ] Buffer until semantic boundary (tool call start, stop event) instead of char count + +### 6c: Synthesized Tool Results +- [ ] `ensure_tool_results_paired()` — inject meaningful error text instead of empty content +- [ ] Use: `"Error: tool result was not provided for this tool call"` + +### 6d: Diagnostic Logger +- [ ] Replace `{:?}` debug format in `log_protobuf_input` with JSON serialization +- [ ] Document `GALAXY_BEDROCK_DIAGNOSTICS=1` as dev-only flag + +### 6e: Config Migration Chain +- [ ] Add `.warp` as additional legacy path in migration chain +- [ ] Full chain: `.warp` → `.warp-core` → `.galaxy-ai` + +### 6f: needs_create_task Detection +- [ ] Verify `task_context.tasks.is_empty()` can't false-negative with pre-populated tasks +- [ ] Add comment documenting the assumption + +--- + +## Phase 7: Verification + +**Status:** ⬜ Pending + +- [ ] `cargo check --workspace` +- [ ] `cargo clippy --workspace` +- [ ] Full text grep for remaining "warp" references +- [ ] Verify no broken `use` imports +- [ ] Verify no orphaned module declarations +- [ ] Run integration tests + +--- + +## Critical Fixes from REVIEW.md + +These are bugs in the current branch that must be addressed regardless of phase: + +| Priority | Issue | File | Phase | +|----------|-------|------|-------| +| 🔴 CRITICAL | `WARP_INTEGRATION`/`GALAXY_INTEGRATION` split | `app/src/lib.rs:658` | 3b | +| 🔴 CRITICAL | Windows TTY env vars entirely skipped | `app/src/terminal/local_tty/windows/environment.rs` | 3b | +| 🟠 HIGH | OAuth client name `"Warp"` sent to external providers | `app/src/ai/mcp/templatable_manager/oauth.rs` | 3c | +| 🟠 HIGH | Windows registry login item `"Warp"` keys | `app/src/login_item/windows.rs` | 3c | +| 🟠 HIGH | Config migration missing `.warp` origin | `crates/warp_core/src/paths.rs` | 6e | +| 🟠 HIGH | `needs_create_task` false negative | `app/src/ai/agent/api/impl.rs` | 6f | +| 🟡 MEDIUM | `TEXT_FLUSH_THRESHOLD` text discard | `app/src/ai/bedrock/stream.rs` | 6b | +| 🟡 MEDIUM | Empty synthesized tool results | `app/src/ai/bedrock/convert_request.rs` | 6c | +| 🟡 MEDIUM | 9-param `converse_stream()` | `app/src/ai/bedrock/client.rs` | 6a | +| 🟡 MEDIUM | Diagnostic logger privacy | `app/src/ai/bedrock/diagnostic.rs` | 6d | + +--- + +## Decisions Log + +| Decision | Choice | Rationale | +|----------|--------|-----------| +| URL scheme | `galaxy://` | Clean break from warp:// | +| TERM_PROGRAM | `GalaxyTerminal` | Matches product name | +| Bundle IDs | `dev.galaxy.*` | Clean break | +| GitHub org | `galaxydotdev` | Mirror original naming pattern | +| Data dirs | `~/.galaxy-ai/` | Already set in codebase | +| Env prefix | `GALAXY_*` | Consistent with product | +| Warp Drive | "Galaxy Drive" | Keep feature, rebrand | +| CLI agents | Remove ALL | Bedrock-only, no third-party | +| Server fallback | Remove entirely | Bedrock-only | +| Oz/cloud agent | Remove | Not applicable | +| Rules storage | `~/.galaxy-ai/rules/*.md` | Pure filesystem, no cloud | +| Project rules pattern | `["GALAXY.md", "AGENTS.md"]` | Rebrand | +| System prompt | Dynamic from context + meta-tool | Compact + on-demand docs | +| Tool docs | `get_tool_documentation` meta-tool | Reduces base prompt size | +| Crate names | Rename all to `galaxy_*` | Full rebrand | +| Directory renames | Yes, where name contains "warp" | Consistency | diff --git a/script/macos/bundle b/script/macos/bundle index 096bdd7b..bad6ad7e 100755 --- a/script/macos/bundle +++ b/script/macos/bundle @@ -269,10 +269,10 @@ if [[ "$CARGO_PROFILE" == "dev" ]]; then fi if [[ $RELEASE_CHANNEL = "local" ]]; then - WARP_BIN="warp" - BUNDLE_ID="dev.warp.Warp-Local" - WARP_APP_NAME="WarpLocal" - WARP_SCHEME_NAME="warplocal" + WARP_BIN="galaxy-ai" + BUNDLE_ID="com.samsung.GalaxyAI-Local" + WARP_APP_NAME="GalaxyAI" + WARP_SCHEME_NAME="galaxyai" FEATURES="$FEATURES,agent_mode_debug" # For local builds, use different versions of our bundled frameworks (e.g.: # Sentry). This needs to be exported so it can be referenced by @@ -280,9 +280,9 @@ if [[ $RELEASE_CHANNEL = "local" ]]; then export FRAMEWORK_OVERRIDE="dev" elif [[ $RELEASE_CHANNEL = "dev" ]]; then WARP_BIN="dev" - BUNDLE_ID="dev.warp.Warp-Dev" - WARP_APP_NAME="WarpDev" - WARP_SCHEME_NAME="warpdev" + BUNDLE_ID="com.samsung.GalaxyAI-Dev" + WARP_APP_NAME="GalaxyAIDev" + WARP_SCHEME_NAME="galaxyaidev" FEATURES="$FEATURES,agent_mode_debug" # Enable heap usage tracking & profiling using jemalloc through pprof. FEATURES="$FEATURES,jemalloc_pprof,heap_usage_tracking" @@ -293,22 +293,22 @@ elif [[ $RELEASE_CHANNEL = "dev" ]]; then export HANDLE_MARKDOWN=1 elif [[ $RELEASE_CHANNEL = "preview" ]]; then WARP_BIN="preview" - BUNDLE_ID="dev.warp.Warp-Preview" - WARP_APP_NAME="WarpPreview" - WARP_SCHEME_NAME="warppreview" + BUNDLE_ID="com.samsung.GalaxyAI-Preview" + WARP_APP_NAME="GalaxyAIPreview" + WARP_SCHEME_NAME="galaxyaipreview" FEATURES="$FEATURES,preview_channel" # Enable heap usage tracking & profiling using jemalloc through pprof. FEATURES="$FEATURES,jemalloc_pprof,heap_usage_tracking" elif [[ $RELEASE_CHANNEL = "stable" ]]; then WARP_BIN="stable" - BUNDLE_ID="dev.warp.Warp-Stable" - WARP_APP_NAME="Warp" - WARP_SCHEME_NAME="warp" + BUNDLE_ID="com.samsung.GalaxyAI" + WARP_APP_NAME="GalaxyAI" + WARP_SCHEME_NAME="galaxyai" elif [[ $RELEASE_CHANNEL = "oss" ]]; then - WARP_BIN="warp-oss" - BUNDLE_ID="dev.warp.WarpOss" - WARP_APP_NAME="WarpOss" - WARP_SCHEME_NAME="warposs" + WARP_BIN="galaxy-ai-oss" + BUNDLE_ID="com.samsung.GalaxyAI" + WARP_APP_NAME="GalaxyAI" + WARP_SCHEME_NAME="galaxyai" # The OSS channel does not ship Sentry, so drop the cocoa_sentry feature # (which would otherwise pull in the Sentry framework dependency). FEATURES="release_bundle,extern_plist"