@pie-lib/graphing 3.2.0-next.9 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/CHANGELOG.md +133 -0
  2. package/lib/axis/axes.js +35 -33
  3. package/lib/axis/axes.js.map +1 -1
  4. package/lib/graph-with-controls.js +1 -1
  5. package/lib/graph-with-controls.js.map +1 -1
  6. package/lib/graph.js +14 -0
  7. package/lib/graph.js.map +1 -1
  8. package/lib/grid-setup.js +8 -0
  9. package/lib/grid-setup.js.map +1 -1
  10. package/lib/toggle-bar.js +5 -1
  11. package/lib/toggle-bar.js.map +1 -1
  12. package/lib/tools/circle/component.js +1 -1
  13. package/lib/tools/circle/component.js.map +1 -1
  14. package/lib/tools/line/component.js +30 -15
  15. package/lib/tools/line/component.js.map +1 -1
  16. package/lib/tools/point/component.js +24 -14
  17. package/lib/tools/point/component.js.map +1 -1
  18. package/lib/tools/polygon/line.js +2 -1
  19. package/lib/tools/polygon/line.js.map +1 -1
  20. package/lib/tools/polygon/polygon.js +7 -9
  21. package/lib/tools/polygon/polygon.js.map +1 -1
  22. package/lib/tools/ray/component.js +14 -2
  23. package/lib/tools/ray/component.js.map +1 -1
  24. package/lib/tools/segment/component.js +21 -8
  25. package/lib/tools/segment/component.js.map +1 -1
  26. package/lib/tools/shared/arrow-head.js +2 -2
  27. package/lib/tools/shared/arrow-head.js.map +1 -1
  28. package/lib/tools/shared/line/index.js +6 -3
  29. package/lib/tools/shared/line/index.js.map +1 -1
  30. package/lib/tools/shared/line/line-path.js +2 -1
  31. package/lib/tools/shared/line/line-path.js.map +1 -1
  32. package/lib/tools/shared/point/index.js +6 -0
  33. package/lib/tools/shared/point/index.js.map +1 -1
  34. package/lib/tools/shared/styles.js +5 -2
  35. package/lib/tools/shared/styles.js.map +1 -1
  36. package/lib/undo-redo.js +3 -0
  37. package/lib/undo-redo.js.map +1 -1
  38. package/package.json +8 -8
  39. package/src/axis/axes.jsx +9 -7
  40. package/src/graph-with-controls.jsx +1 -1
  41. package/src/graph.jsx +17 -0
  42. package/src/grid-setup.jsx +10 -0
  43. package/src/toggle-bar.jsx +4 -0
  44. package/src/tools/circle/component.jsx +1 -1
  45. package/src/tools/line/component.jsx +36 -14
  46. package/src/tools/point/component.jsx +11 -4
  47. package/src/tools/polygon/line.jsx +2 -1
  48. package/src/tools/polygon/polygon.jsx +9 -8
  49. package/src/tools/ray/component.jsx +12 -1
  50. package/src/tools/segment/component.jsx +15 -12
  51. package/src/tools/shared/arrow-head.jsx +2 -2
  52. package/src/tools/shared/line/index.jsx +7 -3
  53. package/src/tools/shared/line/line-path.jsx +2 -1
  54. package/src/tools/shared/point/index.jsx +6 -0
  55. package/src/tools/shared/styles.js +3 -1
  56. package/src/undo-redo.jsx +3 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,139 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [4.0.1](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@4.0.0...@pie-lib/graphing@4.0.1) (2026-04-28)
