@spteck/fluentui-react-charts 1.1.5 → 1.1.7

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.
@@ -15,6 +15,8 @@ export interface BarProps<T> {
15
15
  theme: Theme;
16
16
  paletteId?: number;
17
17
  renderTooltipLabel?: (item: TooltipItem<'bar'>) => string | number | undefined;
18
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
19
+ locale?: string | string[];
18
20
  }
19
- export declare function BarChart<T extends object>({ data, getPrimary, getSecondary, title, showDatalabels, stacked, theme, renderTooltipLabel, paletteId, }: BarProps<T>): React.JSX.Element;
21
+ export declare function BarChart<T extends object>({ data, getPrimary, getSecondary, title, showDatalabels, stacked, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: BarProps<T>): React.JSX.Element;
20
22
  export default BarChart;
@@ -20,6 +20,8 @@ export interface ComboChartProps<T> {
20
20
  * 'dual' enables named y-axes ('y-bar' and 'y-line') and stacked x for bars.
21
21
  */
22
22
  axesMode?: 'legacy' | 'dual';
23
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
24
+ locale?: string | string[];
23
25
  }
24
- export declare function ComboChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, axesMode, renderTooltipLabel, paletteId, }: ComboChartProps<T>): React.JSX.Element;
26
+ export declare function ComboChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, axesMode, renderTooltipLabel, paletteId, numberFormat, locale, }: ComboChartProps<T>): React.JSX.Element;
25
27
  export default ComboChart;
@@ -13,6 +13,8 @@ export interface DoughnutChartProps<T> {
13
13
  theme?: Theme;
14
14
  renderTooltipLabel?: (item: TooltipItem<'doughnut'>) => string | number | undefined;
15
15
  paletteId?: number;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function DoughnutChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: DoughnutChartProps<T>): React.JSX.Element;
19
+ export declare function DoughnutChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: DoughnutChartProps<T>): React.JSX.Element;
18
20
  export default DoughnutChart;
@@ -13,6 +13,8 @@ export interface PieChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'pie'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function PieChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: PieChartProps<T>): React.JSX.Element;
19
+ export declare function PieChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: PieChartProps<T>): React.JSX.Element;
18
20
  export default PieChart;
@@ -14,6 +14,8 @@ export interface AreaChartProps<T> {
14
14
  theme?: Theme;
15
15
  paletteId?: number;
16
16
  renderTooltipLabel?: (item: TooltipItem<'line'>) => string | number | undefined;
17
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
18
+ locale?: string | string[];
17
19
  }
18
- export declare function AreaChart<T extends object>({ data, getPrimary, getSecondary, title, showDatalabels, theme, stacked, renderTooltipLabel, paletteId, }: AreaChartProps<T>): React.JSX.Element;
20
+ export declare function AreaChart<T extends object>({ data, getPrimary, getSecondary, title, showDatalabels, theme, stacked, renderTooltipLabel, paletteId, numberFormat, locale, }: AreaChartProps<T>): React.JSX.Element;
19
21
  export default AreaChart;
@@ -14,6 +14,8 @@ export interface BarHorizontalProps<T> {
14
14
  theme: Theme;
15
15
  paletteId?: number;
16
16
  renderTooltipLabel?: (item: TooltipItem<'bar'>) => string | number | undefined;
17
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
18
+ locale?: string | string[];
17
19
  }
