intergalactic 15.100.0-prerelease.0 → 15.101.0-prerelease.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/components.json +13 -13
  3. package/d3-chart/CompactHorizontalBar.d.ts +88 -0
  4. package/d3-chart/component/Chart/CompactHorizontalBarChart.d.ts +2 -0
  5. package/d3-chart/component/Chart/CompactHorizontalBarChart.type.d.ts +19 -0
  6. package/d3-chart/component/Chart/index.d.ts +1 -0
  7. package/d3-chart/index.d.ts +3 -0
  8. package/d3-chart/lib/cjs/Area.js +11 -11
  9. package/d3-chart/lib/cjs/Axis.js +14 -14
  10. package/d3-chart/lib/cjs/Bar.js +16 -10
  11. package/d3-chart/lib/cjs/Bar.js.map +1 -1
  12. package/d3-chart/lib/cjs/Bubble.js +12 -12
  13. package/d3-chart/lib/cjs/CompactHorizontalBar.js +591 -0
  14. package/d3-chart/lib/cjs/CompactHorizontalBar.js.map +1 -0
  15. package/d3-chart/lib/cjs/Donut.js +9 -9
  16. package/d3-chart/lib/cjs/Dots.js +8 -8
  17. package/d3-chart/lib/cjs/HorizontalBar.js +16 -10
  18. package/d3-chart/lib/cjs/HorizontalBar.js.map +1 -1
  19. package/d3-chart/lib/cjs/Hover.js +3 -3
  20. package/d3-chart/lib/cjs/Line.js +9 -9
  21. package/d3-chart/lib/cjs/Plot.js +3 -3
  22. package/d3-chart/lib/cjs/Radar.js +19 -19
  23. package/d3-chart/lib/cjs/RadialTree.js +11 -11
  24. package/d3-chart/lib/cjs/Reference.js +12 -12
  25. package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
  26. package/d3-chart/lib/cjs/Tooltip.js +9 -9
  27. package/d3-chart/lib/cjs/Venn.js +9 -9
  28. package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
  29. package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
  30. package/d3-chart/lib/cjs/component/Chart/CompactHorizontalBarChart.js +126 -0
  31. package/d3-chart/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -0
  32. package/d3-chart/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js +2 -0
  33. package/d3-chart/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -0
  34. package/d3-chart/lib/cjs/component/Chart/index.js +3 -1
  35. package/d3-chart/lib/cjs/component/Chart/index.js.map +1 -1
  36. package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  37. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  38. package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  39. package/d3-chart/lib/cjs/index.js +7 -0
  40. package/d3-chart/lib/cjs/index.js.map +1 -1
  41. package/d3-chart/lib/cjs/style/bar.shadow.css +36 -0
  42. package/d3-chart/lib/cjs/types/CompactHorizontalBar.d.js +2 -0
  43. package/d3-chart/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -0
  44. package/d3-chart/lib/cjs/types/index.d.js +19 -0
  45. package/d3-chart/lib/cjs/types/index.d.js.map +1 -1
  46. package/d3-chart/lib/es6/Area.js +11 -11
  47. package/d3-chart/lib/es6/Axis.js +14 -14
  48. package/d3-chart/lib/es6/Bar.js +16 -10
  49. package/d3-chart/lib/es6/Bar.js.map +1 -1
  50. package/d3-chart/lib/es6/Bubble.js +12 -12
  51. package/d3-chart/lib/es6/CompactHorizontalBar.js +587 -0
  52. package/d3-chart/lib/es6/CompactHorizontalBar.js.map +1 -0
  53. package/d3-chart/lib/es6/Donut.js +9 -9
  54. package/d3-chart/lib/es6/Dots.js +8 -8
  55. package/d3-chart/lib/es6/HorizontalBar.js +16 -10
  56. package/d3-chart/lib/es6/HorizontalBar.js.map +1 -1
  57. package/d3-chart/lib/es6/Hover.js +3 -3
  58. package/d3-chart/lib/es6/Line.js +9 -9
  59. package/d3-chart/lib/es6/Plot.js +3 -3
  60. package/d3-chart/lib/es6/Radar.js +19 -19
  61. package/d3-chart/lib/es6/RadialTree.js +11 -11
  62. package/d3-chart/lib/es6/Reference.js +12 -12
  63. package/d3-chart/lib/es6/ScatterPlot.js +9 -9
  64. package/d3-chart/lib/es6/Tooltip.js +9 -9
  65. package/d3-chart/lib/es6/Venn.js +9 -9
  66. package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
  67. package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
  68. package/d3-chart/lib/es6/component/Chart/CompactHorizontalBarChart.js +118 -0
  69. package/d3-chart/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -0
  70. package/d3-chart/lib/es6/component/Chart/CompactHorizontalBarChart.type.js +2 -0
  71. package/d3-chart/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -0
  72. package/d3-chart/lib/es6/component/Chart/index.js +3 -1
  73. package/d3-chart/lib/es6/component/Chart/index.js.map +1 -1
  74. package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  75. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  76. package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  77. package/d3-chart/lib/es6/index.js +1 -0
  78. package/d3-chart/lib/es6/index.js.map +1 -1
  79. package/d3-chart/lib/es6/style/bar.shadow.css +36 -0
  80. package/d3-chart/lib/es6/types/CompactHorizontalBar.d.js +2 -0
  81. package/d3-chart/lib/es6/types/CompactHorizontalBar.d.js.map +1 -0
  82. package/d3-chart/lib/es6/types/index.d.js +2 -0
  83. package/d3-chart/lib/es6/types/index.d.js.map +1 -1
  84. package/d3-chart/lib/types/CompactHorizontalBar.d.ts +88 -0
  85. package/d3-chart/lib/types/component/Chart/CompactHorizontalBarChart.d.ts +2 -0
  86. package/d3-chart/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +19 -0
  87. package/d3-chart/lib/types/component/Chart/index.d.ts +1 -0
  88. package/d3-chart/lib/types/index.d.ts +3 -0
  89. package/data-table/lib/cjs/Body.js +3 -3
  90. package/data-table/lib/cjs/DataTable.js +37 -37
  91. package/data-table/lib/es6/Body.js +3 -3
  92. package/data-table/lib/es6/DataTable.js +37 -37
  93. package/dropdown/lib/cjs/Dropdown.js +2 -2
  94. package/dropdown/lib/es6/Dropdown.js +2 -2
  95. package/dropdown-menu/lib/cjs/DropdownMenu.js +21 -21
  96. package/dropdown-menu/lib/es6/DropdownMenu.js +21 -21
  97. package/feature-popover/lib/cjs/FeaturePopover.js +10 -10
  98. package/feature-popover/lib/es6/FeaturePopover.js +10 -10
  99. package/input-tags/lib/cjs/InputTags.js +12 -12
  100. package/input-tags/lib/es6/InputTags.js +12 -12
  101. package/package.json +1 -1
  102. package/popper/lib/cjs/Popper.js +23 -14
  103. package/popper/lib/cjs/Popper.js.map +1 -1
  104. package/popper/lib/es6/Popper.js +23 -14
  105. package/popper/lib/es6/Popper.js.map +1 -1
  106. package/scroll-area/lib/cjs/ScrollArea.js +23 -22
  107. package/scroll-area/lib/cjs/ScrollArea.js.map +1 -1
  108. package/scroll-area/lib/cjs/ScrollBar.js +6 -6
  109. package/scroll-area/lib/es6/ScrollArea.js +23 -22
  110. package/scroll-area/lib/es6/ScrollArea.js.map +1 -1
  111. package/scroll-area/lib/es6/ScrollBar.js +6 -6
  112. package/select/lib/cjs/InputSearch.js +6 -6
  113. package/select/lib/cjs/Select.js +8 -8
  114. package/select/lib/es6/InputSearch.js +6 -6
  115. package/select/lib/es6/Select.js +8 -8
  116. package/skeleton/index.d.ts +2 -0
  117. package/skeleton/lib/cjs/Charts/Area.js +9 -9
  118. package/skeleton/lib/cjs/Charts/Bar.js +9 -9
  119. package/skeleton/lib/cjs/Charts/Bubble.js +9 -9
  120. package/skeleton/lib/cjs/Charts/CompactHorizontalBar.js +39 -0
  121. package/skeleton/lib/cjs/Charts/CompactHorizontalBar.js.map +1 -0
  122. package/skeleton/lib/cjs/Charts/Donut.js +9 -9
  123. package/skeleton/lib/cjs/Charts/Histogram.js +9 -9
  124. package/skeleton/lib/cjs/Charts/Line.js +9 -9
  125. package/skeleton/lib/cjs/Charts/RadialTree.js +9 -9
  126. package/skeleton/lib/cjs/Charts/ScatterPlot.js +9 -9
  127. package/skeleton/lib/cjs/Charts/Venn.js +9 -9
  128. package/skeleton/lib/cjs/Charts/index.js +7 -0
  129. package/skeleton/lib/cjs/Charts/index.js.map +1 -1
  130. package/skeleton/lib/cjs/Skeleton.js +8 -8
  131. package/skeleton/lib/cjs/index.d.js.map +1 -1
  132. package/skeleton/lib/cjs/svg/compact-horizontal-bar-chart.svg +8 -0
  133. package/skeleton/lib/es6/Charts/Area.js +9 -9
  134. package/skeleton/lib/es6/Charts/Bar.js +9 -9
  135. package/skeleton/lib/es6/Charts/Bubble.js +9 -9
  136. package/skeleton/lib/es6/Charts/CompactHorizontalBar.js +31 -0
  137. package/skeleton/lib/es6/Charts/CompactHorizontalBar.js.map +1 -0
  138. package/skeleton/lib/es6/Charts/Donut.js +9 -9
  139. package/skeleton/lib/es6/Charts/Histogram.js +9 -9
  140. package/skeleton/lib/es6/Charts/Line.js +9 -9
  141. package/skeleton/lib/es6/Charts/RadialTree.js +9 -9
  142. package/skeleton/lib/es6/Charts/ScatterPlot.js +9 -9
  143. package/skeleton/lib/es6/Charts/Venn.js +9 -9
  144. package/skeleton/lib/es6/Charts/index.js +1 -0
  145. package/skeleton/lib/es6/Charts/index.js.map +1 -1
  146. package/skeleton/lib/es6/Skeleton.js +8 -8
  147. package/skeleton/lib/es6/index.d.js.map +1 -1
  148. package/skeleton/lib/es6/svg/compact-horizontal-bar-chart.svg +8 -0
  149. package/skeleton/lib/types/index.d.ts +2 -0
  150. package/slider/lib/cjs/Slider.js +9 -8
  151. package/slider/lib/cjs/Slider.js.map +1 -1
  152. package/slider/lib/es6/Slider.js +9 -8
  153. package/slider/lib/es6/Slider.js.map +1 -1
  154. package/time-picker/lib/cjs/TimePicker.js +12 -12
  155. package/time-picker/lib/es6/TimePicker.js +12 -12
  156. package/tooltip/lib/cjs/Tooltip.js +11 -11
  157. package/tooltip/lib/es6/Tooltip.js +11 -11
