@fundar/data-chart-telling 0.0.64 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/LICENSE +21 -0
- package/README.md +81 -561
- package/dist/configuration/config.svelte.d.ts +5 -5
- package/dist/configuration/config.svelte.js +130 -46
- package/dist/configuration/fonts.d.ts +6 -0
- package/dist/configuration/fonts.js +6 -0
- package/dist/configuration/themes/compact.d.ts +2 -2
- package/dist/configuration/themes/compact.js +1 -1
- package/dist/configuration/themes/dark.d.ts +2 -2
- package/dist/configuration/themes/dark.js +5 -4
- package/dist/configuration/themes/default.d.ts +8 -3
- package/dist/configuration/themes/default.js +8 -2
- package/dist/configuration/themes/editorial.d.ts +2 -2
- package/dist/configuration/themes/editorial.js +2 -2
- package/dist/configuration/themes/index.d.ts +421 -80
- package/dist/configuration/themes/index.js +6 -5
- package/dist/index.d.ts +34 -48
- package/dist/index.js +19 -35
- package/dist/layout/base/BasePlotLayout.svelte +312 -0
- package/dist/layout/base/BasePlotLayout.svelte.d.ts +111 -0
- package/dist/layout/composer/PlotComposer.svelte +94 -0
- package/dist/layout/composer/PlotComposer.svelte.d.ts +13 -0
- package/dist/layout/coordinates/CameraFit.svelte +4 -4
- package/dist/layout/coordinates/CoordinatesLayout.svelte +11 -3
- package/dist/layout/coordinates/CoordinatesLayout.svelte.d.ts +6 -2
- package/dist/layout/coordinates/camera.svelte.d.ts +1 -1
- package/dist/layout/coordinates/camera.svelte.js +6 -6
- package/dist/layout/coordinates/projections/argentina.js +3 -3
- package/dist/layout/coordinates/projections/fit.js +1 -1
- package/dist/layout/coordinates/resolveCameraTarget.d.ts +1 -1
- package/dist/layout/coordinates/resolveProjection.d.ts +1 -1
- package/dist/layout/coordinates/resolveProjection.js +2 -2
- package/dist/layout/coordinates/rotate.svelte.d.ts +3 -3
- package/dist/layout/coordinates/rotate.svelte.js +8 -8
- package/dist/layout/coordinates/zoom.svelte.d.ts +1 -1
- package/dist/layout/facet/FacetIndicator.svelte +23 -23
- package/dist/layout/facet/FacetLayout.svelte +435 -398
- package/dist/layout/facet/FacetLayout.svelte.d.ts +9 -3
- package/dist/layout/facet/axes.d.ts +16 -0
- package/dist/layout/facet/axes.js +25 -0
- package/dist/layout/facet/config.d.ts +32 -0
- package/dist/layout/facet/config.js +82 -0
- package/dist/layout/figure/Figure.svelte +177 -0
- package/dist/layout/figure/Figure.svelte.d.ts +14 -0
- package/dist/layout/figure/FigureChrome.svelte +341 -0
- package/dist/layout/figure/FigureChrome.svelte.d.ts +21 -0
- package/dist/layout/geometry/FrameClip.svelte +45 -0
- package/dist/layout/geometry/FrameClip.svelte.d.ts +8 -0
- package/dist/layout/geometry/FrameClipping.d.ts +24 -0
- package/dist/layout/geometry/FrameClipping.js +40 -0
- package/dist/layout/geometry/GeometryLayout.svelte +287 -224
- package/dist/layout/geometry/GeometryLayout.svelte.d.ts +10 -10
- package/dist/layout/grid/Grid.svelte +194 -0
- package/dist/layout/grid/Grid.svelte.d.ts +26 -0
- package/dist/layout/grid/GridAlignment.svelte.d.ts +31 -0
- package/dist/layout/grid/GridAlignment.svelte.js +56 -0
- package/dist/layout/grid/GridCell.svelte +141 -0
- package/dist/layout/grid/GridCell.svelte.d.ts +17 -0
- package/dist/layout/grid/GridCellsRegistry.svelte.d.ts +52 -0
- package/dist/layout/grid/GridCellsRegistry.svelte.js +70 -0
- package/dist/layout/grid/GridPlan.d.ts +49 -0
- package/dist/layout/grid/GridPlan.js +167 -0
- package/dist/layout/grid/Tags.d.ts +8 -0
- package/dist/layout/grid/Tags.js +39 -0
- package/dist/layout/hover/HoverScope.svelte +11 -0
- package/dist/layout/hover/HoverScope.svelte.d.ts +8 -0
- package/dist/layout/hover/HoverSettings.d.ts +20 -0
- package/dist/layout/hover/HoverSettings.js +27 -0
- package/dist/layout/hover/HoverState.svelte.d.ts +47 -0
- package/dist/layout/hover/HoverState.svelte.js +99 -0
- package/dist/layout/hover/PlotHover.svelte.d.ts +63 -0
- package/dist/layout/hover/PlotHover.svelte.js +133 -0
- package/dist/layout/interaction/PlotInteraction.svelte.d.ts +38 -0
- package/dist/layout/interaction/PlotInteraction.svelte.js +56 -0
- package/dist/layout/legend/AxisNumberFormat.d.ts +12 -0
- package/dist/layout/legend/AxisNumberFormat.js +25 -0
- package/dist/layout/legend/ContinuousSection.svelte +363 -351
- package/dist/layout/legend/DisabledStyle.d.ts +19 -0
- package/dist/layout/legend/DisabledStyle.js +57 -0
- package/dist/layout/legend/DiscreteBadgeItem.svelte +6 -3
- package/dist/layout/legend/DiscreteSection.svelte +32 -32
- package/dist/layout/legend/DiscreteSwatchItem.svelte +4 -1
- package/dist/layout/legend/DiscreteSymbolIcon.svelte +14 -9
- package/dist/layout/legend/LegendChannels.d.ts +21 -0
- package/dist/layout/legend/LegendChannels.js +221 -0
- package/dist/layout/legend/LegendLayout.svelte +49 -43
- package/dist/layout/legend/LegendState.svelte.d.ts +79 -0
- package/dist/layout/legend/LegendState.svelte.js +329 -0
- package/dist/layout/legend/LegendText.d.ts +12 -0
- package/dist/layout/legend/LegendText.js +22 -0
- package/dist/layout/legend/SizeSection.svelte +84 -0
- package/dist/layout/legend/SizeSection.svelte.d.ts +7 -0
- package/dist/layout/legend/SymbolSection.svelte +31 -0
- package/dist/layout/legend/SymbolSection.svelte.d.ts +8 -0
- package/dist/layout/margins/Box.d.ts +84 -0
- package/dist/layout/margins/Box.js +138 -0
- package/dist/layout/margins/Margins.d.ts +37 -0
- package/dist/layout/margins/Margins.js +71 -0
- package/dist/layout/margins/PlotMargins.svelte.d.ts +101 -0
- package/dist/layout/margins/PlotMargins.svelte.js +219 -0
- package/dist/layout/plot/Core.svelte +61 -0
- package/dist/layout/plot/Core.svelte.d.ts +41 -0
- package/dist/layout/plot/PanelRun.svelte +28 -0
- package/dist/{charts/heatmap/Chart.svelte.d.ts → layout/plot/PanelRun.svelte.d.ts} +11 -7
- package/dist/layout/plot/Plot.svelte +284 -0
- package/dist/layout/plot/Plot.svelte.d.ts +49 -0
- package/dist/layout/plot/PlotContext.d.ts +41 -0
- package/dist/layout/plot/PlotContext.js +46 -0
- package/dist/layout/plot/PublicPlotContext.d.ts +130 -0
- package/dist/layout/plot/PublicPlotContext.js +236 -0
- package/dist/layout/plot/Slice.d.ts +44 -0
- package/dist/layout/plot/Slice.js +98 -0
- package/dist/layout/plot/usePlot.d.ts +9 -0
- package/dist/layout/plot/usePlot.js +13 -0
- package/dist/layout/scales/ScalesLayout.svelte +241 -206
- package/dist/layout/scales/ScalesLayout.svelte.d.ts +2 -1
- package/dist/layout/scales/buildScale.d.ts +5 -22
- package/dist/layout/scales/buildScale.js +11 -34
- package/dist/layout/scales/niceDomain.d.ts +3 -3
- package/dist/layout/scales/niceDomain.js +4 -4
- package/dist/layout/styles/StylesLayout.svelte +65 -65
- package/dist/layout/styles/TileLayer.svelte +78 -76
- package/dist/layout/styles/TileLayer.svelte.d.ts +1 -1
- package/dist/layout/styles/ValueLabels.d.ts +97 -0
- package/dist/layout/styles/ValueLabels.js +237 -0
- package/dist/layout/timeline/Timeline.svelte +80 -74
- package/dist/layout/timeline/TimelineFrame.svelte +86 -0
- package/dist/layout/timeline/TimelineFrame.svelte.d.ts +16 -0
- package/dist/layout/timeline/TimelineLayout.svelte +114 -169
- package/dist/layout/timeline/TimelineLayout.svelte.d.ts +2 -0
- package/dist/layout/timeline/TimelinePlayer.svelte +195 -0
- package/dist/layout/timeline/TimelinePlayer.svelte.d.ts +7 -0
- package/dist/layout/timeline/TimelineRule.svelte +50 -0
- package/dist/layout/timeline/TimelineRule.svelte.d.ts +7 -0
- package/dist/layout/timeline/TimelineState.svelte.d.ts +82 -0
- package/dist/layout/timeline/TimelineState.svelte.js +226 -0
- package/dist/layout/timeline/TimelineSteps.d.ts +24 -0
- package/dist/layout/timeline/TimelineSteps.js +48 -0
- package/dist/layout/tooltip/Tooltip.svelte +82 -85
- package/dist/layout/tooltip/Tooltip.svelte.d.ts +43 -24
- package/dist/layout/tooltip/TooltipState.svelte.d.ts +61 -0
- package/dist/layout/tooltip/TooltipState.svelte.js +107 -0
- package/dist/markers/MarkerKinds.d.ts +173 -0
- package/dist/markers/MarkerKinds.js +51 -0
- package/dist/markers/area/AreaMarker.svelte +110 -0
- package/dist/markers/area/AreaMarker.svelte.d.ts +7 -0
- package/dist/markers/arrow/ArrowMarker.svelte +28 -0
- package/dist/markers/arrow/ArrowMarker.svelte.d.ts +7 -0
- package/dist/markers/{BarMarker.svelte → bar/BarMarker.svelte} +54 -52
- package/dist/markers/{BarMarker.svelte.d.ts → bar/BarMarker.svelte.d.ts} +1 -1
- package/dist/markers/bollinger/BollingerMarker.svelte +44 -0
- package/dist/markers/bollinger/BollingerMarker.svelte.d.ts +7 -0
- package/dist/markers/box/BoxMarker.svelte +143 -0
- package/dist/markers/box/BoxMarker.svelte.d.ts +7 -0
- package/dist/markers/brush/BrushMarker.svelte +32 -0
- package/dist/markers/brush/BrushMarker.svelte.d.ts +7 -0
- package/dist/markers/cell/CellMarker.svelte +27 -0
- package/dist/markers/{CellMarker.svelte.d.ts → cell/CellMarker.svelte.d.ts} +1 -1
- package/dist/markers/contour/ContourClipMarker.svelte +83 -0
- package/dist/markers/{ContourClipMarker.svelte.d.ts → contour/ContourClipMarker.svelte.d.ts} +1 -1
- package/dist/markers/contour/ContourMarker.svelte +28 -0
- package/dist/markers/{ContourMarker.svelte.d.ts → contour/ContourMarker.svelte.d.ts} +1 -1
- package/dist/markers/delaunay/DelaunayLinkMarker.svelte +26 -0
- package/dist/markers/delaunay/DelaunayLinkMarker.svelte.d.ts +7 -0
- package/dist/markers/delaunay/DelaunayMeshMarker.svelte +26 -0
- package/dist/markers/delaunay/DelaunayMeshMarker.svelte.d.ts +7 -0
- package/dist/markers/delta/Delta.d.ts +21 -0
- package/dist/markers/delta/Delta.js +60 -0
- package/dist/markers/delta/DeltaMarker.svelte +94 -0
- package/dist/markers/{DeltaMarker.svelte.d.ts → delta/DeltaMarker.svelte.d.ts} +2 -2
- package/dist/markers/density/DensityMarker.svelte +63 -0
- package/dist/markers/density/DensityMarker.svelte.d.ts +7 -0
- package/dist/markers/difference/DifferenceMarker.svelte +30 -0
- package/dist/markers/difference/DifferenceMarker.svelte.d.ts +7 -0
- package/dist/markers/dot/DotMarker.svelte +102 -0
- package/dist/markers/{DotMarker.svelte.d.ts → dot/DotMarker.svelte.d.ts} +5 -17
- package/dist/markers/geo/GeoFeaturesMarker.svelte +39 -0
- package/dist/markers/{GeoFeaturesMarker.svelte.d.ts → geo/GeoFeaturesMarker.svelte.d.ts} +1 -1
- package/dist/markers/geo/GeoHoverMarker.svelte +28 -0
- package/dist/markers/{GeoHoverMarker.svelte.d.ts → geo/GeoHoverMarker.svelte.d.ts} +2 -2
- package/dist/markers/geo/GraticuleMarker.svelte +18 -0
- package/dist/markers/{GraticuleMarker.svelte.d.ts → geo/GraticuleMarker.svelte.d.ts} +1 -1
- package/dist/markers/geo/SphereMarker.svelte +15 -0
- package/dist/markers/{SphereMarker.svelte.d.ts → geo/SphereMarker.svelte.d.ts} +1 -1
- package/dist/markers/hover/HoverMarker.svelte +252 -0
- package/dist/markers/{HoverMarker.svelte.d.ts → hover/HoverMarker.svelte.d.ts} +10 -10
- package/dist/markers/hull/HullMarker.svelte +25 -0
- package/dist/markers/hull/HullMarker.svelte.d.ts +7 -0
- package/dist/markers/image/ImageMarker.svelte +22 -0
- package/dist/markers/image/ImageMarker.svelte.d.ts +7 -0
- package/dist/markers/inset/InsetMarker.svelte +184 -150
- package/dist/markers/inset/InsetMarker.svelte.d.ts +4 -4
- package/dist/markers/inset/insetLayout.d.ts +1 -1
- package/dist/markers/inset/insetLayout.js +6 -2
- package/dist/markers/inset/insetProjection.d.ts +1 -1
- package/dist/markers/inset/insetProjection.js +3 -3
- package/dist/markers/line/LineMarker.svelte +30 -0
- package/dist/markers/{LineMarker.svelte.d.ts → line/LineMarker.svelte.d.ts} +1 -1
- package/dist/markers/link/LinkMarker.svelte +47 -0
- package/dist/markers/{LinkMarker.svelte.d.ts → link/LinkMarker.svelte.d.ts} +1 -1
- package/dist/markers/raster/RasterMarker.svelte +31 -0
- package/dist/markers/raster/RasterMarker.svelte.d.ts +7 -0
- package/dist/markers/rect/RectMarker.svelte +62 -0
- package/dist/markers/rect/RectMarker.svelte.d.ts +7 -0
- package/dist/markers/regression/RegressionMarker.svelte +60 -0
- package/dist/markers/regression/RegressionMarker.svelte.d.ts +7 -0
- package/dist/markers/rule/RuleMarker.svelte +47 -0
- package/dist/markers/{RuleMarker.svelte.d.ts → rule/RuleMarker.svelte.d.ts} +2 -5
- package/dist/markers/text/Declutter.d.ts +35 -0
- package/dist/markers/text/Declutter.js +157 -0
- package/dist/markers/text/TextMarker.svelte +244 -0
- package/dist/markers/{TextMarker.svelte.d.ts → text/TextMarker.svelte.d.ts} +5 -9
- package/dist/markers/tick/TickMarker.svelte +44 -0
- package/dist/markers/tick/TickMarker.svelte.d.ts +7 -0
- package/dist/markers/trail/TrailMarker.svelte +27 -0
- package/dist/markers/trail/TrailMarker.svelte.d.ts +7 -0
- package/dist/markers/utils/BandNudge.d.ts +22 -0
- package/dist/markers/utils/BandNudge.js +23 -0
- package/dist/markers/utils/MarkerChannels.d.ts +49 -0
- package/dist/markers/utils/MarkerChannels.js +97 -0
- package/dist/markers/vector/VectorMarker.svelte +29 -0
- package/dist/markers/{VectorMarker.svelte.d.ts → vector/VectorMarker.svelte.d.ts} +1 -1
- package/dist/markers/voronoi/VoronoiMarker.svelte +26 -0
- package/dist/markers/voronoi/VoronoiMarker.svelte.d.ts +7 -0
- package/dist/markers/voronoi/VoronoiMeshMarker.svelte +26 -0
- package/dist/markers/voronoi/VoronoiMeshMarker.svelte.d.ts +7 -0
- package/dist/markers/waffle/WaffleMarker.svelte +56 -0
- package/dist/markers/waffle/WaffleMarker.svelte.d.ts +7 -0
- package/dist/phases/Pipeline.d.ts +108 -0
- package/dist/phases/Pipeline.js +226 -0
- package/dist/phases/data/DataPhase.d.ts +25 -0
- package/dist/phases/data/DataPhase.js +82 -0
- package/dist/phases/data/PlotAxes.d.ts +75 -0
- package/dist/phases/data/PlotAxes.js +151 -0
- package/dist/phases/facet/FacetPhase.d.ts +52 -0
- package/dist/phases/facet/FacetPhase.js +114 -0
- package/dist/phases/hover/HoverPhase.d.ts +73 -0
- package/dist/phases/hover/HoverPhase.js +144 -0
- package/dist/phases/mapping/MappingPhase.d.ts +17 -0
- package/dist/phases/mapping/MappingPhase.js +42 -0
- package/dist/phases/markers/MarkersPhase.d.ts +14 -0
- package/dist/phases/markers/MarkersPhase.js +27 -0
- package/dist/phases/scales/MarkerAxisValues.d.ts +12 -0
- package/dist/phases/scales/MarkerAxisValues.js +34 -0
- package/dist/phases/scales/ScalesPhase.d.ts +31 -0
- package/dist/phases/scales/ScalesPhase.js +157 -0
- package/dist/phases/sharedScales/SharedScalesPhase.d.ts +55 -0
- package/dist/phases/sharedScales/SharedScalesPhase.js +168 -0
- package/dist/phases/statistics/AuthorMarkers.d.ts +43 -0
- package/dist/phases/statistics/AuthorMarkers.js +69 -0
- package/dist/phases/statistics/MarkerGrouping.d.ts +48 -0
- package/dist/phases/statistics/MarkerGrouping.js +113 -0
- package/dist/phases/statistics/Statistics.d.ts +53 -0
- package/dist/phases/statistics/Statistics.js +156 -0
- package/dist/phases/statistics/StatisticsPhase.d.ts +18 -0
- package/dist/phases/statistics/StatisticsPhase.js +68 -0
- package/dist/phases/statistics/methods/BollingerStatistic.d.ts +9 -0
- package/dist/phases/statistics/methods/BollingerStatistic.js +18 -0
- package/dist/phases/statistics/methods/BoxStatistic.d.ts +9 -0
- package/dist/phases/statistics/methods/BoxStatistic.js +18 -0
- package/dist/phases/statistics/methods/Density2dStatistic.d.ts +9 -0
- package/dist/phases/statistics/methods/Density2dStatistic.js +18 -0
- package/dist/phases/statistics/methods/DensityStatistic.d.ts +12 -0
- package/dist/phases/statistics/methods/DensityStatistic.js +29 -0
- package/dist/phases/statistics/methods/MovingAverageStatistic.d.ts +12 -0
- package/dist/phases/statistics/methods/MovingAverageStatistic.js +30 -0
- package/dist/phases/statistics/methods/RegressionStatistic.d.ts +9 -0
- package/dist/phases/statistics/methods/RegressionStatistic.js +21 -0
- package/dist/phases/styles/StylesPhase.d.ts +13 -0
- package/dist/phases/styles/StylesPhase.js +17 -0
- package/dist/phases/tooltip/TooltipPhase.d.ts +12 -0
- package/dist/phases/tooltip/TooltipPhase.js +10 -0
- package/dist/phases/transforms/Transforms.d.ts +42 -0
- package/dist/phases/transforms/Transforms.js +130 -0
- package/dist/phases/transforms/TransformsPhase.d.ts +64 -0
- package/dist/phases/transforms/TransformsPhase.js +242 -0
- package/dist/phases/transforms/methods/AnchorBar.d.ts +13 -0
- package/dist/phases/transforms/methods/AnchorBar.js +21 -0
- package/dist/phases/transforms/methods/BinTransform.d.ts +7 -0
- package/dist/phases/transforms/methods/BinTransform.js +48 -0
- package/dist/phases/transforms/methods/DensityTransform.d.ts +6 -0
- package/dist/phases/transforms/methods/DensityTransform.js +13 -0
- package/dist/phases/transforms/methods/GroupTransform.d.ts +8 -0
- package/dist/phases/transforms/methods/GroupTransform.js +39 -0
- package/dist/phases/transforms/methods/NormalizeTransform.d.ts +10 -0
- package/dist/phases/transforms/methods/NormalizeTransform.js +30 -0
- package/dist/phases/transforms/methods/OrderTransform.d.ts +16 -0
- package/dist/phases/transforms/methods/OrderTransform.js +43 -0
- package/dist/phases/transforms/methods/PerGroup.d.ts +11 -0
- package/dist/phases/transforms/methods/PerGroup.js +39 -0
- package/dist/phases/transforms/methods/PositionTransform.d.ts +15 -0
- package/dist/phases/transforms/methods/PositionTransform.js +74 -0
- package/dist/phases/transforms/methods/StackTransform.d.ts +8 -0
- package/dist/phases/transforms/methods/StackTransform.js +29 -0
- package/dist/phases/transforms/methods/WindowTransform.d.ts +8 -0
- package/dist/phases/transforms/methods/WindowTransform.js +23 -0
- package/dist/plots/area/Plot.svelte +42 -0
- package/dist/plots/{heatmap/ValueLabels.svelte.d.ts → area/Plot.svelte.d.ts} +8 -16
- package/dist/plots/area/defaults.d.ts +4 -0
- package/dist/plots/area/defaults.js +21 -0
- package/dist/plots/area/markers.d.ts +14 -0
- package/dist/plots/area/markers.js +40 -0
- package/dist/plots/bar/Plot.svelte +33 -438
- package/dist/plots/bar/Plot.svelte.d.ts +5 -8
- package/dist/plots/bar/defaults.d.ts +9 -0
- package/dist/plots/bar/defaults.js +92 -0
- package/dist/plots/bar/markers.d.ts +45 -0
- package/dist/plots/bar/markers.js +232 -0
- package/dist/plots/geo/Core.svelte +151 -0
- package/dist/plots/geo/Core.svelte.d.ts +25 -0
- package/dist/plots/geo/Plot.svelte +103 -324
- package/dist/plots/geo/Plot.svelte.d.ts +5 -9
- package/dist/plots/geo/defaults.d.ts +4 -0
- package/dist/plots/geo/defaults.js +16 -0
- package/dist/plots/geo/features.svelte.d.ts +5 -0
- package/dist/plots/geo/features.svelte.js +44 -0
- package/dist/plots/geo/phases/data.d.ts +6 -0
- package/dist/plots/geo/phases/data.js +26 -0
- package/dist/plots/geo/phases/hover.d.ts +9 -0
- package/dist/plots/geo/phases/hover.js +45 -0
- package/dist/plots/geo/phases/markers.d.ts +9 -0
- package/dist/plots/geo/phases/markers.js +76 -0
- package/dist/plots/geo/phases/scales.d.ts +10 -0
- package/dist/plots/geo/phases/scales.js +85 -0
- package/dist/plots/geo/phases/tooltip.d.ts +3 -0
- package/dist/plots/geo/phases/tooltip.js +5 -0
- package/dist/plots/geo/slices.d.ts +18 -0
- package/dist/plots/geo/slices.js +56 -0
- package/dist/plots/heatmap/Plot.svelte +55 -249
- package/dist/plots/heatmap/Plot.svelte.d.ts +5 -8
- package/dist/plots/heatmap/defaults.d.ts +11 -0
- package/dist/plots/heatmap/defaults.js +91 -0
- package/dist/plots/heatmap/markers.d.ts +17 -0
- package/dist/plots/heatmap/markers.js +141 -0
- package/dist/plots/histogram/Plot.svelte +45 -0
- package/dist/plots/histogram/Plot.svelte.d.ts +26 -0
- package/dist/plots/histogram/defaults.d.ts +9 -0
- package/dist/plots/histogram/defaults.js +87 -0
- package/dist/plots/histogram/markers.d.ts +18 -0
- package/dist/plots/histogram/markers.js +89 -0
- package/dist/plots/line/Plot.svelte +37 -268
- package/dist/plots/line/Plot.svelte.d.ts +3 -7
- package/dist/plots/line/defaults.d.ts +4 -0
- package/dist/plots/line/defaults.js +29 -0
- package/dist/plots/line/markers.d.ts +49 -0
- package/dist/plots/line/markers.js +200 -0
- package/dist/plots/pyramid/Plot.svelte +34 -362
- package/dist/plots/pyramid/Plot.svelte.d.ts +5 -8
- package/dist/plots/pyramid/defaults.d.ts +13 -0
- package/dist/plots/pyramid/defaults.js +86 -0
- package/dist/plots/pyramid/markers.d.ts +21 -0
- package/dist/plots/pyramid/markers.js +159 -0
- package/dist/plots/scatter/Plot.svelte +34 -288
- package/dist/plots/scatter/Plot.svelte.d.ts +5 -8
- package/dist/plots/scatter/defaults.d.ts +4 -0
- package/dist/plots/scatter/defaults.js +79 -0
- package/dist/plots/scatter/markers.d.ts +19 -0
- package/dist/plots/scatter/markers.js +128 -0
- package/dist/plots/utils/ChannelName.d.ts +9 -0
- package/dist/plots/utils/ChannelName.js +14 -0
- package/dist/plots/utils/accessors.d.ts +1 -1
- package/dist/plots/utils/accessors.js +4 -2
- package/dist/plots/utils/gaps.d.ts +14 -19
- package/dist/plots/utils/gaps.js +38 -18
- package/dist/plots/utils/geoAccessors.d.ts +8 -8
- package/dist/plots/utils/geoAccessors.js +16 -12
- package/dist/plots/utils/geoSegments.d.ts +24 -9
- package/dist/plots/utils/geoSegments.js +31 -11
- package/dist/plots/utils/segments.d.ts +5 -16
- package/dist/plots/utils/segments.js +40 -52
- package/dist/plots/utils/tiles.d.ts +9 -9
- package/dist/plots/utils/tiles.js +35 -25
- package/dist/plots/utils/topojson.d.ts +1 -1
- package/dist/plots/utils/topojson.js +3 -3
- package/dist/stores/device.js +2 -4
- package/dist/types/configuration/styling.d.ts +152 -27
- package/dist/types/layout/box.d.ts +24 -0
- package/dist/types/layout/composer.d.ts +36 -0
- package/dist/types/layout/coordinates.d.ts +14 -14
- package/dist/types/layout/facet.d.ts +44 -22
- package/dist/types/layout/figure.d.ts +7 -0
- package/dist/types/layout/geometry.d.ts +6 -2
- package/dist/types/layout/grid.d.ts +66 -0
- package/dist/types/layout/hover.d.ts +48 -0
- package/dist/types/layout/legend.d.ts +256 -55
- package/dist/types/layout/mapping.d.ts +68 -0
- package/dist/types/layout/plot.d.ts +41 -0
- package/dist/types/layout/scales.d.ts +92 -24
- package/dist/types/layout/scales.js +19 -1
- package/dist/types/layout/statistics/bollinger.d.ts +18 -0
- package/dist/types/layout/statistics/box.d.ts +8 -0
- package/dist/types/layout/statistics/box.js +1 -0
- package/dist/types/layout/statistics/density.d.ts +27 -0
- package/dist/types/layout/statistics/density.js +1 -0
- package/dist/types/layout/statistics/index.d.ts +46 -0
- package/dist/types/layout/statistics/index.js +1 -0
- package/dist/types/layout/statistics/movingAverage.d.ts +12 -0
- package/dist/types/layout/statistics/movingAverage.js +1 -0
- package/dist/types/layout/statistics/regression.d.ts +20 -0
- package/dist/types/layout/statistics/regression.js +1 -0
- package/dist/types/layout/styles.d.ts +24 -35
- package/dist/types/layout/timeline.d.ts +51 -4
- package/dist/types/layout/tooltip.d.ts +7 -85
- package/dist/types/markers/all.d.ts +3 -4
- package/dist/types/markers/axis/area.d.ts +12 -0
- package/dist/types/markers/axis/area.js +1 -0
- package/dist/types/markers/axis/arrow.d.ts +15 -0
- package/dist/types/markers/axis/arrow.js +1 -0
- package/dist/types/markers/axis/axisBasedMarkersConfig.d.ts +29 -0
- package/dist/types/markers/axis/axisBasedMarkersConfig.js +1 -0
- package/dist/types/markers/axis/bar.d.ts +18 -0
- package/dist/types/markers/axis/bar.js +1 -0
- package/dist/types/markers/axis/bollinger.d.ts +6 -0
- package/dist/types/markers/axis/bollinger.js +1 -0
- package/dist/types/markers/axis/box.d.ts +14 -0
- package/dist/types/markers/axis/box.js +1 -0
- package/dist/types/markers/axis/brush.d.ts +28 -0
- package/dist/types/markers/axis/brush.js +1 -0
- package/dist/types/markers/axis/cell.d.ts +9 -0
- package/dist/types/markers/axis/cell.js +1 -0
- package/dist/types/markers/axis/component.d.ts +9 -0
- package/dist/types/markers/axis/component.js +1 -0
- package/dist/types/markers/axis/curveName.d.ts +2 -0
- package/dist/types/markers/axis/curveName.js +1 -0
- package/dist/types/markers/axis/delaunayLink.d.ts +7 -0
- package/dist/types/markers/axis/delaunayLink.js +1 -0
- package/dist/types/markers/axis/delaunayMesh.d.ts +7 -0
- package/dist/types/markers/axis/delaunayMesh.js +1 -0
- package/dist/types/markers/axis/delta.d.ts +27 -0
- package/dist/types/markers/axis/delta.js +1 -0
- package/dist/types/markers/axis/density.d.ts +12 -0
- package/dist/types/markers/axis/density.js +1 -0
- package/dist/types/markers/axis/difference.d.ts +12 -0
- package/dist/types/markers/axis/difference.js +1 -0
- package/dist/types/markers/axis/hover.d.ts +21 -0
- package/dist/types/markers/axis/hover.js +1 -0
- package/dist/types/markers/axis/hull.d.ts +7 -0
- package/dist/types/markers/axis/hull.js +1 -0
- package/dist/types/markers/axis/image.d.ts +12 -0
- package/dist/types/markers/axis/image.js +1 -0
- package/dist/types/markers/axis/line.d.ts +7 -0
- package/dist/types/markers/axis/line.js +1 -0
- package/dist/types/markers/axis/raster.d.ts +18 -0
- package/dist/types/markers/axis/raster.js +1 -0
- package/dist/types/markers/axis/rect.d.ts +15 -0
- package/dist/types/markers/axis/rect.js +1 -0
- package/dist/types/markers/axis/regression.d.ts +6 -0
- package/dist/types/markers/axis/regression.js +1 -0
- package/dist/types/markers/axis/rule.d.ts +15 -0
- package/dist/types/markers/axis/rule.js +1 -0
- package/dist/types/markers/axis/tick.d.ts +8 -0
- package/dist/types/markers/axis/tick.js +1 -0
- package/dist/types/markers/axis/trail.d.ts +14 -0
- package/dist/types/markers/axis/trail.js +1 -0
- package/dist/types/markers/axis/voronoi.d.ts +7 -0
- package/dist/types/markers/axis/voronoi.js +1 -0
- package/dist/types/markers/axis/voronoiMesh.d.ts +7 -0
- package/dist/types/markers/axis/voronoiMesh.js +1 -0
- package/dist/types/markers/axis/waffle.d.ts +13 -0
- package/dist/types/markers/axis/waffle.js +1 -0
- package/dist/types/markers/basic/basicMarkersConfig.d.ts +4 -0
- package/dist/types/markers/basic/basicMarkersConfig.js +1 -0
- package/dist/types/markers/basic/dot.d.ts +9 -0
- package/dist/types/markers/basic/dot.js +1 -0
- package/dist/types/markers/basic/text.d.ts +60 -0
- package/dist/types/markers/basic/text.js +1 -0
- package/dist/types/markers/basic.d.ts +4 -0
- package/dist/types/markers/basic.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfig.d.ts +26 -0
- package/dist/types/markers/channels/commonMarkerConfig.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfigWithArea.d.ts +6 -0
- package/dist/types/markers/channels/commonMarkerConfigWithArea.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfigWithColor.d.ts +5 -0
- package/dist/types/markers/channels/commonMarkerConfigWithColor.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfigWithInterval.d.ts +9 -0
- package/dist/types/markers/channels/commonMarkerConfigWithInterval.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfigWithRadius.d.ts +5 -0
- package/dist/types/markers/channels/commonMarkerConfigWithRadius.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfigWithSymbol.d.ts +5 -0
- package/dist/types/markers/channels/commonMarkerConfigWithSymbol.js +1 -0
- package/dist/types/markers/channels/commonMarkerConfigWithWeight.d.ts +5 -0
- package/dist/types/markers/channels/commonMarkerConfigWithWeight.js +1 -0
- package/dist/types/markers/common.d.ts +30 -103
- package/dist/types/markers/common.js +29 -1
- package/dist/types/markers/geo/contour.d.ts +27 -0
- package/dist/types/markers/geo/contour.js +1 -0
- package/dist/types/markers/geo/features.d.ts +12 -0
- package/dist/types/markers/geo/features.js +1 -0
- package/dist/types/markers/geo/geoComponent.d.ts +7 -0
- package/dist/types/markers/geo/geoComponent.js +1 -0
- package/dist/types/markers/geo/geoHover.d.ts +6 -0
- package/dist/types/markers/geo/geoHover.js +1 -0
- package/dist/types/markers/geo/geoMarkersConfig.d.ts +11 -0
- package/dist/types/markers/geo/geoMarkersConfig.js +1 -0
- package/dist/types/markers/geo/graticule.d.ts +11 -0
- package/dist/types/markers/geo/graticule.js +1 -0
- package/dist/types/markers/geo/inset.d.ts +50 -0
- package/dist/types/markers/geo/inset.js +1 -0
- package/dist/types/markers/geo/link.d.ts +13 -0
- package/dist/types/markers/geo/link.js +1 -0
- package/dist/types/markers/geo/sphere.d.ts +11 -0
- package/dist/types/markers/geo/sphere.js +1 -0
- package/dist/types/markers/geo/vector.d.ts +17 -0
- package/dist/types/markers/geo/vector.js +1 -0
- package/dist/types/markers/geo.d.ts +10 -212
- package/dist/types/markers/geo.js +10 -1
- package/dist/types/markers/traits.d.ts +22 -0
- package/dist/types/markers/traits.js +1 -0
- package/dist/types/misc/easing.js +1 -0
- package/dist/types/misc/viewport.js +1 -0
- package/dist/types/phases/data/axes.d.ts +18 -0
- package/dist/types/phases/data/axes.js +1 -0
- package/dist/types/phases/data/phase.d.ts +26 -0
- package/dist/types/phases/data/phase.js +2 -0
- package/dist/types/phases/facet/phase.d.ts +18 -0
- package/dist/types/phases/facet/phase.js +1 -0
- package/dist/types/phases/hover/phase.d.ts +34 -0
- package/dist/types/phases/hover/phase.js +1 -0
- package/dist/types/phases/index.d.ts +14 -0
- package/dist/types/phases/index.js +1 -0
- package/dist/types/phases/kind.d.ts +59 -0
- package/dist/types/phases/kind.js +1 -0
- package/dist/types/phases/mapping/phase.d.ts +5 -0
- package/dist/types/phases/mapping/phase.js +1 -0
- package/dist/types/phases/markers/phase.d.ts +13 -0
- package/dist/types/phases/markers/phase.js +1 -0
- package/dist/types/phases/pipeline.d.ts +10 -0
- package/dist/types/phases/pipeline.js +1 -0
- package/dist/types/phases/scales/phase.d.ts +26 -0
- package/dist/types/phases/scales/phase.js +1 -0
- package/dist/types/phases/sharedScales/phase.d.ts +12 -0
- package/dist/types/phases/sharedScales/phase.js +1 -0
- package/dist/types/phases/stage.d.ts +12 -0
- package/dist/types/phases/stage.js +1 -0
- package/dist/types/phases/state.d.ts +73 -0
- package/dist/types/phases/state.js +1 -0
- package/dist/types/phases/statistics/phase.d.ts +41 -0
- package/dist/types/phases/statistics/phase.js +1 -0
- package/dist/types/phases/statistics/source.d.ts +20 -0
- package/dist/types/phases/statistics/source.js +7 -0
- package/dist/types/phases/styles/phase.d.ts +24 -0
- package/dist/types/phases/styles/phase.js +1 -0
- package/dist/types/phases/transforms/adapter.d.ts +27 -0
- package/dist/types/phases/transforms/adapter.js +1 -0
- package/dist/types/phases/transforms/phase.d.ts +40 -0
- package/dist/types/phases/transforms/phase.js +1 -0
- package/dist/types/plots/area/props.d.ts +10 -0
- package/dist/types/plots/area/props.js +1 -0
- package/dist/types/plots/area/state.d.ts +6 -0
- package/dist/types/plots/area/state.js +1 -0
- package/dist/types/plots/bar/props.d.ts +10 -0
- package/dist/types/plots/bar/props.js +1 -0
- package/dist/types/plots/bar/state.d.ts +6 -0
- package/dist/types/plots/bar/state.js +1 -0
- package/dist/types/plots/camera.d.ts +7 -17
- package/dist/types/plots/constants.d.ts +16 -8
- package/dist/types/plots/data/common.d.ts +25 -17
- package/dist/types/plots/data/geo.d.ts +26 -12
- package/dist/types/plots/gaps.d.ts +19 -38
- package/dist/types/plots/geo/props.d.ts +23 -0
- package/dist/types/plots/geo/props.js +1 -0
- package/dist/types/plots/geo/state.d.ts +82 -0
- package/dist/types/plots/geo/state.js +1 -0
- package/dist/types/plots/heatmap/props.d.ts +10 -0
- package/dist/types/plots/heatmap/props.js +1 -0
- package/dist/types/plots/heatmap/state.d.ts +28 -0
- package/dist/types/plots/heatmap/state.js +1 -0
- package/dist/types/plots/histogram/props.d.ts +18 -0
- package/dist/types/plots/histogram/props.js +1 -0
- package/dist/types/plots/histogram/state.d.ts +6 -0
- package/dist/types/plots/histogram/state.js +1 -0
- package/dist/types/plots/line/props.d.ts +10 -0
- package/dist/types/plots/line/props.js +1 -0
- package/dist/types/plots/line/state.d.ts +9 -0
- package/dist/types/plots/line/state.js +1 -0
- package/dist/types/plots/props.d.ts +143 -35
- package/dist/types/plots/pyramid/props.d.ts +10 -0
- package/dist/types/plots/pyramid/props.js +1 -0
- package/dist/types/plots/pyramid/state.d.ts +16 -0
- package/dist/types/plots/pyramid/state.js +1 -0
- package/dist/types/plots/scatter/props.d.ts +10 -0
- package/dist/types/plots/scatter/props.js +1 -0
- package/dist/types/plots/scatter/state.d.ts +6 -0
- package/dist/types/plots/scatter/state.js +1 -0
- package/dist/types/plots/segments/common.d.ts +1 -1
- package/dist/types/plots/segments/config.d.ts +12 -6
- package/dist/types/plots/styling.d.ts +5 -5
- package/dist/types/transforms/bin.d.ts +84 -0
- package/dist/types/transforms/bin.js +28 -0
- package/dist/types/transforms/bollinger.d.ts +21 -0
- package/dist/types/transforms/bollinger.js +1 -0
- package/dist/types/transforms/common.d.ts +29 -0
- package/dist/types/transforms/common.js +16 -0
- package/dist/types/transforms/density.d.ts +45 -0
- package/dist/types/transforms/density.js +10 -0
- package/dist/types/transforms/filter.d.ts +12 -0
- package/dist/types/transforms/filter.js +14 -0
- package/dist/types/transforms/group.d.ts +70 -0
- package/dist/types/transforms/group.js +8 -0
- package/dist/types/transforms/index.d.ts +36 -0
- package/dist/types/transforms/index.js +1 -0
- package/dist/types/transforms/interval.d.ts +21 -0
- package/dist/types/transforms/interval.js +14 -0
- package/dist/types/transforms/jitter.d.ts +34 -0
- package/dist/types/transforms/jitter.js +1 -0
- package/dist/types/transforms/map.d.ts +24 -0
- package/dist/types/transforms/map.js +1 -0
- package/dist/types/transforms/normalize.d.ts +36 -0
- package/dist/types/transforms/normalize.js +1 -0
- package/dist/types/transforms/select.d.ts +15 -0
- package/dist/types/transforms/select.js +1 -0
- package/dist/types/transforms/shift.d.ts +20 -0
- package/dist/types/transforms/shift.js +1 -0
- package/dist/types/transforms/sort.d.ts +31 -0
- package/dist/types/transforms/sort.js +14 -0
- package/dist/types/transforms/stack.d.ts +64 -0
- package/dist/types/transforms/stack.js +12 -0
- package/dist/types/transforms/window.d.ts +29 -0
- package/dist/types/transforms/window.js +1 -0
- package/dist/utils/ContinuousDomain.d.ts +12 -0
- package/dist/utils/ContinuousDomain.js +19 -0
- package/dist/utils/Interpolation.d.ts +26 -0
- package/dist/utils/Interpolation.js +65 -0
- package/dist/utils/{color.d.ts → color/contrast.d.ts} +0 -5
- package/dist/utils/color/contrast.js +40 -0
- package/dist/utils/color/cssColor.d.ts +4 -0
- package/dist/utils/color/cssColor.js +77 -0
- package/dist/utils/color/index.d.ts +3 -0
- package/dist/utils/color/index.js +3 -0
- package/dist/utils/color/ramp.d.ts +17 -0
- package/dist/utils/color/ramp.js +110 -0
- package/dist/utils/grouping.d.ts +9 -5
- package/dist/utils/grouping.js +19 -10
- package/dist/utils/merge.d.ts +7 -0
- package/dist/utils/merge.js +17 -0
- package/dist/utils/opacity.d.ts +9 -0
- package/dist/utils/opacity.js +38 -0
- package/dist/utils/symbol.d.ts +31 -0
- package/dist/utils/symbol.js +92 -0
- package/docs/architecture.md +137 -0
- package/docs/chrome.md +68 -0
- package/docs/composer.md +53 -0
- package/docs/concepts.md +99 -0
- package/docs/development.md +94 -0
- package/docs/facets.md +69 -0
- package/docs/geo.md +151 -0
- package/docs/getting-started.md +79 -0
- package/docs/legend.md +106 -0
- package/docs/markers.md +106 -0
- package/docs/plots.md +158 -0
- package/docs/scales.md +78 -0
- package/docs/state.md +71 -0
- package/docs/styles-and-segments.md +215 -0
- package/docs/theming.md +215 -0
- package/docs/timeline.md +94 -0
- package/docs/tooltip-and-hover.md +80 -0
- package/docs/transforms-and-statistics.md +88 -0
- package/examples/BarValues.svelte +14 -0
- package/examples/CustomTooltip.svelte +37 -0
- package/examples/Facets.svelte +15 -0
- package/examples/LegendReader.svelte +8 -0
- package/examples/LegendToggle.svelte +25 -0
- package/examples/ResponsiveLine.svelte +37 -0
- package/examples/Segments.svelte +17 -0
- package/examples/TimelinePlayer.svelte +20 -0
- package/examples/Tooltip.svelte +19 -0
- package/examples/TooltipCard.svelte +86 -0
- package/examples/data.ts +12 -0
- package/llms-full.txt +114 -0
- package/llms.txt +49 -0
- package/package.json +41 -5
- package/dist/charts/BaseChart.svelte +0 -149
- package/dist/charts/BaseChart.svelte.d.ts +0 -47
- package/dist/charts/bar/Chart.svelte +0 -110
- package/dist/charts/bar/Chart.svelte.d.ts +0 -26
- package/dist/charts/container/ChartContainer.svelte +0 -137
- package/dist/charts/container/ChartContainer.svelte.d.ts +0 -16
- package/dist/charts/heatmap/Chart.svelte +0 -114
- package/dist/charts/line/Chart.svelte +0 -112
- package/dist/charts/line/Chart.svelte.d.ts +0 -26
- package/dist/charts/pyramid/Chart.svelte +0 -134
- package/dist/charts/pyramid/Chart.svelte.d.ts +0 -30
- package/dist/charts/scatter/Chart.svelte +0 -95
- package/dist/charts/scatter/Chart.svelte.d.ts +0 -28
- package/dist/layout/coordinates/margins.d.ts +0 -16
- package/dist/layout/coordinates/margins.js +0 -11
- package/dist/layout/legend/interaction.svelte.d.ts +0 -15
- package/dist/layout/legend/interaction.svelte.js +0 -32
- package/dist/layout/plot/BasePlotLayout.svelte +0 -332
- package/dist/layout/plot/BasePlotLayout.svelte.d.ts +0 -122
- package/dist/layout/plot/margins.d.ts +0 -18
- package/dist/layout/plot/margins.js +0 -15
- package/dist/layout/plot/measureText.d.ts +0 -4
- package/dist/layout/plot/measureText.js +0 -19
- package/dist/layout/tooltip/TooltipLayout.svelte +0 -51
- package/dist/layout/tooltip/TooltipLayout.svelte.d.ts +0 -45
- package/dist/layout/tooltip/controller.svelte.d.ts +0 -61
- package/dist/layout/tooltip/controller.svelte.js +0 -173
- package/dist/layout/tooltip/hover.svelte.d.ts +0 -7
- package/dist/layout/tooltip/hover.svelte.js +0 -28
- package/dist/layout/tooltip/resolveTooltipPlacement.d.ts +0 -24
- package/dist/layout/tooltip/resolveTooltipPlacement.js +0 -49
- package/dist/layout/tooltip/utils.d.ts +0 -49
- package/dist/layout/tooltip/utils.js +0 -82
- package/dist/markers/CellMarker.svelte +0 -21
- package/dist/markers/ContourClipMarker.svelte +0 -77
- package/dist/markers/ContourMarker.svelte +0 -28
- package/dist/markers/DeltaMarker.svelte +0 -109
- package/dist/markers/DotMarker.svelte +0 -70
- package/dist/markers/GeoFeaturesMarker.svelte +0 -19
- package/dist/markers/GeoHoverMarker.svelte +0 -25
- package/dist/markers/GraticuleMarker.svelte +0 -18
- package/dist/markers/HoverMarker.svelte +0 -212
- package/dist/markers/LineMarker.svelte +0 -19
- package/dist/markers/LinkMarker.svelte +0 -42
- package/dist/markers/PeakMarker.svelte +0 -80
- package/dist/markers/PeakMarker.svelte.d.ts +0 -13
- package/dist/markers/RuleMarker.svelte +0 -24
- package/dist/markers/SphereMarker.svelte +0 -15
- package/dist/markers/TextMarker.svelte +0 -62
- package/dist/markers/VectorMarker.svelte +0 -20
- package/dist/plots/bar/ValueLabels.svelte +0 -149
- package/dist/plots/bar/ValueLabels.svelte.d.ts +0 -58
- package/dist/plots/bar/buildBarMarkers.d.ts +0 -27
- package/dist/plots/bar/buildBarMarkers.js +0 -151
- package/dist/plots/bar/hoverPoints.d.ts +0 -15
- package/dist/plots/bar/hoverPoints.js +0 -37
- package/dist/plots/bar/layout.svelte.d.ts +0 -42
- package/dist/plots/bar/layout.svelte.js +0 -182
- package/dist/plots/geo/buildGeoMarkers.d.ts +0 -33
- package/dist/plots/geo/buildGeoMarkers.js +0 -47
- package/dist/plots/heatmap/ValueLabels.svelte +0 -56
- package/dist/plots/heatmap/buildCellMarkers.d.ts +0 -21
- package/dist/plots/heatmap/buildCellMarkers.js +0 -25
- package/dist/plots/line/ValueLabels.svelte +0 -269
- package/dist/plots/line/ValueLabels.svelte.d.ts +0 -52
- package/dist/plots/line/buildGapMarkers.d.ts +0 -28
- package/dist/plots/line/buildGapMarkers.js +0 -74
- package/dist/plots/line/buildLineMarkers.d.ts +0 -16
- package/dist/plots/line/buildLineMarkers.js +0 -56
- package/dist/plots/line/valueLabelMargin.d.ts +0 -19
- package/dist/plots/line/valueLabelMargin.js +0 -65
- package/dist/plots/pyramid/ValueLabels.svelte +0 -139
- package/dist/plots/pyramid/ValueLabels.svelte.d.ts +0 -56
- package/dist/plots/pyramid/buildPyramidBarMarkers.d.ts +0 -26
- package/dist/plots/pyramid/buildPyramidBarMarkers.js +0 -72
- package/dist/plots/scatter/ValueLabels.svelte +0 -163
- package/dist/plots/scatter/ValueLabels.svelte.d.ts +0 -52
- package/dist/plots/scatter/buildScatterMarkers.d.ts +0 -12
- package/dist/plots/scatter/buildScatterMarkers.js +0 -36
- package/dist/plots/scatter/resolveRadiusPaddedDomain.d.ts +0 -10
- package/dist/plots/scatter/resolveRadiusPaddedDomain.js +0 -23
- package/dist/plots/utils/categoricalAxisMargin.d.ts +0 -14
- package/dist/plots/utils/categoricalAxisMargin.js +0 -20
- package/dist/plots/utils/declutter.d.ts +0 -120
- package/dist/plots/utils/declutter.js +0 -240
- package/dist/plots/utils/labelOverflow.svelte.d.ts +0 -107
- package/dist/plots/utils/labelOverflow.svelte.js +0 -257
- package/dist/plots/utils/legendDisabled.d.ts +0 -27
- package/dist/plots/utils/legendDisabled.js +0 -68
- package/dist/plots/utils/valueLabelMargin.d.ts +0 -67
- package/dist/plots/utils/valueLabelMargin.js +0 -60
- package/dist/types/charts/common.d.ts +0 -22
- package/dist/types/charts/props.d.ts +0 -50
- package/dist/types/markers/base.d.ts +0 -45
- package/dist/types/markers/line.d.ts +0 -34
- package/dist/types/markers/props.d.ts +0 -11
- package/dist/types/plots/data/scatter.d.ts +0 -13
- package/dist/utils/color.js +0 -141
- package/dist/utils/delta.d.ts +0 -12
- package/dist/utils/delta.js +0 -69
- package/dist/utils/edgeAwareAnchor.d.ts +0 -34
- package/dist/utils/edgeAwareAnchor.js +0 -60
- package/dist/utils/interpolate.d.ts +0 -31
- package/dist/utils/interpolate.js +0 -71
- /package/dist/types/{charts/common.js → layout/box.js} +0 -0
- /package/dist/types/{charts/interpolate.js → layout/composer.js} +0 -0
- /package/dist/types/{charts/props.js → layout/figure.js} +0 -0
- /package/dist/types/{markers/base.js → layout/grid.js} +0 -0
- /package/dist/types/{markers/line.js → layout/hover.js} +0 -0
- /package/dist/types/{markers/props.js → layout/mapping.js} +0 -0
- /package/dist/types/{plots/data/scatter.js → layout/plot.js} +0 -0
- /package/dist/types/{viewport.js → layout/statistics/bollinger.js} +0 -0
- /package/dist/types/{charts/interpolate.d.ts → misc/easing.d.ts} +0 -0
- /package/dist/types/{viewport.d.ts → misc/viewport.d.ts} +0 -0
|
@@ -1,44 +1,42 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Pipeline } from '../../phases/Pipeline';
|
|
2
|
+
import type { Snippet } from 'svelte';
|
|
3
|
+
import type { TooltipOptions, TooltipProp } from '../layout/tooltip';
|
|
4
|
+
import type { HoverPoint, HoverStrategy } from '../layout/hover';
|
|
5
|
+
import type { LegendExtension, LegendSection } from '../layout/legend';
|
|
6
|
+
import type { FacetConfig } from '../layout/facet';
|
|
7
|
+
import type { GridPlacement } from '../layout/grid';
|
|
8
|
+
import type { TimelineConfig } from '../layout/timeline';
|
|
2
9
|
import type { Segment } from './segments/config';
|
|
3
10
|
import type { AxisBasedScalesConfig } from '../layout/scales';
|
|
4
11
|
import type { GeoScalesConfig } from '../layout/coordinates';
|
|
5
|
-
|
|
12
|
+
import type { StatisticConfig } from '../layout/statistics';
|
|
13
|
+
import type { MarkerTransform } from '../transforms';
|
|
14
|
+
/** The `styles` prop accepted by every plot kind - its own
|
|
6
15
|
* styles shape ({@link AxisBasedStylesConfig}, `GeoStylesConfig`, …). */
|
|
7
16
|
export type StylesConfig<TStyles extends object> = TStyles;
|
|
8
|
-
/** The `markers` prop accepted by every plot kind
|
|
17
|
+
/** The `markers` prop accepted by every plot kind - a list of that kind's own marker union. */
|
|
9
18
|
export type MarkersConfig<TMarker> = TMarker[];
|
|
10
19
|
/**
|
|
11
|
-
* The `segments` prop
|
|
12
|
-
*
|
|
13
|
-
* series, catch-all segments (no `areas`) evaluate first as a baseline;
|
|
14
|
-
* area-specific segments merge on top and win on conflict.
|
|
20
|
+
* The `segments` prop - series name (or `'default'`) to its {@link Segment}s.
|
|
21
|
+
* Area-specific segments win over catch-all ones.
|
|
15
22
|
*/
|
|
16
23
|
export type SegmentsConfig<TStyle> = Record<string, Segment<TStyle>[]>;
|
|
17
|
-
/**
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
* number pins it exactly.
|
|
21
|
-
*/
|
|
24
|
+
/** One side of a box. */
|
|
25
|
+
export type MarginSide = 'top' | 'right' | 'bottom' | 'left';
|
|
26
|
+
/** Margin overrides per side: a number pins it, `'auto'` fits it to its content. Unset sides use the theme's. */
|
|
22
27
|
export type MarginConfig = Partial<{
|
|
23
28
|
top: number | 'auto';
|
|
24
29
|
right: number | 'auto';
|
|
25
30
|
bottom: number | 'auto';
|
|
26
31
|
left: number | 'auto';
|
|
27
32
|
}>;
|
|
28
|
-
/**
|
|
29
|
-
|
|
30
|
-
* author-facing {@link TooltipOptions}. `format`/`sync` become required;
|
|
31
|
-
* `facetId` identifies the originating facet (`''` when not faceted).
|
|
32
|
-
* Presence of this object is what turns hovering on.
|
|
33
|
-
*/
|
|
34
|
-
export type TooltipConfig<TRow extends Record<string, unknown>> = Omit<TooltipOptions<TRow>, 'format' | 'sync'> & {
|
|
35
|
-
format: (row: TRow) => string;
|
|
33
|
+
/** The tooltip a plot's core draws from: {@link TooltipOptions} with `sync` resolved. Without `format`, the core uses its own default. */
|
|
34
|
+
export type TooltipConfig<TRow extends Record<string, unknown>> = Omit<TooltipOptions<TRow>, 'sync'> & {
|
|
36
35
|
sync: boolean;
|
|
37
|
-
facetId: string;
|
|
38
36
|
};
|
|
39
37
|
/** How a pointer event resolves to a candidate point: `'nearest'` (closest within a distance threshold) or `'contains'` (whichever candidate's own rendered shape contains the cursor). */
|
|
40
38
|
export type PointMatchingStrategy = 'nearest' | 'contains';
|
|
41
|
-
/** `BasePlotLayout`'s single `hover` prop
|
|
39
|
+
/** `BasePlotLayout`'s single `hover` prop - every plot kind's own resolved hover/tooltip wiring. */
|
|
42
40
|
export type HoverConfig<TRow extends Record<string, unknown>> = {
|
|
43
41
|
/** Whether the pointer/hover/tooltip machinery should mount at all. */
|
|
44
42
|
active: boolean;
|
|
@@ -50,28 +48,113 @@ export type HoverConfig<TRow extends Record<string, unknown>> = {
|
|
|
50
48
|
strategy?: HoverStrategy;
|
|
51
49
|
/** Resolved sync flag for the *local* hover store (ignored once a shared store is in scope). */
|
|
52
50
|
sync?: boolean;
|
|
53
|
-
tooltip?: TooltipConfig<TRow
|
|
54
|
-
|
|
51
|
+
tooltip?: TooltipConfig<TRow> & {
|
|
52
|
+
format: (row: TRow) => string;
|
|
53
|
+
};
|
|
54
|
+
/** When it returns `true`, that pointer event is treated as a leave instead of a move - lets a nested layout opt part of the plot out of hover matching. */
|
|
55
55
|
exclude?: (e: PointerEvent) => boolean;
|
|
56
|
-
/** How to resolve a pointer event to a candidate point
|
|
56
|
+
/** How to resolve a pointer event to a candidate point - see {@link PointMatchingStrategy}. Defaults to `'nearest'`. */
|
|
57
57
|
pointMatching?: PointMatchingStrategy;
|
|
58
58
|
/** Forces the crosshair rule(s) a `hover` marker draws off entirely, overriding whatever `strategy` implies. */
|
|
59
59
|
crosshair?: boolean;
|
|
60
60
|
};
|
|
61
|
+
/** The `scales` prop of any plot kind. */
|
|
62
|
+
export type ScalesConfig<TData = Record<string, unknown>> = AxisBasedScalesConfig<TData> | GeoScalesConfig;
|
|
61
63
|
/**
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
64
|
+
* A block a plot's chrome draws, `plot` for the plot itself, `timeline` for
|
|
65
|
+
* its timeline when that's a player bar, or `divider` for a line between two
|
|
66
|
+
* blocks, styled by the configuration's `divider`.
|
|
65
67
|
*/
|
|
66
|
-
export type
|
|
68
|
+
export type PlotChromeItem = 'title' | 'subtitle' | 'header' | 'legend' | 'plot' | 'caption' | 'footer' | 'timeline' | 'divider';
|
|
69
|
+
/**
|
|
70
|
+
* Two or three blocks drawn side by side in one row of the chrome, written as
|
|
71
|
+
* `'(plot, timeline)'`. The `plot` takes the width the others leave, and the
|
|
72
|
+
* others take as much as they need; a row without a `plot` shares its width
|
|
73
|
+
* among its blocks, none of them stretching.
|
|
74
|
+
*/
|
|
75
|
+
export type PlotChromeRow<TItem extends string = Exclude<PlotChromeItem, 'divider'>> = `(${TItem}, ${TItem})` | `(${TItem}, ${TItem}, ${TItem})`;
|
|
76
|
+
/** One entry of a chrome `order`: a block, or a row of blocks. */
|
|
77
|
+
export type PlotChromeEntry = PlotChromeItem | PlotChromeRow;
|
|
78
|
+
/**
|
|
79
|
+
* What's drawn around a figure, as `Figure` and `FigureChrome` read it: every block
|
|
80
|
+
* optional, `header` drawn instead of `title`/`subtitle` and `footer` instead
|
|
81
|
+
* of `caption`. `order` lists the blocks top to bottom (by default, the
|
|
82
|
+
* configuration's `chrome.order`); one left out isn't drawn, except `plot`, which then
|
|
83
|
+
* goes last. Any number of `divider`s may sit in it, each drawn only between
|
|
84
|
+
* two drawn blocks.
|
|
85
|
+
*/
|
|
86
|
+
export type PlotChromeConfig = {
|
|
87
|
+
title?: string;
|
|
88
|
+
subtitle?: string;
|
|
89
|
+
caption?: string;
|
|
90
|
+
header?: Snippet;
|
|
91
|
+
footer?: Snippet;
|
|
92
|
+
/**
|
|
93
|
+
* The figure's legend: unset or `true`, the one its plots read as - their
|
|
94
|
+
* series, scales, and the segments and markers that name themselves; `false`,
|
|
95
|
+
* none; a list of sections, exactly those; `{ items, sections }`, the
|
|
96
|
+
* automatic one with those added, and `{ series, color, opacity, size,
|
|
97
|
+
* symbol }`, with the section of each channel adjusted (see {@link LegendExtension}).
|
|
98
|
+
*/
|
|
99
|
+
legend?: LegendSection[] | LegendExtension | boolean;
|
|
100
|
+
order?: PlotChromeEntry[];
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* One way to fill part of the chrome, and the `order` items it allows. A block
|
|
104
|
+
* that's passed may still be `undefined` at runtime: it's then just not drawn.
|
|
105
|
+
*/
|
|
106
|
+
type ChromeBlock<TProps, TItem extends PlotChromeItem> = {
|
|
107
|
+
props: TProps;
|
|
108
|
+
item: TItem;
|
|
109
|
+
};
|
|
110
|
+
type HeadingBlock = ChromeBlock<{
|
|
111
|
+
header: Snippet | undefined;
|
|
112
|
+
title?: never;
|
|
113
|
+
subtitle?: never;
|
|
114
|
+
}, 'header'> | ChromeBlock<{
|
|
115
|
+
header?: never;
|
|
116
|
+
title: string | undefined;
|
|
117
|
+
subtitle: string | undefined;
|
|
118
|
+
}, 'title' | 'subtitle'> | ChromeBlock<{
|
|
119
|
+
header?: never;
|
|
120
|
+
title: string | undefined;
|
|
121
|
+
subtitle?: never;
|
|
122
|
+
}, 'title'> | ChromeBlock<{
|
|
123
|
+
header?: never;
|
|
124
|
+
title?: never;
|
|
125
|
+
subtitle: string | undefined;
|
|
126
|
+
}, 'subtitle'> | ChromeBlock<{
|
|
127
|
+
header?: never;
|
|
128
|
+
title?: never;
|
|
129
|
+
subtitle?: never;
|
|
130
|
+
}, never>;
|
|
131
|
+
/** The legend is always there to place: unset, a figure reads one off what its plots draw. */
|
|
132
|
+
type LegendBlock = ChromeBlock<{
|
|
133
|
+
legend?: LegendSection[] | LegendExtension | boolean | undefined;
|
|
134
|
+
}, 'legend'>;
|
|
135
|
+
type ClosingBlock = ChromeBlock<{
|
|
136
|
+
footer: Snippet | undefined;
|
|
137
|
+
caption?: never;
|
|
138
|
+
}, 'footer'> | ChromeBlock<{
|
|
139
|
+
footer?: never;
|
|
140
|
+
caption: string | undefined;
|
|
141
|
+
}, 'caption'> | ChromeBlock<{
|
|
142
|
+
footer?: never;
|
|
143
|
+
caption?: never;
|
|
144
|
+
}, never>;
|
|
145
|
+
/** Every combination of the three parts, each with an `order` of only the blocks it fills, plus `plot` and dividers. */
|
|
146
|
+
type ChromeCombination<THeading, TLegend, TClosing> = THeading extends ChromeBlock<infer HP, infer HI> ? TLegend extends ChromeBlock<infer LP, infer LI> ? TClosing extends ChromeBlock<infer CP, infer CI> ? HP & LP & CP & {
|
|
147
|
+
order?: (HI | LI | CI | 'plot' | 'timeline' | 'divider' | PlotChromeRow<HI | LI | CI | 'plot' | 'timeline'>)[];
|
|
148
|
+
} : never : never : never;
|
|
67
149
|
/**
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
* defaults to `undefined` — only `GeoPlot` instantiates it.
|
|
150
|
+
* What's drawn around a plot: accepted by every plot kind and by
|
|
151
|
+
* `PlotComposer`. `header` replaces `title`/`subtitle` and `footer`
|
|
152
|
+
* replaces `caption`, so each excludes the other. `order` lists the blocks
|
|
153
|
+
* top to bottom, out of the ones set here plus `plot`, `timeline` and `divider`; see {@link PlotChromeConfig}.
|
|
73
154
|
*/
|
|
74
|
-
export type
|
|
155
|
+
export type PlotChromeProps = ChromeCombination<HeadingBlock, LegendBlock, ClosingBlock>;
|
|
156
|
+
/** The props every plot kind shares between its core and its public component. */
|
|
157
|
+
type PlotCommonProps<TStyles extends object, TSegmentStyle extends object, TMarker, TScales, TCoordinates> = {
|
|
75
158
|
width: number;
|
|
76
159
|
height: number;
|
|
77
160
|
styles?: StylesConfig<TStyles>;
|
|
@@ -80,5 +163,30 @@ export type BasePlotProps<TDataContract, TRow extends Record<string, unknown>, T
|
|
|
80
163
|
scales?: TScales;
|
|
81
164
|
coordinates?: TCoordinates;
|
|
82
165
|
margins?: MarginConfig;
|
|
166
|
+
statistics?: StatisticConfig[];
|
|
167
|
+
transforms?: MarkerTransform[];
|
|
168
|
+
};
|
|
169
|
+
/** The props a plot kind's core draws from. `TCoordinates` is only set by `GeoPlot`. */
|
|
170
|
+
export type PlotCoreProps<TDataContract, TRow extends Record<string, unknown>, TStyles extends object, TSegmentStyle extends object, TMarker, TScales extends ScalesConfig<TRow>, TCoordinates = undefined> = TDataContract & PlotCommonProps<TStyles, TSegmentStyle, TMarker, TScales, TCoordinates> & {
|
|
83
171
|
tooltip?: TooltipConfig<TRow>;
|
|
172
|
+
/** One facet panel's part of a run of the data phases over every panel: the core then runs only the phases after them. */
|
|
173
|
+
panelState?: object;
|
|
174
|
+
/** The kind's pipeline, built once by its plot: the core runs it over its own props. */
|
|
175
|
+
pipeline?: Pipeline<any, any>;
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* A figure's box - a plot's or a `PlotComposer`'s: its own `width` and
|
|
179
|
+
* `height`, or, drawn straight inside a `PlotComposer`, the cell it takes
|
|
180
|
+
* there (an `area`, or an `inset` floating over it), whose size it draws at.
|
|
181
|
+
*/
|
|
182
|
+
export type FigureBoxProps = GridPlacement & {
|
|
183
|
+
width?: number;
|
|
184
|
+
height?: number;
|
|
185
|
+
};
|
|
186
|
+
/** A plot component's public props: its core props, chrome, `timeline`, `facet` and an author-facing `tooltip`. */
|
|
187
|
+
export type BasePlotProps<TDataContract, TRow extends Record<string, unknown>, TStyles extends object, TSegmentStyle extends object, TMarker, TScales extends ScalesConfig<TRow>, TCoordinates = undefined> = TDataContract & Omit<PlotCommonProps<TStyles, TSegmentStyle, TMarker, TScales, TCoordinates>, 'width' | 'height'> & FigureBoxProps & PlotChromeProps & {
|
|
188
|
+
tooltip?: TooltipProp<TRow>;
|
|
189
|
+
timeline?: TimelineConfig<TRow>;
|
|
190
|
+
facet?: FacetConfig<TRow>;
|
|
84
191
|
};
|
|
192
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BasePlotProps, PlotCoreProps } from '../props';
|
|
2
|
+
import type { AxisBasedScalesConfig } from '../../layout/scales';
|
|
3
|
+
import type { AxisBasedMarkersConfig } from '../../markers/common';
|
|
4
|
+
import type { SeriesProps, DataProps } from '../data/common';
|
|
5
|
+
import type { GapsAwarePlotStylesConfig } from '../../layout/styles';
|
|
6
|
+
import type { BarSegmentStyle } from '../segments/common';
|
|
7
|
+
/** `PyramidPlot`'s public props. */
|
|
8
|
+
export type PyramidPlotProps<TData extends Record<string, unknown>> = BasePlotProps<SeriesProps<TData> | DataProps<TData>, TData, GapsAwarePlotStylesConfig<BarSegmentStyle>, BarSegmentStyle, AxisBasedMarkersConfig, AxisBasedScalesConfig<TData>>;
|
|
9
|
+
/** What `PyramidPlot`'s core draws from. */
|
|
10
|
+
export type PyramidPlotCoreProps<TData extends Record<string, unknown>> = PlotCoreProps<SeriesProps<TData> | DataProps<TData>, TData, GapsAwarePlotStylesConfig<BarSegmentStyle>, BarSegmentStyle, AxisBasedMarkersConfig, AxisBasedScalesConfig<TData>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Series } from '../data/common';
|
|
2
|
+
import type { BarSegmentStyle } from '../segments/common';
|
|
3
|
+
import type { AxisPlotState, AxisPlotCtx } from '../../phases';
|
|
4
|
+
export type PyramidSide = 'left' | 'right';
|
|
5
|
+
/** A resolved series tagged with which side of the shared zero baseline it renders on. */
|
|
6
|
+
export type PyramidSeries<TData extends Record<string, unknown>> = Series<TData> & {
|
|
7
|
+
side: PyramidSide;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* PyramidPlot's pipeline state: the shared axis-based state with its own series
|
|
11
|
+
* and row shapes. Its `x`/`y` are the visual axes, as on every plot: the one
|
|
12
|
+
* holding categories decides whether its sides run left/right or bottom/top.
|
|
13
|
+
*/
|
|
14
|
+
export type PyramidPlotState<TData extends Record<string, unknown>> = AxisPlotState<TData, BarSegmentStyle, PyramidSeries<TData>>;
|
|
15
|
+
/** The environment every PyramidPlot phase reads from, alongside the growing state. */
|
|
16
|
+
export type PyramidPlotCtx = AxisPlotCtx;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BasePlotProps, PlotCoreProps } from '../props';
|
|
2
|
+
import type { AxisBasedScalesConfig } from '../../layout/scales';
|
|
3
|
+
import type { AxisBasedMarkersConfig } from '../../markers/common';
|
|
4
|
+
import type { SeriesProps, DataProps } from '../data/common';
|
|
5
|
+
import type { AxisBasedStylesConfig } from '../../layout/styles';
|
|
6
|
+
import type { ScatterSegmentStyle } from '../segments/common';
|
|
7
|
+
/** `ScatterPlot`'s public props. */
|
|
8
|
+
export type ScatterPlotProps<TData extends Record<string, unknown>> = BasePlotProps<SeriesProps<TData> | DataProps<TData>, TData, AxisBasedStylesConfig, ScatterSegmentStyle, AxisBasedMarkersConfig, AxisBasedScalesConfig<TData>>;
|
|
9
|
+
/** What `ScatterPlot`'s core draws from. */
|
|
10
|
+
export type ScatterPlotCoreProps<TData extends Record<string, unknown>> = PlotCoreProps<SeriesProps<TData> | DataProps<TData>, TData, AxisBasedStylesConfig, ScatterSegmentStyle, AxisBasedMarkersConfig, AxisBasedScalesConfig<TData>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ScatterSegmentStyle } from '../segments/common';
|
|
2
|
+
import type { AxisPlotState, AxisPlotCtx } from '../../phases';
|
|
3
|
+
/** ScatterPlot's pipeline state: the shared axis-based state, with no extras of its own. */
|
|
4
|
+
export type ScatterPlotState<TData extends Record<string, unknown>> = AxisPlotState<TData, ScatterSegmentStyle>;
|
|
5
|
+
/** The environment every ScatterPlot phase reads from, alongside the growing state. */
|
|
6
|
+
export type ScatterPlotCtx = AxisPlotCtx;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -10,7 +10,7 @@ export type BarSegmentStyle = AreaStyle;
|
|
|
10
10
|
export type CellSegmentStyle = AreaStyle;
|
|
11
11
|
/** Per-segment styling for a scatter point cloud. */
|
|
12
12
|
export type ScatterSegmentStyle = DotStyle;
|
|
13
|
-
/** Per-feature styling override for `GeoPlot`
|
|
13
|
+
/** Per-feature styling override for `GeoPlot` - the geo analog of `CellSegmentStyle`. */
|
|
14
14
|
export type GeoSegmentStyle = {
|
|
15
15
|
fill?: string;
|
|
16
16
|
fillOpacity?: number;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ChannelScalesConfig } from '../../layout/scales';
|
|
2
|
+
import type { AxisValue } from '../../layout/mapping';
|
|
2
3
|
import type { Series } from '../data/common';
|
|
3
4
|
import type { LineSegmentStyle } from './common';
|
|
5
|
+
import type { MarkLegend } from '../../layout/legend';
|
|
4
6
|
/** A half-open interval on one axis. Both bounds are inclusive; omit either to leave that end open. */
|
|
5
7
|
export type Range = {
|
|
6
8
|
from?: AxisValue;
|
|
@@ -21,7 +23,7 @@ export type Area = {
|
|
|
21
23
|
/**
|
|
22
24
|
* One styled rule for a plot. A data point (or cell) is styled when it falls
|
|
23
25
|
* inside **any** of the listed `areas`. Omitting `areas` (or passing an empty
|
|
24
|
-
* array) makes the segment a catch-all that matches every data point
|
|
26
|
+
* array) makes the segment a catch-all that matches every data point - useful
|
|
25
27
|
* as a baseline style. `TStyle` is the per-mark shape ({@link LineSegmentStyle},
|
|
26
28
|
* {@link BarSegmentStyle}, {@link CellSegmentStyle}, …).
|
|
27
29
|
*
|
|
@@ -31,16 +33,20 @@ export type Area = {
|
|
|
31
33
|
*/
|
|
32
34
|
export type Segment<TStyle> = {
|
|
33
35
|
areas?: Area[];
|
|
34
|
-
|
|
36
|
+
scales?: ChannelScalesConfig;
|
|
37
|
+
styles?: TStyle;
|
|
38
|
+
/** Names the segment on its plot's automatic legend - see {@link MarkLegend}. */
|
|
39
|
+
legend?: MarkLegend;
|
|
35
40
|
};
|
|
36
|
-
/** One contiguous, styled slice of a series' data
|
|
41
|
+
/** One contiguous, styled slice of a series' data - ready to draw as its own mark. */
|
|
37
42
|
export type VisualSegment<T extends Record<string, unknown>, TStyle = LineSegmentStyle> = {
|
|
38
43
|
data: T[];
|
|
39
|
-
|
|
44
|
+
scales?: ChannelScalesConfig;
|
|
45
|
+
styles: TStyle;
|
|
40
46
|
};
|
|
41
47
|
/**
|
|
42
48
|
* A series split into its styled visual segments. `S` is the full series
|
|
43
|
-
* type Series<T>
|
|
49
|
+
* type Series<T> - its row type is read off `S['data']`
|
|
44
50
|
* rather than taken as a separate parameter, since TypeScript can't reliably
|
|
45
51
|
* infer a type parameter that only appears inside another parameter's
|
|
46
52
|
* constraint.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { FontWeight, FontStyleKeyword, TextAnchor, LineAnchor, LineStyle, LineCap, LineJoin, SymbolType } from './constants';
|
|
2
|
-
/** Text/label styling for any text mark
|
|
2
|
+
/** Text/label styling for any text mark - a marker's label, an annotation, a value label. */
|
|
3
3
|
export type FontStyle = {
|
|
4
4
|
fill?: string;
|
|
5
5
|
fontSize?: number;
|
|
@@ -17,7 +17,7 @@ export type FontStyle = {
|
|
|
17
17
|
class?: string;
|
|
18
18
|
textClass?: string;
|
|
19
19
|
};
|
|
20
|
-
/** Stroke styling for any line-ish mark
|
|
20
|
+
/** Stroke styling for any line-ish mark - a line, a rule, a marker's connector. */
|
|
21
21
|
export type StrokeStyle = {
|
|
22
22
|
stroke?: string;
|
|
23
23
|
strokeWidth?: number;
|
|
@@ -27,10 +27,10 @@ export type StrokeStyle = {
|
|
|
27
27
|
strokeLinejoin?: LineJoin;
|
|
28
28
|
};
|
|
29
29
|
/**
|
|
30
|
-
* Dot styling for any point mark
|
|
30
|
+
* Dot styling for any point mark - a line's endpoint dots, a marker's dot.
|
|
31
31
|
* Carries its own `dotStroke*` fields rather than nesting a {@link StrokeStyle},
|
|
32
32
|
* because a dot's outline is a distinct style from the stroke of the line (or
|
|
33
|
-
* other mark) it sits next to
|
|
33
|
+
* other mark) it sits next to - e.g. a `LineSegmentStyle` styles its
|
|
34
34
|
* line's stroke and its dots' outline independently.
|
|
35
35
|
*/
|
|
36
36
|
export type DotStyle = {
|
|
@@ -43,7 +43,7 @@ export type DotStyle = {
|
|
|
43
43
|
dotStrokeOpacity?: number;
|
|
44
44
|
dotStrokeDasharray?: string | LineStyle;
|
|
45
45
|
};
|
|
46
|
-
/** Styling for a 2D area mark
|
|
46
|
+
/** Styling for a 2D area mark - a bar segment, a heatmap cell, a geo feature highlight. */
|
|
47
47
|
export type AreaStyle = {
|
|
48
48
|
fill?: string;
|
|
49
49
|
fillOpacity?: number;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type { TransformChannel, TransformReducer } from './common';
|
|
2
|
+
type BinReducer = TransformReducer;
|
|
3
|
+
/** Channels both bin transforms read besides their binned one; `z` splits each bin by a group. */
|
|
4
|
+
type SharedBinChannels = {
|
|
5
|
+
data?: Record<string, unknown>[];
|
|
6
|
+
z?: TransformChannel;
|
|
7
|
+
insetLeft?: number;
|
|
8
|
+
insetRight?: number;
|
|
9
|
+
insetTop?: number;
|
|
10
|
+
insetBottom?: number;
|
|
11
|
+
};
|
|
12
|
+
/** Channels `binX` reads: its binned `x`, plus the shared ones. */
|
|
13
|
+
export type BinXChannels = SharedBinChannels & {
|
|
14
|
+
x?: TransformChannel;
|
|
15
|
+
};
|
|
16
|
+
/** Channels `binY` reads: its binned `y`, plus the shared ones. */
|
|
17
|
+
export type BinYChannels = SharedBinChannels & {
|
|
18
|
+
y?: TransformChannel;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* The keys of {@link BinXChannels}, at runtime. Typed as a record over the
|
|
22
|
+
* type's own keys, so a key added to or removed from the type fails to compile here.
|
|
23
|
+
*/
|
|
24
|
+
export declare const BIN_X_CHANNEL_KEYS: Record<keyof BinXChannels, true>;
|
|
25
|
+
/** The keys of {@link BinYChannels}, at runtime - see {@link BIN_X_CHANNEL_KEYS}. */
|
|
26
|
+
export declare const BIN_Y_CHANNEL_KEYS: Record<keyof BinYChannels, true>;
|
|
27
|
+
/** Channels the 2D `bin` reads: both binned axes, plus the shared ones. */
|
|
28
|
+
export type Bin2DChannels = SharedBinChannels & {
|
|
29
|
+
x?: TransformChannel;
|
|
30
|
+
y?: TransformChannel;
|
|
31
|
+
};
|
|
32
|
+
/** The keys of {@link Bin2DChannels}, at runtime - see {@link BIN_X_CHANNEL_KEYS}. */
|
|
33
|
+
export declare const BIN_2D_CHANNEL_KEYS: Record<keyof Bin2DChannels, true>;
|
|
34
|
+
/** Options both bin transforms take, flat next to the channels - same names as svelteplot's. */
|
|
35
|
+
type BinOptions = {
|
|
36
|
+
/** Explicit thresholds, a count, or a named generator (`auto`, `scott`, `sturges`, `freedman-diaconis`). */
|
|
37
|
+
thresholds?: 'auto' | 'scott' | 'sturges' | 'freedman-diaconis' | number | number[];
|
|
38
|
+
/** Bin width as an interval (a number or a named one like `'day'`); takes over from `thresholds`. */
|
|
39
|
+
interval?: number | string;
|
|
40
|
+
/** The domain the bins cover. */
|
|
41
|
+
domain?: [number, number];
|
|
42
|
+
/** Accumulates the bins: `1` from the start, `-1` from the end. */
|
|
43
|
+
cumulative?: false | 1 | -1;
|
|
44
|
+
/** Reverses the output rows. */
|
|
45
|
+
reverse?: boolean;
|
|
46
|
+
/** Reducers for the bin's other output channels. */
|
|
47
|
+
fill?: BinReducer;
|
|
48
|
+
stroke?: BinReducer;
|
|
49
|
+
r?: BinReducer;
|
|
50
|
+
opacity?: BinReducer;
|
|
51
|
+
fillOpacity?: BinReducer;
|
|
52
|
+
strokeOpacity?: BinReducer;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* `binX` as a marker transform: its own props, flat, exactly as svelteplot's
|
|
56
|
+
* `binX` takes them. Svelteplot names the binned channel `x` and its value
|
|
57
|
+
* output `y` (a reducer such as `'count'`). Both live in one flat object, so
|
|
58
|
+
* here `x` is the input and `y` is always the reducer - grouping goes through
|
|
59
|
+
* `z`, which a marker fills from its `grouping`.
|
|
60
|
+
*/
|
|
61
|
+
export type BinXTransform = {
|
|
62
|
+
type: 'binX';
|
|
63
|
+
/** The bins' value - a reducer such as `'count'`. */
|
|
64
|
+
y?: BinReducer;
|
|
65
|
+
} & BinXChannels & BinOptions;
|
|
66
|
+
/**
|
|
67
|
+
* `binY` as a marker transform - see {@link BinXTransform}; here `y` is the
|
|
68
|
+
* binned input and `x` is the reducer.
|
|
69
|
+
*/
|
|
70
|
+
export type BinYTransform = {
|
|
71
|
+
type: 'binY';
|
|
72
|
+
/** The bins' value - a reducer such as `'count'`. */
|
|
73
|
+
x?: BinReducer;
|
|
74
|
+
} & BinYChannels & BinOptions;
|
|
75
|
+
/**
|
|
76
|
+
* `bin` as a marker transform: bins on `x` and `y` at once, so each output row
|
|
77
|
+
* is one cell of a 2D grid with its `x1`/`x2`/`y1`/`y2` edges. Its value goes to
|
|
78
|
+
* one of the other channels - `fill: 'count'` colors each cell by its row count,
|
|
79
|
+
* `r: 'count'` sizes a dot by it.
|
|
80
|
+
*/
|
|
81
|
+
export type Bin2DTransform = {
|
|
82
|
+
type: 'bin';
|
|
83
|
+
} & Bin2DChannels & BinOptions;
|
|
84
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The keys of {@link BinXChannels}, at runtime. Typed as a record over the
|
|
3
|
+
* type's own keys, so a key added to or removed from the type fails to compile here.
|
|
4
|
+
*/
|
|
5
|
+
export const BIN_X_CHANNEL_KEYS = {
|
|
6
|
+
data: true,
|
|
7
|
+
x: true,
|
|
8
|
+
z: true,
|
|
9
|
+
insetLeft: true,
|
|
10
|
+
insetRight: true,
|
|
11
|
+
insetTop: true,
|
|
12
|
+
insetBottom: true
|
|
13
|
+
};
|
|
14
|
+
/** The keys of {@link BinYChannels}, at runtime - see {@link BIN_X_CHANNEL_KEYS}. */
|
|
15
|
+
export const BIN_Y_CHANNEL_KEYS = {
|
|
16
|
+
data: true,
|
|
17
|
+
y: true,
|
|
18
|
+
z: true,
|
|
19
|
+
insetLeft: true,
|
|
20
|
+
insetRight: true,
|
|
21
|
+
insetTop: true,
|
|
22
|
+
insetBottom: true
|
|
23
|
+
};
|
|
24
|
+
/** The keys of {@link Bin2DChannels}, at runtime - see {@link BIN_X_CHANNEL_KEYS}. */
|
|
25
|
+
export const BIN_2D_CHANNEL_KEYS = {
|
|
26
|
+
...BIN_X_CHANNEL_KEYS,
|
|
27
|
+
y: true
|
|
28
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { PositionChannels } from './common';
|
|
2
|
+
/** Options both Bollinger transforms take - same names as svelteplot's. */
|
|
3
|
+
type BollingerOptions = {
|
|
4
|
+
/** The moving window's size, in rows; defaults to 20. */
|
|
5
|
+
n?: number;
|
|
6
|
+
/** The band's radius, in standard deviations; defaults to 2. */
|
|
7
|
+
k?: number;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* `bollingerY` as a marker transform: a moving mean of `y` over `n` rows with a
|
|
11
|
+
* band `k` standard deviations around it - the mean as `y`, the band as
|
|
12
|
+
* `y1`/`y2`. A `line` draws the mean, an `area` the band. Runs per `z` group.
|
|
13
|
+
*/
|
|
14
|
+
export type BollingerYTransform = {
|
|
15
|
+
type: 'bollingerY';
|
|
16
|
+
} & PositionChannels & BollingerOptions;
|
|
17
|
+
/** `bollingerX` - see {@link BollingerYTransform}, on `x`. */
|
|
18
|
+
export type BollingerXTransform = {
|
|
19
|
+
type: 'bollingerX';
|
|
20
|
+
} & PositionChannels & BollingerOptions;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { AxisValue } from '../layout/mapping';
|
|
2
|
+
/**
|
|
3
|
+
* A channel a transform reads: a field key, or a per-row function - the same
|
|
4
|
+
* shape every marker's own `x`/`y` takes.
|
|
5
|
+
*/
|
|
6
|
+
export type TransformChannel = string | ((d: any) => AxisValue | unknown);
|
|
7
|
+
/**
|
|
8
|
+
* A reducer a grouping transform (bin, group) runs over each group's rows:
|
|
9
|
+
* svelteplot's own name (`count`, `sum`, `mean`, `p25`, …) or a function of the rows.
|
|
10
|
+
*/
|
|
11
|
+
export type TransformReducer = string | ((group: any[]) => unknown);
|
|
12
|
+
/** The position channels most transforms read, by svelteplot's own names; `z` splits the rows into groups. */
|
|
13
|
+
export type PositionChannels = {
|
|
14
|
+
data?: Record<string, unknown>[];
|
|
15
|
+
x?: TransformChannel;
|
|
16
|
+
y?: TransformChannel;
|
|
17
|
+
x1?: TransformChannel;
|
|
18
|
+
x2?: TransformChannel;
|
|
19
|
+
y1?: TransformChannel;
|
|
20
|
+
y2?: TransformChannel;
|
|
21
|
+
z?: TransformChannel;
|
|
22
|
+
fill?: TransformChannel;
|
|
23
|
+
stroke?: TransformChannel;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* The keys of {@link PositionChannels}, at runtime. Typed as a record over the
|
|
27
|
+
* type's own keys, so a key added to or removed from the type fails to compile here.
|
|
28
|
+
*/
|
|
29
|
+
export declare const POSITION_CHANNEL_KEYS: Record<keyof PositionChannels, true>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The keys of {@link PositionChannels}, at runtime. Typed as a record over the
|
|
3
|
+
* type's own keys, so a key added to or removed from the type fails to compile here.
|
|
4
|
+
*/
|
|
5
|
+
export const POSITION_CHANNEL_KEYS = {
|
|
6
|
+
data: true,
|
|
7
|
+
x: true,
|
|
8
|
+
y: true,
|
|
9
|
+
x1: true,
|
|
10
|
+
x2: true,
|
|
11
|
+
y1: true,
|
|
12
|
+
y2: true,
|
|
13
|
+
z: true,
|
|
14
|
+
fill: true,
|
|
15
|
+
stroke: true
|
|
16
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { TransformChannel } from './common';
|
|
2
|
+
/** Kernel shapes svelteplot's own density transforms support. */
|
|
3
|
+
export type DensityKernel = 'uniform' | 'triangular' | 'epanechnikov' | 'quartic' | 'triweight' | 'gaussian' | 'cosine';
|
|
4
|
+
/** Channels both density transforms read; `weight` gives each row its share of the estimate. */
|
|
5
|
+
type DensityChannels = {
|
|
6
|
+
data?: Record<string, unknown>[];
|
|
7
|
+
x?: TransformChannel;
|
|
8
|
+
y?: TransformChannel;
|
|
9
|
+
z?: TransformChannel;
|
|
10
|
+
fill?: TransformChannel;
|
|
11
|
+
stroke?: TransformChannel;
|
|
12
|
+
weight?: (d: any) => number;
|
|
13
|
+
};
|
|
14
|
+
/** The keys of the density transforms' channels, at runtime. */
|
|
15
|
+
export declare const DENSITY_CHANNEL_KEYS: Record<keyof DensityChannels, true>;
|
|
16
|
+
/** Options both density transforms take, flat next to the channels - same names as svelteplot's. */
|
|
17
|
+
type DensityOptions = {
|
|
18
|
+
/** The kernel's shape, or a kernel function of `u`; defaults to `epanechnikov`. */
|
|
19
|
+
kernel?: DensityKernel | ((u: number) => number);
|
|
20
|
+
/** Kernel bandwidth in data units, or a function of the sorted values; defaults to Silverman's rule. */
|
|
21
|
+
bandwidth?: number | ((values: number[]) => number);
|
|
22
|
+
/** The spacing of the points the estimate is sampled at; defaults to a fifth of the bandwidth. */
|
|
23
|
+
interval?: number | string;
|
|
24
|
+
/** Keeps the curve within the data's own extent, instead of letting it fade out past it. */
|
|
25
|
+
trim?: boolean;
|
|
26
|
+
/** Accumulates the estimate into a CDF: `1` from the start, `-1` from the end. */
|
|
27
|
+
cumulative?: false | 1 | -1;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* `densityX` as a marker transform: a 1D kernel density estimate over the `x`
|
|
31
|
+
* values. Replaces the rows with points along `x`, and their density goes to
|
|
32
|
+
* `y` (or `channel`: `y1`/`y2` for a band). One curve per `z` group.
|
|
33
|
+
*/
|
|
34
|
+
export type DensityXTransform = {
|
|
35
|
+
type: 'densityX';
|
|
36
|
+
/** The channel the density goes to. */
|
|
37
|
+
channel?: 'y' | 'y1' | 'y2';
|
|
38
|
+
} & DensityChannels & DensityOptions;
|
|
39
|
+
/** `densityY` - see {@link DensityXTransform}, estimating over `y` with the density on `x`. */
|
|
40
|
+
export type DensityYTransform = {
|
|
41
|
+
type: 'densityY';
|
|
42
|
+
/** The channel the density goes to. */
|
|
43
|
+
channel?: 'x' | 'x1' | 'x2';
|
|
44
|
+
} & DensityChannels & DensityOptions;
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PositionChannels, TransformChannel } from './common';
|
|
2
|
+
/**
|
|
3
|
+
* `filter` as a marker transform: keeps only the rows `filter` holds for -
|
|
4
|
+
* a per-row test, or a field key whose value is truthy. Unlike filtering the
|
|
5
|
+
* marker's `data` beforehand, it composes with the transforms around it.
|
|
6
|
+
*/
|
|
7
|
+
export type FilterTransform = {
|
|
8
|
+
type: 'filter';
|
|
9
|
+
filter: TransformChannel;
|
|
10
|
+
} & PositionChannels;
|
|
11
|
+
/** The keys `filter` reads as channels: every position channel, and `filter` itself. */
|
|
12
|
+
export declare const FILTER_CHANNEL_KEYS: Record<keyof PositionChannels | 'filter', true>;
|