stream-charts 1.2.1 → 2.0.1-snapshot
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/LICENSE +21 -0
- package/README.md +809 -1022
- package/changes.md +36 -0
- package/dist/app/charts/Chart.d.ts +35 -139
- package/dist/app/charts/Chart.d.ts.map +1 -0
- package/dist/app/charts/Chart.js +74 -65
- package/dist/app/charts/Chart.js.map +1 -1
- package/dist/app/charts/axes/AxesState.d.ts +26 -18
- package/dist/app/charts/axes/AxesState.d.ts.map +1 -0
- package/dist/app/charts/axes/AxesState.js +26 -24
- package/dist/app/charts/axes/AxesState.js.map +1 -1
- package/dist/app/charts/axes/AxisInterval.d.ts +44 -26
- package/dist/app/charts/axes/AxisInterval.d.ts.map +1 -0
- package/dist/app/charts/axes/AxisInterval.js +48 -29
- package/dist/app/charts/axes/AxisInterval.js.map +1 -1
- package/dist/app/charts/axes/BaseAxisRange.d.ts +46 -22
- package/dist/app/charts/axes/BaseAxisRange.d.ts.map +1 -0
- package/dist/app/charts/axes/BaseAxisRange.js +17 -12
- package/dist/app/charts/axes/BaseAxisRange.js.map +1 -1
- package/dist/app/charts/axes/ContinuousAxis.d.ts +47 -6
- package/dist/app/charts/axes/ContinuousAxis.d.ts.map +1 -0
- package/dist/app/charts/axes/ContinuousAxis.js +160 -27
- package/dist/app/charts/axes/ContinuousAxis.js.map +1 -1
- package/dist/app/charts/axes/ContinuousAxisRange.d.ts +29 -10
- package/dist/app/charts/axes/ContinuousAxisRange.d.ts.map +1 -0
- package/dist/app/charts/axes/ContinuousAxisRange.js +29 -11
- package/dist/app/charts/axes/ContinuousAxisRange.js.map +1 -1
- package/dist/app/charts/axes/EmptyAxis.d.ts +5 -2
- package/dist/app/charts/axes/EmptyAxis.d.ts.map +1 -0
- package/dist/app/charts/axes/EmptyAxis.js +30 -9
- package/dist/app/charts/axes/EmptyAxis.js.map +1 -1
- package/dist/app/charts/axes/OrdinalAxis.d.ts +5 -3
- package/dist/app/charts/axes/OrdinalAxis.d.ts.map +1 -0
- package/dist/app/charts/axes/OrdinalAxis.js +39 -16
- package/dist/app/charts/axes/OrdinalAxis.js.map +1 -1
- package/dist/app/charts/axes/OrdinalAxisRange.d.ts +76 -13
- package/dist/app/charts/axes/OrdinalAxisRange.d.ts.map +1 -0
- package/dist/app/charts/axes/OrdinalAxisRange.js +95 -16
- package/dist/app/charts/axes/OrdinalAxisRange.js.map +1 -1
- package/dist/app/charts/axes/autoScale.d.ts +111 -0
- package/dist/app/charts/axes/autoScale.d.ts.map +1 -0
- package/dist/app/charts/axes/autoScale.js +188 -0
- package/dist/app/charts/axes/autoScale.js.map +1 -0
- package/dist/app/charts/axes/axes.d.ts +273 -150
- package/dist/app/charts/axes/axes.d.ts.map +1 -0
- package/dist/app/charts/axes/axes.js +808 -583
- package/dist/app/charts/axes/axes.js.map +1 -1
- package/dist/app/charts/d3types.d.ts +40 -11
- package/dist/app/charts/d3types.d.ts.map +1 -0
- package/dist/app/charts/d3types.js +3 -0
- package/dist/app/charts/d3types.js.map +1 -1
- package/dist/app/charts/datasources/StreamingDataSource.d.ts +149 -0
- package/dist/app/charts/datasources/StreamingDataSource.d.ts.map +1 -0
- package/dist/app/charts/datasources/StreamingDataSource.js +110 -0
- package/dist/app/charts/datasources/StreamingDataSource.js.map +1 -0
- package/dist/app/charts/datasources/iteratesDataSource.d.ts +73 -0
- package/dist/app/charts/datasources/iteratesDataSource.d.ts.map +1 -0
- package/dist/app/charts/datasources/iteratesDataSource.js +87 -0
- package/dist/app/charts/datasources/iteratesDataSource.js.map +1 -0
- package/dist/app/charts/datasources/ordinalDataSource.d.ts +75 -0
- package/dist/app/charts/datasources/ordinalDataSource.d.ts.map +1 -0
- package/dist/app/charts/datasources/ordinalDataSource.js +135 -0
- package/dist/app/charts/datasources/ordinalDataSource.js.map +1 -0
- package/dist/app/charts/datasources/outlierDataSource.d.ts +53 -0
- package/dist/app/charts/datasources/outlierDataSource.d.ts.map +1 -0
- package/dist/app/charts/datasources/outlierDataSource.js +57 -0
- package/dist/app/charts/datasources/outlierDataSource.js.map +1 -0
- package/dist/app/charts/datasources/timeSeriesDataSource.d.ts +77 -0
- package/dist/app/charts/datasources/timeSeriesDataSource.d.ts.map +1 -0
- package/dist/app/charts/datasources/timeSeriesDataSource.js +85 -0
- package/dist/app/charts/datasources/timeSeriesDataSource.js.map +1 -0
- package/dist/app/charts/filters/regexFilter.d.ts +31 -4
- package/dist/app/charts/filters/regexFilter.d.ts.map +1 -0
- package/dist/app/charts/filters/regexFilter.js +38 -4
- package/dist/app/charts/filters/regexFilter.js.map +1 -1
- package/dist/app/charts/hooks/AxesProvider.d.ts +21 -0
- package/dist/app/charts/hooks/AxesProvider.d.ts.map +1 -0
- package/dist/app/charts/hooks/AxesProvider.js +213 -0
- package/dist/app/charts/hooks/AxesProvider.js.map +1 -0
- package/dist/app/charts/hooks/CanvasSurfaceProvider.d.ts +25 -0
- package/dist/app/charts/hooks/CanvasSurfaceProvider.d.ts.map +1 -0
- package/dist/app/charts/hooks/CanvasSurfaceProvider.js +76 -0
- package/dist/app/charts/hooks/CanvasSurfaceProvider.js.map +1 -0
- package/dist/app/charts/hooks/ChartProvider.d.ts +40 -0
- package/dist/app/charts/hooks/ChartProvider.d.ts.map +1 -0
- package/dist/app/charts/hooks/ChartProvider.js +33 -0
- package/dist/app/charts/hooks/ChartProvider.js.map +1 -0
- package/dist/app/charts/hooks/InteractionProvider.d.ts +23 -0
- package/dist/app/charts/hooks/InteractionProvider.d.ts.map +1 -0
- package/dist/app/charts/hooks/InteractionProvider.js +60 -0
- package/dist/app/charts/hooks/InteractionProvider.js.map +1 -0
- package/dist/app/charts/hooks/PlotDimensionsProvider.d.ts +16 -0
- package/dist/app/charts/hooks/PlotDimensionsProvider.d.ts.map +1 -0
- package/dist/app/charts/hooks/PlotDimensionsProvider.js +76 -0
- package/dist/app/charts/hooks/PlotDimensionsProvider.js.map +1 -0
- package/dist/app/charts/hooks/defaultAxesValues.d.ts +11 -0
- package/dist/app/charts/hooks/defaultAxesValues.d.ts.map +1 -0
- package/dist/app/charts/hooks/defaultAxesValues.js +36 -0
- package/dist/app/charts/hooks/defaultAxesValues.js.map +1 -0
- package/dist/app/charts/hooks/defaultMouseValues.d.ts +9 -0
- package/dist/app/charts/hooks/defaultMouseValues.d.ts.map +1 -0
- package/dist/app/charts/hooks/defaultMouseValues.js +23 -0
- package/dist/app/charts/hooks/defaultMouseValues.js.map +1 -0
- package/dist/app/charts/hooks/defaultPlotDimensions.d.ts +13 -0
- package/dist/app/charts/hooks/defaultPlotDimensions.d.ts.map +1 -0
- package/dist/app/charts/hooks/defaultPlotDimensions.js +23 -0
- package/dist/app/charts/hooks/defaultPlotDimensions.js.map +1 -0
- package/dist/app/charts/hooks/defaultTooltipValues.d.ts +9 -0
- package/dist/app/charts/hooks/defaultTooltipValues.d.ts.map +1 -0
- package/dist/app/charts/hooks/defaultTooltipValues.js +21 -0
- package/dist/app/charts/hooks/defaultTooltipValues.js.map +1 -0
- package/dist/app/charts/hooks/defaultUseChartValues.d.ts +14 -0
- package/dist/app/charts/hooks/defaultUseChartValues.d.ts.map +1 -0
- package/dist/app/charts/hooks/defaultUseChartValues.js +30 -0
- package/dist/app/charts/hooks/defaultUseChartValues.js.map +1 -0
- package/dist/app/charts/hooks/useAxes.d.ts +49 -36
- package/dist/app/charts/hooks/useAxes.d.ts.map +1 -0
- package/dist/app/charts/hooks/useAxes.js +16 -176
- package/dist/app/charts/hooks/useAxes.js.map +1 -1
- package/dist/app/charts/hooks/useCanvasSurface.d.ts +25 -0
- package/dist/app/charts/hooks/useCanvasSurface.d.ts.map +1 -0
- package/dist/app/charts/hooks/useCanvasSurface.js +18 -0
- package/dist/app/charts/hooks/useCanvasSurface.js.map +1 -0
- package/dist/app/charts/hooks/useChart.d.ts +30 -44
- package/dist/app/charts/hooks/useChart.d.ts.map +1 -0
- package/dist/app/charts/hooks/useChart.js +26 -48
- package/dist/app/charts/hooks/useChart.js.map +1 -1
- package/dist/app/charts/hooks/useDataSource.d.ts +68 -0
- package/dist/app/charts/hooks/useDataSource.d.ts.map +1 -0
- package/dist/app/charts/hooks/useDataSource.js +63 -0
- package/dist/app/charts/hooks/useDataSource.js.map +1 -0
- package/dist/app/charts/hooks/useHoveredSeries.d.ts +25 -0
- package/dist/app/charts/hooks/useHoveredSeries.d.ts.map +1 -0
- package/dist/app/charts/hooks/useHoveredSeries.js +15 -0
- package/dist/app/charts/hooks/useHoveredSeries.js.map +1 -0
- package/dist/app/charts/hooks/useMouse.d.ts +46 -22
- package/dist/app/charts/hooks/useMouse.d.ts.map +1 -0
- package/dist/app/charts/hooks/useMouse.js +12 -56
- package/dist/app/charts/hooks/useMouse.js.map +1 -1
- package/dist/app/charts/hooks/usePlotDimensions.d.ts +25 -13
- package/dist/app/charts/hooks/usePlotDimensions.d.ts.map +1 -0
- package/dist/app/charts/hooks/usePlotDimensions.js +6 -62
- package/dist/app/charts/hooks/usePlotDimensions.js.map +1 -1
- package/dist/app/charts/hooks/useTooltip.d.ts +24 -26
- package/dist/app/charts/hooks/useTooltip.d.ts.map +1 -0
- package/dist/app/charts/hooks/useTooltip.js +12 -42
- package/dist/app/charts/hooks/useTooltip.js.map +1 -1
- package/dist/app/charts/index.d.ts +66 -0
- package/dist/app/charts/index.d.ts.map +1 -0
- package/dist/app/charts/index.js +87 -0
- package/dist/app/charts/index.js.map +1 -0
- package/dist/app/charts/legends/Legend.d.ts +33 -12
- package/dist/app/charts/legends/Legend.d.ts.map +1 -0
- package/dist/app/charts/legends/Legend.js +138 -379
- package/dist/app/charts/legends/Legend.js.map +1 -1
- package/dist/app/charts/legends/constants.d.ts +19 -0
- package/dist/app/charts/legends/constants.d.ts.map +1 -0
- package/dist/app/charts/legends/constants.js +34 -0
- package/dist/app/charts/legends/constants.js.map +1 -0
- package/dist/app/charts/observables/ChartData.d.ts +1 -0
- package/dist/app/charts/observables/ChartData.d.ts.map +1 -0
- package/dist/app/charts/observables/iterates.d.ts +13 -7
- package/dist/app/charts/observables/iterates.d.ts.map +1 -0
- package/dist/app/charts/observables/iterates.js +42 -9
- package/dist/app/charts/observables/iterates.js.map +1 -1
- package/dist/app/charts/observables/ordinals.d.ts +70 -12
- package/dist/app/charts/observables/ordinals.d.ts.map +1 -0
- package/dist/app/charts/observables/ordinals.js +127 -48
- package/dist/app/charts/observables/ordinals.js.map +1 -1
- package/dist/app/charts/observables/outliers.d.ts +18 -0
- package/dist/app/charts/observables/outliers.d.ts.map +1 -0
- package/dist/app/charts/observables/outliers.js +2 -0
- package/dist/app/charts/observables/outliers.js.map +1 -0
- package/dist/app/charts/plots/BarPlot.d.ts +87 -13
- package/dist/app/charts/plots/BarPlot.d.ts.map +1 -0
- package/dist/app/charts/plots/BarPlot.js +603 -356
- package/dist/app/charts/plots/BarPlot.js.map +1 -1
- package/dist/app/charts/plots/OutlierPlot.d.ts +123 -0
- package/dist/app/charts/plots/OutlierPlot.d.ts.map +1 -0
- package/dist/app/charts/plots/OutlierPlot.js +430 -0
- package/dist/app/charts/plots/OutlierPlot.js.map +1 -0
- package/dist/app/charts/plots/PoincarePlot.d.ts +92 -14
- package/dist/app/charts/plots/PoincarePlot.d.ts.map +1 -0
- package/dist/app/charts/plots/PoincarePlot.js +523 -364
- package/dist/app/charts/plots/PoincarePlot.js.map +1 -1
- package/dist/app/charts/plots/RasterPlot.d.ts +31 -10
- package/dist/app/charts/plots/RasterPlot.d.ts.map +1 -0
- package/dist/app/charts/plots/RasterPlot.js +198 -306
- package/dist/app/charts/plots/RasterPlot.js.map +1 -1
- package/dist/app/charts/plots/ScatterPlot.d.ts +77 -21
- package/dist/app/charts/plots/ScatterPlot.d.ts.map +1 -0
- package/dist/app/charts/plots/ScatterPlot.js +359 -302
- package/dist/app/charts/plots/ScatterPlot.js.map +1 -1
- package/dist/app/charts/plots/autoScaleYAxes.d.ts +43 -0
- package/dist/app/charts/plots/autoScaleYAxes.d.ts.map +1 -0
- package/dist/app/charts/plots/autoScaleYAxes.js +71 -0
- package/dist/app/charts/plots/autoScaleYAxes.js.map +1 -0
- package/dist/app/charts/plots/colorizedLine.d.ts +61 -0
- package/dist/app/charts/plots/colorizedLine.d.ts.map +1 -0
- package/dist/app/charts/plots/colorizedLine.js +157 -0
- package/dist/app/charts/plots/colorizedLine.js.map +1 -0
- package/dist/app/charts/plots/constants.d.ts +7 -0
- package/dist/app/charts/plots/constants.d.ts.map +1 -0
- package/dist/app/charts/plots/constants.js +11 -0
- package/dist/app/charts/plots/constants.js.map +1 -0
- package/dist/app/charts/plots/hitTesting.d.ts +88 -0
- package/dist/app/charts/plots/hitTesting.d.ts.map +1 -0
- package/dist/app/charts/plots/hitTesting.js +136 -0
- package/dist/app/charts/plots/hitTesting.js.map +1 -0
- package/dist/app/charts/plots/plot.d.ts +52 -16
- package/dist/app/charts/plots/plot.d.ts.map +1 -0
- package/dist/app/charts/plots/plot.js +108 -35
- package/dist/app/charts/plots/plot.js.map +1 -1
- package/dist/app/charts/plots/useCanvasZoomPan.d.ts +119 -0
- package/dist/app/charts/plots/useCanvasZoomPan.d.ts.map +1 -0
- package/dist/app/charts/plots/useCanvasZoomPan.js +113 -0
- package/dist/app/charts/plots/useCanvasZoomPan.js.map +1 -0
- package/dist/app/charts/plots/useStreamingTimeAxes.d.ts +103 -0
- package/dist/app/charts/plots/useStreamingTimeAxes.d.ts.map +1 -0
- package/dist/app/charts/plots/useStreamingTimeAxes.js +257 -0
- package/dist/app/charts/plots/useStreamingTimeAxes.js.map +1 -0
- package/dist/app/charts/series/baseSeries.d.ts +60 -8
- package/dist/app/charts/series/baseSeries.d.ts.map +1 -0
- package/dist/app/charts/series/baseSeries.js +53 -8
- package/dist/app/charts/series/baseSeries.js.map +1 -1
- package/dist/app/charts/series/iterateSeries.d.ts +9 -8
- package/dist/app/charts/series/iterateSeries.d.ts.map +1 -0
- package/dist/app/charts/series/iterateSeries.js +7 -7
- package/dist/app/charts/series/iterateSeries.js.map +1 -1
- package/dist/app/charts/series/ordinalSeries.d.ts +27 -13
- package/dist/app/charts/series/ordinalSeries.d.ts.map +1 -0
- package/dist/app/charts/series/ordinalSeries.js +29 -15
- package/dist/app/charts/series/ordinalSeries.js.map +1 -1
- package/dist/app/charts/series/outlierSeries.d.ts +142 -0
- package/dist/app/charts/series/outlierSeries.d.ts.map +1 -0
- package/dist/app/charts/series/outlierSeries.js +82 -0
- package/dist/app/charts/series/outlierSeries.js.map +1 -0
- package/dist/app/charts/series/timeSeries.d.ts +13 -9
- package/dist/app/charts/series/timeSeries.d.ts.map +1 -0
- package/dist/app/charts/series/timeSeries.js +6 -3
- package/dist/app/charts/series/timeSeries.js.map +1 -1
- package/dist/app/charts/series/timeSeriesChartData.d.ts +18 -10
- package/dist/app/charts/series/timeSeriesChartData.d.ts.map +1 -0
- package/dist/app/charts/series/timeSeriesChartData.js +28 -14
- package/dist/app/charts/series/timeSeriesChartData.js.map +1 -1
- package/dist/app/charts/styling/barPlotStyle.d.ts +46 -2
- package/dist/app/charts/styling/barPlotStyle.d.ts.map +1 -0
- package/dist/app/charts/styling/barPlotStyle.js +37 -3
- package/dist/app/charts/styling/barPlotStyle.js.map +1 -1
- package/dist/app/charts/styling/canvasStyle.d.ts +53 -0
- package/dist/app/charts/styling/canvasStyle.d.ts.map +1 -0
- package/dist/app/charts/styling/canvasStyle.js +71 -0
- package/dist/app/charts/styling/canvasStyle.js.map +1 -0
- package/dist/app/charts/styling/margins.d.ts +21 -2
- package/dist/app/charts/styling/margins.d.ts.map +1 -0
- package/dist/app/charts/styling/margins.js +25 -4
- package/dist/app/charts/styling/margins.js.map +1 -1
- package/dist/app/charts/styling/svgStyle.d.ts +10 -56
- package/dist/app/charts/styling/svgStyle.d.ts.map +1 -0
- package/dist/app/charts/styling/svgStyle.js +3 -78
- package/dist/app/charts/styling/svgStyle.js.map +1 -1
- package/dist/app/charts/subscriptions/viewDrivers.d.ts +124 -0
- package/dist/app/charts/subscriptions/viewDrivers.d.ts.map +1 -0
- package/dist/app/charts/subscriptions/viewDrivers.js +338 -0
- package/dist/app/charts/subscriptions/viewDrivers.js.map +1 -0
- package/dist/app/charts/tooltips/BarPlotTooltipContent.d.ts +12 -78
- package/dist/app/charts/tooltips/BarPlotTooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/BarPlotTooltipContent.js +65 -257
- package/dist/app/charts/tooltips/BarPlotTooltipContent.js.map +1 -1
- package/dist/app/charts/tooltips/DefaultOutlierTooltipContent.d.ts +9 -0
- package/dist/app/charts/tooltips/DefaultOutlierTooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/DefaultOutlierTooltipContent.js +16 -0
- package/dist/app/charts/tooltips/DefaultOutlierTooltipContent.js.map +1 -0
- package/dist/app/charts/tooltips/OutlierPlotTooltipContent.d.ts +30 -0
- package/dist/app/charts/tooltips/OutlierPlotTooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/OutlierPlotTooltipContent.js +26 -0
- package/dist/app/charts/tooltips/OutlierPlotTooltipContent.js.map +1 -0
- package/dist/app/charts/tooltips/PoincarePlotTooltipContent.d.ts +22 -72
- package/dist/app/charts/tooltips/PoincarePlotTooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/PoincarePlotTooltipContent.js +104 -171
- package/dist/app/charts/tooltips/PoincarePlotTooltipContent.js.map +1 -1
- package/dist/app/charts/tooltips/RasterPlotTooltipContent.d.ts +32 -8
- package/dist/app/charts/tooltips/RasterPlotTooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/RasterPlotTooltipContent.js +62 -115
- package/dist/app/charts/tooltips/RasterPlotTooltipContent.js.map +1 -1
- package/dist/app/charts/tooltips/ScatterPlotTooltipContent.d.ts +39 -12
- package/dist/app/charts/tooltips/ScatterPlotTooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/ScatterPlotTooltipContent.js +162 -134
- package/dist/app/charts/tooltips/ScatterPlotTooltipContent.js.map +1 -1
- package/dist/app/charts/tooltips/Tooltip.d.ts +27 -32
- package/dist/app/charts/tooltips/Tooltip.d.ts.map +1 -0
- package/dist/app/charts/tooltips/Tooltip.js +37 -81
- package/dist/app/charts/tooltips/Tooltip.js.map +1 -1
- package/dist/app/charts/tooltips/TooltipContent.d.ts +81 -0
- package/dist/app/charts/tooltips/TooltipContent.d.ts.map +1 -0
- package/dist/app/charts/tooltips/TooltipContent.js +99 -0
- package/dist/app/charts/tooltips/TooltipContent.js.map +1 -0
- package/dist/app/charts/tooltips/tooltipUtils.d.ts +186 -36
- package/dist/app/charts/tooltips/tooltipUtils.d.ts.map +1 -0
- package/dist/app/charts/tooltips/tooltipUtils.js +277 -48
- package/dist/app/charts/tooltips/tooltipUtils.js.map +1 -1
- package/dist/app/charts/tooltips/useOutlierTooltip.d.ts +59 -0
- package/dist/app/charts/tooltips/useOutlierTooltip.d.ts.map +1 -0
- package/dist/app/charts/tooltips/useOutlierTooltip.js +16 -0
- package/dist/app/charts/tooltips/useOutlierTooltip.js.map +1 -0
- package/dist/app/charts/tooltips/useTooltipPlacement.d.ts +51 -0
- package/dist/app/charts/tooltips/useTooltipPlacement.d.ts.map +1 -0
- package/dist/app/charts/tooltips/useTooltipPlacement.js +52 -0
- package/dist/app/charts/tooltips/useTooltipPlacement.js.map +1 -0
- package/dist/app/charts/tooltips/useTooltipStyle.d.ts +11 -0
- package/dist/app/charts/tooltips/useTooltipStyle.d.ts.map +1 -0
- package/dist/app/charts/tooltips/useTooltipStyle.js +14 -0
- package/dist/app/charts/tooltips/useTooltipStyle.js.map +1 -0
- package/dist/app/charts/trackers/Tracker.d.ts +22 -6
- package/dist/app/charts/trackers/Tracker.d.ts.map +1 -0
- package/dist/app/charts/trackers/Tracker.js +36 -22
- package/dist/app/charts/trackers/Tracker.js.map +1 -1
- package/dist/app/charts/trackers/trackerUtils.d.ts +40 -18
- package/dist/app/charts/trackers/trackerUtils.d.ts.map +1 -0
- package/dist/app/charts/trackers/trackerUtils.js +213 -300
- package/dist/app/charts/trackers/trackerUtils.js.map +1 -1
- package/dist/app/charts/utils.d.ts +72 -33
- package/dist/app/charts/utils.d.ts.map +1 -0
- package/dist/app/charts/utils.js +87 -42
- package/dist/app/charts/utils.js.map +1 -1
- package/dist/index.d.ts +2 -45
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -72
- package/dist/index.js.map +1 -1
- package/package.json +87 -46
- package/src/app/charts/Chart.tsx +132 -168
- package/src/app/charts/axes/AxesState.ts +27 -29
- package/src/app/charts/axes/AxisInterval.ts +57 -32
- package/src/app/charts/axes/BaseAxisRange.ts +47 -27
- package/src/app/charts/axes/ContinuousAxis.tsx +235 -39
- package/src/app/charts/axes/ContinuousAxisRange.ts +29 -11
- package/src/app/charts/axes/EmptyAxis.tsx +52 -17
- package/src/app/charts/axes/OrdinalAxis.tsx +54 -28
- package/src/app/charts/axes/OrdinalAxisRange.ts +96 -16
- package/src/app/charts/axes/autoScale.ts +244 -0
- package/src/app/charts/axes/axes.ts +954 -735
- package/src/app/charts/d3types.ts +42 -13
- package/src/app/charts/datasources/StreamingDataSource.ts +214 -0
- package/src/app/charts/datasources/iteratesDataSource.ts +122 -0
- package/src/app/charts/datasources/ordinalDataSource.ts +205 -0
- package/src/app/charts/datasources/outlierDataSource.ts +90 -0
- package/src/app/charts/datasources/timeSeriesDataSource.ts +133 -0
- package/src/app/charts/filters/regexFilter.ts +45 -5
- package/src/app/charts/hooks/AxesProvider.tsx +301 -0
- package/src/app/charts/hooks/CanvasSurfaceProvider.tsx +117 -0
- package/src/app/charts/hooks/ChartProvider.tsx +79 -0
- package/src/app/charts/hooks/InteractionProvider.tsx +88 -0
- package/src/app/charts/hooks/PlotDimensionsProvider.tsx +109 -0
- package/src/app/charts/hooks/defaultAxesValues.ts +40 -0
- package/src/app/charts/hooks/defaultMouseValues.ts +24 -0
- package/src/app/charts/hooks/defaultPlotDimensions.ts +27 -0
- package/src/app/charts/hooks/defaultTooltipValues.tsx +23 -0
- package/src/app/charts/hooks/defaultUseChartValues.tsx +36 -0
- package/src/app/charts/hooks/useAxes.tsx +60 -228
- package/src/app/charts/hooks/useCanvasSurface.tsx +35 -0
- package/src/app/charts/hooks/useChart.tsx +47 -106
- package/src/app/charts/hooks/useDataSource.tsx +106 -0
- package/src/app/charts/hooks/useHoveredSeries.tsx +33 -0
- package/src/app/charts/hooks/useMouse.tsx +58 -82
- package/src/app/charts/hooks/usePlotDimensions.tsx +25 -89
- package/src/app/charts/hooks/useTooltip.tsx +32 -63
- package/src/app/charts/index.ts +213 -0
- package/src/app/charts/legends/Legend.tsx +198 -479
- package/src/app/charts/legends/constants.ts +37 -0
- package/src/app/charts/observables/iterates.ts +32 -12
- package/src/app/charts/observables/ordinals.ts +141 -67
- package/src/app/charts/observables/outliers.ts +20 -0
- package/src/app/charts/plots/BarPlot.tsx +784 -666
- package/src/app/charts/plots/OutlierPlot.tsx +685 -0
- package/src/app/charts/plots/PoincarePlot.tsx +707 -489
- package/src/app/charts/plots/RasterPlot.tsx +253 -445
- package/src/app/charts/plots/ScatterPlot.tsx +480 -463
- package/src/app/charts/plots/autoScaleYAxes.ts +102 -0
- package/src/app/charts/plots/colorizedLine.ts +185 -0
- package/src/app/charts/plots/constants.ts +16 -0
- package/src/app/charts/plots/hitTesting.ts +198 -0
- package/src/app/charts/plots/plot.ts +138 -44
- package/src/app/charts/plots/useCanvasZoomPan.ts +240 -0
- package/src/app/charts/plots/useStreamingTimeAxes.ts +384 -0
- package/src/app/charts/series/baseSeries.ts +81 -14
- package/src/app/charts/series/iterateSeries.ts +8 -8
- package/src/app/charts/series/ordinalSeries.ts +35 -20
- package/src/app/charts/series/outlierSeries.ts +188 -0
- package/src/app/charts/series/timeSeries.ts +14 -12
- package/src/app/charts/series/timeSeriesChartData.ts +31 -17
- package/src/app/charts/styling/barPlotStyle.ts +48 -5
- package/src/app/charts/styling/canvasStyle.ts +86 -0
- package/src/app/charts/styling/margins.ts +28 -4
- package/src/app/charts/styling/svgStyle.ts +10 -91
- package/src/app/charts/subscriptions/viewDrivers.ts +447 -0
- package/src/app/charts/tooltips/BarPlotTooltipContent.tsx +156 -380
- package/src/app/charts/tooltips/DefaultOutlierTooltipContent.tsx +40 -0
- package/src/app/charts/tooltips/OutlierPlotTooltipContent.tsx +67 -0
- package/src/app/charts/tooltips/PoincarePlotTooltipContent.tsx +229 -292
- package/src/app/charts/tooltips/RasterPlotTooltipContent.tsx +164 -217
- package/src/app/charts/tooltips/ScatterPlotTooltipContent.tsx +373 -236
- package/src/app/charts/tooltips/Tooltip.tsx +58 -124
- package/src/app/charts/tooltips/TooltipContent.tsx +177 -0
- package/src/app/charts/tooltips/tooltipUtils.ts +359 -61
- package/src/app/charts/tooltips/useOutlierTooltip.tsx +68 -0
- package/src/app/charts/tooltips/useTooltipPlacement.ts +86 -0
- package/src/app/charts/tooltips/useTooltipStyle.ts +15 -0
- package/src/app/charts/trackers/Tracker.tsx +68 -33
- package/src/app/charts/trackers/trackerUtils.ts +263 -376
- package/src/app/charts/utils.ts +90 -48
- package/src/index.ts +2 -322
- package/dist/app/charts/axes/AxesState.test.d.ts +0 -1
- package/dist/app/charts/axes/AxesState.test.js +0 -30
- package/dist/app/charts/axes/AxesState.test.js.map +0 -1
- package/dist/app/charts/axes/AxisInterval.test.d.ts +0 -1
- package/dist/app/charts/axes/AxisInterval.test.js +0 -120
- package/dist/app/charts/axes/AxisInterval.test.js.map +0 -1
- package/dist/app/charts/axes/ContinuousAxisRange.test.d.ts +0 -1
- package/dist/app/charts/axes/ContinuousAxisRange.test.js +0 -47
- package/dist/app/charts/axes/ContinuousAxisRange.test.js.map +0 -1
- package/dist/app/charts/axes/OrdinalAxisRange.test.d.ts +0 -1
- package/dist/app/charts/axes/OrdinalAxisRange.test.js +0 -48
- package/dist/app/charts/axes/OrdinalAxisRange.test.js.map +0 -1
- package/dist/app/charts/filters/regexFilter.test.d.ts +0 -1
- package/dist/app/charts/filters/regexFilter.test.js +0 -11
- package/dist/app/charts/filters/regexFilter.test.js.map +0 -1
- package/dist/app/charts/hooks/useDataObservable.d.ts +0 -72
- package/dist/app/charts/hooks/useDataObservable.js +0 -74
- package/dist/app/charts/hooks/useDataObservable.js.map +0 -1
- package/dist/app/charts/hooks/useInitialData.d.ts +0 -36
- package/dist/app/charts/hooks/useInitialData.js +0 -28
- package/dist/app/charts/hooks/useInitialData.js.map +0 -1
- package/dist/app/charts/observables/iterates.test.d.ts +0 -1
- package/dist/app/charts/observables/iterates.test.js +0 -180
- package/dist/app/charts/observables/iterates.test.js.map +0 -1
- package/dist/app/charts/observables/ordinals.test.d.ts +0 -1
- package/dist/app/charts/observables/ordinals.test.js +0 -102
- package/dist/app/charts/observables/ordinals.test.js.map +0 -1
- package/dist/app/charts/series/datumSeries.test.d.ts +0 -1
- package/dist/app/charts/series/datumSeries.test.js +0 -50
- package/dist/app/charts/series/datumSeries.test.js.map +0 -1
- package/dist/app/charts/styling/margins.test.d.ts +0 -1
- package/dist/app/charts/styling/margins.test.js +0 -19
- package/dist/app/charts/styling/margins.test.js.map +0 -1
- package/dist/app/charts/subscriptions/subscription.test.d.ts +0 -1
- package/dist/app/charts/subscriptions/subscription.test.js +0 -395
- package/dist/app/charts/subscriptions/subscription.test.js.map +0 -1
- package/dist/app/charts/subscriptions/subscriptions.d.ts +0 -100
- package/dist/app/charts/subscriptions/subscriptions.js +0 -449
- package/dist/app/charts/subscriptions/subscriptions.js.map +0 -1
- package/src/app/charts/axes/AxesState.test.ts +0 -34
- package/src/app/charts/axes/AxisInterval.test.ts +0 -143
- package/src/app/charts/axes/ContinuousAxisRange.test.ts +0 -55
- package/src/app/charts/axes/OrdinalAxisRange.test.ts +0 -55
- package/src/app/charts/filters/regexFilter.test.ts +0 -13
- package/src/app/charts/hooks/useDataObservable.tsx +0 -170
- package/src/app/charts/hooks/useInitialData.tsx +0 -64
- package/src/app/charts/observables/iterates.test.ts +0 -201
- package/src/app/charts/observables/ordinals.test.ts +0 -135
- package/src/app/charts/series/datumSeries.test.ts +0 -60
- package/src/app/charts/styling/margins.test.ts +0 -22
- package/src/app/charts/subscriptions/subscription.test.ts +0 -499
- package/src/app/charts/subscriptions/subscriptions.ts +0 -635
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
import { defaultTooltipStyle } from "./tooltipUtils";
|
|
3
|
+
/**
|
|
4
|
+
* The style of the enclosing {@link Tooltip} (its `style`, over the default tooltip style)
|
|
5
|
+
*/
|
|
6
|
+
export const TooltipStyleContext = createContext(defaultTooltipStyle);
|
|
7
|
+
/**
|
|
8
|
+
* @return The style of the enclosing {@link Tooltip}: its `style` property over the default tooltip
|
|
9
|
+
* style (or just the default style, outside a tooltip)
|
|
10
|
+
*/
|
|
11
|
+
export function useTooltipStyle() {
|
|
12
|
+
return useContext(TooltipStyleContext);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=useTooltipStyle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTooltipStyle.js","sourceRoot":"","sources":["../../../../src/app/charts/tooltips/useTooltipStyle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,OAAO,CAAC;AAChD,OAAO,EAAC,mBAAmB,EAAoB,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAe,mBAAmB,CAAC,CAAA;AAEnF;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC3B,OAAO,UAAU,CAAC,mBAAmB,CAAC,CAAA;AAC1C,CAAC"}
|
|
@@ -1,27 +1,43 @@
|
|
|
1
|
-
import { TrackerLabelFont, TrackerStyle } from "./trackerUtils";
|
|
1
|
+
import { type TrackerLabelFont, TrackerLabelLocation, type TrackerStyle } from "./trackerUtils";
|
|
2
2
|
import { AxisLocation } from "../axes/axes";
|
|
3
|
+
/**
|
|
4
|
+
* What the tracker reports for an axis: the axis' value at the mouse, and where the axis is
|
|
5
|
+
*/
|
|
3
6
|
export interface TrackerAxisInfo {
|
|
7
|
+
/** the axis' value at the mouse (for a y-axis too, despite the name) */
|
|
4
8
|
x: number;
|
|
9
|
+
/** the location of the axis */
|
|
5
10
|
axisLocation: AxisLocation;
|
|
6
11
|
}
|
|
7
12
|
export type TrackerAxisUpdate = Map<string, TrackerAxisInfo>;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
13
|
+
/**
|
|
14
|
+
* The properties of the {@link Tracker}
|
|
15
|
+
*/
|
|
12
16
|
export interface Props {
|
|
17
|
+
/** whether the tracker is shown */
|
|
13
18
|
visible: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* the axes the tracker reports the values of: top or bottom for a vertical line that tracks
|
|
21
|
+
* the x-axes (the default), left or right for a horizontal line that tracks the y-axes
|
|
22
|
+
*/
|
|
14
23
|
trackerAxis?: AxisLocation;
|
|
24
|
+
/** where the tracker's labels are shown (by the axes, the default, or nowhere) */
|
|
15
25
|
labelLocation?: TrackerLabelLocation;
|
|
26
|
+
/** formats an axis' value for its label (defaults to a whole number, with thousands separators) */
|
|
16
27
|
labelFormatter?: (value: number) => string;
|
|
28
|
+
/** the style of the tracker's line */
|
|
17
29
|
style?: Partial<TrackerStyle>;
|
|
30
|
+
/** the font of the tracker's labels */
|
|
18
31
|
font?: Partial<TrackerLabelFont>;
|
|
32
|
+
/** called with each (non-empty) axis' value at the mouse, as the mouse moves over the plot */
|
|
19
33
|
onTrackerUpdate?: (update: TrackerAxisUpdate) => void;
|
|
20
34
|
}
|
|
21
35
|
/**
|
|
22
36
|
* A tracker line that displays or reports the x or y coordinates at the mouse location. The tracker
|
|
23
|
-
* handles single axes and dual axes.
|
|
37
|
+
* handles single axes and dual axes. Internally, this registers a draw function with the chart's
|
|
38
|
+
* canvas context (see `trackerUtils.ts`) rather than creating/updating SVG elements.
|
|
24
39
|
* @param props The tracker control properties
|
|
25
40
|
* @return null component
|
|
26
41
|
*/
|
|
27
42
|
export declare function Tracker(props: Props): null;
|
|
43
|
+
//# sourceMappingURL=Tracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tracker.d.ts","sourceRoot":"","sources":["../../../../src/app/charts/trackers/Tracker.tsx"],"names":[],"mappings":"AAEA,OAAO,EAIH,KAAK,gBAAgB,EACrB,oBAAoB,EACpB,KAAK,YAAY,EACpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAC,YAAY,EAA4C,MAAM,cAAc,CAAC;AAGrF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,wEAAwE;IACxE,CAAC,EAAE,MAAM,CAAA;IACT,+BAA+B;IAC/B,YAAY,EAAE,YAAY,CAAA;CAC7B;AAGD,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,KAAK;IAClB,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,CAAA;IAC1B,kFAAkF;IAClF,aAAa,CAAC,EAAE,oBAAoB,CAAA;IACpC,mGAAmG;IACnG,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IAC1C,sCAAsC;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,uCAAuC;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjC,8FAA8F;IAC9F,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAA;CACxD;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAwG1C"}
|
|
@@ -1,59 +1,73 @@
|
|
|
1
1
|
import { noop } from "../utils";
|
|
2
2
|
import { useChart } from "../hooks/useChart";
|
|
3
|
-
import { defaultTrackerLabelFont, defaultTrackerStyle,
|
|
3
|
+
import { defaultTrackerLabelFont, defaultTrackerStyle, trackerControlInstance, TrackerLabelLocation } from "./trackerUtils";
|
|
4
4
|
import * as d3 from "d3";
|
|
5
5
|
import { useEffect, useMemo, useRef } from "react";
|
|
6
6
|
import { AxisLocation } from "../axes/axes";
|
|
7
7
|
import { usePlotDimensions } from "../hooks/usePlotDimensions";
|
|
8
|
-
export var TrackerLabelLocation;
|
|
9
|
-
(function (TrackerLabelLocation) {
|
|
10
|
-
TrackerLabelLocation[TrackerLabelLocation["Nowhere"] = 0] = "Nowhere";
|
|
11
|
-
TrackerLabelLocation[TrackerLabelLocation["ByAxis"] = 1] = "ByAxis";
|
|
12
|
-
})(TrackerLabelLocation || (TrackerLabelLocation = {}));
|
|
13
8
|
/**
|
|
14
9
|
* A tracker line that displays or reports the x or y coordinates at the mouse location. The tracker
|
|
15
|
-
* handles single axes and dual axes.
|
|
10
|
+
* handles single axes and dual axes. Internally, this registers a draw function with the chart's
|
|
11
|
+
* canvas context (see `trackerUtils.ts`) rather than creating/updating SVG elements.
|
|
16
12
|
* @param props The tracker control properties
|
|
17
13
|
* @return null component
|
|
18
14
|
*/
|
|
19
15
|
export function Tracker(props) {
|
|
20
16
|
const { visible, trackerAxis = AxisLocation.Bottom, labelLocation = TrackerLabelLocation.ByAxis, labelFormatter, style, font, onTrackerUpdate = noop } = props;
|
|
21
|
-
const { chartId,
|
|
17
|
+
const { chartId, canvasContext, axes, backgroundColor } = useChart();
|
|
22
18
|
const { xAxesState, yAxesState } = axes;
|
|
23
19
|
const axisState = (trackerAxis === AxisLocation.Bottom || trackerAxis === AxisLocation.Top) ?
|
|
24
20
|
xAxesState :
|
|
25
21
|
yAxesState;
|
|
26
22
|
const { plotDimensions, margin } = usePlotDimensions();
|
|
27
|
-
const trackerStyle = useMemo(() => (
|
|
28
|
-
const trackerFont = useMemo(() => (
|
|
29
|
-
|
|
23
|
+
const trackerStyle = useMemo(() => ({ ...defaultTrackerStyle, ...style }), [style]);
|
|
24
|
+
const trackerFont = useMemo(() => ({ ...defaultTrackerLabelFont, ...font }), [font]);
|
|
25
|
+
// holds the cleanup function returned by `trackerControlInstance`, replacing the old
|
|
26
|
+
// `TrackerSelection` ref
|
|
27
|
+
const trackerCleanupRef = useRef(undefined);
|
|
30
28
|
const axisRef = useRef(new Map());
|
|
31
29
|
useEffect(() => {
|
|
32
30
|
const axes = new Map();
|
|
33
31
|
axisState.axes.forEach((axis, id) => axes.set(id, axis));
|
|
34
32
|
axisRef.current = axes;
|
|
35
33
|
}, [axisState]);
|
|
36
|
-
// when the
|
|
37
|
-
// tracker control
|
|
34
|
+
// when the canvas context, tracker-control function, or visibility change, then we need to
|
|
35
|
+
// update the tracker control
|
|
38
36
|
useEffect(() => {
|
|
39
|
-
if (
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
37
|
+
if (canvasContext) {
|
|
38
|
+
if (visible) {
|
|
39
|
+
// if a tracker was already registered (e.g., from a prior render with
|
|
40
|
+
// different props), tear it down before registering the new one
|
|
41
|
+
if (trackerCleanupRef.current !== undefined) {
|
|
42
|
+
trackerCleanupRef.current();
|
|
43
|
+
trackerCleanupRef.current = undefined;
|
|
44
|
+
}
|
|
45
|
+
const trackerLabels = new Map(Array.from(axisRef.current.values())
|
|
46
|
+
.filter(axis => !axis.isEmpty)
|
|
47
|
+
.map(axis => {
|
|
43
48
|
const formatter = labelFormatter !== null && labelFormatter !== void 0 ? labelFormatter : ((value) => labelLocation === TrackerLabelLocation.Nowhere ?
|
|
44
49
|
"" :
|
|
45
50
|
`${d3.format(",.0f")(value)}`);
|
|
46
51
|
return [axis, formatter];
|
|
47
52
|
}));
|
|
48
|
-
|
|
53
|
+
trackerCleanupRef.current = trackerControlInstance(canvasContext, chartId, plotDimensions, margin, trackerStyle, trackerFont, trackerLabels, labelLocation, onTrackerUpdate, trackerAxis, backgroundColor);
|
|
49
54
|
}
|
|
50
55
|
// if the tracker was defined and is now no longer defined (i.e., props changed, then remove the tracker)
|
|
51
|
-
else if (!visible &&
|
|
52
|
-
|
|
53
|
-
|
|
56
|
+
else if (!visible && trackerCleanupRef.current !== undefined) {
|
|
57
|
+
trackerCleanupRef.current();
|
|
58
|
+
trackerCleanupRef.current = undefined;
|
|
54
59
|
}
|
|
55
60
|
}
|
|
56
|
-
}, [backgroundColor, chartId,
|
|
61
|
+
}, [backgroundColor, chartId, canvasContext, labelFormatter, labelLocation, margin, onTrackerUpdate, plotDimensions, trackerAxis, trackerFont, trackerStyle, visible]);
|
|
62
|
+
// unregister the tracker when this component unmounts
|
|
63
|
+
useEffect(() => {
|
|
64
|
+
return () => {
|
|
65
|
+
if (trackerCleanupRef.current !== undefined) {
|
|
66
|
+
trackerCleanupRef.current();
|
|
67
|
+
trackerCleanupRef.current = undefined;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
}, []);
|
|
57
71
|
return null;
|
|
58
72
|
}
|
|
59
73
|
//# sourceMappingURL=Tracker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracker.js","sourceRoot":"","sources":["../../../../src/app/charts/trackers/Tracker.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Tracker.js","sourceRoot":"","sources":["../../../../src/app/charts/trackers/Tracker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +1,64 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Dimensions, Margin } from "../styling/margins";
|
|
3
|
-
import { AxisLocation, ContinuousNumericAxis } from "../axes/axes";
|
|
4
|
-
import { TrackerAxisUpdate
|
|
1
|
+
import type { CanvasContext } from "../d3types";
|
|
2
|
+
import { type Dimensions, type Margin } from "../styling/margins";
|
|
3
|
+
import { AxisLocation, type ContinuousNumericAxis } from "../axes/axes";
|
|
4
|
+
import { type TrackerAxisUpdate } from "./Tracker";
|
|
5
|
+
/**
|
|
6
|
+
* The font of the tracker's labels
|
|
7
|
+
*/
|
|
5
8
|
export interface TrackerLabelFont {
|
|
6
9
|
size: number;
|
|
7
10
|
color: string;
|
|
8
11
|
family: string;
|
|
9
12
|
weight: number;
|
|
10
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* The default font of the tracker's labels
|
|
16
|
+
*/
|
|
11
17
|
export declare const defaultTrackerLabelFont: TrackerLabelFont;
|
|
18
|
+
/**
|
|
19
|
+
* The style of the tracker's line (and whether it's shown)
|
|
20
|
+
*/
|
|
12
21
|
export interface TrackerStyle {
|
|
13
22
|
visible: boolean;
|
|
14
23
|
color: string;
|
|
15
24
|
lineWidth: number;
|
|
16
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* The default tracker style (hidden)
|
|
28
|
+
*/
|
|
17
29
|
export declare const defaultTrackerStyle: TrackerStyle;
|
|
18
30
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
31
|
+
* The location of the tracker label
|
|
32
|
+
* Note: replaces enums to support `erasableSyntaxOnly`
|
|
33
|
+
* TS1294: This syntax is not allowed when 'erasableSyntaxOnly' is enabled.
|
|
34
|
+
*/
|
|
35
|
+
export declare const TrackerLabelLocation: {
|
|
36
|
+
readonly Nowhere: "Nowhere";
|
|
37
|
+
readonly ByAxis: "ByAxis";
|
|
38
|
+
};
|
|
39
|
+
export type TrackerLabelLocation = (typeof TrackerLabelLocation)[keyof typeof TrackerLabelLocation];
|
|
40
|
+
/**
|
|
41
|
+
* Registers a tracker (a line that follows the mouse, with optional per-axis labels) with the
|
|
42
|
+
* canvas context. Replaces the old `trackerControlInstance`, which created SVG `<line>`/`<text>`/
|
|
43
|
+
* `<rect>` elements and updated them via a namespaced `mousemove` handler on the `<svg>`. The
|
|
44
|
+
* canvas version instead registers a draw function that reads the mouse's last-known position
|
|
45
|
+
* (tracked via its own `mousemove` listener on the canvas) and paints the tracker fresh every
|
|
46
|
+
* redraw.
|
|
47
|
+
* @param cc The canvas context to register the tracker's draw function with
|
|
21
48
|
* @param chartId The ID of the chart
|
|
22
|
-
* @param container The SVG container
|
|
23
|
-
* @param svg The SVG selection
|
|
24
49
|
* @param plotDimensions The dimensions of the plot
|
|
25
50
|
* @param margin The margins around the plot
|
|
26
51
|
* @param style The tracker style
|
|
27
52
|
* @param labelFont The font used for the axis labels
|
|
28
|
-
* @param label A function that
|
|
29
|
-
* @param labelStyle
|
|
53
|
+
* @param label A map associating each axis with the function that formats the tracker's label for that axis' value
|
|
54
|
+
* @param labelStyle Where the tracker's labels are shown (by the axes, or nowhere)
|
|
30
55
|
* @param onTrackerUpdate A callback function that accepts the current tracker's axis information
|
|
31
56
|
* @param [axisLocation = AxisLocation.Bottom] The optional location of the axis for which the tracker is to
|
|
32
57
|
* be shown. Default is bottom.
|
|
33
58
|
* @param backgroundColor The background color of the tracker label
|
|
34
|
-
* @return
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Removes the tracker control from the chart
|
|
39
|
-
* @param svg The svg selection holding the tracker control
|
|
40
|
-
* @param axisLocation The location of the axis for which the tracker is to be removed.
|
|
59
|
+
* @return A cleanup function that unregisters the tracker's draw function and removes its
|
|
60
|
+
* `mousemove` listener. Call this when the tracker becomes invisible or unmounts (replaces the
|
|
61
|
+
* old `removeTrackerControl`).
|
|
41
62
|
*/
|
|
42
|
-
export declare function
|
|
63
|
+
export declare function trackerControlInstance(cc: CanvasContext, chartId: number, plotDimensions: Dimensions, margin: Margin, style: TrackerStyle, labelFont: TrackerLabelFont, label: Map<ContinuousNumericAxis, (x: number) => string>, labelStyle: TrackerLabelLocation, onTrackerUpdate: (update: TrackerAxisUpdate) => void, axisLocation: AxisLocation | undefined, backgroundColor: string): () => void;
|
|
64
|
+
//# sourceMappingURL=trackerUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trackerUtils.d.ts","sourceRoot":"","sources":["../../../../src/app/charts/trackers/trackerUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAa,MAAM,YAAY,CAAC;AAC1D,OAAO,EAA0B,KAAK,UAAU,EAAE,KAAK,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAGzF,OAAO,EAAC,YAAY,EAAE,KAAK,qBAAqB,EAAC,MAAM,cAAc,CAAC;AACtE,OAAO,EAAuB,KAAK,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,gBAKrC,CAAA;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,YAIjC,CAAA;AAID;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;CAGvB,CAAA;AACV,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAA;AAQnG;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,aAAa,EACjB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,UAAU,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE,GAAG,CAAC,qBAAqB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,EACxD,UAAU,EAAE,oBAAoB,EAChC,eAAe,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,EACpD,YAAY,EAAE,YAAY,YAAsB,EAChD,eAAe,EAAE,MAAM,GACxB,MAAM,IAAI,CAUZ"}
|