@semcore/d3-chart 2.13.4 → 2.13.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/Area.js +59 -97
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +76 -143
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +49 -96
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +39 -81
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +9 -35
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +77 -152
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +29 -57
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +5 -26
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +43 -84
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +33 -88
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +42 -78
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +27 -73
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/Radar.js +152 -277
  27. package/lib/cjs/Radar.js.map +1 -1
  28. package/lib/cjs/RadialTree.js +105 -211
  29. package/lib/cjs/RadialTree.js.map +1 -1
  30. package/lib/cjs/ReferenceLine.js +45 -87
  31. package/lib/cjs/ReferenceLine.js.map +1 -1
  32. package/lib/cjs/ResponsiveContainer.js +9 -38
  33. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  34. package/lib/cjs/ScatterPlot.js +34 -74
  35. package/lib/cjs/ScatterPlot.js.map +1 -1
  36. package/lib/cjs/StackBar.js +9 -38
  37. package/lib/cjs/StackBar.js.map +1 -1
  38. package/lib/cjs/StackedArea.js +5 -29
  39. package/lib/cjs/StackedArea.js.map +1 -1
  40. package/lib/cjs/Tooltip.js +27 -76
  41. package/lib/cjs/Tooltip.js.map +1 -1
  42. package/lib/cjs/Venn.js +32 -75
  43. package/lib/cjs/Venn.js.map +1 -1
  44. package/lib/cjs/a11y/PlotA11yModule.js +18 -71
  45. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  46. package/lib/cjs/a11y/PlotA11yView.js +19 -83
  47. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  48. package/lib/cjs/a11y/bezier.js +0 -7
  49. package/lib/cjs/a11y/bezier.js.map +1 -1
  50. package/lib/cjs/a11y/focus.js +2 -11
  51. package/lib/cjs/a11y/focus.js.map +1 -1
  52. package/lib/cjs/a11y/hints.js +0 -13
  53. package/lib/cjs/a11y/hints.js.map +1 -1
  54. package/lib/cjs/a11y/insights.js +21 -132
  55. package/lib/cjs/a11y/insights.js.map +1 -1
  56. package/lib/cjs/a11y/intl.js +0 -6
  57. package/lib/cjs/a11y/intl.js.map +1 -1
  58. package/lib/cjs/a11y/locale.js +4 -22
  59. package/lib/cjs/a11y/locale.js.map +1 -1
  60. package/lib/cjs/a11y/serialize.js +23 -83
  61. package/lib/cjs/a11y/serialize.js.map +1 -1
  62. package/lib/cjs/a11y/summarize.js +0 -4
  63. package/lib/cjs/a11y/summarize.js.map +1 -1
  64. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +0 -13
  65. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  66. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +0 -13
  67. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  68. package/lib/cjs/color.js +0 -3
  69. package/lib/cjs/color.js.map +1 -1
  70. package/lib/cjs/createElement.js +18 -47
  71. package/lib/cjs/createElement.js.map +1 -1
  72. package/lib/cjs/index.js +0 -23
  73. package/lib/cjs/index.js.map +1 -1
  74. package/lib/cjs/types/Plot.d.js.map +1 -1
  75. package/lib/cjs/types/index.d.js +0 -39
  76. package/lib/cjs/types/index.d.js.map +1 -1
  77. package/lib/cjs/utils.js +7 -59
  78. package/lib/cjs/utils.js.map +1 -1
  79. package/lib/es6/Area.js +59 -86
  80. package/lib/es6/Area.js.map +1 -1
  81. package/lib/es6/Axis.js +76 -135
  82. package/lib/es6/Axis.js.map +1 -1
  83. package/lib/es6/Bar.js +49 -86
  84. package/lib/es6/Bar.js.map +1 -1
  85. package/lib/es6/Bubble.js +39 -70
  86. package/lib/es6/Bubble.js.map +1 -1
  87. package/lib/es6/ClipPath.js +9 -23
  88. package/lib/es6/ClipPath.js.map +1 -1
  89. package/lib/es6/Donut.js +77 -141
  90. package/lib/es6/Donut.js.map +1 -1
  91. package/lib/es6/Dots.js +29 -46
  92. package/lib/es6/Dots.js.map +1 -1
  93. package/lib/es6/GroupBar.js +5 -15
  94. package/lib/es6/GroupBar.js.map +1 -1
  95. package/lib/es6/HorizontalBar.js +43 -75
  96. package/lib/es6/HorizontalBar.js.map +1 -1
  97. package/lib/es6/Hover.js +33 -85
  98. package/lib/es6/Hover.js.map +1 -1
  99. package/lib/es6/Line.js +42 -67
  100. package/lib/es6/Line.js.map +1 -1
  101. package/lib/es6/Plot.js +27 -66
  102. package/lib/es6/Plot.js.map +1 -1
  103. package/lib/es6/Radar.js +152 -281
  104. package/lib/es6/Radar.js.map +1 -1
  105. package/lib/es6/RadialTree.js +105 -203
  106. package/lib/es6/RadialTree.js.map +1 -1
  107. package/lib/es6/ReferenceLine.js +45 -79
  108. package/lib/es6/ReferenceLine.js.map +1 -1
  109. package/lib/es6/ResponsiveContainer.js +9 -28
  110. package/lib/es6/ResponsiveContainer.js.map +1 -1
  111. package/lib/es6/ScatterPlot.js +34 -65
  112. package/lib/es6/ScatterPlot.js.map +1 -1
  113. package/lib/es6/StackBar.js +9 -26
  114. package/lib/es6/StackBar.js.map +1 -1
  115. package/lib/es6/StackedArea.js +5 -18
  116. package/lib/es6/StackedArea.js.map +1 -1
  117. package/lib/es6/Tooltip.js +27 -63
  118. package/lib/es6/Tooltip.js.map +1 -1
  119. package/lib/es6/Venn.js +32 -64
  120. package/lib/es6/Venn.js.map +1 -1
  121. package/lib/es6/a11y/PlotA11yModule.js +18 -52
  122. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  123. package/lib/es6/a11y/PlotA11yView.js +19 -53
  124. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  125. package/lib/es6/a11y/bezier.js +0 -5
  126. package/lib/es6/a11y/bezier.js.map +1 -1
  127. package/lib/es6/a11y/focus.js +2 -9
  128. package/lib/es6/a11y/focus.js.map +1 -1
  129. package/lib/es6/a11y/hints.js +0 -3
  130. package/lib/es6/a11y/hints.js.map +1 -1
  131. package/lib/es6/a11y/insights.js +21 -133
  132. package/lib/es6/a11y/insights.js.map +1 -1
  133. package/lib/es6/a11y/intl.js +0 -1
  134. package/lib/es6/a11y/intl.js.map +1 -1
  135. package/lib/es6/a11y/locale.js +4 -18
  136. package/lib/es6/a11y/locale.js.map +1 -1
  137. package/lib/es6/a11y/serialize.js +23 -74
  138. package/lib/es6/a11y/serialize.js.map +1 -1
  139. package/lib/es6/a11y/summarize.js.map +1 -1
  140. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  141. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  142. package/lib/es6/color.js +0 -1
  143. package/lib/es6/color.js.map +1 -1
  144. package/lib/es6/createElement.js +18 -34
  145. package/lib/es6/createElement.js.map +1 -1
  146. package/lib/es6/index.js.map +1 -1
  147. package/lib/es6/types/Plot.d.js.map +1 -1
  148. package/lib/es6/types/index.d.js +5 -3
  149. package/lib/es6/types/index.d.js.map +1 -1
  150. package/lib/es6/utils.js +7 -28
  151. package/lib/es6/utils.js.map +1 -1
  152. package/package.json +1 -1
