@semcore/d3-chart 3.0.0-beta.1 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/lib/cjs/Area.js +9 -9
  3. package/lib/cjs/Axis.js +14 -14
  4. package/lib/cjs/Bar.js +8 -8
  5. package/lib/cjs/Bubble.js +33 -25
  6. package/lib/cjs/Bubble.js.map +1 -1
  7. package/lib/cjs/Donut.js +105 -89
  8. package/lib/cjs/Donut.js.map +1 -1
  9. package/lib/cjs/Dots.js +9 -9
  10. package/lib/cjs/HorizontalBar.js +8 -8
  11. package/lib/cjs/Hover.js +9 -7
  12. package/lib/cjs/Hover.js.map +1 -1
  13. package/lib/cjs/Line.js +8 -8
  14. package/lib/cjs/Plot.js +3 -3
  15. package/lib/cjs/Radar.js +22 -21
  16. package/lib/cjs/Radar.js.map +1 -1
  17. package/lib/cjs/RadialTree.js +12 -12
  18. package/lib/cjs/ReferenceLine.js +9 -9
  19. package/lib/cjs/ResponsiveContainer.js +8 -3
  20. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  21. package/lib/cjs/ScatterPlot.js +29 -21
  22. package/lib/cjs/ScatterPlot.js.map +1 -1
  23. package/lib/cjs/Tooltip.js +24 -13
  24. package/lib/cjs/Tooltip.js.map +1 -1
  25. package/lib/cjs/Venn.js +56 -35
  26. package/lib/cjs/Venn.js.map +1 -1
  27. package/lib/cjs/a11y/PlotA11yModule.js +2 -2
  28. package/lib/cjs/a11y/PlotA11yView.js +3 -3
  29. package/lib/es6/Area.js +9 -9
  30. package/lib/es6/Axis.js +14 -14
  31. package/lib/es6/Bar.js +8 -8
  32. package/lib/es6/Bubble.js +35 -26
  33. package/lib/es6/Bubble.js.map +1 -1
  34. package/lib/es6/Donut.js +107 -90
  35. package/lib/es6/Donut.js.map +1 -1
  36. package/lib/es6/Dots.js +9 -9
  37. package/lib/es6/HorizontalBar.js +8 -8
  38. package/lib/es6/Hover.js +9 -7
  39. package/lib/es6/Hover.js.map +1 -1
  40. package/lib/es6/Line.js +8 -8
  41. package/lib/es6/Plot.js +3 -3
  42. package/lib/es6/Radar.js +22 -21
  43. package/lib/es6/Radar.js.map +1 -1
  44. package/lib/es6/RadialTree.js +12 -12
  45. package/lib/es6/ReferenceLine.js +9 -9
  46. package/lib/es6/ResponsiveContainer.js +8 -3
  47. package/lib/es6/ResponsiveContainer.js.map +1 -1
  48. package/lib/es6/ScatterPlot.js +31 -22
  49. package/lib/es6/ScatterPlot.js.map +1 -1
  50. package/lib/es6/Tooltip.js +24 -13
  51. package/lib/es6/Tooltip.js.map +1 -1
  52. package/lib/es6/Venn.js +58 -36
  53. package/lib/es6/Venn.js.map +1 -1
  54. package/lib/es6/a11y/PlotA11yModule.js +2 -2
  55. package/lib/es6/a11y/PlotA11yView.js +3 -3
  56. package/package.json +6 -6
@@ -20,9 +20,9 @@ var _flexBox = require("@semcore/flex-box");
20
20
  var _i18nEnhance = require("@semcore/utils/lib/enhances/i18nEnhance");
21
21
  var _intergalacticDynamicLocales = require("./translations/view/__intergalactic-dynamic-locales");
