@burdenoff/microfe-mybodyshield 2026.525.1 → 2026.705.2

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 (964) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +20 -0
  2. package/dist/index.js +6 -4
  3. package/dist/mybodyshield/MyBodyShieldRoot.js +101 -350
  4. package/dist/mybodyshield/MyBodyShieldRoot.js.map +1 -1
  5. package/dist/mybodyshield/MyBodyShieldRoutes.js +66 -193
  6. package/dist/mybodyshield/MyBodyShieldRoutes.js.map +1 -1
  7. package/dist/mybodyshield/components/DataTable.js +75 -0
  8. package/dist/mybodyshield/components/DataTable.js.map +1 -0
  9. package/dist/mybodyshield/components/EmptyState.js +35 -0
  10. package/dist/mybodyshield/components/EmptyState.js.map +1 -0
  11. package/dist/mybodyshield/components/EvidenceUpload.js +93 -0
  12. package/dist/mybodyshield/components/EvidenceUpload.js.map +1 -0
  13. package/dist/mybodyshield/components/FileLink.js +36 -0
  14. package/dist/mybodyshield/components/FileLink.js.map +1 -0
  15. package/dist/mybodyshield/components/FilterTabs.js +27 -0
  16. package/dist/mybodyshield/components/FilterTabs.js.map +1 -0
  17. package/dist/mybodyshield/components/MetricsCard.js +64 -0
  18. package/dist/mybodyshield/components/MetricsCard.js.map +1 -0
  19. package/dist/mybodyshield/components/MiniBar.js +22 -0
  20. package/dist/mybodyshield/components/MiniBar.js.map +1 -0
  21. package/dist/mybodyshield/components/MybDiscussion.js +109 -0
  22. package/dist/mybodyshield/components/MybDiscussion.js.map +1 -0
  23. package/dist/mybodyshield/components/MybTags.js +149 -0
  24. package/dist/mybodyshield/components/MybTags.js.map +1 -0
  25. package/dist/mybodyshield/components/PageLayout.js +38 -0
  26. package/dist/mybodyshield/components/PageLayout.js.map +1 -0
  27. package/dist/mybodyshield/components/Pagination.js +50 -0
  28. package/dist/mybodyshield/components/Pagination.js.map +1 -0
  29. package/dist/mybodyshield/components/StateViews.js +49 -0
  30. package/dist/mybodyshield/components/StateViews.js.map +1 -0
  31. package/dist/mybodyshield/components/StatusBadge.js +62 -0
  32. package/dist/mybodyshield/components/StatusBadge.js.map +1 -0
  33. package/dist/mybodyshield/components/Tabs.js +31 -0
  34. package/dist/mybodyshield/components/Tabs.js.map +1 -0
  35. package/dist/mybodyshield/components/UserSearchSelect.js +148 -0
  36. package/dist/mybodyshield/components/UserSearchSelect.js.map +1 -0
  37. package/dist/mybodyshield/components/index.js +15 -0
  38. package/dist/mybodyshield/context/MyBodyShieldContext.js +85 -0
  39. package/dist/mybodyshield/context/MyBodyShieldContext.js.map +1 -0
  40. package/dist/mybodyshield/context/index.js +1 -0
  41. package/dist/mybodyshield/hooks/index.js +6 -0
  42. package/dist/mybodyshield/hooks/useMyBodyShieldApi.js +398 -0
  43. package/dist/mybodyshield/hooks/useMyBodyShieldApi.js.map +1 -0
  44. package/dist/mybodyshield/hooks/useMybComments.js +45 -0
  45. package/dist/mybodyshield/hooks/useMybComments.js.map +1 -0
  46. package/dist/mybodyshield/hooks/useMybFiles.js +81 -0
  47. package/dist/mybodyshield/hooks/useMybFiles.js.map +1 -0
  48. package/dist/mybodyshield/hooks/useMybTags.js +89 -0
  49. package/dist/mybodyshield/hooks/useMybTags.js.map +1 -0
  50. package/dist/mybodyshield/hooks/useMybUsers.js +36 -0
  51. package/dist/mybodyshield/hooks/useMybUsers.js.map +1 -0
  52. package/dist/mybodyshield/hooks/usePager.js +27 -0
  53. package/dist/mybodyshield/hooks/usePager.js.map +1 -0
  54. package/dist/mybodyshield/index.js +5 -2
  55. package/dist/mybodyshield/pages/DashboardPage.js +432 -0
  56. package/dist/mybodyshield/pages/DashboardPage.js.map +1 -0
  57. package/dist/mybodyshield/pages/_shared/visuals.js +261 -0
  58. package/dist/mybodyshield/pages/_shared/visuals.js.map +1 -0
  59. package/dist/mybodyshield/pages/coaching/CoachingPage.js +446 -0
  60. package/dist/mybodyshield/pages/coaching/CoachingPage.js.map +1 -0
  61. package/dist/mybodyshield/pages/goals/GoalsPage.js +510 -0
  62. package/dist/mybodyshield/pages/goals/GoalsPage.js.map +1 -0
  63. package/dist/mybodyshield/pages/nutrition/NutritionPage.js +1012 -0
  64. package/dist/mybodyshield/pages/nutrition/NutritionPage.js.map +1 -0
  65. package/dist/mybodyshield/pages/programs/ProgramDetailPage.js +932 -0
  66. package/dist/mybodyshield/pages/programs/ProgramDetailPage.js.map +1 -0
  67. package/dist/mybodyshield/pages/programs/ProgramsPage.js +450 -0
  68. package/dist/mybodyshield/pages/programs/ProgramsPage.js.map +1 -0
  69. package/dist/mybodyshield/pages/progress/ProgressPage.js +484 -0
  70. package/dist/mybodyshield/pages/progress/ProgressPage.js.map +1 -0
  71. package/dist/mybodyshield/pages/recovery/RecoveryPage.js +484 -0
  72. package/dist/mybodyshield/pages/recovery/RecoveryPage.js.map +1 -0
  73. package/dist/mybodyshield/pages/train/SessionDetailPage.js +579 -0
  74. package/dist/mybodyshield/pages/train/SessionDetailPage.js.map +1 -0
  75. package/dist/mybodyshield/pages/train/SessionsPage.js +294 -0
  76. package/dist/mybodyshield/pages/train/SessionsPage.js.map +1 -0
  77. package/dist/mybodyshield/utils/cn.js +10 -0
  78. package/dist/mybodyshield/utils/cn.js.map +1 -0
  79. package/dist/mybodyshield/utils/formatters.js +76 -0
  80. package/dist/mybodyshield/utils/formatters.js.map +1 -0
  81. package/dist/mybodyshield/utils/navigation.js +2 -1
  82. package/dist/mybodyshield/utils/navigation.js.map +1 -1
  83. package/dist/node_modules/clsx/dist/clsx.js +18 -0
  84. package/dist/node_modules/clsx/dist/clsx.js.map +1 -0
  85. package/dist/node_modules/d3-array/src/ascending.js +8 -0
  86. package/dist/node_modules/d3-array/src/ascending.js.map +1 -0
  87. package/dist/node_modules/d3-array/src/bisect.js +10 -0
  88. package/dist/node_modules/d3-array/src/bisect.js.map +1 -0
  89. package/dist/node_modules/d3-array/src/bisector.js +43 -0
  90. package/dist/node_modules/d3-array/src/bisector.js.map +1 -0
  91. package/dist/node_modules/d3-array/src/descending.js +8 -0
  92. package/dist/node_modules/d3-array/src/descending.js.map +1 -0
  93. package/dist/node_modules/d3-array/src/max.js +14 -0
  94. package/dist/node_modules/d3-array/src/max.js.map +1 -0
  95. package/dist/node_modules/d3-array/src/min.js +14 -0
  96. package/dist/node_modules/d3-array/src/min.js.map +1 -0
  97. package/dist/node_modules/d3-array/src/number.js +15 -0
  98. package/dist/node_modules/d3-array/src/number.js.map +1 -0
  99. package/dist/node_modules/d3-array/src/quantile.js +25 -0
  100. package/dist/node_modules/d3-array/src/quantile.js.map +1 -0
  101. package/dist/node_modules/d3-array/src/quickselect.js +26 -0
  102. package/dist/node_modules/d3-array/src/quickselect.js.map +1 -0
  103. package/dist/node_modules/d3-array/src/range.js +10 -0
  104. package/dist/node_modules/d3-array/src/range.js.map +1 -0
  105. package/dist/node_modules/d3-array/src/sort.js +17 -0
  106. package/dist/node_modules/d3-array/src/sort.js.map +1 -0
  107. package/dist/node_modules/d3-array/src/ticks.js +34 -0
  108. package/dist/node_modules/d3-array/src/ticks.js.map +1 -0
  109. package/dist/node_modules/d3-color/src/color.js +291 -0
  110. package/dist/node_modules/d3-color/src/color.js.map +1 -0
  111. package/dist/node_modules/d3-color/src/define.js +13 -0
  112. package/dist/node_modules/d3-color/src/define.js.map +1 -0
  113. package/dist/node_modules/d3-format/src/defaultLocale.js +15 -0
  114. package/dist/node_modules/d3-format/src/defaultLocale.js.map +1 -0
  115. package/dist/node_modules/d3-format/src/exponent.js +9 -0
  116. package/dist/node_modules/d3-format/src/exponent.js.map +1 -0
  117. package/dist/node_modules/d3-format/src/formatDecimal.js +13 -0
  118. package/dist/node_modules/d3-format/src/formatDecimal.js.map +1 -0
  119. package/dist/node_modules/d3-format/src/formatGroup.js +11 -0
  120. package/dist/node_modules/d3-format/src/formatGroup.js.map +1 -0
  121. package/dist/node_modules/d3-format/src/formatNumerals.js +12 -0
  122. package/dist/node_modules/d3-format/src/formatNumerals.js.map +1 -0
  123. package/dist/node_modules/d3-format/src/formatPrefixAuto.js +13 -0
  124. package/dist/node_modules/d3-format/src/formatPrefixAuto.js.map +1 -0
  125. package/dist/node_modules/d3-format/src/formatRounded.js +12 -0
  126. package/dist/node_modules/d3-format/src/formatRounded.js.map +1 -0
  127. package/dist/node_modules/d3-format/src/formatSpecifier.js +29 -0
  128. package/dist/node_modules/d3-format/src/formatSpecifier.js.map +1 -0
  129. package/dist/node_modules/d3-format/src/formatTrim.js +20 -0
  130. package/dist/node_modules/d3-format/src/formatTrim.js.map +1 -0
  131. package/dist/node_modules/d3-format/src/formatTypes.js +23 -0
  132. package/dist/node_modules/d3-format/src/formatTypes.js.map +1 -0
  133. package/dist/node_modules/d3-format/src/identity.js +8 -0
  134. package/dist/node_modules/d3-format/src/identity.js.map +1 -0
  135. package/dist/node_modules/d3-format/src/locale.js +86 -0
  136. package/dist/node_modules/d3-format/src/locale.js.map +1 -0
  137. package/dist/node_modules/d3-format/src/precisionFixed.js +9 -0
  138. package/dist/node_modules/d3-format/src/precisionFixed.js.map +1 -0
  139. package/dist/node_modules/d3-format/src/precisionPrefix.js +9 -0
  140. package/dist/node_modules/d3-format/src/precisionPrefix.js.map +1 -0
  141. package/dist/node_modules/d3-format/src/precisionRound.js +9 -0
  142. package/dist/node_modules/d3-format/src/precisionRound.js.map +1 -0
  143. package/dist/node_modules/d3-interpolate/src/array.js +15 -0
  144. package/dist/node_modules/d3-interpolate/src/array.js.map +1 -0
  145. package/dist/node_modules/d3-interpolate/src/basis.js +16 -0
  146. package/dist/node_modules/d3-interpolate/src/basis.js.map +1 -0
  147. package/dist/node_modules/d3-interpolate/src/basisClosed.js +13 -0
  148. package/dist/node_modules/d3-interpolate/src/basisClosed.js.map +1 -0
  149. package/dist/node_modules/d3-interpolate/src/color.js +25 -0
  150. package/dist/node_modules/d3-interpolate/src/color.js.map +1 -0
  151. package/dist/node_modules/d3-interpolate/src/constant.js +6 -0
  152. package/dist/node_modules/d3-interpolate/src/constant.js.map +1 -0
  153. package/dist/node_modules/d3-interpolate/src/date.js +11 -0
  154. package/dist/node_modules/d3-interpolate/src/date.js.map +1 -0
  155. package/dist/node_modules/d3-interpolate/src/number.js +10 -0
  156. package/dist/node_modules/d3-interpolate/src/number.js.map +1 -0
  157. package/dist/node_modules/d3-interpolate/src/numberArray.js +16 -0
  158. package/dist/node_modules/d3-interpolate/src/numberArray.js.map +1 -0
  159. package/dist/node_modules/d3-interpolate/src/object.js +14 -0
  160. package/dist/node_modules/d3-interpolate/src/object.js.map +1 -0
  161. package/dist/node_modules/d3-interpolate/src/piecewise.js +14 -0
  162. package/dist/node_modules/d3-interpolate/src/piecewise.js.map +1 -0
  163. package/dist/node_modules/d3-interpolate/src/rgb.js +19 -0
  164. package/dist/node_modules/d3-interpolate/src/rgb.js.map +1 -0
  165. package/dist/node_modules/d3-interpolate/src/round.js +10 -0
  166. package/dist/node_modules/d3-interpolate/src/round.js.map +1 -0
  167. package/dist/node_modules/d3-interpolate/src/string.js +28 -0
  168. package/dist/node_modules/d3-interpolate/src/string.js.map +1 -0
  169. package/dist/node_modules/d3-interpolate/src/value.js +18 -0
  170. package/dist/node_modules/d3-interpolate/src/value.js.map +1 -0
  171. package/dist/node_modules/d3-path/src/path.js +65 -0
  172. package/dist/node_modules/d3-path/src/path.js.map +1 -0
  173. package/dist/node_modules/d3-scale/src/band.js +52 -0
  174. package/dist/node_modules/d3-scale/src/band.js.map +1 -0
  175. package/dist/node_modules/d3-scale/src/constant.js +10 -0
  176. package/dist/node_modules/d3-scale/src/constant.js.map +1 -0
  177. package/dist/node_modules/d3-scale/src/continuous.js +73 -0
  178. package/dist/node_modules/d3-scale/src/continuous.js.map +1 -0
  179. package/dist/node_modules/d3-scale/src/diverging.js +82 -0
  180. package/dist/node_modules/d3-scale/src/diverging.js.map +1 -0
  181. package/dist/node_modules/d3-scale/src/identity.js +20 -0
  182. package/dist/node_modules/d3-scale/src/identity.js.map +1 -0
  183. package/dist/node_modules/d3-scale/src/init.js +29 -0
  184. package/dist/node_modules/d3-scale/src/init.js.map +1 -0
  185. package/dist/node_modules/d3-scale/src/linear.js +36 -0
  186. package/dist/node_modules/d3-scale/src/linear.js.map +1 -0
  187. package/dist/node_modules/d3-scale/src/log.js +77 -0
  188. package/dist/node_modules/d3-scale/src/log.js.map +1 -0
  189. package/dist/node_modules/d3-scale/src/nice.js +10 -0
  190. package/dist/node_modules/d3-scale/src/nice.js.map +1 -0
  191. package/dist/node_modules/d3-scale/src/number.js +8 -0
  192. package/dist/node_modules/d3-scale/src/number.js.map +1 -0
  193. package/dist/node_modules/d3-scale/src/ordinal.js +31 -0
  194. package/dist/node_modules/d3-scale/src/ordinal.js.map +1 -0
  195. package/dist/node_modules/d3-scale/src/pow.js +37 -0
  196. package/dist/node_modules/d3-scale/src/pow.js.map +1 -0
  197. package/dist/node_modules/d3-scale/src/quantile.js +37 -0
  198. package/dist/node_modules/d3-scale/src/quantile.js.map +1 -0
  199. package/dist/node_modules/d3-scale/src/quantize.js +33 -0
  200. package/dist/node_modules/d3-scale/src/quantize.js.map +1 -0
  201. package/dist/node_modules/d3-scale/src/radial.js +39 -0
  202. package/dist/node_modules/d3-scale/src/radial.js.map +1 -0
  203. package/dist/node_modules/d3-scale/src/sequential.js +67 -0
  204. package/dist/node_modules/d3-scale/src/sequential.js.map +1 -0
  205. package/dist/node_modules/d3-scale/src/sequentialQuantile.js +30 -0
  206. package/dist/node_modules/d3-scale/src/sequentialQuantile.js.map +1 -0
  207. package/dist/node_modules/d3-scale/src/symlog.js +30 -0
  208. package/dist/node_modules/d3-scale/src/symlog.js.map +1 -0
  209. package/dist/node_modules/d3-scale/src/threshold.js +25 -0
  210. package/dist/node_modules/d3-scale/src/threshold.js.map +1 -0
  211. package/dist/node_modules/d3-scale/src/tickFormat.js +31 -0
  212. package/dist/node_modules/d3-scale/src/tickFormat.js.map +1 -0
  213. package/dist/node_modules/d3-scale/src/time.js +47 -0
  214. package/dist/node_modules/d3-scale/src/time.js.map +1 -0
  215. package/dist/node_modules/d3-scale/src/utcTime.js +19 -0
  216. package/dist/node_modules/d3-scale/src/utcTime.js.map +1 -0
  217. package/dist/node_modules/d3-shape/src/area.js +55 -0
  218. package/dist/node_modules/d3-shape/src/area.js.map +1 -0
  219. package/dist/node_modules/d3-shape/src/array.js +8 -0
  220. package/dist/node_modules/d3-shape/src/array.js.map +1 -0
  221. package/dist/node_modules/d3-shape/src/constant.js +10 -0
  222. package/dist/node_modules/d3-shape/src/constant.js.map +1 -0
  223. package/dist/node_modules/d3-shape/src/curve/basis.js +49 -0
  224. package/dist/node_modules/d3-shape/src/curve/basis.js.map +1 -0
  225. package/dist/node_modules/d3-shape/src/curve/basisClosed.js +50 -0
  226. package/dist/node_modules/d3-shape/src/curve/basisClosed.js.map +1 -0
  227. package/dist/node_modules/d3-shape/src/curve/basisOpen.js +46 -0
  228. package/dist/node_modules/d3-shape/src/curve/basisOpen.js.map +1 -0
  229. package/dist/node_modules/d3-shape/src/curve/bump.js +40 -0
  230. package/dist/node_modules/d3-shape/src/curve/bump.js.map +1 -0
  231. package/dist/node_modules/d3-shape/src/curve/linear.js +36 -0
  232. package/dist/node_modules/d3-shape/src/curve/linear.js.map +1 -0
  233. package/dist/node_modules/d3-shape/src/curve/linearClosed.js +25 -0
  234. package/dist/node_modules/d3-shape/src/curve/linearClosed.js.map +1 -0
  235. package/dist/node_modules/d3-shape/src/curve/monotone.js +94 -0
  236. package/dist/node_modules/d3-shape/src/curve/monotone.js.map +1 -0
  237. package/dist/node_modules/d3-shape/src/curve/natural.js +39 -0
  238. package/dist/node_modules/d3-shape/src/curve/natural.js.map +1 -0
  239. package/dist/node_modules/d3-shape/src/curve/step.js +47 -0
  240. package/dist/node_modules/d3-shape/src/curve/step.js.map +1 -0
  241. package/dist/node_modules/d3-shape/src/line.js +30 -0
  242. package/dist/node_modules/d3-shape/src/line.js.map +1 -0
  243. package/dist/node_modules/d3-shape/src/math.js +8 -0
  244. package/dist/node_modules/d3-shape/src/math.js.map +1 -0
  245. package/dist/node_modules/d3-shape/src/noop.js +6 -0
  246. package/dist/node_modules/d3-shape/src/noop.js.map +1 -0
  247. package/dist/node_modules/d3-shape/src/offset/expand.js +15 -0
  248. package/dist/node_modules/d3-shape/src/offset/expand.js.map +1 -0
  249. package/dist/node_modules/d3-shape/src/offset/none.js +8 -0
  250. package/dist/node_modules/d3-shape/src/offset/none.js.map +1 -0
  251. package/dist/node_modules/d3-shape/src/offset/silhouette.js +15 -0
  252. package/dist/node_modules/d3-shape/src/offset/silhouette.js.map +1 -0
  253. package/dist/node_modules/d3-shape/src/offset/wiggle.js +21 -0
  254. package/dist/node_modules/d3-shape/src/offset/wiggle.js.map +1 -0
  255. package/dist/node_modules/d3-shape/src/order/none.js +9 -0
  256. package/dist/node_modules/d3-shape/src/order/none.js.map +1 -0
  257. package/dist/node_modules/d3-shape/src/path.js +19 -0
  258. package/dist/node_modules/d3-shape/src/path.js.map +1 -0
  259. package/dist/node_modules/d3-shape/src/point.js +11 -0
  260. package/dist/node_modules/d3-shape/src/point.js.map +1 -0
  261. package/dist/node_modules/d3-shape/src/stack.js +34 -0
  262. package/dist/node_modules/d3-shape/src/stack.js.map +1 -0
  263. package/dist/node_modules/d3-shape/src/symbol/circle.js +10 -0
  264. package/dist/node_modules/d3-shape/src/symbol/circle.js.map +1 -0
  265. package/dist/node_modules/d3-shape/src/symbol/cross.js +10 -0
  266. package/dist/node_modules/d3-shape/src/symbol/cross.js.map +1 -0
  267. package/dist/node_modules/d3-shape/src/symbol/diamond.js +10 -0
  268. package/dist/node_modules/d3-shape/src/symbol/diamond.js.map +1 -0
  269. package/dist/node_modules/d3-shape/src/symbol/square.js +10 -0
  270. package/dist/node_modules/d3-shape/src/symbol/square.js.map +1 -0
  271. package/dist/node_modules/d3-shape/src/symbol/star.js +15 -0
  272. package/dist/node_modules/d3-shape/src/symbol/star.js.map +1 -0
  273. package/dist/node_modules/d3-shape/src/symbol/triangle.js +10 -0
  274. package/dist/node_modules/d3-shape/src/symbol/triangle.js.map +1 -0
  275. package/dist/node_modules/d3-shape/src/symbol/wye.js +10 -0
  276. package/dist/node_modules/d3-shape/src/symbol/wye.js.map +1 -0
  277. package/dist/node_modules/d3-shape/src/symbol.js +23 -0
  278. package/dist/node_modules/d3-shape/src/symbol.js.map +1 -0
  279. package/dist/node_modules/d3-time/src/day.js +21 -0
  280. package/dist/node_modules/d3-time/src/day.js.map +1 -0
  281. package/dist/node_modules/d3-time/src/duration.js +6 -0
  282. package/dist/node_modules/d3-time/src/duration.js.map +1 -0
  283. package/dist/node_modules/d3-time/src/hour.js +19 -0
  284. package/dist/node_modules/d3-time/src/hour.js.map +1 -0
  285. package/dist/node_modules/d3-time/src/interval.js +28 -0
  286. package/dist/node_modules/d3-time/src/interval.js.map +1 -0
  287. package/dist/node_modules/d3-time/src/millisecond.js +14 -0
  288. package/dist/node_modules/d3-time/src/millisecond.js.map +1 -0
  289. package/dist/node_modules/d3-time/src/minute.js +19 -0
  290. package/dist/node_modules/d3-time/src/minute.js.map +1 -0
  291. package/dist/node_modules/d3-time/src/month.js +18 -0
  292. package/dist/node_modules/d3-time/src/month.js.map +1 -0
  293. package/dist/node_modules/d3-time/src/second.js +13 -0
  294. package/dist/node_modules/d3-time/src/second.js.map +1 -0
  295. package/dist/node_modules/d3-time/src/ticks.js +125 -0
  296. package/dist/node_modules/d3-time/src/ticks.js.map +1 -0
  297. package/dist/node_modules/d3-time/src/week.js +25 -0
  298. package/dist/node_modules/d3-time/src/week.js.map +1 -0
  299. package/dist/node_modules/d3-time/src/year.js +26 -0
  300. package/dist/node_modules/d3-time/src/year.js.map +1 -0
  301. package/dist/node_modules/d3-time-format/src/defaultLocale.js +62 -0
  302. package/dist/node_modules/d3-time-format/src/defaultLocale.js.map +1 -0
  303. package/dist/node_modules/d3-time-format/src/locale.js +490 -0
  304. package/dist/node_modules/d3-time-format/src/locale.js.map +1 -0
  305. package/dist/node_modules/decimal.js-light/decimal.js +378 -0
  306. package/dist/node_modules/decimal.js-light/decimal.js.map +1 -0
  307. package/dist/node_modules/eventemitter3/index.js +95 -0
  308. package/dist/node_modules/eventemitter3/index.js.map +1 -0
  309. package/dist/node_modules/fast-equals/dist/es/index.js +267 -0
  310. package/dist/node_modules/fast-equals/dist/es/index.js.map +1 -0
  311. package/dist/node_modules/internmap/src/index.js +40 -0
  312. package/dist/node_modules/internmap/src/index.js.map +1 -0
  313. package/dist/node_modules/lodash/_DataView.js +12 -0
  314. package/dist/node_modules/lodash/_DataView.js.map +1 -0
  315. package/dist/node_modules/lodash/_Hash.js +23 -0
  316. package/dist/node_modules/lodash/_Hash.js.map +1 -0
  317. package/dist/node_modules/lodash/_ListCache.js +23 -0
  318. package/dist/node_modules/lodash/_ListCache.js.map +1 -0
  319. package/dist/node_modules/lodash/_Map.js +12 -0
  320. package/dist/node_modules/lodash/_Map.js.map +1 -0
  321. package/dist/node_modules/lodash/_MapCache.js +23 -0
  322. package/dist/node_modules/lodash/_MapCache.js.map +1 -0
  323. package/dist/node_modules/lodash/_Promise.js +12 -0
  324. package/dist/node_modules/lodash/_Promise.js.map +1 -0
  325. package/dist/node_modules/lodash/_Set.js +12 -0
  326. package/dist/node_modules/lodash/_Set.js.map +1 -0
  327. package/dist/node_modules/lodash/_SetCache.js +18 -0
  328. package/dist/node_modules/lodash/_SetCache.js.map +1 -0
  329. package/dist/node_modules/lodash/_Stack.js +20 -0
  330. package/dist/node_modules/lodash/_Stack.js.map +1 -0
  331. package/dist/node_modules/lodash/_Symbol.js +11 -0
  332. package/dist/node_modules/lodash/_Symbol.js.map +1 -0
  333. package/dist/node_modules/lodash/_Uint8Array.js +11 -0
  334. package/dist/node_modules/lodash/_Uint8Array.js.map +1 -0
  335. package/dist/node_modules/lodash/_WeakMap.js +12 -0
  336. package/dist/node_modules/lodash/_WeakMap.js.map +1 -0
  337. package/dist/node_modules/lodash/_apply.js +19 -0
  338. package/dist/node_modules/lodash/_apply.js.map +1 -0
  339. package/dist/node_modules/lodash/_arrayEvery.js +14 -0
  340. package/dist/node_modules/lodash/_arrayEvery.js.map +1 -0
  341. package/dist/node_modules/lodash/_arrayFilter.js +17 -0
  342. package/dist/node_modules/lodash/_arrayFilter.js.map +1 -0
  343. package/dist/node_modules/lodash/_arrayIncludes.js +15 -0
  344. package/dist/node_modules/lodash/_arrayIncludes.js.map +1 -0
  345. package/dist/node_modules/lodash/_arrayIncludesWith.js +14 -0
  346. package/dist/node_modules/lodash/_arrayIncludesWith.js.map +1 -0
  347. package/dist/node_modules/lodash/_arrayLikeKeys.js +22 -0
  348. package/dist/node_modules/lodash/_arrayLikeKeys.js.map +1 -0
  349. package/dist/node_modules/lodash/_arrayMap.js +14 -0
  350. package/dist/node_modules/lodash/_arrayMap.js.map +1 -0
  351. package/dist/node_modules/lodash/_arrayPush.js +14 -0
  352. package/dist/node_modules/lodash/_arrayPush.js.map +1 -0
  353. package/dist/node_modules/lodash/_arraySome.js +14 -0
  354. package/dist/node_modules/lodash/_arraySome.js.map +1 -0
  355. package/dist/node_modules/lodash/_asciiToArray.js +13 -0
  356. package/dist/node_modules/lodash/_asciiToArray.js.map +1 -0
  357. package/dist/node_modules/lodash/_assocIndexOf.js +16 -0
  358. package/dist/node_modules/lodash/_assocIndexOf.js.map +1 -0
  359. package/dist/node_modules/lodash/_baseAssignValue.js +20 -0
  360. package/dist/node_modules/lodash/_baseAssignValue.js.map +1 -0
  361. package/dist/node_modules/lodash/_baseEach.js +13 -0
  362. package/dist/node_modules/lodash/_baseEach.js.map +1 -0
  363. package/dist/node_modules/lodash/_baseEvery.js +18 -0
  364. package/dist/node_modules/lodash/_baseEvery.js.map +1 -0
  365. package/dist/node_modules/lodash/_baseExtremum.js +19 -0
  366. package/dist/node_modules/lodash/_baseExtremum.js.map +1 -0
  367. package/dist/node_modules/lodash/_baseFindIndex.js +14 -0
  368. package/dist/node_modules/lodash/_baseFindIndex.js.map +1 -0
  369. package/dist/node_modules/lodash/_baseFlatten.js +21 -0
  370. package/dist/node_modules/lodash/_baseFlatten.js.map +1 -0
  371. package/dist/node_modules/lodash/_baseFor.js +11 -0
  372. package/dist/node_modules/lodash/_baseFor.js.map +1 -0
  373. package/dist/node_modules/lodash/_baseForOwn.js +16 -0
  374. package/dist/node_modules/lodash/_baseForOwn.js.map +1 -0
  375. package/dist/node_modules/lodash/_baseGet.js +18 -0
  376. package/dist/node_modules/lodash/_baseGet.js.map +1 -0
  377. package/dist/node_modules/lodash/_baseGetAllKeys.js +17 -0
  378. package/dist/node_modules/lodash/_baseGetAllKeys.js.map +1 -0
  379. package/dist/node_modules/lodash/_baseGetTag.js +17 -0
  380. package/dist/node_modules/lodash/_baseGetTag.js.map +1 -0
  381. package/dist/node_modules/lodash/_baseGt.js +13 -0
  382. package/dist/node_modules/lodash/_baseGt.js.map +1 -0
  383. package/dist/node_modules/lodash/_baseHasIn.js +13 -0
  384. package/dist/node_modules/lodash/_baseHasIn.js.map +1 -0
  385. package/dist/node_modules/lodash/_baseIndexOf.js +17 -0
  386. package/dist/node_modules/lodash/_baseIndexOf.js.map +1 -0
  387. package/dist/node_modules/lodash/_baseIsArguments.js +16 -0
  388. package/dist/node_modules/lodash/_baseIsArguments.js.map +1 -0
  389. package/dist/node_modules/lodash/_baseIsEqual.js +16 -0
  390. package/dist/node_modules/lodash/_baseIsEqual.js.map +1 -0
  391. package/dist/node_modules/lodash/_baseIsEqualDeep.js +37 -0
  392. package/dist/node_modules/lodash/_baseIsEqualDeep.js.map +1 -0
  393. package/dist/node_modules/lodash/_baseIsMatch.js +33 -0
  394. package/dist/node_modules/lodash/_baseIsMatch.js.map +1 -0
  395. package/dist/node_modules/lodash/_baseIsNaN.js +13 -0
  396. package/dist/node_modules/lodash/_baseIsNaN.js.map +1 -0
  397. package/dist/node_modules/lodash/_baseIsNative.js +18 -0
  398. package/dist/node_modules/lodash/_baseIsNative.js.map +1 -0
  399. package/dist/node_modules/lodash/_baseIsTypedArray.js +18 -0
  400. package/dist/node_modules/lodash/_baseIsTypedArray.js.map +1 -0
  401. package/dist/node_modules/lodash/_baseIteratee.js +19 -0
  402. package/dist/node_modules/lodash/_baseIteratee.js.map +1 -0
  403. package/dist/node_modules/lodash/_baseKeys.js +19 -0
  404. package/dist/node_modules/lodash/_baseKeys.js.map +1 -0
  405. package/dist/node_modules/lodash/_baseLt.js +13 -0
  406. package/dist/node_modules/lodash/_baseLt.js.map +1 -0
  407. package/dist/node_modules/lodash/_baseMap.js +19 -0
  408. package/dist/node_modules/lodash/_baseMap.js.map +1 -0
  409. package/dist/node_modules/lodash/_baseMatches.js +20 -0
  410. package/dist/node_modules/lodash/_baseMatches.js.map +1 -0
  411. package/dist/node_modules/lodash/_baseMatchesProperty.js +24 -0
  412. package/dist/node_modules/lodash/_baseMatchesProperty.js.map +1 -0
  413. package/dist/node_modules/lodash/_baseOrderBy.js +39 -0
  414. package/dist/node_modules/lodash/_baseOrderBy.js.map +1 -0
  415. package/dist/node_modules/lodash/_baseProperty.js +15 -0
  416. package/dist/node_modules/lodash/_baseProperty.js.map +1 -0
  417. package/dist/node_modules/lodash/_basePropertyDeep.js +17 -0
  418. package/dist/node_modules/lodash/_basePropertyDeep.js.map +1 -0
  419. package/dist/node_modules/lodash/_baseRange.js +15 -0
  420. package/dist/node_modules/lodash/_baseRange.js.map +1 -0
  421. package/dist/node_modules/lodash/_baseRest.js +17 -0
  422. package/dist/node_modules/lodash/_baseRest.js.map +1 -0
  423. package/dist/node_modules/lodash/_baseSetToString.js +21 -0
  424. package/dist/node_modules/lodash/_baseSetToString.js.map +1 -0
  425. package/dist/node_modules/lodash/_baseSlice.js +16 -0
  426. package/dist/node_modules/lodash/_baseSlice.js.map +1 -0
  427. package/dist/node_modules/lodash/_baseSome.js +18 -0
  428. package/dist/node_modules/lodash/_baseSome.js.map +1 -0
  429. package/dist/node_modules/lodash/_baseSortBy.js +15 -0
  430. package/dist/node_modules/lodash/_baseSortBy.js.map +1 -0
  431. package/dist/node_modules/lodash/_baseTimes.js +14 -0
  432. package/dist/node_modules/lodash/_baseTimes.js.map +1 -0
  433. package/dist/node_modules/lodash/_baseToString.js +22 -0
  434. package/dist/node_modules/lodash/_baseToString.js.map +1 -0
  435. package/dist/node_modules/lodash/_baseTrim.js +15 -0
  436. package/dist/node_modules/lodash/_baseTrim.js.map +1 -0
  437. package/dist/node_modules/lodash/_baseUnary.js +15 -0
  438. package/dist/node_modules/lodash/_baseUnary.js.map +1 -0
  439. package/dist/node_modules/lodash/_baseUniq.js +34 -0
  440. package/dist/node_modules/lodash/_baseUniq.js.map +1 -0
  441. package/dist/node_modules/lodash/_cacheHas.js +13 -0
  442. package/dist/node_modules/lodash/_cacheHas.js.map +1 -0
  443. package/dist/node_modules/lodash/_castPath.js +18 -0
  444. package/dist/node_modules/lodash/_castPath.js.map +1 -0
  445. package/dist/node_modules/lodash/_castSlice.js +16 -0
  446. package/dist/node_modules/lodash/_castSlice.js.map +1 -0
  447. package/dist/node_modules/lodash/_compareAscending.js +20 -0
  448. package/dist/node_modules/lodash/_compareAscending.js.map +1 -0
  449. package/dist/node_modules/lodash/_compareMultiple.js +19 -0
  450. package/dist/node_modules/lodash/_compareMultiple.js.map +1 -0
  451. package/dist/node_modules/lodash/_coreJsData.js +11 -0
  452. package/dist/node_modules/lodash/_coreJsData.js.map +1 -0
  453. package/dist/node_modules/lodash/_createBaseEach.js +20 -0
  454. package/dist/node_modules/lodash/_createBaseEach.js.map +1 -0
  455. package/dist/node_modules/lodash/_createBaseFor.js +19 -0
  456. package/dist/node_modules/lodash/_createBaseFor.js.map +1 -0
  457. package/dist/node_modules/lodash/_createCaseFirst.js +22 -0
  458. package/dist/node_modules/lodash/_createCaseFirst.js.map +1 -0
  459. package/dist/node_modules/lodash/_createFind.js +27 -0
  460. package/dist/node_modules/lodash/_createFind.js.map +1 -0
  461. package/dist/node_modules/lodash/_createRange.js +19 -0
  462. package/dist/node_modules/lodash/_createRange.js.map +1 -0
  463. package/dist/node_modules/lodash/_createSet.js +16 -0
  464. package/dist/node_modules/lodash/_createSet.js.map +1 -0
  465. package/dist/node_modules/lodash/_defineProperty.js +17 -0
  466. package/dist/node_modules/lodash/_defineProperty.js.map +1 -0
  467. package/dist/node_modules/lodash/_equalArrays.js +42 -0
  468. package/dist/node_modules/lodash/_equalArrays.js.map +1 -0
  469. package/dist/node_modules/lodash/_equalByTag.js +42 -0
  470. package/dist/node_modules/lodash/_equalByTag.js.map +1 -0
  471. package/dist/node_modules/lodash/_equalObjects.js +39 -0
  472. package/dist/node_modules/lodash/_equalObjects.js.map +1 -0
  473. package/dist/node_modules/lodash/_freeGlobal.js +10 -0
  474. package/dist/node_modules/lodash/_freeGlobal.js.map +1 -0
  475. package/dist/node_modules/lodash/_getAllKeys.js +17 -0
  476. package/dist/node_modules/lodash/_getAllKeys.js.map +1 -0
  477. package/dist/node_modules/lodash/_getMapData.js +16 -0
  478. package/dist/node_modules/lodash/_getMapData.js.map +1 -0
  479. package/dist/node_modules/lodash/_getMatchData.js +24 -0
  480. package/dist/node_modules/lodash/_getMatchData.js.map +1 -0
  481. package/dist/node_modules/lodash/_getNative.js +17 -0
  482. package/dist/node_modules/lodash/_getNative.js.map +1 -0
  483. package/dist/node_modules/lodash/_getPrototype.js +11 -0
  484. package/dist/node_modules/lodash/_getPrototype.js.map +1 -0
  485. package/dist/node_modules/lodash/_getRawTag.js +21 -0
  486. package/dist/node_modules/lodash/_getRawTag.js.map +1 -0
  487. package/dist/node_modules/lodash/_getSymbols.js +17 -0
  488. package/dist/node_modules/lodash/_getSymbols.js.map +1 -0
  489. package/dist/node_modules/lodash/_getTag.js +28 -0
  490. package/dist/node_modules/lodash/_getTag.js.map +1 -0
  491. package/dist/node_modules/lodash/_getValue.js +13 -0
  492. package/dist/node_modules/lodash/_getValue.js.map +1 -0
  493. package/dist/node_modules/lodash/_hasPath.js +26 -0
  494. package/dist/node_modules/lodash/_hasPath.js.map +1 -0
  495. package/dist/node_modules/lodash/_hasUnicode.js +14 -0
  496. package/dist/node_modules/lodash/_hasUnicode.js.map +1 -0
  497. package/dist/node_modules/lodash/_hashClear.js +15 -0
  498. package/dist/node_modules/lodash/_hashClear.js.map +1 -0
  499. package/dist/node_modules/lodash/_hashDelete.js +14 -0
  500. package/dist/node_modules/lodash/_hashDelete.js.map +1 -0
  501. package/dist/node_modules/lodash/_hashGet.js +20 -0
  502. package/dist/node_modules/lodash/_hashGet.js.map +1 -0
  503. package/dist/node_modules/lodash/_hashHas.js +16 -0
  504. package/dist/node_modules/lodash/_hashHas.js.map +1 -0
  505. package/dist/node_modules/lodash/_hashSet.js +16 -0
  506. package/dist/node_modules/lodash/_hashSet.js.map +1 -0
  507. package/dist/node_modules/lodash/_isFlattenable.js +17 -0
  508. package/dist/node_modules/lodash/_isFlattenable.js.map +1 -0
  509. package/dist/node_modules/lodash/_isIndex.js +15 -0
  510. package/dist/node_modules/lodash/_isIndex.js.map +1 -0
  511. package/dist/node_modules/lodash/_isIterateeCall.js +20 -0
  512. package/dist/node_modules/lodash/_isIterateeCall.js.map +1 -0
  513. package/dist/node_modules/lodash/_isKey.js +18 -0
  514. package/dist/node_modules/lodash/_isKey.js.map +1 -0
  515. package/dist/node_modules/lodash/_isKeyable.js +14 -0
  516. package/dist/node_modules/lodash/_isKeyable.js.map +1 -0
  517. package/dist/node_modules/lodash/_isMasked.js +18 -0
  518. package/dist/node_modules/lodash/_isMasked.js.map +1 -0
  519. package/dist/node_modules/lodash/_isPrototype.js +15 -0
  520. package/dist/node_modules/lodash/_isPrototype.js.map +1 -0
  521. package/dist/node_modules/lodash/_isStrictComparable.js +15 -0
  522. package/dist/node_modules/lodash/_isStrictComparable.js.map +1 -0
  523. package/dist/node_modules/lodash/_listCacheClear.js +13 -0
  524. package/dist/node_modules/lodash/_listCacheClear.js.map +1 -0
  525. package/dist/node_modules/lodash/_listCacheDelete.js +16 -0
  526. package/dist/node_modules/lodash/_listCacheDelete.js.map +1 -0
  527. package/dist/node_modules/lodash/_listCacheGet.js +16 -0
  528. package/dist/node_modules/lodash/_listCacheGet.js.map +1 -0
  529. package/dist/node_modules/lodash/_listCacheHas.js +15 -0
  530. package/dist/node_modules/lodash/_listCacheHas.js.map +1 -0
  531. package/dist/node_modules/lodash/_listCacheSet.js +16 -0
  532. package/dist/node_modules/lodash/_listCacheSet.js.map +1 -0
  533. package/dist/node_modules/lodash/_mapCacheClear.js +21 -0
  534. package/dist/node_modules/lodash/_mapCacheClear.js.map +1 -0
  535. package/dist/node_modules/lodash/_mapCacheDelete.js +16 -0
  536. package/dist/node_modules/lodash/_mapCacheDelete.js.map +1 -0
  537. package/dist/node_modules/lodash/_mapCacheGet.js +15 -0
  538. package/dist/node_modules/lodash/_mapCacheGet.js.map +1 -0
  539. package/dist/node_modules/lodash/_mapCacheHas.js +15 -0
  540. package/dist/node_modules/lodash/_mapCacheHas.js.map +1 -0
  541. package/dist/node_modules/lodash/_mapCacheSet.js +16 -0
  542. package/dist/node_modules/lodash/_mapCacheSet.js.map +1 -0
  543. package/dist/node_modules/lodash/_mapToArray.js +16 -0
  544. package/dist/node_modules/lodash/_mapToArray.js.map +1 -0
  545. package/dist/node_modules/lodash/_matchesStrictComparable.js +15 -0
  546. package/dist/node_modules/lodash/_matchesStrictComparable.js.map +1 -0
  547. package/dist/node_modules/lodash/_memoizeCapped.js +18 -0
  548. package/dist/node_modules/lodash/_memoizeCapped.js.map +1 -0
  549. package/dist/node_modules/lodash/_nativeCreate.js +11 -0
  550. package/dist/node_modules/lodash/_nativeCreate.js.map +1 -0
  551. package/dist/node_modules/lodash/_nativeKeys.js +11 -0
  552. package/dist/node_modules/lodash/_nativeKeys.js.map +1 -0
  553. package/dist/node_modules/lodash/_nodeUtil.js +16 -0
  554. package/dist/node_modules/lodash/_nodeUtil.js.map +1 -0
  555. package/dist/node_modules/lodash/_objectToString.js +14 -0
  556. package/dist/node_modules/lodash/_objectToString.js.map +1 -0
  557. package/dist/node_modules/lodash/_overArg.js +15 -0
  558. package/dist/node_modules/lodash/_overArg.js.map +1 -0
  559. package/dist/node_modules/lodash/_overRest.js +20 -0
  560. package/dist/node_modules/lodash/_overRest.js.map +1 -0
  561. package/dist/node_modules/lodash/_root.js +12 -0
  562. package/dist/node_modules/lodash/_root.js.map +1 -0
  563. package/dist/node_modules/lodash/_setCacheAdd.js +14 -0
  564. package/dist/node_modules/lodash/_setCacheAdd.js.map +1 -0
  565. package/dist/node_modules/lodash/_setCacheHas.js +13 -0
  566. package/dist/node_modules/lodash/_setCacheHas.js.map +1 -0
  567. package/dist/node_modules/lodash/_setToArray.js +16 -0
  568. package/dist/node_modules/lodash/_setToArray.js.map +1 -0
  569. package/dist/node_modules/lodash/_setToString.js +13 -0
  570. package/dist/node_modules/lodash/_setToString.js.map +1 -0
  571. package/dist/node_modules/lodash/_shortOut.js +21 -0
  572. package/dist/node_modules/lodash/_shortOut.js.map +1 -0
  573. package/dist/node_modules/lodash/_stackClear.js +15 -0
  574. package/dist/node_modules/lodash/_stackClear.js.map +1 -0
  575. package/dist/node_modules/lodash/_stackDelete.js +14 -0
  576. package/dist/node_modules/lodash/_stackDelete.js.map +1 -0
  577. package/dist/node_modules/lodash/_stackGet.js +13 -0
  578. package/dist/node_modules/lodash/_stackGet.js.map +1 -0
  579. package/dist/node_modules/lodash/_stackHas.js +13 -0
  580. package/dist/node_modules/lodash/_stackHas.js.map +1 -0
  581. package/dist/node_modules/lodash/_stackSet.js +23 -0
  582. package/dist/node_modules/lodash/_stackSet.js.map +1 -0
  583. package/dist/node_modules/lodash/_strictIndexOf.js +14 -0
  584. package/dist/node_modules/lodash/_strictIndexOf.js.map +1 -0
  585. package/dist/node_modules/lodash/_stringToArray.js +17 -0
  586. package/dist/node_modules/lodash/_stringToArray.js.map +1 -0
  587. package/dist/node_modules/lodash/_stringToPath.js +17 -0
  588. package/dist/node_modules/lodash/_stringToPath.js.map +1 -0
  589. package/dist/node_modules/lodash/_toKey.js +17 -0
  590. package/dist/node_modules/lodash/_toKey.js.map +1 -0
  591. package/dist/node_modules/lodash/_toSource.js +22 -0
  592. package/dist/node_modules/lodash/_toSource.js.map +1 -0
  593. package/dist/node_modules/lodash/_trimmedEndIndex.js +15 -0
  594. package/dist/node_modules/lodash/_trimmedEndIndex.js.map +1 -0
  595. package/dist/node_modules/lodash/_unicodeToArray.js +24 -0
  596. package/dist/node_modules/lodash/_unicodeToArray.js.map +1 -0
  597. package/dist/node_modules/lodash/constant.js +15 -0
  598. package/dist/node_modules/lodash/constant.js.map +1 -0
  599. package/dist/node_modules/lodash/debounce.js +57 -0
  600. package/dist/node_modules/lodash/debounce.js.map +1 -0
  601. package/dist/node_modules/lodash/eq.js +13 -0
  602. package/dist/node_modules/lodash/eq.js.map +1 -0
  603. package/dist/node_modules/lodash/every.js +20 -0
  604. package/dist/node_modules/lodash/every.js.map +1 -0
  605. package/dist/node_modules/lodash/find.js +12 -0
  606. package/dist/node_modules/lodash/find.js.map +1 -0
  607. package/dist/node_modules/lodash/findIndex.js +20 -0
  608. package/dist/node_modules/lodash/findIndex.js.map +1 -0
  609. package/dist/node_modules/lodash/flatMap.js +16 -0
  610. package/dist/node_modules/lodash/flatMap.js.map +1 -0
  611. package/dist/node_modules/lodash/get.js +16 -0
  612. package/dist/node_modules/lodash/get.js.map +1 -0
  613. package/dist/node_modules/lodash/hasIn.js +16 -0
  614. package/dist/node_modules/lodash/hasIn.js.map +1 -0
  615. package/dist/node_modules/lodash/identity.js +13 -0
  616. package/dist/node_modules/lodash/identity.js.map +1 -0
  617. package/dist/node_modules/lodash/isArguments.js +17 -0
  618. package/dist/node_modules/lodash/isArguments.js.map +1 -0
  619. package/dist/node_modules/lodash/isArray.js +10 -0
  620. package/dist/node_modules/lodash/isArray.js.map +1 -0
  621. package/dist/node_modules/lodash/isArrayLike.js +16 -0
  622. package/dist/node_modules/lodash/isArrayLike.js.map +1 -0
  623. package/dist/node_modules/lodash/isBoolean.js +16 -0
  624. package/dist/node_modules/lodash/isBoolean.js.map +1 -0
  625. package/dist/node_modules/lodash/isBuffer.js +13 -0
  626. package/dist/node_modules/lodash/isBuffer.js.map +1 -0
  627. package/dist/node_modules/lodash/isEqual.js +15 -0
  628. package/dist/node_modules/lodash/isEqual.js.map +1 -0
  629. package/dist/node_modules/lodash/isFunction.js +18 -0
  630. package/dist/node_modules/lodash/isFunction.js.map +1 -0
  631. package/dist/node_modules/lodash/isLength.js +14 -0
  632. package/dist/node_modules/lodash/isLength.js.map +1 -0
  633. package/dist/node_modules/lodash/isNaN.js +15 -0
  634. package/dist/node_modules/lodash/isNaN.js.map +1 -0
  635. package/dist/node_modules/lodash/isNil.js +13 -0
  636. package/dist/node_modules/lodash/isNil.js.map +1 -0
  637. package/dist/node_modules/lodash/isNumber.js +16 -0
  638. package/dist/node_modules/lodash/isNumber.js.map +1 -0
  639. package/dist/node_modules/lodash/isObject.js +14 -0
  640. package/dist/node_modules/lodash/isObject.js.map +1 -0
  641. package/dist/node_modules/lodash/isObjectLike.js +13 -0
  642. package/dist/node_modules/lodash/isObjectLike.js.map +1 -0
  643. package/dist/node_modules/lodash/isPlainObject.js +21 -0
  644. package/dist/node_modules/lodash/isPlainObject.js.map +1 -0
  645. package/dist/node_modules/lodash/isString.js +17 -0
  646. package/dist/node_modules/lodash/isString.js.map +1 -0
  647. package/dist/node_modules/lodash/isSymbol.js +16 -0
  648. package/dist/node_modules/lodash/isSymbol.js.map +1 -0
  649. package/dist/node_modules/lodash/isTypedArray.js +14 -0
  650. package/dist/node_modules/lodash/isTypedArray.js.map +1 -0
  651. package/dist/node_modules/lodash/keys.js +17 -0
  652. package/dist/node_modules/lodash/keys.js.map +1 -0
  653. package/dist/node_modules/lodash/last.js +14 -0
  654. package/dist/node_modules/lodash/last.js.map +1 -0
  655. package/dist/node_modules/lodash/map.js +18 -0
  656. package/dist/node_modules/lodash/map.js.map +1 -0
  657. package/dist/node_modules/lodash/mapValues.js +20 -0
  658. package/dist/node_modules/lodash/mapValues.js.map +1 -0
  659. package/dist/node_modules/lodash/max.js +17 -0
  660. package/dist/node_modules/lodash/max.js.map +1 -0
  661. package/dist/node_modules/lodash/memoize.js +22 -0
  662. package/dist/node_modules/lodash/memoize.js.map +1 -0
  663. package/dist/node_modules/lodash/min.js +17 -0
  664. package/dist/node_modules/lodash/min.js.map +1 -0
  665. package/dist/node_modules/lodash/noop.js +11 -0
  666. package/dist/node_modules/lodash/noop.js.map +1 -0
  667. package/dist/node_modules/lodash/now.js +14 -0
  668. package/dist/node_modules/lodash/now.js.map +1 -0
  669. package/dist/node_modules/lodash/property.js +18 -0
  670. package/dist/node_modules/lodash/property.js.map +1 -0
  671. package/dist/node_modules/lodash/range.js +11 -0
  672. package/dist/node_modules/lodash/range.js.map +1 -0
  673. package/dist/node_modules/lodash/some.js +20 -0
  674. package/dist/node_modules/lodash/some.js.map +1 -0
  675. package/dist/node_modules/lodash/sortBy.js +19 -0
  676. package/dist/node_modules/lodash/sortBy.js.map +1 -0
  677. package/dist/node_modules/lodash/stubArray.js +13 -0
  678. package/dist/node_modules/lodash/stubArray.js.map +1 -0
  679. package/dist/node_modules/lodash/stubFalse.js +13 -0
  680. package/dist/node_modules/lodash/stubFalse.js.map +1 -0
  681. package/dist/node_modules/lodash/throttle.js +22 -0
  682. package/dist/node_modules/lodash/throttle.js.map +1 -0
  683. package/dist/node_modules/lodash/toFinite.js +15 -0
  684. package/dist/node_modules/lodash/toFinite.js.map +1 -0
  685. package/dist/node_modules/lodash/toInteger.js +16 -0
  686. package/dist/node_modules/lodash/toInteger.js.map +1 -0
  687. package/dist/node_modules/lodash/toNumber.js +26 -0
  688. package/dist/node_modules/lodash/toNumber.js.map +1 -0
  689. package/dist/node_modules/lodash/toString.js +15 -0
  690. package/dist/node_modules/lodash/toString.js.map +1 -0
  691. package/dist/node_modules/lodash/uniqBy.js +16 -0
  692. package/dist/node_modules/lodash/uniqBy.js.map +1 -0
  693. package/dist/node_modules/lodash/upperFirst.js +11 -0
  694. package/dist/node_modules/lodash/upperFirst.js.map +1 -0
  695. package/dist/node_modules/object-assign/index.js +41 -0
  696. package/dist/node_modules/object-assign/index.js.map +1 -0
  697. package/dist/node_modules/prop-types/checkPropTypes.js +46 -0
  698. package/dist/node_modules/prop-types/checkPropTypes.js.map +1 -0
  699. package/dist/node_modules/prop-types/factoryWithThrowingShims.js +49 -0
  700. package/dist/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
  701. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +272 -0
  702. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
  703. package/dist/node_modules/prop-types/index.js +16 -0
  704. package/dist/node_modules/prop-types/index.js.map +1 -0
  705. package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js +10 -0
  706. package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
  707. package/dist/node_modules/prop-types/lib/has.js +10 -0
  708. package/dist/node_modules/prop-types/lib/has.js.map +1 -0
  709. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +84 -0
  710. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  711. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +64 -0
  712. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  713. package/dist/node_modules/prop-types/node_modules/react-is/index.js +12 -0
  714. package/dist/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
  715. package/dist/node_modules/react-is/cjs/react-is.development.js +87 -0
  716. package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  717. package/dist/node_modules/react-is/cjs/react-is.production.min.js +65 -0
  718. package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  719. package/dist/node_modules/react-is/index.js +12 -0
  720. package/dist/node_modules/react-is/index.js.map +1 -0
  721. package/dist/node_modules/react-smooth/es6/Animate.js +374 -0
  722. package/dist/node_modules/react-smooth/es6/Animate.js.map +1 -0
  723. package/dist/node_modules/react-smooth/es6/AnimateManager.js +73 -0
  724. package/dist/node_modules/react-smooth/es6/AnimateManager.js.map +1 -0
  725. package/dist/node_modules/react-smooth/es6/configUpdate.js +173 -0
  726. package/dist/node_modules/react-smooth/es6/configUpdate.js.map +1 -0
  727. package/dist/node_modules/react-smooth/es6/easing.js +152 -0
  728. package/dist/node_modules/react-smooth/es6/easing.js.map +1 -0
  729. package/dist/node_modules/react-smooth/es6/index.js +9 -0
  730. package/dist/node_modules/react-smooth/es6/index.js.map +1 -0
  731. package/dist/node_modules/react-smooth/es6/setRafTimeout.js +14 -0
  732. package/dist/node_modules/react-smooth/es6/setRafTimeout.js.map +1 -0
  733. package/dist/node_modules/react-smooth/es6/util.js +92 -0
  734. package/dist/node_modules/react-smooth/es6/util.js.map +1 -0
  735. package/dist/node_modules/recharts/es6/cartesian/Bar.js +387 -0
  736. package/dist/node_modules/recharts/es6/cartesian/Bar.js.map +1 -0
  737. package/dist/node_modules/recharts/es6/cartesian/Brush.js +499 -0
  738. package/dist/node_modules/recharts/es6/cartesian/Brush.js.map +1 -0
  739. package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js +338 -0
  740. package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js.map +1 -0
  741. package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js +305 -0
  742. package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js.map +1 -0
  743. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js +243 -0
  744. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js.map +1 -0
  745. package/dist/node_modules/recharts/es6/cartesian/Line.js +473 -0
  746. package/dist/node_modules/recharts/es6/cartesian/Line.js.map +1 -0
  747. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js +173 -0
  748. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js.map +1 -0
  749. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js +178 -0
  750. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js.map +1 -0
  751. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js +254 -0
  752. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js.map +1 -0
  753. package/dist/node_modules/recharts/es6/cartesian/XAxis.js +144 -0
  754. package/dist/node_modules/recharts/es6/cartesian/XAxis.js.map +1 -0
  755. package/dist/node_modules/recharts/es6/cartesian/YAxis.js +143 -0
  756. package/dist/node_modules/recharts/es6/cartesian/YAxis.js.map +1 -0
  757. package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js +18 -0
  758. package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js.map +1 -0
  759. package/dist/node_modules/recharts/es6/cartesian/getTicks.js +121 -0
  760. package/dist/node_modules/recharts/es6/cartesian/getTicks.js.map +1 -0
  761. package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js +101 -0
  762. package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js.map +1 -0
  763. package/dist/node_modules/recharts/es6/chart/LineChart.js +22 -0
  764. package/dist/node_modules/recharts/es6/chart/LineChart.js.map +1 -0
  765. package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js +1245 -0
  766. package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js.map +1 -0
  767. package/dist/node_modules/recharts/es6/component/Cell.js +9 -0
  768. package/dist/node_modules/recharts/es6/component/Cell.js.map +1 -0
  769. package/dist/node_modules/recharts/es6/component/Cursor.js +93 -0
  770. package/dist/node_modules/recharts/es6/component/Cursor.js.map +1 -0
  771. package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js +237 -0
  772. package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js.map +1 -0
  773. package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js +171 -0
  774. package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js.map +1 -0
  775. package/dist/node_modules/recharts/es6/component/Label.js +353 -0
  776. package/dist/node_modules/recharts/es6/component/Label.js.map +1 -0
  777. package/dist/node_modules/recharts/es6/component/LabelList.js +166 -0
  778. package/dist/node_modules/recharts/es6/component/LabelList.js.map +1 -0
  779. package/dist/node_modules/recharts/es6/component/Legend.js +234 -0
  780. package/dist/node_modules/recharts/es6/component/Legend.js.map +1 -0
  781. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js +187 -0
  782. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js.map +1 -0
  783. package/dist/node_modules/recharts/es6/component/Text.js +225 -0
  784. package/dist/node_modules/recharts/es6/component/Text.js.map +1 -0
  785. package/dist/node_modules/recharts/es6/component/Tooltip.js +182 -0
  786. package/dist/node_modules/recharts/es6/component/Tooltip.js.map +1 -0
  787. package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js +198 -0
  788. package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js.map +1 -0
  789. package/dist/node_modules/recharts/es6/container/Layer.js +40 -0
  790. package/dist/node_modules/recharts/es6/container/Layer.js.map +1 -0
  791. package/dist/node_modules/recharts/es6/container/Surface.js +60 -0
  792. package/dist/node_modules/recharts/es6/container/Surface.js.map +1 -0
  793. package/dist/node_modules/recharts/es6/context/chartLayoutContext.js +57 -0
  794. package/dist/node_modules/recharts/es6/context/chartLayoutContext.js.map +1 -0
  795. package/dist/node_modules/recharts/es6/shape/Cross.js +112 -0
  796. package/dist/node_modules/recharts/es6/shape/Cross.js.map +1 -0
  797. package/dist/node_modules/recharts/es6/shape/Curve.js +136 -0
  798. package/dist/node_modules/recharts/es6/shape/Curve.js.map +1 -0
  799. package/dist/node_modules/recharts/es6/shape/Dot.js +27 -0
  800. package/dist/node_modules/recharts/es6/shape/Dot.js.map +1 -0
  801. package/dist/node_modules/recharts/es6/shape/Rectangle.js +205 -0
  802. package/dist/node_modules/recharts/es6/shape/Rectangle.js.map +1 -0
  803. package/dist/node_modules/recharts/es6/shape/Sector.js +192 -0
  804. package/dist/node_modules/recharts/es6/shape/Sector.js.map +1 -0
  805. package/dist/node_modules/recharts/es6/shape/Symbols.js +143 -0
  806. package/dist/node_modules/recharts/es6/shape/Symbols.js.map +1 -0
  807. package/dist/node_modules/recharts/es6/shape/Trapezoid.js +175 -0
  808. package/dist/node_modules/recharts/es6/shape/Trapezoid.js.map +1 -0
  809. package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js +181 -0
  810. package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js.map +1 -0
  811. package/dist/node_modules/recharts/es6/util/BarUtils.js +112 -0
  812. package/dist/node_modules/recharts/es6/util/BarUtils.js.map +1 -0
  813. package/dist/node_modules/recharts/es6/util/CartesianUtils.js +234 -0
  814. package/dist/node_modules/recharts/es6/util/CartesianUtils.js.map +1 -0
  815. package/dist/node_modules/recharts/es6/util/ChartUtils.js +562 -0
  816. package/dist/node_modules/recharts/es6/util/ChartUtils.js.map +1 -0
  817. package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js +70 -0
  818. package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js.map +1 -0
  819. package/dist/node_modules/recharts/es6/util/DOMUtils.js +108 -0
  820. package/dist/node_modules/recharts/es6/util/DOMUtils.js.map +1 -0
  821. package/dist/node_modules/recharts/es6/util/DataUtils.js +57 -0
  822. package/dist/node_modules/recharts/es6/util/DataUtils.js.map +1 -0
  823. package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js +58 -0
  824. package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js.map +1 -0
  825. package/dist/node_modules/recharts/es6/util/Events.js +7 -0
  826. package/dist/node_modules/recharts/es6/util/Events.js.map +1 -0
  827. package/dist/node_modules/recharts/es6/util/Global.js +21 -0
  828. package/dist/node_modules/recharts/es6/util/Global.js.map +1 -0
  829. package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js +9 -0
  830. package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js.map +1 -0
  831. package/dist/node_modules/recharts/es6/util/LogUtils.js +15 -0
  832. package/dist/node_modules/recharts/es6/util/LogUtils.js.map +1 -0
  833. package/dist/node_modules/recharts/es6/util/PolarUtils.js +116 -0
  834. package/dist/node_modules/recharts/es6/util/PolarUtils.js.map +1 -0
  835. package/dist/node_modules/recharts/es6/util/ReactUtils.js +137 -0
  836. package/dist/node_modules/recharts/es6/util/ReactUtils.js.map +1 -0
  837. package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js +181 -0
  838. package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js.map +1 -0
  839. package/dist/node_modules/recharts/es6/util/ShallowEqual.js +10 -0
  840. package/dist/node_modules/recharts/es6/util/ShallowEqual.js.map +1 -0
  841. package/dist/node_modules/recharts/es6/util/TickUtils.js +31 -0
  842. package/dist/node_modules/recharts/es6/util/TickUtils.js.map +1 -0
  843. package/dist/node_modules/recharts/es6/util/calculateViewBox.js +25 -0
  844. package/dist/node_modules/recharts/es6/util/calculateViewBox.js.map +1 -0
  845. package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js +23 -0
  846. package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js.map +1 -0
  847. package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js +16 -0
  848. package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js.map +1 -0
  849. package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js +17 -0
  850. package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js.map +1 -0
  851. package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js +12 -0
  852. package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js.map +1 -0
  853. package/dist/node_modules/recharts/es6/util/getLegendProps.js +88 -0
  854. package/dist/node_modules/recharts/es6/util/getLegendProps.js.map +1 -0
  855. package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js +13 -0
  856. package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js.map +1 -0
  857. package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js +12 -0
  858. package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js.map +1 -0
  859. package/dist/node_modules/recharts/es6/util/tooltip/translate.js +87 -0
  860. package/dist/node_modules/recharts/es6/util/tooltip/translate.js.map +1 -0
  861. package/dist/node_modules/recharts/es6/util/types.js +43 -0
  862. package/dist/node_modules/recharts/es6/util/types.js.map +1 -0
  863. package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js +132 -0
  864. package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js.map +1 -0
  865. package/dist/node_modules/recharts-scale/es6/index.js +1 -0
  866. package/dist/node_modules/recharts-scale/es6/util/arithmetic.js +32 -0
  867. package/dist/node_modules/recharts-scale/es6/util/arithmetic.js.map +1 -0
  868. package/dist/node_modules/recharts-scale/es6/util/utils.js +79 -0
  869. package/dist/node_modules/recharts-scale/es6/util/utils.js.map +1 -0
  870. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +1716 -0
  871. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  872. package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js +13 -0
  873. package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js.map +1 -0
  874. package/dist/node_modules/victory-vendor/es/d3-scale.js +53 -0
  875. package/dist/node_modules/victory-vendor/es/d3-scale.js.map +1 -0
  876. package/package.json +3 -3
  877. package/dist/mybodyshield/pages/AdminAiinsightsPage.js +0 -161
  878. package/dist/mybodyshield/pages/AdminAiinsightsPage.js.map +0 -1
  879. package/dist/mybodyshield/pages/AdminAnalyticsPage.js +0 -193
  880. package/dist/mybodyshield/pages/AdminAnalyticsPage.js.map +0 -1
  881. package/dist/mybodyshield/pages/AdminComplianceReportsPage.js +0 -214
  882. package/dist/mybodyshield/pages/AdminComplianceReportsPage.js.map +0 -1
  883. package/dist/mybodyshield/pages/AdminDashboardPage.js +0 -186
  884. package/dist/mybodyshield/pages/AdminDashboardPage.js.map +0 -1
  885. package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js +0 -252
  886. package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js.map +0 -1
  887. package/dist/mybodyshield/pages/AdminSystemSettingsPage.js +0 -159
  888. package/dist/mybodyshield/pages/AdminSystemSettingsPage.js.map +0 -1
  889. package/dist/mybodyshield/pages/AdminUserManagementPage.js +0 -208
  890. package/dist/mybodyshield/pages/AdminUserManagementPage.js.map +0 -1
  891. package/dist/mybodyshield/pages/FitnessAssessmentsPage.js +0 -194
  892. package/dist/mybodyshield/pages/FitnessAssessmentsPage.js.map +0 -1
  893. package/dist/mybodyshield/pages/FitnessClientDetailsPage.js +0 -192
  894. package/dist/mybodyshield/pages/FitnessClientDetailsPage.js.map +0 -1
  895. package/dist/mybodyshield/pages/FitnessClientManagementPage.js +0 -128
  896. package/dist/mybodyshield/pages/FitnessClientManagementPage.js.map +0 -1
  897. package/dist/mybodyshield/pages/FitnessDashboardPage.js +0 -156
  898. package/dist/mybodyshield/pages/FitnessDashboardPage.js.map +0 -1
  899. package/dist/mybodyshield/pages/FitnessReportsPage.js +0 -138
  900. package/dist/mybodyshield/pages/FitnessReportsPage.js.map +0 -1
  901. package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js +0 -176
  902. package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js.map +0 -1
  903. package/dist/mybodyshield/pages/PatientAppointmentsPage.js +0 -132
  904. package/dist/mybodyshield/pages/PatientAppointmentsPage.js.map +0 -1
  905. package/dist/mybodyshield/pages/PatientDashboardPage.js +0 -190
  906. package/dist/mybodyshield/pages/PatientDashboardPage.js.map +0 -1
  907. package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js +0 -137
  908. package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js.map +0 -1
  909. package/dist/mybodyshield/pages/PatientHealthGoalsPage.js +0 -131
  910. package/dist/mybodyshield/pages/PatientHealthGoalsPage.js.map +0 -1
  911. package/dist/mybodyshield/pages/PatientHealthOverviewPage.js +0 -273
  912. package/dist/mybodyshield/pages/PatientHealthOverviewPage.js.map +0 -1
  913. package/dist/mybodyshield/pages/PatientLabResultsPage.js +0 -133
  914. package/dist/mybodyshield/pages/PatientLabResultsPage.js.map +0 -1
  915. package/dist/mybodyshield/pages/PatientMedicationsPage.js +0 -158
  916. package/dist/mybodyshield/pages/PatientMedicationsPage.js.map +0 -1
  917. package/dist/mybodyshield/pages/PatientMentalHealthPage.js +0 -152
  918. package/dist/mybodyshield/pages/PatientMentalHealthPage.js.map +0 -1
  919. package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js +0 -141
  920. package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js.map +0 -1
  921. package/dist/mybodyshield/pages/PatientVitalSignsPage.js +0 -160
  922. package/dist/mybodyshield/pages/PatientVitalSignsPage.js.map +0 -1
  923. package/dist/mybodyshield/pages/ProviderCalendarPage.js +0 -127
  924. package/dist/mybodyshield/pages/ProviderCalendarPage.js.map +0 -1
  925. package/dist/mybodyshield/pages/ProviderCarePlansPage.js +0 -153
  926. package/dist/mybodyshield/pages/ProviderCarePlansPage.js.map +0 -1
  927. package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js +0 -174
  928. package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js.map +0 -1
  929. package/dist/mybodyshield/pages/ProviderDashboardPage.js +0 -154
  930. package/dist/mybodyshield/pages/ProviderDashboardPage.js.map +0 -1
  931. package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js +0 -295
  932. package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js.map +0 -1
  933. package/dist/mybodyshield/pages/ProviderPatientManagementPage.js +0 -133
  934. package/dist/mybodyshield/pages/ProviderPatientManagementPage.js.map +0 -1
  935. package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js +0 -138
  936. package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js.map +0 -1
  937. package/dist/mybodyshield/pages/ProviderReportsPage.js +0 -149
  938. package/dist/mybodyshield/pages/ProviderReportsPage.js.map +0 -1
  939. package/dist/mybodyshield/pages/SharedAppointmentsPage.js +0 -129
  940. package/dist/mybodyshield/pages/SharedAppointmentsPage.js.map +0 -1
  941. package/dist/mybodyshield/pages/SharedCommunityPage.js +0 -152
  942. package/dist/mybodyshield/pages/SharedCommunityPage.js.map +0 -1
  943. package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js +0 -165
  944. package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js.map +0 -1
  945. package/dist/mybodyshield/pages/SharedEmergencyPage.js +0 -183
  946. package/dist/mybodyshield/pages/SharedEmergencyPage.js.map +0 -1
  947. package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js +0 -159
  948. package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js.map +0 -1
  949. package/dist/mybodyshield/pages/SharedMarketplacePage.js +0 -193
  950. package/dist/mybodyshield/pages/SharedMarketplacePage.js.map +0 -1
  951. package/dist/mybodyshield/pages/SharedMessagesPage.js +0 -156
  952. package/dist/mybodyshield/pages/SharedMessagesPage.js.map +0 -1
  953. package/dist/mybodyshield/pages/WellnessAssessmentsPage.js +0 -147
  954. package/dist/mybodyshield/pages/WellnessAssessmentsPage.js.map +0 -1
  955. package/dist/mybodyshield/pages/WellnessClientsPage.js +0 -182
  956. package/dist/mybodyshield/pages/WellnessClientsPage.js.map +0 -1
  957. package/dist/mybodyshield/pages/WellnessDashboardPage.js +0 -136
  958. package/dist/mybodyshield/pages/WellnessDashboardPage.js.map +0 -1
  959. package/dist/mybodyshield/pages/WellnessProgramsPage.js +0 -140
  960. package/dist/mybodyshield/pages/WellnessProgramsPage.js.map +0 -1
  961. package/dist/mybodyshield/providers/MyBodyShieldProvider.js +0 -27
  962. package/dist/mybodyshield/providers/MyBodyShieldProvider.js.map +0 -1
  963. package/dist/mybodyshield/store/mybodyshieldStore.js +0 -710
  964. package/dist/mybodyshield/store/mybodyshieldStore.js.map +0 -1
