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 =>
)
)}
)}
);
};