@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
|
@@ -3,14 +3,15 @@ import { EDITORIAL_THEME } from './editorial';
|
|
|
3
3
|
import { DARK_THEME } from './dark';
|
|
4
4
|
import { COMPACT_THEME } from './compact';
|
|
5
5
|
/**
|
|
6
|
-
* Ready-made theme presets
|
|
7
|
-
* `DEFAULT_CONFIG` by `setConfiguration`. `DEFAULT_CONFIG` itself stays
|
|
8
|
-
* opinion-free
|
|
9
|
-
* are the
|
|
6
|
+
* Ready-made theme presets - partial configs deep-merged over
|
|
7
|
+
* `DEFAULT_CONFIG` by `setConfiguration`. `DEFAULT_CONFIG` itself stays
|
|
8
|
+
* opinion-free (`font: 'inherit'`, `color: 'currentColor'`, …), following the
|
|
9
|
+
* host project's styles; these are the visual identities consumers can opt
|
|
10
|
+
* into, `Default` being the plain one with a system sans-serif font.
|
|
10
11
|
*/
|
|
11
12
|
export const THEMES = {
|
|
12
13
|
Default: DEFAULT_THEME,
|
|
13
14
|
Editorial: EDITORIAL_THEME,
|
|
14
15
|
Dark: DARK_THEME,
|
|
15
|
-
Compact: COMPACT_THEME
|
|
16
|
+
Compact: COMPACT_THEME
|
|
16
17
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,64 +1,50 @@
|
|
|
1
|
+
export { default as AreaPlot } from './plots/area/Plot.svelte';
|
|
1
2
|
export { default as BarPlot } from './plots/bar/Plot.svelte';
|
|
3
|
+
export { default as HistogramPlot } from './plots/histogram/Plot.svelte';
|
|
2
4
|
export { default as HeatmapPlot } from './plots/heatmap/Plot.svelte';
|
|
3
5
|
export { default as LinePlot } from './plots/line/Plot.svelte';
|
|
4
6
|
export { default as PyramidPlot } from './plots/pyramid/Plot.svelte';
|
|
5
7
|
export { default as ScatterPlot } from './plots/scatter/Plot.svelte';
|
|
6
8
|
export { default as GeoPlot } from './plots/geo/Plot.svelte';
|
|
7
|
-
export { default as
|
|
8
|
-
export { default as
|
|
9
|
-
export { default as
|
|
10
|
-
export { default as
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
13
|
-
export { default as ChartContainer } from './charts/container/ChartContainer.svelte';
|
|
14
|
-
export { default as BasePlotLayout } from './layout/plot/BasePlotLayout.svelte';
|
|
15
|
-
export { default as CoordinatesLayout } from './layout/coordinates/CoordinatesLayout.svelte';
|
|
16
|
-
export { default as TileLayer } from './layout/styles/TileLayer.svelte';
|
|
9
|
+
export { default as PlotComposer } from './layout/composer/PlotComposer.svelte';
|
|
10
|
+
export { default as GridCell } from './layout/grid/GridCell.svelte';
|
|
11
|
+
export { default as Plot } from './layout/plot/Plot.svelte';
|
|
12
|
+
export { default as BasePlotLayout } from './layout/base/BasePlotLayout.svelte';
|
|
13
|
+
export { usePlot, useFigure } from './layout/plot/usePlot';
|
|
14
|
+
export type { PublicPlotContext, PublicFigureContext, PublicHover, PublicPlotHover, PublicLegend, PublicTimeline } from './layout/plot/PublicPlotContext';
|
|
17
15
|
export { argentinaBicontinental } from './layout/coordinates/projections/argentina';
|
|
18
|
-
export { default as Timeline } from './layout/timeline/Timeline.svelte';
|
|
19
|
-
export { default as TimelineLayout } from './layout/timeline/TimelineLayout.svelte';
|
|
20
|
-
export { default as FacetLayout } from './layout/facet/FacetLayout.svelte';
|
|
21
|
-
export { default as FacetIndicator } from './layout/facet/FacetIndicator.svelte';
|
|
22
|
-
export { default as LegendLayout } from './layout/legend/LegendLayout.svelte';
|
|
23
|
-
export { default as Tooltip } from './layout/tooltip/Tooltip.svelte';
|
|
24
|
-
export { getLegendInteraction, provideLegendInteraction, createLegendInteraction } from './layout/legend/interaction.svelte';
|
|
25
|
-
export { default as BarMarker } from './markers/BarMarker.svelte';
|
|
26
|
-
export { default as CellMarker } from './markers/CellMarker.svelte';
|
|
27
|
-
export { default as DeltaMarker } from './markers/DeltaMarker.svelte';
|
|
28
|
-
export { default as DotMarker } from './markers/DotMarker.svelte';
|
|
29
|
-
export { default as HoverMarker } from './markers/HoverMarker.svelte';
|
|
30
|
-
export { default as LineMarker } from './markers/LineMarker.svelte';
|
|
31
|
-
export { default as PeakMarker } from './markers/PeakMarker.svelte';
|
|
32
|
-
export { default as RuleMarker } from './markers/RuleMarker.svelte';
|
|
33
|
-
export { default as TextMarker } from './markers/TextMarker.svelte';
|
|
34
16
|
export { setConfiguration, getConfiguration, resetConfiguration, configToCssVars, cssVarsStyle, DEFAULT_CONFIG } from './configuration/config.svelte';
|
|
35
17
|
export { THEMES } from './configuration/themes';
|
|
18
|
+
export { SYSTEM_FONT } from './configuration/fonts';
|
|
36
19
|
export type { ThemeName } from './configuration/themes';
|
|
37
20
|
export { groupBy, buildSeries } from './utils/grouping';
|
|
38
|
-
export { makeColorScale, normalize, resolveCssColor, paletteColor, contrastTextColor, contrastRatio } from './utils/color';
|
|
39
|
-
export {
|
|
40
|
-
export {
|
|
41
|
-
export
|
|
21
|
+
export { makeColorScale, resolveColorScale, normalize, resolveCssColor, paletteColor, contrastTextColor, contrastRatio } from './utils/color';
|
|
22
|
+
export { Margins } from './layout/margins/Margins';
|
|
23
|
+
export { resolveOpacityScale } from './utils/opacity';
|
|
24
|
+
export { resolveSymbolScale } from './utils/symbol';
|
|
25
|
+
export { Statistics } from './phases/statistics/Statistics';
|
|
26
|
+
export type { AxisValue, ChannelValue, ChannelName, AxisChannelName, IndependentChannelName, SizeChannelName, ChannelAccessors } from './types/layout/mapping';
|
|
27
|
+
export type { AxisScale, AxisBasedScalesConfig, ChannelScalesConfig } from './types/layout/scales';
|
|
42
28
|
export type { Accessor, Series, SeriesProps, DataProps } from './types/plots/data/common';
|
|
43
|
-
export type { BasePlotProps,
|
|
44
|
-
export type {
|
|
45
|
-
export type { GapsConfig
|
|
29
|
+
export type { BasePlotProps, PlotCoreProps, PlotChromeProps, FigureBoxProps, SegmentsConfig, ScalesConfig, MarginConfig, TooltipConfig, HoverConfig } from './types/plots/props';
|
|
30
|
+
export type { AxisBasedStylesConfig, GapsAwarePlotStylesConfig, GeoStylesConfig, GeoTileLayerConfig } from './types/layout/styles';
|
|
31
|
+
export type { GapsConfig } from './types/plots/gaps';
|
|
46
32
|
export type { LineSegmentStyle, BarSegmentStyle, CellSegmentStyle, GeoSegmentStyle, ScatterSegmentStyle } from './types/plots/segments/common';
|
|
47
33
|
export type { Range, Area, Segment } from './types/plots/segments/config';
|
|
48
|
-
export type {
|
|
34
|
+
export type { SymbolType } from './types/plots/constants';
|
|
49
35
|
export type { FontStyle, StrokeStyle, DotStyle, AreaStyle } from './types/plots/styling';
|
|
50
|
-
export type { AxisBasedMarkersConfig } from './types/markers/common';
|
|
51
|
-
export type {
|
|
52
|
-
export type
|
|
36
|
+
export type { AxisBasedMarkersConfig, BrushSelection, MarkerCurveName } from './types/markers/common';
|
|
37
|
+
export type { StatisticConfig } from './types/layout/statistics';
|
|
38
|
+
export type * from './types/transforms';
|
|
53
39
|
export type { GeoFeature, GeoJsonInput, GeoDataProps, Topology } from './types/plots/data/geo';
|
|
54
|
-
export type {
|
|
55
|
-
export type {
|
|
56
|
-
export type {
|
|
57
|
-
export type {
|
|
58
|
-
export type {
|
|
59
|
-
export type {
|
|
60
|
-
export type {
|
|
61
|
-
export type {
|
|
62
|
-
export type {
|
|
63
|
-
export type {
|
|
64
|
-
export type {
|
|
40
|
+
export type { GeoCustomProjection, GeoCustomProjectionFactory, GeoScalesConfig, CoordinatesConfig } from './types/layout/coordinates';
|
|
41
|
+
export type { GeoCameraConfig } from './types/plots/camera';
|
|
42
|
+
export type { GeoMarkersConfig } from './types/markers/geo';
|
|
43
|
+
export type { SharedAxisValues } from './types/phases';
|
|
44
|
+
export type { TimeValue, Orientation, TimelineConfig, TimelineType, TimelineCallbacks, PlayerConfig, PlayerControl } from './types/layout/timeline';
|
|
45
|
+
export type { ComposerLayout, ComposerTags, ComposerTimelineConfig, ComposerHoverConfig } from './types/layout/composer';
|
|
46
|
+
export type { GridPlacement, GridInset, GridCellContext, GridCellSnippet } from './types/layout/grid';
|
|
47
|
+
export type { Responsive, FacetConfig, FacetCellContext, FacetIndicatorContext, FacetIndicatorSnippet, FacetNavDirection, FacetNavContext, FacetNavSnippet } from './types/layout/facet';
|
|
48
|
+
export type { LegendSection, DiscreteLegendSection, ContinuousLegendSection, LegendItem, LegendNavDirection, LegendNavContext, LegendNavSnippet, LegendEntry, LegendMark, LegendRange } from './types/layout/legend';
|
|
49
|
+
export type { HoverStrategy, HoverPoint, HoverDisplayPoint } from './types/layout/hover';
|
|
50
|
+
export type { PlotStylesConfig, PlotStylesConfigInput, DividerLineStyle, TextStyle } from './types/configuration/styling';
|
package/dist/index.js
CHANGED
|
@@ -1,47 +1,31 @@
|
|
|
1
1
|
// ── Plots ───────────────────────────────────────────────────────────────────
|
|
2
|
-
//
|
|
2
|
+
// One mark family each, with optional chrome (title, legend, caption),
|
|
3
|
+
// timeline and facets around it.
|
|
4
|
+
export { default as AreaPlot } from './plots/area/Plot.svelte';
|
|
3
5
|
export { default as BarPlot } from './plots/bar/Plot.svelte';
|
|
6
|
+
export { default as HistogramPlot } from './plots/histogram/Plot.svelte';
|
|
4
7
|
export { default as HeatmapPlot } from './plots/heatmap/Plot.svelte';
|
|
5
8
|
export { default as LinePlot } from './plots/line/Plot.svelte';
|
|
6
9
|
export { default as PyramidPlot } from './plots/pyramid/Plot.svelte';
|
|
7
10
|
export { default as ScatterPlot } from './plots/scatter/Plot.svelte';
|
|
8
11
|
export { default as GeoPlot } from './plots/geo/Plot.svelte';
|
|
9
|
-
// ──
|
|
10
|
-
//
|
|
11
|
-
export { default as
|
|
12
|
-
export { default as
|
|
13
|
-
|
|
14
|
-
export { default as
|
|
15
|
-
export { default as
|
|
16
|
-
export {
|
|
17
|
-
//
|
|
18
|
-
export { default as ChartContainer } from './charts/container/ChartContainer.svelte';
|
|
19
|
-
export { default as BasePlotLayout } from './layout/plot/BasePlotLayout.svelte';
|
|
20
|
-
export { default as CoordinatesLayout } from './layout/coordinates/CoordinatesLayout.svelte';
|
|
21
|
-
export { default as TileLayer } from './layout/styles/TileLayer.svelte';
|
|
22
|
-
// Custom geo projections — usable as `scales.projection.type`.
|
|
12
|
+
// ── Composition ─────────────────────────────────────────────────────────────
|
|
13
|
+
// Separate plots combined into one figure, with chrome of its own.
|
|
14
|
+
export { default as PlotComposer } from './layout/composer/PlotComposer.svelte';
|
|
15
|
+
export { default as GridCell } from './layout/grid/GridCell.svelte';
|
|
16
|
+
// The generic plot, to build your own plot kind: wrap it with your kind's core and defaults.
|
|
17
|
+
export { default as Plot } from './layout/plot/Plot.svelte';
|
|
18
|
+
export { default as BasePlotLayout } from './layout/base/BasePlotLayout.svelte';
|
|
19
|
+
export { usePlot, useFigure } from './layout/plot/usePlot';
|
|
20
|
+
// Custom geo projections - usable as `scales.projection.type`.
|
|
23
21
|
export { argentinaBicontinental } from './layout/coordinates/projections/argentina';
|
|
24
|
-
export { default as Timeline } from './layout/timeline/Timeline.svelte';
|
|
25
|
-
export { default as TimelineLayout } from './layout/timeline/TimelineLayout.svelte';
|
|
26
|
-
export { default as FacetLayout } from './layout/facet/FacetLayout.svelte';
|
|
27
|
-
export { default as FacetIndicator } from './layout/facet/FacetIndicator.svelte';
|
|
28
|
-
export { default as LegendLayout } from './layout/legend/LegendLayout.svelte';
|
|
29
|
-
export { default as Tooltip } from './layout/tooltip/Tooltip.svelte';
|
|
30
|
-
export { getLegendInteraction, provideLegendInteraction, createLegendInteraction } from './layout/legend/interaction.svelte';
|
|
31
|
-
// Markers
|
|
32
|
-
export { default as BarMarker } from './markers/BarMarker.svelte';
|
|
33
|
-
export { default as CellMarker } from './markers/CellMarker.svelte';
|
|
34
|
-
export { default as DeltaMarker } from './markers/DeltaMarker.svelte';
|
|
35
|
-
export { default as DotMarker } from './markers/DotMarker.svelte';
|
|
36
|
-
export { default as HoverMarker } from './markers/HoverMarker.svelte';
|
|
37
|
-
export { default as LineMarker } from './markers/LineMarker.svelte';
|
|
38
|
-
export { default as PeakMarker } from './markers/PeakMarker.svelte';
|
|
39
|
-
export { default as RuleMarker } from './markers/RuleMarker.svelte';
|
|
40
|
-
export { default as TextMarker } from './markers/TextMarker.svelte';
|
|
41
22
|
export { setConfiguration, getConfiguration, resetConfiguration, configToCssVars, cssVarsStyle, DEFAULT_CONFIG } from './configuration/config.svelte';
|
|
42
23
|
export { THEMES } from './configuration/themes';
|
|
24
|
+
export { SYSTEM_FONT } from './configuration/fonts';
|
|
43
25
|
// ── Utils ─────────────────────────────────────────────────────────────────────
|
|
44
26
|
export { groupBy, buildSeries } from './utils/grouping';
|
|
45
|
-
export { makeColorScale, normalize, resolveCssColor, paletteColor, contrastTextColor, contrastRatio } from './utils/color';
|
|
46
|
-
export {
|
|
47
|
-
export {
|
|
27
|
+
export { makeColorScale, resolveColorScale, normalize, resolveCssColor, paletteColor, contrastTextColor, contrastRatio } from './utils/color';
|
|
28
|
+
export { Margins } from './layout/margins/Margins';
|
|
29
|
+
export { resolveOpacityScale } from './utils/opacity';
|
|
30
|
+
export { resolveSymbolScale } from './utils/symbol';
|
|
31
|
+
export { Statistics } from './phases/statistics/Statistics';
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
<script module lang="ts">
|
|
2
|
+
import type { Margins as MarginsType } from '../margins/Margins';
|
|
3
|
+
import type { EdgeBox } from '../../types/layout/box';
|
|
4
|
+
import type { StylesLayoutConfig } from '../../types/layout/styles';
|
|
5
|
+
import type { HoverPosition } from '../../types/phases';
|
|
6
|
+
import type { HoverConfig as PlotHoverConfig } from '../../types/plots/props';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* What `BasePlotLayout` draws from: the end of a plot's pipeline. An axis
|
|
10
|
+
* kind's state is one as is; GeoPlot builds its own.
|
|
11
|
+
*/
|
|
12
|
+
export type PlotLayoutState = {
|
|
13
|
+
/** What the pointer can match, and how the hover reads. */
|
|
14
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
15
|
+
hover?: PlotHoverConfig<any>;
|
|
16
|
+
/** Where each row sits, for hover matching and the plot's scales. */
|
|
17
|
+
hoverPosition?: HoverPosition;
|
|
18
|
+
/** The rows the plot draws and hovers over. */
|
|
19
|
+
hoverRows?: unknown[];
|
|
20
|
+
/** The plot's x/y/r/length scales, and the scales a marker without its own inherits. */
|
|
21
|
+
scales?: object;
|
|
22
|
+
/** What the plot's position channels are and which way it runs, for what draws inside it. */
|
|
23
|
+
axes?: PlotAxes;
|
|
24
|
+
/** Every marker the pipeline resolved. */
|
|
25
|
+
markers?: object[];
|
|
26
|
+
/** All resolved series - axis kinds only. */
|
|
27
|
+
resolvedSeries?: object[];
|
|
28
|
+
/** Each series' color, by name - axis kinds only. */
|
|
29
|
+
colorForSeries?: (name: string) => string;
|
|
30
|
+
/** Per-series marker groups - axis kinds only. */
|
|
31
|
+
scopedGroups?: object[];
|
|
32
|
+
/** The plot's `styles`: its frame and, on a map, its tile layer. */
|
|
33
|
+
styles?: StylesLayoutConfig;
|
|
34
|
+
/** What an `'auto'` margin side reads as. Defaults to {@link Margins.AXIS_ESTIMATE}. */
|
|
35
|
+
marginEstimate?: MarginsType;
|
|
36
|
+
/** The plot's value labels, whose `reach` is the room the margins start from. */
|
|
37
|
+
valueLabels?: { reach: EdgeBox[] };
|
|
38
|
+
};
|
|
39
|
+
</script>
|
|
40
|
+
|
|
41
|
+
<script
|
|
42
|
+
lang="ts"
|
|
43
|
+
generics="TData extends Record<string, unknown>, TSeries extends Record<string, unknown> = TData"
|
|
44
|
+
>
|
|
45
|
+
import { Margins } from '../margins/Margins';
|
|
46
|
+
import { PlotMargins } from '../margins/PlotMargins.svelte';
|
|
47
|
+
import { LegendState } from '../legend/LegendState.svelte';
|
|
48
|
+
import { onDestroy, untrack } from 'svelte';
|
|
49
|
+
import type { ComponentProps, Snippet } from 'svelte';
|
|
50
|
+
import { Plot, Pointer, setPlotDefaults } from 'svelteplot';
|
|
51
|
+
import { getConfiguration } from '../../configuration/config.svelte';
|
|
52
|
+
import { buildScale } from '../scales/buildScale';
|
|
53
|
+
import ScalesLayout from '../scales/ScalesLayout.svelte';
|
|
54
|
+
import GeometryLayout from '../geometry/GeometryLayout.svelte';
|
|
55
|
+
import CoordinatesLayout from '../coordinates/CoordinatesLayout.svelte';
|
|
56
|
+
import StylesLayout from '../styles/StylesLayout.svelte';
|
|
57
|
+
import Tooltip from '../tooltip/Tooltip.svelte';
|
|
58
|
+
import { PlotHover } from '../hover/PlotHover.svelte';
|
|
59
|
+
import { PlotContext } from '../plot/PlotContext';
|
|
60
|
+
import { TimelineState } from '../timeline/TimelineState.svelte';
|
|
61
|
+
import type { PlotAxes } from '../../phases/data/PlotAxes';
|
|
62
|
+
import type { AxisBasedScalesConfig } from '../../types/layout/scales';
|
|
63
|
+
import type { AxisValue } from '../../types/layout/mapping';
|
|
64
|
+
import type { CoordinatesConfig, GeoScalesConfig } from '../../types/layout/coordinates';
|
|
65
|
+
import type { ScopedMarkerGroup } from '../../types/layout/geometry';
|
|
66
|
+
import type { HoverPoint } from '../../types/layout/hover';
|
|
67
|
+
import type { MarginConfig, HoverConfig } from '../../types/plots/props';
|
|
68
|
+
import type { MarkerConfig } from '../../types/markers/all';
|
|
69
|
+
import type { Series } from '../../types/plots/data/common';
|
|
70
|
+
import type { GeoFeature } from '../../types/plots/data/geo';
|
|
71
|
+
|
|
72
|
+
type SveltePlotProps = ComponentProps<typeof Plot>;
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Shared frame around every plot kind's svelteplot markup: the svelteplot
|
|
76
|
+
* `<Plot>` with its styles, axes and markers, the pointer and hover/tooltip
|
|
77
|
+
* wiring, and the floating tooltip. `children` draws on top of the markers.
|
|
78
|
+
*/
|
|
79
|
+
let {
|
|
80
|
+
width,
|
|
81
|
+
height,
|
|
82
|
+
state,
|
|
83
|
+
coordinates = undefined,
|
|
84
|
+
margins = $bindable(),
|
|
85
|
+
markers = undefined,
|
|
86
|
+
geoAllFeatures = undefined,
|
|
87
|
+
containerEl = $bindable(undefined),
|
|
88
|
+
children
|
|
89
|
+
}: {
|
|
90
|
+
width: number;
|
|
91
|
+
height: number;
|
|
92
|
+
/**
|
|
93
|
+
* The end of the plot's pipeline: its hover config, the rows it draws and
|
|
94
|
+
* hovers over (fed to svelteplot's `<Pointer>` and to `CoordinatesLayout`
|
|
95
|
+
* for a `domain: 'data'` auto-fit) and where each sits, its scales, its
|
|
96
|
+
* markers, and an axis kind's series and marker groups.
|
|
97
|
+
*/
|
|
98
|
+
state: PlotLayoutState;
|
|
99
|
+
/** This plot kind's coordinate system config - `GeoPlot` only (a projection + pan/zoom). */
|
|
100
|
+
coordinates?: CoordinatesConfig;
|
|
101
|
+
/**
|
|
102
|
+
* The author's margins, over the theme's. Bindable: it receives the
|
|
103
|
+
* margins the plot's labels settled on - see {@link PlotMargins}.
|
|
104
|
+
*/
|
|
105
|
+
margins?: MarginConfig;
|
|
106
|
+
/** Markers drawn after the state's own. */
|
|
107
|
+
markers?: MarkerConfig[];
|
|
108
|
+
/** `GeoPlot`'s own untouched, tagged features, forwarded to `GeometryLayout` - `inset` marker only. */
|
|
109
|
+
geoAllFeatures?: (GeoFeature<Record<string, unknown>> & { __id: string })[];
|
|
110
|
+
/** The wrapper div's own element - bind for a nested layout that needs it for its own gesture handling (e.g. `CoordinatesLayout`'s zoom/rotate). */
|
|
111
|
+
containerEl?: HTMLDivElement;
|
|
112
|
+
/**
|
|
113
|
+
* Draws on top of every marker, given the matched and active hover points,
|
|
114
|
+
* the numeric margins and the hover-match callbacks.
|
|
115
|
+
*/
|
|
116
|
+
children?: Snippet<
|
|
117
|
+
[
|
|
118
|
+
{
|
|
119
|
+
matchedPoints: HoverPoint<TData>[];
|
|
120
|
+
activePoint: HoverPoint<TData> | null;
|
|
121
|
+
impliesCrosshairX: boolean;
|
|
122
|
+
impliesCrosshairY: boolean;
|
|
123
|
+
numericMargins: { top: number; right: number; bottom: number; left: number };
|
|
124
|
+
setHoverMatch: (rows: TData[]) => void;
|
|
125
|
+
clearHoverMatch: () => void;
|
|
126
|
+
}
|
|
127
|
+
]
|
|
128
|
+
>;
|
|
129
|
+
} = $props();
|
|
130
|
+
|
|
131
|
+
const data = $derived((state.hoverRows ?? []) as TData[]);
|
|
132
|
+
const getX = $derived(state.hoverPosition!.x as (d: TData) => AxisValue);
|
|
133
|
+
const getY = $derived(state.hoverPosition!.y as (d: TData) => AxisValue);
|
|
134
|
+
const hover = $derived(state.hover as HoverConfig<TData>);
|
|
135
|
+
const scales = $derived(
|
|
136
|
+
state.scales as (AxisBasedScalesConfig<TData> & GeoScalesConfig) | undefined
|
|
137
|
+
);
|
|
138
|
+
const seriesData = $derived(state.resolvedSeries as Series<TSeries>[] | undefined);
|
|
139
|
+
const scopedGroups = $derived(state.scopedGroups as ScopedMarkerGroup<TSeries>[] | undefined);
|
|
140
|
+
|
|
141
|
+
// What this plot draws, on its figure's legend - its series, their colors and marks.
|
|
142
|
+
const legend = LegendState.current();
|
|
143
|
+
const legendSource = Symbol('plot');
|
|
144
|
+
$effect(() => {
|
|
145
|
+
const entries = LegendState.entriesOf(state as never);
|
|
146
|
+
untrack(() => legend?.register(legendSource, entries));
|
|
147
|
+
});
|
|
148
|
+
onDestroy(() => legend?.unregister(legendSource));
|
|
149
|
+
|
|
150
|
+
// Created once, not `$derived`: this plot's hover.
|
|
151
|
+
const ctrl = new PlotHover<TData>({
|
|
152
|
+
hover: () => hover,
|
|
153
|
+
getX: () => getX,
|
|
154
|
+
getY: () => getY,
|
|
155
|
+
width: () => width,
|
|
156
|
+
height: () => height
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
const cfg = $derived(getConfiguration());
|
|
160
|
+
setPlotDefaults({
|
|
161
|
+
numberFormat: { useGrouping: 'min2', compactDisplay: untrack(() => cfg.axis.compactDisplay) }
|
|
162
|
+
});
|
|
163
|
+
|
|
164
|
+
// Created once: this plot's margins, grown to fit the labels its markers report.
|
|
165
|
+
const plotMargins = new PlotMargins({
|
|
166
|
+
theme: () => cfg.margins,
|
|
167
|
+
author: () => margins,
|
|
168
|
+
estimate: () => state.marginEstimate ?? Margins.AXIS_ESTIMATE,
|
|
169
|
+
reserve: () => state.valueLabels?.reach ?? [],
|
|
170
|
+
size: () => ({ width, height }),
|
|
171
|
+
resetKey: () => state.resolvedSeries,
|
|
172
|
+
scales: () => scales,
|
|
173
|
+
tickFontSize: () => cfg.axis.fontSize,
|
|
174
|
+
settle: (settled) => (margins = settled)
|
|
175
|
+
});
|
|
176
|
+
const numericMargins = $derived(plotMargins.numeric);
|
|
177
|
+
|
|
178
|
+
// What anything drawn inside this plot reads through `usePlot()`.
|
|
179
|
+
PlotContext.provide<TData>({
|
|
180
|
+
hover: ctrl,
|
|
181
|
+
legend,
|
|
182
|
+
timeline: TimelineState.current(),
|
|
183
|
+
margins: plotMargins,
|
|
184
|
+
scales: () => scales,
|
|
185
|
+
axes: () => state.axes,
|
|
186
|
+
data: () => data,
|
|
187
|
+
size: () => ({ width, height })
|
|
188
|
+
});
|
|
189
|
+
|
|
190
|
+
// `buildScale` already left only svelteplot's own scale options.
|
|
191
|
+
const resolvedX = $derived(buildScale(scales?.x, data, getX) as SveltePlotProps['x']);
|
|
192
|
+
const resolvedY = $derived(buildScale(scales?.y, data, getY) as SveltePlotProps['y']);
|
|
193
|
+
/** Threaded straight into svelteplot's own `r` scale option - see `RScaleConfig`'s own doc comment for why this isn't independently resolved like `color`. */
|
|
194
|
+
const resolvedR = $derived(scales?.r as SveltePlotProps['r']);
|
|
195
|
+
/** Threaded straight into svelteplot's own `length` scale option - see `LengthScaleConfig`'s own doc comment. `GeoPlot`-only in practice (see `scales`'s own doc comment), same mechanism as `r`. */
|
|
196
|
+
const resolvedLength = $derived(scales?.length as SveltePlotProps['length']);
|
|
197
|
+
|
|
198
|
+
/** Only ever meaningful for `GeoPlot`. `none` while any interactive gesture (`zoom`/`pan`/`rotate`) is on. */
|
|
199
|
+
const touchAction = $derived(
|
|
200
|
+
(coordinates?.zoom !== false && coordinates?.zoom != null) ||
|
|
201
|
+
coordinates?.pan ||
|
|
202
|
+
coordinates?.rotate
|
|
203
|
+
? 'none'
|
|
204
|
+
: undefined
|
|
205
|
+
);
|
|
206
|
+
|
|
207
|
+
// ── Hover / tooltip ───────────────────────────────────────────────────────
|
|
208
|
+
|
|
209
|
+
/** Declared intent, defaulted - see {@link HoverConfig.pointMatching}. */
|
|
210
|
+
const pointMatchingStrategy = $derived(hover.pointMatching ?? 'nearest');
|
|
211
|
+
|
|
212
|
+
/** The axes svelteplot's `<Pointer>` matches along, per hover strategy. */
|
|
213
|
+
const pointerMatchX = $derived(ctrl.state.strategy === 'y' ? undefined : getX);
|
|
214
|
+
const pointerMatchY = $derived(ctrl.state.strategy === 'x' ? undefined : getY);
|
|
215
|
+
|
|
216
|
+
function onMove(e: PointerEvent) {
|
|
217
|
+
if (hover.exclude?.(e)) {
|
|
218
|
+
ctrl.onLeave();
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
ctrl.onMove(e);
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
const resolvedMarkers = $derived([
|
|
225
|
+
...((state.markers ?? []) as MarkerConfig[]),
|
|
226
|
+
...(markers ?? [])
|
|
227
|
+
]);
|
|
228
|
+
</script>
|
|
229
|
+
|
|
230
|
+
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
|
231
|
+
<div
|
|
232
|
+
class="dct-plot"
|
|
233
|
+
bind:this={containerEl}
|
|
234
|
+
style:color={cfg.axis.color}
|
|
235
|
+
style:touch-action={touchAction}
|
|
236
|
+
onpointermove={hover.active ? onMove : undefined}
|
|
237
|
+
onpointerleave={hover.active ? ctrl.onLeave : undefined}
|
|
238
|
+
>
|
|
239
|
+
<CoordinatesLayout
|
|
240
|
+
{width}
|
|
241
|
+
{height}
|
|
242
|
+
margin={plotMargins.config}
|
|
243
|
+
x={resolvedX}
|
|
244
|
+
y={resolvedY}
|
|
245
|
+
r={resolvedR}
|
|
246
|
+
length={resolvedLength}
|
|
247
|
+
{coordinates}
|
|
248
|
+
locale={cfg.axis.locale}
|
|
249
|
+
{data}
|
|
250
|
+
{containerEl}
|
|
251
|
+
remountKey={plotMargins.remountKey}
|
|
252
|
+
>
|
|
253
|
+
<StylesLayout styles={state.styles} {width} {height} {numericMargins} />
|
|
254
|
+
<!-- Axes for every kind but GeoPlot. -->
|
|
255
|
+
{#if scales !== undefined && coordinates === undefined}
|
|
256
|
+
<ScalesLayout {data} {getX} {getY} {width} {height} {numericMargins} {scales} />
|
|
257
|
+
{/if}
|
|
258
|
+
<GeometryLayout
|
|
259
|
+
markers={resolvedMarkers}
|
|
260
|
+
seriesData={seriesData ?? []}
|
|
261
|
+
scopedGroups={scopedGroups ?? []}
|
|
262
|
+
channelScales={scales}
|
|
263
|
+
{ctrl}
|
|
264
|
+
{width}
|
|
265
|
+
{height}
|
|
266
|
+
{numericMargins}
|
|
267
|
+
{data}
|
|
268
|
+
{geoAllFeatures}
|
|
269
|
+
tooltipAnchorX={hover.tooltip?.anchorX}
|
|
270
|
+
tooltipAnchorY={hover.tooltip?.anchorY}
|
|
271
|
+
/>
|
|
272
|
+
{@render children?.({
|
|
273
|
+
matchedPoints: ctrl.points,
|
|
274
|
+
activePoint: ctrl.activePoint,
|
|
275
|
+
impliesCrosshairX: ctrl.impliesCrosshairX,
|
|
276
|
+
impliesCrosshairY: ctrl.impliesCrosshairY,
|
|
277
|
+
numericMargins,
|
|
278
|
+
setHoverMatch: ctrl.onPointer,
|
|
279
|
+
clearHoverMatch: ctrl.onLeave
|
|
280
|
+
})}
|
|
281
|
+
|
|
282
|
+
{#if hover.active && pointMatchingStrategy === 'nearest'}
|
|
283
|
+
<Pointer
|
|
284
|
+
{data}
|
|
285
|
+
x={pointerMatchX}
|
|
286
|
+
y={pointerMatchY}
|
|
287
|
+
maxDistance={400}
|
|
288
|
+
onupdate={ctrl.onPointer}
|
|
289
|
+
/>
|
|
290
|
+
{/if}
|
|
291
|
+
</CoordinatesLayout>
|
|
292
|
+
|
|
293
|
+
{#if hover.tooltip}
|
|
294
|
+
<Tooltip
|
|
295
|
+
visible={ctrl.showTooltip && ctrl.tooltipPosition != null}
|
|
296
|
+
x={ctrl.tooltipPosition?.x ?? 0}
|
|
297
|
+
y={ctrl.tooltipPosition?.y ?? 0}
|
|
298
|
+
rows={ctrl.matchedRows.map((p) => p.row)}
|
|
299
|
+
format={hover.tooltip.format}
|
|
300
|
+
content={hover.tooltip.content}
|
|
301
|
+
anchorX={hover.tooltip.anchorX}
|
|
302
|
+
anchorY={hover.tooltip.anchorY}
|
|
303
|
+
/>
|
|
304
|
+
{/if}
|
|
305
|
+
</div>
|
|
306
|
+
|
|
307
|
+
<style>
|
|
308
|
+
.dct-plot {
|
|
309
|
+
position: relative;
|
|
310
|
+
line-height: 0;
|
|
311
|
+
}
|
|
312
|
+
</style>
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import type { Margins as MarginsType } from '../margins/Margins';
|
|
2
|
+
import type { EdgeBox } from '../../types/layout/box';
|
|
3
|
+
import type { StylesLayoutConfig } from '../../types/layout/styles';
|
|
4
|
+
import type { HoverPosition } from '../../types/phases';
|
|
5
|
+
import type { HoverConfig as PlotHoverConfig } from '../../types/plots/props';
|
|
6
|
+
/**
|
|
7
|
+
* What `BasePlotLayout` draws from: the end of a plot's pipeline. An axis
|
|
8
|
+
* kind's state is one as is; GeoPlot builds its own.
|
|
9
|
+
*/
|
|
10
|
+
export type PlotLayoutState = {
|
|
11
|
+
/** What the pointer can match, and how the hover reads. */
|
|
12
|
+
hover?: PlotHoverConfig<any>;
|
|
13
|
+
/** Where each row sits, for hover matching and the plot's scales. */
|
|
14
|
+
hoverPosition?: HoverPosition;
|
|
15
|
+
/** The rows the plot draws and hovers over. */
|
|
16
|
+
hoverRows?: unknown[];
|
|
17
|
+
/** The plot's x/y/r/length scales, and the scales a marker without its own inherits. */
|
|
18
|
+
scales?: object;
|
|
19
|
+
/** What the plot's position channels are and which way it runs, for what draws inside it. */
|
|
20
|
+
axes?: PlotAxes;
|
|
21
|
+
/** Every marker the pipeline resolved. */
|
|
22
|
+
markers?: object[];
|
|
23
|
+
/** All resolved series - axis kinds only. */
|
|
24
|
+
resolvedSeries?: object[];
|
|
25
|
+
/** Each series' color, by name - axis kinds only. */
|
|
26
|
+
colorForSeries?: (name: string) => string;
|
|
27
|
+
/** Per-series marker groups - axis kinds only. */
|
|
28
|
+
scopedGroups?: object[];
|
|
29
|
+
/** The plot's `styles`: its frame and, on a map, its tile layer. */
|
|
30
|
+
styles?: StylesLayoutConfig;
|
|
31
|
+
/** What an `'auto'` margin side reads as. Defaults to {@link Margins.AXIS_ESTIMATE}. */
|
|
32
|
+
marginEstimate?: MarginsType;
|
|
33
|
+
/** The plot's value labels, whose `reach` is the room the margins start from. */
|
|
34
|
+
valueLabels?: {
|
|
35
|
+
reach: EdgeBox[];
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
import type { Snippet } from 'svelte';
|
|
39
|
+
import type { PlotAxes } from '../../phases/data/PlotAxes';
|
|
40
|
+
import type { CoordinatesConfig } from '../../types/layout/coordinates';
|
|
41
|
+
import type { HoverPoint } from '../../types/layout/hover';
|
|
42
|
+
import type { MarginConfig } from '../../types/plots/props';
|
|
43
|
+
import type { MarkerConfig } from '../../types/markers/all';
|
|
44
|
+
import type { GeoFeature } from '../../types/plots/data/geo';
|
|
45
|
+
declare function $$render<TData extends Record<string, unknown>, TSeries extends Record<string, unknown> = TData>(): {
|
|
46
|
+
props: {
|
|
47
|
+
width: number;
|
|
48
|
+
height: number;
|
|
49
|
+
/**
|
|
50
|
+
* The end of the plot's pipeline: its hover config, the rows it draws and
|
|
51
|
+
* hovers over (fed to svelteplot's `<Pointer>` and to `CoordinatesLayout`
|
|
52
|
+
* for a `domain: 'data'` auto-fit) and where each sits, its scales, its
|
|
53
|
+
* markers, and an axis kind's series and marker groups.
|
|
54
|
+
*/
|
|
55
|
+
state: PlotLayoutState;
|
|
56
|
+
/** This plot kind's coordinate system config - `GeoPlot` only (a projection + pan/zoom). */
|
|
57
|
+
coordinates?: CoordinatesConfig;
|
|
58
|
+
/**
|
|
59
|
+
* The author's margins, over the theme's. Bindable: it receives the
|
|
60
|
+
* margins the plot's labels settled on - see {@link PlotMargins}.
|
|
61
|
+
*/
|
|
62
|
+
margins?: MarginConfig;
|
|
63
|
+
/** Markers drawn after the state's own. */
|
|
64
|
+
markers?: MarkerConfig[];
|
|
65
|
+
/** `GeoPlot`'s own untouched, tagged features, forwarded to `GeometryLayout` - `inset` marker only. */
|
|
66
|
+
geoAllFeatures?: (GeoFeature<Record<string, unknown>> & {
|
|
67
|
+
__id: string;
|
|
68
|
+
})[];
|
|
69
|
+
/** The wrapper div's own element - bind for a nested layout that needs it for its own gesture handling (e.g. `CoordinatesLayout`'s zoom/rotate). */
|
|
70
|
+
containerEl?: HTMLDivElement;
|
|
71
|
+
/**
|
|
72
|
+
* Draws on top of every marker, given the matched and active hover points,
|
|
73
|
+
* the numeric margins and the hover-match callbacks.
|
|
74
|
+
*/
|
|
75
|
+
children?: Snippet<[{
|
|
76
|
+
matchedPoints: HoverPoint<TData>[];
|
|
77
|
+
activePoint: HoverPoint<TData> | null;
|
|
78
|
+
impliesCrosshairX: boolean;
|
|
79
|
+
impliesCrosshairY: boolean;
|
|
80
|
+
numericMargins: {
|
|
81
|
+
top: number;
|
|
82
|
+
right: number;
|
|
83
|
+
bottom: number;
|
|
84
|
+
left: number;
|
|
85
|
+
};
|
|
86
|
+
setHoverMatch: (rows: TData[]) => void;
|
|
87
|
+
clearHoverMatch: () => void;
|
|
88
|
+
}]>;
|
|
89
|
+
};
|
|
90
|
+
exports: {};
|
|
91
|
+
bindings: "margins" | "containerEl";
|
|
92
|
+
slots: {};
|
|
93
|
+
events: {};
|
|
94
|
+
};
|
|
95
|
+
declare class __sveltets_Render<TData extends Record<string, unknown>, TSeries extends Record<string, unknown> = TData> {
|
|
96
|
+
props(): ReturnType<typeof $$render<TData, TSeries>>['props'];
|
|
97
|
+
events(): ReturnType<typeof $$render<TData, TSeries>>['events'];
|
|
98
|
+
slots(): ReturnType<typeof $$render<TData, TSeries>>['slots'];
|
|
99
|
+
bindings(): "margins" | "containerEl";
|
|
100
|
+
exports(): {};
|
|
101
|
+
}
|
|
102
|
+
interface $$IsomorphicComponent {
|
|
103
|
+
new <TData extends Record<string, unknown>, TSeries extends Record<string, unknown> = TData>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TData, TSeries>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TData, TSeries>['props']>, ReturnType<__sveltets_Render<TData, TSeries>['events']>, ReturnType<__sveltets_Render<TData, TSeries>['slots']>> & {
|
|
104
|
+
$$bindings?: ReturnType<__sveltets_Render<TData, TSeries>['bindings']>;
|
|
105
|
+
} & ReturnType<__sveltets_Render<TData, TSeries>['exports']>;
|
|
106
|
+
<TData extends Record<string, unknown>, TSeries extends Record<string, unknown> = TData>(internal: unknown, props: ReturnType<__sveltets_Render<TData, TSeries>['props']> & {}): ReturnType<__sveltets_Render<TData, TSeries>['exports']>;
|
|
107
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any, any>['bindings']>;
|
|
108
|
+
}
|
|
109
|
+
declare const BasePlotLayout: $$IsomorphicComponent;
|
|
110
|
+
type BasePlotLayout<TData extends Record<string, unknown>, TSeries extends Record<string, unknown> = TData> = InstanceType<typeof BasePlotLayout<TData, TSeries>>;
|
|
111
|
+
export default BasePlotLayout;
|