返回 DeepSeek-Reasonix
toolApprovalMode.ts
根目录 / desktop / frontend / src / lib / toolApprovalMode.ts
1 import type { ToolApprovalMode } from "./types";
2
3 export type RestorableToolApprovalMode = Exclude<ToolApprovalMode, "yolo">;
4
5 export function restorableToolApprovalMode(mode?: ToolApprovalMode): RestorableToolApprovalMode {
6 return mode === "auto" ? "auto" : "ask";
7 }
8
9 export function toggleYoloToolApprovalMode(
10 current: ToolApprovalMode,
11 restore?: ToolApprovalMode,
12 ): { mode: ToolApprovalMode; restore?: RestorableToolApprovalMode } {
13 if (current === "yolo") {
14 return { mode: restorableToolApprovalMode(restore) };
15 }
16 return { mode: "yolo", restore: restorableToolApprovalMode(current) };
17 }
18
18 lines TYPESCRIPT