@pie-lib/graphing 2.15.1-beta.0 → 2.17.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.json +1 -1017
- package/CHANGELOG.md +145 -1
- package/lib/axis/arrow.js +115 -0
- package/lib/axis/arrow.js.map +1 -0
- package/lib/axis/axes.js +415 -0
- package/lib/axis/axes.js.map +1 -0
- package/lib/axis/index.js +26 -0
- package/lib/axis/index.js.map +1 -0
- package/lib/bg.js +139 -0
- package/lib/bg.js.map +1 -0
- package/lib/container/actions.js +24 -0
- package/lib/container/actions.js.map +1 -0
- package/lib/container/index.js +163 -0
- package/lib/container/index.js.map +1 -0
- package/lib/container/marks.js +27 -0
- package/lib/container/marks.js.map +1 -0
- package/lib/container/middleware.js +25 -0
- package/lib/container/middleware.js.map +1 -0
- package/lib/container/reducer.js +25 -0
- package/lib/container/reducer.js.map +1 -0
- package/lib/coordinates-label.js +109 -0
- package/lib/coordinates-label.js.map +1 -0
- package/lib/graph-with-controls.js +359 -0
- package/lib/graph-with-controls.js.map +1 -0
- package/lib/graph.js +371 -0
- package/lib/graph.js.map +1 -0
- package/lib/grid-setup.js +462 -0
- package/lib/grid-setup.js.map +1 -0
- package/lib/grid.js +176 -0
- package/lib/grid.js.map +1 -0
- package/lib/index.js +59 -0
- package/lib/index.js.map +1 -0
- package/lib/key-legend.js +246 -0
- package/lib/key-legend.js.map +1 -0
- package/lib/label-svg-icon.js +56 -0
- package/lib/label-svg-icon.js.map +1 -0
- package/lib/labels.js +299 -0
- package/lib/labels.js.map +1 -0
- package/lib/mark-label.js +321 -0
- package/lib/mark-label.js.map +1 -0
- package/lib/shared/index.js +136 -0
- package/lib/toggle-bar.js +336 -0
- package/lib/toggle-bar.js.map +1 -0
- package/lib/tool-menu.js +112 -0
- package/lib/tool-menu.js.map +1 -0
- package/lib/tools/absolute/component.js +35 -0
- package/lib/tools/absolute/component.js.map +1 -0
- package/lib/tools/absolute/index.js +63 -0
- package/lib/tools/absolute/index.js.map +1 -0
- package/lib/tools/circle/bg-circle.js +173 -0
- package/lib/tools/circle/bg-circle.js.map +1 -0
- package/lib/tools/circle/component.js +406 -0
- package/lib/tools/circle/component.js.map +1 -0
- package/lib/tools/circle/index.js +51 -0
- package/lib/tools/circle/index.js.map +1 -0
- package/lib/tools/exponential/component.js +34 -0
- package/lib/tools/exponential/component.js.map +1 -0
- package/lib/tools/exponential/index.js +71 -0
- package/lib/tools/exponential/index.js.map +1 -0
- package/lib/tools/index.js +99 -0
- package/lib/tools/index.js.map +1 -0
- package/lib/tools/line/component.js +103 -0
- package/lib/tools/line/component.js.map +1 -0
- package/lib/tools/line/index.js +16 -0
- package/lib/tools/line/index.js.map +1 -0
- package/lib/tools/parabola/component.js +34 -0
- package/lib/tools/parabola/component.js.map +1 -0
- package/lib/tools/parabola/index.js +63 -0
- package/lib/tools/parabola/index.js.map +1 -0
- package/lib/tools/point/component.js +186 -0
- package/lib/tools/point/component.js.map +1 -0
- package/lib/tools/point/index.js +32 -0
- package/lib/tools/point/index.js.map +1 -0
- package/lib/tools/polygon/component.js +518 -0
- package/lib/tools/polygon/component.js.map +1 -0
- package/lib/tools/polygon/index.js +106 -0
- package/lib/tools/polygon/index.js.map +1 -0
- package/lib/tools/polygon/line.js +157 -0
- package/lib/tools/polygon/line.js.map +1 -0
- package/lib/tools/polygon/polygon.js +165 -0
- package/lib/tools/polygon/polygon.js.map +1 -0
- package/lib/tools/ray/component.js +102 -0
- package/lib/tools/ray/component.js.map +1 -0
- package/lib/tools/ray/index.js +16 -0
- package/lib/tools/ray/index.js.map +1 -0
- package/lib/tools/segment/component.js +75 -0
- package/lib/tools/segment/component.js.map +1 -0
- package/lib/tools/segment/index.js +16 -0
- package/lib/tools/segment/index.js.map +1 -0
- package/lib/tools/shared/arrow-head.js +70 -0
- package/lib/tools/shared/arrow-head.js.map +1 -0
- package/lib/tools/shared/icons/CorrectSVG.js +36 -0
- package/lib/tools/shared/icons/CorrectSVG.js.map +1 -0
- package/lib/tools/shared/icons/IncorrectSVG.js +36 -0
- package/lib/tools/shared/icons/IncorrectSVG.js.map +1 -0
- package/lib/tools/shared/icons/MissingSVG.js +35 -0
- package/lib/tools/shared/icons/MissingSVG.js.map +1 -0
- package/lib/tools/shared/line/index.js +599 -0
- package/lib/tools/shared/line/index.js.map +1 -0
- package/lib/tools/shared/line/line-path.js +151 -0
- package/lib/tools/shared/line/line-path.js.map +1 -0
- package/lib/tools/shared/line/with-root-edge.js +155 -0
- package/lib/tools/shared/line/with-root-edge.js.map +1 -0
- package/lib/tools/shared/point/arrow-point.js +113 -0
- package/lib/tools/shared/point/arrow-point.js.map +1 -0
- package/lib/tools/shared/point/arrow.js +96 -0
- package/lib/tools/shared/point/arrow.js.map +1 -0
- package/lib/tools/shared/point/base-point.js +175 -0
- package/lib/tools/shared/point/base-point.js.map +1 -0
- package/lib/tools/shared/point/index.js +97 -0
- package/lib/tools/shared/point/index.js.map +1 -0
- package/lib/tools/shared/styles.js +58 -0
- package/lib/tools/shared/styles.js.map +1 -0
- package/lib/tools/shared/types.js +23 -0
- package/lib/tools/shared/types.js.map +1 -0
- package/lib/tools/sine/component.js +51 -0
- package/lib/tools/sine/component.js.map +1 -0
- package/lib/tools/sine/index.js +63 -0
- package/lib/tools/sine/index.js.map +1 -0
- package/lib/tools/vector/component.js +88 -0
- package/lib/tools/vector/component.js.map +1 -0
- package/lib/tools/vector/index.js +16 -0
- package/lib/tools/vector/index.js.map +1 -0
- package/lib/undo-redo.js +123 -0
- package/lib/undo-redo.js.map +1 -0
- package/lib/use-debounce.js +32 -0
- package/lib/use-debounce.js.map +1 -0
- package/lib/utils.js +307 -0
- package/lib/utils.js.map +1 -0
- package/package.json +7 -10
- package/src/axis/axes.jsx +1 -1
- package/src/coordinates-label.jsx +1 -1
- package/src/graph-with-controls.jsx +1 -1
- package/src/grid-setup.jsx +1 -1
- package/src/key-legend.jsx +1 -1
- package/src/labels.jsx +1 -1
- package/src/mark-label.jsx +1 -1
- package/src/toggle-bar.jsx +1 -1
- package/src/tools/circle/bg-circle.jsx +1 -1
- package/src/tools/circle/component.jsx +1 -1
- package/src/tools/polygon/line.jsx +1 -1
- package/src/tools/polygon/polygon.jsx +1 -1
- package/src/tools/shared/line/index.jsx +1 -1
- package/src/tools/shared/line/line-path.jsx +1 -1
- package/src/tools/shared/point/index.jsx +1 -1
- package/src/tools/shared/styles.js +1 -1
- package/src/undo-redo.jsx +1 -1
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.RawBp = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
|
+
|
|
14
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
+
|
|
16
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
+
|
|
18
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
+
|
|
20
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
+
|
|
22
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
+
|
|
24
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
25
|
+
|
|
26
|
+
var _react = _interopRequireDefault(require("react"));
|
|
27
|
+
|
|
28
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
29
|
+
|
|
30
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
31
|
+
|
|
32
|
+
var _plot = require("@pie-lib/plot");
|
|
33
|
+
|
|
34
|
+
var _coordinatesLabel = _interopRequireDefault(require("../../../coordinates-label"));
|
|
35
|
+
|
|
36
|
+
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
37
|
+
|
|
38
|
+
var _utils = require("../../../utils");
|
|
39
|
+
|
|
40
|
+
var _MissingSVG = _interopRequireDefault(require("../icons/MissingSVG"));
|
|
41
|
+
|
|
42
|
+
var _CorrectSVG = _interopRequireDefault(require("../icons/CorrectSVG"));
|
|
43
|
+
|
|
44
|
+
var _IncorrectSVG = _interopRequireDefault(require("../icons/IncorrectSVG"));
|
|
45
|
+
|
|
46
|
+
var _excluded = ["classes", "className", "coordinatesOnHover", "x", "y", "disabled", "correctness", "graphProps", "labelNode", "style", "onClick", "onTouchStart", "onTouchEnd"];
|
|
47
|
+
|
|
48
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
49
|
+
|
|
50
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
51
|
+
|
|
52
|
+
var RawBp = /*#__PURE__*/function (_React$Component) {
|
|
53
|
+
(0, _inherits2["default"])(RawBp, _React$Component);
|
|
54
|
+
|
|
55
|
+
var _super = _createSuper(RawBp);
|
|
56
|
+
|
|
57
|
+
function RawBp(props) {
|
|
58
|
+
var _this;
|
|
59
|
+
|
|
60
|
+
(0, _classCallCheck2["default"])(this, RawBp);
|
|
61
|
+
_this = _super.call(this, props);
|
|
62
|
+
_this.state = {
|
|
63
|
+
showCoordinates: false
|
|
64
|
+
};
|
|
65
|
+
return _this;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
(0, _createClass2["default"])(RawBp, [{
|
|
69
|
+
key: "render",
|
|
70
|
+
value: function render() {
|
|
71
|
+
var _this2 = this;
|
|
72
|
+
|
|
73
|
+
var _this$props = this.props,
|
|
74
|
+
classes = _this$props.classes,
|
|
75
|
+
className = _this$props.className,
|
|
76
|
+
coordinatesOnHover = _this$props.coordinatesOnHover,
|
|
77
|
+
x = _this$props.x,
|
|
78
|
+
y = _this$props.y,
|
|
79
|
+
disabled = _this$props.disabled,
|
|
80
|
+
correctness = _this$props.correctness,
|
|
81
|
+
graphProps = _this$props.graphProps,
|
|
82
|
+
labelNode = _this$props.labelNode,
|
|
83
|
+
style = _this$props.style,
|
|
84
|
+
onClick = _this$props.onClick,
|
|
85
|
+
onTouchStart = _this$props.onTouchStart,
|
|
86
|
+
onTouchEnd = _this$props.onTouchEnd,
|
|
87
|
+
rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
|
|
88
|
+
var showCoordinates = this.state.showCoordinates;
|
|
89
|
+
var scale = graphProps.scale;
|
|
90
|
+
var r = (0, _utils.thinnerShapesNeeded)(graphProps) ? 5 : 7;
|
|
91
|
+
var SvgComponent;
|
|
92
|
+
|
|
93
|
+
switch (correctness) {
|
|
94
|
+
case 'missing':
|
|
95
|
+
SvgComponent = _MissingSVG["default"];
|
|
96
|
+
break;
|
|
97
|
+
|
|
98
|
+
case 'correct':
|
|
99
|
+
SvgComponent = _CorrectSVG["default"];
|
|
100
|
+
break;
|
|
101
|
+
|
|
102
|
+
case 'incorrect':
|
|
103
|
+
SvgComponent = _IncorrectSVG["default"];
|
|
104
|
+
break;
|
|
105
|
+
|
|
106
|
+
default:
|
|
107
|
+
SvgComponent = null;
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("circle", {
|
|
112
|
+
style: {
|
|
113
|
+
fill: 'transparent',
|
|
114
|
+
cursor: 'pointer',
|
|
115
|
+
pointerEvents: 'all'
|
|
116
|
+
},
|
|
117
|
+
r: r * 3,
|
|
118
|
+
cx: scale.x(x),
|
|
119
|
+
cy: scale.y(y),
|
|
120
|
+
onMouseEnter: function onMouseEnter() {
|
|
121
|
+
return _this2.setState({
|
|
122
|
+
showCoordinates: true
|
|
123
|
+
});
|
|
124
|
+
},
|
|
125
|
+
onMouseLeave: function onMouseLeave() {
|
|
126
|
+
return _this2.setState({
|
|
127
|
+
showCoordinates: false
|
|
128
|
+
});
|
|
129
|
+
},
|
|
130
|
+
onTouchStart: onTouchStart,
|
|
131
|
+
onTouchEnd: onTouchEnd,
|
|
132
|
+
onClick: onClick
|
|
133
|
+
}), /*#__PURE__*/_react["default"].createElement("g", {
|
|
134
|
+
className: (0, _classnames["default"])(classes.point, disabled && classes.disabledSecondary, classes[correctness], className),
|
|
135
|
+
onMouseEnter: function onMouseEnter() {
|
|
136
|
+
return _this2.setState({
|
|
137
|
+
showCoordinates: true
|
|
138
|
+
});
|
|
139
|
+
},
|
|
140
|
+
onMouseLeave: function onMouseLeave() {
|
|
141
|
+
return _this2.setState({
|
|
142
|
+
showCoordinates: false
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
}, /*#__PURE__*/_react["default"].createElement("circle", (0, _extends2["default"])({}, rest, {
|
|
146
|
+
r: r,
|
|
147
|
+
cx: scale.x(x),
|
|
148
|
+
cy: scale.y(y)
|
|
149
|
+
})), SvgComponent && /*#__PURE__*/_react["default"].createElement(SvgComponent, {
|
|
150
|
+
scale: scale,
|
|
151
|
+
x: x,
|
|
152
|
+
y: y
|
|
153
|
+
}), labelNode && coordinatesOnHover && showCoordinates && /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_coordinatesLabel["default"], {
|
|
154
|
+
graphProps: graphProps,
|
|
155
|
+
x: x,
|
|
156
|
+
y: y
|
|
157
|
+
}), labelNode)));
|
|
158
|
+
}
|
|
159
|
+
}]);
|
|
160
|
+
return RawBp;
|
|
161
|
+
}(_react["default"].Component);
|
|
162
|
+
|
|
163
|
+
exports.RawBp = RawBp;
|
|
164
|
+
(0, _defineProperty2["default"])(RawBp, "propTypes", {
|
|
165
|
+
classes: _propTypes["default"].object,
|
|
166
|
+
className: _propTypes["default"].string,
|
|
167
|
+
coordinatesOnHover: _propTypes["default"].bool,
|
|
168
|
+
correctness: _propTypes["default"].string,
|
|
169
|
+
disabled: _propTypes["default"].bool,
|
|
170
|
+
labelNode: _propTypes["default"].object,
|
|
171
|
+
x: _propTypes["default"].number,
|
|
172
|
+
y: _propTypes["default"].number,
|
|
173
|
+
graphProps: _plot.types.GraphPropsType.isRequired
|
|
174
|
+
});
|
|
175
|
+
//# sourceMappingURL=base-point.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/tools/shared/point/base-point.jsx"],"names":["RawBp","props","state","showCoordinates","classes","className","coordinatesOnHover","x","y","disabled","correctness","graphProps","labelNode","style","onClick","onTouchStart","onTouchEnd","rest","scale","r","SvgComponent","MissingSVG","CorrectSVG","IncorrectSVG","fill","cursor","pointerEvents","setState","point","disabledSecondary","ReactDOM","createPortal","React","Component","PropTypes","object","string","bool","number","types","GraphPropsType","isRequired"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { types } from '@pie-lib/plot';\nimport CoordinatesLabel from '../../../coordinates-label';\nimport ReactDOM from 'react-dom';\nimport { thinnerShapesNeeded } from '../../../utils';\nimport MissingSVG from '../icons/MissingSVG';\nimport CorrectSVG from '../icons/CorrectSVG';\nimport IncorrectSVG from '../icons/IncorrectSVG';\n\nexport class RawBp extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n className: PropTypes.string,\n coordinatesOnHover: PropTypes.bool,\n correctness: PropTypes.string,\n disabled: PropTypes.bool,\n labelNode: PropTypes.object,\n x: PropTypes.number,\n y: PropTypes.number,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { showCoordinates: false };\n }\n\n render() {\n const {\n classes,\n className,\n coordinatesOnHover,\n x,\n y,\n disabled,\n correctness,\n graphProps,\n labelNode,\n // we need to remove style from props\n // eslint-disable-next-line no-unused-vars,react/prop-types\n style,\n onClick,\n // Refactored RawBp component by isolating onTouchStart and onTouchEnd handlers to the outer circle, resolving erratic touch event behavior.\n // Remaining props are now applied only to the inner circle for improved event handling consistency.\n onTouchStart,\n onTouchEnd,\n ...rest\n } = this.props;\n const { showCoordinates } = this.state;\n const { scale } = graphProps;\n const r = thinnerShapesNeeded(graphProps) ? 5 : 7;\n let SvgComponent;\n switch (correctness) {\n case 'missing':\n SvgComponent = MissingSVG;\n break;\n case 'correct':\n SvgComponent = CorrectSVG;\n break;\n case 'incorrect':\n SvgComponent = IncorrectSVG;\n break;\n default:\n SvgComponent = null;\n break;\n }\n\n return (\n <>\n <circle\n style={{ fill: 'transparent', cursor: 'pointer', pointerEvents: 'all' }}\n r={r * 3}\n cx={scale.x(x)}\n cy={scale.y(y)}\n onMouseEnter={() => this.setState({ showCoordinates: true })}\n onMouseLeave={() => this.setState({ showCoordinates: false })}\n onTouchStart={onTouchStart}\n onTouchEnd={onTouchEnd}\n onClick={onClick}\n />\n <g\n className={classNames(classes.point, disabled && classes.disabledSecondary, classes[correctness], className)}\n onMouseEnter={() => this.setState({ showCoordinates: true })}\n onMouseLeave={() => this.setState({ showCoordinates: false })}\n >\n <circle {...rest} r={r} cx={scale.x(x)} cy={scale.y(y)} />\n {SvgComponent && <SvgComponent scale={scale} x={x} y={y} />}\n {labelNode &&\n coordinatesOnHover &&\n showCoordinates &&\n ReactDOM.createPortal(<CoordinatesLabel graphProps={graphProps} x={x} y={y} />, labelNode)}\n </g>\n </>\n );\n }\n}\n"],"file":"base-point.js"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.BasePoint = exports.ArrowPoint = exports.Arrow = void 0;
|
|
11
|
+
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
|
|
14
|
+
var _index = require("@material-ui/core/styles/index");
|
|
15
|
+
|
|
16
|
+
var _plot = require("@pie-lib/plot");
|
|
17
|
+
|
|
18
|
+
var utils = _interopRequireWildcard(require("../../../utils"));
|
|
19
|
+
|
|
20
|
+
var _styles = require("../styles");
|
|
21
|
+
|
|
22
|
+
var _basePoint = require("./base-point");
|
|
23
|
+
|
|
24
|
+
var _arrowPoint = require("./arrow-point");
|
|
25
|
+
|
|
26
|
+
var _index2 = require("./../../../shared/index");
|
|
27
|
+
|
|
28
|
+
var _arrow = _interopRequireDefault(require("./arrow"));
|
|
29
|
+
|
|
30
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
31
|
+
|
|
32
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
33
|
+
|
|
34
|
+
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; }
|
|
35
|
+
|
|
36
|
+
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; }
|
|
37
|
+
|
|
38
|
+
var opts = {
|
|
39
|
+
bounds: function bounds(props, _ref) {
|
|
40
|
+
var domain = _ref.domain,
|
|
41
|
+
range = _ref.range;
|
|
42
|
+
var x = props.x,
|
|
43
|
+
y = props.y;
|
|
44
|
+
var area = {
|
|
45
|
+
left: x,
|
|
46
|
+
top: y,
|
|
47
|
+
bottom: y,
|
|
48
|
+
right: x
|
|
49
|
+
};
|
|
50
|
+
return utils.bounds(area, domain, range);
|
|
51
|
+
},
|
|
52
|
+
anchorPoint: function anchorPoint(props) {
|
|
53
|
+
var x = props.x,
|
|
54
|
+
y = props.y;
|
|
55
|
+
return {
|
|
56
|
+
x: x,
|
|
57
|
+
y: y
|
|
58
|
+
};
|
|
59
|
+
},
|
|
60
|
+
fromDelta: function fromDelta(props, delta) {
|
|
61
|
+
return utils.point(props).add(utils.point(delta));
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
var styles = function styles() {
|
|
66
|
+
return {
|
|
67
|
+
point: {
|
|
68
|
+
'& circle, & polygon': {
|
|
69
|
+
cursor: 'pointer',
|
|
70
|
+
fill: _index2.color.defaults.BLACK
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
disabled: {
|
|
74
|
+
'& circle, & polygon': _objectSpread({}, (0, _styles.disabled)())
|
|
75
|
+
},
|
|
76
|
+
disabledSecondary: {
|
|
77
|
+
'& circle, & polygon': _objectSpread({}, (0, _styles.disabledSecondary)())
|
|
78
|
+
},
|
|
79
|
+
correct: {
|
|
80
|
+
'& circle, & polygon': _objectSpread({}, (0, _styles.correct)())
|
|
81
|
+
},
|
|
82
|
+
incorrect: {
|
|
83
|
+
'& circle, & polygon': _objectSpread({}, (0, _styles.incorrect)())
|
|
84
|
+
},
|
|
85
|
+
missing: {
|
|
86
|
+
'& circle, & polygon': _objectSpread({}, (0, _styles.missing)())
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
var BasePoint = (0, _index.withStyles)(styles)((0, _plot.gridDraggable)(opts)(_basePoint.RawBp));
|
|
92
|
+
exports.BasePoint = BasePoint;
|
|
93
|
+
var ArrowPoint = (0, _index.withStyles)(styles)((0, _plot.gridDraggable)(opts)(_arrowPoint.RawArrow));
|
|
94
|
+
exports.ArrowPoint = ArrowPoint;
|
|
95
|
+
var Arrow = (0, _index.withStyles)(styles)((0, _plot.gridDraggable)(opts)(_arrow["default"]));
|
|
96
|
+
exports.Arrow = Arrow;
|
|
97
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/tools/shared/point/index.jsx"],"names":["opts","bounds","props","domain","range","x","y","area","left","top","bottom","right","utils","anchorPoint","fromDelta","delta","point","add","styles","cursor","fill","color","defaults","BLACK","disabled","disabledSecondary","correct","incorrect","missing","BasePoint","RawBp","ArrowPoint","RawArrow","Arrow","BaseArrow"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,IAAI,GAAG;AACXC,EAAAA,MAAM,EAAE,gBAACC,KAAD,QAA8B;AAAA,QAApBC,MAAoB,QAApBA,MAAoB;AAAA,QAAZC,KAAY,QAAZA,KAAY;AACpC,QAAQC,CAAR,GAAiBH,KAAjB,CAAQG,CAAR;AAAA,QAAWC,CAAX,GAAiBJ,KAAjB,CAAWI,CAAX;AACA,QAAMC,IAAI,GAAG;AAAEC,MAAAA,IAAI,EAAEH,CAAR;AAAWI,MAAAA,GAAG,EAAEH,CAAhB;AAAmBI,MAAAA,MAAM,EAAEJ,CAA3B;AAA8BK,MAAAA,KAAK,EAAEN;AAArC,KAAb;AAEA,WAAOO,KAAK,CAACX,MAAN,CAAaM,IAAb,EAAmBJ,MAAnB,EAA2BC,KAA3B,CAAP;AACD,GANU;AAOXS,EAAAA,WAAW,EAAE,qBAACX,KAAD,EAAW;AACtB,QAAQG,CAAR,GAAiBH,KAAjB,CAAQG,CAAR;AAAA,QAAWC,CAAX,GAAiBJ,KAAjB,CAAWI,CAAX;AAEA,WAAO;AAAED,MAAAA,CAAC,EAADA,CAAF;AAAKC,MAAAA,CAAC,EAADA;AAAL,KAAP;AACD,GAXU;AAYXQ,EAAAA,SAAS,EAAE,mBAACZ,KAAD,EAAQa,KAAR,EAAkB;AAC3B,WAAOH,KAAK,CAACI,KAAN,CAAYd,KAAZ,EAAmBe,GAAnB,CAAuBL,KAAK,CAACI,KAAN,CAAYD,KAAZ,CAAvB,CAAP;AACD;AAdU,CAAb;;AAiBA,IAAMG,MAAM,GAAG,SAATA,MAAS,GAAM;AACnB,SAAO;AACLF,IAAAA,KAAK,EAAE;AACL,6BAAuB;AACrBG,QAAAA,MAAM,EAAE,SADa;AAErBC,QAAAA,IAAI,EAAEC,cAAMC,QAAN,CAAeC;AAFA;AADlB,KADF;AAOLC,IAAAA,QAAQ,EAAE;AACR,+CACK,uBADL;AADQ,KAPL;AAYLC,IAAAA,iBAAiB,EAAE;AACjB,+CACK,gCADL;AADiB,KAZd;AAiBLC,IAAAA,OAAO,EAAE;AACP,+CACK,sBADL;AADO,KAjBJ;AAsBLC,IAAAA,SAAS,EAAE;AACT,+CACK,wBADL;AADS,KAtBN;AA2BLC,IAAAA,OAAO,EAAE;AACP,+CACK,sBADL;AADO;AA3BJ,GAAP;AAiCD,CAlCD;;AAoCO,IAAMC,SAAS,GAAG,uBAAWX,MAAX,EAAmB,yBAAclB,IAAd,EAAoB8B,gBAApB,CAAnB,CAAlB;;AACA,IAAMC,UAAU,GAAG,uBAAWb,MAAX,EAAmB,yBAAclB,IAAd,EAAoBgC,oBAApB,CAAnB,CAAnB;;AACA,IAAMC,KAAK,GAAG,uBAAWf,MAAX,EAAmB,yBAAclB,IAAd,EAAoBkC,iBAApB,CAAnB,CAAd","sourcesContent":["import { withStyles } from '@material-ui/core/styles/index';\nimport { gridDraggable } from '@pie-lib/plot';\nimport * as utils from '../../../utils';\nimport { disabled, correct, incorrect, missing, disabledSecondary } from '../styles';\nimport { RawBp } from './base-point';\nimport { RawArrow } from './arrow-point';\nimport { color } from '../../../../../render-ui/src/index';\nimport BaseArrow from './arrow';\n\nconst opts = {\n bounds: (props, { domain, range }) => {\n const { x, y } = props;\n const area = { left: x, top: y, bottom: y, right: x };\n\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { x, y } = props;\n\n return { x, y };\n },\n fromDelta: (props, delta) => {\n return utils.point(props).add(utils.point(delta));\n },\n};\n\nconst styles = () => {\n return {\n point: {\n '& circle, & polygon': {\n cursor: 'pointer',\n fill: color.defaults.BLACK,\n },\n },\n disabled: {\n '& circle, & polygon': {\n ...disabled(),\n },\n },\n disabledSecondary: {\n '& circle, & polygon': {\n ...disabledSecondary(),\n },\n },\n correct: {\n '& circle, & polygon': {\n ...correct(),\n },\n },\n incorrect: {\n '& circle, & polygon': {\n ...incorrect(),\n },\n },\n missing: {\n '& circle, & polygon': {\n ...missing(),\n },\n },\n };\n};\n\nexport const BasePoint = withStyles(styles)(gridDraggable(opts)(RawBp));\nexport const ArrowPoint = withStyles(styles)(gridDraggable(opts)(RawArrow));\nexport const Arrow = withStyles(styles)(gridDraggable(opts)(BaseArrow));\n"],"file":"index.js"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.missing = exports.incorrect = exports.disabledSecondary = exports.disabled = exports.correct = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _index = require("./../../shared/index");
|
|
13
|
+
|
|
14
|
+
var disabled = function disabled() {
|
|
15
|
+
var _ref;
|
|
16
|
+
|
|
17
|
+
var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
|
|
18
|
+
return _ref = {}, (0, _defineProperty2["default"])(_ref, key, _index.color.disabled()), (0, _defineProperty2["default"])(_ref, "pointerEvents", 'none'), _ref;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
exports.disabled = disabled;
|
|
22
|
+
|
|
23
|
+
var disabledSecondary = function disabledSecondary() {
|
|
24
|
+
var _ref2;
|
|
25
|
+
|
|
26
|
+
var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
|
|
27
|
+
return _ref2 = {}, (0, _defineProperty2["default"])(_ref2, key, _index.color.disabledSecondary()), (0, _defineProperty2["default"])(_ref2, "pointerEvents", 'none'), _ref2;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
exports.disabledSecondary = disabledSecondary;
|
|
31
|
+
|
|
32
|
+
var correct = function correct() {
|
|
33
|
+
var _ref3;
|
|
34
|
+
|
|
35
|
+
var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
|
|
36
|
+
return _ref3 = {}, (0, _defineProperty2["default"])(_ref3, key, _index.color.correctWithIcon()), (0, _defineProperty2["default"])(_ref3, "pointerEvents", 'none'), _ref3;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
exports.correct = correct;
|
|
40
|
+
|
|
41
|
+
var incorrect = function incorrect() {
|
|
42
|
+
var _ref4;
|
|
43
|
+
|
|
44
|
+
var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
|
|
45
|
+
return _ref4 = {}, (0, _defineProperty2["default"])(_ref4, key, _index.color.incorrectWithIcon()), (0, _defineProperty2["default"])(_ref4, "pointerEvents", 'none'), _ref4;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
exports.incorrect = incorrect;
|
|
49
|
+
|
|
50
|
+
var missing = function missing() {
|
|
51
|
+
var _ref5;
|
|
52
|
+
|
|
53
|
+
var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
|
|
54
|
+
return _ref5 = {}, (0, _defineProperty2["default"])(_ref5, key, _index.color.missingWithIcon()), (0, _defineProperty2["default"])(_ref5, "pointerEvents", 'none'), _ref5;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
exports.missing = missing;
|
|
58
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/tools/shared/styles.js"],"names":["disabled","key","color","disabledSecondary","correct","correctWithIcon","incorrect","incorrectWithIcon","missing","missingWithIcon"],"mappings":";;;;;;;;;;;AAAA;;AAEO,IAAMA,QAAQ,GAAG,SAAXA,QAAW;AAAA;;AAAA,MAACC,GAAD,uEAAO,MAAP;AAAA,2DACrBA,GADqB,EACfC,aAAMF,QAAN,EADe,2DAEP,MAFO;AAAA,CAAjB;;;;AAKA,IAAMG,iBAAiB,GAAG,SAApBA,iBAAoB;AAAA;;AAAA,MAACF,GAAD,uEAAO,MAAP;AAAA,6DAC9BA,GAD8B,EACxBC,aAAMC,iBAAN,EADwB,4DAEhB,MAFgB;AAAA,CAA1B;;;;AAKA,IAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA;;AAAA,MAACH,GAAD,uEAAO,MAAP;AAAA,6DACpBA,GADoB,EACdC,aAAMG,eAAN,EADc,4DAEN,MAFM;AAAA,CAAhB;;;;AAIA,IAAMC,SAAS,GAAG,SAAZA,SAAY;AAAA;;AAAA,MAACL,GAAD,uEAAO,MAAP;AAAA,6DACtBA,GADsB,EAChBC,aAAMK,iBAAN,EADgB,4DAER,MAFQ;AAAA,CAAlB;;;;AAKA,IAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA;;AAAA,MAACP,GAAD,uEAAO,MAAP;AAAA,6DACpBA,GADoB,EACdC,aAAMO,eAAN,EADc,4DAEN,MAFM;AAAA,CAAhB","sourcesContent":["import { color } from '../../../../render-ui/src/index';\n\nexport const disabled = (key = 'fill') => ({\n [key]: color.disabled(),\n pointerEvents: 'none',\n});\n\nexport const disabledSecondary = (key = 'fill') => ({\n [key]: color.disabledSecondary(),\n pointerEvents: 'none',\n});\n\nexport const correct = (key = 'fill') => ({\n [key]: color.correctWithIcon(),\n pointerEvents: 'none',\n});\nexport const incorrect = (key = 'fill') => ({\n [key]: color.incorrectWithIcon(),\n pointerEvents: 'none',\n});\n\nexport const missing = (key = 'fill') => ({\n [key]: color.missingWithIcon(),\n pointerEvents: 'none',\n});\n"],"file":"styles.js"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.ToolPropTypeFields = exports.ToolPropType = void 0;
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var ToolPropTypeFields = {
|
|
13
|
+
mark: _propTypes["default"].any,
|
|
14
|
+
onChange: _propTypes["default"].func,
|
|
15
|
+
onDragStart: _propTypes["default"].func,
|
|
16
|
+
onDragStop: _propTypes["default"].func
|
|
17
|
+
};
|
|
18
|
+
exports.ToolPropTypeFields = ToolPropTypeFields;
|
|
19
|
+
|
|
20
|
+
var ToolPropType = _propTypes["default"].shape(ToolPropTypeFields);
|
|
21
|
+
|
|
22
|
+
exports.ToolPropType = ToolPropType;
|
|
23
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/tools/shared/types.js"],"names":["ToolPropTypeFields","mark","PropTypes","any","onChange","func","onDragStart","onDragStop","ToolPropType","shape"],"mappings":";;;;;;;;;AAAA;;AAEO,IAAMA,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAEC,sBAAUC,GADgB;AAEhCC,EAAAA,QAAQ,EAAEF,sBAAUG,IAFY;AAGhCC,EAAAA,WAAW,EAAEJ,sBAAUG,IAHS;AAIhCE,EAAAA,UAAU,EAAEL,sBAAUG;AAJU,CAA3B;;;AAOA,IAAMG,YAAY,GAAGN,sBAAUO,KAAV,CAAgBT,kBAAhB,CAArB","sourcesContent":["import PropTypes from 'prop-types';\n\nexport const ToolPropTypeFields = {\n mark: PropTypes.any,\n onChange: PropTypes.func,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n};\n\nexport const ToolPropType = PropTypes.shape(ToolPropTypeFields);\n"],"file":"types.js"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
13
|
+
|
|
14
|
+
var _graphingUtils = require("@pie-lib/graphing-utils");
|
|
15
|
+
|
|
16
|
+
var _withRootEdge = require("../shared/line/with-root-edge");
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
21
|
+
|
|
22
|
+
var log = (0, _debug["default"])('pie-lib:graphing:sine');
|
|
23
|
+
var Sine = (0, _withRootEdge.withRootEdge)(function (props) {
|
|
24
|
+
var root = props.root,
|
|
25
|
+
edge = props.edge,
|
|
26
|
+
graphProps = props.graphProps;
|
|
27
|
+
var domain = graphProps.domain,
|
|
28
|
+
range = graphProps.range;
|
|
29
|
+
|
|
30
|
+
var _getAmplitudeAndFreq = (0, _graphingUtils.getAmplitudeAndFreq)(root, edge),
|
|
31
|
+
amplitude = _getAmplitudeAndFreq.amplitude,
|
|
32
|
+
freq = _getAmplitudeAndFreq.freq;
|
|
33
|
+
|
|
34
|
+
var interval = freq / _graphingUtils.FREQ_DIVIDER;
|
|
35
|
+
log('[getPoints] amplitude:', amplitude, 'freq:', freq);
|
|
36
|
+
var dataPoints = edge && edge.x === root.x ? [] : (0, _graphingUtils.buildDataPoints)(_objectSpread(_objectSpread({}, domain), {}, {
|
|
37
|
+
step: interval
|
|
38
|
+
}), range, root, edge, (0, _graphingUtils.sinY)(amplitude, freq, {
|
|
39
|
+
phase: root.x,
|
|
40
|
+
vertical: root.y
|
|
41
|
+
}));
|
|
42
|
+
return {
|
|
43
|
+
root: props.root,
|
|
44
|
+
edge: props.edge,
|
|
45
|
+
dataPoints: dataPoints
|
|
46
|
+
};
|
|
47
|
+
});
|
|
48
|
+
var Component = (0, _withRootEdge.rootEdgeComponent)(Sine);
|
|
49
|
+
var _default = Component;
|
|
50
|
+
exports["default"] = _default;
|
|
51
|
+
//# sourceMappingURL=component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/tools/sine/component.jsx"],"names":["log","Sine","props","root","edge","graphProps","domain","range","amplitude","freq","interval","FREQ_DIVIDER","dataPoints","x","step","phase","vertical","y","Component"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,uBAAN,CAAZ;AAEA,IAAMC,IAAI,GAAG,gCAAa,UAACC,KAAD,EAAW;AACnC,MAAQC,IAAR,GAAmCD,KAAnC,CAAQC,IAAR;AAAA,MAAcC,IAAd,GAAmCF,KAAnC,CAAcE,IAAd;AAAA,MAAoBC,UAApB,GAAmCH,KAAnC,CAAoBG,UAApB;AACA,MAAQC,MAAR,GAA0BD,UAA1B,CAAQC,MAAR;AAAA,MAAgBC,KAAhB,GAA0BF,UAA1B,CAAgBE,KAAhB;;AAEA,6BAA4B,wCAAoBJ,IAApB,EAA0BC,IAA1B,CAA5B;AAAA,MAAQI,SAAR,wBAAQA,SAAR;AAAA,MAAmBC,IAAnB,wBAAmBA,IAAnB;;AACA,MAAMC,QAAQ,GAAGD,IAAI,GAAGE,2BAAxB;AAEAX,EAAAA,GAAG,CAAC,wBAAD,EAA2BQ,SAA3B,EAAsC,OAAtC,EAA+CC,IAA/C,CAAH;AAEA,MAAMG,UAAU,GACdR,IAAI,IAAIA,IAAI,CAACS,CAAL,KAAWV,IAAI,CAACU,CAAxB,GACI,EADJ,GAEI,oEACOP,MADP;AACeQ,IAAAA,IAAI,EAAEJ;AADrB,MAEEH,KAFF,EAGEJ,IAHF,EAIEC,IAJF,EAKE,yBAAKI,SAAL,EAAgBC,IAAhB,EAAsB;AAAEM,IAAAA,KAAK,EAAEZ,IAAI,CAACU,CAAd;AAAiBG,IAAAA,QAAQ,EAAEb,IAAI,CAACc;AAAhC,GAAtB,CALF,CAHN;AAWA,SAAO;AAAEd,IAAAA,IAAI,EAAED,KAAK,CAACC,IAAd;AAAoBC,IAAAA,IAAI,EAAEF,KAAK,CAACE,IAAhC;AAAsCQ,IAAAA,UAAU,EAAVA;AAAtC,GAAP;AACD,CArBY,CAAb;AAuBA,IAAMM,SAAS,GAAG,qCAAkBjB,IAAlB,CAAlB;eAEeiB,S","sourcesContent":["import debug from 'debug';\nimport { sinY, buildDataPoints, getAmplitudeAndFreq, FREQ_DIVIDER } from '@pie-lib/graphing-utils';\nimport { withRootEdge, rootEdgeComponent } from '../shared/line/with-root-edge';\n\nconst log = debug('pie-lib:graphing:sine');\n\nconst Sine = withRootEdge((props) => {\n const { root, edge, graphProps } = props;\n const { domain, range } = graphProps;\n\n const { amplitude, freq } = getAmplitudeAndFreq(root, edge);\n const interval = freq / FREQ_DIVIDER;\n\n log('[getPoints] amplitude:', amplitude, 'freq:', freq);\n\n const dataPoints =\n edge && edge.x === root.x\n ? []\n : buildDataPoints(\n { ...domain, step: interval },\n range,\n root,\n edge,\n sinY(amplitude, freq, { phase: root.x, vertical: root.y }),\n );\n\n return { root: props.root, edge: props.edge, dataPoints };\n});\n\nconst Component = rootEdgeComponent(Sine);\n\nexport default Component;\n"],"file":"component.js"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.tool = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _component = _interopRequireDefault(require("./component"));
|
|
13
|
+
|
|
14
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
15
|
+
|
|
16
|
+
var _utils = require("../../utils");
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
21
|
+
|
|
22
|
+
var log = (0, _debug["default"])('pie-lib:graphing:sine');
|
|
23
|
+
|
|
24
|
+
var tool = function tool() {
|
|
25
|
+
return {
|
|
26
|
+
type: 'sine',
|
|
27
|
+
Component: _component["default"],
|
|
28
|
+
complete: function complete(data, mark) {
|
|
29
|
+
return _objectSpread(_objectSpread({}, mark), {}, {
|
|
30
|
+
building: false,
|
|
31
|
+
closed: true
|
|
32
|
+
});
|
|
33
|
+
},
|
|
34
|
+
addPoint: function addPoint(point, mark) {
|
|
35
|
+
log('add point to sine model: ', point, 'mark: ', mark);
|
|
36
|
+
|
|
37
|
+
if (mark && ((0, _utils.equalPoints)(mark.root, point) || (0, _utils.sameAxes)(mark.root, point))) {
|
|
38
|
+
return mark;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
if (!mark) {
|
|
42
|
+
return {
|
|
43
|
+
type: 'sine',
|
|
44
|
+
root: point,
|
|
45
|
+
edge: undefined,
|
|
46
|
+
closed: false,
|
|
47
|
+
building: true
|
|
48
|
+
};
|
|
49
|
+
} else if (mark && !mark.root) {
|
|
50
|
+
throw new Error('no root - should never happen');
|
|
51
|
+
} else {
|
|
52
|
+
return _objectSpread(_objectSpread({}, mark), {}, {
|
|
53
|
+
edge: point,
|
|
54
|
+
closed: true,
|
|
55
|
+
building: false
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
exports.tool = tool;
|
|
63
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/tools/sine/index.js"],"names":["log","tool","type","Component","Sine","complete","data","mark","building","closed","addPoint","point","root","edge","undefined","Error"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,uBAAN,CAAZ;;AAEO,IAAMC,IAAI,GAAG,SAAPA,IAAO;AAAA,SAAO;AACzBC,IAAAA,IAAI,EAAE,MADmB;AAEzBC,IAAAA,SAAS,EAAEC,qBAFc;AAGzBC,IAAAA,QAAQ,EAAE,kBAACC,IAAD,EAAOC,IAAP,EAAgB;AACxB,6CAAYA,IAAZ;AAAkBC,QAAAA,QAAQ,EAAE,KAA5B;AAAmCC,QAAAA,MAAM,EAAE;AAA3C;AACD,KALwB;AAMzBC,IAAAA,QAAQ,EAAE,kBAACC,KAAD,EAAQJ,IAAR,EAAiB;AACzBP,MAAAA,GAAG,CAAC,2BAAD,EAA8BW,KAA9B,EAAqC,QAArC,EAA+CJ,IAA/C,CAAH;;AACA,UAAIA,IAAI,KAAK,wBAAYA,IAAI,CAACK,IAAjB,EAAuBD,KAAvB,KAAiC,qBAASJ,IAAI,CAACK,IAAd,EAAoBD,KAApB,CAAtC,CAAR,EAA2E;AACzE,eAAOJ,IAAP;AACD;;AAED,UAAI,CAACA,IAAL,EAAW;AACT,eAAO;AACLL,UAAAA,IAAI,EAAE,MADD;AAELU,UAAAA,IAAI,EAAED,KAFD;AAGLE,UAAAA,IAAI,EAAEC,SAHD;AAILL,UAAAA,MAAM,EAAE,KAJH;AAKLD,UAAAA,QAAQ,EAAE;AALL,SAAP;AAOD,OARD,MAQO,IAAID,IAAI,IAAI,CAACA,IAAI,CAACK,IAAlB,EAAwB;AAC7B,cAAM,IAAIG,KAAJ,CAAU,+BAAV,CAAN;AACD,OAFM,MAEA;AACL,+CAAYR,IAAZ;AAAkBM,UAAAA,IAAI,EAAEF,KAAxB;AAA+BF,UAAAA,MAAM,EAAE,IAAvC;AAA6CD,UAAAA,QAAQ,EAAE;AAAvD;AACD;AACF;AAzBwB,GAAP;AAAA,CAAb","sourcesContent":["import Sine from './component';\nimport debug from 'debug';\nimport { equalPoints, sameAxes } from '../../utils';\n\nconst log = debug('pie-lib:graphing:sine');\n\nexport const tool = () => ({\n type: 'sine',\n Component: Sine,\n complete: (data, mark) => {\n return { ...mark, building: false, closed: true };\n },\n addPoint: (point, mark) => {\n log('add point to sine model: ', point, 'mark: ', mark);\n if (mark && (equalPoints(mark.root, point) || sameAxes(mark.root, point))) {\n return mark;\n }\n\n if (!mark) {\n return {\n type: 'sine',\n root: point,\n edge: undefined,\n closed: false,\n building: true,\n };\n } else if (mark && !mark.root) {\n throw new Error('no root - should never happen');\n } else {\n return { ...mark, edge: point, closed: true, building: false };\n }\n },\n});\n"],"file":"index.js"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = exports.Line = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
|
+
|
|
14
|
+
var _line = require("../shared/line");
|
|
15
|
+
|
|
16
|
+
var _point = require("../shared/point");
|
|
17
|
+
|
|
18
|
+
var _react = _interopRequireDefault(require("react"));
|
|
19
|
+
|
|
20
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
21
|
+
|
|
22
|
+
var _plot = require("@pie-lib/plot");
|
|
23
|
+
|
|
24
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
25
|
+
|
|
26
|
+
var _styles = require("@material-ui/core/styles");
|
|
27
|
+
|
|
28
|
+
var _utils = require("../../utils");
|
|
29
|
+
|
|
30
|
+
var _excluded = ["className", "classes", "disabled", "correctness", "graphProps", "from", "to"];
|
|
31
|
+
|
|
32
|
+
var lineStyles = function lineStyles(theme) {
|
|
33
|
+
return {
|
|
34
|
+
line: _line.styles.line(theme),
|
|
35
|
+
disabled: _line.styles.disabled(theme),
|
|
36
|
+
disabledSecondary: _line.styles.disabledSecondary(theme),
|
|
37
|
+
correct: _line.styles.correct(theme, 'stroke'),
|
|
38
|
+
incorrect: _line.styles.incorrect(theme, 'stroke'),
|
|
39
|
+
missing: _line.styles.missing(theme, 'stroke')
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
var Line = function Line(props) {
|
|
44
|
+
var className = props.className,
|
|
45
|
+
classes = props.classes,
|
|
46
|
+
disabled = props.disabled,
|
|
47
|
+
correctness = props.correctness,
|
|
48
|
+
scale = props.graphProps.scale,
|
|
49
|
+
from = props.from,
|
|
50
|
+
to = props.to,
|
|
51
|
+
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
52
|
+
var startPoint = {
|
|
53
|
+
x: scale.x(from.x),
|
|
54
|
+
y: scale.y(from.y)
|
|
55
|
+
};
|
|
56
|
+
var endPoint = {
|
|
57
|
+
x: scale.x(to.x),
|
|
58
|
+
y: scale.y(to.y)
|
|
59
|
+
};
|
|
60
|
+
var length = (0, _utils.getDistanceBetweenTwoPoints)(startPoint, endPoint);
|
|
61
|
+
return /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
|
|
62
|
+
className: (0, _classnames["default"])(classes.line, disabled && classes.disabledSecondary, classes[correctness], className),
|
|
63
|
+
x1: startPoint.x,
|
|
64
|
+
y1: startPoint.y,
|
|
65
|
+
x2: endPoint.x,
|
|
66
|
+
y2: endPoint.y,
|
|
67
|
+
strokeDasharray: length - 7
|
|
68
|
+
}, rest));
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
exports.Line = Line;
|
|
72
|
+
Line.propTypes = {
|
|
73
|
+
className: _propTypes["default"].string,
|
|
74
|
+
classes: _propTypes["default"].object,
|
|
75
|
+
disabled: _propTypes["default"].bool,
|
|
76
|
+
correctness: _propTypes["default"].string,
|
|
77
|
+
graphProps: _propTypes["default"].any,
|
|
78
|
+
from: _plot.types.PointType,
|
|
79
|
+
to: _plot.types.PointType
|
|
80
|
+
};
|
|
81
|
+
var StyledLine = (0, _styles.withStyles)(lineStyles)(Line);
|
|
82
|
+
var Vector = (0, _line.lineBase)(StyledLine, {
|
|
83
|
+
to: _point.Arrow
|
|
84
|
+
});
|
|
85
|
+
var Component = (0, _line.lineToolComponent)(Vector);
|
|
86
|
+
var _default = Component;
|
|
87
|
+
exports["default"] = _default;
|
|
88
|
+
//# sourceMappingURL=component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/tools/vector/component.jsx"],"names":["lineStyles","theme","line","styles","disabled","disabledSecondary","correct","incorrect","missing","Line","props","className","classes","correctness","scale","graphProps","from","to","rest","startPoint","x","y","endPoint","length","propTypes","PropTypes","string","object","bool","any","types","PointType","StyledLine","Vector","Arrow","Component"],"mappings":"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","sourcesContent":["import { lineToolComponent, lineBase, styles } from '../shared/line';\nimport { Arrow } from '../shared/point';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { getDistanceBetweenTwoPoints } from '../../utils';\n\nconst lineStyles = (theme) => ({\n line: styles.line(theme),\n disabled: styles.disabled(theme),\n disabledSecondary: styles.disabledSecondary(theme),\n correct: styles.correct(theme, 'stroke'),\n incorrect: styles.incorrect(theme, 'stroke'),\n missing: styles.missing(theme, 'stroke'),\n});\n\nexport const Line = (props) => {\n const {\n className,\n classes,\n disabled,\n correctness,\n graphProps: { scale },\n from,\n to,\n ...rest\n } = props;\n const startPoint = { x: scale.x(from.x), y: scale.y(from.y) };\n const endPoint = { x: scale.x(to.x), y: scale.y(to.y) };\n const length = getDistanceBetweenTwoPoints(startPoint, endPoint);\n\n return (\n <line\n className={classNames(classes.line, disabled && classes.disabledSecondary, classes[correctness], className)}\n x1={startPoint.x}\n y1={startPoint.y}\n x2={endPoint.x}\n y2={endPoint.y}\n strokeDasharray={length - 7}\n {...rest}\n />\n );\n};\n\nLine.propTypes = {\n className: PropTypes.string,\n classes: PropTypes.object,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n graphProps: PropTypes.any,\n from: types.PointType,\n to: types.PointType,\n};\n\nconst StyledLine = withStyles(lineStyles)(Line);\nconst Vector = lineBase(StyledLine, { to: Arrow });\nconst Component = lineToolComponent(Vector);\n\nexport default Component;\n"],"file":"component.js"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.tool = void 0;
|
|
9
|
+
|
|
10
|
+
var _component = _interopRequireDefault(require("./component"));
|
|
11
|
+
|
|
12
|
+
var _line = require("../shared/line");
|
|
13
|
+
|
|
14
|
+
var tool = (0, _line.lineTool)('vector', _component["default"]);
|
|
15
|
+
exports.tool = tool;
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/tools/vector/index.js"],"names":["tool","Vector"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEO,IAAMA,IAAI,GAAG,oBAAS,QAAT,EAAmBC,qBAAnB,CAAb","sourcesContent":["import Vector from './component';\nimport { lineTool } from '../shared/line';\n\nexport const tool = lineTool('vector', Vector);\n"],"file":"index.js"}
|