7
+
8
+ **Note:** Version bump only for package @pie-lib/graphing
9
+
10
+ # [3.2.0-next.38](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.37...@pie-lib/graphing@3.2.0-next.38) (2026-04-24)
11
+
12
+ ### Bug Fixes
13
+
14
+ - enhance drag handling and prevent click interference in draggable components. fix auto input label PIE-428 ([cc06766](https://github.com/pie-framework/pie-lib/commit/cc06766fab6960356f3e7f8975da1f12f3358a9e))
15
+
16
+ # [3.2.0-next.37](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.36...@pie-lib/graphing@3.2.0-next.37) (2026-04-24)
17
+
18
+ ### Bug Fixes
19
+
20
+ - ensure onClick is called for existing mark points/lines and does not interfere with drag PIE-426 PIE-427 ([1cb4f00](https://github.com/pie-framework/pie-lib/commit/1cb4f00118ff24ddffe4c1ee2a091daccafa4d15))
21
+
22
+ # [3.2.0-next.36](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.35...@pie-lib/graphing@3.2.0-next.36) (2026-04-23)
23
+
24
+ ### Bug Fixes
25
+
26
+ - **graphing:** restore disabled/correctness styling on Line tool PIE-425 ([de26993](https://github.com/pie-framework/pie-lib/commit/de26993e35aa46437af9f6f9db5126218890dcf7))
27
+
28
+ # [3.2.0-next.35](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.34...@pie-lib/graphing@3.2.0-next.35) (2026-04-17)
29
+
30
+ **Note:** Version bump only for package @pie-lib/graphing
31
+
32
+ # [3.2.0-next.34](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.33...@pie-lib/graphing@3.2.0-next.34) (2026-04-16)
33
+
34
+ **Note:** Version bump only for package @pie-lib/graphing
35
+
36
+ # [3.2.0-next.33](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.32...@pie-lib/graphing@3.2.0-next.33) (2026-04-16)
37
+
38
+ **Note:** Version bump only for package @pie-lib/graphing
39
+
40
+ # [3.2.0-next.32](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.31...@pie-lib/graphing@3.2.0-next.32) (2026-04-16)
41
+
42
+ **Note:** Version bump only for package @pie-lib/graphing
43
+
44
+ # [3.2.0-next.31](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.30...@pie-lib/graphing@3.2.0-next.31) (2026-04-15)
45
+
46
+ **Note:** Version bump only for package @pie-lib/graphing
47
+
48
+ # [3.2.0-next.30](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.29...@pie-lib/graphing@3.2.0-next.30) (2026-04-15)
49
+
50
+ **Note:** Version bump only for package @pie-lib/graphing
51
+
52
+ # [3.2.0-next.29](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.28...@pie-lib/graphing@3.2.0-next.29) (2026-04-14)
53
+
54
+ **Note:** Version bump only for package @pie-lib/graphing
55
+
56
+ # [3.2.0-next.28](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.27...@pie-lib/graphing@3.2.0-next.28) (2026-04-13)
57
+
58
+ **Note:** Version bump only for package @pie-lib/graphing
59
+
60
+ # [3.2.0-next.27](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.26...@pie-lib/graphing@3.2.0-next.27) (2026-04-09)
61
+
62
+ **Note:** Version bump only for package @pie-lib/graphing
63
+
64
+ # [3.2.0-next.26](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.25...@pie-lib/graphing@3.2.0-next.26) (2026-04-09)
65
+
66
+ **Note:** Version bump only for package @pie-lib/graphing
67
+
68
+ # [3.2.0-next.25](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.24...@pie-lib/graphing@3.2.0-next.25) (2026-04-08)
69
+
70
+ **Note:** Version bump only for package @pie-lib/graphing
71
+
72
+ # [3.2.0-next.24](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.23...@pie-lib/graphing@3.2.0-next.24) (2026-04-07)
73
+
74
+ **Note:** Version bump only for package @pie-lib/graphing
75
+
76
+ # [3.2.0-next.23](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.22...@pie-lib/graphing@3.2.0-next.23) (2026-04-06)
77
+
78
+ ### Bug Fixes
79
+
80
+ - **graphing:** prevent new marks creation on existing points/lines during click events PIE-27 ([6c73a8e](https://github.com/pie-framework/pie-lib/commit/6c73a8e8317f3302c6d54dd9890c1d5a9fb02305))
81
+
82
+ # [3.2.0-next.22](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.21...@pie-lib/graphing@3.2.0-next.22) (2026-04-03)
83
+
84
+ ### Bug Fixes
85
+
86
+ - **graphing/plot:** improve drag handling to prevent misidentifying clicks as drags PD-5598 ([40a65a3](https://github.com/pie-framework/pie-lib/commit/40a65a312ec06227309fceac848bb8c7a266b1bb))
87
+ - **graphing:** increase stroke width and improve pointer event handling for lines ([58e1b47](https://github.com/pie-framework/pie-lib/commit/58e1b476cccb43c2db7e685119a3268fce21808c))
88
+ - unapplied padding PD-5450 ([5d92076](https://github.com/pie-framework/pie-lib/commit/5d92076e57b1106a9bcb746da97bf105427e77f5))
89
+
90
+ # [3.2.0-next.21](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.20...@pie-lib/graphing@3.2.0-next.21) (2026-03-31)
91
+
92
+ **Note:** Version bump only for package @pie-lib/graphing
93
+
94
+ # [3.2.0-next.20](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.19...@pie-lib/graphing@3.2.0-next.20) (2026-03-25)
95
+
96
+ ### Bug Fixes
97
+
98
+ - **graphing:** adjust axis label PD-5595 ([f462a1f](https://github.com/pie-framework/pie-lib/commit/f462a1f5563a6bb18443091c16d75064f2b31bad))
99
+
100
+ # [3.2.0-next.19](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.18...@pie-lib/graphing@3.2.0-next.19) (2026-03-18)
101
+
102
+ **Note:** Version bump only for package @pie-lib/graphing
103
+
104
+ # [3.2.0-next.18](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.17...@pie-lib/graphing@3.2.0-next.18) (2026-03-18)
105
+
106
+ **Note:** Version bump only for package @pie-lib/graphing
107
+
108
+ # [3.2.0-next.17](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.16...@pie-lib/graphing@3.2.0-next.17) (2026-03-18)
109
+
110
+ ### Bug Fixes
111
+
112
+ - **graphing:** color changes for graph buttons PD-5590 ([1053f44](https://github.com/pie-framework/pie-lib/commit/1053f44cd10521bf5e3431ac071fb3f18e97f467))
113
+ - **graphing:** revert to previous disabled colors PD-5510 ([e50a991](https://github.com/pie-framework/pie-lib/commit/e50a991aaa20f134d338a3f27d6d46d68db02a57))
114
+
115
+ # [3.2.0-next.16](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.15...@pie-lib/graphing@3.2.0-next.16) (2026-03-11)
116
+
117
+ **Note:** Version bump only for package @pie-lib/graphing
118
+
119
+ # [3.2.0-next.15](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.14...@pie-lib/graphing@3.2.0-next.15) (2026-03-11)
120
+
121
+ **Note:** Version bump only for package @pie-lib/graphing
122
+
123
+ # [3.2.0-next.14](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.13...@pie-lib/graphing@3.2.0-next.14) (2026-03-09)
124
+
125
+ **Note:** Version bump only for package @pie-lib/graphing
126
+
127
+ # [3.2.0-next.13](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.12...@pie-lib/graphing@3.2.0-next.13) (2026-03-06)
128
+
129
+ **Note:** Version bump only for package @pie-lib/graphing
130
+
131
+ # [3.2.0-next.12](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.11...@pie-lib/graphing@3.2.0-next.12) (2026-03-04)
132
+
133
+ **Note:** Version bump only for package @pie-lib/graphing
134
+
135
+ # [3.2.0-next.11](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.9...@pie-lib/graphing@3.2.0-next.11) (2026-02-26)
136
+
137
+ **Note:** Version bump only for package @pie-lib/graphing
138
+
6
139
  # [3.2.0-next.9](https://github.com/pie-framework/pie-lib/compare/@pie-lib/graphing@3.2.0-next.8...@pie-lib/graphing@3.2.0-next.9) (2026-02-25)
7
140
 
8
141
  **Note:** Version bump only for package @pie-lib/graphing
package/lib/axis/axes.js CHANGED
@@ -20,10 +20,10 @@ var _arrow = _interopRequireDefault(require("./arrow"));
20
20
  var _styles = require("@mui/material/styles");
21
21
  var _utils = require("../utils");
22
22
  var _renderUi = require("@pie-lib/render-ui");
23
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
23
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
26
24
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
25
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27
27
  var AxisPropTypes = exports.AxisPropTypes = {
28
28
  includeArrows: _propTypes["default"].object,
29
29
  graphProps: _propTypes["default"].object
@@ -41,24 +41,23 @@ var StyledArrow = (0, _styles.styled)(_arrow["default"])(function () {
41
41
  fill: _renderUi.color.defaults.PRIMARY
42
42
  };
43
43
  });
44
- var StyledLabel = (0, _styles.styled)('div')(function (_ref) {
45
- var theme = _ref.theme;
46
- return {
47
- fontSize: theme.typography.fontSize
48
- };
49
- });
50
- var StyledAxisLabelHolder = (0, _styles.styled)('div')(function (_ref2) {
51
- var theme = _ref2.theme;
52
- return {
44
+ var StyledAxisLabelHolder = (0, _styles.styled)('div')(function (_ref) {
45
+ var theme = _ref.theme,
46
+ centered = _ref.centered;
47
+ return _objectSpread({
53
48
  padding: 0,
54
49
  margin: 0,
55
- textAlign: 'center',
56
50
  '* > *': {
57
51
  margin: 0,
58
52
  padding: 0
59
53
  },
54
+ '& p': {
55
+ margin: 0
56
+ },
60
57
  fontSize: theme.typography.fontSize
61
- };
58
+ }, centered && {
59
+ textAlign: 'center'
60
+ });
62
61
  });
63
62
  var StyledAxesGroup = (0, _styles.styled)('g')(function () {
64
63
  return {
@@ -107,11 +106,11 @@ var RawXAxis = exports.RawXAxis = /*#__PURE__*/function (_React$Component) {
107
106
  skipValues = _this$props.skipValues,
108
107
  distanceFromOriginToFirstNegativeY = _this$props.distanceFromOriginToFirstNegativeY,
109
108
  dy = _this$props.dy;
110
- var _ref3 = graphProps || {},
111
- scale = _ref3.scale,
112
- domain = _ref3.domain,
113
- size = _ref3.size,
114
- range = _ref3.range;
109
+ var _ref2 = graphProps || {},
110
+ scale = _ref2.scale,
111
+ domain = _ref2.domain,
112
+ size = _ref2.size,
113
+ range = _ref2.range;
115
114
  var labelProps = function labelProps(label) {
116
115
  var y = skipValues && skipValues[0] === label ? distanceFromOriginToFirstNegativeY + 4 : dy;
117
116
  return _objectSpread(_objectSpread({}, tickLabelStyles), {}, {
@@ -151,11 +150,13 @@ var RawXAxis = exports.RawXAxis = /*#__PURE__*/function (_React$Component) {
151
150
  y: scale.y(0) - 9,
152
151
  width: necessaryWidth,
153
152
  height: 20 * necessaryRows
154
- }, /*#__PURE__*/_react["default"].createElement(StyledLabel, {
153
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, {
154
+ "false": true
155
+ }, /*#__PURE__*/_react["default"].createElement(StyledAxisLabelHolder, {
155
156
  dangerouslySetInnerHTML: {
156
157
  __html: domain.axisLabel
157
158
  }
158
- })));
159
+ }))));
159
160
  }
160
161
  }]);
161
162
  }(_react["default"].Component);
@@ -178,10 +179,10 @@ var RawYAxis = exports.RawYAxis = /*#__PURE__*/function (_React$Component2) {
178
179
  graphProps = _this$props2.graphProps,
179
180
  skipValues = _this$props2.skipValues,
180
181
  rowTickValues = _this$props2.rowTickValues;
181
- var _ref4 = graphProps || {},
182
- scale = _ref4.scale,
183
- range = _ref4.range,
184
- size = _ref4.size;
182
+ var _ref3 = graphProps || {},
183
+ scale = _ref3.scale,
184
+ range = _ref3.range,
185
+ size = _ref3.size;
185
186
  var necessaryWidth = range.axisLabel ? (0, _utils.amountToIncreaseWidth)(range.axisLabel.length) : 0;
186
187
  var customTickFormat = function customTickFormat(value) {
187
188
  return skipValues && skipValues.indexOf(value) >= 0 ? '' : value;
@@ -228,6 +229,7 @@ var RawYAxis = exports.RawYAxis = /*#__PURE__*/function (_React$Component2) {
228
229
  }, /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, {
229
230
  "false": true
230
231
  }, /*#__PURE__*/_react["default"].createElement(StyledAxisLabelHolder, {
232
+ centered: true,
231
233
  dangerouslySetInnerHTML: {
232
234
  __html: range.axisLabel
233
235
  }
@@ -250,9 +252,9 @@ var Axes = exports["default"] = /*#__PURE__*/function (_React$Component3) {
250
252
  _this = _callSuper(this, Axes, [].concat(args));
251
253
  (0, _defineProperty2["default"])(_this, "xValues", function () {
252
254
  var graphProps = _this.props.graphProps;
253
- var _ref5 = graphProps || {},
254
- scale = _ref5.scale,
255
- domain = _ref5.domain;
255
+ var _ref4 = graphProps || {},
256
+ scale = _ref4.scale,
257
+ domain = _ref4.domain;
256
258
  if (!domain || !scale) {
257
259
  return;
258
260
  }
@@ -268,9 +270,9 @@ var Axes = exports["default"] = /*#__PURE__*/function (_React$Component3) {
268
270
  });
269
271
  (0, _defineProperty2["default"])(_this, "yValues", function () {
270
272
  var graphProps = _this.props.graphProps;
271
- var _ref6 = graphProps || {},
272
- scale = _ref6.scale,
273
- range = _ref6.range;
273
+ var _ref5 = graphProps || {},
274
+ scale = _ref5.scale,
275
+ range = _ref5.range;
274
276
  if (!range || !scale) {
275
277
  return;
276
278
  }
@@ -291,9 +293,9 @@ var Axes = exports["default"] = /*#__PURE__*/function (_React$Component3) {
291
293
  key: "render",
292
294
  value: function render() {
293
295
  var graphProps = this.props.graphProps;
294
- var _ref7 = graphProps || {},
295
- domain = _ref7.domain,
296
- range = _ref7.range;
296
+ var _ref6 = graphProps || {},
297
+ domain = _ref6.domain,
298
+ range = _ref6.range;
297
299
  var _this$xValues = this.xValues(),
298
300
  columnTicksValues = _this$xValues.columnTicksValues,
299
301
  firstNegativeX = _this$xValues.firstNegativeX,
@@ -1 +1 @@
1
- {"version":3,"file":"axes.js","names":["_react","_interopRequireDefault","require","_axis","_plot","_propTypes","_arrow","_styles","_utils","_renderUi","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","AxisPropTypes","exports","includeArrows","PropTypes","object","graphProps","AxisDefaultProps","left","right","up","down","StyledArrow","styled","Arrow","fill","color","defaults","PRIMARY","StyledLabel","_ref","theme","fontSize","typography","StyledAxisLabelHolder","_ref2","padding","margin","textAlign","StyledAxesGroup","stroke","strokeWidth","tickLabelStyles","fontFamily","cursor","sharedValues","firstNegativeX","firstNegativeY","distanceFromOriginToFirstNegativeX","distanceFromOriginToFirstNegativeY","deltaAllowance","dy","result","firstNegativeValue","interval","find","element","RawXAxis","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","columnTicksValues","skipValues","_ref3","scale","domain","size","range","labelProps","label","y","textAnchor","dx","necessaryRows","countWords","axisLabel","longestWord","findLongestWord","necessaryWidth","amountToIncreaseWidth","createElement","Axis","x","top","rangePadding","tickFormat","tickLabelProps","tickValues","hideZero","labelStep","min","direction","max","width","height","dangerouslySetInnerHTML","__html","React","Component","types","GraphPropsType","isRequired","XAxis","RawYAxis","_React$Component2","_this$props2","rowTickValues","_ref4","customTickFormat","indexOf","orientation","tickLength","digits","toLocaleString","replace","tickTextAnchor","Readable","YAxis","Axes","_React$Component3","_this","_len","args","Array","_key","concat","_ref5","ticks","getTickValues","step","negative","Math","abs","_ref6","_ref7","_this$xValues","xValues","_this$yValues","yValues","_extends2"],"sources":["../../src/axis/axes.jsx"],"sourcesContent":["import React from 'react';\nimport { Axis } from '@visx/axis';\nimport { types } from '@pie-lib/plot';\nimport PropTypes from 'prop-types';\nimport Arrow from './arrow';\nimport { styled } from '@mui/material/styles';\nimport { amountToIncreaseWidth, countWords, findLongestWord, getTickValues } from '../utils';\nimport { color, Readable } from '@pie-lib/render-ui';\n\nexport const AxisPropTypes = {\n includeArrows: PropTypes.object,\n graphProps: PropTypes.object,\n};\n\nconst AxisDefaultProps = {\n includeArrows: {\n left: true,\n right: true,\n up: true,\n down: true,\n },\n};\n\nconst StyledArrow = styled(Arrow)(() => ({\n fill: color.defaults.PRIMARY,\n}));\n\nconst StyledLabel = styled('div')(({ theme }) => ({\n fontSize: theme.typography.fontSize,\n}));\n\nconst StyledAxisLabelHolder = styled('div')(({ theme }) => ({\n padding: 0,\n margin: 0,\n textAlign: 'center',\n '* > *': {\n margin: 0,\n padding: 0,\n },\n fontSize: theme.typography.fontSize,\n}));\n\nconst StyledAxesGroup = styled('g')(() => ({\n '& .visx-axis-line': {\n stroke: color.defaults.PRIMARY,\n strokeWidth: 3,\n },\n '& .visx-axis-tick': {\n fill: color.defaults.PRIMARY,\n '& line': {\n stroke: color.defaults.PRIMARY,\n },\n },\n}));\n\nconst tickLabelStyles = {\n fontFamily: 'Roboto',\n fontSize: '14px',\n cursor: 'inherit',\n};\n\nexport const sharedValues = (\n firstNegativeX,\n firstNegativeY,\n distanceFromOriginToFirstNegativeX,\n distanceFromOriginToFirstNegativeY,\n deltaAllowance,\n dy,\n) => {\n let result = [];\n\n if (\n firstNegativeX === firstNegativeY &&\n distanceFromOriginToFirstNegativeX - deltaAllowance < distanceFromOriginToFirstNegativeY &&\n distanceFromOriginToFirstNegativeY < distanceFromOriginToFirstNegativeX + deltaAllowance &&\n distanceFromOriginToFirstNegativeX - deltaAllowance < dy &&\n dy < distanceFromOriginToFirstNegativeX + deltaAllowance\n ) {\n result.push(firstNegativeX);\n }\n\n return result;\n};\n\nexport const firstNegativeValue = (interval) => (interval || []).find((element) => element < 0);\n\nexport class RawXAxis extends React.Component {\n static propTypes = {\n ...AxisPropTypes,\n graphProps: types.GraphPropsType.isRequired,\n };\n static defaultProps = AxisDefaultProps;\n\n render() {\n const { includeArrows, graphProps, columnTicksValues, skipValues, distanceFromOriginToFirstNegativeY, dy } =\n this.props;\n const { scale, domain, size, range } = graphProps || {};\n\n const labelProps = (label) => {\n const y = skipValues && skipValues[0] === label ? distanceFromOriginToFirstNegativeY + 4 : dy;\n\n return {\n ...tickLabelStyles,\n textAnchor: 'middle',\n y: y,\n dx: label === 0 ? -10 : 0,\n dy: label === 0 ? -7 : 0,\n };\n };\n\n const necessaryRows = countWords(domain.axisLabel);\n const longestWord = findLongestWord(domain.axisLabel);\n const necessaryWidth = amountToIncreaseWidth(longestWord) + 2;\n\n return (\n <StyledAxesGroup>\n <Axis\n scale={scale.x}\n top={scale.y(0)}\n left={0}\n label={domain.label}\n rangePadding={8}\n tickFormat={(value) => value}\n tickLabelProps={labelProps}\n tickValues={columnTicksValues}\n hideZero={!(domain.labelStep || range.labelStep) && domain.min <= 0}\n />\n {includeArrows && includeArrows.left && <StyledArrow direction=\"left\" x={domain.min} y={0} scale={scale} />}\n {includeArrows && includeArrows.right && <StyledArrow direction=\"right\" x={domain.max} y={0} scale={scale} />}\n {domain.axisLabel && (\n <foreignObject x={size.width + 17} y={scale.y(0) - 9} width={necessaryWidth} height={20 * necessaryRows}>\n <StyledLabel dangerouslySetInnerHTML={{ __html: domain.axisLabel }} />\n </foreignObject>\n )}\n </StyledAxesGroup>\n );\n }\n}\n\nconst XAxis = RawXAxis;\n\nexport class RawYAxis extends React.Component {\n static propTypes = {\n ...AxisPropTypes,\n graphProps: types.GraphPropsType.isRequired,\n };\n static defaultProps = AxisDefaultProps;\n\n render() {\n const { includeArrows, graphProps, skipValues, rowTickValues } = this.props;\n const { scale, range, size } = graphProps || {};\n\n const necessaryWidth = range.axisLabel ? amountToIncreaseWidth(range.axisLabel.length) : 0;\n\n const customTickFormat = (value) => (skipValues && skipValues.indexOf(value) >= 0 ? '' : value);\n\n return (\n <StyledAxesGroup>\n <Axis\n orientation={'left'}\n scale={scale.y}\n top={0}\n height={size.height}\n left={scale.x(0)}\n label={range.label}\n labelProps={{ 'data-pie-readable': false }}\n rangePadding={8}\n tickLength={10}\n tickFormat={customTickFormat}\n tickLabelProps={(value) => {\n let digits = value.toLocaleString().replace(/[.-]/g, '').length || 1;\n\n return {\n ...tickLabelStyles,\n dy: 4,\n dx: -10 - digits * 9,\n 'data-pie-readable': false,\n };\n }}\n hideZero={true}\n tickTextAnchor={'bottom'}\n tickValues={rowTickValues}\n />\n {includeArrows && includeArrows.down && <StyledArrow direction=\"down\" x={0} y={range.min} scale={scale} />}\n {includeArrows && includeArrows.up && <StyledArrow direction=\"up\" x={0} y={range.max} scale={scale} />}\n {range.axisLabel && (\n <foreignObject x={scale.x(0) - necessaryWidth / 2} y={-33} width={necessaryWidth} height=\"20\">\n <Readable false>\n <StyledAxisLabelHolder dangerouslySetInnerHTML={{ __html: range.axisLabel }} />\n </Readable>\n </foreignObject>\n )}\n </StyledAxesGroup>\n );\n }\n}\n\nconst YAxis = RawYAxis;\n\nexport default class Axes extends React.Component {\n static propTypes = {\n ...AxisPropTypes,\n graphProps: types.GraphPropsType.isRequired,\n };\n static defaultProps = AxisDefaultProps;\n\n xValues = () => {\n const { graphProps } = this.props;\n const { scale, domain } = graphProps || {};\n\n if (!domain || !scale) {\n return;\n }\n\n const ticks = getTickValues({ ...domain, step: domain.labelStep });\n const negative = firstNegativeValue(ticks);\n\n return {\n columnTicksValues: ticks,\n firstNegativeX: negative,\n distanceFromOriginToFirstNegativeX: Math.abs(scale.y(0) - scale.y(negative)),\n };\n };\n\n yValues = () => {\n const { graphProps } = this.props;\n const { scale, range } = graphProps || {};\n\n if (!range || !scale) {\n return;\n }\n\n const ticks = getTickValues({ ...range, step: range.labelStep });\n const negative = firstNegativeValue(ticks);\n\n return {\n rowTickValues: ticks,\n firstNegativeY: negative,\n distanceFromOriginToFirstNegativeY: Math.abs(scale.x(0) - scale.x(negative)),\n };\n };\n\n render() {\n const { graphProps } = this.props;\n const { domain, range } = graphProps || {};\n const { columnTicksValues, firstNegativeX, distanceFromOriginToFirstNegativeX } = this.xValues();\n const { rowTickValues, firstNegativeY, distanceFromOriginToFirstNegativeY } = this.yValues();\n const deltaAllowance = 6;\n const dy = 25;\n\n const skipValues = sharedValues(\n firstNegativeX,\n firstNegativeY,\n distanceFromOriginToFirstNegativeX,\n distanceFromOriginToFirstNegativeY,\n deltaAllowance,\n dy,\n );\n\n // each axis has to be displayed only if the domain & range include it\n return (\n <StyledAxesGroup>\n {range.min <= 0 ? (\n <XAxis\n {...this.props}\n skipValues={skipValues}\n columnTicksValues={columnTicksValues}\n distanceFromOriginToFirstNegativeY={distanceFromOriginToFirstNegativeY}\n dy={dy}\n />\n ) : null}\n {domain.min <= 0 ? (\n <YAxis\n {...this.props}\n skipValues={skipValues}\n rowTickValues={rowTickValues}\n distanceFromOriginToFirstNegativeX={distanceFromOriginToFirstNegativeX}\n />\n ) : null}\n </StyledAxesGroup>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"axes.js","names":["_react","_interopRequireDefault","require","_axis","_plot","_propTypes","_arrow","_styles","_utils","_renderUi","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","AxisPropTypes","exports","includeArrows","PropTypes","object","graphProps","AxisDefaultProps","left","right","up","down","StyledArrow","styled","Arrow","fill","color","defaults","PRIMARY","StyledAxisLabelHolder","_ref","theme","centered","padding","margin","fontSize","typography","textAlign","StyledAxesGroup","stroke","strokeWidth","tickLabelStyles","fontFamily","cursor","sharedValues","firstNegativeX","firstNegativeY","distanceFromOriginToFirstNegativeX","distanceFromOriginToFirstNegativeY","deltaAllowance","dy","result","firstNegativeValue","interval","find","element","RawXAxis","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","columnTicksValues","skipValues","_ref2","scale","domain","size","range","labelProps","label","y","textAnchor","dx","necessaryRows","countWords","axisLabel","longestWord","findLongestWord","necessaryWidth","amountToIncreaseWidth","createElement","Axis","x","top","rangePadding","tickFormat","tickLabelProps","tickValues","hideZero","labelStep","min","direction","max","width","height","Readable","dangerouslySetInnerHTML","__html","React","Component","types","GraphPropsType","isRequired","XAxis","RawYAxis","_React$Component2","_this$props2","rowTickValues","_ref3","customTickFormat","indexOf","orientation","tickLength","digits","toLocaleString","replace","tickTextAnchor","YAxis","Axes","_React$Component3","_this","_len","args","Array","_key","concat","_ref4","ticks","getTickValues","step","negative","Math","abs","_ref5","_ref6","_this$xValues","xValues","_this$yValues","yValues","_extends2"],"sources":["../../src/axis/axes.jsx"],"sourcesContent":["import React from 'react';\nimport { Axis } from '@visx/axis';\nimport { types } from '@pie-lib/plot';\nimport PropTypes from 'prop-types';\nimport Arrow from './arrow';\nimport { styled } from '@mui/material/styles';\nimport { amountToIncreaseWidth, countWords, findLongestWord, getTickValues } from '../utils';\nimport { color, Readable } from '@pie-lib/render-ui';\n\nexport const AxisPropTypes = {\n includeArrows: PropTypes.object,\n graphProps: PropTypes.object,\n};\n\nconst AxisDefaultProps = {\n includeArrows: {\n left: true,\n right: true,\n up: true,\n down: true,\n },\n};\n\nconst StyledArrow = styled(Arrow)(() => ({\n fill: color.defaults.PRIMARY,\n}));\n\n\nconst StyledAxisLabelHolder = styled('div')(({ theme, centered }) => ({\n padding: 0,\n margin: 0,\n '* > *': {\n margin: 0,\n padding: 0,\n },\n '& p': {\n margin: 0,\n },\n fontSize: theme.typography.fontSize,\n ...(centered && { textAlign: 'center' }),\n}));\n\nconst StyledAxesGroup = styled('g')(() => ({\n '& .visx-axis-line': {\n stroke: color.defaults.PRIMARY,\n strokeWidth: 3,\n },\n '& .visx-axis-tick': {\n fill: color.defaults.PRIMARY,\n '& line': {\n stroke: color.defaults.PRIMARY,\n },\n },\n}));\n\nconst tickLabelStyles = {\n fontFamily: 'Roboto',\n fontSize: '14px',\n cursor: 'inherit',\n};\n\nexport const sharedValues = (\n firstNegativeX,\n firstNegativeY,\n distanceFromOriginToFirstNegativeX,\n distanceFromOriginToFirstNegativeY,\n deltaAllowance,\n dy,\n) => {\n let result = [];\n\n if (\n firstNegativeX === firstNegativeY &&\n distanceFromOriginToFirstNegativeX - deltaAllowance < distanceFromOriginToFirstNegativeY &&\n distanceFromOriginToFirstNegativeY < distanceFromOriginToFirstNegativeX + deltaAllowance &&\n distanceFromOriginToFirstNegativeX - deltaAllowance < dy &&\n dy < distanceFromOriginToFirstNegativeX + deltaAllowance\n ) {\n result.push(firstNegativeX);\n }\n\n return result;\n};\n\nexport const firstNegativeValue = (interval) => (interval || []).find((element) => element < 0);\n\nexport class RawXAxis extends React.Component {\n static propTypes = {\n ...AxisPropTypes,\n graphProps: types.GraphPropsType.isRequired,\n };\n static defaultProps = AxisDefaultProps;\n\n render() {\n const { includeArrows, graphProps, columnTicksValues, skipValues, distanceFromOriginToFirstNegativeY, dy } =\n this.props;\n const { scale, domain, size, range } = graphProps || {};\n\n const labelProps = (label) => {\n const y = skipValues && skipValues[0] === label ? distanceFromOriginToFirstNegativeY + 4 : dy;\n\n return {\n ...tickLabelStyles,\n textAnchor: 'middle',\n y: y,\n dx: label === 0 ? -10 : 0,\n dy: label === 0 ? -7 : 0,\n };\n };\n\n const necessaryRows = countWords(domain.axisLabel);\n const longestWord = findLongestWord(domain.axisLabel);\n const necessaryWidth = amountToIncreaseWidth(longestWord) + 2;\n\n return (\n <StyledAxesGroup>\n <Axis\n scale={scale.x}\n top={scale.y(0)}\n left={0}\n label={domain.label}\n rangePadding={8}\n tickFormat={(value) => value}\n tickLabelProps={labelProps}\n tickValues={columnTicksValues}\n hideZero={!(domain.labelStep || range.labelStep) && domain.min <= 0}\n />\n {includeArrows && includeArrows.left && <StyledArrow direction=\"left\" x={domain.min} y={0} scale={scale} />}\n {includeArrows && includeArrows.right && <StyledArrow direction=\"right\" x={domain.max} y={0} scale={scale} />}\n {domain.axisLabel && (\n <foreignObject x={size.width + 17} y={scale.y(0) - 9} width={necessaryWidth} height={20 * necessaryRows}>\n <Readable false>\n <StyledAxisLabelHolder dangerouslySetInnerHTML={{ __html: domain.axisLabel }} />\n </Readable>\n </foreignObject>\n )}\n </StyledAxesGroup>\n );\n }\n}\n\nconst XAxis = RawXAxis;\n\nexport class RawYAxis extends React.Component {\n static propTypes = {\n ...AxisPropTypes,\n graphProps: types.GraphPropsType.isRequired,\n };\n static defaultProps = AxisDefaultProps;\n\n render() {\n const { includeArrows, graphProps, skipValues, rowTickValues } = this.props;\n const { scale, range, size } = graphProps || {};\n\n const necessaryWidth = range.axisLabel ? amountToIncreaseWidth(range.axisLabel.length) : 0;\n\n const customTickFormat = (value) => (skipValues && skipValues.indexOf(value) >= 0 ? '' : value);\n\n return (\n <StyledAxesGroup>\n <Axis\n orientation={'left'}\n scale={scale.y}\n top={0}\n height={size.height}\n left={scale.x(0)}\n label={range.label}\n labelProps={{ 'data-pie-readable': false }}\n rangePadding={8}\n tickLength={10}\n tickFormat={customTickFormat}\n tickLabelProps={(value) => {\n let digits = value.toLocaleString().replace(/[.-]/g, '').length || 1;\n\n return {\n ...tickLabelStyles,\n dy: 4,\n dx: -10 - digits * 9,\n 'data-pie-readable': false,\n };\n }}\n hideZero={true}\n tickTextAnchor={'bottom'}\n tickValues={rowTickValues}\n />\n {includeArrows && includeArrows.down && <StyledArrow direction=\"down\" x={0} y={range.min} scale={scale} />}\n {includeArrows && includeArrows.up && <StyledArrow direction=\"up\" x={0} y={range.max} scale={scale} />}\n {range.axisLabel && (\n <foreignObject x={scale.x(0) - necessaryWidth / 2} y={-33} width={necessaryWidth} height=\"20\">\n <Readable false>\n <StyledAxisLabelHolder centered dangerouslySetInnerHTML={{ __html: range.axisLabel }} />\n </Readable>\n </foreignObject>\n )}\n </StyledAxesGroup>\n );\n }\n}\n\nconst YAxis = RawYAxis;\n\nexport default class Axes extends React.Component {\n static propTypes = {\n ...AxisPropTypes,\n graphProps: types.GraphPropsType.isRequired,\n };\n static defaultProps = AxisDefaultProps;\n\n xValues = () => {\n const { graphProps } = this.props;\n const { scale, domain } = graphProps || {};\n\n if (!domain || !scale) {\n return;\n }\n\n const ticks = getTickValues({ ...domain, step: domain.labelStep });\n const negative = firstNegativeValue(ticks);\n\n return {\n columnTicksValues: ticks,\n firstNegativeX: negative,\n distanceFromOriginToFirstNegativeX: Math.abs(scale.y(0) - scale.y(negative)),\n };\n };\n\n yValues = () => {\n const { graphProps } = this.props;\n const { scale, range } = graphProps || {};\n\n if (!range || !scale) {\n return;\n }\n\n const ticks = getTickValues({ ...range, step: range.labelStep });\n const negative = firstNegativeValue(ticks);\n\n return {\n rowTickValues: ticks,\n firstNegativeY: negative,\n distanceFromOriginToFirstNegativeY: Math.abs(scale.x(0) - scale.x(negative)),\n };\n };\n\n render() {\n const { graphProps } = this.props;\n const { domain, range } = graphProps || {};\n const { columnTicksValues, firstNegativeX, distanceFromOriginToFirstNegativeX } = this.xValues();\n const { rowTickValues, firstNegativeY, distanceFromOriginToFirstNegativeY } = this.yValues();\n const deltaAllowance = 6;\n const dy = 25;\n\n const skipValues = sharedValues(\n firstNegativeX,\n firstNegativeY,\n distanceFromOriginToFirstNegativeX,\n distanceFromOriginToFirstNegativeY,\n deltaAllowance,\n dy,\n );\n\n // each axis has to be displayed only if the domain & range include it\n return (\n <StyledAxesGroup>\n {range.min <= 0 ? (\n <XAxis\n {...this.props}\n skipValues={skipValues}\n columnTicksValues={columnTicksValues}\n distanceFromOriginToFirstNegativeY={distanceFromOriginToFirstNegativeY}\n dy={dy}\n />\n ) : null}\n {domain.min <= 0 ? (\n <YAxis\n {...this.props}\n skipValues={skipValues}\n rowTickValues={rowTickValues}\n distanceFromOriginToFirstNegativeX={distanceFromOriginToFirstNegativeX}\n />\n ) : null}\n </StyledAxesGroup>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -53,7 +53,7 @@ var StyledAccordion = (0, _styles.styled)(_material.Accordion)({
53
53
  var StyledAccordionSummary = (0, _styles.styled)(_material.AccordionSummary)(function (_ref2) {
54
54
  var theme = _ref2.theme;
55
55
  return {
56
- padding: "0 ".concat(theme.spacing(1), "px"),
56
+ padding: "0 ".concat(theme.spacing(1)),
57
57
  minHeight: '32px !important',
58
58
  '& .MuiAccordionSummary-content': {
59
59
  margin: '4px 0 !important'
@@ -1 +1 @@
1
- {"version":3,"file":"graph-with-controls.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_lodashEs","_renderUi","_toolMenu","_graph","_interopRequireWildcard","_undoRedo","_tools","_material","_ExpandMore","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledGraphContainer","styled","display","flexDirection","width","StyledControls","_ref","theme","justifyContent","padding","spacing","color","text","backgroundColor","primaryLight","fontSize","typography","StyledAccordion","Accordion","StyledAccordionSummary","AccordionSummary","_ref2","concat","minHeight","margin","StyledAccordionDetails","AccordionDetails","_ref3","marginTop","setToolbarAvailability","exports","toolbarTools","toolsArr","map","tA","toolbar","find","type","toolIsAvailable","tools","currentTool","tool","getAvailableTool","filterByValidToolTypes","backgroundMarks","bM","allTools","filterByVisibleToolTypes","marks","getDefaultCurrentTool","toolType","Collapsible","_ref4","children","title","createElement","elevation","disableGutters","square","TransitionProps","timeout","enter","exit","expandIcon","Typography","variant","propTypes","PropTypes","array","string","GraphWithControls","_React$Component","props","_this","_classCallCheck2","setState","labelModeEnabled","state","defaultTool","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","render","_this2","_this$state","_this$props","axesSettings","className","coordinatesOnHover","collapsibleToolbar","collapsibleToolbarTitle","disabled","disabledLabels","disabledTitle","domain","draggableTools","labels","labelsPlaceholders","onChangeLabels","onChangeMarks","onChangeTitle","onChangeTools","onUndo","onRedo","onReset","range","size","showLabels","showPixelGuides","showTitle","titlePlaceholder","language","removeIncompleteTool","limitLabeling","_this$props2","uniq","tT","isString","graphActions","Fragment","currentToolType","onChange","changeCurrentTool","ref","labelNode","undefined","React","Component","graphPropTypes","func","arrayOf","_default"],"sources":["../src/graph-with-controls.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { isString, uniq } from 'lodash-es';\nimport { color } from '@pie-lib/render-ui';\n\nimport ToolMenu from './tool-menu';\nimport Graph, { graphPropTypes } from './graph';\nimport UndoRedo from './undo-redo';\nimport { allTools, toolsArr } from './tools';\nimport { Accordion, AccordionDetails, AccordionSummary, Typography } from '@mui/material';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\n\nconst StyledGraphContainer = styled('div')({\n display: 'flex',\n flexDirection: 'column',\n width: 'min-content',\n});\n\nconst StyledControls = styled('div')(({ theme }) => ({\n display: 'flex',\n justifyContent: 'space-between',\n padding: theme.spacing(1),\n color: color.text(),\n backgroundColor: color.primaryLight(),\n '& button': {\n fontSize: theme.typography.fontSize,\n },\n}));\n\nconst StyledAccordion = styled(Accordion)({\n backgroundColor: color.primaryLight(),\n width: '100%',\n});\n\nconst StyledAccordionSummary = styled(AccordionSummary)(({ theme }) => ({\n padding: `0 ${theme.spacing(1)}px`,\n minHeight: '32px !important',\n '& .MuiAccordionSummary-content': {\n margin: '4px 0 !important',\n },\n}));\n\nconst StyledAccordionDetails = styled(AccordionDetails)(({ theme }) => ({\n padding: 0,\n marginTop: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n}));\n\nexport const setToolbarAvailability = (toolbarTools) =>\n toolsArr.map((tA) => ({ ...tA, toolbar: !!toolbarTools.find((t) => t === tA.type) })) || [];\n\nexport const toolIsAvailable = (tools, currentTool) =>\n currentTool && tools && (tools.find((tool) => tool.type === currentTool.type) || {}).toolbar;\n\nexport const getAvailableTool = (tools) => tools.find((tool) => tool.toolbar);\n\nexport const filterByValidToolTypes = (backgroundMarks) =>\n backgroundMarks.filter((bM) => !!allTools.find((tool) => tool === bM.type));\n\nexport const filterByVisibleToolTypes = (toolbarTools, marks) =>\n marks.filter((bM) => !!toolbarTools.find((tool) => tool === bM.type));\n\nconst getDefaultCurrentTool = (toolType) => toolsArr.find((tool) => tool.type === toolType) || null;\n\nconst Collapsible = ({ children, title }) => (\n <StyledAccordion\n elevation={0}\n disableGutters={true}\n square={true}\n TransitionProps={{ timeout: { enter: 225, exit: 195 } }}\n >\n <StyledAccordionSummary expandIcon={<ExpandMoreIcon />}>\n <Typography variant=\"subheading\">{title}</Typography>\n </StyledAccordionSummary>\n <StyledAccordionDetails>{children}</StyledAccordionDetails>\n </StyledAccordion>\n);\n\nCollapsible.propTypes = {\n children: PropTypes.array,\n title: PropTypes.string,\n};\n\nexport class GraphWithControls extends React.Component {\n static propTypes = {\n ...graphPropTypes,\n onUndo: PropTypes.func,\n onRedo: PropTypes.func,\n onReset: PropTypes.func,\n toolbarTools: PropTypes.arrayOf(PropTypes.string), // array of tool types that have to be displayed in the toolbar, same shape as 'allTools'\n language: PropTypes.string,\n };\n\n static defaultProps = {\n collapsibleToolbar: false,\n collapsibleToolbarTitle: '',\n disabledLabels: false,\n disabledTitle: false,\n showLabels: true,\n showTitle: true,\n toolbarTools: [],\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n currentTool: getDefaultCurrentTool(props.defaultTool),\n labelModeEnabled: false,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { defaultTool } = this.props;\n\n if (prevProps.defaultTool !== defaultTool) {\n const currentTool = getDefaultCurrentTool(defaultTool);\n\n this.setState({ currentTool });\n }\n }\n\n changeCurrentTool = (tool, tools) =>\n this.setState({ currentTool: tools.find((t) => t.type === tool), labelModeEnabled: tool === 'label' });\n\n render() {\n let { currentTool, labelModeEnabled } = this.state;\n const {\n axesSettings,\n className,\n coordinatesOnHover,\n collapsibleToolbar,\n collapsibleToolbarTitle,\n disabled,\n disabledLabels,\n disabledTitle,\n domain,\n draggableTools,\n labels,\n labelsPlaceholders,\n onChangeLabels,\n onChangeMarks,\n onChangeTitle,\n onChangeTools,\n onUndo,\n onRedo,\n onReset,\n range,\n size,\n showLabels,\n showPixelGuides,\n showTitle,\n title,\n titlePlaceholder,\n language,\n removeIncompleteTool,\n limitLabeling,\n } = this.props;\n let { backgroundMarks, marks, toolbarTools } = this.props;\n\n // make sure only valid tool types are kept (string) and without duplicates\n toolbarTools = uniq(toolbarTools || []).filter((tT) => !!isString(tT)) || [];\n\n // keep only the backgroundMarks that have valid types\n backgroundMarks = filterByValidToolTypes(backgroundMarks || []);\n\n // keep only the marks that have types which appear in toolbar\n marks = filterByVisibleToolTypes(toolbarTools, marks || []);\n\n const tools = setToolbarAvailability(toolbarTools);\n\n // set current tool if there's no current tool or if the existing one is no longer available\n if (!currentTool || !toolIsAvailable(tools, currentTool)) {\n currentTool = getAvailableTool(tools);\n }\n\n const graphActions = (\n <React.Fragment>\n <ToolMenu\n currentToolType={currentTool && currentTool.type}\n disabled={!!disabled}\n draggableTools={draggableTools}\n labelModeEnabled={labelModeEnabled}\n onChange={(tool) => this.changeCurrentTool(tool, tools)}\n toolbarTools={toolbarTools}\n onChangeTools={onChangeTools}\n language={language}\n />\n\n {!disabled && <UndoRedo onUndo={onUndo} onRedo={onRedo} onReset={onReset} language={language} />}\n </React.Fragment>\n );\n\n return (\n <StyledGraphContainer className={className}>\n <StyledControls>\n {collapsibleToolbar ? (\n <Collapsible title={collapsibleToolbarTitle}>{graphActions}</Collapsible>\n ) : (\n graphActions\n )}\n </StyledControls>\n\n <div ref={(r) => (this.labelNode = r)} />\n\n <Graph\n axesSettings={axesSettings}\n backgroundMarks={backgroundMarks}\n coordinatesOnHover={coordinatesOnHover}\n currentTool={currentTool}\n disabledLabels={disabledLabels}\n disabledTitle={disabledTitle}\n domain={domain}\n labels={labels}\n labelModeEnabled={labelModeEnabled}\n labelsPlaceholders={labelsPlaceholders}\n marks={marks}\n onChangeMarks={!disabled ? onChangeMarks : undefined}\n onChangeLabels={onChangeLabels}\n onChangeTitle={onChangeTitle}\n range={range}\n size={size}\n showLabels={showLabels}\n showPixelGuides={showPixelGuides}\n showTitle={showTitle}\n title={title}\n titlePlaceholder={titlePlaceholder}\n tools={tools}\n removeIncompleteTool={removeIncompleteTool}\n limitLabeling={limitLabeling}\n />\n </StyledGraphContainer>\n );\n }\n}\n\nexport default GraphWithControls;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"graph-with-controls.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_lodashEs","_renderUi","_toolMenu","_graph","_interopRequireWildcard","_undoRedo","_tools","_material","_ExpandMore","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledGraphContainer","styled","display","flexDirection","width","StyledControls","_ref","theme","justifyContent","padding","spacing","color","text","backgroundColor","primaryLight","fontSize","typography","StyledAccordion","Accordion","StyledAccordionSummary","AccordionSummary","_ref2","concat","minHeight","margin","StyledAccordionDetails","AccordionDetails","_ref3","marginTop","setToolbarAvailability","exports","toolbarTools","toolsArr","map","tA","toolbar","find","type","toolIsAvailable","tools","currentTool","tool","getAvailableTool","filterByValidToolTypes","backgroundMarks","bM","allTools","filterByVisibleToolTypes","marks","getDefaultCurrentTool","toolType","Collapsible","_ref4","children","title","createElement","elevation","disableGutters","square","TransitionProps","timeout","enter","exit","expandIcon","Typography","variant","propTypes","PropTypes","array","string","GraphWithControls","_React$Component","props","_this","_classCallCheck2","setState","labelModeEnabled","state","defaultTool","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","render","_this2","_this$state","_this$props","axesSettings","className","coordinatesOnHover","collapsibleToolbar","collapsibleToolbarTitle","disabled","disabledLabels","disabledTitle","domain","draggableTools","labels","labelsPlaceholders","onChangeLabels","onChangeMarks","onChangeTitle","onChangeTools","onUndo","onRedo","onReset","range","size","showLabels","showPixelGuides","showTitle","titlePlaceholder","language","removeIncompleteTool","limitLabeling","_this$props2","uniq","tT","isString","graphActions","Fragment","currentToolType","onChange","changeCurrentTool","ref","labelNode","undefined","React","Component","graphPropTypes","func","arrayOf","_default"],"sources":["../src/graph-with-controls.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { isString, uniq } from 'lodash-es';\nimport { color } from '@pie-lib/render-ui';\n\nimport ToolMenu from './tool-menu';\nimport Graph, { graphPropTypes } from './graph';\nimport UndoRedo from './undo-redo';\nimport { allTools, toolsArr } from './tools';\nimport { Accordion, AccordionDetails, AccordionSummary, Typography } from '@mui/material';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\n\nconst StyledGraphContainer = styled('div')({\n display: 'flex',\n flexDirection: 'column',\n width: 'min-content',\n});\n\nconst StyledControls = styled('div')(({ theme }) => ({\n display: 'flex',\n justifyContent: 'space-between',\n padding: theme.spacing(1),\n color: color.text(),\n backgroundColor: color.primaryLight(),\n '& button': {\n fontSize: theme.typography.fontSize,\n },\n}));\n\nconst StyledAccordion = styled(Accordion)({\n backgroundColor: color.primaryLight(),\n width: '100%',\n});\n\nconst StyledAccordionSummary = styled(AccordionSummary)(({ theme }) => ({\n padding: `0 ${theme.spacing(1)}`,\n minHeight: '32px !important',\n '& .MuiAccordionSummary-content': {\n margin: '4px 0 !important',\n },\n}));\n\nconst StyledAccordionDetails = styled(AccordionDetails)(({ theme }) => ({\n padding: 0,\n marginTop: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n}));\n\nexport const setToolbarAvailability = (toolbarTools) =>\n toolsArr.map((tA) => ({ ...tA, toolbar: !!toolbarTools.find((t) => t === tA.type) })) || [];\n\nexport const toolIsAvailable = (tools, currentTool) =>\n currentTool && tools && (tools.find((tool) => tool.type === currentTool.type) || {}).toolbar;\n\nexport const getAvailableTool = (tools) => tools.find((tool) => tool.toolbar);\n\nexport const filterByValidToolTypes = (backgroundMarks) =>\n backgroundMarks.filter((bM) => !!allTools.find((tool) => tool === bM.type));\n\nexport const filterByVisibleToolTypes = (toolbarTools, marks) =>\n marks.filter((bM) => !!toolbarTools.find((tool) => tool === bM.type));\n\nconst getDefaultCurrentTool = (toolType) => toolsArr.find((tool) => tool.type === toolType) || null;\n\nconst Collapsible = ({ children, title }) => (\n <StyledAccordion\n elevation={0}\n disableGutters={true}\n square={true}\n TransitionProps={{ timeout: { enter: 225, exit: 195 } }}\n >\n <StyledAccordionSummary expandIcon={<ExpandMoreIcon />}>\n <Typography variant=\"subheading\">{title}</Typography>\n </StyledAccordionSummary>\n <StyledAccordionDetails>{children}</StyledAccordionDetails>\n </StyledAccordion>\n);\n\nCollapsible.propTypes = {\n children: PropTypes.array,\n title: PropTypes.string,\n};\n\nexport class GraphWithControls extends React.Component {\n static propTypes = {\n ...graphPropTypes,\n onUndo: PropTypes.func,\n onRedo: PropTypes.func,\n onReset: PropTypes.func,\n toolbarTools: PropTypes.arrayOf(PropTypes.string), // array of tool types that have to be displayed in the toolbar, same shape as 'allTools'\n language: PropTypes.string,\n };\n\n static defaultProps = {\n collapsibleToolbar: false,\n collapsibleToolbarTitle: '',\n disabledLabels: false,\n disabledTitle: false,\n showLabels: true,\n showTitle: true,\n toolbarTools: [],\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n currentTool: getDefaultCurrentTool(props.defaultTool),\n labelModeEnabled: false,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { defaultTool } = this.props;\n\n if (prevProps.defaultTool !== defaultTool) {\n const currentTool = getDefaultCurrentTool(defaultTool);\n\n this.setState({ currentTool });\n }\n }\n\n changeCurrentTool = (tool, tools) =>\n this.setState({ currentTool: tools.find((t) => t.type === tool), labelModeEnabled: tool === 'label' });\n\n render() {\n let { currentTool, labelModeEnabled } = this.state;\n const {\n axesSettings,\n className,\n coordinatesOnHover,\n collapsibleToolbar,\n collapsibleToolbarTitle,\n disabled,\n disabledLabels,\n disabledTitle,\n domain,\n draggableTools,\n labels,\n labelsPlaceholders,\n onChangeLabels,\n onChangeMarks,\n onChangeTitle,\n onChangeTools,\n onUndo,\n onRedo,\n onReset,\n range,\n size,\n showLabels,\n showPixelGuides,\n showTitle,\n title,\n titlePlaceholder,\n language,\n removeIncompleteTool,\n limitLabeling,\n } = this.props;\n let { backgroundMarks, marks, toolbarTools } = this.props;\n\n // make sure only valid tool types are kept (string) and without duplicates\n toolbarTools = uniq(toolbarTools || []).filter((tT) => !!isString(tT)) || [];\n\n // keep only the backgroundMarks that have valid types\n backgroundMarks = filterByValidToolTypes(backgroundMarks || []);\n\n // keep only the marks that have types which appear in toolbar\n marks = filterByVisibleToolTypes(toolbarTools, marks || []);\n\n const tools = setToolbarAvailability(toolbarTools);\n\n // set current tool if there's no current tool or if the existing one is no longer available\n if (!currentTool || !toolIsAvailable(tools, currentTool)) {\n currentTool = getAvailableTool(tools);\n }\n\n const graphActions = (\n <React.Fragment>\n <ToolMenu\n currentToolType={currentTool && currentTool.type}\n disabled={!!disabled}\n draggableTools={draggableTools}\n labelModeEnabled={labelModeEnabled}\n onChange={(tool) => this.changeCurrentTool(tool, tools)}\n toolbarTools={toolbarTools}\n onChangeTools={onChangeTools}\n language={language}\n />\n\n {!disabled && <UndoRedo onUndo={onUndo} onRedo={onRedo} onReset={onReset} language={language} />}\n </React.Fragment>\n );\n\n return (\n <StyledGraphContainer className={className}>\n <StyledControls>\n {collapsibleToolbar ? (\n <Collapsible title={collapsibleToolbarTitle}>{graphActions}</Collapsible>\n ) : (\n graphActions\n )}\n </StyledControls>\n\n <div ref={(r) => (this.labelNode = r)} />\n\n <Graph\n axesSettings={axesSettings}\n backgroundMarks={backgroundMarks}\n coordinatesOnHover={coordinatesOnHover}\n currentTool={currentTool}\n disabledLabels={disabledLabels}\n disabledTitle={disabledTitle}\n domain={domain}\n labels={labels}\n labelModeEnabled={labelModeEnabled}\n labelsPlaceholders={labelsPlaceholders}\n marks={marks}\n onChangeMarks={!disabled ? onChangeMarks : undefined}\n onChangeLabels={onChangeLabels}\n onChangeTitle={onChangeTitle}\n range={range}\n size={size}\n showLabels={showLabels}\n showPixelGuides={showPixelGuides}\n showTitle={showTitle}\n title={title}\n titlePlaceholder={titlePlaceholder}\n tools={tools}\n removeIncompleteTool={removeIncompleteTool}\n limitLabeling={limitLabeling}\n />\n </StyledGraphContainer>\n );\n }\n}\n\nexport default GraphWithControls;\n"],"mappings":"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","ignoreList":[]}
package/lib/graph.js CHANGED
@@ -92,6 +92,17 @@ var Graph = exports.Graph = /*#__PURE__*/function (_React$Component) {
92
92
  (0, _classCallCheck2["default"])(this, Graph);
93
93
  _this = _callSuper(this, Graph, [props]);
94
94
  (0, _defineProperty2["default"])(_this, "state", {});
95
+ (0, _defineProperty2["default"])(_this, "_justDragged", false);
96
+ (0, _defineProperty2["default"])(_this, "startDrag", function () {
97
+ _this._justDragged = false;
98
+ });
99
+ (0, _defineProperty2["default"])(_this, "stopDrag", function () {
100
+ _this._justDragged = true;
101
+ // Reset after a short delay — long enough for any trailing click/bg-click to fire first.
102
+ setTimeout(function () {
103
+ _this._justDragged = false;
104
+ }, 300);
105
+ });
95
106
  (0, _defineProperty2["default"])(_this, "componentDidMount", function () {
96
107
  return _this.setState({
97
108
  labelNode: _this.labelNode
@@ -155,6 +166,9 @@ var Graph = exports.Graph = /*#__PURE__*/function (_React$Component) {
155
166
  labelModeEnabled = _this$props4.labelModeEnabled,
156
167
  currentTool = _this$props4.currentTool,
157
168
  marks = _this$props4.marks;
169
+ if (_this._justDragged) {
170
+ return;
171
+ }
158
172
  if (labelModeEnabled || !currentTool || [null, undefined].includes(x) || [null, undefined].includes(y)) {
159
173
  return;
160
174
  }