@pie-lib/graphing 2.17.0 → 2.18.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 (147) hide show
  1. package/CHANGELOG.md +13 -65
  2. package/package.json +9 -8
  3. package/src/axis/axes.jsx +1 -1
  4. package/src/coordinates-label.jsx +1 -1
  5. package/src/graph-with-controls.jsx +1 -1
  6. package/src/grid-setup.jsx +1 -1
  7. package/src/key-legend.jsx +1 -1
  8. package/src/labels.jsx +1 -1
  9. package/src/mark-label.jsx +1 -1
  10. package/src/toggle-bar.jsx +1 -1
  11. package/src/tools/circle/bg-circle.jsx +1 -1
  12. package/src/tools/circle/component.jsx +1 -1
  13. package/src/tools/polygon/line.jsx +1 -1
  14. package/src/tools/polygon/polygon.jsx +1 -1
  15. package/src/tools/shared/line/index.jsx +1 -1
  16. package/src/tools/shared/line/line-path.jsx +1 -1
  17. package/src/tools/shared/point/index.jsx +1 -1
  18. package/src/tools/shared/styles.js +1 -1
  19. package/src/tools/sine/__tests__/component.test.jsx +1 -1
  20. package/src/undo-redo.jsx +1 -1
  21. package/lib/axis/arrow.js +0 -115
  22. package/lib/axis/arrow.js.map +0 -1
  23. package/lib/axis/axes.js +0 -415
  24. package/lib/axis/axes.js.map +0 -1
  25. package/lib/axis/index.js +0 -26
  26. package/lib/axis/index.js.map +0 -1
  27. package/lib/bg.js +0 -139
  28. package/lib/bg.js.map +0 -1
  29. package/lib/container/actions.js +0 -24
  30. package/lib/container/actions.js.map +0 -1
  31. package/lib/container/index.js +0 -163
  32. package/lib/container/index.js.map +0 -1
  33. package/lib/container/marks.js +0 -27
  34. package/lib/container/marks.js.map +0 -1
  35. package/lib/container/middleware.js +0 -25
  36. package/lib/container/middleware.js.map +0 -1
  37. package/lib/container/reducer.js +0 -25
  38. package/lib/container/reducer.js.map +0 -1
  39. package/lib/coordinates-label.js +0 -109
  40. package/lib/coordinates-label.js.map +0 -1
  41. package/lib/graph-with-controls.js +0 -359
  42. package/lib/graph-with-controls.js.map +0 -1
  43. package/lib/graph.js +0 -371
  44. package/lib/graph.js.map +0 -1
  45. package/lib/grid-setup.js +0 -462
  46. package/lib/grid-setup.js.map +0 -1
  47. package/lib/grid.js +0 -176
  48. package/lib/grid.js.map +0 -1
  49. package/lib/index.js +0 -59
  50. package/lib/index.js.map +0 -1
  51. package/lib/key-legend.js +0 -246
  52. package/lib/key-legend.js.map +0 -1
  53. package/lib/label-svg-icon.js +0 -56
  54. package/lib/label-svg-icon.js.map +0 -1
  55. package/lib/labels.js +0 -299
  56. package/lib/labels.js.map +0 -1
  57. package/lib/mark-label.js +0 -321
  58. package/lib/mark-label.js.map +0 -1
  59. package/lib/shared/index.js +0 -136
  60. package/lib/toggle-bar.js +0 -336
  61. package/lib/toggle-bar.js.map +0 -1
  62. package/lib/tool-menu.js +0 -112
  63. package/lib/tool-menu.js.map +0 -1
  64. package/lib/tools/absolute/component.js +0 -35
  65. package/lib/tools/absolute/component.js.map +0 -1
  66. package/lib/tools/absolute/index.js +0 -63
  67. package/lib/tools/absolute/index.js.map +0 -1
  68. package/lib/tools/circle/bg-circle.js +0 -173
  69. package/lib/tools/circle/bg-circle.js.map +0 -1
  70. package/lib/tools/circle/component.js +0 -406
  71. package/lib/tools/circle/component.js.map +0 -1
  72. package/lib/tools/circle/index.js +0 -51
  73. package/lib/tools/circle/index.js.map +0 -1
  74. package/lib/tools/exponential/component.js +0 -34
  75. package/lib/tools/exponential/component.js.map +0 -1
  76. package/lib/tools/exponential/index.js +0 -71
  77. package/lib/tools/exponential/index.js.map +0 -1
  78. package/lib/tools/index.js +0 -99
  79. package/lib/tools/index.js.map +0 -1
  80. package/lib/tools/line/component.js +0 -103
  81. package/lib/tools/line/component.js.map +0 -1
  82. package/lib/tools/line/index.js +0 -16
  83. package/lib/tools/line/index.js.map +0 -1
  84. package/lib/tools/parabola/component.js +0 -34
  85. package/lib/tools/parabola/component.js.map +0 -1
  86. package/lib/tools/parabola/index.js +0 -63
  87. package/lib/tools/parabola/index.js.map +0 -1
  88. package/lib/tools/point/component.js +0 -186
  89. package/lib/tools/point/component.js.map +0 -1
  90. package/lib/tools/point/index.js +0 -32
  91. package/lib/tools/point/index.js.map +0 -1
  92. package/lib/tools/polygon/component.js +0 -518
  93. package/lib/tools/polygon/component.js.map +0 -1
  94. package/lib/tools/polygon/index.js +0 -106
  95. package/lib/tools/polygon/index.js.map +0 -1
  96. package/lib/tools/polygon/line.js +0 -157
  97. package/lib/tools/polygon/line.js.map +0 -1
  98. package/lib/tools/polygon/polygon.js +0 -165
  99. package/lib/tools/polygon/polygon.js.map +0 -1
  100. package/lib/tools/ray/component.js +0 -102
  101. package/lib/tools/ray/component.js.map +0 -1
  102. package/lib/tools/ray/index.js +0 -16
  103. package/lib/tools/ray/index.js.map +0 -1
  104. package/lib/tools/segment/component.js +0 -75
  105. package/lib/tools/segment/component.js.map +0 -1
  106. package/lib/tools/segment/index.js +0 -16
  107. package/lib/tools/segment/index.js.map +0 -1
  108. package/lib/tools/shared/arrow-head.js +0 -70
  109. package/lib/tools/shared/arrow-head.js.map +0 -1
  110. package/lib/tools/shared/icons/CorrectSVG.js +0 -36
  111. package/lib/tools/shared/icons/CorrectSVG.js.map +0 -1
  112. package/lib/tools/shared/icons/IncorrectSVG.js +0 -36
  113. package/lib/tools/shared/icons/IncorrectSVG.js.map +0 -1
  114. package/lib/tools/shared/icons/MissingSVG.js +0 -35
  115. package/lib/tools/shared/icons/MissingSVG.js.map +0 -1
  116. package/lib/tools/shared/line/index.js +0 -599
  117. package/lib/tools/shared/line/index.js.map +0 -1
  118. package/lib/tools/shared/line/line-path.js +0 -151
  119. package/lib/tools/shared/line/line-path.js.map +0 -1
  120. package/lib/tools/shared/line/with-root-edge.js +0 -155
  121. package/lib/tools/shared/line/with-root-edge.js.map +0 -1
  122. package/lib/tools/shared/point/arrow-point.js +0 -113
  123. package/lib/tools/shared/point/arrow-point.js.map +0 -1
  124. package/lib/tools/shared/point/arrow.js +0 -96
  125. package/lib/tools/shared/point/arrow.js.map +0 -1
  126. package/lib/tools/shared/point/base-point.js +0 -175
  127. package/lib/tools/shared/point/base-point.js.map +0 -1
  128. package/lib/tools/shared/point/index.js +0 -97
  129. package/lib/tools/shared/point/index.js.map +0 -1
  130. package/lib/tools/shared/styles.js +0 -58
  131. package/lib/tools/shared/styles.js.map +0 -1
  132. package/lib/tools/shared/types.js +0 -23
  133. package/lib/tools/shared/types.js.map +0 -1
  134. package/lib/tools/sine/component.js +0 -51
  135. package/lib/tools/sine/component.js.map +0 -1
  136. package/lib/tools/sine/index.js +0 -63
  137. package/lib/tools/sine/index.js.map +0 -1
  138. package/lib/tools/vector/component.js +0 -88
  139. package/lib/tools/vector/component.js.map +0 -1
  140. package/lib/tools/vector/index.js +0 -16
  141. package/lib/tools/vector/index.js.map +0 -1
  142. package/lib/undo-redo.js +0 -123
  143. package/lib/undo-redo.js.map +0 -1
  144. package/lib/use-debounce.js +0 -32
  145. package/lib/use-debounce.js.map +0 -1
  146. package/lib/utils.js +0 -307
  147. package/lib/utils.js.map +0 -1
