#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] mod badge; mod git; use badge::set_sync_badge; use git::{ SearchCancellationState, apply_file_patch, cancel_code_search, cancel_file_history, checkout_branch, cherry_pick_abort, cherry_pick_commit, cherry_pick_continue, clone_repository, commit, commit_ai_generate, commit_ai_load, commit_ai_local_models, commit_ai_status, compare_commits, compare_file_to_head, compare_file_to_parent, create_branch, create_tag, cred_delete, cred_load, cred_save, delete_branch, delete_tag, diff_file_against_working_tree, fetch, get_file_patch, get_remote_url, get_status, list_branches, list_commits, list_file_history, list_repository_files, list_stashes, list_tags, merge_branch, open_repo_in_explorer, open_repository, open_repository_bundle, open_repository_file, pull, push, push_tag, read_conflict, rebase_abort, rebase_branch, rebase_continue, rename_branch, resolve_conflict, resolve_conflict_side, restore_file_from_commit, restore_files, restore_to_commit, search_code_introductions, stage_files, stash_apply, stash_drop, stash_pop, stash_push, unstage_files, }; fn main() { tauri::Builder::default() .plugin(tauri_plugin_updater::Builder::new().build()) .manage(SearchCancellationState::default()) .manage(commit_ai::CommitAiEngine::new()) .plugin(tauri_plugin_dialog::init()) .invoke_handler(tauri::generate_handler![ open_repository, clone_repository, open_repo_in_explorer, open_repository_file, get_status, list_branches, list_stashes, checkout_branch, create_branch, rename_branch, delete_branch, list_tags, create_tag, delete_tag, push_tag, cherry_pick_commit, cherry_pick_continue, cherry_pick_abort, stage_files, unstage_files, stash_push, stash_apply, stash_pop, stash_drop, restore_files, get_file_patch, apply_file_patch, commit, commit_ai_status, commit_ai_load, commit_ai_local_models, commit_ai_generate, pull, push, fetch, list_commits, restore_to_commit, restore_file_from_commit, merge_branch, rebase_branch, rebase_continue, rebase_abort, list_repository_files, open_repository_bundle, list_file_history, cancel_file_history, compare_commits, compare_file_to_head, compare_file_to_parent, diff_file_against_working_tree, search_code_introductions, cancel_code_search, read_conflict, resolve_conflict, resolve_conflict_side, get_remote_url, cred_load, cred_save, cred_delete, set_sync_badge ]) .run(tauri::generate_context!()) .expect("error while running tauri application"); }