@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.
Files changed (210) hide show
  1. package/README.md +12 -0
  2. package/dist/dev/main.d.ts +2 -0
  3. package/dist/dev/main.d.ts.map +1 -0
  4. package/dist/generated/global-operations.d.ts +2 -0
  5. package/dist/generated/global-operations.d.ts.map +1 -0
  6. package/dist/generated/global-types.d.ts +18199 -0
  7. package/dist/generated/global-types.d.ts.map +1 -0
  8. package/dist/generated/wspace-operations.d.ts +2 -0
  9. package/dist/generated/wspace-operations.d.ts.map +1 -0
  10. package/dist/generated/wspace-types.d.ts +43046 -0
  11. package/dist/generated/wspace-types.d.ts.map +1 -0
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +5 -0
  15. package/dist/mybodyshield/MyBodyShieldRoot.d.ts +5 -0
  16. package/dist/mybodyshield/MyBodyShieldRoot.d.ts.map +1 -0
  17. package/dist/mybodyshield/MyBodyShieldRoot.js +364 -0
  18. package/dist/mybodyshield/MyBodyShieldRoot.js.map +1 -0
  19. package/dist/mybodyshield/MyBodyShieldRoutes.d.ts +2 -0
  20. package/dist/mybodyshield/MyBodyShieldRoutes.d.ts.map +1 -0
  21. package/dist/mybodyshield/MyBodyShieldRoutes.js +199 -0
  22. package/dist/mybodyshield/MyBodyShieldRoutes.js.map +1 -0
  23. package/dist/mybodyshield/index.d.ts +5 -0
  24. package/dist/mybodyshield/index.d.ts.map +1 -0
  25. package/dist/mybodyshield/index.js +3 -0
  26. package/dist/mybodyshield/pages/AdminAiinsightsPage.d.ts +2 -0
  27. package/dist/mybodyshield/pages/AdminAiinsightsPage.d.ts.map +1 -0
  28. package/dist/mybodyshield/pages/AdminAiinsightsPage.js +161 -0
  29. package/dist/mybodyshield/pages/AdminAiinsightsPage.js.map +1 -0
  30. package/dist/mybodyshield/pages/AdminAnalyticsPage.d.ts +2 -0
  31. package/dist/mybodyshield/pages/AdminAnalyticsPage.d.ts.map +1 -0
  32. package/dist/mybodyshield/pages/AdminAnalyticsPage.js +193 -0
  33. package/dist/mybodyshield/pages/AdminAnalyticsPage.js.map +1 -0
  34. package/dist/mybodyshield/pages/AdminComplianceReportsPage.d.ts +2 -0
  35. package/dist/mybodyshield/pages/AdminComplianceReportsPage.d.ts.map +1 -0
  36. package/dist/mybodyshield/pages/AdminComplianceReportsPage.js +214 -0
  37. package/dist/mybodyshield/pages/AdminComplianceReportsPage.js.map +1 -0
  38. package/dist/mybodyshield/pages/AdminDashboardPage.d.ts +2 -0
  39. package/dist/mybodyshield/pages/AdminDashboardPage.d.ts.map +1 -0
  40. package/dist/mybodyshield/pages/AdminDashboardPage.js +186 -0
  41. package/dist/mybodyshield/pages/AdminDashboardPage.js.map +1 -0
  42. package/dist/mybodyshield/pages/AdminOrganizationManagementPage.d.ts +2 -0
  43. package/dist/mybodyshield/pages/AdminOrganizationManagementPage.d.ts.map +1 -0
  44. package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js +252 -0
  45. package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js.map +1 -0
  46. package/dist/mybodyshield/pages/AdminSystemSettingsPage.d.ts +2 -0
  47. package/dist/mybodyshield/pages/AdminSystemSettingsPage.d.ts.map +1 -0
  48. package/dist/mybodyshield/pages/AdminSystemSettingsPage.js +159 -0
  49. package/dist/mybodyshield/pages/AdminSystemSettingsPage.js.map +1 -0
  50. package/dist/mybodyshield/pages/AdminUserManagementPage.d.ts +2 -0
  51. package/dist/mybodyshield/pages/AdminUserManagementPage.d.ts.map +1 -0
  52. package/dist/mybodyshield/pages/AdminUserManagementPage.js +208 -0
  53. package/dist/mybodyshield/pages/AdminUserManagementPage.js.map +1 -0
  54. package/dist/mybodyshield/pages/FitnessAssessmentsPage.d.ts +2 -0
  55. package/dist/mybodyshield/pages/FitnessAssessmentsPage.d.ts.map +1 -0
  56. package/dist/mybodyshield/pages/FitnessAssessmentsPage.js +194 -0
  57. package/dist/mybodyshield/pages/FitnessAssessmentsPage.js.map +1 -0
  58. package/dist/mybodyshield/pages/FitnessClientDetailsPage.d.ts +2 -0
  59. package/dist/mybodyshield/pages/FitnessClientDetailsPage.d.ts.map +1 -0
  60. package/dist/mybodyshield/pages/FitnessClientDetailsPage.js +192 -0
  61. package/dist/mybodyshield/pages/FitnessClientDetailsPage.js.map +1 -0
  62. package/dist/mybodyshield/pages/FitnessClientManagementPage.d.ts +2 -0
  63. package/dist/mybodyshield/pages/FitnessClientManagementPage.d.ts.map +1 -0
  64. package/dist/mybodyshield/pages/FitnessClientManagementPage.js +128 -0
  65. package/dist/mybodyshield/pages/FitnessClientManagementPage.js.map +1 -0
  66. package/dist/mybodyshield/pages/FitnessDashboardPage.d.ts +2 -0
  67. package/dist/mybodyshield/pages/FitnessDashboardPage.d.ts.map +1 -0
  68. package/dist/mybodyshield/pages/FitnessDashboardPage.js +156 -0
  69. package/dist/mybodyshield/pages/FitnessDashboardPage.js.map +1 -0
  70. package/dist/mybodyshield/pages/FitnessReportsPage.d.ts +2 -0
  71. package/dist/mybodyshield/pages/FitnessReportsPage.d.ts.map +1 -0
  72. package/dist/mybodyshield/pages/FitnessReportsPage.js +138 -0
  73. package/dist/mybodyshield/pages/FitnessReportsPage.js.map +1 -0
  74. package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.d.ts +2 -0
  75. package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.d.ts.map +1 -0
  76. package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js +176 -0
  77. package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js.map +1 -0
  78. package/dist/mybodyshield/pages/PatientAppointmentsPage.d.ts +2 -0
  79. package/dist/mybodyshield/pages/PatientAppointmentsPage.d.ts.map +1 -0
  80. package/dist/mybodyshield/pages/PatientAppointmentsPage.js +132 -0
  81. package/dist/mybodyshield/pages/PatientAppointmentsPage.js.map +1 -0
  82. package/dist/mybodyshield/pages/PatientDashboardPage.d.ts +2 -0
  83. package/dist/mybodyshield/pages/PatientDashboardPage.d.ts.map +1 -0
  84. package/dist/mybodyshield/pages/PatientDashboardPage.js +190 -0
  85. package/dist/mybodyshield/pages/PatientDashboardPage.js.map +1 -0
  86. package/dist/mybodyshield/pages/PatientFitnessTrackingPage.d.ts +2 -0
  87. package/dist/mybodyshield/pages/PatientFitnessTrackingPage.d.ts.map +1 -0
  88. package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js +137 -0
  89. package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js.map +1 -0
  90. package/dist/mybodyshield/pages/PatientHealthGoalsPage.d.ts +2 -0
  91. package/dist/mybodyshield/pages/PatientHealthGoalsPage.d.ts.map +1 -0
  92. package/dist/mybodyshield/pages/PatientHealthGoalsPage.js +131 -0
  93. package/dist/mybodyshield/pages/PatientHealthGoalsPage.js.map +1 -0
  94. package/dist/mybodyshield/pages/PatientHealthOverviewPage.d.ts +2 -0
  95. package/dist/mybodyshield/pages/PatientHealthOverviewPage.d.ts.map +1 -0
  96. package/dist/mybodyshield/pages/PatientHealthOverviewPage.js +273 -0
  97. package/dist/mybodyshield/pages/PatientHealthOverviewPage.js.map +1 -0
  98. package/dist/mybodyshield/pages/PatientLabResultsPage.d.ts +2 -0
  99. package/dist/mybodyshield/pages/PatientLabResultsPage.d.ts.map +1 -0
  100. package/dist/mybodyshield/pages/PatientLabResultsPage.js +133 -0
  101. package/dist/mybodyshield/pages/PatientLabResultsPage.js.map +1 -0
  102. package/dist/mybodyshield/pages/PatientMedicationsPage.d.ts +2 -0
  103. package/dist/mybodyshield/pages/PatientMedicationsPage.d.ts.map +1 -0
  104. package/dist/mybodyshield/pages/PatientMedicationsPage.js +158 -0
  105. package/dist/mybodyshield/pages/PatientMedicationsPage.js.map +1 -0
  106. package/dist/mybodyshield/pages/PatientMentalHealthPage.d.ts +2 -0
  107. package/dist/mybodyshield/pages/PatientMentalHealthPage.d.ts.map +1 -0
  108. package/dist/mybodyshield/pages/PatientMentalHealthPage.js +152 -0
  109. package/dist/mybodyshield/pages/PatientMentalHealthPage.js.map +1 -0
  110. package/dist/mybodyshield/pages/PatientNutritionTrackingPage.d.ts +2 -0
  111. package/dist/mybodyshield/pages/PatientNutritionTrackingPage.d.ts.map +1 -0
  112. package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js +141 -0
  113. package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js.map +1 -0
  114. package/dist/mybodyshield/pages/PatientVitalSignsPage.d.ts +2 -0
  115. package/dist/mybodyshield/pages/PatientVitalSignsPage.d.ts.map +1 -0
  116. package/dist/mybodyshield/pages/PatientVitalSignsPage.js +160 -0
  117. package/dist/mybodyshield/pages/PatientVitalSignsPage.js.map +1 -0
  118. package/dist/mybodyshield/pages/ProviderCalendarPage.d.ts +2 -0
  119. package/dist/mybodyshield/pages/ProviderCalendarPage.d.ts.map +1 -0
  120. package/dist/mybodyshield/pages/ProviderCalendarPage.js +127 -0
  121. package/dist/mybodyshield/pages/ProviderCalendarPage.js.map +1 -0
  122. package/dist/mybodyshield/pages/ProviderCarePlansPage.d.ts +2 -0
  123. package/dist/mybodyshield/pages/ProviderCarePlansPage.d.ts.map +1 -0
  124. package/dist/mybodyshield/pages/ProviderCarePlansPage.js +153 -0
  125. package/dist/mybodyshield/pages/ProviderCarePlansPage.js.map +1 -0
  126. package/dist/mybodyshield/pages/ProviderClinicalToolsPage.d.ts +2 -0
  127. package/dist/mybodyshield/pages/ProviderClinicalToolsPage.d.ts.map +1 -0
  128. package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js +174 -0
  129. package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js.map +1 -0
  130. package/dist/mybodyshield/pages/ProviderDashboardPage.d.ts +2 -0
  131. package/dist/mybodyshield/pages/ProviderDashboardPage.d.ts.map +1 -0
  132. package/dist/mybodyshield/pages/ProviderDashboardPage.js +154 -0
  133. package/dist/mybodyshield/pages/ProviderDashboardPage.js.map +1 -0
  134. package/dist/mybodyshield/pages/ProviderPatientDetailsPage.d.ts +2 -0
  135. package/dist/mybodyshield/pages/ProviderPatientDetailsPage.d.ts.map +1 -0
  136. package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js +295 -0
  137. package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js.map +1 -0
  138. package/dist/mybodyshield/pages/ProviderPatientManagementPage.d.ts +2 -0
  139. package/dist/mybodyshield/pages/ProviderPatientManagementPage.d.ts.map +1 -0
  140. package/dist/mybodyshield/pages/ProviderPatientManagementPage.js +133 -0
  141. package/dist/mybodyshield/pages/ProviderPatientManagementPage.js.map +1 -0
  142. package/dist/mybodyshield/pages/ProviderPrescriptionsPage.d.ts +2 -0
  143. package/dist/mybodyshield/pages/ProviderPrescriptionsPage.d.ts.map +1 -0
  144. package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js +138 -0
  145. package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js.map +1 -0
  146. package/dist/mybodyshield/pages/ProviderReportsPage.d.ts +2 -0
  147. package/dist/mybodyshield/pages/ProviderReportsPage.d.ts.map +1 -0
  148. package/dist/mybodyshield/pages/ProviderReportsPage.js +149 -0
  149. package/dist/mybodyshield/pages/ProviderReportsPage.js.map +1 -0
  150. package/dist/mybodyshield/pages/SharedAppointmentsPage.d.ts +2 -0
  151. package/dist/mybodyshield/pages/SharedAppointmentsPage.d.ts.map +1 -0
  152. package/dist/mybodyshield/pages/SharedAppointmentsPage.js +129 -0
  153. package/dist/mybodyshield/pages/SharedAppointmentsPage.js.map +1 -0
  154. package/dist/mybodyshield/pages/SharedCommunityPage.d.ts +2 -0
  155. package/dist/mybodyshield/pages/SharedCommunityPage.d.ts.map +1 -0
  156. package/dist/mybodyshield/pages/SharedCommunityPage.js +152 -0
  157. package/dist/mybodyshield/pages/SharedCommunityPage.js.map +1 -0
  158. package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.d.ts +2 -0
  159. package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.d.ts.map +1 -0
  160. package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js +165 -0
  161. package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js.map +1 -0
  162. package/dist/mybodyshield/pages/SharedEmergencyPage.d.ts +2 -0
  163. package/dist/mybodyshield/pages/SharedEmergencyPage.d.ts.map +1 -0
  164. package/dist/mybodyshield/pages/SharedEmergencyPage.js +183 -0
  165. package/dist/mybodyshield/pages/SharedEmergencyPage.js.map +1 -0
  166. package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.d.ts +2 -0
  167. package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.d.ts.map +1 -0
  168. package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js +159 -0
  169. package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js.map +1 -0
  170. package/dist/mybodyshield/pages/SharedMarketplacePage.d.ts +2 -0
  171. package/dist/mybodyshield/pages/SharedMarketplacePage.d.ts.map +1 -0
  172. package/dist/mybodyshield/pages/SharedMarketplacePage.js +193 -0
  173. package/dist/mybodyshield/pages/SharedMarketplacePage.js.map +1 -0
  174. package/dist/mybodyshield/pages/SharedMessagesPage.d.ts +2 -0
  175. package/dist/mybodyshield/pages/SharedMessagesPage.d.ts.map +1 -0
  176. package/dist/mybodyshield/pages/SharedMessagesPage.js +156 -0
  177. package/dist/mybodyshield/pages/SharedMessagesPage.js.map +1 -0
  178. package/dist/mybodyshield/pages/WellnessAssessmentsPage.d.ts +2 -0
  179. package/dist/mybodyshield/pages/WellnessAssessmentsPage.d.ts.map +1 -0
  180. package/dist/mybodyshield/pages/WellnessAssessmentsPage.js +147 -0
  181. package/dist/mybodyshield/pages/WellnessAssessmentsPage.js.map +1 -0
  182. package/dist/mybodyshield/pages/WellnessClientsPage.d.ts +2 -0
  183. package/dist/mybodyshield/pages/WellnessClientsPage.d.ts.map +1 -0
  184. package/dist/mybodyshield/pages/WellnessClientsPage.js +182 -0
  185. package/dist/mybodyshield/pages/WellnessClientsPage.js.map +1 -0
  186. package/dist/mybodyshield/pages/WellnessDashboardPage.d.ts +2 -0
  187. package/dist/mybodyshield/pages/WellnessDashboardPage.d.ts.map +1 -0
  188. package/dist/mybodyshield/pages/WellnessDashboardPage.js +136 -0
  189. package/dist/mybodyshield/pages/WellnessDashboardPage.js.map +1 -0
  190. package/dist/mybodyshield/pages/WellnessProgramsPage.d.ts +2 -0
  191. package/dist/mybodyshield/pages/WellnessProgramsPage.d.ts.map +1 -0
  192. package/dist/mybodyshield/pages/WellnessProgramsPage.js +140 -0
  193. package/dist/mybodyshield/pages/WellnessProgramsPage.js.map +1 -0
  194. package/dist/mybodyshield/providers/MyBodyShieldProvider.d.ts +6 -0
  195. package/dist/mybodyshield/providers/MyBodyShieldProvider.d.ts.map +1 -0
  196. package/dist/mybodyshield/providers/MyBodyShieldProvider.js +27 -0
  197. package/dist/mybodyshield/providers/MyBodyShieldProvider.js.map +1 -0
  198. package/dist/mybodyshield/store/mybodyshieldStore.d.ts +197 -0
  199. package/dist/mybodyshield/store/mybodyshieldStore.d.ts.map +1 -0
  200. package/dist/mybodyshield/store/mybodyshieldStore.js +710 -0
  201. package/dist/mybodyshield/store/mybodyshieldStore.js.map +1 -0
  202. package/dist/mybodyshield/types/index.d.ts +51 -0
  203. package/dist/mybodyshield/types/index.d.ts.map +1 -0
  204. package/dist/mybodyshield/utils/cn.d.ts +4 -0
  205. package/dist/mybodyshield/utils/cn.d.ts.map +1 -0
  206. package/dist/mybodyshield/utils/navigation.d.ts +2 -0
  207. package/dist/mybodyshield/utils/navigation.d.ts.map +1 -0
  208. package/dist/mybodyshield/utils/navigation.js +8 -0
  209. package/dist/mybodyshield/utils/navigation.js.map +1 -0
  210. package/package.json +107 -0