package/lib/es6/Dots.js CHANGED
@@ -6,64 +6,49 @@ import { sstyled } from '@semcore/core';
6
6
  import trottle from '@semcore/utils/lib/rafTrottle';
7
7
  import createElement from './createElement';
8
8
  import { eventToPoint, invert } from './utils';
9
-
10
9
  /*__reshadow-styles__:"./style/dot.shadow.css"*/
11
- var style = (
12
- /*__reshadow_css_start__*/
13
- _sstyled.insert(
14
- /*__inner_css_start__*/
15
- ".___SDots_18fe3_gg_ .___SDot_18fe3_gg_{transition-duration:var(--duration_18fe3)}.___SDot_18fe3_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px;fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-timing-function:ease-in-out}.___SDot_18fe3_gg_.__hide_18fe3_gg_{display:none}.___SDot_18fe3_gg_.__active_18fe3_gg_{r:8px}.___SDot_18fe3_gg_.__color_18fe3_gg_{fill:var(--color_18fe3)}.___SDot_18fe3_gg_.__transparent_18fe3_gg_{opacity:.3}"
16
- /*__inner_css_end__*/
17
- , "18fe3_gg_")
18
- /*__reshadow_css_end__*/
19
- , {
20
- "__SDots": "___SDots_18fe3_gg_",
21
- "__SDot": "___SDot_18fe3_gg_",
22
- "--duration": "--duration_18fe3",
23
- "_hide": "__hide_18fe3_gg_",
24
- "_active": "__active_18fe3_gg_",
25
- "_color": "__color_18fe3_gg_",
26
- "--color": "--color_18fe3",
27
- "_transparent": "__transparent_18fe3_gg_"
10
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDots_13blc_gg_ .___SDot_13blc_gg_{transition-duration:var(--duration_13blc)}.___SDot_13blc_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px;fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-timing-function:ease-in-out}.___SDot_13blc_gg_.__hide_13blc_gg_{display:none}.___SDot_13blc_gg_.__active_13blc_gg_{r:8px}.___SDot_13blc_gg_.__color_13blc_gg_{fill:var(--color_13blc)}.___SDot_13blc_gg_.__transparent_13blc_gg_{opacity:.3}" /*__inner_css_end__*/, "13blc_gg_") /*__reshadow_css_end__*/, {
11
+ "__SDots": "___SDots_13blc_gg_",
12
+ "__SDot": "___SDot_13blc_gg_",
13
+ "--duration": "--duration_13blc",
14
+ "_hide": "__hide_13blc_gg_",
15
+ "_active": "__active_13blc_gg_",
16
+ "_color": "__color_13blc_gg_",
17
+ "--color": "--color_13blc",
18
+ "_transparent": "__transparent_13blc_gg_"
28
19
  });
29
20
  var EXCLUDE_PROPS = ['data', 'scale', 'value', 'display'];
