Skip to content

Commit 4e2fce5

Browse files
committed
fix: Can add a new chart when cube is joined
1 parent ac6c54f commit 4e2fce5

2 files changed

Lines changed: 14 additions & 9 deletions

File tree

app/charts/index.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,7 @@ export const META: Meta = {
338338

339339
type GetInitialConfigOptions = {
340340
key?: string;
341-
iris: { iri: string; publishIri: string }[];
341+
iris: { iri: string; publishIri: string; joinBy?: string[] }[];
342342
chartType: ChartType;
343343
dimensions: Dimension[];
344344
measures: Measure[];
@@ -364,10 +364,11 @@ export const getInitialConfig = (
364364
// Technically, we should scope filters per cube; but as we only set initial
365365
// filters for area charts, and we can only have multi-cubes for combo charts,
366366
// we can ignore the filters scoping for now.
367-
cubes: iris.map(({ iri, publishIri }) => ({
367+
cubes: iris.map(({ iri, publishIri, joinBy }) => ({
368368
iri,
369369
publishIri,
370370
filters: filters ?? {},
371+
joinBy,
371372
})),
372373
activeField: undefined,
373374
};

app/configurator/config-form.tsx

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import { SelectChangeEvent, SelectProps } from "@mui/material";
22
import get from "lodash/get";
33
import React, {
44
ChangeEvent,
5-
createContext,
65
InputHTMLAttributes,
6+
createContext,
77
useCallback,
88
useContext,
99
useMemo,
@@ -20,8 +20,8 @@ import {
2020
isComboChartConfig,
2121
} from "@/config-types";
2222
import {
23-
getChartOptionField,
2423
GetConfiguratorStateAction,
24+
getChartOptionField,
2525
getFilterValue,
2626
isConfiguring,
2727
isLayouting,
@@ -33,8 +33,8 @@ import {
3333
Dimension,
3434
DimensionValue,
3535
HierarchyValue,
36-
isMeasure,
3736
Measure,
37+
isMeasure,
3838
} from "@/domain/data";
3939
import { useLocale } from "@/locales/use-locale";
4040
import { bfs } from "@/utils/bfs";
@@ -386,13 +386,17 @@ export const getNewChartConfig = ({
386386
dimensions: Dimension[];
387387
measures: Measure[];
388388
}) => {
389-
const cube = isConfiguring(state)
390-
? getChartConfig(state, state.activeChartKey).cubes[0]
391-
: chartConfig.cubes[0];
389+
const cubes = isConfiguring(state)
390+
? getChartConfig(state, state.activeChartKey).cubes
391+
: chartConfig.cubes;
392392

393393
return getInitialConfig({
394394
chartType,
395-
iris: [{ iri: cube.iri, publishIri: cube.publishIri }],
395+
iris: cubes.map((cube) => ({
396+
iri: cube.iri,
397+
publishIri: cube.publishIri,
398+
joinBy: cube.joinBy,
399+
})),
396400
dimensions,
397401
measures,
398402
});

0 commit comments

Comments
 (0)