@fundar/data-chart-telling 0.0.63 → 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 -558
- package/dist/configuration/config.svelte.d.ts +5 -5
- package/dist/configuration/config.svelte.js +133 -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 +433 -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 +365 -335
- 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 +39 -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 +158 -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 +258 -54
- 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,4 +1,6 @@
|
|
|
1
1
|
import type { StrokeStyle, DotStyle, FontStyle, AreaStyle } from '../plots/styling';
|
|
2
|
+
import type { SymbolType } from '../plots/constants';
|
|
3
|
+
import type { PlotChromeEntry } from '../plots/props';
|
|
2
4
|
export type TextStyle = {
|
|
3
5
|
/** font-family */
|
|
4
6
|
font: string;
|
|
@@ -13,17 +15,34 @@ export type TextStyle = {
|
|
|
13
15
|
/** letter-spacing */
|
|
14
16
|
spacing: string;
|
|
15
17
|
};
|
|
16
|
-
|
|
18
|
+
/** How a chrome divider's line is drawn, as a CSS border style. */
|
|
19
|
+
export type DividerLineStyle = 'solid' | 'dashed' | 'dotted' | 'double';
|
|
20
|
+
export type PlotStylesConfig = {
|
|
17
21
|
font: string;
|
|
18
22
|
color: string;
|
|
19
23
|
background: string;
|
|
20
|
-
border: string;
|
|
21
24
|
spacing: {
|
|
22
25
|
headerPadding: string;
|
|
23
26
|
legendPadding: string;
|
|
24
27
|
captionPadding: string;
|
|
25
28
|
bleed: string;
|
|
26
29
|
};
|
|
30
|
+
/** The line every `'divider'` in a plot's chrome `order` draws. */
|
|
31
|
+
divider: {
|
|
32
|
+
color: string;
|
|
33
|
+
/** Line thickness, e.g. `'1px'`. */
|
|
34
|
+
width: string;
|
|
35
|
+
style: DividerLineStyle;
|
|
36
|
+
/** Space around the line, as a CSS `margin`. */
|
|
37
|
+
margin: string;
|
|
38
|
+
};
|
|
39
|
+
/** What a plot's or composer's chrome draws around it. */
|
|
40
|
+
chrome: {
|
|
41
|
+
/** The blocks, top to bottom, when a figure doesn't set its own `order` - see {@link PlotChromeEntry}. */
|
|
42
|
+
order: PlotChromeEntry[];
|
|
43
|
+
/** The space between the blocks of a row of the chrome, as a CSS length. */
|
|
44
|
+
rowGap: string;
|
|
45
|
+
};
|
|
27
46
|
title: TextStyle;
|
|
28
47
|
subtitle: TextStyle;
|
|
29
48
|
caption: TextStyle;
|
|
@@ -40,6 +59,25 @@ export type ChartConfig = {
|
|
|
40
59
|
swatchSize: string;
|
|
41
60
|
/** Fallback opacity for a legend-disabled series/value when a section doesn't set its own style. */
|
|
42
61
|
disabledOpacity: number;
|
|
62
|
+
/**
|
|
63
|
+
* Whether names read off the data show as words (`gdp_per_capita` as
|
|
64
|
+
* "Gdp per capita"): an item with no `label`, and the titles the
|
|
65
|
+
* automatic legend takes from field names. Display only - toggling
|
|
66
|
+
* still goes by the name itself.
|
|
67
|
+
*/
|
|
68
|
+
pretty: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* The automatic legend's series section, titled `text` once the legend
|
|
71
|
+
* shows other sections too - a size or shape scale, or sections it adds.
|
|
72
|
+
*/
|
|
73
|
+
seriesTitle: {
|
|
74
|
+
enabled: boolean;
|
|
75
|
+
text: string;
|
|
76
|
+
};
|
|
77
|
+
/** A size section: `gap` is the room between its dots (CSS length). */
|
|
78
|
+
sizeScale: {
|
|
79
|
+
gap: string;
|
|
80
|
+
};
|
|
43
81
|
/** Prev/next arrows shown when a `layout: { type: 'horizontal' }` discrete section overflows `maxRows`. */
|
|
44
82
|
navButton: {
|
|
45
83
|
background: string;
|
|
@@ -50,6 +88,12 @@ export type ChartConfig = {
|
|
|
50
88
|
};
|
|
51
89
|
/** Continuous section styling: the draggable lo/hi handles and the tick/edge labels. */
|
|
52
90
|
continuous: {
|
|
91
|
+
/** Total height (px) of the bar's drawing area. */
|
|
92
|
+
height: number;
|
|
93
|
+
/** Height (px) of the gradient bar itself, centered within `height`. */
|
|
94
|
+
barHeight: number;
|
|
95
|
+
/** Corner radius (px) of the gradient bar and excluded-range overlays. */
|
|
96
|
+
barRadius: number;
|
|
53
97
|
/** The draggable lo/hi handle. */
|
|
54
98
|
handle: {
|
|
55
99
|
width: string;
|
|
@@ -78,7 +122,7 @@ export type ChartConfig = {
|
|
|
78
122
|
enabled: boolean;
|
|
79
123
|
/** How many px of horizontal slack the two labels need between them before they're considered overlapping (and flipped). */
|
|
80
124
|
margin: number;
|
|
81
|
-
/** Rotation magnitude applied once overlapping
|
|
125
|
+
/** Rotation magnitude applied once overlapping - lo rotates by this amount, hi by its negation, so both still grow inward toward the bar instead of off its edges. */
|
|
82
126
|
rotate: string;
|
|
83
127
|
};
|
|
84
128
|
};
|
|
@@ -95,6 +139,7 @@ export type ChartConfig = {
|
|
|
95
139
|
yTickPadding: number;
|
|
96
140
|
grid: boolean;
|
|
97
141
|
locale: string;
|
|
142
|
+
/** Compact units abbreviated (`'short'`, the default: `1 M`) or spelled out (`'long'`: `1 millón`). Axes and size legends. */
|
|
98
143
|
compactDisplay: 'short' | 'long';
|
|
99
144
|
};
|
|
100
145
|
tooltip: {
|
|
@@ -107,8 +152,8 @@ export type ChartConfig = {
|
|
|
107
152
|
};
|
|
108
153
|
/**
|
|
109
154
|
* Per-side plot margin. `'auto'` (the default) lets svelteplot size that
|
|
110
|
-
* side to fit whatever it actually renders there
|
|
111
|
-
* title, rotated ticks
|
|
155
|
+
* side to fit whatever it actually renders there - tick labels, an axis
|
|
156
|
+
* title, rotated ticks - instead of clipping content or leaving unused
|
|
112
157
|
* space. A number pins that side exactly, opting out of auto-sizing.
|
|
113
158
|
*/
|
|
114
159
|
margins: {
|
|
@@ -117,20 +162,33 @@ export type ChartConfig = {
|
|
|
117
162
|
bottom: number | 'auto';
|
|
118
163
|
left: number | 'auto';
|
|
119
164
|
};
|
|
165
|
+
/** Marker clipping to the plot's inner frame (see `FrameClip`). */
|
|
166
|
+
frameClip: {
|
|
167
|
+
/**
|
|
168
|
+
* How far (px) a clipped mark may reach past the frame before it's cut,
|
|
169
|
+
* so strokes and labels on the edge aren't shaved off. A number sets all
|
|
170
|
+
* four sides; a string takes CSS shorthand px values for 1-4 sides, e.g.
|
|
171
|
+
* `'4px'`, `'4px 8px'`, `'0 8px 4px'`, `'0 8px 4px 2px'`.
|
|
172
|
+
*/
|
|
173
|
+
tolerance: number | string;
|
|
174
|
+
};
|
|
120
175
|
/** Discrete categorical palette (grouped series). */
|
|
121
176
|
palette: string[];
|
|
122
|
-
/**
|
|
177
|
+
/** Default shape cycle for the `symbol` channel, in order. */
|
|
178
|
+
symbols: SymbolType[];
|
|
179
|
+
/** Continuous gradient endpoints + on-cell label colour, plus the default opacity-channel range. */
|
|
123
180
|
continuous: {
|
|
124
181
|
min: string;
|
|
125
182
|
max: string;
|
|
126
183
|
labelColor: string;
|
|
184
|
+
opacityRange: [number, number];
|
|
127
185
|
};
|
|
128
186
|
/** Default line geometry. */
|
|
129
187
|
line: {
|
|
130
188
|
strokeWidth: number;
|
|
131
189
|
dotRadius: number;
|
|
132
190
|
/**
|
|
133
|
-
* Default gap-fill bridge styling (`LinePlot`'s `styles.gaps`)
|
|
191
|
+
* Default gap-fill bridge styling (`LinePlot`'s `styles.gaps`) - the
|
|
134
192
|
* fallback merged under whatever a gap zone's own `style` sets, the
|
|
135
193
|
* same way `hover.rule`/`hover.dot` back every hover marker's style.
|
|
136
194
|
*/
|
|
@@ -138,40 +196,49 @@ export type ChartConfig = {
|
|
|
138
196
|
stroke: StrokeStyle;
|
|
139
197
|
dots: DotStyle;
|
|
140
198
|
};
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
/** Shortest lane's distance (px) from the data point before a leader line bends. */
|
|
199
|
+
};
|
|
200
|
+
/** Default text-marker behavior. */
|
|
201
|
+
text: {
|
|
202
|
+
/** Geometry and connector of a decluttered text marker (`declutter`) - e.g. LinePlot's end-of-line value labels. */
|
|
203
|
+
declutter: {
|
|
204
|
+
/** Shortest lane's distance (px) from the point before a connector bends. */
|
|
148
205
|
elbowGap: number;
|
|
149
|
-
/** Extra distance (px) each
|
|
206
|
+
/** Extra distance (px) each further lane sits out from the last. */
|
|
150
207
|
laneStep: number;
|
|
151
|
-
/** Clearance (px) between the outermost lane and the label text
|
|
208
|
+
/** Clearance (px) between the outermost lane and the label text. */
|
|
152
209
|
labelGap: number;
|
|
153
|
-
/** Default
|
|
154
|
-
|
|
155
|
-
/** Default leader-line width — overridable per-plot via `styles.values.strokeStyle`. */
|
|
156
|
-
connectorWidth: number;
|
|
210
|
+
/** Default connector stroke. */
|
|
211
|
+
connector: StrokeStyle;
|
|
157
212
|
};
|
|
158
213
|
};
|
|
159
214
|
/** Default bar-mark styling. */
|
|
160
215
|
bar: {
|
|
161
|
-
/** Default gap-fill styling (`BarPlot`'s `styles.gaps`)
|
|
216
|
+
/** Default gap-fill styling (`BarPlot`'s `styles.gaps`) - the fallback merged under whatever a gap zone's own `style` sets. */
|
|
162
217
|
gap: AreaStyle;
|
|
163
|
-
/**
|
|
218
|
+
/** Gap (0-1) between the bars of side-by-side series within one category, as a fraction of each bar's slice. */
|
|
164
219
|
seriesPadding: number;
|
|
165
|
-
/** Fallback gap (0
|
|
220
|
+
/** Fallback gap (0-1) *between* category groups on BarPlot's own category axis, when a plot doesn't set its own `scales.x/y.paddingInner`. */
|
|
166
221
|
paddingInner: number;
|
|
167
|
-
/** Fallback gap (0
|
|
222
|
+
/** Fallback gap (0-1) before the first and after the last category group on BarPlot's own category axis, when a plot doesn't set its own `scales.x/y.paddingOuter`. */
|
|
168
223
|
paddingOuter: number;
|
|
169
224
|
};
|
|
170
225
|
/** Default pyramid-bar styling. */
|
|
171
226
|
pyramid: {
|
|
172
|
-
/** Default gap-fill styling (`PyramidPlot`'s `styles.gaps`)
|
|
227
|
+
/** Default gap-fill styling (`PyramidPlot`'s `styles.gaps`) - the fallback merged under whatever a gap zone's own `style` sets. */
|
|
173
228
|
gap: AreaStyle;
|
|
174
229
|
};
|
|
230
|
+
/** Default area-plot styling. */
|
|
231
|
+
area: {
|
|
232
|
+
/** Fill opacity of every area marker that sets none of its own. */
|
|
233
|
+
fillOpacity: number;
|
|
234
|
+
};
|
|
235
|
+
/** Default histogram styling. */
|
|
236
|
+
histogram: {
|
|
237
|
+
/** Pixels taken off each side of every bar, so neighbouring bars leave a gap of twice this. */
|
|
238
|
+
inset: number;
|
|
239
|
+
/** Fill opacity of every bar, so a grouped histogram's bars behind another group's still show. */
|
|
240
|
+
fillOpacity: number;
|
|
241
|
+
};
|
|
175
242
|
/** Default scatter point geometry. */
|
|
176
243
|
scatter: {
|
|
177
244
|
dotRadius: number;
|
|
@@ -181,10 +248,74 @@ export type ChartConfig = {
|
|
|
181
248
|
axisColor: string;
|
|
182
249
|
activeColor: string;
|
|
183
250
|
thickness: number;
|
|
251
|
+
/** Space between a plot (or a composition's panels) and its timeline, as a CSS length. */
|
|
252
|
+
gap: string;
|
|
253
|
+
/** The `'rule'` timeline beside a plot: a line with its steps written along it. */
|
|
254
|
+
rule: {
|
|
255
|
+
/** Font size of the steps, in px. */
|
|
256
|
+
fontSize: number;
|
|
257
|
+
/** Font size of the current step, in px. */
|
|
258
|
+
activeFontSize: number;
|
|
259
|
+
activeFontWeight: number | string;
|
|
260
|
+
/** Opacity of the steps other than the current one. */
|
|
261
|
+
labelOpacity: number;
|
|
262
|
+
/** Width of the line, in px. */
|
|
263
|
+
axisWidth: number;
|
|
264
|
+
axisOpacity: number;
|
|
265
|
+
};
|
|
266
|
+
/** The `'player'` timeline: a bar in the chrome with play, the current step, a slider and more. */
|
|
267
|
+
player: {
|
|
268
|
+
/** The controls it draws, in order, unless a timeline sets its own `player.controls`. */
|
|
269
|
+
controls: ('play' | 'value' | 'slider' | 'speed' | 'loop')[];
|
|
270
|
+
/** The speeds its speed control cycles through, as multiples of `stepDuration`. */
|
|
271
|
+
speeds: number[];
|
|
272
|
+
/** Milliseconds each step lasts at speed `1`. */
|
|
273
|
+
stepDuration: number;
|
|
274
|
+
background: string;
|
|
275
|
+
color: string;
|
|
276
|
+
/** CSS length. */
|
|
277
|
+
radius: string;
|
|
278
|
+
padding: string;
|
|
279
|
+
gap: string;
|
|
280
|
+
fontSize: string;
|
|
281
|
+
fontWeight: number | string;
|
|
282
|
+
/** Width reserved for the current step's text, so the slider doesn't shift as it changes. */
|
|
283
|
+
valueWidth: string;
|
|
284
|
+
/** The play and pause button. */
|
|
285
|
+
button: {
|
|
286
|
+
size: string;
|
|
287
|
+
background: string;
|
|
288
|
+
color: string;
|
|
289
|
+
hoverBackground: string;
|
|
290
|
+
radius: string;
|
|
291
|
+
};
|
|
292
|
+
/** The slider's line. */
|
|
293
|
+
track: {
|
|
294
|
+
height: string;
|
|
295
|
+
color: string;
|
|
296
|
+
fillColor: string;
|
|
297
|
+
radius: string;
|
|
298
|
+
};
|
|
299
|
+
/** The slider's handle. */
|
|
300
|
+
thumb: {
|
|
301
|
+
size: string;
|
|
302
|
+
color: string;
|
|
303
|
+
};
|
|
304
|
+
/** The speed and loop buttons. */
|
|
305
|
+
toggle: {
|
|
306
|
+
background: string;
|
|
307
|
+
color: string;
|
|
308
|
+
activeBackground: string;
|
|
309
|
+
activeColor: string;
|
|
310
|
+
radius: string;
|
|
311
|
+
fontSize: string;
|
|
312
|
+
padding: string;
|
|
313
|
+
};
|
|
314
|
+
};
|
|
184
315
|
};
|
|
185
316
|
/**
|
|
186
317
|
* In-SVG hover highlight: crosshair rule, dot + value label, and the area
|
|
187
|
-
* highlight
|
|
318
|
+
* highlight - a restyled feature on `GeoPlot`, or an `areaX`/`areaY` band
|
|
188
319
|
* on an axis-based plot's band scale.
|
|
189
320
|
*/
|
|
190
321
|
hover: {
|
|
@@ -214,7 +345,7 @@ export type ChartConfig = {
|
|
|
214
345
|
};
|
|
215
346
|
};
|
|
216
347
|
/** Deep-partial input accepted by `setConfiguration`. */
|
|
217
|
-
export type
|
|
348
|
+
export type PlotStylesConfigInput = DeepPartial<PlotStylesConfig>;
|
|
218
349
|
type DeepPartial<T> = {
|
|
219
350
|
[K in keyof T]?: T[K] extends (infer U)[] ? U[] : T[K] extends object ? DeepPartial<T[K]> : T[K];
|
|
220
351
|
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Box } from '../../layout/margins/Box';
|
|
2
|
+
import type { MarginSide } from '../plots/props';
|
|
3
|
+
/** Where a box sits along one axis, next to a point: before it, centred on it, or after it. */
|
|
4
|
+
export type BoxAnchor = 'before' | 'middle' | 'after';
|
|
5
|
+
/** A {@link BoxAnchor} per axis. */
|
|
6
|
+
export type BoxAnchors = {
|
|
7
|
+
x: BoxAnchor;
|
|
8
|
+
y: BoxAnchor;
|
|
9
|
+
};
|
|
10
|
+
/** Where a box goes next to a point: the side it ends up on, per axis, and its offset from the point. */
|
|
11
|
+
export type BoxFlip = {
|
|
12
|
+
anchor: BoxAnchors;
|
|
13
|
+
dx: number;
|
|
14
|
+
dy: number;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* A box placed around a point (its origin), and the plot edges that point
|
|
18
|
+
* can sit on: how far the box reaches past each of those edges is room the
|
|
19
|
+
* plot's margins keep for it - see `PlotMargins`.
|
|
20
|
+
*/
|
|
21
|
+
export type EdgeBox = {
|
|
22
|
+
box: Box;
|
|
23
|
+
edges: MarginSide[];
|
|
24
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { HoverStrategy } from './hover';
|
|
2
|
+
import type { Orientation, PlayerConfig, TimeValue, TimelineCallbacks, TimelineType } from './timeline';
|
|
3
|
+
/**
|
|
4
|
+
* How a `PlotComposer` arranges its panels: `areas` names the grid cells
|
|
5
|
+
* (one string per row, `.` for empty), else panels flow into `columns`;
|
|
6
|
+
* `widths`/`heights` are relative track sizes. `align` lines up every
|
|
7
|
+
* panel's plot area with its row and column, like facets do - for panels
|
|
8
|
+
* whose plots draw no chrome of their own.
|
|
9
|
+
*/
|
|
10
|
+
export type ComposerLayout = {
|
|
11
|
+
areas?: string[];
|
|
12
|
+
columns?: number;
|
|
13
|
+
widths?: number[];
|
|
14
|
+
heights?: number[];
|
|
15
|
+
gap?: number;
|
|
16
|
+
align?: boolean;
|
|
17
|
+
};
|
|
18
|
+
/** Labels a composer stamps on its panels in order: `'A'` (A, B, C…), `'a'`, `'1'`, `'I'` (roman), or an explicit list. */
|
|
19
|
+
export type ComposerTags = 'A' | 'a' | '1' | 'I' | 'i' | string[];
|
|
20
|
+
/** One timeline for every panel: plots with a `timeline` follow its `progress` over `values`. */
|
|
21
|
+
export type ComposerTimelineConfig = TimelineCallbacks & {
|
|
22
|
+
progress?: number;
|
|
23
|
+
values: TimeValue[];
|
|
24
|
+
/** How it draws. Defaults to `'player'`. */
|
|
25
|
+
type?: TimelineType;
|
|
26
|
+
/** The player bar's own options, when `type` is `'player'`. */
|
|
27
|
+
player?: PlayerConfig;
|
|
28
|
+
orientation?: Orientation;
|
|
29
|
+
show?: boolean;
|
|
30
|
+
thickness?: number;
|
|
31
|
+
};
|
|
32
|
+
/** Hover shared by every panel: `sync` broadcasts one panel's hover to the others. */
|
|
33
|
+
export type ComposerHoverConfig = {
|
|
34
|
+
strategy?: HoverStrategy;
|
|
35
|
+
sync?: boolean;
|
|
36
|
+
};
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import type { GeoProjection } from 'd3-geo';
|
|
2
2
|
import type { GeoCameraConfig } from '../plots/camera';
|
|
3
|
+
import type { ChannelScalesConfig, LengthScaleConfig } from './scales';
|
|
3
4
|
/**
|
|
4
5
|
* The projection names svelteplot's `<Plot projection>` accepts as a string
|
|
5
|
-
* (svelteplot itself doesn't export this as a type
|
|
6
|
+
* (svelteplot itself doesn't export this as a type - defined here so authors
|
|
6
7
|
* get autocomplete/type-checking over the full supported set).
|
|
7
8
|
*/
|
|
8
9
|
export type GeoProjectionName = 'albers-usa' | 'albers' | 'azimuthal-equal-area' | 'azimuthal-equidistant' | 'conic-conformal' | 'conic-equal-area' | 'conic-equidistant' | 'equal-earth' | 'equirectangular' | 'gnomonic' | 'identity' | 'reflect-y' | 'mercator' | 'orthographic' | 'stereographic' | 'transverse-mercator';
|
|
9
10
|
/**
|
|
10
11
|
* What a custom projection factory (e.g. `argentinaBicontinental` under
|
|
11
|
-
* `$lib`'s geo projections) must return
|
|
12
|
+
* `$lib`'s geo projections) must return - just enough of d3's `GeoProjection`
|
|
12
13
|
* for svelteplot to stream marks through it and invert pointer coordinates
|
|
13
14
|
* back to lon/lat. Deliberately narrower than importing `GeoProjection`
|
|
14
15
|
* itself, since a hand-tuned custom projection may not implement its full
|
|
@@ -37,24 +38,23 @@ export type GeoProjectionConfig = GeoProjectionName | {
|
|
|
37
38
|
* instead of the projection's own default (whole-world-sized) framing,
|
|
38
39
|
* regardless of which named projection is active. Also what makes
|
|
39
40
|
* `'identity'`/`'reflect-y'` (which otherwise have no scale/translate of
|
|
40
|
-
* their own
|
|
41
|
+
* their own - they pass lon/lat through as-is) size themselves to fill
|
|
41
42
|
* the plot. Pass `'data'` to fit to whatever was already given to the
|
|
42
43
|
* plot's own `data` prop, instead of repeating it here.
|
|
43
44
|
*/
|
|
44
45
|
domain?: GeoJSON.GeoJsonObject | GeoJSON.FeatureCollection | GeoJSON.Feature | 'data';
|
|
45
46
|
};
|
|
46
47
|
/**
|
|
47
|
-
* `scales` prop for GeoPlot
|
|
48
|
-
*
|
|
49
|
-
*
|
|
48
|
+
* `scales` prop for GeoPlot - the geo analog of `AxisBasedScalesConfig`. A
|
|
49
|
+
* map has no x/y axis pair (the coordinate system is `coordinates.projection`),
|
|
50
|
+
* so this carries the channels in {@link ChannelScalesConfig} plus `length` -
|
|
51
|
+
* GeoPlot's own plot-wide-only channel (a `vector` marker's magnitude),
|
|
52
|
+
* the geo analog of `AxisBasedScalesConfig.r`.
|
|
50
53
|
*/
|
|
51
|
-
export type GeoScalesConfig = {
|
|
52
|
-
|
|
53
|
-
color?: {
|
|
54
|
-
domain?: [number, number];
|
|
55
|
-
};
|
|
54
|
+
export type GeoScalesConfig = ChannelScalesConfig & {
|
|
55
|
+
length?: LengthScaleConfig;
|
|
56
56
|
};
|
|
57
|
-
/** Wheel/pinch scale gesture only
|
|
57
|
+
/** Wheel/pinch scale gesture only - see `CoordinatesConfig.pan` for drag-to-translate, and `.rotate` for drag-to-spin-the-globe. */
|
|
58
58
|
export type GeoZoomConfig = {
|
|
59
59
|
min?: number;
|
|
60
60
|
max?: number;
|
|
@@ -65,7 +65,7 @@ export type GeoZoomConfig = {
|
|
|
65
65
|
};
|
|
66
66
|
};
|
|
67
67
|
/**
|
|
68
|
-
* `coordinates` prop for GeoPlot
|
|
68
|
+
* `coordinates` prop for GeoPlot - bundles the projection, interactive
|
|
69
69
|
* gestures, and the declarative `camera`, resolved by `CoordinatesLayout`.
|
|
70
70
|
*/
|
|
71
71
|
export type CoordinatesConfig = {
|
|
@@ -77,6 +77,6 @@ export type CoordinatesConfig = {
|
|
|
77
77
|
pan?: boolean;
|
|
78
78
|
/** `true` enables drag-to-rotate on `orthographic` (claims the drag gesture from `pan`). */
|
|
79
79
|
rotate?: boolean;
|
|
80
|
-
/** `GeoPlot`'s own declarative "current viewpoint"
|
|
80
|
+
/** `GeoPlot`'s own declarative "current viewpoint" - frame/zoom/anchor on a target, animated on change. See `GeoCameraConfig`. */
|
|
81
81
|
camera?: GeoCameraConfig;
|
|
82
82
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Snippet } from 'svelte';
|
|
2
2
|
import type { Accessor } from '../plots/data/common';
|
|
3
3
|
import type { MarginConfig } from '../plots/props';
|
|
4
|
+
import type { CellEdges } from './grid';
|
|
4
5
|
export type Responsive<T> = T | {
|
|
5
6
|
desktop: T;
|
|
6
7
|
mobile: T;
|
|
@@ -8,13 +9,33 @@ export type Responsive<T> = T | {
|
|
|
8
9
|
export type FacetColumns = Responsive<number>;
|
|
9
10
|
export type FacetMode = 'grid' | 'carousel' | 'paginated';
|
|
10
11
|
export type FacetNavLayout = 'overlay' | 'below';
|
|
12
|
+
/**
|
|
13
|
+
* Which position scales facets share: `'shared'` (default), `'free'`, or
|
|
14
|
+
* `'free-x'`/`'free-y'` for one axis. In a `rows`/`cols` grid a free x is
|
|
15
|
+
* shared down each column and a free y along each row.
|
|
16
|
+
*/
|
|
17
|
+
export type FacetScales = 'shared' | 'free' | 'free-x' | 'free-y';
|
|
18
|
+
/**
|
|
19
|
+
* Which facets draw their axes: `'all'` (default), or `'outer'` for only the
|
|
20
|
+
* left column's y and the bottom row's x, with panels resized to equal boxes.
|
|
21
|
+
*/
|
|
22
|
+
export type FacetAxes = 'all' | 'outer';
|
|
23
|
+
/** Where a facet sits in its grid - whether each of its sides is on the grid's outer edge. */
|
|
24
|
+
export type FacetEdges = CellEdges;
|
|
11
25
|
export type FacetCellContext<TRow extends Record<string, unknown>> = {
|
|
26
|
+
/** The facet's label: its `by` value, or its `rows`/`cols` values joined. */
|
|
12
27
|
facetValue: string;
|
|
28
|
+
/** The facet's `rows` value, in a `rows`/`cols` grid. */
|
|
29
|
+
row?: string;
|
|
30
|
+
/** The facet's `cols` value, in a `rows`/`cols` grid. */
|
|
31
|
+
col?: string;
|
|
13
32
|
data: TRow[];
|
|
14
33
|
width: number;
|
|
15
34
|
height: number;
|
|
16
|
-
/**
|
|
35
|
+
/** The margins pinned on the facet's plot so its panel lines up with its row and column - once every facet reported its own. */
|
|
17
36
|
margins?: MarginConfig;
|
|
37
|
+
/** Which of the facet's sides sit on the grid's outer edge. */
|
|
38
|
+
edges: FacetEdges;
|
|
18
39
|
};
|
|
19
40
|
export type FacetCellSnippet<TRow extends Record<string, unknown>> = Snippet<[
|
|
20
41
|
FacetCellContext<TRow>
|
|
@@ -31,11 +52,19 @@ export type FacetNavContext = {
|
|
|
31
52
|
onclick: () => void;
|
|
32
53
|
};
|
|
33
54
|
export type FacetNavSnippet = Snippet<[FacetNavContext]>;
|
|
34
|
-
|
|
55
|
+
/** Options every facet layout shares. */
|
|
56
|
+
type FacetCommonConfig = {
|
|
57
|
+
gap?: number;
|
|
58
|
+
scales?: FacetScales;
|
|
59
|
+
axes?: FacetAxes;
|
|
60
|
+
};
|
|
61
|
+
/** One facet per `by` value, wrapped into `columns` - laid out all at once, paged, or as a carousel. */
|
|
62
|
+
export type FacetWrapConfig<TRow extends Record<string, unknown>> = FacetCommonConfig & {
|
|
35
63
|
by: Accessor<TRow, unknown>;
|
|
64
|
+
rows?: never;
|
|
65
|
+
cols?: never;
|
|
36
66
|
columns?: FacetColumns;
|
|
37
67
|
values?: string[];
|
|
38
|
-
gap?: number;
|
|
39
68
|
mode?: Responsive<FacetMode>;
|
|
40
69
|
visible?: number;
|
|
41
70
|
pageSize?: number;
|
|
@@ -43,23 +72,16 @@ export type FacetConfig<TRow extends Record<string, unknown>> = {
|
|
|
43
72
|
formatIndicator?: (current: number, total: number) => string;
|
|
44
73
|
indicator?: FacetIndicatorSnippet;
|
|
45
74
|
navButton?: FacetNavSnippet;
|
|
46
|
-
/**
|
|
47
|
-
* One facet's own natural margin need, per side — measured across every
|
|
48
|
-
* facet and combined with `Math.max` per side (`FacetLayout`'s own
|
|
49
|
-
* `cellMargins`) to size one shared margin every facet's `cell` receives
|
|
50
|
-
* through its own `margins`, instead of each facet growing its own margin
|
|
51
|
-
* independently off what its own content happens to need (which drifts
|
|
52
|
-
* out of alignment facet to facet, and — for a facet cramped enough that
|
|
53
|
-
* its content can never fully fit — can grow without bound). A plot type
|
|
54
|
-
* that draws content needing this (a categorical axis's labels, a value
|
|
55
|
-
* label's own text) implements this by calling its own margin-estimating
|
|
56
|
-
* export against the facet's rows — e.g. `BarPlot`'s left margin from its
|
|
57
|
-
* category labels, `LinePlot`'s right margin from its end-of-line value
|
|
58
|
-
* labels (see each plot's own docs for what its estimator assumes, such as
|
|
59
|
-
* `LinePlot`'s one-line-per-facet caveat) — this callback only carries
|
|
60
|
-
* that per-facet result up to where every facet's results can be compared.
|
|
61
|
-
* Any side left unset by every facet stays unpinned, falling back to the
|
|
62
|
-
* plot's own default (`'auto'`) sizing.
|
|
63
|
-
*/
|
|
64
|
-
marginsForFacet?: (rows: TRow[]) => MarginConfig;
|
|
65
75
|
};
|
|
76
|
+
/** One facet per `rows` × `cols` combination, with each value labelled; combinations without rows stay empty. */
|
|
77
|
+
export type FacetGridConfig<TRow extends Record<string, unknown>> = FacetCommonConfig & {
|
|
78
|
+
by?: never;
|
|
79
|
+
rows?: Accessor<TRow, unknown>;
|
|
80
|
+
cols?: Accessor<TRow, unknown>;
|
|
81
|
+
/** The `rows` values to show, in order. Defaults to every value, in data order. */
|
|
82
|
+
rowValues?: string[];
|
|
83
|
+
/** The `cols` values to show, in order. Defaults to every value, in data order. */
|
|
84
|
+
colValues?: string[];
|
|
85
|
+
};
|
|
86
|
+
export type FacetConfig<TRow extends Record<string, unknown>> = FacetWrapConfig<TRow> | FacetGridConfig<TRow>;
|
|
87
|
+
export {};
|
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
/** One resolved segment for scoped-marker rendering
|
|
1
|
+
/** One resolved segment for scoped-marker rendering - see {@link ScopedMarkerGroup}. */
|
|
2
2
|
export type ScopedMarkerSegment<TData> = {
|
|
3
3
|
match: (row: TData) => boolean;
|
|
4
4
|
color: string;
|
|
5
5
|
};
|
|
6
6
|
/**
|
|
7
7
|
* One series' resolved context for rendering its `series`-scoped `'hover'`/
|
|
8
|
-
* `'component'` markers
|
|
8
|
+
* `'component'` markers - built by each `Plot.svelte`, consumed by
|
|
9
9
|
* `GeometryLayout`. Keeps `GeometryLayout` itself agnostic of each plot
|
|
10
10
|
* kind's segment style shape (e.g. `fill` vs `stroke.stroke`).
|
|
11
11
|
*/
|
|
12
12
|
export type ScopedMarkerGroup<TData> = {
|
|
13
13
|
name: string;
|
|
14
|
+
/** The series' id, when it differs from its name - see `Series.id`. */
|
|
15
|
+
id?: string;
|
|
16
|
+
/** The facet panel the series belongs to. */
|
|
17
|
+
panel?: string;
|
|
14
18
|
data: TData[];
|
|
15
19
|
color: string;
|
|
16
20
|
segments: ScopedMarkerSegment<TData>[];
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
import type { Margins } from '../../layout/margins/Margins';
|
|
3
|
+
/** Where a cell sits in its grid - whether each of its sides is on the grid's outer edge (no cell beyond it). */
|
|
4
|
+
export type CellEdges = {
|
|
5
|
+
top: boolean;
|
|
6
|
+
right: boolean;
|
|
7
|
+
bottom: boolean;
|
|
8
|
+
left: boolean;
|
|
9
|
+
};
|
|
10
|
+
/** A cell's slot: its top-left track and how many tracks it spans. */
|
|
11
|
+
export type GridSpan = {
|
|
12
|
+
row: number;
|
|
13
|
+
col: number;
|
|
14
|
+
rowSpan: number;
|
|
15
|
+
colSpan: number;
|
|
16
|
+
};
|
|
17
|
+
/** Where a cell asks to sit: a named `area`, an explicit `row`/`col`, or - with neither - the next free slot. */
|
|
18
|
+
export type GridCellSpec = {
|
|
19
|
+
area?: string;
|
|
20
|
+
row?: number;
|
|
21
|
+
col?: number;
|
|
22
|
+
rowSpan?: number;
|
|
23
|
+
colSpan?: number;
|
|
24
|
+
};
|
|
25
|
+
/** A floating cell's box as fractions of its area (or of the whole grid), from the left and bottom edges. */
|
|
26
|
+
export type GridInset = {
|
|
27
|
+
left: number;
|
|
28
|
+
bottom: number;
|
|
29
|
+
right: number;
|
|
30
|
+
top: number;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Where a figure drawn straight inside a `Grid` (a `PlotComposer`'s)
|
|
34
|
+
* sits: a named `area`, or - with `inset` - a box floating over its area.
|
|
35
|
+
* Without either, it takes the next free cell.
|
|
36
|
+
*/
|
|
37
|
+
export type GridPlacement = {
|
|
38
|
+
area?: string;
|
|
39
|
+
inset?: GridInset;
|
|
40
|
+
};
|
|
41
|
+
/** The box a grid cell hands its content. */
|
|
42
|
+
export type GridCellContext = {
|
|
43
|
+
width: number;
|
|
44
|
+
height: number;
|
|
45
|
+
/** The margins pinned on the cell's plot so its panel lines up with its row and column - only in an aligned grid. */
|
|
46
|
+
margins?: Margins;
|
|
47
|
+
edges: CellEdges;
|
|
48
|
+
};
|
|
49
|
+
export type GridCellSnippet = Snippet<[GridCellContext]>;
|
|
50
|
+
/** One cell's box: its size and, in an aligned grid, the margins pinned on it. */
|
|
51
|
+
export type CellBox = {
|
|
52
|
+
width: number;
|
|
53
|
+
height: number;
|
|
54
|
+
margins?: Margins;
|
|
55
|
+
};
|
|
56
|
+
/** What a cell asks of its grid: a slot, or - with `inset` - a box floating over one. */
|
|
57
|
+
export type GridCellRequest = GridCellSpec & {
|
|
58
|
+
inset?: GridInset;
|
|
59
|
+
};
|
|
60
|
+
/** Where the grid put a cell: its CSS placement, its box and which sides face the grid's edge. */
|
|
61
|
+
export type GridCellLayout = {
|
|
62
|
+
gridRow?: string;
|
|
63
|
+
gridColumn?: string;
|
|
64
|
+
box: CellBox;
|
|
65
|
+
edges: CellEdges;
|
|
66
|
+
};
|