Files
h-school/docs/bugs/01-login-layout.md

34 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Баг 1. Окно входа растянуто на весь экран
## Симптом
После фазы 38 экран «Вход» прижат к верхнему левому углу: заголовок и подпись «Пароль альфы» слева сверху, поле пароля — тонкая полоса на всю ширину окна, кнопка «Продолжить» маленькая под левым краем. Большая часть экрана пустая.
Ожидали компактную форму по центру, как диалог создания школы, а не полноширинный `.screen`.
## Причина
Фаза 38 повесила `class="screen session-gate"` и `field__input`, но стилей для `.session-gate` нет, а класс `.field__input` нигде не определён — живой контрол это `.input`. Экран тянется на 100% ширины (`#app`), нативное поле без паддинга заполняет окно, колонка стартует с верхнего края (у `.screen.menu` как раз есть `justify-content: center` и `max-width`).
## Путь
Стили `.session-gate`: карточка размера диалога по центру окна; поля перевести на `.input`. Не делать `<dialog>` — за формой ничего нет, это единственный экран, не модалка поверх меню.
## Задачи
- [x] Карточка входа по центру, ширина как у `.dialog` (~340360px), не на всю `#app`
- [x] Поля пароля и имени — класс `input`
- [x] Тест на классы гейта и `input`
## Тест, без которого не закрыт
Клиентский Vitest: без куки монтируется `.session-gate` с панелью, поле пароля несёт `input`, не `field__input`.
```bash
npm --prefix src/HSchool.Client test -- src/ui/sessionGate.test.ts
```
## Стоп
Протокол, куку, шаги пароль/имя и HTTP сессии не трогать. Локаль на гейте не подписывать — это соседнее.