feat: add service window component and related functionality
- Introduced ServiceWindow component to display the last departure today and the first tomorrow. - Implemented cancellation notice parsing to handle route cancellations effectively. - Enhanced departure display logic to include cancellation alerts and status updates. - Created information blocks for displaying service information, weather, and QR codes. - Added tests for departure features, information handling, and service window functionality. - Updated fixtures for testing various scenarios including cancellations and long wait times.
BIN
artifacts/departure-features-1079x591.jpg
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
artifacts/departure-features-855x723.jpg
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
artifacts/departure-features-all-cancelled.jpg
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
artifacts/departure-features-approaching-far.jpg
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
artifacts/departure-features-cancellation.jpg
Normal file
|
After Width: | Height: | Size: 87 KiB |
BIN
artifacts/departure-features-live.jpg
Normal file
|
After Width: | Height: | Size: 98 KiB |
BIN
artifacts/departure-features-long-wait-light.jpg
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
artifacts/departure-features-overnight-390x667.jpg
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
artifacts/departure-features-overnight-879x593.jpg
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
artifacts/departure-features-street-far-390x667.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
artifacts/info-block-settings-879x593.jpg
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
artifacts/info-blocks-disabled.jpg
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
artifacts/info-service-1079x591.jpg
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
artifacts/info-service-390x667.jpg
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
artifacts/info-service-855x723.jpg
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
artifacts/info-service-879x593.jpg
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
artifacts/info-service-light.jpg
Normal file
|
After Width: | Height: | Size: 106 KiB |
BIN
artifacts/info-service-one-block.jpg
Normal file
|
After Width: | Height: | Size: 91 KiB |
BIN
artifacts/info-service-three-cards.jpg
Normal file
|
After Width: | Height: | Size: 106 KiB |
BIN
artifacts/info-service-two-blocks.jpg
Normal file
|
After Width: | Height: | Size: 104 KiB |
13
artifacts/verification-info-blocks.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# Информационные блоки — 9 октября 2026
|
||||
|
||||
- Вместо списка маршрутов: последний рейс сегодня и первый завтра, номер и направление. Источник — полное расписание текущей остановки; короткий live-ответ не используется для определения границ движения.
|
||||
- В настройках → «Экраны» доступны три независимых переключателя. Старые настройки включают все блоки; отключения сохраняются после перезагрузки. «Сбросить цикл» возвращает блоки.
|
||||
- Проверены три, два, один и ноль блоков через интерфейс. При одном блоке нет лишних вкладок, при нуле нет обычной информационной сцены; ручной переход сохраняет главный экран. Предупреждения остаются в цикле независимо от переключателей, реклама подавляется при отменах/объездах — проверено тестами логики сцен.
|
||||
- Браузер: 1280×900 (три блока, тёмная/светлая тема), 879×593, 1079×591, 855×723, 390×667. Новый блок помещается в карточку без внутренней прокрутки. Уточнены размеры и отступы короткой вертикальной карточки.
|
||||
- На 879×593 переключатели доступны через постоянные кнопки «Ниже»/«Выше». Проверена работа кнопок курсором; физический Xiaomi Mi Box 4 не проверялся.
|
||||
- Сверка с локальным `/api/timetable?stopId=1`: 1031 прибытие в развёрнутом расписании за сегодня и завтра; последний сегодня №6, 23:55, Баграмяна; первый завтра №22, 00:02, Больница (Новка). Время суток — Europe/Minsk, прибытию после полуночи соответствует следующий календарный день.
|
||||
- `npm test`: 54 теста прошли, включая миграцию переключателей, все выключенные блоки, предупреждения, фильтр маршрута и переход через полночь/Новый год. API-тест запущен с разрешением на локальный порт после ограничения песочницы.
|
||||
- `npm run build` и `git diff --check` прошли. Финальный JS: `index-GhNzOttK.js`, CSS: `index-DfZr3qbx.css`.
|
||||
- Исходные настройки возвращены: тёмная тема, лайм, удержание главного экрана включено, все три блока включены. Временный размер браузера сброшен; автоматическая смена экранов возобновлена.
|
||||
|
||||
Снимки: `info-service-three-cards.jpg`, `info-service-light.jpg`, `info-service-879x593.jpg`, `info-service-1079x591.jpg`, `info-service-855x723.jpg`, `info-service-390x667.jpg`, `info-service-two-blocks.jpg`, `info-service-one-block.jpg`, `info-block-settings-879x593.jpg`, `info-blocks-disabled.jpg`.
|
||||