import { Box, Button, Chip, Stack, Typography } from "@mui/material"; import Grid from "@mui/material/Grid"; import { WgerContainerRightSidebar } from "@/core/ui/Widgets/Container"; import { RenderLoadingQuery } from "@/core/ui/Widgets/RenderLoadingQuery"; import { MuscleOverview } from "@/components/Muscles/MuscleOverview"; import { useRoutineDetailQuery } from "@/components/Routines/queries"; import { RoutineDetailDropdown } from "@/components/Routines/widgets/RoutineDetailDropdown"; import { DayDetailsCard } from "@/components/Routines/widgets/RoutineDetailsCard"; import i18n from "@/i18n"; import React from "react"; import { useTranslation } from "react-i18next"; import { useParams } from "react-router-dom"; import { dateToLocale } from "@/core/lib/date"; import { makeLink, WgerLink } from "@/core/lib/url"; export const RoutineDetail = () => { const { t } = useTranslation(); const params = useParams<{ routineId: string }>(); const routineId = parseInt(params.routineId ?? ''); if (Number.isNaN(routineId)) { return
Please pass an integer as the routine id.
; } // eslint-disable-next-line react-hooks/rules-of-hooks const routineQuery = useRoutineDetailQuery(routineId); const routine = routineQuery.data; const subtitle = routine !== undefined ? `${dateToLocale(routine!.start)} - ${dateToLocale(routine!.end)} (${routine?.durationText})` : ''; const chip = routine?.isTemplate ?