@semcore/d3-chart 2.8.14 → 2.8.16

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 (110) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/Area.js +12 -18
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +21 -29
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +11 -17
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +17 -25
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +6 -18
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +11 -21
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +12 -16
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +2 -8
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +11 -17
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +8 -14
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +11 -17
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +11 -23
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/RadialTree.js +19 -27
  27. package/lib/cjs/RadialTree.js.map +1 -1
  28. package/lib/cjs/ReferenceLine.js +16 -24
  29. package/lib/cjs/ReferenceLine.js.map +1 -1
  30. package/lib/cjs/ResponsiveContainer.js +7 -19
  31. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  32. package/lib/cjs/ScatterPlot.js +14 -22
  33. package/lib/cjs/ScatterPlot.js.map +1 -1
  34. package/lib/cjs/StackBar.js +6 -14
  35. package/lib/cjs/StackBar.js.map +1 -1
  36. package/lib/cjs/StackedArea.js +5 -13
  37. package/lib/cjs/StackedArea.js.map +1 -1
  38. package/lib/cjs/Tooltip.js +17 -29
  39. package/lib/cjs/Tooltip.js.map +1 -1
  40. package/lib/cjs/Venn.js +10 -16
  41. package/lib/cjs/Venn.js.map +1 -1
  42. package/lib/cjs/a11y/PlotA11yModule.js +10 -18
  43. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  44. package/lib/cjs/a11y/PlotA11yView.js +9 -17
  45. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  46. package/lib/cjs/a11y/hints.js +4 -8
  47. package/lib/cjs/a11y/hints.js.map +1 -1
  48. package/lib/cjs/a11y/insights.js +8 -12
  49. package/lib/cjs/a11y/insights.js.map +1 -1
  50. package/lib/cjs/a11y/serialize.js +3 -7
  51. package/lib/cjs/a11y/serialize.js.map +1 -1
  52. package/lib/cjs/createElement.js +8 -17
  53. package/lib/cjs/createElement.js.map +1 -1
  54. package/lib/cjs/types/index.d.js +1 -5
  55. package/lib/cjs/utils.js +7 -13
  56. package/lib/cjs/utils.js.map +1 -1
  57. package/lib/es6/Area.js +11 -17
  58. package/lib/es6/Area.js.map +1 -1
  59. package/lib/es6/Axis.js +16 -24
  60. package/lib/es6/Axis.js.map +1 -1
  61. package/lib/es6/Bar.js +10 -16
  62. package/lib/es6/Bar.js.map +1 -1
  63. package/lib/es6/Bubble.js +13 -22
  64. package/lib/es6/Bubble.js.map +1 -1
  65. package/lib/es6/ClipPath.js +2 -11
  66. package/lib/es6/ClipPath.js.map +1 -1
  67. package/lib/es6/Donut.js +9 -15
  68. package/lib/es6/Donut.js.map +1 -1
  69. package/lib/es6/Dots.js +10 -10
  70. package/lib/es6/GroupBar.js +1 -7
  71. package/lib/es6/GroupBar.js.map +1 -1
  72. package/lib/es6/HorizontalBar.js +10 -16
  73. package/lib/es6/HorizontalBar.js.map +1 -1
  74. package/lib/es6/Hover.js +5 -11
  75. package/lib/es6/Hover.js.map +1 -1
  76. package/lib/es6/Line.js +10 -16
  77. package/lib/es6/Line.js.map +1 -1
  78. package/lib/es6/Plot.js +6 -15
  79. package/lib/es6/Plot.js.map +1 -1
  80. package/lib/es6/RadialTree.js +15 -24
  81. package/lib/es6/RadialTree.js.map +1 -1
  82. package/lib/es6/ReferenceLine.js +12 -21
  83. package/lib/es6/ReferenceLine.js.map +1 -1
  84. package/lib/es6/ResponsiveContainer.js +2 -11
  85. package/lib/es6/ResponsiveContainer.js.map +1 -1
  86. package/lib/es6/ScatterPlot.js +10 -19
  87. package/lib/es6/ScatterPlot.js.map +1 -1
  88. package/lib/es6/StackBar.js +2 -11
  89. package/lib/es6/StackBar.js.map +1 -1
  90. package/lib/es6/StackedArea.js +2 -11
  91. package/lib/es6/StackedArea.js.map +1 -1
  92. package/lib/es6/Tooltip.js +10 -19
  93. package/lib/es6/Tooltip.js.map +1 -1
  94. package/lib/es6/Venn.js +9 -15
  95. package/lib/es6/Venn.js.map +1 -1
  96. package/lib/es6/a11y/PlotA11yModule.js +4 -9
  97. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  98. package/lib/es6/a11y/PlotA11yView.js +6 -16
  99. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  100. package/lib/es6/a11y/hints.js +1 -6
  101. package/lib/es6/a11y/hints.js.map +1 -1
  102. package/lib/es6/a11y/insights.js +1 -7
  103. package/lib/es6/a11y/insights.js.map +1 -1
  104. package/lib/es6/a11y/serialize.js +1 -7
  105. package/lib/es6/a11y/serialize.js.map +1 -1
  106. package/lib/es6/createElement.js +1 -6
  107. package/lib/es6/createElement.js.map +1 -1
  108. package/lib/es6/utils.js +2 -11
  109. package/lib/es6/utils.js.map +1 -1
  110. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Bubble.js","names":["BubbleRoot","canUseDOM","document","createElement","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","width","height","top","right","bottom","left","duration","uid","data","value","z","scaleSqrt","domain","Math","max","map","el","range","selectRect","transition","selection","selectAll","attr","selectRectNode","node","_","ind","animationCircle","d","i","color","scale","offset","styles","label","markedCross","size","transparent","xScale","yScale","SBubble","Element","SCenter","SLabel","margin","min","labelPosition","measureText","labelDistance","sstyled","bindHandlerTooltip","xIndex","xSize","abs","ySize","xMargin","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","renderCircle","bind","Component","style","uniqueIDEnhancement","Bubble"],"sources":["../../src/Bubble.jsx"],"sourcesContent":["import React from 'react';\nimport { scaleSqrt } from 'd3-scale';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { CONSTANT, measureText } from './utils';\n\nimport style from './style/bubble.shadow.css';\n\nclass BubbleRoot extends Component {\n static displayName = 'Bubble';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n markedCross: true,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip =\n (visible, props) =>\n ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationCircle() {\n const { duration, uid, data, value } = this.asProps;\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const selectRect = transition().selection().selectAll(`[id^=${uid}${uid}]`).attr('r', 0);\n\n const selectRectNode = selectRect.node();\n if (duration > 0 && selectRectNode) {\n selectRect\n .transition()\n .duration(duration)\n .attr('r', function (_, ind) {\n return z(data[ind][value]);\n });\n }\n }\n\n componentDidUpdate() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n offset,\n styles,\n uid,\n duration,\n value,\n label,\n markedCross,\n size,\n data,\n transparent,\n } = this.asProps;\n const [xScale, yScale] = scale;\n\n const SBubble = this.Element;\n const SCenter = 'text';\n const SLabel = 'text';\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const margin = Math.min(xScale.range()[0], xScale.range()[1]);\n\n const labelPosition =\n size[0] - 2 * margin - (xScale(d[x]) + offset[0] + z(d[value])) < measureText(d[label])\n ? 'right'\n : 'left';\n const labelDistance = {\n right: xScale(d[x]) + offset[0] - z(d[value]),\n left: xScale(d[x]) + offset[0] + z(d[value]),\n }[labelPosition];\n\n return sstyled(styles)(\n <g\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: i })}\n >\n {markedCross && (\n <SCenter\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy=\".3em\"\n clipPath={`url(#${uid})`}\n color={d[color] ?? color}\n transparent={transparent}\n >\n &#43;\n </SCenter>\n )}\n <SBubble\n aria-hidden\n id={`${uid}${uid}`}\n index={i}\n render=\"circle\"\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={d[color]}\n r={z(d[value])}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[label] && (\n <SLabel\n aria-hidden\n x={labelDistance}\n y={yScale(d[y]) + offset[1]}\n dy=\".3em\"\n clipPath={`url(#${uid})`}\n position={labelPosition}\n color={d[color]}\n transparent={transparent}\n >\n {d[label]}\n </SLabel>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n {data.map(this.animationCircle.bind(this))}\n <ClipPath\n aria-hidden\n id={uid}\n x={xMargin}\n y={yMargin}\n width={`${xSize}px`}\n height={`${ySize}px`}\n />\n </>\n );\n }\n}\n\nconst Bubble = createElement(BubbleRoot);\n\nexport default Bubble;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Bubble.js","names":["BubbleRoot","canUseDOM","document","createElement","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","width","height","top","right","bottom","left","duration","uid","data","value","z","scaleSqrt","domain","Math","max","map","el","range","selectRect","transition","selection","selectAll","attr","selectRectNode","node","_","ind","animationCircle","d","i","color","scale","offset","styles","label","markedCross","size","transparent","xScale","yScale","SBubble","Element","SCenter","SLabel","margin","min","labelPosition","measureText","labelDistance","sstyled","bindHandlerTooltip","xIndex","xSize","abs","ySize","xMargin","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","renderCircle","bind","Component","style","uniqueIDEnhancement","Bubble"],"sources":["../../src/Bubble.jsx"],"sourcesContent":["import React from 'react';\nimport { scaleSqrt } from 'd3-scale';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { CONSTANT, measureText } from './utils';\n\nimport style from './style/bubble.shadow.css';\n\nclass BubbleRoot extends Component {\n static displayName = 'Bubble';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n markedCross: true,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip =\n (visible, props) =>\n ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationCircle() {\n const { duration, uid, data, value } = this.asProps;\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const selectRect = transition().selection().selectAll(`[id^=${uid}${uid}]`).attr('r', 0);\n\n const selectRectNode = selectRect.node();\n if (duration > 0 && selectRectNode) {\n selectRect\n .transition()\n .duration(duration)\n .attr('r', function (_, ind) {\n return z(data[ind][value]);\n });\n }\n }\n\n componentDidUpdate() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n offset,\n styles,\n uid,\n duration,\n value,\n label,\n markedCross,\n size,\n data,\n transparent,\n } = this.asProps;\n const [xScale, yScale] = scale;\n\n const SBubble = this.Element;\n const SCenter = 'text';\n const SLabel = 'text';\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const margin = Math.min(xScale.range()[0], xScale.range()[1]);\n\n const labelPosition =\n size[0] - 2 * margin - (xScale(d[x]) + offset[0] + z(d[value])) < measureText(d[label])\n ? 'right'\n : 'left';\n const labelDistance = {\n right: xScale(d[x]) + offset[0] - z(d[value]),\n left: xScale(d[x]) + offset[0] + z(d[value]),\n }[labelPosition];\n\n return sstyled(styles)(\n <g\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: i })}\n >\n {markedCross && (\n <SCenter\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy=\".3em\"\n clipPath={`url(#${uid})`}\n color={d[color] ?? color}\n transparent={transparent}\n >\n &#43;\n </SCenter>\n )}\n <SBubble\n aria-hidden\n id={`${uid}${uid}`}\n index={i}\n render=\"circle\"\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={d[color]}\n r={z(d[value])}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[label] && (\n <SLabel\n aria-hidden\n x={labelDistance}\n y={yScale(d[y]) + offset[1]}\n dy=\".3em\"\n clipPath={`url(#${uid})`}\n position={labelPosition}\n color={d[color]}\n transparent={transparent}\n >\n {d[label]}\n </SLabel>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n {data.map(this.animationCircle.bind(this))}\n <ClipPath\n aria-hidden\n id={uid}\n x={xMargin}\n y={yMargin}\n width={`${xSize}px`}\n height={`${ySize}px`}\n />\n </>\n );\n }\n}\n\nconst Bubble = createElement(BubbleRoot);\n\nexport default Bubble;\n"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
6
 
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
@@ -11,6 +11,8 @@ exports["default"] = void 0;
11
11
 
12
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
13
 
14
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
+
14
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
17
 
16
18
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
@@ -21,9 +23,7 @@ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/hel
21
23
 
22
24
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
23
25
 
24
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
25
-
26
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
26
+ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
27
27
 
28
28
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
29
29
 
@@ -35,22 +35,10 @@ var _propsForElement = _interopRequireDefault(require("@semcore/utils/lib/propsF
35
35
 
36
36
  var _excluded = ["id", "transition", "tag", "style", "className"];
37
37
 
38
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
39
-
40
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
41
-
42
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
43
-
44
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
45
-
46
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
47
-
48
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
49
-
50
38
  var ClipPath = /*#__PURE__*/function (_Component) {
51
39
  (0, _inherits2["default"])(ClipPath, _Component);
52
40
 
53
- var _super = _createSuper(ClipPath);
41
+ var _super = (0, _createSuper2["default"])(ClipPath);
54
42
 
55
43
  function ClipPath() {
56
44
  var _this;
@@ -110,7 +98,7 @@ var ClipPath = /*#__PURE__*/function (_Component) {
110
98
  ref: this.refClipPath,
111
99
  id: id
112
100
  }, /*#__PURE__*/_react["default"].createElement(Tag, (0, _extends2["default"])({
113
- style: _objectSpread(_objectSpread({}, style), {}, {
101
+ style: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, style), {}, {
114
102
  transition: transition
115
103
  })
116
104
  }, (0, _propsForElement["default"])(other, Tag))));
@@ -1 +1 @@
1
- {"version":3,"file":"ClipPath.js","names":["ClipPath","React","createRef","asProps","id","tag","setAttributeTag","Array","from","document","querySelectorAll","forEach","querySelector","svg","closest","node","getTotalLength","transition","Tag","style","className","other","refClipPath","propsForElement","Component","createComponent"],"sources":["../../src/ClipPath.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component } from '@semcore/core';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\n\nclass ClipPath extends Component {\n static defaultProps = {\n tag: 'rect',\n id: '',\n transition: '',\n setAttributeTag: null,\n };\n\n refClipPath = React.createRef();\n\n setAttributeTag() {\n const { id, tag, setAttributeTag } = this.asProps;\n if (setAttributeTag) {\n Array.from(document.querySelectorAll(`#${id} ${tag}`)).forEach(setAttributeTag);\n }\n }\n\n componentDidMount() {\n const { id } = this.asProps;\n if (!document || !id || !document.querySelector(`#${id}`)) return;\n const svg = document.querySelector(`#${id}`).closest('svg');\n Array.from(svg.querySelectorAll(`[clip-path=\"url(#${id})\"]`)).forEach((node) => {\n node && node.getTotalLength && node.getTotalLength();\n });\n this.setAttributeTag();\n }\n\n componentDidUpdate() {\n this.setAttributeTag();\n }\n\n render() {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { id, transition, tag: Tag, style, className, ...other } = this.asProps;\n return (\n <clipPath aria-hidden ref={this.refClipPath} id={id}>\n <Tag style={{ ...style, transition }} {...propsForElement(other, Tag)} />\n </clipPath>\n );\n }\n}\n\nexport default createComponent(ClipPath);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;IAEMA,Q;;;;;;;;;;;;;;;iHAQUC,iBAAA,CAAMC,SAAN,E;;;;;;WAEd,2BAAkB;MAChB,oBAAqC,KAAKC,OAA1C;MAAA,IAAQC,EAAR,iBAAQA,EAAR;MAAA,IAAYC,GAAZ,iBAAYA,GAAZ;MAAA,IAAiBC,eAAjB,iBAAiBA,eAAjB;;MACA,IAAIA,eAAJ,EAAqB;QACnBC,KAAK,CAACC,IAAN,CAAWC,QAAQ,CAACC,gBAAT,YAA8BN,EAA9B,cAAoCC,GAApC,EAAX,EAAuDM,OAAvD,CAA+DL,eAA/D;MACD;IACF;;;WAED,6BAAoB;MAClB,IAAQF,EAAR,GAAe,KAAKD,OAApB,CAAQC,EAAR;MACA,IAAI,CAACK,QAAD,IAAa,CAACL,EAAd,IAAoB,CAACK,QAAQ,CAACG,aAAT,YAA2BR,EAA3B,EAAzB,EAA2D;MAC3D,IAAMS,GAAG,GAAGJ,QAAQ,CAACG,aAAT,YAA2BR,EAA3B,GAAiCU,OAAjC,CAAyC,KAAzC,CAAZ;MACAP,KAAK,CAACC,IAAN,CAAWK,GAAG,CAACH,gBAAJ,6BAAyCN,EAAzC,UAAX,EAA8DO,OAA9D,CAAsE,UAACI,IAAD,EAAU;QAC9EA,IAAI,IAAIA,IAAI,CAACC,cAAb,IAA+BD,IAAI,CAACC,cAAL,EAA/B;MACD,CAFD;MAGA,KAAKV,eAAL;IACD;;;WAED,8BAAqB;MACnB,KAAKA,eAAL;IACD;;;WAED,kBAAS;MACP;MACA,qBAAiE,KAAKH,OAAtE;MAAA,IAAQC,EAAR,kBAAQA,EAAR;MAAA,IAAYa,UAAZ,kBAAYA,UAAZ;MAAA,IAA6BC,GAA7B,kBAAwBb,GAAxB;MAAA,IAAkCc,KAAlC,kBAAkCA,KAAlC;MAAA,IAAyCC,SAAzC,kBAAyCA,SAAzC;MAAA,IAAuDC,KAAvD;MACA,oBACE;QAAU,mBAAV;QAAsB,GAAG,EAAE,KAAKC,WAAhC;QAA6C,EAAE,EAAElB;MAAjD,gBACE,gCAAC,GAAD;QAAK,KAAK,kCAAOe,KAAP;UAAcF,UAAU,EAAVA;QAAd;MAAV,GAA0C,IAAAM,2BAAA,EAAgBF,KAAhB,EAAuBH,GAAvB,CAA1C,EADF,CADF;IAKD;;;EAvCoBM,e;;iCAAjBxB,Q,kBACkB;EACpBK,GAAG,EAAE,MADe;EAEpBD,EAAE,EAAE,EAFgB;EAGpBa,UAAU,EAAE,EAHQ;EAIpBX,eAAe,EAAE;AAJG,C;;eAyCT,IAAAmB,gBAAA,EAAgBzB,QAAhB,C"}
1
+ {"version":3,"file":"ClipPath.js","names":["ClipPath","React","createRef","asProps","id","tag","setAttributeTag","Array","from","document","querySelectorAll","forEach","querySelector","svg","closest","node","getTotalLength","transition","Tag","style","className","other","refClipPath","propsForElement","Component","createComponent"],"sources":["../../src/ClipPath.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component } from '@semcore/core';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\n\nclass ClipPath extends Component {\n static defaultProps = {\n tag: 'rect',\n id: '',\n transition: '',\n setAttributeTag: null,\n };\n\n refClipPath = React.createRef();\n\n setAttributeTag() {\n const { id, tag, setAttributeTag } = this.asProps;\n if (setAttributeTag) {\n Array.from(document.querySelectorAll(`#${id} ${tag}`)).forEach(setAttributeTag);\n }\n }\n\n componentDidMount() {\n const { id } = this.asProps;\n if (!document || !id || !document.querySelector(`#${id}`)) return;\n const svg = document.querySelector(`#${id}`).closest('svg');\n Array.from(svg.querySelectorAll(`[clip-path=\"url(#${id})\"]`)).forEach((node) => {\n node && node.getTotalLength && node.getTotalLength();\n });\n this.setAttributeTag();\n }\n\n componentDidUpdate() {\n this.setAttributeTag();\n }\n\n render() {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { id, transition, tag: Tag, style, className, ...other } = this.asProps;\n return (\n <clipPath aria-hidden ref={this.refClipPath} id={id}>\n <Tag style={{ ...style, transition }} {...propsForElement(other, Tag)} />\n </clipPath>\n );\n }\n}\n\nexport default createComponent(ClipPath);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;IAEMA,Q;;;;;;;;;;;;;;;iHAQUC,iBAAA,CAAMC,SAAN,E;;;;;;WAEd,2BAAkB;MAChB,oBAAqC,KAAKC,OAA1C;MAAA,IAAQC,EAAR,iBAAQA,EAAR;MAAA,IAAYC,GAAZ,iBAAYA,GAAZ;MAAA,IAAiBC,eAAjB,iBAAiBA,eAAjB;;MACA,IAAIA,eAAJ,EAAqB;QACnBC,KAAK,CAACC,IAAN,CAAWC,QAAQ,CAACC,gBAAT,YAA8BN,EAA9B,cAAoCC,GAApC,EAAX,EAAuDM,OAAvD,CAA+DL,eAA/D;MACD;IACF;;;WAED,6BAAoB;MAClB,IAAQF,EAAR,GAAe,KAAKD,OAApB,CAAQC,EAAR;MACA,IAAI,CAACK,QAAD,IAAa,CAACL,EAAd,IAAoB,CAACK,QAAQ,CAACG,aAAT,YAA2BR,EAA3B,EAAzB,EAA2D;MAC3D,IAAMS,GAAG,GAAGJ,QAAQ,CAACG,aAAT,YAA2BR,EAA3B,GAAiCU,OAAjC,CAAyC,KAAzC,CAAZ;MACAP,KAAK,CAACC,IAAN,CAAWK,GAAG,CAACH,gBAAJ,6BAAyCN,EAAzC,UAAX,EAA8DO,OAA9D,CAAsE,UAACI,IAAD,EAAU;QAC9EA,IAAI,IAAIA,IAAI,CAACC,cAAb,IAA+BD,IAAI,CAACC,cAAL,EAA/B;MACD,CAFD;MAGA,KAAKV,eAAL;IACD;;;WAED,8BAAqB;MACnB,KAAKA,eAAL;IACD;;;WAED,kBAAS;MACP;MACA,qBAAiE,KAAKH,OAAtE;MAAA,IAAQC,EAAR,kBAAQA,EAAR;MAAA,IAAYa,UAAZ,kBAAYA,UAAZ;MAAA,IAA6BC,GAA7B,kBAAwBb,GAAxB;MAAA,IAAkCc,KAAlC,kBAAkCA,KAAlC;MAAA,IAAyCC,SAAzC,kBAAyCA,SAAzC;MAAA,IAAuDC,KAAvD;MACA,oBACE;QAAU,mBAAV;QAAsB,GAAG,EAAE,KAAKC,WAAhC;QAA6C,EAAE,EAAElB;MAAjD,gBACE,gCAAC,GAAD;QAAK,KAAK,oEAAOe,KAAP;UAAcF,UAAU,EAAVA;QAAd;MAAV,GAA0C,IAAAM,2BAAA,EAAgBF,KAAhB,EAAuBH,GAAvB,CAA1C,EADF,CADF;IAKD;;;EAvCoBM,e;;iCAAjBxB,Q,kBACkB;EACpBK,GAAG,EAAE,MADe;EAEpBD,EAAE,EAAE,EAFgB;EAGpBa,UAAU,EAAE,EAHQ;EAIpBX,eAAe,EAAE;AAJG,C;;eAyCT,IAAAmB,gBAAA,EAAgBzB,QAAhB,C"}
package/lib/cjs/Donut.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
6
 
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
@@ -19,9 +19,7 @@ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/hel
19
19
 
20
20
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
21
 
22
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
22
+ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
25
23
 
26
24
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
25
 
@@ -49,30 +47,22 @@ var _utils = require("./utils");
49
47
 
50
48
  var _excluded = ["Element", "styles", "d3Arc", "data", "color", "$animationActivePie", "active", "d3ArcOut", "name", "dataKey", "dataHintsHandler", "transparent"];
51
49
 
52
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
53
-
54
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
55
-
56
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
57
-
58
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
59
-
60
50
  /*__reshadow-styles__:"./style/donut.shadow.css"*/
61
51
  var style = (
62
52
  /*__reshadow_css_start__*/
63
53
  _core.sstyled.insert(
64
54
  /*__inner_css_start__*/
65
- ".___SPie_bjzm0_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPie_bjzm0_gg_.__color_bjzm0_gg_{fill:var(--color_bjzm0)}.___SPie_bjzm0_gg_.__transparent_bjzm0_gg_{opacity:.3}.___SEmptyData_bjzm0_gg_{fill:var(--intergalactic-chart-palette-order-null, #e0e1e9)}.___SEmptyData_bjzm0_gg_.__color_bjzm0_gg_{fill:var(--color_bjzm0)}.___SLabel_bjzm0_gg_{text-anchor:middle;vertical-anchor:middle}"
55
+ ".___SPie_kv570_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPie_kv570_gg_.__color_kv570_gg_{fill:var(--color_kv570)}.___SPie_kv570_gg_.__transparent_kv570_gg_{opacity:.3}.___SEmptyData_kv570_gg_{fill:var(--intergalactic-chart-palette-order-null, #e0e1e9)}.___SEmptyData_kv570_gg_.__color_kv570_gg_{fill:var(--color_kv570)}.___SLabel_kv570_gg_{text-anchor:middle;vertical-anchor:middle}"
66
56
  /*__inner_css_end__*/
67
- , "bjzm0_gg_")
57
+ , "kv570_gg_")
68
58
  /*__reshadow_css_end__*/
69
59
  , {
70
- "__SPie": "___SPie_bjzm0_gg_",
71
- "_color": "__color_bjzm0_gg_",
72
- "--color": "--color_bjzm0",
73
- "_transparent": "__transparent_bjzm0_gg_",
74
- "__SEmptyData": "___SEmptyData_bjzm0_gg_",
75
- "__SLabel": "___SLabel_bjzm0_gg_"
60
+ "__SPie": "___SPie_kv570_gg_",
61
+ "_color": "__color_kv570_gg_",
62
+ "--color": "--color_kv570",
63
+ "_transparent": "__transparent_kv570_gg_",
64
+ "__SEmptyData": "___SEmptyData_kv570_gg_",
65
+ "__SLabel": "___SLabel_kv570_gg_"
76
66
  });
77
67
  var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
78
68
 
@@ -147,7 +137,7 @@ function getOuterRadius(_ref6) {
147
137
  var DonutRoot = /*#__PURE__*/function (_Component) {
148
138
  (0, _inherits2["default"])(DonutRoot, _Component);
149
139
 
150
- var _super = _createSuper(DonutRoot);
140
+ var _super = (0, _createSuper2["default"])(DonutRoot);
151
141
 
152
142
  function DonutRoot() {
153
143
  var _this;
@@ -1 +1 @@
1
- {"version":3,"file":"Donut.js","names":["DEFAULT_INSTANCE","Symbol","transitionAnglePie","selector","duration","halfsize","d3Arc","d3ArcOut","arcs","activeIndexPie","transition","selection","selectAll","interrupt","attrTween","_","ind","d","Object","assign","self","initAngle","Math","PI","prevStartAngle","prevEndAngle","arc","startAngle","endAngle","iStartAngle","interpolate","iEndAngle","t","transitionRadiusPie","data","innerRadius","outerRadiusMinMax","select","min","max","iOuterRadius","outerRadius","increaseFactor","getOuterRadius","size","width","height","minORmax","DonutRoot","canUseDOM","document","createElement","undefined","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","active","_outerRadius","canAnimatedHover","id","on","uid","top","right","bottom","left","Children","d3Pie","pieData","entries","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","Donut","Pie","push","dataKey","filter","key","includes","sort","a","b","indexOf","minValue","cur","map","find","$animationActivePie","animationActivePie","onMouseMove","bindHandlerTooltip","onMouseLeave","onMouseOver","e","target","getAttribute","onMouseOut","prevProps","$rootProps","animationUpdatePie","dataHintsHandler","establishDataType","Element","k","getArcs","Component","style","uniqueIDEnhancement","pie","value","SPie","styles","color","name","transparent","other","useState","isMount","setIsMount","useEffect","describeValueEntity","sstyled","EmptyData","SEmptyData","Label","SLabel","children","setTitle"],"sources":["../../src/Donut.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { arc, pie } from 'd3-shape';\nimport { interpolate } from 'd3-interpolate';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\n\nimport style from './style/donut.shadow.css';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\n\nfunction transitionAnglePie({ selector, duration, halfsize, d3Arc, d3ArcOut, arcs, activeIndexPie }) {\n return transition()\n .selection()\n .selectAll(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function(_, ind) {\n if (!arcs[ind]) return () => '';\n const d = Object.assign({}, arcs[ind]);\n const self = this;\n const initAngle = halfsize ? -Math.PI / 2 : 0;\n let prevStartAngle = initAngle;\n let prevEndAngle = initAngle;\n if (self.arc) {\n prevStartAngle = self.arc.startAngle;\n prevEndAngle = self.arc.endAngle;\n }\n const iStartAngle = interpolate(prevStartAngle, d.startAngle);\n const iEndAngle = interpolate(prevEndAngle, d.endAngle);\n return function(t) {\n d.startAngle = iStartAngle(t);\n d.endAngle = iEndAngle(t);\n self.arc = d;\n return ind === activeIndexPie ? d3ArcOut(self.arc) : d3Arc(self.arc);\n };\n });\n}\n\nfunction transitionRadiusPie({ data, selector, duration, innerRadius, outerRadiusMinMax }) {\n return transition()\n .selection()\n .select(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function() {\n const [min, max] = outerRadiusMinMax;\n const iOuterRadius = interpolate(min, max);\n return function(t) {\n const d3ArcOut = arc().innerRadius(innerRadius).outerRadius(iOuterRadius(t));\n return d3ArcOut(data);\n };\n });\n}\n\nconst increaseFactor = 8;\n\nfunction getOuterRadius({ size, halfsize, outerRadius }) {\n const [width, height] = size;\n const minORmax = halfsize ? Math.max : Math.min;\n return outerRadius || minORmax(width - increaseFactor * 2, height - increaseFactor * 2) / 2;\n}\n\nclass DonutRoot extends Component {\n static displayName = 'Donut';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({\n innerRadius = 0,\n outerRadius,\n halfsize = false,\n $rootProps: { size },\n }) => {\n const d3Arc = arc()\n .outerRadius(getOuterRadius({ size, halfsize, outerRadius }))\n .innerRadius(innerRadius);\n\n const d3ArcOut = arc()\n .outerRadius(getOuterRadius({ size, halfsize, outerRadius }) + increaseFactor)\n .innerRadius(innerRadius);\n\n let d3Pie = pie()\n .sort(null)\n .value(([, value]) => value);\n d3Pie[DEFAULT_INSTANCE] = true;\n\n if (halfsize) {\n d3Pie = d3Pie.startAngle(-Math.PI / 2).endAngle(Math.PI / 2);\n }\n return {\n d3Pie, d3Arc, d3ArcOut, duration: 500,\n };\n };\n\n get id() {\n const { uid, id } = this.asProps;\n return id || uid;\n }\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n activeIndexPie = undefined;\n canAnimatedHover = false;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n getArcs() {\n const { Children, data, d3Pie } = this.asProps;\n let pieData = Object.entries(data);\n\n if (d3Pie[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === Donut.Pie) {\n acc.push(child.props.dataKey);\n }\n return acc;\n }, []);\n pieData = Object.entries(data)\n .filter(([key]) => keys.includes(key))\n .sort(([a], [b]) => (keys.indexOf(a) > keys.indexOf(b) ? 1 : -1));\n }\n const minValue = pieData.reduce((acc, cur) => {\n if (cur[1]) acc += cur[1];\n return acc;\n }, 0) / 100;\n pieData = pieData.map((d) => {\n if (d[1] && d[1] < minValue) d[1] = minValue;\n return d;\n });\n return d3Pie(pieData);\n }\n\n bindHandlerTooltip = (visible, props) => ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationActivePie = ({ data, active, selector }) => {\n const { duration, innerRadius, outerRadius: _outerRadius, size, halfsize } = this.asProps;\n const outerRadius = getOuterRadius({ size, halfsize, outerRadius: _outerRadius });\n\n if (this.canAnimatedHover) {\n if (duration > 0) {\n transitionRadiusPie({\n data,\n selector: `#${this.id} ${selector}`,\n duration: duration === 0 ? 0 : 300,\n innerRadius,\n outerRadiusMinMax: active ? [outerRadius, outerRadius + increaseFactor] : [outerRadius + increaseFactor, outerRadius],\n });\n }\n }\n };\n\n animationUpdatePie = () => {\n const { duration, d3Arc, halfsize, d3ArcOut } = this.asProps;\n this.canAnimatedHover = false;\n if (duration > 0) {\n transitionAnglePie({\n selector: `#${this.id} [data-ui-name=\"Donut.Pie\"]`,\n duration,\n arcs: this.arcs,\n halfsize,\n d3Arc,\n d3ArcOut,\n activeIndexPie: this.activeIndexPie,\n }).on('end', () => {\n this.canAnimatedHover = true;\n });\n } else {\n this.canAnimatedHover = true;\n }\n };\n\n getPieProps(props, ind) {\n const { d3Arc, d3ArcOut } = this.asProps;\n const { active } = props;\n const data = this.arcs.find((arc) => arc.data[0] === props.dataKey);\n if (active) {\n this.activeIndexPie = ind;\n }\n\n return {\n data,\n d3Arc,\n d3ArcOut,\n $animationActivePie: this.animationActivePie,\n onMouseMove: this.bindHandlerTooltip(true, props),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n onMouseOver: (e) => {\n if (!active) {\n this.animationActivePie({\n active: true, data, selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n });\n }\n },\n onMouseOut: (e) => {\n if (!active) {\n this.animationActivePie({\n active: false, data, selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n });\n }\n },\n };\n }\n\n getEmptyDataProps() {\n const { d3Arc } = this.asProps;\n return {\n d3Arc,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { data } = this.asProps;\n if (prevProps.$rootProps.data !== data) {\n this.animationUpdatePie();\n }\n }\n\n componentDidMount() {\n this.animationUpdatePie();\n }\n\n render() {\n const { halfsize, size } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n const [width, height] = size;\n const Element = this.Element;\n const k = halfsize ? 1 : 2;\n this.arcs = this.getArcs();\n return (<Element\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / k})`}\n />);\n }\n}\n\nfunction Pie({\n Element: SPie,\n styles,\n d3Arc,\n data,\n color,\n $animationActivePie,\n active,\n d3ArcOut,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n ...other\n}) {\n const [isMount, setIsMount] = useState(false);\n\n useEffect(() => {\n // do not run animation on first render\n if (!isMount) {\n setIsMount(true);\n return;\n }\n if (active !== undefined && active !== null) {\n $animationActivePie({ active, data, selector: `[name=\"${other.name}\"]` });\n }\n }, [active]);\n\n dataHintsHandler.establishDataType('values-set');\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return sstyled(styles)(<SPie\n render='path'\n color={color}\n d={active ? d3ArcOut(data) : d3Arc(data)}\n transparent={transparent}\n />);\n}\n\nfunction EmptyData({ Element: SEmptyData, styles, d3Arc, color }) {\n return sstyled(styles)(<SEmptyData render='path' color={color}\n d={d3Arc({ endAngle: Math.PI * 2, startAngle: 0 })} />);\n}\n\nfunction Label({ Element: SLabel, styles, Children, children, dataHintsHandler }) {\n dataHintsHandler.setTitle('vertical', children);\n\n return sstyled(styles)(<SLabel render='text' x='0' y='0' aria-hidden>\n <Children />\n </SLabel>);\n}\n\nconst Donut = createElement(DonutRoot, { Pie, Label, EmptyData });\n\nexport default Donut;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Donut.js","names":["DEFAULT_INSTANCE","Symbol","transitionAnglePie","selector","duration","halfsize","d3Arc","d3ArcOut","arcs","activeIndexPie","transition","selection","selectAll","interrupt","attrTween","_","ind","d","Object","assign","self","initAngle","Math","PI","prevStartAngle","prevEndAngle","arc","startAngle","endAngle","iStartAngle","interpolate","iEndAngle","t","transitionRadiusPie","data","innerRadius","outerRadiusMinMax","select","min","max","iOuterRadius","outerRadius","increaseFactor","getOuterRadius","size","width","height","minORmax","DonutRoot","canUseDOM","document","createElement","undefined","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","active","_outerRadius","canAnimatedHover","id","on","uid","top","right","bottom","left","Children","d3Pie","pieData","entries","keys","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","Donut","Pie","push","dataKey","filter","key","includes","sort","a","b","indexOf","minValue","cur","map","find","$animationActivePie","animationActivePie","onMouseMove","bindHandlerTooltip","onMouseLeave","onMouseOver","e","target","getAttribute","onMouseOut","prevProps","$rootProps","animationUpdatePie","dataHintsHandler","establishDataType","Element","k","getArcs","Component","style","uniqueIDEnhancement","pie","value","SPie","styles","color","name","transparent","other","useState","isMount","setIsMount","useEffect","describeValueEntity","sstyled","EmptyData","SEmptyData","Label","SLabel","children","setTitle"],"sources":["../../src/Donut.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { arc, pie } from 'd3-shape';\nimport { interpolate } from 'd3-interpolate';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\n\nimport style from './style/donut.shadow.css';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\n\nfunction transitionAnglePie({ selector, duration, halfsize, d3Arc, d3ArcOut, arcs, activeIndexPie }) {\n return transition()\n .selection()\n .selectAll(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function(_, ind) {\n if (!arcs[ind]) return () => '';\n const d = Object.assign({}, arcs[ind]);\n const self = this;\n const initAngle = halfsize ? -Math.PI / 2 : 0;\n let prevStartAngle = initAngle;\n let prevEndAngle = initAngle;\n if (self.arc) {\n prevStartAngle = self.arc.startAngle;\n prevEndAngle = self.arc.endAngle;\n }\n const iStartAngle = interpolate(prevStartAngle, d.startAngle);\n const iEndAngle = interpolate(prevEndAngle, d.endAngle);\n return function(t) {\n d.startAngle = iStartAngle(t);\n d.endAngle = iEndAngle(t);\n self.arc = d;\n return ind === activeIndexPie ? d3ArcOut(self.arc) : d3Arc(self.arc);\n };\n });\n}\n\nfunction transitionRadiusPie({ data, selector, duration, innerRadius, outerRadiusMinMax }) {\n return transition()\n .selection()\n .select(selector)\n .interrupt()\n .transition()\n .duration(duration)\n .attrTween('d', function() {\n const [min, max] = outerRadiusMinMax;\n const iOuterRadius = interpolate(min, max);\n return function(t) {\n const d3ArcOut = arc().innerRadius(innerRadius).outerRadius(iOuterRadius(t));\n return d3ArcOut(data);\n };\n });\n}\n\nconst increaseFactor = 8;\n\nfunction getOuterRadius({ size, halfsize, outerRadius }) {\n const [width, height] = size;\n const minORmax = halfsize ? Math.max : Math.min;\n return outerRadius || minORmax(width - increaseFactor * 2, height - increaseFactor * 2) / 2;\n}\n\nclass DonutRoot extends Component {\n static displayName = 'Donut';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({\n innerRadius = 0,\n outerRadius,\n halfsize = false,\n $rootProps: { size },\n }) => {\n const d3Arc = arc()\n .outerRadius(getOuterRadius({ size, halfsize, outerRadius }))\n .innerRadius(innerRadius);\n\n const d3ArcOut = arc()\n .outerRadius(getOuterRadius({ size, halfsize, outerRadius }) + increaseFactor)\n .innerRadius(innerRadius);\n\n let d3Pie = pie()\n .sort(null)\n .value(([, value]) => value);\n d3Pie[DEFAULT_INSTANCE] = true;\n\n if (halfsize) {\n d3Pie = d3Pie.startAngle(-Math.PI / 2).endAngle(Math.PI / 2);\n }\n return {\n d3Pie, d3Arc, d3ArcOut, duration: 500,\n };\n };\n\n get id() {\n const { uid, id } = this.asProps;\n return id || uid;\n }\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n activeIndexPie = undefined;\n canAnimatedHover = false;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n getArcs() {\n const { Children, data, d3Pie } = this.asProps;\n let pieData = Object.entries(data);\n\n if (d3Pie[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === Donut.Pie) {\n acc.push(child.props.dataKey);\n }\n return acc;\n }, []);\n pieData = Object.entries(data)\n .filter(([key]) => keys.includes(key))\n .sort(([a], [b]) => (keys.indexOf(a) > keys.indexOf(b) ? 1 : -1));\n }\n const minValue = pieData.reduce((acc, cur) => {\n if (cur[1]) acc += cur[1];\n return acc;\n }, 0) / 100;\n pieData = pieData.map((d) => {\n if (d[1] && d[1] < minValue) d[1] = minValue;\n return d;\n });\n return d3Pie(pieData);\n }\n\n bindHandlerTooltip = (visible, props) => ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationActivePie = ({ data, active, selector }) => {\n const { duration, innerRadius, outerRadius: _outerRadius, size, halfsize } = this.asProps;\n const outerRadius = getOuterRadius({ size, halfsize, outerRadius: _outerRadius });\n\n if (this.canAnimatedHover) {\n if (duration > 0) {\n transitionRadiusPie({\n data,\n selector: `#${this.id} ${selector}`,\n duration: duration === 0 ? 0 : 300,\n innerRadius,\n outerRadiusMinMax: active ? [outerRadius, outerRadius + increaseFactor] : [outerRadius + increaseFactor, outerRadius],\n });\n }\n }\n };\n\n animationUpdatePie = () => {\n const { duration, d3Arc, halfsize, d3ArcOut } = this.asProps;\n this.canAnimatedHover = false;\n if (duration > 0) {\n transitionAnglePie({\n selector: `#${this.id} [data-ui-name=\"Donut.Pie\"]`,\n duration,\n arcs: this.arcs,\n halfsize,\n d3Arc,\n d3ArcOut,\n activeIndexPie: this.activeIndexPie,\n }).on('end', () => {\n this.canAnimatedHover = true;\n });\n } else {\n this.canAnimatedHover = true;\n }\n };\n\n getPieProps(props, ind) {\n const { d3Arc, d3ArcOut } = this.asProps;\n const { active } = props;\n const data = this.arcs.find((arc) => arc.data[0] === props.dataKey);\n if (active) {\n this.activeIndexPie = ind;\n }\n\n return {\n data,\n d3Arc,\n d3ArcOut,\n $animationActivePie: this.animationActivePie,\n onMouseMove: this.bindHandlerTooltip(true, props),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n onMouseOver: (e) => {\n if (!active) {\n this.animationActivePie({\n active: true, data, selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n });\n }\n },\n onMouseOut: (e) => {\n if (!active) {\n this.animationActivePie({\n active: false, data, selector: `[d=\"${e.target.getAttribute('d')}\"]`,\n });\n }\n },\n };\n }\n\n getEmptyDataProps() {\n const { d3Arc } = this.asProps;\n return {\n d3Arc,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { data } = this.asProps;\n if (prevProps.$rootProps.data !== data) {\n this.animationUpdatePie();\n }\n }\n\n componentDidMount() {\n this.animationUpdatePie();\n }\n\n render() {\n const { halfsize, size } = this.asProps;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n const [width, height] = size;\n const Element = this.Element;\n const k = halfsize ? 1 : 2;\n this.arcs = this.getArcs();\n return (<Element\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / k})`}\n />);\n }\n}\n\nfunction Pie({\n Element: SPie,\n styles,\n d3Arc,\n data,\n color,\n $animationActivePie,\n active,\n d3ArcOut,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n ...other\n}) {\n const [isMount, setIsMount] = useState(false);\n\n useEffect(() => {\n // do not run animation on first render\n if (!isMount) {\n setIsMount(true);\n return;\n }\n if (active !== undefined && active !== null) {\n $animationActivePie({ active, data, selector: `[name=\"${other.name}\"]` });\n }\n }, [active]);\n\n dataHintsHandler.establishDataType('values-set');\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return sstyled(styles)(<SPie\n render='path'\n color={color}\n d={active ? d3ArcOut(data) : d3Arc(data)}\n transparent={transparent}\n />);\n}\n\nfunction EmptyData({ Element: SEmptyData, styles, d3Arc, color }) {\n return sstyled(styles)(<SEmptyData render='path' color={color}\n d={d3Arc({ endAngle: Math.PI * 2, startAngle: 0 })} />);\n}\n\nfunction Label({ Element: SLabel, styles, Children, children, dataHintsHandler }) {\n dataHintsHandler.setTitle('vertical', children);\n\n return sstyled(styles)(<SLabel render='text' x='0' y='0' aria-hidden>\n <Children />\n </SLabel>);\n}\n\nconst Donut = createElement(DonutRoot, { Pie, Label, EmptyData });\n\nexport default Donut;\n"],"mappings":"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"}
package/lib/cjs/Dots.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
6
 
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
@@ -23,28 +23,24 @@ var _createElement = _interopRequireDefault(require("./createElement"));
23
23
 
24
24
  var _utils = require("./utils");
25
25
 
26
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
-
28
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
-
30
26
  /*__reshadow-styles__:"./style/dot.shadow.css"*/
31
27
  var style = (
32
28
  /*__reshadow_css_start__*/
33
29
  _core.sstyled.insert(
34
30
  /*__inner_css_start__*/
35
- ".___SDots_1rw6i_gg_ .___SDot_1rw6i_gg_{transition-duration:var(--duration_1rw6i)}.___SDot_1rw6i_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_1rw6i_gg_.__hide_1rw6i_gg_{display:none}.___SDot_1rw6i_gg_.__active_1rw6i_gg_{r:8px}.___SDot_1rw6i_gg_.__color_1rw6i_gg_{fill:var(--color_1rw6i)}.___SDot_1rw6i_gg_.__transparent_1rw6i_gg_{opacity:.3}"
31
+ ".___SDots_1hw3a_gg_ .___SDot_1hw3a_gg_{transition-duration:var(--duration_1hw3a)}.___SDot_1hw3a_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_1hw3a_gg_.__hide_1hw3a_gg_{display:none}.___SDot_1hw3a_gg_.__active_1hw3a_gg_{r:8px}.___SDot_1hw3a_gg_.__color_1hw3a_gg_{fill:var(--color_1hw3a)}.___SDot_1hw3a_gg_.__transparent_1hw3a_gg_{opacity:.3}"
36
32
  /*__inner_css_end__*/
37
- , "1rw6i_gg_")
33
+ , "1hw3a_gg_")
38
34
  /*__reshadow_css_end__*/
39
35
  , {
40
- "__SDots": "___SDots_1rw6i_gg_",
41
- "__SDot": "___SDot_1rw6i_gg_",
42
- "--duration": "--duration_1rw6i",
43
- "_hide": "__hide_1rw6i_gg_",
44
- "_active": "__active_1rw6i_gg_",
45
- "_color": "__color_1rw6i_gg_",
46
- "--color": "--color_1rw6i",
47
- "_transparent": "__transparent_1rw6i_gg_"
36
+ "__SDots": "___SDots_1hw3a_gg_",
37
+ "__SDot": "___SDot_1hw3a_gg_",
38
+ "--duration": "--duration_1hw3a",
39
+ "_hide": "__hide_1hw3a_gg_",
40
+ "_active": "__active_1hw3a_gg_",
41
+ "_color": "__color_1hw3a_gg_",
42
+ "--color": "--color_1hw3a",
43
+ "_transparent": "__transparent_1hw3a_gg_"
48
44
  });
49
45
  var EXCLUDE_PROPS = ['data', 'scale', 'value', 'display'];
50
46
 
@@ -1 +1 @@
1
- {"version":3,"file":"Dots.js","names":["EXCLUDE_PROPS","Dots","props","SDot","Element","styles","data","color","d3","x","y","eventEmitter","display","hide","rootRef","scale","duration","transparent","SDots","bisect","bisector","d","center","useState","activeIndex","setActiveIndex","handlerMouseMoveRoot","useCallback","trottle","e","xScale","eventToPoint","current","pX","vX","invert","handlerMouseLeaveRoot","useEffect","unsubscribeMouseMoveRoot","subscribe","persist","unsubscribeMouseLeaveRoot","dots","reduce","acc","i","isPrev","defined","isNext","active","visible","push","sstyled","style","createElement"],"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":["EXCLUDE_PROPS","Dots","props","SDot","Element","styles","data","color","d3","x","y","eventEmitter","display","hide","rootRef","scale","duration","transparent","SDots","bisect","bisector","d","center","useState","activeIndex","setActiveIndex","handlerMouseMoveRoot","useCallback","trottle","e","xScale","eventToPoint","current","pX","vX","invert","handlerMouseLeaveRoot","useEffect","unsubscribeMouseMoveRoot","subscribe","persist","unsubscribeMouseLeaveRoot","dots","reduce","acc","i","isPrev","defined","isNext","active","visible","push","sstyled","style","createElement"],"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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"}
@@ -13,9 +13,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
13
13
 
14
14
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
15
 
16
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
+ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
17
 
20
18
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
19
 
@@ -31,14 +29,10 @@ var _Bar = _interopRequireDefault(require("./Bar"));
31
29
 
32
30
  var _HorizontalBar = _interopRequireDefault(require("./HorizontalBar"));
33
31
 
34
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
35
-
36
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
37
-
38
32
  var GroupBarRoot = /*#__PURE__*/function (_Component) {
39
33
  (0, _inherits2["default"])(GroupBarRoot, _Component);
40
34
 
41
- var _super = _createSuper(GroupBarRoot);
35
+ var _super = (0, _createSuper2["default"])(GroupBarRoot);
42
36
 
43
37
  function GroupBarRoot() {
44
38
  (0, _classCallCheck2["default"])(this, GroupBarRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"GroupBar.js","names":["GroupBarRoot","asProps","Children","scale","scaleGroup","x","xyScale","domain","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","GroupBar","Bar","props","hide","push","y","HorizontalBar","copy","range","bandwidth","paddingInner","paddingOuter","offset","width","groupKey","height","Element","getScaleGroup","dataHintsHandler","establishDataType","Component","createElement"],"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":["GroupBarRoot","asProps","Children","scale","scaleGroup","x","xyScale","domain","React","toArray","getOriginChildren","reduce","acc","child","isValidElement","type","GroupBar","Bar","props","hide","push","y","HorizontalBar","copy","range","bandwidth","paddingInner","paddingOuter","offset","width","groupKey","height","Element","getScaleGroup","dataHintsHandler","establishDataType","Component","createElement"],"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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"}
@@ -15,9 +15,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
15
15
 
16
16
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
 
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
18
+ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
21
19
 
22
20
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
21
 
@@ -33,33 +31,29 @@ var _ClipPath = _interopRequireDefault(require("./ClipPath"));
33
31
 
34
32
  var _utils = require("./utils");
35
33
 
36
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
37
-
38
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
-
40
34
  /*__reshadow-styles__:"./style/bar.shadow.css"*/
41
35
  var style = (
42
36
  /*__reshadow_css_start__*/
43
37
  _core.sstyled.insert(
44
38
  /*__inner_css_start__*/
45
- ".___SBar_1ps47_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1ps47);transition-timing-function:ease-in-out}.___SBar_1ps47_gg_.__color_1ps47_gg_{fill:var(--color_1ps47)}.___SBar_1ps47_gg_.__hide_1ps47_gg_{display:none}.___SBar_1ps47_gg_.__transparent_1ps47_gg_{opacity:.3}.___SBackground_1ps47_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}"
39
+ ".___SBar_1s8tx_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1s8tx);transition-timing-function:ease-in-out}.___SBar_1s8tx_gg_.__color_1s8tx_gg_{fill:var(--color_1s8tx)}.___SBar_1s8tx_gg_.__hide_1s8tx_gg_{display:none}.___SBar_1s8tx_gg_.__transparent_1s8tx_gg_{opacity:.3}.___SBackground_1s8tx_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}"
46
40
  /*__inner_css_end__*/
47
- , "1ps47_gg_")
41
+ , "1s8tx_gg_")
48
42
  /*__reshadow_css_end__*/
49
43
  , {
50
- "__SBar": "___SBar_1ps47_gg_",
51
- "--duration": "--duration_1ps47",
52
- "_color": "__color_1ps47_gg_",
53
- "--color": "--color_1ps47",
54
- "_hide": "__hide_1ps47_gg_",
55
- "_transparent": "__transparent_1ps47_gg_",
56
- "__SBackground": "___SBackground_1ps47_gg_"
44
+ "__SBar": "___SBar_1s8tx_gg_",
45
+ "--duration": "--duration_1s8tx",
46
+ "_color": "__color_1s8tx_gg_",
47
+ "--color": "--color_1s8tx",
48
+ "_hide": "__hide_1s8tx_gg_",
49
+ "_transparent": "__transparent_1s8tx_gg_",
50
+ "__SBackground": "___SBackground_1s8tx_gg_"
57
51
  });
58
52
 
59
53
  var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
60
54
  (0, _inherits2["default"])(HorizontalBarRoot, _Component);
61
55
 
62
- var _super = _createSuper(HorizontalBarRoot);
56
+ var _super = (0, _createSuper2["default"])(HorizontalBarRoot);
63
57
 
64
58
  function HorizontalBarRoot() {
65
59
  (0, _classCallCheck2["default"])(this, HorizontalBarRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalBar.js","names":["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","getBandwidth","width","abs","max","domain","dSvg","getHorizontalRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","sstyled","size","map","renderBar","bind","rect","setAttribute","Component","uniqueIDEnhancement","style","Background","SBackground","xRange","range","bandwidth","roundedPath","createElement"],"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":["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","getBandwidth","width","abs","max","domain","dSvg","getHorizontalRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","sstyled","size","map","renderBar","bind","rect","setAttribute","Component","uniqueIDEnhancement","style","Background","SBackground","xRange","range","bandwidth","roundedPath","createElement"],"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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"}