@pie-lib/charting 5.36.1 → 5.37.0-mui-update.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 (77) hide show
  1. package/CHANGELOG.md +14 -20
  2. package/lib/actions-button.js +60 -90
  3. package/lib/actions-button.js.map +1 -1
  4. package/lib/axes.js +154 -234
  5. package/lib/axes.js.map +1 -1
  6. package/lib/bars/bar.js +13 -41
  7. package/lib/bars/bar.js.map +1 -1
  8. package/lib/bars/common/bars.js +55 -126
  9. package/lib/bars/common/bars.js.map +1 -1
  10. package/lib/bars/common/correct-check-icon.js +1 -6
  11. package/lib/bars/common/correct-check-icon.js.map +1 -1
  12. package/lib/bars/histogram.js +13 -41
  13. package/lib/bars/histogram.js.map +1 -1
  14. package/lib/chart-setup.js +110 -184
  15. package/lib/chart-setup.js.map +1 -1
  16. package/lib/chart-type.js +29 -38
  17. package/lib/chart-type.js.map +1 -1
  18. package/lib/chart-types.js +1 -10
  19. package/lib/chart-types.js.map +1 -1
  20. package/lib/chart.js +74 -146
  21. package/lib/chart.js.map +1 -1
  22. package/lib/common/correctness-indicators.js +74 -52
  23. package/lib/common/correctness-indicators.js.map +1 -1
  24. package/lib/common/drag-handle.js +67 -105
  25. package/lib/common/drag-handle.js.map +1 -1
  26. package/lib/common/drag-icon.js +6 -12
  27. package/lib/common/drag-icon.js.map +1 -1
  28. package/lib/common/styles.js +6 -24
  29. package/lib/common/styles.js.map +1 -1
  30. package/lib/grid.js +44 -81
  31. package/lib/grid.js.map +1 -1
  32. package/lib/index.js +0 -6
  33. package/lib/index.js.map +1 -1
  34. package/lib/key-legend.js +63 -87
  35. package/lib/key-legend.js.map +1 -1
  36. package/lib/line/common/drag-handle.js +69 -100
  37. package/lib/line/common/drag-handle.js.map +1 -1
  38. package/lib/line/common/line.js +44 -92
  39. package/lib/line/common/line.js.map +1 -1
  40. package/lib/line/line-cross.js +77 -87
  41. package/lib/line/line-cross.js.map +1 -1
  42. package/lib/line/line-dot.js +66 -78
  43. package/lib/line/line-dot.js.map +1 -1
  44. package/lib/mark-label.js +75 -117
  45. package/lib/mark-label.js.map +1 -1
  46. package/lib/plot/common/plot.js +76 -144
  47. package/lib/plot/common/plot.js.map +1 -1
  48. package/lib/plot/dot.js +31 -57
  49. package/lib/plot/dot.js.map +1 -1
  50. package/lib/plot/line.js +37 -62
  51. package/lib/plot/line.js.map +1 -1
  52. package/lib/tool-menu.js +48 -80
  53. package/lib/tool-menu.js.map +1 -1
  54. package/lib/utils.js +20 -77
  55. package/lib/utils.js.map +1 -1
  56. package/package.json +12 -9
  57. package/src/actions-button.jsx +44 -39
  58. package/src/axes.jsx +61 -75
  59. package/src/bars/common/bars.jsx +8 -23
  60. package/src/chart-setup.jsx +68 -78
  61. package/src/chart-type.js +26 -21
  62. package/src/chart.jsx +8 -20
  63. package/src/common/correctness-indicators.jsx +51 -13
  64. package/src/common/drag-handle.jsx +44 -59
  65. package/src/common/drag-icon.jsx +2 -2
  66. package/src/common/styles.js +1 -1
  67. package/src/grid.jsx +9 -13
  68. package/src/key-legend.jsx +62 -60
  69. package/src/line/common/drag-handle.jsx +57 -55
  70. package/src/line/common/line.jsx +17 -8
  71. package/src/line/line-cross.js +37 -12
  72. package/src/line/line-dot.js +30 -11
  73. package/src/mark-label.jsx +43 -44
  74. package/src/plot/common/plot.jsx +17 -22
  75. package/src/plot/dot.js +10 -3
  76. package/src/plot/line.js +14 -6
  77. package/src/tool-menu.jsx +20 -23
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/tool-menu.jsx"],"names":["translator","Translator","buttonStyles","theme","root","color","text","border","secondary","fontSize","typography","selected","backgroundColor","background","primaryDark","notSelected","primary","disabled","MiniButton","props","classes","className","value","onClick","propTypes","PropTypes","bool","string","disabledClassName","func","ToolMenu","addCategory","language","t","lng","React","Component"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { color } from '@pie-lib/render-ui';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport cn from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst buttonStyles = (theme) => ({\n root: {\n color: color.text(),\n border: `1px solid ${color.secondary()}`,\n fontSize: theme.typography.fontSize,\n },\n selected: {\n backgroundColor: color.background(),\n '& span': {\n color: color.primaryDark(),\n },\n },\n notSelected: {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.background(),\n },\n disabled: {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.disabled(),\n },\n});\n\nexport const MiniButton = withStyles(buttonStyles)((props) => {\n const { disabled, classes, className, selected, value, onClick } = props;\n return (\n <Button\n size=\"small\"\n disabled={disabled}\n color={selected ? 'secondary' : 'default'}\n className={cn(classes.root, selected && classes.selected, className)}\n classes={{ disabled: cn(disabled && classes.disabled) }}\n value={value}\n key={value}\n variant=\"outlined\"\n onClick={onClick}\n >\n {value}\n </Button>\n );\n});\nMiniButton.propTypes = {\n disabled: PropTypes.bool,\n className: PropTypes.string,\n disabledClassName: PropTypes.string,\n selected: PropTypes.bool,\n value: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport class ToolMenu extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n addCategory: PropTypes.func,\n disabled: PropTypes.bool,\n language: PropTypes.string,\n };\n\n static defaultProps = {};\n\n render() {\n const { className, disabled, addCategory, language } = this.props;\n\n return (\n <div className={classNames(className)}>\n {!disabled && (\n <MiniButton value={translator.t('charting.addCategory', { lng: language })} onClick={addCategory} />\n )}\n </div>\n );\n }\n}\n\nexport default ToolMenu;\n"],"file":"tool-menu.js"}
1
+ {"version":3,"file":"tool-menu.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_renderUi","_styles","_Button","_translator","_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","translator","Translator","StyledMiniButton","styled","Button","_ref","theme","selected","disabled","color","text","border","concat","secondary","fontSize","typography","backgroundColor","background","primaryDark","primary","MiniButton","exports","props","className","value","onClick","createElement","size","key","variant","propTypes","PropTypes","bool","string","disabledClassName","func","ToolMenu","_React$Component","_classCallCheck2","_inherits2","_createClass2","render","_this$props","addCategory","language","classNames","lng","React","Component","_default"],"sources":["../src/tool-menu.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { color } from '@pie-lib/render-ui';\n\nimport { styled } from '@mui/material/styles';\nimport Button from '@mui/material/Button';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst StyledMiniButton = styled(Button)(({ theme, selected, disabled }) => ({\n color: color.text(),\n border: `1px solid ${color.secondary()}`,\n fontSize: theme.typography.fontSize,\n ...(selected && {\n backgroundColor: color.background(),\n '& span': {\n color: color.primaryDark(),\n },\n }),\n ...(!selected && !disabled && {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.background(),\n }),\n ...(disabled && {\n '& span': {\n color: color.primary(),\n },\n backgroundColor: color.disabled(),\n }),\n}));\n\nexport const MiniButton = (props) => {\n const { disabled, className, selected, value, onClick } = props;\n return (\n <StyledMiniButton\n size=\"small\"\n disabled={disabled}\n selected={selected}\n color={selected ? 'secondary' : 'default'}\n className={className}\n value={value}\n key={value}\n variant=\"outlined\"\n onClick={onClick}\n >\n {value}\n </StyledMiniButton>\n );\n};\nMiniButton.propTypes = {\n disabled: PropTypes.bool,\n className: PropTypes.string,\n disabledClassName: PropTypes.string,\n selected: PropTypes.bool,\n value: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport class ToolMenu extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n addCategory: PropTypes.func,\n disabled: PropTypes.bool,\n language: PropTypes.string,\n };\n\n static defaultProps = {};\n\n render() {\n const { className, disabled, addCategory, language } = this.props;\n\n return (\n <div className={classNames(className)}>\n {!disabled && (\n <MiniButton value={translator.t('charting.addCategory', { lng: language })} onClick={addCategory} />\n )}\n </div>\n );\n }\n}\n\nexport default ToolMenu;\n"],"mappings":"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","ignoreList":[]}
package/lib/utils.js CHANGED
@@ -1,36 +1,22 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.tickCount = exports.point = exports.getTopPadding = exports.getTickValues = exports.getScale = exports.getRotateAngle = exports.getGridLinesAndAxisByChartType = exports.getDomainAndRangeByChartType = exports.getAdjustedX = exports.dataToXBand = exports.bounds = exports.bandKey = void 0;
9
-
10
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
9
  var _scale = require("@vx/scale");
