@semcore/d3-chart 17.2.0 → 17.3.0
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 +12 -0
- package/lib/cjs/Area.js +11 -11
- package/lib/cjs/Axis.js +16 -16
- package/lib/cjs/Bar.js +16 -16
- package/lib/cjs/Bubble.js +14 -14
- package/lib/cjs/CompactHorizontalBar.js +16 -16
- package/lib/cjs/Donut.js +9 -9
- package/lib/cjs/Dots.js +8 -8
- package/lib/cjs/HorizontalBar.js +16 -16
- package/lib/cjs/Hover.js +3 -3
- package/lib/cjs/Line.js +9 -9
- package/lib/cjs/Plot.js +2 -2
- package/lib/cjs/Radar.js +20 -20
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +12 -12
- package/lib/cjs/Reference.js +12 -12
- package/lib/cjs/ScatterPlot.js +9 -9
- package/lib/cjs/Tooltip.js +9 -9
- package/lib/cjs/Venn.js +9 -9
- package/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/lib/cjs/a11y/PlotA11yView.js +2 -2
- package/lib/cjs/a11y/serialize.js +6 -1
- package/lib/cjs/a11y/serialize.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.js +85 -11
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.js +6 -2
- package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.js +8 -4
- package/lib/cjs/component/Chart/BarChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.js +6 -2
- package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +22 -12
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +7 -3
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.js +8 -4
- package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.js +7 -3
- package/lib/cjs/component/Chart/LineChart.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.js +6 -2
- package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/cjs/style/abstract-chart.shadow.css +7 -0
- package/lib/es6/Area.js +11 -11
- package/lib/es6/Axis.js +16 -16
- package/lib/es6/Bar.js +16 -16
- package/lib/es6/Bubble.js +14 -14
- package/lib/es6/CompactHorizontalBar.js +16 -16
- package/lib/es6/Donut.js +9 -9
- package/lib/es6/Dots.js +8 -8
- package/lib/es6/HorizontalBar.js +16 -16
- package/lib/es6/Hover.js +3 -3
- package/lib/es6/Line.js +9 -9
- package/lib/es6/Plot.js +2 -2
- package/lib/es6/Radar.js +20 -20
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +12 -12
- package/lib/es6/Reference.js +12 -12
- package/lib/es6/ScatterPlot.js +9 -9
- package/lib/es6/Tooltip.js +9 -9
- package/lib/es6/Venn.js +9 -9
- package/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/lib/es6/a11y/PlotA11yView.js +2 -2
- package/lib/es6/a11y/serialize.js +6 -1
- package/lib/es6/a11y/serialize.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.js +85 -11
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.js +6 -2
- package/lib/es6/component/Chart/AreaChart.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.js +8 -4
- package/lib/es6/component/Chart/BarChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.js +6 -2
- package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +22 -12
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js +7 -3
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.js +8 -4
- package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.js +7 -3
- package/lib/es6/component/Chart/LineChart.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js +6 -2
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/es6/style/abstract-chart.shadow.css +7 -0
- package/lib/esm/Area.mjs +12 -12
- package/lib/esm/Axis.mjs +17 -17
- package/lib/esm/Bar.mjs +17 -17
- package/lib/esm/Bubble.mjs +15 -15
- package/lib/esm/CompactHorizontalBar.mjs +17 -17
- package/lib/esm/Donut.mjs +10 -10
- package/lib/esm/Dots.mjs +9 -9
- package/lib/esm/HorizontalBar.mjs +17 -17
- package/lib/esm/Hover.mjs +4 -4
- package/lib/esm/Line.mjs +10 -10
- package/lib/esm/Plot.mjs +3 -3
- package/lib/esm/Radar.mjs +21 -21
- package/lib/esm/RadialTree.mjs +13 -13
- package/lib/esm/Reference.mjs +13 -13
- package/lib/esm/ScatterPlot.mjs +10 -10
- package/lib/esm/Tooltip.mjs +10 -10
- package/lib/esm/Venn.mjs +10 -10
- package/lib/esm/a11y/PlotA11yModule.mjs +3 -3
- package/lib/esm/a11y/PlotA11yView.mjs +3 -3
- package/lib/esm/a11y/serialize.mjs +6 -1
- package/lib/esm/component/Chart/AbstractChart.mjs +86 -12
- package/lib/esm/component/Chart/AreaChart.mjs +6 -2
- package/lib/esm/component/Chart/BarChart.mjs +8 -4
- package/lib/esm/component/Chart/BubbleChart.mjs +6 -2
- package/lib/esm/component/Chart/CigaretteChart.mjs +22 -12
- package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +7 -3
- package/lib/esm/component/Chart/HistogramChart.mjs +8 -4
- package/lib/esm/component/Chart/LineChart.mjs +7 -3
- package/lib/esm/component/Chart/ScatterPlotChart.mjs +6 -2
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +5 -5
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +18 -18
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +7 -7
- package/lib/esm/style/abstract-chart.shadow.css +7 -0
- package/lib/types/component/Chart/AbstractChart.d.ts +14 -0
- package/lib/types/component/Chart/AbstractChart.type.d.ts +11 -2
- package/package.json +15 -15
- package/vitest.config.mts +17 -0
package/lib/es6/Bubble.js
CHANGED
|
@@ -11,22 +11,22 @@ import { SvgElement } from './component/SvgElement';
|
|
|
11
11
|
import createElement from './createElement';
|
|
12
12
|
import { PatternFill } from './Pattern';
|
|
13
13
|
/*!__reshadow-styles__:"./style/bubble.shadow.css"*/
|
|
14
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
14
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SBubble_t4696_gg_{fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));stroke:var(--intergalactic-chart-grid-border,#fff);stroke-width:2px;transition-property:cx,cy;transition-duration:var(--duration_t4696);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SBubble_t4696_gg_:hover{opacity:.8}}g._visible_false_t4696_gg_{display:none}.___SBubble_t4696_gg_.__clickable_t4696_gg_{cursor:pointer}.___SBubble_t4696_gg_.__color_t4696_gg_{fill:var(--color_t4696)}.___SBubble_t4696_gg_.__pattern_t4696_gg_.__color_t4696_gg_{fill:var(--pattern_t4696);stroke:var(--color_t4696);stroke-width:1px}.___SBubble_t4696_gg_.__transparent_t4696_gg_{opacity:.3}.___SCenter_t4696_gg_{text-anchor:middle;font-size:calc(var(--intergalactic-fs-100, 12px) - 1px);stroke:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2))}.___SCenter_t4696_gg_.__color_t4696_gg_{stroke:var(--color_t4696)}.___SCenter_t4696_gg_.__transparent_t4696_gg_{opacity:.3}.___SLabel_t4696_gg_{fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2))}.___SLabel_t4696_gg_._position_right_t4696_gg_{text-anchor:end}.___SLabel_t4696_gg_._position_left_t4696_gg_{text-anchor:start}.___SLabel_t4696_gg_.__color_t4696_gg_{fill:var(--color_t4696)}.___SLabel_t4696_gg_.__transparent_t4696_gg_{opacity:.3}", /*__inner_css_end__*/"t4696_gg_"),
|
|
15
15
|
/*__reshadow_css_end__*/
|
|
16
16
|
{
|
|
17
|
-
"_visible_false": "
|
|
18
|
-
"__SBubble": "
|
|
19
|
-
"_clickable": "
|
|
20
|
-
"_color": "
|
|
21
|
-
"--color": "--
|
|
22
|
-
"_pattern": "
|
|
23
|
-
"--pattern": "--
|
|
24
|
-
"_transparent": "
|
|
25
|
-
"__SCenter": "
|
|
26
|
-
"__SLabel": "
|
|
27
|
-
"_position_right": "
|
|
28
|
-
"_position_left": "
|
|
29
|
-
"--duration": "--
|
|
17
|
+
"_visible_false": "_visible_false_t4696_gg_",
|
|
18
|
+
"__SBubble": "___SBubble_t4696_gg_",
|
|
19
|
+
"_clickable": "__clickable_t4696_gg_",
|
|
20
|
+
"_color": "__color_t4696_gg_",
|
|
21
|
+
"--color": "--color_t4696",
|
|
22
|
+
"_pattern": "__pattern_t4696_gg_",
|
|
23
|
+
"--pattern": "--pattern_t4696",
|
|
24
|
+
"_transparent": "__transparent_t4696_gg_",
|
|
25
|
+
"__SCenter": "___SCenter_t4696_gg_",
|
|
26
|
+
"__SLabel": "___SLabel_t4696_gg_",
|
|
27
|
+
"_position_right": "_position_right_t4696_gg_",
|
|
28
|
+
"_position_left": "_position_left_t4696_gg_",
|
|
29
|
+
"--duration": "--duration_t4696"
|
|
30
30
|
});
|
|
31
31
|
import Tooltip from './Tooltip';
|
|
32
32
|
import { getBubbleChartValueScale, measureText } from './utils';
|
|
@@ -15,24 +15,24 @@ import AnimatedClipPath from './AnimatedClipPath';
|
|
|
15
15
|
import createElement from './createElement';
|
|
16
16
|
import { PatternFill } from './Pattern';
|
|
17
17
|
/*!__reshadow-styles__:"./style/bar.shadow.css"*/
|
|
18
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
18
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SBar_96mcx_gg_{fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));transition-property:height,width,y;transition-duration:var(--duration_96mcx);transition-timing-function:ease-in-out}.___SBar_96mcx_gg_.__color_96mcx_gg_{fill:var(--color_96mcx)}.___SBar_96mcx_gg_.__pattern_96mcx_gg_.__color_96mcx_gg_{fill:var(--pattern_96mcx);stroke:var(--color_96mcx);stroke-width:1px}.___SBar_96mcx_gg_.__hide_96mcx_gg_{display:none}.___SBar_96mcx_gg_.__transparent_96mcx_gg_{opacity:.3}.___SBar_96mcx_gg_.__onClick_96mcx_gg_{cursor:pointer}.___SBackground_96mcx_gg_{fill:var(--intergalactic-chart-grid-bar-chart-base-bg,oklch(.96 .001 180))}.___SBackground_96mcx_gg_.__onClick_96mcx_gg_{cursor:pointer}.___SBarAnnotation_96mcx_gg_{display:flex;justify-content:space-between}.___SBarLabel_96mcx_gg_{color:var(--intergalactic-text-primary,oklch(.1 .03 137/.899));margin-right:auto}.___SBarLabel_96mcx_gg_,.___SBarPercent_96mcx_gg_{font-size:var(--intergalactic-fs-200,14px);line-height:var(--intergalactic-lh-200,142%)}.___SBarPercent_96mcx_gg_{color:var(--intergalactic-text-secondary,#00030095);margin-right:var(--intergalactic-spacing-2x,8px)}@media (color-gamut:p3){.___SBarPercent_96mcx_gg_{color:var(--intergalactic-text-secondary,oklch(.088 .026 147.7/.583))}}.___SBarValue_96mcx_gg_{min-width:52px;display:flex;justify-content:flex-end;color:var(--intergalactic-text-primary,oklch(.1 .03 137/.899));font-size:var(--intergalactic-fs-200,14px);line-height:var(--intergalactic-lh-200,142%);text-align:right}.___SCompactHorizontalBarHoverRect_96mcx_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover,oklch(.177 .033 175.6/.028))}", /*__inner_css_end__*/"96mcx_gg_"),
|
|
19
19
|
/*__reshadow_css_end__*/
|
|
20
20
|
{
|
|
21
|
-
"__SBar": "
|
|
22
|
-
"--duration": "--
|
|
23
|
-
"_color": "
|
|
24
|
-
"--color": "--
|
|
25
|
-
"_pattern": "
|
|
26
|
-
"--pattern": "--
|
|
27
|
-
"_hide": "
|
|
28
|
-
"_transparent": "
|
|
29
|
-
"_onClick": "
|
|
30
|
-
"__SBackground": "
|
|
31
|
-
"__SBarAnnotation": "
|
|
32
|
-
"__SBarLabel": "
|
|
33
|
-
"__SBarPercent": "
|
|
34
|
-
"__SBarValue": "
|
|
35
|
-
"__SCompactHorizontalBarHoverRect": "
|
|
21
|
+
"__SBar": "___SBar_96mcx_gg_",
|
|
22
|
+
"--duration": "--duration_96mcx",
|
|
23
|
+
"_color": "__color_96mcx_gg_",
|
|
24
|
+
"--color": "--color_96mcx",
|
|
25
|
+
"_pattern": "__pattern_96mcx_gg_",
|
|
26
|
+
"--pattern": "--pattern_96mcx",
|
|
27
|
+
"_hide": "__hide_96mcx_gg_",
|
|
28
|
+
"_transparent": "__transparent_96mcx_gg_",
|
|
29
|
+
"_onClick": "__onClick_96mcx_gg_",
|
|
30
|
+
"__SBackground": "___SBackground_96mcx_gg_",
|
|
31
|
+
"__SBarAnnotation": "___SBarAnnotation_96mcx_gg_",
|
|
32
|
+
"__SBarLabel": "___SBarLabel_96mcx_gg_",
|
|
33
|
+
"__SBarPercent": "___SBarPercent_96mcx_gg_",
|
|
34
|
+
"__SBarValue": "___SBarValue_96mcx_gg_",
|
|
35
|
+
"__SCompactHorizontalBarHoverRect": "___SCompactHorizontalBarHoverRect_96mcx_gg_"
|
|
36
36
|
});
|
|
37
37
|
import Tooltip from './Tooltip';
|
|
38
38
|
import { roundedPath, scaleToBand, eventToPoint } from './utils';
|
package/lib/es6/Donut.js
CHANGED
|
@@ -13,17 +13,17 @@ import React from 'react';
|
|
|
13
13
|
import createElement from './createElement';
|
|
14
14
|
import { PatternFill } from './Pattern';
|
|
15
15
|
/*!__reshadow-styles__:"./style/donut.shadow.css"*/
|
|
16
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
16
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SPie_75dho_gg_{stroke:var(--intergalactic-chart-grid-border,#fff);fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2))}.___SPie_75dho_gg_.__color_75dho_gg_{fill:var(--color_75dho)}.___SPie_75dho_gg_.__pattern_75dho_gg_.__color_75dho_gg_{fill:var(--pattern_75dho);stroke:var(--color_75dho);stroke-width:1px}.___SPie_75dho_gg_.__transparent_75dho_gg_{opacity:.3}.___SEmptyData_75dho_gg_{fill:var(--intergalactic-chart-palette-order-null,oklch(.9 .002 177))}.___SEmptyData_75dho_gg_.__color_75dho_gg_{fill:var(--color_75dho)}.___SLabel_75dho_gg_{text-anchor:middle;vertical-anchor:middle;font-size:var(--intergalactic-fs-200,14px);line-height:var(--intergalactic-lh-200,142%)}", /*__inner_css_end__*/"75dho_gg_"),
|
|
17
17
|
/*__reshadow_css_end__*/
|
|
18
18
|
{
|
|
19
|
-
"__SPie": "
|
|
20
|
-
"_color": "
|
|
21
|
-
"--color": "--
|
|
22
|
-
"_pattern": "
|
|
23
|
-
"--pattern": "--
|
|
24
|
-
"_transparent": "
|
|
25
|
-
"__SEmptyData": "
|
|
26
|
-
"__SLabel": "
|
|
19
|
+
"__SPie": "___SPie_75dho_gg_",
|
|
20
|
+
"_color": "__color_75dho_gg_",
|
|
21
|
+
"--color": "--color_75dho",
|
|
22
|
+
"_pattern": "__pattern_75dho_gg_",
|
|
23
|
+
"--pattern": "--pattern_75dho",
|
|
24
|
+
"_transparent": "__transparent_75dho_gg_",
|
|
25
|
+
"__SEmptyData": "___SEmptyData_75dho_gg_",
|
|
26
|
+
"__SLabel": "___SLabel_75dho_gg_"
|
|
27
27
|
});
|
|
28
28
|
import Tooltip from './Tooltip';
|
|
29
29
|
import { getChartDefaultColorName } from './utils';
|
package/lib/es6/Dots.js
CHANGED
|
@@ -6,16 +6,16 @@ import React from 'react';
|
|
|
6
6
|
import createElement from './createElement';
|
|
7
7
|
import { PatternSymbol, getPatternSymbolSize } from './Pattern';
|
|
8
8
|
/*!__reshadow-styles__:"./style/dot.shadow.css"*/
|
|
9
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
9
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SDots_8femj_gg_ .___SDot_8femj_gg_{transition-duration:var(--duration_8femj)}.___SDot_8femj_gg_{stroke-width:1px;stroke:var(--intergalactic-chart-grid-border,#fff);fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));transition-property:cx,cy,x,y;transition-timing-function:ease-in-out}.___SDot_8femj_gg_.__hide_8femj_gg_{display:none}.___SDot_8femj_gg_.__color_8femj_gg_{fill:var(--color_8femj)}.___SDot_8femj_gg_.__transparent_8femj_gg_{opacity:.3}", /*__inner_css_end__*/"8femj_gg_"),
|
|
10
10
|
/*__reshadow_css_end__*/
|
|
11
11
|
{
|
|
12
|
-
"__SDot": "
|
|
13
|
-
"_hide": "
|
|
14
|
-
"_color": "
|
|
15
|
-
"--color": "--
|
|
16
|
-
"_transparent": "
|
|
17
|
-
"__SDots": "
|
|
18
|
-
"--duration": "--
|
|
12
|
+
"__SDot": "___SDot_8femj_gg_",
|
|
13
|
+
"_hide": "__hide_8femj_gg_",
|
|
14
|
+
"_color": "__color_8femj_gg_",
|
|
15
|
+
"--color": "--color_8femj",
|
|
16
|
+
"_transparent": "__transparent_8femj_gg_",
|
|
17
|
+
"__SDots": "___SDots_8femj_gg_",
|
|
18
|
+
"--duration": "--duration_8femj"
|
|
19
19
|
});
|
|
20
20
|
import { eventToPoint, invert, interpolateValue, getChartDefaultColorName } from './utils';
|
|
21
21
|
function Dots(props) {
|
package/lib/es6/HorizontalBar.js
CHANGED
|
@@ -7,24 +7,24 @@ import AnimatedClipPath from './AnimatedClipPath';
|
|
|
7
7
|
import createElement from './createElement';
|
|
8
8
|
import { PatternFill } from './Pattern';
|
|
9
9
|
/*!__reshadow-styles__:"./style/bar.shadow.css"*/
|
|
10
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
10
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SBar_96mcx_gg_{fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));transition-property:height,width,y;transition-duration:var(--duration_96mcx);transition-timing-function:ease-in-out}.___SBar_96mcx_gg_.__color_96mcx_gg_{fill:var(--color_96mcx)}.___SBar_96mcx_gg_.__pattern_96mcx_gg_.__color_96mcx_gg_{fill:var(--pattern_96mcx);stroke:var(--color_96mcx);stroke-width:1px}.___SBar_96mcx_gg_.__hide_96mcx_gg_{display:none}.___SBar_96mcx_gg_.__transparent_96mcx_gg_{opacity:.3}.___SBar_96mcx_gg_.__onClick_96mcx_gg_{cursor:pointer}.___SBackground_96mcx_gg_{fill:var(--intergalactic-chart-grid-bar-chart-base-bg,oklch(.96 .001 180))}.___SBackground_96mcx_gg_.__onClick_96mcx_gg_{cursor:pointer}.___SBarAnnotation_96mcx_gg_{display:flex;justify-content:space-between}.___SBarLabel_96mcx_gg_{color:var(--intergalactic-text-primary,oklch(.1 .03 137/.899));margin-right:auto}.___SBarLabel_96mcx_gg_,.___SBarPercent_96mcx_gg_{font-size:var(--intergalactic-fs-200,14px);line-height:var(--intergalactic-lh-200,142%)}.___SBarPercent_96mcx_gg_{color:var(--intergalactic-text-secondary,#00030095);margin-right:var(--intergalactic-spacing-2x,8px)}@media (color-gamut:p3){.___SBarPercent_96mcx_gg_{color:var(--intergalactic-text-secondary,oklch(.088 .026 147.7/.583))}}.___SBarValue_96mcx_gg_{min-width:52px;display:flex;justify-content:flex-end;color:var(--intergalactic-text-primary,oklch(.1 .03 137/.899));font-size:var(--intergalactic-fs-200,14px);line-height:var(--intergalactic-lh-200,142%);text-align:right}.___SCompactHorizontalBarHoverRect_96mcx_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover,oklch(.177 .033 175.6/.028))}", /*__inner_css_end__*/"96mcx_gg_"),
|
|
11
11
|
/*__reshadow_css_end__*/
|
|
12
12
|
{
|
|
13
|
-
"__SBar": "
|
|
14
|
-
"--duration": "--
|
|
15
|
-
"_color": "
|
|
16
|
-
"--color": "--
|
|
17
|
-
"_pattern": "
|
|
18
|
-
"--pattern": "--
|
|
19
|
-
"_hide": "
|
|
20
|
-
"_transparent": "
|
|
21
|
-
"_onClick": "
|
|
22
|
-
"__SBackground": "
|
|
23
|
-
"__SBarAnnotation": "
|
|
24
|
-
"__SBarLabel": "
|
|
25
|
-
"__SBarPercent": "
|
|
26
|
-
"__SBarValue": "
|
|
27
|
-
"__SCompactHorizontalBarHoverRect": "
|
|
13
|
+
"__SBar": "___SBar_96mcx_gg_",
|
|
14
|
+
"--duration": "--duration_96mcx",
|
|
15
|
+
"_color": "__color_96mcx_gg_",
|
|
16
|
+
"--color": "--color_96mcx",
|
|
17
|
+
"_pattern": "__pattern_96mcx_gg_",
|
|
18
|
+
"--pattern": "--pattern_96mcx",
|
|
19
|
+
"_hide": "__hide_96mcx_gg_",
|
|
20
|
+
"_transparent": "__transparent_96mcx_gg_",
|
|
21
|
+
"_onClick": "__onClick_96mcx_gg_",
|
|
22
|
+
"__SBackground": "___SBackground_96mcx_gg_",
|
|
23
|
+
"__SBarAnnotation": "___SBarAnnotation_96mcx_gg_",
|
|
24
|
+
"__SBarLabel": "___SBarLabel_96mcx_gg_",
|
|
25
|
+
"__SBarPercent": "___SBarPercent_96mcx_gg_",
|
|
26
|
+
"__SBarValue": "___SBarValue_96mcx_gg_",
|
|
27
|
+
"__SCompactHorizontalBarHoverRect": "___SCompactHorizontalBarHoverRect_96mcx_gg_"
|
|
28
28
|
});
|
|
29
29
|
import { scaleToBand, roundedPath } from './utils';
|
|
30
30
|
export const MIN_WIDTH = 2;
|
package/lib/es6/Hover.js
CHANGED
|
@@ -9,11 +9,11 @@ import trottle from '@semcore/core/lib/utils/rafTrottle';
|
|
|
9
9
|
import React from 'react';
|
|
10
10
|
import createElement from './createElement';
|
|
11
11
|
/*!__reshadow-styles__:"./style/hover.shadow.css"*/
|
|
12
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
12
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SHoverLine_1yni8_gg_,.___SHoverLine_1yni8_gg_:focus-visible{outline:none;stroke:var(--intergalactic-chart-grid-x-axis,oklch(.88 .002 175.6))}.___SHoverRect_1yni8_gg_,.___SHoverRect_1yni8_gg_:focus-visible{outline:none;fill:var(--intergalactic-chart-grid-bar-chart-hover,oklch(.177 .033 175.6/.028))}", /*__inner_css_end__*/"1yni8_gg_"),
|
|
13
13
|
/*__reshadow_css_end__*/
|
|
14
14
|
{
|
|
15
|
-
"__SHoverLine": "
|
|
16
|
-
"__SHoverRect": "
|
|
15
|
+
"__SHoverLine": "___SHoverLine_1yni8_gg_",
|
|
16
|
+
"__SHoverRect": "___SHoverRect_1yni8_gg_"
|
|
17
17
|
});
|
|
18
18
|
import Tooltip from './Tooltip';
|
|
19
19
|
import { scaleOfBandwidth, getIndexFromData, eventToPoint, invert, scaleToBand } from './utils';
|
package/lib/es6/Line.js
CHANGED
|
@@ -10,17 +10,17 @@ import createElement from './createElement';
|
|
|
10
10
|
import Dots from './Dots';
|
|
11
11
|
import { resolvePatternDasharray } from './Pattern';
|
|
12
12
|
/*!__reshadow-styles__:"./style/line.shadow.css"*/
|
|
13
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
13
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SLine_12gz2_gg_{fill:#0000;stroke-width:3;stroke:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));transition-property:d;transition-duration:var(--duration_12gz2);transition-timing-function:ease-in-out}.___SLine_12gz2_gg_.__color_12gz2_gg_{stroke:var(--color_12gz2)}.___SLine_12gz2_gg_.__hide_12gz2_gg_{display:none}.___SLine_12gz2_gg_.__transparent_12gz2_gg_{opacity:.3}.___SNull_12gz2_gg_{fill:#0000;stroke:var(--intergalactic-border-primary,#000c0829);stroke-dasharray:4}@media (color-gamut:p3){.___SNull_12gz2_gg_{stroke:var(--intergalactic-border-primary,oklch(.137 .026 175.7/.161))}}.___SNull_12gz2_gg_.__hide_12gz2_gg_{display:none}.___SLineArea_12gz2_gg_{transition-property:d;transition-duration:var(--duration_12gz2);transition-timing-function:ease-in-out;opacity:.3;fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2))}.___SLineArea_12gz2_gg_.__color_12gz2_gg_{fill:var(--color_12gz2)}", /*__inner_css_end__*/"12gz2_gg_"),
|
|
14
14
|
/*__reshadow_css_end__*/
|
|
15
15
|
{
|
|
16
|
-
"__SLine": "
|
|
17
|
-
"--duration": "--
|
|
18
|
-
"_color": "
|
|
19
|
-
"--color": "--
|
|
20
|
-
"_hide": "
|
|
21
|
-
"_transparent": "
|
|
22
|
-
"__SNull": "
|
|
23
|
-
"__SLineArea": "
|
|
16
|
+
"__SLine": "___SLine_12gz2_gg_",
|
|
17
|
+
"--duration": "--duration_12gz2",
|
|
18
|
+
"_color": "__color_12gz2_gg_",
|
|
19
|
+
"--color": "--color_12gz2",
|
|
20
|
+
"_hide": "__hide_12gz2_gg_",
|
|
21
|
+
"_transparent": "__transparent_12gz2_gg_",
|
|
22
|
+
"__SNull": "___SNull_12gz2_gg_",
|
|
23
|
+
"__SLineArea": "___SLineArea_12gz2_gg_"
|
|
24
24
|
});
|
|
25
25
|
import { definedData, definedNullData, scaleOfBandwidth, getNullData, interpolateValue, getChartDefaultColorName, eventToPoint, invert } from './utils';
|
|
26
26
|
class LineRoot extends Component {
|
package/lib/es6/Plot.js
CHANGED
|
@@ -10,10 +10,10 @@ import React from 'react';
|
|
|
10
10
|
import { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';
|
|
11
11
|
import { PlotA11yModule } from './a11y/PlotA11yModule';
|
|
12
12
|
/*!__reshadow-styles__:"./style/plot.shadow.css"*/
|
|
13
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
13
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SPlot_vnepb_gg_{overflow:hidden}.___SPlot_vnepb_gg_:focus{outline:none}.___SPlot_vnepb_gg_:active{outline:0;-webkit-text-decoration:none;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_vnepb_gg_:has(foreignObject[data-aria-only]:focus-within){outline-color:var(--intergalactic-keyboard-focus-outline,#0020dd78);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset;border-radius:var(--intergalactic-surface-rounded,8px)}@media (color-gamut:p3){.___SPlot_vnepb_gg_:has(foreignObject[data-aria-only]:focus-within){outline-color:var(--intergalactic-keyboard-focus-outline,oklch(.424 .269 264.2/.469))}}", /*__inner_css_end__*/"vnepb_gg_"),
|
|
14
14
|
/*__reshadow_css_end__*/
|
|
15
15
|
{
|
|
16
|
-
"__SPlot": "
|
|
16
|
+
"__SPlot": "___SPlot_vnepb_gg_"
|
|
17
17
|
});
|
|
18
18
|
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
|
19
19
|
import { eventToPoint, uniqueId } from './utils';
|
package/lib/es6/Radar.js
CHANGED
|
@@ -12,27 +12,27 @@ import React, { cloneElement } from 'react';
|
|
|
12
12
|
import createElement from './createElement';
|
|
13
13
|
import { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';
|
|
14
14
|
/*!__reshadow-styles__:"./style/radar.shadow.css"*/
|
|
15
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
15
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SAxisLine_1732k_gg_,.___SAxisTick_1732k_gg_,.___SAxis_1732k_gg_{stroke:var(--intergalactic-chart-grid-line,oklch(.95 .002 180));stroke-width:1;fill:#0000}.___SAxisLine_1732k_gg_,.___SAxisTick_1732k_gg_{stroke-dasharray:2}.___SAxisLine_1732k_gg_.__active_1732k_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line,oklch(.88 .002 175.6))}.___SAxisLabel_1732k_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_1732k_gg_.__xDirection_1732k_gg_{text-anchor:var(--xDirection_1732k)}.___SAxisLabel_1732k_gg_.__yDirection_1732k_gg_{dominant-baseline:var(--yDirection_1732k)}.___SPolygon_1732k_gg_{fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));opacity:.2}.___SPolygon_1732k_gg_.__color_1732k_gg_{fill:var(--color_1732k)}.___SPolygon_1732k_gg_.__pattern_1732k_gg_.__color_1732k_gg_{fill:var(--pattern_1732k);stroke:var(--color_1732k);stroke-width:1px}.___SPolygonDot_1732k_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border,#fff);r:6px;fill:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2))}.___SPolygonDot_1732k_gg_.__transparent_1732k_gg_{opacity:.3}.___SPolygonDot_1732k_gg_.__color_1732k_gg_{fill:var(--color_1732k)}.___SPolygonLine_1732k_gg_{stroke:var(--intergalactic-chart-palette-order-1,oklch(.58 .168 278.2));stroke-width:3;fill:#0000}.___SPolygonLine_1732k_gg_.__transparent_1732k_gg_{opacity:.3}.___SPolygonLine_1732k_gg_.__color_1732k_gg_{stroke:var(--color_1732k)}.___SPieRect_1732k_gg_{outline:none;fill:var(--intergalactic-chart-grid-bar-chart-hover,oklch(.177 .033 175.6/.028))}", /*__inner_css_end__*/"1732k_gg_"),
|
|
16
16
|
/*__reshadow_css_end__*/
|
|
17
17
|
{
|
|
18
|
-
"__SAxis": "
|
|
19
|
-
"__SAxisLine": "
|
|
20
|
-
"__SAxisTick": "
|
|
21
|
-
"_active": "
|
|
22
|
-
"__SAxisLabel": "
|
|
23
|
-
"_xDirection": "
|
|
24
|
-
"--xDirection": "--
|
|
25
|
-
"_yDirection": "
|
|
26
|
-
"--yDirection": "--
|
|
27
|
-
"__SPolygon": "
|
|
28
|
-
"_color": "
|
|
29
|
-
"--color": "--
|
|
30
|
-
"_pattern": "
|
|
31
|
-
"--pattern": "--
|
|
32
|
-
"__SPolygonDot": "
|
|
33
|
-
"_transparent": "
|
|
34
|
-
"__SPolygonLine": "
|
|
35
|
-
"__SPieRect": "
|
|
18
|
+
"__SAxis": "___SAxis_1732k_gg_",
|
|
19
|
+
"__SAxisLine": "___SAxisLine_1732k_gg_",
|
|
20
|
+
"__SAxisTick": "___SAxisTick_1732k_gg_",
|
|
21
|
+
"_active": "__active_1732k_gg_",
|
|
22
|
+
"__SAxisLabel": "___SAxisLabel_1732k_gg_",
|
|
23
|
+
"_xDirection": "__xDirection_1732k_gg_",
|
|
24
|
+
"--xDirection": "--xDirection_1732k",
|
|
25
|
+
"_yDirection": "__yDirection_1732k_gg_",
|
|
26
|
+
"--yDirection": "--yDirection_1732k",
|
|
27
|
+
"__SPolygon": "___SPolygon_1732k_gg_",
|
|
28
|
+
"_color": "__color_1732k_gg_",
|
|
29
|
+
"--color": "--color_1732k",
|
|
30
|
+
"_pattern": "__pattern_1732k_gg_",
|
|
31
|
+
"--pattern": "--pattern_1732k",
|
|
32
|
+
"__SPolygonDot": "___SPolygonDot_1732k_gg_",
|
|
33
|
+
"_transparent": "__transparent_1732k_gg_",
|
|
34
|
+
"__SPolygonLine": "___SPolygonLine_1732k_gg_",
|
|
35
|
+
"__SPieRect": "___SPieRect_1732k_gg_"
|
|
36
36
|
});
|
|
37
37
|
import Tooltip from './Tooltip';
|
|
38
38
|
import { eventToPoint, getChartDefaultColorName, measureText } from './utils';
|
|
@@ -280,7 +280,7 @@ class RadarRoot extends Component {
|
|
|
280
280
|
}));
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
|
-
_defineProperty(RadarRoot, "displayName", '
|
|
283
|
+
_defineProperty(RadarRoot, "displayName", 'Radar');
|
|
284
284
|
_defineProperty(RadarRoot, "style", style);
|
|
285
285
|
_defineProperty(RadarRoot, "enhance", [uniqueIDEnhancement()]);
|
|
286
286
|
_defineProperty(RadarRoot, "defaultProps", {
|
package/lib/es6/Radar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Radar.js","names":["Component","sstyled","Root","canUseDOM","getOriginChildren","trottle","uniqueIDEnhancement","polygonContains","line","lineRadial","curveLinearClosed","arc","React","cloneElement","createElement","PatternFill","PatternSymbol","getPatternSymbolSize","style","_sstyled","insert","Tooltip","eventToPoint","getChartDefaultColorName","measureText","clampAngle","angle","Math","PI","getBoxAxesValue","i","range","axes","total","angleOffset","func","sin","cos","getRadianPosition","getLabelXPlacement","getLabelYPlacement","getLabelPlacement","computeTextWidth","texts","textSize","defaultWidth","defaultHeight","widths","map","text","isValidElement","max","props","width","height","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","_t","push","length","pieContains","startAngle","endAngle","x","y","distance","sqrt","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","MINIMUM_OFFSET","RadarRoot","constructor","args","_defineProperty","id","uid","asProps","offset","computeOffset","getAxisProps","type","getPolygonProps","dataKey","index","data","scale","patterns","color","getHoverProps","categories","categoriesKey","getIndex","bind","getPolygon","getPie","point","findIndex","_c","size","diam","min","prevIndex","nextIndex","prevX1","prevY1","nextX1","nextY1","handlerOnClick","e","stopPropagation","rootRef","onClick","pointX","pointY","current","r","centerX","centerY","render","_ref2","SRadar","Element","Children","styles","dataHintsHandler","establishDataType","toArray","forEach","child","Radar","Axis","undefined","cn","PolygonRoot","getDotsProps","resolveColor","transparent","categoryKey","getLineProps","d3","_ref3","SPolygon","fill","Fragment","curve","d","_d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","value","_ref6","describeGroupedValues","cx","cy","_ref5","patternKey","AxisRoot","activeLineIndex","_anchorProps","setState","createLineRadial","getTicksProps","getLabelsProps","labelOffset","componentDidMount","eventEmitter","unsubscribeTooltipVisible","subscribe","handleTooltipRenderingProps","componentWillUnmount","_ref7","SAxis","state","_category","className","active","key","x1","y1","x2","y2","AxisTicks","SAxisTick","tick","_ref8","AxisLabels","SAxisLabel","category","_ref9","labelKey","lines","split","lineText","lineIndex","Hover","document","plotId","clientX","clientY","emit","generateGetBoundingClientRect","top","right","bottom","left","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","SPieRect","_ref0","circle","innerRadius","outerRadius","_ref1","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref10","SRadarTooltip","_assignProps","_______childrenComponents"],"sources":["../../src/Radar.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { polygonContains } from 'd3-polygon';\nimport { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';\nimport React, { cloneElement } from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';\nimport style from './style/radar.shadow.css';\nimport Tooltip from './Tooltip';\nimport { eventToPoint, getChartDefaultColorName, measureText } from './utils';\n\nconst clampAngle = (angle) => {\n angle = angle % (2 * Math.PI);\n if (angle < 0) angle += 2 * Math.PI;\n return angle;\n};\n\nfunction getBoxAxesValue(i, range, axes, total, angleOffset) {\n const func = axes === 'y' ? Math.sin : Math.cos;\n\n const angle = clampAngle(((total - i) * 2 * Math.PI) / total + angleOffset);\n return range * (1 - func(angle)) - range;\n}\n\nfunction getRadianPosition(i, range, total, angleOffset) {\n return [\n getBoxAxesValue(i, range, 'y', total, angleOffset),\n getBoxAxesValue(i, range, 'x', total, angleOffset),\n ];\n}\n\nconst getLabelXPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'middle';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'middle';\n\n return angle < Math.PI ? 'start' : 'end';\n};\nconst getLabelYPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'alphabetic';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'mathematical';\n\n return 'middle';\n};\n\nfunction getLabelPlacement(i, total, angleOffset) {\n return [getLabelXPlacement(i, total, angleOffset), getLabelYPlacement(i, total, angleOffset)];\n}\n\nfunction computeTextWidth(texts, textSize, defaultWidth = 50, defaultHeight = 20) {\n const widths = texts.map((text) => {\n if (typeof text === 'string') {\n return measureText(text, textSize);\n }\n if (React.isValidElement(text)) {\n // @ts-ignore\n return Math.max(text.props?.width || defaultWidth, text.props?.height || defaultHeight);\n }\n return defaultWidth;\n });\n return Math.max(...widths);\n}\n\nfunction getTicks(tickSize, radius) {\n let ticks = 0;\n while (Math.trunc(radius / (tickSize / 2)) > ticks) {\n ticks += 1;\n }\n return [...Array(ticks).keys()].reduce((ticks, _t, i, total) => {\n if (i) ticks.push(i / total.length);\n return ticks;\n }, []);\n}\n\nfunction pieContains([startAngle, endAngle, radius], [x, y]) {\n const distance = Math.sqrt(x ** 2 + y ** 2);\n if (distance > radius) return false;\n\n startAngle = clampAngle(startAngle);\n endAngle = clampAngle(endAngle);\n startAngle = startAngle < endAngle ? startAngle : startAngle - 2 * Math.PI;\n\n const angle = clampAngle(Math.atan2(y, x) + Math.PI / 2);\n const prevAngle = angle - Math.PI * 2;\n const nextAngle = angle + Math.PI * 2;\n\n if (angle > startAngle && angle < endAngle) return true;\n if (prevAngle > startAngle && prevAngle < endAngle) return true;\n if (nextAngle > startAngle && nextAngle < endAngle) return true;\n return false;\n}\n\nexport function getLabelOffsetPosition(xDirection, yDirection, width, height) {\n let xOffset = 0;\n let yOffset = 0;\n switch (`${xDirection}-${yDirection}`) {\n case 'middle-alphabetic':\n yOffset = height / 2;\n break;\n case 'start-middle':\n xOffset = -width / 2;\n break;\n case 'middle-mathematical':\n yOffset = -height / 2;\n break;\n case 'end-middle':\n xOffset = width / 2;\n break;\n }\n return [xOffset + width / 2, yOffset + height / 2];\n}\n\nconst MINIMUM_OFFSET = 5;\n\nclass RadarRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n computeOffset = 0;\n\n categoriesKey = null;\n\n static defaultProps = {\n type: 'polygon',\n angleOffset: 0,\n };\n\n get id() {\n const { id, uid } = this.asProps;\n return id || uid;\n }\n\n get offset() {\n const { offset } = this.asProps;\n return offset ?? this.computeOffset;\n }\n\n get textSize() {\n const { textSize } = this.asProps;\n return textSize ?? 12;\n }\n\n getAxisProps() {\n return {\n offset: this.offset,\n textSize: this.textSize,\n type: this.asProps.type,\n angleOffset: this.asProps.angleOffset,\n };\n }\n\n getPolygonProps({ dataKey }, index) {\n const { data, scale, angleOffset, uid, patterns } = this.asProps;\n\n return {\n offset: this.offset,\n data: data[dataKey] || [],\n scale,\n angleOffset,\n color: getChartDefaultColorName(index),\n uid: `${uid}-${index}`,\n patterns,\n };\n }\n\n getHoverProps() {\n return {\n type: this.asProps.type,\n offset: this.offset,\n categories: this.asProps.data[this.categoriesKey],\n angleOffset: this.asProps.angleOffset,\n getIndex: this.getIndex.bind(this),\n getPolygon: this.getPolygon.bind(this),\n getPie: this.getPie.bind(this),\n };\n }\n\n getIndex(point) {\n const { data, type } = this.asProps;\n const categories = data[this.categoriesKey];\n\n let index;\n if (type === 'circle') {\n index = categories.findIndex((_c, i) => pieContains(this.getPie(i), point));\n } else {\n index = categories.findIndex((_c, i) => polygonContains(this.getPolygon(i), point));\n }\n return index === -1 ? null : index;\n }\n\n getPolygon(index) {\n const { data, size, angleOffset } = this.asProps;\n const offset = this.offset;\n const categories = data[this.categoriesKey];\n const total = categories.length;\n const diam = Math.min(size[0], size[1]);\n const radius = diam / 2 - offset;\n const prevIndex = (index - 1 + total) % total;\n const nextIndex = (index + 1 + total) % total;\n const [prevX1, prevY1] = getRadianPosition(prevIndex, radius, total, angleOffset);\n const [x, y] = getRadianPosition(index, radius, total, angleOffset);\n const [nextX1, nextY1] = getRadianPosition(nextIndex, radius, total, angleOffset);\n return [\n [0, 0],\n [(prevX1 + x) / 2, (prevY1 + y) / 2],\n [x, y],\n [(nextX1 + x) / 2, (nextY1 + y) / 2],\n ];\n }\n\n getPie(index) {\n const { data, size, angleOffset } = this.asProps;\n const categories = data[this.categoriesKey];\n const offset = this.offset;\n const angle = (Math.PI * 2) / categories.length;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return [\n index * angle - angle / 2 - angleOffset,\n (index + 1) * angle - angle / 2 - angleOffset,\n radius,\n ];\n }\n\n handlerOnClick(e) {\n e.stopPropagation();\n\n const { rootRef, size, onClick } = this.asProps;\n\n if (!onClick) return;\n\n const [pointX, pointY] = eventToPoint(e, rootRef.current);\n const r = Math.min(size[0], size[1]) / 2;\n const centerX = pointX - r;\n const centerY = pointY - r;\n\n const index = this.getIndex([centerX, centerY]);\n\n if (index === null) return;\n\n onClick(index, e);\n }\n\n render() {\n const SRadar = this.Element;\n const { Children, styles, size, data, offset } = this.asProps;\n const [width, height] = size;\n\n this.asProps.dataHintsHandler.establishDataType('indexed-groups');\n\n let dataKey;\n React.Children.toArray(getOriginChildren(Children)).forEach((child) => {\n if (React.isValidElement(child) && child.type === Radar.Axis) {\n dataKey = child.props.dataKey;\n }\n });\n if (dataKey) {\n if (offset === undefined) {\n // +5 because font might not be loaded and just in case)\n this.computeOffset = computeTextWidth(data[dataKey], this.textSize) + MINIMUM_OFFSET;\n }\n this.categoriesKey = dataKey;\n }\n\n return sstyled(styles)(\n <SRadar\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / 2})`}\n onClickCapture={this.handlerOnClick.bind(this)}\n />,\n );\n }\n}\n\nclass PolygonRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ scale, curve = curveLinearClosed, size, offset, angleOffset }) => {\n scale.range([0, Math.min(size[0], size[1]) / 2 - offset]);\n\n return {\n d3: lineRadial()\n .curve(curve)\n .radius((d) => {\n return scale(d || 0);\n })\n .angle((_d, i, data) => {\n return (i / data.length) * 2 * Math.PI - angleOffset;\n }),\n };\n };\n\n getDotsProps() {\n const {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n } = this.asProps;\n return {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n categoryKey: dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n };\n }\n\n getLineProps() {\n const { d3, data, color, resolveColor, transparent } = this.asProps;\n return {\n data,\n color,\n resolveColor,\n transparent,\n d3,\n };\n }\n\n render() {\n const {\n Element: SPolygon,\n styles,\n d3,\n data,\n color,\n resolveColor,\n fill,\n uid,\n patterns,\n } = this.asProps;\n return (\n <>\n {sstyled(styles)(\n <SPolygon\n render='path'\n d={d3(data)}\n color={resolveColor(fill || color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(fill || color)}\n patterns={patterns}\n />\n )}\n </>\n );\n }\n}\n\nfunction PolygonLine(props) {\n const { Element: SPolygonLine, styles, d3, color, resolveColor, data, transparent } = props;\n return sstyled(styles)(\n <SPolygonLine\n render='path'\n d={d3(data)}\n color={resolveColor(color)}\n transparent={transparent}\n />,\n );\n}\n\nfunction PolygonDots(props) {\n const {\n Element: SPolygonDot,\n styles,\n color,\n resolveColor,\n data,\n scale,\n transparent,\n categoryKey,\n angleOffset,\n patterns,\n } = props;\n return data.map((value, i) => {\n if (value === null || value === undefined) return;\n const radius = scale(value);\n props.dataHintsHandler.describeGroupedValues(categoryKey, `${categoryKey}.${i}`);\n const [cx, cy] = getRadianPosition(i, radius, data.length, angleOffset);\n\n if (!patterns) {\n return sstyled(styles)(\n <SPolygonDot\n render='circle'\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n cx={cx}\n cy={cy}\n />,\n );\n }\n\n const patternKey = color || getChartDefaultColorName(0);\n const [width, height] = getPatternSymbolSize({\n patternKey,\n patterns,\n });\n\n return sstyled(styles)(\n <SPolygonDot\n render={PatternSymbol}\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n x={cx - width / 2}\n y={cy - height / 2}\n />,\n );\n });\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ data, dataKey }) => {\n const categories = data[dataKey];\n return {\n categories,\n };\n };\n\n unsubscribeTooltipVisible = null;\n\n state = {\n activeLineIndex: null,\n };\n\n createLineRadial(radius, total) {\n return lineRadial()\n .curve(curveLinearClosed)\n .radius(() => {\n return radius;\n })\n .angle((_d, i) => {\n return (i / total) * 2 * Math.PI;\n });\n }\n\n getTicksProps({ tickSize = 100 }) {\n const { data, offset, categories, size, type } = this.asProps;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return {\n type,\n data,\n categories,\n ticks: getTicks(tickSize, radius),\n offset,\n d3: this.createLineRadial(radius, categories.length),\n };\n }\n\n getLabelsProps({ labelOffset = 10 }) {\n const { offset, categories, textSize, angleOffset } = this.asProps;\n return {\n categories,\n textSize,\n offset: offset - labelOffset,\n angleOffset,\n };\n }\n\n handleTooltipRenderingProps = (_anchorProps, { index }) => {\n this.setState({ activeLineIndex: index });\n };\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'setTooltipRenderingProps',\n this.handleTooltipRenderingProps,\n );\n }\n\n componentWillUnmount() {\n this.unsubscribeTooltipVisible?.();\n }\n\n render() {\n const { Element: SAxis, styles, categories, size, offset, type, angleOffset } = this.asProps;\n const { activeLineIndex } = this.state;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n const total = categories.length;\n\n return sstyled(styles)(\n <>\n {type === 'circle'\n ? (\n <SAxis render='circle' cx={0} cy={0} r={radius} />\n )\n : (\n <SAxis render='path' d={this.createLineRadial(radius, total)(categories)} />\n )}\n {categories.map((_category, i) => {\n const [x, y] = getRadianPosition(i, radius, total, angleOffset);\n const { className } = sstyled(styles).cn('SAxisLine', {\n active: activeLineIndex === i,\n });\n return <line key={i} x1={0} y1={0} x2={x} y2={y} className={className} />;\n })}\n </>,\n );\n }\n}\n\nfunction AxisTicks(props) {\n const { Element: SAxisTick, styles, size, ticks, d3, categories, offset, type } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return ticks.map((tick, i) => {\n d3.radius(() => radius * tick);\n return sstyled(styles)(\n type === 'circle'\n ? (\n <SAxisTick key={i} render='circle' cx={0} cy={0} r={radius * tick} />\n )\n : (\n <SAxisTick render='path' key={i} d={d3(categories)} />\n ),\n );\n });\n}\n\nfunction AxisLabels(props) {\n const { Element: SAxisLabel, styles, textSize, size, offset, categories, angleOffset } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return categories.map((category, i) => {\n const [x, y] = getRadianPosition(i, radius, categories.length, angleOffset);\n const [xDirection, yDirection] = getLabelPlacement(i, categories.length, angleOffset);\n if (typeof category === 'string') {\n props.dataHintsHandler.labelKey('value', i, category);\n\n const lines = category.split('\\n');\n return sstyled(styles)(\n <SAxisLabel\n key={i}\n render='text'\n childrenPosition='inside'\n x={x}\n y={y}\n xDirection={xDirection}\n yDirection={yDirection}\n >\n {lines.map((lineText, lineIndex) => (\n <tspan\n x={x}\n y={y + (lineIndex - (lines.length - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </tspan>\n ))}\n </SAxisLabel>,\n );\n }\n if (React.isValidElement(category)) {\n const { width = 0, height = 0 } = category?.props ?? {};\n const [xOffset, yOffset] = getLabelOffsetPosition(xDirection, yDirection, width, height);\n return cloneElement(category, {\n key: i,\n x: x - xOffset,\n y: y - yOffset,\n });\n }\n });\n}\n\nclass Hover extends Component {\n state = {\n index: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n unsubscribeMouseMoveRoot = null;\n unsubscribeMouseLeaveRoot = null;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, size, rootRef, patterns, getIndex, plotId } = this.asProps;\n const point = eventToPoint(e, rootRef.current);\n const diam = Math.min(size[0], size[1]);\n const centerX = point[0] - diam / 2;\n const centerY = point[1] - diam / 2;\n const { clientX, clientY } = e;\n\n const index = getIndex([centerX, centerY]);\n\n this.setState({ index }, () => {\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, {}, { index, patterns });\n eventEmitter.emit(`setTooltipVisible_${plotId}`, index !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n this.setState({ index: null }, () => {\n this.asProps.eventEmitter.emit(`setTooltipVisible_${this.asProps.plotId}`, false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveRoot', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveRoot',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n\n render() {\n const { styles, type, getPie, getPolygon } = this.asProps;\n const { index } = this.state;\n const SPieRect = this.Element;\n\n if (index !== null) {\n if (type === 'circle') {\n const [startAngle, endAngle, radius] = getPie(index);\n const circle = arc()\n .innerRadius(0)\n .outerRadius(radius)\n .startAngle(startAngle)\n .endAngle(endAngle);\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={circle()}\n />,\n );\n } else {\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={line()(getPolygon(index))}\n />,\n );\n }\n }\n\n return null;\n }\n}\n\nconst Axis = createElement(AxisRoot, {\n Ticks: AxisTicks,\n Labels: AxisLabels,\n});\n\nconst Polygon = createElement(PolygonRoot, {\n Line: PolygonLine,\n Dots: PolygonDots,\n});\n\nfunction RadarTooltip(props) {\n const SRadarTooltip = Root;\n return sstyled(props.styles)(\n <SRadarTooltip render={Tooltip} tag={Radar.Hover} excludeAnchorProps />,\n );\n}\n\n/**\n * Radar\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/radar-chart/radar-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/radar-chart/radar-chart-code/|Examples}\n */\nconst Radar = createElement(RadarRoot, {\n Axis,\n Polygon,\n Hover,\n Tooltip: [RadarTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Radar;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Radar.js","names":["Component","sstyled","Root","canUseDOM","getOriginChildren","trottle","uniqueIDEnhancement","polygonContains","line","lineRadial","curveLinearClosed","arc","React","cloneElement","createElement","PatternFill","PatternSymbol","getPatternSymbolSize","style","_sstyled","insert","Tooltip","eventToPoint","getChartDefaultColorName","measureText","clampAngle","angle","Math","PI","getBoxAxesValue","i","range","axes","total","angleOffset","func","sin","cos","getRadianPosition","getLabelXPlacement","getLabelYPlacement","getLabelPlacement","computeTextWidth","texts","textSize","defaultWidth","defaultHeight","widths","map","text","isValidElement","max","props","width","height","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","_t","push","length","pieContains","startAngle","endAngle","x","y","distance","sqrt","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","MINIMUM_OFFSET","RadarRoot","constructor","args","_defineProperty","id","uid","asProps","offset","computeOffset","getAxisProps","type","getPolygonProps","dataKey","index","data","scale","patterns","color","getHoverProps","categories","categoriesKey","getIndex","bind","getPolygon","getPie","point","findIndex","_c","size","diam","min","prevIndex","nextIndex","prevX1","prevY1","nextX1","nextY1","handlerOnClick","e","stopPropagation","rootRef","onClick","pointX","pointY","current","r","centerX","centerY","render","_ref2","SRadar","Element","Children","styles","dataHintsHandler","establishDataType","toArray","forEach","child","Radar","Axis","undefined","cn","PolygonRoot","getDotsProps","resolveColor","transparent","categoryKey","getLineProps","d3","_ref3","SPolygon","fill","Fragment","curve","d","_d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","value","_ref6","describeGroupedValues","cx","cy","_ref5","patternKey","AxisRoot","activeLineIndex","_anchorProps","setState","createLineRadial","getTicksProps","getLabelsProps","labelOffset","componentDidMount","eventEmitter","unsubscribeTooltipVisible","subscribe","handleTooltipRenderingProps","componentWillUnmount","_ref7","SAxis","state","_category","className","active","key","x1","y1","x2","y2","AxisTicks","SAxisTick","tick","_ref8","AxisLabels","SAxisLabel","category","_ref9","labelKey","lines","split","lineText","lineIndex","Hover","document","plotId","clientX","clientY","emit","generateGetBoundingClientRect","top","right","bottom","left","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","SPieRect","_ref0","circle","innerRadius","outerRadius","_ref1","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref10","SRadarTooltip","_assignProps","_______childrenComponents"],"sources":["../../src/Radar.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { polygonContains } from 'd3-polygon';\nimport { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';\nimport React, { cloneElement } from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';\nimport style from './style/radar.shadow.css';\nimport Tooltip from './Tooltip';\nimport { eventToPoint, getChartDefaultColorName, measureText } from './utils';\n\nconst clampAngle = (angle) => {\n angle = angle % (2 * Math.PI);\n if (angle < 0) angle += 2 * Math.PI;\n return angle;\n};\n\nfunction getBoxAxesValue(i, range, axes, total, angleOffset) {\n const func = axes === 'y' ? Math.sin : Math.cos;\n\n const angle = clampAngle(((total - i) * 2 * Math.PI) / total + angleOffset);\n return range * (1 - func(angle)) - range;\n}\n\nfunction getRadianPosition(i, range, total, angleOffset) {\n return [\n getBoxAxesValue(i, range, 'y', total, angleOffset),\n getBoxAxesValue(i, range, 'x', total, angleOffset),\n ];\n}\n\nconst getLabelXPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'middle';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'middle';\n\n return angle < Math.PI ? 'start' : 'end';\n};\nconst getLabelYPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'alphabetic';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'mathematical';\n\n return 'middle';\n};\n\nfunction getLabelPlacement(i, total, angleOffset) {\n return [getLabelXPlacement(i, total, angleOffset), getLabelYPlacement(i, total, angleOffset)];\n}\n\nfunction computeTextWidth(texts, textSize, defaultWidth = 50, defaultHeight = 20) {\n const widths = texts.map((text) => {\n if (typeof text === 'string') {\n return measureText(text, textSize);\n }\n if (React.isValidElement(text)) {\n // @ts-ignore\n return Math.max(text.props?.width || defaultWidth, text.props?.height || defaultHeight);\n }\n return defaultWidth;\n });\n return Math.max(...widths);\n}\n\nfunction getTicks(tickSize, radius) {\n let ticks = 0;\n while (Math.trunc(radius / (tickSize / 2)) > ticks) {\n ticks += 1;\n }\n return [...Array(ticks).keys()].reduce((ticks, _t, i, total) => {\n if (i) ticks.push(i / total.length);\n return ticks;\n }, []);\n}\n\nfunction pieContains([startAngle, endAngle, radius], [x, y]) {\n const distance = Math.sqrt(x ** 2 + y ** 2);\n if (distance > radius) return false;\n\n startAngle = clampAngle(startAngle);\n endAngle = clampAngle(endAngle);\n startAngle = startAngle < endAngle ? startAngle : startAngle - 2 * Math.PI;\n\n const angle = clampAngle(Math.atan2(y, x) + Math.PI / 2);\n const prevAngle = angle - Math.PI * 2;\n const nextAngle = angle + Math.PI * 2;\n\n if (angle > startAngle && angle < endAngle) return true;\n if (prevAngle > startAngle && prevAngle < endAngle) return true;\n if (nextAngle > startAngle && nextAngle < endAngle) return true;\n return false;\n}\n\nexport function getLabelOffsetPosition(xDirection, yDirection, width, height) {\n let xOffset = 0;\n let yOffset = 0;\n switch (`${xDirection}-${yDirection}`) {\n case 'middle-alphabetic':\n yOffset = height / 2;\n break;\n case 'start-middle':\n xOffset = -width / 2;\n break;\n case 'middle-mathematical':\n yOffset = -height / 2;\n break;\n case 'end-middle':\n xOffset = width / 2;\n break;\n }\n return [xOffset + width / 2, yOffset + height / 2];\n}\n\nconst MINIMUM_OFFSET = 5;\n\nclass RadarRoot extends Component {\n static displayName = 'Radar';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n computeOffset = 0;\n\n categoriesKey = null;\n\n static defaultProps = {\n type: 'polygon',\n angleOffset: 0,\n };\n\n get id() {\n const { id, uid } = this.asProps;\n return id || uid;\n }\n\n get offset() {\n const { offset } = this.asProps;\n return offset ?? this.computeOffset;\n }\n\n get textSize() {\n const { textSize } = this.asProps;\n return textSize ?? 12;\n }\n\n getAxisProps() {\n return {\n offset: this.offset,\n textSize: this.textSize,\n type: this.asProps.type,\n angleOffset: this.asProps.angleOffset,\n };\n }\n\n getPolygonProps({ dataKey }, index) {\n const { data, scale, angleOffset, uid, patterns } = this.asProps;\n\n return {\n offset: this.offset,\n data: data[dataKey] || [],\n scale,\n angleOffset,\n color: getChartDefaultColorName(index),\n uid: `${uid}-${index}`,\n patterns,\n };\n }\n\n getHoverProps() {\n return {\n type: this.asProps.type,\n offset: this.offset,\n categories: this.asProps.data[this.categoriesKey],\n angleOffset: this.asProps.angleOffset,\n getIndex: this.getIndex.bind(this),\n getPolygon: this.getPolygon.bind(this),\n getPie: this.getPie.bind(this),\n };\n }\n\n getIndex(point) {\n const { data, type } = this.asProps;\n const categories = data[this.categoriesKey];\n\n let index;\n if (type === 'circle') {\n index = categories.findIndex((_c, i) => pieContains(this.getPie(i), point));\n } else {\n index = categories.findIndex((_c, i) => polygonContains(this.getPolygon(i), point));\n }\n return index === -1 ? null : index;\n }\n\n getPolygon(index) {\n const { data, size, angleOffset } = this.asProps;\n const offset = this.offset;\n const categories = data[this.categoriesKey];\n const total = categories.length;\n const diam = Math.min(size[0], size[1]);\n const radius = diam / 2 - offset;\n const prevIndex = (index - 1 + total) % total;\n const nextIndex = (index + 1 + total) % total;\n const [prevX1, prevY1] = getRadianPosition(prevIndex, radius, total, angleOffset);\n const [x, y] = getRadianPosition(index, radius, total, angleOffset);\n const [nextX1, nextY1] = getRadianPosition(nextIndex, radius, total, angleOffset);\n return [\n [0, 0],\n [(prevX1 + x) / 2, (prevY1 + y) / 2],\n [x, y],\n [(nextX1 + x) / 2, (nextY1 + y) / 2],\n ];\n }\n\n getPie(index) {\n const { data, size, angleOffset } = this.asProps;\n const categories = data[this.categoriesKey];\n const offset = this.offset;\n const angle = (Math.PI * 2) / categories.length;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return [\n index * angle - angle / 2 - angleOffset,\n (index + 1) * angle - angle / 2 - angleOffset,\n radius,\n ];\n }\n\n handlerOnClick(e) {\n e.stopPropagation();\n\n const { rootRef, size, onClick } = this.asProps;\n\n if (!onClick) return;\n\n const [pointX, pointY] = eventToPoint(e, rootRef.current);\n const r = Math.min(size[0], size[1]) / 2;\n const centerX = pointX - r;\n const centerY = pointY - r;\n\n const index = this.getIndex([centerX, centerY]);\n\n if (index === null) return;\n\n onClick(index, e);\n }\n\n render() {\n const SRadar = this.Element;\n const { Children, styles, size, data, offset } = this.asProps;\n const [width, height] = size;\n\n this.asProps.dataHintsHandler.establishDataType('indexed-groups');\n\n let dataKey;\n React.Children.toArray(getOriginChildren(Children)).forEach((child) => {\n if (React.isValidElement(child) && child.type === Radar.Axis) {\n dataKey = child.props.dataKey;\n }\n });\n if (dataKey) {\n if (offset === undefined) {\n // +5 because font might not be loaded and just in case)\n this.computeOffset = computeTextWidth(data[dataKey], this.textSize) + MINIMUM_OFFSET;\n }\n this.categoriesKey = dataKey;\n }\n\n return sstyled(styles)(\n <SRadar\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / 2})`}\n onClickCapture={this.handlerOnClick.bind(this)}\n />,\n );\n }\n}\n\nclass PolygonRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ scale, curve = curveLinearClosed, size, offset, angleOffset }) => {\n scale.range([0, Math.min(size[0], size[1]) / 2 - offset]);\n\n return {\n d3: lineRadial()\n .curve(curve)\n .radius((d) => {\n return scale(d || 0);\n })\n .angle((_d, i, data) => {\n return (i / data.length) * 2 * Math.PI - angleOffset;\n }),\n };\n };\n\n getDotsProps() {\n const {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n } = this.asProps;\n return {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n categoryKey: dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n };\n }\n\n getLineProps() {\n const { d3, data, color, resolveColor, transparent } = this.asProps;\n return {\n data,\n color,\n resolveColor,\n transparent,\n d3,\n };\n }\n\n render() {\n const {\n Element: SPolygon,\n styles,\n d3,\n data,\n color,\n resolveColor,\n fill,\n uid,\n patterns,\n } = this.asProps;\n return (\n <>\n {sstyled(styles)(\n <SPolygon\n render='path'\n d={d3(data)}\n color={resolveColor(fill || color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(fill || color)}\n patterns={patterns}\n />\n )}\n </>\n );\n }\n}\n\nfunction PolygonLine(props) {\n const { Element: SPolygonLine, styles, d3, color, resolveColor, data, transparent } = props;\n return sstyled(styles)(\n <SPolygonLine\n render='path'\n d={d3(data)}\n color={resolveColor(color)}\n transparent={transparent}\n />,\n );\n}\n\nfunction PolygonDots(props) {\n const {\n Element: SPolygonDot,\n styles,\n color,\n resolveColor,\n data,\n scale,\n transparent,\n categoryKey,\n angleOffset,\n patterns,\n } = props;\n return data.map((value, i) => {\n if (value === null || value === undefined) return;\n const radius = scale(value);\n props.dataHintsHandler.describeGroupedValues(categoryKey, `${categoryKey}.${i}`);\n const [cx, cy] = getRadianPosition(i, radius, data.length, angleOffset);\n\n if (!patterns) {\n return sstyled(styles)(\n <SPolygonDot\n render='circle'\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n cx={cx}\n cy={cy}\n />,\n );\n }\n\n const patternKey = color || getChartDefaultColorName(0);\n const [width, height] = getPatternSymbolSize({\n patternKey,\n patterns,\n });\n\n return sstyled(styles)(\n <SPolygonDot\n render={PatternSymbol}\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n x={cx - width / 2}\n y={cy - height / 2}\n />,\n );\n });\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ data, dataKey }) => {\n const categories = data[dataKey];\n return {\n categories,\n };\n };\n\n unsubscribeTooltipVisible = null;\n\n state = {\n activeLineIndex: null,\n };\n\n createLineRadial(radius, total) {\n return lineRadial()\n .curve(curveLinearClosed)\n .radius(() => {\n return radius;\n })\n .angle((_d, i) => {\n return (i / total) * 2 * Math.PI;\n });\n }\n\n getTicksProps({ tickSize = 100 }) {\n const { data, offset, categories, size, type } = this.asProps;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return {\n type,\n data,\n categories,\n ticks: getTicks(tickSize, radius),\n offset,\n d3: this.createLineRadial(radius, categories.length),\n };\n }\n\n getLabelsProps({ labelOffset = 10 }) {\n const { offset, categories, textSize, angleOffset } = this.asProps;\n return {\n categories,\n textSize,\n offset: offset - labelOffset,\n angleOffset,\n };\n }\n\n handleTooltipRenderingProps = (_anchorProps, { index }) => {\n this.setState({ activeLineIndex: index });\n };\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'setTooltipRenderingProps',\n this.handleTooltipRenderingProps,\n );\n }\n\n componentWillUnmount() {\n this.unsubscribeTooltipVisible?.();\n }\n\n render() {\n const { Element: SAxis, styles, categories, size, offset, type, angleOffset } = this.asProps;\n const { activeLineIndex } = this.state;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n const total = categories.length;\n\n return sstyled(styles)(\n <>\n {type === 'circle'\n ? (\n <SAxis render='circle' cx={0} cy={0} r={radius} />\n )\n : (\n <SAxis render='path' d={this.createLineRadial(radius, total)(categories)} />\n )}\n {categories.map((_category, i) => {\n const [x, y] = getRadianPosition(i, radius, total, angleOffset);\n const { className } = sstyled(styles).cn('SAxisLine', {\n active: activeLineIndex === i,\n });\n return <line key={i} x1={0} y1={0} x2={x} y2={y} className={className} />;\n })}\n </>,\n );\n }\n}\n\nfunction AxisTicks(props) {\n const { Element: SAxisTick, styles, size, ticks, d3, categories, offset, type } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return ticks.map((tick, i) => {\n d3.radius(() => radius * tick);\n return sstyled(styles)(\n type === 'circle'\n ? (\n <SAxisTick key={i} render='circle' cx={0} cy={0} r={radius * tick} />\n )\n : (\n <SAxisTick render='path' key={i} d={d3(categories)} />\n ),\n );\n });\n}\n\nfunction AxisLabels(props) {\n const { Element: SAxisLabel, styles, textSize, size, offset, categories, angleOffset } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return categories.map((category, i) => {\n const [x, y] = getRadianPosition(i, radius, categories.length, angleOffset);\n const [xDirection, yDirection] = getLabelPlacement(i, categories.length, angleOffset);\n if (typeof category === 'string') {\n props.dataHintsHandler.labelKey('value', i, category);\n\n const lines = category.split('\\n');\n return sstyled(styles)(\n <SAxisLabel\n key={i}\n render='text'\n childrenPosition='inside'\n x={x}\n y={y}\n xDirection={xDirection}\n yDirection={yDirection}\n >\n {lines.map((lineText, lineIndex) => (\n <tspan\n x={x}\n y={y + (lineIndex - (lines.length - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </tspan>\n ))}\n </SAxisLabel>,\n );\n }\n if (React.isValidElement(category)) {\n const { width = 0, height = 0 } = category?.props ?? {};\n const [xOffset, yOffset] = getLabelOffsetPosition(xDirection, yDirection, width, height);\n return cloneElement(category, {\n key: i,\n x: x - xOffset,\n y: y - yOffset,\n });\n }\n });\n}\n\nclass Hover extends Component {\n state = {\n index: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n unsubscribeMouseMoveRoot = null;\n unsubscribeMouseLeaveRoot = null;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, size, rootRef, patterns, getIndex, plotId } = this.asProps;\n const point = eventToPoint(e, rootRef.current);\n const diam = Math.min(size[0], size[1]);\n const centerX = point[0] - diam / 2;\n const centerY = point[1] - diam / 2;\n const { clientX, clientY } = e;\n\n const index = getIndex([centerX, centerY]);\n\n this.setState({ index }, () => {\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, {}, { index, patterns });\n eventEmitter.emit(`setTooltipVisible_${plotId}`, index !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n this.setState({ index: null }, () => {\n this.asProps.eventEmitter.emit(`setTooltipVisible_${this.asProps.plotId}`, false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveRoot', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveRoot',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n\n render() {\n const { styles, type, getPie, getPolygon } = this.asProps;\n const { index } = this.state;\n const SPieRect = this.Element;\n\n if (index !== null) {\n if (type === 'circle') {\n const [startAngle, endAngle, radius] = getPie(index);\n const circle = arc()\n .innerRadius(0)\n .outerRadius(radius)\n .startAngle(startAngle)\n .endAngle(endAngle);\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={circle()}\n />,\n );\n } else {\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={line()(getPolygon(index))}\n />,\n );\n }\n }\n\n return null;\n }\n}\n\nconst Axis = createElement(AxisRoot, {\n Ticks: AxisTicks,\n Labels: AxisLabels,\n});\n\nconst Polygon = createElement(PolygonRoot, {\n Line: PolygonLine,\n Dots: PolygonDots,\n});\n\nfunction RadarTooltip(props) {\n const SRadarTooltip = Root;\n return sstyled(props.styles)(\n <SRadarTooltip render={Tooltip} tag={Radar.Hover} excludeAnchorProps />,\n );\n}\n\n/**\n * Radar\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/radar-chart/radar-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/radar-chart/radar-chart-code/|Examples}\n */\nconst Radar = createElement(RadarRoot, {\n Axis,\n Polygon,\n Hover,\n Tooltip: [RadarTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Radar;\n"],"mappings":"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","ignoreList":[]}
|