22
22
  /*__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
23
- var styles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_104s4_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);color:var(--intergalactic-text-primary, #191b23);border:3px solid var(--intergalactic-border-primary, #c4c7cf);font-size:var(--intergalactic-fs-50, 10px);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_104s4_gg_.__focus-within_104s4_gg_,.___SPlotA11yView_104s4_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_104s4_gg_:focus,.___SPlotA11yView_104s4_gg_:focus-within{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_104s4_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_104s4_gg_ table,.___SPlotA11yView_104s4_gg_ td,.___SPlotA11yView_104s4_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "104s4_gg_") /*__reshadow_css_end__*/, {
24
- "__SPlotA11yView": "___SPlotA11yView_104s4_gg_",
25
- "_focus-within": "__focus-within_104s4_gg_"
23
+ var styles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_1jcfy_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);color:var(--intergalactic-text-primary, #191b23);border:3px solid var(--intergalactic-border-primary, #c4c7cf);font-size:var(--intergalactic-fs-50, 10px);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_1jcfy_gg_.__focus-within_1jcfy_gg_,.___SPlotA11yView_1jcfy_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_1jcfy_gg_:focus,.___SPlotA11yView_1jcfy_gg_:focus-within{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_1jcfy_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1jcfy_gg_ table,.___SPlotA11yView_1jcfy_gg_ td,.___SPlotA11yView_1jcfy_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "1jcfy_gg_") /*__reshadow_css_end__*/, {
24
+ "__SPlotA11yView": "___SPlotA11yView_1jcfy_gg_",
25
+ "_focus-within": "__focus-within_1jcfy_gg_"
26
26
  });
27
27
  var PlotA11yView = function PlotA11yView(_ref3) {
28
28
  var _ref = arguments[0],
package/lib/es6/Area.js CHANGED
@@ -15,15 +15,15 @@ import createElement from './createElement';
15
15
  import { definedData, scaleOfBandwidth, getNullData, definedNullData } from './utils';
16
16
  import ClipPath from './ClipPath';
17
17
  /*__reshadow-styles__:"./style/area.shadow.css"*/
18
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SArea_113x8_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);fill-opacity:.2}.___SArea_113x8_gg_.__color_113x8_gg_{fill:var(--color_113x8)}.___SArea_113x8_gg_.__transparent_113x8_gg_{opacity:.3}.___SAreaLine_113x8_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SAreaLine_113x8_gg_.__color_113x8_gg_{stroke:var(--color_113x8)}.___SAreaLine_113x8_gg_.__transparent_113x8_gg_{opacity:.3}.___SAreaLine_113x8_gg_,.___SArea_113x8_gg_{transition-property:d;transition-duration:var(--duration_113x8);transition-timing-function:ease-in-out}.___SNull_113x8_gg_{fill:transparent;stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf);stroke-dasharray:4}.___SNull_113x8_gg_.__hide_113x8_gg_{display:none}" /*__inner_css_end__*/, "113x8_gg_") /*__reshadow_css_end__*/, {
19
- "__SArea": "___SArea_113x8_gg_",
20
- "_color": "__color_113x8_gg_",
21
- "--color": "--color_113x8",
22
- "_transparent": "__transparent_113x8_gg_",
23
- "__SAreaLine": "___SAreaLine_113x8_gg_",
24
- "--duration": "--duration_113x8",
25
- "__SNull": "___SNull_113x8_gg_",
26
- "_hide": "__hide_113x8_gg_"
18
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SArea_1wjww_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);fill-opacity:.2}.___SArea_1wjww_gg_.__color_1wjww_gg_{fill:var(--color_1wjww)}.___SArea_1wjww_gg_.__transparent_1wjww_gg_{opacity:.3}.___SAreaLine_1wjww_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SAreaLine_1wjww_gg_.__color_1wjww_gg_{stroke:var(--color_1wjww)}.___SAreaLine_1wjww_gg_.__transparent_1wjww_gg_{opacity:.3}.___SAreaLine_1wjww_gg_,.___SArea_1wjww_gg_{transition-property:d;transition-duration:var(--duration_1wjww);transition-timing-function:ease-in-out}.___SNull_1wjww_gg_{fill:transparent;stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf);stroke-dasharray:4}.___SNull_1wjww_gg_.__hide_1wjww_gg_{display:none}" /*__inner_css_end__*/, "1wjww_gg_") /*__reshadow_css_end__*/, {
19
+ "__SArea": "___SArea_1wjww_gg_",
20
+ "_color": "__color_1wjww_gg_",
21
+ "--color": "--color_1wjww",
22
+ "_transparent": "__transparent_1wjww_gg_",
23
+ "__SAreaLine": "___SAreaLine_1wjww_gg_",
24
+ "--duration": "--duration_1wjww",
25
+ "__SNull": "___SNull_1wjww_gg_",
26
+ "_hide": "__hide_1wjww_gg_"
27
27
  });
