feat: Add currencies controls in control panels (#24718)

This commit is contained in:
Kamil Gabryjelski
2023-08-02 19:22:45 +02:00
committed by GitHub
parent 1a9c559a8f
commit f7e76d02b7
63 changed files with 697 additions and 306 deletions

View File

@@ -140,6 +140,7 @@ export default function PivotTableChart(props: PivotTableProps) {
colTotals,
rowTotals,
valueFormat,
currencyFormat,
emitCrossFilters,
setDataMask,
selectedFilters,
@@ -155,8 +156,14 @@ export default function PivotTableChart(props: PivotTableProps) {
const theme = useTheme();
const defaultFormatter = useMemo(
() => getNumberFormatter(valueFormat),
[valueFormat],
() =>
currencyFormat?.symbol
? new CurrencyFormatter({
currency: currencyFormat,
d3Format: valueFormat,
})
: getNumberFormatter(valueFormat),
[valueFormat, currencyFormat],
);
const customFormatsArray = useMemo(
() =>
@@ -168,9 +175,9 @@ export default function PivotTableChart(props: PivotTableProps) {
).map(metricName => [
metricName,
columnFormats[metricName] || valueFormat,
currencyFormats[metricName],
currencyFormats[metricName] || currencyFormat,
]),
[columnFormats, currencyFormats, valueFormat],
[columnFormats, currencyFormat, currencyFormats, valueFormat],
);
const hasCustomMetricFormatters = customFormatsArray.length > 0;
const metricFormatters = useMemo(