30
-
31
21
  function Dots(props) {
32
22
  var _ref2;
33
-
34
23
  var SDot = props.Element,
35
- styles = props.styles,
36
- data = props.data,
37
- color = props.color,
38
- d3 = props.d3,
39
- x = props.x,
40
- y = props.y,
41
- eventEmitter = props.eventEmitter,
42
- display = props.display,
43
- hide = props.hide,
44
- rootRef = props.rootRef,
45
- scale = props.scale,
46
- _props$duration = props.duration,
47
- duration = _props$duration === void 0 ? 500 : _props$duration,
48
- transparent = props.transparent;
24
+ styles = props.styles,
25
+ data = props.data,
26
+ color = props.color,
27
+ d3 = props.d3,
28
+ x = props.x,
29
+ y = props.y,
30
+ eventEmitter = props.eventEmitter,
31
+ display = props.display,
32
+ hide = props.hide,
33
+ rootRef = props.rootRef,
34
+ scale = props.scale,
35
+ _props$duration = props.duration,
36
+ duration = _props$duration === void 0 ? 500 : _props$duration,
37
+ transparent = props.transparent;
49
38
  var SDots = 'g';
50
39
  var bisect = bisector(function (d) {
51
40
  return d[x];
52
41
  }).center;
53
-
54
42
  var _useState = useState(null),
55
- _useState2 = _slicedToArray(_useState, 2),
56
- activeIndex = _useState2[0],
57
- setActiveIndex = _useState2[1];
58
-
43
+ _useState2 = _slicedToArray(_useState, 2),
44
+ activeIndex = _useState2[0],
45
+ setActiveIndex = _useState2[1];
59
46
  var handlerMouseMoveRoot = useCallback(trottle(function (e) {
60
47
  var _scale = _slicedToArray(scale, 1),
61
- xScale = _scale[0];
62
-
48
+ xScale = _scale[0];
63
49
  var _eventToPoint = eventToPoint(e, rootRef.current),
64
- _eventToPoint2 = _slicedToArray(_eventToPoint, 1),
65
- pX = _eventToPoint2[0];
66
-
50
+ _eventToPoint2 = _slicedToArray(_eventToPoint, 1),
51
+ pX = _eventToPoint2[0];
67
52
  var vX = invert(xScale, pX);
68
53
  setActiveIndex(bisect(data, vX));
69
54
  }), [scale, data]);
@@ -83,7 +68,6 @@ function Dots(props) {
83
68
  }, [eventEmitter, scale, data, x, y]);
84
69
  var dots = data.reduce(function (acc, d, i) {
85
70
  var _ref;
86
-
87
71
  var isPrev = d3.defined()(data[i - 1] || {});
88
72
  var isNext = d3.defined()(data[i + 1] || {});
89
73
  var active = i === activeIndex;
@@ -111,7 +95,6 @@ function Dots(props) {
111
95
  "use:duration": "".concat(duration, "ms")
112
96
  }), dots);
113
97
  }
114
-
115
98
  Dots.style = style;
116
99
  export default createElement(Dots);
