@pie-lib/charting 5.48.0-mui-update.1 → 5.50.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,32 @@
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
+ # [5.50.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/charting@5.49.0-mui-update.0...@pie-lib/charting@5.50.0-mui-update.0) (2025-12-29)
7
+
8
+ **Note:** Version bump only for package @pie-lib/charting
9
+
10
+
11
+
12
+
13
+
14
+ # [5.49.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/charting@5.48.0-mui-update.0...@pie-lib/charting@5.49.0-mui-update.0) (2025-12-29)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * charting issue after mui update ([19eb377](https://github.com/pie-framework/pie-lib/commit/19eb377ae63624402dce8118857c64e2da07c7ec))
20
+ * charting style ([1e72103](https://github.com/pie-framework/pie-lib/commit/1e7210354c92a4f85da10043f42261e275894b69))
21
+ * publish charting ([df5a64e](https://github.com/pie-framework/pie-lib/commit/df5a64e4287fe71b0da7838c14b19e72286c7e82))
22
+
23
+
24
+ ### Features
25
+
26
+ * migrate from [@vx](https://github.com/vx) library to [@visx](https://github.com/visx) ([135bf60](https://github.com/pie-framework/pie-lib/commit/135bf605161bfbd0070ac181892df20931691ce3))
27
+
28
+
29
+
30
+
31
+
6
32
  # [5.48.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/charting@5.47.0-mui-update.0...@pie-lib/charting@5.48.0-mui-update.0) (2025-12-17)
7
33
 
8
34
  **Note:** Version bump only for package @pie-lib/charting
package/lib/axes.js CHANGED
@@ -15,7 +15,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
15
15
  var _react = _interopRequireDefault(require("react"));
16
16
  var _propTypes = _interopRequireDefault(require("prop-types"));
17
17
  var _styles = require("@mui/material/styles");
18
- var _axis = require("@vx/axis");
18
+ var _axis = require("@visx/axis");
19
19
  var _Checkbox = _interopRequireDefault(require("@mui/material/Checkbox"));
20
20
  var _plot = require("@pie-lib/plot");
21
21
  var _renderUi = require("@pie-lib/render-ui");
package/lib/axes.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"axes.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_axis","_Checkbox","_plot","_renderUi","_configUi","_mathRendering","_correctnessIndicators","_utils","_markLabel","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","StyledErrorText","styled","_ref","theme","fontSize","typography","fill","palette","error","main","StyledCheckbox","Checkbox","color","concat","tertiary","StyledAxesGroup","_ref2","_theme$typography$bod","stroke","visualElementsColors","AXIS_LINE_COLOR","strokeWidth","AXIS_TICK_COLOR","fontFamily","body1","textAnchor","correctnessIconStyles","borderRadius","spacing","defaults","WHITE","width","height","padding","border","boxSizing","incorrectIconStyles","backgroundColor","incorrectWithIcon","correctIconStyles","correct","TickComponent","exports","_React$Component","props","_this","_classCallCheck2","open","callback","setState","dialog","index","newLabel","_this$props","categories","onChangeCategory","category","label","value","_this$props2","title","text","onConfirm","handleAlertDialog","interactive","onClose","_this$props3","editable","maxChar","chunks","indexToSplit","lastIndexOf","substring","trim","state","_inherits2","_createClass2","key","componentDidUpdate","prevProps","autoFocus","onAutoFocusUsed","render","_this2","_this$props4","xBand","bandWidth","barWidth","rotate","top","graphProps","defineChart","chartingOptions","x","y","formattedValue","changeInteractiveEnabled","changeEditableEnabled","hiddenLabelRef","showCorrectness","classes","correctnessIcon","incorrectIcon","correctIcon","_ref3","changeEditable","changeInteractive","parseInt","split","_ref4","correctness","barX","bandKey","longestCategory","reduce","a","b","lengthA","lengthB","distinctMessages","_toConsumableArray2","Set","values","join","createElement","style","pointerEvents","overflow","isHiddenLabel","inputRef","disabled","mark","input","onChange","changeCategory","limitCharacters","correctnessIndicator","TickCorrectnessIndicator","position","wordBreak","maxWidth","display","splitText","authoringLabel","map","word","dy","checked","target","AlertDialog","React","Component","PropTypes","bool","any","propTypes","array","func","number","object","string","RawChartAxes","_React$Component2","_this3","_len","args","Array","_key","componentDidMount","boundingClientRect","getBoundingClientRect","hiddenEl","current","containsLatex","querySelector","hasMathJax","mathHandled","renderMath","Math","floor","prevState","snapshot","_this4","_this$props5","leftAxis","_this$props5$categori","_ref5","_ref5$scale","scale","_ref5$range","range","_ref5$domain","domain","_ref5$size","size","_this$state","bottomScale","rangeRound","bandwidth","max","rowTickValues","getTickValues","step","labelStep","rotateBecauseOfHeight","getRotateAngle","rotateBecauseOfWidth","getTickLabelProps","dx","toLocaleString","getTickComponent","properties","ref","AxisLeft","tickLength","tickFormat","tickValues","tickLabelProps","AxisBottom","labelProps","min","textLabelProps","count","tickComponent","types","GraphPropsType","isRequired","ChartAxes","_ref6","_default"],"sources":["../src/axes.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { AxisLeft, AxisBottom } from '@vx/axis';\nimport Checkbox from '@mui/material/Checkbox';\n\nimport { types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport { TickCorrectnessIndicator } from './common/correctness-indicators';\nimport { bandKey, getTickValues, getRotateAngle } from './utils';\nimport MarkLabel from './mark-label';\n\nconst StyledErrorText = styled('text')(({ theme }) => ({\n fontSize: theme.typography.fontSize - 2,\n fill: theme.palette.error.main,\n}));\n\nconst StyledCheckbox = styled(Checkbox)(() => ({\n color: `${color.tertiary()} !important`,\n}));\n\nconst StyledAxesGroup = styled('g')(({ theme }) => ({\n '& .vx-axis-line': {\n stroke: color.visualElementsColors.AXIS_LINE_COLOR,\n strokeWidth: 2,\n },\n '& .vx-axis-tick': {\n fill: color.visualElementsColors.AXIS_TICK_COLOR,\n '& line': {\n stroke: color.visualElementsColors.AXIS_TICK_COLOR,\n strokeWidth: 2,\n },\n fontFamily: theme.typography.body1?.fontFamily,\n fontSize: theme.typography.fontSize,\n textAnchor: 'middle',\n },\n}));\n\nconst correctnessIconStyles = (theme) => ({\n borderRadius: theme.spacing(2),\n color: color.defaults.WHITE,\n fontSize: '16px',\n width: '16px',\n height: '16px',\n padding: '2px',\n border: `1px solid ${color.defaults.WHITE}`,\n boxSizing: 'unset', // to override the default border-box in IBX\n});\n\nconst incorrectIconStyles = {\n backgroundColor: color.incorrectWithIcon(),\n};\n\nconst correctIconStyles = {\n backgroundColor: color.correct(),\n};\n\nexport class TickComponent extends React.Component {\n static propTypes = {\n defineChart: PropTypes.bool,\n error: PropTypes.any,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dialog: {\n open: false,\n },\n };\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.autoFocus && !prevProps.autoFocus) {\n this.props.onAutoFocusUsed();\n }\n }\n\n handleAlertDialog = (open, callback) =>\n this.setState(\n {\n dialog: { open },\n },\n callback,\n );\n\n changeCategory = (index, newLabel) => {\n const { categories, onChangeCategory } = this.props;\n const category = categories[index];\n\n onChangeCategory(index, { ...category, label: newLabel });\n };\n\n changeInteractive = (index, value) => {\n const { categories, onChangeCategory } = this.props;\n const category = categories[index];\n\n if (!value) {\n this.setState({\n dialog: {\n open: true,\n title: 'Warning',\n text: 'This will remove the correct answer value that has been defined for this category.',\n onConfirm: () =>\n this.handleAlertDialog(false, onChangeCategory(index, { ...category, interactive: !category.interactive })),\n onClose: () => this.handleAlertDialog(false),\n },\n });\n } else {\n onChangeCategory(index, { ...category, interactive: !category.interactive });\n }\n };\n\n changeEditable = (index, value) => {\n const { categories, onChangeCategory } = this.props;\n const category = categories[index];\n\n if (!value) {\n this.setState({\n dialog: {\n open: true,\n title: 'Warning',\n text: 'This will remove the correct answer category name that has been defined for this category.',\n onConfirm: () =>\n this.handleAlertDialog(\n false,\n onChangeCategory(index, { ...category, editable: !category.editable || false }),\n ),\n onClose: () => this.handleAlertDialog(false),\n },\n });\n } else {\n onChangeCategory(index, { ...category, editable: !category.editable || false });\n }\n };\n\n splitText = (text, maxChar) => {\n let chunks = [];\n while ((text || '').length > 0) {\n let indexToSplit;\n if (text.length > maxChar) {\n indexToSplit = text.lastIndexOf(' ', maxChar);\n if (indexToSplit === -1) {\n indexToSplit = maxChar;\n }\n } else {\n indexToSplit = text.length;\n }\n chunks.push(text.substring(0, indexToSplit));\n text = text.substring(indexToSplit).trim();\n }\n return chunks;\n };\n\n render() {\n const {\n categories,\n xBand,\n bandWidth,\n barWidth,\n rotate,\n top,\n graphProps,\n defineChart,\n chartingOptions,\n x,\n y,\n formattedValue,\n changeInteractiveEnabled,\n changeEditableEnabled,\n error,\n autoFocus,\n hiddenLabelRef,\n showCorrectness,\n } = this.props;\n\n if (!formattedValue) {\n return null;\n }\n\n // Create classes object for TickCorrectnessIndicator compatibility\n const classes = {\n correctnessIcon: correctnessIconStyles,\n incorrectIcon: incorrectIconStyles,\n correctIcon: correctIconStyles,\n };\n\n const { dialog } = this.state;\n const { changeEditable, changeInteractive } = chartingOptions || {};\n const index = parseInt(formattedValue.split('-')[0], 10);\n const category = categories[index];\n const { editable, interactive, label, correctness } = category || {};\n const barX = xBand(bandKey({ label }, index));\n const longestCategory = (categories || []).reduce((a, b) => {\n const lengthA = a && a.label ? a.label.length : 0;\n const lengthB = b && b.label ? b.label.length : 0;\n\n return lengthA > lengthB ? a : b;\n });\n const distinctMessages = error ? [...new Set(Object.values(error))].join(' ') : '';\n\n return (\n <g>\n <foreignObject\n x={bandWidth ? barX : x - barWidth / 2}\n y={18}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'none', overflow: 'visible' }}\n >\n {index === 0 && (\n <MarkLabel\n isHiddenLabel={true}\n inputRef={hiddenLabelRef}\n disabled={true}\n mark={longestCategory}\n graphProps={graphProps}\n barWidth={barWidth}\n />\n )}\n\n <MarkLabel\n autoFocus={defineChart && autoFocus}\n inputRef={(r) => (this.input = r)}\n disabled={!defineChart && !editable}\n mark={category}\n graphProps={graphProps}\n onChange={(newLabel) => this.changeCategory(index, newLabel)}\n barWidth={barWidth}\n rotate={rotate}\n correctness={correctness}\n error={error && error[index]}\n limitCharacters\n correctnessIndicator={\n showCorrectness &&\n correctness && (\n <TickCorrectnessIndicator correctness={correctness} interactive={interactive} classes={classes} />\n )\n }\n />\n </foreignObject>\n\n {error && index === 0 && (\n <StyledErrorText y={y + 23} height={6} textAnchor=\"start\">\n {distinctMessages}\n </StyledErrorText>\n )}\n\n {defineChart && index === 0 && (\n <svg\n x={-55}\n style={{\n overflow: 'visible',\n }}\n >\n {changeInteractiveEnabled && (\n <text\n y={y + 90 + top}\n width={barWidth}\n height={4}\n style={{\n position: 'absolute',\n pointerEvents: 'none',\n wordBreak: 'break-word',\n maxWidth: barWidth,\n display: 'inline-block',\n }}\n >\n {this.splitText(changeInteractive?.authoringLabel, 20).map((word, index) => (\n <tspan key={index} x=\"0\" dy={`${index > 0 ? '1.2em' : '.6em'}`}>\n {word}\n </tspan>\n ))}\n </text>\n )}\n\n {changeEditableEnabled && (\n <text\n y={y + 145 + top}\n width={barWidth}\n height={4}\n style={{\n position: 'absolute',\n pointerEvents: 'none',\n wordBreak: 'break-word',\n maxWidth: barWidth,\n display: 'inline-block',\n }}\n >\n {this.splitText(changeEditable?.authoringLabel, 20).map((word, index) => (\n <tspan key={index} x=\"0\" dy={`${index > 0 ? '1.2em' : '.6em'}`}>\n {word}\n </tspan>\n ))}\n </text>\n )}\n </svg>\n )}\n\n {defineChart && changeInteractiveEnabled && (\n <foreignObject\n x={x - 24}\n y={y + 80 + top}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'visible', overflow: 'visible' }}\n >\n <StyledCheckbox\n style={{ position: 'fixed' }}\n checked={interactive}\n onChange={(e) => this.changeInteractive(index, e.target.checked)}\n />\n </foreignObject>\n )}\n\n {defineChart && changeEditableEnabled && (\n <foreignObject\n x={x - 24}\n y={y + 130 + top}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'visible', overflow: 'visible' }}\n >\n <StyledCheckbox\n style={{ position: 'fixed' }}\n checked={editable}\n onChange={(e) => this.changeEditable(index, e.target.checked)}\n />\n </foreignObject>\n )}\n\n <foreignObject\n x={x - 24}\n y={y + 100 + top}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'visible', overflow: 'visible' }}\n >\n <AlertDialog\n open={dialog.open}\n title={dialog.title}\n text={dialog.text}\n onClose={dialog.onClose}\n onConfirm={dialog.onConfirm}\n />\n </foreignObject>\n </g>\n );\n }\n}\n\nTickComponent.propTypes = {\n categories: PropTypes.array,\n xBand: PropTypes.func,\n bandWidth: PropTypes.number,\n barWidth: PropTypes.number,\n rotate: PropTypes.number,\n top: PropTypes.number,\n x: PropTypes.number,\n y: PropTypes.number,\n graphProps: PropTypes.object,\n formattedValue: PropTypes.string,\n onChangeCategory: PropTypes.func,\n onChange: PropTypes.func,\n error: PropTypes.object,\n defineChart: PropTypes.bool,\n chartingOptions: PropTypes.object,\n changeInteractiveEnabled: PropTypes.bool,\n changeEditableEnabled: PropTypes.bool,\n autoFocus: PropTypes.bool,\n onAutoFocusUsed: PropTypes.func,\n showCorrectness: PropTypes.bool,\n};\n\nexport class RawChartAxes extends React.Component {\n static propTypes = {\n bottomScale: PropTypes.func,\n categories: PropTypes.array,\n defineChart: PropTypes.bool,\n error: PropTypes.any,\n graphProps: types.GraphPropsType.isRequired,\n xBand: PropTypes.func,\n leftAxis: PropTypes.bool,\n onChange: PropTypes.func,\n onChangeCategory: PropTypes.func,\n top: PropTypes.number,\n theme: PropTypes.object,\n chartingOptions: PropTypes.object,\n changeInteractiveEnabled: PropTypes.bool,\n changeEditableEnabled: PropTypes.bool,\n autoFocus: PropTypes.bool,\n onAutoFocusUsed: PropTypes.func,\n showCorrectness: PropTypes.bool,\n };\n\n state = { height: 0, width: 0 };\n\n componentDidMount() {\n if (this.hiddenLabelRef) {\n const boundingClientRect = this.hiddenLabelRef.getBoundingClientRect();\n const hiddenEl = this.hiddenLabelRef.current;\n\n // same logic used in dropdown.jsx for hidden labels width calculation\n if (hiddenEl) {\n const containsLatex = hiddenEl.querySelector('[data-latex], [data-raw]');\n const hasMathJax = hiddenEl.querySelector('mjx-container');\n const mathHandled = hiddenEl.querySelector('[data-math-handled=\"true\"]');\n\n if (containsLatex && (!mathHandled || !hasMathJax)) {\n renderMath(this.hiddenLabelRef);\n }\n\n this.setState({\n height: Math.floor(boundingClientRect.height),\n width: Math.floor(boundingClientRect.width),\n });\n }\n }\n }\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n if (this.hiddenLabelRef) {\n const width = Math.floor(this.hiddenLabelRef.getBoundingClientRect().width);\n\n if (width !== this.state.width) {\n this.setState({ width });\n }\n }\n }\n\n render() {\n const {\n graphProps,\n xBand,\n leftAxis,\n onChange,\n onChangeCategory,\n categories = [],\n top,\n defineChart,\n chartingOptions,\n changeInteractiveEnabled,\n changeEditableEnabled,\n theme,\n autoFocus,\n onAutoFocusUsed,\n error,\n showCorrectness,\n } = this.props;\n\n const { scale = {}, range = {}, domain = {}, size = {} } = graphProps || {};\n const { height, width } = this.state;\n\n const bottomScale = xBand && typeof xBand.rangeRound === 'function' && xBand.rangeRound([0, size.width]);\n\n const bandWidth = xBand && typeof xBand.bandwidth === 'function' && xBand.bandwidth();\n // for chartType \"line\", bandWidth will be 0, so we have to calculate it\n const barWidth = bandWidth || (scale.x && scale.x(domain.max) / categories.length);\n\n const rowTickValues = getTickValues({ ...range, step: range.labelStep });\n const fontSize = theme && theme.typography ? theme.typography.fontSize : 14;\n // this mostly applies for labels that are not editable\n const rotateBecauseOfHeight = getRotateAngle(fontSize, height);\n // this applies for labels that are editable\n const rotateBecauseOfWidth = width > barWidth ? 25 : 0;\n\n const getTickLabelProps = (value) => ({\n dy: 4,\n dx: -10 - (value.toLocaleString().length || 1) * 5,\n });\n\n const getTickComponent = (props) => {\n const properties = {\n hiddenLabelRef: (ref) => {\n this.hiddenLabelRef = ref;\n },\n categories,\n xBand,\n bandWidth,\n barWidth,\n rotate: rotateBecauseOfHeight || rotateBecauseOfWidth,\n top,\n defineChart,\n chartingOptions,\n autoFocus,\n onAutoFocusUsed,\n error,\n onChangeCategory,\n changeInteractiveEnabled,\n changeEditableEnabled,\n onChange,\n graphProps,\n x: props.x,\n y: props.y,\n formattedValue: props.formattedValue,\n showCorrectness,\n };\n\n return <TickComponent {...properties} />;\n };\n\n return (\n <StyledAxesGroup>\n {leftAxis && (\n <AxisLeft\n scale={scale.y}\n tickLength={10}\n tickFormat={(value) => value}\n tickValues={rowTickValues}\n tickLabelProps={getTickLabelProps}\n />\n )}\n <AxisBottom\n scale={bottomScale}\n labelProps={{ y: 60 + top }}\n top={scale.y && scale.y(range.min)}\n textLabelProps={() => ({ textAnchor: 'middle' })}\n tickFormat={(count) => count}\n tickComponent={getTickComponent}\n autoFocus={autoFocus}\n onAutoFocusUsed={onAutoFocusUsed}\n />\n </StyledAxesGroup>\n );\n }\n}\n\nconst ChartAxes = styled(RawChartAxes)(({ theme }) => ({}));\n\nexport default ChartAxes;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"axes.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_axis","_Checkbox","_plot","_renderUi","_configUi","_mathRendering","_correctnessIndicators","_utils","_markLabel","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","StyledErrorText","styled","_ref","theme","fontSize","typography","fill","palette","error","main","StyledCheckbox","Checkbox","color","concat","tertiary","StyledAxesGroup","_ref2","_theme$typography$bod","stroke","visualElementsColors","AXIS_LINE_COLOR","strokeWidth","AXIS_TICK_COLOR","fontFamily","body1","textAnchor","correctnessIconStyles","borderRadius","spacing","defaults","WHITE","width","height","padding","border","boxSizing","incorrectIconStyles","backgroundColor","incorrectWithIcon","correctIconStyles","correct","TickComponent","exports","_React$Component","props","_this","_classCallCheck2","open","callback","setState","dialog","index","newLabel","_this$props","categories","onChangeCategory","category","label","value","_this$props2","title","text","onConfirm","handleAlertDialog","interactive","onClose","_this$props3","editable","maxChar","chunks","indexToSplit","lastIndexOf","substring","trim","state","_inherits2","_createClass2","key","componentDidUpdate","prevProps","autoFocus","onAutoFocusUsed","render","_this2","_this$props4","xBand","bandWidth","barWidth","rotate","top","graphProps","defineChart","chartingOptions","x","y","formattedValue","changeInteractiveEnabled","changeEditableEnabled","hiddenLabelRef","showCorrectness","classes","correctnessIcon","incorrectIcon","correctIcon","_ref3","changeEditable","changeInteractive","parseInt","split","_ref4","correctness","barX","bandKey","longestCategory","reduce","a","b","lengthA","lengthB","distinctMessages","_toConsumableArray2","Set","values","join","createElement","style","pointerEvents","overflow","isHiddenLabel","inputRef","disabled","mark","input","onChange","changeCategory","limitCharacters","correctnessIndicator","TickCorrectnessIndicator","position","wordBreak","maxWidth","display","splitText","authoringLabel","map","word","dy","checked","target","AlertDialog","React","Component","PropTypes","bool","any","propTypes","array","func","number","object","string","RawChartAxes","_React$Component2","_this3","_len","args","Array","_key","componentDidMount","boundingClientRect","getBoundingClientRect","hiddenEl","current","containsLatex","querySelector","hasMathJax","mathHandled","renderMath","Math","floor","prevState","snapshot","_this4","_this$props5","leftAxis","_this$props5$categori","_ref5","_ref5$scale","scale","_ref5$range","range","_ref5$domain","domain","_ref5$size","size","_this$state","bottomScale","rangeRound","bandwidth","max","rowTickValues","getTickValues","step","labelStep","rotateBecauseOfHeight","getRotateAngle","rotateBecauseOfWidth","getTickLabelProps","dx","toLocaleString","getTickComponent","properties","ref","AxisLeft","tickLength","tickFormat","tickValues","tickLabelProps","AxisBottom","labelProps","min","textLabelProps","count","tickComponent","types","GraphPropsType","isRequired","ChartAxes","_ref6","_default"],"sources":["../src/axes.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { AxisLeft, AxisBottom } from '@visx/axis';\nimport Checkbox from '@mui/material/Checkbox';\n\nimport { types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport { TickCorrectnessIndicator } from './common/correctness-indicators';\nimport { bandKey, getTickValues, getRotateAngle } from './utils';\nimport MarkLabel from './mark-label';\n\nconst StyledErrorText = styled('text')(({ theme }) => ({\n fontSize: theme.typography.fontSize - 2,\n fill: theme.palette.error.main,\n}));\n\nconst StyledCheckbox = styled(Checkbox)(() => ({\n color: `${color.tertiary()} !important`,\n}));\n\nconst StyledAxesGroup = styled('g')(({ theme }) => ({\n '& .vx-axis-line': {\n stroke: color.visualElementsColors.AXIS_LINE_COLOR,\n strokeWidth: 2,\n },\n '& .vx-axis-tick': {\n fill: color.visualElementsColors.AXIS_TICK_COLOR,\n '& line': {\n stroke: color.visualElementsColors.AXIS_TICK_COLOR,\n strokeWidth: 2,\n },\n fontFamily: theme.typography.body1?.fontFamily,\n fontSize: theme.typography.fontSize,\n textAnchor: 'middle',\n },\n}));\n\nconst correctnessIconStyles = (theme) => ({\n borderRadius: theme.spacing(2),\n color: color.defaults.WHITE,\n fontSize: '16px',\n width: '16px',\n height: '16px',\n padding: '2px',\n border: `1px solid ${color.defaults.WHITE}`,\n boxSizing: 'unset', // to override the default border-box in IBX\n});\n\nconst incorrectIconStyles = {\n backgroundColor: color.incorrectWithIcon(),\n};\n\nconst correctIconStyles = {\n backgroundColor: color.correct(),\n};\n\nexport class TickComponent extends React.Component {\n static propTypes = {\n defineChart: PropTypes.bool,\n error: PropTypes.any,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dialog: {\n open: false,\n },\n };\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.autoFocus && !prevProps.autoFocus) {\n this.props.onAutoFocusUsed();\n }\n }\n\n handleAlertDialog = (open, callback) =>\n this.setState(\n {\n dialog: { open },\n },\n callback,\n );\n\n changeCategory = (index, newLabel) => {\n const { categories, onChangeCategory } = this.props;\n const category = categories[index];\n\n onChangeCategory(index, { ...category, label: newLabel });\n };\n\n changeInteractive = (index, value) => {\n const { categories, onChangeCategory } = this.props;\n const category = categories[index];\n\n if (!value) {\n this.setState({\n dialog: {\n open: true,\n title: 'Warning',\n text: 'This will remove the correct answer value that has been defined for this category.',\n onConfirm: () =>\n this.handleAlertDialog(false, onChangeCategory(index, { ...category, interactive: !category.interactive })),\n onClose: () => this.handleAlertDialog(false),\n },\n });\n } else {\n onChangeCategory(index, { ...category, interactive: !category.interactive });\n }\n };\n\n changeEditable = (index, value) => {\n const { categories, onChangeCategory } = this.props;\n const category = categories[index];\n\n if (!value) {\n this.setState({\n dialog: {\n open: true,\n title: 'Warning',\n text: 'This will remove the correct answer category name that has been defined for this category.',\n onConfirm: () =>\n this.handleAlertDialog(\n false,\n onChangeCategory(index, { ...category, editable: !category.editable || false }),\n ),\n onClose: () => this.handleAlertDialog(false),\n },\n });\n } else {\n onChangeCategory(index, { ...category, editable: !category.editable || false });\n }\n };\n\n splitText = (text, maxChar) => {\n let chunks = [];\n while ((text || '').length > 0) {\n let indexToSplit;\n if (text.length > maxChar) {\n indexToSplit = text.lastIndexOf(' ', maxChar);\n if (indexToSplit === -1) {\n indexToSplit = maxChar;\n }\n } else {\n indexToSplit = text.length;\n }\n chunks.push(text.substring(0, indexToSplit));\n text = text.substring(indexToSplit).trim();\n }\n return chunks;\n };\n\n render() {\n const {\n categories,\n xBand,\n bandWidth,\n barWidth,\n rotate,\n top,\n graphProps,\n defineChart,\n chartingOptions,\n x,\n y,\n formattedValue,\n changeInteractiveEnabled,\n changeEditableEnabled,\n error,\n autoFocus,\n hiddenLabelRef,\n showCorrectness,\n } = this.props;\n\n if (!formattedValue) {\n return null;\n }\n\n // Create classes object for TickCorrectnessIndicator compatibility\n const classes = {\n correctnessIcon: correctnessIconStyles,\n incorrectIcon: incorrectIconStyles,\n correctIcon: correctIconStyles,\n };\n\n const { dialog } = this.state;\n const { changeEditable, changeInteractive } = chartingOptions || {};\n const index = parseInt(formattedValue.split('-')[0], 10);\n const category = categories[index];\n const { editable, interactive, label, correctness } = category || {};\n const barX = xBand(bandKey({ label }, index));\n const longestCategory = (categories || []).reduce((a, b) => {\n const lengthA = a && a.label ? a.label.length : 0;\n const lengthB = b && b.label ? b.label.length : 0;\n\n return lengthA > lengthB ? a : b;\n });\n const distinctMessages = error ? [...new Set(Object.values(error))].join(' ') : '';\n\n return (\n <g>\n <foreignObject\n x={bandWidth ? barX : x - barWidth / 2}\n y={18}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'none', overflow: 'visible' }}\n >\n {index === 0 && (\n <MarkLabel\n isHiddenLabel={true}\n inputRef={hiddenLabelRef}\n disabled={true}\n mark={longestCategory}\n graphProps={graphProps}\n barWidth={barWidth}\n />\n )}\n\n <MarkLabel\n autoFocus={defineChart && autoFocus}\n inputRef={(r) => (this.input = r)}\n disabled={!defineChart && !editable}\n mark={category}\n graphProps={graphProps}\n onChange={(newLabel) => this.changeCategory(index, newLabel)}\n barWidth={barWidth}\n rotate={rotate}\n correctness={correctness}\n error={error && error[index]}\n limitCharacters\n correctnessIndicator={\n showCorrectness &&\n correctness && (\n <TickCorrectnessIndicator correctness={correctness} interactive={interactive} classes={classes} />\n )\n }\n />\n </foreignObject>\n\n {error && index === 0 && (\n <StyledErrorText y={y + 23} height={6} textAnchor=\"start\">\n {distinctMessages}\n </StyledErrorText>\n )}\n\n {defineChart && index === 0 && (\n <svg\n x={-55}\n style={{\n overflow: 'visible',\n }}\n >\n {changeInteractiveEnabled && (\n <text\n y={y + 90 + top}\n width={barWidth}\n height={4}\n style={{\n position: 'absolute',\n pointerEvents: 'none',\n wordBreak: 'break-word',\n maxWidth: barWidth,\n display: 'inline-block',\n }}\n >\n {this.splitText(changeInteractive?.authoringLabel, 20).map((word, index) => (\n <tspan key={index} x=\"0\" dy={`${index > 0 ? '1.2em' : '.6em'}`}>\n {word}\n </tspan>\n ))}\n </text>\n )}\n\n {changeEditableEnabled && (\n <text\n y={y + 145 + top}\n width={barWidth}\n height={4}\n style={{\n position: 'absolute',\n pointerEvents: 'none',\n wordBreak: 'break-word',\n maxWidth: barWidth,\n display: 'inline-block',\n }}\n >\n {this.splitText(changeEditable?.authoringLabel, 20).map((word, index) => (\n <tspan key={index} x=\"0\" dy={`${index > 0 ? '1.2em' : '.6em'}`}>\n {word}\n </tspan>\n ))}\n </text>\n )}\n </svg>\n )}\n\n {defineChart && changeInteractiveEnabled && (\n <foreignObject\n x={x - 24}\n y={y + 80 + top}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'visible', overflow: 'visible' }}\n >\n <StyledCheckbox\n style={{ position: 'fixed' }}\n checked={interactive}\n onChange={(e) => this.changeInteractive(index, e.target.checked)}\n />\n </foreignObject>\n )}\n\n {defineChart && changeEditableEnabled && (\n <foreignObject\n x={x - 24}\n y={y + 130 + top}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'visible', overflow: 'visible' }}\n >\n <StyledCheckbox\n style={{ position: 'fixed' }}\n checked={editable}\n onChange={(e) => this.changeEditable(index, e.target.checked)}\n />\n </foreignObject>\n )}\n\n <foreignObject\n x={x - 24}\n y={y + 100 + top}\n width={barWidth}\n height={4}\n style={{ pointerEvents: 'visible', overflow: 'visible' }}\n >\n <AlertDialog\n open={dialog.open}\n title={dialog.title}\n text={dialog.text}\n onClose={dialog.onClose}\n onConfirm={dialog.onConfirm}\n />\n </foreignObject>\n </g>\n );\n }\n}\n\nTickComponent.propTypes = {\n categories: PropTypes.array,\n xBand: PropTypes.func,\n bandWidth: PropTypes.number,\n barWidth: PropTypes.number,\n rotate: PropTypes.number,\n top: PropTypes.number,\n x: PropTypes.number,\n y: PropTypes.number,\n graphProps: PropTypes.object,\n formattedValue: PropTypes.string,\n onChangeCategory: PropTypes.func,\n onChange: PropTypes.func,\n error: PropTypes.object,\n defineChart: PropTypes.bool,\n chartingOptions: PropTypes.object,\n changeInteractiveEnabled: PropTypes.bool,\n changeEditableEnabled: PropTypes.bool,\n autoFocus: PropTypes.bool,\n onAutoFocusUsed: PropTypes.func,\n showCorrectness: PropTypes.bool,\n};\n\nexport class RawChartAxes extends React.Component {\n static propTypes = {\n bottomScale: PropTypes.func,\n categories: PropTypes.array,\n defineChart: PropTypes.bool,\n error: PropTypes.any,\n graphProps: types.GraphPropsType.isRequired,\n xBand: PropTypes.func,\n leftAxis: PropTypes.bool,\n onChange: PropTypes.func,\n onChangeCategory: PropTypes.func,\n top: PropTypes.number,\n theme: PropTypes.object,\n chartingOptions: PropTypes.object,\n changeInteractiveEnabled: PropTypes.bool,\n changeEditableEnabled: PropTypes.bool,\n autoFocus: PropTypes.bool,\n onAutoFocusUsed: PropTypes.func,\n showCorrectness: PropTypes.bool,\n };\n\n state = { height: 0, width: 0 };\n\n componentDidMount() {\n if (this.hiddenLabelRef) {\n const boundingClientRect = this.hiddenLabelRef.getBoundingClientRect();\n const hiddenEl = this.hiddenLabelRef.current;\n\n // same logic used in dropdown.jsx for hidden labels width calculation\n if (hiddenEl) {\n const containsLatex = hiddenEl.querySelector('[data-latex], [data-raw]');\n const hasMathJax = hiddenEl.querySelector('mjx-container');\n const mathHandled = hiddenEl.querySelector('[data-math-handled=\"true\"]');\n\n if (containsLatex && (!mathHandled || !hasMathJax)) {\n renderMath(this.hiddenLabelRef);\n }\n\n this.setState({\n height: Math.floor(boundingClientRect.height),\n width: Math.floor(boundingClientRect.width),\n });\n }\n }\n }\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n if (this.hiddenLabelRef) {\n const width = Math.floor(this.hiddenLabelRef.getBoundingClientRect().width);\n\n if (width !== this.state.width) {\n this.setState({ width });\n }\n }\n }\n\n render() {\n const {\n graphProps,\n xBand,\n leftAxis,\n onChange,\n onChangeCategory,\n categories = [],\n top,\n defineChart,\n chartingOptions,\n changeInteractiveEnabled,\n changeEditableEnabled,\n theme,\n autoFocus,\n onAutoFocusUsed,\n error,\n showCorrectness,\n } = this.props;\n\n const { scale = {}, range = {}, domain = {}, size = {} } = graphProps || {};\n const { height, width } = this.state;\n\n const bottomScale = xBand && typeof xBand.rangeRound === 'function' && xBand.rangeRound([0, size.width]);\n\n const bandWidth = xBand && typeof xBand.bandwidth === 'function' && xBand.bandwidth();\n // for chartType \"line\", bandWidth will be 0, so we have to calculate it\n const barWidth = bandWidth || (scale.x && scale.x(domain.max) / categories.length);\n\n const rowTickValues = getTickValues({ ...range, step: range.labelStep });\n const fontSize = theme && theme.typography ? theme.typography.fontSize : 14;\n // this mostly applies for labels that are not editable\n const rotateBecauseOfHeight = getRotateAngle(fontSize, height);\n // this applies for labels that are editable\n const rotateBecauseOfWidth = width > barWidth ? 25 : 0;\n\n const getTickLabelProps = (value) => ({\n dy: 4,\n dx: -10 - (value.toLocaleString().length || 1) * 5,\n });\n\n const getTickComponent = (props) => {\n const properties = {\n hiddenLabelRef: (ref) => {\n this.hiddenLabelRef = ref;\n },\n categories,\n xBand,\n bandWidth,\n barWidth,\n rotate: rotateBecauseOfHeight || rotateBecauseOfWidth,\n top,\n defineChart,\n chartingOptions,\n autoFocus,\n onAutoFocusUsed,\n error,\n onChangeCategory,\n changeInteractiveEnabled,\n changeEditableEnabled,\n onChange,\n graphProps,\n x: props.x,\n y: props.y,\n formattedValue: props.formattedValue,\n showCorrectness,\n };\n\n return <TickComponent {...properties} />;\n };\n\n return (\n <StyledAxesGroup>\n {leftAxis && (\n <AxisLeft\n scale={scale.y}\n tickLength={10}\n tickFormat={(value) => value}\n tickValues={rowTickValues}\n tickLabelProps={getTickLabelProps}\n />\n )}\n <AxisBottom\n scale={bottomScale}\n labelProps={{ y: 60 + top }}\n top={scale.y && scale.y(range.min)}\n textLabelProps={() => ({ textAnchor: 'middle' })}\n tickFormat={(count) => count}\n tickComponent={getTickComponent}\n autoFocus={autoFocus}\n onAutoFocusUsed={onAutoFocusUsed}\n />\n </StyledAxesGroup>\n );\n }\n}\n\nconst ChartAxes = styled(RawChartAxes)(({ theme }) => ({}));\n\nexport default ChartAxes;\n"],"mappings":"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","ignoreList":[]}
@@ -14,8 +14,8 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
15
  var _react = _interopRequireDefault(require("react"));
16
16
  var _propTypes = _interopRequireDefault(require("prop-types"));
17
- var _group = require("@vx/group");
18
- var _shape = require("@vx/shape");
17
+ var _group = require("@visx/group");
18
+ var _shape = require("@visx/shape");
19
19
  var _styles = require("@mui/material/styles");
20
20
  var _debug = _interopRequireDefault(require("debug"));
21
21
  var _renderUi = require("@pie-lib/render-ui");
@@ -38,7 +38,7 @@ var calculateFillColor = function calculateFillColor(isHovered, barColor, index,
38
38
  }
39
39
  return barColor || null;
40
40
  };
41
- var StyledVxBar = (0, _styles.styled)(_shape.Bar)(function () {
41
+ var StyledVisxBar = (0, _styles.styled)(_shape.Bar)(function () {
42
42
  return {
43
43
  fill: _renderUi.color.defaults.TERTIARY
44
44
  };
@@ -49,10 +49,8 @@ var RawBar = exports.RawBar = /*#__PURE__*/function (_React$Component) {
49
49
  (0, _classCallCheck2["default"])(this, RawBar);
50
50
  _this = _callSuper(this, RawBar, [props]);
51
51
  (0, _defineProperty2["default"])(_this, "handleMouseMove", function (e) {
52
- // Update mouse position
53
52
  _this.mouseX = e.clientX;
54
53
  _this.mouseY = e.clientY;
55
- // Check if the mouse is inside the <g> element
56
54
  var isMouseInside = _this.isMouseInsideSvgElement();
57
55
  _this.setState({
58
56
  isHovered: isMouseInside
@@ -60,16 +58,15 @@ var RawBar = exports.RawBar = /*#__PURE__*/function (_React$Component) {
60
58
  });
61
59
  (0, _defineProperty2["default"])(_this, "isMouseInsideSvgElement", function () {
62
60
  var gBoundingBox = _this.gRef.getBoundingClientRect();
63
- // Check if the mouse position is within the bounding box
64
61
  return _this.mouseX >= gBoundingBox.left && _this.mouseX <= gBoundingBox.right && _this.mouseY >= gBoundingBox.top && _this.mouseY <= gBoundingBox.bottom;
65
62
  });
66
63
  (0, _defineProperty2["default"])(_this, "handleMouseEnter", function () {
67
- _this.setState({
64
+ return _this.setState({
68
65
  isHovered: true
69
66
  });
70
67
  });
71
68
  (0, _defineProperty2["default"])(_this, "handleMouseLeave", function () {
72
- _this.setState({
69
+ return _this.setState({
73
70
  isHovered: false
74
71
  });
75
72
  });
@@ -148,7 +145,6 @@ var RawBar = exports.RawBar = /*#__PURE__*/function (_React$Component) {
148
145
  var correctValue = correctData ? correctData.find(function (d) {
149
146
  return d.label === label;
150
147
  }) : null;
151
- log('label:', label, 'barX:', barX, 'v: ', v, 'barHeight:', barHeight, 'barWidth: ', barWidth);
152
148
  var Component = interactive ? _dragHandle["default"] : _dragHandle.DragHandle;
153
149
  var isHistogram = !!barColor;
154
150
  return /*#__PURE__*/_react["default"].createElement("g", {
@@ -159,7 +155,7 @@ var RawBar = exports.RawBar = /*#__PURE__*/function (_React$Component) {
159
155
  onMouseLeave: this.handleMouseLeave,
160
156
  onTouchStart: this.handleMouseEnter,
161
157
  onTouchEnd: this.handleMouseLeave
162
- }, /*#__PURE__*/_react["default"].createElement(StyledVxBar, {
158
+ }, /*#__PURE__*/_react["default"].createElement(StyledVisxBar, {
163
159
  x: barX,
164
160
  y: scale.y(yy),
165
161
  width: barWidth,
@@ -176,12 +172,10 @@ var RawBar = exports.RawBar = /*#__PURE__*/function (_React$Component) {
176
172
  var yDiff = scale.y(correctVal);
177
173
  var indicatorBarColor = correctPxHeight > actualPxHeight ? _renderUi.color.borderGray() : _renderUi.color.defaults.WHITE;
178
174
  var yToRender = correctPxHeight > actualPxHeight ? yDiff : yDiff - diffPx;
179
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(StyledVxBar, {
180
- x: barX + 2 // add 2px for the stroke (the dashed border)
181
- ,
175
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(StyledVisxBar, {
176
+ x: barX + 2,
182
177
  y: yToRender,
183
- width: barWidth - 4 // substract 4px for the total stroke
184
- ,
178
+ width: barWidth - 4,
185
179
  height: diffPx,
186
180
  style: {
187
181
  stroke: indicatorBarColor,
@@ -1 +1 @@
1
- {"version":3,"file":"bars.js","names":["_react","_interopRequireDefault","require","_propTypes","_group","_shape","_styles","_debug","_renderUi","_plot","_utils","_dragHandle","_interopRequireWildcard","_correctCheckIcon","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","log","debug","histogramColors","hoverHistogramColors","calculateFillColor","isHovered","barColor","index","allowRolloverEvent","length","color","visualElementsColors","ROLLOVER_FILL_BAR_COLOR","StyledVxBar","styled","VxBar","fill","defaults","TERTIARY","RawBar","exports","_React$Component","props","_this","_classCallCheck2","_defineProperty2","mouseX","clientX","mouseY","clientY","isMouseInside","isMouseInsideSvgElement","setState","gBoundingBox","gRef","getBoundingClientRect","left","right","top","bottom","dragValue","_this$props","label","onChangeCategory","state","undefined","value","setDragValue","existing","next","_inherits2","_createClass2","key","componentDidMount","window","addEventListener","handleMouseMove","componentWillUnmount","removeEventListener","render","_this2","_this$props2","graphProps","xBand","interactive","correctness","defineChart","correctData","scale","range","_this$state","fillColor","v","Number","isFinite","barWidth","bandwidth","barHeight","y","max","barX","bandKey","rawY","yy","correctValue","find","d","Component","DraggableHandle","DragHandle","isHistogram","createElement","ref","onMouseEnter","handleMouseEnter","onMouseLeave","handleMouseLeave","onTouchStart","onTouchEnd","x","width","height","style","correctVal","parseFloat","isNaN","correctPxHeight","actualPxHeight","diffPx","Math","abs","yDiff","indicatorBarColor","borderGray","WHITE","yToRender","Fragment","stroke","strokeWidth","strokeDasharray","CorrectCheckIcon","dashColor","onDrag","onDragStop","dragStop","React","PropTypes","string","func","number","isRequired","types","GraphPropsType","bool","shape","array","Bar","Bars","_React$Component2","arguments","_this$props3","data","histogram","Group","map","concat","category","_default"],"sources":["../../../src/bars/common/bars.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Group } from '@vx/group';\nimport { Bar as VxBar } from '@vx/shape';\nimport { styled } from '@mui/material/styles';\nimport debug from 'debug';\n\nimport { color } from '@pie-lib/render-ui';\nimport { types } from '@pie-lib/plot';\nimport { bandKey } from '../../utils';\nimport DraggableHandle, { DragHandle } from '../../common/drag-handle';\nimport { CorrectCheckIcon } from './correct-check-icon';\n\nconst log = debug('pie-lib:chart:bars');\nconst histogramColors = [\n '#006699',\n '#F59B00',\n '#08916D',\n '#529EE0',\n '#52B7D8',\n '#D9A6C2',\n '#FFB03B',\n '#54A77B',\n '#E16032',\n '#4FD2D2',\n '#F0E442',\n '#E287B2',\n];\nconst hoverHistogramColors = [\n '#003754',\n '#975616',\n '#00503B',\n '#225982',\n '#1F687D',\n '#825E6F',\n '#996428',\n '#255E44',\n '#8A331F',\n '#167A7A',\n '#91862D',\n '#894A65',\n];\n\nconst calculateFillColor = (isHovered, barColor, index, hoverHistogramColors, allowRolloverEvent) => {\n if (isHovered && barColor && allowRolloverEvent) {\n return hoverHistogramColors[index % hoverHistogramColors.length];\n }\n if (isHovered && allowRolloverEvent) {\n return color.visualElementsColors.ROLLOVER_FILL_BAR_COLOR;\n }\n return barColor || null;\n};\n\nconst StyledVxBar = styled(VxBar)(() => ({\n fill: color.defaults.TERTIARY,\n}));\n\nexport class RawBar extends React.Component {\n static propTypes = {\n barColor: PropTypes.string,\n onChangeCategory: PropTypes.func,\n value: PropTypes.number,\n label: PropTypes.string,\n xBand: PropTypes.func,\n index: PropTypes.number.isRequired,\n graphProps: types.GraphPropsType.isRequired,\n interactive: PropTypes.bool,\n correctness: PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n }),\n correctData: PropTypes.array,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dragValue: undefined,\n isHovered: false,\n };\n this.mouseX = 0;\n this.mouseY = 0;\n }\n\n componentDidMount() {\n window.addEventListener('mousemove', this.handleMouseMove);\n }\n\n componentWillUnmount() {\n window.removeEventListener('mousemove', this.handleMouseMove);\n }\n\n handleMouseMove = (e) => {\n // Update mouse position\n this.mouseX = e.clientX;\n this.mouseY = e.clientY;\n // Check if the mouse is inside the <g> element\n const isMouseInside = this.isMouseInsideSvgElement();\n this.setState({ isHovered: isMouseInside });\n };\n\n isMouseInsideSvgElement = () => {\n const gBoundingBox = this.gRef.getBoundingClientRect();\n // Check if the mouse position is within the bounding box\n return (\n this.mouseX >= gBoundingBox.left &&\n this.mouseX <= gBoundingBox.right &&\n this.mouseY >= gBoundingBox.top &&\n this.mouseY <= gBoundingBox.bottom\n );\n };\n\n handleMouseEnter = () => {\n this.setState({ isHovered: true });\n };\n\n handleMouseLeave = () => {\n this.setState({ isHovered: false });\n };\n\n setDragValue = (dragValue) => this.setState({ dragValue });\n\n dragStop = () => {\n const { label, onChangeCategory } = this.props;\n const { dragValue } = this.state;\n log('[dragStop]', dragValue);\n\n if (dragValue !== undefined) {\n onChangeCategory({ label, value: dragValue });\n }\n\n this.setDragValue(undefined);\n };\n\n dragValue = (existing, next) => {\n log('[dragValue] next:', next);\n\n this.setDragValue(next);\n };\n\n render() {\n const {\n graphProps,\n value,\n label,\n xBand,\n index,\n interactive,\n correctness,\n barColor,\n defineChart,\n correctData,\n } = this.props;\n const { scale, range } = graphProps;\n const { dragValue, isHovered } = this.state;\n\n const allowRolloverEvent = interactive && !correctness;\n const fillColor = calculateFillColor(isHovered, barColor, index, hoverHistogramColors, allowRolloverEvent);\n const v = Number.isFinite(dragValue) ? dragValue : value;\n const barWidth = xBand.bandwidth();\n const barHeight = scale.y(range.max - v);\n const barX = xBand(bandKey({ label }, index));\n const rawY = range.max - v;\n const yy = range.max - rawY;\n const correctValue = correctData ? correctData.find((d) => d.label === label) : null;\n log('label:', label, 'barX:', barX, 'v: ', v, 'barHeight:', barHeight, 'barWidth: ', barWidth);\n\n const Component = interactive ? DraggableHandle : DragHandle;\n const isHistogram = !!barColor;\n\n return (\n <g\n ref={(ref) => (this.gRef = ref)}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n onTouchStart={this.handleMouseEnter}\n onTouchEnd={this.handleMouseLeave}\n >\n <StyledVxBar\n x={barX}\n y={scale.y(yy)}\n width={barWidth}\n height={barHeight}\n style={{ fill: fillColor }}\n />\n {correctness &&\n correctness.value === 'incorrect' &&\n (() => {\n const correctVal = parseFloat(correctValue && correctValue.value);\n if (isNaN(correctVal)) return null;\n const correctPxHeight = scale.y(range.max - correctVal);\n const actualPxHeight = barHeight;\n const diffPx = Math.abs(correctPxHeight - actualPxHeight);\n const yDiff = scale.y(correctVal);\n const indicatorBarColor = correctPxHeight > actualPxHeight ? color.borderGray() : color.defaults.WHITE;\n const yToRender = correctPxHeight > actualPxHeight ? yDiff : yDiff - diffPx;\n\n return (\n <>\n <StyledVxBar\n x={barX + 2} // add 2px for the stroke (the dashed border)\n y={yToRender}\n width={barWidth - 4} // substract 4px for the total stroke\n height={diffPx}\n style={{\n stroke: indicatorBarColor,\n strokeWidth: 2,\n strokeDasharray: '5,2',\n fill: 'none',\n }}\n />\n {/* adjust the position based on whether it's a histogram or not, because the histogram does not have space for the icon on the side */}\n <foreignObject x={barX + barWidth - (isHistogram ? 24 : 14)} y={yDiff - 12} width={24} height={24}>\n <CorrectCheckIcon dashColor={indicatorBarColor} />\n </foreignObject>\n </>\n );\n })()}\n <Component\n x={barX}\n y={v}\n defineChart={defineChart}\n interactive={interactive}\n width={barWidth}\n onDrag={(v) => this.dragValue(value, v)}\n onDragStop={this.dragStop}\n graphProps={graphProps}\n correctness={correctness}\n isHovered={isHovered}\n color={fillColor}\n />\n </g>\n );\n }\n}\n\nconst Bar = RawBar;\n\nexport class Bars extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n correctData: PropTypes.array,\n onChangeCategory: PropTypes.func,\n defineChart: PropTypes.bool,\n xBand: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n histogram: PropTypes.bool,\n };\n\n render() {\n const { data, graphProps, xBand, onChangeCategory, defineChart, histogram, correctData } = this.props;\n\n return (\n <Group>\n {(data || []).map((d, index) => (\n <Bar\n value={d.value}\n interactive={defineChart || d.interactive}\n defineChart={defineChart}\n label={d.label}\n xBand={xBand}\n index={index}\n key={`bar-${d.label}-${d.value}-${index}`}\n onChangeCategory={(category) => onChangeCategory(index, category)}\n graphProps={graphProps}\n correctness={d.correctness}\n correctData={correctData}\n barColor={\n histogram &&\n (histogramColors[index] ? histogramColors[index] : histogramColors[index % histogramColors.length])\n }\n />\n ))}\n </Group>\n );\n }\n}\n\nexport default Bars;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"bars.js","names":["_react","_interopRequireDefault","require","_propTypes","_group","_shape","_styles","_debug","_renderUi","_plot","_utils","_dragHandle","_interopRequireWildcard","_correctCheckIcon","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","log","debug","histogramColors","hoverHistogramColors","calculateFillColor","isHovered","barColor","index","allowRolloverEvent","length","color","visualElementsColors","ROLLOVER_FILL_BAR_COLOR","StyledVisxBar","styled","VisxBar","fill","defaults","TERTIARY","RawBar","exports","_React$Component","props","_this","_classCallCheck2","_defineProperty2","mouseX","clientX","mouseY","clientY","isMouseInside","isMouseInsideSvgElement","setState","gBoundingBox","gRef","getBoundingClientRect","left","right","top","bottom","dragValue","_this$props","label","onChangeCategory","state","undefined","value","setDragValue","existing","next","_inherits2","_createClass2","key","componentDidMount","window","addEventListener","handleMouseMove","componentWillUnmount","removeEventListener","render","_this2","_this$props2","graphProps","xBand","interactive","correctness","defineChart","correctData","scale","range","_this$state","fillColor","v","Number","isFinite","barWidth","bandwidth","barHeight","y","max","barX","bandKey","rawY","yy","correctValue","find","d","Component","DraggableHandle","DragHandle","isHistogram","createElement","ref","onMouseEnter","handleMouseEnter","onMouseLeave","handleMouseLeave","onTouchStart","onTouchEnd","x","width","height","style","correctVal","parseFloat","isNaN","correctPxHeight","actualPxHeight","diffPx","Math","abs","yDiff","indicatorBarColor","borderGray","WHITE","yToRender","Fragment","stroke","strokeWidth","strokeDasharray","CorrectCheckIcon","dashColor","onDrag","onDragStop","dragStop","React","PropTypes","string","func","number","isRequired","types","GraphPropsType","bool","shape","array","Bar","Bars","_React$Component2","arguments","_this$props3","data","histogram","Group","map","concat","category","_default"],"sources":["../../../src/bars/common/bars.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Group } from '@visx/group';\nimport { Bar as VisxBar } from '@visx/shape';\nimport { styled } from '@mui/material/styles';\nimport debug from 'debug';\n\nimport { color } from '@pie-lib/render-ui';\nimport { types } from '@pie-lib/plot';\nimport { bandKey } from '../../utils';\nimport DraggableHandle, { DragHandle } from '../../common/drag-handle';\nimport { CorrectCheckIcon } from './correct-check-icon';\n\nconst log = debug('pie-lib:chart:bars');\nconst histogramColors = [\n '#006699',\n '#F59B00',\n '#08916D',\n '#529EE0',\n '#52B7D8',\n '#D9A6C2',\n '#FFB03B',\n '#54A77B',\n '#E16032',\n '#4FD2D2',\n '#F0E442',\n '#E287B2',\n];\nconst hoverHistogramColors = [\n '#003754',\n '#975616',\n '#00503B',\n '#225982',\n '#1F687D',\n '#825E6F',\n '#996428',\n '#255E44',\n '#8A331F',\n '#167A7A',\n '#91862D',\n '#894A65',\n];\n\nconst calculateFillColor = (isHovered, barColor, index, hoverHistogramColors, allowRolloverEvent) => {\n if (isHovered && barColor && allowRolloverEvent) {\n return hoverHistogramColors[index % hoverHistogramColors.length];\n }\n if (isHovered && allowRolloverEvent) {\n return color.visualElementsColors.ROLLOVER_FILL_BAR_COLOR;\n }\n return barColor || null;\n};\n\nconst StyledVisxBar = styled(VisxBar)(() => ({\n fill: color.defaults.TERTIARY,\n}));\n\nexport class RawBar extends React.Component {\n static propTypes = {\n barColor: PropTypes.string,\n onChangeCategory: PropTypes.func,\n value: PropTypes.number,\n label: PropTypes.string,\n xBand: PropTypes.func,\n index: PropTypes.number.isRequired,\n graphProps: types.GraphPropsType.isRequired,\n interactive: PropTypes.bool,\n correctness: PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n }),\n correctData: PropTypes.array,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dragValue: undefined,\n isHovered: false,\n };\n this.mouseX = 0;\n this.mouseY = 0;\n }\n\n componentDidMount() {\n window.addEventListener('mousemove', this.handleMouseMove);\n }\n\n componentWillUnmount() {\n window.removeEventListener('mousemove', this.handleMouseMove);\n }\n\n handleMouseMove = (e) => {\n this.mouseX = e.clientX;\n this.mouseY = e.clientY;\n const isMouseInside = this.isMouseInsideSvgElement();\n this.setState({ isHovered: isMouseInside });\n };\n\n isMouseInsideSvgElement = () => {\n const gBoundingBox = this.gRef.getBoundingClientRect();\n return (\n this.mouseX >= gBoundingBox.left &&\n this.mouseX <= gBoundingBox.right &&\n this.mouseY >= gBoundingBox.top &&\n this.mouseY <= gBoundingBox.bottom\n );\n };\n\n handleMouseEnter = () => this.setState({ isHovered: true });\n handleMouseLeave = () => this.setState({ isHovered: false });\n\n setDragValue = (dragValue) => this.setState({ dragValue });\n\n dragStop = () => {\n const { label, onChangeCategory } = this.props;\n const { dragValue } = this.state;\n log('[dragStop]', dragValue);\n\n if (dragValue !== undefined) {\n onChangeCategory({ label, value: dragValue });\n }\n\n this.setDragValue(undefined);\n };\n\n dragValue = (existing, next) => {\n log('[dragValue] next:', next);\n\n this.setDragValue(next);\n };\n\n render() {\n const {\n graphProps,\n value,\n label,\n xBand,\n index,\n interactive,\n correctness,\n barColor,\n defineChart,\n correctData,\n } = this.props;\n const { scale, range } = graphProps;\n const { dragValue, isHovered } = this.state;\n\n const allowRolloverEvent = interactive && !correctness;\n const fillColor = calculateFillColor(isHovered, barColor, index, hoverHistogramColors, allowRolloverEvent);\n const v = Number.isFinite(dragValue) ? dragValue : value;\n const barWidth = xBand.bandwidth();\n const barHeight = scale.y(range.max - v);\n const barX = xBand(bandKey({ label }, index));\n const rawY = range.max - v;\n const yy = range.max - rawY;\n const correctValue = correctData ? correctData.find((d) => d.label === label) : null;\n\n const Component = interactive ? DraggableHandle : DragHandle;\n const isHistogram = !!barColor;\n\n return (\n <g\n ref={(ref) => (this.gRef = ref)}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n onTouchStart={this.handleMouseEnter}\n onTouchEnd={this.handleMouseLeave}\n >\n <StyledVisxBar\n x={barX}\n y={scale.y(yy)}\n width={barWidth}\n height={barHeight}\n style={{ fill: fillColor }}\n />\n {correctness && correctness.value === 'incorrect' && (() => {\n const correctVal = parseFloat(correctValue && correctValue.value);\n if (isNaN(correctVal)) return null;\n const correctPxHeight = scale.y(range.max - correctVal);\n const actualPxHeight = barHeight;\n const diffPx = Math.abs(correctPxHeight - actualPxHeight);\n const yDiff = scale.y(correctVal);\n const indicatorBarColor = correctPxHeight > actualPxHeight ? color.borderGray() : color.defaults.WHITE;\n const yToRender = correctPxHeight > actualPxHeight ? yDiff : yDiff - diffPx;\n\n return (\n <>\n <StyledVisxBar\n x={barX + 2}\n y={yToRender}\n width={barWidth - 4}\n height={diffPx}\n style={{ stroke: indicatorBarColor, strokeWidth: 2, strokeDasharray: '5,2', fill: 'none' }}\n />\n <foreignObject\n x={barX + barWidth - (isHistogram ? 24 : 14)}\n y={yDiff - 12}\n width={24}\n height={24}\n >\n <CorrectCheckIcon dashColor={indicatorBarColor} />\n </foreignObject>\n </>\n );\n })()}\n <Component\n x={barX}\n y={v}\n defineChart={defineChart}\n interactive={interactive}\n width={barWidth}\n onDrag={(v) => this.dragValue(value, v)}\n onDragStop={this.dragStop}\n graphProps={graphProps}\n correctness={correctness}\n isHovered={isHovered}\n color={fillColor}\n />\n </g>\n );\n }\n}\n\nconst Bar = RawBar;\n\nexport class Bars extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n correctData: PropTypes.array,\n onChangeCategory: PropTypes.func,\n defineChart: PropTypes.bool,\n xBand: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n histogram: PropTypes.bool,\n };\n\n render() {\n const { data, graphProps, xBand, onChangeCategory, defineChart, histogram, correctData } = this.props;\n\n return (\n <Group>\n {(data || []).map((d, index) => (\n <Bar\n value={d.value}\n interactive={defineChart || d.interactive}\n defineChart={defineChart}\n label={d.label}\n xBand={xBand}\n index={index}\n key={`bar-${d.label}-${d.value}-${index}`}\n onChangeCategory={(category) => onChangeCategory(index, category)}\n graphProps={graphProps}\n correctness={d.correctness}\n correctData={correctData}\n barColor={\n histogram && (histogramColors[index] ? histogramColors[index] : histogramColors[index % histogramColors.length])\n }\n />\n ))}\n </Group>\n );\n }\n}\n\nexport default Bars;\n"],"mappings":"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","ignoreList":[]}
package/lib/chart.js CHANGED
@@ -175,7 +175,6 @@ var Chart = exports.Chart = /*#__PURE__*/function (_React$Component) {
175
175
  value: function render() {
176
176
  var _this2 = this;
177
177
  var _this$props5 = this.props,
178
- className = _this$props5.className,
179
178
  _this$props5$domain = _this$props5.domain,
180
179
  domain = _this$props5$domain === void 0 ? {} : _this$props5$domain,
181
180
  _this$props5$range = _this$props5.range,
@@ -249,9 +248,7 @@ var Chart = exports.Chart = /*#__PURE__*/function (_React$Component) {
249
248
  if (needsExtraHeight) {
250
249
  rootCommon.graphProps.size.height += 25;
251
250
  }
252
- return /*#__PURE__*/_react["default"].createElement(StyledChartContainer, {
253
- className: className
254
- }, /*#__PURE__*/_react["default"].createElement(_plot.Root, (0, _extends2["default"])({
251
+ return /*#__PURE__*/_react["default"].createElement(StyledChartContainer, null, /*#__PURE__*/_react["default"].createElement(_plot.Root, (0, _extends2["default"])({
255
252
  title: title,
256
253
  onChangeTitle: onChangeTitle,
257
254
  disabledTitle: !defineChart,
package/lib/chart.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chart.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_debug","_cloneDeep","_plot","_configUi","_grid","_axes","_utils","_chartTypes","_actionsButton","_translator","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","translator","Translator","log","debug","StyledChartContainer","styled","width","Chart","exports","_React$Component","props","_this","_classCallCheck2","charts","chartTypes","Bar","Histogram","LineDot","LineCross","DotPlot","LinePlot","autoFocus","open","callback","setState","dialog","state","chartType","ChartComponent","chart","find","type","Component","data","onDataChange","index","newCategory","integerIndex","parseInt","_this$props","_this$props2","categoryDefaultLabel","defineChart","categoryDefaults","language","title","lng","text","count","onConfirm","handleAlertDialog","concat","_toConsumableArray2","inDefineChart","label","value","deletable","editable","interactive","_this$props3","_","i","_this$props4","map","d","actionsAnchorEl","maskUid","generateMaskId","_inherits2","_createClass2","key","Math","random","toFixed","render","_this2","_this$props5","className","_this$props5$domain","domain","_this$props5$range","range","chartingOptions","size","onChangeTitle","onChangeLabels","labelsPlaceholders","titlePlaceholder","addCategoryEnabled","changeInteractiveEnabled","changeEditableEnabled","showPixelGuides","error","_this$props5$mathMlOp","mathMlOptions","labelsCharactersLimit","correctData","_ref","height","labels","left","bottom","_this$getChart","getChart","categories","getFilteredCategories","correctValues","getDomainAndRangeByChartType","_getGridLinesAndAxisB","getGridLinesAndAxisByChartType","verticalLines","horizontalLines","leftAxis","common","graphProps","createGraphProps","rootNode","maskSize","x","y","scale","xBand","dataToXBand","bandWidth","bandwidth","barWidth","max","increaseHeight","top","getTopPadding","rootCommon","cloneDeep","isPlotEvaluation","needsExtraHeight","createElement","Root","_extends2","disabledTitle","showTitle","showLabels","disabledLabels","isChart","rootRef","rowTickValues","columnTickValues","onAutoFocusUsed","resetAutoFocus","onChange","changeData","onChangeCategory","changeCategory","showCorrectness","xmlns","style","display","justifyContent","addCategory","deleteCategory","id","fill","mask","AlertDialog","onClose","React","PropTypes","string","isRequired","shape","number","min","axisLabel","arrayOf","step","labelStep","array","object","func","any","bool","theme","_default"],"sources":["../src/chart.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport debug from 'debug';\nimport cloneDeep from 'lodash/cloneDeep';\n\nimport { Root, createGraphProps } from '@pie-lib/plot';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport ChartGrid from './grid';\nimport ChartAxes from './axes';\nimport { dataToXBand, getDomainAndRangeByChartType, getGridLinesAndAxisByChartType, getTopPadding } from './utils';\nimport chartTypes from './chart-types';\nimport ActionsButton from './actions-button';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst log = debug('pie-lib:charts:chart');\n\nconst StyledChartContainer = styled('div')(() => ({\n width: 'min-content',\n}));\n\nexport class Chart extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n dialog: {\n open: false,\n },\n actionsAnchorEl: null,\n };\n this.maskUid = this.generateMaskId();\n }\n\n static propTypes = {\n className: PropTypes.string,\n chartType: PropTypes.string.isRequired,\n size: PropTypes.shape({\n width: PropTypes.number,\n height: PropTypes.number,\n }),\n domain: PropTypes.shape({\n label: PropTypes.string,\n min: PropTypes.number,\n max: PropTypes.number,\n axisLabel: PropTypes.string,\n }),\n data: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string, value: PropTypes.number })),\n range: PropTypes.shape({\n label: PropTypes.string,\n min: PropTypes.number,\n max: PropTypes.number,\n step: PropTypes.number,\n labelStep: PropTypes.number,\n axisLabel: PropTypes.string,\n }),\n charts: PropTypes.array,\n labelsPlaceholders: PropTypes.object,\n title: PropTypes.string,\n titlePlaceholder: PropTypes.string,\n onDataChange: PropTypes.func,\n onChangeLabels: PropTypes.func,\n onChangeTitle: PropTypes.func,\n error: PropTypes.any,\n addCategoryEnabled: PropTypes.bool,\n showPixelGuides: PropTypes.bool,\n categoryDefaultLabel: PropTypes.string,\n categoryDefaults: PropTypes.object,\n defineChart: PropTypes.bool,\n theme: PropTypes.object,\n chartingOptions: PropTypes.object,\n changeInteractiveEnabled: PropTypes.bool,\n changeEditableEnabled: PropTypes.bool,\n language: PropTypes.string,\n mathMlOptions: PropTypes.object,\n labelsCharactersLimit: PropTypes.number,\n correctData: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.number,\n }),\n ),\n };\n\n static defaultProps = {\n size: {\n width: 480,\n height: 480,\n },\n };\n\n state = {\n charts: [\n chartTypes.Bar(),\n chartTypes.Histogram(),\n chartTypes.LineDot(),\n chartTypes.LineCross(),\n chartTypes.DotPlot(),\n chartTypes.LinePlot(),\n ],\n autoFocus: false,\n };\n\n generateMaskId() {\n return 'chart-' + (Math.random() * 10000).toFixed();\n }\n\n handleAlertDialog = (open, callback) =>\n this.setState(\n {\n dialog: { open },\n },\n callback,\n );\n\n getChart = () => {\n const charts = this.props.charts || this.state.charts;\n let { chartType } = this.props;\n let ChartComponent = null;\n let chart = null;\n\n if (chartType) {\n chart = charts && charts.find((chart) => chart.type === chartType);\n ChartComponent = chart && chart.Component;\n } else {\n chart = charts && charts[0];\n ChartComponent = chart && chart.Component;\n chartType = chart && chart.type;\n }\n\n return {\n type: chartType,\n ChartComponent,\n };\n };\n\n changeData = (data) => {\n const { onDataChange } = this.props;\n\n onDataChange(data);\n };\n\n changeCategory = (index, newCategory) => {\n const integerIndex = parseInt(index, 10);\n\n if (integerIndex >= 0) {\n const { data, onDataChange } = this.props;\n data[integerIndex] = {\n ...data[integerIndex],\n ...newCategory,\n };\n\n onDataChange(data);\n }\n };\n\n addCategory = () => {\n const { onDataChange, data, categoryDefaultLabel, defineChart, categoryDefaults, language } = this.props;\n\n if ((data || []).length > 19) {\n this.setState({\n dialog: {\n open: true,\n title: translator.t('common:warning', { lng: language }),\n text: translator.t('charting.reachedLimit_other', { count: 20, lng: language }),\n onConfirm: () => this.handleAlertDialog(false),\n },\n });\n } else {\n this.setState({ autoFocus: true });\n onDataChange([\n ...data,\n {\n inDefineChart: defineChart,\n label: categoryDefaultLabel || translator.t('charting.newLabel', { lng: language }),\n value: 0,\n deletable: true,\n editable: categoryDefaults ? categoryDefaults?.editable : true,\n interactive: categoryDefaults ? categoryDefaults?.interactive : true,\n },\n ]);\n }\n };\n\n deleteCategory = (index) => {\n const { data, onDataChange } = this.props;\n\n if (typeof index !== 'number' || index < 0) {\n return;\n }\n\n if (data && data.length > 0) {\n onDataChange(data.filter((_, i) => i !== index));\n }\n };\n\n getFilteredCategories = () => {\n const { data, defineChart } = this.props;\n\n return data\n ? data.map((d) => ({\n ...d,\n deletable: defineChart || d.deletable,\n }))\n : [];\n };\n\n resetAutoFocus = () => {\n this.setState({ autoFocus: false });\n };\n\n render() {\n const {\n className,\n domain = {},\n range = {},\n chartingOptions,\n size,\n title,\n onChangeTitle,\n onChangeLabels,\n labelsPlaceholders,\n titlePlaceholder,\n addCategoryEnabled,\n changeInteractiveEnabled,\n changeEditableEnabled,\n showPixelGuides,\n error,\n mathMlOptions = {},\n language,\n labelsCharactersLimit,\n correctData,\n } = this.props;\n let { chartType } = this.props;\n\n const { dialog } = this.state;\n const defineChart = this.props.defineChart || false;\n\n const { width, height } = size || {};\n const labels = { left: range?.label || '', bottom: domain?.label || '' };\n\n const { ChartComponent } = this.getChart();\n const categories = this.getFilteredCategories();\n\n const correctValues = getDomainAndRangeByChartType(domain, range, chartType);\n\n const { verticalLines, horizontalLines, leftAxis } = getGridLinesAndAxisByChartType(correctValues.range, chartType);\n const common = {\n graphProps: createGraphProps(correctValues.domain, correctValues.range, size, () => this.rootNode),\n };\n\n log('[render] common:', common);\n\n const maskSize = { x: -10, y: -75, width: width + 20, height: height + 130 };\n const { scale } = common.graphProps;\n const xBand = dataToXBand(scale.x, categories, width, chartType);\n\n if (!ChartComponent) {\n return null;\n }\n\n const bandWidth = xBand.bandwidth();\n // for chartType \"line\", bandWidth will be 0, so we have to calculate it\n const barWidth = bandWidth || scale.x(correctValues.domain.max) / categories.length;\n const increaseHeight = defineChart ? 160 : 60;\n\n // if there are many categories, we have to rotate their names in order to fit\n // and we have to add extra value on top of some items\n const top = getTopPadding(barWidth);\n const rootCommon = cloneDeep(common);\n rootCommon.graphProps.size.height += top + increaseHeight;\n\n // for plot evaluations we need extra space because we render correctness icon below x axis\n const isPlotEvaluation = (chartType === 'dotPlot' || chartType === 'linePlot') && correctData?.length;\n const needsExtraHeight = isPlotEvaluation && labels.bottom;\n\n if (needsExtraHeight) {\n rootCommon.graphProps.size.height += 25;\n }\n\n return (\n <StyledChartContainer className={className}>\n <Root\n title={title}\n onChangeTitle={onChangeTitle}\n disabledTitle={!defineChart}\n showTitle={true}\n showLabels={true}\n labels={labels}\n onChangeLabels={onChangeLabels}\n labelsPlaceholders={labelsPlaceholders}\n titlePlaceholder={titlePlaceholder}\n defineChart={defineChart}\n disabledLabels={!defineChart}\n isChart={true}\n showPixelGuides={showPixelGuides}\n rootRef={(r) => (this.rootNode = r)}\n mathMlOptions={mathMlOptions}\n labelsCharactersLimit={labelsCharactersLimit}\n {...rootCommon}\n >\n <ChartGrid {...common} xBand={xBand} rowTickValues={horizontalLines} columnTickValues={verticalLines} />\n <ChartAxes\n autoFocus={this.state.autoFocus}\n onAutoFocusUsed={this.resetAutoFocus}\n {...common}\n defineChart={defineChart}\n categories={categories}\n xBand={xBand}\n leftAxis={leftAxis}\n onChange={this.changeData}\n onChangeCategory={this.changeCategory}\n chartingOptions={chartingOptions}\n changeInteractiveEnabled={changeInteractiveEnabled}\n changeEditableEnabled={changeEditableEnabled}\n top={top}\n error={error}\n showCorrectness={chartType === 'linePlot' || chartType === 'dotPlot'}\n />\n {addCategoryEnabled ? (\n <foreignObject x={width} y={height - 16} width={width} height={height}>\n <div xmlns=\"http://www.w3.org/1999/xhtml\" style={{ display: 'flex', justifyContent: 'flex-start' }}>\n <ActionsButton\n categories={categories}\n addCategory={this.addCategory}\n deleteCategory={this.deleteCategory}\n language={language}\n />\n </div>\n </foreignObject>\n ) : null}\n <mask id={`${this.maskUid}`}>\n <rect {...maskSize} fill=\"white\" />\n </mask>\n <g id=\"marks\" mask={`url('#${this.maskUid}')`}>\n <ChartComponent\n {...common}\n data={categories}\n height={rootCommon.graphProps.size.height}\n defineChart={defineChart}\n onChange={this.changeData}\n onChangeCategory={this.changeCategory}\n correctData={correctData}\n />\n </g>\n </Root>\n <AlertDialog\n open={dialog.open}\n title={dialog.title}\n text={dialog.text}\n onClose={dialog.onClose}\n onConfirm={dialog.onConfirm}\n />\n </StyledChartContainer>\n );\n }\n}\n\nexport default Chart;\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,UAAA,GAAAL,sBAAA,CAAAC,OAAA;AAEA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,KAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,cAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,WAAA,GAAAb,sBAAA,CAAAC,OAAA;AAA6C,SAAAa,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAoB,WAAAlB,CAAA,EAAAI,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAApB,CAAA,EAAAqB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAAnB,CAAA,EAAAwB,WAAA,IAAApB,CAAA,CAAAK,KAAA,CAAAT,CAAA,EAAAF,CAAA;AAAA,SAAAuB,0BAAA,cAAArB,CAAA,IAAAyB,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAN,OAAA,CAAAC,SAAA,CAAAE,OAAA,iCAAAzB,CAAA,aAAAqB,yBAAA,YAAAA,0BAAA,aAAArB,CAAA;AAE7C,IAAQ6B,UAAU,GAAKC,sBAAU,CAAzBD,UAAU;AAElB,IAAME,GAAG,GAAG,IAAAC,iBAAK,EAAC,sBAAsB,CAAC;AAEzC,IAAMC,oBAAoB,GAAG,IAAAC,cAAM,EAAC,KAAK,CAAC,CAAC;EAAA,OAAO;IAChDC,KAAK,EAAE;EACT,CAAC;AAAA,CAAC,CAAC;AAAC,IAESC,KAAK,GAAAC,OAAA,CAAAD,KAAA,0BAAAE,gBAAA;EAChB,SAAAF,MAAYG,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAL,KAAA;IACjBI,KAAA,GAAAtB,UAAA,OAAAkB,KAAA,GAAMG,KAAK;IAAE,IAAAzB,gBAAA,aAAA0B,KAAA,WAmEP;MACNE,MAAM,EAAE,CACNC,sBAAU,CAACC,GAAG,CAAC,CAAC,EAChBD,sBAAU,CAACE,SAAS,CAAC,CAAC,EACtBF,sBAAU,CAACG,OAAO,CAAC,CAAC,EACpBH,sBAAU,CAACI,SAAS,CAAC,CAAC,EACtBJ,sBAAU,CAACK,OAAO,CAAC,CAAC,EACpBL,sBAAU,CAACM,QAAQ,CAAC,CAAC,CACtB;MACDC,SAAS,EAAE;IACb,CAAC;IAAA,IAAApC,gBAAA,aAAA0B,KAAA,uBAMmB,UAACW,IAAI,EAAEC,QAAQ;MAAA,OACjCZ,KAAA,CAAKa,QAAQ,CACX;QACEC,MAAM,EAAE;UAAEH,IAAI,EAAJA;QAAK;MACjB,CAAC,EACDC,QACF,CAAC;IAAA;IAAA,IAAAtC,gBAAA,aAAA0B,KAAA,cAEQ,YAAM;MACf,IAAME,MAAM,GAAGF,KAAA,CAAKD,KAAK,CAACG,MAAM,IAAIF,KAAA,CAAKe,KAAK,CAACb,MAAM;MACrD,IAAMc,SAAS,GAAKhB,KAAA,CAAKD,KAAK,CAAxBiB,SAAS;MACf,IAAIC,cAAc,GAAG,IAAI;MACzB,IAAIC,KAAK,GAAG,IAAI;MAEhB,IAAIF,SAAS,EAAE;QACbE,KAAK,GAAGhB,MAAM,IAAIA,MAAM,CAACiB,IAAI,CAAC,UAACD,KAAK;UAAA,OAAKA,KAAK,CAACE,IAAI,KAAKJ,SAAS;QAAA,EAAC;QAClEC,cAAc,GAAGC,KAAK,IAAIA,KAAK,CAACG,SAAS;MAC3C,CAAC,MAAM;QACLH,KAAK,GAAGhB,MAAM,IAAIA,MAAM,CAAC,CAAC,CAAC;QAC3Be,cAAc,GAAGC,KAAK,IAAIA,KAAK,CAACG,SAAS;QACzCL,SAAS,GAAGE,KAAK,IAAIA,KAAK,CAACE,IAAI;MACjC;MAEA,OAAO;QACLA,IAAI,EAAEJ,SAAS;QACfC,cAAc,EAAdA;MACF,CAAC;IACH,CAAC;IAAA,IAAA3C,gBAAA,aAAA0B,KAAA,gBAEY,UAACsB,IAAI,EAAK;MACrB,IAAQC,YAAY,GAAKvB,KAAA,CAAKD,KAAK,CAA3BwB,YAAY;MAEpBA,YAAY,CAACD,IAAI,CAAC;IACpB,CAAC;IAAA,IAAAhD,gBAAA,aAAA0B,KAAA,oBAEgB,UAACwB,KAAK,EAAEC,WAAW,EAAK;MACvC,IAAMC,YAAY,GAAGC,QAAQ,CAACH,KAAK,EAAE,EAAE,CAAC;MAExC,IAAIE,YAAY,IAAI,CAAC,EAAE;QACrB,IAAAE,WAAA,GAA+B5B,KAAA,CAAKD,KAAK;UAAjCuB,IAAI,GAAAM,WAAA,CAAJN,IAAI;UAAEC,YAAY,GAAAK,WAAA,CAAZL,YAAY;QAC1BD,IAAI,CAACI,YAAY,CAAC,GAAAxD,aAAA,CAAAA,aAAA,KACboD,IAAI,CAACI,YAAY,CAAC,GAClBD,WAAW,CACf;QAEDF,YAAY,CAACD,IAAI,CAAC;MACpB;IACF,CAAC;IAAA,IAAAhD,gBAAA,aAAA0B,KAAA,iBAEa,YAAM;MAClB,IAAA6B,YAAA,GAA8F7B,KAAA,CAAKD,KAAK;QAAhGwB,YAAY,GAAAM,YAAA,CAAZN,YAAY;QAAED,IAAI,GAAAO,YAAA,CAAJP,IAAI;QAAEQ,oBAAoB,GAAAD,YAAA,CAApBC,oBAAoB;QAAEC,WAAW,GAAAF,YAAA,CAAXE,WAAW;QAAEC,gBAAgB,GAAAH,YAAA,CAAhBG,gBAAgB;QAAEC,QAAQ,GAAAJ,YAAA,CAARI,QAAQ;MAEzF,IAAI,CAACX,IAAI,IAAI,EAAE,EAAElD,MAAM,GAAG,EAAE,EAAE;QAC5B4B,KAAA,CAAKa,QAAQ,CAAC;UACZC,MAAM,EAAE;YACNH,IAAI,EAAE,IAAI;YACVuB,KAAK,EAAE7C,UAAU,CAAC7B,CAAC,CAAC,gBAAgB,EAAE;cAAE2E,GAAG,EAAEF;YAAS,CAAC,CAAC;YACxDG,IAAI,EAAE/C,UAAU,CAAC7B,CAAC,CAAC,6BAA6B,EAAE;cAAE6E,KAAK,EAAE,EAAE;cAAEF,GAAG,EAAEF;YAAS,CAAC,CAAC;YAC/EK,SAAS,EAAE,SAAXA,SAASA,CAAA;cAAA,OAAQtC,KAAA,CAAKuC,iBAAiB,CAAC,KAAK,CAAC;YAAA;UAChD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACLvC,KAAA,CAAKa,QAAQ,CAAC;UAAEH,SAAS,EAAE;QAAK,CAAC,CAAC;QAClCa,YAAY,IAAAiB,MAAA,KAAAC,mBAAA,aACPnB,IAAI,IACP;UACEoB,aAAa,EAAEX,WAAW;UAC1BY,KAAK,EAAEb,oBAAoB,IAAIzC,UAAU,CAAC7B,CAAC,CAAC,mBAAmB,EAAE;YAAE2E,GAAG,EAAEF;UAAS,CAAC,CAAC;UACnFW,KAAK,EAAE,CAAC;UACRC,SAAS,EAAE,IAAI;UACfC,QAAQ,EAAEd,gBAAgB,GAAGA,gBAAgB,aAAhBA,gBAAgB,uBAAhBA,gBAAgB,CAAEc,QAAQ,GAAG,IAAI;UAC9DC,WAAW,EAAEf,gBAAgB,GAAGA,gBAAgB,aAAhBA,gBAAgB,uBAAhBA,gBAAgB,CAAEe,WAAW,GAAG;QAClE,CAAC,EACF,CAAC;MACJ;IACF,CAAC;IAAA,IAAAzE,gBAAA,aAAA0B,KAAA,oBAEgB,UAACwB,KAAK,EAAK;MAC1B,IAAAwB,YAAA,GAA+BhD,KAAA,CAAKD,KAAK;QAAjCuB,IAAI,GAAA0B,YAAA,CAAJ1B,IAAI;QAAEC,YAAY,GAAAyB,YAAA,CAAZzB,YAAY;MAE1B,IAAI,OAAOC,KAAK,KAAK,QAAQ,IAAIA,KAAK,GAAG,CAAC,EAAE;QAC1C;MACF;MAEA,IAAIF,IAAI,IAAIA,IAAI,CAAClD,MAAM,GAAG,CAAC,EAAE;QAC3BmD,YAAY,CAACD,IAAI,CAACzD,MAAM,CAAC,UAACoF,CAAC,EAAEC,CAAC;UAAA,OAAKA,CAAC,KAAK1B,KAAK;QAAA,EAAC,CAAC;MAClD;IACF,CAAC;IAAA,IAAAlD,gBAAA,aAAA0B,KAAA,2BAEuB,YAAM;MAC5B,IAAAmD,YAAA,GAA8BnD,KAAA,CAAKD,KAAK;QAAhCuB,IAAI,GAAA6B,YAAA,CAAJ7B,IAAI;QAAES,WAAW,GAAAoB,YAAA,CAAXpB,WAAW;MAEzB,OAAOT,IAAI,GACPA,IAAI,CAAC8B,GAAG,CAAC,UAACC,CAAC;QAAA,OAAAnF,aAAA,CAAAA,aAAA,KACNmF,CAAC;UACJR,SAAS,EAAEd,WAAW,IAAIsB,CAAC,CAACR;QAAS;MAAA,CACrC,CAAC,GACH,EAAE;IACR,CAAC;IAAA,IAAAvE,gBAAA,aAAA0B,KAAA,oBAEgB,YAAM;MACrBA,KAAA,CAAKa,QAAQ,CAAC;QAAEH,SAAS,EAAE;MAAM,CAAC,CAAC;IACrC,CAAC;IAxLCV,KAAA,CAAKe,KAAK,GAAG;MACXD,MAAM,EAAE;QACNH,IAAI,EAAE;MACR,CAAC;MACD2C,eAAe,EAAE;IACnB,CAAC;IACDtD,KAAA,CAAKuD,OAAO,GAAGvD,KAAA,CAAKwD,cAAc,CAAC,CAAC;IAAC,OAAAxD,KAAA;EACvC;EAAC,IAAAyD,UAAA,aAAA7D,KAAA,EAAAE,gBAAA;EAAA,WAAA4D,aAAA,aAAA9D,KAAA;IAAA+D,GAAA;IAAAf,KAAA,EAuED,SAAAY,cAAcA,CAAA,EAAG;MACf,OAAO,QAAQ,GAAG,CAACI,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,KAAK,EAAEC,OAAO,CAAC,CAAC;IACrD;EAAC;IAAAH,GAAA;IAAAf,KAAA,EA0GD,SAAAmB,MAAMA,CAAA,EAAG;MAAA,IAAAC,MAAA;MACP,IAAAC,YAAA,GAoBI,IAAI,CAAClE,KAAK;QAnBZmE,SAAS,GAAAD,YAAA,CAATC,SAAS;QAAAC,mBAAA,GAAAF,YAAA,CACTG,MAAM;QAANA,MAAM,GAAAD,mBAAA,cAAG,CAAC,CAAC,GAAAA,mBAAA;QAAAE,kBAAA,GAAAJ,YAAA,CACXK,KAAK;QAALA,KAAK,GAAAD,kBAAA,cAAG,CAAC,CAAC,GAAAA,kBAAA;QACVE,eAAe,GAAAN,YAAA,CAAfM,eAAe;QACfC,IAAI,GAAAP,YAAA,CAAJO,IAAI;QACJtC,KAAK,GAAA+B,YAAA,CAAL/B,KAAK;QACLuC,aAAa,GAAAR,YAAA,CAAbQ,aAAa;QACbC,cAAc,GAAAT,YAAA,CAAdS,cAAc;QACdC,kBAAkB,GAAAV,YAAA,CAAlBU,kBAAkB;QAClBC,gBAAgB,GAAAX,YAAA,CAAhBW,gBAAgB;QAChBC,kBAAkB,GAAAZ,YAAA,CAAlBY,kBAAkB;QAClBC,wBAAwB,GAAAb,YAAA,CAAxBa,wBAAwB;QACxBC,qBAAqB,GAAAd,YAAA,CAArBc,qBAAqB;QACrBC,eAAe,GAAAf,YAAA,CAAfe,eAAe;QACfC,KAAK,GAAAhB,YAAA,CAALgB,KAAK;QAAAC,qBAAA,GAAAjB,YAAA,CACLkB,aAAa;QAAbA,aAAa,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;QAClBjD,QAAQ,GAAAgC,YAAA,CAARhC,QAAQ;QACRmD,qBAAqB,GAAAnB,YAAA,CAArBmB,qBAAqB;QACrBC,WAAW,GAAApB,YAAA,CAAXoB,WAAW;MAEb,IAAMrE,SAAS,GAAK,IAAI,CAACjB,KAAK,CAAxBiB,SAAS;MAEf,IAAQF,MAAM,GAAK,IAAI,CAACC,KAAK,CAArBD,MAAM;MACd,IAAMiB,WAAW,GAAG,IAAI,CAAChC,KAAK,CAACgC,WAAW,IAAI,KAAK;MAEnD,IAAAuD,IAAA,GAA0Bd,IAAI,IAAI,CAAC,CAAC;QAA5B7E,KAAK,GAAA2F,IAAA,CAAL3F,KAAK;QAAE4F,MAAM,GAAAD,IAAA,CAANC,MAAM;MACrB,IAAMC,MAAM,GAAG;QAAEC,IAAI,EAAE,CAAAnB,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAE3B,KAAK,KAAI,EAAE;QAAE+C,MAAM,EAAE,CAAAtB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEzB,KAAK,KAAI;MAAG,CAAC;MAExE,IAAAgD,cAAA,GAA2B,IAAI,CAACC,QAAQ,CAAC,CAAC;QAAlC3E,cAAc,GAAA0E,cAAA,CAAd1E,cAAc;MACtB,IAAM4E,UAAU,GAAG,IAAI,CAACC,qBAAqB,CAAC,CAAC;MAE/C,IAAMC,aAAa,GAAG,IAAAC,mCAA4B,EAAC5B,MAAM,EAAEE,KAAK,EAAEtD,SAAS,CAAC;MAE5E,IAAAiF,qBAAA,GAAqD,IAAAC,qCAA8B,EAACH,aAAa,CAACzB,KAAK,EAAEtD,SAAS,CAAC;QAA3GmF,aAAa,GAAAF,qBAAA,CAAbE,aAAa;QAAEC,eAAe,GAAAH,qBAAA,CAAfG,eAAe;QAAEC,QAAQ,GAAAJ,qBAAA,CAARI,QAAQ;MAChD,IAAMC,MAAM,GAAG;QACbC,UAAU,EAAE,IAAAC,sBAAgB,EAACT,aAAa,CAAC3B,MAAM,EAAE2B,aAAa,CAACzB,KAAK,EAAEE,IAAI,EAAE;UAAA,OAAMR,MAAI,CAACyC,QAAQ;QAAA;MACnG,CAAC;MAEDlH,GAAG,CAAC,kBAAkB,EAAE+G,MAAM,CAAC;MAE/B,IAAMI,QAAQ,GAAG;QAAEC,CAAC,EAAE,CAAC,EAAE;QAAEC,CAAC,EAAE,CAAC,EAAE;QAAEjH,KAAK,EAAEA,KAAK,GAAG,EAAE;QAAE4F,MAAM,EAAEA,MAAM,GAAG;MAAI,CAAC;MAC5E,IAAQsB,KAAK,GAAKP,MAAM,CAACC,UAAU,CAA3BM,KAAK;MACb,IAAMC,KAAK,GAAG,IAAAC,kBAAW,EAACF,KAAK,CAACF,CAAC,EAAEd,UAAU,EAAElG,KAAK,EAAEqB,SAAS,CAAC;MAEhE,IAAI,CAACC,cAAc,EAAE;QACnB,OAAO,IAAI;MACb;MAEA,IAAM+F,SAAS,GAAGF,KAAK,CAACG,SAAS,CAAC,CAAC;MACnC;MACA,IAAMC,QAAQ,GAAGF,SAAS,IAAIH,KAAK,CAACF,CAAC,CAACZ,aAAa,CAAC3B,MAAM,CAAC+C,GAAG,CAAC,GAAGtB,UAAU,CAACzH,MAAM;MACnF,IAAMgJ,cAAc,GAAGrF,WAAW,GAAG,GAAG,GAAG,EAAE;;MAE7C;MACA;MACA,IAAMsF,GAAG,GAAG,IAAAC,oBAAa,EAACJ,QAAQ,CAAC;MACnC,IAAMK,UAAU,GAAG,IAAAC,qBAAS,EAAClB,MAAM,CAAC;MACpCiB,UAAU,CAAChB,UAAU,CAAC/B,IAAI,CAACe,MAAM,IAAI8B,GAAG,GAAGD,cAAc;;MAEzD;MACA,IAAMK,gBAAgB,GAAG,CAACzG,SAAS,KAAK,SAAS,IAAIA,SAAS,KAAK,UAAU,MAAKqE,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEjH,MAAM;MACrG,IAAMsJ,gBAAgB,GAAGD,gBAAgB,IAAIjC,MAAM,CAACE,MAAM;MAE1D,IAAIgC,gBAAgB,EAAE;QACpBH,UAAU,CAAChB,UAAU,CAAC/B,IAAI,CAACe,MAAM,IAAI,EAAE;MACzC;MAEA,oBACEjJ,MAAA,YAAAqL,aAAA,CAAClI,oBAAoB;QAACyE,SAAS,EAAEA;MAAU,gBACzC5H,MAAA,YAAAqL,aAAA,CAAC9K,KAAA,CAAA+K,IAAI,MAAAC,SAAA;QACH3F,KAAK,EAAEA,KAAM;QACbuC,aAAa,EAAEA,aAAc;QAC7BqD,aAAa,EAAE,CAAC/F,WAAY;QAC5BgG,SAAS,EAAE,IAAK;QAChBC,UAAU,EAAE,IAAK;QACjBxC,MAAM,EAAEA,MAAO;QACfd,cAAc,EAAEA,cAAe;QAC/BC,kBAAkB,EAAEA,kBAAmB;QACvCC,gBAAgB,EAAEA,gBAAiB;QACnC7C,WAAW,EAAEA,WAAY;QACzBkG,cAAc,EAAE,CAAClG,WAAY;QAC7BmG,OAAO,EAAE,IAAK;QACdlD,eAAe,EAAEA,eAAgB;QACjCmD,OAAO,EAAE,SAATA,OAAOA,CAAG5K,CAAC;UAAA,OAAMyG,MAAI,CAACyC,QAAQ,GAAGlJ,CAAC;QAAA,CAAE;QACpC4H,aAAa,EAAEA,aAAc;QAC7BC,qBAAqB,EAAEA;MAAsB,GACzCmC,UAAU,gBAEdjL,MAAA,YAAAqL,aAAA,CAAC5K,KAAA,WAAS,MAAA8K,SAAA,iBAAKvB,MAAM;QAAEQ,KAAK,EAAEA,KAAM;QAACsB,aAAa,EAAEhC,eAAgB;QAACiC,gBAAgB,EAAElC;MAAc,EAAE,CAAC,eACxG7J,MAAA,YAAAqL,aAAA,CAAC3K,KAAA,WAAS,MAAA6K,SAAA;QACRnH,SAAS,EAAE,IAAI,CAACK,KAAK,CAACL,SAAU;QAChC4H,eAAe,EAAE,IAAI,CAACC;MAAe,GACjCjC,MAAM;QACVvE,WAAW,EAAEA,WAAY;QACzB8D,UAAU,EAAEA,UAAW;QACvBiB,KAAK,EAAEA,KAAM;QACbT,QAAQ,EAAEA,QAAS;QACnBmC,QAAQ,EAAE,IAAI,CAACC,UAAW;QAC1BC,gBAAgB,EAAE,IAAI,CAACC,cAAe;QACtCpE,eAAe,EAAEA,eAAgB;QACjCO,wBAAwB,EAAEA,wBAAyB;QACnDC,qBAAqB,EAAEA,qBAAsB;QAC7CsC,GAAG,EAAEA,GAAI;QACTpC,KAAK,EAAEA,KAAM;QACb2D,eAAe,EAAE5H,SAAS,KAAK,UAAU,IAAIA,SAAS,KAAK;MAAU,EACtE,CAAC,EACD6D,kBAAkB,gBACjBvI,MAAA,YAAAqL,aAAA;QAAehB,CAAC,EAAEhH,KAAM;QAACiH,CAAC,EAAErB,MAAM,GAAG,EAAG;QAAC5F,KAAK,EAAEA,KAAM;QAAC4F,MAAM,EAAEA;MAAO,gBACpEjJ,MAAA,YAAAqL,aAAA;QAAKkB,KAAK,EAAC,8BAA8B;QAACC,KAAK,EAAE;UAAEC,OAAO,EAAE,MAAM;UAAEC,cAAc,EAAE;QAAa;MAAE,gBACjG1M,MAAA,YAAAqL,aAAA,CAACxK,cAAA,WAAa;QACZ0I,UAAU,EAAEA,UAAW;QACvBoD,WAAW,EAAE,IAAI,CAACA,WAAY;QAC9BC,cAAc,EAAE,IAAI,CAACA,cAAe;QACpCjH,QAAQ,EAAEA;MAAS,CACpB,CACE,CACQ,CAAC,GACd,IAAI,eACR3F,MAAA,YAAAqL,aAAA;QAAMwB,EAAE,KAAA3G,MAAA,CAAK,IAAI,CAACe,OAAO;MAAG,gBAC1BjH,MAAA,YAAAqL,aAAA,aAAAE,SAAA,iBAAUnB,QAAQ;QAAE0C,IAAI,EAAC;MAAO,EAAE,CAC9B,CAAC,eACP9M,MAAA,YAAAqL,aAAA;QAAGwB,EAAE,EAAC,OAAO;QAACE,IAAI,WAAA7G,MAAA,CAAW,IAAI,CAACe,OAAO;MAAK,gBAC5CjH,MAAA,YAAAqL,aAAA,CAAC1G,cAAc,MAAA4G,SAAA,iBACTvB,MAAM;QACVhF,IAAI,EAAEuE,UAAW;QACjBN,MAAM,EAAEgC,UAAU,CAAChB,UAAU,CAAC/B,IAAI,CAACe,MAAO;QAC1CxD,WAAW,EAAEA,WAAY;QACzByG,QAAQ,EAAE,IAAI,CAACC,UAAW;QAC1BC,gBAAgB,EAAE,IAAI,CAACC,cAAe;QACtCtD,WAAW,EAAEA;MAAY,EAC1B,CACA,CACC,CAAC,eACP/I,MAAA,YAAAqL,aAAA,CAAC7K,SAAA,CAAAwM,WAAW;QACV3I,IAAI,EAAEG,MAAM,CAACH,IAAK;QAClBuB,KAAK,EAAEpB,MAAM,CAACoB,KAAM;QACpBE,IAAI,EAAEtB,MAAM,CAACsB,IAAK;QAClBmH,OAAO,EAAEzI,MAAM,CAACyI,OAAQ;QACxBjH,SAAS,EAAExB,MAAM,CAACwB;MAAU,CAC7B,CACmB,CAAC;IAE3B;EAAC;AAAA,EA7UwBkH,iBAAK,CAACnI,SAAS;AAAA,IAAA/C,gBAAA,aAA7BsB,KAAK,eAYG;EACjBsE,SAAS,EAAEuF,qBAAS,CAACC,MAAM;EAC3B1I,SAAS,EAAEyI,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCnF,IAAI,EAAEiF,qBAAS,CAACG,KAAK,CAAC;IACpBjK,KAAK,EAAE8J,qBAAS,CAACI,MAAM;IACvBtE,MAAM,EAAEkE,qBAAS,CAACI;EACpB,CAAC,CAAC;EACFzF,MAAM,EAAEqF,qBAAS,CAACG,KAAK,CAAC;IACtBjH,KAAK,EAAE8G,qBAAS,CAACC,MAAM;IACvBI,GAAG,EAAEL,qBAAS,CAACI,MAAM;IACrB1C,GAAG,EAAEsC,qBAAS,CAACI,MAAM;IACrBE,SAAS,EAAEN,qBAAS,CAACC;EACvB,CAAC,CAAC;EACFpI,IAAI,EAAEmI,qBAAS,CAACO,OAAO,CAACP,qBAAS,CAACG,KAAK,CAAC;IAAEjH,KAAK,EAAE8G,qBAAS,CAACC,MAAM;IAAE9G,KAAK,EAAE6G,qBAAS,CAACI;EAAO,CAAC,CAAC,CAAC;EAC9FvF,KAAK,EAAEmF,qBAAS,CAACG,KAAK,CAAC;IACrBjH,KAAK,EAAE8G,qBAAS,CAACC,MAAM;IACvBI,GAAG,EAAEL,qBAAS,CAACI,MAAM;IACrB1C,GAAG,EAAEsC,qBAAS,CAACI,MAAM;IACrBI,IAAI,EAAER,qBAAS,CAACI,MAAM;IACtBK,SAAS,EAAET,qBAAS,CAACI,MAAM;IAC3BE,SAAS,EAAEN,qBAAS,CAACC;EACvB,CAAC,CAAC;EACFxJ,MAAM,EAAEuJ,qBAAS,CAACU,KAAK;EACvBxF,kBAAkB,EAAE8E,qBAAS,CAACW,MAAM;EACpClI,KAAK,EAAEuH,qBAAS,CAACC,MAAM;EACvB9E,gBAAgB,EAAE6E,qBAAS,CAACC,MAAM;EAClCnI,YAAY,EAAEkI,qBAAS,CAACY,IAAI;EAC5B3F,cAAc,EAAE+E,qBAAS,CAACY,IAAI;EAC9B5F,aAAa,EAAEgF,qBAAS,CAACY,IAAI;EAC7BpF,KAAK,EAAEwE,qBAAS,CAACa,GAAG;EACpBzF,kBAAkB,EAAE4E,qBAAS,CAACc,IAAI;EAClCvF,eAAe,EAAEyE,qBAAS,CAACc,IAAI;EAC/BzI,oBAAoB,EAAE2H,qBAAS,CAACC,MAAM;EACtC1H,gBAAgB,EAAEyH,qBAAS,CAACW,MAAM;EAClCrI,WAAW,EAAE0H,qBAAS,CAACc,IAAI;EAC3BC,KAAK,EAAEf,qBAAS,CAACW,MAAM;EACvB7F,eAAe,EAAEkF,qBAAS,CAACW,MAAM;EACjCtF,wBAAwB,EAAE2E,qBAAS,CAACc,IAAI;EACxCxF,qBAAqB,EAAE0E,qBAAS,CAACc,IAAI;EACrCtI,QAAQ,EAAEwH,qBAAS,CAACC,MAAM;EAC1BvE,aAAa,EAAEsE,qBAAS,CAACW,MAAM;EAC/BhF,qBAAqB,EAAEqE,qBAAS,CAACI,MAAM;EACvCxE,WAAW,EAAEoE,qBAAS,CAACO,OAAO,CAC5BP,qBAAS,CAACG,KAAK,CAAC;IACdjH,KAAK,EAAE8G,qBAAS,CAACC,MAAM;IACvB9G,KAAK,EAAE6G,qBAAS,CAACI;EACnB,CAAC,CACH;AACF,CAAC;AAAA,IAAAvL,gBAAA,aA5DUsB,KAAK,kBA8DM;EACpB4E,IAAI,EAAE;IACJ7E,KAAK,EAAE,GAAG;IACV4F,MAAM,EAAE;EACV;AACF,CAAC;AAAA,IAAAkF,QAAA,GAAA5K,OAAA,cA6QYD,KAAK","ignoreList":[]}
1
+ {"version":3,"file":"chart.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_debug","_cloneDeep","_plot","_configUi","_grid","_axes","_utils","_chartTypes","_actionsButton","_translator","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","translator","Translator","log","debug","StyledChartContainer","styled","width","Chart","exports","_React$Component","props","_this","_classCallCheck2","charts","chartTypes","Bar","Histogram","LineDot","LineCross","DotPlot","LinePlot","autoFocus","open","callback","setState","dialog","state","chartType","ChartComponent","chart","find","type","Component","data","onDataChange","index","newCategory","integerIndex","parseInt","_this$props","_this$props2","categoryDefaultLabel","defineChart","categoryDefaults","language","title","lng","text","count","onConfirm","handleAlertDialog","concat","_toConsumableArray2","inDefineChart","label","value","deletable","editable","interactive","_this$props3","_","i","_this$props4","map","d","actionsAnchorEl","maskUid","generateMaskId","_inherits2","_createClass2","key","Math","random","toFixed","render","_this2","_this$props5","_this$props5$domain","domain","_this$props5$range","range","chartingOptions","size","onChangeTitle","onChangeLabels","labelsPlaceholders","titlePlaceholder","addCategoryEnabled","changeInteractiveEnabled","changeEditableEnabled","showPixelGuides","error","_this$props5$mathMlOp","mathMlOptions","labelsCharactersLimit","correctData","_ref","height","labels","left","bottom","_this$getChart","getChart","categories","getFilteredCategories","correctValues","getDomainAndRangeByChartType","_getGridLinesAndAxisB","getGridLinesAndAxisByChartType","verticalLines","horizontalLines","leftAxis","common","graphProps","createGraphProps","rootNode","maskSize","x","y","scale","xBand","dataToXBand","bandWidth","bandwidth","barWidth","max","increaseHeight","top","getTopPadding","rootCommon","cloneDeep","isPlotEvaluation","needsExtraHeight","createElement","Root","_extends2","disabledTitle","showTitle","showLabels","disabledLabels","isChart","rootRef","rowTickValues","columnTickValues","onAutoFocusUsed","resetAutoFocus","onChange","changeData","onChangeCategory","changeCategory","showCorrectness","xmlns","style","display","justifyContent","addCategory","deleteCategory","id","fill","mask","AlertDialog","onClose","React","className","PropTypes","string","isRequired","shape","number","min","axisLabel","arrayOf","step","labelStep","array","object","func","any","bool","theme","_default"],"sources":["../src/chart.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport debug from 'debug';\nimport cloneDeep from 'lodash/cloneDeep';\n\nimport { Root, createGraphProps } from '@pie-lib/plot';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport ChartGrid from './grid';\nimport ChartAxes from './axes';\nimport { dataToXBand, getDomainAndRangeByChartType, getGridLinesAndAxisByChartType, getTopPadding } from './utils';\nimport chartTypes from './chart-types';\nimport ActionsButton from './actions-button';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\n\nconst log = debug('pie-lib:charts:chart');\n\nconst StyledChartContainer = styled('div')(() => ({\n width: 'min-content',\n}));\n\nexport class Chart extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n dialog: {\n open: false,\n },\n actionsAnchorEl: null,\n };\n this.maskUid = this.generateMaskId();\n }\n\n static propTypes = {\n className: PropTypes.string,\n chartType: PropTypes.string.isRequired,\n size: PropTypes.shape({\n width: PropTypes.number,\n height: PropTypes.number,\n }),\n domain: PropTypes.shape({\n label: PropTypes.string,\n min: PropTypes.number,\n max: PropTypes.number,\n axisLabel: PropTypes.string,\n }),\n data: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string, value: PropTypes.number })),\n range: PropTypes.shape({\n label: PropTypes.string,\n min: PropTypes.number,\n max: PropTypes.number,\n step: PropTypes.number,\n labelStep: PropTypes.number,\n axisLabel: PropTypes.string,\n }),\n charts: PropTypes.array,\n labelsPlaceholders: PropTypes.object,\n title: PropTypes.string,\n titlePlaceholder: PropTypes.string,\n onDataChange: PropTypes.func,\n onChangeLabels: PropTypes.func,\n onChangeTitle: PropTypes.func,\n error: PropTypes.any,\n addCategoryEnabled: PropTypes.bool,\n showPixelGuides: PropTypes.bool,\n categoryDefaultLabel: PropTypes.string,\n categoryDefaults: PropTypes.object,\n defineChart: PropTypes.bool,\n theme: PropTypes.object,\n chartingOptions: PropTypes.object,\n changeInteractiveEnabled: PropTypes.bool,\n changeEditableEnabled: PropTypes.bool,\n language: PropTypes.string,\n mathMlOptions: PropTypes.object,\n labelsCharactersLimit: PropTypes.number,\n correctData: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.number,\n }),\n ),\n };\n\n static defaultProps = {\n size: {\n width: 480,\n height: 480,\n },\n };\n\n state = {\n charts: [\n chartTypes.Bar(),\n chartTypes.Histogram(),\n chartTypes.LineDot(),\n chartTypes.LineCross(),\n chartTypes.DotPlot(),\n chartTypes.LinePlot(),\n ],\n autoFocus: false,\n };\n\n generateMaskId() {\n return 'chart-' + (Math.random() * 10000).toFixed();\n }\n\n handleAlertDialog = (open, callback) =>\n this.setState(\n {\n dialog: { open },\n },\n callback,\n );\n\n getChart = () => {\n const charts = this.props.charts || this.state.charts;\n let { chartType } = this.props;\n let ChartComponent = null;\n let chart = null;\n\n if (chartType) {\n chart = charts && charts.find((chart) => chart.type === chartType);\n ChartComponent = chart && chart.Component;\n } else {\n chart = charts && charts[0];\n ChartComponent = chart && chart.Component;\n chartType = chart && chart.type;\n }\n\n return {\n type: chartType,\n ChartComponent,\n };\n };\n\n changeData = (data) => {\n const { onDataChange } = this.props;\n\n onDataChange(data);\n };\n\n changeCategory = (index, newCategory) => {\n const integerIndex = parseInt(index, 10);\n\n if (integerIndex >= 0) {\n const { data, onDataChange } = this.props;\n data[integerIndex] = {\n ...data[integerIndex],\n ...newCategory,\n };\n\n onDataChange(data);\n }\n };\n\n addCategory = () => {\n const { onDataChange, data, categoryDefaultLabel, defineChart, categoryDefaults, language } = this.props;\n\n if ((data || []).length > 19) {\n this.setState({\n dialog: {\n open: true,\n title: translator.t('common:warning', { lng: language }),\n text: translator.t('charting.reachedLimit_other', { count: 20, lng: language }),\n onConfirm: () => this.handleAlertDialog(false),\n },\n });\n } else {\n this.setState({ autoFocus: true });\n onDataChange([\n ...data,\n {\n inDefineChart: defineChart,\n label: categoryDefaultLabel || translator.t('charting.newLabel', { lng: language }),\n value: 0,\n deletable: true,\n editable: categoryDefaults ? categoryDefaults?.editable : true,\n interactive: categoryDefaults ? categoryDefaults?.interactive : true,\n },\n ]);\n }\n };\n\n deleteCategory = (index) => {\n const { data, onDataChange } = this.props;\n\n if (typeof index !== 'number' || index < 0) {\n return;\n }\n\n if (data && data.length > 0) {\n onDataChange(data.filter((_, i) => i !== index));\n }\n };\n\n getFilteredCategories = () => {\n const { data, defineChart } = this.props;\n\n return data\n ? data.map((d) => ({\n ...d,\n deletable: defineChart || d.deletable,\n }))\n : [];\n };\n\n resetAutoFocus = () => {\n this.setState({ autoFocus: false });\n };\n\n render() {\n const {\n domain = {},\n range = {},\n chartingOptions,\n size,\n title,\n onChangeTitle,\n onChangeLabels,\n labelsPlaceholders,\n titlePlaceholder,\n addCategoryEnabled,\n changeInteractiveEnabled,\n changeEditableEnabled,\n showPixelGuides,\n error,\n mathMlOptions = {},\n language,\n labelsCharactersLimit,\n correctData,\n } = this.props;\n let { chartType } = this.props;\n\n const { dialog } = this.state;\n const defineChart = this.props.defineChart || false;\n\n const { width, height } = size || {};\n const labels = { left: range?.label || '', bottom: domain?.label || '' };\n\n const { ChartComponent } = this.getChart();\n const categories = this.getFilteredCategories();\n\n const correctValues = getDomainAndRangeByChartType(domain, range, chartType);\n\n const { verticalLines, horizontalLines, leftAxis } = getGridLinesAndAxisByChartType(correctValues.range, chartType);\n const common = {\n graphProps: createGraphProps(correctValues.domain, correctValues.range, size, () => this.rootNode),\n };\n\n log('[render] common:', common);\n\n const maskSize = { x: -10, y: -75, width: width + 20, height: height + 130 };\n const { scale } = common.graphProps;\n const xBand = dataToXBand(scale.x, categories, width, chartType);\n\n if (!ChartComponent) {\n return null;\n }\n\n const bandWidth = xBand.bandwidth();\n // for chartType \"line\", bandWidth will be 0, so we have to calculate it\n const barWidth = bandWidth || scale.x(correctValues.domain.max) / categories.length;\n const increaseHeight = defineChart ? 160 : 60;\n\n // if there are many categories, we have to rotate their names in order to fit\n // and we have to add extra value on top of some items\n const top = getTopPadding(barWidth);\n const rootCommon = cloneDeep(common);\n rootCommon.graphProps.size.height += top + increaseHeight;\n\n // for plot evaluations we need extra space because we render correctness icon below x axis\n const isPlotEvaluation = (chartType === 'dotPlot' || chartType === 'linePlot') && correctData?.length;\n const needsExtraHeight = isPlotEvaluation && labels.bottom;\n\n if (needsExtraHeight) {\n rootCommon.graphProps.size.height += 25;\n }\n\n return (\n <StyledChartContainer>\n <Root\n title={title}\n onChangeTitle={onChangeTitle}\n disabledTitle={!defineChart}\n showTitle={true}\n showLabels={true}\n labels={labels}\n onChangeLabels={onChangeLabels}\n labelsPlaceholders={labelsPlaceholders}\n titlePlaceholder={titlePlaceholder}\n defineChart={defineChart}\n disabledLabels={!defineChart}\n isChart={true}\n showPixelGuides={showPixelGuides}\n rootRef={(r) => (this.rootNode = r)}\n mathMlOptions={mathMlOptions}\n labelsCharactersLimit={labelsCharactersLimit}\n {...rootCommon}\n >\n <ChartGrid {...common} xBand={xBand} rowTickValues={horizontalLines} columnTickValues={verticalLines} />\n <ChartAxes\n autoFocus={this.state.autoFocus}\n onAutoFocusUsed={this.resetAutoFocus}\n {...common}\n defineChart={defineChart}\n categories={categories}\n xBand={xBand}\n leftAxis={leftAxis}\n onChange={this.changeData}\n onChangeCategory={this.changeCategory}\n chartingOptions={chartingOptions}\n changeInteractiveEnabled={changeInteractiveEnabled}\n changeEditableEnabled={changeEditableEnabled}\n top={top}\n error={error}\n showCorrectness={chartType === 'linePlot' || chartType === 'dotPlot'}\n />\n {addCategoryEnabled ? (\n <foreignObject x={width} y={height - 16} width={width} height={height}>\n <div xmlns=\"http://www.w3.org/1999/xhtml\" style={{ display: 'flex', justifyContent: 'flex-start' }}>\n <ActionsButton\n categories={categories}\n addCategory={this.addCategory}\n deleteCategory={this.deleteCategory}\n language={language}\n />\n </div>\n </foreignObject>\n ) : null}\n <mask id={`${this.maskUid}`}>\n <rect {...maskSize} fill=\"white\" />\n </mask>\n <g id=\"marks\" mask={`url('#${this.maskUid}')`}>\n <ChartComponent\n {...common}\n data={categories}\n height={rootCommon.graphProps.size.height}\n defineChart={defineChart}\n onChange={this.changeData}\n onChangeCategory={this.changeCategory}\n correctData={correctData}\n />\n </g>\n </Root>\n <AlertDialog\n open={dialog.open}\n title={dialog.title}\n text={dialog.text}\n onClose={dialog.onClose}\n onConfirm={dialog.onConfirm}\n />\n </StyledChartContainer>\n );\n }\n}\n\nexport default Chart;\n"],"mappings":"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","ignoreList":[]}