@semcore/d3-chart 2.2.6 → 2.3.0-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/CHANGELOG.md +3 -9
  2. package/lib/cjs/Area.js +16 -9
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +56 -17
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +20 -9
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +20 -11
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +1 -0
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +22 -12
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +10 -9
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +12 -8
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +20 -9
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +8 -4
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +15 -9
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +46 -8
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/RadialTree.js +25 -13
  27. package/lib/cjs/RadialTree.js.map +1 -1
  28. package/lib/cjs/ReferenceLine.js +10 -10
  29. package/lib/cjs/ResponsiveContainer.js +0 -1
  30. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  31. package/lib/cjs/ScatterPlot.js +17 -8
  32. package/lib/cjs/ScatterPlot.js.map +1 -1
  33. package/lib/cjs/StackBar.js +12 -8
  34. package/lib/cjs/StackBar.js.map +1 -1
  35. package/lib/cjs/StackedArea.js +8 -7
  36. package/lib/cjs/StackedArea.js.map +1 -1
  37. package/lib/cjs/Tooltip.js +8 -8
  38. package/lib/cjs/Venn.js +25 -9
  39. package/lib/cjs/Venn.js.map +1 -1
  40. package/lib/cjs/a11y/PlotA11yModule.js +185 -0
  41. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -0
  42. package/lib/cjs/a11y/PlotA11yView.js +285 -0
  43. package/lib/cjs/a11y/PlotA11yView.js.map +1 -0
  44. package/lib/cjs/a11y/bezier.js +44 -0
  45. package/lib/cjs/a11y/bezier.js.map +1 -0
  46. package/lib/cjs/a11y/datasets/charts-a11y.js +591 -0
  47. package/lib/cjs/a11y/datasets/charts-a11y.js.map +1 -0
  48. package/lib/cjs/a11y/datasets/gold.json +7961 -0
  49. package/lib/cjs/a11y/datasets/imdb.json +10002 -0
  50. package/lib/cjs/a11y/datasets/readme.md +5 -0
  51. package/lib/cjs/a11y/datasets/stores.json +6274 -0
  52. package/lib/cjs/a11y/datasets/titanic.json +5436 -0
  53. package/lib/cjs/a11y/focus.js +57 -0
  54. package/lib/cjs/a11y/focus.js.map +1 -0
  55. package/lib/cjs/a11y/hints.js +141 -0
  56. package/lib/cjs/a11y/hints.js.map +1 -0
  57. package/lib/cjs/a11y/insights.js +785 -0
  58. package/lib/cjs/a11y/insights.js.map +1 -0
  59. package/lib/cjs/a11y/intl.js +31 -0
  60. package/lib/cjs/a11y/intl.js.map +1 -0
  61. package/lib/cjs/a11y/locale.js +48 -0
  62. package/lib/cjs/a11y/locale.js.map +1 -0
  63. package/lib/cjs/a11y/serialize.js +439 -0
  64. package/lib/cjs/a11y/serialize.js.map +1 -0
  65. package/lib/cjs/a11y/summarize.js +21 -0
  66. package/lib/cjs/a11y/summarize.js.map +1 -0
  67. package/lib/cjs/a11y/translations/module/de.json +5 -0
  68. package/lib/cjs/a11y/translations/module/en.json +5 -0
  69. package/lib/cjs/a11y/translations/module/es.json +5 -0
  70. package/lib/cjs/a11y/translations/module/fr.json +5 -0
  71. package/lib/cjs/a11y/translations/module/it.json +5 -0
  72. package/lib/cjs/a11y/translations/module/ja.json +5 -0
  73. package/lib/cjs/a11y/translations/module/ko.json +5 -0
  74. package/lib/cjs/a11y/translations/module/pt.json +5 -0
  75. package/lib/cjs/a11y/translations/module/tr.json +5 -0
  76. package/lib/cjs/a11y/translations/module/translations.js +46 -0
  77. package/lib/cjs/a11y/translations/module/translations.js.map +1 -0
  78. package/lib/cjs/a11y/translations/module/vi.json +5 -0
  79. package/lib/cjs/a11y/translations/module/zh.json +5 -0
  80. package/lib/cjs/a11y/translations/view/de.json +42 -0
  81. package/lib/cjs/a11y/translations/view/en.csv +41 -0
  82. package/lib/cjs/a11y/translations/view/en.json +42 -0
  83. package/lib/cjs/a11y/translations/view/es.json +42 -0
  84. package/lib/cjs/a11y/translations/view/fr.json +42 -0
  85. package/lib/cjs/a11y/translations/view/it.json +42 -0
  86. package/lib/cjs/a11y/translations/view/ja.json +42 -0
  87. package/lib/cjs/a11y/translations/view/ko.json +42 -0
  88. package/lib/cjs/a11y/translations/view/pt.json +42 -0
  89. package/lib/cjs/a11y/translations/view/tr.json +42 -0
  90. package/lib/cjs/a11y/translations/view/translations.js +46 -0
  91. package/lib/cjs/a11y/translations/view/translations.js.map +1 -0
  92. package/lib/cjs/a11y/translations/view/vi.json +42 -0
  93. package/lib/cjs/a11y/translations/view/zh.json +42 -0
  94. package/lib/cjs/createElement.js +3 -1
  95. package/lib/cjs/createElement.js.map +1 -1
  96. package/lib/cjs/style/plot.shadow.css +10 -0
  97. package/lib/cjs/style/plotA11yModule.shadow.css +13 -0
  98. package/lib/cjs/style/plotA11yView.shadow.css +39 -0
  99. package/lib/cjs/types/Plot.d.ts +75 -0
  100. package/lib/cjs/utils.js +9 -1
  101. package/lib/cjs/utils.js.map +1 -1
  102. package/lib/es6/Area.js +16 -9
  103. package/lib/es6/Area.js.map +1 -1
  104. package/lib/es6/Axis.js +56 -17
  105. package/lib/es6/Axis.js.map +1 -1
  106. package/lib/es6/Bar.js +20 -9
  107. package/lib/es6/Bar.js.map +1 -1
  108. package/lib/es6/Bubble.js +20 -11
  109. package/lib/es6/Bubble.js.map +1 -1
  110. package/lib/es6/ClipPath.js +1 -0
  111. package/lib/es6/ClipPath.js.map +1 -1
  112. package/lib/es6/Donut.js +22 -12
  113. package/lib/es6/Donut.js.map +1 -1
  114. package/lib/es6/Dots.js +10 -9
  115. package/lib/es6/Dots.js.map +1 -1
  116. package/lib/es6/GroupBar.js +12 -8
  117. package/lib/es6/GroupBar.js.map +1 -1
  118. package/lib/es6/HorizontalBar.js +20 -9
  119. package/lib/es6/HorizontalBar.js.map +1 -1
  120. package/lib/es6/Hover.js +8 -4
  121. package/lib/es6/Hover.js.map +1 -1
  122. package/lib/es6/Line.js +15 -9
  123. package/lib/es6/Line.js.map +1 -1
  124. package/lib/es6/Plot.js +48 -9
  125. package/lib/es6/Plot.js.map +1 -1
  126. package/lib/es6/RadialTree.js +25 -13
  127. package/lib/es6/RadialTree.js.map +1 -1
  128. package/lib/es6/ReferenceLine.js +10 -10
  129. package/lib/es6/ResponsiveContainer.js +0 -1
  130. package/lib/es6/ResponsiveContainer.js.map +1 -1
  131. package/lib/es6/ScatterPlot.js +17 -8
  132. package/lib/es6/ScatterPlot.js.map +1 -1
  133. package/lib/es6/StackBar.js +12 -8
  134. package/lib/es6/StackBar.js.map +1 -1
  135. package/lib/es6/StackedArea.js +8 -7
  136. package/lib/es6/StackedArea.js.map +1 -1
  137. package/lib/es6/Tooltip.js +8 -8
  138. package/lib/es6/Venn.js +25 -9
  139. package/lib/es6/Venn.js.map +1 -1
  140. package/lib/es6/a11y/PlotA11yModule.js +160 -0
  141. package/lib/es6/a11y/PlotA11yModule.js.map +1 -0
  142. package/lib/es6/a11y/PlotA11yView.js +254 -0
  143. package/lib/es6/a11y/PlotA11yView.js.map +1 -0
  144. package/lib/es6/a11y/bezier.js +35 -0
  145. package/lib/es6/a11y/bezier.js.map +1 -0
  146. package/lib/es6/a11y/datasets/charts-a11y.js +590 -0
  147. package/lib/es6/a11y/datasets/charts-a11y.js.map +1 -0
  148. package/lib/es6/a11y/datasets/gold.json +7961 -0
  149. package/lib/es6/a11y/datasets/imdb.json +10002 -0
  150. package/lib/es6/a11y/datasets/readme.md +5 -0
  151. package/lib/es6/a11y/datasets/stores.json +6274 -0
  152. package/lib/es6/a11y/datasets/titanic.json +5436 -0
  153. package/lib/es6/a11y/focus.js +48 -0
  154. package/lib/es6/a11y/focus.js.map +1 -0
  155. package/lib/es6/a11y/hints.js +123 -0
  156. package/lib/es6/a11y/hints.js.map +1 -0
  157. package/lib/es6/a11y/insights.js +779 -0
  158. package/lib/es6/a11y/insights.js.map +1 -0
  159. package/lib/es6/a11y/intl.js +18 -0
  160. package/lib/es6/a11y/intl.js.map +1 -0
  161. package/lib/es6/a11y/locale.js +36 -0
  162. package/lib/es6/a11y/locale.js.map +1 -0
  163. package/lib/es6/a11y/serialize.js +423 -0
  164. package/lib/es6/a11y/serialize.js.map +1 -0
  165. package/lib/es6/a11y/summarize.js +10 -0
  166. package/lib/es6/a11y/summarize.js.map +1 -0
  167. package/lib/es6/a11y/translations/module/de.json +5 -0
  168. package/lib/es6/a11y/translations/module/en.json +5 -0
  169. package/lib/es6/a11y/translations/module/es.json +5 -0
  170. package/lib/es6/a11y/translations/module/fr.json +5 -0
  171. package/lib/es6/a11y/translations/module/it.json +5 -0
  172. package/lib/es6/a11y/translations/module/ja.json +5 -0
  173. package/lib/es6/a11y/translations/module/ko.json +5 -0
  174. package/lib/es6/a11y/translations/module/pt.json +5 -0
  175. package/lib/es6/a11y/translations/module/tr.json +5 -0
  176. package/lib/es6/a11y/translations/module/translations.js +25 -0
  177. package/lib/es6/a11y/translations/module/translations.js.map +1 -0
  178. package/lib/es6/a11y/translations/module/vi.json +5 -0
  179. package/lib/es6/a11y/translations/module/zh.json +5 -0
  180. package/lib/es6/a11y/translations/view/de.json +42 -0
  181. package/lib/es6/a11y/translations/view/en.csv +41 -0
  182. package/lib/es6/a11y/translations/view/en.json +42 -0
  183. package/lib/es6/a11y/translations/view/es.json +42 -0
  184. package/lib/es6/a11y/translations/view/fr.json +42 -0
  185. package/lib/es6/a11y/translations/view/it.json +42 -0
  186. package/lib/es6/a11y/translations/view/ja.json +42 -0
  187. package/lib/es6/a11y/translations/view/ko.json +42 -0
  188. package/lib/es6/a11y/translations/view/pt.json +42 -0
  189. package/lib/es6/a11y/translations/view/tr.json +42 -0
  190. package/lib/es6/a11y/translations/view/translations.js +25 -0
  191. package/lib/es6/a11y/translations/view/translations.js.map +1 -0
  192. package/lib/es6/a11y/translations/view/vi.json +42 -0
  193. package/lib/es6/a11y/translations/view/zh.json +42 -0
  194. package/lib/es6/createElement.js +3 -1
  195. package/lib/es6/createElement.js.map +1 -1
  196. package/lib/es6/style/plot.shadow.css +10 -0
  197. package/lib/es6/style/plotA11yModule.shadow.css +13 -0
  198. package/lib/es6/style/plotA11yView.shadow.css +39 -0
  199. package/lib/es6/types/Plot.d.ts +75 -0
  200. package/lib/es6/utils.js +5 -0
  201. package/lib/es6/utils.js.map +1 -1
  202. package/lib/types/Plot.d.ts +75 -0
  203. package/lib/types/a11y/PlotA11yModule.d.ts +12 -0
  204. package/lib/types/a11y/PlotA11yView.d.ts +3 -0
  205. package/lib/types/a11y/bezier.d.ts +8 -0
  206. package/lib/types/a11y/datasets/charts-a11y.d.ts +0 -0
  207. package/lib/types/a11y/focus.d.ts +5 -0
  208. package/lib/types/a11y/hints.d.ts +99 -0
  209. package/lib/types/a11y/insights.d.ts +54 -0
  210. package/lib/types/a11y/intl.d.ts +8 -0
  211. package/lib/types/a11y/locale.d.ts +3 -0
  212. package/lib/types/a11y/serialize.d.ts +16 -0
  213. package/lib/types/a11y/summarize.d.ts +2 -0
  214. package/lib/types/a11y/translations/module/translations.d.ts +5 -0
  215. package/lib/types/a11y/translations/view/translations.d.ts +5 -0
  216. package/lib/types/utils.d.ts +1 -0
  217. package/package.json +3 -2