18
- export declare function BarHorizontalChart<T extends object>({ data, getPrimary, getSecondary, stacked, showDatalabels, title, theme, renderTooltipLabel, paletteId, }: BarHorizontalProps<T>): React.JSX.Element;
20
+ export declare function BarHorizontalChart<T extends object>({ data, getPrimary, getSecondary, stacked, showDatalabels, title, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: BarHorizontalProps<T>): React.JSX.Element;
19
21
  export default BarHorizontalChart;
@@ -14,6 +14,8 @@ export interface BubbleChartProps<T> {
14
14
  theme?: Theme;
15
15
  paletteId?: number;
16
16
  renderTooltipLabel?: (item: TooltipItem<'bubble'>) => string | number | undefined;
17
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
18
+ locale?: string | string[];
17
19
  }
18
- export declare function BubbleChart<T extends object>({ data, getPrimary, getSecondary, getRadius, showDataLabels, title, renderTooltipLabel, theme, paletteId, }: BubbleChartProps<T>): React.JSX.Element;
20
+ export declare function BubbleChart<T extends object>({ data, getPrimary, getSecondary, getRadius, showDataLabels, title, renderTooltipLabel, theme, paletteId, numberFormat, locale, }: BubbleChartProps<T>): React.JSX.Element;
19
21
  export default BubbleChart;
@@ -13,6 +13,8 @@ export interface FloatingBarChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'bar'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function FloatingBarChart<T extends object>({ data, getPrimary, getRange, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: FloatingBarChartProps<T>): React.JSX.Element;
19
+ export declare function FloatingBarChart<T extends object>({ data, getPrimary, getRange, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: FloatingBarChartProps<T>): React.JSX.Element;
18
20
  export default FloatingBarChart;
@@ -13,6 +13,8 @@ export interface LineChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'line'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function LineChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: LineChartProps<T>): React.JSX.Element;
19
+ export declare function LineChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: LineChartProps<T>): React.JSX.Element;
18
20
  export default LineChart;
@@ -13,6 +13,8 @@ export interface PolarChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'polarArea'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function PolarChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: PolarChartProps<T>): React.JSX.Element;
19
+ export declare function PolarChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: PolarChartProps<T>): React.JSX.Element;
18
20
  export default PolarChart;
@@ -13,6 +13,8 @@ export interface RadarChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'radar'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function RadarChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: RadarChartProps<T>): React.JSX.Element;
19
+ export declare function RadarChart<T extends object>({ data, getLabel, getValue, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: RadarChartProps<T>): React.JSX.Element;
18
20
  export default RadarChart;
@@ -13,6 +13,8 @@ export interface ScatterChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'scatter'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function ScatterChart<T extends object>({ data, getX, getY, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: ScatterChartProps<T>): React.JSX.Element;
19
+ export declare function ScatterChart<T extends object>({ data, getX, getY, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: ScatterChartProps<T>): React.JSX.Element;
18
20
  export default ScatterChart;
@@ -13,6 +13,8 @@ export interface StackedLineChartProps<T> {
13
13
  theme?: Theme;
14
14
  paletteId?: number;
15
15
  renderTooltipLabel?: (item: TooltipItem<'line'>) => string | number | undefined;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function StackedLineChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: StackedLineChartProps<T>): React.JSX.Element;
19
+ export declare function StackedLineChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: StackedLineChartProps<T>): React.JSX.Element;
18
20
  export default StackedLineChart;
@@ -13,6 +13,8 @@ export interface SteamChartProps<T> {
13
13
  theme?: Theme;
14
14
  renderTooltipLabel?: (item: TooltipItem<'line'>) => string | number | undefined;
15
15
  paletteId?: number;
16
+ numberFormat?: Intl.NumberFormatOptions | ((v: number) => string);
17
+ locale?: string | string[];
16
18
  }
17
- export declare function SteamChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, renderTooltipLabel, paletteId, }: SteamChartProps<T>): React.JSX.Element;
19
+ export declare function SteamChart<T extends object>({ data, getPrimary, getSecondary, title, showDataLabels, theme, renderTooltipLabel, paletteId, numberFormat, locale, }: SteamChartProps<T>): React.JSX.Element;
18
20
  export default SteamChart;
