@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.
Files changed (786) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/LICENSE +21 -0
  3. package/README.md +81 -558
  4. package/dist/configuration/config.svelte.d.ts +5 -5
  5. package/dist/configuration/config.svelte.js +133 -46
  6. package/dist/configuration/fonts.d.ts +6 -0
  7. package/dist/configuration/fonts.js +6 -0
  8. package/dist/configuration/themes/compact.d.ts +2 -2
  9. package/dist/configuration/themes/compact.js +1 -1
  10. package/dist/configuration/themes/dark.d.ts +2 -2
  11. package/dist/configuration/themes/dark.js +5 -4
  12. package/dist/configuration/themes/default.d.ts +8 -3
  13. package/dist/configuration/themes/default.js +8 -2
  14. package/dist/configuration/themes/editorial.d.ts +2 -2
  15. package/dist/configuration/themes/editorial.js +2 -2
  16. package/dist/configuration/themes/index.d.ts +433 -80
  17. package/dist/configuration/themes/index.js +6 -5
  18. package/dist/index.d.ts +34 -48
  19. package/dist/index.js +19 -35
  20. package/dist/layout/base/BasePlotLayout.svelte +312 -0
  21. package/dist/layout/base/BasePlotLayout.svelte.d.ts +111 -0
  22. package/dist/layout/composer/PlotComposer.svelte +94 -0
  23. package/dist/layout/composer/PlotComposer.svelte.d.ts +13 -0
  24. package/dist/layout/coordinates/CameraFit.svelte +4 -4
  25. package/dist/layout/coordinates/CoordinatesLayout.svelte +11 -3
  26. package/dist/layout/coordinates/CoordinatesLayout.svelte.d.ts +6 -2
  27. package/dist/layout/coordinates/camera.svelte.d.ts +1 -1
  28. package/dist/layout/coordinates/camera.svelte.js +6 -6
  29. package/dist/layout/coordinates/projections/argentina.js +3 -3
  30. package/dist/layout/coordinates/projections/fit.js +1 -1
  31. package/dist/layout/coordinates/resolveCameraTarget.d.ts +1 -1
  32. package/dist/layout/coordinates/resolveProjection.d.ts +1 -1
  33. package/dist/layout/coordinates/resolveProjection.js +2 -2
  34. package/dist/layout/coordinates/rotate.svelte.d.ts +3 -3
  35. package/dist/layout/coordinates/rotate.svelte.js +8 -8
  36. package/dist/layout/coordinates/zoom.svelte.d.ts +1 -1
  37. package/dist/layout/facet/FacetIndicator.svelte +23 -23
  38. package/dist/layout/facet/FacetLayout.svelte +435 -398
  39. package/dist/layout/facet/FacetLayout.svelte.d.ts +9 -3
  40. package/dist/layout/facet/axes.d.ts +16 -0
  41. package/dist/layout/facet/axes.js +25 -0
  42. package/dist/layout/facet/config.d.ts +32 -0
  43. package/dist/layout/facet/config.js +82 -0
  44. package/dist/layout/figure/Figure.svelte +177 -0
  45. package/dist/layout/figure/Figure.svelte.d.ts +14 -0
  46. package/dist/layout/figure/FigureChrome.svelte +341 -0
  47. package/dist/layout/figure/FigureChrome.svelte.d.ts +21 -0
  48. package/dist/layout/geometry/FrameClip.svelte +45 -0
  49. package/dist/layout/geometry/FrameClip.svelte.d.ts +8 -0
  50. package/dist/layout/geometry/FrameClipping.d.ts +24 -0
  51. package/dist/layout/geometry/FrameClipping.js +40 -0
  52. package/dist/layout/geometry/GeometryLayout.svelte +287 -224
  53. package/dist/layout/geometry/GeometryLayout.svelte.d.ts +10 -10
  54. package/dist/layout/grid/Grid.svelte +194 -0
  55. package/dist/layout/grid/Grid.svelte.d.ts +26 -0
  56. package/dist/layout/grid/GridAlignment.svelte.d.ts +31 -0
  57. package/dist/layout/grid/GridAlignment.svelte.js +56 -0
  58. package/dist/layout/grid/GridCell.svelte +141 -0
  59. package/dist/layout/grid/GridCell.svelte.d.ts +17 -0
  60. package/dist/layout/grid/GridCellsRegistry.svelte.d.ts +52 -0
  61. package/dist/layout/grid/GridCellsRegistry.svelte.js +70 -0
  62. package/dist/layout/grid/GridPlan.d.ts +49 -0
  63. package/dist/layout/grid/GridPlan.js +167 -0
  64. package/dist/layout/grid/Tags.d.ts +8 -0
  65. package/dist/layout/grid/Tags.js +39 -0
  66. package/dist/layout/hover/HoverScope.svelte +11 -0
  67. package/dist/layout/hover/HoverScope.svelte.d.ts +8 -0
  68. package/dist/layout/hover/HoverSettings.d.ts +20 -0
  69. package/dist/layout/hover/HoverSettings.js +27 -0
  70. package/dist/layout/hover/HoverState.svelte.d.ts +47 -0
  71. package/dist/layout/hover/HoverState.svelte.js +99 -0
  72. package/dist/layout/hover/PlotHover.svelte.d.ts +63 -0
  73. package/dist/layout/hover/PlotHover.svelte.js +133 -0
  74. package/dist/layout/interaction/PlotInteraction.svelte.d.ts +38 -0
  75. package/dist/layout/interaction/PlotInteraction.svelte.js +56 -0
  76. package/dist/layout/legend/AxisNumberFormat.d.ts +12 -0
  77. package/dist/layout/legend/AxisNumberFormat.js +25 -0
  78. package/dist/layout/legend/ContinuousSection.svelte +365 -335
  79. package/dist/layout/legend/DisabledStyle.d.ts +19 -0
  80. package/dist/layout/legend/DisabledStyle.js +57 -0
  81. package/dist/layout/legend/DiscreteBadgeItem.svelte +6 -3
  82. package/dist/layout/legend/DiscreteSection.svelte +39 -32
  83. package/dist/layout/legend/DiscreteSwatchItem.svelte +4 -1
  84. package/dist/layout/legend/DiscreteSymbolIcon.svelte +14 -9
  85. package/dist/layout/legend/LegendChannels.d.ts +21 -0
  86. package/dist/layout/legend/LegendChannels.js +221 -0
  87. package/dist/layout/legend/LegendLayout.svelte +49 -43
  88. package/dist/layout/legend/LegendState.svelte.d.ts +79 -0
  89. package/dist/layout/legend/LegendState.svelte.js +329 -0
  90. package/dist/layout/legend/LegendText.d.ts +12 -0
  91. package/dist/layout/legend/LegendText.js +22 -0
  92. package/dist/layout/legend/SizeSection.svelte +84 -0
  93. package/dist/layout/legend/SizeSection.svelte.d.ts +7 -0
  94. package/dist/layout/legend/SymbolSection.svelte +31 -0
  95. package/dist/layout/legend/SymbolSection.svelte.d.ts +8 -0
  96. package/dist/layout/margins/Box.d.ts +84 -0
  97. package/dist/layout/margins/Box.js +138 -0
  98. package/dist/layout/margins/Margins.d.ts +37 -0
  99. package/dist/layout/margins/Margins.js +71 -0
  100. package/dist/layout/margins/PlotMargins.svelte.d.ts +101 -0
  101. package/dist/layout/margins/PlotMargins.svelte.js +219 -0
  102. package/dist/layout/plot/Core.svelte +61 -0
  103. package/dist/layout/plot/Core.svelte.d.ts +41 -0
  104. package/dist/layout/plot/PanelRun.svelte +28 -0
  105. package/dist/{charts/heatmap/Chart.svelte.d.ts → layout/plot/PanelRun.svelte.d.ts} +11 -7
  106. package/dist/layout/plot/Plot.svelte +284 -0
  107. package/dist/layout/plot/Plot.svelte.d.ts +49 -0
  108. package/dist/layout/plot/PlotContext.d.ts +41 -0
  109. package/dist/layout/plot/PlotContext.js +46 -0
  110. package/dist/layout/plot/PublicPlotContext.d.ts +130 -0
  111. package/dist/layout/plot/PublicPlotContext.js +236 -0
  112. package/dist/layout/plot/Slice.d.ts +44 -0
  113. package/dist/layout/plot/Slice.js +98 -0
  114. package/dist/layout/plot/usePlot.d.ts +9 -0
  115. package/dist/layout/plot/usePlot.js +13 -0
  116. package/dist/layout/scales/ScalesLayout.svelte +241 -206
  117. package/dist/layout/scales/ScalesLayout.svelte.d.ts +2 -1
  118. package/dist/layout/scales/buildScale.d.ts +5 -22
  119. package/dist/layout/scales/buildScale.js +11 -34
  120. package/dist/layout/scales/niceDomain.d.ts +3 -3
  121. package/dist/layout/scales/niceDomain.js +4 -4
  122. package/dist/layout/styles/StylesLayout.svelte +65 -65
  123. package/dist/layout/styles/TileLayer.svelte +78 -76
  124. package/dist/layout/styles/TileLayer.svelte.d.ts +1 -1
  125. package/dist/layout/styles/ValueLabels.d.ts +97 -0
  126. package/dist/layout/styles/ValueLabels.js +237 -0
  127. package/dist/layout/timeline/Timeline.svelte +80 -74
  128. package/dist/layout/timeline/TimelineFrame.svelte +86 -0
  129. package/dist/layout/timeline/TimelineFrame.svelte.d.ts +16 -0
  130. package/dist/layout/timeline/TimelineLayout.svelte +114 -169
  131. package/dist/layout/timeline/TimelineLayout.svelte.d.ts +2 -0
  132. package/dist/layout/timeline/TimelinePlayer.svelte +195 -0
  133. package/dist/layout/timeline/TimelinePlayer.svelte.d.ts +7 -0
  134. package/dist/layout/timeline/TimelineRule.svelte +50 -0
  135. package/dist/layout/timeline/TimelineRule.svelte.d.ts +7 -0
  136. package/dist/layout/timeline/TimelineState.svelte.d.ts +82 -0
  137. package/dist/layout/timeline/TimelineState.svelte.js +226 -0
  138. package/dist/layout/timeline/TimelineSteps.d.ts +24 -0
  139. package/dist/layout/timeline/TimelineSteps.js +48 -0
  140. package/dist/layout/tooltip/Tooltip.svelte +82 -85
  141. package/dist/layout/tooltip/Tooltip.svelte.d.ts +43 -24
  142. package/dist/layout/tooltip/TooltipState.svelte.d.ts +61 -0
  143. package/dist/layout/tooltip/TooltipState.svelte.js +107 -0
  144. package/dist/markers/MarkerKinds.d.ts +173 -0
  145. package/dist/markers/MarkerKinds.js +51 -0
  146. package/dist/markers/area/AreaMarker.svelte +110 -0
  147. package/dist/markers/area/AreaMarker.svelte.d.ts +7 -0
  148. package/dist/markers/arrow/ArrowMarker.svelte +28 -0
  149. package/dist/markers/arrow/ArrowMarker.svelte.d.ts +7 -0
  150. package/dist/markers/{BarMarker.svelte → bar/BarMarker.svelte} +54 -52
  151. package/dist/markers/{BarMarker.svelte.d.ts → bar/BarMarker.svelte.d.ts} +1 -1
  152. package/dist/markers/bollinger/BollingerMarker.svelte +44 -0
  153. package/dist/markers/bollinger/BollingerMarker.svelte.d.ts +7 -0
  154. package/dist/markers/box/BoxMarker.svelte +143 -0
  155. package/dist/markers/box/BoxMarker.svelte.d.ts +7 -0
  156. package/dist/markers/brush/BrushMarker.svelte +32 -0
  157. package/dist/markers/brush/BrushMarker.svelte.d.ts +7 -0
  158. package/dist/markers/cell/CellMarker.svelte +27 -0
  159. package/dist/markers/{CellMarker.svelte.d.ts → cell/CellMarker.svelte.d.ts} +1 -1
  160. package/dist/markers/contour/ContourClipMarker.svelte +83 -0
  161. package/dist/markers/{ContourClipMarker.svelte.d.ts → contour/ContourClipMarker.svelte.d.ts} +1 -1
  162. package/dist/markers/contour/ContourMarker.svelte +28 -0
  163. package/dist/markers/{ContourMarker.svelte.d.ts → contour/ContourMarker.svelte.d.ts} +1 -1
  164. package/dist/markers/delaunay/DelaunayLinkMarker.svelte +26 -0
  165. package/dist/markers/delaunay/DelaunayLinkMarker.svelte.d.ts +7 -0
  166. package/dist/markers/delaunay/DelaunayMeshMarker.svelte +26 -0
  167. package/dist/markers/delaunay/DelaunayMeshMarker.svelte.d.ts +7 -0
  168. package/dist/markers/delta/Delta.d.ts +21 -0
  169. package/dist/markers/delta/Delta.js +60 -0
  170. package/dist/markers/delta/DeltaMarker.svelte +94 -0
  171. package/dist/markers/{DeltaMarker.svelte.d.ts → delta/DeltaMarker.svelte.d.ts} +2 -2
  172. package/dist/markers/density/DensityMarker.svelte +63 -0
  173. package/dist/markers/density/DensityMarker.svelte.d.ts +7 -0
  174. package/dist/markers/difference/DifferenceMarker.svelte +30 -0
  175. package/dist/markers/difference/DifferenceMarker.svelte.d.ts +7 -0
  176. package/dist/markers/dot/DotMarker.svelte +102 -0
  177. package/dist/markers/{DotMarker.svelte.d.ts → dot/DotMarker.svelte.d.ts} +5 -17
  178. package/dist/markers/geo/GeoFeaturesMarker.svelte +39 -0
  179. package/dist/markers/{GeoFeaturesMarker.svelte.d.ts → geo/GeoFeaturesMarker.svelte.d.ts} +1 -1
  180. package/dist/markers/geo/GeoHoverMarker.svelte +28 -0
  181. package/dist/markers/{GeoHoverMarker.svelte.d.ts → geo/GeoHoverMarker.svelte.d.ts} +2 -2
  182. package/dist/markers/geo/GraticuleMarker.svelte +18 -0
  183. package/dist/markers/{GraticuleMarker.svelte.d.ts → geo/GraticuleMarker.svelte.d.ts} +1 -1
  184. package/dist/markers/geo/SphereMarker.svelte +15 -0
  185. package/dist/markers/{SphereMarker.svelte.d.ts → geo/SphereMarker.svelte.d.ts} +1 -1
  186. package/dist/markers/hover/HoverMarker.svelte +252 -0
  187. package/dist/markers/{HoverMarker.svelte.d.ts → hover/HoverMarker.svelte.d.ts} +10 -10
  188. package/dist/markers/hull/HullMarker.svelte +25 -0
  189. package/dist/markers/hull/HullMarker.svelte.d.ts +7 -0
  190. package/dist/markers/image/ImageMarker.svelte +22 -0
  191. package/dist/markers/image/ImageMarker.svelte.d.ts +7 -0
  192. package/dist/markers/inset/InsetMarker.svelte +184 -150
  193. package/dist/markers/inset/InsetMarker.svelte.d.ts +4 -4
  194. package/dist/markers/inset/insetLayout.d.ts +1 -1
  195. package/dist/markers/inset/insetLayout.js +6 -2
  196. package/dist/markers/inset/insetProjection.d.ts +1 -1
  197. package/dist/markers/inset/insetProjection.js +3 -3
  198. package/dist/markers/line/LineMarker.svelte +30 -0
  199. package/dist/markers/{LineMarker.svelte.d.ts → line/LineMarker.svelte.d.ts} +1 -1
  200. package/dist/markers/link/LinkMarker.svelte +47 -0
  201. package/dist/markers/{LinkMarker.svelte.d.ts → link/LinkMarker.svelte.d.ts} +1 -1
  202. package/dist/markers/raster/RasterMarker.svelte +31 -0
  203. package/dist/markers/raster/RasterMarker.svelte.d.ts +7 -0
  204. package/dist/markers/rect/RectMarker.svelte +62 -0
  205. package/dist/markers/rect/RectMarker.svelte.d.ts +7 -0
  206. package/dist/markers/regression/RegressionMarker.svelte +60 -0
  207. package/dist/markers/regression/RegressionMarker.svelte.d.ts +7 -0
  208. package/dist/markers/rule/RuleMarker.svelte +47 -0
  209. package/dist/markers/{RuleMarker.svelte.d.ts → rule/RuleMarker.svelte.d.ts} +2 -5
  210. package/dist/markers/text/Declutter.d.ts +35 -0
  211. package/dist/markers/text/Declutter.js +157 -0
  212. package/dist/markers/text/TextMarker.svelte +244 -0
  213. package/dist/markers/{TextMarker.svelte.d.ts → text/TextMarker.svelte.d.ts} +5 -9
  214. package/dist/markers/tick/TickMarker.svelte +44 -0
  215. package/dist/markers/tick/TickMarker.svelte.d.ts +7 -0
  216. package/dist/markers/trail/TrailMarker.svelte +27 -0
  217. package/dist/markers/trail/TrailMarker.svelte.d.ts +7 -0
  218. package/dist/markers/utils/BandNudge.d.ts +22 -0
  219. package/dist/markers/utils/BandNudge.js +23 -0
  220. package/dist/markers/utils/MarkerChannels.d.ts +49 -0
  221. package/dist/markers/utils/MarkerChannels.js +97 -0
  222. package/dist/markers/vector/VectorMarker.svelte +29 -0
  223. package/dist/markers/{VectorMarker.svelte.d.ts → vector/VectorMarker.svelte.d.ts} +1 -1
  224. package/dist/markers/voronoi/VoronoiMarker.svelte +26 -0
  225. package/dist/markers/voronoi/VoronoiMarker.svelte.d.ts +7 -0
  226. package/dist/markers/voronoi/VoronoiMeshMarker.svelte +26 -0
  227. package/dist/markers/voronoi/VoronoiMeshMarker.svelte.d.ts +7 -0
  228. package/dist/markers/waffle/WaffleMarker.svelte +56 -0
  229. package/dist/markers/waffle/WaffleMarker.svelte.d.ts +7 -0
  230. package/dist/phases/Pipeline.d.ts +108 -0
  231. package/dist/phases/Pipeline.js +226 -0
  232. package/dist/phases/data/DataPhase.d.ts +25 -0
  233. package/dist/phases/data/DataPhase.js +82 -0
  234. package/dist/phases/data/PlotAxes.d.ts +75 -0
  235. package/dist/phases/data/PlotAxes.js +151 -0
  236. package/dist/phases/facet/FacetPhase.d.ts +52 -0
  237. package/dist/phases/facet/FacetPhase.js +114 -0
  238. package/dist/phases/hover/HoverPhase.d.ts +73 -0
  239. package/dist/phases/hover/HoverPhase.js +144 -0
  240. package/dist/phases/mapping/MappingPhase.d.ts +17 -0
  241. package/dist/phases/mapping/MappingPhase.js +42 -0
  242. package/dist/phases/markers/MarkersPhase.d.ts +14 -0
  243. package/dist/phases/markers/MarkersPhase.js +27 -0
  244. package/dist/phases/scales/MarkerAxisValues.d.ts +12 -0
  245. package/dist/phases/scales/MarkerAxisValues.js +34 -0
  246. package/dist/phases/scales/ScalesPhase.d.ts +31 -0
  247. package/dist/phases/scales/ScalesPhase.js +157 -0
  248. package/dist/phases/sharedScales/SharedScalesPhase.d.ts +55 -0
  249. package/dist/phases/sharedScales/SharedScalesPhase.js +168 -0
  250. package/dist/phases/statistics/AuthorMarkers.d.ts +43 -0
  251. package/dist/phases/statistics/AuthorMarkers.js +69 -0
  252. package/dist/phases/statistics/MarkerGrouping.d.ts +48 -0
  253. package/dist/phases/statistics/MarkerGrouping.js +113 -0
  254. package/dist/phases/statistics/Statistics.d.ts +53 -0
  255. package/dist/phases/statistics/Statistics.js +156 -0
  256. package/dist/phases/statistics/StatisticsPhase.d.ts +18 -0
  257. package/dist/phases/statistics/StatisticsPhase.js +68 -0
  258. package/dist/phases/statistics/methods/BollingerStatistic.d.ts +9 -0
  259. package/dist/phases/statistics/methods/BollingerStatistic.js +18 -0
  260. package/dist/phases/statistics/methods/BoxStatistic.d.ts +9 -0
  261. package/dist/phases/statistics/methods/BoxStatistic.js +18 -0
  262. package/dist/phases/statistics/methods/Density2dStatistic.d.ts +9 -0
  263. package/dist/phases/statistics/methods/Density2dStatistic.js +18 -0
  264. package/dist/phases/statistics/methods/DensityStatistic.d.ts +12 -0
  265. package/dist/phases/statistics/methods/DensityStatistic.js +29 -0
  266. package/dist/phases/statistics/methods/MovingAverageStatistic.d.ts +12 -0
  267. package/dist/phases/statistics/methods/MovingAverageStatistic.js +30 -0
  268. package/dist/phases/statistics/methods/RegressionStatistic.d.ts +9 -0
  269. package/dist/phases/statistics/methods/RegressionStatistic.js +21 -0
  270. package/dist/phases/styles/StylesPhase.d.ts +13 -0
  271. package/dist/phases/styles/StylesPhase.js +17 -0
  272. package/dist/phases/tooltip/TooltipPhase.d.ts +12 -0
  273. package/dist/phases/tooltip/TooltipPhase.js +10 -0
  274. package/dist/phases/transforms/Transforms.d.ts +42 -0
  275. package/dist/phases/transforms/Transforms.js +130 -0
  276. package/dist/phases/transforms/TransformsPhase.d.ts +64 -0
  277. package/dist/phases/transforms/TransformsPhase.js +242 -0
  278. package/dist/phases/transforms/methods/AnchorBar.d.ts +13 -0
  279. package/dist/phases/transforms/methods/AnchorBar.js +21 -0
  280. package/dist/phases/transforms/methods/BinTransform.d.ts +7 -0
  281. package/dist/phases/transforms/methods/BinTransform.js +48 -0
  282. package/dist/phases/transforms/methods/DensityTransform.d.ts +6 -0
  283. package/dist/phases/transforms/methods/DensityTransform.js +13 -0
  284. package/dist/phases/transforms/methods/GroupTransform.d.ts +8 -0
  285. package/dist/phases/transforms/methods/GroupTransform.js +39 -0
  286. package/dist/phases/transforms/methods/NormalizeTransform.d.ts +10 -0
  287. package/dist/phases/transforms/methods/NormalizeTransform.js +30 -0
  288. package/dist/phases/transforms/methods/OrderTransform.d.ts +16 -0
  289. package/dist/phases/transforms/methods/OrderTransform.js +43 -0
  290. package/dist/phases/transforms/methods/PerGroup.d.ts +11 -0
  291. package/dist/phases/transforms/methods/PerGroup.js +39 -0
  292. package/dist/phases/transforms/methods/PositionTransform.d.ts +15 -0
  293. package/dist/phases/transforms/methods/PositionTransform.js +74 -0
  294. package/dist/phases/transforms/methods/StackTransform.d.ts +8 -0
  295. package/dist/phases/transforms/methods/StackTransform.js +29 -0
  296. package/dist/phases/transforms/methods/WindowTransform.d.ts +8 -0
  297. package/dist/phases/transforms/methods/WindowTransform.js +23 -0
  298. package/dist/plots/area/Plot.svelte +42 -0
  299. package/dist/plots/{heatmap/ValueLabels.svelte.d.ts → area/Plot.svelte.d.ts} +8 -16
  300. package/dist/plots/area/defaults.d.ts +4 -0
  301. package/dist/plots/area/defaults.js +21 -0
  302. package/dist/plots/area/markers.d.ts +14 -0
  303. package/dist/plots/area/markers.js +40 -0
  304. package/dist/plots/bar/Plot.svelte +33 -438
  305. package/dist/plots/bar/Plot.svelte.d.ts +5 -8
  306. package/dist/plots/bar/defaults.d.ts +9 -0
  307. package/dist/plots/bar/defaults.js +92 -0
  308. package/dist/plots/bar/markers.d.ts +45 -0
  309. package/dist/plots/bar/markers.js +232 -0
  310. package/dist/plots/geo/Core.svelte +151 -0
  311. package/dist/plots/geo/Core.svelte.d.ts +25 -0
  312. package/dist/plots/geo/Plot.svelte +103 -324
  313. package/dist/plots/geo/Plot.svelte.d.ts +5 -9
  314. package/dist/plots/geo/defaults.d.ts +4 -0
  315. package/dist/plots/geo/defaults.js +16 -0
  316. package/dist/plots/geo/features.svelte.d.ts +5 -0
  317. package/dist/plots/geo/features.svelte.js +44 -0
  318. package/dist/plots/geo/phases/data.d.ts +6 -0
  319. package/dist/plots/geo/phases/data.js +26 -0
  320. package/dist/plots/geo/phases/hover.d.ts +9 -0
  321. package/dist/plots/geo/phases/hover.js +45 -0
  322. package/dist/plots/geo/phases/markers.d.ts +9 -0
  323. package/dist/plots/geo/phases/markers.js +76 -0
  324. package/dist/plots/geo/phases/scales.d.ts +10 -0
  325. package/dist/plots/geo/phases/scales.js +85 -0
  326. package/dist/plots/geo/phases/tooltip.d.ts +3 -0
  327. package/dist/plots/geo/phases/tooltip.js +5 -0
  328. package/dist/plots/geo/slices.d.ts +18 -0
  329. package/dist/plots/geo/slices.js +56 -0
  330. package/dist/plots/heatmap/Plot.svelte +55 -249
  331. package/dist/plots/heatmap/Plot.svelte.d.ts +5 -8
  332. package/dist/plots/heatmap/defaults.d.ts +11 -0
  333. package/dist/plots/heatmap/defaults.js +91 -0
  334. package/dist/plots/heatmap/markers.d.ts +17 -0
  335. package/dist/plots/heatmap/markers.js +141 -0
  336. package/dist/plots/histogram/Plot.svelte +45 -0
  337. package/dist/plots/histogram/Plot.svelte.d.ts +26 -0
  338. package/dist/plots/histogram/defaults.d.ts +9 -0
  339. package/dist/plots/histogram/defaults.js +87 -0
  340. package/dist/plots/histogram/markers.d.ts +18 -0
  341. package/dist/plots/histogram/markers.js +89 -0
  342. package/dist/plots/line/Plot.svelte +37 -268
  343. package/dist/plots/line/Plot.svelte.d.ts +3 -7
  344. package/dist/plots/line/defaults.d.ts +4 -0
  345. package/dist/plots/line/defaults.js +29 -0
  346. package/dist/plots/line/markers.d.ts +49 -0
  347. package/dist/plots/line/markers.js +200 -0
  348. package/dist/plots/pyramid/Plot.svelte +34 -362
  349. package/dist/plots/pyramid/Plot.svelte.d.ts +5 -8
  350. package/dist/plots/pyramid/defaults.d.ts +13 -0
  351. package/dist/plots/pyramid/defaults.js +86 -0
  352. package/dist/plots/pyramid/markers.d.ts +21 -0
  353. package/dist/plots/pyramid/markers.js +159 -0
  354. package/dist/plots/scatter/Plot.svelte +34 -288
  355. package/dist/plots/scatter/Plot.svelte.d.ts +5 -8
  356. package/dist/plots/scatter/defaults.d.ts +4 -0
  357. package/dist/plots/scatter/defaults.js +79 -0
  358. package/dist/plots/scatter/markers.d.ts +19 -0
  359. package/dist/plots/scatter/markers.js +128 -0
  360. package/dist/plots/utils/ChannelName.d.ts +9 -0
  361. package/dist/plots/utils/ChannelName.js +14 -0
  362. package/dist/plots/utils/accessors.d.ts +1 -1
  363. package/dist/plots/utils/accessors.js +4 -2
  364. package/dist/plots/utils/gaps.d.ts +14 -19
  365. package/dist/plots/utils/gaps.js +38 -18
  366. package/dist/plots/utils/geoAccessors.d.ts +8 -8
  367. package/dist/plots/utils/geoAccessors.js +16 -12
  368. package/dist/plots/utils/geoSegments.d.ts +24 -9
  369. package/dist/plots/utils/geoSegments.js +31 -11
  370. package/dist/plots/utils/segments.d.ts +5 -16
  371. package/dist/plots/utils/segments.js +40 -52
  372. package/dist/plots/utils/tiles.d.ts +9 -9
  373. package/dist/plots/utils/tiles.js +35 -25
  374. package/dist/plots/utils/topojson.d.ts +1 -1
  375. package/dist/plots/utils/topojson.js +3 -3
  376. package/dist/stores/device.js +2 -4
  377. package/dist/types/configuration/styling.d.ts +158 -27
  378. package/dist/types/layout/box.d.ts +24 -0
  379. package/dist/types/layout/composer.d.ts +36 -0
  380. package/dist/types/layout/coordinates.d.ts +14 -14
  381. package/dist/types/layout/facet.d.ts +44 -22
  382. package/dist/types/layout/figure.d.ts +7 -0
  383. package/dist/types/layout/geometry.d.ts +6 -2
  384. package/dist/types/layout/grid.d.ts +66 -0
  385. package/dist/types/layout/hover.d.ts +48 -0
  386. package/dist/types/layout/legend.d.ts +258 -54
  387. package/dist/types/layout/mapping.d.ts +68 -0
  388. package/dist/types/layout/plot.d.ts +41 -0
  389. package/dist/types/layout/scales.d.ts +92 -24
  390. package/dist/types/layout/scales.js +19 -1
  391. package/dist/types/layout/statistics/bollinger.d.ts +18 -0
  392. package/dist/types/layout/statistics/box.d.ts +8 -0
  393. package/dist/types/layout/statistics/box.js +1 -0
  394. package/dist/types/layout/statistics/density.d.ts +27 -0
  395. package/dist/types/layout/statistics/density.js +1 -0
  396. package/dist/types/layout/statistics/index.d.ts +46 -0
  397. package/dist/types/layout/statistics/index.js +1 -0
  398. package/dist/types/layout/statistics/movingAverage.d.ts +12 -0
  399. package/dist/types/layout/statistics/movingAverage.js +1 -0
  400. package/dist/types/layout/statistics/regression.d.ts +20 -0
  401. package/dist/types/layout/statistics/regression.js +1 -0
  402. package/dist/types/layout/styles.d.ts +24 -35
  403. package/dist/types/layout/timeline.d.ts +51 -4
  404. package/dist/types/layout/tooltip.d.ts +7 -85
  405. package/dist/types/markers/all.d.ts +3 -4
  406. package/dist/types/markers/axis/area.d.ts +12 -0
  407. package/dist/types/markers/axis/area.js +1 -0
  408. package/dist/types/markers/axis/arrow.d.ts +15 -0
  409. package/dist/types/markers/axis/arrow.js +1 -0
  410. package/dist/types/markers/axis/axisBasedMarkersConfig.d.ts +29 -0
  411. package/dist/types/markers/axis/axisBasedMarkersConfig.js +1 -0
  412. package/dist/types/markers/axis/bar.d.ts +18 -0
  413. package/dist/types/markers/axis/bar.js +1 -0
  414. package/dist/types/markers/axis/bollinger.d.ts +6 -0
  415. package/dist/types/markers/axis/bollinger.js +1 -0
  416. package/dist/types/markers/axis/box.d.ts +14 -0
  417. package/dist/types/markers/axis/box.js +1 -0
  418. package/dist/types/markers/axis/brush.d.ts +28 -0
  419. package/dist/types/markers/axis/brush.js +1 -0
  420. package/dist/types/markers/axis/cell.d.ts +9 -0
  421. package/dist/types/markers/axis/cell.js +1 -0
  422. package/dist/types/markers/axis/component.d.ts +9 -0
  423. package/dist/types/markers/axis/component.js +1 -0
  424. package/dist/types/markers/axis/curveName.d.ts +2 -0
  425. package/dist/types/markers/axis/curveName.js +1 -0
  426. package/dist/types/markers/axis/delaunayLink.d.ts +7 -0
  427. package/dist/types/markers/axis/delaunayLink.js +1 -0
  428. package/dist/types/markers/axis/delaunayMesh.d.ts +7 -0
  429. package/dist/types/markers/axis/delaunayMesh.js +1 -0
  430. package/dist/types/markers/axis/delta.d.ts +27 -0
  431. package/dist/types/markers/axis/delta.js +1 -0
  432. package/dist/types/markers/axis/density.d.ts +12 -0
  433. package/dist/types/markers/axis/density.js +1 -0
  434. package/dist/types/markers/axis/difference.d.ts +12 -0
  435. package/dist/types/markers/axis/difference.js +1 -0
  436. package/dist/types/markers/axis/hover.d.ts +21 -0
  437. package/dist/types/markers/axis/hover.js +1 -0
  438. package/dist/types/markers/axis/hull.d.ts +7 -0
  439. package/dist/types/markers/axis/hull.js +1 -0
  440. package/dist/types/markers/axis/image.d.ts +12 -0
  441. package/dist/types/markers/axis/image.js +1 -0
  442. package/dist/types/markers/axis/line.d.ts +7 -0
  443. package/dist/types/markers/axis/line.js +1 -0
  444. package/dist/types/markers/axis/raster.d.ts +18 -0
  445. package/dist/types/markers/axis/raster.js +1 -0
  446. package/dist/types/markers/axis/rect.d.ts +15 -0
  447. package/dist/types/markers/axis/rect.js +1 -0
  448. package/dist/types/markers/axis/regression.d.ts +6 -0
  449. package/dist/types/markers/axis/regression.js +1 -0
  450. package/dist/types/markers/axis/rule.d.ts +15 -0
  451. package/dist/types/markers/axis/rule.js +1 -0
  452. package/dist/types/markers/axis/tick.d.ts +8 -0
  453. package/dist/types/markers/axis/tick.js +1 -0
  454. package/dist/types/markers/axis/trail.d.ts +14 -0
  455. package/dist/types/markers/axis/trail.js +1 -0
  456. package/dist/types/markers/axis/voronoi.d.ts +7 -0
  457. package/dist/types/markers/axis/voronoi.js +1 -0
  458. package/dist/types/markers/axis/voronoiMesh.d.ts +7 -0
  459. package/dist/types/markers/axis/voronoiMesh.js +1 -0
  460. package/dist/types/markers/axis/waffle.d.ts +13 -0
  461. package/dist/types/markers/axis/waffle.js +1 -0
  462. package/dist/types/markers/basic/basicMarkersConfig.d.ts +4 -0
  463. package/dist/types/markers/basic/basicMarkersConfig.js +1 -0
  464. package/dist/types/markers/basic/dot.d.ts +9 -0
  465. package/dist/types/markers/basic/dot.js +1 -0
  466. package/dist/types/markers/basic/text.d.ts +60 -0
  467. package/dist/types/markers/basic/text.js +1 -0
  468. package/dist/types/markers/basic.d.ts +4 -0
  469. package/dist/types/markers/basic.js +1 -0
  470. package/dist/types/markers/channels/commonMarkerConfig.d.ts +26 -0
  471. package/dist/types/markers/channels/commonMarkerConfig.js +1 -0
  472. package/dist/types/markers/channels/commonMarkerConfigWithArea.d.ts +6 -0
  473. package/dist/types/markers/channels/commonMarkerConfigWithArea.js +1 -0
  474. package/dist/types/markers/channels/commonMarkerConfigWithColor.d.ts +5 -0
  475. package/dist/types/markers/channels/commonMarkerConfigWithColor.js +1 -0
  476. package/dist/types/markers/channels/commonMarkerConfigWithInterval.d.ts +9 -0
  477. package/dist/types/markers/channels/commonMarkerConfigWithInterval.js +1 -0
  478. package/dist/types/markers/channels/commonMarkerConfigWithRadius.d.ts +5 -0
  479. package/dist/types/markers/channels/commonMarkerConfigWithRadius.js +1 -0
  480. package/dist/types/markers/channels/commonMarkerConfigWithSymbol.d.ts +5 -0
  481. package/dist/types/markers/channels/commonMarkerConfigWithSymbol.js +1 -0
  482. package/dist/types/markers/channels/commonMarkerConfigWithWeight.d.ts +5 -0
  483. package/dist/types/markers/channels/commonMarkerConfigWithWeight.js +1 -0
  484. package/dist/types/markers/common.d.ts +30 -103
  485. package/dist/types/markers/common.js +29 -1
  486. package/dist/types/markers/geo/contour.d.ts +27 -0
  487. package/dist/types/markers/geo/contour.js +1 -0
  488. package/dist/types/markers/geo/features.d.ts +12 -0
  489. package/dist/types/markers/geo/features.js +1 -0
  490. package/dist/types/markers/geo/geoComponent.d.ts +7 -0
  491. package/dist/types/markers/geo/geoComponent.js +1 -0
  492. package/dist/types/markers/geo/geoHover.d.ts +6 -0
  493. package/dist/types/markers/geo/geoHover.js +1 -0
  494. package/dist/types/markers/geo/geoMarkersConfig.d.ts +11 -0
  495. package/dist/types/markers/geo/geoMarkersConfig.js +1 -0
  496. package/dist/types/markers/geo/graticule.d.ts +11 -0
  497. package/dist/types/markers/geo/graticule.js +1 -0
  498. package/dist/types/markers/geo/inset.d.ts +50 -0
  499. package/dist/types/markers/geo/inset.js +1 -0
  500. package/dist/types/markers/geo/link.d.ts +13 -0
  501. package/dist/types/markers/geo/link.js +1 -0
  502. package/dist/types/markers/geo/sphere.d.ts +11 -0
  503. package/dist/types/markers/geo/sphere.js +1 -0
  504. package/dist/types/markers/geo/vector.d.ts +17 -0
  505. package/dist/types/markers/geo/vector.js +1 -0
  506. package/dist/types/markers/geo.d.ts +10 -212
  507. package/dist/types/markers/geo.js +10 -1
  508. package/dist/types/markers/traits.d.ts +22 -0
  509. package/dist/types/markers/traits.js +1 -0
  510. package/dist/types/misc/easing.js +1 -0
  511. package/dist/types/misc/viewport.js +1 -0
  512. package/dist/types/phases/data/axes.d.ts +18 -0
  513. package/dist/types/phases/data/axes.js +1 -0
  514. package/dist/types/phases/data/phase.d.ts +26 -0
  515. package/dist/types/phases/data/phase.js +2 -0
  516. package/dist/types/phases/facet/phase.d.ts +18 -0
  517. package/dist/types/phases/facet/phase.js +1 -0
  518. package/dist/types/phases/hover/phase.d.ts +34 -0
  519. package/dist/types/phases/hover/phase.js +1 -0
  520. package/dist/types/phases/index.d.ts +14 -0
  521. package/dist/types/phases/index.js +1 -0
  522. package/dist/types/phases/kind.d.ts +59 -0
  523. package/dist/types/phases/kind.js +1 -0
  524. package/dist/types/phases/mapping/phase.d.ts +5 -0
  525. package/dist/types/phases/mapping/phase.js +1 -0
  526. package/dist/types/phases/markers/phase.d.ts +13 -0
  527. package/dist/types/phases/markers/phase.js +1 -0
  528. package/dist/types/phases/pipeline.d.ts +10 -0
  529. package/dist/types/phases/pipeline.js +1 -0
  530. package/dist/types/phases/scales/phase.d.ts +26 -0
  531. package/dist/types/phases/scales/phase.js +1 -0
  532. package/dist/types/phases/sharedScales/phase.d.ts +12 -0
  533. package/dist/types/phases/sharedScales/phase.js +1 -0
  534. package/dist/types/phases/stage.d.ts +12 -0
  535. package/dist/types/phases/stage.js +1 -0
  536. package/dist/types/phases/state.d.ts +73 -0
  537. package/dist/types/phases/state.js +1 -0
  538. package/dist/types/phases/statistics/phase.d.ts +41 -0
  539. package/dist/types/phases/statistics/phase.js +1 -0
  540. package/dist/types/phases/statistics/source.d.ts +20 -0
  541. package/dist/types/phases/statistics/source.js +7 -0
  542. package/dist/types/phases/styles/phase.d.ts +24 -0
  543. package/dist/types/phases/styles/phase.js +1 -0
  544. package/dist/types/phases/transforms/adapter.d.ts +27 -0
  545. package/dist/types/phases/transforms/adapter.js +1 -0
  546. package/dist/types/phases/transforms/phase.d.ts +40 -0
  547. package/dist/types/phases/transforms/phase.js +1 -0
  548. package/dist/types/plots/area/props.d.ts +10 -0
  549. package/dist/types/plots/area/props.js +1 -0
  550. package/dist/types/plots/area/state.d.ts +6 -0
  551. package/dist/types/plots/area/state.js +1 -0
  552. package/dist/types/plots/bar/props.d.ts +10 -0
  553. package/dist/types/plots/bar/props.js +1 -0
  554. package/dist/types/plots/bar/state.d.ts +6 -0
  555. package/dist/types/plots/bar/state.js +1 -0
  556. package/dist/types/plots/camera.d.ts +7 -17
  557. package/dist/types/plots/constants.d.ts +16 -8
  558. package/dist/types/plots/data/common.d.ts +25 -17
  559. package/dist/types/plots/data/geo.d.ts +26 -12
  560. package/dist/types/plots/gaps.d.ts +19 -38
  561. package/dist/types/plots/geo/props.d.ts +23 -0
  562. package/dist/types/plots/geo/props.js +1 -0
  563. package/dist/types/plots/geo/state.d.ts +82 -0
  564. package/dist/types/plots/geo/state.js +1 -0
  565. package/dist/types/plots/heatmap/props.d.ts +10 -0
  566. package/dist/types/plots/heatmap/props.js +1 -0
  567. package/dist/types/plots/heatmap/state.d.ts +28 -0
  568. package/dist/types/plots/heatmap/state.js +1 -0
  569. package/dist/types/plots/histogram/props.d.ts +18 -0
  570. package/dist/types/plots/histogram/props.js +1 -0
  571. package/dist/types/plots/histogram/state.d.ts +6 -0
  572. package/dist/types/plots/histogram/state.js +1 -0
  573. package/dist/types/plots/line/props.d.ts +10 -0
  574. package/dist/types/plots/line/props.js +1 -0
  575. package/dist/types/plots/line/state.d.ts +9 -0
  576. package/dist/types/plots/line/state.js +1 -0
  577. package/dist/types/plots/props.d.ts +143 -35
  578. package/dist/types/plots/pyramid/props.d.ts +10 -0
  579. package/dist/types/plots/pyramid/props.js +1 -0
  580. package/dist/types/plots/pyramid/state.d.ts +16 -0
  581. package/dist/types/plots/pyramid/state.js +1 -0
  582. package/dist/types/plots/scatter/props.d.ts +10 -0
  583. package/dist/types/plots/scatter/props.js +1 -0
  584. package/dist/types/plots/scatter/state.d.ts +6 -0
  585. package/dist/types/plots/scatter/state.js +1 -0
  586. package/dist/types/plots/segments/common.d.ts +1 -1
  587. package/dist/types/plots/segments/config.d.ts +12 -6
  588. package/dist/types/plots/styling.d.ts +5 -5
  589. package/dist/types/transforms/bin.d.ts +84 -0
  590. package/dist/types/transforms/bin.js +28 -0
  591. package/dist/types/transforms/bollinger.d.ts +21 -0
  592. package/dist/types/transforms/bollinger.js +1 -0
  593. package/dist/types/transforms/common.d.ts +29 -0
  594. package/dist/types/transforms/common.js +16 -0
  595. package/dist/types/transforms/density.d.ts +45 -0
  596. package/dist/types/transforms/density.js +10 -0
  597. package/dist/types/transforms/filter.d.ts +12 -0
  598. package/dist/types/transforms/filter.js +14 -0
  599. package/dist/types/transforms/group.d.ts +70 -0
  600. package/dist/types/transforms/group.js +8 -0
  601. package/dist/types/transforms/index.d.ts +36 -0
  602. package/dist/types/transforms/index.js +1 -0
  603. package/dist/types/transforms/interval.d.ts +21 -0
  604. package/dist/types/transforms/interval.js +14 -0
  605. package/dist/types/transforms/jitter.d.ts +34 -0
  606. package/dist/types/transforms/jitter.js +1 -0
  607. package/dist/types/transforms/map.d.ts +24 -0
  608. package/dist/types/transforms/map.js +1 -0
  609. package/dist/types/transforms/normalize.d.ts +36 -0
  610. package/dist/types/transforms/normalize.js +1 -0
  611. package/dist/types/transforms/select.d.ts +15 -0
  612. package/dist/types/transforms/select.js +1 -0
  613. package/dist/types/transforms/shift.d.ts +20 -0
  614. package/dist/types/transforms/shift.js +1 -0
  615. package/dist/types/transforms/sort.d.ts +31 -0
  616. package/dist/types/transforms/sort.js +14 -0
  617. package/dist/types/transforms/stack.d.ts +64 -0
  618. package/dist/types/transforms/stack.js +12 -0
  619. package/dist/types/transforms/window.d.ts +29 -0
  620. package/dist/types/transforms/window.js +1 -0
  621. package/dist/utils/ContinuousDomain.d.ts +12 -0
  622. package/dist/utils/ContinuousDomain.js +19 -0
  623. package/dist/utils/Interpolation.d.ts +26 -0
  624. package/dist/utils/Interpolation.js +65 -0
  625. package/dist/utils/{color.d.ts → color/contrast.d.ts} +0 -5
  626. package/dist/utils/color/contrast.js +40 -0
  627. package/dist/utils/color/cssColor.d.ts +4 -0
  628. package/dist/utils/color/cssColor.js +77 -0
  629. package/dist/utils/color/index.d.ts +3 -0
  630. package/dist/utils/color/index.js +3 -0
  631. package/dist/utils/color/ramp.d.ts +17 -0
  632. package/dist/utils/color/ramp.js +110 -0
  633. package/dist/utils/grouping.d.ts +9 -5
  634. package/dist/utils/grouping.js +19 -10
  635. package/dist/utils/merge.d.ts +7 -0
  636. package/dist/utils/merge.js +17 -0
  637. package/dist/utils/opacity.d.ts +9 -0
  638. package/dist/utils/opacity.js +38 -0
  639. package/dist/utils/symbol.d.ts +31 -0
  640. package/dist/utils/symbol.js +92 -0
  641. package/docs/architecture.md +137 -0
  642. package/docs/chrome.md +68 -0
  643. package/docs/composer.md +53 -0
  644. package/docs/concepts.md +99 -0
  645. package/docs/development.md +94 -0
  646. package/docs/facets.md +69 -0
  647. package/docs/geo.md +151 -0
  648. package/docs/getting-started.md +79 -0
  649. package/docs/legend.md +106 -0
  650. package/docs/markers.md +106 -0
  651. package/docs/plots.md +158 -0
  652. package/docs/scales.md +78 -0
  653. package/docs/state.md +71 -0
  654. package/docs/styles-and-segments.md +215 -0
  655. package/docs/theming.md +215 -0
  656. package/docs/timeline.md +94 -0
  657. package/docs/tooltip-and-hover.md +80 -0
  658. package/docs/transforms-and-statistics.md +88 -0
  659. package/examples/BarValues.svelte +14 -0
  660. package/examples/CustomTooltip.svelte +37 -0
  661. package/examples/Facets.svelte +15 -0
  662. package/examples/LegendReader.svelte +8 -0
  663. package/examples/LegendToggle.svelte +25 -0
  664. package/examples/ResponsiveLine.svelte +37 -0
  665. package/examples/Segments.svelte +17 -0
  666. package/examples/TimelinePlayer.svelte +20 -0
  667. package/examples/Tooltip.svelte +19 -0
  668. package/examples/TooltipCard.svelte +86 -0
  669. package/examples/data.ts +12 -0
  670. package/llms-full.txt +114 -0
  671. package/llms.txt +49 -0
  672. package/package.json +41 -5
  673. package/dist/charts/BaseChart.svelte +0 -149
  674. package/dist/charts/BaseChart.svelte.d.ts +0 -47
  675. package/dist/charts/bar/Chart.svelte +0 -110
  676. package/dist/charts/bar/Chart.svelte.d.ts +0 -26
  677. package/dist/charts/container/ChartContainer.svelte +0 -137
  678. package/dist/charts/container/ChartContainer.svelte.d.ts +0 -16
  679. package/dist/charts/heatmap/Chart.svelte +0 -114
  680. package/dist/charts/line/Chart.svelte +0 -112
  681. package/dist/charts/line/Chart.svelte.d.ts +0 -26
  682. package/dist/charts/pyramid/Chart.svelte +0 -134
  683. package/dist/charts/pyramid/Chart.svelte.d.ts +0 -30
  684. package/dist/charts/scatter/Chart.svelte +0 -95
  685. package/dist/charts/scatter/Chart.svelte.d.ts +0 -28
  686. package/dist/layout/coordinates/margins.d.ts +0 -16
  687. package/dist/layout/coordinates/margins.js +0 -11
  688. package/dist/layout/legend/interaction.svelte.d.ts +0 -15
  689. package/dist/layout/legend/interaction.svelte.js +0 -32
  690. package/dist/layout/plot/BasePlotLayout.svelte +0 -332
  691. package/dist/layout/plot/BasePlotLayout.svelte.d.ts +0 -122
  692. package/dist/layout/plot/margins.d.ts +0 -18
  693. package/dist/layout/plot/margins.js +0 -15
  694. package/dist/layout/plot/measureText.d.ts +0 -4
  695. package/dist/layout/plot/measureText.js +0 -19
  696. package/dist/layout/tooltip/TooltipLayout.svelte +0 -51
  697. package/dist/layout/tooltip/TooltipLayout.svelte.d.ts +0 -45
  698. package/dist/layout/tooltip/controller.svelte.d.ts +0 -61
  699. package/dist/layout/tooltip/controller.svelte.js +0 -173
  700. package/dist/layout/tooltip/hover.svelte.d.ts +0 -7
  701. package/dist/layout/tooltip/hover.svelte.js +0 -28
  702. package/dist/layout/tooltip/resolveTooltipPlacement.d.ts +0 -24
  703. package/dist/layout/tooltip/resolveTooltipPlacement.js +0 -49
  704. package/dist/layout/tooltip/utils.d.ts +0 -49
  705. package/dist/layout/tooltip/utils.js +0 -82
  706. package/dist/markers/CellMarker.svelte +0 -21
  707. package/dist/markers/ContourClipMarker.svelte +0 -77
  708. package/dist/markers/ContourMarker.svelte +0 -28
  709. package/dist/markers/DeltaMarker.svelte +0 -109
  710. package/dist/markers/DotMarker.svelte +0 -70
  711. package/dist/markers/GeoFeaturesMarker.svelte +0 -19
  712. package/dist/markers/GeoHoverMarker.svelte +0 -25
  713. package/dist/markers/GraticuleMarker.svelte +0 -18
  714. package/dist/markers/HoverMarker.svelte +0 -212
  715. package/dist/markers/LineMarker.svelte +0 -19
  716. package/dist/markers/LinkMarker.svelte +0 -42
  717. package/dist/markers/PeakMarker.svelte +0 -80
  718. package/dist/markers/PeakMarker.svelte.d.ts +0 -13
  719. package/dist/markers/RuleMarker.svelte +0 -24
  720. package/dist/markers/SphereMarker.svelte +0 -15
  721. package/dist/markers/TextMarker.svelte +0 -62
  722. package/dist/markers/VectorMarker.svelte +0 -20
  723. package/dist/plots/bar/ValueLabels.svelte +0 -149
  724. package/dist/plots/bar/ValueLabels.svelte.d.ts +0 -58
  725. package/dist/plots/bar/buildBarMarkers.d.ts +0 -27
  726. package/dist/plots/bar/buildBarMarkers.js +0 -151
  727. package/dist/plots/bar/hoverPoints.d.ts +0 -15
  728. package/dist/plots/bar/hoverPoints.js +0 -37
  729. package/dist/plots/bar/layout.svelte.d.ts +0 -42
  730. package/dist/plots/bar/layout.svelte.js +0 -182
  731. package/dist/plots/geo/buildGeoMarkers.d.ts +0 -33
  732. package/dist/plots/geo/buildGeoMarkers.js +0 -47
  733. package/dist/plots/heatmap/ValueLabels.svelte +0 -56
  734. package/dist/plots/heatmap/buildCellMarkers.d.ts +0 -21
  735. package/dist/plots/heatmap/buildCellMarkers.js +0 -25
  736. package/dist/plots/line/ValueLabels.svelte +0 -269
  737. package/dist/plots/line/ValueLabels.svelte.d.ts +0 -52
  738. package/dist/plots/line/buildGapMarkers.d.ts +0 -28
  739. package/dist/plots/line/buildGapMarkers.js +0 -74
  740. package/dist/plots/line/buildLineMarkers.d.ts +0 -16
  741. package/dist/plots/line/buildLineMarkers.js +0 -56
  742. package/dist/plots/line/valueLabelMargin.d.ts +0 -19
  743. package/dist/plots/line/valueLabelMargin.js +0 -65
  744. package/dist/plots/pyramid/ValueLabels.svelte +0 -139
  745. package/dist/plots/pyramid/ValueLabels.svelte.d.ts +0 -56
  746. package/dist/plots/pyramid/buildPyramidBarMarkers.d.ts +0 -26
  747. package/dist/plots/pyramid/buildPyramidBarMarkers.js +0 -72
  748. package/dist/plots/scatter/ValueLabels.svelte +0 -163
  749. package/dist/plots/scatter/ValueLabels.svelte.d.ts +0 -52
  750. package/dist/plots/scatter/buildScatterMarkers.d.ts +0 -12
  751. package/dist/plots/scatter/buildScatterMarkers.js +0 -36
  752. package/dist/plots/scatter/resolveRadiusPaddedDomain.d.ts +0 -10
  753. package/dist/plots/scatter/resolveRadiusPaddedDomain.js +0 -23
  754. package/dist/plots/utils/categoricalAxisMargin.d.ts +0 -14
  755. package/dist/plots/utils/categoricalAxisMargin.js +0 -20
  756. package/dist/plots/utils/declutter.d.ts +0 -120
  757. package/dist/plots/utils/declutter.js +0 -240
  758. package/dist/plots/utils/labelOverflow.svelte.d.ts +0 -107
  759. package/dist/plots/utils/labelOverflow.svelte.js +0 -257
  760. package/dist/plots/utils/legendDisabled.d.ts +0 -27
  761. package/dist/plots/utils/legendDisabled.js +0 -68
  762. package/dist/plots/utils/valueLabelMargin.d.ts +0 -67
  763. package/dist/plots/utils/valueLabelMargin.js +0 -60
  764. package/dist/types/charts/common.d.ts +0 -22
  765. package/dist/types/charts/props.d.ts +0 -50
  766. package/dist/types/markers/base.d.ts +0 -45
  767. package/dist/types/markers/line.d.ts +0 -34
  768. package/dist/types/markers/props.d.ts +0 -11
  769. package/dist/types/plots/data/scatter.d.ts +0 -13
  770. package/dist/utils/color.js +0 -141
  771. package/dist/utils/delta.d.ts +0 -12
  772. package/dist/utils/delta.js +0 -69
  773. package/dist/utils/edgeAwareAnchor.d.ts +0 -34
  774. package/dist/utils/edgeAwareAnchor.js +0 -60
  775. package/dist/utils/interpolate.d.ts +0 -31
  776. package/dist/utils/interpolate.js +0 -71
  777. /package/dist/types/{charts/common.js → layout/box.js} +0 -0
  778. /package/dist/types/{charts/interpolate.js → layout/composer.js} +0 -0
  779. /package/dist/types/{charts/props.js → layout/figure.js} +0 -0
  780. /package/dist/types/{markers/base.js → layout/grid.js} +0 -0
  781. /package/dist/types/{markers/line.js → layout/hover.js} +0 -0
  782. /package/dist/types/{markers/props.js → layout/mapping.js} +0 -0
  783. /package/dist/types/{plots/data/scatter.js → layout/plot.js} +0 -0
  784. /package/dist/types/{viewport.js → layout/statistics/bollinger.js} +0 -0
  785. /package/dist/types/{charts/interpolate.d.ts → misc/easing.d.ts} +0 -0
  786. /package/dist/types/{viewport.d.ts → misc/viewport.d.ts} +0 -0
