import React from 'react'; import { useDrop } from 'react-dnd'; import PropTypes from 'prop-types'; import classNames from 'classnames'; import './ViewportPane.css'; const ViewportPane = function(props) { const { children, onDrop, viewportIndex, className: propClassName } = props; const [{ hovered, highlighted }, drop] = useDrop({ accept: 'thumbnail', drop: (droppedItem, monitor) => { const canDrop = monitor.canDrop(); const isOver = monitor.isOver(); if (canDrop && isOver && onDrop) { const { studyInstanceUid, displaySetInstanceUid } = droppedItem; onDrop({ viewportIndex, studyInstanceUid, displaySetInstanceUid }); } }, // Monitor, and collect props. // Returned as values by `useDrop` collect: monitor => ({ highlighted: monitor.canDrop(), hovered: monitor.isOver(), }), }); return (