From d44c3b535c8fba4c0eb7200af9addb0ab4e15a30 Mon Sep 17 00:00:00 2001
From: Diego Imbert <70353967+diegoimbert@users.noreply.github.com>
Date: Thu, 18 Sep 2025 20:56:59 +0200
Subject: [PATCH] fix: fix flow quick picker stuck (#6638)
* Fix flow quick picker stuck
* fix Ci
---
.../components/common/popup/PopupV2.svelte | 36 +++++--------------
.../flows/map/InsertModuleButton.svelte | 17 ++-------
.../renderers/nodes/NewAIToolNode.svelte | 15 +++-----
frontend/src/lib/utils.ts | 6 ++--
4 files changed, 20 insertions(+), 54 deletions(-)
diff --git a/frontend/src/lib/components/common/popup/PopupV2.svelte b/frontend/src/lib/components/common/popup/PopupV2.svelte
index bbd68fe47b..425a09908a 100644
--- a/frontend/src/lib/components/common/popup/PopupV2.svelte
+++ b/frontend/src/lib/components/common/popup/PopupV2.svelte
@@ -8,8 +8,8 @@
floatingConfig?: ComputeConfig
open?: boolean
target?: string | undefined
- button?: import('svelte').Snippet<[any]>
- children?: import('svelte').Snippet<[any]>
+ button?: import('svelte').Snippet
+ children?: import('svelte').Snippet<[{ close: () => void }]>
}
let {
@@ -28,29 +28,13 @@
// export let floatingClasses: string = ''
const [floatingRef, floatingContent] = createFloatingActions(floatingConfig)
- function close(div: Element | null) {
+ function close() {
open = false
}
-
- let acceptClickoutside = $state(false)
- function pointerup() {
- setTimeout(() => {
- acceptClickoutside = true
- }, 100)
- }
-
- function pointerdown() {
- if (acceptClickoutside && open) {
- open = false
- } else {
- acceptClickoutside = false
- open = true
- }
- }
- {@render button?.({ pointerup, pointerdown })}
+ {@render button?.()}
@@ -61,17 +45,13 @@
use:floatingContent
transition:fly={{ duration: 100, y: -16 }}
>
-
{
- if (acceptClickoutside) {
- acceptClickoutside = false
- open = false
- }
+ use:clickOutside={{
+ eventToListenName: 'pointerdown',
+ onClickOutside: () => (open = false)
}}
>
- {@render children?.({ close })}
+ {@render children?.({ close: () => close(null) })}
{/if}
diff --git a/frontend/src/lib/components/flows/map/InsertModuleButton.svelte b/frontend/src/lib/components/flows/map/InsertModuleButton.svelte
index 71a5fbff6e..d7bb09815a 100644
--- a/frontend/src/lib/components/flows/map/InsertModuleButton.svelte
+++ b/frontend/src/lib/components/flows/map/InsertModuleButton.svelte
@@ -1,7 +1,4 @@
-
- {#snippet button({ pointerdown, pointerup })}
+
+ {#snippet button()}