feat: setting page
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { invoke } from "@tauri-apps/api/tauri";
|
||||
import { ConfigType } from "./common";
|
||||
|
||||
export async function restartSidecar() {
|
||||
return invoke<void>("restart_sidecar");
|
||||
@@ -14,6 +15,10 @@ export async function getClashInfo() {
|
||||
return invoke<ClashInfo | null>("get_clash_info");
|
||||
}
|
||||
|
||||
export async function patchClashConfig(payload: Partial<ConfigType>) {
|
||||
return invoke<void>("patch_clash_config", { payload });
|
||||
}
|
||||
|
||||
export async function importProfile(url: string) {
|
||||
return invoke<void>("import_profile", { url });
|
||||
}
|
||||
@@ -56,3 +61,17 @@ export async function putProfiles(current: number) {
|
||||
export async function setSysProxy(enable: boolean) {
|
||||
return invoke<void>("set_sys_proxy", { enable });
|
||||
}
|
||||
|
||||
export interface VergeConfig {
|
||||
theme_mode?: "light" | "dark";
|
||||
enable_self_startup?: boolean;
|
||||
enable_system_proxy?: boolean;
|
||||
}
|
||||
|
||||
export async function getVergeConfig() {
|
||||
return invoke<VergeConfig>("get_verge_config");
|
||||
}
|
||||
|
||||
export async function patchVergeConfig(payload: VergeConfig) {
|
||||
return invoke<void>("patch_verge_config", { payload });
|
||||
}
|
||||
|
||||
@@ -12,14 +12,18 @@ export async function getVersion() {
|
||||
export interface ConfigType {
|
||||
port: number;
|
||||
mode: string;
|
||||
ipv6: boolean;
|
||||
"socket-port": number;
|
||||
"allow-lan": boolean;
|
||||
"log-level": string;
|
||||
"mixed-port": number;
|
||||
"redir-port": number;
|
||||
"socks-port": number;
|
||||
"tproxy-port": number;
|
||||
}
|
||||
|
||||
/// Get current base configs
|
||||
export async function getConfigs() {
|
||||
export async function getClashConfig() {
|
||||
return (await getAxios()).get("/configs") as Promise<ConfigType>;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user