intergalactic 15.52.0-prerelease.0-prerelease-15fe9f5e → 15.53.0-prerelease-dfe34e97
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.
- package/CHANGELOG.md +31 -4
- package/accordion/lib/cjs/Accordion.js +7 -6
- package/accordion/lib/cjs/Accordion.js.map +1 -1
- package/accordion/lib/cjs/style/accordion.shadow.css +2 -2
- package/accordion/lib/es6/Accordion.js +7 -6
- package/accordion/lib/es6/Accordion.js.map +1 -1
- package/accordion/lib/es6/style/accordion.shadow.css +2 -2
- package/components.json +12 -12
- package/d3-chart/Pattern.d.ts +336 -0
- package/d3-chart/Plot.d.ts +4 -0
- package/d3-chart/RadialTree.d.ts +7 -2
- package/d3-chart/component/Chart/AbstractChart.type.d.ts +3 -0
- package/d3-chart/component/ChartLegend/BaseLegend.type.d.ts +3 -0
- package/d3-chart/component/ChartLegend/LegendItem/LegendItem.type.d.ts +7 -1
- package/d3-chart/index.d.ts +3 -0
- package/d3-chart/lib/cjs/Area.js +25 -13
- package/d3-chart/lib/cjs/Area.js.map +1 -1
- package/d3-chart/lib/cjs/Axis.js +14 -14
- package/d3-chart/lib/cjs/Bar.js +23 -12
- package/d3-chart/lib/cjs/Bar.js.map +1 -1
- package/d3-chart/lib/cjs/Bubble.js +25 -13
- package/d3-chart/lib/cjs/Bubble.js.map +1 -1
- package/d3-chart/lib/cjs/Donut.js +28 -12
- package/d3-chart/lib/cjs/Donut.js.map +1 -1
- package/d3-chart/lib/cjs/Dots.js +55 -28
- package/d3-chart/lib/cjs/Dots.js.map +1 -1
- package/d3-chart/lib/cjs/GroupBar.js +4 -2
- package/d3-chart/lib/cjs/GroupBar.js.map +1 -1
- package/d3-chart/lib/cjs/HorizontalBar.js +23 -12
- package/d3-chart/lib/cjs/HorizontalBar.js.map +1 -1
- package/d3-chart/lib/cjs/Hover.js +9 -6
- package/d3-chart/lib/cjs/Hover.js.map +1 -1
- package/d3-chart/lib/cjs/Line.js +23 -15
- package/d3-chart/lib/cjs/Line.js.map +1 -1
- package/d3-chart/lib/cjs/Pattern.js +540 -0
- package/d3-chart/lib/cjs/Pattern.js.map +1 -0
- package/d3-chart/lib/cjs/Plot.js +7 -5
- package/d3-chart/lib/cjs/Plot.js.map +1 -1
- package/d3-chart/lib/cjs/Radar.js +126 -83
- package/d3-chart/lib/cjs/Radar.js.map +1 -1
- package/d3-chart/lib/cjs/RadialTree.js +126 -100
- package/d3-chart/lib/cjs/RadialTree.js.map +1 -1
- package/d3-chart/lib/cjs/ReferenceLine.js +9 -9
- package/d3-chart/lib/cjs/ScatterPlot.js +22 -10
- package/d3-chart/lib/cjs/ScatterPlot.js.map +1 -1
- package/d3-chart/lib/cjs/StackBar.js +8 -4
- package/d3-chart/lib/cjs/StackBar.js.map +1 -1
- package/d3-chart/lib/cjs/StackedArea.js +4 -1
- package/d3-chart/lib/cjs/StackedArea.js.map +1 -1
- package/d3-chart/lib/cjs/Tooltip.js +21 -11
- package/d3-chart/lib/cjs/Tooltip.js.map +1 -1
- package/d3-chart/lib/cjs/Venn.js +28 -12
- package/d3-chart/lib/cjs/Venn.js.map +1 -1
- package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
- package/d3-chart/lib/cjs/component/Chart/AbstractChart.js +7 -3
- package/d3-chart/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/d3-chart/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/BaseLegend.js +4 -2
- package/d3-chart/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +80 -53
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/legend-item.shadow.css +17 -3
- package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/d3-chart/lib/cjs/index.js +19 -0
- package/d3-chart/lib/cjs/index.js.map +1 -1
- package/d3-chart/lib/cjs/style/area.shadow.css +6 -1
- package/d3-chart/lib/cjs/style/bar.shadow.css +7 -1
- package/d3-chart/lib/cjs/style/bubble.shadow.css +8 -1
- package/d3-chart/lib/cjs/style/donut.shadow.css +7 -1
- package/d3-chart/lib/cjs/style/dot.shadow.css +2 -2
- package/d3-chart/lib/cjs/style/radar.shadow.css +7 -1
- package/d3-chart/lib/cjs/style/radial-tree.shadow.css +5 -0
- package/d3-chart/lib/cjs/style/scatterplot.shadow.css +8 -1
- package/d3-chart/lib/cjs/style/tooltip.shadow.css +6 -6
- package/d3-chart/lib/cjs/style/venn.shadow.css +11 -0
- package/d3-chart/lib/cjs/types/Plot.d.js.map +1 -1
- package/d3-chart/lib/cjs/types/index.d.js +12 -0
- package/d3-chart/lib/cjs/types/index.d.js.map +1 -1
- package/d3-chart/lib/es6/Area.js +25 -13
- package/d3-chart/lib/es6/Area.js.map +1 -1
- package/d3-chart/lib/es6/Axis.js +14 -14
- package/d3-chart/lib/es6/Bar.js +23 -12
- package/d3-chart/lib/es6/Bar.js.map +1 -1
- package/d3-chart/lib/es6/Bubble.js +25 -13
- package/d3-chart/lib/es6/Bubble.js.map +1 -1
- package/d3-chart/lib/es6/Donut.js +28 -12
- package/d3-chart/lib/es6/Donut.js.map +1 -1
- package/d3-chart/lib/es6/Dots.js +56 -29
- package/d3-chart/lib/es6/Dots.js.map +1 -1
- package/d3-chart/lib/es6/GroupBar.js +4 -2
- package/d3-chart/lib/es6/GroupBar.js.map +1 -1
- package/d3-chart/lib/es6/HorizontalBar.js +23 -12
- package/d3-chart/lib/es6/HorizontalBar.js.map +1 -1
- package/d3-chart/lib/es6/Hover.js +9 -6
- package/d3-chart/lib/es6/Hover.js.map +1 -1
- package/d3-chart/lib/es6/Line.js +24 -16
- package/d3-chart/lib/es6/Line.js.map +1 -1
- package/d3-chart/lib/es6/Pattern.js +534 -0
- package/d3-chart/lib/es6/Pattern.js.map +1 -0
- package/d3-chart/lib/es6/Plot.js +7 -5
- package/d3-chart/lib/es6/Plot.js.map +1 -1
- package/d3-chart/lib/es6/Radar.js +126 -83
- package/d3-chart/lib/es6/Radar.js.map +1 -1
- package/d3-chart/lib/es6/RadialTree.js +127 -101
- package/d3-chart/lib/es6/RadialTree.js.map +1 -1
- package/d3-chart/lib/es6/ReferenceLine.js +9 -9
- package/d3-chart/lib/es6/ScatterPlot.js +22 -10
- package/d3-chart/lib/es6/ScatterPlot.js.map +1 -1
- package/d3-chart/lib/es6/StackBar.js +8 -4
- package/d3-chart/lib/es6/StackBar.js.map +1 -1
- package/d3-chart/lib/es6/StackedArea.js +4 -1
- package/d3-chart/lib/es6/StackedArea.js.map +1 -1
- package/d3-chart/lib/es6/Tooltip.js +22 -11
- package/d3-chart/lib/es6/Tooltip.js.map +1 -1
- package/d3-chart/lib/es6/Venn.js +28 -12
- package/d3-chart/lib/es6/Venn.js.map +1 -1
- package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
- package/d3-chart/lib/es6/component/Chart/AbstractChart.js +7 -3
- package/d3-chart/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/d3-chart/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/BaseLegend.js +4 -2
- package/d3-chart/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +80 -53
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/legend-item.shadow.css +17 -3
- package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/d3-chart/lib/es6/index.js +1 -0
- package/d3-chart/lib/es6/index.js.map +1 -1
- package/d3-chart/lib/es6/style/area.shadow.css +6 -1
- package/d3-chart/lib/es6/style/bar.shadow.css +7 -1
- package/d3-chart/lib/es6/style/bubble.shadow.css +8 -1
- package/d3-chart/lib/es6/style/donut.shadow.css +7 -1
- package/d3-chart/lib/es6/style/dot.shadow.css +2 -2
- package/d3-chart/lib/es6/style/radar.shadow.css +7 -1
- package/d3-chart/lib/es6/style/radial-tree.shadow.css +5 -0
- package/d3-chart/lib/es6/style/scatterplot.shadow.css +8 -1
- package/d3-chart/lib/es6/style/tooltip.shadow.css +6 -6
- package/d3-chart/lib/es6/style/venn.shadow.css +11 -0
- package/d3-chart/lib/es6/types/Plot.d.js.map +1 -1
- package/d3-chart/lib/es6/types/index.d.js +3 -0
- package/d3-chart/lib/es6/types/index.d.js.map +1 -1
- package/d3-chart/lib/types/Pattern.d.ts +336 -0
- package/d3-chart/lib/types/Plot.d.ts +4 -0
- package/d3-chart/lib/types/RadialTree.d.ts +7 -2
- package/d3-chart/lib/types/component/Chart/AbstractChart.type.d.ts +3 -0
- package/d3-chart/lib/types/component/ChartLegend/BaseLegend.type.d.ts +3 -0
- package/d3-chart/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +7 -1
- package/d3-chart/lib/types/index.d.ts +3 -0
- package/date-picker/lib/cjs/components/RangePickerAbstract.js +8 -4
- package/date-picker/lib/cjs/components/RangePickerAbstract.js.map +1 -1
- package/date-picker/lib/es6/components/RangePickerAbstract.js +8 -4
- package/date-picker/lib/es6/components/RangePickerAbstract.js.map +1 -1
- package/drag-and-drop/index.d.ts +13 -2
- package/drag-and-drop/lib/cjs/DragAndDrop.js +96 -44
- package/drag-and-drop/lib/cjs/DragAndDrop.js.map +1 -1
- package/drag-and-drop/lib/cjs/index.d.js.map +1 -1
- package/drag-and-drop/lib/cjs/translations/de.json +5 -0
- package/drag-and-drop/lib/cjs/translations/en.json +5 -0
- package/drag-and-drop/lib/cjs/translations/es.json +5 -0
- package/drag-and-drop/lib/cjs/translations/fr.json +5 -0
- package/drag-and-drop/lib/cjs/translations/it.json +5 -0
- package/drag-and-drop/lib/cjs/translations/ja.json +5 -0
- package/drag-and-drop/lib/cjs/translations/ko.json +5 -0
- package/drag-and-drop/lib/cjs/translations/nl.json +5 -0
- package/drag-and-drop/lib/cjs/translations/pl.json +5 -0
- package/drag-and-drop/lib/cjs/translations/pt.json +5 -0
- package/drag-and-drop/lib/cjs/translations/sv.json +5 -0
- package/drag-and-drop/lib/cjs/translations/tr.json +5 -0
- package/drag-and-drop/lib/cjs/translations/vi.json +5 -0
- package/drag-and-drop/lib/cjs/translations/zh.json +5 -0
- package/drag-and-drop/lib/es6/DragAndDrop.js +96 -44
- package/drag-and-drop/lib/es6/DragAndDrop.js.map +1 -1
- package/drag-and-drop/lib/es6/index.d.js.map +1 -1
- package/drag-and-drop/lib/es6/translations/de.json +5 -0
- package/drag-and-drop/lib/es6/translations/en.json +5 -0
- package/drag-and-drop/lib/es6/translations/es.json +5 -0
- package/drag-and-drop/lib/es6/translations/fr.json +5 -0
- package/drag-and-drop/lib/es6/translations/it.json +5 -0
- package/drag-and-drop/lib/es6/translations/ja.json +5 -0
- package/drag-and-drop/lib/es6/translations/ko.json +5 -0
- package/drag-and-drop/lib/es6/translations/nl.json +5 -0
- package/drag-and-drop/lib/es6/translations/pl.json +5 -0
- package/drag-and-drop/lib/es6/translations/pt.json +5 -0
- package/drag-and-drop/lib/es6/translations/sv.json +5 -0
- package/drag-and-drop/lib/es6/translations/tr.json +5 -0
- package/drag-and-drop/lib/es6/translations/vi.json +5 -0
- package/drag-and-drop/lib/es6/translations/zh.json +5 -0
- package/drag-and-drop/lib/types/index.d.ts +13 -2
- package/package.json +3 -3
- package/pills/lib/cjs/Pills.js +44 -57
- package/pills/lib/cjs/Pills.js.map +1 -1
- package/pills/lib/cjs/style/pills.shadow.css +3 -9
- package/pills/lib/es6/Pills.js +44 -57
- package/pills/lib/es6/Pills.js.map +1 -1
- package/pills/lib/es6/style/pills.shadow.css +3 -9
- package/utils/lib/enhances/a11yEnhance.d.ts +9 -3
- package/utils/lib/enhances/a11yEnhance.js +11 -11
- package/utils/lib/enhances/a11yEnhance.js.map +1 -1
- package/utils/lib/enhances/a11yEnhance.mjs +11 -11
- package/utils/lib/enhances/a11yEnhance.mjs.map +1 -1
- package/utils/lib/themes/auto.css +3 -3
- package/utils/lib/themes/dark.css +2 -2
- package/utils/lib/themes/dark.json +1 -1
- package/utils/lib/themes/default.css +1 -1
- package/utils/lib/themes/light.css +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Radar.js","names":["React","cloneElement","Component","sstyled","Root","uniqueIDEnhancement","getOriginChildren","trottle","canUseDOM","polygonContains","line","lineRadial","curveLinearClosed","arc","createElement","CONSTANT","eventToPoint","getChartDefaultColorName","measureText","Tooltip","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","isValidElement","_text$props","_text$props2","max","props","width","height","apply","_toConsumableArray","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","t","push","pieContains","_ref12","_ref13","_ref14","_slicedToArray","startAngle","endAngle","_ref15","x","y","distance","sqrt","pow","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","concat","MINIMUM_OFFSET","RadarRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","args","_key","call","_defineProperty","_assertThisInitialized","_createClass","key","get","_this$asProps","asProps","id","uid","offset","computeOffset","value","getAxisProps","type","getPolygonProps","_ref16","index","dataKey","_this$asProps2","data","scale","color","getHoverProps","categories","categoriesKey","render","_ref2","SRadar","Element","_this$asProps3","Children","styles","size","_size","dataHintsHandler","establishDataType","toArray","forEach","child","Radar","Axis","cn","PolygonRoot","_Component2","_super2","getDotsProps","_this$asProps4","resolveColor","transparent","categoryKey","getLineProps","_this$asProps5","d3","_ref3","_this$asProps6","SPolygon","fill","_ref21","_ref21$curve","curve","min","d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","_ref5","describeGroupedValues","_getRadianPosition","_getRadianPosition2","cx","cy","AxisRoot","_Component3","_super3","_this2","_len2","_key2","activeLineIndex","_visible","_anchorProps","_ref17","setState","createLineRadial","getTicksProps","_ref18","_ref18$tickSize","_this$asProps7","getLabelsProps","_ref19","_ref19$labelOffset","labelOffset","_this$asProps8","componentDidMount","eventEmitter","unsubscribeTooltipVisible","subscribe","handlerTooltipVisible","componentWillUnmount","_ref6","_this$asProps9","SAxis","state","Fragment","category","_getRadianPosition3","_getRadianPosition4","_sstyled$cn","active","className","x1","y1","x2","y2","_ref22","AxisTicks","SAxisTick","tick","_ref7","AxisLabels","SAxisLabel","_getRadianPosition5","_getRadianPosition6","_getLabelPlacement","_getLabelPlacement2","_ref8","labelKey","lines","split","lineText","lineIndex","_category$props","_ref20","_ref20$width","_ref20$height","_getLabelOffsetPositi","_getLabelOffsetPositi2","Hover","_Component4","_super4","_this3","_len3","_key3","document","e","_this3$asProps","rootRef","point","current","diam","centerX","centerY","clientX","clientY","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","getIndex","emit","top","right","bottom","left","getPolygon","_this$asProps10","prevIndex","nextIndex","_getRadianPosition7","_getRadianPosition8","prevX1","prevY1","_getRadianPosition9","_getRadianPosition10","_getRadianPosition11","_getRadianPosition12","nextX1","nextY1","getPie","_this$asProps11","_this4","_this$asProps12","findIndex","c","_this5","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","_this$asProps13","SPieRect","_ref9","_this$getPie","_this$getPie2","circle","innerRadius","outerRadius","_ref10","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref11","SRadarTooltip","_objectSpread","_assignProps","_______childrenComponents"],"sources":["../../src/Radar.jsx"],"sourcesContent":["import React, { cloneElement } from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { polygonContains } from 'd3-polygon';\nimport { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';\nimport createElement from './createElement';\nimport { CONSTANT, eventToPoint, getChartDefaultColorName, measureText } from './utils';\nimport Tooltip from './Tooltip';\n\nimport style from './style/radar.shadow.css';\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 } = this.asProps;\n\n return {\n offset: this.offset,\n data: data[dataKey] || [],\n scale,\n angleOffset,\n color: getChartDefaultColorName(index),\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 };\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 />,\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 } = this.asProps;\n return {\n data,\n scale,\n color,\n resolveColor,\n transparent,\n categoryKey: dataKey,\n dataHintsHandler,\n angleOffset,\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 { Element: SPolygon, styles, d3, data, color, resolveColor, fill } = this.asProps;\n return sstyled(styles)(\n <SPolygon render='path' d={d3(data)} color={resolveColor(fill || color)} />,\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 } = 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 return sstyled(styles)(\n <SPolygonDot\n key={i}\n render='circle'\n cx={cx}\n cy={cy}\n color={resolveColor(color)}\n transparent={transparent}\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 handlerTooltipVisible = (_visible, _anchorProps, { index }) => {\n this.setState({\n activeLineIndex: index,\n });\n };\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n this.handlerTooltipVisible,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\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 <SAxis render='circle' cx={0} cy={0} r={radius} />\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 <SAxisTick key={i} render='circle' cx={0} cy={0} r={radius * tick} />\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 getPolygon(index) {\n const { categories, size, offset, angleOffset } = this.asProps;\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 { categories, size, offset, angleOffset } = this.asProps;\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 getIndex(point) {\n const { categories, type } = this.asProps;\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 handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, size, rootRef } = 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 // @ts-ignore\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(\n clientX,\n clientY,\n );\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n\n const index = this.getIndex([centerX, centerY]);\n\n this.setState(\n {\n index,\n },\n () => {\n eventEmitter.emit('onTooltipVisible', index !== null, {}, { index }, this.virtualElement);\n },\n );\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n this.setState(\n {\n index: null,\n },\n () => {\n this.asProps.eventEmitter.emit('onTooltipVisible', false, {}, { index: null });\n },\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 } = 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] = this.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()(this.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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"}
|
1
|
+
{"version":3,"file":"Radar.js","names":["React","cloneElement","Component","sstyled","Root","uniqueIDEnhancement","getOriginChildren","trottle","canUseDOM","polygonContains","line","lineRadial","curveLinearClosed","arc","createElement","CONSTANT","eventToPoint","getChartDefaultColorName","measureText","Tooltip","PatternFill","PatternSymbol","getPatternSymbolSize","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","isValidElement","_text$props","_text$props2","max","props","width","height","apply","_toConsumableArray","getTicks","tickSize","radius","ticks","trunc","Array","keys","reduce","t","push","pieContains","_ref13","_ref14","_ref15","_slicedToArray","startAngle","endAngle","_ref16","x","y","distance","sqrt","pow","atan2","prevAngle","nextAngle","getLabelOffsetPosition","xDirection","yDirection","xOffset","yOffset","concat","MINIMUM_OFFSET","RadarRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","args","_key","call","_defineProperty","_assertThisInitialized","_createClass","key","get","_this$asProps","asProps","id","uid","offset","computeOffset","value","getAxisProps","type","getPolygonProps","_ref17","index","dataKey","_this$asProps2","data","scale","patterns","color","getHoverProps","categories","categoriesKey","render","_ref2","SRadar","Element","_this$asProps3","Children","styles","size","_size","dataHintsHandler","establishDataType","toArray","forEach","child","Radar","Axis","cn","PolygonRoot","_Component2","_super2","getDotsProps","_this$asProps4","resolveColor","transparent","categoryKey","getLineProps","_this$asProps5","d3","_ref3","_this$asProps6","SPolygon","fill","Fragment","_ref22","_ref22$curve","curve","min","d","PolygonLine","_ref4","SPolygonLine","PolygonDots","SPolygonDot","_ref6","describeGroupedValues","_getRadianPosition","_getRadianPosition2","cx","cy","_ref5","patternKey","_getPatternSymbolSize","_getPatternSymbolSize2","AxisRoot","_Component3","_super3","_this2","_len2","_key2","activeLineIndex","_visible","_anchorProps","_ref18","setState","createLineRadial","getTicksProps","_ref19","_ref19$tickSize","_this$asProps7","getLabelsProps","_ref20","_ref20$labelOffset","labelOffset","_this$asProps8","componentDidMount","eventEmitter","unsubscribeTooltipVisible","subscribe","handlerTooltipVisible","componentWillUnmount","_ref7","_this$asProps9","SAxis","state","category","_getRadianPosition3","_getRadianPosition4","_sstyled$cn","active","className","x1","y1","x2","y2","_ref23","AxisTicks","SAxisTick","tick","_ref8","AxisLabels","SAxisLabel","_getRadianPosition5","_getRadianPosition6","_getLabelPlacement","_getLabelPlacement2","_ref9","labelKey","lines","split","lineText","lineIndex","_category$props","_ref21","_ref21$width","_ref21$height","_getLabelOffsetPositi","_getLabelOffsetPositi2","Hover","_Component4","_super4","_this3","_len3","_key3","document","e","_this3$asProps","rootRef","point","current","diam","centerX","centerY","clientX","clientY","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","getIndex","emit","top","right","bottom","left","getPolygon","_this$asProps10","prevIndex","nextIndex","_getRadianPosition7","_getRadianPosition8","prevX1","prevY1","_getRadianPosition9","_getRadianPosition10","_getRadianPosition11","_getRadianPosition12","nextX1","nextY1","getPie","_this$asProps11","_this4","_this$asProps12","findIndex","c","_this5","unsubscribeMouseMoveRoot","persist","handlerMouseMoveRoot","unsubscribeMouseLeaveRoot","handlerMouseLeaveRoot","_this$asProps13","SPieRect","_ref10","_this$getPie","_this$getPie2","circle","innerRadius","outerRadius","_ref11","Ticks","Labels","Polygon","Line","Dots","RadarTooltip","_ref","arguments[0]","_ref12","SRadarTooltip","_objectSpread","_assignProps","_______childrenComponents"],"sources":["../../src/Radar.jsx"],"sourcesContent":["import React, { cloneElement } from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { polygonContains } from 'd3-polygon';\nimport { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';\nimport createElement from './createElement';\nimport { CONSTANT, eventToPoint, getChartDefaultColorName, measureText } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill, PatternSymbol, getPatternSymbolSize } from './Pattern';\n\nimport style from './style/radar.shadow.css';\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 };\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 />,\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 handlerTooltipVisible = (_visible, _anchorProps, { index }) => {\n this.setState({\n activeLineIndex: index,\n });\n };\n\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n this.handlerTooltipVisible,\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\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 <SAxis render='circle' cx={0} cy={0} r={radius} />\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 <SAxisTick key={i} render='circle' cx={0} cy={0} r={radius * tick} />\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 getPolygon(index) {\n const { categories, size, offset, angleOffset } = this.asProps;\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 { categories, size, offset, angleOffset } = this.asProps;\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 getIndex(point) {\n const { categories, type } = this.asProps;\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 handlerMouseMoveRoot = trottle((e) => {\n const { eventEmitter, size, rootRef, patterns } = 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 // @ts-ignore\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(\n clientX,\n clientY,\n );\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n\n const index = this.getIndex([centerX, centerY]);\n\n this.setState(\n {\n index,\n },\n () => {\n eventEmitter.emit(\n 'onTooltipVisible',\n index !== null,\n {},\n { index, patterns },\n this.virtualElement,\n );\n },\n );\n });\n\n handlerMouseLeaveRoot = trottle(() => {\n const { patterns } = this.asProps;\n this.setState(\n {\n index: null,\n },\n () => {\n this.asProps.eventEmitter.emit('onTooltipVisible', false, {}, { index: null, patterns });\n },\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 } = 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] = this.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()(this.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":";;;;;;;;;;;AAAA,OAAOA,KAAK,IAAIC,YAAY,QAAQ,OAAO;AAC3C,SAASC,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,eAAe;AACxD,OAAOC,mBAAmB,MAAM,6BAA6B;AAC7D,OAAOC,iBAAiB,MAAM,sCAAsC;AACpE,OAAOC,OAAO,MAAM,+BAA+B;AACnD,OAAOC,SAAS,MAAM,8BAA8B;AACpD,SAASC,eAAe,QAAQ,YAAY;AAC5C,SAASC,IAAI,EAAEC,UAAU,EAAEC,iBAAiB,EAAEC,GAAG,QAAQ,UAAU;AACnE,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,SAASC,QAAQ,EAAEC,YAAY,EAAEC,wBAAwB,EAAEC,WAAW,QAAQ,SAAS;AACvF,OAAOC,OAAO,MAAM,WAAW;AAC/B,SAASC,WAAW,EAAEC,aAAa,EAAEC,oBAAoB,QAAQ,WAAW;AAAC;AAAA,IAAAC,KAAA,+BAAAC,QAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAI7E,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,OAAOnC,WAAW,CAACmC,IAAI,EAAER,QAAQ,CAAC;IACpC;IACA,kBAAI7C,KAAK,CAACsD,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,EAAE,EAAEC,MAAM,CAAC,UAACJ,KAAK,EAAEK,CAAC,EAAExC,CAAC,EAAEG,KAAK,EAAK;IAC7D,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;EAAM;EAEV,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;EAAAC,SAAA,CAAAF,SAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,SAAA;EAAA,SAAAA,UAAA;IAAA,IAAAK,KAAA;IAAAC,eAAA,OAAAN,SAAA;IAAA,SAAAO,IAAA,GAAAxD,SAAA,CAAAC,MAAA,EAAAwD,IAAA,OAAApC,KAAA,CAAAmC,IAAA,GAAAE,IAAA,MAAAA,IAAA,GAAAF,IAAA,EAAAE,IAAA;MAAAD,IAAA,CAAAC,IAAA,IAAA1D,SAAA,CAAA0D,IAAA;IAAA;IAAAJ,KAAA,GAAAF,MAAA,CAAAO,IAAA,CAAA7C,KAAA,CAAAsC,MAAA,SAAAL,MAAA,CAAAU,IAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAP,KAAA,oBAKG,CAAC;IAAAM,eAAA,CAAAC,sBAAA,CAAAP,KAAA,oBAED,IAAI;IAAA,OAAAA,KAAA;EAAA;EAAAQ,YAAA,CAAAb,SAAA;IAAAc,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,IAAQlE,QAAQ,GAAK,IAAI,CAACoE,OAAO,CAAzBpE,QAAQ;MAChB,OAAOA,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI,EAAE;IACvB;EAAC;IAAAiE,GAAA;IAAAQ,KAAA,EAED,SAAAC,aAAA,EAAe;MACb,OAAO;QACLH,MAAM,EAAE,IAAI,CAACA,MAAM;QACnBvE,QAAQ,EAAE,IAAI,CAACA,QAAQ;QACvB2E,IAAI,EAAE,IAAI,CAACP,OAAO,CAACO,IAAI;QACvBrF,WAAW,EAAE,IAAI,CAAC8E,OAAO,CAAC9E;MAC5B,CAAC;IACH;EAAC;IAAA2E,GAAA;IAAAQ,KAAA,EAED,SAAAG,gBAAAC,MAAA,EAA6BC,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;QAAE5F,WAAW,GAAA0F,cAAA,CAAX1F,WAAW;QAAEgF,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;QACL5F,WAAW,EAAXA,WAAW;QACX8F,KAAK,EAAEhH,wBAAwB,CAAC0G,KAAK,CAAC;QACtCR,GAAG,KAAArB,MAAA,CAAKqB,GAAG,OAAArB,MAAA,CAAI6B,KAAK,CAAE;QACtBK,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAAlB,GAAA;IAAAQ,KAAA,EAED,SAAAY,cAAA,EAAgB;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;QACjDjG,WAAW,EAAE,IAAI,CAAC8E,OAAO,CAAC9E;MAC5B,CAAC;IACH;EAAC;IAAA2E,GAAA;IAAAQ,KAAA,EAED,SAAAe,OAAA,EAAS;MAAA,IAAAC,KAAA;MACP,IAAMC,MAAM,GAAG,IAAI,CAACC,OAAO;MAC3B,IAAAC,cAAA,GAAiD,IAAI,CAACxB,OAAO;QAArDyB,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,MAAM,GAAAF,cAAA,CAANE,MAAM;QAAEC,IAAI,GAAAH,cAAA,CAAJG,IAAI;QAAEd,IAAI,GAAAW,cAAA,CAAJX,IAAI;QAAEV,MAAM,GAAAqB,cAAA,CAANrB,MAAM;MAC5C,IAAAyB,KAAA,GAAAhE,cAAA,CAAwB+D,IAAI;QAArBjF,KAAK,GAAAkF,KAAA;QAAEjF,MAAM,GAAAiF,KAAA;MAEpB,IAAI,CAAC5B,OAAO,CAAC6B,gBAAgB,CAACC,iBAAiB,CAAC,gBAAgB,CAAC;MAEjE,IAAInB,OAAO;MACX5H,KAAK,CAAC0I,QAAQ,CAACM,OAAO,CAAC1I,iBAAiB,CAACoI,QAAQ,CAAC,CAAC,CAACO,OAAO,CAAC,UAACC,KAAK,EAAK;QACrE,IAAI,cAAAlJ,KAAK,CAACsD,cAAc,CAAC4F,KAAK,CAAC,IAAIA,KAAK,CAAC1B,IAAI,KAAK2B,KAAK,CAACC,IAAI,EAAE;UAC5DxB,OAAO,GAAGsB,KAAK,CAACxF,KAAK,CAACkE,OAAO;QAC/B;MACF,CAAC,CAAC;MACF,IAAIA,OAAO,EAAE;QACX,IAAIR,MAAM,KAAKnE,SAAS,EAAE;UACxB;UACA,IAAI,CAACoE,aAAa,GAAG1E,gBAAgB,CAACmF,IAAI,CAACF,OAAO,CAAC,EAAE,IAAI,CAAC/E,QAAQ,CAAC,GAAGkD,cAAc;QACtF;QACA,IAAI,CAACqC,aAAa,GAAGR,OAAO;MAC9B;MAEA,OAAAU,KAAA,GAAOnI,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAACyH,MAAM,EAAAD,KAAA,CAAAe,EAAA;QAAA;QAAA,MAED,IAAI,CAACnC,EAAE;QAAA,UACJ,GAAG;QAAA,oBACO,QAAQ;QAAA,0BAAApB,MAAA,CACDnC,KAAK,GAAG,CAAC,OAAAmC,MAAA,CAAIlC,MAAM,GAAG,CAAC;MAAA,GAC/C;IAEN;EAAC;EAAA,OAAAoC,SAAA;AAAA,EA3FqB9F,SAAS;AAAAyG,eAAA,CAA3BX,SAAS,iBACQ,MAAM;AAAAW,eAAA,CADvBX,SAAS,WAEEzE,KAAK;AAAAoF,eAAA,CAFhBX,SAAS,aAGI,CAAC3F,mBAAmB,EAAE,CAAC;AAAAsG,eAAA,CAHpCX,SAAS,kBASS;EACpBwB,IAAI,EAAE,SAAS;EACfrF,WAAW,EAAE;AACf,CAAC;AAAA,IAkFGmH,WAAW,0BAAAC,WAAA;EAAArD,SAAA,CAAAoD,WAAA,EAAAC,WAAA;EAAA,IAAAC,OAAA,GAAApD,YAAA,CAAAkD,WAAA;EAAA,SAAAA,YAAA;IAAAhD,eAAA,OAAAgD,WAAA;IAAA,OAAAE,OAAA,CAAA3F,KAAA,OAAAd,SAAA;EAAA;EAAA8D,YAAA,CAAAyC,WAAA;IAAAxC,GAAA;IAAAQ,KAAA,EAmBf,SAAAmC,aAAA,EAAe;MACb,IAAAC,cAAA,GAUI,IAAI,CAACzC,OAAO;QATda,IAAI,GAAA4B,cAAA,CAAJ5B,IAAI;QACJC,KAAK,GAAA2B,cAAA,CAAL3B,KAAK;QACLE,KAAK,GAAAyB,cAAA,CAALzB,KAAK;QACL0B,YAAY,GAAAD,cAAA,CAAZC,YAAY;QACZC,WAAW,GAAAF,cAAA,CAAXE,WAAW;QACXhC,OAAO,GAAA8B,cAAA,CAAP9B,OAAO;QACPkB,gBAAgB,GAAAY,cAAA,CAAhBZ,gBAAgB;QAChB3G,WAAW,GAAAuH,cAAA,CAAXvH,WAAW;QACX6F,QAAQ,GAAA0B,cAAA,CAAR1B,QAAQ;MAEV,OAAO;QACLF,IAAI,EAAJA,IAAI;QACJC,KAAK,EAALA,KAAK;QACLE,KAAK,EAALA,KAAK;QACL0B,YAAY,EAAZA,YAAY;QACZC,WAAW,EAAXA,WAAW;QACXC,WAAW,EAAEjC,OAAO;QACpBkB,gBAAgB,EAAhBA,gBAAgB;QAChB3G,WAAW,EAAXA,WAAW;QACX6F,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAAlB,GAAA;IAAAQ,KAAA,EAED,SAAAwC,aAAA,EAAe;MACb,IAAAC,cAAA,GAAuD,IAAI,CAAC9C,OAAO;QAA3D+C,EAAE,GAAAD,cAAA,CAAFC,EAAE;QAAElC,IAAI,GAAAiC,cAAA,CAAJjC,IAAI;QAAEG,KAAK,GAAA8B,cAAA,CAAL9B,KAAK;QAAE0B,YAAY,GAAAI,cAAA,CAAZJ,YAAY;QAAEC,WAAW,GAAAG,cAAA,CAAXH,WAAW;MAClD,OAAO;QACL9B,IAAI,EAAJA,IAAI;QACJG,KAAK,EAALA,KAAK;QACL0B,YAAY,EAAZA,YAAY;QACZC,WAAW,EAAXA,WAAW;QACXI,EAAE,EAAFA;MACF,CAAC;IACH;EAAC;IAAAlD,GAAA;IAAAQ,KAAA,EAED,SAAAe,OAAA,EAAS;MAAA,IAAA4B,KAAA;MACP,IAAAC,cAAA,GAUI,IAAI,CAACjD,OAAO;QATLkD,QAAQ,GAAAD,cAAA,CAAjB1B,OAAO;QACPG,MAAM,GAAAuB,cAAA,CAANvB,MAAM;QACNqB,EAAE,GAAAE,cAAA,CAAFF,EAAE;QACFlC,IAAI,GAAAoC,cAAA,CAAJpC,IAAI;QACJG,KAAK,GAAAiC,cAAA,CAALjC,KAAK;QACL0B,YAAY,GAAAO,cAAA,CAAZP,YAAY;QACZS,IAAI,GAAAF,cAAA,CAAJE,IAAI;QACJjD,GAAG,GAAA+C,cAAA,CAAH/C,GAAG;QACHa,QAAQ,GAAAkC,cAAA,CAARlC,QAAQ;MAEV,oBACEhI,KAAA,CAAAc,aAAA,CAAAd,KAAA,CAAAqK,QAAA,SAAAJ,KAAA,GACG9J,OAAO,CAACwI,MAAM,CAAC,eACd3I,KAAA,CAAAc,aAAA,CAACqJ,QAAQ,EAAAF,KAAA,CAAAZ,EAAA;QAAA,UACA,MAAM;QAAA,KACVW,EAAE,CAAClC,IAAI,CAAC;QAAA,SACJ6B,YAAY,CAACS,IAAI,IAAInC,KAAK,CAAC;QAAA,WACzBD,QAAQ,WAAAlC,MAAA,CAAWqB,GAAG,iBAAclE;MAAS,GACtD,GAEH+E,QAAQ,iBACPhI,KAAA,CAAAc,aAAA,CAACM,WAAW,EAAA6I,KAAA,CAAAZ,EAAA;QAAA,SAAAvD,MAAA,CACHqB,GAAG;QAAA,cACEc,KAAK;QAAA,SACV0B,YAAY,CAACS,IAAI,IAAInC,KAAK,CAAC;QAAA,YACxBD;MAAQ,GAErB,CACA;IAEP;EAAC;EAAA,OAAAsB,WAAA;AAAA,EAvFuBpJ,SAAS;AAAAyG,eAAA,CAA7B2C,WAAW,iBACM,SAAS;AAAA3C,eAAA,CAD1B2C,WAAW,WAEA/H,KAAK;AAAAoF,eAAA,CAFhB2C,WAAW,kBAIO,UAAAgB,MAAA,EAAqE;EAAA,IAAlEvC,KAAK,GAAAuC,MAAA,CAALvC,KAAK;IAAAwC,YAAA,GAAAD,MAAA,CAAEE,KAAK;IAALA,KAAK,GAAAD,YAAA,cAAG3J,iBAAiB,GAAA2J,YAAA;IAAE3B,IAAI,GAAA0B,MAAA,CAAJ1B,IAAI;IAAExB,MAAM,GAAAkD,MAAA,CAANlD,MAAM;IAAEjF,WAAW,GAAAmI,MAAA,CAAXnI,WAAW;EAClF4F,KAAK,CAAC/F,KAAK,CAAC,CAAC,CAAC,EAAEJ,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGxB,MAAM,CAAC,CAAC;EAEzD,OAAO;IACL4C,EAAE,EAAErJ,UAAU,EAAE,CACb6J,KAAK,CAACA,KAAK,CAAC,CACZvG,MAAM,CAAC,UAACyG,CAAC,EAAK;MACb,OAAO3C,KAAK,CAAC2C,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CACD/I,KAAK,CAAC,UAAC+I,CAAC,EAAE3I,CAAC,EAAE+F,IAAI,EAAK;MACrB,OAAQ/F,CAAC,GAAG+F,IAAI,CAAC9E,MAAM,GAAI,CAAC,GAAGpB,IAAI,CAACC,EAAE,GAAGM,WAAW;IACtD,CAAC;EACL,CAAC;AACH,CAAC;AAyEH,SAASwI,WAAWA,CAACjH,KAAK,EAAE;EAAA,IAAAkH,KAAA;EAC1B,IAAiBC,YAAY,GAAyDnH,KAAK,CAAnF8E,OAAO;IAAgBG,MAAM,GAAiDjF,KAAK,CAA5DiF,MAAM;IAAEqB,EAAE,GAA6CtG,KAAK,CAApDsG,EAAE;IAAE/B,KAAK,GAAsCvE,KAAK,CAAhDuE,KAAK;IAAE0B,YAAY,GAAwBjG,KAAK,CAAzCiG,YAAY;IAAE7B,IAAI,GAAkBpE,KAAK,CAA3BoE,IAAI;IAAE8B,WAAW,GAAKlG,KAAK,CAArBkG,WAAW;EACjF,OAAAgB,KAAA,GAAOzK,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAAC+J,YAAY,EAAAD,KAAA,CAAAvB,EAAA;IAAA,UACJ,MAAM;IAAA,KACVW,EAAE,CAAClC,IAAI,CAAC;IAAA,SACJ6B,YAAY,CAAC1B,KAAK,CAAC;IAAA,eACb2B;EAAW,GACxB;AAEN;AAEA,SAASkB,WAAWA,CAACpH,KAAK,EAAE;EAC1B,IACWqH,WAAW,GAUlBrH,KAAK,CAVP8E,OAAO;IACPG,MAAM,GASJjF,KAAK,CATPiF,MAAM;IACNV,KAAK,GAQHvE,KAAK,CARPuE,KAAK;IACL0B,YAAY,GAOVjG,KAAK,CAPPiG,YAAY;IACZ7B,IAAI,GAMFpE,KAAK,CANPoE,IAAI;IACJC,KAAK,GAKHrE,KAAK,CALPqE,KAAK;IACL6B,WAAW,GAITlG,KAAK,CAJPkG,WAAW;IACXC,WAAW,GAGTnG,KAAK,CAHPmG,WAAW;IACX1H,WAAW,GAETuB,KAAK,CAFPvB,WAAW;IACX6F,QAAQ,GACNtE,KAAK,CADPsE,QAAQ;EAEV,OAAOF,IAAI,CAAC1E,GAAG,CAAC,UAACkE,KAAK,EAAEvF,CAAC,EAAK;IAAA,IAAAiJ,KAAA;IAC5B,IAAI1D,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKrE,SAAS,EAAE;IAC3C,IAAMgB,MAAM,GAAG8D,KAAK,CAACT,KAAK,CAAC;IAC3B5D,KAAK,CAACoF,gBAAgB,CAACmC,qBAAqB,CAACpB,WAAW,KAAA/D,MAAA,CAAK+D,WAAW,OAAA/D,MAAA,CAAI/D,CAAC,EAAG;IAChF,IAAAmJ,kBAAA,GAAiB3I,iBAAiB,CAACR,CAAC,EAAEkC,MAAM,EAAE6D,IAAI,CAAC9E,MAAM,EAAEb,WAAW,CAAC;MAAAgJ,mBAAA,GAAAtG,cAAA,CAAAqG,kBAAA;MAAhEE,EAAE,GAAAD,mBAAA;MAAEE,EAAE,GAAAF,mBAAA;IAEb,IAAI,CAACnD,QAAQ,EAAE;MAAA,IAAAsD,KAAA;MACb,OAAAA,KAAA,GAAOnL,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAACiK,WAAW,EAAAO,KAAA,CAAAjC,EAAA;QAAA,UACH,QAAQ;QAAA,SACRM,YAAY,CAAC1B,KAAK,CAAC;QAAA,eACb2B,WAAW;QAAA,cACZ3B,KAAK;QAAA,UAAAnC,MAAA,CACT/D,CAAC;QAAA,MACLqJ,EAAE;QAAA,MACFC;MAAE,GACN;IAEN;IAEA,IAAME,UAAU,GAAGtD,KAAK,IAAIhH,wBAAwB,CAAC,CAAC,CAAC;IACvD,IAAAuK,qBAAA,GAAwBlK,oBAAoB,CAAC;QAC3CiK,UAAU,EAAVA,UAAU;QACVvD,QAAQ,EAARA;MACF,CAAC,CAAC;MAAAyD,sBAAA,GAAA5G,cAAA,CAAA2G,qBAAA;MAHK7H,KAAK,GAAA8H,sBAAA;MAAE7H,MAAM,GAAA6H,sBAAA;IAKpB,OAAAT,KAAA,GAAO7K,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAACiK,WAAW,EAAAC,KAAA,CAAA3B,EAAA;MAAA,UACFhI,aAAa;MAAA,SACdsI,YAAY,CAAC1B,KAAK,CAAC;MAAA,eACb2B,WAAW;MAAA,cACZ3B,KAAK;MAAA,UAAAnC,MAAA,CACT/D,CAAC;MAAA,KACNqJ,EAAE,GAAGzH,KAAK,GAAG,CAAC;MAAA,KACd0H,EAAE,GAAGzH,MAAM,GAAG;IAAC,GAClB;EAEN,CAAC,CAAC;AACJ;AAAC,IAEK8H,QAAQ,0BAAAC,WAAA;EAAAzF,SAAA,CAAAwF,QAAA,EAAAC,WAAA;EAAA,IAAAC,OAAA,GAAAxF,YAAA,CAAAsF,QAAA;EAAA,SAAAA,SAAA;IAAA,IAAAG,MAAA;IAAAvF,eAAA,OAAAoF,QAAA;IAAA,SAAAI,KAAA,GAAA/I,SAAA,CAAAC,MAAA,EAAAwD,IAAA,OAAApC,KAAA,CAAA0H,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAAvF,IAAA,CAAAuF,KAAA,IAAAhJ,SAAA,CAAAgJ,KAAA;IAAA;IAAAF,MAAA,GAAAD,OAAA,CAAAlF,IAAA,CAAA7C,KAAA,CAAA+H,OAAA,SAAA9F,MAAA,CAAAU,IAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAiF,MAAA,gCAWgB,IAAI;IAAAlF,eAAA,CAAAC,sBAAA,CAAAiF,MAAA,YAExB;MACNG,eAAe,EAAE;IACnB,CAAC;IAAArF,eAAA,CAAAC,sBAAA,CAAAiF,MAAA,4BAoCuB,UAACI,QAAQ,EAAEC,YAAY,EAAAC,MAAA,EAAgB;MAAA,IAAZxE,KAAK,GAAAwE,MAAA,CAALxE,KAAK;MACtDkE,MAAA,CAAKO,QAAQ,CAAC;QACZJ,eAAe,EAAErE;MACnB,CAAC,CAAC;IACJ,CAAC;IAAA,OAAAkE,MAAA;EAAA;EAAAhF,YAAA,CAAA6E,QAAA;IAAA5E,GAAA;IAAAQ,KAAA,EAtCD,SAAA+E,iBAAiBpI,MAAM,EAAE/B,KAAK,EAAE;MAC9B,OAAOvB,UAAU,EAAE,CAChB6J,KAAK,CAAC5J,iBAAiB,CAAC,CACxBqD,MAAM,CAAC,YAAM;QACZ,OAAOA,MAAM;MACf,CAAC,CAAC,CACDtC,KAAK,CAAC,UAAC+I,CAAC,EAAE3I,CAAC,EAAK;QACf,OAAQA,CAAC,GAAGG,KAAK,GAAI,CAAC,GAAGN,IAAI,CAACC,EAAE;MAClC,CAAC,CAAC;IACN;EAAC;IAAAiF,GAAA;IAAAQ,KAAA,EAED,SAAAgF,cAAAC,MAAA,EAAkC;MAAA,IAAAC,eAAA,GAAAD,MAAA,CAAlBvI,QAAQ;QAARA,QAAQ,GAAAwI,eAAA,cAAG,GAAG,GAAAA,eAAA;MAC5B,IAAAC,cAAA,GAAiD,IAAI,CAACxF,OAAO;QAArDa,IAAI,GAAA2E,cAAA,CAAJ3E,IAAI;QAAEV,MAAM,GAAAqF,cAAA,CAANrF,MAAM;QAAEe,UAAU,GAAAsE,cAAA,CAAVtE,UAAU;QAAES,IAAI,GAAA6D,cAAA,CAAJ7D,IAAI;QAAEpB,IAAI,GAAAiF,cAAA,CAAJjF,IAAI;MAC5C,IAAMvD,MAAM,GAAGrC,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGxB,MAAM;MACtD,OAAO;QACLI,IAAI,EAAJA,IAAI;QACJM,IAAI,EAAJA,IAAI;QACJK,UAAU,EAAVA,UAAU;QACVjE,KAAK,EAAEH,QAAQ,CAACC,QAAQ,EAAEC,MAAM,CAAC;QACjCmD,MAAM,EAANA,MAAM;QACN4C,EAAE,EAAE,IAAI,CAACqC,gBAAgB,CAACpI,MAAM,EAAEkE,UAAU,CAACnF,MAAM;MACrD,CAAC;IACH;EAAC;IAAA8D,GAAA;IAAAQ,KAAA,EAED,SAAAoF,eAAAC,MAAA,EAAqC;MAAA,IAAAC,kBAAA,GAAAD,MAAA,CAApBE,WAAW;QAAXA,WAAW,GAAAD,kBAAA,cAAG,EAAE,GAAAA,kBAAA;MAC/B,IAAAE,cAAA,GAAsD,IAAI,CAAC7F,OAAO;QAA1DG,MAAM,GAAA0F,cAAA,CAAN1F,MAAM;QAAEe,UAAU,GAAA2E,cAAA,CAAV3E,UAAU;QAAEtF,QAAQ,GAAAiK,cAAA,CAARjK,QAAQ;QAAEV,WAAW,GAAA2K,cAAA,CAAX3K,WAAW;MACjD,OAAO;QACLgG,UAAU,EAAVA,UAAU;QACVtF,QAAQ,EAARA,QAAQ;QACRuE,MAAM,EAAEA,MAAM,GAAGyF,WAAW;QAC5B1K,WAAW,EAAXA;MACF,CAAC;IACH;EAAC;IAAA2E,GAAA;IAAAQ,KAAA,EAQD,SAAAyF,kBAAA,EAAoB;MAClB,IAAQC,YAAY,GAAK,IAAI,CAAC/F,OAAO,CAA7B+F,YAAY;MACpB,IAAI,CAACC,yBAAyB,GAAGD,YAAY,CAACE,SAAS,CACrD,kBAAkB,EAClB,IAAI,CAACC,qBAAqB,CAC3B;IACH;EAAC;IAAArG,GAAA;IAAAQ,KAAA,EAED,SAAA8F,qBAAA,EAAuB;MACrB,IAAI,IAAI,CAACH,yBAAyB,EAAE;QAClC,IAAI,CAACA,yBAAyB,EAAE;MAClC;IACF;EAAC;IAAAnG,GAAA;IAAAQ,KAAA,EAED,SAAAe,OAAA,EAAS;MAAA,IAAAgF,KAAA;MACP,IAAAC,cAAA,GAAgF,IAAI,CAACrG,OAAO;QAA3EsG,KAAK,GAAAD,cAAA,CAAd9E,OAAO;QAASG,MAAM,GAAA2E,cAAA,CAAN3E,MAAM;QAAER,UAAU,GAAAmF,cAAA,CAAVnF,UAAU;QAAES,IAAI,GAAA0E,cAAA,CAAJ1E,IAAI;QAAExB,MAAM,GAAAkG,cAAA,CAANlG,MAAM;QAAEI,IAAI,GAAA8F,cAAA,CAAJ9F,IAAI;QAAErF,WAAW,GAAAmL,cAAA,CAAXnL,WAAW;MAC3E,IAAQ6J,eAAe,GAAK,IAAI,CAACwB,KAAK,CAA9BxB,eAAe;MACvB,IAAM/H,MAAM,GAAGrC,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGxB,MAAM;MACtD,IAAMlF,KAAK,GAAGiG,UAAU,CAACnF,MAAM;MAE/B,OAAAqK,KAAA,GAAOlN,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAAAd,KAAA,CAAAqK,QAAA,QACG7C,IAAI,KAAK,QAAQ,gBAChBxH,KAAA,CAAAc,aAAA,CAACyM,KAAK,EAAAF,KAAA,CAAAhE,EAAA;QAAA,UAAQ,QAAQ;QAAA,MAAK,CAAC;QAAA,MAAM,CAAC;QAAA,KAAKpF;MAAM,GAAI,gBAElDjE,KAAA,CAAAc,aAAA,CAACyM,KAAK,EAAAF,KAAA,CAAAhE,EAAA;QAAA,UAAQ,MAAM;QAAA,KAAI,IAAI,CAACgD,gBAAgB,CAACpI,MAAM,EAAE/B,KAAK,CAAC,CAACiG,UAAU;MAAC,GACzE,EACAA,UAAU,CAAC/E,GAAG,CAAC,UAACqK,QAAQ,EAAE1L,CAAC,EAAK;QAC/B,IAAA2L,mBAAA,GAAenL,iBAAiB,CAACR,CAAC,EAAEkC,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;UAAAwL,mBAAA,GAAA9I,cAAA,CAAA6I,mBAAA;UAAxDzI,CAAC,GAAA0I,mBAAA;UAAEzI,CAAC,GAAAyI,mBAAA;QACX,IAAAC,WAAA,GAAsBzN,OAAO,CAACwI,MAAM,CAAC,CAACU,EAAE,CAAC,WAAW,EAAE;YACpDwE,MAAM,EAAE7B,eAAe,KAAKjK;UAC9B,CAAC,CAAC;UAFM+L,SAAS,GAAAF,WAAA,CAATE,SAAS;QAGjB,oBAAO9N,KAAA,CAAAc,aAAA;UAAMgG,GAAG,EAAE/E,CAAE;UAACgM,EAAE,EAAE,CAAE;UAACC,EAAE,EAAE,CAAE;UAACC,EAAE,EAAEhJ,CAAE;UAACiJ,EAAE,EAAEhJ,CAAE;UAAC4I,SAAS,EAAEA;QAAU,EAAG;MAC3E,CAAC,CAAC,CACD;IAEP;EAAC;EAAA,OAAApC,QAAA;AAAA,EA7FoBxL,SAAS;AAAAyG,eAAA,CAA1B+E,QAAQ,iBACS,SAAS;AAAA/E,eAAA,CAD1B+E,QAAQ,WAEGnK,KAAK;AAAAoF,eAAA,CAFhB+E,QAAQ,kBAIU,UAAAyC,MAAA,EAAuB;EAAA,IAApBrG,IAAI,GAAAqG,MAAA,CAAJrG,IAAI;IAAEF,OAAO,GAAAuG,MAAA,CAAPvG,OAAO;EACpC,IAAMO,UAAU,GAAGL,IAAI,CAACF,OAAO,CAAC;EAChC,OAAO;IACLO,UAAU,EAAVA;EACF,CAAC;AACH,CAAC;AAuFH,SAASiG,SAASA,CAAC1K,KAAK,EAAE;EACxB,IAAiB2K,SAAS,GAAwD3K,KAAK,CAA/E8E,OAAO;IAAaG,MAAM,GAAgDjF,KAAK,CAA3DiF,MAAM;IAAEC,IAAI,GAA0ClF,KAAK,CAAnDkF,IAAI;IAAE1E,KAAK,GAAmCR,KAAK,CAA7CQ,KAAK;IAAE8F,EAAE,GAA+BtG,KAAK,CAAtCsG,EAAE;IAAE7B,UAAU,GAAmBzE,KAAK,CAAlCyE,UAAU;IAAEf,MAAM,GAAW1D,KAAK,CAAtB0D,MAAM;IAAEI,IAAI,GAAK9D,KAAK,CAAd8D,IAAI;EAC7E,IAAMvD,MAAM,GAAGrC,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGxB,MAAM;EAEtD,OAAOlD,KAAK,CAACd,GAAG,CAAC,UAACkL,IAAI,EAAEvM,CAAC,EAAK;IAAA,IAAAwM,KAAA;IAC5BvE,EAAE,CAAC/F,MAAM,CAAC;MAAA,OAAMA,MAAM,GAAGqK,IAAI;IAAA,EAAC;IAC9B,OAAAC,KAAA,GAAOpO,OAAO,CAACwI,MAAM,CAAC,EACpBnB,IAAI,KAAK,QAAQ,gBACfxH,KAAA,CAAAc,aAAA,CAACuN,SAAS,EAAAE,KAAA,CAAAlF,EAAA;MAAA,OAAMtH,CAAC;MAAA,UAAS,QAAQ;MAAA,MAAK,CAAC;MAAA,MAAM,CAAC;MAAA,KAAKkC,MAAM,GAAGqK;IAAI,GAAI,gBAErEtO,KAAA,CAAAc,aAAA,CAACuN,SAAS,EAAAE,KAAA,CAAAlF,EAAA;MAAA,UAAQ,MAAM;MAAA,OAAMtH,CAAC;MAAA,KAAKiI,EAAE,CAAC7B,UAAU;IAAC,GACnD;EAEL,CAAC,CAAC;AACJ;AAEA,SAASqG,UAAUA,CAAC9K,KAAK,EAAE;EACzB,IAAiB+K,UAAU,GAA8D/K,KAAK,CAAtF8E,OAAO;IAAcG,MAAM,GAAsDjF,KAAK,CAAjEiF,MAAM;IAAE9F,QAAQ,GAA4Ca,KAAK,CAAzDb,QAAQ;IAAE+F,IAAI,GAAsClF,KAAK,CAA/CkF,IAAI;IAAExB,MAAM,GAA8B1D,KAAK,CAAzC0D,MAAM;IAAEe,UAAU,GAAkBzE,KAAK,CAAjCyE,UAAU;IAAEhG,WAAW,GAAKuB,KAAK,CAArBvB,WAAW;EACpF,IAAM8B,MAAM,GAAGrC,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGxB,MAAM;EAEtD,OAAOe,UAAU,CAAC/E,GAAG,CAAC,UAACqK,QAAQ,EAAE1L,CAAC,EAAK;IACrC,IAAA2M,mBAAA,GAAenM,iBAAiB,CAACR,CAAC,EAAEkC,MAAM,EAAEkE,UAAU,CAACnF,MAAM,EAAEb,WAAW,CAAC;MAAAwM,mBAAA,GAAA9J,cAAA,CAAA6J,mBAAA;MAApEzJ,CAAC,GAAA0J,mBAAA;MAAEzJ,CAAC,GAAAyJ,mBAAA;IACX,IAAAC,kBAAA,GAAiClM,iBAAiB,CAACX,CAAC,EAAEoG,UAAU,CAACnF,MAAM,EAAEb,WAAW,CAAC;MAAA0M,mBAAA,GAAAhK,cAAA,CAAA+J,kBAAA;MAA9ElJ,UAAU,GAAAmJ,mBAAA;MAAElJ,UAAU,GAAAkJ,mBAAA;IAC7B,IAAI,OAAOpB,QAAQ,KAAK,QAAQ,EAAE;MAAA,IAAAqB,KAAA;MAChCpL,KAAK,CAACoF,gBAAgB,CAACiG,QAAQ,CAAC,OAAO,EAAEhN,CAAC,EAAE0L,QAAQ,CAAC;MAErD,IAAMuB,KAAK,GAAGvB,QAAQ,CAACwB,KAAK,CAAC,IAAI,CAAC;MAClC,OAAAH,KAAA,GAAO3O,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAAC2N,UAAU,EAAAK,KAAA,CAAAzF,EAAA;QAAA,OACJtH,CAAC;QAAA,UACC,MAAM;QAAA,oBACI,QAAQ;QAAA,KACtBkD,CAAC;QAAA,KACDC,CAAC;QAAA,cACQQ,UAAU;QAAA,cACVC;MAAU,IAErBqJ,KAAK,CAAC5L,GAAG,CAAC,UAAC8L,QAAQ,EAAEC,SAAS;QAAA,oBAC7BnP,KAAA,CAAAc,aAAA;UACEmE,CAAC,EAAEA,CAAE;UACLC,CAAC,EAAEA,CAAC,GAAG,CAACiK,SAAS,GAAG,CAACH,KAAK,CAAChM,MAAM,GAAG,CAAC,IAAI,CAAC,IAAIH,QAAS;UACvDiE,GAAG,MAAAhB,MAAA,CAAMqJ,SAAS,OAAArJ,MAAA,CAAIoJ,QAAQ;QAAG,GAEhCA,QAAQ,CACH;MAAA,CACT,CAAC,CACS;IAEjB;IACA,kBAAIlP,KAAK,CAACsD,cAAc,CAACmK,QAAQ,CAAC,EAAE;MAAA,IAAA2B,eAAA;MAClC,IAAAC,MAAA,IAAAD,eAAA,GAAkC3B,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAE/J,KAAK,cAAA0L,eAAA,cAAAA,eAAA,GAAI,CAAC,CAAC;QAAAE,YAAA,GAAAD,MAAA,CAA/C1L,KAAK;QAALA,KAAK,GAAA2L,YAAA,cAAG,CAAC,GAAAA,YAAA;QAAAC,aAAA,GAAAF,MAAA,CAAEzL,MAAM;QAANA,MAAM,GAAA2L,aAAA,cAAG,CAAC,GAAAA,aAAA;MAC7B,IAAAC,qBAAA,GAA2B/J,sBAAsB,CAACC,UAAU,EAAEC,UAAU,EAAEhC,KAAK,EAAEC,MAAM,CAAC;QAAA6L,sBAAA,GAAA5K,cAAA,CAAA2K,qBAAA;QAAjF5J,OAAO,GAAA6J,sBAAA;QAAE5J,OAAO,GAAA4J,sBAAA;MACvB,oBAAOxP,YAAY,CAACwN,QAAQ,EAAE;QAC5B3G,GAAG,EAAE/E,CAAC;QACNkD,CAAC,EAAEA,CAAC,GAAGW,OAAO;QACdV,CAAC,EAAEA,CAAC,GAAGW;MACT,CAAC,CAAC;IACJ;EACF,CAAC,CAAC;AACJ;AAAC,IAEK6J,KAAK,0BAAAC,WAAA;EAAAzJ,SAAA,CAAAwJ,KAAA,EAAAC,WAAA;EAAA,IAAAC,OAAA,GAAAxJ,YAAA,CAAAsJ,KAAA;EAAA,SAAAA,MAAA;IAAA,IAAAG,MAAA;IAAAvJ,eAAA,OAAAoJ,KAAA;IAAA,SAAAI,KAAA,GAAA/M,SAAA,CAAAC,MAAA,EAAAwD,IAAA,OAAApC,KAAA,CAAA0L,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAAvJ,IAAA,CAAAuJ,KAAA,IAAAhN,SAAA,CAAAgN,KAAA;IAAA;IAAAF,MAAA,GAAAD,OAAA,CAAAlJ,IAAA,CAAA7C,KAAA,CAAA+L,OAAA,SAAA9J,MAAA,CAAAU,IAAA;IAAAG,eAAA,CAAAC,sBAAA,CAAAiJ,MAAA,YACD;MACNlI,KAAK,EAAE;IACT,CAAC;IAAAhB,eAAA,CAAAC,sBAAA,CAAAiJ,MAAA,qBAEgBrP,SAAS,EAAE,GAAGwP,QAAQ,CAAClP,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAA6F,eAAA,CAAAC,sBAAA,CAAAiJ,MAAA,+BAEtC,IAAI;IAAAlJ,eAAA,CAAAC,sBAAA,CAAAiJ,MAAA,gCACH,IAAI;IAAAlJ,eAAA,CAAAC,sBAAA,CAAAiJ,MAAA,2BA8CTtP,OAAO,CAAC,UAAC0P,CAAC,EAAK;MACpC,IAAAC,cAAA,GAAkDL,MAAA,CAAK5I,OAAO;QAAtD+F,YAAY,GAAAkD,cAAA,CAAZlD,YAAY;QAAEpE,IAAI,GAAAsH,cAAA,CAAJtH,IAAI;QAAEuH,OAAO,GAAAD,cAAA,CAAPC,OAAO;QAAEnI,QAAQ,GAAAkI,cAAA,CAARlI,QAAQ;MAC7C,IAAMoI,KAAK,GAAGpP,YAAY,CAACiP,CAAC,EAAEE,OAAO,CAACE,OAAO,CAAC;MAC9C,IAAMC,IAAI,GAAG1O,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC;MACvC,IAAM2H,OAAO,GAAGH,KAAK,CAAC,CAAC,CAAC,GAAGE,IAAI,GAAG,CAAC;MACnC,IAAME,OAAO,GAAGJ,KAAK,CAAC,CAAC,CAAC,GAAGE,IAAI,GAAG,CAAC;MACnC,IAAQG,OAAO,GAAcR,CAAC,CAAtBQ,OAAO;QAAEC,OAAO,GAAKT,CAAC,CAAbS,OAAO;MACxB;MACAb,MAAA,CAAKc,cAAc,CAACC,qBAAqB,GAAGf,MAAA,CAAKgB,6BAA6B,CAC5EJ,OAAO,EACPC,OAAO,CACR;MACDb,MAAA,CAAKc,cAAc,CAAC5P,QAAQ,CAAC+P,eAAe,CAAC,GAAG,IAAI;MAEpD,IAAMnJ,KAAK,GAAGkI,MAAA,CAAKkB,QAAQ,CAAC,CAACR,OAAO,EAAEC,OAAO,CAAC,CAAC;MAE/CX,MAAA,CAAKzD,QAAQ,CACX;QACEzE,KAAK,EAALA;MACF,CAAC,EACD,YAAM;QACJqF,YAAY,CAACgE,IAAI,CACf,kBAAkB,EAClBrJ,KAAK,KAAK,IAAI,EACd,CAAC,CAAC,EACF;UAAEA,KAAK,EAALA,KAAK;UAAEK,QAAQ,EAARA;QAAS,CAAC,EACnB6H,MAAA,CAAKc,cAAc,CACpB;MACH,CAAC,CACF;IACH,CAAC,CAAC;IAAAhK,eAAA,CAAAC,sBAAA,CAAAiJ,MAAA,4BAEsBtP,OAAO,CAAC,YAAM;MACpC,IAAQyH,QAAQ,GAAK6H,MAAA,CAAK5I,OAAO,CAAzBe,QAAQ;MAChB6H,MAAA,CAAKzD,QAAQ,CACX;QACEzE,KAAK,EAAE;MACT,CAAC,EACD,YAAM;QACJkI,MAAA,CAAK5I,OAAO,CAAC+F,YAAY,CAACgE,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE;UAAErJ,KAAK,EAAE,IAAI;UAAEK,QAAQ,EAARA;QAAS,CAAC,CAAC;MAC1F,CAAC,CACF;IACH,CAAC,CAAC;IAAA,OAAA6H,MAAA;EAAA;EAAAhJ,YAAA,CAAA6I,KAAA;IAAA5I,GAAA;IAAAQ,KAAA,EAtFF,SAAAuJ,8BAAA,EAA4C;MAAA,IAAd5L,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;UAAEqN,GAAG,EAAE/L,CAAC;UAAEgM,KAAK,EAAEjM,CAAC;UAAEkM,MAAM,EAAEjM,CAAC;UAAEkM,IAAI,EAAEnM;QAAE,CAAC;MAAA,CAAC;IAC9E;EAAC;IAAA6B,GAAA;IAAAQ,KAAA,EAED,SAAA+J,WAAW1J,KAAK,EAAE;MAChB,IAAA2J,eAAA,GAAkD,IAAI,CAACrK,OAAO;QAAtDkB,UAAU,GAAAmJ,eAAA,CAAVnJ,UAAU;QAAES,IAAI,GAAA0I,eAAA,CAAJ1I,IAAI;QAAExB,MAAM,GAAAkK,eAAA,CAANlK,MAAM;QAAEjF,WAAW,GAAAmP,eAAA,CAAXnP,WAAW;MAC7C,IAAMD,KAAK,GAAGiG,UAAU,CAACnF,MAAM;MAC/B,IAAMsN,IAAI,GAAG1O,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC;MACvC,IAAM3E,MAAM,GAAGqM,IAAI,GAAG,CAAC,GAAGlJ,MAAM;MAChC,IAAMmK,SAAS,GAAG,CAAC5J,KAAK,GAAG,CAAC,GAAGzF,KAAK,IAAIA,KAAK;MAC7C,IAAMsP,SAAS,GAAG,CAAC7J,KAAK,GAAG,CAAC,GAAGzF,KAAK,IAAIA,KAAK;MAC7C,IAAAuP,mBAAA,GAAyBlP,iBAAiB,CAACgP,SAAS,EAAEtN,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;QAAAuP,mBAAA,GAAA7M,cAAA,CAAA4M,mBAAA;QAA1EE,MAAM,GAAAD,mBAAA;QAAEE,MAAM,GAAAF,mBAAA;MACrB,IAAAG,mBAAA,GAAetP,iBAAiB,CAACoF,KAAK,EAAE1D,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;QAAA2P,oBAAA,GAAAjN,cAAA,CAAAgN,mBAAA;QAA5D5M,CAAC,GAAA6M,oBAAA;QAAE5M,CAAC,GAAA4M,oBAAA;MACX,IAAAC,oBAAA,GAAyBxP,iBAAiB,CAACiP,SAAS,EAAEvN,MAAM,EAAE/B,KAAK,EAAEC,WAAW,CAAC;QAAA6P,oBAAA,GAAAnN,cAAA,CAAAkN,oBAAA;QAA1EE,MAAM,GAAAD,oBAAA;QAAEE,MAAM,GAAAF,oBAAA;MACrB,OAAO,CACL,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC,CAACL,MAAM,GAAG1M,CAAC,IAAI,CAAC,EAAE,CAAC2M,MAAM,GAAG1M,CAAC,IAAI,CAAC,CAAC,EACpC,CAACD,CAAC,EAAEC,CAAC,CAAC,EACN,CAAC,CAAC+M,MAAM,GAAGhN,CAAC,IAAI,CAAC,EAAE,CAACiN,MAAM,GAAGhN,CAAC,IAAI,CAAC,CAAC,CACrC;IACH;EAAC;IAAA4B,GAAA;IAAAQ,KAAA,EAED,SAAA6K,OAAOxK,KAAK,EAAE;MACZ,IAAAyK,eAAA,GAAkD,IAAI,CAACnL,OAAO;QAAtDkB,UAAU,GAAAiK,eAAA,CAAVjK,UAAU;QAAES,IAAI,GAAAwJ,eAAA,CAAJxJ,IAAI;QAAExB,MAAM,GAAAgL,eAAA,CAANhL,MAAM;QAAEjF,WAAW,GAAAiQ,eAAA,CAAXjQ,WAAW;MAC7C,IAAMR,KAAK,GAAIC,IAAI,CAACC,EAAE,GAAG,CAAC,GAAIsG,UAAU,CAACnF,MAAM;MAC/C,IAAMiB,MAAM,GAAGrC,IAAI,CAAC6I,GAAG,CAAC7B,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGxB,MAAM;MACtD,OAAO,CACLO,KAAK,GAAGhG,KAAK,GAAGA,KAAK,GAAG,CAAC,GAAGQ,WAAW,EACvC,CAACwF,KAAK,GAAG,CAAC,IAAIhG,KAAK,GAAGA,KAAK,GAAG,CAAC,GAAGQ,WAAW,EAC7C8B,MAAM,CACP;IACH;EAAC;IAAA6C,GAAA;IAAAQ,KAAA,EAED,SAAAyJ,SAASX,KAAK,EAAE;MAAA,IAAAiC,MAAA;MACd,IAAAC,eAAA,GAA6B,IAAI,CAACrL,OAAO;QAAjCkB,UAAU,GAAAmK,eAAA,CAAVnK,UAAU;QAAEX,IAAI,GAAA8K,eAAA,CAAJ9K,IAAI;MACxB,IAAIG,KAAK;MACT,IAAIH,IAAI,KAAK,QAAQ,EAAE;QACrBG,KAAK,GAAGQ,UAAU,CAACoK,SAAS,CAAC,UAACC,CAAC,EAAEzQ,CAAC;UAAA,OAAK0C,WAAW,CAAC4N,MAAI,CAACF,MAAM,CAACpQ,CAAC,CAAC,EAAEqO,KAAK,CAAC;QAAA,EAAC;MAC5E,CAAC,MAAM;QACLzI,KAAK,GAAGQ,UAAU,CAACoK,SAAS,CAAC,UAACC,CAAC,EAAEzQ,CAAC;UAAA,OAAKtB,eAAe,CAAC4R,MAAI,CAAChB,UAAU,CAACtP,CAAC,CAAC,EAAEqO,KAAK,CAAC;QAAA,EAAC;MACpF;MACA,OAAOzI,KAAK,KAAK,CAAC,CAAC,GAAG,IAAI,GAAGA,KAAK;IACpC;EAAC;IAAAb,GAAA;IAAAQ,KAAA,EA8CD,SAAAyF,kBAAA,EAAoB;MAAA,IAAA0F,MAAA;MAClB,IAAQzF,YAAY,GAAK,IAAI,CAAC/F,OAAO,CAA7B+F,YAAY;MACpB,IAAI,CAAC0F,wBAAwB,GAAG1F,YAAY,CAACE,SAAS,CAAC,iBAAiB,EAAE,UAAC+C,CAAC,EAAK;QAC/EA,CAAC,CAAC0C,OAAO,EAAE;QACXF,MAAI,CAACG,oBAAoB,CAAC3C,CAAC,CAAC;MAC9B,CAAC,CAAC;MACF,IAAI,CAAC4C,yBAAyB,GAAG7F,YAAY,CAACE,SAAS,CACrD,kBAAkB,EAClB,IAAI,CAAC4F,qBAAqB,CAC3B;IACH;EAAC;IAAAhM,GAAA;IAAAQ,KAAA,EAED,SAAA8F,qBAAA,EAAuB;MACrB,IAAI,IAAI,CAACsF,wBAAwB,EAAE;QACjC,IAAI,CAACA,wBAAwB,EAAE;MACjC;MACA,IAAI,IAAI,CAACG,yBAAyB,EAAE;QAClC,IAAI,CAACA,yBAAyB,EAAE;MAClC;IACF;EAAC;IAAA/L,GAAA;IAAAQ,KAAA,EAED,SAAAe,OAAA,EAAS;MACP,IAAA0K,eAAA,GAAyB,IAAI,CAAC9L,OAAO;QAA7B0B,MAAM,GAAAoK,eAAA,CAANpK,MAAM;QAAEnB,IAAI,GAAAuL,eAAA,CAAJvL,IAAI;MACpB,IAAQG,KAAK,GAAK,IAAI,CAAC6F,KAAK,CAApB7F,KAAK;MACb,IAAMqL,QAAQ,GAAG,IAAI,CAACxK,OAAO;MAE7B,IAAIb,KAAK,KAAK,IAAI,EAAE;QAClB,IAAIH,IAAI,KAAK,QAAQ,EAAE;UAAA,IAAAyL,MAAA;UACrB,IAAAC,YAAA,GAAuC,IAAI,CAACf,MAAM,CAACxK,KAAK,CAAC;YAAAwL,aAAA,GAAAtO,cAAA,CAAAqO,YAAA;YAAlDpO,UAAU,GAAAqO,aAAA;YAAEpO,QAAQ,GAAAoO,aAAA;YAAElP,MAAM,GAAAkP,aAAA;UACnC,IAAMC,MAAM,GAAGvS,GAAG,EAAE,CACjBwS,WAAW,CAAC,CAAC,CAAC,CACdC,WAAW,CAACrP,MAAM,CAAC,CACnBa,UAAU,CAACA,UAAU,CAAC,CACtBC,QAAQ,CAACA,QAAQ,CAAC;UACrB,OAAAkO,MAAA,GAAO9S,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAACkS,QAAQ,EAAAC,MAAA,CAAA5J,EAAA;YAAA,UACA,MAAM;YAAA,KAEV+J,MAAM;UAAE,GACX;QAEN,CAAC,MAAM;UAAA,IAAAG,MAAA;UACL,OAAAA,MAAA,GAAOpT,OAAO,CAACwI,MAAM,CAAC,eACpB3I,KAAA,CAAAc,aAAA,CAACkS,QAAQ,EAAAO,MAAA,CAAAlK,EAAA;YAAA,UACA,MAAM;YAAA,KAEV3I,IAAI,EAAE,CAAC,IAAI,CAAC2Q,UAAU,CAAC1J,KAAK,CAAC;UAAC,GACjC;QAEN;MACF;MAEA,OAAO,IAAI;IACb;EAAC;EAAA,OAAA+H,KAAA;AAAA,EAvJiBxP,SAAS;AA0J7B,IAAMkJ,IAAI,GAAGtI,aAAa,CAAC4K,QAAQ,EAAE;EACnC8H,KAAK,EAAEpF,SAAS;EAChBqF,MAAM,EAAEjF;AACV,CAAC,CAAC;AAEF,IAAMkF,OAAO,GAAG5S,aAAa,CAACwI,WAAW,EAAE;EACzCqK,IAAI,EAAEhJ,WAAW;EACjBiJ,IAAI,EAAE9I;AACR,CAAC,CAAC;AAEF,IAAM+I,YAAY,GAAG,SAAfA,YAAYA,CAAInQ,KAAK,EAAK;EAAA,IAAAoQ,IAAA,GAAAC,YAAA;IAAAC,MAAA;EAC9B,IAAMC,aAAa,GAEM9S,OAAO;EADhC,OAAA6S,MAAA,GAAO7T,OAAO,CAACuD,KAAK,CAACiF,MAAM,CAAC,eAC1B3I,KAAA,CAAAc,aAAA,CAACmT,aAAa,EAAAD,MAAA,CAAA3K,EAAA,kBAAA6K,aAAA,KAAAC,YAAA;IAAA,OAAuBhL,KAAK,CAACuG,KAAK;IAAA;EAAA,GAAAoE,IAAA,IAAuB;AAE3E,CAAC;AAED,IAAM3K,KAAK,GAAGrI,aAAa,CAACkF,SAAS,EAAE;EACrCoD,IAAI,EAAJA,IAAI;EACJsK,OAAO,EAAPA,OAAO;EACPhE,KAAK,EAALA,KAAK;EACLvO,OAAO,EAAE,CAAC0S,YAAY,EAAE1S,OAAO,CAACiT,yBAAyB;AAC3D,CAAC,CAAC;AAEF,eAAejL,KAAK"}
|