mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-08-04 11:43:57 +08:00
feat: complete stage 1 infrastructure
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
import { invoke } from "@tauri-apps/api/core";
|
||||
import type { Provider } from "@/types";
|
||||
import type { AppType } from "./types";
|
||||
|
||||
export interface ProviderSortUpdate {
|
||||
id: string;
|
||||
sortIndex: number;
|
||||
}
|
||||
|
||||
export const providersApi = {
|
||||
async getAll(appType: AppType): Promise<Record<string, Provider>> {
|
||||
return await invoke("get_providers", { app_type: appType, app: appType });
|
||||
},
|
||||
|
||||
async getCurrent(appType: AppType): Promise<string> {
|
||||
return await invoke("get_current_provider", {
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
|
||||
async add(provider: Provider, appType: AppType): Promise<boolean> {
|
||||
return await invoke("add_provider", {
|
||||
provider,
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
|
||||
async update(provider: Provider, appType: AppType): Promise<boolean> {
|
||||
return await invoke("update_provider", {
|
||||
provider,
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
|
||||
async delete(id: string, appType: AppType): Promise<boolean> {
|
||||
return await invoke("delete_provider", {
|
||||
id,
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
|
||||
async switch(id: string, appType: AppType): Promise<boolean> {
|
||||
return await invoke("switch_provider", {
|
||||
id,
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
|
||||
async importDefault(appType: AppType): Promise<boolean> {
|
||||
return await invoke("import_default_config", {
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
|
||||
async updateTrayMenu(): Promise<boolean> {
|
||||
return await invoke("update_tray_menu");
|
||||
},
|
||||
|
||||
async updateSortOrder(
|
||||
updates: ProviderSortUpdate[],
|
||||
appType: AppType
|
||||
): Promise<boolean> {
|
||||
return await invoke("update_providers_sort_order", {
|
||||
updates,
|
||||
app_type: appType,
|
||||
app: appType,
|
||||
});
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user