@semcore/d3-chart 3.37.2 → 3.38.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 (96) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/lib/cjs/Area.js +11 -11
  3. package/lib/cjs/Axis.js +14 -14
  4. package/lib/cjs/Bar.js +10 -10
  5. package/lib/cjs/Bubble.js +12 -12
  6. package/lib/cjs/Donut.js +9 -9
  7. package/lib/cjs/Dots.js +10 -10
  8. package/lib/cjs/Dots.js.map +1 -1
  9. package/lib/cjs/HorizontalBar.js +10 -10
  10. package/lib/cjs/Hover.js +13 -5
  11. package/lib/cjs/Hover.js.map +1 -1
  12. package/lib/cjs/Line.js +9 -9
  13. package/lib/cjs/Plot.js +3 -3
  14. package/lib/cjs/Radar.js +19 -19
  15. package/lib/cjs/RadialTree.js +11 -11
  16. package/lib/cjs/ReferenceLine.js +9 -9
  17. package/lib/cjs/ScatterPlot.js +9 -9
  18. package/lib/cjs/Tooltip.js +13 -11
  19. package/lib/cjs/Tooltip.js.map +1 -1
  20. package/lib/cjs/Venn.js +9 -9
  21. package/lib/cjs/a11y/PlotA11yModule.js +2 -2
  22. package/lib/cjs/a11y/PlotA11yView.js +2 -2
  23. package/lib/cjs/component/Chart/AbstractChart.js +41 -24
  24. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  25. package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  26. package/lib/cjs/component/Chart/BubbleChart.js +2 -2
  27. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  28. package/lib/cjs/component/Chart/CigaretteChart.js +325 -0
  29. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -0
  30. package/lib/cjs/component/Chart/CigaretteChart.type.js +2 -0
  31. package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -0
  32. package/lib/cjs/component/Chart/index.js +3 -1
  33. package/lib/cjs/component/Chart/index.js.map +1 -1
  34. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  35. package/lib/cjs/component/ChartLegend/LegendFlex/legend-flex.shadow.css +2 -1
  36. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  37. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  38. package/lib/cjs/component/Cigarette/Cigarette.js +169 -0
  39. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -0
  40. package/lib/cjs/style/bar.shadow.css +1 -1
  41. package/lib/cjs/types/index.d.js +12 -0
  42. package/lib/cjs/types/index.d.js.map +1 -1
  43. package/lib/cjs/utils.js +32 -4
  44. package/lib/cjs/utils.js.map +1 -1
  45. package/lib/es6/Area.js +11 -11
  46. package/lib/es6/Axis.js +14 -14
  47. package/lib/es6/Bar.js +10 -10
  48. package/lib/es6/Bubble.js +12 -12
  49. package/lib/es6/Donut.js +9 -9
  50. package/lib/es6/Dots.js +10 -10
  51. package/lib/es6/Dots.js.map +1 -1
  52. package/lib/es6/HorizontalBar.js +10 -10
  53. package/lib/es6/Hover.js +13 -5
  54. package/lib/es6/Hover.js.map +1 -1
  55. package/lib/es6/Line.js +9 -9
  56. package/lib/es6/Plot.js +3 -3
  57. package/lib/es6/Radar.js +19 -19
  58. package/lib/es6/RadialTree.js +11 -11
  59. package/lib/es6/ReferenceLine.js +9 -9
  60. package/lib/es6/ScatterPlot.js +9 -9
  61. package/lib/es6/Tooltip.js +13 -11
  62. package/lib/es6/Tooltip.js.map +1 -1
  63. package/lib/es6/Venn.js +9 -9
  64. package/lib/es6/a11y/PlotA11yModule.js +2 -2
  65. package/lib/es6/a11y/PlotA11yView.js +2 -2
  66. package/lib/es6/component/Chart/AbstractChart.js +41 -24
  67. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  68. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  69. package/lib/es6/component/Chart/BubbleChart.js +2 -2
  70. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  71. package/lib/es6/component/Chart/CigaretteChart.js +316 -0
  72. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -0
  73. package/lib/es6/component/Chart/CigaretteChart.type.js +2 -0
  74. package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -0
  75. package/lib/es6/component/Chart/index.js +3 -1
  76. package/lib/es6/component/Chart/index.js.map +1 -1
  77. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  78. package/lib/es6/component/ChartLegend/LegendFlex/legend-flex.shadow.css +2 -1
  79. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  80. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  81. package/lib/es6/component/Cigarette/Cigarette.js +161 -0
  82. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -0
  83. package/lib/es6/style/bar.shadow.css +1 -1
  84. package/lib/es6/types/index.d.js +2 -0
  85. package/lib/es6/types/index.d.js.map +1 -1
  86. package/lib/es6/utils.js +32 -4
  87. package/lib/es6/utils.js.map +1 -1
  88. package/lib/types/component/Chart/AbstractChart.d.ts +2 -2
  89. package/lib/types/component/Chart/AbstractChart.type.d.ts +5 -0
  90. package/lib/types/component/Chart/CigaretteChart.d.ts +2 -0
  91. package/lib/types/component/Chart/CigaretteChart.type.d.ts +15 -0
  92. package/lib/types/component/Chart/index.d.ts +1 -0
  93. package/lib/types/component/Cigarette/Cigarette.d.ts +2 -0
  94. package/lib/types/index.d.ts +5 -1
  95. package/lib/types/utils.d.ts +1 -1
  96. package/package.json +7 -7
