@lightdash/common 0.1377.0 → 0.1377.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.
@@ -333,7 +333,7 @@ export declare const getDefaultSeriesColor: (index: number) => string;
|
|
333
333
|
export declare const isSeriesWithMixedChartTypes: (series: Series[] | undefined) => boolean;
|
334
334
|
export declare const getChartType: (chartKind: ChartKind | undefined) => ChartType;
|
335
335
|
export declare const getChartKind: (chartType: ChartType, value: ChartConfig['config']) => ChartKind | undefined;
|
336
|
-
export declare const getEChartsChartTypeFromChartKind: (chartKind: ChartKind
|
336
|
+
export declare const getEChartsChartTypeFromChartKind: (chartKind: ChartKind) => CartesianSeriesType;
|
337
337
|
export type ChartSummary = Pick<SavedChart, 'uuid' | 'name' | 'description' | 'spaceName' | 'spaceUuid' | 'projectUuid' | 'organizationUuid' | 'pinnedListUuid' | 'dashboardUuid' | 'dashboardName' | 'slug'> & {
|
338
338
|
chartType?: ChartType | undefined;
|
339
339
|
chartKind?: ChartKind | undefined;
|
@@ -195,7 +195,7 @@ const getEChartsChartTypeFromChartKind = (chartKind) => {
|
|
195
195
|
case ChartKind.SCATTER:
|
196
196
|
return CartesianSeriesType.SCATTER;
|
197
197
|
default:
|
198
|
-
return
|
198
|
+
return CartesianSeriesType.BAR;
|
199
199
|
}
|
200
200
|
};
|
201
201
|
exports.getEChartsChartTypeFromChartKind = getEChartsChartTypeFromChartKind;
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { Format } from '../types/field';
|
2
2
|
import { type Organization } from '../types/organization';
|
3
3
|
import { type RawResultRow } from '../types/results';
|
4
|
-
import { ChartKind } from '../types/savedCharts';
|
4
|
+
import { ChartKind, type CartesianSeriesType } from '../types/savedCharts';
|
5
5
|
import { type SemanticLayerQuery } from '../types/semanticLayer';
|
6
6
|
import { VizIndexType, type PivotChartData, type PivotChartLayout, type VizCartesianChartConfig, type VizCartesianChartOptions } from './types';
|
7
7
|
import { type IResultsRunner } from './types/IResultsRunner';
|
@@ -69,7 +69,7 @@ export type CartesianChartDisplay = {
|
|
69
69
|
format?: Format;
|
70
70
|
yAxisIndex?: number;
|
71
71
|
color?: string;
|
72
|
-
type?:
|
72
|
+
type?: CartesianSeriesType.LINE | CartesianSeriesType.BAR;
|
73
73
|
valueLabelPosition?: ValueLabelPositionOptions;
|
74
74
|
};
|
75
75
|
};
|
@@ -296,21 +296,24 @@ class CartesianChartDataModel {
|
|
296
296
|
const shouldStack = display?.stack === true;
|
297
297
|
const xAxisReference = transformedData.indexColumn?.reference;
|
298
298
|
const series = transformedData.valuesColumns.map((seriesColumn, index) => {
|
299
|
-
const
|
299
|
+
const seriesDisplay = Object.values(display?.series || {}).find((s) => s.yAxisIndex === index);
|
300
|
+
const seriesFormat = seriesDisplay?.format ?? display?.yAxis?.[0]?.format; // TODO: don't always use the first y-axis format once there are multiple y-axes;
|
301
|
+
const seriesColor = seriesDisplay?.color;
|
302
|
+
const seriesValueLabelPosition = seriesDisplay?.valueLabelPosition;
|
303
|
+
const seriesType = seriesDisplay?.type ?? defaultSeriesType;
|
300
304
|
const singleYAxisLabel =
|
301
305
|
// NOTE: When there's only one y-axis left, set the label on the series as well
|
302
306
|
transformedData.valuesColumns.length === 1 &&
|
303
307
|
display?.yAxis?.[0]?.label
|
304
308
|
? display.yAxis[0].label
|
305
309
|
: undefined;
|
306
|
-
const seriesLabel = singleYAxisLabel ??
|
307
|
-
Object.values(display?.series || {}).find((s) => s.yAxisIndex === index)?.label;
|
308
|
-
const seriesColor = Object.values(display?.series || {}).find((s) => s.yAxisIndex === index)?.color;
|
309
|
-
const seriesValueLabelPosition = Object.values(display?.series || {}).find((s) => s.yAxisIndex === index)?.valueLabelPosition;
|
310
|
+
const seriesLabel = singleYAxisLabel ?? seriesDisplay?.label;
|
310
311
|
return {
|
311
312
|
dimensions: [xAxisReference, seriesColumn],
|
312
|
-
type: defaultSeriesType,
|
313
|
-
stack: shouldStack
|
313
|
+
type: seriesType ?? defaultSeriesType,
|
314
|
+
stack: shouldStack && seriesType === 'bar'
|
315
|
+
? 'stack-all-series'
|
316
|
+
: undefined,
|
314
317
|
name: seriesLabel ||
|
315
318
|
(0, field_1.capitalize)(seriesColumn.toLowerCase()).replaceAll('_', ' '),
|
316
319
|
encode: {
|