@burdenoff/microfe-mybodyshield 2026.525.1 → 2026.705.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.js +20 -0
- package/dist/index.js +6 -4
- package/dist/mybodyshield/MyBodyShieldRoot.js +101 -350
- package/dist/mybodyshield/MyBodyShieldRoot.js.map +1 -1
- package/dist/mybodyshield/MyBodyShieldRoutes.js +66 -193
- package/dist/mybodyshield/MyBodyShieldRoutes.js.map +1 -1
- package/dist/mybodyshield/components/DataTable.js +71 -0
- package/dist/mybodyshield/components/DataTable.js.map +1 -0
- package/dist/mybodyshield/components/EmptyState.js +35 -0
- package/dist/mybodyshield/components/EmptyState.js.map +1 -0
- package/dist/mybodyshield/components/EvidenceUpload.js +5 -0
- package/dist/mybodyshield/components/FileLink.js +3 -0
- package/dist/mybodyshield/components/FilterTabs.js +27 -0
- package/dist/mybodyshield/components/FilterTabs.js.map +1 -0
- package/dist/mybodyshield/components/MetricsCard.js +64 -0
- package/dist/mybodyshield/components/MetricsCard.js.map +1 -0
- package/dist/mybodyshield/components/MiniBar.js +22 -0
- package/dist/mybodyshield/components/MiniBar.js.map +1 -0
- package/dist/mybodyshield/components/MybDiscussion.js +8 -0
- package/dist/mybodyshield/components/MybTags.js +5 -0
- package/dist/mybodyshield/components/PageLayout.js +38 -0
- package/dist/mybodyshield/components/PageLayout.js.map +1 -0
- package/dist/mybodyshield/components/Pagination.js +50 -0
- package/dist/mybodyshield/components/Pagination.js.map +1 -0
- package/dist/mybodyshield/components/StateViews.js +49 -0
- package/dist/mybodyshield/components/StateViews.js.map +1 -0
- package/dist/mybodyshield/components/StatusBadge.js +62 -0
- package/dist/mybodyshield/components/StatusBadge.js.map +1 -0
- package/dist/mybodyshield/components/Tabs.js +31 -0
- package/dist/mybodyshield/components/Tabs.js.map +1 -0
- package/dist/mybodyshield/components/index.js +14 -0
- package/dist/mybodyshield/context/MyBodyShieldContext.js +85 -0
- package/dist/mybodyshield/context/MyBodyShieldContext.js.map +1 -0
- package/dist/mybodyshield/context/index.js +1 -0
- package/dist/mybodyshield/hooks/index.js +5 -0
- package/dist/mybodyshield/hooks/useMyBodyShieldApi.js +378 -0
- package/dist/mybodyshield/hooks/useMyBodyShieldApi.js.map +1 -0
- package/dist/mybodyshield/hooks/useMybComments.js +3 -0
- package/dist/mybodyshield/hooks/useMybFiles.js +4 -0
- package/dist/mybodyshield/hooks/useMybTags.js +3 -0
- package/dist/mybodyshield/hooks/usePager.js +27 -0
- package/dist/mybodyshield/hooks/usePager.js.map +1 -0
- package/dist/mybodyshield/index.js +5 -2
- package/dist/mybodyshield/pages/DashboardPage.js +427 -0
- package/dist/mybodyshield/pages/DashboardPage.js.map +1 -0
- package/dist/mybodyshield/pages/_shared/visuals.js +255 -0
- package/dist/mybodyshield/pages/_shared/visuals.js.map +1 -0
- package/dist/mybodyshield/pages/coaching/CoachingPage.js +422 -0
- package/dist/mybodyshield/pages/coaching/CoachingPage.js.map +1 -0
- package/dist/mybodyshield/pages/goals/GoalsPage.js +518 -0
- package/dist/mybodyshield/pages/goals/GoalsPage.js.map +1 -0
- package/dist/mybodyshield/pages/nutrition/NutritionPage.js +938 -0
- package/dist/mybodyshield/pages/nutrition/NutritionPage.js.map +1 -0
- package/dist/mybodyshield/pages/programs/ProgramDetailPage.js +628 -0
- package/dist/mybodyshield/pages/programs/ProgramDetailPage.js.map +1 -0
- package/dist/mybodyshield/pages/programs/ProgramsPage.js +450 -0
- package/dist/mybodyshield/pages/programs/ProgramsPage.js.map +1 -0
- package/dist/mybodyshield/pages/progress/ProgressPage.js +447 -0
- package/dist/mybodyshield/pages/progress/ProgressPage.js.map +1 -0
- package/dist/mybodyshield/pages/recovery/RecoveryPage.js +484 -0
- package/dist/mybodyshield/pages/recovery/RecoveryPage.js.map +1 -0
- package/dist/mybodyshield/pages/train/SessionDetailPage.js +559 -0
- package/dist/mybodyshield/pages/train/SessionDetailPage.js.map +1 -0
- package/dist/mybodyshield/pages/train/SessionsPage.js +297 -0
- package/dist/mybodyshield/pages/train/SessionsPage.js.map +1 -0
- package/dist/mybodyshield/utils/cn.js +10 -0
- package/dist/mybodyshield/utils/cn.js.map +1 -0
- package/dist/mybodyshield/utils/formatters.js +76 -0
- package/dist/mybodyshield/utils/formatters.js.map +1 -0
- package/dist/mybodyshield/utils/navigation.js +2 -1
- package/dist/mybodyshield/utils/navigation.js.map +1 -1
- package/dist/node_modules/clsx/dist/clsx.js +18 -0
- package/dist/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/node_modules/d3-array/src/ascending.js +8 -0
- package/dist/node_modules/d3-array/src/ascending.js.map +1 -0
- package/dist/node_modules/d3-array/src/bisect.js +10 -0
- package/dist/node_modules/d3-array/src/bisect.js.map +1 -0
- package/dist/node_modules/d3-array/src/bisector.js +43 -0
- package/dist/node_modules/d3-array/src/bisector.js.map +1 -0
- package/dist/node_modules/d3-array/src/descending.js +8 -0
- package/dist/node_modules/d3-array/src/descending.js.map +1 -0
- package/dist/node_modules/d3-array/src/max.js +14 -0
- package/dist/node_modules/d3-array/src/max.js.map +1 -0
- package/dist/node_modules/d3-array/src/min.js +14 -0
- package/dist/node_modules/d3-array/src/min.js.map +1 -0
- package/dist/node_modules/d3-array/src/number.js +15 -0
- package/dist/node_modules/d3-array/src/number.js.map +1 -0
- package/dist/node_modules/d3-array/src/quantile.js +25 -0
- package/dist/node_modules/d3-array/src/quantile.js.map +1 -0
- package/dist/node_modules/d3-array/src/quickselect.js +26 -0
- package/dist/node_modules/d3-array/src/quickselect.js.map +1 -0
- package/dist/node_modules/d3-array/src/range.js +10 -0
- package/dist/node_modules/d3-array/src/range.js.map +1 -0
- package/dist/node_modules/d3-array/src/sort.js +17 -0
- package/dist/node_modules/d3-array/src/sort.js.map +1 -0
- package/dist/node_modules/d3-array/src/ticks.js +34 -0
- package/dist/node_modules/d3-array/src/ticks.js.map +1 -0
- package/dist/node_modules/d3-color/src/color.js +291 -0
- package/dist/node_modules/d3-color/src/color.js.map +1 -0
- package/dist/node_modules/d3-color/src/define.js +13 -0
- package/dist/node_modules/d3-color/src/define.js.map +1 -0
- package/dist/node_modules/d3-format/src/defaultLocale.js +15 -0
- package/dist/node_modules/d3-format/src/defaultLocale.js.map +1 -0
- package/dist/node_modules/d3-format/src/exponent.js +9 -0
- package/dist/node_modules/d3-format/src/exponent.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatDecimal.js +13 -0
- package/dist/node_modules/d3-format/src/formatDecimal.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatGroup.js +11 -0
- package/dist/node_modules/d3-format/src/formatGroup.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatNumerals.js +12 -0
- package/dist/node_modules/d3-format/src/formatNumerals.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatPrefixAuto.js +13 -0
- package/dist/node_modules/d3-format/src/formatPrefixAuto.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatRounded.js +12 -0
- package/dist/node_modules/d3-format/src/formatRounded.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatSpecifier.js +29 -0
- package/dist/node_modules/d3-format/src/formatSpecifier.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatTrim.js +20 -0
- package/dist/node_modules/d3-format/src/formatTrim.js.map +1 -0
- package/dist/node_modules/d3-format/src/formatTypes.js +23 -0
- package/dist/node_modules/d3-format/src/formatTypes.js.map +1 -0
- package/dist/node_modules/d3-format/src/identity.js +8 -0
- package/dist/node_modules/d3-format/src/identity.js.map +1 -0
- package/dist/node_modules/d3-format/src/locale.js +86 -0
- package/dist/node_modules/d3-format/src/locale.js.map +1 -0
- package/dist/node_modules/d3-format/src/precisionFixed.js +9 -0
- package/dist/node_modules/d3-format/src/precisionFixed.js.map +1 -0
- package/dist/node_modules/d3-format/src/precisionPrefix.js +9 -0
- package/dist/node_modules/d3-format/src/precisionPrefix.js.map +1 -0
- package/dist/node_modules/d3-format/src/precisionRound.js +9 -0
- package/dist/node_modules/d3-format/src/precisionRound.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/array.js +15 -0
- package/dist/node_modules/d3-interpolate/src/array.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/basis.js +16 -0
- package/dist/node_modules/d3-interpolate/src/basis.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/basisClosed.js +13 -0
- package/dist/node_modules/d3-interpolate/src/basisClosed.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/color.js +25 -0
- package/dist/node_modules/d3-interpolate/src/color.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/constant.js +6 -0
- package/dist/node_modules/d3-interpolate/src/constant.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/date.js +11 -0
- package/dist/node_modules/d3-interpolate/src/date.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/number.js +10 -0
- package/dist/node_modules/d3-interpolate/src/number.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/numberArray.js +16 -0
- package/dist/node_modules/d3-interpolate/src/numberArray.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/object.js +14 -0
- package/dist/node_modules/d3-interpolate/src/object.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/piecewise.js +14 -0
- package/dist/node_modules/d3-interpolate/src/piecewise.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/rgb.js +19 -0
- package/dist/node_modules/d3-interpolate/src/rgb.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/round.js +10 -0
- package/dist/node_modules/d3-interpolate/src/round.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/string.js +28 -0
- package/dist/node_modules/d3-interpolate/src/string.js.map +1 -0
- package/dist/node_modules/d3-interpolate/src/value.js +18 -0
- package/dist/node_modules/d3-interpolate/src/value.js.map +1 -0
- package/dist/node_modules/d3-path/src/path.js +65 -0
- package/dist/node_modules/d3-path/src/path.js.map +1 -0
- package/dist/node_modules/d3-scale/src/band.js +52 -0
- package/dist/node_modules/d3-scale/src/band.js.map +1 -0
- package/dist/node_modules/d3-scale/src/constant.js +10 -0
- package/dist/node_modules/d3-scale/src/constant.js.map +1 -0
- package/dist/node_modules/d3-scale/src/continuous.js +73 -0
- package/dist/node_modules/d3-scale/src/continuous.js.map +1 -0
- package/dist/node_modules/d3-scale/src/diverging.js +82 -0
- package/dist/node_modules/d3-scale/src/diverging.js.map +1 -0
- package/dist/node_modules/d3-scale/src/identity.js +20 -0
- package/dist/node_modules/d3-scale/src/identity.js.map +1 -0
- package/dist/node_modules/d3-scale/src/init.js +29 -0
- package/dist/node_modules/d3-scale/src/init.js.map +1 -0
- package/dist/node_modules/d3-scale/src/linear.js +36 -0
- package/dist/node_modules/d3-scale/src/linear.js.map +1 -0
- package/dist/node_modules/d3-scale/src/log.js +77 -0
- package/dist/node_modules/d3-scale/src/log.js.map +1 -0
- package/dist/node_modules/d3-scale/src/nice.js +10 -0
- package/dist/node_modules/d3-scale/src/nice.js.map +1 -0
- package/dist/node_modules/d3-scale/src/number.js +8 -0
- package/dist/node_modules/d3-scale/src/number.js.map +1 -0
- package/dist/node_modules/d3-scale/src/ordinal.js +31 -0
- package/dist/node_modules/d3-scale/src/ordinal.js.map +1 -0
- package/dist/node_modules/d3-scale/src/pow.js +37 -0
- package/dist/node_modules/d3-scale/src/pow.js.map +1 -0
- package/dist/node_modules/d3-scale/src/quantile.js +37 -0
- package/dist/node_modules/d3-scale/src/quantile.js.map +1 -0
- package/dist/node_modules/d3-scale/src/quantize.js +33 -0
- package/dist/node_modules/d3-scale/src/quantize.js.map +1 -0
- package/dist/node_modules/d3-scale/src/radial.js +39 -0
- package/dist/node_modules/d3-scale/src/radial.js.map +1 -0
- package/dist/node_modules/d3-scale/src/sequential.js +67 -0
- package/dist/node_modules/d3-scale/src/sequential.js.map +1 -0
- package/dist/node_modules/d3-scale/src/sequentialQuantile.js +30 -0
- package/dist/node_modules/d3-scale/src/sequentialQuantile.js.map +1 -0
- package/dist/node_modules/d3-scale/src/symlog.js +30 -0
- package/dist/node_modules/d3-scale/src/symlog.js.map +1 -0
- package/dist/node_modules/d3-scale/src/threshold.js +25 -0
- package/dist/node_modules/d3-scale/src/threshold.js.map +1 -0
- package/dist/node_modules/d3-scale/src/tickFormat.js +31 -0
- package/dist/node_modules/d3-scale/src/tickFormat.js.map +1 -0
- package/dist/node_modules/d3-scale/src/time.js +47 -0
- package/dist/node_modules/d3-scale/src/time.js.map +1 -0
- package/dist/node_modules/d3-scale/src/utcTime.js +19 -0
- package/dist/node_modules/d3-scale/src/utcTime.js.map +1 -0
- package/dist/node_modules/d3-shape/src/area.js +55 -0
- package/dist/node_modules/d3-shape/src/area.js.map +1 -0
- package/dist/node_modules/d3-shape/src/array.js +8 -0
- package/dist/node_modules/d3-shape/src/array.js.map +1 -0
- package/dist/node_modules/d3-shape/src/constant.js +10 -0
- package/dist/node_modules/d3-shape/src/constant.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/basis.js +49 -0
- package/dist/node_modules/d3-shape/src/curve/basis.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/basisClosed.js +50 -0
- package/dist/node_modules/d3-shape/src/curve/basisClosed.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/basisOpen.js +46 -0
- package/dist/node_modules/d3-shape/src/curve/basisOpen.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/bump.js +40 -0
- package/dist/node_modules/d3-shape/src/curve/bump.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/linear.js +36 -0
- package/dist/node_modules/d3-shape/src/curve/linear.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/linearClosed.js +25 -0
- package/dist/node_modules/d3-shape/src/curve/linearClosed.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/monotone.js +94 -0
- package/dist/node_modules/d3-shape/src/curve/monotone.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/natural.js +39 -0
- package/dist/node_modules/d3-shape/src/curve/natural.js.map +1 -0
- package/dist/node_modules/d3-shape/src/curve/step.js +47 -0
- package/dist/node_modules/d3-shape/src/curve/step.js.map +1 -0
- package/dist/node_modules/d3-shape/src/line.js +30 -0
- package/dist/node_modules/d3-shape/src/line.js.map +1 -0
- package/dist/node_modules/d3-shape/src/math.js +8 -0
- package/dist/node_modules/d3-shape/src/math.js.map +1 -0
- package/dist/node_modules/d3-shape/src/noop.js +6 -0
- package/dist/node_modules/d3-shape/src/noop.js.map +1 -0
- package/dist/node_modules/d3-shape/src/offset/expand.js +15 -0
- package/dist/node_modules/d3-shape/src/offset/expand.js.map +1 -0
- package/dist/node_modules/d3-shape/src/offset/none.js +8 -0
- package/dist/node_modules/d3-shape/src/offset/none.js.map +1 -0
- package/dist/node_modules/d3-shape/src/offset/silhouette.js +15 -0
- package/dist/node_modules/d3-shape/src/offset/silhouette.js.map +1 -0
- package/dist/node_modules/d3-shape/src/offset/wiggle.js +21 -0
- package/dist/node_modules/d3-shape/src/offset/wiggle.js.map +1 -0
- package/dist/node_modules/d3-shape/src/order/none.js +9 -0
- package/dist/node_modules/d3-shape/src/order/none.js.map +1 -0
- package/dist/node_modules/d3-shape/src/path.js +19 -0
- package/dist/node_modules/d3-shape/src/path.js.map +1 -0
- package/dist/node_modules/d3-shape/src/point.js +11 -0
- package/dist/node_modules/d3-shape/src/point.js.map +1 -0
- package/dist/node_modules/d3-shape/src/stack.js +34 -0
- package/dist/node_modules/d3-shape/src/stack.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/circle.js +10 -0
- package/dist/node_modules/d3-shape/src/symbol/circle.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/cross.js +10 -0
- package/dist/node_modules/d3-shape/src/symbol/cross.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/diamond.js +10 -0
- package/dist/node_modules/d3-shape/src/symbol/diamond.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/square.js +10 -0
- package/dist/node_modules/d3-shape/src/symbol/square.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/star.js +15 -0
- package/dist/node_modules/d3-shape/src/symbol/star.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/triangle.js +10 -0
- package/dist/node_modules/d3-shape/src/symbol/triangle.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol/wye.js +10 -0
- package/dist/node_modules/d3-shape/src/symbol/wye.js.map +1 -0
- package/dist/node_modules/d3-shape/src/symbol.js +23 -0
- package/dist/node_modules/d3-shape/src/symbol.js.map +1 -0
- package/dist/node_modules/d3-time/src/day.js +21 -0
- package/dist/node_modules/d3-time/src/day.js.map +1 -0
- package/dist/node_modules/d3-time/src/duration.js +6 -0
- package/dist/node_modules/d3-time/src/duration.js.map +1 -0
- package/dist/node_modules/d3-time/src/hour.js +19 -0
- package/dist/node_modules/d3-time/src/hour.js.map +1 -0
- package/dist/node_modules/d3-time/src/interval.js +28 -0
- package/dist/node_modules/d3-time/src/interval.js.map +1 -0
- package/dist/node_modules/d3-time/src/millisecond.js +14 -0
- package/dist/node_modules/d3-time/src/millisecond.js.map +1 -0
- package/dist/node_modules/d3-time/src/minute.js +19 -0
- package/dist/node_modules/d3-time/src/minute.js.map +1 -0
- package/dist/node_modules/d3-time/src/month.js +18 -0
- package/dist/node_modules/d3-time/src/month.js.map +1 -0
- package/dist/node_modules/d3-time/src/second.js +13 -0
- package/dist/node_modules/d3-time/src/second.js.map +1 -0
- package/dist/node_modules/d3-time/src/ticks.js +125 -0
- package/dist/node_modules/d3-time/src/ticks.js.map +1 -0
- package/dist/node_modules/d3-time/src/week.js +25 -0
- package/dist/node_modules/d3-time/src/week.js.map +1 -0
- package/dist/node_modules/d3-time/src/year.js +26 -0
- package/dist/node_modules/d3-time/src/year.js.map +1 -0
- package/dist/node_modules/d3-time-format/src/defaultLocale.js +62 -0
- package/dist/node_modules/d3-time-format/src/defaultLocale.js.map +1 -0
- package/dist/node_modules/d3-time-format/src/locale.js +490 -0
- package/dist/node_modules/d3-time-format/src/locale.js.map +1 -0
- package/dist/node_modules/decimal.js-light/decimal.js +378 -0
- package/dist/node_modules/decimal.js-light/decimal.js.map +1 -0
- package/dist/node_modules/eventemitter3/index.js +95 -0
- package/dist/node_modules/eventemitter3/index.js.map +1 -0
- package/dist/node_modules/fast-equals/dist/es/index.js +267 -0
- package/dist/node_modules/fast-equals/dist/es/index.js.map +1 -0
- package/dist/node_modules/internmap/src/index.js +40 -0
- package/dist/node_modules/internmap/src/index.js.map +1 -0
- package/dist/node_modules/lodash/_DataView.js +12 -0
- package/dist/node_modules/lodash/_DataView.js.map +1 -0
- package/dist/node_modules/lodash/_Hash.js +23 -0
- package/dist/node_modules/lodash/_Hash.js.map +1 -0
- package/dist/node_modules/lodash/_ListCache.js +23 -0
- package/dist/node_modules/lodash/_ListCache.js.map +1 -0
- package/dist/node_modules/lodash/_Map.js +12 -0
- package/dist/node_modules/lodash/_Map.js.map +1 -0
- package/dist/node_modules/lodash/_MapCache.js +23 -0
- package/dist/node_modules/lodash/_MapCache.js.map +1 -0
- package/dist/node_modules/lodash/_Promise.js +12 -0
- package/dist/node_modules/lodash/_Promise.js.map +1 -0
- package/dist/node_modules/lodash/_Set.js +12 -0
- package/dist/node_modules/lodash/_Set.js.map +1 -0
- package/dist/node_modules/lodash/_SetCache.js +18 -0
- package/dist/node_modules/lodash/_SetCache.js.map +1 -0
- package/dist/node_modules/lodash/_Stack.js +20 -0
- package/dist/node_modules/lodash/_Stack.js.map +1 -0
- package/dist/node_modules/lodash/_Symbol.js +11 -0
- package/dist/node_modules/lodash/_Symbol.js.map +1 -0
- package/dist/node_modules/lodash/_Uint8Array.js +11 -0
- package/dist/node_modules/lodash/_Uint8Array.js.map +1 -0
- package/dist/node_modules/lodash/_WeakMap.js +12 -0
- package/dist/node_modules/lodash/_WeakMap.js.map +1 -0
- package/dist/node_modules/lodash/_apply.js +19 -0
- package/dist/node_modules/lodash/_apply.js.map +1 -0
- package/dist/node_modules/lodash/_arrayEvery.js +14 -0
- package/dist/node_modules/lodash/_arrayEvery.js.map +1 -0
- package/dist/node_modules/lodash/_arrayFilter.js +17 -0
- package/dist/node_modules/lodash/_arrayFilter.js.map +1 -0
- package/dist/node_modules/lodash/_arrayIncludes.js +15 -0
- package/dist/node_modules/lodash/_arrayIncludes.js.map +1 -0
- package/dist/node_modules/lodash/_arrayIncludesWith.js +14 -0
- package/dist/node_modules/lodash/_arrayIncludesWith.js.map +1 -0
- package/dist/node_modules/lodash/_arrayLikeKeys.js +22 -0
- package/dist/node_modules/lodash/_arrayLikeKeys.js.map +1 -0
- package/dist/node_modules/lodash/_arrayMap.js +14 -0
- package/dist/node_modules/lodash/_arrayMap.js.map +1 -0
- package/dist/node_modules/lodash/_arrayPush.js +14 -0
- package/dist/node_modules/lodash/_arrayPush.js.map +1 -0
- package/dist/node_modules/lodash/_arraySome.js +14 -0
- package/dist/node_modules/lodash/_arraySome.js.map +1 -0
- package/dist/node_modules/lodash/_asciiToArray.js +13 -0
- package/dist/node_modules/lodash/_asciiToArray.js.map +1 -0
- package/dist/node_modules/lodash/_assocIndexOf.js +16 -0
- package/dist/node_modules/lodash/_assocIndexOf.js.map +1 -0
- package/dist/node_modules/lodash/_baseAssignValue.js +20 -0
- package/dist/node_modules/lodash/_baseAssignValue.js.map +1 -0
- package/dist/node_modules/lodash/_baseEach.js +13 -0
- package/dist/node_modules/lodash/_baseEach.js.map +1 -0
- package/dist/node_modules/lodash/_baseEvery.js +18 -0
- package/dist/node_modules/lodash/_baseEvery.js.map +1 -0
- package/dist/node_modules/lodash/_baseExtremum.js +19 -0
- package/dist/node_modules/lodash/_baseExtremum.js.map +1 -0
- package/dist/node_modules/lodash/_baseFindIndex.js +14 -0
- package/dist/node_modules/lodash/_baseFindIndex.js.map +1 -0
- package/dist/node_modules/lodash/_baseFlatten.js +21 -0
- package/dist/node_modules/lodash/_baseFlatten.js.map +1 -0
- package/dist/node_modules/lodash/_baseFor.js +11 -0
- package/dist/node_modules/lodash/_baseFor.js.map +1 -0
- package/dist/node_modules/lodash/_baseForOwn.js +16 -0
- package/dist/node_modules/lodash/_baseForOwn.js.map +1 -0
- package/dist/node_modules/lodash/_baseGet.js +18 -0
- package/dist/node_modules/lodash/_baseGet.js.map +1 -0
- package/dist/node_modules/lodash/_baseGetAllKeys.js +17 -0
- package/dist/node_modules/lodash/_baseGetAllKeys.js.map +1 -0
- package/dist/node_modules/lodash/_baseGetTag.js +17 -0
- package/dist/node_modules/lodash/_baseGetTag.js.map +1 -0
- package/dist/node_modules/lodash/_baseGt.js +13 -0
- package/dist/node_modules/lodash/_baseGt.js.map +1 -0
- package/dist/node_modules/lodash/_baseHasIn.js +13 -0
- package/dist/node_modules/lodash/_baseHasIn.js.map +1 -0
- package/dist/node_modules/lodash/_baseIndexOf.js +17 -0
- package/dist/node_modules/lodash/_baseIndexOf.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsArguments.js +16 -0
- package/dist/node_modules/lodash/_baseIsArguments.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsEqual.js +16 -0
- package/dist/node_modules/lodash/_baseIsEqual.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsEqualDeep.js +37 -0
- package/dist/node_modules/lodash/_baseIsEqualDeep.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsMatch.js +33 -0
- package/dist/node_modules/lodash/_baseIsMatch.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsNaN.js +13 -0
- package/dist/node_modules/lodash/_baseIsNaN.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsNative.js +18 -0
- package/dist/node_modules/lodash/_baseIsNative.js.map +1 -0
- package/dist/node_modules/lodash/_baseIsTypedArray.js +18 -0
- package/dist/node_modules/lodash/_baseIsTypedArray.js.map +1 -0
- package/dist/node_modules/lodash/_baseIteratee.js +19 -0
- package/dist/node_modules/lodash/_baseIteratee.js.map +1 -0
- package/dist/node_modules/lodash/_baseKeys.js +19 -0
- package/dist/node_modules/lodash/_baseKeys.js.map +1 -0
- package/dist/node_modules/lodash/_baseLt.js +13 -0
- package/dist/node_modules/lodash/_baseLt.js.map +1 -0
- package/dist/node_modules/lodash/_baseMap.js +19 -0
- package/dist/node_modules/lodash/_baseMap.js.map +1 -0
- package/dist/node_modules/lodash/_baseMatches.js +20 -0
- package/dist/node_modules/lodash/_baseMatches.js.map +1 -0
- package/dist/node_modules/lodash/_baseMatchesProperty.js +24 -0
- package/dist/node_modules/lodash/_baseMatchesProperty.js.map +1 -0
- package/dist/node_modules/lodash/_baseOrderBy.js +39 -0
- package/dist/node_modules/lodash/_baseOrderBy.js.map +1 -0
- package/dist/node_modules/lodash/_baseProperty.js +15 -0
- package/dist/node_modules/lodash/_baseProperty.js.map +1 -0
- package/dist/node_modules/lodash/_basePropertyDeep.js +17 -0
- package/dist/node_modules/lodash/_basePropertyDeep.js.map +1 -0
- package/dist/node_modules/lodash/_baseRange.js +15 -0
- package/dist/node_modules/lodash/_baseRange.js.map +1 -0
- package/dist/node_modules/lodash/_baseRest.js +17 -0
- package/dist/node_modules/lodash/_baseRest.js.map +1 -0
- package/dist/node_modules/lodash/_baseSetToString.js +21 -0
- package/dist/node_modules/lodash/_baseSetToString.js.map +1 -0
- package/dist/node_modules/lodash/_baseSlice.js +16 -0
- package/dist/node_modules/lodash/_baseSlice.js.map +1 -0
- package/dist/node_modules/lodash/_baseSome.js +18 -0
- package/dist/node_modules/lodash/_baseSome.js.map +1 -0
- package/dist/node_modules/lodash/_baseSortBy.js +15 -0
- package/dist/node_modules/lodash/_baseSortBy.js.map +1 -0
- package/dist/node_modules/lodash/_baseTimes.js +14 -0
- package/dist/node_modules/lodash/_baseTimes.js.map +1 -0
- package/dist/node_modules/lodash/_baseToString.js +22 -0
- package/dist/node_modules/lodash/_baseToString.js.map +1 -0
- package/dist/node_modules/lodash/_baseTrim.js +15 -0
- package/dist/node_modules/lodash/_baseTrim.js.map +1 -0
- package/dist/node_modules/lodash/_baseUnary.js +15 -0
- package/dist/node_modules/lodash/_baseUnary.js.map +1 -0
- package/dist/node_modules/lodash/_baseUniq.js +34 -0
- package/dist/node_modules/lodash/_baseUniq.js.map +1 -0
- package/dist/node_modules/lodash/_cacheHas.js +13 -0
- package/dist/node_modules/lodash/_cacheHas.js.map +1 -0
- package/dist/node_modules/lodash/_castPath.js +18 -0
- package/dist/node_modules/lodash/_castPath.js.map +1 -0
- package/dist/node_modules/lodash/_castSlice.js +16 -0
- package/dist/node_modules/lodash/_castSlice.js.map +1 -0
- package/dist/node_modules/lodash/_compareAscending.js +20 -0
- package/dist/node_modules/lodash/_compareAscending.js.map +1 -0
- package/dist/node_modules/lodash/_compareMultiple.js +19 -0
- package/dist/node_modules/lodash/_compareMultiple.js.map +1 -0
- package/dist/node_modules/lodash/_coreJsData.js +11 -0
- package/dist/node_modules/lodash/_coreJsData.js.map +1 -0
- package/dist/node_modules/lodash/_createBaseEach.js +20 -0
- package/dist/node_modules/lodash/_createBaseEach.js.map +1 -0
- package/dist/node_modules/lodash/_createBaseFor.js +19 -0
- package/dist/node_modules/lodash/_createBaseFor.js.map +1 -0
- package/dist/node_modules/lodash/_createCaseFirst.js +22 -0
- package/dist/node_modules/lodash/_createCaseFirst.js.map +1 -0
- package/dist/node_modules/lodash/_createFind.js +27 -0
- package/dist/node_modules/lodash/_createFind.js.map +1 -0
- package/dist/node_modules/lodash/_createRange.js +19 -0
- package/dist/node_modules/lodash/_createRange.js.map +1 -0
- package/dist/node_modules/lodash/_createSet.js +16 -0
- package/dist/node_modules/lodash/_createSet.js.map +1 -0
- package/dist/node_modules/lodash/_defineProperty.js +17 -0
- package/dist/node_modules/lodash/_defineProperty.js.map +1 -0
- package/dist/node_modules/lodash/_equalArrays.js +42 -0
- package/dist/node_modules/lodash/_equalArrays.js.map +1 -0
- package/dist/node_modules/lodash/_equalByTag.js +42 -0
- package/dist/node_modules/lodash/_equalByTag.js.map +1 -0
- package/dist/node_modules/lodash/_equalObjects.js +39 -0
- package/dist/node_modules/lodash/_equalObjects.js.map +1 -0
- package/dist/node_modules/lodash/_freeGlobal.js +10 -0
- package/dist/node_modules/lodash/_freeGlobal.js.map +1 -0
- package/dist/node_modules/lodash/_getAllKeys.js +17 -0
- package/dist/node_modules/lodash/_getAllKeys.js.map +1 -0
- package/dist/node_modules/lodash/_getMapData.js +16 -0
- package/dist/node_modules/lodash/_getMapData.js.map +1 -0
- package/dist/node_modules/lodash/_getMatchData.js +24 -0
- package/dist/node_modules/lodash/_getMatchData.js.map +1 -0
- package/dist/node_modules/lodash/_getNative.js +17 -0
- package/dist/node_modules/lodash/_getNative.js.map +1 -0
- package/dist/node_modules/lodash/_getPrototype.js +11 -0
- package/dist/node_modules/lodash/_getPrototype.js.map +1 -0
- package/dist/node_modules/lodash/_getRawTag.js +21 -0
- package/dist/node_modules/lodash/_getRawTag.js.map +1 -0
- package/dist/node_modules/lodash/_getSymbols.js +17 -0
- package/dist/node_modules/lodash/_getSymbols.js.map +1 -0
- package/dist/node_modules/lodash/_getTag.js +28 -0
- package/dist/node_modules/lodash/_getTag.js.map +1 -0
- package/dist/node_modules/lodash/_getValue.js +13 -0
- package/dist/node_modules/lodash/_getValue.js.map +1 -0
- package/dist/node_modules/lodash/_hasPath.js +26 -0
- package/dist/node_modules/lodash/_hasPath.js.map +1 -0
- package/dist/node_modules/lodash/_hasUnicode.js +14 -0
- package/dist/node_modules/lodash/_hasUnicode.js.map +1 -0
- package/dist/node_modules/lodash/_hashClear.js +15 -0
- package/dist/node_modules/lodash/_hashClear.js.map +1 -0
- package/dist/node_modules/lodash/_hashDelete.js +14 -0
- package/dist/node_modules/lodash/_hashDelete.js.map +1 -0
- package/dist/node_modules/lodash/_hashGet.js +20 -0
- package/dist/node_modules/lodash/_hashGet.js.map +1 -0
- package/dist/node_modules/lodash/_hashHas.js +16 -0
- package/dist/node_modules/lodash/_hashHas.js.map +1 -0
- package/dist/node_modules/lodash/_hashSet.js +16 -0
- package/dist/node_modules/lodash/_hashSet.js.map +1 -0
- package/dist/node_modules/lodash/_isFlattenable.js +17 -0
- package/dist/node_modules/lodash/_isFlattenable.js.map +1 -0
- package/dist/node_modules/lodash/_isIndex.js +15 -0
- package/dist/node_modules/lodash/_isIndex.js.map +1 -0
- package/dist/node_modules/lodash/_isIterateeCall.js +20 -0
- package/dist/node_modules/lodash/_isIterateeCall.js.map +1 -0
- package/dist/node_modules/lodash/_isKey.js +18 -0
- package/dist/node_modules/lodash/_isKey.js.map +1 -0
- package/dist/node_modules/lodash/_isKeyable.js +14 -0
- package/dist/node_modules/lodash/_isKeyable.js.map +1 -0
- package/dist/node_modules/lodash/_isMasked.js +18 -0
- package/dist/node_modules/lodash/_isMasked.js.map +1 -0
- package/dist/node_modules/lodash/_isPrototype.js +15 -0
- package/dist/node_modules/lodash/_isPrototype.js.map +1 -0
- package/dist/node_modules/lodash/_isStrictComparable.js +15 -0
- package/dist/node_modules/lodash/_isStrictComparable.js.map +1 -0
- package/dist/node_modules/lodash/_listCacheClear.js +13 -0
- package/dist/node_modules/lodash/_listCacheClear.js.map +1 -0
- package/dist/node_modules/lodash/_listCacheDelete.js +16 -0
- package/dist/node_modules/lodash/_listCacheDelete.js.map +1 -0
- package/dist/node_modules/lodash/_listCacheGet.js +16 -0
- package/dist/node_modules/lodash/_listCacheGet.js.map +1 -0
- package/dist/node_modules/lodash/_listCacheHas.js +15 -0
- package/dist/node_modules/lodash/_listCacheHas.js.map +1 -0
- package/dist/node_modules/lodash/_listCacheSet.js +16 -0
- package/dist/node_modules/lodash/_listCacheSet.js.map +1 -0
- package/dist/node_modules/lodash/_mapCacheClear.js +21 -0
- package/dist/node_modules/lodash/_mapCacheClear.js.map +1 -0
- package/dist/node_modules/lodash/_mapCacheDelete.js +16 -0
- package/dist/node_modules/lodash/_mapCacheDelete.js.map +1 -0
- package/dist/node_modules/lodash/_mapCacheGet.js +15 -0
- package/dist/node_modules/lodash/_mapCacheGet.js.map +1 -0
- package/dist/node_modules/lodash/_mapCacheHas.js +15 -0
- package/dist/node_modules/lodash/_mapCacheHas.js.map +1 -0
- package/dist/node_modules/lodash/_mapCacheSet.js +16 -0
- package/dist/node_modules/lodash/_mapCacheSet.js.map +1 -0
- package/dist/node_modules/lodash/_mapToArray.js +16 -0
- package/dist/node_modules/lodash/_mapToArray.js.map +1 -0
- package/dist/node_modules/lodash/_matchesStrictComparable.js +15 -0
- package/dist/node_modules/lodash/_matchesStrictComparable.js.map +1 -0
- package/dist/node_modules/lodash/_memoizeCapped.js +18 -0
- package/dist/node_modules/lodash/_memoizeCapped.js.map +1 -0
- package/dist/node_modules/lodash/_nativeCreate.js +11 -0
- package/dist/node_modules/lodash/_nativeCreate.js.map +1 -0
- package/dist/node_modules/lodash/_nativeKeys.js +11 -0
- package/dist/node_modules/lodash/_nativeKeys.js.map +1 -0
- package/dist/node_modules/lodash/_nodeUtil.js +16 -0
- package/dist/node_modules/lodash/_nodeUtil.js.map +1 -0
- package/dist/node_modules/lodash/_objectToString.js +14 -0
- package/dist/node_modules/lodash/_objectToString.js.map +1 -0
- package/dist/node_modules/lodash/_overArg.js +15 -0
- package/dist/node_modules/lodash/_overArg.js.map +1 -0
- package/dist/node_modules/lodash/_overRest.js +20 -0
- package/dist/node_modules/lodash/_overRest.js.map +1 -0
- package/dist/node_modules/lodash/_root.js +12 -0
- package/dist/node_modules/lodash/_root.js.map +1 -0
- package/dist/node_modules/lodash/_setCacheAdd.js +14 -0
- package/dist/node_modules/lodash/_setCacheAdd.js.map +1 -0
- package/dist/node_modules/lodash/_setCacheHas.js +13 -0
- package/dist/node_modules/lodash/_setCacheHas.js.map +1 -0
- package/dist/node_modules/lodash/_setToArray.js +16 -0
- package/dist/node_modules/lodash/_setToArray.js.map +1 -0
- package/dist/node_modules/lodash/_setToString.js +13 -0
- package/dist/node_modules/lodash/_setToString.js.map +1 -0
- package/dist/node_modules/lodash/_shortOut.js +21 -0
- package/dist/node_modules/lodash/_shortOut.js.map +1 -0
- package/dist/node_modules/lodash/_stackClear.js +15 -0
- package/dist/node_modules/lodash/_stackClear.js.map +1 -0
- package/dist/node_modules/lodash/_stackDelete.js +14 -0
- package/dist/node_modules/lodash/_stackDelete.js.map +1 -0
- package/dist/node_modules/lodash/_stackGet.js +13 -0
- package/dist/node_modules/lodash/_stackGet.js.map +1 -0
- package/dist/node_modules/lodash/_stackHas.js +13 -0
- package/dist/node_modules/lodash/_stackHas.js.map +1 -0
- package/dist/node_modules/lodash/_stackSet.js +23 -0
- package/dist/node_modules/lodash/_stackSet.js.map +1 -0
- package/dist/node_modules/lodash/_strictIndexOf.js +14 -0
- package/dist/node_modules/lodash/_strictIndexOf.js.map +1 -0
- package/dist/node_modules/lodash/_stringToArray.js +17 -0
- package/dist/node_modules/lodash/_stringToArray.js.map +1 -0
- package/dist/node_modules/lodash/_stringToPath.js +17 -0
- package/dist/node_modules/lodash/_stringToPath.js.map +1 -0
- package/dist/node_modules/lodash/_toKey.js +17 -0
- package/dist/node_modules/lodash/_toKey.js.map +1 -0
- package/dist/node_modules/lodash/_toSource.js +22 -0
- package/dist/node_modules/lodash/_toSource.js.map +1 -0
- package/dist/node_modules/lodash/_trimmedEndIndex.js +15 -0
- package/dist/node_modules/lodash/_trimmedEndIndex.js.map +1 -0
- package/dist/node_modules/lodash/_unicodeToArray.js +24 -0
- package/dist/node_modules/lodash/_unicodeToArray.js.map +1 -0
- package/dist/node_modules/lodash/constant.js +15 -0
- package/dist/node_modules/lodash/constant.js.map +1 -0
- package/dist/node_modules/lodash/debounce.js +57 -0
- package/dist/node_modules/lodash/debounce.js.map +1 -0
- package/dist/node_modules/lodash/eq.js +13 -0
- package/dist/node_modules/lodash/eq.js.map +1 -0
- package/dist/node_modules/lodash/every.js +20 -0
- package/dist/node_modules/lodash/every.js.map +1 -0
- package/dist/node_modules/lodash/find.js +12 -0
- package/dist/node_modules/lodash/find.js.map +1 -0
- package/dist/node_modules/lodash/findIndex.js +20 -0
- package/dist/node_modules/lodash/findIndex.js.map +1 -0
- package/dist/node_modules/lodash/flatMap.js +16 -0
- package/dist/node_modules/lodash/flatMap.js.map +1 -0
- package/dist/node_modules/lodash/get.js +16 -0
- package/dist/node_modules/lodash/get.js.map +1 -0
- package/dist/node_modules/lodash/hasIn.js +16 -0
- package/dist/node_modules/lodash/hasIn.js.map +1 -0
- package/dist/node_modules/lodash/identity.js +13 -0
- package/dist/node_modules/lodash/identity.js.map +1 -0
- package/dist/node_modules/lodash/isArguments.js +17 -0
- package/dist/node_modules/lodash/isArguments.js.map +1 -0
- package/dist/node_modules/lodash/isArray.js +10 -0
- package/dist/node_modules/lodash/isArray.js.map +1 -0
- package/dist/node_modules/lodash/isArrayLike.js +16 -0
- package/dist/node_modules/lodash/isArrayLike.js.map +1 -0
- package/dist/node_modules/lodash/isBoolean.js +16 -0
- package/dist/node_modules/lodash/isBoolean.js.map +1 -0
- package/dist/node_modules/lodash/isBuffer.js +13 -0
- package/dist/node_modules/lodash/isBuffer.js.map +1 -0
- package/dist/node_modules/lodash/isEqual.js +15 -0
- package/dist/node_modules/lodash/isEqual.js.map +1 -0
- package/dist/node_modules/lodash/isFunction.js +18 -0
- package/dist/node_modules/lodash/isFunction.js.map +1 -0
- package/dist/node_modules/lodash/isLength.js +14 -0
- package/dist/node_modules/lodash/isLength.js.map +1 -0
- package/dist/node_modules/lodash/isNaN.js +15 -0
- package/dist/node_modules/lodash/isNaN.js.map +1 -0
- package/dist/node_modules/lodash/isNil.js +13 -0
- package/dist/node_modules/lodash/isNil.js.map +1 -0
- package/dist/node_modules/lodash/isNumber.js +16 -0
- package/dist/node_modules/lodash/isNumber.js.map +1 -0
- package/dist/node_modules/lodash/isObject.js +14 -0
- package/dist/node_modules/lodash/isObject.js.map +1 -0
- package/dist/node_modules/lodash/isObjectLike.js +13 -0
- package/dist/node_modules/lodash/isObjectLike.js.map +1 -0
- package/dist/node_modules/lodash/isPlainObject.js +21 -0
- package/dist/node_modules/lodash/isPlainObject.js.map +1 -0
- package/dist/node_modules/lodash/isString.js +17 -0
- package/dist/node_modules/lodash/isString.js.map +1 -0
- package/dist/node_modules/lodash/isSymbol.js +16 -0
- package/dist/node_modules/lodash/isSymbol.js.map +1 -0
- package/dist/node_modules/lodash/isTypedArray.js +14 -0
- package/dist/node_modules/lodash/isTypedArray.js.map +1 -0
- package/dist/node_modules/lodash/keys.js +17 -0
- package/dist/node_modules/lodash/keys.js.map +1 -0
- package/dist/node_modules/lodash/last.js +14 -0
- package/dist/node_modules/lodash/last.js.map +1 -0
- package/dist/node_modules/lodash/map.js +18 -0
- package/dist/node_modules/lodash/map.js.map +1 -0
- package/dist/node_modules/lodash/mapValues.js +20 -0
- package/dist/node_modules/lodash/mapValues.js.map +1 -0
- package/dist/node_modules/lodash/max.js +17 -0
- package/dist/node_modules/lodash/max.js.map +1 -0
- package/dist/node_modules/lodash/memoize.js +22 -0
- package/dist/node_modules/lodash/memoize.js.map +1 -0
- package/dist/node_modules/lodash/min.js +17 -0
- package/dist/node_modules/lodash/min.js.map +1 -0
- package/dist/node_modules/lodash/noop.js +11 -0
- package/dist/node_modules/lodash/noop.js.map +1 -0
- package/dist/node_modules/lodash/now.js +14 -0
- package/dist/node_modules/lodash/now.js.map +1 -0
- package/dist/node_modules/lodash/property.js +18 -0
- package/dist/node_modules/lodash/property.js.map +1 -0
- package/dist/node_modules/lodash/range.js +11 -0
- package/dist/node_modules/lodash/range.js.map +1 -0
- package/dist/node_modules/lodash/some.js +20 -0
- package/dist/node_modules/lodash/some.js.map +1 -0
- package/dist/node_modules/lodash/sortBy.js +19 -0
- package/dist/node_modules/lodash/sortBy.js.map +1 -0
- package/dist/node_modules/lodash/stubArray.js +13 -0
- package/dist/node_modules/lodash/stubArray.js.map +1 -0
- package/dist/node_modules/lodash/stubFalse.js +13 -0
- package/dist/node_modules/lodash/stubFalse.js.map +1 -0
- package/dist/node_modules/lodash/throttle.js +22 -0
- package/dist/node_modules/lodash/throttle.js.map +1 -0
- package/dist/node_modules/lodash/toFinite.js +15 -0
- package/dist/node_modules/lodash/toFinite.js.map +1 -0
- package/dist/node_modules/lodash/toInteger.js +16 -0
- package/dist/node_modules/lodash/toInteger.js.map +1 -0
- package/dist/node_modules/lodash/toNumber.js +26 -0
- package/dist/node_modules/lodash/toNumber.js.map +1 -0
- package/dist/node_modules/lodash/toString.js +15 -0
- package/dist/node_modules/lodash/toString.js.map +1 -0
- package/dist/node_modules/lodash/uniqBy.js +16 -0
- package/dist/node_modules/lodash/uniqBy.js.map +1 -0
- package/dist/node_modules/lodash/upperFirst.js +11 -0
- package/dist/node_modules/lodash/upperFirst.js.map +1 -0
- package/dist/node_modules/object-assign/index.js +41 -0
- package/dist/node_modules/object-assign/index.js.map +1 -0
- package/dist/node_modules/prop-types/checkPropTypes.js +46 -0
- package/dist/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/dist/node_modules/prop-types/factoryWithThrowingShims.js +49 -0
- package/dist/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +272 -0
- package/dist/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/dist/node_modules/prop-types/index.js +16 -0
- package/dist/node_modules/prop-types/index.js.map +1 -0
- package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js +10 -0
- package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/dist/node_modules/prop-types/lib/has.js +10 -0
- package/dist/node_modules/prop-types/lib/has.js.map +1 -0
- package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +84 -0
- package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +64 -0
- package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/dist/node_modules/prop-types/node_modules/react-is/index.js +12 -0
- package/dist/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
- package/dist/node_modules/react-is/cjs/react-is.development.js +87 -0
- package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/dist/node_modules/react-is/cjs/react-is.production.min.js +65 -0
- package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/dist/node_modules/react-is/index.js +12 -0
- package/dist/node_modules/react-is/index.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/Animate.js +374 -0
- package/dist/node_modules/react-smooth/es6/Animate.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/AnimateManager.js +73 -0
- package/dist/node_modules/react-smooth/es6/AnimateManager.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/configUpdate.js +173 -0
- package/dist/node_modules/react-smooth/es6/configUpdate.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/easing.js +152 -0
- package/dist/node_modules/react-smooth/es6/easing.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/index.js +9 -0
- package/dist/node_modules/react-smooth/es6/index.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/setRafTimeout.js +14 -0
- package/dist/node_modules/react-smooth/es6/setRafTimeout.js.map +1 -0
- package/dist/node_modules/react-smooth/es6/util.js +92 -0
- package/dist/node_modules/react-smooth/es6/util.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/Bar.js +387 -0
- package/dist/node_modules/recharts/es6/cartesian/Bar.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/Brush.js +499 -0
- package/dist/node_modules/recharts/es6/cartesian/Brush.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js +338 -0
- package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js +305 -0
- package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js +243 -0
- package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/Line.js +473 -0
- package/dist/node_modules/recharts/es6/cartesian/Line.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js +173 -0
- package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js +178 -0
- package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js +254 -0
- package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/XAxis.js +144 -0
- package/dist/node_modules/recharts/es6/cartesian/XAxis.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/YAxis.js +143 -0
- package/dist/node_modules/recharts/es6/cartesian/YAxis.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js +18 -0
- package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js.map +1 -0
- package/dist/node_modules/recharts/es6/cartesian/getTicks.js +121 -0
- package/dist/node_modules/recharts/es6/cartesian/getTicks.js.map +1 -0
- package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js +101 -0
- package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js.map +1 -0
- package/dist/node_modules/recharts/es6/chart/LineChart.js +22 -0
- package/dist/node_modules/recharts/es6/chart/LineChart.js.map +1 -0
- package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js +1245 -0
- package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/Cell.js +9 -0
- package/dist/node_modules/recharts/es6/component/Cell.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/Cursor.js +93 -0
- package/dist/node_modules/recharts/es6/component/Cursor.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js +237 -0
- package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js +171 -0
- package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/Label.js +353 -0
- package/dist/node_modules/recharts/es6/component/Label.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/LabelList.js +166 -0
- package/dist/node_modules/recharts/es6/component/LabelList.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/Legend.js +234 -0
- package/dist/node_modules/recharts/es6/component/Legend.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js +187 -0
- package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/Text.js +225 -0
- package/dist/node_modules/recharts/es6/component/Text.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/Tooltip.js +182 -0
- package/dist/node_modules/recharts/es6/component/Tooltip.js.map +1 -0
- package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js +198 -0
- package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js.map +1 -0
- package/dist/node_modules/recharts/es6/container/Layer.js +40 -0
- package/dist/node_modules/recharts/es6/container/Layer.js.map +1 -0
- package/dist/node_modules/recharts/es6/container/Surface.js +60 -0
- package/dist/node_modules/recharts/es6/container/Surface.js.map +1 -0
- package/dist/node_modules/recharts/es6/context/chartLayoutContext.js +57 -0
- package/dist/node_modules/recharts/es6/context/chartLayoutContext.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Cross.js +112 -0
- package/dist/node_modules/recharts/es6/shape/Cross.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Curve.js +136 -0
- package/dist/node_modules/recharts/es6/shape/Curve.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Dot.js +27 -0
- package/dist/node_modules/recharts/es6/shape/Dot.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Rectangle.js +205 -0
- package/dist/node_modules/recharts/es6/shape/Rectangle.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Sector.js +192 -0
- package/dist/node_modules/recharts/es6/shape/Sector.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Symbols.js +143 -0
- package/dist/node_modules/recharts/es6/shape/Symbols.js.map +1 -0
- package/dist/node_modules/recharts/es6/shape/Trapezoid.js +175 -0
- package/dist/node_modules/recharts/es6/shape/Trapezoid.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js +181 -0
- package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/BarUtils.js +112 -0
- package/dist/node_modules/recharts/es6/util/BarUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/CartesianUtils.js +234 -0
- package/dist/node_modules/recharts/es6/util/CartesianUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/ChartUtils.js +562 -0
- package/dist/node_modules/recharts/es6/util/ChartUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js +70 -0
- package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/DOMUtils.js +108 -0
- package/dist/node_modules/recharts/es6/util/DOMUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/DataUtils.js +57 -0
- package/dist/node_modules/recharts/es6/util/DataUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js +58 -0
- package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/Events.js +7 -0
- package/dist/node_modules/recharts/es6/util/Events.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/Global.js +21 -0
- package/dist/node_modules/recharts/es6/util/Global.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js +9 -0
- package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/LogUtils.js +15 -0
- package/dist/node_modules/recharts/es6/util/LogUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/PolarUtils.js +116 -0
- package/dist/node_modules/recharts/es6/util/PolarUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/ReactUtils.js +137 -0
- package/dist/node_modules/recharts/es6/util/ReactUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js +181 -0
- package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/ShallowEqual.js +10 -0
- package/dist/node_modules/recharts/es6/util/ShallowEqual.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/TickUtils.js +31 -0
- package/dist/node_modules/recharts/es6/util/TickUtils.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/calculateViewBox.js +25 -0
- package/dist/node_modules/recharts/es6/util/calculateViewBox.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js +23 -0
- package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js +16 -0
- package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js +17 -0
- package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js +12 -0
- package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/getLegendProps.js +88 -0
- package/dist/node_modules/recharts/es6/util/getLegendProps.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js +13 -0
- package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js +12 -0
- package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/tooltip/translate.js +87 -0
- package/dist/node_modules/recharts/es6/util/tooltip/translate.js.map +1 -0
- package/dist/node_modules/recharts/es6/util/types.js +43 -0
- package/dist/node_modules/recharts/es6/util/types.js.map +1 -0
- package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js +132 -0
- package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js.map +1 -0
- package/dist/node_modules/recharts-scale/es6/index.js +1 -0
- package/dist/node_modules/recharts-scale/es6/util/arithmetic.js +32 -0
- package/dist/node_modules/recharts-scale/es6/util/arithmetic.js.map +1 -0
- package/dist/node_modules/recharts-scale/es6/util/utils.js +79 -0
- package/dist/node_modules/recharts-scale/es6/util/utils.js.map +1 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +1716 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
- package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js +13 -0
- package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js.map +1 -0
- package/dist/node_modules/victory-vendor/es/d3-scale.js +53 -0
- package/dist/node_modules/victory-vendor/es/d3-scale.js.map +1 -0
- package/package.json +3 -3
- package/dist/mybodyshield/pages/AdminAiinsightsPage.js +0 -161
- package/dist/mybodyshield/pages/AdminAiinsightsPage.js.map +0 -1
- package/dist/mybodyshield/pages/AdminAnalyticsPage.js +0 -193
- package/dist/mybodyshield/pages/AdminAnalyticsPage.js.map +0 -1
- package/dist/mybodyshield/pages/AdminComplianceReportsPage.js +0 -214
- package/dist/mybodyshield/pages/AdminComplianceReportsPage.js.map +0 -1
- package/dist/mybodyshield/pages/AdminDashboardPage.js +0 -186
- package/dist/mybodyshield/pages/AdminDashboardPage.js.map +0 -1
- package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js +0 -252
- package/dist/mybodyshield/pages/AdminOrganizationManagementPage.js.map +0 -1
- package/dist/mybodyshield/pages/AdminSystemSettingsPage.js +0 -159
- package/dist/mybodyshield/pages/AdminSystemSettingsPage.js.map +0 -1
- package/dist/mybodyshield/pages/AdminUserManagementPage.js +0 -208
- package/dist/mybodyshield/pages/AdminUserManagementPage.js.map +0 -1
- package/dist/mybodyshield/pages/FitnessAssessmentsPage.js +0 -194
- package/dist/mybodyshield/pages/FitnessAssessmentsPage.js.map +0 -1
- package/dist/mybodyshield/pages/FitnessClientDetailsPage.js +0 -192
- package/dist/mybodyshield/pages/FitnessClientDetailsPage.js.map +0 -1
- package/dist/mybodyshield/pages/FitnessClientManagementPage.js +0 -128
- package/dist/mybodyshield/pages/FitnessClientManagementPage.js.map +0 -1
- package/dist/mybodyshield/pages/FitnessDashboardPage.js +0 -156
- package/dist/mybodyshield/pages/FitnessDashboardPage.js.map +0 -1
- package/dist/mybodyshield/pages/FitnessReportsPage.js +0 -138
- package/dist/mybodyshield/pages/FitnessReportsPage.js.map +0 -1
- package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js +0 -176
- package/dist/mybodyshield/pages/FitnessWorkoutPlansPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientAppointmentsPage.js +0 -132
- package/dist/mybodyshield/pages/PatientAppointmentsPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientDashboardPage.js +0 -190
- package/dist/mybodyshield/pages/PatientDashboardPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js +0 -137
- package/dist/mybodyshield/pages/PatientFitnessTrackingPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientHealthGoalsPage.js +0 -131
- package/dist/mybodyshield/pages/PatientHealthGoalsPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientHealthOverviewPage.js +0 -273
- package/dist/mybodyshield/pages/PatientHealthOverviewPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientLabResultsPage.js +0 -133
- package/dist/mybodyshield/pages/PatientLabResultsPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientMedicationsPage.js +0 -158
- package/dist/mybodyshield/pages/PatientMedicationsPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientMentalHealthPage.js +0 -152
- package/dist/mybodyshield/pages/PatientMentalHealthPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js +0 -141
- package/dist/mybodyshield/pages/PatientNutritionTrackingPage.js.map +0 -1
- package/dist/mybodyshield/pages/PatientVitalSignsPage.js +0 -160
- package/dist/mybodyshield/pages/PatientVitalSignsPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderCalendarPage.js +0 -127
- package/dist/mybodyshield/pages/ProviderCalendarPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderCarePlansPage.js +0 -153
- package/dist/mybodyshield/pages/ProviderCarePlansPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js +0 -174
- package/dist/mybodyshield/pages/ProviderClinicalToolsPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderDashboardPage.js +0 -154
- package/dist/mybodyshield/pages/ProviderDashboardPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js +0 -295
- package/dist/mybodyshield/pages/ProviderPatientDetailsPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderPatientManagementPage.js +0 -133
- package/dist/mybodyshield/pages/ProviderPatientManagementPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js +0 -138
- package/dist/mybodyshield/pages/ProviderPrescriptionsPage.js.map +0 -1
- package/dist/mybodyshield/pages/ProviderReportsPage.js +0 -149
- package/dist/mybodyshield/pages/ProviderReportsPage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedAppointmentsPage.js +0 -129
- package/dist/mybodyshield/pages/SharedAppointmentsPage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedCommunityPage.js +0 -152
- package/dist/mybodyshield/pages/SharedCommunityPage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js +0 -165
- package/dist/mybodyshield/pages/SharedEmergencyAlertsPage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedEmergencyPage.js +0 -183
- package/dist/mybodyshield/pages/SharedEmergencyPage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js +0 -159
- package/dist/mybodyshield/pages/SharedHealthAnalyticsPage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedMarketplacePage.js +0 -193
- package/dist/mybodyshield/pages/SharedMarketplacePage.js.map +0 -1
- package/dist/mybodyshield/pages/SharedMessagesPage.js +0 -156
- package/dist/mybodyshield/pages/SharedMessagesPage.js.map +0 -1
- package/dist/mybodyshield/pages/WellnessAssessmentsPage.js +0 -147
- package/dist/mybodyshield/pages/WellnessAssessmentsPage.js.map +0 -1
- package/dist/mybodyshield/pages/WellnessClientsPage.js +0 -182
- package/dist/mybodyshield/pages/WellnessClientsPage.js.map +0 -1
- package/dist/mybodyshield/pages/WellnessDashboardPage.js +0 -136
- package/dist/mybodyshield/pages/WellnessDashboardPage.js.map +0 -1
- package/dist/mybodyshield/pages/WellnessProgramsPage.js +0 -140
- package/dist/mybodyshield/pages/WellnessProgramsPage.js.map +0 -1
- package/dist/mybodyshield/providers/MyBodyShieldProvider.js +0 -27
- package/dist/mybodyshield/providers/MyBodyShieldProvider.js.map +0 -1
- package/dist/mybodyshield/store/mybodyshieldStore.js +0 -710
- package/dist/mybodyshield/store/mybodyshieldStore.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NutritionPage.js","names":[],"sources":["../../../../src/mybodyshield/pages/nutrition/NutritionPage.tsx"],"sourcesContent":["/**\n * Nutrition — plans, meal logging and daily macro targets.\n * @module mybodyshield/pages/nutrition\n *\n * Three tabs, all wired to the real `myb*` nutrition contract (no mock data):\n * - Today: daily macro roll-up (calories ring + macro bar + per-macro meters)\n * and the meals logged today, with inline \"Log meal\".\n * - Plan: the member's active nutrition plan (targets, dates, notes) with\n * create / edit-targets dialogs.\n * - Meals: the full meal log, filterable by meal type, offset-paginated.\n */\n\nimport { useMemo, useState, type ReactNode } from 'react';\nimport {\n Flame,\n ClipboardList,\n UtensilsCrossed,\n Salad,\n Plus,\n Trash2,\n Pencil,\n Beef,\n Wheat,\n Droplet,\n} from 'lucide-react';\nimport {\n Button,\n Input,\n Label,\n Textarea,\n Select,\n SelectTrigger,\n SelectContent,\n SelectItem,\n SelectValue,\n GlassCard,\n ResponsiveDialog,\n ResponsiveDialogContent,\n ResponsiveDialogHeader,\n ResponsiveDialogTitle,\n ResponsiveDialogDescription,\n ResponsiveDialogFooter,\n} from '@burdenoff/fe-libs/ui';\nimport {\n PageLayout,\n Tabs,\n type TabItem,\n StatusBadge,\n MetricsCard,\n DataTable,\n type Column,\n FilterTabs,\n type FilterOption,\n Pagination,\n EmptyState,\n LoadingView,\n ErrorView,\n Section,\n} from '../../components';\nimport {\n useMybDailyMacros,\n useMybActiveNutritionPlan,\n useMybMeals,\n useMybCreateNutritionPlan,\n useMybUpdateNutritionPlan,\n useMybLogMeal,\n useMybDeleteMeal,\n useOffsetPager,\n} from '../../hooks';\nimport type { MybMealType, MybGoalType, MybMealLog } from '../../types';\nimport {\n formatKcal,\n formatGrams,\n formatNumber,\n formatDate,\n formatRelativeTime,\n formatEnumLabel,\n} from '../../utils/formatters';\nimport { Meter, ProgressRing, MacroBar, MacroLegend } from '../_shared/visuals';\n\n// ---------------------------------------------------------------------------\n// Constants & helpers\n// ---------------------------------------------------------------------------\n\ntype NutritionTab = 'today' | 'plan' | 'meals';\ntype MealFilterValue = 'ALL' | MybMealType;\n\nconst PAGE_SIZE = 25;\n\nconst MEAL_TYPES: MybMealType[] = ['BREAKFAST', 'LUNCH', 'DINNER', 'SNACK'];\nconst GOAL_TYPES: MybGoalType[] = [\n 'WEIGHT_LOSS',\n 'MUSCLE_GAIN',\n 'STRENGTH',\n 'ENDURANCE',\n 'MOBILITY',\n 'GENERAL_FITNESS',\n];\n\nconst TAB_ITEMS: TabItem<NutritionTab>[] = [\n { value: 'today', label: 'Today', icon: <Flame className=\"h-4 w-4\" /> },\n { value: 'plan', label: 'Plan', icon: <ClipboardList className=\"h-4 w-4\" /> },\n { value: 'meals', label: 'Meals', icon: <UtensilsCrossed className=\"h-4 w-4\" /> },\n];\n\nconst MEAL_FILTER_OPTIONS: FilterOption<MealFilterValue>[] = [\n { value: 'ALL', label: 'All' },\n ...MEAL_TYPES.map((t) => ({ value: t, label: formatEnumLabel(t) })),\n];\n\n/** Parse a numeric text field: empty → undefined, else the finite number. */\nconst numOrUndef = (raw: string): number | undefined => {\n const t = raw.trim();\n if (!t) return undefined;\n const n = Number(t);\n return Number.isFinite(n) ? n : undefined;\n};\n\n/** Render a positive number back into a text-input value ('' for 0/unset). */\nconst numToStr = (n: number | null | undefined): string => (n ? String(n) : '');\n\n/** ISO DateTime → yyyy-mm-dd for a native date input ('' when absent/invalid). */\nconst toDateInput = (iso: string | null | undefined): string => {\n if (!iso) return '';\n const d = new Date(iso);\n return Number.isNaN(d.getTime()) ? '' : d.toISOString().slice(0, 10);\n};\n\n/** yyyy-mm-dd date-input value → ISO string (undefined when empty). */\nconst fromDateInput = (v: string): string | undefined =>\n v ? new Date(v).toISOString() : undefined;\n\ninterface MealForm {\n name: string;\n mealType: MybMealType;\n calories: string;\n proteinG: string;\n carbsG: string;\n fatG: string;\n servings: string;\n}\n\nconst EMPTY_MEAL: MealForm = {\n name: '',\n mealType: 'BREAKFAST',\n calories: '',\n proteinG: '',\n carbsG: '',\n fatG: '',\n servings: '',\n};\n\ninterface PlanForm {\n name: string;\n goalType: MybGoalType;\n calorieTarget: string;\n proteinTarget: string;\n carbsTarget: string;\n fatTarget: string;\n startDate: string;\n endDate: string;\n notes: string;\n}\n\nconst EMPTY_PLAN: PlanForm = {\n name: '',\n goalType: 'GENERAL_FITNESS',\n calorieTarget: '',\n proteinTarget: '',\n carbsTarget: '',\n fatTarget: '',\n startDate: '',\n endDate: '',\n notes: '',\n};\n\n// ---------------------------------------------------------------------------\n// Page\n// ---------------------------------------------------------------------------\n\nexport function NutritionPage() {\n const [tab, setTab] = useState<NutritionTab>('today');\n\n // Data ---------------------------------------------------------------------\n const macros = useMybDailyMacros();\n const activePlan = useMybActiveNutritionPlan();\n const todayMealsQuery = useMybMeals({});\n\n const [mealFilter, setMealFilter] = useState<MealFilterValue>('ALL');\n const pager = useOffsetPager(PAGE_SIZE);\n const mealsQuery = useMybMeals({\n mealType: mealFilter === 'ALL' ? undefined : mealFilter,\n pagination: { limit: PAGE_SIZE, offset: pager.offset },\n });\n\n // Mutations ----------------------------------------------------------------\n const logMeal = useMybLogMeal();\n const deleteMeal = useMybDeleteMeal();\n const createPlan = useMybCreateNutritionPlan();\n const updatePlan = useMybUpdateNutritionPlan();\n\n // Local UI state -----------------------------------------------------------\n const [actionError, setActionError] = useState<string | null>(null);\n const [pendingDeleteId, setPendingDeleteId] = useState<string | null>(null);\n\n const [mealOpen, setMealOpen] = useState(false);\n const [mealForm, setMealForm] = useState<MealForm>(EMPTY_MEAL);\n const [mealErr, setMealErr] = useState<string | null>(null);\n\n const [planOpen, setPlanOpen] = useState(false);\n const [planMode, setPlanMode] = useState<'create' | 'edit'>('create');\n const [planForm, setPlanForm] = useState<PlanForm>(EMPTY_PLAN);\n const [planErr, setPlanErr] = useState<string | null>(null);\n\n const plan = activePlan.data ?? null;\n\n // Derived: meals logged today (client-side filter on loggedAt) --------------\n const todayMeals = useMemo(() => {\n const rows = todayMealsQuery.data?.items ?? [];\n const todayKey = new Date().toDateString();\n return rows\n .filter((m) => {\n const d = new Date(m.loggedAt);\n return !Number.isNaN(d.getTime()) && d.toDateString() === todayKey;\n })\n .sort((a, b) => new Date(b.loggedAt).getTime() - new Date(a.loggedAt).getTime());\n }, [todayMealsQuery.data]);\n\n const mealRows = mealsQuery.data?.items ?? [];\n\n // Handlers -----------------------------------------------------------------\n const onMealFilterChange = (v: MealFilterValue) => {\n setMealFilter(v);\n pager.reset();\n };\n\n const openLogMeal = () => {\n setMealForm(EMPTY_MEAL);\n setMealErr(null);\n setMealOpen(true);\n };\n\n const openCreatePlan = () => {\n setPlanMode('create');\n setPlanForm(EMPTY_PLAN);\n setPlanErr(null);\n setPlanOpen(true);\n };\n\n const openEditPlan = () => {\n if (!plan) return;\n setPlanMode('edit');\n setPlanForm({\n name: plan.name,\n goalType: plan.goalType,\n calorieTarget: numToStr(plan.calorieTarget),\n proteinTarget: numToStr(plan.proteinTarget),\n carbsTarget: numToStr(plan.carbsTarget),\n fatTarget: numToStr(plan.fatTarget),\n startDate: toDateInput(plan.startDate),\n endDate: toDateInput(plan.endDate),\n notes: plan.notes ?? '',\n });\n setPlanErr(null);\n setPlanOpen(true);\n };\n\n const submitMeal = async () => {\n if (!mealForm.name.trim()) {\n setMealErr('Meal name is required.');\n return;\n }\n setMealErr(null);\n try {\n await logMeal.mutateAsync({\n name: mealForm.name.trim(),\n mealType: mealForm.mealType,\n calories: numOrUndef(mealForm.calories),\n proteinG: numOrUndef(mealForm.proteinG),\n carbsG: numOrUndef(mealForm.carbsG),\n fatG: numOrUndef(mealForm.fatG),\n servings: numOrUndef(mealForm.servings),\n planId: plan?.id ?? undefined,\n loggedAt: new Date().toISOString(),\n });\n setMealOpen(false);\n setMealForm(EMPTY_MEAL);\n } catch (e) {\n setMealErr(e instanceof Error ? e.message : 'Failed to log meal.');\n }\n };\n\n const submitPlan = async () => {\n if (!planForm.name.trim()) {\n setPlanErr('Plan name is required.');\n return;\n }\n setPlanErr(null);\n const shared = {\n goalType: planForm.goalType,\n calorieTarget: numOrUndef(planForm.calorieTarget),\n proteinTarget: numOrUndef(planForm.proteinTarget),\n carbsTarget: numOrUndef(planForm.carbsTarget),\n fatTarget: numOrUndef(planForm.fatTarget),\n startDate: fromDateInput(planForm.startDate),\n endDate: fromDateInput(planForm.endDate),\n notes: planForm.notes.trim() || undefined,\n };\n try {\n if (planMode === 'edit' && plan) {\n await updatePlan.mutateAsync({\n id: plan.id,\n input: { name: planForm.name.trim(), ...shared },\n });\n } else {\n await createPlan.mutateAsync({ name: planForm.name.trim(), ...shared });\n }\n setPlanOpen(false);\n } catch (e) {\n setPlanErr(e instanceof Error ? e.message : 'Failed to save plan.');\n }\n };\n\n const handleDeleteMeal = async (id: string) => {\n if (!window.confirm('Delete this meal log? This cannot be undone.')) return;\n setPendingDeleteId(id);\n setActionError(null);\n try {\n await deleteMeal.mutateAsync(id);\n } catch (e) {\n setActionError(e instanceof Error ? e.message : 'Failed to delete meal.');\n } finally {\n setPendingDeleteId(null);\n }\n };\n\n const planPending = planMode === 'edit' ? updatePlan.isPending : createPlan.isPending;\n\n // Meals-tab table columns --------------------------------------------------\n const mealColumns: Column<MybMealLog>[] = [\n {\n key: 'name',\n header: 'Meal',\n render: (row) => <span className=\"font-medium text-text-primary\">{row.name}</span>,\n },\n {\n key: 'mealType',\n header: 'Type',\n render: (row) => <StatusBadge status={row.mealType} />,\n },\n {\n key: 'calories',\n header: 'Calories',\n align: 'right',\n sortValue: (row) => row.calories,\n render: (row) => <span className=\"tabular-nums\">{formatKcal(row.calories)}</span>,\n },\n {\n key: 'proteinG',\n header: 'Protein',\n align: 'right',\n hideOnMobile: true,\n sortValue: (row) => row.proteinG,\n render: (row) => (\n <span className=\"tabular-nums text-text-secondary\">{formatGrams(row.proteinG)}</span>\n ),\n },\n {\n key: 'carbsG',\n header: 'Carbs',\n align: 'right',\n hideOnMobile: true,\n sortValue: (row) => row.carbsG,\n render: (row) => (\n <span className=\"tabular-nums text-text-secondary\">{formatGrams(row.carbsG)}</span>\n ),\n },\n {\n key: 'fatG',\n header: 'Fat',\n align: 'right',\n hideOnMobile: true,\n sortValue: (row) => row.fatG,\n render: (row) => (\n <span className=\"tabular-nums text-text-secondary\">{formatGrams(row.fatG)}</span>\n ),\n },\n {\n key: 'servings',\n header: 'Servings',\n align: 'right',\n sortValue: (row) => row.servings,\n render: (row) => <span className=\"tabular-nums\">{formatNumber(row.servings)}</span>,\n },\n {\n key: 'loggedAt',\n header: 'Logged',\n hideOnMobile: true,\n sortValue: (row) => new Date(row.loggedAt).getTime(),\n render: (row) => (\n <span className=\"text-text-secondary\">{formatRelativeTime(row.loggedAt)}</span>\n ),\n },\n {\n key: 'actions',\n header: '',\n align: 'right',\n render: (row) => (\n <Button\n variant=\"ghost\"\n size=\"icon-sm\"\n onClick={() => handleDeleteMeal(row.id)}\n disabled={pendingDeleteId === row.id}\n aria-label=\"Delete meal\"\n >\n <Trash2 className=\"h-4 w-4 text-status-error-text\" />\n </Button>\n ),\n },\n ];\n\n // Per-tab header actions ---------------------------------------------------\n const actions =\n tab === 'today' ? (\n <Button onClick={openLogMeal}>\n <Plus className=\"mr-1.5 h-4 w-4\" /> Log meal\n </Button>\n ) : tab === 'plan' ? (\n <div className=\"flex flex-wrap items-center gap-2\">\n {plan && (\n <Button variant=\"outline\" onClick={openEditPlan}>\n <Pencil className=\"mr-1.5 h-4 w-4\" /> Edit targets\n </Button>\n )}\n <Button onClick={openCreatePlan}>\n <Plus className=\"mr-1.5 h-4 w-4\" /> Create plan\n </Button>\n </div>\n ) : undefined;\n\n // -------------------------------------------------------------------------\n // Tab renderers\n // -------------------------------------------------------------------------\n\n const renderTodayTab = () => {\n if (macros.isLoading) return <LoadingView label=\"Loading today's nutrition…\" />;\n if (macros.isError) {\n return (\n <ErrorView message=\"We couldn't load your daily macros.\" onRetry={() => macros.refetch()} />\n );\n }\n const macroData = macros.data;\n if (!macroData) return <LoadingView label=\"Loading today's nutrition…\" />;\n\n const hasTarget = macroData.calorieTarget > 0;\n const hasConsumption = macroData.calories > 0 || todayMeals.length > 0;\n if (!hasTarget && !hasConsumption) {\n return (\n <EmptyState\n illustration=\"empty-data\"\n icon={<Salad className=\"h-10 w-10\" />}\n title=\"No nutrition tracked yet\"\n description=\"Activate a nutrition plan or log your first meal to start tracking daily macros.\"\n action={\n <Button onClick={openLogMeal}>\n <Plus className=\"mr-1.5 h-4 w-4\" /> Log meal\n </Button>\n }\n />\n );\n }\n\n const caloriePct = macroData.calorieTarget\n ? (macroData.calories / macroData.calorieTarget) * 100\n : 0;\n\n return (\n <div className=\"space-y-6\">\n <GlassCard treatment=\"glass\" className=\"p-6\">\n <div className=\"mb-4\">\n <h2 className=\"text-base font-semibold text-text-primary\">Today's macros</h2>\n <p className=\"mt-0.5 text-sm text-text-secondary\">\n Calories & macros logged against your active plan.\n </p>\n </div>\n <div className=\"flex flex-col gap-6 sm:flex-row sm:items-center\">\n <ProgressRing value={caloriePct} size={128} stroke={12}>\n <span className=\"text-xl font-bold tabular-nums text-text-primary\">\n {formatNumber(macroData.calories)}\n </span>\n <span className=\"text-xs text-text-tertiary\">\n / {formatNumber(macroData.calorieTarget)} kcal\n </span>\n </ProgressRing>\n <div className=\"flex-1 space-y-4\">\n <div className=\"space-y-2\">\n <MacroBar\n proteinG={macroData.proteinG}\n carbsG={macroData.carbsG}\n fatG={macroData.fatG}\n height={10}\n />\n <MacroLegend />\n </div>\n <div className=\"grid grid-cols-3 gap-3\">\n {(\n [\n ['Protein', macroData.proteinG, macroData.proteinTarget],\n ['Carbs', macroData.carbsG, macroData.carbsTarget],\n ['Fat', macroData.fatG, macroData.fatTarget],\n ] as const\n ).map(([label, val, target]) => (\n <div key={label} className=\"rounded-xl bg-bg-sunken/60 p-3\">\n <p className=\"text-xs text-text-tertiary\">{label}</p>\n <p className=\"mt-0.5 text-sm font-semibold tabular-nums text-text-primary\">\n {formatNumber(val)}\n <span className=\"text-xs font-normal text-text-tertiary\">\n {' '}\n / {formatNumber(target)} g\n </span>\n </p>\n <Meter value={target ? (val / target) * 100 : 0} height={4} className=\"mt-2\" />\n </div>\n ))}\n </div>\n </div>\n </div>\n </GlassCard>\n\n <Section title=\"Today's meals\" description=\"Everything you've logged today.\">\n {todayMealsQuery.isLoading ? (\n <LoadingView label=\"Loading meals…\" />\n ) : todayMealsQuery.isError ? (\n <ErrorView\n message=\"We couldn't load today's meals.\"\n onRetry={() => todayMealsQuery.refetch()}\n />\n ) : todayMeals.length === 0 ? (\n <EmptyState\n illustration=\"empty-data\"\n icon={<Salad className=\"h-10 w-10\" />}\n title=\"No meals logged today\"\n description=\"Use “Log meal” to record what you've eaten and keep your macros current.\"\n action={\n <Button onClick={openLogMeal}>\n <Plus className=\"mr-1.5 h-4 w-4\" /> Log meal\n </Button>\n }\n />\n ) : (\n <GlassCard treatment=\"plain\" className=\"divide-y divide-border-seam/60 px-4\">\n {todayMeals.map((m) => (\n <div key={m.id} className=\"flex items-center gap-3 py-3\">\n <StatusBadge status={m.mealType} />\n <div className=\"min-w-0 flex-1\">\n <p className=\"truncate text-sm font-medium text-text-primary\">{m.name}</p>\n <p className=\"text-xs text-text-tertiary\">\n {formatGrams(m.proteinG)} P · {formatGrams(m.carbsG)} C ·{' '}\n {formatGrams(m.fatG)} F · {formatNumber(m.servings)} serving\n {m.servings === 1 ? '' : 's'}\n </p>\n </div>\n <span className=\"shrink-0 text-sm font-semibold tabular-nums text-text-primary\">\n {formatKcal(m.calories)}\n </span>\n <Button\n variant=\"ghost\"\n size=\"icon-sm\"\n onClick={() => handleDeleteMeal(m.id)}\n disabled={pendingDeleteId === m.id}\n aria-label=\"Delete meal\"\n className=\"shrink-0\"\n >\n <Trash2 className=\"h-4 w-4 text-status-error-text\" />\n </Button>\n </div>\n ))}\n </GlassCard>\n )}\n </Section>\n </div>\n );\n };\n\n const renderPlanTab = () => {\n if (activePlan.isLoading) return <LoadingView label=\"Loading your nutrition plan…\" />;\n if (activePlan.isError) {\n return (\n <ErrorView\n message=\"We couldn't load your active nutrition plan.\"\n onRetry={() => activePlan.refetch()}\n />\n );\n }\n if (!plan) {\n return (\n <EmptyState\n illustration=\"empty-data\"\n icon={<ClipboardList className=\"h-10 w-10\" />}\n title=\"No active nutrition plan\"\n description=\"Create a nutrition plan to set your daily calorie and macro targets.\"\n action={\n <Button onClick={openCreatePlan}>\n <Plus className=\"mr-1.5 h-4 w-4\" /> Create plan\n </Button>\n }\n />\n );\n }\n\n const planStats: { icon: ReactNode; label: string; value: string }[] = [\n {\n icon: <Flame className=\"h-5 w-5\" />,\n label: 'Calorie target',\n value: plan.calorieTarget ? `${formatNumber(plan.calorieTarget)} kcal` : '—',\n },\n {\n icon: <Beef className=\"h-5 w-5\" />,\n label: 'Protein target',\n value: plan.proteinTarget ? formatGrams(plan.proteinTarget) : '—',\n },\n {\n icon: <Wheat className=\"h-5 w-5\" />,\n label: 'Carbs target',\n value: plan.carbsTarget ? formatGrams(plan.carbsTarget) : '—',\n },\n {\n icon: <Droplet className=\"h-5 w-5\" />,\n label: 'Fat target',\n value: plan.fatTarget ? formatGrams(plan.fatTarget) : '—',\n },\n ];\n\n return (\n <div className=\"space-y-6\">\n <GlassCard treatment=\"glass\" className=\"p-6\">\n <div className=\"flex flex-wrap items-start justify-between gap-3\">\n <div className=\"min-w-0\">\n <h2 className=\"text-lg font-semibold text-text-primary\">{plan.name}</h2>\n <div className=\"mt-2 flex flex-wrap items-center gap-2\">\n <StatusBadge status={plan.goalType} />\n {(plan.startDate || plan.endDate) && (\n <span className=\"text-sm text-text-secondary\">\n {formatDate(plan.startDate)} – {formatDate(plan.endDate)}\n </span>\n )}\n </div>\n </div>\n <Button variant=\"outline\" onClick={openEditPlan}>\n <Pencil className=\"mr-1.5 h-4 w-4\" /> Edit targets\n </Button>\n </div>\n </GlassCard>\n\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4\">\n {planStats.map((s) => (\n <MetricsCard key={s.label} icon={s.icon} value={s.value} label={s.label} />\n ))}\n </div>\n\n {plan.notes && (\n <Section title=\"Notes\">\n <GlassCard treatment=\"plain\" className=\"p-4\">\n <p className=\"whitespace-pre-wrap text-sm text-text-secondary\">{plan.notes}</p>\n </GlassCard>\n </Section>\n )}\n </div>\n );\n };\n\n const renderMealsTab = () => {\n if (mealsQuery.isLoading) return <LoadingView label=\"Loading meal log…\" />;\n if (mealsQuery.isError) {\n return (\n <ErrorView message=\"We couldn't load your meal log.\" onRetry={() => mealsQuery.refetch()} />\n );\n }\n\n return (\n <div className=\"space-y-4\">\n <FilterTabs\n options={MEAL_FILTER_OPTIONS}\n value={mealFilter}\n onChange={onMealFilterChange}\n />\n {mealRows.length === 0 ? (\n <EmptyState\n illustration=\"empty-data\"\n icon={<UtensilsCrossed className=\"h-10 w-10\" />}\n title={mealFilter === 'ALL' ? 'No meals logged yet' : 'No meals for this filter'}\n description={\n mealFilter === 'ALL'\n ? 'Log meals from the Today tab to build up your nutrition history.'\n : 'Try a different meal type, or log a meal to get started.'\n }\n action={\n <Button onClick={openLogMeal}>\n <Plus className=\"mr-1.5 h-4 w-4\" /> Log meal\n </Button>\n }\n />\n ) : (\n <>\n <DataTable\n columns={mealColumns}\n rows={mealRows}\n rowKey={(row) => row.id}\n defaultSort={{ key: 'loggedAt', dir: 'desc' }}\n />\n <Pagination\n page={pager.page}\n pageSize={PAGE_SIZE}\n itemCount={mealRows.length}\n hasMore={mealsQuery.data?.pageInfo?.hasMore ?? false}\n onPageChange={(t) => pager.onPageChange(t)}\n />\n </>\n )}\n </div>\n );\n };\n\n // -------------------------------------------------------------------------\n return (\n <PageLayout\n title=\"Nutrition\"\n description=\"Plans, meal logging and daily macro targets.\"\n actions={actions}\n >\n <Tabs items={TAB_ITEMS} value={tab} onChange={setTab} className=\"mb-6\" />\n\n {actionError && (\n <div className=\"mb-4 rounded-lg border border-status-error-text/40 bg-status-error-bg-subtle px-4 py-2 text-sm text-status-error-text\">\n {actionError}\n </div>\n )}\n\n {tab === 'today' && renderTodayTab()}\n {tab === 'plan' && renderPlanTab()}\n {tab === 'meals' && renderMealsTab()}\n\n {/* Log-meal dialog ---------------------------------------------------- */}\n <ResponsiveDialog open={mealOpen} onOpenChange={setMealOpen}>\n <ResponsiveDialogContent className=\"sm:max-w-lg\">\n <ResponsiveDialogHeader>\n <ResponsiveDialogTitle>Log a meal</ResponsiveDialogTitle>\n <ResponsiveDialogDescription>\n Record what you ate to update today's macros.\n </ResponsiveDialogDescription>\n </ResponsiveDialogHeader>\n\n <div className=\"space-y-4 py-2\">\n {mealErr && (\n <div className=\"rounded-lg border border-status-error-text/40 bg-status-error-bg-subtle px-3 py-2 text-sm text-status-error-text\">\n {mealErr}\n </div>\n )}\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-name\">Name</Label>\n <Input\n id=\"meal-name\"\n value={mealForm.name}\n onChange={(e) => setMealForm({ ...mealForm, name: e.target.value })}\n placeholder=\"Grilled chicken salad\"\n />\n </div>\n <div className=\"grid grid-cols-2 gap-3\">\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-type\">Meal type</Label>\n <Select\n value={mealForm.mealType}\n onValueChange={(v) =>\n // v is constrained to MEAL_TYPES rendered below.\n setMealForm({ ...mealForm, mealType: v as MybMealType })\n }\n >\n <SelectTrigger id=\"meal-type\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {MEAL_TYPES.map((t) => (\n <SelectItem key={t} value={t}>\n {formatEnumLabel(t)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-servings\">Servings</Label>\n <Input\n id=\"meal-servings\"\n type=\"number\"\n min={0}\n step=\"0.5\"\n value={mealForm.servings}\n onChange={(e) => setMealForm({ ...mealForm, servings: e.target.value })}\n placeholder=\"1\"\n />\n </div>\n </div>\n <div className=\"grid grid-cols-2 gap-3\">\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-calories\">Calories (kcal)</Label>\n <Input\n id=\"meal-calories\"\n type=\"number\"\n min={0}\n value={mealForm.calories}\n onChange={(e) => setMealForm({ ...mealForm, calories: e.target.value })}\n placeholder=\"0\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-protein\">Protein (g)</Label>\n <Input\n id=\"meal-protein\"\n type=\"number\"\n min={0}\n value={mealForm.proteinG}\n onChange={(e) => setMealForm({ ...mealForm, proteinG: e.target.value })}\n placeholder=\"0\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-carbs\">Carbs (g)</Label>\n <Input\n id=\"meal-carbs\"\n type=\"number\"\n min={0}\n value={mealForm.carbsG}\n onChange={(e) => setMealForm({ ...mealForm, carbsG: e.target.value })}\n placeholder=\"0\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"meal-fat\">Fat (g)</Label>\n <Input\n id=\"meal-fat\"\n type=\"number\"\n min={0}\n value={mealForm.fatG}\n onChange={(e) => setMealForm({ ...mealForm, fatG: e.target.value })}\n placeholder=\"0\"\n />\n </div>\n </div>\n </div>\n\n <ResponsiveDialogFooter>\n <Button\n variant=\"outline\"\n onClick={() => setMealOpen(false)}\n disabled={logMeal.isPending}\n >\n Cancel\n </Button>\n <Button onClick={submitMeal} disabled={logMeal.isPending}>\n {logMeal.isPending ? 'Logging…' : 'Log meal'}\n </Button>\n </ResponsiveDialogFooter>\n </ResponsiveDialogContent>\n </ResponsiveDialog>\n\n {/* Create / edit plan dialog ----------------------------------------- */}\n <ResponsiveDialog open={planOpen} onOpenChange={setPlanOpen}>\n <ResponsiveDialogContent className=\"sm:max-w-lg\">\n <ResponsiveDialogHeader>\n <ResponsiveDialogTitle>\n {planMode === 'edit' ? 'Edit nutrition targets' : 'Create nutrition plan'}\n </ResponsiveDialogTitle>\n <ResponsiveDialogDescription>\n {planMode === 'edit'\n ? 'Update your calorie and macro targets for this plan.'\n : 'Set your daily calorie and macro targets.'}\n </ResponsiveDialogDescription>\n </ResponsiveDialogHeader>\n\n <div className=\"space-y-4 py-2\">\n {planErr && (\n <div className=\"rounded-lg border border-status-error-text/40 bg-status-error-bg-subtle px-3 py-2 text-sm text-status-error-text\">\n {planErr}\n </div>\n )}\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-name\">Name</Label>\n <Input\n id=\"plan-name\"\n value={planForm.name}\n onChange={(e) => setPlanForm({ ...planForm, name: e.target.value })}\n placeholder=\"Lean bulk — Q3\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-goal\">Goal type</Label>\n <Select\n value={planForm.goalType}\n onValueChange={(v) =>\n // v is constrained to GOAL_TYPES rendered below.\n setPlanForm({ ...planForm, goalType: v as MybGoalType })\n }\n >\n <SelectTrigger id=\"plan-goal\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {GOAL_TYPES.map((g) => (\n <SelectItem key={g} value={g}>\n {formatEnumLabel(g)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"grid grid-cols-2 gap-3\">\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-calories\">Calorie target (kcal)</Label>\n <Input\n id=\"plan-calories\"\n type=\"number\"\n min={0}\n value={planForm.calorieTarget}\n onChange={(e) => setPlanForm({ ...planForm, calorieTarget: e.target.value })}\n placeholder=\"2400\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-protein\">Protein target (g)</Label>\n <Input\n id=\"plan-protein\"\n type=\"number\"\n min={0}\n value={planForm.proteinTarget}\n onChange={(e) => setPlanForm({ ...planForm, proteinTarget: e.target.value })}\n placeholder=\"180\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-carbs\">Carbs target (g)</Label>\n <Input\n id=\"plan-carbs\"\n type=\"number\"\n min={0}\n value={planForm.carbsTarget}\n onChange={(e) => setPlanForm({ ...planForm, carbsTarget: e.target.value })}\n placeholder=\"250\"\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-fat\">Fat target (g)</Label>\n <Input\n id=\"plan-fat\"\n type=\"number\"\n min={0}\n value={planForm.fatTarget}\n onChange={(e) => setPlanForm({ ...planForm, fatTarget: e.target.value })}\n placeholder=\"70\"\n />\n </div>\n </div>\n <div className=\"grid grid-cols-2 gap-3\">\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-start\">Start date</Label>\n <Input\n id=\"plan-start\"\n type=\"date\"\n value={planForm.startDate}\n onChange={(e) => setPlanForm({ ...planForm, startDate: e.target.value })}\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-end\">End date</Label>\n <Input\n id=\"plan-end\"\n type=\"date\"\n value={planForm.endDate}\n onChange={(e) => setPlanForm({ ...planForm, endDate: e.target.value })}\n />\n </div>\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"plan-notes\">Notes</Label>\n <Textarea\n id=\"plan-notes\"\n value={planForm.notes}\n onChange={(e) => setPlanForm({ ...planForm, notes: e.target.value })}\n placeholder=\"Coaching notes, refeed schedule, supplements…\"\n rows={3}\n />\n </div>\n </div>\n\n <ResponsiveDialogFooter>\n <Button variant=\"outline\" onClick={() => setPlanOpen(false)} disabled={planPending}>\n Cancel\n </Button>\n <Button onClick={submitPlan} disabled={planPending}>\n {planPending ? 'Saving…' : planMode === 'edit' ? 'Save targets' : 'Create plan'}\n </Button>\n </ResponsiveDialogFooter>\n </ResponsiveDialogContent>\n </ResponsiveDialog>\n </PageLayout>\n );\n}\n"],"mappings":"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"}
|