@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":"Radar.js","names":["Component","sstyled","Root","canUseDOM","getOriginChildren","trottle","uniqueIDEnhancement","polygonContains","line","lineRadial","curveLinearClosed","arc","React","cloneElement","createElement","PatternFill","PatternSymbol","getPatternSymbolSize","style","_sstyled","insert","Tooltip","eventToPoint","getChartDefaultColorName","measureText","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","isValidElement","_text$props","_text$props2","max","props","width","height","apply","_toConsumableArray","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","_t","push","pieContains","_ref11","_ref12","_ref13","_slicedToArray","startAngle","endAngle","_ref14","x","y","distance","sqrt","pow","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","concat","MINIMUM_OFFSET","RadarRoot","_Component","_this","_classCallCheck","_len","args","_key","_callSuper","_defineProperty","_inherits","_createClass","key","get","_this$asProps","asProps","id","uid","offset","computeOffset","value","getAxisProps","type","getPolygonProps","_ref15","index","dataKey","_this$asProps2","data","scale","patterns","color","getHoverProps","categories","categoriesKey","getIndex","bind","getPolygon","getPie","point","_this2","_this$asProps3","findIndex","_c","_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","current","_eventToPoint2","pointX","pointY","r","centerX","centerY","render","_ref2","SRadar","Element","_this$asProps7","Children","styles","_size","dataHintsHandler","establishDataType","toArray","forEach","child","Radar","Axis","cn","PolygonRoot","_Component2","getDotsProps","_this$asProps8","resolveColor","transparent","categoryKey","getLineProps","_this$asProps9","d3","_ref3","_this$asProps0","SPolygon","fill","Fragment","_ref20","_ref20$curve","curve","d","_d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","_ref6","describeGroupedValues","_getRadianPosition7","_getRadianPosition8","cx","cy","_ref5","patternKey","_getPatternSymbolSize","_getPatternSymbolSize2","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","Hover","_Component4","_this4","_len3","_key3","document","_this4$asProps","plotId","clientX","clientY","emit","generateGetBoundingClientRect","top","right","bottom","left","_this5","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","_this$asProps12","SPieRect","_ref0","_getPie","_getPie2","circle","innerRadius","outerRadius","_ref1","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref10","SRadarTooltip","_objectSpread","_assignProps","_______childrenComponents"],"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":["Component","sstyled","Root","canUseDOM","getOriginChildren","trottle","uniqueIDEnhancement","polygonContains","line","lineRadial","curveLinearClosed","arc","React","cloneElement","createElement","PatternFill","PatternSymbol","getPatternSymbolSize","style","_sstyled","insert","Tooltip","eventToPoint","getChartDefaultColorName","measureText","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","isValidElement","_text$props","_text$props2","max","props","width","height","apply","_toConsumableArray","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","_t","push","pieContains","_ref11","_ref12","_ref13","_slicedToArray","startAngle","endAngle","_ref14","x","y","distance","sqrt","pow","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","concat","MINIMUM_OFFSET","RadarRoot","_Component","_this","_classCallCheck","_len","args","_key","_callSuper","_defineProperty","_inherits","_createClass","key","get","_this$asProps","asProps","id","uid","offset","computeOffset","value","getAxisProps","type","getPolygonProps","_ref15","index","dataKey","_this$asProps2","data","scale","patterns","color","getHoverProps","categories","categoriesKey","getIndex","bind","getPolygon","getPie","point","_this2","_this$asProps3","findIndex","_c","_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","current","_eventToPoint2","pointX","pointY","r","centerX","centerY","render","_ref2","SRadar","Element","_this$asProps7","Children","styles","_size","dataHintsHandler","establishDataType","toArray","forEach","child","Radar","Axis","cn","PolygonRoot","_Component2","getDotsProps","_this$asProps8","resolveColor","transparent","categoryKey","getLineProps","_this$asProps9","d3","_ref3","_this$asProps0","SPolygon","fill","Fragment","_ref20","_ref20$curve","curve","d","_d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","_ref6","describeGroupedValues","_getRadianPosition7","_getRadianPosition8","cx","cy","_ref5","patternKey","_getPatternSymbolSize","_getPatternSymbolSize2","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","Hover","_Component4","_this4","_len3","_key3","document","_this4$asProps","plotId","clientX","clientY","emit","generateGetBoundingClientRect","top","right","bottom","left","_this5","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","_this$asProps12","SPieRect","_ref0","_getPie","_getPie2","circle","innerRadius","outerRadius","_ref1","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref10","SRadarTooltip","_objectSpread","_assignProps","_______childrenComponents"],"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":";;;;;;;;;;AAAA,SAASA,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,eAAe;AACxD,OAAOC,SAAS,MAAM,mCAAmC;AACzD,OAAOC,iBAAiB,MAAM,2CAA2C;AACzE,OAAOC,OAAO,MAAM,oCAAoC;AACxD,OAAOC,mBAAmB,MAAM,kCAAkC;AAClE,SAASC,eAAe,QAAQ,YAAY;AAC5C,SAASC,IAAI,EAAEC,UAAU,EAAEC,iBAAiB,EAAEC,GAAG,QAAQ,UAAU;AACnE,OAAOC,KAAK,IAAIC,YAAY,QAAQ,OAAO;AAE3C,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,SAASC,WAAW,EAAEC,aAAa,EAAEC,oBAAoB,QAAQ,WAAW;AAAC;AAAA,IAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAE7E,OAAOC,OAAO,MAAM,WAAW;AAC/B,SAASC,YAAY,EAAEC,wBAAwB,EAAEC,WAAW,QAAQ,SAAS;AAE7E,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAK,EAAK;EAC5BA,KAAK,GAAGA,KAAK,IAAI,CAAC,GAAGC,IAAI,CAACC,EAAE,CAAC;EAC7B,IAAIF,KAAK,GAAG,CAAC,EAAEA,KAAK,IAAI,CAAC,GAAGC,IAAI,CAACC,EAAE;EACnC,OAAOF,KAAK;AACd,CAAC;AAED,SAASG,eAAeA,CAACC,CAAC,EAAEC,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAEC,WAAW,EAAE;EAC3D,IAAMC,IAAI,GAAGH,IAAI,KAAK,GAAG,GAAGL,IAAI,CAACS,GAAG,GAAGT,IAAI,CAACU,GAAG;EAE/C,IAAMX,KAAK,GAAGD,UAAU,CAAE,CAACQ,KAAK,GAAGH,CAAC,IAAI,CAAC,GAAGH,IAAI,CAACC,EAAE,GAAIK,KAAK,GAAGC,WAAW,CAAC;EAC3E,OAAOH,KAAK,IAAI,CAAC,GAAGI,IAAI,CAACT,KAAK,CAAC,CAAC,GAAGK,KAAK;AAC1C;AAEA,SAASO,iBAAiBA,CAACR,CAAC,EAAEC,KAAK,EAAEE,KAAK,EAAEC,WAAW,EAAE;EACvD,OAAO,CACLL,eAAe,CAACC,CAAC,EAAEC,KAAK,EAAE,GAAG,EAAEE,KAAK,EAAEC,WAAW,CAAC,EAClDL,eAAe,CAACC,CAAC,EAAEC,KAAK,EAAE,GAAG,EAAEE,KAAK,EAAEC,WAAW,CAAC,CACnD;AACH;AAEA,IAAMK,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIT,CAAC,EAAEG,KAAK,EAAEC,WAAW,EAAK;EACpD,IAAMR,KAAK,GAAGD,UAAU,CAAEK,CAAC,GAAGG,KAAK,IAAKN,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC,GAAGM,WAAW,CAAC;EACnE,IAAIR,KAAK,IAAIC,IAAI,CAACC,EAAE,GAAGD,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAIF,KAAK,IAAIC,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,QAAQ;EACvF,IAAIF,KAAK,IAAIC,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAIF,KAAK,IAAIC,IAAI,CAACC,EAAE,GAAGD,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,QAAQ;EAEvF,OAAOF,KAAK,GAAGC,IAAI,CAACC,EAAE,GAAG,OAAO,GAAG,KAAK;AAC1C,CAAC;AACD,IAAMY,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIV,CAAC,EAAEG,KAAK,EAAEC,WAAW,EAAK;EACpD,IAAMR,KAAK,GAAGD,UAAU,CAAEK,CAAC,GAAGG,KAAK,IAAKN,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC,GAAGM,WAAW,CAAC;EACnE,IAAIR,KAAK,IAAIC,IAAI,CAACC,EAAE,GAAGD,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAIF,KAAK,IAAIC,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,YAAY;EAC3F,IAAIF,KAAK,IAAIC,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAIF,KAAK,IAAIC,IAAI,CAACC,EAAE,GAAGD,IAAI,CAACC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,cAAc;EAE7F,OAAO,QAAQ;AACjB,CAAC;AAED,SAASa,iBAAiBA,CAACX,CAAC,EAAEG,KAAK,EAAEC,WAAW,EAAE;EAChD,OAAO,CAACK,kBAAkB,CAACT,CAAC,EAAEG,KAAK,EAAEC,WAAW,CAAC,EAAEM,kBAAkB,CAACV,CAAC,EAAEG,KAAK,EAAEC,WAAW,CAAC,CAAC;AAC/F;AAEA,SAASQ,gBAAgBA,CAACC,KAAK,EAAEC,QAAQ,EAAyC;EAAA,IAAvCC,YAAY,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IAAEG,aAAa,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAC9E,IAAMI,MAAM,GAAGP,KAAK,CAACQ,GAAG,CAAC,UAACC,IAAI,EAAK;IACjC,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;MAC5B,OAAO5B,WAAW,CAAC4B,IAAI,EAAER,QAAQ,CAAC;IACpC;IACA,iBAAIhC,KAAK,CAACyC,cAAc,CAACD,IAAI,CAAC,EAAE;MAAA,IAAAE,WAAA,EAAAC,YAAA;MAC9B;MACA,OAAO5B,IAAI,CAAC6B,GAAG,CAAC,EAAAF,WAAA,GAAAF,IAAI,CAACK,KAAK,cAAAH,WAAA,uBAAVA,WAAA,CAAYI,KAAK,KAAIb,YAAY,EAAE,EAAAU,YAAA,GAAAH,IAAI,CAACK,KAAK,cAAAF,YAAA,uBAAVA,YAAA,CAAYI,MAAM,KAAIV,aAAa,CAAC;IACzF;IACA,OAAOJ,YAAY;EACrB,CAAC,CAAC;EACF,OAAOlB,IAAI,CAAC6B,GAAG,CAAAI,KAAA,CAARjC,IAAI,EAAAkC,kBAAA,CAAQX,MAAM,EAAC;AAC5B;AAEA,SAASY,QAAQA,CAACC,QAAQ,EAAEC,MAAM,EAAE;EAClC,IAAIC,KAAK,GAAG,CAAC;EACb,OAAOtC,IAAI,CAACuC,KAAK,CAACF,MAAM,IAAID,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAGE,KAAK,EAAE;IAClDA,KAAK,IAAI,CAAC;EACZ;EACA,OAAOJ,kBAAA,CAAIM,KAAK,CAACF,KAAK,CAAC,CAACG,IAAI,CAAC,CAAC,EAAEC,MAAM,CAAC,UAACJ,KAAK,EAAEK,EAAE,EAAExC,CAAC,EAAEG,KAAK,EAAK;IAC9D,IAAIH,CAAC,EAAEmC,KAAK,CAACM,IAAI,CAACzC,CAAC,GAAGG,KAAK,CAACc,MAAM,CAAC;IACnC,OAAOkB,KAAK;EACd,CAAC,EAAE,EAAE,CAAC;AACR;AAEA,SAASO,WAAWA,CAAAC,MAAA,EAAAC,MAAA,EAAyC;EAAA,IAAAC,MAAA,GAAAC,cAAA,CAAAH,MAAA;IAAvCI,UAAU,GAAAF,MAAA;IAAEG,QAAQ,GAAAH,MAAA;IAAEX,MAAM,GAAAW,MAAA;EAAA,IAAAI,MAAA,GAAAH,cAAA,CAAAF,MAAA;IAAIM,CAAC,GAAAD,MAAA;IAAEE,CAAC,GAAAF,MAAA;EACxD,IAAMG,QAAQ,GAAGvD,IAAI,CAACwD,IAAI,CAACxD,IAAA,CAAAyD,GAAA,CAAAJ,CAAC,EAAI,CAAC,IAAArD,IAAA,CAAAyD,GAAA,CAAGH,CAAC,EAAI,CAAC,EAAC;EAC3C,IAAIC,QAAQ,GAAGlB,MAAM,EAAE,OAAO,KAAK;EAEnCa,UAAU,GAAGpD,UAAU,CAACoD,UAAU,CAAC;EACnCC,QAAQ,GAAGrD,UAAU,CAACqD,QAAQ,CAAC;EAC/BD,UAAU,GAAGA,UAAU,GAAGC,QAAQ,GAAGD,UAAU,GAAGA,UAAU,GAAG,CAAC,GAAGlD,IAAI,CAACC,EAAE;EAE1E,IAAMF,KAAK,GAAGD,UAAU,CAACE,IAAI,CAAC0D,KAAK,CAACJ,CAAC,EAAED,CAAC,CAAC,GAAGrD,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC;EACxD,IAAM0D,SAAS,GAAG5D,KAAK,GAAGC,IAAI,CAACC,EAAE,GAAG,CAAC;EACrC,IAAM2D,SAAS,GAAG7D,KAAK,GAAGC,IAAI,CAACC,EAAE,GAAG,CAAC;EAErC,IAAIF,KAAK,GAAGmD,UAAU,IAAInD,KAAK,GAAGoD,QAAQ,EAAE,OAAO,IAAI;EACvD,IAAIQ,SAAS,GAAGT,UAAU,IAAIS,SAAS,GAAGR,QAAQ,EAAE,OAAO,IAAI;EAC/D,IAAIS,SAAS,GAAGV,UAAU,IAAIU,SAAS,GAAGT,QAAQ,EAAE,OAAO,IAAI;EAC/D,OAAO,KAAK;AACd;AAEA,OAAO,SAASU,sBAAsBA,CAACC,UAAU,EAAEC,UAAU,EAAEhC,KAAK,EAAEC,MAAM,EAAE;EAC5E,IAAIgC,OAAO,GAAG,CAAC;EACf,IAAIC,OAAO,GAAG,CAAC;EACf,WAAAC,MAAA,CAAWJ,UAAU,OAAAI,MAAA,CAAIH,UAAU;IACjC,KAAK,mBAAmB;MACtBE,OAAO,GAAGjC,MAAM,GAAG,CAAC;MACpB;IACF,KAAK,cAAc;MACjBgC,OAAO,GAAG,CAACjC,KAAK,GAAG,CAAC;MACpB;IACF,KAAK,qBAAqB;MACxBkC,OAAO,GAAG,CAACjC,MAAM,GAAG,CAAC;MACrB;IACF,KAAK,YAAY;MACfgC,OAAO,GAAGjC,KAAK,GAAG,CAAC;MACnB;EACJ;EACA,OAAO,CAACiC,OAAO,GAAGjC,KAAK,GAAG,CAAC,EAAEkC,OAAO,GAAGjC,MAAM,GAAG,CAAC,CAAC;AACpD;AAEA,IAAMmC,cAAc,GAAG,CAAC;AAAC,IAEnBC,SAAS,0BAAAC,UAAA;EAAA,SAAAD,UAAA;IAAA,IAAAE,KAAA;IAAAC,eAAA,OAAAH,SAAA;IAAA,SAAAI,IAAA,GAAArD,SAAA,CAAAC,MAAA,EAAAqD,IAAA,OAAAjC,KAAA,CAAAgC,IAAA,GAAAE,IAAA,MAAAA,IAAA,GAAAF,IAAA,EAAAE,IAAA;MAAAD,IAAA,CAAAC,IAAA,IAAAvD,SAAA,CAAAuD,IAAA;IAAA;IAAAJ,KAAA,GAAAK,UAAA,OAAAP,SAAA,KAAAF,MAAA,CAAAO,IAAA;IAAAG,eAAA,CAAAN,KAAA,mBAKG,CAAC;IAAAM,eAAA,CAAAN,KAAA,mBAED,IAAI;IAAA,OAAAA,KAAA;EAAA;EAAAO,SAAA,CAAAT,SAAA,EAAAC,UAAA;EAAA,OAAAS,YAAA,CAAAV,SAAA;IAAAW,GAAA;IAAAC,GAAA,EAOpB,SAAAA,IAAA,EAAS;MACP,IAAAC,aAAA,GAAoB,IAAI,CAACC,OAAO;QAAxBC,EAAE,GAAAF,aAAA,CAAFE,EAAE;QAAEC,GAAG,GAAAH,aAAA,CAAHG,GAAG;MACf,OAAOD,EAAE,IAAIC,GAAG;IAClB;EAAC;IAAAL,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAa;MACX,IAAQK,MAAM,GAAK,IAAI,CAACH,OAAO,CAAvBG,MAAM;MACd,OAAOA,MAAM,aAANA,MAAM,cAANA,MAAM,GAAI,IAAI,CAACC,aAAa;IACrC;EAAC;IAAAP,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAe;MACb,IAAQ/D,QAAQ,GAAK,IAAI,CAACiE,OAAO,CAAzBjE,QAAQ;MAChB,OAAOA,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI,EAAE;IACvB;EAAC;IAAA8D,GAAA;IAAAQ,KAAA,EAED,SAAAC,YAAYA,CAAA,EAAG;MACb,OAAO;QACLH,MAAM,EAAE,IAAI,CAACA,MAAM;QACnBpE,QAAQ,EAAE,IAAI,CAACA,QAAQ;QACvBwE,IAAI,EAAE,IAAI,CAACP,OAAO,CAACO,IAAI;QACvBlF,WAAW,EAAE,IAAI,CAAC2E,OAAO,CAAC3E;MAC5B,CAAC;IACH;EAAC;IAAAwE,GAAA;IAAAQ,KAAA,EAED,SAAAG,eAAeA,CAAAC,MAAA,EAAcC,KAAK,EAAE;MAAA,IAAlBC,OAAO,GAAAF,MAAA,CAAPE,OAAO;MACvB,IAAAC,cAAA,GAAoD,IAAI,CAACZ,OAAO;QAAxDa,IAAI,GAAAD,cAAA,CAAJC,IAAI;QAAEC,KAAK,GAAAF,cAAA,CAALE,KAAK;QAAEzF,WAAW,GAAAuF,cAAA,CAAXvF,WAAW;QAAE6E,GAAG,GAAAU,cAAA,CAAHV,GAAG;QAAEa,QAAQ,GAAAH,cAAA,CAARG,QAAQ;MAE/C,OAAO;QACLZ,MAAM,EAAE,IAAI,CAACA,MAAM;QACnBU,IAAI,EAAEA,IAAI,CAACF,OAAO,CAAC,IAAI,EAAE;QACzBG,KAAK,EAALA,KAAK;QACLzF,WAAW,EAAXA,WAAW;QACX2F,KAAK,EAAEtG,wBAAwB,CAACgG,KAAK,CAAC;QACtCR,GAAG,KAAAlB,MAAA,CAAKkB,GAAG,OAAAlB,MAAA,CAAI0B,KAAK,CAAE;QACtBK,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAAlB,GAAA;IAAAQ,KAAA,EAED,SAAAY,aAAaA,CAAA,EAAG;MACd,OAAO;QACLV,IAAI,EAAE,IAAI,CAACP,OAAO,CAACO,IAAI;QACvBJ,MAAM,EAAE,IAAI,CAACA,MAAM;QACnBe,UAAU,EAAE,IAAI,CAAClB,OAAO,CAACa,IAAI,CAAC,IAAI,CAACM,aAAa,CAAC;QACjD9F,WAAW,EAAE,IAAI,CAAC2E,OAAO,CAAC3E,WAAW;QACrC+F,QAAQ,EAAE,IAAI,CAACA,QAAQ,CAACC,IAAI,CAAC,IAAI,CAAC;QAClCC,UAAU,EAAE,IAAI,CAACA,UAAU,CAACD,IAAI,CAAC,IAAI,CAAC;QACtCE,MAAM,EAAE,IAAI,CAACA,MAAM,CAACF,IAAI,CAAC,IAAI;MAC/B,CAAC;IACH;EAAC;IAAAxB,GAAA;IAAAQ,KAAA,EAED,SAAAe,QAAQA,CAACI,KAAK,EAAE;MAAA,IAAAC,MAAA;MACd,IAAAC,cAAA,GAAuB,IAAI,CAAC1B,OAAO;QAA3Ba,IAAI,GAAAa,cAAA,CAAJb,IAAI;QAAEN,IAAI,GAAAmB,cAAA,CAAJnB,IAAI;MAClB,IAAMW,UAAU,GAAGL,IAAI,CAAC,IAAI,CAACM,aAAa,CAAC;MAE3C,IAAIT,KAAK;MACT,IAAIH,IAAI,KAAK,QAAQ,EAAE;QACrBG,KAAK,GAAGQ,UAAU,CAACS,SAAS,CAAC,UAACC,EAAE,EAAE3G,CAAC;UAAA,OAAK0C,WAAW,CAAC8D,MAAI,CAACF,MAAM,CAACtG,CAAC,CAAC,EAAEuG,KAAK,CAAC;QAAA,EAAC;MAC7E,CAAC,MAAM;QACLd,KAAK,GAAGQ,UAAU,CAACS,SAAS,CAAC,UAACC,EAAE,EAAE3G,CAAC;UAAA,OAAKvB,eAAe,CAAC+H,MAAI,CAACH,UAAU,CAACrG,CAAC,CAAC,EAAEuG,KAAK,CAAC;QAAA,EAAC;MACrF;MACA,OAAOd,KAAK,KAAK,CAAC,CAAC,GAAG,IAAI,GAAGA,KAAK;IACpC;EAAC;IAAAb,GAAA;IAAAQ,KAAA,EAED,SAAAiB,UAAUA,CAACZ,KAAK,EAAE;MAChB,IAAAmB,cAAA,GAAoC,IAAI,CAAC7B,OAAO;QAAxCa,IAAI,GAAAgB,cAAA,CAAJhB,IAAI;QAAEiB,IAAI,GAAAD,cAAA,CAAJC,IAAI;QAAEzG,WAAW,GAAAwG,cAAA,CAAXxG,WAAW;MAC/B,IAAM8E,MAAM,GAAG,IAAI,CAACA,MAAM;MAC1B,IAAMe,UAAU,GAAGL,IAAI,CAAC,IAAI,CAACM,aAAa,CAAC;MAC3C,IAAM/F,KAAK,GAAG8F,UAAU,CAAChF,MAAM;MAC/B,IAAM6F,IAAI,GAAGjH,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC;MACvC,IAAM3E,MAAM,GAAG4E,IAAI,GAAG,CAAC,GAAG5B,MAAM;MAChC,IAAM8B,SAAS,GAAG,CAACvB,KAAK,GAAG,CAAC,GAAGtF,KAAK,IAAIA,KAAK;MAC7C,IAAM8G,SAAS,GAAG,CAACxB,KAAK,GAAG,CAAC,GAAGtF,KAAK,IAAIA,KAAK;MAC7C,IAAA+G,kBAAA,GAAyB1G,iBAAiB,CAACwG,SAAS,EAAE9E,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;QAAA+G,mBAAA,GAAArE,cAAA,CAAAoE,kBAAA;QAA1EE,MAAM,GAAAD,mBAAA;QAAEE,MAAM,GAAAF,mBAAA;MACrB,IAAAG,mBAAA,GAAe9G,iBAAiB,CAACiF,KAAK,EAAEvD,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;QAAAmH,mBAAA,GAAAzE,cAAA,CAAAwE,mBAAA;QAA5DpE,CAAC,GAAAqE,mBAAA;QAAEpE,CAAC,GAAAoE,mBAAA;MACX,IAAAC,mBAAA,GAAyBhH,iBAAiB,CAACyG,SAAS,EAAE/E,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;QAAAqH,mBAAA,GAAA3E,cAAA,CAAA0E,mBAAA;QAA1EE,MAAM,GAAAD,mBAAA;QAAEE,MAAM,GAAAF,mBAAA;MACrB,OAAO,CACL,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC,CAACL,MAAM,GAAGlE,CAAC,IAAI,CAAC,EAAE,CAACmE,MAAM,GAAGlE,CAAC,IAAI,CAAC,CAAC,EACpC,CAACD,CAAC,EAAEC,CAAC,CAAC,EACN,CAAC,CAACuE,MAAM,GAAGxE,CAAC,IAAI,CAAC,EAAE,CAACyE,MAAM,GAAGxE,CAAC,IAAI,CAAC,CAAC,CACrC;IACH;EAAC;IAAAyB,GAAA;IAAAQ,KAAA,EAED,SAAAkB,MAAMA,CAACb,KAAK,EAAE;MACZ,IAAAmC,cAAA,GAAoC,IAAI,CAAC7C,OAAO;QAAxCa,IAAI,GAAAgC,cAAA,CAAJhC,IAAI;QAAEiB,IAAI,GAAAe,cAAA,CAAJf,IAAI;QAAEzG,WAAW,GAAAwH,cAAA,CAAXxH,WAAW;MAC/B,IAAM6F,UAAU,GAAGL,IAAI,CAAC,IAAI,CAACM,aAAa,CAAC;MAC3C,IAAMhB,MAAM,GAAG,IAAI,CAACA,MAAM;MAC1B,IAAMtF,KAAK,GAAIC,IAAI,CAACC,EAAE,GAAG,CAAC,GAAImG,UAAU,CAAChF,MAAM;MAC/C,IAAMiB,MAAM,GAAGrC,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG3B,MAAM;MACtD,OAAO,CACLO,KAAK,GAAG7F,KAAK,GAAGA,KAAK,GAAG,CAAC,GAAGQ,WAAW,EACvC,CAACqF,KAAK,GAAG,CAAC,IAAI7F,KAAK,GAAGA,KAAK,GAAG,CAAC,GAAGQ,WAAW,EAC7C8B,MAAM,CACP;IACH;EAAC;IAAA0C,GAAA;IAAAQ,KAAA,EAED,SAAAyC,cAAcA,CAACC,CAAC,EAAE;MAChBA,CAAC,CAACC,eAAe,CAAC,CAAC;MAEnB,IAAAC,cAAA,GAAmC,IAAI,CAACjD,OAAO;QAAvCkD,OAAO,GAAAD,cAAA,CAAPC,OAAO;QAAEpB,IAAI,GAAAmB,cAAA,CAAJnB,IAAI;QAAEqB,OAAO,GAAAF,cAAA,CAAPE,OAAO;MAE9B,IAAI,CAACA,OAAO,EAAE;MAEd,IAAAC,aAAA,GAAyB3I,YAAY,CAACsI,CAAC,EAAEG,OAAO,CAACG,OAAO,CAAC;QAAAC,cAAA,GAAAvF,cAAA,CAAAqF,aAAA;QAAlDG,MAAM,GAAAD,cAAA;QAAEE,MAAM,GAAAF,cAAA;MACrB,IAAMG,CAAC,GAAG3I,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;MACxC,IAAM4B,OAAO,GAAGH,MAAM,GAAGE,CAAC;MAC1B,IAAME,OAAO,GAAGH,MAAM,GAAGC,CAAC;MAE1B,IAAM/C,KAAK,GAAG,IAAI,CAACU,QAAQ,CAAC,CAACsC,OAAO,EAAEC,OAAO,CAAC,CAAC;MAE/C,IAAIjD,KAAK,KAAK,IAAI,EAAE;MAEpByC,OAAO,CAACzC,KAAK,EAAEqC,CAAC,CAAC;IACnB;EAAC;IAAAlD,GAAA;IAAAQ,KAAA,EAED,SAAAuD,MAAMA,CAAA,EAAG;MAAA,IAAAC,KAAA;MACP,IAAMC,MAAM,GAAG,IAAI,CAACC,OAAO;MAC3B,IAAAC,cAAA,GAAiD,IAAI,CAAChE,OAAO;QAArDiE,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,MAAM,GAAAF,cAAA,CAANE,MAAM;QAAEpC,IAAI,GAAAkC,cAAA,CAAJlC,IAAI;QAAEjB,IAAI,GAAAmD,cAAA,CAAJnD,IAAI;QAAEV,MAAM,GAAA6D,cAAA,CAAN7D,MAAM;MAC5C,IAAAgE,KAAA,GAAApG,cAAA,CAAwB+D,IAAI;QAArBjF,KAAK,GAAAsH,KAAA;QAAErH,MAAM,GAAAqH,KAAA;MAEpB,IAAI,CAACnE,OAAO,CAACoE,gBAAgB,CAACC,iBAAiB,CAAC,gBAAgB,CAAC;MAEjE,IAAI1D,OAAO;MACX5G,KAAK,CAACkK,QAAQ,CAACK,OAAO,CAAC/K,iBAAiB,CAAC0K,QAAQ,CAAC,CAAC,CAACM,OAAO,CAAC,UAACC,KAAK,EAAK;QACrE,IAAI,aAAAzK,KAAK,CAACyC,cAAc,CAACgI,KAAK,CAAC,IAAIA,KAAK,CAACjE,IAAI,KAAKkE,KAAK,CAACC,IAAI,EAAE;UAC5D/D,OAAO,GAAG6D,KAAK,CAAC5H,KAAK,CAAC+D,OAAO;QAC/B;MACF,CAAC,CAAC;MACF,IAAIA,OAAO,EAAE;QACX,IAAIR,MAAM,KAAKhE,SAAS,EAAE;UACxB;UACA,IAAI,CAACiE,aAAa,GAAGvE,gBAAgB,CAACgF,IAAI,CAACF,OAAO,CAAC,EAAE,IAAI,CAAC5E,QAAQ,CAAC,GAAGkD,cAAc;QACtF;QACA,IAAI,CAACkC,aAAa,GAAGR,OAAO;MAC9B;MAEA,OAAAkD,KAAA,GAAOzK,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAAC6J,MAAM,EAAAD,KAAA,CAAAc,EAAA;QAAA;QAAA,MAED,IAAI,CAAC1E,EAAE;QAAA,UACJ,GAAG;QAAA,oBACO,QAAQ;QAAA,0BAAAjB,MAAA,CACDnC,KAAK,GAAG,CAAC,OAAAmC,MAAA,CAAIlC,MAAM,GAAG,CAAC;QAAA,kBAC/B,IAAI,CAACgG,cAAc,CAACzB,IAAI,CAAC,IAAI;MAAC,EAC/C,CAAC;IAEN;EAAC;AAAA,EAhKqBlI,SAAS;AAAAuG,eAAA,CAA3BR,SAAS,iBACQ,MAAM;AAAAQ,eAAA,CADvBR,SAAS,WAEE7E,KAAK;AAAAqF,eAAA,CAFhBR,SAAS,aAGI,CAACzF,mBAAmB,CAAC,CAAC,CAAC;AAAAiG,eAAA,CAHpCR,SAAS,kBASS;EACpBqB,IAAI,EAAE,SAAS;EACflF,WAAW,EAAE;AACf,CAAC;AAAA,IAuJGuJ,WAAW,0BAAAC,WAAA;EAAA,SAAAD,YAAA;IAAAvF,eAAA,OAAAuF,WAAA;IAAA,OAAAnF,UAAA,OAAAmF,WAAA,EAAA3I,SAAA;EAAA;EAAA0D,SAAA,CAAAiF,WAAA,EAAAC,WAAA;EAAA,OAAAjF,YAAA,CAAAgF,WAAA;IAAA/E,GAAA;IAAAQ,KAAA,EAmBf,SAAAyE,YAAYA,CAAA,EAAG;MACb,IAAAC,cAAA,GAUI,IAAI,CAAC/E,OAAO;QATda,IAAI,GAAAkE,cAAA,CAAJlE,IAAI;QACJC,KAAK,GAAAiE,cAAA,CAALjE,KAAK;QACLE,KAAK,GAAA+D,cAAA,CAAL/D,KAAK;QACLgE,YAAY,GAAAD,cAAA,CAAZC,YAAY;QACZC,WAAW,GAAAF,cAAA,CAAXE,WAAW;QACXtE,OAAO,GAAAoE,cAAA,CAAPpE,OAAO;QACPyD,gBAAgB,GAAAW,cAAA,CAAhBX,gBAAgB;QAChB/I,WAAW,GAAA0J,cAAA,CAAX1J,WAAW;QACX0F,QAAQ,GAAAgE,cAAA,CAARhE,QAAQ;MAEV,OAAO;QACLF,IAAI,EAAJA,IAAI;QACJC,KAAK,EAALA,KAAK;QACLE,KAAK,EAALA,KAAK;QACLgE,YAAY,EAAZA,YAAY;QACZC,WAAW,EAAXA,WAAW;QACXC,WAAW,EAAEvE,OAAO;QACpByD,gBAAgB,EAAhBA,gBAAgB;QAChB/I,WAAW,EAAXA,WAAW;QACX0F,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAAlB,GAAA;IAAAQ,KAAA,EAED,SAAA8E,YAAYA,CAAA,EAAG;MACb,IAAAC,cAAA,GAAuD,IAAI,CAACpF,OAAO;QAA3DqF,EAAE,GAAAD,cAAA,CAAFC,EAAE;QAAExE,IAAI,GAAAuE,cAAA,CAAJvE,IAAI;QAAEG,KAAK,GAAAoE,cAAA,CAALpE,KAAK;QAAEgE,YAAY,GAAAI,cAAA,CAAZJ,YAAY;QAAEC,WAAW,GAAAG,cAAA,CAAXH,WAAW;MAClD,OAAO;QACLpE,IAAI,EAAJA,IAAI;QACJG,KAAK,EAALA,KAAK;QACLgE,YAAY,EAAZA,YAAY;QACZC,WAAW,EAAXA,WAAW;QACXI,EAAE,EAAFA;MACF,CAAC;IACH;EAAC;IAAAxF,GAAA;IAAAQ,KAAA,EAED,SAAAuD,MAAMA,CAAA,EAAG;MAAA,IAAA0B,KAAA;MACP,IAAAC,cAAA,GAUI,IAAI,CAACvF,OAAO;QATLwF,QAAQ,GAAAD,cAAA,CAAjBxB,OAAO;QACPG,MAAM,GAAAqB,cAAA,CAANrB,MAAM;QACNmB,EAAE,GAAAE,cAAA,CAAFF,EAAE;QACFxE,IAAI,GAAA0E,cAAA,CAAJ1E,IAAI;QACJG,KAAK,GAAAuE,cAAA,CAALvE,KAAK;QACLgE,YAAY,GAAAO,cAAA,CAAZP,YAAY;QACZS,IAAI,GAAAF,cAAA,CAAJE,IAAI;QACJvF,GAAG,GAAAqF,cAAA,CAAHrF,GAAG;QACHa,QAAQ,GAAAwE,cAAA,CAARxE,QAAQ;MAEV,oBACEhH,KAAA,CAAAE,aAAA,CAAAF,KAAA,CAAA2L,QAAA,SAAAJ,KAAA,GACGlM,OAAO,CAAC8K,MAAM,CAAC,eACdnK,KAAA,CAAAE,aAAA,CAACuL,QAAQ,EAAAF,KAAA,CAAAX,EAAA;QAAA,UACA,MAAM;QAAA,KACVU,EAAE,CAACxE,IAAI,CAAC;QAAA,SACJmE,YAAY,CAACS,IAAI,IAAIzE,KAAK,CAAC;QAAA,WACzBD,QAAQ,WAAA/B,MAAA,CAAWkB,GAAG,iBAAc/D;MAAS,EACvD,CAAC,GAEH4E,QAAQ,iBACPhH,KAAA,CAAAE,aAAA,CAACC,WAAW,EAAAoL,KAAA,CAAAX,EAAA;QAAA,SAAA3F,MAAA,CACHkB,GAAG;QAAA,cACEc,KAAK;QAAA,SACVgE,YAAY,CAACS,IAAI,IAAIzE,KAAK,CAAC;QAAA,YACxBD;MAAQ,EACnB,CAEH,CAAC;IAEP;EAAC;AAAA,EAvFuB5H,SAAS;AAAAuG,eAAA,CAA7BkF,WAAW,iBACM,SAAS;AAAAlF,eAAA,CAD1BkF,WAAW,WAEAvK,KAAK;AAAAqF,eAAA,CAFhBkF,WAAW,kBAIO,UAAAe,MAAA,EAAqE;EAAA,IAAlE7E,KAAK,GAAA6E,MAAA,CAAL7E,KAAK;IAAA8E,YAAA,GAAAD,MAAA,CAAEE,KAAK;IAALA,KAAK,GAAAD,YAAA,cAAG/L,iBAAiB,GAAA+L,YAAA;IAAE9D,IAAI,GAAA6D,MAAA,CAAJ7D,IAAI;IAAE3B,MAAM,GAAAwF,MAAA,CAANxF,MAAM;IAAE9E,WAAW,GAAAsK,MAAA,CAAXtK,WAAW;EAClFyF,KAAK,CAAC5F,KAAK,CAAC,CAAC,CAAC,EAAEJ,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG3B,MAAM,CAAC,CAAC;EAEzD,OAAO;IACLkF,EAAE,EAAEzL,UAAU,CAAC,CAAC,CACbiM,KAAK,CAACA,KAAK,CAAC,CACZ1I,MAAM,CAAC,UAAC2I,CAAC,EAAK;MACb,OAAOhF,KAAK,CAACgF,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CACDjL,KAAK,CAAC,UAACkL,EAAE,EAAE9K,CAAC,EAAE4F,IAAI,EAAK;MACtB,OAAQ5F,CAAC,GAAG4F,IAAI,CAAC3E,MAAM,GAAI,CAAC,GAAGpB,IAAI,CAACC,EAAE,GAAGM,WAAW;IACtD,CAAC;EACL,CAAC;AACH,CAAC;AAyEH,SAAS2K,WAAWA,CAACpJ,KAAK,EAAE;EAAA,IAAAqJ,KAAA;EAC1B,IAAiBC,YAAY,GAAyDtJ,KAAK,CAAnFmH,OAAO;IAAgBG,MAAM,GAAiDtH,KAAK,CAA5DsH,MAAM;IAAEmB,EAAE,GAA6CzI,KAAK,CAApDyI,EAAE;IAAErE,KAAK,GAAsCpE,KAAK,CAAhDoE,KAAK;IAAEgE,YAAY,GAAwBpI,KAAK,CAAzCoI,YAAY;IAAEnE,IAAI,GAAkBjE,KAAK,CAA3BiE,IAAI;IAAEoE,WAAW,GAAKrI,KAAK,CAArBqI,WAAW;EACjF,OAAAgB,KAAA,GAAO7M,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAACiM,YAAY,EAAAD,KAAA,CAAAtB,EAAA;IAAA,UACJ,MAAM;IAAA,KACVU,EAAE,CAACxE,IAAI,CAAC;IAAA,SACJmE,YAAY,CAAChE,KAAK,CAAC;IAAA,eACbiE;EAAW,EACzB,CAAC;AAEN;AAEA,SAASkB,WAAWA,CAACvJ,KAAK,EAAE;EAC1B,IACWwJ,WAAW,GAUlBxJ,KAAK,CAVPmH,OAAO;IACPG,MAAM,GASJtH,KAAK,CATPsH,MAAM;IACNlD,KAAK,GAQHpE,KAAK,CARPoE,KAAK;IACLgE,YAAY,GAOVpI,KAAK,CAPPoI,YAAY;IACZnE,IAAI,GAMFjE,KAAK,CANPiE,IAAI;IACJC,KAAK,GAKHlE,KAAK,CALPkE,KAAK;IACLmE,WAAW,GAITrI,KAAK,CAJPqI,WAAW;IACXC,WAAW,GAGTtI,KAAK,CAHPsI,WAAW;IACX7J,WAAW,GAETuB,KAAK,CAFPvB,WAAW;IACX0F,QAAQ,GACNnE,KAAK,CADPmE,QAAQ;EAEV,OAAOF,IAAI,CAACvE,GAAG,CAAC,UAAC+D,KAAK,EAAEpF,CAAC,EAAK;IAAA,IAAAoL,KAAA;IAC5B,IAAIhG,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKlE,SAAS,EAAE;IAC3C,IAAMgB,MAAM,GAAG2D,KAAK,CAACT,KAAK,CAAC;IAC3BzD,KAAK,CAACwH,gBAAgB,CAACkC,qBAAqB,CAACpB,WAAW,KAAAlG,MAAA,CAAKkG,WAAW,OAAAlG,MAAA,CAAI/D,CAAC,CAAE,CAAC;IAChF,IAAAsL,mBAAA,GAAiB9K,iBAAiB,CAACR,CAAC,EAAEkC,MAAM,EAAE0D,IAAI,CAAC3E,MAAM,EAAEb,WAAW,CAAC;MAAAmL,mBAAA,GAAAzI,cAAA,CAAAwI,mBAAA;MAAhEE,EAAE,GAAAD,mBAAA;MAAEE,EAAE,GAAAF,mBAAA;IAEb,IAAI,CAACzF,QAAQ,EAAE;MAAA,IAAA4F,KAAA;MACb,OAAAA,KAAA,GAAOvN,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAACmM,WAAW,EAAAO,KAAA,CAAAhC,EAAA;QAAA,UACH,QAAQ;QAAA,SACRK,YAAY,CAAChE,KAAK,CAAC;QAAA,eACbiE,WAAW;QAAA,cACZjE,KAAK;QAAA,UAAAhC,MAAA,CACT/D,CAAC;QAAA,MACLwL,EAAE;QAAA,MACFC;MAAE,EACP,CAAC;IAEN;IAEA,IAAME,UAAU,GAAG5F,KAAK,IAAItG,wBAAwB,CAAC,CAAC,CAAC;IACvD,IAAAmM,qBAAA,GAAwBzM,oBAAoB,CAAC;QAC3CwM,UAAU,EAAVA,UAAU;QACV7F,QAAQ,EAARA;MACF,CAAC,CAAC;MAAA+F,sBAAA,GAAA/I,cAAA,CAAA8I,qBAAA;MAHKhK,KAAK,GAAAiK,sBAAA;MAAEhK,MAAM,GAAAgK,sBAAA;IAKpB,OAAAT,KAAA,GAAOjN,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAACmM,WAAW,EAAAC,KAAA,CAAA1B,EAAA;MAAA,UACFxK,aAAa;MAAA,SACd6K,YAAY,CAAChE,KAAK,CAAC;MAAA,eACbiE,WAAW;MAAA,cACZjE,KAAK;MAAA,UAAAhC,MAAA,CACT/D,CAAC;MAAA,KACNwL,EAAE,GAAG5J,KAAK,GAAG,CAAC;MAAA,KACd6J,EAAE,GAAG5J,MAAM,GAAG;IAAC,EACnB,CAAC;EAEN,CAAC,CAAC;AACJ;AAAC,IAEKiK,QAAQ,0BAAAC,WAAA;EAAA,SAAAD,SAAA;IAAA,IAAAE,MAAA;IAAA5H,eAAA,OAAA0H,QAAA;IAAA,SAAAG,KAAA,GAAAjL,SAAA,CAAAC,MAAA,EAAAqD,IAAA,OAAAjC,KAAA,CAAA4J,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAA5H,IAAA,CAAA4H,KAAA,IAAAlL,SAAA,CAAAkL,KAAA;IAAA;IAAAF,MAAA,GAAAxH,UAAA,OAAAsH,QAAA,KAAA/H,MAAA,CAAAO,IAAA;IAAAG,eAAA,CAAAuH,MAAA,+BAWgB,IAAI;IAAAvH,eAAA,CAAAuH,MAAA,WAExB;MACNG,eAAe,EAAE;IACnB,CAAC;IAAA1H,eAAA,CAAAuH,MAAA,iCAoC6B,UAACI,YAAY,EAAAC,MAAA,EAAgB;MAAA,IAAZ5G,KAAK,GAAA4G,MAAA,CAAL5G,KAAK;MAClDuG,MAAA,CAAKM,QAAQ,CAAC;QAAEH,eAAe,EAAE1G;MAAM,CAAC,CAAC;IAC3C,CAAC;IAAA,OAAAuG,MAAA;EAAA;EAAAtH,SAAA,CAAAoH,QAAA,EAAAC,WAAA;EAAA,OAAApH,YAAA,CAAAmH,QAAA;IAAAlH,GAAA;IAAAQ,KAAA,EApCD,SAAAmH,gBAAgBA,CAACrK,MAAM,EAAE/B,KAAK,EAAE;MAC9B,OAAOxB,UAAU,CAAC,CAAC,CAChBiM,KAAK,CAAChM,iBAAiB,CAAC,CACxBsD,MAAM,CAAC,YAAM;QACZ,OAAOA,MAAM;MACf,CAAC,CAAC,CACDtC,KAAK,CAAC,UAACkL,EAAE,EAAE9K,CAAC,EAAK;QAChB,OAAQA,CAAC,GAAGG,KAAK,GAAI,CAAC,GAAGN,IAAI,CAACC,EAAE;MAClC,CAAC,CAAC;IACN;EAAC;IAAA8E,GAAA;IAAAQ,KAAA,EAED,SAAAoH,aAAaA,CAAAC,MAAA,EAAqB;MAAA,IAAAC,eAAA,GAAAD,MAAA,CAAlBxK,QAAQ;QAARA,QAAQ,GAAAyK,eAAA,cAAG,GAAG,GAAAA,eAAA;MAC5B,IAAAC,cAAA,GAAiD,IAAI,CAAC5H,OAAO;QAArDa,IAAI,GAAA+G,cAAA,CAAJ/G,IAAI;QAAEV,MAAM,GAAAyH,cAAA,CAANzH,MAAM;QAAEe,UAAU,GAAA0G,cAAA,CAAV1G,UAAU;QAAEY,IAAI,GAAA8F,cAAA,CAAJ9F,IAAI;QAAEvB,IAAI,GAAAqH,cAAA,CAAJrH,IAAI;MAC5C,IAAMpD,MAAM,GAAGrC,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG3B,MAAM;MACtD,OAAO;QACLI,IAAI,EAAJA,IAAI;QACJM,IAAI,EAAJA,IAAI;QACJK,UAAU,EAAVA,UAAU;QACV9D,KAAK,EAAEH,QAAQ,CAACC,QAAQ,EAAEC,MAAM,CAAC;QACjCgD,MAAM,EAANA,MAAM;QACNkF,EAAE,EAAE,IAAI,CAACmC,gBAAgB,CAACrK,MAAM,EAAE+D,UAAU,CAAChF,MAAM;MACrD,CAAC;IACH;EAAC;IAAA2D,GAAA;IAAAQ,KAAA,EAED,SAAAwH,cAAcA,CAAAC,MAAA,EAAuB;MAAA,IAAAC,kBAAA,GAAAD,MAAA,CAApBE,WAAW;QAAXA,WAAW,GAAAD,kBAAA,cAAG,EAAE,GAAAA,kBAAA;MAC/B,IAAAE,eAAA,GAAsD,IAAI,CAACjI,OAAO;QAA1DG,MAAM,GAAA8H,eAAA,CAAN9H,MAAM;QAAEe,UAAU,GAAA+G,eAAA,CAAV/G,UAAU;QAAEnF,QAAQ,GAAAkM,eAAA,CAARlM,QAAQ;QAAEV,WAAW,GAAA4M,eAAA,CAAX5M,WAAW;MACjD,OAAO;QACL6F,UAAU,EAAVA,UAAU;QACVnF,QAAQ,EAARA,QAAQ;QACRoE,MAAM,EAAEA,MAAM,GAAG6H,WAAW;QAC5B3M,WAAW,EAAXA;MACF,CAAC;IACH;EAAC;IAAAwE,GAAA;IAAAQ,KAAA,EAMD,SAAA6H,iBAAiBA,CAAA,EAAG;MAClB,IAAQC,YAAY,GAAK,IAAI,CAACnI,OAAO,CAA7BmI,YAAY;MACpB,IAAI,CAACC,yBAAyB,GAAGD,YAAY,CAACE,SAAS,CACrD,0BAA0B,EAC1B,IAAI,CAACC,2BACP,CAAC;IACH;EAAC;IAAAzI,GAAA;IAAAQ,KAAA,EAED,SAAAkI,oBAAoBA,CAAA,EAAG;MAAA,IAAAC,qBAAA;MACrB,CAAAA,qBAAA,OAAI,CAACJ,yBAAyB,cAAAI,qBAAA,eAA9BA,qBAAA,CAAAC,IAAA,KAAiC,CAAC;IACpC;EAAC;IAAA5I,GAAA;IAAAQ,KAAA,EAED,SAAAuD,MAAMA,CAAA,EAAG;MAAA,IAAA8E,KAAA;MACP,IAAAC,eAAA,GAAgF,IAAI,CAAC3I,OAAO;QAA3E4I,KAAK,GAAAD,eAAA,CAAd5E,OAAO;QAASG,MAAM,GAAAyE,eAAA,CAANzE,MAAM;QAAEhD,UAAU,GAAAyH,eAAA,CAAVzH,UAAU;QAAEY,IAAI,GAAA6G,eAAA,CAAJ7G,IAAI;QAAE3B,MAAM,GAAAwI,eAAA,CAANxI,MAAM;QAAEI,IAAI,GAAAoI,eAAA,CAAJpI,IAAI;QAAElF,WAAW,GAAAsN,eAAA,CAAXtN,WAAW;MAC3E,IAAQ+L,eAAe,GAAK,IAAI,CAACyB,KAAK,CAA9BzB,eAAe;MACvB,IAAMjK,MAAM,GAAGrC,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG3B,MAAM;MACtD,IAAM/E,KAAK,GAAG8F,UAAU,CAAChF,MAAM;MAE/B,OAAAwM,KAAA,GAAOtP,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAAAF,KAAA,CAAA2L,QAAA,QACGnF,IAAI,KAAK,QAAQ,gBAEZxG,KAAA,CAAAE,aAAA,CAAC2O,KAAK,EAAAF,KAAA,CAAA/D,EAAA;QAAA,UAAQ,QAAQ;QAAA,MAAK,CAAC;QAAA,MAAM,CAAC;QAAA,KAAKxH;MAAM,EAAG,CAAC,gBAGlDpD,KAAA,CAAAE,aAAA,CAAC2O,KAAK,EAAAF,KAAA,CAAA/D,EAAA;QAAA,UAAQ,MAAM;QAAA,KAAI,IAAI,CAAC6C,gBAAgB,CAACrK,MAAM,EAAE/B,KAAK,CAAC,CAAC8F,UAAU;MAAC,EAAG,CAC5E,EACJA,UAAU,CAAC5E,GAAG,CAAC,UAACwM,SAAS,EAAE7N,CAAC,EAAK;QAChC,IAAA8N,mBAAA,GAAetN,iBAAiB,CAACR,CAAC,EAAEkC,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;UAAA2N,mBAAA,GAAAjL,cAAA,CAAAgL,mBAAA;UAAxD5K,CAAC,GAAA6K,mBAAA;UAAE5K,CAAC,GAAA4K,mBAAA;QACX,IAAAC,WAAA,GAAsB7P,OAAO,CAAC8K,MAAM,CAAC,CAACS,EAAE,CAAC,WAAW,EAAE;YACpDuE,MAAM,EAAE9B,eAAe,KAAKnM;UAC9B,CAAC,CAAC;UAFMkO,SAAS,GAAAF,WAAA,CAATE,SAAS;QAGjB,oBAAOpP,KAAA,CAAAE,aAAA;UAAM4F,GAAG,EAAE5E,CAAE;UAACmO,EAAE,EAAE,CAAE;UAACC,EAAE,EAAE,CAAE;UAACC,EAAE,EAAEnL,CAAE;UAACoL,EAAE,EAAEnL,CAAE;UAAC+K,SAAS,EAAEA;QAAU,CAAE,CAAC;MAC3E,CAAC,CACD,CAAC;IAEP;EAAC;AAAA,EA3FoBhQ,SAAS;AAAAuG,eAAA,CAA1BqH,QAAQ,iBACS,SAAS;AAAArH,eAAA,CAD1BqH,QAAQ,WAEG1M,KAAK;AAAAqF,eAAA,CAFhBqH,QAAQ,kBAIU,UAAAyC,MAAA,EAAuB;EAAA,IAApB3I,IAAI,GAAA2I,MAAA,CAAJ3I,IAAI;IAAEF,OAAO,GAAA6I,MAAA,CAAP7I,OAAO;EACpC,IAAMO,UAAU,GAAGL,IAAI,CAACF,OAAO,CAAC;EAChC,OAAO;IACLO,UAAU,EAAVA;EACF,CAAC;AACH,CAAC;AAqFH,SAASuI,SAASA,CAAC7M,KAAK,EAAE;EACxB,IAAiB8M,SAAS,GAAwD9M,KAAK,CAA/EmH,OAAO;IAAaG,MAAM,GAAgDtH,KAAK,CAA3DsH,MAAM;IAAEpC,IAAI,GAA0ClF,KAAK,CAAnDkF,IAAI;IAAE1E,KAAK,GAAmCR,KAAK,CAA7CQ,KAAK;IAAEiI,EAAE,GAA+BzI,KAAK,CAAtCyI,EAAE;IAAEnE,UAAU,GAAmBtE,KAAK,CAAlCsE,UAAU;IAAEf,MAAM,GAAWvD,KAAK,CAAtBuD,MAAM;IAAEI,IAAI,GAAK3D,KAAK,CAAd2D,IAAI;EAC7E,IAAMpD,MAAM,GAAGrC,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG3B,MAAM;EAEtD,OAAO/C,KAAK,CAACd,GAAG,CAAC,UAACqN,IAAI,EAAE1O,CAAC,EAAK;IAAA,IAAA2O,KAAA;IAC5BvE,EAAE,CAAClI,MAAM,CAAC;MAAA,OAAMA,MAAM,GAAGwM,IAAI;IAAA,EAAC;IAC9B,OAAAC,KAAA,GAAOxQ,OAAO,CAAC8K,MAAM,CAAC,EACpB3D,IAAI,KAAK,QAAQ,gBAEXxG,KAAA,CAAAE,aAAA,CAACyP,SAAS,EAAAE,KAAA,CAAAjF,EAAA;MAAA,OAAM1J,CAAC;MAAA,UAAS,QAAQ;MAAA,MAAK,CAAC;MAAA,MAAM,CAAC;MAAA,KAAKkC,MAAM,GAAGwM;IAAI,EAAG,CAAC,gBAGrE5P,KAAA,CAAAE,aAAA,CAACyP,SAAS,EAAAE,KAAA,CAAAjF,EAAA;MAAA,UAAQ,MAAM;MAAA,OAAM1J,CAAC;MAAA,KAAKoK,EAAE,CAACnE,UAAU;IAAC,EAAG,CACtD;EAET,CAAC,CAAC;AACJ;AAEA,SAAS2I,UAAUA,CAACjN,KAAK,EAAE;EACzB,IAAiBkN,UAAU,GAA8DlN,KAAK,CAAtFmH,OAAO;IAAcG,MAAM,GAAsDtH,KAAK,CAAjEsH,MAAM;IAAEnI,QAAQ,GAA4Ca,KAAK,CAAzDb,QAAQ;IAAE+F,IAAI,GAAsClF,KAAK,CAA/CkF,IAAI;IAAE3B,MAAM,GAA8BvD,KAAK,CAAzCuD,MAAM;IAAEe,UAAU,GAAkBtE,KAAK,CAAjCsE,UAAU;IAAE7F,WAAW,GAAKuB,KAAK,CAArBvB,WAAW;EACpF,IAAM8B,MAAM,GAAGrC,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG3B,MAAM;EAEtD,OAAOe,UAAU,CAAC5E,GAAG,CAAC,UAACyN,QAAQ,EAAE9O,CAAC,EAAK;IACrC,IAAA+O,mBAAA,GAAevO,iBAAiB,CAACR,CAAC,EAAEkC,MAAM,EAAE+D,UAAU,CAAChF,MAAM,EAAEb,WAAW,CAAC;MAAA4O,oBAAA,GAAAlM,cAAA,CAAAiM,mBAAA;MAApE7L,CAAC,GAAA8L,oBAAA;MAAE7L,CAAC,GAAA6L,oBAAA;IACX,IAAAC,kBAAA,GAAiCtO,iBAAiB,CAACX,CAAC,EAAEiG,UAAU,CAAChF,MAAM,EAAEb,WAAW,CAAC;MAAA8O,mBAAA,GAAApM,cAAA,CAAAmM,kBAAA;MAA9EtL,UAAU,GAAAuL,mBAAA;MAAEtL,UAAU,GAAAsL,mBAAA;IAC7B,IAAI,OAAOJ,QAAQ,KAAK,QAAQ,EAAE;MAAA,IAAAK,KAAA;MAChCxN,KAAK,CAACwH,gBAAgB,CAACiG,QAAQ,CAAC,OAAO,EAAEpP,CAAC,EAAE8O,QAAQ,CAAC;MAErD,IAAMO,KAAK,GAAGP,QAAQ,CAACQ,KAAK,CAAC,IAAI,CAAC;MAClC,OAAAH,KAAA,GAAOhR,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAAC6P,UAAU,EAAAM,KAAA,CAAAzF,EAAA;QAAA,OACJ1J,CAAC;QAAA,UACC,MAAM;QAAA,oBACI,QAAQ;QAAA,KACtBkD,CAAC;QAAA,KACDC,CAAC;QAAA,cACQQ,UAAU;QAAA,cACVC;MAAU,IAErByL,KAAK,CAAChO,GAAG,CAAC,UAACkO,QAAQ,EAAEC,SAAS;QAAA,oBAC7B1Q,KAAA,CAAAE,aAAA;UACEkE,CAAC,EAAEA,CAAE;UACLC,CAAC,EAAEA,CAAC,GAAG,CAACqM,SAAS,GAAG,CAACH,KAAK,CAACpO,MAAM,GAAG,CAAC,IAAI,CAAC,IAAIH,QAAS;UACvD8D,GAAG,MAAAb,MAAA,CAAMyL,SAAS,OAAAzL,MAAA,CAAIwL,QAAQ;QAAG,GAEhCA,QACI,CAAC;MAAA,CACT,CACS,CAAC;IAEjB;IACA,iBAAIzQ,KAAK,CAACyC,cAAc,CAACuN,QAAQ,CAAC,EAAE;MAAA,IAAAW,eAAA;MAClC,IAAAC,MAAA,IAAAD,eAAA,GAAkCX,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEnN,KAAK,cAAA8N,eAAA,cAAAA,eAAA,GAAI,CAAC,CAAC;QAAAE,YAAA,GAAAD,MAAA,CAA/C9N,KAAK;QAALA,KAAK,GAAA+N,YAAA,cAAG,CAAC,GAAAA,YAAA;QAAAC,aAAA,GAAAF,MAAA,CAAE7N,MAAM;QAANA,MAAM,GAAA+N,aAAA,cAAG,CAAC,GAAAA,aAAA;MAC7B,IAAAC,qBAAA,GAA2BnM,sBAAsB,CAACC,UAAU,EAAEC,UAAU,EAAEhC,KAAK,EAAEC,MAAM,CAAC;QAAAiO,sBAAA,GAAAhN,cAAA,CAAA+M,qBAAA;QAAjFhM,OAAO,GAAAiM,sBAAA;QAAEhM,OAAO,GAAAgM,sBAAA;MACvB,oBAAO/Q,YAAY,CAAC+P,QAAQ,EAAE;QAC5BlK,GAAG,EAAE5E,CAAC;QACNkD,CAAC,EAAEA,CAAC,GAAGW,OAAO;QACdV,CAAC,EAAEA,CAAC,GAAGW;MACT,CAAC,CAAC;IACJ;EACF,CAAC,CAAC;AACJ;AAAC,IAEKiM,KAAK,0BAAAC,WAAA;EAAA,SAAAD,MAAA;IAAA,IAAAE,MAAA;IAAA7L,eAAA,OAAA2L,KAAA;IAAA,SAAAG,KAAA,GAAAlP,SAAA,CAAAC,MAAA,EAAAqD,IAAA,OAAAjC,KAAA,CAAA6N,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAA7L,IAAA,CAAA6L,KAAA,IAAAnP,SAAA,CAAAmP,KAAA;IAAA;IAAAF,MAAA,GAAAzL,UAAA,OAAAuL,KAAA,KAAAhM,MAAA,CAAAO,IAAA;IAAAG,eAAA,CAAAwL,MAAA,WACD;MACNxK,KAAK,EAAE;IACT,CAAC;IAAAhB,eAAA,CAAAwL,MAAA,oBAEgB5R,SAAS,CAAC,CAAC,GAAG+R,QAAQ,CAACpR,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAAyF,eAAA,CAAAwL,MAAA,8BAEtC,IAAI;IAAAxL,eAAA,CAAAwL,MAAA,+BACH,IAAI;IAAAxL,eAAA,CAAAwL,MAAA,0BAMT1R,OAAO,CAAC,UAACuJ,CAAC,EAAK;MACpC,IAAAuI,cAAA,GAAoEJ,MAAA,CAAKlL,OAAO;QAAxEmI,YAAY,GAAAmD,cAAA,CAAZnD,YAAY;QAAErG,IAAI,GAAAwJ,cAAA,CAAJxJ,IAAI;QAAEoB,OAAO,GAAAoI,cAAA,CAAPpI,OAAO;QAAEnC,QAAQ,GAAAuK,cAAA,CAARvK,QAAQ;QAAEK,QAAQ,GAAAkK,cAAA,CAARlK,QAAQ;QAAEmK,MAAM,GAAAD,cAAA,CAANC,MAAM;MAC/D,IAAM/J,KAAK,GAAG/G,YAAY,CAACsI,CAAC,EAAEG,OAAO,CAACG,OAAO,CAAC;MAC9C,IAAMtB,IAAI,GAAGjH,IAAI,CAACkH,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC;MACvC,IAAM4B,OAAO,GAAGlC,KAAK,CAAC,CAAC,CAAC,GAAGO,IAAI,GAAG,CAAC;MACnC,IAAM4B,OAAO,GAAGnC,KAAK,CAAC,CAAC,CAAC,GAAGO,IAAI,GAAG,CAAC;MACnC,IAAQyJ,OAAO,GAAczI,CAAC,CAAtByI,OAAO;QAAEC,OAAO,GAAK1I,CAAC,CAAb0I,OAAO;MAExB,IAAM/K,KAAK,GAAGU,QAAQ,CAAC,CAACsC,OAAO,EAAEC,OAAO,CAAC,CAAC;MAE1CuH,MAAA,CAAK3D,QAAQ,CAAC;QAAE7G,KAAK,EAALA;MAAM,CAAC,EAAE,YAAM;QAC7ByH,YAAY,CAACuD,IAAI,uBAAA1M,MAAA,CAAuBuM,MAAM,GAAIC,OAAO,EAAEC,OAAO,CAAC;QACnEtD,YAAY,CAACuD,IAAI,6BAAA1M,MAAA,CAA6BuM,MAAM,GAAI,CAAC,CAAC,EAAE;UAAE7K,KAAK,EAALA,KAAK;UAAEK,QAAQ,EAARA;QAAS,CAAC,CAAC;QAChFoH,YAAY,CAACuD,IAAI,sBAAA1M,MAAA,CAAsBuM,MAAM,GAAI7K,KAAK,KAAK,IAAI,CAAC;MAClE,CAAC,CAAC;IACJ,CAAC,CAAC;IAAAhB,eAAA,CAAAwL,MAAA,2BAEsB1R,OAAO,CAAC,YAAM;MACpC0R,MAAA,CAAK3D,QAAQ,CAAC;QAAE7G,KAAK,EAAE;MAAK,CAAC,EAAE,YAAM;QACnCwK,MAAA,CAAKlL,OAAO,CAACmI,YAAY,CAACuD,IAAI,sBAAA1M,MAAA,CAAsBkM,MAAA,CAAKlL,OAAO,CAACuL,MAAM,GAAI,KAAK,CAAC;MACnF,CAAC,CAAC;IACJ,CAAC,CAAC;IAAA,OAAAL,MAAA;EAAA;EAAAvL,SAAA,CAAAqL,KAAA,EAAAC,WAAA;EAAA,OAAArL,YAAA,CAAAoL,KAAA;IAAAnL,GAAA;IAAAQ,KAAA,EAzBF,SAAAsL,6BAA6BA,CAAA,EAAe;MAAA,IAAdxN,CAAC,GAAAlC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC;MAAA,IAAEmC,CAAC,GAAAnC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC;MACxC,OAAO;QAAA,OAAO;UAAEY,KAAK,EAAE,CAAC;UAAEC,MAAM,EAAE,CAAC;UAAE8O,GAAG,EAAExN,CAAC;UAAEyN,KAAK,EAAE1N,CAAC;UAAE2N,MAAM,EAAE1N,CAAC;UAAE2N,IAAI,EAAE5N;QAAE,CAAC;MAAA,CAAC;IAC9E;EAAC;IAAA0B,GAAA;IAAAQ,KAAA,EAyBD,SAAA6H,iBAAiBA,CAAA,EAAG;MAAA,IAAA8D,MAAA;MAClB,IAAQ7D,YAAY,GAAK,IAAI,CAACnI,OAAO,CAA7BmI,YAAY;MACpB,IAAI,CAAC8D,wBAAwB,GAAG9D,YAAY,CAACE,SAAS,CAAC,iBAAiB,EAAE,UAACtF,CAAC,EAAK;QAC/EA,CAAC,CAACmJ,OAAO,CAAC,CAAC;QACXF,MAAI,CAACG,oBAAoB,CAACpJ,CAAC,CAAC;MAC9B,CAAC,CAAC;MACF,IAAI,CAACqJ,yBAAyB,GAAGjE,YAAY,CAACE,SAAS,CACrD,kBAAkB,EAClB,IAAI,CAACgE,qBACP,CAAC;IACH;EAAC;IAAAxM,GAAA;IAAAQ,KAAA,EAED,SAAAkI,oBAAoBA,CAAA,EAAG;MACrB,IAAI,IAAI,CAAC0D,wBAAwB,EAAE;QACjC,IAAI,CAACA,wBAAwB,CAAC,CAAC;MACjC;MACA,IAAI,IAAI,CAACG,yBAAyB,EAAE;QAClC,IAAI,CAACA,yBAAyB,CAAC,CAAC;MAClC;IACF;EAAC;IAAAvM,GAAA;IAAAQ,KAAA,EAED,SAAAuD,MAAMA,CAAA,EAAG;MACP,IAAA0I,eAAA,GAA6C,IAAI,CAACtM,OAAO;QAAjDkE,MAAM,GAAAoI,eAAA,CAANpI,MAAM;QAAE3D,IAAI,GAAA+L,eAAA,CAAJ/L,IAAI;QAAEgB,MAAM,GAAA+K,eAAA,CAAN/K,MAAM;QAAED,UAAU,GAAAgL,eAAA,CAAVhL,UAAU;MACxC,IAAQZ,KAAK,GAAK,IAAI,CAACmI,KAAK,CAApBnI,KAAK;MACb,IAAM6L,QAAQ,GAAG,IAAI,CAACxI,OAAO;MAE7B,IAAIrD,KAAK,KAAK,IAAI,EAAE;QAClB,IAAIH,IAAI,KAAK,QAAQ,EAAE;UAAA,IAAAiM,KAAA;UACrB,IAAAC,OAAA,GAAuClL,MAAM,CAACb,KAAK,CAAC;YAAAgM,QAAA,GAAA3O,cAAA,CAAA0O,OAAA;YAA7CzO,UAAU,GAAA0O,QAAA;YAAEzO,QAAQ,GAAAyO,QAAA;YAAEvP,MAAM,GAAAuP,QAAA;UACnC,IAAMC,MAAM,GAAG7S,GAAG,CAAC,CAAC,CACjB8S,WAAW,CAAC,CAAC,CAAC,CACdC,WAAW,CAAC1P,MAAM,CAAC,CACnBa,UAAU,CAACA,UAAU,CAAC,CACtBC,QAAQ,CAACA,QAAQ,CAAC;UACrB,OAAAuO,KAAA,GAAOpT,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAACsS,QAAQ,EAAAC,KAAA,CAAA7H,EAAA;YAAA,UACA,MAAM;YAAA,KAEVgI,MAAM,CAAC;UAAC,EACZ,CAAC;QAEN,CAAC,MAAM;UAAA,IAAAG,KAAA;UACL,OAAAA,KAAA,GAAO1T,OAAO,CAAC8K,MAAM,CAAC,eACpBnK,KAAA,CAAAE,aAAA,CAACsS,QAAQ,EAAAO,KAAA,CAAAnI,EAAA;YAAA,UACA,MAAM;YAAA,KAEVhL,IAAI,CAAC,CAAC,CAAC2H,UAAU,CAACZ,KAAK,CAAC;UAAC,EAC7B,CAAC;QAEN;MACF;MAEA,OAAO,IAAI;IACb;EAAC;AAAA,EA1FiBvH,SAAS;AA6F7B,IAAMuL,IAAI,GAAGzK,aAAa,CAAC8M,QAAQ,EAAE;EACnCgG,KAAK,EAAEtD,SAAS;EAChBuD,MAAM,EAAEnD;AACV,CAAC,CAAC;AAEF,IAAMoD,OAAO,GAAGhT,aAAa,CAAC2K,WAAW,EAAE;EACzCsI,IAAI,EAAElH,WAAW;EACjBmH,IAAI,EAAEhH;AACR,CAAC,CAAC;AAEF,SAASiH,YAAYA,CAACxQ,KAAK,EAAE;EAAA,IAAAyQ,IAAA,GAAAC,YAAA;IAAAC,MAAA;EAC3B,IAAMC,aAAa,GAEMhT,OAAO;EADhC,OAAA+S,MAAA,GAAOnU,OAAO,CAACwD,KAAK,CAACsH,MAAM,CAAC,eAC1BnK,KAAA,CAAAE,aAAA,CAACuT,aAAa,EAAAD,MAAA,CAAA5I,EAAA,kBAAA8I,aAAA,KAAAC,YAAA;IAAA,OAAuBjJ,KAAK,CAACuG,KAAK;IAAA;EAAA,GAAAqC,IAAA,GAAsB,CAAC;AAE3E;AAEA,IAAM5I,KAAK,GAAGxK,aAAa,CAACiF,SAAS,EAAE;EACrCwF,IAAI,EAAJA,IAAI;EACJuI,OAAO,EAAPA,OAAO;EACPjC,KAAK,EAALA,KAAK;EACLxQ,OAAO,EAAE,CAAC4S,YAAY,EAAE5S,OAAO,CAACmT,yBAAyB;AAC3D,CAAC,CAAC;AAEF,eAAelJ,KAAK","ignoreList":[]}
@@ -19,20 +19,20 @@ import React from 'react';
19
19
  import createElement from './createElement';
