@hitachivantara/uikit-react-viz 5.6.27 → 5.6.28

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.
Files changed (95) hide show
  1. package/dist/cjs/components/BarChart/BarChart.cjs +82 -80
  2. package/dist/cjs/components/BarChart/BarChart.cjs.map +1 -1
  3. package/dist/cjs/components/BaseChart/BaseChart.cjs +42 -36
  4. package/dist/cjs/components/BaseChart/BaseChart.cjs.map +1 -1
  5. package/dist/cjs/components/ConfusionMatrix/ConfusionMatrix.cjs +28 -17
  6. package/dist/cjs/components/ConfusionMatrix/ConfusionMatrix.cjs.map +1 -1
  7. package/dist/cjs/components/ConfusionMatrix/ConfusionMatrix.styles.cjs +22 -22
  8. package/dist/cjs/components/ConfusionMatrix/ConfusionMatrix.styles.cjs.map +1 -1
  9. package/dist/cjs/components/ConfusionMatrix/utils.cjs +32 -23
  10. package/dist/cjs/components/ConfusionMatrix/utils.cjs.map +1 -1
  11. package/dist/cjs/components/DonutChart/DonutChart.cjs +60 -59
  12. package/dist/cjs/components/DonutChart/DonutChart.cjs.map +1 -1
  13. package/dist/cjs/components/LineChart/LineChart.cjs +80 -81
  14. package/dist/cjs/components/LineChart/LineChart.cjs.map +1 -1
  15. package/dist/cjs/hooks/tooltip/styles.cjs +2 -7
  16. package/dist/cjs/hooks/tooltip/styles.cjs.map +1 -1
  17. package/dist/cjs/hooks/tooltip/useTooltip.cjs +55 -37
  18. package/dist/cjs/hooks/tooltip/useTooltip.cjs.map +1 -1
  19. package/dist/cjs/hooks/useData.cjs +24 -22
  20. package/dist/cjs/hooks/useData.cjs.map +1 -1
  21. package/dist/cjs/hooks/useDataZoom.cjs +15 -14
  22. package/dist/cjs/hooks/useDataZoom.cjs.map +1 -1
  23. package/dist/cjs/hooks/useDataset.cjs +7 -4
  24. package/dist/cjs/hooks/useDataset.cjs.map +1 -1
  25. package/dist/cjs/hooks/useGrid.cjs.map +1 -1
  26. package/dist/cjs/hooks/useLegend.cjs +5 -7
  27. package/dist/cjs/hooks/useLegend.cjs.map +1 -1
  28. package/dist/cjs/hooks/useOption.cjs +1 -4
  29. package/dist/cjs/hooks/useOption.cjs.map +1 -1
  30. package/dist/cjs/hooks/useSeries.cjs +14 -4
  31. package/dist/cjs/hooks/useSeries.cjs.map +1 -1
  32. package/dist/cjs/hooks/useVisualMap.cjs +11 -1
  33. package/dist/cjs/hooks/useVisualMap.cjs.map +1 -1
  34. package/dist/cjs/hooks/useVizTheme.cjs.map +1 -1
  35. package/dist/cjs/hooks/useXAxis.cjs +17 -10
  36. package/dist/cjs/hooks/useXAxis.cjs.map +1 -1
  37. package/dist/cjs/hooks/useYAxis.cjs +41 -44
  38. package/dist/cjs/hooks/useYAxis.cjs.map +1 -1
  39. package/dist/cjs/providers/Provider.cjs +3 -11
  40. package/dist/cjs/providers/Provider.cjs.map +1 -1
  41. package/dist/cjs/utils/getAgFunc.cjs.map +1 -1
  42. package/dist/cjs/utils/getAxisType.cjs.map +1 -1
  43. package/dist/cjs/utils/getGroupKey.cjs.map +1 -1
  44. package/dist/cjs/utils/getLegendIcon.cjs.map +1 -1
  45. package/dist/cjs/utils/getMeasure.cjs.map +1 -1
  46. package/dist/cjs/utils/registerTheme.cjs +15 -4
  47. package/dist/cjs/utils/registerTheme.cjs.map +1 -1
  48. package/dist/esm/components/BarChart/BarChart.js +82 -80
  49. package/dist/esm/components/BarChart/BarChart.js.map +1 -1
  50. package/dist/esm/components/BaseChart/BaseChart.js +42 -36
  51. package/dist/esm/components/BaseChart/BaseChart.js.map +1 -1
  52. package/dist/esm/components/ConfusionMatrix/ConfusionMatrix.js +28 -17
  53. package/dist/esm/components/ConfusionMatrix/ConfusionMatrix.js.map +1 -1
  54. package/dist/esm/components/ConfusionMatrix/ConfusionMatrix.styles.js +22 -22
  55. package/dist/esm/components/ConfusionMatrix/ConfusionMatrix.styles.js.map +1 -1
  56. package/dist/esm/components/ConfusionMatrix/utils.js +32 -23
  57. package/dist/esm/components/ConfusionMatrix/utils.js.map +1 -1
  58. package/dist/esm/components/DonutChart/DonutChart.js +60 -59
  59. package/dist/esm/components/DonutChart/DonutChart.js.map +1 -1
  60. package/dist/esm/components/LineChart/LineChart.js +80 -81
  61. package/dist/esm/components/LineChart/LineChart.js.map +1 -1
  62. package/dist/esm/hooks/tooltip/styles.js +2 -7
  63. package/dist/esm/hooks/tooltip/styles.js.map +1 -1
  64. package/dist/esm/hooks/tooltip/useTooltip.js +55 -37
  65. package/dist/esm/hooks/tooltip/useTooltip.js.map +1 -1
  66. package/dist/esm/hooks/useData.js +24 -22
  67. package/dist/esm/hooks/useData.js.map +1 -1
  68. package/dist/esm/hooks/useDataZoom.js +15 -14
  69. package/dist/esm/hooks/useDataZoom.js.map +1 -1
  70. package/dist/esm/hooks/useDataset.js +7 -4
  71. package/dist/esm/hooks/useDataset.js.map +1 -1
  72. package/dist/esm/hooks/useGrid.js.map +1 -1
  73. package/dist/esm/hooks/useLegend.js +5 -7
  74. package/dist/esm/hooks/useLegend.js.map +1 -1
  75. package/dist/esm/hooks/useOption.js +1 -4
  76. package/dist/esm/hooks/useOption.js.map +1 -1
  77. package/dist/esm/hooks/useSeries.js +14 -4
  78. package/dist/esm/hooks/useSeries.js.map +1 -1
  79. package/dist/esm/hooks/useVisualMap.js +11 -1
  80. package/dist/esm/hooks/useVisualMap.js.map +1 -1
  81. package/dist/esm/hooks/useVizTheme.js.map +1 -1
  82. package/dist/esm/hooks/useXAxis.js +17 -10
  83. package/dist/esm/hooks/useXAxis.js.map +1 -1
  84. package/dist/esm/hooks/useYAxis.js +41 -44
  85. package/dist/esm/hooks/useYAxis.js.map +1 -1
  86. package/dist/esm/providers/Provider.js +3 -11
  87. package/dist/esm/providers/Provider.js.map +1 -1
  88. package/dist/esm/utils/getAgFunc.js.map +1 -1
  89. package/dist/esm/utils/getAxisType.js.map +1 -1
  90. package/dist/esm/utils/getGroupKey.js.map +1 -1
  91. package/dist/esm/utils/getLegendIcon.js.map +1 -1
  92. package/dist/esm/utils/getMeasure.js.map +1 -1
  93. package/dist/esm/utils/registerTheme.js +15 -4
  94. package/dist/esm/utils/registerTheme.js.map +1 -1
  95. package/package.json +5 -5
@@ -35,85 +35,87 @@ function _interopNamespace(e) {
35
35
  return Object.freeze(n);
36
36
  }
37
37
  const echarts__namespace = /* @__PURE__ */ _interopNamespace(echarts);
