import { useState } from 'react';
import { AlertTriangle, ChevronDown, ChevronRight } from 'lucide-react';
import { ReportSection } from '../ReportSection';
import type { ReportErrors, ToolError } from '@renderer/types/sessionReport';
interface ErrorItemProps {
error: ToolError;
}
const ErrorItem = ({ error }: ErrorItemProps) => {
const [expanded, setExpanded] = useState(false);
return (
{expanded && (
{error.inputPreview && (
Input
{error.inputPreview}
)}
)}
);
};
interface ErrorSectionProps {
data: ReportErrors;
defaultCollapsed?: boolean;
}
export const ErrorSection = ({ data, defaultCollapsed }: ErrorSectionProps) => {
return (
{data.errors.length} error{data.errors.length !== 1 ? 's' : ''}
{data.permissionDenials.count > 0 && (
{data.permissionDenials.count} permission denial
{data.permissionDenials.count !== 1 ? 's' : ''}
)}
{data.errors.map((error, idx) => (
))}
);
};