@@ -859,6 +859,12 @@ opts) {
859
859
  var dataset = item.dataset;
860
860
  var datasetLabel = 'label' in dataset && typeof dataset.label === 'string' ? dataset.label : 'Value';
861
861
  var raw = item.raw;
862
+ // Prepare number formatter based on opts
863
+ var numberFormatter = typeof (opts == null ? void 0 : opts.numberFormat) === 'function' ? opts.numberFormat : new Intl.NumberFormat(opts == null ? void 0 : opts.locale, typeof (opts == null ? void 0 : opts.numberFormat) === 'object' ? opts == null ? void 0 : opts.numberFormat : undefined).format;
864
+ // Helper to format numeric values for tooltips using the configured formatter
865
+ var formatVal = function formatVal(v) {
866
+ return typeof v === 'number' ? numberFormatter(v) : String(v);
867
+ };
862
868
  // determine extraField value, precedence: dataset.extraField > opts.extraField
863
869
  var extra;
864
870
  if (dataset && dataset.extraField !== undefined) {
@@ -879,22 +885,22 @@ opts) {
879
885
  var x = raw.x,
880
886
  y = raw.y,
881
887
  r = raw.r;
882
- return datasetLabel + " \u2014 x: " + x + ", y: " + y + ", r: " + r + suffix;
888
+ return datasetLabel + " \u2014 x: " + formatVal(x) + ", y: " + formatVal(y) + ", r: " + formatVal(r) + suffix;
883
889
  }
884
890
  // Scatter format { x, y }
885
891
  if (typeof raw === 'object' && raw !== null && 'x' in raw && 'y' in raw) {
886
892
  var _x = raw.x,
887
893
  _y = raw.y;
888
- return datasetLabel + " \u2014 x: " + _x + ", y: " + _y + suffix;
894
+ return datasetLabel + " \u2014 x: " + formatVal(_x) + ", y: " + formatVal(_y) + suffix;
889
895
  }
890
896
  // Floating bar [min, max]
891
897
  if (Array.isArray(raw) && raw.length === 2) {
892
898
  var min = raw[0],
893
899
  max = raw[1];
894
- return datasetLabel + ": " + min + " \u2013 " + max + suffix;
900
+ return datasetLabel + ": " + formatVal(min) + " \u2013 " + formatVal(max) + suffix;
895
901
  }
896
902
  // Default: single number or string
897
- return datasetLabel + ": " + raw + suffix;
903
+ return datasetLabel + ": " + formatVal(raw) + suffix;
898
904
  },
