@pie-lib/graphing 2.34.2-next.0 → 2.35.0-mui-update.0
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/CHANGELOG.md +10 -8
- package/lib/axis/arrow.js +19 -55
- package/lib/axis/arrow.js.map +1 -1
- package/lib/axis/axes.js +104 -186
- package/lib/axis/axes.js.map +1 -1
- package/lib/axis/index.js +1 -6
- package/lib/axis/index.js.map +1 -1
- package/lib/bg.js +21 -49
- package/lib/bg.js.map +1 -1
- package/lib/container/actions.js +2 -8
- package/lib/container/actions.js.map +1 -1
- package/lib/container/index.js +14 -59
- package/lib/container/index.js.map +1 -1
- package/lib/container/marks.js +1 -6
- package/lib/container/marks.js.map +1 -1
- package/lib/container/middleware.js +2 -8
- package/lib/container/middleware.js.map +1 -1
- package/lib/container/reducer.js +1 -8
- package/lib/container/reducer.js.map +1 -1
- package/lib/coordinates-label.js +23 -55
- package/lib/coordinates-label.js.map +1 -1
- package/lib/graph-with-controls.js +113 -183
- package/lib/graph-with-controls.js.map +1 -1
- package/lib/graph.js +59 -116
- package/lib/graph.js.map +1 -1
- package/lib/grid-setup.js +161 -223
- package/lib/grid-setup.js.map +1 -1
- package/lib/grid.js +28 -73
- package/lib/grid.js.map +1 -1
- package/lib/index.js +1 -13
- package/lib/index.js.map +1 -1
- package/lib/key-legend.js +41 -85
- package/lib/key-legend.js.map +1 -1
- package/lib/label-svg-icon.js +1 -7
- package/lib/label-svg-icon.js.map +1 -1
- package/lib/labels.js +61 -119
- package/lib/labels.js.map +1 -1
- package/lib/mark-label.js +113 -163
- package/lib/mark-label.js.map +1 -1
- package/lib/toggle-bar.js +158 -242
- package/lib/toggle-bar.js.map +1 -1
- package/lib/tool-menu.js +16 -48
- package/lib/tool-menu.js.map +1 -1
- package/lib/tools/absolute/component.js +4 -10
- package/lib/tools/absolute/component.js.map +1 -1
- package/lib/tools/absolute/index.js +3 -16
- package/lib/tools/absolute/index.js.map +1 -1
- package/lib/tools/circle/bg-circle.js +42 -92
- package/lib/tools/circle/bg-circle.js.map +1 -1
- package/lib/tools/circle/component.js +79 -165
- package/lib/tools/circle/component.js.map +1 -1
- package/lib/tools/circle/index.js +3 -13
- package/lib/tools/circle/index.js.map +1 -1
- package/lib/tools/exponential/component.js +4 -10
- package/lib/tools/exponential/component.js.map +1 -1
- package/lib/tools/exponential/index.js +3 -18
- package/lib/tools/exponential/index.js.map +1 -1
- package/lib/tools/index.js +3 -16
- package/lib/tools/index.js.map +1 -1
- package/lib/tools/line/component.js +27 -48
- package/lib/tools/line/component.js.map +1 -1
- package/lib/tools/line/index.js +1 -6
- package/lib/tools/line/index.js.map +1 -1
- package/lib/tools/parabola/component.js +4 -10
- package/lib/tools/parabola/component.js.map +1 -1
- package/lib/tools/parabola/index.js +3 -16
- package/lib/tools/parabola/index.js.map +1 -1
- package/lib/tools/point/component.js +24 -71
- package/lib/tools/point/component.js.map +1 -1
- package/lib/tools/point/index.js +3 -11
- package/lib/tools/point/index.js.map +1 -1
- package/lib/tools/polygon/component.js +82 -183
- package/lib/tools/polygon/component.js.map +1 -1
- package/lib/tools/polygon/index.js +6 -23
- package/lib/tools/polygon/index.js.map +1 -1
- package/lib/tools/polygon/line.js +48 -91
- package/lib/tools/polygon/line.js.map +1 -1
- package/lib/tools/polygon/polygon.js +65 -98
- package/lib/tools/polygon/polygon.js.map +1 -1
- package/lib/tools/ray/component.js +41 -60
- package/lib/tools/ray/component.js.map +1 -1
- package/lib/tools/ray/index.js +1 -6
- package/lib/tools/ray/index.js.map +1 -1
- package/lib/tools/segment/component.js +25 -43
- package/lib/tools/segment/component.js.map +1 -1
- package/lib/tools/segment/index.js +1 -6
- package/lib/tools/segment/index.js.map +1 -1
- package/lib/tools/shared/arrow-head.js +69 -28
- package/lib/tools/shared/arrow-head.js.map +1 -1
- package/lib/tools/shared/icons/CorrectSVG.js +3 -8
- package/lib/tools/shared/icons/CorrectSVG.js.map +1 -1
- package/lib/tools/shared/icons/IncorrectSVG.js +3 -8
- package/lib/tools/shared/icons/IncorrectSVG.js.map +1 -1
- package/lib/tools/shared/icons/MissingSVG.js +3 -8
- package/lib/tools/shared/icons/MissingSVG.js.map +1 -1
- package/lib/tools/shared/line/index.js +126 -187
- package/lib/tools/shared/line/index.js.map +1 -1
- package/lib/tools/shared/line/line-path.js +70 -100
- package/lib/tools/shared/line/line-path.js.map +1 -1
- package/lib/tools/shared/line/with-root-edge.js +21 -55
- package/lib/tools/shared/line/with-root-edge.js.map +1 -1
- package/lib/tools/shared/point/arrow-point.js +23 -62
- package/lib/tools/shared/point/arrow-point.js.map +1 -1
- package/lib/tools/shared/point/arrow.js +24 -52
- package/lib/tools/shared/point/arrow.js.map +1 -1
- package/lib/tools/shared/point/base-point.js +54 -72
- package/lib/tools/shared/point/base-point.js.map +1 -1
- package/lib/tools/shared/point/index.js +22 -57
- package/lib/tools/shared/point/index.js.map +1 -1
- package/lib/tools/shared/styles.js +10 -38
- package/lib/tools/shared/styles.js.map +1 -1
- package/lib/tools/shared/types.js +2 -9
- package/lib/tools/shared/types.js.map +1 -1
- package/lib/tools/sine/component.js +8 -19
- package/lib/tools/sine/component.js.map +1 -1
- package/lib/tools/sine/index.js +3 -16
- package/lib/tools/sine/index.js.map +1 -1
- package/lib/tools/vector/component.js +24 -44
- package/lib/tools/vector/component.js.map +1 -1
- package/lib/tools/vector/index.js +1 -6
- package/lib/tools/vector/index.js.map +1 -1
- package/lib/undo-redo.js +29 -69
- package/lib/undo-redo.js.map +1 -1
- package/lib/use-debounce.js +4 -11
- package/lib/use-debounce.js.map +1 -1
- package/lib/utils.js +51 -128
- package/lib/utils.js.map +1 -1
- package/package.json +15 -13
- package/src/axis/arrow.jsx +7 -12
- package/src/axis/axes.jsx +40 -45
- package/src/coordinates-label.jsx +13 -18
- package/src/graph-with-controls.jsx +52 -59
- package/src/grid-setup.jsx +204 -206
- package/src/grid.jsx +1 -3
- package/src/key-legend.jsx +52 -56
- package/src/labels.jsx +21 -30
- package/src/mark-label.jsx +83 -81
- package/src/toggle-bar.jsx +155 -166
- package/src/tools/circle/bg-circle.jsx +20 -28
- package/src/tools/circle/component.jsx +28 -63
- package/src/tools/line/component.jsx +22 -15
- package/src/tools/polygon/component.jsx +1 -2
- package/src/tools/polygon/line.jsx +28 -32
- package/src/tools/polygon/polygon.jsx +52 -45
- package/src/tools/ray/component.jsx +38 -25
- package/src/tools/segment/component.jsx +19 -18
- package/src/tools/shared/arrow-head.jsx +60 -7
- package/src/tools/shared/line/index.jsx +39 -2
- package/src/tools/shared/line/line-path.jsx +54 -58
- package/src/tools/shared/point/arrow-point.jsx +10 -24
- package/src/tools/shared/point/arrow.jsx +5 -11
- package/src/tools/shared/point/base-point.jsx +42 -19
- package/src/tools/shared/point/index.jsx +27 -44
- package/src/tools/vector/component.jsx +11 -16
- package/src/undo-redo.jsx +19 -21
package/lib/toggle-bar.js
CHANGED
|
@@ -1,94 +1,69 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
|
-
exports["default"] = exports.ToggleBar = exports.MiniButton =
|
|
9
|
-
|
|
7
|
+
exports["default"] = exports.ToggleBar = exports.MiniButton = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
9
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
10
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
11
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
12
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
13
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
22
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
15
|
var _react = _interopRequireDefault(require("react"));
|
|
25
|
-
|
|
26
16
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
31
|
-
|
|
32
|
-
var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
|
|
33
|
-
|
|
17
|
+
var _styles = require("@mui/material/styles");
|
|
18
|
+
var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
34
19
|
var _renderUi = require("@pie-lib/render-ui");
|
|
35
|
-
|
|
36
20
|
var _tools = require("./tools");
|
|
37
|
-
|
|
38
21
|
var _drag = require("@pie-lib/drag");
|
|
39
|
-
|
|
22
|
+
var _core = require("@dnd-kit/core");
|
|
23
|
+
var _utilities = require("@dnd-kit/utilities");
|
|
24
|
+
var _sortable = require("@dnd-kit/sortable");
|
|
40
25
|
var _translator = _interopRequireDefault(require("@pie-lib/translator"));
|
|
41
|
-
|
|
42
|
-
function
|
|
43
|
-
|
|
44
|
-
function
|
|
45
|
-
|
|
46
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
47
|
-
|
|
48
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
49
|
-
|
|
26
|
+
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)); }
|
|
27
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
28
|
+
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; }
|
|
29
|
+
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; }
|
|
50
30
|
var translator = _translator["default"].translator;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
},
|
|
67
|
-
disabled: {
|
|
68
|
-
'& span': {
|
|
69
|
-
color: _renderUi.color.primary()
|
|
70
|
-
},
|
|
71
|
-
backgroundColor: _renderUi.color.disabled()
|
|
31
|
+
var StyledMiniButton = (0, _styles.styled)(_Button["default"], {
|
|
32
|
+
shouldForwardProp: function shouldForwardProp(prop) {
|
|
33
|
+
return !['selected'].includes(prop);
|
|
34
|
+
}
|
|
35
|
+
})(function (_ref) {
|
|
36
|
+
var selected = _ref.selected,
|
|
37
|
+
disabled = _ref.disabled;
|
|
38
|
+
return _objectSpread(_objectSpread(_objectSpread({
|
|
39
|
+
color: _renderUi.color.text(),
|
|
40
|
+
backgroundColor: _renderUi.color.background()
|
|
41
|
+
}, selected && {
|
|
42
|
+
border: "1px solid ".concat(_renderUi.color.secondary())
|
|
43
|
+
}), !selected && {
|
|
44
|
+
'& span': {
|
|
45
|
+
color: _renderUi.color.primary()
|
|
72
46
|
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
47
|
+
}), disabled && {
|
|
48
|
+
'& span': {
|
|
49
|
+
color: _renderUi.color.primary()
|
|
50
|
+
},
|
|
51
|
+
backgroundColor: _renderUi.color.disabled()
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
var MiniButton = exports.MiniButton = function MiniButton(props) {
|
|
77
55
|
var disabled = props.disabled,
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
language = props.language;
|
|
56
|
+
className = props.className,
|
|
57
|
+
selected = props.selected,
|
|
58
|
+
value = props.value,
|
|
59
|
+
_onClick = props.onClick,
|
|
60
|
+
language = props.language;
|
|
84
61
|
var translatorKey = value.toLowerCase();
|
|
85
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
62
|
+
return /*#__PURE__*/_react["default"].createElement(StyledMiniButton, {
|
|
86
63
|
size: "small",
|
|
87
64
|
disabled: disabled,
|
|
88
|
-
className:
|
|
89
|
-
|
|
90
|
-
disabled: (0, _classnames["default"])(disabled && classes.disabled)
|
|
91
|
-
},
|
|
65
|
+
className: className,
|
|
66
|
+
selected: selected,
|
|
92
67
|
value: value,
|
|
93
68
|
key: value,
|
|
94
69
|
variant: "outlined",
|
|
@@ -100,78 +75,97 @@ var MiniButton = (0, _styles.withStyles)(buttonStyles)(function (props) {
|
|
|
100
75
|
}, translator.t("graphing.".concat(translatorKey), {
|
|
101
76
|
lng: language
|
|
102
77
|
}));
|
|
103
|
-
}
|
|
104
|
-
exports.MiniButton = MiniButton;
|
|
78
|
+
};
|
|
105
79
|
MiniButton.propTypes = {
|
|
106
80
|
disabled: _propTypes["default"].bool,
|
|
107
|
-
classes: _propTypes["default"].object,
|
|
108
81
|
className: _propTypes["default"].string,
|
|
109
82
|
disabledClassName: _propTypes["default"].string,
|
|
110
83
|
selected: _propTypes["default"].bool,
|
|
111
84
|
value: _propTypes["default"].string,
|
|
112
85
|
onClick: _propTypes["default"].func
|
|
113
86
|
};
|
|
114
|
-
|
|
115
|
-
var
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
87
|
+
var StyledToolsContainer = (0, _styles.styled)('div')(function (_ref2) {
|
|
88
|
+
var theme = _ref2.theme;
|
|
89
|
+
return {
|
|
90
|
+
display: 'flex',
|
|
91
|
+
flexWrap: 'wrap'
|
|
92
|
+
};
|
|
93
|
+
});
|
|
94
|
+
var StyledButton = (0, _styles.styled)(MiniButton)(function (_ref3) {
|
|
95
|
+
var theme = _ref3.theme;
|
|
96
|
+
return {
|
|
97
|
+
marginRight: theme.spacing(0.5),
|
|
98
|
+
marginBottom: theme.spacing(0.5),
|
|
99
|
+
color: _renderUi.color.text()
|
|
100
|
+
};
|
|
101
|
+
});
|
|
102
|
+
var StyledWrapper = (0, _styles.styled)('div')({
|
|
103
|
+
position: 'relative'
|
|
104
|
+
});
|
|
105
|
+
var ToggleBar = exports.ToggleBar = /*#__PURE__*/function (_React$Component) {
|
|
120
106
|
function ToggleBar() {
|
|
121
107
|
var _this;
|
|
122
|
-
|
|
123
108
|
(0, _classCallCheck2["default"])(this, ToggleBar);
|
|
124
|
-
|
|
125
109
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
126
110
|
args[_key] = arguments[_key];
|
|
127
111
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "select", function (e) {
|
|
112
|
+
_this = _callSuper(this, ToggleBar, [].concat(args));
|
|
113
|
+
(0, _defineProperty2["default"])(_this, "select", function (e) {
|
|
131
114
|
return _this.props.onChange(e.buttonValue || e.target.textContent);
|
|
132
115
|
});
|
|
133
|
-
(0, _defineProperty2["default"])(
|
|
116
|
+
(0, _defineProperty2["default"])(_this, "moveTool", function (dragIndex, hoverIndex) {
|
|
134
117
|
var _this$props = _this.props,
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
var
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
118
|
+
options = _this$props.options,
|
|
119
|
+
onChangeToolsOrder = _this$props.onChangeToolsOrder;
|
|
120
|
+
var newOptions = (0, _sortable.arrayMove)(options, dragIndex, hoverIndex);
|
|
121
|
+
console.log('New Options Order:', newOptions);
|
|
122
|
+
onChangeToolsOrder(newOptions);
|
|
123
|
+
});
|
|
124
|
+
(0, _defineProperty2["default"])(_this, "handleDragEnd", function (event) {
|
|
125
|
+
var active = event.active,
|
|
126
|
+
over = event.over;
|
|
127
|
+
console.log('Drag End Event:', event);
|
|
128
|
+
if (!over || !active) return;
|
|
129
|
+
var activeData = active.data.current;
|
|
130
|
+
var overData = over.data.current;
|
|
131
|
+
if ((activeData === null || activeData === void 0 ? void 0 : activeData.type) === 'tool' && (overData === null || overData === void 0 ? void 0 : overData.type) === 'tool') {
|
|
132
|
+
var dragIndex = activeData.index;
|
|
133
|
+
var hoverIndex = overData.index;
|
|
134
|
+
if (dragIndex !== hoverIndex) {
|
|
135
|
+
_this.moveTool(dragIndex, hoverIndex);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
141
138
|
});
|
|
142
139
|
return _this;
|
|
143
140
|
}
|
|
144
|
-
|
|
145
|
-
(0, _createClass2["default"])(ToggleBar, [{
|
|
141
|
+
(0, _inherits2["default"])(ToggleBar, _React$Component);
|
|
142
|
+
return (0, _createClass2["default"])(ToggleBar, [{
|
|
146
143
|
key: "render",
|
|
147
144
|
value: function render() {
|
|
148
145
|
var _this2 = this;
|
|
149
|
-
|
|
150
146
|
var _this$props2 = this.props,
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
147
|
+
className = _this$props2.className,
|
|
148
|
+
disabled = _this$props2.disabled,
|
|
149
|
+
options = _this$props2.options,
|
|
150
|
+
selectedToolType = _this$props2.selectedToolType,
|
|
151
|
+
draggableTools = _this$props2.draggableTools,
|
|
152
|
+
language = _this$props2.language;
|
|
153
|
+
return /*#__PURE__*/_react["default"].createElement(_drag.DragProvider, {
|
|
154
|
+
onDragEnd: this.handleDragEnd
|
|
155
|
+
}, /*#__PURE__*/_react["default"].createElement(StyledToolsContainer, {
|
|
156
|
+
className: className
|
|
160
157
|
}, (options || []).map(function (option, index) {
|
|
161
158
|
if ((_tools.allTools || []).includes(option)) {
|
|
162
159
|
var isSelected = option === selectedToolType;
|
|
163
|
-
|
|
164
160
|
var toolRef = /*#__PURE__*/_react["default"].createRef();
|
|
165
|
-
|
|
166
161
|
return /*#__PURE__*/_react["default"].createElement(DragTool, {
|
|
167
162
|
key: option,
|
|
168
163
|
index: index,
|
|
164
|
+
value: option,
|
|
169
165
|
draggable: draggableTools,
|
|
170
166
|
moveTool: _this2.moveTool,
|
|
171
|
-
classes: classes,
|
|
172
167
|
toolRef: toolRef
|
|
173
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
174
|
-
className: (0, _classnames["default"])(classes.button, isSelected && classes.selected),
|
|
168
|
+
}, /*#__PURE__*/_react["default"].createElement(StyledButton, {
|
|
175
169
|
disabled: disabled,
|
|
176
170
|
disableRipple: true,
|
|
177
171
|
onClick: _this2.select,
|
|
@@ -180,15 +174,11 @@ var ToggleBar = /*#__PURE__*/function (_React$Component) {
|
|
|
180
174
|
language: language
|
|
181
175
|
}));
|
|
182
176
|
}
|
|
183
|
-
}));
|
|
177
|
+
})));
|
|
184
178
|
}
|
|
185
179
|
}]);
|
|
186
|
-
|
|
187
|
-
}(_react["default"].Component);
|
|
188
|
-
|
|
189
|
-
exports.ToggleBar = ToggleBar;
|
|
180
|
+
}(_react["default"].Component); // DragTool functional component using @dnd-kit hooks
|
|
190
181
|
(0, _defineProperty2["default"])(ToggleBar, "propTypes", {
|
|
191
|
-
classes: _propTypes["default"].object.isRequired,
|
|
192
182
|
className: _propTypes["default"].string,
|
|
193
183
|
options: _propTypes["default"].arrayOf(_propTypes["default"].string),
|
|
194
184
|
selectedToolType: _propTypes["default"].string,
|
|
@@ -199,138 +189,64 @@ exports.ToggleBar = ToggleBar;
|
|
|
199
189
|
language: _propTypes["default"].string
|
|
200
190
|
});
|
|
201
191
|
(0, _defineProperty2["default"])(ToggleBar, "defaultProps", {});
|
|
202
|
-
|
|
203
|
-
var
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
192
|
+
function DragTool(_ref4) {
|
|
193
|
+
var children = _ref4.children,
|
|
194
|
+
index = _ref4.index,
|
|
195
|
+
draggable = _ref4.draggable,
|
|
196
|
+
moveTool = _ref4.moveTool,
|
|
197
|
+
toolRef = _ref4.toolRef,
|
|
198
|
+
value = _ref4.value;
|
|
199
|
+
var _useDraggable = (0, _core.useDraggable)({
|
|
200
|
+
id: "tool-".concat(value, "-").concat(index),
|
|
201
|
+
disabled: !draggable,
|
|
202
|
+
data: {
|
|
203
|
+
type: 'tool',
|
|
204
|
+
index: index,
|
|
205
|
+
value: value
|
|
206
|
+
}
|
|
207
|
+
}),
|
|
208
|
+
attributes = _useDraggable.attributes,
|
|
209
|
+
listeners = _useDraggable.listeners,
|
|
210
|
+
setDragNodeRef = _useDraggable.setNodeRef,
|
|
211
|
+
transform = _useDraggable.transform,
|
|
212
|
+
transition = _useDraggable.transition,
|
|
213
|
+
isDragging = _useDraggable.isDragging;
|
|
214
|
+
var _useDroppable = (0, _core.useDroppable)({
|
|
215
|
+
id: "drop-tool-".concat(value, "-").concat(index),
|
|
216
|
+
data: {
|
|
217
|
+
type: 'tool',
|
|
218
|
+
index: index,
|
|
219
|
+
accepts: ['tool']
|
|
220
|
+
}
|
|
221
|
+
}),
|
|
222
|
+
setDropNodeRef = _useDroppable.setNodeRef,
|
|
223
|
+
isOver = _useDroppable.isOver;
|
|
224
|
+
|
|
225
|
+
// Combine refs
|
|
226
|
+
var setNodeRef = function setNodeRef(node) {
|
|
227
|
+
setDragNodeRef(node);
|
|
228
|
+
setDropNodeRef(node);
|
|
229
|
+
if (toolRef !== null && toolRef !== void 0 && toolRef.current) {
|
|
230
|
+
toolRef.current = node;
|
|
226
231
|
}
|
|
227
232
|
};
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
exports["default"] = _default;
|
|
233
|
-
var DRAG_TYPE = 'tool';
|
|
234
|
-
|
|
235
|
-
var Item = /*#__PURE__*/function (_React$Component2) {
|
|
236
|
-
(0, _inherits2["default"])(Item, _React$Component2);
|
|
237
|
-
|
|
238
|
-
var _super2 = _createSuper(Item);
|
|
239
|
-
|
|
240
|
-
function Item() {
|
|
241
|
-
(0, _classCallCheck2["default"])(this, Item);
|
|
242
|
-
return _super2.apply(this, arguments);
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
(0, _createClass2["default"])(Item, [{
|
|
246
|
-
key: "render",
|
|
247
|
-
value: function render() {
|
|
248
|
-
var _this$props3 = this.props,
|
|
249
|
-
classes = _this$props3.classes,
|
|
250
|
-
children = _this$props3.children,
|
|
251
|
-
connectDragSource = _this$props3.connectDragSource,
|
|
252
|
-
connectDropTarget = _this$props3.connectDropTarget,
|
|
253
|
-
connectDragPreview = _this$props3.connectDragPreview,
|
|
254
|
-
isDragging = _this$props3.isDragging,
|
|
255
|
-
toolRef = _this$props3.toolRef;
|
|
256
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
257
|
-
className: classes.wrapper,
|
|
258
|
-
ref: toolRef
|
|
259
|
-
}, connectDragSource(connectDropTarget( /*#__PURE__*/_react["default"].createElement("div", {
|
|
260
|
-
className: isDragging && classes.hidden
|
|
261
|
-
}, children))), connectDragPreview( /*#__PURE__*/_react["default"].createElement("div", {
|
|
262
|
-
className: classes.under
|
|
263
|
-
}, children)));
|
|
264
|
-
}
|
|
265
|
-
}]);
|
|
266
|
-
return Item;
|
|
267
|
-
}(_react["default"].Component);
|
|
268
|
-
|
|
269
|
-
exports.Item = Item;
|
|
270
|
-
(0, _defineProperty2["default"])(Item, "propTypes", {
|
|
271
|
-
classes: _propTypes["default"].object.isRequired,
|
|
272
|
-
className: _propTypes["default"].string,
|
|
273
|
-
children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
|
|
274
|
-
connectDragSource: _propTypes["default"].func.isRequired,
|
|
275
|
-
connectDragPreview: _propTypes["default"].func.isRequired,
|
|
276
|
-
connectDropTarget: _propTypes["default"].func.isRequired,
|
|
277
|
-
isDragging: _propTypes["default"].bool,
|
|
278
|
-
toolRef: _propTypes["default"].any
|
|
279
|
-
});
|
|
280
|
-
(0, _defineProperty2["default"])(Item, "defaultProps", {});
|
|
281
|
-
var itemSource = {
|
|
282
|
-
canDrag: function canDrag(props) {
|
|
283
|
-
return props.draggable;
|
|
284
|
-
},
|
|
285
|
-
beginDrag: function beginDrag(props) {
|
|
286
|
-
return {
|
|
287
|
-
index: props.index
|
|
288
|
-
};
|
|
289
|
-
}
|
|
290
|
-
};
|
|
291
|
-
var itemTarget = {
|
|
292
|
-
hover: function hover(props, monitor) {
|
|
293
|
-
var _toolRef$current;
|
|
294
|
-
|
|
295
|
-
var dragIndex = monitor.getItem().index;
|
|
296
|
-
var toolRef = props.toolRef,
|
|
297
|
-
hoverIndex = props.index;
|
|
298
|
-
|
|
299
|
-
if (dragIndex === hoverIndex || !toolRef.current) {
|
|
300
|
-
return;
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
var hoverBoundingRect = (_toolRef$current = toolRef.current) === null || _toolRef$current === void 0 ? void 0 : _toolRef$current.getBoundingClientRect();
|
|
304
|
-
var hoverMiddleX = (hoverBoundingRect.right - hoverBoundingRect.left) / 2;
|
|
305
|
-
var clientOffset = monitor.getClientOffset();
|
|
306
|
-
var hoverClientX = clientOffset.x - hoverBoundingRect.left;
|
|
307
|
-
|
|
308
|
-
if (dragIndex < hoverIndex && hoverClientX < hoverMiddleX) {
|
|
309
|
-
return;
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
if (dragIndex > hoverIndex && hoverClientX > hoverMiddleX) {
|
|
313
|
-
return;
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
props.moveTool(dragIndex, hoverIndex);
|
|
317
|
-
monitor.getItem().index = hoverIndex;
|
|
318
|
-
}
|
|
319
|
-
};
|
|
320
|
-
|
|
321
|
-
var collectTarget = function collectTarget(connect) {
|
|
322
|
-
return {
|
|
323
|
-
connectDropTarget: connect.dropTarget()
|
|
324
|
-
};
|
|
325
|
-
};
|
|
326
|
-
|
|
327
|
-
var collectSource = function collectSource(connect, monitor) {
|
|
328
|
-
return {
|
|
329
|
-
connectDragSource: connect.dragSource(),
|
|
330
|
-
connectDragPreview: connect.dragPreview(),
|
|
331
|
-
isDragging: monitor.isDragging()
|
|
233
|
+
var style = {
|
|
234
|
+
transform: _utilities.CSS.Transform.toString(transform),
|
|
235
|
+
transition: transition,
|
|
236
|
+
opacity: isDragging ? 0.5 : 1
|
|
332
237
|
};
|
|
238
|
+
return /*#__PURE__*/_react["default"].createElement(StyledWrapper, {
|
|
239
|
+
ref: setNodeRef,
|
|
240
|
+
style: style
|
|
241
|
+
}, /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({}, attributes, listeners), children));
|
|
242
|
+
}
|
|
243
|
+
DragTool.propTypes = {
|
|
244
|
+
children: _propTypes["default"].node,
|
|
245
|
+
index: _propTypes["default"].number,
|
|
246
|
+
draggable: _propTypes["default"].bool,
|
|
247
|
+
moveTool: _propTypes["default"].func,
|
|
248
|
+
toolRef: _propTypes["default"].object,
|
|
249
|
+
value: _propTypes["default"].string
|
|
333
250
|
};
|
|
334
|
-
|
|
335
|
-
var DragTool = (0, _drag.DropTarget)(DRAG_TYPE, itemTarget, collectTarget)((0, _drag.DragSource)(DRAG_TYPE, itemSource, collectSource)(Item));
|
|
251
|
+
var _default = exports["default"] = ToggleBar;
|
|
336
252
|
//# sourceMappingURL=toggle-bar.js.map
|
package/lib/toggle-bar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/toggle-bar.jsx"],"names":["translator","Translator","buttonStyles","root","color","text","selected","backgroundColor","background","border","secondary","notSelected","primary","disabled","MiniButton","props","classes","className","value","onClick","language","translatorKey","toLowerCase","e","buttonValue","t","lng","propTypes","PropTypes","bool","object","string","disabledClassName","func","ToggleBar","onChange","target","textContent","dragIndex","hoverIndex","options","onChangeToolsOrder","dragged","splice","selectedToolType","draggableTools","toolsContainer","map","option","index","allTools","includes","isSelected","toolRef","React","createRef","moveTool","button","select","Component","isRequired","arrayOf","styles","theme","display","flexWrap","marginRight","spacing","unit","marginBottom","under","position","top","left","zIndex","pointerEvents","wrapper","hidden","opacity","DRAG_TYPE","Item","children","connectDragSource","connectDropTarget","connectDragPreview","isDragging","oneOfType","node","any","itemSource","canDrag","draggable","beginDrag","itemTarget","hover","monitor","getItem","current","hoverBoundingRect","getBoundingClientRect","hoverMiddleX","right","clientOffset","getClientOffset","hoverClientX","x","collectTarget","connect","dropTarget","collectSource","dragSource","dragPreview","DragTool"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport cn from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport { color } from '@pie-lib/render-ui';\nimport { allTools } from './tools';\nimport { withDragContext, DragSource, DropTarget } from '@pie-lib/drag';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst buttonStyles = () => ({\n root: {\n color: color.text(),\n },\n selected: {\n backgroundColor: color.background(),\n border: `1px solid ${color.secondary()}`,\n },\n notSelected: {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.background(),\n },\n disabled: {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.disabled(),\n },\n});\n\nexport const MiniButton = withStyles(buttonStyles)((props) => {\n const { disabled, classes, className, selected, value, onClick, language } = props;\n const translatorKey = value.toLowerCase();\n\n return (\n <Button\n size=\"small\"\n disabled={disabled}\n className={cn(classes.root, selected && classes.selected, className)}\n classes={{ disabled: cn(disabled && classes.disabled) }}\n value={value}\n key={value}\n variant=\"outlined\"\n onClick={(e) => onClick({ ...e, buttonValue: value })}\n >\n {translator.t(`graphing.${translatorKey}`, { lng: language })}\n </Button>\n );\n});\n\nMiniButton.propTypes = {\n disabled: PropTypes.bool,\n classes: PropTypes.object,\n className: PropTypes.string,\n disabledClassName: PropTypes.string,\n selected: PropTypes.bool,\n value: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport class ToggleBar extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n options: PropTypes.arrayOf(PropTypes.string),\n selectedToolType: PropTypes.string,\n disabled: PropTypes.bool,\n draggableTools: PropTypes.bool,\n onChange: PropTypes.func,\n onChangeToolsOrder: PropTypes.func,\n language: PropTypes.string,\n };\n\n static defaultProps = {};\n\n select = (e) => this.props.onChange(e.buttonValue || e.target.textContent);\n\n moveTool = (dragIndex, hoverIndex) => {\n const { options, onChangeToolsOrder } = this.props;\n const dragged = options[dragIndex];\n\n options.splice(dragIndex, 1);\n options.splice(hoverIndex, 0, dragged);\n\n onChangeToolsOrder(options);\n };\n\n render() {\n const { classes, className, disabled, options, selectedToolType, draggableTools, language } = this.props;\n\n return (\n <div className={cn(className, classes.toolsContainer)}>\n {(options || []).map((option, index) => {\n if ((allTools || []).includes(option)) {\n const isSelected = option === selectedToolType;\n const toolRef = React.createRef();\n\n return (\n <DragTool\n key={option}\n index={index}\n draggable={draggableTools}\n moveTool={this.moveTool}\n classes={classes}\n toolRef={toolRef}\n >\n <MiniButton\n className={cn(classes.button, isSelected && classes.selected)}\n disabled={disabled}\n disableRipple={true}\n onClick={this.select}\n value={option}\n selected={isSelected}\n language={language}\n />\n </DragTool>\n );\n }\n })}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n toolsContainer: {\n display: 'flex',\n flexWrap: 'wrap',\n },\n button: {\n marginRight: theme.spacing.unit / 2,\n marginBottom: theme.spacing.unit / 2,\n color: color.text(),\n },\n under: {\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: -1,\n pointerEvents: 'none',\n },\n wrapper: {\n position: 'relative',\n },\n hidden: {\n opacity: 0,\n },\n});\n\nexport default withDragContext(withStyles(styles)(ToggleBar));\n\nconst DRAG_TYPE = 'tool';\n\nexport class Item extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n connectDragSource: PropTypes.func.isRequired,\n connectDragPreview: PropTypes.func.isRequired,\n connectDropTarget: PropTypes.func.isRequired,\n isDragging: PropTypes.bool,\n toolRef: PropTypes.any,\n };\n\n static defaultProps = {};\n\n render() {\n const {\n classes,\n children,\n connectDragSource,\n connectDropTarget,\n connectDragPreview,\n isDragging,\n toolRef,\n } = this.props;\n\n return (\n <div className={classes.wrapper} ref={toolRef}>\n {connectDragSource(connectDropTarget(<div className={isDragging && classes.hidden}>{children}</div>))}\n {connectDragPreview(<div className={classes.under}>{children}</div>)}\n </div>\n );\n }\n}\n\nconst itemSource = {\n canDrag(props) {\n return props.draggable;\n },\n beginDrag(props) {\n return {\n index: props.index,\n };\n },\n};\n\nconst itemTarget = {\n hover(props, monitor) {\n const dragIndex = monitor.getItem().index;\n const { toolRef, index: hoverIndex } = props;\n\n if (dragIndex === hoverIndex || !toolRef.current) {\n return;\n }\n\n const hoverBoundingRect = toolRef.current?.getBoundingClientRect();\n const hoverMiddleX = (hoverBoundingRect.right - hoverBoundingRect.left) / 2;\n const clientOffset = monitor.getClientOffset();\n const hoverClientX = clientOffset.x - hoverBoundingRect.left;\n\n if (dragIndex < hoverIndex && hoverClientX < hoverMiddleX) {\n return;\n }\n\n if (dragIndex > hoverIndex && hoverClientX > hoverMiddleX) {\n return;\n }\n\n props.moveTool(dragIndex, hoverIndex);\n monitor.getItem().index = hoverIndex;\n },\n};\n\nconst collectTarget = (connect) => ({ connectDropTarget: connect.dropTarget() });\n\nconst collectSource = (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n connectDragPreview: connect.dragPreview(),\n isDragging: monitor.isDragging(),\n});\n\nconst DragTool = DropTarget(\n DRAG_TYPE,\n itemTarget,\n collectTarget,\n)(DragSource(DRAG_TYPE, itemSource, collectSource)(Item));\n"],"file":"toggle-bar.js"}
|
|
1
|
+
{"version":3,"file":"toggle-bar.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_renderUi","_tools","_drag","_core","_utilities","_sortable","_translator","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","translator","Translator","StyledMiniButton","styled","Button","shouldForwardProp","prop","includes","_ref","selected","disabled","color","text","backgroundColor","background","border","concat","secondary","primary","MiniButton","exports","props","className","value","onClick","language","translatorKey","toLowerCase","createElement","size","key","variant","buttonValue","lng","propTypes","PropTypes","bool","string","disabledClassName","func","StyledToolsContainer","_ref2","theme","display","flexWrap","StyledButton","_ref3","marginRight","spacing","marginBottom","StyledWrapper","position","ToggleBar","_React$Component","_this","_classCallCheck2","_len","args","Array","_key","onChange","target","textContent","dragIndex","hoverIndex","_this$props","options","onChangeToolsOrder","newOptions","arrayMove","console","log","event","active","over","activeData","data","current","overData","type","index","moveTool","_inherits2","_createClass2","render","_this2","_this$props2","selectedToolType","draggableTools","DragProvider","onDragEnd","handleDragEnd","map","option","allTools","isSelected","toolRef","React","createRef","DragTool","draggable","disableRipple","select","Component","arrayOf","_ref4","children","_useDraggable","useDraggable","id","attributes","listeners","setDragNodeRef","setNodeRef","transform","transition","isDragging","_useDroppable","useDroppable","accepts","setDropNodeRef","isOver","node","style","CSS","Transform","toString","opacity","ref","_extends2","number","object","_default"],"sources":["../src/toggle-bar.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport Button from '@mui/material/Button';\nimport { color } from '@pie-lib/render-ui';\nimport { allTools } from './tools';\nimport { DragProvider } from '@pie-lib/drag';\nimport { useDraggable, useDroppable } from '@dnd-kit/core';\nimport { CSS } from '@dnd-kit/utilities';\nimport { arrayMove } from '@dnd-kit/sortable';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst StyledMiniButton = styled(Button, {\n shouldForwardProp: (prop) => !['selected'].includes(prop),\n})(({ selected, disabled }) => ({\n color: color.text(),\n backgroundColor: color.background(),\n ...(selected && {\n border: `1px solid ${color.secondary()}`,\n }),\n ...(!selected && {\n '& span': {\n color: color.primary(),\n },\n }),\n ...(disabled && {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.disabled(),\n }),\n}));\n\nexport const MiniButton = (props) => {\n const { disabled, className, selected, value, onClick, language } = props;\n const translatorKey = value.toLowerCase();\n\n return (\n <StyledMiniButton\n size=\"small\"\n disabled={disabled}\n className={className}\n selected={selected}\n value={value}\n key={value}\n variant=\"outlined\"\n onClick={(e) => onClick({ ...e, buttonValue: value })}\n >\n {translator.t(`graphing.${translatorKey}`, { lng: language })}\n </StyledMiniButton>\n );\n};\n\nMiniButton.propTypes = {\n disabled: PropTypes.bool,\n className: PropTypes.string,\n disabledClassName: PropTypes.string,\n selected: PropTypes.bool,\n value: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nconst StyledToolsContainer = styled('div')(({ theme }) => ({\n display: 'flex',\n flexWrap: 'wrap',\n}));\n\nconst StyledButton = styled(MiniButton)(({ theme }) => ({\n marginRight: theme.spacing(0.5),\n marginBottom: theme.spacing(0.5),\n color: color.text(),\n}));\n\nconst StyledWrapper = styled('div')({\n position: 'relative',\n});\n\nexport class ToggleBar extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n options: PropTypes.arrayOf(PropTypes.string),\n selectedToolType: PropTypes.string,\n disabled: PropTypes.bool,\n draggableTools: PropTypes.bool,\n onChange: PropTypes.func,\n onChangeToolsOrder: PropTypes.func,\n language: PropTypes.string,\n };\n\n static defaultProps = {};\n\n select = (e) => this.props.onChange(e.buttonValue || e.target.textContent);\n\n moveTool = (dragIndex, hoverIndex) => {\n const { options, onChangeToolsOrder } = this.props;\n const newOptions = arrayMove(options, dragIndex, hoverIndex);\n console.log('New Options Order:', newOptions);\n onChangeToolsOrder(newOptions);\n };\n\n handleDragEnd = (event) => {\n const { active, over } = event;\n \n console.log('Drag End Event:', event);\n if (!over || !active) return;\n\n const activeData = active.data.current;\n const overData = over.data.current;\n\n if (activeData?.type === 'tool' && overData?.type === 'tool') {\n const dragIndex = activeData.index;\n const hoverIndex = overData.index;\n \n if (dragIndex !== hoverIndex) {\n this.moveTool(dragIndex, hoverIndex);\n }\n }\n };\n\n render() {\n const { className, disabled, options, selectedToolType, draggableTools, language } = this.props;\n\n return (\n <DragProvider onDragEnd={this.handleDragEnd}>\n <StyledToolsContainer className={className}>\n {(options || []).map((option, index) => {\n if ((allTools || []).includes(option)) {\n const isSelected = option === selectedToolType;\n const toolRef = React.createRef();\n\n return (\n <DragTool\n key={option}\n index={index}\n value={option}\n draggable={draggableTools}\n moveTool={this.moveTool}\n toolRef={toolRef}\n >\n <StyledButton\n disabled={disabled}\n disableRipple={true}\n onClick={this.select}\n value={option}\n selected={isSelected}\n language={language}\n />\n </DragTool>\n );\n }\n })}\n </StyledToolsContainer>\n </DragProvider>\n );\n }\n}\n\n// DragTool functional component using @dnd-kit hooks\nfunction DragTool({ \n children, \n index, \n draggable, \n moveTool, \n toolRef, \n value \n}) {\n const {\n attributes,\n listeners,\n setNodeRef: setDragNodeRef,\n transform,\n transition,\n isDragging,\n } = useDraggable({\n id: `tool-${value}-${index}`,\n disabled: !draggable,\n data: {\n type: 'tool',\n index,\n value,\n },\n });\n\n const {\n setNodeRef: setDropNodeRef,\n isOver,\n } = useDroppable({\n id: `drop-tool-${value}-${index}`,\n data: {\n type: 'tool',\n index,\n accepts: ['tool'],\n },\n });\n\n // Combine refs\n const setNodeRef = (node) => {\n setDragNodeRef(node);\n setDropNodeRef(node);\n if (toolRef?.current) {\n toolRef.current = node;\n }\n };\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n return (\n <StyledWrapper ref={setNodeRef} style={style}>\n <div {...attributes} {...listeners}>\n {children}\n </div>\n </StyledWrapper>\n );\n}\n\nDragTool.propTypes = {\n children: PropTypes.node,\n index: PropTypes.number,\n draggable: PropTypes.bool,\n moveTool: PropTypes.func,\n toolRef: PropTypes.object,\n value: PropTypes.string,\n};\n\nexport default ToggleBar;\n"],"mappings":"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","ignoreList":[]}
|