@semcore/d3-chart 2.17.5 → 3.0.0-beta.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 (156) hide show
  1. package/CHANGELOG.md +18 -2
  2. package/lib/cjs/Area.js +9 -9
  3. package/lib/cjs/Axis.js +14 -14
  4. package/lib/cjs/Bar.js +11 -10
  5. package/lib/cjs/Bar.js.map +1 -1
  6. package/lib/cjs/Bubble.js +18 -13
  7. package/lib/cjs/Bubble.js.map +1 -1
  8. package/lib/cjs/Donut.js +10 -8
  9. package/lib/cjs/Donut.js.map +1 -1
  10. package/lib/cjs/Dots.js +9 -9
  11. package/lib/cjs/HorizontalBar.js +11 -10
  12. package/lib/cjs/HorizontalBar.js.map +1 -1
  13. package/lib/cjs/Hover.js +33 -11
  14. package/lib/cjs/Hover.js.map +1 -1
  15. package/lib/cjs/Line.js +8 -8
  16. package/lib/cjs/Plot.js +3 -3
  17. package/lib/cjs/Radar.js +82 -71
  18. package/lib/cjs/Radar.js.map +1 -1
  19. package/lib/cjs/RadialTree.js +92 -74
  20. package/lib/cjs/RadialTree.js.map +1 -1
  21. package/lib/cjs/ReferenceLine.js +9 -9
  22. package/lib/cjs/ResponsiveContainer.js +1 -2
  23. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  24. package/lib/cjs/ScatterPlot.js +15 -10
  25. package/lib/cjs/ScatterPlot.js.map +1 -1
  26. package/lib/cjs/Tooltip.js +8 -8
  27. package/lib/cjs/Venn.js +10 -8
  28. package/lib/cjs/Venn.js.map +1 -1
  29. package/lib/cjs/a11y/PlotA11yModule.js +2 -2
  30. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  31. package/lib/cjs/a11y/PlotA11yView.js +3 -3
  32. package/lib/cjs/a11y/hints.js.map +1 -1
  33. package/lib/cjs/a11y/serialize.js.map +1 -1
  34. package/lib/cjs/createElement.d.js +2 -0
  35. package/lib/cjs/createElement.d.js.map +1 -0
  36. package/lib/cjs/types/Area.d.js.map +1 -1
  37. package/lib/cjs/types/Axis.d.js.map +1 -1
  38. package/lib/cjs/types/Bar.d.js.map +1 -1
  39. package/lib/cjs/types/Bubble.d.js.map +1 -1
  40. package/lib/cjs/types/ClipPath.d.js.map +1 -1
  41. package/lib/cjs/types/Donut.d.js.map +1 -1
  42. package/lib/cjs/types/GroupBar.d.js.map +1 -1
  43. package/lib/cjs/types/HorizontalBar.d.js.map +1 -1
  44. package/lib/cjs/types/Hover.d.js.map +1 -1
  45. package/lib/cjs/types/Line.d.js.map +1 -1
  46. package/lib/cjs/types/Plot.d.js +0 -2
  47. package/lib/cjs/types/Plot.d.js.map +1 -1
  48. package/lib/cjs/types/Radar.d.js +2 -0
  49. package/lib/cjs/types/Radar.d.js.map +1 -0
  50. package/lib/cjs/types/ReferenceLine.d.js.map +1 -1
  51. package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
  52. package/lib/cjs/types/ScatterPlot.d.js.map +1 -1
  53. package/lib/cjs/types/StackBar.d.js.map +1 -1
  54. package/lib/cjs/types/StackedArea.d.js.map +1 -1
  55. package/lib/cjs/types/Tooltip.d.js.map +1 -1
  56. package/lib/cjs/types/Venn.d.js.map +1 -1
  57. package/lib/cjs/types/context.d.js.map +1 -1
  58. package/lib/cjs/types/index.d.js.map +1 -1
  59. package/lib/cjs/utils.js.map +1 -1
  60. package/lib/es6/Area.js +9 -9
  61. package/lib/es6/Axis.js +14 -14
  62. package/lib/es6/Bar.js +11 -10
  63. package/lib/es6/Bar.js.map +1 -1
  64. package/lib/es6/Bubble.js +18 -13
  65. package/lib/es6/Bubble.js.map +1 -1
  66. package/lib/es6/Donut.js +10 -8
  67. package/lib/es6/Donut.js.map +1 -1
  68. package/lib/es6/Dots.js +9 -9
  69. package/lib/es6/HorizontalBar.js +11 -10
  70. package/lib/es6/HorizontalBar.js.map +1 -1
  71. package/lib/es6/Hover.js +36 -12
  72. package/lib/es6/Hover.js.map +1 -1
  73. package/lib/es6/Line.js +8 -8
  74. package/lib/es6/Plot.js +3 -3
  75. package/lib/es6/Radar.js +84 -72
  76. package/lib/es6/Radar.js.map +1 -1
  77. package/lib/es6/RadialTree.js +90 -72
  78. package/lib/es6/RadialTree.js.map +1 -1
  79. package/lib/es6/ReferenceLine.js +9 -9
  80. package/lib/es6/ResponsiveContainer.js +0 -1
  81. package/lib/es6/ResponsiveContainer.js.map +1 -1
  82. package/lib/es6/ScatterPlot.js +15 -10
  83. package/lib/es6/ScatterPlot.js.map +1 -1
  84. package/lib/es6/Tooltip.js +8 -8
  85. package/lib/es6/Venn.js +10 -8
  86. package/lib/es6/Venn.js.map +1 -1
  87. package/lib/es6/a11y/PlotA11yModule.js +2 -2
  88. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  89. package/lib/es6/a11y/PlotA11yView.js +3 -3
  90. package/lib/es6/a11y/hints.js.map +1 -1
  91. package/lib/es6/a11y/serialize.js.map +1 -1
  92. package/lib/es6/createElement.d.js +2 -0
  93. package/lib/es6/createElement.d.js.map +1 -0
  94. package/lib/es6/types/Area.d.js.map +1 -1
  95. package/lib/es6/types/Axis.d.js.map +1 -1
  96. package/lib/es6/types/Bar.d.js.map +1 -1
  97. package/lib/es6/types/Bubble.d.js.map +1 -1
  98. package/lib/es6/types/ClipPath.d.js.map +1 -1
  99. package/lib/es6/types/Donut.d.js.map +1 -1
  100. package/lib/es6/types/GroupBar.d.js.map +1 -1
  101. package/lib/es6/types/HorizontalBar.d.js.map +1 -1
  102. package/lib/es6/types/Hover.d.js.map +1 -1
  103. package/lib/es6/types/Line.d.js.map +1 -1
  104. package/lib/es6/types/Plot.d.js +1 -1
  105. package/lib/es6/types/Plot.d.js.map +1 -1
  106. package/lib/es6/types/Radar.d.js +2 -0
  107. package/lib/es6/types/Radar.d.js.map +1 -0
  108. package/lib/es6/types/ReferenceLine.d.js.map +1 -1
  109. package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
  110. package/lib/es6/types/ScatterPlot.d.js.map +1 -1
  111. package/lib/es6/types/StackBar.d.js.map +1 -1
  112. package/lib/es6/types/StackedArea.d.js.map +1 -1
  113. package/lib/es6/types/Tooltip.d.js.map +1 -1
  114. package/lib/es6/types/Venn.d.js.map +1 -1
  115. package/lib/es6/types/context.d.js.map +1 -1
  116. package/lib/es6/types/index.d.js +3 -0
  117. package/lib/es6/types/index.d.js.map +1 -1
  118. package/lib/es6/utils.js.map +1 -1
  119. package/lib/types/Area.d.ts +26 -17
  120. package/lib/types/Axis.d.ts +40 -23
  121. package/lib/types/Bar.d.ts +32 -16
  122. package/lib/types/Bubble.d.ts +30 -12
  123. package/lib/types/ClipPath.d.ts +7 -5
  124. package/lib/types/Donut.d.ts +29 -13
  125. package/lib/types/GroupBar.d.ts +15 -12
  126. package/lib/types/HorizontalBar.d.ts +12 -12
  127. package/lib/types/Hover.d.ts +32 -8
  128. package/lib/types/Line.d.ts +33 -23
  129. package/lib/types/Plot.d.ts +34 -22
  130. package/lib/types/Radar.d.ts +145 -0
  131. package/lib/types/RadialTree.d.ts +53 -28
  132. package/lib/types/ReferenceLine.d.ts +27 -14
  133. package/lib/types/ResponsiveContainer.d.ts +18 -10
  134. package/lib/types/ScatterPlot.d.ts +25 -9
  135. package/lib/types/StackBar.d.ts +20 -14
  136. package/lib/types/StackedArea.d.ts +16 -12
  137. package/lib/types/Tooltip.d.ts +55 -23
  138. package/lib/types/Venn.d.ts +47 -29
  139. package/lib/types/a11y/PlotA11yModule.d.ts +1 -1
  140. package/lib/types/a11y/focus.d.ts +1 -1
  141. package/lib/types/a11y/hints.d.ts +5 -5
  142. package/lib/types/a11y/insights.d.ts +8 -8
  143. package/lib/types/a11y/intl.d.ts +1 -1
  144. package/lib/types/a11y/locale.d.ts +1 -1
  145. package/lib/types/a11y/serialize.d.ts +4 -4
  146. package/lib/types/a11y/summarize.d.ts +1 -1
  147. package/lib/types/context.d.ts +10 -0
  148. package/lib/types/createElement.d.ts +2 -0
  149. package/lib/types/index.d.ts +2 -0
  150. package/lib/types/utils.d.ts +10 -7
  151. package/package.json +10 -10
  152. package/lib/cjs/types/Radar.js +0 -2
  153. package/lib/cjs/types/Radar.js.map +0 -1
  154. package/lib/es6/types/Radar.js +0 -2
  155. package/lib/es6/types/Radar.js.map +0 -1
  156. package/lib/types/types/Radar.d.ts +0 -95
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsiveContainer.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_resizeObserverPolyfill","_flexBox","_rafTrottle","_fire","_getOriginChildren","ResponsiveContainerRoot","_Component","_inherits2","_super","_createSuper2","props","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","React","createRef","trottle","entries","_this$asProps","asProps","Children","aspect","$container","_this$$container","width","clientWidth","height","clientHeight","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","fire","getOriginChildren","forceUpdate","observer","ResizeObserver","handleResize","_createClass2","key","get","containerRef","current","value","setContext","_this$size","_slicedToArray2","componentDidMount","observe","componentWillUnmount","disconnect","render","_ref","_ref2","SResponsiveContainer","Box","styles","sstyled","createElement","cn","_objectSpread2","assignProps","Component","ResponsiveContainer","createComponent","_default","exports"],"sources":["../../src/ResponsiveContainer.jsx"],"sourcesContent":["import React from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport fire from '@semcore/utils/lib/fire';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\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 this.observer = new ResizeObserver(this.handleResize);\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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"}
1
+ {"version":3,"file":"ResponsiveContainer.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_rafTrottle","_fire","_getOriginChildren","ResponsiveContainerRoot","_Component","_inherits2","_super","_createSuper2","props","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","React","createRef","trottle","entries","_this$asProps","asProps","Children","aspect","$container","_this$$container","width","clientWidth","height","clientHeight","style","window","getComputedStyle","minHeight","Number","parseInt","getPropertyValue","maxHeight","size","fire","getOriginChildren","forceUpdate","observer","ResizeObserver","handleResize","_createClass2","key","get","containerRef","current","value","setContext","_this$size","_slicedToArray2","componentDidMount","observe","componentWillUnmount","disconnect","render","_ref","_ref2","SResponsiveContainer","Box","styles","sstyled","createElement","cn","_objectSpread2","assignProps","Component","ResponsiveContainer","createComponent","_default","exports"],"sources":["../../src/ResponsiveContainer.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport fire from '@semcore/utils/lib/fire';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\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 this.observer = new ResizeObserver(this.handleResize);\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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"}
@@ -21,14 +21,15 @@ var _uniqueID = _interopRequireDefault(require("@semcore/utils/lib/uniqueID"));
21
21
  var _createElement = _interopRequireDefault(require("./createElement"));
