@pie-lib/graphing-solution-set 2.20.0 → 2.22.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.
Files changed (85) hide show
  1. package/CHANGELOG.md +6 -10
  2. package/lib/axis/arrow.js +115 -0
  3. package/lib/axis/arrow.js.map +1 -0
  4. package/lib/axis/axes.js +415 -0
  5. package/lib/axis/axes.js.map +1 -0
  6. package/lib/axis/index.js +26 -0
  7. package/lib/axis/index.js.map +1 -0
  8. package/lib/bg.js +139 -0
  9. package/lib/bg.js.map +1 -0
  10. package/lib/container/actions.js +24 -0
  11. package/lib/container/actions.js.map +1 -0
  12. package/lib/container/index.js +166 -0
  13. package/lib/container/index.js.map +1 -0
  14. package/lib/container/marks.js +27 -0
  15. package/lib/container/marks.js.map +1 -0
  16. package/lib/container/middleware.js +25 -0
  17. package/lib/container/middleware.js.map +1 -0
  18. package/lib/container/reducer.js +25 -0
  19. package/lib/container/reducer.js.map +1 -0
  20. package/lib/coordinates-label.js +109 -0
  21. package/lib/coordinates-label.js.map +1 -0
  22. package/lib/graph-with-controls.js +372 -0
  23. package/lib/graph-with-controls.js.map +1 -0
  24. package/lib/graph.js +419 -0
  25. package/lib/graph.js.map +1 -0
  26. package/lib/grid-setup.js +462 -0
  27. package/lib/grid-setup.js.map +1 -0
  28. package/lib/grid.js +176 -0
  29. package/lib/grid.js.map +1 -0
  30. package/lib/index.js +51 -0
  31. package/lib/index.js.map +1 -0
  32. package/lib/labels.js +299 -0
  33. package/lib/labels.js.map +1 -0
  34. package/lib/mark-label.js +208 -0
  35. package/lib/mark-label.js.map +1 -0
  36. package/lib/toggle-bar.js +336 -0
  37. package/lib/toggle-bar.js.map +1 -0
  38. package/lib/tool-menu.js +325 -0
  39. package/lib/tool-menu.js.map +1 -0
  40. package/lib/tools/index.js +29 -0
  41. package/lib/tools/index.js.map +1 -0
  42. package/lib/tools/line/component.js +106 -0
  43. package/lib/tools/line/component.js.map +1 -0
  44. package/lib/tools/line/index.js +16 -0
  45. package/lib/tools/line/index.js.map +1 -0
  46. package/lib/tools/polygon/component.js +457 -0
  47. package/lib/tools/polygon/component.js.map +1 -0
  48. package/lib/tools/polygon/index.js +106 -0
  49. package/lib/tools/polygon/index.js.map +1 -0
  50. package/lib/tools/polygon/line.js +151 -0
  51. package/lib/tools/polygon/line.js.map +1 -0
  52. package/lib/tools/polygon/polygon.js +171 -0
  53. package/lib/tools/polygon/polygon.js.map +1 -0
  54. package/lib/tools/shared/arrow-head.js +75 -0
  55. package/lib/tools/shared/arrow-head.js.map +1 -0
  56. package/lib/tools/shared/line/index.js +637 -0
  57. package/lib/tools/shared/line/index.js.map +1 -0
  58. package/lib/tools/shared/line/line-path.js +145 -0
  59. package/lib/tools/shared/line/line-path.js.map +1 -0
  60. package/lib/tools/shared/line/with-root-edge.js +155 -0
  61. package/lib/tools/shared/line/with-root-edge.js.map +1 -0
  62. package/lib/tools/shared/point/arrow-point.js +113 -0
  63. package/lib/tools/shared/point/arrow-point.js.map +1 -0
  64. package/lib/tools/shared/point/arrow.js +96 -0
  65. package/lib/tools/shared/point/arrow.js.map +1 -0
  66. package/lib/tools/shared/point/base-point.js +151 -0
  67. package/lib/tools/shared/point/base-point.js.map +1 -0
  68. package/lib/tools/shared/point/index.js +94 -0
  69. package/lib/tools/shared/point/index.js.map +1 -0
  70. package/lib/tools/shared/styles.js +49 -0
  71. package/lib/tools/shared/styles.js.map +1 -0
  72. package/lib/tools/shared/types.js +19 -0
  73. package/lib/tools/shared/types.js.map +1 -0
  74. package/lib/undo-redo.js +107 -0
  75. package/lib/undo-redo.js.map +1 -0
  76. package/lib/use-debounce.js +32 -0
  77. package/lib/use-debounce.js.map +1 -0
  78. package/lib/utils.js +314 -0
  79. package/lib/utils.js.map +1 -0
  80. package/package.json +9 -9
  81. package/src/__tests__/graph-with-controls.test.jsx +1 -1
  82. package/src/__tests__/graph.test.jsx +1 -1
  83. package/src/tools/line/__tests__/component.test.jsx +2 -2
  84. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +2 -2
  85. package/src/tools/shared/point/__tests__/base-point.test.jsx +2 -2