@@ -0,0 +1,316 @@
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
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 _get from "@babel/runtime/helpers/get";
7
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
8
+ import _inherits from "@babel/runtime/helpers/inherits";
9
+ import _createSuper from "@babel/runtime/helpers/createSuper";
10
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
11
+ import { assignProps as _assignProps2 } from "@semcore/core";
12
+ import { assignProps as _assignProps } from "@semcore/core";
13
+ import React from 'react';
14
+ import createComponent, { Root, sstyled } from '@semcore/core';
15
+ import Divider from '@semcore/divider';
16
+ import { Box, Flex } from '@semcore/flex-box';
17
+ import { Text } from '@semcore/typography';
18
+ import resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';
19
+ import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
20
+ import { scaleBand, scaleLinear } from 'd3-scale';
21
+ // @ts-ignore
22
+ import { HoverRect, Plot } from '../..';
23
+ // @ts-ignore
24
+ import AnimatedClipPath from '../../AnimatedClipPath';
25
+ import { AbstractChart } from './AbstractChart';
26
+ import { interpolateValue, scaleToBand } from '../../utils';
27
+ import Cigarette from '../Cigarette/Cigarette';
28
+ var wMin = 2;
29
+ var CigaretteChartComponent = /*#__PURE__*/function (_AbstractChart) {
30
+ _inherits(CigaretteChartComponent, _AbstractChart);
31
+ var _super = _createSuper(CigaretteChartComponent);
32
+ function CigaretteChartComponent() {
33
+ var _this;
34
+ _classCallCheck(this, CigaretteChartComponent);
35
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
36
+ args[_key] = arguments[_key];
37
+ }
38
+ _this = _super.call.apply(_super, [this].concat(args));
39
+ _defineProperty(_assertThisInitialized(_this), "plotPadding", 0);
40
+ _defineProperty(_assertThisInitialized(_this), "offset", 0);
41
+ return _this;
42
+ }
43
+ _createClass(CigaretteChartComponent, [{
44
+ key: "resolveColor",
45
+ value: function resolveColor(id, index) {
46
+ var _this$props$colorMap$, _this$props$colorMap;
47
+ return (_this$props$colorMap$ = (_this$props$colorMap = this.props.colorMap) === null || _this$props$colorMap === void 0 ? void 0 : _this$props$colorMap[id]) !== null && _this$props$colorMap$ !== void 0 ? _this$props$colorMap$ : "blue-".concat(5 - index, "00");
48
+ }
49
+ }, {
50
+ key: "getDefaultDataDefinitions",
51
+ value: function getDefaultDataDefinitions() {
52
+ var dataDefinitions = _get(_getPrototypeOf(CigaretteChartComponent.prototype), "getDefaultDataDefinitions", this).call(this);
53
+ return dataDefinitions.map(function (dataDef) {
54
+ dataDef.columns = dataDef.columns.slice(1);
55
+ return dataDef;
56
+ });
57
+ }
58
+ }, {
59
+ key: "defaultLegendProps",
60
+ value: function defaultLegendProps() {
61
+ return {
62
+ legendType: 'Table',
63
+ w: 'fit-content'
64
+ };
65
+ }
66
+ }, {
67
+ key: "xScale",
68
+ get: function get() {
69
+ var invertAxis = this.asProps.invertAxis;
70
+ return invertAxis ? this.valueScale : this.categoryScale;
71
+ }
72
+ }, {
73
+ key: "yScale",
74
+ get: function get() {
75
+ var invertAxis = this.asProps.invertAxis;
76
+ return invertAxis ? this.categoryScale : this.valueScale;
77
+ }
78
+ }, {
79
+ key: "renderChart",
80
+ value: function renderChart() {
81
+ var _this2 = this;
82
+ var _this$asProps = this.asProps,
83
+ invertAxis = _this$asProps.invertAxis,
84
+ data = _this$asProps.data,
85
+ uid = _this$asProps.uid,
86
+ duration = _this$asProps.duration,
87
+ patterns = _this$asProps.patterns,
88
+ plotHeight = _this$asProps.plotHeight,
89
+ plotWidth = _this$asProps.plotWidth,
90
+ onClick = _this$asProps.onClick;
91
+ var _this$state = this.state,
92
+ dataDefinitions = _this$state.dataDefinitions,
93
+ highlightedLine = _this$state.highlightedLine;
94
+ this.offset = 0;
95
+ return /*#__PURE__*/React.createElement(React.Fragment, null, (invertAxis ? dataDefinitions : _toConsumableArray(dataDefinitions).reverse()).map(function (item, index) {
96
+ var value = data[item.id];
97
+ if (!item.checked || value === interpolateValue || value === null) {
98
+ return null;
99
+ }
100
+ var absWidth = Math.abs(_this2.valueScale(value) - Math.max(_this2.valueScale(_this2.valueScale.domain()[0]), _this2.valueScale(0)));
101
+ var height = scaleToBand(_this2.categoryScale).bandwidth() - 4;
102
+ var width = value === 0 ? 0 : Math.max(absWidth, wMin * 2) - wMin;
103
+ var y = 2;
104
+ var x = index === 0 ? 0 : _this2.offset;
105
+ var r = height < 28 ? 2 : 4;
106
+ _this2.offset = _this2.offset + width + wMin;
107
+ return /*#__PURE__*/React.createElement(Cigarette, {
108
+ key: item.id,
109
+ dataKey: item.id,
110
+ index: index,
111
+ y: invertAxis ? y : x,
112
+ x: invertAxis ? x : y,
113
+ width: invertAxis ? width : height,
114
+ height: invertAxis ? height : width,
115
+ uid: uid,
116
+ hide: !item.checked,
117
+ duration: duration,
118
+ r: index === 0 || index === dataDefinitions.length - 1 ? r : 0,
119
+ color: item.color,
120
+ patterns: patterns,
121
+ direction: invertAxis ? 'horizontal' : 'vertical',
122
+ onClick: onClick,
123
+ hovered: highlightedLine === index ? true : highlightedLine === -1 ? undefined : false
124
+ });
125
+ }), /*#__PURE__*/React.createElement(AnimatedClipPath, {
126
+ "aria-hidden": true,
127
+ duration: duration,
128
+ id: uid,
129
+ x: "0",
130
+ y: "0",
131
+ width: invertAxis ? 0 : plotWidth,
132
+ height: invertAxis ? plotHeight : 0
133
+ }));
134
+ }
135
+ }, {
136
+ key: "renderTooltip",
137
+ value: function renderTooltip() {
138
+ var _this3 = this;
139
+ var _this$asProps2 = this.asProps,
140
+ data = _this$asProps2.data,
141
+ showTotalInTooltip = _this$asProps2.showTotalInTooltip,
142
+ showTooltip = _this$asProps2.showTooltip,
143
+ invertAxis = _this$asProps2.invertAxis,
144
+ tooltipTitle = _this$asProps2.tooltipTitle,
145
+ tooltipViewType = _this$asProps2.tooltipViewType;
146
+ var dataDefinitions = this.state.dataDefinitions;
147
+ if (!showTooltip) {
148
+ return null;
149
+ }
150
+ return /*#__PURE__*/React.createElement(HoverRect.Tooltip, {
151
+ x: invertAxis ? '' : undefined,
152
+ y: invertAxis ? undefined : '',
153
+ wMin: 100,
154
+ hideHoverLine: true
155
+ }, function (tooltipProps) {
156
+ var dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;
157
+ var total = _this3.totalValue(data);
158
+ if (tooltipViewType === 'single') {
159
+ var item = dataDefinitions.find(function (dataDefItem) {
160
+ return dataDefItem.id === dataKey;
161
+ });
162
+ if (!item) {
163
+ return null;
164
+ }
165
+ return {
166
+ children: /*#__PURE__*/React.createElement(Flex, {
167
+ justifyContent: "space-between",
168
+ key: dataKey
169
+ }, /*#__PURE__*/React.createElement(HoverRect.Tooltip.Dot, {
170
+ mr: 4,
171
+ color: item.color
172
+ }, item.label), /*#__PURE__*/React.createElement(Text, {
173
+ bold: true
174
+ }, _this3.tooltipValueFormatter(data[dataKey])))
175
+ };
176
+ }
177
+ return {
178
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, tooltipTitle && /*#__PURE__*/React.createElement(HoverRect.Tooltip.Title, null, "Some tooltip title"), dataDefinitions.map(function (item) {
179
+ return item.checked && /*#__PURE__*/React.createElement(Flex, {
180
+ justifyContent: "space-between",
181
+ key: item.id,
182
+ style: {
183
+ opacity: item.id === dataKey ? 1 : 0.3
184
+ }
185
+ }, /*#__PURE__*/React.createElement(HoverRect.Tooltip.Dot, {
186
+ mr: 4,
187
+ color: item.color
188
+ }, item.label), /*#__PURE__*/React.createElement(Text, {
189
+ bold: true
190
+ }, _this3.tooltipValueFormatter(data[item.id])));
191
+ }), showTotalInTooltip === true && /*#__PURE__*/React.createElement(Flex, {
192
+ mt: 2,
193
+ justifyContent: "space-between"
194
+ }, /*#__PURE__*/React.createElement(Box, {
195
+ mr: 4
196
+ }, "Total"), /*#__PURE__*/React.createElement(Text, {
197
+ bold: true
198
+ }, total)))
199
+ };
200
+ });
201
+ }
202
+ }, {
203
+ key: "renderHeader",
204
+ value: function renderHeader() {
205
+ var _this$asProps$header;
206
+ return (_this$asProps$header = this.asProps.header) !== null && _this$asProps$header !== void 0 ? _this$asProps$header : null;
207
+ }
208
+ }, {
209
+ key: "render",
210
+ value: function render() {
211
+ var _ref = this.asProps,
212
+ _ref3;
213
+ var SChart = Flex;
214
+ var _this$asProps3 = this.asProps,
215
+ styles = _this$asProps3.styles,
216
+ plotWidth = _this$asProps3.plotWidth,
217
+ plotHeight = _this$asProps3.plotHeight,
218
+ data = _this$asProps3.data,
219
+ patterns = _this$asProps3.patterns,
220
+ invertAxis = _this$asProps3.invertAxis,
221
+ a11yAltTextConfig = _this$asProps3.a11yAltTextConfig;
222
+ var header = this.renderHeader();
223
+ if (invertAxis) {
224
+ var _ref2;
225
+ return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref2.cn("SChart", _objectSpread({}, _assignProps({
226
+ "gap": 6,
227
+ "direction": 'column',
228
+ "__excludeProps": ['onClick', 'data']
229
+ }, _ref))), /*#__PURE__*/React.createElement(Flex, _ref2.cn("Flex", {
230
+ "direction": 'column'
231
+ }), header, /*#__PURE__*/React.createElement(Plot, _ref2.cn("Plot", {
232
+ "data": data,
233
+ "scale": [this.xScale, this.yScale],
234
+ "width": plotWidth,
235
+ "height": plotHeight,
236
+ "dataHints": this.dataHints,
237
+ "patterns": patterns,
238
+ "a11yAltTextConfig": a11yAltTextConfig
239
+ }), this.renderTooltip(), this.renderChart())), this.renderLegend());
240
+ }
241
+ return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SChart, _ref3.cn("SChart", _objectSpread({}, _assignProps2({
242
+ "gap": 6,
243
+ "__excludeProps": ['onClick', 'data']
244
+ }, _ref))), /*#__PURE__*/React.createElement(Plot, _ref3.cn("Plot", {
245
+ "data": data,
246
+ "scale": [this.xScale, this.yScale],
247
+ "width": plotWidth,
248
+ "height": plotHeight,
249
+ "dataHints": this.dataHints,
250
+ "patterns": patterns,
251
+ "a11yAltTextConfig": a11yAltTextConfig
252
+ }), this.renderTooltip(), this.renderChart()), /*#__PURE__*/React.createElement(Flex, _ref3.cn("Flex", {
253
+ "direction": 'column',
254
+ "gap": 2
255
+ }), header && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Box, _ref3.cn("Box", {}), header), /*#__PURE__*/React.createElement(Divider, _ref3.cn("Divider", {}))), this.renderLegend()));
256
+ }
257
+ }, {
258
+ key: "selectedData",
259
+ get: function get() {
260
+ var data = this.asProps.data;
261
+ var dataDefinitions = this.state.dataDefinitions;
262
+ var result = new Map();
263
+ dataDefinitions.forEach(function (dataDefItem) {
264
+ var value = data[dataDefItem.id];
265
+ if (dataDefItem.checked && value !== interpolateValue) {
266
+ result.set(dataDefItem.id, value);
267
+ }
268
+ });
269
+ return result;
270
+ }
271
+ }, {
272
+ key: "categoryScale",
273
+ get: function get() {
274
+ var _this$asProps4 = this.asProps,
275
+ plotWidth = _this$asProps4.plotWidth,
276
+ plotHeight = _this$asProps4.plotHeight,
277
+ invertAxis = _this$asProps4.invertAxis;
278
+ var range = invertAxis ? [plotHeight, 0] : [0, plotWidth];
279
+ return scaleBand([0], range);
280
+ }
281
+ }, {
282
+ key: "valueScale",
283
+ get: function get() {
284
+ var _this$asProps5 = this.asProps,
285
+ plotWidth = _this$asProps5.plotWidth,
286
+ plotHeight = _this$asProps5.plotHeight,
287
+ invertAxis = _this$asProps5.invertAxis;
288
+ var max = 0;
289
+ this.selectedData.forEach(function (value) {
290
+ max = max + value;
291
+ });
292
+ return scaleLinear().range(invertAxis ? [0, plotWidth] : [plotHeight, 0]).domain([0, max]);
293
+ }
294
+ }]);
295
+ return CigaretteChartComponent;
296
+ }(AbstractChart);
297
+ _defineProperty(CigaretteChartComponent, "displayName", 'Cigarette.Bar');
298
+ _defineProperty(CigaretteChartComponent, "defaultProps", function (props) {
299
+ var _props$invertAxis;
300
+ var invertAxis = (_props$invertAxis = props.invertAxis) !== null && _props$invertAxis !== void 0 ? _props$invertAxis : true;
301
+ return {
302
+ invertAxis: invertAxis,
303
+ showXAxis: false,
304
+ showYAxis: false,
305
+ showTooltip: true,
306
+ showLegend: false,
307
+ marginX: 0,
308
+ marginY: 0,
309
+ duration: 500,
310
+ plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,
311
+ plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight
312
+ };
313
+ });
314
+ _defineProperty(CigaretteChartComponent, "enhance", [resolveColorEnhance(), uniqueIDEnhancement()]);
315
+ export var CigaretteChart = createComponent(CigaretteChartComponent);
316
+ //# sourceMappingURL=CigaretteChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CigaretteChart.js","names":["React","createComponent","Root","sstyled","Divider","Box","Flex","Text","resolveColorEnhance","uniqueIDEnhancement","scaleBand","scaleLinear","HoverRect","Plot","AnimatedClipPath","AbstractChart","interpolateValue","scaleToBand","Cigarette","wMin","CigaretteChartComponent","_AbstractChart","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","value","resolveColor","id","index","_this$props$colorMap$","_this$props$colorMap","props","colorMap","getDefaultDataDefinitions","dataDefinitions","_get","_getPrototypeOf","prototype","map","dataDef","columns","slice","defaultLegendProps","legendType","w","get","invertAxis","asProps","valueScale","categoryScale","renderChart","_this2","_this$asProps","data","uid","duration","patterns","plotHeight","plotWidth","onClick","_this$state","state","highlightedLine","offset","createElement","Fragment","_toConsumableArray","reverse","item","checked","absWidth","Math","abs","max","domain","height","bandwidth","width","y","x","r","dataKey","hide","color","direction","hovered","undefined","renderTooltip","_this3","_this$asProps2","showTotalInTooltip","showTooltip","tooltipTitle","tooltipViewType","Tooltip","hideHoverLine","tooltipProps","xIndex","yIndex","total","totalValue","find","dataDefItem","children","justifyContent","Dot","mr","label","bold","tooltipValueFormatter","Title","style","opacity","mt","renderHeader","_this$asProps$header","header","render","_ref","_ref3","SChart","_this$asProps3","styles","a11yAltTextConfig","_ref2","cn","_objectSpread","_assignProps","xScale","yScale","dataHints","renderLegend","_assignProps2","result","Map","forEach","set","_this$asProps4","range","_this$asProps5","selectedData","_props$invertAxis","showXAxis","showYAxis","showLegend","marginX","marginY","CigaretteChart"],"sources":["../../../../src/component/Chart/CigaretteChart.tsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Root, sstyled } from '@semcore/core';\nimport Divider from '@semcore/divider';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Text } from '@semcore/typography';\nimport resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { CigaretteChartData, CigaretteChartProps, CigaretteChartType } from './CigaretteChart.type';\nimport { scaleBand, scaleLinear } from 'd3-scale';\n// @ts-ignore\nimport { HoverRect, Plot } from '../..';\n// @ts-ignore\nimport AnimatedClipPath from '../../AnimatedClipPath';\n\nimport { AbstractChart } from './AbstractChart';\nimport { interpolateValue, scaleToBand } from '../../utils';\n\nimport Cigarette from '../Cigarette/Cigarette';\nimport { LegendItem } from '../ChartLegend/LegendItem/LegendItem.type';\n\nconst wMin = 2;\n\ntype Enhances = {\n resolveColor: ReturnType<typeof resolveColorEnhance>;\n uid: ReturnType<typeof uniqueIDEnhancement>;\n};\n\nclass CigaretteChartComponent extends AbstractChart<\n CigaretteChartData,\n CigaretteChartProps,\n Enhances\n> {\n static displayName = 'Cigarette.Bar';\n\n static defaultProps: any = (props: CigaretteChartProps) => {\n const invertAxis = props.invertAxis ?? true;\n return {\n invertAxis: invertAxis,\n showXAxis: false,\n showYAxis: false,\n showTooltip: true,\n showLegend: false,\n marginX: 0,\n marginY: 0,\n duration: 500,\n plotWidth: !invertAxis && !props.plotWidth ? 44 : props.plotWidth,\n plotHeight: invertAxis && !props.plotHeight ? 28 : props.plotHeight,\n };\n };\n\n static enhance = [resolveColorEnhance(), uniqueIDEnhancement()];\n\n protected override plotPadding = 0;\n\n private offset = 0;\n\n protected override resolveColor(id: string, index: number) {\n return this.props.colorMap?.[id] ?? `blue-${5 - index}00`;\n }\n\n protected override getDefaultDataDefinitions(): Array<\n LegendItem & { columns: React.ReactNode[] }\n > {\n const dataDefinitions = super.getDefaultDataDefinitions();\n\n return dataDefinitions.map((dataDef) => {\n dataDef.columns = dataDef.columns.slice(1);\n return dataDef;\n });\n }\n\n protected override defaultLegendProps() {\n return {\n legendType: 'Table' as const,\n w: 'fit-content',\n };\n }\n\n get xScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.valueScale : this.categoryScale;\n }\n\n get yScale() {\n const { invertAxis } = this.asProps;\n\n return invertAxis ? this.categoryScale : this.valueScale;\n }\n\n renderChart() {\n const { invertAxis, data, uid, duration, patterns, plotHeight, plotWidth, onClick } =\n this.asProps;\n const { dataDefinitions, highlightedLine } = this.state;\n\n this.offset = 0;\n\n return (\n <>\n {(invertAxis ? dataDefinitions : [...dataDefinitions].reverse()).map((item, index) => {\n const value = data[item.id];\n\n if (!item.checked || value === interpolateValue || value === null) {\n return null;\n }\n\n const absWidth = Math.abs(\n this.valueScale(value) -\n Math.max(this.valueScale(this.valueScale.domain()[0]), this.valueScale(0)),\n );\n const height = scaleToBand(this.categoryScale).bandwidth() - 4;\n const width = value === 0 ? 0 : Math.max(absWidth, wMin * 2) - wMin;\n const y = 2;\n const x = index === 0 ? 0 : this.offset;\n const r = height < 28 ? 2 : 4;\n\n this.offset = this.offset + width + wMin;\n\n return (\n <Cigarette\n key={item.id}\n dataKey={item.id}\n index={index}\n y={invertAxis ? y : x}\n x={invertAxis ? x : y}\n width={invertAxis ? width : height}\n height={invertAxis ? height : width}\n uid={uid}\n hide={!item.checked}\n duration={duration}\n r={index === 0 || index === dataDefinitions.length - 1 ? r : 0}\n color={item.color}\n patterns={patterns}\n direction={invertAxis ? 'horizontal' : 'vertical'}\n onClick={onClick}\n hovered={\n highlightedLine === index ? true : highlightedLine === -1 ? undefined : false\n }\n />\n );\n })}\n\n <AnimatedClipPath\n aria-hidden\n duration={duration}\n id={uid}\n x='0'\n y='0'\n width={invertAxis ? 0 : plotWidth}\n height={invertAxis ? plotHeight : 0}\n />\n </>\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { data, showTotalInTooltip, showTooltip, invertAxis, tooltipTitle, tooltipViewType } =\n this.asProps;\n const { dataDefinitions } = this.state;\n\n if (!showTooltip) {\n return null;\n }\n\n return (\n <HoverRect.Tooltip\n x={invertAxis ? '' : undefined}\n y={invertAxis ? undefined : ''}\n wMin={100}\n hideHoverLine={true}\n >\n {(tooltipProps: any) => {\n const dataKey = invertAxis ? tooltipProps.xIndex : tooltipProps.yIndex;\n const total = this.totalValue(data);\n\n if (tooltipViewType === 'single') {\n const item = dataDefinitions.find((dataDefItem) => dataDefItem.id === dataKey);\n\n if (!item) {\n return null;\n }\n\n return {\n children: (\n <Flex justifyContent='space-between' key={dataKey}>\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(data[dataKey])}</Text>\n </Flex>\n ),\n };\n }\n\n return {\n children: (\n <>\n {tooltipTitle && (\n <HoverRect.Tooltip.Title>Some tooltip title</HoverRect.Tooltip.Title>\n )}\n\n {dataDefinitions.map((item) => {\n return (\n item.checked && (\n <Flex\n justifyContent='space-between'\n key={item.id}\n style={{ opacity: item.id === dataKey ? 1 : 0.3 }}\n >\n <HoverRect.Tooltip.Dot mr={4} color={item.color}>\n {item.label}\n </HoverRect.Tooltip.Dot>\n <Text bold>{this.tooltipValueFormatter(data[item.id])}</Text>\n </Flex>\n )\n );\n })}\n\n {showTotalInTooltip === true && (\n <Flex mt={2} justifyContent='space-between'>\n <Box mr={4}>Total</Box>\n <Text bold>{total}</Text>\n </Flex>\n )}\n </>\n ),\n };\n }}\n </HoverRect.Tooltip>\n );\n }\n\n renderHeader() {\n return this.asProps.header ?? null;\n }\n\n override render() {\n const SChart = Root;\n const { styles, plotWidth, plotHeight, data, patterns, invertAxis, a11yAltTextConfig } =\n this.asProps;\n\n const header = this.renderHeader();\n\n if (invertAxis) {\n return sstyled(styles)(\n <SChart render={Flex} gap={6} direction={'column'} __excludeProps={['onClick', 'data']}>\n <Flex direction={'column'}>\n {header}\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n </Flex>\n {this.renderLegend()}\n </SChart>,\n );\n }\n\n return sstyled(styles)(\n <SChart render={Flex} gap={6} __excludeProps={['onClick', 'data']}>\n <Plot\n data={data}\n scale={[this.xScale, this.yScale]}\n width={plotWidth}\n height={plotHeight}\n dataHints={this.dataHints}\n patterns={patterns}\n a11yAltTextConfig={a11yAltTextConfig}\n >\n {this.renderTooltip()}\n {this.renderChart()}\n </Plot>\n <Flex direction={'column'} gap={2}>\n {header && (\n <>\n <Box>{header}</Box>\n <Divider />\n </>\n )}\n {this.renderLegend()}\n </Flex>\n </SChart>,\n );\n }\n\n private get selectedData() {\n const { data } = this.asProps;\n const { dataDefinitions } = this.state;\n\n const result = new Map<string, number>();\n\n dataDefinitions.forEach((dataDefItem) => {\n const value = data[dataDefItem.id];\n if (dataDefItem.checked && value !== interpolateValue) {\n result.set(dataDefItem.id, value);\n }\n });\n\n return result;\n }\n\n private get categoryScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n const range = invertAxis ? [plotHeight, 0] : [0, plotWidth];\n\n return scaleBand<{}>([0], range);\n }\n\n private get valueScale() {\n const { plotWidth, plotHeight, invertAxis } = this.asProps;\n\n let max = 0;\n\n this.selectedData.forEach((value) => {\n max = max + value;\n });\n\n return scaleLinear()\n .range(invertAxis ? [0, plotWidth] : [plotHeight, 0])\n .domain([0, max]);\n }\n}\n\nexport const CigaretteChart: CigaretteChartType = createComponent(CigaretteChartComponent);\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CigaretteChart.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CigaretteChart.type.js","names":[],"sources":["../../../../src/component/Chart/CigaretteChart.type.ts"],"sourcesContent":["import React from 'react';\nimport { Intergalactic } from '@semcore/core';\nimport { BaseChartProps } from './AbstractChart.type';\nimport { interpolateValue } from '../../utils';\n\ntype DataKey = string;\n\nexport type CigaretteChartData = Record<DataKey, number | typeof interpolateValue>;\n\nexport type CigaretteChartProps = Intergalactic.InternalTypings.EfficientOmit<\n BaseChartProps<CigaretteChartData>,\n 'xScale' | 'yScale'\n> & {\n tooltipTitle?: string;\n tooltipViewType?: 'all' | 'single';\n header?: React.ReactNode;\n duration?: number;\n onClick?: (key: DataKey, event: React.SyntheticEvent) => void;\n};\n\nexport type CigaretteChartType = Intergalactic.Component<'div', CigaretteChartProps>;\n"],"mappings":""}
@@ -7,6 +7,7 @@ import { BubbleChart } from './BubbleChart';
7
7
  import { DonutChart } from './DonutChart';
