@semcore/d3-chart 17.1.0 → 17.2.0-prerelease.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 (260) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/Area.js +17 -11
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +28 -16
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +22 -16
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +20 -14
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/CompactHorizontalBar.js +22 -16
  11. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  12. package/lib/cjs/Donut.js +15 -9
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +8 -8
  15. package/lib/cjs/GroupBar.js +6 -0
  16. package/lib/cjs/GroupBar.js.map +1 -1
  17. package/lib/cjs/HorizontalBar.js +22 -16
  18. package/lib/cjs/HorizontalBar.js.map +1 -1
  19. package/lib/cjs/Hover.js +3 -3
  20. package/lib/cjs/Line.js +15 -9
  21. package/lib/cjs/Line.js.map +1 -1
  22. package/lib/cjs/Plot.js +8 -2
  23. package/lib/cjs/Plot.js.map +1 -1
  24. package/lib/cjs/Radar.js +25 -19
  25. package/lib/cjs/Radar.js.map +1 -1
  26. package/lib/cjs/RadialTree.js +17 -12
  27. package/lib/cjs/RadialTree.js.map +1 -1
  28. package/lib/cjs/Reference.js +12 -12
  29. package/lib/cjs/ResponsiveContainer.js +6 -0
  30. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  31. package/lib/cjs/ScatterPlot.js +15 -9
  32. package/lib/cjs/ScatterPlot.js.map +1 -1
  33. package/lib/cjs/StackBar.js +6 -0
  34. package/lib/cjs/StackBar.js.map +1 -1
  35. package/lib/cjs/StackedArea.js +6 -0
  36. package/lib/cjs/StackedArea.js.map +1 -1
  37. package/lib/cjs/Tooltip.js +10 -9
  38. package/lib/cjs/Tooltip.js.map +1 -1
  39. package/lib/cjs/Venn.js +15 -9
  40. package/lib/cjs/Venn.js.map +1 -1
  41. package/lib/cjs/a11y/PlotA11yModule.js +2 -2
  42. package/lib/cjs/a11y/PlotA11yView.js +2 -2
  43. package/lib/cjs/component/Chart/AbstractChart.js +4 -10
  44. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  45. package/lib/cjs/component/Chart/AreaChart.js +12 -0
  46. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  47. package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
  48. package/lib/cjs/component/Chart/BarChart.js +12 -0
  49. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  50. package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
  51. package/lib/cjs/component/Chart/BubbleChart.js +12 -0
  52. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  53. package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
  54. package/lib/cjs/component/Chart/CigaretteChart.js +9 -3
  55. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  56. package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -1
  57. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +7 -1
  58. package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  59. package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  60. package/lib/cjs/component/Chart/DonutChart.js +6 -0
  61. package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
  62. package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
  63. package/lib/cjs/component/Chart/HistogramChart.js +12 -0
  64. package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
  65. package/lib/cjs/component/Chart/HistogramChart.type.js.map +1 -1
  66. package/lib/cjs/component/Chart/LineChart.js +12 -0
  67. package/lib/cjs/component/Chart/LineChart.js.map +1 -1
  68. package/lib/cjs/component/Chart/LineChart.type.js.map +1 -1
  69. package/lib/cjs/component/Chart/RadarChart.js +12 -0
  70. package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
  71. package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
  72. package/lib/cjs/component/Chart/ScatterPlotChart.js +6 -0
  73. package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
  74. package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
  75. package/lib/cjs/component/Chart/VennChart.js +6 -0
  76. package/lib/cjs/component/Chart/VennChart.js.map +1 -1
  77. package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
  78. package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  79. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +10 -4
  80. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  81. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  82. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +80 -44
  83. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  84. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +4 -0
  85. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  86. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +12 -6
  87. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  88. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  89. package/lib/cjs/component/Cigarette/Cigarette.js +6 -0
  90. package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
  91. package/lib/cjs/style/plot.shadow.css +1 -1
  92. package/lib/es6/Area.js +17 -11
  93. package/lib/es6/Area.js.map +1 -1
  94. package/lib/es6/Axis.js +28 -16
  95. package/lib/es6/Axis.js.map +1 -1
  96. package/lib/es6/Bar.js +22 -16
  97. package/lib/es6/Bar.js.map +1 -1
  98. package/lib/es6/Bubble.js +20 -14
  99. package/lib/es6/Bubble.js.map +1 -1
  100. package/lib/es6/CompactHorizontalBar.js +22 -16
  101. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  102. package/lib/es6/Donut.js +15 -9
  103. package/lib/es6/Donut.js.map +1 -1
  104. package/lib/es6/Dots.js +8 -8
  105. package/lib/es6/GroupBar.js +6 -0
  106. package/lib/es6/GroupBar.js.map +1 -1
  107. package/lib/es6/HorizontalBar.js +22 -16
  108. package/lib/es6/HorizontalBar.js.map +1 -1
  109. package/lib/es6/Hover.js +3 -3
  110. package/lib/es6/Line.js +15 -9
  111. package/lib/es6/Line.js.map +1 -1
  112. package/lib/es6/Plot.js +8 -2
  113. package/lib/es6/Plot.js.map +1 -1
  114. package/lib/es6/Radar.js +25 -19
  115. package/lib/es6/Radar.js.map +1 -1
  116. package/lib/es6/RadialTree.js +17 -12
  117. package/lib/es6/RadialTree.js.map +1 -1
  118. package/lib/es6/Reference.js +12 -12
  119. package/lib/es6/ResponsiveContainer.js +6 -0
  120. package/lib/es6/ResponsiveContainer.js.map +1 -1
  121. package/lib/es6/ScatterPlot.js +15 -9
  122. package/lib/es6/ScatterPlot.js.map +1 -1
  123. package/lib/es6/StackBar.js +6 -0
  124. package/lib/es6/StackBar.js.map +1 -1
  125. package/lib/es6/StackedArea.js +6 -0
  126. package/lib/es6/StackedArea.js.map +1 -1
  127. package/lib/es6/Tooltip.js +10 -9
  128. package/lib/es6/Tooltip.js.map +1 -1
  129. package/lib/es6/Venn.js +15 -9
  130. package/lib/es6/Venn.js.map +1 -1
  131. package/lib/es6/a11y/PlotA11yModule.js +2 -2
  132. package/lib/es6/a11y/PlotA11yView.js +2 -2
  133. package/lib/es6/component/Chart/AbstractChart.js +4 -10
  134. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  135. package/lib/es6/component/Chart/AreaChart.js +12 -0
  136. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  137. package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
  138. package/lib/es6/component/Chart/BarChart.js +12 -0
  139. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  140. package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
  141. package/lib/es6/component/Chart/BubbleChart.js +12 -0
  142. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  143. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  144. package/lib/es6/component/Chart/CigaretteChart.js +9 -3
  145. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  146. package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
  147. package/lib/es6/component/Chart/CompactHorizontalBarChart.js +7 -1
  148. package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
  149. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  150. package/lib/es6/component/Chart/DonutChart.js +6 -0
  151. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  152. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  153. package/lib/es6/component/Chart/HistogramChart.js +12 -0
  154. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  155. package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
  156. package/lib/es6/component/Chart/LineChart.js +12 -0
  157. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  158. package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
  159. package/lib/es6/component/Chart/RadarChart.js +12 -0
  160. package/lib/es6/component/Chart/RadarChart.js.map +1 -1
  161. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  162. package/lib/es6/component/Chart/ScatterPlotChart.js +6 -0
  163. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  164. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  165. package/lib/es6/component/Chart/VennChart.js +7 -0
  166. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  167. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  168. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  169. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +10 -4
  170. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
  171. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
  172. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +80 -44
  173. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  174. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +4 -0
  175. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  176. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +12 -6
  177. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
  178. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
  179. package/lib/es6/component/Cigarette/Cigarette.js +6 -0
  180. package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
  181. package/lib/es6/style/plot.shadow.css +1 -1
  182. package/lib/esm/AnimatedClipPath.mjs +2 -2
  183. package/lib/esm/Area.mjs +13 -13
  184. package/lib/esm/Axis.mjs +19 -19
  185. package/lib/esm/Bar.mjs +18 -18
  186. package/lib/esm/Bubble.mjs +16 -16
  187. package/lib/esm/CompactHorizontalBar.mjs +18 -18
  188. package/lib/esm/Donut.mjs +11 -11
  189. package/lib/esm/Dots.mjs +9 -9
  190. package/lib/esm/GroupBar.mjs +1 -1
  191. package/lib/esm/HorizontalBar.mjs +18 -18
  192. package/lib/esm/Hover.mjs +5 -5
  193. package/lib/esm/Line.mjs +11 -11
  194. package/lib/esm/Pattern.mjs +1 -1
  195. package/lib/esm/Plot.mjs +4 -4
  196. package/lib/esm/Radar.mjs +21 -21
  197. package/lib/esm/RadialTree.mjs +14 -14
  198. package/lib/esm/Reference.mjs +14 -14
  199. package/lib/esm/ResponsiveContainer.mjs +1 -1
  200. package/lib/esm/ScatterPlot.mjs +11 -11
  201. package/lib/esm/StackBar.mjs +1 -1
  202. package/lib/esm/StackedArea.mjs +1 -1
  203. package/lib/esm/Tooltip.mjs +12 -11
  204. package/lib/esm/Venn.mjs +12 -12
  205. package/lib/esm/a11y/PlotA11yModule.mjs +4 -4
  206. package/lib/esm/a11y/PlotA11yView.mjs +3 -3
  207. package/lib/esm/component/Chart/AbstractChart.mjs +6 -12
  208. package/lib/esm/component/Chart/AreaChart.mjs +7 -1
  209. package/lib/esm/component/Chart/BarChart.mjs +8 -2
  210. package/lib/esm/component/Chart/BubbleChart.mjs +7 -1
  211. package/lib/esm/component/Chart/CigaretteChart.mjs +3 -3
  212. package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +2 -2
  213. package/lib/esm/component/Chart/DonutChart.mjs +1 -1
  214. package/lib/esm/component/Chart/HistogramChart.mjs +8 -2
  215. package/lib/esm/component/Chart/LineChart.mjs +7 -1
  216. package/lib/esm/component/Chart/RadarChart.mjs +7 -1
  217. package/lib/esm/component/Chart/ScatterPlotChart.mjs +1 -1
  218. package/lib/esm/component/Chart/VennChart.mjs +1 -1
  219. package/lib/esm/component/ChartLegend/BaseLegend.mjs +1 -1
  220. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +6 -6
  221. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +76 -46
  222. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.type.mjs +4 -0
  223. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +8 -8
  224. package/lib/esm/component/Cigarette/Cigarette.mjs +1 -1
  225. package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +1 -1
  226. package/lib/esm/createElement.mjs +1 -1
  227. package/lib/esm/style/plot.shadow.css +1 -1
  228. package/lib/types/RadialTree.d.ts +5 -0
  229. package/lib/types/component/Chart/AbstractChart.d.ts +2 -2
  230. package/lib/types/component/Chart/AreaChart.d.ts +5 -0
  231. package/lib/types/component/Chart/AreaChart.type.d.ts +6 -0
  232. package/lib/types/component/Chart/BarChart.d.ts +5 -0
  233. package/lib/types/component/Chart/BarChart.type.d.ts +6 -0
  234. package/lib/types/component/Chart/BubbleChart.d.ts +5 -0
  235. package/lib/types/component/Chart/BubbleChart.type.d.ts +6 -0
  236. package/lib/types/component/Chart/CigaretteChart.d.ts +5 -0
  237. package/lib/types/component/Chart/CigaretteChart.type.d.ts +14 -0
  238. package/lib/types/component/Chart/CompactHorizontalBarChart.d.ts +5 -0
  239. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +7 -0
  240. package/lib/types/component/Chart/DonutChart.d.ts +5 -0
  241. package/lib/types/component/Chart/DonutChart.type.d.ts +7 -0
  242. package/lib/types/component/Chart/HistogramChart.d.ts +5 -0
  243. package/lib/types/component/Chart/HistogramChart.type.d.ts +6 -0
  244. package/lib/types/component/Chart/LineChart.d.ts +5 -0
  245. package/lib/types/component/Chart/LineChart.type.d.ts +6 -0
  246. package/lib/types/component/Chart/RadarChart.d.ts +5 -0
  247. package/lib/types/component/Chart/RadarChart.type.d.ts +6 -0
  248. package/lib/types/component/Chart/ScatterPlotChart.d.ts +5 -0
  249. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +7 -0
  250. package/lib/types/component/Chart/VennChart.d.ts +5 -0
  251. package/lib/types/component/Chart/VennChart.type.d.ts +6 -0
  252. package/lib/types/component/ChartLegend/BaseLegend.d.ts +2 -2
  253. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.d.ts +5 -0
  254. package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +4 -0
  255. package/lib/types/component/ChartLegend/LegendItem/LegendItem.d.ts +5 -0
  256. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +15 -7
  257. package/lib/types/component/ChartLegend/LegendTable/LegendTable.d.ts +5 -0
  258. package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +3 -0
  259. package/lib/types/component/Cigarette/Cigarette.d.ts +5 -0
  260. package/package.json +13 -13
