highcharts 13.0.1 → 13.0.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.
- package/bower.json +2 -3
- package/es-modules/Accessibility/A11yI18n.js +4 -4
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +6 -4
- package/es-modules/Accessibility/Components/LegendComponent.js +2 -2
- package/es-modules/Accessibility/Components/NavigatorComponent.js +2 -2
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +13 -10
- package/es-modules/Accessibility/Components/ZoomComponent.js +2 -2
- package/es-modules/Accessibility/FocusBorder.js +2 -2
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +1 -2
- package/es-modules/Core/Animation/AnimationUtilities.js +3 -2
- package/es-modules/Core/Axis/Axis.js +48 -57
- package/es-modules/Core/Axis/Axis3DComposition.js +8 -6
- package/es-modules/Core/Axis/BrokenAxis.js +6 -5
- package/es-modules/Core/Axis/Color/ColorAxis.js +17 -10
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +2 -2
- package/es-modules/Core/Axis/GridAxis.js +4 -4
- package/es-modules/Core/Axis/LogarithmicAxis.js +5 -3
- package/es-modules/Core/Axis/NavigatorAxisComposition.js +2 -2
- package/es-modules/Core/Axis/OrdinalAxis.js +9 -7
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -2
- package/es-modules/Core/Axis/RadialAxis.js +15 -9
- package/es-modules/Core/Axis/ScrollbarAxis.js +3 -3
- package/es-modules/Core/Axis/Stacking/StackItem.js +5 -5
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +4 -4
- package/es-modules/Core/Axis/Tick.js +10 -11
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -3
- package/es-modules/Core/Chart/Chart.js +14 -14
- package/es-modules/Core/Chart/Chart3D.js +3 -3
- package/es-modules/Core/Chart/ChartDefaults.js +23 -0
- package/es-modules/Core/Chart/MapChart.js +7 -5
- package/es-modules/Core/Chart/StockChart.js +15 -11
- package/es-modules/Core/Color/Color.js +3 -1
- package/es-modules/Core/Defaults.js +35 -0
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/Legend/Legend.js +16 -12
- package/es-modules/Core/Legend/LegendSymbol.js +2 -2
- package/es-modules/Core/MSPointer.js +2 -2
- package/es-modules/Core/Math3D.js +6 -7
- package/es-modules/Core/Pointer.js +9 -9
- package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGElement.js +11 -9
- package/es-modules/Core/Renderer/SVG/SVGElement3D.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +5 -5
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +5 -5
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +11 -9
- package/es-modules/Core/Renderer/SVG/Symbols.js +6 -5
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
- package/es-modules/Core/Responsive.js +7 -5
- package/es-modules/Core/Series/DataLabel.js +8 -6
- package/es-modules/Core/Series/OverlappingDataLabels.js +5 -2
- package/es-modules/Core/Series/Point.js +3 -3
- package/es-modules/Core/Series/Series.js +37 -21
- package/es-modules/Core/Series/Series3D.js +2 -2
- package/es-modules/Core/Templating.js +2 -2
- package/es-modules/Core/Tooltip.js +11 -7
- package/es-modules/Core/Utilities.js +4 -3
- package/es-modules/Data/Connectors/DataConnector.js +2 -2
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
- package/es-modules/Data/DataTable.js +17 -0
- package/es-modules/Extensions/Annotations/Annotation.js +4 -4
- package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -2
- package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +2 -2
- package/es-modules/Extensions/Annotations/EventEmitter.js +4 -4
- package/es-modules/Extensions/Annotations/NavigationBindings.js +6 -3
- package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +2 -2
- package/es-modules/Extensions/Annotations/Popup/Popup.js +3 -2
- package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +4 -6
- package/es-modules/Extensions/Annotations/Types/Measure.js +3 -3
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +3 -3
- package/es-modules/Extensions/Boost/BoostChart.js +11 -4
- package/es-modules/Extensions/Boost/BoostSeries.js +8 -9
- package/es-modules/Extensions/Boost/WGLRenderer.js +9 -6
- package/es-modules/Extensions/Boost/WGLShader.js +3 -3
- package/es-modules/Extensions/BoostCanvas.js +2 -2
- package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +5 -4
- package/es-modules/Extensions/DataGrouping/DataGrouping.js +2 -2
- package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +4 -3
- package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +2 -2
- package/es-modules/Extensions/DraggablePoints/DragDropProps.js +2 -3
- package/es-modules/Extensions/ExportData/ExportData.js +17 -16
- package/es-modules/Extensions/Exporting/Exporting.js +7 -7
- package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +2 -2
- package/es-modules/Extensions/Pane/PaneComposition.js +2 -2
- package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -2
- package/es-modules/Extensions/PatternFill.js +7 -5
- package/es-modules/Extensions/PriceIndication.js +5 -4
- package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +7 -7
- package/es-modules/Extensions/Sonification/MIDI.js +2 -3
- package/es-modules/Extensions/Sonification/Sonification.js +2 -2
- package/es-modules/Extensions/Sonification/SonificationSpeaker.js +3 -2
- package/es-modules/Extensions/Sonification/SynthPatch.js +3 -3
- package/es-modules/Extensions/Sonification/TimelineFromChart.js +11 -11
- package/es-modules/Gantt/Legacy.js +2 -2
- package/es-modules/Gantt/Pathfinder.js +3 -3
- package/es-modules/Gantt/PathfinderAlgorithms.js +4 -3
- package/es-modules/Gantt/Tree.js +1 -1
- package/es-modules/Maps/MapNavigation.js +4 -4
- package/es-modules/Maps/MapPointer.js +2 -2
- package/es-modules/Maps/MapView.js +2 -2
- package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +8 -6
- package/es-modules/Series/Area/AreaSeries.js +4 -5
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +13 -4
- package/es-modules/Series/Bubble/BubbleLegendItem.js +10 -6
- package/es-modules/Series/Bubble/BubbleSeries.js +10 -9
- package/es-modules/Series/Bullet/BulletSeries.js +17 -10
- package/es-modules/Series/CenteredUtilities.js +7 -5
- package/es-modules/Series/Column/ColumnSeries.js +2 -2
- package/es-modules/Series/Column3D/Column3DComposition.js +6 -5
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +4 -4
- package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +4 -2
- package/es-modules/Series/Cylinder/CylinderComposition.js +2 -2
- package/es-modules/Series/DataModifyComposition.js +9 -7
- package/es-modules/Series/DotPlot/DotPlotSeries.js +3 -2
- package/es-modules/Series/Dumbbell/DumbbellPoint.js +14 -3
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +24 -7
- package/es-modules/Series/FlowMap/FlowMapPoint.js +5 -3
- package/es-modules/Series/FlowMap/FlowMapSeries.js +17 -9
- package/es-modules/Series/Funnel/FunnelSeries.js +2 -2
- package/es-modules/Series/Funnel3D/Funnel3DSeries.js +7 -5
- package/es-modules/Series/Gauge/GaugeSeries.js +2 -2
- package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +4 -4
- package/es-modules/Series/Heatmap/HeatmapPoint.js +6 -6
- package/es-modules/Series/Heatmap/HeatmapPointOptions.js +12 -0
- package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -13
- package/es-modules/Series/Heatmap/HeatmapSeriesOptions.js +12 -0
- package/es-modules/Series/Histogram/HistogramPoint.js +17 -0
- package/es-modules/Series/Histogram/HistogramPointOptions.js +12 -0
- package/es-modules/Series/Histogram/HistogramSeries.js +14 -2
- package/es-modules/Series/Histogram/HistogramSeriesOptions.js +12 -0
- package/es-modules/Series/InterpolationUtilities.js +5 -5
- package/es-modules/Series/Item/ItemPointOptions.js +14 -0
- package/es-modules/Series/Item/ItemSeries.js +18 -6
- package/es-modules/Series/Item/ItemSeriesOptions.js +14 -0
- package/es-modules/Series/Map/MapPoint.js +5 -3
- package/es-modules/Series/Map/MapSeries.js +5 -8
- package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +3 -3
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +4 -2
- package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +18 -9
- package/es-modules/Series/NodesComposition.js +9 -10
- package/es-modules/Series/Organization/OrganizationPoint.js +3 -2
- package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +5 -5
- package/es-modules/Series/Pictorial/PictorialSeries.js +4 -2
- package/es-modules/Series/Pie/PieDataLabel.js +2 -2
- package/es-modules/Series/Pie/PiePoint.js +2 -2
- package/es-modules/Series/Pie/PieSeries.js +3 -2
- package/es-modules/Series/Pie3D/Pie3DSeries.js +8 -4
- package/es-modules/Series/PolarComposition.js +8 -7
- package/es-modules/Series/Sankey/SankeySeries.js +11 -5
- package/es-modules/Series/Scatter/ScatterSeries.js +6 -5
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +2 -2
- package/es-modules/Series/Spline/SplineSeries.js +5 -5
- package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +8 -6
- package/es-modules/Series/Tilemap/TilemapShapes.js +2 -2
- package/es-modules/Series/Timeline/TimelinePoint.js +2 -2
- package/es-modules/Series/Timeline/TimelineSeries.js +4 -3
- package/es-modules/Series/TreeUtilities.js +16 -7
- package/es-modules/Series/Treegraph/TreegraphLink.js +2 -2
- package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +14 -11
- package/es-modules/Series/VariablePie/VariablePieSeries.js +6 -4
- package/es-modules/Series/Variwide/VariwideSeries.js +2 -2
- package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -2
- package/es-modules/Series/Windbarb/WindbarbSeries.js +2 -2
- package/es-modules/Shared/TimeBase.js +8 -2
- package/es-modules/Shared/Utilities.js +9 -7
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -3
- package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +4 -3
- package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +1 -1
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -2
- package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +4 -4
- package/es-modules/Stock/Navigator/Navigator.js +26 -26
- package/es-modules/Stock/Navigator/StandaloneNavigator.js +4 -4
- package/es-modules/Stock/RangeSelector/RangeSelector.js +15 -11
- package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +3 -3
- package/es-modules/Stock/Scrollbar/Scrollbar.js +8 -7
- package/es-modules/Stock/StockTools/StockToolbar.js +5 -5
- package/es-modules/Stock/StockTools/StockTools.js +2 -2
- package/es-modules/Stock/StockTools/StockToolsGui.js +4 -2
- package/es-modules/masters/highcharts-3d.src.js +1 -1
- package/es-modules/masters/highcharts-autoload.src.js +1 -1
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +1 -1
- package/es-modules/masters/highcharts.src.js +7 -2
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
- package/es-modules/masters/i18n/fr-FR.src.js +1 -1
- package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
- package/es-modules/masters/i18n/nb-NO.src.js +1 -1
- package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
- package/es-modules/masters/i18n/zh-CN.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +1 -1
- package/es-modules/masters/indicators/indicators.src.js +1 -1
- package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
- package/es-modules/masters/indicators/klinger.src.js +1 -1
- package/es-modules/masters/indicators/macd.src.js +1 -1
- package/es-modules/masters/indicators/mfi.src.js +1 -1
- package/es-modules/masters/indicators/momentum.src.js +1 -1
- package/es-modules/masters/indicators/natr.src.js +1 -1
- package/es-modules/masters/indicators/obv.src.js +1 -1
- package/es-modules/masters/indicators/pivot-points.src.js +1 -1
- package/es-modules/masters/indicators/ppo.src.js +1 -1
- package/es-modules/masters/indicators/price-channel.src.js +1 -1
- package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
- package/es-modules/masters/indicators/psar.src.js +1 -1
- package/es-modules/masters/indicators/regressions.src.js +1 -1
- package/es-modules/masters/indicators/roc.src.js +1 -1
- package/es-modules/masters/indicators/rsi.src.js +1 -1
- package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
- package/es-modules/masters/indicators/stochastic.src.js +1 -1
- package/es-modules/masters/indicators/supertrend.src.js +1 -1
- package/es-modules/masters/indicators/tema.src.js +1 -1
- package/es-modules/masters/indicators/trendline.src.js +1 -1
- package/es-modules/masters/indicators/trix.src.js +1 -1
- package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
- package/es-modules/masters/indicators/vwap.src.js +1 -1
- package/es-modules/masters/indicators/williams-r.src.js +1 -1
- package/es-modules/masters/indicators/wma.src.js +1 -1
- package/es-modules/masters/indicators/zigzag.src.js +1 -1
- package/es-modules/masters/modules/accessibility.src.js +1 -1
- package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
- package/es-modules/masters/modules/annotations.src.js +1 -1
- package/es-modules/masters/modules/arc-diagram.src.js +1 -1
- package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
- package/es-modules/masters/modules/boost-canvas.src.js +1 -1
- package/es-modules/masters/modules/boost.src.js +1 -1
- package/es-modules/masters/modules/broken-axis.src.js +1 -1
- package/es-modules/masters/modules/bullet.src.js +1 -1
- package/es-modules/masters/modules/coloraxis.src.js +1 -1
- package/es-modules/masters/modules/contour.src.js +1 -1
- package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/data-sorting.src.js +1 -1
- package/es-modules/masters/modules/data-tools.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +1 -1
- package/es-modules/masters/modules/datagrouping.src.js +1 -1
- package/es-modules/masters/modules/debugger.src.js +1 -1
- package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
- package/es-modules/masters/modules/dotplot.src.js +1 -1
- package/es-modules/masters/modules/drag-panes.src.js +1 -1
- package/es-modules/masters/modules/draggable-points.src.js +1 -1
- package/es-modules/masters/modules/drilldown.src.js +1 -1
- package/es-modules/masters/modules/dumbbell.src.js +1 -1
- package/es-modules/masters/modules/export-data.src.js +1 -1
- package/es-modules/masters/modules/exporting.src.js +1 -1
- package/es-modules/masters/modules/flowmap.src.js +1 -1
- package/es-modules/masters/modules/full-screen.src.js +1 -1
- package/es-modules/masters/modules/funnel.src.js +1 -1
- package/es-modules/masters/modules/funnel3d.src.js +1 -1
- package/es-modules/masters/modules/gantt.src.js +1 -1
- package/es-modules/masters/modules/geoheatmap.src.js +1 -1
- package/es-modules/masters/modules/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -1
- package/es-modules/masters/modules/heikinashi.src.js +1 -1
- package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
- package/es-modules/masters/modules/item-series.src.js +1 -1
- package/es-modules/masters/modules/lollipop.src.js +1 -1
- package/es-modules/masters/modules/map.src.js +1 -1
- package/es-modules/masters/modules/marker-clusters.src.js +1 -1
- package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
- package/es-modules/masters/modules/navigator.src.js +1 -1
- package/es-modules/masters/modules/networkgraph.src.js +1 -1
- package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
- package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
- package/es-modules/masters/modules/pareto.src.js +1 -1
- package/es-modules/masters/modules/pathfinder.src.js +1 -1
- package/es-modules/masters/modules/pattern-fill.src.js +1 -1
- package/es-modules/masters/modules/pictorial.src.js +1 -1
- package/es-modules/masters/modules/pointandfigure.src.js +1 -1
- package/es-modules/masters/modules/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/renko.src.js +1 -1
- package/es-modules/masters/modules/sankey.src.js +1 -1
- package/es-modules/masters/modules/series-label.src.js +1 -1
- package/es-modules/masters/modules/series-on-point.src.js +1 -1
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +1 -1
- package/es-modules/masters/modules/static-scale.src.js +1 -1
- package/es-modules/masters/modules/stock-tools.src.js +1 -1
- package/es-modules/masters/modules/stock.src.js +1 -1
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +1 -1
- package/es-modules/masters/modules/textpath.src.js +1 -1
- package/es-modules/masters/modules/tiledwebmap.src.js +1 -1
- package/es-modules/masters/modules/tilemap.src.js +1 -1
- package/es-modules/masters/modules/timeline.src.js +1 -1
- package/es-modules/masters/modules/treegraph.src.js +1 -1
- package/es-modules/masters/modules/treegrid.src.js +1 -1
- package/es-modules/masters/modules/treemap.src.js +1 -1
- package/es-modules/masters/modules/variable-pie.src.js +1 -1
- package/es-modules/masters/modules/variwide.src.js +1 -1
- package/es-modules/masters/modules/vector.src.js +1 -1
- package/es-modules/masters/modules/venn.src.js +1 -1
- package/es-modules/masters/modules/windbarb.src.js +1 -1
- package/es-modules/masters/modules/wordcloud.src.js +1 -1
- package/es-modules/masters/modules/xrange.src.js +1 -1
- package/es-modules/masters/standalone-navigator.src.js +1 -1
- package/es-modules/masters/themes/adaptive.src.js +1 -1
- package/es-modules/masters/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/high-contrast.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/es-modules/tsconfig.tsbuildinfo +1 -1
- package/esm/highcharts-3d.js +2 -2
- package/esm/highcharts-3d.src.js +40 -32
- package/esm/highcharts-autoload.js +1 -1
- package/esm/highcharts-autoload.src.js +1 -1
- package/esm/highcharts-gantt.js +1 -1
- package/esm/highcharts-gantt.src.js +1 -1
- package/esm/highcharts-more.js +2 -2
- package/esm/highcharts-more.src.js +90 -56
- package/esm/highcharts.js +4 -4
- package/esm/highcharts.src.js +312 -207
- package/esm/highmaps.js +1 -1
- package/esm/highmaps.src.js +1 -1
- package/esm/highstock.js +1 -1
- package/esm/highstock.src.js +1 -1
- package/esm/i18n/fr-FR.js +1 -1
- package/esm/i18n/fr-FR.src.js +1 -1
- package/esm/i18n/nb-NO.js +1 -1
- package/esm/i18n/nb-NO.src.js +1 -1
- package/esm/i18n/zh-CN.js +1 -1
- package/esm/i18n/zh-CN.src.js +1 -1
- package/esm/indicators/acceleration-bands.js +1 -1
- package/esm/indicators/acceleration-bands.src.js +1 -1
- package/esm/indicators/accumulation-distribution.js +1 -1
- package/esm/indicators/accumulation-distribution.src.js +1 -1
- package/esm/indicators/ao.js +1 -1
- package/esm/indicators/ao.src.js +1 -1
- package/esm/indicators/apo.js +1 -1
- package/esm/indicators/apo.src.js +1 -1
- package/esm/indicators/aroon-oscillator.js +1 -1
- package/esm/indicators/aroon-oscillator.src.js +1 -1
- package/esm/indicators/aroon.js +2 -2
- package/esm/indicators/aroon.src.js +3 -3
- package/esm/indicators/atr.js +1 -1
- package/esm/indicators/atr.src.js +1 -1
- package/esm/indicators/bollinger-bands.js +1 -1
- package/esm/indicators/bollinger-bands.src.js +1 -1
- package/esm/indicators/cci.js +1 -1
- package/esm/indicators/cci.src.js +1 -1
- package/esm/indicators/chaikin.js +1 -1
- package/esm/indicators/chaikin.src.js +1 -1
- package/esm/indicators/cmf.js +1 -1
- package/esm/indicators/cmf.src.js +1 -1
- package/esm/indicators/cmo.js +1 -1
- package/esm/indicators/cmo.src.js +1 -1
- package/esm/indicators/dema.js +1 -1
- package/esm/indicators/dema.src.js +1 -1
- package/esm/indicators/disparity-index.js +1 -1
- package/esm/indicators/disparity-index.src.js +1 -1
- package/esm/indicators/dmi.js +1 -1
- package/esm/indicators/dmi.src.js +1 -1
- package/esm/indicators/dpo.js +2 -2
- package/esm/indicators/dpo.src.js +4 -3
- package/esm/indicators/ichimoku-kinko-hyo.js +1 -1
- package/esm/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/esm/indicators/indicators-all.js +2 -2
- package/esm/indicators/indicators-all.src.js +8 -7
- package/esm/indicators/indicators.js +2 -2
- package/esm/indicators/indicators.src.js +2 -2
- package/esm/indicators/keltner-channels.js +1 -1
- package/esm/indicators/keltner-channels.src.js +1 -1
- package/esm/indicators/klinger.js +1 -1
- package/esm/indicators/klinger.src.js +1 -1
- package/esm/indicators/macd.js +1 -1
- package/esm/indicators/macd.src.js +1 -1
- package/esm/indicators/mfi.js +1 -1
- package/esm/indicators/mfi.src.js +1 -1
- package/esm/indicators/momentum.js +1 -1
- package/esm/indicators/momentum.src.js +1 -1
- package/esm/indicators/natr.js +1 -1
- package/esm/indicators/natr.src.js +1 -1
- package/esm/indicators/obv.js +1 -1
- package/esm/indicators/obv.src.js +1 -1
- package/esm/indicators/pivot-points.js +1 -1
- package/esm/indicators/pivot-points.src.js +1 -1
- package/esm/indicators/ppo.js +1 -1
- package/esm/indicators/ppo.src.js +1 -1
- package/esm/indicators/price-channel.js +1 -1
- package/esm/indicators/price-channel.src.js +1 -1
- package/esm/indicators/price-envelopes.js +1 -1
- package/esm/indicators/price-envelopes.src.js +1 -1
- package/esm/indicators/psar.js +1 -1
- package/esm/indicators/psar.src.js +1 -1
- package/esm/indicators/regressions.js +1 -1
- package/esm/indicators/regressions.src.js +1 -1
- package/esm/indicators/roc.js +1 -1
- package/esm/indicators/roc.src.js +1 -1
- package/esm/indicators/rsi.js +1 -1
- package/esm/indicators/rsi.src.js +2 -2
- package/esm/indicators/slow-stochastic.js +1 -1
- package/esm/indicators/slow-stochastic.src.js +1 -1
- package/esm/indicators/stochastic.js +1 -1
- package/esm/indicators/stochastic.src.js +1 -1
- package/esm/indicators/supertrend.js +1 -1
- package/esm/indicators/supertrend.src.js +1 -1
- package/esm/indicators/tema.js +1 -1
- package/esm/indicators/tema.src.js +1 -1
- package/esm/indicators/trendline.js +1 -1
- package/esm/indicators/trendline.src.js +1 -1
- package/esm/indicators/trix.js +1 -1
- package/esm/indicators/trix.src.js +1 -1
- package/esm/indicators/volume-by-price.js +1 -1
- package/esm/indicators/volume-by-price.src.js +1 -1
- package/esm/indicators/vwap.js +1 -1
- package/esm/indicators/vwap.src.js +1 -1
- package/esm/indicators/williams-r.js +1 -1
- package/esm/indicators/williams-r.src.js +1 -1
- package/esm/indicators/wma.js +1 -1
- package/esm/indicators/wma.src.js +1 -1
- package/esm/indicators/zigzag.js +1 -1
- package/esm/indicators/zigzag.src.js +1 -1
- package/esm/modules/accessibility.js +2 -2
- package/esm/modules/accessibility.src.js +69 -63
- package/esm/modules/annotations-advanced.js +3 -3
- package/esm/modules/annotations-advanced.src.js +25 -23
- package/esm/modules/annotations.js +3 -3
- package/esm/modules/annotations.src.js +21 -19
- package/esm/modules/arc-diagram.js +2 -2
- package/esm/modules/arc-diagram.src.js +16 -15
- package/esm/modules/arrow-symbols.js +1 -1
- package/esm/modules/arrow-symbols.src.js +1 -1
- package/esm/modules/boost-canvas.js +2 -2
- package/esm/modules/boost-canvas.src.js +29 -20
- package/esm/modules/boost.js +2 -2
- package/esm/modules/boost.src.js +28 -19
- package/esm/modules/broken-axis.js +2 -2
- package/esm/modules/broken-axis.src.js +6 -5
- package/esm/modules/bullet.js +2 -2
- package/esm/modules/bullet.src.js +17 -10
- package/esm/modules/coloraxis.js +2 -2
- package/esm/modules/coloraxis.src.js +18 -11
- package/esm/modules/contour.js +1 -1
- package/esm/modules/contour.src.js +1 -1
- package/esm/modules/current-date-indicator.js +1 -1
- package/esm/modules/current-date-indicator.src.js +1 -1
- package/esm/modules/cylinder.js +2 -2
- package/esm/modules/cylinder.src.js +9 -10
- package/esm/modules/data-sorting.js +1 -1
- package/esm/modules/data-sorting.src.js +1 -1
- package/esm/modules/data-tools.js +2 -2
- package/esm/modules/data-tools.src.js +20 -3
- package/esm/modules/data.js +1 -1
- package/esm/modules/data.src.js +1 -1
- package/esm/modules/datagrouping.js +2 -2
- package/esm/modules/datagrouping.src.js +6 -5
- package/esm/modules/debugger.js +1 -1
- package/esm/modules/debugger.src.js +1 -1
- package/esm/modules/dependency-wheel.js +1 -1
- package/esm/modules/dependency-wheel.src.js +1 -1
- package/esm/modules/dotplot.js +2 -2
- package/esm/modules/dotplot.src.js +3 -2
- package/esm/modules/drag-panes.js +1 -1
- package/esm/modules/drag-panes.src.js +1 -1
- package/esm/modules/draggable-points.js +2 -2
- package/esm/modules/draggable-points.src.js +2 -3
- package/esm/modules/drilldown.js +2 -2
- package/esm/modules/drilldown.src.js +5 -4
- package/esm/modules/dumbbell.js +2 -2
- package/esm/modules/dumbbell.src.js +37 -9
- package/esm/modules/export-data.js +2 -2
- package/esm/modules/export-data.src.js +17 -16
- package/esm/modules/exporting.js +2 -2
- package/esm/modules/exporting.src.js +7 -7
- package/esm/modules/flowmap.js +2 -2
- package/esm/modules/flowmap.src.js +21 -11
- package/esm/modules/full-screen.js +1 -1
- package/esm/modules/full-screen.src.js +1 -1
- package/esm/modules/funnel.js +2 -2
- package/esm/modules/funnel.src.js +2 -2
- package/esm/modules/funnel3d.js +2 -2
- package/esm/modules/funnel3d.src.js +14 -13
- package/esm/modules/gantt.js +2 -2
- package/esm/modules/gantt.src.js +93 -76
- package/esm/modules/geoheatmap.js +2 -2
- package/esm/modules/geoheatmap.src.js +8 -8
- package/esm/modules/grid-axis.js +2 -2
- package/esm/modules/grid-axis.src.js +4 -4
- package/esm/modules/heatmap.js +2 -2
- package/esm/modules/heatmap.src.js +22 -22
- package/esm/modules/heikinashi.js +1 -1
- package/esm/modules/heikinashi.src.js +1 -1
- package/esm/modules/histogram-bellcurve.js +1 -1
- package/esm/modules/histogram-bellcurve.src.js +15 -3
- package/esm/modules/hollowcandlestick.js +1 -1
- package/esm/modules/hollowcandlestick.src.js +1 -1
- package/esm/modules/item-series.js +2 -2
- package/esm/modules/item-series.src.js +18 -6
- package/esm/modules/lollipop.js +1 -1
- package/esm/modules/lollipop.src.js +1 -1
- package/esm/modules/map.js +2 -2
- package/esm/modules/map.src.js +65 -57
- package/esm/modules/marker-clusters.js +1 -1
- package/esm/modules/marker-clusters.src.js +1 -1
- package/esm/modules/mouse-wheel-zoom.js +2 -2
- package/esm/modules/mouse-wheel-zoom.src.js +3 -3
- package/esm/modules/navigator.js +2 -2
- package/esm/modules/navigator.src.js +47 -45
- package/esm/modules/networkgraph.js +2 -2
- package/esm/modules/networkgraph.src.js +31 -21
- package/esm/modules/no-data-to-display.js +1 -1
- package/esm/modules/no-data-to-display.src.js +1 -1
- package/esm/modules/non-cartesian-zoom.js +1 -1
- package/esm/modules/non-cartesian-zoom.src.js +1 -1
- package/esm/modules/offline-exporting.js +1 -1
- package/esm/modules/offline-exporting.src.js +1 -1
- package/esm/modules/organization.js +2 -2
- package/esm/modules/organization.src.js +3 -2
- package/esm/modules/parallel-coordinates.js +2 -2
- package/esm/modules/parallel-coordinates.src.js +2 -2
- package/esm/modules/pareto.js +1 -1
- package/esm/modules/pareto.src.js +1 -1
- package/esm/modules/pathfinder.js +2 -2
- package/esm/modules/pathfinder.src.js +7 -6
- package/esm/modules/pattern-fill.js +2 -2
- package/esm/modules/pattern-fill.src.js +7 -5
- package/esm/modules/pictorial.js +2 -2
- package/esm/modules/pictorial.src.js +10 -6
- package/esm/modules/pointandfigure.js +1 -1
- package/esm/modules/pointandfigure.src.js +1 -1
- package/esm/modules/price-indicator.js +2 -2
- package/esm/modules/price-indicator.src.js +5 -4
- package/esm/modules/pyramid3d.js +1 -1
- package/esm/modules/pyramid3d.src.js +1 -1
- package/esm/modules/renko.js +1 -1
- package/esm/modules/renko.src.js +1 -1
- package/esm/modules/sankey.js +2 -2
- package/esm/modules/sankey.src.js +34 -20
- package/esm/modules/series-label.js +2 -2
- package/esm/modules/series-label.src.js +7 -7
- package/esm/modules/series-on-point.js +1 -1
- package/esm/modules/series-on-point.src.js +1 -1
- package/esm/modules/solid-gauge.js +2 -2
- package/esm/modules/solid-gauge.src.js +2 -2
- package/esm/modules/sonification.js +2 -2
- package/esm/modules/sonification.src.js +19 -19
- package/esm/modules/static-scale.js +1 -1
- package/esm/modules/static-scale.src.js +1 -1
- package/esm/modules/stock-tools.js +3 -3
- package/esm/modules/stock-tools.src.js +15 -10
- package/esm/modules/stock.js +2 -2
- package/esm/modules/stock.src.js +90 -76
- package/esm/modules/streamgraph.js +1 -1
- package/esm/modules/streamgraph.src.js +1 -1
- package/esm/modules/sunburst.js +2 -2
- package/esm/modules/sunburst.src.js +41 -26
- package/esm/modules/textpath.js +1 -1
- package/esm/modules/textpath.src.js +1 -1
- package/esm/modules/tiledwebmap.js +2 -2
- package/esm/modules/tiledwebmap.src.js +8 -6
- package/esm/modules/tilemap.js +2 -2
- package/esm/modules/tilemap.src.js +3 -3
- package/esm/modules/timeline.js +2 -2
- package/esm/modules/timeline.src.js +5 -4
- package/esm/modules/treegraph.js +2 -2
- package/esm/modules/treegraph.src.js +17 -8
- package/esm/modules/treegrid.js +2 -2
- package/esm/modules/treegrid.src.js +28 -18
- package/esm/modules/treemap.js +2 -2
- package/esm/modules/treemap.src.js +35 -22
- package/esm/modules/variable-pie.js +2 -2
- package/esm/modules/variable-pie.src.js +6 -4
- package/esm/modules/variwide.js +2 -2
- package/esm/modules/variwide.src.js +2 -2
- package/esm/modules/vector.js +1 -1
- package/esm/modules/vector.src.js +1 -1
- package/esm/modules/venn.js +1 -1
- package/esm/modules/venn.src.js +1 -1
- package/esm/modules/windbarb.js +2 -2
- package/esm/modules/windbarb.src.js +2 -2
- package/esm/modules/wordcloud.js +1 -1
- package/esm/modules/wordcloud.src.js +1 -1
- package/esm/modules/xrange.js +1 -1
- package/esm/modules/xrange.src.js +1 -1
- package/esm/standalone-navigator.js +4 -4
- package/esm/standalone-navigator.src.js +355 -249
- package/esm/themes/adaptive.js +1 -1
- package/esm/themes/adaptive.src.js +1 -1
- package/esm/themes/avocado.js +1 -1
- package/esm/themes/avocado.src.js +1 -1
- package/esm/themes/dark-unica.js +1 -1
- package/esm/themes/dark-unica.src.js +1 -1
- package/esm/themes/grid-light.js +1 -1
- package/esm/themes/grid-light.src.js +1 -1
- package/esm/themes/high-contrast.js +1 -1
- package/esm/themes/high-contrast.src.js +1 -1
- package/esm/themes/sand-signika.js +1 -1
- package/esm/themes/sand-signika.src.js +1 -1
- package/esm/themes/sunset.js +1 -1
- package/esm/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +2 -2
- package/highcharts-3d.src.js +40 -32
- package/highcharts-autoload.d.ts +8 -2
- package/highcharts-autoload.js +4 -4
- package/highcharts-autoload.src.d.ts +8 -2
- package/highcharts-autoload.src.js +313 -208
- package/highcharts-gantt.js +4 -4
- package/highcharts-gantt.src.js +404 -283
- package/highcharts-more.js +2 -2
- package/highcharts-more.src.js +90 -56
- package/highcharts.d.ts +61 -4
- package/highcharts.js +4 -4
- package/highcharts.src.d.ts +61 -4
- package/highcharts.src.js +312 -207
- package/highmaps.js +4 -4
- package/highmaps.src.js +390 -272
- package/highstock.js +4 -4
- package/highstock.src.js +413 -293
- package/i18n/fr-FR.js +1 -1
- package/i18n/fr-FR.src.js +1 -1
- package/i18n/nb-NO.js +1 -1
- package/i18n/nb-NO.src.js +1 -1
- package/i18n/zh-CN.js +1 -1
- package/i18n/zh-CN.src.js +1 -1
- package/indicators/acceleration-bands.js +1 -1
- package/indicators/acceleration-bands.src.js +1 -1
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.js +1 -1
- package/indicators/ao.src.js +1 -1
- package/indicators/apo.js +1 -1
- package/indicators/apo.src.js +1 -1
- package/indicators/aroon-oscillator.js +1 -1
- package/indicators/aroon-oscillator.src.js +1 -1
- package/indicators/aroon.js +2 -2
- package/indicators/aroon.src.js +3 -3
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.js +1 -1
- package/indicators/bollinger-bands.src.js +1 -1
- package/indicators/cci.js +1 -1
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.js +1 -1
- package/indicators/chaikin.src.js +1 -1
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.src.js +1 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.src.js +1 -1
- package/indicators/dema.js +1 -1
- package/indicators/dema.src.js +1 -1
- package/indicators/disparity-index.js +1 -1
- package/indicators/disparity-index.src.js +1 -1
- package/indicators/dmi.js +1 -1
- package/indicators/dmi.src.js +1 -1
- package/indicators/dpo.js +2 -2
- package/indicators/dpo.src.js +4 -3
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.js +2 -2
- package/indicators/indicators-all.src.js +8 -7
- package/indicators/indicators.js +2 -2
- package/indicators/indicators.src.js +2 -2
- package/indicators/keltner-channels.js +1 -1
- package/indicators/keltner-channels.src.js +1 -1
- package/indicators/klinger.js +1 -1
- package/indicators/klinger.src.js +1 -1
- package/indicators/macd.js +1 -1
- package/indicators/macd.src.js +1 -1
- package/indicators/mfi.js +1 -1
- package/indicators/mfi.src.js +1 -1
- package/indicators/momentum.js +1 -1
- package/indicators/momentum.src.js +1 -1
- package/indicators/natr.js +1 -1
- package/indicators/natr.src.js +1 -1
- package/indicators/obv.js +1 -1
- package/indicators/obv.src.js +1 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.src.js +1 -1
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.src.js +1 -1
- package/indicators/price-channel.js +1 -1
- package/indicators/price-channel.src.js +1 -1
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.src.js +1 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.src.js +1 -1
- package/indicators/regressions.js +1 -1
- package/indicators/regressions.src.js +1 -1
- package/indicators/roc.js +1 -1
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.src.js +2 -2
- package/indicators/slow-stochastic.js +1 -1
- package/indicators/slow-stochastic.src.js +1 -1
- package/indicators/stochastic.js +1 -1
- package/indicators/stochastic.src.js +1 -1
- package/indicators/supertrend.js +1 -1
- package/indicators/supertrend.src.js +1 -1
- package/indicators/tema.js +1 -1
- package/indicators/tema.src.js +1 -1
- package/indicators/trendline.js +1 -1
- package/indicators/trendline.src.js +1 -1
- package/indicators/trix.js +1 -1
- package/indicators/trix.src.js +1 -1
- package/indicators/volume-by-price.js +1 -1
- package/indicators/volume-by-price.src.js +1 -1
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.js +1 -1
- package/indicators/williams-r.src.js +1 -1
- package/indicators/wma.js +1 -1
- package/indicators/wma.src.js +1 -1
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.src.js +1 -1
- package/modules/accessibility.js +2 -2
- package/modules/accessibility.src.js +69 -63
- package/modules/annotations-advanced.js +3 -3
- package/modules/annotations-advanced.src.js +25 -23
- package/modules/annotations.js +3 -3
- package/modules/annotations.src.js +21 -19
- package/modules/arc-diagram.js +2 -2
- package/modules/arc-diagram.src.js +16 -15
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +2 -2
- package/modules/boost-canvas.src.js +29 -20
- package/modules/boost.js +2 -2
- package/modules/boost.src.js +28 -19
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.src.js +6 -5
- package/modules/bullet.js +2 -2
- package/modules/bullet.src.js +17 -10
- package/modules/coloraxis.js +2 -2
- package/modules/coloraxis.src.js +18 -11
- package/modules/contour.js +4 -4
- package/modules/contour.src.js +19 -12
- package/modules/current-date-indicator.js +1 -1
- package/modules/current-date-indicator.src.js +1 -1
- package/modules/cylinder.js +2 -2
- package/modules/cylinder.src.js +9 -10
- package/modules/data-sorting.js +1 -1
- package/modules/data-sorting.src.js +1 -1
- package/modules/data-tools.js +2 -2
- package/modules/data-tools.src.js +20 -3
- package/modules/data.js +1 -1
- package/modules/data.src.js +1 -1
- package/modules/datagrouping.js +2 -2
- package/modules/datagrouping.src.js +6 -5
- package/modules/debugger.js +1 -1
- package/modules/debugger.src.js +1 -1
- package/modules/dependency-wheel.js +1 -1
- package/modules/dependency-wheel.src.js +1 -1
- package/modules/dotplot.js +2 -2
- package/modules/dotplot.src.js +3 -2
- package/modules/drag-panes.js +1 -1
- package/modules/drag-panes.src.js +1 -1
- package/modules/draggable-points.js +2 -2
- package/modules/draggable-points.src.js +2 -3
- package/modules/drilldown.js +2 -2
- package/modules/drilldown.src.js +5 -4
- package/modules/dumbbell.js +2 -2
- package/modules/dumbbell.src.js +37 -9
- package/modules/export-data.js +2 -2
- package/modules/export-data.src.js +17 -16
- package/modules/exporting.js +2 -2
- package/modules/exporting.src.js +7 -7
- package/modules/flowmap.js +2 -2
- package/modules/flowmap.src.js +21 -11
- package/modules/full-screen.js +1 -1
- package/modules/full-screen.src.js +1 -1
- package/modules/funnel.js +2 -2
- package/modules/funnel.src.js +2 -2
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.src.js +14 -13
- package/modules/gantt.js +6 -6
- package/modules/gantt.src.js +96 -79
- package/modules/geoheatmap.d.ts +0 -12
- package/modules/geoheatmap.js +2 -2
- package/modules/geoheatmap.src.d.ts +0 -12
- package/modules/geoheatmap.src.js +8 -8
- package/modules/grid-axis.js +2 -2
- package/modules/grid-axis.src.js +4 -4
- package/modules/heatmap.d.ts +0 -12
- package/modules/heatmap.js +4 -4
- package/modules/heatmap.src.d.ts +0 -12
- package/modules/heatmap.src.js +40 -33
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.src.js +1 -1
- package/modules/histogram-bellcurve.js +1 -1
- package/modules/histogram-bellcurve.src.js +15 -3
- package/modules/hollowcandlestick.js +1 -1
- package/modules/hollowcandlestick.src.js +1 -1
- package/modules/item-series.js +2 -2
- package/modules/item-series.src.js +18 -6
- package/modules/lollipop.js +1 -1
- package/modules/lollipop.src.js +1 -1
- package/modules/map.d.ts +0 -12
- package/modules/map.js +4 -4
- package/modules/map.src.d.ts +0 -12
- package/modules/map.src.js +83 -68
- package/modules/marker-clusters.js +1 -1
- package/modules/marker-clusters.src.js +1 -1
- package/modules/mouse-wheel-zoom.js +2 -2
- package/modules/mouse-wheel-zoom.src.js +3 -3
- package/modules/navigator.js +2 -2
- package/modules/navigator.src.js +47 -45
- package/modules/networkgraph.js +2 -2
- package/modules/networkgraph.src.js +31 -21
- package/modules/no-data-to-display.js +1 -1
- package/modules/no-data-to-display.src.js +1 -1
- package/modules/non-cartesian-zoom.js +1 -1
- package/modules/non-cartesian-zoom.src.js +1 -1
- package/modules/offline-exporting.js +1 -1
- package/modules/offline-exporting.src.js +1 -1
- package/modules/organization.js +2 -2
- package/modules/organization.src.js +3 -2
- package/modules/parallel-coordinates.js +2 -2
- package/modules/parallel-coordinates.src.js +2 -2
- package/modules/pareto.js +1 -1
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.js +2 -2
- package/modules/pathfinder.src.js +7 -6
- package/modules/pattern-fill.js +2 -2
- package/modules/pattern-fill.src.js +7 -5
- package/modules/pictorial.js +2 -2
- package/modules/pictorial.src.js +10 -6
- package/modules/pointandfigure.js +1 -1
- package/modules/pointandfigure.src.js +1 -1
- package/modules/price-indicator.js +2 -2
- package/modules/price-indicator.src.js +5 -4
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/renko.js +1 -1
- package/modules/renko.src.js +1 -1
- package/modules/sankey.js +2 -2
- package/modules/sankey.src.js +34 -20
- package/modules/series-label.js +2 -2
- package/modules/series-label.src.js +7 -7
- package/modules/series-on-point.js +1 -1
- package/modules/series-on-point.src.js +1 -1
- package/modules/solid-gauge.js +2 -2
- package/modules/solid-gauge.src.js +2 -2
- package/modules/sonification.js +2 -2
- package/modules/sonification.src.js +19 -19
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.js +3 -3
- package/modules/stock-tools.src.js +15 -10
- package/modules/stock.js +6 -6
- package/modules/stock.src.js +105 -89
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +2 -2
- package/modules/sunburst.src.js +41 -26
- package/modules/textpath.js +1 -1
- package/modules/textpath.src.js +1 -1
- package/modules/tiledwebmap.js +2 -2
- package/modules/tiledwebmap.src.js +8 -6
- package/modules/tilemap.js +2 -2
- package/modules/tilemap.src.js +3 -3
- package/modules/timeline.js +2 -2
- package/modules/timeline.src.js +5 -4
- package/modules/treegraph.js +2 -2
- package/modules/treegraph.src.js +17 -8
- package/modules/treegrid.js +2 -2
- package/modules/treegrid.src.js +28 -18
- package/modules/treemap.js +2 -2
- package/modules/treemap.src.js +35 -22
- package/modules/variable-pie.js +2 -2
- package/modules/variable-pie.src.js +6 -4
- package/modules/variwide.js +2 -2
- package/modules/variwide.src.js +2 -2
- package/modules/vector.js +1 -1
- package/modules/vector.src.js +1 -1
- package/modules/venn.js +1 -1
- package/modules/venn.src.js +1 -1
- package/modules/windbarb.js +2 -2
- package/modules/windbarb.src.js +2 -2
- package/modules/wordcloud.js +1 -1
- package/modules/wordcloud.src.js +1 -1
- package/modules/xrange.js +1 -1
- package/modules/xrange.src.js +1 -1
- package/package.json +2 -3
- package/standalone-navigator.js +4 -4
- package/standalone-navigator.src.js +355 -249
- package/themes/adaptive.js +1 -1
- package/themes/adaptive.src.js +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/dark-unica.js +1 -1
- package/themes/dark-unica.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.src.js +1 -1
- package/themes/high-contrast.js +1 -1
- package/themes/high-contrast.src.js +1 -1
- package/themes/sand-signika.js +1 -1
- package/themes/sand-signika.src.js +1 -1
- package/themes/sunset.js +1 -1
- package/themes/sunset.src.js +1 -1
package/esm/modules/gantt.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
let t,e,i,s;/**
|
|
2
|
-
* Highcharts Gantt JS v13.0.
|
|
2
|
+
* Highcharts Gantt JS v13.0.2 (2026-08-27)
|
|
3
3
|
* @module highcharts/modules/gantt
|
|
4
4
|
* @requires highcharts
|
|
5
5
|
*
|
|
@@ -10,4 +10,4 @@ let t,e,i,s;/**
|
|
|
10
10
|
*
|
|
11
11
|
* A commercial license may be required depending on use,
|
|
12
12
|
* see www.highcharts.com/license
|
|
13
|
-
*/import*as r from"../highcharts.js";import"./pathfinder.js";import"./static-scale.js";import"./xrange.js";let o={};o.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{if(Array.isArray(e))for(var i=0;i<e.length;){var s=e[i++],r=e[i++];o.o(t,s)?0===r&&i++:0===r?Object.defineProperty(t,s,{enumerable:!0,value:e[i++]}):Object.defineProperty(t,s,{enumerable:!0,get:r})}else for(var s in e)o.o(e,s)&&!o.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let a=r.default;var n,l,h,d,c,p,u,g,x=o.n(a);function m(t,e,i,s){return[["M",t,e+s/2],["L",t+i,e],["L",t,e+s/2],["L",t+i,e+s]]}function f(t,e,i,s){return[["M",t+i,e],["L",t,e+s/2],["L",t+i,e+s],["Z"]]}function b(t,e,i,s){return f(t,e,i/2,s)}let v=x().deg2rad,y=Math.max,M=Math.min,k=class{constructor(t,e,i){this.init(t,e,i)}init(t,e,i){this.fromPoint=t,this.toPoint=e,this.options=i,this.chart=t.series.chart,this.pathfinder=this.chart.pathfinder}renderPath(t,e){let i=this.chart,s=i.styledMode,r=this.pathfinder,o={},a=this.graphics&&this.graphics.path;r.group||(r.group=i.renderer.g().addClass("highcharts-pathfinder-group").attr({zIndex:-1}).add(i.seriesGroup)),r.group.translate(i.plotLeft,i.plotTop),!(a&&a.renderer)&&(a=i.renderer.path().add(r.group),s||a.attr({opacity:0})),a.attr(e),o.d=t,s||(o.opacity=1),a.animate(o),this.graphics=this.graphics||{},this.graphics.path=a}addMarker(t,e,i){let s,r,o,a,n,l,h,d=this.fromPoint.series.chart,c=d.pathfinder,p=d.renderer,u="start"===t?this.fromPoint:this.toPoint,g=u.getPathfinderAnchorPoint(e);e.enabled&&((h="start"===t?i[1]:i[i.length-2])&&"M"===h[0]||"L"===h[0])&&(l={x:h[1],y:h[2]},r=u.getRadiansToVector(l,g),s=u.getMarkerVector(r,e.radius,g),e.width&&e.height?(a=e.width,n=e.height):a=n=2*e.radius,this.graphics=this.graphics||{},o={x:s.x-a/2,y:s.y-n/2,width:a,height:n,rotation:-r/v,rotationOriginX:s.x,rotationOriginY:s.y},this.graphics[t]?this.graphics[t].animate(o):(this.graphics[t]=p.symbol(e.symbol).addClass("highcharts-point-connecting-path-"+t+"-marker highcharts-color-"+this.fromPoint.colorIndex).attr(o).add(c.group),p.styledMode||this.graphics[t].attr({fill:e.color||this.fromPoint.color,stroke:e.lineColor,"stroke-width":e.lineWidth,opacity:0}).animate({opacity:1},u.series.options.animation)))}getPath(t){let e=this.pathfinder,i=this.chart,s=e.algorithms[t.type],r=e.chartObstacles;return"function"!=typeof s?((0,a.error)('"'+t.type+'" is not a Pathfinder algorithm.'),{path:[],obstacles:[]}):(s.requiresObstacles&&!r&&(r=e.chartObstacles=e.getChartObstacles(t),i.options.connectors.algorithmMargin=t.algorithmMargin,e.chartObstacleMetrics=e.getObstacleMetrics(r)),s(this.fromPoint.getPathfinderAnchorPoint(t.startMarker),this.toPoint.getPathfinderAnchorPoint(t.endMarker),(0,a.merge)({chartObstacles:r,lineObstacles:e.lineObstacles||[],obstacleMetrics:e.chartObstacleMetrics,hardBounds:{xMin:0,xMax:i.plotWidth,yMin:0,yMax:i.plotHeight},obstacleOptions:{margin:t.algorithmMargin},startDirectionX:e.getAlgorithmStartDirection(t.startMarker)},t)))}render(){let t=this.fromPoint,e=t.series,i=e.chart,s=i.pathfinder,r={},o=(0,a.merge)(i.options.connectors,e.options.connectors,t.options.connectors,this.options);!i.styledMode&&(r.stroke=o.lineColor||t.color,r["stroke-width"]=o.lineWidth,o.dashStyle&&(r.dashstyle=o.dashStyle)),r.class="highcharts-point-connecting-path highcharts-color-"+t.colorIndex,o=(0,a.merge)(r,o),(0,a.defined)(o.marker.radius)||(o.marker.radius=M(y(Math.ceil((o.algorithmMargin||8)/2)-1,1),5));let n=this.getPath(o),l=n.path;n.obstacles&&(s.lineObstacles=s.lineObstacles||[],s.lineObstacles=s.lineObstacles.concat(n.obstacles)),this.renderPath(l,r),this.addMarker("start",(0,a.merge)(o.marker,o.startMarker),l),this.addMarker("end",(0,a.merge)(o.marker,o.endMarker),l)}destroy(){this.graphics&&((0,a.objectEach)(this.graphics,function(t){t.destroy()}),delete this.graphics)}},{composed:E}=x(),A={color:"var(--highcharts-highlight-color-20)",width:2,label:{format:"%[abdYHM]",formatter:function(t,e){return this.axis.chart.time.dateFormat(e||"",t,!0)},rotation:0,style:{fontSize:"0.7em"}}},w=r.default.Chart;var O=o.n(w);let{defaultOptions:B}=x();class S extends O(){init(t,e){let i,s=t.xAxis,r=t.yAxis;t.xAxis=t.yAxis=void 0;let o=(0,a.merge)(!0,{chart:{type:"gantt"},title:{text:""},legend:{enabled:!1},navigator:{series:{type:"gantt"},yAxis:{type:"category"}}},t,{isGantt:!0});t.xAxis=s,t.yAxis=r,o.xAxis=(!(0,a.isArray)(t.xAxis)?[t.xAxis||{},{}]:t.xAxis).map((t,e)=>(1===e&&(i=0),(0,a.merge)({grid:{enabled:!0},opposite:B.xAxis?.opposite??t.opposite??!0,linkedTo:i},t,{type:"datetime"}))),o.yAxis=(0,a.splat)(t.yAxis||{}).map(t=>(0,a.merge)({grid:{enabled:!0},staticScale:50,reversed:!0,type:t.categories?t.type:"treegrid"},t)),super.init(o,e)}}(n=S||(S={})).ganttChart=function(t,e,i){let s=new n(t,e,i);return s.promise||s};let T=S,P=r.default.Axis;var N=o.n(P);let{isTouchDevice:C}=x(),D=[];function I(){this.navigator&&this.navigator.setBaseSeries(null,!1)}function L(){let t,e,i,s=this.legend,r=this.navigator;if(r){t=s&&s.options,e=r.xAxis,i=r.yAxis;let{scrollbarHeight:o,scrollButtonSize:n}=r;this.inverted?(r.left=r.opposite?this.chartWidth-o-r.height:this.spacing[3]+o,r.top=this.plotTop+n):(r.left=(0,a.pick)(e.left,this.plotLeft+n),r.top=r.navigatorOptions.top||this.chartHeight-r.height-o-(this.scrollbar?.options.margin||0)-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(t&&"bottom"===t.verticalAlign&&"proximate"!==t.layout&&t.enabled&&!t.floating?s.legendHeight+(0,a.pick)(t.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0)),e&&i&&(this.inverted?e.options.left=i.options.left=r.left:e.options.top=i.options.top=r.top,e.setAxisSize(),i.setAxisSize())}}function z(e){!this.navigator&&!this.scroller&&(this.options.navigator.enabled||this.options.scrollbar.enabled)&&(this.scroller=this.navigator=new t(this),(0,a.pick)(e.redraw,!0)&&this.redraw(e.animation))}function G(){let e=this.options;(e.navigator.enabled||e.scrollbar.enabled)&&(this.scroller=this.navigator=new t(this))}function R(){let t=this.options,e=t.navigator,i=t.rangeSelector;if((e&&e.enabled||i&&i.enabled)&&(!C&&"x"===this.zooming.type||C&&"x"===this.zooming.pinchType))return!1}function W(t){let e=t.navigator;if(e&&t.xAxis[0]){let i=t.xAxis[0].getExtremes();e.render(i.min,i.max)}}function F(t){let e=t.options.navigator||{},i=t.options.scrollbar||{};!this.navigator&&!this.scroller&&(e.enabled||i.enabled)&&((0,a.merge)(!0,this.options.navigator,e),(0,a.merge)(!0,this.options.scrollbar,i),delete t.options.navigator,delete t.options.scrollbar)}let H=function(e,i){if((0,a.pushUnique)(D,e)){let s=e.prototype;t=i,s.callbacks.push(W),(0,a.addEvent)(e,"afterAddSeries",I),(0,a.addEvent)(e,"afterSetChartSize",L),(0,a.addEvent)(e,"afterUpdate",z),(0,a.addEvent)(e,"beforeRender",G),(0,a.addEvent)(e,"beforeShowResetZoom",R),(0,a.addEvent)(e,"update",F)}},{isTouchDevice:U}=x();function j(){this.navigatorAxis||(this.navigatorAxis=new V(this))}function Y(t){let e,i=this.chart,s=i.options,r=s.navigator,o=this.navigatorAxis,n=i.zooming.pinchType,l=s.rangeSelector,h=i.zooming.type;if(this.isXAxis&&(r?.enabled||l?.enabled)){if("y"===h&&"zoom"===t.trigger)e=!1;else if(("zoom"===t.trigger&&"xy"===h||U&&"xy"===n)&&this.options.range){let e=o.previousZoom;(0,a.defined)(t.min)?o.previousZoom=[this.min,this.max]:e&&(t.min=e[0],t.max=e[1],o.previousZoom=void 0)}}void 0!==e&&t.preventDefault()}class V{static compose(t){t.keepProps.includes("navigatorAxis")||(t.keepProps.push("navigatorAxis"),(0,a.addEvent)(t,"init",j),(0,a.addEvent)(t,"setExtremes",Y))}constructor(t){this.axis=t}destroy(){this.axis=void 0}toFixedRange(t,e,i,s){let r=this.axis,o=(r.pointRange||0)/2,n=(0,a.pick)(i,r.translate(t,!0,!r.horiz)),l=(0,a.pick)(s,r.translate(e,!0,!r.horiz));return(0,a.defined)(i)||(n=(0,a.correctFloat)(n+o)),(0,a.defined)(s)||(l=(0,a.correctFloat)(l-o)),(0,a.isNumber)(n)&&(0,a.isNumber)(l)||(n=l=void 0),{min:n,max:l}}}let X=r.default.SeriesRegistry;var _=o.n(X);let{seriesTypes:q}=_(),Z={height:40,margin:22,maskInside:!0,handles:{width:7,borderRadius:0,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:"var(--highcharts-neutral-color-5)",borderColor:"var(--highcharts-neutral-color-40)"},maskFill:"color-mix(in srgb, var(--highcharts-highlight-color-60) 30%, transparent)",outlineColor:"var(--highcharts-neutral-color-40)",outlineWidth:1,series:{type:void 0===q.areaspline?"line":"areaspline",fillOpacity:.05,lineWidth:1,compare:null,sonification:{enabled:!1},dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"var(--highcharts-neutral-color-10)",id:"navigator-x-axis",gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:"var(--highcharts-neutral-color-100)",fontSize:"0.7em",opacity:.6,textOutline:"2px contrast"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,id:"navigator-y-axis",maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:void 0},tickLength:0,tickWidth:0}},{defaultOptions:$}=x(),{noop:K}=x(),J={radius:0,scope:"stack",where:void 0},Q={"navigator-handle":function(t,e,i,s,r={}){var o,n,l,h,d;let c=r.width?r.width/2:i,p=(0,a.relativeLength)((o=r.borderRadius,!(0,a.isObject)(o)&&(o={radius:o||0}),(0,a.merge)(J,void 0,o)).radius,Math.min(2*c,s));return[["M",-1.5,(s=r.height||s)/2-3.5],["L",-1.5,s/2+4.5],["M",.5,s/2-3.5],["L",.5,s/2+4.5],...(n=-c-1,l=2*c+1,h=s,d={r:p},d?.r?function(t,e,i,s,r){let o=r?.r||0;return[["M",t+o,e],["L",t+i-o,e],["A",o,o,0,0,1,t+i,e+o],["L",t+i,e+s-o],["A",o,o,0,0,1,t+i-o,e+s],["L",t+o,e+s],["A",o,o,0,0,1,t,e+s-o],["L",t,e+o],["A",o,o,0,0,1,t+o,e],["Z"]]}(n,.5,l,h,d):[["M",n,.5],["L",n+l,.5],["L",n+l,.5+h],["L",n,.5+h],["Z"]])]}},tt=r.default.SVGRenderer;var te=o.n(tt);let{defaultOptions:ti}=x(),{composed:ts}=x(),{setFixedRange:tr}={setFixedRange:function(t){let e=this.xAxis[0];(0,a.defined)(e.dataMax)&&(0,a.defined)(e.dataMin)&&t?this.fixedRange=Math.min(t,e.dataMax-e.dataMin):this.fixedRange=t}};function to(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}let ta=function(t,e,i){V.compose(e),(0,a.pushUnique)(ts,"Navigator")&&(t.prototype.setFixedRange=tr,(0,a.extend)(te().prototype.symbols,Q),(0,a.extend)(ti,{navigator:Z}),(0,a.addEvent)(i,"afterUpdate",to))},{composed:tn}=x();!function(t){let e;function i(t){let e=(0,a.pick)(t.options?.min,t.min),i=(0,a.pick)(t.options?.max,t.max);return{axisMin:e,axisMax:i,scrollMin:(0,a.defined)(t.dataMin)?Math.min(e,t.min??1/0,t.dataMin,t.threshold??1/0):e,scrollMax:t.treeGrid?.adjustedMax??((0,a.defined)(t.dataMax)?Math.max(i,t.max??-1/0,t.dataMax,t.threshold??-1/0):i)}}function s(){let t=this.scrollbar,e=t&&!t.options.opposite,i=this.horiz?2:e?3:1;t&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[i]+=t.size+(t.options.margin||0))}function r(){let t=this;t.options?.scrollbar?.enabled&&(t.options.scrollbar.vertical=!t.horiz,t.options.startOnTick=t.options.endOnTick=!1,t.scrollbar=new e(t.chart.renderer,t.options.scrollbar,t.chart),(0,a.addEvent)(t.scrollbar,"changed",function(e){let s,r,{axisMin:o,axisMax:n,scrollMin:l,scrollMax:h}=i(t),d=t.toPixels(l),c=t.toPixels(h)-d;if((0,a.defined)(o)&&(0,a.defined)(n))if(t.horiz&&!t.reversed||!t.horiz&&t.reversed?(s=Math.min(h,t.toValue(d+c*this.to)),r=Math.max(l,t.toValue(d+c*this.from))):(s=Math.min(h,t.toValue(d+c*(1-this.from))),r=Math.max(l,t.toValue(d+c*(1-this.to)))),this.shouldUpdateExtremes(e.DOMType)){let i="mousemove"!==e.DOMType&&"touchmove"!==e.DOMType&&void 0;t.setExtremes((0,a.correctFloat)(r),(0,a.correctFloat)(s),!0,i,e)}else this.setRange(this.from,this.to)}))}function o(){let t,e,s,{scrollMin:r,scrollMax:o}=i(this),n=this.scrollbar,l=(this.axisTitleMargin||0)+(this.titleOffset||0),h=this.chart.scrollbarsOffsets,d=this.options.margin||0;if(n&&h){if(this.horiz)this.opposite||(h[1]+=l),n.position(this.left,this.top+this.height+2+h[1]-(this.opposite?d:0),this.width,this.height),this.opposite||(h[1]+=d),t=1;else{let e;this.opposite&&(h[0]+=l),e=n.options.opposite?this.left+this.width+2+h[0]-(this.opposite?0:d):this.opposite?0:d,n.position(e,this.top,this.width,this.height),this.opposite&&(h[0]+=d),t=0}if(h[t]+=n.size+(n.options.margin||0),isNaN(r)||isNaN(o)||!(0,a.defined)(this.min)||!(0,a.defined)(this.max)||(0,a.defined)(this.dataMin)&&this.dataMin===this.dataMax)n.setRange(0,1);else if(this.min===this.max){let t=this.pointRange/(this.dataMax+1);e=t*this.min,s=t*(this.max+1),n.setRange(e,s)}else e=(this.toPixels(this.min)-this.toPixels(r))/(this.toPixels(o)-this.toPixels(r)),s=(this.toPixels(this.max)-this.toPixels(r))/(this.toPixels(o)-this.toPixels(r)),this.horiz&&!this.reversed||!this.horiz&&this.reversed?n.setRange(e,s):n.setRange(1-s,1-e)}}t.compose=function(t,i){(0,a.pushUnique)(tn,"Axis.Scrollbar")&&(e=i,(0,a.addEvent)(t,"afterGetOffset",s),(0,a.addEvent)(t,"afterInit",r),(0,a.addEvent)(t,"afterRender",o))}}(c||(c={}));let tl=c,th={height:10,barBorderRadius:5,buttonBorderRadius:0,buttonsEnabled:!1,liveRedraw:void 0,margin:void 0,minWidth:6,opposite:!0,step:.2,zIndex:3,barBackgroundColor:"var(--highcharts-neutral-color-20)",barBorderWidth:0,barBorderColor:"var(--highcharts-neutral-color-20)",buttonArrowColor:"var(--highcharts-neutral-color-80)",buttonBackgroundColor:"var(--highcharts-neutral-color-10)",buttonBorderColor:"var(--highcharts-neutral-color-20)",buttonBorderWidth:1,rifleColor:"none",trackBackgroundColor:"rgba(255, 255, 255, 0.001)",trackBorderColor:"var(--highcharts-neutral-color-20)",trackBorderRadius:5,trackBorderWidth:1},{defaultOptions:td}=x(),{composed:tc}=x();class tp{static compose(t){tl.compose(t,tp),(0,a.pushUnique)(tc,"Scrollbar")&&(0,a.extend)(td,{scrollbar:th})}static swapXY(t,e){return e&&t.forEach(t=>{let e,i=t.length;for(let s=0;s<i;s+=2)"number"==typeof(e=t[s+1])&&(t[s+1]=t[s+2],t[s+2]=e)}),t}constructor(t,e,i){this._events=[],this.chartX=0,this.chartY=0,this.from=0,this.scrollbarButtons=[],this.scrollbarLeft=0,this.scrollbarStrokeWidth=1,this.scrollbarTop=0,this.size=0,this.to=0,this.trackBorderWidth=1,this.x=0,this.y=0,this.init(t,e,i)}addEvents(){let t=this.options.inverted?[1,0]:[0,1],e=this.scrollbarButtons,i=this.scrollbarGroup.element,s=this.track.element,r=this.mouseDownHandler.bind(this),o=this.mouseMoveHandler.bind(this),n=this.mouseUpHandler.bind(this),l=[[e[t[0]].element,"click",this.buttonToMinClick.bind(this)],[e[t[1]].element,"click",this.buttonToMaxClick.bind(this)],[s,"click",this.trackClick.bind(this)],[i,"mousedown",r],[i.ownerDocument,"mousemove",o],[i.ownerDocument,"mouseup",n],[i,"touchstart",r],[i.ownerDocument,"touchmove",o],[i.ownerDocument,"touchend",n]];l.forEach(function(t){a.addEvent.apply(null,t)}),this._events=l}buttonToMaxClick(t){let e=(this.to-this.from)*(0,a.pick)(this.options.step,.2);this.updatePosition(this.from+e,this.to+e),(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})}buttonToMinClick(t){let e=(0,a.correctFloat)(this.to-this.from)*(0,a.pick)(this.options.step,.2);this.updatePosition((0,a.correctFloat)(this.from-e),(0,a.correctFloat)(this.to-e)),(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})}cursorToScrollbarPosition(t){let e=this.options,i=e.minWidth>this.calculatedWidth?e.minWidth:0;return{chartX:(t.chartX-this.x-this.xOffset)/(this.barWidth-i),chartY:(t.chartY-this.y-this.yOffset)/(this.barWidth-i)}}destroy(){let t=this,e=t.chart.scroller;t.removeEvents(),["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(e){t[e]&&t[e].destroy&&(t[e]=t[e].destroy())}),e&&t===e.scrollbar&&(e.scrollbar=null,(0,a.destroyObjectProperties)(e.scrollbarButtons))}drawScrollbarButton(t){let e=this.renderer,i=this.scrollbarButtons,s=this.options,r=this.size,o=e.g().add(this.group);if(i.push(o),s.buttonsEnabled){let a=e.rect().addClass("highcharts-scrollbar-button").add(o);this.chart.styledMode||a.attr({stroke:s.buttonBorderColor,"stroke-width":s.buttonBorderWidth,fill:s.buttonBackgroundColor}),a.attr(a.crisp({x:-.5,y:-.5,width:r,height:r,r:s.buttonBorderRadius},a.strokeWidth()));let n=e.path(tp.swapXY([["M",r/2+(t?-1:1),r/2-3],["L",r/2+(t?-1:1),r/2+3],["L",r/2+(t?2:-2),r/2]],s.vertical)).addClass("highcharts-scrollbar-arrow").add(i[t]);this.chart.styledMode||n.attr({fill:s.buttonArrowColor})}}init(t,e,i){this.scrollbarButtons=[],this.renderer=t,this.userOptions=e,this.options=(0,a.merge)(th,td.scrollbar,e),this.options.margin=(0,a.pick)(this.options.margin,10),this.chart=i,this.size=(0,a.pick)(this.options.size,this.options.height),e.enabled&&(this.render(),this.addEvents())}mouseDownHandler(t){let e=this.chart.pointer?.normalize(t)||t,i=this.cursorToScrollbarPosition(e);this.chartX=i.chartX,this.chartY=i.chartY,this.initPositions=[this.from,this.to],this.grabbedCenter=!0}mouseMoveHandler(t){let e,i=this.chart.pointer?.normalize(t)||t,s=this.options.vertical?"chartY":"chartX",r=this.initPositions||[];this.grabbedCenter&&(!t.touches||0!==t.touches[0][s])&&(e=this.cursorToScrollbarPosition(i)[s]-this[s],this.hasDragged=!0,this.updatePosition(r[0]+e,r[1]+e),this.hasDragged&&(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:t.type,DOMEvent:t}))}mouseUpHandler(t){this.hasDragged&&(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:t.type,DOMEvent:t}),this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null}position(t,e,i,s){let{buttonsEnabled:r,margin:o=0,vertical:a}=this.options,n=this.rendered?"animate":"attr",l=s,h=0;this.group.show(),this.x=t,this.y=e+this.trackBorderWidth,this.width=i,this.height=s,this.xOffset=l,this.yOffset=h,a?(this.width=this.yOffset=i=h=this.size,this.xOffset=l=0,this.yOffset=h=r?this.size:0,this.barWidth=s-(r?2*i:0),this.x=t+=o):(this.height=s=this.size,this.xOffset=l=r?this.size:0,this.barWidth=i-(r?2*s:0),this.y=this.y+o),this.group[n]({translateX:t,translateY:this.y}),this.track[n]({width:i,height:s}),this.scrollbarButtons[1][n]({translateX:a?0:i-l,translateY:a?s-h:0})}removeEvents(){this._events.forEach(function(t){a.removeEvent.apply(null,t)}),this._events.length=0}render(){let t=this.renderer,e=this.options,i=this.size,s=this.chart.styledMode,r=t.g("scrollbar").attr({zIndex:e.zIndex}).hide().add();this.group=r,this.track=t.rect().addClass("highcharts-scrollbar-track").attr({r:e.trackBorderRadius||0,height:i,width:i}).add(r),s||this.track.attr({fill:e.trackBackgroundColor,stroke:e.trackBorderColor,"stroke-width":e.trackBorderWidth});let o=this.trackBorderWidth=this.track.strokeWidth();this.track.attr({x:-(0,a.crisp)(0,o),y:-(0,a.crisp)(0,o)}),this.scrollbarGroup=t.g().add(r),this.scrollbar=t.rect().addClass("highcharts-scrollbar-thumb").attr({height:i-o,width:i-o,r:e.barBorderRadius||0}).add(this.scrollbarGroup),this.scrollbarRifles=t.path(tp.swapXY([["M",-3,i/4],["L",-3,2*i/3],["M",0,i/4],["L",0,2*i/3],["M",3,i/4],["L",3,2*i/3]],e.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup),s||(this.scrollbar.attr({fill:e.barBackgroundColor,stroke:e.barBorderColor,"stroke-width":e.barBorderWidth}),this.scrollbarRifles.attr({stroke:e.rifleColor,"stroke-width":1})),this.scrollbarStrokeWidth=this.scrollbar.strokeWidth(),this.scrollbarGroup.translate(-(0,a.crisp)(0,this.scrollbarStrokeWidth),-(0,a.crisp)(0,this.scrollbarStrokeWidth)),this.drawScrollbarButton(0),this.drawScrollbarButton(1)}setRange(t,e){let i,s,r=this.options,o=r.vertical,n=r.minWidth,l=this.barWidth,h=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(!(0,a.defined)(l))return;let d=l*Math.min(e,1);i=Math.ceil(l*(t=Math.max(t,0))),this.calculatedWidth=s=(0,a.correctFloat)(d-i),s<n&&(i=(l-n+s)*t,s=n);let c=Math.floor(i+this.xOffset+this.yOffset),p=s/2-.5;this.from=t,this.to=e,o?(this.scrollbarGroup[h]({translateY:c}),this.scrollbar[h]({height:s}),this.scrollbarRifles[h]({translateY:p}),this.scrollbarTop=c,this.scrollbarLeft=0):(this.scrollbarGroup[h]({translateX:c}),this.scrollbar[h]({width:s}),this.scrollbarRifles[h]({translateX:p}),this.scrollbarLeft=c,this.scrollbarTop=0),s<=12?this.scrollbarRifles.hide():this.scrollbarRifles.show(),!1===r.showFull&&(t<=0&&e>=1?this.group.hide():this.group.show()),this.rendered=!0}shouldUpdateExtremes(t){return(0,a.pick)(this.options.liveRedraw,x().svg&&!x().isTouchDevice&&!this.chart.boosted)||"mouseup"===t||"touchend"===t||!(0,a.defined)(t)}trackClick(t){let e=this.chart.pointer?.normalize(t)||t,i=this.to-this.from,s=this.y+this.scrollbarTop,r=this.x+this.scrollbarLeft;this.options.vertical&&e.chartY>s||!this.options.vertical&&e.chartX>r?this.updatePosition(this.from+i,this.to+i):this.updatePosition(this.from-i,this.to-i),(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})}update(t){this.destroy(),this.init(this.chart.renderer,(0,a.merge)(!0,this.options,t),this.chart)}updatePosition(t,e){e>1&&(t=(0,a.correctFloat)(1-(0,a.correctFloat)(e-t)),e=1),t<0&&(e=(0,a.correctFloat)(e-t),t=0),this.from=t,this.to=e}}tp.defaultOptions=th;let{defaultOptions:tu}=x(),{isTouchDevice:tg}=x();function tx(t,...e){let i=[].filter.call(e,a.isNumber);if(i.length)return Math[t].apply(0,i)}class tm{static compose(t,e,i){H(t,tm),ta(t,e,i)}constructor(t){this.isDirty=!1,this.scrollbarHeight=0,this.init(t)}drawHandle(t,e,i,s){let r=this.navigatorOptions.handles.height;this.handles[e][s](i?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(t,10)+.5-r)}:{translateX:Math.round(this.left+parseInt(t,10)),translateY:Math.round(this.top+this.height/2-r/2-1)})}drawOutline(t,e,i,s){let r=this.navigatorOptions.maskInside,o=this.outline.strokeWidth(),a=o/2,n=o%2/2,l=this.scrollButtonSize,h=this.size,d=this.top,c=this.height,p=d-a,u=d+c,g=this.left,x,m;i?(x=d+e+n,e=d+t+n,m=[["M",g+c,d-l-n],["L",g+c,x],["L",g,x],["M",g,e],["L",g+c,e],["L",g+c,d+h+l]],r&&m.push(["M",g+c,x-a],["L",g+c,e+a])):(g-=l,t+=g+l-n,e+=g+l-n,m=[["M",g,p],["L",t,p],["L",t,u],["M",e,u],["L",e,p],["L",g+h+2*l,p]],r&&m.push(["M",t-a,p],["L",e+a,p])),this.outline[s]({d:m})}drawMasks(t,e,i,s){let r,o,a,n,l=this.left,h=this.top,d=this.height;i?(a=[l,l,l],n=[h,h+t,h+e],o=[d,d,d],r=[t,e-t,this.size-e]):(a=[l,l+t,l+e],n=[h,h,h],o=[t,e-t,this.size-e],r=[d,d,d]),this.shades.forEach((t,e)=>{t[s]({x:a[e],y:n[e],width:o[e],height:r[e]})})}renderElements(){let t=this,e=t.navigatorOptions,i=e.maskInside,s=t.chart,r=s.inverted,o=s.renderer,a={cursor:r?"ns-resize":"ew-resize"},n=t.navigatorGroup??(t.navigatorGroup=o.g("navigator").attr({zIndex:8,visibility:"hidden"}).add());if([!i,i,!i].forEach((i,r)=>{let l=t.shades[r]??(t.shades[r]=o.rect().addClass("highcharts-navigator-mask"+(1===r?"-inside":"-outside")).add(n));s.styledMode||(l.attr({fill:i?e.maskFill:"rgba(0,0,0,0)"}),1===r&&l.css(a))}),t.outline||(t.outline=o.path().addClass("highcharts-navigator-outline").add(n)),s.styledMode||t.outline.attr({"stroke-width":e.outlineWidth,stroke:e.outlineColor}),e.handles?.enabled){let i=!1,r=e.handles,{height:l,width:h}=r;[0,1].forEach(e=>{let d=r.symbols[e];(i=i||t.handles[e]?.symbolName!==d)&&(t.handles[e]?.destroy(),t.handles[e]=o.symbol(d,-h/2-1,0,h,l,r),t.handles[e].attr({zIndex:7-e}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][e]).add(n)),s.inverted&&t.handles[e].attr({rotation:90,rotationOriginX:Math.floor(-h/2),rotationOriginY:(l+h)/2}),s.styledMode||t.handles[e].attr({fill:r.backgroundColor,stroke:r.borderColor,"stroke-width":r.lineWidth,width:r.width,height:r.height,x:-h/2-1,y:0}).css(a)}),i&&(t.partsEventsToUnbind?.forEach(t=>{t()}),t.partsEventsToUnbind=[...t.getPartsEvents("mousedown"),...t.getPartsEvents("touchstart")])}}update(t,e=!1){let i=this.chart,s=i.options.chart.inverted!==i.scrollbar?.options.vertical;if((0,a.merge)(!0,i.options.navigator,t),this.navigatorOptions=i.options.navigator||{},this.setOpposite(),(0,a.defined)(t.enabled)||s)return this.destroy(),this.navigatorEnabled=t.enabled||this.navigatorEnabled,this.init(i);if(this.navigatorEnabled&&(this.isDirty=!0,!1===t.adaptToUpdatedData&&this.baseSeries.forEach(t=>{(0,a.removeEvent)(t,"updatedData",this.updatedDataHandler)},this),t.adaptToUpdatedData&&this.baseSeries.forEach(t=>{t.eventsToUnbind.push((0,a.addEvent)(t,"updatedData",this.updatedDataHandler))},this),(t.series||t.baseSeries)&&this.setBaseSeries(void 0,!1),t.height||t.xAxis||t.yAxis)){this.height=t.height??this.height;let e=this.getXAxisOffsets();this.xAxis.update({...t.xAxis,offsets:e,[i.inverted?"width":"height"]:this.height,[i.inverted?"height":"width"]:void 0},!1),this.yAxis.update({...t.yAxis,[i.inverted?"width":"height"]:this.height},!1)}e&&i.redraw()}render(t,e,i,s){let r=this.chart,o=this.xAxis,n=o.pointRange||0,l=o.navigatorAxis.fake?r.xAxis[0]:o,h=this.navigatorEnabled,d=this.rendered,c=r.inverted,p=r.xAxis[0].minRange,u=r.xAxis[0].options.maxRange,g=this.scrollButtonSize,x,m,f,b=this.scrollbarHeight,v,y;if(this.hasDragged&&!(0,a.defined)(i))return;if(this.isDirty&&this.renderElements(),t=(0,a.correctFloat)(t-n/2),e=(0,a.correctFloat)(e+n/2),!(0,a.isNumber)(t)||!(0,a.isNumber)(e))if(!d)return;else i=0,s=(0,a.pick)(o.width,l.width);this.left=(0,a.pick)(o.left,r.plotLeft+g+(c?r.plotWidth:0));let M=this.size=v=(0,a.pick)(o.len,(c?r.plotHeight:r.plotWidth)-2*g);x=c?b:v+2*g,i=(0,a.pick)(i,o.toPixels(t,!0)),s=(0,a.pick)(s,o.toPixels(e,!0)),(0,a.isNumber)(i)&&Math.abs(i)!==1/0||(i=0,s=x);let k=o.toValue(i,!0),E=o.toValue(s,!0),A=Math.abs((0,a.correctFloat)(E-k));(0,a.defined)(p)&&A<p?this.grabbedLeft?i=o.toPixels(E-p-n,!0):this.grabbedRight&&(s=o.toPixels(k+p+n,!0)):(0,a.defined)(u)&&(0,a.correctFloat)(A-n)>u&&(this.grabbedLeft?i=o.toPixels(E-u-n,!0):this.grabbedRight&&(s=o.toPixels(k+u+n,!0))),this.zoomedMax=(0,a.clamp)(Math.max(i,s),0,M),this.zoomedMin=(0,a.clamp)(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(i,s),0,M),this.range=this.zoomedMax-this.zoomedMin,M=Math.round(this.zoomedMax);let w=Math.round(this.zoomedMin);h&&(this.navigatorGroup.attr({visibility:"inherit"}),y=d&&!this.hasDragged?"animate":"attr",this.drawMasks(w,M,c,y),this.drawOutline(w,M,c,y),this.navigatorOptions.handles?.enabled&&(this.drawHandle(w,0,c,y),this.drawHandle(M,1,c,y))),this.scrollbar&&(c?(f=this.top-g,m=this.left-b+(h||!l.opposite?0:(l.titleOffset||0)+l.axisTitleMargin),b=v+2*g):(f=this.top+(h?this.height:-b),m=this.left-g),this.scrollbar.position(m,f,x,b),this.scrollbar.setRange(this.zoomedMin/(v||1),this.zoomedMax/(v||1))),this.rendered=!0,this.isDirty=!1,(0,a.fireEvent)(this,"afterRender")}addMouseEvents(){let t,e,i=this,s=i.chart,r=s.container,o=[];i.mouseMoveHandler=t=function(t){i.onMouseMove(t)},i.mouseUpHandler=e=function(t){i.onMouseUp(t)},o.push((0,a.addEvent)(s.renderTo,"mousemove",t),(0,a.addEvent)(r.ownerDocument,"mouseup",e),(0,a.addEvent)(s.renderTo,"touchmove",t),(0,a.addEvent)(r.ownerDocument,"touchend",e)),i.eventsToUnbind=o,i.series&&i.series[0]&&o.push((0,a.addEvent)(i.series[0].xAxis,"foundExtremes",function(){s.navigator?.modifyNavigatorAxisExtremes()}))}getPartsEvents(t){let e=this,i=[];return["shades","handles"].forEach(s=>{e[s].forEach(function(r,o){i.push((0,a.addEvent)(r.element,t,function(t){e[`${s}Mousedown`](t,o)}))})}),i}shadesMousedown(t,e){t=this.chart.pointer?.normalize(t)||t;let i=this.chart,s=this.xAxis,r=this.zoomedMin,o=this.size,n=this.range,l=this.left,h=t.chartX,d,c,p,u;i.inverted&&(h=t.chartY,l=this.top),1===e?(this.grabbedCenter=h,this.fixedWidth=n,this.dragOffset=h-r):(u=h-l-n/2,0===e?u=Math.max(0,u):2===e&&u+n>=o&&(u=o-n,this.reversedExtremes?(u-=n,c=this.getUnionExtremes()?.dataMin):d=this.getUnionExtremes()?.dataMax),u!==r&&(this.fixedWidth=n,p=s.navigatorAxis.toFixedRange(u,u+n,c,d),(0,a.defined)(p.min)&&(0,a.fireEvent)(this,"setRange",{min:Math.min(p.min,p.max),max:Math.max(p.min,p.max),redraw:!0,eventArguments:{trigger:"navigator"}})))}handlesMousedown(t,e){t=this.chart.pointer?.normalize(t)||t;let i=this.chart,s=i.xAxis[0],r=this.reversedExtremes;0===e?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=r?s.min:s.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=r?s.max:s.min),i.setFixedRange(void 0)}onMouseMove(t){let e=this,i=e.chart,s=e.navigatorSize,r=e.range,o=e.dragOffset,n=i.inverted,l=e.left,h;(!t.touches||0!==t.touches[0].pageX)&&(h=(t=i.pointer?.normalize(t)||t).chartX,n&&(l=e.top,h=t.chartY),e.grabbedLeft?(e.hasDragged=!0,e.render(0,0,h-l,e.otherHandlePos)):e.grabbedRight?(e.hasDragged=!0,e.render(0,0,e.otherHandlePos,h-l)):e.grabbedCenter&&o&&(e.hasDragged=!0,h<o?h=o:h>s+o-r&&(h=s+o-r),e.render(0,0,h-o,h-o+r)),e.hasDragged&&(0,a.pick)(e.scrollbarOptions?.liveRedraw,!tg&&!this.chart.boosted)&&(t.DOMType=t.type,setTimeout(function(){e.onMouseUp(t)},0)))}onMouseUp(t){let e,i,s,r,o,n,l=this.chart,h=this.xAxis,d=this.scrollbar,c=t.DOMEvent||t,p=l.inverted,u=this.rendered&&!this.hasDragged?"animate":"attr";(this.hasDragged&&(!d||!d.hasDragged)||"scrollbar"===t.trigger)&&(s=this.getUnionExtremes(),this.zoomedMin===this.otherHandlePos?r=this.fixedExtreme:this.zoomedMax===this.otherHandlePos&&(o=this.fixedExtreme),this.zoomedMax===this.size&&(o=this.reversedExtremes?s.dataMin:s.dataMax),0===this.zoomedMin&&(r=this.reversedExtremes?s.dataMax:s.dataMin),n=h.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,r,o),(0,a.defined)(n.min)&&(0,a.fireEvent)(this,"setRange",{min:Math.min(n.min,n.max),max:Math.max(n.min,n.max),redraw:!0,animation:!this.hasDragged&&null,eventArguments:{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:c}})),"mousemove"!==t.DOMType&&"touchmove"!==t.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null),this.navigatorEnabled&&(0,a.isNumber)(this.zoomedMin)&&(0,a.isNumber)(this.zoomedMax)&&(i=Math.round(this.zoomedMin),e=Math.round(this.zoomedMax),this.shades&&this.drawMasks(i,e,p,u),this.outline&&this.drawOutline(i,e,p,u),this.navigatorOptions.handles?.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(i,0,p,u),this.drawHandle(e,1,p,u)))}removeEvents(){this.eventsToUnbind?.forEach(t=>{t()}),this.eventsToUnbind=void 0,this.removeBaseSeriesEvents()}removeBaseSeriesEvents(){let t=this.baseSeries||[];this.navigatorEnabled&&t[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&t.forEach(function(t){(0,a.removeEvent)(t,"updatedData",this.updatedDataHandler)},this),t[0].xAxis&&(0,a.removeEvent)(t[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))}getXAxisOffsets(){return this.chart.inverted?[this.scrollButtonSize,0,-this.scrollButtonSize,0]:[0,-this.scrollButtonSize,0,this.scrollButtonSize]}init(t){let e=t.options,i=e.navigator||{},s=i.enabled,r=e.scrollbar||{},o=r.enabled,n=s&&i.height||0,l=o&&r.height||0,h=r.buttonsEnabled&&l||0;this.handles=[],this.shades=[],this.chart=t,this.setBaseSeries(),this.height=n,this.scrollbarHeight=l,this.scrollButtonSize=h,this.scrollbarEnabled=o,this.navigatorEnabled=!!s,this.navigatorOptions=i,this.scrollbarOptions=r,this.setOpposite();let d=this,c=d.baseSeries,p=t.xAxis.length,u=t.yAxis.length,g=c&&c[0]&&c[0].xAxis||t.xAxis[0]||{options:{}};if(t.isDirtyBox=!0,d.navigatorEnabled){let e=this.getXAxisOffsets();d.xAxis=new(N())(t,(0,a.merge)({breaks:g.options.breaks,ordinal:g.options.ordinal,overscroll:g.options.overscroll},i.xAxis,{type:"datetime",yAxis:i.yAxis?.id,index:p,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:g.options.ordinal?0:g.options.minPadding,maxPadding:g.options.ordinal?0:g.options.maxPadding,zoomEnabled:!1},t.inverted?{offsets:e,width:n}:{offsets:e,height:n}),"xAxis"),d.yAxis=new(N())(t,(0,a.merge)(i.yAxis,{alignTicks:!1,offset:0,index:u,isInternal:!0,reversed:(0,a.pick)(i.yAxis&&i.yAxis.reversed,t.yAxis[0]&&t.yAxis[0].reversed,!1),zoomEnabled:!1},t.inverted?{width:n}:{height:n}),"yAxis"),d.xAxis.clippable=!1,d.yAxis.clippable=!1,c||i.series?.data||i.series?.dataTable?d.updateNavigatorSeries(!1):0===t.series.length&&(d.unbindRedraw=(0,a.addEvent)(t,"beforeRedraw",function(){t.series.length>0&&!d.series&&(d.setBaseSeries(),d.unbindRedraw?.())})),d.reversedExtremes=t.inverted&&!d.xAxis.reversed||!t.inverted&&d.xAxis.reversed,d.renderElements(),d.addMouseEvents()}else d.xAxis={chart:t,navigatorAxis:{fake:!0},translate:function(e,i){let s=t.xAxis[0],r=s.getExtremes(),o=s.len-2*h,a=tx("min",s.options.min,r.dataMin),n=tx("max",s.options.max,r.dataMax)-a;return i?e*n/o+a:o*(e-a)/n},toPixels:function(t){return this.translate(t)},toValue:function(t){return this.translate(t,!0)}},d.xAxis.navigatorAxis.axis=d.xAxis,d.xAxis.navigatorAxis.toFixedRange=V.prototype.toFixedRange.bind(d.xAxis.navigatorAxis);if(t.options.scrollbar?.enabled){let e=(0,a.merge)(t.options.scrollbar,{vertical:t.inverted});(0,a.isNumber)(e.margin)||(e.margin=t.inverted?-3:3),t.scrollbar=d.scrollbar=new tp(t.renderer,e,t),(0,a.addEvent)(d.scrollbar,"changed",function(t){let e=d.size,i=e*this.to,s=e*this.from;d.hasDragged=d.scrollbar?.hasDragged,d.render(0,0,s,i),this.shouldUpdateExtremes(t.DOMType)&&setTimeout(function(){d.onMouseUp(t)})})}d.addBaseSeriesEvents(),d.addChartEvents()}setOpposite(){let t=this.navigatorOptions,e=this.navigatorEnabled,i=this.chart;this.opposite=(0,a.pick)(t.opposite,!!(!e&&i.inverted))}getUnionExtremes(t){let e,i=this.chart.xAxis[0],s=this.chart.time,r=this.xAxis,o=r.options,n=i.options;return t&&null===i.dataMin||(e={dataMin:(0,a.pick)(s.parse(o?.min),tx("min",s.parse(n.min),i.dataMin,r.dataMin,r.min)),dataMax:(0,a.pick)(s.parse(o?.max),tx("max",s.parse(n.max),i.dataMax,r.dataMax,r.max))}),e}setBaseSeries(t,e){let i=this.chart,s=this.baseSeries=[];t=t||i.options.navigator?.baseSeries||(i.series.length?(0,a.find)(i.series,t=>!t.options.isInternal).index:0),(i.series||[]).forEach((e,i)=>{!e.options.isInternal&&(e.options.showInNavigator||(i===t||e.options.id===t)&&!1!==e.options.showInNavigator)&&s.push(e)}),this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,e)}updateNavigatorSeries(t,e){let i=this,s=i.chart,r=i.baseSeries,o={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:this.navigatorOptions.xAxis?.id,yAxis:this.navigatorOptions.yAxis?.id,showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},n=i.series=(i.series||[]).filter(t=>{let e=t.baseSeries;return!(e&&0>r.indexOf(e))||(e&&((0,a.removeEvent)(e,"updatedData",i.updatedDataHandler),delete e.navigatorSeries),t.chart&&t.destroy(),!1)}),l,h,d=i.navigatorOptions.series,c;if(r&&r.length&&r.forEach(t=>{let p=t.navigatorSeries,u=(0,a.extend)({color:t.color,visible:t.visible},(0,a.isArray)(d)?tu.navigator.series:d);if(p&&!1===i.navigatorOptions.adaptToUpdatedData)return;o.name="Navigator "+r.length,c=(l=t.options||{}).navigatorOptions||{},u.dataLabels=(0,a.splat)(u.dataLabels),(h=(0,a.merge)(l,o,u,c)).pointRange=(0,a.pick)(u.pointRange,c.pointRange,tu.plotOptions[h.type||"line"]?.pointRange);let g=c.data||u.data,x=c.dataTable||u.dataTable;i.hasNavigatorData=i.hasNavigatorData||!!g||!!x,h.data=g||l.data?.slice(0),h.dataTable=x||l.dataTable,p&&p.options?p.update(h,e):(t.navigatorSeries=s.initSeries(h),(0,a.fireEvent)(t.navigatorSeries,"afterUpdate"),t.navigatorSeries.baseSeries=t,n.push(t.navigatorSeries))}),(d?.data||d?.dataTable)&&!(r&&r.length)||(0,a.isArray)(d)){let t=s.options.colors||[];i.hasNavigatorData=!1,(d=(0,a.splat)(d)).forEach((e,r)=>{o.name="Navigator "+(n.length+1),(h=(0,a.merge)(tu.navigator?.series,{color:s.series[r]&&!s.series[r].options.isInternal&&s.series[r].color||t[r]||t[0]},o,e)).data=e.data,h.dataTable=e.dataTable,(h.data||h.dataTable)&&(i.hasNavigatorData=!0,n.push(s.initSeries(h)))})}t&&this.addBaseSeriesEvents()}addBaseSeriesEvents(){let t=this,e=t.baseSeries||[];e[0]&&e[0].xAxis&&e[0].eventsToUnbind.push((0,a.addEvent)(e[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes)),e.forEach(i=>{i.eventsToUnbind.push((0,a.addEvent)(i,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)})),i.eventsToUnbind.push((0,a.addEvent)(i,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)})),!1!==this.navigatorOptions.adaptToUpdatedData&&i.xAxis&&i.eventsToUnbind.push((0,a.addEvent)(i,"updatedData",this.updatedDataHandler)),i.eventsToUnbind.push((0,a.addEvent)(i,"remove",function(){e&&(0,a.erase)(e,i),this.navigatorSeries&&t.series&&((0,a.erase)(t.series,this.navigatorSeries),(0,a.defined)(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))})}getBaseSeriesMin(t){return this.baseSeries.reduce(function(t,e){return Math.min(t,e.getColumn("x")[0]??t)},t)}modifyNavigatorAxisExtremes(){let t=this.xAxis;if(void 0!==t.getExtremes){let e=this.getUnionExtremes(!0);e&&(e.dataMin!==t.min||e.dataMax!==t.max)&&(t.min=e.dataMin,t.max=e.dataMax)}}modifyBaseAxisExtremes(){let t,e,i=this.chart.navigator,s=this.getExtremes(),r=s.min,o=s.max,n=s.dataMin,l=s.dataMax,h=o-r,d=i?.stickToMin,c=i?.stickToMax,p=(0,a.pick)(this.ordinal?.convertOverscroll(this.options.overscroll),0),u=i.series&&i.series[0],g=!!this.setExtremes;!(this.eventArgs&&"rangeSelectorButton"===this.eventArgs.trigger)&&(d&&(t=(e=n)+h),c&&(t=l+p,d||(e=Math.max(n,t-h,i.getBaseSeriesMin(u&&u.xData?u.xData[0]:-Number.MAX_VALUE)))),g&&(d||c)&&(0,a.isNumber)(e)&&(this.min=this.userMin=e,this.max=this.userMax=t)),i.stickToMin=i.stickToMax=null}updatedDataHandler(){let t=this.chart.navigator,e=this.navigatorSeries,i=t.reversedExtremes?0===Math.round(t.zoomedMin):Math.round(t.zoomedMax)>=Math.round(t.size);t.stickToMax=(0,a.pick)(this.chart.options.navigator&&this.chart.options.navigator.stickToMax,i),t.stickToMin=t.shouldStickToMin(this,t),e&&!t.hasNavigatorData&&(e.options.pointStart=this.getColumn("x")[0],e.setData(this.options.data||this.options.dataTable,!1,void 0,!1))}shouldStickToMin(t,e){let i=e.getBaseSeriesMin(t.getColumn("x")[0]),s=t.xAxis,r=s.max,o=s.min,n=s.options.range;return!!((0,a.isNumber)(r)&&(0,a.isNumber)(o))&&(n&&r-i>0?r-i<n:o<=i)}addChartEvents(){this.eventsToUnbind||(this.eventsToUnbind=[]),this.eventsToUnbind.push((0,a.addEvent)(this.chart,"redraw",function(){let t=this.navigator,e=t&&(t.baseSeries&&t.baseSeries[0]&&t.baseSeries[0].xAxis||this.xAxis[0]);e&&t.render(e.min,e.max)}),(0,a.addEvent)(this.chart,"getMargins",function(){let t=this.navigator,e=t.opposite?"plotTop":"marginBottom";this.inverted&&(e=t.opposite?"marginRight":"plotLeft"),this[e]=(this[e]||0)+(t.navigatorEnabled||!this.inverted?t.height+(this.scrollbar?.options.margin||0)+t.scrollbarHeight:0)+(t.navigatorOptions.margin||0)}),(0,a.addEvent)(this,"setRange",function(t){this.chart.xAxis[0].setExtremes(t.min,t.max,t.redraw,t.animation,t.eventArguments)}))}destroy(){this.removeEvents(),this.xAxis&&((0,a.erase)(this.chart.xAxis,this.xAxis),(0,a.erase)(this.chart.axes,this.xAxis)),this.yAxis&&((0,a.erase)(this.chart.yAxis,this.yAxis),(0,a.erase)(this.chart.axes,this.yAxis)),(this.series||[]).forEach(t=>{t.destroy&&t.destroy()}),["series","xAxis","yAxis","shades","outline","scrollbarTrack","scrollbarRifles","scrollbarGroup","scrollbar","navigatorGroup","rendered"].forEach(t=>{this[t]&&this[t].destroy&&this[t].destroy(),this[t]=null}),[this.handles].forEach(t=>{(0,a.destroyObjectProperties)(t)}),this.baseSeries.forEach(t=>{t.navigatorSeries=void 0}),this.navigatorEnabled=!1}}let tf={rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"→",rangeSelector:{allText:"All",allTitle:"View all",monthText:"{count}m",monthTitle:"View {count} {#eq count 1}month{else}months{/eq}",yearText:"{count}y",yearTitle:"View {count} {#eq count 1}year{else}years{/eq}",ytdText:"YTD",ytdTitle:"View year to date"}},tb={allButtonsEnabled:!1,buttons:[{type:"month",count:1},{type:"month",count:3},{type:"month",count:6},{type:"ytd"},{type:"year",count:1},{type:"all"}],buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,inputBoxWidth:void 0,inputDateFormat:"%[ebY]",inputDateParser:void 0,inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:"var(--highcharts-highlight-color-80)",cursor:"pointer",fontSize:"0.8em"},labelStyle:{color:"var(--highcharts-neutral-color-60)",fontSize:"0.8em"}},{defaultOptions:tv}=x(),{composed:ty}=x(),tM=[];function tk(){let t,e,i=this.range,s=i.type,r=this.max,o=this.chart.time,n=function(t,e){let i=o.toParts(t),r=i.slice();"year"===s?r[0]+=e:r[1]+=e;let a=o.makeTime.apply(o,r),n=o.toParts(a);return"month"===s&&i[1]===n[1]&&1===Math.abs(e)&&(r[0]=i[0],r[1]=i[1],r[2]=0),(a=o.makeTime.apply(o,r))-t};(0,a.isNumber)(i)?(t=r-i,e=i):i&&(t=r+n(r,-(i.count||1)),this.chart&&this.chart.setFixedRange(r-t));let l=(0,a.pick)(this.dataMin,5e-324);return(0,a.isNumber)(t)||(t=l),t<=l&&(t=l,void 0===e&&(e=n(t,i.count)),this.newMax=Math.min(t+e,(0,a.pick)(this.dataMax,Number.MAX_VALUE))),(0,a.isNumber)(r)?!(0,a.isNumber)(i)&&i&&i._offsetMin&&(t+=i._offsetMin):t=void 0,t}function tE(){this.rangeSelector?.redrawElements()}function tA(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new e(this))}function tw(){let t=this.rangeSelector;if(t){(0,a.isNumber)(t.deferredYTDClick)&&(t.clickButton(t.deferredYTDClick),delete t.deferredYTDClick);let e=t.options.verticalAlign;t.options.floating||("bottom"===e?this.extraBottomMargin=!0:"top"===e&&(this.extraTopMargin=!0))}}function tO(){let t,e=this.rangeSelector;if(!e)return;let i=this.xAxis[0].getExtremes(),s=this.legend,r=e&&e.options.verticalAlign;(0,a.isNumber)(i.min)&&e.render(i.min,i.max),s?.display&&"top"===r&&r===s.options.verticalAlign&&(t=(0,a.merge)(this.spacingBox),"vertical"===s.options.layout?t.y=this.plotTop:t.y+=e.getHeight(),s.group.placed=!1,s.align(t))}function tB(){for(let t=0,e=tM.length;t<e;++t){let e=tM[t];if(e[0]===this){e[1].forEach(t=>t()),tM.splice(t,1);return}}}function tS(){let t=this.rangeSelector;if(t?.options?.enabled){let{min:e,max:i}=this.xAxis[0].getExtremes();(0,a.isNumber)(e)&&t.inputGroup&&t.inputGroup.getBBox().width<20&&t.render(e,i);let s=t.getHeight(),r=t.options.verticalAlign;t.options.floating||("bottom"===r?this.marginBottom+=s:"middle"!==r&&(this.plotTop+=s))}}function tT(t){let i=t.options.rangeSelector,s=this.extraBottomMargin,r=this.extraTopMargin,o=this.rangeSelector;if(i&&i.enabled&&!(0,a.defined)(o)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=o=new e(this)),this.extraBottomMargin=!1,this.extraTopMargin=!1,o){let t=i&&i.verticalAlign||o.options&&o.options.verticalAlign;o.options.floating||("bottom"===t?this.extraBottomMargin=!0:"middle"!==t&&(this.extraTopMargin=!0)),(this.extraBottomMargin!==s||this.extraTopMargin!==r)&&(this.isDirtyBox=!0)}}let tP=function(t,i,s){if(e=s,(0,a.pushUnique)(ty,"RangeSelector")){let e=i.prototype;t.prototype.minFromRange=tk,(0,a.addEvent)(i,"afterGetContainer",tA),(0,a.addEvent)(i,"beforeRender",tw),(0,a.addEvent)(i,"destroy",tB),(0,a.addEvent)(i,"getMargins",tS),(0,a.addEvent)(i,"redraw",tO),(0,a.addEvent)(i,"update",tT),(0,a.addEvent)(i,"beforeRedraw",tE),e.callbacks.push(tO),(0,a.extend)(tv,{rangeSelector:tb}),(0,a.extend)(tv.lang,tf)}},tN=r.default.SVGElement;var tC=o.n(tN);let tD=r.default.Templating;var tI=o.n(tD);let{defaultOptions:tL}=x(),{format:tz}=tI();function tG(t){let e=e=>RegExp(`%[[a-zA-Z]*${e}`).test(t);if((0,a.isString)(t)?-1!==t.indexOf("%L"):t.fractionalSecondDigits)return"text";let i=(0,a.isString)(t)?["a","A","d","e","w","b","B","m","o","y","Y"].some(e):t.dateStyle||t.day||t.month||t.year,s=(0,a.isString)(t)?["H","k","I","l","M","S"].some(e):t.timeStyle||t.hour||t.minute||t.second;return i&&s?"datetime-local":i?"date":s?"time":"text"}class tR{static compose(t,e){tP(t,e,tR)}constructor(t){this.isDirty=!1,this.buttonOptions=[],this.initialButtonGroupWidth=0,this.maxButtonWidth=()=>{let t=0;return this.buttons.forEach(e=>{let i=e.getBBox();i.width>t&&(t=i.width)}),t},this.init(t)}clickButton(t,e){let i=this.chart,s=this.buttonOptions[t],r=i.xAxis[0],o=i.scroller&&i.scroller.getUnionExtremes()||r||{},n=s.type,l=s.dataGrouping,h=o.dataMin,d=o.dataMax,c,p=(0,a.isNumber)(r?.max)?Math.round(Math.min(r.max,d??r.max)):void 0,u,g=s._range,x,m,f,b=!0;if(null!==h&&null!==d){if(this.setSelected(t),l&&(this.forcedDataGrouping=!0,N().prototype.setDataGrouping.call(r||{chart:this.chart},l,!1),this.frozenStates=s.preserveDataGrouping),"month"===n||"year"===n)r?(m={range:s,max:p,chart:i,dataMin:h,dataMax:d},c=r.minFromRange.call(m),(0,a.isNumber)(m.newMax)&&(p=m.newMax),b=!1):g=s;else if(g)(0,a.isNumber)(p)&&(p=Math.min((c=Math.max(p-g,h))+g,d),b=!1);else if("ytd"===n)if(r)!r.hasData()||(0,a.isNumber)(d)&&(0,a.isNumber)(h)||(h=Number.MAX_VALUE,d=-Number.MAX_VALUE,i.series.forEach(t=>{let e=t.getColumn("x");e.length&&(h=Math.min(e[0],h),d=Math.max(e[e.length-1],d))}),e=!1),(0,a.isNumber)(d)&&(0,a.isNumber)(h)&&(c=x=(f=this.getYTDExtremes(d,h)).min,p=f.max);else{this.deferredYTDClick=t;return}else"all"===n&&r&&(i.navigator&&i.navigator.baseSeries[0]&&(i.navigator.baseSeries[0].xAxis.options.range=void 0),c=h,p=d);if(b&&s._offsetMin&&(0,a.defined)(c)&&(c+=s._offsetMin),s._offsetMax&&(0,a.defined)(p)&&(p+=s._offsetMax),this.dropdown&&(this.dropdown.selectedIndex=t+1),r)((0,a.isNumber)(c)||(0,a.isNumber)(p))&&(r.setExtremes(c,p,(0,a.pick)(e,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:s}),i.setFixedRange(s._range));else{u=(0,a.splat)(i.options.xAxis||{})[0];let t=(0,a.addEvent)(i,"afterCreateAxes",function(){let t=i.xAxis[0];t.range=t.options.range=g,t.min=t.options.min=x});(0,a.addEvent)(i,"load",function(){let e=i.xAxis[0];i.setFixedRange(s._range),e.options.range=u.range,e.options.min=u.min,t()})}(0,a.fireEvent)(this,"afterBtnClick")}}setSelected(t){this.selected=this.options.selected=t}init(t){let e=this,i=t.options.rangeSelector,s=t.options.lang,r=i.buttons,o=i.selected,n=function(){let t=e.minInput,i=e.maxInput;t&&t.blur&&(0,a.fireEvent)(t,"blur"),i&&i.blur&&(0,a.fireEvent)(i,"blur")};e.chart=t,e.options=i,e.buttons=[],e.buttonOptions=r.map(t=>(t.type&&s.rangeSelector&&(t.text??(t.text=s.rangeSelector[`${t.type}Text`]),t.title??(t.title=s.rangeSelector[`${t.type}Title`])),t.text=tz(t.text,{count:t.count||1}),t.title=tz(t.title,{count:t.count||1}),t)),this.eventsToUnbind=[],this.eventsToUnbind.push((0,a.addEvent)(t.container,"mousedown",n)),this.eventsToUnbind.push((0,a.addEvent)(t,"resize",n)),r.forEach(e.computeButtonRange),void 0!==o&&r[o]&&this.clickButton(o,!1),this.eventsToUnbind.push((0,a.addEvent)(t,"load",function(){t.xAxis&&t.xAxis[0]&&(0,a.addEvent)(t.xAxis[0],"setExtremes",function(i){(0,a.isNumber)(this.max)&&(0,a.isNumber)(this.min)&&this.max-this.min!==t.fixedRange&&"rangeSelectorButton"!==i.trigger&&"updatedData"!==i.trigger&&e.forcedDataGrouping&&!e.frozenStates&&this.setDataGrouping(!1,!1)})})),this.createElements()}updateButtonStates(){let t=this,e=this.chart,i=this.dropdown,s=this.dropdownLabel,r=e.xAxis[0],o=Math.round(r.max-r.min),n=!r.hasVisibleSeries,l=24*36e5,h=e.scroller&&e.scroller.getUnionExtremes()||r,d=h.dataMin,c=h.dataMax,p=t.getYTDExtremes(c,d),u=p.min,g=p.max,x=t.selected,m=t.options.allButtonsEnabled,f=Array(t.buttonOptions.length).fill(0),b=(0,a.isNumber)(x),v=t.buttons,y=!1,M=null;t.buttonOptions.forEach((e,i)=>{let s=e._range,a=e.type,h=e.count||1,p=e._offsetMax-e._offsetMin,v=i===x,k=s>c-d,E=s<r.minRange,A=!1,w=s===o;if(v&&k&&(y=!0),r.isOrdinal&&r.ordinal?.positions&&s&&o<s){let t=r.ordinal.positions;t[t.length-1]-t[0]>s&&(w=!0)}else("month"===a||"year"===a)&&o+36e5>=({month:28,year:365})[a]*l*h-p&&o-36e5<=({month:31,year:366})[a]*l*h+p?w=!0:"ytd"===a?(w=g-u+p===o,A=!v):"all"===a&&(w=r.max-r.min>=c-d);let O=!m&&!(y&&"all"===a)&&(k||E||n),B=y&&"all"===a||!A&&w||v&&t.frozenStates;O?f[i]=3:B&&(!b||i===x)&&(M=i)}),null!==M?(f[M]=2,t.setSelected(M),this.dropdown&&(this.dropdown.selectedIndex=M+1)):(t.setSelected(),this.dropdown&&(this.dropdown.selectedIndex=-1),s&&(s.setState(0),s.attr({text:(tL.lang.rangeSelectorZoom||"")+" ▾"})));for(let e=0;e<f.length;e++){let r=f[e],o=v[e];if(o.state!==r&&(o.setState(r),i)){i.options[e+1].disabled=3===r,2===r&&(s&&(s.setState(2),s.attr({text:t.buttonOptions[e].text+" ▾"})),i.selectedIndex=e+1);let o=s.getBBox();(0,a.css)(i,{width:`${o.width}px`,height:`${o.height}px`})}}}computeButtonRange(t){let e=t.type,i=t.count||1,s={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5};s[e]?t._range=s[e]*i:("month"===e||"year"===e)&&(t._range=24*({month:30,year:365})[e]*36e5*i),t._offsetMin=(0,a.pick)(t.offsetMin,0),t._offsetMax=(0,a.pick)(t.offsetMax,0),t._range+=t._offsetMax-t._offsetMin}getInputValue(t){let e="min"===t?this.minInput:this.maxInput,i=this.chart.options.rangeSelector,s=this.chart.time;return e?("text"===e.type&&i.inputDateParser||this.defaultInputDateParser)(e.value,"UTC"===s.timezone,s):0}setInputValue(t,e){let i=this.options,s=this.chart.time,r="min"===t?this.minInput:this.maxInput,o="min"===t?this.minDateBox:this.maxDateBox;if(r){r.setAttribute("type",tG(i.inputDateFormat||"%e %b %Y"));let t=r.getAttribute("data-hc-time"),n=(0,a.defined)(t)?Number(t):void 0;if((0,a.defined)(e)){let t=n;(0,a.defined)(t)&&r.setAttribute("data-hc-time-previous",t),r.setAttribute("data-hc-time",e),n=e}r.value=s.dateFormat(this.inputTypeFormats[r.type]||i.inputEditDateFormat,n),o&&o.attr({text:s.dateFormat(i.inputDateFormat,n)})}}setInputExtremes(t,e,i){let s="min"===t?this.minInput:this.maxInput;if(s){let t=this.inputTypeFormats[s.type],r=this.chart.time;if(t){let o=r.dateFormat(t,e);s.min!==o&&(s.min=o);let a=r.dateFormat(t,i);s.max!==a&&(s.max=a)}}}showInput(t){let e="min"===t?this.minDateBox:this.maxDateBox,i="min"===t?this.minInput:this.maxInput;if(i&&e&&this.inputGroup){let t="text"===i.type,{translateX:s=0,translateY:r=0}=this.inputGroup,{x:o=0,width:n=0,height:l=0}=e,{inputBoxWidth:h}=this.options;(0,a.css)(i,{width:t?n+(h?-2:20)+"px":"auto",height:l-2+"px",border:"2px solid silver"}),t&&h?(0,a.css)(i,{left:s+o+"px",top:r+"px"}):(0,a.css)(i,{left:Math.min(Math.round(o+s-(i.offsetWidth-n)/2),this.chart.chartWidth-i.offsetWidth)+"px",top:r-(i.offsetHeight-l)/2+"px"})}}hideInput(t){let e="min"===t?this.minInput:this.maxInput;e&&(0,a.css)(e,{top:"-9999em",border:0,width:"1px",height:"1px"})}defaultInputDateParser(t,e,i){return i?.parse(t)||0}drawInput(t){let{chart:e,div:i,inputGroup:s}=this,r=this,o=e.renderer.style||{},n=e.renderer,l=e.options.rangeSelector,h=tL.lang,d="min"===t;function c(t){let{maxInput:i,minInput:s}=r,o=e.xAxis[0],n=e.scroller?.getUnionExtremes()||o,l=n.dataMin,h=n.dataMax,c=e.xAxis[0].getExtremes()[t],p=r.getInputValue(t);(0,a.isNumber)(p)&&p!==c&&(d&&i&&(0,a.isNumber)(l)?p>Number(i.getAttribute("data-hc-time"))?p=void 0:p<l&&(p=l):s&&(0,a.isNumber)(h)&&(p<Number(s.getAttribute("data-hc-time"))?p=void 0:p>h&&(p=h)),void 0!==p&&o.setExtremes(d?p:o.min,d?o.max:p,void 0,void 0,{trigger:"rangeSelectorInput"}))}let p=h[d?"rangeSelectorFrom":"rangeSelectorTo"]||"",u=n.label(p,0).addClass("highcharts-range-label").attr({padding:2*!!p,height:p?l.inputBoxHeight:0}).add(s),g=n.label("",0).addClass("highcharts-range-input").attr({padding:2,width:l.inputBoxWidth,height:l.inputBoxHeight,"text-align":"center"}).on("click",function(){r.showInput(t),r[t+"Input"].focus()});e.styledMode||g.attr({stroke:l.inputBoxBorderColor,"stroke-width":1}),g.add(s);let m=(0,a.createElement)("input",{name:t,className:"highcharts-range-selector"},void 0,i);m.setAttribute("type",tG(l.inputDateFormat||"%e %b %Y")),e.styledMode||(u.css((0,a.merge)(o,l.labelStyle)),g.css((0,a.merge)({color:"var(--highcharts-neutral-color-80)"},o,l.inputStyle)),(0,a.css)(m,(0,a.extend)({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:o.fontSize,fontFamily:o.fontFamily,top:"-9999em"},l.inputStyle))),m.onfocus=()=>{r.showInput(t)},m.onblur=()=>{m===x().doc.activeElement&&c(t),r.hideInput(t),r.setInputValue(t),m.blur()};let f=!1;return m.onchange=()=>{f||(c(t),r.hideInput(t),m.blur())},m.onkeypress=e=>{13===e.keyCode&&c(t)},m.onkeydown=e=>{f=!0,("ArrowUp"===e.key||"ArrowDown"===e.key||"Tab"===e.key)&&c(t)},m.onkeyup=()=>{f=!1},{dateBox:g,input:m,label:u}}getPosition(){let t=this.chart,e=t.options.rangeSelector,i="top"===e.verticalAlign?t.plotTop-t.axisOffset[0]:0;return{buttonTop:i+e.buttonPosition.y,inputTop:i+e.inputPosition.y-10}}getYTDExtremes(t,e){let i=this.chart.time,s=i.toParts(t)[0];return{max:t,min:Math.max(e,i.makeTime(s,0))}}createElements(){let t=this.chart,e=t.renderer,i=t.container,s=t.options,r=s.rangeSelector,o=r.inputEnabled,n=(0,a.pick)(s.chart.style?.zIndex,0)+1;!1!==r.enabled&&(this.group=e.g("range-selector-group").attr({zIndex:7}).add(),this.div=(0,a.createElement)("div",void 0,{position:"relative",height:0,zIndex:n}),this.buttonOptions.length&&this.renderButtons(),i.parentNode&&i.parentNode.insertBefore(this.div,i),o&&this.createInputs())}createInputs(){this.inputGroup=this.chart.renderer.g("input-group").add(this.group);let t=this.drawInput("min");this.minDateBox=t.dateBox,this.minLabel=t.label,this.minInput=t.input;let e=this.drawInput("max");this.maxDateBox=e.dateBox,this.maxLabel=e.label,this.maxInput=e.input}render(t,e){if(!1===this.options.enabled)return;let i=this.chart,s=i.options.rangeSelector;if(s.inputEnabled){this.inputGroup||this.createInputs(),this.setInputValue("min",t),this.setInputValue("max",e),this.chart.styledMode||(this.maxLabel?.css(s.labelStyle),this.minLabel?.css(s.labelStyle));let r=i.scroller&&i.scroller.getUnionExtremes()||i.xAxis[0]||{};if((0,a.defined)(r.dataMin)&&(0,a.defined)(r.dataMax)){let t=i.xAxis[0].minRange||0;this.setInputExtremes("min",r.dataMin,Math.min(r.dataMax,this.getInputValue("max"))-t),this.setInputExtremes("max",Math.max(r.dataMin,this.getInputValue("min"))+t,r.dataMax)}if(this.inputGroup){let t=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(e=>{if(e){let{width:i}=e.getBBox();i&&(e.attr({x:t}),t+=i+s.inputSpacing)}})}}else this.inputGroup&&(this.inputGroup.destroy(),delete this.inputGroup);!this.chart.styledMode&&this.zoomText&&this.zoomText.css(s.labelStyle),this.alignElements(),this.updateButtonStates()}renderButtons(){var t;let{chart:e,options:i}=this,s=tL.lang,r=e.renderer,o=(0,a.merge)(i.buttonTheme),n=o&&o.states;delete o.width,delete o.states,this.buttonGroup=r.g("range-selector-buttons").add(this.group);let l=this.dropdown=(0,a.createElement)("select",void 0,{position:"absolute",padding:0,border:0,cursor:"pointer",opacity:1e-4},this.div),h=e.userOptions.rangeSelector?.buttonTheme;this.dropdownLabel=r.button("",0,0,()=>{},(0,a.merge)(o,{"stroke-width":(0,a.pick)(o["stroke-width"],0),width:"auto",paddingLeft:(0,a.pick)(i.buttonTheme.paddingLeft,h?.padding,8),paddingRight:(0,a.pick)(i.buttonTheme.paddingRight,h?.padding,8)}),n&&n.hover,n&&n.select,n&&n.disabled).hide().add(this.group),(0,a.addEvent)(l,"touchstart",()=>{l.style.fontSize="16px"});let d=x().isMS?"mouseover":"mouseenter",c=x().isMS?"mouseout":"mouseleave";(0,a.addEvent)(l,d,()=>{(0,a.fireEvent)(this.dropdownLabel.element,d)}),(0,a.addEvent)(l,c,()=>{(0,a.fireEvent)(this.dropdownLabel.element,c)}),(0,a.addEvent)(l,"change",()=>{let t=this.buttons[l.selectedIndex-1];(0,a.fireEvent)(t.element,"click")}),this.zoomText=r.label(s.rangeSelectorZoom||"",0).attr({padding:i.buttonTheme.padding,height:i.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup),this.chart.styledMode||(this.zoomText.css(i.labelStyle),(t=i.buttonTheme)["stroke-width"]??(t["stroke-width"]=0)),(0,a.createElement)("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,l),this.createButtons()}createButtons(){let{options:t}=this,e=(0,a.merge)(t.buttonTheme),i=e&&e.states,s=e.width||28;delete e.width,delete e.states,this.buttonOptions.forEach((t,e)=>{this.createButton(t,e,s,i)})}createButton(t,e,i,s){let{dropdown:r,buttons:o,chart:n,options:l}=this,h=n.renderer,d=(0,a.merge)(l.buttonTheme);r?.add((0,a.createElement)("option",{textContent:t.title||t.text}),e+2),o[e]=h.button(t.text??"",0,0,i=>{let s,r=t.events&&t.events.click;r&&(s=r.call(t,i)),!1!==s&&this.clickButton(e),this.isActive=!0},d,s&&s.hover,s&&s.select,s&&s.disabled).attr({"text-align":"center",width:i}).add(this.buttonGroup),t.title&&o[e].attr("title",t.title)}alignElements(){let{buttonGroup:t,buttons:e,chart:i,group:s,inputGroup:r,options:o,zoomText:n}=this,l=i.options,h=l.exporting&&!1!==l.exporting.enabled&&l.navigation&&l.navigation.buttonOptions,{buttonPosition:d,inputPosition:c,verticalAlign:p}=o,u=(t,e,s)=>h&&this.titleCollision(i)&&"top"===p&&s&&e.y-t.getBBox().height-12<(h.y||0)+(h.height||0)+i.spacing[0]?-40:0,g=i.plotLeft;if(s&&d&&c){let l=d.x-i.spacing[3];if(t){if(this.positionButtons(),!this.initialButtonGroupWidth){let t=0;n&&(t+=n.getBBox().width+5),e.forEach((i,s)=>{t+=i.width||0,s!==e.length-1&&(t+=o.buttonSpacing)}),this.initialButtonGroupWidth=t}g-=i.spacing[3];let r=u(t,d,"right"===d.align||"right"===c.align);this.alignButtonGroup(r),this.buttonGroup?.translateY&&this.dropdownLabel.attr({y:this.buttonGroup.translateY}),s.placed=t.placed=i.hasLoaded}let h=0;o.inputEnabled&&r&&(h=u(r,c,"right"===d.align||"right"===c.align),"left"===c.align?l=g:"right"===c.align&&(l=-Math.max(i.axisOffset[1],-h)),r.align({y:c.y,width:r.getBBox().width,align:c.align,x:c.x+l-2},!0,i.spacingBox),r.placed=i.hasLoaded),this.handleCollision(h),s.align({verticalAlign:p},!0,i.spacingBox);let x=s.alignAttr.translateY,m=s.getBBox().height+20,f=0;if("bottom"===p){let t=i.legend&&i.legend.options;f=x-(m=m+(t&&"bottom"===t.verticalAlign&&t.enabled&&!t.floating?i.legend.legendHeight+(0,a.pick)(t.margin,10):0)-20)-(o.floating?0:o.y)-(i.titleOffset?i.titleOffset[2]:0)-10}"top"===p?(o.floating&&(f=0),i.titleOffset&&i.titleOffset[0]&&(f=i.titleOffset[0]),f+=i.margin[0]-i.spacing[0]||0):"middle"===p&&(c.y===d.y?f=x:(c.y||d.y)&&(c.y<0||d.y<0?f-=Math.min(c.y,d.y):f=x-m)),s.translate(o.x,o.y+Math.floor(f));let{minInput:b,maxInput:v,dropdown:y}=this;o.inputEnabled&&b&&v&&(b.style.marginTop=s.translateY+"px",v.style.marginTop=s.translateY+"px"),y&&(y.style.marginTop=s.translateY+"px")}}redrawElements(){let t=this.chart,{inputBoxHeight:e,inputBoxBorderColor:i}=this.options;if(this.maxDateBox?.attr({height:e}),this.minDateBox?.attr({height:e}),t.styledMode||(this.maxDateBox?.attr({stroke:i}),this.minDateBox?.attr({stroke:i})),this.isDirty){this.isDirty=!1,this.isCollapsed=void 0;let t=this.options.buttons??[],e=Math.min(t.length,this.buttonOptions.length),{dropdown:i,options:s}=this,r=(0,a.merge)(s.buttonTheme),o=r&&r.states,n=r.width||28;if(t.length<this.buttonOptions.length)for(let e=this.buttonOptions.length-1;e>=t.length;e--){let t=this.buttons.pop();t?.destroy(),this.dropdown?.options.remove(e+1)}for(let s=e-1;s>=0;s--){let e=t[s];this.buttons[s].destroy(),i?.options.remove(s+1),this.createButton(e,s,n,o),this.computeButtonRange(e)}if(t.length>this.buttonOptions.length)for(let e=this.buttonOptions.length;e<t.length;e++)this.createButton(t[e],e,n,o),this.computeButtonRange(t[e]);this.buttonOptions=this.options.buttons??[],(0,a.defined)(this.options.selected)&&this.buttons.length&&this.clickButton(this.options.selected,!1)}}alignButtonGroup(t,e){let{chart:i,options:s,buttonGroup:r,dropdown:o,dropdownLabel:n}=this,{buttonPosition:l}=s,h=i.plotLeft-i.spacing[3],d=l.x-i.spacing[3],c=i.plotLeft;"right"===l.align?(d+=t-h,this.hasVisibleDropdown&&(c=i.chartWidth+t-this.maxButtonWidth()-20)):"center"===l.align&&(d-=h/2,this.hasVisibleDropdown&&(c=i.chartWidth/2-this.maxButtonWidth())),o&&(0,a.css)(o,{left:c+"px",top:r?.translateY+"px"}),n?.attr({x:c}),r&&r.align({y:l.y,width:(0,a.pick)(e,this.initialButtonGroupWidth),align:l.align,x:d},!0,i.spacingBox)}positionButtons(){let{buttons:t,chart:e,options:i,zoomText:s}=this,r=e.hasLoaded?"animate":"attr",{buttonPosition:o}=i,n=e.plotLeft,l=n;s&&"hidden"!==s.visibility&&(s[r]({x:(0,a.pick)(n+o.x,n)}),l+=o.x+s.getBBox().width+5);for(let e=0,s=this.buttonOptions.length;e<s;++e)"hidden"!==t[e].visibility?(t[e][r]({x:l}),l+=(t[e].width||0)+i.buttonSpacing):t[e][r]({x:n})}handleCollision(t){let{chart:e,buttonGroup:i,inputGroup:s,initialButtonGroupWidth:r}=this,{buttonPosition:o,dropdown:a,inputPosition:n}=this.options,l=()=>{s&&i&&s.attr({translateX:s.alignAttr.translateX+(e.axisOffset[1]>=-t?0:-t),translateY:s.alignAttr.translateY+i.getBBox().height+10})};s&&i?n.align===o.align?(l(),r>e.plotWidth+t-20?this.collapseButtons():this.expandButtons()):r-t+s.getBBox().width>e.plotWidth?"responsive"===a||"always"===a?this.collapseButtons():l():this.expandButtons():i&&"responsive"===a&&(r>e.plotWidth?this.collapseButtons():this.expandButtons()),i&&("always"===a&&this.collapseButtons(),"never"===a&&this.expandButtons()),this.alignButtonGroup(t)}collapseButtons(){let{buttons:t,zoomText:e}=this;!0!==this.isCollapsed&&(this.isCollapsed=!0,e.hide(),t.forEach(t=>void t.hide()),this.showDropdown())}expandButtons(){let{buttons:t,zoomText:e}=this;!1!==this.isCollapsed&&(this.isCollapsed=!1,this.hideDropdown(),e.show(),t.forEach(t=>void t.show()),this.positionButtons())}showDropdown(){let{buttonGroup:t,dropdownLabel:e,dropdown:i}=this;t&&i&&(e.show(),(0,a.css)(i,{visibility:"inherit"}),this.hasVisibleDropdown=!0)}hideDropdown(){let{dropdown:t}=this;t&&(this.dropdownLabel.hide(),(0,a.css)(t,{visibility:"hidden"}),this.hasVisibleDropdown=!1)}getHeight(){let t=this.options,e=this.group,i=t.inputPosition,s=t.buttonPosition,r=t.y,o=s.y,a=i.y,n=0;if(t.height)return t.height;this.alignElements(),n=e?e.getBBox(!0).height+13+r:0;let l=Math.min(a,o);return(a<0&&o<0||a>0&&o>0)&&(n+=Math.abs(l)),n}titleCollision(t){return!(t.options.title.text||t.options.subtitle.text)}update(t,e=!0){let i=this.chart;if((0,a.merge)(!0,this.options,t),this.options.selected&&this.options.selected>=this.options.buttons.length&&(this.options.selected=void 0,i.options.rangeSelector.selected=void 0),(0,a.defined)(t.enabled))return this.destroy(),this.init(i);this.isDirty=!!t.buttons||!!t.buttonTheme,e&&this.render()}destroy(){let t=this,e=t.minInput,i=t.maxInput;t.eventsToUnbind&&(t.eventsToUnbind.forEach(t=>t()),t.eventsToUnbind=void 0),(0,a.destroyObjectProperties)(t.buttons),e&&(e.onfocus=e.onblur=e.onchange=null),i&&(i.onfocus=i.onblur=i.onchange=null),(0,a.objectEach)(t,function(e,i){e&&"chart"!==i&&(e instanceof tC()?e.destroy():e instanceof window.HTMLElement&&(0,a.discardElement)(e),delete t[i]),e!==tR.prototype[i]&&(t[i]=null)},this),this.buttons=[]}}(0,a.extend)(tR.prototype,{inputTypeFormats:{"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",time:"%H:%M:%S"}});let{xrange:{prototype:{pointClass:tW}}}=_().seriesTypes;class tF extends tW{static setGanttPointAliases(t,e){t.x=t.start=e.time.parse(t.start??t.x),t.x2=t.end=e.time.parse(t.end??t.x2),t.partialFill=t.completed=t.completed??t.partialFill}applyOptions(t,e){let i=super.applyOptions(t,e);return tF.setGanttPointAliases(i,i.series.chart),this.isNull=!this.isValid?.(),this.formatPrefix=this.isNull?"null":"point",i}isValid(){return("number"==typeof this.start||"number"==typeof this.x)&&("number"==typeof this.end||"number"==typeof this.x2||this.milestone)}}function tH(t,e){let i=[];for(let s=0;s<t.length;s++){let r=t[s][1],o=t[s][2];if("number"==typeof r&&"number"==typeof o)if(0===s)i.push(["M",r,o]);else if(s===t.length-1)i.push(["L",r,o]);else if(e){let a=t[s-1],n=t[s+1];if(a&&n){let t=a[1],s=a[2],l=n[1],h=n[2];if("number"==typeof t&&"number"==typeof l&&"number"==typeof s&&"number"==typeof h&&t!==l&&s!==h){let a=t<l?1:-1,n=s<h?1:-1;i.push(["L",r-a*Math.min(Math.abs(r-t),e),o-n*Math.min(Math.abs(o-s),e)],["C",r,o,r,o,r+a*Math.min(Math.abs(r-l),e),o+n*Math.min(Math.abs(o-h),e)])}}}else i.push(["L",r,o])}return i}let{min:tU,max:tj,abs:tY}=Math;function tV(t,e,i){let s=e-1e-7,r=i||0,o=t.length-1,a,n;for(;r<=o;)if((n=s-t[a=o+r>>1].xMin)>0)r=a+1;else{if(!(n<0))return a;o=a-1}return r>0?r-1:0}function tX(t,e){let i=tV(t,e.x+1)+1;for(;i--;){var s;if(t[i].xMax>=e.x&&(s=t[i],e.x<=s.xMax&&e.x>=s.xMin&&e.y<=s.yMax&&e.y>=s.yMin))return i}return -1}function t_(t){let e=[];if(t.length){e.push(["M",t[0].start.x,t[0].start.y]);for(let i=0;i<t.length;++i)e.push(["L",t[i].end.x,t[i].end.y])}return e}function tq(t,e){t.yMin=tj(t.yMin,e.yMin),t.yMax=tU(t.yMax,e.yMax),t.xMin=tj(t.xMin,e.xMin),t.xMax=tU(t.xMax,e.xMax)}let tZ=function(t,e,i){let s=[],r=i.chartObstacles,o=tX(r,t),n=tX(r,e),l,h=(0,a.pick)(i.startDirectionX,tY(e.x-t.x)>tY(e.y-t.y))?"x":"y",d,c,p,u;function g(t,e,i,s,r){let o={x:t.x,y:t.y};return o[e]=i[s||e]+(r||0),o}function x(t,e,i){let s=tY(e[i]-t[i+"Min"])>tY(e[i]-t[i+"Max"]);return g(e,i,t,i+(s?"Max":"Min"),s?1:-1)}n>-1?(l={start:c=x(r[n],e,h),end:e},u=c):u=e,o>-1&&(c=x(d=r[o],t,h),s.push({start:t,end:c}),c[h]>=t[h]==c[h]>=u[h]&&(p=t[h="y"===h?"x":"y"]<e[h],s.push({start:c,end:g(c,h,d,h+(p?"Max":"Min"),p?1:-1)}),h="y"===h?"x":"y"));let m=s.length?s[s.length-1].end:t;c=g(m,h,u),s.push({start:m,end:c});let f=g(c,h="y"===h?"x":"y",u);return s.push({start:c,end:f}),l&&s.push(l),{path:tH(t_(s),i.radius),obstacles:s}};function t$(t,e,i){let s=(0,a.pick)(i.startDirectionX,tY(e.x-t.x)>tY(e.y-t.y)),r=s?"x":"y",o=[],n=i.obstacleMetrics,l=tU(t.x,e.x)-n.maxWidth-10,h=tj(t.x,e.x)+n.maxWidth+10,d=tU(t.y,e.y)-n.maxHeight-10,c=tj(t.y,e.y)+n.maxHeight+10,p,u,g,x=!1,m=i.chartObstacles,f=tV(m,h),b=tV(m,l);function v(t,e,i){let s,r,o,a,n=t.x<e.x?1:-1;t.x<e.x?(s=t,r=e):(s=e,r=t),t.y<e.y?(a=t,o=e):(a=e,o=t);let l=n<0?tU(tV(m,r.x),m.length-1):0;for(;m[l]&&(n>0&&m[l].xMin<=r.x||n<0&&m[l].xMax>=s.x);){if(m[l].xMin<=r.x&&m[l].xMax>=s.x&&m[l].yMin<=o.y&&m[l].yMax>=a.y){if(i)return{y:t.y,x:t.x<e.x?m[l].xMin-1:m[l].xMax+1,obstacle:m[l]};return{x:t.x,y:t.y<e.y?m[l].yMin-1:m[l].yMax+1,obstacle:m[l]}}l+=n}return e}function y(t,e,i,s,r){let o=r.soft,a=r.hard,n=s?"x":"y",l={x:e.x,y:e.y},h={x:e.x,y:e.y},d=t[n+"Max"]>=o[n+"Max"],c=t[n+"Min"]<=o[n+"Min"],p=t[n+"Max"]>=a[n+"Max"],u=t[n+"Min"]<=a[n+"Min"],g=tY(t[n+"Min"]-e[n]),x=tY(t[n+"Max"]-e[n]),m=10>tY(g-x)?e[n]<i[n]:x<g;h[n]=t[n+"Min"],l[n]=t[n+"Max"];let f=v(e,h,s)[n]!==h[n],b=v(e,l,s)[n]!==l[n];return m=f?!b||m:!b&&m,m=c?!d||m:!d&&m,m=u?!p||m:!p&&m}if((f=tX(m=m.slice(b,f+1),e))>-1){var M,k;let s,r;M=m[f],k=e,s=tU(M.xMax-k.x,k.x-M.xMin)<tU(M.yMax-k.y,k.y-M.yMin),r=y(M,k,t,s,{soft:i.hardBounds,hard:i.hardBounds}),g=s?{y:k.y,x:M[r?"xMax":"xMin"]+(r?1:-1)}:{x:k.x,y:M[r?"yMax":"yMin"]+(r?1:-1)},o.push({end:e,start:g}),e=g}for(;(f=tX(m,e))>-1;)u=e[r]-t[r]<0,(g={x:e.x,y:e.y})[r]=m[f][u?r+"Max":r+"Min"]+(u?1:-1),o.push({end:e,start:g}),e=g;return{path:t_(p=(p=function t(e,s,r){let o,a,n,p,u,g,f;if(e.x===s.x&&e.y===s.y)return[];let b=r?"x":"y",M=i.obstacleOptions.margin,k={soft:{xMin:l,xMax:h,yMin:d,yMax:c},hard:i.hardBounds};return(u=tX(m,e))>-1?(p=y(u=m[u],e,s,r,k),tq(u,i.hardBounds),f=r?{y:e.y,x:u[p?"xMax":"xMin"]+(p?1:-1)}:{x:e.x,y:u[p?"yMax":"yMin"]+(p?1:-1)},(g=tX(m,f))>-1&&(tq(g=m[g],i.hardBounds),f[b]=p?tj(u[b+"Max"]-M+1,(g[b+"Min"]+u[b+"Max"])/2):tU(u[b+"Min"]+M-1,(g[b+"Max"]+u[b+"Min"])/2),e.x===f.x&&e.y===f.y?(x&&(f[b]=p?tj(u[b+"Max"],g[b+"Max"])+1:tU(u[b+"Min"],g[b+"Min"])-1),x=!x):x=!1),a=[{start:e,end:f}]):(o=v(e,{x:r?s.x:e.x,y:r?e.y:s.y},r),a=[{start:e,end:{x:o.x,y:o.y}}],o[r?"x":"y"]!==s[r?"x":"y"]&&(p=y(o.obstacle,o,s,!r,k),tq(o.obstacle,i.hardBounds),n={x:r?o.x:o.obstacle[p?"xMax":"xMin"]+(p?1:-1),y:r?o.obstacle[p?"yMax":"yMin"]+(p?1:-1):o.y},r=!r,a=a.concat(t({x:o.x,y:o.y},n,r)))),a=a.concat(t(a[a.length-1].end,s,!r))}(t,e,s)).concat(o.reverse())),obstacles:p}}tZ.requiresObstacles=!0,t$.requiresObstacles=!0;let tK={connectors:{type:"straight",radius:0,lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}},{setOptions:tJ}=x();function tQ(t){let e=t.shapeArgs;if(e)return{xMin:e.x||0,xMax:(e.x||0)+(e.width||0),yMin:e.y||0,yMax:(e.y||0)+(e.height||0)};let i=t.graphic&&t.graphic.getBBox();return i?{xMin:t.plotX-i.width/2,xMax:t.plotX+i.width/2,yMin:t.plotY-i.height/2,yMax:t.plotY+i.height/2}:null}!function(t){function e(t){let e,i,s=tQ(this);switch(t.align){case"right":e="xMax";break;case"left":e="xMin"}switch(t.verticalAlign){case"top":i="yMin";break;case"bottom":i="yMax"}return e=e?s[e]:(s.xMin+s.xMax)/2,i=i?s[i]:(s.yMin+s.yMax)/2,{x:e+(t.xOffset||0),y:i+(t.yOffset||0)}}function i(t,e){let i;return!(0,a.defined)(e)&&(i=tQ(this))&&(e={x:(i.xMin+i.xMax)/2,y:(i.yMin+i.yMax)/2}),Math.atan2(e.y-t.y,t.x-e.x)}function s(t,e,i){let s=2*Math.PI,r=tQ(this),o=r.xMax-r.xMin,a=r.yMax-r.yMin,n=Math.atan2(a,o),l=o/2,h=a/2,d=r.xMin+l,c=r.yMin+h,p={x:d,y:c},u=t,g=1,x=!1,m=1,f=1;for(;u<-Math.PI;)u+=s;for(;u>Math.PI;)u-=s;return g=Math.tan(u),u>-n&&u<=n?(f=-1,x=!0):u>n&&u<=Math.PI-n?f=-1:u>Math.PI-n||u<=-(Math.PI-n)?(m=-1,x=!0):m=-1,x?(p.x+=m*l,p.y+=f*l*g):(p.x+=a/(2*g)*m,p.y+=f*h),i.x!==d&&(p.x=i.x),i.y!==c&&(p.y=i.y),{x:p.x+e*Math.cos(u),y:p.y-e*Math.sin(u)}}t.compose=function(t,r,o){let n=o.prototype;n.getPathfinderAnchorPoint||(t.prototype.callbacks.push(function(t){!1!==t.options.connectors.enabled&&((t.options.pathfinder||t.series.reduce(function(t,e){return e.options&&(0,a.merge)(!0,e.options.connectors=e.options.connectors||{},e.options.pathfinder),t||e.options&&e.options.pathfinder},!1))&&((0,a.merge)(!0,t.options.connectors=t.options.connectors||{},t.options.pathfinder),(0,a.error)('WARNING: Pathfinder options have been renamed. Use "chart.connectors" or "series.connectors" instead.')),this.pathfinder=new r(this),this.pathfinder.update(!0))}),n.getMarkerVector=s,n.getPathfinderAnchorPoint=e,n.getRadiansToVector=i,tJ(tK))}}(p||(p={}));let t0=p,t1=r.default.Point;var t2=o.n(t1);let t5=Math.max,t3=Math.min;class t6{static compose(t,e){t0.compose(t,t6,e)}constructor(t){this.init(t)}init(t){this.chart=t,this.connections=[],(0,a.addEvent)(t,"redraw",function(){this.pathfinder.update()})}update(t){let e=this.chart,i=this,s=i.connections;i.connections=[],e.series.forEach(function(t){t.visible&&!t.options.isInternal&&t.points.forEach(function(t){let s,r=t.options;r&&r.dependency&&(r.connect=r.dependency);let o=t.options?.connect?(0,a.splat)(t.options.connect):[];t.visible&&!1!==t.isInside&&o.forEach(r=>{let o="string"==typeof r?r:r.to;o&&(s=e.get(o)),s instanceof t2()&&s.series.visible&&s.visible&&!1!==s.isInside&&i.connections.push(new k(t,s,"string"==typeof r?{}:r))})})});for(let t=0,e,r,o=s.length,a=i.connections.length;t<o;++t){r=!1;let o=s[t];for(e=0;e<a;++e){let t=i.connections[e];if((o.options&&o.options.type)===(t.options&&t.options.type)&&o.fromPoint===t.fromPoint&&o.toPoint===t.toPoint){t.graphics=o.graphics,r=!0;break}}r||o.destroy()}delete this.chartObstacles,delete this.lineObstacles,i.renderConnections(t)}renderConnections(t){t?this.chart.series.forEach(function(t){let e=function(){let e=t.chart.pathfinder;(e&&e.connections||[]).forEach(function(e){e.fromPoint&&e.fromPoint.series===t&&e.render()}),t.pathfinderRemoveRenderEvent&&(t.pathfinderRemoveRenderEvent(),delete t.pathfinderRemoveRenderEvent)};!1===t.options.animation?e():t.pathfinderRemoveRenderEvent=(0,a.addEvent)(t,"afterAnimate",e)}):this.connections.forEach(function(t){t.render()})}getChartObstacles(t){let e=this.chart.series,i=(0,a.pick)(t.algorithmMargin,0),s=[],r;for(let t=0,r=e.length;t<r;++t)if(e[t].visible&&!e[t].options.isInternal)for(let r=0,o=e[t].points.length,a,n;r<o;++r)(n=e[t].points[r]).visible&&(a=function(t){let e=t.shapeArgs;if(e)return{xMin:e.x||0,xMax:(e.x||0)+(e.width||0),yMin:e.y||0,yMax:(e.y||0)+(e.height||0)};let i=t.graphic&&t.graphic.getBBox();return i?{xMin:t.plotX-i.width/2,xMax:t.plotX+i.width/2,yMin:t.plotY-i.height/2,yMax:t.plotY+i.height/2}:null}(n))&&s.push({xMin:a.xMin-i,xMax:a.xMax+i,yMin:a.yMin-i,yMax:a.yMax+i});return s=s.sort(function(t,e){return t.xMin-e.xMin}),(0,a.defined)(t.algorithmMargin)||(r=t.algorithmMargin=function(t){let e,i=t.length,s=[];for(let r=0;r<i;++r)for(let o=r+1;o<i;++o)(e=function t(e,i,s){let r=(0,a.pick)(s,10),o=e.yMax+r>i.yMin-r&&e.yMin-r<i.yMax+r,n=e.xMax+r>i.xMin-r&&e.xMin-r<i.xMax+r,l=o?e.xMin>i.xMax?e.xMin-i.xMax:i.xMin-e.xMax:1/0,h=n?e.yMin>i.yMax?e.yMin-i.yMax:i.yMin-e.yMax:1/0;return n&&o?r?t(e,i,Math.floor(r/2)):1/0:t3(l,h)}(t[r],t[o]))<80&&s.push(e);return s.push(80),t5(Math.floor(s.sort(function(t,e){return t-e})[Math.floor(s.length/10)]/2-1),1)}(s),s.forEach(function(t){t.xMin-=r,t.xMax+=r,t.yMin-=r,t.yMax+=r})),s}getObstacleMetrics(t){let e=0,i=0,s,r,o=t.length;for(;o--;)s=t[o].xMax-t[o].xMin,r=t[o].yMax-t[o].yMin,e<s&&(e=s),i<r&&(i=r);return{maxHeight:i,maxWidth:e}}getAlgorithmStartDirection(t){let e="left"!==t.align&&"right"!==t.align,i="top"!==t.verticalAlign&&"bottom"!==t.verticalAlign;return e?!!i&&void 0:!!i||void 0}}t6.prototype.algorithms={fastAvoid:t$,straight:function(t,e){return{path:[["M",t.x,t.y],["L",e.x,e.y]],obstacles:[{start:t,end:e}]}},simpleConnect:tZ};let{composed:t8}=x();function t4(){let t=this.chart.userOptions.chart;!this.horiz&&(0,a.isNumber)(this.options.staticScale)&&(!t?.height||t.scrollablePlotArea?.minHeight)&&(this.staticScale=this.options.staticScale)}function t7(){if("adjustHeight"!==this.redrawTrigger){for(let t of this.axes||[]){let e=t.chart,i=t.options.staticScale;if(t.staticScale&&i&&(0,a.defined)(t.min)&&(0,a.defined)(t.max)){let s=(t.brokenAxis?.unitLength??t.max+t.tickInterval-t.min)*i,r=(s=Math.max(s,i))-e.plotHeight;!e.scrollablePixelsY&&Math.abs(r)>=1&&(e.plotHeight=s,e.redrawTrigger="adjustHeight",e.setSize(void 0,e.chartHeight+r,!!e.initiatedScale&&void 0)),t.series.forEach(function(t){let i=t.sharedClipKey&&e.sharedClips[t.sharedClipKey];i&&i.attr(e.inverted?{width:e.plotHeight}:{height:e.plotHeight})})}}this.initiatedScale=!0}this.redrawTrigger=void 0}let t9=r.default.StackItem;var et=o.n(t9);!function(t){function e(){void 0!==this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function i(){Object.keys(this.options.breaks?.[0]||{}).length&&(this.options.ordinal=!1)}function s(){let t=this.brokenAxis;if(t?.hasBreaks){let e=this.tickPositions,i=this.tickPositions.info,s=[];for(let i=0;i<e.length;i++)t.isInAnyBreak(e[i])||s.push(e[i]);this.tickPositions=s,this.tickPositions.info=i}}function r(){this.brokenAxis||(this.brokenAxis=new d(this))}function o(){let{isDirty:t,options:{connectNulls:e},points:i,xAxis:s,yAxis:r}=this;if(t){let t=i.length;for(;t--;){let o=i[t],a=(null!==o.y||!1!==e)&&(s?.brokenAxis?.isInAnyBreak(o.x,!0)||r?.brokenAxis?.isInAnyBreak(o.y,!0));o.visible=!a&&!1!==o.options.visible}}}function n(){this.drawBreaks(this.xAxis,["x"]),this.drawBreaks(this.yAxis,(0,a.pick)(this.pointArrayMap,["y"]))}function l(t,e){let i,s,r,o=this,n=o.points;if(t?.brokenAxis?.hasBreaks){let l=t.brokenAxis;e.forEach(function(e){i=l?.breakArray||[],s=t.isXAxis?t.min:(0,a.pick)(o.options.threshold,t.min),n.forEach(function(o){r=o["stack"+e.toUpperCase()]??o[e],i.forEach(function(e){if((0,a.isNumber)(s)&&(0,a.isNumber)(r)){let i="";s<e.from&&r>e.to||s>e.from&&r<e.from?i="pointBreak":(s<e.from&&r>e.from&&r<e.to||s>e.from&&r>e.to&&r<e.from)&&(i="pointInBreak"),i&&(0,a.fireEvent)(t,i,{point:o,brk:e})}})})})}}function h(){let t=this.currentDataGrouping,e=t?.gapSize,i=this.points.slice(),s=this.yAxis,r=this.options.gapSize,o=i.length-1;if(r&&o>0){let t,a;for("value"!==this.options.gapUnit&&(r*=this.basePointRange),e&&e>r&&e>=this.basePointRange&&(r=e);o--;)if(a&&!1!==a.visible||(a=i[o+1]),t=i[o],!1!==a.visible&&!1!==t.visible){if(a.x-t.x>r){let e=(t.x+a.x)/2;i.splice(o+1,0,{isNull:!0,x:e}),s.stacking&&this.options.stacking&&((s.stacking.stacks[this.stackKey][e]=new(et())(s,s.options.stackLabels,!1,e,this.stack??"")).total=0)}a=t}}return this.getGraphPath(i)}t.compose=function(t,d){if(!t.keepProps.includes("brokenAxis")){t.keepProps.push("brokenAxis"),(0,a.addEvent)(t,"init",r),(0,a.addEvent)(t,"afterInit",e),(0,a.addEvent)(t,"afterSetTickPositions",s),(0,a.addEvent)(t,"afterSetOptions",i);let c=d.prototype;c.drawBreaks=l,c.gappedPath=h,(0,a.addEvent)(d,"afterGeneratePoints",o),(0,a.addEvent)(d,"afterRender",n)}return t};class d{static isInBreak(t,e){let i=t.repeat||1/0,s=t.from,r=t.to-t.from,o=e>=s?(e-s)%i:i-(s-e)%i;return t.inclusive?o<=r:o<r&&0!==o}static lin2Val(t){let e=this.min||0,i=this.brokenAxis,s=i?.breakArray;if(!s?.length||!(0,a.isNumber)(t))return t;let r=t;if(t>e)for(let t of s)if(t.from>r)break;else t.to<=r&&t.to>e?r+=t.len:d.isInBreak(t,r)&&(r+=t.len);else if(t<e)for(let t of s)if(t.from>e)break;else t.from>=r&&t.from<e?r-=t.len:d.isInBreak(t,r)&&(r-=t.len);return r}static val2Lin(t){let e=this.min||0,i=this.brokenAxis,s=i?.breakArray;if(!s?.length||!(0,a.isNumber)(t))return t;let r=t;if(t>e){for(let i of s)if(i.to<=t&&i.to>e)r-=i.len;else if(i.from>t)break;else if(d.isInBreak(i,t)){r-=t-i.from;break}}else if(t<e){for(let i of s)if(i.from>=t&&i.from<e)r+=i.len;else if(i.from>e)break;else if(d.isInBreak(i,t)){r+=i.to-t;break}}return r}constructor(t){this.axis=t}findBreakAt(t,e){return(0,a.find)(e,function(e){return e.from<t&&t<e.to})}isInAnyBreak(t,e){let i=this.axis,s=i.options.breaks||[],r=s.length,o,n,l;if(r&&(0,a.isNumber)(t)){for(;r--;)d.isInBreak(s[r],t)&&(o=!0,n||(n=(0,a.pick)(s[r].showPoints,!i.isXAxis)));l=o&&e?o&&!n:o}return l}setBreaks(t,e){let i=this,s=i.axis,r=s.chart.time,o=(0,a.isArray)(t)&&!!Object.keys(t?.[0]||{}).length;s.isDirty=(i.hasBreaks??!1)!==o,i.hasBreaks=o,t?.forEach(t=>{t.from=r.parse(t.from)||0,t.to=r.parse(t.to)||0}),t!==s.options.breaks&&(s.options.breaks=s.userOptions.breaks=t),s.forceRedraw=!0,s.series.forEach(function(t){t.isDirty=!0}),o||s.val2lin!==d.val2Lin||(delete s.val2lin,delete s.lin2val),o&&(s.userOptions.ordinal=!1,s.lin2val=d.lin2Val,s.val2lin=d.val2Lin,s.setExtremes=function(t,e,r,o,a){if(i.hasBreaks&&!s.treeGrid?.tree){let s,r=this.brokenAxis.breakArray||[];for(;s=i.findBreakAt(t,r);)t=s.to;for(;s=i.findBreakAt(e,r);)e=s.from;e<t&&(e=t)}s.constructor.prototype.setExtremes.call(this,t,e,r,o,a)},s.setAxisTranslation=function(){if(s.constructor.prototype.setAxisTranslation.call(this),i.unitLength=void 0,i.hasBreaks){let t=s.options.breaks||[],e=[],r=[],o=s.pointRangePadding??0,n=0,l,h,c=s.userMin??s.min,p=s.userMax??s.max,u,g,x=(0,a.isNumber)(c)?Math.min(s.dataMin??c,c):s.dataMin??c,m=(0,a.isNumber)(p)?Math.max(s.dataMax??p,p):s.dataMax??p;s.treeGrid?.tree||t.forEach(function(t){h=t.repeat||1/0,(0,a.isNumber)(c)&&(0,a.isNumber)(p)&&(d.isInBreak(t,c)&&(c+=t.to%h-c%h),d.isInBreak(t,p)&&(p-=p%h-t.from%h))}),(0,a.isNumber)(x)&&(0,a.isNumber)(m)&&t.forEach(function(t){for(u=t.from,h=t.repeat||1/0;u-h>x;)u-=h;for(;u<x;)u+=h;for(g=u;g<m;g+=h)e.push({value:g,move:"in"}),e.push({value:g+t.to-t.from,move:"out",size:t.breakSize})}),e.sort(function(t,e){return t.value===e.value?("in"!==t.move)-("in"!==e.move):t.value-e.value}),l=0,u=x,e.forEach(t=>{1===(l+="in"===t.move?1:-1)&&"in"===t.move&&(u=t.value),0===l&&(0,a.isNumber)(u)&&(r.push({from:u,to:t.value,len:t.value-u-(t.size||0)}),(0,a.isNumber)(c)&&(0,a.isNumber)(p)&&u<p&&t.value>c&&(n+=t.value-u-(t.size||0)))}),i.breakArray=r,(0,a.isNumber)(c)&&(0,a.isNumber)(p)&&(0,a.isNumber)(s.min)&&(i.unitLength=p-c-n+o,(0,a.fireEvent)(s,"afterBreaks"),s.staticScale?s.transA=s.staticScale:i.unitLength&&(s.transA*=(p-s.min+o)/i.unitLength),o&&(s.minPixelPadding=s.transA*(s.minPointOffset||0)),s.min=c,s.max=p)}}),(0,a.pick)(e,!0)&&s.chart.redraw()}}t.Additions=d}(u||(u={}));let ee=u,{dateFormats:ei}=x();function es(t){return(0,a.isObject)(t,!0)}function er(t,e){let i={width:0,height:0};if(e.forEach(function(e){let s=t[e],r=0,o=0,n;es(s)&&(r=(n=es(s.label)?s.label:{}).getBBox?n.getBBox().height:0,n.textStr&&!(0,a.isNumber)(n.textPxLength)&&(n.textPxLength=n.getBBox().width),o=(0,a.isNumber)(n.textPxLength)?Math.round(n.textPxLength):0,n.textStr&&(o=Math.round(n.getBBox().width)),i.height=Math.max(r,i.height),i.width=Math.max(o,i.width))}),"treegrid"===this.type&&this.treeGrid&&this.treeGrid.mapOfPosToGridNode){let t=this.treeGrid.mapOfPosToGridNode[-1].height||0;i.width+=this.options.labels.indentation*(t-1)}return i}function eo(t){let{grid:e}=this,i=3===this.side;if(i||t.apply(this),!e?.isColumn){let t=e?.columns||[];i&&(t=t.slice().reverse()),t.forEach(t=>{t.getOffset()})}i&&t.apply(this)}function ea(t){if(!0===(this.options.grid||{}).enabled){let{axisTitle:e,height:i,horiz:s,left:r,offset:o,opposite:a,options:n,top:l,width:h}=this,d=this.tickSize(),c=e?.getBBox().width,p=n.title,{x:u,y:x}=p,m=p.margin??(s?5:10),f=e?this.chart.renderer.fontMetrics(e).f:0,b=(s?l+i:r)+(s?1:-1)*(a?-1:1)*(d?d[0]/2:0)+(this.side===g.bottom?f:0);if(t.titlePosition.x=s?r-(c||0)/2-m+u:b+(a?h:0)+o+u,t.titlePosition.y=s?b-(a?i:0)+(a?f:-f)/2+o+x:l-m+x,!s){let[e=0]=d||[];"left"===p.textAlign?t.titlePosition.x-=e/2:"right"===p.textAlign&&(t.titlePosition.x+=e/2)}}}function en(){let t,{chart:e,options:{grid:i={}},userOptions:s}=this;if(i.enabled&&((t=this.options).labels.align=(0,a.pick)(t.labels.align,"center"),this.categories||(t.showLastLabel=!1),this.labelRotation=0,t.labels.rotation=0,t.minTickInterval=1),i.columns){let t=this.grid.columns=[],r=this.grid.columnIndex=0;for(;++r<i.columns.length;){let o=(0,a.merge)(s,i.columns[r],{isInternal:!0,linkedTo:0,scrollbar:{enabled:!1}},{grid:{columns:void 0}}),n=new(N())(this.chart,o,this.coll);n.grid.isColumn=!0,n.grid.columnIndex=r,(0,a.erase)(e.axes,n),(0,a.erase)(e[this.coll]||[],n),t.push(n)}}}function el(){let{axisTitle:t,grid:e,options:i}=this;if(!0===(i.grid||{}).enabled){let s=this.min||0,r=this.max||0,o=this.ticks[this.tickPositions[0]];if(t&&!this.chart.styledMode&&o?.slotWidth&&!this.options.title.style.width&&t.css({width:`${o.slotWidth}px`}),this.maxLabelDimensions=this.getMaxLabelDimensions(this.ticks,this.tickPositions),this.rightWall&&this.rightWall.destroy(),this.grid?.isOuterAxis()&&this.axisLine){let t=i.lineWidth;if(t){let e=this.getLinePath(t),o=e[0],a=e[1],n=(this.tickSize("tick")||[1])[0]*(this.side===g.top||this.side===g.left?-1:1);if("M"===o[0]&&"L"===a[0]&&(this.horiz?(o[2]+=n,a[2]+=n):(o[1]+=n,a[1]+=n)),!this.horiz&&this.chart.marginRight){let t=["L",this.left,o[2]||0],e=[o,t],n=["L",this.chart.chartWidth-this.chart.marginRight,this.toPixels(r+this.tickmarkOffset)],l=[["M",a[1]||0,this.toPixels(r+this.tickmarkOffset)],n];this.grid.upperBorder||s%1==0||(this.grid.upperBorder=this.grid.renderBorder(e)),this.grid.upperBorder&&(this.grid.upperBorder.attr({stroke:i.lineColor,"stroke-width":i.lineWidth}),this.grid.upperBorder.animate({d:e})),this.grid.lowerBorder||r%1==0||(this.grid.lowerBorder=this.grid.renderBorder(l)),this.grid.lowerBorder&&(this.grid.lowerBorder.attr({stroke:i.lineColor,"stroke-width":i.lineWidth}),this.grid.lowerBorder.animate({d:l}))}this.grid.axisLineExtra?(this.grid.axisLineExtra.attr({stroke:i.lineColor,"stroke-width":i.lineWidth}),this.grid.axisLineExtra.animate({d:e})):this.grid.axisLineExtra=this.grid.renderBorder(e),this.axisLine[this.showAxis?"show":"hide"]()}}if((e?.columns||[]).forEach(t=>t.render()),!this.horiz&&this.chart.hasRendered&&(this.scrollbar||this.linkedParent?.scrollbar)&&this.tickPositions.length){let t,e,i=this.tickmarkOffset,o=this.tickPositions[this.tickPositions.length-1],a=this.tickPositions[0];for(;(t=this.hiddenLabels.pop())&&t.element;)t.show();for(;(e=this.hiddenMarks.pop())&&e.element;)e.show();(t=this.ticks[a].label)&&(s-a>i?this.hiddenLabels.push(t.hide()):t.show()),(t=this.ticks[o].label)&&(o-r>i?this.hiddenLabels.push(t.hide()):t.show());let n=this.ticks[o].mark;n&&o-r<i&&o-r>0&&this.ticks[o].isLast&&this.hiddenMarks.push(n.hide())}}}function eh(){let t=this.tickPositions?.info,e=this.options,i=e.grid||{},s=this.userOptions.labels||{};i.enabled&&(this.horiz?(this.series.forEach(t=>{t.options.pointRange=0}),t&&e.dateTimeLabelFormats&&e.labels&&!(0,a.defined)(s.align)&&(!1===e.dateTimeLabelFormats[t.unitName].range||t.count>1)&&(e.labels.align="left",(0,a.defined)(s.x)||(e.labels.x=3))):"treegrid"!==this.type&&this.grid&&this.grid.columns&&(this.minPointOffset=this.tickInterval))}function ed(t){let e,i=this.options,s=t.userOptions,r=i&&es(i.grid)?i.grid:{};!0===r.enabled&&(e=(0,a.merge)(!0,{className:"highcharts-grid-axis "+(s.className||""),dateTimeLabelFormats:{hour:{list:["%[HM]","%[H]"]},day:{list:["%[AeB]","%[aeb]","%[E]"]},week:{list:["Week %W","W%W"]},month:{list:["%[B]","%[b]","%o"]}},grid:{borderWidth:1},labels:{padding:2,style:{fontSize:"0.9em"}},margin:0,title:{text:null,reserveSpace:!1,rotation:0,style:{textOverflow:"ellipsis"}},units:[["millisecond",[1,10,100]],["second",[1,10]],["minute",[1,5,15]],["hour",[1,6]],["day",[1]],["week",[1]],["month",[1]],["year",null]]},s),"xAxis"===this.coll&&((0,a.defined)(s.linkedTo)&&!(0,a.defined)(s.tickPixelInterval)&&(e.tickPixelInterval=350),!(!(0,a.defined)(s.tickPixelInterval)&&(0,a.defined)(s.linkedTo))||(0,a.defined)(s.tickPositioner)||(0,a.defined)(s.tickInterval)||(0,a.defined)(s.units)||(e.tickPositioner=function(t,i){let s=this.linkedParent?.tickPositions?.info;if(s){let r=e.units||[],o,n=1,l="year";for(let t=0;t<r.length;t++){let e=r[t];if(e&&e[0]===s.unitName){o=t;break}}let h=(0,a.isNumber)(o)&&r[o+1];if(h){l=h[0]||"year";let t=h[1];n=t?.[0]||1}else"year"===s.unitName&&(n=10*s.count);let d=a.timeUnits[l];return this.tickInterval=d*n,this.chart.time.getTimeTicks({unitRange:d,count:n,unitName:l},t,i,this.options.startOfWeek)}})),(0,a.merge)(!0,this.options,e),this.horiz&&(i.minPadding=(0,a.pick)(s.minPadding,0),i.maxPadding=(0,a.pick)(s.maxPadding,0)),(0,a.isNumber)(i.grid.borderWidth)&&(i.tickWidth=i.lineWidth=r.borderWidth))}function ec(t){let e=t.userOptions,i=e?.grid||{},s=i.columns;i.enabled&&s&&(0,a.merge)(!0,this.options,s[0])}function ep(){(this.grid.columns||[]).forEach(t=>t.setScale())}function eu(t){let{horiz:e,maxLabelDimensions:i,options:{grid:s={}}}=this;if(s.enabled&&i){let r=2*this.options.labels.distance,o=e?s.cellHeight||r+i.height:r+i.width;(0,a.isArray)(t.tickSize)?t.tickSize[0]=o:t.tickSize=[o,0]}}function eg(){this.axes.forEach(t=>{(t.grid?.columns||[]).forEach(t=>{t.setAxisSize(),t.setAxisTranslation()})})}function ex(t){let{grid:e}=this;e&&((e.columns||[]).forEach(e=>e.destroy(t.keepEvents)),e.columns=void 0)}function em(t){let e=t.userOptions||{},i=(0,a.merge)({borderColor:"var(--highcharts-neutral-color-20)"},e.grid||{});i.enabled&&(0,a.defined)(i.borderColor)&&(e.tickColor=e.lineColor=i.borderColor),this.grid||(this.grid=new eM(this)),this.hiddenLabels=[],this.hiddenMarks=[],i.enabled&&(this.clippable=!1)}function ef(t){let e=this.label,i=this.axis,s=i.reversed,r=i.chart,o=i.options.grid||{},n=i.options.labels,l=n.align,h=g[i.side],d=t.tickmarkOffset,c=i.tickPositions,p=this.pos-d,u=(0,a.isNumber)(c[t.index+1])?c[t.index+1]-d:(i.max||0)+d,x=i.tickSize("tick"),m=x?x[0]:0,f=x?x[1]/2:0;if(!0===o.enabled){let o,a,d,c;if("top"===h?a=(o=i.top+i.offset)-m:"bottom"===h?o=(a=r.chartHeight-i.bottom+i.offset)+m:(o=i.top+i.len-(i.translate(s?u:p)||0),a=i.top+i.len-(i.translate(s?p:u)||0)),"right"===h?c=(d=r.chartWidth-i.right+i.offset)+m:"left"===h?d=(c=i.left+i.offset)-m:(d=Math.round(i.left+(i.translate(s?u:p)||0))-f,c=Math.min(Math.round(i.left+(i.translate(s?p:u)||0))-f,i.left+i.len)),this.slotWidth=c-d,t.pos.x="left"===l?d:"right"===l?c:d+(c-d)/2,t.pos.y=a+(o-a)/2,e){let i=r.renderer.fontMetrics(e),s=e.getBBox().height;if(n.useHTML)t.pos.y+=i.b+-(s/2);else{let e=Math.round(s/i.h);t.pos.y+=(i.b-(i.h-i.f))/2+-((e-1)*i.h/2)}}t.pos.x+=i.horiz&&n.x||0}}function eb(t){let{axis:e,value:i}=t;if(e.options.grid?.enabled){let s,r=e.tickPositions,o=(e.linkedParent||e).series,n=o.reduce((t,e)=>e.is("gantt")?t?.concat(e.options?.data??[]):t,[])??[],l=i===r[0],h=i===r[r.length-1],d=o[0]&&(0,a.find)(n,function(t){return t[e.isXAxis?"x":"y"]===i});d&&(s=(0,a.merge)(d),x().seriesTypes.gantt.prototype.pointClass.setGanttPointAliases(s,e.chart)),t.isFirst=l,t.isLast=h,t.point=s}}function ev(){let t=this.options,e=t.grid||{},i=this.categories,s=this.tickPositions,r=s[0],o=s[1],n=s[s.length-1],l=s[s.length-2],h=this.linkedParent?.min,d=this.linkedParent?.max,c=h||this.min,p=d||this.max,u=this.tickInterval,g=(0,a.isNumber)(c)&&c>=r+u&&c<o,x=(0,a.isNumber)(c)&&r<c&&r+u>c,m=(0,a.isNumber)(p)&&n>p&&n-u<p,f=(0,a.isNumber)(p)&&p<=n-u&&p>l;!0===e.enabled&&!i&&(this.isXAxis||this.isLinked)&&((x||g)&&!t.startOnTick&&(s[0]=c),(m||f)&&!t.endOnTick&&(s[s.length-1]=p))}function ey(t){var e;let{options:{grid:i={}}}=this;return!0===i.enabled&&this.categories?this.tickInterval:t.apply(this,(e=arguments,Array.prototype.slice.call(e,1)))}(l=g||(g={}))[l.top=0]="top",l[l.right=1]="right",l[l.bottom=2]="bottom",l[l.left=3]="left";class eM{constructor(t){this.axis=t}isOuterAxis(){let t=this.axis,e=t.chart,i=t.grid.columnIndex,s=t.linkedParent?.grid.columns||t.grid.columns||[],r=i?t.linkedParent:t,o=-1,n=0;return 3===t.side&&!e.inverted&&s.length?!t.linkedParent:((e[t.coll]||[]).forEach((e,i)=>{e.side!==t.side||e.options.isInternal||(n=i,e===r&&(o=i))}),n===o&&(!(0,a.isNumber)(i)||s.length===i))}renderBorder(t){let e=this.axis,i=e.chart.renderer,s=e.options,r=i.path(t).addClass("highcharts-axis-line").add(e.axisGroup);return i.styledMode||r.attr({stroke:s.lineColor,"stroke-width":s.lineWidth,zIndex:7}),r}}ei.E=function(t){return this.dateFormat("%a",t,!0).charAt(0)},ei.W=function(t){let e=this.toParts(t),i=(e[7]+6)%7,s=e.slice(0);s[2]=e[2]-i+3;let r=this.toParts(this.makeTime(s[0],0,1));return 4!==r[7]&&(e[1]=0,e[2]=1+(11-r[7])%7),(1+Math.floor((this.makeTime(s[0],s[1],s[2])-this.makeTime(r[0],r[1],r[2]))/6048e5)).toString()};function ek(t,e,i,s,r,o){let n=o&&o.after,l=o&&o.before,h={data:s,depth:i-1,id:t,level:i,parent:e||""},d=0,c=0,p,u;"function"==typeof l&&l(h,o);let g=(r[t]||[]).map(e=>{let s=ek(e.id,t,i+1,e,r,o),n=e.start||NaN,l=!0===e.milestone?n:e.end||NaN;return p=!(0,a.isNumber)(p)||n<p?n:p,u=!(0,a.isNumber)(u)||l>u?l:u,d=d+1+s.descendants,c=Math.max(s.height+1,c),s});return s&&(s.start??(s.start=p),s.end??(s.end=u)),(0,a.extend)(h,{children:g,descendants:d,height:c}),"function"==typeof n&&n(h,o),h}let eE=function(t,e){let i,s;return ek("",null,1,null,(i=[],Object.keys(s=t.reduce((t,e)=>{let{parent:s="",id:r}=e;return void 0===t[s]&&(t[s]=[]),t[s].push(e),r&&i.push(r),t},{})).forEach(t=>{if(""!==t&&-1===i.indexOf(t)){let e=s[t].map(function(t){let{...e}=t;return e});s[""].push(...e),delete s[t]}}),s),e)};function eA(){this.treeGrid||(this.treeGrid=new eB(this))}function ew(t,e,i,s,r,o,n,l,h){let d,c,p,u=(0,a.pick)(this.options?.labels,o),g=this.pos,x=this.axis,m="treegrid"===x.type,f=t.apply(this,[e,i,s,r,u,n,l,h]);if(m){let{width:t=0,padding:e=5*!x.linkedParent}=u&&(0,a.isObject)(u.symbol,!0)?u.symbol:{},i=u&&(0,a.isNumber)(u.indentation)?u.indentation:0;d=x.treeGrid.mapOfPosToGridNode,c=d?.[g],p=c?.depth||1,f.x+=t+2*e+(p-1)*i}return f}function eO(t){let e,{pos:i,axis:s,label:r,treeGrid:o,options:n}=this,l=o?.labelIcon,h=r?.element,{treeGrid:d,options:c,chart:p,tickPositions:u}=s,g=d.mapOfPosToGridNode,x=(0,a.pick)(n?.labels,c?.labels),m=x&&(0,a.isObject)(x.symbol,!0)?x.symbol:{},f=g?.[i],{descendants:b,depth:v}=f||{},y=f&&b&&b>0,M="treegrid"===s.type&&h,k=u.indexOf(i)>-1,E="highcharts-treegrid-node-",A=E+"level-",w=p.styledMode;if(M&&f&&r.removeClass(RegExp(A+".*")).addClass(A+v),t.apply(this,Array.prototype.slice.call(arguments,1)),M&&y){var O;let t,i,s,n,h,c,p,u,g,b,v,y;e=d.isCollapsed(f),O={color:!w&&r.styles.color||"",collapsed:e,group:r.parentGroup,options:m,renderer:r.renderer,show:k,xy:r.xy},i=!(t=this.treeGrid).labelIcon,s=O.renderer,n=O.xy,c=(h=O.options).width||0,p=h.height||0,u=h.padding??this.axis.linkedParent?0:5,g={x:n.x-c/2-u,y:n.y-p/2},b=O.collapsed?90:180,v=O.show&&(0,a.isNumber)(g.y),(y=t.labelIcon)||(t.labelIcon=y=s.path(s.symbols[h.type](h.x||0,h.y||0,c,p)).addClass("highcharts-label-icon").add(O.group)),y[v?"show":"hide"](),s.styledMode||y.attr({cursor:"pointer",fill:O.color||"var(--highcharts-neutral-color-60)","stroke-width":1,stroke:h.lineColor,strokeWidth:h.lineWidth||0}),y[i?"attr":"animate"]({translateX:g.x,translateY:g.y,rotation:b}),r.addClass(E+(e?"collapsed":"expanded")).removeClass(E+(e?"expanded":"collapsed")),w||r.css({cursor:"pointer"}),[r,l].forEach(t=>{t&&!t.attachedTreeGridEvents&&((0,a.addEvent)(t.element,"mouseover",function(){r.addClass("highcharts-treegrid-node-active"),r.renderer.styledMode||r.css({textDecoration:"underline"})}),(0,a.addEvent)(t.element,"mouseout",function(){let t;t=(0,a.isObject)(x.style)?x.style:{},r.removeClass("highcharts-treegrid-node-active"),r.renderer.styledMode||r.css({textDecoration:t.textDecoration||"none"})}),(0,a.addEvent)(t.element,"click",function(){o.toggleCollapse()}),t.attachedTreeGridEvents=!0)})}else l&&((0,a.removeEvent)(h),r?.css({cursor:"default"}),l.destroy(),o.labelIcon=void 0)}class eB{static compose(t){let e=t.prototype;e.toggleCollapse||((0,a.addEvent)(t,"init",eA),(0,a.wrap)(e,"getLabelPosition",ew),(0,a.wrap)(e,"renderLabel",eO),e.collapse=function(t){this.treeGrid.collapse(t)},e.expand=function(t){this.treeGrid.expand(t)},e.toggleCollapse=function(t){this.treeGrid.toggleCollapse(t)})}constructor(t){this.tick=t}collapse(t){let{pos:e,axis:i}=this.tick,{treeGrid:s,brokenAxis:r}=i,o=s.mapOfPosToGridNode;r&&o&&r.setBreaks(s.collapse(o[e]),t??!0)}destroy(){this.labelIcon?.destroy()}expand(t){let{pos:e,axis:i}=this.tick,{treeGrid:s,brokenAxis:r}=i,o=s.mapOfPosToGridNode;r&&o&&r.setBreaks(s.expand(o[e]),t??!0)}toggleCollapse(t=!0){let{axis:e,pos:i}=this.tick,{brokenAxis:s,treeGrid:r}=e;if(s&&r.mapOfPosToGridNode){let o=!!(e.scrollbar&&e.staticScale),n=e.pos+e.len+(r.pendingSizeAdjustment||0);if(r.pendingSizeAdjustment=0,s.setBreaks(r.toggleCollapse(r.mapOfPosToGridNode[i]),o&&t),o){let t=e.toValue(e.toPixels(e.dataMax)),i=e.toValue(n)-e.tickmarkOffset,s=e.userMin??e.min;if(r.adjustedMax=t!==e.dataMax?t-e.tickmarkOffset:void 0,i>e.dataMax){let t=n-e.toPixels(e.dataMax+e.tickmarkOffset);i=r.adjustedMax??e.dataMax,(s=e.toValue(e.toPixels(s-e.tickmarkOffset)-t)+e.tickmarkOffset)<e.dataMin&&(t=e.toPixels(e.dataMin)-e.toPixels(s),s=e.dataMin,r.pendingSizeAdjustment=t)}e.setExtremes((0,a.correctFloat)(s),(0,a.correctFloat)(i),!1,!1,{trigger:"toggleCollapse"})}t&&e.chart.redraw()}}}let eS=r.default.Color;var eT=o.n(eS);let{getLevelOptions:eP}={getColor:function(t,e){let i,s,r,o,n,l,h=e.index,d=e.mapOptionsToLevel,c=e.parentColor,p=e.parentColorIndex,u=e.series,g=e.colors,x=e.siblings,m=u.points,f=u.chart.options.chart;if(t){let b;i=m[t.i],s=d[t.level]||{},i&&s.colorByPoint&&(o=i.index%(g?g.length:f.colorCount),r=g&&g[o]),u.chart.styledMode||(n=(0,a.pick)(i&&i.options.color,s&&s.color,r,c&&((b=s&&s.colorVariation)&&"brightness"===b.key&&h&&x?eT().parse(c).brighten(b.to*(h/x)).get():c),u.color)),l=(0,a.pick)(i&&i.options.colorIndex,s&&s.colorIndex,o,p,e.colorIndex)}return{color:n,colorIndex:l}},getLevelOptions:function(t){let e,i,s,r,o,n,l={};if((0,a.isObject)(t))for(r=(0,a.isNumber)(t.from)?t.from:1,n=t.levels,i={},e=(0,a.isObject)(t.defaults)?t.defaults:{},(0,a.isArray)(n)&&(i=n.reduce((t,i)=>{let s,o,n;return(0,a.isObject)(i)&&(0,a.isNumber)(i.level)&&(n=(0,a.merge)({},i),o=(0,a.pick)(n.levelIsConstant,e.levelIsConstant),delete n.levelIsConstant,delete n.level,s=i.level+(o?0:r-1),(0,a.isObject)(t[s])?(0,a.merge)(!0,t[s],n):t[s]=n),t},{})),o=(0,a.isNumber)(t.to)?t.to:1,s=0;s<=o;s++)l[s]=(0,a.merge)({},e,(0,a.isObject)(i[s])?i[s]:{});return l},getNodeWidth:function(t,e){let{chart:i,options:s}=t,{nodeDistance:r=0,nodeWidth:o=0}=s,{plotSizeX:n=1}=i;if("auto"===o){if("string"==typeof r&&/%$/.test(r))return n/(e+parseFloat(r)/100*(e-1));let t=Number(r);return(n+t)/(e||1)-t}return(0,a.relativeLength)(o,n)},setTreeValues:function t(e,i){let s=i.before,r=i.idRoot,o=i.mapIdToNode[r],n=!1!==i.levelIsConstant,l=i.points[e.i],h=l&&l.options||{},d=[],c=0;e.levelDynamic=e.level-(n?0:o.level),e.name=(0,a.pick)(l&&l.name,""),e.visible=r===e.id||!0===i.visible,"function"==typeof s&&(e=s(e,i)),e.children.forEach((s,r)=>{let o=(0,a.extend)({},i);(0,a.extend)(o,{index:r,siblings:e.children.length,visible:e.visible}),s=t(s,o),d.push(s),s.visible&&(c+=s.val)});let p=(0,a.pick)(h.value,c);return e.visible=p>=0&&(c>0||e.visible),e.children=d,e.childrenTotal=c,e.isLeaf=e.visible&&!c,e.val=p,e},updateRootId:function(t){let e,i;return(0,a.isObject)(t)&&(i=(0,a.isObject)(t.options)?t.options:{},e=(0,a.pick)(t.rootNode,i.rootId,""),(0,a.isObject)(t.userOptions)&&(t.userOptions.rootId=e),t.rootNode=e),e}};function eN(t){return Array(t.dataTable.rowCount).fill(void 0).map((e,i)=>t.dataTable.getRowObject(i))}function eC(t){return{from:t.collapseStart||0,to:t.collapseEnd||0,showPoints:!1}}function eD(t,e,i){var s;let r,o=[],n=[],l={},h=e||!1,d={},c=-1,p=eE(t,{after:function(t){let e=d[t.pos],i=0,s=0;e.children.forEach(function(t){s+=(t.descendants||0)+1,i=Math.max((t.height||0)+1,i)}),e.descendants=s,e.height=i,e.collapsed&&n.push(e)},before:function(t){let e,i,s=(0,a.isObject)(t.data,!0)?t.data:{},r=(0,a.isString)(s.name)?s.name:"",n=l[t.parent],p=(0,a.isObject)(n,!0)?d[n.pos]:null;h&&(0,a.isObject)(p,!0)&&(e=(0,a.find)(p.children,function(t){return t.name===r}))?(i=e.pos,e.nodes.push(t)):i=c++,!d[i]&&(d[i]=e={depth:p?p.depth+1:0,name:r,id:s.id,nodes:[t],children:[],pos:i},-1!==i&&o.push(r),(0,a.isObject)(p,!0)&&p.children.push(e)),(0,a.isString)(t.id)&&(l[t.id]=t),e&&!0===s.collapsed&&(e.collapsed=!0),t.pos=i}});return s=d,{categories:o,mapOfIdToNode:l,mapOfPosToGridNode:d=(r=function(t,e,s){let o=t.nodes,n=e+(-1===e?0:i-1),l=(n-e)/2,h=e+l;return o.forEach(function(t){let i=t.data;(0,a.isObject)(i,!0)&&(i.y=e+(i.yIndex||0)),t.pos=h}),s[h]=t,t.pos=h,t.tickmarkOffset=l+.5,t.collapseStart=n+.5,t.children.forEach(function(t){r(t,n+1,s),n=(t.collapseEnd||0)-.5}),t.collapseEnd=n+.5,s})(s["-1"],-1,{}),collapsedNodes:n,tree:p}}function eI(t){let e=t.target;e.axes.filter(t=>"treegrid"===t.type).forEach(function(i){let s=i.options,r=s.labels,o=i.uniqueNames,n=e.time.parse(s.max),l=!i.treeGrid.mapOfPosToGridNode||i.series.some(function(t){return!t.hasRendered||t.isDirtyData||t.isDirty}),h=0,d,c;if(l){let s=[];if(d=i.series.reduce(function(t,i){let r=eN(i),n=r[0],l=Array.isArray(n)&&!n.find(t=>"object"==typeof t);return s.push(l),i.visible&&(r.forEach(function(s){(l||i.options.keys?.length)&&(s=i.pointClass.prototype.optionsToObject.call({series:i},s),i.pointClass.setGanttPointAliases(s,e)),(0,a.isObject)(s,!0)&&(s.yIndex=h,s.seriesIndex=i.index,t.push(s))}),!0===o&&h++),t},[]),n&&d.length<n)for(let t=d.length;t<=n;t++)d.push({name:t+""});i.categories=(c=eD(d,o||!1,!0===o?h:1)).categories,i.treeGrid.mapOfPosToGridNode=c.mapOfPosToGridNode,i.hasNames=!0,i.treeGrid.tree=c.tree,i.series.forEach(t=>{let e=d.filter(e=>e.seriesIndex===t.index);e.forEach(t=>{delete t.seriesIndex,delete t.yIndex}),t.visible&&t.setData(e,!1)}),i.treeGrid.mapOptionsToLevel=eP({defaults:r,from:1,levels:r?.levels,to:i.treeGrid.tree?.height}),"beforeRender"===t.type&&(i.treeGrid.collapsedNodes=c.collapsedNodes)}})}function eL(t,e){let s=this.treeGrid.mapOptionsToLevel||{},r="treegrid"===this.type,o=this.ticks,a=o[e],n,l,h;r&&this.treeGrid.mapOfPosToGridNode?((n=s[(h=this.treeGrid.mapOfPosToGridNode[e]).depth])&&(l={labels:n}),!a&&i?o[e]=a=new i(this,e,void 0,void 0,{category:h.name,tickmarkOffset:h.tickmarkOffset,options:l}):(a.parameters.category=h.name,a.options=l,a.addLabel(),this.isDirty=!0)):t.apply(this,Array.prototype.slice.call(arguments,1))}function ez(t,e,i,s){let r=this,o="treegrid"===i.type;r.treeGrid||(r.treeGrid=new eW(r)),o&&((0,a.addEvent)(e,"beforeRender",eI,{order:0}),(0,a.addEvent)(e,"beforeRedraw",eI),(0,a.addEvent)(e,"addSeries",function(t){if(t.options.data){let e=eD(t.options.data,i.uniqueNames||!1,1);r.treeGrid.collapsedNodes=(r.treeGrid.collapsedNodes||[]).concat(e.collapsedNodes)}}),(0,a.addEvent)(r,"foundExtremes",function(){r.treeGrid.collapsedNodes?.forEach(function(t){let e=r.treeGrid.collapse(t);r.brokenAxis&&(r.brokenAxis.setBreaks(e,!1),r.treeGrid.collapsedNodes&&(r.treeGrid.collapsedNodes=r.treeGrid.collapsedNodes.filter(e=>t.collapseStart!==e.collapseStart||t.collapseEnd!==e.collapseEnd)))})}),(0,a.addEvent)(r,"afterBreaks",function(){"yAxis"===r.coll&&!r.staticScale&&r.chart.options.chart.height&&(r.isDirty=!0)}),i=(0,a.merge)({grid:{enabled:!0},labels:{align:"left",levels:[{level:void 0},{level:1,style:{fontWeight:"bold"}}],symbol:{type:"triangle",x:-5,y:-3,height:6,width:8}},uniqueNames:!1},i,{reversed:!0})),t.apply(r,[e,i,s]),o&&(r.hasNames=!0,r.options.showLastLabel=!0)}function eG(t){let e=this.options,i=this.chart.time,s="number"==typeof e.linkedTo?this.chart[this.coll]?.[e.linkedTo]:void 0;if("treegrid"===this.type){if(this.min=this.userMin??i.parse(e.min)??this.dataMin,this.max=this.userMax??i.parse(e.max)??this.dataMax,(0,a.fireEvent)(this,"foundExtremes"),this.setAxisTranslation(),this.tickInterval=1,this.tickmarkOffset=.5,this.tickPositions=this.treeGrid.mapOfPosToGridNode?this.treeGrid.getTickPositions():[],s){let t=s.getExtremes();this.min=t.min??t.dataMin,this.max=t.max??t.dataMax,this.tickPositions=s.tickPositions}this.linkedParent=s}else t.apply(this,Array.prototype.slice.call(arguments,1))}function eR(t){let e=this;"treegrid"===this.type&&e.visible&&e.tickPositions.forEach(function(t){let i=e.ticks[t];i.label?.attachedTreeGridEvents&&((0,a.removeEvent)(i.label.element),i.label.attachedTreeGridEvents=!1)}),t.apply(e,Array.prototype.slice.call(arguments,1))}class eW{static compose(t,e,s,r){var o,n,l;if(!t.keepProps.includes("treeGrid")){let e=t.prototype;t.keepProps.push("treeGrid"),(0,a.wrap)(e,"generateTick",eL),(0,a.wrap)(e,"init",ez),(0,a.wrap)(e,"setTickInterval",eG),(0,a.wrap)(e,"redraw",eR),e.utils={getNode:ek},i||(i=r)}return o=t,n=e,l=r,o.keepProps.includes("grid")||(o.keepProps.push("grid"),o.prototype.getMaxLabelDimensions=er,(0,a.wrap)(o.prototype,"unsquish",ey),(0,a.wrap)(o.prototype,"getOffset",eo),(0,a.addEvent)(o,"init",em),(0,a.addEvent)(o,"afterGetTitlePosition",ea),(0,a.addEvent)(o,"afterInit",en),(0,a.addEvent)(o,"afterRender",el),(0,a.addEvent)(o,"afterSetAxisTranslation",eh),(0,a.addEvent)(o,"afterSetOptions",ed),(0,a.addEvent)(o,"afterSetOptions",ec),(0,a.addEvent)(o,"afterSetScale",ep),(0,a.addEvent)(o,"afterTickSize",eu),(0,a.addEvent)(o,"trimTicks",ev),(0,a.addEvent)(o,"destroy",ex),(0,a.addEvent)(n,"afterSetChartSize",eg),(0,a.addEvent)(l,"afterGetLabelPosition",ef),(0,a.addEvent)(l,"labelFormat",eb)),ee.compose(t,s),eB.compose(r),t}constructor(t){this.pendingSizeAdjustment=0,this.axis=t}setCollapsedStatus(t){let e=this.axis,i=e.chart;e.series.forEach(function(e){let s=eN(e);if(t.id&&s){let r=i.get(t.id),o=s[e.data.indexOf(r)];e.dataTable.setRow({collapsed:t.collapsed},e.data.indexOf(r)),r&&(0,a.isObject)(o,!0)&&(r.collapsed=t.collapsed,o.collapsed=t.collapsed)}})}collapse(t){let e=this.axis,i=e.options.breaks||[],s=eC(t);return i.push(s),t.collapsed=!0,e.treeGrid.setCollapsedStatus(t),i}expand(t){let e=this.axis,i=eC(t);return t.collapsed=!1,e.treeGrid.setCollapsedStatus(t),e.options.breaks?.reduce(function(t,e){return(e.to!==i.to||e.from!==i.from)&&t.push(e),t},[])||[]}getTickPositions(){let t=this.axis,e=Math.floor(t.min/t.tickInterval)*t.tickInterval,i=Math.ceil(t.max/t.tickInterval)*t.tickInterval;return Object.keys(t.treeGrid.mapOfPosToGridNode||{}).reduce(function(s,r){let o=+r;return o>=e&&o<=i&&!t.brokenAxis?.isInAnyBreak(o)&&s.push(o),s},[])}isCollapsed(t){let e=this.axis.options.breaks||[],i=eC(t);return e.some(function(t){return t.from===i.from&&t.to===i.to})}toggleCollapse(t){return this.isCollapsed(t)?this.expand(t):this.collapse(t)}}let{series:eF,seriesTypes:{xrange:eH}}=_();class eU extends eH{static compose(t,e,i,s){if(eH.compose(t),e){if((0,a.pushUnique)(t8,"StaticScale")){let i=e.prototype;(0,a.addEvent)(t,"afterSetOptions",t4),i.adjustHeight=t7,(0,a.addEvent)(e,"render",i.adjustHeight)}!i||(t6.compose(e,i.prototype.pointClass),s&&eW.compose(t,e,i,s))}}getColumn(t){let e=this.chart.time;if("x"===t){let t=super.getColumn("start");if(t.length)return t.map(t=>e.parse(t)??NaN)}return super.getColumn.apply(this,arguments)}drawPoint(t,e){let i=this.options,s=this.chart.renderer,r=t.shapeArgs,o=t.plotY,n=t.selected&&"select",l=i.stacking&&!i.borderRadius,h=t.graphic,d;t.options.milestone?(0,a.isNumber)(o)&&null!==t.y&&!1!==t.visible?(d=s.symbols.diamond(r.x||0,r.y||0,r.width||0,r.height||0),h?h[e]({d:d}):t.graphic=h=s.path(d).addClass(t.getClassName(),!0).add(t.group||this.group),this.chart.styledMode||t.graphic.attr(this.pointAttribs(t,n)).shadow(i.shadow,null,l)):h&&(t.graphic=h.destroy()):super.drawPoint(t,e)}translatePoint(t){let e,i;super.translatePoint(t),t.options.milestone&&(i=(e=t.shapeArgs).height||0,t.shapeArgs={x:(e.x||0)-i/2,y:e.y,width:i,height:i})}}eU.defaultOptions=(0,a.merge)(eH.defaultOptions,{grouping:!1,dataLabels:{enabled:!0},tooltip:{headerFormat:'<span style="font-size: 0.8em">{series.name}</span><br/>',pointFormat:null,pointFormatter:function(){let t=this.series,e=t.xAxis,i=t.tooltipOptions.dateTimeLabelFormats,s=e.options.startOfWeek,r=t.tooltipOptions,o=this.options.milestone,n=r.xDateFormat,l="<b>"+(this.name||this.yCategory)+"</b>";if(r.pointFormat)return this.tooltipFormatter(r.pointFormat);!n&&(0,a.isNumber)(this.start)&&(n=t.chart.time.getDateFormat(e.closestPointRange,this.start,s,i||{}));let h=t.chart.time.dateFormat(n,this.start),d=t.chart.time.dateFormat(n,this.end);return l+="<br/>",o?l+=h+"<br/>":l+="Start: "+h+"<br/>"+("End: "+d)+"<br/>",l}},connectors:{type:"simpleConnect",animation:{reversed:!0},radius:0,startMarker:{enabled:!0,symbol:"arrow-filled",radius:4,align:"left"},endMarker:{enabled:!1,align:"right"}}}),(0,a.extend)(eU.prototype,{pointArrayMap:["start","end","y"],pointClass:tF,setData:eF.prototype.setData}),_().registerSeriesType("gantt",eU);let ej=x();ej.Connection=ej.Connection||k,ej.GanttChart=ej.GanttChart||T,ej.Navigator=ej.Navigator||tm,ej.RangeSelector=ej.RangeSelector||tR,ej.Scrollbar=ej.Scrollbar||tp,ej.ganttChart=ej.GanttChart.ganttChart,(s=ej.SVGRenderer.prototype.symbols).arrow=m,s["arrow-filled"]=f,s["arrow-filled-half"]=b,s["arrow-half"]=function(t,e,i,s){return m(t,e,i/2,s)},s["triangle-left"]=f,s["triangle-left-half"]=b,h=ej.Axis,d=ej.PlotLineOrBand,(0,a.pushUnique)(E,"CurrentDateIndication")&&((0,a.addEvent)(h,"afterSetOptions",function(){let t=this.options,e=t.currentDateIndicator;if(e){let i="object"==typeof e?(0,a.merge)(A,e):(0,a.merge)(A);i.value=Date.now(),i.className="highcharts-current-date-indicator",t.plotLines??(t.plotLines=[]),t.plotLines.push(i)}}),(0,a.addEvent)(d,"render",function(){this.label?.attr({text:this.getLabelText(this.options.label||{})})}),(0,a.wrap)(d.prototype,"getLabelText",function(t,e){if(this.options.className&&-1!==this.options.className.indexOf("highcharts-current-date-indicator")&&"function"==typeof this.options.label?.formatter){let t=this.options;return t.value=Date.now(),t.label?.formatter?.call(this,t.value,t.label.format,this)||""}return t.call(this,e)})),eU.compose(ej.Axis,ej.Chart,ej.Series,ej.Tick),ej.Navigator.compose(ej.Chart,ej.Axis,ej.Series),ej.RangeSelector.compose(ej.Axis,ej.Chart),ej.Scrollbar.compose(ej.Axis);let eY=x();export{eY as default};
|
|
13
|
+
*/import*as r from"../highcharts.js";import"./pathfinder.js";import"./static-scale.js";import"./xrange.js";let o={};o.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{if(Array.isArray(e))for(var i=0;i<e.length;){var s=e[i++],r=e[i++];o.o(t,s)?0===r&&i++:0===r?Object.defineProperty(t,s,{enumerable:!0,value:e[i++]}):Object.defineProperty(t,s,{enumerable:!0,get:r})}else for(var s in e)o.o(e,s)&&!o.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let a=r.default;var n,l,h,d,c,p,u,g,x=o.n(a);function m(t,e,i,s){return[["M",t,e+s/2],["L",t+i,e],["L",t,e+s/2],["L",t+i,e+s]]}function f(t,e,i,s){return[["M",t+i,e],["L",t,e+s/2],["L",t+i,e+s],["Z"]]}function b(t,e,i,s){return f(t,e,i/2,s)}let v=x().deg2rad,y=Math.max,M=Math.min,k=class{constructor(t,e,i){this.init(t,e,i)}init(t,e,i){this.fromPoint=t,this.toPoint=e,this.options=i,this.chart=t.series.chart,this.pathfinder=this.chart.pathfinder}renderPath(t,e){let i=this.chart,s=i.styledMode,r=this.pathfinder,o={},a=this.graphics&&this.graphics.path;r.group||(r.group=i.renderer.g().addClass("highcharts-pathfinder-group").attr({zIndex:-1}).add(i.seriesGroup)),r.group.translate(i.plotLeft,i.plotTop),!(a&&a.renderer)&&(a=i.renderer.path().add(r.group),s||a.attr({opacity:0})),a.attr(e),o.d=t,s||(o.opacity=1),a.animate(o),this.graphics=this.graphics||{},this.graphics.path=a}addMarker(t,e,i){let s,r,o,a,n,l,h,d=this.fromPoint.series.chart,c=d.pathfinder,p=d.renderer,u="start"===t?this.fromPoint:this.toPoint,g=u.getPathfinderAnchorPoint(e);e.enabled&&((h="start"===t?i[1]:i[i.length-2])&&"M"===h[0]||"L"===h[0])&&(l={x:h[1],y:h[2]},r=u.getRadiansToVector(l,g),s=u.getMarkerVector(r,e.radius,g),e.width&&e.height?(a=e.width,n=e.height):a=n=2*e.radius,this.graphics=this.graphics||{},o={x:s.x-a/2,y:s.y-n/2,width:a,height:n,rotation:-r/v,rotationOriginX:s.x,rotationOriginY:s.y},this.graphics[t]?this.graphics[t].animate(o):(this.graphics[t]=p.symbol(e.symbol).addClass("highcharts-point-connecting-path-"+t+"-marker highcharts-color-"+this.fromPoint.colorIndex).attr(o).add(c.group),p.styledMode||this.graphics[t].attr({fill:e.color||this.fromPoint.color,stroke:e.lineColor,"stroke-width":e.lineWidth,opacity:0}).animate({opacity:1},u.series.options.animation)))}getPath(t){let e=this.pathfinder,i=this.chart,s=e.algorithms[t.type],r=e.chartObstacles;return"function"!=typeof s?((0,a.error)('"'+t.type+'" is not a Pathfinder algorithm.'),{path:[],obstacles:[]}):(s.requiresObstacles&&!r&&(r=e.chartObstacles=e.getChartObstacles(t),i.options.connectors.algorithmMargin=t.algorithmMargin,e.chartObstacleMetrics=e.getObstacleMetrics(r)),s(this.fromPoint.getPathfinderAnchorPoint(t.startMarker),this.toPoint.getPathfinderAnchorPoint(t.endMarker),(0,a.merge)({chartObstacles:r,lineObstacles:e.lineObstacles||[],obstacleMetrics:e.chartObstacleMetrics,hardBounds:{xMin:0,xMax:i.plotWidth,yMin:0,yMax:i.plotHeight},obstacleOptions:{margin:t.algorithmMargin},startDirectionX:e.getAlgorithmStartDirection(t.startMarker)},t)))}render(){let t=this.fromPoint,e=t.series,i=e.chart,s=i.pathfinder,r={},o=(0,a.merge)(i.options.connectors,e.options.connectors,t.options.connectors,this.options);!i.styledMode&&(r.stroke=o.lineColor||t.color,r["stroke-width"]=o.lineWidth,o.dashStyle&&(r.dashstyle=o.dashStyle)),r.class="highcharts-point-connecting-path highcharts-color-"+t.colorIndex,o=(0,a.merge)(r,o),(0,a.defined)(o.marker.radius)||(o.marker.radius=M(y(Math.ceil((o.algorithmMargin||8)/2)-1,1),5));let n=this.getPath(o),l=n.path;n.obstacles&&(s.lineObstacles=s.lineObstacles||[],s.lineObstacles=s.lineObstacles.concat(n.obstacles)),this.renderPath(l,r),this.addMarker("start",(0,a.merge)(o.marker,o.startMarker),l),this.addMarker("end",(0,a.merge)(o.marker,o.endMarker),l)}destroy(){this.graphics&&((0,a.objectEach)(this.graphics,function(t){t.destroy()}),delete this.graphics)}},{composed:E}=x(),A={color:"var(--highcharts-highlight-color-20)",width:2,label:{format:"%[abdYHM]",formatter:function(t,e){return this.axis.chart.time.dateFormat(e||"",t,!0)},rotation:0,style:{fontSize:"0.7em"}}},w=r.default.Chart;var O=o.n(w);let{defaultOptions:B}=x();class S extends O(){init(t,e){let i,s=t.xAxis,r=t.yAxis;t.xAxis=t.yAxis=void 0;let o=(0,a.merge)(!0,{chart:{type:"gantt"},title:{text:""},legend:{enabled:!1},navigator:{series:{type:"gantt"},yAxis:{type:"category"}}},t,{isGantt:!0});t.xAxis=s,t.yAxis=r,o.xAxis=(!(0,a.isArray)(t.xAxis)?[t.xAxis||{},{}]:t.xAxis).map((t,e)=>(1===e&&(i=0),(0,a.merge)({grid:{enabled:!0},opposite:B.xAxis?.opposite??t.opposite??!0,linkedTo:i},t,{type:"datetime"}))),o.yAxis=(0,a.splat)(t.yAxis||{}).map(t=>(0,a.merge)({grid:{enabled:!0},staticScale:50,reversed:!0,type:t.categories?t.type:"treegrid"},t)),super.init(o,e)}}(n=S||(S={})).ganttChart=function(t,e,i){let s=new n(t,e,i);return s.promise||s};let T=S,P=r.default.Axis;var N=o.n(P);let{isTouchDevice:C}=x(),D=[];function I(){this.navigator&&this.navigator.setBaseSeries(null,!1)}function L(){let t,e,i,s=this.legend,r=this.navigator;if(r){t=s&&s.options,e=r.xAxis,i=r.yAxis;let{scrollbarHeight:o,scrollButtonSize:a}=r;this.inverted?(r.left=r.opposite?this.chartWidth-o-r.height:this.spacing[3]+o,r.top=this.plotTop+a):(r.left=e.left??this.plotLeft+a,r.top=r.navigatorOptions.top||this.chartHeight-r.height-o-(this.scrollbar?.options.margin||0)-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(t&&"bottom"===t.verticalAlign&&"proximate"!==t.layout&&t.enabled&&!t.floating?s.legendHeight+(t.margin??10):0)-(this.titleOffset?this.titleOffset[2]:0)),e&&i&&(this.inverted?e.options.left=i.options.left=r.left:e.options.top=i.options.top=r.top,e.setAxisSize(),i.setAxisSize())}}function z(e){!this.navigator&&!this.scroller&&(this.options.navigator.enabled||this.options.scrollbar.enabled)&&(this.scroller=this.navigator=new t(this),(e.redraw??!0)&&this.redraw(e.animation))}function G(){let e=this.options;(e.navigator.enabled||e.scrollbar.enabled)&&(this.scroller=this.navigator=new t(this))}function R(){let t=this.options,e=t.navigator,i=t.rangeSelector;if((e&&e.enabled||i&&i.enabled)&&(!C&&"x"===this.zooming.type||C&&"x"===this.zooming.pinchType))return!1}function W(t){let e=t.navigator;if(e&&t.xAxis[0]){let i=t.xAxis[0].getExtremes();e.render(i.min,i.max)}}function F(t){let e=t.options.navigator||{},i=t.options.scrollbar||{};!this.navigator&&!this.scroller&&(e.enabled||i.enabled)&&((0,a.merge)(!0,this.options.navigator,e),(0,a.merge)(!0,this.options.scrollbar,i),delete t.options.navigator,delete t.options.scrollbar)}let H=function(e,i){if((0,a.pushUnique)(D,e)){let s=e.prototype;t=i,s.callbacks.push(W),(0,a.addEvent)(e,"afterAddSeries",I),(0,a.addEvent)(e,"afterSetChartSize",L),(0,a.addEvent)(e,"afterUpdate",z),(0,a.addEvent)(e,"beforeRender",G),(0,a.addEvent)(e,"beforeShowResetZoom",R),(0,a.addEvent)(e,"update",F)}},{isTouchDevice:U}=x();function j(){this.navigatorAxis||(this.navigatorAxis=new V(this))}function Y(t){let e,i=this.chart,s=i.options,r=s.navigator,o=this.navigatorAxis,n=i.zooming.pinchType,l=s.rangeSelector,h=i.zooming.type;if(this.isXAxis&&(r?.enabled||l?.enabled)){if("y"===h&&"zoom"===t.trigger)e=!1;else if(("zoom"===t.trigger&&"xy"===h||U&&"xy"===n)&&this.options.range){let e=o.previousZoom;(0,a.defined)(t.min)?o.previousZoom=[this.min,this.max]:e&&(t.min=e[0],t.max=e[1],o.previousZoom=void 0)}}void 0!==e&&t.preventDefault()}class V{static compose(t){t.keepProps.includes("navigatorAxis")||(t.keepProps.push("navigatorAxis"),(0,a.addEvent)(t,"init",j),(0,a.addEvent)(t,"setExtremes",Y))}constructor(t){this.axis=t}destroy(){this.axis=void 0}toFixedRange(t,e,i,s){let r=this.axis,o=(r.pointRange||0)/2,n=i??r.translate(t,!0,!r.horiz),l=s??r.translate(e,!0,!r.horiz);return(0,a.defined)(i)||(n=(0,a.correctFloat)(n+o)),(0,a.defined)(s)||(l=(0,a.correctFloat)(l-o)),(0,a.isNumber)(n)&&(0,a.isNumber)(l)||(n=l=void 0),{min:n,max:l}}}let X=r.default.SeriesRegistry;var _=o.n(X);let{seriesTypes:q}=_(),Z={height:40,margin:22,maskInside:!0,handles:{width:7,borderRadius:0,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:"var(--highcharts-neutral-color-5)",borderColor:"var(--highcharts-neutral-color-40)"},maskFill:"color-mix(in srgb, var(--highcharts-highlight-color-60) 30%, transparent)",outlineColor:"var(--highcharts-neutral-color-40)",outlineWidth:1,series:{type:void 0===q.areaspline?"line":"areaspline",fillOpacity:.05,lineWidth:1,compare:null,sonification:{enabled:!1},dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"var(--highcharts-neutral-color-10)",id:"navigator-x-axis",gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:"var(--highcharts-neutral-color-100)",fontSize:"0.7em",opacity:.6,textOutline:"2px contrast"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,id:"navigator-y-axis",maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:void 0},tickLength:0,tickWidth:0}},{defaultOptions:$}=x(),{noop:K}=x(),J={radius:0,scope:"stack",where:void 0},Q={"navigator-handle":function(t,e,i,s,r={}){var o,n,l,h,d;let c=r.width?r.width/2:i,p=(0,a.relativeLength)((o=r.borderRadius,!(0,a.isObject)(o)&&(o={radius:o||0}),(0,a.merge)(J,void 0,o)).radius,Math.min(2*c,s));return[["M",-1.5,(s=r.height||s)/2-3.5],["L",-1.5,s/2+4.5],["M",.5,s/2-3.5],["L",.5,s/2+4.5],...(n=-c-1,l=2*c+1,h=s,d={r:p},d?.r?function(t,e,i,s,r){let o=r?.r||0;return[["M",t+o,e],["L",t+i-o,e],["A",o,o,0,0,1,t+i,e+o],["L",t+i,e+s-o],["A",o,o,0,0,1,t+i-o,e+s],["L",t+o,e+s],["A",o,o,0,0,1,t,e+s-o],["L",t,e+o],["A",o,o,0,0,1,t+o,e],["Z"]]}(n,.5,l,h,d):[["M",n,.5],["L",n+l,.5],["L",n+l,.5+h],["L",n,.5+h],["Z"]])]}},tt=r.default.SVGRenderer;var te=o.n(tt);let{defaultOptions:ti}=x(),{composed:ts}=x(),{setFixedRange:tr}={setFixedRange:function(t){let e=this.xAxis[0];(0,a.defined)(e.dataMax)&&(0,a.defined)(e.dataMin)&&t?this.fixedRange=Math.min(t,e.dataMax-e.dataMin):this.fixedRange=t}};function to(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}let ta=function(t,e,i){V.compose(e),(0,a.pushUnique)(ts,"Navigator")&&(t.prototype.setFixedRange=tr,(0,a.extend)(te().prototype.symbols,Q),(0,a.extend)(ti,{navigator:Z}),(0,a.addEvent)(i,"afterUpdate",to))},{composed:tn}=x();!function(t){let e;function i(t){let e=t.options?.min??t.min,i=t.options?.max??t.max;return{axisMin:e,axisMax:i,scrollMin:(0,a.defined)(t.dataMin)?Math.min(e,t.min??1/0,t.dataMin,t.threshold??1/0):e,scrollMax:t.treeGrid?.adjustedMax??((0,a.defined)(t.dataMax)?Math.max(i,t.max??-1/0,t.dataMax,t.threshold??-1/0):i)}}function s(){let t=this.scrollbar,e=t&&!t.options.opposite,i=this.horiz?2:e?3:1;t&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[i]+=t.size+(t.options.margin||0))}function r(){let t=this;t.options?.scrollbar?.enabled&&(t.options.scrollbar.vertical=!t.horiz,t.options.startOnTick=t.options.endOnTick=!1,t.scrollbar=new e(t.chart.renderer,t.options.scrollbar,t.chart),(0,a.addEvent)(t.scrollbar,"changed",function(e){let s,r,{axisMin:o,axisMax:n,scrollMin:l,scrollMax:h}=i(t),d=t.toPixels(l),c=t.toPixels(h)-d;if((0,a.defined)(o)&&(0,a.defined)(n))if(t.horiz&&!t.reversed||!t.horiz&&t.reversed?(s=Math.min(h,t.toValue(d+c*this.to)),r=Math.max(l,t.toValue(d+c*this.from))):(s=Math.min(h,t.toValue(d+c*(1-this.from))),r=Math.max(l,t.toValue(d+c*(1-this.to)))),this.shouldUpdateExtremes(e.DOMType)){let i="mousemove"!==e.DOMType&&"touchmove"!==e.DOMType&&void 0;t.setExtremes((0,a.correctFloat)(r),(0,a.correctFloat)(s),!0,i,e)}else this.setRange(this.from,this.to)}))}function o(){let t,e,s,{scrollMin:r,scrollMax:o}=i(this),n=this.scrollbar,l=(this.axisTitleMargin||0)+(this.titleOffset||0),h=this.chart.scrollbarsOffsets,d=this.options.margin||0;if(n&&h){if(this.horiz)this.opposite||(h[1]+=l),n.position(this.left,this.top+this.height+2+h[1]-(this.opposite?d:0),this.width,this.height),this.opposite||(h[1]+=d),t=1;else{let e;this.opposite&&(h[0]+=l),e=n.options.opposite?this.left+this.width+2+h[0]-(this.opposite?0:d):this.opposite?0:d,n.position(e,this.top,this.width,this.height),this.opposite&&(h[0]+=d),t=0}if(h[t]+=n.size+(n.options.margin||0),isNaN(r)||isNaN(o)||!(0,a.defined)(this.min)||!(0,a.defined)(this.max)||(0,a.defined)(this.dataMin)&&this.dataMin===this.dataMax)n.setRange(0,1);else if(this.min===this.max){let t=this.pointRange/(this.dataMax+1);e=t*this.min,s=t*(this.max+1),n.setRange(e,s)}else e=(this.toPixels(this.min)-this.toPixels(r))/(this.toPixels(o)-this.toPixels(r)),s=(this.toPixels(this.max)-this.toPixels(r))/(this.toPixels(o)-this.toPixels(r)),this.horiz&&!this.reversed||!this.horiz&&this.reversed?n.setRange(e,s):n.setRange(1-s,1-e)}}t.compose=function(t,i){(0,a.pushUnique)(tn,"Axis.Scrollbar")&&(e=i,(0,a.addEvent)(t,"afterGetOffset",s),(0,a.addEvent)(t,"afterInit",r),(0,a.addEvent)(t,"afterRender",o))}}(c||(c={}));let tl=c,th={height:10,barBorderRadius:5,buttonBorderRadius:0,buttonsEnabled:!1,liveRedraw:void 0,margin:void 0,minWidth:6,opposite:!0,step:.2,zIndex:3,barBackgroundColor:"var(--highcharts-neutral-color-20)",barBorderWidth:0,barBorderColor:"var(--highcharts-neutral-color-20)",buttonArrowColor:"var(--highcharts-neutral-color-80)",buttonBackgroundColor:"var(--highcharts-neutral-color-10)",buttonBorderColor:"var(--highcharts-neutral-color-20)",buttonBorderWidth:1,rifleColor:"none",trackBackgroundColor:"rgba(255, 255, 255, 0.001)",trackBorderColor:"var(--highcharts-neutral-color-20)",trackBorderRadius:5,trackBorderWidth:1},{defaultOptions:td}=x(),{composed:tc}=x();class tp{static compose(t){tl.compose(t,tp),(0,a.pushUnique)(tc,"Scrollbar")&&(0,a.extend)(td,{scrollbar:th})}static swapXY(t,e){return e&&t.forEach(t=>{let e,i=t.length;for(let s=0;s<i;s+=2)"number"==typeof(e=t[s+1])&&(t[s+1]=t[s+2],t[s+2]=e)}),t}constructor(t,e,i){this._events=[],this.chartX=0,this.chartY=0,this.from=0,this.scrollbarButtons=[],this.scrollbarLeft=0,this.scrollbarStrokeWidth=1,this.scrollbarTop=0,this.size=0,this.to=0,this.trackBorderWidth=1,this.x=0,this.y=0,this.init(t,e,i)}addEvents(){let t=this.options.inverted?[1,0]:[0,1],e=this.scrollbarButtons,i=this.scrollbarGroup.element,s=this.track.element,r=this.mouseDownHandler.bind(this),o=this.mouseMoveHandler.bind(this),n=this.mouseUpHandler.bind(this),l=[[e[t[0]].element,"click",this.buttonToMinClick.bind(this)],[e[t[1]].element,"click",this.buttonToMaxClick.bind(this)],[s,"click",this.trackClick.bind(this)],[i,"mousedown",r],[i.ownerDocument,"mousemove",o],[i.ownerDocument,"mouseup",n],[i,"touchstart",r],[i.ownerDocument,"touchmove",o],[i.ownerDocument,"touchend",n]];l.forEach(function(t){a.addEvent.apply(null,t)}),this._events=l}buttonToMaxClick(t){let e=(this.to-this.from)*(this.options.step??.2);this.updatePosition(this.from+e,this.to+e),(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})}buttonToMinClick(t){let e=(0,a.correctFloat)(this.to-this.from)*(this.options.step??.2);this.updatePosition((0,a.correctFloat)(this.from-e),(0,a.correctFloat)(this.to-e)),(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})}cursorToScrollbarPosition(t){let e=this.options,i=e.minWidth>this.calculatedWidth?e.minWidth:0;return{chartX:(t.chartX-this.x-this.xOffset)/(this.barWidth-i),chartY:(t.chartY-this.y-this.yOffset)/(this.barWidth-i)}}destroy(){let t=this,e=t.chart.scroller;t.removeEvents(),["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(e){t[e]&&t[e].destroy&&(t[e]=t[e].destroy())}),e&&t===e.scrollbar&&(e.scrollbar=null,(0,a.destroyObjectProperties)(e.scrollbarButtons))}drawScrollbarButton(t){let e=this.renderer,i=this.scrollbarButtons,s=this.options,r=this.size,o=e.g().add(this.group);if(i.push(o),s.buttonsEnabled){let a=e.rect().addClass("highcharts-scrollbar-button").add(o);this.chart.styledMode||a.attr({stroke:s.buttonBorderColor,"stroke-width":s.buttonBorderWidth,fill:s.buttonBackgroundColor}),a.attr(a.crisp({x:-.5,y:-.5,width:r,height:r,r:s.buttonBorderRadius},a.strokeWidth()));let n=e.path(tp.swapXY([["M",r/2+(t?-1:1),r/2-3],["L",r/2+(t?-1:1),r/2+3],["L",r/2+(t?2:-2),r/2]],s.vertical)).addClass("highcharts-scrollbar-arrow").add(i[t]);this.chart.styledMode||n.attr({fill:s.buttonArrowColor})}}init(t,e,i){this.scrollbarButtons=[],this.renderer=t,this.userOptions=e,this.options=(0,a.merge)(th,td.scrollbar,e),this.options.margin=this.options.margin??10,this.chart=i,this.size=this.options.size??this.options.height,e.enabled&&(this.render(),this.addEvents())}mouseDownHandler(t){let e=this.chart.pointer?.normalize(t)||t,i=this.cursorToScrollbarPosition(e);this.chartX=i.chartX,this.chartY=i.chartY,this.initPositions=[this.from,this.to],this.grabbedCenter=!0}mouseMoveHandler(t){let e,i=this.chart.pointer?.normalize(t)||t,s=this.options.vertical?"chartY":"chartX",r=this.initPositions||[];this.grabbedCenter&&(!t.touches||0!==t.touches[0][s])&&(e=this.cursorToScrollbarPosition(i)[s]-this[s],this.hasDragged=!0,this.updatePosition(r[0]+e,r[1]+e),this.hasDragged&&(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:t.type,DOMEvent:t}))}mouseUpHandler(t){this.hasDragged&&(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:t.type,DOMEvent:t}),this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null}position(t,e,i,s){let{buttonsEnabled:r,margin:o=0,vertical:a}=this.options,n=this.rendered?"animate":"attr",l=s,h=0;this.group.show(),this.x=t,this.y=e+this.trackBorderWidth,this.width=i,this.height=s,this.xOffset=l,this.yOffset=h,a?(this.width=this.yOffset=i=h=this.size,this.xOffset=l=0,this.yOffset=h=r?this.size:0,this.barWidth=s-(r?2*i:0),this.x=t+=o):(this.height=s=this.size,this.xOffset=l=r?this.size:0,this.barWidth=i-(r?2*s:0),this.y=this.y+o),this.group[n]({translateX:t,translateY:this.y}),this.track[n]({width:i,height:s}),this.scrollbarButtons[1][n]({translateX:a?0:i-l,translateY:a?s-h:0})}removeEvents(){this._events.forEach(function(t){a.removeEvent.apply(null,t)}),this._events.length=0}render(){let t=this.renderer,e=this.options,i=this.size,s=this.chart.styledMode,r=t.g("scrollbar").attr({zIndex:e.zIndex}).hide().add();this.group=r,this.track=t.rect().addClass("highcharts-scrollbar-track").attr({r:e.trackBorderRadius||0,height:i,width:i}).add(r),s||this.track.attr({fill:e.trackBackgroundColor,stroke:e.trackBorderColor,"stroke-width":e.trackBorderWidth});let o=this.trackBorderWidth=this.track.strokeWidth();this.track.attr({x:-(0,a.crisp)(0,o),y:-(0,a.crisp)(0,o)}),this.scrollbarGroup=t.g().add(r),this.scrollbar=t.rect().addClass("highcharts-scrollbar-thumb").attr({height:i-o,width:i-o,r:e.barBorderRadius||0}).add(this.scrollbarGroup),this.scrollbarRifles=t.path(tp.swapXY([["M",-3,i/4],["L",-3,2*i/3],["M",0,i/4],["L",0,2*i/3],["M",3,i/4],["L",3,2*i/3]],e.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup),s||(this.scrollbar.attr({fill:e.barBackgroundColor,stroke:e.barBorderColor,"stroke-width":e.barBorderWidth}),this.scrollbarRifles.attr({stroke:e.rifleColor,"stroke-width":1})),this.scrollbarStrokeWidth=this.scrollbar.strokeWidth(),this.scrollbarGroup.translate(-(0,a.crisp)(0,this.scrollbarStrokeWidth),-(0,a.crisp)(0,this.scrollbarStrokeWidth)),this.drawScrollbarButton(0),this.drawScrollbarButton(1)}setRange(t,e){let i,s,r=this.options,o=r.vertical,n=r.minWidth,l=this.barWidth,h=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(!(0,a.defined)(l))return;let d=l*Math.min(e,1);i=Math.ceil(l*(t=Math.max(t,0))),this.calculatedWidth=s=(0,a.correctFloat)(d-i),s<n&&(i=(l-n+s)*t,s=n);let c=Math.floor(i+this.xOffset+this.yOffset),p=s/2-.5;this.from=t,this.to=e,o?(this.scrollbarGroup[h]({translateY:c}),this.scrollbar[h]({height:s}),this.scrollbarRifles[h]({translateY:p}),this.scrollbarTop=c,this.scrollbarLeft=0):(this.scrollbarGroup[h]({translateX:c}),this.scrollbar[h]({width:s}),this.scrollbarRifles[h]({translateX:p}),this.scrollbarLeft=c,this.scrollbarTop=0),s<=12?this.scrollbarRifles.hide():this.scrollbarRifles.show(),!1===r.showFull&&(t<=0&&e>=1?this.group.hide():this.group.show()),this.rendered=!0}shouldUpdateExtremes(t){return(this.options.liveRedraw??(x().svg&&!x().isTouchDevice&&!this.chart.boosted))||"mouseup"===t||"touchend"===t||!(0,a.defined)(t)}trackClick(t){let e=this.chart.pointer?.normalize(t)||t,i=this.to-this.from,s=this.y+this.scrollbarTop,r=this.x+this.scrollbarLeft;this.options.vertical&&e.chartY>s||!this.options.vertical&&e.chartX>r?this.updatePosition(this.from+i,this.to+i):this.updatePosition(this.from-i,this.to-i),(0,a.fireEvent)(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})}update(t){this.destroy(),this.init(this.chart.renderer,(0,a.merge)(!0,this.options,t),this.chart)}updatePosition(t,e){e>1&&(t=(0,a.correctFloat)(1-(0,a.correctFloat)(e-t)),e=1),t<0&&(e=(0,a.correctFloat)(e-t),t=0),this.from=t,this.to=e}}tp.defaultOptions=th;let{defaultOptions:tu}=x(),{isTouchDevice:tg}=x();function tx(t,...e){let i=[].filter.call(e,a.isNumber);if(i.length)return Math[t].apply(0,i)}class tm{static compose(t,e,i){H(t,tm),ta(t,e,i)}constructor(t){this.isDirty=!1,this.scrollbarHeight=0,this.init(t)}drawHandle(t,e,i,s){let r=this.navigatorOptions.handles.height;this.handles[e][s](i?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(t,10)+.5-r)}:{translateX:Math.round(this.left+parseInt(t,10)),translateY:Math.round(this.top+this.height/2-r/2-1)})}drawOutline(t,e,i,s){let r=this.navigatorOptions.maskInside,o=this.outline.strokeWidth(),a=o/2,n=o%2/2,l=this.scrollButtonSize,h=this.size,d=this.top,c=this.height,p=d-a,u=d+c,g=this.left,x,m;i?(x=d+e+n,e=d+t+n,m=[["M",g+c,d-l-n],["L",g+c,x],["L",g,x],["M",g,e],["L",g+c,e],["L",g+c,d+h+l]],r&&m.push(["M",g+c,x-a],["L",g+c,e+a])):(g-=l,t+=g+l-n,e+=g+l-n,m=[["M",g,p],["L",t,p],["L",t,u],["M",e,u],["L",e,p],["L",g+h+2*l,p]],r&&m.push(["M",t-a,p],["L",e+a,p])),this.outline[s]({d:m})}drawMasks(t,e,i,s){let r,o,a,n,l=this.left,h=this.top,d=this.height;i?(a=[l,l,l],n=[h,h+t,h+e],o=[d,d,d],r=[t,e-t,this.size-e]):(a=[l,l+t,l+e],n=[h,h,h],o=[t,e-t,this.size-e],r=[d,d,d]),this.shades.forEach((t,e)=>{t[s]({x:a[e],y:n[e],width:o[e],height:r[e]})})}renderElements(){let t=this,e=t.navigatorOptions,i=e.maskInside,s=t.chart,r=s.inverted,o=s.renderer,a={cursor:r?"ns-resize":"ew-resize"},n=t.navigatorGroup??(t.navigatorGroup=o.g("navigator").attr({zIndex:8,visibility:"hidden"}).add());if([!i,i,!i].forEach((i,r)=>{let l=t.shades[r]??(t.shades[r]=o.rect().addClass("highcharts-navigator-mask"+(1===r?"-inside":"-outside")).add(n));s.styledMode||(l.attr({fill:i?e.maskFill:"rgba(0,0,0,0)"}),1===r&&l.css(a))}),t.outline||(t.outline=o.path().addClass("highcharts-navigator-outline").add(n)),s.styledMode||t.outline.attr({"stroke-width":e.outlineWidth,stroke:e.outlineColor}),e.handles?.enabled){let i=!1,r=e.handles,{height:l,width:h}=r;[0,1].forEach(e=>{let d=r.symbols[e];(i=i||t.handles[e]?.symbolName!==d)&&(t.handles[e]?.destroy(),t.handles[e]=o.symbol(d,-h/2-1,0,h,l,r),t.handles[e].attr({zIndex:7-e}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][e]).add(n)),s.inverted&&t.handles[e].attr({rotation:90,rotationOriginX:Math.floor(-h/2),rotationOriginY:(l+h)/2}),s.styledMode||t.handles[e].attr({fill:r.backgroundColor,stroke:r.borderColor,"stroke-width":r.lineWidth,width:r.width,height:r.height,x:-h/2-1,y:0}).css(a)}),i&&(t.partsEventsToUnbind?.forEach(t=>{t()}),t.partsEventsToUnbind=[...t.getPartsEvents("mousedown"),...t.getPartsEvents("touchstart")])}}update(t,e=!1){let i=this.chart,s=i.options.chart.inverted!==i.scrollbar?.options.vertical;if((0,a.merge)(!0,i.options.navigator,t),this.navigatorOptions=i.options.navigator||{},this.setOpposite(),(0,a.defined)(t.enabled)||s)return this.destroy(),this.navigatorEnabled=t.enabled||this.navigatorEnabled,this.init(i);if(this.navigatorEnabled&&(this.isDirty=!0,!1===t.adaptToUpdatedData&&this.baseSeries.forEach(t=>{(0,a.removeEvent)(t,"updatedData",this.updatedDataHandler)},this),t.adaptToUpdatedData&&this.baseSeries.forEach(t=>{t.eventsToUnbind.push((0,a.addEvent)(t,"updatedData",this.updatedDataHandler))},this),(t.series||t.baseSeries)&&this.setBaseSeries(void 0,!1),t.height||t.xAxis||t.yAxis)){this.height=t.height??this.height;let e=this.getXAxisOffsets();this.xAxis.update({...t.xAxis,offsets:e,[i.inverted?"width":"height"]:this.height,[i.inverted?"height":"width"]:void 0},!1),this.yAxis.update({...t.yAxis,[i.inverted?"width":"height"]:this.height},!1)}e&&i.redraw()}render(t,e,i,s){let r=this.chart,o=this.xAxis,n=o.pointRange||0,l=o.navigatorAxis.fake?r.xAxis[0]:o,h=this.navigatorEnabled,d=this.rendered,c=r.inverted,p=r.xAxis[0].minRange,u=r.xAxis[0].options.maxRange,g=this.scrollButtonSize,x,m,f,b=this.scrollbarHeight,v,y;if(this.hasDragged&&!(0,a.defined)(i))return;if(this.isDirty&&this.renderElements(),t=(0,a.correctFloat)(t-n/2),e=(0,a.correctFloat)(e+n/2),!(0,a.isNumber)(t)||!(0,a.isNumber)(e))if(!d)return;else i=0,s=o.width??l.width;this.left=o.left??r.plotLeft+g+(c?r.plotWidth:0);let M=this.size=v=o.len??(c?r.plotHeight:r.plotWidth)-2*g;x=c?b:v+2*g,i=i??o.toPixels(t,!0),s=s??o.toPixels(e,!0),(0,a.isNumber)(i)&&Math.abs(i)!==1/0||(i=0,s=x);let k=o.toValue(i,!0),E=o.toValue(s,!0),A=Math.abs((0,a.correctFloat)(E-k));(0,a.defined)(p)&&A<p?this.grabbedLeft?i=o.toPixels(E-p-n,!0):this.grabbedRight&&(s=o.toPixels(k+p+n,!0)):(0,a.defined)(u)&&(0,a.correctFloat)(A-n)>u&&(this.grabbedLeft?i=o.toPixels(E-u-n,!0):this.grabbedRight&&(s=o.toPixels(k+u+n,!0))),this.zoomedMax=(0,a.clamp)(Math.max(i,s),0,M),this.zoomedMin=(0,a.clamp)(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(i,s),0,M),this.range=this.zoomedMax-this.zoomedMin,M=Math.round(this.zoomedMax);let w=Math.round(this.zoomedMin);h&&(this.navigatorGroup.attr({visibility:"inherit"}),y=d&&!this.hasDragged?"animate":"attr",this.drawMasks(w,M,c,y),this.drawOutline(w,M,c,y),this.navigatorOptions.handles?.enabled&&(this.drawHandle(w,0,c,y),this.drawHandle(M,1,c,y))),this.scrollbar&&(c?(f=this.top-g,m=this.left-b+(h||!l.opposite?0:(l.titleOffset||0)+l.axisTitleMargin),b=v+2*g):(f=this.top+(h?this.height:-b),m=this.left-g),this.scrollbar.position(m,f,x,b),this.scrollbar.setRange(this.zoomedMin/(v||1),this.zoomedMax/(v||1))),this.rendered=!0,this.isDirty=!1,(0,a.fireEvent)(this,"afterRender")}addMouseEvents(){let t,e,i=this,s=i.chart,r=s.container,o=[];i.mouseMoveHandler=t=function(t){i.onMouseMove(t)},i.mouseUpHandler=e=function(t){i.onMouseUp(t)},o.push((0,a.addEvent)(s.renderTo,"mousemove",t),(0,a.addEvent)(r.ownerDocument,"mouseup",e),(0,a.addEvent)(s.renderTo,"touchmove",t),(0,a.addEvent)(r.ownerDocument,"touchend",e)),i.eventsToUnbind=o,i.series&&i.series[0]&&o.push((0,a.addEvent)(i.series[0].xAxis,"foundExtremes",function(){s.navigator?.modifyNavigatorAxisExtremes()}))}getPartsEvents(t){let e=this,i=[];return["shades","handles"].forEach(s=>{e[s].forEach(function(r,o){i.push((0,a.addEvent)(r.element,t,function(t){e[`${s}Mousedown`](t,o)}))})}),i}shadesMousedown(t,e){t=this.chart.pointer?.normalize(t)||t;let i=this.chart,s=this.xAxis,r=this.zoomedMin,o=this.size,n=this.range,l=this.left,h=t.chartX,d,c,p,u;i.inverted&&(h=t.chartY,l=this.top),1===e?(this.grabbedCenter=h,this.fixedWidth=n,this.dragOffset=h-r):(u=h-l-n/2,0===e?u=Math.max(0,u):2===e&&u+n>=o&&(u=o-n,this.reversedExtremes?(u-=n,c=this.getUnionExtremes()?.dataMin):d=this.getUnionExtremes()?.dataMax),u!==r&&(this.fixedWidth=n,p=s.navigatorAxis.toFixedRange(u,u+n,c,d),(0,a.defined)(p.min)&&(0,a.fireEvent)(this,"setRange",{min:Math.min(p.min,p.max),max:Math.max(p.min,p.max),redraw:!0,eventArguments:{trigger:"navigator"}})))}handlesMousedown(t,e){t=this.chart.pointer?.normalize(t)||t;let i=this.chart,s=i.xAxis[0],r=this.reversedExtremes;0===e?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=r?s.min:s.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=r?s.max:s.min),i.setFixedRange(void 0)}onMouseMove(t){let e=this,i=e.chart,s=e.navigatorSize,r=e.range,o=e.dragOffset,a=i.inverted,n=e.left,l;(!t.touches||0!==t.touches[0].pageX)&&(l=(t=i.pointer?.normalize(t)||t).chartX,a&&(n=e.top,l=t.chartY),e.grabbedLeft?(e.hasDragged=!0,e.render(0,0,l-n,e.otherHandlePos)):e.grabbedRight?(e.hasDragged=!0,e.render(0,0,e.otherHandlePos,l-n)):e.grabbedCenter&&o&&(e.hasDragged=!0,l<o?l=o:l>s+o-r&&(l=s+o-r),e.render(0,0,l-o,l-o+r)),e.hasDragged&&(e.scrollbarOptions?.liveRedraw??(!tg&&!this.chart.boosted))&&(t.DOMType=t.type,setTimeout(function(){e.onMouseUp(t)},0)))}onMouseUp(t){let e,i,s,r,o,n,l=this.chart,h=this.xAxis,d=this.scrollbar,c=t.DOMEvent||t,p=l.inverted,u=this.rendered&&!this.hasDragged?"animate":"attr";(this.hasDragged&&(!d||!d.hasDragged)||"scrollbar"===t.trigger)&&(s=this.getUnionExtremes(),this.zoomedMin===this.otherHandlePos?r=this.fixedExtreme:this.zoomedMax===this.otherHandlePos&&(o=this.fixedExtreme),this.zoomedMax===this.size&&(o=this.reversedExtremes?s.dataMin:s.dataMax),0===this.zoomedMin&&(r=this.reversedExtremes?s.dataMax:s.dataMin),n=h.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,r,o),(0,a.defined)(n.min)&&(0,a.fireEvent)(this,"setRange",{min:Math.min(n.min,n.max),max:Math.max(n.min,n.max),redraw:!0,animation:!this.hasDragged&&null,eventArguments:{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:c}})),"mousemove"!==t.DOMType&&"touchmove"!==t.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null),this.navigatorEnabled&&(0,a.isNumber)(this.zoomedMin)&&(0,a.isNumber)(this.zoomedMax)&&(i=Math.round(this.zoomedMin),e=Math.round(this.zoomedMax),this.shades&&this.drawMasks(i,e,p,u),this.outline&&this.drawOutline(i,e,p,u),this.navigatorOptions.handles?.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(i,0,p,u),this.drawHandle(e,1,p,u)))}removeEvents(){this.eventsToUnbind?.forEach(t=>{t()}),this.eventsToUnbind=void 0,this.removeBaseSeriesEvents()}removeBaseSeriesEvents(){let t=this.baseSeries||[];this.navigatorEnabled&&t[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&t.forEach(function(t){(0,a.removeEvent)(t,"updatedData",this.updatedDataHandler)},this),t[0].xAxis&&(0,a.removeEvent)(t[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))}getXAxisOffsets(){return this.chart.inverted?[this.scrollButtonSize,0,-this.scrollButtonSize,0]:[0,-this.scrollButtonSize,0,this.scrollButtonSize]}init(t){let e=t.options,i=e.navigator||{},s=i.enabled,r=e.scrollbar||{},o=r.enabled,n=s&&i.height||0,l=o&&r.height||0,h=r.buttonsEnabled&&l||0;this.handles=[],this.shades=[],this.chart=t,this.setBaseSeries(),this.height=n,this.scrollbarHeight=l,this.scrollButtonSize=h,this.scrollbarEnabled=o,this.navigatorEnabled=!!s,this.navigatorOptions=i,this.scrollbarOptions=r,this.setOpposite();let d=this,c=d.baseSeries,p=t.xAxis.length,u=t.yAxis.length,g=c&&c[0]&&c[0].xAxis||t.xAxis[0]||{options:{}};if(t.isDirtyBox=!0,d.navigatorEnabled){let e=this.getXAxisOffsets();d.xAxis=new(N())(t,(0,a.merge)({breaks:g.options.breaks,ordinal:g.options.ordinal,overscroll:g.options.overscroll},i.xAxis,{type:"datetime",yAxis:i.yAxis?.id,index:p,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:g.options.ordinal?0:g.options.minPadding,maxPadding:g.options.ordinal?0:g.options.maxPadding,zoomEnabled:!1},t.inverted?{offsets:e,width:n}:{offsets:e,height:n}),"xAxis"),d.yAxis=new(N())(t,(0,a.merge)(i.yAxis,{alignTicks:!1,offset:0,index:u,isInternal:!0,reversed:(i.yAxis&&i.yAxis.reversed)??(t.yAxis[0]&&t.yAxis[0].reversed)??!1,zoomEnabled:!1},t.inverted?{width:n}:{height:n}),"yAxis"),d.xAxis.clippable=!1,d.yAxis.clippable=!1,c||i.series?.data||i.series?.dataTable?d.updateNavigatorSeries(!1):0===t.series.length&&(d.unbindRedraw=(0,a.addEvent)(t,"beforeRedraw",function(){t.series.length>0&&!d.series&&(d.setBaseSeries(),d.unbindRedraw?.())})),d.reversedExtremes=t.inverted&&!d.xAxis.reversed||!t.inverted&&d.xAxis.reversed,d.renderElements(),d.addMouseEvents()}else d.xAxis={chart:t,navigatorAxis:{fake:!0},translate:function(e,i){let s=t.xAxis[0],r=s.getExtremes(),o=s.len-2*h,a=tx("min",s.options.min,r.dataMin),n=tx("max",s.options.max,r.dataMax)-a;return i?e*n/o+a:o*(e-a)/n},toPixels:function(t){return this.translate(t)},toValue:function(t){return this.translate(t,!0)}},d.xAxis.navigatorAxis.axis=d.xAxis,d.xAxis.navigatorAxis.toFixedRange=V.prototype.toFixedRange.bind(d.xAxis.navigatorAxis);if(t.options.scrollbar?.enabled){let e=(0,a.merge)(t.options.scrollbar,{vertical:t.inverted});(0,a.isNumber)(e.margin)||(e.margin=t.inverted?-3:3),t.scrollbar=d.scrollbar=new tp(t.renderer,e,t),(0,a.addEvent)(d.scrollbar,"changed",function(t){let e=d.size,i=e*this.to,s=e*this.from;d.hasDragged=d.scrollbar?.hasDragged,d.render(0,0,s,i),this.shouldUpdateExtremes(t.DOMType)&&setTimeout(function(){d.onMouseUp(t)})})}d.addBaseSeriesEvents(),d.addChartEvents()}setOpposite(){let t=this.navigatorOptions,e=this.navigatorEnabled,i=this.chart;this.opposite=t.opposite??!!(!e&&i.inverted)}getUnionExtremes(t){let e,i=this.chart.xAxis[0],s=this.chart.time,r=this.xAxis,o=r.options,a=i.options;return t&&null===i.dataMin||(e={dataMin:s.parse(o?.min)??tx("min",s.parse(a.min),i.dataMin,r.dataMin,r.min),dataMax:s.parse(o?.max)??tx("max",s.parse(a.max),i.dataMax,r.dataMax,r.max)}),e}setBaseSeries(t,e){let i=this.chart,s=this.baseSeries=[];t=t||i.options.navigator?.baseSeries||(i.series.length?(0,a.find)(i.series,t=>!t.options.isInternal).index:0),(i.series||[]).forEach((e,i)=>{!e.options.isInternal&&(e.options.showInNavigator||(i===t||e.options.id===t)&&!1!==e.options.showInNavigator)&&s.push(e)}),this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,e)}updateNavigatorSeries(t,e){let i=this,s=i.chart,r=i.baseSeries,o={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:this.navigatorOptions.xAxis?.id,yAxis:this.navigatorOptions.yAxis?.id,showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},n=i.series=(i.series||[]).filter(t=>{let e=t.baseSeries;return!(e&&0>r.indexOf(e))||(e&&((0,a.removeEvent)(e,"updatedData",i.updatedDataHandler),delete e.navigatorSeries),t.chart&&t.destroy(),!1)}),l,h,d=i.navigatorOptions.series,c;if(r&&r.length&&r.forEach(t=>{let p=t.navigatorSeries,u=(0,a.extend)({color:t.color,visible:t.visible},(0,a.isArray)(d)?tu.navigator.series:d);if(p&&!1===i.navigatorOptions.adaptToUpdatedData)return;o.name="Navigator "+r.length,c=(l=t.options||{}).navigatorOptions||{},u.dataLabels=(0,a.splat)(u.dataLabels),(h=(0,a.merge)(l,o,u,c)).pointRange=u.pointRange??c.pointRange??tu.plotOptions[h.type||"line"]?.pointRange;let g=c.data||u.data,x=c.dataTable||u.dataTable;i.hasNavigatorData=i.hasNavigatorData||!!g||!!x,h.data=g||l.data?.slice(0),h.dataTable=x||l.dataTable,p&&p.options?p.update(h,e):(t.navigatorSeries=s.initSeries(h),(0,a.fireEvent)(t.navigatorSeries,"afterUpdate"),t.navigatorSeries.baseSeries=t,n.push(t.navigatorSeries))}),(d?.data||d?.dataTable)&&!(r&&r.length)||(0,a.isArray)(d)){let t=s.options.colors||[];i.hasNavigatorData=!1,(d=(0,a.splat)(d)).forEach((e,r)=>{o.name="Navigator "+(n.length+1),(h=(0,a.merge)(tu.navigator?.series,{color:s.series[r]&&!s.series[r].options.isInternal&&s.series[r].color||t[r]||t[0]},o,e)).data=e.data,h.dataTable=e.dataTable,(h.data||h.dataTable)&&(i.hasNavigatorData=!0,n.push(s.initSeries(h)))})}t&&this.addBaseSeriesEvents()}addBaseSeriesEvents(){let t=this,e=t.baseSeries||[];e[0]&&e[0].xAxis&&e[0].eventsToUnbind.push((0,a.addEvent)(e[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes)),e.forEach(i=>{i.eventsToUnbind.push((0,a.addEvent)(i,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)})),i.eventsToUnbind.push((0,a.addEvent)(i,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)})),!1!==this.navigatorOptions.adaptToUpdatedData&&i.xAxis&&i.eventsToUnbind.push((0,a.addEvent)(i,"updatedData",this.updatedDataHandler)),i.eventsToUnbind.push((0,a.addEvent)(i,"remove",function(){e&&(0,a.erase)(e,i),this.navigatorSeries&&t.series&&((0,a.erase)(t.series,this.navigatorSeries),(0,a.defined)(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))})}getBaseSeriesMin(t){return this.baseSeries.reduce(function(t,e){return Math.min(t,e.getColumn("x")[0]??t)},t)}modifyNavigatorAxisExtremes(){let t=this.xAxis;if(void 0!==t.getExtremes){let e=this.getUnionExtremes(!0);e&&(e.dataMin!==t.min||e.dataMax!==t.max)&&(t.min=e.dataMin,t.max=e.dataMax)}}modifyBaseAxisExtremes(){let t,e,i=this.chart.navigator,s=this.getExtremes(),r=s.min,o=s.max,n=s.dataMin,l=s.dataMax,h=o-r,d=i?.stickToMin,c=i?.stickToMax,p=this.ordinal?.convertOverscroll(this.options.overscroll)??0,u=i.series&&i.series[0],g=!!this.setExtremes;!(this.eventArgs&&"rangeSelectorButton"===this.eventArgs.trigger)&&(d&&(t=(e=n)+h),c&&(t=l+p,d||(e=Math.max(n,t-h,i.getBaseSeriesMin(u&&u.xData?u.xData[0]:-Number.MAX_VALUE)))),g&&(d||c)&&(0,a.isNumber)(e)&&(this.min=this.userMin=e,this.max=this.userMax=t)),i.stickToMin=i.stickToMax=null}updatedDataHandler(){let t=this.chart.navigator,e=this.navigatorSeries,i=t.reversedExtremes?0===Math.round(t.zoomedMin):Math.round(t.zoomedMax)>=Math.round(t.size);t.stickToMax=(this.chart.options.navigator&&this.chart.options.navigator.stickToMax)??i,t.stickToMin=t.shouldStickToMin(this,t),e&&!t.hasNavigatorData&&(e.options.pointStart=this.getColumn("x")[0],e.setData(this.options.data||this.options.dataTable,!1,void 0,!1))}shouldStickToMin(t,e){let i=e.getBaseSeriesMin(t.getColumn("x")[0]),s=t.xAxis,r=s.max,o=s.min,n=s.options.range;return!!((0,a.isNumber)(r)&&(0,a.isNumber)(o))&&(n&&r-i>0?r-i<n:o<=i)}addChartEvents(){this.eventsToUnbind||(this.eventsToUnbind=[]),this.eventsToUnbind.push((0,a.addEvent)(this.chart,"redraw",function(){let t=this.navigator,e=t&&(t.baseSeries&&t.baseSeries[0]&&t.baseSeries[0].xAxis||this.xAxis[0]);e&&t.render(e.min,e.max)}),(0,a.addEvent)(this.chart,"getMargins",function(){let t=this.navigator,e=t.opposite?"plotTop":"marginBottom";this.inverted&&(e=t.opposite?"marginRight":"plotLeft"),this[e]=(this[e]||0)+(t.navigatorEnabled||!this.inverted?t.height+(this.scrollbar?.options.margin||0)+t.scrollbarHeight:0)+(t.navigatorOptions.margin||0)}),(0,a.addEvent)(this,"setRange",function(t){this.chart.xAxis[0].setExtremes(t.min,t.max,t.redraw,t.animation,t.eventArguments)}))}destroy(){this.removeEvents(),this.xAxis&&((0,a.erase)(this.chart.xAxis,this.xAxis),(0,a.erase)(this.chart.axes,this.xAxis)),this.yAxis&&((0,a.erase)(this.chart.yAxis,this.yAxis),(0,a.erase)(this.chart.axes,this.yAxis)),(this.series||[]).forEach(t=>{t.destroy&&t.destroy()}),["series","xAxis","yAxis","shades","outline","scrollbarTrack","scrollbarRifles","scrollbarGroup","scrollbar","navigatorGroup","rendered"].forEach(t=>{this[t]&&this[t].destroy&&this[t].destroy(),this[t]=null}),[this.handles].forEach(t=>{(0,a.destroyObjectProperties)(t)}),this.baseSeries.forEach(t=>{t.navigatorSeries=void 0}),this.navigatorEnabled=!1}}let tf={rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"→",rangeSelector:{allText:"All",allTitle:"View all",monthText:"{count}m",monthTitle:"View {count} {#eq count 1}month{else}months{/eq}",yearText:"{count}y",yearTitle:"View {count} {#eq count 1}year{else}years{/eq}",ytdText:"YTD",ytdTitle:"View year to date"}},tb={allButtonsEnabled:!1,buttons:[{type:"month",count:1},{type:"month",count:3},{type:"month",count:6},{type:"ytd"},{type:"year",count:1},{type:"all"}],buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,inputBoxWidth:void 0,inputDateFormat:"%[ebY]",inputDateParser:void 0,inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:"var(--highcharts-highlight-color-80)",cursor:"pointer",fontSize:"0.8em"},labelStyle:{color:"var(--highcharts-neutral-color-60)",fontSize:"0.8em"}},{defaultOptions:tv}=x(),{composed:ty}=x(),tM=[];function tk(){let t,e,i=this.range,s=i.type,r=this.max,o=this.chart.time,n=function(t,e){let i=o.toParts(t),r=i.slice();"year"===s?r[0]+=e:r[1]+=e;let a=o.makeTime.apply(o,r),n=o.toParts(a);return"month"===s&&i[1]===n[1]&&1===Math.abs(e)&&(r[0]=i[0],r[1]=i[1],r[2]=0),(a=o.makeTime.apply(o,r))-t};(0,a.isNumber)(i)?(t=r-i,e=i):i&&(t=r+n(r,-(i.count||1)),this.chart&&this.chart.setFixedRange(r-t));let l=this.dataMin??5e-324;return(0,a.isNumber)(t)||(t=l),t<=l&&(t=l,void 0===e&&(e=n(t,i.count)),this.newMax=Math.min(t+e,this.dataMax??Number.MAX_VALUE)),(0,a.isNumber)(r)?!(0,a.isNumber)(i)&&i&&i._offsetMin&&(t+=i._offsetMin):t=void 0,t}function tE(){this.rangeSelector?.redrawElements()}function tA(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new e(this))}function tw(){let t=this.rangeSelector;if(t){(0,a.isNumber)(t.deferredYTDClick)&&(t.clickButton(t.deferredYTDClick),delete t.deferredYTDClick);let e=t.options.verticalAlign;t.options.floating||("bottom"===e?this.extraBottomMargin=!0:"top"===e&&(this.extraTopMargin=!0))}}function tO(){let t,e=this.rangeSelector;if(!e)return;let i=this.xAxis[0].getExtremes(),s=this.legend,r=e&&e.options.verticalAlign;(0,a.isNumber)(i.min)&&e.render(i.min,i.max),s?.display&&"top"===r&&r===s.options.verticalAlign&&(t=(0,a.merge)(this.spacingBox),"vertical"===s.options.layout?t.y=this.plotTop:t.y+=e.getHeight(),s.group.placed=!1,s.align(t))}function tB(){for(let t=0,e=tM.length;t<e;++t){let e=tM[t];if(e[0]===this){e[1].forEach(t=>t()),tM.splice(t,1);return}}}function tS(){let t=this.rangeSelector;if(t?.options?.enabled){let{min:e,max:i}=this.xAxis[0].getExtremes();(0,a.isNumber)(e)&&t.inputGroup&&t.inputGroup.getBBox().width<20&&t.render(e,i);let s=t.getHeight(),r=t.options.verticalAlign;t.options.floating||("bottom"===r?this.marginBottom+=s:"middle"!==r&&(this.plotTop+=s))}}function tT(t){let i=t.options.rangeSelector,s=this.extraBottomMargin,r=this.extraTopMargin,o=this.rangeSelector;if(i&&i.enabled&&!(0,a.defined)(o)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=o=new e(this)),this.extraBottomMargin=!1,this.extraTopMargin=!1,o){let t=i&&i.verticalAlign||o.options&&o.options.verticalAlign;o.options.floating||("bottom"===t?this.extraBottomMargin=!0:"middle"!==t&&(this.extraTopMargin=!0)),(this.extraBottomMargin!==s||this.extraTopMargin!==r)&&(this.isDirtyBox=!0)}}let tP=function(t,i,s){if(e=s,(0,a.pushUnique)(ty,"RangeSelector")){let e=i.prototype;t.prototype.minFromRange=tk,(0,a.addEvent)(i,"afterGetContainer",tA),(0,a.addEvent)(i,"beforeRender",tw),(0,a.addEvent)(i,"destroy",tB),(0,a.addEvent)(i,"getMargins",tS),(0,a.addEvent)(i,"redraw",tO),(0,a.addEvent)(i,"update",tT),(0,a.addEvent)(i,"beforeRedraw",tE),e.callbacks.push(tO),(0,a.extend)(tv,{rangeSelector:tb}),(0,a.extend)(tv.lang,tf)}},tN=r.default.SVGElement;var tC=o.n(tN);let tD=r.default.Templating;var tI=o.n(tD);let{defaultOptions:tL}=x(),{format:tz}=tI();function tG(t){let e=e=>RegExp(`%[[a-zA-Z]*${e}`).test(t);if((0,a.isString)(t)?-1!==t.indexOf("%L"):t.fractionalSecondDigits)return"text";let i=(0,a.isString)(t)?["a","A","d","e","w","b","B","m","o","y","Y"].some(e):t.dateStyle||t.day||t.month||t.year,s=(0,a.isString)(t)?["H","k","I","l","M","S"].some(e):t.timeStyle||t.hour||t.minute||t.second;return i&&s?"datetime-local":i?"date":s?"time":"text"}class tR{static compose(t,e){tP(t,e,tR)}constructor(t){this.isDirty=!1,this.buttonOptions=[],this.initialButtonGroupWidth=0,this.maxButtonWidth=()=>{let t=0;return this.buttons.forEach(e=>{let i=e.getBBox();i.width>t&&(t=i.width)}),t},this.init(t)}clickButton(t,e){let i=this.chart,s=this.buttonOptions[t],r=i.xAxis[0],o=i.scroller&&i.scroller.getUnionExtremes()||r||{},n=s.type,l=s.dataGrouping,h=o.dataMin,d=o.dataMax,c,p=(0,a.isNumber)(r?.max)?Math.round(Math.min(r.max,d??r.max)):void 0,u,g=s._range,x,m,f,b=!0;if(null!==h&&null!==d){if(this.setSelected(t),l&&(this.forcedDataGrouping=!0,N().prototype.setDataGrouping.call(r||{chart:this.chart},l,!1),this.frozenStates=s.preserveDataGrouping),"month"===n||"year"===n)r?(m={range:s,max:p,chart:i,dataMin:h,dataMax:d},c=r.minFromRange.call(m),(0,a.isNumber)(m.newMax)&&(p=m.newMax),b=!1):g=s;else if(g)(0,a.isNumber)(p)&&(p=Math.min((c=Math.max(p-g,h))+g,d),b=!1);else if("ytd"===n)if(r)!r.hasData()||(0,a.isNumber)(d)&&(0,a.isNumber)(h)||(h=Number.MAX_VALUE,d=-Number.MAX_VALUE,i.series.forEach(t=>{let e=t.getColumn("x");e.length&&(h=Math.min(e[0],h),d=Math.max(e[e.length-1],d))}),e=!1),(0,a.isNumber)(d)&&(0,a.isNumber)(h)&&(c=x=(f=this.getYTDExtremes(d,h)).min,p=f.max);else{this.deferredYTDClick=t;return}else"all"===n&&r&&(i.navigator&&i.navigator.baseSeries[0]&&(i.navigator.baseSeries[0].xAxis.options.range=void 0),c=h,p=d);if(b&&s._offsetMin&&(0,a.defined)(c)&&(c+=s._offsetMin),s._offsetMax&&(0,a.defined)(p)&&(p+=s._offsetMax),this.dropdown&&(this.dropdown.selectedIndex=t+1),r)((0,a.isNumber)(c)||(0,a.isNumber)(p))&&(r.setExtremes(c,p,e??!0,void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:s}),i.setFixedRange(s._range));else{u=(0,a.splat)(i.options.xAxis||{})[0];let t=(0,a.addEvent)(i,"afterCreateAxes",function(){let t=i.xAxis[0];t.range=t.options.range=g,t.min=t.options.min=x});(0,a.addEvent)(i,"load",function(){let e=i.xAxis[0];i.setFixedRange(s._range),e.options.range=u.range,e.options.min=u.min,t()})}(0,a.fireEvent)(this,"afterBtnClick")}}setSelected(t){this.selected=this.options.selected=t}init(t){let e=this,i=t.options.rangeSelector,s=t.options.lang,r=i.buttons,o=i.selected,n=function(){let t=e.minInput,i=e.maxInput;t&&t.blur&&(0,a.fireEvent)(t,"blur"),i&&i.blur&&(0,a.fireEvent)(i,"blur")};e.chart=t,e.options=i,e.buttons=[],e.buttonOptions=r.map(t=>(t.type&&s.rangeSelector&&(t.text??(t.text=s.rangeSelector[`${t.type}Text`]),t.title??(t.title=s.rangeSelector[`${t.type}Title`])),t.text=tz(t.text,{count:t.count||1}),t.title=tz(t.title,{count:t.count||1}),t)),this.eventsToUnbind=[],this.eventsToUnbind.push((0,a.addEvent)(t.container,"mousedown",n)),this.eventsToUnbind.push((0,a.addEvent)(t,"resize",n)),r.forEach(e.computeButtonRange),void 0!==o&&r[o]&&this.clickButton(o,!1),this.eventsToUnbind.push((0,a.addEvent)(t,"load",function(){t.xAxis&&t.xAxis[0]&&(0,a.addEvent)(t.xAxis[0],"setExtremes",function(i){(0,a.isNumber)(this.max)&&(0,a.isNumber)(this.min)&&this.max-this.min!==t.fixedRange&&"rangeSelectorButton"!==i.trigger&&"updatedData"!==i.trigger&&e.forcedDataGrouping&&!e.frozenStates&&this.setDataGrouping(!1,!1)})})),this.createElements()}updateButtonStates(){let t=this,e=this.chart,i=this.dropdown,s=this.dropdownLabel,r=e.xAxis[0],o=Math.round(r.max-r.min),n=!r.hasVisibleSeries,l=24*36e5,h=e.scroller&&e.scroller.getUnionExtremes()||r,d=h.dataMin,c=h.dataMax,p=t.getYTDExtremes(c,d),u=p.min,g=p.max,x=t.selected,m=t.options.allButtonsEnabled,f=Array(t.buttonOptions.length).fill(0),b=(0,a.isNumber)(x),v=t.buttons,y=!1,M=null;t.buttonOptions.forEach((e,i)=>{let s=e._range,a=e.type,h=e.count||1,p=e._offsetMax-e._offsetMin,v=i===x,k=s>c-d,E=s<r.minRange,A=!1,w=s===o;if(v&&k&&(y=!0),r.isOrdinal&&r.ordinal?.positions&&s&&o<s){let t=r.ordinal.positions;t[t.length-1]-t[0]>s&&(w=!0)}else("month"===a||"year"===a)&&o+36e5>=({month:28,year:365})[a]*l*h-p&&o-36e5<=({month:31,year:366})[a]*l*h+p?w=!0:"ytd"===a?(w=g-u+p===o,A=!v):"all"===a&&(w=r.max-r.min>=c-d);let O=!m&&!(y&&"all"===a)&&(k||E||n),B=y&&"all"===a||!A&&w||v&&t.frozenStates;O?f[i]=3:B&&(!b||i===x)&&(M=i)}),null!==M?(f[M]=2,t.setSelected(M),this.dropdown&&(this.dropdown.selectedIndex=M+1)):(t.setSelected(),this.dropdown&&(this.dropdown.selectedIndex=-1),s&&(s.setState(0),s.attr({text:(tL.lang.rangeSelectorZoom||"")+" ▾"})));for(let e=0;e<f.length;e++){let r=f[e],o=v[e];if(o.state!==r&&(o.setState(r),i)){i.options[e+1].disabled=3===r,2===r&&(s&&(s.setState(2),s.attr({text:t.buttonOptions[e].text+" ▾"})),i.selectedIndex=e+1);let o=s.getBBox();(0,a.css)(i,{width:`${o.width}px`,height:`${o.height}px`})}}}computeButtonRange(t){let e=t.type,i=t.count||1,s={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5};s[e]?t._range=s[e]*i:("month"===e||"year"===e)&&(t._range=24*({month:30,year:365})[e]*36e5*i),t._offsetMin=t.offsetMin??0,t._offsetMax=t.offsetMax??0,t._range+=t._offsetMax-t._offsetMin}getInputValue(t){let e="min"===t?this.minInput:this.maxInput,i=this.chart.options.rangeSelector,s=this.chart.time;return e?("text"===e.type&&i.inputDateParser||this.defaultInputDateParser)(e.value,"UTC"===s.timezone,s):0}setInputValue(t,e){let i=this.options,s=this.chart.time,r="min"===t?this.minInput:this.maxInput,o="min"===t?this.minDateBox:this.maxDateBox;if(r){r.setAttribute("type",tG(i.inputDateFormat||"%e %b %Y"));let t=r.getAttribute("data-hc-time"),n=(0,a.defined)(t)?Number(t):void 0;if((0,a.defined)(e)){let t=n;(0,a.defined)(t)&&r.setAttribute("data-hc-time-previous",t),r.setAttribute("data-hc-time",e),n=e}r.value=s.dateFormat(this.inputTypeFormats[r.type]||i.inputEditDateFormat,n),o&&o.attr({text:s.dateFormat(i.inputDateFormat,n)})}}setInputExtremes(t,e,i){let s="min"===t?this.minInput:this.maxInput;if(s){let t=this.inputTypeFormats[s.type],r=this.chart.time;if(t){let o=r.dateFormat(t,e);s.min!==o&&(s.min=o);let a=r.dateFormat(t,i);s.max!==a&&(s.max=a)}}}showInput(t){let e="min"===t?this.minDateBox:this.maxDateBox,i="min"===t?this.minInput:this.maxInput;if(i&&e&&this.inputGroup){let t="text"===i.type,{translateX:s=0,translateY:r=0}=this.inputGroup,{x:o=0,width:n=0,height:l=0}=e,{inputBoxWidth:h}=this.options;(0,a.css)(i,{width:t?n+(h?-2:20)+"px":"auto",height:l-2+"px",border:"2px solid silver"}),t&&h?(0,a.css)(i,{left:s+o+"px",top:r+"px"}):(0,a.css)(i,{left:Math.min(Math.round(o+s-(i.offsetWidth-n)/2),this.chart.chartWidth-i.offsetWidth)+"px",top:r-(i.offsetHeight-l)/2+"px"})}}hideInput(t){let e="min"===t?this.minInput:this.maxInput;e&&(0,a.css)(e,{top:"-9999em",border:0,width:"1px",height:"1px"})}defaultInputDateParser(t,e,i){return i?.parse(t)||0}drawInput(t){let{chart:e,div:i,inputGroup:s}=this,r=this,o=e.renderer.style||{},n=e.renderer,l=e.options.rangeSelector,h=tL.lang,d="min"===t;function c(t){let{maxInput:i,minInput:s}=r,o=e.xAxis[0],n=e.scroller?.getUnionExtremes()||o,l=n.dataMin,h=n.dataMax,c=e.xAxis[0].getExtremes()[t],p=r.getInputValue(t);(0,a.isNumber)(p)&&p!==c&&(d&&i&&(0,a.isNumber)(l)?p>Number(i.getAttribute("data-hc-time"))?p=void 0:p<l&&(p=l):s&&(0,a.isNumber)(h)&&(p<Number(s.getAttribute("data-hc-time"))?p=void 0:p>h&&(p=h)),void 0!==p&&o.setExtremes(d?p:o.min,d?o.max:p,void 0,void 0,{trigger:"rangeSelectorInput"}))}let p=h[d?"rangeSelectorFrom":"rangeSelectorTo"]||"",u=n.label(p,0).addClass("highcharts-range-label").attr({padding:2*!!p,height:p?l.inputBoxHeight:0}).add(s),g=n.label("",0).addClass("highcharts-range-input").attr({padding:2,width:l.inputBoxWidth,height:l.inputBoxHeight,"text-align":"center"}).on("click",function(){r.showInput(t),r[t+"Input"].focus()});e.styledMode||g.attr({stroke:l.inputBoxBorderColor,"stroke-width":1}),g.add(s);let m=(0,a.createElement)("input",{name:t,className:"highcharts-range-selector"},void 0,i);m.setAttribute("type",tG(l.inputDateFormat||"%e %b %Y")),e.styledMode||(u.css((0,a.merge)(o,l.labelStyle)),g.css((0,a.merge)({color:"var(--highcharts-neutral-color-80)"},o,l.inputStyle)),(0,a.css)(m,(0,a.extend)({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:o.fontSize,fontFamily:o.fontFamily,top:"-9999em"},l.inputStyle))),m.onfocus=()=>{r.showInput(t)},m.onblur=()=>{m===x().doc.activeElement&&c(t),r.hideInput(t),r.setInputValue(t),m.blur()};let f=!1;return m.onchange=()=>{f||(c(t),r.hideInput(t),m.blur())},m.onkeypress=e=>{13===e.keyCode&&c(t)},m.onkeydown=e=>{f=!0,("ArrowUp"===e.key||"ArrowDown"===e.key||"Tab"===e.key)&&c(t)},m.onkeyup=()=>{f=!1},{dateBox:g,input:m,label:u}}getPosition(){let t=this.chart,e=t.options.rangeSelector,i="top"===e.verticalAlign?t.plotTop-t.axisOffset[0]:0;return{buttonTop:i+e.buttonPosition.y,inputTop:i+e.inputPosition.y-10}}getYTDExtremes(t,e){let i=this.chart.time,s=i.toParts(t)[0];return{max:t,min:Math.max(e,i.makeTime(s,0))}}createElements(){let t=this.chart,e=t.renderer,i=t.container,s=t.options,r=s.rangeSelector,o=r.inputEnabled,n=(s.chart.style?.zIndex??0)+1;!1!==r.enabled&&(this.group=e.g("range-selector-group").attr({zIndex:7}).add(),this.div=(0,a.createElement)("div",void 0,{position:"relative",height:0,zIndex:n}),this.buttonOptions.length&&this.renderButtons(),i.parentNode&&i.parentNode.insertBefore(this.div,i),o&&this.createInputs())}createInputs(){this.inputGroup=this.chart.renderer.g("input-group").add(this.group);let t=this.drawInput("min");this.minDateBox=t.dateBox,this.minLabel=t.label,this.minInput=t.input;let e=this.drawInput("max");this.maxDateBox=e.dateBox,this.maxLabel=e.label,this.maxInput=e.input}render(t,e){if(!1===this.options.enabled)return;let i=this.chart,s=i.options.rangeSelector;if(s.inputEnabled){this.inputGroup||this.createInputs(),this.setInputValue("min",t),this.setInputValue("max",e),this.chart.styledMode||(this.maxLabel?.css(s.labelStyle),this.minLabel?.css(s.labelStyle));let r=i.scroller&&i.scroller.getUnionExtremes()||i.xAxis[0]||{};if((0,a.defined)(r.dataMin)&&(0,a.defined)(r.dataMax)){let t=i.xAxis[0].minRange||0;this.setInputExtremes("min",r.dataMin,Math.min(r.dataMax,this.getInputValue("max"))-t),this.setInputExtremes("max",Math.max(r.dataMin,this.getInputValue("min"))+t,r.dataMax)}if(this.inputGroup){let t=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(e=>{if(e){let{width:i}=e.getBBox();i&&(e.attr({x:t}),t+=i+s.inputSpacing)}})}}else this.inputGroup&&(this.inputGroup.destroy(),delete this.inputGroup);!this.chart.styledMode&&this.zoomText&&this.zoomText.css(s.labelStyle),this.alignElements(),this.updateButtonStates()}renderButtons(){var t;let{chart:e,options:i}=this,s=tL.lang,r=e.renderer,o=(0,a.merge)(i.buttonTheme),n=o&&o.states;delete o.width,delete o.states,this.buttonGroup=r.g("range-selector-buttons").add(this.group);let l=this.dropdown=(0,a.createElement)("select",void 0,{position:"absolute",padding:0,border:0,cursor:"pointer",opacity:1e-4},this.div),h=e.userOptions.rangeSelector?.buttonTheme;this.dropdownLabel=r.button("",0,0,()=>{},(0,a.merge)(o,{"stroke-width":o["stroke-width"]??0,width:"auto",paddingLeft:i.buttonTheme.paddingLeft??h?.padding??8,paddingRight:i.buttonTheme.paddingRight??h?.padding??8}),n&&n.hover,n&&n.select,n&&n.disabled).hide().add(this.group),(0,a.addEvent)(l,"touchstart",()=>{l.style.fontSize="16px"});let d=x().isMS?"mouseover":"mouseenter",c=x().isMS?"mouseout":"mouseleave";(0,a.addEvent)(l,d,()=>{(0,a.fireEvent)(this.dropdownLabel.element,d)}),(0,a.addEvent)(l,c,()=>{(0,a.fireEvent)(this.dropdownLabel.element,c)}),(0,a.addEvent)(l,"change",()=>{let t=this.buttons[l.selectedIndex-1];(0,a.fireEvent)(t.element,"click")}),this.zoomText=r.label(s.rangeSelectorZoom||"",0).attr({padding:i.buttonTheme.padding,height:i.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup),this.chart.styledMode||(this.zoomText.css(i.labelStyle),(t=i.buttonTheme)["stroke-width"]??(t["stroke-width"]=0)),(0,a.createElement)("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,l),this.createButtons()}createButtons(){let{options:t}=this,e=(0,a.merge)(t.buttonTheme),i=e&&e.states,s=e.width||28;delete e.width,delete e.states,this.buttonOptions.forEach((t,e)=>{this.createButton(t,e,s,i)})}createButton(t,e,i,s){let{dropdown:r,buttons:o,chart:n,options:l}=this,h=n.renderer,d=(0,a.merge)(l.buttonTheme);r?.add((0,a.createElement)("option",{textContent:t.title||t.text}),e+2),o[e]=h.button(t.text??"",0,0,i=>{let s,r=t.events&&t.events.click;r&&(s=r.call(t,i)),!1!==s&&this.clickButton(e),this.isActive=!0},d,s&&s.hover,s&&s.select,s&&s.disabled).attr({"text-align":"center",width:i}).add(this.buttonGroup),t.title&&o[e].attr("title",t.title)}alignElements(){let{buttonGroup:t,buttons:e,chart:i,group:s,inputGroup:r,options:o,zoomText:a}=this,n=i.options,l=n.exporting&&!1!==n.exporting.enabled&&n.navigation&&n.navigation.buttonOptions,{buttonPosition:h,inputPosition:d,verticalAlign:c}=o,p=(t,e,s)=>l&&this.titleCollision(i)&&"top"===c&&s&&e.y-t.getBBox().height-12<(l.y||0)+(l.height||0)+i.spacing[0]?-40:0,u=i.plotLeft;if(s&&h&&d){let n=h.x-i.spacing[3];if(t){if(this.positionButtons(),!this.initialButtonGroupWidth){let t=0;a&&(t+=a.getBBox().width+5),e.forEach((i,s)=>{t+=i.width||0,s!==e.length-1&&(t+=o.buttonSpacing)}),this.initialButtonGroupWidth=t}u-=i.spacing[3];let r=p(t,h,"right"===h.align||"right"===d.align);this.alignButtonGroup(r),this.buttonGroup?.translateY&&this.dropdownLabel.attr({y:this.buttonGroup.translateY}),s.placed=t.placed=i.hasLoaded}let l=0;o.inputEnabled&&r&&(l=p(r,d,"right"===h.align||"right"===d.align),"left"===d.align?n=u:"right"===d.align&&(n=-Math.max(i.axisOffset[1],-l)),r.align({y:d.y,width:r.getBBox().width,align:d.align,x:d.x+n-2},!0,i.spacingBox),r.placed=i.hasLoaded),this.handleCollision(l),s.align({verticalAlign:c},!0,i.spacingBox);let g=s.alignAttr.translateY,x=s.getBBox().height+20,m=0;if("bottom"===c){let t=i.legend&&i.legend.options;m=g-(x=x+(t&&"bottom"===t.verticalAlign&&t.enabled&&!t.floating?i.legend.legendHeight+(t.margin??10):0)-20)-(o.floating?0:o.y)-(i.titleOffset?i.titleOffset[2]:0)-10}"top"===c?(o.floating&&(m=0),i.titleOffset&&i.titleOffset[0]&&(m=i.titleOffset[0]),m+=i.margin[0]-i.spacing[0]||0):"middle"===c&&(d.y===h.y?m=g:(d.y||h.y)&&(d.y<0||h.y<0?m-=Math.min(d.y,h.y):m=g-x)),s.translate(o.x,o.y+Math.floor(m));let{minInput:f,maxInput:b,dropdown:v}=this;o.inputEnabled&&f&&b&&(f.style.marginTop=s.translateY+"px",b.style.marginTop=s.translateY+"px"),v&&(v.style.marginTop=s.translateY+"px")}}redrawElements(){let t=this.chart,{inputBoxHeight:e,inputBoxBorderColor:i}=this.options;if(this.maxDateBox?.attr({height:e}),this.minDateBox?.attr({height:e}),t.styledMode||(this.maxDateBox?.attr({stroke:i}),this.minDateBox?.attr({stroke:i})),this.isDirty){this.isDirty=!1,this.isCollapsed=void 0;let t=this.options.buttons??[],e=Math.min(t.length,this.buttonOptions.length),{dropdown:i,options:s}=this,r=(0,a.merge)(s.buttonTheme),o=r&&r.states,n=r.width||28;if(t.length<this.buttonOptions.length)for(let e=this.buttonOptions.length-1;e>=t.length;e--){let t=this.buttons.pop();t?.destroy(),this.dropdown?.options.remove(e+1)}for(let s=e-1;s>=0;s--){let e=t[s];this.buttons[s].destroy(),i?.options.remove(s+1),this.createButton(e,s,n,o),this.computeButtonRange(e)}if(t.length>this.buttonOptions.length)for(let e=this.buttonOptions.length;e<t.length;e++)this.createButton(t[e],e,n,o),this.computeButtonRange(t[e]);this.buttonOptions=this.options.buttons??[],(0,a.defined)(this.options.selected)&&this.buttons.length&&this.clickButton(this.options.selected,!1)}}alignButtonGroup(t,e){let{chart:i,options:s,buttonGroup:r,dropdown:o,dropdownLabel:n}=this,{buttonPosition:l}=s,h=i.plotLeft-i.spacing[3],d=l.x-i.spacing[3],c=i.plotLeft;"right"===l.align?(d+=t-h,this.hasVisibleDropdown&&(c=i.chartWidth+t-this.maxButtonWidth()-20)):"center"===l.align&&(d-=h/2,this.hasVisibleDropdown&&(c=i.chartWidth/2-this.maxButtonWidth())),o&&(0,a.css)(o,{left:c+"px",top:r?.translateY+"px"}),n?.attr({x:c}),r&&r.align({y:l.y,width:e??this.initialButtonGroupWidth,align:l.align,x:d},!0,i.spacingBox)}positionButtons(){let{buttons:t,chart:e,options:i,zoomText:s}=this,r=e.hasLoaded?"animate":"attr",{buttonPosition:o}=i,a=e.plotLeft,n=a;s&&"hidden"!==s.visibility&&(s[r]({x:a+(o.x??0)}),n+=o.x+s.getBBox().width+5);for(let e=0,s=this.buttonOptions.length;e<s;++e)"hidden"!==t[e].visibility?(t[e][r]({x:n}),n+=(t[e].width||0)+i.buttonSpacing):t[e][r]({x:a})}handleCollision(t){let{chart:e,buttonGroup:i,inputGroup:s,initialButtonGroupWidth:r}=this,{buttonPosition:o,dropdown:a,inputPosition:n}=this.options,l=()=>{s&&i&&s.attr({translateX:s.alignAttr.translateX+(e.axisOffset[1]>=-t?0:-t),translateY:s.alignAttr.translateY+i.getBBox().height+10})};s&&i?n.align===o.align?(l(),r>e.plotWidth+t-20?this.collapseButtons():this.expandButtons()):r-t+s.getBBox().width>e.plotWidth?"responsive"===a||"always"===a?this.collapseButtons():l():this.expandButtons():i&&"responsive"===a&&(r>e.plotWidth?this.collapseButtons():this.expandButtons()),i&&("always"===a&&this.collapseButtons(),"never"===a&&this.expandButtons()),this.alignButtonGroup(t)}collapseButtons(){let{buttons:t,zoomText:e}=this;!0!==this.isCollapsed&&(this.isCollapsed=!0,e.hide(),t.forEach(t=>void t.hide()),this.showDropdown())}expandButtons(){let{buttons:t,zoomText:e}=this;!1!==this.isCollapsed&&(this.isCollapsed=!1,this.hideDropdown(),e.show(),t.forEach(t=>void t.show()),this.positionButtons())}showDropdown(){let{buttonGroup:t,dropdownLabel:e,dropdown:i}=this;t&&i&&(e.show(),(0,a.css)(i,{visibility:"inherit"}),this.hasVisibleDropdown=!0)}hideDropdown(){let{dropdown:t}=this;t&&(this.dropdownLabel.hide(),(0,a.css)(t,{visibility:"hidden"}),this.hasVisibleDropdown=!1)}getHeight(){let t=this.options,e=this.group,i=t.inputPosition,s=t.buttonPosition,r=t.y,o=s.y,a=i.y,n=0;if(t.height)return t.height;this.alignElements(),n=e?e.getBBox(!0).height+13+r:0;let l=Math.min(a,o);return(a<0&&o<0||a>0&&o>0)&&(n+=Math.abs(l)),n}titleCollision(t){return!(t.options.title.text||t.options.subtitle.text)}update(t,e=!0){let i=this.chart;if((0,a.merge)(!0,this.options,t),this.options.selected&&this.options.selected>=this.options.buttons.length&&(this.options.selected=void 0,i.options.rangeSelector.selected=void 0),(0,a.defined)(t.enabled))return this.destroy(),this.init(i);this.isDirty=!!t.buttons||!!t.buttonTheme,e&&this.render()}destroy(){let t=this,e=t.minInput,i=t.maxInput;t.eventsToUnbind&&(t.eventsToUnbind.forEach(t=>t()),t.eventsToUnbind=void 0),(0,a.destroyObjectProperties)(t.buttons),e&&(e.onfocus=e.onblur=e.onchange=null),i&&(i.onfocus=i.onblur=i.onchange=null),(0,a.objectEach)(t,function(e,i){e&&"chart"!==i&&(e instanceof tC()?e.destroy():e instanceof window.HTMLElement&&(0,a.discardElement)(e),delete t[i]),e!==tR.prototype[i]&&(t[i]=null)},this),this.buttons=[]}}(0,a.extend)(tR.prototype,{inputTypeFormats:{"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",time:"%H:%M:%S"}});let{xrange:{prototype:{pointClass:tW}}}=_().seriesTypes;class tF extends tW{static setGanttPointAliases(t,e){t.x=t.start=e.time.parse(t.start??t.x),t.x2=t.end=e.time.parse(t.end??t.x2),t.partialFill=t.completed=t.completed??t.partialFill}applyOptions(t,e){let i=super.applyOptions(t,e);return tF.setGanttPointAliases(i,i.series.chart),this.isNull=!this.isValid?.(),this.formatPrefix=this.isNull?"null":"point",i}isValid(){return("number"==typeof this.start||"number"==typeof this.x)&&("number"==typeof this.end||"number"==typeof this.x2||this.milestone)}}function tH(t,e){let i=[];for(let s=0;s<t.length;s++){let r=t[s][1],o=t[s][2];if("number"==typeof r&&"number"==typeof o)if(0===s)i.push(["M",r,o]);else if(s===t.length-1)i.push(["L",r,o]);else if(e){let a=t[s-1],n=t[s+1];if(a&&n){let t=a[1],s=a[2],l=n[1],h=n[2];if("number"==typeof t&&"number"==typeof l&&"number"==typeof s&&"number"==typeof h&&t!==l&&s!==h){let a=t<l?1:-1,n=s<h?1:-1;i.push(["L",r-a*Math.min(Math.abs(r-t),e),o-n*Math.min(Math.abs(o-s),e)],["C",r,o,r,o,r+a*Math.min(Math.abs(r-l),e),o+n*Math.min(Math.abs(o-h),e)])}}}else i.push(["L",r,o])}return i}let{min:tU,max:tj,abs:tY}=Math;function tV(t,e,i){let s=e-1e-7,r=i||0,o=t.length-1,a,n;for(;r<=o;)if((n=s-t[a=o+r>>1].xMin)>0)r=a+1;else{if(!(n<0))return a;o=a-1}return r>0?r-1:0}function tX(t,e){let i=tV(t,e.x+1)+1;for(;i--;){var s;if(t[i].xMax>=e.x&&(s=t[i],e.x<=s.xMax&&e.x>=s.xMin&&e.y<=s.yMax&&e.y>=s.yMin))return i}return -1}function t_(t){let e=[];if(t.length){e.push(["M",t[0].start.x,t[0].start.y]);for(let i=0;i<t.length;++i)e.push(["L",t[i].end.x,t[i].end.y])}return e}function tq(t,e){t.yMin=tj(t.yMin,e.yMin),t.yMax=tU(t.yMax,e.yMax),t.xMin=tj(t.xMin,e.xMin),t.xMax=tU(t.xMax,e.xMax)}let tZ=function(t,e,i){let s=[],r=i.chartObstacles,o=tX(r,t),a=tX(r,e),n,l=i.startDirectionX??tY(e.x-t.x)>tY(e.y-t.y)?"x":"y",h,d,c,p;function u(t,e,i,s,r){let o={x:t.x,y:t.y};return o[e]=i[s||e]+(r||0),o}function g(t,e,i){let s=tY(e[i]-t[i+"Min"])>tY(e[i]-t[i+"Max"]);return u(e,i,t,i+(s?"Max":"Min"),s?1:-1)}a>-1?(n={start:d=g(r[a],e,l),end:e},p=d):p=e,o>-1&&(d=g(h=r[o],t,l),s.push({start:t,end:d}),d[l]>=t[l]==d[l]>=p[l]&&(c=t[l="y"===l?"x":"y"]<e[l],s.push({start:d,end:u(d,l,h,l+(c?"Max":"Min"),c?1:-1)}),l="y"===l?"x":"y"));let x=s.length?s[s.length-1].end:t;d=u(x,l,p),s.push({start:x,end:d});let m=u(d,l="y"===l?"x":"y",p);return s.push({start:d,end:m}),n&&s.push(n),{path:tH(t_(s),i.radius),obstacles:s}};function t$(t,e,i){let s=i.startDirectionX??tY(e.x-t.x)>tY(e.y-t.y),r=s?"x":"y",o=[],a=i.obstacleMetrics,n=tU(t.x,e.x)-a.maxWidth-10,l=tj(t.x,e.x)+a.maxWidth+10,h=tU(t.y,e.y)-a.maxHeight-10,d=tj(t.y,e.y)+a.maxHeight+10,c,p,u,g=!1,x=i.chartObstacles,m=tV(x,l),f=tV(x,n);function b(t,e,i){let s,r,o,a,n=t.x<e.x?1:-1;t.x<e.x?(s=t,r=e):(s=e,r=t),t.y<e.y?(a=t,o=e):(a=e,o=t);let l=n<0?tU(tV(x,r.x),x.length-1):0;for(;x[l]&&(n>0&&x[l].xMin<=r.x||n<0&&x[l].xMax>=s.x);){if(x[l].xMin<=r.x&&x[l].xMax>=s.x&&x[l].yMin<=o.y&&x[l].yMax>=a.y){if(i)return{y:t.y,x:t.x<e.x?x[l].xMin-1:x[l].xMax+1,obstacle:x[l]};return{x:t.x,y:t.y<e.y?x[l].yMin-1:x[l].yMax+1,obstacle:x[l]}}l+=n}return e}function v(t,e,i,s,r){let o=r.soft,a=r.hard,n=s?"x":"y",l={x:e.x,y:e.y},h={x:e.x,y:e.y},d=t[n+"Max"]>=o[n+"Max"],c=t[n+"Min"]<=o[n+"Min"],p=t[n+"Max"]>=a[n+"Max"],u=t[n+"Min"]<=a[n+"Min"],g=tY(t[n+"Min"]-e[n]),x=tY(t[n+"Max"]-e[n]),m=10>tY(g-x)?e[n]<i[n]:x<g;h[n]=t[n+"Min"],l[n]=t[n+"Max"];let f=b(e,h,s)[n]!==h[n],v=b(e,l,s)[n]!==l[n];return m=f?!v||m:!v&&m,m=c?!d||m:!d&&m,m=u?!p||m:!p&&m}if((m=tX(x=x.slice(f,m+1),e))>-1){var y,M;let s,r;y=x[m],M=e,s=tU(y.xMax-M.x,M.x-y.xMin)<tU(y.yMax-M.y,M.y-y.yMin),r=v(y,M,t,s,{soft:i.hardBounds,hard:i.hardBounds}),u=s?{y:M.y,x:y[r?"xMax":"xMin"]+(r?1:-1)}:{x:M.x,y:y[r?"yMax":"yMin"]+(r?1:-1)},o.push({end:e,start:u}),e=u}for(;(m=tX(x,e))>-1;)p=e[r]-t[r]<0,(u={x:e.x,y:e.y})[r]=x[m][p?r+"Max":r+"Min"]+(p?1:-1),o.push({end:e,start:u}),e=u;return{path:t_(c=(c=function t(e,s,r){let o,a,c,p,u,m,f;if(e.x===s.x&&e.y===s.y)return[];let y=r?"x":"y",M=i.obstacleOptions.margin,k={soft:{xMin:n,xMax:l,yMin:h,yMax:d},hard:i.hardBounds};return(u=tX(x,e))>-1?(p=v(u=x[u],e,s,r,k),tq(u,i.hardBounds),f=r?{y:e.y,x:u[p?"xMax":"xMin"]+(p?1:-1)}:{x:e.x,y:u[p?"yMax":"yMin"]+(p?1:-1)},(m=tX(x,f))>-1&&(tq(m=x[m],i.hardBounds),f[y]=p?tj(u[y+"Max"]-M+1,(m[y+"Min"]+u[y+"Max"])/2):tU(u[y+"Min"]+M-1,(m[y+"Max"]+u[y+"Min"])/2),e.x===f.x&&e.y===f.y?(g&&(f[y]=p?tj(u[y+"Max"],m[y+"Max"])+1:tU(u[y+"Min"],m[y+"Min"])-1),g=!g):g=!1),a=[{start:e,end:f}]):(o=b(e,{x:r?s.x:e.x,y:r?e.y:s.y},r),a=[{start:e,end:{x:o.x,y:o.y}}],o[r?"x":"y"]!==s[r?"x":"y"]&&(p=v(o.obstacle,o,s,!r,k),tq(o.obstacle,i.hardBounds),c={x:r?o.x:o.obstacle[p?"xMax":"xMin"]+(p?1:-1),y:r?o.obstacle[p?"yMax":"yMin"]+(p?1:-1):o.y},r=!r,a=a.concat(t({x:o.x,y:o.y},c,r)))),a=a.concat(t(a[a.length-1].end,s,!r))}(t,e,s)).concat(o.reverse())),obstacles:c}}tZ.requiresObstacles=!0,t$.requiresObstacles=!0;let tK={connectors:{type:"straight",radius:0,lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}},{setOptions:tJ}=x();function tQ(t){let e=t.shapeArgs;if(e)return{xMin:e.x||0,xMax:(e.x||0)+(e.width||0),yMin:e.y||0,yMax:(e.y||0)+(e.height||0)};let i=t.graphic&&t.graphic.getBBox();return i?{xMin:t.plotX-i.width/2,xMax:t.plotX+i.width/2,yMin:t.plotY-i.height/2,yMax:t.plotY+i.height/2}:null}!function(t){function e(t){let e,i,s=tQ(this);switch(t.align){case"right":e="xMax";break;case"left":e="xMin"}switch(t.verticalAlign){case"top":i="yMin";break;case"bottom":i="yMax"}return e=e?s[e]:(s.xMin+s.xMax)/2,i=i?s[i]:(s.yMin+s.yMax)/2,{x:e+(t.xOffset||0),y:i+(t.yOffset||0)}}function i(t,e){let i;return!(0,a.defined)(e)&&(i=tQ(this))&&(e={x:(i.xMin+i.xMax)/2,y:(i.yMin+i.yMax)/2}),Math.atan2(e.y-t.y,t.x-e.x)}function s(t,e,i){let s=2*Math.PI,r=tQ(this),o=r.xMax-r.xMin,a=r.yMax-r.yMin,n=Math.atan2(a,o),l=o/2,h=a/2,d=r.xMin+l,c=r.yMin+h,p={x:d,y:c},u=t,g=1,x=!1,m=1,f=1;for(;u<-Math.PI;)u+=s;for(;u>Math.PI;)u-=s;return g=Math.tan(u),u>-n&&u<=n?(f=-1,x=!0):u>n&&u<=Math.PI-n?f=-1:u>Math.PI-n||u<=-(Math.PI-n)?(m=-1,x=!0):m=-1,x?(p.x+=m*l,p.y+=f*l*g):(p.x+=a/(2*g)*m,p.y+=f*h),i.x!==d&&(p.x=i.x),i.y!==c&&(p.y=i.y),{x:p.x+e*Math.cos(u),y:p.y-e*Math.sin(u)}}t.compose=function(t,r,o){let n=o.prototype;n.getPathfinderAnchorPoint||(t.prototype.callbacks.push(function(t){!1!==t.options.connectors.enabled&&((t.options.pathfinder||t.series.reduce(function(t,e){return e.options&&(0,a.merge)(!0,e.options.connectors=e.options.connectors||{},e.options.pathfinder),t||e.options&&e.options.pathfinder},!1))&&((0,a.merge)(!0,t.options.connectors=t.options.connectors||{},t.options.pathfinder),(0,a.error)('WARNING: Pathfinder options have been renamed. Use "chart.connectors" or "series.connectors" instead.')),this.pathfinder=new r(this),this.pathfinder.update(!0))}),n.getMarkerVector=s,n.getPathfinderAnchorPoint=e,n.getRadiansToVector=i,tJ(tK))}}(p||(p={}));let t0=p,t1=r.default.Point;var t2=o.n(t1);let t5=Math.max,t3=Math.min;class t6{static compose(t,e){t0.compose(t,t6,e)}constructor(t){this.init(t)}init(t){this.chart=t,this.connections=[],(0,a.addEvent)(t,"redraw",function(){this.pathfinder.update()})}update(t){let e=this.chart,i=this,s=i.connections;i.connections=[],e.series.forEach(function(t){t.visible&&!t.options.isInternal&&t.points.forEach(function(t){let s,r=t.options;r&&r.dependency&&(r.connect=r.dependency);let o=t.options?.connect?(0,a.splat)(t.options.connect):[];t.visible&&!1!==t.isInside&&o.forEach(r=>{let o="string"==typeof r?r:r.to;o&&(s=e.get(o)),s instanceof t2()&&s.series.visible&&s.visible&&!1!==s.isInside&&i.connections.push(new k(t,s,"string"==typeof r?{}:r))})})});for(let t=0,e,r,o=s.length,a=i.connections.length;t<o;++t){r=!1;let o=s[t];for(e=0;e<a;++e){let t=i.connections[e];if((o.options&&o.options.type)===(t.options&&t.options.type)&&o.fromPoint===t.fromPoint&&o.toPoint===t.toPoint){t.graphics=o.graphics,r=!0;break}}r||o.destroy()}delete this.chartObstacles,delete this.lineObstacles,i.renderConnections(t)}renderConnections(t){t?this.chart.series.forEach(function(t){let e=function(){let e=t.chart.pathfinder;(e&&e.connections||[]).forEach(function(e){e.fromPoint&&e.fromPoint.series===t&&e.render()}),t.pathfinderRemoveRenderEvent&&(t.pathfinderRemoveRenderEvent(),delete t.pathfinderRemoveRenderEvent)};!1===t.options.animation?e():t.pathfinderRemoveRenderEvent=(0,a.addEvent)(t,"afterAnimate",e)}):this.connections.forEach(function(t){t.render()})}getChartObstacles(t){let e=this.chart.series,i=t.algorithmMargin??0,s=[],r;for(let t=0,r=e.length;t<r;++t)if(e[t].visible&&!e[t].options.isInternal)for(let r=0,o=e[t].points.length,a,n;r<o;++r)(n=e[t].points[r]).visible&&(a=function(t){let e=t.shapeArgs;if(e)return{xMin:e.x||0,xMax:(e.x||0)+(e.width||0),yMin:e.y||0,yMax:(e.y||0)+(e.height||0)};let i=t.graphic&&t.graphic.getBBox();return i?{xMin:t.plotX-i.width/2,xMax:t.plotX+i.width/2,yMin:t.plotY-i.height/2,yMax:t.plotY+i.height/2}:null}(n))&&s.push({xMin:a.xMin-i,xMax:a.xMax+i,yMin:a.yMin-i,yMax:a.yMax+i});return s=s.sort(function(t,e){return t.xMin-e.xMin}),(0,a.defined)(t.algorithmMargin)||(r=t.algorithmMargin=function(t){let e,i=t.length,s=[];for(let r=0;r<i;++r)for(let o=r+1;o<i;++o)(e=function t(e,i,s){let r=s??10,o=e.yMax+r>i.yMin-r&&e.yMin-r<i.yMax+r,a=e.xMax+r>i.xMin-r&&e.xMin-r<i.xMax+r,n=o?e.xMin>i.xMax?e.xMin-i.xMax:i.xMin-e.xMax:1/0,l=a?e.yMin>i.yMax?e.yMin-i.yMax:i.yMin-e.yMax:1/0;return a&&o?r?t(e,i,Math.floor(r/2)):1/0:t3(n,l)}(t[r],t[o]))<80&&s.push(e);return s.push(80),t5(Math.floor(s.sort(function(t,e){return t-e})[Math.floor(s.length/10)]/2-1),1)}(s),s.forEach(function(t){t.xMin-=r,t.xMax+=r,t.yMin-=r,t.yMax+=r})),s}getObstacleMetrics(t){let e=0,i=0,s,r,o=t.length;for(;o--;)s=t[o].xMax-t[o].xMin,r=t[o].yMax-t[o].yMin,e<s&&(e=s),i<r&&(i=r);return{maxHeight:i,maxWidth:e}}getAlgorithmStartDirection(t){let e="left"!==t.align&&"right"!==t.align,i="top"!==t.verticalAlign&&"bottom"!==t.verticalAlign;return e?!!i&&void 0:!!i||void 0}}t6.prototype.algorithms={fastAvoid:t$,straight:function(t,e){return{path:[["M",t.x,t.y],["L",e.x,e.y]],obstacles:[{start:t,end:e}]}},simpleConnect:tZ};let{composed:t8}=x();function t4(){let t=this.chart.userOptions.chart;!this.horiz&&(0,a.isNumber)(this.options.staticScale)&&(!t?.height||t.scrollablePlotArea?.minHeight)&&(this.staticScale=this.options.staticScale)}function t7(){if("adjustHeight"!==this.redrawTrigger){for(let t of this.axes||[]){let e=t.chart,i=t.options.staticScale;if(t.staticScale&&i&&(0,a.defined)(t.min)&&(0,a.defined)(t.max)){let s=(t.brokenAxis?.unitLength??t.max+t.tickInterval-t.min)*i,r=(s=Math.max(s,i))-e.plotHeight;!e.scrollablePixelsY&&Math.abs(r)>=1&&(e.plotHeight=s,e.redrawTrigger="adjustHeight",e.setSize(void 0,e.chartHeight+r,!!e.initiatedScale&&void 0)),t.series.forEach(function(t){let i=t.sharedClipKey&&e.sharedClips[t.sharedClipKey];i&&i.attr(e.inverted?{width:e.plotHeight}:{height:e.plotHeight})})}}this.initiatedScale=!0}this.redrawTrigger=void 0}let t9=r.default.StackItem;var et=o.n(t9);!function(t){function e(){void 0!==this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function i(){Object.keys(this.options.breaks?.[0]||{}).length&&(this.options.ordinal=!1)}function s(){let t=this.brokenAxis;if(t?.hasBreaks){let e=this.tickPositions,i=this.tickPositions.info,s=[];for(let i=0;i<e.length;i++)t.isInAnyBreak(e[i])||s.push(e[i]);this.tickPositions=s,this.tickPositions.info=i}}function r(){this.brokenAxis||(this.brokenAxis=new d(this))}function o(){let{isDirty:t,options:{connectNulls:e},points:i,xAxis:s,yAxis:r}=this;if(t){let t=i.length;for(;t--;){let o=i[t],a=(null!==o.y||!1!==e)&&(s?.brokenAxis?.isInAnyBreak(o.x,!0)||r?.brokenAxis?.isInAnyBreak(o.y,!0));o.visible=!a&&!1!==o.options.visible}}}function n(){this.drawBreaks(this.xAxis,["x"]),this.drawBreaks(this.yAxis,this.pointArrayMap??["y"])}function l(t,e){let i,s,r,o=this,n=o.points;if(t?.brokenAxis?.hasBreaks){let l=t.brokenAxis;e.forEach(function(e){i=l?.breakArray||[],s=t.isXAxis?t.min:o.options.threshold??t.min,n.forEach(function(o){r=o["stack"+e.toUpperCase()]??o[e],i.forEach(function(e){if((0,a.isNumber)(s)&&(0,a.isNumber)(r)){let i="";s<e.from&&r>e.to||s>e.from&&r<e.from?i="pointBreak":(s<e.from&&r>e.from&&r<e.to||s>e.from&&r>e.to&&r<e.from)&&(i="pointInBreak"),i&&(0,a.fireEvent)(t,i,{point:o,brk:e})}})})})}}function h(){let t=this.currentDataGrouping,e=t?.gapSize,i=this.points.slice(),s=this.yAxis,r=this.options.gapSize,o=i.length-1;if(r&&o>0){let t,a;for("value"!==this.options.gapUnit&&(r*=this.basePointRange),e&&e>r&&e>=this.basePointRange&&(r=e);o--;)if(a&&!1!==a.visible||(a=i[o+1]),t=i[o],!1!==a.visible&&!1!==t.visible){if(a.x-t.x>r){let e=(t.x+a.x)/2;i.splice(o+1,0,{isNull:!0,x:e}),s.stacking&&this.options.stacking&&((s.stacking.stacks[this.stackKey][e]=new(et())(s,s.options.stackLabels,!1,e,this.stack??"")).total=0)}a=t}}return this.getGraphPath(i)}t.compose=function(t,d){if(!t.keepProps.includes("brokenAxis")){t.keepProps.push("brokenAxis"),(0,a.addEvent)(t,"init",r),(0,a.addEvent)(t,"afterInit",e),(0,a.addEvent)(t,"afterSetTickPositions",s),(0,a.addEvent)(t,"afterSetOptions",i);let c=d.prototype;c.drawBreaks=l,c.gappedPath=h,(0,a.addEvent)(d,"afterGeneratePoints",o),(0,a.addEvent)(d,"afterRender",n)}return t};class d{static isInBreak(t,e){let i=t.repeat||1/0,s=t.from,r=t.to-t.from,o=e>=s?(e-s)%i:i-(s-e)%i;return t.inclusive?o<=r:o<r&&0!==o}static lin2Val(t){let e=this.min||0,i=this.brokenAxis,s=i?.breakArray;if(!s?.length||!(0,a.isNumber)(t))return t;let r=t;if(t>e)for(let t of s)if(t.from>r)break;else t.to<=r&&t.to>e?r+=t.len:d.isInBreak(t,r)&&(r+=t.len);else if(t<e)for(let t of s)if(t.from>e)break;else t.from>=r&&t.from<e?r-=t.len:d.isInBreak(t,r)&&(r-=t.len);return r}static val2Lin(t){let e=this.min||0,i=this.brokenAxis,s=i?.breakArray;if(!s?.length||!(0,a.isNumber)(t))return t;let r=t;if(t>e){for(let i of s)if(i.to<=t&&i.to>e)r-=i.len;else if(i.from>t)break;else if(d.isInBreak(i,t)){r-=t-i.from;break}}else if(t<e){for(let i of s)if(i.from>=t&&i.from<e)r+=i.len;else if(i.from>e)break;else if(d.isInBreak(i,t)){r+=i.to-t;break}}return r}constructor(t){this.axis=t}findBreakAt(t,e){return(0,a.find)(e,function(e){return e.from<t&&t<e.to})}isInAnyBreak(t,e){let i=this.axis,s=i.options.breaks||[],r=s.length,o,n,l;if(r&&(0,a.isNumber)(t)){for(;r--;)d.isInBreak(s[r],t)&&(o=!0,n||(n=s[r].showPoints??!i.isXAxis));l=o&&e?o&&!n:o}return l}setBreaks(t,e){let i=this,s=i.axis,r=s.chart.time,o=(0,a.isArray)(t)&&!!Object.keys(t?.[0]||{}).length;s.isDirty=(i.hasBreaks??!1)!==o,i.hasBreaks=o,t?.forEach(t=>{t.from=r.parse(t.from)||0,t.to=r.parse(t.to)||0}),t!==s.options.breaks&&(s.options.breaks=s.userOptions.breaks=t),s.forceRedraw=!0,s.series.forEach(function(t){t.isDirty=!0}),o||s.val2lin!==d.val2Lin||(delete s.val2lin,delete s.lin2val),o&&(s.userOptions.ordinal=!1,s.lin2val=d.lin2Val,s.val2lin=d.val2Lin,s.setExtremes=function(t,e,r,o,a){if(i.hasBreaks&&!s.treeGrid?.tree){let s,r=this.brokenAxis.breakArray||[];for(;s=i.findBreakAt(t,r);)t=s.to;for(;s=i.findBreakAt(e,r);)e=s.from;e<t&&(e=t)}s.constructor.prototype.setExtremes.call(this,t,e,r,o,a)},s.setAxisTranslation=function(){if(s.constructor.prototype.setAxisTranslation.call(this),i.unitLength=void 0,i.hasBreaks){let t=s.options.breaks||[],e=[],r=[],o=s.pointRangePadding??0,n=0,l,h,c=s.userMin??s.min,p=s.userMax??s.max,u,g,x=(0,a.isNumber)(c)?Math.min(s.dataMin??c,c):s.dataMin??c,m=(0,a.isNumber)(p)?Math.max(s.dataMax??p,p):s.dataMax??p;s.treeGrid?.tree||t.forEach(function(t){h=t.repeat||1/0,(0,a.isNumber)(c)&&(0,a.isNumber)(p)&&(d.isInBreak(t,c)&&(c+=t.to%h-c%h),d.isInBreak(t,p)&&(p-=p%h-t.from%h))}),(0,a.isNumber)(x)&&(0,a.isNumber)(m)&&t.forEach(function(t){for(u=t.from,h=t.repeat||1/0;u-h>x;)u-=h;for(;u<x;)u+=h;for(g=u;g<m;g+=h)e.push({value:g,move:"in"}),e.push({value:g+t.to-t.from,move:"out",size:t.breakSize})}),e.sort(function(t,e){return t.value===e.value?("in"!==t.move)-("in"!==e.move):t.value-e.value}),l=0,u=x,e.forEach(t=>{1===(l+="in"===t.move?1:-1)&&"in"===t.move&&(u=t.value),0===l&&(0,a.isNumber)(u)&&(r.push({from:u,to:t.value,len:t.value-u-(t.size||0)}),(0,a.isNumber)(c)&&(0,a.isNumber)(p)&&u<p&&t.value>c&&(n+=t.value-u-(t.size||0)))}),i.breakArray=r,(0,a.isNumber)(c)&&(0,a.isNumber)(p)&&(0,a.isNumber)(s.min)&&(i.unitLength=p-c-n+o,(0,a.fireEvent)(s,"afterBreaks"),s.staticScale?s.transA=s.staticScale:i.unitLength&&(s.transA*=(p-s.min+o)/i.unitLength),o&&(s.minPixelPadding=s.transA*(s.minPointOffset||0)),s.min=c,s.max=p)}}),(e??!0)&&s.chart.redraw()}}t.Additions=d}(u||(u={}));let ee=u,{dateFormats:ei}=x();function es(t){return(0,a.isObject)(t,!0)}function er(t,e){let i={width:0,height:0};if(e.forEach(function(e){let s=t[e],r=0,o=0,n;es(s)&&(r=(n=es(s.label)?s.label:{}).getBBox?n.getBBox().height:0,n.textStr&&!(0,a.isNumber)(n.textPxLength)&&(n.textPxLength=n.getBBox().width),o=(0,a.isNumber)(n.textPxLength)?Math.round(n.textPxLength):0,n.textStr&&(o=Math.round(n.getBBox().width)),i.height=Math.max(r,i.height),i.width=Math.max(o,i.width))}),"treegrid"===this.type&&this.treeGrid&&this.treeGrid.mapOfPosToGridNode){let t=this.treeGrid.mapOfPosToGridNode[-1].height||0;i.width+=this.options.labels.indentation*(t-1)}return i}function eo(t){let{grid:e}=this,i=3===this.side;if(i||t.apply(this),!e?.isColumn){let t=e?.columns||[];i&&(t=t.slice().reverse()),t.forEach(t=>{t.getOffset()})}i&&t.apply(this)}function ea(t){if(!0===(this.options.grid||{}).enabled){let{axisTitle:e,height:i,horiz:s,left:r,offset:o,opposite:a,options:n,top:l,width:h}=this,d=this.tickSize(),c=e?.getBBox().width,p=n.title,{x:u,y:x}=p,m=p.margin??(s?5:10),f=e?this.chart.renderer.fontMetrics(e).f:0,b=(s?l+i:r)+(s?1:-1)*(a?-1:1)*(d?d[0]/2:0)+(this.side===g.bottom?f:0);if(t.titlePosition.x=s?r-(c||0)/2-m+u:b+(a?h:0)+o+u,t.titlePosition.y=s?b-(a?i:0)+(a?f:-f)/2+o+x:l-m+x,!s){let[e=0]=d||[];"left"===p.textAlign?t.titlePosition.x-=e/2:"right"===p.textAlign&&(t.titlePosition.x+=e/2)}}}function en(){let t,{chart:e,options:{grid:i={}},userOptions:s}=this;if(i.enabled&&((t=this.options).labels.align=t.labels.align??"center",this.categories||(t.showLastLabel=!1),this.labelRotation=0,t.labels.rotation=0,t.minTickInterval=1),i.columns){let t=this.grid.columns=[],r=this.grid.columnIndex=0;for(;++r<i.columns.length;){let o=(0,a.merge)(s,i.columns[r],{isInternal:!0,linkedTo:0,scrollbar:{enabled:!1}},{grid:{columns:void 0}}),n=new(N())(this.chart,o,this.coll);n.grid.isColumn=!0,n.grid.columnIndex=r,(0,a.erase)(e.axes,n),(0,a.erase)(e[this.coll]||[],n),t.push(n)}}}function el(){let{axisTitle:t,grid:e,options:i}=this;if(!0===(i.grid||{}).enabled){let s=this.min||0,r=this.max||0,o=this.ticks[this.tickPositions[0]];if(t&&!this.chart.styledMode&&o?.slotWidth&&!this.options.title.style.width&&t.css({width:`${o.slotWidth}px`}),this.maxLabelDimensions=this.getMaxLabelDimensions(this.ticks,this.tickPositions),this.rightWall&&this.rightWall.destroy(),this.grid?.isOuterAxis()&&this.axisLine){let t=i.lineWidth;if(t){let e=this.getLinePath(t),o=e[0],a=e[1],n=(this.tickSize("tick")||[1])[0]*(this.side===g.top||this.side===g.left?-1:1);if("M"===o[0]&&"L"===a[0]&&(this.horiz?(o[2]+=n,a[2]+=n):(o[1]+=n,a[1]+=n)),!this.horiz&&this.chart.marginRight){let t=["L",this.left,o[2]||0],e=[o,t],n=["L",this.chart.chartWidth-this.chart.marginRight,this.toPixels(r+this.tickmarkOffset)],l=[["M",a[1]||0,this.toPixels(r+this.tickmarkOffset)],n];this.grid.upperBorder||s%1==0||(this.grid.upperBorder=this.grid.renderBorder(e)),this.grid.upperBorder&&(this.grid.upperBorder.attr({stroke:i.lineColor,"stroke-width":i.lineWidth}),this.grid.upperBorder.animate({d:e})),this.grid.lowerBorder||r%1==0||(this.grid.lowerBorder=this.grid.renderBorder(l)),this.grid.lowerBorder&&(this.grid.lowerBorder.attr({stroke:i.lineColor,"stroke-width":i.lineWidth}),this.grid.lowerBorder.animate({d:l}))}this.grid.axisLineExtra?(this.grid.axisLineExtra.attr({stroke:i.lineColor,"stroke-width":i.lineWidth}),this.grid.axisLineExtra.animate({d:e})):this.grid.axisLineExtra=this.grid.renderBorder(e),this.axisLine[this.showAxis?"show":"hide"]()}}if((e?.columns||[]).forEach(t=>t.render()),!this.horiz&&this.chart.hasRendered&&(this.scrollbar||this.linkedParent?.scrollbar)&&this.tickPositions.length){let t,e,i=this.tickmarkOffset,o=this.tickPositions[this.tickPositions.length-1],a=this.tickPositions[0];for(;(t=this.hiddenLabels.pop())&&t.element;)t.show();for(;(e=this.hiddenMarks.pop())&&e.element;)e.show();(t=this.ticks[a].label)&&(s-a>i?this.hiddenLabels.push(t.hide()):t.show()),(t=this.ticks[o].label)&&(o-r>i?this.hiddenLabels.push(t.hide()):t.show());let n=this.ticks[o].mark;n&&o-r<i&&o-r>0&&this.ticks[o].isLast&&this.hiddenMarks.push(n.hide())}}}function eh(){let t=this.tickPositions?.info,e=this.options,i=e.grid||{},s=this.userOptions.labels||{};i.enabled&&(this.horiz?(this.series.forEach(t=>{t.options.pointRange=0}),t&&e.dateTimeLabelFormats&&e.labels&&!(0,a.defined)(s.align)&&(!1===e.dateTimeLabelFormats[t.unitName].range||t.count>1)&&(e.labels.align="left",(0,a.defined)(s.x)||(e.labels.x=3))):"treegrid"!==this.type&&this.grid&&this.grid.columns&&(this.minPointOffset=this.tickInterval))}function ed(t){let e,i=this.options,s=t.userOptions,r=i&&es(i.grid)?i.grid:{};!0===r.enabled&&(e=(0,a.merge)(!0,{className:"highcharts-grid-axis "+(s.className||""),dateTimeLabelFormats:{hour:{list:["%[HM]","%[H]"]},day:{list:["%[AeB]","%[aeb]","%[E]"]},week:{list:["Week %W","W%W"]},month:{list:["%[B]","%[b]","%o"]}},grid:{borderWidth:1},labels:{padding:2,style:{fontSize:"0.9em"}},margin:0,title:{text:null,reserveSpace:!1,rotation:0,style:{textOverflow:"ellipsis"}},units:[["millisecond",[1,10,100]],["second",[1,10]],["minute",[1,5,15]],["hour",[1,6]],["day",[1]],["week",[1]],["month",[1]],["year",null]]},s),"xAxis"===this.coll&&((0,a.defined)(s.linkedTo)&&!(0,a.defined)(s.tickPixelInterval)&&(e.tickPixelInterval=350),!(!(0,a.defined)(s.tickPixelInterval)&&(0,a.defined)(s.linkedTo))||(0,a.defined)(s.tickPositioner)||(0,a.defined)(s.tickInterval)||(0,a.defined)(s.units)||(e.tickPositioner=function(t,i){let s=this.linkedParent?.tickPositions?.info;if(s){let r=e.units||[],o,n=1,l="year";for(let t=0;t<r.length;t++){let e=r[t];if(e&&e[0]===s.unitName){o=t;break}}let h=(0,a.isNumber)(o)&&r[o+1];if(h){l=h[0]||"year";let t=h[1];n=t?.[0]||1}else"year"===s.unitName&&(n=10*s.count);let d=a.timeUnits[l];return this.tickInterval=d*n,this.chart.time.getTimeTicks({unitRange:d,count:n,unitName:l},t,i,this.options.startOfWeek)}})),(0,a.merge)(!0,this.options,e),this.horiz&&(i.minPadding=s.minPadding??0,i.maxPadding=s.maxPadding??0),(0,a.isNumber)(i.grid.borderWidth)&&(i.tickWidth=i.lineWidth=r.borderWidth))}function ec(t){let e=t.userOptions,i=e?.grid||{},s=i.columns;i.enabled&&s&&(0,a.merge)(!0,this.options,s[0])}function ep(){(this.grid.columns||[]).forEach(t=>t.setScale())}function eu(t){let{horiz:e,maxLabelDimensions:i,options:{grid:s={}}}=this;if(s.enabled&&i){let r=2*this.options.labels.distance,o=e?s.cellHeight||r+i.height:r+i.width;(0,a.isArray)(t.tickSize)?t.tickSize[0]=o:t.tickSize=[o,0]}}function eg(){this.axes.forEach(t=>{(t.grid?.columns||[]).forEach(t=>{t.setAxisSize(),t.setAxisTranslation()})})}function ex(t){let{grid:e}=this;e&&((e.columns||[]).forEach(e=>e.destroy(t.keepEvents)),e.columns=void 0)}function em(t){let e=t.userOptions||{},i=(0,a.merge)({borderColor:"var(--highcharts-neutral-color-20)"},e.grid||{});i.enabled&&(0,a.defined)(i.borderColor)&&(e.tickColor=e.lineColor=i.borderColor),this.grid||(this.grid=new eM(this)),this.hiddenLabels=[],this.hiddenMarks=[],i.enabled&&(this.clippable=!1)}function ef(t){let e=this.label,i=this.axis,s=i.reversed,r=i.chart,o=i.options.grid||{},n=i.options.labels,l=n.align,h=g[i.side],d=t.tickmarkOffset,c=i.tickPositions,p=this.pos-d,u=(0,a.isNumber)(c[t.index+1])?c[t.index+1]-d:(i.max||0)+d,x=i.tickSize("tick"),m=x?x[0]:0,f=x?x[1]/2:0;if(!0===o.enabled){let o,a,d,c;if("top"===h?a=(o=i.top+i.offset)-m:"bottom"===h?o=(a=r.chartHeight-i.bottom+i.offset)+m:(o=i.top+i.len-(i.translate(s?u:p)||0),a=i.top+i.len-(i.translate(s?p:u)||0)),"right"===h?c=(d=r.chartWidth-i.right+i.offset)+m:"left"===h?d=(c=i.left+i.offset)-m:(d=Math.round(i.left+(i.translate(s?u:p)||0))-f,c=Math.min(Math.round(i.left+(i.translate(s?p:u)||0))-f,i.left+i.len)),this.slotWidth=c-d,t.pos.x="left"===l?d:"right"===l?c:d+(c-d)/2,t.pos.y=a+(o-a)/2,e){let i=r.renderer.fontMetrics(e),s=e.getBBox().height;if(n.useHTML)t.pos.y+=i.b+-(s/2);else{let e=Math.round(s/i.h);t.pos.y+=(i.b-(i.h-i.f))/2+-((e-1)*i.h/2)}}t.pos.x+=i.horiz&&n.x||0}}function eb(t){let{axis:e,value:i}=t;if(e.options.grid?.enabled){let s,r=e.tickPositions,o=(e.linkedParent||e).series,n=o.reduce((t,e)=>e.is("gantt")?t?.concat(e.options?.data??[]):t,[])??[],l=i===r[0],h=i===r[r.length-1],d=o[0]&&(0,a.find)(n,function(t){return t[e.isXAxis?"x":"y"]===i});d&&(s=(0,a.merge)(d),x().seriesTypes.gantt.prototype.pointClass.setGanttPointAliases(s,e.chart)),t.isFirst=l,t.isLast=h,t.point=s}}function ev(){let t=this.options,e=t.grid||{},i=this.categories,s=this.tickPositions,r=s[0],o=s[1],n=s[s.length-1],l=s[s.length-2],h=this.linkedParent?.min,d=this.linkedParent?.max,c=h||this.min,p=d||this.max,u=this.tickInterval,g=(0,a.isNumber)(c)&&c>=r+u&&c<o,x=(0,a.isNumber)(c)&&r<c&&r+u>c,m=(0,a.isNumber)(p)&&n>p&&n-u<p,f=(0,a.isNumber)(p)&&p<=n-u&&p>l;!0===e.enabled&&!i&&(this.isXAxis||this.isLinked)&&((x||g)&&!t.startOnTick&&(s[0]=c),(m||f)&&!t.endOnTick&&(s[s.length-1]=p))}function ey(t){var e;let{options:{grid:i={}}}=this;return!0===i.enabled&&this.categories?this.tickInterval:t.apply(this,(e=arguments,Array.prototype.slice.call(e,1)))}(l=g||(g={}))[l.top=0]="top",l[l.right=1]="right",l[l.bottom=2]="bottom",l[l.left=3]="left";class eM{constructor(t){this.axis=t}isOuterAxis(){let t=this.axis,e=t.chart,i=t.grid.columnIndex,s=t.linkedParent?.grid.columns||t.grid.columns||[],r=i?t.linkedParent:t,o=-1,n=0;return 3===t.side&&!e.inverted&&s.length?!t.linkedParent:((e[t.coll]||[]).forEach((e,i)=>{e.side!==t.side||e.options.isInternal||(n=i,e===r&&(o=i))}),n===o&&(!(0,a.isNumber)(i)||s.length===i))}renderBorder(t){let e=this.axis,i=e.chart.renderer,s=e.options,r=i.path(t).addClass("highcharts-axis-line").add(e.axisGroup);return i.styledMode||r.attr({stroke:s.lineColor,"stroke-width":s.lineWidth,zIndex:7}),r}}ei.E=function(t){return this.dateFormat("%a",t,!0).charAt(0)},ei.W=function(t){let e=this.toParts(t),i=(e[7]+6)%7,s=e.slice(0);s[2]=e[2]-i+3;let r=this.toParts(this.makeTime(s[0],0,1));return 4!==r[7]&&(e[1]=0,e[2]=1+(11-r[7])%7),(1+Math.floor((this.makeTime(s[0],s[1],s[2])-this.makeTime(r[0],r[1],r[2]))/6048e5)).toString()};function ek(t,e,i,s,r,o){let n=o&&o.after,l=o&&o.before,h={data:s,depth:i-1,id:t,level:i,parent:e||""},d=0,c=0,p,u;"function"==typeof l&&l(h,o);let g=(r[t]||[]).map(e=>{let s=ek(e.id,t,i+1,e,r,o),n=e.start||NaN,l=!0===e.milestone?n:e.end||NaN;return p=!(0,a.isNumber)(p)||n<p?n:p,u=!(0,a.isNumber)(u)||l>u?l:u,d=d+1+s.descendants,c=Math.max(s.height+1,c),s});return s&&(s.start??(s.start=p),s.end??(s.end=u)),(0,a.extend)(h,{children:g,descendants:d,height:c}),"function"==typeof n&&n(h,o),h}let eE=function(t,e){let i,s;return ek("",null,1,null,(i=[],Object.keys(s=t.reduce((t,e)=>{let{parent:s="",id:r}=e;return void 0===t[s]&&(t[s]=[]),t[s].push(e),r&&i.push(r),t},{})).forEach(t=>{if(""!==t&&-1===i.indexOf(t)){let e=s[t].map(function(t){let{...e}=t;return e});s[""].push(...e),delete s[t]}}),s),e)};function eA(){this.treeGrid||(this.treeGrid=new eB(this))}function ew(t,e,i,s,r,o,n,l,h){let d,c,p,u=this.options?.labels??o,g=this.pos,x=this.axis,m="treegrid"===x.type,f=t.apply(this,[e,i,s,r,u,n,l,h]);if(m){let{width:t=0,padding:e=5*!x.linkedParent}=u&&(0,a.isObject)(u.symbol,!0)?u.symbol:{},i=u&&(0,a.isNumber)(u.indentation)?u.indentation:0;d=x.treeGrid.mapOfPosToGridNode,c=d?.[g],p=c?.depth||1,f.x+=t+2*e+(p-1)*i}return f}function eO(t){let e,{pos:i,axis:s,label:r,treeGrid:o,options:n}=this,l=o?.labelIcon,h=r?.element,{treeGrid:d,options:c,chart:p,tickPositions:u}=s,g=d.mapOfPosToGridNode,x=n?.labels??c?.labels,m=x&&(0,a.isObject)(x.symbol,!0)?x.symbol:{},f=g?.[i],{descendants:b,depth:v}=f||{},y=f&&b&&b>0,M="treegrid"===s.type&&h,k=u.indexOf(i)>-1,E="highcharts-treegrid-node-",A=E+"level-",w=p.styledMode;if(M&&f&&r.removeClass(RegExp(A+".*")).addClass(A+v),t.apply(this,Array.prototype.slice.call(arguments,1)),M&&y){var O;let t,i,s,n,h,c,p,u,g,b,v,y;e=d.isCollapsed(f),O={color:!w&&r.styles.color||"",collapsed:e,group:r.parentGroup,options:m,renderer:r.renderer,show:k,xy:r.xy},i=!(t=this.treeGrid).labelIcon,s=O.renderer,n=O.xy,c=(h=O.options).width||0,p=h.height||0,u=h.padding??this.axis.linkedParent?0:5,g={x:n.x-c/2-u,y:n.y-p/2},b=O.collapsed?90:180,v=O.show&&(0,a.isNumber)(g.y),(y=t.labelIcon)||(t.labelIcon=y=s.path(s.symbols[h.type](h.x||0,h.y||0,c,p)).addClass("highcharts-label-icon").add(O.group)),y[v?"show":"hide"](),s.styledMode||y.attr({cursor:"pointer",fill:O.color||"var(--highcharts-neutral-color-60)","stroke-width":1,stroke:h.lineColor,strokeWidth:h.lineWidth||0}),y[i?"attr":"animate"]({translateX:g.x,translateY:g.y,rotation:b}),r.addClass(E+(e?"collapsed":"expanded")).removeClass(E+(e?"expanded":"collapsed")),w||r.css({cursor:"pointer"}),[r,l].forEach(t=>{t&&!t.attachedTreeGridEvents&&((0,a.addEvent)(t.element,"mouseover",function(){r.addClass("highcharts-treegrid-node-active"),r.renderer.styledMode||r.css({textDecoration:"underline"})}),(0,a.addEvent)(t.element,"mouseout",function(){let t;t=(0,a.isObject)(x.style)?x.style:{},r.removeClass("highcharts-treegrid-node-active"),r.renderer.styledMode||r.css({textDecoration:t.textDecoration||"none"})}),(0,a.addEvent)(t.element,"click",function(){o.toggleCollapse()}),t.attachedTreeGridEvents=!0)})}else l&&((0,a.removeEvent)(h),r?.css({cursor:"default"}),l.destroy(),o.labelIcon=void 0)}class eB{static compose(t){let e=t.prototype;e.toggleCollapse||((0,a.addEvent)(t,"init",eA),(0,a.wrap)(e,"getLabelPosition",ew),(0,a.wrap)(e,"renderLabel",eO),e.collapse=function(t){this.treeGrid.collapse(t)},e.expand=function(t){this.treeGrid.expand(t)},e.toggleCollapse=function(t){this.treeGrid.toggleCollapse(t)})}constructor(t){this.tick=t}collapse(t){let{pos:e,axis:i}=this.tick,{treeGrid:s,brokenAxis:r}=i,o=s.mapOfPosToGridNode;r&&o&&r.setBreaks(s.collapse(o[e]),t??!0)}destroy(){this.labelIcon?.destroy()}expand(t){let{pos:e,axis:i}=this.tick,{treeGrid:s,brokenAxis:r}=i,o=s.mapOfPosToGridNode;r&&o&&r.setBreaks(s.expand(o[e]),t??!0)}toggleCollapse(t=!0){let{axis:e,pos:i}=this.tick,{brokenAxis:s,treeGrid:r}=e;if(s&&r.mapOfPosToGridNode){let o=!!(e.scrollbar&&e.staticScale),n=e.pos+e.len+(r.pendingSizeAdjustment||0);if(r.pendingSizeAdjustment=0,s.setBreaks(r.toggleCollapse(r.mapOfPosToGridNode[i]),o&&t),o){let t=e.toValue(e.toPixels(e.dataMax)),i=e.toValue(n)-e.tickmarkOffset,s=e.userMin??e.min;if(r.adjustedMax=t!==e.dataMax?t-e.tickmarkOffset:void 0,i>e.dataMax){let t=n-e.toPixels(e.dataMax+e.tickmarkOffset);i=r.adjustedMax??e.dataMax,(s=e.toValue(e.toPixels(s-e.tickmarkOffset)-t)+e.tickmarkOffset)<e.dataMin&&(t=e.toPixels(e.dataMin)-e.toPixels(s),s=e.dataMin,r.pendingSizeAdjustment=t)}e.setExtremes((0,a.correctFloat)(s),(0,a.correctFloat)(i),!1,!1,{trigger:"toggleCollapse"})}t&&e.chart.redraw()}}}let eS=r.default.Color;var eT=o.n(eS);let{getLevelOptions:eP}={getColor:function(t,e){let i,s,r,o,a,n,l=e.index,h=e.mapOptionsToLevel,d=e.parentColor,c=e.parentColorIndex,p=e.series,u=e.colors,g=e.siblings,x=p.points,m=p.chart.options.chart;if(t){let f;i=x[t.i],s=h[t.level]||{},i&&s.colorByPoint&&(o=i.index%(u?u.length:m.colorCount),r=u&&u[o]),p.chart.styledMode||(a=(i&&i.options.color)??(s&&s.color)??r??(d&&((f=s&&s.colorVariation)&&"brightness"===f.key&&l&&g?eT().parse(d).brighten(f.to*(l/g)).get():d))??p.color),n=(i&&i.options.colorIndex)??(s&&s.colorIndex)??o??c??e.colorIndex}return{color:a,colorIndex:n}},getLevelOptions:function(t){let e,i,s,r,o,n,l={};if((0,a.isObject)(t))for(r=(0,a.isNumber)(t.from)?t.from:1,n=t.levels,i={},e=(0,a.isObject)(t.defaults)?t.defaults:{},(0,a.isArray)(n)&&(i=n.reduce((t,i)=>{let s,o,n;return(0,a.isObject)(i)&&(0,a.isNumber)(i.level)&&(o=(n=(0,a.merge)({},i)).levelIsConstant??e.levelIsConstant,delete n.levelIsConstant,delete n.level,s=i.level+(o?0:r-1),(0,a.isObject)(t[s])?(0,a.merge)(!0,t[s],n):t[s]=n),t},{})),o=(0,a.isNumber)(t.to)?t.to:1,s=0;s<=o;s++)l[s]=(0,a.merge)({},e,(0,a.isObject)(i[s])?i[s]:{});return l},getNodeWidth:function(t,e){let{chart:i,options:s}=t,{nodeDistance:r=0,nodeWidth:o=0}=s,{plotSizeX:n=1}=i;if("auto"===o){if("string"==typeof r&&/%$/.test(r))return n/(e+parseFloat(r)/100*(e-1));let t=Number(r);return(n+t)/(e||1)-t}return(0,a.relativeLength)(o,n)},setTreeValues:function t(e,i){let s=i.before,r=i.idRoot,o=i.mapIdToNode[r],n=!1!==i.levelIsConstant,l=i.points[e.i],h=l&&l.options||{},d=[],c=0;e.levelDynamic=e.level-(n?0:o.level),e.name=(l&&l.name)??"",e.visible=r===e.id||!0===i.visible,"function"==typeof s&&(e=s(e,i)),e.children.forEach((s,r)=>{let o=(0,a.extend)({},i);(0,a.extend)(o,{index:r,siblings:e.children.length,visible:e.visible}),s=t(s,o),d.push(s),s.visible&&(c+=s.val)});let p=h.value??c;return e.visible=p>=0&&(c>0||e.visible),e.children=d,e.childrenTotal=c,e.isLeaf=e.visible&&!c,e.val=p,e},updateRootId:function(t){let e,i;return(0,a.isObject)(t)&&(i=(0,a.isObject)(t.options)?t.options:{},e=t.rootNode??i.rootId??"",(0,a.isObject)(t.userOptions)&&(t.userOptions.rootId=e),t.rootNode=e),e}};function eN(t){return Array(t.dataTable.rowCount).fill(void 0).map((e,i)=>t.dataTable.getRowObject(i))}function eC(t){return{from:t.collapseStart||0,to:t.collapseEnd||0,showPoints:!1}}function eD(t,e,i){var s;let r,o=[],n=[],l={},h=e||!1,d={},c=-1,p=eE(t,{after:function(t){let e=d[t.pos],i=0,s=0;e.children.forEach(function(t){s+=(t.descendants||0)+1,i=Math.max((t.height||0)+1,i)}),e.descendants=s,e.height=i,e.collapsed&&n.push(e)},before:function(t){let e,i,s=(0,a.isObject)(t.data,!0)?t.data:{},r=(0,a.isString)(s.name)?s.name:"",n=l[t.parent],p=(0,a.isObject)(n,!0)?d[n.pos]:null;h&&(0,a.isObject)(p,!0)&&(e=(0,a.find)(p.children,function(t){return t.name===r}))?(i=e.pos,e.nodes.push(t)):i=c++,!d[i]&&(d[i]=e={depth:p?p.depth+1:0,name:r,id:s.id,nodes:[t],children:[],pos:i},-1!==i&&o.push(r),(0,a.isObject)(p,!0)&&p.children.push(e)),(0,a.isString)(t.id)&&(l[t.id]=t),e&&!0===s.collapsed&&(e.collapsed=!0),t.pos=i}});return s=d,{categories:o,mapOfIdToNode:l,mapOfPosToGridNode:d=(r=function(t,e,s){let o=t.nodes,n=e+(-1===e?0:i-1),l=(n-e)/2,h=e+l;return o.forEach(function(t){let i=t.data;(0,a.isObject)(i,!0)&&(i.y=e+(i.yIndex||0)),t.pos=h}),s[h]=t,t.pos=h,t.tickmarkOffset=l+.5,t.collapseStart=n+.5,t.children.forEach(function(t){r(t,n+1,s),n=(t.collapseEnd||0)-.5}),t.collapseEnd=n+.5,s})(s["-1"],-1,{}),collapsedNodes:n,tree:p}}function eI(t){let e=t.target;e.axes.filter(t=>"treegrid"===t.type).forEach(function(i){let s=i.options,r=s.labels,o=i.uniqueNames,n=e.time.parse(s.max),l=!i.treeGrid.mapOfPosToGridNode||i.series.some(function(t){return!t.hasRendered||t.isDirtyData||t.isDirty}),h=0,d,c;if(l){let s=[];if(d=i.series.reduce(function(t,i){let r=eN(i),n=r[0],l=Array.isArray(n)&&!n.find(t=>"object"==typeof t);return s.push(l),i.visible&&(r.forEach(function(s){(l||i.options.keys?.length)&&(s=i.pointClass.prototype.optionsToObject.call({series:i},s),i.pointClass.setGanttPointAliases(s,e)),(0,a.isObject)(s,!0)&&(s.yIndex=h,s.seriesIndex=i.index,t.push(s))}),!0===o&&h++),t},[]),n&&d.length<n)for(let t=d.length;t<=n;t++)d.push({name:t+""});i.categories=(c=eD(d,o||!1,!0===o?h:1)).categories,i.treeGrid.mapOfPosToGridNode=c.mapOfPosToGridNode,i.hasNames=!0,i.treeGrid.tree=c.tree,i.series.forEach(t=>{let e=d.filter(e=>e.seriesIndex===t.index);e.forEach(t=>{delete t.seriesIndex,delete t.yIndex}),t.visible&&t.setData(e,!1)}),i.treeGrid.mapOptionsToLevel=eP({defaults:r,from:1,levels:r?.levels,to:i.treeGrid.tree?.height}),"beforeRender"===t.type&&(i.treeGrid.collapsedNodes=c.collapsedNodes)}})}function eL(t,e){let s=this.treeGrid.mapOptionsToLevel||{},r="treegrid"===this.type,o=this.ticks,a=o[e],n,l,h;r&&this.treeGrid.mapOfPosToGridNode?((n=s[(h=this.treeGrid.mapOfPosToGridNode[e]).depth])&&(l={labels:n}),!a&&i?o[e]=a=new i(this,e,void 0,void 0,{category:h.name,tickmarkOffset:h.tickmarkOffset,options:l}):(a.parameters.category=h.name,a.options=l,a.addLabel(),this.isDirty=!0)):t.apply(this,Array.prototype.slice.call(arguments,1))}function ez(t,e,i,s){let r=this,o="treegrid"===i.type;r.treeGrid||(r.treeGrid=new eW(r)),o&&((0,a.addEvent)(e,"beforeRender",eI,{order:0}),(0,a.addEvent)(e,"beforeRedraw",eI),(0,a.addEvent)(e,"addSeries",function(t){if(t.options.data){let e=eD(t.options.data,i.uniqueNames||!1,1);r.treeGrid.collapsedNodes=(r.treeGrid.collapsedNodes||[]).concat(e.collapsedNodes)}}),(0,a.addEvent)(r,"foundExtremes",function(){r.treeGrid.collapsedNodes?.forEach(function(t){let e=r.treeGrid.collapse(t);r.brokenAxis&&(r.brokenAxis.setBreaks(e,!1),r.treeGrid.collapsedNodes&&(r.treeGrid.collapsedNodes=r.treeGrid.collapsedNodes.filter(e=>t.collapseStart!==e.collapseStart||t.collapseEnd!==e.collapseEnd)))})}),(0,a.addEvent)(r,"afterBreaks",function(){"yAxis"===r.coll&&!r.staticScale&&r.chart.options.chart.height&&(r.isDirty=!0)}),i=(0,a.merge)({grid:{enabled:!0},labels:{align:"left",levels:[{level:void 0},{level:1,style:{fontWeight:"bold"}}],symbol:{type:"triangle",x:-5,y:-3,height:6,width:8}},uniqueNames:!1},i,{reversed:!0})),t.apply(r,[e,i,s]),o&&(r.hasNames=!0,r.options.showLastLabel=!0)}function eG(t){let e=this.options,i=this.chart.time,s="number"==typeof e.linkedTo?this.chart[this.coll]?.[e.linkedTo]:void 0;if("treegrid"===this.type){if(this.min=this.userMin??i.parse(e.min)??this.dataMin,this.max=this.userMax??i.parse(e.max)??this.dataMax,(0,a.fireEvent)(this,"foundExtremes"),this.setAxisTranslation(),this.tickInterval=1,this.tickmarkOffset=.5,this.tickPositions=this.treeGrid.mapOfPosToGridNode?this.treeGrid.getTickPositions():[],s){let t=s.getExtremes();this.min=t.min??t.dataMin,this.max=t.max??t.dataMax,this.tickPositions=s.tickPositions}this.linkedParent=s}else t.apply(this,Array.prototype.slice.call(arguments,1))}function eR(t){let e=this;"treegrid"===this.type&&e.visible&&e.tickPositions.forEach(function(t){let i=e.ticks[t];i.label?.attachedTreeGridEvents&&((0,a.removeEvent)(i.label.element),i.label.attachedTreeGridEvents=!1)}),t.apply(e,Array.prototype.slice.call(arguments,1))}class eW{static compose(t,e,s,r){var o,n,l;if(!t.keepProps.includes("treeGrid")){let e=t.prototype;t.keepProps.push("treeGrid"),(0,a.wrap)(e,"generateTick",eL),(0,a.wrap)(e,"init",ez),(0,a.wrap)(e,"setTickInterval",eG),(0,a.wrap)(e,"redraw",eR),e.utils={getNode:ek},i||(i=r)}return o=t,n=e,l=r,o.keepProps.includes("grid")||(o.keepProps.push("grid"),o.prototype.getMaxLabelDimensions=er,(0,a.wrap)(o.prototype,"unsquish",ey),(0,a.wrap)(o.prototype,"getOffset",eo),(0,a.addEvent)(o,"init",em),(0,a.addEvent)(o,"afterGetTitlePosition",ea),(0,a.addEvent)(o,"afterInit",en),(0,a.addEvent)(o,"afterRender",el),(0,a.addEvent)(o,"afterSetAxisTranslation",eh),(0,a.addEvent)(o,"afterSetOptions",ed),(0,a.addEvent)(o,"afterSetOptions",ec),(0,a.addEvent)(o,"afterSetScale",ep),(0,a.addEvent)(o,"afterTickSize",eu),(0,a.addEvent)(o,"trimTicks",ev),(0,a.addEvent)(o,"destroy",ex),(0,a.addEvent)(n,"afterSetChartSize",eg),(0,a.addEvent)(l,"afterGetLabelPosition",ef),(0,a.addEvent)(l,"labelFormat",eb)),ee.compose(t,s),eB.compose(r),t}constructor(t){this.pendingSizeAdjustment=0,this.axis=t}setCollapsedStatus(t){let e=this.axis,i=e.chart;e.series.forEach(function(e){let s=eN(e);if(t.id&&s){let r=i.get(t.id),o=s[e.data.indexOf(r)];e.dataTable.setRow({collapsed:t.collapsed},e.data.indexOf(r)),r&&(0,a.isObject)(o,!0)&&(r.collapsed=t.collapsed,o.collapsed=t.collapsed)}})}collapse(t){let e=this.axis,i=e.options.breaks||[],s=eC(t);return i.push(s),t.collapsed=!0,e.treeGrid.setCollapsedStatus(t),i}expand(t){let e=this.axis,i=eC(t);return t.collapsed=!1,e.treeGrid.setCollapsedStatus(t),e.options.breaks?.reduce(function(t,e){return(e.to!==i.to||e.from!==i.from)&&t.push(e),t},[])||[]}getTickPositions(){let t=this.axis,e=Math.floor(t.min/t.tickInterval)*t.tickInterval,i=Math.ceil(t.max/t.tickInterval)*t.tickInterval;return Object.keys(t.treeGrid.mapOfPosToGridNode||{}).reduce(function(s,r){let o=+r;return o>=e&&o<=i&&!t.brokenAxis?.isInAnyBreak(o)&&s.push(o),s},[])}isCollapsed(t){let e=this.axis.options.breaks||[],i=eC(t);return e.some(function(t){return t.from===i.from&&t.to===i.to})}toggleCollapse(t){return this.isCollapsed(t)?this.expand(t):this.collapse(t)}}let{series:eF,seriesTypes:{xrange:eH}}=_();class eU extends eH{static compose(t,e,i,s){if(eH.compose(t),e){if((0,a.pushUnique)(t8,"StaticScale")){let i=e.prototype;(0,a.addEvent)(t,"afterSetOptions",t4),i.adjustHeight=t7,(0,a.addEvent)(e,"render",i.adjustHeight)}!i||(t6.compose(e,i.prototype.pointClass),s&&eW.compose(t,e,i,s))}}getColumn(t){let e=this.chart.time;if("x"===t){let t=super.getColumn("start");if(t.length)return t.map(t=>e.parse(t)??NaN)}return super.getColumn.apply(this,arguments)}drawPoint(t,e){let i=this.options,s=this.chart.renderer,r=t.shapeArgs,o=t.plotY,n=t.selected&&"select",l=i.stacking&&!i.borderRadius,h=t.graphic,d;t.options.milestone?(0,a.isNumber)(o)&&null!==t.y&&!1!==t.visible?(d=s.symbols.diamond(r.x||0,r.y||0,r.width||0,r.height||0),h?h[e]({d:d}):t.graphic=h=s.path(d).addClass(t.getClassName(),!0).add(t.group||this.group),this.chart.styledMode||t.graphic.attr(this.pointAttribs(t,n)).shadow(i.shadow,null,l)):h&&(t.graphic=h.destroy()):super.drawPoint(t,e)}translatePoint(t){let e,i;super.translatePoint(t),t.options.milestone&&(i=(e=t.shapeArgs).height||0,t.shapeArgs={x:(e.x||0)-i/2,y:e.y,width:i,height:i})}}eU.defaultOptions=(0,a.merge)(eH.defaultOptions,{grouping:!1,dataLabels:{enabled:!0},tooltip:{headerFormat:'<span style="font-size: 0.8em">{series.name}</span><br/>',pointFormat:null,pointFormatter:function(){let t=this.series,e=t.xAxis,i=t.tooltipOptions.dateTimeLabelFormats,s=e.options.startOfWeek,r=t.tooltipOptions,o=this.options.milestone,n=r.xDateFormat,l="<b>"+(this.name||this.yCategory)+"</b>";if(r.pointFormat)return this.tooltipFormatter(r.pointFormat);!n&&(0,a.isNumber)(this.start)&&(n=t.chart.time.getDateFormat(e.closestPointRange,this.start,s,i||{}));let h=t.chart.time.dateFormat(n,this.start),d=t.chart.time.dateFormat(n,this.end);return l+="<br/>",o?l+=h+"<br/>":l+="Start: "+h+"<br/>"+("End: "+d)+"<br/>",l}},connectors:{type:"simpleConnect",animation:{reversed:!0},radius:0,startMarker:{enabled:!0,symbol:"arrow-filled",radius:4,align:"left"},endMarker:{enabled:!1,align:"right"}}}),(0,a.extend)(eU.prototype,{pointArrayMap:["start","end","y"],pointClass:tF,setData:eF.prototype.setData}),_().registerSeriesType("gantt",eU);let ej=x();ej.Connection=ej.Connection||k,ej.GanttChart=ej.GanttChart||T,ej.Navigator=ej.Navigator||tm,ej.RangeSelector=ej.RangeSelector||tR,ej.Scrollbar=ej.Scrollbar||tp,ej.ganttChart=ej.GanttChart.ganttChart,(s=ej.SVGRenderer.prototype.symbols).arrow=m,s["arrow-filled"]=f,s["arrow-filled-half"]=b,s["arrow-half"]=function(t,e,i,s){return m(t,e,i/2,s)},s["triangle-left"]=f,s["triangle-left-half"]=b,h=ej.Axis,d=ej.PlotLineOrBand,(0,a.pushUnique)(E,"CurrentDateIndication")&&((0,a.addEvent)(h,"afterSetOptions",function(){let t=this.options,e=t.currentDateIndicator;if(e){let i="object"==typeof e?(0,a.merge)(A,e):(0,a.merge)(A);i.value=Date.now(),i.className="highcharts-current-date-indicator",t.plotLines??(t.plotLines=[]),t.plotLines.push(i)}}),(0,a.addEvent)(d,"render",function(){this.label?.attr({text:this.getLabelText(this.options.label||{})})}),(0,a.wrap)(d.prototype,"getLabelText",function(t,e){if(this.options.className&&-1!==this.options.className.indexOf("highcharts-current-date-indicator")&&"function"==typeof this.options.label?.formatter){let t=this.options;return t.value=Date.now(),t.label?.formatter?.call(this,t.value,t.label.format,this)||""}return t.call(this,e)})),eU.compose(ej.Axis,ej.Chart,ej.Series,ej.Tick),ej.Navigator.compose(ej.Chart,ej.Axis,ej.Series),ej.RangeSelector.compose(ej.Axis,ej.Chart),ej.Scrollbar.compose(ej.Axis);let eY=x();export{eY as default};
|