28
28
  var AreaRoot = /*#__PURE__*/function (_Component) {
29
29
  _inherits(AreaRoot, _Component);
package/lib/es6/Axis.js CHANGED
@@ -12,20 +12,20 @@ import { Component, sstyled } from '@semcore/core';
12
12
  import createElement from './createElement';
13
13
  import { scaleOfBandwidth } from './utils';
14
14
  /*__reshadow-styles__:"./style/axis.shadow.css"*/
15
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SAxis_rna6f_gg_{stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf)}.___SAxis_rna6f_gg_.__hide_rna6f_gg_,.___STick_rna6f_gg_.__hide_rna6f_gg_{display:none}.___STick_rna6f_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-chart-grid-text-label, #6c6e79)}.___SGrid_rna6f_gg_{fill:transparent;stroke:var(--intergalactic-border-secondary, #e0e1e9)}.___STitle_rna6f_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-text-hint, #6c6e79);transform-origin:var(--transform-origin_rna6f)}.___STitle_rna6f_gg_._position_top_rna6f_gg_{text-anchor:middle}.___STitle_rna6f_gg_._position_bottom_rna6f_gg_{text-anchor:middle;alignment-baseline:hanging}.___STitle_rna6f_gg_._position_left_rna6f_gg_,.___STitle_rna6f_gg_._position_right_rna6f_gg_{transform:rotate(-90deg);text-anchor:middle;alignment-baseline:middle}.___STitle_rna6f_gg_._position_left_rna6f_gg_.__verticalWritingMode_rna6f_gg_,.___STitle_rna6f_gg_._position_right_rna6f_gg_.__verticalWritingMode_rna6f_gg_{writing-mode:vertical-rl;transform:none}.___STick_rna6f_gg_._position_top_rna6f_gg_{transform:translateY(-12px);text-anchor:middle}.___STick_rna6f_gg_._position_bottom_rna6f_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_rna6f_gg_._position_right_rna6f_gg_{transform:translateX(16px);text-anchor:start;alignment-baseline:middle}.___STick_rna6f_gg_._position_left_rna6f_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}.___STick_rna6f_gg_._position_custom_0_rna6f_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_rna6f_gg_._position_custom_1_rna6f_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}" /*__inner_css_end__*/, "rna6f_gg_") /*__reshadow_css_end__*/, {
16
- "__SAxis": "___SAxis_rna6f_gg_",
17
- "_hide": "__hide_rna6f_gg_",
18
- "__STick": "___STick_rna6f_gg_",
19
- "__SGrid": "___SGrid_rna6f_gg_",
20
- "__STitle": "___STitle_rna6f_gg_",
21
- "--transform-origin": "--transform-origin_rna6f",
22
- "_position_top": "_position_top_rna6f_gg_",
23
- "_position_bottom": "_position_bottom_rna6f_gg_",
24
- "_position_right": "_position_right_rna6f_gg_",
25
- "_position_left": "_position_left_rna6f_gg_",
26
- "_verticalWritingMode": "__verticalWritingMode_rna6f_gg_",
27
- "_position_custom_0": "_position_custom_0_rna6f_gg_",
28
- "_position_custom_1": "_position_custom_1_rna6f_gg_"
15
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SAxis_14jt9_gg_{stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf)}.___SAxis_14jt9_gg_.__hide_14jt9_gg_,.___STick_14jt9_gg_.__hide_14jt9_gg_{display:none}.___STick_14jt9_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-chart-grid-text-label, #6c6e79)}.___SGrid_14jt9_gg_{fill:transparent;stroke:var(--intergalactic-border-secondary, #e0e1e9)}.___STitle_14jt9_gg_{font-size:var(--intergalactic-fs-100, 12px);fill:var(--intergalactic-text-hint, #6c6e79);transform-origin:var(--transform-origin_14jt9)}.___STitle_14jt9_gg_._position_top_14jt9_gg_{text-anchor:middle}.___STitle_14jt9_gg_._position_bottom_14jt9_gg_{text-anchor:middle;alignment-baseline:hanging}.___STitle_14jt9_gg_._position_left_14jt9_gg_,.___STitle_14jt9_gg_._position_right_14jt9_gg_{transform:rotate(-90deg);text-anchor:middle;alignment-baseline:middle}.___STitle_14jt9_gg_._position_left_14jt9_gg_.__verticalWritingMode_14jt9_gg_,.___STitle_14jt9_gg_._position_right_14jt9_gg_.__verticalWritingMode_14jt9_gg_{writing-mode:vertical-rl;transform:none}.___STick_14jt9_gg_._position_top_14jt9_gg_{transform:translateY(-12px);text-anchor:middle}.___STick_14jt9_gg_._position_bottom_14jt9_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_14jt9_gg_._position_right_14jt9_gg_{transform:translateX(16px);text-anchor:start;alignment-baseline:middle}.___STick_14jt9_gg_._position_left_14jt9_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}.___STick_14jt9_gg_._position_custom_0_14jt9_gg_{transform:translateY(12px);text-anchor:middle;alignment-baseline:hanging}.___STick_14jt9_gg_._position_custom_1_14jt9_gg_{transform:translateX(-16px);text-anchor:end;alignment-baseline:middle}" /*__inner_css_end__*/, "14jt9_gg_") /*__reshadow_css_end__*/, {
16
+ "__SAxis": "___SAxis_14jt9_gg_",
17
+ "_hide": "__hide_14jt9_gg_",
18
+ "__STick": "___STick_14jt9_gg_",
19
+ "__SGrid": "___SGrid_14jt9_gg_",
20
+ "__STitle": "___STitle_14jt9_gg_",
21
+ "--transform-origin": "--transform-origin_14jt9",
22
+ "_position_top": "_position_top_14jt9_gg_",
23
+ "_position_bottom": "_position_bottom_14jt9_gg_",
24
+ "_position_right": "_position_right_14jt9_gg_",
25
+ "_position_left": "_position_left_14jt9_gg_",
26
+ "_verticalWritingMode": "__verticalWritingMode_14jt9_gg_",
27
+ "_position_custom_0": "_position_custom_0_14jt9_gg_",
28
+ "_position_custom_1": "_position_custom_1_14jt9_gg_"
29
29
  });