22
22
  var _utils = require("./utils");
23
23
  var _ClipPath = _interopRequireDefault(require("./ClipPath"));
24
+ var _Tooltip = _interopRequireDefault(require("./Tooltip"));
24
25
  /*__reshadow-styles__:"./style/scatterplot.shadow.css"*/
25
- var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SScatterPlot_1fbii_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-duration:var(--duration_1fbii);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SScatterPlot_1fbii_gg_:hover{opacity:.8}}.___SScatterPlot_1fbii_gg_.__color_1fbii_gg_{fill:var(--color_1fbii)}.___SScatterPlot_1fbii_gg_.__transparent_1fbii_gg_{opacity:.3}.___SValue_1fbii_gg_{text-anchor:middle;font-size:var(--intergalactic-fs-50, 10px);stroke:var(--intergalactic-chart-palette-order-9, #008ff8)}.___SValue_1fbii_gg_.__color_1fbii_gg_{stroke:var(--color_1fbii)}.___SValue_1fbii_gg_.__transparent_1fbii_gg_{opacity:.3}" /*__inner_css_end__*/, "1fbii_gg_") /*__reshadow_css_end__*/, {
26
- "__SScatterPlot": "___SScatterPlot_1fbii_gg_",
27
- "--duration": "--duration_1fbii",
28
- "_color": "__color_1fbii_gg_",
29
- "--color": "--color_1fbii",
30
- "_transparent": "__transparent_1fbii_gg_",
31
- "__SValue": "___SValue_1fbii_gg_"
26
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SScatterPlot_1bsyi_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:cx,cy;transition-duration:var(--duration_1bsyi);transition-timing-function:ease-in-out;opacity:.5}@media (hover:hover){.___SScatterPlot_1bsyi_gg_:hover{opacity:.8}}.___SScatterPlot_1bsyi_gg_.__color_1bsyi_gg_{fill:var(--color_1bsyi)}.___SScatterPlot_1bsyi_gg_.__transparent_1bsyi_gg_{opacity:.3}.___SValue_1bsyi_gg_{text-anchor:middle;font-size:var(--intergalactic-fs-50, 10px);stroke:var(--intergalactic-chart-palette-order-9, #008ff8)}.___SValue_1bsyi_gg_.__color_1bsyi_gg_{stroke:var(--color_1bsyi)}.___SValue_1bsyi_gg_.__transparent_1bsyi_gg_{opacity:.3}" /*__inner_css_end__*/, "1bsyi_gg_") /*__reshadow_css_end__*/, {
27
+ "__SScatterPlot": "___SScatterPlot_1bsyi_gg_",
28
+ "--duration": "--duration_1bsyi",
29
+ "_color": "__color_1bsyi_gg_",
30
+ "--color": "--color_1bsyi",
31
+ "_transparent": "__transparent_1bsyi_gg_",
32
+ "__SValue": "___SValue_1bsyi_gg_"
32
33
  });
33
34
  var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
34
35
  (0, _inherits2["default"])(ScatterPlotRoot, _Component);
@@ -120,10 +121,12 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
120
121
  "aria-hidden": true,
121
122
  "key": "circle(#".concat(i, ")"),
122
123
  "onMouseMove": this.bindHandlerTooltip(true, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, this.props), {}, {
123
- xIndex: i
124
+ xIndex: i,
125
+ index: i
124
126
  })),
125
127
  "onMouseLeave": this.bindHandlerTooltip(false, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, this.props), {}, {
126
- xIndex: i
128
+ xIndex: i,
129
+ index: i
127
130
  }))
128
131
  }), /*#__PURE__*/_react["default"].createElement(SScatterPlot, _ref.cn("SScatterPlot", {
129
132
  "aria-hidden": true,
@@ -185,7 +188,9 @@ var ScatterPlotRoot = /*#__PURE__*/function (_Component) {
185
188
  offset: [0, 0],
186
189
  duration: 500
187
190
  });
188
- var ScatterPlot = (0, _createElement["default"])(ScatterPlotRoot);
191
+ var ScatterPlot = (0, _createElement["default"])(ScatterPlotRoot, {
192
+ Tooltip: _Tooltip["default"]
193
+ });
189
194
  var _default = ScatterPlot;
190
195
  exports["default"] = _default;
191
196
  //# sourceMappingURL=ScatterPlot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScatterPlot.js","names":["_core","require","_react","_interopRequireDefault","_d3Transition","_canUseDOM","_uniqueID","_createElement","_utils","_ClipPath","style","sstyled","insert","ScatterPlotRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","_ref2","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","_createClass2","key","value","undefined","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","componentDidMount","renderCircle","d","i","_ref","_this$asProps2","color","scale","offset","styles","valueColor","transparent","_scale","_slicedToArray2","xScale","yScale","SScatterPlot","Element","SValue","cn","bindHandlerTooltip","_objectSpread2","xIndex","render","_this$asProps3","data","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","Component","uniqueIDEnhancement","ScatterPlot","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\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 { CONSTANT } from './utils';\nimport ClipPath from './ClipPath';\n\nimport style from './style/scatterplot.shadow.css';\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) => ({ 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, r, value } = this.asProps;\n const radius = r ? r : value ? 12 : 5.5;\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() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor, transparent } =\n this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, { ...this.props, xIndex: i })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: 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={color}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[value] && (\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={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\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 ScatterPlot = createElement(ScatterPlotRoot);\n\nexport default ScatterPlot;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ScatterPlot.js","names":["_core","require","_react","_interopRequireDefault","_d3Transition","_canUseDOM","_uniqueID","_createElement","_utils","_ClipPath","_Tooltip","style","sstyled","insert","ScatterPlotRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","_ref2","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","_createClass2","key","value","undefined","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","selectRect","transition","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","componentDidMount","renderCircle","d","i","_ref","_this$asProps2","color","scale","offset","styles","valueColor","transparent","_scale","_slicedToArray2","xScale","yScale","SScatterPlot","Element","SValue","cn","bindHandlerTooltip","_objectSpread2","xIndex","index","render","_this$asProps3","data","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","Component","uniqueIDEnhancement","ScatterPlot","Tooltip","_default","exports"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\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 { CONSTANT } from './utils';\nimport ClipPath from './ClipPath';\nimport Tooltip from './Tooltip';\n\nimport style from './style/scatterplot.shadow.css';\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) => ({ 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, r, value } = this.asProps;\n const radius = r ? r : value ? 12 : 5.5;\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() {\n this.animationCircle();\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const { color, scale, x, y, r, offset, styles, uid, duration, value, valueColor, transparent } =\n this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\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 })}\n onMouseLeave={this.bindHandlerTooltip(false, { ...this.props, xIndex: i, index: 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={color}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {d[value] && (\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={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\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 ScatterPlot = createElement(ScatterPlotRoot, { Tooltip });\n\nexport default ScatterPlot;\n"],"mappings":"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"}
@@ -24,14 +24,14 @@ var _createElement = _interopRequireDefault(require("./createElement"));
24
24
  var _utils = require("./utils");
25
25
  var _excluded = ["Children", "children", "tag"];
26
26
  /*__reshadow-styles__:"./style/tooltip.shadow.css"*/
27
- var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___STooltip_np2hm_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15));padding:var(--intergalactic-spacing-3x, 12px)}.___STitle_np2hm_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_np2hm_gg_{display:flex;align-items:center}.___SDot_np2hm_gg_{width:8px;height:8px;border-radius:50%;margin-right:var(--intergalactic-spacing-2x, 8px);background:var(--intergalactic-icon-secondary-info, #2bb3ff)}.___SDot_np2hm_gg_.__color_np2hm_gg_{background:var(--color_np2hm)}.___SFooter_np2hm_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9);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__*/, "np2hm_gg_") /*__reshadow_css_end__*/, {
28
- "__STooltip": "___STooltip_np2hm_gg_",
29
- "__STitle": "___STitle_np2hm_gg_",
30
- "__SDotGroup": "___SDotGroup_np2hm_gg_",
31
- "__SDot": "___SDot_np2hm_gg_",
32
- "_color": "__color_np2hm_gg_",
33
- "--color": "--color_np2hm",
34
- "__SFooter": "___SFooter_np2hm_gg_"
27
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___STooltip_1hssd_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15));padding:var(--intergalactic-spacing-3x, 12px)}.___STitle_1hssd_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_1hssd_gg_{display:flex;align-items:center}.___SDot_1hssd_gg_{width:8px;height:8px;border-radius:50%;margin-right:var(--intergalactic-spacing-2x, 8px);background:var(--intergalactic-icon-secondary-info, #2bb3ff)}.___SDot_1hssd_gg_.__color_1hssd_gg_{background:var(--color_1hssd)}.___SFooter_1hssd_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9);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__*/, "1hssd_gg_") /*__reshadow_css_end__*/, {
28
+ "__STooltip": "___STooltip_1hssd_gg_",
29
+ "__STitle": "___STitle_1hssd_gg_",
30
+ "__SDotGroup": "___SDotGroup_1hssd_gg_",
31
+ "__SDot": "___SDot_1hssd_gg_",
32
+ "_color": "__color_1hssd_gg_",
33
+ "--color": "--color_1hssd",
34
+ "__SFooter": "___SFooter_1hssd_gg_"
35
35
  });
