@gooddata/sdk-ui-charts 11.50.0-alpha.0 → 11.50.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"dataLabelsColors.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/adapter/plugins/dataLabelsColors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAwGlD,wBAAgB,wBAAwB,CACpC,eAAe,EAAE,MAAM,EACvB,UAAU,GAAE,MAAe,EAC3B,SAAS,GAAE,MAAe,GAC3B,OAAO,CAgBT;AAyED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAsBjF"}
1
+ {"version":3,"file":"dataLabelsColors.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/adapter/plugins/dataLabelsColors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAyGlD,wBAAgB,wBAAwB,CACpC,eAAe,EAAE,MAAM,EACvB,UAAU,GAAE,MAAe,EAC3B,SAAS,GAAE,MAAe,GAC3B,OAAO,CAgBT;AA4FD,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAoCjF"}
@@ -1,8 +1,8 @@
1
- // (C) 2007-2025 GoodData Corporation
1
+ // (C) 2007-2026 GoodData Corporation
2
2
  import { VisualizationTypes } from "@gooddata/sdk-ui";
3
- import { getContrastRatio, getRgbFromWebColor, parseRGBColorCode } from "@gooddata/sdk-ui-vis-commons";
3
+ import { getContrastRatio, getRgbFromWebColor } from "@gooddata/sdk-ui-vis-commons";
4
4
  import { getDataLabelAttributes } from "../../chartTypes/_chartCreators/dataLabelsHelpers.js";
5
- import { getChartType, getShapeAttributes, getVisibleSeries, isStacked, } from "../../chartTypes/_chartCreators/helpers.js";
5
+ import { getChartType, getResolvedPiePosition, getShapeAttributes, getVisibleSeries, isStacked, } from "../../chartTypes/_chartCreators/helpers.js";
6
6
  import { isOneOfTypes } from "../../chartTypes/_util/common.js";
7
7
  import { getBlackLabelStyle, getWhiteLabelStyle } from "../../constants/label.js";
8
8
  import { isHighContrastMode } from "../../utils/highContrastMode.js";
@@ -93,8 +93,8 @@ export function isLightNotContrastEnough(backgroundColor, lightColor = "#fff", d
93
93
  if (isWhiteColor(lightColor)) {
94
94
  // to keep first 17 colors from our default palette with white labels
95
95
  const HIGHCHARTS_CONTRAST_THRESHOLD = 530;
96
- const { R, G, B } = parseRGBColorCode(backgroundColor);
97
- const lightnessHCH = R + G + B;
96
+ const rgb = getRgbFromWebColor(backgroundColor);
97
+ const lightnessHCH = (rgb?.r ?? 0) + (rgb?.g ?? 0) + (rgb?.b ?? 0);
98
98
  return lightnessHCH > HIGHCHARTS_CONTRAST_THRESHOLD;
99
99
  }
100
100
  else {
@@ -116,6 +116,19 @@ function setContrastLabelsColor(chart, theme) {
116
116
  }
117
117
  });
118
118
  }
119
+ // Applies per-slice contrast to every inside label. Bypasses the theme's autoLightTextColor/
120
+ // autoDarkTextColor so pie inside labels stay readable even if the workspace theme misconfigures
121
+ // those to dark values (contrast decision uses hardcoded white/black).
122
+ function setPieInsideLabelsContrast(chart) {
123
+ getVisiblePointsWithLabel(chart).forEach((point) => {
124
+ if (isLightNotContrastEnough(point.color)) {
125
+ setBlackColor(point);
126
+ }
127
+ else {
128
+ setWhiteColor(point);
129
+ }
130
+ });
131
+ }
119
132
  // Function to ensure all data labels respect WCHM
