@semcore/d3-chart 3.25.1 → 3.26.0

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 (145) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/lib/cjs/Area.js +25 -13
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +14 -14
  5. package/lib/cjs/Bar.js +23 -12
  6. package/lib/cjs/Bar.js.map +1 -1
  7. package/lib/cjs/Bubble.js +25 -13
  8. package/lib/cjs/Bubble.js.map +1 -1
  9. package/lib/cjs/Donut.js +28 -12
  10. package/lib/cjs/Donut.js.map +1 -1
  11. package/lib/cjs/Dots.js +55 -28
  12. package/lib/cjs/Dots.js.map +1 -1
  13. package/lib/cjs/GroupBar.js +4 -2
  14. package/lib/cjs/GroupBar.js.map +1 -1
  15. package/lib/cjs/HorizontalBar.js +23 -12
  16. package/lib/cjs/HorizontalBar.js.map +1 -1
  17. package/lib/cjs/Hover.js +9 -6
  18. package/lib/cjs/Hover.js.map +1 -1
  19. package/lib/cjs/Line.js +23 -15
  20. package/lib/cjs/Line.js.map +1 -1
  21. package/lib/cjs/Pattern.js +540 -0
  22. package/lib/cjs/Pattern.js.map +1 -0
  23. package/lib/cjs/Plot.js +7 -5
  24. package/lib/cjs/Plot.js.map +1 -1
  25. package/lib/cjs/Radar.js +126 -83
  26. package/lib/cjs/Radar.js.map +1 -1
  27. package/lib/cjs/RadialTree.js +126 -100
  28. package/lib/cjs/RadialTree.js.map +1 -1
  29. package/lib/cjs/ReferenceLine.js +9 -9
  30. package/lib/cjs/ScatterPlot.js +22 -10
  31. package/lib/cjs/ScatterPlot.js.map +1 -1
  32. package/lib/cjs/StackBar.js +8 -4
  33. package/lib/cjs/StackBar.js.map +1 -1
  34. package/lib/cjs/StackedArea.js +4 -1
  35. package/lib/cjs/StackedArea.js.map +1 -1
  36. package/lib/cjs/Tooltip.js +21 -11
  37. package/lib/cjs/Tooltip.js.map +1 -1
  38. package/lib/cjs/Venn.js +28 -12
  39. package/lib/cjs/Venn.js.map +1 -1
  40. package/lib/cjs/a11y/PlotA11yModule.js +2 -2
  41. package/lib/cjs/a11y/PlotA11yView.js +2 -2
  42. package/lib/cjs/component/Chart/AbstractChart.js +7 -3
  43. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  44. package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  45. package/lib/cjs/component/ChartLegend/BaseLegend.js +4 -2
  46. package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  47. package/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
  48. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  49. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +80 -53
  50. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  51. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  52. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  53. package/lib/cjs/component/ChartLegend/LegendItem/legend-item.shadow.css +17 -3
  54. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  55. package/lib/cjs/index.js +19 -0
  56. package/lib/cjs/index.js.map +1 -1
  57. package/lib/cjs/style/area.shadow.css +6 -1
  58. package/lib/cjs/style/bar.shadow.css +7 -1
  59. package/lib/cjs/style/bubble.shadow.css +8 -1
  60. package/lib/cjs/style/donut.shadow.css +7 -1
  61. package/lib/cjs/style/dot.shadow.css +2 -2
  62. package/lib/cjs/style/radar.shadow.css +7 -1
  63. package/lib/cjs/style/radial-tree.shadow.css +5 -0
  64. package/lib/cjs/style/scatterplot.shadow.css +8 -1
  65. package/lib/cjs/style/tooltip.shadow.css +6 -6
  66. package/lib/cjs/style/venn.shadow.css +11 -0
  67. package/lib/cjs/types/Plot.d.js.map +1 -1
  68. package/lib/cjs/types/index.d.js +12 -0
  69. package/lib/cjs/types/index.d.js.map +1 -1
  70. package/lib/es6/Area.js +25 -13
  71. package/lib/es6/Area.js.map +1 -1
  72. package/lib/es6/Axis.js +14 -14
  73. package/lib/es6/Bar.js +23 -12
  74. package/lib/es6/Bar.js.map +1 -1
  75. package/lib/es6/Bubble.js +25 -13
  76. package/lib/es6/Bubble.js.map +1 -1
  77. package/lib/es6/Donut.js +28 -12
  78. package/lib/es6/Donut.js.map +1 -1
  79. package/lib/es6/Dots.js +56 -29
  80. package/lib/es6/Dots.js.map +1 -1
  81. package/lib/es6/GroupBar.js +4 -2
  82. package/lib/es6/GroupBar.js.map +1 -1
  83. package/lib/es6/HorizontalBar.js +23 -12
  84. package/lib/es6/HorizontalBar.js.map +1 -1
  85. package/lib/es6/Hover.js +9 -6
  86. package/lib/es6/Hover.js.map +1 -1
  87. package/lib/es6/Line.js +24 -16
  88. package/lib/es6/Line.js.map +1 -1
  89. package/lib/es6/Pattern.js +534 -0
  90. package/lib/es6/Pattern.js.map +1 -0
  91. package/lib/es6/Plot.js +7 -5
  92. package/lib/es6/Plot.js.map +1 -1
  93. package/lib/es6/Radar.js +126 -83
  94. package/lib/es6/Radar.js.map +1 -1
  95. package/lib/es6/RadialTree.js +127 -101
  96. package/lib/es6/RadialTree.js.map +1 -1
  97. package/lib/es6/ReferenceLine.js +9 -9
  98. package/lib/es6/ScatterPlot.js +22 -10
  99. package/lib/es6/ScatterPlot.js.map +1 -1
  100. package/lib/es6/StackBar.js +8 -4
  101. package/lib/es6/StackBar.js.map +1 -1
  102. package/lib/es6/StackedArea.js +4 -1
  103. package/lib/es6/StackedArea.js.map +1 -1
  104. package/lib/es6/Tooltip.js +22 -11
  105. package/lib/es6/Tooltip.js.map +1 -1
  106. package/lib/es6/Venn.js +28 -12
  107. package/lib/es6/Venn.js.map +1 -1
  108. package/lib/es6/a11y/PlotA11yModule.js +2 -2
  109. package/lib/es6/a11y/PlotA11yView.js +2 -2
  110. package/lib/es6/component/Chart/AbstractChart.js +7 -3
  111. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  112. package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  113. package/lib/es6/component/ChartLegend/BaseLegend.js +4 -2
  114. package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  115. package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  116. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  117. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +80 -53
  118. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  119. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  120. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  121. package/lib/es6/component/ChartLegend/LegendItem/legend-item.shadow.css +17 -3
  122. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  123. package/lib/es6/index.js +1 -0
  124. package/lib/es6/index.js.map +1 -1
  125. package/lib/es6/style/area.shadow.css +6 -1
  126. package/lib/es6/style/bar.shadow.css +7 -1
  127. package/lib/es6/style/bubble.shadow.css +8 -1
  128. package/lib/es6/style/donut.shadow.css +7 -1
  129. package/lib/es6/style/dot.shadow.css +2 -2
  130. package/lib/es6/style/radar.shadow.css +7 -1
  131. package/lib/es6/style/radial-tree.shadow.css +5 -0
  132. package/lib/es6/style/scatterplot.shadow.css +8 -1
  133. package/lib/es6/style/tooltip.shadow.css +6 -6
  134. package/lib/es6/style/venn.shadow.css +11 -0
  135. package/lib/es6/types/Plot.d.js.map +1 -1
  136. package/lib/es6/types/index.d.js +3 -0
  137. package/lib/es6/types/index.d.js.map +1 -1
  138. package/lib/types/Pattern.d.ts +336 -0
  139. package/lib/types/Plot.d.ts +4 -0
  140. package/lib/types/RadialTree.d.ts +7 -2
  141. package/lib/types/component/Chart/AbstractChart.type.d.ts +3 -0
  142. package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +3 -0
  143. package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +7 -1
  144. package/lib/types/index.d.ts +3 -0
  145. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Plot.js","names":["React","createComponent","Component","Root","sstyled","Box","EventEmitter","keyboardFocusEnhance","eventToPoint","uniqueId","PlotA11yModule","makeDataHintsHandlers","makeDataHintsContainer","colorResolverEnhance","style","_sstyled","insert","PlotRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","dataHints","dataStructureHints","e","scale","asProps","eventEmitter","emit","length","_scale","_slicedToArray","xScale","yScale","_eventToPoint","rootRef","current","_eventToPoint2","pX","pY","_xScale$range","range","_xScale$range2","minX","maxX","_yScale$range","_yScale$range2","maxY","minY","_createClass","key","value","setContext","_scale$","_scale$$domain","_this$asProps","data","width","height","locale","resolveColor","yScaleDomain","domain","dataHintsHandler","setPointsDensity","Math","abs","$rootProps","size","render","_ref","_ref2","SPlot","_this$asProps2","styles","Children","a11yAltTextConfig","label","createElement","cn","_objectSpread","_assignProps","handlerMouseMove","handlerMouseLeave","plotId"],"sources":["../../src/Plot.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport EventEmitter from '@semcore/utils/lib/eventEmitter';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { eventToPoint, uniqueId } from './utils';\nimport { PlotA11yModule } from './a11y/PlotA11yModule';\nimport { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';\nimport colorResolverEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\n\nimport style from './style/plot.shadow.css';\n\nclass PlotRoot extends Component {\n static displayName = 'Plot';\n static style = style;\n\n constructor(props) {\n super(props);\n this.eventEmitter = props.eventEmitter || new EventEmitter();\n }\n\n static defaultProps = () => ({\n width: 0,\n height: 0,\n });\n\n static enhance = [keyboardFocusEnhance(), colorResolverEnhance()];\n\n plotId = uniqueId();\n\n rootRef = React.createRef();\n\n dataStructureHints = this.props.dataHints || makeDataHintsContainer();\n dataHintsHandler = makeDataHintsHandlers(this.dataStructureHints);\n\n handlerMouseMove = (e) => {\n const { scale } = this.asProps;\n this.eventEmitter.emit('onMouseMoveRoot', e);\n\n if (scale && scale.length >= 2) {\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, this.rootRef.current);\n const [minX, maxX] = xScale.range();\n const [maxY, minY] = yScale.range();\n\n if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {\n this.eventEmitter.emit('onMouseMoveChart', e);\n } else {\n this.eventEmitter.emit('onMouseLeaveChart', e);\n }\n }\n };\n\n handlerMouseLeave = (e) => {\n this.eventEmitter.emit('onMouseLeaveRoot', e);\n this.eventEmitter.emit('onMouseLeaveChart', e);\n };\n\n setContext() {\n const { scale, data, width, height, locale, resolveColor } = this.asProps;\n\n const yScaleDomain = scale?.[1]?.domain?.();\n if (yScaleDomain?.length && data?.length) {\n this.dataHintsHandler.setPointsDensity(\n data.length / width,\n Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height,\n );\n }\n\n return {\n $rootProps: {\n size: [width, height],\n data: data,\n locale,\n scale: scale,\n eventEmitter: this.eventEmitter,\n rootRef: this.rootRef,\n dataHintsHandler: this.dataHintsHandler,\n resolveColor,\n },\n };\n }\n\n render() {\n const SPlot = Root;\n const { styles, width, height, Children, data, a11yAltTextConfig, label, locale } =\n this.asProps;\n\n if (!width || !height) return null;\n\n return sstyled(styles)(\n <SPlot\n render={Box}\n tag='svg'\n __excludeProps={['data', 'scale']}\n ref={this.rootRef}\n onMouseMove={this.handlerMouseMove}\n onMouseLeave={this.handlerMouseLeave}\n aria-label={label}\n tabIndex={0}\n >\n <Children />\n <foreignObject width='100%' height='100%' data-aria-only>\n <PlotA11yModule\n id={this.plotId}\n data={data}\n plotLabel={label}\n locale={locale}\n plotRef={this.rootRef}\n hints={this.dataStructureHints}\n config={a11yAltTextConfig}\n />\n </foreignObject>\n </SPlot>,\n );\n }\n}\n\nexport default createComponent(PlotRoot);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Plot.js","names":["React","createComponent","Component","Root","sstyled","Box","EventEmitter","keyboardFocusEnhance","eventToPoint","uniqueId","PlotA11yModule","makeDataHintsHandlers","makeDataHintsContainer","colorResolverEnhance","style","_sstyled","insert","PlotRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","dataHints","dataStructureHints","e","scale","asProps","eventEmitter","emit","length","_scale","_slicedToArray","xScale","yScale","_eventToPoint","rootRef","current","_eventToPoint2","pX","pY","_xScale$range","range","_xScale$range2","minX","maxX","_yScale$range","_yScale$range2","maxY","minY","_createClass","key","value","setContext","_scale$","_scale$$domain","_this$asProps","data","width","height","locale","resolveColor","patterns","yScaleDomain","domain","dataHintsHandler","setPointsDensity","Math","abs","$rootProps","size","render","_ref","_ref2","SPlot","_this$asProps2","styles","Children","a11yAltTextConfig","label","createElement","cn","_objectSpread","_assignProps","handlerMouseMove","handlerMouseLeave","plotId"],"sources":["../../src/Plot.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport EventEmitter from '@semcore/utils/lib/eventEmitter';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { eventToPoint, uniqueId } from './utils';\nimport { PlotA11yModule } from './a11y/PlotA11yModule';\nimport { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';\nimport colorResolverEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\n\nimport style from './style/plot.shadow.css';\n\nclass PlotRoot extends Component {\n static displayName = 'Plot';\n static style = style;\n\n constructor(props) {\n super(props);\n this.eventEmitter = props.eventEmitter || new EventEmitter();\n }\n\n static defaultProps = () => ({\n width: 0,\n height: 0,\n });\n\n static enhance = [keyboardFocusEnhance(), colorResolverEnhance()];\n\n plotId = uniqueId();\n\n rootRef = React.createRef();\n\n dataStructureHints = this.props.dataHints || makeDataHintsContainer();\n dataHintsHandler = makeDataHintsHandlers(this.dataStructureHints);\n\n handlerMouseMove = (e) => {\n const { scale } = this.asProps;\n this.eventEmitter.emit('onMouseMoveRoot', e);\n\n if (scale && scale.length >= 2) {\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, this.rootRef.current);\n const [minX, maxX] = xScale.range();\n const [maxY, minY] = yScale.range();\n\n if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {\n this.eventEmitter.emit('onMouseMoveChart', e);\n } else {\n this.eventEmitter.emit('onMouseLeaveChart', e);\n }\n }\n };\n\n handlerMouseLeave = (e) => {\n this.eventEmitter.emit('onMouseLeaveRoot', e);\n this.eventEmitter.emit('onMouseLeaveChart', e);\n };\n\n setContext() {\n const { scale, data, width, height, locale, resolveColor, patterns } = this.asProps;\n\n const yScaleDomain = scale?.[1]?.domain?.();\n if (yScaleDomain?.length && data?.length) {\n this.dataHintsHandler.setPointsDensity(\n data.length / width,\n Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height,\n );\n }\n\n return {\n $rootProps: {\n size: [width, height],\n data: data,\n locale,\n scale: scale,\n eventEmitter: this.eventEmitter,\n rootRef: this.rootRef,\n dataHintsHandler: this.dataHintsHandler,\n resolveColor,\n patterns,\n },\n };\n }\n\n render() {\n const SPlot = Root;\n const { styles, width, height, Children, data, a11yAltTextConfig, label, locale } =\n this.asProps;\n\n if (!width || !height) return null;\n\n return sstyled(styles)(\n <SPlot\n render={Box}\n tag='svg'\n __excludeProps={['data', 'scale']}\n ref={this.rootRef}\n onMouseMove={this.handlerMouseMove}\n onMouseLeave={this.handlerMouseLeave}\n aria-label={label}\n tabIndex={0}\n >\n <Children />\n <foreignObject width='100%' height='100%' data-aria-only>\n <PlotA11yModule\n id={this.plotId}\n data={data}\n plotLabel={label}\n locale={locale}\n plotRef={this.rootRef}\n hints={this.dataStructureHints}\n config={a11yAltTextConfig}\n />\n </foreignObject>\n </SPlot>,\n );\n }\n}\n\nexport default createComponent(PlotRoot);\n"],"mappings":"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"}
