@semcore/d3-chart 2.8.15 → 2.8.17

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 (110) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/lib/cjs/Area.js +12 -18
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +21 -29
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +11 -17
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +17 -25
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +6 -18
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +11 -21
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +12 -16
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +2 -8
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +11 -17
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +8 -14
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +11 -17
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +11 -23
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/RadialTree.js +19 -27
  27. package/lib/cjs/RadialTree.js.map +1 -1
  28. package/lib/cjs/ReferenceLine.js +16 -24
  29. package/lib/cjs/ReferenceLine.js.map +1 -1
  30. package/lib/cjs/ResponsiveContainer.js +7 -19
  31. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  32. package/lib/cjs/ScatterPlot.js +14 -22
  33. package/lib/cjs/ScatterPlot.js.map +1 -1
  34. package/lib/cjs/StackBar.js +6 -14
  35. package/lib/cjs/StackBar.js.map +1 -1
  36. package/lib/cjs/StackedArea.js +5 -13
  37. package/lib/cjs/StackedArea.js.map +1 -1
  38. package/lib/cjs/Tooltip.js +17 -29
  39. package/lib/cjs/Tooltip.js.map +1 -1
  40. package/lib/cjs/Venn.js +10 -16
  41. package/lib/cjs/Venn.js.map +1 -1
  42. package/lib/cjs/a11y/PlotA11yModule.js +10 -18
  43. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  44. package/lib/cjs/a11y/PlotA11yView.js +9 -17
  45. package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
  46. package/lib/cjs/a11y/hints.js +4 -8
  47. package/lib/cjs/a11y/hints.js.map +1 -1
  48. package/lib/cjs/a11y/insights.js +8 -12
  49. package/lib/cjs/a11y/insights.js.map +1 -1
  50. package/lib/cjs/a11y/serialize.js +3 -7
  51. package/lib/cjs/a11y/serialize.js.map +1 -1
  52. package/lib/cjs/createElement.js +8 -17
  53. package/lib/cjs/createElement.js.map +1 -1
  54. package/lib/cjs/types/index.d.js +1 -5
  55. package/lib/cjs/utils.js +7 -13
  56. package/lib/cjs/utils.js.map +1 -1
  57. package/lib/es6/Area.js +11 -17
  58. package/lib/es6/Area.js.map +1 -1
  59. package/lib/es6/Axis.js +16 -24
  60. package/lib/es6/Axis.js.map +1 -1
  61. package/lib/es6/Bar.js +10 -16
  62. package/lib/es6/Bar.js.map +1 -1
  63. package/lib/es6/Bubble.js +13 -22
  64. package/lib/es6/Bubble.js.map +1 -1
  65. package/lib/es6/ClipPath.js +2 -11
  66. package/lib/es6/ClipPath.js.map +1 -1
  67. package/lib/es6/Donut.js +9 -15
  68. package/lib/es6/Donut.js.map +1 -1
  69. package/lib/es6/Dots.js +10 -10
  70. package/lib/es6/GroupBar.js +1 -7
  71. package/lib/es6/GroupBar.js.map +1 -1
  72. package/lib/es6/HorizontalBar.js +10 -16
  73. package/lib/es6/HorizontalBar.js.map +1 -1
  74. package/lib/es6/Hover.js +5 -11
  75. package/lib/es6/Hover.js.map +1 -1
  76. package/lib/es6/Line.js +10 -16
  77. package/lib/es6/Line.js.map +1 -1
  78. package/lib/es6/Plot.js +6 -15
  79. package/lib/es6/Plot.js.map +1 -1
  80. package/lib/es6/RadialTree.js +15 -24
  81. package/lib/es6/RadialTree.js.map +1 -1
  82. package/lib/es6/ReferenceLine.js +12 -21
  83. package/lib/es6/ReferenceLine.js.map +1 -1
  84. package/lib/es6/ResponsiveContainer.js +2 -11
  85. package/lib/es6/ResponsiveContainer.js.map +1 -1
  86. package/lib/es6/ScatterPlot.js +10 -19
  87. package/lib/es6/ScatterPlot.js.map +1 -1
  88. package/lib/es6/StackBar.js +2 -11
  89. package/lib/es6/StackBar.js.map +1 -1
  90. package/lib/es6/StackedArea.js +2 -11
  91. package/lib/es6/StackedArea.js.map +1 -1
  92. package/lib/es6/Tooltip.js +10 -19
  93. package/lib/es6/Tooltip.js.map +1 -1
  94. package/lib/es6/Venn.js +9 -15
  95. package/lib/es6/Venn.js.map +1 -1
  96. package/lib/es6/a11y/PlotA11yModule.js +4 -9
  97. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  98. package/lib/es6/a11y/PlotA11yView.js +6 -16
  99. package/lib/es6/a11y/PlotA11yView.js.map +1 -1
  100. package/lib/es6/a11y/hints.js +1 -6
  101. package/lib/es6/a11y/hints.js.map +1 -1
  102. package/lib/es6/a11y/insights.js +1 -7
  103. package/lib/es6/a11y/insights.js.map +1 -1
  104. package/lib/es6/a11y/serialize.js +1 -7
  105. package/lib/es6/a11y/serialize.js.map +1 -1
  106. package/lib/es6/createElement.js +1 -6
  107. package/lib/es6/createElement.js.map +1 -1
  108. package/lib/es6/utils.js +2 -11
  109. package/lib/es6/utils.js.map +1 -1
  110. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"StackedArea.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Area","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","x","series","find","s","key","map","y0","Element","getSeries"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Area from './Area';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }) {\n const { x } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render=\"g\" series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":";;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAK,IAAIC,OAAlB,QAAiC,UAAjC;AACA,SAASC,SAAT,QAA0B,eAA1B;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,aAAP,MAA0B,iBAA1B;AACA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,IAAMC,gBAAgB,GAAGC,MAAM,CAAC,kBAAD,CAA/B;AACA,IAAMC,EAAE,GAAGD,MAAM,CAAC,IAAD,CAAjB;;IAEME,e;;;;;;;;;;;;;WASJ,qBAAY;MACV,oBAAkC,KAAKC,OAAvC;MAAA,IAAQC,QAAR,iBAAQA,QAAR;MAAA,IAAkBC,IAAlB,iBAAkBA,IAAlB;MAAA,IAAwBZ,KAAxB,iBAAwBA,KAAxB;;MAEA,IAAIA,KAAK,CAACM,gBAAD,CAAT,EAA6B;QAC3B,IAAMO,IAAI,GAAGd,KAAK,CAACY,QAAN,CAAeG,OAAf,CAAuBX,iBAAiB,CAACQ,QAAD,CAAxC,EAAoDI,MAApD,CAA2D,UAACC,GAAD,EAAMC,KAAN,EAAgB;UACtF,IAAI,cAAAlB,KAAK,CAACmB,cAAN,CAAqBD,KAArB,KAA+BA,KAAK,CAACE,IAAN,KAAeC,WAAW,CAACf,IAA1D,IAAkE,CAACY,KAAK,CAACI,KAAN,CAAYC,IAAnF,EAAyF;YACvFN,GAAG,CAACO,IAAJ,CAASN,KAAK,CAACI,KAAN,CAAYG,CAArB;UACD;;UACD,OAAOR,GAAP;QACD,CALY,EAKV,EALU,CAAb;QAMAhB,KAAK,CAACa,IAAN,CAAWA,IAAI,CAACY,OAAL,EAAX;MACD;;MAED,OAAOzB,KAAK,CAACY,IAAD,CAAZ;IACD;;;WAED,4BAAoB;MAAA,IAALY,CAAK,QAALA,CAAK;MAClB,IAAQE,CAAR,GAAc,KAAKhB,OAAnB,CAAQgB,CAAR,CADkB,CAElB;;MACA,IAAMC,MAAM,GAAG,KAAKA,MAAL,CAAYC,IAAZ,CAAiB,UAACC,CAAD;QAAA,OAAOA,CAAC,CAACC,GAAF,KAAUN,CAAjB;MAAA,CAAjB,KAAwC,EAAvD;MACA,OAAO;QACLZ,IAAI,EAAEe,MAAM,CAACI,GAAP,CAAW,UAACF,CAAD;UAAA;;UAAA,uCACZA,CAAC,CAACjB,IADU,6DAGdY,CAHc,EAGVK,CAAC,CAACjB,IAAF,CAAOY,CAAP,MAAc,IAAd,GAAqB,IAArB,GAA4BK,CAAC,CAAC,CAAD,CAHnB,mCAIdrB,EAJc,EAITqB,CAAC,CAAC,CAAD,CAJQ;QAAA,CAAX,CADD;QAOLG,EAAE,EAAExB,EAPC;QAQLkB,CAAC,EAADA;MARK,CAAP;IAUD;;;WAED,kBAAS;MACP,IAAMO,OAAO,GAAG,KAAKA,OAArB;MACA,KAAKN,MAAL,GAAc,KAAKO,SAAL,EAAd;MACA,oBAAO,oBAAC,OAAD;QAAS,mBAAT;QAAqB,MAAM,EAAC,GAA5B;QAAgC,MAAM,EAAE,KAAKP;MAA7C,EAAP;IACD;;;;EA7C2BzB,S;;gBAAxBO,e,iBACiB,a;;gBADjBA,e,kBAGkB,YAAM;EAC1B,IAAMT,KAAK,GAAGC,OAAO,EAArB;EACAD,KAAK,CAACM,gBAAD,CAAL,GAA0B,IAA1B;EACA,OAAO;IAAEN,KAAK,EAALA;EAAF,CAAP;AACD,C;;AAyCH,IAAMoB,WAAW,GAAGhB,aAAa,CAACK,eAAD,EAAkB;EAAEJ,IAAI,EAAJA;AAAF,CAAlB,CAAjC;AAEA,eAAee,WAAf"}