package/CHANGELOG.md CHANGED
@@ -2,17 +2,11 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
- ## [2.2.6] - 2022-08-11
5
+ ## [2.3.0-0] - unreleased
6
6
 
7
- ### Changed
8
-
9
- - Version patch update due to children dependencies update (`@semcore/animation` [1.5.6 ~> 1.5.7], `@semcore/utils` [3.35.1 ~> 3.36.0]).
10
-
11
- ## [2.2.5] - 2022-08-04
12
-
13
- ### Fix
7
+ ### Added
14
8
 
15
- - Fixed `ResponsiveContainer` memory leak on unmount.
9
+ - Introduced charts accessibility module.
16
10
 
17
11
  ## [2.2.4] - 2022-08-02
18
12
 
package/lib/cjs/Area.js CHANGED
@@ -48,18 +48,18 @@ var style = (
48
48
  /*__reshadow_css_start__*/
49
49
  _core.sstyled.insert(
50
50
  /*__inner_css_start__*/
51
- ".___SArea_1noqr_gg_{fill:#2bb3ff;fill-opacity:.2}.___SArea_1noqr_gg_.__color_1noqr_gg_{fill:var(--color_1noqr)}.___SAreaLine_1noqr_gg_{stroke:#2bb3ff;stroke-width:3;fill:transparent}.___SAreaLine_1noqr_gg_.__color_1noqr_gg_{stroke:var(--color_1noqr)}.___SArea_1noqr_gg_,.___SAreaLine_1noqr_gg_{transition-property:d;transition-duration:var(--duration_1noqr);transition-timing-function:ease-in-out}.___SNull_1noqr_gg_{fill:transparent;stroke:#8a8e9b;stroke-dasharray:4}.___SNull_1noqr_gg_.__hide_1noqr_gg_{display:none}"
51
+ ".___SArea_wiwov_gg_{fill:#2bb3ff;fill-opacity:.2}.___SArea_wiwov_gg_.__color_wiwov_gg_{fill:var(--color_wiwov)}.___SAreaLine_wiwov_gg_{stroke:#2bb3ff;stroke-width:3;fill:transparent}.___SAreaLine_wiwov_gg_.__color_wiwov_gg_{stroke:var(--color_wiwov)}.___SArea_wiwov_gg_,.___SAreaLine_wiwov_gg_{transition-property:d;transition-duration:var(--duration_wiwov);transition-timing-function:ease-in-out}.___SNull_wiwov_gg_{fill:transparent;stroke:#8a8e9b;stroke-dasharray:4}.___SNull_wiwov_gg_.__hide_wiwov_gg_{display:none}"
52
52
  /*__inner_css_end__*/
53
- , "1noqr_gg_")
53
+ , "wiwov_gg_")
54
54
  /*__reshadow_css_end__*/
55
55
  , {
56
- "__SArea": "___SArea_1noqr_gg_",
57
- "_color": "__color_1noqr_gg_",
58
- "--color": "--color_1noqr",
59
- "__SAreaLine": "___SAreaLine_1noqr_gg_",
60
- "--duration": "--duration_1noqr",
61
- "__SNull": "___SNull_1noqr_gg_",
62
- "_hide": "__hide_1noqr_gg_"
56
+ "__SArea": "___SArea_wiwov_gg_",
57
+ "_color": "__color_wiwov_gg_",
58
+ "--color": "--color_wiwov",
59
+ "__SAreaLine": "___SAreaLine_wiwov_gg_",
60
+ "--duration": "--duration_wiwov",
61
+ "__SNull": "___SNull_wiwov_gg_",
62
+ "_hide": "__hide_wiwov_gg_"
63
63
  });
64
64
 