package/lib/es6/Radar.js CHANGED
@@ -20,24 +20,27 @@ import { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';
20
20
  import createElement from './createElement';
21
21
  import { CONSTANT, eventToPoint, getChartDefaultColorName, measureText } from './utils';
22
22
  import Tooltip from './Tooltip';
23
+ import { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';
23
24
  /*__reshadow-styles__:"./style/radar.shadow.css"*/
24
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SAxisLine_1c9tw_gg_,.___SAxisTick_1c9tw_gg_,.___SAxis_1c9tw_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_1c9tw_gg_,.___SAxisTick_1c9tw_gg_{stroke-dasharray:2}.___SAxisLine_1c9tw_gg_.__active_1c9tw_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_1c9tw_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_1c9tw_gg_.__xDirection_1c9tw_gg_{text-anchor:var(--xDirection_1c9tw)}.___SAxisLabel_1c9tw_gg_.__yDirection_1c9tw_gg_{dominant-baseline:var(--yDirection_1c9tw)}.___SPolygonDot_1c9tw_gg_,.___SPolygon_1c9tw_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_1c9tw_gg_{opacity:.2}.___SPolygon_1c9tw_gg_.__color_1c9tw_gg_{fill:var(--color_1c9tw)}.___SPolygonDot_1c9tw_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_1c9tw_gg_.__transparent_1c9tw_gg_{opacity:.3}.___SPolygonDot_1c9tw_gg_.__color_1c9tw_gg_{fill:var(--color_1c9tw)}.___SPolygonLine_1c9tw_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_1c9tw_gg_.__transparent_1c9tw_gg_{opacity:.3}.___SPolygonLine_1c9tw_gg_.__color_1c9tw_gg_{stroke:var(--color_1c9tw)}.___SPieRect_1c9tw_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "1c9tw_gg_") /*__reshadow_css_end__*/, {
25
- "__SAxis": "___SAxis_1c9tw_gg_",
26
- "__SAxisLine": "___SAxisLine_1c9tw_gg_",
27
- "__SAxisTick": "___SAxisTick_1c9tw_gg_",
28
- "_active": "__active_1c9tw_gg_",
29
- "__SAxisLabel": "___SAxisLabel_1c9tw_gg_",
30
- "_xDirection": "__xDirection_1c9tw_gg_",
31
- "--xDirection": "--xDirection_1c9tw",
32
- "_yDirection": "__yDirection_1c9tw_gg_",
33
- "--yDirection": "--yDirection_1c9tw",
34
- "__SPolygon": "___SPolygon_1c9tw_gg_",
35
- "_color": "__color_1c9tw_gg_",
36
- "--color": "--color_1c9tw",
37
- "__SPolygonDot": "___SPolygonDot_1c9tw_gg_",
38
- "_transparent": "__transparent_1c9tw_gg_",
39
- "__SPolygonLine": "___SPolygonLine_1c9tw_gg_",
40
- "__SPieRect": "___SPieRect_1c9tw_gg_"
25
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SAxisLine_10j51_gg_,.___SAxisTick_10j51_gg_,.___SAxis_10j51_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_10j51_gg_,.___SAxisTick_10j51_gg_{stroke-dasharray:2}.___SAxisLine_10j51_gg_.__active_10j51_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_10j51_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_10j51_gg_.__xDirection_10j51_gg_{text-anchor:var(--xDirection_10j51)}.___SAxisLabel_10j51_gg_.__yDirection_10j51_gg_{dominant-baseline:var(--yDirection_10j51)}.___SPolygonDot_10j51_gg_,.___SPolygon_10j51_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_10j51_gg_{opacity:.2}.___SPolygon_10j51_gg_.__color_10j51_gg_{fill:var(--color_10j51)}.___SPolygon_10j51_gg_.__pattern_10j51_gg_.__color_10j51_gg_{fill:var(--pattern_10j51);stroke:var(--color_10j51);stroke-width:1px}.___SPolygonDot_10j51_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_10j51_gg_.__transparent_10j51_gg_{opacity:.3}.___SPolygonDot_10j51_gg_.__color_10j51_gg_{fill:var(--color_10j51)}.___SPolygonLine_10j51_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_10j51_gg_.__transparent_10j51_gg_{opacity:.3}.___SPolygonLine_10j51_gg_.__color_10j51_gg_{stroke:var(--color_10j51)}.___SPieRect_10j51_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "10j51_gg_") /*__reshadow_css_end__*/, {
26
+ "__SAxis": "___SAxis_10j51_gg_",
27
+ "__SAxisLine": "___SAxisLine_10j51_gg_",
28
+ "__SAxisTick": "___SAxisTick_10j51_gg_",
29
+ "_active": "__active_10j51_gg_",
30
+ "__SAxisLabel": "___SAxisLabel_10j51_gg_",
31
+ "_xDirection": "__xDirection_10j51_gg_",
32
+ "--xDirection": "--xDirection_10j51",
33
+ "_yDirection": "__yDirection_10j51_gg_",
34
+ "--yDirection": "--yDirection_10j51",
35
+ "__SPolygon": "___SPolygon_10j51_gg_",
36
+ "_color": "__color_10j51_gg_",
37
+ "--color": "--color_10j51",
38
+ "_pattern": "__pattern_10j51_gg_",
39
+ "--pattern": "--pattern_10j51",
40
+ "__SPolygonDot": "___SPolygonDot_10j51_gg_",
41
+ "_transparent": "__transparent_10j51_gg_",
42
+ "__SPolygonLine": "___SPolygonLine_10j51_gg_",
43
+ "__SPieRect": "___SPieRect_10j51_gg_"
41
44
  });