@@ -1,173 +0,0 @@
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["default"] = exports.BgCircle = void 0;
11
-
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
-
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
-
20
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
-
22
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
-
26
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
-
28
- var _react = _interopRequireDefault(require("react"));
29
-
30
- var _propTypes = _interopRequireDefault(require("prop-types"));
31
-
32
- var _styles = require("@material-ui/core/styles");
33
-
34
- var _classnames = _interopRequireDefault(require("classnames"));
35
-
36
- var _plot = require("@pie-lib/plot");
37
-
38
- var _index = require("./../../shared/index");
39
-
40
- var utils = _interopRequireWildcard(require("../../utils"));
41
-
42
- var _styles2 = require("../shared/styles");
43
-
44
- var _excluded = ["classes", "disabled", "className", "correctness", "x", "y", "radius", "graphProps"];
45
-
46
- 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); }
47
-
48
- 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; }
49
-
50
- 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; }
51
-
52
- 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; }
53
-
54
- 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); }; }
55
-
56
- 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; } }
57
-
58
- /**
59
- * A low level circle component
60
- *
61
- * TODO: This and base point have a lot of similarities - merge commonality
62
- *
63
- */
64
- var RawCircle = /*#__PURE__*/function (_React$Component) {
65
- (0, _inherits2["default"])(RawCircle, _React$Component);
66
-
67
- var _super = _createSuper(RawCircle);
68
-
69
- function RawCircle() {
70
- (0, _classCallCheck2["default"])(this, RawCircle);
71
- return _super.apply(this, arguments);
72
- }
73
-
74
- (0, _createClass2["default"])(RawCircle, [{
75
- key: "render",
76
- value: function render() {
77
- var _this$props = this.props,
78
- classes = _this$props.classes,
79
- disabled = _this$props.disabled,
80
- className = _this$props.className,
81
- correctness = _this$props.correctness,
82
- x = _this$props.x,
83
- y = _this$props.y,
84
- radius = _this$props.radius,
85
- graphProps = _this$props.graphProps,
86
- rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
87
- var scale = graphProps.scale;
88
- var rx = Math.abs(scale.x(x + radius) - scale.x(x));
89
- var ry = Math.abs(scale.y(y + radius) - scale.y(y));
90
- return /*#__PURE__*/_react["default"].createElement("ellipse", (0, _extends2["default"])({
91
- className: (0, _classnames["default"])(classes.bgCircle, disabled && classes.disabledSecondary, classes[correctness], className),
92
- cx: scale.x(x),
93
- cy: scale.y(y),
94
- rx: rx,
95
- ry: ry
96
- }, rest));
97
- }
98
- }]);
99
- return RawCircle;
100
- }(_react["default"].Component);
101
-
102
- (0, _defineProperty2["default"])(RawCircle, "propTypes", {
103
- classes: _propTypes["default"].object.isRequired,
104
- className: _propTypes["default"].string,
105
- correctness: _propTypes["default"].string,
106
- disabled: _propTypes["default"].bool,
107
- x: _propTypes["default"].number.isRequired,
108
- y: _propTypes["default"].number.isRequired,
109
- radius: _propTypes["default"].number,
110
- graphProps: _plot.types.GraphPropsType.isRequired
111
- });
112
-
113
- var applyStyle = function applyStyle(fn) {
114
- return _objectSpread(_objectSpread({}, fn('stroke')), {}, {
115
- '&:hover': _objectSpread({
116
- strokeWidth: 3
117
- }, fn('stroke'))
118
- });
119
- };
120
-
121
- var styles = function styles() {
122
- return {
123
- bgCircle: {
124
- fill: 'transparent',
125
- stroke: _index.color.defaults.BLACK,
126
- strokeWidth: 3,
127
- transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',
128
- '&:hover': {
129
- strokeWidth: 6,
130
- stroke: _index.color.defaults.PRIMARY_DARK
131
- }
132
- },
133
- disabled: applyStyle(_styles2.disabled),
134
- disabledSecondary: applyStyle(_styles2.disabledSecondary),
135
- correct: applyStyle(_styles2.correct),
136
- incorrect: applyStyle(_styles2.incorrect),
137
- missing: applyStyle(_styles2.missing)
138
- };
139
- };
140
-
141
- var BgCircle = (0, _styles.withStyles)(styles)(RawCircle);
142
- exports.BgCircle = BgCircle;
143
-
144
- var _default = (0, _plot.gridDraggable)({
145
- bounds: function bounds(props, _ref) {
146
- var domain = _ref.domain,
147
- range = _ref.range;
148
- var x = props.x,
149
- y = props.y;
150
- var area = {
151
- left: x,
152
- top: y,
153
- bottom: y,
154
- right: x
155
- };
156
- return utils.bounds(area, domain, range);
157
- },
158
- anchorPoint: function anchorPoint(props) {
159
- var x = props.x,
160
- y = props.y;
161
- return {
162
- x: x,
163
- y: y
164
- };
165
- },
166
- fromDelta: function fromDelta(props, delta) {
167
- var newPoint = utils.point(props).add(utils.point(delta));
168
- return newPoint;
169
- }
170
- })(BgCircle);
171
-
172
- exports["default"] = _default;
173
- //# sourceMappingURL=bg-circle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/tools/circle/bg-circle.jsx"],"names":["RawCircle","props","classes","disabled","className","correctness","x","y","radius","graphProps","rest","scale","rx","Math","abs","ry","bgCircle","disabledSecondary","React","Component","PropTypes","object","isRequired","string","bool","number","types","GraphPropsType","applyStyle","fn","strokeWidth","styles","fill","stroke","color","defaults","BLACK","transition","PRIMARY_DARK","correct","incorrect","missing","BgCircle","bounds","domain","range","area","left","top","bottom","right","utils","anchorPoint","fromDelta","delta","newPoint","point","add"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { types, gridDraggable } from '@pie-lib/plot';\nimport { color } from '../../../../render-ui/src/index';\nimport * as utils from '../../utils';\nimport { disabled, disabledSecondary, correct, incorrect, missing } from '../shared/styles';\n\n/**\n * A low level circle component\n *\n * TODO: This and base point have a lot of similarities - merge commonality\n *\n */\nclass RawCircle extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n correctness: PropTypes.string,\n disabled: PropTypes.bool,\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n radius: PropTypes.number,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n render() {\n const { classes, disabled, className, correctness, x, y, radius, graphProps, ...rest } = this.props;\n const { scale } = graphProps;\n const rx = Math.abs(scale.x(x + radius) - scale.x(x));\n const ry = Math.abs(scale.y(y + radius) - scale.y(y));\n\n return (\n <ellipse\n className={classNames(classes.bgCircle, disabled && classes.disabledSecondary, classes[correctness], className)}\n cx={scale.x(x)}\n cy={scale.y(y)}\n rx={rx}\n ry={ry}\n {...rest}\n />\n );\n }\n}\n\nconst applyStyle = (fn) => ({\n ...fn('stroke'),\n '&:hover': {\n strokeWidth: 3,\n ...fn('stroke'),\n },\n});\n\nconst styles = () => ({\n bgCircle: {\n fill: 'transparent',\n stroke: color.defaults.BLACK,\n strokeWidth: 3,\n transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',\n '&:hover': {\n strokeWidth: 6,\n stroke: color.defaults.PRIMARY_DARK,\n },\n },\n disabled: applyStyle(disabled),\n disabledSecondary: applyStyle(disabledSecondary),\n correct: applyStyle(correct),\n incorrect: applyStyle(incorrect),\n missing: applyStyle(missing),\n});\n\nexport const BgCircle = withStyles(styles)(RawCircle);\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { x, y } = props;\n const area = { left: x, top: y, bottom: y, right: x };\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { x, y } = props;\n return { x, y };\n },\n fromDelta: (props, delta) => {\n const newPoint = utils.point(props).add(utils.point(delta));\n return newPoint;\n },\n})(BgCircle);\n"],"file":"bg-circle.js"}
@@ -1,406 +0,0 @@
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.RawBaseCircle = exports.BaseCircle = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireDefault(require("react"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _styles = require("@material-ui/core/styles");
31
-
32
- var _point = require("../shared/point");
33
-
34
- var _bgCircle = _interopRequireDefault(require("./bg-circle"));
35
-
36
- var _utils = require("../../utils");
37
-
38
- var _classnames = _interopRequireDefault(require("classnames"));
39
-
40
- var _plot = require("@pie-lib/plot");
41
-
42
- var _withRootEdge = require("../shared/line/with-root-edge");
43
-
44
- var _reactDom = _interopRequireDefault(require("react-dom"));
45
-
46
- var _markLabel = _interopRequireDefault(require("../../mark-label"));
47
-
48
- var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
49
-
50
- var _index = require("./../../shared/index");
51
-
52
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
53
-
54
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
55
-
56
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
57
-
58
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
59
-
60
- var opacityPulsate = function opacityPulsate(opacity) {
61
- return {
62
- '0%': {
63
- opacity: '0.0'
64
- },
65
- '50%': {
66
- opacity: opacity
67
- },
68
- '100%': {
69
- opacity: '0.0'
70
- }
71
- };
72
- };
73
-
74
- var getRadius = function getRadius(from, outer) {
75
- var c = (0, _utils.point)(from);
76
- return c.dist((0, _utils.point)(outer));
77
- };
78
-
79
- var RawBaseCircle = /*#__PURE__*/function (_React$Component) {
80
- (0, _inherits2["default"])(RawBaseCircle, _React$Component);
81
-
82
- var _super = _createSuper(RawBaseCircle);
83
-
84
- function RawBaseCircle() {
85
- var _this;
86
-
87
- (0, _classCallCheck2["default"])(this, RawBaseCircle);
88
-
89
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
90
- args[_key] = arguments[_key];
91
- }
92
-
93
- _this = _super.call.apply(_super, [this].concat(args));
94
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChangePoint", function (point) {
95
- var _this$props = _this.props,
96
- middle = _this$props.middle,
97
- onChange = _this$props.onChange;
98
- var from = point.from,
99
- to = point.to; // because point.from.label and point.to.label can be different
100
-
101
- if (!(0, _utils.equalPoints)(from, to)) {
102
- if (middle) {
103
- point.middle = _objectSpread(_objectSpread({}, middle), (0, _utils.getMiddleOfTwoPoints)(from, to));
104
- }
105
-
106
- onChange(point);
107
- }
108
- });
109
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragFrom", function (draggedFrom) {
110
- var _this$props2 = _this.props,
111
- from = _this$props2.from,
112
- to = _this$props2.to;
113
-
114
- if (from.label) {
115
- draggedFrom.label = from.label;
116
- }
117
-
118
- if (!(0, _utils.equalPoints)(draggedFrom, to)) {
119
- _this.onChangePoint({
120
- from: draggedFrom,
121
- to: to
122
- });
123
- }
124
- });
125
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragTo", function (draggedTo) {
126
- var _this$props3 = _this.props,
127
- from = _this$props3.from,
128
- to = _this$props3.to;
129
-
130
- if (to.label) {
131
- draggedTo.label = to.label;
132
- }
133
-
134
- if (!(0, _utils.equalPoints)(from, draggedTo)) {
135
- _this.onChangePoint({
136
- from: from,
137
- to: draggedTo
138
- });
139
- }
140
- });
141
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragCircle", function (draggedFrom) {
142
- var _this$props4 = _this.props,
143
- from = _this$props4.from,
144
- to = _this$props4.to,
145
- onChange = _this$props4.onChange,
146
- middle = _this$props4.middle;
147
- var diff = (0, _utils.point)(from).sub((0, _utils.point)(draggedFrom));
148
- var draggedTo = (0, _utils.point)(to).sub(diff);
149
-
150
- if (from.label) {
151
- draggedFrom.label = from.label;
152
- }
153
-
154
- if (to.label) {
155
- draggedTo.label = to.label;
156
- }
157
-
158
- var updated = {
159
- from: draggedFrom,
160
- to: draggedTo
161
- };
162
-
163
- if (middle) {
164
- updated.middle = _objectSpread(_objectSpread({}, middle), (0, _utils.getMiddleOfTwoPoints)(draggedFrom, draggedTo));
165
- }
166
-
167
- _this.setState({
168
- draggedroot: undefined,
169
- draggedOuter: undefined,
170
- isCircleDrag: false
171
- }, function () {
172
- onChange(updated);
173
- });
174
- });
175
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "labelChange", function (point, type) {
176
- var changeMarkProps = _this.props.changeMarkProps;
177
-
178
- var update = _objectSpread({}, point);
179
-
180
- if (!point.label || (0, _isEmpty["default"])(point.label)) {
181
- delete update.label;
182
- }
183
-
184
- changeMarkProps((0, _defineProperty2["default"])({}, type, update));
185
- });
186
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "clickPoint", function (point, type, data) {
187
- var _this$props5 = _this.props,
188
- changeMarkProps = _this$props5.changeMarkProps,
189
- disabled = _this$props5.disabled,
190
- from = _this$props5.from,
191
- to = _this$props5.to,
192
- labelModeEnabled = _this$props5.labelModeEnabled,
193
- limitLabeling = _this$props5.limitLabeling,
194
- onClick = _this$props5.onClick;
195
-
196
- if (!labelModeEnabled) {
197
- onClick(point || data);
198
- return;
199
- }
200
-
201
- if (disabled) {
202
- return;
203
- } // limit labeling the points of the circle
204
-
205
-
206
- if (limitLabeling) {
207
- return;
208
- }
209
-
210
- if (type === 'middle' && !point && from && to) {
211
- point = _objectSpread(_objectSpread({}, point), (0, _utils.getMiddleOfTwoPoints)(from, to));
212
- }
213
-
214
- changeMarkProps((0, _defineProperty2["default"])({
215
- from: from,
216
- to: to
217
- }, type, _objectSpread({
218
- label: ''
219
- }, point)));
220
-
221
- if (_this.input[type]) {
222
- _this.input[type].focus();
223
- }
224
- });
225
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "input", {});
226
- return _this;
227
- }
228
-
229
- (0, _createClass2["default"])(RawBaseCircle, [{
230
- key: "render",
231
- value: function render() {
232
- var _this2 = this;
233
-
234
- var _this$props6 = this.props,
235
- from = _this$props6.from,
236
- to = _this$props6.to,
237
- middle = _this$props6.middle,
238
- disabled = _this$props6.disabled,
239
- classes = _this$props6.classes,
240
- coordinatesOnHover = _this$props6.coordinatesOnHover,
241
- building = _this$props6.building,
242
- onDragStart = _this$props6.onDragStart,
243
- onDragStop = _this$props6.onDragStop,
244
- onClick = _this$props6.onClick,
245
- correctness = _this$props6.correctness,
246
- graphProps = _this$props6.graphProps,
247
- labelNode = _this$props6.labelNode,
248
- labelModeEnabled = _this$props6.labelModeEnabled;
249
- var common = {
250
- onDragStart: onDragStart,
251
- onDragStop: onDragStop,
252
- graphProps: graphProps,
253
- onClick: onClick
254
- };
255
- to = to || from;
256
- var radius = getRadius(from, to);
257
- var fromLabelNode = null;
258
- var toLabelNode = null;
259
- var circleLabelNode = null;
260
-
261
- if (labelNode) {
262
- if (from && from.hasOwnProperty('label')) {
263
- fromLabelNode = /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
264
- inputRef: function inputRef(r) {
265
- return _this2.input.from = r;
266
- },
267
- disabled: !labelModeEnabled,
268
- mark: from,
269
- graphProps: graphProps,
270
- onChange: function onChange(label) {
271
- return _this2.labelChange(_objectSpread(_objectSpread({}, from), {}, {
272
- label: label
273
- }), 'from');
274
- }
275
- }), labelNode);
276
- }
277
-
278
- if (to && to.hasOwnProperty('label')) {
279
- toLabelNode = /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
280
- inputRef: function inputRef(r) {
281
- return _this2.input.to = r;
282
- },
283
- disabled: !labelModeEnabled,
284
- mark: to,
285
- graphProps: graphProps,
286
- onChange: function onChange(label) {
287
- return _this2.labelChange(_objectSpread(_objectSpread({}, to), {}, {
288
- label: label
289
- }), 'to');
290
- }
291
- }), labelNode);
292
- }
293
-
294
- if (middle && middle.hasOwnProperty('label')) {
295
- circleLabelNode = /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
296
- inputRef: function inputRef(r) {
297
- return _this2.input.middle = r;
298
- },
299
- disabled: !labelModeEnabled,
300
- mark: middle,
301
- graphProps: graphProps,
302
- onChange: function onChange(label) {
303
- return _this2.labelChange(_objectSpread(_objectSpread({}, middle), {}, {
304
- label: label
305
- }), 'middle');
306
- }
307
- }), labelNode);
308
- }
309
- }
310
-
311
- return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement(_bgCircle["default"], (0, _extends2["default"])({
312
- disabled: building || disabled,
313
- correctness: correctness,
314
- className: (0, _classnames["default"])(building && classes.bgCircleBuilding),
315
- x: from.x,
316
- y: from.y,
317
- radius: radius,
318
- onDrag: this.dragCircle
319
- }, common, {
320
- onClick: function onClick(data) {
321
- return _this2.clickPoint(middle, 'middle', data);
322
- }
323
- })), circleLabelNode, /*#__PURE__*/_react["default"].createElement(_point.BasePoint, (0, _extends2["default"])({
324
- disabled: building || disabled,
325
- coordinatesOnHover: coordinatesOnHover,
326
- correctness: correctness,
327
- labelNode: labelNode,
328
- x: to.x,
329
- y: to.y,
330
- onDrag: this.dragTo
331
- }, common, {
332
- onClick: function onClick(data) {
333
- return _this2.clickPoint(to, 'to', data);
334
- }
335
- })), toLabelNode, /*#__PURE__*/_react["default"].createElement(_point.BasePoint, (0, _extends2["default"])({
336
- disabled: building || disabled,
337
- coordinatesOnHover: coordinatesOnHover,
338
- correctness: correctness,
339
- labelNode: labelNode,
340
- x: from.x,
341
- y: from.y,
342
- className: classes.from,
343
- onDrag: this.dragFrom
344
- }, common, {
345
- onClick: function onClick(data) {
346
- return _this2.clickPoint(from, 'from', data);
347
- }
348
- })), fromLabelNode);
349
- }
350
- }]);
351
- return RawBaseCircle;
352
- }(_react["default"].Component);
353
-
354
- exports.RawBaseCircle = RawBaseCircle;
355
- (0, _defineProperty2["default"])(RawBaseCircle, "propTypes", {
356
- building: _propTypes["default"].bool,
357
- classes: _propTypes["default"].object.isRequired,
358
- className: _propTypes["default"].string,
359
- coordinatesOnHover: _propTypes["default"].bool,
360
- correctness: _propTypes["default"].string,
361
- from: _plot.types.PointType,
362
- disabled: _propTypes["default"].bool,
363
- to: _plot.types.PointType,
364
- middle: _plot.types.PointType,
365
- onChange: _propTypes["default"].func.isRequired,
366
- onDragStart: _propTypes["default"].func,
367
- onDragStop: _propTypes["default"].func,
368
- graphProps: _plot.types.GraphPropsType.isRequired,
369
- onClick: _propTypes["default"].func,
370
- labelNode: _propTypes["default"].object,
371
- labelModeEnabled: _propTypes["default"].bool,
372
- changeMarkProps: _propTypes["default"].func,
373
- limitLabeling: _propTypes["default"].bool
374
- });
375
- (0, _defineProperty2["default"])(RawBaseCircle, "defaultProps", {
376
- onClick: function onClick() {
377
- return {};
378
- }
379
- });
380
- var BaseCircle = (0, _styles.withStyles)(function () {
381
- return {
382
- outerLine: {
383
- fill: 'rgb(0,0,0,0)',
384
- // TODO hardcoded color
385
- stroke: _index.color.defaults.BLACK,
386
- strokeWidth: 4,
387
- '&:hover': {
388
- strokeWidth: 6,
389
- stroke: _index.color.defaults.PRIMARY_DARK
390
- }
391
- },
392
- root: {},
393
- bgCircleBuilding: {
394
- stroke: _index.color.defaults.BLACK,
395
- animation: 'opacityPulse 2s ease-out',
396
- animationIterationCount: 'infinite',
397
- opacity: 1
398
- },
399
- '@keyframes opacityPulse': opacityPulsate('0.3')
400
- };
401
- })(RawBaseCircle);
402
- exports.BaseCircle = BaseCircle;
403
- var Component = (0, _withRootEdge.rootEdgeComponent)(BaseCircle);
404
- var _default = Component;
405
- exports["default"] = _default;
406
- //# sourceMappingURL=component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/tools/circle/component.jsx"],"names":["opacityPulsate","opacity","getRadius","from","outer","c","dist","RawBaseCircle","point","props","middle","onChange","to","draggedFrom","label","onChangePoint","draggedTo","diff","sub","updated","setState","draggedroot","undefined","draggedOuter","isCircleDrag","type","changeMarkProps","update","data","disabled","labelModeEnabled","limitLabeling","onClick","input","focus","classes","coordinatesOnHover","building","onDragStart","onDragStop","correctness","graphProps","labelNode","common","radius","fromLabelNode","toLabelNode","circleLabelNode","hasOwnProperty","ReactDOM","createPortal","r","labelChange","bgCircleBuilding","x","y","dragCircle","clickPoint","dragTo","dragFrom","React","Component","PropTypes","bool","object","isRequired","className","string","types","PointType","func","GraphPropsType","BaseCircle","outerLine","fill","stroke","color","defaults","BLACK","strokeWidth","PRIMARY_DARK","root","animation","animationIterationCount"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { BasePoint } from '../shared/point';\nimport BgCircle from './bg-circle';\nimport { getMiddleOfTwoPoints, point, equalPoints } from '../../utils';\nimport classNames from 'classnames';\nimport { types } from '@pie-lib/plot';\nimport { rootEdgeComponent } from '../shared/line/with-root-edge';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport isEmpty from 'lodash/isEmpty';\nimport { color } from '../../../../render-ui/src/index';\n\nconst opacityPulsate = (opacity) => ({\n '0%': { opacity: '0.0' },\n '50%': { opacity },\n '100%': { opacity: '0.0' },\n});\n\nconst getRadius = (from, outer) => {\n const c = point(from);\n return c.dist(point(outer));\n};\n\nexport class RawBaseCircle extends React.Component {\n static propTypes = {\n building: PropTypes.bool,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n coordinatesOnHover: PropTypes.bool,\n correctness: PropTypes.string,\n from: types.PointType,\n disabled: PropTypes.bool,\n to: types.PointType,\n middle: types.PointType,\n onChange: PropTypes.func.isRequired,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n onClick: PropTypes.func,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n changeMarkProps: PropTypes.func,\n limitLabeling: PropTypes.bool,\n };\n\n static defaultProps = {\n onClick: () => ({}),\n };\n\n onChangePoint = (point) => {\n const { middle, onChange } = this.props;\n const { from, to } = point;\n\n // because point.from.label and point.to.label can be different\n if (!equalPoints(from, to)) {\n if (middle) {\n point.middle = { ...middle, ...getMiddleOfTwoPoints(from, to) };\n }\n\n onChange(point);\n }\n };\n\n dragFrom = (draggedFrom) => {\n const { from, to } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (!equalPoints(draggedFrom, to)) {\n this.onChangePoint({ from: draggedFrom, to });\n }\n };\n\n dragTo = (draggedTo) => {\n const { from, to } = this.props;\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n if (!equalPoints(from, draggedTo)) {\n this.onChangePoint({ from, to: draggedTo });\n }\n };\n\n dragCircle = (draggedFrom) => {\n const { from, to, onChange, middle } = this.props;\n const diff = point(from).sub(point(draggedFrom));\n const draggedTo = point(to).sub(diff);\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n const updated = { from: draggedFrom, to: draggedTo };\n\n if (middle) {\n updated.middle = { ...middle, ...getMiddleOfTwoPoints(draggedFrom, draggedTo) };\n }\n\n this.setState(\n {\n draggedroot: undefined,\n draggedOuter: undefined,\n isCircleDrag: false,\n },\n () => {\n onChange(updated);\n },\n );\n };\n\n labelChange = (point, type) => {\n const { changeMarkProps } = this.props;\n const update = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete update.label;\n }\n\n changeMarkProps({ [type]: update });\n };\n\n clickPoint = (point, type, data) => {\n const { changeMarkProps, disabled, from, to, labelModeEnabled, limitLabeling, onClick } = this.props;\n if (!labelModeEnabled) {\n onClick(point || data);\n return;\n }\n\n if (disabled) {\n return;\n }\n\n // limit labeling the points of the circle\n if (limitLabeling) {\n return;\n }\n\n if (type === 'middle' && !point && from && to) {\n point = { ...point, ...getMiddleOfTwoPoints(from, to) };\n }\n\n changeMarkProps({ from, to, [type]: { label: '', ...point } });\n\n if (this.input[type]) {\n this.input[type].focus();\n }\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n let {\n from,\n to,\n middle,\n disabled,\n classes,\n coordinatesOnHover,\n building,\n onDragStart,\n onDragStop,\n onClick,\n correctness,\n graphProps,\n labelNode,\n labelModeEnabled,\n } = this.props;\n const common = { onDragStart, onDragStop, graphProps, onClick };\n\n to = to || from;\n\n const radius = getRadius(from, to);\n\n let fromLabelNode = null;\n let toLabelNode = null;\n let circleLabelNode = null;\n\n if (labelNode) {\n if (from && from.hasOwnProperty('label')) {\n fromLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.from = r)}\n disabled={!labelModeEnabled}\n mark={from}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...from, label }, 'from')}\n />,\n labelNode,\n );\n }\n\n if (to && to.hasOwnProperty('label')) {\n toLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.to = r)}\n disabled={!labelModeEnabled}\n mark={to}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...to, label }, 'to')}\n />,\n labelNode,\n );\n }\n\n if (middle && middle.hasOwnProperty('label')) {\n circleLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.middle = r)}\n disabled={!labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...middle, label }, 'middle')}\n />,\n labelNode,\n );\n }\n }\n\n return (\n <g>\n <BgCircle\n disabled={building || disabled}\n correctness={correctness}\n className={classNames(building && classes.bgCircleBuilding)}\n x={from.x}\n y={from.y}\n radius={radius}\n onDrag={this.dragCircle}\n {...common}\n onClick={(data) => this.clickPoint(middle, 'middle', data)}\n />\n {circleLabelNode}\n\n <BasePoint\n disabled={building || disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={correctness}\n labelNode={labelNode}\n x={to.x}\n y={to.y}\n onDrag={this.dragTo}\n {...common}\n onClick={(data) => this.clickPoint(to, 'to', data)}\n />\n {toLabelNode}\n\n <BasePoint\n disabled={building || disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={correctness}\n labelNode={labelNode}\n x={from.x}\n y={from.y}\n className={classes.from}\n onDrag={this.dragFrom}\n {...common}\n onClick={(data) => this.clickPoint(from, 'from', data)}\n />\n {fromLabelNode}\n </g>\n );\n }\n}\n\nexport const BaseCircle = withStyles(() => ({\n outerLine: {\n fill: 'rgb(0,0,0,0)', // TODO hardcoded color\n stroke: color.defaults.BLACK,\n strokeWidth: 4,\n '&:hover': {\n strokeWidth: 6,\n stroke: color.defaults.PRIMARY_DARK,\n },\n },\n root: {},\n bgCircleBuilding: {\n stroke: color.defaults.BLACK,\n animation: 'opacityPulse 2s ease-out',\n animationIterationCount: 'infinite',\n opacity: 1,\n },\n '@keyframes opacityPulse': opacityPulsate('0.3'),\n}))(RawBaseCircle);\n\nconst Component = rootEdgeComponent(BaseCircle);\nexport default Component;\n"],"file":"component.js"}