feat(chat): Add overwrite confirmation dialog to /chat save (#5686)

Co-authored-by: Jacob Richman <jacob314@gmail.com>
This commit is contained in:
Hiroaki Mitsuyoshi
2025-08-09 15:59:22 +09:00
committed by GitHub
parent 191cc01bf5
commit 6487cc1689
7 changed files with 214 additions and 3 deletions

View File

@@ -39,6 +39,7 @@ import { AuthInProgress } from './components/AuthInProgress.js';
import { EditorSettingsDialog } from './components/EditorSettingsDialog.js';
import { FolderTrustDialog } from './components/FolderTrustDialog.js';
import { ShellConfirmationDialog } from './components/ShellConfirmationDialog.js';
import { RadioButtonSelect } from './components/shared/RadioButtonSelect.js';
import { Colors } from './colors.js';
import { loadHierarchicalGeminiMemory } from '../config/config.js';
import { LoadedSettings, SettingScope } from '../config/settings.js';
@@ -488,6 +489,7 @@ const App = ({ config, settings, startupWarnings = [], version }: AppProps) => {
pendingHistoryItems: pendingSlashCommandHistoryItems,
commandContext,
shellConfirmationRequest,
confirmationRequest,
} = useSlashCommandProcessor(
config,
settings,
@@ -912,6 +914,21 @@ const App = ({ config, settings, startupWarnings = [], version }: AppProps) => {
<FolderTrustDialog onSelect={handleFolderTrustSelect} />
) : shellConfirmationRequest ? (
<ShellConfirmationDialog request={shellConfirmationRequest} />
) : confirmationRequest ? (
<Box flexDirection="column">
{confirmationRequest.prompt}
<Box paddingY={1}>
<RadioButtonSelect
items={[
{ label: 'Yes', value: true },
{ label: 'No', value: false },
]}
onSelect={(value: boolean) => {
confirmationRequest.onConfirm(value);
}}
/>
</Box>
</Box>
) : isThemeDialogOpen ? (
<Box flexDirection="column">
{themeError && (