UNPKG

@guruhotel/aura-hooks

Version:

🪝 Hooks library designed by the Guruhotel team for Aura UI

1 lines 619 B
import t from"./utils/use-latest";import{getTargetElement as r}from"./utils/dom-target";import e from"./utils/use-effect-with-target";export default(n,a,s={})=>{const u=t(s),d=t(n);e((()=>{const t=r(a);if(null==t||!t.addEventListener)return;const e=t=>{null==u.current.onDragStart||u.current.onDragStart(t),t.dataTransfer.setData("custom",JSON.stringify(d.current))},n=t=>{null==u.current.onDragEnd||u.current.onDragEnd(t)};return t.setAttribute("draggable","true"),t.addEventListener("dragstart",e),t.addEventListener("dragend",n),()=>{t.removeEventListener("dragstart",e),t.removeEventListener("dragend",n)}}),[],a)};