36
36
  var TooltipRoot = /*#__PURE__*/function (_Component) {
37
37
  (0, _inherits2["default"])(TooltipRoot, _Component);
package/lib/cjs/Venn.js CHANGED
@@ -20,14 +20,15 @@ var _canUseDOM = _interopRequireDefault(require("@semcore/utils/lib/canUseDOM"))
20
20
  var _animation = require("@semcore/animation");
21
21
  var _createElement = _interopRequireDefault(require("./createElement"));
22
22
  var _utils = require("./utils");
23
+ var _Tooltip = _interopRequireDefault(require("./Tooltip"));
23
24
  /*__reshadow-styles__:"./style/venn.shadow.css"*/
24
- var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SCircle_6ap4h_gg_,.___SIntersection_6ap4h_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_6ap4h_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_6ap4h);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_6ap4h_gg_:hover{fill-opacity:.7}}.___SCircle_6ap4h_gg_.__color_6ap4h_gg_{fill:var(--color_6ap4h)}.___SCircle_6ap4h_gg_.__transparent_6ap4h_gg_{opacity:.3}.___SIntersection_6ap4h_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_6ap4h_gg_:hover{fill-opacity:.1}}.___SIntersection_6ap4h_gg_.__transparent_6ap4h_gg_{opacity:.3}" /*__inner_css_end__*/, "6ap4h_gg_") /*__reshadow_css_end__*/, {
25
- "__SCircle": "___SCircle_6ap4h_gg_",
26
- "--duration": "--duration_6ap4h",
27
- "_color": "__color_6ap4h_gg_",
28
- "--color": "--color_6ap4h",
29
- "_transparent": "__transparent_6ap4h_gg_",
30
- "__SIntersection": "___SIntersection_6ap4h_gg_"
25
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SCircle_11cec_gg_,.___SIntersection_11cec_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_11cec_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_11cec);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_11cec_gg_:hover{fill-opacity:.7}}.___SCircle_11cec_gg_.__color_11cec_gg_{fill:var(--color_11cec)}.___SCircle_11cec_gg_.__transparent_11cec_gg_{opacity:.3}.___SIntersection_11cec_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_11cec_gg_:hover{fill-opacity:.1}}.___SIntersection_11cec_gg_.__transparent_11cec_gg_{opacity:.3}" /*__inner_css_end__*/, "11cec_gg_") /*__reshadow_css_end__*/, {
26
+ "__SCircle": "___SCircle_11cec_gg_",
27
+ "--duration": "--duration_11cec",
28
+ "_color": "__color_11cec_gg_",
29
+ "--color": "--color_11cec",
30
+ "_transparent": "__transparent_11cec_gg_",
31
+ "__SIntersection": "___SIntersection_11cec_gg_"
31
32
  });
32
33
  var VennRoot = /*#__PURE__*/function (_Component) {
33
34
  (0, _inherits2["default"])(VennRoot, _Component);
@@ -204,7 +205,8 @@ function Intersection(props) {
204
205
  }
205
206
  var Venn = (0, _createElement["default"])(VennRoot, {
206
207
  Circle: Circle,
207
- Intersection: Intersection
208
+ Intersection: Intersection,
209
+ Tooltip: _Tooltip["default"]
208
210
  });
209
211
  var _default = Venn;
210
212
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"Venn.js","names":["_core","require","_react","_interopRequireDefault","_venn","_canUseDOM","_animation","_createElement","_utils","style","sstyled","insert","VennRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","_ref3","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","React","forwardRef","ref","FadeInOut","_extends2","tag","_createClass2","key","value","undefined","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray2","vennData","Object","entries","map","_ref4","_ref5","dataKey","sets","split","scaleSolution","normalizeSolution","venn","getCircleProps","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Component","Math","PI","c1","c2","radius","Circle","_ref6","_ref","SCircle","styles","color","name","describeValueEntity","cn","Intersection","_ref2","SIntersection","renderIntersection","useCallback","intersectionAreaPath","Venn","_default","exports"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\n\nimport style from './style/venn.shadow.css';\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 };\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 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 getCircleProps(props) {\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),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n transparent: this.asProps.transparent,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\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),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n transparent,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\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 data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={color}\n cx={data.x}\n cy={data.y}\n r={data.radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\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 } = 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 />,\n );\n}\n\nconst Venn = createElement(VennRoot, { Circle, Intersection });\n\nexport default Venn;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Venn.js","names":["_core","require","_react","_interopRequireDefault","_venn","_canUseDOM","_animation","_createElement","_utils","_Tooltip","style","sstyled","insert","VennRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","canUseDOM","document","createElement","visible","props","_ref3","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","CONSTANT","VIRTUAL_ELEMENT","emit","React","forwardRef","ref","FadeInOut","_extends2","tag","_createClass2","key","value","undefined","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray2","vennData","Object","entries","map","_ref4","_ref5","dataKey","sets","split","scaleSolution","normalizeSolution","venn","getCircleProps","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Component","Math","PI","c1","c2","radius","Circle","_ref6","_ref","SCircle","styles","color","name","describeValueEntity","cn","Intersection","_ref2","SIntersection","renderIntersection","useCallback","intersectionAreaPath","Venn","Tooltip","_default","exports"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\nimport Tooltip from './Tooltip';\n\nimport style from './style/venn.shadow.css';\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 };\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 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 getCircleProps(props) {\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),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n transparent: this.asProps.transparent,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\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),\n onMouseLeave: this.bindHandlerTooltip(false, props),\n transparent,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\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 data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={color}\n cx={data.x}\n cy={data.y}\n r={data.radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\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 } = 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 />,\n );\n}\n\nconst Venn = createElement(VennRoot, { Circle, Intersection, Tooltip });\n\nexport default Venn;\n"],"mappings":"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"}
@@ -16,8 +16,8 @@ var _intergalacticDynamicLocales = require("./translations/module/__intergalacti
16
16
  var _WithI18n = require("@semcore/utils/lib/enhances/WithI18n");
17
17
  var _flexBox = require("@semcore/flex-box");
18
18
  /*__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
19
- var styles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPlotA11yModule_1kvea_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_1kvea_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}" /*__inner_css_end__*/, "1kvea_gg_") /*__reshadow_css_end__*/, {
20
- "__SPlotA11yModule": "___SPlotA11yModule_1kvea_gg_"
19
+ var styles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPlotA11yModule_b3u6c_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_b3u6c_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}" /*__inner_css_end__*/, "b3u6c_gg_") /*__reshadow_css_end__*/, {
20
+ "__SPlotA11yModule": "___SPlotA11yModule_b3u6c_gg_"
21
21
  });
22
22
  var globalWasFocused = false;
23
23
  var globalNavWithKeyboard = false;
