fix(tradein/v2): вернуть адресную карточку поверх карты и координаты при restore-by-id #2530

Merged
lekss361 merged 1 commit from fix/tradein-v2-hero-card-visibility into main 2026-07-26 20:26:09 +00:00
Owner

Summary

Две регрессии, найденные проверкой на живом проде после #2528 и #2529. Обе видны клиенту, обе не ловились локально — RouteGuard без бэкенда рендерит пустой DOM, поэтому визуал в этом проекте проверяется только после деплоя.

1. Адрес и показатель локации исчезли из шапки

.leaflet-container имеет position: relative и z-index: auto — то есть не создаёт контекст наложения. Его внутренние панели (tile 200, overlay 400, marker 600, popup 700) конкурируют напрямую с соседними элементами блока, и адресная карточка с z-index: auto оказалась под картой.

Проверено на проде: карточка присутствует в DOM (getBoundingClientRect → 1013×116, 182×116), но elementFromPoint в её углу возвращает элемент карты. Клиент перестал видеть адрес и коэффициент локации.

Проставлен явный z-index: 750 карточке и 500 градиенту. Атрибуция Leaflet (.leaflet-control, 800) находится справа внизу и с левой карточкой не пересекается — ссылка остаётся кликабельной, лицензионное требование соблюдено.

2. Карта в блоке «01» показывала заглушку на каждой восстановленной оценке

Известное ограничение, отмеченное в описании #2528, оказалось заметнее, чем предполагалось: карта работает от координат, а initialValues в page.tsx их не прокидывал — они приходили только через выбор подсказки геокодера. В результате на любой оценке, открытой по ссылке (шаренная ссылка, история, переход из PDF), под заполненным адресом висело «Выберите адрес из подсказок, чтобы увидеть карту».

Добавлены lat/lon из estimate.target_lat/target_lon — поля уже существуют в TradeInEstimateInput.

Test plan

  • npx tsc --noEmit — чисто
  • Обе регрессии воспроизведены на проде до фикса (Playwright + elementFromPoint)
  • После деплоя: адресная карточка видна поверх карты, ссылка «© OpenStreetMap» кликабельна, карта в блоке «01» рисуется на восстановленной по ссылке оценке
## Summary Две регрессии, найденные **проверкой на живом проде** после #2528 и #2529. Обе видны клиенту, обе не ловились локально — `RouteGuard` без бэкенда рендерит пустой DOM, поэтому визуал в этом проекте проверяется только после деплоя. ### 1. Адрес и показатель локации исчезли из шапки `.leaflet-container` имеет `position: relative` и `z-index: auto` — то есть **не создаёт контекст наложения**. Его внутренние панели (`tile` 200, `overlay` 400, `marker` 600, `popup` 700) конкурируют напрямую с соседними элементами блока, и адресная карточка с `z-index: auto` оказалась под картой. Проверено на проде: карточка присутствует в DOM (`getBoundingClientRect` → 1013×116, 182×116), но `elementFromPoint` в её углу возвращает элемент карты. Клиент перестал видеть адрес и коэффициент локации. Проставлен явный `z-index: 750` карточке и `500` градиенту. Атрибуция Leaflet (`.leaflet-control`, 800) находится справа внизу и с левой карточкой не пересекается — ссылка остаётся кликабельной, лицензионное требование соблюдено. ### 2. Карта в блоке «01» показывала заглушку на каждой восстановленной оценке Известное ограничение, отмеченное в описании #2528, оказалось заметнее, чем предполагалось: карта работает от координат, а `initialValues` в `page.tsx` их не прокидывал — они приходили только через выбор подсказки геокодера. В результате на любой оценке, открытой **по ссылке** (шаренная ссылка, история, переход из PDF), под заполненным адресом висело «Выберите адрес из подсказок, чтобы увидеть карту». Добавлены `lat`/`lon` из `estimate.target_lat`/`target_lon` — поля уже существуют в `TradeInEstimateInput`. ## Test plan - [x] `npx tsc --noEmit` — чисто - [x] Обе регрессии воспроизведены на проде до фикса (Playwright + `elementFromPoint`) - [ ] После деплоя: адресная карточка видна поверх карты, ссылка «© OpenStreetMap» кликабельна, карта в блоке «01» рисуется на восстановленной по ссылке оценке
lekss361 added 1 commit 2026-07-26 20:23:14 +00:00
fix(tradein/v2): вернуть адресную карточку поверх карты и координаты при restore-by-id
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI / changes (pull_request) Successful in 9s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Successful in 1m10s
ceaafa2d69
Две регрессии, найденные проверкой на проде после #2528/#2529.

1. Адрес и показатель локации исчезли из шапки. .leaflet-container имеет
   position:relative и z-index:auto, то есть НЕ создаёт контекст наложения —
   его внутренние панели (tiles 200 ... popup 700) конкурируют напрямую с
   соседями, и карточка с z-index:auto оказалась ПОД картой. Проставлен явный
   z-index: 750 карточке и 500 градиенту. Атрибуция Leaflet (800) стоит справа
   внизу и с левой карточкой не пересекается, ссылка остаётся кликабельной.

2. Карта в блоке 01 показывала заглушку «выберите адрес» на КАЖДОЙ оценке,
   восстановленной по ссылке, хотя поле адреса заполнено: карта работает от
   координат, а initialValues их не прокидывал — они приходили только через
   выбор подсказки геокодера. Добавлены lat/lon из estimate.target_lat/lon.
   Затрагивало все шаренные ссылки, историю и переход из PDF.
lekss361 merged commit c9ba1b15ba into main 2026-07-26 20:26:09 +00:00
lekss361 deleted branch fix/tradein-v2-hero-card-visibility 2026-07-26 20:26:09 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#2530
No description provided.