2024-11-16 11:23:18 +08:00
|
|
|
import type { NetworkTypes } from 'easytier-frontend-lib'
|
2024-09-11 09:13:00 +08:00
|
|
|
import { invoke } from '@tauri-apps/api/core'
|
2024-07-08 23:18:10 +08:00
|
|
|
|
2024-11-10 23:03:40 +08:00
|
|
|
type NetworkConfig = NetworkTypes.NetworkConfig
|
|
|
|
|
type NetworkInstanceRunningInfo = NetworkTypes.NetworkInstanceRunningInfo
|
2024-05-05 23:12:54 +08:00
|
|
|
|
2024-05-10 11:56:18 +08:00
|
|
|
export async function parseNetworkConfig(cfg: NetworkConfig) {
|
|
|
|
|
return invoke<string>('parse_network_config', { cfg })
|
2024-05-05 23:12:54 +08:00
|
|
|
}
|
|
|
|
|
|
2024-05-10 11:56:18 +08:00
|
|
|
export async function runNetworkInstance(cfg: NetworkConfig) {
|
|
|
|
|
return invoke('run_network_instance', { cfg })
|
2024-05-05 23:12:54 +08:00
|
|
|
}
|
|
|
|
|
|
2024-05-10 11:56:18 +08:00
|
|
|
export async function retainNetworkInstance(instanceIds: string[]) {
|
|
|
|
|
return invoke('retain_network_instance', { instanceIds })
|
2024-05-05 23:12:54 +08:00
|
|
|
}
|
|
|
|
|
|
2024-05-10 11:56:18 +08:00
|
|
|
export async function collectNetworkInfos() {
|
|
|
|
|
return await invoke<Record<string, NetworkInstanceRunningInfo>>('collect_network_infos')
|
2024-05-05 23:12:54 +08:00
|
|
|
}
|
2024-05-08 21:02:14 +08:00
|
|
|
|
2024-05-10 11:56:18 +08:00
|
|
|
export async function getOsHostname() {
|
|
|
|
|
return await invoke<string>('get_os_hostname')
|
|
|
|
|
}
|
2024-06-04 23:06:10 +08:00
|
|
|
|
2024-08-15 22:43:58 +08:00
|
|
|
export async function isAutostart() {
|
|
|
|
|
return await invoke<boolean>('is_autostart')
|
2024-06-04 23:06:10 +08:00
|
|
|
}
|
2024-07-06 17:18:13 +08:00
|
|
|
|
|
|
|
|
export async function setLoggingLevel(level: string) {
|
|
|
|
|
return await invoke('set_logging_level', { level })
|
|
|
|
|
}
|
2024-07-15 00:03:55 +08:00
|
|
|
|
|
|
|
|
export async function setTunFd(instanceId: string, fd: number) {
|
|
|
|
|
return await invoke('set_tun_fd', { instanceId, fd })
|
|
|
|
|
}
|
2024-09-11 09:13:00 +08:00
|
|
|
|
|
|
|
|
export async function getEasytierVersion() {
|
|
|
|
|
return await invoke<string>('easytier_version')
|
|
|
|
|
}
|