65
65
  var AreaRoot = /*#__PURE__*/function (_Component) {
@@ -138,14 +138,20 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
138
138
  uid = _this$asProps4.uid,
139
139
  size = _this$asProps4.size,
140
140
  duration = _this$asProps4.duration,
141
+ x = _this$asProps4.x,
142
+ y = _this$asProps4.y,
141
143
  Children = _this$asProps4.Children;
142
144
  var advanceMode = !!(0, _findComponent["default"])(Children, [Area.Line.displayName]);
145
+ this.asProps.dataHintsHandler.specifyDataRowFields(x, y);
146
+ this.asProps.dataHintsHandler.establishDataType('time-series');
143
147
  return _ref = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, !advanceMode && /*#__PURE__*/_react["default"].createElement(SAreaLine, _ref.cn("SAreaLine", {
148
+ "aria-hidden": true,
144
149
  "clipPath": "url(#".concat(uid, ")"),
145
150
  "d": d3Line(data),
146
151
  "color": color,
147
152
  "use:duration": "".concat(duration, "ms")
148
153
  })), /*#__PURE__*/_react["default"].createElement(SArea, _ref.cn("SArea", {
154
+ "aria-hidden": true,
149
155
  "clipPath": "url(#".concat(uid, ")"),
150
156
  "render": "path",
151
157
  "d": d3(data),
@@ -153,6 +159,7 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
153
159
  "color": color,
154
160
  "use:duration": "".concat(duration, "ms")
155
161
  })), duration && /*#__PURE__*/_react["default"].createElement(_ClipPath["default"], _ref.cn("ClipPath", {
162
+ "aria-hidden": true,
156
163
  "setAttributeTag": function setAttributeTag(rect) {
157
164
  rect.setAttribute('width', size[0]);
158
165
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Area.js","names":["AreaRoot","asProps","x","y","color","data","d3Line","d3","getNullData","definedNullData","duration","uid","SArea","Element","SAreaLine","styles","hide","size","Children","advanceMode","findComponent","Area","Line","displayName","sstyled","rect","setAttribute","Component","style","uniqueIDEnhancement","y0","$rootProps","curve","curveLinear","scale","xScale","yScale","yRange","range","area","defined","definedData","p","scaleOfBandwidth","y1","line","props","Null","SNull","createElement","Dots"],"sources":["../../src/Area.jsx"],"sourcesContent":["import React from 'react';\nimport { area, curveLinear, line } from 'd3-shape';\nimport Dots from './Dots';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { definedData, scaleOfBandwidth, getNullData, definedNullData } from './utils';\nimport ClipPath from './ClipPath';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport findComponent from '@semcore/utils/lib/findComponent';\n\nimport style from './style/area.shadow.css';\n\nclass AreaRoot extends Component {\n static displayName = 'Area';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, y0, $rootProps, curve = curveLinear, scale }) => {\n const [xScale, yScale] = scale || $rootProps.scale;\n const yRange = yScale.range();\n\n return {\n d3: area()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y0((p) => (p[y0] ? scaleOfBandwidth(yScale, p[y0]) : yRange[0]))\n .y1((p) => scaleOfBandwidth(yScale, p[y])),\n d3Line: line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n\n return {\n x,\n y,\n data,\n d3: d3Line,\n color,\n };\n }\n\n getNullProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n return {\n data: getNullData(data, definedNullData(x, y), y),\n d3: d3Line,\n color,\n };\n }\n\n getLineProps() {\n const { duration, color, data, d3Line, uid } = this.asProps;\n\n return {\n uid,\n data,\n d3: d3Line,\n color,\n duration,\n };\n }\n\n render() {\n const SArea = this.Element;\n const SAreaLine = 'path';\n const { styles, hide, d3, d3Line, data, color, uid, size, duration, Children } = this.asProps;\n const advanceMode = !!findComponent(Children, [Area.Line.displayName]);\n\n return sstyled(styles)(\n <>\n {!advanceMode && (\n <SAreaLine\n clipPath={`url(#${uid})`}\n d={d3Line(data)}\n color={color}\n use:duration={`${duration}ms`}\n />\n )}\n <SArea\n clipPath={`url(#${uid})`}\n render=\"path\"\n d={d3(data)}\n hide={hide}\n color={color}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Line(props) {\n const { Element: SAreaLine, styles, d3, data, color, duration, uid } = props;\n return sstyled(styles)(\n <SAreaLine\n render=\"path\"\n clipPath={`url(#${uid})`}\n d={d3(data)}\n color={color}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide, color } = props;\n return sstyled(styles)(<SNull render=\"path\" d={d3(data)} hide={hide} color={color} />);\n}\n\nconst Area = createElement(AreaRoot, {\n Dots,\n Null,\n Line,\n});\n\nexport default Area;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Area.js","names":["AreaRoot","asProps","x","y","color","data","d3Line","d3","getNullData","definedNullData","duration","uid","SArea","Element","SAreaLine","styles","hide","size","Children","advanceMode","findComponent","Area","Line","displayName","dataHintsHandler","specifyDataRowFields","establishDataType","sstyled","rect","setAttribute","Component","style","uniqueIDEnhancement","y0","$rootProps","curve","curveLinear","scale","xScale","yScale","yRange","range","area","defined","definedData","p","scaleOfBandwidth","y1","line","props","Null","SNull","createElement","Dots"],"sources":["../../src/Area.jsx"],"sourcesContent":["import React from 'react';\nimport { area, curveLinear, line } from 'd3-shape';\nimport Dots from './Dots';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { definedData, scaleOfBandwidth, getNullData, definedNullData } from './utils';\nimport ClipPath from './ClipPath';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport findComponent from '@semcore/utils/lib/findComponent';\n\nimport style from './style/area.shadow.css';\n\nclass AreaRoot extends Component {\n static displayName = 'Area';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, y0, $rootProps, curve = curveLinear, scale }) => {\n const [xScale, yScale] = scale || $rootProps.scale;\n const yRange = yScale.range();\n\n return {\n d3: area()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y0((p) => (p[y0] ? scaleOfBandwidth(yScale, p[y0]) : yRange[0]))\n .y1((p) => scaleOfBandwidth(yScale, p[y])),\n d3Line: line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n\n return {\n x,\n y,\n data,\n d3: d3Line,\n color,\n };\n }\n\n getNullProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n return {\n data: getNullData(data, definedNullData(x, y), y),\n d3: d3Line,\n color,\n };\n }\n\n getLineProps() {\n const { duration, color, data, d3Line, uid } = this.asProps;\n\n return {\n uid,\n data,\n d3: d3Line,\n color,\n duration,\n };\n }\n\n render() {\n const SArea = this.Element;\n const SAreaLine = 'path';\n const { styles, hide, d3, d3Line, data, color, uid, size, duration, x, y, Children } =\n this.asProps;\n const advanceMode = !!findComponent(Children, [Area.Line.displayName]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y);\n this.asProps.dataHintsHandler.establishDataType('time-series');\n\n return sstyled(styles)(\n <>\n {!advanceMode && (\n <SAreaLine\n aria-hidden\n clipPath={`url(#${uid})`}\n d={d3Line(data)}\n color={color}\n use:duration={`${duration}ms`}\n />\n )}\n <SArea\n aria-hidden\n clipPath={`url(#${uid})`}\n render=\"path\"\n d={d3(data)}\n hide={hide}\n color={color}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Line(props) {\n const { Element: SAreaLine, styles, d3, data, color, duration, uid } = props;\n return sstyled(styles)(\n <SAreaLine\n render=\"path\"\n clipPath={`url(#${uid})`}\n d={d3(data)}\n color={color}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide, color } = props;\n return sstyled(styles)(<SNull render=\"path\" d={d3(data)} hide={hide} color={color} />);\n}\n\nconst Area = createElement(AreaRoot, {\n Dots,\n Null,\n Line,\n});\n\nexport default Area;\n"],"mappings":"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"}
package/lib/cjs/Axis.js CHANGED
@@ -44,23 +44,23 @@ var style = (
44
44
  /*__reshadow_css_start__*/
45
45
  _core.sstyled.insert(
46
46
  /*__inner_css_start__*/
47
- ".___SAxis_1ph86_gg_{stroke:#c4c7cf}.___SAxis_1ph86_gg_.__hide_1ph86_gg_{display:none}.___STick_1ph86_gg_{font-size:12px;fill:#6c6e79}.___STick_1ph86_gg_.__hide_1ph86_gg_{display:none}.___SGrid_1ph86_gg_{fill:transparent;stroke:#e0e1e9}.___STitle_1ph86_gg_{font-size:12px;fill:#6c6e79;transform-origin:var(--transform-origin_1ph86)}.___STitle_1ph86_gg_._position_top_1ph86_gg_{text-anchor:middle}.___STitle_1ph86_gg_._position_bottom_1ph86_gg_{text-anchor:middle;alignment-baseline:hanging}.___STitle_1ph86_gg_._position_right_1ph86_gg_{transform:rotate(-90deg);alignment-baseline:middle;text-anchor:middle}.___STitle_1ph86_gg_._position_left_1ph86_gg_{transform:rotate(-90deg);text-anchor:middle;alignment-baseline:middle}.___STick_1ph86_gg_._position_top_1ph86_gg_{transform:translateY(-12px);text-anchor:middle}.___STick_1ph86_gg_._position_bottom_1ph86_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_1ph86_gg_._position_right_1ph86_gg_{transform:translateX(16px);text-anchor:start;alignment-baseline:middle}.___STick_1ph86_gg_._position_left_1ph86_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}.___STick_1ph86_gg_._position_custom_0_1ph86_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_1ph86_gg_._position_custom_1_1ph86_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}"
47
+ ".___SAxis_9r1pc_gg_{stroke:#c4c7cf}.___SAxis_9r1pc_gg_.__hide_9r1pc_gg_{display:none}.___STick_9r1pc_gg_{font-size:12px;fill:#6c6e79}.___STick_9r1pc_gg_.__hide_9r1pc_gg_{display:none}.___SGrid_9r1pc_gg_{fill:transparent;stroke:#e0e1e9}.___STitle_9r1pc_gg_{font-size:12px;fill:#6c6e79;transform-origin:var(--transform-origin_9r1pc)}.___STitle_9r1pc_gg_._position_top_9r1pc_gg_{text-anchor:middle}.___STitle_9r1pc_gg_._position_bottom_9r1pc_gg_{text-anchor:middle;alignment-baseline:hanging}.___STitle_9r1pc_gg_._position_right_9r1pc_gg_{transform:rotate(-90deg);alignment-baseline:middle;text-anchor:middle}.___STitle_9r1pc_gg_._position_left_9r1pc_gg_{transform:rotate(-90deg);text-anchor:middle;alignment-baseline:middle}.___STick_9r1pc_gg_._position_top_9r1pc_gg_{transform:translateY(-12px);text-anchor:middle}.___STick_9r1pc_gg_._position_bottom_9r1pc_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_9r1pc_gg_._position_right_9r1pc_gg_{transform:translateX(16px);text-anchor:start;alignment-baseline:middle}.___STick_9r1pc_gg_._position_left_9r1pc_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}.___STick_9r1pc_gg_._position_custom_0_9r1pc_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_9r1pc_gg_._position_custom_1_9r1pc_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}"
48
48
  /*__inner_css_end__*/
49
- , "1ph86_gg_")
49
+ , "9r1pc_gg_")
50
50
  /*__reshadow_css_end__*/
51
51
  , {
52
- "__SAxis": "___SAxis_1ph86_gg_",
53
- "_hide": "__hide_1ph86_gg_",
54
- "__STick": "___STick_1ph86_gg_",
55
- "__SGrid": "___SGrid_1ph86_gg_",
56
- "__STitle": "___STitle_1ph86_gg_",
57
- "--transform-origin": "--transform-origin_1ph86",
58
- "_position_top": "_position_top_1ph86_gg_",
59
- "_position_bottom": "_position_bottom_1ph86_gg_",
60
- "_position_right": "_position_right_1ph86_gg_",
61
- "_position_left": "_position_left_1ph86_gg_",
62
- "_position_custom_0": "_position_custom_0_1ph86_gg_",
63
- "_position_custom_1": "_position_custom_1_1ph86_gg_"
52
+ "__SAxis": "___SAxis_9r1pc_gg_",
53
+ "_hide": "__hide_9r1pc_gg_",
54
+ "__STick": "___STick_9r1pc_gg_",
55
+ "__SGrid": "___SGrid_9r1pc_gg_",
56
+ "__STitle": "___STitle_9r1pc_gg_",
57
+ "--transform-origin": "--transform-origin_9r1pc",
58
+ "_position_top": "_position_top_9r1pc_gg_",
59
+ "_position_bottom": "_position_bottom_9r1pc_gg_",
60
+ "_position_right": "_position_right_9r1pc_gg_",
61
+ "_position_left": "_position_left_9r1pc_gg_",
62
+ "_position_custom_0": "_position_custom_0_9r1pc_gg_",
63
+ "_position_custom_1": "_position_custom_1_9r1pc_gg_"
64
64
  });
65
65
  var CUSTOM_0 = Symbol('custom_0');
66
66
  var CUSTOM_1 = Symbol('custom_1');
@@ -391,13 +391,35 @@ function Ticks(props) {
391
391
  ticks = props.ticks,
392
392
  position = props.position,
393
393
  hide = props.hide,
394
- indexScale = props.indexScale;
394
+ indexScale = props.indexScale,
395
+ dataHintsHandler = props.dataHintsHandler,
396
+ children = props.children;
395
397
  var pos = (_MAP_POSITION_TICK$po = MAP_POSITION_TICK[position]) !== null && _MAP_POSITION_TICK$po !== void 0 ? _MAP_POSITION_TICK$po : MAP_POSITION_TICK[MAP_INDEX_SCALE_SYMBOL[indexScale]];
396
398
  var positionClass = MAP_POSITION_TICK[position] ? position : 'custom_' + indexScale;
399
+
400
+ if (typeof children === 'function') {
401
+ var labelGetter = function labelGetter(value) {
402
+ var _result$value;
403
+
404
+ var result = children({
405
+ value: value
406
+ });
407
+ return (_result$value = result.value) !== null && _result$value !== void 0 ? _result$value : result.children;
408
+ };
409
+
410
+ if (position === 'left' || position === 'right') {
411
+ dataHintsHandler.addKeyLabelGetter('vertical', labelGetter);
412
+ } else if (position === 'top' || position === 'bottom') {
413
+ dataHintsHandler.addKeyLabelGetter('horizontal', labelGetter);
414
+ }
415
+ }
416
+
397
417
  return ticks.map(function (value, i) {
398
418
  var _ref2;
399
419
 
420
+ var displayValue = renderValue(value);
400
421
  return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(STick, _ref2.cn("STick", _objectSpread({
422
+ "aria-hidden": true,
401
423
  "key": i,
402
424
  "render": "text",
403
425
  "childrenPosition": "inside",
@@ -406,7 +428,7 @@ function Ticks(props) {
406
428
  "index": i,
407
429
  "position": positionClass,
408
430
  "hide": hide
409
- }, pos(scale, value, position))), renderValue(value));
431
+ }, pos(scale, value, position))), displayValue);
410
432
  });
411
433
  }
412
434
 
@@ -416,6 +438,15 @@ function Grid(props) {
416
438
  scale = props.scale,
417
439
  ticks = props.ticks,
418
440
  indexScale = props.indexScale;
441
+
442
+ if (ticks.length >= 2) {
443
+ if (indexScale === 1) {
444
+ props.dataHintsHandler.setupGrid('vertical', Math.abs(ticks[1] - ticks[0]));
445
+ } else if (indexScale === 0) {
446
+ props.dataHintsHandler.setupGrid('horizontal', Math.abs(ticks[1] - ticks[0]));
447
+ }
448
+ }
449
+
419
450
  return ticks.map(function (value, i) {
420
451
  var _ref3;
421
452
 
@@ -433,17 +464,25 @@ function Title(props) {
433
464
  styles = props.styles,
434
465
  scale = props.scale,
435
466
  position = props.position,
436
- size = props.size;
467
+ size = props.size,
468
+ children = props.children;
437
469
 
438
470
  var _MAP_POSITION_TITlE$p = MAP_POSITION_TITlE[position](scale, size),
439
471
  x = _MAP_POSITION_TITlE$p.x,
440
472
  y = _MAP_POSITION_TITlE$p.y;
441
473
 
474
+ if (position === 'left' || position === 'right') {
475
+ props.dataHintsHandler.setTitle('vertical', children);
476
+ } else if (position === 'top' || position === 'bottom') {
477
+ props.dataHintsHandler.setTitle('horizontal', children);
478
+ }
479
+
442
480
  var sstyles = (0, _core.sstyled)(styles);
443
481
  var sTitleStyles = sstyles.cn('STitle', {
444
482
  'transform-origin': "".concat(x.toFixed(2), "px ").concat(y.toFixed(2), "px")
445
483
  });
446
484
  return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(STitle, _ref4.cn("STitle", {
485
+ "aria-hidden": true,
447
486
  "render": "text",
448
487
  "childrenPosition": "inside",
449
488
  "position": position,
@@ -1 +1 @@
1
- {"version":3,"file":"Axis.js","names":["CUSTOM_0","Symbol","CUSTOM_1","MAP_INDEX_SCALE_SYMBOL","MAP_POSITION_REVERT","top","right","bottom","left","MAP_POSITION_AXIS","xScale","yScale","xRange","range","yRange","x1","y1","x2","y2","pos","scaleOfBandwidth","MAP_POSITION_TICK","value","x","y","MAP_POSITION_GRID","OFFSET_TITLE","MAP_POSITION_TITlE","height","width","renderValue","Date","toLocaleDateString","AxisRoot","asProps","ticks","indexScale","scale","scl","domain","position","SAxis","Element","styles","hide","sstyled","Component","style","Ticks","props","STick","positionClass","map","i","Grid","SGrid","Title","STitle","size","sstyles","sTitleStyles","cn","toFixed","className","XAxis","createElement","defaultProps","YAxis"],"sources":["../../src/Axis.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { scaleOfBandwidth } from './utils';\n\nimport style from './style/axis.shadow.css';\n\nconst CUSTOM_0 = Symbol('custom_0');\nconst CUSTOM_1 = Symbol('custom_1');\n\nconst MAP_INDEX_SCALE_SYMBOL = {\n 0: CUSTOM_0,\n 1: CUSTOM_1,\n};\n\nconst MAP_POSITION_REVERT = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n};\n\nconst MAP_POSITION_AXIS = {\n top: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[1],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n bottom: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[0],\n };\n },\n right: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[1],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n left: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[0],\n y2: yRange[1],\n };\n },\n [CUSTOM_0]: ([xScale, yScale], pos) => {\n const xRange = xScale.range();\n return {\n x1: xRange[0],\n y1: scaleOfBandwidth(yScale, pos),\n x2: xRange[1],\n y2: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], pos) => {\n const yRange = yScale.range();\n return {\n x1: scaleOfBandwidth(xScale, pos),\n y1: yRange[0],\n x2: scaleOfBandwidth(xScale, pos),\n y2: yRange[1],\n };\n },\n};\n\nconst MAP_POSITION_TICK = {\n top: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[1],\n };\n },\n bottom: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[0],\n };\n },\n right: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[1],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n left: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[0],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n [CUSTOM_0]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, value),\n y: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, pos),\n y: scaleOfBandwidth(yScale, value),\n };\n },\n};\n\nconst MAP_POSITION_GRID = {\n 0: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x1: x,\n y1: yRange[0],\n x2: x,\n y2: yRange[1],\n };\n },\n 1: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x1: xRange[0],\n y1: y,\n x2: xRange[1],\n y2: y,\n };\n },\n};\n\nconst OFFSET_TITLE = 10;\nconst MAP_POSITION_TITlE = {\n top: ([xScale]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: OFFSET_TITLE,\n };\n },\n bottom: ([xScale], [, height]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: height - OFFSET_TITLE,\n };\n },\n right: ([, yScale], [width]) => {\n const yRange = yScale.range();\n return {\n x: width - OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n left: ([, yScale]) => {\n const yRange = yScale.range();\n return {\n x: OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n};\n\nfunction renderValue(value) {\n if (value instanceof Date) {\n return value.toLocaleDateString();\n }\n return value;\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Axis';\n\n static style = style;\n\n get ticks() {\n const { ticks, indexScale, scale } = this.asProps;\n const scl = scale[indexScale];\n return ticks || (scl.ticks && scl.ticks()) || (scl.domain && scl.domain()) || [];\n }\n\n getTitleProps() {\n const { position } = this.asProps;\n return {\n position: MAP_POSITION_REVERT[position],\n };\n }\n\n getTicksProps() {\n const { position, indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n position,\n };\n }\n\n getGridProps() {\n const { indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n };\n }\n\n render() {\n const SAxis = this.Element;\n const { styles, position, scale, hide, indexScale } = this.asProps;\n\n const pos =\n MAP_POSITION_AXIS[position] ?? MAP_POSITION_AXIS[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n\n return sstyled(styles)(<SAxis render=\"line\" hide={hide} {...pos(scale, position)} />);\n }\n}\n\nfunction Ticks(props) {\n const { Element: STick, styles, scale, ticks, position, hide, indexScale } = props;\n\n const pos = MAP_POSITION_TICK[position] ?? MAP_POSITION_TICK[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n const positionClass = MAP_POSITION_TICK[position] ? position : 'custom_' + indexScale;\n\n return ticks.map((value, i) => {\n return sstyled(styles)(\n <STick\n key={i}\n render=\"text\"\n childrenPosition=\"inside\"\n __excludeProps={['data', 'scale', 'format', 'value']}\n value={value}\n index={i}\n position={positionClass}\n hide={hide}\n {...pos(scale, value, position)}\n >\n {renderValue(value)}\n </STick>,\n );\n });\n}\n\nfunction Grid(props) {\n const { Element: SGrid, styles, scale, ticks, indexScale } = props;\n\n return ticks.map((value, i) => {\n return sstyled(styles)(\n <SGrid key={i} render=\"line\" {...MAP_POSITION_GRID[indexScale](scale, value)} />,\n );\n });\n}\n\nfunction Title(props) {\n const { Element: STitle, styles, scale, position, size } = props;\n\n const { x, y } = MAP_POSITION_TITlE[position](scale, size);\n\n const sstyles = sstyled(styles);\n const sTitleStyles = sstyles.cn('STitle', {\n 'transform-origin': `${x.toFixed(2)}px ${y.toFixed(2)}px`,\n });\n\n return sstyled(styles)(\n <STitle\n render=\"text\"\n childrenPosition=\"inside\"\n position={position}\n className={sTitleStyles.className}\n style={sTitleStyles.style}\n x={x}\n y={y}\n />,\n );\n}\n\nconst XAxis = createElement(AxisRoot, {\n Ticks,\n Grid,\n Title,\n});\nXAxis.defaultProps = {\n indexScale: 0,\n position: 'bottom',\n};\n\nconst YAxis = createElement(AxisRoot, {\n Ticks,\n Grid,\n Title,\n});\nYAxis.defaultProps = {\n indexScale: 1,\n position: 'left',\n hide: true,\n};\n\nexport { XAxis, YAxis };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Axis.js","names":["CUSTOM_0","Symbol","CUSTOM_1","MAP_INDEX_SCALE_SYMBOL","MAP_POSITION_REVERT","top","right","bottom","left","MAP_POSITION_AXIS","xScale","yScale","xRange","range","yRange","x1","y1","x2","y2","pos","scaleOfBandwidth","MAP_POSITION_TICK","value","x","y","MAP_POSITION_GRID","OFFSET_TITLE","MAP_POSITION_TITlE","height","width","renderValue","Date","toLocaleDateString","AxisRoot","asProps","ticks","indexScale","scale","scl","domain","position","SAxis","Element","styles","hide","sstyled","Component","style","Ticks","props","STick","dataHintsHandler","children","positionClass","labelGetter","result","addKeyLabelGetter","map","i","displayValue","Grid","SGrid","length","setupGrid","Math","abs","Title","STitle","size","setTitle","sstyles","sTitleStyles","cn","toFixed","className","XAxis","createElement","defaultProps","YAxis"],"sources":["../../src/Axis.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { scaleOfBandwidth } from './utils';\n\nimport style from './style/axis.shadow.css';\n\nconst CUSTOM_0 = Symbol('custom_0');\nconst CUSTOM_1 = Symbol('custom_1');\n\nconst MAP_INDEX_SCALE_SYMBOL = {\n 0: CUSTOM_0,\n 1: CUSTOM_1,\n};\n\nconst MAP_POSITION_REVERT = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n};\n\nconst MAP_POSITION_AXIS = {\n top: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[1],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n bottom: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[0],\n };\n },\n right: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[1],\n y1: yRange[0],\n x2: xRange[1],\n y2: yRange[1],\n };\n },\n left: ([xScale, yScale]) => {\n const xRange = xScale.range();\n const yRange = yScale.range();\n return {\n x1: xRange[0],\n y1: yRange[0],\n x2: xRange[0],\n y2: yRange[1],\n };\n },\n [CUSTOM_0]: ([xScale, yScale], pos) => {\n const xRange = xScale.range();\n return {\n x1: xRange[0],\n y1: scaleOfBandwidth(yScale, pos),\n x2: xRange[1],\n y2: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], pos) => {\n const yRange = yScale.range();\n return {\n x1: scaleOfBandwidth(xScale, pos),\n y1: yRange[0],\n x2: scaleOfBandwidth(xScale, pos),\n y2: yRange[1],\n };\n },\n};\n\nconst MAP_POSITION_TICK = {\n top: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[1],\n };\n },\n bottom: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n return {\n x: scaleOfBandwidth(xScale, value),\n y: yRange[0],\n };\n },\n right: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[1],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n left: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n return {\n x: xRange[0],\n y: scaleOfBandwidth(yScale, value),\n };\n },\n [CUSTOM_0]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, value),\n y: scaleOfBandwidth(yScale, pos),\n };\n },\n [CUSTOM_1]: ([xScale, yScale], value, pos) => {\n return {\n x: scaleOfBandwidth(xScale, pos),\n y: scaleOfBandwidth(yScale, value),\n };\n },\n};\n\nconst MAP_POSITION_GRID = {\n 0: ([xScale, yScale], value) => {\n const yRange = yScale.range();\n const x = scaleOfBandwidth(xScale, value);\n return {\n x1: x,\n y1: yRange[0],\n x2: x,\n y2: yRange[1],\n };\n },\n 1: ([xScale, yScale], value) => {\n const xRange = xScale.range();\n const y = scaleOfBandwidth(yScale, value);\n return {\n x1: xRange[0],\n y1: y,\n x2: xRange[1],\n y2: y,\n };\n },\n};\n\nconst OFFSET_TITLE = 10;\nconst MAP_POSITION_TITlE = {\n top: ([xScale]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: OFFSET_TITLE,\n };\n },\n bottom: ([xScale], [, height]) => {\n const xRange = xScale.range();\n return {\n x: (xRange[1] + xRange[0]) / 2,\n y: height - OFFSET_TITLE,\n };\n },\n right: ([, yScale], [width]) => {\n const yRange = yScale.range();\n return {\n x: width - OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n left: ([, yScale]) => {\n const yRange = yScale.range();\n return {\n x: OFFSET_TITLE,\n y: (yRange[0] + yRange[1]) / 2,\n };\n },\n};\n\nfunction renderValue(value) {\n if (value instanceof Date) {\n return value.toLocaleDateString();\n }\n return value;\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Axis';\n\n static style = style;\n\n get ticks() {\n const { ticks, indexScale, scale } = this.asProps;\n const scl = scale[indexScale];\n return ticks || (scl.ticks && scl.ticks()) || (scl.domain && scl.domain()) || [];\n }\n\n getTitleProps() {\n const { position } = this.asProps;\n return {\n position: MAP_POSITION_REVERT[position],\n };\n }\n\n getTicksProps() {\n const { position, indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n position,\n };\n }\n\n getGridProps() {\n const { indexScale } = this.asProps;\n return {\n ticks: this.ticks,\n indexScale,\n };\n }\n\n render() {\n const SAxis = this.Element;\n const { styles, position, scale, hide, indexScale } = this.asProps;\n\n const pos =\n MAP_POSITION_AXIS[position] ?? MAP_POSITION_AXIS[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n\n return sstyled(styles)(<SAxis render=\"line\" hide={hide} {...pos(scale, position)} />);\n }\n}\n\nfunction Ticks(props) {\n const {\n Element: STick,\n styles,\n scale,\n ticks,\n position,\n hide,\n indexScale,\n dataHintsHandler,\n children,\n } = props;\n\n const pos = MAP_POSITION_TICK[position] ?? MAP_POSITION_TICK[MAP_INDEX_SCALE_SYMBOL[indexScale]];\n const positionClass = MAP_POSITION_TICK[position] ? position : 'custom_' + indexScale;\n\n if (typeof children === 'function') {\n const labelGetter = (value) => {\n const result = children({ value });\n return result.value ?? result.children;\n };\n if (position === 'left' || position === 'right') {\n dataHintsHandler.addKeyLabelGetter('vertical', labelGetter);\n } else if (position === 'top' || position === 'bottom') {\n dataHintsHandler.addKeyLabelGetter('horizontal', labelGetter);\n }\n }\n\n return ticks.map((value, i) => {\n const displayValue = renderValue(value);\n\n return sstyled(styles)(\n <STick\n aria-hidden\n key={i}\n render=\"text\"\n childrenPosition=\"inside\"\n __excludeProps={['data', 'scale', 'format', 'value']}\n value={value}\n index={i}\n position={positionClass}\n hide={hide}\n {...pos(scale, value, position)}\n >\n {displayValue}\n </STick>,\n );\n });\n}\n\nfunction Grid(props) {\n const { Element: SGrid, styles, scale, ticks, indexScale } = props;\n\n if (ticks.length >= 2) {\n if (indexScale === 1) {\n props.dataHintsHandler.setupGrid('vertical', Math.abs(ticks[1] - ticks[0]));\n } else if (indexScale === 0) {\n props.dataHintsHandler.setupGrid('horizontal', Math.abs(ticks[1] - ticks[0]));\n }\n }\n\n return ticks.map((value, i) => {\n return sstyled(styles)(\n <SGrid key={i} render=\"line\" {...MAP_POSITION_GRID[indexScale](scale, value)} />,\n );\n });\n}\n\nfunction Title(props) {\n const { Element: STitle, styles, scale, position, size, children } = props;\n\n const { x, y } = MAP_POSITION_TITlE[position](scale, size);\n\n if (position === 'left' || position === 'right') {\n props.dataHintsHandler.setTitle('vertical', children);\n } else if (position === 'top' || position === 'bottom') {\n props.dataHintsHandler.setTitle('horizontal', children);\n }\n\n const sstyles = sstyled(styles);\n const sTitleStyles = sstyles.cn('STitle', {\n 'transform-origin': `${x.toFixed(2)}px ${y.toFixed(2)}px`,\n });\n\n return sstyled(styles)(\n <STitle\n aria-hidden\n render=\"text\"\n childrenPosition=\"inside\"\n position={position}\n className={sTitleStyles.className}\n style={sTitleStyles.style}\n x={x}\n y={y}\n />,\n );\n}\n\nconst XAxis = createElement(AxisRoot, {\n Ticks,\n Grid,\n Title,\n});\nXAxis.defaultProps = {\n indexScale: 0,\n position: 'bottom',\n};\n\nconst YAxis = createElement(AxisRoot, {\n Ticks,\n Grid,\n Title,\n});\nYAxis.defaultProps = {\n indexScale: 1,\n position: 'left',\n hide: true,\n};\n\nexport { XAxis, YAxis };\n"],"mappings":"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"}
package/lib/cjs/Bar.js CHANGED
@@ -44,17 +44,17 @@ var style = (
44
44
  /*__reshadow_css_start__*/
45
45
  _core.sstyled.insert(
46
46
  /*__inner_css_start__*/
47
- ".___SBar_1th2l_gg_{fill:#2bb3ff;transition-property:height,width,y;transition-duration:var(--duration_1th2l);transition-timing-function:ease-in-out}.___SBar_1th2l_gg_.__color_1th2l_gg_{fill:var(--color_1th2l)}.___SBar_1th2l_gg_.__hide_1th2l_gg_{display:none}.___SBackground_1th2l_gg_{fill:#c4c7cf}"
47
+ ".___SBar_fcz4o_gg_{fill:#2bb3ff;transition-property:height,width,y;transition-duration:var(--duration_fcz4o);transition-timing-function:ease-in-out}.___SBar_fcz4o_gg_.__color_fcz4o_gg_{fill:var(--color_fcz4o)}.___SBar_fcz4o_gg_.__hide_fcz4o_gg_{display:none}.___SBackground_fcz4o_gg_{fill:#c4c7cf}"
48
48
  /*__inner_css_end__*/
49
- , "1th2l_gg_")
49
+ , "fcz4o_gg_")
50
50
  /*__reshadow_css_end__*/
51
51
  , {
52
- "__SBar": "___SBar_1th2l_gg_",
53
- "--duration": "--duration_1th2l",
54
- "_color": "__color_1th2l_gg_",
55
- "--color": "--color_1th2l",
56
- "_hide": "__hide_1th2l_gg_",
57
- "__SBackground": "___SBackground_1th2l_gg_"
52
+ "__SBar": "___SBar_fcz4o_gg_",
53
+ "--duration": "--duration_fcz4o",
54
+ "_color": "__color_fcz4o_gg_",
55
+ "--color": "--color_fcz4o",
56
+ "_hide": "__hide_fcz4o_gg_",
57
+ "__SBackground": "___SBackground_fcz4o_gg_"
58
58
  });
59
59
 
60
60
  var BarRoot = /*#__PURE__*/function (_Component) {
@@ -119,7 +119,8 @@ var BarRoot = /*#__PURE__*/function (_Component) {
119
119
  uid = _this$asProps3.uid,
120
120
  r = _this$asProps3.r,
121
121
  hMin = _this$asProps3.hMin,
122
- widthProps = _this$asProps3.width;
122
+ widthProps = _this$asProps3.width,
123
+ groupKey = _this$asProps3.groupKey;
123
124
 
124
125
  var _scale = (0, _slicedToArray2["default"])(scale, 2),
125
126
  xScale = _scale[0],
@@ -137,7 +138,15 @@ var BarRoot = /*#__PURE__*/function (_Component) {
137
138
  radius: Array.isArray(r) ? r[i] : r,
138
139
  position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom'
139
140
  });
141
+
142
+ if (groupKey) {
143
+ this.asProps.dataHintsHandler.describeGroupedValues(groupKey, y);
144
+ } else {
145
+ this.asProps.dataHintsHandler.describeValueEntity("".concat(i, ".").concat(y), groupKey !== null && groupKey !== void 0 ? groupKey : d[x]);
146
+ }
147
+
140
148
  return _ref = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SBar, _ref.cn("SBar", {
149
+ "aria-hidden": true,
141
150
  "key": "bar-".concat(i),
142
151
  "render": "path",
143
152
  "clipPath": "url(#".concat(uid, ")"),
@@ -164,6 +173,7 @@ var BarRoot = /*#__PURE__*/function (_Component) {
164
173
  size = _this$asProps4.size,
165
174
  duration = _this$asProps4.duration;
166
175
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, data.map(this.renderBar.bind(this)), duration && /*#__PURE__*/_react["default"].createElement(_ClipPath["default"], {
176
+ "aria-hidden": true,
167
177
  key: "".concat(uid, "-animation"),
168
178
  id: uid,
169
179
  x: "0",
@@ -200,6 +210,7 @@ function Background(props) {
200
210
 
201
211
  var yRange = yScale.range();
202
212
  return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SBackground, _ref2.cn("SBackground", {
213
+ "aria-hidden": true,
203
214
  "render": "rect",
204
215
  "childrenPosition": "above",
205
216
  "width": xScale.bandwidth(),
@@ -1 +1 @@
1
- {"version":3,"file":"Bar.js","names":["BarRoot","props","index","asProps","x","data","value","duration","uid","selectRect","transition","selection","selectAll","selectRectNode","node","getAttribute","attr","animationBar","d","i","SBar","Element","styles","color","y","y0","scale","hide","offset","r","hMin","widthProps","width","xScale","yScale","barY","Math","max","Object","is","barX","height","abs","min","domain","getBandwidth","dSvg","getRect","radius","Array","isArray","position","sstyled","size","map","renderBar","bind","Component","style","uniqueIDEnhancement","Background","SBackground","yRange","range","bandwidth","roundedPath","createElement"],"sources":["../../src/Bar.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { getBandwidth, roundedPath } from './utils';\n\nimport style from './style/bar.shadow.css';\n\nclass BarRoot extends Component {\n static displayName = 'Bar';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n hMin: 4,\n };\n\n getBackgroundProps(props, index) {\n const { x, data } = this.asProps;\n return {\n value: data[index][x],\n };\n }\n\n animationBar() {\n const { duration, uid } = this.asProps;\n const selectRect = transition().selection().selectAll(`#${uid} rect`);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {\n selectRect.transition().duration(duration).attr('y', 0);\n }\n }\n\n componentDidUpdate() {\n this.animationBar();\n }\n\n componentDidMount() {\n this.animationBar();\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n x,\n y,\n y0,\n scale,\n hide,\n offset,\n duration,\n uid,\n r,\n hMin,\n width: widthProps,\n } = this.asProps;\n\n const [xScale, yScale] = scale;\n const barY = yScale(Math.max(d[y0] ?? 0, d[y])) + offset[1] - (Object.is(d[y], 0) ? hMin : 0);\n const barX = xScale(d[x]) + offset[0];\n const height =\n Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[y0] ?? 0))) || hMin;\n const width = widthProps || getBandwidth(xScale);\n const dSvg = getRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom',\n });\n\n return sstyled(styles)(\n <SBar\n key={`bar-${i}`}\n render=\"path\"\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value']}\n childrenPosition=\"above\"\n value={d}\n index={i}\n hide={hide}\n color={color}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n use:duration={`${duration}ms`}\n />,\n );\n }\n render() {\n const { data, uid, size, duration } = this.asProps;\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <ClipPath\n key={`${uid}-animation`}\n id={uid}\n x=\"0\"\n y={size[1]}\n width={size[0]}\n height={`${size[1]}px`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n\n const [xScale, yScale] = scale;\n const yRange = yScale.range();\n\n return sstyled(styles)(\n <SBackground\n render=\"rect\"\n childrenPosition=\"above\"\n width={xScale.bandwidth()}\n height={yRange[0] - yRange[1]}\n x={xScale(value)}\n y={yRange[1]}\n />,\n );\n}\n\nfunction getRect({ x, y, width, height, radius, position }) {\n if (height <= radius) return '';\n if (radius) {\n if (position === 'top')\n return roundedPath(x, y, width, height, radius, true, true, false, false);\n return roundedPath(x, y, width, height, radius, false, false, true, true);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(BarRoot, { Background });\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;;AAFA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;IAIMA,O;;;;;;;;;;;;WAYJ,4BAAmBC,KAAnB,EAA0BC,KAA1B,EAAiC;MAC/B,oBAAoB,KAAKC,OAAzB;MAAA,IAAQC,CAAR,iBAAQA,CAAR;MAAA,IAAWC,IAAX,iBAAWA,IAAX;MACA,OAAO;QACLC,KAAK,EAAED,IAAI,CAACH,KAAD,CAAJ,CAAYE,CAAZ;MADF,CAAP;IAGD;;;WAED,wBAAe;MACb,qBAA0B,KAAKD,OAA/B;MAAA,IAAQI,QAAR,kBAAQA,QAAR;MAAA,IAAkBC,GAAlB,kBAAkBA,GAAlB;MACA,IAAMC,UAAU,GAAG,IAAAC,wBAAA,IAAaC,SAAb,GAAyBC,SAAzB,YAAuCJ,GAAvC,WAAnB;MACA,IAAMK,cAAc,GAAGJ,UAAU,CAACK,IAAX,EAAvB;;MAEA,IAAIP,QAAQ,GAAG,CAAX,IAAgBM,cAAhB,IAAkCA,cAAc,CAACE,YAAf,CAA4B,GAA5B,MAAqC,GAA3E,EAAgF;QAC9EN,UAAU,CAACC,UAAX,GAAwBH,QAAxB,CAAiCA,QAAjC,EAA2CS,IAA3C,CAAgD,GAAhD,EAAqD,CAArD;MACD;IACF;;;WAED,8BAAqB;MACnB,KAAKC,YAAL;IACD;;;WAED,6BAAoB;MAClB,KAAKA,YAAL;IACD;;;WAED,mBAAUC,CAAV,EAAaC,CAAb,EAAgB;MAAA;;MACd,IAAMC,IAAI,GAAG,KAAKC,OAAlB;MACA,qBAcI,KAAKlB,OAdT;MAAA,IACEmB,MADF,kBACEA,MADF;MAAA,IAEEC,KAFF,kBAEEA,KAFF;MAAA,IAGEnB,CAHF,kBAGEA,CAHF;MAAA,IAIEoB,CAJF,kBAIEA,CAJF;MAAA,IAKEC,EALF,kBAKEA,EALF;MAAA,IAMEC,KANF,kBAMEA,KANF;MAAA,IAOEC,IAPF,kBAOEA,IAPF;MAAA,IAQEC,MARF,kBAQEA,MARF;MAAA,IASErB,QATF,kBASEA,QATF;MAAA,IAUEC,GAVF,kBAUEA,GAVF;MAAA,IAWEqB,CAXF,kBAWEA,CAXF;MAAA,IAYEC,IAZF,kBAYEA,IAZF;MAAA,IAaSC,UAbT,kBAaEC,KAbF;;MAgBA,6CAAyBN,KAAzB;MAAA,IAAOO,MAAP;MAAA,IAAeC,MAAf;;MACA,IAAMC,IAAI,GAAGD,MAAM,CAACE,IAAI,CAACC,GAAL,SAASnB,CAAC,CAACO,EAAD,CAAV,uCAAkB,CAAlB,EAAqBP,CAAC,CAACM,CAAD,CAAtB,CAAD,CAAN,GAAqCI,MAAM,CAAC,CAAD,CAA3C,IAAkDU,MAAM,CAACC,EAAP,CAAUrB,CAAC,CAACM,CAAD,CAAX,EAAgB,CAAhB,IAAqBM,IAArB,GAA4B,CAA9E,CAAb;MACA,IAAMU,IAAI,GAAGP,MAAM,CAACf,CAAC,CAACd,CAAD,CAAF,CAAN,GAAewB,MAAM,CAAC,CAAD,CAAlC;MACA,IAAMa,MAAM,GACVL,IAAI,CAACM,GAAL,CAASR,MAAM,CAAChB,CAAC,CAACM,CAAD,CAAF,CAAN,GAAeY,IAAI,CAACO,GAAL,CAAST,MAAM,CAACA,MAAM,CAACU,MAAP,GAAgB,CAAhB,CAAD,CAAf,EAAqCV,MAAM,UAAChB,CAAC,CAACO,EAAD,CAAF,yCAAU,CAAV,CAA3C,CAAxB,KAAqFK,IADvF;MAEA,IAAME,KAAK,GAAGD,UAAU,IAAI,IAAAc,mBAAA,EAAaZ,MAAb,CAA5B;MACA,IAAMa,IAAI,GAAGC,OAAO,CAAC;QACnB3C,CAAC,EAAEoC,IADgB;QAEnBhB,CAAC,EAAEW,IAFgB;QAGnBH,KAAK,EAALA,KAHmB;QAInBS,MAAM,EAANA,MAJmB;QAKnBO,MAAM,EAAEC,KAAK,CAACC,OAAN,CAAcrB,CAAd,IAAmBA,CAAC,CAACV,CAAD,CAApB,GAA0BU,CALf;QAMnBsB,QAAQ,EAAEjC,CAAC,CAACM,CAAD,CAAD,GAAO,CAAP,IAAYc,MAAM,CAACC,EAAP,CAAUrB,CAAC,CAACM,CAAD,CAAX,EAAgB,CAAhB,CAAZ,GAAiC,KAAjC,GAAyC;MANhC,CAAD,CAApB;MASA,cAAO,IAAA4B,aAAA,EAAQ9B,MAAR,CAAP,eACE,gCAAC,IAAD;QAAA,qBACcH,CADd;QAAA,UAES,MAFT;QAAA,2BAGoBX,GAHpB;QAAA,kBAIkB,CAAC,MAAD,EAAS,OAAT,EAAkB,OAAlB,CAJlB;QAAA,oBAKmB,OALnB;QAAA,SAMSU,CANT;QAAA,SAOSC,CAPT;QAAA,QAQQQ,IARR;QAAA,SASSJ,KATT;QAAA,KAUKiB,IAVL;QAAA,KAWKL,IAXL;QAAA,SAYSH,KAZT;QAAA,UAaUS,MAbV;QAAA,KAcKK,IAdL;QAAA,0BAemBvC,QAfnB;MAAA,GADF;IAmBD;;;WACD,kBAAS;MACP,qBAAsC,KAAKJ,OAA3C;MAAA,IAAQE,IAAR,kBAAQA,IAAR;MAAA,IAAcG,GAAd,kBAAcA,GAAd;MAAA,IAAmB6C,IAAnB,kBAAmBA,IAAnB;MAAA,IAAyB9C,QAAzB,kBAAyBA,QAAzB;MACA,oBACE,kEACGF,IAAI,CAACiD,GAAL,CAAS,KAAKC,SAAL,CAAeC,IAAf,CAAoB,IAApB,CAAT,CADH,EAEGjD,QAAQ,iBACP,gCAAC,oBAAD;QACE,GAAG,YAAKC,GAAL,eADL;QAEE,EAAE,EAAEA,GAFN;QAGE,CAAC,EAAC,GAHJ;QAIE,CAAC,EAAE6C,IAAI,CAAC,CAAD,CAJT;QAKE,KAAK,EAAEA,IAAI,CAAC,CAAD,CALb;QAME,MAAM,YAAKA,IAAI,CAAC,CAAD,CAAT;MANR,EAHJ,CADF;IAeD;;;EA3GmBI,e;;iCAAhBzD,O,iBACiB,K;iCADjBA,O,WAEW0D,K;iCAFX1D,O,aAGa,CAAC,IAAA2D,oBAAA,GAAD,C;iCAHb3D,O,kBAKkB;EACpB4B,MAAM,EAAE,CAAC,CAAD,EAAI,CAAJ,CADY;EAEpBrB,QAAQ,EAAE,GAFU;EAGpBsB,CAAC,EAAE,CAHiB;EAIpBC,IAAI,EAAE;AAJc,C;;AAyGxB,SAAS8B,UAAT,CAAoB3D,KAApB,EAA2B;EAAA;;EACzB,IAAiB4D,WAAjB,GAAuD5D,KAAvD,CAAQoB,OAAR;EAAA,IAA8BC,MAA9B,GAAuDrB,KAAvD,CAA8BqB,MAA9B;EAAA,IAAsCI,KAAtC,GAAuDzB,KAAvD,CAAsCyB,KAAtC;EAAA,IAA6CpB,KAA7C,GAAuDL,KAAvD,CAA6CK,KAA7C;;EAEA,8CAAyBoB,KAAzB;EAAA,IAAOO,MAAP;EAAA,IAAeC,MAAf;;EACA,IAAM4B,MAAM,GAAG5B,MAAM,CAAC6B,KAAP,EAAf;EAEA,eAAO,IAAAX,aAAA,EAAQ9B,MAAR,CAAP,eACE,gCAAC,WAAD;IAAA,UACS,MADT;IAAA,oBAEmB,OAFnB;IAAA,SAGSW,MAAM,CAAC+B,SAAP,EAHT;IAAA,UAIUF,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAJ5B;IAAA,KAKK7B,MAAM,CAAC3B,KAAD,CALX;IAAA,KAMKwD,MAAM,CAAC,CAAD;EANX,GADF;AAUD;;AAED,SAASf,OAAT,QAA4D;EAAA,IAAzC3C,CAAyC,SAAzCA,CAAyC;EAAA,IAAtCoB,CAAsC,SAAtCA,CAAsC;EAAA,IAAnCQ,KAAmC,SAAnCA,KAAmC;EAAA,IAA5BS,MAA4B,SAA5BA,MAA4B;EAAA,IAApBO,MAAoB,SAApBA,MAAoB;EAAA,IAAZG,QAAY,SAAZA,QAAY;EAC1D,IAAIV,MAAM,IAAIO,MAAd,EAAsB,OAAO,EAAP;;EACtB,IAAIA,MAAJ,EAAY;IACV,IAAIG,QAAQ,KAAK,KAAjB,EACE,OAAO,IAAAc,kBAAA,EAAY7D,CAAZ,EAAeoB,CAAf,EAAkBQ,KAAlB,EAAyBS,MAAzB,EAAiCO,MAAjC,EAAyC,IAAzC,EAA+C,IAA/C,EAAqD,KAArD,EAA4D,KAA5D,CAAP;IACF,OAAO,IAAAiB,kBAAA,EAAY7D,CAAZ,EAAeoB,CAAf,EAAkBQ,KAAlB,EAAyBS,MAAzB,EAAiCO,MAAjC,EAAyC,KAAzC,EAAgD,KAAhD,EAAuD,IAAvD,EAA6D,IAA7D,CAAP;EACD;;EACD,OAAO,IAAAiB,kBAAA,EAAY7D,CAAZ,EAAeoB,CAAf,EAAkBQ,KAAlB,EAAyBS,MAAzB,EAAiCO,MAAjC,CAAP;AACD;;eAEc,IAAAkB,yBAAA,EAAclE,OAAd,EAAuB;EAAE4D,UAAU,EAAVA;AAAF,CAAvB,C"}
1
+ {"version":3,"file":"Bar.js","names":["BarRoot","props","index","asProps","x","data","value","duration","uid","selectRect","transition","selection","selectAll","selectRectNode","node","getAttribute","attr","animationBar","d","i","SBar","Element","styles","color","y","y0","scale","hide","offset","r","hMin","widthProps","width","groupKey","xScale","yScale","barY","Math","max","Object","is","barX","height","abs","min","domain","getBandwidth","dSvg","getRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","sstyled","size","map","renderBar","bind","Component","style","uniqueIDEnhancement","Background","SBackground","yRange","range","bandwidth","roundedPath","createElement"],"sources":["../../src/Bar.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { getBandwidth, roundedPath } from './utils';\n\nimport style from './style/bar.shadow.css';\n\nclass BarRoot extends Component {\n static displayName = 'Bar';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n hMin: 4,\n };\n\n getBackgroundProps(props, index) {\n const { x, data } = this.asProps;\n return {\n value: data[index][x],\n };\n }\n\n animationBar() {\n const { duration, uid } = this.asProps;\n const selectRect = transition().selection().selectAll(`#${uid} rect`);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {\n selectRect.transition().duration(duration).attr('y', 0);\n }\n }\n\n componentDidUpdate() {\n this.animationBar();\n }\n\n componentDidMount() {\n this.animationBar();\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n x,\n y,\n y0,\n scale,\n hide,\n offset,\n duration,\n uid,\n r,\n hMin,\n width: widthProps,\n groupKey,\n } = this.asProps;\n\n const [xScale, yScale] = scale;\n const barY = yScale(Math.max(d[y0] ?? 0, d[y])) + offset[1] - (Object.is(d[y], 0) ? hMin : 0);\n const barX = xScale(d[x]) + offset[0];\n const height =\n Math.abs(yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[y0] ?? 0))) || hMin;\n const width = widthProps || getBandwidth(xScale);\n const dSvg = getRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[y] > 0 || Object.is(d[y], 0) ? 'top' : 'bottom',\n });\n\n if (groupKey) {\n this.asProps.dataHintsHandler.describeGroupedValues(groupKey, y);\n } else {\n this.asProps.dataHintsHandler.describeValueEntity(`${i}.${y}`, groupKey ?? d[x]);\n }\n\n return sstyled(styles)(\n <SBar\n aria-hidden\n key={`bar-${i}`}\n render=\"path\"\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value']}\n childrenPosition=\"above\"\n value={d}\n index={i}\n hide={hide}\n color={color}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n use:duration={`${duration}ms`}\n />,\n );\n }\n render() {\n const { data, uid, size, duration } = this.asProps;\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <ClipPath\n aria-hidden\n key={`${uid}-animation`}\n id={uid}\n x=\"0\"\n y={size[1]}\n width={size[0]}\n height={`${size[1]}px`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n\n const [xScale, yScale] = scale;\n const yRange = yScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render=\"rect\"\n childrenPosition=\"above\"\n width={xScale.bandwidth()}\n height={yRange[0] - yRange[1]}\n x={xScale(value)}\n y={yRange[1]}\n />,\n );\n}\n\nfunction getRect({ x, y, width, height, radius, position }) {\n if (height <= radius) return '';\n if (radius) {\n if (position === 'top')\n return roundedPath(x, y, width, height, radius, true, true, false, false);\n return roundedPath(x, y, width, height, radius, false, false, true, true);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(BarRoot, { Background });\n"],"mappings":"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"}
package/lib/cjs/Bubble.js CHANGED
@@ -56,19 +56,19 @@ var style = (
56
56
  /*__reshadow_css_start__*/
57
57
  _core.sstyled.insert(
58
58
  /*__inner_css_start__*/
59
- ".___SBubble_10877_gg_{fill:#2bb3ff;stroke:#fff;stroke-width:2px;transition-property:cx,cy;transition-duration:var(--duration_10877);transition-timing-function:ease-in-out;opacity:.5}.___SBubble_10877_gg_:hover{opacity:.8}.___SBubble_10877_gg_.__color_10877_gg_{fill:var(--color_10877)}.___SCenter_10877_gg_{text-anchor:middle;font-size:11px;stroke:#2bb3ff}.___SCenter_10877_gg_.__color_10877_gg_{stroke:var(--color_10877)}.___SLabel_10877_gg_{fill:#2bb3ff}.___SLabel_10877_gg_._position_right_10877_gg_{text-anchor:end}.___SLabel_10877_gg_._position_left_10877_gg_{text-anchor:start}.___SLabel_10877_gg_.__color_10877_gg_{fill:var(--color_10877)}"
59
+ ".___SBubble_frelz_gg_{fill:#2bb3ff;stroke:#fff;stroke-width:2px;transition-property:cx,cy;transition-duration:var(--duration_frelz);transition-timing-function:ease-in-out;opacity:.5}.___SBubble_frelz_gg_:hover{opacity:.8}.___SBubble_frelz_gg_.__color_frelz_gg_{fill:var(--color_frelz)}.___SCenter_frelz_gg_{text-anchor:middle;font-size:11px;stroke:#2bb3ff}.___SCenter_frelz_gg_.__color_frelz_gg_{stroke:var(--color_frelz)}.___SLabel_frelz_gg_{fill:#2bb3ff}.___SLabel_frelz_gg_._position_right_frelz_gg_{text-anchor:end}.___SLabel_frelz_gg_._position_left_frelz_gg_{text-anchor:start}.___SLabel_frelz_gg_.__color_frelz_gg_{fill:var(--color_frelz)}"
60
60
  /*__inner_css_end__*/
61
- , "10877_gg_")
61
+ , "frelz_gg_")
62
62
  /*__reshadow_css_end__*/
63
63
  , {
64
- "__SBubble": "___SBubble_10877_gg_",
65
- "--duration": "--duration_10877",
66
- "_color": "__color_10877_gg_",
67
- "--color": "--color_10877",
68
- "__SCenter": "___SCenter_10877_gg_",
69
- "__SLabel": "___SLabel_10877_gg_",
70
- "_position_right": "_position_right_10877_gg_",
71
- "_position_left": "_position_left_10877_gg_"
64
+ "__SBubble": "___SBubble_frelz_gg_",
65
+ "--duration": "--duration_frelz",
66
+ "_color": "__color_frelz_gg_",
67
+ "--color": "--color_frelz",
68
+ "__SCenter": "___SCenter_frelz_gg_",
69
+ "__SLabel": "___SLabel_frelz_gg_",
70
+ "_position_right": "_position_right_frelz_gg_",
71
+ "_position_left": "_position_left_frelz_gg_"
72
72
  });
73
73
 
74
74
  var BubbleRoot = /*#__PURE__*/function (_Component) {
@@ -191,12 +191,14 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
191
191
  xIndex: i
192
192
  }))
193
193
  }), markedCross && /*#__PURE__*/_react["default"].createElement(SCenter, _ref.cn("SCenter", {
194
+ "aria-hidden": true,
194
195
  "x": xScale(d[x]) + offset[0],
195
196
  "y": yScale(d[y]) + offset[1],
196
197
  "dy": ".3em",
197
198
  "clipPath": "url(#".concat(uid, ")"),
198
199
  "color": (_d$color = d[color]) !== null && _d$color !== void 0 ? _d$color : color
199
200
  }), "+"), /*#__PURE__*/_react["default"].createElement(SBubble, _ref.cn("SBubble", {
201
+ "aria-hidden": true,
200
202
  "id": "".concat(uid).concat(uid),
201
203
  "index": i,
202
204
  "render": "circle",
@@ -207,6 +209,7 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
207
209
  "r": z(d[value]),
208
210
  "use:duration": "".concat(duration, "ms")
209
211
  })), d[label] && /*#__PURE__*/_react["default"].createElement(SLabel, _ref.cn("SLabel", {
212
+ "aria-hidden": true,
210
213
  "x": labelDistance,
211
214
  "y": yScale(d[y]) + offset[1],
212
215
  "dy": ".3em",
@@ -221,7 +224,10 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
221
224
  var _this$asProps3 = this.asProps,
222
225
  data = _this$asProps3.data,
223
226
  uid = _this$asProps3.uid,
224
- scale = _this$asProps3.scale;
227
+ scale = _this$asProps3.scale,
228
+ x = _this$asProps3.x,
229
+ y = _this$asProps3.y,
230
+ value = _this$asProps3.value;
225
231
 
226
232
  var _scale2 = (0, _slicedToArray2["default"])(scale, 2),
227
233
  xScale = _scale2[0],
@@ -231,7 +237,10 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
231
237
  var ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);
232
238
  var xMargin = Math.min(xScale.range()[0], xScale.range()[1]);
233
239
  var yMargin = Math.min(yScale.range()[0], yScale.range()[1]);
240
+ this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);
241
+ this.asProps.dataHintsHandler.establishDataType('points-cloud');
234
242
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, data.map(this.renderCircle.bind(this)), data.map(this.animationCircle.bind(this)), /*#__PURE__*/_react["default"].createElement(_ClipPath["default"], {
243
+ "aria-hidden": true,
235
244
  id: uid,
236
245
  x: xMargin,
237
246
  y: yMargin,