/* global React */ const { useState } = React; // ─────────── Applicant Dashboard ─────────── const ApplicantDashboard = ({ nav }) => { const { tweaks } = useApp(); const T = tweaks.lang === 'ES'; return (
{T?'Su expediente':'Your case'}

{T?'Hola, María.':'Hi, Maria.'}

{T?'Va muy bien. Su expediente está en revisión. Le avisaremos cuando necesitemos algo de usted.':"You're doing great. Your case is in review. We'll tell you the moment we need anything from you."}

Print summary nav('intake')}> Continue intake
{/* Status hero */}
Case GE-2026-4782 In review
Reviewer is checking your medical records.
Assigned to J. Delacruz · avg turnaround 2 days
nav('messages')}> Message reviewer nav('audit')}>View case history
{/* Progress bar of stages */}
Stages
{[ ['Intake', 'done', '100%'], ['Documents', 'partial', '83%'], ['Reviewer check', 'active', '40%'], ['Final review & sign', 'wait', '—'], ['Delivery', 'wait', '—'], ].map(([label, state, v], i) => (
{state === 'done' && } {state === 'active' &&
}
{label}
{v}
))}
{/* Three cards */}
{/* Outstanding tasks */}

Things to finish

3 open
{[ { k:'reup', tag:'Action needed', title:'Re-upload medical records', note:'One image was blurry — see reviewer notes', cta:'Re-upload', icon:'upload', urgent:true, action:()=>nav('docupload') }, { k:'contra', tag:'Clarify', title:'Which date did your symptoms start?', note:'Two answers don\'t quite match', cta:'Review', icon:'warn', urgent:true, action:()=>nav('contradiction') }, { k:'work', tag:'To do', title:'Finish your work history section', note:'5 jobs remaining · about 10 minutes', cta:'Continue', icon:'arrow', action:()=>nav('intake') }, ].map((t, i) => (
{t.tag} {t.title}
{t.note}
{t.cta}
))}
{/* Bottom grid */}

Recent activity

{[ { when:'Today · 2:14p', t:'Reviewer requested clarification', body:'One date doesn\'t match another answer — you\'ll find the question in your tasks.', type:'warn' }, { when:'Today · 11:02a', t:'Case assigned to J. Delacruz', body:'Experienced SSDI reviewer. Expect a response within 2 business days.', type:'' }, { when:'Yesterday · 5:40p', t:'AI extracted 3 dates from MRI report', body:'Auto-filled "first diagnosis" and "last visit" fields. You can edit these.', type:'ai' }, { when:'Yesterday · 5:30p', t:'You uploaded Dr_Patel_Visit_2024-11.pdf', body:'Added to medical records folder.', type:'' }, ].map((e,i) => (
{e.when}
{e.t}
{e.body}
))}
JD
J. Delacruz
Your case reviewer

"Hi Maria — I've started reviewing your medical records. I'll have a preliminary check done by Friday. Please re-upload the one blurry file when you get a chance."

nav('messages')}> Open conversation
Data & privacy
); }; // ─────────── Messages thread ─────────── const ApplicantMessages = ({ onBack }) => { const [draft, setDraft] = useState(''); const [msgs, setMsgs] = useState([ { who:'r', name:'J. Delacruz', text:"Hi Maria — I'm J. Delacruz, your reviewer. I've started going through your medical records.", when:'Mon 9:12a', avatar:'JD' }, { who:'r', name:'J. Delacruz', text:'One of the images came through blurry. Could you re-upload IMG_4218 when you get a moment? No rush — sometime this week is fine.', when:'Mon 9:14a', avatar:'JD', attach:{name:'IMG_4218.heic', note:'Needs re-upload'} }, { who:'u', text:'Thanks! I\'ll take a new photo tonight. Should I use the scanner at the library instead?', when:'Mon 2:01p' }, { who:'r', name:'J. Delacruz', text:'Either works! A phone photo on a flat, well-lit surface is usually fine — no need to go out of your way.', when:'Mon 2:08p', avatar:'JD' }, { who:'sys', text:'You uploaded a new version: Dr_Patel_Visit_2024-11_v2.pdf', when:'Tue 11:40a' }, { who:'r', name:'J. Delacruz', text:"That's much clearer, thank you. One last thing — I noticed your intake mentions both March 2023 and Summer 2022 for symptom onset. There's a clarification question waiting in your tasks when you have a minute.", when:'Today 2:14p', avatar:'JD' }, ]); const send = () => { if (!draft.trim()) return; setMsgs(m => [...m, { who:'u', text: draft, when:'Just now' }]); setDraft(''); }; return (
JD
J. Delacruz · Reviewer
Online now · typically responds in 2 hours
End-to-end encrypted
{msgs.map((m, i) => { if (m.who === 'sys') return (
· {m.text} · {m.when}
); const mine = m.who === 'u'; return (
{!mine &&
{m.avatar}
}
{!mine &&
{m.name}
}
{m.text} {m.attach && (
HEIC
{m.attach.name}
{m.attach.note}
Fix
)}
{m.when}
); })}
setDraft(e.target.value)} onKeyDown={e=>{ if (e.key==='Enter') send(); }} style={{flex:1, border:0, outline:0, background:'transparent', padding:'10px 8px', fontSize:14}} /> Send
Replies usually come within 2 business hours · urgent questions? Call (800) 555-0199
); }; // ─────────── Case history / audit ─────────── const ApplicantAudit = ({ onBack }) => { return (
Case GE-2026-4782 · Full history

Everything that\'s happened on your case.

Every step — yours, your reviewer\'s, and the AI — is logged here. You can download this record anytime.

{[ { when:'Today · 2:14p', t:'J. Delacruz requested clarification', body:'Date mismatch flagged: symptom onset answered as both "March 2023" and "Summer 2022".', type:'warn' }, { when:'Today · 11:02a', t:'Case assigned to reviewer', body:'J. Delacruz (SSDI specialist, 4 yrs) · avg turnaround 2 days.', type:'' }, { when:'Tue · 11:40a', t:'You uploaded Dr_Patel_Visit_2024-11_v2.pdf', body:'Replaced IMG_4218.heic (blurry).', type:'' }, { when:'Tue · 10:22a', t:'AI quality check on uploads', body:'Flagged 1/3 images as low-quality. All 3 files virus-scanned — clean.', type:'ai' }, { when:'Mon · 5:40p', t:'AI extracted dates from MRI report', body:'Auto-populated "first diagnosis" (Feb 2023) and "last visit" (Nov 2024) fields. Confidence: 94%.', type:'ai' }, { when:'Mon · 5:30p', t:'You uploaded 3 documents', body:'Dr_Patel_Visit_2024-11.pdf, MRI_Report.jpg, IMG_4218.heic.', type:'' }, { when:'Mon · 4:12p', t:'You completed "Medical History" section', body:'12 of 18 intake sections complete.', type:'' }, { when:'Mon · 3:40p', t:'You consented to DCW Terms v2026.04', body:'Recorded with timestamp and IP hash.', type:'' }, { when:'Mon · 3:38p', t:'MFA verified via Authenticator app', body:'Session started — New York, NY.', type:'' }, { when:'Mon · 3:35p', t:'Account created', body:'maria.r@outlook.com', type:'' }, ].map((e,i) => (
{e.when}
{e.t} {e.type === 'ai' && AI} {e.type === 'warn' && Action}
{e.body}
))}
Download as PDF
); }; Object.assign(window, { ApplicantDashboard, ApplicantMessages, ApplicantAudit });