1
+ {"version":3,"file":"StackedArea.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Area","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","x","series","find","s","key","map","y0","Element","getSeries"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Area from './Area';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }) {\n const { x } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render=\"g\" series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,KAAK,IAAIC,OAAlB,QAAiC,UAAjC;AACA,SAASC,SAAT,QAA0B,eAA1B;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,aAAP,MAA0B,iBAA1B;AACA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,IAAMC,gBAAgB,GAAGC,MAAM,CAAC,kBAAD,CAA/B;AACA,IAAMC,EAAE,GAAGD,MAAM,CAAC,IAAD,CAAjB;;IAEME,e;;;;;;;;;;;;;WASJ,qBAAY;MACV,oBAAkC,KAAKC,OAAvC;MAAA,IAAQC,QAAR,iBAAQA,QAAR;MAAA,IAAkBC,IAAlB,iBAAkBA,IAAlB;MAAA,IAAwBZ,KAAxB,iBAAwBA,KAAxB;;MAEA,IAAIA,KAAK,CAACM,gBAAD,CAAT,EAA6B;QAC3B,IAAMO,IAAI,GAAGd,KAAK,CAACY,QAAN,CAAeG,OAAf,CAAuBX,iBAAiB,CAACQ,QAAD,CAAxC,EAAoDI,MAApD,CAA2D,UAACC,GAAD,EAAMC,KAAN,EAAgB;UACtF,IAAI,cAAAlB,KAAK,CAACmB,cAAN,CAAqBD,KAArB,KAA+BA,KAAK,CAACE,IAAN,KAAeC,WAAW,CAACf,IAA1D,IAAkE,CAACY,KAAK,CAACI,KAAN,CAAYC,IAAnF,EAAyF;YACvFN,GAAG,CAACO,IAAJ,CAASN,KAAK,CAACI,KAAN,CAAYG,CAArB;UACD;;UACD,OAAOR,GAAP;QACD,CALY,EAKV,EALU,CAAb;QAMAhB,KAAK,CAACa,IAAN,CAAWA,IAAI,CAACY,OAAL,EAAX;MACD;;MAED,OAAOzB,KAAK,CAACY,IAAD,CAAZ;IACD;;;WAED,4BAAoB;MAAA,IAALY,CAAK,QAALA,CAAK;MAClB,IAAQE,CAAR,GAAc,KAAKhB,OAAnB,CAAQgB,CAAR,CADkB,CAElB;;MACA,IAAMC,MAAM,GAAG,KAAKA,MAAL,CAAYC,IAAZ,CAAiB,UAACC,CAAD;QAAA,OAAOA,CAAC,CAACC,GAAF,KAAUN,CAAjB;MAAA,CAAjB,KAAwC,EAAvD;MACA,OAAO;QACLZ,IAAI,EAAEe,MAAM,CAACI,GAAP,CAAW,UAACF,CAAD;UAAA;;UAAA,uCACZA,CAAC,CAACjB,IADU,6DAGdY,CAHc,EAGVK,CAAC,CAACjB,IAAF,CAAOY,CAAP,MAAc,IAAd,GAAqB,IAArB,GAA4BK,CAAC,CAAC,CAAD,CAHnB,mCAIdrB,EAJc,EAITqB,CAAC,CAAC,CAAD,CAJQ;QAAA,CAAX,CADD;QAOLG,EAAE,EAAExB,EAPC;QAQLkB,CAAC,EAADA;MARK,CAAP;IAUD;;;WAED,kBAAS;MACP,IAAMO,OAAO,GAAG,KAAKA,OAArB;MACA,KAAKN,MAAL,GAAc,KAAKO,SAAL,EAAd;MACA,oBAAO,oBAAC,OAAD;QAAS,mBAAT;QAAqB,MAAM,EAAC,GAA5B;QAAgC,MAAM,EAAE,KAAKP;MAA7C,EAAP;IACD;;;;EA7C2BzB,S;;gBAAxBO,e,iBACiB,a;;gBADjBA,e,kBAGkB,YAAM;EAC1B,IAAMT,KAAK,GAAGC,OAAO,EAArB;EACAD,KAAK,CAACM,gBAAD,CAAL,GAA0B,IAA1B;EACA,OAAO;IAAEN,KAAK,EAALA;EAAF,CAAP;AACD,C;;AAyCH,IAAMoB,WAAW,GAAGhB,aAAa,CAACK,eAAD,EAAkB;EAAEJ,IAAI,EAAJA;AAAF,CAAlB,CAAjC;AAEA,eAAee,WAAf"}
@@ -1,25 +1,16 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
3
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
4
  import _createClass from "@babel/runtime/helpers/createClass";
