UNPKG

quiz-interactions

Version:

A React UI component Library for quiz interaction types.

80 lines (62 loc) 2.66 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.dropTarget = exports.DropTargetContainer = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _react = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _reactDnd = require("react-dnd"); var DropTargetContainer = /*#__PURE__*/ function (_Component) { (0, _inherits2.default)(DropTargetContainer, _Component); function DropTargetContainer() { (0, _classCallCheck2.default)(this, DropTargetContainer); return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(DropTargetContainer).apply(this, arguments)); } (0, _createClass2.default)(DropTargetContainer, [{ key: "render", value: function render() { return this.props.connectDropTarget(_react.default.createElement("div", { className: this.props.className }, this.props.children)); } }]); DropTargetContainer.displayName = "DropTargetContainer"; return DropTargetContainer; }(_react.Component); // ============= // DRAG AND DROP // ============= exports.DropTargetContainer = DropTargetContainer; DropTargetContainer.propTypes = { children: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.object]).isRequired, className: _propTypes.default.string, connectDropTarget: _propTypes.default.func.isRequired, // injected by React DnD onDrop: _propTypes.default.func.isRequired }; DropTargetContainer.defaultProps = { className: void 0 }; var dropTarget = { drop: function drop(props, monitor, component) { var droppedItem = monitor.getItem(); props.onDrop(droppedItem); } }; exports.dropTarget = dropTarget; function collectDrop(connect, monitor) { return { connectDropTarget: connect.dropTarget() }; } var DropTargetWrapper = (0, _reactDnd.DropTarget)('dnd', dropTarget, collectDrop)(DropTargetContainer); var _default = DropTargetWrapper; exports.default = _default;