@@ -0,0 +1,27 @@
1
+ import { cn as e } from "../utils/cn.js";
2
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
3
+ //#region src/mybodyshield/components/FilterTabs.tsx
4
+ function r({ options: r, value: i, onChange: a, className: o }) {
5
+ return /* @__PURE__ */ t("div", {
6
+ role: "tablist",
7
+ className: e("inline-flex flex-wrap items-center gap-1 rounded-xl border border-border-seam bg-bg-surface p-1", o),
8
+ children: r.map((r) => {
9
+ let o = r.value === i;
10
+ return /* @__PURE__ */ n("button", {
11
+ type: "button",
12
+ role: "tab",
13
+ "aria-selected": o,
14
+ onClick: () => a(r.value),
15
+ className: e("rounded-lg px-3 py-1.5 text-sm font-medium transition-colors", o ? "bg-action-primary-bg text-action-primary-text" : "text-text-secondary hover:bg-bg-sunken hover:text-text-primary"),
16
+ children: [r.label, typeof r.count == "number" && /* @__PURE__ */ t("span", {
17
+ className: e("ml-1.5 rounded-full px-1.5 py-0.5 text-xs tabular-nums", o ? "bg-black/10 dark:bg-white/15" : "bg-bg-sunken"),
18
+ children: r.count
19
+ })]
20
+ }, r.value);
21
+ })
22
+ });
23
+ }
24
+ //#endregion
25
+ export { r as FilterTabs };
26
+
27
+ //# sourceMappingURL=FilterTabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterTabs.js","names":[],"sources":["../../../src/mybodyshield/components/FilterTabs.tsx"],"sourcesContent":["/**\n * FilterTabs — a segmented status/enum filter control.\n * @module mybodyshield/components\n */\n\nimport { cn } from '../utils/cn';\n\nexport interface FilterOption<V extends string> {\n value: V;\n label: string;\n count?: number;\n}\n\ninterface FilterTabsProps<V extends string> {\n options: FilterOption<V>[];\n value: V;\n onChange: (value: V) => void;\n className?: string;\n}\n\nexport function FilterTabs<V extends string>({\n options,\n value,\n onChange,\n className,\n}: FilterTabsProps<V>) {\n return (\n <div\n role=\"tablist\"\n className={cn(\n 'inline-flex flex-wrap items-center gap-1 rounded-xl border border-border-seam bg-bg-surface p-1',\n className\n )}\n >\n {options.map((opt) => {\n const active = opt.value === value;\n return (\n <button\n key={opt.value}\n type=\"button\"\n role=\"tab\"\n aria-selected={active}\n onClick={() => onChange(opt.value)}\n className={cn(\n 'rounded-lg px-3 py-1.5 text-sm font-medium transition-colors',\n active\n ? 'bg-action-primary-bg text-action-primary-text'\n : 'text-text-secondary hover:bg-bg-sunken hover:text-text-primary'\n )}\n >\n {opt.label}\n {typeof opt.count === 'number' && (\n <span\n className={cn(\n 'ml-1.5 rounded-full px-1.5 py-0.5 text-xs tabular-nums',\n active ? 'bg-black/10 dark:bg-white/15' : 'bg-bg-sunken'\n )}\n >\n {opt.count}\n </span>\n )}\n </button>\n );\n })}\n </div>\n );\n}\n"],"mappings":";;;AAoBA,SAAgB,EAA6B,EAC3C,YACA,UACA,aACA,gBACqB;AACrB,QACE,kBAAC,OAAD;EACE,MAAK;EACL,WAAW,EACT,mGACA,EACD;YAEA,EAAQ,KAAK,MAAQ;GACpB,IAAM,IAAS,EAAI,UAAU;AAC7B,UACE,kBAAC,UAAD;IAEE,MAAK;IACL,MAAK;IACL,iBAAe;IACf,eAAe,EAAS,EAAI,MAAM;IAClC,WAAW,EACT,gEACA,IACI,kDACA,iEACL;cAXH,CAaG,EAAI,OACJ,OAAO,EAAI,SAAU,YACpB,kBAAC,QAAD;KACE,WAAW,EACT,0DACA,IAAS,iCAAiC,eAC3C;eAEA,EAAI;KACA,CAAA,CAEF;MAvBF,EAAI,MAuBF;IAEX;EACE,CAAA"}
@@ -0,0 +1,64 @@
1
+ import { cn as e } from "../utils/cn.js";
2
+ import { Minus as t, TrendingDown as n, TrendingUp as r } from "lucide-react";
3
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
4
+ import { GlassCard as o } from "@burdenoff/fe-libs/ui";
5
+ //#region src/mybodyshield/components/MetricsCard.tsx
6
+ var s = {
7
+ up: {
8
+ icon: r,
9
+ color: "text-status-success-text"
10
+ },
11
+ down: {
12
+ icon: n,
13
+ color: "text-status-error-text"
14
+ },
15
+ neutral: {
16
+ icon: t,
17
+ color: "text-text-secondary"
18
+ }
19
+ }, c = {
20
+ success: "text-status-success-text",
21
+ warning: "text-status-warning-text",
22
+ error: "text-status-error-text"
23
+ }, l = {
24
+ success: "shadow-[inset_0_1px_0_0_var(--color-status-success-text)]",
25
+ warning: "shadow-[inset_0_1px_0_0_var(--color-status-warning-text)]",
26
+ error: "shadow-[inset_0_1px_0_0_var(--color-status-error-text)]"
27
+ }, u = ({ icon: t, value: n, label: r, trend: u, trendValue: d, className: f, featured: p = !1, accent: m, pill: h, footer: g }) => {
28
+ let _ = u ? s[u] : null, v = _?.icon;
29
+ return /* @__PURE__ */ a(o, {
30
+ treatment: p ? "glass" : "metric",
31
+ glow: p,
32
+ className: e("p-6", m && l[m], f),
33
+ children: [/* @__PURE__ */ a("div", {
34
+ className: "flex items-center justify-between",
35
+ children: [/* @__PURE__ */ i("div", {
36
+ className: e("text-text-secondary", m && c[m]),
37
+ children: t
38
+ }), h ?? (u && _ && v ? /* @__PURE__ */ a("div", {
39
+ className: e("flex items-center gap-1 text-xs font-medium", _.color),
40
+ children: [/* @__PURE__ */ i(v, { className: "h-3.5 w-3.5" }), d && /* @__PURE__ */ i("span", { children: d })]
41
+ }) : null)]
42
+ }), /* @__PURE__ */ a("div", {
43
+ className: "mt-3",
44
+ children: [
45
+ /* @__PURE__ */ i("p", {
46
+ className: "text-2xl font-bold text-text-primary tabular-nums",
47
+ children: n
48
+ }),
49
+ /* @__PURE__ */ i("p", {
50
+ className: "mt-1 text-sm text-text-secondary",
51
+ children: r
52
+ }),
53
+ g && /* @__PURE__ */ i("div", {
54
+ className: "mt-3",
55
+ children: g
56
+ })
57
+ ]
58
+ })]
59
+ });
60
+ };
61
+ //#endregion
62
+ export { u as MetricsCard };
63
+
64
+ //# sourceMappingURL=MetricsCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricsCard.js","names":[],"sources":["../../../src/mybodyshield/components/MetricsCard.tsx"],"sourcesContent":["/**\n * Metrics Card Component\n * @module mybodyshield/components\n */\n\nimport type { FC, ReactNode } from 'react';\nimport { TrendingUp, TrendingDown, Minus } from 'lucide-react';\nimport { GlassCard } from '@burdenoff/fe-libs/ui';\nimport { cn } from '../utils/cn';\nimport type { TrendDirection } from '../types';\n\ntype Accent = 'success' | 'warning' | 'error';\n\ninterface MetricsCardProps {\n icon: ReactNode;\n value: string | number;\n label: string;\n trend?: TrendDirection;\n trendValue?: string;\n className?: string;\n /** Render as the page's hero metric (glass treatment + accent glow). */\n featured?: boolean;\n /** Severity accent — tints the icon and adds a soft top-edge glow. */\n accent?: Accent;\n /** Optional pill shown in the top-right (e.g. \"Critical\"). */\n pill?: ReactNode;\n /** Optional slot under the value (e.g. a MiniBar or sub-label). */\n footer?: ReactNode;\n}\n\nconst trendConfig: Record<TrendDirection, { icon: typeof TrendingUp; color: string }> = {\n up: { icon: TrendingUp, color: 'text-status-success-text' },\n down: { icon: TrendingDown, color: 'text-status-error-text' },\n neutral: { icon: Minus, color: 'text-text-secondary' },\n};\n\nconst accentIcon: Record<Accent, string> = {\n success: 'text-status-success-text',\n warning: 'text-status-warning-text',\n error: 'text-status-error-text',\n};\n\nconst accentGlow: Record<Accent, string> = {\n success: 'shadow-[inset_0_1px_0_0_var(--color-status-success-text)]',\n warning: 'shadow-[inset_0_1px_0_0_var(--color-status-warning-text)]',\n error: 'shadow-[inset_0_1px_0_0_var(--color-status-error-text)]',\n};\n\nexport const MetricsCard: FC<MetricsCardProps> = ({\n icon,\n value,\n label,\n trend,\n trendValue,\n className,\n featured = false,\n accent,\n pill,\n footer,\n}) => {\n const trendInfo = trend ? trendConfig[trend] : null;\n const TrendIcon = trendInfo?.icon;\n\n return (\n <GlassCard\n treatment={featured ? 'glass' : 'metric'}\n glow={featured}\n className={cn('p-6', accent && accentGlow[accent], className)}\n >\n <div className=\"flex items-center justify-between\">\n <div className={cn('text-text-secondary', accent && accentIcon[accent])}>{icon}</div>\n {pill ??\n (trend && trendInfo && TrendIcon ? (\n <div className={cn('flex items-center gap-1 text-xs font-medium', trendInfo.color)}>\n <TrendIcon className=\"h-3.5 w-3.5\" />\n {trendValue && <span>{trendValue}</span>}\n </div>\n ) : null)}\n </div>\n <div className=\"mt-3\">\n <p className=\"text-2xl font-bold text-text-primary tabular-nums\">{value}</p>\n <p className=\"mt-1 text-sm text-text-secondary\">{label}</p>\n {footer && <div className=\"mt-3\">{footer}</div>}\n </div>\n </GlassCard>\n );\n};\n"],"mappings":";;;;;AA8BA,IAAM,IAAkF;CACtF,IAAI;EAAE,MAAM;EAAY,OAAO;EAA4B;CAC3D,MAAM;EAAE,MAAM;EAAc,OAAO;EAA0B;CAC7D,SAAS;EAAE,MAAM;EAAO,OAAO;EAAuB;CACvD,EAEK,IAAqC;CACzC,SAAS;CACT,SAAS;CACT,OAAO;CACR,EAEK,IAAqC;CACzC,SAAS;CACT,SAAS;CACT,OAAO;CACR,EAEY,KAAqC,EAChD,SACA,UACA,UACA,UACA,eACA,cACA,cAAW,IACX,WACA,SACA,gBACI;CACJ,IAAM,IAAY,IAAQ,EAAY,KAAS,MACzC,IAAY,GAAW;AAE7B,QACE,kBAAC,GAAD;EACE,WAAW,IAAW,UAAU;EAChC,MAAM;EACN,WAAW,EAAG,OAAO,KAAU,EAAW,IAAS,EAAU;YAH/D,CAKE,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,OAAD;IAAK,WAAW,EAAG,uBAAuB,KAAU,EAAW,GAAQ;cAAG;IAAW,CAAA,EACpF,MACE,KAAS,KAAa,IACrB,kBAAC,OAAD;IAAK,WAAW,EAAG,+CAA+C,EAAU,MAAM;cAAlF,CACE,kBAAC,GAAD,EAAW,WAAU,eAAgB,CAAA,EACpC,KAAc,kBAAC,QAAD,EAAA,UAAO,GAAkB,CAAA,CACpC;QACJ,MACF;MACN,kBAAC,OAAD;GAAK,WAAU;aAAf;IACE,kBAAC,KAAD;KAAG,WAAU;eAAqD;KAAU,CAAA;IAC5E,kBAAC,KAAD;KAAG,WAAU;eAAoC;KAAU,CAAA;IAC1D,KAAU,kBAAC,OAAD;KAAK,WAAU;eAAQ;KAAa,CAAA;IAC3C;KACI"}
@@ -0,0 +1,22 @@
1
+ import { cn as e } from "../utils/cn.js";
2
+ import { jsx as t } from "react/jsx-runtime";
3
+ //#region src/mybodyshield/components/MiniBar.tsx
4
+ function n({ value: n, className: r, barClassName: i = "bg-accent", height: a = 6 }) {
5
+ let o = Math.max(0, Math.min(100, n));
6
+ return /* @__PURE__ */ t("div", {
7
+ className: e("w-full overflow-hidden rounded-full bg-bg-sunken", r),
8
+ style: { height: a },
9
+ role: "progressbar",
10
+ "aria-valuenow": Math.round(o),
11
+ "aria-valuemin": 0,
12
+ "aria-valuemax": 100,
13
+ children: /* @__PURE__ */ t("div", {
14
+ className: e("h-full rounded-full transition-[width] duration-700 ease-out", i),
15
+ style: { width: `${o}%` }
16
+ })
17
+ });
18
+ }
19
+ //#endregion
20
+ export { n as MiniBar };
21
+
22
+ //# sourceMappingURL=MiniBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MiniBar.js","names":[],"sources":["../../../src/mybodyshield/components/MiniBar.tsx"],"sourcesContent":["/**\n * MiniBar — a thin inline progress bar (target progress, completion, breach %).\n * @module mybodyshield/components\n */\n\nimport { cn } from '../utils/cn';\n\ninterface MiniBarProps {\n /** 0–100. */\n value: number;\n className?: string;\n /** Bar fill token class (defaults to accent). */\n barClassName?: string;\n /** Height in px. */\n height?: number;\n}\n\nexport function MiniBar({\n value,\n className,\n barClassName = 'bg-accent',\n height = 6,\n}: MiniBarProps) {\n const clamped = Math.max(0, Math.min(100, value));\n return (\n <div\n className={cn('w-full overflow-hidden rounded-full bg-bg-sunken', className)}\n style={{ height }}\n role=\"progressbar\"\n aria-valuenow={Math.round(clamped)}\n aria-valuemin={0}\n aria-valuemax={100}\n >\n <div\n className={cn('h-full rounded-full transition-[width] duration-700 ease-out', barClassName)}\n style={{ width: `${clamped}%` }}\n />\n </div>\n );\n}\n"],"mappings":";;;AAiBA,SAAgB,EAAQ,EACtB,UACA,cACA,kBAAe,aACf,YAAS,KACM;CACf,IAAM,IAAU,KAAK,IAAI,GAAG,KAAK,IAAI,KAAK,EAAM,CAAC;AACjD,QACE,kBAAC,OAAD;EACE,WAAW,EAAG,oDAAoD,EAAU;EAC5E,OAAO,EAAE,WAAQ;EACjB,MAAK;EACL,iBAAe,KAAK,MAAM,EAAQ;EAClC,iBAAe;EACf,iBAAe;YAEf,kBAAC,OAAD;GACE,WAAW,EAAG,gEAAgE,EAAa;GAC3F,OAAO,EAAE,OAAO,GAAG,EAAQ,IAAI;GAC/B,CAAA;EACE,CAAA"}
@@ -0,0 +1,109 @@
1
+ import { useMyBodyShield as e } from "../context/MyBodyShieldContext.js";
2
+ import { formatDateTime as t } from "../utils/formatters.js";
3
+ import { ErrorView as n, LoadingView as r, Section as i } from "./StateViews.js";
4
+ import { EmptyState as a } from "./EmptyState.js";
5
+ import "../context/index.js";
6
+ import { useMybComments as o, useMybCreateComment as s } from "../hooks/useMybComments.js";
7
+ import "../hooks/index.js";
8
+ import { useState as c } from "react";
9
+ import { MessageSquare as l, Send as u } from "lucide-react";
10
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
11
+ import { Button as p, Textarea as m } from "@burdenoff/fe-libs/ui";
12
+ //#region src/mybodyshield/components/MybDiscussion.tsx
13
+ function h(e) {
14
+ if (!e) return "You";
15
+ let t = [e.firstName, e.lastName].filter(Boolean).join(" ").trim();
16
+ return e.name || t || e.username || e.email || "You";
17
+ }
18
+ function g(e) {
19
+ let t = e.trim();
20
+ return t ? t[0].toUpperCase() : "?";
21
+ }
22
+ function _({ entityType: _, entityId: v, title: y = "Discussion", description: b = "Coordinate review and verification with your team." }) {
23
+ let { currentUser: x } = e(), { data: S, isLoading: C, isError: w, refetch: T } = o(_, v), E = s(_, v), [D, O] = c(""), [k, A] = c(null), j = h(x), M = (e) => x?.id && e.authorId === x.id ? j : "Workspace member", N = async () => {
24
+ let e = D.trim();
25
+ if (e) {
26
+ A(null);
27
+ try {
28
+ await E.mutateAsync(e), O("");
29
+ } catch (e) {
30
+ A(e instanceof Error ? e.message : "Failed to post comment.");
31
+ }
32
+ }
33
+ }, P = S?.items ?? [];
34
+ return /* @__PURE__ */ d(i, {
35
+ title: y,
36
+ description: b,
37
+ children: /* @__PURE__ */ f("div", {
38
+ className: "rounded-xl border border-border-seam bg-bg-surface/40 p-4",
39
+ children: [/* @__PURE__ */ f("div", {
40
+ className: "flex gap-3",
41
+ children: [/* @__PURE__ */ d("div", {
42
+ className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-action-primary-bg/15 text-sm font-semibold text-action-primary-bg",
43
+ children: g(j)
44
+ }), /* @__PURE__ */ f("div", {
45
+ className: "flex-1",
46
+ children: [/* @__PURE__ */ d(m, {
47
+ value: D,
48
+ onChange: (e) => O(e.target.value),
49
+ placeholder: "Add a comment for your team…",
50
+ rows: 2
51
+ }), /* @__PURE__ */ f("div", {
52
+ className: "mt-2 flex items-center justify-end gap-2",
53
+ children: [k && /* @__PURE__ */ d("span", {
54
+ className: "mr-auto text-xs text-status-error-text",
55
+ children: k
56
+ }), /* @__PURE__ */ f(p, {
57
+ size: "sm",
58
+ onClick: N,
59
+ disabled: !D.trim() || E.isPending,
60
+ children: [/* @__PURE__ */ d(u, { className: "mr-1.5 h-4 w-4" }), E.isPending ? "Posting…" : "Comment"]
61
+ })]
62
+ })]
63
+ })]
64
+ }), /* @__PURE__ */ d("div", {
65
+ className: "mt-4 border-t border-border-seam pt-4",
66
+ children: C ? /* @__PURE__ */ d(r, { label: "Loading discussion…" }) : w ? /* @__PURE__ */ d(n, {
67
+ message: "Couldn't load the discussion.",
68
+ onRetry: () => T()
69
+ }) : P.length === 0 ? /* @__PURE__ */ d(a, {
70
+ illustration: "empty-data",
71
+ icon: /* @__PURE__ */ d(l, { className: "h-9 w-9" }),
72
+ title: "No comments yet",
73
+ description: "Start the discussion by adding the first comment."
74
+ }) : /* @__PURE__ */ d("ul", {
75
+ className: "flex flex-col gap-4",
76
+ children: P.map((e) => {
77
+ let n = M(e), r = e.content.text ?? e.content.markdown ?? "";
78
+ return /* @__PURE__ */ f("li", {
79
+ className: "flex gap-3",
80
+ children: [/* @__PURE__ */ d("div", {
81
+ className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-bg-sunken text-sm font-semibold text-text-secondary",
82
+ children: g(n)
83
+ }), /* @__PURE__ */ f("div", {
84
+ className: "min-w-0 flex-1",
85
+ children: [/* @__PURE__ */ f("div", {
86
+ className: "flex flex-wrap items-baseline gap-x-2",
87
+ children: [/* @__PURE__ */ d("span", {
88
+ className: "text-sm font-semibold text-text-primary",
89
+ children: n
90
+ }), /* @__PURE__ */ f("span", {
91
+ className: "text-xs text-text-tertiary",
92
+ children: [t(e.createdAt), e.edited ? " · edited" : ""]
93
+ })]
94
+ }), /* @__PURE__ */ d("p", {
95
+ className: "mt-0.5 whitespace-pre-wrap break-words text-sm text-text-secondary",
96
+ children: r
97
+ })]
98
+ })]
99
+ }, e.id);
100
+ })
101
+ })
102
+ })]
103
+ })
104
+ });
105
+ }
106
+ //#endregion
107
+ export { _ as MybDiscussion };
108
+
109
+ //# sourceMappingURL=MybDiscussion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MybDiscussion.js","names":[],"sources":["../../../src/mybodyshield/components/MybDiscussion.tsx"],"sourcesContent":["/**\n * MybDiscussion — a comment thread on any mybodyshield entity (Integration B).\n * @module mybodyshield/components/MybDiscussion\n *\n * Reuses the platform EntityComment API (`getEntityComments` /\n * `createEntityComment`) keyed by `(entityType, entityId)` — no mybodyshield-svc change.\n * Renders root comments (author, body, time) + a composer. Robust to empty\n * state and errors.\n */\n\nimport { useState } from 'react';\nimport { MessageSquare, Send } from 'lucide-react';\nimport { Button, Textarea } from '@burdenoff/fe-libs/ui';\nimport { Section, LoadingView, ErrorView } from './StateViews';\nimport { EmptyState } from './EmptyState';\nimport { useMyBodyShield } from '../context';\nimport { useMybComments, useMybCreateComment, type MybComment } from '../hooks';\nimport { formatDateTime } from '../utils/formatters';\n\ninterface MybDiscussionProps {\n entityType: string;\n entityId: string;\n title?: string;\n description?: string;\n}\n\nfunction displayName(user: ReturnType<typeof useMyBodyShield>['currentUser']): string {\n if (!user) return 'You';\n const full = [user.firstName, user.lastName].filter(Boolean).join(' ').trim();\n return user.name || full || user.username || user.email || 'You';\n}\n\nfunction initialFor(label: string): string {\n const trimmed = label.trim();\n return trimmed ? trimmed[0]!.toUpperCase() : '?';\n}\n\nexport function MybDiscussion({\n entityType,\n entityId,\n title = 'Discussion',\n description = 'Coordinate review and verification with your team.',\n}: MybDiscussionProps) {\n const { currentUser } = useMyBodyShield();\n const { data, isLoading, isError, refetch } = useMybComments(entityType, entityId);\n const createComment = useMybCreateComment(entityType, entityId);\n\n const [draft, setDraft] = useState('');\n const [error, setError] = useState<string | null>(null);\n\n const selfName = displayName(currentUser);\n\n const authorLabel = (comment: MybComment): string =>\n currentUser?.id && comment.authorId === currentUser.id ? selfName : 'Workspace member';\n\n const handleSubmit = async () => {\n const text = draft.trim();\n if (!text) return;\n setError(null);\n try {\n await createComment.mutateAsync(text);\n setDraft('');\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to post comment.');\n }\n };\n\n const comments = data?.items ?? [];\n\n return (\n <Section title={title} description={description}>\n <div className=\"rounded-xl border border-border-seam bg-bg-surface/40 p-4\">\n {/* Composer */}\n <div className=\"flex gap-3\">\n <div className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-action-primary-bg/15 text-sm font-semibold text-action-primary-bg\">\n {initialFor(selfName)}\n </div>\n <div className=\"flex-1\">\n <Textarea\n value={draft}\n onChange={(e) => setDraft(e.target.value)}\n placeholder=\"Add a comment for your team…\"\n rows={2}\n />\n <div className=\"mt-2 flex items-center justify-end gap-2\">\n {error && <span className=\"mr-auto text-xs text-status-error-text\">{error}</span>}\n <Button\n size=\"sm\"\n onClick={handleSubmit}\n disabled={!draft.trim() || createComment.isPending}\n >\n <Send className=\"mr-1.5 h-4 w-4\" />\n {createComment.isPending ? 'Posting…' : 'Comment'}\n </Button>\n </div>\n </div>\n </div>\n\n {/* Thread */}\n <div className=\"mt-4 border-t border-border-seam pt-4\">\n {isLoading ? (\n <LoadingView label=\"Loading discussion…\" />\n ) : isError ? (\n <ErrorView message=\"Couldn't load the discussion.\" onRetry={() => refetch()} />\n ) : comments.length === 0 ? (\n <EmptyState\n illustration=\"empty-data\"\n icon={<MessageSquare className=\"h-9 w-9\" />}\n title=\"No comments yet\"\n description=\"Start the discussion by adding the first comment.\"\n />\n ) : (\n <ul className=\"flex flex-col gap-4\">\n {comments.map((comment) => {\n const label = authorLabel(comment);\n const body = comment.content.text ?? comment.content.markdown ?? '';\n return (\n <li key={comment.id} className=\"flex gap-3\">\n <div className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-bg-sunken text-sm font-semibold text-text-secondary\">\n {initialFor(label)}\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex flex-wrap items-baseline gap-x-2\">\n <span className=\"text-sm font-semibold text-text-primary\">{label}</span>\n <span className=\"text-xs text-text-tertiary\">\n {formatDateTime(comment.createdAt)}\n {comment.edited ? ' · edited' : ''}\n </span>\n </div>\n <p className=\"mt-0.5 whitespace-pre-wrap break-words text-sm text-text-secondary\">\n {body}\n </p>\n </div>\n </li>\n );\n })}\n </ul>\n )}\n </div>\n </div>\n </Section>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ import { useMybAssignTag as e, useMybCreateAndAssignTag as t, useMybEntityTags as n, useMybRemoveTagAssignment as r, useMybTagSearch as i } from "../hooks/useMybTags.js";
2
+ import "../hooks/index.js";
3
+ import { useEffect as a, useState as o } from "react";
4
+ import { Loader2 as s, Plus as c, Tag as l, X as u } from "lucide-react";
5
+ import { Fragment as d, jsx as f, jsxs as p } from "react/jsx-runtime";
6
+ import { Button as m, Input as h, Popover as g, PopoverContent as _, PopoverTrigger as v, Spinner as y } from "@burdenoff/fe-libs/ui";
7
+ //#region src/mybodyshield/components/MybTags.tsx
8
+ function b({ entityType: b, entityId: x, label: S = "Tags" }) {
9
+ let C = n(b, x), w = e(b, x), T = r(b, x), E = t(b, x), [D, O] = o(!1), [k, A] = o(""), [j, M] = o(""), [N, P] = o(null);
10
+ a(() => {
11
+ let e = setTimeout(() => M(k), 250);
12
+ return () => clearTimeout(e);
13
+ }, [k]);
14
+ let F = i(j), I = C.data ?? [], L = new Set(I.map((e) => e.tag.id)), R = j.trim(), z = (F.data ?? []).filter((e) => !L.has(e.id)), B = R.length > 0 && [...I.map((e) => e.tag.label), ...(F.data ?? []).map((e) => e.label)].some((e) => e.toLowerCase() === R.toLowerCase()), V = R.length > 0 && !B, H = w.isPending || E.isPending, U = () => {
15
+ A(""), M(""), P(null);
16
+ }, W = async (e) => {
17
+ P(null);
18
+ try {
19
+ await w.mutateAsync(e), U(), O(!1);
20
+ } catch (e) {
21
+ P(e instanceof Error ? e.message : "Failed to add tag.");
22
+ }
23
+ }, G = async () => {
24
+ if (R) {
25
+ P(null);
26
+ try {
27
+ await E.mutateAsync(R), U(), O(!1);
28
+ } catch (e) {
29
+ P(e instanceof Error ? e.message : "Failed to create tag.");
30
+ }
31
+ }
32
+ }, K = async (e) => {
33
+ P(null);
34
+ try {
35
+ await T.mutateAsync(e);
36
+ } catch (e) {
37
+ P(e instanceof Error ? e.message : "Failed to remove tag.");
38
+ }
39
+ };
40
+ return /* @__PURE__ */ p("div", { children: [
41
+ /* @__PURE__ */ f("p", {
42
+ className: "mb-1.5 text-xs text-text-tertiary",
43
+ children: S
44
+ }),
45
+ /* @__PURE__ */ p("div", {
46
+ className: "flex flex-wrap items-center gap-2",
47
+ children: [C.isLoading ? /* @__PURE__ */ p("span", {
48
+ className: "inline-flex items-center gap-1.5 text-sm text-text-tertiary",
49
+ children: [/* @__PURE__ */ f(s, { className: "h-3.5 w-3.5 animate-spin" }), " Loading tags…"]
50
+ }) : I.map((e) => /* @__PURE__ */ p("span", {
51
+ className: "inline-flex items-center gap-1.5 rounded-full border border-border-seam bg-bg-sunken px-2.5 py-1 text-xs text-text-secondary",
52
+ children: [
53
+ e.tag.color ? /* @__PURE__ */ f("span", {
54
+ className: "h-2 w-2 shrink-0 rounded-full",
55
+ style: { backgroundColor: e.tag.color },
56
+ "aria-hidden": !0
57
+ }) : /* @__PURE__ */ f(l, { className: "h-3 w-3 text-text-tertiary" }),
58
+ /* @__PURE__ */ f("span", {
59
+ className: "max-w-[10rem] truncate",
60
+ children: e.tag.label
61
+ }),
62
+ /* @__PURE__ */ f("button", {
63
+ type: "button",
64
+ onClick: () => K(e.id),
65
+ disabled: T.isPending,
66
+ "aria-label": `Remove tag ${e.tag.label}`,
67
+ className: "rounded-full p-0.5 text-text-tertiary hover:bg-bg-canvas hover:text-text-primary",
68
+ children: /* @__PURE__ */ f(u, { className: "h-3 w-3" })
69
+ })
70
+ ]
71
+ }, e.id)), /* @__PURE__ */ p(g, {
72
+ open: D,
73
+ onOpenChange: (e) => {
74
+ O(e), e || U();
75
+ },
76
+ children: [/* @__PURE__ */ f(v, {
77
+ asChild: !0,
78
+ children: /* @__PURE__ */ p(m, {
79
+ size: "sm",
80
+ variant: "outline",
81
+ className: "h-7 gap-1 px-2 text-xs",
82
+ children: [/* @__PURE__ */ f(c, { className: "h-3.5 w-3.5" }), " Add tag"]
83
+ })
84
+ }), /* @__PURE__ */ p(_, {
85
+ align: "start",
86
+ className: "w-64 p-2",
87
+ children: [/* @__PURE__ */ f(h, {
88
+ autoFocus: !0,
89
+ value: k,
90
+ onChange: (e) => A(e.target.value),
91
+ placeholder: "Search or create a tag…",
92
+ className: "h-8"
93
+ }), /* @__PURE__ */ f("div", {
94
+ className: "mt-2 max-h-56 overflow-y-auto",
95
+ children: F.isFetching && R.length > 0 ? /* @__PURE__ */ p("div", {
96
+ className: "flex items-center gap-2 px-1 py-2 text-sm text-text-tertiary",
97
+ children: [/* @__PURE__ */ f(y, { size: "sm" }), " Searching…"]
98
+ }) : /* @__PURE__ */ p(d, { children: [
99
+ z.map((e) => /* @__PURE__ */ p("button", {
100
+ type: "button",
101
+ onClick: () => W(e.id),
102
+ disabled: H,
103
+ className: "flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-text-secondary hover:bg-bg-sunken disabled:opacity-60",
104
+ children: [e.color ? /* @__PURE__ */ f("span", {
105
+ className: "h-2 w-2 shrink-0 rounded-full",
106
+ style: { backgroundColor: e.color },
107
+ "aria-hidden": !0
108
+ }) : /* @__PURE__ */ f(l, { className: "h-3.5 w-3.5 text-text-tertiary" }), /* @__PURE__ */ f("span", {
109
+ className: "truncate",
110
+ children: e.label
111
+ })]
112
+ }, e.id)),
113
+ V && /* @__PURE__ */ p("button", {
114
+ type: "button",
115
+ onClick: G,
116
+ disabled: H,
117
+ className: "flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-action-primary-bg hover:bg-bg-sunken disabled:opacity-60",
118
+ children: [/* @__PURE__ */ f(c, { className: "h-3.5 w-3.5 shrink-0" }), /* @__PURE__ */ p("span", {
119
+ className: "truncate",
120
+ children: [
121
+ "Create “",
122
+ R,
123
+ "”"
124
+ ]
125
+ })]
126
+ }),
127
+ !V && z.length === 0 && R.length > 0 && /* @__PURE__ */ f("p", {
128
+ className: "px-2 py-2 text-sm text-text-tertiary",
129
+ children: "Already added."
130
+ }),
131
+ R.length === 0 && /* @__PURE__ */ f("p", {
132
+ className: "px-2 py-2 text-sm text-text-tertiary",
133
+ children: "Type to search existing tags or create a new one."
134
+ })
135
+ ] })
136
+ })]
137
+ })]
138
+ })]
139
+ }),
140
+ N && /* @__PURE__ */ f("p", {
141
+ className: "mt-1.5 text-xs text-status-error-text",
142
+ children: N
143
+ })
144
+ ] });
145
+ }
146
+ //#endregion
147
+ export { b as MybTags };
148
+
149
+ //# sourceMappingURL=MybTags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MybTags.js","names":[],"sources":["../../../src/mybodyshield/components/MybTags.tsx"],"sourcesContent":["/**\n * MybTags — a lightweight tag control for mybodyshield entities (Integration C).\n * @module mybodyshield/components/MybTags\n *\n * The mybodyshield svc exposes no tags field, so this drives the platform tag store\n * directly: `getEntityTags` (display), `searchTags` (+ `createTag`) to pick or\n * create, `assignTag`/`removeTagAssignment` to link — all via the workspace\n * gateway. No mybodyshield-svc change.\n */\n\nimport { useEffect, useState } from 'react';\nimport { Loader2, Plus, Tag as TagIcon, X } from 'lucide-react';\nimport {\n Button,\n Input,\n Popover,\n PopoverContent,\n PopoverTrigger,\n Spinner,\n} from '@burdenoff/fe-libs/ui';\nimport {\n useMybEntityTags,\n useMybTagSearch,\n useMybAssignTag,\n useMybRemoveTagAssignment,\n useMybCreateAndAssignTag,\n} from '../hooks';\n\ninterface MybTagsProps {\n entityType: string;\n entityId: string;\n label?: string;\n}\n\nexport function MybTags({ entityType, entityId, label = 'Tags' }: MybTagsProps) {\n const tags = useMybEntityTags(entityType, entityId);\n const assign = useMybAssignTag(entityType, entityId);\n const remove = useMybRemoveTagAssignment(entityType, entityId);\n const createAndAssign = useMybCreateAndAssignTag(entityType, entityId);\n\n const [open, setOpen] = useState(false);\n const [query, setQuery] = useState('');\n const [debounced, setDebounced] = useState('');\n const [error, setError] = useState<string | null>(null);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebounced(query), 250);\n return () => clearTimeout(timer);\n }, [query]);\n\n const search = useMybTagSearch(debounced);\n\n const assignments = tags.data ?? [];\n const assignedIds = new Set(assignments.map((a) => a.tag.id));\n const q = debounced.trim();\n const searchResults = (search.data ?? []).filter((t) => !assignedIds.has(t.id));\n const hasExact =\n q.length > 0 &&\n [...assignments.map((a) => a.tag.label), ...(search.data ?? []).map((t) => t.label)].some(\n (l) => l.toLowerCase() === q.toLowerCase()\n );\n const showCreate = q.length > 0 && !hasExact;\n const busy = assign.isPending || createAndAssign.isPending;\n\n const resetInput = () => {\n setQuery('');\n setDebounced('');\n setError(null);\n };\n\n const handleAssign = async (tagId: string) => {\n setError(null);\n try {\n await assign.mutateAsync(tagId);\n resetInput();\n setOpen(false);\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to add tag.');\n }\n };\n\n const handleCreate = async () => {\n if (!q) return;\n setError(null);\n try {\n await createAndAssign.mutateAsync(q);\n resetInput();\n setOpen(false);\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to create tag.');\n }\n };\n\n const handleRemove = async (assignmentId: string) => {\n setError(null);\n try {\n await remove.mutateAsync(assignmentId);\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to remove tag.');\n }\n };\n\n return (\n <div>\n <p className=\"mb-1.5 text-xs text-text-tertiary\">{label}</p>\n <div className=\"flex flex-wrap items-center gap-2\">\n {tags.isLoading ? (\n <span className=\"inline-flex items-center gap-1.5 text-sm text-text-tertiary\">\n <Loader2 className=\"h-3.5 w-3.5 animate-spin\" /> Loading tags…\n </span>\n ) : (\n assignments.map((assignment) => (\n <span\n key={assignment.id}\n className=\"inline-flex items-center gap-1.5 rounded-full border border-border-seam bg-bg-sunken px-2.5 py-1 text-xs text-text-secondary\"\n >\n {assignment.tag.color ? (\n <span\n className=\"h-2 w-2 shrink-0 rounded-full\"\n style={{ backgroundColor: assignment.tag.color }}\n aria-hidden\n />\n ) : (\n <TagIcon className=\"h-3 w-3 text-text-tertiary\" />\n )}\n <span className=\"max-w-[10rem] truncate\">{assignment.tag.label}</span>\n <button\n type=\"button\"\n onClick={() => handleRemove(assignment.id)}\n disabled={remove.isPending}\n aria-label={`Remove tag ${assignment.tag.label}`}\n className=\"rounded-full p-0.5 text-text-tertiary hover:bg-bg-canvas hover:text-text-primary\"\n >\n <X className=\"h-3 w-3\" />\n </button>\n </span>\n ))\n )}\n\n <Popover\n open={open}\n onOpenChange={(next) => {\n setOpen(next);\n if (!next) resetInput();\n }}\n >\n <PopoverTrigger asChild>\n <Button size=\"sm\" variant=\"outline\" className=\"h-7 gap-1 px-2 text-xs\">\n <Plus className=\"h-3.5 w-3.5\" /> Add tag\n </Button>\n </PopoverTrigger>\n <PopoverContent align=\"start\" className=\"w-64 p-2\">\n <Input\n autoFocus\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n placeholder=\"Search or create a tag…\"\n className=\"h-8\"\n />\n <div className=\"mt-2 max-h-56 overflow-y-auto\">\n {search.isFetching && q.length > 0 ? (\n <div className=\"flex items-center gap-2 px-1 py-2 text-sm text-text-tertiary\">\n <Spinner size=\"sm\" /> Searching…\n </div>\n ) : (\n <>\n {searchResults.map((tag) => (\n <button\n key={tag.id}\n type=\"button\"\n onClick={() => handleAssign(tag.id)}\n disabled={busy}\n className=\"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-text-secondary hover:bg-bg-sunken disabled:opacity-60\"\n >\n {tag.color ? (\n <span\n className=\"h-2 w-2 shrink-0 rounded-full\"\n style={{ backgroundColor: tag.color }}\n aria-hidden\n />\n ) : (\n <TagIcon className=\"h-3.5 w-3.5 text-text-tertiary\" />\n )}\n <span className=\"truncate\">{tag.label}</span>\n </button>\n ))}\n\n {showCreate && (\n <button\n type=\"button\"\n onClick={handleCreate}\n disabled={busy}\n className=\"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-action-primary-bg hover:bg-bg-sunken disabled:opacity-60\"\n >\n <Plus className=\"h-3.5 w-3.5 shrink-0\" />\n <span className=\"truncate\">Create “{q}”</span>\n </button>\n )}\n\n {!showCreate && searchResults.length === 0 && q.length > 0 && (\n <p className=\"px-2 py-2 text-sm text-text-tertiary\">Already added.</p>\n )}\n {q.length === 0 && (\n <p className=\"px-2 py-2 text-sm text-text-tertiary\">\n Type to search existing tags or create a new one.\n </p>\n )}\n </>\n )}\n </div>\n </PopoverContent>\n </Popover>\n </div>\n\n {error && <p className=\"mt-1.5 text-xs text-status-error-text\">{error}</p>}\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { cn as e } from "../utils/cn.js";
2
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
3
+ import { AuroraBackground as r, GradientText as i } from "@burdenoff/fe-libs/ui";
4
+ //#region src/mybodyshield/components/PageLayout.tsx
5
+ var a = ({ title: a, description: o, actions: s, children: c, className: l, titleGradient: u = !1, aurora: d = !1 }) => /* @__PURE__ */ n("div", {
6
+ className: e("flex flex-col h-full", l),
7
+ children: [/* @__PURE__ */ n("div", {
8
+ className: e("relative flex flex-col gap-3 px-6 py-4 border-b border-border-seam sm:flex-row sm:items-center sm:justify-between sm:gap-4", d ? "overflow-hidden bg-gloss-card" : "bg-bg-surface"),
9
+ children: [
10
+ d && /* @__PURE__ */ t(r, { intensity: "subtle" }),
11
+ /* @__PURE__ */ n("div", {
12
+ className: "min-w-0",
13
+ children: [u && typeof a == "string" ? /* @__PURE__ */ t(i, {
14
+ as: "h1",
15
+ className: "text-2xl font-semibold tracking-tight",
16
+ children: a
17
+ }) : /* @__PURE__ */ t("h1", {
18
+ className: "text-2xl font-semibold text-text-primary",
19
+ children: a
20
+ }), o && /* @__PURE__ */ t("p", {
21
+ className: "mt-1 text-sm text-text-secondary",
22
+ children: o
23
+ })]
24
+ }),
25
+ s && /* @__PURE__ */ t("div", {
26
+ className: "flex flex-wrap items-center gap-3 shrink-0 max-sm:w-full",
27
+ children: s
28
+ })
29
+ ]
30
+ }), /* @__PURE__ */ t("div", {
31
+ className: "flex-1 overflow-auto p-6",
32
+ children: c
33
+ })]
34
+ });
35
+ //#endregion
36
+ export { a as PageLayout };
37
+
38
+ //# sourceMappingURL=PageLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageLayout.js","names":[],"sources":["../../../src/mybodyshield/components/PageLayout.tsx"],"sourcesContent":["/**\n * Page Layout Component\n * @module mybodyshield/components\n *\n * Boff UI 2.0 page wrapper. Supports a living-glass {@link AuroraBackground}\n * hero backdrop and a gradient hero title for the MFE's primary page.\n */\n\nimport type { FC, ReactNode } from 'react';\nimport { AuroraBackground, GradientText } from '@burdenoff/fe-libs/ui';\nimport { cn } from '../utils/cn';\n\ninterface PageLayoutProps {\n title: ReactNode;\n description?: string;\n actions?: ReactNode;\n children: ReactNode;\n className?: string;\n /** Render the title as a gradient hero heading (reserve for the ONE primary page). */\n titleGradient?: boolean;\n /** Drop a subtle living-glass aurora behind the header (primary page only). */\n aurora?: boolean;\n}\n\nexport const PageLayout: FC<PageLayoutProps> = ({\n title,\n description,\n actions,\n children,\n className,\n titleGradient = false,\n aurora = false,\n}) => {\n return (\n <div className={cn('flex flex-col h-full', className)}>\n <div\n className={cn(\n 'relative flex flex-col gap-3 px-6 py-4 border-b border-border-seam sm:flex-row sm:items-center sm:justify-between sm:gap-4',\n aurora ? 'overflow-hidden bg-gloss-card' : 'bg-bg-surface'\n )}\n >\n {aurora && <AuroraBackground intensity=\"subtle\" />}\n <div className=\"min-w-0\">\n {titleGradient && typeof title === 'string' ? (\n <GradientText as=\"h1\" className=\"text-2xl font-semibold tracking-tight\">\n {title}\n </GradientText>\n ) : (\n <h1 className=\"text-2xl font-semibold text-text-primary\">{title}</h1>\n )}\n {description && <p className=\"mt-1 text-sm text-text-secondary\">{description}</p>}\n </div>\n {actions && (\n <div className=\"flex flex-wrap items-center gap-3 shrink-0 max-sm:w-full\">{actions}</div>\n )}\n </div>\n\n <div className=\"flex-1 overflow-auto p-6\">{children}</div>\n </div>\n );\n};\n"],"mappings":";;;;AAwBA,IAAa,KAAmC,EAC9C,UACA,gBACA,YACA,aACA,cACA,mBAAgB,IAChB,YAAS,SAGP,kBAAC,OAAD;CAAK,WAAW,EAAG,wBAAwB,EAAU;WAArD,CACE,kBAAC,OAAD;EACE,WAAW,EACT,8HACA,IAAS,kCAAkC,gBAC5C;YAJH;GAMG,KAAU,kBAAC,GAAD,EAAkB,WAAU,UAAW,CAAA;GAClD,kBAAC,OAAD;IAAK,WAAU;cAAf,CACG,KAAiB,OAAO,KAAU,WACjC,kBAAC,GAAD;KAAc,IAAG;KAAK,WAAU;eAC7B;KACY,CAAA,GAEf,kBAAC,MAAD;KAAI,WAAU;eAA4C;KAAW,CAAA,EAEtE,KAAe,kBAAC,KAAD;KAAG,WAAU;eAAoC;KAAgB,CAAA,CAC7E;;GACL,KACC,kBAAC,OAAD;IAAK,WAAU;cAA4D;IAAc,CAAA;GAEvF;KAEN,kBAAC,OAAD;EAAK,WAAU;EAA4B;EAAe,CAAA,CACtD"}
@@ -0,0 +1,50 @@
1
+ import { cn as e } from "../utils/cn.js";
2
+ import { ChevronLeft as t, ChevronRight as n } from "lucide-react";
3
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
4
+ import { Button as a } from "@burdenoff/fe-libs/ui";
5
+ //#region src/mybodyshield/components/Pagination.tsx
6
+ function o({ page: o, pageSize: s, itemCount: c, hasMore: l, onPageChange: u, className: d }) {
7
+ if (o === 0 && !l) return null;
8
+ let f = c === 0 ? 0 : o * s + 1, p = o * s + c;
9
+ return /* @__PURE__ */ i("div", {
10
+ className: e("mt-4 flex flex-col items-center justify-between gap-3 sm:flex-row", d),
11
+ children: [/* @__PURE__ */ i("p", {
12
+ className: "text-sm text-text-secondary tabular-nums",
13
+ "aria-live": "polite",
14
+ children: [
15
+ "Showing ",
16
+ f,
17
+ "–",
18
+ p
19
+ ]
20
+ }), /* @__PURE__ */ i("div", {
21
+ className: "flex items-center gap-2",
22
+ children: [
23
+ /* @__PURE__ */ i(a, {
24
+ variant: "outline",
25
+ size: "sm",
26
+ onClick: () => u(o - 1),
27
+ disabled: o === 0,
28
+ "aria-label": "Previous page",
29
+ children: [/* @__PURE__ */ r(t, { className: "mr-1 h-4 w-4" }), " Previous"]
30
+ }),
31
+ /* @__PURE__ */ i("span", {
32
+ className: "min-w-[4.5rem] text-center text-sm text-text-secondary tabular-nums",
33
+ children: ["Page ", o + 1]
34
+ }),
35
+ /* @__PURE__ */ i(a, {
36
+ variant: "outline",
37
+ size: "sm",
38
+ onClick: () => u(o + 1),
39
+ disabled: !l,
40
+ "aria-label": "Next page",
41
+ children: ["Next ", /* @__PURE__ */ r(n, { className: "ml-1 h-4 w-4" })]
42
+ })
43
+ ]
44
+ })]
45
+ });
46
+ }
47
+ //#endregion
48
+ export { o as Pagination };
49
+
50
+ //# sourceMappingURL=Pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination.js","names":[],"sources":["../../../src/mybodyshield/components/Pagination.tsx"],"sourcesContent":["/**\n * Pagination — offset-based Prev/Next control for Myb* connection lists.\n * @module mybodyshield/components\n *\n * The svc list connections return `pageInfo { cursor, hasMore }` and paginate by\n * cursor (offset is a no-op). Pages track a 0-indexed `page` for display and a\n * cursor stack for navigation; this control exposes Prev/Next, disabling Prev on\n * page 0 and Next when the server reports no more rows.\n */\n\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { Button } from '@burdenoff/fe-libs/ui';\nimport { cn } from '../utils/cn';\n\ninterface PaginationProps {\n page: number;\n pageSize: number;\n /** Number of rows on the current page. */\n itemCount: number;\n /** Server flag: are there more rows after this page? */\n hasMore: boolean;\n onPageChange: (page: number) => void;\n className?: string;\n}\n\nexport function Pagination({\n page,\n pageSize,\n itemCount,\n hasMore,\n onPageChange,\n className,\n}: PaginationProps) {\n // Nothing to paginate: single page that also has no more rows.\n if (page === 0 && !hasMore) return null;\n\n const from = itemCount === 0 ? 0 : page * pageSize + 1;\n const to = page * pageSize + itemCount;\n\n return (\n <div\n className={cn('mt-4 flex flex-col items-center justify-between gap-3 sm:flex-row', className)}\n >\n <p className=\"text-sm text-text-secondary tabular-nums\" aria-live=\"polite\">\n Showing {from}–{to}\n </p>\n <div className=\"flex items-center gap-2\">\n <Button\n variant=\"outline\"\n size=\"sm\"\n onClick={() => onPageChange(page - 1)}\n disabled={page === 0}\n aria-label=\"Previous page\"\n >\n <ChevronLeft className=\"mr-1 h-4 w-4\" /> Previous\n </Button>\n <span className=\"min-w-[4.5rem] text-center text-sm text-text-secondary tabular-nums\">\n Page {page + 1}\n </span>\n <Button\n variant=\"outline\"\n size=\"sm\"\n onClick={() => onPageChange(page + 1)}\n disabled={!hasMore}\n aria-label=\"Next page\"\n >\n Next <ChevronRight className=\"ml-1 h-4 w-4\" />\n </Button>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAyBA,SAAgB,EAAW,EACzB,SACA,aACA,cACA,YACA,iBACA,gBACkB;AAElB,KAAI,MAAS,KAAK,CAAC,EAAS,QAAO;CAEnC,IAAM,IAAO,MAAc,IAAI,IAAI,IAAO,IAAW,GAC/C,IAAK,IAAO,IAAW;AAE7B,QACE,kBAAC,OAAD;EACE,WAAW,EAAG,qEAAqE,EAAU;YAD/F,CAGE,kBAAC,KAAD;GAAG,WAAU;GAA2C,aAAU;aAAlE;IAA2E;IAChE;IAAK;IAAE;IACd;MACJ,kBAAC,OAAD;GAAK,WAAU;aAAf;IACE,kBAAC,GAAD;KACE,SAAQ;KACR,MAAK;KACL,eAAe,EAAa,IAAO,EAAE;KACrC,UAAU,MAAS;KACnB,cAAW;eALb,CAOE,kBAAC,GAAD,EAAa,WAAU,gBAAiB,CAAA,EAAA,YACjC;;IACT,kBAAC,QAAD;KAAM,WAAU;eAAhB,CAAsF,SAC9E,IAAO,EACR;;IACP,kBAAC,GAAD;KACE,SAAQ;KACR,MAAK;KACL,eAAe,EAAa,IAAO,EAAE;KACrC,UAAU,CAAC;KACX,cAAW;eALb,CAMC,SACM,kBAAC,GAAD,EAAc,WAAU,gBAAiB,CAAA,CACvC;;IACL;KACF"}
@@ -0,0 +1,49 @@
1
+ import { cn as e } from "../utils/cn.js";
2
+ import { AlertCircle as t } from "lucide-react";
3
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
+ import { Spinner as i } from "@burdenoff/fe-libs/ui";
5
+ //#region src/mybodyshield/components/StateViews.tsx
6
+ var a = ({ label: t = "Loading…", className: a }) => /* @__PURE__ */ r("div", {
7
+ className: e("flex min-h-[40vh] flex-col items-center justify-center gap-3", a),
8
+ children: [/* @__PURE__ */ n(i, { size: "lg" }), /* @__PURE__ */ n("p", {
9
+ className: "text-sm text-text-secondary",
10
+ children: t
11
+ })]
12
+ }), o = ({ title: i = "Something went wrong", message: a, onRetry: o, className: s }) => /* @__PURE__ */ r("div", {
13
+ className: e("flex min-h-[40vh] flex-col items-center justify-center gap-4 text-center", s),
14
+ children: [
15
+ /* @__PURE__ */ n(t, { className: "h-10 w-10 text-status-error-text" }),
16
+ /* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h2", {
17
+ className: "text-lg font-semibold text-text-primary",
18
+ children: i
19
+ }), a && /* @__PURE__ */ n("p", {
20
+ className: "mt-1 max-w-md text-sm text-text-secondary",
21
+ children: a
22
+ })] }),
23
+ o && /* @__PURE__ */ n("button", {
24
+ type: "button",
25
+ onClick: o,
26
+ className: "rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:opacity-90",
27
+ children: "Retry"
28
+ })
29
+ ]
30
+ }), s = ({ title: t, description: i, action: a, children: o, className: s }) => /* @__PURE__ */ r("section", {
31
+ className: e("mt-8 first:mt-0", s),
32
+ children: [/* @__PURE__ */ r("div", {
33
+ className: "mb-3 flex items-end justify-between gap-3",
34
+ children: [/* @__PURE__ */ r("div", { children: [/* @__PURE__ */ n("h2", {
35
+ className: "text-base font-semibold text-text-primary",
36
+ children: t
37
+ }), i && /* @__PURE__ */ n("p", {
38
+ className: "mt-0.5 text-sm text-text-secondary",
39
+ children: i
40
+ })] }), a && /* @__PURE__ */ n("div", {
41
+ className: "shrink-0",
42
+ children: a
43
+ })]
44
+ }), o]
45
+ });
46
+ //#endregion
47
+ export { o as ErrorView, a as LoadingView, s as Section };
48
+
49
+ //# sourceMappingURL=StateViews.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StateViews.js","names":[],"sources":["../../../src/mybodyshield/components/StateViews.tsx"],"sourcesContent":["/**\n * Shared loading / error / section state views\n * @module mybodyshield/components\n */\n\nimport type { FC, ReactNode } from 'react';\nimport { AlertCircle } from 'lucide-react';\nimport { Spinner } from '@burdenoff/fe-libs/ui';\nimport { cn } from '../utils/cn';\n\ninterface LoadingViewProps {\n label?: string;\n className?: string;\n}\n\nexport const LoadingView: FC<LoadingViewProps> = ({ label = 'Loading…', className }) => (\n <div className={cn('flex min-h-[40vh] flex-col items-center justify-center gap-3', className)}>\n <Spinner size=\"lg\" />\n <p className=\"text-sm text-text-secondary\">{label}</p>\n </div>\n);\n\ninterface ErrorViewProps {\n title?: string;\n message?: string;\n onRetry?: () => void;\n className?: string;\n}\n\nexport const ErrorView: FC<ErrorViewProps> = ({\n title = 'Something went wrong',\n message,\n onRetry,\n className,\n}) => (\n <div\n className={cn(\n 'flex min-h-[40vh] flex-col items-center justify-center gap-4 text-center',\n className\n )}\n >\n <AlertCircle className=\"h-10 w-10 text-status-error-text\" />\n <div>\n <h2 className=\"text-lg font-semibold text-text-primary\">{title}</h2>\n {message && <p className=\"mt-1 max-w-md text-sm text-text-secondary\">{message}</p>}\n </div>\n {onRetry && (\n <button\n type=\"button\"\n onClick={onRetry}\n className=\"rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:opacity-90\"\n >\n Retry\n </button>\n )}\n </div>\n);\n\ninterface SectionProps {\n title: string;\n description?: string;\n action?: ReactNode;\n children: ReactNode;\n className?: string;\n}\n\nexport const Section: FC<SectionProps> = ({ title, description, action, children, className }) => (\n <section className={cn('mt-8 first:mt-0', className)}>\n <div className=\"mb-3 flex items-end justify-between gap-3\">\n <div>\n <h2 className=\"text-base font-semibold text-text-primary\">{title}</h2>\n {description && <p className=\"mt-0.5 text-sm text-text-secondary\">{description}</p>}\n </div>\n {action && <div className=\"shrink-0\">{action}</div>}\n </div>\n {children}\n </section>\n);\n"],"mappings":";;;;;AAeA,IAAa,KAAqC,EAAE,WAAQ,YAAY,mBACtE,kBAAC,OAAD;CAAK,WAAW,EAAG,gEAAgE,EAAU;WAA7F,CACE,kBAAC,GAAD,EAAS,MAAK,MAAO,CAAA,EACrB,kBAAC,KAAD;EAAG,WAAU;YAA+B;EAAU,CAAA,CAClD;IAUK,KAAiC,EAC5C,WAAQ,wBACR,YACA,YACA,mBAEA,kBAAC,OAAD;CACE,WAAW,EACT,4EACA,EACD;WAJH;EAME,kBAAC,GAAD,EAAa,WAAU,oCAAqC,CAAA;EAC5D,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;GAAI,WAAU;aAA2C;GAAW,CAAA,EACnE,KAAW,kBAAC,KAAD;GAAG,WAAU;aAA6C;GAAY,CAAA,CAC9E,EAAA,CAAA;EACL,KACC,kBAAC,UAAD;GACE,MAAK;GACL,SAAS;GACT,WAAU;aACX;GAEQ,CAAA;EAEP;IAWK,KAA6B,EAAE,UAAO,gBAAa,WAAQ,aAAU,mBAChF,kBAAC,WAAD;CAAS,WAAW,EAAG,mBAAmB,EAAU;WAApD,CACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;GAAI,WAAU;aAA6C;GAAW,CAAA,EACrE,KAAe,kBAAC,KAAD;GAAG,WAAU;aAAsC;GAAgB,CAAA,CAC/E,EAAA,CAAA,EACL,KAAU,kBAAC,OAAD;GAAK,WAAU;aAAY;GAAa,CAAA,CAC/C;KACL,EACO"}