diff --git a/DOC/ШАГИ/ШАГ_2026-04-27_003.md b/DOC/ШАГИ/ШАГ_2026-04-27_003.md new file mode 100644 index 0000000..5964b25 --- /dev/null +++ b/DOC/ШАГИ/ШАГ_2026-04-27_003.md @@ -0,0 +1,4 @@ +# Шаг 2026-04-27 — спринт 2 (мобильный UI) + +- См. [`docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md`](../../docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md): пункты 2.1–2.5 отмечены выполненными. +- Реализация: `TestDetail.jsx` (прогоны карточками, импорт через label+input, заголовок вопроса, radio/checkbox, фикс-футер), `cabinet-theme.css` (классы спринта 2). diff --git a/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md b/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md index 43e3cd8..68c4d8f 100644 --- a/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md +++ b/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md @@ -1,10 +1,8 @@ # Спринты: мобильный UI кабинета тестов -Рядом с: [`ПРЕДЛОЖЕНИЕ_ДИЗАЙН_СОЗДАНИЕ_ТЕСТА.md`](./ПРЕДЛОЖЕНИЕ_ДИЗАЙН_СОЗДАНИЕ_ТЕСТА.md). - --- -## Спринт 1 — быстрые исправления (текущий) +## Спринт 1 — быстрые исправления **Цель:** выровнять кнопки, мета-строку списка, историю версий, назначение и safe-area; без смены контентной модели страниц. @@ -21,13 +19,15 @@ --- -## Спринт 2 — бэклог (следующий) +## Спринт 2 — карточки, импорт, вопрос, радио/чек, фикс-футер + +- [x] **2.1** «Прогоны и разбор»: таблица заменена на список карточек (`.attempts-card-list`) +- [x] **2.2** «Импорт из файла»: скрытый `input` + `label` с `.btn` (`.import-file-input` / `.import-file-label`) +- [x] **2.3** «Вопрос N» + «Сгенерировать вопрос (ИИ)»: колонка на мобилке, ряд от `min-width: 520px` (`.question-editor-block__header`) +- [x] **2.4** Варианты: `type="radio"` при одном верном, `checkbox` при нескольких +- [x] **2.5** Моб. фикс-футер `≤640px` с «Сохранить» / «К списку» + статус черновика; панель в потоке скрыта -- [ ] **2.1** «Прогоны и разбор»: на мобилке заменить таблицу на карточки или гориз. скролл с фиксированными колонками -- [ ] **2.2** «Импорт из файла»: кастомная кнопка (скрытый `input` + стилизованный `label` под `.btn`) -- [ ] **2.3** «Вопрос 1» + «Сгенерировать вопрос (ИИ)» — не в одной строке на узком экране; явная иерархия primary/secondary -- [ ] **2.4** Радио vs чекбокс у вариантов ответа при «несколько верных» — визуальная метафора (квадраты vs круги) -- [ ] **2.5** Закреплённый футер с действиями «Сохранить» (опционально) +**Файлы:** `frontend/src/styles/cabinet-theme.css`, `frontend/src/pages/TestDetail.jsx`. --- diff --git a/frontend/src/pages/TestDetail.jsx b/frontend/src/pages/TestDetail.jsx index a8c8db3..b6c0a67 100644 --- a/frontend/src/pages/TestDetail.jsx +++ b/frontend/src/pages/TestDetail.jsx @@ -622,7 +622,7 @@ export default function TestDetail() { ); return ( -
+

← к списку @@ -792,22 +792,23 @@ export default function TestDetail() { {draftQuestions.map((q, qi) => (

-
-