30
30
  var CUSTOM_0 = Symbol('custom_0');
31
31
  var CUSTOM_1 = Symbol('custom_1');
package/lib/es6/Bar.js CHANGED
@@ -13,14 +13,14 @@ import createElement from './createElement';
13
13
  import ClipPath from './ClipPath';
14
14
  import { getBandwidth, roundedPath } from './utils';
15
15
  /*__reshadow-styles__:"./style/bar.shadow.css"*/
16
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_1ywra_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_1ywra);transition-timing-function:ease-in-out}.___SBar_1ywra_gg_.__color_1ywra_gg_{fill:var(--color_1ywra)}.___SBar_1ywra_gg_.__hide_1ywra_gg_{display:none}.___SBar_1ywra_gg_.__transparent_1ywra_gg_{opacity:.3}.___SBackground_1ywra_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}" /*__inner_css_end__*/, "1ywra_gg_") /*__reshadow_css_end__*/, {
17
- "__SBar": "___SBar_1ywra_gg_",
18
- "--duration": "--duration_1ywra",
19
- "_color": "__color_1ywra_gg_",
20
- "--color": "--color_1ywra",
21
- "_hide": "__hide_1ywra_gg_",
22
- "_transparent": "__transparent_1ywra_gg_",
23
- "__SBackground": "___SBackground_1ywra_gg_"
16
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_g0ywm_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_g0ywm);transition-timing-function:ease-in-out}.___SBar_g0ywm_gg_.__color_g0ywm_gg_{fill:var(--color_g0ywm)}.___SBar_g0ywm_gg_.__hide_g0ywm_gg_{display:none}.___SBar_g0ywm_gg_.__transparent_g0ywm_gg_{opacity:.3}.___SBackground_g0ywm_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}" /*__inner_css_end__*/, "g0ywm_gg_") /*__reshadow_css_end__*/, {
17
+ "__SBar": "___SBar_g0ywm_gg_",
18
+ "--duration": "--duration_g0ywm",
19
+ "_color": "__color_g0ywm_gg_",
20
+ "--color": "--color_g0ywm",
21
+ "_hide": "__hide_g0ywm_gg_",
22
+ "_transparent": "__transparent_g0ywm_gg_",
23
+ "__SBackground": "___SBackground_g0ywm_gg_"
24
24
  });
25
25
  export var MIN_HEIGHT = 2;
