//! IPC surface. Each submodule owns one domain; `builder()` registers them all. //! //! Conventions: //! * every command returns `IdeResult` (rejects with `IdeError` in JS); //! * project-scoped commands resolve the project from the calling window; //! * streaming results use a `Channel` argument; cancellable requests take a //! UI-allocated `RequestId` and are cancelled via `cancel_request`. pub mod agent; pub mod analysis; pub mod app; pub mod build; pub mod bytes; pub mod caches; pub mod clipboard; pub mod coverage; pub mod db; pub mod debug; pub mod deploy; pub mod doc; pub mod docker; pub mod fs; pub mod github; pub mod history; pub mod http; pub mod java; pub mod lsp; pub mod nav; pub mod perf; pub mod plugin; pub mod profiler; pub mod refactor; pub mod run; pub mod sdk; pub mod search; pub mod spell; pub mod ssh; pub mod syntax; pub mod term; pub mod tools; pub mod vcs; pub mod web; pub mod window; use tauri_specta::collect_commands; /// A Tauri channel as the shared implementation's streaming argument. pub(crate) fn sender( channel: tauri::ipc::Channel, ) -> ide_host::ops::Channel { ide_host::ops::Channel::new(move |v| { let _ = channel.send(v); }) } pub fn builder() -> tauri_specta::Builder { tauri_specta::Builder::::new().commands(collect_commands![ app::app_info, app::recent_projects, app::remove_recent_project, app::open_project, app::light_edit_open, app::project_current, app::close_project, app::languages, app::settings_get, app::settings_get_global, app::settings_set, app::settings_export, app::settings_import, app::project_rename, app::project_roots, app::cancel_request, app::cancel_task, app::log_frontend, agent::agent_subscribe, agent::agent_providers, agent::agent_registry_list, agent::agent_registry_install, agent::agent_registry_remove, agent::agent_commands, agent::agent_entries, agent::agent_create, agent::agent_prompt, agent::agent_unqueue, agent::agent_send_queued_now, agent::agent_set_config, agent::agent_fork, agent::agent_rollback, agent::agent_probe, agent::agent_cancel, agent::agent_respond, agent::agent_archive, agent::agent_delete, agent::agent_changes, agent::agent_base_text, fs::fs_read_dir, bytes::fs_probe, bytes::fs_read_range, bytes::fs_read_image, fs::fs_create_file, fs::fs_create_dir, fs::fs_rename, fs::fs_set_writable, fs::fs_delete, fs::fs_copy, fs::fs_read_text, clipboard::clipboard_file_list, clipboard::clipboard_has_files, clipboard::clipboard_set_file_list, doc::doc_open, doc::doc_open_virtual, doc::doc_close, doc::doc_edit, doc::doc_save, doc::doc_save_all, doc::doc_snapshot, doc::doc_set_encoding, doc::doc_set_line_ending, doc::doc_outline, doc::doc_folding, doc::doc_highlights, doc::doc_selection_ranges, syntax::syntax_support, syntax::syntax_node_at, syntax::syntax_expression_at, syntax::syntax_errors, syntax::syntax_locals, syntax::syntax_identifiers, syntax::syntax_identifiers_in_files, syntax::syntax_structural_ranges, doc::history_list, doc::history_content, history::history_list_dir, history::history_put_label, history::history_restore, refactor::refactor_file_move_edits, refactor::refactor_file_move_text_edits, refactor::refactor_move_files, refactor::refactor_undo_file_move, refactor::refactor_can_undo_file_move, caches::caches_schedule_invalidation, caches::app_restart, nav::index_status, nav::find_files, nav::find_symbols, nav::mark_recent, nav::recent_files, nav::remove_recent, nav::web_goto, nav::fs_resolve_reference, nav::path_completions, nav::web_unresolved_references, spell::spell_check, spell::spell_suggest, search::search_start, search::replace_in_files, search::replace_preview, search::search_validate, lsp::lsp_completion, lsp::lsp_inline_completion, lsp::lsp_resolve_completion, lsp::lsp_hover, lsp::lsp_signature_help, lsp::lsp_goto, lsp::lsp_implementations, lsp::lsp_virtual_document, lsp::lsp_references, lsp::lsp_document_highlights, lsp::lsp_workspace_symbols, lsp::lsp_code_actions, lsp::lsp_code_action_query, lsp::lsp_resolve_code_action, lsp::lsp_apply_code_action, lsp::lsp_prepare_rename, lsp::lsp_rename, lsp::lsp_format, lsp::lsp_inlay_hints, lsp::lsp_semantic_tokens, lsp::lsp_code_lens, lsp::lsp_document_links, lsp::lsp_call_hierarchy, lsp::lsp_type_hierarchy, lsp::lsp_servers, lsp::lsp_resend_diagnostics, lsp::lsp_restart, lsp::apply_workspace_edit, lsp::lsp_execute_command, vcs::vcs_status, vcs::vcs_roots, vcs::vcs_branch_info, vcs::vcs_line_hunks, vcs::vcs_file_at, vcs::vcs_blame, vcs::vcs_log, vcs::vcs_commit_files, vcs::vcs_commits_changes, vcs::vcs_branches, vcs::vcs_stashes, vcs::vcs_stage, vcs::vcs_unstage, vcs::vcs_stage_patch, vcs::vcs_discard, vcs::vcs_commit, vcs::vcs_checkout, vcs::vcs_delete_branch, vcs::vcs_restore_branch, vcs::vcs_create_branch, vcs::vcs_undo_commit, vcs::vcs_rename_branch, vcs::vcs_merge, vcs::vcs_rebase, vcs::vcs_stash_push, vcs::vcs_stash_apply, vcs::vcs_stash_drop, vcs::vcs_remote, vcs::vcs_conflict_versions, vcs::vcs_diff_text, vcs::vcs_diff_hunks, vcs::vcs_stage_hunks, vcs::vcs_clone, vcs::vcs_init, vcs::vcs_git_version, vcs::vcs_detected_git, vcs::vcs_config_get, vcs::vcs_operation, vcs::vcs_create_tag, vcs::vcs_tags, vcs::vcs_merge_with, vcs::vcs_rebase_with, vcs::vcs_remotes, vcs::vcs_edit_remote, vcs::vcs_worktrees, vcs::vcs_add_worktree, vcs::vcs_remove_worktree, vcs::vcs_diff_with_worktree, vcs::vcs_diff_revisions, vcs::vcs_create_patch, vcs::vcs_patch_preview, vcs::vcs_apply_patch, vcs::vcs_shelve, vcs::vcs_shelves, vcs::vcs_unshelve, vcs::vcs_shelf_delete, vcs::vcs_shelf_rename, vcs::vcs_shelf_patch, vcs::vcs_changelists_load, vcs::vcs_changelists_save, vcs::vcs_write_patch, term::term_spawn, term::term_write, term::term_resize, term::term_kill, term::term_is_busy, term::term_default_shell, term::term_available_shells, run::run_configs, run::run_save_configs, run::run_templates, run::run_save_templates, run::run_system_env, run::run_start, run::run_stop, run::run_stdin, run::run_list, run::run_close_stdin, run::run_resize, run::run_test_reports, build::build_model, build::build_sync, build::maven_dependency_declaration, build::maven_exclude_dependency, build::build_run, java::java_resolve_launch, java::java_debug_server, java::java_build_workspace, debug::debug_start, debug::debug_set_breakpoints, debug::debug_threads, debug::debug_stack_trace, debug::debug_scopes, debug::debug_variables, debug::debug_evaluate, debug::debug_resume, debug::debug_pause, debug::debug_step, debug::debug_run_to, debug::debug_stop, debug::debug_evaluate_in, debug::debug_breakpoint_states, debug::debug_sessions, tools::tools_list, tools::tools_install, tools::tools_uninstall, tools::jdk_download_vendors, tools::jdk_download_releases, tools::jdk_download_location, tools::jdk_download, sdk::sdk_detect, sdk::sdk_python_effective, sdk::sdk_project_libraries, sdk::sdk_locate_tools, sdk::sdk_python_create_venv, sdk::sdk_python_packages, sdk::sdk_python_pip, window::window_open_project, window::window_open_files, window::window_open_remote, window::window_new, window::window_open_settings, window::window_cycle, window::window_toggle_fullscreen, window::window_take_launch, window::window_close_context, window::window_open_projects, window::app_quit, window::app_cancel_quit, window::menu_configure, window::menu_refresh, window::menu_model, window::menu_set_disabled, window::app_log_location, window::app_build_info, window::app_check_update, window::app_startup_update_check, window::app_install_update, debug::debug_exception_filters, debug::debug_set_exception_breakpoints, debug::debug_set_variable, debug::debug_force_step_over, debug::debug_step_in_targets, debug::debug_step_in_target, debug::debug_restart_frame, debug::debug_capabilities, debug::debug_set_function_breakpoints, debug::debug_set_data_breakpoints, debug::debug_data_breakpoint_info, debug::debug_attachable_processes, debug::debug_listen_for_jvm, debug::debug_redefine_classes, coverage::coverage_prepare, coverage::coverage_collect, coverage::coverage_import, web::web_browsers, web::web_url, web::web_open, profiler::profiler_prepare, profiler::profiler_collect, plugin::plugin_subscribe, plugin::plugin_list, plugin::plugin_set_enabled, plugin::plugin_install_dir, plugin::plugin_catalog, plugin::plugin_uninstall, plugin::plugin_reload, plugin::plugin_run_command, plugin::plugin_set_active_file, plugin::plugin_set_theme, plugin::plugin_set_theme_frame, perf::app_metrics, perf::clear_caches, analysis::inspect_code, analysis::analysis_locate_duplicates, analysis::structural_languages, analysis::structural_validate, analysis::structural_search, docker::docker_snapshot, docker::docker_container_op, docker::docker_remove, docker::docker_inspect, docker::docker_logs, docker::docker_events, docker::docker_pull, docker::docker_prune, docker::docker_compose_op, docker::docker_settings, docker::docker_save_settings, docker::docker_set_registry_password, docker::docker_registry_login, docker::docker_run_env, github::gh_availability, github::gh_pr_list, github::gh_pr_view, github::gh_pr_review_comments, github::gh_pr_checkout, github::gh_pr_create, github::gh_pr_review, github::gh_pr_comment, github::gh_pr_prepare_diff, http::http_requests, http::http_environments, http::http_execute, http::http_history, http::http_history_get, http::http_history_clear, db::db_sources, db::db_save_sources, db::db_set_password, db::db_set_ssh_secret, db::db_trust_ssh_host, ssh::ssh_test, ssh::ssh_set_secret, ssh::ssh_needs_secret, ssh::ssh_trust_host, ssh::ssh_connected, ssh::ssh_disconnect, ssh::ssh_askpass_answer, ssh::ssh_terminal_command, deploy::deploy_upload, deploy::deploy_download, deploy::deploy_delete_remote, deploy::deploy_compare, deploy::deploy_sync, deploy::deploy_info, deploy::deploy_server_root, deploy::remote_list, deploy::remote_open, deploy::remote_of, deploy::remote_delete, deploy::remote_mkdir, deploy::remote_rename, crate::remote_dev::remote_connect, crate::remote_dev::remote_current, crate::remote_dev::remote_disconnect, crate::remote_dev::remote_invoke, db::db_test, db::db_connected, db::db_connect, db::db_disconnect, db::db_databases, db::db_schemas, db::db_tables, db::db_table_details, db::db_ddl, db::db_schema_objects, db::db_object_ddl, db::db_explain, db::db_history, db::db_remove_history, db::db_completion, db::db_export_file, db::db_set_manual_commit, db::db_finish_transaction, db::db_statements, db::db_execute, db::db_table_page, db::db_apply_edits, db::db_console_path, ]) }