MCPcopy Create free account
hub / github.com/editablejs/editable / useSideToolbarMenuEffect

Function useSideToolbarMenuEffect

packages/plugins/toolbar/src/side/store.ts:79–93  ·  view source on GitHub ↗
(aciton: SideToolbarEffectCallback, editor: Editable)

Source from the content-addressed store, hash-verified

77
78type SideToolbarEffectCallback = (range: Range, element: Element) => (() => void) | void
79export const useSideToolbarMenuEffect = (aciton: SideToolbarEffectCallback, editor: Editable) => {
80 const [open] = useSideToolbarMenuOpen(editor)
81 useIsomorphicLayoutEffect(() => {
82 let destroy: (() => void) | void
83
84 const data = getCapturedData(editor)
85 if (open && data) {
86 const { selection, element } = data
87 destroy = aciton(selection, element)
88 }
89 return () => {
90 if (destroy) destroy()
91 }
92 }, [open, editor, aciton])
93}
94
95export const SideToolbar = {
96 setOpen(editor: Editable, open: boolean) {

Callers 1

PlaygroundFunction · 0.90

Calls 2

getCapturedDataFunction · 0.90
useSideToolbarMenuOpenFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…