Выбор .torrent с длинным именем распирает лейбл файл-пикера (нет ограничения ширины у .btn-file), поле source сжимается, «Добавить» уезжает. Косметика: ellipsis на лейбле; фикс-хуки на CSS/шаблон в теле задачи. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
31 lines
2.3 KiB
Markdown
31 lines
2.3 KiB
Markdown
# Форма приёма: длинное имя .torrent-файла ломает верстку add-row
|
||
|
||
**Приоритет:** низкий · **Теги:** web-ui, ingest
|
||
|
||
При выборе `.torrent`-файла с длинным именем (типичный релиз с трекера, напр.
|
||
«Бухта вдов Widow's Bay Сезон 1 Серии 1-10 из 10 (Хиро Мурай) [2026, США, …,
|
||
WEB-DL 1080p] 7 x MVO (HDr [rutracker-6869937].torrent») кнопка-лейбл файл-пикера
|
||
раздувается на всю ширину и ломает раскладку строки добавления: поле `source`
|
||
сжимается/прячется, «Добавить» уезжает.
|
||
|
||
Причина: onchange пишет полное `files[0].name` в `[data-file-label]`
|
||
(`web/templates/index.html:26-30`), а у `.btn-file` нет ограничения ширины
|
||
(`web/static/css/jellybit.css:194` — только цвет). В `.add-row`
|
||
(`display:flex`, `.input{flex:1}`) лейбл распирается по контенту и съедает строку.
|
||
|
||
Фикс (косметика, без домена):
|
||
- CSS `.btn-file`: `max-width` + `overflow:hidden; text-overflow:ellipsis;
|
||
white-space:nowrap` — имя усекается многоточием, а не растягивает строку.
|
||
- Опц.: показывать базовое имя без `.torrent` и класть полное в `title`
|
||
(тултип). Полное имя всё равно уходит на сабмит через сам file-input
|
||
(`header.Filename`), правка чисто визуальная.
|
||
|
||
Смежное (проверить заодно, не обязательно тем же фиксом): на приёме `source_ref`
|
||
выводится из имени раздачи/файла и может быть очень длинным. В списке/карточке он
|
||
усечён (`shorten(oneLine(d.SourceRef), 120)` — `internal/httpapi/download.go:67`),
|
||
так что отображение ок; убедиться лишь, что нет жёсткого лимита колонки в БД,
|
||
роняющего сам приём длинного имени.
|
||
|
||
Связано: `openspec/specs/ingest`, `openspec/specs/web-ui`, пакет `httpapi`,
|
||
конвенция [web-ui](../conventions/web-ui.md).
|