20
20
  import { PatternSymbol, getPatternSymbolSize } from './Pattern';
21
21
  /*!__reshadow-styles__:"./style/radial-tree.shadow.css"*/
22
- var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SRadian_hkvb1_gg_{cursor:pointer;fill:var(--intergalactic-text-large-info, #008ff8)}.___SLine_hkvb1_gg_{stroke:var(--intergalactic-text-large-info, #008ff8)}.___SLine_hkvb1_gg_.__stroke_hkvb1_gg_{stroke:var(--stroke_hkvb1)}.___SLine_hkvb1_gg_.__transparent_hkvb1_gg_{opacity:.3}.___SCap_hkvb1_gg_{transition:r .1s}.___SCap_hkvb1_gg_.__pattern_hkvb1_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:1px}.___SCap_hkvb1_gg_.__transparent_hkvb1_gg_,.___SIcon_hkvb1_gg_.__transparent_hkvb1_gg_,.___SLabel_hkvb1_gg_.__transparent_hkvb1_gg_{opacity:.3}.___SLabel_hkvb1_gg_{fill:var(--color_hkvb1)}@media (hover:hover){.___SRadian_hkvb1_gg_:hover .___SLabel_hkvb1_gg_{cursor:pointer;filter:brightness(.6)}}@media (prefers-reduced-motion){.___SLineCap_hkvb1_gg_{transition:none}}", /*__inner_css_end__*/"hkvb1_gg_"),
22
+ var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SRadian_1sbqs_gg_{cursor:pointer;fill:var(--intergalactic-text-large-info, #008ff8)}.___SLine_1sbqs_gg_{stroke:var(--intergalactic-text-large-info, #008ff8)}.___SLine_1sbqs_gg_.__stroke_1sbqs_gg_{stroke:var(--stroke_1sbqs)}.___SLine_1sbqs_gg_.__transparent_1sbqs_gg_{opacity:.3}.___SCap_1sbqs_gg_{transition:r .1s}.___SCap_1sbqs_gg_.__pattern_1sbqs_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:1px}.___SCap_1sbqs_gg_.__transparent_1sbqs_gg_,.___SIcon_1sbqs_gg_.__transparent_1sbqs_gg_,.___SLabel_1sbqs_gg_.__transparent_1sbqs_gg_{opacity:.3}.___SLabel_1sbqs_gg_{fill:var(--color_1sbqs)}@media (hover:hover){.___SRadian_1sbqs_gg_:hover .___SLabel_1sbqs_gg_{cursor:pointer;filter:brightness(.6)}}@media (prefers-reduced-motion){.___SLineCap_1sbqs_gg_{transition:none}}", /*__inner_css_end__*/"1sbqs_gg_"),
23
23
  /*__reshadow_css_end__*/
24
24
  {
25
- "__SRadian": "___SRadian_hkvb1_gg_",
26
- "__SLine": "___SLine_hkvb1_gg_",
27
- "_stroke": "__stroke_hkvb1_gg_",
28
- "--stroke": "--stroke_hkvb1",
29
- "_transparent": "__transparent_hkvb1_gg_",
30
- "__SCap": "___SCap_hkvb1_gg_",
31
- "_pattern": "__pattern_hkvb1_gg_",
32
- "__SIcon": "___SIcon_hkvb1_gg_",
33
- "__SLabel": "___SLabel_hkvb1_gg_",
34
- "--color": "--color_hkvb1",
35
- "__SLineCap": "___SLineCap_hkvb1_gg_"
25
+ "__SRadian": "___SRadian_1sbqs_gg_",
26
+ "__SLine": "___SLine_1sbqs_gg_",
27
+ "_stroke": "__stroke_1sbqs_gg_",
28
+ "--stroke": "--stroke_1sbqs",
29
+ "_transparent": "__transparent_1sbqs_gg_",
30
+ "__SCap": "___SCap_1sbqs_gg_",
31
+ "_pattern": "__pattern_1sbqs_gg_",
32
+ "__SIcon": "___SIcon_1sbqs_gg_",
33
+ "__SLabel": "___SLabel_1sbqs_gg_",
34
+ "--color": "--color_1sbqs",
35
+ "__SLineCap": "___SLineCap_1sbqs_gg_"
36
36
  });
37
37
  import { getChartDefaultColorName, measureText } from './utils';
38
38
  var baseAngle = -Math.PI / 2; // The top vertical line
@@ -517,7 +517,7 @@ _defineProperty(RadialTreeRadian, "defaultProps", {
517
517
  iconSize: 16,
518
518
  textSize: 14
519
519
  });
520
- var InteractiveArea = function InteractiveArea(_ref20) {
520
+ function InteractiveArea(_ref20) {
521
521
  var _ref4;
522
522
  var SInteractiveArea = _ref20.Element,
523
523
  styles = _ref20.styles;
@@ -525,11 +525,11 @@ var InteractiveArea = function InteractiveArea(_ref20) {
525
525
  "stroke": 'transparent',
526
526
  "render": 'line'
527
527
  }));
528
- };
528
+ }
529
529
 
530
530
  /** @deprecated */
531
531
 
532
- var Line = function Line(_ref21) {
532
+ function Line(_ref21) {
533
533
  var _ref5;
534
534
  var SLine = _ref21.Element,
535
535
  styles = _ref21.styles,
@@ -541,11 +541,11 @@ var Line = function Line(_ref21) {
541
541
  "stroke": resolveColor(stroke),
542
542
  "transparent": transparent
543
543
  }));
544
- };
544
+ }
545
545
 