117
100
  //# sourceMappingURL=Dots.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dots.js","names":["bisector","React","useCallback","useEffect","useState","sstyled","trottle","createElement","eventToPoint","invert","EXCLUDE_PROPS","Dots","props","SDot","Element","styles","data","color","d3","x","y","eventEmitter","display","hide","rootRef","scale","duration","transparent","SDots","bisect","d","center","activeIndex","setActiveIndex","handlerMouseMoveRoot","e","xScale","current","pX","vX","handlerMouseLeaveRoot","unsubscribeMouseMoveRoot","subscribe","persist","unsubscribeMouseLeaveRoot","dots","reduce","acc","i","isPrev","defined","isNext","active","visible","push","style"],"sources":["../../src/Dots.jsx"],"sourcesContent":["import { bisector } from 'd3-array';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { sstyled } from '@semcore/core';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport createElement from './createElement';\nimport { eventToPoint, invert } from './utils';\n\nimport style from './style/dot.shadow.css';\n\nconst EXCLUDE_PROPS = ['data', 'scale', 'value', 'display'];\n\nfunction Dots(props) {\n const {\n Element: SDot,\n styles,\n data,\n color,\n d3,\n x,\n y,\n eventEmitter,\n display,\n hide,\n rootRef,\n scale,\n duration = 500,\n transparent,\n } = props;\n const SDots = 'g';\n const bisect = bisector((d) => d[x]).center;\n const [activeIndex, setActiveIndex] = useState(null);\n\n const handlerMouseMoveRoot = useCallback(\n trottle((e) => {\n const [xScale] = scale;\n const [pX] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n setActiveIndex(bisect(data, vX));\n }),\n [scale, data],\n );\n\n const handlerMouseLeaveRoot = useCallback(\n trottle(() => {\n setActiveIndex(null);\n }),\n [],\n );\n\n useEffect(() => {\n const unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', (e) => {\n e.persist();\n handlerMouseMoveRoot(e);\n });\n\n const unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveChart',\n handlerMouseLeaveRoot,\n );\n\n return () => {\n unsubscribeMouseMoveRoot();\n unsubscribeMouseLeaveRoot();\n };\n }, [eventEmitter, scale, data, x, y]);\n\n const dots = data.reduce((acc, d, i) => {\n const isPrev = d3.defined()(data[i - 1] || {});\n const isNext = d3.defined()(data[i + 1] || {});\n const active = i === activeIndex;\n const visible = display || i === activeIndex || (!isPrev && !isNext);\n if (!d3.defined()(d)) return acc;\n if (!visible) return acc;\n acc.push(\n sstyled(styles)(\n <SDot\n aria-hidden\n key={i}\n render=\"circle\"\n visible={visible}\n __excludeProps={EXCLUDE_PROPS}\n value={d}\n index={i}\n cx={d3.x()(d)}\n cy={d3.y()(d)}\n active={active}\n hide={hide}\n color={color}\n transparent={transparent}\n />,\n ),\n );\n return acc;\n }, []);\n return sstyled(styles)(<SDots use:duration={`${duration}ms`}>{dots}</SDots>);\n}\n\nDots.style = style;\n\nexport default createElement(Dots);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Dots.js","names":["bisector","React","useCallback","useEffect","useState","sstyled","trottle","createElement","eventToPoint","invert","style","_sstyled","insert","EXCLUDE_PROPS","Dots","props","_ref2","SDot","Element","styles","data","color","d3","x","y","eventEmitter","display","hide","rootRef","scale","_props$duration","duration","transparent","SDots","bisect","d","center","_useState","_useState2","_slicedToArray","activeIndex","setActiveIndex","handlerMouseMoveRoot","e","_scale","xScale","_eventToPoint","current","_eventToPoint2","pX","vX","handlerMouseLeaveRoot","unsubscribeMouseMoveRoot","subscribe","persist","unsubscribeMouseLeaveRoot","dots","reduce","acc","i","_ref","isPrev","defined","isNext","active","visible","push","cn","concat"],"sources":["../../src/Dots.jsx"],"sourcesContent":["import { bisector } from 'd3-array';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { sstyled } from '@semcore/core';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport createElement from './createElement';\nimport { eventToPoint, invert } from './utils';\n\nimport style from './style/dot.shadow.css';\n\nconst EXCLUDE_PROPS = ['data', 'scale', 'value', 'display'];\n\nfunction Dots(props) {\n const {\n Element: SDot,\n styles,\n data,\n color,\n d3,\n x,\n y,\n eventEmitter,\n display,\n hide,\n rootRef,\n scale,\n duration = 500,\n transparent,\n } = props;\n const SDots = 'g';\n const bisect = bisector((d) => d[x]).center;\n const [activeIndex, setActiveIndex] = useState(null);\n\n const handlerMouseMoveRoot = useCallback(\n trottle((e) => {\n const [xScale] = scale;\n const [pX] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n setActiveIndex(bisect(data, vX));\n }),\n [scale, data],\n );\n\n const handlerMouseLeaveRoot = useCallback(\n trottle(() => {\n setActiveIndex(null);\n }),\n [],\n );\n\n useEffect(() => {\n const unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', (e) => {\n e.persist();\n handlerMouseMoveRoot(e);\n });\n\n const unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveChart',\n handlerMouseLeaveRoot,\n );\n\n return () => {\n unsubscribeMouseMoveRoot();\n unsubscribeMouseLeaveRoot();\n };\n }, [eventEmitter, scale, data, x, y]);\n\n const dots = data.reduce((acc, d, i) => {\n const isPrev = d3.defined()(data[i - 1] || {});\n const isNext = d3.defined()(data[i + 1] || {});\n const active = i === activeIndex;\n const visible = display || i === activeIndex || (!isPrev && !isNext);\n if (!d3.defined()(d)) return acc;\n if (!visible) return acc;\n acc.push(\n sstyled(styles)(\n <SDot\n aria-hidden\n key={i}\n render=\"circle\"\n visible={visible}\n __excludeProps={EXCLUDE_PROPS}\n value={d}\n index={i}\n cx={d3.x()(d)}\n cy={d3.y()(d)}\n active={active}\n hide={hide}\n color={color}\n transparent={transparent}\n />,\n ),\n );\n return acc;\n }, []);\n return sstyled(styles)(<SDots use:duration={`${duration}ms`}>{dots}</SDots>);\n}\n\nDots.style = style;\n\nexport default createElement(Dots);\n"],"mappings":"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"}
@@ -9,38 +9,31 @@ import getOriginChildren from '@semcore/utils/lib/getOriginChildren';
9
9
  import createElement from './createElement';
10
10
  import Bar from './Bar';
11
11
  import HorizontalBar from './HorizontalBar';
12
-
13
12
  var GroupBarRoot = /*#__PURE__*/function (_Component) {
14
13
  _inherits(GroupBarRoot, _Component);
15
-
16
14
  var _super = _createSuper(GroupBarRoot);
17
-
18
15
  function GroupBarRoot() {
19
16
  _classCallCheck(this, GroupBarRoot);
20
-
21
17
  return _super.apply(this, arguments);
22
18
  }
23
-
24
19
  _createClass(GroupBarRoot, [{
25
20
  key: "getScaleGroup",
26
21
  value: function getScaleGroup() {
27
22
  var _this$asProps = this.asProps,
28
- Children = _this$asProps.Children,
29
- scale = _this$asProps.scale,
30
- scaleGroup = _this$asProps.scaleGroup,
31
- x = _this$asProps.x; // TODO: love that hack (by lsroman) ❤️
32
-
23
+ Children = _this$asProps.Children,
24
+ scale = _this$asProps.scale,
25
+ scaleGroup = _this$asProps.scaleGroup,
26
+ x = _this$asProps.x;
27
+ // TODO: love that hack (by lsroman) ❤️
33
28
  var xyScale = x ? scale[0] : scale[1];
34
29
  if (scaleGroup) return scaleGroup;
35
30
  var domain = React.Children.toArray(getOriginChildren(Children)).reduce(function (acc, child) {
36
31
  if ( /*#__PURE__*/React.isValidElement(child) && child.type === GroupBar.Bar && !child.props.hide) {
37
32
  acc.push(child.props.y);
38
33
  }
39
-
40
34
  if ( /*#__PURE__*/React.isValidElement(child) && child.type === GroupBar.HorizontalBar && !child.props.hide) {
41
35
  acc.push(child.props.x);
42
36
  }
43
-
44
37
  return acc;
45
38
  }, []);
46
39
  return xyScale.copy().range([0, xyScale.bandwidth()]).domain(domain).paddingInner(xyScale.paddingOuter()).paddingOuter(0);
@@ -83,12 +76,9 @@ var GroupBarRoot = /*#__PURE__*/function (_Component) {
83
76
  });
84
77
  }
85
78
  }]);
