@fluentui/react-charts 0.0.0-nightly-20260113-0406.1 → 0.0.0-nightly-20260115-0406.1
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.
- package/CHANGELOG.md +13 -13
- package/dist/index.d.ts +4 -0
- package/lib/components/DonutChart/DonutChart.js +4 -2
- package/lib/components/DonutChart/DonutChart.js.map +1 -1
- package/lib/components/GaugeChart/GaugeChart.js +2 -1
- package/lib/components/GaugeChart/GaugeChart.js.map +1 -1
- package/lib/components/GaugeChart/GaugeChart.types.js.map +1 -1
- package/lib/components/GaugeChart/useGaugeChartStyles.styles.js +25 -16
- package/lib/components/GaugeChart/useGaugeChartStyles.styles.js.map +1 -1
- package/lib/components/GaugeChart/useGaugeChartStyles.styles.raw.js +23 -15
- package/lib/components/GaugeChart/useGaugeChartStyles.styles.raw.js.map +1 -1
- package/lib/components/PolarChart/PolarChart.js +3 -2
- package/lib/components/PolarChart/PolarChart.js.map +1 -1
- package/lib/utilities/utilities.js +1 -1
- package/lib/utilities/utilities.js.map +1 -1
- package/lib-commonjs/components/DonutChart/DonutChart.js +4 -2
- package/lib-commonjs/components/DonutChart/DonutChart.js.map +1 -1
- package/lib-commonjs/components/GaugeChart/GaugeChart.js +2 -1
- package/lib-commonjs/components/GaugeChart/GaugeChart.js.map +1 -1
- package/lib-commonjs/components/GaugeChart/GaugeChart.types.js.map +1 -1
- package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.js +29 -14
- package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.js.map +1 -1
- package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.raw.js +22 -14
- package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.raw.js.map +1 -1
- package/lib-commonjs/components/PolarChart/PolarChart.js +3 -2
- package/lib-commonjs/components/PolarChart/PolarChart.js.map +1 -1
- package/lib-commonjs/utilities/utilities.js +1 -1
- package/lib-commonjs/utilities/utilities.js.map +1 -1
- package/package.json +10 -10
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { tokens, typographyStyles } from '@fluentui/react-theme';
|
|
4
4
|
import { __styles, mergeClasses } from '@griffel/react';
|
|
5
|
-
import { getChartTitleStyles } from '../../utilities/index';
|
|
5
|
+
import { getChartTitleStyles, HighContrastSelector } from '../../utilities/index';
|
|
6
6
|
export const gaugeChartClassNames = {
|
|
7
7
|
root: 'fui-gc__root',
|
|
8
8
|
chart: 'fui-gc__chart',
|
|
@@ -23,7 +23,8 @@ export const gaugeChartClassNames = {
|
|
|
23
23
|
descriptionMessage: 'fui-gc__descriptionMessage',
|
|
24
24
|
calloutInfoContainer: '',
|
|
25
25
|
legendsContainer: 'fui-gc__legendsContainer',
|
|
26
|
-
chartWrapper: 'fui-gc__chartWrapper'
|
|
26
|
+
chartWrapper: 'fui-gc__chartWrapper',
|
|
27
|
+
svgTooltip: 'fui-gc__svgTooltip'
|
|
27
28
|
};
|
|
28
29
|
const useStyles = /*#__PURE__*/__styles({
|
|
29
30
|
root: {
|
|
@@ -66,6 +67,10 @@ const useStyles = /*#__PURE__*/__styles({
|
|
|
66
67
|
Bkfmm31: "fhuob2q",
|
|
67
68
|
ojy3ng: "f1yuyku4"
|
|
68
69
|
},
|
|
70
|
+
svgTooltip: {
|
|
71
|
+
Bkfmm31: "f5q6cfr",
|
|
72
|
+
Bxms50k: "f1bgda6t"
|
|
73
|
+
},
|
|
69
74
|
chartTitle: {
|
|
70
75
|
Bahqtrf: "fk6fouc",
|
|
71
76
|
Be2twd7: "f13mqy1h",
|
|
@@ -153,16 +158,19 @@ const useStyles = /*#__PURE__*/__styles({
|
|
|
153
158
|
a9b677: "fly5x3f"
|
|
154
159
|
}
|
|
155
160
|
}, {
|
|
156
|
-
d: [".fk6fouc{font-family:var(--fontFamilyBase);}", ".fkhj508{font-size:var(--fontSizeBase300);}", ".figsok6{font-weight:var(--fontWeightRegular);}", ".f1i3iumi{line-height:var(--lineHeightBase300);}", ".f22iagw{display:flex;}", ".f1vx9l62{flex-direction:column;}", ".f122n59{align-items:center;}", ".fly5x3f{width:100%;}", ".f1l02sjl{height:100%;}", ".f1o700av{text-align:left;}", ".fes3tcz{text-align:right;}", ".ftgm304{display:block;}", ".fy9rknc{font-size:var(--fontSizeBase200);}", ".fl43uef{font-weight:var(--fontWeightSemibold);}", ".fwrc4pm{line-height:var(--lineHeightBase200);}", ".fhuob2q{fill:var(--colorNeutralForeground1);}", ".fhv2zbx{forced-color-adjust:auto;}", ".f1yuyku4{stroke:var(--colorNeutralBackground1);}", ".f13mqy1h{font-size:var(--fontSizeBase100);}", ".fcpl73t{line-height:var(--lineHeightBase100);}", ".f17mccla{text-align:center;}", ".fqcjy3b{margin-bottom:var(--spacingVerticalS);}", [".f13htf1t{outline:none;}", {
|
|
161
|
+
d: [".fk6fouc{font-family:var(--fontFamilyBase);}", ".fkhj508{font-size:var(--fontSizeBase300);}", ".figsok6{font-weight:var(--fontWeightRegular);}", ".f1i3iumi{line-height:var(--lineHeightBase300);}", ".f22iagw{display:flex;}", ".f1vx9l62{flex-direction:column;}", ".f122n59{align-items:center;}", ".fly5x3f{width:100%;}", ".f1l02sjl{height:100%;}", ".f1o700av{text-align:left;}", ".fes3tcz{text-align:right;}", ".ftgm304{display:block;}", ".fy9rknc{font-size:var(--fontSizeBase200);}", ".fl43uef{font-weight:var(--fontWeightSemibold);}", ".fwrc4pm{line-height:var(--lineHeightBase200);}", ".fhuob2q{fill:var(--colorNeutralForeground1);}", ".fhv2zbx{forced-color-adjust:auto;}", ".f1yuyku4{stroke:var(--colorNeutralBackground1);}", ".f5q6cfr{fill:var(--colorNeutralBackground1);}", ".f13mqy1h{font-size:var(--fontSizeBase100);}", ".fcpl73t{line-height:var(--lineHeightBase100);}", ".f17mccla{text-align:center;}", ".fqcjy3b{margin-bottom:var(--spacingVerticalS);}", [".f13htf1t{outline:none;}", {
|
|
157
162
|
p: -1
|
|
158
163
|
}], ".f1v24fw0{stroke:var(--colorNeutralStroke1);}", ".f13qh94s{display:grid;}", [".f1a3p1vp{overflow:hidden;}", {
|
|
159
164
|
p: -1
|
|
160
165
|
}], ".fxugw4r{background-color:var(--colorNeutralBackground1);}", ".fronft5{background-blend-mode:normal,luminosity;}", ".f1063pyq{flex-direction:row;}", ".f1869bpl{justify-content:space-between;}", ".f104wqfl{line-height:16px;}", ".fd43bvn{opacity:0.85;}", ".f7jvbu2{margin-top:13px;}", ".f19n0e5{color:var(--colorNeutralForeground1);}", ".f177v4lu{padding-left:8px;}", ".f19lj068{padding-right:8px;}", ".fdgv6k0{forced-color-adjust:none;}", ".f1phki43{margin-right:8px;}", ".ff9s3yw{margin-left:8px;}", ".fkfq4zb{color:var(--colorNeutralForeground2);}", ".f82itaf{line-height:22px;}", ".ffemd8d{margin-top:10px;}", ".f1809wu7{padding-top:10px;}", [".f10ci6s2{border-top:1px solid var(--colorNeutralStroke1);}", {
|
|
161
166
|
p: -1
|
|
167
|
+
}]],
|
|
168
|
+
m: [["@media screen and (-ms-high-contrast: active),screen and (forced-colors: active){.f1bgda6t{fill:Canvas;}}", {
|
|
169
|
+
m: "screen and (-ms-high-contrast: active), screen and (forced-colors: active)"
|
|
162
170
|
}]]
|
|
163
171
|
});
|
|
164
172
|
export const useGaugeChartStyles = props => {
|
|
165
|
-
var _props_styles, _props_styles1, _props_styles2, _props_styles3, _props_styles4, _props_styles5, _props_styles6, _props_styles7, _props_styles8, _props_styles9, _props_styles10, _props_styles11, _props_styles12, _props_styles13, _props_styles14, _props_styles15, _props_styles16, _props_styles17, _props_styles18;
|
|
173
|
+
var _props_styles, _props_styles1, _props_styles2, _props_styles3, _props_styles4, _props_styles5, _props_styles6, _props_styles7, _props_styles8, _props_styles9, _props_styles10, _props_styles11, _props_styles12, _props_styles13, _props_styles14, _props_styles15, _props_styles16, _props_styles17, _props_styles18, _props_styles19;
|
|
166
174
|
const baseStyles = useStyles();
|
|
167
175
|
return {
|
|
168
176
|
root: mergeClasses(gaugeChartClassNames.root, baseStyles.root, (_props_styles = props.styles) === null || _props_styles === void 0 ? void 0 : _props_styles.root),
|
|
@@ -172,17 +180,18 @@ export const useGaugeChartStyles = props => {
|
|
|
172
180
|
sublabel: mergeClasses(gaugeChartClassNames.sublabel, baseStyles.sublabel, (_props_styles4 = props.styles) === null || _props_styles4 === void 0 ? void 0 : _props_styles4.sublabel),
|
|
173
181
|
needle: mergeClasses(gaugeChartClassNames.needle, baseStyles.needle, (_props_styles5 = props.styles) === null || _props_styles5 === void 0 ? void 0 : _props_styles5.needle),
|
|
174
182
|
chartTitle: mergeClasses(gaugeChartClassNames.chartTitle, baseStyles.chartTitle, (_props_styles6 = props.styles) === null || _props_styles6 === void 0 ? void 0 : _props_styles6.chartTitle),
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
183
|
+
svgTooltip: mergeClasses(gaugeChartClassNames.svgTooltip, baseStyles.svgTooltip, (_props_styles7 = props.styles) === null || _props_styles7 === void 0 ? void 0 : _props_styles7.svgTooltip),
|
|
184
|
+
segment: mergeClasses(gaugeChartClassNames.segment, baseStyles.segment, (_props_styles8 = props.styles) === null || _props_styles8 === void 0 ? void 0 : _props_styles8.segment),
|
|
185
|
+
gradientSegment: mergeClasses(gaugeChartClassNames.gradientSegment, baseStyles.gradientSegment, (_props_styles9 = props.styles) === null || _props_styles9 === void 0 ? void 0 : _props_styles9.gradientSegment),
|
|
186
|
+
calloutContentRoot: mergeClasses(gaugeChartClassNames.calloutContentRoot, baseStyles.calloutContentRoot, (_props_styles10 = props.styles) === null || _props_styles10 === void 0 ? void 0 : _props_styles10.calloutContentRoot),
|
|
187
|
+
calloutDateTimeContainer: mergeClasses(gaugeChartClassNames.calloutDateTimeContainer, baseStyles.calloutDateTimeContainer, (_props_styles11 = props.styles) === null || _props_styles11 === void 0 ? void 0 : _props_styles11.calloutDateTimeContainer),
|
|
188
|
+
calloutContentX: mergeClasses(gaugeChartClassNames.calloutContentX, baseStyles.calloutContentX, (_props_styles12 = props.styles) === null || _props_styles12 === void 0 ? void 0 : _props_styles12.calloutContentX),
|
|
189
|
+
calloutBlockContainer: mergeClasses(gaugeChartClassNames.calloutBlockContainer, baseStyles.calloutBlockContainer, (_props_styles13 = props.styles) === null || _props_styles13 === void 0 ? void 0 : _props_styles13.calloutBlockContainer),
|
|
190
|
+
shapeStyles: mergeClasses(gaugeChartClassNames.shapeStyles, baseStyles.shapeStyles, (_props_styles14 = props.styles) === null || _props_styles14 === void 0 ? void 0 : _props_styles14.shapeStyles),
|
|
191
|
+
calloutlegendText: mergeClasses(gaugeChartClassNames.calloutlegendText, baseStyles.calloutlegendText, (_props_styles15 = props.styles) === null || _props_styles15 === void 0 ? void 0 : _props_styles15.calloutlegendText),
|
|
192
|
+
calloutContentY: mergeClasses(gaugeChartClassNames.calloutContentY, baseStyles.calloutContentY, (_props_styles16 = props.styles) === null || _props_styles16 === void 0 ? void 0 : _props_styles16.calloutContentY),
|
|
193
|
+
descriptionMessage: mergeClasses(gaugeChartClassNames.descriptionMessage, baseStyles.descriptionMessage, (_props_styles17 = props.styles) === null || _props_styles17 === void 0 ? void 0 : _props_styles17.descriptionMessage),
|
|
194
|
+
chartWrapper: mergeClasses(gaugeChartClassNames.chartWrapper, (_props_styles18 = props.styles) === null || _props_styles18 === void 0 ? void 0 : _props_styles18.chartWrapper),
|
|
195
|
+
legendsContainer: mergeClasses(gaugeChartClassNames.legendsContainer, baseStyles.legendsContainer, (_props_styles19 = props.styles) === null || _props_styles19 === void 0 ? void 0 : _props_styles19.legendsContainer)
|
|
187
196
|
};
|
|
188
197
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["tokens","typographyStyles","__styles","mergeClasses","getChartTitleStyles","gaugeChartClassNames","root","chart","limits","chartValue","sublabel","needle","chartTitle","segment","gradientSegment","calloutContentRoot","calloutDateTimeContainer","calloutContentX","calloutBlockContainer","shapeStyles","calloutlegendText","calloutContentY","descriptionMessage","calloutInfoContainer","legendsContainer","chartWrapper","useStyles","Bahqtrf","Be2twd7","Bhrd7zp","Bg96gwp","mc9l5x","Beiy3e4","Bt984gj","a9b677","Bqenvij","fsow6f","Bkfmm31","Bvjb7m6","ojy3ng","jrapky","Bw0xxkn","oeaueh","Bpd4iqm","Befb4lg","B68tc82","Bmxbyg5","Bpg54ce","De3pzq","jy2i9i","Brf1p80","abs64n","B6of3ja","sj55zd","uwmqm3","t21cq0","z8tnut","g2u3we","icvyot","B4j52fo","i8vvqc","d","p","useGaugeChartStyles","props","_props_styles","_props_styles1","_props_styles2","_props_styles3","_props_styles4","_props_styles5","_props_styles6","_props_styles7","_props_styles8","_props_styles9","_props_styles10","_props_styles11","_props_styles12","_props_styles13","_props_styles14","_props_styles15","_props_styles16","_props_styles17","_props_styles18","baseStyles","styles"],"sources":["useGaugeChartStyles.styles.js"],"sourcesContent":["'use client';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { getChartTitleStyles } from '../../utilities/index';\nexport const gaugeChartClassNames = {\n root: 'fui-gc__root',\n chart: 'fui-gc__chart',\n limits: 'fui-gc__limits',\n chartValue: 'fui-gc__chartValue',\n sublabel: 'fui-gc__sublabel',\n needle: 'fui-gc__needle',\n chartTitle: 'fui-gc__chartTitle',\n segment: 'fui-gc__segment',\n gradientSegment: 'fui-gc__gradientSegment',\n calloutContentRoot: 'fui-gc__calloutContentRoot',\n calloutDateTimeContainer: 'fui-gc__calloutDateTimeContainer',\n calloutContentX: 'fui-gc__calloutContentX',\n calloutBlockContainer: 'fui-gc__calloutBlockContainer',\n shapeStyles: 'fui-gc__shapeStyles',\n calloutlegendText: 'fui-gc__calloutlegendText',\n calloutContentY: 'fui-gc__calloutContentY',\n descriptionMessage: 'fui-gc__descriptionMessage',\n calloutInfoContainer: '',\n legendsContainer: 'fui-gc__legendsContainer',\n chartWrapper: 'fui-gc__chartWrapper'\n};\nconst useStyles = makeStyles({\n root: {\n ...typographyStyles.body1,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100%',\n height: '100%',\n textAlign: 'left'\n },\n chart: {\n display: 'block'\n },\n limits: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto'\n },\n chartValue: {\n fontWeight: tokens.fontWeightSemibold,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto'\n },\n sublabel: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto'\n },\n needle: {\n fill: tokens.colorNeutralForeground1,\n stroke: tokens.colorNeutralBackground1\n },\n chartTitle: getChartTitleStyles(),\n segment: {\n outline: 'none',\n stroke: tokens.colorNeutralStroke1\n },\n gradientSegment: {\n width: '100%',\n height: '100%'\n },\n calloutContentRoot: {\n display: 'grid',\n overflow: 'hidden',\n backgroundColor: tokens.colorNeutralBackground1,\n backgroundBlendMode: 'normal, luminosity'\n },\n calloutDateTimeContainer: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between'\n },\n calloutContentX: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n opacity: '0.85'\n },\n calloutBlockContainer: {\n ...typographyStyles.body1Strong,\n marginTop: '13px',\n color: tokens.colorNeutralForeground1,\n paddingLeft: '8px',\n display: 'block',\n forcedColorAdjust: 'none'\n },\n shapeStyles: {\n marginRight: '8px'\n },\n calloutlegendText: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n color: tokens.colorNeutralForeground2,\n forcedColorAdjust: 'auto'\n },\n calloutContentY: {\n ...typographyStyles.body1Strong,\n lineHeight: '22px',\n forcedColorAdjust: 'auto'\n },\n descriptionMessage: {\n ...typographyStyles.caption1,\n color: tokens.colorNeutralForeground1,\n marginTop: '10px',\n paddingTop: '10px',\n borderTop: `1px solid ${tokens.colorNeutralStroke1}`\n },\n legendsContainer: {\n width: '100%'\n }\n});\nexport const useGaugeChartStyles = (props)=>{\n var _props_styles, _props_styles1, _props_styles2, _props_styles3, _props_styles4, _props_styles5, _props_styles6, _props_styles7, _props_styles8, _props_styles9, _props_styles10, _props_styles11, _props_styles12, _props_styles13, _props_styles14, _props_styles15, _props_styles16, _props_styles17, _props_styles18;\n const baseStyles = useStyles();\n return {\n root: mergeClasses(gaugeChartClassNames.root, baseStyles.root, (_props_styles = props.styles) === null || _props_styles === void 0 ? void 0 : _props_styles.root),\n chart: mergeClasses(gaugeChartClassNames.chart, baseStyles.chart, (_props_styles1 = props.styles) === null || _props_styles1 === void 0 ? void 0 : _props_styles1.chart),\n limits: mergeClasses(gaugeChartClassNames.limits, baseStyles.limits, (_props_styles2 = props.styles) === null || _props_styles2 === void 0 ? void 0 : _props_styles2.limits),\n chartValue: mergeClasses(gaugeChartClassNames.chartValue, baseStyles.chartValue, (_props_styles3 = props.styles) === null || _props_styles3 === void 0 ? void 0 : _props_styles3.chartValue),\n sublabel: mergeClasses(gaugeChartClassNames.sublabel, baseStyles.sublabel, (_props_styles4 = props.styles) === null || _props_styles4 === void 0 ? void 0 : _props_styles4.sublabel),\n needle: mergeClasses(gaugeChartClassNames.needle, baseStyles.needle, (_props_styles5 = props.styles) === null || _props_styles5 === void 0 ? void 0 : _props_styles5.needle),\n chartTitle: mergeClasses(gaugeChartClassNames.chartTitle, baseStyles.chartTitle, (_props_styles6 = props.styles) === null || _props_styles6 === void 0 ? void 0 : _props_styles6.chartTitle),\n segment: mergeClasses(gaugeChartClassNames.segment, baseStyles.segment, (_props_styles7 = props.styles) === null || _props_styles7 === void 0 ? void 0 : _props_styles7.segment),\n gradientSegment: mergeClasses(gaugeChartClassNames.gradientSegment, baseStyles.gradientSegment, (_props_styles8 = props.styles) === null || _props_styles8 === void 0 ? void 0 : _props_styles8.gradientSegment),\n calloutContentRoot: mergeClasses(gaugeChartClassNames.calloutContentRoot, baseStyles.calloutContentRoot, (_props_styles9 = props.styles) === null || _props_styles9 === void 0 ? void 0 : _props_styles9.calloutContentRoot),\n calloutDateTimeContainer: mergeClasses(gaugeChartClassNames.calloutDateTimeContainer, baseStyles.calloutDateTimeContainer, (_props_styles10 = props.styles) === null || _props_styles10 === void 0 ? void 0 : _props_styles10.calloutDateTimeContainer),\n calloutContentX: mergeClasses(gaugeChartClassNames.calloutContentX, baseStyles.calloutContentX, (_props_styles11 = props.styles) === null || _props_styles11 === void 0 ? void 0 : _props_styles11.calloutContentX),\n calloutBlockContainer: mergeClasses(gaugeChartClassNames.calloutBlockContainer, baseStyles.calloutBlockContainer, (_props_styles12 = props.styles) === null || _props_styles12 === void 0 ? void 0 : _props_styles12.calloutBlockContainer),\n shapeStyles: mergeClasses(gaugeChartClassNames.shapeStyles, baseStyles.shapeStyles, (_props_styles13 = props.styles) === null || _props_styles13 === void 0 ? void 0 : _props_styles13.shapeStyles),\n calloutlegendText: mergeClasses(gaugeChartClassNames.calloutlegendText, baseStyles.calloutlegendText, (_props_styles14 = props.styles) === null || _props_styles14 === void 0 ? void 0 : _props_styles14.calloutlegendText),\n calloutContentY: mergeClasses(gaugeChartClassNames.calloutContentY, baseStyles.calloutContentY, (_props_styles15 = props.styles) === null || _props_styles15 === void 0 ? void 0 : _props_styles15.calloutContentY),\n descriptionMessage: mergeClasses(gaugeChartClassNames.descriptionMessage, baseStyles.descriptionMessage, (_props_styles16 = props.styles) === null || _props_styles16 === void 0 ? void 0 : _props_styles16.descriptionMessage),\n chartWrapper: mergeClasses(gaugeChartClassNames.chartWrapper, (_props_styles17 = props.styles) === null || _props_styles17 === void 0 ? void 0 : _props_styles17.chartWrapper),\n legendsContainer: mergeClasses(gaugeChartClassNames.legendsContainer, baseStyles.legendsContainer, (_props_styles18 = props.styles) === null || _props_styles18 === void 0 ? void 0 : _props_styles18.legendsContainer)\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["tokens","typographyStyles","__styles","mergeClasses","getChartTitleStyles","HighContrastSelector","gaugeChartClassNames","root","chart","limits","chartValue","sublabel","needle","chartTitle","segment","gradientSegment","calloutContentRoot","calloutDateTimeContainer","calloutContentX","calloutBlockContainer","shapeStyles","calloutlegendText","calloutContentY","descriptionMessage","calloutInfoContainer","legendsContainer","chartWrapper","svgTooltip","useStyles","Bahqtrf","Be2twd7","Bhrd7zp","Bg96gwp","mc9l5x","Beiy3e4","Bt984gj","a9b677","Bqenvij","fsow6f","Bkfmm31","Bvjb7m6","ojy3ng","Bxms50k","jrapky","Bw0xxkn","oeaueh","Bpd4iqm","Befb4lg","B68tc82","Bmxbyg5","Bpg54ce","De3pzq","jy2i9i","Brf1p80","abs64n","B6of3ja","sj55zd","uwmqm3","t21cq0","z8tnut","g2u3we","icvyot","B4j52fo","i8vvqc","d","p","m","useGaugeChartStyles","props","_props_styles","_props_styles1","_props_styles2","_props_styles3","_props_styles4","_props_styles5","_props_styles6","_props_styles7","_props_styles8","_props_styles9","_props_styles10","_props_styles11","_props_styles12","_props_styles13","_props_styles14","_props_styles15","_props_styles16","_props_styles17","_props_styles18","_props_styles19","baseStyles","styles"],"sources":["useGaugeChartStyles.styles.js"],"sourcesContent":["'use client';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { getChartTitleStyles, HighContrastSelector } from '../../utilities/index';\nexport const gaugeChartClassNames = {\n root: 'fui-gc__root',\n chart: 'fui-gc__chart',\n limits: 'fui-gc__limits',\n chartValue: 'fui-gc__chartValue',\n sublabel: 'fui-gc__sublabel',\n needle: 'fui-gc__needle',\n chartTitle: 'fui-gc__chartTitle',\n segment: 'fui-gc__segment',\n gradientSegment: 'fui-gc__gradientSegment',\n calloutContentRoot: 'fui-gc__calloutContentRoot',\n calloutDateTimeContainer: 'fui-gc__calloutDateTimeContainer',\n calloutContentX: 'fui-gc__calloutContentX',\n calloutBlockContainer: 'fui-gc__calloutBlockContainer',\n shapeStyles: 'fui-gc__shapeStyles',\n calloutlegendText: 'fui-gc__calloutlegendText',\n calloutContentY: 'fui-gc__calloutContentY',\n descriptionMessage: 'fui-gc__descriptionMessage',\n calloutInfoContainer: '',\n legendsContainer: 'fui-gc__legendsContainer',\n chartWrapper: 'fui-gc__chartWrapper',\n svgTooltip: 'fui-gc__svgTooltip'\n};\nconst useStyles = makeStyles({\n root: {\n ...typographyStyles.body1,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100%',\n height: '100%',\n textAlign: 'left'\n },\n chart: {\n display: 'block'\n },\n limits: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto'\n },\n chartValue: {\n fontWeight: tokens.fontWeightSemibold,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto'\n },\n sublabel: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto'\n },\n needle: {\n fill: tokens.colorNeutralForeground1,\n stroke: tokens.colorNeutralBackground1\n },\n svgTooltip: {\n fill: tokens.colorNeutralBackground1,\n [HighContrastSelector]: {\n fill: 'Canvas'\n }\n },\n chartTitle: getChartTitleStyles(),\n segment: {\n outline: 'none',\n stroke: tokens.colorNeutralStroke1\n },\n gradientSegment: {\n width: '100%',\n height: '100%'\n },\n calloutContentRoot: {\n display: 'grid',\n overflow: 'hidden',\n backgroundColor: tokens.colorNeutralBackground1,\n backgroundBlendMode: 'normal, luminosity'\n },\n calloutDateTimeContainer: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between'\n },\n calloutContentX: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n opacity: '0.85'\n },\n calloutBlockContainer: {\n ...typographyStyles.body1Strong,\n marginTop: '13px',\n color: tokens.colorNeutralForeground1,\n paddingLeft: '8px',\n display: 'block',\n forcedColorAdjust: 'none'\n },\n shapeStyles: {\n marginRight: '8px'\n },\n calloutlegendText: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n color: tokens.colorNeutralForeground2,\n forcedColorAdjust: 'auto'\n },\n calloutContentY: {\n ...typographyStyles.body1Strong,\n lineHeight: '22px',\n forcedColorAdjust: 'auto'\n },\n descriptionMessage: {\n ...typographyStyles.caption1,\n color: tokens.colorNeutralForeground1,\n marginTop: '10px',\n paddingTop: '10px',\n borderTop: `1px solid ${tokens.colorNeutralStroke1}`\n },\n legendsContainer: {\n width: '100%'\n }\n});\nexport const useGaugeChartStyles = (props)=>{\n var _props_styles, _props_styles1, _props_styles2, _props_styles3, _props_styles4, _props_styles5, _props_styles6, _props_styles7, _props_styles8, _props_styles9, _props_styles10, _props_styles11, _props_styles12, _props_styles13, _props_styles14, _props_styles15, _props_styles16, _props_styles17, _props_styles18, _props_styles19;\n const baseStyles = useStyles();\n return {\n root: mergeClasses(gaugeChartClassNames.root, baseStyles.root, (_props_styles = props.styles) === null || _props_styles === void 0 ? void 0 : _props_styles.root),\n chart: mergeClasses(gaugeChartClassNames.chart, baseStyles.chart, (_props_styles1 = props.styles) === null || _props_styles1 === void 0 ? void 0 : _props_styles1.chart),\n limits: mergeClasses(gaugeChartClassNames.limits, baseStyles.limits, (_props_styles2 = props.styles) === null || _props_styles2 === void 0 ? void 0 : _props_styles2.limits),\n chartValue: mergeClasses(gaugeChartClassNames.chartValue, baseStyles.chartValue, (_props_styles3 = props.styles) === null || _props_styles3 === void 0 ? void 0 : _props_styles3.chartValue),\n sublabel: mergeClasses(gaugeChartClassNames.sublabel, baseStyles.sublabel, (_props_styles4 = props.styles) === null || _props_styles4 === void 0 ? void 0 : _props_styles4.sublabel),\n needle: mergeClasses(gaugeChartClassNames.needle, baseStyles.needle, (_props_styles5 = props.styles) === null || _props_styles5 === void 0 ? void 0 : _props_styles5.needle),\n chartTitle: mergeClasses(gaugeChartClassNames.chartTitle, baseStyles.chartTitle, (_props_styles6 = props.styles) === null || _props_styles6 === void 0 ? void 0 : _props_styles6.chartTitle),\n svgTooltip: mergeClasses(gaugeChartClassNames.svgTooltip, baseStyles.svgTooltip, (_props_styles7 = props.styles) === null || _props_styles7 === void 0 ? void 0 : _props_styles7.svgTooltip),\n segment: mergeClasses(gaugeChartClassNames.segment, baseStyles.segment, (_props_styles8 = props.styles) === null || _props_styles8 === void 0 ? void 0 : _props_styles8.segment),\n gradientSegment: mergeClasses(gaugeChartClassNames.gradientSegment, baseStyles.gradientSegment, (_props_styles9 = props.styles) === null || _props_styles9 === void 0 ? void 0 : _props_styles9.gradientSegment),\n calloutContentRoot: mergeClasses(gaugeChartClassNames.calloutContentRoot, baseStyles.calloutContentRoot, (_props_styles10 = props.styles) === null || _props_styles10 === void 0 ? void 0 : _props_styles10.calloutContentRoot),\n calloutDateTimeContainer: mergeClasses(gaugeChartClassNames.calloutDateTimeContainer, baseStyles.calloutDateTimeContainer, (_props_styles11 = props.styles) === null || _props_styles11 === void 0 ? void 0 : _props_styles11.calloutDateTimeContainer),\n calloutContentX: mergeClasses(gaugeChartClassNames.calloutContentX, baseStyles.calloutContentX, (_props_styles12 = props.styles) === null || _props_styles12 === void 0 ? void 0 : _props_styles12.calloutContentX),\n calloutBlockContainer: mergeClasses(gaugeChartClassNames.calloutBlockContainer, baseStyles.calloutBlockContainer, (_props_styles13 = props.styles) === null || _props_styles13 === void 0 ? void 0 : _props_styles13.calloutBlockContainer),\n shapeStyles: mergeClasses(gaugeChartClassNames.shapeStyles, baseStyles.shapeStyles, (_props_styles14 = props.styles) === null || _props_styles14 === void 0 ? void 0 : _props_styles14.shapeStyles),\n calloutlegendText: mergeClasses(gaugeChartClassNames.calloutlegendText, baseStyles.calloutlegendText, (_props_styles15 = props.styles) === null || _props_styles15 === void 0 ? void 0 : _props_styles15.calloutlegendText),\n calloutContentY: mergeClasses(gaugeChartClassNames.calloutContentY, baseStyles.calloutContentY, (_props_styles16 = props.styles) === null || _props_styles16 === void 0 ? void 0 : _props_styles16.calloutContentY),\n descriptionMessage: mergeClasses(gaugeChartClassNames.descriptionMessage, baseStyles.descriptionMessage, (_props_styles17 = props.styles) === null || _props_styles17 === void 0 ? void 0 : _props_styles17.descriptionMessage),\n chartWrapper: mergeClasses(gaugeChartClassNames.chartWrapper, (_props_styles18 = props.styles) === null || _props_styles18 === void 0 ? void 0 : _props_styles18.chartWrapper),\n legendsContainer: mergeClasses(gaugeChartClassNames.legendsContainer, baseStyles.legendsContainer, (_props_styles19 = props.styles) === null || _props_styles19 === void 0 ? void 0 : _props_styles19.legendsContainer)\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { tokens, typographyStyles } from '@fluentui/react-theme';
|
|
3
3
|
import { makeStyles, mergeClasses } from '@griffel/react';
|
|
4
|
-
import { getChartTitleStyles } from '../../utilities/index';
|
|
4
|
+
import { getChartTitleStyles, HighContrastSelector } from '../../utilities/index';
|
|
5
5
|
export const gaugeChartClassNames = {
|
|
6
6
|
root: 'fui-gc__root',
|
|
7
7
|
chart: 'fui-gc__chart',
|
|
@@ -22,7 +22,8 @@ export const gaugeChartClassNames = {
|
|
|
22
22
|
descriptionMessage: 'fui-gc__descriptionMessage',
|
|
23
23
|
calloutInfoContainer: '',
|
|
24
24
|
legendsContainer: 'fui-gc__legendsContainer',
|
|
25
|
-
chartWrapper: 'fui-gc__chartWrapper'
|
|
25
|
+
chartWrapper: 'fui-gc__chartWrapper',
|
|
26
|
+
svgTooltip: 'fui-gc__svgTooltip'
|
|
26
27
|
};
|
|
27
28
|
const useStyles = makeStyles({
|
|
28
29
|
root: {
|
|
@@ -56,6 +57,12 @@ const useStyles = makeStyles({
|
|
|
56
57
|
fill: tokens.colorNeutralForeground1,
|
|
57
58
|
stroke: tokens.colorNeutralBackground1
|
|
58
59
|
},
|
|
60
|
+
svgTooltip: {
|
|
61
|
+
fill: tokens.colorNeutralBackground1,
|
|
62
|
+
[HighContrastSelector]: {
|
|
63
|
+
fill: 'Canvas'
|
|
64
|
+
}
|
|
65
|
+
},
|
|
59
66
|
chartTitle: getChartTitleStyles(),
|
|
60
67
|
segment: {
|
|
61
68
|
outline: 'none',
|
|
@@ -115,7 +122,7 @@ const useStyles = makeStyles({
|
|
|
115
122
|
}
|
|
116
123
|
});
|
|
117
124
|
export const useGaugeChartStyles = (props)=>{
|
|
118
|
-
var _props_styles, _props_styles1, _props_styles2, _props_styles3, _props_styles4, _props_styles5, _props_styles6, _props_styles7, _props_styles8, _props_styles9, _props_styles10, _props_styles11, _props_styles12, _props_styles13, _props_styles14, _props_styles15, _props_styles16, _props_styles17, _props_styles18;
|
|
125
|
+
var _props_styles, _props_styles1, _props_styles2, _props_styles3, _props_styles4, _props_styles5, _props_styles6, _props_styles7, _props_styles8, _props_styles9, _props_styles10, _props_styles11, _props_styles12, _props_styles13, _props_styles14, _props_styles15, _props_styles16, _props_styles17, _props_styles18, _props_styles19;
|
|
119
126
|
const baseStyles = useStyles();
|
|
120
127
|
return {
|
|
121
128
|
root: mergeClasses(gaugeChartClassNames.root, baseStyles.root, (_props_styles = props.styles) === null || _props_styles === void 0 ? void 0 : _props_styles.root),
|
|
@@ -125,17 +132,18 @@ export const useGaugeChartStyles = (props)=>{
|
|
|
125
132
|
sublabel: mergeClasses(gaugeChartClassNames.sublabel, baseStyles.sublabel, (_props_styles4 = props.styles) === null || _props_styles4 === void 0 ? void 0 : _props_styles4.sublabel),
|
|
126
133
|
needle: mergeClasses(gaugeChartClassNames.needle, baseStyles.needle, (_props_styles5 = props.styles) === null || _props_styles5 === void 0 ? void 0 : _props_styles5.needle),
|
|
127
134
|
chartTitle: mergeClasses(gaugeChartClassNames.chartTitle, baseStyles.chartTitle, (_props_styles6 = props.styles) === null || _props_styles6 === void 0 ? void 0 : _props_styles6.chartTitle),
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
135
|
+
svgTooltip: mergeClasses(gaugeChartClassNames.svgTooltip, baseStyles.svgTooltip, (_props_styles7 = props.styles) === null || _props_styles7 === void 0 ? void 0 : _props_styles7.svgTooltip),
|
|
136
|
+
segment: mergeClasses(gaugeChartClassNames.segment, baseStyles.segment, (_props_styles8 = props.styles) === null || _props_styles8 === void 0 ? void 0 : _props_styles8.segment),
|
|
137
|
+
gradientSegment: mergeClasses(gaugeChartClassNames.gradientSegment, baseStyles.gradientSegment, (_props_styles9 = props.styles) === null || _props_styles9 === void 0 ? void 0 : _props_styles9.gradientSegment),
|
|
138
|
+
calloutContentRoot: mergeClasses(gaugeChartClassNames.calloutContentRoot, baseStyles.calloutContentRoot, (_props_styles10 = props.styles) === null || _props_styles10 === void 0 ? void 0 : _props_styles10.calloutContentRoot),
|
|
139
|
+
calloutDateTimeContainer: mergeClasses(gaugeChartClassNames.calloutDateTimeContainer, baseStyles.calloutDateTimeContainer, (_props_styles11 = props.styles) === null || _props_styles11 === void 0 ? void 0 : _props_styles11.calloutDateTimeContainer),
|
|
140
|
+
calloutContentX: mergeClasses(gaugeChartClassNames.calloutContentX, baseStyles.calloutContentX, (_props_styles12 = props.styles) === null || _props_styles12 === void 0 ? void 0 : _props_styles12.calloutContentX),
|
|
141
|
+
calloutBlockContainer: mergeClasses(gaugeChartClassNames.calloutBlockContainer, baseStyles.calloutBlockContainer, (_props_styles13 = props.styles) === null || _props_styles13 === void 0 ? void 0 : _props_styles13.calloutBlockContainer),
|
|
142
|
+
shapeStyles: mergeClasses(gaugeChartClassNames.shapeStyles, baseStyles.shapeStyles, (_props_styles14 = props.styles) === null || _props_styles14 === void 0 ? void 0 : _props_styles14.shapeStyles),
|
|
143
|
+
calloutlegendText: mergeClasses(gaugeChartClassNames.calloutlegendText, baseStyles.calloutlegendText, (_props_styles15 = props.styles) === null || _props_styles15 === void 0 ? void 0 : _props_styles15.calloutlegendText),
|
|
144
|
+
calloutContentY: mergeClasses(gaugeChartClassNames.calloutContentY, baseStyles.calloutContentY, (_props_styles16 = props.styles) === null || _props_styles16 === void 0 ? void 0 : _props_styles16.calloutContentY),
|
|
145
|
+
descriptionMessage: mergeClasses(gaugeChartClassNames.descriptionMessage, baseStyles.descriptionMessage, (_props_styles17 = props.styles) === null || _props_styles17 === void 0 ? void 0 : _props_styles17.descriptionMessage),
|
|
146
|
+
chartWrapper: mergeClasses(gaugeChartClassNames.chartWrapper, (_props_styles18 = props.styles) === null || _props_styles18 === void 0 ? void 0 : _props_styles18.chartWrapper),
|
|
147
|
+
legendsContainer: mergeClasses(gaugeChartClassNames.legendsContainer, baseStyles.legendsContainer, (_props_styles19 = props.styles) === null || _props_styles19 === void 0 ? void 0 : _props_styles19.legendsContainer)
|
|
140
148
|
};
|
|
141
149
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/GaugeChart/useGaugeChartStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { SlotClassNames } from '@fluentui/react-utilities/src/index';\nimport { GriffelStyle, makeStyles, mergeClasses } from '@griffel/react';\nimport { GaugeChartProps, GaugeChartStyles } from './GaugeChart.types';\nimport { getChartTitleStyles } from '../../utilities/index';\n\nexport const gaugeChartClassNames: SlotClassNames<GaugeChartStyles> = {\n root: 'fui-gc__root',\n chart: 'fui-gc__chart',\n limits: 'fui-gc__limits',\n chartValue: 'fui-gc__chartValue',\n sublabel: 'fui-gc__sublabel',\n needle: 'fui-gc__needle',\n chartTitle: 'fui-gc__chartTitle',\n segment: 'fui-gc__segment',\n gradientSegment: 'fui-gc__gradientSegment',\n calloutContentRoot: 'fui-gc__calloutContentRoot',\n calloutDateTimeContainer: 'fui-gc__calloutDateTimeContainer',\n calloutContentX: 'fui-gc__calloutContentX',\n calloutBlockContainer: 'fui-gc__calloutBlockContainer',\n shapeStyles: 'fui-gc__shapeStyles',\n calloutlegendText: 'fui-gc__calloutlegendText',\n calloutContentY: 'fui-gc__calloutContentY',\n descriptionMessage: 'fui-gc__descriptionMessage',\n calloutInfoContainer: '',\n legendsContainer: 'fui-gc__legendsContainer',\n chartWrapper: 'fui-gc__chartWrapper',\n};\n\nconst useStyles = makeStyles({\n root: {\n ...typographyStyles.body1,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100%',\n height: '100%',\n textAlign: 'left',\n },\n chart: {\n display: 'block',\n },\n limits: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto',\n },\n chartValue: {\n fontWeight: tokens.fontWeightSemibold,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto',\n },\n sublabel: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto',\n },\n needle: {\n fill: tokens.colorNeutralForeground1,\n stroke: tokens.colorNeutralBackground1,\n },\n chartTitle: getChartTitleStyles() as GriffelStyle,\n segment: {\n outline: 'none',\n stroke: tokens.colorNeutralStroke1,\n },\n gradientSegment: {\n width: '100%',\n height: '100%',\n },\n calloutContentRoot: {\n display: 'grid',\n overflow: 'hidden',\n backgroundColor: tokens.colorNeutralBackground1,\n backgroundBlendMode: 'normal, luminosity',\n },\n calloutDateTimeContainer: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n },\n calloutContentX: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n opacity: '0.85',\n },\n calloutBlockContainer: {\n ...typographyStyles.body1Strong,\n marginTop: '13px',\n color: tokens.colorNeutralForeground1,\n paddingLeft: '8px',\n display: 'block',\n forcedColorAdjust: 'none',\n },\n shapeStyles: {\n marginRight: '8px',\n },\n calloutlegendText: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n color: tokens.colorNeutralForeground2,\n forcedColorAdjust: 'auto',\n },\n calloutContentY: {\n ...typographyStyles.body1Strong,\n lineHeight: '22px',\n forcedColorAdjust: 'auto',\n },\n descriptionMessage: {\n ...typographyStyles.caption1,\n color: tokens.colorNeutralForeground1,\n marginTop: '10px',\n paddingTop: '10px',\n borderTop: `1px solid ${tokens.colorNeutralStroke1}`,\n },\n legendsContainer: {\n width: '100%',\n },\n});\nexport const useGaugeChartStyles = (props: GaugeChartProps): GaugeChartStyles => {\n const baseStyles = useStyles();\n\n return {\n root: mergeClasses(gaugeChartClassNames.root, baseStyles.root, props.styles?.root),\n chart: mergeClasses(gaugeChartClassNames.chart, baseStyles.chart, props.styles?.chart),\n limits: mergeClasses(gaugeChartClassNames.limits, baseStyles.limits, props.styles?.limits),\n chartValue: mergeClasses(gaugeChartClassNames.chartValue, baseStyles.chartValue, props.styles?.chartValue),\n sublabel: mergeClasses(gaugeChartClassNames.sublabel, baseStyles.sublabel, props.styles?.sublabel),\n needle: mergeClasses(gaugeChartClassNames.needle, baseStyles.needle, props.styles?.needle),\n chartTitle: mergeClasses(gaugeChartClassNames.chartTitle, baseStyles.chartTitle, props.styles?.chartTitle),\n segment: mergeClasses(gaugeChartClassNames.segment, baseStyles.segment, props.styles?.segment),\n gradientSegment: mergeClasses(\n gaugeChartClassNames.gradientSegment,\n baseStyles.gradientSegment,\n props.styles?.gradientSegment,\n ),\n calloutContentRoot: mergeClasses(\n gaugeChartClassNames.calloutContentRoot,\n baseStyles.calloutContentRoot,\n props.styles?.calloutContentRoot,\n ),\n calloutDateTimeContainer: mergeClasses(\n gaugeChartClassNames.calloutDateTimeContainer,\n baseStyles.calloutDateTimeContainer,\n props.styles?.calloutDateTimeContainer,\n ),\n calloutContentX: mergeClasses(\n gaugeChartClassNames.calloutContentX,\n baseStyles.calloutContentX,\n props.styles?.calloutContentX,\n ),\n calloutBlockContainer: mergeClasses(\n gaugeChartClassNames.calloutBlockContainer,\n baseStyles.calloutBlockContainer,\n props.styles?.calloutBlockContainer,\n ),\n shapeStyles: mergeClasses(gaugeChartClassNames.shapeStyles, baseStyles.shapeStyles, props.styles?.shapeStyles),\n calloutlegendText: mergeClasses(\n gaugeChartClassNames.calloutlegendText,\n baseStyles.calloutlegendText,\n props.styles?.calloutlegendText,\n ),\n calloutContentY: mergeClasses(\n gaugeChartClassNames.calloutContentY,\n baseStyles.calloutContentY,\n props.styles?.calloutContentY,\n ),\n descriptionMessage: mergeClasses(\n gaugeChartClassNames.descriptionMessage,\n baseStyles.descriptionMessage,\n props.styles?.descriptionMessage,\n ),\n chartWrapper: mergeClasses(gaugeChartClassNames.chartWrapper, props.styles?.chartWrapper),\n legendsContainer: mergeClasses(\n gaugeChartClassNames.legendsContainer,\n baseStyles.legendsContainer,\n props.styles?.legendsContainer,\n ),\n };\n};\n"],"names":["tokens","typographyStyles","makeStyles","mergeClasses","getChartTitleStyles","gaugeChartClassNames","root","chart","limits","chartValue","sublabel","needle","chartTitle","segment","gradientSegment","calloutContentRoot","calloutDateTimeContainer","calloutContentX","calloutBlockContainer","shapeStyles","calloutlegendText","calloutContentY","descriptionMessage","calloutInfoContainer","legendsContainer","chartWrapper","useStyles","body1","display","flexDirection","alignItems","width","height","textAlign","caption1Strong","fill","colorNeutralForeground1","forcedColorAdjust","fontWeight","fontWeightSemibold","stroke","colorNeutralBackground1","outline","colorNeutralStroke1","overflow","backgroundColor","backgroundBlendMode","justifyContent","caption1","lineHeight","opacity","body1Strong","marginTop","color","paddingLeft","marginRight","colorNeutralForeground2","paddingTop","borderTop","useGaugeChartStyles","props","baseStyles","styles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../src/components/GaugeChart/useGaugeChartStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { SlotClassNames } from '@fluentui/react-utilities/src/index';\nimport { GriffelStyle, makeStyles, mergeClasses } from '@griffel/react';\nimport { GaugeChartProps, GaugeChartStyles } from './GaugeChart.types';\nimport { getChartTitleStyles, HighContrastSelector } from '../../utilities/index';\n\nexport const gaugeChartClassNames: SlotClassNames<GaugeChartStyles> = {\n root: 'fui-gc__root',\n chart: 'fui-gc__chart',\n limits: 'fui-gc__limits',\n chartValue: 'fui-gc__chartValue',\n sublabel: 'fui-gc__sublabel',\n needle: 'fui-gc__needle',\n chartTitle: 'fui-gc__chartTitle',\n segment: 'fui-gc__segment',\n gradientSegment: 'fui-gc__gradientSegment',\n calloutContentRoot: 'fui-gc__calloutContentRoot',\n calloutDateTimeContainer: 'fui-gc__calloutDateTimeContainer',\n calloutContentX: 'fui-gc__calloutContentX',\n calloutBlockContainer: 'fui-gc__calloutBlockContainer',\n shapeStyles: 'fui-gc__shapeStyles',\n calloutlegendText: 'fui-gc__calloutlegendText',\n calloutContentY: 'fui-gc__calloutContentY',\n descriptionMessage: 'fui-gc__descriptionMessage',\n calloutInfoContainer: '',\n legendsContainer: 'fui-gc__legendsContainer',\n chartWrapper: 'fui-gc__chartWrapper',\n svgTooltip: 'fui-gc__svgTooltip',\n};\n\nconst useStyles = makeStyles({\n root: {\n ...typographyStyles.body1,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100%',\n height: '100%',\n textAlign: 'left',\n },\n chart: {\n display: 'block',\n },\n limits: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto',\n },\n chartValue: {\n fontWeight: tokens.fontWeightSemibold,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto',\n },\n sublabel: {\n ...typographyStyles.caption1Strong,\n fill: tokens.colorNeutralForeground1,\n forcedColorAdjust: 'auto',\n },\n needle: {\n fill: tokens.colorNeutralForeground1,\n stroke: tokens.colorNeutralBackground1,\n },\n svgTooltip: {\n fill: tokens.colorNeutralBackground1,\n [HighContrastSelector]: {\n fill: 'Canvas',\n },\n },\n chartTitle: getChartTitleStyles() as GriffelStyle,\n segment: {\n outline: 'none',\n stroke: tokens.colorNeutralStroke1,\n },\n gradientSegment: {\n width: '100%',\n height: '100%',\n },\n calloutContentRoot: {\n display: 'grid',\n overflow: 'hidden',\n backgroundColor: tokens.colorNeutralBackground1,\n backgroundBlendMode: 'normal, luminosity',\n },\n calloutDateTimeContainer: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n },\n calloutContentX: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n opacity: '0.85',\n },\n calloutBlockContainer: {\n ...typographyStyles.body1Strong,\n marginTop: '13px',\n color: tokens.colorNeutralForeground1,\n paddingLeft: '8px',\n display: 'block',\n forcedColorAdjust: 'none',\n },\n shapeStyles: {\n marginRight: '8px',\n },\n calloutlegendText: {\n ...typographyStyles.caption1,\n lineHeight: '16px',\n color: tokens.colorNeutralForeground2,\n forcedColorAdjust: 'auto',\n },\n calloutContentY: {\n ...typographyStyles.body1Strong,\n lineHeight: '22px',\n forcedColorAdjust: 'auto',\n },\n descriptionMessage: {\n ...typographyStyles.caption1,\n color: tokens.colorNeutralForeground1,\n marginTop: '10px',\n paddingTop: '10px',\n borderTop: `1px solid ${tokens.colorNeutralStroke1}`,\n },\n legendsContainer: {\n width: '100%',\n },\n});\nexport const useGaugeChartStyles = (props: GaugeChartProps): GaugeChartStyles => {\n const baseStyles = useStyles();\n\n return {\n root: mergeClasses(gaugeChartClassNames.root, baseStyles.root, props.styles?.root),\n chart: mergeClasses(gaugeChartClassNames.chart, baseStyles.chart, props.styles?.chart),\n limits: mergeClasses(gaugeChartClassNames.limits, baseStyles.limits, props.styles?.limits),\n chartValue: mergeClasses(gaugeChartClassNames.chartValue, baseStyles.chartValue, props.styles?.chartValue),\n sublabel: mergeClasses(gaugeChartClassNames.sublabel, baseStyles.sublabel, props.styles?.sublabel),\n needle: mergeClasses(gaugeChartClassNames.needle, baseStyles.needle, props.styles?.needle),\n chartTitle: mergeClasses(gaugeChartClassNames.chartTitle, baseStyles.chartTitle, props.styles?.chartTitle),\n svgTooltip: mergeClasses(gaugeChartClassNames.svgTooltip, baseStyles.svgTooltip, props.styles?.svgTooltip),\n segment: mergeClasses(gaugeChartClassNames.segment, baseStyles.segment, props.styles?.segment),\n gradientSegment: mergeClasses(\n gaugeChartClassNames.gradientSegment,\n baseStyles.gradientSegment,\n props.styles?.gradientSegment,\n ),\n calloutContentRoot: mergeClasses(\n gaugeChartClassNames.calloutContentRoot,\n baseStyles.calloutContentRoot,\n props.styles?.calloutContentRoot,\n ),\n calloutDateTimeContainer: mergeClasses(\n gaugeChartClassNames.calloutDateTimeContainer,\n baseStyles.calloutDateTimeContainer,\n props.styles?.calloutDateTimeContainer,\n ),\n calloutContentX: mergeClasses(\n gaugeChartClassNames.calloutContentX,\n baseStyles.calloutContentX,\n props.styles?.calloutContentX,\n ),\n calloutBlockContainer: mergeClasses(\n gaugeChartClassNames.calloutBlockContainer,\n baseStyles.calloutBlockContainer,\n props.styles?.calloutBlockContainer,\n ),\n shapeStyles: mergeClasses(gaugeChartClassNames.shapeStyles, baseStyles.shapeStyles, props.styles?.shapeStyles),\n calloutlegendText: mergeClasses(\n gaugeChartClassNames.calloutlegendText,\n baseStyles.calloutlegendText,\n props.styles?.calloutlegendText,\n ),\n calloutContentY: mergeClasses(\n gaugeChartClassNames.calloutContentY,\n baseStyles.calloutContentY,\n props.styles?.calloutContentY,\n ),\n descriptionMessage: mergeClasses(\n gaugeChartClassNames.descriptionMessage,\n baseStyles.descriptionMessage,\n props.styles?.descriptionMessage,\n ),\n chartWrapper: mergeClasses(gaugeChartClassNames.chartWrapper, props.styles?.chartWrapper),\n legendsContainer: mergeClasses(\n gaugeChartClassNames.legendsContainer,\n baseStyles.legendsContainer,\n props.styles?.legendsContainer,\n ),\n };\n};\n"],"names":["tokens","typographyStyles","makeStyles","mergeClasses","getChartTitleStyles","HighContrastSelector","gaugeChartClassNames","root","chart","limits","chartValue","sublabel","needle","chartTitle","segment","gradientSegment","calloutContentRoot","calloutDateTimeContainer","calloutContentX","calloutBlockContainer","shapeStyles","calloutlegendText","calloutContentY","descriptionMessage","calloutInfoContainer","legendsContainer","chartWrapper","svgTooltip","useStyles","body1","display","flexDirection","alignItems","width","height","textAlign","caption1Strong","fill","colorNeutralForeground1","forcedColorAdjust","fontWeight","fontWeightSemibold","stroke","colorNeutralBackground1","outline","colorNeutralStroke1","overflow","backgroundColor","backgroundBlendMode","justifyContent","caption1","lineHeight","opacity","body1Strong","marginTop","color","paddingLeft","marginRight","colorNeutralForeground2","paddingTop","borderTop","useGaugeChartStyles","props","baseStyles","styles"],"mappings":"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"}
|
|
@@ -553,16 +553,17 @@ export const PolarChart = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>
|
|
|
553
553
|
className: classes.chart,
|
|
554
554
|
width: svgWidth,
|
|
555
555
|
height: svgHeight,
|
|
556
|
-
viewBox: `${-svgWidth / 2} ${-svgHeight / 2} ${svgWidth} ${svgHeight}`,
|
|
557
556
|
role: "region",
|
|
558
557
|
"aria-label": (props.chartTitle ? `${props.chartTitle}. ` : '') + `Polar chart with ${chartData.length} data series.`
|
|
558
|
+
}, /*#__PURE__*/ React.createElement("g", {
|
|
559
|
+
transform: `translate(${svgWidth / 2}, ${svgHeight / 2})`
|
|
559
560
|
}, renderPolarGrid(), /*#__PURE__*/ React.createElement("g", null, chartData.map((series, seriesIndex)=>{
|
|
560
561
|
return /*#__PURE__*/ React.createElement("g", {
|
|
561
562
|
key: seriesIndex,
|
|
562
563
|
role: "region",
|
|
563
564
|
"aria-label": `${series.legend}, series ${seriesIndex + 1} of ${chartData.length} with ${series.data.length} data points.`
|
|
564
565
|
}, series.type === 'areapolar' && renderRadialArea(series), (series.type === 'areapolar' || series.type === 'linepolar') && renderRadialLine(series), renderRadialPoints(series, seriesIndex));
|
|
565
|
-
})), renderPolarTicks())), renderLegends(), !props.hideTooltip && /*#__PURE__*/ React.createElement(ChartPopover, {
|
|
566
|
+
})), renderPolarTicks()))), renderLegends(), !props.hideTooltip && /*#__PURE__*/ React.createElement(ChartPopover, {
|
|
566
567
|
isPopoverOpen: isPopoverOpen,
|
|
567
568
|
positioning: {
|
|
568
569
|
target: popoverTarget
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/PolarChart/PolarChart.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { PolarChartProps } from './PolarChart.types';\nimport { usePolarChartStyles } from './usePolarChartStyles.styles';\nimport { useImageExport } from '../../utilities/hooks';\nimport {\n pointRadial as d3PointRadial,\n areaRadial as d3AreaRadial,\n lineRadial as d3LineRadial,\n curveLinearClosed as d3CurveLinearClosed,\n} from 'd3-shape';\nimport { AreaPolarSeries, LinePolarSeries, PolarDataPoint, ScatterPolarSeries } from '../../types/DataPoint';\nimport { tokens } from '@fluentui/react-theme';\nimport { Legend, Legends } from '../Legends/index';\nimport {\n createRadialScale,\n getContinuousScaleDomain,\n getScaleType,\n EPSILON,\n createAngularScale,\n formatAngle,\n} from './PolarChart.utils';\nimport { ChartPopover } from '../CommonComponents/ChartPopover';\nimport {\n getColorFromToken,\n getCurveFactory,\n getNextColor,\n isPlottable,\n sortAxisCategories,\n} from '../../utilities/index';\nimport { extent as d3Extent } from 'd3-array';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\nimport { formatToLocaleString } from '@fluentui/chart-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\n\nconst DEFAULT_LEGEND_HEIGHT = 32;\nconst LABEL_WIDTH = 36;\nconst LABEL_HEIGHT = 16;\nconst LABEL_OFFSET = 10;\nconst TICK_SIZE = 6;\nconst MIN_MARKER_SIZE_PX = 2;\nconst MAX_MARKER_SIZE_PX = 16;\nconst MIN_MARKER_SIZE_PX_MARKERS_ONLY = 4;\n\nexport const PolarChart: React.FunctionComponent<PolarChartProps> = React.forwardRef<HTMLDivElement, PolarChartProps>(\n (props, forwardedRef) => {\n const { chartContainerRef, legendsRef } = useImageExport(props.componentRef, props.hideLegend, false);\n const legendContainerRef = React.useRef<HTMLDivElement>(null);\n const { targetDocument } = useFluent();\n const _window = targetDocument?.defaultView;\n\n const [containerWidth, setContainerWidth] = React.useState<number>(200);\n const [containerHeight, setContainerHeight] = React.useState<number>(200);\n const [legendContainerHeight, setLegendContainerHeight] = React.useState<number>(\n props.hideLegend ? 0 : DEFAULT_LEGEND_HEIGHT,\n );\n const [isPopoverOpen, setPopoverOpen] = React.useState<boolean>(false);\n const [popoverTarget, setPopoverTarget] = React.useState<SVGElement | null>(null);\n const [popoverXValue, setPopoverXValue] = React.useState<string>('');\n const [popoverLegend, setPopoverLegend] = React.useState<string>('');\n const [popoverColor, setPopoverColor] = React.useState<string>('');\n const [popoverYValue, setPopoverYValue] = React.useState<string>('');\n const [hoveredLegend, setHoveredLegend] = React.useState<string>('');\n const [selectedLegends, setSelectedLegends] = React.useState<string[]>(props.legendProps?.selectedLegends || []);\n const [activePoint, setActivePoint] = React.useState<string>('');\n\n React.useEffect(() => {\n if (chartContainerRef.current) {\n const { width, height } = chartContainerRef.current.getBoundingClientRect();\n setContainerWidth(width);\n setContainerHeight(height);\n }\n }, [chartContainerRef]);\n React.useEffect(() => {\n if (props.hideLegend) {\n setLegendContainerHeight(0);\n } else if (legendContainerRef.current) {\n const { height } = legendContainerRef.current.getBoundingClientRect();\n const marginTop = _window?.getComputedStyle(legendContainerRef.current).marginTop || '0px';\n setLegendContainerHeight(Math.max(height, DEFAULT_LEGEND_HEIGHT) + parseFloat(marginTop));\n }\n }, [props.hideLegend, _window]);\n\n React.useEffect(() => {\n setSelectedLegends(props.legendProps?.selectedLegends || []);\n }, [props.legendProps?.selectedLegends]);\n\n const margins = React.useMemo(\n () => ({\n left: LABEL_OFFSET + LABEL_WIDTH,\n right: LABEL_OFFSET + LABEL_WIDTH,\n top: LABEL_OFFSET + LABEL_HEIGHT,\n bottom: LABEL_OFFSET + LABEL_HEIGHT,\n ...props.margins,\n }),\n [props.margins],\n );\n\n const svgWidth = React.useMemo(() => props.width || containerWidth, [props.width, containerWidth]);\n const svgHeight = React.useMemo(\n () => (props.height || containerHeight) - legendContainerHeight,\n [props.height, containerHeight, legendContainerHeight],\n );\n const outerRadius = React.useMemo(\n () => Math.min(svgWidth - (margins.left + margins.right), svgHeight - (margins.top + margins.bottom)) / 2,\n [svgWidth, svgHeight, margins],\n );\n const innerRadius = React.useMemo(\n () => Math.max(0, Math.min(Math.abs(props.hole || 0), 1)) * outerRadius,\n [props.hole, outerRadius],\n );\n\n const legendColorMap = React.useRef<Record<string, string>>({});\n const chartData = React.useMemo(() => {\n legendColorMap.current = {};\n let colorIndex = 0;\n const renderingOrder = ['areapolar', 'linepolar', 'scatterpolar'];\n\n return props.data\n .map(series => {\n const seriesColor = series.color ? getColorFromToken(series.color) : getNextColor(colorIndex++, 0);\n if (!(series.legend in legendColorMap.current)) {\n legendColorMap.current[series.legend] = seriesColor;\n }\n\n return {\n ...series,\n color: seriesColor,\n data: series.data.map(point => {\n return {\n ...point,\n color: point.color ? getColorFromToken(point.color) : seriesColor,\n };\n }),\n };\n })\n .sort((a, b) => {\n return renderingOrder.indexOf(a.type) - renderingOrder.indexOf(b.type);\n });\n }, [props.data]);\n\n const mapCategoryToValues = React.useCallback(\n (isAngularAxis?: boolean) => {\n const categoryToValues: Record<string, number[]> = {};\n chartData.forEach(series => {\n series.data.forEach(point => {\n const category = (isAngularAxis ? point.theta : point.r) as string;\n if (!categoryToValues[category]) {\n categoryToValues[category] = [];\n }\n const value = isAngularAxis ? point.r : point.theta;\n if (typeof value === 'number') {\n categoryToValues[category].push(value);\n }\n });\n });\n return categoryToValues;\n },\n [chartData],\n );\n\n const getOrderedRCategories = React.useCallback(() => {\n return sortAxisCategories(mapCategoryToValues(), props.radialAxis?.categoryOrder);\n }, [mapCategoryToValues, props.radialAxis?.categoryOrder]);\n\n const getOrderedACategories = React.useCallback(() => {\n return sortAxisCategories(mapCategoryToValues(true), props.angularAxis?.categoryOrder);\n }, [mapCategoryToValues, props.angularAxis?.categoryOrder]);\n\n const rValues = React.useMemo(() => chartData.flatMap(series => series.data.map(point => point.r)), [chartData]);\n const rScaleType = React.useMemo(\n () =>\n getScaleType(rValues, {\n scaleType: props.radialAxis?.scaleType,\n supportsLog: true,\n }),\n [rValues, props.radialAxis?.scaleType],\n );\n const rScaleDomain = React.useMemo(\n () =>\n rScaleType === 'category'\n ? getOrderedRCategories()\n : getContinuousScaleDomain(rScaleType, rValues as (number | Date)[], {\n rangeStart: props.radialAxis?.rangeStart,\n rangeEnd: props.radialAxis?.rangeEnd,\n }),\n [getOrderedRCategories, rScaleType, rValues, props.radialAxis?.rangeStart, props.radialAxis?.rangeEnd],\n );\n const {\n scale: rScale,\n tickValues: rTickValues,\n tickLabels: rTickLabels,\n } = React.useMemo(\n () =>\n createRadialScale(rScaleType, rScaleDomain, [innerRadius, outerRadius], {\n useUTC: props.useUTC,\n tickCount: props.radialAxis?.tickCount,\n tickValues: props.radialAxis?.tickValues,\n tickText: props.radialAxis?.tickText,\n tickFormat: props.radialAxis?.tickFormat,\n culture: props.culture,\n tickStep: props.radialAxis?.tickStep,\n tick0: props.radialAxis?.tick0,\n dateLocalizeOptions: props.dateLocalizeOptions,\n }),\n [\n rScaleType,\n rScaleDomain,\n innerRadius,\n outerRadius,\n props.culture,\n props.dateLocalizeOptions,\n props.radialAxis?.tick0,\n props.radialAxis?.tickCount,\n props.radialAxis?.tickFormat,\n props.radialAxis?.tickStep,\n props.radialAxis?.tickText,\n props.radialAxis?.tickValues,\n props.useUTC,\n ],\n );\n\n const aValues = React.useMemo(\n () => chartData.flatMap(series => series.data.map(point => point.theta)),\n [chartData],\n );\n const aScaleType = React.useMemo(\n () =>\n getScaleType(aValues, {\n scaleType: props.angularAxis?.scaleType,\n }),\n [aValues, props.angularAxis?.scaleType],\n );\n const aDomain = React.useMemo(\n () =>\n aScaleType === 'category'\n ? getOrderedACategories()\n : (getContinuousScaleDomain(aScaleType, aValues as number[]) as number[]),\n [getOrderedACategories, aScaleType, aValues],\n );\n const {\n scale: aScale,\n tickValues: aTickValues,\n tickLabels: aTickLabels,\n } = React.useMemo(\n () =>\n createAngularScale(aScaleType, aDomain, {\n tickCount: props.angularAxis?.tickCount,\n tickValues: props.angularAxis?.tickValues,\n tickText: props.angularAxis?.tickText,\n tickFormat: props.angularAxis?.tickFormat,\n culture: props.culture,\n tickStep: props.angularAxis?.tickStep,\n tick0: props.angularAxis?.tick0,\n direction: props.direction,\n unit: props.angularAxis?.unit,\n }),\n [\n aScaleType,\n aDomain,\n props.angularAxis?.tick0,\n props.angularAxis?.tickCount,\n props.angularAxis?.tickFormat,\n props.angularAxis?.tickStep,\n props.angularAxis?.tickText,\n props.angularAxis?.tickValues,\n props.angularAxis?.unit,\n props.culture,\n props.direction,\n ],\n );\n\n const classes = usePolarChartStyles(props);\n\n const renderPolarGrid = React.useCallback(() => {\n const extRTickValues = [];\n const rDomain = rScale.domain();\n if (innerRadius > 0 && rDomain[0] !== rTickValues[0]) {\n extRTickValues.push(rDomain[0]);\n }\n extRTickValues.push(...rTickValues);\n if (rDomain[rDomain.length - 1] !== rTickValues[rTickValues.length - 1]) {\n extRTickValues.push(rDomain[rDomain.length - 1]);\n }\n\n return (\n <g>\n <g>\n {extRTickValues.map((r, rIndex) => {\n const className = rIndex === extRTickValues.length - 1 ? classes.gridLineOuter : classes.gridLineInner;\n\n if (props.shape === 'polygon') {\n let d = '';\n aTickValues.forEach((a, aIndex) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const radialPoint = d3PointRadial(aScale(a), rScale(r as any)!);\n d += (aIndex === 0 ? 'M' : 'L') + radialPoint.join(',') + ' ';\n });\n d += 'Z';\n\n return <path key={rIndex} d={d} className={className} />;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return <circle key={rIndex} cx={0} cy={0} r={rScale(r as any)} className={className} />;\n })}\n </g>\n <g>\n {aTickValues.map((a, aIndex) => {\n const radialPoint1 = d3PointRadial(aScale(a), innerRadius);\n const radialPoint2 = d3PointRadial(aScale(a), outerRadius);\n\n return (\n <path\n key={aIndex}\n d={`M${radialPoint1.join(',')} L${radialPoint2.join(',')}`}\n className={classes.gridLineInner}\n />\n );\n })}\n </g>\n </g>\n );\n }, [\n innerRadius,\n outerRadius,\n rTickValues,\n aTickValues,\n rScale,\n aScale,\n props.shape,\n classes.gridLineInner,\n classes.gridLineOuter,\n ]);\n\n const renderPolarTicks = React.useCallback(() => {\n const radialAxisAngle = props.direction === 'clockwise' ? 0 : Math.PI / 2;\n const radialAxisStartPoint = d3PointRadial(radialAxisAngle, innerRadius);\n const radialAxisEndPoint = d3PointRadial(radialAxisAngle, outerRadius);\n // (0, pi]\n const sign = radialAxisAngle > EPSILON && radialAxisAngle - Math.PI < EPSILON ? 1 : -1;\n\n return (\n <g>\n <g>\n <path\n d={`M${radialAxisStartPoint.join(',')} L${radialAxisEndPoint.join(',')}`}\n className={classes.gridLineOuter}\n />\n {rTickValues.map((r, rIndex) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [pointX, pointY] = d3PointRadial(radialAxisAngle, rScale(r as any)!);\n return (\n <g key={rIndex}>\n <path\n d={`M${pointX},${pointY} L${pointX + TICK_SIZE * Math.cos(radialAxisAngle) * sign},${\n pointY + TICK_SIZE * Math.sin(radialAxisAngle) * sign\n }`}\n className={classes.gridLineOuter}\n />\n <text\n x={pointX + (TICK_SIZE + LABEL_OFFSET) * Math.cos(radialAxisAngle) * sign}\n y={pointY + (TICK_SIZE + LABEL_OFFSET) * Math.sin(radialAxisAngle) * sign}\n textAnchor={\n // pi/2 or 3pi/2\n Math.abs(radialAxisAngle - Math.PI / 2) < EPSILON ||\n Math.abs(radialAxisAngle - (3 * Math.PI) / 2) < EPSILON\n ? 'middle'\n : // (0, pi/2) or (pi, 3pi/2)\n (radialAxisAngle > EPSILON && radialAxisAngle - Math.PI / 2 < -EPSILON) ||\n (radialAxisAngle - Math.PI > EPSILON && radialAxisAngle - (3 * Math.PI) / 2 < -EPSILON)\n ? 'start'\n : 'end'\n }\n dominantBaseline=\"middle\"\n aria-hidden={true}\n className={classes.tickLabel}\n >\n {rTickLabels[rIndex]}\n </text>\n </g>\n );\n })}\n </g>\n <g>\n {aTickValues.map((a, aIndex) => {\n const angle = aScale(a);\n const [pointX, pointY] = d3PointRadial(angle, outerRadius + LABEL_OFFSET);\n\n return (\n <text\n key={aIndex}\n x={pointX}\n y={pointY}\n textAnchor={\n Math.abs(angle) < EPSILON || Math.abs(angle - Math.PI) < EPSILON\n ? 'middle'\n : angle > Math.PI\n ? 'end'\n : 'start'\n }\n dominantBaseline=\"middle\"\n aria-hidden={true}\n className={classes.tickLabel}\n >\n {aTickLabels[aIndex]}\n </text>\n );\n })}\n </g>\n </g>\n );\n }, [\n rTickValues,\n aTickValues,\n rScale,\n aScale,\n outerRadius,\n classes.gridLineOuter,\n classes.tickLabel,\n aTickLabels,\n innerRadius,\n rTickLabels,\n props.direction,\n ]);\n\n const getActiveLegends = React.useCallback(() => {\n return selectedLegends.length > 0 ? selectedLegends : hoveredLegend ? [hoveredLegend] : [];\n }, [selectedLegends, hoveredLegend]);\n\n const legendHighlighted = React.useCallback(\n (legendTitle: string) => {\n const activeLegends = getActiveLegends();\n return activeLegends.includes(legendTitle) || activeLegends.length === 0;\n },\n [getActiveLegends],\n );\n\n const renderRadialArea = React.useCallback(\n (series: AreaPolarSeries) => {\n const radialArea = d3AreaRadial<PolarDataPoint>()\n .angle(d => aScale(d.theta))\n .innerRadius(innerRadius)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .outerRadius(d => rScale(d.r as any)!)\n .curve(getCurveFactory(series.lineOptions?.curve, d3CurveLinearClosed))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .defined(d => isPlottable(aScale(d.theta), rScale(d.r as any)));\n const shouldHighlight = legendHighlighted(series.legend);\n\n return (\n <path\n d={radialArea(series.data)!}\n fill={series.color}\n fillOpacity={shouldHighlight ? 0.7 : 0.1}\n pointerEvents=\"none\"\n />\n );\n },\n [innerRadius, rScale, aScale, legendHighlighted],\n );\n\n const renderRadialLine = React.useCallback(\n (series: AreaPolarSeries | LinePolarSeries) => {\n const radialLine = d3LineRadial<PolarDataPoint>()\n .angle(d => aScale(d.theta))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .radius(d => rScale(d.r as any)!)\n .curve(getCurveFactory(series.lineOptions?.curve))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .defined(d => isPlottable(aScale(d.theta), rScale(d.r as any)));\n\n return (\n <path\n d={radialLine(series.data)!}\n fill=\"none\"\n stroke={series.color}\n strokeOpacity={legendHighlighted(series.legend) ? 1 : 0.1}\n strokeWidth={series.lineOptions?.strokeWidth ?? 3}\n strokeDasharray={series.lineOptions?.strokeDasharray}\n strokeDashoffset={series.lineOptions?.strokeDashoffset}\n strokeLinecap={series.lineOptions?.strokeLinecap}\n pointerEvents=\"none\"\n />\n );\n },\n [rScale, aScale, legendHighlighted],\n );\n\n const [minMarkerSize, maxMarkerSize] = React.useMemo(\n () => d3Extent<number>(chartData.flatMap(series => series.data.map(point => point.markerSize as number))),\n [chartData],\n );\n\n const showPopover = React.useCallback(\n (\n event: React.MouseEvent<SVGElement> | React.FocusEvent<SVGElement>,\n point: PolarDataPoint,\n pointId: string,\n legend: string,\n ) => {\n setPopoverTarget(event.currentTarget);\n setPopoverOpen(legendHighlighted(legend));\n setPopoverXValue(point.angularAxisCalloutData ?? formatAngle(point.theta, props.angularAxis?.unit));\n setPopoverLegend(legend);\n setPopoverColor(point.color!);\n setPopoverYValue(\n point.radialAxisCalloutData ?? (formatToLocaleString(point.r, props.culture, props.useUTC) as string),\n );\n setActivePoint(pointId);\n },\n [legendHighlighted, props.angularAxis?.unit, props.culture, props.useUTC],\n );\n\n const hidePopover = React.useCallback(() => {\n setPopoverOpen(false);\n setActivePoint('');\n }, []);\n\n const markersOnlyMode = React.useMemo(\n () => chartData.filter(s => s.type === 'areapolar' || s.type === 'linepolar').length === 0,\n [chartData],\n );\n\n const renderRadialPoints = React.useCallback(\n (series: AreaPolarSeries | LinePolarSeries | ScatterPolarSeries, seriesIndex: number) => {\n const shouldHighlight = legendHighlighted(series.legend);\n return (\n <g>\n {series.data.map((point, pointIndex) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (!isPlottable(aScale(point.theta), rScale(point.r as any))) {\n return null;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [x, y] = d3PointRadial(aScale(point.theta), rScale(point.r as any)!);\n const id = `${seriesIndex}-${pointIndex}`;\n const isActive = activePoint === id;\n const minPx = markersOnlyMode ? MIN_MARKER_SIZE_PX_MARKERS_ONLY : MIN_MARKER_SIZE_PX;\n let radius = minPx;\n if (typeof point.markerSize !== 'undefined' && minMarkerSize !== maxMarkerSize) {\n radius =\n minPx +\n ((point.markerSize - minMarkerSize!) / (maxMarkerSize! - minMarkerSize!)) *\n (MAX_MARKER_SIZE_PX - minPx);\n }\n\n const xValue =\n point.radialAxisCalloutData || (formatToLocaleString(point.r, props.culture, props.useUTC) as string);\n const legend = series.legend;\n const yValue = point.angularAxisCalloutData || formatAngle(point.theta, props.angularAxis?.unit);\n const ariaLabel = point.callOutAccessibilityData?.ariaLabel || `${xValue}. ${legend}, ${yValue}.`;\n\n return (\n <circle\n key={pointIndex}\n cx={x}\n cy={y}\n r={radius}\n fill={isActive ? tokens.colorNeutralBackground1 : point.color}\n stroke={isActive ? point.color : 'none'}\n strokeWidth={isActive ? 2 : 0}\n opacity={shouldHighlight ? 1 : 0.1}\n tabIndex={shouldHighlight ? 0 : -1}\n onMouseOver={e => showPopover(e, point, id, series.legend)}\n onFocus={e => showPopover(e, point, id, series.legend)}\n role=\"img\"\n aria-label={ariaLabel}\n />\n );\n })}\n </g>\n );\n },\n [\n legendHighlighted,\n rScale,\n aScale,\n activePoint,\n showPopover,\n minMarkerSize,\n maxMarkerSize,\n markersOnlyMode,\n props.angularAxis?.unit,\n props.culture,\n props.useUTC,\n ],\n );\n\n const onLegendSelectionChange = React.useCallback(\n (_selectedLegends: string[], event: React.MouseEvent<HTMLButtonElement>, currentLegend?: Legend) => {\n if (props.legendProps?.canSelectMultipleLegends) {\n setSelectedLegends(_selectedLegends);\n } else {\n setSelectedLegends(_selectedLegends.slice(-1));\n }\n if (props.legendProps?.onChange) {\n props.legendProps.onChange(_selectedLegends, event, currentLegend);\n }\n },\n [props.legendProps],\n );\n\n const renderLegends = React.useCallback(() => {\n if (props.hideLegend) {\n return null;\n }\n\n const legends: Legend[] = Object.keys(legendColorMap.current).map(legendTitle => {\n return {\n title: legendTitle,\n color: legendColorMap.current[legendTitle],\n hoverAction: () => {\n setHoveredLegend(legendTitle);\n },\n onMouseOutAction: () => {\n setHoveredLegend('');\n },\n };\n });\n\n return (\n <div ref={legendContainerRef} className={classes.legendContainer}>\n <Legends\n legends={legends}\n centerLegends\n onChange={onLegendSelectionChange}\n legendRef={legendsRef}\n {...props.legendProps}\n />\n </div>\n );\n }, [props.hideLegend, props.legendProps, legendsRef, onLegendSelectionChange, classes.legendContainer]);\n\n const focusAttributes = useArrowNavigationGroup({ axis: 'horizontal' });\n\n return (\n <div className={classes.root} ref={chartContainerRef} onMouseLeave={hidePopover} onBlur={hidePopover}>\n <div className={classes.chartWrapper} {...focusAttributes}>\n <svg\n className={classes.chart}\n width={svgWidth}\n height={svgHeight}\n viewBox={`${-svgWidth / 2} ${-svgHeight / 2} ${svgWidth} ${svgHeight}`}\n role=\"region\"\n aria-label={\n (props.chartTitle ? `${props.chartTitle}. ` : '') + `Polar chart with ${chartData.length} data series.`\n }\n >\n {renderPolarGrid()}\n <g>\n {chartData.map((series, seriesIndex) => {\n return (\n <g\n key={seriesIndex}\n role=\"region\"\n aria-label={`${series.legend}, series ${seriesIndex + 1} of ${chartData.length} with ${\n series.data.length\n } data points.`}\n >\n {series.type === 'areapolar' && renderRadialArea(series)}\n {(series.type === 'areapolar' || series.type === 'linepolar') && renderRadialLine(series)}\n {renderRadialPoints(series, seriesIndex)}\n </g>\n );\n })}\n </g>\n {renderPolarTicks()}\n </svg>\n </div>\n {renderLegends()}\n {!props.hideTooltip && (\n <ChartPopover\n isPopoverOpen={isPopoverOpen}\n positioning={{\n target: popoverTarget,\n }}\n XValue={popoverXValue}\n legend={popoverLegend}\n color={popoverColor}\n YValue={popoverYValue}\n />\n )}\n </div>\n );\n },\n);\n\nPolarChart.displayName = 'PolarChart';\n"],"names":["React","usePolarChartStyles","useImageExport","pointRadial","d3PointRadial","areaRadial","d3AreaRadial","lineRadial","d3LineRadial","curveLinearClosed","d3CurveLinearClosed","tokens","Legends","createRadialScale","getContinuousScaleDomain","getScaleType","EPSILON","createAngularScale","formatAngle","ChartPopover","getColorFromToken","getCurveFactory","getNextColor","isPlottable","sortAxisCategories","extent","d3Extent","useArrowNavigationGroup","formatToLocaleString","useFluent_unstable","useFluent","DEFAULT_LEGEND_HEIGHT","LABEL_WIDTH","LABEL_HEIGHT","LABEL_OFFSET","TICK_SIZE","MIN_MARKER_SIZE_PX","MAX_MARKER_SIZE_PX","MIN_MARKER_SIZE_PX_MARKERS_ONLY","PolarChart","forwardRef","props","forwardedRef","chartContainerRef","legendsRef","componentRef","hideLegend","legendContainerRef","useRef","targetDocument","_window","defaultView","containerWidth","setContainerWidth","useState","containerHeight","setContainerHeight","legendContainerHeight","setLegendContainerHeight","isPopoverOpen","setPopoverOpen","popoverTarget","setPopoverTarget","popoverXValue","setPopoverXValue","popoverLegend","setPopoverLegend","popoverColor","setPopoverColor","popoverYValue","setPopoverYValue","hoveredLegend","setHoveredLegend","selectedLegends","setSelectedLegends","legendProps","activePoint","setActivePoint","useEffect","current","width","height","getBoundingClientRect","marginTop","getComputedStyle","Math","max","parseFloat","margins","useMemo","left","right","top","bottom","svgWidth","svgHeight","outerRadius","min","innerRadius","abs","hole","legendColorMap","chartData","colorIndex","renderingOrder","data","map","series","seriesColor","color","legend","point","sort","a","b","indexOf","type","mapCategoryToValues","useCallback","isAngularAxis","categoryToValues","forEach","category","theta","r","value","push","getOrderedRCategories","radialAxis","categoryOrder","getOrderedACategories","angularAxis","rValues","flatMap","rScaleType","scaleType","supportsLog","rScaleDomain","rangeStart","rangeEnd","scale","rScale","tickValues","rTickValues","tickLabels","rTickLabels","useUTC","tickCount","tickText","tickFormat","culture","tickStep","tick0","dateLocalizeOptions","aValues","aScaleType","aDomain","aScale","aTickValues","aTickLabels","direction","unit","classes","renderPolarGrid","extRTickValues","rDomain","domain","length","g","rIndex","className","gridLineOuter","gridLineInner","shape","d","aIndex","radialPoint","join","path","key","circle","cx","cy","radialPoint1","radialPoint2","renderPolarTicks","radialAxisAngle","PI","radialAxisStartPoint","radialAxisEndPoint","sign","pointX","pointY","cos","sin","text","x","y","textAnchor","dominantBaseline","aria-hidden","tickLabel","angle","getActiveLegends","legendHighlighted","legendTitle","activeLegends","includes","renderRadialArea","radialArea","curve","lineOptions","defined","shouldHighlight","fill","fillOpacity","pointerEvents","renderRadialLine","radialLine","radius","stroke","strokeOpacity","strokeWidth","strokeDasharray","strokeDashoffset","strokeLinecap","minMarkerSize","maxMarkerSize","markerSize","showPopover","event","pointId","currentTarget","angularAxisCalloutData","radialAxisCalloutData","hidePopover","markersOnlyMode","filter","s","renderRadialPoints","seriesIndex","pointIndex","id","isActive","minPx","xValue","yValue","ariaLabel","callOutAccessibilityData","colorNeutralBackground1","opacity","tabIndex","onMouseOver","e","onFocus","role","aria-label","onLegendSelectionChange","_selectedLegends","currentLegend","canSelectMultipleLegends","slice","onChange","renderLegends","legends","Object","keys","title","hoverAction","onMouseOutAction","div","ref","legendContainer","centerLegends","legendRef","focusAttributes","axis","root","onMouseLeave","onBlur","chartWrapper","svg","chart","viewBox","chartTitle","hideTooltip","positioning","target","XValue","YValue","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../src/components/PolarChart/PolarChart.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { PolarChartProps } from './PolarChart.types';\nimport { usePolarChartStyles } from './usePolarChartStyles.styles';\nimport { useImageExport } from '../../utilities/hooks';\nimport {\n pointRadial as d3PointRadial,\n areaRadial as d3AreaRadial,\n lineRadial as d3LineRadial,\n curveLinearClosed as d3CurveLinearClosed,\n} from 'd3-shape';\nimport { AreaPolarSeries, LinePolarSeries, PolarDataPoint, ScatterPolarSeries } from '../../types/DataPoint';\nimport { tokens } from '@fluentui/react-theme';\nimport { Legend, Legends } from '../Legends/index';\nimport {\n createRadialScale,\n getContinuousScaleDomain,\n getScaleType,\n EPSILON,\n createAngularScale,\n formatAngle,\n} from './PolarChart.utils';\nimport { ChartPopover } from '../CommonComponents/ChartPopover';\nimport {\n getColorFromToken,\n getCurveFactory,\n getNextColor,\n isPlottable,\n sortAxisCategories,\n} from '../../utilities/index';\nimport { extent as d3Extent } from 'd3-array';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\nimport { formatToLocaleString } from '@fluentui/chart-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\n\nconst DEFAULT_LEGEND_HEIGHT = 32;\nconst LABEL_WIDTH = 36;\nconst LABEL_HEIGHT = 16;\nconst LABEL_OFFSET = 10;\nconst TICK_SIZE = 6;\nconst MIN_MARKER_SIZE_PX = 2;\nconst MAX_MARKER_SIZE_PX = 16;\nconst MIN_MARKER_SIZE_PX_MARKERS_ONLY = 4;\n\nexport const PolarChart: React.FunctionComponent<PolarChartProps> = React.forwardRef<HTMLDivElement, PolarChartProps>(\n (props, forwardedRef) => {\n const { chartContainerRef, legendsRef } = useImageExport(props.componentRef, props.hideLegend, false);\n const legendContainerRef = React.useRef<HTMLDivElement>(null);\n const { targetDocument } = useFluent();\n const _window = targetDocument?.defaultView;\n\n const [containerWidth, setContainerWidth] = React.useState<number>(200);\n const [containerHeight, setContainerHeight] = React.useState<number>(200);\n const [legendContainerHeight, setLegendContainerHeight] = React.useState<number>(\n props.hideLegend ? 0 : DEFAULT_LEGEND_HEIGHT,\n );\n const [isPopoverOpen, setPopoverOpen] = React.useState<boolean>(false);\n const [popoverTarget, setPopoverTarget] = React.useState<SVGElement | null>(null);\n const [popoverXValue, setPopoverXValue] = React.useState<string>('');\n const [popoverLegend, setPopoverLegend] = React.useState<string>('');\n const [popoverColor, setPopoverColor] = React.useState<string>('');\n const [popoverYValue, setPopoverYValue] = React.useState<string>('');\n const [hoveredLegend, setHoveredLegend] = React.useState<string>('');\n const [selectedLegends, setSelectedLegends] = React.useState<string[]>(props.legendProps?.selectedLegends || []);\n const [activePoint, setActivePoint] = React.useState<string>('');\n\n React.useEffect(() => {\n if (chartContainerRef.current) {\n const { width, height } = chartContainerRef.current.getBoundingClientRect();\n setContainerWidth(width);\n setContainerHeight(height);\n }\n }, [chartContainerRef]);\n React.useEffect(() => {\n if (props.hideLegend) {\n setLegendContainerHeight(0);\n } else if (legendContainerRef.current) {\n const { height } = legendContainerRef.current.getBoundingClientRect();\n const marginTop = _window?.getComputedStyle(legendContainerRef.current).marginTop || '0px';\n setLegendContainerHeight(Math.max(height, DEFAULT_LEGEND_HEIGHT) + parseFloat(marginTop));\n }\n }, [props.hideLegend, _window]);\n\n React.useEffect(() => {\n setSelectedLegends(props.legendProps?.selectedLegends || []);\n }, [props.legendProps?.selectedLegends]);\n\n const margins = React.useMemo(\n () => ({\n left: LABEL_OFFSET + LABEL_WIDTH,\n right: LABEL_OFFSET + LABEL_WIDTH,\n top: LABEL_OFFSET + LABEL_HEIGHT,\n bottom: LABEL_OFFSET + LABEL_HEIGHT,\n ...props.margins,\n }),\n [props.margins],\n );\n\n const svgWidth = React.useMemo(() => props.width || containerWidth, [props.width, containerWidth]);\n const svgHeight = React.useMemo(\n () => (props.height || containerHeight) - legendContainerHeight,\n [props.height, containerHeight, legendContainerHeight],\n );\n const outerRadius = React.useMemo(\n () => Math.min(svgWidth - (margins.left + margins.right), svgHeight - (margins.top + margins.bottom)) / 2,\n [svgWidth, svgHeight, margins],\n );\n const innerRadius = React.useMemo(\n () => Math.max(0, Math.min(Math.abs(props.hole || 0), 1)) * outerRadius,\n [props.hole, outerRadius],\n );\n\n const legendColorMap = React.useRef<Record<string, string>>({});\n const chartData = React.useMemo(() => {\n legendColorMap.current = {};\n let colorIndex = 0;\n const renderingOrder = ['areapolar', 'linepolar', 'scatterpolar'];\n\n return props.data\n .map(series => {\n const seriesColor = series.color ? getColorFromToken(series.color) : getNextColor(colorIndex++, 0);\n if (!(series.legend in legendColorMap.current)) {\n legendColorMap.current[series.legend] = seriesColor;\n }\n\n return {\n ...series,\n color: seriesColor,\n data: series.data.map(point => {\n return {\n ...point,\n color: point.color ? getColorFromToken(point.color) : seriesColor,\n };\n }),\n };\n })\n .sort((a, b) => {\n return renderingOrder.indexOf(a.type) - renderingOrder.indexOf(b.type);\n });\n }, [props.data]);\n\n const mapCategoryToValues = React.useCallback(\n (isAngularAxis?: boolean) => {\n const categoryToValues: Record<string, number[]> = {};\n chartData.forEach(series => {\n series.data.forEach(point => {\n const category = (isAngularAxis ? point.theta : point.r) as string;\n if (!categoryToValues[category]) {\n categoryToValues[category] = [];\n }\n const value = isAngularAxis ? point.r : point.theta;\n if (typeof value === 'number') {\n categoryToValues[category].push(value);\n }\n });\n });\n return categoryToValues;\n },\n [chartData],\n );\n\n const getOrderedRCategories = React.useCallback(() => {\n return sortAxisCategories(mapCategoryToValues(), props.radialAxis?.categoryOrder);\n }, [mapCategoryToValues, props.radialAxis?.categoryOrder]);\n\n const getOrderedACategories = React.useCallback(() => {\n return sortAxisCategories(mapCategoryToValues(true), props.angularAxis?.categoryOrder);\n }, [mapCategoryToValues, props.angularAxis?.categoryOrder]);\n\n const rValues = React.useMemo(() => chartData.flatMap(series => series.data.map(point => point.r)), [chartData]);\n const rScaleType = React.useMemo(\n () =>\n getScaleType(rValues, {\n scaleType: props.radialAxis?.scaleType,\n supportsLog: true,\n }),\n [rValues, props.radialAxis?.scaleType],\n );\n const rScaleDomain = React.useMemo(\n () =>\n rScaleType === 'category'\n ? getOrderedRCategories()\n : getContinuousScaleDomain(rScaleType, rValues as (number | Date)[], {\n rangeStart: props.radialAxis?.rangeStart,\n rangeEnd: props.radialAxis?.rangeEnd,\n }),\n [getOrderedRCategories, rScaleType, rValues, props.radialAxis?.rangeStart, props.radialAxis?.rangeEnd],\n );\n const {\n scale: rScale,\n tickValues: rTickValues,\n tickLabels: rTickLabels,\n } = React.useMemo(\n () =>\n createRadialScale(rScaleType, rScaleDomain, [innerRadius, outerRadius], {\n useUTC: props.useUTC,\n tickCount: props.radialAxis?.tickCount,\n tickValues: props.radialAxis?.tickValues,\n tickText: props.radialAxis?.tickText,\n tickFormat: props.radialAxis?.tickFormat,\n culture: props.culture,\n tickStep: props.radialAxis?.tickStep,\n tick0: props.radialAxis?.tick0,\n dateLocalizeOptions: props.dateLocalizeOptions,\n }),\n [\n rScaleType,\n rScaleDomain,\n innerRadius,\n outerRadius,\n props.culture,\n props.dateLocalizeOptions,\n props.radialAxis?.tick0,\n props.radialAxis?.tickCount,\n props.radialAxis?.tickFormat,\n props.radialAxis?.tickStep,\n props.radialAxis?.tickText,\n props.radialAxis?.tickValues,\n props.useUTC,\n ],\n );\n\n const aValues = React.useMemo(\n () => chartData.flatMap(series => series.data.map(point => point.theta)),\n [chartData],\n );\n const aScaleType = React.useMemo(\n () =>\n getScaleType(aValues, {\n scaleType: props.angularAxis?.scaleType,\n }),\n [aValues, props.angularAxis?.scaleType],\n );\n const aDomain = React.useMemo(\n () =>\n aScaleType === 'category'\n ? getOrderedACategories()\n : (getContinuousScaleDomain(aScaleType, aValues as number[]) as number[]),\n [getOrderedACategories, aScaleType, aValues],\n );\n const {\n scale: aScale,\n tickValues: aTickValues,\n tickLabels: aTickLabels,\n } = React.useMemo(\n () =>\n createAngularScale(aScaleType, aDomain, {\n tickCount: props.angularAxis?.tickCount,\n tickValues: props.angularAxis?.tickValues,\n tickText: props.angularAxis?.tickText,\n tickFormat: props.angularAxis?.tickFormat,\n culture: props.culture,\n tickStep: props.angularAxis?.tickStep,\n tick0: props.angularAxis?.tick0,\n direction: props.direction,\n unit: props.angularAxis?.unit,\n }),\n [\n aScaleType,\n aDomain,\n props.angularAxis?.tick0,\n props.angularAxis?.tickCount,\n props.angularAxis?.tickFormat,\n props.angularAxis?.tickStep,\n props.angularAxis?.tickText,\n props.angularAxis?.tickValues,\n props.angularAxis?.unit,\n props.culture,\n props.direction,\n ],\n );\n\n const classes = usePolarChartStyles(props);\n\n const renderPolarGrid = React.useCallback(() => {\n const extRTickValues = [];\n const rDomain = rScale.domain();\n if (innerRadius > 0 && rDomain[0] !== rTickValues[0]) {\n extRTickValues.push(rDomain[0]);\n }\n extRTickValues.push(...rTickValues);\n if (rDomain[rDomain.length - 1] !== rTickValues[rTickValues.length - 1]) {\n extRTickValues.push(rDomain[rDomain.length - 1]);\n }\n\n return (\n <g>\n <g>\n {extRTickValues.map((r, rIndex) => {\n const className = rIndex === extRTickValues.length - 1 ? classes.gridLineOuter : classes.gridLineInner;\n\n if (props.shape === 'polygon') {\n let d = '';\n aTickValues.forEach((a, aIndex) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const radialPoint = d3PointRadial(aScale(a), rScale(r as any)!);\n d += (aIndex === 0 ? 'M' : 'L') + radialPoint.join(',') + ' ';\n });\n d += 'Z';\n\n return <path key={rIndex} d={d} className={className} />;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return <circle key={rIndex} cx={0} cy={0} r={rScale(r as any)} className={className} />;\n })}\n </g>\n <g>\n {aTickValues.map((a, aIndex) => {\n const radialPoint1 = d3PointRadial(aScale(a), innerRadius);\n const radialPoint2 = d3PointRadial(aScale(a), outerRadius);\n\n return (\n <path\n key={aIndex}\n d={`M${radialPoint1.join(',')} L${radialPoint2.join(',')}`}\n className={classes.gridLineInner}\n />\n );\n })}\n </g>\n </g>\n );\n }, [\n innerRadius,\n outerRadius,\n rTickValues,\n aTickValues,\n rScale,\n aScale,\n props.shape,\n classes.gridLineInner,\n classes.gridLineOuter,\n ]);\n\n const renderPolarTicks = React.useCallback(() => {\n const radialAxisAngle = props.direction === 'clockwise' ? 0 : Math.PI / 2;\n const radialAxisStartPoint = d3PointRadial(radialAxisAngle, innerRadius);\n const radialAxisEndPoint = d3PointRadial(radialAxisAngle, outerRadius);\n // (0, pi]\n const sign = radialAxisAngle > EPSILON && radialAxisAngle - Math.PI < EPSILON ? 1 : -1;\n\n return (\n <g>\n <g>\n <path\n d={`M${radialAxisStartPoint.join(',')} L${radialAxisEndPoint.join(',')}`}\n className={classes.gridLineOuter}\n />\n {rTickValues.map((r, rIndex) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [pointX, pointY] = d3PointRadial(radialAxisAngle, rScale(r as any)!);\n return (\n <g key={rIndex}>\n <path\n d={`M${pointX},${pointY} L${pointX + TICK_SIZE * Math.cos(radialAxisAngle) * sign},${\n pointY + TICK_SIZE * Math.sin(radialAxisAngle) * sign\n }`}\n className={classes.gridLineOuter}\n />\n <text\n x={pointX + (TICK_SIZE + LABEL_OFFSET) * Math.cos(radialAxisAngle) * sign}\n y={pointY + (TICK_SIZE + LABEL_OFFSET) * Math.sin(radialAxisAngle) * sign}\n textAnchor={\n // pi/2 or 3pi/2\n Math.abs(radialAxisAngle - Math.PI / 2) < EPSILON ||\n Math.abs(radialAxisAngle - (3 * Math.PI) / 2) < EPSILON\n ? 'middle'\n : // (0, pi/2) or (pi, 3pi/2)\n (radialAxisAngle > EPSILON && radialAxisAngle - Math.PI / 2 < -EPSILON) ||\n (radialAxisAngle - Math.PI > EPSILON && radialAxisAngle - (3 * Math.PI) / 2 < -EPSILON)\n ? 'start'\n : 'end'\n }\n dominantBaseline=\"middle\"\n aria-hidden={true}\n className={classes.tickLabel}\n >\n {rTickLabels[rIndex]}\n </text>\n </g>\n );\n })}\n </g>\n <g>\n {aTickValues.map((a, aIndex) => {\n const angle = aScale(a);\n const [pointX, pointY] = d3PointRadial(angle, outerRadius + LABEL_OFFSET);\n\n return (\n <text\n key={aIndex}\n x={pointX}\n y={pointY}\n textAnchor={\n Math.abs(angle) < EPSILON || Math.abs(angle - Math.PI) < EPSILON\n ? 'middle'\n : angle > Math.PI\n ? 'end'\n : 'start'\n }\n dominantBaseline=\"middle\"\n aria-hidden={true}\n className={classes.tickLabel}\n >\n {aTickLabels[aIndex]}\n </text>\n );\n })}\n </g>\n </g>\n );\n }, [\n rTickValues,\n aTickValues,\n rScale,\n aScale,\n outerRadius,\n classes.gridLineOuter,\n classes.tickLabel,\n aTickLabels,\n innerRadius,\n rTickLabels,\n props.direction,\n ]);\n\n const getActiveLegends = React.useCallback(() => {\n return selectedLegends.length > 0 ? selectedLegends : hoveredLegend ? [hoveredLegend] : [];\n }, [selectedLegends, hoveredLegend]);\n\n const legendHighlighted = React.useCallback(\n (legendTitle: string) => {\n const activeLegends = getActiveLegends();\n return activeLegends.includes(legendTitle) || activeLegends.length === 0;\n },\n [getActiveLegends],\n );\n\n const renderRadialArea = React.useCallback(\n (series: AreaPolarSeries) => {\n const radialArea = d3AreaRadial<PolarDataPoint>()\n .angle(d => aScale(d.theta))\n .innerRadius(innerRadius)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .outerRadius(d => rScale(d.r as any)!)\n .curve(getCurveFactory(series.lineOptions?.curve, d3CurveLinearClosed))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .defined(d => isPlottable(aScale(d.theta), rScale(d.r as any)));\n const shouldHighlight = legendHighlighted(series.legend);\n\n return (\n <path\n d={radialArea(series.data)!}\n fill={series.color}\n fillOpacity={shouldHighlight ? 0.7 : 0.1}\n pointerEvents=\"none\"\n />\n );\n },\n [innerRadius, rScale, aScale, legendHighlighted],\n );\n\n const renderRadialLine = React.useCallback(\n (series: AreaPolarSeries | LinePolarSeries) => {\n const radialLine = d3LineRadial<PolarDataPoint>()\n .angle(d => aScale(d.theta))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .radius(d => rScale(d.r as any)!)\n .curve(getCurveFactory(series.lineOptions?.curve))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .defined(d => isPlottable(aScale(d.theta), rScale(d.r as any)));\n\n return (\n <path\n d={radialLine(series.data)!}\n fill=\"none\"\n stroke={series.color}\n strokeOpacity={legendHighlighted(series.legend) ? 1 : 0.1}\n strokeWidth={series.lineOptions?.strokeWidth ?? 3}\n strokeDasharray={series.lineOptions?.strokeDasharray}\n strokeDashoffset={series.lineOptions?.strokeDashoffset}\n strokeLinecap={series.lineOptions?.strokeLinecap}\n pointerEvents=\"none\"\n />\n );\n },\n [rScale, aScale, legendHighlighted],\n );\n\n const [minMarkerSize, maxMarkerSize] = React.useMemo(\n () => d3Extent<number>(chartData.flatMap(series => series.data.map(point => point.markerSize as number))),\n [chartData],\n );\n\n const showPopover = React.useCallback(\n (\n event: React.MouseEvent<SVGElement> | React.FocusEvent<SVGElement>,\n point: PolarDataPoint,\n pointId: string,\n legend: string,\n ) => {\n setPopoverTarget(event.currentTarget);\n setPopoverOpen(legendHighlighted(legend));\n setPopoverXValue(point.angularAxisCalloutData ?? formatAngle(point.theta, props.angularAxis?.unit));\n setPopoverLegend(legend);\n setPopoverColor(point.color!);\n setPopoverYValue(\n point.radialAxisCalloutData ?? (formatToLocaleString(point.r, props.culture, props.useUTC) as string),\n );\n setActivePoint(pointId);\n },\n [legendHighlighted, props.angularAxis?.unit, props.culture, props.useUTC],\n );\n\n const hidePopover = React.useCallback(() => {\n setPopoverOpen(false);\n setActivePoint('');\n }, []);\n\n const markersOnlyMode = React.useMemo(\n () => chartData.filter(s => s.type === 'areapolar' || s.type === 'linepolar').length === 0,\n [chartData],\n );\n\n const renderRadialPoints = React.useCallback(\n (series: AreaPolarSeries | LinePolarSeries | ScatterPolarSeries, seriesIndex: number) => {\n const shouldHighlight = legendHighlighted(series.legend);\n return (\n <g>\n {series.data.map((point, pointIndex) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (!isPlottable(aScale(point.theta), rScale(point.r as any))) {\n return null;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [x, y] = d3PointRadial(aScale(point.theta), rScale(point.r as any)!);\n const id = `${seriesIndex}-${pointIndex}`;\n const isActive = activePoint === id;\n const minPx = markersOnlyMode ? MIN_MARKER_SIZE_PX_MARKERS_ONLY : MIN_MARKER_SIZE_PX;\n let radius = minPx;\n if (typeof point.markerSize !== 'undefined' && minMarkerSize !== maxMarkerSize) {\n radius =\n minPx +\n ((point.markerSize - minMarkerSize!) / (maxMarkerSize! - minMarkerSize!)) *\n (MAX_MARKER_SIZE_PX - minPx);\n }\n\n const xValue =\n point.radialAxisCalloutData || (formatToLocaleString(point.r, props.culture, props.useUTC) as string);\n const legend = series.legend;\n const yValue = point.angularAxisCalloutData || formatAngle(point.theta, props.angularAxis?.unit);\n const ariaLabel = point.callOutAccessibilityData?.ariaLabel || `${xValue}. ${legend}, ${yValue}.`;\n\n return (\n <circle\n key={pointIndex}\n cx={x}\n cy={y}\n r={radius}\n fill={isActive ? tokens.colorNeutralBackground1 : point.color}\n stroke={isActive ? point.color : 'none'}\n strokeWidth={isActive ? 2 : 0}\n opacity={shouldHighlight ? 1 : 0.1}\n tabIndex={shouldHighlight ? 0 : -1}\n onMouseOver={e => showPopover(e, point, id, series.legend)}\n onFocus={e => showPopover(e, point, id, series.legend)}\n role=\"img\"\n aria-label={ariaLabel}\n />\n );\n })}\n </g>\n );\n },\n [\n legendHighlighted,\n rScale,\n aScale,\n activePoint,\n showPopover,\n minMarkerSize,\n maxMarkerSize,\n markersOnlyMode,\n props.angularAxis?.unit,\n props.culture,\n props.useUTC,\n ],\n );\n\n const onLegendSelectionChange = React.useCallback(\n (_selectedLegends: string[], event: React.MouseEvent<HTMLButtonElement>, currentLegend?: Legend) => {\n if (props.legendProps?.canSelectMultipleLegends) {\n setSelectedLegends(_selectedLegends);\n } else {\n setSelectedLegends(_selectedLegends.slice(-1));\n }\n if (props.legendProps?.onChange) {\n props.legendProps.onChange(_selectedLegends, event, currentLegend);\n }\n },\n [props.legendProps],\n );\n\n const renderLegends = React.useCallback(() => {\n if (props.hideLegend) {\n return null;\n }\n\n const legends: Legend[] = Object.keys(legendColorMap.current).map(legendTitle => {\n return {\n title: legendTitle,\n color: legendColorMap.current[legendTitle],\n hoverAction: () => {\n setHoveredLegend(legendTitle);\n },\n onMouseOutAction: () => {\n setHoveredLegend('');\n },\n };\n });\n\n return (\n <div ref={legendContainerRef} className={classes.legendContainer}>\n <Legends\n legends={legends}\n centerLegends\n onChange={onLegendSelectionChange}\n legendRef={legendsRef}\n {...props.legendProps}\n />\n </div>\n );\n }, [props.hideLegend, props.legendProps, legendsRef, onLegendSelectionChange, classes.legendContainer]);\n\n const focusAttributes = useArrowNavigationGroup({ axis: 'horizontal' });\n\n return (\n <div className={classes.root} ref={chartContainerRef} onMouseLeave={hidePopover} onBlur={hidePopover}>\n <div className={classes.chartWrapper} {...focusAttributes}>\n <svg\n className={classes.chart}\n width={svgWidth}\n height={svgHeight}\n role=\"region\"\n aria-label={\n (props.chartTitle ? `${props.chartTitle}. ` : '') + `Polar chart with ${chartData.length} data series.`\n }\n >\n <g transform={`translate(${svgWidth / 2}, ${svgHeight / 2})`}>\n {renderPolarGrid()}\n <g>\n {chartData.map((series, seriesIndex) => {\n return (\n <g\n key={seriesIndex}\n role=\"region\"\n aria-label={`${series.legend}, series ${seriesIndex + 1} of ${chartData.length} with ${\n series.data.length\n } data points.`}\n >\n {series.type === 'areapolar' && renderRadialArea(series)}\n {(series.type === 'areapolar' || series.type === 'linepolar') && renderRadialLine(series)}\n {renderRadialPoints(series, seriesIndex)}\n </g>\n );\n })}\n </g>\n {renderPolarTicks()}\n </g>\n </svg>\n </div>\n {renderLegends()}\n {!props.hideTooltip && (\n <ChartPopover\n isPopoverOpen={isPopoverOpen}\n positioning={{\n target: popoverTarget,\n }}\n XValue={popoverXValue}\n legend={popoverLegend}\n color={popoverColor}\n YValue={popoverYValue}\n />\n )}\n </div>\n );\n },\n);\n\nPolarChart.displayName = 'PolarChart';\n"],"names":["React","usePolarChartStyles","useImageExport","pointRadial","d3PointRadial","areaRadial","d3AreaRadial","lineRadial","d3LineRadial","curveLinearClosed","d3CurveLinearClosed","tokens","Legends","createRadialScale","getContinuousScaleDomain","getScaleType","EPSILON","createAngularScale","formatAngle","ChartPopover","getColorFromToken","getCurveFactory","getNextColor","isPlottable","sortAxisCategories","extent","d3Extent","useArrowNavigationGroup","formatToLocaleString","useFluent_unstable","useFluent","DEFAULT_LEGEND_HEIGHT","LABEL_WIDTH","LABEL_HEIGHT","LABEL_OFFSET","TICK_SIZE","MIN_MARKER_SIZE_PX","MAX_MARKER_SIZE_PX","MIN_MARKER_SIZE_PX_MARKERS_ONLY","PolarChart","forwardRef","props","forwardedRef","chartContainerRef","legendsRef","componentRef","hideLegend","legendContainerRef","useRef","targetDocument","_window","defaultView","containerWidth","setContainerWidth","useState","containerHeight","setContainerHeight","legendContainerHeight","setLegendContainerHeight","isPopoverOpen","setPopoverOpen","popoverTarget","setPopoverTarget","popoverXValue","setPopoverXValue","popoverLegend","setPopoverLegend","popoverColor","setPopoverColor","popoverYValue","setPopoverYValue","hoveredLegend","setHoveredLegend","selectedLegends","setSelectedLegends","legendProps","activePoint","setActivePoint","useEffect","current","width","height","getBoundingClientRect","marginTop","getComputedStyle","Math","max","parseFloat","margins","useMemo","left","right","top","bottom","svgWidth","svgHeight","outerRadius","min","innerRadius","abs","hole","legendColorMap","chartData","colorIndex","renderingOrder","data","map","series","seriesColor","color","legend","point","sort","a","b","indexOf","type","mapCategoryToValues","useCallback","isAngularAxis","categoryToValues","forEach","category","theta","r","value","push","getOrderedRCategories","radialAxis","categoryOrder","getOrderedACategories","angularAxis","rValues","flatMap","rScaleType","scaleType","supportsLog","rScaleDomain","rangeStart","rangeEnd","scale","rScale","tickValues","rTickValues","tickLabels","rTickLabels","useUTC","tickCount","tickText","tickFormat","culture","tickStep","tick0","dateLocalizeOptions","aValues","aScaleType","aDomain","aScale","aTickValues","aTickLabels","direction","unit","classes","renderPolarGrid","extRTickValues","rDomain","domain","length","g","rIndex","className","gridLineOuter","gridLineInner","shape","d","aIndex","radialPoint","join","path","key","circle","cx","cy","radialPoint1","radialPoint2","renderPolarTicks","radialAxisAngle","PI","radialAxisStartPoint","radialAxisEndPoint","sign","pointX","pointY","cos","sin","text","x","y","textAnchor","dominantBaseline","aria-hidden","tickLabel","angle","getActiveLegends","legendHighlighted","legendTitle","activeLegends","includes","renderRadialArea","radialArea","curve","lineOptions","defined","shouldHighlight","fill","fillOpacity","pointerEvents","renderRadialLine","radialLine","radius","stroke","strokeOpacity","strokeWidth","strokeDasharray","strokeDashoffset","strokeLinecap","minMarkerSize","maxMarkerSize","markerSize","showPopover","event","pointId","currentTarget","angularAxisCalloutData","radialAxisCalloutData","hidePopover","markersOnlyMode","filter","s","renderRadialPoints","seriesIndex","pointIndex","id","isActive","minPx","xValue","yValue","ariaLabel","callOutAccessibilityData","colorNeutralBackground1","opacity","tabIndex","onMouseOver","e","onFocus","role","aria-label","onLegendSelectionChange","_selectedLegends","currentLegend","canSelectMultipleLegends","slice","onChange","renderLegends","legends","Object","keys","title","hoverAction","onMouseOutAction","div","ref","legendContainer","centerLegends","legendRef","focusAttributes","axis","root","onMouseLeave","onBlur","chartWrapper","svg","chart","chartTitle","transform","hideTooltip","positioning","target","XValue","YValue","displayName"],"mappings":"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"}
|
|
@@ -361,7 +361,7 @@ export function getDateFormatLevel(date, useUTC) {
|
|
|
361
361
|
if (hideTickOverlap) {
|
|
362
362
|
const longestLabelWidth = calcMaxLabelWidth(xAxisScale.ticks().map(tickFormat)) + 40;
|
|
363
363
|
const [start, end] = xAxisScale.range();
|
|
364
|
-
tickCount = Math.max(1, Math.floor(Math.abs(end - start) / longestLabelWidth));
|
|
364
|
+
tickCount = Math.min(Math.max(1, Math.floor(Math.abs(end - start) / longestLabelWidth)), 10);
|
|
365
365
|
}
|
|
366
366
|
const xAxis = d3AxisBottom(xAxisScale).tickSize(xAxistickSize).tickPadding(tickPadding).ticks(tickCount).tickFormat(tickFormat);
|
|
367
367
|
if ([
|