8
8
  import { VennChart } from './VennChart';
9
9
  import { RadarChart } from './RadarChart';
10
+ import { CigaretteChart } from './CigaretteChart';
10
11
  export default {
11
12
  Line: LineChart,
12
13
  Bar: BarChart,
@@ -16,6 +17,7 @@ export default {
16
17
  Bubble: BubbleChart,
17
18
  Donut: DonutChart,
18
19
  Venn: VennChart,
19
- Radar: RadarChart
20
+ Radar: RadarChart,
21
+ Cigarette: CigaretteChart
20
22
  };
21
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["LineChart","BarChart","HistogramChart","ScatterPlotChart","AreaChart","BubbleChart","DonutChart","VennChart","RadarChart","Line","Bar","Histogram","ScatterPlot","Area","Bubble","Donut","Venn","Radar"],"sources":["../../../../src/component/Chart/index.ts"],"sourcesContent":["import { LineChart } from './LineChart';\nimport { BarChart } from './BarChart';\nimport { HistogramChart } from './HistogramChart';\nimport { ScatterPlotChart } from './ScatterPlotChart';\nimport { AreaChart } from './AreaChart';\nimport { BubbleChart } from './BubbleChart';\nimport { DonutChart } from './DonutChart';\nimport { VennChart } from './VennChart';\nimport { RadarChart } from './RadarChart';\n\nexport default {\n Line: LineChart,\n Bar: BarChart,\n Histogram: HistogramChart,\n ScatterPlot: ScatterPlotChart,\n Area: AreaChart,\n Bubble: BubbleChart,\n Donut: DonutChart,\n Venn: VennChart,\n Radar: RadarChart,\n};\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,YAAY;AACrC,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,UAAU,QAAQ,cAAc;AAEzC,eAAe;EACbC,IAAI,EAAET,SAAS;EACfU,GAAG,EAAET,QAAQ;EACbU,SAAS,EAAET,cAAc;EACzBU,WAAW,EAAET,gBAAgB;EAC7BU,IAAI,EAAET,SAAS;EACfU,MAAM,EAAET,WAAW;EACnBU,KAAK,EAAET,UAAU;EACjBU,IAAI,EAAET,SAAS;EACfU,KAAK,EAAET;AACT,CAAC"}
1
+ {"version":3,"file":"index.js","names":["LineChart","BarChart","HistogramChart","ScatterPlotChart","AreaChart","BubbleChart","DonutChart","VennChart","RadarChart","CigaretteChart","Line","Bar","Histogram","ScatterPlot","Area","Bubble","Donut","Venn","Radar","Cigarette"],"sources":["../../../../src/component/Chart/index.ts"],"sourcesContent":["import { LineChart } from './LineChart';\nimport { BarChart } from './BarChart';\nimport { HistogramChart } from './HistogramChart';\nimport { ScatterPlotChart } from './ScatterPlotChart';\nimport { AreaChart } from './AreaChart';\nimport { BubbleChart } from './BubbleChart';\nimport { DonutChart } from './DonutChart';\nimport { VennChart } from './VennChart';\nimport { RadarChart } from './RadarChart';\nimport { CigaretteChart } from './CigaretteChart';\n\nexport default {\n Line: LineChart,\n Bar: BarChart,\n Histogram: HistogramChart,\n ScatterPlot: ScatterPlotChart,\n Area: AreaChart,\n Bubble: BubbleChart,\n Donut: DonutChart,\n Venn: VennChart,\n Radar: RadarChart,\n Cigarette: CigaretteChart,\n};\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,YAAY;AACrC,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,cAAc,QAAQ,kBAAkB;AAEjD,eAAe;EACbC,IAAI,EAAEV,SAAS;EACfW,GAAG,EAAEV,QAAQ;EACbW,SAAS,EAAEV,cAAc;EACzBW,WAAW,EAAEV,gBAAgB;EAC7BW,IAAI,EAAEV,SAAS;EACfW,MAAM,EAAEV,WAAW;EACnBW,KAAK,EAAEV,UAAU;EACjBW,IAAI,EAAEV,SAAS;EACfW,KAAK,EAAEV,UAAU;EACjBW,SAAS,EAAEV;AACb,CAAC"}
@@ -10,10 +10,10 @@ import React from 'react';
10
10
  import createComponent, { sstyled, Root } from '@semcore/core';
11
11
  import { Flex } from '@semcore/flex-box';
12
12
  /*__reshadow-styles__:"./legend-flex.shadow.css"*/
13
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLegendFlex_18x7n_gg_._direction_row_18x7n_gg_{align-items:center;flex-wrap:wrap;gap:8px 16px}.___SLegendFlex_18x7n_gg_._direction_column_18x7n_gg_{align-items:flex-start;flex-wrap:wrap;gap:8px}" /*__inner_css_end__*/, "18x7n_gg_") /*__reshadow_css_end__*/, {
14
- "__SLegendFlex": "___SLegendFlex_18x7n_gg_",
15
- "_direction_row": "_direction_row_18x7n_gg_",
16
- "_direction_column": "_direction_column_18x7n_gg_"
13
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLegendFlex_bz8dk_gg_._direction_row_bz8dk_gg_{align-items:flex-start;align-content:flex-start;flex-wrap:wrap;gap:8px 16px}.___SLegendFlex_bz8dk_gg_._direction_column_bz8dk_gg_{align-items:flex-start;flex-wrap:wrap;gap:8px}" /*__inner_css_end__*/, "bz8dk_gg_") /*__reshadow_css_end__*/, {
14
+ "__SLegendFlex": "___SLegendFlex_bz8dk_gg_",
15
+ "_direction_row": "_direction_row_bz8dk_gg_",
16
+ "_direction_column": "_direction_column_bz8dk_gg_"
17
17
  });
