feat: Add Hope Integrative Health tenant, schedule, patients, and pre-launch BAA workflow

This commit is contained in:
2026-09-07 11:29:14 -07:00
parent bf0c8c4b37
commit f81e3191bf
2 changed files with 186 additions and 1 deletions
+24
View File
@@ -64,6 +64,7 @@ import {
Sparkles, Sparkles,
Scale, Scale,
Lock, Lock,
ShieldCheck,
} from 'lucide-react'; } from 'lucide-react';
export default function Home() { export default function Home() {
@@ -595,6 +596,29 @@ export default function Home() {
</div> </div>
</div> </div>
{/* Pre-Launch / Pending BAA Banner */}
{portalMode === 'clinic' && activeTenant.baaStatus === 'pending' && (
<div className="max-w-7xl mx-auto mt-2.5 p-2.5 bg-emerald-50 border border-emerald-200/90 rounded-xl flex flex-col sm:flex-row items-center justify-between gap-2 text-xs">
<div className="flex items-center gap-2 text-emerald-950">
<span className="w-2.5 h-2.5 rounded-full bg-emerald-500 animate-pulse shrink-0" />
<span className="font-bold">{activeTenant.name}:</span>
<span className="text-emerald-800">
Scheduling, calendars, and digital intake are active for testing. Ready for doctor BAA sign-off on go-live!
</span>
</div>
<button
type="button"
onClick={() => {
clinicalAudio.playClick();
setPortalMode('onboarding');
}}
className="px-3 py-1 bg-emerald-700 hover:bg-emerald-800 text-white font-bold rounded-lg transition shadow-xs flex items-center gap-1.5 shrink-0"
>
<ShieldCheck className="w-3.5 h-3.5" /> Sign BAA to Go Live
</button>
</div>
)}
{/* Sub-Tabs for Doctor Clinic OS */} {/* Sub-Tabs for Doctor Clinic OS */}
{portalMode === 'clinic' && ( {portalMode === 'clinic' && (
<div className="max-w-7xl mx-auto flex items-center gap-2 mt-3 pt-2.5 border-t border-slate-100 overflow-x-auto text-xs"> <div className="max-w-7xl mx-auto flex items-center gap-2 mt-3 pt-2.5 border-t border-slate-100 overflow-x-auto text-xs">
+162 -1
View File
@@ -81,7 +81,7 @@ export const INITIAL_TENANTS: ClinicTenant[] = [
id: 'tenant-3', id: 'tenant-3',
name: 'Elevate Sports & Spine Rehab', name: 'Elevate Sports & Spine Rehab',
slug: 'elevate-rehab', slug: 'elevate-rehab',
domain: 'elevate.mediusa.app', domain: 'elevate.mediusaos.com',
phone: '(555) 441-9022', phone: '(555) 441-9022',
email: 'team@elevatespine.com', email: 'team@elevatespine.com',
address: '420 Olympic Blvd', address: '420 Olympic Blvd',
@@ -95,6 +95,27 @@ export const INITIAL_TENANTS: ClinicTenant[] = [
mrr: 199, mrr: 199,
stripeConnected: true, stripeConnected: true,
createdAt: '2026-02-18', createdAt: '2026-02-18',
baaStatus: 'executed',
},
{
id: 'tenant-hope',
name: 'Hope Integrative Health & Chiropractic',
slug: 'hope',
domain: 'hope.mediusaos.com',
phone: '(555) 472-8833',
email: 'contact@hopehealth.clinic',
address: '1250 Hope Valley Road, Suite 100',
cityStateZip: 'Richmond, VA 23219',
npi: '1982736450',
taxId: '54-9812734',
logoText: 'HOPE HEALTH',
brandColor: '#059669', // Emerald Green
accentColor: '#10b981',
plan: 'Pro Clinic',
mrr: 149,
stripeConnected: true,
createdAt: '2026-03-01',
baaStatus: 'pending', // Ready for doctor sign-off on go-live!
}, },
]; ];
@@ -125,6 +146,19 @@ export const INITIAL_PROVIDERS: Provider[] = [
avatarUrl: 'https://images.unsplash.com/photo-1594824813571-638f026385a8?w=150&auto=format&fit=crop&q=80', avatarUrl: 'https://images.unsplash.com/photo-1594824813571-638f026385a8?w=150&auto=format&fit=crop&q=80',
color: '#0369a1', color: '#0369a1',
}, },
{
id: 'prov-hope-1',
tenantId: 'tenant-hope',
name: 'Dr. Hope Sullivan',
title: 'Medical Director & Chiropractic Physician',
credentials: 'D.C., MS, DACBSP',
specialty: 'Integrative Spine Care & Functional Rehabilitation',
npi: '1982736450',
email: 'dr.hope@hopehealth.clinic',
phone: '(555) 472-8834',
avatarUrl: 'https://images.unsplash.com/photo-1559839734-2b71ea197ec2?w=150&auto=format&fit=crop&q=80',
color: '#059669',
},
]; ];
export const INITIAL_PATIENTS: Patient[] = [ export const INITIAL_PATIENTS: Patient[] = [
@@ -307,6 +341,81 @@ export const INITIAL_PATIENTS: Patient[] = [
status: 'at_risk', status: 'at_risk',
}, },
}, },
{
id: 'pat-hope-1',
tenantId: 'tenant-hope',
firstName: 'Chloe',
lastName: 'Adams',
email: 'chloe.adams@example.com',
phone: '(555) 412-9988',
dob: '1993-11-22',
gender: 'Female',
address: '450 Monument Ave, Richmond, VA',
insuranceName: 'CareFirst BlueCross BlueShield',
insuranceId: 'BCBS-88301',
chiefComplaint: 'Chronic cervical tension and bilateral trap spasm from long desk hours',
lastVisitDate: '2026-09-04',
nextAppointmentDate: '2026-09-08',
daysSinceLastVisit: 2,
status: 'active',
activeMembership: 'Spine & Posture Monthly Club',
vitals: {
bloodPressure: '116/74',
heartRate: 64,
temperature: '98.6 °F',
oxygenSat: 99,
painLevel: 4,
bmi: '21.5',
allergies: ['None known'],
contraindications: ['None'],
},
carePlan: {
title: 'Cervicothoracic Stabilization & Ergonomics Protocol',
totalVisits: 8,
completedVisits: 2,
frequency: '1x / week for 6 weeks',
targetCondition: 'Cervical Subluxation & Upper Cross Syndrome',
startDate: '2026-08-20',
status: 'on_track',
},
},
{
id: 'pat-hope-2',
tenantId: 'tenant-hope',
firstName: 'David',
lastName: 'Miller',
email: 'david.miller@example.com',
phone: '(555) 723-5501',
dob: '1981-03-15',
gender: 'Male',
address: '890 Broad St, Richmond, VA',
insuranceName: 'Aetna Open Access',
insuranceId: 'AET-49102',
chiefComplaint: 'Acute lumbo-sacral strain after weekend athletic training',
lastVisitDate: '2026-09-05',
nextAppointmentDate: '2026-09-09',
daysSinceLastVisit: 1,
status: 'active',
vitals: {
bloodPressure: '124/80',
heartRate: 72,
temperature: '98.2 °F',
oxygenSat: 98,
painLevel: 6,
bmi: '26.1',
allergies: ['Sulfa drugs'],
contraindications: ['Avoid heavy flexion-distraction without warm-up'],
},
carePlan: {
title: 'Lumbar Spine Rehabilitation & Core Decompression',
totalVisits: 10,
completedVisits: 3,
frequency: '2x / week for 4 weeks',
targetCondition: 'Lumbar Segmental Dysfunction (L4-L5)',
startDate: '2026-08-25',
status: 'on_track',
},
},
]; ];
export const INITIAL_APPOINTMENTS: Appointment[] = [ export const INITIAL_APPOINTMENTS: Appointment[] = [
@@ -379,6 +488,58 @@ export const INITIAL_APPOINTMENTS: Appointment[] = [
isTelehealth: true, isTelehealth: true,
notes: 'Virtual consult: evaluate ergonomic workstation setup and review suboccipital stretches.', notes: 'Virtual consult: evaluate ergonomic workstation setup and review suboccipital stretches.',
}, },
{
id: 'apt-hope-1',
tenantId: 'tenant-hope',
patientId: 'pat-hope-1',
patientName: 'Chloe Adams',
patientPhone: '(555) 412-9988',
providerId: 'prov-hope-1',
providerName: 'Dr. Hope Sullivan',
date: '2026-09-08',
time: '09:00 AM',
durationMinutes: 30,
serviceType: 'Cervical Spinal Adjustment & Myofascial Release',
status: 'confirmed',
room: 'Adjusting Suite 1',
fee: 85,
notes: 'Follow-up visit 3/8. Re-check upper cervical alignment and trapezius trigger points.',
},
{
id: 'apt-hope-2',
tenantId: 'tenant-hope',
patientId: 'pat-hope-2',
patientName: 'David Miller',
patientPhone: '(555) 723-5501',
providerId: 'prov-hope-1',
providerName: 'Dr. Hope Sullivan',
date: '2026-09-08',
time: '10:00 AM',
durationMinutes: 45,
serviceType: 'Initial Examination & Lumbar Decompression',
status: 'in_room',
room: 'Decompression Suite',
fee: 145,
notes: 'Acute lumbosacral pain onset. Patient arrived and completed paperless digital intake.',
},
{
id: 'apt-hope-3',
tenantId: 'tenant-hope',
patientId: 'pat-hope-3',
patientName: 'Samantha Brooks',
patientPhone: '(555) 881-2244',
providerId: 'prov-hope-1',
providerName: 'Dr. Hope Sullivan',
date: '2026-09-08',
time: '11:15 AM',
durationMinutes: 30,
serviceType: 'Virtual Telehealth Ergonomic Consult',
status: 'booked',
room: 'Telehealth Room',
fee: 65,
isTelehealth: true,
notes: 'Remote workstation evaluation and home exercise protocol.',
},
]; ];
export const INITIAL_SOAP_NOTES: SoapNote[] = [ export const INITIAL_SOAP_NOTES: SoapNote[] = [