26
26
  var calcPartBarY = function calcPartBarY(y, minHeight, height) {
package/lib/es6/Bubble.js CHANGED
@@ -8,10 +8,11 @@ import _inherits from "@babel/runtime/helpers/inherits";
8
8
  import _createSuper from "@babel/runtime/helpers/createSuper";
9
9
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
10
  import { sstyled as _sstyled } from "@semcore/core";
11
+ import { assignProps as _assignProps } from "@semcore/core";
11
12
  import React from 'react';
12
13
  import { scaleSqrt } from 'd3-scale';
13
14
  import { transition } from 'd3-transition';
14
- import { Component, sstyled } from '@semcore/core';
15
+ import { Component, Root, sstyled } from '@semcore/core';
15
16
  import canUseDOM from '@semcore/utils/lib/canUseDOM';
16
17
  import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
17
18
  import createElement from './createElement';
@@ -19,16 +20,16 @@ import ClipPath from './ClipPath';
19
20
  import { CONSTANT, measureText } from './utils';
20
21
  import Tooltip from './Tooltip';
21
22
  /*__reshadow-styles__:"./style/bubble.shadow.css"*/
22
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBubble_1fggl_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px;transition-property:cx,cy;transition-duration:var(--duration_1fggl);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SBubble_1fggl_gg_:hover{opacity:.8}}.___SBubble_1fggl_gg_.__color_1fggl_gg_{fill:var(--color_1fggl)}.___SBubble_1fggl_gg_.__transparent_1fggl_gg_{opacity:.3}.___SCenter_1fggl_gg_{text-anchor:middle;font-size:calc(var(--intergalactic-fs-100, 12px) - 1px);stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SCenter_1fggl_gg_.__color_1fggl_gg_{stroke:var(--color_1fggl)}.___SCenter_1fggl_gg_.__transparent_1fggl_gg_{opacity:.3}.___SLabel_1fggl_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SLabel_1fggl_gg_._position_right_1fggl_gg_{text-anchor:end}.___SLabel_1fggl_gg_._position_left_1fggl_gg_{text-anchor:start}.___SLabel_1fggl_gg_.__color_1fggl_gg_{fill:var(--color_1fggl)}.___SLabel_1fggl_gg_.__transparent_1fggl_gg_{opacity:.3}" /*__inner_css_end__*/, "1fggl_gg_") /*__reshadow_css_end__*/, {
23
- "__SBubble": "___SBubble_1fggl_gg_",
24
- "--duration": "--duration_1fggl",
25
- "_color": "__color_1fggl_gg_",
26
- "--color": "--color_1fggl",
27
- "_transparent": "__transparent_1fggl_gg_",
28
- "__SCenter": "___SCenter_1fggl_gg_",
29
- "__SLabel": "___SLabel_1fggl_gg_",
30
- "_position_right": "_position_right_1fggl_gg_",
31
- "_position_left": "_position_left_1fggl_gg_"
23
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBubble_19s13_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px;transition-property:cx,cy;transition-duration:var(--duration_19s13);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SBubble_19s13_gg_:hover{opacity:.8}}.___SBubble_19s13_gg_.__color_19s13_gg_{fill:var(--color_19s13)}.___SBubble_19s13_gg_.__transparent_19s13_gg_{opacity:.3}.___SCenter_19s13_gg_{text-anchor:middle;font-size:calc(var(--intergalactic-fs-100, 12px) - 1px);stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SCenter_19s13_gg_.__color_19s13_gg_{stroke:var(--color_19s13)}.___SCenter_19s13_gg_.__transparent_19s13_gg_{opacity:.3}.___SLabel_19s13_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SLabel_19s13_gg_._position_right_19s13_gg_{text-anchor:end}.___SLabel_19s13_gg_._position_left_19s13_gg_{text-anchor:start}.___SLabel_19s13_gg_.__color_19s13_gg_{fill:var(--color_19s13)}.___SLabel_19s13_gg_.__transparent_19s13_gg_{opacity:.3}" /*__inner_css_end__*/, "19s13_gg_") /*__reshadow_css_end__*/, {
24
+ "__SBubble": "___SBubble_19s13_gg_",
25
+ "--duration": "--duration_19s13",
26
+ "_color": "__color_19s13_gg_",
27
+ "--color": "--color_19s13",
28
+ "_transparent": "__transparent_19s13_gg_",
29
+ "__SCenter": "___SCenter_19s13_gg_",
30
+ "__SLabel": "___SLabel_19s13_gg_",
31
+ "_position_right": "_position_right_19s13_gg_",
32
+ "_position_left": "_position_left_19s13_gg_"
32
33
  });