13
-
14
10
  var _plot = require("@pie-lib/plot");
15
-
16
- 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; }
17
-
18
- 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; }
19
-
20
- var tickCount = _plot.utils.tickCount;
21
- exports.tickCount = tickCount;
22
- var bounds = _plot.utils.bounds;
23
- exports.bounds = bounds;
24
- var point = _plot.utils.point;
25
- exports.point = point;
26
-
27
- var bandKey = function bandKey(d, index) {
11
+ 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; }
12
+ 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; }
13
+ var tickCount = exports.tickCount = _plot.utils.tickCount;
14
+ var bounds = exports.bounds = _plot.utils.bounds;
15
+ var point = exports.point = _plot.utils.point;
16
+ var bandKey = exports.bandKey = function bandKey(d, index) {
28
17
  return "".concat(index, "-").concat(d.label || '-');
29
18
  };
30
-
31
- exports.bandKey = bandKey;
32
-
33
- var dataToXBand = function dataToXBand(scaleX, data, width, type) {
19
+ var dataToXBand = exports.dataToXBand = function dataToXBand(scaleX, data, width, type) {
34
20
  switch (type) {
35
21
  case 'bar':
36
22
  case 'dotPlot':
@@ -40,21 +26,18 @@ var dataToXBand = function dataToXBand(scaleX, data, width, type) {
40
26
  domain: data && data.map(bandKey),
41
27
  padding: 0.2
42
28
  });
43
-
44
29
  case 'histogram':
45
30
  return (0, _scale.scaleBand)({
46
31
  rangeRound: [0, width],
47
32
  domain: data && data.map(bandKey),
48
33
  padding: 0
49
34
  });
50
-
51
35
  case 'lineCross':
52
36
  case 'lineDot':
53
37
  return (0, _scale.scalePoint)({
54
38
  domain: data && data.map(bandKey),
55
39
  rangeRound: [0, width]
56
40
  });
57
-
58
41
  default:
59
42
  return (0, _scale.scaleBand)({
60
43
  range: [0, width],
@@ -63,49 +46,35 @@ var dataToXBand = function dataToXBand(scaleX, data, width, type) {
63
46
  });
64
47
  }
65
48
  };
66
-
67
- exports.dataToXBand = dataToXBand;
68
-
69
- var getTickValues = function getTickValues() {
49
+ var getTickValues = exports.getTickValues = function getTickValues() {
70
50
  var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
71
51
  var tickValues = [];
72
52
  var tickVal = prop.min;
73
-
74
53
  while (tickVal <= prop.max) {
75
54
  tickValues.push(tickVal);
76
55
  tickVal = Math.round((tickVal + prop.step) * 10000) / 10000;
77
56
  }
78
-
79
57
  return tickValues;
80
58
  };
81
-
82
- exports.getTickValues = getTickValues;
83
-
84
- var getDomainAndRangeByChartType = function getDomainAndRangeByChartType(domain, range, chartType) {
59
+ var getDomainAndRangeByChartType = exports.getDomainAndRangeByChartType = function getDomainAndRangeByChartType(domain, range, chartType) {
85
60
  var _ref = range || {},
86
- step = _ref.step,
87
- labelStep = _ref.labelStep,
88
- min = _ref.min,
89
- max = _ref.max;
90
-
61
+ step = _ref.step,
62
+ labelStep = _ref.labelStep,
63
+ min = _ref.min,
64
+ max = _ref.max;
91
65
  if (!min) {
92
66
  min = 0;
93
67
  }
94
-
95
68
  if (!max || max < 0) {
96
69
  max = range.min + 1;
97
70
  }
98
-
99
71
  if (!step) {
100
72
  step = labelStep || 1;
101
73
  }
102
-
103
74
  if (!labelStep || isNaN(labelStep) && step) {
104
75
  labelStep = step || 1;
105
76
  }
106
-
107
77
  range.max = max;
108
-
109
78
  switch (chartType) {
110
79
  // if chart is dot plot or line plot, we should ignore step and make sure that min & max are integer values
111
80
  case 'dotPlot':
@@ -128,7 +97,6 @@ var getDomainAndRangeByChartType = function getDomainAndRangeByChartType(domain,
128
97
  })
129
98
  };
130
99
  }
131
-
132
100
  default:
133
101
  return {
134
102
  domain: _objectSpread(_objectSpread({}, domain), {}, {
@@ -144,10 +112,7 @@ var getDomainAndRangeByChartType = function getDomainAndRangeByChartType(domain,
144
112
  };
145
113
  }
146
114
  };
147
-
148
- exports.getDomainAndRangeByChartType = getDomainAndRangeByChartType;
149
-
150
- var getGridLinesAndAxisByChartType = function getGridLinesAndAxisByChartType(range, chartType) {
115
+ var getGridLinesAndAxisByChartType = exports.getGridLinesAndAxisByChartType = function getGridLinesAndAxisByChartType(range, chartType) {
151
116
  switch (chartType) {
152
117
  case 'lineDot':
153
118
  case 'lineCross':
@@ -156,7 +121,6 @@ var getGridLinesAndAxisByChartType = function getGridLinesAndAxisByChartType(ran
156
121
  horizontalLines: getTickValues(range),
157
122
  leftAxis: true
158
123
  };
159
-
160
124
  case 'dotPlot':
161
125
  case 'linePlot':
162
126
  return {
@@ -164,7 +128,6 @@ var getGridLinesAndAxisByChartType = function getGridLinesAndAxisByChartType(ran
164
128
  horizontalLines: [],
165
129
  leftAxis: false
166
130
  };
167
-
168
131
  default:
169
132
  return {
170
133
  verticalLines: [],
@@ -173,41 +136,28 @@ var getGridLinesAndAxisByChartType = function getGridLinesAndAxisByChartType(ran
173
136
  };
174
137
  }
175
138
  };
176
-
177
- exports.getGridLinesAndAxisByChartType = getGridLinesAndAxisByChartType;
178
-
179
- var getRotateAngle = function getRotateAngle(fontSize, height) {
139
+ var getRotateAngle = exports.getRotateAngle = function getRotateAngle(fontSize, height) {
180
140
  if (height >= fontSize * 2) {
181
141
  return 25;
182
142
  }
183
-
184
143
  return 0;
185
144
  };
186
-
187
- exports.getRotateAngle = getRotateAngle;
188
-
189
- var getTopPadding = function getTopPadding(barWidth) {
145
+ var getTopPadding = exports.getTopPadding = function getTopPadding(barWidth) {
190
146
  if (barWidth < 30) {
191
147
  return 50;
192
148
  }
193
-
194
149
  if (barWidth < 40) {
195
150
  return 30;
196
151
  }
197
-
198
152
  if (barWidth < 60) {
199
153
  return 15;
200
154
  }
201
-
202
155
  return 0;
203
- }; // This function calculates the transformation scale for SVG and the icon's vertical distance from its category
204
-
205
-
206
- exports.getTopPadding = getTopPadding;
156
+ };
207
157
 
208
- var getScale = function getScale(width) {
158
+ // This function calculates the transformation scale for SVG and the icon's vertical distance from its category
159
+ var getScale = exports.getScale = function getScale(width) {
209
160
  var scale, deltay;
210
-
211
161
  if (width > 91) {
212
162
  scale = 1.3;
213
163
  deltay = -55;
@@ -222,23 +172,16 @@ var getScale = function getScale(width) {
222
172
  deltay = -20;
223
173
  } else {
224
174
  scale = 0.5 * Math.pow(0.98, 34 - width); // 0.98 is the reduction factor. Adjust to control scaling.
225
-
226
175
  deltay = -15;
227
176
  }
228
-
229
177
  return {
230
178
  scale: scale,
231
179
  deltay: deltay
232
180
  };
233
181
  };
234
-
235
- exports.getScale = getScale;
236
-
237
- var getAdjustedX = function getAdjustedX(width, scaleValue) {
182
+ var getAdjustedX = exports.getAdjustedX = function getAdjustedX(width, scaleValue) {
238
183
  var innerWidthOriginal = 57;
239
184
  var effectiveInnerWidth = innerWidthOriginal * scaleValue;
240
185
  return (width - effectiveInnerWidth) / 2;
241
186
  };
242
-
243
- exports.getAdjustedX = getAdjustedX;
244
187
  //# sourceMappingURL=utils.js.map
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils.js"],"names":["tickCount","utils","bounds","point","bandKey","d","index","label","dataToXBand","scaleX","data","width","type","rangeRound","domain","map","padding","range","getTickValues","prop","tickValues","tickVal","min","max","push","Math","round","step","getDomainAndRangeByChartType","chartType","labelStep","isNaN","intMin","intMax","getGridLinesAndAxisByChartType","verticalLines","undefined","horizontalLines","leftAxis","getRotateAngle","fontSize","height","getTopPadding","barWidth","getScale","scale","deltay","pow","getAdjustedX","scaleValue","innerWidthOriginal","effectiveInnerWidth"],"mappings":"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","sourcesContent":["import { scaleBand, scalePoint } from '@vx/scale';\nimport { utils } from '@pie-lib/plot';\n\nexport const tickCount = utils.tickCount;\nexport const bounds = utils.bounds;\nexport const point = utils.point;\n\nexport const bandKey = (d, index) => `${index}-${d.label || '-'}`;\n\nexport const dataToXBand = (scaleX, data, width, type) => {\n switch (type) {\n case 'bar':\n case 'dotPlot':\n case 'linePlot':\n return scaleBand({\n rangeRound: [0, width],\n domain: data && data.map(bandKey),\n padding: 0.2,\n });\n\n case 'histogram':\n return scaleBand({\n rangeRound: [0, width],\n domain: data && data.map(bandKey),\n padding: 0,\n });\n\n case 'lineCross':\n case 'lineDot':\n return scalePoint({\n domain: data && data.map(bandKey),\n rangeRound: [0, width],\n });\n\n default:\n return scaleBand({\n range: [0, width],\n domain: data && data.map(bandKey),\n padding: 0,\n });\n }\n};\n\nexport const getTickValues = (prop = {}) => {\n const tickValues = [];\n let tickVal = prop.min;\n\n while (tickVal <= prop.max) {\n tickValues.push(tickVal);\n tickVal = Math.round((tickVal + prop.step) * 10000) / 10000;\n }\n\n return tickValues;\n};\n\nexport const getDomainAndRangeByChartType = (domain, range, chartType) => {\n let { step, labelStep, min, max } = range || {};\n\n if (!min) {\n min = 0;\n }\n\n if (!max || max < 0) {\n max = range.min + 1;\n }\n\n if (!step) {\n step = labelStep || 1;\n }\n if (!labelStep || (isNaN(labelStep) && step)) {\n labelStep = step || 1;\n }\n\n range.max = max;\n\n switch (chartType) {\n // if chart is dot plot or line plot, we should ignore step and make sure that min & max are integer values\n case 'dotPlot':\n case 'linePlot': {\n const intMin = Math.round(min);\n const intMax = Math.round(max);\n\n return {\n domain: {\n ...domain,\n step: 1,\n labelStep: 1,\n min: 0,\n max: 1,\n },\n range: {\n ...range,\n min: intMin,\n max: intMin === intMax ? intMin + 1 : intMax,\n labelStep,\n step: 1,\n },\n };\n }\n\n default:\n return {\n domain: {\n ...domain,\n step: 1,\n labelStep: 1,\n min: 0,\n max: 1,\n },\n range: {\n ...range,\n labelStep,\n step,\n },\n };\n }\n};\n\nexport const getGridLinesAndAxisByChartType = (range, chartType) => {\n switch (chartType) {\n case 'lineDot':\n case 'lineCross':\n return {\n verticalLines: undefined,\n horizontalLines: getTickValues(range),\n leftAxis: true,\n };\n\n case 'dotPlot':\n case 'linePlot':\n return {\n verticalLines: [],\n horizontalLines: [],\n leftAxis: false,\n };\n\n default:\n return {\n verticalLines: [],\n horizontalLines: getTickValues(range),\n leftAxis: true,\n };\n }\n};\n\nexport const getRotateAngle = (fontSize, height) => {\n if (height >= fontSize * 2) {\n return 25;\n }\n\n return 0;\n};\n\nexport const getTopPadding = (barWidth) => {\n if (barWidth < 30) {\n return 50;\n }\n\n if (barWidth < 40) {\n return 30;\n }\n\n if (barWidth < 60) {\n return 15;\n }\n\n return 0;\n};\n\n// This function calculates the transformation scale for SVG and the icon's vertical distance from its category\nexport const getScale = (width) => {\n let scale, deltay;\n\n if (width > 91) {\n scale = 1.3;\n deltay = -55;\n } else if (width > 45) {\n scale = 1.1;\n deltay = -45;\n } else if (width > 40) {\n scale = 0.5 + (width - 34) * 0.02;\n deltay = -25;\n } else if (width > 30) {\n scale = 0.5 + (width - 34) * 0.02;\n deltay = -20;\n } else {\n scale = 0.5 * Math.pow(0.98, 34 - width); // 0.98 is the reduction factor. Adjust to control scaling.\n deltay = -15;\n }\n\n return { scale, deltay };\n};\n\nexport const getAdjustedX = (width, scaleValue) => {\n const innerWidthOriginal = 57;\n const effectiveInnerWidth = innerWidthOriginal * scaleValue;\n return (width - effectiveInnerWidth) / 2;\n};\n"],"file":"utils.js"}
1
+ {"version":3,"file":"utils.js","names":["_scale","require","_plot","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","tickCount","exports","utils","bounds","point","bandKey","d","index","concat","label","dataToXBand","scaleX","data","width","type","scaleBand","rangeRound","domain","map","padding","scalePoint","range","getTickValues","prop","undefined","tickValues","tickVal","min","max","Math","round","step","getDomainAndRangeByChartType","chartType","_ref","labelStep","isNaN","intMin","intMax","getGridLinesAndAxisByChartType","verticalLines","horizontalLines","leftAxis","getRotateAngle","fontSize","height","getTopPadding","barWidth","getScale","scale","deltay","pow","getAdjustedX","scaleValue","innerWidthOriginal","effectiveInnerWidth"],"sources":["../src/utils.js"],"sourcesContent":["import { scaleBand, scalePoint } from '@vx/scale';\nimport { utils } from '@pie-lib/plot';\n\nexport const tickCount = utils.tickCount;\nexport const bounds = utils.bounds;\nexport const point = utils.point;\n\nexport const bandKey = (d, index) => `${index}-${d.label || '-'}`;\n\nexport const dataToXBand = (scaleX, data, width, type) => {\n switch (type) {\n case 'bar':\n case 'dotPlot':\n case 'linePlot':\n return scaleBand({\n rangeRound: [0, width],\n domain: data && data.map(bandKey),\n padding: 0.2,\n });\n\n case 'histogram':\n return scaleBand({\n rangeRound: [0, width],\n domain: data && data.map(bandKey),\n padding: 0,\n });\n\n case 'lineCross':\n case 'lineDot':\n return scalePoint({\n domain: data && data.map(bandKey),\n rangeRound: [0, width],\n });\n\n default:\n return scaleBand({\n range: [0, width],\n domain: data && data.map(bandKey),\n padding: 0,\n });\n }\n};\n\nexport const getTickValues = (prop = {}) => {\n const tickValues = [];\n let tickVal = prop.min;\n\n while (tickVal <= prop.max) {\n tickValues.push(tickVal);\n tickVal = Math.round((tickVal + prop.step) * 10000) / 10000;\n }\n\n return tickValues;\n};\n\nexport const getDomainAndRangeByChartType = (domain, range, chartType) => {\n let { step, labelStep, min, max } = range || {};\n\n if (!min) {\n min = 0;\n }\n\n if (!max || max < 0) {\n max = range.min + 1;\n }\n\n if (!step) {\n step = labelStep || 1;\n }\n if (!labelStep || (isNaN(labelStep) && step)) {\n labelStep = step || 1;\n }\n\n range.max = max;\n\n switch (chartType) {\n // if chart is dot plot or line plot, we should ignore step and make sure that min & max are integer values\n case 'dotPlot':\n case 'linePlot': {\n const intMin = Math.round(min);\n const intMax = Math.round(max);\n\n return {\n domain: {\n ...domain,\n step: 1,\n labelStep: 1,\n min: 0,\n max: 1,\n },\n range: {\n ...range,\n min: intMin,\n max: intMin === intMax ? intMin + 1 : intMax,\n labelStep,\n step: 1,\n },\n };\n }\n\n default:\n return {\n domain: {\n ...domain,\n step: 1,\n labelStep: 1,\n min: 0,\n max: 1,\n },\n range: {\n ...range,\n labelStep,\n step,\n },\n };\n }\n};\n\nexport const getGridLinesAndAxisByChartType = (range, chartType) => {\n switch (chartType) {\n case 'lineDot':\n case 'lineCross':\n return {\n verticalLines: undefined,\n horizontalLines: getTickValues(range),\n leftAxis: true,\n };\n\n case 'dotPlot':\n case 'linePlot':\n return {\n verticalLines: [],\n horizontalLines: [],\n leftAxis: false,\n };\n\n default:\n return {\n verticalLines: [],\n horizontalLines: getTickValues(range),\n leftAxis: true,\n };\n }\n};\n\nexport const getRotateAngle = (fontSize, height) => {\n if (height >= fontSize * 2) {\n return 25;\n }\n\n return 0;\n};\n\nexport const getTopPadding = (barWidth) => {\n if (barWidth < 30) {\n return 50;\n }\n\n if (barWidth < 40) {\n return 30;\n }\n\n if (barWidth < 60) {\n return 15;\n }\n\n return 0;\n};\n\n// This function calculates the transformation scale for SVG and the icon's vertical distance from its category\nexport const getScale = (width) => {\n let scale, deltay;\n\n if (width > 91) {\n scale = 1.3;\n deltay = -55;\n } else if (width > 45) {\n scale = 1.1;\n deltay = -45;\n } else if (width > 40) {\n scale = 0.5 + (width - 34) * 0.02;\n deltay = -25;\n } else if (width > 30) {\n scale = 0.5 + (width - 34) * 0.02;\n deltay = -20;\n } else {\n scale = 0.5 * Math.pow(0.98, 34 - width); // 0.98 is the reduction factor. Adjust to control scaling.\n deltay = -15;\n }\n\n return { scale, deltay };\n};\n\nexport const getAdjustedX = (width, scaleValue) => {\n const innerWidthOriginal = 57;\n const effectiveInnerWidth = innerWidthOriginal * scaleValue;\n return (width - effectiveInnerWidth) / 2;\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "5.36.1",
6
+ "version": "5.37.0-mui-update.0",
7
7
  "description": "charting",
8
8
  "keywords": [
9
9
  "react",
@@ -17,12 +17,15 @@
17
17
  "author": "",
18
18
  "license": "ISC",
19
19
  "dependencies": {
20
+ "@emotion/react": "^11.14.0",
21
+ "@emotion/style": "^0.8.0",
20
22
  "@mapbox/point-geometry": "^0.1.0",
21
- "@material-ui/core": "^3.8.3",
22
- "@pie-lib/math-rendering": "^3.22.1",
23
- "@pie-lib/plot": "^2.27.1",
24
- "@pie-lib/render-ui": "^4.35.1",
25
- "@pie-lib/translator": "^2.23.1",
23
+ "@mui/icons-material": "^7.3.4",
24
+ "@mui/material": "^7.3.4",
25
+ "@pie-lib/math-rendering": "^3.27.0-mui-update.0",
26
+ "@pie-lib/plot": "^2.28.0-mui-update.0",
27
+ "@pie-lib/render-ui": "^4.36.0-mui-update.0",
28
+ "@pie-lib/translator": "^2.25.0-mui-update.0",
26
29
  "@vx/axis": "^0.0.183",
27
30
  "@vx/event": "^0.0.182",
28
31
  "@vx/grid": "^0.0.183",
@@ -36,12 +39,12 @@
36
39
  "debug": "^4.1.1",
37
40
  "invariant": "^2.2.4",
38
41
  "lodash": "^4.17.11",
39
- "react": "^16.8.1",
42
+ "react": "^18.2.0",
40
43
  "react-draggable": "^3.1.1",
41
44
  "react-input-autosize": "^2.2.1"
42
45
  },
43
46
  "peerDependencies": {
44
- "react": "^16.8.1"
47
+ "react": "^18.2.0"
45
48
  },
46
- "gitHead": "ce0ec7134200c51f3a3301257be3e707054b36ca"
49
+ "gitHead": "2e0222bda045f46b504640a972d43787e68288c4"
47
50
  }
@@ -1,15 +1,39 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { withStyles } from '@material-ui/core/styles';
4
- import Button from '@material-ui/core/Button';
5
- import Popover from '@material-ui/core/Popover';
6
- import Paper from '@material-ui/core/Paper';
3
+ import { styled } from '@mui/material/styles';
4
+ import Button from '@mui/material/Button';
5
+ import Popover from '@mui/material/Popover';
6
+ import Paper from '@mui/material/Paper';
7
7
 
8
8
  import { color } from '@pie-lib/render-ui';
9
9
  import Translator from '@pie-lib/translator';
10
10
 
11
11
  const { translator } = Translator;
12
12
 
13
+ const StyledActions = styled('div')(() => ({
14
+ alignSelf: 'flex-end',
15
+ }));
16
+
17
+ const StyledTrigger = styled('div')(({ theme }) => ({
18
+ cursor: 'pointer',
19
+ fontSize: theme.typography.fontSize,
20
+ color: color.tertiary(),
21
+ padding: theme.spacing(1),
22
+ }));
23
+
24
+ const StyledActionsPaper = styled(Paper)(({ theme }) => ({
25
+ padding: theme.spacing(1),
26
+ display: 'flex',
27
+ flexDirection: 'column',
28
+ gap: theme.spacing(1),
29
+ '& button': {
30
+ textTransform: 'none',
31
+ fontSize: theme.typography.fontSize,
32
+ color: color.text(),
33
+ justifyContent: 'flex-start',
34
+ },
35
+ }));
36
+
13
37
  export class ActionsButton extends React.Component {
14
38
  constructor(props) {
15
39
  super(props);
@@ -18,8 +42,11 @@ export class ActionsButton extends React.Component {
18
42
  };
19
43
  }
20
44
 
45
+ componentWillUnmount() {
46
+ this.setState({ actionsAnchorEl: null });
47
+ }
48
+
21
49
  static propTypes = {
22
- classes: PropTypes.object.isRequired,
23
50
  addCategory: PropTypes.func.isRequired,
24
51
  deleteCategory: PropTypes.func.isRequired,
25
52
  language: PropTypes.string,
@@ -47,21 +74,23 @@ export class ActionsButton extends React.Component {
47
74
  };
48
75
 
49
76
  render() {
50
- const { classes, categories, language } = this.props;
77
+ const { categories, language } = this.props;
78
+ const { actionsAnchorEl } = this.state;
51
79
 
52
80
  return (
53
- <div className={classes.actions}>
54
- <div role="button" tabIndex={0} className={classes.trigger} onClick={this.handleActionsClick}>
81
+ <StyledActions>
82
+ <StyledTrigger role="button" tabIndex={0} onClick={this.handleActionsClick}>
55
83
  Actions
56
- </div>
84
+ </StyledTrigger>
57
85
  <Popover
58
- open={Boolean(this.state.actionsAnchorEl)}
59
- anchorEl={this.state.actionsAnchorEl}
86
+ key={`actions-popover-${Math.random()}`}
87
+ open={Boolean(actionsAnchorEl)}
88
+ anchorEl={actionsAnchorEl}
60
89
  onClose={this.handleActionsClose}
61
90
  anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}
62
91
  transformOrigin={{ vertical: 'top', horizontal: 'left' }}
63
92
  >
64
- <Paper className={classes.actionsPaper}>
93
+ <StyledActionsPaper>
65
94
  <Button onClick={() => this.handleAddCategory()}>
66
95
  + {translator.t('charting.add', { lng: language })}
67
96
  </Button>
@@ -76,35 +105,11 @@ export class ActionsButton extends React.Component {
76
105
  </Button>
77
106
  ),
78
107
  )}
79
- </Paper>
108
+ </StyledActionsPaper>
80
109
  </Popover>
81
- </div>
110
+ </StyledActions>
82
111
  );
83
112
  }
84
113
  }
85
114
 
86
- const styles = (theme) => ({
87
- actions: {
88
- alignSelf: 'flex-end',
89
- },
90
- trigger: {
91
- cursor: 'pointer',
92
- fontSize: theme.typography.fontSize,
93
- color: color.tertiary(),
94
- padding: theme.spacing.unit,
95
- },
96
- actionsPaper: {
97
- padding: theme.spacing.unit,
98
- display: 'flex',
99
- flexDirection: 'column',
100
- gap: theme.spacing.unit,
101
- '& button': {
102
- textTransform: 'none',
103
- fontSize: theme.typography.fontSize,
104
- color: color.text(),
105
- justifyContent: 'flex-start',
106
- },
107
- },
108
- });
109
-
110
- export default withStyles(styles)(ActionsButton);
115
+ export default ActionsButton;