import BarChartIcon from "@mui/icons-material/BarChart"; import { Button, IconButton, Stack, Tooltip as MuiTooltip, Typography } from "@mui/material"; import { LoadingPlaceholder } from "@/core/ui/LoadingWidget/LoadingWidget"; import { WgerContainerFullWidth } from "@/core/ui/Widgets/Container"; import { WorkoutLog } from "@/components/Routines/models/WorkoutLog"; import { useRoutineDetailQuery, useRoutineLogData } from "@/components/Routines/queries"; import { ExerciseLog } from "@/components/Routines/widgets/LogWidgets"; import React from "react"; import { useTranslation } from "react-i18next"; import { Link, useParams } from "react-router-dom"; import { makeLink, WgerLink } from "@/core/lib/url"; export const WorkoutLogs = () => { const params = useParams<{ routineId: string }>(); const routineId = params.routineId ? parseInt(params.routineId) : 0; const [t, i18n] = useTranslation(); const routineLogDataQuery = useRoutineLogData(routineId); const routineQuery = useRoutineDetailQuery(routineId); if (routineLogDataQuery.isLoading || routineQuery.isLoading) { return ; } // Group by exercise let groupedWorkoutLogs: Map = new Map(); groupedWorkoutLogs = routineLogDataQuery.data!.reduce((r, routineLogData) => { routineLogData.logs.forEach(log => { const exerciseId = log.exerciseId; r.set(exerciseId, r.get(exerciseId) || []); r.get(exerciseId)!.push(log); }); return r; }, groupedWorkoutLogs); return ( } > {t('routines.logsFilterNote')} {routineQuery.data!.dayDataCurrentIteration.filter((dayData) => dayData.day !== null && !dayData.day.isRest).map((dayData) => {dayData.day!.name} {dayData.slots.map(slot => slot.exercises.map(exercise => ) )} )} ); };