import { dispatchPointerEvent } from '../utils/events.es.js'; const mouseEvent = (element, name, action) => (event) => { if (event.pointerType && event.pointerType !== "mouse") return; action(); dispatchPointerEvent(element, name, event); }; const hover = { isActive: (options) => Boolean(options.hover), subscribe: (element, { enable, disable }) => { const onEnter = mouseEvent(element, "hoverstart", enable); const onLeave = mouseEvent(element, "hoverend", disable); element.addEventListener("pointerenter", onEnter); element.addEventListener("pointerleave", onLeave); return () => { element.removeEventListener("pointerenter", onEnter); element.removeEventListener("pointerleave", onLeave); }; }, }; export { hover };