From 37b7046ffaa39c45ed5b0647f617018d2d9721d9 Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Tue, 14 Oct 2025 12:10:44 +0200 Subject: [PATCH 01/10] [UIK-4320][d3-chart] added support for multiline tick labels --- semcore/d3-chart/CHANGELOG.md | 5 +- semcore/d3-chart/src/Axis.jsx | 78 ++++++++++++++++++- .../src/component/Chart/AbstractChart.tsx | 20 +++-- .../src/component/Chart/AbstractChart.type.ts | 4 + semcore/d3-chart/src/types/Axis.d.ts | 2 + .../docs/examples/bar-chart/basic-usage.tsx | 2 +- .../docs/examples/bar-chart/grouped-bars.tsx | 2 +- 7 files changed, 101 insertions(+), 12 deletions(-) diff --git a/semcore/d3-chart/CHANGELOG.md b/semcore/d3-chart/CHANGELOG.md index 27a56a7d33..eb2d7a34fa 100644 --- a/semcore/d3-chart/CHANGELOG.md +++ b/semcore/d3-chart/CHANGELOG.md @@ -4,11 +4,14 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel ## [16.2.1] - 2025-10-17 +### Added + +- New `multiline` property for `XAxis.Ticks/YAxis.Ticks` and `multilineXTicks/multilineYTicks` for `Chart`. + ### Fixed - Chart content remains visible after unchecking single legend item in Bar, Horizontal Bar, Histogram, and Stacked Horizontal Bar charts. - ## [16.2.0] - 2025-10-03 ### Changed diff --git a/semcore/d3-chart/src/Axis.jsx b/semcore/d3-chart/src/Axis.jsx index d829883822..4a1447bcb1 100644 --- a/semcore/d3-chart/src/Axis.jsx +++ b/semcore/d3-chart/src/Axis.jsx @@ -1,5 +1,5 @@ import { Component, sstyled } from '@semcore/core'; -import React from 'react'; +import React, { useState, useEffect } from 'react'; import createElement from './createElement'; import style from './style/axis.shadow.css'; @@ -186,6 +186,51 @@ function renderValue(value) { return value; } +function splitTextByWidth(root, text, maxWidth) { + if (!text || !maxWidth || maxWidth <= 0) return []; + + const words = text.split(/\s+/).filter((word) => word.length > 0); + if (words.length === 0) return []; + + const lines = []; + let currentLine = words[0]; + + for (let i = 1; i < words.length; i++) { + const testLine = `${currentLine} ${words[i]}`; + const testWidth = measureTextWidth(root, testLine); + + if (testWidth <= maxWidth) { + currentLine = testLine; + } else { + lines.push(currentLine); + currentLine = words[i]; + + if (measureTextWidth(root, currentLine) > maxWidth) { + lines.push(currentLine); + currentLine = ''; + } + } + } + + if (currentLine) { + lines.push(currentLine); + } + + return lines; +} + +function measureTextWidth(rootRef, text, fontSize = 12) { + const textEl = document.createElementNS('http://www.w3.org/2000/svg', 'text'); + textEl.setAttribute('font-size', fontSize); + textEl.setAttribute('visibility', 'hidden'); + textEl.textContent = text; + + rootRef.appendChild(textEl); + const width = textEl.getComputedTextLength(); + rootRef.removeChild(textEl); + return width; +} + class AxisRoot extends Component { static displayName = 'Axis'; @@ -246,8 +291,31 @@ function Ticks(props) { dataHintsHandler, children, childrenPosition = 'inside', + rootRef, + multiline, } = props; + const [ticksState, setTicksState] = useState([]); + + useEffect(() => { + const tickBandwidth = scale[indexScale]?.bandwidth?.(); + + const ticksWithLines = ticks.map((tick) => { + let lines = []; + + if (typeof tick === 'string' && multiline) { + lines = splitTextByWidth(rootRef.current, tick, tickBandwidth); + } + + return { + tick, + lines, + }; + }); + + setTicksState(ticksWithLines); + }, [ticks, multiline]); + const pos = MAP_POSITION_TICK[position] ?? MAP_POSITION_TICK[MAP_INDEX_SCALE_SYMBOL[indexScale]]; const positionClass = MAP_POSITION_TICK[position] ? position : `custom_${indexScale}`; @@ -263,7 +331,7 @@ function Ticks(props) { } } - return ticks.map((value, i) => { + return ticksState.map(({ tick: value, lines }, i) => { const displayValue = typeof children === 'function' ? undefined : renderValue(value); return sstyled(styles)( @@ -279,7 +347,11 @@ function Ticks(props) { hide={hide} {...pos(scale, value, position)} > - {displayValue} + { lines.length > 1 + ? lines.map((line, lineIndex) => ( + {line} + )) + : displayValue} , ); }); diff --git a/semcore/d3-chart/src/component/Chart/AbstractChart.tsx b/semcore/d3-chart/src/component/Chart/AbstractChart.tsx index 3813c0beea..bace577f42 100644 --- a/semcore/d3-chart/src/component/Chart/AbstractChart.tsx +++ b/semcore/d3-chart/src/component/Chart/AbstractChart.tsx @@ -401,8 +401,16 @@ export abstract class AbstractChart< } protected renderAxis(): React.ReactNode { - const { invertAxis, showXAxis, showYAxis, data, axisXValueFormatter, axisYValueFormatter } = - this.asProps; + const { + invertAxis, + showXAxis, + showYAxis, + data, + axisXValueFormatter, + axisYValueFormatter, + multilineXTicks, + multilineYTicks, + } = this.asProps; if (!Array.isArray(data)) { return null; @@ -424,10 +432,10 @@ export abstract class AbstractChart< {yTicks ? ( - {childrenY} + {childrenY} ) : ( - {childrenY} + {childrenY} )} {invertAxis !== true && (yTicks ? : )} @@ -437,10 +445,10 @@ export abstract class AbstractChart< {xTicks ? ( - {childrenX} + {childrenX} ) : ( - {childrenX} + {childrenX} )} {invertAxis === true && (xTicks ? : )} diff --git a/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts b/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts index a4971ac17a..1a2feb82a3 100644 --- a/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts +++ b/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts @@ -124,6 +124,10 @@ export type BaseChartProps = FlexProps & * Count of ticks for Y axis */ yTicksCount?: number; + /** Enables multiline tick labels for X axis. */ + multilineXTicks?: boolean; + /** Enables multiline tick labels for Y axis. */ + multilineYTicks?: boolean; /** * Group key for all array-based charts (for get keys of items for legend except that group key) */ diff --git a/semcore/d3-chart/src/types/Axis.d.ts b/semcore/d3-chart/src/types/Axis.d.ts index 2be5914ef0..70cb0daa11 100644 --- a/semcore/d3-chart/src/types/Axis.d.ts +++ b/semcore/d3-chart/src/types/Axis.d.ts @@ -38,6 +38,8 @@ export type AxisTicksProps = Context & { hide?: boolean; /** Values for axis ticks */ ticks?: any[]; + /** Enables multiline tick labels. */ + multiline?: boolean; }; /** @deprecated */ diff --git a/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx b/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx index d87decefda..afd1abb4bd 100644 --- a/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx +++ b/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx @@ -16,7 +16,7 @@ const Demo = () => { const data = Array(5) .fill({}) .map((d, i) => ({ - category: `Category ${i}`, + category: `Google AI Mode ${i} Tops`, bar: Math.random() * 10, })); diff --git a/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx b/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx index f4be426561..c6824c01ef 100644 --- a/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx +++ b/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx @@ -56,7 +56,7 @@ const Demo = () => { const data = Array(5) .fill({}) .map((d, i) => ({ - category: `Category ${i}`, + category: `Google AI Mode ${i}`, bar1: Math.random() * 10, bar2: Math.random() * 10, })); From ff115580963c7b6db231edaad69bf3f884714e6a Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Wed, 15 Oct 2025 12:31:56 +0200 Subject: [PATCH 02/10] [UIK-4320][d3-chart] returned default test data --- .../components/d3-chart/docs/examples/bar-chart/basic-usage.tsx | 2 +- .../d3-chart/docs/examples/bar-chart/grouped-bars.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx b/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx index afd1abb4bd..d87decefda 100644 --- a/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx +++ b/stories/components/d3-chart/docs/examples/bar-chart/basic-usage.tsx @@ -16,7 +16,7 @@ const Demo = () => { const data = Array(5) .fill({}) .map((d, i) => ({ - category: `Google AI Mode ${i} Tops`, + category: `Category ${i}`, bar: Math.random() * 10, })); diff --git a/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx b/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx index c6824c01ef..f4be426561 100644 --- a/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx +++ b/stories/components/d3-chart/docs/examples/bar-chart/grouped-bars.tsx @@ -56,7 +56,7 @@ const Demo = () => { const data = Array(5) .fill({}) .map((d, i) => ({ - category: `Google AI Mode ${i}`, + category: `Category ${i}`, bar1: Math.random() * 10, bar2: Math.random() * 10, })); From 038e36cff2596c2b33b6ae037b4bcefcae717872 Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Wed, 15 Oct 2025 12:53:57 +0200 Subject: [PATCH 03/10] [UIK-4320][d3-chart] added browser test --- .../__tests__/bar-chart.browser-test.tsx | 19 ++++++++++++++++++ ...multiline-tick-labels-1-chromium-linux.png | Bin 0 -> 15283 bytes ...-multiline-tick-labels-1-firefox-linux.png | Bin 0 -> 35447 bytes ...y-multiline-tick-labels-1-webkit-linux.png | Bin 0 -> 11708 bytes .../tests/examples/bar-chart/basic-usage.tsx | 17 ++++++++++++---- 5 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-chromium-linux.png create mode 100644 semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-firefox-linux.png create mode 100644 semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-webkit-linux.png diff --git a/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx b/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx index ff5df0665d..0324ba1ea1 100644 --- a/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx +++ b/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx @@ -297,4 +297,23 @@ test.describe('Bar chart', () => { await page.waitForTimeout(500); await expect(page).toHaveScreenshot(); }); + + test('Verify multiline tick labels', async ({ page }) => { + const standPath = 'stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx'; + const htmlContent = await e2eStandToHtml(standPath, 'en', { + data: [ + { category: 'Google AI Mode 0 Top', bar: 2 }, + { category: 'Google AI Mode 1 Top', bar: 5 }, + { category: 'Google AI Mode 2 Top', bar: 7 }, + { category: 'Google AI Mode 3 Top', bar: 4 }, + { category: 'Google AI Mode 4 Top', bar: 8 }, + ], + multilineXTicks: true, + marginX: 60, + }); + + await page.setContent(htmlContent); + + await expect(page).toHaveScreenshot(); + }); }); diff --git a/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-chromium-linux.png b/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-chromium-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..2856ef949453d70b7a08b0c8ea7e6e477989f556 GIT binary patch literal 15283 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 JzukNG{{Uv>13dr$ literal 0 HcmV?d00001 diff --git a/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-firefox-linux.png b/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-firefox-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..07b0c3c1e1dc3b439e2cbde60cbd77973e00cb19 GIT binary patch literal 35447 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 literal 0 HcmV?d00001 diff --git a/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-webkit-linux.png b/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-webkit-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..2bb50684e5d3dd6fb5557831bd6cbadf2fefbbb6 GIT binary patch literal 11708 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 literal 0 HcmV?d00001 diff --git a/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx b/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx index 805aaa027a..a952852a7e 100644 --- a/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx +++ b/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx @@ -1,27 +1,36 @@ import { Chart } from '@semcore/ui/d3-chart'; import React from 'react'; + type BaseExampleProps = { showLegend?: boolean; + multilineXTicks?: boolean; + marginX?: number; + data?: Array<{ + category: string; + bar: number; + }>; }; + const Demo = (props: BaseExampleProps) => { - const { showLegend } = props; + const { showLegend, multilineXTicks, data, marginX } = props; return ( <> { /* @ts-ignore: the value is not statically known, but it's valid at runtime */} - ); }; -const data = [ +const defaultData = [ { category: 'Category 0', bar: 2 }, { category: 'Category 1', bar: 5 }, { category: 'Category 2', bar: 7 }, From 4a37411018d0f0038b0b02918a83237686a96101 Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Wed, 15 Oct 2025 12:56:06 +0200 Subject: [PATCH 04/10] [UIK-4320][d3-chart] updated changelog --- semcore/d3-chart/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/semcore/d3-chart/CHANGELOG.md b/semcore/d3-chart/CHANGELOG.md index eb2d7a34fa..3aebfdc3db 100644 --- a/semcore/d3-chart/CHANGELOG.md +++ b/semcore/d3-chart/CHANGELOG.md @@ -2,7 +2,7 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/). -## [16.2.1] - 2025-10-17 +## [16.3.0] - 2025-10-17 ### Added From 096ed57034550c1271e04530cb51a8b43c716144 Mon Sep 17 00:00:00 2001 From: Valeryia Zimnitskaya Date: Fri, 17 Oct 2025 16:18:34 +0200 Subject: [PATCH 05/10] [d3-chart] update stories and snapshot --- ...ooltip-shown-on-hover-1-chromium-linux.png | Bin 15211 -> 17939 bytes ...tooltip-shown-on-hover-1-firefox-linux.png | Bin 36486 -> 41231 bytes ...-tooltip-shown-on-hover-1-webkit-linux.png | Bin 15726 -> 20076 bytes .../d3-chart/tests/bar-chart.stories.tsx | 14 ++ .../d3-chart/tests/d3-chart-base.stories.tsx | 17 ++- .../tests/examples/bar-chart/basic-usage.tsx | 11 +- .../examples/bar-horizontal/basic-usage.tsx | 2 + .../examples/d3-chart/grid-axis-props.tsx | 144 +++++++++++++++--- 8 files changed, 166 insertions(+), 22 deletions(-) diff --git a/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-chromium-linux.png b/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-chromium-linux.png index af84d4dd898df5170f20b99b276c367055368fc0..539000acbb01885314d34a07e6ecb9ac0c64b784 100644 GIT binary patch literal 17939 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 A4*&oF literal 15211 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 F{|kYLRQ><} diff --git a/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-firefox-linux.png b/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-firefox-linux.png index 3ebb905d80918671a7d282be4179f51a3f93e68a..68f669db82d367a9e07e3ddf04e98de4bad121cc 100644 GIT binary patch literal 41231 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 literal 36486 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 diff --git a/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-webkit-linux.png b/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-webkit-linux.png index 03f211c3c4cd31c70236fb85cafb29ab0cc69119..2615abc9ad8173d9fe6a4a4f026af88a58fb266b 100644 GIT binary patch literal 20076 zcmeHvXIPWV+HR~^5Tti-1r?AI1?g1^%k^H?E9?6RYPnQ>FH7my} z!@@Ump2EM~Hlqk^In7>sF*7zdVxZ68E_^tMli#`mI1a!+K+uWGE_7&As-N z${cjhP~=|Bu^P|Rva&vPn7{jt>hyia2hYK`b)Wa~5%+~tocH@ayZpbPtxCdw)99(v?ZVEk^+m5@^mk4bcP}e^~Khq#16~6Wz*WBM5t4`K>HA@ zXoa~{s+8N1g}pLWj)Nt6a8hf2j@8~6ClTC4g}Bz;$9SiD@!JE}EWE94*v{c^UCrz= z&rw$BO5wWb=@{ZYXB+S={2}C|ITW5feVg=JOMRi1^a^=$4RVI`$`|n8Zs3h(nWaEJ zu#W5(j#6BTxTmIk=nthX$=pvj2R}7`k8eY4?Of$Dk z>b8*mznbl9755u)j$+SCj(IVJVXVQMx{kSllLc{6OR+icF;jrdPW3dxrB>^d+xpHY zjGPaQ7`eM%hL68N&47+B$g;XAe1SC7EK;I_*5>X&)ofWNB`#G>P3;zxSJSt6{4i=6 z<8D2#kCh$WI9GL!UDZ$DHxPyNG9WYsoknqS*4=;}$=x2M+*%qOoOAj7a{;Zdy zl&4+NVP7#Kz0~$1TJB@fmoHIuMtE0g`tU*9a+3yC59wWT@qT_gQ`4`s3Xke|NHRcN zKB&<8yRQ_q;hLXh8c;DI>V)^LDMCVw7%$TcbX=)+N2LyyuT*({zY=U6byu{Zw}2q# z*7D`oui|YDACJ}cvCjADH=2hN#3xeqr7v?v&pz4E=jRcyUfq?Sj1D#rYxL%o$;+31 zpO&Usa-6Hko|uFDHGZSnWX%JW`i4s-IazAAe7%^u?)G%6ftY*S;%3UpiINMRl|S|M z+YF3vv18ptLt}c?C{W=#yXp pFKa)_?5absu2aEheGRwNrHOQo`I%86af(Gp*P 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 literal 15726 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 Z6?h!JIO}{Ro0~G=dd8OvbngE0zW|gb9Ay9i diff --git a/stories/components/d3-chart/tests/bar-chart.stories.tsx b/stories/components/d3-chart/tests/bar-chart.stories.tsx index e25ab7eb46..0253cf9f44 100644 --- a/stories/components/d3-chart/tests/bar-chart.stories.tsx +++ b/stories/components/d3-chart/tests/bar-chart.stories.tsx @@ -36,6 +36,20 @@ export const BasicUsage: StoryObj = { control: 'select', options: [true, false, undefined], }, + multilineXTicks: { + control: 'select', + options: [true, false, undefined], + }, + marginX: { + control: 'number', + }, + multilineYTicks: { + control: 'select', + options: [true, false, undefined], + }, + marginY: { + control: 'number', + }, }, args: BasicUsageProps, }; diff --git a/stories/components/d3-chart/tests/d3-chart-base.stories.tsx b/stories/components/d3-chart/tests/d3-chart-base.stories.tsx index 6f204af4b2..fed15d9e24 100644 --- a/stories/components/d3-chart/tests/d3-chart-base.stories.tsx +++ b/stories/components/d3-chart/tests/d3-chart-base.stories.tsx @@ -1,7 +1,7 @@ import type { Meta, StoryObj } from '@storybook/react-vite'; import AdaptivePropsExample from './examples/d3-chart/adaptive-props'; -import GridAxisPropsExample from './examples/d3-chart/grid-axis-props'; +import GridAxisPropsExample, { defaultProps as BasicUsageProps } from './examples/d3-chart/grid-axis-props'; import PlotAndA11yPropsExample from './examples/d3-chart/plot-props'; import ReferenceLinePropsExample from './examples/d3-chart/reference-line-props'; import TooltipHoverExample from './examples/d3-chart/tooltip-and-hover-line'; @@ -16,8 +16,21 @@ export const PlotAndA11yProps: StoryObj = { render: PlotAndA11yPropsExample, }; -export const GridAxisProps: StoryObj = { +export const GridAxisProps: StoryObj = { render: GridAxisPropsExample, + argTypes: { + multiline: { + control: 'select', + options: [true, false, undefined], + }, + marginX: { + control: 'number', + }, + marginY: { + control: 'number', + }, + }, + args: BasicUsageProps, }; export const ReferenceLineProps: StoryObj = { diff --git a/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx b/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx index a952852a7e..c0b27ef635 100644 --- a/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx +++ b/stories/components/d3-chart/tests/examples/bar-chart/basic-usage.tsx @@ -5,6 +5,8 @@ type BaseExampleProps = { showLegend?: boolean; multilineXTicks?: boolean; marginX?: number; + multilineYTicks?: boolean; + marginY?: number; data?: Array<{ category: string; bar: number; @@ -12,7 +14,7 @@ type BaseExampleProps = { }; const Demo = (props: BaseExampleProps) => { - const { showLegend, multilineXTicks, data, marginX } = props; + const { showLegend, multilineXTicks, data, marginX, multilineYTicks, marginY } = props; return ( <> { /* @ts-ignore: the value is not statically known, but it's valid at runtime */} @@ -25,6 +27,8 @@ const Demo = (props: BaseExampleProps) => { showLegend={showLegend} multilineXTicks={multilineXTicks} marginX={marginX} + multilineYTicks={multilineYTicks} + marginY={marginY} /> ); @@ -40,7 +44,10 @@ const defaultData = [ export const defaultProps: BaseExampleProps = { showLegend: undefined, - + multilineXTicks: undefined, + marginX: undefined, + multilineYTicks: undefined, + marginY: undefined, }; export default Demo; diff --git a/stories/components/d3-chart/tests/examples/bar-horizontal/basic-usage.tsx b/stories/components/d3-chart/tests/examples/bar-horizontal/basic-usage.tsx index df23ab0e33..9932c166cc 100644 --- a/stories/components/d3-chart/tests/examples/bar-horizontal/basic-usage.tsx +++ b/stories/components/d3-chart/tests/examples/bar-horizontal/basic-usage.tsx @@ -17,6 +17,8 @@ const Demo = (props: BaseExampleProps) => { invertAxis={true} aria-label='CompactHorizontalBar chart' showLegend={showLegend} + multilineYTicks={true} + marginY={100} /> ); diff --git a/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx b/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx index ce018b9082..a4ce51e011 100644 --- a/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx +++ b/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx @@ -3,7 +3,15 @@ import { Flex } from '@semcore/ui/flex-box'; import { scaleLinear, scaleBand } from 'd3-scale'; import React from 'react'; -const Demo = () => { +type BaseExampleProps = { + marginX?: number; + marginY?: number; + multiline?: boolean; +}; + +const Demo = (props: BaseExampleProps) => { + const { marginX, marginY } = props; + const MARGIN = 40; const width = 250; const height = 200; @@ -37,17 +45,29 @@ const Demo = () => { return ( - + - + - + @@ -57,7 +77,12 @@ const Demo = () => { - + @@ -71,7 +96,12 @@ const Demo = () => { - + @@ -84,44 +114,101 @@ const Demo = () => { + + + + + + + + {({ value }) => ({ + children: [ + yScale.tickFormat(5, '+%')(value / 10), + 'per 10 units', + ], + })} + + + + - + - + YAxis title - + XAxis title - + - + YAxis title - + XAxis title - + YAxis title - + XAxis title @@ -129,7 +216,12 @@ const Demo = () => { - + @@ -142,7 +234,12 @@ const Demo = () => { - + @@ -154,7 +251,12 @@ const Demo = () => { - + @@ -179,8 +281,14 @@ const data = Array(20) const data2 = Array(5) .fill({}) .map((d, i) => ({ - category: `Cat ${i}`, + category: `Cat Cat Cat ${i}`, bar: Math.sin(i / 2) * 5 + 5, })); +export const defaultProps: BaseExampleProps = { + marginX: undefined, + marginY: undefined, + multiline: undefined, +}; + export default Demo; From e47c500e142b0ddbabed8aea6898455bc6fe02a9 Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Thu, 23 Oct 2025 15:25:37 +0200 Subject: [PATCH 06/10] [UIK-4320][d3-chart] splitTextByWidth fixes + updated prop comments --- semcore/d3-chart/CHANGELOG.md | 724 +++++++++--------- semcore/d3-chart/src/Axis.jsx | 7 +- .../src/component/Chart/AbstractChart.type.ts | 4 +- semcore/d3-chart/src/types/Axis.d.ts | 2 +- 4 files changed, 370 insertions(+), 367 deletions(-) diff --git a/semcore/d3-chart/CHANGELOG.md b/semcore/d3-chart/CHANGELOG.md index 7715b644f3..eb8926c85a 100644 --- a/semcore/d3-chart/CHANGELOG.md +++ b/semcore/d3-chart/CHANGELOG.md @@ -6,1054 +6,1054 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel ### Added -* New `multiline` property for `XAxis.Ticks/YAxis.Ticks` and `multilineXTicks/multilineYTicks` for `Chart`. +- New `multiline` property for `XAxis.Ticks/YAxis.Ticks` and `multilineXTicks/multilineYTicks` for `Chart`. ### Fixed -* Chart content remains visible after unchecking single legend item in Bar, Horizontal Bar, Histogram, and Stacked Horizontal Bar charts. +- Chart content remains visible after unchecking single legend item in Bar, Horizontal Bar, Histogram, and Stacked Horizontal Bar charts. ## [16.2.1] - 2025-10-17 ### Fixed -* Chart content remains visible after unchecking single legend item in Bar, Horizontal Bar, Histogram, and Stacked Horizontal Bar charts. -* Clicking on pattern icons in legend items with checkboxes has no effect despite interactive cursor. -* Improve interaction handling for `Chart.Legend` items (custom shapes, child components, etc.) +- Chart content remains visible after unchecking single legend item in Bar, Horizontal Bar, Histogram, and Stacked Horizontal Bar charts. +- Clicking on pattern icons in legend items with checkboxes has no effect despite interactive cursor. +- Improve interaction handling for `Chart.Legend` items (custom shapes, child components, etc.) ## [16.2.0] - 2025-10-03 ### Changed -* Focus styles for `Plot`. +- Focus styles for `Plot`. ### Fixed -* Error with `display` property on html element in the `Dots` component. +- Error with `display` property on html element in the `Dots` component. ## [16.1.4] - 2025-09-17 ### Changed -* Version patch update due to children dependencies update (`@semcore/checkbox` [16.1.2 ~> 16.1.3], `@semcore/base-components` [16.2.2 ~> 16.2.3]). +- Version patch update due to children dependencies update (`@semcore/checkbox` [16.1.2 ~> 16.1.3], `@semcore/base-components` [16.2.2 ~> 16.2.3]). ## [16.1.3] - 2025-09-05 ### Changed -* Version patch update due to children dependencies update (`@semcore/checkbox` [16.1.1 ~> 16.1.2], `@semcore/icon` [16.6.0 ~> 16.7.0], `@semcore/base-components` [16.2.1 ~> 16.2.2]). +- Version patch update due to children dependencies update (`@semcore/checkbox` [16.1.1 ~> 16.1.2], `@semcore/icon` [16.6.0 ~> 16.7.0], `@semcore/base-components` [16.2.1 ~> 16.2.2]). ## [16.1.2] - 2025-08-29 ### Changed -* Type description for `PlotProps`/`ReferenceLineProps`/`AreaChartProps`/`BarChartProps`/`BubbleChartProps`/`CigaretteChartProps`/`DonutChartProps`/`HistogramChartProps`/`LineChartProps`/`RadialTreeProps`/`ScatterPlotChartProps`/`VennChartProps`/`CompactHorizontalBarChartProps`. +- Type description for `PlotProps`/`ReferenceLineProps`/`AreaChartProps`/`BarChartProps`/`BubbleChartProps`/`CigaretteChartProps`/`DonutChartProps`/`HistogramChartProps`/`LineChartProps`/`RadialTreeProps`/`ScatterPlotChartProps`/`VennChartProps`/`CompactHorizontalBarChartProps`. ## [16.1.1] - 2025-08-08 ### Fixed -* Legend hides for single item even when `showLegend=true`. +- Legend hides for single item even when `showLegend=true`. ## [16.1.0] - 2025-07-23 ### Added -* `onClickArea` handler for `Chart.Area`. -* `onClickBubble` handler for `Chart.Bubble`. -* `onClickPie` handler for `Chart.Donut`. -* `onClickLine` handler for `Chart.Line`. -* `onClickRadar` handler for `Chart.Radar`. -* `onClickScatterItem` handler for `Chart.ScatterPlot`. -* `onClickVennItem` handler for `Chart.Venn`. -* `onClick` handlers for `Area`, `Bubble`, `Donut`, `Dots`, `Line`, `Radar`, `ScatterPlot`, `Venn`. +- `onClickArea` handler for `Chart.Area`. +- `onClickBubble` handler for `Chart.Bubble`. +- `onClickPie` handler for `Chart.Donut`. +- `onClickLine` handler for `Chart.Line`. +- `onClickRadar` handler for `Chart.Radar`. +- `onClickScatterItem` handler for `Chart.ScatterPlot`. +- `onClickVennItem` handler for `Chart.Venn`. +- `onClick` handlers for `Area`, `Bubble`, `Donut`, `Dots`, `Line`, `Radar`, `ScatterPlot`, `Venn`. ## [16.0.8] - 2025-07-23 ### Fixed -* Tooltip in Compact Horizontal Bar always shows data from the first bar. +- Tooltip in Compact Horizontal Bar always shows data from the first bar. ## [16.0.7] - 2025-07-03 ### Fixed -* Donut chart hover issues when paddingAngle is set without innerRadius. +- Donut chart hover issues when paddingAngle is set without innerRadius. ## [16.0.6] - 2025-06-30 ### Fixed -* a11y error - "SVG element missing accessible name". +- a11y error - "SVG element missing accessible name". ## [16.0.5] - 2025-06-23 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [16.0.2 ~> 16.0.3], `@semcore/checkbox` [16.0.2 ~> 16.0.3], `@semcore/base-components` [16.0.2 ~> 16.1.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [16.0.2 ~> 16.0.3], `@semcore/checkbox` [16.0.2 ~> 16.0.3], `@semcore/base-components` [16.0.2 ~> 16.1.0]). ## [16.0.4] - 2025-06-09 ### Fixed -* Legend for `Bubble` chart. +- Legend for `Bubble` chart. ### Added -* New `Bubble` child component (`Bubble.Circle`) which incapsulates all the inner logic of how to draw a circle. +- New `Bubble` child component (`Bubble.Circle`) which incapsulates all the inner logic of how to draw a circle. ## [16.0.3] - 2025-06-05 ### Fixed -* Legend item behavior when the it's in unchecked state but the chart line dedicated to it behaves as active. -* Animation for `Dots` with pattern. -* Unsupported attributes on DOM nodes in `Area` chart. +- Legend item behavior when the it's in unchecked state but the chart line dedicated to it behaves as active. +- Animation for `Dots` with pattern. +- Unsupported attributes on DOM nodes in `Area` chart. ## [16.0.2] - 2025-05-30 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [16.0.0 ~> 16.0.1], `@semcore/checkbox` [16.0.0 ~> 16.0.1], `@semcore/icon` [16.1.0 ~> 16.2.0], `@semcore/base-components` [16.0.0 ~> 16.0.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [16.0.0 ~> 16.0.1], `@semcore/checkbox` [16.0.0 ~> 16.0.1], `@semcore/icon` [16.1.0 ~> 16.2.0], `@semcore/base-components` [16.0.0 ~> 16.0.1]). ## [16.0.1] - 2025-05-23 ### Fixed -* Esm-build by vite. +- Esm-build by vite. ## [16.0.0] - 2025-05-19 ### Added -* Major version. +- Major version. ## [3.60.2] - 2025-05-13 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.41.3 ~> 2.41.4], `@semcore/checkbox` [7.44.3 ~> 7.44.4], `@semcore/utils` [4.48.4 ~> 4.48.5], `@semcore/core` [2.39.3 ~> 2.39.4]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.41.3 ~> 2.41.4], `@semcore/checkbox` [7.44.3 ~> 7.44.4], `@semcore/utils` [4.48.4 ~> 4.48.5], `@semcore/core` [2.39.3 ~> 2.39.4]). ## [3.60.1] - 2025-05-09 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.41.2 ~> 2.41.3], `@semcore/checkbox` [7.44.2 ~> 7.44.3], `@semcore/utils` [4.48.2 ~> 4.48.4], `@semcore/icon` [4.61.0 ~> 4.62.0], `@semcore/core` [2.39.2 ~> 2.39.3]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.41.2 ~> 2.41.3], `@semcore/checkbox` [7.44.2 ~> 7.44.3], `@semcore/utils` [4.48.2 ~> 4.48.4], `@semcore/icon` [4.61.0 ~> 4.62.0], `@semcore/core` [2.39.2 ~> 2.39.3]). ## [3.60.0] - 2025-04-11 ### Changed -* Version minor update due to children dependencies update (`@semcore/icon` [4.60.2 ~> 4.61.0]). +- Version minor update due to children dependencies update (`@semcore/icon` [4.60.2 ~> 4.61.0]). ## [3.59.2] - 2025-04-04 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.41.1 ~> 2.41.2], `@semcore/checkbox` [7.44.1 ~> 7.44.2], `@semcore/utils` [4.48.1 ~> 4.48.2], `@semcore/core` [2.39.1 ~> 2.39.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.41.1 ~> 2.41.2], `@semcore/checkbox` [7.44.1 ~> 7.44.2], `@semcore/utils` [4.48.1 ~> 4.48.2], `@semcore/core` [2.39.1 ~> 2.39.2]). ## [3.59.1] - 2025-03-20 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.41.0 ~> 2.41.1], `@semcore/checkbox` [7.44.0 ~> 7.44.1], `@semcore/utils` [4.48.0 ~> 4.48.1], `@semcore/icon` [4.60.0 ~> 4.60.1], `@semcore/core` [2.39.0 ~> 2.39.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.41.0 ~> 2.41.1], `@semcore/checkbox` [7.44.0 ~> 7.44.1], `@semcore/utils` [4.48.0 ~> 4.48.1], `@semcore/icon` [4.60.0 ~> 4.60.1], `@semcore/core` [2.39.0 ~> 2.39.1]). ## [3.59.0] - 2025-03-14 ### Added -* Build for ESM. +- Build for ESM. ## [3.58.7] - 2025-02-05 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.40.0 ~> 2.40.1], `@semcore/flex-box` [5.40.0 ~> 5.40.1], `@semcore/utils` [4.45.0 ~> 4.45.1], `@semcore/core` [2.38.0 ~> 2.38.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.40.0 ~> 2.40.1], `@semcore/flex-box` [5.40.0 ~> 5.40.1], `@semcore/utils` [4.45.0 ~> 4.45.1], `@semcore/core` [2.38.0 ~> 2.38.1]). ## [3.58.6] - 2025-02-03 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.39.1 ~> 2.40.0], `@semcore/popper` [5.45.1 ~> 5.45.2], `@semcore/utils` [4.44.1 ~> 4.45.0], `@semcore/core` [2.37.1 ~> 2.38.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.39.1 ~> 2.40.0], `@semcore/popper` [5.45.1 ~> 5.45.2], `@semcore/utils` [4.44.1 ~> 4.45.0], `@semcore/core` [2.37.1 ~> 2.38.0]). ## [3.58.5] - 2024-12-20 ### Added -* `aria-hidden="true"` to `PatternSymbol` inside `LegendItem` to improve A11Y. +- `aria-hidden="true"` to `PatternSymbol` inside `LegendItem` to improve A11Y. ## [3.58.4] - 2024-12-19 ### Removed -* `aria-labelledby` from `LegendItem` with shapes other, than checkbox. +- `aria-labelledby` from `LegendItem` with shapes other, than checkbox. ### Changed -* `aria-labelledby` value in `LegendItem` to unique id. +- `aria-labelledby` value in `LegendItem` to unique id. ## [3.58.3] - 2024-12-17 ### Fixed -* Animation of points on ScatterPlot was on every render. +- Animation of points on ScatterPlot was on every render. ### Added -* `outilne=none` for Hover rect and line. +- `outilne=none` for Hover rect and line. ## [3.58.2] - 2024-12-09 ### Added -* `aria-*` attributes for svg from parent group for all simple charts (Chart.*). -* `aria-label=Chart` by default for all advanced charts (Plot...). +- `aria-*` attributes for svg from parent group for all simple charts (Chart.*). +- `aria-label=Chart` by default for all advanced charts (Plot...). ## [3.58.1] - 2024-12-05 ### Added -* `aria-labelledby` for `LegendItem` checkbox. +- `aria-labelledby` for `LegendItem` checkbox. ## [3.58.0] - 2024-12-04 ### Added -* New type of charts - `StackGroupBar`. +- New type of charts - `StackGroupBar`. ## [3.57.0] - 2024-11-29 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.38.2 ~> 2.39.0], `@semcore/flex-box` [5.38.2 ~> 5.39.0], `@semcore/utils` [4.43.3 ~> 4.44.0], `@semcore/core` [2.36.2 ~> 2.37.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.38.2 ~> 2.39.0], `@semcore/flex-box` [5.38.2 ~> 5.39.0], `@semcore/utils` [4.43.3 ~> 4.44.0], `@semcore/core` [2.36.2 ~> 2.37.0]). ## [3.56.4] - 2024-11-22 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.38.1 ~> 2.38.2], `@semcore/popper` [5.44.1 ~> 5.44.2], `@semcore/utils` [4.43.2 ~> 4.43.3], `@semcore/core` [2.36.1 ~> 2.36.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.38.1 ~> 2.38.2], `@semcore/popper` [5.44.1 ~> 5.44.2], `@semcore/utils` [4.43.2 ~> 4.43.3], `@semcore/core` [2.36.1 ~> 2.36.2]). ## [3.56.3] - 2024-11-08 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.38.0 ~> 2.38.1], `@semcore/utils` [4.43.0 ~> 4.43.2], `@semcore/core` [2.36.0 ~> 2.36.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.38.0 ~> 2.38.1], `@semcore/utils` [4.43.0 ~> 4.43.2], `@semcore/core` [2.36.0 ~> 2.36.1]). ## [3.56.2] - 2024-10-30 ### Fixed -* Fix unpredictable behavoir of charts with pattern fill, when interacting with chart's legend +- Fix unpredictable behavoir of charts with pattern fill, when interacting with chart's legend ## [3.56.1] - 2024-10-28 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.36.0 ~> 2.37.0], `@semcore/popper` [5.43.0 ~> 5.43.1], `@semcore/utils` [4.41.0 ~> 4.42.0], `@semcore/core` [2.34.0 ~> 2.35.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.36.0 ~> 2.37.0], `@semcore/popper` [5.43.0 ~> 5.43.1], `@semcore/utils` [4.41.0 ~> 4.42.0], `@semcore/core` [2.34.0 ~> 2.35.0]). ## [3.56.0] - 2024-10-23 ### Added -* Function type for `hideHoverLine` property in the `Hover` component. +- Function type for `hideHoverLine` property in the `Hover` component. ## [3.55.2] - 2024-10-15 ### Fixed -* Handle onClick on ChartLegend items. -* `onChangeVisibleItem` handler on ChartLegend component. +- Handle onClick on ChartLegend items. +- `onChangeVisibleItem` handler on ChartLegend component. ## [3.55.1] - 2024-10-15 ### Fixed -* Keyboard control in NVDA form mode for Legend checkbox items. -* Each checkbox in the Legend rendered as 3 elements for NVDA. +- Keyboard control in NVDA form mode for Legend checkbox items. +- Each checkbox in the Legend rendered as 3 elements for NVDA. ## [3.55.0] - 2024-10-15 ### Added -* Required `aria-*` attributes for the Legend. +- Required `aria-*` attributes for the Legend. ### Fixed -* Types for enhances. +- Types for enhances. ## [3.54.0] - 2024-10-11 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.34.0 ~> 2.35.0], `@semcore/utils` [4.38.0 ~> 4.39.0], `@semcore/core` [2.32.0 ~> 2.33.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.34.0 ~> 2.35.0], `@semcore/utils` [4.38.0 ~> 4.39.0], `@semcore/core` [2.32.0 ~> 2.33.0]). ## [3.53.0] - 2024-10-04 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.33.1 ~> 2.34.0], `@semcore/utils` [4.36.2 ~> 4.38.0], `@semcore/core` [2.31.1 ~> 2.32.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.33.1 ~> 2.34.0], `@semcore/utils` [4.36.2 ~> 4.38.0], `@semcore/core` [2.31.1 ~> 2.32.0]). ## [3.52.1] - 2024-09-27 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.33.0 ~> 2.33.1], `@semcore/utils` [4.36.0 ~> 4.36.2], `@semcore/core` [2.31.0 ~> 2.31.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.33.0 ~> 2.33.1], `@semcore/utils` [4.36.0 ~> 4.36.2], `@semcore/core` [2.31.0 ~> 2.31.1]). ## [3.52.0] - 2024-09-20 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.32.0 ~> 2.33.0], `@semcore/utils` [4.35.0 ~> 4.36.0], `@semcore/core` [2.30.0 ~> 2.31.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.32.0 ~> 2.33.0], `@semcore/utils` [4.35.0 ~> 4.36.0], `@semcore/core` [2.30.0 ~> 2.31.0]). ## [3.51.5] - 2024-09-06 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.31.2 ~> 2.32.0], `@semcore/popper` [5.39.4 ~> 5.39.5], `@semcore/utils` [4.32.2 ~> 4.35.0], `@semcore/core` [2.29.2 ~> 2.30.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.31.2 ~> 2.32.0], `@semcore/popper` [5.39.4 ~> 5.39.5], `@semcore/utils` [4.32.2 ~> 4.35.0], `@semcore/core` [2.29.2 ~> 2.30.0]). ## [3.51.4] - 2024-08-23 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.39.3 ~> 5.39.4]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.39.3 ~> 5.39.4]). ## [3.51.3] - 2024-08-08 ### Changed -* Radial tree radian line wasn't applying provided color. -* Venn chart was rendering `0` data with minSize (not it's not rendered at all). +- Radial tree radian line wasn't applying provided color. +- Venn chart was rendering `0` data with minSize (not it's not rendered at all). ## [3.51.2] - 2024-08-05 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.31.1 ~> 2.31.2], `@semcore/popper` [5.39.1 ~> 5.39.2], `@semcore/utils` [4.32.1 ~> 4.32.2], `@semcore/core` [2.29.1 ~> 2.29.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.31.1 ~> 2.31.2], `@semcore/popper` [5.39.1 ~> 5.39.2], `@semcore/utils` [4.32.1 ~> 4.32.2], `@semcore/core` [2.29.1 ~> 2.29.2]). ## [3.51.1] - 2024-07-30 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.31.0 ~> 2.31.1], `@semcore/utils` [4.32.0 ~> 4.32.1], `@semcore/core` [2.29.0 ~> 2.29.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.31.0 ~> 2.31.1], `@semcore/utils` [4.32.0 ~> 4.32.1], `@semcore/core` [2.29.0 ~> 2.29.1]). ## [3.51.0] - 2024-07-22 ### Added -* `minRadius` property to Venn.Chart. -* `index` to children render function of `CompactHorizontalBar` subcomponents. -* Gaps between bars in StackBar chart. +- `minRadius` property to Venn.Chart. +- `index` to children render function of `CompactHorizontalBar` subcomponents. +- Gaps between bars in StackBar chart. ## [3.50.0] - 2024-06-28 ### Added -* `CompactHorizontalBar` chart. +- `CompactHorizontalBar` chart. ## [3.49.0] - 2024-07-13 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.29.0 ~> 2.30.0], `@semcore/utils` [4.30.0 ~> 4.31.0], `@semcore/core` [2.27.0 ~> 2.28.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.29.0 ~> 2.30.0], `@semcore/utils` [4.30.0 ~> 4.31.0], `@semcore/core` [2.27.0 ~> 2.28.0]). ## [3.48.1] - 2024-07-05 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.37.0 ~> 5.37.1]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.37.0 ~> 5.37.1]). ## [3.48.0] - 2024-06-19 ### Added -* `onClick` handler for `HoverRect.Tooltip`. -* `onClickHoverRect` and `onClickBar` handlers for `Chart.Bar`. -* `barIndex` and `barKey` values for `onClick` handler for `Bar` and `HorizontalBar`. +- `onClick` handler for `HoverRect.Tooltip`. +- `onClickHoverRect` and `onClickBar` handlers for `Chart.Bar`. +- `barIndex` and `barKey` values for `onClick` handler for `Bar` and `HorizontalBar`. ## [3.47.1] - 2024-06-14 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.36.0 ~> 5.36.1]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.36.0 ~> 5.36.1]). ## [3.47.0] - 2024-06-13 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.27.2 ~> 2.28.0], `@semcore/utils` [4.28.2 ~> 4.29.0], `@semcore/core` [2.25.2 ~> 2.26.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.27.2 ~> 2.28.0], `@semcore/utils` [4.28.2 ~> 4.29.0], `@semcore/core` [2.25.2 ~> 2.26.0]). ## [3.46.1] - 2024-06-12 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.27.1 ~> 2.27.2], `@semcore/utils` [4.28.1 ~> 4.28.2], `@semcore/core` [2.25.1 ~> 2.25.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.27.1 ~> 2.27.2], `@semcore/utils` [4.28.1 ~> 4.28.2], `@semcore/core` [2.25.1 ~> 2.25.2]). ## [3.46.0] - 2024-05-29 ### Added -* `ReferenceStripes` component. -* `ReferenceBackground` component (previously `ReferenceLine.Background`). +- `ReferenceStripes` component. +- `ReferenceBackground` component (previously `ReferenceLine.Background`). ### Changed -* `ReferenceLine.Background` deprecated in favor of `ReferenceBackground`. +- `ReferenceLine.Background` deprecated in favor of `ReferenceBackground`. ## [3.45.2] - 2024-05-31 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.35.4 ~> 5.35.5]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.35.4 ~> 5.35.5]). ## [3.45.1] - 2024-05-28 ### Fixed -* Donut chart animation glitching on data change. +- Donut chart animation glitching on data change. ## [3.45.0] - 2024-05-27 ### Changed -* `Line.Area` got an option `autoInterpolate` that allows to disable auto interpolation of all missing values. -* `Line.Area` data now accepts `interpolateValue` symbol that allows spot interpolation of values if `autoInterpolate` set to `false`. +- `Line.Area` got an option `autoInterpolate` that allows to disable auto interpolation of all missing values. +- `Line.Area` data now accepts `interpolateValue` symbol that allows spot interpolation of values if `autoInterpolate` set to `false`. ## [3.44.2] - 2024-05-27 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.35.1 ~> 5.35.2]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.35.1 ~> 5.35.2]). ## [3.44.1] - 2024-05-24 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.35.0 ~> 5.35.1]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.35.0 ~> 5.35.1]). ## [3.44.0] - 2024-05-23 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.26.0 ~> 2.27.0], `@semcore/utils` [4.27.0 ~> 4.28.0], `@semcore/core` [2.24.0 ~> 2.25.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.26.0 ~> 2.27.0], `@semcore/utils` [4.27.0 ~> 4.28.0], `@semcore/core` [2.24.0 ~> 2.25.0]). ## [3.43.0] - 2024-05-22 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.25.1 ~> 2.26.0], `@semcore/utils` [4.26.2 ~> 4.27.0], `@semcore/core` [2.23.1 ~> 2.24.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.25.1 ~> 2.26.0], `@semcore/utils` [4.26.2 ~> 4.27.0], `@semcore/core` [2.23.1 ~> 2.24.0]). ## [3.42.1] - 2024-05-17 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.25.0 ~> 2.25.1], `@semcore/utils` [4.26.1 ~> 4.26.2], `@semcore/core` [2.23.0 ~> 2.23.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.25.0 ~> 2.25.1], `@semcore/utils` [4.26.1 ~> 4.26.2], `@semcore/core` [2.23.0 ~> 2.23.1]). ## [3.42.0] - 2024-05-17 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.24.0 ~> 2.25.0], `@semcore/utils` [4.25.0 ~> 4.26.1], `@semcore/core` [2.22.0 ~> 2.23.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.24.0 ~> 2.25.0], `@semcore/utils` [4.25.0 ~> 4.26.1], `@semcore/core` [2.22.0 ~> 2.23.0]). ## [3.41.0] - 2024-05-16 ### Changed -* Version minor update due to children dependencies update (`@semcore/popper` [5.31.0 ~> 5.32.0]). +- Version minor update due to children dependencies update (`@semcore/popper` [5.31.0 ~> 5.32.0]). ## [3.40.2] - 2024-05-14 ### Fixed -* Exporting from `@semcore/ui` package. +- Exporting from `@semcore/ui` package. ## [3.40.0] - 2024-05-10 ### Changed -* Version minor update due to children dependencies update (`@semcore/popper` [5.29.0 ~> 5.30.0]). +- Version minor update due to children dependencies update (`@semcore/popper` [5.29.0 ~> 5.30.0]). ## [3.39.1] - 2024-04-26 ### Fixed -* `duration` prop on `Chart` component. +- `duration` prop on `Chart` component. ## [3.39.0] - 2024-04-16 ### Changed -* Plot `eventEmitter` prop now is strongly typed. +- Plot `eventEmitter` prop now is strongly typed. ### Added -* `PlotEventEmitter` class that allows to create typed event emitter for imperative control over chart tooltip. +- `PlotEventEmitter` class that allows to create typed event emitter for imperative control over chart tooltip. ## [3.38.2] - 2024-04-16 ### Fixed -* stroke color for ReferenceLine from `--intergalactic-chart-grid-x-axis` to `--intergalactic-chart-grid-y-accent-hover-line`. +- stroke color for ReferenceLine from `--intergalactic-chart-grid-x-axis` to `--intergalactic-chart-grid-y-accent-hover-line`. ## [3.38.1] - 2024-04-16 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.22.0 ~> 2.22.1], `@semcore/popper` [5.27.0 ~> 5.27.1], `@semcore/utils` [4.23.0 ~> 4.23.1], `@semcore/core` [2.20.0 ~> 2.20.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.22.0 ~> 2.22.1], `@semcore/popper` [5.27.0 ~> 5.27.1], `@semcore/utils` [4.23.0 ~> 4.23.1], `@semcore/core` [2.20.0 ~> 2.20.1]). ## [3.38.0] - 2024-04-12 ### Added -* `Cigarette` chart. +- `Cigarette` chart. ## [3.37.4] - 2024-04-12 ### Fixed -* Dot's size for line, aria and bar charts. +- Dot's size for line, aria and bar charts. ## [3.37.3] - 2024-04-12 ### Fixed -* background color for Bar chart from `--intergalactic-chart-palette-order-other-data` to `--intergalactic-chart-grid-bar-chart-base-bg`. +- background color for Bar chart from `--intergalactic-chart-palette-order-other-data` to `--intergalactic-chart-grid-bar-chart-base-bg`. ## [3.37.2] - 2024-04-12 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [5.26.2 ~> 5.26.3]). +- Version patch update due to children dependencies update (`@semcore/popper` [5.26.2 ~> 5.26.3]). ## [3.37.1] - 2024-04-10 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.21.1 ~> 2.21.2], `@semcore/utils` [4.22.1 ~> 4.22.2], `@semcore/core` [2.19.1 ~> 2.19.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.21.1 ~> 2.21.2], `@semcore/utils` [4.22.1 ~> 4.22.2], `@semcore/core` [2.19.1 ~> 2.19.2]). ## [3.37.0] - 2024-03-27 ### Added -* API to customize A11Y module values and titles formatting, see for details. +- API to customize A11Y module values and titles formatting, see for details. ## [3.36.0] - 2024-03-27 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.20.1 ~> 2.21.0], `@semcore/utils` [4.21.1 ~> 4.22.0], `@semcore/core` [2.18.1 ~> 2.19.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.20.1 ~> 2.21.0], `@semcore/utils` [4.21.1 ~> 4.22.0], `@semcore/core` [2.18.1 ~> 2.19.0]). ## [3.35.3] - 2024-03-26 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [2.20.0 ~> 2.20.1], `@semcore/popper` [5.23.0 ~> 5.24.0], `@semcore/utils` [4.21.0 ~> 4.21.1], `@semcore/core` [2.18.0 ~> 2.18.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [2.20.0 ~> 2.20.1], `@semcore/popper` [5.23.0 ~> 5.24.0], `@semcore/utils` [4.21.0 ~> 4.21.1], `@semcore/core` [2.18.0 ~> 2.18.1]). ## [3.35.2] - 2024-03-21 ### Fixed -* Errors in children render functions. +- Errors in children render functions. ## [3.35.1] - 2024-03-20 ### Changed -* `DotCircle` size in Tooltip from 12px to 8px. +- `DotCircle` size in Tooltip from 12px to 8px. ## [3.35.0] - 2024-03-19 ### Changed -* Version minor update due to children dependencies update (`@semcore/popper` [5.22.0 ~> 5.23.0]). +- Version minor update due to children dependencies update (`@semcore/popper` [5.22.0 ~> 5.23.0]). ## [3.34.0] - 2024-03-12 ### Changed -* Improved `Chart.Bubble` plot scaling to better fit bubbles and reduce plot empty space. +- Improved `Chart.Bubble` plot scaling to better fit bubbles and reduce plot empty space. ## [3.33.0] - 2024-03-12 ### Added -* Feature to render custom components (in foreignObject) as axis tick value. +- Feature to render custom components (in foreignObject) as axis tick value. ## [3.32.0] - 2024-03-07 ### Changed -* Version preminor update due to children dependencies update (`@semcore/popper` [5.20.5 ~> 5.21.0]). +- Version preminor update due to children dependencies update (`@semcore/popper` [5.20.5 ~> 5.21.0]). ## [3.31.3] - 2024-03-07 ### Changed -* Improve generation A11Y summary for `StackBar`. +- Improve generation A11Y summary for `StackBar`. ## [3.31.2] - 2024-03-07 ### Added -* Logic to define X and Y axis for A11Y summary in Bar charts. +- Logic to define X and Y axis for A11Y summary in Bar charts. ## [3.31.1] - 2024-03-05 ### Changed -* Use `event.key` instead of `event.code`. +- Use `event.key` instead of `event.code`. ## [3.31.0] - 2024-03-01 ### Added -* `Line.Dots` and `Area.Dots` components `display` prop now accepts function that allows developers to granularly control which dots should be displayed. +- `Line.Dots` and `Area.Dots` components `display` prop now accepts function that allows developers to granularly control which dots should be displayed. ### Fixed -* A11Y module "Skip to content after plot" link was not working in some cases. +- A11Y module "Skip to content after plot" link was not working in some cases. ## [3.30.2] - 2024-02-28 ### Fixed -* view of Line.Area with `null` in data. +- view of Line.Area with `null` in data. ## [3.30.1] - 2024-02-26 ### Fixed -* paddings on X axis in Firefox. +- paddings on X axis in Firefox. ## [3.30.0] - 2024-02-16 ### Fixed -* A11Y module "Skip to content after plot" link was not working in some cases. +- A11Y module "Skip to content after plot" link was not working in some cases. ## [3.29.0] - 2024-02-16 ### Changed -* Removed wrongly added deprecation messages about `ReferenceLine` `value` props. -* Added `valueEnd` prop to `ReferenceLine.Background` component that allows to specify background width by chart value. +- Removed wrongly added deprecation messages about `ReferenceLine` `value` props. +- Added `valueEnd` prop to `ReferenceLine.Background` component that allows to specify background width by chart value. ### Fixed -* `patterns` prop was missing in multiple chart types. +- `patterns` prop was missing in multiple chart types. ## [3.28.0] - 2024-02-13 ### Changed -* A11Y module links are clickable by `Space` now (along with `Enter` as before). +- A11Y module links are clickable by `Space` now (along with `Enter` as before). ## [3.27.3] - 2024-02-13 ### Fixed -* `Dots` component was missing `value` prop in it's props mapping function. +- `Dots` component was missing `value` prop in it's props mapping function. ## [3.27.2] - 2024-02-09 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.18.1 ~> 2.18.2], `@semcore/popper` [5.19.1 ~> 5.20.0], `@semcore/utils` [4.20.1 ~> 4.20.2], `@semcore/core` [2.17.1 ~> 2.17.2]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.18.1 ~> 2.18.2], `@semcore/popper` [5.19.1 ~> 5.20.0], `@semcore/utils` [4.20.1 ~> 4.20.2], `@semcore/core` [2.17.1 ~> 2.17.2]). ## [3.27.1] - 2024-02-06 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.18.0 ~> 2.18.1], `@semcore/flex-box` [5.18.0 ~> 5.19.0], `@semcore/utils` [4.20.0 ~> 4.20.1], `@semcore/core` [2.17.0 ~> 2.17.1]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.18.0 ~> 2.18.1], `@semcore/flex-box` [5.18.0 ~> 5.19.0], `@semcore/utils` [4.20.0 ~> 4.20.1], `@semcore/core` [2.17.0 ~> 2.17.1]). ## [3.27.0] - 2024-02-01 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.17.1 ~> 2.18.0], `@semcore/utils` [4.19.1 ~> 4.20.0], `@semcore/core` [2.16.1 ~> 2.17.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.17.1 ~> 2.18.0], `@semcore/utils` [4.19.1 ~> 4.20.0], `@semcore/core` [2.16.1 ~> 2.17.0]). ## [3.26.1] - 2024-02-01 ### Fixed -* view data in BubbleChart. -* prevent animation on every rerender. +- view data in BubbleChart. +- prevent animation on every rerender. ## [3.26.0] - 2024-01-25 ### Added -* `patterns` API that enhances charts accessibility. +- `patterns` API that enhances charts accessibility. ## [3.25.1] - 2024-01-25 ### Fixed -* array index out-of-bounds crash and animation glitch at 0 duration. +- array index out-of-bounds crash and animation glitch at 0 duration. ## [3.25.0] - 2024-01-19 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.15.0 ~> 2.16.0], `@semcore/utils` [4.17.0 ~> 4.18.0], `@semcore/core` [2.14.0 ~> 2.15.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.15.0 ~> 2.16.0], `@semcore/utils` [4.17.0 ~> 4.18.0], `@semcore/core` [2.14.0 ~> 2.15.0]). ## [3.24.0] - 2024-01-19 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.14.1 ~> 2.15.0], `@semcore/core` [2.13.1 ~> 2.14.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.14.1 ~> 2.15.0], `@semcore/core` [2.13.1 ~> 2.14.0]). ## [3.23.1] - 2024-01-16 ### Fixed -* Selection of next focusable element after chart plot. +- Selection of next focusable element after chart plot. ## [3.23.0] - 2024-01-12 ### Changed -* Version preminor update due to children dependencies update (`@semcore/popper` [5.14.2 ~> 5.15.0]). +- Version preminor update due to children dependencies update (`@semcore/popper` [5.14.2 ~> 5.15.0]). ## [3.22.3] - 2023-01-11 ### Fixed -* Error in ScatterPlot with undefined values. +- Error in ScatterPlot with undefined values. ## [3.22.2] - 2024-01-10 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.14.0 ~> 2.14.1], `@semcore/utils` [4.16.0 ~> 4.16.2], `@semcore/core` [2.13.0 ~> 2.13.1]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.14.0 ~> 2.14.1], `@semcore/utils` [4.16.0 ~> 4.16.2], `@semcore/core` [2.13.0 ~> 2.13.1]). ## [3.22.1] - 2024-01-04 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/popper` [5.14.0 ~> 5.14.1]). +- Version prepatch update due to children dependencies update (`@semcore/popper` [5.14.0 ~> 5.14.1]). ## [3.22.0] - 2023-12-22 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.13.1 ~> 2.14.0], `@semcore/popper` [5.13.0 ~> 5.14.0], `@semcore/utils` [4.15.1 ~> 4.16.0], `@semcore/core` [2.12.1 ~> 2.13.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.13.1 ~> 2.14.0], `@semcore/popper` [5.13.0 ~> 5.14.0], `@semcore/utils` [4.15.1 ~> 4.16.0], `@semcore/core` [2.12.1 ~> 2.13.0]). ## [3.21.4-prerelease.10] - 2023-12-20 ### Fixed -* Order of chart lines/bars and tooltip HoverLine. +- Order of chart lines/bars and tooltip HoverLine. ## [3.21.3] - 2023-12-14 ### Fixed -* Chart dots were not displaying in Firefox. -* Charts appearing animation in Firefox. +- Chart dots were not displaying in Firefox. +- Charts appearing animation in Firefox. ## [3.21.3-prerelease.10] - 2023-12-14 ### Fixed -* Chart dots were not displaying in Firefox. -* Charts appearing animation in Firefox. +- Chart dots were not displaying in Firefox. +- Charts appearing animation in Firefox. ## [3.21.2] - 2023-12-13 ### Fixed -* Squeeze of shapes in `ChartLegendTable`. +- Squeeze of shapes in `ChartLegendTable`. ## [3.21.1] - 2023-12-12 ### Fixed -* `ChartLegendTable` labels trimming with `Ellipsis` component. +- `ChartLegendTable` labels trimming with `Ellipsis` component. ## [3.21.0] - 2023-12-06 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.12.0 ~> 2.13.0], `@semcore/popper` [5.11.0 ~> 5.12.0], `@semcore/core` [2.11.0 ~> 2.12.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.12.0 ~> 2.13.0], `@semcore/popper` [5.11.0 ~> 5.12.0], `@semcore/core` [2.11.0 ~> 2.12.0]). ## [3.20.1] - 2023-12-06 ### Fixed -* base element for `Dots`. +- base element for `Dots`. ## [3.20.0] - 2023-12-04 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.11.0 ~> 2.12.0], `@semcore/utils` [4.13.0 ~> 4.14.0], `@semcore/core` [2.10.0 ~> 2.11.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.11.0 ~> 2.12.0], `@semcore/utils` [4.13.0 ~> 4.14.0], `@semcore/core` [2.10.0 ~> 2.11.0]). ## [3.19.5] - 2023-11-24 ### Fixed -* Correct types for `Tooltip`s children render function. +- Correct types for `Tooltip`s children render function. ## [3.18.4] - 2023-11-21 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.10.1 ~> 2.10.2], `@semcore/utils` [4.10.2 ~> 4.10.3], `@semcore/core` [2.9.1 ~> 2.9.2]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.10.1 ~> 2.10.2], `@semcore/utils` [4.10.2 ~> 4.10.3], `@semcore/core` [2.9.1 ~> 2.9.2]). ## [3.18.3] - 2023-11-13 ### Fixed -* Import path in `LegendItem`. +- Import path in `LegendItem`. ## [3.18.2] - 2023-11-10 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/popper` [5.9.1 ~> 5.9.2]). +- Version prepatch update due to children dependencies update (`@semcore/popper` [5.9.1 ~> 5.9.2]). ## [3.18.1] - 2023-11-08 ### Fixed -* Charts exporting to image. +- Charts exporting to image. ## [3.18.0] - 2023-11-06 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.9.0 ~> 2.10.0], `@semcore/utils` [4.9.0 ~> 4.10.1], `@semcore/core` [2.8.0 ~> 2.9.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.9.0 ~> 2.10.0], `@semcore/utils` [4.9.0 ~> 4.10.1], `@semcore/core` [2.8.0 ~> 2.9.0]). ## [3.17.0] - 2023-10-27 ### Added -* `ChartLegend` component. +- `ChartLegend` component. ## [3.16.0] - 2023-10-26 ### Added -* Design tokens resolving for `color` props. +- Design tokens resolving for `color` props. ### Changed -* Default color of grouped charts (e.g for pie chart) are different by default. -* Default text color is based on inversed and processed background color. +- Default color of grouped charts (e.g for pie chart) are different by default. +- Default text color is based on inversed and processed background color. ## [3.15.2] - 2023-10-24 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.8.1 ~> 2.8.2], `@semcore/popper` [5.7.7 ~> 5.7.8], `@semcore/utils` [4.8.3 ~> 4.8.4], `@semcore/core` [2.7.6 ~> 2.7.7]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.8.1 ~> 2.8.2], `@semcore/popper` [5.7.7 ~> 5.7.8], `@semcore/utils` [4.8.3 ~> 4.8.4], `@semcore/core` [2.7.6 ~> 2.7.7]). ## [3.15.1] - 2023-10-16 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.8.0 ~> 2.8.1], `@semcore/popper` [5.7.6 ~> 5.7.7], `@semcore/utils` [4.8.2 ~> 4.8.3], `@semcore/core` [2.7.5 ~> 2.7.6]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.8.0 ~> 2.8.1], `@semcore/popper` [5.7.6 ~> 5.7.7], `@semcore/utils` [4.8.2 ~> 4.8.3], `@semcore/core` [2.7.5 ~> 2.7.6]). ## [3.15.0] - 2023-10-11 ### Added -* `maxBarSize` prop for `Bars` (Bar, GroupBar, StackBar and horizontals). -* `Line.Area` component. +- `maxBarSize` prop for `Bars` (Bar, GroupBar, StackBar and horizontals). +- `Line.Area` component. ## [3.14.1] - 2023-10-10 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.5 ~> 2.8.0], `@semcore/flex-box` [5.7.5 ~> 5.8.0], `@semcore/popper` [5.7.5 ~> 5.7.6]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.5 ~> 2.8.0], `@semcore/flex-box` [5.7.5 ~> 5.8.0], `@semcore/popper` [5.7.5 ~> 5.7.6]). ## [3.14.0] - 2023-10-09 ### Added -* `nl` locale support. +- `nl` locale support. ## [3.13.4] - 2023-10-06 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.4 ~> 2.7.5], `@semcore/utils` [4.8.1 ~> 4.8.2], `@semcore/core` [2.7.4 ~> 2.7.5]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.4 ~> 2.7.5], `@semcore/utils` [4.8.1 ~> 4.8.2], `@semcore/core` [2.7.4 ~> 2.7.5]). ## [3.13.3] - 2023-10-03 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.3 ~> 2.7.4], `@semcore/utils` [4.8.0 ~> 4.8.1], `@semcore/core` [2.7.3 ~> 2.7.4]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.3 ~> 2.7.4], `@semcore/utils` [4.8.0 ~> 4.8.1], `@semcore/core` [2.7.3 ~> 2.7.4]). ## [3.13.2] - 2023-10-02 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.2 ~> 2.7.3], `@semcore/utils` [4.7.2 ~> 4.8.0], `@semcore/core` [2.7.2 ~> 2.7.3]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.2 ~> 2.7.3], `@semcore/utils` [4.7.2 ~> 4.8.0], `@semcore/core` [2.7.2 ~> 2.7.3]). ## [3.13.1] - 2023-09-20 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.1 ~> 2.7.2], `@semcore/core` [2.7.1 ~> 2.7.2]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.7.1 ~> 2.7.2], `@semcore/core` [2.7.1 ~> 2.7.2]). ## [3.13.0] - 2023-09-20 ### Added -* `index` to render function context type of `HoverLine` and `HoverRect`. -* `size`, `x` and `y` to render function context type of `XAxis.Ticks` and `YAxis.Ticks`. +- `index` to render function context type of `HoverLine` and `HoverRect`. +- `size`, `x` and `y` to render function context type of `XAxis.Ticks` and `YAxis.Ticks`. ## [3.12.0] - 2023-09-13 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.6.3 ~> 2.7.0], `@semcore/utils` [4.6.3 ~> 4.7.0], `@semcore/core` [2.6.3 ~> 2.7.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.6.3 ~> 2.7.0], `@semcore/utils` [4.6.3 ~> 4.7.0], `@semcore/core` [2.6.3 ~> 2.7.0]). ## [3.11.3] - 2023-09-12 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.6.2 ~> 2.6.3], `@semcore/core` [2.6.2 ~> 2.6.3]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.6.2 ~> 2.6.3], `@semcore/core` [2.6.2 ~> 2.6.3]). ## [3.11.2] - 2023-09-08 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.6.1 ~> 2.6.2], `@semcore/utils` [4.6.1 ~> 4.6.2], `@semcore/core` [2.6.1 ~> 2.6.2]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.6.1 ~> 2.6.2], `@semcore/utils` [4.6.1 ~> 4.6.2], `@semcore/core` [2.6.1 ~> 2.6.2]). ## [3.11.1] - 2023-09-05 ### Fixed -* Fixed rendering zero segments pies in React<17. +- Fixed rendering zero segments pies in React<17. ## [3.11.0] - 2023-09-04 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.5.0 ~> 2.6.0], `@semcore/core` [2.5.0 ~> 2.6.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.5.0 ~> 2.6.0], `@semcore/core` [2.5.0 ~> 2.6.0]). ## [3.10.0] - 2023-08-28 ### Fixed -* Added `exports.types` field to fix types resolving. -* Removed deprecation notes from `ticks` props (it was added by mistake). +- Added `exports.types` field to fix types resolving. +- Removed deprecation notes from `ticks` props (it was added by mistake). ### Added -* Added `radius` prop on `Line.Dot` component. +- Added `radius` prop on `Line.Dot` component. ## [3.9.0] - 2023-08-28 ### Changed -* Version preminor update due to children dependencies update (`@semcore/animation` [2.4.1 ~> 2.5.0], `@semcore/utils` [4.4.1 ~> 4.5.0], `@semcore/core` [2.4.1 ~> 2.5.0]). +- Version preminor update due to children dependencies update (`@semcore/animation` [2.4.1 ~> 2.5.0], `@semcore/utils` [4.4.1 ~> 4.5.0], `@semcore/core` [2.4.1 ~> 2.5.0]). ## [3.8.2] - 2023-08-24 ### Fixed -* Passing `x` and `y` props to `Donut.Label` component. +- Passing `x` and `y` props to `Donut.Label` component. ## [3.8.1] - 2023-08-24 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.4.0 ~> 2.4.1], `@semcore/utils` [4.4.0 ~> 4.4.1], `@semcore/core` [2.4.0 ~> 2.4.1]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.4.0 ~> 2.4.1], `@semcore/utils` [4.4.0 ~> 4.4.1], `@semcore/core` [2.4.0 ~> 2.4.1]). ## [3.8.0] - 2023-08-23 ### Changed -* Moved default props value from deprecated `FCComponent.defaultProps` to function default arguments. +- Moved default props value from deprecated `FCComponent.defaultProps` to function default arguments. ## [3.7.0] - 2023-08-17 ### Changed -* Donut chart now doesn't render `Donut.Pie` that represent 0 part of circle. +- Donut chart now doesn't render `Donut.Pie` that represent 0 part of circle. ## [3.6.0] - 2023-08-17 ### Added -* `paddingAngle` prop for Donut chart. +- `paddingAngle` prop for Donut chart. ## [3.5.0] - 2023-08-17 ### Added -* Added special `interpolateValue` symbol that allows to interpolate points on line and area charts. +- Added special `interpolateValue` symbol that allows to interpolate points on line and area charts. ## [3.4.1] - 2023-08-16 ### Changed -* Version prepatch update due to children dependencies update (`@semcore/animation` [2.2.0 ~> 2.2.1], `@semcore/flex-box` [5.2.0 ~> 5.2.1], `@semcore/utils` [4.1.0 ~> 4.2.0], `@semcore/core` [2.2.0 ~> 2.2.1]). +- Version prepatch update due to children dependencies update (`@semcore/animation` [2.2.0 ~> 2.2.1], `@semcore/flex-box` [5.2.0 ~> 5.2.1], `@semcore/utils` [4.1.0 ~> 4.2.0], `@semcore/core` [2.2.0 ~> 2.2.1]). ## [3.4.0] - 2023-09-08 ### Changed -* Updated d3 dependencies to resolve peerDependencies mismatch. +- Updated d3 dependencies to resolve peerDependencies mismatch. ## [3.3.1] - 2023-08-08 ### Changed -* Added `exports` fields for better nextjs support. +- Added `exports` fields for better nextjs support. ## [3.3.0] - 2023-08-07 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.1.0 ~> 2.2.0], `@semcore/utils` [4.0.0 ~> 4.1.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.1.0 ~> 2.2.0], `@semcore/utils` [4.0.0 ~> 4.1.0]). ## [3.2.0] - 2023-08-01 ### Changed -* Version minor update due to children dependencies update (`@semcore/animation` [2.0.0 ~> 2.1.0], `@semcore/flex-box` [5.0.0 ~> 5.1.0]). +- Version minor update due to children dependencies update (`@semcore/animation` [2.0.0 ~> 2.1.0], `@semcore/flex-box` [5.0.0 ~> 5.1.0]). ## [3.1.1] - 2023-07-31 ### Fixed -* Donut chart hover animation after chart resizing. +- Donut chart hover animation after chart resizing. ## [3.1.0] - 2023-07-27 ### Changed -* Use `event.key` instead of `event.code` for better support of non QWERTY keyboard layouts. +- Use `event.key` instead of `event.code` for better support of non QWERTY keyboard layouts. ## [3.0.2] - 2023-07-24 ### Fixed -* Broken tooltip styles. +- Broken tooltip styles. ## [3.0.1] - 2023-07-18 ### Fix -* Removed ResizeObserver initiating during SSR. +- Removed ResizeObserver initiating during SSR. ## [3.0.0] - 2023-07-17 ### Break -* Strict, backward incompatible typings. +- Strict, backward incompatible typings. ### Changed -* Deprecated `import { Tooltip } from '@semcore/ui/d3-chart` in favor of better typed Tooltips. -* On type level made `name` property of `Donut.Pie` obligatory. -* On type level made `name` property of `Venn.Circle` obligatory. +- Deprecated `import { Tooltip } from '@semcore/ui/d3-chart` in favor of better typed Tooltips. +- On type level made `name` property of `Donut.Pie` obligatory. +- On type level made `name` property of `Venn.Circle` obligatory. ### Added -* Typed `HoverLine.Tooltip`, `HoverRect.Tooltip`, `Radar.Tooltip`, `Bubble.Tooltip`, `Donut.Tooltip`, `ScatterPlot.Tooltip` and `Venn.Tooltip`. +- Typed `HoverLine.Tooltip`, `HoverRect.Tooltip`, `Radar.Tooltip`, `Bubble.Tooltip`, `Donut.Tooltip`, `ScatterPlot.Tooltip` and `Venn.Tooltip`. ## [2.17.5] - 2023-06-30 @@ -1061,115 +1061,115 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel ### Fixed -* Fixed animation on hover when moving mouse quickly on border of `Donut` chart. +- Fixed animation on hover when moving mouse quickly on border of `Donut` chart. ## [2.17.3] - 2023-06-27 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.19 ~> 1.10.20], `@semcore/utils` [3.53.4 ~> 3.54.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.19 ~> 1.10.20], `@semcore/utils` [3.53.4 ~> 3.54.0]). ## [2.17.2] - 2023-06-22 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.18 ~> 1.10.19], `@semcore/utils` [3.53.3 ~> 3.53.4]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.18 ~> 1.10.19], `@semcore/utils` [3.53.3 ~> 3.53.4]). ## [2.17.1] - 2023-06-14 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.18 ~> 1.10.19], `@semcore/utils` [3.53.3 ~> 3.53.4]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.18 ~> 1.10.19], `@semcore/utils` [3.53.3 ~> 3.53.4]). ## [2.17.0] - 2023-06-12 ### Added -* Swedish (`sv`) locale support. +- Swedish (`sv`) locale support. ## [2.16.2] - 2023-06-12 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.17 ~> 1.10.18], `@semcore/utils` [3.53.2 ~> 3.53.3]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.17 ~> 1.10.18], `@semcore/utils` [3.53.2 ~> 3.53.3]). ## [2.16.1] - 2023-06-09 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.16 ~> 1.10.17], `@semcore/utils` [3.53.1 ~> 3.53.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.16 ~> 1.10.17], `@semcore/utils` [3.53.1 ~> 3.53.2]). ## [2.16.0] - 2023-06-09 ### Added -* Polish (`pl`) locale support. +- Polish (`pl`) locale support. ## [2.15.5] - 2023-06-07 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.15 ~> 1.10.16], `@semcore/popper` [4.17.17 ~> 4.19.0], `@semcore/utils` [3.53.0 ~> 3.53.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.15 ~> 1.10.16], `@semcore/popper` [4.17.17 ~> 4.19.0], `@semcore/utils` [3.53.0 ~> 3.53.1]). ## [2.15.4] - 2023-06-02 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.14 ~> 1.10.15]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.14 ~> 1.10.15]). ## [2.15.3] - 2023-05-31 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.13 ~> 1.10.14], `@semcore/utils` [3.52.0 ~> 3.53.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.13 ~> 1.10.14], `@semcore/utils` [3.52.0 ~> 3.53.0]). ## [2.15.2] - 2023-05-29 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.12 ~> 1.10.13]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.12 ~> 1.10.13]). ## [2.15.1] - 2023-05-25 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.11 ~> 1.10.12], `@semcore/utils` [3.51.1 ~> 3.52.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.11 ~> 1.10.12], `@semcore/utils` [3.51.1 ~> 3.52.0]). ## [2.15.0] - 2023-05-24 ### Changed -* Improved support of `zh` and `ja` locales in vertical titles. +- Improved support of `zh` and `ja` locales in vertical titles. ## [2.14.10] - 2023-05-22 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.9 ~> 1.10.10], `@semcore/utils` [3.50.7 ~> 3.51.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.9 ~> 1.10.10], `@semcore/utils` [3.50.7 ~> 3.51.0]). ## [2.14.9] - 2023-05-22 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [4.17.10 ~> 4.17.11]). +- Version patch update due to children dependencies update (`@semcore/popper` [4.17.10 ~> 4.17.11]). ## [2.14.8] - 2023-05-12 ### Fixed -* Fixed radial tree icons displaying. +- Fixed radial tree icons displaying. ## [2.14.7] - 2023-05-11 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.8 ~> 1.10.9], `@semcore/utils` [3.50.6 ~> 3.50.7]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.8 ~> 1.10.9], `@semcore/utils` [3.50.6 ~> 3.50.7]). ## [2.14.6] - 2023-05-04 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.7 ~> 1.10.8], `@semcore/utils` [3.50.5 ~> 3.50.6]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.7 ~> 1.10.8], `@semcore/utils` [3.50.5 ~> 3.50.6]). ## [2.14.3] - 2023-05-02 @@ -1177,139 +1177,139 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel ### Fixed -* Fixed warnings in development mode. +- Fixed warnings in development mode. ## [2.14.0] - 2023-04-19 ### Added -* Added automatic conversion of react components to text for accessibility titles. +- Added automatic conversion of react components to text for accessibility titles. ## [2.13.13] - 2023-04-18 ### Fixed -* Fixed calculating height of `StackBar` and `HorizontalBar` components. +- Fixed calculating height of `StackBar` and `HorizontalBar` components. ## [2.13.12] - 2023-04-18 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.10.1 ~> 1.10.2], `@semcore/utils` [3.50.0 ~> 3.50.3]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.10.1 ~> 1.10.2], `@semcore/utils` [3.50.0 ~> 3.50.3]). ## [2.13.8] - 2023-03-31 ### Fixed -* Fixed calculating width of `HorizontalBar` component. +- Fixed calculating width of `HorizontalBar` component. ## [2.13.7] - 2023-03-31 ### Fixed -* Fixed display `Line.Null`. +- Fixed display `Line.Null`. ## [2.13.6] - 2023-03-31 ### Fixed -* Fixed adding custom styles for `Radar` chart. +- Fixed adding custom styles for `Radar` chart. ## [2.13.5] - 2023-03-29 ### Fixed -* Fixed calculating height of `Bar` component. +- Fixed calculating height of `Bar` component. ## [2.13.4] - 2023-03-28 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.9.9 ~> 1.10.0], `@semcore/utils` [3.49.1 ~> 3.50.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.9.9 ~> 1.10.0], `@semcore/utils` [3.49.1 ~> 3.50.0]). ## [2.13.3] - 2023-03-27 ### Fixed -* Added correct display when there is no data in A11Y table. +- Added correct display when there is no data in A11Y table. ## [2.13.2] - 2023-03-24 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.9.7 ~> 1.9.8], `@semcore/popper` [4.16.9 ~> 4.16.10], `@semcore/utils` [3.48.1 ~> 3.49.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.9.7 ~> 1.9.8], `@semcore/popper` [4.16.9 ~> 4.16.10], `@semcore/utils` [3.48.1 ~> 3.49.0]). ## [2.13.0] - 2023-03-23 ### Added -* Added `additionalFields` in `a11yAltTextConfig` for extra text description to the data when using a screen reader +- Added `additionalFields` in `a11yAltTextConfig` for extra text description to the data when using a screen reader ## [2.12.2] - 2023-03-22 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.9.4 ~> 1.9.5], `@semcore/utils` [3.47.3 ~> 3.47.4]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.9.4 ~> 1.9.5], `@semcore/utils` [3.47.3 ~> 3.47.4]). ## [2.12.1] - 2023-03-21 ### Fixed -* Fixed `Radar` chart with negative rotation hover handling. +- Fixed `Radar` chart with negative rotation hover handling. ## [2.12.0] - 2023-03-16 ### Added -* Add `angleOffset` parameter to `Radar` chart. +- Add `angleOffset` parameter to `Radar` chart. ## [2.11.1] - 2023-03-16 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.9.3 ~> 1.9.4], `@semcore/utils` [3.47.2 ~> 3.47.3]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.9.3 ~> 1.9.4], `@semcore/utils` [3.47.2 ~> 3.47.3]). ## [2.11.0] - 2023-03-13 ### Changed -* Much improved A11Y summary generation for `Radar` chart. +- Much improved A11Y summary generation for `Radar` chart. ## [2.10.0] - 2023-03-07 ### Added -* Added footer in `Tooltip`. +- Added footer in `Tooltip`. ## [2.9.1] - 2023-03-06 ### Fixed -* Added backward compatibility with react 16.9. +- Added backward compatibility with react 16.9. ## [2.9.0] - 2023-03-06 ### Added -* Added a new chart type `Radar`. +- Added a new chart type `Radar`. ## [2.8.19] - 2023-03-01 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [4.16.3 ~> 4.16.4]). +- Version patch update due to children dependencies update (`@semcore/popper` [4.16.3 ~> 4.16.4]). ## [2.8.18] - 2023-02-28 ### Fixed -* Fixed summary generation was broken after i18n enhancement release. +- Fixed summary generation was broken after i18n enhancement release. ## [2.8.17] - 2023-02-28 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.9.1 ~> 1.9.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.9.1 ~> 1.9.2]). ## [2.8.16] - 2023-02-22 @@ -1317,67 +1317,67 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.9.0 ~> 1.9.1], `@semcore/utils` [3.47.0 ~> 3.47.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.9.0 ~> 1.9.1], `@semcore/utils` [3.47.0 ~> 3.47.1]). ## [2.8.14] - 2023-02-11 ### Fixed -* Added check for the presence of DON at start of animation for `RadialTree`. +- Added check for the presence of DON at start of animation for `RadialTree`. ## [2.8.13] - 2023-02-10 ### Fixed -* Fixed display of `Bar` with height 0 - it is should not be rendered. +- Fixed display of `Bar` with height 0 - it is should not be rendered. ## [2.8.12] - 2023-02-09 ### Changed -* Renamed rounding design token (`--intergalactic-rounded-medium` -> `--intergalactic-popper-rounded`). +- Renamed rounding design token (`--intergalactic-rounded-medium` -> `--intergalactic-popper-rounded`). ## [2.8.11] - 2023-01-27 ### Fixed -* Fixed animation for `Donut`. +- Fixed animation for `Donut`. ## [2.8.10] - 2023-01-26 ### Changed -* Changed minimum height in types for `Bar`. +- Changed minimum height in types for `Bar`. ## [2.8.9] - 2023-01-25 ### Fixed -* Fixed and changed minimum height of `Bar`. +- Fixed and changed minimum height of `Bar`. ## [2.8.8] - 2023-01-23 ### Fixed -* Fixed definition of users locale. +- Fixed definition of users locale. ## [2.8.7] - 2023-01-19 ### Fixed -* Fixed animation in React strict mode for `RadialTree` and `Donut`. +- Fixed animation in React strict mode for `RadialTree` and `Donut`. ## [2.8.6] - 2023-01-19 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.8.8 ~> 1.8.9], `@semcore/utils` [3.44.3 ~> 3.45.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.8.8 ~> 1.8.9], `@semcore/utils` [3.44.3 ~> 3.45.0]). ## [2.8.3] - 2022-01-10 ### Fixed -* Added prop `transparent` for all charts opacity +- Added prop `transparent` for all charts opacity ## [2.8.2] - 2023-01-10 @@ -1385,525 +1385,525 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.8.5 ~> 1.8.6], `@semcore/utils` [3.44.1 ~> 3.44.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.8.5 ~> 1.8.6], `@semcore/utils` [3.44.1 ~> 3.44.2]). ## [2.8.0] - 2022-01-05 ### Added -* Added prop `transparent` for charts opacity +- Added prop `transparent` for charts opacity ## [2.7.2] - 2022-12-27 ### Fixed -* Fixed `Donut` chart rendering when hovering over a chart while it is loading. +- Fixed `Donut` chart rendering when hovering over a chart while it is loading. ## [2.7.1] - 2022-12-19 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.8.4 ~> 1.8.5], `@semcore/utils` [3.44.0 ~> 3.44.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.8.4 ~> 1.8.5], `@semcore/utils` [3.44.0 ~> 3.44.1]). ## [2.7.0] - 2022-12-14 ### Changed -* Supported semi-async internationalization of text in A11Y module. +- Supported semi-async internationalization of text in A11Y module. ## [2.6.1] - 2022-12-13 ### Changed -* Added `react-dom` to peer dependencies. +- Added `react-dom` to peer dependencies. ## [2.6.0] - 2022-12-12 ### Added -* Design tokens based theming. +- Design tokens based theming. ## [2.5.2] - 2022-11-11 ### Fixed -* Allowed to pass any svg attributes. +- Allowed to pass any svg attributes. ## [2.5.1] - 2022-11-11 ### Fixed -* Fixed `Bar` click handler typings. +- Fixed `Bar` click handler typings. ## [2.5.0] - 2022-11-10 ### Fixed -* Fixed support handling of bars event handling with `paddingOuter`. +- Fixed support handling of bars event handling with `paddingOuter`. ### Added -* `Bar` component now supports `onClick` handler with bar data in callback. +- `Bar` component now supports `onClick` handler with bar data in callback. ## [2.4.10] - 2022-11-03 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [4.13.3 ~> 4.13.4]). +- Version patch update due to children dependencies update (`@semcore/popper` [4.13.3 ~> 4.13.4]). ## [2.4.9] - 2022-11-03 ### Fixed -* Fixed hover and active animated for `Donut` chart. +- Fixed hover and active animated for `Donut` chart. ## [2.4.8] - 2022-11-02 ### Fixed -* Fixed display of minimum bar size in `StackBar`. +- Fixed display of minimum bar size in `StackBar`. ### Added -* Added display of minimum bar size in `HorizontalBar`. +- Added display of minimum bar size in `HorizontalBar`. ## [2.4.7] - 2022-11-01 ### Fixed -* Fixed inner radius for `Donut` chart. It began to equal what is indicated in the `innerRadius` prop. +- Fixed inner radius for `Donut` chart. It began to equal what is indicated in the `innerRadius` prop. ## [2.4.6] - 2022-10-31 ### Fixed -* Fixed reference lines were missing dashed style. +- Fixed reference lines were missing dashed style. ## [2.4.5] - 2022-10-28 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.7.0 ~> 1.7.1], `@semcore/utils` [3.40.0 ~> 3.40.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.7.0 ~> 1.7.1], `@semcore/utils` [3.40.0 ~> 3.40.0]). ## [2.4.3] - 2022-10-20 ### Fixed -* Fixed typings of render functions. +- Fixed typings of render functions. ## [2.4.2] - 2022-10-20 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.6.1 ~> 1.6.2], `@semcore/utils` [3.39.0 ~> 3.39.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.6.1 ~> 1.6.2], `@semcore/utils` [3.39.0 ~> 3.39.1]). ## [2.4.0] - 2022-10-10 ### Changed -* Added support for React 18 🔥 +- Added support for React 18 🔥 ## [2.3.8] - 2022-10-10 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [4.11.31 ~> 4.12.0]). +- Version patch update due to children dependencies update (`@semcore/popper` [4.11.31 ~> 4.12.0]). ## [2.3.7] - 2022-10-05 ### Fixed -* Ensured A11Y module do not break mouse interactions. +- Ensured A11Y module do not break mouse interactions. ## [2.3.6] - 2022-10-04 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.10 ~> 1.5.11], `@semcore/utils` [3.37.1 ~> 3.37.2]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.10 ~> 1.5.11], `@semcore/utils` [3.37.1 ~> 3.37.2]). ## [2.3.5] - 2022-09-23 ### Fixed -* Fixed issue with uninitialized styles in some charts. +- Fixed issue with uninitialized styles in some charts. ## [2.3.4] - 2022-09-21 ### Changed -* Version patch update due to children dependencies update (`@semcore/popper` [4.11.29 ~> 4.11.30]). +- Version patch update due to children dependencies update (`@semcore/popper` [4.11.29 ~> 4.11.30]). ## [2.3.3] - 2022-09-13 ### Fixed -* Changed paths in CSS files to relative. +- Changed paths in CSS files to relative. ## [2.3.2] - 2022-08-30 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.9 ~> 1.5.10], `@semcore/utils` [3.37.0 ~> 3.37.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.9 ~> 1.5.10], `@semcore/utils` [3.37.0 ~> 3.37.1]). ## [2.3.0] - 2022-08-22 ### Added -* Introduced charts accessibility module. +- Introduced charts accessibility module. ## [2.2.7] - 2022-08-18 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.7 ~> 1.5.8], `@semcore/utils` [3.36.0 ~> 3.37.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.7 ~> 1.5.8], `@semcore/utils` [3.36.0 ~> 3.37.0]). ## [2.2.5] - 2022-08-04 ### Fixed -* Fixed `ResponsiveContainer` memory leak on unmount. +- Fixed `ResponsiveContainer` memory leak on unmount. ## [2.2.4] - 2022-08-02 ### Fixed -* `Venn` chart was not mentioned in exported types. +- `Venn` chart was not mentioned in exported types. ## [2.2.3] - 2022-07-22 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.4 ~> 1.5.5], `@semcore/utils` [3.34.0 ~> 3.35.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.4 ~> 1.5.5], `@semcore/utils` [3.34.0 ~> 3.35.0]). ## [2.2.2] - 2022-07-20 ### Fixed -* Fixed ability to change `tag` in render(prop) functions. -* Fixed `RadialTree` typings. -* Fixed `RadialTree` rendering in Safari. -* Fixed `RadialTree` radian labels rendering. +- Fixed ability to change `tag` in render(prop) functions. +- Fixed `RadialTree` typings. +- Fixed `RadialTree` rendering in Safari. +- Fixed `RadialTree` radian labels rendering. ## [2.2.1] - 2022-07-07 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.3 ~> 1.5.4], `@semcore/utils` [3.33.0 ~> 3.34.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.3 ~> 1.5.4], `@semcore/utils` [3.33.0 ~> 3.34.0]). ## [2.2.0] - 2022-06-30 ### Added -* Added index to Bubble chart -* Added property minimal height `hMin` for Bar (``) -* Added property `active` for `Donut.Pie` +- Added index to Bubble chart +- Added property minimal height `hMin` for Bar (``) +- Added property `active` for `Donut.Pie` ### Fixed -* Exclude props from HTML for `Tooltip.Dot` -* Recalculate position for `Dot` after update scale -* Optimization render `Dot` +- Exclude props from HTML for `Tooltip.Dot` +- Recalculate position for `Dot` after update scale +- Optimization render `Dot` ## [2.1.0] - 2022-06-01 ### Changed -* Changed type names from 'ITooltipProps' to 'ITooltipChartProps' so that there are no intersections with other components. -* Changed type names from 'ITooltipContext' to 'ITooltipChartContext' so that there are no intersections with other components. +- Changed type names from 'ITooltipProps' to 'ITooltipChartProps' so that there are no intersections with other components. +- Changed type names from 'ITooltipContext' to 'ITooltipChartContext' so that there are no intersections with other components. ## [2.0.10] - 2022-05-31 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.1 ~> 1.5.2], `@semcore/utils` [3.32.1 ~> 3.32.2], `@semcore/button` [4.0.4 ~> 4.0.5], `@semcore/checkbox` [6.0.3 ~> 6.0.4]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.1 ~> 1.5.2], `@semcore/utils` [3.32.1 ~> 3.32.2], `@semcore/button` [4.0.4 ~> 4.0.5], `@semcore/checkbox` [6.0.3 ~> 6.0.4]). ## [2.0.7] - 2022-05-25 ### Fixed -* Fixed position title for axis. +- Fixed position title for axis. ## [2.0.6] - 2022-05-23 ### Changed -* Version patch update due to children dependencies update (`@semcore/icon` [2.25.1 ~> 2.26.0]). +- Version patch update due to children dependencies update (`@semcore/icon` [2.25.1 ~> 2.26.0]). ## [2.0.0] - 2022-05-17 ### BREAK -* Updated styles according to the library redesign policy. +- Updated styles according to the library redesign policy. ## [1.9.0] - 2022-04-14 ### Added -* Added `` chart. +- Added `` chart. ## [1.8.0] - 2022-04-11 ### Fixed -* Fixed left and right `` unexpected horizontal transition based on title characters count. +- Fixed left and right `` unexpected horizontal transition based on title characters count. ## [1.7.1] - 2022-04-03 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.5.0 ~> 1.5.0]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.5.0 ~> 1.5.0]). ## [1.7.0] - 2022-03-28 ### Fixed -* Left and bottom plot titles now do not overlap axis ticks. +- Left and bottom plot titles now do not overlap axis ticks. ## [1.6.9] - 2022-03-14 ### Changed -* Version patch update due to children dependencies update (`@semcore/utils` [3.31.2 ~> 3.31.2], `@semcore/animation` [1.4.1 ~> 1.4.2]). +- Version patch update due to children dependencies update (`@semcore/utils` [3.31.2 ~> 3.31.2], `@semcore/animation` [1.4.1 ~> 1.4.2]). ## [1.6.8] - 2022-03-10 ### Fixed -* Fixed figure cut on right or bottom edges when left or top margin is positive. +- Fixed figure cut on right or bottom edges when left or top margin is positive. ## [1.6.7] - 2022-03-05 ### Changed -* Version patch update due to children dependencies update (`@semcore/animation` [1.4.0 ~> 1.4.1]). +- Version patch update due to children dependencies update (`@semcore/animation` [1.4.0 ~> 1.4.1]). ## [1.6.5] - 2022-02-24 ### Added -* Added repository field to package.json file. +- Added repository field to package.json file. ## [1.6.4] - 2022-02-10 ### Fixed -* Fixed animation display when resizing. +- Fixed animation display when resizing. ## [1.6.3] - 2022-01-26 ### Changed -* Revert function `findComponent` for check children in `Tooltip`, because it's valid for children `() => ({})`. +- Revert function `findComponent` for check children in `Tooltip`, because it's valid for children `() => ({})`. ## [1.6.2] - 2022-01-25 ### Changed -* Replaced function `findComponent` to `isAdvanceMode` for check children in `Tooltip`. +- Replaced function `findComponent` to `isAdvanceMode` for check children in `Tooltip`. ## [1.6.1] - 2021-01-21 ### Added -* Added Bubble and Scatter plot charts +- Added Bubble and Scatter plot charts ### Changed -* Tooltip font size changed +- Tooltip font size changed ## [1.5.6] - 2021-12-08 ### Changed -* Moved chart colors vars to style +- Moved chart colors vars to style ## [1.5.5] - 2021-12-06 ### Fixed -* Calculate correct border radius for Bar. +- Calculate correct border radius for Bar. ## [1.5.4] - 2021-11-24 ### Fixed -* Fixed set `scale` for `Area, Line`. +- Fixed set `scale` for `Area, Line`. ## [1.5.3] - 2021-10-27 ### Fixed -* Returned data `(x, y, width, height)` in render function for `Bar, Horizontalbar`. +- Returned data `(x, y, width, height)` in render function for `Bar, Horizontalbar`. ## [1.5.2] - 2021-10-22 ### Fixed -* Fixed field `e.currentTarget` for events in `eventEmitter`. +- Fixed field `e.currentTarget` for events in `eventEmitter`. ## [1.5.1] - 2021-10-19 ### Fixed -* Fixed hide tooltip. +- Fixed hide tooltip. ## [1.5.0] - 2021-10-15 ### Added -* Added prop `outerRadius` for `Donut` chart. +- Added prop `outerRadius` for `Donut` chart. ### Changed -* Fixed call animation for hover in sector `Donut` chart. -* Fixed animation show `Dot` in `Line` chart. +- Fixed call animation for hover in sector `Donut` chart. +- Fixed animation show `Dot` in `Line` chart. ## [1.4.1] - 2021-10-13 ### Fixed -* Fixed react key-related warning for `Bar`. +- Fixed react key-related warning for `Bar`. ## [1.4.0] - 2021-10-12 ### Added -* Added new event `onMouseMoveChart, onMouseLeaveChart` for eventEmitter. +- Added new event `onMouseMoveChart, onMouseLeaveChart` for eventEmitter. ### Fixed -* Fixed show/hide components `Hover, Dots`. +- Fixed show/hide components `Hover, Dots`. ## [1.3.1] - 2021-10-06 ### Fixed -* Fixed dependencies in package.json. +- Fixed dependencies in package.json. ## [1.3.0] - 2021-09-30 ### Added -* Added radius of curvature for `Bar, HorizontalBar`. -* Added dynamic position tooltip for `HoverRect, HoverLine`. -* Added hover for `Donut.Pie`. +- Added radius of curvature for `Bar, HorizontalBar`. +- Added dynamic position tooltip for `HoverRect, HoverLine`. +- Added hover for `Donut.Pie`. ## [1.2.0] - 2021-09-24 ### Added -* The ability to pass "undefined" to skip some of the data. +- The ability to pass "undefined" to skip some of the data. ## [1.1.0] - 2021-09-14 ### Added -* Display 1% of the sector as the minimum value for Donut chart +- Display 1% of the sector as the minimum value for Donut chart ## [1.0.0] - 2021-09-08 ### Added -* Added animation for all charts. +- Added animation for all charts. ## [1.0.0-15] - 2021-08-26 ### Changed -* Add 'sideEffect=false' for more optimal build via webpack +- Add 'sideEffect=false' for more optimal build via webpack ## [1.0.0-14] - 2021-08-02 ### Fixed -* [ts] correct types. +- [ts] correct types. ## [1.0.0-13] - 2021-06-18 ### BREAK -* Revert area for stack area chart. -* Change data for Venn chart. +- Revert area for stack area chart. +- Change data for Venn chart. ### Changed -* Add default ticks for Axis. +- Add default ticks for Axis. ## [1.0.0-12] - 2021-06-02 ### Added -* Added Venn chart. +- Added Venn chart. ## [1.0.0-11] - 2021-05-12 ### Fixed -* Fix TS type +- Fix TS type ## [1.0.0-9] - 2021-04-26 ### Changed -* Version of dependence `@semcore/core` has been changed to `1.11`. -* Improved performance. Removed one component wrapper. -* The style processing system has been changed. -* Removed the ability to apply media styles via a plugin `babel-plugin-react-semcore`. +- Version of dependence `@semcore/core` has been changed to `1.11`. +- Improved performance. Removed one component wrapper. +- The style processing system has been changed. +- Removed the ability to apply media styles via a plugin `babel-plugin-react-semcore`. ## [1.0.0-8] - 2021-04-20 ### Fixed -* Fixed version dependency for package `@semcore/popper`. +- Fixed version dependency for package `@semcore/popper`. ## [1.0.0-7] - 2021-04-15 ### Fixed -* Fixed Plot naming. +- Fixed Plot naming. ## [1.0.0-6] - 2021-04-15 ### Added -* Added Donut and Semi-donut charts. +- Added Donut and Semi-donut charts. ## [1.0.0-5] - 2021-03-31 ### Fixed -* [TS] Fixed types for `Line` and `Area`. +- [TS] Fixed types for `Line` and `Area`. ## [1.0.0-4] - 2021-03-30 ### Added -* Added Area and Stacked Area charts. +- Added Area and Stacked Area charts. ## [1.0.0-3] - 2021-03-29 ### Added -* [TS] Added types for `Bar.Background, HorizontalBar.Background`. +- [TS] Added types for `Bar.Background, HorizontalBar.Background`. ## [1.0.0-2] - 2021-03-18 ### Fixed -* Fixed calculate coordinates for `Hover` and `Tooltip` components. +- Fixed calculate coordinates for `Hover` and `Tooltip` components. ## [1.0.0-1] - 2021-03-10 ### Added -* Added support property `tag` for all components. +- Added support property `tag` for all components. ### Fixed -* Fixed hover for `svg` element inside `XYPlot`. +- Fixed hover for `svg` element inside `XYPlot`. ## [1.0.0-prerelease.10] - 2021-02-11 ### Added -* Initial release. \ No newline at end of file +- Initial release. diff --git a/semcore/d3-chart/src/Axis.jsx b/semcore/d3-chart/src/Axis.jsx index 4a1447bcb1..15b29fff99 100644 --- a/semcore/d3-chart/src/Axis.jsx +++ b/semcore/d3-chart/src/Axis.jsx @@ -196,13 +196,16 @@ function splitTextByWidth(root, text, maxWidth) { let currentLine = words[0]; for (let i = 1; i < words.length; i++) { - const testLine = `${currentLine} ${words[i]}`; + const testLine = `${currentLine} ${words[i]}`.trim(); const testWidth = measureTextWidth(root, testLine); if (testWidth <= maxWidth) { currentLine = testLine; } else { - lines.push(currentLine); + if (currentLine) { + lines.push(currentLine); + } + currentLine = words[i]; if (measureTextWidth(root, currentLine) > maxWidth) { diff --git a/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts b/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts index 1a2feb82a3..6b032687fd 100644 --- a/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts +++ b/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts @@ -124,9 +124,9 @@ export type BaseChartProps = FlexProps & * Count of ticks for Y axis */ yTicksCount?: number; - /** Enables multiline tick labels for X axis. */ + /** Enables multiline tick labels for X axis. Applies only for band scales. */ multilineXTicks?: boolean; - /** Enables multiline tick labels for Y axis. */ + /** Enables multiline tick labels for Y axis. Applies only for band scales. */ multilineYTicks?: boolean; /** * Group key for all array-based charts (for get keys of items for legend except that group key) diff --git a/semcore/d3-chart/src/types/Axis.d.ts b/semcore/d3-chart/src/types/Axis.d.ts index 70cb0daa11..f63beae4e5 100644 --- a/semcore/d3-chart/src/types/Axis.d.ts +++ b/semcore/d3-chart/src/types/Axis.d.ts @@ -38,7 +38,7 @@ export type AxisTicksProps = Context & { hide?: boolean; /** Values for axis ticks */ ticks?: any[]; - /** Enables multiline tick labels. */ + /** Enables multiline tick labels. Applies only for band scales */ multiline?: boolean; }; From 38e06d051d506587e3a9332df1d3ae89c2a612f8 Mon Sep 17 00:00:00 2001 From: Valeryia Zimnitskaya Date: Thu, 23 Oct 2025 17:34:25 +0200 Subject: [PATCH 07/10] [stories] update d3-chart test story --- .../d3-chart/tests/d3-chart-base.stories.tsx | 6 --- .../examples/d3-chart/grid-axis-props.tsx | 47 ++++--------------- 2 files changed, 9 insertions(+), 44 deletions(-) diff --git a/stories/components/d3-chart/tests/d3-chart-base.stories.tsx b/stories/components/d3-chart/tests/d3-chart-base.stories.tsx index fed15d9e24..76934e4b6c 100644 --- a/stories/components/d3-chart/tests/d3-chart-base.stories.tsx +++ b/stories/components/d3-chart/tests/d3-chart-base.stories.tsx @@ -23,12 +23,6 @@ export const GridAxisProps: StoryObj = { control: 'select', options: [true, false, undefined], }, - marginX: { - control: 'number', - }, - marginY: { - control: 'number', - }, }, args: BasicUsageProps, }; diff --git a/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx b/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx index a4ce51e011..29b5d2b7c3 100644 --- a/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx +++ b/stories/components/d3-chart/tests/examples/d3-chart/grid-axis-props.tsx @@ -4,14 +4,10 @@ import { scaleLinear, scaleBand } from 'd3-scale'; import React from 'react'; type BaseExampleProps = { - marginX?: number; - marginY?: number; multiline?: boolean; }; const Demo = (props: BaseExampleProps) => { - const { marginX, marginY } = props; - const MARGIN = 40; const width = 250; const height = 200; @@ -114,33 +110,6 @@ const Demo = (props: BaseExampleProps) => { - - - - - - - - {({ value }) => ({ - children: [ - yScale.tickFormat(5, '+%')(value / 10), - 'per 10 units', - ], - })} - - - - @@ -155,7 +124,7 @@ const Demo = (props: BaseExampleProps) => { YAxis title @@ -164,7 +133,7 @@ const Demo = (props: BaseExampleProps) => { XAxis title @@ -180,7 +149,7 @@ const Demo = (props: BaseExampleProps) => { YAxis title @@ -189,7 +158,7 @@ const Demo = (props: BaseExampleProps) => { XAxis title @@ -208,7 +177,10 @@ const Demo = (props: BaseExampleProps) => { YAxis title - + XAxis title @@ -286,8 +258,7 @@ const data2 = Array(5) })); export const defaultProps: BaseExampleProps = { - marginX: undefined, - marginY: undefined, + multiline: undefined, }; From d4073d2ca5c06b3816a7f273822d2f78fbf7afaa Mon Sep 17 00:00:00 2001 From: Julia Mnizhek Date: Fri, 24 Oct 2025 11:58:05 +0200 Subject: [PATCH 08/10] [d3-chart] fixes for types and prop descriptions --- semcore/d3-chart/src/component/Chart/AbstractChart.type.ts | 4 ++-- semcore/d3-chart/src/types/Axis.d.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts b/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts index 6b032687fd..dc4606fdbb 100644 --- a/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts +++ b/semcore/d3-chart/src/component/Chart/AbstractChart.type.ts @@ -124,9 +124,9 @@ export type BaseChartProps = FlexProps & * Count of ticks for Y axis */ yTicksCount?: number; - /** Enables multiline tick labels for X axis. Applies only for band scales. */ + /** Enables multiline tick labels for X axis, applicable only for band scales */ multilineXTicks?: boolean; - /** Enables multiline tick labels for Y axis. Applies only for band scales. */ + /** Enables multiline tick labels for Y axis, applicable only for band scales */ multilineYTicks?: boolean; /** * Group key for all array-based charts (for get keys of items for legend except that group key) diff --git a/semcore/d3-chart/src/types/Axis.d.ts b/semcore/d3-chart/src/types/Axis.d.ts index f63beae4e5..f25bf81597 100644 --- a/semcore/d3-chart/src/types/Axis.d.ts +++ b/semcore/d3-chart/src/types/Axis.d.ts @@ -38,7 +38,7 @@ export type AxisTicksProps = Context & { hide?: boolean; /** Values for axis ticks */ ticks?: any[]; - /** Enables multiline tick labels. Applies only for band scales */ + /** Enables multiline tick labels, applicable only for band scales */ multiline?: boolean; }; From 16df7d37d2b1083ff09d482a82ba8e59f03d2d96 Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Fri, 24 Oct 2025 12:46:00 +0200 Subject: [PATCH 09/10] [UIK-4320][d3-chart] added dominat baseline for inner tspan elements --- semcore/d3-chart/src/style/axis.shadow.css | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/semcore/d3-chart/src/style/axis.shadow.css b/semcore/d3-chart/src/style/axis.shadow.css index 83269a9452..6a8bd706de 100644 --- a/semcore/d3-chart/src/style/axis.shadow.css +++ b/semcore/d3-chart/src/style/axis.shadow.css @@ -61,28 +61,48 @@ STick[position='bottom'] { transform: translateY(12px); text-anchor: middle; dominant-baseline: hanging; + + tspan { + dominant-baseline: hanging; + } } STick[position='right'] { transform: translateX(16px); text-anchor: start; dominant-baseline: middle; + + tspan { + dominant-baseline: middle; + } } STick[position='left'] { transform: translateX(-16px); text-anchor: end; dominant-baseline: middle; + + tspan { + dominant-baseline: middle; + } } STick[position='custom_0'] { transform: translateY(12px); text-anchor: middle; dominant-baseline: hanging; + + tspan { + dominant-baseline: hanging; + } } STick[position='custom_1'] { transform: translateX(-16px); text-anchor: end; dominant-baseline: middle; + + tspan { + dominant-baseline: middle; + } } From ff27a281974caf00724b8f06f1952a5800d86f80 Mon Sep 17 00:00:00 2001 From: Slizhevsky Vladislav Date: Fri, 24 Oct 2025 15:32:48 +0200 Subject: [PATCH 10/10] [UIK-4320][d3-chart] added dominat baseline for inner tspan elements --- ...y-multiline-tick-labels-1-webkit-linux.png | Bin 11708 -> 11693 bytes ...ooltip-shown-on-hover-1-chromium-linux.png | Bin 17939 -> 17913 bytes ...tooltip-shown-on-hover-1-firefox-linux.png | Bin 41231 -> 41092 bytes semcore/d3-chart/src/Axis.jsx | 1 + semcore/d3-chart/src/style/axis.shadow.css | 16 ++++++++++++++++ 5 files changed, 17 insertions(+) diff --git a/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-webkit-linux.png b/semcore/d3-chart/__tests__/bar-chart.browser-test.tsx-snapshots/Bar-chart-Verify-multiline-tick-labels-1-webkit-linux.png index 2bb50684e5d3dd6fb5557831bd6cbadf2fefbbb6..ee65a5f6bb5b5a716c2b4d7e286a4e9baab2592d 100644 GIT binary patch literal 11693 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 P7joYC;u+%UYj^((PkloY literal 11708 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 diff --git a/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-chromium-linux.png b/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-chromium-linux.png index 539000acbb01885314d34a07e6ecb9ac0c64b784..b5e48fe2d6b2785768c2fe468ca0813a92acd495 100644 GIT binary patch literal 17913 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 O@?1*sS+RuC+y4fb%%h9| literal 17939 zcmeIacUV*3wk{m8@l#Y(q)8D`0jWxrsvt!mNEM_b0@8agL8VClAxaBHq)Cv_2@nD( zO+Y{h5FiN%NDW15XbE>M_Br3V_k4RlXWzT`^PTTL&*l$SvRG@bImeu9jCZ`_okVGC zsh&H-dIkc4oO`79P!|F@34EmaK}!Q1?sKXi0}jVLbyXE1$X>Pu2;>^%(ZdJ&ei=)| zz#s;4@ao~}cchQu*!w4!6x9^3aS7ZfaD_tY;*XhFUKMdaC*khCI4JLf6tV`R6nm*T1yq1GU=3!R92la8Dt%wyl zWuNz6taPsBLb;60ep+8Fqk`WmSw=Ma9ne+aM}$z+>2mZb^yPiXDe#jK%`s;1X!*wp zOYj(alRgw21|<2PaluOQ_V$M+xfcPW_1!(X>Yk3LXeNhiv^*Wpa3M{dhs214^hvj> zqB`KH_{I?zl=y-`NH0$v{xM?f0_A$Bp%Ey;AdV_PUfnV@{$9ct_Ivj@J3AM)dw5tp z&Ac*~``5-vO<@y@iI1d+I&r0(7oIV@FmOr);vsb4Aj(eAh=9lDOSH}45u$MoavVGg zy!^W_2&}lud_KMgFPq*e4u2KjF3|>bx=aumMQ86~(0@s-vw~j&o+fU6N1UO?E}cS& zEfsAOG*FFB6Bmar%xl&Kb%x(R|-A_Dxs8b4hT5j4m8wR(n;T zRv`n9=X2!WJ)Xa1kuOjznlWt*(lf{Nthmpb8?H+DJi-(4Xn10RW z=h3yBflq|cNxT-4V~tqDW@9RzuYL9Rw7Z#X+OVS|!o0{5igFs=s-A1~*oP3tX3s`) zhv#nWSK5HLHPegC)3^=oYJ9oxwvv%%rlGE(ap{6NWy^JAV*^pFU|t!JKQXb^-%%~& zyIkixzO+f#7je#{vQqRaYx?kK^Mx(jCBl}=jZ16$c#@EX|1N%lUeRg1LJzlDTTqwL z`<_3ULoQ&wXTsU6_UAYPp`ll(HP)Cr)y9-1$j3KU=5B)Mu72k4zkVL<4djCbUA<>$ zsk!s_o*o^B{5cJNLjjW-FCCr!)TF}R_sPjpnZ5ZlG3y(u2KxHR?-&GOpAWLu+Exu# zTwPo!zrU?@7z&x}Z(a_8p?hp)487O7-nR>v26*)(@jE&Q8)i1?KaqHV+ggw0G~L>% zXp3Q#%G5&1^thm8*yDkA-&#Q#yze`7wO*vxP&a=r*dE6r{E^4Spqno_y zsECP)@&5kNQI_8Um=b6C1iWCFo0P7;a$HCC*jV?je_ho3vuDpbI0!Mt3F;dd7z|BK zl`FovXOX%#nRxl+Nq=4SNN$@C+gHG6iMX9Ig9r%-j9~0at(Xx3!CuDdEaz3Xmt}5* z8CCdMiLqjK<#c<~?>X;nc1GFBXE)_nLvdTZy`ebxq{qE*?fO!JrMW^db%e5a6)wx+D~l8tGY#BKjI5|^C@q0ak5$jU5MVqX&Yd{l z`p2||$>AQi29xm9hToDTi^E-E^B(pz&xv49g1!CFkoe2{+O+OFzsn1=jm2%c@-~iak=L= zKfm756;9vrID=|=I9b}XNtkOSZKffrss`V>EBm7Bwzq#$-mi>HoQ(8QW@bnSdUg2e)dtK#4_sG7ZJ<*5bsQ8_>HBQ?2Se{7v*?B)D)>d5^+5}`X@hJ&vS z*=5&nY~kcKp2KR6W|^5GVv^wn*cv3@`v1$B{^rrjlqV;_b_$>S9?4sMe%;MK&_($WK6;-5@h+ylMa@)@({|pKwb2N;(Eh~%@KH3{gF;EqncD6V% zo2NTn&a^zu(vTIoJqiUI8dicZ3S)MLT3>I>2``V-6*4W5d9d6ZsBQu>Jst0<8qib1 za=v3KJu5NG!DTdgIR3L{LXYjN(<>tZjx!y1F)l}w(-?|RT2#B^i9{DHu(RhZEp5t} zD)a~yq#wk9vByo7w)s}-@{njxyqI^+NUBp2Z*-LS@ndqVSe55+BVAf9Ml-y;W@uVdo@C=0V zD#r52w*MPJ>~A^!zdsEAmo5CGani{Fi1>k#L>4_WD^W+*hyhl$x-kb^;N&$+Jp*w; z7mrcL2OZ*-Cg;MPB69rblDZ{M>n`FMh6WQH#SkjjeOx)IoZ3?t?`ese0B-~HDF(it zUL{8CI7dU%Kqg?jpSHs9qg^#MeJ%q=eEo;shhvt0WBS=kU?4cf0*sID@wo!6oYUaF z|L1Vw-|e*2>GG42=H<`i64%0ldbabbybO&2)mF=6JRT~~C#sB{&4M3thG1r?mTAf!_bz|-4kj0^df(T1_ z?KDy*E+bQ!lVjhr_}<*Lz1M72<@&{@Cd|tE`;;ciIj+`OK^bpof@6C3f@$5eh5lTg zi38$r_}P^bM7@~zV&1aMZS$bX(YJ3up1X?5uQ%mSPT^Sv2LXZXwSAB|y|XyfP9U%; z>jX4bd9+p7XfR#55_ivk(bV2P3cFxx+{mi{(^poudGx3saG9$t76;}t)Y;kL3khtn zpqYy5#|o2V6yB-E(}1be)c#-{p^B5Ot0>s^08oRC&1Ek$Vc5U=B-D!*0{Ujkjh33fa0{hWB9V=GdA0i*DWuXp$}&59W@hHG zQXGD4cB7W4NE^wmY%u6&T3mw3$WDP9)s>ZfD46x=A5jFNsezyn2Y*=VMmP&6$2}eG zKY8-Kq;yX?SRB2C$L)Tc{Q33kD`Ma_YeWtLr&^f*Zqn`fM5B`8o0~CAD!Kje3GSKC zY1o3t*%^Mb8@ndPcrUZnB|1M03m6yk_q*g&Q|5Z$lx~ZXY*UFG$9i#a43?=ZUV0z8 zZ@p(^_+_vnH&UHfUcPV;zG%t&3kbsWy5<&0-e|yie-GLwgd?}Gq5~Z%49+2rbNla4 zXThi}T&=ZJch1E@qYO!Dhp=ug~XVjHc?d&}Dx~uGyO3fUly>>?4EPb}u z>psu6^Sgz+!_ko>+Q2gKC%y*bxi+OLF7C~vmBI2JuJ=SDCuef34iRJ5o7KmXNNL;k z?8`*EZH{yv9O&eFsNRxbjcLncz!oGEol*TS4zfvX6gOtbhtfuQu2FWNk94=9msoY! zh0@_B=Q*V756V5bTGuWYDvZE(NWyaDx>f1mg4=?E)z3})i7rTtoF6P7jq0JfuON+) z{kH~QyPWZw$o!AcSckG`svhDA`&3j!Qr2L?j9|FHQpVr(MWlwAAvh(GSe!Ij7 z-b*Ka!qN(bPZkyy{>GV4+VgGPf4#dgXB!~;mZ3^SAo(44)CqN4`Eb%^ZE04 z0j@Cm9PN=AkNo_CTj*T0CyAiJyuuiOK7a8MnAMftr75FVe38E04tF&xa`kiAnm(_p zUV*RElT@9+D^xQm?+&g^e8WU>tI&b%evSg;vJX0VSAM&Xc+Ynehqh;HZZ~Fo+$MHS z7?dw6-fBEqo9N{FkZ^SuH+R-=0L#W#12>#M4#mnyD~^sX1b_BS0`gPrjN84Qj6YqO zE2>MZpZ5yN8wOvb4Kpx+YIvrbY#S%R^j!+T?DCTpGe_m&88Jyz0&`*x!ZsxPQd~QC zVk$0>33k#&7l=H!4z&P-M99*Vee2q6q_)o{-s6@&{&MQ$S73Yu=kQT;IqWY@u0_T2 zJEM{vm3`_>*&!diI8|i_VlP%!}oN~L{@8=2uSV=y^3D% z{IRm7W3H?dCc-eIa^}gyBu29BVv&#uY95cHV~gp0!qUgtpTdgzalLv_3@y|1J-uG& z>a#V)N|UWoFZgZI?~Pso&LU5q`xLYD)g!MyeR?aUF)3t*1KpCE09#$)SMc<$tuV0AGN?-g_7f9;%|GbNP zb+o=CAhKfLIGAb|<$v&pEiJ`AnuRz=Eout$e4e zVqL$0vSbe-*dx{SA8RtLrqc#@YlMSWF(YZ4l^*r&Lp1ojdjJUVmN;fP=QiR^oM#Dm z)C8K!8!#0IUp~D$&a#Z_rXgm}R07^3Qm+zhGevC%urP2aEtPP9ZL!dfmW>s+2-{e(!bHFPT#ev@yn!pmmA z;hj3}V2b_N|0zoRoKnPo{?Hq!ftZ;n%IU@>am zMga88=rYZiB%_Bs$l_R@JMoiiVb9cz22a$;GhLyc1x^~#AM@kYWkxQYJr4#8ODJ&7 zY-Pdflor8jUMc`M6`Bv&<;GhRPIm}s$FqR7t)eufCy{>!{hRfV@)`k<|MEk z^ZvD38xp>#NGP)9;+b%O956y}M`c_bl`MH;VrcPacFNm4tdh{Tu9(3bqPpc@n`JKIPM$!UmW==63#gpM!&U4$5&nPi@r zZNTcM5C0peF9pp50IHadcoz1!c5~{uMNg`H+q65mf&myBgunujOXiJ!b}XAKc{i!G zA$7O-!rv*X*)uDuD>Dy>gjvzrJ7sfXk~|FNgijv-Qs-&wBgiKx_(;}o3)j@s*H?_B z`T?LY1lFO-iCZC5&yD+6Vnt=IN;viO_By?IVGNKnIC!}y4xOmhy6Rer4w{*9g(=aN z`*&-ZVW-n)J){khMgg1iosuw=_vEXlzrTJwU}C&Z@B|HRacSp2U{&6xG=>UWj4T5$PbkEyi2IahmU ztT(1o^yijst!eLLGi~**tlaL6*&gal>F{GA_z!Vny@o6jK#3jJ3G(mYaO>?xkh*Rb z6gfF|yX&uGP4vVyLmdVv_EOsJQr%fIQlVX5f-v9M!Ei5`|AOq{fvDme_cm)*R`{jT zVGDb;*gYRZDQN}qp)IYpeVZh8wD5&UZn(s%-%gHjTo?Oj!v2w2i6S&kT*8fIF8lGs z(x&pxY4?t4W2KgARZf3ineP3uJxQdQV|@FwNo}c1QCb-y)atELg$l2=w{2%(mDH{5 z!>J)c;yp4^vLiG3iJ94D+7sdQkry}v_lgYk3N)o*IRVoJ%k{_vehwM;uRBRReeKW6 z^$Po-aO32W`G&emW8<;-+$L;PLxM|4hRBvt04nQj{;$77N%yU0*P6LDazB zzUbz3^r;Um_~H`B_1!U94iwh@amJ_5yy{bSiqAIpUAi68`&nphYy!S7*8n88SAkTf zWVRHMDS|7wvG*ePUCqyYVYDZ>B@7-xz0*x<>gs}jsU?+`a-3K7HVcpy^6aju@p*2O zUyMjYrN*mF_rH+k<}OL_uBg-y(8)RXwhXRi`K=y>u1E~Bp z7X_Sgh~5YHLfgLd8h7mW@DmFGMy#0N9fqK*cprV{dTR66-Qz>oz{?2dk1_jpk$QF( zD}CL&KYI7cj%F`|e`qFJoe?|waOu=Et=lzvLdDkdpngirByIRt!%~UQX8R9&-z>qO z6qghWf9unD#1e}JFNZKYoiYm$qnj>N2(;;(3g4LRRTrr9Tg$Z+85D)Mj#iKy`+{e- zkJVQ9Fr8ODqdG^n>jrNN<+23wEW}32tCv3s_e9aj?~;>ma5U_ZCT8d63=Clnwp;2= zP1Csvj=n2no~sR`3oKdZuGZMv*-40rl|01^ka|YyNJO<8Q)Cp*tZ{uE)x;Gx(qL1F zTyTea-pd61j9kFxFL)Ea-t7yF5upNory`S@0- z12cQYA+SJIAZxR0CT-Q!?8>^J=)X>?>0A-#z&SVy&&`=N**jZVJ%IMid@K(K{gSb% z>=W8Mb7w{6Wj#KAxb|3m!7Yz&@W@3#PW65`+Z-N#5=~wbr&BU0P0-TdYnlAk7#tZ! z4-giyD!GzPs$EY-3!&Na_tw78ZJ?@Z7V5`A%39P^sE}Tr{5~*Vs1Gi=pVDNkQ0JtG z^Kt|&*(@SDUvNJKdRvh9TQMQ9%<+-6HFo#x&=>7*GahHS@){aV{{ioF`WX)xWB!(1o?GspJa0Nma8dxm@TgDYmVEEOPN48cO+TB zo-a%RIXu;tLQ*(vE3V`ATtU0W%Lta#*WaS2J;QaLQ+|6>ued-n&5NqI)egmbn{gV- z`b>qb@jT9oYkO9xl?|7u7AWrriX+ukRo>@hj-W;ai?UDLr}IobJ%Xn%u$xhh>gcC- zqOhDx3I|&$S^EUvOnE(^@?d-yIqxDl=XyctlNY&Ww9l8qbR+*yU0S|#N@_*4N~{qg zbX;-E8@bBXp8KUQt#WISopX*Gegv&TIrmewA91*-?8{2!Immh2Gf&y6N zLeaJbv5i=-mOte!=H6Unxdm{KCth8IBk~HQdj#ErS{rthMh9354k zJgG;FZ$-{YeC+oVW9|EPW{4Z4#P?KSLIB9IDYZq)nYQep>(uzhmicrc7);(7}WW+D)g z4iUO$fTA+Y4qoiVS&+XcQAT^Uw|*A?1t<}!pOph>#o(D*_C*O-OpJv zzSO?Pjkz{u>jZX%-NAI8#;qO&EeAN*U_^wK)JfLt8KUDeqWm3LWNMSrXFSh1X8Rrq zuaAd#`|zh1PF-InH~vI>iQy?o>`vz^(LmV_+xjX;G1I48S8$lXVBpbuqMr)_?s z)6d)JZp5|`r3LkJm`Z&dG+p-TMFY{q*x2N7{q!M;{6t}6olL!+sA#d5>q^;Kh1G2H z!+!U7hy#lw?Oq@?A>`l!Kc|JBo}Obsiw~M|8n(-19n-!UWZ%nVTVjSbrcHeR{{6R> z0#^{T`8hD_5vU)hx@Z5J$SpE!Q;VYas`mXN^lUBC;e)HG;L&}z<90xh-G7rFC zCHW04xG^yC%q@;yxw6V}&tnO7NH!?MCcXnxC=D2b7ikFN|b?l=s7E4NlT%ax%OiMU;E1kgQOF_-!>g_aiP%P#}ipl@!YurM%;UanMK zTx7gxM9-sd(D(K>n~cv?0(Ivxr+?l-rtkKFEu|?-)?1p70``;HnE4pB^*#T&-QC=Z zO3@^uTGLKTU@J<#q3vtm-DeNC-z+V0QhO58)6GM&3P;@oC%$vdZb65tA^{#Q-&rBP{^N3W}uy>tdsIElKfBO4B}*MesIDAvP^J zdDf%uwoem&#BcdDZ0qpm@If!?aAVV659$hbt63!XhNGBkS-&?0KtjT>%}D|w107%; z82Fpo6_Rl`_-{Lh)x1G8u9ZKfHD8M>td_^@U{Y@Ciw*_1^Fhx9_iLltU)H4%iv<0D z^v4?^w{B?pHR3DMZM{w@K27tLNDb+bmR8iVi^irsdj|b0UL*bBrkbbc{y zK)TC7+F8WpOM2kTb|3iO{0d0cHF4~Y=&W1SnOw64N*(=R>jL2rS%ya+T`k<^fo~8; zAQydf*ZrpTD*}+wT6E@r02?E5K`!{1wY(>CdO;^_L^hB&gsyHs#eTb&3jDG8cYAOs z)UvY32i-$RM<7O=7UL$>({}js9hf8D4FJ}NM%<3Dny>%i-C{e9j>Y$To9Tr0Ajg&@ z(8K~>hp9J3h%vJ3W&NRp3!yze7=z0|sYQQ(veKcls3t^;27%aADwg1i4S8Wujdw;k z%rf!TyR?cEH=h7q17sCWud4J7RqFAC^bi;?H<8E<&Vv=R?is$gu=rk}>iQUftoUY; z%Q5yoXu+WwO>!+(H#7R`kOSalHVAAPp2C zSQhMOleczX6`*eC0h*2l8=0||g)A}8rm!=k9~F6LIYIk4T93HR>o6$Oj*4FyOZ<51 z)#P(Y@sX1>7YlP8%M33n-kk)Cvt_I_zqLKEqlhS}Igfni`u`T1Az07*P0&bZsWaV?>vf7Aw@Kl&kiQ-u<|?s{0~N z%mbOTwRg6QdCxFi0_XGd8;Iv&HyPCV=-oI~!5t+6#171Hp={l(IVzQBBKQ7sZ zTQQ_1sW(L_pqZYZI5H$)@IU)0nm;)@1>JLhJ}gKwBcEI0cppwL0f!FdFQj~{7-fJ% z#mTomMZLm&8V!C(Zf`EtW^l)bx{;5o9T`U86-0K^tBK7EcYLOOr<8s%u3u;L{nDj7 zwF(gq`>rR9bXJhIhVkz!0wKx7((UhU+2DfU=Z3(4zCicnrkPgq&A)IWrTvgk8w#?1 zTdDR?-aVLkXK(#6WAx(!P1Ub_?q*QQ{n@^f2X+NS+Z9?j0ox0zY~$!6f9@aSUh!4w zJKW_zaA{K)B>({r`Pi^ney-?@hdO6B;WMUXCAJ7zmIkn1_UH0Uoy98)=&#e46(Q0Y zo3@G+h5qhILWX==yprNlcYw9q4!IPp@bp2@-rxjMO(3k2bB{rB zQ?=2ZcCr>v_UiFp2^im+Z^wFBQGeON=@)DV>!Q${4!0Hk+LW=~1>@A2>!^|XZ<}!- z>Hs{S>}JqnO>^|y)OEO@huq%nE@$LL8y3lJ<2sugHA_~HUX6Vi!3!|PYWi>jH5&gm@dR{hero82WVP&Q|Lij@$zH`o zo;~n!PgEcr>-A<7BOiBZr67knp3wW!|36tr9p8yq`gp~=S+0IYC=}f zhOY^eP%R3vI51e0RI~cYZ!O#o5bj7g5t0`@N{r028jesuWS;5u3foUWQswFC>EeF@ z4=9xcP3k{=dhxweZw^pFWoXR}tSbYs_!2QVzPeS^3rpUL+l9H$pzh67k{3#{D zdw(=F5p63oi|hSn)TdJn}d+M@88 z=R1IQJ4cRi#Qj57FYabtbto=SD534y>GK@!bs65?TQ_gE5iROXVMD8~tMl_qV0m(U zSR%V)nNd-SjSum$ecIT0dFG&j(Aotgf#TvRG3|^XWN>g_GvaE^5dOaN`&-njSF(Kh zEs1xv_d&85!Yl>UrkNNSm&Pk`B6J2Ad1=9Xx=8N*ZT3rwz&whu#*H6v@Y(fbNCfZw zY8B1yn-~}?AO(Q=YL8o8h9WP~aOGaTtn2ua1=WG_tKttcYzg?jLt4InfYX>s6jgn= zR_d|(1$i?r4mu~Se_DwvrJE0Me0v_sIzWc;e715<$g3nfD^b2N@5P3R%tWc|?}Lp# zTCVmh3HC3X)EkUp`CNAv@n*o98PvzgTv-M3Q1&;OApZlQt9>9zBM=76rZ?VqDTERS zz_GF-<@UZQjXoX64L7+j8+(c|o{jvPsOAM^eSr3el9(TpB4EA)-zq&kU@D!B z|6aG+cyFbuYH>0B{x#k(si2(^?BkO3yEX$rl6zIs8Rs2rx;7GZxjkFfUxG0Pplw{n z1}j=s=6W)R1_p-3myYN%W?P0)@sHA`K=Fx9*2`;an?C>|vB4EXH!h28C zz}VQKv-TsJXbOTtbzfKbNrA~yyEg{bD=UK4-cTS<>~YS`<<29iJW1{V_?j)j-Q7_@ zyJ(ReuGnwMd-raK<1;8Y@|I(LSi9c2U$OH6(znT;)N{nK#mkC=gM(Yw|H2+cM1PSw zS)cHC5J=blh_Hfe2Z%QAE$R6-QtR!qmil}^^Fm&K{o7U3qXMUqKqElF?7{rGN8^s} z*gJd7=!Of;l81C|xlzT{qouIPL{p|lxW^~TFFI=Wm#Z%R6-Dc2X}L?egJ#815*Sv- zgMK;r^WRF0>Cm3#I&RGDFkPgzJG4*ju{g>}1IT#`I&4KZy5Id3=}&o@ksfw4K3?0$ zr#?zNoPK%vL1Fi#M?tC)R^+*(Nyj&~Bn88l_l*pOs>J35Eug5FyGfFu#A)-=F(X>8 zcy<|YpuP?W9w?{fGo)>F1M26H3;)DB7aRZx}rJr4807fw~;MVkl5y70UIR??+kmCoZ4rO{^hs z0w4(>G$I0dg1x6XfG=f2>qjU5K?!kf_b%PmF8RNaBb~YR1klQUDylOTtI-CvKrt~LXSimAtlA@0wHO$FJ>p}J zfA@0iXyG(Bvv?h=Ei1DmXJI0&J}qwb+w<8-v5lfu|D=BgaNYecHfPCd_Z(-d7O*@# zS-U~hb))j+D*V&9$4#@QJbAkeQcr*)SE_ zJ4ioGC2PH@p*{X{Q92VV0Iv>+(#DJYnw)eO?l0W{SGZ;Kx%!KiT&*#}pYe^>WRk1X zx*uV!cKCaYmk#(|DTerm9|3VJ%$Y(;5HM>1>IIXSroX=Mj?2B15>AukS1eyppT`I(d3&B@QC$fn@F_nH#fL>=(V-bZ5X5Ca3c z8tqqz%d=zn*JQ)`K)k@I!C0^5_xpL>_Otfmz&?Vp;lym;4d?p3Px<+B;yp83p6Nz< zxVVV+ny>x$K<0Dj;20cX`#dkrq^1U0^uh^QCk|*s>Rq1O_ygiwi;1_{+0K<|yIW6r z8O}vq2NJPc!vHvF{!f(W+{BNP5_ztNP^g*kz!5;U{KOoq_hJ9V_Gfz_#=AOiwLQB7 zl+cvEpvs+9!*fU%1Tqw~&w+Ru^4601lx3;pba9`&_Z+D-aJG}`bcD!7cza@nHfK}+lK1YEKUbCldzK$iGi~JhZ@x}57JTY-8{)cb| z!btjV@?S)&H_jQpWK1g53@Y_#dZ(-YRL|saXF36p#AItG_z{FW(GCtSee4V3fGB}2 z#xX!808wXSVk}c}R}RD{1+CB4w55_4yx|7g2CY?^ldkb+C&h|yfn&)5)WLT#EEX9G z0%h|ED`h9wh4CLPzG5VB|)|FKRO+UC6cigm6eT(Nk-qS7c``Iir+r@q{&6JN){0 zSsH*qVZbIJ#29kkaIMw7)xG#^zUp@P$8>79Zum3a=sM+|UA%OGNMBwA(9MYBpxAc3 z!Q3~{u5e-EIxoVCDtS3tKdfj{Sf|>;_)7G^1selCO$C~0?S~3Maf6&C+xR&L-fD*x zGUp$N{tMZ~A-i}0qg%SiLXMIXftQ}4M=>P%pRw)dKdn_jq%Bfq@Pwl_XvRU7ky9ar z@M?c9&76k=*SJCC99fp&3d1fOkT`=-IQW~ksVnFSS9^OC@_uok*+W{c`~x7fh$ggm5M$k?_AYuIpP#^X zACpvPW8XL$i!cY+E?+($*|I5ZTb=%aw3l#5O#zC2f`Wo~FulMogeNOrsmYcuUqkpXRDax!a_N|O1U z1n^Crg*HMZo-J`x8s!V5Cl9{xx~jBaD-xw!nt<&9L*n6>5DhUcC9%o+J#Pp0nmjra zTm-DfP`vetTJixk9@sh2YMmg{GZ7N=pkIDihe5~Cu*rTS-c9PR3trt5fRZA(sDQLrT`&u5P1ze65+tRLEFw`8CDJha#dlFaRcLQu&Ti;V zu|am9g~ddf)56E-=&r_1f4H<(p=bB7S-Fv^dYxbYtIy*hlXoHB-^U*6d3NV7rUL;7 z*vIhdBpEut+`3*+z=-Og3@4j8J2$#dM{^kYS>QDIeD-r%I)M3Mih2m3HUnMVK{S|9 zg+d5C(bs>)b?BZ^*3m4rM&S>!XGvl7>BvK%)->;42u-_NR2oc%w?5S7YK32|aluo2 z5gnWh8rAGFWZA~`#7(cqoalNR_RA)Mfc6>KO?0r_L~+64SCbVEJ}h`^+8f}uqKSb` z4T#50iG3v-zm+W1Wu^QVmlQDTuqKKfjDRkoyU$)JVO2Rg+nbptdVL?*B-6CNCQQX0 z?v!F=YyeV$DB9>p4fYg+?tig3H0!J_4-d!9Jp~KxT2f<@+56yhQb~tsrOlYTER&N+iy*$*IRcyrp#DSmSOwUiNT?vroFKyfaDl~d9Sco zn8NZOsQVYQ`dUF2H{CA-g|8e-BU-Th<0m`LLc86l#hbCy%da4eS~K?S^9I5J3rm(G z6y*nQ8S;GtAp`=U=QBD;8KC-Apw5(cMHn{t@>5mpmhZ&=ecaYrCIlJ@Aq*09wMDuH z#cN zD2*^#m-}Jfny%i%-|YeHeuhgiM_WCb8-ud0th9xe)UO%5YQk^}3*+WCIOT&hY1hX0 zId81{%OX#{$^jHG7(5uaQfY`hY2&fNz1jP&hmAVeD%E7c72?egu1`DW94E>>$=_M@ z1_<^hHJHqll&f?R(e3dI8nCr$=?Ddd;r^AXWer z2_ViZXnp|Wrim7CD7Y6?57{xRTw@MckD9?0TLAB4aK{R2!e4l8GiGCsYF?^-WR`;b zf)xd~S|rk3GWNdR&&~-Gt7q((D@jktd&y>i0GS7Rn^@)!7yGsJ6nj>6j#I`5@vLvW&eJYG zFYkclDw${JH)b5{m}NRjP67k>XU&EEO-0}Xz-lW1N^S7N|G&1&{PR-fe>~a#R}0|! z_(wAQ|K8a=Xxb*-2ZwO~&!(+wDaycDUV*r->{>H$Qh*jjuxDuimgirm|C?>XRF!QC z{MUeL@c#n*YfApL9{=@@{>wrA%RB$y5te A4*&oF diff --git a/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-firefox-linux.png b/semcore/d3-chart/__tests__/bar-horizontal-chart.browser-test.tsx-snapshots/Horizontal-Bar-chart-Verify-Chart-Bar-renders-and-tooltip-shown-on-hover-1-firefox-linux.png index 68f669db82d367a9e07e3ddf04e98de4bad121cc..08841e73343b35a0dbfbeac913d68cd6f4bd5c6f 100644 GIT binary patch literal 41092 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 literal 41231 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 diff --git a/semcore/d3-chart/src/Axis.jsx b/semcore/d3-chart/src/Axis.jsx index 15b29fff99..192b8995f2 100644 --- a/semcore/d3-chart/src/Axis.jsx +++ b/semcore/d3-chart/src/Axis.jsx @@ -348,6 +348,7 @@ function Ticks(props) { index={i} position={positionClass} hide={hide} + multiline={multiline} {...pos(scale, value, position)} > { lines.length > 1 diff --git a/semcore/d3-chart/src/style/axis.shadow.css b/semcore/d3-chart/src/style/axis.shadow.css index 6a8bd706de..8b6729dc9c 100644 --- a/semcore/d3-chart/src/style/axis.shadow.css +++ b/semcore/d3-chart/src/style/axis.shadow.css @@ -75,6 +75,14 @@ STick[position='right'] { tspan { dominant-baseline: middle; } + + &[multiline] { + dominant-baseline: auto; + + tspan { + dominant-baseline: auto; + } + } } STick[position='left'] { @@ -85,6 +93,14 @@ STick[position='left'] { tspan { dominant-baseline: middle; } + + &[multiline] { + dominant-baseline: auto; + + tspan { + dominant-baseline: auto; + } + } } STick[position='custom_0'] {