void;
sideControls?: ReactNode;
disableLabel?: boolean;
+ labelId?: string;
}) => {
const locale = useLocale();
const [state] = useConfiguratorState();
@@ -157,13 +159,15 @@ export const DataFilterSelectGeneric = ({
data?.dataCubesComponents?.dimensions.find(
(d) => d.cubeIri === rawDimension.cubeIri
) ?? rawDimension;
+ const { label } = dimension;
+ const id = `select-single-filter-${index}`;
const sharedProps = {
dimension,
label: disableLabel ? null : (
<>
-
+
{`${index + 1}. ${dimension.label}`}
@@ -180,6 +184,10 @@ export const DataFilterSelectGeneric = ({
@@ -190,7 +198,7 @@ export const DataFilterSelectGeneric = ({
>
),
sideControls,
- id: `select-single-filter-${index}`,
+ id,
disabled: fetching || disabled,
optional: !dimension.isKeyDimension,
loading: fetching,
@@ -209,7 +217,11 @@ export const DataFilterSelectGeneric = ({
);
} else {
return (
-
+
);
}
};
diff --git a/app/configurator/components/chart-controls/color-palette.tsx b/app/configurator/components/chart-controls/color-palette.tsx
index a9f286a21e..b7bd9f4f56 100644
--- a/app/configurator/components/chart-controls/color-palette.tsx
+++ b/app/configurator/components/chart-controls/color-palette.tsx
@@ -2,20 +2,22 @@ import { Trans } from "@lingui/macro";
import {
Box,
Button,
- Divider,
MenuItem,
+ MenuItemProps,
Select,
Typography,
} from "@mui/material";
import { makeStyles } from "@mui/styles";
+import { useId } from "@reach/auto-id";
import get from "lodash/get";
-import { MouseEventHandler, useMemo, useState } from "react";
+import { MouseEventHandler, ReactNode, useMemo, useState } from "react";
import { EncodingFieldType } from "@/charts/chart-config-ui-options";
import { hasDimensionColors } from "@/charts/shared/colors";
import { Flex } from "@/components/flex";
-import { selectMenuProps } from "@/components/form";
-import { Label } from "@/components/form";
+import { Label, selectMenuProps } from "@/components/form";
+import { SelectGroupHeader } from "@/components/select-group-header";
+import { VisuallyHidden } from "@/components/visually-hidden";
import { getChartConfig } from "@/config-utils";
import {
ConfiguratorStateConfiguringChart,
@@ -177,6 +179,7 @@ export const ColorPalette = ({
}
};
+ const labelId = `color-palette-label-${useId()}`;
const [anchorEl, setAnchorEl] = useState();
const handleOpenCreateColorPalette: MouseEventHandler = useEvent(
(e) => {
@@ -224,10 +227,12 @@ export const ColorPalette = ({
}}
>
-