42
45
  var clampAngle = function clampAngle(angle) {
43
46
  angle = angle % (2 * Math.PI);
@@ -93,14 +96,14 @@ function getTicks(tickSize, radius) {
93
96
  return ticks;
94
97
  }, []);
95
98
  }
96
- function pieContains(_ref12, _ref13) {
97
- var _ref14 = _slicedToArray(_ref12, 3),
98
- startAngle = _ref14[0],
99
- endAngle = _ref14[1],
100
- radius = _ref14[2];
101
- var _ref15 = _slicedToArray(_ref13, 2),
102
- x = _ref15[0],
103
- y = _ref15[1];
99
+ function pieContains(_ref13, _ref14) {
100
+ var _ref15 = _slicedToArray(_ref13, 3),
101
+ startAngle = _ref15[0],
102
+ endAngle = _ref15[1],
103
+ radius = _ref15[2];
104
+ var _ref16 = _slicedToArray(_ref14, 2),
105
+ x = _ref16[0],
106
+ y = _ref16[1];
104
107
  var distance = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
105
108
  if (distance > radius) return false;
106
109
  startAngle = clampAngle(startAngle);
@@ -180,18 +183,22 @@ var RadarRoot = /*#__PURE__*/function (_Component) {
180
183
  }
181
184
  }, {
182
185
  key: "getPolygonProps",
183
- value: function getPolygonProps(_ref16, index) {
184
- var dataKey = _ref16.dataKey;
186
+ value: function getPolygonProps(_ref17, index) {
187
+ var dataKey = _ref17.dataKey;
185
188
  var _this$asProps2 = this.asProps,
186
189
  data = _this$asProps2.data,
187
190
  scale = _this$asProps2.scale,
188
- angleOffset = _this$asProps2.angleOffset;
191
+ angleOffset = _this$asProps2.angleOffset,
192
+ uid = _this$asProps2.uid,
193
+ patterns = _this$asProps2.patterns;
189
194
  return {
190
195
  offset: this.offset,
191
196
  data: data[dataKey] || [],
192
197
  scale: scale,
193
198
  angleOffset: angleOffset,
194
- color: getChartDefaultColorName(index)
199
+ color: getChartDefaultColorName(index),
200
+ uid: "".concat(uid, "-").concat(index),
201
+ patterns: patterns
195
202
  };
196
203
  }
197
204
  }, {
@@ -268,7 +275,8 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
268
275
  transparent = _this$asProps4.transparent,
269
276
  dataKey = _this$asProps4.dataKey,
270
277
  dataHintsHandler = _this$asProps4.dataHintsHandler,
271
- angleOffset = _this$asProps4.angleOffset;
278
+ angleOffset = _this$asProps4.angleOffset,
279
+ patterns = _this$asProps4.patterns;
272
280
  return {
273
281
  data: data,
274
282
  scale: scale,
@@ -277,7 +285,8 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
277
285
  transparent: transparent,
278
286
  categoryKey: dataKey,
279
287
  dataHintsHandler: dataHintsHandler,
280
- angleOffset: angleOffset
288
+ angleOffset: angleOffset,
289
+ patterns: patterns
281
290
  };
282
291
  }
283
292
  }, {
@@ -308,25 +317,33 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
308
317
  data = _this$asProps6.data,
309
318
  color = _this$asProps6.color,
310
319
  resolveColor = _this$asProps6.resolveColor,
311
- fill = _this$asProps6.fill;
312
- return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygon, _ref3.cn("SPolygon", {
320
+ fill = _this$asProps6.fill,
321
+ uid = _this$asProps6.uid,
322
+ patterns = _this$asProps6.patterns;
323
+ return /*#__PURE__*/React.createElement(React.Fragment, null, (_ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygon, _ref3.cn("SPolygon", {
313
324
  "render": 'path',
314
325
  "d": d3(data),
315
- "color": resolveColor(fill || color)
316
- }));
326
+ "color": resolveColor(fill || color),
327
+ "pattern": patterns ? "url(#".concat(uid, "-pattern)") : undefined
328
+ }))), patterns && /*#__PURE__*/React.createElement(PatternFill, _ref3.cn("PatternFill", {
329
+ "id": "".concat(uid, "-pattern"),
330
+ "patternKey": color,
331
+ "color": resolveColor(fill || color),
332
+ "patterns": patterns
333
+ })));
317
334
  }
