var React = require('react'); var Util = require('../../util'); var AppIcon = require('../common/app-icon.js'); var DragSource = require('react-dnd').DragSource; var DesktopAppItem = React.createClass({ render: function() { var desktopEntry = this.props.desktopEntry; var label = desktopEntry.Name; var category = desktopEntry.Categories; var icon = desktopEntry.Icon; var connectDragSource = this.props.connectDragSource; return connectDragSource(
  • {label}
  • ); } }); var dragSourceSpec = { beginDrag: function(props) { return props; }, endDrag: function(props, monitor) { if (!monitor.didDrop()) { return; } var dropResult = monitor.getDropResult(); return props.onItemDropped(props.desktopEntry, dropResult); } }; function dragSourceCollect(connect, monitor) { return { connectDragSource: connect.dragSource(), isDragging: monitor.isDragging() }; } module.exports = DragSource('NEW_ITEM', dragSourceSpec, dragSourceCollect)(DesktopAppItem);