33
34
  var BubbleRoot = /*#__PURE__*/function (_Component) {
34
35
  _inherits(BubbleRoot, _Component);
@@ -41,14 +42,14 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
41
42
  }
42
43
  _this = _super.call.apply(_super, [this].concat(args));
43
44
  _defineProperty(_assertThisInitialized(_this), "virtualElement", canUseDOM() ? document.createElement('div') : {});
44
- _defineProperty(_assertThisInitialized(_this), "bindHandlerTooltip", function (visible, props) {
45
- return function (_ref2) {
46
- var x = _ref2.clientX,
47
- y = _ref2.clientY;
45
+ _defineProperty(_assertThisInitialized(_this), "bindHandlerTooltip", function (visible, props, tooltipProps) {
46
+ return function (_ref4) {
47
+ var x = _ref4.clientX,
48
+ y = _ref4.clientY;
48
49
  var eventEmitter = _this.asProps.eventEmitter;
49
50
  _this.virtualElement.getBoundingClientRect = _this.generateGetBoundingClientRect(x, y);
50
51
  _this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;
51
- eventEmitter.emit('onTooltipVisible', visible, props, _this.virtualElement);
52
+ eventEmitter.emit('onTooltipVisible', visible, props, tooltipProps, _this.virtualElement);
52
53
  };
53
54
  });
54
55
  return _this;
@@ -101,7 +102,7 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
101
102
  }, {
102
103
  key: "renderCircle",
103
104
  value: function renderCircle(d, i) {
104
- var _ref, _d$color;
105
+ var _ref2, _d$color;
105
106
  var _this$asProps2 = this.asProps,
106
107
  color = _this$asProps2.color,
107
108
  scale = _this$asProps2.scale,
@@ -132,17 +133,17 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
132
133
  right: xScale(d[x]) + offset[0] - z(d[value]),
133
134
  left: xScale(d[x]) + offset[0] + z(d[value])
134
135
  }[labelPosition];
135
- return _ref = sstyled(styles), /*#__PURE__*/React.createElement("g", _ref.cn("g", {
136
+ return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement("g", _ref2.cn("g", {
136
137
  "key": "circle(#".concat(i, ")"),
137
- "onMouseMove": this.bindHandlerTooltip(true, _objectSpread(_objectSpread({}, this.props), {}, {
138
+ "onMouseMove": this.bindHandlerTooltip(true, this.props, {
138
139
  xIndex: i,
139
140
  index: i
140
- })),
141
- "onMouseLeave": this.bindHandlerTooltip(false, _objectSpread(_objectSpread({}, this.props), {}, {
141
+ }),
142
+ "onMouseLeave": this.bindHandlerTooltip(false, this.props, {
142
143
  xIndex: i,
143
144
  index: i
144
- }))
145
- }), markedCross && /*#__PURE__*/React.createElement(SCenter, _ref.cn("SCenter", {
145
+ })
146
+ }), markedCross && /*#__PURE__*/React.createElement(SCenter, _ref2.cn("SCenter", {
146
147
  "aria-hidden": true,
147
148
  "x": xScale(d[x]) + offset[0],
148
149
  "y": yScale(d[y]) + offset[1],
@@ -150,7 +151,7 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
150
151
  "clipPath": "url(#".concat(uid, ")"),
151
152
  "color": (_d$color = d[color]) !== null && _d$color !== void 0 ? _d$color : color,
152
153
  "transparent": transparent
153
- }), "+"), /*#__PURE__*/React.createElement(SBubble, _ref.cn("SBubble", {
154
+ }), "+"), /*#__PURE__*/React.createElement(SBubble, _ref2.cn("SBubble", {
154
155
  "aria-hidden": true,
155
156
  "id": "".concat(uid).concat(uid),
156
157
  "index": i,
@@ -162,7 +163,7 @@ var BubbleRoot = /*#__PURE__*/function (_Component) {
162
163
  "r": z(d[value]),
163
164
  "use:duration": "".concat(duration, "ms"),
164
165
  "transparent": transparent
165
- })), d[label] && /*#__PURE__*/React.createElement(SLabel, _ref.cn("SLabel", {
166
+ })), d[label] && /*#__PURE__*/React.createElement(SLabel, _ref2.cn("SLabel", {
166
167
  "aria-hidden": true,
167
168
  "x": labelDistance,
168
169
  "y": yScale(d[y]) + offset[1],
@@ -212,8 +213,16 @@ _defineProperty(BubbleRoot, "defaultProps", {
212
213
  duration: 500,
213
214
  markedCross: true
214
215
  });
216
+ var BubbleTooltip = function BubbleTooltip(props) {
217
+ var _ref = arguments[0],
218
+ _ref3;
219
+ var SBubbleTooltip = Tooltip;
220
+ return _ref3 = sstyled(props.styles), /*#__PURE__*/React.createElement(SBubbleTooltip, _ref3.cn("SBubbleTooltip", _objectSpread({}, _assignProps({
221
+ "excludeAnchorProps": true
222
+ }, _ref))));
223
+ };
215
224
  var Bubble = createElement(BubbleRoot, {
216
- Tooltip: Tooltip
225
+ Tooltip: [BubbleTooltip, Tooltip._______childrenComponents]
217
226
  });
218
227
  export default Bubble;
219
228
  //# sourceMappingURL=Bubble.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bubble.js","names":["React","scaleSqrt","transition","Component","sstyled","canUseDOM","uniqueIDEnhancement","createElement","ClipPath","CONSTANT","measureText","Tooltip","style","_sstyled","insert","BubbleRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","_ref2","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","_createClass","key","value","undefined","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","data","z","domain","Math","max","_toConsumableArray","map","el","range","selectRect","selection","selectAll","attr","selectRectNode","node","_","ind","componentDidUpdate","componentDidMount","renderCircle","d","i","_ref","_d$color","_this$asProps2","color","scale","offset","styles","label","markedCross","size","transparent","_scale","_slicedToArray","xScale","yScale","SBubble","Element","SCenter","SLabel","margin","min","labelPosition","labelDistance","cn","bindHandlerTooltip","_objectSpread","xIndex","index","render","_this$asProps3","_scale2","xSize","abs","ySize","xMargin","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","bind","id","Bubble"],"sources":["../../src/Bubble.jsx"],"sourcesContent":["import React from 'react';\nimport { scaleSqrt } from 'd3-scale';\nimport { transition } from 'd3-transition';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { CONSTANT, measureText } from './utils';\nimport Tooltip from './Tooltip';\n\nimport style from './style/bubble.shadow.css';\n\nclass BubbleRoot extends Component {\n static displayName = 'Bubble';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n markedCross: true,\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) => ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, this.virtualElement);\n };\n\n animationCircle() {\n const { duration, uid, data, value } = this.asProps;\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const selectRect = transition().selection().selectAll(`[id^=${uid}${uid}]`).attr('r', 0);\n\n const selectRectNode = selectRect.node();\n if (duration > 0 && selectRectNode) {\n selectRect\n .transition()\n .duration(duration)\n .attr('r', function (_, ind) {\n return z(data[ind][value]);\n });\n }\n }\n\n componentDidUpdate() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n offset,\n styles,\n uid,\n duration,\n value,\n label,\n markedCross,\n size,\n data,\n transparent,\n } = this.asProps;\n const [xScale, yScale] = scale;\n\n const SBubble = this.Element;\n const SCenter = 'text';\n const SLabel = 'text';\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const margin = Math.min(xScale.range()[0], xScale.range()[1]);\n\n const labelPosition =\n size[0] - 2 * margin - (xScale(d[x]) + offset[0] + z(d[value])) < measureText(d[label])\n ? 'right'\n : 'left';\n const labelDistance = {\n right: xScale(d[x]) + offset[0] - z(d[value]),\n left: xScale(d[x]) + offset[0] + z(d[value]),\n }[labelPosition];\n\n return sstyled(styles)(\n <g\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i, index: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: i, index: i })}\n >\n {markedCross && (\n <SCenter\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={d[color] ?? color}\n transparent={transparent}\n >\n &#43;\n </SCenter>\n )}\n <SBubble\n aria-hidden\n id={`${uid}${uid}`}\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={d[color]}\n r={z(d[value])}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[label] && (\n <SLabel\n aria-hidden\n x={labelDistance}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n position={labelPosition}\n color={d[color]}\n transparent={transparent}\n >\n {d[label]}\n </SLabel>\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 {data.map(this.animationCircle.bind(this))}\n <ClipPath\n aria-hidden\n id={uid}\n x={xMargin}\n y={yMargin}\n width={`${xSize}px`}\n height={`${ySize}px`}\n />\n </>\n );\n }\n}\n\nconst Bubble = createElement(BubbleRoot, { Tooltip });\n\nexport default Bubble;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Bubble.js","names":["React","scaleSqrt","transition","Component","Root","sstyled","canUseDOM","uniqueIDEnhancement","createElement","ClipPath","CONSTANT","measureText","Tooltip","style","_sstyled","insert","BubbleRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","tooltipProps","_ref4","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","_createClass","key","value","undefined","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","data","z","domain","Math","max","_toConsumableArray","map","el","range","selectRect","selection","selectAll","attr","selectRectNode","node","_","ind","componentDidUpdate","componentDidMount","renderCircle","d","i","_ref2","_d$color","_this$asProps2","color","scale","offset","styles","label","markedCross","size","transparent","_scale","_slicedToArray","xScale","yScale","SBubble","Element","SCenter","SLabel","margin","min","labelPosition","labelDistance","cn","bindHandlerTooltip","xIndex","index","render","_this$asProps3","_scale2","xSize","abs","ySize","xMargin","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","bind","id","BubbleTooltip","_ref","arguments[0]","_ref3","SBubbleTooltip","_objectSpread","_assignProps","Bubble","_______childrenComponents"],"sources":["../../src/Bubble.jsx"],"sourcesContent":["import React from 'react';\nimport { scaleSqrt } from 'd3-scale';\nimport { transition } from 'd3-transition';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { CONSTANT, measureText } from './utils';\nimport Tooltip from './Tooltip';\n\nimport style from './style/bubble.shadow.css';\n\nclass BubbleRoot extends Component {\n static displayName = 'Bubble';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n markedCross: true,\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: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, tooltipProps, this.virtualElement);\n };\n\n animationCircle() {\n const { duration, uid, data, value } = this.asProps;\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const selectRect = transition().selection().selectAll(`[id^=${uid}${uid}]`).attr('r', 0);\n\n const selectRectNode = selectRect.node();\n if (duration > 0 && selectRectNode) {\n selectRect\n .transition()\n .duration(duration)\n .attr('r', function (_, ind) {\n return z(data[ind][value]);\n });\n }\n }\n\n componentDidUpdate() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n offset,\n styles,\n uid,\n duration,\n value,\n label,\n markedCross,\n size,\n data,\n transparent,\n } = this.asProps;\n const [xScale, yScale] = scale;\n\n const SBubble = this.Element;\n const SCenter = 'text';\n const SLabel = 'text';\n const z = scaleSqrt()\n .domain([0, Math.max(...data.map((el) => el[value]))])\n .range([5.5, 50.5]);\n\n const margin = Math.min(xScale.range()[0], xScale.range()[1]);\n\n const labelPosition =\n size[0] - 2 * margin - (xScale(d[x]) + offset[0] + z(d[value])) < measureText(d[label])\n ? 'right'\n : 'left';\n const labelDistance = {\n right: xScale(d[x]) + offset[0] - z(d[value]),\n left: xScale(d[x]) + offset[0] + z(d[value]),\n }[labelPosition];\n\n return sstyled(styles)(\n <g\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i })}\n >\n {markedCross && (\n <SCenter\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={d[color] ?? color}\n transparent={transparent}\n >\n &#43;\n </SCenter>\n )}\n <SBubble\n aria-hidden\n id={`${uid}${uid}`}\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={d[color]}\n r={z(d[value])}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[label] && (\n <SLabel\n aria-hidden\n x={labelDistance}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n position={labelPosition}\n color={d[color]}\n transparent={transparent}\n >\n {d[label]}\n </SLabel>\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 {data.map(this.animationCircle.bind(this))}\n <ClipPath\n aria-hidden\n id={uid}\n x={xMargin}\n y={yMargin}\n width={`${xSize}px`}\n height={`${ySize}px`}\n />\n </>\n );\n }\n}\n\nconst BubbleTooltip = (props) => {\n const SBubbleTooltip = Root;\n return sstyled(props.styles)(<SBubbleTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Bubble = createElement(BubbleRoot, {\n Tooltip: [BubbleTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Bubble;\n"],"mappings":"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"}