diff --git a/frontend/App.tsx b/frontend/App.tsx index 59e1b21..bbf11bc 100755 --- a/frontend/App.tsx +++ b/frontend/App.tsx @@ -817,6 +817,7 @@ const App: React.FC = () => { onDeleteCampaign={handleDeleteCampaign} onFlagSubmit={handleFlagSubmit} onResolveSubmit={handleResolveSubmit} + flaggedItems={flaggedItems} />; case 'WIP Reviewer': return ; diff --git a/frontend/components/Auditing.tsx b/frontend/components/Auditing.tsx index b47a145..9a364fc 100755 --- a/frontend/components/Auditing.tsx +++ b/frontend/components/Auditing.tsx @@ -42,7 +42,7 @@ const FlagsTable: React.FC<{ items: FlaggedItem[], onNavigate: AuditingProps['on onClick={() => onNavigate(item)} title={`Click to view Version ${item.version} of ${item.proofName}`} > - {item.proofName} + {item.proofName} Version {item.version} {item.submitter} {item.submitAgency} diff --git a/frontend/components/Campaigns.tsx b/frontend/components/Campaigns.tsx index e808081..37c9e0d 100755 --- a/frontend/components/Campaigns.tsx +++ b/frontend/components/Campaigns.tsx @@ -1268,7 +1268,8 @@ const ProofDetailView: React.FC<{ isUploadingNewVersion: boolean; onFlagSubmit: (flagData: Omit) => void; onResolveSubmit: (resolveData: Omit) => void; -}> = ({ campaignName, proof, onBack, onNewVersionUpload, isUploadingNewVersion, onFlagSubmit, onResolveSubmit }) => { + flaggedItems: FlaggedItem[]; +}> = ({ campaignName, proof, onBack, onNewVersionUpload, isUploadingNewVersion, onFlagSubmit, onResolveSubmit, flaggedItems }) => { const getInitialVersionIndex = () => { if (proof.initialVersion && proof.versions) { @@ -1596,6 +1597,9 @@ const ProofDetailView: React.FC<{ feedback={selectedVersion.feedback} onFlagSubmit={handleFlagSubmitWrapper} onResolveSubmit={handleResolveSubmitWrapper} + flaggedItems={flaggedItems} + proofName={proof.proofName} + version={selectedVersion.version} /> @@ -1622,6 +1626,7 @@ interface CampaignsProps { onDeleteCampaign: (campaignName: string) => Promise; onFlagSubmit: (flagData: Omit) => void; onResolveSubmit: (resolveData: Omit) => void; + flaggedItems: FlaggedItem[]; } export const Campaigns: React.FC = ({ @@ -1642,6 +1647,7 @@ export const Campaigns: React.FC = ({ onDeleteCampaign, onFlagSubmit, onResolveSubmit, + flaggedItems, }) => { const [isModalOpen, setIsModalOpen] = useState(false); @@ -1670,6 +1676,7 @@ export const Campaigns: React.FC = ({ isUploadingNewVersion={isUploadingNewVersion} onFlagSubmit={onFlagSubmit} onResolveSubmit={onResolveSubmit} + flaggedItems={flaggedItems} />; } diff --git a/frontend/components/FeedbackReport.tsx b/frontend/components/FeedbackReport.tsx index dae0d2c..db52190 100755 --- a/frontend/components/FeedbackReport.tsx +++ b/frontend/components/FeedbackReport.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect } from 'react'; -import type { AgentReview, SubReview, RagStatus, OverallStatus } from '../types'; +import type { AgentReview, SubReview, RagStatus, OverallStatus, FlaggedItem } from '../types'; import { CheckCircleIcon, ExclamationTriangleIcon, InformationCircleIcon } from './icons/StatusIcons'; import { FlagIcon } from './icons/FlagIcon'; import { XIcon } from './icons/XIcon'; @@ -185,57 +185,74 @@ const FlagIssueModal: React.FC<{ if (!isOpen) return null; const [comments, setComments] = useState(''); + const [showSuccess, setShowSuccess] = useState(false); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); onSubmit(comments); + setShowSuccess(true); + setTimeout(() => { + setShowSuccess(false); + setComments(''); + onClose(); + }, 2000); }; return (
e.stopPropagation()} > -
-
-

Flag Feedback

-

Reporting incorrect feedback from {agentName}

+ {showSuccess ? ( +
+ +

Flag Submitted

+

Thank you for your feedback on the {agentName}'s review. This has been logged for auditing.

- -
+ ) : ( + <> +
+
+

Flag Feedback

+

Reporting incorrect feedback from {agentName}

+
+ +
-
- -