From 03ea70e5de9753405b984b667f8e8d2cbf036b0b Mon Sep 17 00:00:00 2001 From: byrsapty Date: Tue, 25 Aug 2026 17:19:09 +0300 Subject: [PATCH] =?UTF-8?q?=D0=92=D0=B8=D0=B1=D1=96=D1=80=20=D0=B4=D0=BE?= =?UTF-8?q?=D1=81=D1=82=D1=83=D0=BF=D1=83=20=D0=B1=D1=96=D0=BB=D1=8C=D1=88?= =?UTF-8?q?=D0=B5=20=D0=BD=D0=B5=20=D0=B7=D0=B0=D0=BA=D1=80=D0=B8=D0=B2?= =?UTF-8?q?=D0=B0=D1=94=20=D0=BA=D0=B0=D1=80=D1=82=D0=BA=D1=83=20=D1=85?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Регресія від переносу списку в портал. Портал рве DOM-дерево, але не дерево React: подія з нього спливає до компонента-батька, тобто до модального вікна. Воно закривається за натисканням «повз панель» — і клік по пункту, який фізично лежить у body, вважався кліком поза формою. Зупиняємо спливання на самому списку. Клік по підкладці закриває форму, як і раніше. Co-Authored-By: Claude Opus 5 --- HISTORY.md | 19 +++++++++++++++++++ web/src/components/Picker.tsx | 5 +++++ 2 files changed, 24 insertions(+) diff --git a/HISTORY.md b/HISTORY.md index 333d37a..7f00c7d 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2912,3 +2912,22 @@ NAT цілком може слухати SSH на 2222. й не обрізається; у body, не всередині вікна за екран не вилазить ``` + +### Портал закривав форму + +Вибір доступу закривав картку хоста разом із набраним. Регресія від +попередньої правки, і причина не очевидна. + +Портал рве DOM-дерево, але **не дерево React**: подія з нього спливає до +компонента-батька, тобто до модального вікна. А воно закривається за +натисканням «повз панель» — і клік по пункту списку, який фізично лежить +у `body`, вважався кліком поза формою. + +Лікується зупинкою спливання на самому списку. Перевірено, що клік по +підкладці закриває форму, як і раніше. + +``` +вибір пункту форма лишається, чип додано, лічильник «Доступи 1» +другий вибір список не закрився, «Доступи 2» +клік по підкладці форма закривається +``` diff --git a/web/src/components/Picker.tsx b/web/src/components/Picker.tsx index 836f97a..aa5bacd 100644 --- a/web/src/components/Picker.tsx +++ b/web/src/components/Picker.tsx @@ -151,6 +151,11 @@ export function Picker({ rect && createPortal(