layerchart 2.0.0-next.60 → 2.0.0-next.61

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 (862) hide show
  1. package/dist/bench/ComposableLineChart.svelte +4 -4
  2. package/dist/bench/GeoBench.svelte +2 -2
  3. package/dist/bench/PrimitiveBench.svelte +8 -8
  4. package/dist/bench/composable-vs-linechart.svelte.bench.js +1 -1
  5. package/dist/canvas.d.ts +176 -0
  6. package/dist/canvas.js +128 -0
  7. package/dist/components/{AnnotationLine.svelte → AnnotationLine/AnnotationLine.base.svelte} +26 -67
  8. package/dist/components/AnnotationLine/AnnotationLine.base.svelte.d.ts +10 -0
  9. package/dist/components/AnnotationLine/AnnotationLine.canvas.svelte +17 -0
  10. package/dist/components/AnnotationLine/AnnotationLine.canvas.svelte.d.ts +5 -0
  11. package/dist/components/AnnotationLine/AnnotationLine.html.svelte +17 -0
  12. package/dist/components/AnnotationLine/AnnotationLine.html.svelte.d.ts +5 -0
  13. package/dist/components/AnnotationLine/AnnotationLine.shared.svelte.d.ts +24 -0
  14. package/dist/components/AnnotationLine/AnnotationLine.svelte +26 -0
  15. package/dist/components/AnnotationLine/AnnotationLine.svelte.d.ts +5 -0
  16. package/dist/components/AnnotationLine/AnnotationLine.svg.svelte +17 -0
  17. package/dist/components/AnnotationLine/AnnotationLine.svg.svelte.d.ts +5 -0
  18. package/dist/components/AnnotationPoint/AnnotationPoint.base.svelte +169 -0
  19. package/dist/components/AnnotationPoint/AnnotationPoint.base.svelte.d.ts +16 -0
  20. package/dist/components/AnnotationPoint/AnnotationPoint.canvas.svelte +18 -0
  21. package/dist/components/AnnotationPoint/AnnotationPoint.canvas.svelte.d.ts +5 -0
  22. package/dist/components/AnnotationPoint/AnnotationPoint.html.svelte +18 -0
  23. package/dist/components/AnnotationPoint/AnnotationPoint.html.svelte.d.ts +5 -0
  24. package/dist/components/AnnotationPoint/AnnotationPoint.shared.svelte.d.ts +24 -0
  25. package/dist/components/{AnnotationPoint.svelte → AnnotationPoint/AnnotationPoint.svelte} +8 -8
  26. package/dist/components/{AnnotationPoint.svelte.d.ts → AnnotationPoint/AnnotationPoint.svelte.d.ts} +6 -6
  27. package/dist/components/AnnotationPoint/AnnotationPoint.svg.svelte +18 -0
  28. package/dist/components/AnnotationPoint/AnnotationPoint.svg.svelte.d.ts +5 -0
  29. package/dist/components/{AnnotationRange.svelte → AnnotationRange/AnnotationRange.base.svelte} +25 -62
  30. package/dist/components/AnnotationRange/AnnotationRange.base.svelte.d.ts +12 -0
  31. package/dist/components/AnnotationRange/AnnotationRange.canvas.svelte +19 -0
  32. package/dist/components/AnnotationRange/AnnotationRange.canvas.svelte.d.ts +5 -0
  33. package/dist/components/AnnotationRange/AnnotationRange.html.svelte +19 -0
  34. package/dist/components/AnnotationRange/AnnotationRange.html.svelte.d.ts +5 -0
  35. package/dist/components/AnnotationRange/AnnotationRange.shared.svelte.d.ts +26 -0
  36. package/dist/components/AnnotationRange/AnnotationRange.svelte +26 -0
  37. package/dist/components/AnnotationRange/AnnotationRange.svelte.d.ts +5 -0
  38. package/dist/components/AnnotationRange/AnnotationRange.svg.svelte +19 -0
  39. package/dist/components/AnnotationRange/AnnotationRange.svg.svelte.d.ts +5 -0
  40. package/dist/components/Arc/Arc.base.svelte +109 -0
  41. package/dist/components/Arc/Arc.base.svelte.d.ts +9 -0
  42. package/dist/components/Arc/Arc.canvas.svelte +14 -0
  43. package/dist/components/Arc/Arc.canvas.svelte.d.ts +5 -0
  44. package/dist/components/Arc/Arc.shared.svelte.d.ts +165 -0
  45. package/dist/components/Arc/Arc.shared.svelte.js +127 -0
  46. package/dist/components/Arc/Arc.svelte +20 -0
  47. package/dist/components/Arc/Arc.svelte.d.ts +5 -0
  48. package/dist/components/{Arc.svelte.test.js → Arc/Arc.svelte.test.js} +2 -2
  49. package/dist/components/Arc/Arc.svg.svelte +14 -0
  50. package/dist/components/Arc/Arc.svg.svelte.d.ts +5 -0
  51. package/dist/components/ArcLabel/ArcLabel.base.svelte +61 -0
  52. package/dist/components/ArcLabel/ArcLabel.base.svelte.d.ts +10 -0
  53. package/dist/components/ArcLabel/ArcLabel.canvas.svelte +19 -0
  54. package/dist/components/ArcLabel/ArcLabel.canvas.svelte.d.ts +5 -0
  55. package/dist/components/ArcLabel/ArcLabel.shared.svelte.d.ts +90 -0
  56. package/dist/components/ArcLabel/ArcLabel.shared.svelte.js +124 -0
  57. package/dist/components/ArcLabel/ArcLabel.svelte +24 -0
  58. package/dist/components/ArcLabel/ArcLabel.svelte.d.ts +5 -0
  59. package/dist/components/ArcLabel/ArcLabel.svg.svelte +19 -0
  60. package/dist/components/ArcLabel/ArcLabel.svg.svelte.d.ts +5 -0
  61. package/dist/components/ArcLabel.svelte.test.js +2 -2
  62. package/dist/components/Area/Area.base.svelte +73 -0
  63. package/dist/components/Area/Area.base.svelte.d.ts +10 -0
  64. package/dist/components/Area/Area.canvas.svelte +15 -0
  65. package/dist/components/Area/Area.canvas.svelte.d.ts +5 -0
  66. package/dist/components/Area/Area.shared.svelte.d.ts +57 -0
  67. package/dist/components/Area/Area.shared.svelte.js +157 -0
  68. package/dist/components/Area/Area.svelte +20 -0
  69. package/dist/components/Area/Area.svelte.d.ts +5 -0
  70. package/dist/components/Area/Area.svg.svelte +15 -0
  71. package/dist/components/Area/Area.svg.svelte.d.ts +5 -0
  72. package/dist/components/Axis/Axis.base.svelte +195 -0
  73. package/dist/components/Axis/Axis.base.svelte.d.ts +40 -0
  74. package/dist/components/Axis/Axis.canvas.svelte +18 -0
  75. package/dist/components/Axis/Axis.canvas.svelte.d.ts +27 -0
  76. package/dist/components/Axis/Axis.html.svelte +18 -0
  77. package/dist/components/Axis/Axis.html.svelte.d.ts +27 -0
  78. package/dist/components/{Axis.svelte.d.ts → Axis/Axis.shared.svelte.d.ts} +56 -35
  79. package/dist/components/Axis/Axis.shared.svelte.js +330 -0
  80. package/dist/components/Axis/Axis.svelte +24 -0
  81. package/dist/components/Axis/Axis.svelte.d.ts +27 -0
  82. package/dist/components/Axis/Axis.svg.svelte +18 -0
  83. package/dist/components/Axis/Axis.svg.svelte.d.ts +27 -0
  84. package/dist/components/Bar/Bar.base.svelte +132 -0
  85. package/dist/components/Bar/Bar.base.svelte.d.ts +14 -0
  86. package/dist/components/Bar/Bar.canvas.svelte +15 -0
  87. package/dist/components/Bar/Bar.canvas.svelte.d.ts +5 -0
  88. package/dist/components/Bar/Bar.html.svelte +15 -0
  89. package/dist/components/Bar/Bar.html.svelte.d.ts +5 -0
  90. package/dist/components/Bar/Bar.shared.svelte.d.ts +88 -0
  91. package/dist/components/Bar/Bar.shared.svelte.js +142 -0
  92. package/dist/components/Bar/Bar.svelte +23 -0
  93. package/dist/components/Bar/Bar.svelte.d.ts +5 -0
  94. package/dist/components/Bar/Bar.svg.svelte +15 -0
  95. package/dist/components/Bar/Bar.svg.svelte.d.ts +5 -0
  96. package/dist/components/Bars/Bars.base.svelte +67 -0
  97. package/dist/components/Bars/Bars.base.svelte.d.ts +10 -0
  98. package/dist/components/Bars/Bars.canvas.svelte +15 -0
  99. package/dist/components/Bars/Bars.canvas.svelte.d.ts +5 -0
  100. package/dist/components/Bars/Bars.html.svelte +15 -0
  101. package/dist/components/Bars/Bars.html.svelte.d.ts +5 -0
  102. package/dist/components/Bars/Bars.shared.svelte.d.ts +31 -0
  103. package/dist/components/Bars/Bars.shared.svelte.js +30 -0
  104. package/dist/components/Bars/Bars.svelte +23 -0
  105. package/dist/components/Bars/Bars.svelte.d.ts +5 -0
  106. package/dist/components/Bars/Bars.svg.svelte +15 -0
  107. package/dist/components/Bars/Bars.svg.svelte.d.ts +5 -0
  108. package/dist/components/BoxPlot/BoxPlot.base.svelte +195 -0
  109. package/dist/components/BoxPlot/BoxPlot.base.svelte.d.ts +12 -0
  110. package/dist/components/BoxPlot/BoxPlot.canvas.svelte +16 -0
  111. package/dist/components/BoxPlot/BoxPlot.canvas.svelte.d.ts +5 -0
  112. package/dist/components/BoxPlot/BoxPlot.shared.svelte.d.ts +24 -0
  113. package/dist/components/BoxPlot/BoxPlot.svelte +20 -0
  114. package/dist/components/BoxPlot/BoxPlot.svelte.d.ts +5 -0
  115. package/dist/components/BoxPlot/BoxPlot.svg.svelte +16 -0
  116. package/dist/components/BoxPlot/BoxPlot.svg.svelte.d.ts +5 -0
  117. package/dist/components/BrushContext.svelte.test.js +1 -1
  118. package/dist/components/{Calendar.svelte → Calendar/Calendar.base.svelte} +17 -64
  119. package/dist/components/Calendar/Calendar.base.svelte.d.ts +10 -0
  120. package/dist/components/Calendar/Calendar.canvas.svelte +18 -0
  121. package/dist/components/Calendar/Calendar.canvas.svelte.d.ts +5 -0
  122. package/dist/components/Calendar/Calendar.html.svelte +18 -0
  123. package/dist/components/Calendar/Calendar.html.svelte.d.ts +5 -0
  124. package/dist/components/Calendar/Calendar.shared.svelte.d.ts +26 -0
  125. package/dist/components/Calendar/Calendar.svelte +27 -0
  126. package/dist/components/Calendar/Calendar.svelte.d.ts +5 -0
  127. package/dist/components/Calendar/Calendar.svg.svelte +18 -0
  128. package/dist/components/Calendar/Calendar.svg.svelte.d.ts +5 -0
  129. package/dist/components/Cell/Cell.base.svelte +41 -0
  130. package/dist/components/Cell/Cell.base.svelte.d.ts +11 -0
  131. package/dist/components/Cell/Cell.canvas.svelte +15 -0
  132. package/dist/components/Cell/Cell.canvas.svelte.d.ts +5 -0
  133. package/dist/components/Cell/Cell.html.svelte +15 -0
  134. package/dist/components/Cell/Cell.html.svelte.d.ts +5 -0
  135. package/dist/components/Cell/Cell.shared.svelte.d.ts +10 -0
  136. package/dist/components/Cell/Cell.svelte +23 -0
  137. package/dist/components/Cell/Cell.svelte.d.ts +5 -0
  138. package/dist/components/Cell/Cell.svg.svelte +15 -0
  139. package/dist/components/Cell/Cell.svg.svelte.d.ts +5 -0
  140. package/dist/components/Chart/Chart.base.svelte +532 -0
  141. package/dist/components/Chart/Chart.base.svelte.d.ts +39 -0
  142. package/dist/components/Chart/Chart.canvas.svelte +28 -0
  143. package/dist/components/Chart/Chart.canvas.svelte.d.ts +27 -0
  144. package/dist/components/Chart/Chart.html.svelte +28 -0
  145. package/dist/components/Chart/Chart.html.svelte.d.ts +27 -0
  146. package/dist/components/Chart/Chart.shared.svelte.d.ts +179 -0
  147. package/dist/components/Chart/Chart.svelte +28 -0
  148. package/dist/components/Chart/Chart.svelte.d.ts +27 -0
  149. package/dist/components/Chart/Chart.svg.svelte +28 -0
  150. package/dist/components/Chart/Chart.svg.svelte.d.ts +27 -0
  151. package/dist/components/Chart/ChartCore.svelte +36 -0
  152. package/dist/components/Chart/ChartCore.svelte.d.ts +27 -0
  153. package/dist/components/ChartChildren/ChartChildren.base.svelte +212 -0
  154. package/dist/components/ChartChildren/ChartChildren.base.svelte.d.ts +44 -0
  155. package/dist/components/ChartChildren/ChartChildren.canvas.svelte +23 -0
  156. package/dist/components/ChartChildren/ChartChildren.canvas.svelte.d.ts +27 -0
  157. package/dist/components/ChartChildren/ChartChildren.html.svelte +23 -0
  158. package/dist/components/ChartChildren/ChartChildren.html.svelte.d.ts +27 -0
  159. package/dist/components/{ChartChildren.svelte.d.ts → ChartChildren/ChartChildren.shared.svelte.d.ts} +26 -49
  160. package/dist/components/ChartChildren/ChartChildren.svelte +23 -0
  161. package/dist/components/ChartChildren/ChartChildren.svelte.d.ts +27 -0
  162. package/dist/components/ChartChildren/ChartChildren.svg.svelte +23 -0
  163. package/dist/components/ChartChildren/ChartChildren.svg.svelte.d.ts +27 -0
  164. package/dist/components/ChartClipPath/ChartClipPath.base.svelte +33 -0
  165. package/dist/components/ChartClipPath/ChartClipPath.base.svelte.d.ts +9 -0
  166. package/dist/components/ChartClipPath/ChartClipPath.canvas.svelte +14 -0
  167. package/dist/components/ChartClipPath/ChartClipPath.canvas.svelte.d.ts +5 -0
  168. package/dist/components/ChartClipPath/ChartClipPath.html.svelte +14 -0
  169. package/dist/components/ChartClipPath/ChartClipPath.html.svelte.d.ts +5 -0
  170. package/dist/components/ChartClipPath/ChartClipPath.shared.svelte.d.ts +11 -0
  171. package/dist/components/ChartClipPath/ChartClipPath.shared.svelte.js +1 -0
  172. package/dist/components/ChartClipPath/ChartClipPath.svelte +23 -0
  173. package/dist/components/ChartClipPath/ChartClipPath.svelte.d.ts +5 -0
  174. package/dist/components/ChartClipPath/ChartClipPath.svg.svelte +14 -0
  175. package/dist/components/ChartClipPath/ChartClipPath.svg.svelte.d.ts +5 -0
  176. package/dist/components/ChartCore.svelte.test.d.ts +1 -0
  177. package/dist/components/ChartCore.svelte.test.js +50 -0
  178. package/dist/components/Circle/Circle.canvas.svelte +128 -0
  179. package/dist/components/Circle/Circle.canvas.svelte.d.ts +5 -0
  180. package/dist/components/Circle/Circle.html.svelte +113 -0
  181. package/dist/components/Circle/Circle.html.svelte.d.ts +5 -0
  182. package/dist/components/{Circle.svelte.d.ts → Circle/Circle.shared.svelte.d.ts} +66 -7
  183. package/dist/components/Circle/Circle.shared.svelte.js +138 -0
  184. package/dist/components/Circle/Circle.svelte +28 -0
  185. package/dist/components/Circle/Circle.svelte.d.ts +5 -0
  186. package/dist/components/Circle/Circle.svelte.test.d.ts +1 -0
  187. package/dist/components/{Circle.svelte.test.js → Circle/Circle.svelte.test.js} +1 -1
  188. package/dist/components/Circle/Circle.svg.svelte +91 -0
  189. package/dist/components/Circle/Circle.svg.svelte.d.ts +5 -0
  190. package/dist/components/CircleClipPath/CircleClipPath.base.svelte +34 -0
  191. package/dist/components/CircleClipPath/CircleClipPath.base.svelte.d.ts +9 -0
  192. package/dist/components/CircleClipPath/CircleClipPath.canvas.svelte +13 -0
  193. package/dist/components/CircleClipPath/CircleClipPath.canvas.svelte.d.ts +5 -0
  194. package/dist/components/CircleClipPath/CircleClipPath.html.svelte +13 -0
  195. package/dist/components/CircleClipPath/CircleClipPath.html.svelte.d.ts +5 -0
  196. package/dist/components/CircleClipPath/CircleClipPath.shared.svelte.d.ts +20 -0
  197. package/dist/components/CircleClipPath/CircleClipPath.shared.svelte.js +1 -0
  198. package/dist/components/CircleClipPath/CircleClipPath.svelte +23 -0
  199. package/dist/components/CircleClipPath/CircleClipPath.svelte.d.ts +5 -0
  200. package/dist/components/CircleClipPath/CircleClipPath.svg.svelte +13 -0
  201. package/dist/components/CircleClipPath/CircleClipPath.svg.svelte.d.ts +5 -0
  202. package/dist/components/ClipPath/ClipPath.canvas.svelte +45 -0
  203. package/dist/components/ClipPath/ClipPath.canvas.svelte.d.ts +5 -0
  204. package/dist/components/ClipPath/ClipPath.html.svelte +42 -0
  205. package/dist/components/ClipPath/ClipPath.html.svelte.d.ts +5 -0
  206. package/dist/components/ClipPath/ClipPath.shared.svelte.d.ts +43 -0
  207. package/dist/components/ClipPath/ClipPath.shared.svelte.js +19 -0
  208. package/dist/components/ClipPath/ClipPath.svelte +23 -0
  209. package/dist/components/ClipPath/ClipPath.svelte.d.ts +5 -0
  210. package/dist/components/ClipPath/ClipPath.svg.svelte +49 -0
  211. package/dist/components/ClipPath/ClipPath.svg.svelte.d.ts +5 -0
  212. package/dist/components/{Contour.svelte → Contour/Contour.base.svelte} +20 -75
  213. package/dist/components/Contour/Contour.base.svelte.d.ts +10 -0
  214. package/dist/components/Contour/Contour.canvas.svelte +14 -0
  215. package/dist/components/Contour/Contour.canvas.svelte.d.ts +5 -0
  216. package/dist/components/Contour/Contour.shared.svelte.d.ts +26 -0
  217. package/dist/components/Contour/Contour.shared.svelte.js +1 -0
  218. package/dist/components/Contour/Contour.svelte +20 -0
  219. package/dist/components/Contour/Contour.svelte.d.ts +5 -0
  220. package/dist/components/Contour/Contour.svg.svelte +14 -0
  221. package/dist/components/Contour/Contour.svg.svelte.d.ts +5 -0
  222. package/dist/components/{Density.svelte → Density/Density.base.svelte} +16 -35
  223. package/dist/components/Density/Density.base.svelte.d.ts +10 -0
  224. package/dist/components/Density/Density.canvas.svelte +14 -0
  225. package/dist/components/Density/Density.canvas.svelte.d.ts +5 -0
  226. package/dist/components/Density/Density.shared.svelte.d.ts +14 -0
  227. package/dist/components/Density/Density.shared.svelte.js +1 -0
  228. package/dist/components/Density/Density.svelte +20 -0
  229. package/dist/components/Density/Density.svelte.d.ts +5 -0
  230. package/dist/components/Density/Density.svg.svelte +14 -0
  231. package/dist/components/Density/Density.svg.svelte.d.ts +5 -0
  232. package/dist/components/Ellipse/Ellipse.canvas.svelte +113 -0
  233. package/dist/components/Ellipse/Ellipse.canvas.svelte.d.ts +5 -0
  234. package/dist/components/Ellipse/Ellipse.html.svelte +92 -0
  235. package/dist/components/Ellipse/Ellipse.html.svelte.d.ts +5 -0
  236. package/dist/components/Ellipse/Ellipse.shared.svelte.d.ts +70 -0
  237. package/dist/components/Ellipse/Ellipse.shared.svelte.js +133 -0
  238. package/dist/components/Ellipse/Ellipse.svelte +26 -0
  239. package/dist/components/Ellipse/Ellipse.svelte.d.ts +5 -0
  240. package/dist/components/Ellipse/Ellipse.svelte.test.d.ts +1 -0
  241. package/dist/components/{Ellipse.svelte.test.js → Ellipse/Ellipse.svelte.test.js} +1 -1
  242. package/dist/components/Ellipse/Ellipse.svg.svelte +95 -0
  243. package/dist/components/Ellipse/Ellipse.svg.svelte.d.ts +5 -0
  244. package/dist/components/Frame/Frame.base.svelte +38 -0
  245. package/dist/components/Frame/Frame.base.svelte.d.ts +9 -0
  246. package/dist/components/Frame/Frame.canvas.svelte +13 -0
  247. package/dist/components/Frame/Frame.canvas.svelte.d.ts +5 -0
  248. package/dist/components/Frame/Frame.html.svelte +13 -0
  249. package/dist/components/Frame/Frame.html.svelte.d.ts +5 -0
  250. package/dist/components/Frame/Frame.shared.svelte.d.ts +7 -0
  251. package/dist/components/Frame/Frame.shared.svelte.js +1 -0
  252. package/dist/components/Frame/Frame.svelte +23 -0
  253. package/dist/components/Frame/Frame.svelte.d.ts +5 -0
  254. package/dist/components/Frame/Frame.svg.svelte +13 -0
  255. package/dist/components/Frame/Frame.svg.svelte.d.ts +5 -0
  256. package/dist/components/Grid/Grid.base.svelte +221 -0
  257. package/dist/components/Grid/Grid.base.svelte.d.ts +37 -0
  258. package/dist/components/Grid/Grid.canvas.svelte +18 -0
  259. package/dist/components/Grid/Grid.canvas.svelte.d.ts +27 -0
  260. package/dist/components/Grid/Grid.html.svelte +18 -0
  261. package/dist/components/Grid/Grid.html.svelte.d.ts +27 -0
  262. package/dist/components/{Grid.svelte.d.ts → Grid/Grid.shared.svelte.d.ts} +25 -8
  263. package/dist/components/Grid/Grid.shared.svelte.js +40 -0
  264. package/dist/components/Grid/Grid.svelte +24 -0
  265. package/dist/components/Grid/Grid.svelte.d.ts +27 -0
  266. package/dist/components/Grid/Grid.svg.svelte +18 -0
  267. package/dist/components/Grid/Grid.svg.svelte.d.ts +27 -0
  268. package/dist/components/Group/Group.canvas.svelte +38 -0
  269. package/dist/components/Group/Group.canvas.svelte.d.ts +5 -0
  270. package/dist/components/Group/Group.html.svelte +100 -0
  271. package/dist/components/Group/Group.html.svelte.d.ts +26 -0
  272. package/dist/components/Group/Group.shared.svelte.d.ts +91 -0
  273. package/dist/components/Group/Group.shared.svelte.js +112 -0
  274. package/dist/components/Group/Group.svelte +26 -0
  275. package/dist/components/Group/Group.svelte.d.ts +26 -0
  276. package/dist/components/Group/Group.svelte.test.d.ts +1 -0
  277. package/dist/components/{Group.svelte.test.js → Group/Group.svelte.test.js} +1 -1
  278. package/dist/components/Group/Group.svg.svelte +93 -0
  279. package/dist/components/Group/Group.svg.svelte.d.ts +26 -0
  280. package/dist/components/Highlight/Highlight.base.svelte +199 -0
  281. package/dist/components/Highlight/Highlight.base.svelte.d.ts +17 -0
  282. package/dist/components/Highlight/Highlight.canvas.svelte +17 -0
  283. package/dist/components/Highlight/Highlight.canvas.svelte.d.ts +4 -0
  284. package/dist/components/Highlight/Highlight.html.svelte +20 -0
  285. package/dist/components/Highlight/Highlight.html.svelte.d.ts +4 -0
  286. package/dist/components/{Highlight.svelte.d.ts → Highlight/Highlight.shared.svelte.d.ts} +57 -41
  287. package/dist/components/Highlight/Highlight.shared.svelte.js +392 -0
  288. package/dist/components/Highlight/Highlight.svelte +23 -0
  289. package/dist/components/Highlight/Highlight.svelte.d.ts +4 -0
  290. package/dist/components/Highlight/Highlight.svg.svelte +17 -0
  291. package/dist/components/Highlight/Highlight.svg.svelte.d.ts +4 -0
  292. package/dist/components/{Hull.svelte → Hull/Hull.base.svelte} +20 -62
  293. package/dist/components/Hull/Hull.base.svelte.d.ts +10 -0
  294. package/dist/components/Hull/Hull.canvas.svelte +14 -0
  295. package/dist/components/Hull/Hull.canvas.svelte.d.ts +5 -0
  296. package/dist/components/{Hull.svelte.d.ts → Hull/Hull.shared.svelte.d.ts} +6 -22
  297. package/dist/components/Hull/Hull.shared.svelte.js +1 -0
  298. package/dist/components/Hull/Hull.svelte +20 -0
  299. package/dist/components/Hull/Hull.svelte.d.ts +5 -0
  300. package/dist/components/Hull/Hull.svg.svelte +14 -0
  301. package/dist/components/Hull/Hull.svg.svelte.d.ts +5 -0
  302. package/dist/components/Image/Image.canvas.svelte +132 -0
  303. package/dist/components/Image/Image.canvas.svelte.d.ts +5 -0
  304. package/dist/components/Image/Image.html.svelte +114 -0
  305. package/dist/components/Image/Image.html.svelte.d.ts +5 -0
  306. package/dist/components/Image/Image.shared.svelte.d.ts +85 -0
  307. package/dist/components/Image/Image.shared.svelte.js +157 -0
  308. package/dist/components/Image/Image.svelte +26 -0
  309. package/dist/components/Image/Image.svelte.d.ts +5 -0
  310. package/dist/components/Image/Image.svelte.test.d.ts +1 -0
  311. package/dist/components/{Image.svelte.test.js → Image/Image.svelte.test.js} +1 -1
  312. package/dist/components/Image/Image.svg.svelte +138 -0
  313. package/dist/components/Image/Image.svg.svelte.d.ts +5 -0
  314. package/dist/components/Labels/Labels.base.svelte +92 -0
  315. package/dist/components/Labels/Labels.base.svelte.d.ts +32 -0
  316. package/dist/components/Labels/Labels.canvas.svelte +16 -0
  317. package/dist/components/Labels/Labels.canvas.svelte.d.ts +26 -0
  318. package/dist/components/Labels/Labels.html.svelte +16 -0
  319. package/dist/components/Labels/Labels.html.svelte.d.ts +26 -0
  320. package/dist/components/Labels/Labels.shared.svelte.d.ts +53 -0
  321. package/dist/components/Labels/Labels.shared.svelte.js +167 -0
  322. package/dist/components/Labels/Labels.svelte +23 -0
  323. package/dist/components/Labels/Labels.svelte.d.ts +26 -0
  324. package/dist/components/Labels/Labels.svg.svelte +16 -0
  325. package/dist/components/Labels/Labels.svg.svelte.d.ts +26 -0
  326. package/dist/components/Line/Line.canvas.svelte +120 -0
  327. package/dist/components/Line/Line.canvas.svelte.d.ts +5 -0
  328. package/dist/components/Line/Line.html.svelte +88 -0
  329. package/dist/components/Line/Line.html.svelte.d.ts +5 -0
  330. package/dist/components/{Line.svelte.d.ts → Line/Line.shared.svelte.d.ts} +57 -39
  331. package/dist/components/Line/Line.shared.svelte.js +145 -0
  332. package/dist/components/Line/Line.svelte +27 -0
  333. package/dist/components/Line/Line.svelte.d.ts +5 -0
  334. package/dist/components/Line/Line.svelte.test.d.ts +1 -0
  335. package/dist/components/{Line.svelte.test.js → Line/Line.svelte.test.js} +1 -1
  336. package/dist/components/Line/Line.svg.svelte +122 -0
  337. package/dist/components/Line/Line.svg.svelte.d.ts +5 -0
  338. package/dist/components/LinearGradient/LinearGradient.canvas.svelte +75 -0
  339. package/dist/components/LinearGradient/LinearGradient.canvas.svelte.d.ts +5 -0
  340. package/dist/components/LinearGradient/LinearGradient.html.svelte +51 -0
  341. package/dist/components/LinearGradient/LinearGradient.html.svelte.d.ts +5 -0
  342. package/dist/components/{LinearGradient.svelte.d.ts → LinearGradient/LinearGradient.shared.svelte.d.ts} +12 -34
  343. package/dist/components/LinearGradient/LinearGradient.shared.svelte.js +1 -0
  344. package/dist/components/LinearGradient/LinearGradient.svelte +26 -0
  345. package/dist/components/LinearGradient/LinearGradient.svelte.d.ts +5 -0
  346. package/dist/components/LinearGradient/LinearGradient.svg.svelte +73 -0
  347. package/dist/components/LinearGradient/LinearGradient.svg.svelte.d.ts +5 -0
  348. package/dist/components/{Link.svelte → Link/Link.base.svelte} +23 -139
  349. package/dist/components/Link/Link.base.svelte.d.ts +9 -0
  350. package/dist/components/Link/Link.canvas.svelte +13 -0
  351. package/dist/components/Link/Link.canvas.svelte.d.ts +5 -0
  352. package/dist/components/Link/Link.shared.svelte.d.ts +43 -0
  353. package/dist/components/Link/Link.shared.svelte.js +6 -0
  354. package/dist/components/Link/Link.svelte +20 -0
  355. package/dist/components/Link/Link.svelte.d.ts +5 -0
  356. package/dist/components/Link/Link.svg.svelte +13 -0
  357. package/dist/components/Link/Link.svg.svelte.d.ts +5 -0
  358. package/dist/components/{Month.svelte → Month/Month.base.svelte} +21 -105
  359. package/dist/components/Month/Month.base.svelte.d.ts +11 -0
  360. package/dist/components/Month/Month.canvas.svelte +19 -0
  361. package/dist/components/Month/Month.canvas.svelte.d.ts +5 -0
  362. package/dist/components/Month/Month.html.svelte +19 -0
  363. package/dist/components/Month/Month.html.svelte.d.ts +5 -0
  364. package/dist/components/Month/Month.shared.svelte.d.ts +33 -0
  365. package/dist/components/Month/Month.shared.svelte.js +1 -0
  366. package/dist/components/Month/Month.svelte +27 -0
  367. package/dist/components/Month/Month.svelte.d.ts +5 -0
  368. package/dist/components/Month/Month.svg.svelte +19 -0
  369. package/dist/components/Month/Month.svg.svelte.d.ts +5 -0
  370. package/dist/components/MonthPath.svelte +1 -1
  371. package/dist/components/MonthPath.svelte.d.ts +1 -1
  372. package/dist/components/Path/Path.canvas.svelte +88 -0
  373. package/dist/components/Path/Path.canvas.svelte.d.ts +5 -0
  374. package/dist/components/{Path.svelte.d.ts → Path/Path.shared.svelte.d.ts} +19 -21
  375. package/dist/components/Path/Path.shared.svelte.js +50 -0
  376. package/dist/components/Path/Path.svelte +21 -0
  377. package/dist/components/Path/Path.svelte.d.ts +5 -0
  378. package/dist/components/Path/Path.svg.svelte +167 -0
  379. package/dist/components/Path/Path.svg.svelte.d.ts +5 -0
  380. package/dist/components/Pattern/Pattern.canvas.svelte +48 -0
  381. package/dist/components/Pattern/Pattern.canvas.svelte.d.ts +5 -0
  382. package/dist/components/Pattern/Pattern.html.svelte +107 -0
  383. package/dist/components/Pattern/Pattern.html.svelte.d.ts +5 -0
  384. package/dist/components/Pattern/Pattern.shared.svelte.d.ts +67 -0
  385. package/dist/components/Pattern/Pattern.shared.svelte.js +71 -0
  386. package/dist/components/Pattern/Pattern.svelte +29 -0
  387. package/dist/components/Pattern/Pattern.svelte.d.ts +5 -0
  388. package/dist/components/Pattern/Pattern.svg.svelte +69 -0
  389. package/dist/components/Pattern/Pattern.svg.svelte.d.ts +5 -0
  390. package/dist/components/Pie/Pie.base.svelte +69 -0
  391. package/dist/components/Pie/Pie.base.svelte.d.ts +9 -0
  392. package/dist/components/Pie/Pie.canvas.svelte +14 -0
  393. package/dist/components/Pie/Pie.canvas.svelte.d.ts +4 -0
  394. package/dist/components/Pie/Pie.shared.svelte.d.ts +51 -0
  395. package/dist/components/Pie/Pie.shared.svelte.js +41 -0
  396. package/dist/components/Pie/Pie.svelte +20 -0
  397. package/dist/components/Pie/Pie.svelte.d.ts +4 -0
  398. package/dist/components/Pie/Pie.svg.svelte +14 -0
  399. package/dist/components/Pie/Pie.svg.svelte.d.ts +4 -0
  400. package/dist/components/Points/Points.base.svelte +75 -0
  401. package/dist/components/Points/Points.base.svelte.d.ts +9 -0
  402. package/dist/components/Points/Points.canvas.svelte +14 -0
  403. package/dist/components/Points/Points.canvas.svelte.d.ts +5 -0
  404. package/dist/components/Points/Points.html.svelte +14 -0
  405. package/dist/components/Points/Points.html.svelte.d.ts +5 -0
  406. package/dist/components/Points/Points.shared.svelte.d.ts +57 -0
  407. package/dist/components/Points/Points.shared.svelte.js +107 -0
  408. package/dist/components/Points/Points.svelte +23 -0
  409. package/dist/components/Points/Points.svelte.d.ts +5 -0
  410. package/dist/components/Points/Points.svg.svelte +14 -0
  411. package/dist/components/Points/Points.svg.svelte.d.ts +5 -0
  412. package/dist/components/Polygon/Polygon.canvas.svelte +112 -0
  413. package/dist/components/Polygon/Polygon.canvas.svelte.d.ts +5 -0
  414. package/dist/components/Polygon/Polygon.shared.svelte.d.ts +82 -0
  415. package/dist/components/Polygon/Polygon.shared.svelte.js +183 -0
  416. package/dist/components/Polygon/Polygon.svelte +23 -0
  417. package/dist/components/Polygon/Polygon.svelte.d.ts +5 -0
  418. package/dist/components/Polygon/Polygon.svelte.test.d.ts +1 -0
  419. package/dist/components/{Polygon.svelte.test.js → Polygon/Polygon.svelte.test.js} +1 -1
  420. package/dist/components/Polygon/Polygon.svg.svelte +82 -0
  421. package/dist/components/Polygon/Polygon.svg.svelte.d.ts +5 -0
  422. package/dist/components/RadialGradient/RadialGradient.canvas.svelte +69 -0
  423. package/dist/components/RadialGradient/RadialGradient.canvas.svelte.d.ts +5 -0
  424. package/dist/components/{RadialGradient.svelte.d.ts → RadialGradient/RadialGradient.shared.svelte.d.ts} +11 -35
  425. package/dist/components/RadialGradient/RadialGradient.shared.svelte.js +1 -0
  426. package/dist/components/RadialGradient/RadialGradient.svelte +23 -0
  427. package/dist/components/RadialGradient/RadialGradient.svelte.d.ts +5 -0
  428. package/dist/components/RadialGradient/RadialGradient.svg.svelte +66 -0
  429. package/dist/components/RadialGradient/RadialGradient.svg.svelte.d.ts +5 -0
  430. package/dist/components/{Raster.svelte → Raster/Raster.base.svelte} +22 -76
  431. package/dist/components/Raster/Raster.base.svelte.d.ts +9 -0
  432. package/dist/components/Raster/Raster.canvas.svelte +13 -0
  433. package/dist/components/Raster/Raster.canvas.svelte.d.ts +5 -0
  434. package/dist/components/Raster/Raster.html.svelte +13 -0
  435. package/dist/components/Raster/Raster.html.svelte.d.ts +5 -0
  436. package/dist/components/Raster/Raster.shared.svelte.d.ts +26 -0
  437. package/dist/components/Raster/Raster.shared.svelte.js +1 -0
  438. package/dist/components/Raster/Raster.svelte +23 -0
  439. package/dist/components/Raster/Raster.svelte.d.ts +5 -0
  440. package/dist/components/Raster/Raster.svg.svelte +13 -0
  441. package/dist/components/Raster/Raster.svg.svelte.d.ts +5 -0
  442. package/dist/components/Rect/Rect.canvas.svelte +156 -0
  443. package/dist/components/Rect/Rect.canvas.svelte.d.ts +5 -0
  444. package/dist/components/Rect/Rect.html.svelte +103 -0
  445. package/dist/components/Rect/Rect.html.svelte.d.ts +5 -0
  446. package/dist/components/{Rect.svelte.d.ts → Rect/Rect.shared.svelte.d.ts} +58 -7
  447. package/dist/components/Rect/Rect.shared.svelte.js +206 -0
  448. package/dist/components/Rect/Rect.svelte +27 -0
  449. package/dist/components/Rect/Rect.svelte.d.ts +5 -0
  450. package/dist/components/Rect/Rect.svelte.test.d.ts +1 -0
  451. package/dist/components/{Rect.svelte.test.js → Rect/Rect.svelte.test.js} +1 -1
  452. package/dist/components/Rect/Rect.svg.svelte +136 -0
  453. package/dist/components/Rect/Rect.svg.svelte.d.ts +5 -0
  454. package/dist/components/RectClipPath/RectClipPath.base.svelte +36 -0
  455. package/dist/components/RectClipPath/RectClipPath.base.svelte.d.ts +9 -0
  456. package/dist/components/RectClipPath/RectClipPath.canvas.svelte +14 -0
  457. package/dist/components/RectClipPath/RectClipPath.canvas.svelte.d.ts +5 -0
  458. package/dist/components/RectClipPath/RectClipPath.html.svelte +14 -0
  459. package/dist/components/RectClipPath/RectClipPath.html.svelte.d.ts +5 -0
  460. package/dist/components/RectClipPath/RectClipPath.shared.svelte.d.ts +29 -0
  461. package/dist/components/RectClipPath/RectClipPath.shared.svelte.js +1 -0
  462. package/dist/components/RectClipPath/RectClipPath.svelte +23 -0
  463. package/dist/components/RectClipPath/RectClipPath.svelte.d.ts +5 -0
  464. package/dist/components/RectClipPath/RectClipPath.svg.svelte +14 -0
  465. package/dist/components/RectClipPath/RectClipPath.svg.svelte.d.ts +5 -0
  466. package/dist/components/Rule/Rule.base.svelte +108 -0
  467. package/dist/components/Rule/Rule.base.svelte.d.ts +14 -0
  468. package/dist/components/Rule/Rule.canvas.svelte +16 -0
  469. package/dist/components/Rule/Rule.canvas.svelte.d.ts +5 -0
  470. package/dist/components/Rule/Rule.html.svelte +16 -0
  471. package/dist/components/Rule/Rule.html.svelte.d.ts +5 -0
  472. package/dist/components/{Rule.svelte.d.ts → Rule/Rule.shared.svelte.d.ts} +26 -6
  473. package/dist/components/Rule/Rule.shared.svelte.js +113 -0
  474. package/dist/components/Rule/Rule.svelte +23 -0
  475. package/dist/components/Rule/Rule.svelte.d.ts +5 -0
  476. package/dist/components/Rule/Rule.svg.svelte +16 -0
  477. package/dist/components/Rule/Rule.svg.svelte.d.ts +5 -0
  478. package/dist/components/Spline/Spline.base.svelte +56 -0
  479. package/dist/components/Spline/Spline.base.svelte.d.ts +9 -0
  480. package/dist/components/Spline/Spline.canvas.svelte +14 -0
  481. package/dist/components/Spline/Spline.canvas.svelte.d.ts +5 -0
  482. package/dist/components/Spline/Spline.shared.svelte.d.ts +61 -0
  483. package/dist/components/Spline/Spline.shared.svelte.js +174 -0
  484. package/dist/components/Spline/Spline.svelte +20 -0
  485. package/dist/components/Spline/Spline.svelte.d.ts +5 -0
  486. package/dist/components/Spline/Spline.svg.svelte +14 -0
  487. package/dist/components/Spline/Spline.svg.svelte.d.ts +5 -0
  488. package/dist/components/Text/Text.canvas.svelte +204 -0
  489. package/dist/components/Text/Text.canvas.svelte.d.ts +5 -0
  490. package/dist/components/Text/Text.html.svelte +106 -0
  491. package/dist/components/Text/Text.html.svelte.d.ts +5 -0
  492. package/dist/components/{Text.svelte.d.ts → Text/Text.shared.svelte.d.ts} +75 -8
  493. package/dist/components/Text/Text.shared.svelte.js +319 -0
  494. package/dist/components/Text/Text.svelte +29 -0
  495. package/dist/components/Text/Text.svelte.d.ts +6 -0
  496. package/dist/components/Text/Text.svelte.test.d.ts +1 -0
  497. package/dist/components/{Text.svelte.test.js → Text/Text.svelte.test.js} +1 -1
  498. package/dist/components/Text/Text.svg.svelte +193 -0
  499. package/dist/components/Text/Text.svg.svelte.d.ts +5 -0
  500. package/dist/components/Threshold/Threshold.base.svelte +42 -0
  501. package/dist/components/Threshold/Threshold.base.svelte.d.ts +10 -0
  502. package/dist/components/Threshold/Threshold.canvas.svelte +14 -0
  503. package/dist/components/Threshold/Threshold.canvas.svelte.d.ts +5 -0
  504. package/dist/components/{Threshold.svelte.d.ts → Threshold/Threshold.shared.svelte.d.ts} +5 -18
  505. package/dist/components/Threshold/Threshold.shared.svelte.js +1 -0
  506. package/dist/components/Threshold/Threshold.svelte +20 -0
  507. package/dist/components/Threshold/Threshold.svelte.d.ts +5 -0
  508. package/dist/components/Threshold/Threshold.svg.svelte +14 -0
  509. package/dist/components/Threshold/Threshold.svg.svelte.d.ts +5 -0
  510. package/dist/components/{Trail.svelte → Trail/Trail.base.svelte} +18 -127
  511. package/dist/components/Trail/Trail.base.svelte.d.ts +9 -0
  512. package/dist/components/Trail/Trail.canvas.svelte +13 -0
  513. package/dist/components/Trail/Trail.canvas.svelte.d.ts +5 -0
  514. package/dist/components/Trail/Trail.shared.svelte.d.ts +26 -0
  515. package/dist/components/Trail/Trail.shared.svelte.js +1 -0
  516. package/dist/components/Trail/Trail.svelte +20 -0
  517. package/dist/components/Trail/Trail.svelte.d.ts +5 -0
  518. package/dist/components/Trail/Trail.svg.svelte +13 -0
  519. package/dist/components/Trail/Trail.svg.svelte.d.ts +5 -0
  520. package/dist/components/TransformContext.svelte.test.js +12 -4
  521. package/dist/components/{Vector.svelte → Vector/Vector.base.svelte} +18 -153
  522. package/dist/components/Vector/Vector.base.svelte.d.ts +9 -0
  523. package/dist/components/Vector/Vector.canvas.svelte +13 -0
  524. package/dist/components/Vector/Vector.canvas.svelte.d.ts +5 -0
  525. package/dist/components/Vector/Vector.shared.svelte.d.ts +37 -0
  526. package/dist/components/Vector/Vector.shared.svelte.js +1 -0
  527. package/dist/components/Vector/Vector.svelte +20 -0
  528. package/dist/components/Vector/Vector.svelte.d.ts +5 -0
  529. package/dist/components/Vector/Vector.svg.svelte +13 -0
  530. package/dist/components/Vector/Vector.svg.svelte.d.ts +5 -0
  531. package/dist/components/{Violin.svelte → Violin/Violin.base.svelte} +21 -87
  532. package/dist/components/Violin/Violin.base.svelte.d.ts +12 -0
  533. package/dist/components/Violin/Violin.canvas.svelte +16 -0
  534. package/dist/components/Violin/Violin.canvas.svelte.d.ts +5 -0
  535. package/dist/components/Violin/Violin.shared.svelte.d.ts +23 -0
  536. package/dist/components/Violin/Violin.shared.svelte.js +1 -0
  537. package/dist/components/Violin/Violin.svelte +20 -0
  538. package/dist/components/Violin/Violin.svelte.d.ts +5 -0
  539. package/dist/components/Violin/Violin.svg.svelte +16 -0
  540. package/dist/components/Violin/Violin.svg.svelte.d.ts +5 -0
  541. package/dist/components/Voronoi/Voronoi.base.svelte +151 -0
  542. package/dist/components/Voronoi/Voronoi.base.svelte.d.ts +11 -0
  543. package/dist/components/Voronoi/Voronoi.canvas.svelte +15 -0
  544. package/dist/components/Voronoi/Voronoi.canvas.svelte.d.ts +5 -0
  545. package/dist/components/{Voronoi.svelte.d.ts → Voronoi/Voronoi.shared.svelte.d.ts} +5 -22
  546. package/dist/components/Voronoi/Voronoi.shared.svelte.js +1 -0
  547. package/dist/components/Voronoi/Voronoi.svelte +20 -0
  548. package/dist/components/Voronoi/Voronoi.svelte.d.ts +5 -0
  549. package/dist/components/Voronoi/Voronoi.svg.svelte +15 -0
  550. package/dist/components/Voronoi/Voronoi.svg.svelte.d.ts +5 -0
  551. package/dist/components/__screenshots__/Arc.svelte.test.ts/Arc-props-should-apply-fillOpacity-1.png +0 -0
  552. package/dist/components/__screenshots__/Arc.svelte.test.ts/Arc-props-should-apply-fillOpacity-2.png +0 -0
  553. package/dist/components/__screenshots__/Arc.svelte.test.ts/Arc-props-should-apply-strokeWidth-1.png +0 -0
  554. package/dist/components/__screenshots__/Arc.svelte.test.ts/Arc-props-should-apply-strokeWidth-2.png +0 -0
  555. package/dist/components/__screenshots__/Circle.svelte.test.ts/Circle-data-mode-should-resolve-data-driven-fill-through-cScale-1.png +0 -0
  556. package/dist/components/__screenshots__/Circle.svelte.test.ts/Circle-data-mode-should-resolve-data-driven-fill-through-cScale-2.png +0 -0
  557. package/dist/components/charts/{ArcChart.svelte → ArcChart/ArcChart.base.svelte} +29 -143
  558. package/dist/components/charts/ArcChart/ArcChart.base.svelte.d.ts +33 -0
  559. package/dist/components/charts/ArcChart/ArcChart.canvas.svelte +16 -0
  560. package/dist/components/charts/ArcChart/ArcChart.canvas.svelte.d.ts +26 -0
  561. package/dist/components/charts/{ArcChart.svelte.d.ts → ArcChart/ArcChart.shared.svelte.d.ts} +13 -38
  562. package/dist/components/charts/ArcChart/ArcChart.shared.svelte.js +1 -0
  563. package/dist/components/charts/ArcChart/ArcChart.svelte +16 -0
  564. package/dist/components/charts/ArcChart/ArcChart.svelte.d.ts +26 -0
  565. package/dist/components/charts/ArcChart/ArcChart.svg.svelte +16 -0
  566. package/dist/components/charts/ArcChart/ArcChart.svg.svelte.d.ts +26 -0
  567. package/dist/components/charts/{AreaChart.svelte → AreaChart/AreaChart.base.svelte} +12 -42
  568. package/dist/components/charts/AreaChart/AreaChart.base.svelte.d.ts +31 -0
  569. package/dist/components/charts/AreaChart/AreaChart.canvas.svelte +14 -0
  570. package/dist/components/charts/AreaChart/AreaChart.canvas.svelte.d.ts +26 -0
  571. package/dist/components/charts/AreaChart/AreaChart.shared.svelte.d.ts +37 -0
  572. package/dist/components/charts/AreaChart/AreaChart.shared.svelte.js +1 -0
  573. package/dist/components/charts/AreaChart/AreaChart.svelte +14 -0
  574. package/dist/components/charts/{AreaChart.svelte.d.ts → AreaChart/AreaChart.svelte.d.ts} +2 -36
  575. package/dist/components/charts/AreaChart/AreaChart.svg.svelte +14 -0
  576. package/dist/components/charts/AreaChart/AreaChart.svg.svelte.d.ts +26 -0
  577. package/dist/components/charts/AreaChart.svelte.test.js +1 -1
  578. package/dist/components/charts/{BarChart.svelte → BarChart/BarChart.base.svelte} +14 -74
  579. package/dist/components/charts/BarChart/BarChart.base.svelte.d.ts +31 -0
  580. package/dist/components/charts/BarChart/BarChart.canvas.svelte +14 -0
  581. package/dist/components/charts/BarChart/BarChart.canvas.svelte.d.ts +26 -0
  582. package/dist/components/charts/{BarChart.svelte.d.ts → BarChart/BarChart.shared.svelte.d.ts} +6 -29
  583. package/dist/components/charts/BarChart/BarChart.shared.svelte.js +1 -0
  584. package/dist/components/charts/BarChart/BarChart.svelte +14 -0
  585. package/dist/components/charts/BarChart/BarChart.svelte.d.ts +26 -0
  586. package/dist/components/charts/BarChart/BarChart.svg.svelte +14 -0
  587. package/dist/components/charts/BarChart/BarChart.svg.svelte.d.ts +26 -0
  588. package/dist/components/charts/BarChart.svelte.test.js +1 -1
  589. package/dist/components/charts/BarChartFixedWidthTest.svelte +2 -2
  590. package/dist/components/charts/ChartAnnotations.svelte +3 -3
  591. package/dist/components/charts/DefaultTooltip.svelte +1 -1
  592. package/dist/components/charts/DefaultTooltip.svelte.d.ts +1 -1
  593. package/dist/components/charts/DefaultTooltip.svelte.test.js +3 -3
  594. package/dist/components/charts/{LineChart.svelte → LineChart/LineChart.base.svelte} +13 -44
  595. package/dist/components/charts/LineChart/LineChart.base.svelte.d.ts +31 -0
  596. package/dist/components/charts/LineChart/LineChart.canvas.svelte +14 -0
  597. package/dist/components/charts/LineChart/LineChart.canvas.svelte.d.ts +26 -0
  598. package/dist/components/charts/LineChart/LineChart.shared.svelte.d.ts +35 -0
  599. package/dist/components/charts/LineChart/LineChart.shared.svelte.js +1 -0
  600. package/dist/components/charts/LineChart/LineChart.svelte +14 -0
  601. package/dist/components/charts/{LineChart.svelte.d.ts → LineChart/LineChart.svelte.d.ts} +2 -34
  602. package/dist/components/charts/LineChart/LineChart.svg.svelte +14 -0
  603. package/dist/components/charts/LineChart/LineChart.svg.svelte.d.ts +26 -0
  604. package/dist/components/charts/LineChart.svelte.bench.js +1 -1
  605. package/dist/components/charts/LineChart.svelte.test.js +1 -1
  606. package/dist/components/charts/{PieChart.svelte → PieChart/PieChart.base.svelte} +33 -195
  607. package/dist/components/charts/PieChart/PieChart.base.svelte.d.ts +34 -0
  608. package/dist/components/charts/PieChart/PieChart.canvas.svelte +17 -0
  609. package/dist/components/charts/PieChart/PieChart.canvas.svelte.d.ts +26 -0
  610. package/dist/components/charts/{PieChart.svelte.d.ts → PieChart/PieChart.shared.svelte.d.ts} +14 -38
  611. package/dist/components/charts/PieChart/PieChart.shared.svelte.js +1 -0
  612. package/dist/components/charts/PieChart/PieChart.svelte +17 -0
  613. package/dist/components/charts/PieChart/PieChart.svelte.d.ts +26 -0
  614. package/dist/components/charts/PieChart/PieChart.svg.svelte +17 -0
  615. package/dist/components/charts/PieChart/PieChart.svg.svelte.d.ts +26 -0
  616. package/dist/components/charts/PieChart.svelte.test.js +1 -1
  617. package/dist/components/charts/{ScatterChart.svelte → ScatterChart/ScatterChart.base.svelte} +13 -26
  618. package/dist/components/charts/ScatterChart/ScatterChart.base.svelte.d.ts +31 -0
  619. package/dist/components/charts/ScatterChart/ScatterChart.canvas.svelte +14 -0
  620. package/dist/components/charts/ScatterChart/ScatterChart.canvas.svelte.d.ts +26 -0
  621. package/dist/components/charts/ScatterChart/ScatterChart.shared.svelte.d.ts +20 -0
  622. package/dist/components/charts/ScatterChart/ScatterChart.shared.svelte.js +1 -0
  623. package/dist/components/charts/ScatterChart/ScatterChart.svelte +14 -0
  624. package/dist/components/charts/{ScatterChart.svelte.d.ts → ScatterChart/ScatterChart.svelte.d.ts} +2 -19
  625. package/dist/components/charts/ScatterChart/ScatterChart.svg.svelte +14 -0
  626. package/dist/components/charts/ScatterChart/ScatterChart.svg.svelte.d.ts +26 -0
  627. package/dist/components/charts/__fixtures__/ArcChartTooltip.svelte +1 -1
  628. package/dist/components/charts/__screenshots__/DefaultTooltip.svelte.test.ts/DefaultTooltip-AreaChart--multi-series--quadtree-x-mode--should-show-header-and-all-series-items-1.png +0 -0
  629. package/dist/components/charts/__screenshots__/LineChart.svelte.test.ts/LineChart-tooltip-should-prefer-cScale-color-over-default-series-color-when-cScale-is-explicitly-provided-1.png +0 -0
  630. package/dist/components/charts/index.d.ts +12 -12
  631. package/dist/components/charts/index.js +12 -12
  632. package/dist/components/geo/GeoCircle/GeoCircle.base.svelte +27 -0
  633. package/dist/components/geo/GeoCircle/GeoCircle.base.svelte.d.ts +9 -0
  634. package/dist/components/geo/GeoCircle/GeoCircle.canvas.svelte +13 -0
  635. package/dist/components/geo/GeoCircle/GeoCircle.canvas.svelte.d.ts +5 -0
  636. package/dist/components/geo/GeoCircle/GeoCircle.shared.svelte.d.ts +11 -0
  637. package/dist/components/geo/GeoCircle/GeoCircle.shared.svelte.js +1 -0
  638. package/dist/components/geo/GeoCircle/GeoCircle.svelte +20 -0
  639. package/dist/components/geo/GeoCircle/GeoCircle.svelte.d.ts +5 -0
  640. package/dist/components/geo/GeoCircle/GeoCircle.svg.svelte +13 -0
  641. package/dist/components/geo/GeoCircle/GeoCircle.svg.svelte.d.ts +5 -0
  642. package/dist/components/geo/GeoClipPath/GeoClipPath.base.svelte +36 -0
  643. package/dist/components/geo/GeoClipPath/GeoClipPath.base.svelte.d.ts +9 -0
  644. package/dist/components/geo/GeoClipPath/GeoClipPath.canvas.svelte +13 -0
  645. package/dist/components/geo/GeoClipPath/GeoClipPath.canvas.svelte.d.ts +4 -0
  646. package/dist/components/geo/GeoClipPath/GeoClipPath.shared.svelte.d.ts +15 -0
  647. package/dist/components/geo/GeoClipPath/GeoClipPath.shared.svelte.js +1 -0
  648. package/dist/components/geo/GeoClipPath/GeoClipPath.svelte +20 -0
  649. package/dist/components/geo/GeoClipPath/GeoClipPath.svelte.d.ts +4 -0
  650. package/dist/components/geo/GeoClipPath/GeoClipPath.svg.svelte +13 -0
  651. package/dist/components/geo/GeoClipPath/GeoClipPath.svg.svelte.d.ts +4 -0
  652. package/dist/components/geo/{GeoEdgeFade.svelte → GeoEdgeFade/GeoEdgeFade.base.svelte} +10 -18
  653. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.base.svelte.d.ts +9 -0
  654. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.canvas.svelte +13 -0
  655. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.canvas.svelte.d.ts +5 -0
  656. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.shared.svelte.d.ts +13 -0
  657. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.shared.svelte.js +1 -0
  658. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.svelte +20 -0
  659. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.svelte.d.ts +5 -0
  660. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.svg.svelte +13 -0
  661. package/dist/components/geo/GeoEdgeFade/GeoEdgeFade.svg.svelte.d.ts +5 -0
  662. package/dist/components/geo/{GeoLegend.svelte → GeoLegend/GeoLegend.svelte} +3 -3
  663. package/dist/components/geo/{GeoLegend.svelte.d.ts → GeoLegend/GeoLegend.svelte.d.ts} +2 -2
  664. package/dist/components/geo/GeoPath/GeoPath.base.svelte +94 -0
  665. package/dist/components/geo/GeoPath/GeoPath.base.svelte.d.ts +9 -0
  666. package/dist/components/geo/GeoPath/GeoPath.canvas.svelte +13 -0
  667. package/dist/components/geo/GeoPath/GeoPath.canvas.svelte.d.ts +5 -0
  668. package/dist/components/geo/GeoPath/GeoPath.shared.svelte.d.ts +21 -0
  669. package/dist/components/geo/GeoPath/GeoPath.shared.svelte.js +1 -0
  670. package/dist/components/geo/GeoPath/GeoPath.svelte +20 -0
  671. package/dist/components/geo/GeoPath/GeoPath.svelte.d.ts +5 -0
  672. package/dist/components/geo/GeoPath/GeoPath.svg.svelte +13 -0
  673. package/dist/components/geo/GeoPath/GeoPath.svg.svelte.d.ts +5 -0
  674. package/dist/components/geo/{GeoPoint.svelte → GeoPoint/GeoPoint.base.svelte} +12 -33
  675. package/dist/components/geo/GeoPoint/GeoPoint.base.svelte.d.ts +10 -0
  676. package/dist/components/geo/GeoPoint/GeoPoint.canvas.svelte +14 -0
  677. package/dist/components/geo/GeoPoint/GeoPoint.canvas.svelte.d.ts +5 -0
  678. package/dist/components/geo/GeoPoint/GeoPoint.shared.svelte.d.ts +13 -0
  679. package/dist/components/geo/GeoPoint/GeoPoint.shared.svelte.js +1 -0
  680. package/dist/components/geo/GeoPoint/GeoPoint.svelte +20 -0
  681. package/dist/components/geo/GeoPoint/GeoPoint.svelte.d.ts +5 -0
  682. package/dist/components/geo/GeoPoint/GeoPoint.svg.svelte +14 -0
  683. package/dist/components/geo/GeoPoint/GeoPoint.svg.svelte.d.ts +5 -0
  684. package/dist/components/geo/{GeoProjection.svelte → GeoProjection/GeoProjection.svelte} +3 -3
  685. package/dist/components/geo/{GeoProjection.svelte.d.ts → GeoProjection/GeoProjection.svelte.d.ts} +1 -1
  686. package/dist/components/geo/{GeoRaster.svelte → GeoRaster/GeoRaster.svelte} +3 -3
  687. package/dist/components/geo/GeoSpline/GeoSpline.base.svelte +52 -0
  688. package/dist/components/geo/GeoSpline/GeoSpline.base.svelte.d.ts +9 -0
  689. package/dist/components/geo/GeoSpline/GeoSpline.canvas.svelte +13 -0
  690. package/dist/components/geo/GeoSpline/GeoSpline.canvas.svelte.d.ts +5 -0
  691. package/dist/components/geo/GeoSpline/GeoSpline.shared.svelte.d.ts +14 -0
  692. package/dist/components/geo/GeoSpline/GeoSpline.shared.svelte.js +1 -0
  693. package/dist/components/geo/GeoSpline/GeoSpline.svelte +20 -0
  694. package/dist/components/geo/GeoSpline/GeoSpline.svelte.d.ts +5 -0
  695. package/dist/components/geo/GeoSpline/GeoSpline.svg.svelte +13 -0
  696. package/dist/components/geo/GeoSpline/GeoSpline.svg.svelte.d.ts +5 -0
  697. package/dist/components/geo/{GeoTile.svelte → GeoTile/GeoTile.base.svelte} +14 -45
  698. package/dist/components/geo/GeoTile/GeoTile.base.svelte.d.ts +10 -0
  699. package/dist/components/geo/GeoTile/GeoTile.canvas.svelte +14 -0
  700. package/dist/components/geo/GeoTile/GeoTile.canvas.svelte.d.ts +5 -0
  701. package/dist/components/geo/GeoTile/GeoTile.shared.svelte.d.ts +17 -0
  702. package/dist/components/geo/GeoTile/GeoTile.shared.svelte.js +1 -0
  703. package/dist/components/geo/GeoTile/GeoTile.svelte +20 -0
  704. package/dist/components/geo/GeoTile/GeoTile.svelte.d.ts +5 -0
  705. package/dist/components/geo/GeoTile/GeoTile.svg.svelte +14 -0
  706. package/dist/components/geo/GeoTile/GeoTile.svg.svelte.d.ts +5 -0
  707. package/dist/components/geo/{GeoVisible.svelte → GeoVisible/GeoVisible.svelte} +2 -2
  708. package/dist/components/geo/Graticule/Graticule.base.svelte +47 -0
  709. package/dist/components/geo/Graticule/Graticule.base.svelte.d.ts +10 -0
  710. package/dist/components/geo/Graticule/Graticule.canvas.svelte +14 -0
  711. package/dist/components/geo/Graticule/Graticule.canvas.svelte.d.ts +5 -0
  712. package/dist/components/geo/{Graticule.svelte.d.ts → Graticule/Graticule.shared.svelte.d.ts} +3 -5
  713. package/dist/components/geo/Graticule/Graticule.shared.svelte.js +1 -0
  714. package/dist/components/geo/Graticule/Graticule.svelte +20 -0
  715. package/dist/components/geo/Graticule/Graticule.svelte.d.ts +5 -0
  716. package/dist/components/geo/Graticule/Graticule.svg.svelte +14 -0
  717. package/dist/components/geo/Graticule/Graticule.svg.svelte.d.ts +5 -0
  718. package/dist/components/geo/{TileImage.svelte → TileImage/TileImage.base.svelte} +9 -65
  719. package/dist/components/geo/TileImage/TileImage.base.svelte.d.ts +9 -0
  720. package/dist/components/geo/TileImage/TileImage.canvas.svelte +13 -0
  721. package/dist/components/geo/TileImage/TileImage.canvas.svelte.d.ts +5 -0
  722. package/dist/components/geo/TileImage/TileImage.shared.svelte.d.ts +17 -0
  723. package/dist/components/geo/TileImage/TileImage.shared.svelte.js +1 -0
  724. package/dist/components/geo/TileImage/TileImage.svelte +20 -0
  725. package/dist/components/geo/TileImage/TileImage.svelte.d.ts +5 -0
  726. package/dist/components/geo/TileImage/TileImage.svg.svelte +13 -0
  727. package/dist/components/geo/TileImage/TileImage.svg.svelte.d.ts +5 -0
  728. package/dist/components/geo/index.d.ts +26 -26
  729. package/dist/components/geo/index.js +26 -26
  730. package/dist/components/graph/Ribbon/Ribbon.base.svelte +94 -0
  731. package/dist/components/graph/Ribbon/Ribbon.base.svelte.d.ts +9 -0
  732. package/dist/components/graph/Ribbon/Ribbon.canvas.svelte +13 -0
  733. package/dist/components/graph/Ribbon/Ribbon.canvas.svelte.d.ts +5 -0
  734. package/dist/components/graph/Ribbon/Ribbon.shared.svelte.d.ts +21 -0
  735. package/dist/components/graph/Ribbon/Ribbon.shared.svelte.js +1 -0
  736. package/dist/components/graph/Ribbon/Ribbon.svelte +20 -0
  737. package/dist/components/graph/Ribbon/Ribbon.svelte.d.ts +5 -0
  738. package/dist/components/graph/Ribbon/Ribbon.svg.svelte +13 -0
  739. package/dist/components/graph/Ribbon/Ribbon.svg.svelte.d.ts +5 -0
  740. package/dist/components/graph/index.d.ts +2 -2
  741. package/dist/components/graph/index.js +2 -2
  742. package/dist/components/index.d.ts +97 -96
  743. package/dist/components/index.js +97 -96
  744. package/dist/components/layers/Layer.svelte +1 -1
  745. package/dist/components/tests/BrushTestHarness.svelte +1 -1
  746. package/dist/components/tests/ChartCoreTestHarness.svelte +31 -0
  747. package/dist/components/tests/ChartCoreTestHarness.svelte.d.ts +8 -0
  748. package/dist/components/tests/TestHarness.svelte +1 -1
  749. package/dist/components/tests/TransformTestHarness.svelte +1 -1
  750. package/dist/components/tooltip/Tooltip.svelte.test.js +1 -1
  751. package/dist/components/tooltip/TooltipContext.svelte +3 -3
  752. package/dist/components/tooltip/__screenshots__/Tooltip.svelte.test.ts/Tooltip-portal-should-portal-tooltip-to-body-by-default-1.png +0 -0
  753. package/dist/html.d.ts +116 -0
  754. package/dist/html.js +93 -0
  755. package/dist/server/ServerChart.svelte +2 -2
  756. package/dist/server/ServerChart.svelte.d.ts +1 -1
  757. package/dist/server/TestBarChart.svelte +1 -1
  758. package/dist/server/TestLineChart.svelte +2 -2
  759. package/dist/states/__fixtures__/ComponentNodeLifecycleHarness.svelte +1 -1
  760. package/dist/states/chart.svelte.d.ts +1 -1
  761. package/dist/svg.d.ts +178 -0
  762. package/dist/svg.js +130 -0
  763. package/dist/utils/arcText.svelte.d.ts +1 -1
  764. package/dist/utils/canvas.d.ts +1 -1
  765. package/dist/utils/common.d.ts +2 -2
  766. package/dist/utils/ticks.d.ts +1 -1
  767. package/package.json +16 -1
  768. package/dist/components/AnnotationLine.svelte.d.ts +0 -38
  769. package/dist/components/AnnotationRange.svelte.d.ts +0 -40
  770. package/dist/components/Arc.svelte +0 -444
  771. package/dist/components/Arc.svelte.d.ts +0 -141
  772. package/dist/components/ArcLabel.svelte +0 -259
  773. package/dist/components/ArcLabel.svelte.d.ts +0 -73
  774. package/dist/components/Area.svelte +0 -251
  775. package/dist/components/Area.svelte.d.ts +0 -49
  776. package/dist/components/Axis.svelte +0 -630
  777. package/dist/components/Bar.svelte +0 -333
  778. package/dist/components/Bar.svelte.d.ts +0 -71
  779. package/dist/components/Bars.svelte +0 -97
  780. package/dist/components/Bars.svelte.d.ts +0 -35
  781. package/dist/components/BoxPlot.svelte +0 -389
  782. package/dist/components/BoxPlot.svelte.d.ts +0 -40
  783. package/dist/components/Calendar.svelte.d.ts +0 -52
  784. package/dist/components/Cell.svelte +0 -64
  785. package/dist/components/Cell.svelte.d.ts +0 -25
  786. package/dist/components/Chart.svelte +0 -1201
  787. package/dist/components/Chart.svelte.d.ts +0 -566
  788. package/dist/components/ChartChildren.svelte +0 -334
  789. package/dist/components/ChartClipPath.svelte +0 -45
  790. package/dist/components/ChartClipPath.svelte.d.ts +0 -22
  791. package/dist/components/Circle.svelte +0 -487
  792. package/dist/components/CircleClipPath.svelte +0 -83
  793. package/dist/components/CircleClipPath.svelte.d.ts +0 -52
  794. package/dist/components/ClipPath.svelte +0 -150
  795. package/dist/components/ClipPath.svelte.d.ts +0 -60
  796. package/dist/components/Contour.svelte.d.ts +0 -48
  797. package/dist/components/Density.svelte.d.ts +0 -21
  798. package/dist/components/Ellipse.svelte +0 -485
  799. package/dist/components/Ellipse.svelte.d.ts +0 -89
  800. package/dist/components/Frame.svelte +0 -41
  801. package/dist/components/Frame.svelte.d.ts +0 -14
  802. package/dist/components/Grid.svelte +0 -320
  803. package/dist/components/Group.svelte +0 -325
  804. package/dist/components/Group.svelte.d.ts +0 -106
  805. package/dist/components/Highlight.svelte +0 -773
  806. package/dist/components/Image.svelte +0 -558
  807. package/dist/components/Image.svelte.d.ts +0 -127
  808. package/dist/components/Labels.svelte +0 -313
  809. package/dist/components/Labels.svelte.d.ts +0 -91
  810. package/dist/components/Line.svelte +0 -509
  811. package/dist/components/LinearGradient.svelte +0 -232
  812. package/dist/components/Link.svelte.d.ts +0 -97
  813. package/dist/components/Month.svelte.d.ts +0 -70
  814. package/dist/components/Path.svelte +0 -381
  815. package/dist/components/Pattern.svelte +0 -398
  816. package/dist/components/Pattern.svelte.d.ts +0 -107
  817. package/dist/components/Pie.svelte +0 -156
  818. package/dist/components/Pie.svelte.d.ts +0 -65
  819. package/dist/components/Points.svelte +0 -200
  820. package/dist/components/Points.svelte.d.ts +0 -54
  821. package/dist/components/Polygon.svelte +0 -538
  822. package/dist/components/Polygon.svelte.d.ts +0 -136
  823. package/dist/components/RadialGradient.svelte +0 -190
  824. package/dist/components/Raster.svelte.d.ts +0 -48
  825. package/dist/components/Rect.svelte +0 -739
  826. package/dist/components/RectClipPath.svelte +0 -97
  827. package/dist/components/RectClipPath.svelte.d.ts +0 -61
  828. package/dist/components/Rule.svelte +0 -249
  829. package/dist/components/Spline.svelte +0 -318
  830. package/dist/components/Spline.svelte.d.ts +0 -67
  831. package/dist/components/Text.svelte +0 -959
  832. package/dist/components/Threshold.svelte +0 -75
  833. package/dist/components/Trail.svelte.d.ts +0 -88
  834. package/dist/components/Vector.svelte.d.ts +0 -109
  835. package/dist/components/Violin.svelte.d.ts +0 -47
  836. package/dist/components/Voronoi.svelte +0 -208
  837. package/dist/components/geo/GeoCircle.svelte +0 -37
  838. package/dist/components/geo/GeoCircle.svelte.d.ts +0 -23
  839. package/dist/components/geo/GeoClipPath.svelte +0 -72
  840. package/dist/components/geo/GeoClipPath.svelte.d.ts +0 -35
  841. package/dist/components/geo/GeoEdgeFade.svelte.d.ts +0 -19
  842. package/dist/components/geo/GeoPath.svelte +0 -161
  843. package/dist/components/geo/GeoPath.svelte.d.ts +0 -51
  844. package/dist/components/geo/GeoPoint.svelte.d.ts +0 -26
  845. package/dist/components/geo/GeoSpline.svelte +0 -78
  846. package/dist/components/geo/GeoSpline.svelte.d.ts +0 -32
  847. package/dist/components/geo/GeoTile.svelte.d.ts +0 -39
  848. package/dist/components/geo/Graticule.svelte +0 -45
  849. package/dist/components/geo/TileImage.svelte.d.ts +0 -49
  850. package/dist/components/graph/Ribbon.svelte +0 -141
  851. package/dist/components/graph/Ribbon.svelte.d.ts +0 -51
  852. /package/dist/components/{Arc.svelte.test.d.ts → AnnotationLine/AnnotationLine.shared.svelte.js} +0 -0
  853. /package/dist/components/{Circle.svelte.test.d.ts → AnnotationPoint/AnnotationPoint.shared.svelte.js} +0 -0
  854. /package/dist/components/{Ellipse.svelte.test.d.ts → AnnotationRange/AnnotationRange.shared.svelte.js} +0 -0
  855. /package/dist/components/{Group.svelte.test.d.ts → Arc/Arc.svelte.test.d.ts} +0 -0
  856. /package/dist/components/{Image.svelte.test.d.ts → BoxPlot/BoxPlot.shared.svelte.js} +0 -0
  857. /package/dist/components/{Line.svelte.test.d.ts → Calendar/Calendar.shared.svelte.js} +0 -0
  858. /package/dist/components/{Polygon.svelte.test.d.ts → Cell/Cell.shared.svelte.js} +0 -0
  859. /package/dist/components/{Rect.svelte.test.d.ts → Chart/Chart.shared.svelte.js} +0 -0
  860. /package/dist/components/{Text.svelte.test.d.ts → ChartChildren/ChartChildren.shared.svelte.js} +0 -0
  861. /package/dist/components/geo/{GeoRaster.svelte.d.ts → GeoRaster/GeoRaster.svelte.d.ts} +0 -0
  862. /package/dist/components/geo/{GeoVisible.svelte.d.ts → GeoVisible/GeoVisible.svelte.d.ts} +0 -0