86
-
87
79
  return GroupBarRoot;
88
80
  }(Component);
89
-
90
81
  _defineProperty(GroupBarRoot, "displayName", 'GroupBar');
91
-
92
82
  var GroupBar = createElement(GroupBarRoot, {
93
83
  Bar: Bar,
94
84
  HorizontalBar: HorizontalBar
@@ -1 +1 @@
1
- {"version":3,"file":"GroupBar.js","names":["React","Component","getOriginChildren","createElement","Bar","HorizontalBar","GroupBarRoot","asProps","Children","scale","scaleGroup","x","xyScale","domain","toArray","reduce","acc","child","isValidElement","type","GroupBar","props","hide","push","y","copy","range","bandwidth","paddingInner","paddingOuter","offset","width","groupKey","height","Element","getScaleGroup","dataHintsHandler","establishDataType"],"sources":["../../src/GroupBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Bar from './Bar';\nimport HorizontalBar from './HorizontalBar';\n\nclass GroupBarRoot extends Component {\n static displayName = 'GroupBar';\n\n getScaleGroup() {\n const { Children, scale, scaleGroup, x } = this.asProps;\n // TODO: love that hack (by lsroman) ❤️\n const xyScale = x ? scale[0] : scale[1];\n\n if (scaleGroup) return scaleGroup;\n\n const domain = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === GroupBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === GroupBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n\n return xyScale\n .copy()\n .range([0, xyScale.bandwidth()])\n .domain(domain)\n .paddingInner(xyScale.paddingOuter())\n .paddingOuter(0);\n }\n\n getBarProps({ y }) {\n const { x } = this.asProps;\n\n return {\n offset: [this.scaleGroup(y), 0],\n width: this.scaleGroup.bandwidth(),\n x,\n groupKey: x,\n };\n }\n\n getHorizontalBarProps({ x }) {\n const { y } = this.asProps;\n\n return {\n offset: [0, this.scaleGroup(x)],\n height: this.scaleGroup.bandwidth(),\n y,\n groupKey: y,\n };\n }\n\n render() {\n const Element = this.Element;\n this.scaleGroup = this.getScaleGroup();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n return (\n <Element aria-hidden render=\"g\" childrenPosition=\"inside\" scaleGroup={this.scaleGroup} />\n );\n }\n}\n\nconst GroupBar = createElement(GroupBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default GroupBar;\n"],"mappings":"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"}
1
+ {"version":3,"file":"GroupBar.js","names":["React","Component","getOriginChildren","createElement","Bar","HorizontalBar","GroupBarRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getScaleGroup","_this$asProps","asProps","Children","scale","scaleGroup","x","xyScale","domain","toArray","reduce","acc","child","isValidElement","type","GroupBar","props","hide","push","y","copy","range","bandwidth","paddingInner","paddingOuter","getBarProps","_ref","offset","width","groupKey","getHorizontalBarProps","_ref2","height","render","Element","dataHintsHandler","establishDataType","childrenPosition","_defineProperty"],"sources":["../../src/GroupBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Bar from './Bar';\nimport HorizontalBar from './HorizontalBar';\n\nclass GroupBarRoot extends Component {\n static displayName = 'GroupBar';\n\n getScaleGroup() {\n const { Children, scale, scaleGroup, x } = this.asProps;\n // TODO: love that hack (by lsroman) ❤️\n const xyScale = x ? scale[0] : scale[1];\n\n if (scaleGroup) return scaleGroup;\n\n const domain = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === GroupBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === GroupBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n\n return xyScale\n .copy()\n .range([0, xyScale.bandwidth()])\n .domain(domain)\n .paddingInner(xyScale.paddingOuter())\n .paddingOuter(0);\n }\n\n getBarProps({ y }) {\n const { x } = this.asProps;\n\n return {\n offset: [this.scaleGroup(y), 0],\n width: this.scaleGroup.bandwidth(),\n x,\n groupKey: x,\n };\n }\n\n getHorizontalBarProps({ x }) {\n const { y } = this.asProps;\n\n return {\n offset: [0, this.scaleGroup(x)],\n height: this.scaleGroup.bandwidth(),\n y,\n groupKey: y,\n };\n }\n\n render() {\n const Element = this.Element;\n this.scaleGroup = this.getScaleGroup();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n return (\n <Element aria-hidden render=\"g\" childrenPosition=\"inside\" scaleGroup={this.scaleGroup} />\n );\n }\n}\n\nconst GroupBar = createElement(GroupBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default GroupBar;\n"],"mappings":"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"}
@@ -11,43 +11,29 @@ import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
11
11
  import createElement from './createElement';
12
12
  import ClipPath from './ClipPath';
13
13
  import { getBandwidth, roundedPath } from './utils';
14
-
15
14
  /*__reshadow-styles__:"./style/bar.shadow.css"*/
16
- var style = (
17
- /*__reshadow_css_start__*/
18
- _sstyled.insert(
19
- /*__inner_css_start__*/
20
- ".___SBar_1n9fo_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1n9fo);transition-timing-function:ease-in-out}.___SBar_1n9fo_gg_.__color_1n9fo_gg_{fill:var(--color_1n9fo)}.___SBar_1n9fo_gg_.__hide_1n9fo_gg_{display:none}.___SBar_1n9fo_gg_.__transparent_1n9fo_gg_{opacity:.3}.___SBackground_1n9fo_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}"
21
- /*__inner_css_end__*/
22
- , "1n9fo_gg_")
23
- /*__reshadow_css_end__*/
24
- , {
25
- "__SBar": "___SBar_1n9fo_gg_",
26
- "--duration": "--duration_1n9fo",
27
- "_color": "__color_1n9fo_gg_",
28
- "--color": "--color_1n9fo",
29
- "_hide": "__hide_1n9fo_gg_",
30
- "_transparent": "__transparent_1n9fo_gg_",
31
- "__SBackground": "___SBackground_1n9fo_gg_"
15
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_fv3d7_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_fv3d7);transition-timing-function:ease-in-out}.___SBar_fv3d7_gg_.__color_fv3d7_gg_{fill:var(--color_fv3d7)}.___SBar_fv3d7_gg_.__hide_fv3d7_gg_{display:none}.___SBar_fv3d7_gg_.__transparent_fv3d7_gg_{opacity:.3}.___SBackground_fv3d7_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}" /*__inner_css_end__*/, "fv3d7_gg_") /*__reshadow_css_end__*/, {
16
+ "__SBar": "___SBar_fv3d7_gg_",
17
+ "--duration": "--duration_fv3d7",
18
+ "_color": "__color_fv3d7_gg_",
19
+ "--color": "--color_fv3d7",
20
+ "_hide": "__hide_fv3d7_gg_",
21
+ "_transparent": "__transparent_fv3d7_gg_",
22
+ "__SBackground": "___SBackground_fv3d7_gg_"
32
23
  });
