@semcore/d3-chart 2.13.4 → 2.13.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/Area.js +59 -97
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +76 -143
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +49 -96
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +39 -81
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +9 -35
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +77 -152
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +29 -57
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +5 -26
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +43 -84
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +33 -88
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +42 -78
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +27 -73
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/Radar.js +152 -277
  27. package/lib/cjs/Radar.js.map +1 -1
  28. package/lib/cjs/RadialTree.js +105 -211
  29. package/lib/cjs/RadialTree.js.map +1 -1
  30. package/lib/cjs/ReferenceLine.js +45 -87
  31. package/lib/cjs/ReferenceLine.js.map +1 -1
  32. package/lib/cjs/ResponsiveContainer.js +9 -38
  33. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  34. package/lib/cjs/ScatterPlot.js +34 -74
  35. package/lib/cjs/ScatterPlot.js.map +1 -1
  36. package/lib/cjs/StackBar.js +9 -38
  37. package/lib/cjs/StackBar.js.map +1 -1
  38. package/lib/cjs/StackedArea.js +5 -29
  39. package/lib/cjs/StackedArea.js.map +1 -1
  40. package/lib/cjs/Tooltip.js +27 -76
  41. package/lib/cjs/Tooltip.js.map +1 -1
  42. package/lib/cjs/Venn.js +32 -75
  43. package/lib/cjs/Venn.js.map +1 -1
  44. package/lib/cjs/a11y/PlotA11yModule.js +18 -71
  45. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  46. package/lib/cjs/a11y/PlotA11yView.js +19 -83
  47. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  48. package/lib/cjs/a11y/bezier.js +0 -7
  49. package/lib/cjs/a11y/bezier.js.map +1 -1
  50. package/lib/cjs/a11y/focus.js +2 -11
  51. package/lib/cjs/a11y/focus.js.map +1 -1
  52. package/lib/cjs/a11y/hints.js +0 -13
  53. package/lib/cjs/a11y/hints.js.map +1 -1
  54. package/lib/cjs/a11y/insights.js +21 -132
  55. package/lib/cjs/a11y/insights.js.map +1 -1
  56. package/lib/cjs/a11y/intl.js +0 -6
  57. package/lib/cjs/a11y/intl.js.map +1 -1
  58. package/lib/cjs/a11y/locale.js +4 -22
  59. package/lib/cjs/a11y/locale.js.map +1 -1
  60. package/lib/cjs/a11y/serialize.js +23 -83
  61. package/lib/cjs/a11y/serialize.js.map +1 -1
  62. package/lib/cjs/a11y/summarize.js +0 -4
  63. package/lib/cjs/a11y/summarize.js.map +1 -1
  64. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +0 -13
  65. package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  66. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +0 -13
  67. package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  68. package/lib/cjs/color.js +0 -3
  69. package/lib/cjs/color.js.map +1 -1
  70. package/lib/cjs/createElement.js +18 -47
  71. package/lib/cjs/createElement.js.map +1 -1
  72. package/lib/cjs/index.js +0 -23
  73. package/lib/cjs/index.js.map +1 -1
  74. package/lib/cjs/types/Plot.d.js.map +1 -1
  75. package/lib/cjs/types/index.d.js +0 -39
  76. package/lib/cjs/types/index.d.js.map +1 -1
  77. package/lib/cjs/utils.js +7 -59
  78. package/lib/cjs/utils.js.map +1 -1
  79. package/lib/es6/Area.js +59 -86
  80. package/lib/es6/Area.js.map +1 -1
  81. package/lib/es6/Axis.js +76 -135
  82. package/lib/es6/Axis.js.map +1 -1
  83. package/lib/es6/Bar.js +49 -86
  84. package/lib/es6/Bar.js.map +1 -1
  85. package/lib/es6/Bubble.js +39 -70
  86. package/lib/es6/Bubble.js.map +1 -1
  87. package/lib/es6/ClipPath.js +9 -23
  88. package/lib/es6/ClipPath.js.map +1 -1
  89. package/lib/es6/Donut.js +77 -141
  90. package/lib/es6/Donut.js.map +1 -1
  91. package/lib/es6/Dots.js +29 -46
  92. package/lib/es6/Dots.js.map +1 -1
  93. package/lib/es6/GroupBar.js +5 -15
  94. package/lib/es6/GroupBar.js.map +1 -1
  95. package/lib/es6/HorizontalBar.js +43 -75
  96. package/lib/es6/HorizontalBar.js.map +1 -1
  97. package/lib/es6/Hover.js +33 -85
  98. package/lib/es6/Hover.js.map +1 -1
  99. package/lib/es6/Line.js +42 -67
  100. package/lib/es6/Line.js.map +1 -1
  101. package/lib/es6/Plot.js +27 -66
  102. package/lib/es6/Plot.js.map +1 -1
  103. package/lib/es6/Radar.js +152 -281
  104. package/lib/es6/Radar.js.map +1 -1
  105. package/lib/es6/RadialTree.js +105 -203
  106. package/lib/es6/RadialTree.js.map +1 -1
  107. package/lib/es6/ReferenceLine.js +45 -79
  108. package/lib/es6/ReferenceLine.js.map +1 -1
  109. package/lib/es6/ResponsiveContainer.js +9 -28
  110. package/lib/es6/ResponsiveContainer.js.map +1 -1
  111. package/lib/es6/ScatterPlot.js +34 -65
  112. package/lib/es6/ScatterPlot.js.map +1 -1
  113. package/lib/es6/StackBar.js +9 -26
  114. package/lib/es6/StackBar.js.map +1 -1
  115. package/lib/es6/StackedArea.js +5 -18
  116. package/lib/es6/StackedArea.js.map +1 -1
  117. package/lib/es6/Tooltip.js +27 -63
  118. package/lib/es6/Tooltip.js.map +1 -1
  119. package/lib/es6/Venn.js +32 -64
  120. package/lib/es6/Venn.js.map +1 -1
  121. package/lib/es6/a11y/PlotA11yModule.js +18 -52
  122. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  123. package/lib/es6/a11y/PlotA11yView.js +19 -53
  124. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  125. package/lib/es6/a11y/bezier.js +0 -5
  126. package/lib/es6/a11y/bezier.js.map +1 -1
  127. package/lib/es6/a11y/focus.js +2 -9
  128. package/lib/es6/a11y/focus.js.map +1 -1
  129. package/lib/es6/a11y/hints.js +0 -3
  130. package/lib/es6/a11y/hints.js.map +1 -1
  131. package/lib/es6/a11y/insights.js +21 -133
  132. package/lib/es6/a11y/insights.js.map +1 -1
  133. package/lib/es6/a11y/intl.js +0 -1
  134. package/lib/es6/a11y/intl.js.map +1 -1
  135. package/lib/es6/a11y/locale.js +4 -18
  136. package/lib/es6/a11y/locale.js.map +1 -1
  137. package/lib/es6/a11y/serialize.js +23 -74
  138. package/lib/es6/a11y/serialize.js.map +1 -1
  139. package/lib/es6/a11y/summarize.js.map +1 -1
  140. package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
  141. package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
  142. package/lib/es6/color.js +0 -1
  143. package/lib/es6/color.js.map +1 -1
  144. package/lib/es6/createElement.js +18 -34
  145. package/lib/es6/createElement.js.map +1 -1
  146. package/lib/es6/index.js.map +1 -1
  147. package/lib/es6/types/Plot.d.js.map +1 -1
  148. package/lib/es6/types/index.d.js +5 -3
  149. package/lib/es6/types/index.d.js.map +1 -1
  150. package/lib/es6/utils.js +7 -28
  151. package/lib/es6/utils.js.map +1 -1
  152. package/package.json +1 -1