@@ -0,0 +1,587 @@
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
+ import _createClass from "@babel/runtime/helpers/createClass";
5
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
6
+ import _inherits from "@babel/runtime/helpers/inherits";
7
+ import _createSuper from "@babel/runtime/helpers/createSuper";
8
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
+ import { sstyled as _sstyled } from 'intergalactic/utils/lib/core/index';
10
+ import { assignProps as _assignProps4 } from 'intergalactic/core';
11
+ import { assignProps as _assignProps3 } from 'intergalactic/core';
12
+ import { assignProps as _assignProps2 } from 'intergalactic/core';
13
+ import { assignProps as _assignProps } from 'intergalactic/core';
14
+ import React from 'react';
15
+ import { Component, Root, sstyled } from 'intergalactic/core';
16
+ import uniqueIDEnhancement from 'intergalactic/utils/lib/uniqueID';
17
+ import createElement from './createElement';
18
+ import AnimatedClipPath from './AnimatedClipPath';
19
+ import { roundedPath, scaleToBand } from './utils';
20
+ import { PatternFill } from './Pattern';
21
+ import trottle from 'intergalactic/utils/lib/rafTrottle';
22
+ import Tooltip from './Tooltip';
23
+ import { eventToPoint } from './utils';
24
+ import { callAllEventHandlers } from 'intergalactic/utils/lib/assignProps';
25
+ /*__reshadow-styles__:"./style/bar.shadow.css"*/
26
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_1g3k3_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1g3k3);transition-timing-function:ease-in-out}.___SBar_1g3k3_gg_.__color_1g3k3_gg_{fill:var(--color_1g3k3)}.___SBar_1g3k3_gg_.__pattern_1g3k3_gg_.__color_1g3k3_gg_{fill:var(--pattern_1g3k3);stroke:var(--color_1g3k3);stroke-width:1px}.___SBar_1g3k3_gg_.__hide_1g3k3_gg_{display:none}.___SBar_1g3k3_gg_.__transparent_1g3k3_gg_{opacity:.3}.___SBackground_1g3k3_gg_.__onClick_1g3k3_gg_,.___SBar_1g3k3_gg_.__onClick_1g3k3_gg_{cursor:pointer}.___SBackground_1g3k3_gg_{fill:var(--intergalactic-chart-grid-bar-chart-base-bg, #e0e1e9)}.___SBarAnnotation_1g3k3_gg_{display:flex;justify-content:space-between}.___SBarLabel_1g3k3_gg_{color:var(--intergalactic-text-primary, #191b23);margin-right:auto}.___SBarLabel_1g3k3_gg_,.___SBarPercent_1g3k3_gg_,.___SBarValue_1g3k3_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SBarPercent_1g3k3_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SBarValue_1g3k3_gg_{min-width:52px;display:flex;justify-content:flex-end;color:var(--intergalactic-text-primary, #191b23);text-align:right}.___SCompactHorizontalBarHoverRect_1g3k3_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "1g3k3_gg_") /*__reshadow_css_end__*/, {
27
+ "__SBar": "___SBar_1g3k3_gg_",
28
+ "--duration": "--duration_1g3k3",
29
+ "_color": "__color_1g3k3_gg_",
30
+ "--color": "--color_1g3k3",
31
+ "_pattern": "__pattern_1g3k3_gg_",
32
+ "--pattern": "--pattern_1g3k3",
33
+ "_hide": "__hide_1g3k3_gg_",
34
+ "_transparent": "__transparent_1g3k3_gg_",
35
+ "_onClick": "__onClick_1g3k3_gg_",
36
+ "__SBackground": "___SBackground_1g3k3_gg_",
37
+ "__SBarAnnotation": "___SBarAnnotation_1g3k3_gg_",
38
+ "__SBarLabel": "___SBarLabel_1g3k3_gg_",
39
+ "__SBarPercent": "___SBarPercent_1g3k3_gg_",
40
+ "__SBarValue": "___SBarValue_1g3k3_gg_",
41
+ "__SCompactHorizontalBarHoverRect": "___SCompactHorizontalBarHoverRect_1g3k3_gg_"
42
+ });
43
+ import canUseDOM from 'intergalactic/utils/lib/canUseDOM';
44
+ import { Box } from 'intergalactic/flex-box';
45
+ export var MIN_WIDTH = 4;
46
+ var barHeight = 20;
47
+ var hoverOffset = 6;
48
+ var CompactHorizontalBarRoot = /*#__PURE__*/function (_Component) {
49
+ _inherits(CompactHorizontalBarRoot, _Component);
50
+ var _super = _createSuper(CompactHorizontalBarRoot);
51
+ function CompactHorizontalBarRoot() {
52
+ var _this;
53
+ _classCallCheck(this, CompactHorizontalBarRoot);
54
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
55
+ args[_key] = arguments[_key];
56
+ }
57
+ _this = _super.call.apply(_super, [this].concat(args));
58
+ _defineProperty(_assertThisInitialized(_this), "percentFormatter", null);
59
+ _defineProperty(_assertThisInitialized(_this), "percentFormatterLocale", null);
60
+ _defineProperty(_assertThisInitialized(_this), "valueFormatter", null);
61
+ _defineProperty(_assertThisInitialized(_this), "valueFormatterLocale", null);
62
+ return _this;
63
+ }
64
+ _createClass(CompactHorizontalBarRoot, [{
65
+ key: "getBarProps",
66
+ value: function getBarProps(_props, index) {
67
+ return {
68
+ index: index
69
+ };
70
+ }
71
+ }, {
72
+ key: "getBarBackgroundProps",
73
+ value: function getBarBackgroundProps(_props, index) {
74
+ var _this$asProps = this.asProps,
75
+ data = _this$asProps.data,
76
+ scale = _this$asProps.scale;
77
+ var bar = this.computeBarData(data[index], index);
78
+ return {
79
+ scale: scale,
80
+ index: index,
81
+ x: bar.x,
82
+ y: bar.y + bar.height - barHeight - hoverOffset,
83
+ height: barHeight,
84
+ width: bar.fullWidth
85
+ };
86
+ }
87
+ }, {
88
+ key: "getBarFillProps",
89
+ value: function getBarFillProps(_props, index) {
90
+ var _this$asProps2 = this.asProps,
91
+ data = _this$asProps2.data,
92
+ uid = _this$asProps2.uid,
93
+ patterns = _this$asProps2.patterns,
94
+ color = _this$asProps2.color,
95
+ transparent = _this$asProps2.transparent,
96
+ hide = _this$asProps2.hide,
97
+ scale = _this$asProps2.scale;
98
+ var bar = this.computeBarData(data[index], index);
99
+ return {
100
+ x: bar.x,
101
+ y: bar.y + bar.height - barHeight - hoverOffset,
102
+ height: barHeight,
103
+ width: bar.width,
104
+ i: index,
105
+ uid: uid,
106
+ resolveColor: this.asProps.resolveColor,
107
+ patterns: patterns,
108
+ color: color,
109
+ transparent: transparent,
110
+ hide: hide,
111
+ scale: scale
112
+ };
113
+ }
114
+ }, {
115
+ key: "getAnnotationProps",
116
+ value: function getAnnotationProps(_props, index) {
117
+ var _this$asProps3 = this.asProps,
118
+ data = _this$asProps3.data,
119
+ size = _this$asProps3.size;
120
+ var bar = this.computeBarData(data[index], index);
121
+ return {
122
+ y: bar.y,
123
+ height: barHeight * 2,
124
+ width: size[0]
125
+ };
126
+ }
127
+ }, {
128
+ key: "getLabelProps",
129
+ value: function getLabelProps(_props, index) {
130
+ var _this$asProps4 = this.asProps,
131
+ data = _this$asProps4.data,
132
+ y = _this$asProps4.y;
133
+ var label = data[index][y];
134
+ return {
135
+ children: label
136
+ };
137
+ }
138
+ }, {
139
+ key: "getPercentFormatter",
140
+ value: function getPercentFormatter() {
141
+ if (!this.percentFormatter || this.percentFormatterLocale !== this.asProps.locale) {
142
+ this.percentFormatter = new Intl.NumberFormat(this.asProps.locale, {
143
+ style: 'percent'
144
+ });
145
+ this.percentFormatterLocale = this.asProps.locale;
146
+ }
147
+ return this.percentFormatter;
148
+ }
149
+ }, {
150
+ key: "getValueFormatter",
151
+ value: function getValueFormatter() {
152
+ if (!this.valueFormatter || this.valueFormatterLocale !== this.asProps.locale) {
153
+ this.valueFormatter = new Intl.NumberFormat(this.asProps.locale);
154
+ this.valueFormatterLocale = this.asProps.locale;
155
+ }
156
+ return this.valueFormatter;
157
+ }
158
+ }, {
159
+ key: "getPercentProps",
160
+ value: function getPercentProps(_props, index) {
161
+ var _this$asProps5 = this.asProps,
162
+ data = _this$asProps5.data,
163
+ x = _this$asProps5.x,
164
+ scale = _this$asProps5.scale;
165
+ var value = data[index][x];
166
+ var domain = scale[0].domain();
167
+ var percent = value / domain[1];
168
+ var formatter = this.getPercentFormatter();
169
+ var formatted = formatter.format(percent);
170
+ return {
171
+ children: formatted,
172
+ formatted: formatted,
173
+ percent: percent
174
+ };
175
+ }
176
+ }, {
177
+ key: "getValueProps",
178
+ value: function getValueProps(_props, index) {
179
+ var _this$asProps6 = this.asProps,
180
+ data = _this$asProps6.data,
181
+ x = _this$asProps6.x;
182
+ var value = data[index][x];
183
+ var formatter = this.getValueFormatter();
184
+ var formatted = formatter.format(value);
185
+ return {
186
+ children: formatted,
187
+ formatted: formatted,
188
+ value: value
189
+ };
190
+ }
191
+ }, {
192
+ key: "getHoverProps",
193
+ value: function getHoverProps(_props, index) {
194
+ var _this2 = this;
195
+ var data = this.asProps.data;
196
+ return {
197
+ data: data,
198
+ getBarData: function getBarData(index) {
199
+ return _this2.computeBarData(data[index], index);
200
+ },
201
+ render: index === 0
202
+ };
203
+ }
204
+ }, {
205
+ key: "getTooltipProps",
206
+ value: function getTooltipProps(_props, index) {
207
+ return {
208
+ render: index === 0
209
+ };
210
+ }
211
+ }, {
212
+ key: "computeBarData",
213
+ value: function computeBarData(d) {
214
+ var _this$asProps7 = this.asProps,
215
+ x = _this$asProps7.x,
216
+ y = _this$asProps7.y,
217
+ scale = _this$asProps7.scale,
218
+ offsetProps = _this$asProps7.offset,
219
+ wMin = _this$asProps7.wMin,
220
+ heightProps = _this$asProps7.height,
221
+ _this$asProps7$maxBar = _this$asProps7.maxBarSize,
222
+ maxBarSize = _this$asProps7$maxBar === void 0 ? Infinity : _this$asProps7$maxBar,
223
+ size = _this$asProps7.size;
224
+ var offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;
225
+ var _scale = _slicedToArray(scale, 2),
226
+ xScale = _scale[0],
227
+ yScale = _scale[1];
228
+ var absWidth = xScale(d[x]);
229
+ var bandHeight = heightProps || scaleToBand(yScale).bandwidth();
230
+ var height = Math.min(bandHeight, maxBarSize);
231
+ var width = absWidth === 0 ? 0 : Math.max(absWidth, wMin);
232
+ var barY = yScale(d[y]) + bandHeight / 2 - height / 2 + offset[1];
233
+ return {
234
+ x: 0,
235
+ y: barY,
236
+ width: width,
237
+ fullWidth: size[0],
238
+ height: height
239
+ };
240
+ }
241
+ }, {
242
+ key: "renderBar",
243
+ value: function renderBar(d, i) {
244
+ var _ref5;
245
+ var SCompactHorizontalBarGroup = this.Element;
246
+ var _this$asProps8 = this.asProps,
247
+ styles = _this$asProps8.styles,
248
+ groupKey = _this$asProps8.groupKey;
249
+ var _this$computeBarData = this.computeBarData(d, i),
250
+ x = _this$computeBarData.x,
251
+ y = _this$computeBarData.y;
252
+ this.asProps.dataHintsHandler.describeValueEntity("".concat(i, ".").concat(x), groupKey !== null && groupKey !== void 0 ? groupKey : d[y]);
253
+ return /*#__PURE__*/React.createElement(React.Fragment, {
254
+ key: "horizontal-bar-".concat(i)
255
+ }, (_ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SCompactHorizontalBarGroup, _ref5.cn("SCompactHorizontalBarGroup", {
256
+ "render": 'g'
257
+ }))));
258
+ }
259
+ }, {
260
+ key: "renderBars",
261
+ value: function renderBars() {
262
+ var data = this.asProps.data;
263
+ return data.map(this.renderBar.bind(this));
264
+ }
265
+ }, {
266
+ key: "render",
267
+ value: function render() {
268
+ var _this$asProps9 = this.asProps,
269
+ uid = _this$asProps9.uid,
270
+ size = _this$asProps9.size,
271
+ duration = _this$asProps9.duration;
272
+ return /*#__PURE__*/React.createElement(React.Fragment, null, this.renderBars(), duration && /*#__PURE__*/React.createElement(AnimatedClipPath, {
273
+ "aria-hidden": true,
274
+ duration: duration,
275
+ id: uid,
276
+ x: "0",
277
+ y: "0",
278
+ width: 0,
279
+ height: size[1]
280
+ }));
281
+ }
282
+ }]);
283
+ return CompactHorizontalBarRoot;
284
+ }(Component);
285
+ _defineProperty(CompactHorizontalBarRoot, "displayName", 'CompactHorizontalBar');
286
+ _defineProperty(CompactHorizontalBarRoot, "enhance", [uniqueIDEnhancement()]);
287
+ _defineProperty(CompactHorizontalBarRoot, "style", style);
288
+ _defineProperty(CompactHorizontalBarRoot, "defaultProps", {
289
+ offset: [0, 0],
290
+ duration: 500,
291
+ wMin: MIN_WIDTH,
292
+ locale: 'en',
293
+ color: 'chart-palette-order-1'
294
+ });
295
+ function Annotation(props) {
296
+ var _ref6;
297
+ var Children = props.Children,
298
+ y = props.y,
299
+ height = props.height,
300
+ width = props.width,
301
+ styles = props.styles;
302
+ var SBarAnnotation = 'div';
303
+ return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement("foreignObject", _ref6.cn("foreignObject", {
304
+ "x": '0',
305
+ "y": y - barHeight,
306
+ "height": height,
307
+ "width": width
308
+ }), /*#__PURE__*/React.createElement(SBarAnnotation, _ref6.cn("SBarAnnotation", {}), /*#__PURE__*/React.createElement(Children, _ref6.cn("Children", {}))));
309
+ }
310
+ var excludeProps = ['data', 'scale', 'value', 'offset'];
311
+ function Label(props) {
312
+ var _ref = arguments[0],
313
+ _ref7;
314
+ var SBarLabel = Box;
315
+ var styles = props.styles,
316
+ Children = props.Children;
317
+ return _ref7 = sstyled(styles), /*#__PURE__*/React.createElement(SBarLabel, _ref7.cn("SBarLabel", _objectSpread({}, _assignProps({
318
+ "__excludeProps": excludeProps
319
+ }, _ref))), /*#__PURE__*/React.createElement(Children, _ref7.cn("Children", {})));
320
+ }
321
+ function Percent(props) {
322
+ var _ref2 = arguments[0],
323
+ _ref8;
324
+ var SBarPercent = Box;
325
+ var styles = props.styles,
326
+ Children = props.Children;
327
+ return _ref8 = sstyled(styles), /*#__PURE__*/React.createElement(SBarPercent, _ref8.cn("SBarPercent", _objectSpread({}, _assignProps2({
328
+ "__excludeProps": excludeProps
329
+ }, _ref2))), /*#__PURE__*/React.createElement(Children, _ref8.cn("Children", {})));
330
+ }
331
+ function Value(props) {
332
+ var _ref3 = arguments[0],
333
+ _ref9;
334
+ var SBarValue = Box;
335
+ var styles = props.styles,
336
+ Children = props.Children;
337
+ return _ref9 = sstyled(styles), /*#__PURE__*/React.createElement(SBarValue, _ref9.cn("SBarValue", _objectSpread({}, _assignProps3({
338
+ "__excludeProps": excludeProps
339
+ }, _ref3))), /*#__PURE__*/React.createElement(Children, _ref9.cn("Children", {})));
340
+ }
341
+ var BarContext = /*#__PURE__*/React.createContext({});
342
+ function Bar(props) {
343
+ var Children = props.Children,
344
+ index = props.index,
345
+ onClick = props.onClick,
346
+ transparent = props.transparent,
347
+ hide = props.hide;
348
+ var onClickHandler = React.useCallback(function (event) {
349
+ onClick === null || onClick === void 0 ? void 0 : onClick(index, event);
350
+ }, [onClick, index]);
351
+ var contextValue = React.useMemo(function () {
352
+ return {
353
+ onClick: onClickHandler,
354
+ transparent: transparent,
355
+ hide: hide
356
+ };
357
+ }, [onClickHandler, transparent, hide]);
358
+ return /*#__PURE__*/React.createElement(BarContext.Provider, {
359
+ value: contextValue
360
+ }, /*#__PURE__*/React.createElement(Children, null));
361
+ }
362
+ function BarFill(props) {
363
+ var _ref10;
364
+ var SBar = props.Element,
365
+ styles = props.styles,
366
+ color = props.color,
367
+ x = props.x,
368
+ y = props.y,
369
+ width = props.width,
370
+ height = props.height,
371
+ uid = props.uid,
372
+ duration = props.duration,
373
+ resolveColor = props.resolveColor,
374
+ patterns = props.patterns,
375
+ i = props.i,
376
+ scale = props.scale;
377
+ var _scale2 = _slicedToArray(scale, 1),
378
+ xScale = _scale2[0];
379
+ var xRange = xScale.range();
380
+ var backgroundWidth = xRange[1] - xRange[0];
381
+ var radius = 0; // left it here in case we will change our mind and return to rounded bars
382
+ var pathD = React.useMemo(function () {
383
+ if (backgroundWidth - radius > width) {
384
+ return roundedPath(x, y, width, height, radius);
385
+ }
386
+ return roundedPath(x, y, width, height, radius, false, true, false, true);
387
+ }, [x, y, height, width, radius]);
388
+ var barProps = React.useContext(BarContext);
389
+ return /*#__PURE__*/React.createElement(React.Fragment, null, (_ref10 = sstyled(styles), /*#__PURE__*/React.createElement(SBar, _ref10.cn("SBar", {
390
+ "aria-hidden": true,
391
+ "render": 'path',
392
+ "d": pathD,
393
+ "clipPath": "url(#".concat(uid, ")"),
394
+ "__excludeProps": ['data', 'scale', 'value', 'offset'],
395
+ "childrenPosition": 'above',
396
+ "index": i,
397
+ "color": resolveColor(color),
398
+ "pattern": patterns ? "url(#".concat(uid, "-").concat(i, "-pattern)") : undefined,
399
+ "x": x,
400
+ "y": y,
401
+ "width": width,
402
+ "height": height,
403
+ "use:duration": "".concat(duration, "ms"),
404
+ "onClick": callAllEventHandlers(props.onClick, barProps.onClick),
405
+ "transparent": barProps.transparent || props.transparent,
406
+ "hide": barProps.hide || props.hide
407
+ }))), patterns && /*#__PURE__*/React.createElement(PatternFill, _ref10.cn("PatternFill", {
408
+ "id": "".concat(uid, "-").concat(i, "-pattern"),
409
+ "patternKey": color,
410
+ "color": resolveColor(color),
411
+ "patterns": patterns
412
+ })));
413
+ }
414
+ function BarBackground(props) {
415
+ var _ref11;
416
+ var SBackground = props.Element,
417
+ styles = props.styles,
418
+ scale = props.scale,
419
+ y = props.y,
420
+ x = props.x,
421
+ height = props.height;
422
+ var _scale3 = _slicedToArray(scale, 1),
423
+ xScale = _scale3[0];
424
+ var xRange = xScale.range();
425
+ var width = xRange[1] - xRange[0];
426
+ var radius = 0; // left it here in case we will change our mind and return to rounded bars
427
+ var pathD = React.useMemo(function () {
428
+ return roundedPath(x, y, width, height, radius, false, true, false, true);
429
+ }, [x, y, height, width, radius]);
430
+ var barProps = React.useContext(BarContext);
431
+ return _ref11 = sstyled(styles), /*#__PURE__*/React.createElement(SBackground, _ref11.cn("SBackground", {
432
+ "aria-hidden": true,
433
+ "render": 'path',
434
+ "d": pathD,
435
+ "childrenPosition": 'above',
436
+ "width": xRange[1] - xRange[0],
437
+ "height": height,
438
+ "x": x,
439
+ "y": y,
440
+ "transparent": barProps.transparent,
441
+ "onClick": callAllEventHandlers(props.onClick, barProps.onClick)
442
+ }));
443
+ }
444
+ var Hover = /*#__PURE__*/function (_Component2) {
445
+ _inherits(Hover, _Component2);
446
+ var _super2 = _createSuper(Hover);
447
+ function Hover() {
448
+ var _this3;
449
+ _classCallCheck(this, Hover);
450
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
451
+ args[_key2] = arguments[_key2];
452
+ }
453
+ _this3 = _super2.call.apply(_super2, [this].concat(args));
454
+ _defineProperty(_assertThisInitialized(_this3), "state", {
455
+ index: null
456
+ });
457
+ _defineProperty(_assertThisInitialized(_this3), "virtualElement", canUseDOM() ? document.createElement('div') : {});
458
+ _defineProperty(_assertThisInitialized(_this3), "unsubscribeMouseMoveRoot", null);
459
+ _defineProperty(_assertThisInitialized(_this3), "unsubscribeMouseLeaveRoot", null);
460
+ _defineProperty(_assertThisInitialized(_this3), "handlerMouseMoveRoot", trottle(function (e) {
461
+ var _this3$asProps = _this3.asProps,
462
+ eventEmitter = _this3$asProps.eventEmitter,
463
+ rootRef = _this3$asProps.rootRef,
464
+ patterns = _this3$asProps.patterns;
465
+ var point = eventToPoint(e, rootRef.current);
466
+ var clientX = e.clientX,
467
+ clientY = e.clientY;
468
+ var index = _this3.getIndex(point);
469
+ _this3.setState({
470
+ index: index
471
+ }, function () {
472
+ eventEmitter.emit('setTooltipPosition', clientX, clientY);
473
+ eventEmitter.emit('setTooltipRenderingProps', {}, {
474
+ index: index,
475
+ patterns: patterns
476
+ });
477
+ eventEmitter.emit('setTooltipVisible', index !== null);
478
+ });
479
+ }));
480
+ _defineProperty(_assertThisInitialized(_this3), "handlerMouseLeaveRoot", trottle(function () {
481
+ _this3.setState({
482
+ index: null
483
+ }, function () {
484
+ _this3.asProps.eventEmitter.emit('setTooltipVisible', false);
485
+ });
486
+ }));
487
+ return _this3;
488
+ }
489
+ _createClass(Hover, [{
490
+ key: "generateGetBoundingClientRect",
491
+ value: function generateGetBoundingClientRect() {
492
+ var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
493
+ var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
494
+ return function () {
495
+ return {
496
+ width: 0,
497
+ height: 0,
498
+ top: y,
499
+ right: x,
500
+ bottom: y,
501
+ left: x
502
+ };
503
+ };
504
+ }
505
+ }, {
506
+ key: "getIndex",
507
+ value: function getIndex(point) {
508
+ var _this$asProps10 = this.asProps,
509
+ data = _this$asProps10.data,
510
+ getBarData = _this$asProps10.getBarData;
511
+ for (var _i = 0; _i < data.length; _i++) {
512
+ var bar = getBarData(_i);
513
+ if (point[0] >= bar.x && point[0] <= bar.x + bar.fullWidth && point[1] >= bar.y && point[1] <= bar.y + bar.height) {
514
+ return _i;
515
+ }
516
+ }
517
+ return null;
518
+ }
519
+ }, {
520
+ key: "componentDidMount",
521
+ value: function componentDidMount() {
522
+ var _this4 = this;
523
+ var eventEmitter = this.asProps.eventEmitter;
524
+ this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveRoot', function (e) {
525
+ e.persist();
526
+ _this4.handlerMouseMoveRoot(e);
527
+ });
528
+ this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe('onMouseLeaveRoot', this.handlerMouseLeaveRoot);
529
+ }
530
+ }, {
531
+ key: "componentWillUnmount",
532
+ value: function componentWillUnmount() {
533
+ if (this.unsubscribeMouseMoveRoot) {
534
+ this.unsubscribeMouseMoveRoot();
535
+ }
536
+ if (this.unsubscribeMouseLeaveRoot) {
537
+ this.unsubscribeMouseLeaveRoot();
538
+ }
539
+ }
540
+ }, {
541
+ key: "render",
542
+ value: function render() {
543
+ var _ref12;
544
+ var _this$asProps11 = this.asProps,
545
+ styles = _this$asProps11.styles,
546
+ getBarData = _this$asProps11.getBarData,
547
+ render = _this$asProps11.render;
548
+ if (!render) return null;
549
+ var index = this.state.index;
550
+ var SCompactHorizontalBarHoverRect = this.Element;
551
+ if (index === null) return null;
552
+ var bar = getBarData(index);
553
+ return _ref12 = sstyled(styles), /*#__PURE__*/React.createElement(SCompactHorizontalBarHoverRect, _ref12.cn("SCompactHorizontalBarHoverRect", {
554
+ "render": 'rect',
555
+ "x": bar.x,
556
+ "y": bar.y + bar.height - barHeight - hoverOffset * 2,
557
+ "width": bar.fullWidth,
558
+ "height": barHeight + hoverOffset * 2
559
+ }));
560
+ }
561
+ }]);
562
+ return Hover;
563
+ }(Component);
564
+ var CompactHorizontalBarTooltip = function CompactHorizontalBarTooltip(props) {
565
+ var _ref4 = arguments[0],
566
+ _ref13;
567
+ if (!props.render) return null;
568
+ var SCompactHorizontalBarRadarTooltip = Tooltip;
569
+ return _ref13 = sstyled(props.styles), /*#__PURE__*/React.createElement(SCompactHorizontalBarRadarTooltip, _ref13.cn("SCompactHorizontalBarRadarTooltip", _objectSpread({}, _assignProps4({
570
+ "tag": CompactHorizontalBar.Hover,
571
+ "excludeAnchorProps": true
572
+ }, _ref4))));
573
+ };
574
+ var CompactHorizontalBar = createElement(CompactHorizontalBarRoot, {
575
+ Annotation: Annotation,
576
+ Label: Label,
577
+ Percent: Percent,
578
+ Value: Value,
579
+ Bar: [Bar, {
580
+ Fill: BarFill,
581
+ Background: BarBackground
582
+ }],
583
+ Hover: Hover,
584
+ Tooltip: [CompactHorizontalBarTooltip, Tooltip._______childrenComponents]
585
+ });
586
+ export default CompactHorizontalBar;
587
+ //# sourceMappingURL=CompactHorizontalBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactHorizontalBar.js","names":["React","Component","Root","sstyled","uniqueIDEnhancement","createElement","AnimatedClipPath","roundedPath","scaleToBand","PatternFill","trottle","Tooltip","eventToPoint","callAllEventHandlers","style","_sstyled","insert","canUseDOM","Box","MIN_WIDTH","barHeight","hoverOffset","CompactHorizontalBarRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","value","getBarProps","_props","index","getBarBackgroundProps","_this$asProps","asProps","data","scale","bar","computeBarData","x","y","height","width","fullWidth","getBarFillProps","_this$asProps2","uid","patterns","color","transparent","hide","i","resolveColor","getAnnotationProps","_this$asProps3","size","getLabelProps","_this$asProps4","label","children","getPercentFormatter","percentFormatter","percentFormatterLocale","locale","Intl","NumberFormat","getValueFormatter","valueFormatter","valueFormatterLocale","getPercentProps","_this$asProps5","domain","percent","formatter","formatted","format","getValueProps","_this$asProps6","getHoverProps","_this2","getBarData","render","getTooltipProps","d","_this$asProps7","offsetProps","offset","wMin","heightProps","_this$asProps7$maxBar","maxBarSize","Infinity","_scale","_slicedToArray","xScale","yScale","absWidth","bandHeight","bandwidth","Math","min","max","barY","renderBar","_ref5","SCompactHorizontalBarGroup","Element","_this$asProps8","styles","groupKey","_this$computeBarData","dataHintsHandler","describeValueEntity","Fragment","cn","renderBars","map","bind","_this$asProps9","duration","id","Annotation","props","_ref6","Children","SBarAnnotation","excludeProps","Label","_ref","arguments[0]","_ref7","SBarLabel","_objectSpread","_assignProps","Percent","_ref2","_ref8","SBarPercent","_assignProps2","Value","_ref3","_ref9","SBarValue","_assignProps3","BarContext","createContext","Bar","onClick","onClickHandler","useCallback","event","contextValue","useMemo","Provider","BarFill","_ref10","SBar","_scale2","xRange","range","backgroundWidth","radius","pathD","barProps","useContext","undefined","BarBackground","_ref11","SBackground","_scale3","Hover","_Component2","_super2","_this3","_len2","_key2","document","e","_this3$asProps","eventEmitter","rootRef","point","current","clientX","clientY","getIndex","setState","emit","generateGetBoundingClientRect","top","right","bottom","left","_this$asProps10","componentDidMount","_this4","unsubscribeMouseMoveRoot","subscribe","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","componentWillUnmount","_ref12","_this$asProps11","state","SCompactHorizontalBarHoverRect","CompactHorizontalBarTooltip","_ref4","_ref13","SCompactHorizontalBarRadarTooltip","_assignProps4","CompactHorizontalBar","Fill","Background","_______childrenComponents"],"sources":["../../src/CompactHorizontalBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport AnimatedClipPath from './AnimatedClipPath';\nimport { roundedPath, scaleToBand } from './utils';\nimport { PatternFill } from './Pattern';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport Tooltip from './Tooltip';\nimport { eventToPoint } from './utils';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nimport style from './style/bar.shadow.css';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { Box } from '@semcore/flex-box';\n\nexport const MIN_WIDTH = 4;\n\nconst barHeight = 20;\nconst hoverOffset = 6;\n\nclass CompactHorizontalBarRoot extends Component {\n static displayName = 'CompactHorizontalBar';\n static enhance = [uniqueIDEnhancement()];\n static style = style;\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n wMin: MIN_WIDTH,\n locale: 'en',\n color: 'chart-palette-order-1',\n };\n\n getBarProps(_props, index) {\n return {\n index,\n };\n }\n getBarBackgroundProps(_props, index) {\n const { data, scale } = this.asProps;\n const bar = this.computeBarData(data[index], index);\n\n return {\n scale,\n index,\n x: bar.x,\n y: bar.y + bar.height - barHeight - hoverOffset,\n height: barHeight,\n width: bar.fullWidth,\n };\n }\n\n getBarFillProps(_props, index) {\n const { data, uid, patterns, color, transparent, hide, scale } = this.asProps;\n const bar = this.computeBarData(data[index], index);\n return {\n x: bar.x,\n y: bar.y + bar.height - barHeight - hoverOffset,\n height: barHeight,\n width: bar.width,\n i: index,\n uid,\n resolveColor: this.asProps.resolveColor,\n patterns,\n color,\n transparent,\n hide,\n scale,\n };\n }\n getAnnotationProps(_props, index) {\n const { data, size } = this.asProps;\n const bar = this.computeBarData(data[index], index);\n return {\n y: bar.y,\n height: barHeight * 2,\n width: size[0],\n };\n }\n\n getLabelProps(_props, index) {\n const { data, y } = this.asProps;\n const label = data[index][y];\n\n return {\n children: label,\n };\n }\n\n percentFormatter = null;\n percentFormatterLocale = null;\n getPercentFormatter() {\n if (!this.percentFormatter || this.percentFormatterLocale !== this.asProps.locale) {\n this.percentFormatter = new Intl.NumberFormat(this.asProps.locale, { style: 'percent' });\n this.percentFormatterLocale = this.asProps.locale;\n }\n return this.percentFormatter;\n }\n\n valueFormatter = null;\n valueFormatterLocale = null;\n getValueFormatter() {\n if (!this.valueFormatter || this.valueFormatterLocale !== this.asProps.locale) {\n this.valueFormatter = new Intl.NumberFormat(this.asProps.locale);\n this.valueFormatterLocale = this.asProps.locale;\n }\n return this.valueFormatter;\n }\n\n getPercentProps(_props, index) {\n const { data, x, scale } = this.asProps;\n const value = data[index][x];\n const domain = scale[0].domain();\n const percent = value / domain[1];\n const formatter = this.getPercentFormatter();\n const formatted = formatter.format(percent);\n\n return { children: formatted, formatted, percent };\n }\n getValueProps(_props, index) {\n const { data, x } = this.asProps;\n const value = data[index][x];\n const formatter = this.getValueFormatter();\n const formatted = formatter.format(value);\n\n return { children: formatted, formatted, value };\n }\n\n getHoverProps(_props, index) {\n const { data } = this.asProps;\n return {\n data,\n getBarData: (index) => this.computeBarData(data[index], index),\n render: index === 0,\n };\n }\n getTooltipProps(_props, index) {\n return {\n render: index === 0,\n };\n }\n\n computeBarData(d) {\n const {\n x,\n y,\n scale,\n offset: offsetProps,\n wMin,\n height: heightProps,\n maxBarSize = Infinity,\n size,\n } = this.asProps;\n\n const offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;\n const [xScale, yScale] = scale;\n const absWidth = xScale(d[x]);\n const bandHeight = heightProps || scaleToBand(yScale).bandwidth();\n const height = Math.min(bandHeight, maxBarSize);\n const width = absWidth === 0 ? 0 : Math.max(absWidth, wMin);\n const barY = yScale(d[y]) + bandHeight / 2 - height / 2 + offset[1];\n\n return {\n x: 0,\n y: barY,\n width,\n fullWidth: size[0],\n height,\n };\n }\n\n renderBar(d, i) {\n const SCompactHorizontalBarGroup = this.Element;\n const { styles, groupKey } = this.asProps;\n const { x, y } = this.computeBarData(d, i);\n\n this.asProps.dataHintsHandler.describeValueEntity(`${i}.${x}`, groupKey ?? d[y]);\n\n return (\n <React.Fragment key={`horizontal-bar-${i}`}>\n {sstyled(styles)(<SCompactHorizontalBarGroup render='g' />)}\n </React.Fragment>\n );\n }\n\n renderBars() {\n const { data } = this.asProps;\n\n return data.map(this.renderBar.bind(this));\n }\n\n render() {\n const { uid, size, duration } = this.asProps;\n\n return (\n <>\n {this.renderBars()}\n {duration && (\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={0}\n height={size[1]}\n />\n )}\n </>\n );\n }\n}\n\nfunction Annotation(props) {\n const { Children, y, height, width, styles } = props;\n const SBarAnnotation = 'div';\n return sstyled(styles)(\n <foreignObject x='0' y={y - barHeight} height={height} width={width}>\n <SBarAnnotation>\n <Children />\n </SBarAnnotation>\n </foreignObject>,\n );\n}\nconst excludeProps = ['data', 'scale', 'value', 'offset'];\nfunction Label(props) {\n const SBarLabel = Root;\n const { styles, Children } = props;\n return sstyled(styles)(\n <SBarLabel render={Box} __excludeProps={excludeProps}>\n <Children />\n </SBarLabel>,\n );\n}\nfunction Percent(props) {\n const SBarPercent = Root;\n const { styles, Children } = props;\n return sstyled(styles)(\n <SBarPercent render={Box} __excludeProps={excludeProps}>\n <Children />\n </SBarPercent>,\n );\n}\nfunction Value(props) {\n const SBarValue = Root;\n const { styles, Children } = props;\n return sstyled(styles)(\n <SBarValue render={Box} __excludeProps={excludeProps}>\n <Children />\n </SBarValue>,\n );\n}\n\nconst BarContext = React.createContext({});\nfunction Bar(props) {\n const { Children, index, onClick, transparent, hide } = props;\n const onClickHandler = React.useCallback(\n (event) => {\n onClick?.(index, event);\n },\n [onClick, index],\n );\n const contextValue = React.useMemo(\n () => ({ onClick: onClickHandler, transparent, hide }),\n [onClickHandler, transparent, hide],\n );\n return (\n <BarContext.Provider value={contextValue}>\n <Children />\n </BarContext.Provider>\n );\n}\nfunction BarFill(props) {\n const {\n Element: SBar,\n styles,\n color,\n x,\n y,\n width,\n height,\n uid,\n duration,\n resolveColor,\n patterns,\n i,\n scale,\n } = props;\n const [xScale] = scale;\n const xRange = xScale.range();\n const backgroundWidth = xRange[1] - xRange[0];\n const radius = 0; // left it here in case we will change our mind and return to rounded bars\n const pathD = React.useMemo(() => {\n if (backgroundWidth - radius > width) {\n return roundedPath(x, y, width, height, radius);\n }\n return roundedPath(x, y, width, height, radius, false, true, false, true);\n }, [x, y, height, width, radius]);\n\n const barProps = React.useContext(BarContext);\n\n return (\n <>\n {sstyled(styles)(\n <SBar\n aria-hidden\n render='path'\n d={pathD}\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value', 'offset']}\n childrenPosition='above'\n index={i}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n x={x}\n y={y}\n width={width}\n height={height}\n use:duration={`${duration}ms`}\n onClick={callAllEventHandlers(props.onClick, barProps.onClick)}\n transparent={barProps.transparent || props.transparent}\n hide={barProps.hide || props.hide}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </>\n );\n}\nfunction BarBackground(props) {\n const { Element: SBackground, styles, scale, y, x, height } = props;\n const [xScale] = scale;\n const xRange = xScale.range();\n const width = xRange[1] - xRange[0];\n const radius = 0; // left it here in case we will change our mind and return to rounded bars\n const pathD = React.useMemo(() => {\n return roundedPath(x, y, width, height, radius, false, true, false, true);\n }, [x, y, height, width, radius]);\n const barProps = React.useContext(BarContext);\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render='path'\n d={pathD}\n childrenPosition='above'\n width={xRange[1] - xRange[0]}\n height={height}\n x={x}\n y={y}\n transparent={barProps.transparent}\n onClick={callAllEventHandlers(props.onClick, barProps.onClick)}\n />,\n );\n}\n\nclass Hover extends Component {\n state = {\n index: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n unsubscribeMouseMoveRoot = null;\n unsubscribeMouseLeaveRoot = null;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n getIndex(point) {\n const { data, getBarData } = this.asProps;\n for (let i = 0; i < data.length; i++) {\n const bar = getBarData(i);\n if (\n point[0] >= bar.x &&\n point[0] <= bar.x + bar.fullWidth &&\n point[1] >= bar.y &&\n point[1] <= bar.y + bar.height\n ) {\n return i;\n }\n }\n return null;\n }\n\n handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, rootRef, patterns } = this.asProps;\n const point = eventToPoint(e, rootRef.current);\n const { clientX, clientY } = e;\n\n const index = this.getIndex(point);\n\n this.setState({ index }, () => {\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', {}, { index, patterns });\n eventEmitter.emit('setTooltipVisible', index !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n this.setState({ index: null }, () => {\n this.asProps.eventEmitter.emit('setTooltipVisible', false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveRoot', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveRoot',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n\n render() {\n const { styles, getBarData, render } = this.asProps;\n if (!render) return null;\n const { index } = this.state;\n const SCompactHorizontalBarHoverRect = this.Element;\n\n if (index === null) return null;\n const bar = getBarData(index);\n return sstyled(styles)(\n <SCompactHorizontalBarHoverRect\n render='rect'\n x={bar.x}\n y={bar.y + bar.height - barHeight - hoverOffset * 2}\n width={bar.fullWidth}\n height={barHeight + hoverOffset * 2}\n />,\n );\n }\n}\n\nconst CompactHorizontalBarTooltip = (props) => {\n if (!props.render) return null;\n const SCompactHorizontalBarRadarTooltip = Root;\n return sstyled(props.styles)(\n <SCompactHorizontalBarRadarTooltip\n render={Tooltip}\n tag={CompactHorizontalBar.Hover}\n excludeAnchorProps\n />,\n );\n};\n\nconst CompactHorizontalBar = createElement(CompactHorizontalBarRoot, {\n Annotation,\n Label,\n Percent,\n Value,\n Bar: [\n Bar,\n {\n Fill: BarFill,\n Background: BarBackground,\n },\n ],\n Hover,\n Tooltip: [CompactHorizontalBarTooltip, Tooltip._______childrenComponents],\n});\n\nexport default CompactHorizontalBar;\n"],"mappings":"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"}