318
335
  }]);
319
336
  return PolygonRoot;
320
337
  }(Component);
321
338
  _defineProperty(PolygonRoot, "displayName", 'Polygon');
322
339
  _defineProperty(PolygonRoot, "style", style);
323
- _defineProperty(PolygonRoot, "defaultProps", function (_ref21) {
324
- var scale = _ref21.scale,
325
- _ref21$curve = _ref21.curve,
326
- curve = _ref21$curve === void 0 ? curveLinearClosed : _ref21$curve,
327
- size = _ref21.size,
328
- offset = _ref21.offset,
329
- angleOffset = _ref21.angleOffset;
340
+ _defineProperty(PolygonRoot, "defaultProps", function (_ref22) {
341
+ var scale = _ref22.scale,
342
+ _ref22$curve = _ref22.curve,
343
+ curve = _ref22$curve === void 0 ? curveLinearClosed : _ref22$curve,
344
+ size = _ref22.size,
345
+ offset = _ref22.offset,
346
+ angleOffset = _ref22.angleOffset;
330
347
  scale.range([0, Math.min(size[0], size[1]) / 2 - offset]);
331
348
  return {
332
349
  d3: lineRadial().curve(curve).radius(function (d) {
@@ -361,9 +378,10 @@ function PolygonDots(props) {
361
378
  scale = props.scale,
362
379
  transparent = props.transparent,
363
380
  categoryKey = props.categoryKey,
364
- angleOffset = props.angleOffset;
381
+ angleOffset = props.angleOffset,
382
+ patterns = props.patterns;
365
383
  return data.map(function (value, i) {
366
- var _ref5;
384
+ var _ref6;
367
385
  if (value === null || value === undefined) return;
368
386
  var radius = scale(value);
369
387
  props.dataHintsHandler.describeGroupedValues(categoryKey, "".concat(categoryKey, ".").concat(i));
@@ -371,13 +389,34 @@ function PolygonDots(props) {
371
389
  _getRadianPosition2 = _slicedToArray(_getRadianPosition, 2),
372
390
  cx = _getRadianPosition2[0],
373
391
  cy = _getRadianPosition2[1];
374
- return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygonDot, _ref5.cn("SPolygonDot", {
375
- "key": i,
376
- "render": 'circle',
377
- "cx": cx,
378
- "cy": cy,
392
+ if (!patterns) {
393
+ var _ref5;
394
+ return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygonDot, _ref5.cn("SPolygonDot", {
395
+ "render": 'circle',
396
+ "color": resolveColor(color),
397
+ "transparent": transparent,
398
+ "patternKey": color,
399
+ "key": "".concat(i),
400
+ "cx": cx,
401
+ "cy": cy
402
+ }));
403
+ }
404
+ var patternKey = color || getChartDefaultColorName(0);
405
+ var _getPatternSymbolSize = getPatternSymbolSize({
406
+ patternKey: patternKey,
407
+ patterns: patterns
408
+ }),
409
+ _getPatternSymbolSize2 = _slicedToArray(_getPatternSymbolSize, 2),
410
+ width = _getPatternSymbolSize2[0],
411
+ height = _getPatternSymbolSize2[1];
412
+ return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygonDot, _ref6.cn("SPolygonDot", {
413
+ "render": PatternSymbol,
379
414
  "color": resolveColor(color),
380
- "transparent": transparent
415
+ "transparent": transparent,
416
+ "patternKey": color,
417
+ "key": "".concat(i),
418
+ "x": cx - width / 2,
419
+ "y": cy - height / 2
381
420
  }));
382
421
  });
383
422
  }
@@ -395,8 +434,8 @@ var AxisRoot = /*#__PURE__*/function (_Component3) {
395
434
  _defineProperty(_assertThisInitialized(_this2), "state", {
396
435
  activeLineIndex: null
397
436
  });
398
- _defineProperty(_assertThisInitialized(_this2), "handlerTooltipVisible", function (_visible, _anchorProps, _ref17) {
399
- var index = _ref17.index;
437
+ _defineProperty(_assertThisInitialized(_this2), "handlerTooltipVisible", function (_visible, _anchorProps, _ref18) {
438
+ var index = _ref18.index;
400
439
  _this2.setState({
401
440
  activeLineIndex: index
402
441
  });
@@ -414,9 +453,9 @@ var AxisRoot = /*#__PURE__*/function (_Component3) {
414
453
  }
415
454
  }, {
416
455
  key: "getTicksProps",
417
- value: function getTicksProps(_ref18) {
418
- var _ref18$tickSize = _ref18.tickSize,
419
- tickSize = _ref18$tickSize === void 0 ? 100 : _ref18$tickSize;
456
+ value: function getTicksProps(_ref19) {
457
+ var _ref19$tickSize = _ref19.tickSize,
458
+ tickSize = _ref19$tickSize === void 0 ? 100 : _ref19$tickSize;
420
459
  var _this$asProps7 = this.asProps,
421
460
  data = _this$asProps7.data,
422
461
  offset = _this$asProps7.offset,
@@ -435,9 +474,9 @@ var AxisRoot = /*#__PURE__*/function (_Component3) {
435
474
  }
436
475
  }, {
437
476
  key: "getLabelsProps",
438
- value: function getLabelsProps(_ref19) {
439
- var _ref19$labelOffset = _ref19.labelOffset,
440
- labelOffset = _ref19$labelOffset === void 0 ? 10 : _ref19$labelOffset;
477
+ value: function getLabelsProps(_ref20) {
478
+ var _ref20$labelOffset = _ref20.labelOffset,
479
+ labelOffset = _ref20$labelOffset === void 0 ? 10 : _ref20$labelOffset;
441
480
  var _this$asProps8 = this.asProps,
442
481
  offset = _this$asProps8.offset,
443
482
  categories = _this$asProps8.categories,
@@ -466,7 +505,7 @@ var AxisRoot = /*#__PURE__*/function (_Component3) {
466
505
  }, {
467
506
  key: "render",
468
507
  value: function render() {
469
- var _ref6;
508
+ var _ref7;
470
509
  var _this$asProps9 = this.asProps,
471
510
  SAxis = _this$asProps9.Element,
472
511
  styles = _this$asProps9.styles,
@@ -478,12 +517,12 @@ var AxisRoot = /*#__PURE__*/function (_Component3) {
478
517
  var activeLineIndex = this.state.activeLineIndex;
479
518
  var radius = Math.min(size[0], size[1]) / 2 - offset;
480
519
  var total = categories.length;
481
- return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, type === 'circle' ? /*#__PURE__*/React.createElement(SAxis, _ref6.cn("SAxis", {
520
+ return _ref7 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, type === 'circle' ? /*#__PURE__*/React.createElement(SAxis, _ref7.cn("SAxis", {
482
521
  "render": 'circle',
483
522
  "cx": 0,
484
523
  "cy": 0,
485
524
  "r": radius
486
- })) : /*#__PURE__*/React.createElement(SAxis, _ref6.cn("SAxis", {
525
+ })) : /*#__PURE__*/React.createElement(SAxis, _ref7.cn("SAxis", {
487
526
  "render": 'path',
488
527
  "d": this.createLineRadial(radius, total)(categories)
489
528
  })), categories.map(function (category, i) {
@@ -510,9 +549,9 @@ var AxisRoot = /*#__PURE__*/function (_Component3) {
510
549
  }(Component);
511
550
  _defineProperty(AxisRoot, "displayName", 'Polygon');
512
551
  _defineProperty(AxisRoot, "style", style);
513
- _defineProperty(AxisRoot, "defaultProps", function (_ref22) {
514
- var data = _ref22.data,
515
- dataKey = _ref22.dataKey;
552
+ _defineProperty(AxisRoot, "defaultProps", function (_ref23) {
553
+ var data = _ref23.data,
554
+ dataKey = _ref23.dataKey;
516
555
  var categories = data[dataKey];
517
556
  return {
518
557
  categories: categories
@@ -529,17 +568,17 @@ function AxisTicks(props) {
529
568
  type = props.type;
530
569
  var radius = Math.min(size[0], size[1]) / 2 - offset;
531
570
  return ticks.map(function (tick, i) {
532
- var _ref7;
571
+ var _ref8;
533
572
  d3.radius(function () {
534
573
  return radius * tick;
535
574
  });
536
- return _ref7 = sstyled(styles), type === 'circle' ? /*#__PURE__*/React.createElement(SAxisTick, _ref7.cn("SAxisTick", {
575
+ return _ref8 = sstyled(styles), type === 'circle' ? /*#__PURE__*/React.createElement(SAxisTick, _ref8.cn("SAxisTick", {
537
576
  "key": i,
538
577
  "render": 'circle',
539
578
  "cx": 0,
540
579
  "cy": 0,
541
580
  "r": radius * tick
542
- })) : /*#__PURE__*/React.createElement(SAxisTick, _ref7.cn("SAxisTick", {
581
+ })) : /*#__PURE__*/React.createElement(SAxisTick, _ref8.cn("SAxisTick", {
543
582
  "render": 'path',
544
583
  "key": i,
545
584
  "d": d3(categories)
@@ -565,10 +604,10 @@ function AxisLabels(props) {
565
604
  xDirection = _getLabelPlacement2[0],
566
605
  yDirection = _getLabelPlacement2[1];
567
606
  if (typeof category === 'string') {
568
- var _ref8;
607
+ var _ref9;
569
608
  props.dataHintsHandler.labelKey('value', i, category);
570
609
  var lines = category.split('\n');
571
- return _ref8 = sstyled(styles), /*#__PURE__*/React.createElement(SAxisLabel, _ref8.cn("SAxisLabel", {
610
+ return _ref9 = sstyled(styles), /*#__PURE__*/React.createElement(SAxisLabel, _ref9.cn("SAxisLabel", {
572
611
  "key": i,
573
612
  "render": 'text',
574
613
  "childrenPosition": 'inside',
@@ -586,11 +625,11 @@ function AxisLabels(props) {
586
625
  }
587
626
  if ( /*#__PURE__*/React.isValidElement(category)) {
588
627
  var _category$props;
589
- var _ref20 = (_category$props = category === null || category === void 0 ? void 0 : category.props) !== null && _category$props !== void 0 ? _category$props : {},
590
- _ref20$width = _ref20.width,
591
- width = _ref20$width === void 0 ? 0 : _ref20$width,
592
- _ref20$height = _ref20.height,
593
- height = _ref20$height === void 0 ? 0 : _ref20$height;
628
+ var _ref21 = (_category$props = category === null || category === void 0 ? void 0 : category.props) !== null && _category$props !== void 0 ? _category$props : {},
629
+ _ref21$width = _ref21.width,
630
+ width = _ref21$width === void 0 ? 0 : _ref21$width,
631
+ _ref21$height = _ref21.height,
632
+ height = _ref21$height === void 0 ? 0 : _ref21$height;
594
633
  var _getLabelOffsetPositi = getLabelOffsetPosition(xDirection, yDirection, width, height),
595
634
  _getLabelOffsetPositi2 = _slicedToArray(_getLabelOffsetPositi, 2),
596
635
  xOffset = _getLabelOffsetPositi2[0],
@@ -623,7 +662,8 @@ var Hover = /*#__PURE__*/function (_Component4) {
623
662
  var _this3$asProps = _this3.asProps,
624
663
  eventEmitter = _this3$asProps.eventEmitter,
625
664
  size = _this3$asProps.size,
626
- rootRef = _this3$asProps.rootRef;
665
+ rootRef = _this3$asProps.rootRef,
666
+ patterns = _this3$asProps.patterns;
627
667
  var point = eventToPoint(e, rootRef.current);
628
668
  var diam = Math.min(size[0], size[1]);
629
669
  var centerX = point[0] - diam / 2;
@@ -638,16 +678,19 @@ var Hover = /*#__PURE__*/function (_Component4) {
638
678
  index: index
639
679
  }, function () {
640
680
  eventEmitter.emit('onTooltipVisible', index !== null, {}, {
641
- index: index
681
+ index: index,
682
+ patterns: patterns
642
683
  }, _this3.virtualElement);
643
684
  });
644
685
  }));
645
686
  _defineProperty(_assertThisInitialized(_this3), "handlerMouseLeaveRoot", trottle(function () {
687
+ var patterns = _this3.asProps.patterns;
646
688
  _this3.setState({
647
689
  index: null
648
690
  }, function () {
649
691
  _this3.asProps.eventEmitter.emit('onTooltipVisible', false, {}, {
650
- index: null
692
+ index: null,
693
+ patterns: patterns
651
694
  });
652
695
  });
653
696
  }));
@@ -758,20 +801,20 @@ var Hover = /*#__PURE__*/function (_Component4) {
758
801
  var SPieRect = this.Element;
759
802
  if (index !== null) {
760
803
  if (type === 'circle') {
761
- var _ref9;
804
+ var _ref10;
762
805
  var _this$getPie = this.getPie(index),
763
806
  _this$getPie2 = _slicedToArray(_this$getPie, 3),
764
807
  startAngle = _this$getPie2[0],
765
808
  endAngle = _this$getPie2[1],
766
809
  radius = _this$getPie2[2];
767
810
  var circle = arc().innerRadius(0).outerRadius(radius).startAngle(startAngle).endAngle(endAngle);
768
- return _ref9 = sstyled(styles), /*#__PURE__*/React.createElement(SPieRect, _ref9.cn("SPieRect", {
811
+ return _ref10 = sstyled(styles), /*#__PURE__*/React.createElement(SPieRect, _ref10.cn("SPieRect", {
769
812
  "render": 'path',
770
813
  "d": circle()
771
814
  }));
772
815
  } else {
773
- var _ref10;
774
- return _ref10 = sstyled(styles), /*#__PURE__*/React.createElement(SPieRect, _ref10.cn("SPieRect", {
816
+ var _ref11;
817
+ return _ref11 = sstyled(styles), /*#__PURE__*/React.createElement(SPieRect, _ref11.cn("SPieRect", {
775
818
  "render": 'path',
776
819
  "d": line()(this.getPolygon(index))
777
820
  }));
@@ -792,9 +835,9 @@ var Polygon = createElement(PolygonRoot, {
792
835
  });
793
836
  var RadarTooltip = function RadarTooltip(props) {
794
837
  var _ref = arguments[0],
795
- _ref11;
838
+ _ref12;
796
839
  var SRadarTooltip = Tooltip;
797
- return _ref11 = sstyled(props.styles), /*#__PURE__*/React.createElement(SRadarTooltip, _ref11.cn("SRadarTooltip", _objectSpread({}, _assignProps({
840
+ return _ref12 = sstyled(props.styles), /*#__PURE__*/React.createElement(SRadarTooltip, _ref12.cn("SRadarTooltip", _objectSpread({}, _assignProps({
798
841
  "tag": Radar.Hover,
799
842
  "excludeAnchorProps": true
800
843
  }, _ref))));