diff --git a/src/renderer/components/modals/ExportBatchDialog.tsx b/src/renderer/components/modals/ExportBatchDialog.tsx index f740e35..4f4af6a 100644 --- a/src/renderer/components/modals/ExportBatchDialog.tsx +++ b/src/renderer/components/modals/ExportBatchDialog.tsx @@ -4,6 +4,7 @@ import { Label } from '@/components/ui/label'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; import { useAppStore } from '@/stores/app-store'; import { ipc } from '@/lib/ipc'; +import { toast } from '@/lib/toast'; import { ExportDialogFooter } from './ExportDialogFooter'; const extFor = (format: 'pdf' | 'docx' | 'html' | 'png') => @@ -25,9 +26,11 @@ export function ExportBatchDialog({ sourcePaths }: { sourcePaths: string[] }) { })); const result = await ipc.export.batch(items, { format, concurrency }); if (!result.ok) { + toast.error(`Export failed: ${result.error.message}`); setError(result.error.message); setSubmitting(false); } else { + toast.success(`Exported ${sourcePaths.length} files`); closeModal(); } }; diff --git a/src/renderer/components/modals/ExportDocxDialog.tsx b/src/renderer/components/modals/ExportDocxDialog.tsx index 9ba069a..769075f 100644 --- a/src/renderer/components/modals/ExportDocxDialog.tsx +++ b/src/renderer/components/modals/ExportDocxDialog.tsx @@ -7,6 +7,7 @@ import { useAppStore } from '@/stores/app-store'; import { useSettingsStore } from '@/stores/settings-store'; import { useExportSource } from '@/hooks/use-export-source'; import { ipc } from '@/lib/ipc'; +import { toast } from '@/lib/toast'; import { ExportDialogFooter } from './ExportDialogFooter'; export function ExportDocxDialog({ sourcePath }: { sourcePath: string }) { @@ -29,9 +30,11 @@ export function ExportDocxDialog({ sourcePath }: { sourcePath: string }) { renderTablesAsAscii: ascii, } as any); if (!result.ok) { + toast.error(`Export failed: ${result.error.message}`); setError(result.error.message); setSubmitting(false); } else { + toast.success(`Exported ${source.title} to ${result.data?.outputPath ?? 'file'}`); closeModal(); } }; diff --git a/src/renderer/components/modals/ExportHtmlDialog.tsx b/src/renderer/components/modals/ExportHtmlDialog.tsx index a9b53a7..9c84aaa 100644 --- a/src/renderer/components/modals/ExportHtmlDialog.tsx +++ b/src/renderer/components/modals/ExportHtmlDialog.tsx @@ -7,6 +7,7 @@ import { useAppStore } from '@/stores/app-store'; import { useSettingsStore } from '@/stores/settings-store'; import { useExportSource } from '@/hooks/use-export-source'; import { ipc } from '@/lib/ipc'; +import { toast } from '@/lib/toast'; import { ExportDialogFooter } from './ExportDialogFooter'; export function ExportHtmlDialog({ sourcePath }: { sourcePath: string }) { @@ -31,9 +32,11 @@ export function ExportHtmlDialog({ sourcePath }: { sourcePath: string }) { renderTablesAsAscii: ascii, } as any); if (!result.ok) { + toast.error(`Export failed: ${result.error.message}`); setError(result.error.message); setSubmitting(false); } else { + toast.success(`Exported ${source.title} to ${result.data?.outputPath ?? 'file'}`); closeModal(); } }; diff --git a/src/renderer/components/modals/ExportPdfDialog.tsx b/src/renderer/components/modals/ExportPdfDialog.tsx index 235bc27..54e0ee2 100644 --- a/src/renderer/components/modals/ExportPdfDialog.tsx +++ b/src/renderer/components/modals/ExportPdfDialog.tsx @@ -7,6 +7,7 @@ import { useAppStore } from '@/stores/app-store'; import { useSettingsStore } from '@/stores/settings-store'; import { useExportSource } from '@/hooks/use-export-source'; import { ipc } from '@/lib/ipc'; +import { toast } from '@/lib/toast'; import { ExportDialogFooter } from './ExportDialogFooter'; const MARGIN_MAP = { @@ -44,9 +45,11 @@ export function ExportPdfDialog({ sourcePath }: { sourcePath: string }) { fontSize, } as any); if (!result.data?.ok) { + toast.error(`Export failed: ${result.data?.error?.message ?? 'Export failed'}`); setError(result.data?.error?.message ?? 'Export failed'); setSubmitting(false); } else { + toast.success(`Exported ${source.title} to ${result.data?.outputPath ?? 'file'}`); closeModal(); } };