120
133
  function ensureWCHMDataLabels(chart) {
121
134
  if (isHighContrastMode()) {
@@ -147,8 +160,11 @@ function ensureWCHMDataLabels(chart) {
147
160
  function getDataLabelsStyle(chart) {
148
161
  return chart.options.plotOptions?.gdcOptions?.dataLabels?.style;
149
162
  }
163
+ function isDonutDataLabelsEnabled(chart) {
164
+ const plotOptions = chart.options.plotOptions;
165
+ return plotOptions?.gdcOptions?.enableDonutDataLabels === true;
166
+ }
150
167
  function applyNormalModeColorLogic(chart, type, theme) {
151
- // Normal mode: Use custom color logic
152
168
  if (type === VisualizationTypes.BAR) {
153
169
  setTimeout(() => {
154
170
  setBarDataLabelsColor(chart, theme);
@@ -173,17 +189,28 @@ export function extendDataLabelColors(Highcharts, theme) {
173
189
  const type = getChartType(chart);
174
190
  const labelsStyle = getDataLabelsStyle(chart);
175
191
  const changeLabelColor = () => {
176
- // Backplate mode: styles already set in config
192
+ // Backplate style: static config already sets background/border/text — no override
177
193
  if (labelsStyle === "backplate") {
178
194
  return;
179
195
  }
196
+ // WCHM takes precedence over any custom color logic so system colors win
180
197
  if (isHighContrastMode()) {
181
- // In WCHM: Ensure all data labels use system colors
182
198
  ensureWCHMDataLabels(chart);
199
+ return;
183
200
  }
184
- else {
185
- applyNormalModeColorLogic(chart, type, theme);
201
+ // New pie/donut behavior gated behind the enableDonutDataLabels feature flag.
202
+ // Position is resolved once for the whole chart — all labels are either inside or outside.
203
+ const isPieOrDonut = isOneOfTypes(type, [VisualizationTypes.PIE, VisualizationTypes.DONUT]);
204
+ if (isDonutDataLabelsEnabled(chart) && isPieOrDonut) {
205
+ // Outside labels sit on the chart background — static config already sets black text
206
+ if (getResolvedPiePosition(chart) === "outside") {
207
+ return;
208
+ }
209
+ // Inside labels sit on the colored slice — pick contrasting text per slice
210
+ setPieInsideLabelsContrast(chart);
211
+ return;
186
212
  }
213
+ applyNormalModeColorLogic(chart, type, theme);
187
214
  };
188
215
  changeLabelColor();
189
216
  Highcharts.addEvent(chart, "redraw", changeLabelColor);
@@ -1 +1 @@
1
- {"version":3,"file":"customConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/customConfiguration.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,KAAK,MAAM,EAA4B,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAkB,KAAK,YAAY,EAAsB,MAAM,kBAAkB,CAAC;AAGzF,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACzF,OAAO,EAEH,KAAK,iBAAiB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEH,KAAK,aAAa,EAMlB,KAAK,mCAAmC,EAC3C,MAAM,yBAAyB,CAAC;AA0GjC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,2BAA2B,KAAK,CAAC;AA+D9C,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,UAAU,CAAC,gCAAgC,EACjD,QAAQ,EAAE,GAAG,GACd,MAAM,CAkBR;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,gCAAgC,GAAG,MAAM,CAiB3F;AAyFD,wBAAgB,kCAAkC,CAC9C,IAAI,EAAE,UAAU,CAAC,OAAO,EACxB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,mCAAmC,GAC3C;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAmB1B;AA8CD,wBAAgB,4BAA4B,CACxC,IAAI,EAAE,UAAU,CAAC,OAAO,EACxB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,mCAAmC,GAC3C;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CA2B1B;AA6JD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAarF;AAED,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAO3F;AAucD,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,SAAS,GAAG,GAAG,CASvE;AA0ND,wBAAgB,oBAAoB,CAChC,YAAY,EAAE,aAAa,EAC3B,aAAa,EAAE,MAAM,aAAa,EAClC,6BAA6B,EAAE,OAAO,GACvC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CActB;AA+DD,eAAO,MAAM,oBAAoB;;CAgBhC,CAAC;AAkVF,wBAAgB,0BAA0B,CACtC,YAAY,EAAE,aAAa,EAC3B,WAAW,CAAC,EAAE,YAAY,EAC1B,WAAW,CAAC,EAAE,YAAY,EAC1B,IAAI,CAAC,EAAE,SAAS,EAChB,KAAK,CAAC,EAAE,MAAM,GACf,iBAAiB,CA+BnB"}
1
+ {"version":3,"file":"customConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/customConfiguration.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,KAAK,MAAM,EAA4B,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAkB,KAAK,YAAY,EAAsB,MAAM,kBAAkB,CAAC;AAGzF,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEzF,OAAO,EAEH,KAAK,iBAAiB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEH,KAAK,aAAa,EAOlB,KAAK,mCAAmC,EAC3C,MAAM,yBAAyB,CAAC;AA0GjC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,2BAA2B,KAAK,CAAC;AA+D9C,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,UAAU,CAAC,gCAAgC,EACjD,QAAQ,EAAE,GAAG,GACd,MAAM,CAkBR;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,gCAAgC,GAAG,MAAM,CAiB3F;AAyFD,wBAAgB,kCAAkC,CAC9C,IAAI,EAAE,UAAU,CAAC,OAAO,EACxB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,mCAAmC,GAC3C;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAmB1B;AA8CD,wBAAgB,4BAA4B,CACxC,IAAI,EAAE,UAAU,CAAC,OAAO,EACxB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,mCAAmC,GAC3C;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CA2B1B;AA6JD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAarF;AAED,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAO3F;AAkgBD,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,SAAS,GAAG,GAAG,CASvE;AA0ND,wBAAgB,oBAAoB,CAChC,YAAY,EAAE,aAAa,EAC3B,aAAa,EAAE,MAAM,aAAa,EAClC,6BAA6B,EAAE,OAAO,GACvC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CActB;AA+DD,eAAO,MAAM,oBAAoB;;CAgBhC,CAAC;AAkVF,wBAAgB,0BAA0B,CACtC,YAAY,EAAE,aAAa,EAC3B,WAAW,CAAC,EAAE,YAAY,EAC1B,WAAW,CAAC,EAAE,YAAY,EAC1B,IAAI,CAAC,EAAE,SAAS,EAChB,KAAK,CAAC,EAAE,MAAM,GACf,iBAAiB,CA+BnB"}
@@ -5,6 +5,7 @@ import { ClientFormatterFacade } from "@gooddata/number-formatter";
5
5
  import { isMeasureFormatInPercent } from "@gooddata/sdk-model";
6
6
  import { VisualizationTypes } from "@gooddata/sdk-ui";
7
7
  import { buildTooltipLocalizedStrings, getLighterColor, isPatternObject } from "@gooddata/sdk-ui-vis-commons";
8
+ import { getBlackLabelStyle } from "../../constants/label.js";
8
9
  import { isHighContrastMode } from "../../utils/highContrastMode.js";
9
10
  import { supportedDualAxesChartTypes, supportedTooltipFollowPointerChartTypes, } from "../_chartOptions/chartCapabilities.js";
10
11
  import { AXIS_LINE_COLOR } from "../_util/color.js";
@@ -503,11 +504,48 @@ function getTreemapLabelsConfiguration(isMultiLevel, styling, config, labelsConf
503
504
  function shouldDisableHeatmapDataLabels(series) {
504
505
  return series.some((item) => (item.data?.length ?? 0) >= HEATMAP_DATA_LABELS_LIMIT);
505
506
  }
507
+ const AUTO_POSITION_OUTSIDE_THRESHOLD = 5;
508
+ // Whole-chart auto decision: if the smallest visible slice is <= 5%, all labels render outside
509
+ // as callouts; otherwise all labels render inside. A chart never mixes inside and outside.
510
+ function resolvePiePosition(position, seriesData) {
511
+ if (position === "inside" || position === "outside") {
512
+ return position;
513
+ }
514
+ const positiveValues = (seriesData ?? [])
515
+ .map((item) => (typeof item?.y === "number" ? item.y : 0))
516
+ .filter((value) => value > 0);
517
+ if (positiveValues.length === 0) {
518
+ return "inside";
519
+ }
520
+ const total = positiveValues.reduce((sum, value) => sum + value, 0);
521
+ const minPercentage = (Math.min(...positiveValues) / total) * 100;
522
+ return minPercentage <= AUTO_POSITION_OUTSIDE_THRESHOLD ? "outside" : "inside";
523
+ }
524
+ function getPieLabelDataLabelsConfig(labelsStyle, resolvedPosition, defaultLabelsConfig, theme) {
525
+ // Backplate composes with either placement — keep the pre-computed backplate style so
526
+ // its backgroundColor/borderColor flow through. Non-backplate outside labels need black
527
+ // text because they sit on the chart background rather than a slice (pie inherits white
528
+ // via whiteDataLabelTypes which would blend into a light chart bg).
529
+ const insideStyle = { ...defaultLabelsConfig.style, textOutline: "none" };
530
+ const outsideStyle = labelsStyle === "backplate" ? insideStyle : { ...getBlackLabelStyle(theme), textOutline: "none" };
531
+ if (resolvedPosition === "outside") {
532
+ return [{ ...defaultLabelsConfig, style: outsideStyle, distance: 30 }];
533
+ }
534
+ // Load event in pieConfiguration/donutConfiguration patches the distance after render.
535
+ return [{ ...defaultLabelsConfig, style: insideStyle, verticalAlign: "middle" }];
536
+ }
506
537
  function getDataLabelsConfiguration(chartOptions, _config, chartConfig, _drillConfig, _intl, theme) {
507
538
  const { stacking, yAxes = [], type } = chartOptions;
508
539
  const { stackMeasuresToPercent = false, enableSeparateTotalLabels = false } = chartConfig || {};
509
540
  const labelsVisible = chartConfig?.dataLabels?.visible;
510
541
  const labelsStyle = chartConfig?.dataLabels?.style;
542
+ const labelsPosition = chartConfig?.dataLabels?.position;
543
+ // Position is a pie/donut-only concept — resolve only for those chart types so we don't
544
+ // pollute gdcOptions on every chart.
545
+ const isPieOrDonut = type === VisualizationTypes.PIE || type === VisualizationTypes.DONUT;
546
+ const resolvedPiePosition = isPieOrDonut
547
+ ? resolvePiePosition(labelsPosition, chartOptions.data?.series?.[0]?.data)
548
+ : undefined;
511
549
  // handling of existing behaviour
512
550
  const totalsVisible = isBarChart(type) && !enableSeparateTotalLabels ? false : getTotalsVisibility(chartConfig);
513
551
  const labelsConfig = getLabelsVisibilityConfig(labelsVisible);
@@ -545,7 +583,11 @@ function getDataLabelsConfiguration(chartOptions, _config, chartConfig, _drillCo
545
583
  visible: labelsVisible,
546
584
  totalsVisible: totalsVisible,
547
585
  style: labelsStyle,
586
+ // Read by the pie/donut load event and the label-color plugin at runtime
587
+ // (see getResolvedPiePosition in helpers.ts).
588
+ resolvedPosition: resolvedPiePosition,
548
589
  },
590
+ enableDonutDataLabels: chartConfig?.enableDonutDataLabels,
549
591
  },
550
592
  bar: {
551
593
  dataLabels: {
@@ -593,10 +635,9 @@ function getDataLabelsConfiguration(chartOptions, _config, chartConfig, _drillCo
593
635
  },
594
636
  },
595
637
  pie: {
596
- dataLabels: {
597
- ...DEFAULT_LABELS_CONFIG,
598
- verticalAlign: "middle",
599
- },
638
+ dataLabels: chartConfig?.enableDonutDataLabels && resolvedPiePosition
639
+ ? getPieLabelDataLabelsConfig(labelsStyle, resolvedPiePosition, DEFAULT_LABELS_CONFIG, theme)
640
+ : { ...DEFAULT_LABELS_CONFIG, verticalAlign: "middle" },
600
641
  },
601
642
  waterfall: {
602
643
  dataLabels: {
@@ -23,6 +23,7 @@ export declare const getHiddenSeries: (chart: import("highcharts").Chart) => imp
23
23
  export declare const getDataPoints: (series: import("highcharts").Series[]) => import("highcharts").Point[];
24
24
  export declare const getDataPointsOfVisibleSeries: (chart: import("highcharts").Chart) => import("highcharts").Point[];
25
25
  export declare const getChartType: (chart: import("highcharts").Chart) => string | undefined;
26
+ export declare const getResolvedPiePosition: (chart: import("highcharts").Chart) => "inside" | "outside" | undefined;
26
27
  export declare const isStacked: (chart: import("highcharts").Chart) => boolean;
27
28
  export declare function getChartProperties(config: IChartConfig, type: VisType | undefined): any;
28
29
  export declare const getPointPositions: (point: any) => {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/helpers.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,13 @@ export const getHiddenSeries = (chart) => chart.series?.filter((s) => !s.visible
15
15
  export const getDataPoints = (series) => compact(unzip(series.map((s) => s.points)).flat());
16
16
  export const getDataPointsOfVisibleSeries = (chart) => getDataPoints(getVisibleSeries(chart));
17
17
  export const getChartType = (chart) => chart.options.chart?.type;
18
+ // Reads the pie/donut label position that customConfiguration resolved from chart data at build
19
+ // time (see resolvePiePosition). Stored on plotOptions.gdcOptions rather than the standard
20
+ // Highcharts config so the load event and the label-color plugin can share the same decision.
21
+ export const getResolvedPiePosition = (chart) => {
22
+ const plotOptions = chart.options.plotOptions;
23
+ return plotOptions?.gdcOptions?.dataLabels?.resolvedPosition;
24
+ };
18
25
  export const isStacked = (chart) => {
19
26
  const chartType = getChartType(chart);
20
27
  const chartTypeOptions = chart.userOptions?.plotOptions?.[chartType];
@@ -1 +1 @@
1
- {"version":3,"file":"chartOptionsForSettings.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartOptionsForSettings.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAqBvE;;GAEG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,YAAY,GAAG,SAAS,EAChC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAChC,YAAY,CA6Bd"}
1
+ {"version":3,"file":"chartOptionsForSettings.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartOptionsForSettings.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAsBvE;;GAEG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,YAAY,GAAG,SAAS,EAChC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAChC,YAAY,CA6Bd"}
@@ -15,6 +15,7 @@ function getSettingsBasedConfig(settings) {
15
15
  ...(settings.enableAccessibilityMode
16
16
  ? { enableSingleBubbleSeries: true, enableContrastSafeDerivedColors: true }
17
17
  : {}),
18
+ ...(settings.enableDonutDataLabels ? { enableDonutDataLabels: true } : {}),
18
19
  };
19
20
  }
20
21
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"donutConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/donutChart/donutConfiguration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAK5D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CAuB7E"}
1
+ {"version":3,"file":"donutConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/donutChart/donutConfiguration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAK5D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CAiC7E"}
@@ -1,6 +1,6 @@
1
1
  // (C) 2007-2026 GoodData Corporation
2
2
  import { merge } from "lodash-es";
3
- import { alignChart } from "../_chartCreators/helpers.js";
3
+ import { alignChart, getResolvedPiePosition } from "../_chartCreators/helpers.js";
4
4
  import { highlightChartPoints } from "../_chartHighlighting/highlightPoints.js";
5
5
  import { getPieConfiguration } from "../pieChart/pieConfiguration.js";
6
6
  export function getDonutConfiguration(config) {
@@ -8,11 +8,22 @@ export function getDonutConfiguration(config) {
8
8
  chart: {
9
9
  events: {
10
10
  load() {
11
- this.series[0].update({
12
- dataLabels: {
13
- distance: -((this.series[0].points?.[0]?.shapeArgs?.["r"] ?? 40) * 0.25),
14
- },
15
- });
11
+ if (config?.enableDonutDataLabels) {
12
+ if (getResolvedPiePosition(this) === "inside") {
13
+ const distance = -((this.series[0].points?.[0]?.shapeArgs?.["r"] ?? 40) * 0.25);
14
+ this.series[0].update({
15
+ type: "pie",
16
+ dataLabels: [{ distance, style: { textOutline: "none" } }],
17
+ });
18
+ }
19
+ }
20
+ else {
21
+ this.series[0].update({
22
+ dataLabels: {
23
+ distance: -((this.series[0].points?.[0]?.shapeArgs?.["r"] ?? 40) * 0.25),
24
+ },
25
+ });
26
+ }
16
27
  alignChart(this, config.chart?.verticalAlign);
17
28
  highlightChartPoints(this.series, config);
18
29
  },
@@ -1 +1 @@
1
- {"version":3,"file":"pieConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/pieChart/pieConfiguration.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,KAAK,iBAAiB,EAAyB,MAAM,oBAAoB,CAAC;AAKnF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CA2C3E"}
1
+ {"version":3,"file":"pieConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/pieChart/pieConfiguration.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,KAAK,iBAAiB,EAAyB,MAAM,oBAAoB,CAAC;AAKnF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CA0D3E"}
@@ -1,5 +1,5 @@
1
1
  // (C) 2007-2026 GoodData Corporation
2
- import { alignChart } from "../_chartCreators/helpers.js";
2
+ import { alignChart, getResolvedPiePosition } from "../_chartCreators/helpers.js";
3
3
  import { getPieResponsiveConfig } from "../_chartCreators/responsive.js";
4
4
  import { highlightChartPoints } from "../_chartHighlighting/highlightPoints.js";
5
5
  export function getPieConfiguration(config) {
@@ -8,14 +8,30 @@ export function getPieConfiguration(config) {
8
8
  type: "pie",
9
9
  events: {
10
10
  load() {
11
- const distance = -((this.series[0].points?.[0]?.shapeArgs?.["r"] ?? 30) / 3);
12
- const options = {
13
- type: "pie",
14
- dataLabels: {
15
- distance,
16
- },
17
- };
18
- this.series[0].update(options);
11
+ if (config?.enableDonutDataLabels) {
12
+ // Only inside placement needs runtime distance patching; outside sits at
13
+ // distance 30 from the static config. Backplate composes with whichever
14
+ // placement is active — no extra branch needed here.
15
+ if (getResolvedPiePosition(this) === "inside") {
16
+ const distance = -((this.series[0].points?.[0]?.shapeArgs?.["r"] ?? 30) / 3);
17
+ const options = {
18
+ type: "pie",
19
+ dataLabels: [{ distance, style: { textOutline: "none" } }],
20
+ };
21
+ this.series[0].update(options);
22
+ }
23
+ }
24
+ else {
25
+ // Legacy behavior: unconditional distance patch (plain object).
26
+ const distance = -((this.series[0].points?.[0]?.shapeArgs?.["r"] ?? 30) / 3);
27
+ const options = {
28
+ type: "pie",
29
+ dataLabels: {
30
+ distance,
31
+ },
32
+ };
33
+ this.series[0].update(options);
34
+ }
19
35
  alignChart(this, config.chart?.verticalAlign);
20
36
  highlightChartPoints(this.series, config);
21
37
  },
@@ -206,6 +206,11 @@ export interface IChartConfig {
206
206
  */
207
207
  enableReversedStacking?: boolean;
208
208
  enableSeparateTotalLabels?: boolean;
209
+ /**
210
+ * Enables the new pie/donut data label styles (inside/outside) and adaptive auto mode.
211
+ * When off, only the legacy auto/backplate styles are available.
212
+ */
213
+ enableDonutDataLabels?: boolean;
209
214
  /**
210
215
  * Enables accessible tooltip for the chart.
211
216
  */
@@ -702,11 +707,19 @@ export interface IDataLabelsConfig {
702
707
  */
703
708
  percentsVisible?: boolean;
704
709
  /**
705
- * Style of data labels rendering.
706
- * - "auto": default label style depending on chart type and context
707
- * - "backplate": render labels with a backplate behind text for better contrast
710
+ * Visual style of data labels. Shared across all chart types.
711
+ * - "auto" (default): plain label text with automatic contrast color
712
+ * - "backplate": solid background rectangle behind label text; composes with any position
708
713
  */
709
714
  style?: "auto" | "backplate";
715
+ /**
716
+ * Placement of data labels. Applies to pie and donut charts only.
717
+ * - "auto" (default): whole-chart adaptive — outside (callouts with leader lines) when the smallest
718
+ * visible slice is ≤ 5%, inside otherwise. A chart never mixes inside and outside.
719
+ * - "inside": force every label inside its slice; labels that don't fit are omitted
720
+ * - "outside": place every label outside with a leader line
721
+ */
722
+ position?: "auto" | "inside" | "outside";
710
723
  }
711
724
  /**
712
725
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"chartConfig.d.ts","sourceRoot":"","sources":["../../src/interfaces/chartConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chartConfig.d.ts","sourceRoot":"","sources":["../../src/interfaces/chartConfig.ts"],"names":[],"mappings":"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"}
@@ -1004,6 +1004,11 @@ export declare interface IChartConfig {
1004
1004
  */
1005
1005
  enableReversedStacking?: boolean;
1006
1006
  enableSeparateTotalLabels?: boolean;
1007
+ /**
1008
+ * Enables the new pie/donut data label styles (inside/outside) and adaptive auto mode.
1009
+ * When off, only the legacy auto/backplate styles are available.
1010
+ */
1011
+ enableDonutDataLabels?: boolean;
1007
1012
  /**
1008
1013
  * Enables accessible tooltip for the chart.
1009
1014
  */
@@ -1586,11 +1591,19 @@ export declare interface IDataLabelsConfig {
1586
1591
  */
1587
1592
  percentsVisible?: boolean;
1588
1593
  /**
1589
- * Style of data labels rendering.
1590
- * - "auto": default label style depending on chart type and context
1591
- * - "backplate": render labels with a backplate behind text for better contrast
1594
+ * Visual style of data labels. Shared across all chart types.
1595
+ * - "auto" (default): plain label text with automatic contrast color
1596
+ * - "backplate": solid background rectangle behind label text; composes with any position
1592
1597
  */
1593
1598
  style?: "auto" | "backplate";
1599
+ /**
1600
+ * Placement of data labels. Applies to pie and donut charts only.
1601
+ * - "auto" (default): whole-chart adaptive — outside (callouts with leader lines) when the smallest
1602
+ * visible slice is ≤ 5%, inside otherwise. A chart never mixes inside and outside.
1603
+ * - "inside": force every label inside its slice; labels that don't fit are omitted
1604
+ * - "outside": place every label outside with a leader line
1605
+ */
1606
+ position?: "auto" | "inside" | "outside";
1594
1607
  }
1595
1608
 
1596
1609
  /**
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.58.9"
8
+ "packageVersion": "7.58.12"
9
9
  }
10
10
  ]
11
11
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-charts",
3
- "version": "11.50.0-alpha.0",
3
+ "version": "11.50.0-alpha.2",
4
4
  "description": "GoodData.UI SDK - Charts",
5
5
  "license": "LicenseRef-LICENSE",
6
6
  "author": "GoodData Corporation",
@@ -69,13 +69,13 @@
69
69
  "ts-invariant": "0.10.3",
70
70
  "tslib": "2.8.1",
71
71
  "uuid": "11.1.1",
72
- "@gooddata/sdk-model": "11.50.0-alpha.0",
73
- "@gooddata/sdk-ui-theme-provider": "11.50.0-alpha.0",
74
- "@gooddata/sdk-ui": "11.50.0-alpha.0",
75
- "@gooddata/sdk-backend-spi": "11.50.0-alpha.0",
76
- "@gooddata/sdk-ui-vis-commons": "11.50.0-alpha.0",
77
- "@gooddata/util": "11.50.0-alpha.0",
78
- "@gooddata/sdk-ui-kit": "11.50.0-alpha.0"
72
+ "@gooddata/sdk-backend-spi": "11.50.0-alpha.2",
73
+ "@gooddata/sdk-model": "11.50.0-alpha.2",
74
+ "@gooddata/sdk-ui": "11.50.0-alpha.2",
75
+ "@gooddata/sdk-ui-theme-provider": "11.50.0-alpha.2",
76
+ "@gooddata/sdk-ui-kit": "11.50.0-alpha.2",
77
+ "@gooddata/sdk-ui-vis-commons": "11.50.0-alpha.2",
78
+ "@gooddata/util": "11.50.0-alpha.2"
79
79
  },
80
80
  "devDependencies": {
81
81
  "@microsoft/api-documenter": "^7.17.0",
@@ -120,11 +120,11 @@
120
120
  "typescript": "5.9.3",
121
121
  "vitest": "4.1.8",
122
122
  "vitest-dom": "0.1.1",
123
- "@gooddata/eslint-config": "11.50.0-alpha.0",
124
- "@gooddata/oxlint-config": "11.50.0-alpha.0",
125
- "@gooddata/reference-workspace": "11.50.0-alpha.0",
126
- "@gooddata/stylelint-config": "11.50.0-alpha.0",
127
- "@gooddata/sdk-backend-mockingbird": "11.50.0-alpha.0"
123
+ "@gooddata/eslint-config": "11.50.0-alpha.2",
124
+ "@gooddata/reference-workspace": "11.50.0-alpha.2",
125
+ "@gooddata/sdk-backend-mockingbird": "11.50.0-alpha.2",
126
+ "@gooddata/stylelint-config": "11.50.0-alpha.2",
127
+ "@gooddata/oxlint-config": "11.50.0-alpha.2"
128
128
  },
129
129
  "peerDependencies": {
130
130
  "react": "^18.0.0 || ^19.0.0",