4
5
  import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
5
6
  import _inherits from "@babel/runtime/helpers/inherits";
6
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
7
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
+ import _createSuper from "@babel/runtime/helpers/createSuper";
8
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
9
  import { sstyled as _sstyled } from "@semcore/core";
10
10
  import { assignProps as _assignProps3 } from "@semcore/core";
11
11
  import { assignProps as _assignProps2 } from "@semcore/core";
12
12
  import { assignProps as _assignProps } from "@semcore/core";
13
13
  var _excluded = ["Children", "children", "tag"];
14
-
15
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
-
17
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
18
-
19
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
20
-
21
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
22
-
23
14
  import React, { useCallback } from 'react';
24
15
  import { Component, Root, sstyled } from '@semcore/core';
25
16
  import Popper from '@semcore/popper';
@@ -34,17 +25,17 @@ var style = (
34
25
  /*__reshadow_css_start__*/
35
26
  _sstyled.insert(
36
27
  /*__inner_css_start__*/
37
- ".___STooltip_1k2if_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_1k2if_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_1k2if_gg_{display:flex;align-items:center}.___SDot_1k2if_gg_{width:8px;height:8px;border-radius:50%;margin-right:var(--intergalactic-spacing-2x, 8px);background:var(--intergalactic-icon-secondary-info, #2bb3ff)}.___SDot_1k2if_gg_.__color_1k2if_gg_{background:var(--color_1k2if)}"
28
+ ".___STooltip_1g8zu_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_1g8zu_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_1g8zu_gg_{display:flex;align-items:center}.___SDot_1g8zu_gg_{width:8px;height:8px;border-radius:50%;margin-right:var(--intergalactic-spacing-2x, 8px);background:var(--intergalactic-icon-secondary-info, #2bb3ff)}.___SDot_1g8zu_gg_.__color_1g8zu_gg_{background:var(--color_1g8zu)}"
38
29
  /*__inner_css_end__*/
39
- , "1k2if_gg_")
30
+ , "1g8zu_gg_")
40
31
  /*__reshadow_css_end__*/
41
32
  , {
42
- "__STooltip": "___STooltip_1k2if_gg_",
43
- "__STitle": "___STitle_1k2if_gg_",
44
- "__SDotGroup": "___SDotGroup_1k2if_gg_",
45
- "__SDot": "___SDot_1k2if_gg_",
46
- "_color": "__color_1k2if_gg_",
47
- "--color": "--color_1k2if"
33
+ "__STooltip": "___STooltip_1g8zu_gg_",
34
+ "__STitle": "___STitle_1g8zu_gg_",
35
+ "__SDotGroup": "___SDotGroup_1g8zu_gg_",
36
+ "__SDot": "___SDot_1g8zu_gg_",
37
+ "_color": "__color_1g8zu_gg_",
38
+ "--color": "--color_1g8zu"
48
39
  });
49
40
 