33
-
34
24
  var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
35
25
  _inherits(HorizontalBarRoot, _Component);
36
-
37
26
  var _super = _createSuper(HorizontalBarRoot);
38
-
39
27
  function HorizontalBarRoot() {
40
28
  _classCallCheck(this, HorizontalBarRoot);
41
-
42
29
  return _super.apply(this, arguments);
43
30
  }
44
-
45
31
  _createClass(HorizontalBarRoot, [{
46
32
  key: "getBackgroundProps",
47
33
  value: function getBackgroundProps(props, index) {
48
34
  var _this$asProps = this.asProps,
49
- data = _this$asProps.data,
50
- y = _this$asProps.y;
35
+ data = _this$asProps.data,
36
+ y = _this$asProps.y;
51
37
  return {
52
38
  value: data[index][y]
53
39
  };
@@ -56,31 +42,28 @@ var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
56
42
  key: "renderBar",
57
43
  value: function renderBar(d, i) {
58
44
  var _ref, _d$x, _d$x2;
59
-
60
45
  var SBar = this.Element;
61
46
  var _this$asProps2 = this.asProps,
62
- styles = _this$asProps2.styles,
63
- color = _this$asProps2.color,
64
- x = _this$asProps2.x,
65
- x0 = _this$asProps2.x0,
66
- y = _this$asProps2.y,
67
- scale = _this$asProps2.scale,
68
- hide = _this$asProps2.hide,
69
- offset = _this$asProps2.offset,
70
- uid = _this$asProps2.uid,
71
- duration = _this$asProps2.duration,
72
- r = _this$asProps2.r,
73
- wMin = _this$asProps2.wMin,
74
- heightProps = _this$asProps2.height,
75
- onMouseMove = _this$asProps2.onMouseMove,
76
- onMouseLeave = _this$asProps2.onMouseLeave,
77
- groupKey = _this$asProps2.groupKey,
78
- transparent = _this$asProps2.transparent;
79
-
47
+ styles = _this$asProps2.styles,
48
+ color = _this$asProps2.color,
49
+ x = _this$asProps2.x,
50
+ x0 = _this$asProps2.x0,
51
+ y = _this$asProps2.y,
52
+ scale = _this$asProps2.scale,
53
+ hide = _this$asProps2.hide,
54
+ offset = _this$asProps2.offset,
55
+ uid = _this$asProps2.uid,
56
+ duration = _this$asProps2.duration,
57
+ r = _this$asProps2.r,
58
+ wMin = _this$asProps2.wMin,
59
+ heightProps = _this$asProps2.height,
60
+ onMouseMove = _this$asProps2.onMouseMove,
61
+ onMouseLeave = _this$asProps2.onMouseLeave,
62
+ groupKey = _this$asProps2.groupKey,
63
+ transparent = _this$asProps2.transparent;
80
64
  var _scale = _slicedToArray(scale, 2),
81
- xScale = _scale[0],
82
- yScale = _scale[1];
83
-
65
+ xScale = _scale[0],
66
+ yScale = _scale[1];
84
67
  var barY = yScale(d[y]) + offset[1];
85
68
  var barX = xScale(Math.min((_d$x = d[x0]) !== null && _d$x !== void 0 ? _d$x : 0, d[x])) + offset[0] - (Object.is(d[x], -0) ? wMin : 0);
86
69
  var height = heightProps || getBandwidth(yScale);
@@ -93,13 +76,11 @@ var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
93
76
  radius: Array.isArray(r) ? r[i] : r,
94
77
  position: d[x] > 0 || Object.is(d[x], 0) ? 'right' : 'left'
95
78
  });
96
-
97
79
  if (groupKey) {
98
80
  this.asProps.dataHintsHandler.describeGroupedValues(groupKey, x);
99
81
  } else {
100
82
  this.asProps.dataHintsHandler.describeValueEntity("".concat(i, ".").concat(x), groupKey !== null && groupKey !== void 0 ? groupKey : d[y]);
101
83
  }
102
-
103
84
  return _ref = sstyled(styles), /*#__PURE__*/React.createElement(SBar, _ref.cn("SBar", {
104
85
  "aria-hidden": true,
105
86
  "key": "horizontal-bar-".concat(i),
@@ -126,10 +107,10 @@ var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
126
107
  key: "render",
127
108
  value: function render() {
128
109
  var _this$asProps3 = this.asProps,
129
- data = _this$asProps3.data,
130
- uid = _this$asProps3.uid,
131
- size = _this$asProps3.size,
132
- duration = _this$asProps3.duration;
110
+ data = _this$asProps3.data,
111
+ uid = _this$asProps3.uid,
112
+ size = _this$asProps3.size,
113
+ duration = _this$asProps3.duration;
133
114
  return /*#__PURE__*/React.createElement(React.Fragment, null, data.map(this.renderBar.bind(this)), duration && /*#__PURE__*/React.createElement(ClipPath, {
134
115
  "aria-hidden": true,
135
116
  setAttributeTag: function setAttributeTag(rect) {
@@ -144,35 +125,26 @@ var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
144
125
  }));
145
126
  }
146
127
  }]);
147
-
148
128
  return HorizontalBarRoot;
149
129
  }(Component);
150
-
151
130
  _defineProperty(HorizontalBarRoot, "displayName", 'HorizontalBar');
152
-
153
131
  _defineProperty(HorizontalBarRoot, "enhance", [uniqueIDEnhancement()]);
154
-
155
132
  _defineProperty(HorizontalBarRoot, "style", style);
156
-
157
133
  _defineProperty(HorizontalBarRoot, "defaultProps", {
158
134
  offset: [0, 0],
159
135
  duration: 500,
160
136
  r: 2,
161
137
  wMin: 4
162
138
  });
163
-
164
139
  function Background(props) {
165
140
  var _ref2;
166
-
167
141
  var SBackground = props.Element,
168
- styles = props.styles,
169
- scale = props.scale,
170
- value = props.value;
171
-
142
+ styles = props.styles,
143
+ scale = props.scale,
144
+ value = props.value;
172
145
  var _scale2 = _slicedToArray(scale, 2),
173
- xScale = _scale2[0],
174
- yScale = _scale2[1];
175
-
146
+ xScale = _scale2[0],
147
+ yScale = _scale2[1];
176
148
  var xRange = xScale.range();
177
149
  return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SBackground, _ref2.cn("SBackground", {
178
150
  "aria-hidden": true,
@@ -184,24 +156,20 @@ function Background(props) {
184
156
  "y": yScale(value)
185
157
  }));
186
158
  }
187
-
188
159
  function getHorizontalRect(_ref3) {
189
160
  var x = _ref3.x,
190
- y = _ref3.y,
191
- width = _ref3.width,
192
- height = _ref3.height,
193
- radius = _ref3.radius,
194
- position = _ref3.position;
161
+ y = _ref3.y,
162
+ width = _ref3.width,
163
+ height = _ref3.height,
164
+ radius = _ref3.radius,
165
+ position = _ref3.position;
195
166
  if (width <= radius) return '';
196
-
197
167
  if (radius) {
198
168
  if (position === 'right') return roundedPath(x, y, width, height, radius, false, true, false, true);
199
169
  return roundedPath(x, y, width, height, radius, true, false, true, false);
200
170
  }
201
-
202
171
  return roundedPath(x, y, width, height, radius);
203
172
  }
204
-
205
173
  export default createElement(HorizontalBarRoot, {
206
174
  Background: Background
207
175
  });
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalBar.js","names":["React","Component","sstyled","uniqueIDEnhancement","createElement","ClipPath","getBandwidth","roundedPath","HorizontalBarRoot","props","index","asProps","data","y","value","d","i","SBar","Element","styles","color","x","x0","scale","hide","offset","uid","duration","r","wMin","heightProps","height","onMouseMove","onMouseLeave","groupKey","transparent","xScale","yScale","barY","barX","Math","min","Object","is","width","abs","max","domain","dSvg","getHorizontalRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","size","map","renderBar","bind","rect","setAttribute","style","Background","SBackground","xRange","range","bandwidth"],"sources":["../../src/HorizontalBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { getBandwidth, roundedPath } from './utils';\n\nimport style from './style/bar.shadow.css';\n\nclass HorizontalBarRoot extends Component {\n static displayName = 'HorizontalBar';\n static enhance = [uniqueIDEnhancement()];\n static style = style;\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n wMin: 4,\n };\n\n getBackgroundProps(props, index) {\n const { data, y } = this.asProps;\n return {\n value: data[index][y],\n };\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n x,\n x0,\n y,\n scale,\n hide,\n offset,\n uid,\n duration,\n r,\n wMin,\n height: heightProps,\n onMouseMove,\n onMouseLeave,\n groupKey,\n transparent,\n } = this.asProps;\n\n const [xScale, yScale] = scale;\n const barY = yScale(d[y]) + offset[1];\n const barX = xScale(Math.min(d[x0] ?? 0, d[x])) + offset[0] - (Object.is(d[x], -0) ? wMin : 0);\n const height = heightProps || getBandwidth(yScale);\n const width =\n Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[x0] ?? 0))) || wMin;\n const dSvg = getHorizontalRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[x] > 0 || Object.is(d[x], 0) ? 'right' : 'left',\n });\n\n if (groupKey) {\n this.asProps.dataHintsHandler.describeGroupedValues(groupKey, x);\n } else {\n this.asProps.dataHintsHandler.describeValueEntity(`${i}.${x}`, groupKey ?? d[y]);\n }\n\n return sstyled(styles)(\n <SBar\n aria-hidden\n key={`horizontal-bar-${i}`}\n render=\"path\"\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value']}\n childrenPosition=\"above\"\n value={d}\n index={i}\n hide={hide}\n color={color}\n transparent={transparent}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n use:duration={`${duration}ms`}\n onMouseMove={onMouseMove}\n onMouseLeave={onMouseLeave}\n />,\n );\n }\n\n render() {\n const { data, uid, size, duration } = this.asProps;\n\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n const [xScale, yScale] = scale;\n const xRange = xScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render=\"rect\"\n childrenPosition=\"above\"\n width={xRange[1] - xRange[0]}\n height={yScale.bandwidth()}\n x={xRange[0]}\n y={yScale(value)}\n />,\n );\n}\n\nfunction getHorizontalRect({ x, y, width, height, radius, position }) {\n if (width <= radius) return '';\n if (radius) {\n if (position === 'right')\n return roundedPath(x, y, width, height, radius, false, true, false, true);\n return roundedPath(x, y, width, height, radius, true, false, true, false);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(HorizontalBarRoot, { Background });\n"],"mappings":"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"}
1
+ {"version":3,"file":"HorizontalBar.js","names":["React","Component","sstyled","uniqueIDEnhancement","createElement","ClipPath","getBandwidth","roundedPath","style","_sstyled","insert","HorizontalBarRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getBackgroundProps","props","index","_this$asProps","asProps","data","y","renderBar","d","i","_ref","_d$x","_d$x2","SBar","Element","_this$asProps2","styles","color","x","x0","scale","hide","offset","uid","duration","r","wMin","heightProps","height","onMouseMove","onMouseLeave","groupKey","transparent","_scale","_slicedToArray","xScale","yScale","barY","barX","Math","min","Object","is","width","abs","max","domain","dSvg","getHorizontalRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","concat","cn","render","_this$asProps3","size","Fragment","map","bind","setAttributeTag","rect","setAttribute","id","transition","_defineProperty","Background","_ref2","SBackground","_scale2","xRange","range","bandwidth","_ref3"],"sources":["../../src/HorizontalBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { getBandwidth, roundedPath } from './utils';\n\nimport style from './style/bar.shadow.css';\n\nclass HorizontalBarRoot extends Component {\n static displayName = 'HorizontalBar';\n static enhance = [uniqueIDEnhancement()];\n static style = style;\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n wMin: 4,\n };\n\n getBackgroundProps(props, index) {\n const { data, y } = this.asProps;\n return {\n value: data[index][y],\n };\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n x,\n x0,\n y,\n scale,\n hide,\n offset,\n uid,\n duration,\n r,\n wMin,\n height: heightProps,\n onMouseMove,\n onMouseLeave,\n groupKey,\n transparent,\n } = this.asProps;\n\n const [xScale, yScale] = scale;\n const barY = yScale(d[y]) + offset[1];\n const barX = xScale(Math.min(d[x0] ?? 0, d[x])) + offset[0] - (Object.is(d[x], -0) ? wMin : 0);\n const height = heightProps || getBandwidth(yScale);\n const width =\n Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[x0] ?? 0))) || wMin;\n const dSvg = getHorizontalRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[x] > 0 || Object.is(d[x], 0) ? 'right' : 'left',\n });\n\n if (groupKey) {\n this.asProps.dataHintsHandler.describeGroupedValues(groupKey, x);\n } else {\n this.asProps.dataHintsHandler.describeValueEntity(`${i}.${x}`, groupKey ?? d[y]);\n }\n\n return sstyled(styles)(\n <SBar\n aria-hidden\n key={`horizontal-bar-${i}`}\n render=\"path\"\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value']}\n childrenPosition=\"above\"\n value={d}\n index={i}\n hide={hide}\n color={color}\n transparent={transparent}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n use:duration={`${duration}ms`}\n onMouseMove={onMouseMove}\n onMouseLeave={onMouseLeave}\n />,\n );\n }\n\n render() {\n const { data, uid, size, duration } = this.asProps;\n\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n const [xScale, yScale] = scale;\n const xRange = xScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render=\"rect\"\n childrenPosition=\"above\"\n width={xRange[1] - xRange[0]}\n height={yScale.bandwidth()}\n x={xRange[0]}\n y={yScale(value)}\n />,\n );\n}\n\nfunction getHorizontalRect({ x, y, width, height, radius, position }) {\n if (width <= radius) return '';\n if (radius) {\n if (position === 'right')\n return roundedPath(x, y, width, height, radius, false, true, false, true);\n return roundedPath(x, y, width, height, radius, true, false, true, false);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(HorizontalBarRoot, { Background });\n"],"mappings":"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"}