@@ -1 +1 @@
1
- {"version":3,"file":"PlotA11yModule.js","names":["_core","require","_react","_interopRequireDefault","_locale","_intergalacticDynamicLocales","_WithI18n","_flexBox","styles","sstyled","insert","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","_ref","arguments[0]","_ref5","SPlotA11yModule","Box","_React$useState","React","useState","_React$useState2","_slicedToArray2","wasFocused","setWasFocused","_React$useState3","_React$useState4","navWithKeyboard","setNavWithKeyboard","_React$useState5","_React$useState6","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","_React$useState7","_React$useState8","loading","setLoading","_React$useState9","_React$useState10","error","setError","contextLocale","useContext","I18nContext","locale","useMemo","_props$locale","normalizeLocale","localizedMessages","t","useI18n","useEffect","_props$plotRef$curren","focusListener","plotRef","current","addEventListener","_props$plotRef$curren2","removeEventListener","_document$body","keyboardListener","event","navigationKeys","includes","key","document","body","_document$body2","shouldDisplayView","Promise","resolve","then","_interopRequireWildcard2","_ref6","PlotA11yView","Component","console","_ref2","createElement","_extends2","_ref3","cn","_objectSpread2","assignProps","_ref4","exports"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';\nimport { Box } from '@semcore/flex-box';\n\nlet globalWasFocused = false;\nlet globalNavWithKeyboard = false;\n\nexport type A11yViewProps = {\n id: string;\n data: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n\n plotRef: React.RefObject<Element>;\n};\n\nexport const PlotA11yModule: React.FC<A11yViewProps> = (props) => {\n const SPlotA11yModule = Root;\n const [wasFocused, setWasFocused] = React.useState(globalWasFocused);\n const [navWithKeyboard, setNavWithKeyboard] = React.useState(globalNavWithKeyboard);\n const [plotA11yView, setPlotA11yView] = React.useState<{\n Component: React.FC<A11yViewProps>;\n } | null>(null);\n\n const hadnleHiddenElementsFocus = React.useCallback(() => {\n setWasFocused(true);\n setNavWithKeyboard(true);\n }, []);\n\n const [loading, setLoading] = React.useState(false);\n const [error, setError] = React.useState<Error | null>(null);\n\n const contextLocale = React.useContext(I18nContext);\n const locale = React.useMemo(\n () => normalizeLocale(props.locale ?? contextLocale, localizedMessages),\n [props.locale],\n );\n const t = useI18n(localizedMessages, locale);\n\n React.useEffect(() => {\n if (wasFocused) return;\n const focusListener = () => {\n globalWasFocused = true;\n setWasFocused(true);\n };\n\n props.plotRef.current?.addEventListener('focus', focusListener);\n return () => props.plotRef.current?.removeEventListener('focus', focusListener);\n }, [wasFocused, props.plotRef]);\n React.useEffect(() => {\n if (navWithKeyboard) return;\n const keyboardListener = (event: Event) => {\n const navigationKeys = [\n 'Tab',\n 'ArrowUp',\n 'ArrowLeft',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowLeft',\n ];\n if ('key' in event && navigationKeys.includes((event as KeyboardEvent).key)) {\n setNavWithKeyboard(true);\n globalNavWithKeyboard = true;\n }\n };\n document.body?.addEventListener('keydown', keyboardListener);\n return () => document.body?.removeEventListener('keydown', keyboardListener);\n }, [navWithKeyboard]);\n\n const shouldDisplayView = wasFocused && navWithKeyboard;\n\n React.useEffect(() => {\n if (!shouldDisplayView) return;\n if (plotA11yView) return;\n if (loading) return;\n\n setLoading(true);\n\n import('./PlotA11yView')\n .then(({ PlotA11yView }) => {\n setPlotA11yView({ Component: PlotA11yView });\n setLoading(false);\n setError(null);\n })\n .catch((error) => {\n console.error(error);\n setError(error);\n });\n }, [plotA11yView, shouldDisplayView, loading, setLoading]);\n\n if (plotA11yView) {\n return sstyled(styles)(\n <plotA11yView.Component {...props} locale={locale!} />,\n ) as React.ReactElement;\n }\n\n if (error) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='assertive'>\n {t('failed')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n if (loading) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='polite'>\n {t('loading')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} onFocus={hadnleHiddenElementsFocus}>\n {t('disabled')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"PlotA11yModule.js","names":["_core","require","_react","_interopRequireDefault","_locale","_intergalacticDynamicLocales","_WithI18n","_flexBox","styles","sstyled","insert","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","_ref","arguments[0]","_ref5","SPlotA11yModule","Box","_React$useState","React","useState","_React$useState2","_slicedToArray2","wasFocused","setWasFocused","_React$useState3","_React$useState4","navWithKeyboard","setNavWithKeyboard","_React$useState5","_React$useState6","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","_React$useState7","_React$useState8","loading","setLoading","_React$useState9","_React$useState10","error","setError","contextLocale","useContext","I18nContext","locale","useMemo","_props$locale","normalizeLocale","localizedMessages","t","useI18n","useEffect","_props$plotRef$curren","focusListener","plotRef","current","addEventListener","_props$plotRef$curren2","removeEventListener","_document$body","keyboardListener","event","navigationKeys","includes","key","document","body","_document$body2","shouldDisplayView","Promise","resolve","then","_interopRequireWildcard2","_ref6","PlotA11yView","Component","console","_ref2","createElement","_extends2","_ref3","cn","_objectSpread2","assignProps","_ref4","exports"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';\nimport { Box } from '@semcore/flex-box';\n\nlet globalWasFocused = false;\nlet globalNavWithKeyboard = false;\n\nexport type A11yViewProps = {\n id: string;\n data: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n\n plotRef: React.RefObject<Element>;\n};\n\nexport const PlotA11yModule: React.FC<A11yViewProps> = (props) => {\n const SPlotA11yModule = Root;\n const [wasFocused, setWasFocused] = React.useState(globalWasFocused);\n const [navWithKeyboard, setNavWithKeyboard] = React.useState(globalNavWithKeyboard);\n const [plotA11yView, setPlotA11yView] = React.useState<{\n Component: React.FC<A11yViewProps>;\n } | null>(null);\n\n const hadnleHiddenElementsFocus = React.useCallback(() => {\n setWasFocused(true);\n setNavWithKeyboard(true);\n }, []);\n\n const [loading, setLoading] = React.useState(false);\n const [error, setError] = React.useState<Error | null>(null);\n\n const contextLocale = React.useContext(I18nContext);\n const locale = React.useMemo(\n () => normalizeLocale(props.locale ?? contextLocale, localizedMessages),\n [props.locale],\n );\n const t = useI18n(localizedMessages, locale!);\n\n React.useEffect(() => {\n if (wasFocused) return;\n const focusListener = () => {\n globalWasFocused = true;\n setWasFocused(true);\n };\n\n props.plotRef.current?.addEventListener('focus', focusListener);\n return () => props.plotRef.current?.removeEventListener('focus', focusListener);\n }, [wasFocused, props.plotRef]);\n React.useEffect(() => {\n if (navWithKeyboard) return;\n const keyboardListener = (event: Event) => {\n const navigationKeys = [\n 'Tab',\n 'ArrowUp',\n 'ArrowLeft',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowLeft',\n ];\n if ('key' in event && navigationKeys.includes((event as KeyboardEvent).key)) {\n setNavWithKeyboard(true);\n globalNavWithKeyboard = true;\n }\n };\n document.body?.addEventListener('keydown', keyboardListener);\n return () => document.body?.removeEventListener('keydown', keyboardListener);\n }, [navWithKeyboard]);\n\n const shouldDisplayView = wasFocused && navWithKeyboard;\n\n React.useEffect(() => {\n if (!shouldDisplayView) return;\n if (plotA11yView) return;\n if (loading) return;\n\n setLoading(true);\n\n import('./PlotA11yView')\n .then(({ PlotA11yView }) => {\n setPlotA11yView({ Component: PlotA11yView });\n setLoading(false);\n setError(null);\n })\n .catch((error) => {\n console.error(error);\n setError(error);\n });\n }, [plotA11yView, shouldDisplayView, loading, setLoading]);\n\n if (plotA11yView) {\n return sstyled(styles)(\n <plotA11yView.Component {...props} locale={locale!} />,\n ) as React.ReactElement;\n }\n\n if (error) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='assertive'>\n {t('failed')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n if (loading) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='polite'>\n {t('loading')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} onFocus={hadnleHiddenElementsFocus}>\n {t('disabled')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
@@ -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_1yzv6_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_1yzv6_gg_.__focus-within_1yzv6_gg_,.___SPlotA11yView_1yzv6_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_1yzv6_gg_:focus,.___SPlotA11yView_1yzv6_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_1yzv6_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1yzv6_gg_ table,.___SPlotA11yView_1yzv6_gg_ td,.___SPlotA11yView_1yzv6_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "1yzv6_gg_") /*__reshadow_css_end__*/, {
24
- "__SPlotA11yView": "___SPlotA11yView_1yzv6_gg_",
25
- "_focus-within": "__focus-within_1yzv6_gg_"
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_"
26
26
  });
