@pie-lib/graphing 2.14.22-next.0 → 2.16.0-beta.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 +16 -0
- package/NEXT.CHANGELOG.json +1 -0
- package/lib/__tests__/graph-with-controls.test.js +215 -0
- package/lib/__tests__/graph.test.js +290 -0
- package/lib/__tests__/grid.test.js +40 -0
- package/lib/__tests__/labels.test.js +59 -0
- package/lib/__tests__/mark-label.test.js +154 -0
- package/lib/__tests__/toggle-bar.test.js +54 -0
- package/lib/__tests__/tool-menu.test.js +43 -0
- package/lib/__tests__/undo-redo.test.js +42 -0
- package/lib/__tests__/use-debounce.test.js +28 -0
- package/lib/__tests__/utils.js +72 -0
- package/lib/__tests__/utils.test.js +133 -0
- package/lib/axis/__tests__/arrow.test.js +68 -0
- package/lib/axis/__tests__/axes.test.js +214 -0
- package/lib/axis/arrow.js +1 -1
- package/lib/axis/axes.js +6 -6
- package/lib/axis/index.js +1 -1
- package/lib/bg.js +1 -1
- package/lib/container/actions.js +1 -1
- package/lib/container/index.js +2 -5
- package/lib/container/marks.js +1 -1
- package/lib/container/middleware.js +1 -1
- package/lib/container/reducer.js +1 -1
- package/lib/coordinates-label.js +6 -4
- package/lib/graph-with-controls.js +9 -16
- package/lib/graph.js +30 -13
- package/lib/grid-setup.js +1 -1
- package/lib/grid.js +7 -15
- package/lib/index.js +9 -1
- package/lib/key-legend.js +246 -0
- package/lib/label-svg-icon.js +56 -0
- package/lib/labels.js +3 -2
- package/lib/mark-label.js +168 -57
- package/lib/toggle-bar.js +4 -5
- package/lib/tool-menu.js +3 -23
- package/lib/tools/absolute/__tests__/component.test.js +74 -0
- package/lib/tools/absolute/component.js +35 -0
- package/lib/tools/absolute/index.js +63 -0
- package/lib/tools/circle/__tests__/bg-circle.test.js +46 -0
- package/lib/tools/circle/__tests__/component.test.js +259 -0
- package/lib/tools/circle/bg-circle.js +5 -4
- package/lib/tools/circle/component.js +35 -16
- package/lib/tools/circle/index.js +1 -1
- package/lib/tools/exponential/__tests__/component.test.js +73 -0
- package/lib/tools/exponential/component.js +34 -0
- package/lib/tools/exponential/index.js +71 -0
- package/lib/tools/index.js +27 -7
- package/lib/tools/line/__tests__/component.test.js +56 -0
- package/lib/tools/line/component.js +3 -2
- package/lib/tools/line/index.js +1 -1
- package/lib/tools/parabola/__tests__/component.test.js +73 -0
- package/lib/tools/parabola/component.js +7 -6
- package/lib/tools/parabola/index.js +1 -1
- package/lib/tools/point/__tests__/component.test.js +97 -0
- package/lib/tools/point/component.js +15 -10
- package/lib/tools/point/index.js +1 -1
- package/lib/tools/polygon/__tests__/component.test.js +255 -0
- package/lib/tools/polygon/__tests__/index.test.js +95 -0
- package/lib/tools/polygon/__tests__/line.test.js +43 -0
- package/lib/tools/polygon/__tests__/polygon.test.js +73 -0
- package/lib/tools/polygon/component.js +26 -13
- package/lib/tools/polygon/index.js +1 -1
- package/lib/tools/polygon/line.js +13 -7
- package/lib/tools/polygon/polygon.js +7 -4
- package/lib/tools/ray/__tests__/component.test.js +48 -0
- package/lib/tools/ray/component.js +3 -2
- package/lib/tools/ray/index.js +1 -1
- package/lib/tools/segment/__tests__/component.test.js +48 -0
- package/lib/tools/segment/component.js +3 -2
- package/lib/tools/segment/index.js +1 -1
- package/lib/tools/shared/__tests__/arrow-head.test.js +62 -0
- package/lib/tools/shared/arrow-head.js +1 -1
- package/lib/tools/shared/icons/CorrectSVG.js +36 -0
- package/lib/tools/shared/icons/IncorrectSVG.js +36 -0
- package/lib/tools/shared/icons/MissingSVG.js +35 -0
- package/lib/tools/shared/line/__tests__/index.test.js +301 -0
- package/lib/tools/shared/line/__tests__/line-path.test.js +78 -0
- package/lib/tools/shared/line/__tests__/with-root-edge.test.js +122 -0
- package/lib/tools/shared/line/index.js +52 -20
- package/lib/tools/shared/line/line-path.js +14 -8
- package/lib/tools/shared/line/with-root-edge.js +20 -9
- package/lib/tools/shared/point/__tests__/arrow-point.test.js +137 -0
- package/lib/tools/shared/point/__tests__/base-point.test.js +134 -0
- package/lib/tools/shared/point/arrow-point.js +2 -2
- package/lib/tools/shared/point/arrow.js +2 -2
- package/lib/tools/shared/point/base-point.js +44 -8
- package/lib/tools/shared/point/index.js +5 -2
- package/lib/tools/shared/styles.js +17 -8
- package/lib/tools/shared/types.js +1 -1
- package/lib/tools/sine/__tests__/component.test.js +81 -0
- package/lib/tools/sine/component.js +14 -5
- package/lib/tools/sine/index.js +1 -1
- package/lib/tools/vector/__tests__/component.test.js +45 -0
- package/lib/tools/vector/component.js +3 -2
- package/lib/tools/vector/index.js +1 -1
- package/lib/undo-redo.js +1 -2
- package/lib/use-debounce.js +1 -1
- package/lib/utils.js +2 -2
- package/package.json +7 -7
- package/src/__tests__/__snapshots__/graph-with-controls.test.jsx.snap +237 -0
- package/src/__tests__/__snapshots__/graph.test.jsx.snap +211 -0
- package/src/__tests__/__snapshots__/grid.test.jsx.snap +54 -0
- package/src/__tests__/__snapshots__/labels.test.jsx.snap +30 -0
- package/src/__tests__/__snapshots__/mark-label.test.jsx.snap +45 -0
- package/src/__tests__/__snapshots__/toggle-bar.test.jsx.snap +7 -0
- package/src/__tests__/__snapshots__/tool-menu.test.jsx.snap +13 -0
- package/src/__tests__/__snapshots__/undo-redo.test.jsx.snap +14 -0
- package/src/__tests__/graph-with-controls.test.jsx +147 -0
- package/src/__tests__/graph.test.jsx +230 -0
- package/src/__tests__/grid.test.jsx +20 -0
- package/src/__tests__/labels.test.jsx +38 -0
- package/src/__tests__/mark-label.test.jsx +68 -0
- package/src/__tests__/toggle-bar.test.jsx +36 -0
- package/src/__tests__/tool-menu.test.jsx +29 -0
- package/src/__tests__/undo-redo.test.jsx +25 -0
- package/src/__tests__/use-debounce.test.js +21 -0
- package/src/__tests__/utils.js +38 -0
- package/src/__tests__/utils.test.js +151 -0
- package/src/axis/__tests__/__snapshots__/arrow.test.jsx.snap +33 -0
- package/src/axis/__tests__/__snapshots__/axes.test.jsx.snap +122 -0
- package/src/axis/__tests__/arrow.test.jsx +39 -0
- package/src/axis/__tests__/axes.test.jsx +220 -0
- package/src/axis/axes.jsx +5 -5
- package/src/container/index.jsx +2 -4
- package/src/coordinates-label.jsx +4 -3
- package/src/graph-with-controls.jsx +8 -10
- package/src/graph.jsx +22 -10
- package/src/grid-setup.jsx +9 -6
- package/src/grid.jsx +8 -10
- package/src/index.js +2 -2
- package/src/key-legend.jsx +115 -0
- package/src/label-svg-icon.jsx +39 -0
- package/src/labels.jsx +2 -1
- package/src/mark-label.jsx +149 -52
- package/src/toggle-bar.jsx +1 -2
- package/src/tool-menu.jsx +3 -26
- package/src/tools/absolute/__tests__/component.test.jsx +54 -0
- package/src/tools/absolute/component.jsx +23 -0
- package/src/tools/absolute/index.js +31 -0
- package/src/tools/circle/__tests__/__snapshots__/bg-circle.test.jsx.snap +46 -0
- package/src/tools/circle/__tests__/__snapshots__/component.test.jsx.snap +293 -0
- package/src/tools/circle/__tests__/bg-circle.test.jsx +28 -0
- package/src/tools/circle/__tests__/component.test.jsx +228 -0
- package/src/tools/circle/bg-circle.jsx +5 -4
- package/src/tools/circle/component.jsx +22 -8
- package/src/tools/exponential/__tests__/component.test.jsx +54 -0
- package/src/tools/exponential/component.jsx +23 -0
- package/src/tools/exponential/index.js +39 -0
- package/src/tools/index.js +38 -5
- package/src/tools/line/__tests__/__snapshots__/component.test.jsx.snap +20 -0
- package/src/tools/line/__tests__/component.test.jsx +36 -0
- package/src/tools/line/component.jsx +2 -1
- package/src/tools/parabola/__tests__/component.test.jsx +49 -0
- package/src/tools/parabola/component.jsx +7 -6
- package/src/tools/point/__tests__/__snapshots__/component.test.jsx.snap +40 -0
- package/src/tools/point/__tests__/component.test.jsx +66 -0
- package/src/tools/point/component.jsx +12 -6
- package/src/tools/polygon/__tests__/__snapshots__/component.test.jsx.snap +415 -0
- package/src/tools/polygon/__tests__/__snapshots__/line.test.jsx.snap +45 -0
- package/src/tools/polygon/__tests__/__snapshots__/polygon.test.jsx.snap +52 -0
- package/src/tools/polygon/__tests__/component.test.jsx +226 -0
- package/src/tools/polygon/__tests__/index.test.js +65 -0
- package/src/tools/polygon/__tests__/line.test.jsx +25 -0
- package/src/tools/polygon/__tests__/polygon.test.jsx +44 -0
- package/src/tools/polygon/component.jsx +39 -11
- package/src/tools/polygon/line.jsx +15 -7
- package/src/tools/polygon/polygon.jsx +7 -3
- package/src/tools/ray/__tests__/__snapshots__/component.test.jsx.snap +23 -0
- package/src/tools/ray/__tests__/component.test.jsx +29 -0
- package/src/tools/ray/component.jsx +2 -1
- package/src/tools/segment/__tests__/__snapshots__/component.test.jsx.snap +14 -0
- package/src/tools/segment/__tests__/component.test.jsx +28 -0
- package/src/tools/segment/component.jsx +2 -1
- package/src/tools/shared/__tests__/__snapshots__/arrow-head.test.jsx.snap +27 -0
- package/src/tools/shared/__tests__/arrow-head.test.jsx +34 -0
- package/src/tools/shared/icons/CorrectSVG.jsx +22 -0
- package/src/tools/shared/icons/IncorrectSVG.jsx +20 -0
- package/src/tools/shared/icons/MissingSVG.jsx +21 -0
- package/src/tools/shared/line/__tests__/__snapshots__/index.test.jsx.snap +360 -0
- package/src/tools/shared/line/__tests__/__snapshots__/line-path.test.jsx.snap +58 -0
- package/src/tools/shared/line/__tests__/__snapshots__/with-root-edge.test.jsx.snap +63 -0
- package/src/tools/shared/line/__tests__/index.test.jsx +255 -0
- package/src/tools/shared/line/__tests__/line-path.test.jsx +53 -0
- package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +73 -0
- package/src/tools/shared/line/index.jsx +39 -13
- package/src/tools/shared/line/line-path.jsx +18 -7
- package/src/tools/shared/line/with-root-edge.jsx +10 -3
- package/src/tools/shared/point/__tests__/__snapshots__/arrow-point.test.jsx.snap +56 -0
- package/src/tools/shared/point/__tests__/__snapshots__/base-point.test.jsx.snap +44 -0
- package/src/tools/shared/point/__tests__/arrow-point.test.jsx +87 -0
- package/src/tools/shared/point/__tests__/base-point.test.jsx +84 -0
- package/src/tools/shared/point/arrow-point.jsx +4 -1
- package/src/tools/shared/point/arrow.jsx +4 -1
- package/src/tools/shared/point/base-point.jsx +28 -3
- package/src/tools/shared/point/index.jsx +7 -2
- package/src/tools/shared/styles.js +8 -3
- package/src/tools/sine/__tests__/component.test.jsx +51 -0
- package/src/tools/sine/component.jsx +7 -7
- package/src/tools/vector/__tests__/__snapshots__/component.test.jsx.snap +12 -0
- package/src/tools/vector/__tests__/component.test.jsx +26 -0
- package/src/tools/vector/component.jsx +2 -1
- package/src/undo-redo.jsx +0 -1
- package/src/utils.js +1 -1
- package/legacy.png +0 -0
- package/lib/axis/arrow.js.map +0 -1
- package/lib/axis/axes.js.map +0 -1
- package/lib/axis/index.js.map +0 -1
- package/lib/bg.js.map +0 -1
- package/lib/container/actions.js.map +0 -1
- package/lib/container/index.js.map +0 -1
- package/lib/container/marks.js.map +0 -1
- package/lib/container/middleware.js.map +0 -1
- package/lib/container/reducer.js.map +0 -1
- package/lib/coordinates-label.js.map +0 -1
- package/lib/graph-with-controls.js.map +0 -1
- package/lib/graph.js.map +0 -1
- package/lib/grid-setup.js.map +0 -1
- package/lib/grid.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/labels.js.map +0 -1
- package/lib/mark-label.js.map +0 -1
- package/lib/toggle-bar.js.map +0 -1
- package/lib/tool-menu.js.map +0 -1
- package/lib/tools/circle/bg-circle.js.map +0 -1
- package/lib/tools/circle/component.js.map +0 -1
- package/lib/tools/circle/index.js.map +0 -1
- package/lib/tools/index.js.map +0 -1
- package/lib/tools/line/component.js.map +0 -1
- package/lib/tools/line/index.js.map +0 -1
- package/lib/tools/parabola/component.js.map +0 -1
- package/lib/tools/parabola/index.js.map +0 -1
- package/lib/tools/point/component.js.map +0 -1
- package/lib/tools/point/index.js.map +0 -1
- package/lib/tools/polygon/component.js.map +0 -1
- package/lib/tools/polygon/index.js.map +0 -1
- package/lib/tools/polygon/line.js.map +0 -1
- package/lib/tools/polygon/polygon.js.map +0 -1
- package/lib/tools/ray/component.js.map +0 -1
- package/lib/tools/ray/index.js.map +0 -1
- package/lib/tools/segment/component.js.map +0 -1
- package/lib/tools/segment/index.js.map +0 -1
- package/lib/tools/shared/arrow-head.js.map +0 -1
- package/lib/tools/shared/line/index.js.map +0 -1
- package/lib/tools/shared/line/line-path.js.map +0 -1
- package/lib/tools/shared/line/with-root-edge.js.map +0 -1
- package/lib/tools/shared/point/arrow-point.js.map +0 -1
- package/lib/tools/shared/point/arrow.js.map +0 -1
- package/lib/tools/shared/point/base-point.js.map +0 -1
- package/lib/tools/shared/point/index.js.map +0 -1
- package/lib/tools/shared/styles.js.map +0 -1
- package/lib/tools/shared/types.js.map +0 -1
- package/lib/tools/sine/component.js.map +0 -1
- package/lib/tools/sine/index.js.map +0 -1
- package/lib/tools/vector/component.js.map +0 -1
- package/lib/tools/vector/index.js.map +0 -1
- package/lib/undo-redo.js.map +0 -1
- package/lib/use-debounce.js.map +0 -1
- package/lib/utils.js.map +0 -1
|
@@ -117,7 +117,11 @@ var lineToolComponent = function lineToolComponent(Component) {
|
|
|
117
117
|
mark: undefined
|
|
118
118
|
}, function () {
|
|
119
119
|
var type = update.type;
|
|
120
|
-
var shouldNotChange = type && (type === 'parabola' || type === 'sine') && (0, _utils.sameAxes)(update.from, update.to);
|
|
120
|
+
var shouldNotChange = type && (type === 'parabola' || type === 'sine' || type === 'absolute' || type === 'exponential') && (0, _utils.sameAxes)(update.from, update.to);
|
|
121
|
+
|
|
122
|
+
if (!shouldNotChange && type && type === 'exponential' && update.from && update.to) {
|
|
123
|
+
shouldNotChange = update.from.y === 0 || update.to.y === 0 || update.from.y * update.to.y < 0;
|
|
124
|
+
}
|
|
121
125
|
|
|
122
126
|
if (!(0, _isEqual["default"])(mark, update) && !shouldNotChange) {
|
|
123
127
|
onChange(mark, update);
|
|
@@ -188,7 +192,8 @@ var lineToolComponent = function lineToolComponent(Component) {
|
|
|
188
192
|
onClick = _this$props3.onClick,
|
|
189
193
|
labelNode = _this$props3.labelNode,
|
|
190
194
|
labelModeEnabled = _this$props3.labelModeEnabled,
|
|
191
|
-
coordinatesOnHover = _this$props3.coordinatesOnHover
|
|
195
|
+
coordinatesOnHover = _this$props3.coordinatesOnHover,
|
|
196
|
+
limitLabeling = _this$props3.limitLabeling;
|
|
192
197
|
var mark = this.state.mark ? this.state.mark : this.props.mark;
|
|
193
198
|
var from = (0, _cloneDeep["default"])(mark.from);
|
|
194
199
|
var to = (0, _cloneDeep["default"])(mark.to);
|
|
@@ -221,7 +226,8 @@ var lineToolComponent = function lineToolComponent(Component) {
|
|
|
221
226
|
onDragStart: this.startDrag,
|
|
222
227
|
onDragStop: this.stopDrag,
|
|
223
228
|
labelNode: labelNode,
|
|
224
|
-
labelModeEnabled: labelModeEnabled
|
|
229
|
+
labelModeEnabled: labelModeEnabled,
|
|
230
|
+
limitLabeling: limitLabeling
|
|
225
231
|
});
|
|
226
232
|
}
|
|
227
233
|
}]);
|
|
@@ -364,11 +370,29 @@ var lineBase = function lineBase(Comp, opts) {
|
|
|
364
370
|
|
|
365
371
|
changeMarkProps((0, _defineProperty2["default"])({}, type, update));
|
|
366
372
|
});
|
|
367
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "clickPoint", function (point, type) {
|
|
373
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "clickPoint", function (point, type, data) {
|
|
368
374
|
var _this2$props5 = _this2.props,
|
|
369
375
|
changeMarkProps = _this2$props5.changeMarkProps,
|
|
376
|
+
disabled = _this2$props5.disabled,
|
|
370
377
|
from = _this2$props5.from,
|
|
371
|
-
to = _this2$props5.to
|
|
378
|
+
to = _this2$props5.to,
|
|
379
|
+
labelModeEnabled = _this2$props5.labelModeEnabled,
|
|
380
|
+
limitLabeling = _this2$props5.limitLabeling,
|
|
381
|
+
onClick = _this2$props5.onClick;
|
|
382
|
+
|
|
383
|
+
if (!labelModeEnabled) {
|
|
384
|
+
onClick(point || data);
|
|
385
|
+
return;
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
if (disabled) {
|
|
389
|
+
return;
|
|
390
|
+
} // limit labeling the points of the line
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
if (limitLabeling) {
|
|
394
|
+
return;
|
|
395
|
+
}
|
|
372
396
|
|
|
373
397
|
if (type === 'middle' && !point && from && to) {
|
|
374
398
|
point = _objectSpread(_objectSpread({}, point), (0, _utils.getMiddleOfTwoPoints)(from, to));
|
|
@@ -476,9 +500,9 @@ var lineBase = function lineBase(Comp, opts) {
|
|
|
476
500
|
middle: middle,
|
|
477
501
|
onDrag: this.dragComp
|
|
478
502
|
}, common, {
|
|
479
|
-
onClick:
|
|
480
|
-
return _this3.clickPoint(middle, 'middle');
|
|
481
|
-
}
|
|
503
|
+
onClick: function onClick(data) {
|
|
504
|
+
return _this3.clickPoint(middle, 'middle', data);
|
|
505
|
+
}
|
|
482
506
|
})), lineLabelNode, /*#__PURE__*/_react["default"].createElement(FromPoint, (0, _extends2["default"])({
|
|
483
507
|
x: from.x,
|
|
484
508
|
y: from.y,
|
|
@@ -486,9 +510,9 @@ var lineBase = function lineBase(Comp, opts) {
|
|
|
486
510
|
coordinatesOnHover: coordinatesOnHover,
|
|
487
511
|
onDrag: this.dragFrom
|
|
488
512
|
}, common, {
|
|
489
|
-
onClick:
|
|
490
|
-
return _this3.clickPoint(from, 'from');
|
|
491
|
-
}
|
|
513
|
+
onClick: function onClick(data) {
|
|
514
|
+
return _this3.clickPoint(from, 'from', data);
|
|
515
|
+
}
|
|
492
516
|
})), fromLabelNode, to && /*#__PURE__*/_react["default"].createElement(ToPoint, (0, _extends2["default"])({
|
|
493
517
|
x: to.x,
|
|
494
518
|
y: to.y,
|
|
@@ -498,9 +522,9 @@ var lineBase = function lineBase(Comp, opts) {
|
|
|
498
522
|
coordinatesOnHover: coordinatesOnHover,
|
|
499
523
|
onDrag: this.dragTo
|
|
500
524
|
}, common, {
|
|
501
|
-
onClick:
|
|
502
|
-
return _this3.clickPoint(to, 'to');
|
|
503
|
-
}
|
|
525
|
+
onClick: function onClick(data) {
|
|
526
|
+
return _this3.clickPoint(to, 'to', data);
|
|
527
|
+
}
|
|
504
528
|
})), toLabelNode);
|
|
505
529
|
}
|
|
506
530
|
}]);
|
|
@@ -531,22 +555,27 @@ var styles = {
|
|
|
531
555
|
line: function line() {
|
|
532
556
|
return {
|
|
533
557
|
fill: 'transparent',
|
|
534
|
-
stroke: _renderUi.color.
|
|
558
|
+
stroke: _renderUi.color.defaults.BLACK,
|
|
535
559
|
strokeWidth: 3,
|
|
536
560
|
transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',
|
|
537
561
|
'&:hover': {
|
|
538
562
|
strokeWidth: 6,
|
|
539
|
-
stroke: _renderUi.color.
|
|
563
|
+
stroke: _renderUi.color.defaults.PRIMARY_DARK
|
|
540
564
|
}
|
|
541
565
|
};
|
|
542
566
|
},
|
|
543
567
|
arrow: function arrow() {
|
|
544
568
|
return {
|
|
545
|
-
fill: _renderUi.color.
|
|
569
|
+
fill: _renderUi.color.defaults.BLACK
|
|
546
570
|
};
|
|
547
571
|
},
|
|
548
572
|
disabledArrow: function disabledArrow() {
|
|
549
|
-
return _objectSpread({}, (0, _styles.
|
|
573
|
+
return _objectSpread({}, (0, _styles.disabledSecondary)());
|
|
574
|
+
},
|
|
575
|
+
disabledSecondary: function disabledSecondary() {
|
|
576
|
+
return _objectSpread(_objectSpread({}, (0, _styles.disabledSecondary)('stroke')), {}, {
|
|
577
|
+
strokeWidth: 2
|
|
578
|
+
});
|
|
550
579
|
},
|
|
551
580
|
disabled: function disabled() {
|
|
552
581
|
return _objectSpread(_objectSpread({}, (0, _styles.disabled)('stroke')), {}, {
|
|
@@ -560,8 +589,11 @@ var styles = {
|
|
|
560
589
|
return _objectSpread({}, (0, _styles.incorrect)(key));
|
|
561
590
|
},
|
|
562
591
|
missing: function missing(theme, key) {
|
|
563
|
-
return _objectSpread({}, (0, _styles.missing)(key))
|
|
592
|
+
return _objectSpread(_objectSpread({}, (0, _styles.missing)(key)), {}, {
|
|
593
|
+
strokeWidth: 1,
|
|
594
|
+
strokeDasharray: '4 3'
|
|
595
|
+
});
|
|
564
596
|
}
|
|
565
597
|
};
|
|
566
598
|
exports.styles = styles;
|
|
567
|
-
//# sourceMappingURL=index.js.map
|
|
599
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvbGluZS9pbmRleC5qc3giXSwibmFtZXMiOlsibGluZVRvb2wiLCJ0eXBlIiwiQ29tcG9uZW50IiwiYWRkUG9pbnQiLCJwb2ludCIsIm1hcmsiLCJyb290IiwiYnVpbGRpbmciLCJmcm9tIiwidG8iLCJsaW5lVG9vbENvbXBvbmVudCIsInByb3BzIiwic2V0U3RhdGUiLCJvbkNoYW5nZSIsInVwZGF0ZSIsInN0YXRlIiwidW5kZWZpbmVkIiwic2hvdWxkTm90Q2hhbmdlIiwieSIsIm1pZGRsZSIsImdyYXBoUHJvcHMiLCJvbkNsaWNrIiwibGFiZWxOb2RlIiwibGFiZWxNb2RlRW5hYmxlZCIsImNvb3JkaW5hdGVzT25Ib3ZlciIsImxpbWl0TGFiZWxpbmciLCJpc0JhY2tncm91bmQiLCJkaXNhYmxlZCIsImNvcnJlY3RuZXNzIiwiY2hhbmdlTWFyayIsImNoYW5nZU1hcmtQcm9wcyIsInN0YXJ0RHJhZyIsInN0b3BEcmFnIiwiUmVhY3QiLCJ0eXBlcyIsIlRvb2xQcm9wVHlwZUZpZWxkcyIsIkdyYXBoUHJvcHNUeXBlIiwiaXNSZXF1aXJlZCIsImRyYWdPcHRzIiwiYm91bmRzIiwiZG9tYWluIiwicmFuZ2UiLCJhcmVhIiwidXRpbHMiLCJsaW5lVG9BcmVhIiwiYW5jaG9yUG9pbnQiLCJmcm9tRGVsdGEiLCJkZWx0YSIsImFkZCIsImxpbmVCYXNlIiwiQ29tcCIsIm9wdHMiLCJEcmFnZ2FibGVDb21wIiwiRnJvbVBvaW50IiwiQmFzZVBvaW50IiwiVG9Qb2ludCIsIkxpbmVCYXNlIiwiZHJhZ2dlZEZyb20iLCJkcmFnZ2VkVG8iLCJsYWJlbCIsInVwZGF0ZWQiLCJvbkNoYW5nZVBvaW50IiwiZGF0YSIsImlucHV0IiwiZm9jdXMiLCJvbkRyYWdTdGFydCIsIm9uRHJhZ1N0b3AiLCJjb21tb24iLCJhbmdsZSIsInRyaWciLCJ0b0RlZ3JlZXMiLCJmcm9tTGFiZWxOb2RlIiwidG9MYWJlbE5vZGUiLCJsaW5lTGFiZWxOb2RlIiwiaGFzT3duUHJvcGVydHkiLCJSZWFjdERPTSIsImNyZWF0ZVBvcnRhbCIsInIiLCJsYWJlbENoYW5nZSIsImRyYWdDb21wIiwiY2xpY2tQb2ludCIsIngiLCJkcmFnRnJvbSIsImRyYWdUbyIsIlByb3BUeXBlcyIsImJvb2wiLCJQb2ludFR5cGUiLCJmdW5jIiwic3RyaW5nIiwib2JqZWN0Iiwic3R5bGVzIiwibGluZSIsImZpbGwiLCJzdHJva2UiLCJjb2xvciIsImRlZmF1bHRzIiwiQkxBQ0siLCJzdHJva2VXaWR0aCIsInRyYW5zaXRpb24iLCJQUklNQVJZX0RBUksiLCJhcnJvdyIsImRpc2FibGVkQXJyb3ciLCJkaXNhYmxlZFNlY29uZGFyeSIsImNvcnJlY3QiLCJ0aGVtZSIsImtleSIsImluY29ycmVjdCIsIm1pc3NpbmciLCJzdHJva2VEYXNoYXJyYXkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVPLElBQU1BLFFBQVEsR0FBRyxTQUFYQSxRQUFXLENBQUNDLElBQUQsRUFBT0MsU0FBUDtBQUFBLFNBQXFCO0FBQUEsV0FBTztBQUNsREQsTUFBQUEsSUFBSSxFQUFKQSxJQURrRDtBQUVsREMsTUFBQUEsU0FBUyxFQUFUQSxTQUZrRDtBQUdsREMsTUFBQUEsUUFBUSxFQUFFLGtCQUFDQyxLQUFELEVBQVFDLElBQVIsRUFBaUI7QUFDekIsWUFBSUEsSUFBSSxJQUFJLHdCQUFZQSxJQUFJLENBQUNDLElBQWpCLEVBQXVCRixLQUF2QixDQUFaLEVBQTJDO0FBQ3pDLGlCQUFPQyxJQUFQO0FBQ0Q7O0FBRUQsWUFBSSxDQUFDQSxJQUFMLEVBQVc7QUFDVCxpQkFBTztBQUNMSixZQUFBQSxJQUFJLEVBQUpBLElBREs7QUFFTE0sWUFBQUEsUUFBUSxFQUFFLElBRkw7QUFHTEMsWUFBQUEsSUFBSSxFQUFFSjtB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dUJBQVVBLEdBQVYsQ0FETTtBQUFBLEdBNUJTO0FBK0JwQkUsRUFBQUEsT0FBTyxFQUFFLGlCQUFDSCxLQUFELEVBQVFDLEdBQVI7QUFBQSwyQ0FDSixxQkFBUUEsR0FBUixDQURJO0FBRVBSLE1BQUFBLFdBQVcsRUFBRSxDQUZOO0FBR1BXLE1BQUFBLGVBQWUsRUFBRTtBQUhWO0FBQUE7QUEvQlcsQ0FBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgaXNFcXVhbCBmcm9tICdsb2Rhc2gvaXNFcXVhbCc7XG5pbXBvcnQgY2xvbmVEZWVwIGZyb20gJ2xvZGFzaC9jbG9uZURlZXAnO1xuaW1wb3J0IHsgQmFzZVBvaW50IH0gZnJvbSAnLi4vcG9pbnQnO1xuaW1wb3J0IHsgdHlwZXMsIHV0aWxzLCBncmlkRHJhZ2dhYmxlLCB0cmlnIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgZGlzYWJsZWQsIGRpc2FibGVkU2Vjb25kYXJ5LCBjb3JyZWN0LCBpbmNvcnJlY3QsIG1pc3NpbmcgfSBmcm9tICcuLi9zdHlsZXMnO1xuaW1wb3J0IFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSc7XG5pbXBvcnQgTWFya0xhYmVsIGZyb20gJy4uLy4uLy4uL21hcmstbGFiZWwnO1xuaW1wb3J0IGlzRW1wdHkgZnJvbSAnbG9kYXNoL2lzRW1wdHknO1xuaW1wb3J0IHsgY29sb3IgfSBmcm9tICdAcGllLWxpYi9yZW5kZXItdWknO1xuaW1wb3J0IHsgZ2V0TWlkZGxlT2ZUd29Qb2ludHMsIGVxdWFsUG9pbnRzLCBzYW1lQXhlcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGxpbmVUb29sID0gKHR5cGUsIENvbXBvbmVudCkgPT4gKCkgPT4gKHtcbiAgdHlwZSxcbiAgQ29tcG9uZW50LFxuICBhZGRQb2ludDogKHBvaW50LCBtYXJrKSA9PiB7XG4gICAgaWYgKG1hcmsgJiYgZXF1YWxQb2ludHMobWFyay5yb290LCBwb2ludCkpIHtcbiAgICAgIHJldHVybiBtYXJrO1xuICAgIH1cblxuICAgIGlmICghbWFyaykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZSxcbiAgICAgICAgYnVpbGRpbmc6IHRydWUsXG4gICAgICAgIGZyb206IHBvaW50LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoZXF1YWxQb2ludHMocG9pbnQsIG1hcmsuZnJvbSkpIHtcbiAgICAgIHJldHVybiB7IC4uLm1hcmsgfTtcbiAgICB9XG5cbiAgICByZXR1cm4geyAuLi5tYXJrLCBidWlsZGluZzogZmFsc2UsIHRvOiBwb2ludCB9O1xuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBsaW5lVG9vbENvbXBvbmVudCA9IChDb21wb25lbnQpID0+IHtcbiAgcmV0dXJuIGNsYXNzIExpbmVUb29sQ29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgLi4udHlwZXMuVG9vbFByb3BUeXBlRmllbGRzLFxuICAgICAgZ3JhcGhQcm9wczogdHlwZXMuR3JhcGhQcm9wc1R5cGUuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuc3RhdGUgPSB7fTtcbiAgICB9XG5cbiAgICBzdGFydERyYWcgPSAoKSA9PiB0aGlzLnNldFN0YXRlKHsgbWFyazogeyAuLi50aGlzLnByb3BzLm1hcmsgfSB9KTtcblxuICAgIHN0b3BEcmFnID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBvbkNoYW5nZSwgbWFyayB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHVwZGF0ZSA9IHsgLi4udGhpcy5zdGF0ZS5tYXJrIH07XG5cbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBtYXJrOiB1bmRlZmluZWQgfSwgKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHR5cGUgfSA9IHVwZGF0ZTtcbiAgICAgICAgbGV0IHNob3VsZE5vdENoYW5nZSA9XG4gICAgICAgICAgdHlwZSAmJlxuICAgICAgICAgICh0eXBlID09PSAncGFyYWJvbGEnIHx8IHR5cGUgPT09ICdzaW5lJyB8fCB0eXBlID09PSAnYWJzb2x1dGUnIHx8IHR5cGUgPT09ICdleHBvbmVudGlhbCcpICYmXG4gICAgICAgICAgc2FtZUF4ZXModXBkYXRlLmZyb20sIHVwZGF0ZS50byk7XG4gICAgICAgIGlmICghc2hvdWxkTm90Q2hhbmdlICYmIHR5cGUgJiYgdHlwZSA9PT0gJ2V4cG9uZW50aWFsJyAmJiB1cGRhdGUuZnJvbSAmJiB1cGRhdGUudG8pIHtcbiAgICAgICAgICBzaG91bGROb3RDaGFuZ2UgPSB1cGRhdGUuZnJvbS55ID09PSAwIHx8IHVwZGF0ZS50by55ID09PSAwIHx8IHVwZGF0ZS5mcm9tLnkgKiB1cGRhdGUudG8ueSA8IDA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc0VxdWFsKG1hcmssIHVwZGF0ZSkgJiYgIXNob3VsZE5vdENoYW5nZSkge1xuICAgICAgICAgIG9uQ2hhbmdlKG1hcmssIHVwZGF0ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBjaGFuZ2VNYXJrID0gKHsgZnJvbSwgdG8sIG1pZGRsZSB9KSA9PiB7XG4gICAgICBsZXQgbWFyayA9IHsgLi4udGhpcy5zdGF0ZS5tYXJrLCBmcm9tLCB0byB9O1xuXG4gICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgIG1hcmsgPSB7IC4uLm1hcmssIG1pZGRsZSB9O1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldFN0YXRlKHsgbWFyayB9KTtcbiAgICB9O1xuXG4gICAgY2hhbmdlTWFya1Byb3BzID0gKHsgZnJvbSwgdG8sIG1pZGRsZSB9KSA9PiB7XG4gICAgICBjb25zdCB7IG9uQ2hhbmdlLCBtYXJrIH0gPSB0aGlzLnByb3BzO1xuICAgICAgbGV0IHVwZGF0ZSA9IHsgLi4ubWFyaywgLi4udGhpcy5zdGF0ZS5tYXJrIH07XG5cbiAgICAgIGlmIChmcm9tKSB7XG4gICAgICAgIHVwZGF0ZSA9IHsgLi4udXBkYXRlLCBmcm9tIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh0bykge1xuICAgICAgICB1cGRhdGUgPSB7IC4uLnVwZGF0ZSwgdG8gfTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1pZGRsZSkge1xuICAgICAgICB1cGRhdGUgPSB7IC4uLnVwZGF0ZSwgbWlkZGxlIH07XG4gICAgICB9XG5cbiAgICAgIGlmICghaXNFcXVhbChtYXJrLCB1cGRhdGUpKSB7XG4gICAgICAgIG9uQ2hhbmdlKG1hcmssIHVwZGF0ZSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgZ3JhcGhQcm9wcywgb25DbGljaywgbGFiZWxOb2RlLCBsYWJlbE1vZGVFbmFibGVkLCBjb29yZGluYXRlc09uSG92ZXIsIGxpbWl0TGFiZWxpbmcgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtYXJrID0gdGhpcy5zdGF0ZS5tYXJrID8gdGhpcy5zdGF0ZS5tYXJrIDogdGhpcy5wcm9wcy5tYXJrO1xuXG4gICAgICBjb25zdCBmcm9tID0gY2xvbmVEZWVwKG1hcmsuZnJvbSk7XG4gICAgICBjb25zdCB0byA9IGNsb25lRGVlcChtYXJrLnRvKTtcbiAgICAgIGNvbnN0IG1pZGRsZSA9IGNsb25lRGVlcChtYXJrLm1pZGRsZSk7XG5cbiAgICAgIC8vIFNFVCBESVNBQkxFRFxuICAgICAgLy8gaWYgaXQncyBhIGJhY2tncm91bmQgbWFyaywgd2UgbmVlZCB0byBmb3JjZSBkaXNhYmxlIGl0XG4gICAgICBpZiAoZnJvbSAmJiBtYXJrLmlzQmFja2dyb3VuZCkge1xuICAgICAgICBmcm9tLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRvICYmIG1hcmsuaXNCYWNrZ3JvdW5kKSB7XG4gICAgICAgIHRvLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1pZGRsZSAmJiBtYXJrLmlzQmFja2dyb3VuZCkge1xuICAgICAgICBtaWRkbGUuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Q29tcG9uZW50XG4gICAgICAgICAgZGlzYWJsZWQ9e21hcmsuZGlzYWJsZWR9XG4gICAgICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyPXtjb29yZGluYXRlc09uSG92ZXJ9XG4gICAgICAgICAgY29ycmVjdG5lc3M9e21hcmsuY29ycmVjdG5lc3N9XG4gICAgICAgICAgZnJvbT17ZnJvbX1cbiAgICAgICAgICB0bz17dG99XG4gICAgICAgICAgbWlkZGxlPXttaWRkbGV9XG4gICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICBvbkNoYW5nZT17dGhpcy5jaGFuZ2VNYXJrfVxuICAgICAgICAgIGNoYW5nZU1hcmtQcm9wcz17dGhpcy5jaGFuZ2VNYXJrUHJvcHN9XG4gICAgICAgICAgb25DbGljaz17b25DbGlja31cbiAgICAgICAgICBvbkRyYWdTdGFydD17dGhpcy5zdGFydERyYWd9XG4gICAgICAgICAgb25EcmFnU3RvcD17dGhpcy5zdG9wRHJhZ31cbiAgICAgICAgICBsYWJlbE5vZGU9e2xhYmVsTm9kZX1cbiAgICAgICAgICBsYWJlbE1vZGVFbmFibGVkPXtsYWJlbE1vZGVFbmFibGVkfVxuICAgICAgICAgIGxpbWl0TGFiZWxpbmc9e2xpbWl0TGFiZWxpbmd9XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn07XG5cbmNvbnN0IGRyYWdPcHRzID0gKCkgPT4gKHtcbiAgYm91bmRzOiAocHJvcHMsIHsgZG9tYWluLCByYW5nZSB9KSA9PiB7XG4gICAgY29uc3QgYXJlYSA9IHV0aWxzLmxpbmVUb0FyZWEocHJvcHMuZnJvbSwgcHJvcHMudG8pO1xuICAgIHJldHVybiB1dGlscy5ib3VuZHMoYXJlYSwgZG9tYWluLCByYW5nZSk7XG4gIH0sXG4gIGFuY2hvclBvaW50OiAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7IGZyb20gfSA9IHByb3BzO1xuICAgIHJldHVybiBmcm9tO1xuICB9LFxuICBmcm9tRGVsdGE6IChwcm9wcywgZGVsdGEpID0+IHtcbiAgICBjb25zdCB7IGZyb20sIHRvIH0gPSBwcm9wcztcbiAgICByZXR1cm4ge1xuICAgICAgZnJvbTogdXRpbHMucG9pbnQoZnJvbSkuYWRkKHV0aWxzLnBvaW50KGRlbHRhKSksXG4gICAgICB0bzogdXRpbHMucG9pbnQodG8pLmFkZCh1dGlscy5wb2ludChkZWx0YSkpLFxuICAgIH07XG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IGxpbmVCYXNlID0gKENvbXAsIG9wdHMpID0+IHtcbiAgY29uc3QgRHJhZ2dhYmxlQ29tcCA9IGdyaWREcmFnZ2FibGUoZHJhZ09wdHMoKSkoQ29tcCk7XG5cbiAgY29uc3QgRnJvbVBvaW50ID0gb3B0cyAmJiBvcHRzLmZyb20gPyBvcHRzLmZyb20gOiBCYXNlUG9pbnQ7XG4gIGNvbnN0IFRvUG9pbnQgPSBvcHRzICYmIG9wdHMudG8gPyBvcHRzLnRvIDogQmFzZVBvaW50O1xuXG4gIGNsYXNzIExpbmVCYXNlIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGdyYXBoUHJvcHM6IHR5cGVzLkdyYXBoUHJvcHNUeXBlLFxuICAgICAgZnJvbTogdHlwZXMuUG9pbnRUeXBlLFxuICAgICAgdG86IHR5cGVzLlBvaW50VHlwZSxcbiAgICAgIG1pZGRsZTogdHlwZXMuUG9pbnRUeXBlLFxuICAgICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICAgICAgb25EcmFnU3RhcnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgICAgb25EcmFnU3RvcDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbiAgICAgIGNvcnJlY3RuZXNzOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgICAgbGFiZWxOb2RlOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgICAgbGFiZWxNb2RlRW5hYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBjaGFuZ2VNYXJrUHJvcHM6IFByb3BUeXBlcy5mdW5jLFxuICAgIH07XG5cbiAgICBvbkNoYW5nZVBvaW50ID0gKHBvaW50KSA9PiB7XG4gICAgICBjb25zdCB7IG1pZGRsZSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7IGZyb20sIHRvIH0gPSBwb2ludDtcblxuICAgICAgLy8gYmVjYXVzZSBwb2ludC5mcm9tLmxhYmVsIGFuZCBwb2ludC50by5sYWJlbCBjYW4gYmUgZGlmZmVyZW50XG4gICAgICBpZiAoIWVxdWFsUG9pbnRzKGZyb20sIHRvKSkge1xuICAgICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgICAgcG9pbnQubWlkZGxlID0geyAuLi5taWRkbGUsIC4uLmdldE1pZGRsZU9mVHdvUG9pbnRzKGZyb20sIHRvKSB9O1xuICAgICAgICB9XG5cbiAgICAgICAgb25DaGFuZ2UocG9pbnQpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBkcmFnQ29tcCA9ICh7IGZyb206IGRyYWdnZWRGcm9tLCB0bzogZHJhZ2dlZFRvIH0pID0+IHtcbiAgICAgIGNvbnN0IHsgZnJvbSwgdG8sIG9uQ2hhbmdlLCBtaWRkbGUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChmcm9tLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRGcm9tLmxhYmVsID0gZnJvbS5sYWJlbDtcbiAgICAgIH1cblxuICAgICAgaWYgKHRvLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRUby5sYWJlbCA9IHRvLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB1cGRhdGVkID0geyBmcm9tOiBkcmFnZ2VkRnJvbSwgdG86IGRyYWdnZWRUbyB9O1xuXG4gICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgIHVwZGF0ZWQubWlkZGxlID0geyAuLi5taWRkbGUsIC4uLmdldE1pZGRsZU9mVHdvUG9pbnRzKGRyYWdnZWRGcm9tLCBkcmFnZ2VkVG8pIH07XG4gICAgICB9XG5cbiAgICAgIG9uQ2hhbmdlKHVwZGF0ZWQpO1xuICAgIH07XG5cbiAgICBkcmFnRnJvbSA9IChkcmFnZ2VkRnJvbSkgPT4ge1xuICAgICAgY29uc3QgeyBmcm9tLCB0byB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZyb20ubGFiZWwpIHtcbiAgICAgICAgZHJhZ2dlZEZyb20ubGFiZWwgPSBmcm9tLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWVxdWFsUG9pbnRzKGRyYWdnZWRGcm9tLCB0bykpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVBvaW50KHsgZnJvbTogZHJhZ2dlZEZyb20sIHRvOiB0byB9KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZHJhZ1RvID0gKGRyYWdnZWRUbykgPT4ge1xuICAgICAgY29uc3QgeyBmcm9tLCB0byB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKHRvLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRUby5sYWJlbCA9IHRvLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWVxdWFsUG9pbnRzKGZyb20sIGRyYWdnZWRUbykpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVBvaW50KHsgZnJvbTogZnJvbSwgdG86IGRyYWdnZWRUbyB9KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgbGFiZWxDaGFuZ2UgPSAocG9pbnQsIHR5cGUpID0+IHtcbiAgICAgIGNvbnN0IHsgY2hhbmdlTWFya1Byb3BzIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgdXBkYXRlID0geyAuLi5wb2ludCB9O1xuXG4gICAgICBpZiAoIXBvaW50LmxhYmVsIHx8IGlzRW1wdHkocG9pbnQubGFiZWwpKSB7XG4gICAgICAgIGRlbGV0ZSB1cGRhdGUubGFiZWw7XG4gICAgICB9XG5cbiAgICAgIGNoYW5nZU1hcmtQcm9wcyh7IFt0eXBlXTogdXBkYXRlIH0pO1xuICAgIH07XG5cbiAgICBjbGlja1BvaW50ID0gKHBvaW50LCB0eXBlLCBkYXRhKSA9PiB7XG4gICAgICBjb25zdCB7IGNoYW5nZU1hcmtQcm9wcywgZGlzYWJsZWQsIGZyb20sIHRvLCBsYWJlbE1vZGVFbmFibGVkLCBsaW1pdExhYmVsaW5nLCBvbkNsaWNrIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoIWxhYmVsTW9kZUVuYWJsZWQpIHtcbiAgICAgICAgb25DbGljayhwb2ludCB8fCBkYXRhKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBsaW1pdCBsYWJlbGluZyB0aGUgcG9pbnRzIG9mIHRoZSBsaW5lXG4gICAgICBpZiAobGltaXRMYWJlbGluZykge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlID09PSAnbWlkZGxlJyAmJiAhcG9pbnQgJiYgZnJvbSAmJiB0bykge1xuICAgICAgICBwb2ludCA9IHsgLi4ucG9pbnQsIC4uLmdldE1pZGRsZU9mVHdvUG9pbnRzKGZyb20sIHRvKSB9O1xuICAgICAgfVxuXG4gICAgICBjaGFuZ2VNYXJrUHJvcHMoeyBmcm9tLCB0bywgW3R5cGVdOiB7IGxhYmVsOiAnJywgLi4ucG9pbnQgfSB9KTtcblxuICAgICAgaWYgKHRoaXMuaW5wdXRbdHlwZV0pIHtcbiAgICAgICAgdGhpcy5pbnB1dFt0eXBlXS5mb2N1cygpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBJTVBPUlRBTlQsIGRvIG5vdCByZW1vdmVcbiAgICBpbnB1dCA9IHt9O1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3Qge1xuICAgICAgICBjb29yZGluYXRlc09uSG92ZXIsXG4gICAgICAgIGdyYXBoUHJvcHMsXG4gICAgICAgIG9uRHJhZ1N0YXJ0LFxuICAgICAgICBvbkRyYWdTdG9wLFxuICAgICAgICBmcm9tLFxuICAgICAgICB0byxcbiAgICAgICAgbWlkZGxlLFxuICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgY29ycmVjdG5lc3MsXG4gICAgICAgIG9uQ2xpY2ssXG4gICAgICAgIGxhYmVsTm9kZSxcbiAgICAgICAgbGFiZWxNb2RlRW5hYmxlZCxcbiAgICAgIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgY29tbW9uID0geyBncmFwaFByb3BzLCBvbkRyYWdTdGFydCwgb25EcmFnU3RvcCwgZGlzYWJsZWQsIGNvcnJlY3RuZXNzLCBvbkNsaWNrIH07XG4gICAgICBjb25zdCBhbmdsZSA9IHRvID8gdHJpZy50b0RlZ3JlZXModHJpZy5hbmdsZShmcm9tLCB0bykpIDogMDtcblxuICAgICAgbGV0IGZyb21MYWJlbE5vZGUgPSBudWxsO1xuICAgICAgbGV0IHRvTGFiZWxOb2RlID0gbnVsbDtcbiAgICAgIGxldCBsaW5lTGFiZWxOb2RlID0gbnVsbDtcblxuICAgICAgaWYgKGxhYmVsTm9kZSkge1xuICAgICAgICBpZiAoZnJvbSAmJiBmcm9tLmhhc093blByb3BlcnR5KCdsYWJlbCcpKSB7XG4gICAgICAgICAgZnJvbUxhYmVsTm9kZSA9IFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgICAgICAgIDxNYXJrTGFiZWxcbiAgICAgICAgICAgICAgaW5wdXRSZWY9eyhyKSA9PiAodGhpcy5pbnB1dC5mcm9tID0gcil9XG4gICAgICAgICAgICAgIGRpc2FibGVkPXshbGFiZWxNb2RlRW5hYmxlZH1cbiAgICAgICAgICAgICAgbWFyaz17ZnJvbX1cbiAgICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhsYWJlbCkgPT4gdGhpcy5sYWJlbENoYW5nZSh7IC4uLmZyb20sIGxhYmVsIH0sICdmcm9tJyl9XG4gICAgICAgICAgICAvPixcbiAgICAgICAgICAgIGxhYmVsTm9kZSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRvICYmIHRvLmhhc093blByb3BlcnR5KCdsYWJlbCcpKSB7XG4gICAgICAgICAgdG9MYWJlbE5vZGUgPSBSZWFjdERPTS5jcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICA8TWFya0xhYmVsXG4gICAgICAgICAgICAgIGlucHV0UmVmPXsocikgPT4gKHRoaXMuaW5wdXQudG8gPSByKX1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFsYWJlbE1vZGVFbmFibGVkfVxuICAgICAgICAgICAgICBtYXJrPXt0b31cbiAgICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhsYWJlbCkgPT4gdGhpcy5sYWJlbENoYW5nZSh7IC4uLnRvLCBsYWJlbCB9LCAndG8nKX1cbiAgICAgICAgICAgIC8+LFxuICAgICAgICAgICAgbGFiZWxOb2RlLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWlkZGxlICYmIG1pZGRsZS5oYXNPd25Qcm9wZXJ0eSgnbGFiZWwnKSkge1xuICAgICAgICAgIGxpbmVMYWJlbE5vZGUgPSBSZWFjdERPTS5jcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICA8TWFya0xhYmVsXG4gICAgICAgICAgICAgIGlucHV0UmVmPXsocikgPT4gKHRoaXMuaW5wdXQubWlkZGxlID0gcil9XG4gICAgICAgICAgICAgIGRpc2FibGVkPXshbGFiZWxNb2RlRW5hYmxlZH1cbiAgICAgICAgICAgICAgbWFyaz17bWlkZGxlfVxuICAgICAgICAgICAgICBncmFwaFByb3BzPXtncmFwaFByb3BzfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KGxhYmVsKSA9PiB0aGlzLmxhYmVsQ2hhbmdlKHsgLi4ubWlkZGxlLCBsYWJlbCB9LCAnbWlkZGxlJyl9XG4gICAgICAgICAgICAvPixcbiAgICAgICAgICAgIGxhYmVsTm9kZSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxnPlxuICAgICAgICAgIHt0byAmJiAoXG4gICAgICAgICAgICA8RHJhZ2dhYmxlQ29tcFxuICAgICAgICAgICAgICBmcm9tPXtmcm9tfVxuICAgICAgICAgICAgICB0bz17dG99XG4gICAgICAgICAgICAgIG1pZGRsZT17bWlkZGxlfVxuICAgICAgICAgICAgICBvbkRyYWc9e3RoaXMuZHJhZ0NvbXB9XG4gICAgICAgICAgICAgIHsuLi5jb21tb259XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eyhkYXRhKSA9PiB0aGlzLmNsaWNrUG9pbnQobWlkZGxlLCAnbWlkZGxlJywgZGF0YSl9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAge2xpbmVMYWJlbE5vZGV9XG5cbiAgICAgICAgICA8RnJvbVBvaW50XG4gICAgICAgICAgICB4PXtmcm9tLnh9XG4gICAgICAgICAgICB5PXtmcm9tLnl9XG4gICAgICAgICAgICBsYWJlbE5vZGU9e2xhYmVsTm9kZX1cbiAgICAgICAgICAgIGNvb3JkaW5hdGVzT25Ib3Zlcj17Y29vcmRpbmF0ZXNPbkhvdmVyfVxuICAgICAgICAgICAgb25EcmFnPXt0aGlzLmRyYWdGcm9tfVxuICAgICAgICAgICAgey4uLmNvbW1vbn1cbiAgICAgICAgICAgIG9uQ2xpY2s9eyhkYXRhKSA9PiB0aGlzLmNsaWNrUG9pbnQoZnJvbSwgJ2Zyb20nLCBkYXRhKX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtmcm9tTGFiZWxOb2RlfVxuXG4gICAgICAgICAge3RvICYmIChcbiAgICAgICAgICAgIDxUb1BvaW50XG4gICAgICAgICAgICAgIHg9e3RvLnh9XG4gICAgICAgICAgICAgIHk9e3RvLnl9XG4gICAgICAgICAgICAgIGFuZ2xlPXthbmdsZX0gLy9hbmdsZSArIDQ1fVxuICAgICAgICAgICAgICBsYWJlbE5vZGU9e2xhYmVsTm9kZX1cbiAgICAgICAgICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyPXtjb29yZGluYXRlc09uSG92ZXJ9XG4gICAgICAgICAgICAgIG9uRHJhZz17dGhpcy5kcmFnVG99XG4gICAgICAgICAgICAgIHsuLi5jb21tb259XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eyhkYXRhKSA9PiB0aGlzLmNsaWNrUG9pbnQodG8sICd0bycsIGRhdGEpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHt0b0xhYmVsTm9kZX1cbiAgICAgICAgPC9nPlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gTGluZUJhc2U7XG59O1xuXG5leHBvcnQgY29uc3Qgc3R5bGVzID0ge1xuICBsaW5lOiAoKSA9PiAoe1xuICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXG4gICAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5CTEFDSyxcbiAgICBzdHJva2VXaWR0aDogMyxcbiAgICB0cmFuc2l0aW9uOiAnc3Ryb2tlIDIwMG1zIGVhc2UtaW4sIHN0cm9rZS13aWR0aCAyMDBtcyBlYXNlLWluJyxcbiAgICAnJjpob3Zlcic6IHtcbiAgICAgIHN0cm9rZVdpZHRoOiA2LFxuICAgICAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5QUklNQVJZX0RBUkssXG4gICAgfSxcbiAgfSksXG4gIGFycm93OiAoKSA9PiAoe1xuICAgIGZpbGw6IGNvbG9yLmRlZmF1bHRzLkJMQUNLLFxuICB9KSxcbiAgZGlzYWJsZWRBcnJvdzogKCkgPT4gKHtcbiAgICAuLi5kaXNhYmxlZFNlY29uZGFyeSgpLFxuICB9KSxcbiAgZGlzYWJsZWRTZWNvbmRhcnk6ICgpID0+ICh7XG4gICAgLi4uZGlzYWJsZWRTZWNvbmRhcnkoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAyLFxuICB9KSxcbiAgZGlzYWJsZWQ6ICgpID0+ICh7XG4gICAgLi4uZGlzYWJsZWQoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAyLFxuICB9KSxcbiAgY29ycmVjdDogKHRoZW1lLCBrZXkpID0+ICh7XG4gICAgLi4uY29ycmVjdChrZXkpLFxuICB9KSxcbiAgaW5jb3JyZWN0OiAodGhlbWUsIGtleSkgPT4gKHtcbiAgICAuLi5pbmNvcnJlY3Qoa2V5KSxcbiAgfSksXG4gIG1pc3Npbmc6ICh0aGVtZSwga2V5KSA9PiAoe1xuICAgIC4uLm1pc3Npbmcoa2V5KSxcbiAgICBzdHJva2VXaWR0aDogMSxcbiAgICBzdHJva2VEYXNoYXJyYXk6ICc0IDMnLFxuICB9KSxcbn07XG4iXX0=
|
|
@@ -84,10 +84,10 @@ var RawLinePath = /*#__PURE__*/function (_React$Component) {
|
|
|
84
84
|
|
|
85
85
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(vx.LinePath, (0, _extends2["default"])({
|
|
86
86
|
data: data,
|
|
87
|
-
className: (0, _classnames["default"])(classes.drawLine, disabled && classes.
|
|
87
|
+
className: (0, _classnames["default"])(classes.drawLine, disabled && classes.disabledSecondary, classes[correctness], className)
|
|
88
88
|
}, rest)), /*#__PURE__*/_react["default"].createElement(vx.LinePath, (0, _extends2["default"])({
|
|
89
89
|
data: data,
|
|
90
|
-
className: (0, _classnames["default"])(classes.line, isDragging && classes.dragging, disabled && classes.
|
|
90
|
+
className: (0, _classnames["default"])(classes.line, isDragging && classes.dragging, disabled && classes.disabledSecondary, classes[correctness], className)
|
|
91
91
|
}, rest)));
|
|
92
92
|
}
|
|
93
93
|
}]);
|
|
@@ -113,8 +113,8 @@ exports.RawLinePath = RawLinePath;
|
|
|
113
113
|
|
|
114
114
|
var dragging = function dragging() {
|
|
115
115
|
return {
|
|
116
|
-
strokeWidth:
|
|
117
|
-
stroke: _renderUi.color.
|
|
116
|
+
strokeWidth: 4,
|
|
117
|
+
stroke: _renderUi.color.defaults.BLACK
|
|
118
118
|
};
|
|
119
119
|
};
|
|
120
120
|
|
|
@@ -123,10 +123,10 @@ var LinePath = (0, _styles.withStyles)(function (theme) {
|
|
|
123
123
|
drawLine: {
|
|
124
124
|
fill: 'none',
|
|
125
125
|
strokeWidth: 2,
|
|
126
|
-
stroke: _renderUi.color.
|
|
126
|
+
stroke: _renderUi.color.black()
|
|
127
127
|
},
|
|
128
128
|
line: {
|
|
129
|
-
strokeWidth:
|
|
129
|
+
strokeWidth: 3,
|
|
130
130
|
fill: 'none',
|
|
131
131
|
transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',
|
|
132
132
|
stroke: 'transparent',
|
|
@@ -136,10 +136,16 @@ var LinePath = (0, _styles.withStyles)(function (theme) {
|
|
|
136
136
|
disabled: _objectSpread(_objectSpread({}, (0, _styles2.disabled)('stroke')), {}, {
|
|
137
137
|
strokeWidth: 2
|
|
138
138
|
}),
|
|
139
|
+
disabledSecondary: _objectSpread(_objectSpread({}, (0, _styles2.disabledSecondary)('stroke')), {}, {
|
|
140
|
+
strokeWidth: 2
|
|
141
|
+
}),
|
|
139
142
|
correct: _objectSpread({}, (0, _styles2.correct)('stroke')),
|
|
140
143
|
incorrect: _objectSpread({}, (0, _styles2.incorrect)('stroke')),
|
|
141
|
-
missing: _objectSpread({}, (0, _styles2.missing)('stroke'))
|
|
144
|
+
missing: _objectSpread(_objectSpread({}, (0, _styles2.missing)('stroke')), {}, {
|
|
145
|
+
strokeWidth: 1,
|
|
146
|
+
strokeDasharray: '4 3'
|
|
147
|
+
})
|
|
142
148
|
};
|
|
143
149
|
})(RawLinePath);
|
|
144
150
|
exports.LinePath = LinePath;
|
|
145
|
-
//# sourceMappingURL=
|
|
151
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvbGluZS9saW5lLXBhdGguanN4Il0sIm5hbWVzIjpbIlJhd0xpbmVQYXRoIiwicHJvcHMiLCJkYXRhIiwiY2xhc3NlcyIsImNsYXNzTmFtZSIsImRpc2FibGVkIiwiY29ycmVjdG5lc3MiLCJmcm9tIiwidG8iLCJncmFwaFByb3BzIiwiaXNEcmFnZ2luZyIsInJlc3QiLCJkcmF3TGluZSIsImRpc2FibGVkU2Vjb25kYXJ5IiwibGluZSIsImRyYWdnaW5nIiwiUmVhY3QiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJzdHJpbmciLCJvYmplY3QiLCJhcnJheU9mIiwibnVtYmVyIiwidHlwZXMiLCJHcmFwaFByb3BzVHlwZSIsImlzUmVxdWlyZWQiLCJib29sIiwiUG9pbnRUeXBlIiwic3Ryb2tlV2lkdGgiLCJzdHJva2UiLCJjb2xvciIsImRlZmF1bHRzIiwiQkxBQ0siLCJMaW5lUGF0aCIsInRoZW1lIiwiZmlsbCIsImJsYWNrIiwidHJhbnNpdGlvbiIsImNvcnJlY3QiLCJpbmNvcnJlY3QiLCJtaXNzaW5nIiwic3Ryb2tlRGFzaGFycmF5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztJQUVhQSxXOzs7Ozs7Ozs7Ozs7V0FrQlgsa0JBQVM7QUFDUDtBQUNBLHdCQUF1RyxLQUFLQyxLQUE1RztBQUFBLFVBQVFDLElBQVIsZUFBUUEsSUFBUjtBQUFBLFVBQWNDLE9BQWQsZUFBY0EsT0FBZDtBQUFBLFVBQXVCQyxTQUF2QixlQUF1QkEsU0FBdkI7QUFBQSxVQUFrQ0MsUUFBbEMsZUFBa0NBLFFBQWxDO0FBQUEsVUFBNENDLFdBQTVDLGVBQTRDQSxXQUE1QztBQUFBLFVBQXlEQyxJQUF6RCxlQUF5REEsSUFBekQ7QUFBQSxVQUErREMsRUFBL0QsZUFBK0RBLEVBQS9EO0FBQUEsVUFBbUVDLFVBQW5FLGVBQW1FQSxVQUFuRTtBQUFBLFVBQStFQyxVQUEvRSxlQUErRUEsVUFBL0U7QUFBQSxVQUE4RkMsSUFBOUY7QUFDQTs7QUFFQSwwQkFDRSxnQ0FBQyxpQkFBRCxDQUFPLFFBQVAscUJBQ0UsZ0NBQUMsRUFBRCxDQUFJLFFBQUo7QUFDRSxRQUFBLElBQUksRUFBRVQsSUFEUjtBQUVFLFFBQUEsU0FBUyxFQUFFLDRCQUNUQyxPQUFPLENBQUNTLFFBREMsRUFFVFAsUUFBUSxJQUFJRixPQUFPLENBQUNVLGlCQUZYLEVBR1RWLE9BQU8sQ0FBQ0csV0FBRCxDQUhFLEVBSVRGLFNBSlM7QUFGYixTQVFNTyxJQVJOLEVBREYsZUFXRSxnQ0FBQyxFQUFELENBQUksUUFBSjtBQUNFLFFBQUEsSUFBSSxFQUFFVCxJQURSO0FBRUUsUUFBQSxTQUFTLEVBQUUsNEJBQ1RDLE9BQU8sQ0FBQ1csSUFEQyxFQUVUSixVQUFVLElBQUlQLE9BQU8sQ0FBQ1ksUUFGYixFQUdUVixRQUFRLElBQUlGLE9BQU8sQ0FBQ1UsaUJBSFgsRUFJVFYsT0FBTyxDQUFDRyxXQUFELENBSkUsRUFLVEYsU0FMUztBQUZiLFNBU01PLElBVE4sRUFYRixDQURGO0FBeUJEOzs7RUFoRDhCSyxrQkFBTUMsUzs7O2lDQUExQmpCLFcsZUFDUTtBQUNqQkksRUFBQUEsU0FBUyxFQUFFYyxzQkFBVUMsTUFESjtBQUVqQmhCLEVBQUFBLE9BQU8sRUFBRWUsc0JBQVVFLE1BRkY7QUFHakJsQixFQUFBQSxJQUFJLEVBQUVnQixzQkFBVUcsT0FBVixDQUFrQkgsc0JBQVVHLE9BQVYsQ0FBa0JILHNCQUFVSSxNQUE1QixDQUFsQixDQUhXO0FBSWpCYixFQUFBQSxVQUFVLEVBQUVjLFlBQU1DLGNBQU4sQ0FBcUJDLFVBSmhCO0FBS2pCcEIsRUFBQUEsUUFBUSxFQUFFYSxzQkFBVVEsSUFMSDtBQU1qQnBCLEVBQUFBLFdBQVcsRUFBRVksc0JBQVVDLE1BTk47QUFPakJaLEVBQUFBLElBQUksRUFBRWdCLFlBQU1JLFNBUEs7QUFRakJuQixFQUFBQSxFQUFFLEVBQUVlLFlBQU1JLFNBUk87QUFTakJqQixFQUFBQSxVQUFVLEVBQUVRLHNCQUFVUTtBQVRMLEM7aUNBRFIxQixXLGtCQWFXO0FBQ3BCTyxFQUFBQSxJQUFJLEVBQUUsRUFEYztBQUVwQkMsRUFBQUEsRUFBRSxFQUFFO0FBRmdCLEM7O0FBc0N4QixJQUFNTyxRQUFRLEdBQUcsU0FBWEEsUUFBVztBQUFBLFNBQU87QUFDdEJhLElBQUFBLFdBQVcsRUFBRSxDQURTO0FBRXRCQyxJQUFBQSxNQUFNLEVBQUVDLGdCQUFNQyxRQUFOLENBQWVDO0FBRkQsR0FBUDtBQUFBLENBQWpCOztBQUtPLElBQU1DLFFBQVEsR0FBRyx3QkFBVyxVQUFDQyxLQUFEO0FBQUEsU0FBWTtBQUM3Q3RCLElBQUFBLFFBQVEsRUFBRTtBQUNSdUIsTUFBQUEsSUFBSSxFQUFFLE1BREU7QUFFUlAsTUFBQUEsV0FBVyxFQUFFLENBRkw7QUFHUkMsTUFBQUEsTUFBTSxFQUFFQyxnQkFBTU0sS0FBTjtBQUhBLEtBRG1DO0FBTTdDdEIsSUFBQUEsSUFBSSxFQUFFO0FBQ0pjLE1BQUFBLFdBQVcsRUFBRSxDQURUO0FBRUpPLE1BQUFBLElBQUksRUFBRSxNQUZGO0FBR0pFLE1BQUFBLFVBQVUsRUFBRSxrREFIUjtBQUlKUixNQUFBQSxNQUFNLEVBQUUsYUFKSjtBQUtKLGlCQUFXZCxRQUFRLENBQUNtQixLQUFEO0FBTGYsS0FOdUM7QUFhN0NuQixJQUFBQSxRQUFRLEVBQUVBLFFBQVEsQ0FBQ21CLEtBQUQsQ0FiMkI7QUFjN0M3QixJQUFBQSxRQUFRLGtDQUNILHVCQUFTLFFBQVQsQ0FERztBQUVOdUIsTUFBQUEsV0FBVyxFQUFFO0FBRlAsTUFkcUM7QUFrQjdDZixJQUFBQSxpQkFBaUIsa0NBQ1osZ0NBQWtCLFFBQWxCLENBRFk7QUFFZmUsTUFBQUEsV0FBVyxFQUFFO0FBRkUsTUFsQjRCO0FBc0I3Q1UsSUFBQUEsT0FBTyxvQkFDRixzQkFBUSxRQUFSLENBREUsQ0F0QnNDO0FBeUI3Q0MsSUFBQUEsU0FBUyxvQkFDSix3QkFBVSxRQUFWLENBREksQ0F6Qm9DO0FBNEI3Q0MsSUFBQUEsT0FBTyxrQ0FDRixzQkFBUSxRQUFSLENBREU7QUFFTFosTUFBQUEsV0FBVyxFQUFFLENBRlI7QUFHTGEsTUFBQUEsZUFBZSxFQUFFO0FBSFo7QUE1QnNDLEdBQVo7QUFBQSxDQUFYLEVBaUNwQnpDLFdBakNvQixDQUFqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgeyB0eXBlcyB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBkaXNhYmxlZCwgY29ycmVjdCwgaW5jb3JyZWN0LCBtaXNzaW5nLCBkaXNhYmxlZFNlY29uZGFyeSB9IGZyb20gJy4uL3N0eWxlcyc7XG5pbXBvcnQgKiBhcyB2eCBmcm9tICdAdngvc2hhcGUnO1xuaW1wb3J0IHsgY29sb3IgfSBmcm9tICdAcGllLWxpYi9yZW5kZXItdWknO1xuXG5leHBvcnQgY2xhc3MgUmF3TGluZVBhdGggZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGRhdGE6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5udW1iZXIpKSxcbiAgICBncmFwaFByb3BzOiB0eXBlcy5HcmFwaFByb3BzVHlwZS5pc1JlcXVpcmVkLFxuICAgIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBjb3JyZWN0bmVzczogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBmcm9tOiB0eXBlcy5Qb2ludFR5cGUsXG4gICAgdG86IHR5cGVzLlBvaW50VHlwZSxcbiAgICBpc0RyYWdnaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGZyb206IHt9LFxuICAgIHRvOiB7fSxcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgLyogZXNsaW50LWRpc2FibGUgbm8tdW51c2VkLXZhcnMgKi9cbiAgICBjb25zdCB7IGRhdGEsIGNsYXNzZXMsIGNsYXNzTmFtZSwgZGlzYWJsZWQsIGNvcnJlY3RuZXNzLCBmcm9tLCB0bywgZ3JhcGhQcm9wcywgaXNEcmFnZ2luZywgLi4ucmVzdCB9ID0gdGhpcy5wcm9wcztcbiAgICAvKiBlc2xpbnQtZW5hYmxlICovXG5cbiAgICByZXR1cm4gKFxuICAgICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgICA8dnguTGluZVBhdGhcbiAgICAgICAgICBkYXRhPXtkYXRhfVxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhcbiAgICAgICAgICAgIGNsYXNzZXMuZHJhd0xpbmUsXG4gICAgICAgICAgICBkaXNhYmxlZCAmJiBjbGFzc2VzLmRpc2FibGVkU2Vjb25kYXJ5LFxuICAgICAgICAgICAgY2xhc3Nlc1tjb3JyZWN0bmVzc10sXG4gICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgKX1cbiAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgLz5cbiAgICAgICAgPHZ4LkxpbmVQYXRoXG4gICAgICAgICAgZGF0YT17ZGF0YX1cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoXG4gICAgICAgICAgICBjbGFzc2VzLmxpbmUsXG4gICAgICAgICAgICBpc0RyYWdnaW5nICYmIGNsYXNzZXMuZHJhZ2dpbmcsXG4gICAgICAgICAgICBkaXNhYmxlZCAmJiBjbGFzc2VzLmRpc2FibGVkU2Vjb25kYXJ5LFxuICAgICAgICAgICAgY2xhc3Nlc1tjb3JyZWN0bmVzc10sXG4gICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgKX1cbiAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgLz5cbiAgICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCBkcmFnZ2luZyA9ICgpID0+ICh7XG4gIHN0cm9rZVdpZHRoOiA0LFxuICBzdHJva2U6IGNvbG9yLmRlZmF1bHRzLkJMQUNLLFxufSk7XG5cbmV4cG9ydCBjb25zdCBMaW5lUGF0aCA9IHdpdGhTdHlsZXMoKHRoZW1lKSA9PiAoe1xuICBkcmF3TGluZToge1xuICAgIGZpbGw6ICdub25lJyxcbiAgICBzdHJva2VXaWR0aDogMixcbiAgICBzdHJva2U6IGNvbG9yLmJsYWNrKCksXG4gIH0sXG4gIGxpbmU6IHtcbiAgICBzdHJva2VXaWR0aDogMyxcbiAgICBmaWxsOiAnbm9uZScsXG4gICAgdHJhbnNpdGlvbjogJ3N0cm9rZS13aWR0aCAyMDBtcyBlYXNlLWluLCBzdHJva2UgMjAwbXMgZWFzZS1pbicsXG4gICAgc3Ryb2tlOiAndHJhbnNwYXJlbnQnLFxuICAgICcmOmhvdmVyJzogZHJhZ2dpbmcodGhlbWUpLFxuICB9LFxuICBkcmFnZ2luZzogZHJhZ2dpbmcodGhlbWUpLFxuICBkaXNhYmxlZDoge1xuICAgIC4uLmRpc2FibGVkKCdzdHJva2UnKSxcbiAgICBzdHJva2VXaWR0aDogMixcbiAgfSxcbiAgZGlzYWJsZWRTZWNvbmRhcnk6IHtcbiAgICAuLi5kaXNhYmxlZFNlY29uZGFyeSgnc3Ryb2tlJyksXG4gICAgc3Ryb2tlV2lkdGg6IDIsXG4gIH0sXG4gIGNvcnJlY3Q6IHtcbiAgICAuLi5jb3JyZWN0KCdzdHJva2UnKSxcbiAgfSxcbiAgaW5jb3JyZWN0OiB7XG4gICAgLi4uaW5jb3JyZWN0KCdzdHJva2UnKSxcbiAgfSxcbiAgbWlzc2luZzoge1xuICAgIC4uLm1pc3NpbmcoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgIHN0cm9rZURhc2hhcnJheTogJzQgMycsXG4gIH0sXG59KSkoUmF3TGluZVBhdGgpO1xuIl19
|
|
@@ -19,7 +19,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
19
19
|
|
|
20
20
|
var _plot = require("@pie-lib/plot");
|
|
21
21
|
|
|
22
|
-
var _linePath = require("
|
|
22
|
+
var _linePath = require("./line-path");
|
|
23
23
|
|
|
24
24
|
var _curve = require("@vx/curve");
|
|
25
25
|
|
|
@@ -99,7 +99,9 @@ var withPointsGenerationLinePath = function withPointsGenerationLinePath(getPoin
|
|
|
99
99
|
root: from,
|
|
100
100
|
edge: to
|
|
101
101
|
}),
|
|
102
|
-
dataPoints = _getPoints.dataPoints
|
|
102
|
+
dataPoints = _getPoints.dataPoints,
|
|
103
|
+
_getPoints$enableCurv = _getPoints.enableCurve,
|
|
104
|
+
enableCurve = _getPoints$enableCurv === void 0 ? true : _getPoints$enableCurv;
|
|
103
105
|
|
|
104
106
|
var raw = dataPoints.map(function (d) {
|
|
105
107
|
return [graphProps.scale.x(d.x), graphProps.scale.y(d.y)];
|
|
@@ -113,12 +115,21 @@ var withPointsGenerationLinePath = function withPointsGenerationLinePath(getPoin
|
|
|
113
115
|
disabled: disabled,
|
|
114
116
|
correctness: correctness
|
|
115
117
|
};
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
118
|
+
|
|
119
|
+
if (!enableCurve) {
|
|
120
|
+
return /*#__PURE__*/_react["default"].createElement(_linePath.LinePath, (0, _extends2["default"])({
|
|
121
|
+
data: raw,
|
|
122
|
+
from: from,
|
|
123
|
+
to: to
|
|
124
|
+
}, common, rest));
|
|
125
|
+
} else {
|
|
126
|
+
return /*#__PURE__*/_react["default"].createElement(_linePath.LinePath, (0, _extends2["default"])({
|
|
127
|
+
data: raw,
|
|
128
|
+
from: from,
|
|
129
|
+
to: to,
|
|
130
|
+
curve: _curve.curveMonotoneX
|
|
131
|
+
}, common, rest));
|
|
132
|
+
}
|
|
122
133
|
};
|
|
123
134
|
|
|
124
135
|
LinePathComponent.propTypes = {
|
|
@@ -141,4 +152,4 @@ var withRootEdge = function withRootEdge(getPoints) {
|
|
|
141
152
|
};
|
|
142
153
|
|
|
143
154
|
exports.withRootEdge = withRootEdge;
|
|
144
|
-
//# sourceMappingURL=
|
|
155
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvbGluZS93aXRoLXJvb3QtZWRnZS5qc3giXSwibmFtZXMiOlsidG9Sb290RWRnZSIsIm0iLCJvdXQiLCJyb290IiwiZnJvbSIsImVkZ2UiLCJ0byIsInVuZGVmaW5lZCIsInRvRnJvbVRvIiwicm9vdEVkZ2VUb0Zyb21Ub1dyYXBwZXIiLCJCYXNlQ29tcCIsIldyYXBwZXIiLCJwcm9wcyIsIm1hcmsiLCJvbkNoYW5nZSIsImN1cnJlbnQiLCJuZXh0IiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwiZnVuYyIsIm9iamVjdCIsInJvb3RFZGdlQ29tcG9uZW50IiwiUm9vdEVkZ2VDb21wIiwiQmFzZUNvbXBvbmVudCIsIndpdGhQb2ludHNHZW5lcmF0aW9uTGluZVBhdGgiLCJnZXRQb2ludHMiLCJMaW5lUGF0aENvbXBvbmVudCIsImdyYXBoUHJvcHMiLCJvbkNsaWNrIiwib25EcmFnU3RhcnQiLCJvbkRyYWdTdG9wIiwiZGlzYWJsZWQiLCJjb3JyZWN0bmVzcyIsInJlc3QiLCJkYXRhUG9pbnRzIiwiZW5hYmxlQ3VydmUiLCJyYXciLCJtYXAiLCJkIiwic2NhbGUiLCJ4IiwieSIsImNvbW1vbiIsImN1cnZlTW9ub3RvbmVYIiwidHlwZXMiLCJHcmFwaFByb3BzVHlwZSIsImlzUmVxdWlyZWQiLCJQb2ludFR5cGUiLCJib29sIiwic3RyaW5nIiwid2l0aFJvb3RFZGdlIiwiTGluZVBhdGhDb21wIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxJQUFNQSxVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUFDQyxDQUFELEVBQU87QUFDeEIsTUFBTUMsR0FBRyxxQkFBUUQsQ0FBUixDQUFUOztBQUNBQyxFQUFBQSxHQUFHLENBQUNDLElBQUoscUJBQWdCRixDQUFDLENBQUNHLElBQWxCO0FBQ0FGLEVBQUFBLEdBQUcsQ0FBQ0csSUFB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LEVBQVA7QUFDRDtBQUNGLEdBMUJEOztBQTRCQVAsRUFBQUEsaUJBQWlCLENBQUNULFNBQWxCLEdBQThCO0FBQzVCVSxJQUFBQSxVQUFVLEVBQUVpQixZQUFNQyxjQUFOLENBQXFCQyxVQURMO0FBRTVCMUMsSUFBQUEsSUFBSSxFQUFFd0MsWUFBTUcsU0FBTixDQUFnQkQsVUFGTTtBQUc1QnhDLElBQUFBLEVBQUUsRUFBRXNDLFlBQU1HLFNBSGtCO0FBSTVCbkIsSUFBQUEsT0FBTyxFQUFFVixzQkFBVUMsSUFKUztBQUs1QlUsSUFBQUEsV0FBVyxFQUFFWCxzQkFBVUMsSUFMSztBQU01QlcsSUFBQUEsVUFBVSxFQUFFWixzQkFBVUMsSUFOTTtBQU81QkwsSUFBQUEsUUFBUSxFQUFFSSxzQkFBVUMsSUFQUTtBQVE1QlksSUFBQUEsUUFBUSxFQUFFYixzQkFBVThCLElBUlE7QUFTNUJoQixJQUFBQSxXQUFXLEVBQUVkLHNCQUFVK0I7QUFUSyxHQUE5QjtBQVlBLFNBQU92QixpQkFBUDtBQUNELENBMUNEOztBQTRDTyxJQUFNd0IsWUFBWSxHQUFHLFNBQWZBLFlBQWUsQ0FBQ3pCLFNBQUQsRUFBZTtBQUN6QyxNQUFNMEIsWUFBWSxHQUFHM0IsNEJBQTRCLENBQUNDLFNBQUQsQ0FBakQ7QUFDQSxTQUFPLHFCQUFTMEIsWUFBVCxDQUFQO0FBQ0QsQ0FITSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgdHlwZXMgfSBmcm9tICdAcGllLWxpYi9wbG90JztcbmltcG9ydCB7IExpbmVQYXRoIH0gZnJvbSAnLi9saW5lLXBhdGgnO1xuaW1wb3J0IHsgY3VydmVNb25vdG9uZVggfSBmcm9tICdAdngvY3VydmUnO1xuaW1wb3J0IHsgbGluZUJhc2UsIGxpbmVUb29sQ29tcG9uZW50IH0gZnJvbSAnLi9pbmRleCc7XG5cbmNvbnN0IHRvUm9vdEVkZ2UgPSAobSkgPT4ge1xuICBjb25zdCBvdXQgPSB7IC4uLm0gfTtcbiAgb3V0LnJvb3QgPSB7IC4uLm0uZnJvbSB9O1xuICBvdXQuZWRnZSA9IG0udG8gPyB7IC4uLm0udG8gfSA6IHVuZGVmaW5lZDtcbiAgZGVsZXRlIG91dC5mcm9tO1xuICBkZWxldGUgb3V0LnRvO1xuICByZXR1cm4gb3V0O1xufTtcblxuY29uc3QgdG9Gcm9tVG8gPSAobSkgPT4ge1xuICBjb25zdCBvdXQgPSB7IC4uLm0gfTtcbiAgb3V0LmZyb20gPSB7IC4uLm0ucm9vdCB9O1xuICBvdXQudG8gPSBtLmVkZ2UgPyB7IC4uLm0uZWRnZSB9IDogdW5kZWZpbmVkO1xuICBkZWxldGUgb3V0LnJvb3Q7XG4gIGRlbGV0ZSBvdXQuZWRnZTtcbiAgcmV0dXJuIG91dDtcbn07XG5cbmV4cG9ydCBjb25zdCByb290RWRnZVRvRnJvbVRvV3JhcHBlciA9IChCYXNlQ29tcCkgPT4ge1xuICBjb25zdCBXcmFwcGVyID0gKHByb3BzKSA9PiB7XG4gICAgY29uc3QgbSA9IHRvRnJvbVRvKHByb3BzLm1hcmspO1xuXG4gICAgY29uc3Qgb25DaGFuZ2UgPSAoY3VycmVudCwgbmV4dCkgPT4ge1xuICAgICAgcHJvcHMub25DaGFuZ2UodG9Sb290RWRnZShjdXJyZW50KSwgdG9Sb290RWRnZShuZXh0KSk7XG4gICAgfTtcblxuICAgIHJldHVybiA8QmFzZUNvbXAgey4uLnByb3BzfSBtYXJrPXttfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+O1xuICB9O1xuXG4gIFdyYXBwZXIucHJvcFR5cGVzID0ge1xuICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBtYXJrOiBQcm9wVHlwZXMub2JqZWN0LFxuICB9O1xuXG4gIHJldHVybiBXcmFwcGVyO1xufTtcblxuZXhwb3J0IGNvbnN0IHJvb3RFZGdlQ29tcG9uZW50ID0gKFJvb3RFZGdlQ29tcCkgPT4ge1xuICBjb25zdCBCYXNlQ29tcG9uZW50ID0gbGluZVRvb2xDb21wb25lbnQoUm9vdEVkZ2VDb21wKTtcbiAgcmV0dXJuIHJvb3RFZGdlVG9Gcm9tVG9XcmFwcGVyKEJhc2VDb21wb25lbnQpO1xufTtcblxuY29uc3Qgd2l0aFBvaW50c0dlbmVyYXRpb25MaW5lUGF0aCA9IChnZXRQb2ludHMpID0+IHtcbiAgY29uc3QgTGluZVBhdGhDb21wb25lbnQgPSAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7IGdyYXBoUHJvcHMsIGZyb20sIHRvLCBvbkNsaWNrLCBvbkRyYWdTdGFydCwgb25EcmFnU3RvcCwgb25DaGFuZ2UsIGRpc2FibGVkLCBjb3JyZWN0bmVzcywgLi4ucmVzdCB9ID0gcHJvcHM7XG5cbiAgICBjb25zdCB7IGRhdGFQb2ludHMsIGVuYWJsZUN1cnZlID0gdHJ1ZSB9ID0gZ2V0UG9pbnRzKHtcbiAgICAgIGdyYXBoUHJvcHM6IHByb3BzLmdyYXBoUHJvcHMsXG4gICAgICByb290OiBmcm9tLFxuICAgICAgZWRnZTogdG8sXG4gICAgfSk7XG5cbiAgICBjb25zdCByYXcgPSBkYXRhUG9pbnRzLm1hcCgoZCkgPT4gW2dyYXBoUHJvcHMuc2NhbGUueChkLngpLCBncmFwaFByb3BzLnNjYWxlLnkoZC55KV0pO1xuXG4gICAgY29uc3QgY29tbW9uID0ge1xuICAgICAgb25DbGljayxcbiAgICAgIGdyYXBoUHJvcHMsXG4gICAgICBvbkRyYWdTdGFydCxcbiAgICAgIG9uRHJhZ1N0b3AsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgY29ycmVjdG5lc3MsXG4gICAgfTtcblxuICAgIGlmICghZW5hYmxlQ3VydmUpIHtcbiAgICAgIHJldHVybiA8TGluZVBhdGggZGF0YT17cmF3fSBmcm9tPXtmcm9tfSB0bz17dG99IHsuLi5jb21tb259IHsuLi5yZXN0fSAvPjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIDxMaW5lUGF0aCBkYXRhPXtyYXd9IGZyb209e2Zyb219IHRvPXt0b30gY3VydmU9e2N1cnZlTW9ub3RvbmVYfSB7Li4uY29tbW9ufSB7Li4ucmVzdH0gLz47XG4gICAgfVxuICB9O1xuXG4gIExpbmVQYXRoQ29tcG9uZW50LnByb3BUeXBlcyA9IHtcbiAgICBncmFwaFByb3BzOiB0eXBlcy5HcmFwaFByb3BzVHlwZS5pc1JlcXVpcmVkLFxuICAgIGZyb206IHR5cGVzLlBvaW50VHlwZS5pc1JlcXVpcmVkLFxuICAgIHRvOiB0eXBlcy5Qb2ludFR5cGUsXG4gICAgb25DbGljazogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25EcmFnU3RhcnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uRHJhZ1N0b3A6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgY29ycmVjdG5lc3M6IFByb3BUeXBlcy5zdHJpbmcsXG4gIH07XG5cbiAgcmV0dXJuIExpbmVQYXRoQ29tcG9uZW50O1xufTtcblxuZXhwb3J0IGNvbnN0IHdpdGhSb290RWRnZSA9IChnZXRQb2ludHMpID0+IHtcbiAgY29uc3QgTGluZVBhdGhDb21wID0gd2l0aFBvaW50c0dlbmVyYXRpb25MaW5lUGF0aChnZXRQb2ludHMpO1xuICByZXR1cm4gbGluZUJhc2UoTGluZVBhdGhDb21wKTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
+
|
|
7
|
+
var _build = require("enzyme/build");
|
|
8
|
+
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
|
|
11
|
+
var _index = require("../index");
|
|
12
|
+
|
|
13
|
+
var _utils = require("../../../../__tests__/utils");
|
|
14
|
+
|
|
15
|
+
var _utils2 = require("../../../../utils");
|
|
16
|
+
|
|
17
|
+
var _plot = require("@pie-lib/plot");
|
|
18
|
+
|
|
19
|
+
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; }
|
|
20
|
+
|
|
21
|
+
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; }
|
|
22
|
+
|
|
23
|
+
var xy = _plot.utils.xy;
|
|
24
|
+
jest.mock('../../../../utils', function () {
|
|
25
|
+
var _jest$requireActual = jest.requireActual('../../../../utils'),
|
|
26
|
+
point = _jest$requireActual.point;
|
|
27
|
+
|
|
28
|
+
return {
|
|
29
|
+
bounds: jest.fn(),
|
|
30
|
+
point: point
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
jest.mock('@pie-lib/plot/index', function () {
|
|
34
|
+
var _jest$requireActual2 = jest.requireActual('@pie-lib/plot/index'),
|
|
35
|
+
types = _jest$requireActual2.types,
|
|
36
|
+
utils = _jest$requireActual2.utils;
|
|
37
|
+
|
|
38
|
+
return {
|
|
39
|
+
gridDraggable: jest.fn(function (opts) {
|
|
40
|
+
return function (Comp) {
|
|
41
|
+
return Comp;
|
|
42
|
+
};
|
|
43
|
+
}),
|
|
44
|
+
types: types,
|
|
45
|
+
utils: utils
|
|
46
|
+
};
|
|
47
|
+
});
|
|
48
|
+
describe('ArrowPoint', function () {
|
|
49
|
+
var w;
|
|
50
|
+
var onChange = jest.fn();
|
|
51
|
+
|
|
52
|
+
var wrapper = function wrapper(extras) {
|
|
53
|
+
var defaults = {
|
|
54
|
+
classes: {},
|
|
55
|
+
className: 'className',
|
|
56
|
+
onChange: onChange,
|
|
57
|
+
graphProps: (0, _utils.graphProps)(),
|
|
58
|
+
from: xy(0, 0),
|
|
59
|
+
to: xy(1, 1)
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
63
|
+
|
|
64
|
+
return (0, _build.shallow)( /*#__PURE__*/_react["default"].createElement(_index.ArrowPoint, props));
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
describe('snapshot', function () {
|
|
68
|
+
it('renders', function () {
|
|
69
|
+
w = wrapper();
|
|
70
|
+
expect(w).toMatchSnapshot();
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
describe('gridDraggable options', function () {
|
|
74
|
+
var opts;
|
|
75
|
+
var domain;
|
|
76
|
+
var range;
|
|
77
|
+
beforeEach(function () {
|
|
78
|
+
domain = {
|
|
79
|
+
min: 0,
|
|
80
|
+
max: 1,
|
|
81
|
+
step: 1
|
|
82
|
+
};
|
|
83
|
+
range = {
|
|
84
|
+
min: 0,
|
|
85
|
+
max: 1,
|
|
86
|
+
step: 1
|
|
87
|
+
};
|
|
88
|
+
var w = wrapper();
|
|
89
|
+
opts = _plot.gridDraggable.mock.calls[0][0];
|
|
90
|
+
});
|
|
91
|
+
describe('bounds', function () {
|
|
92
|
+
it('calls utils.bounds with area', function () {
|
|
93
|
+
var result = opts.bounds({
|
|
94
|
+
x: 0,
|
|
95
|
+
y: 0
|
|
96
|
+
}, {
|
|
97
|
+
domain: domain,
|
|
98
|
+
range: range
|
|
99
|
+
});
|
|
100
|
+
expect(_utils2.bounds).toHaveBeenCalledWith({
|
|
101
|
+
left: 0,
|
|
102
|
+
top: 0,
|
|
103
|
+
bottom: 0,
|
|
104
|
+
right: 0
|
|
105
|
+
}, domain, range);
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
describe('anchorPoint', function () {
|
|
109
|
+
it('returns x/y', function () {
|
|
110
|
+
var result = opts.anchorPoint({
|
|
111
|
+
x: 0,
|
|
112
|
+
y: 0
|
|
113
|
+
});
|
|
114
|
+
expect(result).toEqual({
|
|
115
|
+
x: 0,
|
|
116
|
+
y: 0
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
describe('fromDelta', function () {
|
|
121
|
+
it('returns a new point from the x/y + delta', function () {
|
|
122
|
+
var result = opts.fromDelta({
|
|
123
|
+
x: -1,
|
|
124
|
+
y: 0
|
|
125
|
+
}, {
|
|
126
|
+
x: 1,
|
|
127
|
+
y: 3
|
|
128
|
+
});
|
|
129
|
+
expect(result).toEqual({
|
|
130
|
+
x: 0,
|
|
131
|
+
y: 3
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvcG9pbnQvX190ZXN0c19fL2Fycm93LXBvaW50LnRlc3QuanN4Il0sIm5hbWVzIjpbInh5IiwidXRpbHMiLCJqZXN0IiwibW9jayIsInJlcXVpcmVBY3R1YWwiLCJwb2ludCIsImJvdW5kcyIsImZuIiwidHlwZXMiLCJncmlkRHJhZ2dhYmxlIiwib3B0cyIsIkNvbXAiLCJkZXNjcmliZSIsInciLCJvbkNoYW5nZSIsIndyYXBwZXIiLCJleHRyYXMiLCJkZWZhdWx0cyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJncmFwaFByb3BzIiwiZnJvbSIsInRvIiwicHJvcHMiLCJpdCIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCIsImRvbWFpbiIsInJhbmdlIiwiYmVmb3JlRWFjaCIsIm1pbiIsIm1heCIsInN0ZXAiLCJjYWxscyIsInJlc3VsdCIsIngiLCJ5IiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJsZWZ0IiwidG9wIiwiYm90dG9tIiwicmlnaHQiLCJhbmNob3JQb2ludCIsInRvRXF1YWwiLCJmcm9tRGVsdGEiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFRQSxFQUFSLEdBQWVDLFdBQWYsQ0FBUUQsRUFBUjtBQUNBRSxJQUFJLENBQUNDLElBQUwsQ0FBVSxtQkFBVixFQUErQixZQUFNO0FBQ25DLDRCQUFrQkQsSUFBSSxDQUFDRSxhQUFMLENBQW1CLG1CQUFuQixDQUFsQjtBQUFBLE1BQVFDLEtBQVIsdUJBQVFBLEtBQVI7O0FBQ0EsU0FBTztBQUNMQyxJQUFBQSxNQUFNLEVBQUVKLElBQUksQ0FBQ0ssRUFBTCxFQURIO0FBRUxGLElBQUFBLEtBQUssRUFBTEE7QUFGSyxHQUFQO0FBSUQsQ0FORDtBQVFBSCxJQUFJLENBQUNDLElBQUwsQ0FBVSxxQkFBVixFQUFpQyxZQUFNO0FBQ3JDLDZCQUF5QkQsSUFBSSxDQUFDRSxh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IH0gZnJvbSAnZW56eW1lL2J1aWxkJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBcnJvd1BvaW50IH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHsgZ3JhcGhQcm9wcyB9IGZyb20gJy4uLy4uLy4uLy4uL19fdGVzdHNfXy91dGlscyc7XG5pbXBvcnQgeyBib3VuZHMgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscyc7XG5pbXBvcnQgeyBncmlkRHJhZ2dhYmxlLCB1dGlscyB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuXG5jb25zdCB7IHh5IH0gPSB1dGlscztcbmplc3QubW9jaygnLi4vLi4vLi4vLi4vdXRpbHMnLCAoKSA9PiB7XG4gIGNvbnN0IHsgcG9pbnQgfSA9IGplc3QucmVxdWlyZUFjdHVhbCgnLi4vLi4vLi4vLi4vdXRpbHMnKTtcbiAgcmV0dXJuIHtcbiAgICBib3VuZHM6IGplc3QuZm4oKSxcbiAgICBwb2ludCxcbiAgfTtcbn0pO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL3Bsb3QvaW5kZXgnLCAoKSA9PiB7XG4gIGNvbnN0IHsgdHlwZXMsIHV0aWxzIH0gPSBqZXN0LnJlcXVpcmVBY3R1YWwoJ0BwaWUtbGliL3Bsb3QvaW5kZXgnKTtcbiAgcmV0dXJuIHtcbiAgICBncmlkRHJhZ2dhYmxlOiBqZXN0LmZuKChvcHRzKSA9PiAoQ29tcCkgPT4gQ29tcCksXG4gICAgdHlwZXMsXG4gICAgdXRpbHMsXG4gIH07XG59KTtcblxuZGVzY3JpYmUoJ0Fycm93UG9pbnQnLCAoKSA9PiB7XG4gIGxldCB3O1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGNvbnN0IHdyYXBwZXIgPSAoZXh0cmFzKSA9PiB7XG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBjbGFzc2VzOiB7fSxcbiAgICAgIGNsYXNzTmFtZTogJ2NsYXNzTmFtZScsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIGdyYXBoUHJvcHM6IGdyYXBoUHJvcHMoKSxcbiAgICAgIGZyb206IHh5KDAsIDApLFxuICAgICAgdG86IHh5KDEsIDEpLFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gc2hhbGxvdyg8QXJyb3dQb2ludCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICBkZXNjcmliZSgnc25hcHNob3QnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcigpO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICB9KTtcbiAgZGVzY3JpYmUoJ2dyaWREcmFnZ2FibGUgb3B0aW9ucycsICgpID0+IHtcbiAgICBsZXQgb3B0cztcbiAgICBsZXQgZG9tYWluO1xuICAgIGxldCByYW5nZTtcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIGRvbWFpbiA9IHtcbiAgICAgICAgbWluOiAwLFxuICAgICAgICBtYXg6IDEsXG4gICAgICAgIHN0ZXA6IDEsXG4gICAgICB9O1xuICAgICAgcmFuZ2UgPSB7XG4gICAgICAgIG1pbjogMCxcbiAgICAgICAgbWF4OiAxLFxuICAgICAgICBzdGVwOiAxLFxuICAgICAgfTtcbiAgICAgIGNvbnN0IHcgPSB3cmFwcGVyKCk7XG4gICAgICBvcHRzID0gZ3JpZERyYWdnYWJsZS5tb2NrLmNhbGxzWzBdWzBdO1xuICAgIH0pO1xuXG4gICAgZGVzY3JpYmUoJ2JvdW5kcycsICgpID0+IHtcbiAgICAgIGl0KCdjYWxscyB1dGlscy5ib3VuZHMgd2l0aCBhcmVhJywgKCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBvcHRzLmJvdW5kcyh7IHg6IDAsIHk6IDAgfSwgeyBkb21haW4sIHJhbmdlIH0pO1xuICAgICAgICBleHBlY3QoYm91bmRzKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IGxlZnQ6IDAsIHRvcDogMCwgYm90dG9tOiAwLCByaWdodDogMCB9LCBkb21haW4sIHJhbmdlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdhbmNob3JQb2ludCcsICgpID0+IHtcbiAgICAgIGl0KCdyZXR1cm5zIHgveScsICgpID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gb3B0cy5hbmNob3JQb2ludCh7IHg6IDAsIHk6IDAgfSk7XG4gICAgICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoeyB4OiAwLCB5OiAwIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgnZnJvbURlbHRhJywgKCkgPT4ge1xuICAgICAgaXQoJ3JldHVybnMgYSBuZXcgcG9pbnQgZnJvbSB0aGUgeC95ICsgZGVsdGEnLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IG9wdHMuZnJvbURlbHRhKHsgeDogLTEsIHk6IDAgfSwgeyB4OiAxLCB5OiAzIH0pO1xuICAgICAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKHsgeDogMCwgeTogMyB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|