546
546
  /** @deprecated */
547
547
 
548
- var Cap = function Cap(_ref22) {
548
+ function Cap(_ref22) {
549
549
  var _ref7;
550
550
  var SCap = _ref22.Element,
551
551
  styles = _ref22.styles,
@@ -586,11 +586,11 @@ var Cap = function Cap(_ref22) {
586
586
  "transparent": transparent,
587
587
  "pattern": true
588
588
  }));
589
- };
589
+ }
590
590
 
591
591
  /** @deprecated */
592
592
 
593
- var Icon = function Icon(_ref23) {
593
+ function Icon(_ref23) {
594
594
  var _ref8;
595
595
  var SIcon = _ref23.Element,
596
596
  styles = _ref23.styles,
@@ -611,11 +611,11 @@ var Icon = function Icon(_ref23) {
611
611
  "render": tag,
612
612
  "transparent": transparent
613
613
  }));
614
- };
614
+ }
615
615
 
616
616
  /** @deprecated */
617
617
 
618
- var Label = function Label(_ref24) {
618
+ function Label(_ref24) {
619
619
  var SLabel = _ref24.Element,
620
620
  Children = _ref24.Children,
621
621
  styles = _ref24.styles,
@@ -657,7 +657,7 @@ var Label = function Label(_ref24) {
657
657
  key: "#".concat(lineIndex, "-").concat(lineText)
658
658
  }, lineText);
659
659
  }), /*#__PURE__*/React.createElement(Children, null));
660
- };
660
+ }
661
661
  var Radian = createElement(RadialTreeRadian, {
662
662
  InteractiveArea: InteractiveArea,
663
663
  Line: Line,
@@ -668,7 +668,7 @@ var Radian = createElement(RadialTreeRadian, {
668
668
 
669
669
  /** @deprecated */
670
670
 
671
- var Title = function Title(_ref25) {
671
+ function Title(_ref25) {
672
672
  var _ref9;
673
673
  var STitle = _ref25.Element,
674
674
  Children = _ref25.Children,
@@ -693,7 +693,7 @@ var Title = function Title(_ref25) {
693
693
  "x": x,
694
694
  "y": y
695
695
  }), /*#__PURE__*/React.createElement(Children, _ref9.cn("Children", {})));
696
- };
696
+ }
697
697
  var RadialTree = createElement(RadialTreeBase, {
698
698
  Title: Title,
699
699
  Radian: Radian