@@ -10,6 +10,7 @@ interface GrantReportFormProps {
1010 grantDetails : {
1111 project_name : string
1212 issue_number : number
13+ email : string
1314 }
1415 email_hash : string
1516}
@@ -38,6 +39,7 @@ export default function GrantReportForm({
3839 const [ error , setError ] = useState < string > ( )
3940 const [ showPreview , setShowPreview ] = useState ( false )
4041 const [ recoveredData , setRecoveredData ] = useState ( false )
42+ const [ loading , setLoading ] = useState ( false )
4143
4244 const {
4345 register,
@@ -170,29 +172,28 @@ export default function GrantReportForm({
170172 ] )
171173
172174 const onSubmit = async ( data : GrantReportFormData ) => {
175+ setLoading ( true )
173176 setError ( undefined )
174177
175178 try {
176179 const response = await fetchPostJSON ( '/api/report-bot' , {
177180 ...data ,
178181 issue_number : grantDetails . issue_number ,
179- email_hash ,
182+ email : grantDetails . email ,
180183 } )
181184
182185 if ( response . error ) {
183186 setError ( response . error )
187+ setLoading ( false )
184188 return
185189 }
186190
187- // Clear all saved form data for this grant after successful submission
188- clearSavedData ( )
189-
190- setSubmitted ( true )
191+ // Clear saved data
192+ localStorage . removeItem ( 'report_draft' )
191193 router . push ( '/reports/success' )
192194 } catch ( e ) {
193- setError (
194- 'Error submitting report. Your data has been saved locally. Please try again later.'
195- )
195+ setError ( 'Failed to submit report. Please try again.' )
196+ setLoading ( false )
196197 }
197198 }
198199
@@ -511,7 +512,7 @@ export default function GrantReportForm({
511512 review it carefully before submitting.
512513 </ p >
513514 < div className = "overflow-hidden rounded-lg border border-gray-700 bg-gray-800 shadow-md" >
514- < ReportPreview data = { watchAllFields } />
515+ < ReportPreview { ... watchAllFields } />
515516 </ div >
516517 </ div >
517518
0 commit comments