import { Add } from "@mui/icons-material"; import { Collapse, IconButton, Stack, Typography } from "@mui/material"; import Tooltip from "@mui/material/Tooltip"; import { LoadingPlaceholder } from "@/core/ui/LoadingWidget/LoadingWidget"; import { WgerContainerRightSidebar } from "@/core/ui/Widgets/Container"; import { useFetchNutritionalPlanQuery } from "@/components/Nutrition/queries"; import { MacrosPieChart } from "@/components/Nutrition/widgets/charts/MacrosPieChart"; import { NutritionDiaryChart } from "@/components/Nutrition/widgets/charts/NutritionDiaryChart"; import { DiaryOverview } from "@/components/Nutrition/widgets/DiaryOverview"; import { AddNutritionDiaryEntryFab } from "@/components/Nutrition/widgets/Fab"; import { MealForm } from "@/components/Nutrition/widgets/forms/MealForm"; import { MealDetail } from "@/components/Nutrition/widgets/MealDetail"; import { NutritionalValuesTable } from "@/components/Nutrition/widgets/NutritionalValuesTable"; import { PlanDetailDropdown } from "@/components/Nutrition/widgets/PlanDetailDropdown"; import { PlanSidebar } from "@/components/Nutrition/widgets/PlanSidebar"; import React, { useState } from "react"; import { useTranslation } from "react-i18next"; import { useParams } from "react-router-dom"; export const PlanDetail = () => { const [t] = useTranslation(); const params = useParams<{ planId: string }>(); const planId = params.planId ?? ''; if (planId === '') { return
Please pass a UUID as the nutritional plan id.
; } // eslint-disable-next-line react-hooks/rules-of-hooks const planQuery = useFetchNutritionalPlanQuery(planId); // eslint-disable-next-line react-hooks/rules-of-hooks const [expandedForm, setExpandedForm] = useState(false); const handleToggleExpandedForm = () => setExpandedForm(!expandedForm); const plan = planQuery.data!; if (planQuery.isLoading) { return{t('nutrition.addMeal')}