feat(tradein/v2): кликабельные строки + параметры в оверлее «Предыдущие оценки» #2424
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#2424
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/tradein-cacheview-clickable-params"
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?
Summary
Frontend-часть живого запроса пользователя (см. PR #2420 — backend-часть, уже задеплоена и live-подтверждена через Network-таб). CacheView («ПРЕДЫДУЩИЕ ОЦЕНКИ») теперь:
router.replace(/v2?id=<uuid>)+ закрытие оверлея — переход на полный отчёт по историческому estimate (там уже видны ВСЕ параметры, включая house_type/repair_state/has_balcony, через существующий restore-by-id).Дизайн-решения:
mappers.ts.fmtArea()(не новый форматтер).router.replace(неpush), т.к. это 100%-консистентная существующая конвенция в page.tsx для всех?id=-переходов.role="row"сtabIndex/onKeyDown(Enter+Space, preventDefault на Space)/aria-label/focus-visible ring, тот же паттерн что в 7 соседних v2-компонентах. Невайренный кейс (onSelectRowне передан) остаётся полностью инертным — без регрессии.Test plan
npx tsc --noEmit— чистоnpm run lint— чисто (только 3 pre-existing warning в нетронутых файлах)keyможно наr.id,role="row"как interactive target — не блокеры)Без codegen — у
tradein-mvp/frontendнет OpenAPI-codegen пайплайна (это только у Site Finderfrontend/), типы вtrade-in.tsmaintained вручную по конвенции этого файла; новые поля 1:1 сверены с живым SQL-проекцией бэкенда.Refs #2420