38
- echarts__namespace.use([charts.BarChart, components.DatasetComponent, components.GridComponent, components.TooltipComponent, components.LegendComponent, components.DataZoomSliderComponent, components.DataZoomInsideComponent]);
39
- const HvBarChart = react.forwardRef((props, ref) => {
40
- const {
41
- yAxis,
42
- xAxis,
43
- horizontal = false,
44
- horizontalRangeSlider,
45
- grid,
46
- data,
47
- groupBy,
48
- splitBy,
49
- sortBy,
50
- stack,
51
- seriesNameFormatter,
52
- measures,
53
- legend,
54
- tooltip,
55
- classes,
56
- height,
57
- width,
58
- onOptionChange
59
- } = props;
60
- const chartData = useData.useData({
61
- data,
62
- groupBy,
63
- sortBy,
64
- splitBy,
65
- measures
66
- });
67
- const chartDataset = useDataset.useDataset(chartData);
68
- const chartYAxis = useYAxis.useYAxis({
69
- axes: Array.isArray(yAxis) || yAxis == null ? yAxis : [yAxis],
70
- defaultType: horizontal ? "categorical" : "continuous"
71
- });
72
- const chartXAxis = useXAxis.useXAxis({
73
- type: horizontal ? "continuous" : "categorical",
74
- ...xAxis
75
- });
76
- const chartSlider = useDataZoom.useDataZoom({
77
- showHorizontal: horizontalRangeSlider?.show
78
- });
79
- const chartGrid = useGrid.useGrid({
80
- ...grid
81
- });
82
- const chartSeries = useSeries.useSeries({
83
- type: "bar",
84
- data: chartData,
85
- groupBy,
86
- measures,
87
- stack,
88
- nameFormatter: seriesNameFormatter,
89
- horizontal
90
- });
91
- const chartLegend = useLegend.useLegend({
92
- ...legend,
93
- series: chartSeries.series,
94
- icon: "square"
95
- });
96
- const chartTooltip = useTooltip.useTooltip({
97
- ...tooltip,
98
- trigger: "axis",
99
- measures,
100
- classes,
101
- horizontal
102
- });
103
- const option = useOption.useOption({
104
- option: {
105
- ...chartYAxis,
106
- ...chartXAxis,
107
- ...chartSlider,
108
- ...chartGrid,
109
- ...chartDataset,
110
- ...chartSeries,
111
- ...chartLegend,
112
- ...chartTooltip
113
- },
114
- onOptionChange
115
- });
116
- return /* @__PURE__ */ jsxRuntime.jsx(BaseChart.HvBaseChart, { ref, option, width, height });
117
- });
38
+ echarts__namespace.use([
39
+ charts.BarChart,
40
+ components.DatasetComponent,
41
+ components.GridComponent,
42
+ components.TooltipComponent,
43
+ components.LegendComponent,
44
+ components.DataZoomSliderComponent,
45
+ components.DataZoomInsideComponent
46
+ ]);
47
+ const HvBarChart = react.forwardRef(
48
+ (props, ref) => {
49
+ const {
50
+ yAxis,
51
+ xAxis,
52
+ horizontal = false,
53
+ horizontalRangeSlider,
54
+ grid,
55
+ data,
56
+ groupBy,
57
+ splitBy,
58
+ sortBy,
59
+ stack,
60
+ seriesNameFormatter,
61
+ measures,
62
+ legend,
63
+ tooltip,
64
+ classes,
65
+ height,
66
+ width,
67
+ onOptionChange
68
+ } = props;
69
+ const chartData = useData.useData({ data, groupBy, sortBy, splitBy, measures });
70
+ const chartDataset = useDataset.useDataset(chartData);
71
+ const chartYAxis = useYAxis.useYAxis({
72
+ axes: Array.isArray(yAxis) || yAxis == null ? yAxis : [yAxis],
73
+ defaultType: horizontal ? "categorical" : "continuous"
74
+ });
75
+ const chartXAxis = useXAxis.useXAxis({
76
+ type: horizontal ? "continuous" : "categorical",
77
+ ...xAxis
78
+ });
79
+ const chartSlider = useDataZoom.useDataZoom({
80
+ showHorizontal: horizontalRangeSlider?.show
81
+ });
82
+ const chartGrid = useGrid.useGrid({ ...grid });
83
+ const chartSeries = useSeries.useSeries({
84
+ type: "bar",
85
+ data: chartData,
86
+ groupBy,
87
+ measures,
88
+ stack,
89
+ nameFormatter: seriesNameFormatter,
90
+ horizontal
91
+ });
92
+ const chartLegend = useLegend.useLegend({
93
+ ...legend,
94
+ series: chartSeries.series,
95
+ icon: "square"
96
+ });
97
+ const chartTooltip = useTooltip.useTooltip({
98
+ ...tooltip,
99
+ trigger: "axis",
100
+ measures,
101
+ classes,
102
+ horizontal
103
+ });
104
+ const option = useOption.useOption({
105
+ option: {
106
+ ...chartYAxis,
107
+ ...chartXAxis,
108
+ ...chartSlider,
109
+ ...chartGrid,
110
+ ...chartDataset,
111
+ ...chartSeries,
112
+ ...chartLegend,
113
+ ...chartTooltip
114
+ },
115
+ onOptionChange
116
+ });
117
+ return /* @__PURE__ */ jsxRuntime.jsx(BaseChart.HvBaseChart, { ref, option, width, height });
118
+ }
119
+ );
118
120
  exports.HvBarChart = HvBarChart;
119
121
  //# sourceMappingURL=BarChart.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.cjs","sources":["../../../../src/components/BarChart/BarChart.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport * as echarts from \"echarts/core\";\nimport { BarChart } from \"echarts/charts\";\nimport {\n DatasetComponent,\n GridComponent,\n TooltipComponent,\n LegendComponent,\n DataZoomSliderComponent,\n DataZoomInsideComponent,\n} from \"echarts/components\";\nimport ReactECharts from \"echarts-for-react/lib/core\";\n\nimport { Arrayable } from \"@hitachivantara/uikit-react-core\";\n\nimport {\n useXAxis,\n useYAxis,\n useDataZoom,\n useGrid,\n useData,\n useDataset,\n useSeries,\n useLegend,\n useTooltip,\n useOption,\n HvChartTooltipClasses,\n} from \"@viz/hooks\";\n\nimport { HvBarChartMeasures } from \"../../types\";\nimport { HvBaseChart } from \"../BaseChart\";\nimport { HvAxisChartCommonProps, HvChartCommonProps } from \"../../types/common\";\n\n// Register chart components\necharts.use([\n BarChart,\n DatasetComponent,\n GridComponent,\n TooltipComponent,\n LegendComponent,\n DataZoomSliderComponent,\n DataZoomInsideComponent,\n]);\n\nexport interface HvBarChartClasses extends HvChartTooltipClasses {}\n\nexport interface HvBarChartProps\n extends HvAxisChartCommonProps,\n HvChartCommonProps {\n /** Columns to measure on the chart. */\n measures: Arrayable<HvBarChartMeasures>;\n /** Whether the bar chart should be horizontal. Defaults to `false`. */\n horizontal?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvBarChartClasses;\n}\n\n/**\n * A bar chart is a chart or graph that presents categorical data with rectangular bars.\n */\nexport const HvBarChart = forwardRef<ReactECharts, HvBarChartProps>(\n (props, ref) => {\n const {\n yAxis,\n xAxis,\n horizontal = false,\n horizontalRangeSlider,\n grid,\n data,\n groupBy,\n splitBy,\n sortBy,\n stack,\n seriesNameFormatter,\n measures,\n legend,\n tooltip,\n classes,\n height,\n width,\n onOptionChange,\n } = props;\n\n const chartData = useData({ data, groupBy, sortBy, splitBy, measures });\n\n const chartDataset = useDataset(chartData);\n\n const chartYAxis = useYAxis({\n axes: Array.isArray(yAxis) || yAxis == null ? yAxis : [yAxis],\n defaultType: horizontal ? \"categorical\" : \"continuous\",\n });\n\n const chartXAxis = useXAxis({\n type: horizontal ? \"continuous\" : \"categorical\",\n ...xAxis,\n });\n\n const chartSlider = useDataZoom({\n showHorizontal: horizontalRangeSlider?.show,\n });\n\n const chartGrid = useGrid({ ...grid });\n\n const chartSeries = useSeries({\n type: \"bar\",\n data: chartData,\n groupBy,\n measures,\n stack,\n nameFormatter: seriesNameFormatter,\n horizontal,\n });\n\n const chartLegend = useLegend({\n ...legend,\n series: chartSeries.series,\n icon: \"square\",\n });\n\n const chartTooltip = useTooltip({\n ...tooltip,\n trigger: \"axis\",\n measures,\n classes,\n horizontal,\n });\n\n const option = useOption({\n option: {\n ...chartYAxis,\n ...chartXAxis,\n ...chartSlider,\n ...chartGrid,\n ...chartDataset,\n ...chartSeries,\n ...chartLegend,\n ...chartTooltip,\n },\n onOptionChange,\n });\n\n return (\n <HvBaseChart ref={ref} option={option} width={width} height={height} />\n );\n }\n);\n"],"names":["echarts","use","BarChart","DatasetComponent","GridComponent","TooltipComponent","LegendComponent","DataZoomSliderComponent","DataZoomInsideComponent","HvBarChart","forwardRef","props","ref","yAxis","xAxis","horizontal","horizontalRangeSlider","grid","data","groupBy","splitBy","sortBy","stack","seriesNameFormatter","measures","legend","tooltip","classes","height","width","onOptionChange","chartData","useData","chartDataset","useDataset","chartYAxis","useYAxis","axes","Array","isArray","defaultType","chartXAxis","useXAxis","type","chartSlider","useDataZoom","showHorizontal","show","chartGrid","useGrid","chartSeries","useSeries","nameFormatter","chartLegend","useLegend","series","icon","chartTooltip","useTooltip","trigger","option","useOption","jsx","HvBaseChart"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCAA,mBAAQC,IAAI,CACVC,OACAC,UAAAA,6BACAC,WAAAA,eACAC,WACAC,kBAAAA,4BACAC,WAAAA,yBACAC,WAAuB,uBAAA,CACxB;AAkBM,MAAMC,aAAaC,MAAAA,WACxB,CAACC,OAAOC,QAAQ;AACR,QAAA;AAAA,IACJC;AAAAA,IACAC;AAAAA,IACAC,aAAa;AAAA,IACbC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,EACEnB,IAAAA;AAEJ,QAAMoB,YAAYC,QAAAA,QAAQ;AAAA,IAAEd;AAAAA,IAAMC;AAAAA,IAASE;AAAAA,IAAQD;AAAAA,IAASI;AAAAA,EAAAA,CAAU;AAEhES,QAAAA,eAAeC,sBAAWH,SAAS;AAEzC,QAAMI,aAAaC,SAAAA,SAAS;AAAA,IAC1BC,MAAMC,MAAMC,QAAQ1B,KAAK,KAAKA,SAAS,OAAOA,QAAQ,CAACA,KAAK;AAAA,IAC5D2B,aAAazB,aAAa,gBAAgB;AAAA,EAAA,CAC3C;AAED,QAAM0B,aAAaC,SAAAA,SAAS;AAAA,IAC1BC,MAAM5B,aAAa,eAAe;AAAA,IAClC,GAAGD;AAAAA,EAAAA,CACJ;AAED,QAAM8B,cAAcC,YAAAA,YAAY;AAAA,IAC9BC,gBAAgB9B,uBAAuB+B;AAAAA,EAAAA,CACxC;AAED,QAAMC,YAAYC,QAAAA,QAAQ;AAAA,IAAE,GAAGhC;AAAAA,EAAAA,CAAM;AAErC,QAAMiC,cAAcC,UAAAA,UAAU;AAAA,IAC5BR,MAAM;AAAA,IACNzB,MAAMa;AAAAA,IACNZ;AAAAA,IACAK;AAAAA,IACAF;AAAAA,IACA8B,eAAe7B;AAAAA,IACfR;AAAAA,EAAAA,CACD;AAED,QAAMsC,cAAcC,UAAAA,UAAU;AAAA,IAC5B,GAAG7B;AAAAA,IACH8B,QAAQL,YAAYK;AAAAA,IACpBC,MAAM;AAAA,EAAA,CACP;AAED,QAAMC,eAAeC,WAAAA,WAAW;AAAA,IAC9B,GAAGhC;AAAAA,IACHiC,SAAS;AAAA,IACTnC;AAAAA,IACAG;AAAAA,IACAZ;AAAAA,EAAAA,CACD;AAED,QAAM6C,SAASC,UAAAA,UAAU;AAAA,IACvBD,QAAQ;AAAA,MACN,GAAGzB;AAAAA,MACH,GAAGM;AAAAA,MACH,GAAGG;AAAAA,MACH,GAAGI;AAAAA,MACH,GAAGf;AAAAA,MACH,GAAGiB;AAAAA,MACH,GAAGG;AAAAA,MACH,GAAGI;AAAAA,IACL;AAAA,IACA3B;AAAAA,EAAAA,CACD;AAED,SACGgC,2BAAAA,IAAAC,UAAAA,aAAA,EAAY,KAAU,QAAgB,OAAc,OAAkB,CAAA;AAE3E,CACF;;"}
