Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | import React from "react"; import { useDrop } from "react-dnd"; import { useFlatListOuterDropContext } from "ui/lists/FlatListOuterDropContext"; import { StyledListDropzone, StyledListWithDropzoneWrapper, } from "ui/lists/style"; export const FlatListOuterDropTarget = React.forwardRef< HTMLDivElement, React.HTMLAttributes<HTMLDivElement> >((props, ref) => { const { acceptTypes, onItemDrop } = useFlatListOuterDropContext<unknown>(); const [{ isOver }, drop] = useDrop<unknown, void, { isOver: boolean }>({ accept: acceptTypes, drop: (item, monitor) => { Iif (monitor.didDrop()) { return; } onItemDrop(item); }, collect: (monitor) => ({ isOver: monitor.isOver({ shallow: true }), }), }); return ( <StyledListWithDropzoneWrapper {...props} ref={ref}> {props.children} <StyledListDropzone ref={(node) => { drop(node); }} $isOver={isOver} /> </StyledListWithDropzoneWrapper> ); }); FlatListOuterDropTarget.displayName = "FlatListOuterDropTarget"; |