@goldenpine/react-form-builder2 0.18.4-patch.1 → 0.20.3-build.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +154 -121
- package/dist/845.app.js +1 -0
- package/dist/app.css +1 -38
- package/dist/app.css.map +1 -1
- package/dist/app.js +2 -71
- package/dist/app.js.LICENSE.txt +66 -0
- package/lib/ItemTypes.js +2 -3
- package/lib/UUID.js +1 -3
- package/lib/dynamic-option-list.js +10 -12
- package/lib/fieldset/FieldSet.js +3 -4
- package/lib/form-dynamic-edit.js +17 -21
- package/lib/form-elements/component-drag-handle.js +49 -75
- package/lib/form-elements/component-drag-layer.js +18 -18
- package/lib/form-elements/component-drag-preview.js +5 -15
- package/lib/form-elements/component-header.js +1 -2
- package/lib/form-elements/component-label.js +21 -9
- package/lib/form-elements/custom-element.js +10 -14
- package/lib/form-elements/date-picker.js +11 -16
- package/lib/form-elements/header-bar.js +10 -13
- package/lib/form-elements/index.js +195 -214
- package/lib/form-elements/myxss.js +1 -2
- package/lib/form-elements/star-rating.js +97 -90
- package/lib/form-elements-edit.js +9 -12
- package/lib/form-place-holder.js +7 -10
- package/lib/form-validator.js +11 -14
- package/lib/form.js +25 -30
- package/lib/functions/index.js +3 -6
- package/lib/index.js +9 -14
- package/lib/language-provider/IntlMessages.js +2 -3
- package/lib/language-provider/entries/en-us.js +3 -4
- package/lib/language-provider/entries/fa-ir.js +3 -4
- package/lib/language-provider/entries/it-it.js +3 -4
- package/lib/language-provider/entries/vi-vn.js +3 -4
- package/lib/language-provider/index.js +2 -4
- package/lib/multi-column/MultiColumnRow.js +12 -17
- package/lib/multi-column/dustbin.js +62 -75
- package/lib/multi-column/grip.js +2 -3
- package/lib/preview.js +18 -22
- package/lib/sortable-element.js +169 -143
- package/lib/sortable-form-elements.js +1 -2
- package/lib/stores/store.js +1 -2
- package/lib/toolbar-draggable-item.js +41 -46
- package/lib/toolbar-group-item.js +2 -4
- package/lib/toolbar.js +16 -20
- package/package.json +21 -28
- package/dist/1.app.js +0 -1
package/lib/multi-column/grip.js
CHANGED
|
@@ -44,9 +44,8 @@ var Grip = function Grip(_ref) {
|
|
|
44
44
|
className: "is-isolated fas fa-grip-vertical"
|
|
45
45
|
})));
|
|
46
46
|
};
|
|
47
|
-
var _default = (0, _reactDnd.DragSource)(_ItemTypes["default"].BOX, gripSource, function (connect) {
|
|
47
|
+
var _default = exports["default"] = (0, _reactDnd.DragSource)(_ItemTypes["default"].BOX, gripSource, function (connect) {
|
|
48
48
|
return {
|
|
49
49
|
connectDragSource: connect.dragSource()
|
|
50
50
|
};
|
|
51
|
-
})(Grip);
|
|
52
|
-
exports["default"] = _default;
|
|
51
|
+
})(Grip);
|
package/lib/preview.js
CHANGED
|
@@ -8,10 +8,9 @@ exports["default"] = void 0;
|
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
9
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
10
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
11
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
12
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
15
|
var _react = _interopRequireDefault(require("react"));
|
|
17
16
|
var _immutabilityHelper = _interopRequireDefault(require("immutability-helper"));
|
|
@@ -19,28 +18,26 @@ var _store = _interopRequireDefault(require("./stores/store"));
|
|
|
19
18
|
var _formDynamicEdit = _interopRequireDefault(require("./form-dynamic-edit"));
|
|
20
19
|
var _sortableFormElements = _interopRequireDefault(require("./sortable-form-elements"));
|
|
21
20
|
var _componentDragLayer = _interopRequireDefault(require("./form-elements/component-drag-layer"));
|
|
22
|
-
function
|
|
23
|
-
function _isNativeReflectConstruct() {
|
|
21
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
22
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /**
|
|
24
23
|
* <Preview />
|
|
25
24
|
*/
|
|
26
25
|
var PlaceHolder = _sortableFormElements["default"].PlaceHolder;
|
|
27
|
-
var Preview = /*#__PURE__*/function (_React$Component) {
|
|
28
|
-
(0, _inherits2["default"])(Preview, _React$Component);
|
|
29
|
-
var _super = _createSuper(Preview);
|
|
26
|
+
var Preview = exports["default"] = /*#__PURE__*/function (_React$Component) {
|
|
30
27
|
function Preview(props) {
|
|
31
28
|
var _this;
|
|
32
29
|
(0, _classCallCheck2["default"])(this, Preview);
|
|
33
|
-
_this =
|
|
34
|
-
(0, _defineProperty2["default"])(
|
|
30
|
+
_this = _callSuper(this, Preview, [props]);
|
|
31
|
+
(0, _defineProperty2["default"])(_this, "state", {
|
|
35
32
|
data: [],
|
|
36
33
|
answer_data: {}
|
|
37
34
|
});
|
|
38
|
-
(0, _defineProperty2["default"])(
|
|
35
|
+
(0, _defineProperty2["default"])(_this, "editModeOff", function (e) {
|
|
39
36
|
if (_this.editForm.current && !_this.editForm.current.contains(e.target)) {
|
|
40
37
|
_this.manualEditModeOff();
|
|
41
38
|
}
|
|
42
39
|
});
|
|
43
|
-
(0, _defineProperty2["default"])(
|
|
40
|
+
(0, _defineProperty2["default"])(_this, "manualEditModeOff", function () {
|
|
44
41
|
var editElement = _this.props.editElement;
|
|
45
42
|
if (editElement && editElement.dirty) {
|
|
46
43
|
editElement.dirty = false;
|
|
@@ -57,16 +54,17 @@ var Preview = /*#__PURE__*/function (_React$Component) {
|
|
|
57
54
|
answer_data: {}
|
|
58
55
|
};
|
|
59
56
|
_this.seq = 0;
|
|
60
|
-
_this._onUpdate = _this._onChange.bind(
|
|
61
|
-
_this.getDataById = _this.getDataById.bind(
|
|
62
|
-
_this.moveCard = _this.moveCard.bind(
|
|
63
|
-
_this.insertCard = _this.insertCard.bind(
|
|
64
|
-
_this.setAsChild = _this.setAsChild.bind(
|
|
65
|
-
_this.removeChild = _this.removeChild.bind(
|
|
66
|
-
_this._onDestroy = _this._onDestroy.bind(
|
|
57
|
+
_this._onUpdate = _this._onChange.bind(_this);
|
|
58
|
+
_this.getDataById = _this.getDataById.bind(_this);
|
|
59
|
+
_this.moveCard = _this.moveCard.bind(_this);
|
|
60
|
+
_this.insertCard = _this.insertCard.bind(_this);
|
|
61
|
+
_this.setAsChild = _this.setAsChild.bind(_this);
|
|
62
|
+
_this.removeChild = _this.removeChild.bind(_this);
|
|
63
|
+
_this._onDestroy = _this._onDestroy.bind(_this);
|
|
67
64
|
return _this;
|
|
68
65
|
}
|
|
69
|
-
(0,
|
|
66
|
+
(0, _inherits2["default"])(Preview, _React$Component);
|
|
67
|
+
return (0, _createClass2["default"])(Preview, [{
|
|
70
68
|
key: "componentDidMount",
|
|
71
69
|
value: function componentDidMount() {
|
|
72
70
|
var _this2 = this;
|
|
@@ -377,15 +375,13 @@ var Preview = /*#__PURE__*/function (_React$Component) {
|
|
|
377
375
|
}), /*#__PURE__*/_react["default"].createElement(_componentDragLayer["default"], null));
|
|
378
376
|
}
|
|
379
377
|
}]);
|
|
380
|
-
return Preview;
|
|
381
378
|
}(_react["default"].Component);
|
|
382
|
-
exports["default"] = Preview;
|
|
383
379
|
Preview.defaultProps = {
|
|
384
380
|
showCorrectColumn: false,
|
|
385
381
|
files: [],
|
|
386
382
|
editMode: false,
|
|
387
383
|
editElement: null,
|
|
388
|
-
className: 'col-md-9 react-form-builder-preview float-
|
|
384
|
+
className: 'col-md-9 react-form-builder-preview float-start',
|
|
389
385
|
renderEditForm: function renderEditForm(props) {
|
|
390
386
|
return /*#__PURE__*/_react["default"].createElement(_formDynamicEdit["default"], props);
|
|
391
387
|
}
|
package/lib/sortable-element.js
CHANGED
|
@@ -5,25 +5,19 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports["default"] =
|
|
8
|
+
exports["default"] = createDraggableCard;
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
16
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
18
|
-
var _reactDom = require("react-dom");
|
|
19
15
|
var _reactDnd = require("react-dnd");
|
|
20
16
|
var _ItemTypes = _interopRequireDefault(require("./ItemTypes"));
|
|
21
|
-
|
|
22
|
-
function _interopRequireWildcard(
|
|
23
|
-
function ownKeys(
|
|
24
|
-
function _objectSpread(
|
|
25
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
26
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
17
|
+
var _excluded = ["index", "id", "moveCard", "seq"];
|
|
18
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
19
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
27
21
|
var style = {
|
|
28
22
|
border: '1px dashed gray',
|
|
29
23
|
padding: '0.5rem 1rem',
|
|
@@ -31,147 +25,179 @@ var style = {
|
|
|
31
25
|
backgroundColor: 'white',
|
|
32
26
|
cursor: 'pointer'
|
|
33
27
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
if (item.data && typeof item.setAsChild === 'function') {
|
|
56
|
-
// console.log('BOX', item);
|
|
57
|
-
if (dragIndex === -1) {
|
|
58
|
-
props.insertCard(item, hoverIndex, item.id);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
},
|
|
62
|
-
hover: function hover(props, monitor, component) {
|
|
63
|
-
var _props$data, _item$data;
|
|
64
|
-
var item = monitor.getItem();
|
|
65
|
-
if (item.itemType === _ItemTypes["default"].BOX && item.index === -1) return;
|
|
66
|
-
|
|
67
|
-
// Don't replace multi-column component unless both drag & hover are multi-column
|
|
68
|
-
if ((_props$data = props.data) !== null && _props$data !== void 0 && _props$data.isContainer && !((_item$data = item.data) !== null && _item$data !== void 0 && _item$data.isContainer)) return;
|
|
69
|
-
var dragIndex = item.index;
|
|
70
|
-
var hoverIndex = props.index;
|
|
71
|
-
|
|
72
|
-
// Don't replace items with themselves
|
|
73
|
-
if (dragIndex === hoverIndex) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
if (dragIndex === -1) {
|
|
77
|
-
if (props.data && props.data.isContainer) {
|
|
78
|
-
return;
|
|
28
|
+
|
|
29
|
+
// Modern approach using a custom hook for DnD logic
|
|
30
|
+
var useDragAndDrop = function useDragAndDrop(props) {
|
|
31
|
+
var _ref = (0, _react.useRef)(null);
|
|
32
|
+
|
|
33
|
+
// Setup drag
|
|
34
|
+
var _useDrag = (0, _reactDnd.useDrag)({
|
|
35
|
+
type: _ItemTypes["default"].CARD,
|
|
36
|
+
item: function item() {
|
|
37
|
+
return {
|
|
38
|
+
itemType: _ItemTypes["default"].CARD,
|
|
39
|
+
id: props.id,
|
|
40
|
+
index: props.index
|
|
41
|
+
};
|
|
42
|
+
},
|
|
43
|
+
collect: function collect(monitor) {
|
|
44
|
+
return {
|
|
45
|
+
isDragging: monitor.isDragging()
|
|
46
|
+
};
|
|
79
47
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
48
|
+
}),
|
|
49
|
+
_useDrag2 = (0, _slicedToArray2["default"])(_useDrag, 3),
|
|
50
|
+
isDragging = _useDrag2[0].isDragging,
|
|
51
|
+
drag = _useDrag2[1],
|
|
52
|
+
preview = _useDrag2[2];
|
|
84
53
|
|
|
85
|
-
|
|
86
|
-
|
|
54
|
+
// Setup drop
|
|
55
|
+
var _useDrop = (0, _reactDnd.useDrop)({
|
|
56
|
+
accept: [_ItemTypes["default"].CARD, _ItemTypes["default"].BOX],
|
|
57
|
+
drop: function drop(item) {
|
|
58
|
+
// Don't handle drops if we're a container and this is a card drop
|
|
59
|
+
if (props.data && props.data.isContainer || item.itemType === _ItemTypes["default"].CARD) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
var hoverIndex = props.index;
|
|
63
|
+
var dragIndex = item.index;
|
|
87
64
|
|
|
88
|
-
|
|
89
|
-
|
|
65
|
+
// Handle box drops
|
|
66
|
+
if (item.data && typeof item.setAsChild === 'function') {
|
|
67
|
+
if (dragIndex === -1) {
|
|
68
|
+
props.insertCard(item, hoverIndex, item.id);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
hover: function hover(item, monitor) {
|
|
73
|
+
var _props$data, _item$data;
|
|
74
|
+
// Don't replace items being dragged from box with index -1
|
|
75
|
+
if (item.itemType === _ItemTypes["default"].BOX && item.index === -1) return;
|
|
90
76
|
|
|
91
|
-
|
|
92
|
-
|
|
77
|
+
// Don't replace multi-column component unless both drag & hover are multi-column
|
|
78
|
+
if ((_props$data = props.data) !== null && _props$data !== void 0 && _props$data.isContainer && !((_item$data = item.data) !== null && _item$data !== void 0 && _item$data.isContainer)) return;
|
|
79
|
+
var dragIndex = item.index;
|
|
80
|
+
var hoverIndex = props.index;
|
|
93
81
|
|
|
94
|
-
|
|
95
|
-
|
|
82
|
+
// Don't replace items with themselves
|
|
83
|
+
if (dragIndex === hoverIndex) {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
96
86
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
87
|
+
// Handle new items being created
|
|
88
|
+
if (dragIndex === -1) {
|
|
89
|
+
if (props.data && props.data.isContainer) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
item.index = hoverIndex;
|
|
93
|
+
props.insertCard(item.onCreate(item.data), hoverIndex);
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
100
96
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
97
|
+
// Skip if no ref available
|
|
98
|
+
if (!_ref.current) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
105
101
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
return;
|
|
109
|
-
}
|
|
102
|
+
// Determine rectangle on screen
|
|
103
|
+
var hoverBoundingRect = _ref.current.getBoundingClientRect();
|
|
110
104
|
|
|
111
|
-
|
|
112
|
-
|
|
105
|
+
// Get vertical middle
|
|
106
|
+
var hoverMiddleY = (hoverBoundingRect.bottom - hoverBoundingRect.top) / 2;
|
|
113
107
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
// to avoid expensive index searches.
|
|
108
|
+
// Determine mouse position
|
|
109
|
+
var clientOffset = monitor.getClientOffset();
|
|
110
|
+
if (!clientOffset) return;
|
|
118
111
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
112
|
+
// Get pixels to the top
|
|
113
|
+
var hoverClientY = clientOffset.y - hoverBoundingRect.top;
|
|
114
|
+
|
|
115
|
+
// Only perform the move when the mouse has crossed half of the items height
|
|
116
|
+
// When dragging downwards, only move when the cursor is below 50%
|
|
117
|
+
// When dragging upwards, only move when the cursor is above 50%
|
|
118
|
+
|
|
119
|
+
// Dragging downwards
|
|
120
|
+
if (dragIndex < hoverIndex && hoverClientY < hoverMiddleY) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// Dragging upwards
|
|
125
|
+
if (dragIndex > hoverIndex && hoverClientY > hoverMiddleY) {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
// Time to actually perform the action
|
|
130
|
+
props.moveCard(dragIndex, hoverIndex);
|
|
124
131
|
|
|
125
|
-
//
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
function Card() {
|
|
131
|
-
(0, _classCallCheck2["default"])(this, Card);
|
|
132
|
-
return _super.apply(this, arguments);
|
|
133
|
-
}
|
|
134
|
-
(0, _createClass2["default"])(Card, [{
|
|
135
|
-
key: "render",
|
|
136
|
-
value: function render() {
|
|
137
|
-
var _this$props = this.props,
|
|
138
|
-
isDragging = _this$props.isDragging,
|
|
139
|
-
connectDragPreview = _this$props.connectDragPreview,
|
|
140
|
-
connectDropTarget = _this$props.connectDropTarget;
|
|
141
|
-
var opacity = isDragging ? 0 : 1;
|
|
142
|
-
return connectDragPreview(connectDropTarget(/*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ComposedComponent, (0, _extends2["default"])({}, this.props, {
|
|
143
|
-
style: _objectSpread(_objectSpread({}, style), {}, {
|
|
144
|
-
opacity: opacity
|
|
145
|
-
})
|
|
146
|
-
})))));
|
|
132
|
+
// Note: we're mutating the monitor item here!
|
|
133
|
+
// Generally it's better to avoid mutations,
|
|
134
|
+
// but it's good here for the sake of performance
|
|
135
|
+
// to avoid expensive index searches.
|
|
136
|
+
item.index = hoverIndex;
|
|
147
137
|
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
138
|
+
}),
|
|
139
|
+
_useDrop2 = (0, _slicedToArray2["default"])(_useDrop, 2),
|
|
140
|
+
drop = _useDrop2[1];
|
|
141
|
+
|
|
142
|
+
// Connect the drag and drop refs to the same element
|
|
143
|
+
return {
|
|
144
|
+
ref: function ref(node) {
|
|
145
|
+
_ref.current = node;
|
|
146
|
+
drop(node);
|
|
147
|
+
drag(node);
|
|
148
|
+
},
|
|
149
|
+
previewRef: preview,
|
|
150
|
+
isDragging: isDragging
|
|
151
|
+
};
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// Modern approach using a functional component wrapper instead of HOC
|
|
155
|
+
var DraggableCard = function DraggableCard(props) {
|
|
156
|
+
var index = props.index,
|
|
157
|
+
id = props.id,
|
|
158
|
+
moveCard = props.moveCard,
|
|
159
|
+
_props$seq = props.seq,
|
|
160
|
+
seq = _props$seq === void 0 ? -1 : _props$seq,
|
|
161
|
+
restProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
162
|
+
var _useDragAndDrop = useDragAndDrop(props),
|
|
163
|
+
ref = _useDragAndDrop.ref,
|
|
164
|
+
previewRef = _useDragAndDrop.previewRef,
|
|
165
|
+
isDragging = _useDragAndDrop.isDragging;
|
|
166
|
+
var opacity = isDragging ? 0 : 1;
|
|
167
|
+
|
|
168
|
+
// Use the ComposedComponent passed in props
|
|
169
|
+
var ComposedComponent = props.component;
|
|
170
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
171
|
+
ref: previewRef
|
|
172
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
173
|
+
ref: ref
|
|
174
|
+
}, /*#__PURE__*/_react["default"].createElement(ComposedComponent, (0, _extends2["default"])({}, restProps, {
|
|
175
|
+
index: index,
|
|
176
|
+
id: id,
|
|
177
|
+
moveCard: moveCard,
|
|
178
|
+
seq: seq,
|
|
179
|
+
style: _objectSpread(_objectSpread({}, style), {}, {
|
|
180
|
+
opacity: opacity
|
|
181
|
+
})
|
|
182
|
+
}))));
|
|
183
|
+
};
|
|
184
|
+
DraggableCard.propTypes = {
|
|
185
|
+
component: _propTypes["default"].elementType.isRequired,
|
|
186
|
+
index: _propTypes["default"].number.isRequired,
|
|
187
|
+
isDragging: _propTypes["default"].bool,
|
|
188
|
+
id: _propTypes["default"].any.isRequired,
|
|
189
|
+
moveCard: _propTypes["default"].func.isRequired,
|
|
190
|
+
seq: _propTypes["default"].number
|
|
191
|
+
};
|
|
192
|
+
DraggableCard.defaultProps = {
|
|
193
|
+
seq: -1
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
// This replaces the HOC pattern with a component that takes the component as a prop
|
|
197
|
+
function createDraggableCard(ComposedComponent) {
|
|
198
|
+
return function (props) {
|
|
199
|
+
return /*#__PURE__*/_react["default"].createElement(DraggableCard, (0, _extends2["default"])({}, props, {
|
|
200
|
+
component: ComposedComponent
|
|
201
|
+
}));
|
|
202
|
+
};
|
|
177
203
|
}
|
|
@@ -62,5 +62,4 @@ FormElements.TwoColumnRow = (0, _sortableElement["default"])(_multiColumn.TwoCol
|
|
|
62
62
|
FormElements.ThreeColumnRow = (0, _sortableElement["default"])(_multiColumn.ThreeColumnRow);
|
|
63
63
|
FormElements.MultiColumnRow = (0, _sortableElement["default"])(_multiColumn.MultiColumnRow);
|
|
64
64
|
FormElements.CustomElement = (0, _sortableElement["default"])(_customElement["default"]);
|
|
65
|
-
var _default = FormElements;
|
|
66
|
-
exports["default"] = _default;
|
|
65
|
+
var _default = exports["default"] = FormElements;
|
package/lib/stores/store.js
CHANGED
|
@@ -5,56 +5,51 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports["default"] = void 0;
|
|
8
|
-
var
|
|
9
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
11
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
12
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
9
|
var _react = _interopRequireDefault(require("react"));
|
|
14
10
|
var _reactDnd = require("react-dnd");
|
|
15
11
|
var _ItemTypes = _interopRequireDefault(require("./ItemTypes"));
|
|
16
12
|
var _UUID = _interopRequireDefault(require("./UUID"));
|
|
17
|
-
|
|
18
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /**
|
|
13
|
+
/**
|
|
19
14
|
* <ToolbarItem />
|
|
20
15
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
16
|
+
|
|
17
|
+
var ToolbarItem = function ToolbarItem(_ref) {
|
|
18
|
+
var data = _ref.data,
|
|
19
|
+
onCreate = _ref.onCreate,
|
|
20
|
+
onClick = _ref.onClick;
|
|
21
|
+
// Setup drag functionality using the useDrag hook
|
|
22
|
+
var _useDrag = (0, _reactDnd.useDrag)({
|
|
23
|
+
type: _ItemTypes["default"].CARD,
|
|
24
|
+
item: function item() {
|
|
25
|
+
return {
|
|
26
|
+
id: _UUID["default"].uuid(),
|
|
27
|
+
index: -1,
|
|
28
|
+
data: data,
|
|
29
|
+
onCreate: onCreate
|
|
30
|
+
};
|
|
31
|
+
},
|
|
32
|
+
collect: function collect(monitor) {
|
|
33
|
+
return {
|
|
34
|
+
isDragging: monitor.isDragging()
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
}),
|
|
38
|
+
_useDrag2 = (0, _slicedToArray2["default"])(_useDrag, 2),
|
|
39
|
+
isDragging = _useDrag2[0].isDragging,
|
|
40
|
+
drag = _useDrag2[1];
|
|
41
|
+
|
|
42
|
+
// Apply slight opacity while dragging for better UX
|
|
43
|
+
var opacity = isDragging ? 0.5 : 1;
|
|
44
|
+
return /*#__PURE__*/_react["default"].createElement("li", {
|
|
45
|
+
ref: drag,
|
|
46
|
+
onClick: onClick,
|
|
47
|
+
style: {
|
|
48
|
+
opacity: opacity,
|
|
49
|
+
cursor: 'move'
|
|
51
50
|
}
|
|
52
|
-
}]
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
connectDragSource: connect.dragSource()
|
|
58
|
-
};
|
|
59
|
-
})(ToolbarItem);
|
|
60
|
-
exports["default"] = _default;
|
|
51
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
52
|
+
className: data.icon
|
|
53
|
+
}), data.name);
|
|
54
|
+
};
|
|
55
|
+
var _default = exports["default"] = ToolbarItem;
|
|
@@ -8,8 +8,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
function
|
|
12
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
13
12
|
/**
|
|
14
13
|
* <ToolbarGroupItem />
|
|
15
14
|
*/
|
|
@@ -36,5 +35,4 @@ function ToolbarGroupItem(props) {
|
|
|
36
35
|
className: classShow
|
|
37
36
|
}, /*#__PURE__*/_react["default"].createElement("ul", null, group.map(renderItem)))));
|
|
38
37
|
}
|
|
39
|
-
var _default = ToolbarGroupItem;
|
|
40
|
-
exports["default"] = _default;
|
|
38
|
+
var _default = exports["default"] = ToolbarGroupItem;
|