@burdenoff/microfe-mybodyshield 2026.511.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/dist/dev/main.d.ts +2 -0
- package/dist/dev/main.d.ts.map +1 -0
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-types.d.ts +18199 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +2 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-types.d.ts +43046 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/mybodyshield/MyBodyShieldRoot.d.ts +5 -0
- package/dist/mybodyshield/MyBodyShieldRoot.d.ts.map +1 -0
- package/dist/mybodyshield/MyBodyShieldRoot.js +364 -0
- package/dist/mybodyshield/MyBodyShieldRoot.js.map +1 -0
- package/dist/mybodyshield/MyBodyShieldRoutes.d.ts +2 -0
- package/dist/mybodyshield/MyBodyShieldRoutes.d.ts.map +1 -0
- package/dist/mybodyshield/MyBodyShieldRoutes.js +199 -0
- package/dist/mybodyshield/MyBodyShieldRoutes.js.map +1 -0
- package/dist/mybodyshield/index.d.ts +5 -0
- package/dist/mybodyshield/index.d.ts.map +1 -0
- package/dist/mybodyshield/index.js +3 -0
- package/dist/mybodyshield/pages/AdminAiinsightsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminAiinsightsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminAiinsightsPage.js +161 -0
- package/dist/mybodyshield/pages/AdminAiinsightsPage.js.map +1 -0
- package/dist/mybodyshield/pages/AdminAnalyticsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminAnalyticsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminAnalyticsPage.js +193 -0
- package/dist/mybodyshield/pages/AdminAnalyticsPage.js.map +1 -0
- package/dist/mybodyshield/pages/AdminComplianceReportsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminComplianceReportsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminComplianceReportsPage.js +214 -0
- package/dist/mybodyshield/pages/AdminComplianceReportsPage.js.map +1 -0
- package/dist/mybodyshield/pages/AdminDashboardPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminDashboardPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminDashboardPage.js +186 -0
- package/dist/mybodyshield/pages/AdminDashboardPage.js.map +1 -0
- package/dist/mybodyshield/pages/AdminOrganizationManagementPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminOrganizationManagementPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js +252 -0
- package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js.map +1 -0
- package/dist/mybodyshield/pages/AdminSystemSettingsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminSystemSettingsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminSystemSettingsPage.js +159 -0
- package/dist/mybodyshield/pages/AdminSystemSettingsPage.js.map +1 -0
- package/dist/mybodyshield/pages/AdminUserManagementPage.d.ts +2 -0
- package/dist/mybodyshield/pages/AdminUserManagementPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/AdminUserManagementPage.js +208 -0
- package/dist/mybodyshield/pages/AdminUserManagementPage.js.map +1 -0
- package/dist/mybodyshield/pages/FitnessAssessmentsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/FitnessAssessmentsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/FitnessAssessmentsPage.js +194 -0
- package/dist/mybodyshield/pages/FitnessAssessmentsPage.js.map +1 -0
- package/dist/mybodyshield/pages/FitnessClientDetailsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/FitnessClientDetailsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/FitnessClientDetailsPage.js +192 -0
- package/dist/mybodyshield/pages/FitnessClientDetailsPage.js.map +1 -0
- package/dist/mybodyshield/pages/FitnessClientManagementPage.d.ts +2 -0
- package/dist/mybodyshield/pages/FitnessClientManagementPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/FitnessClientManagementPage.js +128 -0
- package/dist/mybodyshield/pages/FitnessClientManagementPage.js.map +1 -0
- package/dist/mybodyshield/pages/FitnessDashboardPage.d.ts +2 -0
- package/dist/mybodyshield/pages/FitnessDashboardPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/FitnessDashboardPage.js +156 -0
- package/dist/mybodyshield/pages/FitnessDashboardPage.js.map +1 -0
- package/dist/mybodyshield/pages/FitnessReportsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/FitnessReportsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/FitnessReportsPage.js +138 -0
- package/dist/mybodyshield/pages/FitnessReportsPage.js.map +1 -0
- package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.d.ts +2 -0
- package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js +176 -0
- package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientAppointmentsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientAppointmentsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientAppointmentsPage.js +132 -0
- package/dist/mybodyshield/pages/PatientAppointmentsPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientDashboardPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientDashboardPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientDashboardPage.js +190 -0
- package/dist/mybodyshield/pages/PatientDashboardPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientFitnessTrackingPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientFitnessTrackingPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js +137 -0
- package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientHealthGoalsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientHealthGoalsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientHealthGoalsPage.js +131 -0
- package/dist/mybodyshield/pages/PatientHealthGoalsPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientHealthOverviewPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientHealthOverviewPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientHealthOverviewPage.js +273 -0
- package/dist/mybodyshield/pages/PatientHealthOverviewPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientLabResultsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientLabResultsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientLabResultsPage.js +133 -0
- package/dist/mybodyshield/pages/PatientLabResultsPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientMedicationsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientMedicationsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientMedicationsPage.js +158 -0
- package/dist/mybodyshield/pages/PatientMedicationsPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientMentalHealthPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientMentalHealthPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientMentalHealthPage.js +152 -0
- package/dist/mybodyshield/pages/PatientMentalHealthPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientNutritionTrackingPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientNutritionTrackingPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js +141 -0
- package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js.map +1 -0
- package/dist/mybodyshield/pages/PatientVitalSignsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/PatientVitalSignsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/PatientVitalSignsPage.js +160 -0
- package/dist/mybodyshield/pages/PatientVitalSignsPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderCalendarPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderCalendarPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderCalendarPage.js +127 -0
- package/dist/mybodyshield/pages/ProviderCalendarPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderCarePlansPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderCarePlansPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderCarePlansPage.js +153 -0
- package/dist/mybodyshield/pages/ProviderCarePlansPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderClinicalToolsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderClinicalToolsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js +174 -0
- package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderDashboardPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderDashboardPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderDashboardPage.js +154 -0
- package/dist/mybodyshield/pages/ProviderDashboardPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderPatientDetailsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderPatientDetailsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js +295 -0
- package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderPatientManagementPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderPatientManagementPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderPatientManagementPage.js +133 -0
- package/dist/mybodyshield/pages/ProviderPatientManagementPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderPrescriptionsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderPrescriptionsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js +138 -0
- package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js.map +1 -0
- package/dist/mybodyshield/pages/ProviderReportsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/ProviderReportsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/ProviderReportsPage.js +149 -0
- package/dist/mybodyshield/pages/ProviderReportsPage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedAppointmentsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedAppointmentsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedAppointmentsPage.js +129 -0
- package/dist/mybodyshield/pages/SharedAppointmentsPage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedCommunityPage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedCommunityPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedCommunityPage.js +152 -0
- package/dist/mybodyshield/pages/SharedCommunityPage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js +165 -0
- package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedEmergencyPage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedEmergencyPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedEmergencyPage.js +183 -0
- package/dist/mybodyshield/pages/SharedEmergencyPage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js +159 -0
- package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedMarketplacePage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedMarketplacePage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedMarketplacePage.js +193 -0
- package/dist/mybodyshield/pages/SharedMarketplacePage.js.map +1 -0
- package/dist/mybodyshield/pages/SharedMessagesPage.d.ts +2 -0
- package/dist/mybodyshield/pages/SharedMessagesPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/SharedMessagesPage.js +156 -0
- package/dist/mybodyshield/pages/SharedMessagesPage.js.map +1 -0
- package/dist/mybodyshield/pages/WellnessAssessmentsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/WellnessAssessmentsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/WellnessAssessmentsPage.js +147 -0
- package/dist/mybodyshield/pages/WellnessAssessmentsPage.js.map +1 -0
- package/dist/mybodyshield/pages/WellnessClientsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/WellnessClientsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/WellnessClientsPage.js +182 -0
- package/dist/mybodyshield/pages/WellnessClientsPage.js.map +1 -0
- package/dist/mybodyshield/pages/WellnessDashboardPage.d.ts +2 -0
- package/dist/mybodyshield/pages/WellnessDashboardPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/WellnessDashboardPage.js +136 -0
- package/dist/mybodyshield/pages/WellnessDashboardPage.js.map +1 -0
- package/dist/mybodyshield/pages/WellnessProgramsPage.d.ts +2 -0
- package/dist/mybodyshield/pages/WellnessProgramsPage.d.ts.map +1 -0
- package/dist/mybodyshield/pages/WellnessProgramsPage.js +140 -0
- package/dist/mybodyshield/pages/WellnessProgramsPage.js.map +1 -0
- package/dist/mybodyshield/providers/MyBodyShieldProvider.d.ts +6 -0
- package/dist/mybodyshield/providers/MyBodyShieldProvider.d.ts.map +1 -0
- package/dist/mybodyshield/providers/MyBodyShieldProvider.js +27 -0
- package/dist/mybodyshield/providers/MyBodyShieldProvider.js.map +1 -0
- package/dist/mybodyshield/store/mybodyshieldStore.d.ts +197 -0
- package/dist/mybodyshield/store/mybodyshieldStore.d.ts.map +1 -0
- package/dist/mybodyshield/store/mybodyshieldStore.js +710 -0
- package/dist/mybodyshield/store/mybodyshieldStore.js.map +1 -0
- package/dist/mybodyshield/types/index.d.ts +51 -0
- package/dist/mybodyshield/types/index.d.ts.map +1 -0
- package/dist/mybodyshield/utils/cn.d.ts +4 -0
- package/dist/mybodyshield/utils/cn.d.ts.map +1 -0
- package/dist/mybodyshield/utils/navigation.d.ts +2 -0
- package/dist/mybodyshield/utils/navigation.d.ts.map +1 -0
- package/dist/mybodyshield/utils/navigation.js +8 -0
- package/dist/mybodyshield/utils/navigation.js.map +1 -0
- package/package.json +107 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mybodyshieldStore.js","names":[],"sources":["../../../src/mybodyshield/store/mybodyshieldStore.ts"],"sourcesContent":["import { create } from 'zustand';\n\n// ── Healthcare Domain Types ──────────────────────────────────────────\nexport interface Patient {\n id: string;\n firstName: string;\n lastName: string;\n dateOfBirth: string;\n gender: string;\n bloodType: string;\n allergies: string[];\n conditions: string[];\n emergencyContact: string;\n insuranceProvider: string;\n lastVisit: string;\n}\n\nexport interface Appointment {\n id: string;\n patientId: string;\n patientName: string;\n providerId: string;\n providerName: string;\n specialty: string;\n date: string;\n time: string;\n type: 'in-person' | 'telemedicine';\n status: 'confirmed' | 'pending' | 'completed' | 'cancelled';\n reason: string;\n location: string;\n}\n\nexport interface Medication {\n id: string;\n patientId: string;\n name: string;\n genericName: string;\n dosage: string;\n frequency: string;\n prescribedBy: string;\n startDate: string;\n endDate?: string;\n isActive: boolean;\n refillsRemaining: number;\n sideEffects: string[];\n}\n\nexport interface VitalSign {\n id: string;\n patientId: string;\n recordedAt: string;\n bloodPressureSystolic: number;\n bloodPressureDiastolic: number;\n heartRate: number;\n temperature: number;\n weight: number;\n oxygenSaturation: number;\n respiratoryRate: number;\n bmi: number;\n}\n\nexport interface LabResult {\n id: string;\n patientId: string;\n testName: string;\n testType: string;\n category: string;\n collectionDate: string;\n resultDate: string;\n status: 'normal' | 'abnormal' | 'critical' | 'pending';\n value: string;\n unit: string;\n referenceRange: string;\n orderedBy: string;\n}\n\nexport interface CarePlan {\n id: string;\n patientId: string;\n patientName: string;\n providerName: string;\n condition: string;\n status: 'active' | 'completed' | 'on-hold';\n startDate: string;\n progress: number;\n goals: Array<{ id: string; description: string; status: string; progress: number }>;\n treatments: Array<{ id: string; type: string; description: string; frequency: string }>;\n}\n\nexport interface Prescription {\n id: string;\n patientId: string;\n patientName: string;\n medicationName: string;\n dosage: string;\n frequency: string;\n prescribedBy: string;\n prescribedDate: string;\n expiryDate: string;\n status: 'active' | 'expired' | 'cancelled';\n refillsAllowed: number;\n refillsUsed: number;\n}\n\nexport interface FitnessMetric {\n id: string;\n userId: string;\n date: string;\n steps: number;\n caloriesBurned: number;\n activeMinutes: number;\n distanceKm: number;\n heartRateAvg: number;\n heartRateMax: number;\n sleepHours: number;\n waterIntakeMl: number;\n}\n\nexport interface WellnessProgram {\n id: string;\n name: string;\n description: string;\n category: string;\n duration: string;\n enrolledCount: number;\n rating: number;\n instructor: string;\n status: 'active' | 'upcoming' | 'completed';\n sessions: number;\n completedSessions: number;\n}\n\nexport interface HealthGoal {\n id: string;\n userId: string;\n title: string;\n category: string;\n targetValue: number;\n currentValue: number;\n unit: string;\n deadline: string;\n status: 'on-track' | 'behind' | 'completed' | 'not-started';\n}\n\nexport interface NutritionEntry {\n id: string;\n userId: string;\n date: string;\n meal: string;\n calories: number;\n protein: number;\n carbs: number;\n fat: number;\n fiber: number;\n}\n\nexport interface MentalHealthEntry {\n id: string;\n userId: string;\n date: string;\n mood: 'great' | 'good' | 'okay' | 'bad' | 'terrible';\n energy: number;\n stressLevel: number;\n sleepQuality: number;\n notes: string;\n activities: string[];\n}\n\nexport interface OverviewMetric {\n label: string;\n value: string;\n trend: string;\n}\n\nexport interface WorkItem {\n id: string;\n title: string;\n status: 'active' | 'planned' | 'at_risk' | 'completed';\n owner: string;\n updatedAt: string;\n}\n\n// ── Mock Data ────────────────────────────────────────────────────────\nconst mockPatients: Patient[] = [\n {\n id: 'p1',\n firstName: 'Sarah',\n lastName: 'Johnson',\n dateOfBirth: '1985-03-15',\n gender: 'Female',\n bloodType: 'A+',\n allergies: ['Penicillin', 'Latex'],\n conditions: ['Hypertension', 'Type 2 Diabetes'],\n emergencyContact: 'John Johnson - (555) 123-4567',\n insuranceProvider: 'BlueCross BlueShield',\n lastVisit: '2026-01-28',\n },\n {\n id: 'p2',\n firstName: 'Michael',\n lastName: 'Chen',\n dateOfBirth: '1972-08-22',\n gender: 'Male',\n bloodType: 'O-',\n allergies: ['Sulfa drugs'],\n conditions: ['Asthma', 'High Cholesterol'],\n emergencyContact: 'Lin Chen - (555) 234-5678',\n insuranceProvider: 'Aetna',\n lastVisit: '2026-02-03',\n },\n {\n id: 'p3',\n firstName: 'Emily',\n lastName: 'Davis',\n dateOfBirth: '1990-11-07',\n gender: 'Female',\n bloodType: 'B+',\n allergies: [],\n conditions: ['Anxiety', 'Migraine'],\n emergencyContact: 'Tom Davis - (555) 345-6789',\n insuranceProvider: 'United Healthcare',\n lastVisit: '2026-02-07',\n },\n {\n id: 'p4',\n firstName: 'Robert',\n lastName: 'Wilson',\n dateOfBirth: '1968-05-30',\n gender: 'Male',\n bloodType: 'AB+',\n allergies: ['Aspirin'],\n conditions: ['Arthritis', 'GERD'],\n emergencyContact: 'Mary Wilson - (555) 456-7890',\n insuranceProvider: 'Cigna',\n lastVisit: '2026-01-15',\n },\n {\n id: 'p5',\n firstName: 'Lisa',\n lastName: 'Thompson',\n dateOfBirth: '1995-09-18',\n gender: 'Female',\n bloodType: 'O+',\n allergies: ['Ibuprofen'],\n conditions: ['PCOS'],\n emergencyContact: 'Amy Thompson - (555) 567-8901',\n insuranceProvider: 'Humana',\n lastVisit: '2026-02-09',\n },\n];\n\nconst mockAppointments: Appointment[] = [\n {\n id: 'a1',\n patientId: 'p1',\n patientName: 'Sarah Johnson',\n providerId: 'dr1',\n providerName: 'Dr. James Wilson',\n specialty: 'Cardiology',\n date: '2026-02-12',\n time: '09:00',\n type: 'in-person',\n status: 'confirmed',\n reason: 'Blood pressure follow-up',\n location: 'Suite 201, Building A',\n },\n {\n id: 'a2',\n patientId: 'p2',\n patientName: 'Michael Chen',\n providerId: 'dr2',\n providerName: 'Dr. Emily Rodriguez',\n specialty: 'Pulmonology',\n date: '2026-02-12',\n time: '10:30',\n type: 'telemedicine',\n status: 'confirmed',\n reason: 'Asthma management',\n location: 'Virtual',\n },\n {\n id: 'a3',\n patientId: 'p3',\n patientName: 'Emily Davis',\n providerId: 'dr3',\n providerName: 'Dr. Sarah Kim',\n specialty: 'Psychiatry',\n date: '2026-02-13',\n time: '14:00',\n type: 'telemedicine',\n status: 'pending',\n reason: 'Anxiety assessment',\n location: 'Virtual',\n },\n {\n id: 'a4',\n patientId: 'p4',\n patientName: 'Robert Wilson',\n providerId: 'dr4',\n providerName: 'Dr. Michael Park',\n specialty: 'Rheumatology',\n date: '2026-02-14',\n time: '11:00',\n type: 'in-person',\n status: 'confirmed',\n reason: 'Joint pain review',\n location: 'Suite 305, Building B',\n },\n {\n id: 'a5',\n patientId: 'p5',\n patientName: 'Lisa Thompson',\n providerId: 'dr5',\n providerName: 'Dr. Amanda Lee',\n specialty: 'Endocrinology',\n date: '2026-02-15',\n time: '15:30',\n type: 'in-person',\n status: 'pending',\n reason: 'Hormonal evaluation',\n location: 'Suite 102, Building A',\n },\n];\n\nconst mockMedications: Medication[] = [\n {\n id: 'm1',\n patientId: 'p1',\n name: 'Lisinopril',\n genericName: 'Lisinopril',\n dosage: '10mg',\n frequency: 'Once daily',\n prescribedBy: 'Dr. James Wilson',\n startDate: '2025-06-01',\n isActive: true,\n refillsRemaining: 3,\n sideEffects: ['Dry cough', 'Dizziness'],\n },\n {\n id: 'm2',\n patientId: 'p1',\n name: 'Metformin',\n genericName: 'Metformin HCl',\n dosage: '500mg',\n frequency: 'Twice daily',\n prescribedBy: 'Dr. James Wilson',\n startDate: '2025-08-15',\n isActive: true,\n refillsRemaining: 5,\n sideEffects: ['Nausea', 'Diarrhea'],\n },\n {\n id: 'm3',\n patientId: 'p2',\n name: 'Albuterol',\n genericName: 'Albuterol Sulfate',\n dosage: '90mcg',\n frequency: 'As needed',\n prescribedBy: 'Dr. Emily Rodriguez',\n startDate: '2025-03-10',\n isActive: true,\n refillsRemaining: 2,\n sideEffects: ['Tremor', 'Rapid heartbeat'],\n },\n {\n id: 'm4',\n patientId: 'p3',\n name: 'Sertraline',\n genericName: 'Sertraline HCl',\n dosage: '50mg',\n frequency: 'Once daily',\n prescribedBy: 'Dr. Sarah Kim',\n startDate: '2025-11-01',\n isActive: true,\n refillsRemaining: 4,\n sideEffects: ['Insomnia', 'Dry mouth'],\n },\n {\n id: 'm5',\n patientId: 'p2',\n name: 'Atorvastatin',\n genericName: 'Atorvastatin Calcium',\n dosage: '20mg',\n frequency: 'Once daily',\n prescribedBy: 'Dr. Emily Rodriguez',\n startDate: '2025-05-20',\n isActive: true,\n refillsRemaining: 6,\n sideEffects: ['Muscle pain', 'Headache'],\n },\n];\n\nconst mockVitalSigns: VitalSign[] = [\n {\n id: 'v1',\n patientId: 'p1',\n recordedAt: '2026-02-10T09:00:00Z',\n bloodPressureSystolic: 128,\n bloodPressureDiastolic: 82,\n heartRate: 72,\n temperature: 98.6,\n weight: 68.5,\n oxygenSaturation: 98,\n respiratoryRate: 16,\n bmi: 24.2,\n },\n {\n id: 'v2',\n patientId: 'p1',\n recordedAt: '2026-02-03T09:00:00Z',\n bloodPressureSystolic: 132,\n bloodPressureDiastolic: 85,\n heartRate: 75,\n temperature: 98.4,\n weight: 69.0,\n oxygenSaturation: 97,\n respiratoryRate: 17,\n bmi: 24.4,\n },\n {\n id: 'v3',\n patientId: 'p2',\n recordedAt: '2026-02-08T10:30:00Z',\n bloodPressureSystolic: 118,\n bloodPressureDiastolic: 76,\n heartRate: 68,\n temperature: 98.2,\n weight: 82.3,\n oxygenSaturation: 96,\n respiratoryRate: 18,\n bmi: 26.1,\n },\n {\n id: 'v4',\n patientId: 'p3',\n recordedAt: '2026-02-07T14:00:00Z',\n bloodPressureSystolic: 112,\n bloodPressureDiastolic: 70,\n heartRate: 80,\n temperature: 98.7,\n weight: 58.2,\n oxygenSaturation: 99,\n respiratoryRate: 15,\n bmi: 21.8,\n },\n];\n\nconst mockLabResults: LabResult[] = [\n {\n id: 'l1',\n patientId: 'p1',\n testName: 'Complete Blood Count',\n testType: 'CBC',\n category: 'Hematology',\n collectionDate: '2026-02-05',\n resultDate: '2026-02-06',\n status: 'normal',\n value: '5.2',\n unit: 'K/uL',\n referenceRange: '4.0-11.0',\n orderedBy: 'Dr. James Wilson',\n },\n {\n id: 'l2',\n patientId: 'p1',\n testName: 'Hemoglobin A1C',\n testType: 'HbA1c',\n category: 'Chemistry',\n collectionDate: '2026-02-05',\n resultDate: '2026-02-06',\n status: 'abnormal',\n value: '7.2',\n unit: '%',\n referenceRange: '< 5.7',\n orderedBy: 'Dr. James Wilson',\n },\n {\n id: 'l3',\n patientId: 'p2',\n testName: 'Lipid Panel',\n testType: 'LIPID',\n category: 'Chemistry',\n collectionDate: '2026-02-03',\n resultDate: '2026-02-04',\n status: 'abnormal',\n value: '245',\n unit: 'mg/dL',\n referenceRange: '< 200',\n orderedBy: 'Dr. Emily Rodriguez',\n },\n {\n id: 'l4',\n patientId: 'p3',\n testName: 'Thyroid Panel',\n testType: 'TSH',\n category: 'Endocrinology',\n collectionDate: '2026-02-07',\n resultDate: '2026-02-08',\n status: 'normal',\n value: '2.1',\n unit: 'mIU/L',\n referenceRange: '0.5-4.5',\n orderedBy: 'Dr. Sarah Kim',\n },\n {\n id: 'l5',\n patientId: 'p4',\n testName: 'Metabolic Panel',\n testType: 'CMP',\n category: 'Chemistry',\n collectionDate: '2026-02-01',\n resultDate: '2026-02-02',\n status: 'normal',\n value: '95',\n unit: 'mg/dL',\n referenceRange: '70-100',\n orderedBy: 'Dr. Michael Park',\n },\n];\n\nconst mockCarePlans: CarePlan[] = [\n {\n id: 'cp1',\n patientId: 'p1',\n patientName: 'Sarah Johnson',\n providerName: 'Dr. James Wilson',\n condition: 'Hypertension & Diabetes Management',\n status: 'active',\n startDate: '2025-06-01',\n progress: 65,\n goals: [\n { id: 'g1', description: 'Reduce A1C to below 6.5%', status: 'in-progress', progress: 60 },\n { id: 'g2', description: 'Maintain BP below 130/80', status: 'in-progress', progress: 70 },\n ],\n treatments: [\n { id: 't1', type: 'Medication', description: 'Lisinopril + Metformin', frequency: 'Daily' },\n { id: 't2', type: 'Lifestyle', description: 'Low-sodium DASH diet', frequency: 'Ongoing' },\n ],\n },\n {\n id: 'cp2',\n patientId: 'p2',\n patientName: 'Michael Chen',\n providerName: 'Dr. Emily Rodriguez',\n condition: 'Asthma & Cholesterol Management',\n status: 'active',\n startDate: '2025-03-10',\n progress: 45,\n goals: [\n {\n id: 'g3',\n description: 'Reduce LDL to below 130 mg/dL',\n status: 'in-progress',\n progress: 40,\n },\n {\n id: 'g4',\n description: 'Zero asthma attacks per month',\n status: 'in-progress',\n progress: 50,\n },\n ],\n treatments: [\n {\n id: 't3',\n type: 'Medication',\n description: 'Atorvastatin + Albuterol PRN',\n frequency: 'Daily / As needed',\n },\n ],\n },\n];\n\nconst mockPrescriptions: Prescription[] = [\n {\n id: 'rx1',\n patientId: 'p1',\n patientName: 'Sarah Johnson',\n medicationName: 'Lisinopril 10mg',\n dosage: '10mg',\n frequency: 'Once daily',\n prescribedBy: 'Dr. James Wilson',\n prescribedDate: '2025-06-01',\n expiryDate: '2026-06-01',\n status: 'active',\n refillsAllowed: 6,\n refillsUsed: 3,\n },\n {\n id: 'rx2',\n patientId: 'p1',\n patientName: 'Sarah Johnson',\n medicationName: 'Metformin 500mg',\n dosage: '500mg',\n frequency: 'Twice daily',\n prescribedBy: 'Dr. James Wilson',\n prescribedDate: '2025-08-15',\n expiryDate: '2026-08-15',\n status: 'active',\n refillsAllowed: 12,\n refillsUsed: 5,\n },\n {\n id: 'rx3',\n patientId: 'p3',\n patientName: 'Emily Davis',\n medicationName: 'Sertraline 50mg',\n dosage: '50mg',\n frequency: 'Once daily',\n prescribedBy: 'Dr. Sarah Kim',\n prescribedDate: '2025-11-01',\n expiryDate: '2026-11-01',\n status: 'active',\n refillsAllowed: 12,\n refillsUsed: 3,\n },\n];\n\nconst mockFitnessMetrics: FitnessMetric[] = [\n {\n id: 'f1',\n userId: 'p1',\n date: '2026-02-10',\n steps: 8432,\n caloriesBurned: 2150,\n activeMinutes: 45,\n distanceKm: 6.2,\n heartRateAvg: 72,\n heartRateMax: 142,\n sleepHours: 7.5,\n waterIntakeMl: 2400,\n },\n {\n id: 'f2',\n userId: 'p1',\n date: '2026-02-09',\n steps: 10256,\n caloriesBurned: 2380,\n activeMinutes: 62,\n distanceKm: 7.8,\n heartRateAvg: 75,\n heartRateMax: 155,\n sleepHours: 8.0,\n waterIntakeMl: 2800,\n },\n {\n id: 'f3',\n userId: 'p1',\n date: '2026-02-08',\n steps: 6890,\n caloriesBurned: 1920,\n activeMinutes: 30,\n distanceKm: 5.1,\n heartRateAvg: 70,\n heartRateMax: 128,\n sleepHours: 6.5,\n waterIntakeMl: 2000,\n },\n];\n\nconst mockWellnessPrograms: WellnessProgram[] = [\n {\n id: 'wp1',\n name: 'Mindful Living 8-Week Program',\n description: 'Comprehensive mindfulness and stress reduction',\n category: 'Mental Wellness',\n duration: '8 weeks',\n enrolledCount: 156,\n rating: 4.8,\n instructor: 'Dr. Lisa Chen',\n status: 'active',\n sessions: 24,\n completedSessions: 12,\n },\n {\n id: 'wp2',\n name: 'Heart-Healthy Lifestyle',\n description: 'Cardiovascular wellness through diet and exercise',\n category: 'Cardiac Wellness',\n duration: '12 weeks',\n enrolledCount: 89,\n rating: 4.6,\n instructor: 'Coach James Miller',\n status: 'active',\n sessions: 36,\n completedSessions: 8,\n },\n {\n id: 'wp3',\n name: 'Diabetes Prevention Program',\n description: 'Evidence-based lifestyle change program',\n category: 'Metabolic Health',\n duration: '16 weeks',\n enrolledCount: 234,\n rating: 4.9,\n instructor: 'Nurse Maria Santos',\n status: 'active',\n sessions: 16,\n completedSessions: 4,\n },\n];\n\nconst mockHealthGoals: HealthGoal[] = [\n {\n id: 'hg1',\n userId: 'p1',\n title: 'Daily Steps Goal',\n category: 'Fitness',\n targetValue: 10000,\n currentValue: 8432,\n unit: 'steps',\n deadline: '2026-12-31',\n status: 'on-track',\n },\n {\n id: 'hg2',\n userId: 'p1',\n title: 'Weight Loss Target',\n category: 'Weight',\n targetValue: 65,\n currentValue: 68.5,\n unit: 'kg',\n deadline: '2026-06-30',\n status: 'on-track',\n },\n {\n id: 'hg3',\n userId: 'p1',\n title: 'Lower Blood Pressure',\n category: 'Vitals',\n targetValue: 120,\n currentValue: 128,\n unit: 'mmHg',\n deadline: '2026-06-30',\n status: 'behind',\n },\n {\n id: 'hg4',\n userId: 'p1',\n title: 'Reduce A1C',\n category: 'Lab',\n targetValue: 6.5,\n currentValue: 7.2,\n unit: '%',\n deadline: '2026-09-30',\n status: 'behind',\n },\n];\n\nconst mockNutritionEntries: NutritionEntry[] = [\n {\n id: 'n1',\n userId: 'p1',\n date: '2026-02-10',\n meal: 'Breakfast',\n calories: 420,\n protein: 22,\n carbs: 48,\n fat: 16,\n fiber: 8,\n },\n {\n id: 'n2',\n userId: 'p1',\n date: '2026-02-10',\n meal: 'Lunch',\n calories: 650,\n protein: 35,\n carbs: 62,\n fat: 28,\n fiber: 12,\n },\n {\n id: 'n3',\n userId: 'p1',\n date: '2026-02-10',\n meal: 'Dinner',\n calories: 580,\n protein: 40,\n carbs: 45,\n fat: 24,\n fiber: 10,\n },\n {\n id: 'n4',\n userId: 'p1',\n date: '2026-02-10',\n meal: 'Snacks',\n calories: 250,\n protein: 8,\n carbs: 30,\n fat: 12,\n fiber: 4,\n },\n];\n\nconst mockMentalHealthEntries: MentalHealthEntry[] = [\n {\n id: 'mh1',\n userId: 'p1',\n date: '2026-02-10',\n mood: 'good',\n energy: 7,\n stressLevel: 4,\n sleepQuality: 8,\n notes: 'Productive day, morning walk helped',\n activities: ['Walking', 'Meditation', 'Reading'],\n },\n {\n id: 'mh2',\n userId: 'p1',\n date: '2026-02-09',\n mood: 'great',\n energy: 8,\n stressLevel: 3,\n sleepQuality: 9,\n notes: 'Great sleep, feeling energized',\n activities: ['Yoga', 'Journaling'],\n },\n {\n id: 'mh3',\n userId: 'p1',\n date: '2026-02-08',\n mood: 'okay',\n energy: 5,\n stressLevel: 6,\n sleepQuality: 6,\n notes: 'Work stress, tried breathing exercises',\n activities: ['Deep breathing'],\n },\n];\n\n// ── Store Interface ─────────────────────────────────────────────────\ninterface MyBodyShieldState {\n // Core data\n metrics: OverviewMetric[];\n workItems: WorkItem[];\n selectedView: string;\n\n // Healthcare domain data\n patients: Patient[];\n appointments: Appointment[];\n medications: Medication[];\n vitalSigns: VitalSign[];\n labResults: LabResult[];\n carePlans: CarePlan[];\n prescriptions: Prescription[];\n fitnessMetrics: FitnessMetric[];\n wellnessPrograms: WellnessProgram[];\n healthGoals: HealthGoal[];\n nutritionEntries: NutritionEntry[];\n mentalHealthEntries: MentalHealthEntry[];\n\n // Actions\n setSelectedView: (view: string) => void;\n setWorkItems: (items: WorkItem[]) => void;\n}\n\n// ── Zustand Store ───────────────────────────────────────────────────\nexport const useMyBodyShieldStore = create<MyBodyShieldState>((set) => ({\n metrics: [\n { label: 'Active Patients', value: '2,310', trend: '+15.3%' },\n { label: 'Appointments Today', value: '58', trend: '+8.2%' },\n { label: 'Prescriptions Active', value: '1,247', trend: '+4.1%' },\n { label: 'Health Score Avg', value: '82/100', trend: '+2.8%' },\n ],\n workItems: [\n {\n id: 'w1',\n title: 'Patient vitals monitoring alert review',\n status: 'active',\n owner: 'Clinical Team',\n updatedAt: '2h ago',\n },\n {\n id: 'w2',\n title: 'Quarterly wellness program enrollment',\n status: 'planned',\n owner: 'Wellness Dept',\n updatedAt: '5h ago',\n },\n {\n id: 'w3',\n title: 'Lab result abnormal flags pending review',\n status: 'at_risk',\n owner: 'Pathology',\n updatedAt: '1d ago',\n },\n {\n id: 'w4',\n title: 'HIPAA compliance audit completed',\n status: 'completed',\n owner: 'Compliance',\n updatedAt: '2d ago',\n },\n ],\n selectedView: 'overview',\n\n patients: mockPatients,\n appointments: mockAppointments,\n medications: mockMedications,\n vitalSigns: mockVitalSigns,\n labResults: mockLabResults,\n carePlans: mockCarePlans,\n prescriptions: mockPrescriptions,\n fitnessMetrics: mockFitnessMetrics,\n wellnessPrograms: mockWellnessPrograms,\n healthGoals: mockHealthGoals,\n nutritionEntries: mockNutritionEntries,\n mentalHealthEntries: mockMentalHealthEntries,\n\n setSelectedView: (view) => set({ selectedView: view }),\n setWorkItems: (items) => set({ workItems: items }),\n}));\n"],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface NavItem {
|
|
4
|
+
id: string;
|
|
5
|
+
label: string;
|
|
6
|
+
path: string;
|
|
7
|
+
icon?: React.ReactNode;
|
|
8
|
+
order?: number;
|
|
9
|
+
group?: string;
|
|
10
|
+
children?: NavItem[];
|
|
11
|
+
}
|
|
12
|
+
export interface FooterItem {
|
|
13
|
+
id: string;
|
|
14
|
+
label: string;
|
|
15
|
+
type: 'status' | 'action';
|
|
16
|
+
order?: number;
|
|
17
|
+
section: 'left' | 'center' | 'right';
|
|
18
|
+
}
|
|
19
|
+
export interface MyBodyShieldRootProps {
|
|
20
|
+
basePath?: string;
|
|
21
|
+
workspaceId?: string;
|
|
22
|
+
tenantId?: string;
|
|
23
|
+
apiGatewayUrl?: string;
|
|
24
|
+
authToken?: string;
|
|
25
|
+
navigate?: (path: string) => void;
|
|
26
|
+
currentUser?: {
|
|
27
|
+
id: string;
|
|
28
|
+
email: string;
|
|
29
|
+
firstName?: string;
|
|
30
|
+
lastName?: string;
|
|
31
|
+
avatar?: string;
|
|
32
|
+
username?: string;
|
|
33
|
+
name?: string;
|
|
34
|
+
role?: string;
|
|
35
|
+
} | null;
|
|
36
|
+
registerNavItems?: (items: NavItem | NavItem[]) => () => void;
|
|
37
|
+
registerFooterItems?: (items: FooterItem | FooterItem[]) => () => void;
|
|
38
|
+
}
|
|
39
|
+
export interface OverviewMetric {
|
|
40
|
+
label: string;
|
|
41
|
+
value: string;
|
|
42
|
+
trend: string;
|
|
43
|
+
}
|
|
44
|
+
export interface WorkItem {
|
|
45
|
+
id: string;
|
|
46
|
+
title: string;
|
|
47
|
+
status: 'active' | 'planned' | 'at_risk' | 'completed';
|
|
48
|
+
owner: string;
|
|
49
|
+
updatedAt: string;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mybodyshield/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,IAAI,CAAC;IACT,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,KAAK,MAAM,IAAI,CAAC;IAC9D,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,KAAK,MAAM,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../../src/mybodyshield/utils/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../src/mybodyshield/utils/navigation.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAIvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","names":[],"sources":["../../../src/mybodyshield/utils/navigation.ts"],"sourcesContent":["export function joinPath(basePath: string, relativePath: string): string {\n const cleanBase = basePath.endsWith('/') ? basePath.slice(0, -1) : basePath;\n const cleanPath = relativePath.startsWith('/') ? relativePath : `/${relativePath}`;\n return cleanBase + cleanPath;\n}\n"],"mappings":";AAAA,SAAgB,EAAS,GAAkB,GAA8B;AAGvE,SAFkB,EAAS,SAAS,IAAI,GAAG,EAAS,MAAM,GAAG,GAAG,GAAG,MACjD,EAAa,WAAW,IAAI,GAAG,IAAe,IAAI"}
|
package/package.json
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@burdenoff/microfe-mybodyshield",
|
|
3
|
+
"version": "2026.511.1",
|
|
4
|
+
"description": "Burdenoff MyBodyShield Microfrontend",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"files": [
|
|
7
|
+
"dist",
|
|
8
|
+
"package.json",
|
|
9
|
+
"README.md"
|
|
10
|
+
],
|
|
11
|
+
"imports": {
|
|
12
|
+
"#src/*": "./src/*",
|
|
13
|
+
"#mybodyshield/*": "./src/mybodyshield/*"
|
|
14
|
+
},
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"import": "./dist/index.js"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"main": "./dist/index.js",
|
|
22
|
+
"types": "./dist/index.d.ts",
|
|
23
|
+
"scripts": {
|
|
24
|
+
"dev": "vite",
|
|
25
|
+
"build": "tsc && vite build",
|
|
26
|
+
"lint": "eslint .",
|
|
27
|
+
"format": "prettier --write \"src/**/*.{ts,tsx}\"",
|
|
28
|
+
"type:check": "tsc --noEmit",
|
|
29
|
+
"sanity": "bun run codegen && bun run lint && bun run format && bun run type:check && bun run build",
|
|
30
|
+
"schema:pull": "graphql-codegen --project schema-wspace && graphql-codegen --project schema-global",
|
|
31
|
+
"codegen": "graphql-codegen --project wspace && graphql-codegen --project global",
|
|
32
|
+
"codegen:all": "bun run schema:pull && bun run codegen",
|
|
33
|
+
"switch:status": "bun scripts/deps-mode.ts status",
|
|
34
|
+
"switch:remote": "bun scripts/deps-mode.ts remote",
|
|
35
|
+
"switch:local": "bun scripts/deps-mode.ts local",
|
|
36
|
+
"switch:check": "bun scripts/deps-mode.ts check",
|
|
37
|
+
"prepare": "lefthook install || true",
|
|
38
|
+
"format:check": "prettier --check \"src/**/*.{ts,tsx}\""
|
|
39
|
+
},
|
|
40
|
+
"dependencies": {
|
|
41
|
+
"@apollo/client": "^4.0.11",
|
|
42
|
+
"@burdenoff/fe-libs": "2026.511.2",
|
|
43
|
+
"@tanstack/react-query": "^5.90.16",
|
|
44
|
+
"clsx": "^2.1.1",
|
|
45
|
+
"graphql": "^16.10.0",
|
|
46
|
+
"lucide-react": "^0.468.0",
|
|
47
|
+
"react": "^19.0.0",
|
|
48
|
+
"react-dom": "^19.0.0",
|
|
49
|
+
"react-router-dom": "^7.1.3",
|
|
50
|
+
"tailwind-merge": "^3.4.0",
|
|
51
|
+
"zustand": "^5.0.3",
|
|
52
|
+
"recharts": "^2.15.0",
|
|
53
|
+
"framer-motion": "^12.0.0"
|
|
54
|
+
},
|
|
55
|
+
"devDependencies": {
|
|
56
|
+
"@eslint/js": "^9.39.2",
|
|
57
|
+
"@graphql-codegen/add": "^5.0.0",
|
|
58
|
+
"@graphql-codegen/cli": "^5.0.0",
|
|
59
|
+
"@graphql-codegen/import-types-preset": "^3.0.0",
|
|
60
|
+
"@graphql-codegen/schema-ast": "^4.0.0",
|
|
61
|
+
"@graphql-codegen/typescript": "^4.0.0",
|
|
62
|
+
"@graphql-codegen/typescript-operations": "^4.0.0",
|
|
63
|
+
"@graphql-codegen/typescript-react-apollo": "^4.0.0",
|
|
64
|
+
"@types/react": "^19.0.2",
|
|
65
|
+
"@types/react-dom": "^19.0.2",
|
|
66
|
+
"@vitejs/plugin-react": "^4.3.4",
|
|
67
|
+
"autoprefixer": "^10.4.20",
|
|
68
|
+
"eslint": "^9.18.0",
|
|
69
|
+
"eslint-plugin-react": "^7.37.5",
|
|
70
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
71
|
+
"eslint-plugin-react-refresh": "^0.4.26",
|
|
72
|
+
"lefthook": "^2.1.1",
|
|
73
|
+
"postcss": "^8.4.49",
|
|
74
|
+
"prettier": "^3.4.2",
|
|
75
|
+
"tailwindcss": "^4.0.0",
|
|
76
|
+
"typescript": "^5.9.0",
|
|
77
|
+
"typescript-eslint": "^8.54.0",
|
|
78
|
+
"vite": "8.0.8",
|
|
79
|
+
"vite-plugin-dts": "3.9.1"
|
|
80
|
+
},
|
|
81
|
+
"peerDependencies": {
|
|
82
|
+
"@apollo/client": "^4.0.11",
|
|
83
|
+
"react": "^19.0.0",
|
|
84
|
+
"react-dom": "^19.0.0",
|
|
85
|
+
"zustand": "^5.0.0"
|
|
86
|
+
},
|
|
87
|
+
"publishConfig": {
|
|
88
|
+
"access": "restricted"
|
|
89
|
+
},
|
|
90
|
+
"overrides": {
|
|
91
|
+
"lodash": ">=4.17.21",
|
|
92
|
+
"lodash-es": ">=4.17.21",
|
|
93
|
+
"dompurify": ">=3.3.4",
|
|
94
|
+
"fast-xml-parser": ">=4.5.5",
|
|
95
|
+
"@xmldom/xmldom": ">=0.8.12",
|
|
96
|
+
"swiper": ">=12.1.2",
|
|
97
|
+
"brace-expansion": ">=1.1.13",
|
|
98
|
+
"follow-redirects": ">=1.15.12",
|
|
99
|
+
"smol-toml": ">=1.6.1",
|
|
100
|
+
"axios": ">=1.15.0",
|
|
101
|
+
"flatted": ">=3.4.1",
|
|
102
|
+
"yaml": ">=2.8.3",
|
|
103
|
+
"picomatch": ">=2.3.2",
|
|
104
|
+
"immutable": ">=3.8.3",
|
|
105
|
+
"minimatch": ">=3.1.3"
|
|
106
|
+
}
|
|
107
|
+
}
|