18
18
  import { LegendItemComponent } from '../LegendItem/LegendItem';
19
19
  import Divider from '@semcore/divider';
@@ -1,5 +1,6 @@
1
1
  SLegendFlex[direction='row'] {
2
- align-items: center;
2
+ align-items: flex-start;
3
+ align-content: flex-start;
3
4
  flex-wrap: wrap;
4
5
  gap: 8px 16px;
5
6
  }
@@ -19,23 +19,23 @@ import { Flex, Box } from '@semcore/flex-box';
19
19
  import Checkbox from '@semcore/checkbox';
20
20
  import { Text as TypographyText } from '@semcore/typography';
21
21
  /*__reshadow-styles__:"./legend-item.shadow.css"*/
22
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLegendItem_sa9f6_gg_{min-width:0;align-items:flex-start}@media (hover:hover){.___SLegendItem_sa9f6_gg_:hover{cursor:pointer}.___SLegendItem_sa9f6_gg_.__disabled_sa9f6_gg_:hover{cursor:default}}.___SPointShape_sa9f6_gg_.__color_sa9f6_gg_{background-color:var(--color_sa9f6);margin-right:8px;flex-shrink:0}.___SPointShape_sa9f6_gg_._shape_Circle_sa9f6_gg_._size_l_sa9f6_gg_{width:16px;height:16px;border-radius:8px;margin-top:4px}.___SPointShape_sa9f6_gg_._shape_Circle_sa9f6_gg_._size_m_sa9f6_gg_{width:12px;height:12px;border-radius:6px;margin-top:4px}.___SPointShape_sa9f6_gg_._shape_Line_sa9f6_gg_._size_l_sa9f6_gg_{width:16px;height:4px;border-radius:3px;margin-top:9px}.___SPointShape_sa9f6_gg_._shape_Line_sa9f6_gg_._size_m_sa9f6_gg_{width:12px;height:4px;border-radius:3px;margin-top:8px}.___SPointShape_sa9f6_gg_._shape_Square_sa9f6_gg_._size_l_sa9f6_gg_{width:16px;height:16px;border-radius:2px;margin-top:4px}.___SPointShape_sa9f6_gg_._shape_Square_sa9f6_gg_._size_m_sa9f6_gg_{width:12px;height:12px;border-radius:2px;margin-top:4px}.___SPointShape_sa9f6_gg_._shape_Pattern_sa9f6_gg_{background-color:transparent;margin-right:4px}.___SIcon_sa9f6_gg_{line-height:0;margin-right:4px}.___SIcon_sa9f6_gg_._size_l_sa9f6_gg_{margin-top:4px}.___SIcon_sa9f6_gg_._size_m_sa9f6_gg_{margin-top:2px}.___SLabel_sa9f6_gg_{min-width:0}.___SAdditionalLabel_sa9f6_gg_._size_l_sa9f6_gg_,.___SCount_sa9f6_gg_._size_l_sa9f6_gg_,.___SLabel_sa9f6_gg_._size_l_sa9f6_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}.___SAdditionalLabel_sa9f6_gg_._size_m_sa9f6_gg_,.___SCount_sa9f6_gg_._size_m_sa9f6_gg_,.___SLabel_sa9f6_gg_._size_m_sa9f6_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SAdditionalLabel_sa9f6_gg_,.___SCount_sa9f6_gg_{margin-left:4px}.___SAdditionalLabel_sa9f6_gg_{white-space:nowrap;display:flex;align-items:flex-start}.___SAdditionalLabel_sa9f6_gg_::before{content:\"\";display:inline-block;background-color:var(--intergalactic-text-secondary, #6c6e79);height:4px;width:4px;border-radius:2px;margin-right:4px}.___SAdditionalLabel_sa9f6_gg_._size_l_sa9f6_gg_::before{margin-top:10px}.___SAdditionalLabel_sa9f6_gg_._size_m_sa9f6_gg_::before{margin-top:8px}.___SPatternSymbol_sa9f6_gg_{transform:scale(.8)}" /*__inner_css_end__*/, "sa9f6_gg_") /*__reshadow_css_end__*/, {
23
- "__SLegendItem": "___SLegendItem_sa9f6_gg_",
24
- "_disabled": "__disabled_sa9f6_gg_",
25
- "__SPointShape": "___SPointShape_sa9f6_gg_",
26
- "_color": "__color_sa9f6_gg_",
27
- "--color": "--color_sa9f6",
28
- "_shape_Circle": "_shape_Circle_sa9f6_gg_",
29
- "_size_l": "_size_l_sa9f6_gg_",
30
- "_size_m": "_size_m_sa9f6_gg_",
31
- "_shape_Line": "_shape_Line_sa9f6_gg_",
32
- "_shape_Square": "_shape_Square_sa9f6_gg_",
33
- "_shape_Pattern": "_shape_Pattern_sa9f6_gg_",
34
- "__SIcon": "___SIcon_sa9f6_gg_",
35
- "__SLabel": "___SLabel_sa9f6_gg_",
36
- "__SAdditionalLabel": "___SAdditionalLabel_sa9f6_gg_",
37
- "__SCount": "___SCount_sa9f6_gg_",
38
- "__SPatternSymbol": "___SPatternSymbol_sa9f6_gg_"
22
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLegendItem_1n5bu_gg_{min-width:0;align-items:flex-start}@media (hover:hover){.___SLegendItem_1n5bu_gg_:hover{cursor:pointer}.___SLegendItem_1n5bu_gg_.__disabled_1n5bu_gg_:hover{cursor:default}}.___SPointShape_1n5bu_gg_.__color_1n5bu_gg_{background-color:var(--color_1n5bu);margin-right:8px;flex-shrink:0}.___SPointShape_1n5bu_gg_._shape_Circle_1n5bu_gg_._size_l_1n5bu_gg_{width:16px;height:16px;border-radius:8px;margin-top:4px}.___SPointShape_1n5bu_gg_._shape_Circle_1n5bu_gg_._size_m_1n5bu_gg_{width:12px;height:12px;border-radius:6px;margin-top:4px}.___SPointShape_1n5bu_gg_._shape_Line_1n5bu_gg_._size_l_1n5bu_gg_{width:16px;height:4px;border-radius:3px;margin-top:9px}.___SPointShape_1n5bu_gg_._shape_Line_1n5bu_gg_._size_m_1n5bu_gg_{width:12px;height:4px;border-radius:3px;margin-top:8px}.___SPointShape_1n5bu_gg_._shape_Square_1n5bu_gg_._size_l_1n5bu_gg_{width:16px;height:16px;border-radius:2px;margin-top:4px}.___SPointShape_1n5bu_gg_._shape_Square_1n5bu_gg_._size_m_1n5bu_gg_{width:12px;height:12px;border-radius:2px;margin-top:4px}.___SPointShape_1n5bu_gg_._shape_Pattern_1n5bu_gg_{background-color:transparent;margin-right:4px}.___SIcon_1n5bu_gg_{line-height:0;margin-right:4px}.___SIcon_1n5bu_gg_._size_l_1n5bu_gg_{margin-top:4px}.___SIcon_1n5bu_gg_._size_m_1n5bu_gg_{margin-top:2px}.___SLabel_1n5bu_gg_{min-width:0}.___SAdditionalLabel_1n5bu_gg_._size_l_1n5bu_gg_,.___SCount_1n5bu_gg_._size_l_1n5bu_gg_,.___SLabel_1n5bu_gg_._size_l_1n5bu_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}.___SAdditionalLabel_1n5bu_gg_._size_m_1n5bu_gg_,.___SCount_1n5bu_gg_._size_m_1n5bu_gg_,.___SLabel_1n5bu_gg_._size_m_1n5bu_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SAdditionalLabel_1n5bu_gg_,.___SCount_1n5bu_gg_{margin-left:4px}.___SAdditionalLabel_1n5bu_gg_{white-space:nowrap;display:flex;align-items:flex-start}.___SAdditionalLabel_1n5bu_gg_::before{content:\"\";display:inline-block;background-color:var(--intergalactic-text-secondary, #6c6e79);height:4px;width:4px;border-radius:2px;margin-right:4px}.___SAdditionalLabel_1n5bu_gg_._size_l_1n5bu_gg_::before{margin-top:10px}.___SAdditionalLabel_1n5bu_gg_._size_m_1n5bu_gg_::before{margin-top:8px}.___SPatternSymbol_1n5bu_gg_{transform:scale(.8)}" /*__inner_css_end__*/, "1n5bu_gg_") /*__reshadow_css_end__*/, {
23
+ "__SLegendItem": "___SLegendItem_1n5bu_gg_",
24
+ "_disabled": "__disabled_1n5bu_gg_",
25
+ "__SPointShape": "___SPointShape_1n5bu_gg_",
26
+ "_color": "__color_1n5bu_gg_",
27
+ "--color": "--color_1n5bu",
28
+ "_shape_Circle": "_shape_Circle_1n5bu_gg_",
29
+ "_size_l": "_size_l_1n5bu_gg_",
30
+ "_size_m": "_size_m_1n5bu_gg_",
31
+ "_shape_Line": "_shape_Line_1n5bu_gg_",
32
+ "_shape_Square": "_shape_Square_1n5bu_gg_",
33
+ "_shape_Pattern": "_shape_Pattern_1n5bu_gg_",
34
+ "__SIcon": "___SIcon_1n5bu_gg_",
35
+ "__SLabel": "___SLabel_1n5bu_gg_",
36
+ "__SAdditionalLabel": "___SAdditionalLabel_1n5bu_gg_",
37
+ "__SCount": "___SCount_1n5bu_gg_",
38
+ "__SPatternSymbol": "___SPatternSymbol_1n5bu_gg_"
39
39
  });
