@semcore/d3-chart 16.4.2 → 16.5.0-prerelease.2

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 (163) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +4 -4
  3. package/lib/cjs/Area.js +11 -11
  4. package/lib/cjs/Axis.js +15 -15
  5. package/lib/cjs/Bar.js +16 -16
  6. package/lib/cjs/Bubble.js +15 -15
  7. package/lib/cjs/Bubble.js.map +1 -1
  8. package/lib/cjs/CompactHorizontalBar.js +21 -19
  9. package/lib/cjs/CompactHorizontalBar.js.map +1 -1
  10. package/lib/cjs/Donut.js +12 -11
  11. package/lib/cjs/Donut.js.map +1 -1
  12. package/lib/cjs/Dots.js +8 -8
  13. package/lib/cjs/HorizontalBar.js +16 -16
  14. package/lib/cjs/Hover.js +7 -7
  15. package/lib/cjs/Hover.js.map +1 -1
  16. package/lib/cjs/Line.js +9 -9
  17. package/lib/cjs/Plot.js +3 -3
  18. package/lib/cjs/Radar.js +21 -21
  19. package/lib/cjs/Radar.js.map +1 -1
  20. package/lib/cjs/RadialTree.js +24 -24
  21. package/lib/cjs/RadialTree.js.map +1 -1
  22. package/lib/cjs/Reference.js +12 -12
  23. package/lib/cjs/ScatterPlot.js +12 -11
  24. package/lib/cjs/ScatterPlot.js.map +1 -1
  25. package/lib/cjs/Tooltip.js +9 -9
  26. package/lib/cjs/Venn.js +12 -11
  27. package/lib/cjs/Venn.js.map +1 -1
  28. package/lib/cjs/a11y/PlotA11yModule.js +5 -5
  29. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
  30. package/lib/cjs/a11y/PlotA11yView.js +2 -2
  31. package/lib/cjs/component/Chart/AbstractChart.js +119 -35
  32. package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  33. package/lib/cjs/component/Chart/AreaChart.js +5 -29
  34. package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
  35. package/lib/cjs/component/Chart/BarChart.js +5 -29
  36. package/lib/cjs/component/Chart/BarChart.js.map +1 -1
  37. package/lib/cjs/component/Chart/BubbleChart.js +0 -4
  38. package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
  39. package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
  40. package/lib/cjs/component/Chart/CigaretteChart.js +96 -59
  41. package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
  42. package/lib/cjs/component/Chart/CigaretteChart.type.js.map +1 -1
  43. package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  44. package/lib/cjs/component/Chart/DonutChart.js +1 -6
  45. package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
  46. package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
  47. package/lib/cjs/component/Chart/HistogramChart.js +4 -28
  48. package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
  49. package/lib/cjs/component/Chart/LineChart.js +5 -29
  50. package/lib/cjs/component/Chart/LineChart.js.map +1 -1
  51. package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
  52. package/lib/cjs/component/Chart/ScatterPlotChart.js +1 -5
  53. package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
  54. package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
  55. package/lib/cjs/component/Chart/VennChart.js +0 -4
  56. package/lib/cjs/component/Chart/VennChart.js.map +1 -1
  57. package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
  58. package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  59. package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  60. package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  61. package/lib/cjs/style/abstract-chart.shadow.css +12 -0
  62. package/lib/es6/Area.js +11 -11
  63. package/lib/es6/Axis.js +15 -15
  64. package/lib/es6/Bar.js +16 -16
  65. package/lib/es6/Bubble.js +15 -15
  66. package/lib/es6/Bubble.js.map +1 -1
  67. package/lib/es6/CompactHorizontalBar.js +21 -19
  68. package/lib/es6/CompactHorizontalBar.js.map +1 -1
  69. package/lib/es6/Donut.js +12 -11
  70. package/lib/es6/Donut.js.map +1 -1
  71. package/lib/es6/Dots.js +8 -8
  72. package/lib/es6/HorizontalBar.js +16 -16
  73. package/lib/es6/Hover.js +7 -7
  74. package/lib/es6/Hover.js.map +1 -1
  75. package/lib/es6/Line.js +9 -9
  76. package/lib/es6/Plot.js +3 -3
  77. package/lib/es6/Radar.js +21 -21
  78. package/lib/es6/Radar.js.map +1 -1
  79. package/lib/es6/RadialTree.js +24 -24
  80. package/lib/es6/RadialTree.js.map +1 -1
  81. package/lib/es6/Reference.js +12 -12
  82. package/lib/es6/ScatterPlot.js +12 -11
  83. package/lib/es6/ScatterPlot.js.map +1 -1
  84. package/lib/es6/Tooltip.js +9 -9
  85. package/lib/es6/Venn.js +12 -11
  86. package/lib/es6/Venn.js.map +1 -1
  87. package/lib/es6/a11y/PlotA11yModule.js +4 -4
  88. package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
  89. package/lib/es6/a11y/PlotA11yView.js +2 -2
  90. package/lib/es6/component/Chart/AbstractChart.js +119 -31
  91. package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  92. package/lib/es6/component/Chart/AreaChart.js +5 -29
  93. package/lib/es6/component/Chart/AreaChart.js.map +1 -1
  94. package/lib/es6/component/Chart/BarChart.js +5 -29
  95. package/lib/es6/component/Chart/BarChart.js.map +1 -1
  96. package/lib/es6/component/Chart/BubbleChart.js +0 -4
  97. package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
  98. package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
  99. package/lib/es6/component/Chart/CigaretteChart.js +100 -61
  100. package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
  101. package/lib/es6/component/Chart/CigaretteChart.type.js.map +1 -1
  102. package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
  103. package/lib/es6/component/Chart/DonutChart.js +1 -6
  104. package/lib/es6/component/Chart/DonutChart.js.map +1 -1
  105. package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
  106. package/lib/es6/component/Chart/HistogramChart.js +4 -28
  107. package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
  108. package/lib/es6/component/Chart/LineChart.js +5 -29
  109. package/lib/es6/component/Chart/LineChart.js.map +1 -1
  110. package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
  111. package/lib/es6/component/Chart/ScatterPlotChart.js +1 -5
  112. package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
  113. package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
  114. package/lib/es6/component/Chart/VennChart.js +0 -4
  115. package/lib/es6/component/Chart/VennChart.js.map +1 -1
  116. package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
  117. package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  118. package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  119. package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  120. package/lib/es6/style/abstract-chart.shadow.css +12 -0
  121. package/lib/esm/Area.mjs +12 -12
  122. package/lib/esm/Axis.mjs +16 -16
  123. package/lib/esm/Bar.mjs +17 -17
  124. package/lib/esm/Bubble.mjs +16 -16
  125. package/lib/esm/CompactHorizontalBar.mjs +21 -20
  126. package/lib/esm/Donut.mjs +12 -12
  127. package/lib/esm/Dots.mjs +9 -9
  128. package/lib/esm/HorizontalBar.mjs +17 -17
  129. package/lib/esm/Hover.mjs +8 -8
  130. package/lib/esm/Line.mjs +10 -10
  131. package/lib/esm/Plot.mjs +4 -4
  132. package/lib/esm/Radar.mjs +22 -22
  133. package/lib/esm/RadialTree.mjs +27 -27
  134. package/lib/esm/Reference.mjs +13 -13
  135. package/lib/esm/ScatterPlot.mjs +12 -12
  136. package/lib/esm/Tooltip.mjs +10 -10
  137. package/lib/esm/Venn.mjs +12 -12
  138. package/lib/esm/a11y/PlotA11yModule.mjs +5 -5
  139. package/lib/esm/a11y/PlotA11yView.mjs +3 -3
  140. package/lib/esm/component/Chart/AbstractChart.mjs +103 -19
  141. package/lib/esm/component/Chart/AreaChart.mjs +5 -27
  142. package/lib/esm/component/Chart/BarChart.mjs +6 -28
  143. package/lib/esm/component/Chart/BubbleChart.mjs +0 -4
  144. package/lib/esm/component/Chart/CigaretteChart.mjs +78 -45
  145. package/lib/esm/component/Chart/DonutChart.mjs +1 -4
  146. package/lib/esm/component/Chart/HistogramChart.mjs +5 -27
  147. package/lib/esm/component/Chart/LineChart.mjs +5 -27
  148. package/lib/esm/component/Chart/ScatterPlotChart.mjs +1 -4
  149. package/lib/esm/component/Chart/VennChart.mjs +0 -4
  150. package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +5 -5
  151. package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +18 -18
  152. package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +7 -7
  153. package/lib/esm/style/abstract-chart.shadow.css +12 -0
  154. package/lib/types/a11y/PlotA11yModule.d.ts +1 -1
  155. package/lib/types/component/Chart/AbstractChart.d.ts +11 -1
  156. package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
  157. package/lib/types/component/Chart/CigaretteChart.type.d.ts +2 -0
  158. package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
  159. package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
  160. package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
  161. package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
  162. package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
  163. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"Hover.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_hasParent","_rafTrottle","_react","_createElement","_Tooltip","_utils","style","sstyled","insert","Hover","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","xIndex","yIndex","canUseDOM","document","createElement","trottle","e","currentTarget","_this$asProps","asProps","eventEmitter","data","scale","x","y","rootRef","patterns","plotId","clientX","clientY","_scale","_slicedToArray2","xScale","yScale","_eventToPoint","eventToPoint","current","_eventToPoint2","pX","pY","vX","invert","vY","undefined","getIndexFromData","state","_rootRef$current$getB","getBoundingClientRect","xRect","yRect","height","_currentTarget$getBou","yOriginal","heightOriginal","isRootTooltip","hasParent","target","setState","emit","diff","dimension","heightValue","_inherits2","_createClass2","key","value","componentDidMount","_this2","unsubscribeMouseMoveRoot","subscribe","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","componentWillUnmount","Component","HoverLineRoot","_Hover2","render","_ref3","SHoverLine","Element","_this$asProps2","styles","hideHoverLine","_this$state","_scale2","xRange","range","yRange","x1","scaleOfBandwidth","y1","isHide","Fragment","cn","HoverRectRoot","_Hover3","_ref4","SHoverRect","_this$asProps3","_this$state2","_scale3","xBand","scaleToBand","yBand","step","paddingInner","HoverLineTooltip","props","_ref","arguments[0]","_ref5","SHoverLineTooltip","Tooltip","_objectSpread2","assignProps","HoverLine","HoverRectTooltip","_ref2","_ref6","SHoverRectTooltip","HoverRect","exports","_______childrenComponents"],"sources":["../../src/Hover.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport { hasParent } from '@semcore/core/lib/utils/hasParent';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport style from './style/hover.shadow.css';\nimport Tooltip from './Tooltip';\nimport { scaleOfBandwidth, getIndexFromData, eventToPoint, invert, scaleToBand } from './utils';\n\nclass Hover extends Component {\n static style = style;\n\n state = {\n xIndex: null,\n yIndex: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n handlerMouseMoveRoot = trottle((e, currentTarget) => {\n const { eventEmitter, data, scale, x, y, rootRef, patterns, plotId } = this.asProps;\n const { clientX, clientY } = e;\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n const vY = invert(yScale, pY);\n const xIndex =\n x === undefined || vX === undefined ? null : getIndexFromData(data, xScale, x, vX);\n const yIndex =\n y === undefined || vY === undefined ? null : getIndexFromData(data, yScale, y, vY);\n const state = { xIndex, yIndex, patterns };\n\n const { x: xRect, y: yRect, height } = rootRef.current.getBoundingClientRect();\n const { y: yOriginal, height: heightOriginal } = currentTarget.getBoundingClientRect();\n const isRootTooltip = hasParent(e.target, rootRef.current);\n\n this.setState(state, () => {\n if (isRootTooltip) {\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n } else {\n const diff = clientY - yOriginal;\n const dimension = (diff / heightOriginal) * 100;\n const heightValue = height / 100 * dimension;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, pX + xRect, yRect + heightValue);\n }\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, {}, state);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, xIndex !== null || yIndex !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n const state = {\n xIndex: null,\n yIndex: null,\n patterns: this.asProps.patterns,\n };\n this.setState(state, () => {\n this.asProps.eventEmitter.emit(`setTooltipVisible_${this.asProps.plotId}`, false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e, e.currentTarget);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveChart',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n}\n\nclass HoverLineRoot extends Hover {\n static displayName = 'HoverLine';\n\n render() {\n const SHoverLine = this.Element;\n const { styles, x, y, data, scale, hideHoverLine } = this.asProps;\n const { xIndex, yIndex } = this.state;\n const [xScale, yScale] = scale;\n\n const xRange = xScale.range();\n const yRange = yScale.range();\n const x1 = xIndex !== null ? scaleOfBandwidth(xScale, data[xIndex][x]) : undefined;\n const y1 = yIndex !== null ? scaleOfBandwidth(yScale, data[yIndex][y]) : undefined;\n\n const isHide =\n typeof hideHoverLine === 'function' ? hideHoverLine(xIndex, yIndex) : hideHoverLine;\n\n if (isHide) {\n return null;\n }\n\n return sstyled(styles)(\n <>\n {xIndex !== null\n ? (\n <SHoverLine\n aria-hidden\n render='line'\n index={xIndex}\n x1={x1}\n y1={yRange[0]}\n x2={x1}\n y2={yRange[1]}\n />\n )\n : null}\n {yIndex !== null\n ? (\n <SHoverLine\n aria-hidden\n render='line'\n index={yIndex}\n x1={xRange[0]}\n y1={y1}\n x2={xRange[1]}\n y2={y1}\n />\n )\n : null}\n </>,\n );\n }\n}\n\nclass HoverRectRoot extends Hover {\n static displayName = 'HoverRect';\n\n render() {\n const SHoverRect = this.Element;\n const { styles, x, y, data, scale, hideHoverLine } = this.asProps;\n const { xIndex, yIndex } = this.state;\n const [xScale, yScale] = scale;\n\n const xRange = xScale.range();\n const yRange = yScale.range();\n const xBand = scaleToBand(xScale);\n const yBand = scaleToBand(yScale);\n\n if (hideHoverLine) {\n return null;\n }\n\n return sstyled(styles)(\n <>\n {xIndex !== null\n ? (\n <SHoverRect\n aria-hidden\n render='rect'\n index={xIndex}\n width={xBand.step() - xBand.paddingInner() / 2}\n height={yRange[0] - yRange[1]}\n x={xScale(data[xIndex][x]) - (xBand.step() * xBand.paddingInner()) / 2}\n y={yRange[1]}\n />\n )\n : null}\n {yIndex !== null\n ? (\n <SHoverRect\n aria-hidden\n render='rect'\n index={yIndex}\n width={xRange[1] - xRange[0]}\n height={yBand.step() - yBand.paddingInner() / 2}\n x={xRange[0]}\n y={yScale(data[yIndex][y]) - (yBand.step() * yBand.paddingInner()) / 2}\n />\n )\n : null}\n </>,\n );\n }\n}\n\nconst HoverLineTooltip = (props) => {\n const SHoverLineTooltip = Root;\n return sstyled(props.styles)(\n <SHoverLineTooltip render={Tooltip} tag={HoverLine} excludeAnchorProps />,\n );\n};\nconst HoverRectTooltip = (props) => {\n const SHoverRectTooltip = Root;\n return sstyled(props.styles)(\n <SHoverRectTooltip render={Tooltip} tag={HoverRect} excludeAnchorProps />,\n );\n};\n\nconst HoverLine = createElement(HoverLineRoot, {\n Tooltip: [HoverLineTooltip, Tooltip._______childrenComponents],\n});\nconst HoverRect = createElement(HoverRectRoot, {\n Tooltip: [HoverRectTooltip, Tooltip._______childrenComponents],\n});\n\nexport { HoverLine, HoverRect };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Hover.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_hasParent","_rafTrottle","_react","_createElement","_Tooltip","_utils","style","sstyled","insert","Hover","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","xIndex","yIndex","canUseDOM","document","createElement","trottle","e","currentTarget","_this$asProps","asProps","eventEmitter","data","scale","x","y","rootRef","patterns","plotId","clientX","clientY","_scale","_slicedToArray2","xScale","yScale","_eventToPoint","eventToPoint","current","_eventToPoint2","pX","pY","vX","invert","vY","undefined","getIndexFromData","state","_rootRef$current$getB","getBoundingClientRect","xRect","yRect","height","_currentTarget$getBou","yOriginal","heightOriginal","isRootTooltip","hasParent","target","setState","emit","diff","dimension","heightValue","_inherits2","_createClass2","key","value","componentDidMount","_this2","unsubscribeMouseMoveRoot","subscribe","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","componentWillUnmount","Component","HoverLineRoot","_Hover2","render","_ref3","SHoverLine","Element","_this$asProps2","styles","hideHoverLine","_this$state","_scale2","xRange","range","yRange","x1","scaleOfBandwidth","y1","isHide","Fragment","cn","HoverRectRoot","_Hover3","_ref4","SHoverRect","_this$asProps3","_this$state2","_scale3","xBand","scaleToBand","yBand","step","paddingInner","HoverLineTooltip","props","_ref","arguments[0]","_ref5","SHoverLineTooltip","Tooltip","_objectSpread2","assignProps","HoverLine","HoverRectTooltip","_ref2","_ref6","SHoverRectTooltip","HoverRect","exports","_______childrenComponents"],"sources":["../../src/Hover.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport { hasParent } from '@semcore/core/lib/utils/hasParent';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport React from 'react';\n\nimport createElement from './createElement';\nimport style from './style/hover.shadow.css';\nimport Tooltip from './Tooltip';\nimport { scaleOfBandwidth, getIndexFromData, eventToPoint, invert, scaleToBand } from './utils';\n\nclass Hover extends Component {\n static style = style;\n\n state = {\n xIndex: null,\n yIndex: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n handlerMouseMoveRoot = trottle((e, currentTarget) => {\n const { eventEmitter, data, scale, x, y, rootRef, patterns, plotId } = this.asProps;\n const { clientX, clientY } = e;\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, rootRef.current);\n const vX = invert(xScale, pX);\n const vY = invert(yScale, pY);\n const xIndex =\n x === undefined || vX === undefined ? null : getIndexFromData(data, xScale, x, vX);\n const yIndex =\n y === undefined || vY === undefined ? null : getIndexFromData(data, yScale, y, vY);\n const state = { xIndex, yIndex, patterns };\n\n const { x: xRect, y: yRect, height } = rootRef.current.getBoundingClientRect();\n const { y: yOriginal, height: heightOriginal } = currentTarget.getBoundingClientRect();\n const isRootTooltip = hasParent(e.target, rootRef.current);\n\n this.setState(state, () => {\n if (isRootTooltip) {\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n } else {\n const diff = clientY - yOriginal;\n const dimension = (diff / heightOriginal) * 100;\n const heightValue = height / 100 * dimension;\n\n eventEmitter.emit(`setTooltipPosition_${plotId}`, pX + xRect, yRect + heightValue);\n }\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, {}, state);\n eventEmitter.emit(`setTooltipVisible_${plotId}`, xIndex !== null || yIndex !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n const state = {\n xIndex: null,\n yIndex: null,\n patterns: this.asProps.patterns,\n };\n this.setState(state, () => {\n this.asProps.eventEmitter.emit(`setTooltipVisible_${this.asProps.plotId}`, false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveChart', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e, e.currentTarget);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveChart',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n}\n\nclass HoverLineRoot extends Hover {\n static displayName = 'HoverLine';\n\n render() {\n const SHoverLine = this.Element;\n const { styles, x, y, data, scale, hideHoverLine } = this.asProps;\n const { xIndex, yIndex } = this.state;\n const [xScale, yScale] = scale;\n\n const xRange = xScale.range();\n const yRange = yScale.range();\n const x1 = xIndex !== null ? scaleOfBandwidth(xScale, data[xIndex][x]) : undefined;\n const y1 = yIndex !== null ? scaleOfBandwidth(yScale, data[yIndex][y]) : undefined;\n\n const isHide =\n typeof hideHoverLine === 'function' ? hideHoverLine(xIndex, yIndex) : hideHoverLine;\n\n if (isHide) {\n return null;\n }\n\n return sstyled(styles)(\n <>\n {xIndex !== null\n ? (\n <SHoverLine\n aria-hidden\n render='line'\n index={xIndex}\n x1={x1}\n y1={yRange[0]}\n x2={x1}\n y2={yRange[1]}\n />\n )\n : null}\n {yIndex !== null\n ? (\n <SHoverLine\n aria-hidden\n render='line'\n index={yIndex}\n x1={xRange[0]}\n y1={y1}\n x2={xRange[1]}\n y2={y1}\n />\n )\n : null}\n </>,\n );\n }\n}\n\nclass HoverRectRoot extends Hover {\n static displayName = 'HoverRect';\n\n render() {\n const SHoverRect = this.Element;\n const { styles, x, y, data, scale, hideHoverLine } = this.asProps;\n const { xIndex, yIndex } = this.state;\n const [xScale, yScale] = scale;\n\n const xRange = xScale.range();\n const yRange = yScale.range();\n const xBand = scaleToBand(xScale);\n const yBand = scaleToBand(yScale);\n\n if (hideHoverLine) {\n return null;\n }\n\n return sstyled(styles)(\n <>\n {xIndex !== null\n ? (\n <SHoverRect\n aria-hidden\n render='rect'\n index={xIndex}\n width={xBand.step() - xBand.paddingInner() / 2}\n height={yRange[0] - yRange[1]}\n x={xScale(data[xIndex][x]) - (xBand.step() * xBand.paddingInner()) / 2}\n y={yRange[1]}\n />\n )\n : null}\n {yIndex !== null\n ? (\n <SHoverRect\n aria-hidden\n render='rect'\n index={yIndex}\n width={xRange[1] - xRange[0]}\n height={yBand.step() - yBand.paddingInner() / 2}\n x={xRange[0]}\n y={yScale(data[yIndex][y]) - (yBand.step() * yBand.paddingInner()) / 2}\n />\n )\n : null}\n </>,\n );\n }\n}\n\nfunction HoverLineTooltip(props) {\n const SHoverLineTooltip = Root;\n return sstyled(props.styles)(\n <SHoverLineTooltip render={Tooltip} tag={HoverLine} excludeAnchorProps />,\n );\n}\nfunction HoverRectTooltip(props) {\n const SHoverRectTooltip = Root;\n return sstyled(props.styles)(\n <SHoverRectTooltip render={Tooltip} tag={HoverRect} excludeAnchorProps />,\n );\n}\n\nconst HoverLine = createElement(HoverLineRoot, {\n Tooltip: [HoverLineTooltip, Tooltip._______childrenComponents],\n});\nconst HoverRect = createElement(HoverRectRoot, {\n Tooltip: [HoverRectTooltip, Tooltip._______childrenComponents],\n});\n\nexport { HoverLine, HoverRect };\n"],"mappings":"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","ignoreList":[]}
