@semcore/d3-chart 3.19.5 → 3.20.0-prerelease.2
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 +7 -1
- package/lib/cjs/Area.js +9 -9
- package/lib/cjs/Axis.js +14 -14
- package/lib/cjs/Bar.js +8 -8
- package/lib/cjs/Bubble.js +10 -10
- package/lib/cjs/Donut.js +7 -7
- package/lib/cjs/Dots.js +10 -10
- package/lib/cjs/HorizontalBar.js +8 -8
- package/lib/cjs/Hover.js +3 -3
- package/lib/cjs/Line.js +9 -9
- package/lib/cjs/Plot.js +3 -3
- package/lib/cjs/Radar.js +17 -17
- package/lib/cjs/RadialTree.js +10 -10
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/ReferenceLine.js +9 -9
- package/lib/cjs/ScatterPlot.js +7 -7
- package/lib/cjs/Tooltip.js +8 -8
- package/lib/cjs/Venn.js +7 -7
- package/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/lib/cjs/a11y/PlotA11yView.js +2 -2
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +15 -15
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/es6/Area.js +9 -9
- package/lib/es6/Axis.js +14 -14
- package/lib/es6/Bar.js +8 -8
- package/lib/es6/Bubble.js +10 -10
- package/lib/es6/Donut.js +7 -7
- package/lib/es6/Dots.js +10 -10
- package/lib/es6/HorizontalBar.js +8 -8
- package/lib/es6/Hover.js +3 -3
- package/lib/es6/Line.js +9 -9
- package/lib/es6/Plot.js +3 -3
- package/lib/es6/Radar.js +17 -17
- package/lib/es6/RadialTree.js +10 -10
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/ReferenceLine.js +9 -9
- package/lib/es6/ScatterPlot.js +7 -7
- package/lib/es6/Tooltip.js +8 -8
- package/lib/es6/Venn.js +7 -7
- package/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/lib/es6/a11y/PlotA11yView.js +2 -2
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +15 -15
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/lib/types/RadialTree.d.ts +1 -1
- package/package.json +7 -7
package/lib/es6/Bar.js
CHANGED
|
@@ -13,14 +13,14 @@ import createElement from './createElement';
|
|
|
13
13
|
import ClipPath from './ClipPath';
|
|
14
14
|
import { scaleToBand, roundedPath } from './utils';
|
|
15
15
|
/*__reshadow-styles__:"./style/bar.shadow.css"*/
|
|
16
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
17
|
-
"__SBar": "
|
|
18
|
-
"--duration": "--
|
|
19
|
-
"_color": "
|
|
20
|
-
"--color": "--
|
|
21
|
-
"_hide": "
|
|
22
|
-
"_transparent": "
|
|
23
|
-
"__SBackground": "
|
|
16
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_1i228_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1i228);transition-timing-function:ease-in-out}.___SBar_1i228_gg_.__color_1i228_gg_{fill:var(--color_1i228)}.___SBar_1i228_gg_.__hide_1i228_gg_{display:none}.___SBar_1i228_gg_.__transparent_1i228_gg_{opacity:.3}.___SBackground_1i228_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}" /*__inner_css_end__*/, "1i228_gg_") /*__reshadow_css_end__*/, {
|
|
17
|
+
"__SBar": "___SBar_1i228_gg_",
|
|
18
|
+
"--duration": "--duration_1i228",
|
|
19
|
+
"_color": "__color_1i228_gg_",
|
|
20
|
+
"--color": "--color_1i228",
|
|
21
|
+
"_hide": "__hide_1i228_gg_",
|
|
22
|
+
"_transparent": "__transparent_1i228_gg_",
|
|
23
|
+
"__SBackground": "___SBackground_1i228_gg_"
|
|
24
24
|
});
|
|
25
25
|
export var MIN_HEIGHT = 2;
|
|
26
26
|
var calcPartBarY = function calcPartBarY(y, minHeight, height) {
|
package/lib/es6/Bubble.js
CHANGED
|
@@ -20,16 +20,16 @@ import ClipPath from './ClipPath';
|
|
|
20
20
|
import { CONSTANT, measureText } from './utils';
|
|
21
21
|
import Tooltip from './Tooltip';
|
|
22
22
|
/*__reshadow-styles__:"./style/bubble.shadow.css"*/
|
|
23
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
24
|
-
"__SBubble": "
|
|
25
|
-
"_color": "
|
|
26
|
-
"--color": "--
|
|
27
|
-
"_transparent": "
|
|
28
|
-
"__SCenter": "
|
|
29
|
-
"__SLabel": "
|
|
30
|
-
"_position_right": "
|
|
31
|
-
"_position_left": "
|
|
32
|
-
"--duration": "--
|
|
23
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBubble_1qxw0_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px;transition-property:cx,cy;transition-duration:var(--duration_1qxw0);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SBubble_1qxw0_gg_:hover{opacity:.8}}.___SBubble_1qxw0_gg_.__color_1qxw0_gg_{fill:var(--color_1qxw0)}.___SBubble_1qxw0_gg_.__transparent_1qxw0_gg_{opacity:.3}.___SCenter_1qxw0_gg_{text-anchor:middle;font-size:calc(var(--intergalactic-fs-100, 12px) - 1px);stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SCenter_1qxw0_gg_.__color_1qxw0_gg_{stroke:var(--color_1qxw0)}.___SCenter_1qxw0_gg_.__transparent_1qxw0_gg_{opacity:.3}.___SLabel_1qxw0_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SLabel_1qxw0_gg_._position_right_1qxw0_gg_{text-anchor:end}.___SLabel_1qxw0_gg_._position_left_1qxw0_gg_{text-anchor:start}.___SLabel_1qxw0_gg_.__color_1qxw0_gg_{fill:var(--color_1qxw0)}.___SLabel_1qxw0_gg_.__transparent_1qxw0_gg_{opacity:.3}" /*__inner_css_end__*/, "1qxw0_gg_") /*__reshadow_css_end__*/, {
|
|
24
|
+
"__SBubble": "___SBubble_1qxw0_gg_",
|
|
25
|
+
"_color": "__color_1qxw0_gg_",
|
|
26
|
+
"--color": "--color_1qxw0",
|
|
27
|
+
"_transparent": "__transparent_1qxw0_gg_",
|
|
28
|
+
"__SCenter": "___SCenter_1qxw0_gg_",
|
|
29
|
+
"__SLabel": "___SLabel_1qxw0_gg_",
|
|
30
|
+
"_position_right": "_position_right_1qxw0_gg_",
|
|
31
|
+
"_position_left": "_position_left_1qxw0_gg_",
|
|
32
|
+
"--duration": "--duration_1qxw0"
|
|
33
33
|
});
|
|
34
34
|
var BubbleRoot = /*#__PURE__*/function (_Component) {
|
|
35
35
|
_inherits(BubbleRoot, _Component);
|
package/lib/es6/Donut.js
CHANGED
|
@@ -22,13 +22,13 @@ import createElement from './createElement';
|
|
|
22
22
|
import { CONSTANT, getChartDefaultColorName } from './utils';
|
|
23
23
|
import Tooltip from './Tooltip';
|
|
24
24
|
/*__reshadow-styles__:"./style/donut.shadow.css"*/
|
|
25
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
26
|
-
"__SPie": "
|
|
27
|
-
"_color": "
|
|
28
|
-
"--color": "--
|
|
29
|
-
"_transparent": "
|
|
30
|
-
"__SEmptyData": "
|
|
31
|
-
"__SLabel": "
|
|
25
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPie_af5ta_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPie_af5ta_gg_.__color_af5ta_gg_{fill:var(--color_af5ta)}.___SPie_af5ta_gg_.__transparent_af5ta_gg_{opacity:.3}.___SEmptyData_af5ta_gg_{fill:var(--intergalactic-chart-palette-order-null, #e0e1e9)}.___SEmptyData_af5ta_gg_.__color_af5ta_gg_{fill:var(--color_af5ta)}.___SLabel_af5ta_gg_{text-anchor:middle;vertical-anchor:middle;font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}" /*__inner_css_end__*/, "af5ta_gg_") /*__reshadow_css_end__*/, {
|
|
26
|
+
"__SPie": "___SPie_af5ta_gg_",
|
|
27
|
+
"_color": "__color_af5ta_gg_",
|
|
28
|
+
"--color": "--color_af5ta",
|
|
29
|
+
"_transparent": "__transparent_af5ta_gg_",
|
|
30
|
+
"__SEmptyData": "___SEmptyData_af5ta_gg_",
|
|
31
|
+
"__SLabel": "___SLabel_af5ta_gg_"
|
|
32
32
|
});
|
|
33
33
|
var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
|
|
34
34
|
function transitionAnglePie(_ref6) {
|
package/lib/es6/Dots.js
CHANGED
|
@@ -7,16 +7,16 @@ import trottle from '@semcore/utils/lib/rafTrottle';
|
|
|
7
7
|
import createElement from './createElement';
|
|
8
8
|
import { eventToPoint, invert, interpolateValue } from './utils';
|
|
9
9
|
/*__reshadow-styles__:"./style/dot.shadow.css"*/
|
|
10
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
11
|
-
"__SDot": "
|
|
12
|
-
"--radius": "--
|
|
13
|
-
"_hide": "
|
|
14
|
-
"_active": "
|
|
15
|
-
"_color": "
|
|
16
|
-
"--color": "--
|
|
17
|
-
"_transparent": "
|
|
18
|
-
"__SDots": "
|
|
19
|
-
"--duration": "--
|
|
10
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDots_5ali4_gg_ .___SDot_5ali4_gg_{transition-duration:var(--duration_5ali4)}.___SDot_5ali4_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:var(--radius_5ali4);fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-timing-function:ease-in-out}.___SDot_5ali4_gg_.__hide_5ali4_gg_{display:none}.___SDot_5ali4_gg_.__active_5ali4_gg_{r:calc(var(--radius_5ali4)*8/6)}.___SDot_5ali4_gg_.__color_5ali4_gg_{fill:var(--color_5ali4)}.___SDot_5ali4_gg_.__transparent_5ali4_gg_{opacity:.3}" /*__inner_css_end__*/, "5ali4_gg_") /*__reshadow_css_end__*/, {
|
|
11
|
+
"__SDot": "___SDot_5ali4_gg_",
|
|
12
|
+
"--radius": "--radius_5ali4",
|
|
13
|
+
"_hide": "__hide_5ali4_gg_",
|
|
14
|
+
"_active": "__active_5ali4_gg_",
|
|
15
|
+
"_color": "__color_5ali4_gg_",
|
|
16
|
+
"--color": "--color_5ali4",
|
|
17
|
+
"_transparent": "__transparent_5ali4_gg_",
|
|
18
|
+
"__SDots": "___SDots_5ali4_gg_",
|
|
19
|
+
"--duration": "--duration_5ali4"
|
|
20
20
|
});
|
|
21
21
|
var EXCLUDE_PROPS = ['data', 'scale', 'value', 'display'];
|
|
22
22
|
function Dots(props) {
|
package/lib/es6/HorizontalBar.js
CHANGED
|
@@ -12,14 +12,14 @@ import createElement from './createElement';
|
|
|
12
12
|
import ClipPath from './ClipPath';
|
|
13
13
|
import { scaleToBand, roundedPath } from './utils';
|
|
14
14
|
/*__reshadow-styles__:"./style/bar.shadow.css"*/
|
|
15
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
16
|
-
"__SBar": "
|
|
17
|
-
"--duration": "--
|
|
18
|
-
"_color": "
|
|
19
|
-
"--color": "--
|
|
20
|
-
"_hide": "
|
|
21
|
-
"_transparent": "
|
|
22
|
-
"__SBackground": "
|
|
15
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_1i228_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1i228);transition-timing-function:ease-in-out}.___SBar_1i228_gg_.__color_1i228_gg_{fill:var(--color_1i228)}.___SBar_1i228_gg_.__hide_1i228_gg_{display:none}.___SBar_1i228_gg_.__transparent_1i228_gg_{opacity:.3}.___SBackground_1i228_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}" /*__inner_css_end__*/, "1i228_gg_") /*__reshadow_css_end__*/, {
|
|
16
|
+
"__SBar": "___SBar_1i228_gg_",
|
|
17
|
+
"--duration": "--duration_1i228",
|
|
18
|
+
"_color": "__color_1i228_gg_",
|
|
19
|
+
"--color": "--color_1i228",
|
|
20
|
+
"_hide": "__hide_1i228_gg_",
|
|
21
|
+
"_transparent": "__transparent_1i228_gg_",
|
|
22
|
+
"__SBackground": "___SBackground_1i228_gg_"
|
|
23
23
|
});
|
|
24
24
|
export var MIN_WIDTH = 2;
|
|
25
25
|
var calcPartBarX = function calcPartBarX(x, minWidth, width) {
|
package/lib/es6/Hover.js
CHANGED
|
@@ -16,9 +16,9 @@ import trottle from '@semcore/utils/lib/rafTrottle';
|
|
|
16
16
|
import createElement from './createElement';
|
|
17
17
|
import { scaleOfBandwidth, getIndexFromData, eventToPoint, invert, CONSTANT, scaleToBand } from './utils';
|
|
18
18
|
/*__reshadow-styles__:"./style/hover.shadow.css"*/
|
|
19
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
20
|
-
"__SHoverLine": "
|
|
21
|
-
"__SHoverRect": "
|
|
19
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SHoverLine_1kmg1_gg_{stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf)}.___SHoverRect_1kmg1_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "1kmg1_gg_") /*__reshadow_css_end__*/, {
|
|
20
|
+
"__SHoverLine": "___SHoverLine_1kmg1_gg_",
|
|
21
|
+
"__SHoverRect": "___SHoverRect_1kmg1_gg_"
|
|
22
22
|
});
|
|
23
23
|
import Tooltip from './Tooltip';
|
|
24
24
|
var Hover = /*#__PURE__*/function (_Component) {
|
package/lib/es6/Line.js
CHANGED
|
@@ -14,15 +14,15 @@ import { definedData, definedNullData, scaleOfBandwidth, getNullData, interpolat
|
|
|
14
14
|
import Dots from './Dots';
|
|
15
15
|
import ClipPath from './ClipPath';
|
|
16
16
|
/*__reshadow-styles__:"./style/line.shadow.css"*/
|
|
17
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
18
|
-
"__SLine": "
|
|
19
|
-
"--duration": "--
|
|
20
|
-
"_color": "
|
|
21
|
-
"--color": "--
|
|
22
|
-
"_hide": "
|
|
23
|
-
"_transparent": "
|
|
24
|
-
"__SNull": "
|
|
25
|
-
"__SAria": "
|
|
17
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLine_1dnlx_gg_{fill:transparent;stroke-width:3;stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:d;transition-duration:var(--duration_1dnlx);transition-timing-function:ease-in-out}.___SLine_1dnlx_gg_.__color_1dnlx_gg_{stroke:var(--color_1dnlx)}.___SLine_1dnlx_gg_.__hide_1dnlx_gg_{display:none}.___SLine_1dnlx_gg_.__transparent_1dnlx_gg_{opacity:.3}.___SNull_1dnlx_gg_{fill:transparent;stroke:var(--intergalactic-border-primary, #c4c7cf);stroke-dasharray:4}.___SNull_1dnlx_gg_.__hide_1dnlx_gg_{display:none}.___SAria_1dnlx_gg_{transition-property:d;transition-duration:var(--duration_1dnlx);transition-timing-function:ease-in-out;opacity:.3;fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SAria_1dnlx_gg_.__color_1dnlx_gg_{fill:var(--color_1dnlx)}" /*__inner_css_end__*/, "1dnlx_gg_") /*__reshadow_css_end__*/, {
|
|
18
|
+
"__SLine": "___SLine_1dnlx_gg_",
|
|
19
|
+
"--duration": "--duration_1dnlx",
|
|
20
|
+
"_color": "__color_1dnlx_gg_",
|
|
21
|
+
"--color": "--color_1dnlx",
|
|
22
|
+
"_hide": "__hide_1dnlx_gg_",
|
|
23
|
+
"_transparent": "__transparent_1dnlx_gg_",
|
|
24
|
+
"__SNull": "___SNull_1dnlx_gg_",
|
|
25
|
+
"__SAria": "___SAria_1dnlx_gg_"
|
|
26
26
|
});
|
|
27
27
|
var LineRoot = /*#__PURE__*/function (_Component) {
|
|
28
28
|
_inherits(LineRoot, _Component);
|
package/lib/es6/Plot.js
CHANGED
|
@@ -18,9 +18,9 @@ import { PlotA11yModule } from './a11y/PlotA11yModule';
|
|
|
18
18
|
import { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';
|
|
19
19
|
import colorResolverEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';
|
|
20
20
|
/*__reshadow-styles__:"./style/plot.shadow.css"*/
|
|
21
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
22
|
-
"__SPlot": "
|
|
23
|
-
"_keyboardFocused": "
|
|
21
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlot_akpcg_gg_{overflow:hidden}.___SPlot_akpcg_gg_:active,.___SPlot_akpcg_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_akpcg_gg_.__keyboardFocused_akpcg_gg_{border:1px solid var(--intergalactic-chart-palette-order-9, #008ff8);box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}" /*__inner_css_end__*/, "akpcg_gg_") /*__reshadow_css_end__*/, {
|
|
22
|
+
"__SPlot": "___SPlot_akpcg_gg_",
|
|
23
|
+
"_keyboardFocused": "__keyboardFocused_akpcg_gg_"
|
|
24
24
|
});
|
|
25
25
|
var PlotRoot = /*#__PURE__*/function (_Component) {
|
|
26
26
|
_inherits(PlotRoot, _Component);
|
package/lib/es6/Radar.js
CHANGED
|
@@ -21,23 +21,23 @@ import createElement from './createElement';
|
|
|
21
21
|
import { CONSTANT, eventToPoint, getChartDefaultColorName, measureText } from './utils';
|
|
22
22
|
import Tooltip from './Tooltip';
|
|
23
23
|
/*__reshadow-styles__:"./style/radar.shadow.css"*/
|
|
24
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
25
|
-
"__SAxis": "
|
|
26
|
-
"__SAxisLine": "
|
|
27
|
-
"__SAxisTick": "
|
|
28
|
-
"_active": "
|
|
29
|
-
"__SAxisLabel": "
|
|
30
|
-
"_xDirection": "
|
|
31
|
-
"--xDirection": "--
|
|
32
|
-
"_yDirection": "
|
|
33
|
-
"--yDirection": "--
|
|
34
|
-
"__SPolygon": "
|
|
35
|
-
"_color": "
|
|
36
|
-
"--color": "--
|
|
37
|
-
"__SPolygonDot": "
|
|
38
|
-
"_transparent": "
|
|
39
|
-
"__SPolygonLine": "
|
|
40
|
-
"__SPieRect": "
|
|
24
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SAxisLine_m44s2_gg_,.___SAxisTick_m44s2_gg_,.___SAxis_m44s2_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_m44s2_gg_,.___SAxisTick_m44s2_gg_{stroke-dasharray:2}.___SAxisLine_m44s2_gg_.__active_m44s2_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_m44s2_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_m44s2_gg_.__xDirection_m44s2_gg_{text-anchor:var(--xDirection_m44s2)}.___SAxisLabel_m44s2_gg_.__yDirection_m44s2_gg_{dominant-baseline:var(--yDirection_m44s2)}.___SPolygonDot_m44s2_gg_,.___SPolygon_m44s2_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_m44s2_gg_{opacity:.2}.___SPolygon_m44s2_gg_.__color_m44s2_gg_{fill:var(--color_m44s2)}.___SPolygonDot_m44s2_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_m44s2_gg_.__transparent_m44s2_gg_{opacity:.3}.___SPolygonDot_m44s2_gg_.__color_m44s2_gg_{fill:var(--color_m44s2)}.___SPolygonLine_m44s2_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_m44s2_gg_.__transparent_m44s2_gg_{opacity:.3}.___SPolygonLine_m44s2_gg_.__color_m44s2_gg_{stroke:var(--color_m44s2)}.___SPieRect_m44s2_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "m44s2_gg_") /*__reshadow_css_end__*/, {
|
|
25
|
+
"__SAxis": "___SAxis_m44s2_gg_",
|
|
26
|
+
"__SAxisLine": "___SAxisLine_m44s2_gg_",
|
|
27
|
+
"__SAxisTick": "___SAxisTick_m44s2_gg_",
|
|
28
|
+
"_active": "__active_m44s2_gg_",
|
|
29
|
+
"__SAxisLabel": "___SAxisLabel_m44s2_gg_",
|
|
30
|
+
"_xDirection": "__xDirection_m44s2_gg_",
|
|
31
|
+
"--xDirection": "--xDirection_m44s2",
|
|
32
|
+
"_yDirection": "__yDirection_m44s2_gg_",
|
|
33
|
+
"--yDirection": "--yDirection_m44s2",
|
|
34
|
+
"__SPolygon": "___SPolygon_m44s2_gg_",
|
|
35
|
+
"_color": "__color_m44s2_gg_",
|
|
36
|
+
"--color": "--color_m44s2",
|
|
37
|
+
"__SPolygonDot": "___SPolygonDot_m44s2_gg_",
|
|
38
|
+
"_transparent": "__transparent_m44s2_gg_",
|
|
39
|
+
"__SPolygonLine": "___SPolygonLine_m44s2_gg_",
|
|
40
|
+
"__SPieRect": "___SPieRect_m44s2_gg_"
|
|
41
41
|
});
|
|
42
42
|
var clampAngle = function clampAngle(angle) {
|
|
43
43
|
angle = angle % (2 * Math.PI);
|
package/lib/es6/RadialTree.js
CHANGED
|
@@ -20,16 +20,16 @@ import canUseDOM from '@semcore/utils/lib/canUseDOM';
|
|
|
20
20
|
import createElement from './createElement';
|
|
21
21
|
import { measureText } from './utils';
|
|
22
22
|
/*__reshadow-styles__:"./style/radial-tree.shadow.css"*/
|
|
23
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
24
|
-
"__SRadian": "
|
|
25
|
-
"__SLine": "
|
|
26
|
-
"_color": "
|
|
27
|
-
"--color": "--
|
|
28
|
-
"_transparent": "
|
|
29
|
-
"__SCap": "
|
|
30
|
-
"__SIcon": "
|
|
31
|
-
"__SLabel": "
|
|
32
|
-
"__SLineCap": "
|
|
23
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SRadian_k9ek4_gg_{cursor:pointer;fill:var(--intergalactic-text-large-info, #008ff8)}.___SLine_k9ek4_gg_{stroke:var(--intergalactic-text-large-info, #008ff8)}.___SLine_k9ek4_gg_.__color_k9ek4_gg_{stroke:var(--color_k9ek4)}.___SCap_k9ek4_gg_.__transparent_k9ek4_gg_,.___SIcon_k9ek4_gg_.__transparent_k9ek4_gg_,.___SLabel_k9ek4_gg_.__transparent_k9ek4_gg_,.___SLine_k9ek4_gg_.__transparent_k9ek4_gg_{opacity:.3}.___SCap_k9ek4_gg_{transition:r .1s}.___SLabel_k9ek4_gg_{fill:var(--color_k9ek4)}@media (hover:hover){.___SRadian_k9ek4_gg_:hover .___SLabel_k9ek4_gg_{cursor:pointer;filter:brightness(.6)}}@media (prefers-reduced-motion){.___SLineCap_k9ek4_gg_{transition:none}}" /*__inner_css_end__*/, "k9ek4_gg_") /*__reshadow_css_end__*/, {
|
|
24
|
+
"__SRadian": "___SRadian_k9ek4_gg_",
|
|
25
|
+
"__SLine": "___SLine_k9ek4_gg_",
|
|
26
|
+
"_color": "__color_k9ek4_gg_",
|
|
27
|
+
"--color": "--color_k9ek4",
|
|
28
|
+
"_transparent": "__transparent_k9ek4_gg_",
|
|
29
|
+
"__SCap": "___SCap_k9ek4_gg_",
|
|
30
|
+
"__SIcon": "___SIcon_k9ek4_gg_",
|
|
31
|
+
"__SLabel": "___SLabel_k9ek4_gg_",
|
|
32
|
+
"__SLineCap": "___SLineCap_k9ek4_gg_"
|
|
33
33
|
});
|
|
34
34
|
var baseAngle = -Math.PI / 2; // The top vertical line
|
|
35
35
|
var RadialTreeBase = /*#__PURE__*/function (_Component) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadialTree.js","names":["React","transition","Component","sstyled","uniqueIDEnhancement","assignProps","getOriginChildren","canUseDOM","createElement","measureText","style","_sstyled","insert","baseAngle","Math","PI","RadialTreeBase","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","handleRadianClick","bind","_createClass","key","value","uncontrolledProps","activeKey","runAppearAnimation","_window$matchMedia","_this$asProps","asProps","duration","uid","preferReduceMotion","window","matchMedia","matches","circlesAnimation","selection","selectAll","concat","interrupt","iconsAnimation","linesAnimation","labelsAnimation","circlesNodes","nodes","iconsNodes","linesNodes","labelsNodes","length","attrs","map","node","_lineNode$x","_lineNode$x$baseVal","_lineNode$y","_lineNode$y$baseVal","radianIndex","parseInt","dataset","lineNode","from","cx","x1","baseVal","cy","y1","to","attr","_","index","_attrs$index$from","_attrs$index$from2","_attrs$index$to","_attrs$index$to2","_node$width","_node$width$baseVal","_node$height","_node$height$baseVal","_lineNode$x2","_lineNode$x2$baseVal","_lineNode$y2","_lineNode$y2$baseVal","width","height","x","y","_attrs$index$from3","_attrs$index$from4","_attrs$index$to3","_attrs$index$to4","_node$x","_node$x$baseVal","_node$y","_node$y$baseVal","x2","y2","_attrs2$index$from","_attrs2$index$from2","_attrs2$index$to","_attrs2$index$to2","componentDidUpdate","prevProps","$rootProps","data","componentDidMount","_this2","event","newKey","handlers","computeTextWidth","_this$asProps2","textSize","widths","_ref9","label","max","apply","_toConsumableArray","getTitleProps","_this$asProps3","size","_size","_slicedToArray","center","getRadianProps","_this$asProps4","restRootProps","_objectWithoutProperties","_excluded","textWidth","_objectSpread","radiansCount","onRadianClick","render","_ref","SRadialTree","Element","Children","dataHintsHandler","establishDataType","styles","cn","angleOffset","centralMargin","labelMargin","iconColor","capSize","iconSize","defaultActiveKey","RadialTreeRadian","_Component2","_super2","_this3","renderRadian","getInteractiveAreaProps","_ref11","_$rootProps$data","_this$computeRadianPo","computeRadianPosition","xStart","yStart","xLabelCenter","yLabelCenter","strokeWidth","getLineProps","_ref12","_$rootProps$data2","_color","_ref13","_this$computeRadianPo2","xEnd","yEnd","_this$asProps5","transparent","resolveColor","color","stroke","getCapProps","_ref14","_$rootProps$data3","_color2","_ref15","_this$computeRadianPo3","_this$asProps6","getIconProps","_ref16","_$rootProps$data4","_iconColor","_iconSize","_icon","_ref17","_this$computeRadianPo4","isActive","_this$asProps7","icon","getLabelProps","_ref18","_$rootProps$data5","_color3","_ref20","_this$computeRadianPo5","labelAngle","isHorizontal","_this$asProps8","_ref19","angle","getRadianKey","_data$key","_data$capSize","_this$asProps9","_size2","baseCapSize","minDemSize","min","topAngle","xCenter","yCenter","start","cos","sin","end","labelCenter","_ref2","_this$asProps10","SRadian","children","_child","mergedProps","describeValueEntity","InteractiveArea","RadialTree","Radian","_ref3","_this4","SRadianList","_ref21","_ref4","SInteractiveArea","Line","_ref22","_ref5","SLine","Cap","_ref23","_ref6","SCap","radius","Icon","_ref24","_ref7","SIcon","tag","Label","_ref25","SLabel","lines","String","split","linesCount","SLabelLine","angleDegs","toFixed","transformOrigin","transform","join","sstyles","sLabelStyles","textAnchor","dominantBaseline","className","lineText","lineIndex","Title","_ref26","_ref8","STitle","setTitle"],"sources":["../../src/RadialTree.tsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled, ReturnEl, UnknownProperties, Intergalactic } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport createElement from './createElement';\nimport { measureText } from './utils';\nimport { DataHintsHandler } from './a11y/hints';\n\nimport style from './style/radial-tree.shadow.css';\n\nconst baseAngle = -Math.PI / 2; // The top vertical line\n\ntype RadianData = {\n /**\n * Text label on the end of radian.\n */\n label: string;\n /**\n * Radian key. Radian, which `key` is equal to `activeKey` is displayed as active.\n */\n key: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n};\n\n/** @deprecated */\nexport interface IRadialTreeProps extends RadialTreeProps, UnknownProperties {}\nexport type RadialTreeProps = {\n /**\n * List of radians. `{ label: string; key: string; capSize?: number; icon?: React.FC; color?: string; iconColor?: string; iconSize?: number; }`\n */\n data?: RadianData[];\n /**\n * Angel (in rads) that rotates chart. 0 means that first radian is exactly on top vertical line.\n * @default 0\n */\n angleOffset?: number;\n /**\n * Duration of appear and update animation.\n * @default 300\n */\n duration?: number;\n /**\n * Gap between the chart center and radians start point.\n * @default 50\n */\n centralMargin?: number;\n /**\n * Gap around text label.\n * @default 2\n */\n labelMargin?: number;\n /**\n * Color of all radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n /**\n * Text size in radians' labels. 1.5x is used as default text size of center text.\n * @default 14\n */\n textSize?: number;\n /**\n * Used to define the active radian in controlled way. Active radian is highligted with inreased cap size.\n */\n activeKey?: string | null;\n onActiveKeyChange?: (activeKey: string | null) => void;\n /**\n * Default value for `activeKey` property.\n */\n defaultActiveKey?: string | null;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\ntype RootAsProps = IRadialTreeProps & {\n uid: string;\n styles: React.CSSProperties;\n activeKey: string | null;\n Children: React.FC;\n size: [width: number, height: number];\n data: RadianData[];\n duration: number;\n textSize: number;\n capSize: number;\n centralMargin: number;\n labelMargin: number;\n angleOffset: number;\n transparent: boolean;\n $rootProps: RootAsProps;\n dataHintsHandler: DataHintsHandler;\n};\n\nclass RadialTreeBase extends Component<RootAsProps> {\n static displayName = 'RadialTree';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps: Partial<IRadialTreeProps> = {\n angleOffset: 0,\n duration: 300,\n centralMargin: 50,\n labelMargin: 5,\n iconColor: '#fff',\n capSize: 8,\n iconSize: 8,\n textSize: 14,\n defaultActiveKey: null,\n };\n\n Element!: React.FC<{ children?: React.ReactNode; render: string }>;\n\n constructor(props: any) {\n super(props);\n this.handleRadianClick = this.handleRadianClick.bind(this);\n }\n\n uncontrolledProps() {\n return {\n activeKey: null,\n };\n }\n\n runAppearAnimation() {\n const { duration, uid } = this.asProps;\n if (!canUseDOM()) return;\n const preferReduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)')?.matches;\n\n /** using `!(>)` instead of `<=` to get true on NaN and non numbers stuff */\n if (!(duration > 0)) return;\n if (preferReduceMotion) return;\n\n const circlesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-circle]`)\n .interrupt();\n const iconsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-icon]`)\n .interrupt();\n const linesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-line]`)\n .interrupt();\n const labelsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-label]`)\n .interrupt();\n const circlesNodes = circlesAnimation.nodes() as SVGCircleElement[];\n const iconsNodes = iconsAnimation.nodes() as SVGRectElement[];\n const linesNodes = linesAnimation.nodes() as SVGLineElement[];\n const labelsNodes = linesAnimation.nodes() as SVGTextElement[];\n\n if (circlesNodes.length > 0) {\n const attrs = circlesNodes.map((node) => {\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n cx: lineNode.x1?.baseVal?.value,\n cy: lineNode.y1?.baseVal?.value,\n },\n to: {\n cx: node.dataset['cx'],\n cy: node.dataset['cy'],\n },\n };\n });\n\n circlesAnimation\n .attr('opacity', 0)\n .attr('cx', (_, index) => attrs[index].from?.cx)\n .attr('cy', (_, index) => attrs[index].from?.cy)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('cx', (_, index) => attrs[index].to?.cx!)\n .attr('cy', (_, index) => attrs[index].to?.cy!);\n }\n if (iconsNodes.length > 0) {\n const attrs = iconsNodes.map((node) => {\n const width = node.width?.baseVal?.value;\n const height = node.height?.baseVal?.value;\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n x: lineNode.x1?.baseVal?.value - width / 2,\n y: lineNode.y1?.baseVal?.value - height / 2,\n },\n to: {\n x: node.dataset['x'],\n y: node.dataset['y'],\n },\n };\n });\n\n iconsAnimation\n .attr('opacity', 0)\n .attr('x', (_, index) => attrs[index].from?.x!)\n .attr('y', (_, index) => attrs[index].from?.y!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x', (_, index) => attrs[index].to?.x!)\n .attr('y', (_, index) => attrs[index].to?.y!);\n }\n if (linesNodes.length > 0) {\n const attrs = linesNodes.map((node) => {\n return {\n from: {\n x2: node.x1?.baseVal?.value,\n y2: node.y1?.baseVal?.value,\n },\n to: {\n x2: node.dataset['x2'],\n y2: node.dataset['y2'],\n },\n };\n });\n\n linesAnimation\n .attr('opacity', 0)\n .attr('x2', (_, index) => attrs[index].from?.x2!)\n .attr('y2', (_, index) => attrs[index].from?.y2!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x2', (_, index) => attrs[index].to?.x2!)\n .attr('y2', (_, index) => attrs[index].to?.y2!);\n }\n if (labelsNodes.length > 0) {\n labelsAnimation.attr('opacity', 0);\n labelsAnimation.transition().duration(duration).attr('opacity', 1);\n }\n }\n\n componentDidUpdate(prevProps: RootAsProps) {\n if (prevProps.$rootProps.data !== this.asProps.data) {\n this.runAppearAnimation();\n }\n }\n\n componentDidMount() {\n this.runAppearAnimation();\n }\n\n handleRadianClick(key: string) {\n return (event: React.MouseEvent) => {\n const newKey = key !== this.asProps.activeKey ? key : null;\n this.handlers.activeKey(newKey, event);\n };\n }\n\n computeTextWidth() {\n const { data, textSize } = this.asProps;\n const widths = data.map(({ label }) => measureText(label, textSize));\n\n return Math.max(...widths);\n }\n\n getTitleProps() {\n const { uid, size, textSize } = this.asProps;\n\n const [width, height] = size;\n const center = [width / 2, height / 2];\n const [x, y] = center;\n return {\n x,\n y,\n textSize: textSize * 1.5,\n ['data-radial-animation']: `${uid}-label`,\n } as IRadialTreeTitleProps;\n }\n\n getRadianProps() {\n const { data, ...restRootProps } = this.asProps;\n const textWidth = this.computeTextWidth();\n\n return {\n ...restRootProps,\n radiansCount: data.length,\n data,\n textWidth,\n onRadianClick: this.handleRadianClick,\n } as IRadialTreeRadianProps;\n }\n\n render() {\n const SRadialTree = this.Element;\n const { Children } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n\n return sstyled(this.asProps.styles)(\n <SRadialTree render='g'>\n <Children />\n </SRadialTree>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianProps extends RadialTreeRadianProps, UnknownProperties {}\nexport type RadialTreeRadianProps = RadialTreeProps & {\n radiansCount?: number;\n textWidth?: number;\n onRadianClick?: (key: string) => (event: React.MouseEvent) => void;\n};\n\ntype RadianAsProps = RootAsProps & {\n radiansCount: number;\n textWidth: number;\n onRadianClick: (key: string) => (event: React.MouseEvent) => void;\n};\n\nclass RadialTreeRadian extends Component<RadianAsProps> {\n static displayName = 'RadialTreeRadian';\n static style = style;\n\n static defaultProps: Partial<IRadialTreeRadianProps> = {\n centralMargin: 50,\n labelMargin: 2,\n iconColor: '#fff',\n capSize: 16,\n iconSize: 16,\n textSize: 14,\n };\n Element!: React.FC<{ render: string }>;\n\n constructor(props: any) {\n super(props);\n this.renderRadian = this.renderRadian.bind(this);\n }\n\n getInteractiveAreaProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xLabelCenter, yLabelCenter, capSize } = this.computeRadianPosition(\n data!,\n index,\n );\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xLabelCenter,\n y2: yLabelCenter,\n strokeWidth: capSize * 3,\n } as IRadialTreeRadianInteractiveAreaProps;\n }\n\n getLineProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xEnd, yEnd } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xEnd,\n y2: yEnd,\n stroke: color,\n resolveColor,\n transparent,\n ['data-x1']: xStart,\n ['data-y1']: yStart,\n ['data-x2']: xEnd,\n ['data-y2']: yEnd,\n ['data-radial-animation']: `${uid}-line`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianLineProps;\n }\n\n getCapProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, capSize } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xEnd,\n y: yEnd,\n ['data-cx']: xEnd,\n ['data-cy']: yEnd,\n radius: capSize,\n color,\n resolveColor,\n transparent,\n ['data-radial-animation']: `${uid}-cap-circle`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianCapProps;\n }\n\n getIconProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, isActive } = this.computeRadianPosition(data!, index);\n const { uid, resolveColor } = this.asProps;\n const iconColor = data!.iconColor ?? this.asProps.iconColor;\n const iconSize = data!.iconSize ?? this.asProps.iconSize;\n const icon = data!.icon ?? this.asProps.icon;\n const x = xEnd - iconSize! / 2;\n const y = yEnd - iconSize! / 2;\n return {\n x,\n y,\n ['data-x']: x,\n ['data-y']: y,\n iconSize,\n color: iconColor ?? '#fff',\n resolveColor,\n ['data-radial-animation']: `${uid}-cap-icon`,\n ['data-radian-index']: index,\n icon,\n tag: icon,\n isActive,\n } as IRadialTreeRadianIconProps;\n }\n\n getLabelProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xLabelCenter, yLabelCenter, labelAngle, isHorizontal } = this.computeRadianPosition(\n data!,\n index,\n );\n const { uid, textSize, transparent, resolveColor } = this.asProps;\n const { label } = data!;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xLabelCenter,\n y: yLabelCenter,\n angle: labelAngle,\n ['data-radial-animation']: `${uid}-label`,\n ['data-radian-index']: index,\n label,\n color,\n resolveColor,\n isHorizontal,\n textSize,\n transparent,\n } as IRadialTreeRadianLabelProps;\n }\n\n getRadianKey(data: RadianData, index: number) {\n return data.key ?? `radian-${index}`;\n }\n\n computeRadianPosition(data: RadianData, index: number) {\n const { centralMargin, labelMargin, angleOffset, activeKey, size, radiansCount, textWidth } =\n this.asProps;\n const [width, height] = size;\n const key = this.getRadianKey(data, index);\n const isActive = activeKey === key;\n const baseCapSize = data.capSize ?? this.asProps.capSize;\n const capSize = baseCapSize * (isActive ? 1 : 0.5);\n\n const minDemSize = Math.min(width, height) / 2;\n const length = Math.max(\n minDemSize - textWidth - baseCapSize - centralMargin - labelMargin * 2,\n 10,\n );\n\n const angle = baseAngle + angleOffset + (index / radiansCount) * (Math.PI * 2);\n const isHorizontal =\n (angle - baseAngle > (1 / 6) * Math.PI && angle - baseAngle < (5 / 6) * Math.PI) ||\n (angle - baseAngle > (7 / 6) * Math.PI && angle - baseAngle < (11 / 6) * Math.PI);\n const topAngle = -Math.PI / 2;\n const labelAngle = ((angle - topAngle) % Math.PI) + topAngle;\n\n const center = [width / 2, height / 2];\n const [xCenter, yCenter] = center;\n const start = [\n xCenter + Math.cos(angle) * centralMargin,\n yCenter + Math.sin(angle) * centralMargin,\n ];\n const end = [\n xCenter + Math.cos(angle) * (centralMargin + length),\n yCenter + Math.sin(angle) * (centralMargin + length),\n ];\n const [xStart, yStart] = start;\n const [xEnd, yEnd] = end;\n\n const labelCenter = [\n xCenter +\n Math.cos(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n yCenter +\n Math.sin(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n ];\n const [xLabelCenter, yLabelCenter] = labelCenter;\n\n return {\n xStart,\n yStart,\n xEnd,\n yEnd,\n xLabelCenter,\n yLabelCenter,\n labelAngle,\n isHorizontal,\n capSize,\n isActive,\n };\n }\n\n renderRadian(data: RadianData, index: number) {\n const { styles, Children, onRadianClick } = this.asProps;\n const key = this.getRadianKey(data, index);\n const SRadian = 'g';\n\n let children = getOriginChildren(Children);\n\n if (typeof children === 'function') {\n const _child = this.asProps.children;\n const mergedProps = assignProps(children(this.asProps), this.asProps as any);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n this.asProps.dataHintsHandler.describeValueEntity(`${index}.${data.label}`, data.label);\n\n // hidden from publicly typed export\n const InteractiveArea = (RadialTree.Radian as any).InteractiveArea;\n\n return sstyled(styles)(\n <SRadian aria-hidden key={key} onClick={onRadianClick(key)}>\n <InteractiveArea />\n {children}\n </SRadian>,\n );\n }\n\n render() {\n const { data } = this.asProps;\n const SRadianList = 'g';\n\n return sstyled(this.asProps.styles)(\n <SRadianList>{data.map((data, index) => this.renderRadian(data, index))}</SRadianList>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianInteractiveAreaProps\n extends RadialTreeRadianInteractiveAreaProps {}\nexport type RadialTreeRadianInteractiveAreaProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n strokeWidth?: number;\n};\n\ntype RadialTreeRadianInteractiveAreaAsProps = IRadialTreeRadianInteractiveAreaProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n};\nconst InteractiveArea: React.FC<RadialTreeRadianInteractiveAreaAsProps> = ({\n Element: SInteractiveArea,\n styles,\n}) => {\n return sstyled(styles)(\n <SInteractiveArea stroke='transparent' render='line' />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLineProps extends RadialTreeRadianLineProps, UnknownProperties {}\nexport type RadialTreeRadianLineProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n stroke?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-line`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianLineAsProps = IRadialTreeRadianLineProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Line: React.FC<RadialTreeRadianLineAsProps> = ({\n Element: SLine,\n styles,\n stroke,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SLine render='line' stroke={resolveColor(stroke)} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianCapProps extends RadialTreeRadianCapProps, UnknownProperties {}\nexport type RadialTreeRadianCapProps = {\n x?: number;\n y?: number;\n radius?: number;\n color?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-cap-circle`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianCapAsProps = IRadialTreeRadianCapProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Cap: React.FC<RadialTreeRadianCapAsProps> = ({\n Element: SCap,\n styles,\n x,\n y,\n radius,\n color,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SCap\n render='circle'\n cx={x}\n cy={y}\n r={radius}\n fill={resolveColor(color)}\n transparent={transparent!}\n />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianIconProps extends RadialTreeRadianIconProps, UnknownProperties {}\nexport type RadialTreeRadianIconProps = {\n x?: number;\n y?: number;\n iconSize?: number;\n color?: string;\n ['data-radial-animation']?: `${string}-cap-icon`;\n ['data-radian-index']?: number;\n isActive?: boolean;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianIconAsProps = IRadialTreeRadianIconProps & {\n Element: React.FC<{ render: string | React.FC; transparent: boolean } & React.SVGProps<any>>;\n x: number;\n y: number;\n iconSize: number;\n styles: React.CSSProperties;\n tag?: React.FC;\n};\nconst Icon: React.FC<RadialTreeRadianIconAsProps> = ({\n Element: SIcon,\n styles,\n isActive,\n tag,\n x,\n y,\n iconSize,\n transparent,\n}) => {\n if (!(isActive && tag)) return null;\n const width = iconSize;\n const height = iconSize;\n return sstyled(styles)(\n <SIcon x={x} y={y} width={width} height={height} render={tag} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLabelProps\n extends RadialTreeRadianLabelProps,\n UnknownProperties {}\nexport type RadialTreeRadianLabelProps = {\n x?: number;\n y?: number;\n color?: string;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n ['data-radian-index']?: number;\n label?: string;\n isHorizontal?: boolean;\n angle?: number;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianLabelAsProps = IRadialTreeRadianLabelProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n styles: React.CSSProperties;\n x: number;\n y: number;\n angle: number;\n textSize: number;\n resolveColor: (color?: string) => string;\n};\nconst Label: React.FC<RadialTreeRadianLabelAsProps> = ({\n Element: SLabel,\n Children,\n styles,\n label,\n color,\n resolveColor,\n isHorizontal,\n x,\n y,\n textSize,\n angle,\n transparent,\n}) => {\n const lines = String(label).split('\\n');\n const linesCount = lines.length;\n const SLabelLine = 'tspan';\n\n const angleDegs = ((angle / Math.PI) * 180).toFixed(2);\n const transformOrigin = [x.toFixed(2), y.toFixed(2)];\n const transform = `rotate(${[angleDegs, ...transformOrigin].join(', ')})`;\n\n const sstyles = sstyled(styles);\n const sLabelStyles = sstyles.cn('SLabel', {\n color: resolveColor(color),\n 'text-cursor': isHorizontal ? 'text' : 'vertical-text',\n transparent,\n });\n\n return (\n <SLabel\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n className={sLabelStyles.className}\n style={sLabelStyles.style}\n x={x.toFixed(2)}\n y={y.toFixed(2)}\n transform={transform}\n >\n {lines.map((lineText, lineIndex) => (\n <SLabelLine\n x={x}\n y={y + (lineIndex - (linesCount - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </SLabelLine>\n ))}\n <Children />\n </SLabel>\n ) as React.ReactElement;\n};\n\nconst Radian = createElement(RadialTreeRadian, {\n InteractiveArea,\n Line,\n Cap,\n Icon,\n Label,\n});\n\n/** @deprecated */\nexport interface IRadialTreeTitleProps extends RadialTreeTitleProps, UnknownProperties {}\nexport type RadialTreeTitleProps = {\n x?: number;\n y?: number;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n color?: string;\n};\n\ntype RadialTreeTitleAsProps = IRadialTreeTitleProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n children: React.ReactNode;\n styles: React.CSSProperties;\n dataHintsHandler: DataHintsHandler;\n resolveColor: (color?: string) => string;\n};\nconst Title: React.FC<RadialTreeTitleAsProps> = ({\n Element: STitle,\n Children,\n children,\n styles,\n textSize,\n color,\n resolveColor,\n x,\n y,\n dataHintsHandler,\n}) => {\n if (typeof children === 'string') {\n dataHintsHandler.setTitle('vertical', children);\n }\n return sstyled(styles)(\n <STitle\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n fontSize={textSize}\n fill={resolveColor(color)}\n x={x}\n y={y}\n >\n <Children />\n </STitle>,\n ) as React.ReactElement;\n};\n\ntype IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = Intergalactic.Tag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;\n\nconst RadialTree = createElement(RadialTreeBase, { Title, Radian }) as IntergalacticD3Component<\n 'g',\n RadialTreeProps\n> & {\n Title: IntergalacticD3Component<'text', RadialTreeTitleProps>;\n Radian: IntergalacticD3Component<'g', RadialTreeRadianProps> & {\n Line: IntergalacticD3Component<'line', RadialTreeRadianLineProps>;\n Cap: IntergalacticD3Component<'circle', RadialTreeRadianCapProps>;\n Icon: IntergalacticD3Component<'g', RadialTreeRadianIconProps>;\n Label: IntergalacticD3Component<'text', RadialTreeRadianLabelProps>;\n };\n};\n\nexport default RadialTree;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RadialTree.js","names":["React","transition","Component","sstyled","uniqueIDEnhancement","assignProps","getOriginChildren","canUseDOM","createElement","measureText","style","_sstyled","insert","baseAngle","Math","PI","RadialTreeBase","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","handleRadianClick","bind","_createClass","key","value","uncontrolledProps","activeKey","runAppearAnimation","_window$matchMedia","_this$asProps","asProps","duration","uid","preferReduceMotion","window","matchMedia","matches","circlesAnimation","selection","selectAll","concat","interrupt","iconsAnimation","linesAnimation","labelsAnimation","circlesNodes","nodes","iconsNodes","linesNodes","labelsNodes","length","attrs","map","node","_lineNode$x","_lineNode$x$baseVal","_lineNode$y","_lineNode$y$baseVal","radianIndex","parseInt","dataset","lineNode","from","cx","x1","baseVal","cy","y1","to","attr","_","index","_attrs$index$from","_attrs$index$from2","_attrs$index$to","_attrs$index$to2","_node$width","_node$width$baseVal","_node$height","_node$height$baseVal","_lineNode$x2","_lineNode$x2$baseVal","_lineNode$y2","_lineNode$y2$baseVal","width","height","x","y","_attrs$index$from3","_attrs$index$from4","_attrs$index$to3","_attrs$index$to4","_node$x","_node$x$baseVal","_node$y","_node$y$baseVal","x2","y2","_attrs2$index$from","_attrs2$index$from2","_attrs2$index$to","_attrs2$index$to2","componentDidUpdate","prevProps","$rootProps","data","componentDidMount","_this2","event","newKey","handlers","computeTextWidth","_this$asProps2","textSize","widths","_ref9","label","max","apply","_toConsumableArray","getTitleProps","_this$asProps3","size","_size","_slicedToArray","center","getRadianProps","_this$asProps4","restRootProps","_objectWithoutProperties","_excluded","textWidth","_objectSpread","radiansCount","onRadianClick","render","_ref","SRadialTree","Element","Children","dataHintsHandler","establishDataType","styles","cn","angleOffset","centralMargin","labelMargin","iconColor","capSize","iconSize","defaultActiveKey","RadialTreeRadian","_Component2","_super2","_this3","renderRadian","getInteractiveAreaProps","_ref11","_$rootProps$data","_this$computeRadianPo","computeRadianPosition","xStart","yStart","xLabelCenter","yLabelCenter","strokeWidth","getLineProps","_ref12","_$rootProps$data2","_color","_ref13","_this$computeRadianPo2","xEnd","yEnd","_this$asProps5","transparent","resolveColor","color","stroke","getCapProps","_ref14","_$rootProps$data3","_color2","_ref15","_this$computeRadianPo3","_this$asProps6","getIconProps","_ref16","_$rootProps$data4","_iconColor","_iconSize","_icon","_ref17","_this$computeRadianPo4","isActive","_this$asProps7","icon","getLabelProps","_ref18","_$rootProps$data5","_color3","_ref20","_this$computeRadianPo5","labelAngle","isHorizontal","_this$asProps8","_ref19","angle","getRadianKey","_data$key","_data$capSize","_this$asProps9","_size2","baseCapSize","minDemSize","min","topAngle","xCenter","yCenter","start","cos","sin","end","labelCenter","_ref2","_this$asProps10","SRadian","children","_child","mergedProps","describeValueEntity","InteractiveArea","RadialTree","Radian","_ref3","_this4","SRadianList","_ref21","_ref4","SInteractiveArea","Line","_ref22","_ref5","SLine","Cap","_ref23","_ref6","SCap","radius","Icon","_ref24","_ref7","SIcon","tag","Label","_ref25","SLabel","lines","String","split","linesCount","SLabelLine","angleDegs","toFixed","transformOrigin","transform","join","sstyles","sLabelStyles","textAnchor","dominantBaseline","className","lineText","lineIndex","Title","_ref26","_ref8","STitle","setTitle"],"sources":["../../src/RadialTree.tsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled, ReturnEl, UnknownProperties, Intergalactic } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport createElement from './createElement';\nimport { measureText } from './utils';\nimport { DataHintsHandler } from './a11y/hints';\n\nimport style from './style/radial-tree.shadow.css';\n\nconst baseAngle = -Math.PI / 2; // The top vertical line\n\ntype RadianData = {\n /**\n * Text label on the end of radian.\n */\n label: string;\n /**\n * Radian key. Radian, which `key` is equal to `activeKey` is displayed as active.\n */\n key: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n};\n\n/** @deprecated */\nexport interface IRadialTreeProps extends RadialTreeProps, UnknownProperties {}\nexport type RadialTreeProps = {\n /**\n * List of radians. `{ label: string; key: string; capSize?: number; icon?: React.FC; color?: string; iconColor?: string; iconSize?: number; }`\n */\n data?: RadianData[];\n /**\n * Angel (in rads) that rotates chart. 0 means that first radian is exactly on top vertical line.\n * @default 0\n */\n angleOffset?: number;\n /**\n * Duration of appear and update animation.\n * @default 300\n */\n duration?: number;\n /**\n * Gap between the chart center and radians start point.\n * @default 50\n */\n centralMargin?: number;\n /**\n * Gap around text label.\n * @default 2\n */\n labelMargin?: number;\n /**\n * Color of all radian's line, cap and label.\n * @default #008FF8\n */\n color?: string;\n /**\n * Size of the cap (filled circle on the end of the radian).\n * @default 16\n */\n capSize?: number;\n /**\n * Icon, that displayed in the cap of the active radian (usage example `icon: UserM`).\n */\n icon?: React.FC;\n /**\n * Color of icon.\n * @default #fff\n */\n iconColor?: string;\n /**\n * Size of icon.\n * @default 16\n */\n iconSize?: number;\n /**\n * Text size in radians' labels. 1.5x is used as default text size of center text.\n * @default 14\n */\n textSize?: number;\n /**\n * Used to define the active radian in controlled way. Active radian is highlighted with inreased cap size.\n */\n activeKey?: string | null;\n onActiveKeyChange?: (activeKey: string | null) => void;\n /**\n * Default value for `activeKey` property.\n */\n defaultActiveKey?: string | null;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\ntype RootAsProps = IRadialTreeProps & {\n uid: string;\n styles: React.CSSProperties;\n activeKey: string | null;\n Children: React.FC;\n size: [width: number, height: number];\n data: RadianData[];\n duration: number;\n textSize: number;\n capSize: number;\n centralMargin: number;\n labelMargin: number;\n angleOffset: number;\n transparent: boolean;\n $rootProps: RootAsProps;\n dataHintsHandler: DataHintsHandler;\n};\n\nclass RadialTreeBase extends Component<RootAsProps> {\n static displayName = 'RadialTree';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps: Partial<IRadialTreeProps> = {\n angleOffset: 0,\n duration: 300,\n centralMargin: 50,\n labelMargin: 5,\n iconColor: '#fff',\n capSize: 8,\n iconSize: 8,\n textSize: 14,\n defaultActiveKey: null,\n };\n\n Element!: React.FC<{ children?: React.ReactNode; render: string }>;\n\n constructor(props: any) {\n super(props);\n this.handleRadianClick = this.handleRadianClick.bind(this);\n }\n\n uncontrolledProps() {\n return {\n activeKey: null,\n };\n }\n\n runAppearAnimation() {\n const { duration, uid } = this.asProps;\n if (!canUseDOM()) return;\n const preferReduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)')?.matches;\n\n /** using `!(>)` instead of `<=` to get true on NaN and non numbers stuff */\n if (!(duration > 0)) return;\n if (preferReduceMotion) return;\n\n const circlesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-circle]`)\n .interrupt();\n const iconsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-cap-icon]`)\n .interrupt();\n const linesAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-line]`)\n .interrupt();\n const labelsAnimation = transition()\n .selection()\n .selectAll(`[data-radial-animation=${uid}-label]`)\n .interrupt();\n const circlesNodes = circlesAnimation.nodes() as SVGCircleElement[];\n const iconsNodes = iconsAnimation.nodes() as SVGRectElement[];\n const linesNodes = linesAnimation.nodes() as SVGLineElement[];\n const labelsNodes = linesAnimation.nodes() as SVGTextElement[];\n\n if (circlesNodes.length > 0) {\n const attrs = circlesNodes.map((node) => {\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n cx: lineNode.x1?.baseVal?.value,\n cy: lineNode.y1?.baseVal?.value,\n },\n to: {\n cx: node.dataset['cx'],\n cy: node.dataset['cy'],\n },\n };\n });\n\n circlesAnimation\n .attr('opacity', 0)\n .attr('cx', (_, index) => attrs[index].from?.cx)\n .attr('cy', (_, index) => attrs[index].from?.cy)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('cx', (_, index) => attrs[index].to?.cx!)\n .attr('cy', (_, index) => attrs[index].to?.cy!);\n }\n if (iconsNodes.length > 0) {\n const attrs = iconsNodes.map((node) => {\n const width = node.width?.baseVal?.value;\n const height = node.height?.baseVal?.value;\n const radianIndex = parseInt(node.dataset.radianIndex!, 10);\n const lineNode = linesNodes[radianIndex];\n return {\n from: {\n x: lineNode.x1?.baseVal?.value - width / 2,\n y: lineNode.y1?.baseVal?.value - height / 2,\n },\n to: {\n x: node.dataset['x'],\n y: node.dataset['y'],\n },\n };\n });\n\n iconsAnimation\n .attr('opacity', 0)\n .attr('x', (_, index) => attrs[index].from?.x!)\n .attr('y', (_, index) => attrs[index].from?.y!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x', (_, index) => attrs[index].to?.x!)\n .attr('y', (_, index) => attrs[index].to?.y!);\n }\n if (linesNodes.length > 0) {\n const attrs = linesNodes.map((node) => {\n return {\n from: {\n x2: node.x1?.baseVal?.value,\n y2: node.y1?.baseVal?.value,\n },\n to: {\n x2: node.dataset['x2'],\n y2: node.dataset['y2'],\n },\n };\n });\n\n linesAnimation\n .attr('opacity', 0)\n .attr('x2', (_, index) => attrs[index].from?.x2!)\n .attr('y2', (_, index) => attrs[index].from?.y2!)\n .transition()\n .duration(duration)\n .attr('opacity', 1)\n .attr('x2', (_, index) => attrs[index].to?.x2!)\n .attr('y2', (_, index) => attrs[index].to?.y2!);\n }\n if (labelsNodes.length > 0) {\n labelsAnimation.attr('opacity', 0);\n labelsAnimation.transition().duration(duration).attr('opacity', 1);\n }\n }\n\n componentDidUpdate(prevProps: RootAsProps) {\n if (prevProps.$rootProps.data !== this.asProps.data) {\n this.runAppearAnimation();\n }\n }\n\n componentDidMount() {\n this.runAppearAnimation();\n }\n\n handleRadianClick(key: string) {\n return (event: React.MouseEvent) => {\n const newKey = key !== this.asProps.activeKey ? key : null;\n this.handlers.activeKey(newKey, event);\n };\n }\n\n computeTextWidth() {\n const { data, textSize } = this.asProps;\n const widths = data.map(({ label }) => measureText(label, textSize));\n\n return Math.max(...widths);\n }\n\n getTitleProps() {\n const { uid, size, textSize } = this.asProps;\n\n const [width, height] = size;\n const center = [width / 2, height / 2];\n const [x, y] = center;\n return {\n x,\n y,\n textSize: textSize * 1.5,\n ['data-radial-animation']: `${uid}-label`,\n } as IRadialTreeTitleProps;\n }\n\n getRadianProps() {\n const { data, ...restRootProps } = this.asProps;\n const textWidth = this.computeTextWidth();\n\n return {\n ...restRootProps,\n radiansCount: data.length,\n data,\n textWidth,\n onRadianClick: this.handleRadianClick,\n } as IRadialTreeRadianProps;\n }\n\n render() {\n const SRadialTree = this.Element;\n const { Children } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n\n return sstyled(this.asProps.styles)(\n <SRadialTree render='g'>\n <Children />\n </SRadialTree>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianProps extends RadialTreeRadianProps, UnknownProperties {}\nexport type RadialTreeRadianProps = RadialTreeProps & {\n radiansCount?: number;\n textWidth?: number;\n onRadianClick?: (key: string) => (event: React.MouseEvent) => void;\n};\n\ntype RadianAsProps = RootAsProps & {\n radiansCount: number;\n textWidth: number;\n onRadianClick: (key: string) => (event: React.MouseEvent) => void;\n};\n\nclass RadialTreeRadian extends Component<RadianAsProps> {\n static displayName = 'RadialTreeRadian';\n static style = style;\n\n static defaultProps: Partial<IRadialTreeRadianProps> = {\n centralMargin: 50,\n labelMargin: 2,\n iconColor: '#fff',\n capSize: 16,\n iconSize: 16,\n textSize: 14,\n };\n Element!: React.FC<{ render: string }>;\n\n constructor(props: any) {\n super(props);\n this.renderRadian = this.renderRadian.bind(this);\n }\n\n getInteractiveAreaProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xLabelCenter, yLabelCenter, capSize } = this.computeRadianPosition(\n data!,\n index,\n );\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xLabelCenter,\n y2: yLabelCenter,\n strokeWidth: capSize * 3,\n } as IRadialTreeRadianInteractiveAreaProps;\n }\n\n getLineProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xStart, yStart, xEnd, yEnd } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x1: xStart,\n y1: yStart,\n x2: xEnd,\n y2: yEnd,\n stroke: color,\n resolveColor,\n transparent,\n ['data-x1']: xStart,\n ['data-y1']: yStart,\n ['data-x2']: xEnd,\n ['data-y2']: yEnd,\n ['data-radial-animation']: `${uid}-line`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianLineProps;\n }\n\n getCapProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, capSize } = this.computeRadianPosition(data!, index);\n const { uid, transparent, resolveColor } = this.asProps;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xEnd,\n y: yEnd,\n ['data-cx']: xEnd,\n ['data-cy']: yEnd,\n radius: capSize,\n color,\n resolveColor,\n transparent,\n ['data-radial-animation']: `${uid}-cap-circle`,\n ['data-radian-index']: index,\n } as IRadialTreeRadianCapProps;\n }\n\n getIconProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xEnd, yEnd, isActive } = this.computeRadianPosition(data!, index);\n const { uid, resolveColor } = this.asProps;\n const iconColor = data!.iconColor ?? this.asProps.iconColor;\n const iconSize = data!.iconSize ?? this.asProps.iconSize;\n const icon = data!.icon ?? this.asProps.icon;\n const x = xEnd - iconSize! / 2;\n const y = yEnd - iconSize! / 2;\n return {\n x,\n y,\n ['data-x']: x,\n ['data-y']: y,\n iconSize,\n color: iconColor ?? '#fff',\n resolveColor,\n ['data-radial-animation']: `${uid}-cap-icon`,\n ['data-radian-index']: index,\n icon,\n tag: icon,\n isActive,\n } as IRadialTreeRadianIconProps;\n }\n\n getLabelProps({ $rootProps }: { $rootProps: IRadialTreeProps }, index: number) {\n const data = $rootProps.data?.[index];\n const { xLabelCenter, yLabelCenter, labelAngle, isHorizontal } = this.computeRadianPosition(\n data!,\n index,\n );\n const { uid, textSize, transparent, resolveColor } = this.asProps;\n const { label } = data!;\n const color = data!.color ?? this.asProps.color;\n\n return {\n x: xLabelCenter,\n y: yLabelCenter,\n angle: labelAngle,\n ['data-radial-animation']: `${uid}-label`,\n ['data-radian-index']: index,\n label,\n color,\n resolveColor,\n isHorizontal,\n textSize,\n transparent,\n } as IRadialTreeRadianLabelProps;\n }\n\n getRadianKey(data: RadianData, index: number) {\n return data.key ?? `radian-${index}`;\n }\n\n computeRadianPosition(data: RadianData, index: number) {\n const { centralMargin, labelMargin, angleOffset, activeKey, size, radiansCount, textWidth } =\n this.asProps;\n const [width, height] = size;\n const key = this.getRadianKey(data, index);\n const isActive = activeKey === key;\n const baseCapSize = data.capSize ?? this.asProps.capSize;\n const capSize = baseCapSize * (isActive ? 1 : 0.5);\n\n const minDemSize = Math.min(width, height) / 2;\n const length = Math.max(\n minDemSize - textWidth - baseCapSize - centralMargin - labelMargin * 2,\n 10,\n );\n\n const angle = baseAngle + angleOffset + (index / radiansCount) * (Math.PI * 2);\n const isHorizontal =\n (angle - baseAngle > (1 / 6) * Math.PI && angle - baseAngle < (5 / 6) * Math.PI) ||\n (angle - baseAngle > (7 / 6) * Math.PI && angle - baseAngle < (11 / 6) * Math.PI);\n const topAngle = -Math.PI / 2;\n const labelAngle = ((angle - topAngle) % Math.PI) + topAngle;\n\n const center = [width / 2, height / 2];\n const [xCenter, yCenter] = center;\n const start = [\n xCenter + Math.cos(angle) * centralMargin,\n yCenter + Math.sin(angle) * centralMargin,\n ];\n const end = [\n xCenter + Math.cos(angle) * (centralMargin + length),\n yCenter + Math.sin(angle) * (centralMargin + length),\n ];\n const [xStart, yStart] = start;\n const [xEnd, yEnd] = end;\n\n const labelCenter = [\n xCenter +\n Math.cos(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n yCenter +\n Math.sin(angle) * (centralMargin + length + baseCapSize + textWidth / 2 + labelMargin),\n ];\n const [xLabelCenter, yLabelCenter] = labelCenter;\n\n return {\n xStart,\n yStart,\n xEnd,\n yEnd,\n xLabelCenter,\n yLabelCenter,\n labelAngle,\n isHorizontal,\n capSize,\n isActive,\n };\n }\n\n renderRadian(data: RadianData, index: number) {\n const { styles, Children, onRadianClick } = this.asProps;\n const key = this.getRadianKey(data, index);\n const SRadian = 'g';\n\n let children = getOriginChildren(Children);\n\n if (typeof children === 'function') {\n const _child = this.asProps.children;\n const mergedProps = assignProps(children(this.asProps), this.asProps as any);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n this.asProps.dataHintsHandler.describeValueEntity(`${index}.${data.label}`, data.label);\n\n // hidden from publicly typed export\n const InteractiveArea = (RadialTree.Radian as any).InteractiveArea;\n\n return sstyled(styles)(\n <SRadian aria-hidden key={key} onClick={onRadianClick(key)}>\n <InteractiveArea />\n {children}\n </SRadian>,\n );\n }\n\n render() {\n const { data } = this.asProps;\n const SRadianList = 'g';\n\n return sstyled(this.asProps.styles)(\n <SRadianList>{data.map((data, index) => this.renderRadian(data, index))}</SRadianList>,\n );\n }\n}\n\n/** @deprecated */\nexport interface IRadialTreeRadianInteractiveAreaProps\n extends RadialTreeRadianInteractiveAreaProps {}\nexport type RadialTreeRadianInteractiveAreaProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n strokeWidth?: number;\n};\n\ntype RadialTreeRadianInteractiveAreaAsProps = IRadialTreeRadianInteractiveAreaProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n};\nconst InteractiveArea: React.FC<RadialTreeRadianInteractiveAreaAsProps> = ({\n Element: SInteractiveArea,\n styles,\n}) => {\n return sstyled(styles)(\n <SInteractiveArea stroke='transparent' render='line' />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLineProps extends RadialTreeRadianLineProps, UnknownProperties {}\nexport type RadialTreeRadianLineProps = {\n x1?: number;\n y1?: number;\n x2?: number;\n y2?: number;\n stroke?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-line`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianLineAsProps = IRadialTreeRadianLineProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Line: React.FC<RadialTreeRadianLineAsProps> = ({\n Element: SLine,\n styles,\n stroke,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SLine render='line' stroke={resolveColor(stroke)} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianCapProps extends RadialTreeRadianCapProps, UnknownProperties {}\nexport type RadialTreeRadianCapProps = {\n x?: number;\n y?: number;\n radius?: number;\n color?: string;\n transparent?: boolean;\n ['data-radial-animation']?: `${string}-cap-circle`;\n ['data-radian-index']?: number;\n};\n\ntype RadialTreeRadianCapAsProps = IRadialTreeRadianCapProps & {\n Element: React.FC<{ render: string; transparent: boolean } & React.SVGProps<any>>;\n styles: React.CSSProperties;\n resolveColor: (color?: string) => string;\n};\nconst Cap: React.FC<RadialTreeRadianCapAsProps> = ({\n Element: SCap,\n styles,\n x,\n y,\n radius,\n color,\n resolveColor,\n transparent,\n}) => {\n return sstyled(styles)(\n <SCap\n render='circle'\n cx={x}\n cy={y}\n r={radius}\n fill={resolveColor(color)}\n transparent={transparent!}\n />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianIconProps extends RadialTreeRadianIconProps, UnknownProperties {}\nexport type RadialTreeRadianIconProps = {\n x?: number;\n y?: number;\n iconSize?: number;\n color?: string;\n ['data-radial-animation']?: `${string}-cap-icon`;\n ['data-radian-index']?: number;\n isActive?: boolean;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianIconAsProps = IRadialTreeRadianIconProps & {\n Element: React.FC<{ render: string | React.FC; transparent: boolean } & React.SVGProps<any>>;\n x: number;\n y: number;\n iconSize: number;\n styles: React.CSSProperties;\n tag?: React.FC;\n};\nconst Icon: React.FC<RadialTreeRadianIconAsProps> = ({\n Element: SIcon,\n styles,\n isActive,\n tag,\n x,\n y,\n iconSize,\n transparent,\n}) => {\n if (!(isActive && tag)) return null;\n const width = iconSize;\n const height = iconSize;\n return sstyled(styles)(\n <SIcon x={x} y={y} width={width} height={height} render={tag} transparent={transparent!} />,\n ) as React.ReactElement;\n};\n\n/** @deprecated */\nexport interface IRadialTreeRadianLabelProps\n extends RadialTreeRadianLabelProps,\n UnknownProperties {}\nexport type RadialTreeRadianLabelProps = {\n x?: number;\n y?: number;\n color?: string;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n ['data-radian-index']?: number;\n label?: string;\n isHorizontal?: boolean;\n angle?: number;\n transparent?: boolean;\n};\n\ntype RadialTreeRadianLabelAsProps = IRadialTreeRadianLabelProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n styles: React.CSSProperties;\n x: number;\n y: number;\n angle: number;\n textSize: number;\n resolveColor: (color?: string) => string;\n};\nconst Label: React.FC<RadialTreeRadianLabelAsProps> = ({\n Element: SLabel,\n Children,\n styles,\n label,\n color,\n resolveColor,\n isHorizontal,\n x,\n y,\n textSize,\n angle,\n transparent,\n}) => {\n const lines = String(label).split('\\n');\n const linesCount = lines.length;\n const SLabelLine = 'tspan';\n\n const angleDegs = ((angle / Math.PI) * 180).toFixed(2);\n const transformOrigin = [x.toFixed(2), y.toFixed(2)];\n const transform = `rotate(${[angleDegs, ...transformOrigin].join(', ')})`;\n\n const sstyles = sstyled(styles);\n const sLabelStyles = sstyles.cn('SLabel', {\n color: resolveColor(color),\n 'text-cursor': isHorizontal ? 'text' : 'vertical-text',\n transparent,\n });\n\n return (\n <SLabel\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n className={sLabelStyles.className}\n style={sLabelStyles.style}\n x={x.toFixed(2)}\n y={y.toFixed(2)}\n transform={transform}\n >\n {lines.map((lineText, lineIndex) => (\n <SLabelLine\n x={x}\n y={y + (lineIndex - (linesCount - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </SLabelLine>\n ))}\n <Children />\n </SLabel>\n ) as React.ReactElement;\n};\n\nconst Radian = createElement(RadialTreeRadian, {\n InteractiveArea,\n Line,\n Cap,\n Icon,\n Label,\n});\n\n/** @deprecated */\nexport interface IRadialTreeTitleProps extends RadialTreeTitleProps, UnknownProperties {}\nexport type RadialTreeTitleProps = {\n x?: number;\n y?: number;\n textSize?: number;\n ['data-radial-animation']?: `${string}-label`;\n color?: string;\n};\n\ntype RadialTreeTitleAsProps = IRadialTreeTitleProps & {\n Element: React.FC<{ render: string } & React.SVGProps<any>>;\n Children: React.FC;\n children: React.ReactNode;\n styles: React.CSSProperties;\n dataHintsHandler: DataHintsHandler;\n resolveColor: (color?: string) => string;\n};\nconst Title: React.FC<RadialTreeTitleAsProps> = ({\n Element: STitle,\n Children,\n children,\n styles,\n textSize,\n color,\n resolveColor,\n x,\n y,\n dataHintsHandler,\n}) => {\n if (typeof children === 'string') {\n dataHintsHandler.setTitle('vertical', children);\n }\n return sstyled(styles)(\n <STitle\n aria-hidden\n render='text'\n textAnchor='middle'\n dominantBaseline='central'\n fontSize={textSize}\n fill={resolveColor(color)}\n x={x}\n y={y}\n >\n <Children />\n </STitle>,\n ) as React.ReactElement;\n};\n\ntype IntergalacticD3Component<BaseTag extends Intergalactic.Tag, Props, Context = {}> = (<\n Tag extends Intergalactic.Tag = Intergalactic.Tag,\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<Tag, Props, Context>,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<BaseTag>;\n\nconst RadialTree = createElement(RadialTreeBase, { Title, Radian }) as IntergalacticD3Component<\n 'g',\n RadialTreeProps\n> & {\n Title: IntergalacticD3Component<'text', RadialTreeTitleProps>;\n Radian: IntergalacticD3Component<'g', RadialTreeRadianProps> & {\n Line: IntergalacticD3Component<'line', RadialTreeRadianLineProps>;\n Cap: IntergalacticD3Component<'circle', RadialTreeRadianCapProps>;\n Icon: IntergalacticD3Component<'g', RadialTreeRadianIconProps>;\n Label: IntergalacticD3Component<'text', RadialTreeRadianLabelProps>;\n };\n};\n\nexport default RadialTree;\n"],"mappings":"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"}
|
package/lib/es6/ReferenceLine.js
CHANGED
|
@@ -11,15 +11,15 @@ import { Component, sstyled } from '@semcore/core';
|
|
|
11
11
|
import createElement from './createElement';
|
|
12
12
|
import { scaleOfBandwidth } from './utils';
|
|
13
13
|
/*__reshadow-styles__:"./style/reference-line.shadow.css"*/
|
|
14
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
15
|
-
"__SReferenceLine": "
|
|
16
|
-
"__STitle": "
|
|
17
|
-
"--transform-origin": "--transform-
|
|
18
|
-
"_position_top": "
|
|
19
|
-
"_position_bottom": "
|
|
20
|
-
"_position_right": "
|
|
21
|
-
"_position_left": "
|
|
22
|
-
"__SBackground": "
|
|
14
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SReferenceLine_jlk9o_gg_{fill:none;stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf)}.___STitle_jlk9o_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-chart-grid-text-label, #6c6e79);transform-origin:var(--transform-origin_jlk9o)}.___STitle_jlk9o_gg_._position_top_jlk9o_gg_{text-anchor:middle}.___STitle_jlk9o_gg_._position_bottom_jlk9o_gg_{text-anchor:middle;alignment-baseline:hanging}.___STitle_jlk9o_gg_._position_left_jlk9o_gg_,.___STitle_jlk9o_gg_._position_right_jlk9o_gg_{transform:rotate(-90deg);text-anchor:middle;alignment-baseline:middle}.___SBackground_jlk9o_gg_{fill:var(--intergalactic-chart-grid-period-bg, rgba(196, 199, 207, 0.2))}" /*__inner_css_end__*/, "jlk9o_gg_") /*__reshadow_css_end__*/, {
|
|
15
|
+
"__SReferenceLine": "___SReferenceLine_jlk9o_gg_",
|
|
16
|
+
"__STitle": "___STitle_jlk9o_gg_",
|
|
17
|
+
"--transform-origin": "--transform-origin_jlk9o",
|
|
18
|
+
"_position_top": "_position_top_jlk9o_gg_",
|
|
19
|
+
"_position_bottom": "_position_bottom_jlk9o_gg_",
|
|
20
|
+
"_position_right": "_position_right_jlk9o_gg_",
|
|
21
|
+
"_position_left": "_position_left_jlk9o_gg_",
|
|
22
|
+
"__SBackground": "___SBackground_jlk9o_gg_"
|
|
23
23
|
});
|
|
24
24
|
var side2direction = {
|
|
25
25
|
left: 'vertical',
|