1
+ {"version":3,"file":"BarChart.cjs","sources":["../../../../src/components/BarChart/BarChart.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport * as echarts from \"echarts/core\";\nimport { BarChart } from \"echarts/charts\";\nimport {\n DatasetComponent,\n GridComponent,\n TooltipComponent,\n LegendComponent,\n DataZoomSliderComponent,\n DataZoomInsideComponent,\n} from \"echarts/components\";\nimport ReactECharts from \"echarts-for-react/lib/core\";\n\nimport { Arrayable } from \"@hitachivantara/uikit-react-core\";\n\nimport {\n useXAxis,\n useYAxis,\n useDataZoom,\n useGrid,\n useData,\n useDataset,\n useSeries,\n useLegend,\n useTooltip,\n useOption,\n HvChartTooltipClasses,\n} from \"@viz/hooks\";\n\nimport { HvBarChartMeasures } from \"../../types\";\nimport { HvBaseChart } from \"../BaseChart\";\nimport { HvAxisChartCommonProps, HvChartCommonProps } from \"../../types/common\";\n\n// Register chart components\necharts.use([\n BarChart,\n DatasetComponent,\n GridComponent,\n TooltipComponent,\n LegendComponent,\n DataZoomSliderComponent,\n DataZoomInsideComponent,\n]);\n\nexport interface HvBarChartClasses extends HvChartTooltipClasses {}\n\nexport interface HvBarChartProps\n extends HvAxisChartCommonProps,\n HvChartCommonProps {\n /** Columns to measure on the chart. */\n measures: Arrayable<HvBarChartMeasures>;\n /** Whether the bar chart should be horizontal. Defaults to `false`. */\n horizontal?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvBarChartClasses;\n}\n\n/**\n * A bar chart is a chart or graph that presents categorical data with rectangular bars.\n */\nexport const HvBarChart = forwardRef<ReactECharts, HvBarChartProps>(\n (props, ref) => {\n const {\n yAxis,\n xAxis,\n horizontal = false,\n horizontalRangeSlider,\n grid,\n data,\n groupBy,\n splitBy,\n sortBy,\n stack,\n seriesNameFormatter,\n measures,\n legend,\n tooltip,\n classes,\n height,\n width,\n onOptionChange,\n } = props;\n\n const chartData = useData({ data, groupBy, sortBy, splitBy, measures });\n\n const chartDataset = useDataset(chartData);\n\n const chartYAxis = useYAxis({\n axes: Array.isArray(yAxis) || yAxis == null ? yAxis : [yAxis],\n defaultType: horizontal ? \"categorical\" : \"continuous\",\n });\n\n const chartXAxis = useXAxis({\n type: horizontal ? \"continuous\" : \"categorical\",\n ...xAxis,\n });\n\n const chartSlider = useDataZoom({\n showHorizontal: horizontalRangeSlider?.show,\n });\n\n const chartGrid = useGrid({ ...grid });\n\n const chartSeries = useSeries({\n type: \"bar\",\n data: chartData,\n groupBy,\n measures,\n stack,\n nameFormatter: seriesNameFormatter,\n horizontal,\n });\n\n const chartLegend = useLegend({\n ...legend,\n series: chartSeries.series,\n icon: \"square\",\n });\n\n const chartTooltip = useTooltip({\n ...tooltip,\n trigger: \"axis\",\n measures,\n classes,\n horizontal,\n });\n\n const option = useOption({\n option: {\n ...chartYAxis,\n ...chartXAxis,\n ...chartSlider,\n ...chartGrid,\n ...chartDataset,\n ...chartSeries,\n ...chartLegend,\n ...chartTooltip,\n },\n onOptionChange,\n });\n\n return (\n <HvBaseChart ref={ref} option={option} width={width} height={height} />\n );\n }\n);\n"],"names":["echarts","BarChart","DatasetComponent","GridComponent","TooltipComponent","LegendComponent","DataZoomSliderComponent","DataZoomInsideComponent","forwardRef","useData","useDataset","useYAxis","useXAxis","useDataZoom","useGrid","useSeries","useLegend","useTooltip","useOption","jsx","HvBaseChart"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCAA,mBAAQ,IAAI;AAAA,EACVC,OAAA;AAAA,EACAC,WAAA;AAAA,EACAC,WAAA;AAAA,EACAC,WAAA;AAAA,EACAC,WAAA;AAAA,EACAC,WAAA;AAAA,EACAC,WAAA;AACF,CAAC;AAkBM,MAAM,aAAaC,MAAA;AAAA,EACxB,CAAC,OAAO,QAAQ;AACR,UAAA;AAAA,MACJ;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACE,IAAA;AAEE,UAAA,YAAYC,gBAAQ,EAAE,MAAM,SAAS,QAAQ,SAAS,UAAU;AAEhE,UAAA,eAAeC,sBAAW,SAAS;AAEzC,UAAM,aAAaC,SAAAA,SAAS;AAAA,MAC1B,MAAM,MAAM,QAAQ,KAAK,KAAK,SAAS,OAAO,QAAQ,CAAC,KAAK;AAAA,MAC5D,aAAa,aAAa,gBAAgB;AAAA,IAAA,CAC3C;AAED,UAAM,aAAaC,SAAAA,SAAS;AAAA,MAC1B,MAAM,aAAa,eAAe;AAAA,MAClC,GAAG;AAAA,IAAA,CACJ;AAED,UAAM,cAAcC,YAAAA,YAAY;AAAA,MAC9B,gBAAgB,uBAAuB;AAAA,IAAA,CACxC;AAED,UAAM,YAAYC,QAAA,QAAQ,EAAE,GAAG,KAAM,CAAA;AAErC,UAAM,cAAcC,UAAAA,UAAU;AAAA,MAC5B,MAAM;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,MACf;AAAA,IAAA,CACD;AAED,UAAM,cAAcC,UAAAA,UAAU;AAAA,MAC5B,GAAG;AAAA,MACH,QAAQ,YAAY;AAAA,MACpB,MAAM;AAAA,IAAA,CACP;AAED,UAAM,eAAeC,WAAAA,WAAW;AAAA,MAC9B,GAAG;AAAA,MACH,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,IAAA,CACD;AAED,UAAM,SAASC,UAAAA,UAAU;AAAA,MACvB,QAAQ;AAAA,QACN,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,MACA;AAAA,IAAA,CACD;AAED,WACGC,2BAAAA,IAAAC,UAAAA,aAAA,EAAY,KAAU,QAAgB,OAAc,OAAgB,CAAA;AAAA,EAEzE;AACF;;"}
@@ -30,41 +30,47 @@ function _interopNamespace(e) {
30
30
  const echarts__namespace = /* @__PURE__ */ _interopNamespace(echarts);
31
31
  const ReactECharts__default = /* @__PURE__ */ _interopDefault(ReactECharts);
32
32
  echarts__namespace.use([renderers.CanvasRenderer, components.AriaComponent]);
33
- const HvBaseChart = react.forwardRef((props, ref) => {
34
- const {
35
- option,
36
- width,
37
- height
38
- } = props;
39
- const {
40
- theme
41
- } = useVizTheme.useVizTheme();
42
- const currentTheme = react.useRef(theme);
43
- const chartRef = react.useRef(null);
44
- const isMounted = react.useRef(false);
45
- const forkedRef = material.useForkRef(ref, chartRef);
46
- const [initialOption, setInitialOption] = react.useState(option);
47
- react.useEffect(() => {
48
- if (!isMounted.current) {
49
- isMounted.current = true;
50
- return;
51
- }
52
- if (theme !== currentTheme.current) {
53
- setInitialOption(option);
54
- currentTheme.current = theme;
55
- return;
56
- }
57
- const instance = chartRef.current?.getEchartsInstance();
58
- if (!instance)
59
- return;
60
- instance.setOption(option, {
61
- replaceMerge: ["xAxis", "yAxis", "series", "dataset"]
62
- });
63
- }, [theme, option]);
64
- return /* @__PURE__ */ jsxRuntime.jsx(ReactECharts__default.default, { ref: forkedRef, echarts: echarts__namespace, option: initialOption, theme, notMerge: true, style: {
65
- width: width || "100%",
66
- height: height || "100%"
67
- } });
68
- });
33
+ const HvBaseChart = react.forwardRef(
34
+ (props, ref) => {
35
+ const { option, width, height } = props;
36
+ const { theme } = useVizTheme.useVizTheme();
37
+ const currentTheme = react.useRef(theme);
38
+ const chartRef = react.useRef(null);
39
+ const isMounted = react.useRef(false);
40
+ const forkedRef = material.useForkRef(ref, chartRef);
41
+ const [initialOption, setInitialOption] = react.useState(option);
42
+ react.useEffect(() => {
43
+ if (!isMounted.current) {
44
+ isMounted.current = true;
45
+ return;
46
+ }
47
+ if (theme !== currentTheme.current) {
48
+ setInitialOption(option);
49
+ currentTheme.current = theme;
50
+ return;
51
+ }
52
+ const instance = chartRef.current?.getEchartsInstance();
53
+ if (!instance)
54
+ return;
55
+ instance.setOption(option, {
56
+ replaceMerge: ["xAxis", "yAxis", "series", "dataset"]
57
+ });
58
+ }, [theme, option]);
59
+ return /* @__PURE__ */ jsxRuntime.jsx(
60
+ ReactECharts__default.default,
61
+ {
62
+ ref: forkedRef,
63
+ echarts: echarts__namespace,
64
+ option: initialOption,
65
+ theme,
66
+ notMerge: true,
67
+ style: {
68
+ width: width || "100%",
69
+ height: height || "100%"
70
+ }
71
+ }
72
+ );
73
+ }
74
+ );
69
75
  exports.HvBaseChart = HvBaseChart;
70
76
  //# sourceMappingURL=BaseChart.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseChart.cjs","sources":["../../../../src/components/BaseChart/BaseChart.tsx"],"sourcesContent":["import { forwardRef, useEffect, useRef, useState } from \"react\";\n\nimport { useForkRef } from \"@mui/material\";\n\nimport { AriaComponent } from \"echarts/components\";\nimport { CanvasRenderer } from \"echarts/renderers\";\nimport * as echarts from \"echarts/core\";\nimport ReactECharts from \"echarts-for-react/lib/core\";\n\nimport { useVizTheme } from \"@viz/hooks\";\nimport { HvEChartsOption } from \"@viz/types/common\";\n\n// Register chart components\necharts.use([CanvasRenderer, AriaComponent]);\n\nexport interface HvBaseChartProps {\n /** ECharts option. */\n option: HvEChartsOption;\n /** Charts width. */\n width?: echarts.ResizeOpts[\"width\"];\n /** Charts height. */\n height?: echarts.ResizeOpts[\"height\"];\n}\n\n/**\n * Base chart.\n */\nexport const HvBaseChart = forwardRef<ReactECharts, HvBaseChartProps>(\n (props, ref) => {\n const { option, width, height } = props;\n\n const { theme } = useVizTheme();\n\n const currentTheme = useRef<string | undefined>(theme);\n const chartRef = useRef<ReactECharts>(null);\n const isMounted = useRef<boolean>(false);\n\n const forkedRef = useForkRef<ReactECharts>(ref, chartRef);\n\n const [initialOption, setInitialOption] = useState<HvEChartsOption>(option);\n\n useEffect(() => {\n if (!isMounted.current) {\n isMounted.current = true;\n return;\n }\n\n // when the theme changes echarts destroys the chart and mounts it again\n // thus we need to reset the initial option\n if (theme !== currentTheme.current) {\n setInitialOption(option);\n currentTheme.current = theme;\n return;\n }\n\n const instance = chartRef.current?.getEchartsInstance();\n\n if (!instance) return;\n\n instance.setOption(option, {\n replaceMerge: [\"xAxis\", \"yAxis\", \"series\", \"dataset\"],\n });\n }, [theme, option]);\n\n return (\n <ReactECharts\n ref={forkedRef}\n echarts={echarts}\n option={initialOption}\n theme={theme}\n notMerge\n style={{\n width: width || \"100%\",\n height: height || \"100%\",\n }}\n />\n );\n }\n);\n"],"names":["echarts","use","CanvasRenderer","AriaComponent","HvBaseChart","forwardRef","props","ref","option","width","height","theme","useVizTheme","currentTheme","useRef","chartRef","isMounted","forkedRef","useForkRef","initialOption","setInitialOption","useState","useEffect","current","instance","getEchartsInstance","setOption","replaceMerge","jsx","ReactECharts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaAA,mBAAQC,IAAI,CAACC,0BAAgBC,WAAAA,aAAa,CAAC;AAcpC,MAAMC,cAAcC,MAAAA,WACzB,CAACC,OAAOC,QAAQ;AACR,QAAA;AAAA,IAAEC;AAAAA,IAAQC;AAAAA,IAAOC;AAAAA,EAAWJ,IAAAA;AAE5B,QAAA;AAAA,IAAEK;AAAAA,MAAUC,YAAY,YAAA;AAExBC,QAAAA,eAAeC,aAA2BH,KAAK;AAC/CI,QAAAA,WAAWD,aAAqB,IAAI;AACpCE,QAAAA,YAAYF,aAAgB,KAAK;AAEjCG,QAAAA,YAAYC,SAAAA,WAAyBX,KAAKQ,QAAQ;AAExD,QAAM,CAACI,eAAeC,gBAAgB,IAAIC,eAA0Bb,MAAM;AAE1Ec,QAAAA,UAAU,MAAM;AACV,QAAA,CAACN,UAAUO,SAAS;AACtBP,gBAAUO,UAAU;AACpB;AAAA,IACF;AAIIZ,QAAAA,UAAUE,aAAaU,SAAS;AAClCH,uBAAiBZ,MAAM;AACvBK,mBAAaU,UAAUZ;AACvB;AAAA,IACF;AAEMa,UAAAA,WAAWT,SAASQ,SAASE,mBAAmB;AAEtD,QAAI,CAACD;AAAU;AAEfA,aAASE,UAAUlB,QAAQ;AAAA,MACzBmB,cAAc,CAAC,SAAS,SAAS,UAAU,SAAS;AAAA,IAAA,CACrD;AAAA,EAAA,GACA,CAAChB,OAAOH,MAAM,CAAC;AAGhB,SAAAoB,+BAACC,sBAAAA,SACC,EAAA,KAAKZ,WACLjB,SAAAA,oBACA,QAAQmB,eACR,OACA,UAAQ,MACR,OAAO;AAAA,IACLV,OAAOA,SAAS;AAAA,IAChBC,QAAQA,UAAU;AAAA,EAEpB,EAAA,CAAA;AAEN,CACF;;"}
1
+ {"version":3,"file":"BaseChart.cjs","sources":["../../../../src/components/BaseChart/BaseChart.tsx"],"sourcesContent":["import { forwardRef, useEffect, useRef, useState } from \"react\";\n\nimport { useForkRef } from \"@mui/material\";\n\nimport { AriaComponent } from \"echarts/components\";\nimport { CanvasRenderer } from \"echarts/renderers\";\nimport * as echarts from \"echarts/core\";\nimport ReactECharts from \"echarts-for-react/lib/core\";\n\nimport { useVizTheme } from \"@viz/hooks\";\nimport { HvEChartsOption } from \"@viz/types/common\";\n\n// Register chart components\necharts.use([CanvasRenderer, AriaComponent]);\n\nexport interface HvBaseChartProps {\n /** ECharts option. */\n option: HvEChartsOption;\n /** Charts width. */\n width?: echarts.ResizeOpts[\"width\"];\n /** Charts height. */\n height?: echarts.ResizeOpts[\"height\"];\n}\n\n/**\n * Base chart.\n */\nexport const HvBaseChart = forwardRef<ReactECharts, HvBaseChartProps>(\n (props, ref) => {\n const { option, width, height } = props;\n\n const { theme } = useVizTheme();\n\n const currentTheme = useRef<string | undefined>(theme);\n const chartRef = useRef<ReactECharts>(null);\n const isMounted = useRef<boolean>(false);\n\n const forkedRef = useForkRef<ReactECharts>(ref, chartRef);\n\n const [initialOption, setInitialOption] = useState<HvEChartsOption>(option);\n\n useEffect(() => {\n if (!isMounted.current) {\n isMounted.current = true;\n return;\n }\n\n // when the theme changes echarts destroys the chart and mounts it again\n // thus we need to reset the initial option\n if (theme !== currentTheme.current) {\n setInitialOption(option);\n currentTheme.current = theme;\n return;\n }\n\n const instance = chartRef.current?.getEchartsInstance();\n\n if (!instance) return;\n\n instance.setOption(option, {\n replaceMerge: [\"xAxis\", \"yAxis\", \"series\", \"dataset\"],\n });\n }, [theme, option]);\n\n return (\n <ReactECharts\n ref={forkedRef}\n echarts={echarts}\n option={initialOption}\n theme={theme}\n notMerge\n style={{\n width: width || \"100%\",\n height: height || \"100%\",\n }}\n />\n );\n }\n);\n"],"names":["echarts","CanvasRenderer","AriaComponent","forwardRef","useVizTheme","useRef","useForkRef","useState","useEffect","jsx","ReactECharts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaAA,mBAAQ,IAAI,CAACC,0BAAgBC,WAAAA,aAAa,CAAC;AAcpC,MAAM,cAAcC,MAAA;AAAA,EACzB,CAAC,OAAO,QAAQ;AACd,UAAM,EAAE,QAAQ,OAAO,OAAA,IAAW;AAE5B,UAAA,EAAE,UAAUC,YAAAA;AAEZ,UAAA,eAAeC,aAA2B,KAAK;AAC/C,UAAA,WAAWA,aAAqB,IAAI;AACpC,UAAA,YAAYA,aAAgB,KAAK;AAEjC,UAAA,YAAYC,SAAAA,WAAyB,KAAK,QAAQ;AAExD,UAAM,CAAC,eAAe,gBAAgB,IAAIC,eAA0B,MAAM;AAE1EC,UAAAA,UAAU,MAAM;AACV,UAAA,CAAC,UAAU,SAAS;AACtB,kBAAU,UAAU;AACpB;AAAA,MACF;AAII,UAAA,UAAU,aAAa,SAAS;AAClC,yBAAiB,MAAM;AACvB,qBAAa,UAAU;AACvB;AAAA,MACF;AAEM,YAAA,WAAW,SAAS,SAAS,mBAAmB;AAEtD,UAAI,CAAC;AAAU;AAEf,eAAS,UAAU,QAAQ;AAAA,QACzB,cAAc,CAAC,SAAS,SAAS,UAAU,SAAS;AAAA,MAAA,CACrD;AAAA,IAAA,GACA,CAAC,OAAO,MAAM,CAAC;AAGhB,WAAAC,2BAAA;AAAA,MAACC,sBAAA;AAAA,MAAA;AAAA,QACC,KAAK;AAAA,QAAA,SACLV;AAAAA,QACA,QAAQ;AAAA,QACR;AAAA,QACA,UAAQ;AAAA,QACR,OAAO;AAAA,UACL,OAAO,SAAS;AAAA,UAChB,QAAQ,UAAU;AAAA,QACpB;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;;"}
@@ -35,7 +35,12 @@ function _interopNamespace(e) {
35
35
  return Object.freeze(n);
36
36
  }
37
37
  const echarts__namespace = /* @__PURE__ */ _interopNamespace(echarts);
38
- echarts__namespace.use([charts.HeatmapChart, components.VisualMapComponent, components.GridComponent, components.TooltipComponent]);
38
+ echarts__namespace.use([
39
+ charts.HeatmapChart,
40
+ components.VisualMapComponent,
41
+ components.GridComponent,
42
+ components.TooltipComponent
43
+ ]);
39
44
  const HvConfusionMatrix = react.forwardRef((props, ref) => {
40
45
  const {
41
46
  legend,
@@ -57,9 +62,7 @@ const HvConfusionMatrix = react.forwardRef((props, ref) => {
57
62
  classes: classesProp,
58
63
  onOptionChange
59
64
  } = props;
60
- const {
61
- classes
62
- } = ConfusionMatrix_styles.useClasses(classesProp);
65
+ const { classes } = ConfusionMatrix_styles.useClasses(classesProp);
63
66
  const groupByKey = getGroupKey.getGroupKey(groupBy);
64
67
  const chartData = useData.useData({
65
68
  data: dataProp,
@@ -100,18 +103,20 @@ const HvConfusionMatrix = react.forwardRef((props, ref) => {
100
103
  ...tooltip
101
104
  });
102
105
  const chartYAxis = useYAxis.useYAxis({
103
- axes: [{
104
- type: "categorical",
105
- name: "True Label",
106
- position: "left",
107
- ...yAxis,
108
- nameProps: {
109
- location: "center",
110
- padding: yAxis?.nameProps?.location == null || yAxis?.nameProps?.location === "center" ? yAxis?.position === "right" ? [50, 0, 0, 0] : [0, 0, 50, 0] : void 0,
111
- ...yAxis?.nameProps
112
- },
113
- data: chartData.columnNames().filter((p) => p !== groupByKey).reverse()
114
- }]
106
+ axes: [
107
+ {
108
+ type: "categorical",
109
+ name: "True Label",
110
+ position: "left",
111
+ ...yAxis,
112
+ nameProps: {
113
+ location: "center",
114
+ padding: yAxis?.nameProps?.location == null || yAxis?.nameProps?.location === "center" ? yAxis?.position === "right" ? [50, 0, 0, 0] : [0, 0, 50, 0] : void 0,
115
+ ...yAxis?.nameProps
116
+ },
117
+ data: chartData.columnNames().filter((p) => p !== groupByKey).reverse()
118
+ }
119
+ ]
115
120
  });
116
121
  const chartXAxis = useXAxis.useXAxis({
117
122
  name: "Predicted Value",
@@ -152,7 +157,13 @@ const HvConfusionMatrix = react.forwardRef((props, ref) => {
152
157
  // Thus, we need to update the height to make sure the chart is not cut out
153
158
  height: height ?? chartGridLayout.size.height + chartGridLayout.padding.bottom + chartGridLayout.padding.top
154
159
  };
155
- }, [chartGridLayout.padding.bottom, chartGridLayout.padding.top, chartGridLayout.size.height, height, width]);
160
+ }, [
161
+ chartGridLayout.padding.bottom,
162
+ chartGridLayout.padding.top,
163
+ chartGridLayout.size.height,
164
+ height,
165
+ width
166
+ ]);
156
167
  const option = useOption.useOption({
157
168
  option: {
158
169
  ...chartVisualMap,
@@ -1 +1 @@
1
- {"version":3,"file":"ConfusionMatrix.cjs","sources":["../../../../src/components/ConfusionMatrix/ConfusionMatrix.tsx"],"sourcesContent":["import { forwardRef, useMemo } from \"react\";\n\nimport * as echarts from \"echarts/core\";\nimport { HeatmapChart } from \"echarts/charts\";\nimport {\n VisualMapComponent,\n GridComponent,\n TooltipComponent,\n} from \"echarts/components\";\nimport ReactECharts from \"echarts-for-react/lib/core\";\n\nimport { Arrayable, ExtractNames } from \"@hitachivantara/uikit-react-core\";\n\nimport {\n HvVisualMapHookProps,\n useData,\n useGrid,\n useOption,\n useTooltip,\n useVisualMap,\n useXAxis,\n useYAxis,\n} from \"@viz/hooks\";\nimport { getGroupKey } from \"@viz/utils\";\n\nimport { HvBaseChart } from \"../BaseChart\";\nimport { useClasses } from \"./ConfusionMatrix.styles\";\nimport {\n HvChartCommonProps,\n HvChartXAxis,\n HvChartYAxis,\n} from \"../../types/common\";\nimport { HvChartTooltip } from \"../../types/tooltip\";\nimport { HvConfusionMatrixMeasure } from \"../../types/measures\";\nimport { useColorScale, useGridLayout, useSeries } from \"./utils\";\nimport {\n HvConfusionMatrixFormat,\n HvConfusionMatrixColorScale,\n HvConfusionMatrixValuesProps,\n} from \"./types\";\n\n// Register chart components\necharts.use([\n HeatmapChart,\n VisualMapComponent,\n GridComponent,\n TooltipComponent,\n]);\n\nexport type HvConfusionMatrixClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvConfusionMatrixProps\n extends Omit<HvChartCommonProps, \"tooltip\"> {\n /** Column to measure. */\n measure: HvConfusionMatrixMeasure;\n /** Columns to use to split the measure. */\n splitBy?: Arrayable<string>;\n /**\n * Column to use for the delta confusion matrix.\n *\n * It can be set to `true` in case the `measure` already has the calculations for the delta confusion matrix.\n */\n delta?: boolean | string;\n /** Options for the xAxis, i.e. the horizontal axis. */\n xAxis?: HvChartXAxis;\n /** Options for the yAxis, i.e. the vertical axis. */\n yAxis?: HvChartYAxis;\n /** Tooltip options. */\n tooltip?: Omit<HvChartTooltip, \"type\">;\n /** Format of the confusion matrix. Defaults to `square`. */\n format?: HvConfusionMatrixFormat;\n /** Properties to customize the prediction values. */\n valuesProps?: HvConfusionMatrixValuesProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvConfusionMatrixClasses;\n /**\n * Color scale of the confusion matrix.\n *\n * If an array of two strings is provided, the first and second values are the lower and upper ends of the scale, respectively.\n * An array of objects can also be used to create a custom scale.\n * If `delta` is not provided, a default color scale is used when `colorScale` is not defined: `[base-light, cat3]`.\n */\n colorScale?: [string, string] | HvConfusionMatrixColorScale[];\n}\n\n/**\n * Confusion Matrix is a table displaying the performance of a predictive model.\n * Typically the columns show the predicted class and the rows the expected class.\n * The main diagonal counts the positive matches while the cells outside it count the mismatches between predicted and expected.\n */\nexport const HvConfusionMatrix = forwardRef<\n ReactECharts,\n HvConfusionMatrixProps\n>((props, ref) => {\n const {\n legend,\n groupBy,\n measure,\n sortBy,\n splitBy,\n grid,\n data: dataProp,\n tooltip,\n xAxis,\n yAxis,\n colorScale: colorScaleProp,\n delta,\n valuesProps,\n width,\n height,\n format = \"square\",\n classes: classesProp,\n onOptionChange,\n } = props;\n\n const { classes } = useClasses(classesProp);\n\n const groupByKey = getGroupKey(groupBy);\n\n const chartData = useData({\n data: dataProp,\n groupBy,\n measures: [measure],\n sortBy: sortBy ?? groupBy, // automatically orders x axis to create the confusion matrix\n splitBy,\n delta: typeof delta === \"string\" ? delta : undefined,\n });\n\n const colorScale = useColorScale({\n delta: !!delta,\n data: chartData,\n custom: colorScaleProp,\n filterKey: groupByKey,\n });\n\n const chartVisualMap = useVisualMap({\n show: colorScale?.pieces != null,\n type: colorScale?.pieces != null ? \"piecewise\" : \"continuous\",\n ...(colorScale as Pick<\n HvVisualMapHookProps,\n \"max\" | \"min\" | \"colorScale\" | \"pieces\"\n >),\n ...legend,\n });\n\n const chartTooltip = useTooltip({\n component: (params) => {\n const value = params?.series?.[0].value;\n const fmtValue =\n typeof measure !== \"string\" && measure.valueFormatter\n ? measure.valueFormatter(value)\n : tooltip?.valueFormatter\n ? tooltip?.valueFormatter(value)\n : value;\n const ftmTitle = tooltip?.titleFormatter\n ? tooltip.titleFormatter(params?.title)\n : params?.title;\n\n const content = `${ftmTitle} - ${params?.series?.[0].name}: ${fmtValue}`;\n\n return `\n <div class=\"${classes.tooltipRoot}\">\n <div class=\"${classes.tooltipContainer}\">\n <div>\n <p class=\"${classes.tooltipText}\">${content}</p>\n </div>\n </div>\n </div>`;\n },\n ...tooltip,\n });\n\n const chartYAxis = useYAxis({\n axes: [\n {\n type: \"categorical\",\n name: \"True Label\",\n position: \"left\",\n ...yAxis,\n nameProps: {\n location: \"center\",\n padding:\n yAxis?.nameProps?.location == null ||\n yAxis?.nameProps?.location === \"center\"\n ? yAxis?.position === \"right\"\n ? [50, 0, 0, 0]\n : [0, 0, 50, 0]\n : undefined,\n ...yAxis?.nameProps,\n },\n data: chartData\n .columnNames()\n .filter((p) => p !== groupByKey)\n .reverse(),\n },\n ],\n });\n\n const chartXAxis = useXAxis({\n name: \"Predicted Value\",\n position: \"top\",\n ...xAxis,\n nameProps: {\n location: \"center\",\n padding:\n xAxis?.nameProps?.location == null ||\n xAxis?.nameProps?.location === \"center\"\n ? xAxis?.position === \"bottom\"\n ? [30, 0, 0, 0]\n : [0, 0, 30, 0]\n : undefined,\n ...xAxis?.nameProps,\n },\n data: chartData.array(groupByKey),\n });\n\n const chartSeries = useSeries({\n data: chartData,\n filterKey: groupByKey,\n valuesProps,\n delta: !!(delta && colorScale == null),\n });\n\n const chartGridLayout = useGridLayout({\n data: chartData,\n format,\n filterKey: groupByKey,\n visualMapVisible: chartVisualMap.visualMap.show,\n visualMapYPosition: chartVisualMap.visualMap.top,\n xAxisPosition: chartXAxis.xAxis.position,\n });\n\n const chartGrid = useGrid({\n // If sizes are provided, the grid size should automatically adapt to the values provided\n width: width != null ? undefined : chartGridLayout.size.width,\n height: height != null ? undefined : chartGridLayout.size.height,\n ...chartGridLayout.padding,\n ...grid,\n });\n\n const size = useMemo(() => {\n return {\n width,\n // Echarts has a problem were the height is always set to 300px\n // Thus, we need to update the height to make sure the chart is not cut out\n height:\n height ??\n chartGridLayout.size.height +\n chartGridLayout.padding.bottom +\n chartGridLayout.padding.top,\n };\n }, [\n chartGridLayout.padding.bottom,\n chartGridLayout.padding.top,\n chartGridLayout.size.height,\n height,\n width,\n ]);\n\n const option = useOption({\n option: {\n ...chartVisualMap,\n ...chartTooltip,\n ...chartGrid,\n ...chartXAxis,\n ...chartYAxis,\n ...chartSeries,\n },\n onOptionChange,\n });\n\n return <HvBaseChart ref={ref} option={option} {...size} />;\n});\n"],"names":["echarts","use","HeatmapChart","VisualMapComponent","GridComponent","TooltipComponent","HvConfusionMatrix","forwardRef","props","ref","legend","groupBy","measure","sortBy","splitBy","grid","data","dataProp","tooltip","xAxis","yAxis","colorScale","colorScaleProp","delta","valuesProps","width","height","format","classes","classesProp","onOptionChange","useClasses","groupByKey","getGroupKey","chartData","useData","measures","undefined","useColorScale","custom","filterKey","chartVisualMap","useVisualMap","show","pieces","type","chartTooltip","useTooltip","component","params","value","series","fmtValue","valueFormatter","ftmTitle","titleFormatter","title","content","name","tooltipRoot","tooltipContainer","tooltipText","chartYAxis","useYAxis","axes","position","nameProps","location","padding","columnNames","filter","p","reverse","chartXAxis","useXAxis","array","chartSeries","useSeries","chartGridLayout","useGridLayout","visualMapVisible","visualMap","visualMapYPosition","top","xAxisPosition","chartGrid","useGrid","size","useMemo","bottom","option","useOption","jsx","HvBaseChart"],"mappings":"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"}
1
+ {"version":3,"file":"ConfusionMatrix.cjs","sources":["../../../../src/components/ConfusionMatrix/ConfusionMatrix.tsx"],"sourcesContent":["import { forwardRef, useMemo } from \"react\";\n\nimport * as echarts from \"echarts/core\";\nimport { HeatmapChart } from \"echarts/charts\";\nimport {\n VisualMapComponent,\n GridComponent,\n TooltipComponent,\n} from \"echarts/components\";\nimport ReactECharts from \"echarts-for-react/lib/core\";\n\nimport { Arrayable, ExtractNames } from \"@hitachivantara/uikit-react-core\";\n\nimport {\n HvVisualMapHookProps,\n useData,\n useGrid,\n useOption,\n useTooltip,\n useVisualMap,\n useXAxis,\n useYAxis,\n} from \"@viz/hooks\";\nimport { getGroupKey } from \"@viz/utils\";\n\nimport { HvBaseChart } from \"../BaseChart\";\nimport { useClasses } from \"./ConfusionMatrix.styles\";\nimport {\n HvChartCommonProps,\n HvChartXAxis,\n HvChartYAxis,\n} from \"../../types/common\";\nimport { HvChartTooltip } from \"../../types/tooltip\";\nimport { HvConfusionMatrixMeasure } from \"../../types/measures\";\nimport { useColorScale, useGridLayout, useSeries } from \"./utils\";\nimport {\n HvConfusionMatrixFormat,\n HvConfusionMatrixColorScale,\n HvConfusionMatrixValuesProps,\n} from \"./types\";\n\n// Register chart components\necharts.use([\n HeatmapChart,\n VisualMapComponent,\n GridComponent,\n TooltipComponent,\n]);\n\nexport type HvConfusionMatrixClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvConfusionMatrixProps\n extends Omit<HvChartCommonProps, \"tooltip\"> {\n /** Column to measure. */\n measure: HvConfusionMatrixMeasure;\n /** Columns to use to split the measure. */\n splitBy?: Arrayable<string>;\n /**\n * Column to use for the delta confusion matrix.\n *\n * It can be set to `true` in case the `measure` already has the calculations for the delta confusion matrix.\n */\n delta?: boolean | string;\n /** Options for the xAxis, i.e. the horizontal axis. */\n xAxis?: HvChartXAxis;\n /** Options for the yAxis, i.e. the vertical axis. */\n yAxis?: HvChartYAxis;\n /** Tooltip options. */\n tooltip?: Omit<HvChartTooltip, \"type\">;\n /** Format of the confusion matrix. Defaults to `square`. */\n format?: HvConfusionMatrixFormat;\n /** Properties to customize the prediction values. */\n valuesProps?: HvConfusionMatrixValuesProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvConfusionMatrixClasses;\n /**\n * Color scale of the confusion matrix.\n *\n * If an array of two strings is provided, the first and second values are the lower and upper ends of the scale, respectively.\n * An array of objects can also be used to create a custom scale.\n * If `delta` is not provided, a default color scale is used when `colorScale` is not defined: `[base-light, cat3]`.\n */\n colorScale?: [string, string] | HvConfusionMatrixColorScale[];\n}\n\n/**\n * Confusion Matrix is a table displaying the performance of a predictive model.\n * Typically the columns show the predicted class and the rows the expected class.\n * The main diagonal counts the positive matches while the cells outside it count the mismatches between predicted and expected.\n */\nexport const HvConfusionMatrix = forwardRef<\n ReactECharts,\n HvConfusionMatrixProps\n>((props, ref) => {\n const {\n legend,\n groupBy,\n measure,\n sortBy,\n splitBy,\n grid,\n data: dataProp,\n tooltip,\n xAxis,\n yAxis,\n colorScale: colorScaleProp,\n delta,\n valuesProps,\n width,\n height,\n format = \"square\",\n classes: classesProp,\n onOptionChange,\n } = props;\n\n const { classes } = useClasses(classesProp);\n\n const groupByKey = getGroupKey(groupBy);\n\n const chartData = useData({\n data: dataProp,\n groupBy,\n measures: [measure],\n sortBy: sortBy ?? groupBy, // automatically orders x axis to create the confusion matrix\n splitBy,\n delta: typeof delta === \"string\" ? delta : undefined,\n });\n\n const colorScale = useColorScale({\n delta: !!delta,\n data: chartData,\n custom: colorScaleProp,\n filterKey: groupByKey,\n });\n\n const chartVisualMap = useVisualMap({\n show: colorScale?.pieces != null,\n type: colorScale?.pieces != null ? \"piecewise\" : \"continuous\",\n ...(colorScale as Pick<\n HvVisualMapHookProps,\n \"max\" | \"min\" | \"colorScale\" | \"pieces\"\n >),\n ...legend,\n });\n\n const chartTooltip = useTooltip({\n component: (params) => {\n const value = params?.series?.[0].value;\n const fmtValue =\n typeof measure !== \"string\" && measure.valueFormatter\n ? measure.valueFormatter(value)\n : tooltip?.valueFormatter\n ? tooltip?.valueFormatter(value)\n : value;\n const ftmTitle = tooltip?.titleFormatter\n ? tooltip.titleFormatter(params?.title)\n : params?.title;\n\n const content = `${ftmTitle} - ${params?.series?.[0].name}: ${fmtValue}`;\n\n return `\n <div class=\"${classes.tooltipRoot}\">\n <div class=\"${classes.tooltipContainer}\">\n <div>\n <p class=\"${classes.tooltipText}\">${content}</p>\n </div>\n </div>\n </div>`;\n },\n ...tooltip,\n });\n\n const chartYAxis = useYAxis({\n axes: [\n {\n type: \"categorical\",\n name: \"True Label\",\n position: \"left\",\n ...yAxis,\n nameProps: {\n location: \"center\",\n padding:\n yAxis?.nameProps?.location == null ||\n yAxis?.nameProps?.location === \"center\"\n ? yAxis?.position === \"right\"\n ? [50, 0, 0, 0]\n : [0, 0, 50, 0]\n : undefined,\n ...yAxis?.nameProps,\n },\n data: chartData\n .columnNames()\n .filter((p) => p !== groupByKey)\n .reverse(),\n },\n ],\n });\n\n const chartXAxis = useXAxis({\n name: \"Predicted Value\",\n position: \"top\",\n ...xAxis,\n nameProps: {\n location: \"center\",\n padding:\n xAxis?.nameProps?.location == null ||\n xAxis?.nameProps?.location === \"center\"\n ? xAxis?.position === \"bottom\"\n ? [30, 0, 0, 0]\n : [0, 0, 30, 0]\n : undefined,\n ...xAxis?.nameProps,\n },\n data: chartData.array(groupByKey),\n });\n\n const chartSeries = useSeries({\n data: chartData,\n filterKey: groupByKey,\n valuesProps,\n delta: !!(delta && colorScale == null),\n });\n\n const chartGridLayout = useGridLayout({\n data: chartData,\n format,\n filterKey: groupByKey,\n visualMapVisible: chartVisualMap.visualMap.show,\n visualMapYPosition: chartVisualMap.visualMap.top,\n xAxisPosition: chartXAxis.xAxis.position,\n });\n\n const chartGrid = useGrid({\n // If sizes are provided, the grid size should automatically adapt to the values provided\n width: width != null ? undefined : chartGridLayout.size.width,\n height: height != null ? undefined : chartGridLayout.size.height,\n ...chartGridLayout.padding,\n ...grid,\n });\n\n const size = useMemo(() => {\n return {\n width,\n // Echarts has a problem were the height is always set to 300px\n // Thus, we need to update the height to make sure the chart is not cut out\n height:\n height ??\n chartGridLayout.size.height +\n chartGridLayout.padding.bottom +\n chartGridLayout.padding.top,\n };\n }, [\n chartGridLayout.padding.bottom,\n chartGridLayout.padding.top,\n chartGridLayout.size.height,\n height,\n width,\n ]);\n\n const option = useOption({\n option: {\n ...chartVisualMap,\n ...chartTooltip,\n ...chartGrid,\n ...chartXAxis,\n ...chartYAxis,\n ...chartSeries,\n },\n onOptionChange,\n });\n\n return <HvBaseChart ref={ref} option={option} {...size} />;\n});\n"],"names":["echarts","HeatmapChart","VisualMapComponent","GridComponent","TooltipComponent","forwardRef","useClasses","getGroupKey","useData","useColorScale","useVisualMap","useTooltip","useYAxis","useXAxis","useSeries","useGridLayout","useGrid","useMemo","useOption","jsx","HvBaseChart"],"mappings":"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"}
@@ -1,29 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const uikitReactCore = require("@hitachivantara/uikit-react-core");
4
- const {
5
- useClasses,
6
- staticClasses
7
- } = uikitReactCore.createClasses("HvConfusionMatrix", {
8
- tooltipRoot: {
9
- backgroundColor: uikitReactCore.theme.colors.atmo1,
10
- width: "fit-content",
11
- minWidth: 150,
12
- boxShadow: uikitReactCore.theme.colors.shadow,
13
- zIndex: uikitReactCore.theme.zIndices.sticky
14
- },
15
- tooltipContainer: {
16
- padding: uikitReactCore.theme.spacing("15px", "sm"),
17
- display: "flex",
18
- flexDirection: "column"
19
- },
20
- tooltipText: {
21
- fontFamily: uikitReactCore.theme.fontFamily.body,
22
- fontWeight: uikitReactCore.theme.fontWeights.normal,
23
- fontSize: uikitReactCore.theme.fontSizes.sm,
24
- color: uikitReactCore.theme.colors.secondary
4
+ const { useClasses, staticClasses } = uikitReactCore.createClasses(
5
+ "HvConfusionMatrix",
6
+ {
7
+ tooltipRoot: {
8
+ backgroundColor: uikitReactCore.theme.colors.atmo1,
9
+ width: "fit-content",
10
+ minWidth: 150,
11
+ boxShadow: uikitReactCore.theme.colors.shadow,
12
+ zIndex: uikitReactCore.theme.zIndices.sticky
13
+ },
14
+ tooltipContainer: {
15
+ padding: uikitReactCore.theme.spacing("15px", "sm"),
16
+ display: "flex",
17
+ flexDirection: "column"
18
+ },
19
+ tooltipText: {
20
+ fontFamily: uikitReactCore.theme.fontFamily.body,
21
+ fontWeight: uikitReactCore.theme.fontWeights.normal,
22
+ fontSize: uikitReactCore.theme.fontSizes.sm,
23
+ color: uikitReactCore.theme.colors.secondary
24
+ }
25
25
  }
26
- });
26
+ );
27
27
  exports.staticClasses = staticClasses;
28
28
  exports.useClasses = useClasses;
29
29
  //# sourceMappingURL=ConfusionMatrix.styles.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfusionMatrix.styles.cjs","sources":["../../../../src/components/ConfusionMatrix/ConfusionMatrix.styles.tsx"],"sourcesContent":["import { createClasses, theme } from \"@hitachivantara/uikit-react-core\";\n\nexport const { useClasses, staticClasses } = createClasses(\n \"HvConfusionMatrix\",\n {\n tooltipRoot: {\n backgroundColor: theme.colors.atmo1,\n width: \"fit-content\",\n minWidth: 150,\n boxShadow: theme.colors.shadow,\n zIndex: theme.zIndices.sticky,\n },\n tooltipContainer: {\n padding: theme.spacing(\"15px\", \"sm\"),\n display: \"flex\",\n flexDirection: \"column\",\n },\n tooltipText: {\n fontFamily: theme.fontFamily.body,\n fontWeight: theme.fontWeights.normal,\n fontSize: theme.fontSizes.sm,\n color: theme.colors.secondary,\n },\n }\n);\n"],"names":["useClasses","staticClasses","createClasses","tooltipRoot","backgroundColor","theme","colors","atmo1","width","minWidth","boxShadow","shadow","zIndex","zIndices","sticky","tooltipContainer","padding","spacing","display","flexDirection","tooltipText","fontFamily","body","fontWeight","fontWeights","normal","fontSize","fontSizes","sm","color","secondary"],"mappings":";;;AAEa,MAAA;AAAA,EAAEA;AAAAA,EAAYC;AAAc,IAAIC,eAAAA,cAC3C,qBACA;AAAA,EACEC,aAAa;AAAA,IACXC,iBAAiBC,eAAAA,MAAMC,OAAOC;AAAAA,IAC9BC,OAAO;AAAA,IACPC,UAAU;AAAA,IACVC,WAAWL,eAAAA,MAAMC,OAAOK;AAAAA,IACxBC,QAAQP,eAAAA,MAAMQ,SAASC;AAAAA,EACzB;AAAA,EACAC,kBAAkB;AAAA,IAChBC,SAASX,eAAAA,MAAMY,QAAQ,QAAQ,IAAI;AAAA,IACnCC,SAAS;AAAA,IACTC,eAAe;AAAA,EACjB;AAAA,EACAC,aAAa;AAAA,IACXC,YAAYhB,eAAAA,MAAMgB,WAAWC;AAAAA,IAC7BC,YAAYlB,eAAAA,MAAMmB,YAAYC;AAAAA,IAC9BC,UAAUrB,eAAAA,MAAMsB,UAAUC;AAAAA,IAC1BC,OAAOxB,eAAAA,MAAMC,OAAOwB;AAAAA,EACtB;AACF,CACF;;;"}
1
+ {"version":3,"file":"ConfusionMatrix.styles.cjs","sources":["../../../../src/components/ConfusionMatrix/ConfusionMatrix.styles.tsx"],"sourcesContent":["import { createClasses, theme } from \"@hitachivantara/uikit-react-core\";\n\nexport const { useClasses, staticClasses } = createClasses(\n \"HvConfusionMatrix\",\n {\n tooltipRoot: {\n backgroundColor: theme.colors.atmo1,\n width: \"fit-content\",\n minWidth: 150,\n boxShadow: theme.colors.shadow,\n zIndex: theme.zIndices.sticky,\n },\n tooltipContainer: {\n padding: theme.spacing(\"15px\", \"sm\"),\n display: \"flex\",\n flexDirection: \"column\",\n },\n tooltipText: {\n fontFamily: theme.fontFamily.body,\n fontWeight: theme.fontWeights.normal,\n fontSize: theme.fontSizes.sm,\n color: theme.colors.secondary,\n },\n }\n);\n"],"names":["createClasses","theme"],"mappings":";;;AAEa,MAAA,EAAE,YAAY,cAAA,IAAkBA,eAAA;AAAA,EAC3C;AAAA,EACA;AAAA,IACE,aAAa;AAAA,MACX,iBAAiBC,eAAAA,MAAM,OAAO;AAAA,MAC9B,OAAO;AAAA,MACP,UAAU;AAAA,MACV,WAAWA,eAAAA,MAAM,OAAO;AAAA,MACxB,QAAQA,eAAAA,MAAM,SAAS;AAAA,IACzB;AAAA,IACA,kBAAkB;AAAA,MAChB,SAASA,eAAA,MAAM,QAAQ,QAAQ,IAAI;AAAA,MACnC,SAAS;AAAA,MACT,eAAe;AAAA,IACjB;AAAA,IACA,aAAa;AAAA,MACX,YAAYA,eAAAA,MAAM,WAAW;AAAA,MAC7B,YAAYA,eAAAA,MAAM,YAAY;AAAA,MAC9B,UAAUA,eAAAA,MAAM,UAAU;AAAA,MAC1B,OAAOA,eAAAA,MAAM,OAAO;AAAA,IACtB;AAAA,EACF;AACF;;;"}
@@ -8,22 +8,23 @@ const useColorScale = ({
8
8
  custom,
9
9
  filterKey
10
10
  }) => {
11
- const {
12
- colors
13
- } = uikitReactCore.useTheme();
11
+ const { colors } = uikitReactCore.useTheme();
14
12
  const colorScale = react.useMemo(() => {
15
13
  if (custom == null && delta) {
16
14
  return;
17
15
  }
18
16
  if (custom && typeof custom[0] === "object") {
19
17
  return {
20
- pieces: custom.reduce((acc, curr) => {
21
- acc.push({
22
- ...curr,
23
- color: colors?.[curr.color] || curr.color
24
- });
25
- return acc;
26
- }, [])
18
+ pieces: custom.reduce(
19
+ (acc, curr) => {
20
+ acc.push({
21
+ ...curr,
22
+ color: colors?.[curr.color] || curr.color
23
+ });
24
+ return acc;
25
+ },
26
+ []
27
+ )
27
28
  };
28
29
  }
29
30
  const flatData = data.columnNames().filter((p) => p !== filterKey).reduce((acc, c) => {
@@ -46,18 +47,19 @@ const useSeries = ({
46
47
  delta,
47
48
  valuesProps
48
49
  }) => {
49
- const {
50
- colors
51
- } = uikitReactCore.useTheme();
52
- const getDeltaColor = react.useCallback((value, diagonal) => {
53
- if (diagonal && value > 0 || !diagonal && value < 0) {
54
- return colors?.positive;
55
- }
56
- if (diagonal && value < 0 || !diagonal && value > 0) {
57
- return colors?.negative;
58
- }
59
- return colors?.base_light;
60
- }, [colors]);
50
+ const { colors } = uikitReactCore.useTheme();
51
+ const getDeltaColor = react.useCallback(
52
+ (value, diagonal) => {
53
+ if (diagonal && value > 0 || !diagonal && value < 0) {
54
+ return colors?.positive;
55
+ }
56
+ if (diagonal && value < 0 || !diagonal && value > 0) {
57
+ return colors?.negative;
58
+ }
59
+ return colors?.base_light;
60
+ },
61
+ [colors]
62
+ );
61
63
  const chartSeries = react.useMemo(() => {
62
64
  return {
63
65
  series: {
@@ -125,7 +127,14 @@ const useGridLayout = ({
125
127
  width: Math.max(SQUARE_SIZE * nCols, SQUARE_SIZE * 8)
126
128
  }
127
129
  };
128
- }, [data, filterKey, format, visualMapVisible, visualMapYPosition, xAxisPosition]);
130
+ }, [
131
+ data,
132
+ filterKey,
133
+ format,
134
+ visualMapVisible,
135
+ visualMapYPosition,
136
+ xAxisPosition
137
+ ]);
129
138
  return size;
130
139
  };
131
140
  exports.useColorScale = useColorScale;