@@ -5,20 +5,20 @@ import uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';
5
5
  import React from 'react';
6
6
  import createElement from './createElement';
7
7
  /*!__reshadow-styles__:"./style/reference.shadow.css"*/
8
- const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SReferenceLine_wrjhn_gg_{fill:none;stroke:var(--intergalactic-chart-grid-y-accent-hover-line, rgb(214, 216, 215))}.___STitle_wrjhn_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-chart-grid-text-label, rgba(0, 3, 0, 0.583));transform-origin:var(--transform-origin_wrjhn)}@supports (color:color(display-p3 0 0 0%)){.___STitle_wrjhn_gg_{fill:var(--intergalactic-chart-grid-text-label, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___STitle_wrjhn_gg_{fill:var(--intergalactic-chart-grid-text-label, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}.___STitle_wrjhn_gg_._position_top_wrjhn_gg_{text-anchor:middle}.___STitle_wrjhn_gg_._position_bottom_wrjhn_gg_{text-anchor:middle;dominant-baseline:hanging}.___STitle_wrjhn_gg_._position_left_wrjhn_gg_,.___STitle_wrjhn_gg_._position_right_wrjhn_gg_{transform:rotate(-90deg);text-anchor:middle;dominant-baseline:middle}.___SBackground_wrjhn_gg_{fill:var(--intergalactic-chart-grid-period-bg, rgb(241, 242, 242))}.___SStripes_wrjhn_gg_{fill:var(--fill_wrjhn)}.___SStripesPatternPath_wrjhn_gg_{stroke:var(--intergalactic-chart-grid-period-pattern, rgb(237, 239, 238));stroke-width:1px}", /*__inner_css_end__*/"wrjhn_gg_"),
8
+ const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SReferenceLine_1j9xa_gg_{fill:none;stroke:var(--intergalactic-chart-grid-y-accent-hover-line,#d6d8d7)}.___STitle_1j9xa_gg_{font-size:var(--intergalactic-fs-100,12px);fill:var(--intergalactic-chart-grid-text-label,#00030095);transform-origin:var(--transform-origin_1j9xa)}@supports (color:color(display-p3 0 0 0%)){.___STitle_1j9xa_gg_{fill:var(--intergalactic-chart-grid-text-label,#00030095)}@media (color-gamut:p3){.___STitle_1j9xa_gg_{fill:var(--intergalactic-chart-grid-text-label,color(display-p3 .00228 .01289 .00252/.583))}}}.___STitle_1j9xa_gg_._position_top_1j9xa_gg_{text-anchor:middle}.___STitle_1j9xa_gg_._position_bottom_1j9xa_gg_{text-anchor:middle;dominant-baseline:hanging}.___STitle_1j9xa_gg_._position_left_1j9xa_gg_,.___STitle_1j9xa_gg_._position_right_1j9xa_gg_{transform:rotate(-90deg);dominant-baseline:middle;text-anchor:middle}.___SBackground_1j9xa_gg_{fill:var(--intergalactic-chart-grid-period-bg,#f1f2f2)}.___SStripes_1j9xa_gg_{fill:var(--fill_1j9xa)}.___SStripesPatternPath_1j9xa_gg_{stroke:var(--intergalactic-chart-grid-period-pattern,#edefee);stroke-width:1px}", /*__inner_css_end__*/"1j9xa_gg_"),
9
9
  /*__reshadow_css_end__*/
10
10
  {
11
- "__SReferenceLine": "___SReferenceLine_wrjhn_gg_",
12
- "__STitle": "___STitle_wrjhn_gg_",
13
- "--transform-origin": "--transform-origin_wrjhn",
14
- "_position_top": "_position_top_wrjhn_gg_",
15
- "_position_bottom": "_position_bottom_wrjhn_gg_",
16
- "_position_right": "_position_right_wrjhn_gg_",
17
- "_position_left": "_position_left_wrjhn_gg_",
18
- "__SBackground": "___SBackground_wrjhn_gg_",
19
- "__SStripes": "___SStripes_wrjhn_gg_",
20
- "--fill": "--fill_wrjhn",
21
- "__SStripesPatternPath": "___SStripesPatternPath_wrjhn_gg_"
11
+ "__SReferenceLine": "___SReferenceLine_1j9xa_gg_",
12
+ "__STitle": "___STitle_1j9xa_gg_",
13
+ "--transform-origin": "--transform-origin_1j9xa",
14
+ "_position_top": "_position_top_1j9xa_gg_",
15
+ "_position_bottom": "_position_bottom_1j9xa_gg_",
16
+ "_position_right": "_position_right_1j9xa_gg_",
17
+ "_position_left": "_position_left_1j9xa_gg_",
18
+ "__SBackground": "___SBackground_1j9xa_gg_",
19
+ "__SStripes": "___SStripes_1j9xa_gg_",
20
+ "--fill": "--fill_1j9xa",
21
+ "__SStripesPatternPath": "___SStripesPatternPath_1j9xa_gg_"
22
22
  });
23
23
  import { scaleOfBandwidth } from './utils';
24
24
  const side2direction = {
@@ -81,6 +81,12 @@ class ResponsiveContainerRoot extends Component {
81
81
  }));
82
82
  }
83
83
  }
84
+
85
+ /**
86
+ * ResponsiveContainer
87
+ *
88
+ * {@link https://developer.semrush.com/intergalactic/data-display/d3-chart/d3-chart-api#responsivecontainer|API}
89
+ */
84
90
  _defineProperty(ResponsiveContainerRoot, "displayName", 'ResponsiveContainer');
85
91
  const ResponsiveContainer = createComponent(ResponsiveContainerRoot);
86
92
  export default ResponsiveContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsiveContainer.js","names":["Box","createComponent","Component","Root","sstyled","canUseDOM","fire","getOriginChildren","trottle","React","ResponsiveContainerRoot","constructor","props","_defineProperty","createRef","entries","Children","aspect","asProps","$container","clientWidth","width","clientHeight","height","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","forceUpdate","observer","ResizeObserver","handleResize","containerRef","current","setContext","componentDidMount","observe","componentWillUnmount","disconnect","render","_ref","_ref2","SResponsiveContainer","styles","createElement","cn","_assignProps","ResponsiveContainer"],"sources":["../../src/ResponsiveContainer.jsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport fire from '@semcore/core/lib/utils/fire';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport React from 'react';\n\nclass ResponsiveContainerRoot extends Component {\n static displayName = 'ResponsiveContainer';\n\n containerRef = React.createRef();\n size = [0, 0];\n\n constructor(props) {\n super(props);\n if (canUseDOM()) {\n this.observer = new ResizeObserver(this.handleResize);\n }\n }\n\n get $container() {\n return this.containerRef.current;\n }\n\n handleResize = trottle((entries) => {\n const { Children, aspect } = this.asProps;\n\n if (!this.$container) return;\n\n let { clientWidth: width, clientHeight: height } = this.$container;\n\n if (aspect) {\n const style = window.getComputedStyle(this.$container);\n const minHeight = Number.parseInt(style.getPropertyValue('min-height'));\n const maxHeight = Number.parseInt(style.getPropertyValue('max-height'));\n height = width * aspect;\n\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n }\n\n if (this.size[0] === width && this.size[1] === height) return;\n\n this.size = [width, height];\n\n fire(this, 'onResize', this.size, entries);\n\n if (typeof getOriginChildren(Children) === 'function') {\n this.forceUpdate();\n }\n });\n\n setContext() {\n const [width, height] = this.size;\n return {\n width,\n height,\n };\n }\n\n componentDidMount() {\n if (this.$container) {\n // TODO: may be we can increase perfomance here? (by lsroman)\n this.observer?.observe(this.$container);\n }\n }\n\n // TODO component did update ref?\n\n componentWillUnmount() {\n this.observer?.disconnect();\n }\n\n render() {\n const SResponsiveContainer = Root;\n const { styles } = this.asProps;\n return sstyled(styles)(<SResponsiveContainer render={Box} ref={this.containerRef} />);\n }\n}\n\nconst ResponsiveContainer = createComponent(ResponsiveContainerRoot);\n\nexport default ResponsiveContainer;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ResponsiveContainer.js","names":["Box","createComponent","Component","Root","sstyled","canUseDOM","fire","getOriginChildren","trottle","React","ResponsiveContainerRoot","constructor","props","_defineProperty","createRef","entries","Children","aspect","asProps","$container","clientWidth","width","clientHeight","height","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","forceUpdate","observer","ResizeObserver","handleResize","containerRef","current","setContext","componentDidMount","observe","componentWillUnmount","disconnect","render","_ref","_ref2","SResponsiveContainer","styles","createElement","cn","_assignProps","ResponsiveContainer"],"sources":["../../src/ResponsiveContainer.jsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport fire from '@semcore/core/lib/utils/fire';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport React from 'react';\n\nclass ResponsiveContainerRoot extends Component {\n static displayName = 'ResponsiveContainer';\n\n containerRef = React.createRef();\n size = [0, 0];\n\n constructor(props) {\n super(props);\n if (canUseDOM()) {\n this.observer = new ResizeObserver(this.handleResize);\n }\n }\n\n get $container() {\n return this.containerRef.current;\n }\n\n handleResize = trottle((entries) => {\n const { Children, aspect } = this.asProps;\n\n if (!this.$container) return;\n\n let { clientWidth: width, clientHeight: height } = this.$container;\n\n if (aspect) {\n const style = window.getComputedStyle(this.$container);\n const minHeight = Number.parseInt(style.getPropertyValue('min-height'));\n const maxHeight = Number.parseInt(style.getPropertyValue('max-height'));\n height = width * aspect;\n\n if (height < minHeight) {\n height = minHeight;\n }\n if (height > maxHeight) {\n height = maxHeight;\n }\n }\n\n if (this.size[0] === width && this.size[1] === height) return;\n\n this.size = [width, height];\n\n fire(this, 'onResize', this.size, entries);\n\n if (typeof getOriginChildren(Children) === 'function') {\n this.forceUpdate();\n }\n });\n\n setContext() {\n const [width, height] = this.size;\n return {\n width,\n height,\n };\n }\n\n componentDidMount() {\n if (this.$container) {\n // TODO: may be we can increase perfomance here? (by lsroman)\n this.observer?.observe(this.$container);\n }\n }\n\n // TODO component did update ref?\n\n componentWillUnmount() {\n this.observer?.disconnect();\n }\n\n render() {\n const SResponsiveContainer = Root;\n const { styles } = this.asProps;\n return sstyled(styles)(<SResponsiveContainer render={Box} ref={this.containerRef} />);\n }\n}\n\n/**\n * ResponsiveContainer\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/d3-chart/d3-chart-api#responsivecontainer|API}\n */\nconst ResponsiveContainer = createComponent(ResponsiveContainerRoot);\n\nexport default ResponsiveContainer;\n"],"mappings":"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","ignoreList":[]}
@@ -9,17 +9,17 @@ import React from 'react';
9
9
  import createElement from './createElement';
10
10
  import { PatternFill } from './Pattern';
11
11
  /*!__reshadow-styles__:"./style/scatterplot.shadow.css"*/
12
- const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SScatterPlot_6l4o0_gg_{fill:var(--intergalactic-chart-palette-order-1, rgb(102, 107, 219));transition-property:cx,cy;transition-duration:var(--duration_6l4o0);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SScatterPlot_6l4o0_gg_:hover{opacity:.8}}.___SScatterPlot_6l4o0_gg_.__color_6l4o0_gg_{fill:var(--color_6l4o0)}.___SScatterPlot_6l4o0_gg_.__pattern_6l4o0_gg_.__color_6l4o0_gg_{fill:var(--pattern_6l4o0);stroke:var(--color_6l4o0);stroke-width:1px}.___SScatterPlot_6l4o0_gg_.__transparent_6l4o0_gg_{opacity:.3}.___SValue_6l4o0_gg_{text-anchor:middle;font-size:var(--intergalactic-fs-50, 10px);stroke:var(--intergalactic-chart-palette-order-9, rgb(92, 92, 196))}.___SValue_6l4o0_gg_.__color_6l4o0_gg_{stroke:var(--color_6l4o0)}.___SValue_6l4o0_gg_.__transparent_6l4o0_gg_{opacity:.3}", /*__inner_css_end__*/"6l4o0_gg_"),
12
+ const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SScatterPlot_15u7e_gg_{fill:var(--intergalactic-chart-palette-order-1,#666bdb);transition-property:cx,cy;transition-duration:var(--duration_15u7e);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SScatterPlot_15u7e_gg_:hover{opacity:.8}}.___SScatterPlot_15u7e_gg_.__color_15u7e_gg_{fill:var(--color_15u7e)}.___SScatterPlot_15u7e_gg_.__pattern_15u7e_gg_.__color_15u7e_gg_{fill:var(--pattern_15u7e);stroke:var(--color_15u7e);stroke-width:1px}.___SScatterPlot_15u7e_gg_.__transparent_15u7e_gg_{opacity:.3}.___SValue_15u7e_gg_{text-anchor:middle;font-size:var(--intergalactic-fs-50,10px);stroke:var(--intergalactic-chart-palette-order-9,#5c5cc4)}.___SValue_15u7e_gg_.__color_15u7e_gg_{stroke:var(--color_15u7e)}.___SValue_15u7e_gg_.__transparent_15u7e_gg_{opacity:.3}", /*__inner_css_end__*/"15u7e_gg_"),
13
13
  /*__reshadow_css_end__*/
14
14
  {
15
- "__SScatterPlot": "___SScatterPlot_6l4o0_gg_",
16
- "_color": "__color_6l4o0_gg_",
17
- "--color": "--color_6l4o0",
18
- "_pattern": "__pattern_6l4o0_gg_",
19
- "--pattern": "--pattern_6l4o0",
20
- "_transparent": "__transparent_6l4o0_gg_",
21
- "__SValue": "___SValue_6l4o0_gg_",
22
- "--duration": "--duration_6l4o0"
15
+ "__SScatterPlot": "___SScatterPlot_15u7e_gg_",
16
+ "_color": "__color_15u7e_gg_",
17
+ "--color": "--color_15u7e",
18
+ "_pattern": "__pattern_15u7e_gg_",
19
+ "--pattern": "--pattern_15u7e",
20
+ "_transparent": "__transparent_15u7e_gg_",
21
+ "__SValue": "___SValue_15u7e_gg_",
22
+ "--duration": "--duration_15u7e"
23
23
  });
24
24
  import Tooltip from './Tooltip';
25
25
  import { getScatterPlotRadius } from './utils';
@@ -192,6 +192,12 @@ function ScatterPlotTooltip(props) {
192
192
  }));
193
193
  }
194
194
  ;
195
+
196
+ /**
197
+ * ScatterPlot
198
+ *
199
+ * {@link https://developer.semrush.com/intergalactic/data-display/scatterplot-chart/scatterplot-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/scatterplot-chart/scatterplot-chart-code/|Examples}
200
+ */
195
201
  const ScatterPlot = createElement(ScatterPlotRoot, {
196
202
  Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents]
197
203
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ScatterPlot.js","names":["Component","Root","sstyled","canUseDOM","uniqueIDEnhancement","transition","React","createElement","PatternFill","style","_sstyled","insert","Tooltip","getScatterPlotRadius","ScatterPlotRoot","constructor","args","_defineProperty","document","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","generateGetBoundingClientRect","x","y","width","height","top","right","bottom","left","animationCircle","duration","uid","r","value","radius","selectRect","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","handlerOnClick","index","e","stopPropagation","onClick","renderCircle","d","i","_ref2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","undefined","render","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","_assignProps","ScatterPlot","_______childrenComponents"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/scatterplot.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getScatterPlotRadius } from './utils';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n handlerOnClick(index) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(index, e);\n };\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n onClickCapture={this.handlerOnClick(i)}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nfunction ScatterPlotTooltip(props) {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ScatterPlot.js","names":["Component","Root","sstyled","canUseDOM","uniqueIDEnhancement","transition","React","createElement","PatternFill","style","_sstyled","insert","Tooltip","getScatterPlotRadius","ScatterPlotRoot","constructor","args","_defineProperty","document","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","generateGetBoundingClientRect","x","y","width","height","top","right","bottom","left","animationCircle","duration","uid","r","value","radius","selectRect","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","handlerOnClick","index","e","stopPropagation","onClick","renderCircle","d","i","_ref2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","undefined","render","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","_assignProps","ScatterPlot","_______childrenComponents"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { transition } from 'd3-transition';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/scatterplot.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getScatterPlotRadius } from './utils';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n handlerOnClick(index) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(index, e);\n };\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n onClickCapture={this.handlerOnClick(i)}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nfunction ScatterPlotTooltip(props) {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\n/**\n * ScatterPlot\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/scatterplot-chart/scatterplot-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/scatterplot-chart/scatterplot-chart-code/|Examples}\n */\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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","ignoreList":[]}
@@ -134,6 +134,12 @@ class StackBarRoot extends Component {
134
134
  });
135
135
  }
136
136
  }
137
+
138
+ /**
139
+ * StackBar
140
+ *
141
+ * {@link https://developer.semrush.com/intergalactic/data-display/stacked-bar-chart/stacked-bar-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/stacked-bar-chart/stacked-bar-chart-code/|Examples}
142
+ */
137
143
  _defineProperty(StackBarRoot, "displayName", 'StackBar');
138
144
  _defineProperty(StackBarRoot, "defaultProps", () => {
139
145
  const stack = d3Stack();
@@ -1 +1 @@
1
- {"version":3,"file":"StackBar.js","names":["Component","getOriginChildren","stack","d3Stack","React","Bar","MIN_HEIGHT","createElement","HorizontalBar","MIN_WIDTH","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","constructor","args","_defineProperty","getSeries","Children","data","asProps","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","getBarProps","hMin","index","r","scale","maxBarSize","patterns","yScale","seriesIndex","series","findIndex","s","key","rBar","map","_s","i","slice","some","bar","offsetBars","calcOffset","offset","offsetBar","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getHorizontalBarProps","wMin","xScale","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport createElement from './createElement';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: 0,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"StackBar.js","names":["Component","getOriginChildren","stack","d3Stack","React","Bar","MIN_HEIGHT","createElement","HorizontalBar","MIN_WIDTH","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","constructor","args","_defineProperty","getSeries","Children","data","asProps","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","getBarProps","hMin","index","r","scale","maxBarSize","patterns","yScale","seriesIndex","series","findIndex","s","key","rBar","map","_s","i","slice","some","bar","offsetBars","calcOffset","offset","offsetBar","d","absHeight","Math","abs","min","domain","isEmptyValue","Number","offsetValue","y0","groupKey","color","getHorizontalBarProps","wMin","xScale","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport createElement from './createElement';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize, patterns } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((_s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: 0,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n patterns,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\n/**\n * StackBar\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/stacked-bar-chart/stacked-bar-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/stacked-bar-chart/stacked-bar-chart-code/|Examples}\n */\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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","ignoreList":[]}
@@ -58,6 +58,12 @@ class StackedAreaRoot extends Component {
58
58
  });
59
59
  }
60
60
  }
61
+
62
+ /**
63
+ * StackedArea
64
+ *
65
+ * {@link https://developer.semrush.com/intergalactic/data-display/stacked-area-chart/stacked-area-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/stacked-area-chart/stacked-area-chart-code/|Examples}
66
+ */
61
67
  _defineProperty(StackedAreaRoot, "displayName", 'StackedArea');
62
68
  _defineProperty(StackedAreaRoot, "defaultProps", () => {
63
69
  const stack = d3Stack();
@@ -1 +1 @@
1
- {"version":3,"file":"StackedArea.js","names":["Component","getOriginChildren","stack","d3Stack","React","Area","createElement","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","getSeries","Children","data","asProps","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","getAreaProps","index","x","patterns","series","find","s","key","color","map","y0","render","Element","_defineProperty"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Area from './Area';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }, index) {\n const { x, patterns } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n color: getChartDefaultColorName(index),\n patterns,\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"StackedArea.js","names":["Component","getOriginChildren","stack","d3Stack","React","Area","createElement","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","getSeries","Children","data","asProps","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","getAreaProps","index","x","patterns","series","find","s","key","color","map","y0","render","Element","_defineProperty"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport { stack as d3Stack } from 'd3-shape';\nimport React from 'react';\n\nimport Area from './Area';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }, index) {\n const { x, patterns } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n color: getChartDefaultColorName(index),\n patterns,\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\n/**\n * StackedArea\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/stacked-area-chart/stacked-area-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/stacked-area-chart/stacked-area-chart-code/|Examples}\n */\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":"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","ignoreList":[]}
@@ -13,17 +13,17 @@ import React from 'react';
13
13
  import createElement from './createElement';
14
14
  import { PatternSymbol } from './Pattern';
15
15
  /*!__reshadow-styles__:"./style/tooltip.shadow.css"*/
16
- const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___STooltip_1ggwc_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, rgb(255, 255, 255));border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, rgba(0, 21, 16, 0.07));box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 1px 1px 10px 0px rgba(0, 21, 16, 0.07));padding:var(--intergalactic-spacing-3x, 12px)}@supports (color:color(display-p3 0 0 0%)){.___STooltip_1ggwc_gg_{border:1px solid var(--intergalactic-border-secondary, rgba(0, 21, 16, 0.07));box-shadow:var(--intergalactic-box-shadow-popper, 1px 1px 10px 0px rgba(0, 21, 16, 0.07))}@media (color-gamut:p3){.___STooltip_1ggwc_gg_{border:1px solid var(--intergalactic-border-secondary, color(display-p3 0.01753 0.08157 0.06372 / 0.07));box-shadow:var(--intergalactic-box-shadow-popper, 1px 1px 10px 0px color(display-p3 0.01753 0.08157 0.06372 / 0.07))}}}.___STitle_1ggwc_gg_{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583));margin-bottom:var(--intergalactic-spacing-2x, 8px)}@supports (color:color(display-p3 0 0 0%)){.___STitle_1ggwc_gg_{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___STitle_1ggwc_gg_{color:var(--intergalactic-text-secondary, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}.___SDotGroup_1ggwc_gg_{display:flex;align-items:center}.___SDot_1ggwc_gg_{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDotCircle_1ggwc_gg_.__color_1ggwc_gg_{background-color:var(--color_1ggwc);width:8px;height:8px;border-radius:50%}.___SFooter_1ggwc_gg_{background:var(--intergalactic-bg-secondary-neutral, rgb(248, 249, 248));padding:var(--intergalactic-spacing-1x, 4px) var(--intergalactic-spacing-3x, 12px);border-radius:0 0 var(--intergalactic-rounded-medium, 6px) var(--intergalactic-rounded-medium, 6px);margin:var(--intergalactic-spacing-3x, 12px) calc(-1*var(--intergalactic-spacing-3x, 12px)) calc(-1*var(--intergalactic-spacing-3x, 12px))}", /*__inner_css_end__*/"1ggwc_gg_"),
16
+ const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___STooltip_123dv_gg_{font-size:var(--intergalactic-fs-100,12px);line-height:var(--intergalactic-lh-100,133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral,#fff);border-radius:var(--intergalactic-popper-rounded,6px);border:1px solid var(--intergalactic-border-secondary,#00151012);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper,1px 1px 10px 0 #00151012);padding:var(--intergalactic-spacing-3x,12px)}@supports (color:color(display-p3 0 0 0%)){.___STooltip_123dv_gg_{border:1px solid var(--intergalactic-border-secondary,#00151012);box-shadow:var(--intergalactic-box-shadow-popper,1px 1px 10px 0 #00151012)}@media (color-gamut:p3){.___STooltip_123dv_gg_{border:1px solid var(--intergalactic-border-secondary,color(display-p3 .01753 .08157 .06372/.07));box-shadow:var(--intergalactic-box-shadow-popper,1px 1px 10px 0 color(display-p3 .01753 .08157 .06372/.07))}}}.___STitle_123dv_gg_{color:var(--intergalactic-text-secondary,#00030095);margin-bottom:var(--intergalactic-spacing-2x,8px)}@supports (color:color(display-p3 0 0 0%)){.___STitle_123dv_gg_{color:var(--intergalactic-text-secondary,#00030095)}@media (color-gamut:p3){.___STitle_123dv_gg_{color:var(--intergalactic-text-secondary,color(display-p3 .00228 .01289 .00252/.583))}}}.___SDotGroup_123dv_gg_{display:flex;align-items:center}.___SDot_123dv_gg_{margin-right:var(--intergalactic-spacing-2x,8px)}.___SDotCircle_123dv_gg_.__color_123dv_gg_{background-color:var(--color_123dv);width:8px;height:8px;border-radius:50%}.___SFooter_123dv_gg_{background:var(--intergalactic-bg-secondary-neutral,#f8f9f8);padding:var(--intergalactic-spacing-1x,4px) var(--intergalactic-spacing-3x,12px);border-radius:0 0 var(--intergalactic-rounded-medium,6px) var(--intergalactic-rounded-medium,6px);margin:var(--intergalactic-spacing-3x,12px) calc(var(--intergalactic-spacing-3x, 12px)*-1) calc(var(--intergalactic-spacing-3x, 12px)*-1)}", /*__inner_css_end__*/"123dv_gg_"),
17
17
  /*__reshadow_css_end__*/
18
18
  {
19
- "__STooltip": "___STooltip_1ggwc_gg_",
20
- "__STitle": "___STitle_1ggwc_gg_",
21
- "__SDotGroup": "___SDotGroup_1ggwc_gg_",
22
- "__SDot": "___SDot_1ggwc_gg_",
23
- "__SDotCircle": "___SDotCircle_1ggwc_gg_",
24
- "_color": "__color_1ggwc_gg_",
25
- "--color": "--color_1ggwc",
26
- "__SFooter": "___SFooter_1ggwc_gg_"
19
+ "__STooltip": "___STooltip_123dv_gg_",
20
+ "__STitle": "___STitle_123dv_gg_",
21
+ "__SDotGroup": "___SDotGroup_123dv_gg_",
22
+ "__SDot": "___SDot_123dv_gg_",
23
+ "__SDotCircle": "___SDotCircle_123dv_gg_",
24
+ "_color": "__color_123dv_gg_",
25
+ "--color": "--color_123dv",
26
+ "__SFooter": "___SFooter_123dv_gg_"
27
27
  });
28
28
  import { getChartDefaultColorName } from './utils';
29
29
 
@@ -234,6 +234,7 @@ function Dot(props) {
234
234
  const SDotCircle = Box;
235
235
  return _ref8 = sstyled(styles), /*#__PURE__*/React.createElement(SDotGroup, _ref8.cn("SDotGroup", {
236
236
  ..._assignProps4({
237
+ "use:color": undefined,
237
238
  "__excludeProps": ['data', 'scale']
238
239
  }, _ref4)
239
240
  }), patterns ? /*#__PURE__*/React.createElement(SDot, _ref8.cn("SDot", {}), /*#__PURE__*/React.createElement(PatternSymbol, _ref8.cn("PatternSymbol", {
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","names":["Popper","Box","Component","Root","sstyled","findComponent","useColorResolver","React","createElement","PatternSymbol","style","_sstyled","insert","getChartDefaultColorName","TooltipDotRenderContext","createContext","index","indexKeysCache","Set","TooltipRoot","constructor","args","_defineProperty","$visible","anchorProps","tooltipProps","x","y","e","onClick","asProps","xIndex","yIndex","state","getTriggerProps","hideHoverLine","getPopperProps","excludeAnchorProps","componentDidMount","eventEmitter","plotId","unsubscribe","push","subscribe","setState","visible","virtualElementPosition","virtualTriggerElement","setTimeout","setPopperTrigger","getBoundingClientRect","width","height","top","right","bottom","left","popper","current","update","componentWillUnmount","forEach","render","_ref","Children","children","tag","forcedAdvancedMode","_","other","advancedMode","Tooltip","Trigger","displayName","renderContext","clear","patterns","Provider","value","_assignProps","handlerCancel","allowedAutoPlacements","setTrigger","Fragment","handleTriggerClick","PopperTrigger","_ref2","arguments[0]","_assignProps2","PopperPopper","props","_ref6","Element","STooltip","styles","useCallback","cn","Title","_ref3","_ref7","STitle","_assignProps3","Dot","_ref4","_ref8","color","resolveColor","useContext","defaultColor","key","has","add","SDotGroup","SDot","SDotCircle","_assignProps4","Footer","_ref5","_ref9","SFooter","_assignProps5"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import { Popper, Box } from '@semcore/base-components';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport findComponent from '@semcore/core/lib/utils/findComponent';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternSymbol } from './Pattern';\nimport style from './style/tooltip.shadow.css';\nimport { getChartDefaultColorName } from './utils';\n\n/**\n * `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.\n * Probably it may be removed after migrating to a new core.\n */\nconst TooltipDotRenderContext = React.createContext({ index: -1, indexKeysCache: new Set() });\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n anchorProps: {},\n tooltipProps: {},\n };\n\n renderContext = { index: -1, indexKeysCache: new Set() };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n const { x, y, hideHoverLine } = this.asProps;\n return { x, y, hideHoverLine };\n }\n\n getPopperProps() {\n if (this.asProps.excludeAnchorProps) {\n return {\n $visible: this.state.$visible,\n ...this.state.tooltipProps,\n };\n }\n\n return {\n $visible: this.state.$visible,\n ...this.state.anchorProps,\n ...this.state.tooltipProps,\n };\n }\n\n virtualElementPosition = { x: 0, y: 0 };\n virtualTriggerElement = null;\n unsubscribe = [];\n componentDidMount() {\n const { eventEmitter, plotId } = this.asProps;\n\n this.unsubscribe.push(\n eventEmitter.subscribe(`setTooltipRenderingProps_${plotId}`, (anchorProps, tooltipProps) => {\n this.setState({ anchorProps, tooltipProps });\n }),\n eventEmitter.subscribe(`setTooltipVisible_${plotId}`, (visible) =>\n this.setState({ $visible: visible }),\n ),\n eventEmitter.subscribe(`setTooltipPosition_${plotId}`, (x, y) => {\n this.virtualElementPosition.x = x;\n this.virtualElementPosition.y = y;\n if (this.virtualTriggerElement === null) {\n this.virtualTriggerElement = {};\n setTimeout(() => {\n this.setPopperTrigger(this.virtualTriggerElement);\n }, 0);\n }\n this.virtualTriggerElement.getBoundingClientRect = () => {\n const { x, y } = this.virtualElementPosition;\n return { width: 0, height: 0, top: y, right: x, bottom: y, left: x };\n };\n this.popper.current?.update();\n }),\n );\n }\n\n componentWillUnmount() {\n this.unsubscribe.forEach((unsubscribe) => unsubscribe());\n }\n\n handleTriggerClick = (e) => {\n const { onClick } = this.asProps;\n const { xIndex, yIndex } = this.state.tooltipProps;\n\n const index = xIndex ?? yIndex;\n\n onClick?.(index, e);\n };\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, onClick: _, ...other } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);\n this.renderContext.index = -1;\n this.renderContext.indexKeysCache.clear();\n this.renderContext.patterns = this.asProps.patterns ?? this.state.tooltipProps.patterns;\n\n return (\n <TooltipDotRenderContext.Provider value={this.renderContext}>\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction='none'\n explicitTriggerSet\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advancedMode\n ? (\n <Children />\n )\n : (\n <>\n {tag && <Tooltip.Trigger tag={tag} onClick={this.handleTriggerClick} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n </TooltipDotRenderContext.Provider>\n );\n }\n}\n\nfunction PopperTrigger() {\n return <Root render={Popper.Trigger} />;\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = React.useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition='inside'\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\nPopperPopper.style = style;\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\nTitle.style = style;\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const resolveColor = useColorResolver();\n const renderContext = React.useContext(TooltipDotRenderContext);\n const defaultColor = getChartDefaultColorName(renderContext.index);\n const patterns = props.patterns ?? renderContext.patterns;\n\n const key = Children;\n if (!renderContext.indexKeysCache.has(key)) {\n renderContext.indexKeysCache.add(key);\n renderContext.index += 1;\n }\n const SDotGroup = Root;\n const SDot = Box;\n const SDotCircle = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n {patterns\n ? (\n <SDot>\n <PatternSymbol\n color={resolveColor(color ?? defaultColor)}\n patternKey={color ?? defaultColor}\n />\n </SDot>\n )\n : (\n <SDot>\n <SDotCircle color={resolveColor(color ?? defaultColor)} />\n </SDot>\n )}\n <Children />\n </SDotGroup>,\n );\n}\nDot.style = style;\n\nfunction Footer(props) {\n const { styles } = props;\n const SFooter = Root;\n return sstyled(styles)(<SFooter render={Box} __excludeProps={['data', 'scale']} />);\n}\nFooter.style = style;\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: PopperTrigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Tooltip.js","names":["Popper","Box","Component","Root","sstyled","findComponent","useColorResolver","React","createElement","PatternSymbol","style","_sstyled","insert","getChartDefaultColorName","TooltipDotRenderContext","createContext","index","indexKeysCache","Set","TooltipRoot","constructor","args","_defineProperty","$visible","anchorProps","tooltipProps","x","y","e","onClick","asProps","xIndex","yIndex","state","getTriggerProps","hideHoverLine","getPopperProps","excludeAnchorProps","componentDidMount","eventEmitter","plotId","unsubscribe","push","subscribe","setState","visible","virtualElementPosition","virtualTriggerElement","setTimeout","setPopperTrigger","getBoundingClientRect","width","height","top","right","bottom","left","popper","current","update","componentWillUnmount","forEach","render","_ref","Children","children","tag","forcedAdvancedMode","_","other","advancedMode","Tooltip","Trigger","displayName","renderContext","clear","patterns","Provider","value","_assignProps","handlerCancel","allowedAutoPlacements","setTrigger","Fragment","handleTriggerClick","PopperTrigger","_ref2","arguments[0]","_assignProps2","PopperPopper","props","_ref6","Element","STooltip","styles","useCallback","cn","Title","_ref3","_ref7","STitle","_assignProps3","Dot","_ref4","_ref8","color","resolveColor","useContext","defaultColor","key","has","add","SDotGroup","SDot","SDotCircle","_assignProps4","undefined","Footer","_ref5","_ref9","SFooter","_assignProps5"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import { Popper, Box } from '@semcore/base-components';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport findComponent from '@semcore/core/lib/utils/findComponent';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternSymbol } from './Pattern';\nimport style from './style/tooltip.shadow.css';\nimport { getChartDefaultColorName } from './utils';\n\n/**\n * `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.\n * Probably it may be removed after migrating to a new core.\n */\nconst TooltipDotRenderContext = React.createContext({ index: -1, indexKeysCache: new Set() });\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n anchorProps: {},\n tooltipProps: {},\n };\n\n renderContext = { index: -1, indexKeysCache: new Set() };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n const { x, y, hideHoverLine } = this.asProps;\n return { x, y, hideHoverLine };\n }\n\n getPopperProps() {\n if (this.asProps.excludeAnchorProps) {\n return {\n $visible: this.state.$visible,\n ...this.state.tooltipProps,\n };\n }\n\n return {\n $visible: this.state.$visible,\n ...this.state.anchorProps,\n ...this.state.tooltipProps,\n };\n }\n\n virtualElementPosition = { x: 0, y: 0 };\n virtualTriggerElement = null;\n unsubscribe = [];\n componentDidMount() {\n const { eventEmitter, plotId } = this.asProps;\n\n this.unsubscribe.push(\n eventEmitter.subscribe(`setTooltipRenderingProps_${plotId}`, (anchorProps, tooltipProps) => {\n this.setState({ anchorProps, tooltipProps });\n }),\n eventEmitter.subscribe(`setTooltipVisible_${plotId}`, (visible) =>\n this.setState({ $visible: visible }),\n ),\n eventEmitter.subscribe(`setTooltipPosition_${plotId}`, (x, y) => {\n this.virtualElementPosition.x = x;\n this.virtualElementPosition.y = y;\n if (this.virtualTriggerElement === null) {\n this.virtualTriggerElement = {};\n setTimeout(() => {\n this.setPopperTrigger(this.virtualTriggerElement);\n }, 0);\n }\n this.virtualTriggerElement.getBoundingClientRect = () => {\n const { x, y } = this.virtualElementPosition;\n return { width: 0, height: 0, top: y, right: x, bottom: y, left: x };\n };\n this.popper.current?.update();\n }),\n );\n }\n\n componentWillUnmount() {\n this.unsubscribe.forEach((unsubscribe) => unsubscribe());\n }\n\n handleTriggerClick = (e) => {\n const { onClick } = this.asProps;\n const { xIndex, yIndex } = this.state.tooltipProps;\n\n const index = xIndex ?? yIndex;\n\n onClick?.(index, e);\n };\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, onClick: _, ...other } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);\n this.renderContext.index = -1;\n this.renderContext.indexKeysCache.clear();\n this.renderContext.patterns = this.asProps.patterns ?? this.state.tooltipProps.patterns;\n\n return (\n <TooltipDotRenderContext.Provider value={this.renderContext}>\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction='none'\n explicitTriggerSet\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advancedMode\n ? (\n <Children />\n )\n : (\n <>\n {tag && <Tooltip.Trigger tag={tag} onClick={this.handleTriggerClick} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n </TooltipDotRenderContext.Provider>\n );\n }\n}\n\nfunction PopperTrigger() {\n return <Root render={Popper.Trigger} />;\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = React.useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition='inside'\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\nPopperPopper.style = style;\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\nTitle.style = style;\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const resolveColor = useColorResolver();\n const renderContext = React.useContext(TooltipDotRenderContext);\n const defaultColor = getChartDefaultColorName(renderContext.index);\n const patterns = props.patterns ?? renderContext.patterns;\n\n const key = Children;\n if (!renderContext.indexKeysCache.has(key)) {\n renderContext.indexKeysCache.add(key);\n renderContext.index += 1;\n }\n const SDotGroup = Root;\n const SDot = Box;\n const SDotCircle = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} use:color={undefined} __excludeProps={['data', 'scale']}>\n {patterns\n ? (\n <SDot>\n <PatternSymbol\n color={resolveColor(color ?? defaultColor)}\n patternKey={color ?? defaultColor}\n />\n </SDot>\n )\n : (\n <SDot>\n <SDotCircle color={resolveColor(color ?? defaultColor)} />\n </SDot>\n )}\n <Children />\n </SDotGroup>,\n );\n}\nDot.style = style;\n\nfunction Footer(props) {\n const { styles } = props;\n const SFooter = Root;\n return sstyled(styles)(<SFooter render={Box} __excludeProps={['data', 'scale']} />);\n}\nFooter.style = style;\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: PopperTrigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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","ignoreList":[]}
package/lib/es6/Venn.js CHANGED
@@ -12,17 +12,17 @@ import React from 'react';
12
12
  import createElement from './createElement';
13
13
  import { PatternFill } from './Pattern';
14
14
  /*!__reshadow-styles__:"./style/venn.shadow.css"*/
15
- const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SCircle_vokm5_gg_,.___SIntersection_vokm5_gg_{stroke:var(--intergalactic-chart-grid-border, #fff);stroke-width:2px}.___SCircle_vokm5_gg_{fill:var(--intergalactic-chart-palette-order-2, rgb(56, 227, 181));fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_vokm5);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_vokm5_gg_:hover{fill-opacity:.7}}.___SCircle_vokm5_gg_.__color_vokm5_gg_{fill:var(--color_vokm5)}.___SCircle_vokm5_gg_.__pattern_vokm5_gg_.__color_vokm5_gg_{fill:var(--pattern_vokm5);fill-opacity:.7;stroke:var(--color_vokm5);stroke-width:1px}@media (hover:hover){.___SCircle_vokm5_gg_.__pattern_vokm5_gg_.__color_vokm5_gg_:hover{fill-opacity:.85}}.___SCircle_vokm5_gg_.__transparent_vokm5_gg_{opacity:.3}.___SIntersection_vokm5_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_vokm5_gg_:hover{fill-opacity:.1}}.___SIntersection_vokm5_gg_.__transparent_vokm5_gg_{opacity:.3}", /*__inner_css_end__*/"vokm5_gg_"),
15
+ const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SCircle_iobh3_gg_{fill:var(--intergalactic-chart-palette-order-2,#38e3b5);stroke:var(--intergalactic-chart-grid-border,#fff);stroke-width:2px;fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_iobh3);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_iobh3_gg_:hover{fill-opacity:.7}}.___SCircle_iobh3_gg_.__color_iobh3_gg_{fill:var(--color_iobh3)}.___SCircle_iobh3_gg_.__pattern_iobh3_gg_.__color_iobh3_gg_{fill:var(--pattern_iobh3);fill-opacity:.7;stroke:var(--color_iobh3);stroke-width:1px}@media (hover:hover){.___SCircle_iobh3_gg_.__pattern_iobh3_gg_.__color_iobh3_gg_:hover{fill-opacity:.85}}.___SCircle_iobh3_gg_.__transparent_iobh3_gg_{opacity:.3}.___SIntersection_iobh3_gg_{stroke:var(--intergalactic-chart-grid-border,#fff);stroke-width:2px;fill-opacity:0}@media (hover:hover){.___SIntersection_iobh3_gg_:hover{fill-opacity:.1}}.___SIntersection_iobh3_gg_.__transparent_iobh3_gg_{opacity:.3}", /*__inner_css_end__*/"iobh3_gg_"),
16
16
  /*__reshadow_css_end__*/
17
17
  {
18
- "__SCircle": "___SCircle_vokm5_gg_",
19
- "_color": "__color_vokm5_gg_",
20
- "--color": "--color_vokm5",
21
- "_transparent": "__transparent_vokm5_gg_",
22
- "__SIntersection": "___SIntersection_vokm5_gg_",
23
- "--duration": "--duration_vokm5",
24
- "_pattern": "__pattern_vokm5_gg_",
25
- "--pattern": "--pattern_vokm5"
18
+ "__SCircle": "___SCircle_iobh3_gg_",
19
+ "_color": "__color_iobh3_gg_",
20
+ "--color": "--color_iobh3",
21
+ "_transparent": "__transparent_iobh3_gg_",
22
+ "__SIntersection": "___SIntersection_iobh3_gg_",
23
+ "--duration": "--duration_iobh3",
24
+ "_pattern": "__pattern_iobh3_gg_",
25
+ "--pattern": "--pattern_iobh3"
26
26
  });
27
27
  import Tooltip from './Tooltip';
28
28
  import { getChartDefaultColorName } from './utils';
@@ -240,6 +240,12 @@ function VennTooltip(props) {
240
240
  }));
241
241
  }
242
242
  ;
243
+
244
+ /**
245
+ * Venn
246
+ *
247
+ * {@link https://developer.semrush.com/intergalactic/data-display/venn-chart/venn-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/venn-chart/venn-chart-code/|Examples}
248
+ */
243
249
  const Venn = createElement(VennRoot, {
244
250
  Circle,
245
251
  Intersection,
@@ -1 +1 @@
1
- {"version":3,"file":"Venn.js","names":["FadeInOut","Component","Root","sstyled","callAllEventHandlers","canUseDOM","uniqueIDEnhancement","venn","normalizeSolution","scaleSolution","intersectionAreaPath","React","createElement","PatternFill","style","_sstyled","insert","Tooltip","getChartDefaultColorName","VennRoot","constructor","args","_defineProperty","document","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","forwardRef","ref","_extends","tag","generateGetBoundingClientRect","x","y","width","height","top","right","bottom","left","getVennData","data","orientation","orientationOrder","size","vennData","Object","entries","map","dataKey","sets","split","getTooltipProps","uniqId","uid","getCircleProps","index","colorBackwardCapabilityOffset","color","name","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","minRadius","onClickCircleRoot","handlerOnClick","bind","getIntersectionProps","dataKeys","delay","values","filter","d","includes","setid","onClickIntersectionRoot","e","stopPropagation","onClick","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Math","PI","c1","c2","radius","Circle","SCircle","styles","_ref2","describeValueEntity","Fragment","cn","undefined","Intersection","_ref3","SIntersection","renderIntersection","useCallback","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","_assignProps","Venn","_______childrenComponents"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import { FadeInOut } from '@semcore/base-components';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/venn.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getChartDefaultColorName } from './utils';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n minRadius: 6,\n };\n\n static enhance = [uniqueIDEnhancement()];\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getTooltipProps() {\n return {\n uniqId: this.asProps.uid,\n };\n }\n\n getCircleProps(props, index) {\n const colorBackwardCapabilityOffset = 1;\n const color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color,\n patterns: this.asProps.patterns,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n resolveColor: this.asProps.resolveColor,\n color,\n uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\n onClickCircleRoot: this.handlerOnClick(props.dataKey).bind(this),\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n resolveColor: this.asProps.resolveColor,\n onClickIntersectionRoot: this.handlerOnClick(props.dataKey).bind(this),\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n handlerOnClick(dataKey) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(dataKey, e);\n };\n }\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n resolveColor,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n uid,\n patterns,\n minRadius,\n onClick,\n onClickCircleRoot,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n onClickCapture={callAllEventHandlers(onClickCircleRoot, onClick)}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </>\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n onClick,\n onClickIntersectionRoot,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n onClickCapture={callAllEventHandlers(onClickIntersectionRoot, onClick)}\n />,\n );\n}\n\nfunction VennTooltip(props) {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Venn.js","names":["FadeInOut","Component","Root","sstyled","callAllEventHandlers","canUseDOM","uniqueIDEnhancement","venn","normalizeSolution","scaleSolution","intersectionAreaPath","React","createElement","PatternFill","style","_sstyled","insert","Tooltip","getChartDefaultColorName","VennRoot","constructor","args","_defineProperty","document","visible","props","tooltipProps","clientX","clientY","eventEmitter","plotId","asProps","emit","forwardRef","ref","_extends","tag","generateGetBoundingClientRect","x","y","width","height","top","right","bottom","left","getVennData","data","orientation","orientationOrder","size","vennData","Object","entries","map","dataKey","sets","split","getTooltipProps","uniqId","uid","getCircleProps","index","colorBackwardCapabilityOffset","color","name","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","minRadius","onClickCircleRoot","handlerOnClick","bind","getIntersectionProps","dataKeys","delay","values","filter","d","includes","setid","onClickIntersectionRoot","e","stopPropagation","onClick","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Math","PI","c1","c2","radius","Circle","SCircle","styles","_ref2","describeValueEntity","Fragment","cn","undefined","Intersection","_ref3","SIntersection","renderIntersection","useCallback","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","_assignProps","Venn","_______childrenComponents"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import { FadeInOut } from '@semcore/base-components';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill } from './Pattern';\nimport style from './style/venn.shadow.css';\nimport Tooltip from './Tooltip';\nimport { getChartDefaultColorName } from './utils';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n minRadius: 6,\n };\n\n static enhance = [uniqueIDEnhancement()];\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter, plotId } = this.asProps;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, props, tooltipProps);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, visible);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getTooltipProps() {\n return {\n uniqId: this.asProps.uid,\n };\n }\n\n getCircleProps(props, index) {\n const colorBackwardCapabilityOffset = 1;\n const color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color,\n patterns: this.asProps.patterns,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n resolveColor: this.asProps.resolveColor,\n color,\n uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\n onClickCircleRoot: this.handlerOnClick(props.dataKey).bind(this),\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n resolveColor: this.asProps.resolveColor,\n onClickIntersectionRoot: this.handlerOnClick(props.dataKey).bind(this),\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n handlerOnClick(dataKey) {\n return (e) => {\n e.stopPropagation();\n\n const { onClick } = this.asProps;\n\n if (!onClick) return;\n\n onClick(dataKey, e);\n };\n }\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n resolveColor,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n uid,\n patterns,\n minRadius,\n onClick,\n onClickCircleRoot,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n onClickCapture={callAllEventHandlers(onClickCircleRoot, onClick)}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </>\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n onClick,\n onClickIntersectionRoot,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n onClickCapture={callAllEventHandlers(onClickIntersectionRoot, onClick)}\n />,\n );\n}\n\nfunction VennTooltip(props) {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\n/**\n * Venn\n *\n * {@link https://developer.semrush.com/intergalactic/data-display/venn-chart/venn-chart-api/|API} | {@link https://developer.semrush.com/intergalactic/data-display/venn-chart/venn-chart-code/|Examples}\n */\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":";;;;AAAA,SAASA,SAAS,QAAQ,0BAA0B;AACpD,SAASC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACxD,SAASC,oBAAoB,QAAQ,qCAAqC;AAC1E,OAAOC,SAAS,MAAM,mCAAmC;AACzD,OAAOC,mBAAmB,MAAM,kCAAkC;AAClE,SAASC,IAAI,EAAEC,iBAAiB,EAAEC,aAAa,EAAEC,oBAAoB,QAAQ,kBAAkB;AAC/F,OAAOC,KAAK,MAAM,OAAO;AAEzB,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,SAASC,WAAW,QAAQ,WAAW;AAAC;AAAA,MAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAExC,OAAOC,OAAO,MAAM,WAAW;AAC/B,SAASC,wBAAwB,QAAQ,SAAS;AAElD,MAAMC,QAAQ,SAASlB,SAAS,CAAC;EAAAmB,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,yBAadjB,SAAS,CAAC,CAAC,GAAGkB,QAAQ,CAACX,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAAU,eAAA,6BAM5C,CAACE,OAAO,EAAEC,KAAK,EAAEC,YAAY,KAAK,CAAC;MAAEC,OAAO;MAAEC;IAAQ,CAAC,KAAK;MAC/E,MAAM;QAAEC,YAAY;QAAEC;MAAO,CAAC,GAAG,IAAI,CAACC,OAAO;MAE7CF,YAAY,CAACG,IAAI,CAAC,sBAAsBF,MAAM,EAAE,EAAEH,OAAO,EAAEC,OAAO,CAAC;MACnEC,YAAY,CAACG,IAAI,CAAC,4BAA4BF,MAAM,EAAE,EAAEL,KAAK,EAAEC,YAAY,CAAC;MAC5EG,YAAY,CAACG,IAAI,CAAC,qBAAqBF,MAAM,EAAE,EAAEN,OAAO,CAAC;IAC3D,CAAC;IAAAF,eAAA,qCAyEeX,KAAK,CAACsB,UAAU,CAAC,CAACR,KAAK,EAAES,GAAG,KAAK;MAC/C,oBAAOvB,KAAA,CAAAC,aAAA,CAACZ,SAAS,EAAAmC,QAAA;QAAC,mBAAW;QAACD,GAAG,EAAEA,GAAI;QAACE,GAAG,EAAC,GAAG;QAACZ,OAAO;MAAA,GAAKC,KAAK,CAAG,CAAC;IACvE,CAAC,CAAC;EAAA;EArFFY,6BAA6BA,CAACC,CAAC,GAAG,CAAC,EAAEC,CAAC,GAAG,CAAC,EAAE;IAC1C,OAAO,OAAO;MAAEC,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE,CAAC;MAAEC,GAAG,EAAEH,CAAC;MAAEI,KAAK,EAAEL,CAAC;MAAEM,MAAM,EAAEL,CAAC;MAAEM,IAAI,EAAEP;IAAE,CAAC,CAAC;EAC9E;EAUAQ,WAAWA,CAAA,EAAG;IACZ,MAAM;MAAEC,IAAI;MAAEC,WAAW;MAAEC,gBAAgB;MAAEC;IAAK,CAAC,GAAG,IAAI,CAACnB,OAAO;IAClE,MAAM,CAACS,KAAK,EAAEC,MAAM,CAAC,GAAGS,IAAI;IAC5B,MAAMC,QAAQ,GAAGC,MAAM,CAACC,OAAO,CAACN,IAAI,CAAC,CAACO,GAAG,CAAC,CAAC,CAACC,OAAO,EAAEL,IAAI,CAAC,MAAM;MAC9DM,IAAI,EAAED,OAAO,CAACE,KAAK,CAAC,GAAG,CAAC;MACxBP;IACF,CAAC,CAAC,CAAC;IACH,OAAOzC,aAAa,CAClBD,iBAAiB,CAACD,IAAI,CAAC4C,QAAQ,CAAC,EAAEH,WAAW,EAAEC,gBAAgB,CAAC,EAChET,KAAK,EACLC,MAAM,EACN,EACF,CAAC;EACH;EAEAiB,eAAeA,CAAA,EAAG;IAChB,OAAO;MACLC,MAAM,EAAE,IAAI,CAAC5B,OAAO,CAAC6B;IACvB,CAAC;EACH;EAEAC,cAAcA,CAACpC,KAAK,EAAEqC,KAAK,EAAE;IAC3B,MAAMC,6BAA6B,GAAG,CAAC;IACvC,MAAMC,KAAK,GAAGvC,KAAK,CAACuC,KAAK,IAAI9C,wBAAwB,CAAC4C,KAAK,GAAGC,6BAA6B,CAAC;IAC5F,MAAMrC,YAAY,GAAG;MACnB6B,OAAO,EAAE9B,KAAK,CAAC8B,OAAO;MACtBU,IAAI,EAAExC,KAAK,CAACwC,IAAI;MAChBD,KAAK;MACLE,QAAQ,EAAE,IAAI,CAACnC,OAAO,CAACmC;IACzB,CAAC;IAED,OAAO;MACLC,QAAQ,EAAE,IAAI,CAACpC,OAAO,CAACoC,QAAQ;MAC/BpB,IAAI,EAAE,IAAI,CAACI,QAAQ,CAAC1B,KAAK,CAAC8B,OAAO,CAAC;MAClCa,YAAY,EAAE,IAAI,CAACrC,OAAO,CAACgB,IAAI,CAACtB,KAAK,CAAC8B,OAAO,CAAC;MAC9Cc,WAAW,EAAE,IAAI,CAACC,kBAAkB,CAAC,IAAI,EAAE7C,KAAK,EAAEC,YAAY,CAAC;MAC/D6C,YAAY,EAAE,IAAI,CAACD,kBAAkB,CAAC,KAAK,EAAE7C,KAAK,EAAEC,YAAY,CAAC;MACjE8C,WAAW,EAAE,IAAI,CAACzC,OAAO,CAACyC,WAAW;MACrCC,YAAY,EAAE,IAAI,CAAC1C,OAAO,CAAC0C,YAAY;MACvCT,KAAK;MACLJ,GAAG,EAAE,GAAG,IAAI,CAAC7B,OAAO,CAAC6B,GAAG,IAAIE,KAAK,EAAE;MACnCI,QAAQ,EAAE,IAAI,CAACnC,OAAO,CAACmC,QAAQ;MAC/BQ,SAAS,EAAE,IAAI,CAAC3C,OAAO,CAAC2C,SAAS;MACjCC,iBAAiB,EAAE,IAAI,CAACC,cAAc,CAACnD,KAAK,CAAC8B,OAAO,CAAC,CAACsB,IAAI,CAAC,IAAI;IACjE,CAAC;EACH;EAEAC,oBAAoBA,CAACrD,KAAK,EAAE;IAC1B,MAAM;MAAE0C,QAAQ;MAAEK;IAAY,CAAC,GAAG,IAAI,CAACzC,OAAO;IAC9C,MAAMgD,QAAQ,GAAGtD,KAAK,CAAC8B,OAAO,CAACE,KAAK,CAAC,GAAG,CAAC;IACzC,MAAM/B,YAAY,GAAG;MACnB6B,OAAO,EAAE9B,KAAK,CAAC8B,OAAO;MACtBU,IAAI,EAAExC,KAAK,CAACwC,IAAI;MAChBD,KAAK,EAAEvC,KAAK,CAACuC,KAAK;MAClBG,QAAQ,EAAE1C,KAAK,CAAC0C,QAAQ;MACxBK,WAAW,EAAE/C,KAAK,CAAC+C;IACrB,CAAC;IAED,OAAO;MACLL,QAAQ;MACRa,KAAK,EAAEb,QAAQ;MACfpB,IAAI,EAAEK,MAAM,CAAC6B,MAAM,CAAC,IAAI,CAAC9B,QAAQ,CAAC,CAAC+B,MAAM,CAAEC,CAAC,IAAKJ,QAAQ,CAACK,QAAQ,CAACD,CAAC,CAACE,KAAK,CAAC,CAAC;MAC5EjB,YAAY,EAAE,IAAI,CAACrC,OAAO,CAACgB,IAAI,CAACtB,KAAK,CAAC8B,OAAO,CAAC;MAC9Cc,WAAW,EAAE,IAAI,CAACC,kBAAkB,CAAC,IAAI,EAAE7C,KAAK,EAAEC,YAAY,CAAC;MAC/D6C,YAAY,EAAE,IAAI,CAACD,kBAAkB,CAAC,KAAK,EAAE7C,KAAK,EAAEC,YAAY,CAAC;MACjE8C,WAAW;MACXC,YAAY,EAAE,IAAI,CAAC1C,OAAO,CAAC0C,YAAY;MACvCa,uBAAuB,EAAE,IAAI,CAACV,cAAc,CAACnD,KAAK,CAAC8B,OAAO,CAAC,CAACsB,IAAI,CAAC,IAAI;IACvE,CAAC;EACH;EAMAD,cAAcA,CAACrB,OAAO,EAAE;IACtB,OAAQgC,CAAC,IAAK;MACZA,CAAC,CAACC,eAAe,CAAC,CAAC;MAEnB,MAAM;QAAEC;MAAQ,CAAC,GAAG,IAAI,CAAC1D,OAAO;MAEhC,IAAI,CAAC0D,OAAO,EAAE;MAEdA,OAAO,CAAClC,OAAO,EAAEgC,CAAC,CAAC;IACrB,CAAC;EACH;EAEAG,MAAMA,CAAA,EAAG;IACP,MAAMC,OAAO,GAAG,IAAI,CAACA,OAAO;IAC5B,IAAI,CAAC5D,OAAO,CAAC6D,gBAAgB,CAACC,iBAAiB,CAAC,YAAY,CAAC;IAC7D,IAAI,CAAC1C,QAAQ,GAAG,IAAI,CAACL,WAAW,CAAC,CAAC;IAClC,oBACEnC,KAAA,CAAAC,aAAA,CAAC+E,OAAO;MACN,mBAAW;MACXD,MAAM,EAAE,IAAI,CAACI,aAAc;MAC3BC,gBAAgB,EAAC,QAAQ;MACzB5C,QAAQ,EAAE,IAAI,CAACA;IAAS,CACzB,CAAC;EAEN;AACF;AAAC7B,eAAA,CA/HKH,QAAQ,iBACS,MAAM;AAAAG,eAAA,CADvBH,QAAQ,WAEGL,KAAK;AAAAQ,eAAA,CAFhBH,QAAQ,kBAIU;EACpB6B,WAAW,EAAEgD,IAAI,CAACC,EAAE,GAAG,CAAC;EACxBhD,gBAAgB,EAAEA,CAACiD,EAAE,EAAEC,EAAE,KAAKA,EAAE,CAACC,MAAM,GAAGF,EAAE,CAACE,MAAM;EACnDjC,QAAQ,EAAE,GAAG;EACbO,SAAS,EAAE;AACb,CAAC;AAAApD,eAAA,CATGH,QAAQ,aAWK,CAACb,mBAAmB,CAAC,CAAC,CAAC;AAsH1C,SAAS+F,MAAMA,CAAC;EACdV,OAAO,EAAEW,OAAO;EAChBC,MAAM;EACNvC,KAAK;EACLS,YAAY;EACZ1B,IAAI;EACJoB,QAAQ;EACRF,IAAI;EACJV,OAAO;EACPqC,gBAAgB;EAChBpB,WAAW;EACXZ,GAAG;EACHM,QAAQ;EACRQ,SAAS;EACTe,OAAO;EACPd;AACF,CAAC,EAAE;EAAA,IAAA6B,KAAA;EACDZ,gBAAgB,CAACa,mBAAmB,CAAClD,OAAO,EAAEU,IAAI,CAAC;EAEnD,MAAMmC,MAAM,GAAGrD,IAAI,CAACqD,MAAM,GAAG1B,SAAS,GAAGA,SAAS,GAAG3B,IAAI,CAACqD,MAAM;EAChE,IAAIrD,IAAI,CAACqD,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;EAElC,oBACEzF,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA+F,QAAA,SAAAF,KAAA,GACGrG,OAAO,CAACoG,MAAM,CAAC,eACd5F,KAAA,CAAAC,aAAA,CAAC0F,OAAO,EAAAE,KAAA,CAAAG,EAAA;IAAA;IAAA,UAEC,QAAQ;IAAA,SACRlC,YAAY,CAACT,KAAK,CAAC;IAAA,WACjBE,QAAQ,GAAG,QAAQN,GAAG,WAAW,GAAGgD,SAAS;IAAA,MAClD7D,IAAI,CAACT,CAAC;IAAA,MACNS,IAAI,CAACR,CAAC;IAAA,KACP6D,MAAM;IAAA,eACI5B,WAAW;IAAA,gBACV,GAAGL,QAAQ,IAAI;IAAA,kBACb/D,oBAAoB,CAACuE,iBAAiB,EAAEc,OAAO;EAAC,EACjE,CAAC,GAEHvB,QAAQ,iBACPvD,KAAA,CAAAC,aAAA,CAACC,WAAW,EAAA2F,KAAA,CAAAG,EAAA;IAAA,MACN,GAAG/C,GAAG,UAAU;IAAA,cACRI,KAAK;IAAA,SACVS,YAAY,CAACT,KAAK,CAAC;IAAA,YAChBE;EAAQ,EACnB,CAEH,CAAC;AAEP;AAEA,SAAS2C,YAAYA,CAACpF,KAAK,EAAE;EAAA,IAAAqF,KAAA;EAC3B,MAAM;IACJnB,OAAO,EAAEoB,aAAa;IACtBR,MAAM;IACNxD,IAAI;IACJkB,IAAI;IACJV,OAAO;IACPqC,gBAAgB;IAChBpB,WAAW;IACXiB,OAAO;IACPH;EACF,CAAC,GAAG7D,KAAK;EACTmE,gBAAgB,CAACa,mBAAmB,CAAClD,OAAO,EAAEU,IAAI,CAAC;EAEnD,MAAM+C,kBAAkB,GAAGrG,KAAK,CAACsG,WAAW,cAC1CtG,KAAK,CAACsB,UAAU,CAAC,CAACR,KAAK,EAAES,GAAG,KAAK;IAC/B,oBAAOvB,KAAA,CAAAC,aAAA,CAACZ,SAAS,EAAAmC,QAAA;MAAC,mBAAW;MAACD,GAAG,EAAEA,GAAI;MAACE,GAAG,EAAC,MAAM;MAACZ,OAAO;IAAA,GAAKC,KAAK,CAAG,CAAC;EAC1E,CAAC,CAAC,EACF,CAACA,KAAK,CACR,CAAC;EACD,OAAAqF,KAAA,GAAO3G,OAAO,CAACoG,MAAM,CAAC,eACpB5F,KAAA,CAAAC,aAAA,CAACmG,aAAa,EAAAD,KAAA,CAAAH,EAAA;IAAA;IAAA,UAEJK,kBAAkB;IAAA,KACvBtG,oBAAoB,CAACqC,IAAI,CAAC;IAAA,eAChByB,WAAW;IAAA,kBACRpE,oBAAoB,CAACkF,uBAAuB,EAAEG,OAAO;EAAC,EACvE,CAAC;AAEN;AAEA,SAASyB,WAAWA,CAACzF,KAAK,EAAE;EAAA,IAAA0F,IAAA,GAAAC,YAAA;IAAAC,KAAA;EAC1B,MAAMC,YAAY,GACiCrG,OAAO;EAA1D,OAAAoG,KAAA,GAAOlH,OAAO,CAACsB,KAAK,CAAC8E,MAAM,CAAC,eAAC5F,KAAA,CAAAC,aAAA,CAAC0G,YAAY,EAAAD,KAAA,CAAAV,EAAA;IAAA,GAAAY,YAAA;MAAA;IAAA,GAAAJ,IAAA;EAAA,EAAsC,CAAC;AACnF;AAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMK,IAAI,GAAG5G,aAAa,CAACO,QAAQ,EAAE;EACnCkF,MAAM;EACNQ,YAAY;EACZ5F,OAAO,EAAE,CAACiG,WAAW,EAAEjG,OAAO,CAACwG,yBAAyB;AAC1D,CAAC,CAAC;AAEF,eAAeD,IAAI","ignoreList":[]}
@@ -7,10 +7,10 @@ import { Context as I18nContext, useI18n } from '@semcore/core/lib/utils/enhance
7
7
  import React from 'react';
8
8
  import { normalizeLocale } from './locale';
9
9
  /*!__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
10
- const styles = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SPlotA11yModule_1hm82_gg_{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0,}", /*__inner_css_end__*/"1hm82_gg_"),
10
+ const styles = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SPlotA11yModule_19nt6_gg_{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}", /*__inner_css_end__*/"19nt6_gg_"),
11
11
  /*__reshadow_css_end__*/
12
12
  {
13
- "__SPlotA11yModule": "___SPlotA11yModule_1hm82_gg_"
13
+ "__SPlotA11yModule": "___SPlotA11yModule_19nt6_gg_"
14
14
  });
15
15
  import { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';
16
16
  export function PlotA11yModule(props) {