@gooddata/sdk-ui-charts 11.52.0-alpha.5 → 11.52.0-alpha.6

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":"ChartTransformation.d.ts","sourceRoot":"","sources":["../../src/highcharts/ChartTransformation.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAA2B,MAAM,OAAO,CAAC;AAQnE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAMzB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAuB,KAAK,iBAAiB,EAAoB,MAAM,8BAA8B,CAAC;AAE7G,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAIjE,OAAO,EAEH,KAAK,wBAAwB,EAGhC,MAAM,iCAAiC,CAAC;AAczC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,wBAAwB,GAAG,YAAY,CAM9E;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;IACrB,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,SAAS,CAAC;IAEpB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAE7B,WAAW,IAAI,IAAI,CAAC;IACpB,cAAc,CAAC,YAAY,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/D,gBAAgB,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAEvD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,CAAC,GAAG,EAAE,wBAAwB,GAAG,YAAY,CAAC;IAEvD,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;CACxC;AAmKD,eAAO,MAAM,mBAAmB,iJAK9B,CAAC"}
1
+ {"version":3,"file":"ChartTransformation.d.ts","sourceRoot":"","sources":["../../src/highcharts/ChartTransformation.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAoC,MAAM,OAAO,CAAC;AAQ5E,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAMzB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAuB,KAAK,iBAAiB,EAAoB,MAAM,8BAA8B,CAAC;AAE7G,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAIjE,OAAO,EAEH,KAAK,wBAAwB,EAGhC,MAAM,iCAAiC,CAAC;AAezC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,wBAAwB,GAAG,YAAY,CAM9E;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;IACrB,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,SAAS,CAAC;IAEpB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAE7B,WAAW,IAAI,IAAI,CAAC;IACpB,cAAc,CAAC,YAAY,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/D,gBAAgB,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAEvD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,CAAC,GAAG,EAAE,wBAAwB,GAAG,YAAY,CAAC;IAEvD,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;CACxC;AAyKD,eAAO,MAAM,mBAAmB,iJAK9B,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  // (C) 2007-2026 GoodData Corporation
3
- import { memo, useEffect, useRef } from "react";
3
+ import { memo, useEffect, useMemo, useRef } from "react";
4
4
  import Highcharts from "highcharts/esm/highcharts.js";
5
5
  import { isEqual, omitBy } from "lodash-es";
6
6
  import { useIntl } from "react-intl";
7
7
  import { invariant } from "ts-invariant";
8
- import { anomaliesTitleFromIntl, clusterTitleFromIntl, convertDrillableItemsToPredicates, emptyHeaderTitleFromIntl, totalColumnTitleFromIntl, } from "@gooddata/sdk-ui";
8
+ import { DataViewFacade, anomaliesTitleFromIntl, clusterTitleFromIntl, convertDrillableItemsToPredicates, emptyHeaderTitleFromIntl, totalColumnTitleFromIntl, } from "@gooddata/sdk-ui";
9
9
  import { useReferenceTheme, withTheme } from "@gooddata/sdk-ui-theme-provider";
10
10
  import { useTooltipLookup } from "@gooddata/sdk-ui-vis-commons";
11
11
  import { initChartPlugins } from "./adapter/chartPlugins.js";
@@ -18,14 +18,17 @@ import { getHighchartsOptions } from "./chartTypes/_chartCreators/highChartsCrea
18
18
  import { getDataTooLargeErrorMessage, getIsFilteringRecommended, validateData, } from "./chartTypes/_chartOptions/chartLimits.js";
19
19
  import { getChartOptions } from "./chartTypes/_chartOptions/chartOptionsBuilder.js";
20
20
  import { isChartSupported, stringifyChartTypes } from "./chartTypes/_util/common.js";
21
+ import { getMekkoEffectiveConfig } from "./chartTypes/mekko/mekkoChartOptions.js";
21
22
  export function renderHighCharts(props) {
22
23
  const childrenRenderer = (contentRect) => (_jsx(HighChartsRenderer, { contentRect: contentRect, ...props }));
23
24
  return _jsx(HighChartsMeasuredRenderer, { childrenRenderer: childrenRenderer });
24
25
  }
25
- function ChartTransformationImpl({ config, renderer = renderHighCharts, dataView, height, width, afterRender = () => { }, onDrill = () => true, onLegendReady = () => { }, locale, theme, referenceTheme: referenceThemeProp, numericSymbols, drillableItems = [], onDataTooLarge, onNegativeValues = null, pushData = () => { }, tooltipExecution, }) {
26
+ function ChartTransformationImpl({ config: configProp, renderer = renderHighCharts, dataView, height, width, afterRender = () => { }, onDrill = () => true, onLegendReady = () => { }, locale, theme, referenceTheme: referenceThemeProp, numericSymbols, drillableItems = [], onDataTooLarge, onNegativeValues = null, pushData = () => { }, tooltipExecution, }) {
26
27
  const intl = useIntl();
27
28
  const referenceThemeFromContext = useReferenceTheme();
28
29
  const referenceTheme = referenceThemeProp ?? referenceThemeFromContext;
30
+ // mekko stacking is bucket-driven — sanitize stackMeasures* once for every config consumer below
31
+ const config = useMemo(() => getMekkoEffectiveConfig(configProp, DataViewFacade.for(dataView)), [configProp, dataView]);
29
32
  const visType = config.type;
30
33
  const drillablePredicates = convertDrillableItemsToPredicates(drillableItems);
31
34
  // `undefined` until the first result lands (treated as "no external values").
@@ -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;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;AA+gBD,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;AAwhBD,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"}
@@ -402,6 +402,13 @@ function labelFormatterScatter() {
402
402
  }
403
403
  return null;
404
404
  }
405
+ function labelFormatterMekkoWidth(config) {
406
+ const value = this.point?.z;
407
+ if (value === null || value === undefined || isNaN(value)) {
408
+ return null;
409
+ }
410
+ return formatLabel(value, this.point?.format, config);
411
+ }
405
412
  // check whether series contains only positive values, not consider nulls
406
413
  function hasOnlyPositiveValues(series, x) {
407
414
  return series.every((seriesItem) => {
@@ -603,14 +610,15 @@ function getDataLabelsConfiguration(chartOptions, _config, chartConfig, _drillCo
603
610
  ...dataLabelsBugWorkaround,
604
611
  },
605
612
  },
606
- // mekko; keeps absolute labels when negative values block "stack to 100%",
607
- // as Highcharts computes point.percentage even then
613
+ // mekko: width-only without Stack By labels the Width value; absolute when negatives block 100%
608
614
  variwide: {
609
615
  dataLabels: {
610
616
  ...DEFAULT_LABELS_CONFIG,
611
- formatter: partial(chartOptions.stackToPercentBlockedByNegativeValues
612
- ? labelFormatter
613
- : dataLabelFormatter, chartConfig),
617
+ formatter: partial(chartOptions.mekkoWidthOnly && !chartOptions.hasStackByAttribute
618
+ ? labelFormatterMekkoWidth
619
+ : chartOptions.stackToPercentBlockedByNegativeValues
620
+ ? labelFormatter
621
+ : dataLabelFormatter, chartConfig),
614
622
  },
615
623
  },
616
624
  heatmap: {
@@ -1 +1 @@
1
- {"version":3,"file":"chartAxes.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartAxes.ts"],"names":[],"mappings":"AAIA,OAAO,EAA2B,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAe,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAiCvE,wBAAgB,QAAQ,CACpB,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,EAC3D,eAAe,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EACvE,qBAAqB,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EAC7E,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,GAChC,KAAK,EAAE,CAqDT;AAoHD,wBAAgB,QAAQ,CACpB,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,EAC3D,gBAAgB,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,GACzE,KAAK,EAAE,CAgCT;AAuCD,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,CAgBhF"}
1
+ {"version":3,"file":"chartAxes.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartAxes.ts"],"names":[],"mappings":"AAIA,OAAO,EAA2B,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAe,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAmCvE,wBAAgB,QAAQ,CACpB,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,EAC3D,eAAe,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EACvE,qBAAqB,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EAC7E,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,GAChC,KAAK,EAAE,CAqDT;AAsID,wBAAgB,QAAQ,CACpB,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,EAC3D,gBAAgB,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,GACzE,KAAK,EAAE,CAoCT;AAuCD,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,CAgBhF"}
@@ -1,7 +1,8 @@
1
1
  // (C) 2007-2026 GoodData Corporation
2
2
  import { compact, isEmpty, range } from "lodash-es";
3
3
  import { BucketNames } from "@gooddata/sdk-ui";
4
- import { isBarChart, isBubbleChart, isComboChart, isHeatmap, isLineChart, isOneOfTypes, isScatterPlot, isSupportingJoinedAttributeAxisName, unwrap, } from "../_util/common.js";
4
+ import { isBarChart, isBubbleChart, isComboChart, isHeatmap, isLineChart, isMekko, isOneOfTypes, isScatterPlot, isSupportingJoinedAttributeAxisName, unwrap, } from "../_util/common.js";
5
+ import { getMekkoMeasures } from "../mekko/mekkoChartOptions.js";
5
6
  import { supportedDualAxesChartTypes } from "./chartCapabilities.js";
6
7
  function preprocessMeasureGroupItems(measureGroup, defaultValues) {
7
8
  return measureGroup.items.map((item, index) => {
@@ -84,6 +85,18 @@ function getHeatmapYAxes(stackByAttribute) {
84
85
  },
85
86
  ];
86
87
  }
88
+ // Mekko's Y axis reads the Height measure; blank when width-only.
89
+ function getMekkoYAxes(dv, config, measureGroup) {
90
+ const { height } = getMekkoMeasures(dv, measureGroup);
91
+ const heightItem = height ? unwrap(height) : undefined;
92
+ return [
93
+ {
94
+ label: config.yLabel || (heightItem?.name ?? ""),
95
+ format: config.yFormat || heightItem?.format,
96
+ seriesIndices: range(measureGroup.items.length),
97
+ },
98
+ ];
99
+ }
87
100
  function addSeriesIndicesToAxis(axis, measuresInAxis) {
88
101
  if (!axis) {
89
102
  return null;
@@ -149,6 +162,9 @@ export function getYAxes(dv, config, measureGroup, stackByAttribute) {
149
162
  if (isHeatmap(type)) {
150
163
  return getHeatmapYAxes(stackByAttribute);
151
164
  }
165
+ if (isMekko(type)) {
166
+ return getMekkoYAxes(dv, config, measureGroup);
167
+ }
152
168
  const isDualAxes = isOneOfTypes(type, supportedDualAxesChartTypes) &&
153
169
  !isEmpty(measureGroupItems) &&
154
170
  !isEmpty(secondaryAxisMeasures);
@@ -1 +1 @@
1
- {"version":3,"file":"chartOptionsBuilder.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartOptionsBuilder.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAyD,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACzG,OAAO,EAEH,cAAc,EACd,KAAK,gBAAgB,EAGxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,8BAA8B,CAAC;AAE3F,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AASvE,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,WAAW,EAEnB,MAAM,yBAAyB,CAAC;AA+JjC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAE7C,wBAAgB,qBAAqB,CACjC,MAAM,2BAAoB,EAC1B,aAAa,EAAE,cAAc,GAC9B,2BAA2B,EAAE,CAoC/B;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CAuBjF;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CA4C1E;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CAmB9E;AAED,KAAK,iBAAiB,GAAG;IACrB,eAAe,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IAC7D,qBAAqB,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IACnE,gBAAgB,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IAC9D,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAsFF,wBAAgB,eAAe,CAC3B,QAAQ,EAAE,SAAS,EACnB,WAAW,EAAE,YAAY,EACzB,cAAc,EAAE,gBAAgB,EAAE,EAClC,gBAAgB,EAAE,MAAM,EACxB,KAAK,CAAC,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,YAAY,CAAC,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,MAAM,GACxB,aAAa,CAief"}
1
+ {"version":3,"file":"chartOptionsBuilder.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartOptionsBuilder.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAyD,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACzG,OAAO,EAEH,cAAc,EACd,KAAK,gBAAgB,EAGxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,8BAA8B,CAAC;AAE3F,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AASvE,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,WAAW,EAEnB,MAAM,yBAAyB,CAAC;AAiKjC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAE7C,wBAAgB,qBAAqB,CACjC,MAAM,2BAAoB,EAC1B,aAAa,EAAE,cAAc,GAC9B,2BAA2B,EAAE,CAoC/B;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CAuBjF;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CA4C1E;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CAmB9E;AAED,KAAK,iBAAiB,GAAG;IACrB,eAAe,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IAC7D,qBAAqB,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IACnE,gBAAgB,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IAC9D,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAsFF,wBAAgB,eAAe,CAC3B,QAAQ,EAAE,SAAS,EACnB,WAAW,EAAE,YAAY,EACzB,cAAc,EAAE,gBAAgB,EAAE,EAClC,gBAAgB,EAAE,MAAM,EACxB,KAAK,CAAC,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,YAAY,CAAC,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,MAAM,GACxB,aAAa,CAqff"}
@@ -9,7 +9,7 @@ import { getChartProperties } from "../_chartCreators/helpers.js";
9
9
  import { isAreaChart, isBubbleChart, isChartSupported, isComboChart, isHeatmap, isMekko, isOneOfTypes, isPyramid, isSankeyOrDependencyWheel, isScatterPlot, isTreemap, isWaterfall, stringifyChartTypes, unwrap, } from "../_util/common.js";
10
10
  import { findAttributeInDimension, findMeasureGroupInDimensions } from "../_util/executionResultHelper.js";
11
11
  import { canComboChartBeStackedInPercent, getComboChartSeries, getComboChartStackingConfig, } from "../comboChart/comboChartOptions.js";
12
- import { collapseMekkoViewByItems, dropZeroWidthMekkoColumns, isMekkoPercentBlockedByNegatives, } from "../mekko/mekkoChartOptions.js";
12
+ import { collapseMekkoViewByItems, dropZeroWidthMekkoColumns, getMekkoMeasures, getMekkoWidthOnlyYAxisProps, isMekkoPercentBlockedByNegatives, isMekkoWidthOnly, } from "../mekko/mekkoChartOptions.js";
13
13
  import { buildWaterfallChartSeries, getColorAssignment, getWaterfallChartCategories, } from "../waterfallChart/waterfallChartOptions.js";
14
14
  import { assignYAxes, getXAxes, getYAxes } from "./chartAxes.js";
15
15
  import { multiMeasuresAlternatingTypes, showingNameInLegendWhenViewByPresent, unsupportedStackingTypes, } from "./chartCapabilities.js";
@@ -19,7 +19,7 @@ import { assignForecastAxes } from "./chartForecast.js";
19
19
  import { assignOutliersAxes } from "./chartOutliers.js";
20
20
  import { getSeries } from "./chartSeries.js";
21
21
  import { filterThresholdZonesCategories, setupComboThresholdZones, setupThresholdZones, } from "./chartThresholds.js";
22
- import { buildTooltipFactory, generateDescriptionHeatmapFn, generateDescriptionScatterPlotFn, generateDescriptionTreemapFn, generateDescriptionXYFn, generateTooltipHeatmapFn, generateTooltipSankeyChartFn, generateTooltipScatterPlotFn, generateTooltipXYFn, getTooltipFactory, getTooltipWaterfallChart, } from "./chartTooltips.js";
22
+ import { buildTooltipFactory, generateDescriptionHeatmapFn, generateDescriptionScatterPlotFn, generateDescriptionTreemapFn, generateDescriptionXYFn, generateTooltipHeatmapFn, generateTooltipMekkoFn, generateTooltipSankeyChartFn, generateTooltipScatterPlotFn, generateTooltipXYFn, getTooltipFactory, getTooltipWaterfallChart, } from "./chartTooltips.js";
23
23
  import { ColorFactory } from "./colorFactory.js";
24
24
  import { setMeasuresToSecondaryAxis } from "./dualAxis.js";
25
25
  import { getCategoriesForTwoAttributes } from "./extendedStackingChartOptions.js";
@@ -65,10 +65,7 @@ function getCategories(type, measureGroup, viewByAttribute, stackByAttribute, em
65
65
  function getStackingConfig(stackByAttribute, options) {
66
66
  const { type, stackMeasures, stackMeasuresToPercent } = options;
67
67
  const stackingValue = stackMeasuresToPercent ? "percent" : "normal";
68
- // Mekko has a single Height measure, so it stacks ONLY by the Stack-by attribute. Without a
69
- // stack attribute there is nothing to stack: applying stack-measures / stack-to-100% to the
70
- // single series would collapse every column to uniform full height. Guard before the generic
71
- // stackMeasures/stackMeasuresToPercent branch below (which a stale property would otherwise hit).
68
+ // Mekko stacks ONLY by the Stack-by attribute; its stackMeasures* flags are pre-sanitized bucket-driven
72
69
  if (isMekko(type)) {
73
70
  return stackByAttribute ? stackingValue : null;
74
71
  }
@@ -501,7 +498,6 @@ export function getChartOptions(dataView, chartConfig, drillableItems, emptyHead
501
498
  ...measureGroup.items[0],
502
499
  };
503
500
  }
504
- const tooltipFactory = getTooltipFactory(isViewByTwoAttributes, viewByAttribute, viewByParentAttribute, stackByAttribute, measure, emptyHeaderTitle, config, isDualAxis);
505
501
  // apply distinct point shapes configuration if enabled
506
502
  const finalSeries = setupDistinctPointShapesToSeries(type, series, config, measureGroup);
507
503
  // Mekko: drop zero-width columns (Width/point.z of 0) from series + categories in lockstep.
@@ -513,10 +509,17 @@ export function getChartOptions(dataView, chartConfig, drillableItems, emptyHead
513
509
  // returned options for downstream consumers (stacking config, ChartTransformation).
514
510
  const stackToPercentBlockedByNegativeValues = isMekkoPercentBlockedByNegatives(type, outSeries);
515
511
  const effectiveStacking = stacking === "percent" && stackToPercentBlockedByNegativeValues ? "normal" : stacking;
512
+ const mekkoWidthOnly = isMekko(type) && isMekkoWidthOnly(dv);
513
+ const mekkoMeasures = isMekko(type) ? getMekkoMeasures(dv, measureGroup) : {};
514
+ const tooltipFactory = isMekko(type)
515
+ ? generateTooltipMekkoFn(mekkoMeasures.width, mekkoMeasures.height, viewByAttribute, stackByAttribute, config, effectiveStacking === "percent", mekkoWidthOnly)
516
+ : getTooltipFactory(isViewByTwoAttributes, viewByAttribute, viewByParentAttribute, stackByAttribute, measure, emptyHeaderTitle, config, isDualAxis);
517
+ const effectiveYAxisProps = getMekkoWidthOnlyYAxisProps(mekkoWidthOnly, Boolean(stackByAttribute), yAxisProps);
516
518
  return {
517
519
  type,
518
520
  stacking: effectiveStacking,
519
521
  stackToPercentBlockedByNegativeValues,
522
+ mekkoWidthOnly,
520
523
  hasStackByAttribute: Boolean(stackByAttribute),
521
524
  hasViewByAttribute: Boolean(viewByAttribute),
522
525
  legendLayout: config.legendLayout || "horizontal",
@@ -538,7 +541,7 @@ export function getChartOptions(dataView, chartConfig, drillableItems, emptyHead
538
541
  enabled: gridEnabled,
539
542
  },
540
543
  xAxisProps,
541
- yAxisProps,
544
+ yAxisProps: effectiveYAxisProps,
542
545
  secondary_xAxisProps,
543
546
  secondary_yAxisProps,
544
547
  colorAssignments,
@@ -5,6 +5,8 @@ import { type IAxis, type IPointDescriptionFn, type ITooltipFactory, type IUnsaf
5
5
  export declare function buildTooltipFactory(viewByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, type: string | undefined, config?: IChartConfig, isDualAxis?: boolean, measure?: IMeasureDescriptor, stackByAttribute?: IUnwrappedAttributeHeadersWithItems | null): ITooltipFactory;
6
6
  export declare function buildTooltipForTwoAttributesFactory(viewByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, viewByParentAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, config?: IChartConfig, isDualAxis?: boolean, measure?: IMeasureDescriptor, stackByAttribute?: IUnwrappedAttributeHeadersWithItems | null): ITooltipFactory;
7
7
  export declare function generateTooltipXYFn(measures: (IMeasureDescriptor | null)[], stackByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, config?: IChartConfig): ITooltipFactory;
8
+ /** Mekko tooltip: Height reads point.y, Width point.z; width-only stacked shows the segment's share instead. */
9
+ export declare function generateTooltipMekkoFn(widthMeasure: IMeasureDescriptor | undefined, heightMeasure: IMeasureDescriptor | undefined, viewByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, stackByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, config?: IChartConfig, percentStacked?: boolean, widthOnly?: boolean): ITooltipFactory;
8
10
  export declare function generateDescriptionXYFn(stackByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, xAxes: IAxis[] | undefined, yAxes: IAxis[] | undefined, zAxes: IAxis[] | undefined, config?: IChartConfig): IPointDescriptionFn;
9
11
  export declare function generateDescriptionScatterPlotFn(viewByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, stackByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, xAxes: IAxis[] | undefined, yAxes: IAxis[] | undefined, config?: IChartConfig): IPointDescriptionFn;
10
12
  export declare function generateTooltipScatterPlotFn(measures: (IMeasureDescriptor | null)[], stackByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, viewByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, config?: IChartConfig, clusterTitle?: string): ITooltipFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"chartTooltips.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartTooltips.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chartTooltips.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartTooltips.ts"],"names":[],"mappings":"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"}
@@ -132,6 +132,35 @@ export function generateTooltipXYFn(measures, stackByAttribute, config = {}) {
132
132
  return renderTooltipHTML(textData, maxTooltipContentWidth);
133
133
  };
134
134
  }
135
+ /** Mekko tooltip: Height reads point.y, Width point.z; width-only stacked shows the segment's share instead. */
136
+ export function generateTooltipMekkoFn(widthMeasure, heightMeasure, viewByAttribute, stackByAttribute, config = {}, percentStacked = false, widthOnly = false) {
137
+ const { separators } = config;
138
+ return (point, maxTooltipContentWidth, percentageValue) => {
139
+ const textData = [];
140
+ if (viewByAttribute) {
141
+ textData.push([
142
+ customEscape(viewByAttribute.formOf.name),
143
+ customEscape(point.category?.name || point.name),
144
+ ]);
145
+ }
146
+ if (stackByAttribute) {
147
+ textData.push([customEscape(stackByAttribute.formOf.name), customEscape(point.series?.name)]);
148
+ }
149
+ if (heightMeasure) {
150
+ textData.push([
151
+ customEscape(heightMeasure.measureHeaderItem.name),
152
+ getFormattedValueForTooltip(false, percentStacked, point, separators, percentageValue),
153
+ ]);
154
+ }
155
+ if (widthMeasure) {
156
+ const widthValue = widthOnly && stackByAttribute
157
+ ? getFormattedValueForTooltip(false, percentStacked, point, separators, percentageValue)
158
+ : formatValueForTooltip(point.z, widthMeasure.measureHeaderItem.format, separators);
159
+ textData.push([customEscape(widthMeasure.measureHeaderItem.name), widthValue]);
160
+ }
161
+ return renderTooltipHTML(textData, maxTooltipContentWidth);
162
+ };
163
+ }
135
164
  function decodeAxisLabel(axis) {
136
165
  return decodeHtmlEntities(axis?.label ?? "");
137
166
  }
@@ -1,6 +1,20 @@
1
+ import { type IMeasureDescriptor, type IMeasureGroupDescriptor } from "@gooddata/sdk-model";
1
2
  import { type DataViewFacade } from "@gooddata/sdk-ui";
3
+ import { type IAxisConfig, type IChartConfig } from "../../../interfaces/chartConfig.js";
2
4
  import { type IUnwrappedAttributeHeadersWithItems } from "../../typings/mess.js";
3
5
  import { type ISeriesItem } from "../../typings/unsafe.js";
6
+ /** Width-only authoring state: Width (MEASURES) filled, Height (SECONDARY_MEASURES) empty. */
7
+ export declare function isMekkoWidthOnly(dv: DataViewFacade): boolean;
8
+ export interface IMekkoMeasures {
9
+ width?: IMeasureDescriptor;
10
+ height?: IMeasureDescriptor;
11
+ }
12
+ /** Width = first item (MEASURES), Height = last (SECONDARY_MEASURES); a lone measure goes by its bucket. */
13
+ export declare function getMekkoMeasures(dv: DataViewFacade, measureGroup: IMeasureGroupDescriptor["measureGroupHeader"]): IMekkoMeasures;
14
+ /** Bucket-driven stacking sanitization, applied once at the ChartTransformation config boundary. */
15
+ export declare function getMekkoEffectiveConfig(config: IChartConfig, dv: DataViewFacade): IChartConfig;
16
+ /** Width-only without Stack By pins the flat zero axis to [0, 1] and hides it (min alone still gets padded). */
17
+ export declare function getMekkoWidthOnlyYAxisProps(mekkoWidthOnly: boolean, hasStackByAttribute: boolean, yAxisProps: IAxisConfig | undefined): IAxisConfig | undefined;
4
18
  /**
5
19
  * Stacked Mekko executes with [[stackBy], [viewBy, MeasureGroup]], so the view-by header items
6
20
  * enumerate view × measure combinations. Downstream consumers (categories, point names, drills)
@@ -1 +1 @@
1
- {"version":3,"file":"mekkoChartOptions.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/mekko/mekkoChartOptions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,cAAc,EAClB,eAAe,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,GACxE,mCAAmC,GAAG,SAAS,GAAG,IAAI,CAiBxD;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC5C,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,GAClC,OAAO,CAET;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAC/C,MAAM,EAAE,WAAW,EAAE,EACrB,UAAU,EAAE,SAAS,EAAE,GACxB;IAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,UAAU,EAAE,SAAS,EAAE,CAAA;CAAE,CAkBpD"}
1
+ {"version":3,"file":"mekkoChartOptions.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/mekko/mekkoChartOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAE/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAe,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEzF,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,8FAA8F;AAC9F,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAK5D;AAED,MAAM,WAAW,cAAc;IAC3B,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED,4GAA4G;AAC5G,wBAAgB,gBAAgB,CAC5B,EAAE,EAAE,cAAc,EAClB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,GAC5D,cAAc,CAMhB;AAED,oGAAoG;AACpG,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,cAAc,GAAG,YAAY,CAQ9F;AAED,gHAAgH;AAChH,wBAAgB,2BAA2B,CACvC,cAAc,EAAE,OAAO,EACvB,mBAAmB,EAAE,OAAO,EAC5B,UAAU,EAAE,WAAW,GAAG,SAAS,GACpC,WAAW,GAAG,SAAS,CAIzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,cAAc,EAClB,eAAe,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,GACxE,mCAAmC,GAAG,SAAS,GAAG,IAAI,CAiBxD;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC5C,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,GAClC,OAAO,CAET;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAC/C,MAAM,EAAE,WAAW,EAAE,EACrB,UAAU,EAAE,SAAS,EAAE,GACxB;IAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,UAAU,EAAE,SAAS,EAAE,CAAA;CAAE,CAkBpD"}
@@ -1,7 +1,37 @@
1
1
  // (C) 2026 GoodData Corporation
2
- import { isMeasureGroupDescriptor } from "@gooddata/sdk-model";
2
+ import { isMeasureGroupDescriptor, } from "@gooddata/sdk-model";
3
+ import { BucketNames } from "@gooddata/sdk-ui";
3
4
  import { VIEW_BY_DIMENSION_INDEX } from "../../constants/dimensions.js";
4
5
  import { isMekko, isNegativeValueIncluded } from "../_util/common.js";
6
+ /** Width-only authoring state: Width (MEASURES) filled, Height (SECONDARY_MEASURES) empty. */
7
+ export function isMekkoWidthOnly(dv) {
8
+ return (!dv.def().isBucketEmpty(BucketNames.MEASURES) &&
9
+ dv.def().isBucketEmpty(BucketNames.SECONDARY_MEASURES));
10
+ }
11
+ /** Width = first item (MEASURES), Height = last (SECONDARY_MEASURES); a lone measure goes by its bucket. */
12
+ export function getMekkoMeasures(dv, measureGroup) {
13
+ const { items } = measureGroup;
14
+ if (items.length >= 2) {
15
+ return { width: items[0], height: items[items.length - 1] };
16
+ }
17
+ return isMekkoWidthOnly(dv) ? { width: items[0] } : { height: items[0] };
18
+ }
19
+ /** Bucket-driven stacking sanitization, applied once at the ChartTransformation config boundary. */
20
+ export function getMekkoEffectiveConfig(config, dv) {
21
+ if (!isMekko(config.type)) {
22
+ return config;
23
+ }
24
+ if (dv.def().isBucketEmpty(BucketNames.STACK)) {
25
+ return { ...config, stackMeasures: false, stackMeasuresToPercent: false };
26
+ }
27
+ return isMekkoWidthOnly(dv) ? { ...config, stackMeasuresToPercent: true } : config;
28
+ }
29
+ /** Width-only without Stack By pins the flat zero axis to [0, 1] and hides it (min alone still gets padded). */
30
+ export function getMekkoWidthOnlyYAxisProps(mekkoWidthOnly, hasStackByAttribute, yAxisProps) {
31
+ return mekkoWidthOnly && !hasStackByAttribute
32
+ ? { ...yAxisProps, min: "0", max: "1", visible: false }
33
+ : yAxisProps;
34
+ }
5
35
  /**
6
36
  * Stacked Mekko executes with [[stackBy], [viewBy, MeasureGroup]], so the view-by header items
7
37
  * enumerate view × measure combinations. Downstream consumers (categories, point names, drills)
@@ -3,5 +3,6 @@ import { type DataViewFacade } from "@gooddata/sdk-ui";
3
3
  import { type IChartFillConfig, type IColorStrategy } from "@gooddata/sdk-ui-vis-commons";
4
4
  import { type IUnwrappedAttributeHeadersWithItems } from "../../typings/mess.js";
5
5
  import { type ISeriesItemConfig } from "../../typings/unsafe.js";
6
+ export declare const MEKKO_WIDTH_ONLY_MIN_POINT_LENGTH = 5;
6
7
  export declare function getMekkoSeries(dv: DataViewFacade, measureGroup: IMeasureGroupDescriptor["measureGroupHeader"], viewByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, stackByAttribute: IUnwrappedAttributeHeadersWithItems | undefined | null, colorStrategy: IColorStrategy, emptyHeaderTitle: string, _chartFill: IChartFillConfig | undefined, _theme: ITheme | undefined): ISeriesItemConfig[];
7
8
  //# sourceMappingURL=mekkoSeries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mekkoSeries.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/mekko/mekkoSeries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,uBAAuB,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,KAAK,cAAc,EAAiC,MAAM,kBAAkB,CAAC;AACtF,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEtB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AA8BlF,wBAAgB,cAAc,CAC1B,EAAE,EAAE,cAAc,EAClB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,EAC3D,eAAe,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EACvE,gBAAgB,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EACxE,aAAa,EAAE,cAAc,EAC7B,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,MAAM,EAAE,MAAM,GAAG,SAAS,GAC3B,iBAAiB,EAAE,CAiGrB"}
1
+ {"version":3,"file":"mekkoSeries.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/mekko/mekkoSeries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,uBAAuB,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,KAAK,cAAc,EAAiC,MAAM,kBAAkB,CAAC;AACtF,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEtB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAiClF,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,wBAAgB,cAAc,CAC1B,EAAE,EAAE,cAAc,EAClB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,EAC3D,eAAe,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EACvE,gBAAgB,EAAE,mCAAmC,GAAG,SAAS,GAAG,IAAI,EACxE,aAAa,EAAE,cAAc,EAC7B,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,MAAM,EAAE,MAAM,GAAG,SAAS,GAC3B,iBAAiB,EAAE,CAoGrB"}
@@ -2,6 +2,7 @@
2
2
  import { getMappingHeaderFormattedName } from "@gooddata/sdk-ui";
3
3
  import { valueWithEmptyHandling, } from "@gooddata/sdk-ui-vis-commons";
4
4
  import { parseValue, unwrap } from "../_util/common.js";
5
+ import { getMekkoMeasures } from "./mekkoChartOptions.js";
5
6
  /**
6
7
  * Mekko (Marimekko) series builder.
7
8
  *
@@ -27,6 +28,8 @@ import { parseValue, unwrap } from "../_util/common.js";
27
28
  // Width metric is the first (MEASURES bucket), Height the second (SECONDARY_MEASURES).
28
29
  const WIDTH_MEASURE_INDEX = 0;
29
30
  const HEIGHT_MEASURE_INDEX = 1;
31
+ // Minimal visual height (px, Highcharts minPointLength) of the zero-height width-only columns.
32
+ export const MEKKO_WIDTH_ONLY_MIN_POINT_LENGTH = 5;
30
33
  export function getMekkoSeries(dv, measureGroup, viewByAttribute, stackByAttribute, colorStrategy, emptyHeaderTitle, _chartFill, _theme) {
31
34
  const data = dv.rawData().twoDimData();
32
35
  // The number of measures = however many metric buckets are actually filled.
@@ -35,16 +38,18 @@ export function getMekkoSeries(dv, measureGroup, viewByAttribute, stackByAttribu
35
38
  if (measureCount === 0 || data.length === 0) {
36
39
  return [];
37
40
  }
38
- const hasWidthMeasure = measureCount >= 2;
39
- // With a single metric present treat it as the Height (the value drawn on the Y axis);
40
- // width then falls back to equal-width columns (z = 1).
41
- const heightIndex = hasWidthMeasure ? HEIGHT_MEASURE_INDEX : 0;
42
- const heightDescriptor = measureGroup.items[heightIndex];
43
- const heightFormat = heightDescriptor ? unwrap(heightDescriptor).format : undefined;
41
+ // Bucket-driven roles: a lone Width measure keeps driving widths — never the Height role.
42
+ const { width, height } = getMekkoMeasures(dv, measureGroup);
43
+ const widthOnly = Boolean(width && !height);
44
+ const hasWidthMeasure = Boolean(width);
45
+ const heightIndex = measureCount >= 2 ? HEIGHT_MEASURE_INDEX : 0;
46
+ // Height, or Width when width-only — provides the point format and the non-stacked series name.
47
+ const primaryDescriptor = height ?? width;
48
+ const pointFormat = primaryDescriptor ? unwrap(primaryDescriptor).format : undefined;
44
49
  const buildPoint = (y, z, viewIndex) => ({
45
50
  y: parseValue(y),
46
51
  z,
47
- format: heightFormat,
52
+ format: pointFormat,
48
53
  name: viewByAttribute
49
54
  ? valueWithEmptyHandling(getMappingHeaderFormattedName(viewByAttribute.items[viewIndex]), emptyHeaderTitle)
50
55
  : "",
@@ -88,16 +93,17 @@ export function getMekkoSeries(dv, measureGroup, viewByAttribute, stackByAttribu
88
93
  }
89
94
  // Non-stacked layout from getBarColumnDimensions: [[MeasureGroup], [viewBy]].
90
95
  // twoDimData rows = measures; each row's columns are the viewBy values. One series.
91
- const heightRow = data[heightIndex] ?? [];
92
96
  const widthRow = hasWidthMeasure ? data[WIDTH_MEASURE_INDEX] : undefined;
93
- const seriesData = heightRow.map((value, v) => buildPoint(value, widthRow ? finiteOrZero(widthRow[v]) : 1, v));
97
+ const baseRow = (widthOnly ? widthRow : data[heightIndex]) ?? [];
98
+ const seriesData = baseRow.map((value, v) => buildPoint(widthOnly ? 0 : value, widthRow ? finiteOrZero(widthRow[v]) : 1, v));
94
99
  return [
95
100
  {
96
- name: valueWithEmptyHandling(heightDescriptor ? unwrap(heightDescriptor).name : "", emptyHeaderTitle),
101
+ name: valueWithEmptyHandling(primaryDescriptor ? unwrap(primaryDescriptor).name : "", emptyHeaderTitle),
97
102
  legendIndex: 0,
98
103
  seriesIndex: 0,
99
104
  color: colorStrategy.getColorByIndex(0),
100
105
  data: seriesData,
106
+ ...(widthOnly ? { minPointLength: MEKKO_WIDTH_ONLY_MIN_POINT_LENGTH } : {}),
101
107
  },
102
108
  ];
103
109
  }
@@ -129,6 +129,7 @@ export interface IChartOptions {
129
129
  hasViewByAttribute?: boolean;
130
130
  isViewByTwoAttributes?: boolean;
131
131
  stackToPercentBlockedByNegativeValues?: boolean;
132
+ mekkoWidthOnly?: boolean;
132
133
  legendLayout?: string;
133
134
  xAxes?: IAxis[];
134
135
  yAxes?: IAxis[];
@@ -283,6 +284,7 @@ export interface ISeriesItemConfig {
283
284
  marker?: {
284
285
  enabled: boolean;
285
286
  };
287
+ minPointLength?: number;
286
288
  }
287
289
  export interface IAxis {
288
290
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"unsafe.d.ts","sourceRoot":"","sources":["../../../src/highcharts/typings/unsafe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unsafe.d.ts","sourceRoot":"","sources":["../../../src/highcharts/typings/unsafe.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-charts",
3
- "version": "11.52.0-alpha.5",
3
+ "version": "11.52.0-alpha.6",
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-backend-spi": "11.52.0-alpha.5",
73
- "@gooddata/sdk-model": "11.52.0-alpha.5",
74
- "@gooddata/sdk-ui-theme-provider": "11.52.0-alpha.5",
75
- "@gooddata/sdk-ui-kit": "11.52.0-alpha.5",
76
- "@gooddata/sdk-ui": "11.52.0-alpha.5",
77
- "@gooddata/sdk-ui-vis-commons": "11.52.0-alpha.5",
78
- "@gooddata/util": "11.52.0-alpha.5"
72
+ "@gooddata/sdk-backend-spi": "11.52.0-alpha.6",
73
+ "@gooddata/sdk-ui-kit": "11.52.0-alpha.6",
74
+ "@gooddata/sdk-ui": "11.52.0-alpha.6",
75
+ "@gooddata/sdk-ui-vis-commons": "11.52.0-alpha.6",
76
+ "@gooddata/sdk-ui-theme-provider": "11.52.0-alpha.6",
77
+ "@gooddata/sdk-model": "11.52.0-alpha.6",
78
+ "@gooddata/util": "11.52.0-alpha.6"
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.52.0-alpha.5",
124
- "@gooddata/oxlint-config": "11.52.0-alpha.5",
125
- "@gooddata/reference-workspace": "11.52.0-alpha.5",
126
- "@gooddata/sdk-backend-mockingbird": "11.52.0-alpha.5",
127
- "@gooddata/stylelint-config": "11.52.0-alpha.5"
123
+ "@gooddata/eslint-config": "11.52.0-alpha.6",
124
+ "@gooddata/oxlint-config": "11.52.0-alpha.6",
125
+ "@gooddata/sdk-backend-mockingbird": "11.52.0-alpha.6",
126
+ "@gooddata/stylelint-config": "11.52.0-alpha.6",
127
+ "@gooddata/reference-workspace": "11.52.0-alpha.6"
128
128
  },
129
129
  "peerDependencies": {
130
130
  "react": "^18.0.0 || ^19.0.0",