@pie-lib/graphing 3.2.0-next.9 → 4.0.1
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 +133 -0
- package/lib/axis/axes.js +35 -33
- package/lib/axis/axes.js.map +1 -1
- package/lib/graph-with-controls.js +1 -1
- package/lib/graph-with-controls.js.map +1 -1
- package/lib/graph.js +14 -0
- package/lib/graph.js.map +1 -1
- package/lib/grid-setup.js +8 -0
- package/lib/grid-setup.js.map +1 -1
- package/lib/toggle-bar.js +5 -1
- package/lib/toggle-bar.js.map +1 -1
- package/lib/tools/circle/component.js +1 -1
- package/lib/tools/circle/component.js.map +1 -1
- package/lib/tools/line/component.js +30 -15
- package/lib/tools/line/component.js.map +1 -1
- package/lib/tools/point/component.js +24 -14
- package/lib/tools/point/component.js.map +1 -1
- package/lib/tools/polygon/line.js +2 -1
- package/lib/tools/polygon/line.js.map +1 -1
- package/lib/tools/polygon/polygon.js +7 -9
- package/lib/tools/polygon/polygon.js.map +1 -1
- package/lib/tools/ray/component.js +14 -2
- package/lib/tools/ray/component.js.map +1 -1
- package/lib/tools/segment/component.js +21 -8
- package/lib/tools/segment/component.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 +6 -3
- package/lib/tools/shared/line/index.js.map +1 -1
- package/lib/tools/shared/line/line-path.js +2 -1
- package/lib/tools/shared/line/line-path.js.map +1 -1
- package/lib/tools/shared/point/index.js +6 -0
- package/lib/tools/shared/point/index.js.map +1 -1
- package/lib/tools/shared/styles.js +5 -2
- package/lib/tools/shared/styles.js.map +1 -1
- package/lib/undo-redo.js +3 -0
- package/lib/undo-redo.js.map +1 -1
- package/package.json +8 -8
- package/src/axis/axes.jsx +9 -7
- package/src/graph-with-controls.jsx +1 -1
- package/src/graph.jsx +17 -0
- package/src/grid-setup.jsx +10 -0
- package/src/toggle-bar.jsx +4 -0
- package/src/tools/circle/component.jsx +1 -1
- package/src/tools/line/component.jsx +36 -14
- package/src/tools/point/component.jsx +11 -4
- package/src/tools/polygon/line.jsx +2 -1
- package/src/tools/polygon/polygon.jsx +9 -8
- package/src/tools/ray/component.jsx +12 -1
- package/src/tools/segment/component.jsx +15 -12
- package/src/tools/shared/arrow-head.jsx +2 -2
- package/src/tools/shared/line/index.jsx +7 -3
- package/src/tools/shared/line/line-path.jsx +2 -1
- package/src/tools/shared/point/index.jsx +6 -0
- package/src/tools/shared/styles.js +3 -1
- package/src/undo-redo.jsx +3 -0
|
@@ -8,6 +8,7 @@ exports["default"] = exports.ArrowedLine = void 0;
|
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
12
|
var _line = require("../shared/line");
|
|
12
13
|
var _react = _interopRequireDefault(require("react"));
|
|
13
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -17,20 +18,19 @@ var _arrowHead = require("../shared/arrow-head");
|
|
|
17
18
|
var _utils = require("../../utils");
|
|
18
19
|
var _styles = require("@mui/material/styles");
|
|
19
20
|
var _excluded = ["className", "correctness", "disabled", "graphProps", "from", "to", "markerId"];
|
|
21
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
20
23
|
var StyledArrowedLineRoot = (0, _styles.styled)('g')(function (_ref) {
|
|
21
|
-
var theme = _ref.theme
|
|
24
|
+
var theme = _ref.theme,
|
|
25
|
+
disabled = _ref.disabled,
|
|
26
|
+
correctness = _ref.correctness;
|
|
22
27
|
return {
|
|
23
|
-
line: _line.styles.line(theme),
|
|
24
|
-
enabledArrow: _line.styles.arrow(theme),
|
|
25
|
-
disabledArrow: _line.styles.disabledArrow(theme),
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
correctArrow: _line.styles.correct(theme),
|
|
30
|
-
incorrect: _line.styles.incorrect(theme, 'stroke'),
|
|
31
|
-
incorrectArrow: _line.styles.incorrect(theme),
|
|
32
|
-
missing: _line.styles.missing(theme, 'stroke'),
|
|
33
|
-
missingArrow: _line.styles.missing(theme)
|
|
28
|
+
'& line:not(.hit-area)': _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _line.styles.line(theme)), disabled && _line.styles.disabledSecondary(theme)), correctness === 'correct' && _line.styles.correct(theme, 'stroke')), correctness === 'incorrect' && _line.styles.incorrect(theme, 'stroke')), correctness === 'missing' && _line.styles.missing(theme, 'stroke')),
|
|
29
|
+
'& .enabledArrow': _objectSpread({}, _line.styles.arrow(theme)),
|
|
30
|
+
'& .disabledArrow': _objectSpread({}, _line.styles.disabledArrow(theme)),
|
|
31
|
+
'& .correctArrow': _objectSpread({}, _line.styles.correct(theme)),
|
|
32
|
+
'& .incorrectArrow': _objectSpread({}, _line.styles.incorrect(theme)),
|
|
33
|
+
'& .missingArrow': _objectSpread({}, _line.styles.missing(theme))
|
|
34
34
|
};
|
|
35
35
|
});
|
|
36
36
|
var ArrowedLine = exports.ArrowedLine = function ArrowedLine(props) {
|
|
@@ -53,16 +53,31 @@ var ArrowedLine = exports.ArrowedLine = function ArrowedLine(props) {
|
|
|
53
53
|
eTo = _trig$edges2[1];
|
|
54
54
|
var suffix = correctness || disabled && 'disabled' || 'enabled';
|
|
55
55
|
var finalMarkerId = propMarkerId || markerId;
|
|
56
|
-
return /*#__PURE__*/_react["default"].createElement(StyledArrowedLineRoot,
|
|
56
|
+
return /*#__PURE__*/_react["default"].createElement(StyledArrowedLineRoot, {
|
|
57
|
+
disabled: disabled,
|
|
58
|
+
correctness: correctness
|
|
59
|
+
}, /*#__PURE__*/_react["default"].createElement("defs", null, /*#__PURE__*/_react["default"].createElement(_arrowHead.ArrowMarker, {
|
|
57
60
|
size: (0, _utils.thinnerShapesNeeded)(graphProps) ? 4 : 5,
|
|
58
61
|
id: "".concat(finalMarkerId, "-").concat(suffix),
|
|
59
62
|
className: (0, _classnames["default"])(suffix === 'enabled' ? 'enabledArrow' : suffix === 'disabled' ? 'disabledArrow' : "".concat(suffix, "Arrow"))
|
|
60
|
-
})), /*#__PURE__*/_react["default"].createElement("line",
|
|
63
|
+
})), /*#__PURE__*/_react["default"].createElement("line", {
|
|
61
64
|
x1: scale.x(eFrom.x),
|
|
62
65
|
y1: scale.y(eFrom.y),
|
|
63
66
|
x2: scale.x(eTo.x),
|
|
64
67
|
y2: scale.y(eTo.y),
|
|
65
|
-
className:
|
|
68
|
+
className: "hit-area",
|
|
69
|
+
stroke: "transparent",
|
|
70
|
+
strokeWidth: 7,
|
|
71
|
+
style: {
|
|
72
|
+
cursor: 'pointer',
|
|
73
|
+
pointerEvents: 'stroke'
|
|
74
|
+
}
|
|
75
|
+
}), /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
|
|
76
|
+
x1: scale.x(eFrom.x),
|
|
77
|
+
y1: scale.y(eFrom.y),
|
|
78
|
+
x2: scale.x(eTo.x),
|
|
79
|
+
y2: scale.y(eTo.y),
|
|
80
|
+
className: className,
|
|
66
81
|
markerEnd: "url(#".concat(finalMarkerId, "-").concat(suffix, ")"),
|
|
67
82
|
markerStart: "url(#".concat(finalMarkerId, "-").concat(suffix, ")")
|
|
68
83
|
}, rest)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_plot","_classnames","_arrowHead","_utils","_styles","_excluded","
|
|
1
|
+
{"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_plot","_classnames","_arrowHead","_utils","_styles","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","StyledArrowedLineRoot","styled","_ref","theme","disabled","correctness","styles","line","disabledSecondary","correct","incorrect","missing","arrow","disabledArrow","ArrowedLine","exports","props","markerId","genUid","className","graphProps","from","to","propMarkerId","rest","_objectWithoutProperties2","scale","_getAdjustedGraphLimi","getAdjustedGraphLimits","domain","range","_trig$edges","trig","edges","_trig$edges2","_slicedToArray2","eFrom","eTo","suffix","finalMarkerId","createElement","ArrowMarker","size","thinnerShapesNeeded","id","concat","classNames","x1","x","y1","y","x2","y2","stroke","strokeWidth","style","cursor","pointerEvents","_extends2","markerEnd","markerStart","propTypes","PropTypes","string","bool","types","GraphPropsType","PointType","Line","lineBase","Component","lineToolComponent","_default"],"sources":["../../../src/tools/line/component.jsx"],"sourcesContent":["import { lineBase, lineToolComponent, 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 { ArrowMarker, genUid } from '../shared/arrow-head';\nimport { getAdjustedGraphLimits, thinnerShapesNeeded } from '../../utils';\nimport { styled } from '@mui/material/styles';\n\nconst StyledArrowedLineRoot = styled('g')(({ theme, disabled, correctness }) => ({\n '& line:not(.hit-area)': {\n ...styles.line(theme),\n ...(disabled && styles.disabledSecondary(theme)),\n ...(correctness === 'correct' && styles.correct(theme, 'stroke')),\n ...(correctness === 'incorrect' && styles.incorrect(theme, 'stroke')),\n ...(correctness === 'missing' && styles.missing(theme, 'stroke')),\n },\n '& .enabledArrow': {\n ...styles.arrow(theme),\n },\n '& .disabledArrow': {\n ...styles.disabledArrow(theme),\n },\n '& .correctArrow': {\n ...styles.correct(theme),\n },\n '& .incorrectArrow': {\n ...styles.incorrect(theme),\n },\n '& .missingArrow': {\n ...styles.missing(theme),\n },\n}));\n\nexport const ArrowedLine = (props) => {\n const markerId = genUid();\n const { className, correctness, disabled, graphProps, from, to, markerId: propMarkerId, ...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 const finalMarkerId = propMarkerId || markerId;\n\n return (\n <StyledArrowedLineRoot disabled={disabled} correctness={correctness}>\n <defs>\n <ArrowMarker\n size={thinnerShapesNeeded(graphProps) ? 4 : 5}\n id={`${finalMarkerId}-${suffix}`}\n className={classNames(\n suffix === 'enabled' ? 'enabledArrow' : suffix === 'disabled' ? 'disabledArrow' : `${suffix}Arrow`,\n )}\n />\n </defs>\n {/* Transparent wider line captures pointer events (+2px each side) */}\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=\"hit-area\"\n stroke=\"transparent\"\n strokeWidth={7}\n style={{ cursor: 'pointer', pointerEvents: 'stroke' }}\n />\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={className}\n markerEnd={`url(#${finalMarkerId}-${suffix})`}\n markerStart={`url(#${finalMarkerId}-${suffix})`}\n {...rest}\n />\n </StyledArrowedLineRoot>\n );\n};\n\nArrowedLine.propTypes = {\n className: PropTypes.string,\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 Line = lineBase(ArrowedLine);\nconst Component = lineToolComponent(Line);\n\nexport default Component;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -35,6 +35,7 @@ var Point = exports.Point = /*#__PURE__*/function (_React$Component) {
|
|
|
35
35
|
});
|
|
36
36
|
});
|
|
37
37
|
(0, _defineProperty2["default"])(_this, "startDrag", function () {
|
|
38
|
+
var onDragStart = _this.props.onDragStart;
|
|
38
39
|
var update = _objectSpread({}, _this.props.mark);
|
|
39
40
|
if (update.label === '') {
|
|
40
41
|
delete update.label;
|
|
@@ -42,9 +43,12 @@ var Point = exports.Point = /*#__PURE__*/function (_React$Component) {
|
|
|
42
43
|
_this.setState({
|
|
43
44
|
mark: update
|
|
44
45
|
});
|
|
46
|
+
if (onDragStart) onDragStart();
|
|
45
47
|
});
|
|
46
48
|
(0, _defineProperty2["default"])(_this, "stopDrag", function () {
|
|
47
|
-
var
|
|
49
|
+
var _this$props = _this.props,
|
|
50
|
+
onChange = _this$props.onChange,
|
|
51
|
+
onDragStop = _this$props.onDragStop;
|
|
48
52
|
var mark = _objectSpread({}, _this.state.mark);
|
|
49
53
|
_this.setState({
|
|
50
54
|
mark: undefined
|
|
@@ -52,6 +56,7 @@ var Point = exports.Point = /*#__PURE__*/function (_React$Component) {
|
|
|
52
56
|
if (!(0, _lodashEs.isEqual)(_this.props.mark, mark)) {
|
|
53
57
|
onChange(_this.props.mark, mark);
|
|
54
58
|
}
|
|
59
|
+
if (onDragStop) onDragStop();
|
|
55
60
|
});
|
|
56
61
|
});
|
|
57
62
|
(0, _defineProperty2["default"])(_this, "labelChange", function (label) {
|
|
@@ -69,11 +74,11 @@ var Point = exports.Point = /*#__PURE__*/function (_React$Component) {
|
|
|
69
74
|
});
|
|
70
75
|
});
|
|
71
76
|
(0, _defineProperty2["default"])(_this, "clickPoint", function () {
|
|
72
|
-
var _this$
|
|
73
|
-
labelModeEnabled = _this$
|
|
74
|
-
onChange = _this$
|
|
75
|
-
onClick = _this$
|
|
76
|
-
mark = _this$
|
|
77
|
+
var _this$props2 = _this.props,
|
|
78
|
+
labelModeEnabled = _this$props2.labelModeEnabled,
|
|
79
|
+
onChange = _this$props2.onChange,
|
|
80
|
+
onClick = _this$props2.onClick,
|
|
81
|
+
mark = _this$props2.mark;
|
|
77
82
|
if (!labelModeEnabled) {
|
|
78
83
|
onClick(mark);
|
|
79
84
|
return;
|
|
@@ -84,9 +89,14 @@ var Point = exports.Point = /*#__PURE__*/function (_React$Component) {
|
|
|
84
89
|
onChange(mark, _objectSpread({
|
|
85
90
|
label: ''
|
|
86
91
|
}, mark));
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
92
|
+
|
|
93
|
+
// MarkLabel is only rendered after the parent re-renders with the new label prop,
|
|
94
|
+
// so we defer focus until after that render cycle completes.
|
|
95
|
+
setTimeout(function () {
|
|
96
|
+
if (_this.input) {
|
|
97
|
+
_this.input.focus();
|
|
98
|
+
}
|
|
99
|
+
}, 0);
|
|
90
100
|
});
|
|
91
101
|
_this.state = {};
|
|
92
102
|
return _this;
|
|
@@ -96,11 +106,11 @@ var Point = exports.Point = /*#__PURE__*/function (_React$Component) {
|
|
|
96
106
|
key: "render",
|
|
97
107
|
value: function render() {
|
|
98
108
|
var _this2 = this;
|
|
99
|
-
var _this$
|
|
100
|
-
coordinatesOnHover = _this$
|
|
101
|
-
graphProps = _this$
|
|
102
|
-
labelNode = _this$
|
|
103
|
-
labelModeEnabled = _this$
|
|
109
|
+
var _this$props3 = this.props,
|
|
110
|
+
coordinatesOnHover = _this$props3.coordinatesOnHover,
|
|
111
|
+
graphProps = _this$props3.graphProps,
|
|
112
|
+
labelNode = _this$props3.labelNode,
|
|
113
|
+
labelModeEnabled = _this$props3.labelModeEnabled;
|
|
104
114
|
var mark = this.state.mark ? this.state.mark : this.props.mark;
|
|
105
115
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_point.BasePoint, (0, _extends2["default"])({}, mark, {
|
|
106
116
|
coordinatesOnHover: coordinatesOnHover,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["_react","_interopRequireDefault","require","_point","_types","_plot","_reactDom","_markLabel","_lodashEs","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","Point","exports","_React$Component","props","_this","_classCallCheck2","p","mark","state","setState","update","label","onChange","undefined","isEqual","isEmpty","_this$props","labelModeEnabled","onClick","disabled","input","focus","_inherits2","_createClass2","key","value","render","_this2","_this$props2","coordinatesOnHover","graphProps","labelNode","createElement","Fragment","BasePoint","_extends2","onDrag","move","onDragStart","startDrag","onDragStop","stopDrag","clickPoint","onTouchStart","stopPropagation","onTouchEnd","hasOwnProperty","ReactDOM","createPortal","inputRef","labelChange","React","Component","types","GraphPropsType","isRequired","ToolPropTypeFields","_default"],"sources":["../../../src/tools/point/component.jsx"],"sourcesContent":["import React from 'react';\nimport { BasePoint } from '../shared/point';\nimport { ToolPropTypeFields } from '../shared/types';\nimport { types } from '@pie-lib/plot';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport { isEmpty, isEqual } from 'lodash-es';\n\nexport class Point extends React.Component {\n static propTypes = {\n graphProps: types.GraphPropsType.isRequired,\n ...ToolPropTypeFields,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n move = (p) => {\n const mark = { ...this.state.mark, ...p };\n this.setState({ mark });\n };\n\n startDrag = () => {\n const update = { ...this.props.mark };\n\n if (update.label === '') {\n delete update.label;\n }\n this.setState({ mark: update });\n };\n\n stopDrag = () => {\n const { onChange } = this.props;\n const mark = { ...this.state.mark };\n this.setState({ mark: undefined }, () => {\n if (!isEqual(this.props.mark, mark)) {\n onChange(this.props.mark, mark);\n }\n });\n };\n\n labelChange = (label) => {\n const { onChange } = this.props;\n const update = { ...this.props.mark, label };\n\n if (!label || isEmpty(label)) {\n delete update.label;\n }\n\n this.setState({ mark: update }, () => {\n onChange(this.props.mark, update);\n });\n };\n\n clickPoint = () => {\n const { labelModeEnabled, onChange, onClick, mark } = this.props;\n\n if (!labelModeEnabled) {\n onClick(mark);\n return;\n }\n\n if (mark.disabled) {\n return;\n }\n\n onChange(mark, { label: '', ...mark });\n\n if (this.input) {\n this.input.focus();\n }\n };\n\n render() {\n const { coordinatesOnHover, graphProps, labelNode, labelModeEnabled } = this.props;\n const mark = this.state.mark ? this.state.mark : this.props.mark;\n\n return (\n <React.Fragment>\n <BasePoint\n {...mark}\n coordinatesOnHover={coordinatesOnHover}\n graphProps={graphProps}\n labelNode={labelNode}\n onDrag={this.move}\n onDragStart={this.startDrag}\n onDragStop={this.stopDrag}\n onClick={this.clickPoint}\n onTouchStart={(e) => {\n e.stopPropagation();\n this.clickPoint();\n }}\n onTouchEnd={(e) => {\n e.stopPropagation();\n this.clickPoint();\n }}\n />\n {labelNode &&\n Object.prototype.hasOwnProperty.call(mark, 'label') &&\n ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input = r)}\n disabled={!labelModeEnabled}\n mark={mark}\n graphProps={graphProps}\n onChange={this.labelChange}\n />,\n labelNode,\n )}\n </React.Fragment>\n );\n }\n}\n\nexport default Point;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"component.js","names":["_react","_interopRequireDefault","require","_point","_types","_plot","_reactDom","_markLabel","_lodashEs","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","Point","exports","_React$Component","props","_this","_classCallCheck2","p","mark","state","setState","onDragStart","update","label","_this$props","onChange","onDragStop","undefined","isEqual","isEmpty","_this$props2","labelModeEnabled","onClick","disabled","setTimeout","input","focus","_inherits2","_createClass2","key","value","render","_this2","_this$props3","coordinatesOnHover","graphProps","labelNode","createElement","Fragment","BasePoint","_extends2","onDrag","move","startDrag","stopDrag","clickPoint","onTouchStart","stopPropagation","onTouchEnd","hasOwnProperty","ReactDOM","createPortal","inputRef","labelChange","React","Component","types","GraphPropsType","isRequired","ToolPropTypeFields","_default"],"sources":["../../../src/tools/point/component.jsx"],"sourcesContent":["import React from 'react';\nimport { BasePoint } from '../shared/point';\nimport { ToolPropTypeFields } from '../shared/types';\nimport { types } from '@pie-lib/plot';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport { isEmpty, isEqual } from 'lodash-es';\n\nexport class Point extends React.Component {\n static propTypes = {\n graphProps: types.GraphPropsType.isRequired,\n ...ToolPropTypeFields,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n move = (p) => {\n const mark = { ...this.state.mark, ...p };\n this.setState({ mark });\n };\n\n startDrag = () => {\n const { onDragStart } = this.props;\n const update = { ...this.props.mark };\n\n if (update.label === '') {\n delete update.label;\n }\n this.setState({ mark: update });\n if (onDragStart) onDragStart();\n };\n\n stopDrag = () => {\n const { onChange, onDragStop } = this.props;\n const mark = { ...this.state.mark };\n this.setState({ mark: undefined }, () => {\n if (!isEqual(this.props.mark, mark)) {\n onChange(this.props.mark, mark);\n }\n if (onDragStop) onDragStop();\n });\n };\n\n labelChange = (label) => {\n const { onChange } = this.props;\n const update = { ...this.props.mark, label };\n\n if (!label || isEmpty(label)) {\n delete update.label;\n }\n\n this.setState({ mark: update }, () => {\n onChange(this.props.mark, update);\n });\n };\n\n clickPoint = () => {\n const { labelModeEnabled, onChange, onClick, mark } = this.props;\n\n if (!labelModeEnabled) {\n onClick(mark);\n return;\n }\n\n if (mark.disabled) {\n return;\n }\n\n onChange(mark, { label: '', ...mark });\n\n // MarkLabel is only rendered after the parent re-renders with the new label prop,\n // so we defer focus until after that render cycle completes.\n setTimeout(() => {\n if (this.input) {\n this.input.focus();\n }\n }, 0);\n };\n\n render() {\n const { coordinatesOnHover, graphProps, labelNode, labelModeEnabled } = this.props;\n const mark = this.state.mark ? this.state.mark : this.props.mark;\n\n return (\n <React.Fragment>\n <BasePoint\n {...mark}\n coordinatesOnHover={coordinatesOnHover}\n graphProps={graphProps}\n labelNode={labelNode}\n onDrag={this.move}\n onDragStart={this.startDrag}\n onDragStop={this.stopDrag}\n onClick={this.clickPoint}\n onTouchStart={(e) => {\n e.stopPropagation();\n this.clickPoint();\n }}\n onTouchEnd={(e) => {\n e.stopPropagation();\n this.clickPoint();\n }}\n />\n {labelNode &&\n Object.prototype.hasOwnProperty.call(mark, 'label') &&\n ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input = r)}\n disabled={!labelModeEnabled}\n mark={mark}\n graphProps={graphProps}\n onChange={this.labelChange}\n />,\n labelNode,\n )}\n </React.Fragment>\n );\n }\n}\n\nexport default Point;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,9 +31,10 @@ var StyledLine = (0, _styles.styled)('line')(function (_ref) {
|
|
|
31
31
|
var isDisabled = _ref.disabled,
|
|
32
32
|
correctness = _ref.correctness;
|
|
33
33
|
return _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
34
|
-
strokeWidth:
|
|
34
|
+
strokeWidth: 7,
|
|
35
35
|
transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',
|
|
36
36
|
stroke: 'transparent',
|
|
37
|
+
pointerEvents: 'stroke',
|
|
37
38
|
'&:hover': {
|
|
38
39
|
strokeWidth: 4,
|
|
39
40
|
stroke: _renderUi.color.defaults.BLACK
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledLine","styled","_ref","isDisabled","disabled","correctness","strokeWidth","transition","stroke","color","defaults","BLACK","correct","incorrect","missing","strokeDasharray","RawLine","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","graphProps","from","to","className","rest","_objectWithoutProperties2","scale","createElement","_extends2","x1","x","y1","y","x2","y2","React","Component","PropTypes","string","types","PointType","GraphPropsType","isRequired","bool","Line","exports","_default","gridDraggable","bounds","_ref2","domain","range","area","lineToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/line.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport * as utils from '../../utils';\nimport { correct, disabled, incorrect, missing } from '../shared/styles';\n\nconst StyledLine = styled('line')(({ disabled: isDisabled, correctness }) => ({\n strokeWidth:
|
|
1
|
+
{"version":3,"file":"line.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledLine","styled","_ref","isDisabled","disabled","correctness","strokeWidth","transition","stroke","pointerEvents","color","defaults","BLACK","correct","incorrect","missing","strokeDasharray","RawLine","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","graphProps","from","to","className","rest","_objectWithoutProperties2","scale","createElement","_extends2","x1","x","y1","y","x2","y2","React","Component","PropTypes","string","types","PointType","GraphPropsType","isRequired","bool","Line","exports","_default","gridDraggable","bounds","_ref2","domain","range","area","lineToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/line.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport * as utils from '../../utils';\nimport { correct, disabled, incorrect, missing } from '../shared/styles';\n\nconst StyledLine = styled('line')(({ disabled: isDisabled, correctness }) => ({\n strokeWidth: 7,\n transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',\n stroke: 'transparent',\n pointerEvents: 'stroke',\n '&:hover': {\n strokeWidth: 4,\n stroke: color.defaults.BLACK,\n },\n ...(isDisabled && {\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n strokeWidth: 1,\n strokeDasharray: '4 3',\n }),\n}));\n\nclass RawLine extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n from: types.PointType,\n to: types.PointType,\n graphProps: types.GraphPropsType.isRequired,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n from: {},\n to: {},\n };\n\n render() {\n // eslint-disable-next-line no-unused-vars\n const { graphProps, from, to, className, disabled, correctness, ...rest } = this.props;\n const { scale } = graphProps;\n return (\n <StyledLine\n x1={scale.x(from.x)}\n y1={scale.y(from.y)}\n x2={scale.x(to.x)}\n y2={scale.y(to.y)}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n }\n}\n\nexport const Line = RawLine;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { from, to } = props;\n const area = utils.lineToArea(from, to);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { from } = props;\n return from;\n },\n fromDelta: (props, delta) => {\n const { from, to } = props;\n return {\n from: utils.point(from).add(utils.point(delta)),\n to: utils.point(to).add(utils.point(delta)),\n };\n },\n})(Line);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,8 +18,8 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
18
18
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
19
|
var _styles = require("@mui/material/styles");
|
|
20
20
|
var _plot = require("@pie-lib/plot");
|
|
21
|
-
var utils = _interopRequireWildcard(require("../../utils"));
|
|
22
21
|
var _renderUi = require("@pie-lib/render-ui");
|
|
22
|
+
var utils = _interopRequireWildcard(require("../../utils"));
|
|
23
23
|
var _styles2 = require("../shared/styles");
|
|
24
24
|
var _excluded = ["points", "className", "disabled", "correctness", "graphProps", "closed"];
|
|
25
25
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
@@ -28,27 +28,25 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
28
28
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
29
29
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
30
30
|
var StyledPolygon = (0, _styles.styled)('polygon')(function (_ref) {
|
|
31
|
-
var
|
|
32
|
-
isDisabled = _ref.disabled,
|
|
31
|
+
var isDisabled = _ref.disabled,
|
|
33
32
|
correctness = _ref.correctness;
|
|
34
33
|
return _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
35
|
-
fill: (0, _styles.alpha)(
|
|
34
|
+
fill: (0, _styles.alpha)((0, _styles2.graphingShapeFill)(), 0.2),
|
|
36
35
|
strokeWidth: 2,
|
|
37
36
|
stroke: _renderUi.color.defaults.BLACK
|
|
38
|
-
}, isDisabled && (0, _styles2.
|
|
37
|
+
}, isDisabled && (0, _styles2.disabledSecondary)('stroke')), correctness === 'correct' && (0, _styles2.correct)('stroke')), correctness === 'incorrect' && (0, _styles2.incorrect)('stroke')), correctness === 'missing' && _objectSpread(_objectSpread({}, (0, _styles2.missing)('stroke')), {}, {
|
|
39
38
|
stroke: 'inherit'
|
|
40
39
|
}));
|
|
41
40
|
});
|
|
42
41
|
var StyledPolyline = (0, _styles.styled)('polyline')(function (_ref2) {
|
|
43
|
-
var
|
|
44
|
-
isDisabled = _ref2.disabled,
|
|
42
|
+
var isDisabled = _ref2.disabled,
|
|
45
43
|
correctness = _ref2.correctness;
|
|
46
44
|
return _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
47
|
-
fill: (0, _styles.alpha)(
|
|
45
|
+
fill: (0, _styles.alpha)((0, _styles2.graphingShapeFill)(), 0.0),
|
|
48
46
|
strokeWidth: 2,
|
|
49
47
|
stroke: _renderUi.color.defaults.BLACK,
|
|
50
48
|
pointerEvents: 'none'
|
|
51
|
-
}, isDisabled && (0, _styles2.
|
|
49
|
+
}, isDisabled && (0, _styles2.disabledSecondary)('stroke')), correctness === 'correct' && (0, _styles2.correct)('stroke')), correctness === 'incorrect' && (0, _styles2.incorrect)('stroke')), correctness === 'missing' && _objectSpread(_objectSpread({}, (0, _styles2.missing)('stroke')), {}, {
|
|
52
50
|
stroke: 'inherit'
|
|
53
51
|
}));
|
|
54
52
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","utils","_interopRequireWildcard","_renderUi","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledPolygon","styled","_ref","theme","isDisabled","disabled","correctness","fill","alpha","palette","primary","light","strokeWidth","stroke","color","defaults","BLACK","correct","incorrect","missing","StyledPolyline","_ref2","pointerEvents","getPointString","exports","points","scale","map","p","scaledPoint","x","y","concat","join","RawPolygon","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","className","graphProps","closed","rest","_objectWithoutProperties2","pointString","createElement","_extends2","React","Component","PropTypes","string","bool","arrayOf","types","PointType","GraphPropsType","isRequired","Polygon","_default","gridDraggable","bounds","_ref3","domain","range","area","polygonToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { alpha, styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport * as utils from '../../utils';\nimport { color } from '@pie-lib/render-ui';\nimport { correct, disabled, incorrect, missing } from '../shared/styles';\n\nconst StyledPolygon = styled('polygon')(({ theme, disabled: isDisabled, correctness }) => ({\n fill: alpha(theme.palette.primary.light, 0.2),\n strokeWidth: 2,\n stroke: color.defaults.BLACK,\n ...(isDisabled && disabled('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nconst StyledPolyline = styled('polyline')(({ theme, disabled: isDisabled, correctness }) => ({\n fill: alpha(theme.palette.primary.light, 0.0),\n strokeWidth: 2,\n stroke: color.defaults.BLACK,\n pointerEvents: 'none',\n ...(isDisabled && disabled('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nexport const getPointString = (points, scale) => {\n return (points || [])\n .map((p) => {\n const scaledPoint = {\n x: scale.x(p.x),\n y: scale.y(p.y),\n };\n return `${scaledPoint.x},${scaledPoint.y}`;\n })\n .join(' ');\n};\n\nexport class RawPolygon extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n disabled: PropTypes.bool,\n points: PropTypes.arrayOf(types.PointType),\n graphProps: types.GraphPropsType.isRequired,\n closed: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n points: [],\n };\n\n render() {\n const { points, className, disabled, correctness, graphProps, closed, ...rest } = this.props;\n const { scale } = graphProps;\n\n const pointString = getPointString(points, scale);\n\n if (closed) {\n return (\n <StyledPolygon\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n } else {\n return (\n <StyledPolyline\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n }\n }\n}\n\nexport const Polygon = RawPolygon;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { points } = props;\n const area = utils.polygonToArea(points);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { points } = props;\n return points[0];\n },\n fromDelta: (props, delta) => {\n const { points } = props;\n\n return points.map((p) => utils.point(p).add(utils.point(delta)));\n },\n})(Polygon);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledPolygon","styled","_ref","isDisabled","disabled","correctness","fill","alpha","graphingShapeFill","strokeWidth","stroke","color","defaults","BLACK","disabledSecondary","correct","incorrect","missing","StyledPolyline","_ref2","pointerEvents","getPointString","exports","points","scale","map","p","scaledPoint","x","y","concat","join","RawPolygon","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","className","graphProps","closed","rest","_objectWithoutProperties2","pointString","createElement","_extends2","React","Component","PropTypes","string","bool","arrayOf","types","PointType","GraphPropsType","isRequired","Polygon","_default","gridDraggable","bounds","_ref3","domain","range","area","polygonToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { alpha, styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\n\nimport * as utils from '../../utils';\nimport { correct, disabledSecondary, incorrect, missing, graphingShapeFill } from '../shared/styles';\n\nconst StyledPolygon = styled('polygon')(({ disabled: isDisabled, correctness }) => ({\n fill: alpha(graphingShapeFill(), 0.2),\n strokeWidth: 2,\n stroke: color.defaults.BLACK,\n ...(isDisabled && disabledSecondary('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nconst StyledPolyline = styled('polyline')(({ disabled: isDisabled, correctness }) => ({\n fill: alpha(graphingShapeFill(), 0.0),\n strokeWidth: 2,\n stroke: color.defaults.BLACK,\n pointerEvents: 'none',\n ...(isDisabled && disabledSecondary('stroke')),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && {\n ...missing('stroke'),\n stroke: 'inherit',\n }),\n}));\n\nexport const getPointString = (points, scale) => {\n return (points || [])\n .map((p) => {\n const scaledPoint = {\n x: scale.x(p.x),\n y: scale.y(p.y),\n };\n return `${scaledPoint.x},${scaledPoint.y}`;\n })\n .join(' ');\n};\n\nexport class RawPolygon extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n disabled: PropTypes.bool,\n points: PropTypes.arrayOf(types.PointType),\n graphProps: types.GraphPropsType.isRequired,\n closed: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n points: [],\n };\n\n render() {\n const { points, className, disabled, correctness, graphProps, closed, ...rest } = this.props;\n const { scale } = graphProps;\n\n const pointString = getPointString(points, scale);\n\n if (closed) {\n return (\n <StyledPolygon\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n } else {\n return (\n <StyledPolyline\n points={pointString}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n );\n }\n }\n}\n\nexport const Polygon = RawPolygon;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { points } = props;\n const area = utils.polygonToArea(points);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { points } = props;\n return points[0];\n },\n fromDelta: (props, delta) => {\n const { points } = props;\n\n return points.map((p) => utils.point(p).add(utils.point(delta)));\n },\n})(Polygon);\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAEA,IAAAK,KAAA,GAAAC,uBAAA,CAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AAAqG,IAAAQ,SAAA;AAAA,SAAAF,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,wBAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAmB,WAAAnB,CAAA,EAAAK,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAArB,CAAA,EAAAsB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAApB,CAAA,EAAAyB,WAAA,IAAApB,CAAA,CAAAqB,KAAA,CAAA1B,CAAA,EAAAD,CAAA;AAAA,SAAAuB,0BAAA,cAAAtB,CAAA,IAAA2B,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAd,IAAA,CAAAQ,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAA3B,CAAA,aAAAsB,yBAAA,YAAAA,0BAAA,aAAAtB,CAAA;AAAA,SAAA8B,QAAA/B,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAgB,MAAA,CAAAe,IAAA,CAAAhC,CAAA,OAAAiB,MAAA,CAAAgB,qBAAA,QAAA3B,CAAA,GAAAW,MAAA,CAAAgB,qBAAA,CAAAjC,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAA4B,MAAA,WAAA/B,CAAA,WAAAc,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAG,CAAA,EAAAgC,UAAA,OAAAlC,CAAA,CAAAmC,IAAA,CAAAT,KAAA,CAAA1B,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAAoC,cAAArC,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAmC,SAAA,CAAAC,MAAA,EAAApC,CAAA,UAAAF,CAAA,WAAAqC,SAAA,CAAAnC,CAAA,IAAAmC,SAAA,CAAAnC,CAAA,QAAAA,CAAA,OAAA4B,OAAA,CAAAd,MAAA,CAAAhB,CAAA,OAAAuC,OAAA,WAAArC,CAAA,QAAAsC,gBAAA,aAAAzC,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAc,MAAA,CAAAyB,yBAAA,GAAAzB,MAAA,CAAA0B,gBAAA,CAAA3C,CAAA,EAAAiB,MAAA,CAAAyB,yBAAA,CAAAzC,CAAA,KAAA8B,OAAA,CAAAd,MAAA,CAAAhB,CAAA,GAAAuC,OAAA,WAAArC,CAAA,IAAAc,MAAA,CAAAC,cAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAc,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAErG,IAAM4C,aAAa,GAAG,IAAAC,cAAM,EAAC,SAAS,CAAC,CAAC,UAAAC,IAAA;EAAA,IAAaC,UAAU,GAAAD,IAAA,CAApBE,QAAQ;IAAcC,WAAW,GAAAH,IAAA,CAAXG,WAAW;EAAA,OAAAZ,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA;IAC1Ea,IAAI,EAAE,IAAAC,aAAK,EAAC,IAAAC,0BAAiB,EAAC,CAAC,EAAE,GAAG,CAAC;IACrCC,WAAW,EAAE,CAAC;IACdC,MAAM,EAAEC,eAAK,CAACC,QAAQ,CAACC;EAAK,GACxBV,UAAU,IAAI,IAAAW,0BAAiB,EAAC,QAAQ,CAAC,GACzCT,WAAW,KAAK,SAAS,IAAI,IAAAU,gBAAO,EAAC,QAAQ,CAAC,GAC9CV,WAAW,KAAK,WAAW,IAAI,IAAAW,kBAAS,EAAC,QAAQ,CAAC,GAClDX,WAAW,KAAK,SAAS,IAAAZ,aAAA,CAAAA,aAAA,KACxB,IAAAwB,gBAAO,EAAC,QAAQ,CAAC;IACpBP,MAAM,EAAE;EAAS,EAClB;AAAA,CACD,CAAC;AAEH,IAAMQ,cAAc,GAAG,IAAAjB,cAAM,EAAC,UAAU,CAAC,CAAC,UAAAkB,KAAA;EAAA,IAAahB,UAAU,GAAAgB,KAAA,CAApBf,QAAQ;IAAcC,WAAW,GAAAc,KAAA,CAAXd,WAAW;EAAA,OAAAZ,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA;IAC5Ea,IAAI,EAAE,IAAAC,aAAK,EAAC,IAAAC,0BAAiB,EAAC,CAAC,EAAE,GAAG,CAAC;IACrCC,WAAW,EAAE,CAAC;IACdC,MAAM,EAAEC,eAAK,CAACC,QAAQ,CAACC,KAAK;IAC5BO,aAAa,EAAE;EAAM,GACjBjB,UAAU,IAAI,IAAAW,0BAAiB,EAAC,QAAQ,CAAC,GACzCT,WAAW,KAAK,SAAS,IAAI,IAAAU,gBAAO,EAAC,QAAQ,CAAC,GAC9CV,WAAW,KAAK,WAAW,IAAI,IAAAW,kBAAS,EAAC,QAAQ,CAAC,GAClDX,WAAW,KAAK,SAAS,IAAAZ,aAAA,CAAAA,aAAA,KACxB,IAAAwB,gBAAO,EAAC,QAAQ,CAAC;IACpBP,MAAM,EAAE;EAAS,EAClB;AAAA,CACD,CAAC;AAEI,IAAMW,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG,SAAjBA,cAAcA,CAAIE,MAAM,EAAEC,KAAK,EAAK;EAC/C,OAAO,CAACD,MAAM,IAAI,EAAE,EACjBE,GAAG,CAAC,UAACC,CAAC,EAAK;IACV,IAAMC,WAAW,GAAG;MAClBC,CAAC,EAAEJ,KAAK,CAACI,CAAC,CAACF,CAAC,CAACE,CAAC,CAAC;MACfC,CAAC,EAAEL,KAAK,CAACK,CAAC,CAACH,CAAC,CAACG,CAAC;IAChB,CAAC;IACD,UAAAC,MAAA,CAAUH,WAAW,CAACC,CAAC,OAAAE,MAAA,CAAIH,WAAW,CAACE,CAAC;EAC1C,CAAC,CAAC,CACDE,IAAI,CAAC,GAAG,CAAC;AACd,CAAC;AAAC,IAEWC,UAAU,GAAAV,OAAA,CAAAU,UAAA,0BAAAC,gBAAA;EAAA,SAAAD,WAAA;IAAA,IAAAE,gBAAA,mBAAAF,UAAA;IAAA,OAAAxD,UAAA,OAAAwD,UAAA,EAAAtC,SAAA;EAAA;EAAA,IAAAyC,UAAA,aAAAH,UAAA,EAAAC,gBAAA;EAAA,WAAAG,aAAA,aAAAJ,UAAA;IAAAK,GAAA;IAAAC,KAAA,EAcrB,SAAAC,MAAMA,CAAA,EAAG;MACP,IAAAC,WAAA,GAAkF,IAAI,CAACC,KAAK;QAApFlB,MAAM,GAAAiB,WAAA,CAANjB,MAAM;QAAEmB,SAAS,GAAAF,WAAA,CAATE,SAAS;QAAEtC,QAAQ,GAAAoC,WAAA,CAARpC,QAAQ;QAAEC,WAAW,GAAAmC,WAAA,CAAXnC,WAAW;QAAEsC,UAAU,GAAAH,WAAA,CAAVG,UAAU;QAAEC,MAAM,GAAAJ,WAAA,CAANI,MAAM;QAAKC,IAAI,OAAAC,yBAAA,aAAAN,WAAA,EAAArF,SAAA;MAC7E,IAAQqE,KAAK,GAAKmB,UAAU,CAApBnB,KAAK;MAEb,IAAMuB,WAAW,GAAG1B,cAAc,CAACE,MAAM,EAAEC,KAAK,CAAC;MAEjD,IAAIoB,MAAM,EAAE;QACV,oBACEnG,MAAA,YAAAuG,aAAA,CAAChD,aAAa,MAAAiD,SAAA;UACZ1B,MAAM,EAAEwB,WAAY;UACpBL,SAAS,EAAEA,SAAU;UACrBtC,QAAQ,EAAEA,QAAS;UACnBC,WAAW,EAAEA;QAAY,GACrBwC,IAAI,CACT,CAAC;MAEN,CAAC,MAAM;QACL,oBACEpG,MAAA,YAAAuG,aAAA,CAAC9B,cAAc,MAAA+B,SAAA;UACb1B,MAAM,EAAEwB,WAAY;UACpBL,SAAS,EAAEA,SAAU;UACrBtC,QAAQ,EAAEA,QAAS;UACnBC,WAAW,EAAEA;QAAY,GACrBwC,IAAI,CACT,CAAC;MAEN;IACF;EAAC;AAAA,EAzC6BK,iBAAK,CAACC,SAAS;AAAA,IAAAtD,gBAAA,aAAlCmC,UAAU,eACF;EACjBU,SAAS,EAAEU,qBAAS,CAACC,MAAM;EAC3BjD,QAAQ,EAAEgD,qBAAS,CAACE,IAAI;EACxB/B,MAAM,EAAE6B,qBAAS,CAACG,OAAO,CAACC,WAAK,CAACC,SAAS,CAAC;EAC1Cd,UAAU,EAAEa,WAAK,CAACE,cAAc,CAACC,UAAU;EAC3Cf,MAAM,EAAEQ,qBAAS,CAACE,IAAI,CAACK,UAAU;EACjCtD,WAAW,EAAE+C,qBAAS,CAACC;AACzB,CAAC;AAAA,IAAAxD,gBAAA,aARUmC,UAAU,kBAUC;EACpBT,MAAM,EAAE;AACV,CAAC;AAgCI,IAAMqC,OAAO,GAAAtC,OAAA,CAAAsC,OAAA,GAAG5B,UAAU;AAAC,IAAA6B,QAAA,GAAAvC,OAAA,cAEnB,IAAAwC,mBAAa,EAAC;EAC3BC,MAAM,EAAE,SAARA,MAAMA,CAAGtB,KAAK,EAAAuB,KAAA,EAAwB;IAAA,IAApBC,MAAM,GAAAD,KAAA,CAANC,MAAM;MAAEC,KAAK,GAAAF,KAAA,CAALE,KAAK;IAC7B,IAAQ3C,MAAM,GAAKkB,KAAK,CAAhBlB,MAAM;IACd,IAAM4C,IAAI,GAAGnH,KAAK,CAACoH,aAAa,CAAC7C,MAAM,CAAC;IACxC,OAAOvE,KAAK,CAAC+G,MAAM,CAACI,IAAI,EAAEF,MAAM,EAAEC,KAAK,CAAC;EAC1C,CAAC;EACDG,WAAW,EAAE,SAAbA,WAAWA,CAAG5B,KAAK,EAAK;IACtB,IAAQlB,MAAM,GAAKkB,KAAK,CAAhBlB,MAAM;IACd,OAAOA,MAAM,CAAC,CAAC,CAAC;EAClB,CAAC;EACD+C,SAAS,EAAE,SAAXA,SAASA,CAAG7B,KAAK,EAAE8B,KAAK,EAAK;IAC3B,IAAQhD,MAAM,GAAKkB,KAAK,CAAhBlB,MAAM;IAEd,OAAOA,MAAM,CAACE,GAAG,CAAC,UAACC,CAAC;MAAA,OAAK1E,KAAK,CAACwH,KAAK,CAAC9C,CAAC,CAAC,CAAC+C,GAAG,CAACzH,KAAK,CAACwH,KAAK,CAACD,KAAK,CAAC,CAAC;IAAA,EAAC;EAClE;AACF,CAAC,CAAC,CAACX,OAAO,CAAC","ignoreList":[]}
|
|
@@ -25,7 +25,7 @@ var StyledRayRoot = (0, _styles.styled)('g')(function (_ref) {
|
|
|
25
25
|
disabled = _ref.disabled,
|
|
26
26
|
correctness = _ref.correctness;
|
|
27
27
|
return {
|
|
28
|
-
'& line': _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _line.styles.line(theme)), disabled && _line.styles.disabledSecondary(theme)), correctness === 'correct' && _line.styles.correct(theme, 'stroke')), correctness === 'incorrect' && _line.styles.incorrect(theme, 'stroke')), correctness === 'missing' && _line.styles.missing(theme, 'stroke')),
|
|
28
|
+
'& line:not(.hit-area)': _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _line.styles.line(theme)), disabled && _line.styles.disabledSecondary(theme)), correctness === 'correct' && _line.styles.correct(theme, 'stroke')), correctness === 'incorrect' && _line.styles.incorrect(theme, 'stroke')), correctness === 'missing' && _line.styles.missing(theme, 'stroke')),
|
|
29
29
|
'& .enabledArrow': _objectSpread({}, _line.styles.arrow(theme)),
|
|
30
30
|
'& .disabledArrow': _objectSpread({}, _line.styles.disabledArrow(theme)),
|
|
31
31
|
'& .correctArrow': _objectSpread({}, _line.styles.correct(theme)),
|
|
@@ -59,7 +59,19 @@ var RayLine = exports.RayLine = function RayLine(props) {
|
|
|
59
59
|
size: (0, _utils.thinnerShapesNeeded)(graphProps) ? 4 : 5,
|
|
60
60
|
id: "".concat(finalMarkerId, "-").concat(suffix),
|
|
61
61
|
className: (0, _classnames["default"])(suffix === 'enabled' ? 'enabledArrow' : suffix === 'disabled' ? 'disabledArrow' : "".concat(suffix, "Arrow"))
|
|
62
|
-
})), /*#__PURE__*/_react["default"].createElement("line",
|
|
62
|
+
})), /*#__PURE__*/_react["default"].createElement("line", {
|
|
63
|
+
x1: scale.x(from.x),
|
|
64
|
+
y1: scale.y(from.y),
|
|
65
|
+
x2: scale.x(aToB.x),
|
|
66
|
+
y2: scale.y(aToB.y),
|
|
67
|
+
className: "hit-area",
|
|
68
|
+
stroke: "transparent",
|
|
69
|
+
strokeWidth: 7,
|
|
70
|
+
style: {
|
|
71
|
+
cursor: 'pointer',
|
|
72
|
+
pointerEvents: 'stroke'
|
|
73
|
+
}
|
|
74
|
+
}), /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
|
|
63
75
|
x1: scale.x(from.x),
|
|
64
76
|
y1: scale.y(from.y),
|
|
65
77
|
x2: scale.x(aToB.x),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_arrowHead","_plot","_classnames","_utils","_styles","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","StyledRayRoot","styled","_ref","theme","disabled","correctness","styles","line","disabledSecondary","correct","incorrect","missing","arrow","disabledArrow","RayLine","exports","props","markerId","genUid","graphProps","from","to","className","propMarkerId","rest","_objectWithoutProperties2","scale","_getAdjustedGraphLimi","getAdjustedGraphLimits","domain","range","_trig$edges","trig","edges","_trig$edges2","_slicedToArray2","aToB","suffix","finalMarkerId","createElement","ArrowMarker","size","thinnerShapesNeeded","id","concat","classNames","
|
|
1
|
+
{"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_arrowHead","_plot","_classnames","_utils","_styles","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","StyledRayRoot","styled","_ref","theme","disabled","correctness","styles","line","disabledSecondary","correct","incorrect","missing","arrow","disabledArrow","RayLine","exports","props","markerId","genUid","graphProps","from","to","className","propMarkerId","rest","_objectWithoutProperties2","scale","_getAdjustedGraphLimi","getAdjustedGraphLimits","domain","range","_trig$edges","trig","edges","_trig$edges2","_slicedToArray2","aToB","suffix","finalMarkerId","createElement","ArrowMarker","size","thinnerShapesNeeded","id","concat","classNames","x1","x","y1","y","x2","y2","stroke","strokeWidth","style","cursor","pointerEvents","_extends2","markerEnd","propTypes","PropTypes","string","bool","any","types","PointType","Ray","lineBase","Component","lineToolComponent","_default"],"sources":["../../../src/tools/ray/component.jsx"],"sourcesContent":["import { lineBase, lineToolComponent, styles } from '../shared/line';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { ArrowMarker, genUid } from '../shared/arrow-head';\nimport { trig, types } from '@pie-lib/plot';\nimport classNames from 'classnames';\nimport { getAdjustedGraphLimits, thinnerShapesNeeded } from '../../utils';\nimport { styled } from '@mui/material/styles';\n\nconst StyledRayRoot = styled('g')(({ theme, disabled, correctness }) => ({\n '& line:not(.hit-area)': {\n ...styles.line(theme),\n ...(disabled && styles.disabledSecondary(theme)),\n ...(correctness === 'correct' && styles.correct(theme, 'stroke')),\n ...(correctness === 'incorrect' && styles.incorrect(theme, 'stroke')),\n ...(correctness === 'missing' && styles.missing(theme, 'stroke')),\n },\n '& .enabledArrow': {\n ...styles.arrow(theme),\n },\n '& .disabledArrow': {\n ...styles.disabledArrow(theme),\n },\n '& .correctArrow': {\n ...styles.correct(theme),\n },\n '& .incorrectArrow': {\n ...styles.incorrect(theme),\n },\n '& .missingArrow': {\n ...styles.missing(theme),\n },\n}));\n\nexport const RayLine = (props) => {\n const markerId = genUid();\n const { graphProps, from, to, disabled, correctness, className, markerId: propMarkerId, ...rest } = props;\n const { scale } = graphProps;\n const { domain, range } = getAdjustedGraphLimits(graphProps);\n const [aToB] = trig.edges(domain, range)(from, to);\n const suffix = correctness || (disabled && 'disabled') || 'enabled';\n const finalMarkerId = propMarkerId || markerId;\n\n return (\n <StyledRayRoot disabled={disabled} correctness={correctness}>\n <defs>\n <ArrowMarker\n size={thinnerShapesNeeded(graphProps) ? 4 : 5}\n id={`${finalMarkerId}-${suffix}`}\n className={classNames(\n suffix === 'enabled' ? 'enabledArrow' : suffix === 'disabled' ? 'disabledArrow' : `${suffix}Arrow`,\n )}\n />\n </defs>\n {/* Transparent wider line captures pointer events (+2px each side) */}\n <line\n x1={scale.x(from.x)}\n y1={scale.y(from.y)}\n x2={scale.x(aToB.x)}\n y2={scale.y(aToB.y)}\n className=\"hit-area\"\n stroke=\"transparent\"\n strokeWidth={7}\n style={{ cursor: 'pointer', pointerEvents: 'stroke' }}\n />\n <line\n x1={scale.x(from.x)}\n y1={scale.y(from.y)}\n x2={scale.x(aToB.x)}\n y2={scale.y(aToB.y)}\n className={className}\n markerEnd={`url(#${finalMarkerId}-${suffix})`}\n {...rest}\n />\n </StyledRayRoot>\n );\n};\n\nRayLine.propTypes = {\n className: PropTypes.string,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n graphProps: PropTypes.any,\n from: types.PointType,\n to: types.PointType,\n markerId: PropTypes.string,\n};\n\nconst Ray = lineBase(RayLine);\nconst Component = lineToolComponent(Ray);\n\nexport default Component;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,17 +31,30 @@ var Line = exports.Line = function Line(props) {
|
|
|
31
31
|
to = props.to,
|
|
32
32
|
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
33
33
|
var scale = graphProps.scale;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
var x1 = scale.x(from.x);
|
|
35
|
+
var y1 = scale.y(from.y);
|
|
36
|
+
var x2 = scale.x(to.x);
|
|
37
|
+
var y2 = scale.y(to.y);
|
|
38
|
+
return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
|
|
39
|
+
x1: x1,
|
|
40
|
+
y1: y1,
|
|
41
|
+
x2: x2,
|
|
42
|
+
y2: y2,
|
|
43
|
+
stroke: "transparent",
|
|
44
|
+
strokeWidth: 7,
|
|
45
|
+
style: {
|
|
46
|
+
cursor: 'pointer',
|
|
47
|
+
pointerEvents: 'stroke'
|
|
48
|
+
}
|
|
49
|
+
}), /*#__PURE__*/_react["default"].createElement(StyledLineRoot, (0, _extends2["default"])({
|
|
50
|
+
x1: x1,
|
|
51
|
+
y1: y1,
|
|
52
|
+
x2: x2,
|
|
53
|
+
y2: y2,
|
|
41
54
|
className: className,
|
|
42
55
|
disabled: disabled,
|
|
43
56
|
correctness: correctness
|
|
44
|
-
}, rest));
|
|
57
|
+
}, rest)));
|
|
45
58
|
};
|
|
46
59
|
Line.propTypes = {
|
|
47
60
|
className: _propTypes["default"].string,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_plot","_styles","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","StyledLineRoot","styled","_ref","theme","disabled","correctness","styles","line","disabledSecondary","correct","incorrect","missing","Line","exports","props","className","graphProps","from","to","rest","_objectWithoutProperties2","scale","
|
|
1
|
+
{"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_plot","_styles","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","StyledLineRoot","styled","_ref","theme","disabled","correctness","styles","line","disabledSecondary","correct","incorrect","missing","Line","exports","props","className","graphProps","from","to","rest","_objectWithoutProperties2","scale","x1","x","y1","y","x2","y2","createElement","stroke","strokeWidth","style","cursor","pointerEvents","_extends2","propTypes","PropTypes","string","bool","any","types","PointType","Segment","lineBase","Component","lineToolComponent","_default"],"sources":["../../../src/tools/segment/component.jsx"],"sourcesContent":["import { lineBase, lineToolComponent, styles } from '../shared/line';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { styled } from '@mui/material/styles';\n\nconst StyledLineRoot = styled('line')(({ theme, disabled, correctness }) => ({\n ...styles.line(theme),\n ...(disabled && {\n ...styles.disabled(theme),\n ...styles.disabledSecondary(theme),\n }),\n ...(correctness === 'correct' && styles.correct(theme, 'stroke')),\n ...(correctness === 'incorrect' && styles.incorrect(theme, 'stroke')),\n ...(correctness === 'missing' && styles.missing(theme, 'stroke')),\n}));\n\nexport const Line = (props) => {\n const { className, correctness, disabled, graphProps, from, to, ...rest } = props;\n const { scale } = graphProps;\n const x1 = scale.x(from.x);\n const y1 = scale.y(from.y);\n const x2 = scale.x(to.x);\n const y2 = scale.y(to.y);\n\n return (\n <g>\n {/* Transparent wider line captures pointer events (+2px each side) */}\n <line x1={x1} y1={y1} x2={x2} y2={y2} stroke=\"transparent\" strokeWidth={7} style={{ cursor: 'pointer', pointerEvents: 'stroke' }} />\n <StyledLineRoot\n x1={x1} y1={y1} x2={x2} y2={y2}\n className={className}\n disabled={disabled}\n correctness={correctness}\n {...rest}\n />\n </g>\n );\n};\n\nLine.propTypes = {\n className: PropTypes.string,\n correctness: PropTypes.string,\n disabled: PropTypes.bool,\n graphProps: PropTypes.any,\n from: types.PointType,\n to: types.PointType,\n};\n\nconst Segment = lineBase(Line);\nconst Component = lineToolComponent(Segment);\n\nexport default Component;\n"],"mappings":"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","ignoreList":[]}
|