@semcore/d3-chart 3.60.0 → 3.60.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/Area.js +14 -12
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +17 -15
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +19 -17
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +15 -13
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/CompactHorizontalBar.js +19 -17
  11. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  12. package/lib/cjs/Donut.js +12 -10
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +11 -9
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/HorizontalBar.js +19 -17
  17. package/lib/cjs/HorizontalBar.js.map +1 -1
  18. package/lib/cjs/Hover.js +6 -4
  19. package/lib/cjs/Hover.js.map +1 -1
  20. package/lib/cjs/Line.js +12 -10
  21. package/lib/cjs/Line.js.map +1 -1
  22. package/lib/cjs/Plot.js +6 -4
  23. package/lib/cjs/Plot.js.map +1 -1
  24. package/lib/cjs/Radar.js +22 -20
  25. package/lib/cjs/Radar.js.map +1 -1
  26. package/lib/cjs/RadialTree.js +15 -13
  27. package/lib/cjs/RadialTree.js.map +1 -1
  28. package/lib/cjs/Reference.js +15 -13
  29. package/lib/cjs/Reference.js.map +1 -1
  30. package/lib/cjs/ScatterPlot.js +12 -10
  31. package/lib/cjs/ScatterPlot.js.map +1 -1
  32. package/lib/cjs/Tooltip.js +12 -10
  33. package/lib/cjs/Tooltip.js.map +1 -1
  34. package/lib/cjs/Venn.js +12 -10
  35. package/lib/cjs/Venn.js.map +1 -1
  36. package/lib/cjs/a11y/PlotA11yModule.js +5 -3
  37. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  38. package/lib/cjs/a11y/PlotA11yView.js +5 -3
  39. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  40. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +7 -5
  41. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  42. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +20 -18
  43. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  44. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +9 -7
  45. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  46. package/lib/es6/Area.js +14 -12
  47. package/lib/es6/Area.js.map +1 -1
  48. package/lib/es6/Axis.js +17 -15
  49. package/lib/es6/Axis.js.map +1 -1
  50. package/lib/es6/Bar.js +19 -17
  51. package/lib/es6/Bar.js.map +1 -1
  52. package/lib/es6/Bubble.js +15 -13
  53. package/lib/es6/Bubble.js.map +1 -1
  54. package/lib/es6/CompactHorizontalBar.js +19 -17
  55. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  56. package/lib/es6/Donut.js +12 -10
  57. package/lib/es6/Donut.js.map +1 -1
  58. package/lib/es6/Dots.js +11 -9
  59. package/lib/es6/Dots.js.map +1 -1
  60. package/lib/es6/HorizontalBar.js +19 -17
  61. package/lib/es6/HorizontalBar.js.map +1 -1
  62. package/lib/es6/Hover.js +6 -4
  63. package/lib/es6/Hover.js.map +1 -1
  64. package/lib/es6/Line.js +12 -10
  65. package/lib/es6/Line.js.map +1 -1
  66. package/lib/es6/Plot.js +6 -4
  67. package/lib/es6/Plot.js.map +1 -1
  68. package/lib/es6/Radar.js +22 -20
  69. package/lib/es6/Radar.js.map +1 -1
  70. package/lib/es6/RadialTree.js +15 -13
  71. package/lib/es6/RadialTree.js.map +1 -1
  72. package/lib/es6/Reference.js +15 -13
  73. package/lib/es6/Reference.js.map +1 -1
  74. package/lib/es6/ScatterPlot.js +12 -10
  75. package/lib/es6/ScatterPlot.js.map +1 -1
  76. package/lib/es6/Tooltip.js +12 -10
  77. package/lib/es6/Tooltip.js.map +1 -1
  78. package/lib/es6/Venn.js +12 -10
  79. package/lib/es6/Venn.js.map +1 -1
  80. package/lib/es6/a11y/PlotA11yModule.js +5 -3
  81. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  82. package/lib/es6/a11y/PlotA11yView.js +5 -3
  83. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  84. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +7 -5
  85. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  86. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +20 -18
  87. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  88. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +9 -7
  89. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  90. package/lib/esm/AnimatedClipPath.mjs +54 -0
  91. package/lib/esm/Area.mjs +189 -0
  92. package/lib/esm/Axis.mjs +406 -0
  93. package/lib/esm/Bar.mjs +201 -0
  94. package/lib/esm/Bubble.mjs +216 -0
  95. package/lib/esm/CompactHorizontalBar.mjs +518 -0
  96. package/lib/esm/Donut.mjs +415 -0
  97. package/lib/esm/Dots.mjs +120 -0
  98. package/lib/esm/GroupBar.mjs +94 -0
  99. package/lib/esm/HorizontalBar.mjs +181 -0
  100. package/lib/esm/Hover.mjs +217 -0
  101. package/lib/esm/Line.mjs +199 -0
  102. package/lib/esm/Pattern.mjs +520 -0
  103. package/lib/esm/Plot.mjs +137 -0
  104. package/lib/esm/Radar.mjs +706 -0
  105. package/lib/esm/RadialTree.mjs +565 -0
  106. package/lib/esm/Reference.mjs +243 -0
  107. package/lib/esm/ResponsiveContainer.mjs +99 -0
  108. package/lib/esm/ScatterPlot.mjs +194 -0
  109. package/lib/esm/StackBar.mjs +177 -0
  110. package/lib/esm/StackedArea.mjs +84 -0
  111. package/lib/esm/Tooltip.mjs +255 -0
  112. package/lib/esm/Venn.mjs +234 -0
  113. package/lib/esm/a11y/DataAccessibilityTable.mjs +100 -0
  114. package/lib/esm/a11y/PlotA11yModule.mjs +117 -0
  115. package/lib/esm/a11y/PlotA11yView.mjs +146 -0
  116. package/lib/esm/a11y/bezier.mjs +32 -0
  117. package/lib/esm/a11y/focus.mjs +44 -0
  118. package/lib/esm/a11y/hints.mjs +122 -0
  119. package/lib/esm/a11y/insights.mjs +700 -0
  120. package/lib/esm/a11y/intl.mjs +17 -0
  121. package/lib/esm/a11y/locale.mjs +39 -0
  122. package/lib/esm/a11y/serialize.mjs +363 -0
  123. package/lib/esm/a11y/summarize.mjs +14 -0
  124. package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +33 -0
  125. package/lib/esm/a11y/translations/module/de.json.mjs +14 -0
  126. package/lib/esm/a11y/translations/module/en.json.mjs +14 -0
  127. package/lib/esm/a11y/translations/module/es.json.mjs +14 -0
  128. package/lib/esm/a11y/translations/module/fr.json.mjs +14 -0
  129. package/lib/esm/a11y/translations/module/it.json.mjs +14 -0
  130. package/lib/esm/a11y/translations/module/ja.json.mjs +14 -0
  131. package/lib/esm/a11y/translations/module/ko.json.mjs +14 -0
  132. package/lib/esm/a11y/translations/module/nl.json.mjs +14 -0
  133. package/lib/esm/a11y/translations/module/pl.json.mjs +14 -0
  134. package/lib/esm/a11y/translations/module/pt.json.mjs +14 -0
  135. package/lib/esm/a11y/translations/module/sv.json.mjs +14 -0
  136. package/lib/esm/a11y/translations/module/tr.json.mjs +14 -0
  137. package/lib/esm/a11y/translations/module/vi.json.mjs +14 -0
  138. package/lib/esm/a11y/translations/module/zh.json.mjs +14 -0
  139. package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +33 -0
  140. package/lib/esm/a11y/translations/view/de.json.mjs +48 -0
  141. package/lib/esm/a11y/translations/view/en.json.mjs +48 -0
  142. package/lib/esm/a11y/translations/view/es.json.mjs +48 -0
  143. package/lib/esm/a11y/translations/view/fr.json.mjs +48 -0
  144. package/lib/esm/a11y/translations/view/it.json.mjs +48 -0
  145. package/lib/esm/a11y/translations/view/ja.json.mjs +48 -0
  146. package/lib/esm/a11y/translations/view/ko.json.mjs +48 -0
  147. package/lib/esm/a11y/translations/view/nl.json.mjs +48 -0
  148. package/lib/esm/a11y/translations/view/pl.json.mjs +48 -0
  149. package/lib/esm/a11y/translations/view/pt.json.mjs +48 -0
  150. package/lib/esm/a11y/translations/view/sv.json.mjs +48 -0
  151. package/lib/esm/a11y/translations/view/tr.json.mjs +48 -0
  152. package/lib/esm/a11y/translations/view/vi.json.mjs +48 -0
  153. package/lib/esm/a11y/translations/view/zh.json.mjs +48 -0
  154. package/lib/esm/color.mjs +127 -0
  155. package/lib/esm/component/Chart/AbstractChart.mjs +408 -0
  156. package/lib/esm/component/Chart/AreaChart.mjs +145 -0
  157. package/lib/esm/component/Chart/BarChart.mjs +240 -0
  158. package/lib/esm/component/Chart/BubbleChart.mjs +135 -0
  159. package/lib/esm/component/Chart/CigaretteChart.mjs +294 -0
  160. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +113 -0
  161. package/lib/esm/component/Chart/DonutChart.mjs +113 -0
  162. package/lib/esm/component/Chart/HistogramChart.mjs +166 -0
  163. package/lib/esm/component/Chart/LineChart.mjs +131 -0
  164. package/lib/esm/component/Chart/RadarChart.mjs +115 -0
  165. package/lib/esm/component/Chart/ScatterPlotChart.mjs +144 -0
  166. package/lib/esm/component/Chart/VennChart.mjs +141 -0
  167. package/lib/esm/component/Chart/index.mjs +27 -0
  168. package/lib/esm/component/ChartLegend/BaseLegend.mjs +91 -0
  169. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +86 -0
  170. package/lib/esm/component/ChartLegend/LegendFlex/legend-flex.shadow.css +12 -0
  171. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +240 -0
  172. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.type.mjs +4 -0
  173. package/lib/esm/component/ChartLegend/LegendItem/legend-item.shadow.css +129 -0
  174. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +90 -0
  175. package/lib/esm/component/ChartLegend/LegendTable/legend-table.shadow.css +19 -0
  176. package/lib/esm/component/ChartLegend/index.mjs +5 -0
  177. package/lib/esm/component/Cigarette/Cigarette.mjs +139 -0
  178. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +141 -0
  179. package/lib/esm/createElement.mjs +104 -0
  180. package/lib/esm/index.mjs +70 -0
  181. package/lib/esm/style/area.shadow.css +50 -0
  182. package/lib/esm/style/axis.shadow.css +88 -0
  183. package/lib/esm/style/bar.shadow.css +66 -0
  184. package/lib/esm/style/bubble.shadow.css +64 -0
  185. package/lib/esm/style/donut.shadow.css +36 -0
  186. package/lib/esm/style/dot.shadow.css +27 -0
  187. package/lib/esm/style/hover.shadow.css +9 -0
  188. package/lib/esm/style/line.shadow.css +43 -0
  189. package/lib/esm/style/plot.shadow.css +19 -0
  190. package/lib/esm/style/plotA11yModule.shadow.css +12 -0
  191. package/lib/esm/style/plotA11yView.shadow.css +39 -0
  192. package/lib/esm/style/radar.shadow.css +80 -0
  193. package/lib/esm/style/radial-tree.shadow.css +54 -0
  194. package/lib/esm/style/reference.shadow.css +43 -0
  195. package/lib/esm/style/scatterplot.shadow.css +41 -0
  196. package/lib/esm/style/tooltip.shadow.css +42 -0
  197. package/lib/esm/style/venn.shadow.css +48 -0
  198. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +31 -0
  199. package/lib/esm/translations/en.json.mjs +12 -0
  200. package/lib/esm/translations/es.json.mjs +11 -0
  201. package/lib/esm/translations/fr.json.mjs +11 -0
  202. package/lib/esm/translations/it.json.mjs +11 -0
  203. package/lib/esm/translations/ja.json.mjs +11 -0
  204. package/lib/esm/translations/ko.json.mjs +11 -0
  205. package/lib/esm/translations/nl.json.mjs +11 -0
  206. package/lib/esm/translations/pl.json.mjs +11 -0
  207. package/lib/esm/translations/pt.json.mjs +11 -0
  208. package/lib/esm/translations/sv.json.mjs +11 -0
  209. package/lib/esm/translations/tr.json.mjs +11 -0
  210. package/lib/esm/translations/vi.json.mjs +11 -0
  211. package/lib/esm/translations/zh.json.mjs +11 -0
  212. package/lib/esm/utils.mjs +266 -0
  213. package/package.json +11 -11
  214. package/vite.config.ts +2 -0
