Control Server (FastAPI) с WEB UI (Jinja2 + HTMX) и JSON API для группового администрирования устройств RouterOS 7 через REST. - Устройства: список, статус (модель, канал, версии ROS/FW, uptime, доступные обновления), примечания, пароли шифруются (Fernet); фоновый опрос каждые 30 с и быстрое обнаружение недоступности (таймаут соединения 4 с). - Группы устройств и фильтры (устройства, резервные копии). - Резервные копии: .backup и .rsc (show-sensitive) создаются через REST, скачиваются сервером и загружаются в S3 (Yandex Object Storage). - Обновление ROS/FW и выбор канала, групповые операции задачами. - Интерфейс по утверждённому макету: светлая/тёмная темы, окна, шрифты IBM Plex локально. Docker Compose, SQLite в томе, минимальный набор тестов. - Планы и итоги каждого изменения — в docs/changes/. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
969 B
969 B
План: 011 — обрезание выпадающих меню в узком окне
Баг (скриншот dropdown-menu_ui_bug.png): при узком окне таблица получает горизонтальную прокрутку (.table-wrap { overflow-x: auto }), и меню «⋯» обрезается её границей.
Решение (static/app.js): при открытии список позиционируется от кнопки в координатах окна (position: fixed), не выходит за края окна и раскрывается вверх, если снизу нет места; при прокрутке и изменении размера следует за кнопкой, а если кнопка ушла за пределы окна — закрывается. Действует для всех меню (строка, групповые действия, группы, бэкапы).