feat(GRO-106): portal Communication tab — real backend

- Added GET /portal/conversation and GET /portal/conversation/messages endpoints
- Created Communication.api.ts with typed fetchers and React hooks
- Rewired Communication.tsx to use real API, removed mock data
- Added composer-disabled bar with "Reply from your phone" tooltip
- Added conversation route tests to portal.test.ts

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-14 06:07:01 +00:00
committed by Flea Flicker [agent]
parent d0ba537b31
commit 9c9568b80c
19 changed files with 2107 additions and 8916 deletions
+1 -1
View File
@@ -170,7 +170,7 @@ export function CustomerPortal() {
case "billing":
return <BillingPayments readOnly={!!isReadOnly} sessionId={sessionId} />;
case "messages":
return <Communication readOnly={!!isReadOnly} />;
return <Communication readOnly={!!isReadOnly} sessionId={sessionId} />;
case "settings":
return <AccountSettings readOnly={!!isReadOnly} sessionId={sessionId} />;
}