899
905
  beforeTitle: function beforeTitle() {
900
906
  return '';
@@ -1111,7 +1117,9 @@ function AreaChart(_ref) {
1111
1117
  stacked = _ref$stacked === void 0 ? false : _ref$stacked,
1112
1118
  renderTooltipLabel = _ref.renderTooltipLabel,
1113
1119
  _ref$paletteId = _ref.paletteId,
1114
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
1120
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
1121
+ numberFormat = _ref.numberFormat,
1122
+ locale = _ref.locale;
1115
1123
  var _useState = React.useState(function () {
1116
1124
  var _data$;
1117
1125
  return data.length > 1 ? data.map(function (s) {
@@ -1220,7 +1228,9 @@ function AreaChart(_ref) {
1220
1228
  display: false
1221
1229
  },
1222
1230
  tooltip: createFluentTooltip(theme, {
1223
- extraField: renderTooltipLabel
1231
+ extraField: renderTooltipLabel,
1232
+ numberFormat: numberFormat,
1233
+ locale: locale
1224
1234
  })
1225
1235
  },
1226
1236
  scales: {
@@ -1252,7 +1262,7 @@ function AreaChart(_ref) {
1252
1262
  }
1253
1263
  }
1254
1264
  });
1255
- }, [title, showDatalabels, theme, fontFamily, fontSize, labelColor, gridColor, stacked, createFluentTooltip]);
1265
+ }, [title, showDatalabels, theme, fontFamily, fontSize, labelColor, gridColor, stacked, createFluentTooltip, numberFormat, locale]);
1256
1266
  return React__default.createElement("div", {
1257
1267
  className: styles.chartWithLegend
1258
1268
  }, React__default.createElement("div", {
@@ -1281,7 +1291,9 @@ function BarChart(_ref) {
1281
1291
  theme = _ref.theme,
1282
1292
  renderTooltipLabel = _ref.renderTooltipLabel,
1283
1293
  _ref$paletteId = _ref.paletteId,
1284
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
1294
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
1295
+ numberFormat = _ref.numberFormat,
1296
+ locale = _ref.locale;
1285
1297
  var _useState = React.useState(function () {
1286
1298
  var _data$;
1287
1299
  return data.length > 1 ? data.map(function (s) {
@@ -1390,7 +1402,9 @@ function BarChart(_ref) {
1390
1402
  display: false
1391
1403
  },
1392
1404
  tooltip: createFluentTooltip(theme, {
1393
- extraField: renderTooltipLabel
1405
+ extraField: renderTooltipLabel,
1406
+ numberFormat: numberFormat,
1407
+ locale: locale
1394
1408
  })
1395
1409
  },
1396
1410
  scales: _extends({
@@ -1448,7 +1462,7 @@ function BarChart(_ref) {
1448
1462
  }
1449
1463
  })
1450
1464
  });
1451
- }, [title, showDatalabels, theme, fontFamily, fontSize, labelColor, gridColor, stacked, createFluentTooltip]);
1465
+ }, [title, showDatalabels, theme, fontFamily, fontSize, labelColor, gridColor, stacked, createFluentTooltip, numberFormat, locale]);
1452
1466
  return React__default.createElement("div", {
1453
1467
  className: styles.chartWithLegend
1454
1468
  }, React__default.createElement("div", {
@@ -1479,7 +1493,9 @@ function BarHorizontalChart(_ref) {
1479
1493
  theme = _ref.theme,
1480
1494
  renderTooltipLabel = _ref.renderTooltipLabel,
1481
1495
  _ref$paletteId = _ref.paletteId,
1482
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
1496
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
1497
+ numberFormat = _ref.numberFormat,
1498
+ locale = _ref.locale;
1483
1499
  var _useState = React.useState(function () {
1484
1500
  var _data$;
1485
1501
  return data.length > 1 ? data.map(function (s) {
@@ -1585,7 +1601,9 @@ function BarHorizontalChart(_ref) {
1585
1601
  display: false
1586
1602
  },
1587
1603
  tooltip: createFluentTooltip(theme, {
1588
- extraField: renderTooltipLabel
1604
+ extraField: renderTooltipLabel,
1605
+ numberFormat: numberFormat,
1606
+ locale: locale
1589
1607
  })
1590
1608
  },
1591
1609
  scales: {
@@ -1617,7 +1635,7 @@ function BarHorizontalChart(_ref) {
1617
1635
  }
1618
1636
  }
1619
1637
  });
1620
- }, [title, showDatalabels, theme, fontFamily, fontSize, labelColor, gridColor, stacked, createFluentTooltip]);
1638
+ }, [title, showDatalabels, theme, fontFamily, fontSize, labelColor, gridColor, stacked, createFluentTooltip, numberFormat, locale]);
1621
1639
  return React__default.createElement("div", {
1622
1640
  className: styles.chartWithLegend
1623
1641
  }, React__default.createElement("div", {
@@ -1647,7 +1665,9 @@ function BubbleChart(_ref) {
1647
1665
  _ref$theme = _ref.theme,
1648
1666
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
1649
1667
  _ref$paletteId = _ref.paletteId,
1650
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
1668
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
1669
+ numberFormat = _ref.numberFormat,
1670
+ locale = _ref.locale;
1651
1671
  var _useState = React.useState(function () {
1652
1672
  var _data$;
1653
1673
  return data.length > 1 ? data.map(function (s) {
@@ -1747,7 +1767,9 @@ function BubbleChart(_ref) {
1747
1767
  display: false
1748
1768
  },
1749
1769
  tooltip: createFluentTooltip(theme, {
1750
- extraField: renderTooltipLabel
1770
+ extraField: renderTooltipLabel,
1771
+ numberFormat: numberFormat,
1772
+ locale: locale
1751
1773
  })
1752
1774
  },
1753
1775
  scales: {
@@ -1778,7 +1800,7 @@ function BubbleChart(_ref) {
1778
1800
  }
1779
1801
  }
1780
1802
  });
1781
- }, [title, showDataLabels, theme, getPrimary, getSecondary, data, fontFamily, fontSize, labelColor, gridColor, createFluentTooltip]);
1803
+ }, [title, showDataLabels, theme, getPrimary, getSecondary, data, fontFamily, fontSize, labelColor, gridColor, createFluentTooltip, numberFormat, locale]);
1782
1804
  return React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
1783
1805
  className: styles.chartWithLegend
1784
1806
  }, React__default.createElement("div", {
@@ -1811,7 +1833,9 @@ function ComboChart(_ref) {
1811
1833
  axesMode = _ref$axesMode === void 0 ? 'legacy' : _ref$axesMode,
1812
1834
  renderTooltipLabel = _ref.renderTooltipLabel,
1813
1835
  _ref$paletteId = _ref.paletteId,
1814
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
1836
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
1837
+ numberFormat = _ref.numberFormat,
1838
+ locale = _ref.locale;
1815
1839
  var _useState = React.useState(function () {
1816
1840
  return data.map(function (s) {
1817
1841
  return s.label;
@@ -1932,7 +1956,9 @@ function ComboChart(_ref) {
1932
1956
  display: false
1933
1957
  },
1934
1958
  tooltip: createFluentTooltip(theme, {
1935
- extraField: renderTooltipLabel
1959
+ extraField: renderTooltipLabel,
1960
+ numberFormat: numberFormat,
1961
+ locale: locale
1936
1962
  })
1937
1963
  }
1938
1964
  });
@@ -2071,7 +2097,9 @@ function DoughnutChart(_ref) {
2071
2097
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
2072
2098
  renderTooltipLabel = _ref.renderTooltipLabel,
2073
2099
  _ref$paletteId = _ref.paletteId,
2074
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
2100
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
2101
+ numberFormat = _ref.numberFormat,
2102
+ locale = _ref.locale;
2075
2103
  var styles = useGraphGlobalStyles();
2076
2104
  var _useChartUtils = useChartUtils(theme),
2077
2105
  lightenColor = _useChartUtils.lightenColor,
@@ -2161,7 +2189,9 @@ function DoughnutChart(_ref) {
2161
2189
  display: false
2162
2190
  },
2163
2191
  tooltip: createFluentTooltip(theme, {
2164
- extraField: renderTooltipLabel
2192
+ extraField: renderTooltipLabel,
2193
+ numberFormat: numberFormat,
2194
+ locale: locale
2165
2195
  }),
2166
2196
  title: {
2167
2197
  display: !!title,
@@ -2220,7 +2250,9 @@ function FloatingBarChart(_ref) {
2220
2250
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
2221
2251
  renderTooltipLabel = _ref.renderTooltipLabel,
2222
2252
  _ref$paletteId = _ref.paletteId,
2223
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
2253
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
2254
+ numberFormat = _ref.numberFormat,
2255
+ locale = _ref.locale;
2224
2256
  var _useState = React.useState(function () {
2225
2257
  var _data$;
2226
2258
  return data.length > 1 ? data.map(function (s) {
@@ -2326,7 +2358,9 @@ function FloatingBarChart(_ref) {
2326
2358
  display: false
2327
2359
  },
2328
2360
  tooltip: createFluentTooltip(theme, {
2329
- extraField: renderTooltipLabel
2361
+ extraField: renderTooltipLabel,
2362
+ numberFormat: numberFormat,
2363
+ locale: locale
2330
2364
  })
2331
2365
  },
2332
2366
  scales: {
@@ -2356,7 +2390,7 @@ function FloatingBarChart(_ref) {
2356
2390
  }
2357
2391
  }
2358
2392
  });
2359
- }, [title, theme, showDataLabels, labelColor, fontFamily, fontSize, gridColor, createFluentTooltip]);
2393
+ }, [title, theme, showDataLabels, labelColor, fontFamily, fontSize, gridColor, createFluentTooltip, numberFormat, locale]);
2360
2394
  return React__default.createElement("div", {
2361
2395
  className: styles.chartWithLegend
2362
2396
  }, React__default.createElement("div", {
@@ -2387,7 +2421,9 @@ function LineChart(_ref) {
2387
2421
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
2388
2422
  renderTooltipLabel = _ref.renderTooltipLabel,
2389
2423
  _ref$paletteId = _ref.paletteId,
2390
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
2424
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
2425
+ numberFormat = _ref.numberFormat,
2426
+ locale = _ref.locale;
2391
2427
  var _useState = React.useState(function () {
2392
2428
  var _data$;
2393
2429
  return data.length > 1 ? data.map(function (s) {
@@ -2496,7 +2532,9 @@ function LineChart(_ref) {
2496
2532
  display: false
2497
2533
  },
2498
2534
  tooltip: createFluentTooltip(theme, {
2499
- extraField: renderTooltipLabel
2535
+ extraField: renderTooltipLabel,
2536
+ numberFormat: numberFormat,
2537
+ locale: locale
2500
2538
  })
2501
2539
  },
2502
2540
  scales: {
@@ -2557,7 +2595,9 @@ function PieChart(_ref) {
2557
2595
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
2558
2596
  renderTooltipLabel = _ref.renderTooltipLabel,
2559
2597
  _ref$paletteId = _ref.paletteId,
2560
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
2598
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
2599
+ numberFormat = _ref.numberFormat,
2600
+ locale = _ref.locale;
2561
2601
  var _useChartUtils = useChartUtils(theme),
2562
2602
  getFluentPalette = _useChartUtils.getFluentPalette,
2563
2603
  lightenColor = _useChartUtils.lightenColor;
@@ -2642,7 +2682,9 @@ function PieChart(_ref) {
2642
2682
  }, getInstantInteractionAnimations(), {
2643
2683
  plugins: {
2644
2684
  tooltip: createFluentTooltip(theme, {
2645
- extraField: renderTooltipLabel
2685
+ extraField: renderTooltipLabel,
2686
+ numberFormat: numberFormat,
2687
+ locale: locale
2646
2688
  }),
2647
2689
  legend: {
2648
2690
  display: false
@@ -2731,7 +2773,9 @@ function PolarChart(_ref) {
2731
2773
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
2732
2774
  renderTooltipLabel = _ref.renderTooltipLabel,
2733
2775
  _ref$paletteId = _ref.paletteId,
2734
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
2776
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
2777
+ numberFormat = _ref.numberFormat,
2778
+ locale = _ref.locale;
2735
2779
  var _useChartUtils = useChartUtils(theme),
2736
2780
  getFluentPalette = _useChartUtils.getFluentPalette,
2737
2781
  lightenColor = _useChartUtils.lightenColor,
@@ -2829,7 +2873,9 @@ function PolarChart(_ref) {
2829
2873
  }
2830
2874
  },
2831
2875
  tooltip: createFluentTooltip(theme, {
2832
- extraField: renderTooltipLabel
2876
+ extraField: renderTooltipLabel,
2877
+ numberFormat: numberFormat,
2878
+ locale: locale
2833
2879
  }),
2834
2880
  legend: {
2835
2881
  display: false
@@ -2851,7 +2897,7 @@ function PolarChart(_ref) {
2851
2897
  }
2852
2898
  }
2853
2899
  });
2854
- }, [theme, title, showDataLabels, createFluentTooltip]);
2900
+ }, [theme, title, showDataLabels, createFluentTooltip, numberFormat, locale]);
2855
2901
  return React__default.createElement("div", {
2856
2902
  className: styles.chartWithLegend
2857
2903
  }, React__default.createElement("div", {
@@ -2882,7 +2928,9 @@ function RadarChart(_ref) {
2882
2928
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
2883
2929
  renderTooltipLabel = _ref.renderTooltipLabel,
2884
2930
  _ref$paletteId = _ref.paletteId,
2885
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
2931
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
2932
+ numberFormat = _ref.numberFormat,
2933
+ locale = _ref.locale;
2886
2934
  var _useState = React.useState(function () {
2887
2935
  return data.map(function (s) {
2888
2936
  return s.label;
@@ -2982,7 +3030,9 @@ function RadarChart(_ref) {
2982
3030
  }
2983
3031
  },
2984
3032
  tooltip: createFluentTooltip(theme, {
2985
- extraField: renderTooltipLabel
3033
+ extraField: renderTooltipLabel,
3034
+ numberFormat: numberFormat,
3035
+ locale: locale
2986
3036
  }),
2987
3037
  legend: {
2988
3038
  display: false
@@ -3013,7 +3063,7 @@ function RadarChart(_ref) {
3013
3063
  }
3014
3064
  }
3015
3065
  });
3016
- }, [theme, title, showDataLabels, createFluentTooltip, gridColor, labelColor, fontFamily, fontSize]);
3066
+ }, [theme, title, showDataLabels, createFluentTooltip, gridColor, labelColor, fontFamily, fontSize, numberFormat, locale]);
3017
3067
  return React__default.createElement("div", {
3018
3068
  className: styles.chartWithLegend
3019
3069
  }, React__default.createElement("div", {
@@ -3042,7 +3092,9 @@ function ScatterChart(_ref) {
3042
3092
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
3043
3093
  renderTooltipLabel = _ref.renderTooltipLabel,
3044
3094
  _ref$paletteId = _ref.paletteId,
3045
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
3095
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
3096
+ numberFormat = _ref.numberFormat,
3097
+ locale = _ref.locale;
3046
3098
  var _useState = React.useState(function () {
3047
3099
  return data.map(function (s) {
3048
3100
  return s.label;
@@ -3135,7 +3187,9 @@ function ScatterChart(_ref) {
3135
3187
  display: false
3136
3188
  },
3137
3189
  tooltip: createFluentTooltip(theme, {
3138
- extraField: renderTooltipLabel
3190
+ extraField: renderTooltipLabel,
3191
+ numberFormat: numberFormat,
3192
+ locale: locale
3139
3193
  })
3140
3194
  },
3141
3195
  scales: {
@@ -3168,7 +3222,7 @@ function ScatterChart(_ref) {
3168
3222
  }
3169
3223
  }
3170
3224
  });
3171
- }, [theme, title, showDataLabels, createFluentTooltip, labelColor, fontFamily, fontSize, gridColor]);
3225
+ }, [theme, title, showDataLabels, createFluentTooltip, labelColor, fontFamily, fontSize, gridColor, numberFormat, locale]);
3172
3226
  return React__default.createElement("div", {
3173
3227
  className: styles.chartWithLegend
3174
3228
  }, React__default.createElement("div", {
@@ -3197,7 +3251,9 @@ function StackedLineChart(_ref) {
3197
3251
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
3198
3252
  renderTooltipLabel = _ref.renderTooltipLabel,
3199
3253
  _ref$paletteId = _ref.paletteId,
3200
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
3254
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
3255
+ numberFormat = _ref.numberFormat,
3256
+ locale = _ref.locale;
3201
3257
  var _useState = React.useState(function () {
3202
3258
  var _data$;
3203
3259
  return data.length > 1 ? data.map(function (s) {
@@ -3306,7 +3362,9 @@ function StackedLineChart(_ref) {
3306
3362
  display: false
3307
3363
  },
3308
3364
  tooltip: createFluentTooltip(theme, {
3309
- extraField: renderTooltipLabel
3365
+ extraField: renderTooltipLabel,
3366
+ numberFormat: numberFormat,
3367
+ locale: locale
3310
3368
  })
3311
3369
  },
3312
3370
  scales: {
@@ -3338,7 +3396,7 @@ function StackedLineChart(_ref) {
3338
3396
  }
3339
3397
  }
3340
3398
  });
3341
- }, [theme, title, showDataLabels, createFluentTooltip, labelColor, fontFamily, fontSize, gridColor]);
3399
+ }, [theme, title, showDataLabels, createFluentTooltip, labelColor, fontFamily, fontSize, gridColor, numberFormat, locale]);
3342
3400
  return React__default.createElement("div", {
3343
3401
  className: styles.chartWithLegend
3344
3402
  }, React__default.createElement("div", {
@@ -3367,7 +3425,9 @@ function SteamChart(_ref) {
3367
3425
  theme = _ref$theme === void 0 ? reactComponents.webLightTheme : _ref$theme,
3368
3426
  renderTooltipLabel = _ref.renderTooltipLabel,
3369
3427
  _ref$paletteId = _ref.paletteId,
3370
- paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId;
3428
+ paletteId = _ref$paletteId === void 0 ? 1 : _ref$paletteId,
3429
+ numberFormat = _ref.numberFormat,
3430
+ locale = _ref.locale;
3371
3431
  var _useState = React.useState(function () {
3372
3432
  var _data$;
3373
3433
  return data.length > 1 ? data.map(function (s) {
@@ -3489,7 +3549,9 @@ function SteamChart(_ref) {
3489
3549
  display: false
3490
3550
  },
3491
3551
  tooltip: createFluentTooltip(theme, {
3492
- extraField: renderTooltipLabel
3552
+ extraField: renderTooltipLabel,
3553
+ numberFormat: numberFormat,
3554
+ locale: locale
3493
3555
  })
3494
3556
  },
3495
3557
  interaction: {
@@ -3530,7 +3592,7 @@ function SteamChart(_ref) {
3530
3592
  }
3531
3593
  }
3532
3594
  });
3533
- }, [theme, title, showDataLabels, createFluentTooltip, labelColor, fontFamily, fontSize, gridColor, showPercent]);
3595
+ }, [theme, title, showDataLabels, createFluentTooltip, labelColor, fontFamily, fontSize, gridColor, showPercent, numberFormat, locale]);
3534
3596
  return React__default.createElement("div", {
3535
3597
  className: styles.chartWithLegend
3536
3598
  }, React__default.createElement("div", {
@@ -3576,7 +3638,10 @@ var chartProps = function chartProps(chart) {
3576
3638
  },
3577
3639
  // forward optional renderTooltipLabel if provided on the chart config
3578
3640
  renderTooltipLabel: chart.renderTooltipLabel,
3579
- paletteId: chart.paletteId
3641
+ paletteId: chart.paletteId,
3642
+ // forward optional number formatting options
3643
+ numberFormat: chart.numberFormat,
3644
+ locale: chart.locale
3580
3645
  };
3581
3646
  };
3582
3647
  var getChartComponent = function getChartComponent(chart, theme) {