@@ -0,0 +1,151 @@
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 _renderUi = require("@pie-lib/render-ui");
41
+
42
+ var _excluded = ["classes", "className", "coordinatesOnHover", "x", "y", "disabled", "correctness", "graphProps", "labelNode", "style", "onClick", "onTouchStart", "onTouchEnd"];
43
+
44
+ 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); }; }
45
+
46
+ 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; } }
47
+
48
+ var RawBp = /*#__PURE__*/function (_React$Component) {
49
+ (0, _inherits2["default"])(RawBp, _React$Component);
50
+
51
+ var _super = _createSuper(RawBp);
52
+
53
+ function RawBp(props) {
54
+ var _this;
55
+
56
+ (0, _classCallCheck2["default"])(this, RawBp);
57
+ _this = _super.call(this, props);
58
+ _this.state = {
59
+ showCoordinates: false
60
+ };
61
+ return _this;
62
+ }
63
+
64
+ (0, _createClass2["default"])(RawBp, [{
65
+ key: "render",
66
+ value: function render() {
67
+ var _this2 = this;
68
+
69
+ var _this$props = this.props,
70
+ classes = _this$props.classes,
71
+ className = _this$props.className,
72
+ coordinatesOnHover = _this$props.coordinatesOnHover,
73
+ x = _this$props.x,
74
+ y = _this$props.y,
75
+ disabled = _this$props.disabled,
76
+ correctness = _this$props.correctness,
77
+ graphProps = _this$props.graphProps,
78
+ labelNode = _this$props.labelNode,
79
+ style = _this$props.style,
80
+ onClick = _this$props.onClick,
81
+ onTouchStart = _this$props.onTouchStart,
82
+ onTouchEnd = _this$props.onTouchEnd,
83
+ rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
84
+ var showCoordinates = this.state.showCoordinates;
85
+ var scale = graphProps.scale;
86
+ var r = (0, _utils.thinnerShapesNeeded)(graphProps) ? 5 : 7;
87
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("circle", {
88
+ style: {
89
+ fill: 'transparent',
90
+ cursor: 'pointer',
91
+ pointerEvents: 'all'
92
+ },
93
+ r: r * 3,
94
+ cx: scale.x(x),
95
+ cy: scale.y(y),
96
+ onMouseEnter: function onMouseEnter() {
97
+ return _this2.setState({
98
+ showCoordinates: true
99
+ });
100
+ },
101
+ onMouseLeave: function onMouseLeave() {
102
+ return _this2.setState({
103
+ showCoordinates: false
104
+ });
105
+ },
106
+ onTouchStart: onTouchStart,
107
+ onTouchEnd: onTouchEnd,
108
+ onClick: onClick
109
+ }), /*#__PURE__*/_react["default"].createElement("g", {
110
+ className: (0, _classnames["default"])(classes.point, disabled && classes.disabled, classes[correctness], className),
111
+ onMouseEnter: function onMouseEnter() {
112
+ return _this2.setState({
113
+ showCoordinates: true
114
+ });
115
+ },
116
+ onMouseLeave: function onMouseLeave() {
117
+ return _this2.setState({
118
+ showCoordinates: false
119
+ });
120
+ }
121
+ }, /*#__PURE__*/_react["default"].createElement("circle", (0, _extends2["default"])({}, rest, {
122
+ style: {
123
+ fill: _renderUi.color.defaults.BLACK,
124
+ cursor: 'pointer'
125
+ },
126
+ r: r,
127
+ cx: scale.x(x),
128
+ cy: scale.y(y)
129
+ })), labelNode && coordinatesOnHover && showCoordinates && /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_coordinatesLabel["default"], {
130
+ graphProps: graphProps,
131
+ x: x,
132
+ y: y
133
+ }), labelNode)));
134
+ }
135
+ }]);
136
+ return RawBp;
137
+ }(_react["default"].Component);
138
+
139
+ exports.RawBp = RawBp;
140
+ (0, _defineProperty2["default"])(RawBp, "propTypes", {
141
+ classes: _propTypes["default"].object,
142
+ className: _propTypes["default"].string,
143
+ coordinatesOnHover: _propTypes["default"].bool,
144
+ correctness: _propTypes["default"].string,
145
+ disabled: _propTypes["default"].bool,
146
+ labelNode: _propTypes["default"].object,
147
+ x: _propTypes["default"].number,
148
+ y: _propTypes["default"].number,
149
+ graphProps: _plot.types.GraphPropsType.isRequired
150
+ });
151
+ //# 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","fill","cursor","pointerEvents","setState","point","color","defaults","BLACK","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 { color } from '@pie-lib/render-ui';\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\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.disabled, classes[correctness], className)}\n onMouseEnter={() => this.setState({ showCoordinates: true })}\n onMouseLeave={() => this.setState({ showCoordinates: false })}\n >\n <circle\n {...rest}\n style={{ fill: color.defaults.BLACK, cursor: 'pointer' }}\n r={r}\n cx={scale.x(x)}\n cy={scale.y(y)}\n />\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,94 @@
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 _renderUi = require("@pie-lib/render-ui");
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: _renderUi.color.defaults.SECONDARY
71
+ }
72
+ },
73
+ disabled: {
74
+ '& circle, & polygon': _objectSpread({}, (0, _styles.disabled)())
75
+ },
76
+ correct: {
77
+ '& circle, & polygon': _objectSpread({}, (0, _styles.correct)())
78
+ },
79
+ incorrect: {
80
+ '& circle, & polygon': _objectSpread({}, (0, _styles.incorrect)())
81
+ },
82
+ missing: {
83
+ '& circle, & polygon': _objectSpread({}, (0, _styles.missing)())
84
+ }
85
+ };
86
+ };
87
+
88
+ var BasePoint = (0, _index.withStyles)(styles)((0, _plot.gridDraggable)(opts)(_basePoint.RawBp));
89
+ exports.BasePoint = BasePoint;
90
+ var ArrowPoint = (0, _index.withStyles)(styles)((0, _plot.gridDraggable)(opts)(_arrowPoint.RawArrow));
91
+ exports.ArrowPoint = ArrowPoint;
92
+ var Arrow = (0, _index.withStyles)(styles)((0, _plot.gridDraggable)(opts)(_arrow["default"]));
93
+ exports.Arrow = Arrow;
94
+ //# 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","SECONDARY","disabled","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,gBAAMC,QAAN,CAAeC;AAFA;AADlB,KADF;AAOLC,IAAAA,QAAQ,EAAE;AACR,+CACK,uBADL;AADQ,KAPL;AAYLC,IAAAA,OAAO,EAAE;AACP,+CACK,sBADL;AADO,KAZJ;AAiBLC,IAAAA,SAAS,EAAE;AACT,+CACK,wBADL;AADS,KAjBN;AAsBLC,IAAAA,OAAO,EAAE;AACP,+CACK,sBADL;AADO;AAtBJ,GAAP;AA4BD,CA7BD;;AA+BO,IAAMC,SAAS,GAAG,uBAAWV,MAAX,EAAmB,yBAAclB,IAAd,EAAoB6B,gBAApB,CAAnB,CAAlB;;AACA,IAAMC,UAAU,GAAG,uBAAWZ,MAAX,EAAmB,yBAAclB,IAAd,EAAoB+B,oBAApB,CAAnB,CAAnB;;AACA,IAAMC,KAAK,GAAG,uBAAWd,MAAX,EAAmB,yBAAclB,IAAd,EAAoBiC,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 } from '../styles';\nimport { RawBp } from './base-point';\nimport { RawArrow } from './arrow-point';\nimport { color } from '@pie-lib/render-ui';\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.SECONDARY,\n },\n },\n disabled: {\n '& circle, & polygon': {\n ...disabled(),\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,49 @@
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.disabled = exports.correct = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _renderUi = require("@pie-lib/render-ui");
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, _renderUi.color.disabled()), (0, _defineProperty2["default"])(_ref, "pointerEvents", 'none'), _ref;
19
+ };
20
+
21
+ exports.disabled = disabled;
22
+
23
+ var correct = function correct() {
24
+ var _ref2;
25
+
26
+ var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
27
+ return _ref2 = {}, (0, _defineProperty2["default"])(_ref2, key, _renderUi.color.correct()), (0, _defineProperty2["default"])(_ref2, "pointerEvents", 'none'), _ref2;
28
+ };
29
+
30
+ exports.correct = correct;
31
+
32
+ var incorrect = function incorrect() {
33
+ var _ref3;
34
+
35
+ var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
36
+ return _ref3 = {}, (0, _defineProperty2["default"])(_ref3, key, _renderUi.color.incorrect()), (0, _defineProperty2["default"])(_ref3, "pointerEvents", 'none'), _ref3;
37
+ };
38
+
39
+ exports.incorrect = incorrect;
40
+
41
+ var missing = function missing() {
42
+ var _ref4;
43
+
44
+ var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'fill';
45
+ return _ref4 = {}, (0, _defineProperty2["default"])(_ref4, key, _renderUi.color.missing()), (0, _defineProperty2["default"])(_ref4, "pointerEvents", 'none'), _ref4;
46
+ };
47
+
48
+ exports.missing = missing;
49
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tools/shared/styles.js"],"names":["disabled","key","color","correct","incorrect","missing"],"mappings":";;;;;;;;;;;AAAA;;AAEO,IAAMA,QAAQ,GAAG,SAAXA,QAAW;AAAA;;AAAA,MAACC,GAAD,uEAAO,MAAP;AAAA,2DACrBA,GADqB,EACfC,gBAAMF,QAAN,EADe,2DAEP,MAFO;AAAA,CAAjB;;;;AAKA,IAAMG,OAAO,GAAG,SAAVA,OAAU;AAAA;;AAAA,MAACF,GAAD,uEAAO,MAAP;AAAA,6DACpBA,GADoB,EACdC,gBAAMC,OAAN,EADc,4DAEN,MAFM;AAAA,CAAhB;;;;AAIA,IAAMC,SAAS,GAAG,SAAZA,SAAY;AAAA;;AAAA,MAACH,GAAD,uEAAO,MAAP;AAAA,6DACtBA,GADsB,EAChBC,gBAAME,SAAN,EADgB,4DAER,MAFQ;AAAA,CAAlB;;;;AAKA,IAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA;;AAAA,MAACJ,GAAD,uEAAO,MAAP;AAAA,6DACpBA,GADoB,EACdC,gBAAMG,OAAN,EADc,4DAEN,MAFM;AAAA,CAAhB","sourcesContent":["import { color } from '@pie-lib/render-ui';\n\nexport const disabled = (key = 'fill') => ({\n [key]: color.disabled(),\n pointerEvents: 'none',\n});\n\nexport const correct = (key = 'fill') => ({\n [key]: color.correct(),\n pointerEvents: 'none',\n});\nexport const incorrect = (key = 'fill') => ({\n [key]: color.incorrect(),\n pointerEvents: 'none',\n});\n\nexport const missing = (key = 'fill') => ({\n [key]: color.missing(),\n pointerEvents: 'none',\n});\n"],"file":"styles.js"}
@@ -0,0 +1,19 @@
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 = 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
+ //# 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"],"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","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"],"file":"types.js"}
@@ -0,0 +1,107 @@
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.UndoRedo = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+
22
+ var _react = _interopRequireDefault(require("react"));
23
+
24
+ var _propTypes = _interopRequireDefault(require("prop-types"));
25
+
26
+ var _classnames = _interopRequireDefault(require("classnames"));
27
+
28
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
29
+
30
+ var _core = require("@material-ui/core");
31
+
32
+ var _renderUi = require("@pie-lib/render-ui");
33
+
34
+ var _translator = _interopRequireDefault(require("@pie-lib/translator"));
35
+
36
+ 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); }; }
37
+
38
+ 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; } }
39
+
40
+ var translator = _translator["default"].translator;
41
+
42
+ var UndoRedo = /*#__PURE__*/function (_React$Component) {
43
+ (0, _inherits2["default"])(UndoRedo, _React$Component);
44
+
45
+ var _super = _createSuper(UndoRedo);
46
+
47
+ function UndoRedo() {
48
+ (0, _classCallCheck2["default"])(this, UndoRedo);
49
+ return _super.apply(this, arguments);
50
+ }
51
+
52
+ (0, _createClass2["default"])(UndoRedo, [{
53
+ key: "render",
54
+ value: function render() {
55
+ var _this$props = this.props,
56
+ classes = _this$props.classes,
57
+ className = _this$props.className,
58
+ _this$props$onReset = _this$props.onReset,
59
+ onReset = _this$props$onReset === void 0 ? false : _this$props$onReset,
60
+ language = _this$props.language;
61
+ return /*#__PURE__*/_react["default"].createElement("div", {
62
+ className: (0, _classnames["default"])(className)
63
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
64
+ classes: {
65
+ root: classes.button
66
+ },
67
+ onClick: function onClick() {
68
+ return onReset();
69
+ }
70
+ }, translator.t('graphing.reset', {
71
+ lng: language
72
+ })));
73
+ }
74
+ }]);
75
+ return UndoRedo;
76
+ }(_react["default"].Component);
77
+
78
+ exports.UndoRedo = UndoRedo;
79
+ (0, _defineProperty2["default"])(UndoRedo, "propTypes", {
80
+ classes: _propTypes["default"].object,
81
+ className: _propTypes["default"].string,
82
+ onReset: _propTypes["default"].func.isRequired,
83
+ language: _propTypes["default"].string
84
+ });
85
+ (0, _defineProperty2["default"])(UndoRedo, "defaultProps", {});
86
+
87
+ var styles = function styles(theme) {
88
+ return {
89
+ button: {
90
+ color: _renderUi.color.text(),
91
+ fontWeight: 'bold',
92
+ marginBottom: theme.spacing.unit / 2,
93
+ '&:not(:last-of-type)': {
94
+ marginRight: theme.spacing.unit / 2
95
+ }
96
+ },
97
+ undoRedoDiv: {
98
+ display: 'flex',
99
+ flexDirection: 'row'
100
+ }
101
+ };
102
+ };
103
+
104
+ var _default = (0, _core.withStyles)(styles)(UndoRedo);
105
+
106
+ exports["default"] = _default;
107
+ //# sourceMappingURL=undo-redo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/undo-redo.jsx"],"names":["translator","Translator","UndoRedo","props","classes","className","onReset","language","root","button","t","lng","React","Component","PropTypes","object","string","func","isRequired","styles","theme","color","text","fontWeight","marginBottom","spacing","unit","marginRight","undoRedoDiv","display","flexDirection"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAQA,UAAR,GAAuBC,sBAAvB,CAAQD,UAAR;;IAEaE,Q;;;;;;;;;;;;WASX,kBAAS;AACP,wBAA0D,KAAKC,KAA/D;AAAA,UAAQC,OAAR,eAAQA,OAAR;AAAA,UAAiBC,SAAjB,eAAiBA,SAAjB;AAAA,4CAA4BC,OAA5B;AAAA,UAA4BA,OAA5B,oCAAsC,KAAtC;AAAA,UAA6CC,QAA7C,eAA6CA,QAA7C;AACA,0BACE;AAAK,QAAA,SAAS,EAAE,4BAAWF,SAAX;AAAhB,sBACE,gCAAC,kBAAD;AAAQ,QAAA,OAAO,EAAE;AAAEG,UAAAA,IAAI,EAAEJ,OAAO,CAACK;AAAhB,SAAjB;AAA2C,QAAA,OAAO,EAAE;AAAA,iBAAMH,OAAO,EAAb;AAAA;AAApD,SACGN,UAAU,CAACU,CAAX,CAAa,gBAAb,EAA+B;AAAEC,QAAAA,GAAG,EAAEJ;AAAP,OAA/B,CADH,CADF,CADF;AAOD;;;EAlB2BK,kBAAMC,S;;;iCAAvBX,Q,eACQ;AACjBE,EAAAA,OAAO,EAAEU,sBAAUC,MADF;AAEjBV,EAAAA,SAAS,EAAES,sBAAUE,MAFJ;AAGjBV,EAAAA,OAAO,EAAEQ,sBAAUG,IAAV,CAAeC,UAHP;AAIjBX,EAAAA,QAAQ,EAAEO,sBAAUE;AAJH,C;iCADRd,Q,kBAOW,E;;AAcxB,IAAMiB,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBX,IAAAA,MAAM,EAAE;AACNY,MAAAA,KAAK,EAAEA,gBAAMC,IAAN,EADD;AAENC,MAAAA,UAAU,EAAE,MAFN;AAGNC,MAAAA,YAAY,EAAEJ,KAAK,CAACK,OAAN,CAAcC,IAAd,GAAqB,CAH7B;AAIN,8BAAwB;AACtBC,QAAAA,WAAW,EAAEP,KAAK,CAACK,OAAN,CAAcC,IAAd,GAAqB;AADZ;AAJlB,KADiB;AASzBE,IAAAA,WAAW,EAAE;AACXC,MAAAA,OAAO,EAAE,MADE;AAEXC,MAAAA,aAAa,EAAE;AAFJ;AATY,GAAZ;AAAA,CAAf;;eAee,sBAAWX,MAAX,EAAmBjB,QAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core';\nimport { color } from '@pie-lib/render-ui';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nexport class UndoRedo extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n className: PropTypes.string,\n onReset: PropTypes.func.isRequired,\n language: PropTypes.string,\n };\n static defaultProps = {};\n\n render() {\n const { classes, className, onReset = false, language } = this.props;\n return (\n <div className={classNames(className)}>\n <Button classes={{ root: classes.button }} onClick={() => onReset()}>\n {translator.t('graphing.reset', { lng: language })}\n </Button>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n button: {\n color: color.text(),\n fontWeight: 'bold',\n marginBottom: theme.spacing.unit / 2,\n '&:not(:last-of-type)': {\n marginRight: theme.spacing.unit / 2,\n },\n },\n undoRedoDiv: {\n display: 'flex',\n flexDirection: 'row',\n },\n});\n\nexport default withStyles(styles)(UndoRedo);\n"],"file":"undo-redo.js"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.useDebounce = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _react = require("react");
13
+
14
+ var useDebounce = function useDebounce(value, delay) {
15
+ var _useState = (0, _react.useState)(value),
16
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
17
+ debouncedValue = _useState2[0],
18
+ setDebouncedValue = _useState2[1];
19
+
20
+ (0, _react.useEffect)(function () {
21
+ var handler = setTimeout(function () {
22
+ setDebouncedValue(value);
23
+ }, delay);
24
+ return function () {
25
+ return clearTimeout(handler);
26
+ };
27
+ }, [value]);
28
+ return debouncedValue;
29
+ };
30
+
31
+ exports.useDebounce = useDebounce;
32
+ //# sourceMappingURL=use-debounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/use-debounce.js"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","handler","setTimeout","clearTimeout"],"mappings":";;;;;;;;;;;AAAA;;AAEO,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD,EAAQC,KAAR,EAAkB;AAC3C,kBAA4C,qBAASD,KAAT,CAA5C;AAAA;AAAA,MAAOE,cAAP;AAAA,MAAuBC,iBAAvB;;AAEA,wBAAU,YAAM;AACd,QAAMC,OAAO,GAAGC,UAAU,CAAC,YAAM;AAC/BF,MAAAA,iBAAiB,CAACH,KAAD,CAAjB;AACD,KAFyB,EAEvBC,KAFuB,CAA1B;AAGA,WAAO;AAAA,aAAMK,YAAY,CAACF,OAAD,CAAlB;AAAA,KAAP;AACD,GALD,EAKG,CAACJ,KAAD,CALH;AAMA,SAAOE,cAAP;AACD,CAVM","sourcesContent":["import { useState, useEffect } from 'react';\n\nexport const useDebounce = (value, delay) => {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n return () => clearTimeout(handler);\n }, [value]);\n return debouncedValue;\n};\n"],"file":"use-debounce.js"}