@@ -127,6 +127,9 @@ export default function Page() {
127127 const [ actionPlan , setActionPlan ] = useState < ActionPlan | null > ( null ) ;
128128 const [ isGeneratingActionPlan , setIsGeneratingActionPlan ] = useState ( false ) ;
129129 const [ activeTab , setActiveTab ] = useState ( "find-referrals" ) ;
130+ const [ errorMessage , setErrorMessage ] = useState < string | undefined > (
131+ undefined ,
132+ ) ;
130133
131134 const searchParams = useSearchParams ( ) ;
132135
@@ -177,14 +180,16 @@ export default function Page() {
177180
178181 setLoading ( true ) ;
179182 setResult ( null ) ;
183+ setErrorMessage ( undefined ) ;
180184 try {
181185 const request = clientDescription + getCollatedReferralOptions ( ) ;
182- const { resultId, resources } = await fetchResources (
186+ const { resultId, resources, errorMessage } = await fetchResources (
183187 request ,
184188 userEmail ,
185189 prompt_version_id ,
186190 ) ;
187191 setResultId ( resultId ) ;
192+ setErrorMessage ( errorMessage ) ;
188193 onResources ( resources ) ;
189194 } catch ( e : unknown ) {
190195 const message = e instanceof Error ? e . message : "Unknown error" ;
@@ -210,6 +215,7 @@ export default function Page() {
210215 setClientDescription ( "" ) ;
211216 setSelectedResources ( [ ] ) ;
212217 setActionPlan ( null ) ;
218+ setErrorMessage ( undefined ) ;
213219 }
214220
215221 function handleResourceSelection ( resource : Resource , checked : boolean ) {
@@ -236,12 +242,20 @@ export default function Page() {
236242
237243 setIsGeneratingActionPlan ( true ) ;
238244 setActionPlan ( null ) ;
245+ setErrorMessage ( undefined ) ;
239246
240247 try {
241- const plan = await fetchActionPlan ( selectedResources , userEmail ) ;
248+ const { actionPlan : plan , errorMessage : planError } =
249+ await fetchActionPlan ( selectedResources , userEmail ) ;
242250 setActionPlan ( plan ) ;
251+ if ( planError ) {
252+ setErrorMessage ( planError ) ;
253+ }
243254 } catch ( error ) {
244255 console . error ( "Error generating action plan:" , error ) ;
256+ setErrorMessage (
257+ "The server encountered an unexpected error. Please try again later." ,
258+ ) ;
245259 } finally {
246260 setIsGeneratingActionPlan ( false ) ;
247261 }
@@ -549,7 +563,10 @@ export default function Page() {
549563 { resultId && < EmailReferralsButton resultId = { resultId } /> }
550564 </ div >
551565 </ div >
552- < ResourcesList resources = { result ?? [ ] } />
566+ < ResourcesList
567+ resources = { result ?? [ ] }
568+ errorMessage = { errorMessage }
569+ />
553570 { result && result . length > 0 && (
554571 < ActionPlanSection
555572 resources = { result }
0 commit comments