@gooddata/sdk-ui-charts 11.47.0-alpha.0 → 11.47.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.
- package/NOTICE +5 -5
- package/esm/charts/mekko/CoreMekko.d.ts +3 -0
- package/esm/charts/mekko/CoreMekko.d.ts.map +1 -0
- package/esm/charts/mekko/CoreMekko.js +7 -0
- package/esm/charts/mekko/Mekko.d.ts +51 -0
- package/esm/charts/mekko/Mekko.d.ts.map +1 -0
- package/esm/charts/mekko/Mekko.js +55 -0
- package/esm/highcharts/ChartTransformation.d.ts.map +1 -1
- package/esm/highcharts/ChartTransformation.js +13 -4
- package/esm/highcharts/adapter/Chart.d.ts +1 -0
- package/esm/highcharts/adapter/Chart.d.ts.map +1 -1
- package/esm/highcharts/adapter/Chart.js +1 -0
- package/esm/highcharts/adapter/chartPlugins.d.ts.map +1 -1
- package/esm/highcharts/adapter/chartPlugins.js +4 -1
- package/esm/highcharts/adapter/legendBuilder.d.ts.map +1 -1
- package/esm/highcharts/adapter/legendBuilder.js +1 -0
- package/esm/highcharts/adapter/plugins/pointShapeSymbols.d.ts +11 -0
- package/esm/highcharts/adapter/plugins/pointShapeSymbols.d.ts.map +1 -0
- package/esm/highcharts/adapter/plugins/pointShapeSymbols.js +20 -0
- package/esm/highcharts/chartTypes/_chartCreators/customConfiguration.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartCreators/customConfiguration.js +1 -0
- package/esm/highcharts/chartTypes/_chartCreators/customTooltip/identifierMapping.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartCreators/customTooltip/identifierMapping.js +4 -0
- package/esm/highcharts/chartTypes/_chartCreators/drilldownEventing.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartCreators/drilldownEventing.js +8 -1
- package/esm/highcharts/chartTypes/_chartCreators/getOptionalStackingConfiguration.d.ts +1 -1
- package/esm/highcharts/chartTypes/_chartCreators/getOptionalStackingConfiguration.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartCreators/getOptionalStackingConfiguration.js +8 -4
- package/esm/highcharts/chartTypes/_chartCreators/highChartsCreators.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartCreators/highChartsCreators.js +2 -0
- package/esm/highcharts/chartTypes/_chartOptions/chartCapabilities.d.ts +1 -1
- package/esm/highcharts/chartTypes/_chartOptions/chartCapabilities.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartOptions/chartCapabilities.js +1 -0
- package/esm/highcharts/chartTypes/_chartOptions/chartDistinctPointShapes.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartOptions/chartDistinctPointShapes.js +9 -0
- package/esm/highcharts/chartTypes/_chartOptions/chartLimits.d.ts +1 -2
- package/esm/highcharts/chartTypes/_chartOptions/chartLimits.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartOptions/chartLimits.js +4 -9
- package/esm/highcharts/chartTypes/_chartOptions/chartOptionsBuilder.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartOptions/chartOptionsBuilder.js +22 -4
- package/esm/highcharts/chartTypes/_chartOptions/chartSeries.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_chartOptions/chartSeries.js +30 -3
- package/esm/highcharts/chartTypes/_util/common.d.ts +12 -1
- package/esm/highcharts/chartTypes/_util/common.d.ts.map +1 -1
- package/esm/highcharts/chartTypes/_util/common.js +22 -0
- package/esm/highcharts/chartTypes/mekko/mekkoChartOptions.d.ts +18 -0
- package/esm/highcharts/chartTypes/mekko/mekkoChartOptions.d.ts.map +1 -0
- package/esm/highcharts/chartTypes/mekko/mekkoChartOptions.js +32 -0
- package/esm/highcharts/chartTypes/mekko/mekkoConfiguration.d.ts +4 -0
- package/esm/highcharts/chartTypes/mekko/mekkoConfiguration.d.ts.map +1 -0
- package/esm/highcharts/chartTypes/mekko/mekkoConfiguration.js +52 -0
- package/esm/highcharts/chartTypes/mekko/mekkoSeries.d.ts +7 -0
- package/esm/highcharts/chartTypes/mekko/mekkoSeries.d.ts.map +1 -0
- package/esm/highcharts/chartTypes/mekko/mekkoSeries.js +102 -0
- package/esm/highcharts/typings/unsafe.d.ts +7 -0
- package/esm/highcharts/typings/unsafe.d.ts.map +1 -1
- package/esm/index.d.ts +2 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/interfaces/chartConfig.d.ts +45 -4
- package/esm/interfaces/chartConfig.d.ts.map +1 -1
- package/esm/sdk-ui-charts.d.ts +98 -4
- package/package.json +13 -13
package/NOTICE
CHANGED
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
The following 3rd-party software packages may be used by or distributed with gooddata-ui-sdk. Any information relevant to third-party vendors listed below are collected using common, reasonable means.
|
|
9
9
|
|
|
10
|
-
Date generated: 2026-7-
|
|
10
|
+
Date generated: 2026-7-10
|
|
11
11
|
|
|
12
|
-
Revision ID:
|
|
12
|
+
Revision ID: 49e9a8adde3ee1f908b34090cae5065e788ef0dd
|
|
13
13
|
|
|
14
14
|
================================================================================
|
|
15
15
|
================================================================================
|
|
@@ -8770,7 +8770,7 @@ Package Title: json5 (2.2.3)
|
|
|
8770
8770
|
|
|
8771
8771
|
Package Locator: npm+json5$2.2.3
|
|
8772
8772
|
|
|
8773
|
-
Package Depth:
|
|
8773
|
+
Package Depth: Transitive
|
|
8774
8774
|
--------------------------------------------------------------------------------
|
|
8775
8775
|
|
|
8776
8776
|
* Declared Licenses *
|
|
@@ -13284,7 +13284,7 @@ Package Title: watchpack (2.5.2)
|
|
|
13284
13284
|
|
|
13285
13285
|
Package Locator: npm+watchpack$2.5.2
|
|
13286
13286
|
|
|
13287
|
-
Package Depth:
|
|
13287
|
+
Package Depth: Transitive
|
|
13288
13288
|
--------------------------------------------------------------------------------
|
|
13289
13289
|
|
|
13290
13290
|
* Declared Licenses *
|
|
@@ -29272,4 +29272,4 @@ POSSIBILITY OF SUCH DAMAGE.
|
|
|
29272
29272
|
--------------------------------------------------------------------------------
|
|
29273
29273
|
--------------------------------------------------------------------------------
|
|
29274
29274
|
|
|
29275
|
-
Report Generated by FOSSA on 2026-7-
|
|
29275
|
+
Report Generated by FOSSA on 2026-7-10
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CoreMekko.d.ts","sourceRoot":"","sources":["../../../src/charts/mekko/CoreMekko.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGtE,eAAO,MAAM,SAAS,uDAEpB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// (C) 2026 GoodData Corporation
|
|
3
|
+
import { memo } from "react";
|
|
4
|
+
import { BaseChart } from "../_base/BaseChart.js";
|
|
5
|
+
export const CoreMekko = memo(function CoreMekko(props) {
|
|
6
|
+
return _jsx(BaseChart, { type: "mekko", ...props });
|
|
7
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type AttributeOrPlaceholder, type MeasureOrPlaceholder, type NullableFiltersOrPlaceholders, type SortsOrPlaceholders } from "@gooddata/sdk-ui";
|
|
2
|
+
import { type IBucketChartProps } from "../../interfaces/chartProps.js";
|
|
3
|
+
/**
|
|
4
|
+
* @beta
|
|
5
|
+
*/
|
|
6
|
+
export interface IMekkoBucketProps {
|
|
7
|
+
/**
|
|
8
|
+
* Specify the measure that sets each column's width (proportional to its value).
|
|
9
|
+
*/
|
|
10
|
+
widthMeasure?: MeasureOrPlaceholder;
|
|
11
|
+
/**
|
|
12
|
+
* Specify the measure that sets each column's height, read off the Y axis.
|
|
13
|
+
*/
|
|
14
|
+
heightMeasure?: MeasureOrPlaceholder;
|
|
15
|
+
/**
|
|
16
|
+
* Specify the attribute used to create the columns (one column per attribute element).
|
|
17
|
+
*/
|
|
18
|
+
viewBy?: AttributeOrPlaceholder;
|
|
19
|
+
/**
|
|
20
|
+
* Specify the attribute used to stack the columns into segments.
|
|
21
|
+
*/
|
|
22
|
+
stackBy?: AttributeOrPlaceholder;
|
|
23
|
+
/**
|
|
24
|
+
* Specify filters to apply on the data to chart.
|
|
25
|
+
*/
|
|
26
|
+
filters?: NullableFiltersOrPlaceholders;
|
|
27
|
+
/**
|
|
28
|
+
* Specify how to sort the data to chart.
|
|
29
|
+
*/
|
|
30
|
+
sortBy?: SortsOrPlaceholders;
|
|
31
|
+
/**
|
|
32
|
+
* Resolution context for composed placeholders.
|
|
33
|
+
*/
|
|
34
|
+
placeholdersResolutionContext?: any;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* @beta
|
|
38
|
+
*/
|
|
39
|
+
export interface IMekkoProps extends IBucketChartProps, IMekkoBucketProps {
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Mekko (Marimekko) chart shows data as stacked columns whose widths are proportional to a measure.
|
|
43
|
+
*
|
|
44
|
+
* @remarks
|
|
45
|
+
* Each column's width is driven by the width measure, its height by the height measure, columns are
|
|
46
|
+
* created from the view-by attribute, and segments come from the stack-by attribute.
|
|
47
|
+
*
|
|
48
|
+
* @beta
|
|
49
|
+
*/
|
|
50
|
+
export declare function Mekko(props: IMekkoProps): import("react/jsx-runtime").JSX.Element;
|
|
51
|
+
//# sourceMappingURL=Mekko.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Mekko.d.ts","sourceRoot":"","sources":["../../../src/charts/mekko/Mekko.tsx"],"names":[],"mappings":"AASA,OAAO,EACH,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EAE3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AA4CxE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B;;OAEG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAC;IAEpC;;OAEG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IAErC;;OAEG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAEhC;;OAEG;IACH,OAAO,CAAC,EAAE,sBAAsB,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,EAAE,6BAA6B,CAAC;IAExC;;OAEG;IACH,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAE7B;;OAEG;IACH,6BAA6B,CAAC,EAAE,GAAG,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,iBAAiB,EAAE,iBAAiB;CAAG;AAI5E;;;;;;;;GAQG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,WAAW,2CAmBvC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// (C) 2026 GoodData Corporation
|
|
3
|
+
import { newBucket, } from "@gooddata/sdk-model";
|
|
4
|
+
import { BucketNames, useResolveValuesWithPlaceholders, } from "@gooddata/sdk-ui";
|
|
5
|
+
import { withChart } from "../_base/withChart.js";
|
|
6
|
+
import { stackedChartDimensions } from "../_commons/dimensions.js";
|
|
7
|
+
import { CoreMekko } from "./CoreMekko.js";
|
|
8
|
+
//
|
|
9
|
+
// Internals
|
|
10
|
+
//
|
|
11
|
+
const mekkoDefinition = {
|
|
12
|
+
chartName: "Mekko",
|
|
13
|
+
bucketPropsKeys: ["widthMeasure", "heightMeasure", "viewBy", "stackBy", "filters", "sortBy"],
|
|
14
|
+
bucketsFactory: (props) => {
|
|
15
|
+
// Bucket order defines the MeasureGroup order consumed by getMekkoSeries:
|
|
16
|
+
// MEASURES (width) -> index 0, SECONDARY_MEASURES (height) -> index 1.
|
|
17
|
+
return [
|
|
18
|
+
newBucket(BucketNames.MEASURES, props.widthMeasure),
|
|
19
|
+
newBucket(BucketNames.SECONDARY_MEASURES, props.heightMeasure),
|
|
20
|
+
newBucket(BucketNames.VIEW, props.viewBy),
|
|
21
|
+
newBucket(BucketNames.STACK, props.stackBy),
|
|
22
|
+
];
|
|
23
|
+
},
|
|
24
|
+
executionFactory: (props, buckets) => {
|
|
25
|
+
const { backend, workspace, execConfig } = props;
|
|
26
|
+
const sortBy = props.sortBy ?? [];
|
|
27
|
+
return backend
|
|
28
|
+
.withTelemetry("Mekko", props)
|
|
29
|
+
.workspace(workspace)
|
|
30
|
+
.execution()
|
|
31
|
+
.forBuckets(buckets, props.filters)
|
|
32
|
+
.withSorting(...sortBy)
|
|
33
|
+
.withDimensions(stackedChartDimensions)
|
|
34
|
+
.withExecConfig(execConfig);
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
const WrappedMekko = withChart(mekkoDefinition)(CoreMekko);
|
|
38
|
+
/**
|
|
39
|
+
* Mekko (Marimekko) chart shows data as stacked columns whose widths are proportional to a measure.
|
|
40
|
+
*
|
|
41
|
+
* @remarks
|
|
42
|
+
* Each column's width is driven by the width measure, its height by the height measure, columns are
|
|
43
|
+
* created from the view-by attribute, and segments come from the stack-by attribute.
|
|
44
|
+
*
|
|
45
|
+
* @beta
|
|
46
|
+
*/
|
|
47
|
+
export function Mekko(props) {
|
|
48
|
+
const [widthMeasure, heightMeasure, viewBy, stackBy, filters, sortBy] = useResolveValuesWithPlaceholders([props.widthMeasure, props.heightMeasure, props.viewBy, props.stackBy, props.filters, props.sortBy], props.placeholdersResolutionContext);
|
|
49
|
+
return (_jsx(WrappedMekko, { ...props, widthMeasure,
|
|
50
|
+
heightMeasure,
|
|
51
|
+
viewBy,
|
|
52
|
+
stackBy,
|
|
53
|
+
filters,
|
|
54
|
+
sortBy }));
|
|
55
|
+
}
|
|
@@ -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,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;
|
|
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,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;AA+JD,eAAO,MAAM,mBAAmB,iJAK9B,CAAC"}
|
|
@@ -55,10 +55,11 @@ function ChartTransformationImpl({ config, renderer = renderHighCharts, dataView
|
|
|
55
55
|
onDataTooLarge(chartOptions, getDataTooLargeErrorMessage(config.limits, chartOptions));
|
|
56
56
|
}
|
|
57
57
|
else if (validationResult.hasNegativeValue) {
|
|
58
|
-
// ignore hasNegativeValue if validation already fails on dataTooLarge
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
invariant
|
|
58
|
+
// ignore hasNegativeValue if validation already fails on dataTooLarge.
|
|
59
|
+
// hasNegativeValue is true for pie-family charts (any negative value) and for Mekko
|
|
60
|
+
// (negative Width). onNegativeValues is always supplied via withEntireDataView, so this
|
|
61
|
+
// invariant is a safety guard, not a pie-only constraint — both route to the empty state.
|
|
62
|
+
invariant(onNegativeValues, '"onNegativeValues" callback required for negative-value error handling is missing.');
|
|
62
63
|
onNegativeValues(chartOptions);
|
|
63
64
|
}
|
|
64
65
|
else {
|
|
@@ -68,6 +69,14 @@ function ChartTransformationImpl({ config, renderer = renderHighCharts, dataView
|
|
|
68
69
|
propertiesMeta: {
|
|
69
70
|
legend_enabled: legendOptions.toggleEnabled,
|
|
70
71
|
isFilteringRecommended,
|
|
72
|
+
// Mekko: "Stack to 100%" was requested but downgraded to absolute stacking because the
|
|
73
|
+
// Height metric has negative values (percent of mixed-sign segments is undefined).
|
|
74
|
+
// Surfaced as an info note in AD; the property stays set so 100% re-enables once cleaned.
|
|
75
|
+
// No Stack-by means no percent stacking to downgrade (getStackingConfig only yields
|
|
76
|
+
// "percent" with a stack attribute), so the note must not show.
|
|
77
|
+
stackToPercentDisabledByNegativeValues: Boolean(config.stackMeasuresToPercent) &&
|
|
78
|
+
Boolean(chartOptions.hasStackByAttribute) &&
|
|
79
|
+
Boolean(chartOptions.stackToPercentBlockedByNegativeValues),
|
|
71
80
|
},
|
|
72
81
|
colors: {
|
|
73
82
|
colorAssignments: chartOptions.colorAssignments,
|
|
@@ -9,6 +9,7 @@ import "highcharts/esm/modules/heatmap.js";
|
|
|
9
9
|
import "highcharts/esm/modules/pattern-fill.js";
|
|
10
10
|
import "highcharts/esm/modules/sankey.js";
|
|
11
11
|
import "highcharts/esm/modules/dependency-wheel.js";
|
|
12
|
+
import "highcharts/esm/modules/variwide.js";
|
|
12
13
|
import "highcharts/esm/modules/accessibility.js";
|
|
13
14
|
/**
|
|
14
15
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../../src/highcharts/adapter/Chart.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAWlC,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGtE,OAAO,mCAAmC,CAAC;AAC3C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,4CAA4C,CAAC;AACpD,OAAO,yCAAyC,CAAC;AAUjD;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,IAAI,IAAI,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,KAAM,SAAQ,SAAS,CAAC,WAAW,CAAC;IAC7C,OAAc,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,UAAU,CAAC,CAGpE;IAEF,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,QAAQ,CAAe;IAE/B,OAAO,CAAC,EAAE,CAAmC;IAE7C,OAAO,CAAC,cAAc,CAcpB;IAEc,iBAAiB,IAAI,IAAI,CAaxC;IAEe,qBAAqB,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAKrE;IAEe,kBAAkB,IAAI,IAAI,CAEzC;IAEe,oBAAoB,IAAI,IAAI,CAQ3C;IAEM,eAAe,IAAI,WAAW,CAEpC;IAEM,WAAW,6BAEhB;IAEK,QAAQ,IAAI,MAAM,CAMxB;IAEM,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAmBlD;IAEe,MAAM,4CAErB;CACJ"}
|
|
1
|
+
{"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../../src/highcharts/adapter/Chart.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAWlC,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGtE,OAAO,mCAAmC,CAAC;AAC3C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,4CAA4C,CAAC;AACpD,OAAO,oCAAoC,CAAC;AAC5C,OAAO,yCAAyC,CAAC;AAUjD;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,IAAI,IAAI,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,KAAM,SAAQ,SAAS,CAAC,WAAW,CAAC;IAC7C,OAAc,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,UAAU,CAAC,CAGpE;IAEF,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,QAAQ,CAAe;IAE/B,OAAO,CAAC,EAAE,CAAmC;IAE7C,OAAO,CAAC,cAAc,CAcpB;IAEc,iBAAiB,IAAI,IAAI,CAaxC;IAEe,qBAAqB,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAKrE;IAEe,kBAAkB,IAAI,IAAI,CAEzC;IAEe,oBAAoB,IAAI,IAAI,CAQ3C;IAEM,eAAe,IAAI,WAAW,CAEpC;IAEM,WAAW,6BAEhB;IAEK,QAAQ,IAAI,MAAM,CAMxB;IAEM,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAmBlD;IAEe,MAAM,4CAErB;CACJ"}
|
|
@@ -15,6 +15,7 @@ import "highcharts/esm/modules/heatmap.js";
|
|
|
15
15
|
import "highcharts/esm/modules/pattern-fill.js";
|
|
16
16
|
import "highcharts/esm/modules/sankey.js";
|
|
17
17
|
import "highcharts/esm/modules/dependency-wheel.js";
|
|
18
|
+
import "highcharts/esm/modules/variwide.js";
|
|
18
19
|
import "highcharts/esm/modules/accessibility.js";
|
|
19
20
|
// NOTE: default initialization without accessible tooltip plugin.
|
|
20
21
|
// The conditional init with the flag is done in ChartTransformation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chartPlugins.d.ts","sourceRoot":"","sources":["../../../src/highcharts/adapter/chartPlugins.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"chartPlugins.d.ts","sourceRoot":"","sources":["../../../src/highcharts/adapter/chartPlugins.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAgBlD,wBAAgB,gBAAgB,CAC5B,UAAU,EAAE,GAAG,EACf,4BAA4B,CAAC,EAAE,OAAO,EACtC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GACtB,IAAI,CAuBN"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// (C) 2007-
|
|
1
|
+
// (C) 2007-2026 GoodData Corporation
|
|
2
2
|
import { groupedCategories } from "./plugins/3rdParty/grouped-categories.js";
|
|
3
3
|
import { initAccessibleTooltipPluginOnce } from "./plugins/accessibleTooltip.js";
|
|
4
4
|
import { adjustTickAmount } from "./plugins/adjustTickAmount.js";
|
|
@@ -7,6 +7,7 @@ import { extendDataLabelColors } from "./plugins/dataLabelsColors.js";
|
|
|
7
7
|
import { groupCategoriesWrapper } from "./plugins/group-categories-wrapper.js";
|
|
8
8
|
import { linearTickPositions } from "./plugins/linearTickPositions.js";
|
|
9
9
|
import { applyPointHaloOptions } from "./plugins/pointHalo.js";
|
|
10
|
+
import { registerPointShapeSymbols } from "./plugins/pointShapeSymbols.js";
|
|
10
11
|
import { renderBubbles } from "./plugins/renderBubbles.js";
|
|
11
12
|
let basePluginsInitialized = false;
|
|
12
13
|
let dataLabelColorsInitialized = false;
|
|
@@ -20,6 +21,8 @@ export function initChartPlugins(highcharts, enableAccessibleChartTooltip, theme
|
|
|
20
21
|
adjustTickAmount(highcharts);
|
|
21
22
|
// modify rendering bubbles in bubble chart after upgrade to Highcharts v7.1.1
|
|
22
23
|
renderBubbles(highcharts);
|
|
24
|
+
// register custom point-shape marker symbols beyond the five Highcharts built-ins
|
|
25
|
+
registerPointShapeSymbols(highcharts);
|
|
23
26
|
basePluginsInitialized = true;
|
|
24
27
|
}
|
|
25
28
|
if (enableAccessibleChartTooltip) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"legendBuilder.d.ts","sourceRoot":"","sources":["../../../src/highcharts/adapter/legendBuilder.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAEH,KAAK,cAAc,EAGnB,KAAK,qBAAqB,EAC7B,MAAM,8BAA8B,CAAC;AAgBtC,OAAO,EAAE,KAAK,aAAa,EAA0C,MAAM,sBAAsB,CAAC;AAgBlG,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,aAAa,GAAG,OAAO,CAkD1E;AAED,wBAAgB,cAAc,CAC1B,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,CAAC,EAAE,SAAS,GACjB,qBAAqB,EAAE,CAiGzB;AA+BD,wBAAgB,kBAAkB,CAC9B,YAAY,KAAU,EACtB,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,CAAC,EAAE,SAAS,GACjB,cAAc,
|
|
1
|
+
{"version":3,"file":"legendBuilder.d.ts","sourceRoot":"","sources":["../../../src/highcharts/adapter/legendBuilder.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAEH,KAAK,cAAc,EAGnB,KAAK,qBAAqB,EAC7B,MAAM,8BAA8B,CAAC;AAgBtC,OAAO,EAAE,KAAK,aAAa,EAA0C,MAAM,sBAAsB,CAAC;AAgBlG,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,aAAa,GAAG,OAAO,CAkD1E;AAED,wBAAgB,cAAc,CAC1B,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,CAAC,EAAE,SAAS,GACjB,qBAAqB,EAAE,CAiGzB;AA+BD,wBAAgB,kBAAkB,CAC9B,YAAY,KAAU,EACtB,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,CAAC,EAAE,SAAS,GACjB,cAAc,CAmEhB"}
|
|
@@ -180,6 +180,7 @@ export function buildLegendOptions(legendConfig = {}, chartOptions, theme, intl)
|
|
|
180
180
|
VisualizationTypes.PIE,
|
|
181
181
|
VisualizationTypes.DONUT,
|
|
182
182
|
VisualizationTypes.WATERFALL,
|
|
183
|
+
VisualizationTypes.MEKKO,
|
|
183
184
|
];
|
|
184
185
|
const defaultHideLegendCharts = [
|
|
185
186
|
VisualizationTypes.SANKEY,
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers the custom point-shape marker symbols (star, pentagon, cross, plus, hexagon, octagon,
|
|
3
|
+
* arrow and the extra triangle orientations) on the Highcharts SVG renderer.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Highcharts only knows five built-in marker symbols; every other documented point shape would
|
|
7
|
+
* otherwise silently fall back to "circle". Each shape is drawn from the shared normalized polygon
|
|
8
|
+
* geometry so chart markers stay in sync with the legend icons.
|
|
9
|
+
*/
|
|
10
|
+
export declare function registerPointShapeSymbols(Highcharts: any): void;
|
|
11
|
+
//# sourceMappingURL=pointShapeSymbols.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pointShapeSymbols.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/adapter/plugins/pointShapeSymbols.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,CAU/D"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
import { CUSTOM_POINT_SHAPES, getPointShapeSvgPath } from "@gooddata/sdk-ui-vis-commons";
|
|
3
|
+
/**
|
|
4
|
+
* Registers the custom point-shape marker symbols (star, pentagon, cross, plus, hexagon, octagon,
|
|
5
|
+
* arrow and the extra triangle orientations) on the Highcharts SVG renderer.
|
|
6
|
+
*
|
|
7
|
+
* @remarks
|
|
8
|
+
* Highcharts only knows five built-in marker symbols; every other documented point shape would
|
|
9
|
+
* otherwise silently fall back to "circle". Each shape is drawn from the shared normalized polygon
|
|
10
|
+
* geometry so chart markers stay in sync with the legend icons.
|
|
11
|
+
*/
|
|
12
|
+
export function registerPointShapeSymbols(Highcharts) {
|
|
13
|
+
const symbols = Highcharts?.SVGRenderer?.prototype?.symbols;
|
|
14
|
+
if (!symbols) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
CUSTOM_POINT_SHAPES.forEach((shape) => {
|
|
18
|
+
symbols[shape] = (x, y, w, h) => getPointShapeSvgPath(shape, x, y, w, h);
|
|
19
|
+
});
|
|
20
|
+
}
|
|
@@ -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;
|
|
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;AAgVF,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"}
|
|
@@ -846,6 +846,7 @@ function getHoverStyles({ type }, config) {
|
|
|
846
846
|
case VisualizationTypes.BAR:
|
|
847
847
|
case VisualizationTypes.COLUMN:
|
|
848
848
|
case VisualizationTypes.BULLET:
|
|
849
|
+
case VisualizationTypes.MEKKO:
|
|
849
850
|
seriesMapFn = barSeriesMapFn;
|
|
850
851
|
break;
|
|
851
852
|
case VisualizationTypes.HEATMAP:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identifierMapping.d.ts","sourceRoot":"","sources":["../../../../../src/highcharts/chartTypes/_chartCreators/customTooltip/identifierMapping.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,oBAAoB,EAA4C,MAAM,qBAAqB,CAAC;AAI1G;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,iBAAiB,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC7C;
|
|
1
|
+
{"version":3,"file":"identifierMapping.d.ts","sourceRoot":"","sources":["../../../../../src/highcharts/chartTypes/_chartCreators/customTooltip/identifierMapping.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,oBAAoB,EAA4C,MAAM,qBAAqB,CAAC;AAI1G;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,iBAAiB,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC7C;AA6BD;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAClC,UAAU,EAAE,oBAAoB,EAChC,SAAS,CAAC,EAAE,MAAM,GACnB,kBAAkB,CAiCpB"}
|
|
@@ -19,6 +19,10 @@ function getMeasurePointField(chartType, bucketLocalId) {
|
|
|
19
19
|
// primary (MEASURES) and comparative (TERTIARY_MEASURES) series
|
|
20
20
|
// both use point.y.
|
|
21
21
|
return bucketLocalId === BucketNames.SECONDARY_MEASURES ? "target" : "y";
|
|
22
|
+
case VisualizationTypes.MEKKO:
|
|
23
|
+
// Mekko (variwide): Width (MEASURES) is the column width on point.z,
|
|
24
|
+
// Height (SECONDARY_MEASURES) is on point.y.
|
|
25
|
+
return bucketLocalId === BucketNames.MEASURES ? "z" : "y";
|
|
22
26
|
default:
|
|
23
27
|
return "y";
|
|
24
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drilldownEventing.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/drilldownEventing.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,YAAY,EAOjB,KAAK,OAAO,EAGf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,KAAK,sBAAsB,EAA+B,MAAM,kCAAkC,CAAC;AAE5G,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"drilldownEventing.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/drilldownEventing.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,YAAY,EAOjB,KAAK,OAAO,EAGf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,KAAK,sBAAsB,EAA+B,MAAM,kCAAkC,CAAC;AAE5G,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAyBlF;AAgKD,wBAAgB,UAAU,CACtB,WAAW,EAAE,YAAY,EACzB,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GACrB,IAAI,CAEN;AAuCD,wBAAgB,cAAc,CAC1B,WAAW,EAAE,YAAY,EACzB,MAAM,EAAE,sBAAsB,EAAE,EAChC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GACrB,IAAI,CAEN"}
|
|
@@ -14,6 +14,7 @@ export function getClickableElementNameByChartType(type) {
|
|
|
14
14
|
case VisualizationTypes.COLUMN:
|
|
15
15
|
case VisualizationTypes.BAR:
|
|
16
16
|
case VisualizationTypes.WATERFALL:
|
|
17
|
+
case VisualizationTypes.MEKKO:
|
|
17
18
|
return "bar";
|
|
18
19
|
case VisualizationTypes.PIE:
|
|
19
20
|
case VisualizationTypes.TREEMAP:
|
|
@@ -41,7 +42,13 @@ function fireEvent(onDrill, data, target) {
|
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
const getElementChartType = (chartType, point) => {
|
|
44
|
-
|
|
45
|
+
const seriesType = point?.series?.type;
|
|
46
|
+
// Mekko renders as a `variwide` series; map that series type back to the logical Mekko type so
|
|
47
|
+
// VisualizationType-based consumers (e.g. getClickableElementNameByChartType) recognize it.
|
|
48
|
+
if (seriesType === "variwide") {
|
|
49
|
+
return VisualizationTypes.MEKKO;
|
|
50
|
+
}
|
|
51
|
+
return seriesType ?? chartType;
|
|
45
52
|
};
|
|
46
53
|
const getDrillPointCustomProps = (point, chartType) => {
|
|
47
54
|
if (isComboChart(chartType)) {
|
|
@@ -31,6 +31,6 @@ export declare function getShowInPercentConfiguration(chartOptions: IChartOption
|
|
|
31
31
|
* Convert [0, 1] to [0, 100], it's needed by highchart
|
|
32
32
|
* Only applied to primary Y axis
|
|
33
33
|
*/
|
|
34
|
-
export declare function convertMinMaxFromPercentToNumber(
|
|
34
|
+
export declare function convertMinMaxFromPercentToNumber(chartOptions: IChartOptions, config: HighchartsOptions, chartConfig: IChartConfig): HighchartsOptions;
|
|
35
35
|
export declare function getOptionalStackingConfiguration(chartOptions: IChartOptions, config: HighchartsOptions, chartConfig?: IChartConfig, drillConfig?: IDrillConfig): HighchartsOptions;
|
|
36
36
|
//# sourceMappingURL=getOptionalStackingConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOptionalStackingConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/getOptionalStackingConfiguration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAqB,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACpB,MAAM,yBAAyB,CAAC;AAiGjC;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CA8BlF;AA2BD,wBAAgB,qBAAqB,CACjC,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,YAAY,GAC1B,YAAY,CA4Bd;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CACzC,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,YAAY,GAC1B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"getOptionalStackingConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/getOptionalStackingConfiguration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAqB,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAEH,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACpB,MAAM,yBAAyB,CAAC;AAiGjC;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CA8BlF;AA2BD,wBAAgB,qBAAqB,CACjC,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,YAAY,GAC1B,YAAY,CA4Bd;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CACzC,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,YAAY,GAC1B,oBAAoB,CAoBtB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC3C,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,CAAC,EAAE,YAAY,GAC3B;IACC,KAAK,EAAE,YAAY,EAAE,CAAC;CACzB,CA4BA;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,YAAY,GAAG;IAC9D,KAAK,EAAE;QACH,WAAW,EAAE,YAAY,CAAC;KAC7B,EAAE,CAAC;CACP,CAEA;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CACzC,YAAY,2BAAoB,EAChC,WAAW,EAAE,YAAY,EACzB,OAAO,GAAE,iBAAsB,GAChC,iBAAiB,CA2BnB;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAC5C,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,YAAY,GAC1B,iBAAiB,CAkCnB;AAED,wBAAgB,gCAAgC,CAC5C,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,iBAAiB,EACzB,WAAW,GAAE,YAAiB,EAC9B,WAAW,CAAC,EAAE,YAAY,GAC3B,iBAAiB,CAanB"}
|
|
@@ -147,7 +147,8 @@ export function getYAxisConfiguration(chartOptions, config, chartConfig) {
|
|
|
147
147
|
*/
|
|
148
148
|
export function getStackMeasuresConfiguration(chartOptions, config, chartConfig) {
|
|
149
149
|
const { stackMeasures = false, stackMeasuresToPercent = false } = chartConfig;
|
|
150
|
-
const canStackInPercent = canComboChartBeStackedInPercent(chartOptions.data?.series ?? [])
|
|
150
|
+
const canStackInPercent = canComboChartBeStackedInPercent(chartOptions.data?.series ?? []) &&
|
|
151
|
+
!chartOptions.stackToPercentBlockedByNegativeValues;
|
|
151
152
|
if (!stackMeasures && !stackMeasuresToPercent) {
|
|
152
153
|
return {};
|
|
153
154
|
}
|
|
@@ -189,7 +190,8 @@ export function setDrillConfigToXAxis(drillConfig) {
|
|
|
189
190
|
*/
|
|
190
191
|
export function getShowInPercentConfiguration(chartOptions = {}, chartConfig, _config = {}) {
|
|
191
192
|
const { stackMeasuresToPercent = false, primaryChartType } = chartConfig;
|
|
192
|
-
const canStackInPercent = canComboChartBeStackedInPercent(chartOptions.data?.series)
|
|
193
|
+
const canStackInPercent = canComboChartBeStackedInPercent(chartOptions.data?.series) &&
|
|
194
|
+
!chartOptions.stackToPercentBlockedByNegativeValues;
|
|
193
195
|
if (!canStackInPercent || !stackMeasuresToPercent || isLineChart(primaryChartType)) {
|
|
194
196
|
return {};
|
|
195
197
|
}
|
|
@@ -213,9 +215,11 @@ export function getShowInPercentConfiguration(chartOptions = {}, chartConfig, _c
|
|
|
213
215
|
* Convert [0, 1] to [0, 100], it's needed by highchart
|
|
214
216
|
* Only applied to primary Y axis
|
|
215
217
|
*/
|
|
216
|
-
export function convertMinMaxFromPercentToNumber(
|
|
218
|
+
export function convertMinMaxFromPercentToNumber(chartOptions, config, chartConfig) {
|
|
217
219
|
const { stackMeasuresToPercent = false } = chartConfig;
|
|
218
|
-
|
|
220
|
+
// When Mekko downgrades 100%→absolute (negative Height) the axis shows absolute values, so
|
|
221
|
+
// user min/max must not be rescaled — same guard as the sibling stacking-config functions.
|
|
222
|
+
if (!stackMeasuresToPercent || chartOptions?.stackToPercentBlockedByNegativeValues) {
|
|
219
223
|
return {};
|
|
220
224
|
}
|
|
221
225
|
let yAxes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"highChartsCreators.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/highChartsCreators.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAoC,MAAM,kBAAkB,CAAC;AAEvF,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"highChartsCreators.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartCreators/highChartsCreators.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAoC,MAAM,kBAAkB,CAAC;AAEvF,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,yBAAyB,CAAC;AA2D/E,wBAAgB,oBAAoB,CAChC,YAAY,EAAE,aAAa,EAC3B,WAAW,EAAE,YAAY,EACzB,MAAM,CAAC,EAAE,YAAY,EACrB,UAAU,CAAC,EAAE,oBAAoB,EACjC,IAAI,CAAC,EAAE,SAAS,EAChB,KAAK,CAAC,EAAE,MAAM,GACf,iBAAiB,CAanB;AAED,wBAAgB,sBAAsB,CAClC,SAAS,EAAE,GAAG,EACd,MAAM,EAAE,YAAY,EACpB,qBAAqB,UAAQ,GAC9B,OAAO,CAgCT"}
|
|
@@ -14,6 +14,7 @@ import { getDonutConfiguration } from "../donutChart/donutConfiguration.js";
|
|
|
14
14
|
import { getFunnelConfiguration } from "../funnelChart/funnelConfiguration.js";
|
|
15
15
|
import { getHeatmapConfiguration } from "../heatmap/heatmapConfiguration.js";
|
|
16
16
|
import { getLineConfiguration } from "../lineChart/lineConfiguration.js";
|
|
17
|
+
import { getMekkoConfiguration } from "../mekko/mekkoConfiguration.js";
|
|
17
18
|
import { getPieConfiguration } from "../pieChart/pieConfiguration.js";
|
|
18
19
|
import { getPyramidConfiguration } from "../pyramidChart/pyramidConfiguration.js";
|
|
19
20
|
import { getRadarConfiguration } from "../radarChart/radarConfiguration.js";
|
|
@@ -43,6 +44,7 @@ const chartConfigurationMap = {
|
|
|
43
44
|
[VisualizationTypes.DEPENDENCY_WHEEL]: getDependencyWheelConfiguration,
|
|
44
45
|
[VisualizationTypes.WATERFALL]: getWaterfallConfiguration,
|
|
45
46
|
[VisualizationTypes.RADAR]: getRadarConfiguration,
|
|
47
|
+
[VisualizationTypes.MEKKO]: getMekkoConfiguration,
|
|
46
48
|
};
|
|
47
49
|
export function getHighchartsOptions(chartOptions, drillConfig, config, definition, intl, theme) {
|
|
48
50
|
const getConfigurationByType = chartConfigurationMap[chartOptions.type];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const supportedDualAxesChartTypes: ("area" | "bar" | "bullet" | "column" | "combo" | "combo2" | "line" | "waterfall")[];
|
|
2
2
|
export declare const supportedTooltipFollowPointerChartTypes: ("bar" | "bullet" | "column" | "combo" | "combo2" | "waterfall")[];
|
|
3
|
-
export declare const supportedStackingAttributesChartTypes: ("area" | "bar" | "bullet" | "column" | "combo" | "combo2" | "waterfall")[];
|
|
3
|
+
export declare const supportedStackingAttributesChartTypes: ("area" | "bar" | "bullet" | "column" | "combo" | "combo2" | "mekko" | "waterfall")[];
|
|
4
4
|
export declare const multiMeasuresAlternatingTypes: ("donut" | "funnel" | "pie" | "pyramid" | "treemap" | "waterfall")[];
|
|
5
5
|
export declare const unsupportedNegativeValuesTypes: ("dependencywheel" | "donut" | "funnel" | "pie" | "pyramid" | "sankey" | "treemap")[];
|
|
6
6
|
export declare const showingNameInLegendWhenViewByPresent: ("donut" | "funnel" | "pie" | "pyramid")[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chartCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartCapabilities.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,2BAA2B,sFASvC,CAAC;AACF,eAAO,MAAM,uCAAuC,oEAOnD,CAAC;AACF,eAAO,MAAM,qCAAqC,
|
|
1
|
+
{"version":3,"file":"chartCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartCapabilities.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,2BAA2B,sFASvC,CAAC;AACF,eAAO,MAAM,uCAAuC,oEAOnD,CAAC;AACF,eAAO,MAAM,qCAAqC,uFASjD,CAAC;AAEF,eAAO,MAAM,6BAA6B,sEAOzC,CAAC;AACF,eAAO,MAAM,8BAA8B,uFAQ1C,CAAC;AACF,eAAO,MAAM,oCAAoC,4CAKhD,CAAC;AACF,eAAO,MAAM,wBAAwB,sDAMpC,CAAC"}
|
|
@@ -26,6 +26,7 @@ export const supportedStackingAttributesChartTypes = [
|
|
|
26
26
|
VisualizationTypes.COMBO,
|
|
27
27
|
VisualizationTypes.COMBO2,
|
|
28
28
|
VisualizationTypes.WATERFALL,
|
|
29
|
+
VisualizationTypes.MEKKO,
|
|
29
30
|
];
|
|
30
31
|
// types with only many measures or one measure and one attribute
|
|
31
32
|
export const multiMeasuresAlternatingTypes = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chartDistinctPointShapes.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartDistinctPointShapes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EACH,KAAK,YAAY,EAGpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"chartDistinctPointShapes.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartDistinctPointShapes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EACH,KAAK,YAAY,EAGpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAoG3D;;GAEG;AACH,wBAAgB,gCAAgC,CAC5C,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,EAAE,WAAW,EAAE,EACrB,WAAW,EAAE,YAAY,EACzB,YAAY,EAAE,uBAAuB,CAAC,oBAAoB,CAAC,iBAiB9D"}
|
|
@@ -9,6 +9,15 @@ const POINT_SHAPES_CONFIGS = [
|
|
|
9
9
|
{ symbol: "triangle" },
|
|
10
10
|
{ symbol: "triangle-down" },
|
|
11
11
|
{ symbol: "diamond" },
|
|
12
|
+
{ symbol: "star" },
|
|
13
|
+
{ symbol: "cross" },
|
|
14
|
+
{ symbol: "plus" },
|
|
15
|
+
{ symbol: "pentagon" },
|
|
16
|
+
{ symbol: "hexagon" },
|
|
17
|
+
{ symbol: "octagon" },
|
|
18
|
+
{ symbol: "arrow" },
|
|
19
|
+
{ symbol: "triangle-left" },
|
|
20
|
+
{ symbol: "triangle-right" },
|
|
12
21
|
];
|
|
13
22
|
/**
|
|
14
23
|
* Checks if the chart type supports distinct point shapes
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { type IChartLimits } from "../../../interfaces/chartConfig.js";
|
|
2
|
-
import { type IChartOptions
|
|
2
|
+
import { type IChartOptions } from "../../typings/unsafe.js";
|
|
3
3
|
export interface IValidationResult {
|
|
4
4
|
dataTooLarge: boolean;
|
|
5
5
|
hasNegativeValue: boolean;
|
|
6
6
|
}
|
|
7
|
-
export declare function isNegativeValueIncluded(series: ISeriesItem[] | undefined): boolean;
|
|
8
7
|
export declare function cannotShowNegativeValues(type: string | undefined): boolean;
|
|
9
8
|
export declare function validateData(limits: IChartLimits | undefined, chartOptions: IChartOptions): IValidationResult;
|
|
10
9
|
export declare function getIsFilteringRecommended(chartOptions: IChartOptions): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chartLimits.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartLimits.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAuBvE,OAAO,
|
|
1
|
+
{"version":3,"file":"chartLimits.d.ts","sourceRoot":"","sources":["../../../../src/highcharts/chartTypes/_chartOptions/chartLimits.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAuBvE,OAAO,EAAE,KAAK,aAAa,EAA4C,MAAM,yBAAyB,CAAC;AAYvG,MAAM,WAAW,iBAAiB;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAkHD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE1E;AAkCD,wBAAgB,YAAY,CACxB,MAAM,EAAE,YAAY,GAAG,SAAS,EAChC,YAAY,EAAE,aAAa,GAC5B,iBAAiB,CAsBnB;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,aAAa,GAAG,OAAO,CAW9E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,UA6D5F"}
|
|
@@ -2,15 +2,8 @@
|
|
|
2
2
|
import { VisualizationTypes } from "@gooddata/sdk-ui";
|
|
3
3
|
import { COLUMN_BAR_TOTAL_DATA_POINTS_LIMIT, DEFAULT_CATEGORIES_LIMIT, DEFAULT_DATA_POINTS_LIMIT, DEFAULT_SERIES_LIMIT, HEATMAP_DATA_POINTS_LIMIT, PIE_CHART_LIMIT, SANKEY_CHART_DATA_POINT_LIMIT, SANKEY_CHART_NODE_LIMIT, SOFT_COLUMN_BAR_TOTAL_DATA_POINTS_LIMIT, SOFT_DEFAULT_CATEGORIES_LIMIT, SOFT_DEFAULT_DATA_POINTS_LIMIT, SOFT_DEFAULT_SERIES_LIMIT, SOFT_PIE_CHART_LIMIT, SOFT_SANKEY_CHART_DATA_POINT_LIMIT, SOFT_SANKEY_CHART_NODE_LIMIT, SOFT_STACKED_COLUMN_BAR_SERIES_LIMIT, SOFT_WATERFALL_CHART_DATA_POINT_LIMIT, STACKED_COLUMN_BAR_SERIES_LIMIT, WATERFALL_CHART_DATA_POINT_LIMIT, } from "../../constants/limits.js";
|
|
4
4
|
import { isDataOfReasonableSize } from "../_chartCreators/highChartsCreators.js";
|
|
5
|
-
import { isOneOfTypes, isTreemap } from "../_util/common.js";
|
|
5
|
+
import { isMekko, isNegativeValueIncluded, isNegativeWidthIncluded, isOneOfTypes, isTreemap, } from "../_util/common.js";
|
|
6
6
|
import { unsupportedNegativeValuesTypes } from "./chartCapabilities.js";
|
|
7
|
-
const isNegativeNumber = (n) => typeof n === "number" && n < 0;
|
|
8
|
-
export function isNegativeValueIncluded(series) {
|
|
9
|
-
if (!series) {
|
|
10
|
-
return false;
|
|
11
|
-
}
|
|
12
|
-
return series.some((seriesItem) => (seriesItem.data || []).some(({ y, value, weight }) => isNegativeNumber(y) || isNegativeNumber(value) || isNegativeNumber(weight)));
|
|
13
|
-
}
|
|
14
7
|
function getChartLimits(type, chartOptions) {
|
|
15
8
|
const isStacked = !!chartOptions?.stacking;
|
|
16
9
|
switch (type) {
|
|
@@ -159,7 +152,9 @@ export function validateData(limits, chartOptions) {
|
|
|
159
152
|
const totalDataTooLarge = !limits && exceedsColumnBarTotalDataPoints(type, dataToValidate, COLUMN_BAR_TOTAL_DATA_POINTS_LIMIT);
|
|
160
153
|
return {
|
|
161
154
|
dataTooLarge: totalDataTooLarge || !isDataOfReasonableSize(dataToValidate, finalLimits, isViewByTwoAttributes),
|
|
162
|
-
hasNegativeValue: cannotShowNegativeValues(type) && isNegativeValueIncluded(chartOptions.data?.series)
|
|
155
|
+
hasNegativeValue: (cannotShowNegativeValues(type) && isNegativeValueIncluded(chartOptions.data?.series)) ||
|
|
156
|
+
// Mekko: a negative Width (point `z`) yields a column with negative width — unrenderable.
|
|
157
|
+
(isMekko(type) && isNegativeWidthIncluded(chartOptions.data?.series)),
|
|
163
158
|
};
|
|
164
159
|
}
|
|
165
160
|
export function getIsFilteringRecommended(chartOptions) {
|
|
@@ -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;
|
|
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;AAuJjC,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;AA8EF,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,GACxB,aAAa,CAycf"}
|