package/lib/cjs/Line.js CHANGED
@@ -23,17 +23,17 @@ var _Dots = _interopRequireDefault(require("./Dots"));
23
23
  var _Pattern = require("./Pattern");
24
24
  var _utils = require("./utils");
25
25
  /*!__reshadow-styles__:"./style/line.shadow.css"*/
26
- var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SLine_c6fgc_gg_{fill:transparent;stroke-width:3;stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:d;transition-duration:var(--duration_c6fgc);transition-timing-function:ease-in-out}.___SLine_c6fgc_gg_.__color_c6fgc_gg_{stroke:var(--color_c6fgc)}.___SLine_c6fgc_gg_.__hide_c6fgc_gg_{display:none}.___SLine_c6fgc_gg_.__transparent_c6fgc_gg_{opacity:.3}.___SNull_c6fgc_gg_{fill:transparent;stroke:var(--intergalactic-border-primary, #c4c7cf);stroke-dasharray:4}.___SNull_c6fgc_gg_.__hide_c6fgc_gg_{display:none}.___SLineArea_c6fgc_gg_{transition-property:d;transition-duration:var(--duration_c6fgc);transition-timing-function:ease-in-out;opacity:.3;fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SLineArea_c6fgc_gg_.__color_c6fgc_gg_{fill:var(--color_c6fgc)}", /*__inner_css_end__*/"c6fgc_gg_"),
26
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SLine_17d3x_gg_{fill:transparent;stroke-width:3;stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:d;transition-duration:var(--duration_17d3x);transition-timing-function:ease-in-out}.___SLine_17d3x_gg_.__color_17d3x_gg_{stroke:var(--color_17d3x)}.___SLine_17d3x_gg_.__hide_17d3x_gg_{display:none}.___SLine_17d3x_gg_.__transparent_17d3x_gg_{opacity:.3}.___SNull_17d3x_gg_{fill:transparent;stroke:var(--intergalactic-border-primary, #c4c7cf);stroke-dasharray:4}.___SNull_17d3x_gg_.__hide_17d3x_gg_{display:none}.___SLineArea_17d3x_gg_{transition-property:d;transition-duration:var(--duration_17d3x);transition-timing-function:ease-in-out;opacity:.3;fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SLineArea_17d3x_gg_.__color_17d3x_gg_{fill:var(--color_17d3x)}", /*__inner_css_end__*/"17d3x_gg_"),
27
27
  /*__reshadow_css_end__*/
28
28
  {
29
- "__SLine": "___SLine_c6fgc_gg_",
30
- "--duration": "--duration_c6fgc",
31
- "_color": "__color_c6fgc_gg_",
32
- "--color": "--color_c6fgc",
33
- "_hide": "__hide_c6fgc_gg_",
34
- "_transparent": "__transparent_c6fgc_gg_",
35
- "__SNull": "___SNull_c6fgc_gg_",
36
- "__SLineArea": "___SLineArea_c6fgc_gg_"
29
+ "__SLine": "___SLine_17d3x_gg_",
30
+ "--duration": "--duration_17d3x",
31
+ "_color": "__color_17d3x_gg_",
32
+ "--color": "--color_17d3x",
33
+ "_hide": "__hide_17d3x_gg_",
34
+ "_transparent": "__transparent_17d3x_gg_",
35
+ "__SNull": "___SNull_17d3x_gg_",
36
+ "__SLineArea": "___SLineArea_17d3x_gg_"
37
37
  });
38
38
  var LineRoot = /*#__PURE__*/function (_Component) {
39
39
  function LineRoot() {
package/lib/cjs/Plot.js CHANGED
@@ -24,11 +24,11 @@ var _PlotA11yModule = require("./a11y/PlotA11yModule");
24
24
  var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynamic-locales");
25
25
  var _utils = require("./utils");
26
26
  /*!__reshadow-styles__:"./style/plot.shadow.css"*/
27
- var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPlot_19n1y_gg_{overflow:hidden}.___SPlot_19n1y_gg_:focus{outline:0}.___SPlot_19n1y_gg_:active{outline:0;-webkit-text-decoration:none;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_19n1y_gg_.__keyboardFocused_19n1y_gg_{outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset;border-radius:var(--intergalactic-surface-rounded, 6px)}", /*__inner_css_end__*/"19n1y_gg_"),
27
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPlot_1kb8p_gg_{overflow:hidden}.___SPlot_1kb8p_gg_:focus{outline:0}.___SPlot_1kb8p_gg_:active{outline:0;-webkit-text-decoration:none;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_1kb8p_gg_.__keyboardFocused_1kb8p_gg_{outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset;border-radius:var(--intergalactic-surface-rounded, 6px)}", /*__inner_css_end__*/"1kb8p_gg_"),
28
28
  /*__reshadow_css_end__*/
29
29
  {
30
- "__SPlot": "___SPlot_19n1y_gg_",
31
- "_keyboardFocused": "__keyboardFocused_19n1y_gg_"
30
+ "__SPlot": "___SPlot_1kb8p_gg_",
31
+ "_keyboardFocused": "__keyboardFocused_1kb8p_gg_"
32
32
  });
33
33
  var PlotRoot = /*#__PURE__*/function (_Component) {
34
34
  function PlotRoot(props) {
package/lib/cjs/Radar.js CHANGED
@@ -28,27 +28,27 @@ var _Pattern = require("./Pattern");
28
28
  var _Tooltip = _interopRequireDefault(require("./Tooltip"));
29
29
  var _utils = require("./utils");
30
30
  /*!__reshadow-styles__:"./style/radar.shadow.css"*/
31
- var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SAxisLine_1v7a0_gg_,.___SAxisTick_1v7a0_gg_,.___SAxis_1v7a0_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_1v7a0_gg_,.___SAxisTick_1v7a0_gg_{stroke-dasharray:2}.___SAxisLine_1v7a0_gg_.__active_1v7a0_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_1v7a0_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_1v7a0_gg_.__xDirection_1v7a0_gg_{text-anchor:var(--xDirection_1v7a0)}.___SAxisLabel_1v7a0_gg_.__yDirection_1v7a0_gg_{dominant-baseline:var(--yDirection_1v7a0)}.___SPolygonDot_1v7a0_gg_,.___SPolygon_1v7a0_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_1v7a0_gg_{opacity:.2}.___SPolygon_1v7a0_gg_.__color_1v7a0_gg_{fill:var(--color_1v7a0)}.___SPolygon_1v7a0_gg_.__pattern_1v7a0_gg_.__color_1v7a0_gg_{fill:var(--pattern_1v7a0);stroke:var(--color_1v7a0);stroke-width:1px}.___SPolygonDot_1v7a0_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_1v7a0_gg_.__transparent_1v7a0_gg_{opacity:.3}.___SPolygonDot_1v7a0_gg_.__color_1v7a0_gg_{fill:var(--color_1v7a0)}.___SPolygonLine_1v7a0_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_1v7a0_gg_.__transparent_1v7a0_gg_{opacity:.3}.___SPolygonLine_1v7a0_gg_.__color_1v7a0_gg_{stroke:var(--color_1v7a0)}.___SPieRect_1v7a0_gg_{outline:0;fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}", /*__inner_css_end__*/"1v7a0_gg_"),
31
+ var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SAxisLine_vlbp0_gg_,.___SAxisTick_vlbp0_gg_,.___SAxis_vlbp0_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_vlbp0_gg_,.___SAxisTick_vlbp0_gg_{stroke-dasharray:2}.___SAxisLine_vlbp0_gg_.__active_vlbp0_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_vlbp0_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_vlbp0_gg_.__xDirection_vlbp0_gg_{text-anchor:var(--xDirection_vlbp0)}.___SAxisLabel_vlbp0_gg_.__yDirection_vlbp0_gg_{dominant-baseline:var(--yDirection_vlbp0)}.___SPolygonDot_vlbp0_gg_,.___SPolygon_vlbp0_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_vlbp0_gg_{opacity:.2}.___SPolygon_vlbp0_gg_.__color_vlbp0_gg_{fill:var(--color_vlbp0)}.___SPolygon_vlbp0_gg_.__pattern_vlbp0_gg_.__color_vlbp0_gg_{fill:var(--pattern_vlbp0);stroke:var(--color_vlbp0);stroke-width:1px}.___SPolygonDot_vlbp0_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_vlbp0_gg_.__transparent_vlbp0_gg_{opacity:.3}.___SPolygonDot_vlbp0_gg_.__color_vlbp0_gg_{fill:var(--color_vlbp0)}.___SPolygonLine_vlbp0_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_vlbp0_gg_.__transparent_vlbp0_gg_{opacity:.3}.___SPolygonLine_vlbp0_gg_.__color_vlbp0_gg_{stroke:var(--color_vlbp0)}.___SPieRect_vlbp0_gg_{outline:0;fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}", /*__inner_css_end__*/"vlbp0_gg_"),
32
32
  /*__reshadow_css_end__*/
33
33
  {
34
- "__SAxis": "___SAxis_1v7a0_gg_",
35
- "__SAxisLine": "___SAxisLine_1v7a0_gg_",
36
- "__SAxisTick": "___SAxisTick_1v7a0_gg_",
37
- "_active": "__active_1v7a0_gg_",
38
- "__SAxisLabel": "___SAxisLabel_1v7a0_gg_",
39
- "_xDirection": "__xDirection_1v7a0_gg_",
40
- "--xDirection": "--xDirection_1v7a0",
41
- "_yDirection": "__yDirection_1v7a0_gg_",
42
- "--yDirection": "--yDirection_1v7a0",
43
- "__SPolygon": "___SPolygon_1v7a0_gg_",
44
- "_color": "__color_1v7a0_gg_",
45
- "--color": "--color_1v7a0",
46
- "_pattern": "__pattern_1v7a0_gg_",
47
- "--pattern": "--pattern_1v7a0",
48
- "__SPolygonDot": "___SPolygonDot_1v7a0_gg_",
49
- "_transparent": "__transparent_1v7a0_gg_",
50
- "__SPolygonLine": "___SPolygonLine_1v7a0_gg_",
51
- "__SPieRect": "___SPieRect_1v7a0_gg_"
34
+ "__SAxis": "___SAxis_vlbp0_gg_",
35
+ "__SAxisLine": "___SAxisLine_vlbp0_gg_",
36
+ "__SAxisTick": "___SAxisTick_vlbp0_gg_",
37
+ "_active": "__active_vlbp0_gg_",
38
+ "__SAxisLabel": "___SAxisLabel_vlbp0_gg_",
39
+ "_xDirection": "__xDirection_vlbp0_gg_",
40
+ "--xDirection": "--xDirection_vlbp0",
41
+ "_yDirection": "__yDirection_vlbp0_gg_",
42
+ "--yDirection": "--yDirection_vlbp0",
43
+ "__SPolygon": "___SPolygon_vlbp0_gg_",
44
+ "_color": "__color_vlbp0_gg_",
45
+ "--color": "--color_vlbp0",
46
+ "_pattern": "__pattern_vlbp0_gg_",
47
+ "--pattern": "--pattern_vlbp0",
48
+ "__SPolygonDot": "___SPolygonDot_vlbp0_gg_",
49
+ "_transparent": "__transparent_vlbp0_gg_",
50
+ "__SPolygonLine": "___SPolygonLine_vlbp0_gg_",
51
+ "__SPieRect": "___SPieRect_vlbp0_gg_"
52
52
  });
53
53
  var clampAngle = function clampAngle(angle) {
54
54
  angle = angle % (2 * Math.PI);
@@ -858,7 +858,7 @@ var Polygon = (0, _createElement["default"])(PolygonRoot, {
858
858
  Line: PolygonLine,
859
859
  Dots: PolygonDots
860
860
  });
861
- var RadarTooltip = function RadarTooltip(props) {
861
+ function RadarTooltip(props) {
862
862
  var _ref = arguments[0],
863
863
  _ref10;
864
864
  var SRadarTooltip = _Tooltip["default"];
@@ -866,7 +866,7 @@ var RadarTooltip = function RadarTooltip(props) {
866
866
  "tag": Radar.Hover,
867
867
  "excludeAnchorProps": true
868
868
  }, _ref))));
869
- };
869
+ }
870
870
  var Radar = (0, _createElement["default"])(RadarRoot, {
871
871
  Axis: Axis,
872
872
  Polygon: Polygon,
@@ -1 +1 @@
1
- {"version":3,"file":"Radar.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_getOriginChildren","_rafTrottle","_uniqueID","_d3Polygon","_d3Shape","_react","_interopRequireWildcard","_createElement","_Pattern","_Tooltip","_utils","style","sstyled","insert","clampAngle","angle","Math","PI","getBoxAxesValue","i","range","axes","total","angleOffset","func","sin","cos","getRadianPosition","getLabelXPlacement","getLabelYPlacement","getLabelPlacement","computeTextWidth","texts","textSize","defaultWidth","arguments","length","undefined","defaultHeight","widths","map","text","measureText","React","isValidElement","_text$props","_text$props2","max","props","width","height","apply","_toConsumableArray2","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","_t","push","pieContains","_ref11","_ref12","_ref13","_slicedToArray2","startAngle","endAngle","_ref14","x","y","distance","sqrt","pow","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","concat","MINIMUM_OFFSET","RadarRoot","_Component","_this","_classCallCheck2","_len","args","_key","_callSuper2","_defineProperty2","_inherits2","_createClass2","key","get","_this$asProps","asProps","id","uid","offset","computeOffset","value","getAxisProps","type","getPolygonProps","_ref15","index","dataKey","_this$asProps2","data","scale","patterns","color","getChartDefaultColorName","getHoverProps","categories","categoriesKey","getIndex","bind","getPolygon","getPie","point","_this2","_this$asProps3","findIndex","_c","polygonContains","_this$asProps4","size","diam","min","prevIndex","nextIndex","_getRadianPosition","_getRadianPosition2","prevX1","prevY1","_getRadianPosition3","_getRadianPosition4","_getRadianPosition5","_getRadianPosition6","nextX1","nextY1","_this$asProps5","handlerOnClick","e","stopPropagation","_this$asProps6","rootRef","onClick","_eventToPoint","eventToPoint","current","_eventToPoint2","pointX","pointY","r","centerX","centerY","render","_ref2","SRadar","Element","_this$asProps7","Children","styles","_size","dataHintsHandler","establishDataType","toArray","getOriginChildren","forEach","child","Radar","Axis","createElement","cn","Component","uniqueIDEnhancement","PolygonRoot","_Component2","getDotsProps","_this$asProps8","resolveColor","transparent","categoryKey","getLineProps","_this$asProps9","d3","_ref3","_this$asProps0","SPolygon","fill","Fragment","PatternFill","_ref20","_ref20$curve","curve","curveLinearClosed","lineRadial","d","_d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","_ref6","describeGroupedValues","_getRadianPosition7","_getRadianPosition8","cx","cy","_ref5","patternKey","_getPatternSymbolSize","getPatternSymbolSize","_getPatternSymbolSize2","PatternSymbol","AxisRoot","_Component3","_this3","_len2","_key2","activeLineIndex","_anchorProps","_ref16","setState","createLineRadial","getTicksProps","_ref17","_ref17$tickSize","_this$asProps1","getLabelsProps","_ref18","_ref18$labelOffset","labelOffset","_this$asProps10","componentDidMount","eventEmitter","unsubscribeTooltipVisible","subscribe","handleTooltipRenderingProps","componentWillUnmount","_this$unsubscribeTool","call","_ref7","_this$asProps11","SAxis","state","_category","_getRadianPosition9","_getRadianPosition0","_sstyled$cn","active","className","x1","y1","x2","y2","_ref21","AxisTicks","SAxisTick","tick","_ref8","AxisLabels","SAxisLabel","category","_getRadianPosition1","_getRadianPosition10","_getLabelPlacement","_getLabelPlacement2","_ref9","labelKey","lines","split","lineText","lineIndex","_category$props","_ref19","_ref19$width","_ref19$height","_getLabelOffsetPositi","_getLabelOffsetPositi2","cloneElement","Hover","_Component4","_this4","_len3","_key3","canUseDOM","document","trottle","_this4$asProps","plotId","clientX","clientY","emit","generateGetBoundingClientRect","top","right","bottom","left","_this5","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","_this$asProps12","SPieRect","_ref0","_getPie","_getPie2","circle","arc","innerRadius","outerRadius","_ref1","line","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref10","SRadarTooltip","Tooltip","_objectSpread2","assignProps","_______childrenComponents","_default","exports"],"sources":["../../src/Radar.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { polygonContains } from 'd3-polygon';\nimport { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';\nimport React, { cloneElement } from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';\nimport style from './style/radar.shadow.css';\nimport Tooltip from './Tooltip';\nimport { eventToPoint, getChartDefaultColorName, measureText } from './utils';\n\nconst clampAngle = (angle) => {\n angle = angle % (2 * Math.PI);\n if (angle < 0) angle += 2 * Math.PI;\n return angle;\n};\n\nfunction getBoxAxesValue(i, range, axes, total, angleOffset) {\n const func = axes === 'y' ? Math.sin : Math.cos;\n\n const angle = clampAngle(((total - i) * 2 * Math.PI) / total + angleOffset);\n return range * (1 - func(angle)) - range;\n}\n\nfunction getRadianPosition(i, range, total, angleOffset) {\n return [\n getBoxAxesValue(i, range, 'y', total, angleOffset),\n getBoxAxesValue(i, range, 'x', total, angleOffset),\n ];\n}\n\nconst getLabelXPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'middle';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'middle';\n\n return angle < Math.PI ? 'start' : 'end';\n};\nconst getLabelYPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'alphabetic';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'mathematical';\n\n return 'middle';\n};\n\nfunction getLabelPlacement(i, total, angleOffset) {\n return [getLabelXPlacement(i, total, angleOffset), getLabelYPlacement(i, total, angleOffset)];\n}\n\nfunction computeTextWidth(texts, textSize, defaultWidth = 50, defaultHeight = 20) {\n const widths = texts.map((text) => {\n if (typeof text === 'string') {\n return measureText(text, textSize);\n }\n if (React.isValidElement(text)) {\n // @ts-ignore\n return Math.max(text.props?.width || defaultWidth, text.props?.height || defaultHeight);\n }\n return defaultWidth;\n });\n return Math.max(...widths);\n}\n\nfunction getTicks(tickSize, radius) {\n let ticks = 0;\n while (Math.trunc(radius / (tickSize / 2)) > ticks) {\n ticks += 1;\n }\n return [...Array(ticks).keys()].reduce((ticks, _t, i, total) => {\n if (i) ticks.push(i / total.length);\n return ticks;\n }, []);\n}\n\nfunction pieContains([startAngle, endAngle, radius], [x, y]) {\n const distance = Math.sqrt(x ** 2 + y ** 2);\n if (distance > radius) return false;\n\n startAngle = clampAngle(startAngle);\n endAngle = clampAngle(endAngle);\n startAngle = startAngle < endAngle ? startAngle : startAngle - 2 * Math.PI;\n\n const angle = clampAngle(Math.atan2(y, x) + Math.PI / 2);\n const prevAngle = angle - Math.PI * 2;\n const nextAngle = angle + Math.PI * 2;\n\n if (angle > startAngle && angle < endAngle) return true;\n if (prevAngle > startAngle && prevAngle < endAngle) return true;\n if (nextAngle > startAngle && nextAngle < endAngle) return true;\n return false;\n}\n\nexport function getLabelOffsetPosition(xDirection, yDirection, width, height) {\n let xOffset = 0;\n let yOffset = 0;\n switch (`${xDirection}-${yDirection}`) {\n case 'middle-alphabetic':\n yOffset = height / 2;\n break;\n case 'start-middle':\n xOffset = -width / 2;\n break;\n case 'middle-mathematical':\n yOffset = -height / 2;\n break;\n case 'end-middle':\n xOffset = width / 2;\n break;\n }\n return [xOffset + width / 2, yOffset + height / 2];\n}\n\nconst MINIMUM_OFFSET = 5;\n\nclass RadarRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n computeOffset = 0;\n\n categoriesKey = null;\n\n static defaultProps = {\n type: 'polygon',\n angleOffset: 0,\n };\n\n get id() {\n const { id, uid } = this.asProps;\n return id || uid;\n }\n\n get offset() {\n const { offset } = this.asProps;\n return offset ?? this.computeOffset;\n }\n\n get textSize() {\n const { textSize } = this.asProps;\n return textSize ?? 12;\n }\n\n getAxisProps() {\n return {\n offset: this.offset,\n textSize: this.textSize,\n type: this.asProps.type,\n angleOffset: this.asProps.angleOffset,\n };\n }\n\n getPolygonProps({ dataKey }, index) {\n const { data, scale, angleOffset, uid, patterns } = this.asProps;\n\n return {\n offset: this.offset,\n data: data[dataKey] || [],\n scale,\n angleOffset,\n color: getChartDefaultColorName(index),\n uid: `${uid}-${index}`,\n patterns,\n };\n }\n\n getHoverProps() {\n return {\n type: this.asProps.type,\n offset: this.offset,\n categories: this.asProps.data[this.categoriesKey],\n angleOffset: this.asProps.angleOffset,\n getIndex: this.getIndex.bind(this),\n getPolygon: this.getPolygon.bind(this),\n getPie: this.getPie.bind(this),\n };\n }\n\n getIndex(point) {\n const { data, type } = this.asProps;\n const categories = data[this.categoriesKey];\n\n let index;\n if (type === 'circle') {\n index = categories.findIndex((_c, i) => pieContains(this.getPie(i), point));\n } else {\n index = categories.findIndex((_c, i) => polygonContains(this.getPolygon(i), point));\n }\n return index === -1 ? null : index;\n }\n\n getPolygon(index) {\n const { data, size, angleOffset } = this.asProps;\n const offset = this.offset;\n const categories = data[this.categoriesKey];\n const total = categories.length;\n const diam = Math.min(size[0], size[1]);\n const radius = diam / 2 - offset;\n const prevIndex = (index - 1 + total) % total;\n const nextIndex = (index + 1 + total) % total;\n const [prevX1, prevY1] = getRadianPosition(prevIndex, radius, total, angleOffset);\n const [x, y] = getRadianPosition(index, radius, total, angleOffset);\n const [nextX1, nextY1] = getRadianPosition(nextIndex, radius, total, angleOffset);\n return [\n [0, 0],\n [(prevX1 + x) / 2, (prevY1 + y) / 2],\n [x, y],\n [(nextX1 + x) / 2, (nextY1 + y) / 2],\n ];\n }\n\n getPie(index) {\n const { data, size, angleOffset } = this.asProps;\n const categories = data[this.categoriesKey];\n const offset = this.offset;\n const angle = (Math.PI * 2) / categories.length;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return [\n index * angle - angle / 2 - angleOffset,\n (index + 1) * angle - angle / 2 - angleOffset,\n radius,\n ];\n }\n\n handlerOnClick(e) {\n e.stopPropagation();\n\n const { rootRef, size, onClick } = this.asProps;\n\n if (!onClick) return;\n\n const [pointX, pointY] = eventToPoint(e, rootRef.current);\n const r = Math.min(size[0], size[1]) / 2;\n const centerX = pointX - r;\n const centerY = pointY - r;\n\n const index = this.getIndex([centerX, centerY]);\n\n if (index === null) return;\n\n onClick(index, e);\n }\n\n render() {\n const SRadar = this.Element;\n const { Children, styles, size, data, offset } = this.asProps;\n const [width, height] = size;\n\n this.asProps.dataHintsHandler.establishDataType('indexed-groups');\n\n let dataKey;\n React.Children.toArray(getOriginChildren(Children)).forEach((child) => {\n if (React.isValidElement(child) && child.type === Radar.Axis) {\n dataKey = child.props.dataKey;\n }\n });\n if (dataKey) {\n if (offset === undefined) {\n // +5 because font might not be loaded and just in case)\n this.computeOffset = computeTextWidth(data[dataKey], this.textSize) + MINIMUM_OFFSET;\n }\n this.categoriesKey = dataKey;\n }\n\n return sstyled(styles)(\n <SRadar\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / 2})`}\n onClickCapture={this.handlerOnClick.bind(this)}\n />,\n );\n }\n}\n\nclass PolygonRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ scale, curve = curveLinearClosed, size, offset, angleOffset }) => {\n scale.range([0, Math.min(size[0], size[1]) / 2 - offset]);\n\n return {\n d3: lineRadial()\n .curve(curve)\n .radius((d) => {\n return scale(d || 0);\n })\n .angle((_d, i, data) => {\n return (i / data.length) * 2 * Math.PI - angleOffset;\n }),\n };\n };\n\n getDotsProps() {\n const {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n } = this.asProps;\n return {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n categoryKey: dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n };\n }\n\n getLineProps() {\n const { d3, data, color, resolveColor, transparent } = this.asProps;\n return {\n data,\n color,\n resolveColor,\n transparent,\n d3,\n };\n }\n\n render() {\n const {\n Element: SPolygon,\n styles,\n d3,\n data,\n color,\n resolveColor,\n fill,\n uid,\n patterns,\n } = this.asProps;\n return (\n <>\n {sstyled(styles)(\n <SPolygon\n render='path'\n d={d3(data)}\n color={resolveColor(fill || color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(fill || color)}\n patterns={patterns}\n />\n )}\n </>\n );\n }\n}\n\nfunction PolygonLine(props) {\n const { Element: SPolygonLine, styles, d3, color, resolveColor, data, transparent } = props;\n return sstyled(styles)(\n <SPolygonLine\n render='path'\n d={d3(data)}\n color={resolveColor(color)}\n transparent={transparent}\n />,\n );\n}\n\nfunction PolygonDots(props) {\n const {\n Element: SPolygonDot,\n styles,\n color,\n resolveColor,\n data,\n scale,\n transparent,\n categoryKey,\n angleOffset,\n patterns,\n } = props;\n return data.map((value, i) => {\n if (value === null || value === undefined) return;\n const radius = scale(value);\n props.dataHintsHandler.describeGroupedValues(categoryKey, `${categoryKey}.${i}`);\n const [cx, cy] = getRadianPosition(i, radius, data.length, angleOffset);\n\n if (!patterns) {\n return sstyled(styles)(\n <SPolygonDot\n render='circle'\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n cx={cx}\n cy={cy}\n />,\n );\n }\n\n const patternKey = color || getChartDefaultColorName(0);\n const [width, height] = getPatternSymbolSize({\n patternKey,\n patterns,\n });\n\n return sstyled(styles)(\n <SPolygonDot\n render={PatternSymbol}\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n x={cx - width / 2}\n y={cy - height / 2}\n />,\n );\n });\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ data, dataKey }) => {\n const categories = data[dataKey];\n return {\n categories,\n };\n };\n\n unsubscribeTooltipVisible = null;\n\n state = {\n activeLineIndex: null,\n };\n\n createLineRadial(radius, total) {\n return lineRadial()\n .curve(curveLinearClosed)\n .radius(() => {\n return radius;\n })\n .angle((_d, i) => {\n return (i / total) * 2 * Math.PI;\n });\n }\n\n getTicksProps({ tickSize = 100 }) {\n const { data, offset, categories, size, type } = this.asProps;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return {\n type,\n data,\n categories,\n ticks: getTicks(tickSize, radius),\n offset,\n d3: this.createLineRadial(radius, categories.length),\n };\n }\n\n getLabelsProps({ labelOffset = 10 }) {\n const { offset, categories, textSize, angleOffset } = this.asProps;\n return {\n categories,\n textSize,\n offset: offset - labelOffset,\n angleOffset,\n };\n }\n\n handleTooltipRenderingProps = (_anchorProps, { index }) => {\n this.setState({ activeLineIndex: index });\n };\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'setTooltipRenderingProps',\n this.handleTooltipRenderingProps,\n );\n }\n\n componentWillUnmount() {\n this.unsubscribeTooltipVisible?.();\n }\n\n render() {\n const { Element: SAxis, styles, categories, size, offset, type, angleOffset } = this.asProps;\n const { activeLineIndex } = this.state;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n const total = categories.length;\n\n return sstyled(styles)(\n <>\n {type === 'circle'\n ? (\n <SAxis render='circle' cx={0} cy={0} r={radius} />\n )\n : (\n <SAxis render='path' d={this.createLineRadial(radius, total)(categories)} />\n )}\n {categories.map((_category, i) => {\n const [x, y] = getRadianPosition(i, radius, total, angleOffset);\n const { className } = sstyled(styles).cn('SAxisLine', {\n active: activeLineIndex === i,\n });\n return <line key={i} x1={0} y1={0} x2={x} y2={y} className={className} />;\n })}\n </>,\n );\n }\n}\n\nfunction AxisTicks(props) {\n const { Element: SAxisTick, styles, size, ticks, d3, categories, offset, type } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return ticks.map((tick, i) => {\n d3.radius(() => radius * tick);\n return sstyled(styles)(\n type === 'circle'\n ? (\n <SAxisTick key={i} render='circle' cx={0} cy={0} r={radius * tick} />\n )\n : (\n <SAxisTick render='path' key={i} d={d3(categories)} />\n ),\n );\n });\n}\n\nfunction AxisLabels(props) {\n const { Element: SAxisLabel, styles, textSize, size, offset, categories, angleOffset } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return categories.map((category, i) => {\n const [x, y] = getRadianPosition(i, radius, categories.length, angleOffset);\n const [xDirection, yDirection] = getLabelPlacement(i, categories.length, angleOffset);\n if (typeof category === 'string') {\n props.dataHintsHandler.labelKey('value', i, category);\n\n const lines = category.split('\\n');\n return sstyled(styles)(\n <SAxisLabel\n key={i}\n render='text'\n childrenPosition='inside'\n x={x}\n y={y}\n xDirection={xDirection}\n yDirection={yDirection}\n >\n {lines.map((lineText, lineIndex) => (\n <tspan\n x={x}\n y={y + (lineIndex - (lines.length - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </tspan>\n ))}\n </SAxisLabel>,\n );\n }\n if (React.isValidElement(category)) {\n const { width = 0, height = 0 } = category?.props ?? {};\n const [xOffset, yOffset] = getLabelOffsetPosition(xDirection, yDirection, width, height);\n return cloneElement(category, {\n key: i,\n x: x - xOffset,\n y: y - yOffset,\n });\n }\n });\n}\n\nclass Hover extends Component {\n state = {\n index: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n unsubscribeMouseMoveRoot = null;\n unsubscribeMouseLeaveRoot = null;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, size, rootRef, patterns, getIndex, plotId } = this.asProps;\n const point = eventToPoint(e, rootRef.current);\n const diam = Math.min(size[0], size[1]);\n const centerX = point[0] - diam / 2;\n const centerY = point[1] - diam / 2;\n const { clientX, clientY } = e;\n\n const index = getIndex([centerX, centerY]);\n\n this.setState({ index }, () => {\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, {}, { index, patterns });\n eventEmitter.emit(`setTooltipVisible_${plotId}`, index !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n this.setState({ index: null }, () => {\n this.asProps.eventEmitter.emit(`setTooltipVisible_${this.asProps.plotId}`, false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveRoot', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveRoot',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n\n render() {\n const { styles, type, getPie, getPolygon } = this.asProps;\n const { index } = this.state;\n const SPieRect = this.Element;\n\n if (index !== null) {\n if (type === 'circle') {\n const [startAngle, endAngle, radius] = getPie(index);\n const circle = arc()\n .innerRadius(0)\n .outerRadius(radius)\n .startAngle(startAngle)\n .endAngle(endAngle);\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={circle()}\n />,\n );\n } else {\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={line()(getPolygon(index))}\n />,\n );\n }\n }\n\n return null;\n }\n}\n\nconst Axis = createElement(AxisRoot, {\n Ticks: AxisTicks,\n Labels: AxisLabels,\n});\n\nconst Polygon = createElement(PolygonRoot, {\n Line: PolygonLine,\n Dots: PolygonDots,\n});\n\nconst RadarTooltip = (props) => {\n const SRadarTooltip = Root;\n return sstyled(props.styles)(\n <SRadarTooltip render={Tooltip} tag={Radar.Hover} excludeAnchorProps />,\n );\n};\n\nconst Radar = createElement(RadarRoot, {\n Axis,\n Polygon,\n Hover,\n Tooltip: [RadarTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Radar;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Radar.js","names":["_core","require","_canUseDOM","_interopRequireDefault","_getOriginChildren","_rafTrottle","_uniqueID","_d3Polygon","_d3Shape","_react","_interopRequireWildcard","_createElement","_Pattern","_Tooltip","_utils","style","sstyled","insert","clampAngle","angle","Math","PI","getBoxAxesValue","i","range","axes","total","angleOffset","func","sin","cos","getRadianPosition","getLabelXPlacement","getLabelYPlacement","getLabelPlacement","computeTextWidth","texts","textSize","defaultWidth","arguments","length","undefined","defaultHeight","widths","map","text","measureText","React","isValidElement","_text$props","_text$props2","max","props","width","height","apply","_toConsumableArray2","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","_t","push","pieContains","_ref11","_ref12","_ref13","_slicedToArray2","startAngle","endAngle","_ref14","x","y","distance","sqrt","pow","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","concat","MINIMUM_OFFSET","RadarRoot","_Component","_this","_classCallCheck2","_len","args","_key","_callSuper2","_defineProperty2","_inherits2","_createClass2","key","get","_this$asProps","asProps","id","uid","offset","computeOffset","value","getAxisProps","type","getPolygonProps","_ref15","index","dataKey","_this$asProps2","data","scale","patterns","color","getChartDefaultColorName","getHoverProps","categories","categoriesKey","getIndex","bind","getPolygon","getPie","point","_this2","_this$asProps3","findIndex","_c","polygonContains","_this$asProps4","size","diam","min","prevIndex","nextIndex","_getRadianPosition","_getRadianPosition2","prevX1","prevY1","_getRadianPosition3","_getRadianPosition4","_getRadianPosition5","_getRadianPosition6","nextX1","nextY1","_this$asProps5","handlerOnClick","e","stopPropagation","_this$asProps6","rootRef","onClick","_eventToPoint","eventToPoint","current","_eventToPoint2","pointX","pointY","r","centerX","centerY","render","_ref2","SRadar","Element","_this$asProps7","Children","styles","_size","dataHintsHandler","establishDataType","toArray","getOriginChildren","forEach","child","Radar","Axis","createElement","cn","Component","uniqueIDEnhancement","PolygonRoot","_Component2","getDotsProps","_this$asProps8","resolveColor","transparent","categoryKey","getLineProps","_this$asProps9","d3","_ref3","_this$asProps0","SPolygon","fill","Fragment","PatternFill","_ref20","_ref20$curve","curve","curveLinearClosed","lineRadial","d","_d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","_ref6","describeGroupedValues","_getRadianPosition7","_getRadianPosition8","cx","cy","_ref5","patternKey","_getPatternSymbolSize","getPatternSymbolSize","_getPatternSymbolSize2","PatternSymbol","AxisRoot","_Component3","_this3","_len2","_key2","activeLineIndex","_anchorProps","_ref16","setState","createLineRadial","getTicksProps","_ref17","_ref17$tickSize","_this$asProps1","getLabelsProps","_ref18","_ref18$labelOffset","labelOffset","_this$asProps10","componentDidMount","eventEmitter","unsubscribeTooltipVisible","subscribe","handleTooltipRenderingProps","componentWillUnmount","_this$unsubscribeTool","call","_ref7","_this$asProps11","SAxis","state","_category","_getRadianPosition9","_getRadianPosition0","_sstyled$cn","active","className","x1","y1","x2","y2","_ref21","AxisTicks","SAxisTick","tick","_ref8","AxisLabels","SAxisLabel","category","_getRadianPosition1","_getRadianPosition10","_getLabelPlacement","_getLabelPlacement2","_ref9","labelKey","lines","split","lineText","lineIndex","_category$props","_ref19","_ref19$width","_ref19$height","_getLabelOffsetPositi","_getLabelOffsetPositi2","cloneElement","Hover","_Component4","_this4","_len3","_key3","canUseDOM","document","trottle","_this4$asProps","plotId","clientX","clientY","emit","generateGetBoundingClientRect","top","right","bottom","left","_this5","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","_this$asProps12","SPieRect","_ref0","_getPie","_getPie2","circle","arc","innerRadius","outerRadius","_ref1","line","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref10","SRadarTooltip","Tooltip","_objectSpread2","assignProps","_______childrenComponents","_default","exports"],"sources":["../../src/Radar.jsx"],"sourcesContent":["import { Component, sstyled, Root } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';\nimport trottle from '@semcore/core/lib/utils/rafTrottle';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { polygonContains } from 'd3-polygon';\nimport { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';\nimport React, { cloneElement } from 'react';\n\nimport createElement from './createElement';\nimport { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';\nimport style from './style/radar.shadow.css';\nimport Tooltip from './Tooltip';\nimport { eventToPoint, getChartDefaultColorName, measureText } from './utils';\n\nconst clampAngle = (angle) => {\n angle = angle % (2 * Math.PI);\n if (angle < 0) angle += 2 * Math.PI;\n return angle;\n};\n\nfunction getBoxAxesValue(i, range, axes, total, angleOffset) {\n const func = axes === 'y' ? Math.sin : Math.cos;\n\n const angle = clampAngle(((total - i) * 2 * Math.PI) / total + angleOffset);\n return range * (1 - func(angle)) - range;\n}\n\nfunction getRadianPosition(i, range, total, angleOffset) {\n return [\n getBoxAxesValue(i, range, 'y', total, angleOffset),\n getBoxAxesValue(i, range, 'x', total, angleOffset),\n ];\n}\n\nconst getLabelXPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'middle';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'middle';\n\n return angle < Math.PI ? 'start' : 'end';\n};\nconst getLabelYPlacement = (i, total, angleOffset) => {\n const angle = clampAngle((i / total) * (Math.PI * 2) - angleOffset);\n if (angle >= Math.PI + Math.PI * (8 / 9) || angle <= Math.PI * (1 / 9)) return 'alphabetic';\n if (angle >= Math.PI * (8 / 9) && angle <= Math.PI + Math.PI * (1 / 9)) return 'mathematical';\n\n return 'middle';\n};\n\nfunction getLabelPlacement(i, total, angleOffset) {\n return [getLabelXPlacement(i, total, angleOffset), getLabelYPlacement(i, total, angleOffset)];\n}\n\nfunction computeTextWidth(texts, textSize, defaultWidth = 50, defaultHeight = 20) {\n const widths = texts.map((text) => {\n if (typeof text === 'string') {\n return measureText(text, textSize);\n }\n if (React.isValidElement(text)) {\n // @ts-ignore\n return Math.max(text.props?.width || defaultWidth, text.props?.height || defaultHeight);\n }\n return defaultWidth;\n });\n return Math.max(...widths);\n}\n\nfunction getTicks(tickSize, radius) {\n let ticks = 0;\n while (Math.trunc(radius / (tickSize / 2)) > ticks) {\n ticks += 1;\n }\n return [...Array(ticks).keys()].reduce((ticks, _t, i, total) => {\n if (i) ticks.push(i / total.length);\n return ticks;\n }, []);\n}\n\nfunction pieContains([startAngle, endAngle, radius], [x, y]) {\n const distance = Math.sqrt(x ** 2 + y ** 2);\n if (distance > radius) return false;\n\n startAngle = clampAngle(startAngle);\n endAngle = clampAngle(endAngle);\n startAngle = startAngle < endAngle ? startAngle : startAngle - 2 * Math.PI;\n\n const angle = clampAngle(Math.atan2(y, x) + Math.PI / 2);\n const prevAngle = angle - Math.PI * 2;\n const nextAngle = angle + Math.PI * 2;\n\n if (angle > startAngle && angle < endAngle) return true;\n if (prevAngle > startAngle && prevAngle < endAngle) return true;\n if (nextAngle > startAngle && nextAngle < endAngle) return true;\n return false;\n}\n\nexport function getLabelOffsetPosition(xDirection, yDirection, width, height) {\n let xOffset = 0;\n let yOffset = 0;\n switch (`${xDirection}-${yDirection}`) {\n case 'middle-alphabetic':\n yOffset = height / 2;\n break;\n case 'start-middle':\n xOffset = -width / 2;\n break;\n case 'middle-mathematical':\n yOffset = -height / 2;\n break;\n case 'end-middle':\n xOffset = width / 2;\n break;\n }\n return [xOffset + width / 2, yOffset + height / 2];\n}\n\nconst MINIMUM_OFFSET = 5;\n\nclass RadarRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n computeOffset = 0;\n\n categoriesKey = null;\n\n static defaultProps = {\n type: 'polygon',\n angleOffset: 0,\n };\n\n get id() {\n const { id, uid } = this.asProps;\n return id || uid;\n }\n\n get offset() {\n const { offset } = this.asProps;\n return offset ?? this.computeOffset;\n }\n\n get textSize() {\n const { textSize } = this.asProps;\n return textSize ?? 12;\n }\n\n getAxisProps() {\n return {\n offset: this.offset,\n textSize: this.textSize,\n type: this.asProps.type,\n angleOffset: this.asProps.angleOffset,\n };\n }\n\n getPolygonProps({ dataKey }, index) {\n const { data, scale, angleOffset, uid, patterns } = this.asProps;\n\n return {\n offset: this.offset,\n data: data[dataKey] || [],\n scale,\n angleOffset,\n color: getChartDefaultColorName(index),\n uid: `${uid}-${index}`,\n patterns,\n };\n }\n\n getHoverProps() {\n return {\n type: this.asProps.type,\n offset: this.offset,\n categories: this.asProps.data[this.categoriesKey],\n angleOffset: this.asProps.angleOffset,\n getIndex: this.getIndex.bind(this),\n getPolygon: this.getPolygon.bind(this),\n getPie: this.getPie.bind(this),\n };\n }\n\n getIndex(point) {\n const { data, type } = this.asProps;\n const categories = data[this.categoriesKey];\n\n let index;\n if (type === 'circle') {\n index = categories.findIndex((_c, i) => pieContains(this.getPie(i), point));\n } else {\n index = categories.findIndex((_c, i) => polygonContains(this.getPolygon(i), point));\n }\n return index === -1 ? null : index;\n }\n\n getPolygon(index) {\n const { data, size, angleOffset } = this.asProps;\n const offset = this.offset;\n const categories = data[this.categoriesKey];\n const total = categories.length;\n const diam = Math.min(size[0], size[1]);\n const radius = diam / 2 - offset;\n const prevIndex = (index - 1 + total) % total;\n const nextIndex = (index + 1 + total) % total;\n const [prevX1, prevY1] = getRadianPosition(prevIndex, radius, total, angleOffset);\n const [x, y] = getRadianPosition(index, radius, total, angleOffset);\n const [nextX1, nextY1] = getRadianPosition(nextIndex, radius, total, angleOffset);\n return [\n [0, 0],\n [(prevX1 + x) / 2, (prevY1 + y) / 2],\n [x, y],\n [(nextX1 + x) / 2, (nextY1 + y) / 2],\n ];\n }\n\n getPie(index) {\n const { data, size, angleOffset } = this.asProps;\n const categories = data[this.categoriesKey];\n const offset = this.offset;\n const angle = (Math.PI * 2) / categories.length;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return [\n index * angle - angle / 2 - angleOffset,\n (index + 1) * angle - angle / 2 - angleOffset,\n radius,\n ];\n }\n\n handlerOnClick(e) {\n e.stopPropagation();\n\n const { rootRef, size, onClick } = this.asProps;\n\n if (!onClick) return;\n\n const [pointX, pointY] = eventToPoint(e, rootRef.current);\n const r = Math.min(size[0], size[1]) / 2;\n const centerX = pointX - r;\n const centerY = pointY - r;\n\n const index = this.getIndex([centerX, centerY]);\n\n if (index === null) return;\n\n onClick(index, e);\n }\n\n render() {\n const SRadar = this.Element;\n const { Children, styles, size, data, offset } = this.asProps;\n const [width, height] = size;\n\n this.asProps.dataHintsHandler.establishDataType('indexed-groups');\n\n let dataKey;\n React.Children.toArray(getOriginChildren(Children)).forEach((child) => {\n if (React.isValidElement(child) && child.type === Radar.Axis) {\n dataKey = child.props.dataKey;\n }\n });\n if (dataKey) {\n if (offset === undefined) {\n // +5 because font might not be loaded and just in case)\n this.computeOffset = computeTextWidth(data[dataKey], this.textSize) + MINIMUM_OFFSET;\n }\n this.categoriesKey = dataKey;\n }\n\n return sstyled(styles)(\n <SRadar\n aria-hidden\n id={this.id}\n render='g'\n childrenPosition='inside'\n transform={`translate(${width / 2},${height / 2})`}\n onClickCapture={this.handlerOnClick.bind(this)}\n />,\n );\n }\n}\n\nclass PolygonRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ scale, curve = curveLinearClosed, size, offset, angleOffset }) => {\n scale.range([0, Math.min(size[0], size[1]) / 2 - offset]);\n\n return {\n d3: lineRadial()\n .curve(curve)\n .radius((d) => {\n return scale(d || 0);\n })\n .angle((_d, i, data) => {\n return (i / data.length) * 2 * Math.PI - angleOffset;\n }),\n };\n };\n\n getDotsProps() {\n const {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n } = this.asProps;\n return {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n categoryKey: dataKey,\n dataHintsHandler,\n angleOffset,\n patterns,\n };\n }\n\n getLineProps() {\n const { d3, data, color, resolveColor, transparent } = this.asProps;\n return {\n data,\n color,\n resolveColor,\n transparent,\n d3,\n };\n }\n\n render() {\n const {\n Element: SPolygon,\n styles,\n d3,\n data,\n color,\n resolveColor,\n fill,\n uid,\n patterns,\n } = this.asProps;\n return (\n <>\n {sstyled(styles)(\n <SPolygon\n render='path'\n d={d3(data)}\n color={resolveColor(fill || color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(fill || color)}\n patterns={patterns}\n />\n )}\n </>\n );\n }\n}\n\nfunction PolygonLine(props) {\n const { Element: SPolygonLine, styles, d3, color, resolveColor, data, transparent } = props;\n return sstyled(styles)(\n <SPolygonLine\n render='path'\n d={d3(data)}\n color={resolveColor(color)}\n transparent={transparent}\n />,\n );\n}\n\nfunction PolygonDots(props) {\n const {\n Element: SPolygonDot,\n styles,\n color,\n resolveColor,\n data,\n scale,\n transparent,\n categoryKey,\n angleOffset,\n patterns,\n } = props;\n return data.map((value, i) => {\n if (value === null || value === undefined) return;\n const radius = scale(value);\n props.dataHintsHandler.describeGroupedValues(categoryKey, `${categoryKey}.${i}`);\n const [cx, cy] = getRadianPosition(i, radius, data.length, angleOffset);\n\n if (!patterns) {\n return sstyled(styles)(\n <SPolygonDot\n render='circle'\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n cx={cx}\n cy={cy}\n />,\n );\n }\n\n const patternKey = color || getChartDefaultColorName(0);\n const [width, height] = getPatternSymbolSize({\n patternKey,\n patterns,\n });\n\n return sstyled(styles)(\n <SPolygonDot\n render={PatternSymbol}\n color={resolveColor(color)}\n transparent={transparent}\n patternKey={color}\n key={`${i}`}\n x={cx - width / 2}\n y={cy - height / 2}\n />,\n );\n });\n}\n\nclass AxisRoot extends Component {\n static displayName = 'Polygon';\n static style = style;\n\n static defaultProps = ({ data, dataKey }) => {\n const categories = data[dataKey];\n return {\n categories,\n };\n };\n\n unsubscribeTooltipVisible = null;\n\n state = {\n activeLineIndex: null,\n };\n\n createLineRadial(radius, total) {\n return lineRadial()\n .curve(curveLinearClosed)\n .radius(() => {\n return radius;\n })\n .angle((_d, i) => {\n return (i / total) * 2 * Math.PI;\n });\n }\n\n getTicksProps({ tickSize = 100 }) {\n const { data, offset, categories, size, type } = this.asProps;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n return {\n type,\n data,\n categories,\n ticks: getTicks(tickSize, radius),\n offset,\n d3: this.createLineRadial(radius, categories.length),\n };\n }\n\n getLabelsProps({ labelOffset = 10 }) {\n const { offset, categories, textSize, angleOffset } = this.asProps;\n return {\n categories,\n textSize,\n offset: offset - labelOffset,\n angleOffset,\n };\n }\n\n handleTooltipRenderingProps = (_anchorProps, { index }) => {\n this.setState({ activeLineIndex: index });\n };\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'setTooltipRenderingProps',\n this.handleTooltipRenderingProps,\n );\n }\n\n componentWillUnmount() {\n this.unsubscribeTooltipVisible?.();\n }\n\n render() {\n const { Element: SAxis, styles, categories, size, offset, type, angleOffset } = this.asProps;\n const { activeLineIndex } = this.state;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n const total = categories.length;\n\n return sstyled(styles)(\n <>\n {type === 'circle'\n ? (\n <SAxis render='circle' cx={0} cy={0} r={radius} />\n )\n : (\n <SAxis render='path' d={this.createLineRadial(radius, total)(categories)} />\n )}\n {categories.map((_category, i) => {\n const [x, y] = getRadianPosition(i, radius, total, angleOffset);\n const { className } = sstyled(styles).cn('SAxisLine', {\n active: activeLineIndex === i,\n });\n return <line key={i} x1={0} y1={0} x2={x} y2={y} className={className} />;\n })}\n </>,\n );\n }\n}\n\nfunction AxisTicks(props) {\n const { Element: SAxisTick, styles, size, ticks, d3, categories, offset, type } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return ticks.map((tick, i) => {\n d3.radius(() => radius * tick);\n return sstyled(styles)(\n type === 'circle'\n ? (\n <SAxisTick key={i} render='circle' cx={0} cy={0} r={radius * tick} />\n )\n : (\n <SAxisTick render='path' key={i} d={d3(categories)} />\n ),\n );\n });\n}\n\nfunction AxisLabels(props) {\n const { Element: SAxisLabel, styles, textSize, size, offset, categories, angleOffset } = props;\n const radius = Math.min(size[0], size[1]) / 2 - offset;\n\n return categories.map((category, i) => {\n const [x, y] = getRadianPosition(i, radius, categories.length, angleOffset);\n const [xDirection, yDirection] = getLabelPlacement(i, categories.length, angleOffset);\n if (typeof category === 'string') {\n props.dataHintsHandler.labelKey('value', i, category);\n\n const lines = category.split('\\n');\n return sstyled(styles)(\n <SAxisLabel\n key={i}\n render='text'\n childrenPosition='inside'\n x={x}\n y={y}\n xDirection={xDirection}\n yDirection={yDirection}\n >\n {lines.map((lineText, lineIndex) => (\n <tspan\n x={x}\n y={y + (lineIndex - (lines.length - 1) / 2) * textSize}\n key={`#${lineIndex}-${lineText}`}\n >\n {lineText}\n </tspan>\n ))}\n </SAxisLabel>,\n );\n }\n if (React.isValidElement(category)) {\n const { width = 0, height = 0 } = category?.props ?? {};\n const [xOffset, yOffset] = getLabelOffsetPosition(xDirection, yDirection, width, height);\n return cloneElement(category, {\n key: i,\n x: x - xOffset,\n y: y - yOffset,\n });\n }\n });\n}\n\nclass Hover extends Component {\n state = {\n index: null,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n unsubscribeMouseMoveRoot = null;\n unsubscribeMouseLeaveRoot = null;\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, size, rootRef, patterns, getIndex, plotId } = this.asProps;\n const point = eventToPoint(e, rootRef.current);\n const diam = Math.min(size[0], size[1]);\n const centerX = point[0] - diam / 2;\n const centerY = point[1] - diam / 2;\n const { clientX, clientY } = e;\n\n const index = getIndex([centerX, centerY]);\n\n this.setState({ index }, () => {\n eventEmitter.emit(`setTooltipPosition_${plotId}`, clientX, clientY);\n eventEmitter.emit(`setTooltipRenderingProps_${plotId}`, {}, { index, patterns });\n eventEmitter.emit(`setTooltipVisible_${plotId}`, index !== null);\n });\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n this.setState({ index: null }, () => {\n this.asProps.eventEmitter.emit(`setTooltipVisible_${this.asProps.plotId}`, false);\n });\n });\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeMouseMoveRoot = eventEmitter.subscribe('onMouseMoveRoot', (e) => {\n e.persist();\n this.handlerMouseMoveRoot(e);\n });\n this.unsubscribeMouseLeaveRoot = eventEmitter.subscribe(\n 'onMouseLeaveRoot',\n this.handlerMouseLeaveRoot,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeMouseMoveRoot) {\n this.unsubscribeMouseMoveRoot();\n }\n if (this.unsubscribeMouseLeaveRoot) {\n this.unsubscribeMouseLeaveRoot();\n }\n }\n\n render() {\n const { styles, type, getPie, getPolygon } = this.asProps;\n const { index } = this.state;\n const SPieRect = this.Element;\n\n if (index !== null) {\n if (type === 'circle') {\n const [startAngle, endAngle, radius] = getPie(index);\n const circle = arc()\n .innerRadius(0)\n .outerRadius(radius)\n .startAngle(startAngle)\n .endAngle(endAngle);\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={circle()}\n />,\n );\n } else {\n return sstyled(styles)(\n <SPieRect\n render='path'\n // @ts-ignore\n d={line()(getPolygon(index))}\n />,\n );\n }\n }\n\n return null;\n }\n}\n\nconst Axis = createElement(AxisRoot, {\n Ticks: AxisTicks,\n Labels: AxisLabels,\n});\n\nconst Polygon = createElement(PolygonRoot, {\n Line: PolygonLine,\n Dots: PolygonDots,\n});\n\nfunction RadarTooltip(props) {\n const SRadarTooltip = Root;\n return sstyled(props.styles)(\n <SRadarTooltip render={Tooltip} tag={Radar.Hover} excludeAnchorProps />,\n );\n}\n\nconst Radar = createElement(RadarRoot, {\n Axis,\n Polygon,\n Hover,\n Tooltip: [RadarTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Radar;\n"],"mappings":"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","ignoreList":[]}