import { buildScheduleOverviewModel, formatLongDate, lessonMeta, lessonStart, pluralLessons, relativeDate, trimTime } from '../../../schedule-overview.js'; export function ScheduleOverview({ lessons, now = new Date(), onGoToday, role = 'student' }) { const { todayIso, todayLessons, nextLesson } = buildScheduleOverviewModel(lessons, now); return (
Быстрый обзор

{formatLongDate(now)}

Сегодня

{todayLessons.length ? pluralLessons(todayLessons.length) : 'Свободный день'}

{todayLessons.length}
{todayLessons.length > 0 ? todayLessons.map((lesson, index) => ( )) :

На сегодня занятий нет.

}
Следующая пара

{nextLesson ? relativeDate(nextLesson.date, todayIso) : 'Пока ничего не запланировано'}

{nextLesson && ( {lessonStart(nextLesson) <= now ? 'Идёт сейчас' : trimTime(nextLesson.startTime)} )}
{nextLesson ? :

В ближайшие 14 дней занятий нет.

}
); } function CompactLesson({ lesson, role }) { return (
{lesson.subjectName || 'Занятие'} {lessonMeta(lesson, role).join(' · ') || 'Подробности уточняются'}
); } function NextLessonCard({ lesson, role }) { return (
{trimTime(lesson.startTime)} до {trimTime(lesson.endTime)}

{lesson.subjectName || 'Занятие'}

{lessonMeta(lesson, role).join(' · ') || 'Подробности уточняются'}

{lesson.lessonTypeName && {lesson.lessonTypeName}}
); }