WORKFLOW-APP/components
Dave 7c3847fbb0 feat: BizPortal 2.0 — Python Playwright sidecar
Replaces the brittle agent-driven /api/bizportal/search queue with a
deterministic Python FastAPI service that drives BizPortal via a real
headless Chromium. The old flow is untouched.

What this adds:
- scripts/bizportal_service.py — FastAPI + Playwright service with
  /search, /reserve, /health endpoints. Persistent login session
  via storage_state.json. Locator-based selectors (vs eval JS).
- app/bizportal-2/ — new /bizportal-2 page, synchronous fetch
  (no polling), shows round-trip duration, mirrors the existing
  bulk-add + link UX.
- app/api/bizportal-2/{search,reserve,health}/route.ts — thin
  proxies to the Python sidecar.
- scripts/README.md, .env.example, .gitignore, requirements.txt.
- .gitignore: ignore tsconfig.tsbuildinfo (build artefact).

Wiring:
- components/NavBar.tsx: 'BizPortal 2.0' nav entry with TEST badge.
- app/bizportal/page.tsx: 'Try BizPortal 2.0' action link in
  header so the new option is discoverable from the existing page.

Run: cd scripts && source .venv/bin/activate && uvicorn
bizportal_service:app --port 7001
2026-08-17 18:33:36 +02:00
..
AddEntityModal.tsx Use type=tel for all ID number fields to trigger numeric keypad on mobile 2026-07-30 17:53:41 +02:00
AgentVoiceReply.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
ClientToggle.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
CompanyEditButton.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
Dashboard.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
DeleteConfirmModal.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
DirectorForm.tsx Use type=tel for all ID number fields to trigger numeric keypad on mobile 2026-07-30 17:53:41 +02:00
DirectorStep.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
EditEntityModal.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
GroupReport.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
GroupsExplorer.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
LinkedCompaniesList.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
LinkedDirectorsList.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
LinkEntityModal.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
NavBar.tsx feat: BizPortal 2.0 — Python Playwright sidecar 2026-08-17 18:33:36 +02:00
OnboardingWizard.tsx feat: split company physical and postal addresses into structured fields 2026-08-14 21:00:14 +02:00
OrgChart.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
PageHeader.tsx feat: initialize full ysterbaard frontend application 2026-07-23 19:10:47 +02:00
PrintButton.tsx feat: print to PDF button on registration detail view 2026-08-14 19:51:59 +02:00
ProcessActions.tsx feat: initialize full ysterbaard frontend application 2026-07-23 19:10:47 +02:00
QueryProvider.tsx feat: initialize full ysterbaard frontend application 2026-07-23 19:10:47 +02:00
RegistrationDocuments.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
RegistrationWizard.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
ResolutionExplorer.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00
RouteChrome.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
ShareLinkButton.tsx feat: initialize full ysterbaard frontend application 2026-07-23 19:10:47 +02:00
Skeleton.tsx feat: initialize full ysterbaard frontend application 2026-07-23 19:10:47 +02:00
StatCard.tsx feat: initialize full ysterbaard frontend application 2026-07-23 19:10:47 +02:00
StatusBadge.tsx Add native Share button to registration link dialog 2026-07-30 16:38:05 +02:00
Step2Actions.tsx feat: add BizPortal tab + name-already-approved flow + registrations improvements 2026-08-14 18:08:51 +02:00
VoiceField.tsx feat: Check Mail button on Step 2 + check-cipc-mail API route 2026-08-11 18:33:03 +02:00