package/lib/es6/Plot.js CHANGED
@@ -16,66 +16,41 @@ import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhan
16
16
  import { eventToPoint, uniqueId } from './utils';
17
17
  import { PlotA11yModule } from './a11y/PlotA11yModule';
18
18
  import { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';
19
-
20
19
  /*__reshadow-styles__:"./style/plot.shadow.css"*/
21
- var style = (
22
- /*__reshadow_css_start__*/
23
- _sstyled.insert(
24
- /*__inner_css_start__*/
25
- ".___SPlot_qies2_gg_{overflow:hidden}.___SPlot_qies2_gg_:active,.___SPlot_qies2_gg_:focus{outline:0;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_qies2_gg_.__keyboardFocused_qies2_gg_{border:1px solid var(--intergalactic-chart-palette-order-9, #008ff8);box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.3))}"
26
- /*__inner_css_end__*/
27
- , "qies2_gg_")
28
- /*__reshadow_css_end__*/
29
- , {
30
- "__SPlot": "___SPlot_qies2_gg_",
31
- "_keyboardFocused": "__keyboardFocused_qies2_gg_"
20
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlot_166kp_gg_{overflow:hidden}.___SPlot_166kp_gg_:active,.___SPlot_166kp_gg_:focus{outline:0;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_166kp_gg_.__keyboardFocused_166kp_gg_{border:1px solid var(--intergalactic-chart-palette-order-9, #008ff8);box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.3))}" /*__inner_css_end__*/, "166kp_gg_") /*__reshadow_css_end__*/, {
21
+ "__SPlot": "___SPlot_166kp_gg_",
22
+ "_keyboardFocused": "__keyboardFocused_166kp_gg_"
32
23
  });
33
-
34
24
  var PlotRoot = /*#__PURE__*/function (_Component) {
35
25
  _inherits(PlotRoot, _Component);
36
-
37
26
  var _super = _createSuper(PlotRoot);
38
-
39
27
  function PlotRoot(props) {
40
28
  var _this;
41
-
42
29
  _classCallCheck(this, PlotRoot);
43
-
44
30
  _this = _super.call(this, props);
45
-
46
31
  _defineProperty(_assertThisInitialized(_this), "plotId", uniqueId());
47
-
48
32
  _defineProperty(_assertThisInitialized(_this), "rootRef", /*#__PURE__*/React.createRef());
49
-
50
33
  _defineProperty(_assertThisInitialized(_this), "dataStructureHints", makeDataHintsContainer());
51
-
52
34
  _defineProperty(_assertThisInitialized(_this), "dataHintsHandler", makeDataHintsHandlers(_this.dataStructureHints));
53
-
54
35
  _defineProperty(_assertThisInitialized(_this), "handlerMouseMove", function (e) {
55
36
  var scale = _this.asProps.scale;
56
-
57
37
  _this.eventEmitter.emit("onMouseMoveRoot", e);
58
-
59
38
  if (scale && scale.length >= 2) {
60
39
  var _scale = _slicedToArray(scale, 2),
61
- xScale = _scale[0],
62
- yScale = _scale[1];
63
-
40
+ xScale = _scale[0],
41
+ yScale = _scale[1];
64
42
  var _eventToPoint = eventToPoint(e, _this.rootRef.current),
65
- _eventToPoint2 = _slicedToArray(_eventToPoint, 2),
66
- pX = _eventToPoint2[0],
67
- pY = _eventToPoint2[1];
68
-
43
+ _eventToPoint2 = _slicedToArray(_eventToPoint, 2),
44
+ pX = _eventToPoint2[0],
45
+ pY = _eventToPoint2[1];
69
46
  var _xScale$range = xScale.range(),
70
- _xScale$range2 = _slicedToArray(_xScale$range, 2),
71
- minX = _xScale$range2[0],
72
- maxX = _xScale$range2[1];
73
-
47
+ _xScale$range2 = _slicedToArray(_xScale$range, 2),
48
+ minX = _xScale$range2[0],
49
+ maxX = _xScale$range2[1];
74
50
  var _yScale$range = yScale.range(),
75
- _yScale$range2 = _slicedToArray(_yScale$range, 2),
76
- maxY = _yScale$range2[0],
77
- minY = _yScale$range2[1];
78
-
51
+ _yScale$range2 = _slicedToArray(_yScale$range, 2),
52
+ maxY = _yScale$range2[0],
53
+ minY = _yScale$range2[1];
79
54
  if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {
80
55
  _this.eventEmitter.emit('onMouseMoveChart', e);
81
56
  } else {
@@ -83,33 +58,26 @@ var PlotRoot = /*#__PURE__*/function (_Component) {
83
58
  }
84
59
  }
85
60
  });
86
-
87
61
  _defineProperty(_assertThisInitialized(_this), "handlerMouseLeave", function (e) {
88
62
  _this.eventEmitter.emit("onMouseLeaveRoot", e);
89
-
90
63
  _this.eventEmitter.emit('onMouseLeaveChart', e);
91
64
  });
92
-
93
65
  _this.eventEmitter = props.eventEmitter || new EventEmitter();
94
66
  return _this;
95
67
  }
96
-
97
68
  _createClass(PlotRoot, [{
98
69
  key: "setContext",
99
70
  value: function setContext() {
100
71
  var _scale$, _scale$$domain;
101
-
102
72
  var _this$asProps = this.asProps,
103
- scale = _this$asProps.scale,
104
- data = _this$asProps.data,
105
- width = _this$asProps.width,
106
- height = _this$asProps.height;
73
+ scale = _this$asProps.scale,
74
+ data = _this$asProps.data,
75
+ width = _this$asProps.width,
76
+ height = _this$asProps.height;
107
77
  var yScaleDomain = scale === null || scale === void 0 ? void 0 : (_scale$ = scale[1]) === null || _scale$ === void 0 ? void 0 : (_scale$$domain = _scale$.domain) === null || _scale$$domain === void 0 ? void 0 : _scale$$domain.call(_scale$);
108
-
109
78
  if (yScaleDomain !== null && yScaleDomain !== void 0 && yScaleDomain.length && data !== null && data !== void 0 && data.length) {
110
79
  this.dataHintsHandler.setPointsDensity(data.length / width, Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height);
111
80
  }
112
-
113
81
  return {
114
82
  $rootProps: {
115
83
  size: [width, height],
@@ -125,18 +93,17 @@ var PlotRoot = /*#__PURE__*/function (_Component) {
125
93
  key: "render",
126
94
  value: function render() {
127
95
  var _ref = this.asProps,
128
- _ref2;
129
-
96
+ _ref2;
130
97
  var SPlot = Box;
131
98
  var _this$asProps2 = this.asProps,
132
- styles = _this$asProps2.styles,
133
- width = _this$asProps2.width,
134
- height = _this$asProps2.height,
135
- Children = _this$asProps2.Children,
136
- data = _this$asProps2.data,
137
- a11yAltTextConfig = _this$asProps2.a11yAltTextConfig,
138
- label = _this$asProps2.label,
139
- locale = _this$asProps2.locale;
99
+ styles = _this$asProps2.styles,
100
+ width = _this$asProps2.width,
101
+ height = _this$asProps2.height,
102
+ Children = _this$asProps2.Children,
103
+ data = _this$asProps2.data,
104
+ a11yAltTextConfig = _this$asProps2.a11yAltTextConfig,
105
+ label = _this$asProps2.label,
106
+ locale = _this$asProps2.locale;
140
107
  if (!width || !height) return null;
141
108
  return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SPlot, _ref2.cn("SPlot", _objectSpread({}, _assignProps({
142
109
  "tag": "svg",
@@ -161,22 +128,16 @@ var PlotRoot = /*#__PURE__*/function (_Component) {
161
128
  })))));
162
129
  }
163
130
  }]);
164
-
165
131
  return PlotRoot;
166
132
  }(Component);
167
-
168
133
  _defineProperty(PlotRoot, "displayName", 'Plot');
169
-
170
134
  _defineProperty(PlotRoot, "style", style);
171
-
172
135
  _defineProperty(PlotRoot, "defaultProps", function () {
173
136
  return {
174
137
  width: 0,
175
138
  height: 0
176
139
  };
177
140
  });
178
-
179
141
  _defineProperty(PlotRoot, "enhance", [keyboardFocusEnhance()]);
180
-
181
142
  export default createComponent(PlotRoot);
182
143
  //# sourceMappingURL=Plot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Plot.js","names":["React","createComponent","Component","Root","sstyled","Box","EventEmitter","keyboardFocusEnhance","eventToPoint","uniqueId","PlotA11yModule","makeDataHintsHandlers","makeDataHintsContainer","PlotRoot","props","createRef","dataStructureHints","e","scale","asProps","eventEmitter","emit","length","xScale","yScale","rootRef","current","pX","pY","range","minX","maxX","maxY","minY","data","width","height","yScaleDomain","domain","dataHintsHandler","setPointsDensity","Math","abs","$rootProps","size","SPlot","styles","Children","a11yAltTextConfig","label","locale","handlerMouseMove","handlerMouseLeave","plotId","style"],"sources":["../../src/Plot.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport EventEmitter from '@semcore/utils/lib/eventEmitter';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { eventToPoint, uniqueId } from './utils';\nimport { PlotA11yModule } from './a11y/PlotA11yModule';\nimport { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';\n\nimport style from './style/plot.shadow.css';\n\nclass PlotRoot extends Component {\n static displayName = 'Plot';\n static style = style;\n\n constructor(props) {\n super(props);\n this.eventEmitter = props.eventEmitter || new EventEmitter();\n }\n\n static defaultProps = () => ({\n width: 0,\n height: 0,\n });\n\n static enhance = [keyboardFocusEnhance()];\n\n plotId = uniqueId();\n\n rootRef = React.createRef();\n\n dataStructureHints = makeDataHintsContainer();\n dataHintsHandler = makeDataHintsHandlers(this.dataStructureHints);\n\n handlerMouseMove = (e) => {\n const { scale } = this.asProps;\n this.eventEmitter.emit(`onMouseMoveRoot`, e);\n\n if (scale && scale.length >= 2) {\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, this.rootRef.current);\n const [minX, maxX] = xScale.range();\n const [maxY, minY] = yScale.range();\n\n if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {\n this.eventEmitter.emit('onMouseMoveChart', e);\n } else {\n this.eventEmitter.emit('onMouseLeaveChart', e);\n }\n }\n };\n\n handlerMouseLeave = (e) => {\n this.eventEmitter.emit(`onMouseLeaveRoot`, e);\n this.eventEmitter.emit('onMouseLeaveChart', e);\n };\n\n setContext() {\n const { scale, data, width, height } = this.asProps;\n\n const yScaleDomain = scale?.[1]?.domain?.();\n if (yScaleDomain?.length && data?.length) {\n this.dataHintsHandler.setPointsDensity(\n data.length / width,\n Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height,\n );\n }\n\n return {\n $rootProps: {\n size: [width, height],\n data: data,\n scale: scale,\n eventEmitter: this.eventEmitter,\n rootRef: this.rootRef,\n dataHintsHandler: this.dataHintsHandler,\n },\n };\n }\n\n render() {\n const SPlot = Root;\n const { styles, width, height, Children, data, a11yAltTextConfig, label, locale } =\n this.asProps;\n\n if (!width || !height) return null;\n\n return sstyled(styles)(\n <>\n <SPlot\n render={Box}\n tag=\"svg\"\n __excludeProps={['data', 'scale']}\n ref={this.rootRef}\n onMouseMove={this.handlerMouseMove}\n onMouseLeave={this.handlerMouseLeave}\n aria-label={label}\n tabIndex={0}\n >\n <Children />\n <foreignObject width=\"100%\" height=\"100%\" data-aria-only>\n <PlotA11yModule\n id={this.plotId}\n data={data}\n plotLabel={label}\n locale={locale}\n plotRef={this.rootRef}\n hints={this.dataStructureHints}\n config={a11yAltTextConfig}\n />\n </foreignObject>\n </SPlot>\n </>,\n );\n }\n}\n\nexport default createComponent(PlotRoot);\n"],"mappings":";;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,eAAP,IAA0BC,SAA1B,EAAqCC,IAArC,EAA2CC,OAA3C,QAA0D,eAA1D;AACA,SAASC,GAAT,QAAoB,mBAApB;AACA,OAAOC,YAAP,MAAyB,iCAAzB;AACA,OAAOC,oBAAP,MAAiC,kDAAjC;AACA,SAASC,YAAT,EAAuBC,QAAvB,QAAuC,SAAvC;AACA,SAASC,cAAT,QAA+B,uBAA/B;AACA,SAASC,qBAAT,EAAgCC,sBAAhC,QAA8D,cAA9D;;;;;;;;;;;;;;;;IAIMC,Q;;;;;EAIJ,kBAAYC,KAAZ,EAAmB;IAAA;;IAAA;;IACjB,0BAAMA,KAAN;;IADiB,yDAYVL,QAAQ,EAZE;;IAAA,uEAcTT,KAAK,CAACe,SAAN,EAdS;;IAAA,qEAgBEH,sBAAsB,EAhBxB;;IAAA,mEAiBAD,qBAAqB,CAAC,MAAKK,kBAAN,CAjBrB;;IAAA,mEAmBA,UAACC,CAAD,EAAO;MACxB,IAAQC,KAAR,GAAkB,MAAKC,OAAvB,CAAQD,KAAR;;MACA,MAAKE,YAAL,CAAkBC,IAAlB,oBAA0CJ,CAA1C;;MAEA,IAAIC,KAAK,IAAIA,KAAK,CAACI,MAAN,IAAgB,CAA7B,EAAgC;QAC9B,4BAAyBJ,KAAzB;QAAA,IAAOK,MAAP;QAAA,IAAeC,MAAf;;QACA,oBAAiBhB,YAAY,CAACS,CAAD,EAAI,MAAKQ,OAAL,CAAaC,OAAjB,CAA7B;QAAA;QAAA,IAAOC,EAAP;QAAA,IAAWC,EAAX;;QACA,oBAAqBL,MAAM,CAACM,KAAP,EAArB;QAAA;QAAA,IAAOC,IAAP;QAAA,IAAaC,IAAb;;QACA,oBAAqBP,MAAM,CAACK,KAAP,EAArB;QAAA;QAAA,IAAOG,IAAP;QAAA,IAAaC,IAAb;;QAEA,IAAIN,EAAE,IAAIG,IAAN,IAAcH,EAAE,IAAII,IAApB,IAA4BH,EAAE,IAAIK,IAAlC,IAA0CL,EAAE,IAAII,IAApD,EAA0D;UACxD,MAAKZ,YAAL,CAAkBC,IAAlB,CAAuB,kBAAvB,EAA2CJ,CAA3C;QACD,CAFD,MAEO;UACL,MAAKG,YAAL,CAAkBC,IAAlB,CAAuB,mBAAvB,EAA4CJ,CAA5C;QACD;MACF;IACF,CAnCkB;;IAAA,oEAqCC,UAACA,CAAD,EAAO;MACzB,MAAKG,YAAL,CAAkBC,IAAlB,qBAA2CJ,CAA3C;;MACA,MAAKG,YAAL,CAAkBC,IAAlB,CAAuB,mBAAvB,EAA4CJ,CAA5C;IACD,CAxCkB;;IAEjB,MAAKG,YAAL,GAAoBN,KAAK,CAACM,YAAN,IAAsB,IAAId,YAAJ,EAA1C;IAFiB;EAGlB;;;;WAuCD,sBAAa;MAAA;;MACX,oBAAuC,KAAKa,OAA5C;MAAA,IAAQD,KAAR,iBAAQA,KAAR;MAAA,IAAegB,IAAf,iBAAeA,IAAf;MAAA,IAAqBC,KAArB,iBAAqBA,KAArB;MAAA,IAA4BC,MAA5B,iBAA4BA,MAA5B;MAEA,IAAMC,YAAY,GAAGnB,KAAH,aAAGA,KAAH,kCAAGA,KAAK,CAAG,CAAH,CAAR,8DAAG,QAAYoB,MAAf,mDAAG,4BAArB;;MACA,IAAID,YAAY,SAAZ,IAAAA,YAAY,WAAZ,IAAAA,YAAY,CAAEf,MAAd,IAAwBY,IAAxB,aAAwBA,IAAxB,eAAwBA,IAAI,CAAEZ,MAAlC,EAA0C;QACxC,KAAKiB,gBAAL,CAAsBC,gBAAtB,CACEN,IAAI,CAACZ,MAAL,GAAca,KADhB,EAEEM,IAAI,CAACC,GAAL,CAASL,YAAY,CAAC,CAAD,CAAZ,GAAkBA,YAAY,CAAC,CAAD,CAAvC,IAA8CD,MAFhD;MAID;;MAED,OAAO;QACLO,UAAU,EAAE;UACVC,IAAI,EAAE,CAACT,KAAD,EAAQC,MAAR,CADI;UAEVF,IAAI,EAAEA,IAFI;UAGVhB,KAAK,EAAEA,KAHG;UAIVE,YAAY,EAAE,KAAKA,YAJT;UAKVK,OAAO,EAAE,KAAKA,OALJ;UAMVc,gBAAgB,EAAE,KAAKA;QANb;MADP,CAAP;IAUD;;;WAED,kBAAS;MAAA;MAAA;;MACP,IAAMM,KAAK,GASGxC,GATd;MACA,qBACE,KAAKc,OADP;MAAA,IAAQ2B,MAAR,kBAAQA,MAAR;MAAA,IAAgBX,KAAhB,kBAAgBA,KAAhB;MAAA,IAAuBC,MAAvB,kBAAuBA,MAAvB;MAAA,IAA+BW,QAA/B,kBAA+BA,QAA/B;MAAA,IAAyCb,IAAzC,kBAAyCA,IAAzC;MAAA,IAA+Cc,iBAA/C,kBAA+CA,iBAA/C;MAAA,IAAkEC,KAAlE,kBAAkEA,KAAlE;MAAA,IAAyEC,MAAzE,kBAAyEA,MAAzE;MAGA,IAAI,CAACf,KAAD,IAAU,CAACC,MAAf,EAAuB,OAAO,IAAP;MAEvB,eAAOhC,OAAO,CAAC0C,MAAD,CAAd,eACE,uDACE,oBAAC,KAAD;QAAA,OAEM,KAFN;QAAA,kBAGkB,CAAC,MAAD,EAAS,OAAT,CAHlB;QAAA,OAIO,KAAKrB,OAJZ;QAAA,eAKe,KAAK0B,gBALpB;QAAA,gBAMgB,KAAKC,iBANrB;QAAA,cAOcH,KAPd;QAAA,YAQY;MARZ,yBAUE,oBAAC,QAAD,2BAVF,eAWE;QAAA,SAAqB,MAArB;QAAA,UAAmC,MAAnC;QAAA;MAAA,iBACE,oBAAC,cAAD;QAAA,MACM,KAAKI,MADX;QAAA,QAEQnB,IAFR;QAAA,aAGae,KAHb;QAAA,UAIUC,MAJV;QAAA,WAKW,KAAKzB,OALhB;QAAA,SAMS,KAAKT,kBANd;QAAA,UAOUgC;MAPV,GADF,CAXF,CADF,CADF;IA2BD;;;;EAvGoB9C,S;;gBAAjBW,Q,iBACiB,M;;gBADjBA,Q,WAEWyC,K;;gBAFXzC,Q,kBASkB;EAAA,OAAO;IAC3BsB,KAAK,EAAE,CADoB;IAE3BC,MAAM,EAAE;EAFmB,CAAP;AAAA,C;;gBATlBvB,Q,aAca,CAACN,oBAAoB,EAArB,C;;AA4FnB,eAAeN,eAAe,CAACY,QAAD,CAA9B"}
1
+ {"version":3,"file":"Plot.js","names":["React","createComponent","Component","Root","sstyled","Box","EventEmitter","keyboardFocusEnhance","eventToPoint","uniqueId","PlotA11yModule","makeDataHintsHandlers","makeDataHintsContainer","style","_sstyled","insert","PlotRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","dataStructureHints","e","scale","asProps","eventEmitter","emit","length","_scale","_slicedToArray","xScale","yScale","_eventToPoint","rootRef","current","_eventToPoint2","pX","pY","_xScale$range","range","_xScale$range2","minX","maxX","_yScale$range","_yScale$range2","maxY","minY","_createClass","key","value","setContext","_scale$","_scale$$domain","_this$asProps","data","width","height","yScaleDomain","domain","dataHintsHandler","setPointsDensity","Math","abs","$rootProps","size","render","_ref","_ref2","SPlot","_this$asProps2","styles","Children","a11yAltTextConfig","label","locale","createElement","Fragment","cn","_objectSpread","_assignProps","handlerMouseMove","handlerMouseLeave","plotId"],"sources":["../../src/Plot.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport EventEmitter from '@semcore/utils/lib/eventEmitter';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { eventToPoint, uniqueId } from './utils';\nimport { PlotA11yModule } from './a11y/PlotA11yModule';\nimport { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';\n\nimport style from './style/plot.shadow.css';\n\nclass PlotRoot extends Component {\n static displayName = 'Plot';\n static style = style;\n\n constructor(props) {\n super(props);\n this.eventEmitter = props.eventEmitter || new EventEmitter();\n }\n\n static defaultProps = () => ({\n width: 0,\n height: 0,\n });\n\n static enhance = [keyboardFocusEnhance()];\n\n plotId = uniqueId();\n\n rootRef = React.createRef();\n\n dataStructureHints = makeDataHintsContainer();\n dataHintsHandler = makeDataHintsHandlers(this.dataStructureHints);\n\n handlerMouseMove = (e) => {\n const { scale } = this.asProps;\n this.eventEmitter.emit(`onMouseMoveRoot`, e);\n\n if (scale && scale.length >= 2) {\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, this.rootRef.current);\n const [minX, maxX] = xScale.range();\n const [maxY, minY] = yScale.range();\n\n if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {\n this.eventEmitter.emit('onMouseMoveChart', e);\n } else {\n this.eventEmitter.emit('onMouseLeaveChart', e);\n }\n }\n };\n\n handlerMouseLeave = (e) => {\n this.eventEmitter.emit(`onMouseLeaveRoot`, e);\n this.eventEmitter.emit('onMouseLeaveChart', e);\n };\n\n setContext() {\n const { scale, data, width, height } = this.asProps;\n\n const yScaleDomain = scale?.[1]?.domain?.();\n if (yScaleDomain?.length && data?.length) {\n this.dataHintsHandler.setPointsDensity(\n data.length / width,\n Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height,\n );\n }\n\n return {\n $rootProps: {\n size: [width, height],\n data: data,\n scale: scale,\n eventEmitter: this.eventEmitter,\n rootRef: this.rootRef,\n dataHintsHandler: this.dataHintsHandler,\n },\n };\n }\n\n render() {\n const SPlot = Root;\n const { styles, width, height, Children, data, a11yAltTextConfig, label, locale } =\n this.asProps;\n\n if (!width || !height) return null;\n\n return sstyled(styles)(\n <>\n <SPlot\n render={Box}\n tag=\"svg\"\n __excludeProps={['data', 'scale']}\n ref={this.rootRef}\n onMouseMove={this.handlerMouseMove}\n onMouseLeave={this.handlerMouseLeave}\n aria-label={label}\n tabIndex={0}\n >\n <Children />\n <foreignObject width=\"100%\" height=\"100%\" data-aria-only>\n <PlotA11yModule\n id={this.plotId}\n data={data}\n plotLabel={label}\n locale={locale}\n plotRef={this.rootRef}\n hints={this.dataStructureHints}\n config={a11yAltTextConfig}\n />\n </foreignObject>\n </SPlot>\n </>,\n );\n }\n}\n\nexport default createComponent(PlotRoot);\n"],"mappings":"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"}