@@ -0,0 +1,53 @@
1
+ import type { StatisticSource } from '../../types/phases/statistics/source';
2
+ import type { Series } from '../../types/plots/data/common';
3
+ import type { StatisticConfig } from '../../types/layout/statistics';
4
+ import type { AxisBasedMarkersConfig } from '../../types/markers/common';
5
+ /**
6
+ * The statistics a plot or a marker asks for, as the markers they draw as.
7
+ * Each statistic type is a class of its own under `methods/`; the same
8
+ * {@link Statistics.buildMarker} serves plot-level and marker-level attachment.
9
+ */
10
+ export declare class Statistics {
11
+ #private;
12
+ /**
13
+ * Builds one {@link StatisticConfig} over a data source into the marker it
14
+ * renders as - `regression`/`bollinger` construct their marker directly
15
+ * (svelteplot resolves the curve/band itself, at render time); the others
16
+ * compute their rows first.
17
+ */
18
+ static buildMarker<T extends Record<string, unknown>>(source: StatisticSource<T>, config: StatisticConfig): AxisBasedMarkersConfig;
19
+ /**
20
+ * Resolves a plot's own top-level `statistics` prop against its already-built
21
+ * `Series<T>[]` (every kind has this before `mapping` runs - see
22
+ * `buildSeries`) into the derived markers to append alongside the plot's own
23
+ * default markers. Default (`series` unset, `pooled` unset): one statistic per
24
+ * series, using that series' own data/accessors/color, so a plot grouped by
25
+ * `color` gets its statistics grouped the same way. `pooled: true`: one
26
+ * statistic over every series combined (using the first series' own `x`/`y`,
27
+ * same convention the shared "mapping" stage uses for a shared
28
+ * accessor). Named `series`: one statistic per listed series.
29
+ */
30
+ static buildForPlot<T extends Record<string, unknown>>(args: {
31
+ series: Series<T>[];
32
+ statistics: StatisticConfig[] | undefined;
33
+ colorFor?: (seriesName: string) => string;
34
+ }): AxisBasedMarkersConfig[];
35
+ /**
36
+ * Expands each marker's own `.statistics` into derived markers, spliced in
37
+ * right after their source so a derived marker always renders on top of it.
38
+ * `fallbackData` mirrors `GeometryLayout`'s own `marker.data ?? data` -
39
+ * applied here too since this runs *before* `GeometryLayout` ever sees these
40
+ * markers, on a marker that may omit its own `data` to reuse the host plot's.
41
+ * Generic over the caller's own marker union (e.g. `LinePlot`'s own
42
+ * `AxisBasedMarkersConfig`, which adds a `delta` kind on top of
43
+ * {@link AxisBasedMarkersConfig}) - untouched markers pass through as
44
+ * `TMarker`. Eligibility is structural, not a hardcoded list of `type`s: any
45
+ * marker mixing in `CommonMarkerConfig` (the "common" family) has `.x`/`.y`
46
+ * and an optional `.statistics`, so a `rule`/`hover`/`component` marker
47
+ * (neither field) always falls through the guard below untouched, and a
48
+ * future "common" marker kind is eligible with no extra bookkeeping here.
49
+ */
50
+ static expandMarkers<TMarker extends {
51
+ type: string;
52
+ }, T extends Record<string, unknown>>(markers: TMarker[], fallbackData: T[]): (TMarker | AxisBasedMarkersConfig)[];
53
+ }
@@ -0,0 +1,156 @@
1
+ import { MarkerChannels } from '../../markers/utils/MarkerChannels';
2
+ import { getConfiguration } from '../../configuration/config.svelte';
3
+ import { MovingAverageStatistic } from './methods/MovingAverageStatistic';
4
+ import { DensityStatistic } from './methods/DensityStatistic';
5
+ import { Density2dStatistic } from './methods/Density2dStatistic';
6
+ import { BoxStatistic } from './methods/BoxStatistic';
7
+ import { RegressionStatistic } from './methods/RegressionStatistic';
8
+ import { BollingerStatistic } from './methods/BollingerStatistic';
9
+ /**
10
+ * The statistics a plot or a marker asks for, as the markers they draw as.
11
+ * Each statistic type is a class of its own under `methods/`; the same
12
+ * {@link Statistics.buildMarker} serves plot-level and marker-level attachment.
13
+ */
14
+ export class Statistics {
15
+ /**
16
+ * Builds one {@link StatisticConfig} over a data source into the marker it
17
+ * renders as - `regression`/`bollinger` construct their marker directly
18
+ * (svelteplot resolves the curve/band itself, at render time); the others
19
+ * compute their rows first.
20
+ */
21
+ static buildMarker(source, config) {
22
+ switch (config.type) {
23
+ case 'movingAverage':
24
+ return MovingAverageStatistic.build(source, config);
25
+ case 'density':
26
+ return DensityStatistic.build(source, config);
27
+ case 'density2d':
28
+ return Density2dStatistic.build(source, config);
29
+ case 'box':
30
+ return BoxStatistic.build(source, config);
31
+ case 'regression':
32
+ return RegressionStatistic.build(source, config);
33
+ case 'bollinger':
34
+ return BollingerStatistic.build(source, config);
35
+ }
36
+ }
37
+ /** Narrows a `Series`'s own `Accessor<T,AxisValue>` to a source's field-key-or-function shape - safe in practice, since a real row's field key is always a string. */
38
+ static #accessor(accessor
39
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
+ ) {
41
+ return accessor;
42
+ }
43
+ /**
44
+ * Resolves a plot's own top-level `statistics` prop against its already-built
45
+ * `Series<T>[]` (every kind has this before `mapping` runs - see
46
+ * `buildSeries`) into the derived markers to append alongside the plot's own
47
+ * default markers. Default (`series` unset, `pooled` unset): one statistic per
48
+ * series, using that series' own data/accessors/color, so a plot grouped by
49
+ * `color` gets its statistics grouped the same way. `pooled: true`: one
50
+ * statistic over every series combined (using the first series' own `x`/`y`,
51
+ * same convention the shared "mapping" stage uses for a shared
52
+ * accessor). Named `series`: one statistic per listed series.
53
+ */
54
+ static buildForPlot(args) {
55
+ const { series, statistics, colorFor } = args;
56
+ if (!statistics?.length || !series.length)
57
+ return [];
58
+ return statistics.flatMap((stat) => {
59
+ if (stat.pooled && stat.series === undefined) {
60
+ const pooled = series.flatMap((s) => s.data);
61
+ const source = {
62
+ data: pooled,
63
+ x: Statistics.#accessor(series[0].x),
64
+ y: Statistics.#accessor(series[0].y),
65
+ color: colorFor?.(series[0].name)
66
+ };
67
+ return [Statistics.buildMarker(source, stat)];
68
+ }
69
+ const names = stat.series ?? series.map((s) => s.name);
70
+ return names.flatMap((name) => {
71
+ const match = series.find((s) => s.name === name);
72
+ if (!match)
73
+ return [];
74
+ const source = {
75
+ data: match.data,
76
+ x: Statistics.#accessor(match.x),
77
+ y: Statistics.#accessor(match.y),
78
+ color: colorFor?.(name)
79
+ };
80
+ return [Statistics.buildMarker(source, stat)];
81
+ });
82
+ });
83
+ }
84
+ /**
85
+ * Color a marker's own statistics inherit when its `color` channel is unset:
86
+ * its flat fill (or stroke), ignoring `none`/`transparent`. Covers both the
87
+ * plain `styles` keys and the dot-specific `dotFill`/`dotStroke`.
88
+ */
89
+ static #markerBaseColor(marker) {
90
+ const styles = marker.styles;
91
+ const pick = (key) => {
92
+ const value = styles?.[key];
93
+ return typeof value === 'string' && value !== 'none' && value !== 'transparent'
94
+ ? value
95
+ : undefined;
96
+ };
97
+ return pick('fill') ?? pick('dotFill') ?? pick('stroke') ?? pick('dotStroke');
98
+ }
99
+ /** Splits rows into one bucket per distinct `color` value, in first-seen order; rows without a value are skipped. */
100
+ static #groupRowsByColor(data, color) {
101
+ const valueOf = typeof color === 'function' ? color : (d) => d[color];
102
+ const buckets = new Map();
103
+ for (const row of data) {
104
+ const value = valueOf(row);
105
+ if (value == null)
106
+ continue;
107
+ const key = String(value);
108
+ const bucket = buckets.get(key);
109
+ if (bucket)
110
+ bucket.push(row);
111
+ else
112
+ buckets.set(key, [row]);
113
+ }
114
+ return [...buckets.values()];
115
+ }
116
+ /**
117
+ * Expands each marker's own `.statistics` into derived markers, spliced in
118
+ * right after their source so a derived marker always renders on top of it.
119
+ * `fallbackData` mirrors `GeometryLayout`'s own `marker.data ?? data` -
120
+ * applied here too since this runs *before* `GeometryLayout` ever sees these
121
+ * markers, on a marker that may omit its own `data` to reuse the host plot's.
122
+ * Generic over the caller's own marker union (e.g. `LinePlot`'s own
123
+ * `AxisBasedMarkersConfig`, which adds a `delta` kind on top of
124
+ * {@link AxisBasedMarkersConfig}) - untouched markers pass through as
125
+ * `TMarker`. Eligibility is structural, not a hardcoded list of `type`s: any
126
+ * marker mixing in `CommonMarkerConfig` (the "common" family) has `.x`/`.y`
127
+ * and an optional `.statistics`, so a `rule`/`hover`/`component` marker
128
+ * (neither field) always falls through the guard below untouched, and a
129
+ * future "common" marker kind is eligible with no extra bookkeeping here.
130
+ */
131
+ static expandMarkers(markers, fallbackData) {
132
+ return markers.flatMap((marker) => {
133
+ const statable = marker;
134
+ const { x, y } = statable;
135
+ // A literal position (number/Date) has no per-row values to derive statistics from.
136
+ const isAccessor = (v) => typeof v === 'string' || typeof v === 'function';
137
+ if (!statable.statistics?.length || !isAccessor(x) || !isAccessor(y))
138
+ return [marker];
139
+ const data = statable.data ?? fallbackData;
140
+ const accessors = { x: x, y: y };
141
+ // A marker's `color` channel groups it: each statistic is then derived per
142
+ // group, in that group's own color - same as a plot's statistics per series.
143
+ const colorFn = statable.color
144
+ ? MarkerChannels.buildFill(data, statable.color, statable.scales, getConfiguration())
145
+ : undefined;
146
+ const flatColor = Statistics.#markerBaseColor(statable);
147
+ const derived = statable.statistics.flatMap((stat) => {
148
+ if (!colorFn || !statable.color || stat.pooled) {
149
+ return [Statistics.buildMarker({ data, ...accessors, color: flatColor }, stat)];
150
+ }
151
+ return Statistics.#groupRowsByColor(data, statable.color).flatMap((rows) => Statistics.buildMarker({ data: rows, ...accessors, color: colorFn(rows[0]) }, stat));
152
+ });
153
+ return [marker, ...derived];
154
+ });
155
+ }
156
+ }
@@ -0,0 +1,18 @@
1
+ import type { PhaseStage, StatisticsStageOptions, StatisticsStageState } from '../../types/phases';
2
+ /**
3
+ * The "statistics" phase every axis-based plot shares: seeds `state.markers`
4
+ * with the plot-level `statistics` resolved against every series, followed by
5
+ * the author's own markers, each one inheriting the plot's grouping and color,
6
+ * drawing the plot's processed rows when it has none of its own (see
7
+ * `withProcessedRows`), running its own `transforms`, and expanding its own
8
+ * `.statistics` in place.
9
+ * Authored markers render on top of the plot-level ones. Later phases build
10
+ * onto `state.markers`. With facet panels, all of it resolves once per panel,
11
+ * over that panel's series and rows, and each marker is tagged with its panel.
12
+ */
13
+ export declare class StatisticsPhase<TState extends StatisticsStageState> implements PhaseStage<TState> {
14
+ #private;
15
+ readonly phase: "statistics";
16
+ constructor(options?: StatisticsStageOptions<TState>);
17
+ run: (state: TState) => TState;
18
+ }
@@ -0,0 +1,68 @@
1
+ import { AuthorMarkers } from './AuthorMarkers';
2
+ import { Statistics } from './Statistics';
3
+ import { PANEL_KEY, FacetPhase } from '../facet/FacetPhase';
4
+ import { TransformsPhase } from '../transforms/TransformsPhase';
5
+ import { PlotAxes } from '../data/PlotAxes';
6
+ /** Marker kinds that draw from a channel pair, so they take the plot's `x`/`y` when the author leaves one out. */
7
+ const POSITIONED_KINDS = new Set(['line', 'area', 'dot']);
8
+ /**
9
+ * The "statistics" phase every axis-based plot shares: seeds `state.markers`
10
+ * with the plot-level `statistics` resolved against every series, followed by
11
+ * the author's own markers, each one inheriting the plot's grouping and color,
12
+ * drawing the plot's processed rows when it has none of its own (see
13
+ * `withProcessedRows`), running its own `transforms`, and expanding its own
14
+ * `.statistics` in place.
15
+ * Authored markers render on top of the plot-level ones. Later phases build
16
+ * onto `state.markers`. With facet panels, all of it resolves once per panel,
17
+ * over that panel's series and rows, and each marker is tagged with its panel.
18
+ */
19
+ export class StatisticsPhase {
20
+ phase = 'statistics';
21
+ #options;
22
+ constructor(options = {}) {
23
+ this.#options = options;
24
+ }
25
+ run = (state) => {
26
+ if (!state.panels)
27
+ return { ...state, markers: this.#resolve(state) };
28
+ const markers = state.panels.flatMap((panel) => this.#resolve(FacetPhase.narrowToPanel(state, panel.key)).map((marker) => ({ ...marker, [PANEL_KEY]: panel.key })));
29
+ return { ...state, markers };
30
+ };
31
+ #resolve(state) {
32
+ const options = this.#options;
33
+ const { resolvedSeries = [], flat = [], colorForSeries, statistics, authorMarkers = [] } = state;
34
+ const { inheritGrouping = true, inheritPositions = false } = options;
35
+ const defaultColor = options.defaultColor
36
+ ? options.defaultColor(state)
37
+ : resolvedSeries[0] && colorForSeries?.(resolvedSeries[0].name);
38
+ const onProcessed = authorMarkers.map((marker) => AuthorMarkers.withProcessedRows(marker, state.processedData));
39
+ const positioned = inheritPositions
40
+ ? onProcessed.map((marker) => {
41
+ if (!POSITIONED_KINDS.has(marker.type))
42
+ return marker;
43
+ const own = marker;
44
+ return {
45
+ ...own,
46
+ x: own.x ?? resolvedSeries[0]?.x ?? state.x,
47
+ y: own.y ?? resolvedSeries[0]?.y ?? state.y
48
+ };
49
+ })
50
+ : onProcessed;
51
+ // A series setting no value of its own (a histogram's) measures its processed rows: its bins.
52
+ const valueAxis = PlotAxes.valueOf(state);
53
+ const measured = state.processedData && resolvedSeries.some((s) => s[valueAxis] === undefined)
54
+ ? TransformsPhase.buildProcessedGroups(state).map((group) => group.series)
55
+ : resolvedSeries;
56
+ return [
57
+ ...Statistics.buildForPlot({ series: measured, statistics, colorFor: colorForSeries }),
58
+ ...Statistics.expandMarkers(AuthorMarkers.prepare(positioned, {
59
+ grouping: inheritGrouping ? state.grouping : undefined,
60
+ color: inheritGrouping ? state.color : undefined,
61
+ defaultColor,
62
+ flat,
63
+ resolvedSeries,
64
+ scopedGroups: state.scopedGroups
65
+ }), flat)
66
+ ];
67
+ }
68
+ }
@@ -0,0 +1,9 @@
1
+ import type { StatisticConfig } from '../../../types/layout/statistics';
2
+ import type { BollingerMarkerConfig } from '../../../types/markers/common';
3
+ import { type StatisticSource } from '../../../types/phases/statistics/source';
4
+ /** Bollinger bands over the source, drawn as a `bollinger` marker (svelteplot computes them at render time). */
5
+ export declare class BollingerStatistic {
6
+ static build<T extends Record<string, unknown>>(source: StatisticSource<T>, config: Extract<StatisticConfig, {
7
+ type: 'bollinger';
8
+ }>): BollingerMarkerConfig;
9
+ }
@@ -0,0 +1,18 @@
1
+ import { STATISTIC_FALLBACK_COLOR } from '../../../types/phases/statistics/source';
2
+ /** Bollinger bands over the source, drawn as a `bollinger` marker (svelteplot computes them at render time). */
3
+ export class BollingerStatistic {
4
+ static build(source, config) {
5
+ return {
6
+ type: 'bollinger',
7
+ data: source.data,
8
+ x: source.x,
9
+ y: source.y,
10
+ n: config.n,
11
+ k: config.k,
12
+ styles: {
13
+ ...config.styles,
14
+ stroke: config.styles?.stroke ?? source.color ?? STATISTIC_FALLBACK_COLOR
15
+ }
16
+ };
17
+ }
18
+ }
@@ -0,0 +1,9 @@
1
+ import type { StatisticConfig } from '../../../types/layout/statistics';
2
+ import type { BoxMarkerConfig } from '../../../types/markers/common';
3
+ import { type StatisticSource } from '../../../types/phases/statistics/source';
4
+ /** Box-and-whisker summary of the source, drawn as a `box` marker. */
5
+ export declare class BoxStatistic {
6
+ static build<T extends Record<string, unknown>>(source: StatisticSource<T>, config: Extract<StatisticConfig, {
7
+ type: 'box';
8
+ }>): BoxMarkerConfig;
9
+ }
@@ -0,0 +1,18 @@
1
+ import { STATISTIC_FALLBACK_COLOR } from '../../../types/phases/statistics/source';
2
+ /** Box-and-whisker summary of the source, drawn as a `box` marker. */
3
+ export class BoxStatistic {
4
+ static build(source, config) {
5
+ return {
6
+ type: 'box',
7
+ data: source.data,
8
+ x: source.x,
9
+ y: source.y,
10
+ sort: config.sort,
11
+ bar: { fill: source.color ?? STATISTIC_FALLBACK_COLOR, ...config.bar },
12
+ rule: config.rule,
13
+ dot: config.dot,
14
+ tickMedian: config.tickMedian,
15
+ tickMinMax: config.tickMinMax
16
+ };
17
+ }
18
+ }
@@ -0,0 +1,9 @@
1
+ import type { StatisticConfig } from '../../../types/layout/statistics';
2
+ import type { DensityMarkerConfig } from '../../../types/markers/common';
3
+ import { type StatisticSource } from '../../../types/phases/statistics/source';
4
+ /** 2D kernel density over the source's `x` and `y`, drawn as a `density` marker. */
5
+ export declare class Density2dStatistic {
6
+ static build<T extends Record<string, unknown>>(source: StatisticSource<T>, config: Extract<StatisticConfig, {
7
+ type: 'density2d';
8
+ }>): DensityMarkerConfig;
9
+ }
@@ -0,0 +1,18 @@
1
+ import { STATISTIC_FALLBACK_COLOR } from '../../../types/phases/statistics/source';
2
+ /** 2D kernel density over the source's `x` and `y`, drawn as a `density` marker. */
3
+ export class Density2dStatistic {
4
+ static build(source, config) {
5
+ return {
6
+ type: 'density',
7
+ data: source.data,
8
+ x: source.x,
9
+ y: source.y,
10
+ bandwidth: config.bandwidth,
11
+ thresholds: config.thresholds,
12
+ styles: {
13
+ ...config.styles,
14
+ stroke: config.styles?.stroke ?? source.color ?? STATISTIC_FALLBACK_COLOR
15
+ }
16
+ };
17
+ }
18
+ }
@@ -0,0 +1,12 @@
1
+ import type { DensityStatisticOptions } from '../../../types/layout/statistics';
2
+ import type { AreaMarkerConfig } from '../../../types/markers/common';
3
+ import { type StatisticSource } from '../../../types/phases/statistics/source';
4
+ /** 1D kernel density over the source's `x` values, drawn as an `area` marker. */
5
+ export declare class DensityStatistic {
6
+ /**
7
+ * The `densityX` transform, wrapped into an `area` marker - the curve's own
8
+ * `x` is the value and `y` the density, so it draws on the plot's axes as-is.
9
+ * The output is one derived row per estimate point rather than one per input row.
10
+ */
11
+ static build<T extends Record<string, unknown>>(source: StatisticSource<T>, config: DensityStatisticOptions): AreaMarkerConfig;
12
+ }
@@ -0,0 +1,29 @@
1
+ import { Transforms } from '../../transforms/Transforms';
2
+ import { STATISTIC_FALLBACK_COLOR } from '../../../types/phases/statistics/source';
3
+ /** 1D kernel density over the source's `x` values, drawn as an `area` marker. */
4
+ export class DensityStatistic {
5
+ /**
6
+ * The `densityX` transform, wrapped into an `area` marker - the curve's own
7
+ * `x` is the value and `y` the density, so it draws on the plot's axes as-is.
8
+ * The output is one derived row per estimate point rather than one per input row.
9
+ */
10
+ static build(source, config) {
11
+ const result = Transforms.run({
12
+ type: 'densityX',
13
+ data: source.data,
14
+ x: source.x,
15
+ kernel: config.kernel,
16
+ bandwidth: config.bandwidth
17
+ });
18
+ return {
19
+ type: 'area',
20
+ data: result.data,
21
+ x: result.x,
22
+ y: result.y,
23
+ styles: {
24
+ ...config.styles,
25
+ fill: config.styles?.fill ?? source.color ?? STATISTIC_FALLBACK_COLOR
26
+ }
27
+ };
28
+ }
29
+ }
@@ -0,0 +1,12 @@
1
+ import type { MovingAverageStatisticOptions } from '../../../types/layout/statistics';
2
+ import type { LineMarkerConfig } from '../../../types/markers/common';
3
+ import { type StatisticSource } from '../../../types/phases/statistics/source';
4
+ /** Sliding-window reducer (mean/median/sum/...) drawn as a `line` marker. */
5
+ export declare class MovingAverageStatistic {
6
+ /**
7
+ * The `windowY` transform, wrapped into our own `line` marker - svelteplot has
8
+ * no dedicated mark for this (unlike `regression`/`bollinger`). `windowY`
9
+ * keeps one output row per input row, so `x` passes straight through.
10
+ */
11
+ static build<T extends Record<string, unknown>>(source: StatisticSource<T>, config: MovingAverageStatisticOptions): LineMarkerConfig;
12
+ }
@@ -0,0 +1,30 @@
1
+ import { Transforms } from '../../transforms/Transforms';
2
+ import { STATISTIC_FALLBACK_COLOR } from '../../../types/phases/statistics/source';
3
+ /** Sliding-window reducer (mean/median/sum/...) drawn as a `line` marker. */
4
+ export class MovingAverageStatistic {
5
+ /**
6
+ * The `windowY` transform, wrapped into our own `line` marker - svelteplot has
7
+ * no dedicated mark for this (unlike `regression`/`bollinger`). `windowY`
8
+ * keeps one output row per input row, so `x` passes straight through.
9
+ */
10
+ static build(source, config) {
11
+ const result = Transforms.run({
12
+ type: 'windowY',
13
+ data: source.data,
14
+ x: source.x,
15
+ y: source.y,
16
+ k: config.k,
17
+ reduce: config.reduce ?? 'mean'
18
+ });
19
+ return {
20
+ type: 'line',
21
+ data: result.data,
22
+ x: result.x,
23
+ y: result.y,
24
+ styles: {
25
+ ...config.styles,
26
+ stroke: config.styles?.stroke ?? source.color ?? STATISTIC_FALLBACK_COLOR
27
+ }
28
+ };
29
+ }
30
+ }
@@ -0,0 +1,9 @@
1
+ import type { StatisticConfig } from '../../../types/layout/statistics';
2
+ import type { RegressionMarkerConfig } from '../../../types/markers/common';
3
+ import { type StatisticSource } from '../../../types/phases/statistics/source';
4
+ /** A regression curve over the source, drawn as a `regression` marker (svelteplot fits it at render time). */
5
+ export declare class RegressionStatistic {
6
+ static build<T extends Record<string, unknown>>(source: StatisticSource<T>, config: Extract<StatisticConfig, {
7
+ type: 'regression';
8
+ }>): RegressionMarkerConfig;
9
+ }
@@ -0,0 +1,21 @@
1
+ import { STATISTIC_FALLBACK_COLOR } from '../../../types/phases/statistics/source';
2
+ /** A regression curve over the source, drawn as a `regression` marker (svelteplot fits it at render time). */
3
+ export class RegressionStatistic {
4
+ static build(source, config) {
5
+ return {
6
+ type: 'regression',
7
+ data: source.data,
8
+ x: source.x,
9
+ y: source.y,
10
+ regressionType: config.regressionType,
11
+ order: config.order,
12
+ base: config.base,
13
+ span: config.span,
14
+ confidence: config.confidence,
15
+ styles: {
16
+ ...config.styles,
17
+ stroke: config.styles?.stroke ?? source.color ?? STATISTIC_FALLBACK_COLOR
18
+ }
19
+ };
20
+ }
21
+ }
@@ -0,0 +1,13 @@
1
+ import type { AxisPlotState, AxisPlotCtx, PhaseStage } from '../../types/phases';
2
+ import type { StylesStageOptions } from '../../types/phases/styles/phase';
3
+ /**
4
+ * The shared "styles" phase: resolves the plot's `styles` against the plot
5
+ * kind's own defaults - its value labels (`valueLabels`), with how far they
6
+ * are expected to reach out, which its margins start from.
7
+ */
8
+ export declare class StylesPhase<TState extends AxisPlotState<any, any, any, any>, TCtx extends AxisPlotCtx> implements PhaseStage<TState, TCtx> {
9
+ #private;
10
+ readonly phase: "styles";
11
+ constructor(options?: StylesStageOptions<TState>);
12
+ run: (state: TState, ctx: TCtx) => TState;
13
+ }
@@ -0,0 +1,17 @@
1
+ import { ValueLabels } from '../../layout/styles/ValueLabels';
2
+ /**
3
+ * The shared "styles" phase: resolves the plot's `styles` against the plot
4
+ * kind's own defaults - its value labels (`valueLabels`), with how far they
5
+ * are expected to reach out, which its margins start from.
6
+ */
7
+ export class StylesPhase {
8
+ phase = 'styles';
9
+ #options;
10
+ constructor(options = {}) {
11
+ this.#options = options;
12
+ }
13
+ run = (state, ctx) => ({
14
+ ...state,
15
+ valueLabels: ValueLabels.build(state.values, ctx.cfg, this.#options.values ?? {}, state)
16
+ });
17
+ }
@@ -0,0 +1,12 @@
1
+ import type { AxisPlotState, PhaseStage } from '../../types/phases';
2
+ type AnyAxisState = AxisPlotState<any, any, any, any>;
3
+ /**
4
+ * The "tooltip" phase every axis-based plot shares: how a hovered row reads,
5
+ * as `tooltipFormat` - the same default on every plot, {@link TooltipState.default}.
6
+ * It runs after the scales, which say which axis holds categories.
7
+ */
8
+ export declare class TooltipPhase<TState extends AnyAxisState> implements PhaseStage<TState> {
9
+ readonly phase: "tooltip";
10
+ run: (state: TState) => TState;
11
+ }
12
+ export {};
@@ -0,0 +1,10 @@
1
+ import { TooltipState } from '../../layout/tooltip/TooltipState.svelte';
2
+ /**
3
+ * The "tooltip" phase every axis-based plot shares: how a hovered row reads,
4
+ * as `tooltipFormat` - the same default on every plot, {@link TooltipState.default}.
5
+ * It runs after the scales, which say which axis holds categories.
6
+ */
7
+ export class TooltipPhase {
8
+ phase = 'tooltip';
9
+ run = (state) => ({ ...state, tooltipFormat: TooltipState.default(state) });
10
+ }
@@ -0,0 +1,42 @@
1
+ import type { MarkerTransform } from '../../types/transforms';
2
+ import type { Row } from '../../types/phases/transforms/adapter';
3
+ /** Runs a marker's or a plot's transforms through svelteplot, one type's adapter at a time. */
4
+ export declare class Transforms {
5
+ /** The channels a marker hands down to its transforms, when it has them. */
6
+ static readonly INHERITED_CHANNELS: readonly ["x", "y", "x1", "x2", "y1", "y2"];
7
+ /**
8
+ * Runs one transform through svelteplot and returns what it produces - the
9
+ * transform's own output, ready to spread into the marker's props. A marker
10
+ * transform is one flat object, so its props are split once: the ones the
11
+ * transform reads as channels go first, and the rest (a stack's `offset`, a
12
+ * bin's `thresholds` and reducers) go second, as svelteplot's own signature
13
+ * takes them. An unset prop is left out, so svelteplot's own default applies.
14
+ *
15
+ * `inherited` holds the channels the marker hands down (its rows, `x`/`y`,
16
+ * grouping as `z`). Only the ones the transform reads are used, and the
17
+ * transform's own channels win over them.
18
+ */
19
+ static run(transform: MarkerTransform, inherited?: Row): Row;
20
+ /**
21
+ * Applies a marker's `transforms` in order, each one's output feeding the next.
22
+ * A transform reads the marker's own rows, position channels and `grouping`
23
+ * (its `z`) by default, falling back to the plot's rows when the marker has
24
+ * none. Any of those the transform sets itself wins. The output is merged onto
25
+ * the marker.
26
+ *
27
+ * A transform only inherits the channels it reads (its adapter's `channelKeys`),
28
+ * so a bin's reducer slot is never filled from the marker: a marker's `y` is not
29
+ * read as `binX`'s `'count'` reducer. A `z` the transform hands back becomes
30
+ * the marker's `grouping`, and a `fill`/`stroke` it reduces to becomes the
31
+ * marker's `color`, so the marker keeps drawing its groups and colors from the
32
+ * new rows. Once every transform has run, {@link Transforms.finish} applies each
33
+ * type's fix to the marker.
34
+ */
35
+ static resolve<T extends object>(marker: T, fallbackData: Row[]): T;
36
+ /**
37
+ * Applies each transform type's `finish` fix to a marker drawing rows those
38
+ * transforms produced, once per type used - for a marker built from rows that
39
+ * were transformed before it existed (a plot's own processed data).
40
+ */
41
+ static finish<T extends object>(marker: T, transforms: MarkerTransform[]): T;
42
+ }