40
40
  import { StaticShapes } from './LegendItem.type';
41
41
  import resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';
@@ -11,12 +11,12 @@ import React from 'react';
11
11
  import createComponent, { sstyled, Root } from '@semcore/core';
12
12
  import { Box } from '@semcore/flex-box';
13
13
  /*__reshadow-styles__:"./legend-table.shadow.css"*/
14
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLegendTable_1ftui_gg_.__columns-count_1ftui_gg_{font-feature-settings:\"tnum\";font-variant-numeric:tabular-nums;display:grid;grid-template-columns:auto .2fr;align-items:center;height:-moz-fit-content;height:fit-content;grid-column-gap:16px;grid-row-gap:8px}.___SColumnItem_1ftui_gg_._size_l_1ftui_gg_{font-size:var(--intergalactic-fs-300, 16px);text-align:right}.___SColumnItem_1ftui_gg_._size_m_1ftui_gg_{font-size:var(--intergalactic-fs-200, 14px);text-align:right}" /*__inner_css_end__*/, "1ftui_gg_") /*__reshadow_css_end__*/, {
15
- "__SLegendTable": "___SLegendTable_1ftui_gg_",
16
- "_columns-count": "__columns-count_1ftui_gg_",
17
- "__SColumnItem": "___SColumnItem_1ftui_gg_",
18
- "_size_l": "_size_l_1ftui_gg_",
19
- "_size_m": "_size_m_1ftui_gg_"
14
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLegendTable_tcnh3_gg_.__columns-count_tcnh3_gg_{font-feature-settings:\"tnum\";font-variant-numeric:tabular-nums;display:grid;grid-template-columns:auto .2fr;align-items:center;height:-moz-fit-content;height:fit-content;grid-column-gap:16px;grid-row-gap:8px}.___SColumnItem_tcnh3_gg_._size_l_tcnh3_gg_{font-size:var(--intergalactic-fs-300, 16px);text-align:right}.___SColumnItem_tcnh3_gg_._size_m_tcnh3_gg_{font-size:var(--intergalactic-fs-200, 14px);text-align:right}" /*__inner_css_end__*/, "tcnh3_gg_") /*__reshadow_css_end__*/, {
15
+ "__SLegendTable": "___SLegendTable_tcnh3_gg_",
16
+ "_columns-count": "__columns-count_tcnh3_gg_",
17
+ "__SColumnItem": "___SColumnItem_tcnh3_gg_",
18
+ "_size_l": "_size_l_tcnh3_gg_",
19
+ "_size_m": "_size_m_tcnh3_gg_"
20
20
  });
21
21
  import { LegendItemComponent } from '../LegendItem/LegendItem';
22
22
  import { BaseLegend } from '../BaseLegend';