@pie-lib/graphing 2.4.3-next.362 → 2.4.3-next.406
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/lib/axis/arrow.js +15 -25
- package/lib/axis/arrow.js.map +1 -1
- package/lib/axis/axes.js +41 -73
- package/lib/axis/axes.js.map +1 -1
- package/lib/axis/index.js +1 -1
- package/lib/bg.js +20 -31
- package/lib/bg.js.map +1 -1
- package/lib/container/index.js +27 -41
- package/lib/container/index.js.map +1 -1
- package/lib/container/reducer.js +2 -2
- package/lib/container/reducer.js.map +1 -1
- package/lib/coordinates-label.js +5 -5
- package/lib/coordinates-label.js.map +1 -1
- package/lib/graph-with-controls.js +26 -37
- package/lib/graph-with-controls.js.map +1 -1
- package/lib/graph.js +43 -69
- package/lib/graph.js.map +1 -1
- package/lib/grid-setup.js +6 -6
- package/lib/grid-setup.js.map +1 -1
- package/lib/grid.js +28 -46
- package/lib/grid.js.map +1 -1
- package/lib/index.js +3 -3
- package/lib/index.js.map +1 -1
- package/lib/labels.js +22 -38
- package/lib/labels.js.map +1 -1
- package/lib/mark-label.js +10 -20
- package/lib/mark-label.js.map +1 -1
- package/lib/toggle-bar.js +22 -33
- package/lib/toggle-bar.js.map +1 -1
- package/lib/tool-menu.js +21 -32
- package/lib/tool-menu.js.map +1 -1
- package/lib/tools/circle/bg-circle.js +27 -38
- package/lib/tools/circle/bg-circle.js.map +1 -1
- package/lib/tools/circle/component.js +36 -54
- package/lib/tools/circle/component.js.map +1 -1
- package/lib/tools/circle/index.js +5 -5
- package/lib/tools/circle/index.js.map +1 -1
- package/lib/tools/line/component.js +11 -25
- package/lib/tools/line/component.js.map +1 -1
- package/lib/tools/line/index.js +2 -2
- package/lib/tools/line/index.js.map +1 -1
- package/lib/tools/parabola/component.js +2 -2
- package/lib/tools/parabola/component.js.map +1 -1
- package/lib/tools/parabola/index.js +5 -5
- package/lib/tools/parabola/index.js.map +1 -1
- package/lib/tools/point/component.js +30 -47
- package/lib/tools/point/component.js.map +1 -1
- package/lib/tools/point/index.js +5 -5
- package/lib/tools/point/index.js.map +1 -1
- package/lib/tools/polygon/component.js +59 -107
- package/lib/tools/polygon/component.js.map +1 -1
- package/lib/tools/polygon/index.js +9 -19
- package/lib/tools/polygon/index.js.map +1 -1
- package/lib/tools/polygon/line.js +28 -41
- package/lib/tools/polygon/line.js.map +1 -1
- package/lib/tools/polygon/polygon.js +28 -42
- package/lib/tools/polygon/polygon.js.map +1 -1
- package/lib/tools/ray/component.js +11 -25
- package/lib/tools/ray/component.js.map +1 -1
- package/lib/tools/ray/index.js +2 -2
- package/lib/tools/ray/index.js.map +1 -1
- package/lib/tools/segment/component.js +8 -11
- package/lib/tools/segment/component.js.map +1 -1
- package/lib/tools/segment/index.js +2 -2
- package/lib/tools/segment/index.js.map +1 -1
- package/lib/tools/shared/arrow-head.js +2 -2
- package/lib/tools/shared/arrow-head.js.map +1 -1
- package/lib/tools/shared/line/index.js +43 -66
- package/lib/tools/shared/line/index.js.map +1 -1
- package/lib/tools/shared/line/line-path.js +29 -42
- package/lib/tools/shared/line/line-path.js.map +1 -1
- package/lib/tools/shared/line/with-root-edge.js +12 -14
- package/lib/tools/shared/line/with-root-edge.js.map +1 -1
- package/lib/tools/shared/point/arrow-point.js +24 -39
- package/lib/tools/shared/point/arrow-point.js.map +1 -1
- package/lib/tools/shared/point/arrow.js +23 -37
- package/lib/tools/shared/point/arrow.js.map +1 -1
- package/lib/tools/shared/point/base-point.js +24 -38
- package/lib/tools/shared/point/base-point.js.map +1 -1
- package/lib/tools/shared/point/index.js +6 -6
- package/lib/tools/shared/point/index.js.map +1 -1
- package/lib/tools/shared/styles.js +7 -5
- package/lib/tools/shared/styles.js.map +1 -1
- package/lib/tools/shared/types.js +2 -2
- package/lib/tools/shared/types.js.map +1 -1
- package/lib/tools/sine/component.js +2 -2
- package/lib/tools/sine/component.js.map +1 -1
- package/lib/tools/sine/index.js +5 -5
- package/lib/tools/sine/index.js.map +1 -1
- package/lib/tools/vector/component.js +8 -11
- package/lib/tools/vector/component.js.map +1 -1
- package/lib/tools/vector/index.js +2 -2
- package/lib/tools/vector/index.js.map +1 -1
- package/lib/undo-redo.js +19 -31
- package/lib/undo-redo.js.map +1 -1
- package/lib/use-debounce.js +5 -13
- package/lib/use-debounce.js.map +1 -1
- package/lib/utils.js +2 -2
- package/lib/utils.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = exports.RawBaseCircle = exports.BaseCircle = void 0;
|
|
9
9
|
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
+
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
+
|
|
16
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
17
|
+
|
|
18
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
+
|
|
20
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
+
|
|
22
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
+
|
|
24
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
25
|
+
|
|
10
26
|
var _react = _interopRequireDefault(require("react"));
|
|
11
27
|
|
|
12
28
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -33,36 +49,14 @@ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
|
|
|
33
49
|
|
|
34
50
|
var _renderUi = require("@pie-lib/render-ui");
|
|
35
51
|
|
|
36
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
37
|
-
|
|
38
|
-
function _extends() { _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; }; return _extends.apply(this, arguments); }
|
|
39
|
-
|
|
40
52
|
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; }
|
|
41
53
|
|
|
42
|
-
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) {
|
|
43
|
-
|
|
44
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
45
|
-
|
|
46
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
47
|
-
|
|
48
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
49
|
-
|
|
50
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
51
|
-
|
|
52
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
53
|
-
|
|
54
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
54
|
+
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; }
|
|
55
55
|
|
|
56
|
-
function
|
|
57
|
-
|
|
58
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
56
|
+
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); }; }
|
|
59
57
|
|
|
60
58
|
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; } }
|
|
61
59
|
|
|
62
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
63
|
-
|
|
64
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
65
|
-
|
|
66
60
|
var opacityPulsate = function opacityPulsate(opacity) {
|
|
67
61
|
return {
|
|
68
62
|
'0%': {
|
|
@@ -83,22 +77,21 @@ var getRadius = function getRadius(from, outer) {
|
|
|
83
77
|
};
|
|
84
78
|
|
|
85
79
|
var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
86
|
-
|
|
80
|
+
(0, _inherits2["default"])(RawBaseCircle, _React$Component);
|
|
87
81
|
|
|
88
82
|
var _super = _createSuper(RawBaseCircle);
|
|
89
83
|
|
|
90
84
|
function RawBaseCircle() {
|
|
91
85
|
var _this;
|
|
92
86
|
|
|
93
|
-
|
|
87
|
+
(0, _classCallCheck2["default"])(this, RawBaseCircle);
|
|
94
88
|
|
|
95
89
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
96
90
|
args[_key] = arguments[_key];
|
|
97
91
|
}
|
|
98
92
|
|
|
99
93
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
100
|
-
|
|
101
|
-
_defineProperty(_assertThisInitialized(_this), "onChangePoint", function (point) {
|
|
94
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChangePoint", function (point) {
|
|
102
95
|
var _this$props = _this.props,
|
|
103
96
|
middle = _this$props.middle,
|
|
104
97
|
onChange = _this$props.onChange;
|
|
@@ -113,8 +106,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
113
106
|
onChange(point);
|
|
114
107
|
}
|
|
115
108
|
});
|
|
116
|
-
|
|
117
|
-
_defineProperty(_assertThisInitialized(_this), "dragFrom", function (draggedFrom) {
|
|
109
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragFrom", function (draggedFrom) {
|
|
118
110
|
var _this$props2 = _this.props,
|
|
119
111
|
from = _this$props2.from,
|
|
120
112
|
to = _this$props2.to;
|
|
@@ -130,8 +122,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
130
122
|
});
|
|
131
123
|
}
|
|
132
124
|
});
|
|
133
|
-
|
|
134
|
-
_defineProperty(_assertThisInitialized(_this), "dragTo", function (draggedTo) {
|
|
125
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragTo", function (draggedTo) {
|
|
135
126
|
var _this$props3 = _this.props,
|
|
136
127
|
from = _this$props3.from,
|
|
137
128
|
to = _this$props3.to;
|
|
@@ -147,8 +138,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
147
138
|
});
|
|
148
139
|
}
|
|
149
140
|
});
|
|
150
|
-
|
|
151
|
-
_defineProperty(_assertThisInitialized(_this), "dragCircle", function (draggedFrom) {
|
|
141
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragCircle", function (draggedFrom) {
|
|
152
142
|
var _this$props4 = _this.props,
|
|
153
143
|
from = _this$props4.from,
|
|
154
144
|
to = _this$props4.to,
|
|
@@ -182,8 +172,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
182
172
|
onChange(updated);
|
|
183
173
|
});
|
|
184
174
|
});
|
|
185
|
-
|
|
186
|
-
_defineProperty(_assertThisInitialized(_this), "labelChange", function (point, type) {
|
|
175
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "labelChange", function (point, type) {
|
|
187
176
|
var changeMarkProps = _this.props.changeMarkProps;
|
|
188
177
|
|
|
189
178
|
var update = _objectSpread({}, point);
|
|
@@ -192,10 +181,9 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
192
181
|
delete update.label;
|
|
193
182
|
}
|
|
194
183
|
|
|
195
|
-
changeMarkProps(
|
|
184
|
+
changeMarkProps((0, _defineProperty2["default"])({}, type, update));
|
|
196
185
|
});
|
|
197
|
-
|
|
198
|
-
_defineProperty(_assertThisInitialized(_this), "clickPoint", function (point, type) {
|
|
186
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "clickPoint", function (point, type) {
|
|
199
187
|
var _this$props5 = _this.props,
|
|
200
188
|
changeMarkProps = _this$props5.changeMarkProps,
|
|
201
189
|
from = _this$props5.from,
|
|
@@ -205,7 +193,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
205
193
|
point = _objectSpread(_objectSpread({}, point), (0, _utils.getMiddleOfTwoPoints)(from, to));
|
|
206
194
|
}
|
|
207
195
|
|
|
208
|
-
changeMarkProps(
|
|
196
|
+
changeMarkProps((0, _defineProperty2["default"])({
|
|
209
197
|
from: from,
|
|
210
198
|
to: to
|
|
211
199
|
}, type, _objectSpread({
|
|
@@ -216,13 +204,11 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
216
204
|
_this.input[type].focus();
|
|
217
205
|
}
|
|
218
206
|
});
|
|
219
|
-
|
|
220
|
-
_defineProperty(_assertThisInitialized(_this), "input", {});
|
|
221
|
-
|
|
207
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "input", {});
|
|
222
208
|
return _this;
|
|
223
209
|
}
|
|
224
210
|
|
|
225
|
-
|
|
211
|
+
(0, _createClass2["default"])(RawBaseCircle, [{
|
|
226
212
|
key: "render",
|
|
227
213
|
value: function render() {
|
|
228
214
|
var _this2 = this;
|
|
@@ -304,7 +290,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
304
290
|
}
|
|
305
291
|
}
|
|
306
292
|
|
|
307
|
-
return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement(_bgCircle["default"],
|
|
293
|
+
return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement(_bgCircle["default"], (0, _extends2["default"])({
|
|
308
294
|
disabled: building || disabled,
|
|
309
295
|
correctness: correctness,
|
|
310
296
|
className: (0, _classnames["default"])(building && classes.bgCircleBuilding),
|
|
@@ -316,7 +302,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
316
302
|
onClick: labelModeEnabled ? function () {
|
|
317
303
|
return _this2.clickPoint(middle, 'middle');
|
|
318
304
|
} : common.onClick
|
|
319
|
-
})), circleLabelNode, /*#__PURE__*/_react["default"].createElement(_point.BasePoint,
|
|
305
|
+
})), circleLabelNode, /*#__PURE__*/_react["default"].createElement(_point.BasePoint, (0, _extends2["default"])({
|
|
320
306
|
disabled: building || disabled,
|
|
321
307
|
coordinatesOnHover: coordinatesOnHover,
|
|
322
308
|
correctness: correctness,
|
|
@@ -328,7 +314,7 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
328
314
|
onClick: labelModeEnabled ? function () {
|
|
329
315
|
return _this2.clickPoint(to, 'to');
|
|
330
316
|
} : common.onClick
|
|
331
|
-
})), toLabelNode, /*#__PURE__*/_react["default"].createElement(_point.BasePoint,
|
|
317
|
+
})), toLabelNode, /*#__PURE__*/_react["default"].createElement(_point.BasePoint, (0, _extends2["default"])({
|
|
332
318
|
disabled: building || disabled,
|
|
333
319
|
coordinatesOnHover: coordinatesOnHover,
|
|
334
320
|
correctness: correctness,
|
|
@@ -344,13 +330,11 @@ var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
|
|
|
344
330
|
})), fromLabelNode);
|
|
345
331
|
}
|
|
346
332
|
}]);
|
|
347
|
-
|
|
348
333
|
return RawBaseCircle;
|
|
349
334
|
}(_react["default"].Component);
|
|
350
335
|
|
|
351
336
|
exports.RawBaseCircle = RawBaseCircle;
|
|
352
|
-
|
|
353
|
-
_defineProperty(RawBaseCircle, "propTypes", {
|
|
337
|
+
(0, _defineProperty2["default"])(RawBaseCircle, "propTypes", {
|
|
354
338
|
building: _propTypes["default"].bool,
|
|
355
339
|
classes: _propTypes["default"].object.isRequired,
|
|
356
340
|
className: _propTypes["default"].string,
|
|
@@ -369,13 +353,11 @@ _defineProperty(RawBaseCircle, "propTypes", {
|
|
|
369
353
|
labelModeEnabled: _propTypes["default"].bool,
|
|
370
354
|
changeMarkProps: _propTypes["default"].func
|
|
371
355
|
});
|
|
372
|
-
|
|
373
|
-
_defineProperty(RawBaseCircle, "defaultProps", {
|
|
356
|
+
(0, _defineProperty2["default"])(RawBaseCircle, "defaultProps", {
|
|
374
357
|
onClick: function onClick() {
|
|
375
358
|
return {};
|
|
376
359
|
}
|
|
377
360
|
});
|
|
378
|
-
|
|
379
361
|
var BaseCircle = (0, _styles.withStyles)(function (theme) {
|
|
380
362
|
return {
|
|
381
363
|
outerLine: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["opacityPulsate","opacity","getRadius","from","outer","c","point","dist","RawBaseCircle","props","middle","onChange","to","equalPoints","getMiddleOfTwoPoints","draggedFrom","label","onChangePoint","draggedTo","diff","sub","updated","setState","draggedroot","undefined","draggedOuter","isCircleDrag","type","changeMarkProps","update","isEmpty","input","focus","disabled","classes","coordinatesOnHover","building","onDragStart","onDragStop","onClick","correctness","graphProps","labelNode","labelModeEnabled","common","radius","fromLabelNode","toLabelNode","circleLabelNode","hasOwnProperty","ReactDOM","createPortal","r","labelChange","classNames","bgCircleBuilding","x","y","dragCircle","clickPoint","dragTo","dragFrom","React","Component","PropTypes","bool","object","isRequired","className","string","types","PointType","func","GraphPropsType","BaseCircle","withStyles","theme","outerLine","fill","stroke","color","primaryLight","strokeWidth","primaryDark","root","secondaryLight","animation","animationIterationCount","rootEdgeComponent"],"sources":["../../../src/tools/circle/component.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { BasePoint } from '../shared/point';\nimport BgCircle from './bg-circle';\nimport { getMiddleOfTwoPoints, point, equalPoints } from '../../utils';\nimport classNames from 'classnames';\nimport { types } from '@pie-lib/plot';\nimport { rootEdgeComponent } from '../shared/line/with-root-edge';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport isEmpty from 'lodash/isEmpty';\nimport { color } from '@pie-lib/render-ui';\n\nconst opacityPulsate = opacity => ({\n '0%': { opacity: '0.0' },\n '50%': { opacity },\n '100%': { opacity: '0.0' }\n});\n\nconst getRadius = (from, outer) => {\n const c = point(from);\n return c.dist(point(outer));\n};\n\nexport class RawBaseCircle extends React.Component {\n static propTypes = {\n building: PropTypes.bool,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n coordinatesOnHover: PropTypes.bool,\n correctness: PropTypes.string,\n from: types.PointType,\n disabled: PropTypes.bool,\n to: types.PointType,\n middle: types.PointType,\n onChange: PropTypes.func.isRequired,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n onClick: PropTypes.func,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n changeMarkProps: PropTypes.func\n };\n\n static defaultProps = {\n onClick: () => ({})\n };\n\n onChangePoint = point => {\n const { middle, onChange } = this.props;\n const { from, to } = point;\n\n // because point.from.label and point.to.label can be different\n if (!equalPoints(from, to)) {\n if (middle) {\n point.middle = { ...middle, ...getMiddleOfTwoPoints(from, to) };\n }\n\n onChange(point);\n }\n };\n\n dragFrom = draggedFrom => {\n const { from, to } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (!equalPoints(draggedFrom, to)) {\n this.onChangePoint({ from: draggedFrom, to });\n }\n };\n\n dragTo = draggedTo => {\n const { from, to } = this.props;\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n if (!equalPoints(from, draggedTo)) {\n this.onChangePoint({ from, to: draggedTo });\n }\n };\n\n dragCircle = draggedFrom => {\n const { from, to, onChange, middle } = this.props;\n const diff = point(from).sub(point(draggedFrom));\n const draggedTo = point(to).sub(diff);\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n const updated = { from: draggedFrom, to: draggedTo };\n\n if (middle) {\n updated.middle = { ...middle, ...getMiddleOfTwoPoints(draggedFrom, draggedTo) };\n }\n\n this.setState(\n {\n draggedroot: undefined,\n draggedOuter: undefined,\n isCircleDrag: false\n },\n () => {\n onChange(updated);\n }\n );\n };\n\n labelChange = (point, type) => {\n const { changeMarkProps } = this.props;\n const update = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete update.label;\n }\n\n changeMarkProps({ [type]: update });\n };\n\n clickPoint = (point, type) => {\n const { changeMarkProps, from, to } = this.props;\n\n if (type === 'middle' && !point && from && to) {\n point = { ...point, ...getMiddleOfTwoPoints(from, to) };\n }\n\n changeMarkProps({ from, to, [type]: { label: '', ...point } });\n\n if (this.input[type]) {\n this.input[type].focus();\n }\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n let {\n from,\n to,\n middle,\n disabled,\n classes,\n coordinatesOnHover,\n building,\n onDragStart,\n onDragStop,\n onClick,\n correctness,\n graphProps,\n labelNode,\n labelModeEnabled\n } = this.props;\n const common = { onDragStart, onDragStop, graphProps, onClick };\n\n to = to || from;\n\n const radius = getRadius(from, to);\n\n let fromLabelNode = null;\n let toLabelNode = null;\n let circleLabelNode = null;\n\n if (labelNode) {\n if (from && from.hasOwnProperty('label')) {\n fromLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={r => (this.input.from = r)}\n disabled={!labelModeEnabled}\n mark={from}\n graphProps={graphProps}\n onChange={label => this.labelChange({ ...from, label }, 'from')}\n />,\n labelNode\n );\n }\n\n if (to && to.hasOwnProperty('label')) {\n toLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={r => (this.input.to = r)}\n disabled={!labelModeEnabled}\n mark={to}\n graphProps={graphProps}\n onChange={label => this.labelChange({ ...to, label }, 'to')}\n />,\n labelNode\n );\n }\n\n if (middle && middle.hasOwnProperty('label')) {\n circleLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={r => (this.input.middle = r)}\n disabled={!labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onChange={label => this.labelChange({ ...middle, label }, 'middle')}\n />,\n labelNode\n );\n }\n }\n\n return (\n <g>\n <BgCircle\n disabled={building || disabled}\n correctness={correctness}\n className={classNames(building && classes.bgCircleBuilding)}\n x={from.x}\n y={from.y}\n radius={radius}\n onDrag={this.dragCircle}\n {...common}\n onClick={labelModeEnabled ? () => this.clickPoint(middle, 'middle') : common.onClick}\n />\n {circleLabelNode}\n\n <BasePoint\n disabled={building || disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={correctness}\n labelNode={labelNode}\n x={to.x}\n y={to.y}\n onDrag={this.dragTo}\n {...common}\n onClick={labelModeEnabled ? () => this.clickPoint(to, 'to') : common.onClick}\n />\n {toLabelNode}\n\n <BasePoint\n disabled={building || disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={correctness}\n labelNode={labelNode}\n x={from.x}\n y={from.y}\n className={classes.from}\n onDrag={this.dragFrom}\n {...common}\n onClick={labelModeEnabled ? () => this.clickPoint(from, 'from') : common.onClick}\n />\n {fromLabelNode}\n </g>\n );\n }\n}\n\nexport const BaseCircle = withStyles(theme => ({\n outerLine: {\n fill: 'rgb(0,0,0,0)', // TODO hardcoded color\n stroke: color.primaryLight(),\n strokeWidth: 4,\n '&:hover': {\n strokeWidth: 6,\n stroke: color.primaryDark()\n }\n },\n root: {},\n bgCircleBuilding: {\n stroke: color.secondaryLight(),\n animation: 'opacityPulse 2s ease-out',\n animationIterationCount: 'infinite',\n opacity: 1\n },\n '@keyframes opacityPulse': opacityPulsate('0.3')\n}))(RawBaseCircle);\n\nconst Component = rootEdgeComponent(BaseCircle);\nexport default Component;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"component.js","names":["opacityPulsate","opacity","getRadius","from","outer","c","point","dist","RawBaseCircle","props","middle","onChange","to","equalPoints","getMiddleOfTwoPoints","draggedFrom","label","onChangePoint","draggedTo","diff","sub","updated","setState","draggedroot","undefined","draggedOuter","isCircleDrag","type","changeMarkProps","update","isEmpty","input","focus","disabled","classes","coordinatesOnHover","building","onDragStart","onDragStop","onClick","correctness","graphProps","labelNode","labelModeEnabled","common","radius","fromLabelNode","toLabelNode","circleLabelNode","hasOwnProperty","ReactDOM","createPortal","r","labelChange","classNames","bgCircleBuilding","x","y","dragCircle","clickPoint","dragTo","dragFrom","React","Component","PropTypes","bool","object","isRequired","className","string","types","PointType","func","GraphPropsType","BaseCircle","withStyles","theme","outerLine","fill","stroke","color","primaryLight","strokeWidth","primaryDark","root","secondaryLight","animation","animationIterationCount","rootEdgeComponent"],"sources":["../../../src/tools/circle/component.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { BasePoint } from '../shared/point';\nimport BgCircle from './bg-circle';\nimport { getMiddleOfTwoPoints, point, equalPoints } from '../../utils';\nimport classNames from 'classnames';\nimport { types } from '@pie-lib/plot';\nimport { rootEdgeComponent } from '../shared/line/with-root-edge';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport isEmpty from 'lodash/isEmpty';\nimport { color } from '@pie-lib/render-ui';\n\nconst opacityPulsate = opacity => ({\n '0%': { opacity: '0.0' },\n '50%': { opacity },\n '100%': { opacity: '0.0' }\n});\n\nconst getRadius = (from, outer) => {\n const c = point(from);\n return c.dist(point(outer));\n};\n\nexport class RawBaseCircle extends React.Component {\n static propTypes = {\n building: PropTypes.bool,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n coordinatesOnHover: PropTypes.bool,\n correctness: PropTypes.string,\n from: types.PointType,\n disabled: PropTypes.bool,\n to: types.PointType,\n middle: types.PointType,\n onChange: PropTypes.func.isRequired,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n onClick: PropTypes.func,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n changeMarkProps: PropTypes.func\n };\n\n static defaultProps = {\n onClick: () => ({})\n };\n\n onChangePoint = point => {\n const { middle, onChange } = this.props;\n const { from, to } = point;\n\n // because point.from.label and point.to.label can be different\n if (!equalPoints(from, to)) {\n if (middle) {\n point.middle = { ...middle, ...getMiddleOfTwoPoints(from, to) };\n }\n\n onChange(point);\n }\n };\n\n dragFrom = draggedFrom => {\n const { from, to } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (!equalPoints(draggedFrom, to)) {\n this.onChangePoint({ from: draggedFrom, to });\n }\n };\n\n dragTo = draggedTo => {\n const { from, to } = this.props;\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n if (!equalPoints(from, draggedTo)) {\n this.onChangePoint({ from, to: draggedTo });\n }\n };\n\n dragCircle = draggedFrom => {\n const { from, to, onChange, middle } = this.props;\n const diff = point(from).sub(point(draggedFrom));\n const draggedTo = point(to).sub(diff);\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n const updated = { from: draggedFrom, to: draggedTo };\n\n if (middle) {\n updated.middle = { ...middle, ...getMiddleOfTwoPoints(draggedFrom, draggedTo) };\n }\n\n this.setState(\n {\n draggedroot: undefined,\n draggedOuter: undefined,\n isCircleDrag: false\n },\n () => {\n onChange(updated);\n }\n );\n };\n\n labelChange = (point, type) => {\n const { changeMarkProps } = this.props;\n const update = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete update.label;\n }\n\n changeMarkProps({ [type]: update });\n };\n\n clickPoint = (point, type) => {\n const { changeMarkProps, from, to } = this.props;\n\n if (type === 'middle' && !point && from && to) {\n point = { ...point, ...getMiddleOfTwoPoints(from, to) };\n }\n\n changeMarkProps({ from, to, [type]: { label: '', ...point } });\n\n if (this.input[type]) {\n this.input[type].focus();\n }\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n let {\n from,\n to,\n middle,\n disabled,\n classes,\n coordinatesOnHover,\n building,\n onDragStart,\n onDragStop,\n onClick,\n correctness,\n graphProps,\n labelNode,\n labelModeEnabled\n } = this.props;\n const common = { onDragStart, onDragStop, graphProps, onClick };\n\n to = to || from;\n\n const radius = getRadius(from, to);\n\n let fromLabelNode = null;\n let toLabelNode = null;\n let circleLabelNode = null;\n\n if (labelNode) {\n if (from && from.hasOwnProperty('label')) {\n fromLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={r => (this.input.from = r)}\n disabled={!labelModeEnabled}\n mark={from}\n graphProps={graphProps}\n onChange={label => this.labelChange({ ...from, label }, 'from')}\n />,\n labelNode\n );\n }\n\n if (to && to.hasOwnProperty('label')) {\n toLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={r => (this.input.to = r)}\n disabled={!labelModeEnabled}\n mark={to}\n graphProps={graphProps}\n onChange={label => this.labelChange({ ...to, label }, 'to')}\n />,\n labelNode\n );\n }\n\n if (middle && middle.hasOwnProperty('label')) {\n circleLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={r => (this.input.middle = r)}\n disabled={!labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onChange={label => this.labelChange({ ...middle, label }, 'middle')}\n />,\n labelNode\n );\n }\n }\n\n return (\n <g>\n <BgCircle\n disabled={building || disabled}\n correctness={correctness}\n className={classNames(building && classes.bgCircleBuilding)}\n x={from.x}\n y={from.y}\n radius={radius}\n onDrag={this.dragCircle}\n {...common}\n onClick={labelModeEnabled ? () => this.clickPoint(middle, 'middle') : common.onClick}\n />\n {circleLabelNode}\n\n <BasePoint\n disabled={building || disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={correctness}\n labelNode={labelNode}\n x={to.x}\n y={to.y}\n onDrag={this.dragTo}\n {...common}\n onClick={labelModeEnabled ? () => this.clickPoint(to, 'to') : common.onClick}\n />\n {toLabelNode}\n\n <BasePoint\n disabled={building || disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={correctness}\n labelNode={labelNode}\n x={from.x}\n y={from.y}\n className={classes.from}\n onDrag={this.dragFrom}\n {...common}\n onClick={labelModeEnabled ? () => this.clickPoint(from, 'from') : common.onClick}\n />\n {fromLabelNode}\n </g>\n );\n }\n}\n\nexport const BaseCircle = withStyles(theme => ({\n outerLine: {\n fill: 'rgb(0,0,0,0)', // TODO hardcoded color\n stroke: color.primaryLight(),\n strokeWidth: 4,\n '&:hover': {\n strokeWidth: 6,\n stroke: color.primaryDark()\n }\n },\n root: {},\n bgCircleBuilding: {\n stroke: color.secondaryLight(),\n animation: 'opacityPulse 2s ease-out',\n animationIterationCount: 'infinite',\n opacity: 1\n },\n '@keyframes opacityPulse': opacityPulsate('0.3')\n}))(RawBaseCircle);\n\nconst Component = rootEdgeComponent(BaseCircle);\nexport default Component;\n"],"mappings":"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"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports.tool = void 0;
|
|
7
9
|
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
8
12
|
var _component = _interopRequireDefault(require("./component"));
|
|
9
13
|
|
|
10
14
|
var _utils = require("../../utils");
|
|
11
15
|
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
13
|
-
|
|
14
16
|
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; }
|
|
15
17
|
|
|
16
|
-
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) {
|
|
17
|
-
|
|
18
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
18
|
+
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; }
|
|
19
19
|
|
|
20
20
|
var tool = function tool() {
|
|
21
21
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["tool","type","Component","Circle","hover","point","mark","edge","addPoint","equalPoints","root","building"],"sources":["../../../src/tools/circle/index.js"],"sourcesContent":["import Circle from './component';\nimport { equalPoints } from '../../utils';\n\nexport const tool = () => ({\n type: 'circle',\n Component: Circle,\n hover: (point, mark) => {\n return { ...mark, edge: point };\n },\n addPoint: (point, mark) => {\n if (mark && equalPoints(mark.root, point)) {\n return mark;\n }\n\n if (!mark) {\n return {\n type: 'circle',\n root: point,\n building: true\n };\n } else {\n return { ...mark, edge: point, building: false };\n }\n }\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["tool","type","Component","Circle","hover","point","mark","edge","addPoint","equalPoints","root","building"],"sources":["../../../src/tools/circle/index.js"],"sourcesContent":["import Circle from './component';\nimport { equalPoints } from '../../utils';\n\nexport const tool = () => ({\n type: 'circle',\n Component: Circle,\n hover: (point, mark) => {\n return { ...mark, edge: point };\n },\n addPoint: (point, mark) => {\n if (mark && equalPoints(mark.root, point)) {\n return mark;\n }\n\n if (!mark) {\n return {\n type: 'circle',\n root: point,\n building: true\n };\n } else {\n return { ...mark, edge: point, building: false };\n }\n }\n});\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;;;;;AAEO,IAAMA,IAAI,GAAG,SAAPA,IAAO;EAAA,OAAO;IACzBC,IAAI,EAAE,QADmB;IAEzBC,SAAS,EAAEC,qBAFc;IAGzBC,KAAK,EAAE,eAACC,KAAD,EAAQC,IAAR,EAAiB;MACtB,uCAAYA,IAAZ;QAAkBC,IAAI,EAAEF;MAAxB;IACD,CALwB;IAMzBG,QAAQ,EAAE,kBAACH,KAAD,EAAQC,IAAR,EAAiB;MACzB,IAAIA,IAAI,IAAI,IAAAG,kBAAA,EAAYH,IAAI,CAACI,IAAjB,EAAuBL,KAAvB,CAAZ,EAA2C;QACzC,OAAOC,IAAP;MACD;;MAED,IAAI,CAACA,IAAL,EAAW;QACT,OAAO;UACLL,IAAI,EAAE,QADD;UAELS,IAAI,EAAEL,KAFD;UAGLM,QAAQ,EAAE;QAHL,CAAP;MAKD,CAND,MAMO;QACL,uCAAYL,IAAZ;UAAkBC,IAAI,EAAEF,KAAxB;UAA+BM,QAAQ,EAAE;QAAzC;MACD;IACF;EApBwB,CAAP;AAAA,CAAb"}
|
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports["default"] = exports.ArrowedLine = void 0;
|
|
7
9
|
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
|
|
14
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
+
|
|
8
16
|
var _line = require("../shared/line");
|
|
9
17
|
|
|
10
18
|
var _react = _interopRequireDefault(require("react"));
|
|
@@ -22,27 +30,6 @@ var _arrowHead = require("../shared/arrow-head");
|
|
|
22
30
|
var _utils = require("../../utils");
|
|
23
31
|
|
|
24
32
|
var _excluded = ["className", "classes", "correctness", "disabled", "graphProps", "from", "to"];
|
|
25
|
-
|
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
27
|
-
|
|
28
|
-
function _extends() { _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; }; return _extends.apply(this, arguments); }
|
|
29
|
-
|
|
30
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
31
|
-
|
|
32
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
33
|
-
|
|
34
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
35
|
-
|
|
36
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
37
|
-
|
|
38
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
39
|
-
|
|
40
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
41
|
-
|
|
42
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
43
|
-
|
|
44
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
45
|
-
|
|
46
33
|
var markerId = (0, _arrowHead.genUid)();
|
|
47
34
|
|
|
48
35
|
var lineStyles = function lineStyles(theme) {
|
|
@@ -66,8 +53,7 @@ var ArrowedLine = function ArrowedLine(props) {
|
|
|
66
53
|
graphProps = props.graphProps,
|
|
67
54
|
from = props.from,
|
|
68
55
|
to = props.to,
|
|
69
|
-
rest =
|
|
70
|
-
|
|
56
|
+
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
71
57
|
var scale = graphProps.scale;
|
|
72
58
|
|
|
73
59
|
var _getAdjustedGraphLimi = (0, _utils.getAdjustedGraphLimits)(graphProps),
|
|
@@ -75,7 +61,7 @@ var ArrowedLine = function ArrowedLine(props) {
|
|
|
75
61
|
range = _getAdjustedGraphLimi.range;
|
|
76
62
|
|
|
77
63
|
var _trig$edges = _plot.trig.edges(domain, range)(from, to),
|
|
78
|
-
_trig$edges2 =
|
|
64
|
+
_trig$edges2 = (0, _slicedToArray2["default"])(_trig$edges, 2),
|
|
79
65
|
eFrom = _trig$edges2[0],
|
|
80
66
|
eTo = _trig$edges2[1];
|
|
81
67
|
|
|
@@ -84,7 +70,7 @@ var ArrowedLine = function ArrowedLine(props) {
|
|
|
84
70
|
size: (0, _utils.thinnerShapesNeeded)(graphProps) ? 4 : 5,
|
|
85
71
|
id: "".concat(props.markerId || markerId, "-").concat(suffix),
|
|
86
72
|
className: (0, _classnames["default"])(classes["".concat(suffix, "Arrow")])
|
|
87
|
-
})), /*#__PURE__*/_react["default"].createElement("line",
|
|
73
|
+
})), /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
|
|
88
74
|
x1: scale.x(eFrom.x),
|
|
89
75
|
y1: scale.y(eFrom.y),
|
|
90
76
|
x2: scale.x(eTo.x),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["markerId","genUid","lineStyles","theme","line","styles","enabledArrow","arrow","disabledArrow","disabled","correct","correctArrow","incorrect","incorrectArrow","ArrowedLine","props","className","classes","correctness","graphProps","from","to","rest","scale","getAdjustedGraphLimits","domain","range","trig","edges","eFrom","eTo","suffix","thinnerShapesNeeded","classNames","x","y","propTypes","PropTypes","string","object","bool","types","GraphPropsType","PointType","StyledArrowedLine","withStyles","Line","lineBase","Component","lineToolComponent"],"sources":["../../../src/tools/line/component.jsx"],"sourcesContent":["import { lineToolComponent, lineBase, styles } from '../shared/line';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { trig, types } from '@pie-lib/plot';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { ArrowMarker, genUid } from '../shared/arrow-head';\nimport { thinnerShapesNeeded, getAdjustedGraphLimits } from '../../utils';\n\nconst markerId = genUid();\n\nconst lineStyles = theme => ({\n line: styles.line(theme),\n enabledArrow: styles.arrow(theme),\n disabledArrow: styles.disabledArrow(theme),\n disabled: styles.disabled(theme),\n correct: styles.correct(theme, 'stroke'),\n correctArrow: styles.correct(theme),\n incorrect: styles.incorrect(theme, 'stroke'),\n incorrectArrow: styles.incorrect(theme)\n});\n\nexport const ArrowedLine = props => {\n const { className, classes, correctness, disabled, graphProps, from, to, ...rest } = props;\n const { scale } = graphProps;\n const { domain, range } = getAdjustedGraphLimits(graphProps);\n const [eFrom, eTo] = trig.edges(domain, range)(from, to);\n const suffix = correctness || (disabled && 'disabled') || 'enabled';\n\n return (\n <g>\n <defs>\n <ArrowMarker\n size={thinnerShapesNeeded(graphProps) ? 4 : 5}\n id={`${props.markerId || markerId}-${suffix}`}\n className={classNames(classes[`${suffix}Arrow`])}\n />\n </defs>\n <line\n x1={scale.x(eFrom.x)}\n y1={scale.y(eFrom.y)}\n x2={scale.x(eTo.x)}\n y2={scale.y(eTo.y)}\n className={classNames(\n classes.line,\n disabled && classes.disabled,\n classes[correctness],\n className\n )}\n markerEnd={`url(#${props.markerId || markerId}-${suffix})`}\n markerStart={`url(#${props.markerId || markerId}-${suffix})`}\n {...rest}\n />\n </g>\n );\n};\n\nArrowedLine.propTypes = {\n className: PropTypes.string,\n classes: PropTypes.object,\n correctness: PropTypes.string,\n disabled: PropTypes.bool,\n graphProps: types.GraphPropsType,\n from: types.PointType,\n to: types.PointType,\n markerId: PropTypes.string\n};\n\nconst StyledArrowedLine = withStyles(lineStyles)(ArrowedLine);\n\nconst Line = lineBase(StyledArrowedLine);\nconst Component = lineToolComponent(Line);\n\nexport default Component;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"component.js","names":["markerId","genUid","lineStyles","theme","line","styles","enabledArrow","arrow","disabledArrow","disabled","correct","correctArrow","incorrect","incorrectArrow","ArrowedLine","props","className","classes","correctness","graphProps","from","to","rest","scale","getAdjustedGraphLimits","domain","range","trig","edges","eFrom","eTo","suffix","thinnerShapesNeeded","classNames","x","y","propTypes","PropTypes","string","object","bool","types","GraphPropsType","PointType","StyledArrowedLine","withStyles","Line","lineBase","Component","lineToolComponent"],"sources":["../../../src/tools/line/component.jsx"],"sourcesContent":["import { lineToolComponent, lineBase, styles } from '../shared/line';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { trig, types } from '@pie-lib/plot';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { ArrowMarker, genUid } from '../shared/arrow-head';\nimport { thinnerShapesNeeded, getAdjustedGraphLimits } from '../../utils';\n\nconst markerId = genUid();\n\nconst lineStyles = theme => ({\n line: styles.line(theme),\n enabledArrow: styles.arrow(theme),\n disabledArrow: styles.disabledArrow(theme),\n disabled: styles.disabled(theme),\n correct: styles.correct(theme, 'stroke'),\n correctArrow: styles.correct(theme),\n incorrect: styles.incorrect(theme, 'stroke'),\n incorrectArrow: styles.incorrect(theme)\n});\n\nexport const ArrowedLine = props => {\n const { className, classes, correctness, disabled, graphProps, from, to, ...rest } = props;\n const { scale } = graphProps;\n const { domain, range } = getAdjustedGraphLimits(graphProps);\n const [eFrom, eTo] = trig.edges(domain, range)(from, to);\n const suffix = correctness || (disabled && 'disabled') || 'enabled';\n\n return (\n <g>\n <defs>\n <ArrowMarker\n size={thinnerShapesNeeded(graphProps) ? 4 : 5}\n id={`${props.markerId || markerId}-${suffix}`}\n className={classNames(classes[`${suffix}Arrow`])}\n />\n </defs>\n <line\n x1={scale.x(eFrom.x)}\n y1={scale.y(eFrom.y)}\n x2={scale.x(eTo.x)}\n y2={scale.y(eTo.y)}\n className={classNames(\n classes.line,\n disabled && classes.disabled,\n classes[correctness],\n className\n )}\n markerEnd={`url(#${props.markerId || markerId}-${suffix})`}\n markerStart={`url(#${props.markerId || markerId}-${suffix})`}\n {...rest}\n />\n </g>\n );\n};\n\nArrowedLine.propTypes = {\n className: PropTypes.string,\n classes: PropTypes.object,\n correctness: PropTypes.string,\n disabled: PropTypes.bool,\n graphProps: types.GraphPropsType,\n from: types.PointType,\n to: types.PointType,\n markerId: PropTypes.string\n};\n\nconst StyledArrowedLine = withStyles(lineStyles)(ArrowedLine);\n\nconst Line = lineBase(StyledArrowedLine);\nconst Component = lineToolComponent(Line);\n\nexport default Component;\n"],"mappings":"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"}
|
package/lib/tools/line/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -9,8 +11,6 @@ var _component = _interopRequireDefault(require("./component"));
|
|
|
9
11
|
|
|
10
12
|
var _line = require("../shared/line");
|
|
11
13
|
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
13
|
-
|
|
14
14
|
var tool = (0, _line.lineTool)('line', _component["default"]);
|
|
15
15
|
exports.tool = tool;
|
|
16
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["tool","lineTool","Line"],"sources":["../../../src/tools/line/index.js"],"sourcesContent":["import Line from './component';\nimport { lineTool } from '../shared/line';\n\nexport const tool = lineTool('line', Line);\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["tool","lineTool","Line"],"sources":["../../../src/tools/line/index.js"],"sourcesContent":["import Line from './component';\nimport { lineTool } from '../shared/line';\n\nexport const tool = lineTool('line', Line);\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEO,IAAMA,IAAI,GAAG,IAAAC,cAAA,EAAS,MAAT,EAAiBC,qBAAjB,CAAb"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -11,8 +13,6 @@ var _graphingUtils = require("@pie-lib/graphing-utils");
|
|
|
11
13
|
|
|
12
14
|
var _withRootEdge = require("../shared/line/with-root-edge");
|
|
13
15
|
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
|
-
|
|
16
16
|
var log = (0, _debug["default"])('pie-lib:graphing:sine');
|
|
17
17
|
var Parabola = (0, _withRootEdge.withRootEdge)(function (props) {
|
|
18
18
|
var domain = props.graphProps.domain;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["log","debug","Parabola","withRootEdge","props","domain","graphProps","root","edge","interval","dataPoints","x","buildDataPoints","min","max","step","parabolaFromTwoPoints","Component","rootEdgeComponent"],"sources":["../../../src/tools/parabola/component.jsx"],"sourcesContent":["import debug from 'debug';\nimport { buildDataPoints, parabolaFromTwoPoints } from '@pie-lib/graphing-utils';\nimport { withRootEdge, rootEdgeComponent } from '../shared/line/with-root-edge';\n\nconst log = debug('pie-lib:graphing:sine');\n\nconst Parabola = withRootEdge(props => {\n const { domain } = props.graphProps;\n\n const { root, edge } = props;\n const interval = 1;\n\n const dataPoints =\n edge && edge.x === root.x\n ? []\n : buildDataPoints(\n domain.min,\n domain.max,\n root,\n edge,\n domain.step || interval,\n parabolaFromTwoPoints(root, edge)\n );\n log('dataPoints:', dataPoints);\n return { root: props.root, edge: props.edge, dataPoints };\n});\n\nconst Component = rootEdgeComponent(Parabola);\nexport default Component;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"component.js","names":["log","debug","Parabola","withRootEdge","props","domain","graphProps","root","edge","interval","dataPoints","x","buildDataPoints","min","max","step","parabolaFromTwoPoints","Component","rootEdgeComponent"],"sources":["../../../src/tools/parabola/component.jsx"],"sourcesContent":["import debug from 'debug';\nimport { buildDataPoints, parabolaFromTwoPoints } from '@pie-lib/graphing-utils';\nimport { withRootEdge, rootEdgeComponent } from '../shared/line/with-root-edge';\n\nconst log = debug('pie-lib:graphing:sine');\n\nconst Parabola = withRootEdge(props => {\n const { domain } = props.graphProps;\n\n const { root, edge } = props;\n const interval = 1;\n\n const dataPoints =\n edge && edge.x === root.x\n ? []\n : buildDataPoints(\n domain.min,\n domain.max,\n root,\n edge,\n domain.step || interval,\n parabolaFromTwoPoints(root, edge)\n );\n log('dataPoints:', dataPoints);\n return { root: props.root, edge: props.edge, dataPoints };\n});\n\nconst Component = rootEdgeComponent(Parabola);\nexport default Component;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,GAAG,GAAG,IAAAC,iBAAA,EAAM,uBAAN,CAAZ;AAEA,IAAMC,QAAQ,GAAG,IAAAC,0BAAA,EAAa,UAAAC,KAAK,EAAI;EACrC,IAAQC,MAAR,GAAmBD,KAAK,CAACE,UAAzB,CAAQD,MAAR;EAEA,IAAQE,IAAR,GAAuBH,KAAvB,CAAQG,IAAR;EAAA,IAAcC,IAAd,GAAuBJ,KAAvB,CAAcI,IAAd;EACA,IAAMC,QAAQ,GAAG,CAAjB;EAEA,IAAMC,UAAU,GACdF,IAAI,IAAIA,IAAI,CAACG,CAAL,KAAWJ,IAAI,CAACI,CAAxB,GACI,EADJ,GAEI,IAAAC,8BAAA,EACEP,MAAM,CAACQ,GADT,EAEER,MAAM,CAACS,GAFT,EAGEP,IAHF,EAIEC,IAJF,EAKEH,MAAM,CAACU,IAAP,IAAeN,QALjB,EAME,IAAAO,oCAAA,EAAsBT,IAAtB,EAA4BC,IAA5B,CANF,CAHN;EAWAR,GAAG,CAAC,aAAD,EAAgBU,UAAhB,CAAH;EACA,OAAO;IAAEH,IAAI,EAAEH,KAAK,CAACG,IAAd;IAAoBC,IAAI,EAAEJ,KAAK,CAACI,IAAhC;IAAsCE,UAAU,EAAVA;EAAtC,CAAP;AACD,CAnBgB,CAAjB;AAqBA,IAAMO,SAAS,GAAG,IAAAC,+BAAA,EAAkBhB,QAAlB,CAAlB;eACee,S"}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports.tool = void 0;
|
|
7
9
|
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
8
12
|
var _component = _interopRequireDefault(require("./component"));
|
|
9
13
|
|
|
10
14
|
var _debug = _interopRequireDefault(require("debug"));
|
|
11
15
|
|
|
12
16
|
var _utils = require("../../utils");
|
|
13
17
|
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
|
-
|
|
16
18
|
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; }
|
|
17
19
|
|
|
18
|
-
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) {
|
|
19
|
-
|
|
20
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
20
|
+
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; }
|
|
21
21
|
|
|
22
22
|
var log = (0, _debug["default"])('pie-lib:graphing:parabola');
|
|
23
23
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["log","debug","tool","type","Component","Parabola","complete","data","mark","building","closed","addPoint","point","equalPoints","root","sameAxes","edge","undefined","Error"],"sources":["../../../src/tools/parabola/index.js"],"sourcesContent":["import Parabola from './component';\nimport debug from 'debug';\nimport { equalPoints, sameAxes } from '../../utils';\n\nconst log = debug('pie-lib:graphing:parabola');\n\nexport const tool = () => ({\n type: 'parabola',\n Component: Parabola,\n complete: (data, mark) => ({ ...mark, building: false, closed: true }),\n addPoint: (point, mark) => {\n log('add point to parabola model: ', point, 'mark: ', mark);\n if (mark && (equalPoints(mark.root, point) || sameAxes(mark.root, point))) {\n return mark;\n }\n\n if (!mark) {\n return {\n type: 'parabola',\n root: point,\n edge: undefined,\n closed: false,\n building: true\n };\n } else if (mark && !mark.root) {\n throw new Error('no root - should never happen');\n } else {\n return { ...mark, edge: point, closed: true, building: false };\n }\n }\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["log","debug","tool","type","Component","Parabola","complete","data","mark","building","closed","addPoint","point","equalPoints","root","sameAxes","edge","undefined","Error"],"sources":["../../../src/tools/parabola/index.js"],"sourcesContent":["import Parabola from './component';\nimport debug from 'debug';\nimport { equalPoints, sameAxes } from '../../utils';\n\nconst log = debug('pie-lib:graphing:parabola');\n\nexport const tool = () => ({\n type: 'parabola',\n Component: Parabola,\n complete: (data, mark) => ({ ...mark, building: false, closed: true }),\n addPoint: (point, mark) => {\n log('add point to parabola model: ', point, 'mark: ', mark);\n if (mark && (equalPoints(mark.root, point) || sameAxes(mark.root, point))) {\n return mark;\n }\n\n if (!mark) {\n return {\n type: 'parabola',\n root: point,\n edge: undefined,\n closed: false,\n building: true\n };\n } else if (mark && !mark.root) {\n throw new Error('no root - should never happen');\n } else {\n return { ...mark, edge: point, closed: true, building: false };\n }\n }\n});\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,IAAAC,iBAAA,EAAM,2BAAN,CAAZ;;AAEO,IAAMC,IAAI,GAAG,SAAPA,IAAO;EAAA,OAAO;IACzBC,IAAI,EAAE,UADmB;IAEzBC,SAAS,EAAEC,qBAFc;IAGzBC,QAAQ,EAAE,kBAACC,IAAD,EAAOC,IAAP;MAAA,uCAAsBA,IAAtB;QAA4BC,QAAQ,EAAE,KAAtC;QAA6CC,MAAM,EAAE;MAArD;IAAA,CAHe;IAIzBC,QAAQ,EAAE,kBAACC,KAAD,EAAQJ,IAAR,EAAiB;MACzBR,GAAG,CAAC,+BAAD,EAAkCY,KAAlC,EAAyC,QAAzC,EAAmDJ,IAAnD,CAAH;;MACA,IAAIA,IAAI,KAAK,IAAAK,kBAAA,EAAYL,IAAI,CAACM,IAAjB,EAAuBF,KAAvB,KAAiC,IAAAG,eAAA,EAASP,IAAI,CAACM,IAAd,EAAoBF,KAApB,CAAtC,CAAR,EAA2E;QACzE,OAAOJ,IAAP;MACD;;MAED,IAAI,CAACA,IAAL,EAAW;QACT,OAAO;UACLL,IAAI,EAAE,UADD;UAELW,IAAI,EAAEF,KAFD;UAGLI,IAAI,EAAEC,SAHD;UAILP,MAAM,EAAE,KAJH;UAKLD,QAAQ,EAAE;QALL,CAAP;MAOD,CARD,MAQO,IAAID,IAAI,IAAI,CAACA,IAAI,CAACM,IAAlB,EAAwB;QAC7B,MAAM,IAAII,KAAJ,CAAU,+BAAV,CAAN;MACD,CAFM,MAEA;QACL,uCAAYV,IAAZ;UAAkBQ,IAAI,EAAEJ,KAAxB;UAA+BF,MAAM,EAAE,IAAvC;UAA6CD,QAAQ,EAAE;QAAvD;MACD;IACF;EAvBwB,CAAP;AAAA,CAAb"}
|