feat: show trainer's groups on profile from schedule data

- Extract classes from schedule matching trainer name
- Group by type+time+location, combine days (e.g. ПН, СР)
- Display as horizontal scroll cards with time, location, level
- Show recruiting badge and address (without city prefix)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-15 16:35:17 +03:00
parent ce033074cd
commit 4f92057411
3 changed files with 66 additions and 9 deletions

View File

@@ -6,13 +6,14 @@ import { Reveal } from "@/components/ui/Reveal";
import { TeamCarousel } from "@/components/sections/team/TeamCarousel";
import { TeamMemberInfo } from "@/components/sections/team/TeamMemberInfo";
import { TeamProfile } from "@/components/sections/team/TeamProfile";
import type { SiteContent } from "@/types/content";
import type { SiteContent, ScheduleLocation } from "@/types/content";
interface TeamProps {
data: SiteContent["team"];
schedule?: ScheduleLocation[];
}
export function Team({ data: team }: TeamProps) {
export function Team({ data: team, schedule }: TeamProps) {
const [activeIndex, setActiveIndex] = useState(0);
const [showProfile, setShowProfile] = useState(false);
@@ -61,6 +62,7 @@ export function Team({ data: team }: TeamProps) {
<TeamProfile
member={team.members[activeIndex]}
onBack={() => setShowProfile(false)}
schedule={schedule}
/>
)}
</div>