@@ -0,0 +1,208 @@
1
+ import { useMyBodyShieldStore as e } from "../store/mybodyshieldStore.js";
2
+ import { Clock as t, Shield as n, UserCheck as r, UserX as i, Users as a } from "lucide-react";
3
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
4
+ import { Card as c, CardContent as l, CardHeader as u, CardTitle as d } from "@burdenoff/fe-libs/ui";
5
+ //#region src/mybodyshield/pages/AdminUserManagementPage.tsx
6
+ var f = [
7
+ {
8
+ id: 1,
9
+ name: "Dr. James Wilson",
10
+ role: "Doctor",
11
+ email: "j.wilson@mybodyshield.com",
12
+ status: "Active",
13
+ lastLogin: "2 hours ago",
14
+ department: "Cardiology"
15
+ },
16
+ {
17
+ id: 2,
18
+ name: "Dr. Emily Rodriguez",
19
+ role: "Doctor",
20
+ email: "e.rodriguez@mybodyshield.com",
21
+ status: "Active",
22
+ lastLogin: "30 min ago",
23
+ department: "Pulmonology"
24
+ },
25
+ {
26
+ id: 3,
27
+ name: "Dr. Sarah Kim",
28
+ role: "Doctor",
29
+ email: "s.kim@mybodyshield.com",
30
+ status: "Active",
31
+ lastLogin: "1 hour ago",
32
+ department: "Psychiatry"
33
+ },
34
+ {
35
+ id: 4,
36
+ name: "Nurse Maria Santos",
37
+ role: "Nurse",
38
+ email: "m.santos@mybodyshield.com",
39
+ status: "Active",
40
+ lastLogin: "15 min ago",
41
+ department: "General"
42
+ },
43
+ {
44
+ id: 5,
45
+ name: "Nurse David Park",
46
+ role: "Nurse",
47
+ email: "d.park@mybodyshield.com",
48
+ status: "Active",
49
+ lastLogin: "45 min ago",
50
+ department: "Cardiology"
51
+ },
52
+ {
53
+ id: 6,
54
+ name: "Admin Rachel Green",
55
+ role: "Admin",
56
+ email: "r.green@mybodyshield.com",
57
+ status: "Active",
58
+ lastLogin: "10 min ago",
59
+ department: "Administration"
60
+ },
61
+ {
62
+ id: 7,
63
+ name: "Dr. Carlos Reyes",
64
+ role: "Doctor",
65
+ email: "c.reyes@mybodyshield.com",
66
+ status: "Pending",
67
+ lastLogin: "Never",
68
+ department: "Dermatology"
69
+ },
70
+ {
71
+ id: 8,
72
+ name: "Nurse Priya Patel",
73
+ role: "Nurse",
74
+ email: "p.patel@mybodyshield.com",
75
+ status: "Suspended",
76
+ lastLogin: "5 days ago",
77
+ department: "Pediatrics"
78
+ }
79
+ ], p = {
80
+ Doctor: "bg-blue-100 text-blue-700",
81
+ Nurse: "bg-green-100 text-green-700",
82
+ Admin: "bg-purple-100 text-purple-700"
83
+ }, m = {
84
+ Active: "bg-green-100 text-green-700",
85
+ Pending: "bg-yellow-100 text-yellow-700",
86
+ Suspended: "bg-red-100 text-red-700"
87
+ };
88
+ function h() {
89
+ let { patients: h } = e();
90
+ return /* @__PURE__ */ s("div", {
91
+ className: "space-y-6 p-6",
92
+ children: [
93
+ /* @__PURE__ */ s("div", { children: [/* @__PURE__ */ o("h1", {
94
+ className: "text-2xl font-semibold",
95
+ children: "User Management"
96
+ }), /* @__PURE__ */ o("p", {
97
+ className: "text-sm text-muted-foreground",
98
+ children: "Manage doctors, nurses, staff, and patient accounts"
99
+ })] }),
100
+ /* @__PURE__ */ s("div", {
101
+ className: "grid gap-4 md:grid-cols-4",
102
+ children: [
103
+ /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ s(u, {
104
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
105
+ children: [/* @__PURE__ */ o(d, {
106
+ className: "text-sm font-medium",
107
+ children: "Total Users"
108
+ }), /* @__PURE__ */ o(a, { className: "h-4 w-4 text-blue-500" })]
109
+ }), /* @__PURE__ */ s(l, { children: [/* @__PURE__ */ o("div", {
110
+ className: "text-2xl font-bold",
111
+ children: "2,456"
112
+ }), /* @__PURE__ */ o("p", {
113
+ className: "text-xs text-muted-foreground",
114
+ children: "+34 this month"
115
+ })] })] }),
116
+ /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ s(u, {
117
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
118
+ children: [/* @__PURE__ */ o(d, {
119
+ className: "text-sm font-medium",
120
+ children: "Active Providers"
121
+ }), /* @__PURE__ */ o(r, { className: "h-4 w-4 text-green-500" })]
122
+ }), /* @__PURE__ */ s(l, { children: [/* @__PURE__ */ o("div", {
123
+ className: "text-2xl font-bold",
124
+ children: h.length + 40
125
+ }), /* @__PURE__ */ o("p", {
126
+ className: "text-xs text-muted-foreground",
127
+ children: "Doctors, nurses, specialists"
128
+ })] })] }),
129
+ /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ s(u, {
130
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
131
+ children: [/* @__PURE__ */ o(d, {
132
+ className: "text-sm font-medium",
133
+ children: "Pending Approvals"
134
+ }), /* @__PURE__ */ o(t, { className: "h-4 w-4 text-yellow-500" })]
135
+ }), /* @__PURE__ */ s(l, { children: [/* @__PURE__ */ o("div", {
136
+ className: "text-2xl font-bold",
137
+ children: "12"
138
+ }), /* @__PURE__ */ o("p", {
139
+ className: "text-xs text-muted-foreground",
140
+ children: "Awaiting credential verification"
141
+ })] })] }),
142
+ /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ s(u, {
143
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
144
+ children: [/* @__PURE__ */ o(d, {
145
+ className: "text-sm font-medium",
146
+ children: "Suspended"
147
+ }), /* @__PURE__ */ o(i, { className: "h-4 w-4 text-red-500" })]
148
+ }), /* @__PURE__ */ s(l, { children: [/* @__PURE__ */ o("div", {
149
+ className: "text-2xl font-bold",
150
+ children: "3"
151
+ }), /* @__PURE__ */ o("p", {
152
+ className: "text-xs text-muted-foreground",
153
+ children: "Under compliance review"
154
+ })] })] })
155
+ ]
156
+ }),
157
+ /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ o(u, { children: /* @__PURE__ */ s(d, {
158
+ className: "flex items-center gap-2",
159
+ children: [/* @__PURE__ */ o(n, { className: "h-5 w-5" }), "System Users"]
160
+ }) }), /* @__PURE__ */ o(l, { children: /* @__PURE__ */ o("div", {
161
+ className: "space-y-3",
162
+ children: f.map((e) => /* @__PURE__ */ s("div", {
163
+ className: "flex items-center justify-between p-3 rounded-lg bg-muted/50",
164
+ children: [/* @__PURE__ */ s("div", {
165
+ className: "flex items-center gap-3",
166
+ children: [/* @__PURE__ */ o("div", {
167
+ className: "h-8 w-8 rounded-full bg-primary/10 flex items-center justify-center",
168
+ children: /* @__PURE__ */ o("span", {
169
+ className: "text-xs font-medium text-primary",
170
+ children: e.name.split(" ").map((e) => e[0]).join("")
171
+ })
172
+ }), /* @__PURE__ */ s("div", { children: [/* @__PURE__ */ o("p", {
173
+ className: "text-sm font-medium",
174
+ children: e.name
175
+ }), /* @__PURE__ */ s("p", {
176
+ className: "text-xs text-muted-foreground",
177
+ children: [
178
+ e.email,
179
+ " · ",
180
+ e.department
181
+ ]
182
+ })] })]
183
+ }), /* @__PURE__ */ s("div", {
184
+ className: "flex items-center gap-3",
185
+ children: [
186
+ /* @__PURE__ */ o("span", {
187
+ className: `text-xs font-medium px-2 py-0.5 rounded-full ${p[e.role] ?? "bg-gray-100 text-gray-700"}`,
188
+ children: e.role
189
+ }),
190
+ /* @__PURE__ */ o("span", {
191
+ className: `text-xs font-medium px-2 py-0.5 rounded-full ${m[e.status] ?? "bg-gray-100 text-gray-700"}`,
192
+ children: e.status
193
+ }),
194
+ /* @__PURE__ */ o("span", {
195
+ className: "text-xs text-muted-foreground w-24 text-right",
196
+ children: e.lastLogin
197
+ })
198
+ ]
199
+ })]
200
+ }, e.id))
201
+ }) })] })
202
+ ]
203
+ });
204
+ }
205
+ //#endregion
206
+ export { h as AdminUserManagementPage };
207
+
208
+ //# sourceMappingURL=AdminUserManagementPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminUserManagementPage.js","names":[],"sources":["../../../src/mybodyshield/pages/AdminUserManagementPage.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Users, UserCheck, UserX, Clock, Shield } from 'lucide-react';\nimport { useMyBodyShieldStore } from '../store/mybodyshieldStore';\n\nconst systemUsers = [\n {\n id: 1,\n name: 'Dr. James Wilson',\n role: 'Doctor',\n email: 'j.wilson@mybodyshield.com',\n status: 'Active',\n lastLogin: '2 hours ago',\n department: 'Cardiology',\n },\n {\n id: 2,\n name: 'Dr. Emily Rodriguez',\n role: 'Doctor',\n email: 'e.rodriguez@mybodyshield.com',\n status: 'Active',\n lastLogin: '30 min ago',\n department: 'Pulmonology',\n },\n {\n id: 3,\n name: 'Dr. Sarah Kim',\n role: 'Doctor',\n email: 's.kim@mybodyshield.com',\n status: 'Active',\n lastLogin: '1 hour ago',\n department: 'Psychiatry',\n },\n {\n id: 4,\n name: 'Nurse Maria Santos',\n role: 'Nurse',\n email: 'm.santos@mybodyshield.com',\n status: 'Active',\n lastLogin: '15 min ago',\n department: 'General',\n },\n {\n id: 5,\n name: 'Nurse David Park',\n role: 'Nurse',\n email: 'd.park@mybodyshield.com',\n status: 'Active',\n lastLogin: '45 min ago',\n department: 'Cardiology',\n },\n {\n id: 6,\n name: 'Admin Rachel Green',\n role: 'Admin',\n email: 'r.green@mybodyshield.com',\n status: 'Active',\n lastLogin: '10 min ago',\n department: 'Administration',\n },\n {\n id: 7,\n name: 'Dr. Carlos Reyes',\n role: 'Doctor',\n email: 'c.reyes@mybodyshield.com',\n status: 'Pending',\n lastLogin: 'Never',\n department: 'Dermatology',\n },\n {\n id: 8,\n name: 'Nurse Priya Patel',\n role: 'Nurse',\n email: 'p.patel@mybodyshield.com',\n status: 'Suspended',\n lastLogin: '5 days ago',\n department: 'Pediatrics',\n },\n];\n\nconst roleColors: Record<string, string> = {\n Doctor: 'bg-blue-100 text-blue-700',\n Nurse: 'bg-green-100 text-green-700',\n Admin: 'bg-purple-100 text-purple-700',\n};\n\nconst statusColors: Record<string, string> = {\n Active: 'bg-green-100 text-green-700',\n Pending: 'bg-yellow-100 text-yellow-700',\n Suspended: 'bg-red-100 text-red-700',\n};\n\nexport function AdminUserManagementPage() {\n const { patients } = useMyBodyShieldStore();\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">User Management</h1>\n <p className=\"text-sm text-muted-foreground\">\n Manage doctors, nurses, staff, and patient accounts\n </p>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-4\">\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Total Users</CardTitle>\n <Users className=\"h-4 w-4 text-blue-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">2,456</div>\n <p className=\"text-xs text-muted-foreground\">+34 this month</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Active Providers</CardTitle>\n <UserCheck className=\"h-4 w-4 text-green-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{patients.length + 40}</div>\n <p className=\"text-xs text-muted-foreground\">Doctors, nurses, specialists</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Pending Approvals</CardTitle>\n <Clock className=\"h-4 w-4 text-yellow-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">12</div>\n <p className=\"text-xs text-muted-foreground\">Awaiting credential verification</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Suspended</CardTitle>\n <UserX className=\"h-4 w-4 text-red-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">3</div>\n <p className=\"text-xs text-muted-foreground\">Under compliance review</p>\n </CardContent>\n </Card>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center gap-2\">\n <Shield className=\"h-5 w-5\" />\n System Users\n </CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-3\">\n {systemUsers.map((user) => (\n <div\n key={user.id}\n className=\"flex items-center justify-between p-3 rounded-lg bg-muted/50\"\n >\n <div className=\"flex items-center gap-3\">\n <div className=\"h-8 w-8 rounded-full bg-primary/10 flex items-center justify-center\">\n <span className=\"text-xs font-medium text-primary\">\n {user.name\n .split(' ')\n .map((n) => n[0])\n .join('')}\n </span>\n </div>\n <div>\n <p className=\"text-sm font-medium\">{user.name}</p>\n <p className=\"text-xs text-muted-foreground\">\n {user.email} &middot; {user.department}\n </p>\n </div>\n </div>\n <div className=\"flex items-center gap-3\">\n <span\n className={`text-xs font-medium px-2 py-0.5 rounded-full ${roleColors[user.role] ?? 'bg-gray-100 text-gray-700'}`}\n >\n {user.role}\n </span>\n <span\n className={`text-xs font-medium px-2 py-0.5 rounded-full ${statusColors[user.status] ?? 'bg-gray-100 text-gray-700'}`}\n >\n {user.status}\n </span>\n <span className=\"text-xs text-muted-foreground w-24 text-right\">\n {user.lastLogin}\n </span>\n </div>\n </div>\n ))}\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function FitnessAssessmentsPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=FitnessAssessmentsPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FitnessAssessmentsPage.d.ts","sourceRoot":"","sources":["../../../src/mybodyshield/pages/FitnessAssessmentsPage.tsx"],"names":[],"mappings":"AAwDA,wBAAgB,sBAAsB,4CAiGrC"}
@@ -0,0 +1,194 @@
1
+ import { CheckCircle as e, ClipboardCheck as t, Clock as n, TrendingUp as r } from "lucide-react";
2
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
3
+ import { Card as o, CardContent as s, CardHeader as c, CardTitle as l } from "@burdenoff/fe-libs/ui";
4
+ //#region src/mybodyshield/pages/FitnessAssessmentsPage.tsx
5
+ var u = [
6
+ {
7
+ id: 1,
8
+ client: "Sarah Johnson",
9
+ date: "2026-02-10",
10
+ vo2Max: 38,
11
+ strength: 72,
12
+ flexibility: 65,
13
+ endurance: 70,
14
+ score: 82
15
+ },
16
+ {
17
+ id: 2,
18
+ client: "Michael Chen",
19
+ date: "2026-02-08",
20
+ vo2Max: 42,
21
+ strength: 68,
22
+ flexibility: 55,
23
+ endurance: 75,
24
+ score: 78
25
+ },
26
+ {
27
+ id: 3,
28
+ client: "Emily Davis",
29
+ date: "2026-02-07",
30
+ vo2Max: 35,
31
+ strength: 58,
32
+ flexibility: 80,
33
+ endurance: 62,
34
+ score: 74
35
+ },
36
+ {
37
+ id: 4,
38
+ client: "Robert Wilson",
39
+ date: "2026-02-05",
40
+ vo2Max: 32,
41
+ strength: 65,
42
+ flexibility: 45,
43
+ endurance: 55,
44
+ score: 68
45
+ },
46
+ {
47
+ id: 5,
48
+ client: "Lisa Thompson",
49
+ date: "2026-02-03",
50
+ vo2Max: 40,
51
+ strength: 60,
52
+ flexibility: 72,
53
+ endurance: 68,
54
+ score: 80
55
+ }
56
+ ];
57
+ function d() {
58
+ return /* @__PURE__ */ a("div", {
59
+ className: "space-y-6 p-6",
60
+ children: [
61
+ /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("h1", {
62
+ className: "text-2xl font-semibold",
63
+ children: "Fitness Assessments"
64
+ }), /* @__PURE__ */ i("p", {
65
+ className: "text-sm text-muted-foreground",
66
+ children: "Client fitness evaluations and performance benchmarks"
67
+ })] }),
68
+ /* @__PURE__ */ a("div", {
69
+ className: "grid gap-4 md:grid-cols-4",
70
+ children: [
71
+ /* @__PURE__ */ a(o, { children: [/* @__PURE__ */ a(c, {
72
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
73
+ children: [/* @__PURE__ */ i(l, {
74
+ className: "text-sm font-medium",
75
+ children: "Completed"
76
+ }), /* @__PURE__ */ i(e, { className: "h-4 w-4 text-green-500" })]
77
+ }), /* @__PURE__ */ a(s, { children: [/* @__PURE__ */ i("div", {
78
+ className: "text-2xl font-bold",
79
+ children: "42"
80
+ }), /* @__PURE__ */ i("p", {
81
+ className: "text-xs text-muted-foreground",
82
+ children: "Total assessments"
83
+ })] })] }),
84
+ /* @__PURE__ */ a(o, { children: [/* @__PURE__ */ a(c, {
85
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
86
+ children: [/* @__PURE__ */ i(l, {
87
+ className: "text-sm font-medium",
88
+ children: "Pending"
89
+ }), /* @__PURE__ */ i(n, { className: "h-4 w-4 text-yellow-500" })]
90
+ }), /* @__PURE__ */ a(s, { children: [/* @__PURE__ */ i("div", {
91
+ className: "text-2xl font-bold",
92
+ children: "6"
93
+ }), /* @__PURE__ */ i("p", {
94
+ className: "text-xs text-muted-foreground",
95
+ children: "Awaiting completion"
96
+ })] })] }),
97
+ /* @__PURE__ */ a(o, { children: [/* @__PURE__ */ a(c, {
98
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
99
+ children: [/* @__PURE__ */ i(l, {
100
+ className: "text-sm font-medium",
101
+ children: "Avg Fitness Score"
102
+ }), /* @__PURE__ */ i(t, { className: "h-4 w-4 text-blue-500" })]
103
+ }), /* @__PURE__ */ a(s, { children: [/* @__PURE__ */ i("div", {
104
+ className: "text-2xl font-bold",
105
+ children: "78/100"
106
+ }), /* @__PURE__ */ i("p", {
107
+ className: "text-xs text-muted-foreground",
108
+ children: "Across all clients"
109
+ })] })] }),
110
+ /* @__PURE__ */ a(o, { children: [/* @__PURE__ */ a(c, {
111
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
112
+ children: [/* @__PURE__ */ i(l, {
113
+ className: "text-sm font-medium",
114
+ children: "Improvements"
115
+ }), /* @__PURE__ */ i(r, { className: "h-4 w-4 text-purple-500" })]
116
+ }), /* @__PURE__ */ a(s, { children: [/* @__PURE__ */ i("div", {
117
+ className: "text-2xl font-bold",
118
+ children: "89%"
119
+ }), /* @__PURE__ */ i("p", {
120
+ className: "text-xs text-muted-foreground",
121
+ children: "Show improvement"
122
+ })] })] })
123
+ ]
124
+ }),
125
+ /* @__PURE__ */ a(o, { children: [/* @__PURE__ */ i(c, { children: /* @__PURE__ */ i(l, { children: "Assessment Results" }) }), /* @__PURE__ */ i(s, { children: /* @__PURE__ */ i("div", {
126
+ className: "space-y-3",
127
+ children: u.map((e) => /* @__PURE__ */ a("div", {
128
+ className: "p-3 rounded-lg bg-muted/50",
129
+ children: [/* @__PURE__ */ a("div", {
130
+ className: "flex items-center justify-between mb-2",
131
+ children: [/* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("p", {
132
+ className: "text-sm font-medium",
133
+ children: e.client
134
+ }), /* @__PURE__ */ i("p", {
135
+ className: "text-xs text-muted-foreground",
136
+ children: e.date
137
+ })] }), /* @__PURE__ */ a("span", {
138
+ className: `text-sm font-bold ${e.score >= 80 ? "text-green-600" : e.score >= 70 ? "text-blue-600" : "text-orange-600"}`,
139
+ children: [e.score, "/100"]
140
+ })]
141
+ }), /* @__PURE__ */ a("div", {
142
+ className: "grid grid-cols-4 gap-2",
143
+ children: [
144
+ /* @__PURE__ */ a("div", {
145
+ className: "text-center p-1.5 rounded bg-blue-50",
146
+ children: [/* @__PURE__ */ i("p", {
147
+ className: "text-xs text-muted-foreground",
148
+ children: "VO2 Max"
149
+ }), /* @__PURE__ */ i("p", {
150
+ className: "text-sm font-medium",
151
+ children: e.vo2Max
152
+ })]
153
+ }),
154
+ /* @__PURE__ */ a("div", {
155
+ className: "text-center p-1.5 rounded bg-red-50",
156
+ children: [/* @__PURE__ */ i("p", {
157
+ className: "text-xs text-muted-foreground",
158
+ children: "Strength"
159
+ }), /* @__PURE__ */ a("p", {
160
+ className: "text-sm font-medium",
161
+ children: [e.strength, "%"]
162
+ })]
163
+ }),
164
+ /* @__PURE__ */ a("div", {
165
+ className: "text-center p-1.5 rounded bg-green-50",
166
+ children: [/* @__PURE__ */ i("p", {
167
+ className: "text-xs text-muted-foreground",
168
+ children: "Flexibility"
169
+ }), /* @__PURE__ */ a("p", {
170
+ className: "text-sm font-medium",
171
+ children: [e.flexibility, "%"]
172
+ })]
173
+ }),
174
+ /* @__PURE__ */ a("div", {
175
+ className: "text-center p-1.5 rounded bg-purple-50",
176
+ children: [/* @__PURE__ */ i("p", {
177
+ className: "text-xs text-muted-foreground",
178
+ children: "Endurance"
179
+ }), /* @__PURE__ */ a("p", {
180
+ className: "text-sm font-medium",
181
+ children: [e.endurance, "%"]
182
+ })]
183
+ })
184
+ ]
185
+ })]
186
+ }, e.id))
187
+ }) })] })
188
+ ]
189
+ });
190
+ }
191
+ //#endregion
192
+ export { d as FitnessAssessmentsPage };
193
+
194
+ //# sourceMappingURL=FitnessAssessmentsPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FitnessAssessmentsPage.js","names":[],"sources":["../../../src/mybodyshield/pages/FitnessAssessmentsPage.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { ClipboardCheck, CheckCircle, Clock, TrendingUp } from 'lucide-react';\n\nconst assessments = [\n {\n id: 1,\n client: 'Sarah Johnson',\n date: '2026-02-10',\n vo2Max: 38,\n strength: 72,\n flexibility: 65,\n endurance: 70,\n score: 82,\n },\n {\n id: 2,\n client: 'Michael Chen',\n date: '2026-02-08',\n vo2Max: 42,\n strength: 68,\n flexibility: 55,\n endurance: 75,\n score: 78,\n },\n {\n id: 3,\n client: 'Emily Davis',\n date: '2026-02-07',\n vo2Max: 35,\n strength: 58,\n flexibility: 80,\n endurance: 62,\n score: 74,\n },\n {\n id: 4,\n client: 'Robert Wilson',\n date: '2026-02-05',\n vo2Max: 32,\n strength: 65,\n flexibility: 45,\n endurance: 55,\n score: 68,\n },\n {\n id: 5,\n client: 'Lisa Thompson',\n date: '2026-02-03',\n vo2Max: 40,\n strength: 60,\n flexibility: 72,\n endurance: 68,\n score: 80,\n },\n];\n\nexport function FitnessAssessmentsPage() {\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Fitness Assessments</h1>\n <p className=\"text-sm text-muted-foreground\">\n Client fitness evaluations and performance benchmarks\n </p>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-4\">\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Completed</CardTitle>\n <CheckCircle className=\"h-4 w-4 text-green-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">42</div>\n <p className=\"text-xs text-muted-foreground\">Total assessments</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Pending</CardTitle>\n <Clock className=\"h-4 w-4 text-yellow-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">6</div>\n <p className=\"text-xs text-muted-foreground\">Awaiting completion</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Avg Fitness Score</CardTitle>\n <ClipboardCheck className=\"h-4 w-4 text-blue-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">78/100</div>\n <p className=\"text-xs text-muted-foreground\">Across all clients</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Improvements</CardTitle>\n <TrendingUp className=\"h-4 w-4 text-purple-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">89%</div>\n <p className=\"text-xs text-muted-foreground\">Show improvement</p>\n </CardContent>\n </Card>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>Assessment Results</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-3\">\n {assessments.map((a) => (\n <div key={a.id} className=\"p-3 rounded-lg bg-muted/50\">\n <div className=\"flex items-center justify-between mb-2\">\n <div>\n <p className=\"text-sm font-medium\">{a.client}</p>\n <p className=\"text-xs text-muted-foreground\">{a.date}</p>\n </div>\n <span\n className={`text-sm font-bold ${a.score >= 80 ? 'text-green-600' : a.score >= 70 ? 'text-blue-600' : 'text-orange-600'}`}\n >\n {a.score}/100\n </span>\n </div>\n <div className=\"grid grid-cols-4 gap-2\">\n <div className=\"text-center p-1.5 rounded bg-blue-50\">\n <p className=\"text-xs text-muted-foreground\">VO2 Max</p>\n <p className=\"text-sm font-medium\">{a.vo2Max}</p>\n </div>\n <div className=\"text-center p-1.5 rounded bg-red-50\">\n <p className=\"text-xs text-muted-foreground\">Strength</p>\n <p className=\"text-sm font-medium\">{a.strength}%</p>\n </div>\n <div className=\"text-center p-1.5 rounded bg-green-50\">\n <p className=\"text-xs text-muted-foreground\">Flexibility</p>\n <p className=\"text-sm font-medium\">{a.flexibility}%</p>\n </div>\n <div className=\"text-center p-1.5 rounded bg-purple-50\">\n <p className=\"text-xs text-muted-foreground\">Endurance</p>\n <p className=\"text-sm font-medium\">{a.endurance}%</p>\n </div>\n </div>\n </div>\n ))}\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function FitnessClientDetailsPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=FitnessClientDetailsPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FitnessClientDetailsPage.d.ts","sourceRoot":"","sources":["../../../src/mybodyshield/pages/FitnessClientDetailsPage.tsx"],"names":[],"mappings":"AAIA,wBAAgB,wBAAwB,4CAiKvC"}
@@ -0,0 +1,192 @@
1
+ import { useMyBodyShieldStore as e } from "../store/mybodyshieldStore.js";
2
+ import { Flame as t, Footprints as n, MapPin as r, Target as i, Timer as a, User as o } from "lucide-react";
3
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
4
+ import { Card as l, CardContent as u, CardHeader as d, CardTitle as f } from "@burdenoff/fe-libs/ui";
5
+ //#region src/mybodyshield/pages/FitnessClientDetailsPage.tsx
6
+ function p() {
7
+ let { patients: p, fitnessMetrics: m, healthGoals: h } = e(), g = p[0], _ = m[0];
8
+ return g ? /* @__PURE__ */ c("div", {
9
+ className: "space-y-6 p-6",
10
+ children: [
11
+ /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("h1", {
12
+ className: "text-2xl font-semibold",
13
+ children: "Client Details"
14
+ }), /* @__PURE__ */ c("p", {
15
+ className: "text-sm text-muted-foreground",
16
+ children: [
17
+ g.firstName,
18
+ " ",
19
+ g.lastName,
20
+ " — Fitness profile and metrics"
21
+ ]
22
+ })] }),
23
+ _ && /* @__PURE__ */ c("div", {
24
+ className: "grid gap-4 md:grid-cols-4",
25
+ children: [
26
+ /* @__PURE__ */ c(l, { children: [/* @__PURE__ */ c(d, {
27
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
28
+ children: [/* @__PURE__ */ s(f, {
29
+ className: "text-sm font-medium",
30
+ children: "Steps"
31
+ }), /* @__PURE__ */ s(n, { className: "h-4 w-4 text-blue-500" })]
32
+ }), /* @__PURE__ */ c(u, { children: [/* @__PURE__ */ s("div", {
33
+ className: "text-2xl font-bold",
34
+ children: _.steps.toLocaleString()
35
+ }), /* @__PURE__ */ s("p", {
36
+ className: "text-xs text-muted-foreground",
37
+ children: _.date
38
+ })] })] }),
39
+ /* @__PURE__ */ c(l, { children: [/* @__PURE__ */ c(d, {
40
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
41
+ children: [/* @__PURE__ */ s(f, {
42
+ className: "text-sm font-medium",
43
+ children: "Calories Burned"
44
+ }), /* @__PURE__ */ s(t, { className: "h-4 w-4 text-orange-500" })]
45
+ }), /* @__PURE__ */ c(u, { children: [/* @__PURE__ */ s("div", {
46
+ className: "text-2xl font-bold",
47
+ children: _.caloriesBurned
48
+ }), /* @__PURE__ */ s("p", {
49
+ className: "text-xs text-muted-foreground",
50
+ children: "kcal today"
51
+ })] })] }),
52
+ /* @__PURE__ */ c(l, { children: [/* @__PURE__ */ c(d, {
53
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
54
+ children: [/* @__PURE__ */ s(f, {
55
+ className: "text-sm font-medium",
56
+ children: "Active Minutes"
57
+ }), /* @__PURE__ */ s(a, { className: "h-4 w-4 text-green-500" })]
58
+ }), /* @__PURE__ */ c(u, { children: [/* @__PURE__ */ s("div", {
59
+ className: "text-2xl font-bold",
60
+ children: _.activeMinutes
61
+ }), /* @__PURE__ */ s("p", {
62
+ className: "text-xs text-muted-foreground",
63
+ children: "min today"
64
+ })] })] }),
65
+ /* @__PURE__ */ c(l, { children: [/* @__PURE__ */ c(d, {
66
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
67
+ children: [/* @__PURE__ */ s(f, {
68
+ className: "text-sm font-medium",
69
+ children: "Distance"
70
+ }), /* @__PURE__ */ s(r, { className: "h-4 w-4 text-purple-500" })]
71
+ }), /* @__PURE__ */ c(u, { children: [/* @__PURE__ */ c("div", {
72
+ className: "text-2xl font-bold",
73
+ children: [_.distanceKm, " km"]
74
+ }), /* @__PURE__ */ s("p", {
75
+ className: "text-xs text-muted-foreground",
76
+ children: "today"
77
+ })] })] })
78
+ ]
79
+ }),
80
+ /* @__PURE__ */ c("div", {
81
+ className: "grid gap-4 md:grid-cols-2",
82
+ children: [/* @__PURE__ */ c(l, { children: [/* @__PURE__ */ s(d, { children: /* @__PURE__ */ c(f, {
83
+ className: "flex items-center gap-2",
84
+ children: [/* @__PURE__ */ s(o, { className: "h-5 w-5" }), "Client Profile"]
85
+ }) }), /* @__PURE__ */ s(u, { children: /* @__PURE__ */ c("div", {
86
+ className: "space-y-2 text-sm",
87
+ children: [
88
+ /* @__PURE__ */ c("div", {
89
+ className: "flex justify-between",
90
+ children: [/* @__PURE__ */ s("span", {
91
+ className: "text-muted-foreground",
92
+ children: "Name"
93
+ }), /* @__PURE__ */ c("span", {
94
+ className: "font-medium",
95
+ children: [
96
+ g.firstName,
97
+ " ",
98
+ g.lastName
99
+ ]
100
+ })]
101
+ }),
102
+ /* @__PURE__ */ c("div", {
103
+ className: "flex justify-between",
104
+ children: [/* @__PURE__ */ s("span", {
105
+ className: "text-muted-foreground",
106
+ children: "Age"
107
+ }), /* @__PURE__ */ s("span", {
108
+ className: "font-medium",
109
+ children: (/* @__PURE__ */ new Date()).getFullYear() - new Date(g.dateOfBirth).getFullYear()
110
+ })]
111
+ }),
112
+ /* @__PURE__ */ c("div", {
113
+ className: "flex justify-between",
114
+ children: [/* @__PURE__ */ s("span", {
115
+ className: "text-muted-foreground",
116
+ children: "Gender"
117
+ }), /* @__PURE__ */ s("span", {
118
+ className: "font-medium",
119
+ children: g.gender
120
+ })]
121
+ }),
122
+ /* @__PURE__ */ c("div", {
123
+ className: "flex justify-between",
124
+ children: [/* @__PURE__ */ s("span", {
125
+ className: "text-muted-foreground",
126
+ children: "Conditions"
127
+ }), /* @__PURE__ */ s("span", {
128
+ className: "font-medium",
129
+ children: g.conditions.join(", ")
130
+ })]
131
+ })
132
+ ]
133
+ }) })] }), /* @__PURE__ */ c(l, { children: [/* @__PURE__ */ s(d, { children: /* @__PURE__ */ c(f, {
134
+ className: "flex items-center gap-2",
135
+ children: [/* @__PURE__ */ s(i, { className: "h-5 w-5" }), "Health Goals"]
136
+ }) }), /* @__PURE__ */ s(u, { children: /* @__PURE__ */ s("div", {
137
+ className: "space-y-3",
138
+ children: h.map((e) => {
139
+ let t = Math.min(100, Math.round(e.currentValue / e.targetValue * 100));
140
+ return /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ c("div", {
141
+ className: "flex justify-between text-sm mb-1",
142
+ children: [/* @__PURE__ */ s("span", { children: e.title }), /* @__PURE__ */ c("span", {
143
+ className: "font-medium",
144
+ children: [t, "%"]
145
+ })]
146
+ }), /* @__PURE__ */ s("div", {
147
+ className: "h-2 bg-muted rounded-full overflow-hidden",
148
+ children: /* @__PURE__ */ s("div", {
149
+ className: "h-2 bg-primary rounded-full",
150
+ style: { width: `${t}%` }
151
+ })
152
+ })] }, e.id);
153
+ })
154
+ }) })] })]
155
+ }),
156
+ /* @__PURE__ */ c(l, { children: [/* @__PURE__ */ s(d, { children: /* @__PURE__ */ s(f, { children: "Fitness Metrics History" }) }), /* @__PURE__ */ s(u, { children: /* @__PURE__ */ s("div", {
157
+ className: "space-y-3",
158
+ children: m.map((e) => /* @__PURE__ */ c("div", {
159
+ className: "flex items-center justify-between p-3 rounded-lg bg-muted/50",
160
+ children: [/* @__PURE__ */ s("span", {
161
+ className: "text-sm font-medium",
162
+ children: e.date
163
+ }), /* @__PURE__ */ c("div", {
164
+ className: "flex gap-4 text-xs",
165
+ children: [
166
+ /* @__PURE__ */ c("span", { children: [e.steps.toLocaleString(), " steps"] }),
167
+ /* @__PURE__ */ c("span", { children: [e.caloriesBurned, " kcal"] }),
168
+ /* @__PURE__ */ c("span", { children: [e.activeMinutes, " min"] }),
169
+ /* @__PURE__ */ c("span", { children: [
170
+ "HR ",
171
+ e.heartRateAvg,
172
+ "/",
173
+ e.heartRateMax
174
+ ] }),
175
+ /* @__PURE__ */ c("span", { children: [e.sleepHours, "h sleep"] })
176
+ ]
177
+ })]
178
+ }, e.id))
179
+ }) })] })
180
+ ]
181
+ }) : /* @__PURE__ */ s("div", {
182
+ className: "p-6",
183
+ children: /* @__PURE__ */ s("p", {
184
+ className: "text-muted-foreground",
185
+ children: "No client selected"
186
+ })
187
+ });
188
+ }
189
+ //#endregion
190
+ export { p as FitnessClientDetailsPage };
191
+
192
+ //# sourceMappingURL=FitnessClientDetailsPage.js.map