Skip to content

Vizel API / core/src / createVizelBubbleMenuEscapeController

Function: createVizelBubbleMenuEscapeController()

ts
function createVizelBubbleMenuEscapeController(options): VizelBubbleMenuEscapeController;

Defined in: packages/core/src/controllers/bubbleMenuEscapeController.ts:49

Build a controller that collapses the editor's selection when the user presses Escape while the bubble menu is open.

Encapsulating the DOM listener in core keeps framework adapters (VizelBubbleMenu in React, Vue, and Svelte) compliant with the architecture rule that bans direct document.addEventListener from framework code. Each adapter feeds in its own editor reference and lets the controller own the listener lifecycle.

Parameters

ParameterType
optionsVizelBubbleMenuEscapeControllerOptions

Returns

VizelBubbleMenuEscapeController

Example

tsx
useEffect(() => {
  const controller = createVizelBubbleMenuEscapeController({
    getEditor: () => editor,
  });
  controller.mount();
  return () => controller.unmount();
}, [editor]);

Released under the MIT License.