fix(tradein): praktika wordmark logo + form button cutoff on short viewports #942
No reviewers
Labels
No labels
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
Fable 5 ревью
feedback/max
generative
GG-форсайт
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
вторичка
ИРД
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#942
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "fix/tradein-praktika-logo-form-scroll"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Два UI-фикса trade-in перед выдачей доступа клиенту «Практика». Оба проверены вживую на проде (
gendsgn.ru/trade-in, Playwright).1. Логотип «Практики» «поехал» (расплющен в полоску)
Причина:
brands.logo_urlхотлинкалgk-praktika.ru/images/logo/logo-pink.svg— это квадратный розовый знак (viewBox 0 0 69 69,preserveAspectRatio="none", безwidth/height). Браузер брал дефолт-бокс 300×150, CSSheight:24/width:autoне выводил ширину из viewBox → рендер 300×24, знак растянут.Фикс:
#i-logo-newиз спрайта клиента,viewBox 1498×194) →frontend/public/brands/praktika.svg.099_brand_praktika_logo_wordmark.sqlперенаправляетbrands.logo_url→https://gendsgn.ru/trade-in/brands/praktika.svg(идемпотентный UPDATE).Topbar.tsx: при брендовом логотипе рендерим только wordmark (он уже содержит название) — убран дублирующий текст «ПРАКТИКА ×2». Fallback (бренд без лого / generic) не тронут,safeUrlXSS-guard сохранён..brand-logoусиленobject-fit:contain+max-width— защита от расплющивания для любого SVG.2. Кнопка «Оценить квартиру» обрезается @100% на 13″ MacBook
Причина:
.form-card { max-height: calc(100vh-104px); overflow:hidden }(flex-column); на коротком вьюпорте flex-shrink тела не срабатывал →.form-footс кнопкой выдавливался за границу и обрезался. На 80% всё влезало → кнопка появлялась.Фикс: скроллом владеет карточка целиком —
.form-card { overflow-y:auto; overflow-x:hidden },.form-body { overflow-y:visible },.form-foot { flex-shrink:0 }. Проверено на 1280×720: кнопка достижима скроллом.Проверка
<path>, без<script>), рендерится ~200×26 без искажений.btnBelowCardClip:true), после фиксаcanReachButton.visible:true.code-reviewer→ ✅ approve.Известный trade-off (не блокер)
PDF-экспорт (
trade_in_pdf.py) имеет allowlist доменов логотипа (gk-praktika.ru), кудаgendsgn.ruне входит → в PDF логотип заменится текстом названия (graceful, без ошибки). Демо для «Практики» — браузерное; PDF-логотип закрою отдельным follow-up (добавитьgendsgn.ruв_ALLOWED_LOGO_CDN).После merge —
deploy-tradein.ymlприменит миграцию 099 на прод и пересоберёт фронт с новым ассетом.