@@ -0,0 +1,177 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
5
+ import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
6
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
7
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
8
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
9
+ import React from "react";
10
+ import { stack } from "d3-shape";
11
+ import { Component } from "@semcore/core";
12
+ import getOriginChildren from "@semcore/utils/lib/getOriginChildren";
13
+ import createElement from "./createElement.mjs";
14
+ import Bar, { MIN_HEIGHT } from "./Bar.mjs";
15
+ import HorizontalBar, { MIN_WIDTH } from "./HorizontalBar.mjs";
16
+ import { getChartDefaultColorName } from "./utils.mjs";
17
+ var DEFAULT_INSTANCE = Symbol("DEFAULT_INSTANCE");
18
+ var XY0 = Symbol("XY0");
19
+ var StackBarRoot = /* @__PURE__ */ function(_Component) {
20
+ _inherits(StackBarRoot2, _Component);
21
+ var _super = _createSuper(StackBarRoot2);
22
+ function StackBarRoot2() {
23
+ var _this;
24
+ _classCallCheck(this, StackBarRoot2);
25
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
26
+ args[_key] = arguments[_key];
27
+ }
28
+ _this = _super.call.apply(_super, [this].concat(args));
29
+ _defineProperty(_assertThisInitialized(_this), "offsetBars", []);
30
+ return _this;
31
+ }
32
+ _createClass(StackBarRoot2, [{
33
+ key: "getSeries",
34
+ value: function getSeries() {
35
+ var _this$asProps = this.asProps, Children = _this$asProps.Children, data = _this$asProps.data, stack2 = _this$asProps.stack;
36
+ if (stack2[DEFAULT_INSTANCE]) {
37
+ var keys = React.Children.toArray(getOriginChildren(Children)).reduce(function(acc, child) {
38
+ if (/* @__PURE__ */ React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {
39
+ acc.push(child.props.y);
40
+ }
41
+ if (/* @__PURE__ */ React.isValidElement(child) && child.type === StackBar.HorizontalBar && !child.props.hide) {
42
+ acc.push(child.props.x);
43
+ }
44
+ return acc;
45
+ }, []);
46
+ stack2.keys(keys);
47
+ }
48
+ return stack2(data);
49
+ }
50
+ }, {
51
+ key: "getBarProps",
52
+ value: function getBarProps(_ref, index) {
53
+ var _this2 = this, _this$offsetBars$seri;
54
+ var y = _ref.y, _ref$hMin = _ref.hMin, hMin = _ref$hMin === void 0 ? MIN_HEIGHT : _ref$hMin;
55
+ var _this$asProps2 = this.asProps, x = _this$asProps2.x, r = _this$asProps2.r, scale = _this$asProps2.scale, maxBarSize = _this$asProps2.maxBarSize, patterns = _this$asProps2.patterns;
56
+ var _scale = _slicedToArray(scale, 2), yScale = _scale[1];
57
+ var seriesIndex = this.series.findIndex(function(s) {
58
+ return s.key === y;
59
+ });
60
+ var series = this.series[seriesIndex] || [];
61
+ var rBar = series.map(function(s, i) {
62
+ return _this2.series.slice(seriesIndex + 1).some(function(bar) {
63
+ return bar[i][0] !== bar[i][1];
64
+ }) ? 0 : r;
65
+ });
66
+ this.offsetBars[seriesIndex] = (_this$offsetBars$seri = this.offsetBars[seriesIndex]) !== null && _this$offsetBars$seri !== void 0 ? _this$offsetBars$seri : [];
67
+ var data = series.map(function(s) {
68
+ var _objectSpread2;
69
+ return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, y, s[1]), _defineProperty(_objectSpread2, XY0, s[0]), _objectSpread2));
70
+ });
71
+ var calcOffset = function calcOffset2(i) {
72
+ var _d$XY, _d$XY2;
73
+ var offset = _this2.offsetBars.reduce(function(offset2, offsetBar) {
74
+ var _offsetBar$i;
75
+ return offset2 - ((_offsetBar$i = offsetBar[i]) !== null && _offsetBar$i !== void 0 ? _offsetBar$i : 0);
76
+ }, 0);
77
+ var d = data[i];
78
+ var absHeight = Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale((_d$XY = d[XY0]) !== null && _d$XY !== void 0 ? _d$XY : 0)));
79
+ var isEmptyValue = Number(d[y] - ((_d$XY2 = d[XY0]) !== null && _d$XY2 !== void 0 ? _d$XY2 : 0)) === 0;
80
+ if (isEmptyValue || absHeight >= hMin) {
81
+ _this2.offsetBars[seriesIndex][i] = 0;
82
+ } else {
83
+ var offsetValue = hMin - absHeight;
84
+ _this2.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;
85
+ }
86
+ return [0, offset];
87
+ };
88
+ return {
89
+ data,
90
+ hMin,
91
+ y0: XY0,
92
+ x,
93
+ r: rBar,
94
+ groupKey: x,
95
+ offset: calcOffset,
96
+ maxBarSize,
97
+ color: getChartDefaultColorName(index),
98
+ patterns
99
+ };
100
+ }
101
+ }, {
102
+ key: "getHorizontalBarProps",
103
+ value: function getHorizontalBarProps(_ref2, index) {
104
+ var _this3 = this, _this$offsetBars$seri2;
105
+ var x = _ref2.x, _ref2$wMin = _ref2.wMin, wMin = _ref2$wMin === void 0 ? MIN_WIDTH : _ref2$wMin;
106
+ var _this$asProps3 = this.asProps, y = _this$asProps3.y, r = _this$asProps3.r, scale = _this$asProps3.scale, maxBarSize = _this$asProps3.maxBarSize, patterns = _this$asProps3.patterns;
107
+ var _scale2 = _slicedToArray(scale, 1), xScale = _scale2[0];
108
+ var seriesIndex = this.series.findIndex(function(s) {
109
+ return s.key === x;
110
+ });
111
+ var series = this.series[seriesIndex];
112
+ var rBar = series.map(function(s, i) {
113
+ return _this3.series.slice(seriesIndex + 1).some(function(bar) {
114
+ return bar[i][0] !== bar[i][1];
115
+ }) ? 0 : r;
116
+ });
117
+ this.offsetBars[seriesIndex] = (_this$offsetBars$seri2 = this.offsetBars[seriesIndex]) !== null && _this$offsetBars$seri2 !== void 0 ? _this$offsetBars$seri2 : [];
118
+ var data = series.map(function(s) {
119
+ var _objectSpread3;
120
+ return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread3 = {}, _defineProperty(_objectSpread3, x, s[1]), _defineProperty(_objectSpread3, XY0, s[0]), _objectSpread3));
121
+ });
122
+ var calcOffset = function calcOffset2(i) {
123
+ var _d$XY3, _d$XY4;
124
+ var offset = _this3.offsetBars.reduce(function(offset2, offsetBar) {
125
+ var _offsetBar$i2;
126
+ return offset2 - ((_offsetBar$i2 = offsetBar[i]) !== null && _offsetBar$i2 !== void 0 ? _offsetBar$i2 : 0);
127
+ }, 0);
128
+ var d = data[i];
129
+ var absWidth = Math.abs(xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale((_d$XY3 = d[XY0]) !== null && _d$XY3 !== void 0 ? _d$XY3 : 0)));
130
+ _this3.offsetBars[seriesIndex][i] = Number(d[x] - ((_d$XY4 = d[XY0]) !== null && _d$XY4 !== void 0 ? _d$XY4 : 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;
131
+ return [offset, 0];
132
+ };
133
+ return {
134
+ data,
135
+ wMin,
136
+ x0: XY0,
137
+ y,
138
+ r: rBar,
139
+ groupKey: y,
140
+ offset: calcOffset,
141
+ maxBarSize,
142
+ color: getChartDefaultColorName(index),
143
+ patterns
144
+ };
145
+ }
146
+ }, {
147
+ key: "render",
148
+ value: function render() {
149
+ var Element = this.Element;
150
+ this.series = this.getSeries();
151
+ this.asProps.dataHintsHandler.establishDataType("grouped-values");
152
+ this.offsetBars = [];
153
+ return /* @__PURE__ */ React.createElement(Element, {
154
+ "aria-hidden": true,
155
+ render: "g",
156
+ series: this.series
157
+ });
158
+ }
159
+ }]);
160
+ return StackBarRoot2;
161
+ }(Component);
162
+ _defineProperty(StackBarRoot, "displayName", "StackBar");
163
+ _defineProperty(StackBarRoot, "defaultProps", function() {
164
+ var stack$1 = stack();
165
+ stack$1[DEFAULT_INSTANCE] = true;
166
+ return {
167
+ stack: stack$1,
168
+ r: 2
169
+ };
170
+ });
171
+ var StackBar = createElement(StackBarRoot, {
172
+ Bar,
173
+ HorizontalBar
174
+ });
175
+ export {
176
+ StackBar as default
177
+ };
@@ -0,0 +1,84 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
4
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
5
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
6
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
7
+ import React from "react";
8
+ import { stack } from "d3-shape";
9
+ import { Component } from "@semcore/core";
10
+ import getOriginChildren from "@semcore/utils/lib/getOriginChildren";
11
+ import createElement from "./createElement.mjs";
12
+ import Area from "./Area.mjs";
13
+ import { getChartDefaultColorName } from "./utils.mjs";
14
+ var DEFAULT_INSTANCE = Symbol("DEFAULT_INSTANCE");
15
+ var Y0 = Symbol("Y0");
16
+ var StackedAreaRoot = /* @__PURE__ */ function(_Component) {
17
+ _inherits(StackedAreaRoot2, _Component);
18
+ var _super = _createSuper(StackedAreaRoot2);
19
+ function StackedAreaRoot2() {
20
+ _classCallCheck(this, StackedAreaRoot2);
21
+ return _super.apply(this, arguments);
22
+ }
23
+ _createClass(StackedAreaRoot2, [{
24
+ key: "getSeries",
25
+ value: function getSeries() {
26
+ var _this$asProps = this.asProps, Children = _this$asProps.Children, data = _this$asProps.data, stack2 = _this$asProps.stack;
27
+ if (stack2[DEFAULT_INSTANCE]) {
28
+ var keys = React.Children.toArray(getOriginChildren(Children)).reduce(function(acc, child) {
29
+ if (/* @__PURE__ */ React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {
30
+ acc.push(child.props.y);
31
+ }
32
+ return acc;
33
+ }, []);
34
+ stack2.keys(keys.reverse());
35
+ }
36
+ return stack2(data);
37
+ }
38
+ }, {
39
+ key: "getAreaProps",
40
+ value: function getAreaProps(_ref, index) {
41
+ var y = _ref.y;
42
+ var _this$asProps2 = this.asProps, x = _this$asProps2.x, patterns = _this$asProps2.patterns;
43
+ var series = this.series.find(function(s) {
44
+ return s.key === y;
45
+ }) || [];
46
+ return {
47
+ color: getChartDefaultColorName(index),
48
+ patterns,
49
+ data: series.map(function(s) {
50
+ var _objectSpread2;
51
+ return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, y, s.data[y] === null ? null : s[1]), _defineProperty(_objectSpread2, Y0, s[0]), _objectSpread2));
52
+ }),
53
+ y0: Y0,
54
+ x
55
+ };
56
+ }
57
+ }, {
58
+ key: "render",
59
+ value: function render() {
60
+ var Element = this.Element;
61
+ this.series = this.getSeries();
62
+ return /* @__PURE__ */ React.createElement(Element, {
63
+ "aria-hidden": true,
64
+ render: "g",
65
+ series: this.series
66
+ });
67
+ }
68
+ }]);
69
+ return StackedAreaRoot2;
70
+ }(Component);
71
+ _defineProperty(StackedAreaRoot, "displayName", "StackedArea");
72
+ _defineProperty(StackedAreaRoot, "defaultProps", function() {
73
+ var stack$1 = stack();
74
+ stack$1[DEFAULT_INSTANCE] = true;
75
+ return {
76
+ stack: stack$1
77
+ };
78
+ });
79
+ var StackedArea = createElement(StackedAreaRoot, {
80
+ Area
81
+ });
82
+ export {
83
+ StackedArea as default
84
+ };
@@ -0,0 +1,255 @@
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
5
+ import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
6
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
7
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
8
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
9
+ import { sstyled } from "@semcore/utils/lib/core/index";
10
+ import { assignProps, Component, sstyled as sstyled$1 } from "@semcore/core";
11
+ import React from "react";
12
+ import Popper from "@semcore/popper";
13
+ import { Box } from "@semcore/flex-box";
14
+ import findComponent from "@semcore/utils/lib/findComponent";
15
+ import createElement from "./createElement.mjs";
16
+ import { getChartDefaultColorName } from "./utils.mjs";
17
+ import { useColorResolver } from "@semcore/utils/lib/use/useColorResolver";
18
+ import { PatternSymbol } from "./Pattern.mjs";
19
+ var _excluded = ["Children", "children", "tag", "forcedAdvancedMode", "onClick"];
20
+ /*!__reshadow-styles__:"./style/tooltip.shadow.css"*/
21
+ var style = (
22
+ /*__reshadow_css_start__*/
23
+ (sstyled.insert(
24
+ /*__inner_css_start__*/
25
+ ".___STooltip_gbp6s_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15));padding:var(--intergalactic-spacing-3x, 12px)}.___STitle_gbp6s_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_gbp6s_gg_{display:flex;align-items:center}.___SDot_gbp6s_gg_{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDotCircle_gbp6s_gg_.__color_gbp6s_gg_{background-color:var(--color_gbp6s);width:8px;height:8px;border-radius:50%}.___SFooter_gbp6s_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9);padding:var(--intergalactic-spacing-1x, 4px) var(--intergalactic-spacing-3x, 12px);border-radius:0 0 var(--intergalactic-rounded-medium, 6px) var(--intergalactic-rounded-medium, 6px);margin:var(--intergalactic-spacing-3x, 12px) calc(-1*var(--intergalactic-spacing-3x, 12px)) calc(-1*var(--intergalactic-spacing-3x, 12px))}",
26
+ /*__inner_css_end__*/
27
+ "gbp6s_gg_"
28
+ ), /*__reshadow_css_end__*/
29
+ {
30
+ "__STooltip": "___STooltip_gbp6s_gg_",
31
+ "__STitle": "___STitle_gbp6s_gg_",
32
+ "__SDotGroup": "___SDotGroup_gbp6s_gg_",
33
+ "__SDot": "___SDot_gbp6s_gg_",
34
+ "__SDotCircle": "___SDotCircle_gbp6s_gg_",
35
+ "_color": "__color_gbp6s_gg_",
36
+ "--color": "--color_gbp6s",
37
+ "__SFooter": "___SFooter_gbp6s_gg_"
38
+ })
39
+ );
40
+ var TooltipDotRenderContext = /* @__PURE__ */ React.createContext({
41
+ index: -1,
42
+ indexKeysCache: /* @__PURE__ */ new Set()
43
+ });
44
+ var TooltipRoot = /* @__PURE__ */ function(_Component) {
45
+ _inherits(TooltipRoot2, _Component);
46
+ var _super = _createSuper(TooltipRoot2);
47
+ function TooltipRoot2() {
48
+ var _this;
49
+ _classCallCheck(this, TooltipRoot2);
50
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
51
+ args[_key] = arguments[_key];
52
+ }
53
+ _this = _super.call.apply(_super, [this].concat(args));
54
+ _defineProperty(_assertThisInitialized(_this), "state", {
55
+ $visible: false,
56
+ anchorProps: {},
57
+ tooltipProps: {}
58
+ });
59
+ _defineProperty(_assertThisInitialized(_this), "renderContext", {
60
+ index: -1,
61
+ indexKeysCache: /* @__PURE__ */ new Set()
62
+ });
63
+ _defineProperty(_assertThisInitialized(_this), "handlerCancel", function() {
64
+ return false;
65
+ });
66
+ _defineProperty(_assertThisInitialized(_this), "virtualElementPosition", {
67
+ x: 0,
68
+ y: 0
69
+ });
70
+ _defineProperty(_assertThisInitialized(_this), "virtualTriggerElement", null);
71
+ _defineProperty(_assertThisInitialized(_this), "unsubscribe", []);
72
+ _defineProperty(_assertThisInitialized(_this), "handleTriggerClick", function(e) {
73
+ var onClick = _this.asProps.onClick;
74
+ var _this$state$tooltipPr = _this.state.tooltipProps, xIndex = _this$state$tooltipPr.xIndex, yIndex = _this$state$tooltipPr.yIndex;
75
+ var index = xIndex !== null && xIndex !== void 0 ? xIndex : yIndex;
76
+ onClick === null || onClick === void 0 ? void 0 : onClick(index, e);
77
+ });
78
+ return _this;
79
+ }
80
+ _createClass(TooltipRoot2, [{
81
+ key: "getTriggerProps",
82
+ value: function getTriggerProps() {
83
+ var _this$asProps = this.asProps, x = _this$asProps.x, y = _this$asProps.y, hideHoverLine = _this$asProps.hideHoverLine;
84
+ return {
85
+ x,
86
+ y,
87
+ hideHoverLine
88
+ };
89
+ }
90
+ }, {
91
+ key: "getPopperProps",
92
+ value: function getPopperProps() {
93
+ if (this.asProps.excludeAnchorProps) {
94
+ return _objectSpread({
95
+ $visible: this.state.$visible
96
+ }, this.state.tooltipProps);
97
+ }
98
+ return _objectSpread(_objectSpread({
99
+ $visible: this.state.$visible
100
+ }, this.state.anchorProps), this.state.tooltipProps);
101
+ }
102
+ }, {
103
+ key: "componentDidMount",
104
+ value: function componentDidMount() {
105
+ var _this2 = this;
106
+ var eventEmitter = this.asProps.eventEmitter;
107
+ this.unsubscribe.push(eventEmitter.subscribe("setTooltipRenderingProps", function(anchorProps, tooltipProps) {
108
+ _this2.setState({
109
+ anchorProps,
110
+ tooltipProps
111
+ });
112
+ }), eventEmitter.subscribe("setTooltipVisible", function(visible) {
113
+ return _this2.setState({
114
+ $visible: visible
115
+ });
116
+ }), eventEmitter.subscribe("setTooltipPosition", function(x, y) {
117
+ var _this2$popper$current;
118
+ _this2.virtualElementPosition.x = x;
119
+ _this2.virtualElementPosition.y = y;
120
+ if (_this2.virtualTriggerElement === null) {
121
+ _this2.virtualTriggerElement = {};
122
+ setTimeout(function() {
123
+ _this2.setPopperTrigger(_this2.virtualTriggerElement);
124
+ }, 0);
125
+ }
126
+ _this2.virtualTriggerElement.getBoundingClientRect = function() {
127
+ var _this2$virtualElement = _this2.virtualElementPosition, x2 = _this2$virtualElement.x, y2 = _this2$virtualElement.y;
128
+ return {
129
+ width: 0,
130
+ height: 0,
131
+ top: y2,
132
+ right: x2,
133
+ bottom: y2,
134
+ left: x2
135
+ };
136
+ };
137
+ (_this2$popper$current = _this2.popper.current) === null || _this2$popper$current === void 0 ? void 0 : _this2$popper$current.update();
138
+ }));
139
+ }
140
+ }, {
141
+ key: "componentWillUnmount",
142
+ value: function componentWillUnmount() {
143
+ this.unsubscribe.forEach(function(unsubscribe) {
144
+ return unsubscribe();
145
+ });
146
+ }
147
+ }, {
148
+ key: "render",
149
+ value: function render() {
150
+ var _ref = this.asProps, _this$asProps$pattern, _this3 = this;
151
+ var _this$asProps2 = this.asProps, Children = _this$asProps2.Children, children = _this$asProps2.children, tag = _this$asProps2.tag, forcedAdvancedMode = _this$asProps2.forcedAdvancedMode;
152
+ _this$asProps2.onClick;
153
+ var other = _objectWithoutProperties(_this$asProps2, _excluded);
154
+ var advancedMode = forcedAdvancedMode || !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);
155
+ this.renderContext.index = -1;
156
+ this.renderContext.indexKeysCache.clear();
157
+ this.renderContext.patterns = (_this$asProps$pattern = this.asProps.patterns) !== null && _this$asProps$pattern !== void 0 ? _this$asProps$pattern : this.state.tooltipProps.patterns;
158
+ return /* @__PURE__ */ React.createElement(TooltipDotRenderContext.Provider, {
159
+ value: this.renderContext
160
+ }, /* @__PURE__ */ React.createElement(Popper, assignProps({
161
+ "visible": this.state.$visible,
162
+ "onFirstUpdate": this.handlerCancel,
163
+ "onOutsideClick": this.handlerCancel,
164
+ "interaction": "none",
165
+ "explicitTriggerSet": true,
166
+ "offset": 8,
167
+ "flip": {
168
+ allowedAutoPlacements: ["left", "right"]
169
+ }
170
+ }, _ref), function(_ref9) {
171
+ var _this3$popper$current;
172
+ var popper = _ref9.popper, setTrigger = _ref9.setTrigger;
173
+ _this3.setPopperTrigger = setTrigger;
174
+ _this3.popper = popper;
175
+ (_this3$popper$current = _this3.popper.current) === null || _this3$popper$current === void 0 ? void 0 : _this3$popper$current.update();
176
+ return advancedMode ? /* @__PURE__ */ React.createElement(Children, null) : /* @__PURE__ */ React.createElement(React.Fragment, null, tag && /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
177
+ tag,
178
+ onClick: _this3.handleTriggerClick
179
+ }), /* @__PURE__ */ React.createElement(Tooltip.Popper, other, children));
180
+ }));
181
+ }
182
+ }]);
183
+ return TooltipRoot2;
184
+ }(Component);
185
+ _defineProperty(TooltipRoot, "displayName", "Tooltip");
186
+ _defineProperty(TooltipRoot, "style", style);
187
+ function PopperPopper(props) {
188
+ var _ref5;
189
+ var STooltip = props.Element, styles = props.styles, $visible = props.$visible, x = props.x, y = props.y;
190
+ var handlerCancel = React.useCallback(function() {
191
+ return false;
192
+ }, []);
193
+ if (!$visible) return null;
194
+ return _ref5 = sstyled$1(styles), /* @__PURE__ */ React.createElement(STooltip, _ref5.cn("STooltip", {
195
+ "render": Popper.Popper,
196
+ "childrenPosition": "inside",
197
+ "onMouseMove": handlerCancel,
198
+ "x": x,
199
+ "y": y
200
+ }));
201
+ }
202
+ PopperPopper.style = style;
203
+ function Title(props) {
204
+ var _ref2 = arguments[0], _ref6;
205
+ var STitle = Box;
206
+ var styles = props.styles;
207
+ return _ref6 = sstyled$1(styles), /* @__PURE__ */ React.createElement(STitle, _ref6.cn("STitle", _objectSpread({}, assignProps({
208
+ "__excludeProps": ["data", "scale"]
209
+ }, _ref2))));
210
+ }
211
+ Title.style = style;
212
+ function Dot(props) {
213
+ var _ref3 = arguments[0], _ref7, _props$patterns;
214
+ var styles = props.styles, color = props.color, Children = props.Children;
215
+ var resolveColor = useColorResolver();
216
+ var renderContext = React.useContext(TooltipDotRenderContext);
217
+ var defaultColor = getChartDefaultColorName(renderContext.index);
218
+ var patterns = (_props$patterns = props.patterns) !== null && _props$patterns !== void 0 ? _props$patterns : renderContext.patterns;
219
+ var key = Children;
220
+ if (!renderContext.indexKeysCache.has(key)) {
221
+ renderContext.indexKeysCache.add(key);
222
+ renderContext.index += 1;
223
+ }
224
+ var SDotGroup = Box;
225
+ var SDot = Box;
226
+ var SDotCircle = Box;
227
+ return _ref7 = sstyled$1(styles), /* @__PURE__ */ React.createElement(SDotGroup, _ref7.cn("SDotGroup", _objectSpread({}, assignProps({
228
+ "__excludeProps": ["data", "scale"]
229
+ }, _ref3))), patterns ? /* @__PURE__ */ React.createElement(SDot, _ref7.cn("SDot", {}), /* @__PURE__ */ React.createElement(PatternSymbol, _ref7.cn("PatternSymbol", {
230
+ "color": resolveColor(color !== null && color !== void 0 ? color : defaultColor),
231
+ "patternKey": color !== null && color !== void 0 ? color : defaultColor
232
+ }))) : /* @__PURE__ */ React.createElement(SDot, _ref7.cn("SDot", {}), /* @__PURE__ */ React.createElement(SDotCircle, _ref7.cn("SDotCircle", {
233
+ "color": resolveColor(color !== null && color !== void 0 ? color : defaultColor)
234
+ }))), /* @__PURE__ */ React.createElement(Children, _ref7.cn("Children", {})));
235
+ }
236
+ Dot.style = style;
237
+ function Footer(props) {
238
+ var _ref4 = arguments[0], _ref8;
239
+ var styles = props.styles;
240
+ var SFooter = Box;
241
+ return _ref8 = sstyled$1(styles), /* @__PURE__ */ React.createElement(SFooter, _ref8.cn("SFooter", _objectSpread({}, assignProps({
242
+ "__excludeProps": ["data", "scale"]
243
+ }, _ref4))));
244
+ }
245
+ Footer.style = style;
246
+ var Tooltip = createElement(TooltipRoot, {
247
+ Trigger: Popper.Trigger,
248
+ Popper: PopperPopper,
249
+ Title,
250
+ Footer,
251
+ Dot
252
+ });
253
+ export {
254
+ Tooltip as default
255
+ };