27
27
  var PlotA11yView = function PlotA11yView(_ref3) {
28
28
  var _ref = arguments[0],
@@ -1 +1 @@
1
- {"version":3,"file":"hints.js","names":["_reactToText","_interopRequireDefault","require","makeDataHintsContainer","fields","verticalAxes","Set","horizontalAxes","valueAxes","values","groups","axesTitle","vertical","horizontal","titles","getVerticalAxesTitle","getHorizontalAxesTitle","valuesAxes","getValueAxesTitle","grid","dataType","pointsDensity","exports","makeDataHintsHandlers","mutableContainer","handler","specifyDataRowFields","x","y","value","add","setupGrid","direction","size","establishDataType","describeValueEntity","dataKey","readableName","labelKey","describeGroupedValues","groupKey","axes","label","addKeyLabelGetter","getter","setTitle","describedDataAxes","title","_typeof2","Date","String","reactToText","setPointsDensity","makeDataSummarizationConfig","config","_config$trendTangens","_config$movingAverage","_config$additionalFie","_objectSpread2","clustersGridSize","undefined","maxListSymbols","datesWithTime","clustersLimit","valuesLimit","groupsLimit","disable","override","trendTangens","weak","medium","strong","Infinity","movingAverage","longSize","shortSize","notableDiff","additionalFields","_toConsumableArray2"],"sources":["../../../src/a11y/hints.ts"],"sourcesContent":["import { SerializableDataType } from './insights';\nimport reactToText from '@semcore/utils/lib/reactToText';\n\ntype DeepPartial<T> = T extends object\n ? {\n [P in keyof T]?: DeepPartial<T[P]>;\n }\n : T;\n\nexport type DataStructureHints = {\n fields: {\n verticalAxes: Set<string | number>;\n horizontalAxes: Set<string | number>;\n valueAxes: Set<string | number>;\n values: Set<string | number>;\n };\n groups: Set<string | number>;\n axesTitle: {\n vertical: string | null;\n horizontal: string | null;\n };\n titles: {\n verticalAxes: {\n [dataKey: string | number]: string;\n };\n getVerticalAxesTitle: null | ((dataKey: string | number) => string);\n horizontalAxes: {\n [dataKey: string | number]: string;\n };\n getHorizontalAxesTitle: null | ((dataKey: string | number) => string);\n valuesAxes: {\n [dataKey: string | number]: string;\n };\n getValueAxesTitle: null | ((dataKey: string | number) => string);\n };\n grid: {\n verticalAxes: number | null;\n horizontalAxes: number | null;\n };\n pointsDensity: {\n verticalAxes: number;\n horizontalAxes: number;\n } | null;\n dataType: SerializableDataType | null;\n};\nexport type DataSummarizationConfig = {\n trendTangens: {\n static: number;\n weak: number;\n medium: number;\n strong: number;\n };\n movingAverage: {\n longSize: number | undefined;\n shortSize: number | undefined;\n notableDiff: number | undefined;\n };\n dataType: SerializableDataType | undefined;\n clustersGridSize: number | undefined;\n maxListSymbols: number;\n datesWithTime: boolean | undefined;\n clustersLimit: number;\n valuesLimit: number;\n groupsLimit: number;\n disable: boolean;\n override: string | undefined;\n additionalFields: string[];\n};\nexport type PartialDataSummarizationConfig = DeepPartial<DataSummarizationConfig>;\n\nexport const makeDataHintsContainer = (): DataStructureHints => ({\n fields: {\n verticalAxes: new Set(),\n horizontalAxes: new Set(),\n valueAxes: new Set(),\n values: new Set(),\n },\n groups: new Set(),\n axesTitle: {\n vertical: null,\n horizontal: null,\n },\n titles: {\n verticalAxes: {},\n getVerticalAxesTitle: null,\n horizontalAxes: {},\n getHorizontalAxesTitle: null,\n valuesAxes: {},\n getValueAxesTitle: null,\n },\n grid: {\n verticalAxes: null,\n horizontalAxes: null,\n },\n dataType: null,\n pointsDensity: null,\n});\n\nexport const makeDataHintsHandlers = (mutableContainer: DataStructureHints) => {\n const handler = {\n specifyDataRowFields: (x?: string, y?: string, value?: string) => {\n if (y) mutableContainer.fields.verticalAxes.add(y);\n if (x) mutableContainer.fields.horizontalAxes.add(x);\n if (value) mutableContainer.fields.valueAxes.add(value);\n },\n setupGrid: (direction: 'vertical' | 'horizontal', size: number) => {\n if (direction === 'horizontal') {\n mutableContainer.grid.horizontalAxes = size;\n } else if (direction === 'vertical') {\n mutableContainer.grid.verticalAxes = size;\n }\n },\n establishDataType: (dataType: SerializableDataType) => {\n mutableContainer.dataType = dataType;\n },\n describeValueEntity: (dataKey: string | number, readableName: string) => {\n mutableContainer.fields.values.add(dataKey);\n handler.labelKey('value', dataKey, readableName);\n },\n describeGroupedValues: (groupKey: string | number, dataKey: string | number) => {\n mutableContainer.groups.add(groupKey);\n mutableContainer.fields.values.add(dataKey);\n },\n labelKey: (\n axes: 'vertical' | 'horizontal' | 'value',\n dataKey: string | number,\n label: string,\n ) => {\n if (axes === 'vertical') mutableContainer.titles.verticalAxes[dataKey] = label;\n if (axes === 'horizontal') mutableContainer.titles.horizontalAxes[dataKey] = label;\n if (axes === 'value') mutableContainer.titles.valuesAxes[dataKey] = label;\n },\n addKeyLabelGetter: (\n axes: 'vertical' | 'horizontal' | 'value',\n getter: (dataKey: string | number) => string,\n ) => {\n if (axes === 'vertical') mutableContainer.titles.getVerticalAxesTitle = getter;\n if (axes === 'horizontal') mutableContainer.titles.getHorizontalAxesTitle = getter;\n if (axes === 'value') mutableContainer.titles.getValueAxesTitle = getter;\n },\n setTitle: (describedDataAxes: 'vertical' | 'horizontal', title: string) => {\n if (\n typeof title === 'number' ||\n typeof title === 'bigint' ||\n (typeof title === 'object' && (title as any) instanceof Date)\n ) {\n title = String(title);\n }\n if (typeof title !== 'string') {\n title = reactToText(title);\n }\n if (describedDataAxes === 'horizontal') {\n mutableContainer.axesTitle.horizontal = title;\n } else if (describedDataAxes === 'vertical') {\n mutableContainer.axesTitle.vertical = title;\n }\n },\n setPointsDensity: (horizontalAxes: number, verticalAxes: number) => {\n mutableContainer.pointsDensity = { verticalAxes, horizontalAxes };\n },\n };\n return handler;\n};\n\nexport type DataHintsHandler = ReturnType<typeof makeDataHintsHandlers>;\n\nexport const makeDataSummarizationConfig = (\n config?: PartialDataSummarizationConfig,\n): DataSummarizationConfig => ({\n clustersGridSize: undefined,\n maxListSymbols: 100,\n datesWithTime: undefined,\n clustersLimit: 5,\n valuesLimit: 5,\n groupsLimit: 5,\n dataType: undefined,\n disable: false,\n override: undefined,\n ...(config ?? {}),\n trendTangens: {\n static: 1 / 15,\n weak: 1 / 10,\n medium: 1 / 5,\n strong: Infinity,\n ...(config?.trendTangens ?? {}),\n },\n movingAverage: {\n longSize: undefined,\n shortSize: undefined,\n notableDiff: undefined,\n ...(config?.movingAverage ?? {}),\n },\n additionalFields: [...(config?.additionalFields ?? [])],\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"hints.js","names":["_reactToText","_interopRequireDefault","require","makeDataHintsContainer","fields","verticalAxes","Set","horizontalAxes","valueAxes","values","groups","axesTitle","vertical","horizontal","titles","getVerticalAxesTitle","getHorizontalAxesTitle","valuesAxes","getValueAxesTitle","grid","dataType","pointsDensity","exports","makeDataHintsHandlers","mutableContainer","handler","specifyDataRowFields","x","y","value","add","setupGrid","direction","size","establishDataType","describeValueEntity","dataKey","readableName","labelKey","describeGroupedValues","groupKey","axes","label","addKeyLabelGetter","getter","setTitle","describedDataAxes","title","_typeof2","Date","String","reactToText","setPointsDensity","makeDataSummarizationConfig","config","_config$trendTangens","_config$movingAverage","_config$additionalFie","_objectSpread2","clustersGridSize","undefined","maxListSymbols","datesWithTime","clustersLimit","valuesLimit","groupsLimit","disable","override","trendTangens","weak","medium","strong","Infinity","movingAverage","longSize","shortSize","notableDiff","additionalFields","_toConsumableArray2"],"sources":["../../../src/a11y/hints.ts"],"sourcesContent":["import { SerializableDataType } from './insights';\nimport reactToText from '@semcore/utils/lib/reactToText';\n\ntype DeepPartial<T> = T extends object\n ? {\n [P in keyof T]?: DeepPartial<T[P]>;\n }\n : T;\n\nexport type DataStructureHints = {\n fields: {\n verticalAxes: Set<string | number>;\n horizontalAxes: Set<string | number>;\n valueAxes: Set<string | number>;\n values: Set<string | number>;\n };\n groups: Set<string | number>;\n axesTitle: {\n vertical: string | null;\n horizontal: string | null;\n };\n titles: {\n verticalAxes: {\n [dataKey: string | number]: string;\n };\n getVerticalAxesTitle: null | ((dataKey: string | number) => string);\n horizontalAxes: {\n [dataKey: string | number]: string;\n };\n getHorizontalAxesTitle: null | ((dataKey: string | number) => string);\n valuesAxes: {\n [dataKey: string | number]: string;\n };\n getValueAxesTitle: null | ((dataKey: string | number) => string);\n };\n grid: {\n verticalAxes: number | null;\n horizontalAxes: number | null;\n };\n pointsDensity: {\n verticalAxes: number;\n horizontalAxes: number;\n } | null;\n dataType: SerializableDataType | null;\n};\nexport type DataSummarizationConfig = {\n trendTangens: {\n static: number;\n weak: number;\n medium: number;\n strong: number;\n };\n movingAverage: {\n longSize: number | undefined;\n shortSize: number | undefined;\n notableDiff: number | undefined;\n };\n dataType: SerializableDataType | undefined;\n clustersGridSize: number | undefined;\n maxListSymbols: number;\n datesWithTime: boolean | undefined;\n clustersLimit: number;\n valuesLimit: number;\n groupsLimit: number;\n disable: boolean;\n override: string | undefined;\n additionalFields: string[];\n};\nexport type PartialDataSummarizationConfig = DeepPartial<DataSummarizationConfig>;\n\nexport const makeDataHintsContainer = (): DataStructureHints => ({\n fields: {\n verticalAxes: new Set(),\n horizontalAxes: new Set(),\n valueAxes: new Set(),\n values: new Set(),\n },\n groups: new Set(),\n axesTitle: {\n vertical: null,\n horizontal: null,\n },\n titles: {\n verticalAxes: {},\n getVerticalAxesTitle: null,\n horizontalAxes: {},\n getHorizontalAxesTitle: null,\n valuesAxes: {},\n getValueAxesTitle: null,\n },\n grid: {\n verticalAxes: null,\n horizontalAxes: null,\n },\n dataType: null,\n pointsDensity: null,\n});\n\nexport const makeDataHintsHandlers = (mutableContainer: DataStructureHints) => {\n const handler = {\n specifyDataRowFields: (x?: string, y?: string, value?: string) => {\n if (y) mutableContainer.fields.verticalAxes.add(y);\n if (x) mutableContainer.fields.horizontalAxes.add(x);\n if (value) mutableContainer.fields.valueAxes.add(value);\n },\n setupGrid: (direction: 'vertical' | 'horizontal', size: number) => {\n if (direction === 'horizontal') {\n mutableContainer.grid.horizontalAxes = size;\n } else if (direction === 'vertical') {\n mutableContainer.grid.verticalAxes = size;\n }\n },\n establishDataType: (dataType: SerializableDataType) => {\n mutableContainer.dataType = dataType;\n },\n describeValueEntity: (dataKey: string | number, readableName: string) => {\n mutableContainer.fields.values.add(dataKey);\n handler.labelKey('value', dataKey, readableName);\n },\n describeGroupedValues: (groupKey: string | number, dataKey: string | number) => {\n mutableContainer.groups.add(groupKey);\n mutableContainer.fields.values.add(dataKey);\n },\n labelKey: (\n axes: 'vertical' | 'horizontal' | 'value',\n dataKey: string | number,\n label: string,\n ) => {\n if (axes === 'vertical') mutableContainer.titles.verticalAxes[dataKey] = label;\n if (axes === 'horizontal') mutableContainer.titles.horizontalAxes[dataKey] = label;\n if (axes === 'value') mutableContainer.titles.valuesAxes[dataKey] = label;\n },\n addKeyLabelGetter: (\n axes: 'vertical' | 'horizontal' | 'value',\n getter: (dataKey: string | number) => string,\n ) => {\n if (axes === 'vertical') mutableContainer.titles.getVerticalAxesTitle = getter;\n if (axes === 'horizontal') mutableContainer.titles.getHorizontalAxesTitle = getter;\n if (axes === 'value') mutableContainer.titles.getValueAxesTitle = getter;\n },\n setTitle: (describedDataAxes: 'vertical' | 'horizontal', title: string) => {\n if (\n typeof title === 'number' ||\n typeof title === 'bigint' ||\n (typeof title === 'object' && (title as any) instanceof Date)\n ) {\n title = String(title);\n }\n if (typeof title !== 'string') {\n title = reactToText(title);\n }\n if (describedDataAxes === 'horizontal') {\n mutableContainer.axesTitle.horizontal = title;\n } else if (describedDataAxes === 'vertical') {\n mutableContainer.axesTitle.vertical = title;\n }\n },\n setPointsDensity: (horizontalAxes: number, verticalAxes: number) => {\n mutableContainer.pointsDensity = { verticalAxes, horizontalAxes };\n },\n };\n return handler;\n};\n\nexport type DataHintsHandler = ReturnType<typeof makeDataHintsHandlers>;\n\nexport const makeDataSummarizationConfig = (\n config?: PartialDataSummarizationConfig,\n): DataSummarizationConfig => ({\n clustersGridSize: undefined,\n maxListSymbols: 100,\n datesWithTime: undefined,\n clustersLimit: 5,\n valuesLimit: 5,\n groupsLimit: 5,\n dataType: undefined,\n disable: false,\n override: undefined,\n ...(config ?? {}),\n trendTangens: {\n static: 1 / 15,\n weak: 1 / 10,\n medium: 1 / 5,\n strong: Infinity,\n ...(config?.trendTangens ?? {}),\n },\n movingAverage: {\n longSize: undefined,\n shortSize: undefined,\n notableDiff: undefined,\n ...(config?.movingAverage ?? {}),\n },\n additionalFields: [...(config?.additionalFields ?? [])] as string[],\n});\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.js","names":["_intl","require","formatLimitedSizeList","items","intl","maxFinalStringLength","arguments","length","undefined","includeEllipsis","limit","stringifyList","cutItems","slice","push","formatMessage","id","leftCount","formatList","formattedList","overflowRatio","Math","floor","maxIncreaseAttempts","i","newLimitFormattedList","isReactComponent","obj","_typeof2","displayName","guessNumberAsTimestampMinDate","Date","getTime","formatValue","value","_ref","siblingsTimeMark","maxListSymbols","datesWithTime","formatNumber","abs","formatDate","dateStyle","timeStyle","Array","isArray","formattedValues","map","subValue","String","exports","formatValuesList","values","_ref2","result","_ref3","rawValue","label","serialize","_ref4","_ref5","_ref6","insights","dataType","dataRange","dataTitle","entitiesCount","clustersLimit","valuesLimit","groupsLimit","locale","translations","availableLocales","getIntl","dataRangeSummary","range","from","to","trendsInsights","trendsByDataKey","_iterator","_createForOfIteratorHelper2","_step","s","n","done","_trendsByDataKey$insi","insight","dataKey","err","e","f","entities","count","entitiesList","Object","entries","_ref7","_ref8","_slicedToArray2","generalTrend","find","type","localTrends","filter","primaryTrend","secondaryTrends","mainSummary","trend","concat","change","strength","secondarylSummaries","general","locals","summary","clustersInsights","biggestClusters","maxSize","size","minSize","clusterInsight","labels","anonymous","relativeSize","x","center","xLabel","y","yLabel","_ref9","_ref10","valuesInsight","groupInsights","valueCounts","group","minValuesCount","min","apply","_toConsumableArray2","maxValuesCount","max","groupsCount","valuesCount","_ref11","sumamry"],"sources":["../../../src/a11y/serialize.ts"],"sourcesContent":["import { AnalyzedData, ClusterNode, ComparisonNode, GeneralTrendNode, TrendNode } from './insights';\n\nimport React from 'react';\nimport { DataSummarizationConfig } from './hints';\nimport { getIntl, Intl } from './intl';\n\nconst formatLimitedSizeList = (\n items: unknown[],\n intl: Intl,\n maxFinalStringLength = 100,\n includeEllipsis = true,\n) => {\n let limit = items.length;\n const stringifyList = () => {\n const cutItems = items.slice(0, limit);\n if (items.length > limit && includeEllipsis) {\n cutItems.push(intl.formatMessage({ id: 'ellipsis' }, { leftCount: limit - items.length }));\n }\n\n return intl.formatList(cutItems);\n };\n\n let formattedList = stringifyList();\n if (formattedList.length <= maxFinalStringLength) {\n return formattedList;\n }\n\n const overflowRatio = formattedList.length / maxFinalStringLength;\n limit = Math.floor(limit / overflowRatio);\n if (limit === 0) {\n limit = 1;\n return stringifyList();\n }\n\n formattedList = stringifyList();\n\n const maxIncreaseAttempts = 4;\n for (let i = 0; i < maxIncreaseAttempts; i++) {\n limit++;\n const newLimitFormattedList = stringifyList();\n\n if (newLimitFormattedList.length > maxFinalStringLength) {\n return formattedList;\n }\n\n formattedList = newLimitFormattedList;\n }\n\n return formattedList;\n};\n\nconst isReactComponent = (obj: any) =>\n typeof obj === 'object' && obj && 'displayName' in obj && typeof obj.displayName === 'string';\n\nconst guessNumberAsTimestampMinDate = new Date('1975').getTime();\n\nexport const formatValue = (\n intl: Intl,\n value: unknown,\n {\n siblingsTimeMark,\n maxListSymbols,\n datesWithTime,\n }: {\n siblingsTimeMark?: unknown;\n maxListSymbols?: number;\n datesWithTime?: boolean;\n } = {},\n): string => {\n if (typeof value === 'number') {\n if (value >= guessNumberAsTimestampMinDate) {\n return formatValue(intl, new Date(value), {\n siblingsTimeMark,\n maxListSymbols,\n datesWithTime,\n });\n }\n return intl.formatNumber(value);\n }\n if (value instanceof Date) {\n if (\n datesWithTime ||\n (siblingsTimeMark &&\n siblingsTimeMark instanceof Date &&\n Math.abs(value.getTime() - siblingsTimeMark.getTime()) < 1000 * 60 * 60 * 24 * 5)\n ) {\n return intl.formatDate(value, { dateStyle: 'medium', timeStyle: 'medium' });\n }\n return intl.formatDate(value, { dateStyle: 'medium' });\n }\n\n if (Array.isArray(value)) {\n const formattedValues = value.map((subValue) =>\n formatValue(intl, subValue, { siblingsTimeMark, maxListSymbols, datesWithTime }),\n );\n\n return formatLimitedSizeList(formattedValues, intl, maxListSymbols);\n }\n\n if (isReactComponent(value)) {\n return String((value as React.FC).displayName);\n }\n\n if (value === undefined || value === null) {\n return intl.formatMessage({ id: 'data-not-available' });\n }\n\n return String(value);\n};\n\nconst formatValuesList = (\n values: { label: string; value: unknown }[],\n {\n intl,\n limit,\n datesWithTime,\n maxListSymbols,\n }: { intl: Intl; limit: number; datesWithTime?: boolean; maxListSymbols: number },\n) => {\n const result = values.slice(0, limit).map(({ value: rawValue, label }) => {\n if (rawValue === undefined) return label;\n\n const value = formatValue(intl, rawValue, { datesWithTime, maxListSymbols });\n\n if (String(value) === String(label)) return value;\n\n return intl.formatMessage({ id: 'value-labeled' }, { label, value });\n });\n if (values.length > limit) {\n result.push(\n intl.formatMessage({ id: 'ellipsis' }, { leftCount: limit - values.values.length }),\n );\n }\n\n return intl.formatList(result);\n};\n\nexport const serialize = (\n { insights, dataType, dataRange, dataTitle, entitiesCount }: AnalyzedData,\n {\n datesWithTime,\n maxListSymbols,\n clustersLimit,\n valuesLimit,\n groupsLimit,\n }: DataSummarizationConfig,\n {\n locale,\n translations,\n availableLocales,\n }: {\n locale: string;\n translations?: { [messageId: string]: string };\n availableLocales?: { [localeId: string]: any };\n },\n): string | null => {\n if (insights.length === 0) return null;\n\n const intl = getIntl(locale, translations, availableLocales);\n\n const dataRangeSummary = intl.formatList(\n dataRange.map((range) => {\n const from = formatValue(intl, range.from, {\n siblingsTimeMark: range.to,\n datesWithTime,\n maxListSymbols,\n });\n const to = formatValue(intl, range.to, {\n siblingsTimeMark: range.from,\n datesWithTime,\n maxListSymbols,\n });\n\n return intl.formatMessage(\n { id: range.label ? 'additional-axe' : 'additional-axe-no-label' },\n { from, to, label: range.label },\n );\n }),\n );\n\n if (dataType === 'time-series') {\n const trendsInsights = insights as (GeneralTrendNode | TrendNode)[];\n const trendsByDataKey: { [label: string]: (GeneralTrendNode | TrendNode)[] } = {};\n for (const insight of trendsInsights) {\n trendsByDataKey[insight.dataKey] = trendsByDataKey[insight.dataKey] ?? [];\n trendsByDataKey[insight.dataKey].push(insight);\n }\n\n const entities = intl.formatMessage(\n { id: 'entity-type-time-series' },\n { count: entitiesCount },\n );\n const entitiesList = Object.entries(trendsByDataKey).map(([dataKey, insights]) => {\n const generalTrend = insights.find((insight) => insight.type === 'general-trend');\n const localTrends = insights.filter((insight) => insight !== generalTrend);\n const primaryTrend = generalTrend ?? localTrends[0];\n const secondaryTrends: (TrendNode | GeneralTrendNode)[] = insights.filter(\n (insight) => insight !== primaryTrend,\n );\n const mainSummary: string = intl.formatMessage(\n { id: 'time-series-general-trend' },\n {\n dataKey: entitiesCount !== 1 ? dataKey : '',\n trend: intl.formatMessage({ id: `trend-${primaryTrend.change.strength}` }),\n from: intl.formatNumber(primaryTrend.change.from),\n to: intl.formatNumber(primaryTrend.change.to),\n },\n );\n const secondarylSummaries = secondaryTrends.map((trend) =>\n intl.formatMessage(\n { id: 'time-series-local-trend' },\n {\n trend: intl.formatMessage({ id: `trend-${trend.change.strength}` }),\n from: formatValue(intl, trend.from, {\n siblingsTimeMark: trend.to,\n datesWithTime,\n maxListSymbols,\n }),\n to: formatValue(intl, trend.to, {\n siblingsTimeMark: trend.from,\n datesWithTime,\n maxListSymbols,\n }),\n },\n ),\n );\n\n if (secondarylSummaries.length === 0) {\n return mainSummary;\n }\n\n return intl.formatMessage(\n {\n id: 'time-series-detailed-trend',\n },\n {\n general: mainSummary,\n locals: formatLimitedSizeList(secondarylSummaries, intl, 400, false),\n },\n );\n });\n\n const summary = intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: intl.formatList(entitiesList), label: dataTitle },\n );\n\n if (dataRangeSummary.length > 0) {\n return `${summary}\\n${dataRangeSummary}`;\n }\n\n return summary;\n } else if (dataType === 'points-cloud') {\n const clustersInsights = insights as ClusterNode[];\n const biggestClusters = clustersInsights.slice(0, clustersLimit);\n\n const maxSize = clustersInsights[0].size;\n const minSize = clustersInsights[clustersInsights.length - 1].size;\n const entities =\n maxSize === minSize\n ? intl.formatMessage(\n { id: 'entity-type-clusters-single-size' },\n { count: entitiesCount, size: maxSize },\n )\n : intl.formatMessage(\n { id: 'entity-type-clusters-multiple-size' },\n { count: entitiesCount, maxSize, minSize },\n );\n const entitiesList = biggestClusters.map((clusterInsight) => {\n const labels = formatLimitedSizeList(clusterInsight.labels, intl, maxListSymbols);\n const anonymous =\n clusterInsight.labels.length === 0 || labels === String(clusterInsight.size);\n\n return intl.formatMessage(\n {\n id: anonymous ? 'entity-type-clusters-label-anonymous' : 'entity-type-clusters-label',\n },\n {\n relativeSize: intl.formatMessage({ id: `relative-size-${clusterInsight.relativeSize}` }),\n labels,\n size: clusterInsight.size,\n x: intl.formatNumber(clusterInsight.center.x),\n xLabel: clusterInsight.center.xLabel,\n y: intl.formatNumber(clusterInsight.center.y),\n yLabel: clusterInsight.center.yLabel,\n },\n );\n });\n if (insights.length > clustersLimit) {\n entitiesList.push(\n intl.formatMessage({ id: 'ellipsis' }, { leftCount: insights.length - clustersLimit }),\n );\n }\n\n const summary = intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: intl.formatList(entitiesList), label: dataTitle },\n );\n\n if (dataRangeSummary.length > 0) {\n return `${summary}\\n${dataRangeSummary}`;\n }\n\n return summary;\n } else if (dataType === 'values-set') {\n const [valuesInsight] = insights as [ComparisonNode];\n const entities = intl.formatMessage({ id: 'entity-type-values' }, { count: entitiesCount });\n const entitiesList = formatValuesList(valuesInsight.values, {\n intl,\n limit: valuesLimit,\n datesWithTime,\n maxListSymbols,\n });\n\n return intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: entitiesList, label: dataTitle },\n );\n } else if (dataType === 'grouped-values' || dataType === 'indexed-groups') {\n const groupInsights = insights as ComparisonNode[];\n const valueCounts = groupInsights.map((group) => group.values.length);\n const minValuesCount = Math.min(...valueCounts);\n const maxValuesCount = Math.max(...valueCounts);\n\n const entities =\n minValuesCount === maxValuesCount\n ? intl.formatMessage(\n { id: 'entity-type-grouped-values-single-size' },\n { groupsCount: groupInsights.length, valuesCount: valueCounts[0] },\n )\n : intl.formatMessage(\n { id: 'entity-type-grouped-values-multiple-size' },\n { groupsCount: groupInsights.length, minValuesCount, maxValuesCount },\n );\n const entitiesList = groupInsights.slice(0, groupsLimit).map(({ label, values }) => {\n const formattedValues = formatValuesList(values, {\n intl,\n limit: valuesLimit,\n datesWithTime,\n maxListSymbols,\n });\n return intl.formatMessage({ id: 'values-group' }, { label, values: formattedValues });\n });\n if (groupInsights.values.length > groupsLimit) {\n entitiesList.push(\n intl.formatMessage(\n { id: 'ellipsis' },\n { leftCount: groupInsights.values.length - groupsLimit },\n ),\n );\n }\n\n const sumamry = intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: intl.formatList(entitiesList), label: dataTitle },\n );\n\n return sumamry;\n }\n\n return null;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"serialize.js","names":["_intl","require","formatLimitedSizeList","items","intl","maxFinalStringLength","arguments","length","undefined","includeEllipsis","limit","stringifyList","cutItems","slice","push","formatMessage","id","leftCount","formatList","formattedList","overflowRatio","Math","floor","maxIncreaseAttempts","i","newLimitFormattedList","isReactComponent","obj","_typeof2","displayName","guessNumberAsTimestampMinDate","Date","getTime","formatValue","value","_ref","siblingsTimeMark","maxListSymbols","datesWithTime","formatNumber","abs","formatDate","dateStyle","timeStyle","Array","isArray","formattedValues","map","subValue","String","exports","formatValuesList","values","_ref2","result","_ref3","rawValue","label","serialize","_ref4","_ref5","_ref6","insights","dataType","dataRange","dataTitle","entitiesCount","clustersLimit","valuesLimit","groupsLimit","locale","translations","availableLocales","getIntl","dataRangeSummary","range","from","to","trendsInsights","trendsByDataKey","_iterator","_createForOfIteratorHelper2","_step","s","n","done","_trendsByDataKey$insi","insight","dataKey","err","e","f","entities","count","entitiesList","Object","entries","_ref7","_ref8","_slicedToArray2","generalTrend","find","type","localTrends","filter","primaryTrend","secondaryTrends","mainSummary","trend","concat","change","strength","secondarylSummaries","general","locals","summary","clustersInsights","biggestClusters","maxSize","size","minSize","clusterInsight","labels","anonymous","relativeSize","x","center","xLabel","y","yLabel","_ref9","_ref10","valuesInsight","groupInsights","valueCounts","group","minValuesCount","min","apply","_toConsumableArray2","maxValuesCount","max","groupsCount","valuesCount","_ref11","sumamry"],"sources":["../../../src/a11y/serialize.ts"],"sourcesContent":["import { AnalyzedData, ClusterNode, ComparisonNode, GeneralTrendNode, TrendNode } from './insights';\n\nimport React from 'react';\nimport { DataSummarizationConfig } from './hints';\nimport { getIntl, Intl } from './intl';\n\nconst formatLimitedSizeList = (\n items: unknown[],\n intl: Intl,\n maxFinalStringLength = 100,\n includeEllipsis = true,\n) => {\n let limit = items.length;\n const stringifyList = () => {\n const cutItems = items.slice(0, limit);\n if (items.length > limit && includeEllipsis) {\n cutItems.push(intl.formatMessage({ id: 'ellipsis' }, { leftCount: limit - items.length }));\n }\n\n return intl.formatList(cutItems);\n };\n\n let formattedList = stringifyList();\n if (formattedList.length <= maxFinalStringLength) {\n return formattedList;\n }\n\n const overflowRatio = formattedList.length / maxFinalStringLength;\n limit = Math.floor(limit / overflowRatio);\n if (limit === 0) {\n limit = 1;\n return stringifyList();\n }\n\n formattedList = stringifyList();\n\n const maxIncreaseAttempts = 4;\n for (let i = 0; i < maxIncreaseAttempts; i++) {\n limit++;\n const newLimitFormattedList = stringifyList();\n\n if (newLimitFormattedList.length > maxFinalStringLength) {\n return formattedList;\n }\n\n formattedList = newLimitFormattedList;\n }\n\n return formattedList;\n};\n\nconst isReactComponent = (obj: any) =>\n typeof obj === 'object' && obj && 'displayName' in obj && typeof obj.displayName === 'string';\n\nconst guessNumberAsTimestampMinDate = new Date('1975').getTime();\n\nexport const formatValue = (\n intl: Intl,\n value: unknown,\n {\n siblingsTimeMark,\n maxListSymbols,\n datesWithTime,\n }: {\n siblingsTimeMark?: unknown;\n maxListSymbols?: number;\n datesWithTime?: boolean;\n } = {},\n): string => {\n if (typeof value === 'number') {\n if (value >= guessNumberAsTimestampMinDate) {\n return formatValue(intl, new Date(value), {\n siblingsTimeMark,\n maxListSymbols,\n datesWithTime,\n });\n }\n return intl.formatNumber(value);\n }\n if (value instanceof Date) {\n if (\n datesWithTime ||\n (siblingsTimeMark &&\n siblingsTimeMark instanceof Date &&\n Math.abs(value.getTime() - siblingsTimeMark.getTime()) < 1000 * 60 * 60 * 24 * 5)\n ) {\n return intl.formatDate(value, { dateStyle: 'medium', timeStyle: 'medium' });\n }\n return intl.formatDate(value, { dateStyle: 'medium' });\n }\n\n if (Array.isArray(value)) {\n const formattedValues = value.map((subValue) =>\n formatValue(intl, subValue, { siblingsTimeMark, maxListSymbols, datesWithTime }),\n );\n\n return formatLimitedSizeList(formattedValues, intl, maxListSymbols);\n }\n\n if (isReactComponent(value)) {\n return String((value as React.FC).displayName);\n }\n\n if (value === undefined || value === null) {\n return intl.formatMessage({ id: 'data-not-available' });\n }\n\n return String(value);\n};\n\nconst formatValuesList = (\n values: { label: string; value: unknown }[],\n {\n intl,\n limit,\n datesWithTime,\n maxListSymbols,\n }: { intl: Intl; limit: number; datesWithTime?: boolean; maxListSymbols: number },\n) => {\n const result = values.slice(0, limit).map(({ value: rawValue, label }) => {\n if (rawValue === undefined) return label;\n\n const value = formatValue(intl, rawValue, { datesWithTime, maxListSymbols });\n\n if (String(value) === String(label)) return value;\n\n return intl.formatMessage({ id: 'value-labeled' }, { label, value });\n });\n if (values.length > limit) {\n result.push(\n intl.formatMessage({ id: 'ellipsis' }, { leftCount: limit - values.values.length }),\n );\n }\n\n return intl.formatList(result);\n};\n\nexport const serialize = (\n { insights, dataType, dataRange, dataTitle, entitiesCount }: AnalyzedData,\n {\n datesWithTime,\n maxListSymbols,\n clustersLimit,\n valuesLimit,\n groupsLimit,\n }: DataSummarizationConfig,\n {\n locale,\n translations,\n availableLocales,\n }: {\n locale: string;\n translations?: { [messageId: string]: string };\n availableLocales?: { [localeId: string]: any };\n },\n): string | null => {\n if (insights.length === 0) return null;\n\n const intl = getIntl(locale, translations!, availableLocales!);\n\n const dataRangeSummary = intl.formatList(\n dataRange.map((range) => {\n const from = formatValue(intl, range.from, {\n siblingsTimeMark: range.to,\n datesWithTime,\n maxListSymbols,\n });\n const to = formatValue(intl, range.to, {\n siblingsTimeMark: range.from,\n datesWithTime,\n maxListSymbols,\n });\n\n return intl.formatMessage(\n { id: range.label ? 'additional-axe' : 'additional-axe-no-label' },\n { from, to, label: range.label },\n );\n }),\n );\n\n if (dataType === 'time-series') {\n const trendsInsights = insights as (GeneralTrendNode | TrendNode)[];\n const trendsByDataKey: { [label: string]: (GeneralTrendNode | TrendNode)[] } = {};\n for (const insight of trendsInsights) {\n trendsByDataKey[insight.dataKey] = trendsByDataKey[insight.dataKey] ?? [];\n trendsByDataKey[insight.dataKey].push(insight);\n }\n\n const entities = intl.formatMessage(\n { id: 'entity-type-time-series' },\n { count: entitiesCount },\n );\n const entitiesList = Object.entries(trendsByDataKey).map(([dataKey, insights]) => {\n const generalTrend = insights.find((insight) => insight.type === 'general-trend');\n const localTrends = insights.filter((insight) => insight !== generalTrend);\n const primaryTrend = generalTrend ?? localTrends[0];\n const secondaryTrends: (TrendNode | GeneralTrendNode)[] = insights.filter(\n (insight) => insight !== primaryTrend,\n );\n const mainSummary: string = intl.formatMessage(\n { id: 'time-series-general-trend' },\n {\n dataKey: entitiesCount !== 1 ? dataKey : '',\n trend: intl.formatMessage({ id: `trend-${primaryTrend.change.strength}` }),\n from: intl.formatNumber(primaryTrend.change.from),\n to: intl.formatNumber(primaryTrend.change.to),\n },\n );\n const secondarylSummaries = secondaryTrends.map((trend) =>\n intl.formatMessage(\n { id: 'time-series-local-trend' },\n {\n trend: intl.formatMessage({ id: `trend-${trend.change.strength}` }),\n from: formatValue(intl, trend.from, {\n siblingsTimeMark: trend.to,\n datesWithTime,\n maxListSymbols,\n }),\n to: formatValue(intl, trend.to, {\n siblingsTimeMark: trend.from,\n datesWithTime,\n maxListSymbols,\n }),\n },\n ),\n );\n\n if (secondarylSummaries.length === 0) {\n return mainSummary;\n }\n\n return intl.formatMessage(\n {\n id: 'time-series-detailed-trend',\n },\n {\n general: mainSummary,\n locals: formatLimitedSizeList(secondarylSummaries, intl, 400, false),\n },\n );\n });\n\n const summary = intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: intl.formatList(entitiesList), label: dataTitle },\n );\n\n if (dataRangeSummary.length > 0) {\n return `${summary}\\n${dataRangeSummary}`;\n }\n\n return summary;\n } else if (dataType === 'points-cloud') {\n const clustersInsights = insights as ClusterNode[];\n const biggestClusters = clustersInsights.slice(0, clustersLimit);\n\n const maxSize = clustersInsights[0].size;\n const minSize = clustersInsights[clustersInsights.length - 1].size;\n const entities =\n maxSize === minSize\n ? intl.formatMessage(\n { id: 'entity-type-clusters-single-size' },\n { count: entitiesCount, size: maxSize },\n )\n : intl.formatMessage(\n { id: 'entity-type-clusters-multiple-size' },\n { count: entitiesCount, maxSize, minSize },\n );\n const entitiesList = biggestClusters.map((clusterInsight) => {\n const labels = formatLimitedSizeList(clusterInsight.labels, intl, maxListSymbols);\n const anonymous =\n clusterInsight.labels.length === 0 || labels === String(clusterInsight.size);\n\n return intl.formatMessage(\n {\n id: anonymous ? 'entity-type-clusters-label-anonymous' : 'entity-type-clusters-label',\n },\n {\n relativeSize: intl.formatMessage({ id: `relative-size-${clusterInsight.relativeSize}` }),\n labels,\n size: clusterInsight.size,\n x: intl.formatNumber(clusterInsight.center.x),\n xLabel: clusterInsight.center.xLabel,\n y: intl.formatNumber(clusterInsight.center.y),\n yLabel: clusterInsight.center.yLabel,\n },\n );\n });\n if (insights.length > clustersLimit) {\n entitiesList.push(\n intl.formatMessage({ id: 'ellipsis' }, { leftCount: insights.length - clustersLimit }),\n );\n }\n\n const summary = intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: intl.formatList(entitiesList), label: dataTitle },\n );\n\n if (dataRangeSummary.length > 0) {\n return `${summary}\\n${dataRangeSummary}`;\n }\n\n return summary;\n } else if (dataType === 'values-set') {\n const [valuesInsight] = insights as [ComparisonNode];\n const entities = intl.formatMessage({ id: 'entity-type-values' }, { count: entitiesCount });\n const entitiesList = formatValuesList(valuesInsight.values, {\n intl,\n limit: valuesLimit,\n datesWithTime,\n maxListSymbols,\n });\n\n return intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: entitiesList, label: dataTitle },\n );\n } else if (dataType === 'grouped-values' || dataType === 'indexed-groups') {\n const groupInsights = insights as ComparisonNode[];\n const valueCounts = groupInsights.map((group) => group.values.length);\n const minValuesCount = Math.min(...valueCounts);\n const maxValuesCount = Math.max(...valueCounts);\n\n const entities =\n minValuesCount === maxValuesCount\n ? intl.formatMessage(\n { id: 'entity-type-grouped-values-single-size' },\n { groupsCount: groupInsights.length, valuesCount: valueCounts[0] },\n )\n : intl.formatMessage(\n { id: 'entity-type-grouped-values-multiple-size' },\n { groupsCount: groupInsights.length, minValuesCount, maxValuesCount },\n );\n const entitiesList = groupInsights.slice(0, groupsLimit).map(({ label, values }) => {\n const formattedValues = formatValuesList(values, {\n intl,\n limit: valuesLimit,\n datesWithTime,\n maxListSymbols,\n });\n return intl.formatMessage({ id: 'values-group' }, { label, values: formattedValues });\n });\n if (groupInsights.values.length > groupsLimit) {\n entitiesList.push(\n intl.formatMessage(\n { id: 'ellipsis' },\n { leftCount: groupInsights.values.length - groupsLimit },\n ),\n );\n }\n\n const sumamry = intl.formatMessage(\n { id: dataTitle ? 'chart-summary' : 'chart-summary-no-label' },\n { entities, entitiesList: intl.formatList(entitiesList), label: dataTitle },\n );\n\n return sumamry;\n }\n\n return null;\n};\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=createElement.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createElement.d.js","names":[],"sources":["../../src/createElement.d.ts"],"sourcesContent":["declare const createElement: any;\nexport default createElement;\n"],"mappings":""}