@@ -1,1201 +0,0 @@
1
- <script lang="ts" module>
2
- import { type ComponentProps, type Snippet } from 'svelte';
3
- import type { HTMLAttributes } from 'svelte/elements';
4
- import type { TimeInterval } from 'd3-time';
5
- import type { HierarchyNode } from 'd3-hierarchy';
6
- import type { SankeyGraph } from 'd3-sankey';
7
-
8
- import { getObjectOrNull, type Accessor } from '../utils/common.js';
9
- import type { MotionProp } from '../utils/motion.svelte.js';
10
- import { type AnyScale, type DomainType, isScaleBand } from '../utils/scales.svelte.js';
11
- import type {
12
- BaseRange,
13
- Nice,
14
- PaddingArray,
15
- Without,
16
- XRangeWithScale,
17
- YRangeWithScale,
18
- } from '../utils/types.js';
19
- import type { GeoStateProps } from '../states/geo.svelte.js';
20
- import TooltipContext from './tooltip/TooltipContext.svelte';
21
-
22
- import TransformContext from './TransformContext.svelte';
23
- // BrushContext (used only when `brush` prop is set) is lazy-loaded inline
24
- // via `{#await import(...)}` so non-brush charts don't pay for it.
25
- import type BrushContext from './BrushContext.svelte';
26
- import {
27
- type BrushDomainType,
28
- type BrushState,
29
- expandBandBrushDomain,
30
- } from '../states/brush.svelte.js';
31
-
32
- import { setChartContext } from '../contexts/chart.js';
33
- import { ChartState } from '../states/chart.svelte.js';
34
- import type { StackLayout } from '../states/series.svelte.js';
35
-
36
- import type { ChartChildrenProps } from './ChartChildren.svelte';
37
- import type { SeriesData } from './charts/types.js';
38
-
39
- export type ChartResizeDetail = {
40
- width: number;
41
- height: number;
42
- containerWidth: number;
43
- containerHeight: number;
44
- };
45
-
46
- export type PreservedChartConfig<
47
- T,
48
- XScale extends AnyScale = AnyScale,
49
- YScale extends AnyScale = AnyScale,
50
- > = Pick<
51
- ChartPropsWithoutHTML<T, XScale, YScale>,
52
- | 'x'
53
- | 'y'
54
- | 'z'
55
- | 'r'
56
- | 'c'
57
- | 'x1'
58
- | 'y1'
59
- | 'xRange'
60
- | 'yRange'
61
- | 'cDomain'
62
- | 'zDomain'
63
- | 'xDomain'
64
- | 'yDomain'
65
- | 'rDomain'
66
- | 'x1Domain'
67
- | 'y1Domain'
68
- | 'zRange'
69
- | 'rRange'
70
- | 'cRange'
71
- | 'x1Range'
72
- | 'y1Range'
73
- >;
74
-
75
- export type LayerChartInternalMeta = {
76
- /**
77
- * The current chart type.
78
- * The default is `'default'` which is any chart being composed
79
- * that isn't a "simplified chart".
80
- */
81
- type:
82
- | 'default'
83
- | 'simplified-area'
84
- | 'simplified-bar'
85
- | 'simplified-line'
86
- | 'simplified-pie'
87
- | 'simplified-scatter';
88
- };
89
-
90
- export type ChartPropsWithoutHTML<
91
- T,
92
- XScale extends AnyScale = AnyScale,
93
- YScale extends AnyScale = AnyScale,
94
- > = {
95
- /**
96
- * Whether this chart should be rendered server side
97
- *
98
- * @default false
99
- */
100
- ssr?: boolean;
101
-
102
- /**
103
- * Whether to allow pointer events via CSS.
104
- * Set this to `false` to set `pointer-events: none;` on all components, disabling
105
- * all mouse interactions.
106
- *
107
- * @default true
108
- */
109
- pointerEvents?: boolean;
110
-
111
- /**
112
- * Determine the positioning of the wrapper div.
113
- * Set this to `'absolute'` when you want to stack layers.
114
- *
115
- * @default 'relative'
116
- */
117
- position?: string;
118
-
119
- /**
120
- * If `true`, set all scale ranges to `[0, 100]`.
121
- * Ranges reversed via `xReverse`, `yReverse`, or `rReverse` props will
122
- * continue to be reversed as usual.
123
- * @default false
124
- */
125
- percentRange?: boolean;
126
-
127
- /**
128
- * A bindable reference to the root container element.
129
- */
130
- ref?: HTMLElement;
131
-
132
- /**
133
- * If `data` is not a flat array of objects and you want to use any of the scales, set a flat
134
- * version of the data via the `flatData` prop.
135
- */
136
- data?: T[] | readonly T[] | HierarchyNode<T> | SankeyGraph<any, any>;
137
-
138
- /**
139
- * A flat version of data.
140
- */
141
- flatData?: T[] | readonly T[] | HierarchyNode<T> | SankeyGraph<any, any>;
142
-
143
- /**
144
- * The x accessor. The key in each row of data that corresponds to the x-field. This can be a
145
- * string, an accessor function, a number or an array of any combination of those types. This
146
- * property gets converted to a function when you access it through the context.
147
- */
148
- x?: Accessor<T>;
149
-
150
- /**
151
- * The y accessor. The key in each row of data that corresponds to the y-field. This can be a
152
- * string, an accessor function, a number or an array of any combination of those types. This
153
- * property gets converted to a function when you access it through the context.
154
- */
155
- y?: Accessor<T>;
156
-
157
- /**
158
- * The z accessor. The key in each row of data that corresponds to the z-field. This can be a
159
- * string, an accessor function, a number or an array of any combination of those types. This
160
- * property gets converted to a function when you access it through the context.
161
- */
162
- z?: Accessor<T>;
163
-
164
- /**
165
- * The r accessor. The key in each row of data that corresponds to the r-field. This can be a
166
- * string, an accessor function, a number or an array of any combination of those types. This
167
- * property gets converted to a function when you access it through the context.
168
- */
169
- r?: Accessor<T>;
170
-
171
- /**
172
- * The x1 accessor. The key in each row of data that corresponds to the x1-field. This can be a
173
- * string, an accessor function, a number or an array of any combination of those types. This
174
- * property gets converted to a function when you access it through the context.
175
- */
176
- x1?: Accessor<T>;
177
-
178
- /**
179
- * The y1 accessor. The key in each row of data that corresponds to the y1-field. This can be
180
- * a string, an accessor function, a number or an array of any combination of those types. This
181
- * property gets converted to a function when you access it through the context.
182
- */
183
- y1?: Accessor<T>;
184
-
185
- /**
186
- * The c (color) accessor. The key in each row of data that corresponds to the color. This can
187
- * be a string or an accessor function. This property gets converted to a function when you
188
- * access it through the context.
189
- */
190
- c?: Accessor<T>;
191
-
192
- /**
193
- * Set a min or max. For linear scales, if you want to inherit the value from the data's
194
- * extent, set that value to `null`. This value can also be an array because sometimes your
195
- * scales are [piecewise](https://github.com/d3/d3-scale#continuous_domain) or are a list of
196
- * discrete values such as in [ordinal scales](https://github.com/d3/d3-scale#ordinal-scales),
197
- * useful for color series. Set it to a function that receives the computed domain and lets you
198
- * return a modified domain, useful for sorting values.
199
- */
200
- xDomain?: DomainType;
201
-
202
- /**
203
- * Set a min or max. For linear scales, if you want to inherit the value from the data's
204
- * extent, set that value to `null`. This value can also be an array because sometimes your
205
- * scales are [piecewise](https://github.com/d3/d3-scale#continuous_domain) or are a list of
206
- * discrete values such as in [ordinal scales](https://github.com/d3/d3-scale#ordinal-scales),
207
- * useful for color series. Set it to a function that receives the computed domain and lets you
208
- * return a modified domain, useful for sorting values.
209
- */
210
- yDomain?: DomainType;
211
-
212
- /**
213
- * Set a min or max. For linear scales, if you want to inherit the value from the data's
214
- * extent, set that value to `null`. This value can also be an array because sometimes your
215
- * scales are [piecewise](https://github.com/d3/d3-scale#continuous_domain) or are a list of
216
- * discrete values such as in [ordinal scales](https://github.com/d3/d3-scale#ordinal-scales),
217
- * useful for color series. Set it to a function that receives the computed domain and lets you
218
- * return a modified domain, useful for sorting values.
219
- */
220
- zDomain?: DomainType;
221
-
222
- /**
223
- * Set a min or max. For linear scales, if you want to inherit the value from the data's
224
- * extent, set that value to `null`. This value can also be an array because sometimes your
225
- * scales are [piecewise](https://github.com/d3/d3-scale#continuous_domain) or are a list of
226
- * discrete values such as in [ordinal scales](https://github.com/d3/d3-scale#ordinal-scales),
227
- * useful for color series. Set it to a function that receives the computed domain and lets you
228
- * return a modified domain, useful for sorting values.
229
- */
230
- rDomain?: DomainType;
231
-
232
- /**
233
- * Set a min or max. For linear scales, if you want to inherit the value from the data's
234
- * extent, set that value to `null`. This value can also be an array because sometimes your
235
- * scales are [piecewise](https://github.com/d3/d3-scale#continuous_domain) or are a list of
236
- * discrete values such as in [ordinal scales](https://github.com/d3/d3-scale#ordinal-scales),
237
- * useful for color series. Set it to a function that receives the computed domain and lets you
238
- * return a modified domain, useful for sorting values.
239
- */
240
- x1Domain?: DomainType;
241
-
242
- /**
243
- * Set a min or max. For linear scales, if you want to inherit the value from the data's
244
- * extent, set that value to `null`. This value can also be an array because sometimes your
245
- * scales are [piecewise](https://github.com/d3/d3-scale#continuous_domain) or are a list of
246
- * discrete values such as in [ordinal scales](https://github.com/d3/d3-scale#ordinal-scales),
247
- * useful for color series. Set it to a function that receives the computed domain and lets you
248
- * return a modified domain, useful for sorting values.
249
- */
250
- y1Domain?: DomainType;
251
-
252
- /**
253
- * Set the list of color values.
254
- */
255
- cDomain?: DomainType;
256
-
257
- /**
258
- * Applies D3's [scale.nice()](https://github.com/d3/d3-scale#continuous_nice) to the x domain.
259
- * @default false
260
- */
261
- xNice?: Nice;
262
-
263
- /**
264
- * Applies D3's [scale.nice()](https://github.com/d3/d3-scale#continuous_nice) to the y domain.
265
- * @default false
266
- */
267
- yNice?: Nice;
268
-
269
- /**
270
- * Applies D3's [scale.nice()](https://github.com/d3/d3-scale#continuous_nice) to the z domain.
271
- * @default false
272
- */
273
- zNice?: Nice;
274
-
275
- /**
276
- * Applies D3's [scale.nice()](https://github.com/d3/d3-scale#continuous_nice) to the r domain.
277
- * @default false
278
- */
279
- rNice?: Nice;
280
-
281
- /**
282
- * Assign a pixel value to add to the min or max of the scale. This will increase the scales
283
- * domain by the scale unit equivalent of the provided pixels.
284
- */
285
- xPadding?: PaddingArray;
286
- /**
287
- * Assign a pixel value to add to the min or max of the scale. This will increase the scales
288
- * domain by the scale unit equivalent of the provided pixels.
289
- */
290
- yPadding?: PaddingArray;
291
- /**
292
- * Assign a pixel value to add to the min or max of the scale. This will increase the scales
293
- * domain by the scale unit equivalent of the provided pixels.
294
- */
295
- zPadding?: PaddingArray;
296
- /**
297
- * Assign a pixel value to add to the min or max of the scale. This will increase the scales
298
- * domain by the scale unit equivalent of the provided pixels.
299
- */
300
- rPadding?: PaddingArray;
301
-
302
- /**
303
- * The D3 scale that should be used for the x-dimension. Pass in an instantiated D3 scale if
304
- * you want to override the default or you want to extra options.
305
- * @default autoScale
306
- */
307
- xScale?: XScale;
308
-
309
- /**
310
- * The D3 scale that should be used for the x-dimension. Pass in an instantiated D3 scale if
311
- * you want to override the default or you want to extra options.
312
- * @default autoScale
313
- */
314
- yScale?: YScale;
315
-
316
- /**
317
- * The D3 scale that should be used for the x-dimension. Pass in an instantiated D3 scale if
318
- * you want to override the default or you want to extra options.
319
- * @default autoScale
320
- */
321
- zScale?: AnyScale;
322
-
323
- /**
324
- * The D3 scale that should be used for the x-dimension. Pass in an instantiated D3 scale if
325
- * you want to override the default or you want to extra options.
326
- * @default scaleSqrt
327
- */
328
- rScale?: AnyScale;
329
-
330
- /**
331
- * The D3 scale that should be used for the x1-dimension. Pass in an instantiated D3 scale if
332
- * you want to override the default or you want to extra options.
333
- * @default autoScale
334
- */
335
- x1Scale?: AnyScale;
336
-
337
- /**
338
- * The D3 scale that should be used for the y1-dimension. Pass in an instantiated D3 scale if
339
- * you want to override the default or you want to extra options.
340
- * @default autoScale
341
- */
342
- y1Scale?: AnyScale;
343
-
344
- /**
345
- * The D3 scale that should be used for the color dimension. Pass in an instantiated D3 scale
346
- * if you want to override the default or you want to extra options.
347
- * @default scaleOrdinal
348
- */
349
- cScale?: AnyScale;
350
-
351
- /** Override the default x range of `[0, width]` by setting an array or function with argument
352
- * `({ width, height})` that returns an array. Setting this prop overrides `xReverse`. This can
353
- * also be a list of numbers or strings for scales with discrete ranges like
354
- * [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
355
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
356
- */
357
- xRange?: BaseRange;
358
-
359
- /**
360
- * Override the default y range of `[0, height]` by setting an array or function with argument
361
- * `({ width, height})` that returns an array. Setting this prop overrides `yReverse`. This can
362
- * also be a list of numbers or strings for scales with discrete ranges like
363
- * [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
364
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
365
- */
366
- yRange?: BaseRange;
367
-
368
- /** Override the default z range of `[0, width]` by setting an array or function with argument
369
- * `({ width, height})` that returns an array. Setting this prop overrides `zReverse`. This can
370
- * also be a list of numbers or strings for scales with discrete ranges like
371
- * [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
372
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
373
- */
374
- zRange?: BaseRange;
375
-
376
- /** Override the default r range of `[1, 25]` by setting an array or function with argument
377
- * `({ width, height})` that returns an array. Setting this prop overrides `rReverse`. This can
378
- * also be a list of numbers or strings for scales with discrete ranges like
379
- * [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
380
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
381
- */
382
- rRange?: BaseRange;
383
-
384
- /**
385
- * Set the x1 range by setting an array or function with argument `({ xScale, width, height})`
386
- * that returns an array. This can also be a list of numbers or strings for scales with
387
- * discrete ranges like [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
388
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
389
- */
390
- x1Range?: XRangeWithScale<XScale>;
391
-
392
- /**
393
- * Set the y1 range by setting an array or function with argument `({ yScale, width, height})`
394
- * that returns an array. This can also be a list of numbers or strings for scales with
395
- * discrete ranges like [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
396
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
397
- */
398
- y1Range?: YRangeWithScale<YScale>;
399
-
400
- /**
401
- * Override the default y1 range of `[0, width]` by setting an array or function with argument
402
- * `({ yScale, width, height})` that returns an array. Setting this prop overrides `x1Reverse`.
403
- * This can also be a list of numbers or strings for scales with discrete ranges like
404
- * [scaleThreshold](https://github.com/d3/d3-scale#threshold-scales) or
405
- * [scaleQuantize](https://github.com/d3/d3-scale#quantize-scales).
406
- */
407
- cRange?: string[] | readonly string[];
408
-
409
- /**
410
- * Reverse the default x range. By default this is `false` and the range is `[0, width]`.
411
- * Ignored if you set the xRange prop.
412
- * @default false
413
- */
414
- xReverse?: boolean;
415
-
416
- /**
417
- * Reverse the default y range. By default this is `true` and the range is `[height, 0]` unless
418
- * using an ordinal scale with a `.bandwidth` method for `yScale`.
419
- * Ignored if you set the `yRange` prop.
420
- * @default true
421
- */
422
- yReverse?: boolean;
423
-
424
- /**
425
- * Reverse the default z range. By default this is `false` and the range is `[0, width]`.
426
- * Ignored if you set the zRange prop.
427
- * @default false
428
- */
429
- zReverse?: boolean;
430
-
431
- /**
432
- * Reverse the default r range. By default this is `false` and the range is `[1, 25]`.
433
- * Ignored if you set the rRange prop.
434
- * @default false
435
- */
436
- rReverse?: boolean;
437
-
438
- /**
439
- * ***Only used when scale is ordinal.***
440
- * Set whether the calculated unique items come back sorted.
441
- *
442
- * @default false
443
- */
444
- xDomainSort?: boolean;
445
-
446
- /**
447
- * ***Only used when scale is ordinal.***
448
- * Set whether the calculated unique items come back sorted.
449
- *
450
- * @default false
451
- */
452
- yDomainSort?: boolean;
453
-
454
- /**
455
- * ***Only used when scale is ordinal.***
456
- * Set whether the calculated unique items come back sorted.
457
- *
458
- * @default false
459
- */
460
- zDomainSort?: boolean;
461
-
462
- /**
463
- * ***Only used when scale is ordinal.***
464
- * Set whether the calculated unique items come back sorted.
465
- *
466
- * @default false
467
- */
468
- rDomainSort?: boolean;
469
-
470
- /**
471
- * The amount of padding to put around your chart. It operates like CSS
472
- * box-sizing: border-box; where values are subtracted from the parent container's width
473
- * and height, the same as a [D3 margin convention](https://bl.ocks.org/mbostock/3019563).
474
- *
475
- * If a number is passed, it will be applied to all sides.
476
- */
477
- padding?: { top?: number; right?: number; bottom?: number; left?: number } | number;
478
-
479
- /**
480
- * Manually set the extents of the x, y or r scale as a two-dimensional array of the min and
481
- * max you want. Setting values here will skip any dynamic extent calculation of the data for
482
- * that dimension.
483
- */
484
- extents?: {
485
- x?: [min: number, max: number];
486
- y?: [min: number, max: number];
487
- r?: [min: number, max: number];
488
- z?: [min: number, max: number];
489
- };
490
-
491
- /**
492
- * Any extra configuration values you want available on the Chart context.
493
- * This could be useful for color lookups or additional constants.
494
- */
495
- meta?: Record<string, any>;
496
-
497
- /**
498
- * Enable debug printing to the console.
499
- * Useful to inspect your scales and dimensions.
500
- *
501
- * @default false
502
- */
503
- debug?: boolean;
504
-
505
- /**
506
- * Show warnings in the console.
507
- *
508
- * @default true
509
- */
510
- verbose?: boolean;
511
-
512
- /**
513
- * x value guaranteed to be visible in xDomain. Useful with optional negative values since
514
- * `xDomain={[0, null]}` would ignore negative values
515
- *
516
- * @default null
517
- */
518
- xBaseline?: number | null;
519
-
520
- /**
521
- * y value guaranteed to be visible in yDomain. Useful with optional negative values since
522
- * `yDomain={[0, null]}` would ignore negative values
523
- *
524
- * @default null
525
- */
526
- yBaseline?: number | null;
527
-
528
- /**
529
- * Time interval to use for the x-axis when using a time scale.
530
- */
531
- xInterval?: TimeInterval | null;
532
-
533
- /**
534
- * Time interval to use for the y-axis when using a time scale.
535
- */
536
- yInterval?: TimeInterval | null;
537
-
538
- /**
539
- * The axis that represents the value dimension, typically based on the type and orientation of the chart
540
- *
541
- * @default 'y'
542
- */
543
- valueAxis?: 'x' | 'y';
544
-
545
- /**
546
- * Use radial instead of cartesian coordinates, mapping `x` to `angle` and `y`` to radial.
547
- * Radial lines are positioned relative to the origin, use transform (ex. `<Group center>`)
548
- * to change the origin
549
- *
550
- * @default false
551
- */
552
- radial?: boolean;
553
-
554
- children?: Snippet<[{ context: ChartState<T, XScale, YScale> }]>;
555
-
556
- /**
557
- * A bindable reference to the chart context.
558
- */
559
- context?: ChartState<T, XScale, YScale>;
560
-
561
- /**
562
- * Props passed to GeoState
563
- */
564
- geo?: Partial<GeoStateProps>;
565
-
566
- /**
567
- * Props passed to the `TooltipContext` component.
568
- */
569
- tooltipContext?: Partial<ComponentProps<typeof TooltipContext>> | boolean;
570
-
571
- /**
572
- * Props passed to TransformContext, with optional domain-space constraints.
573
- */
574
- transform?: Partial<ComponentProps<typeof TransformContext>> & {
575
- /**
576
- * Controls which projection properties are updated by transform state in `mode: 'projection'`.
577
- * Auto-detected from the projection type when not specified:
578
- * - Globe projections (e.g. `geoOrthographic`): `{ rotation: true, scale: false, translate: false }`
579
- * - Flat maps (e.g. `geoMercator`): `{ rotation: false, scale: true, translate: true }`
580
- *
581
- * `rotation` and `translate` are mutually exclusive.
582
- */
583
- apply?: {
584
- /** Apply transform translate as projection rotation (yaw/pitch). */
585
- rotation?: boolean;
586
- /** Apply transform scale to projection scale. */
587
- scale?: boolean;
588
- /** Apply transform translate to projection translate. */
589
- translate?: boolean;
590
- };
591
-
592
- /**
593
- * Domain-space constraints for pan/zoom in `mode: 'domain'`.
594
- * Expressed in data units (numbers, Dates) rather than pixel-space.
595
- * Converted internally to a `constrain` function on TransformState.
596
- */
597
- domainExtent?: {
598
- x?: {
599
- /** Minimum domain value. `'data'` = initial data bounds. */
600
- min?: number | Date | 'data';
601
- /** Maximum domain value. `'data'` = initial data bounds. */
602
- max?: number | Date | 'data';
603
- /** Minimum visible range (max zoom in). In data units (e.g., ms for dates). */
604
- minRange?: number;
605
- };
606
- y?: {
607
- min?: number | Date | 'data';
608
- max?: number | Date | 'data';
609
- minRange?: number;
610
- };
611
- };
612
- };
613
-
614
- /** Props passed to BrushContext */
615
- brush?:
616
- | (Partial<ComponentProps<typeof BrushContext>> & {
617
- /**
618
- * Zoom the chart domain to the brushed area on brush end.
619
- *
620
- * @default false
621
- */
622
- zoomOnBrush?: boolean;
623
- })
624
- | boolean;
625
-
626
- /** Series definitions for multi-series charts */
627
- series?: SeriesData<T, any>[];
628
-
629
- /** Layout mode for series: 'overlap', 'group', 'stack', 'stackExpand', 'stackDiverging' */
630
- seriesLayout?: StackLayout | 'group';
631
-
632
- /**
633
- * Padding between primary bands (e.g. bars), applied to the category axis scaleBand().padding().
634
- * When set, the category axis (opposite of valueAxis) automatically uses a scaleBand with this padding.
635
- */
636
- bandPadding?: number;
637
-
638
- /**
639
- * Padding between group/series items when using seriesLayout="group", applied to the x1/y1 scaleBand().padding().
640
- * @default 0
641
- */
642
- groupPadding?: number;
643
-
644
- /**
645
- * A callback function that is called when the chart is resized.
646
- */
647
- onResize?: (e: ChartResizeDetail) => void;
648
-
649
- /**
650
- * Whether to clip overflow content.
651
- * When true, sets `overflow: hidden` on the container.
652
- *
653
- * @default false
654
- */
655
- clip?: boolean;
656
-
657
- /**
658
- * Animate scale domain transitions with spring or tween motion.
659
- * Applies to all domain changes (data updates, brush zoom, transform, etc.)
660
- */
661
- motion?: MotionProp;
662
-
663
- // TransformContext callback events
664
- ondragstart?: ComponentProps<typeof TransformContext>['ondragstart'];
665
- ondragend?: ComponentProps<typeof TransformContext>['ondragend'];
666
- onTransform?: ComponentProps<typeof TransformContext>['onTransform'];
667
-
668
- /** Sets width of the chart container. Uses parent width if not set (bind:clientWidth) */
669
- width?: number;
670
-
671
- /** Sets height of the chart container. Uses parent height if not set (bind:clientHeight) */
672
- height?: number;
673
- } & ChartChildrenProps<T, XScale, YScale>;
674
-
675
- export type ChartProps<
676
- T,
677
- XScale extends AnyScale = AnyScale,
678
- YScale extends AnyScale = AnyScale,
679
- > = ChartPropsWithoutHTML<T, XScale, YScale> &
680
- Without<HTMLAttributes<HTMLDivElement>, ChartPropsWithoutHTML<T, XScale, YScale>>;
681
- </script>
682
-
683
- <script
684
- lang="ts"
685
- generics="TData = any, XScale extends AnyScale = AnyScale, YScale extends AnyScale = AnyScale"
686
- >
687
- import { setGeoContext } from '../contexts/geo.js';
688
- import { getSettings } from '../contexts/settings.js';
689
- import ChartChildren from './ChartChildren.svelte';
690
-
691
- let {
692
- ref: refProp = $bindable(),
693
- context: contextProp = $bindable(),
694
- ...props
695
- }: ChartProps<TData, XScale, YScale> = $props();
696
-
697
- let {
698
- ssr = false,
699
- pointerEvents = true,
700
- width,
701
- height,
702
- position = 'relative',
703
- children,
704
- geo,
705
- tooltipContext,
706
- transform,
707
- onTransform,
708
- ondragend,
709
- ondragstart,
710
- brush,
711
- motion,
712
- debug = false,
713
- clip = false,
714
- onTooltipClick,
715
- class: className,
716
- ...restProps
717
- } = $derived(props);
718
-
719
- let brushXDomain = $state<BrushDomainType>();
720
- let brushYDomain = $state<BrushDomainType>();
721
-
722
- const chartState = new ChartState<TData, XScale, YScale>(() => ({
723
- ref: refProp,
724
- context: contextProp,
725
- ...props,
726
- xDomain: brushXDomain ?? props.xDomain,
727
- yDomain: brushYDomain ?? props.yDomain,
728
- }));
729
-
730
- let ref = $state<HTMLElement>();
731
- $effect.pre(() => {
732
- refProp = ref;
733
- chartState.containerRef = ref;
734
- });
735
-
736
- // Update bindable
737
- contextProp = chartState;
738
-
739
- setChartContext(chartState);
740
- setGeoContext(chartState.geoState);
741
-
742
- const settings = getSettings();
743
- $effect(() => {
744
- settings.debug = debug;
745
- });
746
-
747
- // Resolve which projection properties the transform state applies to
748
- const resolvedApply = $derived.by(() => {
749
- if (transform?.mode !== 'projection')
750
- return { rotation: false, scale: false, translate: false };
751
-
752
- // Auto-detect globe projections from clipAngle (flat projections return 0, globes return > 0)
753
- let isGlobe = false;
754
- if (geo?.projection) {
755
- const proj = geo.projection();
756
- isGlobe = (proj.clipAngle?.() ?? 0) > 0;
757
- }
758
-
759
- const defaults = isGlobe
760
- ? { rotation: true, scale: true, translate: false }
761
- : { rotation: false, scale: true, translate: true };
762
-
763
- // User overrides win; enforce mutual exclusion
764
- const result = { ...defaults, ...transform?.apply };
765
- if (transform?.apply?.rotation === true && transform?.apply?.translate == null) {
766
- result.translate = false;
767
- }
768
- if (transform?.apply?.translate === true && transform?.apply?.rotation == null) {
769
- result.rotation = false;
770
- }
771
-
772
- return result;
773
- });
774
-
775
- $effect.pre(() => {
776
- if (chartState.geoState) {
777
- chartState.geoState.transformApply = resolvedApply;
778
- }
779
- });
780
-
781
- const initialTransform = $derived.by(() => {
782
- if (
783
- transform?.mode !== 'projection' ||
784
- !(resolvedApply.translate || resolvedApply.scale) ||
785
- !geo?.fitGeojson ||
786
- !geo?.projection
787
- ) {
788
- return undefined;
789
- }
790
- // Inlined to avoid pulling `$lib/utils/geo.js` (and its d3-geo imports)
791
- // into Chart's static graph for non-geo charts.
792
- const fitted = geo.projection().fitSize([chartState.width, chartState.height], geo.fitGeojson);
793
- const t = fitted.translate();
794
- return { translate: { x: t[0], y: t[1] }, scale: fitted.scale() };
795
- });
796
-
797
- const processTranslate = $derived.by(() => {
798
- if (resolvedApply.rotation && chartState.geoState?.projection) {
799
- return (x: number, y: number, deltaX: number, deltaY: number) => {
800
- // When applying transform as rotation, invert `y` values and reduce sensitivity based on projection scale
801
- // see: https://observablehq.com/@benoldenburg/simple-globe and https://observablehq.com/@michael-keith/draggable-globe-in-d3
802
- const projectionScale = chartState.geoState.projection!.scale() ?? 0;
803
- const sensitivity = 75;
804
- return {
805
- x: x + deltaX * (sensitivity / projectionScale),
806
- y: y + deltaY * (sensitivity / projectionScale) * -1,
807
- };
808
- };
809
- }
810
- return undefined;
811
- });
812
-
813
- // Convert domainExtent to a constrain function on TransformState
814
- const domainExtentConstrain = $derived.by(() => {
815
- const de = transform?.domainExtent;
816
- if (!de) return undefined;
817
-
818
- return (t: { scale: number; translate: { x: number; y: number } }) => {
819
- let { scale, translate } = t;
820
-
821
- // Helper to resolve 'data' to base domain values
822
- const resolveValue = (
823
- val: number | Date | 'data' | undefined,
824
- baseDomainValue: unknown
825
- ): number | undefined => {
826
- if (val === undefined) return undefined;
827
- if (val === 'data') {
828
- if (baseDomainValue instanceof Date) return baseDomainValue.getTime();
829
- return baseDomainValue as number;
830
- }
831
- if (val instanceof Date) return val.getTime();
832
- return val;
833
- };
834
-
835
- // Constrain a single axis. Normalizes reversed domains (e.g. [500, 0])
836
- // to ascending order, applies constraints, then maps back.
837
- const constrainAxis = (
838
- axisTranslate: number,
839
- axisScale: number,
840
- dimension: number,
841
- baseDomain: number[],
842
- extent:
843
- | { min?: number | Date | 'data'; max?: number | Date | 'data'; minRange?: number }
844
- | undefined
845
- ): number => {
846
- if (!extent || baseDomain.length < 2 || dimension <= 0) return axisTranslate;
847
-
848
- const d0 = baseDomain[0] as unknown;
849
- const d1 = baseDomain[1] as unknown;
850
-
851
- // Skip domain extent constraint for categorical scales (range clamping handles boundaries)
852
- if (typeof d0 === 'string') return axisTranslate;
853
- const isDate = d0 instanceof Date;
854
- const rawD0 = isDate ? (d0 as Date).getTime() : (d0 as number);
855
- const rawD1 = isDate ? (d1 as Date).getTime() : (d1 as number);
856
- const range = Math.abs(rawD1 - rawD0);
857
- if (!isFinite(range) || range === 0) return axisTranslate;
858
-
859
- // Normalize reversed domains by flipping the translate
860
- const reversed = rawD0 > rawD1;
861
- const normTranslate = reversed
862
- ? dimension * axisScale - axisTranslate - dimension
863
- : axisTranslate;
864
- const numMin = Math.min(rawD0, rawD1);
865
-
866
- const rawMinVal = resolveValue(extent.min, baseDomain[0]);
867
- const rawMaxVal = resolveValue(extent.max, baseDomain[1]);
868
- const minVal =
869
- rawMinVal != null && rawMaxVal != null ? Math.min(rawMinVal, rawMaxVal) : rawMinVal;
870
- const maxVal =
871
- rawMinVal != null && rawMaxVal != null ? Math.max(rawMinVal, rawMaxVal) : rawMaxVal;
872
-
873
- // Current visible domain from translate/scale
874
- const f0 = -normTranslate / axisScale / dimension;
875
- const f1 = (dimension - normTranslate) / axisScale / dimension;
876
- let visMin = numMin + f0 * range;
877
- let visMax = numMin + f1 * range;
878
- const visRange = visMax - visMin;
879
-
880
- // Enforce minRange (max zoom in limit)
881
- if (extent.minRange != null && visRange < extent.minRange) {
882
- const center = (visMin + visMax) / 2;
883
- visMin = center - extent.minRange / 2;
884
- visMax = center + extent.minRange / 2;
885
- }
886
-
887
- // Enforce domain min/max (pan boundaries)
888
- if (minVal != null && visMin < minVal) {
889
- visMin = minVal;
890
- visMax =
891
- visMin +
892
- (extent.minRange != null && visRange < extent.minRange ? extent.minRange : visRange);
893
- }
894
- if (maxVal != null && visMax > maxVal) {
895
- visMax = maxVal;
896
- visMin =
897
- visMax -
898
- (extent.minRange != null && visRange < extent.minRange ? extent.minRange : visRange);
899
- if (minVal != null && visMin < minVal) visMin = minVal;
900
- }
901
-
902
- // Back-compute translate from corrected visible domain
903
- const newF0 = (visMin - numMin) / range;
904
- const result = -newF0 * axisScale * dimension;
905
- return reversed ? dimension * axisScale - result - dimension : result;
906
- };
907
-
908
- const transformAxis = transform?.axis ?? 'both';
909
-
910
- if (de.x && (transformAxis === 'x' || transformAxis === 'both') && chartState.width > 0) {
911
- // Also enforce minRange via scale clamping
912
- if (de.x.minRange != null && chartState._baseXDomain.length >= 2) {
913
- const d0 = chartState._baseXDomain[0] as unknown;
914
- const d1 = chartState._baseXDomain[1] as unknown;
915
- const isDate = d0 instanceof Date;
916
- const numD0 = isDate ? (d0 as Date).getTime() : (d0 as number);
917
- const numD1 = isDate ? (d1 as Date).getTime() : (d1 as number);
918
- const fullRange = Math.abs(numD1 - numD0);
919
- if (fullRange > 0) {
920
- const maxScale = fullRange / de.x.minRange;
921
- scale = Math.min(scale, maxScale);
922
- }
923
- }
924
- translate = {
925
- ...translate,
926
- x: constrainAxis(translate.x, scale, chartState.width, chartState._baseXDomain, de.x),
927
- };
928
- }
929
-
930
- if (de.y && (transformAxis === 'y' || transformAxis === 'both') && chartState.height > 0) {
931
- if (de.y.minRange != null && chartState._baseYDomain.length >= 2) {
932
- const d0 = chartState._baseYDomain[0] as unknown;
933
- const d1 = chartState._baseYDomain[1] as unknown;
934
- const isDate = d0 instanceof Date;
935
- const numD0 = isDate ? (d0 as Date).getTime() : (d0 as number);
936
- const numD1 = isDate ? (d1 as Date).getTime() : (d1 as number);
937
- const fullRange = Math.abs(numD1 - numD0);
938
- if (fullRange > 0) {
939
- const maxScale = fullRange / de.y.minRange;
940
- scale = Math.min(scale, maxScale);
941
- }
942
- }
943
- translate = {
944
- ...translate,
945
- y: constrainAxis(translate.y, scale, chartState.height, chartState._baseYDomain, de.y),
946
- };
947
- }
948
-
949
- return { scale, translate };
950
- };
951
- });
952
-
953
- // Whether this is a band scale domain transform (affects scaleExtent and constrain defaults)
954
- const isBandDomainTransform = $derived(
955
- transform?.mode === 'domain' &&
956
- (((transform.axis ?? 'both') !== 'y' && isScaleBand(chartState._xScaleProp)) ||
957
- ((transform.axis ?? 'both') !== 'x' && isScaleBand(chartState._yScaleProp)))
958
- );
959
-
960
- // For projection mode, scaleExtent is relative to the initial fitted scale (like d3-zoom).
961
- // e.g. [0.5, 8] means 0.5x to 8x of the fitted projection scale.
962
- // For band scale domain transforms, enforce minimum of 1 (can't zoom out past initial view).
963
- const resolvedScaleExtent = $derived.by(() => {
964
- if (transform?.mode === 'projection' && transform?.scaleExtent && initialTransform) {
965
- const baseScale = initialTransform.scale;
966
- return [transform.scaleExtent[0] * baseScale, transform.scaleExtent[1] * baseScale] as [
967
- number,
968
- number,
969
- ];
970
- }
971
- if (!isBandDomainTransform) return transform?.scaleExtent;
972
- const userExtent = transform?.scaleExtent;
973
- return [Math.max(1, userExtent?.[0] ?? 1), userExtent?.[1] ?? Infinity] as [number, number];
974
- });
975
-
976
- // For projection mode with flat projections, translateExtent defines the pannable world bounds
977
- // at the initial (1x) zoom level, similar to d3-zoom. The allowed translate range scales with
978
- // the zoom ratio so you can pan more when zoomed in.
979
- // For rotation mode (globes), translateExtent is passed through as degrees (yaw/pitch).
980
- const resolvedTranslateExtent = $derived.by(() => {
981
- if (transform?.mode === 'projection' && transform?.translateExtent) {
982
- if (resolvedApply.rotation) {
983
- // Rotation mode: values are degrees (yaw/pitch), pass through as-is
984
- return transform.translateExtent;
985
- }
986
- // Flat projection translate mode: handled via projectionTranslateConstrain below
987
- return undefined;
988
- }
989
- return transform?.translateExtent;
990
- });
991
-
992
- // For flat projection mode, implement d3-zoom-style translate constraining:
993
- // The viewport (at current zoom) must overlap with the translateExtent world bounds.
994
- // As zoom increases, the allowed translate range grows proportionally.
995
- const projectionTranslateConstrain = $derived.by(() => {
996
- if (
997
- transform?.mode !== 'projection' ||
998
- !transform?.translateExtent ||
999
- !initialTransform ||
1000
- resolvedApply.rotation
1001
- ) {
1002
- return undefined;
1003
- }
1004
-
1005
- const baseScale = initialTransform.scale;
1006
- const baseTranslate = initialTransform.translate;
1007
- const [[x0, y0], [x1, y1]] = transform.translateExtent;
1008
-
1009
- return (t: { scale: number; translate: { x: number; y: number } }) => {
1010
- let { scale, translate } = t;
1011
- // Zoom ratio relative to fitted scale
1012
- const k = scale / baseScale;
1013
-
1014
- // Allowed translate range scales with zoom ratio
1015
- translate = {
1016
- x: Math.max(baseTranslate.x + x0 * k, Math.min(baseTranslate.x + x1 * k, translate.x)),
1017
- y: Math.max(baseTranslate.y + y0 * k, Math.min(baseTranslate.y + y1 * k, translate.y)),
1018
- };
1019
-
1020
- return { scale, translate };
1021
- };
1022
- });
1023
-
1024
- // Default constrain for band scale domain transforms: prevent panning past data boundaries
1025
- const bandScaleConstrain = $derived.by(() => {
1026
- if (!isBandDomainTransform) return undefined;
1027
- const xIsBand = (transform!.axis ?? 'both') !== 'y' && isScaleBand(chartState._xScaleProp);
1028
- const yIsBand = (transform!.axis ?? 'both') !== 'x' && isScaleBand(chartState._yScaleProp);
1029
-
1030
- return (t: { scale: number; translate: { x: number; y: number } }) => {
1031
- let { scale, translate } = t;
1032
- let tx = translate.x;
1033
- let ty = translate.y;
1034
- if (xIsBand) {
1035
- // translate.x must be in [width * (1 - scale), 0]
1036
- tx = Math.max(chartState.width * (1 - scale), Math.min(0, tx));
1037
- }
1038
- if (yIsBand) {
1039
- ty = Math.max(chartState.height * (1 - scale), Math.min(0, ty));
1040
- }
1041
- return { scale, translate: { x: tx, y: ty } };
1042
- };
1043
- });
1044
-
1045
- // Compose user-provided constrain with domainExtent constrain and band scale constrain
1046
- const composedConstrain = $derived.by(() => {
1047
- const userConstrain = transform?.constrain;
1048
- const constrains = [
1049
- bandScaleConstrain,
1050
- domainExtentConstrain,
1051
- projectionTranslateConstrain,
1052
- userConstrain,
1053
- ].filter(Boolean) as Array<
1054
- (t: { scale: number; translate: { x: number; y: number } }) => {
1055
- scale: number;
1056
- translate: { x: number; y: number };
1057
- }
1058
- >;
1059
- if (constrains.length === 0) return undefined;
1060
- if (constrains.length === 1) return constrains[0];
1061
- return (t: { scale: number; translate: { x: number; y: number } }) => {
1062
- return constrains.reduce((acc, fn) => fn(acc), t);
1063
- };
1064
- });
1065
-
1066
- const enhancedBrushProps = $derived.by(() => {
1067
- if (!brush) return { disabled: true };
1068
- const userProps = typeof brush === 'object' ? brush : {};
1069
-
1070
- const userOnBrushEnd = userProps.onBrushEnd;
1071
- const zoomOnBrush = 'zoomOnBrush' in userProps ? userProps.zoomOnBrush : false;
1072
- const needsEnhancement = transform?.mode === 'domain' || zoomOnBrush;
1073
- if (!needsEnhancement) return userProps;
1074
-
1075
- return {
1076
- ...userProps,
1077
- onBrushEnd: (e: { brush: BrushState }) => {
1078
- if (e.brush.active) {
1079
- if (transform?.mode === 'domain') {
1080
- chartState.zoomToBrush(e.brush, userProps.axis ?? 'x');
1081
- } else if (zoomOnBrush) {
1082
- const axis = userProps.axis ?? 'x';
1083
- if (axis === 'x' || axis === 'both') {
1084
- brushXDomain = expandBandBrushDomain(e.brush.x, chartState._baseXDomain);
1085
- }
1086
- if (axis === 'y' || axis === 'both') {
1087
- brushYDomain = expandBandBrushDomain(e.brush.y, chartState._baseYDomain);
1088
- }
1089
- }
1090
- userOnBrushEnd?.(e);
1091
- e.brush.reset();
1092
- } else {
1093
- // Brush was cleared (click-to-reset) — reset transform/domain too
1094
- if (transform?.mode === 'domain') {
1095
- chartState.transform.reset();
1096
- } else if (zoomOnBrush) {
1097
- brushXDomain = undefined;
1098
- brushYDomain = undefined;
1099
- }
1100
- userOnBrushEnd?.(e);
1101
- }
1102
- },
1103
- };
1104
- });
1105
- </script>
1106
-
1107
- {#if ssr === true || typeof window !== 'undefined'}
1108
- <div
1109
- bind:this={ref}
1110
- style:position
1111
- style:top={position === 'absolute' ? 0 : null}
1112
- style:right={position === 'absolute' ? 0 : null}
1113
- style:bottom={position === 'absolute' ? 0 : null}
1114
- style:left={position === 'absolute' ? 0 : null}
1115
- style:pointer-events={pointerEvents === false ? 'none' : null}
1116
- style:overflow={clip ? 'hidden' : null}
1117
- style:width={width ? `${width}px` : '100%'}
1118
- style:height={height ? `${height}px` : '100%'}
1119
- bind:clientWidth={chartState._containerWidth}
1120
- bind:clientHeight={chartState._containerHeight}
1121
- class={['lc-root-container', className]}
1122
- {...restProps}
1123
- >
1124
- {#key chartState.isMounted}
1125
- <!-- svelte-ignore ownership_invalid_binding -->
1126
- {@const {
1127
- domainExtent: _de,
1128
- constrain: _uc,
1129
- apply: _apply,
1130
- scaleExtent: _se,
1131
- translateExtent: _te,
1132
- ...transformProps
1133
- } = transform ?? {}}
1134
- <TransformContext
1135
- bind:state={chartState.transformState}
1136
- mode={transform?.mode ?? 'none'}
1137
- initialTranslate={resolvedApply.translate ? initialTransform?.translate : undefined}
1138
- initialScale={resolvedApply.scale ? initialTransform?.scale : undefined}
1139
- {processTranslate}
1140
- {...transformProps}
1141
- scaleExtent={resolvedScaleExtent}
1142
- translateExtent={resolvedTranslateExtent}
1143
- constrain={composedConstrain}
1144
- disablePointer={brush === true ||
1145
- (typeof brush === 'object' && !brush.disabled) ||
1146
- transform?.disablePointer}
1147
- {ondragstart}
1148
- {onTransform}
1149
- {ondragend}
1150
- >
1151
- {#if brush}
1152
- {#await import('./BrushContext.svelte')}
1153
- <!--
1154
- Pending: render the chart subtree immediately so the chart paints
1155
- before the BrushContext chunk arrives (avoids a perceived hang on
1156
- slow networks). The subtree re-mounts once `{:then}` resolves —
1157
- acceptable because it happens before user interaction, brush is
1158
- an opt-in feature, and any chart state at that point is empty.
1159
- -->
1160
- <!-- svelte-ignore ownership_invalid_binding -->
1161
- <TooltipContext
1162
- onclick={onTooltipClick}
1163
- {...getObjectOrNull(tooltipContext)}
1164
- bind:state={chartState.tooltipState}
1165
- >
1166
- <ChartChildren {children} {tooltipContext} {...restProps} />
1167
- </TooltipContext>
1168
- {:then { default: BrushContext }}
1169
- <!-- svelte-ignore ownership_invalid_binding -->
1170
- <BrushContext {...enhancedBrushProps} bind:state={chartState.brushState}>
1171
- <!-- svelte-ignore ownership_invalid_binding -->
1172
- <TooltipContext
1173
- onclick={onTooltipClick}
1174
- {...getObjectOrNull(tooltipContext)}
1175
- bind:state={chartState.tooltipState}
1176
- >
1177
- <ChartChildren {children} {tooltipContext} {...restProps} />
1178
- </TooltipContext>
1179
- </BrushContext>
1180
- {/await}
1181
- {:else}
1182
- <!-- svelte-ignore ownership_invalid_binding -->
1183
- <TooltipContext
1184
- onclick={onTooltipClick}
1185
- {...getObjectOrNull(tooltipContext)}
1186
- bind:state={chartState.tooltipState}
1187
- >
1188
- <ChartChildren {children} {tooltipContext} {...restProps} />
1189
- </TooltipContext>
1190
- {/if}
1191
- </TransformContext>
1192
- {/key}
1193
- </div>
1194
- {/if}
1195
-
1196
- <style>
1197
- .lc-root-container,
1198
- .lc-root-container :global(*) {
1199
- box-sizing: border-box;
1200
- }
1201
- </style>