From 235b7761df0bb05b63a76c308330faa8a91a6922 Mon Sep 17 00:00:00 2001 From: Matthew Lipski Date: Mon, 30 Jun 2025 19:09:36 +0200 Subject: [PATCH 1/2] Added FloatingUI options prop to `BlockPositioner` --- .../xl-ai/src/components/AIMenu/BlockPositioner.tsx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx b/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx index bfa6be1f67..961bdf8113 100644 --- a/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx +++ b/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx @@ -1,5 +1,12 @@ import { useUIElementPositioning } from "@blocknote/react"; -import { OpenChangeReason, autoUpdate, offset, size } from "@floating-ui/react"; +import { + OpenChangeReason, + UseDismissProps, + UseFloatingOptions, + autoUpdate, + offset, + size, +} from "@floating-ui/react"; import { useMemo } from "react"; // The block positioner automattically positions it's children below the block with `blockID` export const BlockPositioner = (props: { @@ -11,6 +18,9 @@ export const BlockPositioner = (props: { reason: OpenChangeReason, ) => void; canDismissViaOutsidePress?: boolean; + options?: Partial< + UseFloatingOptions & { canDismiss: boolean | UseDismissProps } + >; }) => { const element = props.blockID ? document.querySelector(`[data-id="${props.blockID}"]`) @@ -55,6 +65,7 @@ export const BlockPositioner = (props: { }); return cleanup; }, + ...props.options, }); if (!isMounted) { From f45e1be26486163376a7d7a460c7768cf79d2b6b Mon Sep 17 00:00:00 2001 From: Matthew Lipski Date: Tue, 1 Jul 2025 10:55:38 +0200 Subject: [PATCH 2/2] Updated naming --- packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx b/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx index 961bdf8113..bbfe3464e4 100644 --- a/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx +++ b/packages/xl-ai/src/components/AIMenu/BlockPositioner.tsx @@ -18,7 +18,7 @@ export const BlockPositioner = (props: { reason: OpenChangeReason, ) => void; canDismissViaOutsidePress?: boolean; - options?: Partial< + floatingOptions?: Partial< UseFloatingOptions & { canDismiss: boolean | UseDismissProps } >; }) => { @@ -65,7 +65,7 @@ export const BlockPositioner = (props: { }); return cleanup; }, - ...props.options, + ...props.floatingOptions, }); if (!isMounted) {