UNPKG

5.99 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
8
9var _react = require('react');
10
11var _react2 = _interopRequireDefault(_react);
12
13var _reactBeautifulDnd = require('react-beautiful-dnd');
14
15var _reactDraggable = require('react-draggable');
16
17var _reactDraggable2 = _interopRequireDefault(_reactDraggable);
18
19var _propTypes = require('prop-types');
20
21var _propTypes2 = _interopRequireDefault(_propTypes);
22
23var _lodash = require('lodash.isequal');
24
25var _lodash2 = _interopRequireDefault(_lodash);
26
27var _SortList = require('./SortList');
28
29var _SortList2 = _interopRequireDefault(_SortList);
30
31var _Between = require('./Between');
32
33var _Between2 = _interopRequireDefault(_Between);
34
35var _GridLayout = require('./GridLayout');
36
37var _GridLayout2 = _interopRequireDefault(_GridLayout);
38
39function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40
41function _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }
42
43function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
44
45function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
46
47function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }
48
49var propTypes = {
50 onStart: _propTypes2["default"].func,
51 onDrag: _propTypes2["default"].func,
52 onStop: _propTypes2["default"].func,
53 onDragUpdate: _propTypes2["default"].func,
54 dropClass: _propTypes2["default"].string,
55 dropOverClass: _propTypes2["default"].string,
56 dragClass: _propTypes2["default"].string,
57 dragingClass: _propTypes2["default"].string,
58 draggedClass: _propTypes2["default"].string,
59 className: _propTypes2["default"].string,
60 style: _propTypes2["default"].object,
61 list: _propTypes2["default"].array,
62 otherList: _propTypes2["default"].array,
63 type: _propTypes2["default"].oneOf(['vertical', 'horizontal', 'betweenVertical', 'betweenHorizontal']),
64 showKey: _propTypes2["default"].string
65
66};
67var defaultProps = {
68 onStart: function onStart() {},
69 onDrag: function onDrag() {},
70 onStop: function onStop() {},
71 onDragUpdate: function onDragUpdate() {},
72 list: false,
73 otherList: [],
74 dropClass: '',
75 dropOverClass: '',
76 dragClass: '',
77 dragingClass: '',
78 draggedClass: '',
79 type: 'vertical'
80};
81
82var Dnd = function (_Component) {
83 _inherits(Dnd, _Component);
84
85 function Dnd(props) {
86 _classCallCheck(this, Dnd);
87
88 var _this = _possibleConstructorReturn(this, _Component.call(this, props));
89
90 _this.state = {
91 items: _this.props.list || []
92 };
93 return _this;
94 }
95
96 Dnd.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
97 if (!(0, _lodash2["default"])(this.state.items, nextProps.list)) {
98 this.setState({
99 items: nextProps.list
100 });
101 }
102 };
103
104 Dnd.prototype.render = function render() {
105 var _this2 = this;
106
107 var self = this;
108 var DndType = function DndType() {
109 switch (_this2.props.type) {
110 case 'vertical':
111 return _react2["default"].createElement(_SortList2["default"], _this2.props);
112 break;
113 case 'horizontal':
114 return _react2["default"].createElement(_SortList2["default"], _this2.props);
115 break;
116 case 'betweenVertical':
117 return _react2["default"].createElement(_Between2["default"], _this2.props);
118 break;
119 case 'betweenHorizontal':
120 return _react2["default"].createElement(_Between2["default"], _this2.props);
121 break;
122 default:
123 return _react2["default"].createElement(_SortList2["default"], _this2.props);
124 break;
125 }
126 };
127 return _react2["default"].createElement(
128 'div',
129 null,
130 self.state.items.length ? DndType() : _react2["default"].createElement(
131 _reactDraggable2["default"],
132 _extends({ defaultClassName: this.props.dragClass,
133 defaultClassNameDragging: this.props.dragingClass,
134 defaultClassNameDragged: this.props.draggedClass
135 }, this.props),
136 self.props.children
137 )
138 );
139 };
140
141 return Dnd;
142}(_react.Component);
143
144Dnd.propTypes = propTypes;
145Dnd.defaultProps = defaultProps;
146Dnd.Drag = _reactDraggable2["default"];
147Dnd.DragDropContext = _reactBeautifulDnd.DragDropContext;
148Dnd.Droppable = _reactBeautifulDnd.Droppable;
149Dnd.Draggable = _reactBeautifulDnd.Draggable;
150Dnd.GridLayout = _GridLayout2["default"];
151exports["default"] = Dnd;
152module.exports = exports['default'];
\No newline at end of file