Module 599119

636 characters · in c4f5c9527ec628e5.js
Dependencies
Lazily required by (0)none
Requires (3)
Lazily requires (0)none
Source Raw
function(e,t,n){n.d(t,{A:()=>a});var i=n(64700),l=n(131346),s=n(522437);function a(e){let{type:t,index:n,optionId:a,onDragStart:r,onDragComplete:o,onDragReset:d}=e,[c,u]=i.useState(!1),[,m]=(0,l.i)({type:t,item:()=>(r(a),{id:a,position:n}),canDrag:()=>c,collect:e=>({isDragging:e.isDragging()}),end:(e,t)=>{let n=t.getDropResult();null==n?d():o(n.optionId)}}),[{dragSourcePosition:x},g]=(0,s.H)({accept:t,canDrop:()=>!0,collect:e=>{let t=e.getItem();return null!=t&&e.isOver()&&e.canDrop()?{dragSourcePosition:t.position}:{dragSourcePosition:null}},drop:()=>({optionId:a})});return{drag:m,dragSourcePosition:x,drop:g,setIsDraggable:u}}}