50
41
  var TooltipRoot = /*#__PURE__*/function (_Component) {
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","names":["React","useCallback","Component","Root","sstyled","Popper","Box","findComponent","resolveColor","createElement","CONSTANT","TooltipRoot","$visible","asProps","x","y","state","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","data","node","setState","VIRTUAL_ELEMENT","current","contains","setPopperTrigger","popper","update","Children","children","tag","other","advanceMode","Tooltip","Trigger","displayName","handlerCancel","allowedAutoPlacements","setTrigger","style","PopperPopper","props","STooltip","Element","styles","Title","STitle","Dot","color","SDotGroup","SDot","Footer"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Popper from '@semcore/popper';\nimport { Box } from '@semcore/flex-box';\nimport findComponent from '@semcore/utils/lib/findComponent';\nimport resolveColor from '@semcore/utils/lib/color';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\n\nimport style from './style/tooltip.shadow.css';\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n // TODO: как то убрать\n const { x, y } = this.asProps;\n return { x, y };\n }\n\n getPopperProps() {\n return {\n ...this.state,\n };\n }\n\n componentDidMount() {\n const { eventEmitter, rootRef } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n (visible, data, node) => {\n this.setState(\n {\n ...data,\n $visible: visible,\n },\n () => {\n if (node && (node[CONSTANT.VIRTUAL_ELEMENT] || rootRef.current.contains(node))) {\n this?.setPopperTrigger(node);\n this.popper.current?.update();\n }\n },\n );\n },\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\n }\n\n render() {\n const { Children, children, tag, ...other } = this.asProps;\n\n const advanceMode = !!findComponent(Children, [\n Tooltip.Trigger.displayName,\n Tooltip.Popper.displayName,\n ]);\n return (\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction=\"none\"\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advanceMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition=\"inside\"\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const SDotGroup = Root;\n const SDot = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n <SDot color={resolveColor(color)} />\n <Children />\n </SDotGroup>,\n );\n}\n\nfunction Footer() {\n return null;\n}\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tooltip.js","names":["React","useCallback","Component","Root","sstyled","Popper","Box","findComponent","resolveColor","createElement","CONSTANT","TooltipRoot","$visible","asProps","x","y","state","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","data","node","setState","VIRTUAL_ELEMENT","current","contains","setPopperTrigger","popper","update","Children","children","tag","other","advanceMode","Tooltip","Trigger","displayName","handlerCancel","allowedAutoPlacements","setTrigger","style","PopperPopper","props","STooltip","Element","styles","Title","STitle","Dot","color","SDotGroup","SDot","Footer"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Popper from '@semcore/popper';\nimport { Box } from '@semcore/flex-box';\nimport findComponent from '@semcore/utils/lib/findComponent';\nimport resolveColor from '@semcore/utils/lib/color';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\n\nimport style from './style/tooltip.shadow.css';\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n // TODO: как то убрать\n const { x, y } = this.asProps;\n return { x, y };\n }\n\n getPopperProps() {\n return {\n ...this.state,\n };\n }\n\n componentDidMount() {\n const { eventEmitter, rootRef } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n (visible, data, node) => {\n this.setState(\n {\n ...data,\n $visible: visible,\n },\n () => {\n if (node && (node[CONSTANT.VIRTUAL_ELEMENT] || rootRef.current.contains(node))) {\n this?.setPopperTrigger(node);\n this.popper.current?.update();\n }\n },\n );\n },\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\n }\n\n render() {\n const { Children, children, tag, ...other } = this.asProps;\n\n const advanceMode = !!findComponent(Children, [\n Tooltip.Trigger.displayName,\n Tooltip.Popper.displayName,\n ]);\n return (\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction=\"none\"\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advanceMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition=\"inside\"\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const SDotGroup = Root;\n const SDot = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n <SDot color={resolveColor(color)} />\n <Children />\n </SDotGroup>,\n );\n}\n\nfunction Footer() {\n return null;\n}\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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"}
package/lib/es6/Venn.js CHANGED
@@ -4,15 +4,9 @@ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
4
  import _createClass from "@babel/runtime/helpers/createClass";
5
5
  import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
6
6
  import _inherits from "@babel/runtime/helpers/inherits";
7
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
8
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
+ import _createSuper from "@babel/runtime/helpers/createSuper";
9
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
9
  import { sstyled as _sstyled } from "@semcore/core";
11
-
12
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
13
-
14
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
15
-
16
10
  import React from 'react';
17
11
  import { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';
18
12
  import { Component, sstyled } from '@semcore/core';
@@ -26,17 +20,17 @@ var style = (
26
20
  /*__reshadow_css_start__*/
27
21
  _sstyled.insert(
28
22
  /*__inner_css_start__*/
29
- ".___SCircle_u9nii_gg_,.___SIntersection_u9nii_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_u9nii_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_u9nii);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_u9nii_gg_:hover{fill-opacity:.7}}.___SCircle_u9nii_gg_.__color_u9nii_gg_{fill:var(--color_u9nii)}.___SCircle_u9nii_gg_.__transparent_u9nii_gg_{opacity:.3}.___SIntersection_u9nii_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_u9nii_gg_:hover{fill-opacity:.1}}.___SIntersection_u9nii_gg_.__transparent_u9nii_gg_{opacity:.3}"
23
+ ".___SCircle_vxmom_gg_,.___SIntersection_vxmom_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_vxmom_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_vxmom);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_vxmom_gg_:hover{fill-opacity:.7}}.___SCircle_vxmom_gg_.__color_vxmom_gg_{fill:var(--color_vxmom)}.___SCircle_vxmom_gg_.__transparent_vxmom_gg_{opacity:.3}.___SIntersection_vxmom_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_vxmom_gg_:hover{fill-opacity:.1}}.___SIntersection_vxmom_gg_.__transparent_vxmom_gg_{opacity:.3}"
30
24
  /*__inner_css_end__*/
31
- , "u9nii_gg_")
25
+ , "vxmom_gg_")
32
26
  /*__reshadow_css_end__*/
33
27
  , {
34
- "__SCircle": "___SCircle_u9nii_gg_",
35
- "--duration": "--duration_u9nii",
36
- "_color": "__color_u9nii_gg_",
37
- "--color": "--color_u9nii",
38
- "_transparent": "__transparent_u9nii_gg_",
39
- "__SIntersection": "___SIntersection_u9nii_gg_"
28
+ "__SCircle": "___SCircle_vxmom_gg_",
29
+ "--duration": "--duration_vxmom",
30
+ "_color": "__color_vxmom_gg_",
31
+ "--color": "--color_vxmom",
32
+ "_transparent": "__transparent_vxmom_gg_",
33
+ "__SIntersection": "___SIntersection_vxmom_gg_"
40
34
  });
41
35
 
42
36
  var VennRoot = /*#__PURE__*/function (_Component) {
@@ -1 +1 @@
1
- {"version":3,"file":"Venn.js","names":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","sstyled","canUseDOM","FadeInOut","createElement","CONSTANT","VennRoot","document","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","forwardRef","ref","width","height","top","right","bottom","left","data","orientation","orientationOrder","size","vennData","Object","entries","map","dataKey","sets","split","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","dataKeys","delay","values","filter","d","includes","setid","Element","dataHintsHandler","establishDataType","getVennData","renderElement","style","Math","PI","c1","c2","radius","Circle","SCircle","styles","color","name","describeValueEntity","Intersection","SIntersection","renderIntersection","useCallback","Venn"],"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 =\n (visible, props) =>\n ({ 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":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","sstyled","canUseDOM","FadeInOut","createElement","CONSTANT","VennRoot","document","visible","props","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","forwardRef","ref","width","height","top","right","bottom","left","data","orientation","orientationOrder","size","vennData","Object","entries","map","dataKey","sets","split","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","dataKeys","delay","values","filter","d","includes","setid","Element","dataHintsHandler","establishDataType","getVennData","renderElement","style","Math","PI","c1","c2","radius","Circle","SCircle","styles","color","name","describeValueEntity","Intersection","SIntersection","renderIntersection","useCallback","Venn"],"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 =\n (visible, props) =>\n ({ 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,15 +1,10 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
4
  import { sstyled as _sstyled } from "@semcore/core";
5
5
  import { assignProps as _assignProps3 } from "@semcore/core";
6
6
  import { assignProps as _assignProps2 } from "@semcore/core";
7
7
  import { assignProps as _assignProps } from "@semcore/core";
8
-
9
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
-
11
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12
-
13
8
  import React from 'react';
14
9
  import { normalizeLocale } from './locale';
15
10
  import { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';
@@ -20,12 +15,12 @@ var styles = (
20
15
  /*__reshadow_css_start__*/
21
16
  _sstyled.insert(
22
17
  /*__inner_css_start__*/
23
- ".___SPlotA11yModule_foav3_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_foav3_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}"
18
+ ".___SPlotA11yModule_1ddlx_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_1ddlx_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}"
24
19
  /*__inner_css_end__*/
25
- , "foav3_gg_")
20
+ , "1ddlx_gg_")
26
21
  /*__reshadow_css_end__*/
27
22
  , {
28
- "__SPlotA11yModule": "___SPlotA11yModule_foav3_gg_"
23
+ "__SPlotA11yModule": "___SPlotA11yModule_1ddlx_gg_"
29
24
  });
30
25
  import { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';
31
26
  import { Box } from '@semcore/flex-box';
@@ -1 +1 @@
1
- {"version":3,"file":"PlotA11yModule.js","names":["React","normalizeLocale","localizedMessages","Root","sstyled","Context","I18nContext","useI18n","Box","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","SPlotA11yModule","useState","wasFocused","setWasFocused","navWithKeyboard","setNavWithKeyboard","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","loading","setLoading","error","setError","contextLocale","useContext","locale","useMemo","t","useEffect","focusListener","plotRef","current","addEventListener","removeEventListener","keyboardListener","event","navigationKeys","includes","key","document","body","shouldDisplayView","then","PlotA11yView","Component","console","styles"],"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 // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\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 // eslint-disable-next-line no-console\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":";;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,eAAT,QAAgC,UAAhC;AACA,SAASC,iBAAT,QAAkC,uDAAlC;AACA,SAASC,IAAT,EAAeC,OAAf,QAA8B,eAA9B;;;;;;;;;;;;;;AAEA,SAASC,OAAO,IAAIC,WAApB,EAAiCC,OAAjC,QAAgD,sCAAhD;AACA,SAASC,GAAT,QAAoB,mBAApB;AAEA,IAAIC,gBAAgB,GAAG,KAAvB;AACA,IAAIC,qBAAqB,GAAG,KAA5B;AAaA,OAAO,IAAMC,cAAuC,GAAG,SAA1CA,cAA0C,CAACC,KAAD,EAAW;EAAA;EAAA;;EAChE,IAAMC,eAAe,GAiGML,GAjG3B;;EACA,sBAAoCR,KAAK,CAACc,QAAN,CAAeL,gBAAf,CAApC;EAAA;EAAA,IAAOM,UAAP;EAAA,IAAmBC,aAAnB;;EACA,uBAA8ChB,KAAK,CAACc,QAAN,CAAeJ,qBAAf,CAA9C;EAAA;EAAA,IAAOO,eAAP;EAAA,IAAwBC,kBAAxB;;EACA,uBAAwClB,KAAK,CAACc,QAAN,CAE9B,IAF8B,CAAxC;EAAA;EAAA,IAAOK,YAAP;EAAA,IAAqBC,eAArB;;EAIA,IAAMC,yBAAyB,GAAGrB,KAAK,CAACsB,WAAN,CAAkB,YAAM;IACxDN,aAAa,CAAC,IAAD,CAAb;IACAE,kBAAkB,CAAC,IAAD,CAAlB;EACD,CAHiC,EAG/B,EAH+B,CAAlC;;EAKA,uBAA8BlB,KAAK,CAACc,QAAN,CAAe,KAAf,CAA9B;EAAA;EAAA,IAAOS,OAAP;EAAA,IAAgBC,UAAhB;;EACA,uBAA0BxB,KAAK,CAACc,QAAN,CAA6B,IAA7B,CAA1B;EAAA;EAAA,IAAOW,KAAP;EAAA,IAAcC,QAAd;;EAEA,IAAMC,aAAa,GAAG3B,KAAK,CAAC4B,UAAN,CAAiBtB,WAAjB,CAAtB;EACA,IAAMuB,MAAM,GAAG7B,KAAK,CAAC8B,OAAN,CACb;IAAA;;IAAA,OAAM7B,eAAe,kBAACW,KAAK,CAACiB,MAAP,yDAAiBF,aAAjB,EAAgCzB,iBAAhC,CAArB;EAAA,CADa,EAEb,CAACU,KAAK,CAACiB,MAAP,CAFa,CAAf;EAIA,IAAME,CAAC,GAAGxB,OAAO,CAACL,iBAAD,EAAoB2B,MAApB,CAAjB;EAEA7B,KAAK,CAACgC,SAAN,CAAgB,YAAM;IAAA;;IACpB,IAAIjB,UAAJ,EAAgB;;IAChB,IAAMkB,aAAa,GAAG,SAAhBA,aAAgB,GAAM;MAC1BxB,gBAAgB,GAAG,IAAnB;MACAO,aAAa,CAAC,IAAD,CAAb;IACD,CAHD;;IAKA,yBAAAJ,KAAK,CAACsB,OAAN,CAAcC,OAAd,gFAAuBC,gBAAvB,CAAwC,OAAxC,EAAiDH,aAAjD;IACA,OAAO;MAAA;;MAAA,iCAAMrB,KAAK,CAACsB,OAAN,CAAcC,OAApB,2DAAM,uBAAuBE,mBAAvB,CAA2C,OAA3C,EAAoDJ,aAApD,CAAN;IAAA,CAAP;EACD,CATD,EASG,CAAClB,UAAD,EAAaH,KAAK,CAACsB,OAAnB,CATH;EAUAlC,KAAK,CAACgC,SAAN,CAAgB,YAAM;IAAA;;IACpB,IAAIf,eAAJ,EAAqB;;IACrB,IAAMqB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD,EAAkB;MACzC,IAAMC,cAAc,GAAG,CACrB,KADqB,EAErB,SAFqB,EAGrB,WAHqB,EAIrB,WAJqB,EAKrB,YALqB,EAMrB,SANqB,EAOrB,WAPqB,CAAvB;;MASA,IAAI,SAASD,KAAT,IAAkBC,cAAc,CAACC,QAAf,CAAyBF,KAAD,CAAyBG,GAAjD,CAAtB,EAA6E;QAC3ExB,kBAAkB,CAAC,IAAD,CAAlB;QACAR,qBAAqB,GAAG,IAAxB;MACD;IACF,CAdD;;IAeA,kBAAAiC,QAAQ,CAACC,IAAT,kEAAeR,gBAAf,CAAgC,SAAhC,EAA2CE,gBAA3C;IACA,OAAO;MAAA;;MAAA,0BAAMK,QAAQ,CAACC,IAAf,oDAAM,gBAAeP,mBAAf,CAAmC,SAAnC,EAA8CC,gBAA9C,CAAN;IAAA,CAAP;EACD,CAnBD,EAmBG,CAACrB,eAAD,CAnBH;EAqBA,IAAM4B,iBAAiB,GAAG9B,UAAU,IAAIE,eAAxC;EAEAjB,KAAK,CAACgC,SAAN,CAAgB,YAAM;IACpB,IAAI,CAACa,iBAAL,EAAwB;IACxB,IAAI1B,YAAJ,EAAkB;IAClB,IAAII,OAAJ,EAAa;IAEbC,UAAU,CAAC,IAAD,CAAV;IAEA,OAAO,gBAAP,EACGsB,IADH,CACQ,iBAAsB;MAAA,IAAnBC,YAAmB,SAAnBA,YAAmB;MAC1B3B,eAAe,CAAC;QAAE4B,SAAS,EAAED;MAAb,CAAD,CAAf;MACAvB,UAAU,CAAC,KAAD,CAAV;MACAE,QAAQ,CAAC,IAAD,CAAR;IACD,CALH,WAMS,UAACD,KAAD,EAAW;MAChB;MACAwB,OAAO,CAACxB,KAAR,CAAcA,KAAd;MACAC,QAAQ,CAACD,KAAD,CAAR;IACD,CAVH;EAWD,CAlBD,EAkBG,CAACN,YAAD,EAAe0B,iBAAf,EAAkCtB,OAAlC,EAA2CC,UAA3C,CAlBH;;EAoBA,IAAIL,YAAJ,EAAkB;IAAA;;IAChB,eAAOf,OAAO,CAAC8C,MAAD,CAAd,eACE,oBAAC,YAAD,CAAc,SAAd,eAA4BtC,KAA5B;MAAmC,MAAM,EAAEiB;IAA3C,GADF;EAGD;;EAED,IAAIJ,KAAJ,EAAW;IAAA;;IACT,eAAOrB,OAAO,CAAC8C,MAAD,CAAd,eACE,oBAAC,eAAD;MAAA,YAAwC,CAAxC;MAAA,aAAqD;IAArD,YACGnB,CAAC,CAAC,QAAD,CADJ,CADF;EAKD;;EACD,IAAIR,OAAJ,EAAa;IAAA;;IACX,eAAOnB,OAAO,CAAC8C,MAAD,CAAd,eACE,oBAAC,eAAD;MAAA,YAAwC,CAAxC;MAAA,aAAqD;IAArD,YACGnB,CAAC,CAAC,SAAD,CADJ,CADF;EAKD;;EAED,eAAO3B,OAAO,CAAC8C,MAAD,CAAd,eACE,oBAAC,eAAD;IAAA,YAAwC,CAAxC;IAAA,WAAoD7B;EAApD,YACGU,CAAC,CAAC,UAAD,CADJ,CADF;AAKD,CAtGM"}
1
+ {"version":3,"file":"PlotA11yModule.js","names":["React","normalizeLocale","localizedMessages","Root","sstyled","Context","I18nContext","useI18n","Box","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","SPlotA11yModule","useState","wasFocused","setWasFocused","navWithKeyboard","setNavWithKeyboard","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","loading","setLoading","error","setError","contextLocale","useContext","locale","useMemo","t","useEffect","focusListener","plotRef","current","addEventListener","removeEventListener","keyboardListener","event","navigationKeys","includes","key","document","body","shouldDisplayView","then","PlotA11yView","Component","console","styles"],"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 // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\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 // eslint-disable-next-line no-console\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,19 +1,9 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import _createForOfIteratorHelper from "@babel/runtime/helpers/createForOfIteratorHelper";
3
4
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
4
5
  import { sstyled as _sstyled } from "@semcore/core";
5
6
  import { assignProps as _assignProps } from "@semcore/core";
6
-
7
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
-
9
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
-
11
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
12
-
13
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
-
15
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
16
-
17
7
  import React from 'react';
18
8
  import { heavyFindNextFocusableElement } from './focus';
19
9
  import { makeDataSummarizationConfig } from './hints';
@@ -27,13 +17,13 @@ var styles = (
27
17
  /*__reshadow_css_start__*/
28
18
  _sstyled.insert(
29
19
  /*__inner_css_start__*/
30
- ".___SPlotA11yView_18ytq_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_18ytq_gg_.__focus-within_18ytq_gg_,.___SPlotA11yView_18ytq_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_18ytq_gg_:focus,.___SPlotA11yView_18ytq_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_18ytq_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_18ytq_gg_ table,.___SPlotA11yView_18ytq_gg_ td,.___SPlotA11yView_18ytq_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}"
20
+ ".___SPlotA11yView_1nfzb_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_1nfzb_gg_.__focus-within_1nfzb_gg_,.___SPlotA11yView_1nfzb_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_1nfzb_gg_:focus,.___SPlotA11yView_1nfzb_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_1nfzb_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1nfzb_gg_ table,.___SPlotA11yView_1nfzb_gg_ td,.___SPlotA11yView_1nfzb_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}"
31
21
  /*__inner_css_end__*/
32
- , "18ytq_gg_")
22
+ , "1nfzb_gg_")
33
23
  /*__reshadow_css_end__*/
34
24
  , {
35
- "__SPlotA11yView": "___SPlotA11yView_18ytq_gg_",
36
- "_focus-within": "__focus-within_18ytq_gg_"
25
+ "__SPlotA11yView": "___SPlotA11yView_1nfzb_gg_",
26
+ "_focus-within": "__focus-within_1nfzb_gg_"
37
27
  });
38
28
  import { Box } from '@semcore/flex-box';
39
29
  import { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';
@@ -1 +1 @@
1
- {"version":3,"file":"PlotA11yView.js","names":["React","heavyFindNextFocusableElement","makeDataSummarizationConfig","formatValue","getIntl","summarize","Root","sstyled","Box","useAsyncI18nMessages","localizedMessages","PlotA11yView","id","providedData","data","hints","plotLabel","plotRef","providedConfig","config","locale","SPlotA11yView","translations","intl","useMemo","Array","isArray","keys","fromHints","push","fields","verticalAxes","horizontalAxes","valueAxes","Object","values","Set","filter","key","length","forEach","row","duplicatedBaseKeys","baseKeys","titles","valuesAxes","map","has","axesTitle","vertical","horizontal","entry","undefined","doublicated","handled","label","renderTitle","useCallback","dataKey","useState","summary","setSummary","generatingSummary","setGeneratingSummary","useEffect","disable","override","setTimeout","handleSkip","current","focus","handleSkipKeyboard","event","code","handleGoToTable","dataTableRef","handleGoToTableKeyboard","texts","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","useRef","styles","index","join"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import React from 'react';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { formatValue } from './serialize';\nimport { getIntl } from './intl';\nimport { summarize } from './summarize';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { Box } from '@semcore/flex-box';\nimport { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';\n\nexport const PlotA11yView: React.FC<A11yViewProps> = ({\n id,\n data: providedData,\n hints,\n plotLabel,\n plotRef,\n config: providedConfig,\n locale,\n}) => {\n const SPlotA11yView = Root;\n const translations = useAsyncI18nMessages(localizedMessages, locale);\n const intl = React.useMemo(() => getIntl(locale, translations), [locale]);\n const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);\n const data = React.useMemo(\n () => (Array.isArray(providedData) ? providedData : [providedData]),\n [providedData],\n );\n const keys = React.useMemo(() => {\n let fromHints: (string | number)[] = [];\n fromHints.push(...hints.fields.verticalAxes);\n fromHints.push(...hints.fields.horizontalAxes);\n fromHints.push(...hints.fields.valueAxes);\n fromHints.push(...Object.keys(hints.fields.values));\n\n fromHints = [...new Set(fromHints)].filter((key) => key in data[0]);\n\n if (fromHints.length === 0) {\n data.forEach((row) => fromHints.push(...Object.keys(row)));\n }\n\n return [...new Set(fromHints)];\n }, [data, hints]);\n const duplicatedBaseKeys = React.useMemo(() => {\n const baseKeys = keys\n .filter((key) => !hints.titles.valuesAxes[key])\n .map((key) => {\n if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical)\n return [key, hints.axesTitle.vertical];\n if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal)\n return [key, hints.axesTitle.horizontal];\n })\n .filter((entry) => entry !== undefined)\n .map((entry) => entry!);\n const doublicated: Record<string, true> = {};\n const handled: Record<string, string | number> = {};\n for (const [key, label] of baseKeys) {\n if (handled[label]) {\n doublicated[key] = true;\n doublicated[handled[label]] = true;\n }\n handled[label] = key;\n }\n return doublicated;\n }, [keys, hints]);\n const renderTitle = React.useCallback(\n (dataKey: string | number) => {\n if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];\n if (!duplicatedBaseKeys[dataKey]) {\n if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical)\n return hints.axesTitle.vertical;\n if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal)\n return hints.axesTitle.horizontal;\n }\n\n return dataKey;\n },\n [data, hints, duplicatedBaseKeys],\n );\n\n const [summary, setSummary] = React.useState<string | null>(null);\n const [generatingSummary, setGeneratingSummary] = React.useState(true);\n\n React.useEffect(() => {\n if (config.disable) {\n setSummary('');\n setGeneratingSummary(false);\n return;\n }\n if (config.override) {\n setSummary(config.override);\n setGeneratingSummary(false);\n return;\n }\n setTimeout(() => {\n setSummary(summarize(providedData, hints, config, locale));\n setGeneratingSummary(false);\n }, 0);\n }, [providedData, hints, config, locale]);\n\n const handleSkip = React.useCallback(() => {\n if (!plotRef.current) return;\n\n heavyFindNextFocusableElement(plotRef.current)?.focus();\n }, []);\n const handleSkipKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleSkip();\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback(() => {\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleGoToTable();\n },\n [handleGoToTable],\n );\n\n const texts = React.useMemo(\n () => ({\n label: intl.formatMessage(\n { id: 'view-label' },\n { plotLabel: plotLabel ?? intl.formatMessage({ id: 'view-default-plot-label' }) },\n ),\n close: intl.formatMessage({ id: 'view-close' }),\n skipPlot: intl.formatMessage({ id: 'view-skip-plot' }),\n goToTable: intl.formatMessage({ id: 'view-go-to-table' }),\n summary: intl.formatMessage({ id: 'view-data-summary' }),\n summaryPlaceholder: intl.formatMessage({ id: 'view-summary-placeholder' }),\n table: intl.formatMessage({ id: 'view-table' }),\n }),\n [intl, plotLabel],\n );\n\n const dataTableRef = React.useRef<HTMLTableElement>(null);\n\n return sstyled(styles)(\n <SPlotA11yView render={Box} tabIndex={0} aria-label={texts.label}>\n <a aria-hidden onClick={handleSkip}>\n {texts.close}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleGoToTableKeyboard} onClick={handleGoToTable}>\n {texts.goToTable}\n </a>\n <strong>\n <label htmlFor={`${id}-data-summary`}>{texts.summary}</label>\n </strong>\n <div id={`${id}-data-summary`} aria-busy={generatingSummary} tabIndex={0}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\n <table id={`${id}-data-table`} tabIndex={0} ref={dataTableRef}>\n <thead>\n <tr>\n {keys.map((key, index) => (\n <th key={`${key}-${index}`}>{renderTitle(key)}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data.map((row, index) => (\n <tr key={Object.values(row).join('-') + '-' + index}>\n {keys.map((key, index) => (\n <td key={`${key}-${index}`}>{formatValue(intl, row[key])}</td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"PlotA11yView.js","names":["React","heavyFindNextFocusableElement","makeDataSummarizationConfig","formatValue","getIntl","summarize","Root","sstyled","Box","useAsyncI18nMessages","localizedMessages","PlotA11yView","id","providedData","data","hints","plotLabel","plotRef","providedConfig","config","locale","SPlotA11yView","translations","intl","useMemo","Array","isArray","keys","fromHints","push","fields","verticalAxes","horizontalAxes","valueAxes","Object","values","Set","filter","key","length","forEach","row","duplicatedBaseKeys","baseKeys","titles","valuesAxes","map","has","axesTitle","vertical","horizontal","entry","undefined","doublicated","handled","label","renderTitle","useCallback","dataKey","useState","summary","setSummary","generatingSummary","setGeneratingSummary","useEffect","disable","override","setTimeout","handleSkip","current","focus","handleSkipKeyboard","event","code","handleGoToTable","dataTableRef","handleGoToTableKeyboard","texts","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","useRef","styles","index","join"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import React from 'react';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { formatValue } from './serialize';\nimport { getIntl } from './intl';\nimport { summarize } from './summarize';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { Box } from '@semcore/flex-box';\nimport { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';\n\nexport const PlotA11yView: React.FC<A11yViewProps> = ({\n id,\n data: providedData,\n hints,\n plotLabel,\n plotRef,\n config: providedConfig,\n locale,\n}) => {\n const SPlotA11yView = Root;\n const translations = useAsyncI18nMessages(localizedMessages, locale);\n const intl = React.useMemo(() => getIntl(locale, translations), [locale]);\n const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);\n const data = React.useMemo(\n () => (Array.isArray(providedData) ? providedData : [providedData]),\n [providedData],\n );\n const keys = React.useMemo(() => {\n let fromHints: (string | number)[] = [];\n fromHints.push(...hints.fields.verticalAxes);\n fromHints.push(...hints.fields.horizontalAxes);\n fromHints.push(...hints.fields.valueAxes);\n fromHints.push(...Object.keys(hints.fields.values));\n\n fromHints = [...new Set(fromHints)].filter((key) => key in data[0]);\n\n if (fromHints.length === 0) {\n data.forEach((row) => fromHints.push(...Object.keys(row)));\n }\n\n return [...new Set(fromHints)];\n }, [data, hints]);\n const duplicatedBaseKeys = React.useMemo(() => {\n const baseKeys = keys\n .filter((key) => !hints.titles.valuesAxes[key])\n .map((key) => {\n if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical)\n return [key, hints.axesTitle.vertical];\n if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal)\n return [key, hints.axesTitle.horizontal];\n })\n .filter((entry) => entry !== undefined)\n .map((entry) => entry!);\n const doublicated: Record<string, true> = {};\n const handled: Record<string, string | number> = {};\n for (const [key, label] of baseKeys) {\n if (handled[label]) {\n doublicated[key] = true;\n doublicated[handled[label]] = true;\n }\n handled[label] = key;\n }\n return doublicated;\n }, [keys, hints]);\n const renderTitle = React.useCallback(\n (dataKey: string | number) => {\n if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];\n if (!duplicatedBaseKeys[dataKey]) {\n if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical)\n return hints.axesTitle.vertical;\n if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal)\n return hints.axesTitle.horizontal;\n }\n\n return dataKey;\n },\n [data, hints, duplicatedBaseKeys],\n );\n\n const [summary, setSummary] = React.useState<string | null>(null);\n const [generatingSummary, setGeneratingSummary] = React.useState(true);\n\n React.useEffect(() => {\n if (config.disable) {\n setSummary('');\n setGeneratingSummary(false);\n return;\n }\n if (config.override) {\n setSummary(config.override);\n setGeneratingSummary(false);\n return;\n }\n setTimeout(() => {\n setSummary(summarize(providedData, hints, config, locale));\n setGeneratingSummary(false);\n }, 0);\n }, [providedData, hints, config, locale]);\n\n const handleSkip = React.useCallback(() => {\n if (!plotRef.current) return;\n\n heavyFindNextFocusableElement(plotRef.current)?.focus();\n }, []);\n const handleSkipKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleSkip();\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback(() => {\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleGoToTable();\n },\n [handleGoToTable],\n );\n\n const texts = React.useMemo(\n () => ({\n label: intl.formatMessage(\n { id: 'view-label' },\n { plotLabel: plotLabel ?? intl.formatMessage({ id: 'view-default-plot-label' }) },\n ),\n close: intl.formatMessage({ id: 'view-close' }),\n skipPlot: intl.formatMessage({ id: 'view-skip-plot' }),\n goToTable: intl.formatMessage({ id: 'view-go-to-table' }),\n summary: intl.formatMessage({ id: 'view-data-summary' }),\n summaryPlaceholder: intl.formatMessage({ id: 'view-summary-placeholder' }),\n table: intl.formatMessage({ id: 'view-table' }),\n }),\n [intl, plotLabel],\n );\n\n const dataTableRef = React.useRef<HTMLTableElement>(null);\n\n return sstyled(styles)(\n <SPlotA11yView render={Box} tabIndex={0} aria-label={texts.label}>\n <a aria-hidden onClick={handleSkip}>\n {texts.close}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleGoToTableKeyboard} onClick={handleGoToTable}>\n {texts.goToTable}\n </a>\n <strong>\n <label htmlFor={`${id}-data-summary`}>{texts.summary}</label>\n </strong>\n <div id={`${id}-data-summary`} aria-busy={generatingSummary} tabIndex={0}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\n <table id={`${id}-data-table`} tabIndex={0} ref={dataTableRef}>\n <thead>\n <tr>\n {keys.map((key, index) => (\n <th key={`${key}-${index}`}>{renderTitle(key)}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data.map((row, index) => (\n <tr key={Object.values(row).join('-') + '-' + index}>\n {keys.map((key, index) => (\n <td key={`${key}-${index}`}>{formatValue(intl, row[key])}</td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
@@ -1,10 +1,5 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
2
  import _typeof from "@babel/runtime/helpers/typeof";
3
-
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
-
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
-
8
3
  export var makeDataHintsContainer = function makeDataHintsContainer() {
9
4
  return {
10
5
  fields: {
@@ -1 +1 @@
1
- {"version":3,"file":"hints.js","names":["makeDataHintsContainer","fields","verticalAxes","Set","horizontalAxes","valueAxes","values","groups","axesTitle","vertical","horizontal","titles","getVerticalAxesTitle","getHorizontalAxesTitle","valuesAxes","getValueAxesTitle","grid","dataType","pointsDensity","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","Date","String","setPointsDensity","makeDataSummarizationConfig","config","clustersGridSize","undefined","maxListSymbols","datesWithTime","clustersLimit","valuesLimit","groupsLimit","disable","override","trendTangens","weak","medium","strong","Infinity","movingAverage","longSize","shortSize","notableDiff"],"sources":["../../../src/a11y/hints.ts"],"sourcesContent":["import { SerializableDataType } from './insights';\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};\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 return;\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});\n"],"mappings":"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"}
1
+ {"version":3,"file":"hints.js","names":["makeDataHintsContainer","fields","verticalAxes","Set","horizontalAxes","valueAxes","values","groups","axesTitle","vertical","horizontal","titles","getVerticalAxesTitle","getHorizontalAxesTitle","valuesAxes","getValueAxesTitle","grid","dataType","pointsDensity","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","Date","String","setPointsDensity","makeDataSummarizationConfig","config","clustersGridSize","undefined","maxListSymbols","datesWithTime","clustersLimit","valuesLimit","groupsLimit","disable","override","trendTangens","weak","medium","strong","Infinity","movingAverage","longSize","shortSize","notableDiff"],"sources":["../../../src/a11y/hints.ts"],"sourcesContent":["import { SerializableDataType } from './insights';\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};\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 return;\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});\n"],"mappings":"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"}
@@ -1,14 +1,8 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _createForOfIteratorHelper from "@babel/runtime/helpers/createForOfIteratorHelper";
3
4
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
4
5
  import _typeof from "@babel/runtime/helpers/typeof";
5
-
6
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
7
-
8
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
9
-
10
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
11
-
12
6
  import { makeBezier } from './bezier';
13
7
 
14
8
  var getPropByPath = function getPropByPath(obj, path) {