Add remote access controls
This commit is contained in:
28
packages/ui/src/lib/native/cli.ts
Normal file
28
packages/ui/src/lib/native/cli.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import { runtimeEnv } from "../runtime-env"
|
||||
|
||||
export async function restartCli(): Promise<boolean> {
|
||||
try {
|
||||
if (runtimeEnv.host === "electron") {
|
||||
const api = (window as typeof window & { electronAPI?: { restartCli?: () => Promise<unknown> } }).electronAPI
|
||||
if (api?.restartCli) {
|
||||
await api.restartCli()
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
if (runtimeEnv.host === "tauri") {
|
||||
const tauri = (window as typeof window & { __TAURI__?: { invoke?: <T = unknown>(cmd: string, args?: Record<string, unknown>) => Promise<T> } }).__TAURI__
|
||||
if (tauri?.invoke) {
|
||||
await tauri.invoke("cli_restart")
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("Failed to restart CLI", error)
|
||||
return false
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
Reference in New Issue
Block a user