vccs 0.6.0 → 1.0.0-beta.2

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 (728) hide show
  1. package/LICENSE +25 -0
  2. package/README.md +133 -112
  3. package/dist/animation/ActiveDot.d.ts +14 -0
  4. package/dist/animation/MovingLabels.d.ts +57 -0
  5. package/dist/animation/SweepClip.d.ts +56 -0
  6. package/dist/animation/gridTransition.d.ts +38 -0
  7. package/dist/animation/motion.d.ts +78 -0
  8. package/dist/animation/ridingLabels.d.ts +29 -0
  9. package/dist/animation/useAnimationCallbacks.d.ts +5 -0
  10. package/dist/animation/useKeyedTransition.d.ts +86 -0
  11. package/dist/animation/usePointTransition.d.ts +40 -0
  12. package/dist/animation/useReducedMotion.d.ts +2 -0
  13. package/dist/animation/useTickMotion.d.ts +22 -0
  14. package/dist/cartesian/ActivePoints.d.ts +71 -0
  15. package/dist/cartesian/GraphicalItemClipPath.d.ts +27 -2
  16. package/dist/cartesian/area/Area.d.ts +229 -14
  17. package/dist/cartesian/area/RenderArea.d.ts +1 -16
  18. package/dist/cartesian/area/hooks/useArea.d.ts +13 -18
  19. package/dist/cartesian/area/type.d.ts +32 -81
  20. package/dist/cartesian/axis/AxisProps.d.ts +101 -0
  21. package/dist/cartesian/axis/XAxis.d.ts +144 -83
  22. package/dist/cartesian/axis/YAxis.d.ts +152 -94
  23. package/dist/cartesian/bar/Bar.d.ts +229 -2
  24. package/dist/cartesian/bar/components/BarBackground.d.ts +1 -1
  25. package/dist/cartesian/bar/hooks/useBar.d.ts +31 -15
  26. package/dist/cartesian/bar/type.d.ts +46 -77
  27. package/dist/cartesian/brush/Brush.d.ts +150 -2
  28. package/dist/cartesian/brush/components/BrushText.d.ts +7 -7
  29. package/dist/cartesian/brush/components/Panorama.d.ts +7 -5
  30. package/dist/cartesian/brush/components/Slide.d.ts +4 -4
  31. package/dist/cartesian/brush/components/TravellerLayer.d.ts +21 -13
  32. package/dist/cartesian/brush/hooks/useBrushHandlers.d.ts +3 -4
  33. package/dist/cartesian/brush/hooks/useBrushState.d.ts +16 -16
  34. package/dist/cartesian/brush/type.d.ts +14 -33
  35. package/dist/cartesian/brush/utils.d.ts +5 -6
  36. package/dist/cartesian/cartesian-axis/CartesianAxis.d.ts +37 -63
  37. package/dist/cartesian/cartesian-grid/Background.d.ts +1 -1
  38. package/dist/cartesian/cartesian-grid/CartesianGrid.d.ts +68 -16
  39. package/dist/cartesian/cartesian-grid/HorizontalGridLines.d.ts +18 -11
  40. package/dist/cartesian/cartesian-grid/HorizontalStripes.d.ts +6 -5
  41. package/dist/cartesian/cartesian-grid/VerticalGridLines.d.ts +17 -10
  42. package/dist/cartesian/cartesian-grid/VerticalStripes.d.ts +6 -5
  43. package/dist/cartesian/cartesian-grid/const.d.ts +2 -6
  44. package/dist/cartesian/cartesian-grid/type.d.ts +21 -30
  45. package/dist/cartesian/cartesian-grid/utils.d.ts +3 -1
  46. package/dist/cartesian/cartesianPositionToCSSTranslate.d.ts +1 -1
  47. package/dist/cartesian/error-bar/ErrorBar.d.ts +11 -30
  48. package/dist/cartesian/error-bar/ErrorBarContext.d.ts +12 -15
  49. package/dist/cartesian/funnel/Funnel.d.ts +161 -2
  50. package/dist/cartesian/funnel/type.d.ts +20 -57
  51. package/dist/cartesian/getCartesianPosition.d.ts +1 -3
  52. package/dist/cartesian/line/Line.d.ts +177 -77
  53. package/dist/cartesian/line/StaticLine.d.ts +0 -15
  54. package/dist/cartesian/line/hooks/useLine.d.ts +14 -15
  55. package/dist/cartesian/line/type.d.ts +52 -104
  56. package/dist/cartesian/reference-area/ReferenceArea.d.ts +42 -90
  57. package/dist/cartesian/reference-dot/ReferenceDot.d.ts +21 -63
  58. package/dist/cartesian/reference-line/ReferenceLine.d.ts +35 -67
  59. package/dist/cartesian/scatter/Scatter.d.ts +72 -53
  60. package/dist/cartesian/scatter/hooks/useScatter.d.ts +6 -5
  61. package/dist/cartesian/scatter/type.d.ts +89 -0
  62. package/dist/cartesian/useNeedsClip.d.ts +3 -2
  63. package/dist/cartesian/utils/get-ticks.d.ts +5 -6
  64. package/dist/cartesian/z-axis/ZAxis.d.ts +20 -21
  65. package/dist/chart/AreaChart.d.ts +231 -1
  66. package/dist/chart/BarChart.d.ts +231 -1
  67. package/dist/chart/BarList.d.ts +172 -0
  68. package/dist/chart/CalendarHeatmap.d.ts +308 -0
  69. package/dist/chart/CellGridLayer.d.ts +136 -0
  70. package/dist/chart/ChartShell.d.ts +85 -0
  71. package/dist/chart/ChartWrapper.d.ts +167 -0
  72. package/dist/chart/ChartsWrapper.d.ts +75 -87
  73. package/dist/chart/CohortChart.d.ts +254 -0
  74. package/dist/chart/ComposedChart.d.ts +231 -1
  75. package/dist/chart/FunnelChart.d.ts +201 -1
  76. package/dist/chart/Heatmap.d.ts +687 -0
  77. package/dist/chart/JourneySankey.d.ts +261 -0
  78. package/dist/chart/LineChart.d.ts +231 -1
  79. package/dist/chart/PieChart.d.ts +243 -1
  80. package/dist/chart/RadarChart.d.ts +243 -1
  81. package/dist/chart/RadialBarChart.d.ts +273 -1
  82. package/dist/chart/Sankey.d.ts +85 -157
  83. package/dist/chart/ScatterChart.d.ts +231 -1
  84. package/dist/chart/Sparkline.d.ts +257 -0
  85. package/dist/chart/SunburstChart.d.ts +101 -132
  86. package/dist/chart/Tracker.d.ts +211 -0
  87. package/dist/chart/Treemap.d.ts +101 -147
  88. package/dist/chart/cellGridProps.d.ts +40 -0
  89. package/dist/chart/cellGridUtils.d.ts +53 -0
  90. package/dist/chart/chartProps.d.ts +402 -0
  91. package/dist/chart/chartRoot.d.ts +144 -0
  92. package/dist/chart/const.d.ts +0 -2
  93. package/dist/chart/directChartTypes.d.ts +13 -0
  94. package/dist/chart/journeyTypes.d.ts +99 -0
  95. package/dist/chart/journeyUtils.d.ts +102 -0
  96. package/dist/chart/sankeyUtils.d.ts +2 -2
  97. package/dist/chart/shell.d.ts +14 -0
  98. package/dist/chart/sunburstUtils.d.ts +7 -3
  99. package/dist/chart/treemapUtils.d.ts +8 -6
  100. package/dist/componentNames.d.ts +2 -0
  101. package/dist/components/Cell.d.ts +1 -1
  102. package/dist/components/Customized.d.ts +12 -7
  103. package/dist/components/Text.d.ts +31 -31
  104. package/dist/components/label/Label.d.ts +14 -26
  105. package/dist/components/label/LabelList.d.ts +24 -14
  106. package/dist/components/label/LabelListView.d.ts +23 -0
  107. package/dist/components/label/LabelView.d.ts +79 -0
  108. package/dist/components/label/types.d.ts +70 -15
  109. package/dist/components/label/utils.d.ts +24 -12
  110. package/dist/components/legend/Legend.d.ts +109 -4
  111. package/dist/components/legend/LegendSymbol.d.ts +2 -3
  112. package/dist/components/legend/hooks/useLegend.d.ts +8 -10
  113. package/dist/components/legend/hooks/useLegendContent.d.ts +7 -14
  114. package/dist/components/legend/type.d.ts +17 -25
  115. package/dist/components/legend/utils.d.ts +4 -4
  116. package/dist/components/tooltip/Cursor.d.ts +19 -0
  117. package/dist/components/tooltip/DefaultTooltipContent.d.ts +35 -0
  118. package/dist/components/{Tooltip.d.ts → tooltip/Tooltip.d.ts} +72 -100
  119. package/dist/components/tooltip/TooltipBoundingBox.d.ts +40 -0
  120. package/dist/components/tooltip/types.d.ts +59 -0
  121. package/dist/components/types.d.ts +6 -6
  122. package/dist/components/utils.d.ts +3 -3
  123. package/dist/container/ClipPath.d.ts +1 -1
  124. package/dist/container/Layer.d.ts +1 -1
  125. package/dist/container/ResponsiveContainer.d.ts +10 -13
  126. package/dist/container/Surface.d.ts +9 -1
  127. package/dist/container/useSizeContext.d.ts +4 -10
  128. package/dist/context/cartesianLabelListContext.d.ts +6 -2
  129. package/dist/context/polarLabelViewBoxContext.d.ts +1 -1
  130. package/dist/core/area.d.ts +32 -0
  131. package/dist/core/axis/data.d.ts +28 -0
  132. package/dist/core/axis/domain.d.ts +11 -0
  133. package/dist/core/axis/key.d.ts +7 -0
  134. package/dist/core/axis/polar.d.ts +11 -0
  135. package/dist/core/axis/polarSettings.d.ts +5 -0
  136. package/dist/core/axis/position.d.ts +76 -0
  137. package/dist/core/axis/range.d.ts +8 -0
  138. package/dist/core/axis/references.d.ts +6 -0
  139. package/dist/core/axis/scale.d.ts +21 -0
  140. package/dist/core/axis/settings.d.ts +4 -0
  141. package/dist/core/axis/stacks.d.ts +14 -0
  142. package/dist/core/axis/ticks.d.ts +19 -0
  143. package/dist/core/axis/userDomain.d.ts +48 -0
  144. package/dist/core/bar.d.ts +22 -0
  145. package/dist/core/barSizing.d.ts +43 -0
  146. package/dist/core/color.d.ts +21 -0
  147. package/dist/core/coordinates.d.ts +34 -0
  148. package/dist/core/data.d.ts +2 -0
  149. package/dist/core/errorBar.d.ts +15 -0
  150. package/dist/core/funnel.d.ts +17 -0
  151. package/dist/core/interaction.d.ts +18 -0
  152. package/dist/core/layout.d.ts +43 -0
  153. package/dist/core/line.d.ts +14 -0
  154. package/dist/{state/selectors/pieSelectors.d.ts → core/pie.d.ts} +14 -16
  155. package/dist/core/polygon.d.ts +5 -0
  156. package/dist/core/radar.d.ts +20 -0
  157. package/dist/core/radialBar.d.ts +36 -0
  158. package/dist/core/rectangle.d.ts +10 -0
  159. package/dist/core/scatter.d.ts +18 -0
  160. package/dist/core/tooltip.d.ts +16 -0
  161. package/dist/es/animation/ActiveDot.mjs +39 -0
  162. package/dist/es/animation/MovingLabels.mjs +61 -0
  163. package/dist/es/animation/SweepClip.mjs +40 -0
  164. package/dist/es/animation/gridTransition.mjs +112 -0
  165. package/dist/es/animation/motion.mjs +100 -0
  166. package/dist/es/animation/ridingLabels.mjs +70 -0
  167. package/dist/es/animation/useAnimationCallbacks.mjs +23 -0
  168. package/dist/es/animation/useKeyedTransition.mjs +355 -0
  169. package/dist/es/animation/usePointTransition.mjs +119 -0
  170. package/dist/es/animation/useReducedMotion.mjs +12 -0
  171. package/dist/es/animation/useTickMotion.mjs +62 -0
  172. package/dist/es/cartesian/ActivePoints.mjs +65 -0
  173. package/dist/es/cartesian/GraphicalItemClipPath.mjs +50 -9
  174. package/dist/es/cartesian/area/Area.mjs +72 -35
  175. package/dist/es/cartesian/area/RenderArea.mjs +112 -105
  176. package/dist/es/cartesian/area/hooks/useArea.mjs +44 -42
  177. package/dist/es/cartesian/area/type.mjs +14 -46
  178. package/dist/es/cartesian/axis/AxisProps.mjs +94 -0
  179. package/dist/es/cartesian/axis/XAxis.mjs +37 -159
  180. package/dist/es/cartesian/axis/YAxis.mjs +63 -167
  181. package/dist/es/cartesian/bar/Bar.mjs +122 -53
  182. package/dist/es/cartesian/bar/components/BarBackground.mjs +1 -1
  183. package/dist/es/cartesian/bar/components/BarRectangles.mjs +188 -126
  184. package/dist/es/cartesian/bar/hooks/useBar.mjs +67 -31
  185. package/dist/es/cartesian/bar/type.mjs +4 -22
  186. package/dist/es/cartesian/brush/Brush.mjs +294 -0
  187. package/dist/es/cartesian/brush/components/Background.mjs +25 -0
  188. package/dist/es/cartesian/brush/components/BrushText.mjs +55 -0
  189. package/dist/es/cartesian/brush/components/Panorama.mjs +54 -0
  190. package/dist/es/cartesian/brush/components/Slide.mjs +40 -0
  191. package/dist/es/cartesian/brush/components/Traveller.mjs +46 -0
  192. package/dist/es/cartesian/brush/components/TravellerLayer.mjs +68 -0
  193. package/dist/es/cartesian/brush/hooks/useBrushHandlers.mjs +158 -0
  194. package/dist/es/cartesian/brush/hooks/useBrushState.mjs +67 -0
  195. package/dist/es/cartesian/brush/type.mjs +54 -0
  196. package/dist/es/cartesian/brush/utils.mjs +30 -0
  197. package/dist/es/cartesian/cartesian-axis/CartesianAxis.mjs +27 -20
  198. package/dist/es/cartesian/cartesian-grid/CartesianGrid.mjs +157 -72
  199. package/dist/es/cartesian/cartesian-grid/HorizontalGridLines.mjs +5 -1
  200. package/dist/es/cartesian/cartesian-grid/VerticalGridLines.mjs +5 -1
  201. package/dist/es/cartesian/cartesian-grid/const.mjs +3 -320
  202. package/dist/es/cartesian/cartesian-grid/utils.mjs +1 -1
  203. package/dist/es/cartesian/error-bar/ErrorBar.mjs +65 -102
  204. package/dist/es/cartesian/error-bar/ErrorBarContext.mjs +21 -5
  205. package/dist/es/cartesian/funnel/Funnel.mjs +247 -127
  206. package/dist/es/cartesian/funnel/type.mjs +8 -14
  207. package/dist/es/cartesian/line/Line.mjs +72 -25
  208. package/dist/es/cartesian/line/StaticLine.mjs +129 -166
  209. package/dist/es/cartesian/line/hooks/useLine.mjs +38 -35
  210. package/dist/es/cartesian/line/type.mjs +5 -43
  211. package/dist/es/cartesian/reference-area/ReferenceArea.mjs +108 -88
  212. package/dist/es/cartesian/reference-dot/ReferenceDot.mjs +87 -67
  213. package/dist/es/cartesian/reference-line/ReferenceLine.mjs +99 -74
  214. package/dist/es/cartesian/scatter/Scatter.mjs +188 -190
  215. package/dist/es/cartesian/scatter/hooks/useScatter.mjs +25 -6
  216. package/dist/es/cartesian/scatter/type.mjs +79 -0
  217. package/dist/es/cartesian/useNeedsClip.mjs +6 -14
  218. package/dist/es/cartesian/utils/get-ticks.mjs +6 -6
  219. package/dist/es/cartesian/z-axis/ZAxis.mjs +7 -11
  220. package/dist/es/chart/AreaChart.mjs +12 -4
  221. package/dist/es/chart/BarChart.mjs +12 -4
  222. package/dist/es/chart/BarList.mjs +265 -0
  223. package/dist/es/chart/CalendarHeatmap.mjs +299 -0
  224. package/dist/es/chart/CellGridLayer.mjs +380 -0
  225. package/dist/es/chart/ChartShell.mjs +139 -0
  226. package/dist/es/chart/ChartWrapper.mjs +215 -0
  227. package/dist/es/chart/ChartsWrapper.mjs +21 -176
  228. package/dist/es/chart/CohortChart.mjs +169 -0
  229. package/dist/es/chart/ComposedChart.mjs +14 -4
  230. package/dist/es/chart/FunnelChart.mjs +11 -5
  231. package/dist/es/chart/Heatmap.mjs +319 -0
  232. package/dist/es/chart/JourneySankey.mjs +682 -0
  233. package/dist/es/chart/LineChart.mjs +13 -4
  234. package/dist/es/chart/PieChart.mjs +13 -9
  235. package/dist/es/chart/RadarChart.mjs +13 -9
  236. package/dist/es/chart/RadialBarChart.mjs +18 -10
  237. package/dist/es/chart/Sankey.mjs +355 -244
  238. package/dist/es/chart/ScatterChart.mjs +12 -4
  239. package/dist/es/chart/Sparkline.mjs +458 -0
  240. package/dist/es/chart/SunburstChart.mjs +215 -158
  241. package/dist/es/chart/Tracker.mjs +175 -0
  242. package/dist/es/chart/Treemap.mjs +357 -300
  243. package/dist/es/chart/cellGridProps.mjs +42 -0
  244. package/dist/es/chart/cellGridUtils.mjs +80 -0
  245. package/dist/es/chart/chartProps.mjs +88 -0
  246. package/dist/es/chart/chartRoot.mjs +153 -0
  247. package/dist/es/chart/journeyTypes.mjs +90 -0
  248. package/dist/es/chart/journeyUtils.mjs +223 -0
  249. package/dist/es/chart/sankeyUtils.mjs +52 -1
  250. package/dist/es/chart/shell.mjs +30 -0
  251. package/dist/es/chart/sunburstUtils.mjs +14 -9
  252. package/dist/es/chart/treemapUtils.mjs +10 -8
  253. package/dist/es/componentNames.mjs +84 -0
  254. package/dist/es/components/Cell.mjs +3 -2
  255. package/dist/es/components/Customized.mjs +14 -9
  256. package/dist/es/components/Text.vue_vue_type_script_setup_true_lang.mjs +16 -10
  257. package/dist/es/components/label/Label.mjs +12 -30
  258. package/dist/es/components/label/LabelList.mjs +13 -48
  259. package/dist/es/components/label/LabelListView.mjs +73 -0
  260. package/dist/es/components/label/LabelView.mjs +45 -0
  261. package/dist/es/components/label/types.mjs +10 -5
  262. package/dist/es/components/label/utils.mjs +39 -19
  263. package/dist/es/components/legend/Legend.mjs +101 -36
  264. package/dist/es/components/legend/LegendSymbol.mjs +2 -2
  265. package/dist/es/components/legend/hooks/useLegend.mjs +39 -60
  266. package/dist/es/components/legend/hooks/useLegendContent.mjs +1 -13
  267. package/dist/es/components/legend/type.mjs +11 -9
  268. package/dist/es/components/legend/utils.mjs +8 -4
  269. package/dist/es/components/tooltip/Cursor.mjs +118 -0
  270. package/dist/es/components/tooltip/DefaultTooltipContent.mjs +107 -0
  271. package/dist/es/components/tooltip/Tooltip.mjs +229 -0
  272. package/dist/es/components/tooltip/TooltipBoundingBox.mjs +187 -0
  273. package/dist/es/components/utils.mjs +26 -27
  274. package/dist/es/container/ClipPath.mjs +2 -2
  275. package/dist/es/container/Layer.mjs +2 -2
  276. package/dist/es/container/ResponsiveContainer.vue_vue_type_script_setup_true_lang.mjs +20 -106
  277. package/dist/es/container/Surface.mjs +46 -7
  278. package/dist/es/container/useSizeContext.mjs +12 -3
  279. package/dist/es/context/cartesianLabelListContext.mjs +11 -2
  280. package/dist/es/{cartesian/area/utils.mjs → core/area.mjs} +5 -4
  281. package/dist/es/core/axis/data.mjs +75 -0
  282. package/dist/es/core/axis/domain.mjs +63 -0
  283. package/dist/es/core/axis/key.mjs +13 -0
  284. package/dist/es/core/axis/polar.mjs +16 -0
  285. package/dist/es/core/axis/polarSettings.mjs +100 -0
  286. package/dist/es/core/axis/position.mjs +51 -0
  287. package/dist/es/core/axis/range.mjs +46 -0
  288. package/dist/es/core/axis/references.mjs +26 -0
  289. package/dist/es/core/axis/scale.mjs +148 -0
  290. package/dist/es/core/axis/settings.mjs +76 -0
  291. package/dist/es/core/axis/stacks.mjs +97 -0
  292. package/dist/es/core/axis/ticks.mjs +82 -0
  293. package/dist/es/{utils/isDomainSpecifiedByUser.mjs → core/axis/userDomain.mjs} +5 -4
  294. package/dist/es/{cartesian/bar/utils.mjs → core/bar.mjs} +19 -16
  295. package/dist/es/core/barSizing.mjs +108 -0
  296. package/dist/es/core/color.mjs +23 -0
  297. package/dist/es/core/coordinates.mjs +57 -0
  298. package/dist/es/core/data.mjs +20 -0
  299. package/dist/es/core/errorBar.mjs +56 -0
  300. package/dist/es/{cartesian/funnel/utils.mjs → core/funnel.mjs} +31 -11
  301. package/dist/es/core/interaction.mjs +152 -0
  302. package/dist/es/core/layout.mjs +91 -0
  303. package/dist/es/{cartesian/line/utils.mjs → core/line.mjs} +7 -6
  304. package/dist/es/{state/selectors/pieSelectors.mjs → core/pie.mjs} +37 -65
  305. package/dist/es/core/polygon.mjs +7 -0
  306. package/dist/es/core/radar.mjs +58 -0
  307. package/dist/es/core/radialBar.mjs +92 -0
  308. package/dist/es/core/rectangle.mjs +25 -0
  309. package/dist/es/core/scatter.mjs +86 -0
  310. package/dist/es/core/tooltip.mjs +96 -0
  311. package/dist/es/events/componentEvents.mjs +58 -0
  312. package/dist/es/events/delegateItemEvents.mjs +24 -0
  313. package/dist/es/events/itemEvents.mjs +34 -0
  314. package/dist/es/events/sync.mjs +140 -0
  315. package/dist/es/events/useChartCallbacks.mjs +24 -0
  316. package/dist/es/events/useChartInteractions.mjs +143 -0
  317. package/dist/es/events/useItemInteractions.mjs +58 -0
  318. package/dist/es/events/useItemKeyboard.mjs +45 -0
  319. package/dist/es/events/usePointEvents.mjs +55 -0
  320. package/dist/es/hooks/deferredView.mjs +19 -0
  321. package/dist/es/hooks/publicHooks.mjs +36 -35
  322. package/dist/es/hooks/useActiveTooltipDataPoints.mjs +10 -0
  323. package/dist/es/hooks/useChartId.mjs +8 -0
  324. package/dist/es/hooks/useLayerTeleport.mjs +10 -0
  325. package/dist/es/hooks/useResponsiveSize.mjs +72 -15
  326. package/dist/es/hooks/useRoundedSize.mjs +0 -3
  327. package/dist/es/hooks/useSeriesProps.mjs +32 -0
  328. package/dist/es/hooks/useSetupGraphicalItem.mjs +74 -44
  329. package/dist/es/hooks/useTrackedData.mjs +17 -0
  330. package/dist/es/index.mjs +37 -23
  331. package/dist/es/model/animation.mjs +11 -0
  332. package/dist/es/model/axis.mjs +85 -0
  333. package/dist/es/model/axisLayout.mjs +27 -0
  334. package/dist/es/model/axisScale.mjs +52 -0
  335. package/dist/es/model/brush.mjs +27 -0
  336. package/dist/es/model/chart.mjs +122 -0
  337. package/dist/es/model/dataRange.mjs +54 -0
  338. package/dist/es/model/defaults.mjs +28 -0
  339. package/dist/es/model/layout.mjs +33 -0
  340. package/dist/es/model/legend.mjs +30 -0
  341. package/dist/es/model/options.mjs +8 -0
  342. package/dist/es/model/polar.mjs +29 -0
  343. package/dist/es/model/polarAxis.mjs +48 -0
  344. package/dist/es/model/presentation.mjs +13 -0
  345. package/dist/es/model/registries.mjs +38 -0
  346. package/dist/es/model/registry.mjs +20 -0
  347. package/dist/es/model/runtime.mjs +156 -0
  348. package/dist/es/model/tooltip.mjs +383 -0
  349. package/dist/es/nuxt.mjs +28 -0
  350. package/dist/es/polar/pie/Pie.mjs +260 -112
  351. package/dist/es/polar/pie/type.mjs +19 -8
  352. package/dist/es/polar/radar/PolarAngleAxis.mjs +117 -99
  353. package/dist/es/polar/radar/PolarGrid.mjs +73 -50
  354. package/dist/es/polar/radar/PolarRadiusAxis.mjs +124 -100
  355. package/dist/es/polar/radar/Radar.mjs +272 -219
  356. package/dist/es/polar/radial-bar/RadialBar.mjs +248 -130
  357. package/dist/es/polar/radial-bar/type.mjs +6 -7
  358. package/dist/es/resolver.mjs +19 -0
  359. package/dist/es/shape/Cross.mjs +2 -1
  360. package/dist/es/shape/Curve.mjs +7 -5
  361. package/dist/es/shape/Dot.mjs +9 -5
  362. package/dist/es/shape/Polygon.mjs +4 -7
  363. package/dist/es/shape/Rectangle.mjs +17 -10
  364. package/dist/es/shape/Sector.mjs +7 -4
  365. package/dist/es/shape/Symbols.mjs +13 -8
  366. package/dist/es/shape/Trapezoid.mjs +3 -1
  367. package/dist/es/typed.mjs +9 -0
  368. package/dist/es/types/base.mjs +6 -0
  369. package/dist/es/utils/ReduceCSSCalc.mjs +2 -2
  370. package/dist/es/utils/VueUtils.mjs +89 -3
  371. package/dist/es/utils/attributes.mjs +18 -0
  372. package/dist/es/utils/attrs.mjs +38 -26
  373. package/dist/es/utils/cartesian.mjs +1 -21
  374. package/dist/es/utils/cell.mjs +13 -1
  375. package/dist/es/utils/chart.mjs +3 -361
  376. package/dist/es/utils/const.mjs +2 -25
  377. package/dist/es/utils/createCategoricalInverse.mjs +2 -2
  378. package/dist/es/utils/data-utils.mjs +2 -6
  379. package/dist/es/utils/data.mjs +1 -1
  380. package/dist/es/utils/env.mjs +10 -0
  381. package/dist/es/utils/events.mjs +29 -2
  382. package/dist/es/utils/labelColor.mjs +16 -0
  383. package/dist/es/utils/log.mjs +23 -5
  384. package/dist/es/utils/pointer.mjs +13 -0
  385. package/dist/es/utils/polar.mjs +7 -2
  386. package/dist/es/utils/scale/getNiceTickValues.mjs +8 -8
  387. package/dist/es/utils/scale/utils/arithmetic.mjs +0 -15
  388. package/dist/es/utils/scale/utils/utils.mjs +9 -44
  389. package/dist/es/utils/style.mjs +1 -1
  390. package/dist/es/utils/svg.mjs +320 -0
  391. package/dist/es/utils/theme.mjs +50 -0
  392. package/dist/es/utils/tick.mjs +4 -3
  393. package/dist/es/utils/validate.mjs +21 -3
  394. package/dist/events/componentEvents.d.ts +60 -0
  395. package/dist/events/delegateItemEvents.d.ts +12 -0
  396. package/dist/events/itemEvents.d.ts +100 -0
  397. package/dist/events/sync.d.ts +6 -0
  398. package/dist/events/useChartCallbacks.d.ts +2 -0
  399. package/dist/events/useChartInteractions.d.ts +8 -0
  400. package/dist/events/useItemInteractions.d.ts +7 -0
  401. package/dist/events/useItemKeyboard.d.ts +24 -0
  402. package/dist/events/usePointEvents.d.ts +23 -0
  403. package/dist/hooks/deferredView.d.ts +12 -0
  404. package/dist/hooks/publicHooks.d.ts +27 -29
  405. package/dist/hooks/useActiveTooltipDataPoints.d.ts +2 -0
  406. package/dist/hooks/useChartId.d.ts +2 -0
  407. package/dist/hooks/useLayerTeleport.d.ts +5 -0
  408. package/dist/hooks/useResponsiveSize.d.ts +33 -18
  409. package/dist/hooks/useRoundedSize.d.ts +0 -3
  410. package/dist/hooks/useSeriesProps.d.ts +7 -0
  411. package/dist/hooks/useSetupGraphicalItem.d.ts +35 -4
  412. package/dist/hooks/useTrackedData.d.ts +3 -0
  413. package/dist/index.d.ts +130 -9
  414. package/dist/model/animation.d.ts +7 -0
  415. package/dist/model/axis.d.ts +29 -0
  416. package/dist/model/axisLayout.d.ts +85 -0
  417. package/dist/model/axisScale.d.ts +41 -0
  418. package/dist/model/brush.d.ts +17 -0
  419. package/dist/model/chart.d.ts +44 -0
  420. package/dist/model/dataRange.d.ts +19 -0
  421. package/dist/model/defaults.d.ts +7 -0
  422. package/dist/model/layout.d.ts +38 -0
  423. package/dist/model/legend.d.ts +28 -0
  424. package/dist/model/options.d.ts +30 -0
  425. package/dist/model/polar.d.ts +24 -0
  426. package/dist/model/polarAxis.d.ts +39 -0
  427. package/dist/model/presentation.d.ts +19 -0
  428. package/dist/model/registries.d.ts +27 -0
  429. package/dist/model/registry.d.ts +7 -0
  430. package/dist/model/runtime.d.ts +76 -0
  431. package/dist/model/tooltip.d.ts +437 -0
  432. package/dist/nuxt.d.ts +7 -0
  433. package/dist/polar/pie/Pie.d.ts +252 -2
  434. package/dist/polar/pie/type.d.ts +37 -25
  435. package/dist/polar/radar/PolarAngleAxis.d.ts +36 -39
  436. package/dist/polar/radar/PolarGrid.d.ts +10 -8
  437. package/dist/polar/radar/PolarRadiusAxis.d.ts +30 -28
  438. package/dist/polar/radar/Radar.d.ts +82 -53
  439. package/dist/polar/radial-bar/RadialBar.d.ts +251 -2
  440. package/dist/polar/radial-bar/type.d.ts +26 -26
  441. package/dist/publicProps.d.ts +96 -0
  442. package/dist/resolver.d.ts +9 -0
  443. package/dist/shape/Cross.d.ts +2 -1
  444. package/dist/shape/Curve.d.ts +8 -19
  445. package/dist/shape/Dot.d.ts +10 -6
  446. package/dist/shape/Polygon.d.ts +2 -1
  447. package/dist/shape/Rectangle.d.ts +9 -8
  448. package/dist/shape/Sector.d.ts +7 -6
  449. package/dist/shape/Symbols.d.ts +3 -3
  450. package/dist/shape/Trapezoid.d.ts +5 -5
  451. package/dist/typed.d.ts +92 -0
  452. package/dist/types/area.d.ts +5 -6
  453. package/dist/types/axis.d.ts +9 -36
  454. package/dist/types/axisSettings.d.ts +20 -0
  455. package/dist/types/bar.d.ts +17 -7
  456. package/dist/types/base.d.ts +46 -0
  457. package/dist/types/categorical.d.ts +5 -7
  458. package/dist/types/chartData.d.ts +21 -0
  459. package/dist/types/chartLayout.d.ts +7 -0
  460. package/dist/{state/rootPropsSlice.d.ts → types/chartOptions.d.ts} +4 -5
  461. package/dist/types/common.d.ts +16 -55
  462. package/dist/types/event.d.ts +2 -15
  463. package/dist/types/funnel.d.ts +23 -0
  464. package/dist/types/graphical.d.ts +77 -0
  465. package/dist/types/index.d.ts +4 -4
  466. package/dist/types/legend.d.ts +17 -0
  467. package/dist/types/line.d.ts +6 -0
  468. package/dist/types/polarOptions.d.ts +8 -0
  469. package/dist/types/radar.d.ts +4 -4
  470. package/dist/types/radialBar.d.ts +15 -0
  471. package/dist/types/reference.d.ts +22 -0
  472. package/dist/types/scale.d.ts +13 -2
  473. package/dist/{shape/types.d.ts → types/shape.d.ts} +6 -4
  474. package/dist/types/tick.d.ts +18 -7
  475. package/dist/types/tooltip.d.ts +181 -14
  476. package/dist/types/typed.d.ts +16 -0
  477. package/dist/{cartesian/type.d.ts → types/viewBox.d.ts} +0 -2
  478. package/dist/utils/ReduceCSSCalc.d.ts +0 -1
  479. package/dist/utils/VueUtils.d.ts +6 -9
  480. package/dist/utils/attributes.d.ts +56 -0
  481. package/dist/utils/attrs.d.ts +4 -45
  482. package/dist/utils/cartesian.d.ts +2 -16
  483. package/dist/utils/cell.d.ts +7 -2
  484. package/dist/utils/chart.d.ts +2 -99
  485. package/dist/utils/const.d.ts +1 -24
  486. package/dist/utils/createCategoricalInverse.d.ts +2 -6
  487. package/dist/utils/data-utils.d.ts +0 -1
  488. package/dist/utils/data.d.ts +1 -2
  489. package/dist/utils/env.d.ts +5 -0
  490. package/dist/utils/events.d.ts +14 -7
  491. package/dist/utils/grid.d.ts +1 -28
  492. package/dist/utils/index.d.ts +4 -5
  493. package/dist/utils/isDomainSpecifiedByUser.d.ts +1 -47
  494. package/dist/utils/labelColor.d.ts +2 -0
  495. package/dist/utils/log.d.ts +2 -1
  496. package/dist/utils/pointer.d.ts +2 -0
  497. package/dist/utils/polar.d.ts +2 -4
  498. package/dist/utils/scale/getNiceTickValues.d.ts +2 -61
  499. package/dist/utils/scale/utils/arithmetic.d.ts +3 -31
  500. package/dist/utils/scale/utils/utils.d.ts +2 -9
  501. package/dist/utils/scale.d.ts +1 -1
  502. package/dist/utils/style.d.ts +2 -1
  503. package/dist/utils/svg.d.ts +4 -0
  504. package/dist/utils/theme.d.ts +4 -0
  505. package/dist/utils/tick.d.ts +3 -3
  506. package/dist/utils/tooltip/translate.d.ts +9 -25
  507. package/dist/utils/validate.d.ts +12 -4
  508. package/package.json +46 -29
  509. package/dist/animation/Animate.d.ts +0 -72
  510. package/dist/cartesian/area/ActivePoints.d.ts +0 -77
  511. package/dist/cartesian/area/ClipRect.d.ts +0 -1
  512. package/dist/cartesian/area/__stories__/config.d.ts +0 -31
  513. package/dist/cartesian/area/index.d.ts +0 -2
  514. package/dist/cartesian/area/utils.d.ts +0 -19
  515. package/dist/cartesian/axis/index.d.ts +0 -2
  516. package/dist/cartesian/axis/type.d.ts +0 -57
  517. package/dist/cartesian/bar/index.d.ts +0 -1
  518. package/dist/cartesian/bar/utils.d.ts +0 -31
  519. package/dist/cartesian/brush/hooks/useBrushSetting.d.ts +0 -6
  520. package/dist/cartesian/brush/index.d.ts +0 -2
  521. package/dist/cartesian/cartesian-axis/const.d.ts +0 -24
  522. package/dist/cartesian/cartesian-axis/index.d.ts +0 -1
  523. package/dist/cartesian/cartesian-axis/use-axis-line.d.ts +0 -7
  524. package/dist/cartesian/cartesian-grid/index.d.ts +0 -1
  525. package/dist/cartesian/error-bar/index.d.ts +0 -2
  526. package/dist/cartesian/funnel/index.d.ts +0 -2
  527. package/dist/cartesian/funnel/utils.d.ts +0 -12
  528. package/dist/cartesian/index.d.ts +0 -14
  529. package/dist/cartesian/line/ActivePoints.d.ts +0 -77
  530. package/dist/cartesian/line/index.d.ts +0 -3
  531. package/dist/cartesian/line/utils.d.ts +0 -13
  532. package/dist/cartesian/reference-area/index.d.ts +0 -1
  533. package/dist/cartesian/reference-dot/index.d.ts +0 -2
  534. package/dist/cartesian/reference-line/index.d.ts +0 -1
  535. package/dist/cartesian/scatter/index.d.ts +0 -1
  536. package/dist/cartesian/z-axis/index.d.ts +0 -1
  537. package/dist/chart/LegendPortalContext.d.ts +0 -3
  538. package/dist/chart/Surface.d.ts +0 -41
  539. package/dist/chart/TooltipPortalContext.d.ts +0 -2
  540. package/dist/chart/generateCategoricalChart.d.ts +0 -123
  541. package/dist/chart/index.d.ts +0 -12
  542. package/dist/chart/provideClipPathId.d.ts +0 -12
  543. package/dist/components/DefaultLegendContent.d.ts +0 -18
  544. package/dist/components/index.d.ts +0 -6
  545. package/dist/components/label/index.d.ts +0 -2
  546. package/dist/components/legend/index.d.ts +0 -2
  547. package/dist/container/RootSurface.d.ts +0 -17
  548. package/dist/container/index.d.ts +0 -1
  549. package/dist/context/ChartDataContextProvider.d.ts +0 -17
  550. package/dist/context/PanoramaContextProvider.d.ts +0 -22
  551. package/dist/context/accessibilityContext.d.ts +0 -1
  552. package/dist/context/chartLayoutContext.d.ts +0 -8
  553. package/dist/context/cursorLayerContext.d.ts +0 -2
  554. package/dist/context/graphicalLayerContext.d.ts +0 -2
  555. package/dist/context/labelLayerContext.d.ts +0 -2
  556. package/dist/context/useTooltipAxis.d.ts +0 -2
  557. package/dist/es/animation/Animate.mjs +0 -89
  558. package/dist/es/cartesian/area/ActivePoints.mjs +0 -78
  559. package/dist/es/cartesian/area/ClipRect.mjs +0 -125
  560. package/dist/es/cartesian/line/ActivePoints.mjs +0 -79
  561. package/dist/es/chart/LegendPortalContext.mjs +0 -5
  562. package/dist/es/chart/Surface.mjs +0 -5
  563. package/dist/es/chart/Surface.vue_vue_type_script_setup_true_lang.mjs +0 -78
  564. package/dist/es/chart/TooltipPortalContext.mjs +0 -5
  565. package/dist/es/chart/generateCategoricalChart.mjs +0 -184
  566. package/dist/es/chart/provideClipPathId.mjs +0 -15
  567. package/dist/es/components/Tooltip.mjs +0 -479
  568. package/dist/es/context/ChartDataContextProvider.mjs +0 -27
  569. package/dist/es/context/PanoramaContextProvider.mjs +0 -24
  570. package/dist/es/context/accessibilityContext.mjs +0 -5
  571. package/dist/es/context/chartLayoutContext.mjs +0 -49
  572. package/dist/es/context/cursorLayerContext.mjs +0 -5
  573. package/dist/es/context/graphicalLayerContext.mjs +0 -5
  574. package/dist/es/context/labelLayerContext.mjs +0 -5
  575. package/dist/es/context/useTooltipAxis.mjs +0 -17
  576. package/dist/es/events/useChartSynchronisation.mjs +0 -113
  577. package/dist/es/hooks/useIsAnimating.mjs +0 -28
  578. package/dist/es/state/ReportChartProps.mjs +0 -62
  579. package/dist/es/state/ReportMainChartProps.mjs +0 -46
  580. package/dist/es/state/ReportPolarOptions.mjs +0 -56
  581. package/dist/es/state/SetGraphicalItem.mjs +0 -49
  582. package/dist/es/state/SetLegendPayload.mjs +0 -20
  583. package/dist/es/state/SetTooltipEntrySettings.mjs +0 -19
  584. package/dist/es/state/brushSlice.mjs +0 -26
  585. package/dist/es/state/cartesianAxisSlice.mjs +0 -50
  586. package/dist/es/state/chartDataSlice.mjs +0 -33
  587. package/dist/es/state/externalEventsMiddleware.mjs +0 -30
  588. package/dist/es/state/graphicalItemsSlice.mjs +0 -47
  589. package/dist/es/state/hooks.mjs +0 -26
  590. package/dist/es/state/keyboardEventsMiddleware.mjs +0 -63
  591. package/dist/es/state/layoutSlice.mjs +0 -39
  592. package/dist/es/state/legendSlice.mjs +0 -42
  593. package/dist/es/state/mouseEventsMiddleware.mjs +0 -41
  594. package/dist/es/state/optionsSlice.mjs +0 -25
  595. package/dist/es/state/polarAxisSlice.mjs +0 -28
  596. package/dist/es/state/polarOptionsSlice.mjs +0 -13
  597. package/dist/es/state/reduxDevtoolsJsonStringifyReplacer.mjs +0 -8
  598. package/dist/es/state/referenceElementsSlice.mjs +0 -36
  599. package/dist/es/state/rootPropsSlice.mjs +0 -32
  600. package/dist/es/state/selectors/areaSelectors.mjs +0 -77
  601. package/dist/es/state/selectors/axisSelectors.mjs +0 -908
  602. package/dist/es/state/selectors/barSelectors.mjs +0 -241
  603. package/dist/es/state/selectors/brushSelectors.mjs +0 -18
  604. package/dist/es/state/selectors/combiners/combineActiveLabel.mjs +0 -9
  605. package/dist/es/state/selectors/combiners/combineActiveTooltipIndex.mjs +0 -43
  606. package/dist/es/state/selectors/combiners/combineAxisRangeWithReverse.mjs +0 -8
  607. package/dist/es/state/selectors/combiners/combineCoordinateForDefaultIndex.mjs +0 -21
  608. package/dist/es/state/selectors/combiners/combineTooltipInteractionState.mjs +0 -37
  609. package/dist/es/state/selectors/combiners/combineTooltipPayloadConfigurations.mjs +0 -13
  610. package/dist/es/state/selectors/common.mjs +0 -4
  611. package/dist/es/state/selectors/containerSelectors.mjs +0 -7
  612. package/dist/es/state/selectors/dataSelectors.mjs +0 -35
  613. package/dist/es/state/selectors/funnelSelectors.mjs +0 -38
  614. package/dist/es/state/selectors/legendSelectors.mjs +0 -10
  615. package/dist/es/state/selectors/lineSelectors.mjs +0 -64
  616. package/dist/es/state/selectors/pickAxisId.mjs +0 -4
  617. package/dist/es/state/selectors/pickAxisType.mjs +0 -4
  618. package/dist/es/state/selectors/polarAxisSelectors.mjs +0 -167
  619. package/dist/es/state/selectors/polarGridSelectors.mjs +0 -19
  620. package/dist/es/state/selectors/polarScaleSelectors.mjs +0 -55
  621. package/dist/es/state/selectors/polarSelectors.mjs +0 -81
  622. package/dist/es/state/selectors/radarSelectors.mjs +0 -133
  623. package/dist/es/state/selectors/radialBarSelectors.mjs +0 -259
  624. package/dist/es/state/selectors/rootPropsSelectors.mjs +0 -14
  625. package/dist/es/state/selectors/scatterSelectors.mjs +0 -134
  626. package/dist/es/state/selectors/selectActivePropsFromChartPointer.mjs +0 -20
  627. package/dist/es/state/selectors/selectAllAxes.mjs +0 -10
  628. package/dist/es/state/selectors/selectChartOffset.mjs +0 -72
  629. package/dist/es/state/selectors/selectChartOffsetInternal.mjs +0 -66
  630. package/dist/es/state/selectors/selectLegendArea.mjs +0 -19
  631. package/dist/es/state/selectors/selectTooltipEventType.mjs +0 -22
  632. package/dist/es/state/selectors/selectTooltipPayloadSearcher.mjs +0 -6
  633. package/dist/es/state/selectors/selectTooltipSettings.mjs +0 -4
  634. package/dist/es/state/selectors/selectTooltipState.mjs +0 -4
  635. package/dist/es/state/selectors/selectors.mjs +0 -104
  636. package/dist/es/state/selectors/tooltipSelectors.mjs +0 -269
  637. package/dist/es/state/selectors/touchSelectors.mjs +0 -19
  638. package/dist/es/state/store.mjs +0 -55
  639. package/dist/es/state/tooltipSlice.mjs +0 -102
  640. package/dist/es/state/touchEventsMiddleware.mjs +0 -44
  641. package/dist/es/state/utils/useReportScale.mjs +0 -19
  642. package/dist/es/synchronisation/syncSelectors.mjs +0 -6
  643. package/dist/es/synchronisation/useChartSynchronisation.mjs +0 -38
  644. package/dist/es/utils/Global.mjs +0 -18
  645. package/dist/es/utils/createContext.mjs +0 -31
  646. package/dist/es/utils/legend.mjs +0 -41
  647. package/dist/es/utils/props.mjs +0 -20
  648. package/dist/es/utils/resolveDefaultProps.mjs +0 -26
  649. package/dist/events/useChartSynchronisation.d.ts +0 -8
  650. package/dist/hooks/useIsAnimating.d.ts +0 -14
  651. package/dist/polar/index.d.ts +0 -3
  652. package/dist/polar/pie/index.d.ts +0 -2
  653. package/dist/polar/radar/index.d.ts +0 -4
  654. package/dist/polar/radial-bar/index.d.ts +0 -2
  655. package/dist/shape/index.d.ts +0 -10
  656. package/dist/state/ReportBar.d.ts +0 -1
  657. package/dist/state/ReportChartProps.d.ts +0 -88
  658. package/dist/state/ReportMainChartProps.d.ts +0 -37
  659. package/dist/state/ReportPolarOptions.d.ts +0 -59
  660. package/dist/state/SetGraphicalItem.d.ts +0 -9
  661. package/dist/state/SetLegendPayload.d.ts +0 -3
  662. package/dist/state/SetTooltipEntrySettings.d.ts +0 -8
  663. package/dist/state/brushSlice.d.ts +0 -18
  664. package/dist/state/cartesianAxisSlice.d.ts +0 -96
  665. package/dist/state/chartDataSlice.d.ts +0 -44
  666. package/dist/state/externalEventsMiddleware.d.ts +0 -17
  667. package/dist/state/graphicalItemsSlice.d.ts +0 -108
  668. package/dist/state/hooks.d.ts +0 -54
  669. package/dist/state/keyboardEventsMiddleware.d.ts +0 -3
  670. package/dist/state/layoutSlice.d.ts +0 -15
  671. package/dist/state/legendSlice.d.ts +0 -29
  672. package/dist/state/mouseEventsMiddleware.d.ts +0 -5
  673. package/dist/state/optionsSlice.d.ts +0 -27
  674. package/dist/state/polarAxisSlice.d.ts +0 -10
  675. package/dist/state/polarOptionsSlice.d.ts +0 -10
  676. package/dist/state/reduxDevtoolsJsonStringifyReplacer.d.ts +0 -1
  677. package/dist/state/referenceElementsSlice.d.ts +0 -40
  678. package/dist/state/selectors/areaSelectors.d.ts +0 -24
  679. package/dist/state/selectors/axisSelectors.d.ts +0 -1833
  680. package/dist/state/selectors/barSelectors.d.ts +0 -944
  681. package/dist/state/selectors/brushSelectors.d.ts +0 -10
  682. package/dist/state/selectors/combiners/combineActiveLabel.d.ts +0 -3
  683. package/dist/state/selectors/combiners/combineActiveTooltipIndex.d.ts +0 -5
  684. package/dist/state/selectors/combiners/combineAxisRangeWithReverse.d.ts +0 -3
  685. package/dist/state/selectors/combiners/combineCoordinateForDefaultIndex.d.ts +0 -3
  686. package/dist/state/selectors/combiners/combineTooltipInteractionState.d.ts +0 -3
  687. package/dist/state/selectors/combiners/combineTooltipPayloadConfigurations.d.ts +0 -3
  688. package/dist/state/selectors/common.d.ts +0 -2
  689. package/dist/state/selectors/containerSelectors.d.ts +0 -6
  690. package/dist/state/selectors/dataSelectors.d.ts +0 -23
  691. package/dist/state/selectors/funnelSelectors.d.ts +0 -69
  692. package/dist/state/selectors/legendSelectors.d.ts +0 -7
  693. package/dist/state/selectors/lineSelectors.d.ts +0 -123
  694. package/dist/state/selectors/pickAxisId.d.ts +0 -3
  695. package/dist/state/selectors/pickAxisType.d.ts +0 -2
  696. package/dist/state/selectors/polarAxisSelectors.d.ts +0 -49
  697. package/dist/state/selectors/polarGridSelectors.d.ts +0 -118
  698. package/dist/state/selectors/polarScaleSelectors.d.ts +0 -9
  699. package/dist/state/selectors/polarSelectors.d.ts +0 -70
  700. package/dist/state/selectors/radarSelectors.d.ts +0 -76
  701. package/dist/state/selectors/radialBarSelectors.d.ts +0 -61
  702. package/dist/state/selectors/rootPropsSelectors.d.ts +0 -11
  703. package/dist/state/selectors/scatterSelectors.d.ts +0 -21
  704. package/dist/state/selectors/selectActivePropsFromChartPointer.d.ts +0 -382
  705. package/dist/state/selectors/selectAllAxes.d.ts +0 -4
  706. package/dist/state/selectors/selectChartOffset.d.ts +0 -116
  707. package/dist/state/selectors/selectChartOffsetInternal.d.ts +0 -9
  708. package/dist/state/selectors/selectLegendArea.d.ts +0 -7
  709. package/dist/state/selectors/selectTooltipEventType.d.ts +0 -8
  710. package/dist/state/selectors/selectTooltipPayloadSearcher.d.ts +0 -3
  711. package/dist/state/selectors/selectTooltipSettings.d.ts +0 -3
  712. package/dist/state/selectors/selectTooltipState.d.ts +0 -3
  713. package/dist/state/selectors/selectors.d.ts +0 -184
  714. package/dist/state/selectors/tooltipSelectors.d.ts +0 -581
  715. package/dist/state/selectors/touchSelectors.d.ts +0 -4
  716. package/dist/state/store.d.ts +0 -74
  717. package/dist/state/tooltipSlice.d.ts +0 -204
  718. package/dist/state/touchEventsMiddleware.d.ts +0 -2
  719. package/dist/state/utils/useReportScale.d.ts +0 -1
  720. package/dist/synchronisation/syncSelectors.d.ts +0 -3
  721. package/dist/synchronisation/useChartSynchronisation.d.ts +0 -11
  722. package/dist/types/offset.d.ts +0 -8
  723. package/dist/utils/Global.d.ts +0 -9
  724. package/dist/utils/context.d.ts +0 -8
  725. package/dist/utils/createContext.d.ts +0 -8
  726. package/dist/utils/legend.d.ts +0 -3
  727. package/dist/utils/props.d.ts +0 -15
  728. package/dist/utils/resolveDefaultProps.d.ts +0 -52
@@ -0,0 +1,122 @@
1
+ import { legendArea, registeredAxes } from "../core/layout.mjs";
2
+ import { getBandSizeOfAxis } from "../core/axis/scale.mjs";
3
+ import { provideChartPresentation } from "./presentation.mjs";
4
+ import { createTooltip, provideTooltipController } from "./tooltip.mjs";
5
+ import { createPolarLayout } from "./polar.mjs";
6
+ import { createAxes } from "./axis.mjs";
7
+ import { createChartData } from "./dataRange.mjs";
8
+ import { createLayout } from "./layout.mjs";
9
+ import { createChartBrush } from "./brush.mjs";
10
+ import { createChartLegend } from "./legend.mjs";
11
+ import { createRegistries } from "./registries.mjs";
12
+ import { useTrackedData } from "../hooks/useTrackedData.mjs";
13
+ import { computed, getCurrentScope, inject, provide } from "vue";
14
+ //#region src/model/chart.ts
15
+ var chartKey = Symbol("vccs-chart");
16
+ function createChart(inputs) {
17
+ const scope = getCurrentScope();
18
+ if (!scope) throw new Error("vccs: createChart must run inside a chart scope.");
19
+ const eventEmitter = Symbol("vccs-chart-emitter");
20
+ const data = useTrackedData(inputs.data);
21
+ const layout = computed(() => ({
22
+ layout: inputs.layout(),
23
+ ...inputs.size(),
24
+ margin: { ...inputs.margin() }
25
+ }));
26
+ const options = computed(inputs.options);
27
+ const polar = computed(inputs.polar);
28
+ const tooltipOptions = computed(() => ({
29
+ ...inputs.tooltip(),
30
+ eventEmitter
31
+ }));
32
+ const registries = createRegistries();
33
+ const brush = createChartBrush();
34
+ const dataRange = createChartData(() => data.value, () => brush.range.value);
35
+ const legend = createChartLegend();
36
+ const geometry = createLayout({
37
+ layout: () => layout.value,
38
+ brush: () => brush.state.value,
39
+ legendSettings: () => legend.state.value.settings,
40
+ legendSize: () => legend.state.value.size,
41
+ axes: registries.axes
42
+ });
43
+ const polarLayout = createPolarLayout({
44
+ layout: inputs.layout,
45
+ size: inputs.size,
46
+ offset: () => geometry.offset.value,
47
+ polar: inputs.polar
48
+ });
49
+ const axis = createAxes(scope, {
50
+ polarLayout,
51
+ size: inputs.size,
52
+ offset: () => geometry.offset.value,
53
+ categoryScale: () => tooltipOptions.value.capabilities.categoryScale,
54
+ hasBar: () => registries.items.cartesian.entries.value.some((item) => item.type === "bar") || registries.items.polar.entries.value.some((item) => item.type === "radialBar"),
55
+ barCategoryGap: () => options.value.barCategoryGap,
56
+ ...registries,
57
+ dataRange,
58
+ layout: inputs.layout,
59
+ stackOffset: () => options.value.stackOffset,
60
+ reverseStackOrder: () => options.value.reverseStackOrder
61
+ });
62
+ const tooltip = createTooltip({
63
+ axis,
64
+ dataRange,
65
+ layout: inputs.layout,
66
+ size: inputs.size,
67
+ offset: () => geometry.offset.value,
68
+ options: () => tooltipOptions.value
69
+ });
70
+ return {
71
+ legendArea: computed(() => legendArea(inputs.size(), inputs.margin())),
72
+ direction: computed(() => {
73
+ if (inputs.layout() === "horizontal") return registeredAxes(registries.axes.xAxis.entries.value).some((axis) => axis.reversed) ? "right-to-left" : "left-to-right";
74
+ if (inputs.layout() === "vertical") return registeredAxes(registries.axes.yAxis.entries.value).some((axis) => axis.reversed) ? "bottom-to-top" : "top-to-bottom";
75
+ }),
76
+ tooltip,
77
+ polarLayout,
78
+ axis,
79
+ dataRange,
80
+ inputs,
81
+ data,
82
+ layout,
83
+ options,
84
+ polar,
85
+ tooltipOptions,
86
+ brush,
87
+ legend,
88
+ ...registries,
89
+ ...geometry
90
+ };
91
+ }
92
+ function provideChart(chart) {
93
+ provide(chartKey, chart);
94
+ provideTooltipController(chart.tooltip);
95
+ provideChartPresentation({
96
+ capabilities: computed(() => chart.tooltipOptions.value.capabilities),
97
+ layout: computed(() => chart.layout.value.layout),
98
+ width: chart.width,
99
+ height: chart.height,
100
+ margin: chart.margin,
101
+ viewBox: chart.viewBox,
102
+ offset: chart.offset,
103
+ accessibility: computed(() => chart.options.value.accessibilityLayer !== false),
104
+ bandSize: computed(() => {
105
+ const axis = chart.tooltip.axis.value;
106
+ const scale = axis?.scale.value;
107
+ return axis && scale ? getBandSizeOfAxis({
108
+ ...axis.settings.value,
109
+ scale
110
+ }, chart.tooltip.ticks.value ?? void 0) : void 0;
111
+ }),
112
+ syncId: computed(() => chart.options.value.syncId),
113
+ emitter: computed(() => chart.tooltipOptions.value.eventEmitter)
114
+ });
115
+ }
116
+ function useChart() {
117
+ const chart = inject(chartKey, null);
118
+ if (!chart) throw new Error("vccs: this component must be used inside a chart.");
119
+ return chart;
120
+ }
121
+ //#endregion
122
+ export { createChart, provideChart, useChart };
@@ -0,0 +1,54 @@
1
+ import { computed, shallowRef } from "vue";
2
+ //#region src/model/dataRange.ts
3
+ /**
4
+ * The displayed row window. A registered Brush owns it (`null` = all rows); without a Brush the
5
+ * chart follows the last range received from a synchronised peer. `undefined` from `brushRange`
6
+ * means no Brush is registered.
7
+ */
8
+ function createChartData(source, brushRange = () => void 0) {
9
+ const synced = shallowRef(null);
10
+ const range = computed(() => {
11
+ const length = source()?.length ?? 0;
12
+ const owned = brushRange();
13
+ return normalizeBrushRange(owned === void 0 ? synced.value : owned, length) ?? {
14
+ startIndex: 0,
15
+ endIndex: Math.max(0, length - 1)
16
+ };
17
+ });
18
+ const state = computed(() => ({
19
+ chartData: source(),
20
+ dataStartIndex: range.value.startIndex,
21
+ dataEndIndex: range.value.endIndex
22
+ }));
23
+ /** Follow a synchronised peer's range; used only when this chart has no Brush. */
24
+ function receiveSyncedRange(value) {
25
+ synced.value = value;
26
+ }
27
+ function displayedData(item, range = "brush") {
28
+ if (item.data?.length) return item.data;
29
+ const { chartData, dataStartIndex, dataEndIndex } = state.value;
30
+ return range === "all" ? chartData : chartData?.slice(dataStartIndex, dataEndIndex + 1);
31
+ }
32
+ function tooltipData(itemData) {
33
+ const { chartData, dataStartIndex, dataEndIndex } = state.value;
34
+ const data = itemData ?? chartData;
35
+ return Array.isArray(data) && dataStartIndex + dataEndIndex !== 0 ? data.slice(dataStartIndex, dataEndIndex + 1) : data;
36
+ }
37
+ return {
38
+ state,
39
+ receiveSyncedRange,
40
+ displayedData,
41
+ tooltipData
42
+ };
43
+ }
44
+ function normalizeBrushRange(value, length) {
45
+ if (value == null || length === 0 || !Number.isFinite(value.startIndex) || !Number.isFinite(value.endIndex)) return null;
46
+ const start = Math.max(0, Math.min(length - 1, Math.floor(value.startIndex)));
47
+ const end = Math.max(0, Math.min(length - 1, Math.floor(value.endIndex)));
48
+ return {
49
+ startIndex: Math.min(start, end),
50
+ endIndex: Math.max(start, end)
51
+ };
52
+ }
53
+ //#endregion
54
+ export { createChartData, normalizeBrushRange };
@@ -0,0 +1,28 @@
1
+ //#region src/model/defaults.ts
2
+ var chartDefaults = {
3
+ accessibilityLayer: true,
4
+ barCategoryGap: "10%",
5
+ barGap: 4,
6
+ barSize: void 0,
7
+ class: void 0,
8
+ maxBarSize: void 0,
9
+ reverseStackOrder: false,
10
+ stackOffset: "none",
11
+ syncId: void 0,
12
+ syncMethod: "index",
13
+ layout: "horizontal",
14
+ margin: {
15
+ top: 5,
16
+ right: 5,
17
+ bottom: 5,
18
+ left: 5
19
+ },
20
+ cx: "50%",
21
+ cy: "50%",
22
+ startAngle: 90,
23
+ endAngle: -270,
24
+ innerRadius: 0,
25
+ outerRadius: "80%"
26
+ };
27
+ //#endregion
28
+ export { chartDefaults };
@@ -0,0 +1,33 @@
1
+ import { brushDimensions, chartOffset, chartViewBox, registeredAxes } from "../core/layout.mjs";
2
+ import { computed } from "vue";
3
+ //#region src/model/layout.ts
4
+ function createLayout(sources) {
5
+ const width = computed(() => sources.layout().width);
6
+ const height = computed(() => sources.layout().height);
7
+ const margin = computed(() => sources.layout().margin);
8
+ const xAxes = computed(() => registeredAxes(sources.axes.xAxis.entries.value));
9
+ const yAxes = computed(() => registeredAxes(sources.axes.yAxis.entries.value));
10
+ const brushHeight = computed(() => sources.brush().height);
11
+ const legendSettings = computed(sources.legendSettings);
12
+ const legendSize = computed(sources.legendSize);
13
+ const offset = computed(() => chartOffset({
14
+ width: width.value,
15
+ height: height.value
16
+ }, margin.value, brushHeight.value, xAxes.value, yAxes.value, legendSettings.value, legendSize.value));
17
+ return {
18
+ width,
19
+ height,
20
+ margin,
21
+ offset,
22
+ viewBox: computed(() => chartViewBox(offset.value)),
23
+ axisViewBox: computed(() => ({
24
+ x: 0,
25
+ y: 0,
26
+ width: width.value,
27
+ height: height.value
28
+ })),
29
+ brushDimensions: computed(() => brushDimensions(sources.brush(), offset.value, margin.value))
30
+ };
31
+ }
32
+ //#endregion
33
+ export { createLayout };
@@ -0,0 +1,30 @@
1
+ import { createRegistry } from "./registry.mjs";
2
+ import { computed } from "vue";
3
+ //#region src/model/legend.ts
4
+ function createChartLegend() {
5
+ const entries = createRegistry();
6
+ const bindings = createRegistry();
7
+ const size = computed(() => bindings.entries.value.at(-1)?.size ?? {
8
+ width: 0,
9
+ height: 0
10
+ });
11
+ const settings = computed(() => bindings.entries.value.at(-1)?.settings ?? {
12
+ layout: "horizontal",
13
+ align: "center",
14
+ verticalAlign: "middle"
15
+ });
16
+ const hidden = computed(() => new Set(bindings.entries.value.at(-1)?.hidden));
17
+ const payload = computed(() => entries.entries.value.flat());
18
+ return {
19
+ state: computed(() => ({
20
+ settings: settings.value,
21
+ hidden: hidden.value,
22
+ size: size.value
23
+ })),
24
+ entries,
25
+ payload,
26
+ register: bindings.register
27
+ };
28
+ }
29
+ //#endregion
30
+ export { createChartLegend };
@@ -0,0 +1,8 @@
1
+ //#region src/model/options.ts
2
+ var defaultChartCapabilities = {
3
+ categoryScale: "band",
4
+ cursor: "line",
5
+ series: []
6
+ };
7
+ //#endregion
8
+ export { defaultChartCapabilities };
@@ -0,0 +1,29 @@
1
+ import { getPercentValue } from "../utils/data.mjs";
2
+ import { polarViewBox } from "../core/axis/polar.mjs";
3
+ import { getMaxRadius } from "../utils/polar.mjs";
4
+ import { computed } from "vue";
5
+ //#region src/model/polar.ts
6
+ function createPolarLayout(sources) {
7
+ const maxRadius = computed(() => getMaxRadius(sources.size().width, sources.size().height, sources.offset()));
8
+ const innerRadius = computed(() => {
9
+ const options = sources.polar();
10
+ return options == null ? void 0 : getPercentValue(options.innerRadius, maxRadius.value, 0);
11
+ });
12
+ const outerRadius = computed(() => {
13
+ const options = sources.polar();
14
+ return options == null ? void 0 : getPercentValue(options.outerRadius, maxRadius.value, maxRadius.value * .8);
15
+ });
16
+ return {
17
+ maxRadius,
18
+ innerRadius,
19
+ outerRadius,
20
+ angleRange: computed(() => {
21
+ const options = sources.polar();
22
+ return options ? [options.startAngle, options.endAngle] : [0, 0];
23
+ }),
24
+ radiusRange: computed(() => innerRadius.value == null || outerRadius.value == null ? void 0 : [innerRadius.value, outerRadius.value]),
25
+ viewBox: computed(() => polarViewBox(sources.layout(), sources.polar(), innerRadius.value, outerRadius.value, sources.size()))
26
+ };
27
+ }
28
+ //#endregion
29
+ export { createPolarLayout };
@@ -0,0 +1,48 @@
1
+ import { getValueByDataKey } from "../core/data.mjs";
2
+ import { axisKey } from "../core/axis/key.mjs";
3
+ import { appliedValues, graphicalItemsData, graphicalItemsSettings, itemAxisPredicate } from "../core/axis/data.mjs";
4
+ import { axisDomain, getDomainDefinition, numericalDomain } from "../core/axis/domain.mjs";
5
+ import { createAxisScale } from "./axisScale.mjs";
6
+ import { stackDomain, stackGroups } from "../core/axis/stacks.mjs";
7
+ import { implicitAngleAxis, implicitRadialBarAngleAxis, implicitRadialBarRadiusAxis, implicitRadiusAxis } from "../core/axis/polarSettings.mjs";
8
+ import { computed } from "vue";
9
+ //#region src/model/polarAxis.ts
10
+ function createPolarAxis(sources, type, id) {
11
+ const settings = computed(() => {
12
+ const axis = sources.axes[type].byId.value.get(axisKey(id));
13
+ if (axis) return axis;
14
+ if (sources.layout() === "radial") return type === "angleAxis" ? implicitRadialBarAngleAxis : implicitRadialBarRadiusAxis;
15
+ return type === "angleAxis" ? implicitAngleAxis : implicitRadiusAxis;
16
+ });
17
+ const items = computed(() => graphicalItemsSettings(sources.items.polar.entries.value, settings.value, itemAxisPredicate(type, id)));
18
+ const graphicalData = computed(() => graphicalItemsData(items.value));
19
+ const displayedData = computed(() => sources.dataRange.displayedData({ data: graphicalData.value }, "all") ?? []);
20
+ const appliedValues$1 = computed(() => appliedValues(displayedData.value, settings.value, items.value));
21
+ const domainDefinition = computed(() => getDomainDefinition(settings.value));
22
+ const numericalValues = computed(() => {
23
+ const data = displayedData.value;
24
+ const axis = settings.value;
25
+ if (items.value.length) return data.flatMap((row) => items.value.map((item) => ({
26
+ value: getValueByDataKey(row, axis.dataKey ?? item.dataKey),
27
+ errorDomain: []
28
+ })));
29
+ return data.map((row) => ({
30
+ value: axis.dataKey == null ? row : getValueByDataKey(row, axis.dataKey),
31
+ errorDomain: []
32
+ }));
33
+ });
34
+ const stackGroups$1 = computed(() => stackGroups(displayedData.value, items.value, sources.stackOffset(), sources.reverseStackOrder()));
35
+ const stackDomain$1 = computed(() => stackDomain(stackGroups$1.value, sources.dataRange.state.value, type));
36
+ const numericalDomain$1 = computed(() => numericalDomain(settings.value, domainDefinition.value, stackDomain$1.value, numericalValues.value, void 0));
37
+ const domain = computed(() => axisDomain(settings.value, sources.layout(), displayedData.value, appliedValues$1.value, sources.stackOffset(), type, numericalDomain$1.value));
38
+ const range = type === "angleAxis" ? sources.polarLayout.angleRange : sources.polarLayout.radiusRange;
39
+ return {
40
+ settings,
41
+ displayedData,
42
+ stackGroups: stackGroups$1,
43
+ domain,
44
+ ...createAxisScale(sources, type, settings, domain, appliedValues$1, range)
45
+ };
46
+ }
47
+ //#endregion
48
+ export { createPolarAxis };
@@ -0,0 +1,13 @@
1
+ import { inject, provide } from "vue";
2
+ //#region src/model/presentation.ts
3
+ var presentationKey = Symbol("vccs-chart-presentation");
4
+ function provideChartPresentation(presentation) {
5
+ provide(presentationKey, presentation);
6
+ }
7
+ function useChartPresentation() {
8
+ const presentation = inject(presentationKey);
9
+ if (!presentation) throw new Error("vccs: presentation requires a chart.");
10
+ return presentation;
11
+ }
12
+ //#endregion
13
+ export { provideChartPresentation, useChartPresentation };
@@ -0,0 +1,38 @@
1
+ import { axisKey } from "../core/axis/key.mjs";
2
+ import { createRegistry } from "./registry.mjs";
3
+ import { computed } from "vue";
4
+ //#region src/model/registries.ts
5
+ function createAxisRegistry() {
6
+ const registry = createRegistry();
7
+ const byId = computed(() => {
8
+ const axes = /* @__PURE__ */ new Map();
9
+ for (const axis of registry.entries.value) axes.set(axisKey(axis.id ?? 0), axis);
10
+ return axes;
11
+ });
12
+ return {
13
+ ...registry,
14
+ byId
15
+ };
16
+ }
17
+ function createRegistries() {
18
+ return {
19
+ items: {
20
+ cartesian: createRegistry(),
21
+ polar: createRegistry()
22
+ },
23
+ axes: {
24
+ xAxis: createAxisRegistry(),
25
+ yAxis: createAxisRegistry(),
26
+ zAxis: createAxisRegistry(),
27
+ angleAxis: createAxisRegistry(),
28
+ radiusAxis: createAxisRegistry()
29
+ },
30
+ references: {
31
+ dots: createRegistry(),
32
+ areas: createRegistry(),
33
+ lines: createRegistry()
34
+ }
35
+ };
36
+ }
37
+ //#endregion
38
+ export { createRegistries };
@@ -0,0 +1,20 @@
1
+ import { computed, onScopeDispose, shallowReactive } from "vue";
2
+ //#region src/model/registry.ts
3
+ function createRegistry() {
4
+ const registrations = shallowReactive(/* @__PURE__ */ new Set());
5
+ const entries = computed(() => [...registrations].flatMap((entry) => {
6
+ const value = entry.value;
7
+ return value === void 0 ? [] : [value];
8
+ }));
9
+ function register(entry) {
10
+ registrations.add(entry);
11
+ onScopeDispose(() => registrations.delete(entry));
12
+ }
13
+ return {
14
+ entries,
15
+ registrations: computed(() => [...registrations]),
16
+ register
17
+ };
18
+ }
19
+ //#endregion
20
+ export { createRegistry };
@@ -0,0 +1,156 @@
1
+ import { useChartId } from "../hooks/useChartId.mjs";
2
+ import { computed, getCurrentInstance, hasInjectionContext, inject, onMounted, onScopeDispose, provide, ref, ssrContextKey } from "vue";
3
+ import { useIntersectionObserver } from "@vueuse/core";
4
+ //#region src/model/runtime.ts
5
+ var runtimeKey = Symbol("v-charts-runtime");
6
+ var chartSizeKey = Symbol("v-charts-size");
7
+ var inViewKey = Symbol("v-charts-in-view");
8
+ /**
9
+ * Called by the chart's root: watches `el` and tells entrances once the chart is on screen, so a
10
+ * chart further down the page plays its entrance when the reader gets there, not unseen at load.
11
+ * On screen means half the chart is visible, or half the viewport for a chart taller than that: a
12
+ * chart peeking in at the bottom edge would play its entrance mostly unseen. Without
13
+ * IntersectionObserver (tests, old browsers) the chart counts as seen.
14
+ */
15
+ function provideChartInView(el) {
16
+ const inView = ref(typeof IntersectionObserver === "undefined");
17
+ provide(inViewKey, inView);
18
+ const { resume, stop } = useIntersectionObserver(() => {
19
+ const element = el.value;
20
+ return element && (element instanceof HTMLElement || element instanceof SVGElement) ? element : null;
21
+ }, (entries) => {
22
+ const entry = entries.at(-1);
23
+ if (!entry) return;
24
+ const viewport = entry.rootBounds?.height ?? window.innerHeight;
25
+ if (entry.isIntersecting && (entry.intersectionRatio >= .5 || entry.intersectionRect.height >= viewport / 2)) {
26
+ inView.value = true;
27
+ stop();
28
+ }
29
+ }, {
30
+ immediate: false,
31
+ threshold: [
32
+ 0,
33
+ .25,
34
+ .5,
35
+ .75,
36
+ 1
37
+ ]
38
+ });
39
+ onMounted(() => {
40
+ if (inView.value || !el.value) {
41
+ inView.value = true;
42
+ return;
43
+ }
44
+ resume();
45
+ });
46
+ }
47
+ /** Whether the chart has been on screen; always true outside a chart. */
48
+ function useChartInView() {
49
+ return (hasInjectionContext() ? inject(inViewKey, null) : null) ?? ref(true);
50
+ }
51
+ /**
52
+ * True while the user drags something that changes the chart continuously (a brush). Like a
53
+ * resize, the chart then follows the pointer directly instead of trailing it.
54
+ */
55
+ function useChartGesture() {
56
+ return (hasInjectionContext() ? inject(runtimeKey, null)?.gesture : null) ?? ref(false);
57
+ }
58
+ /**
59
+ * Whether the chart's series animate. Each animated series registers its `isActive`; axes and
60
+ * grids move only when at least one series does, so turning animation off on the series keeps
61
+ * the whole chart still.
62
+ */
63
+ function useSeriesMotion() {
64
+ const registry = hasInjectionContext() ? inject(runtimeKey, null)?.seriesMotion : null;
65
+ return {
66
+ register(isActive) {
67
+ registry?.add(isActive);
68
+ if (registry && getCurrentInstance()) onScopeDispose(() => registry.delete(isActive));
69
+ },
70
+ anyActive: () => registry != null && [...registry].some((isActive) => isActive())
71
+ };
72
+ }
73
+ /**
74
+ * Called by the chart root with its settled size (undefined until a responsive chart has measured
75
+ * its box). Motion uses it to tell a resize from a data change.
76
+ * `null` while a responsive chart has not measured itself yet.
77
+ */
78
+ function provideChartSize(size) {
79
+ provide(chartSizeKey, size);
80
+ }
81
+ /**
82
+ * The chart's settled size, as an opaque string; changes only when the chart is resized.
83
+ * `null` while a responsive chart has not measured itself, `undefined` outside a chart.
84
+ */
85
+ function useChartSize() {
86
+ return hasInjectionContext() ? inject(chartSizeKey, () => void 0) : () => void 0;
87
+ }
88
+ /** Vue's server renderer provides an SSR context to the app; a client app has none. */
89
+ function isServerRender() {
90
+ return inject(ssrContextKey, null) != null;
91
+ }
92
+ /**
93
+ * True while Vue hydrates this component: Vue assigns the existing DOM node to the vnode before
94
+ * setup runs. That `el` field is Vue internal state; this is its only reader. The standard pattern
95
+ * (open the gate one frame after mount) changed entrance geometry, and the auto-width hydration
96
+ * test (53eed3f) fails without this check (see internals/open-items.md). Call during setup.
97
+ */
98
+ function isHydrating() {
99
+ return getCurrentInstance()?.vnode.el != null;
100
+ }
101
+ /**
102
+ * Called by every chart root. The server sends the entrance start; hydration preserves that
103
+ * geometry. The entrance plays after hydration when the chart is measured and on screen.
104
+ *
105
+ * Text measurement also waits so hydration reproduces the server layout before relayout.
106
+ * The gate stays closed until the first frame after mount, because series move into their
107
+ * teleported layers right after mount and re-create their animated children.
108
+ */
109
+ function provideRenderPhase() {
110
+ const server = isServerRender();
111
+ const skip = ref(server || isHydrating());
112
+ if (skip.value && !server) onMounted(() => requestAnimationFrame(() => {
113
+ skip.value = false;
114
+ }));
115
+ provide(runtimeKey, {
116
+ renderPhase: skip,
117
+ seriesMotion: /* @__PURE__ */ new Set(),
118
+ gesture: ref(false)
119
+ });
120
+ }
121
+ /** True during server rendering or the first hydration frame. Call during setup. */
122
+ function shouldSkipEntrance() {
123
+ return isServerRender() || (inject(runtimeKey, null)?.renderPhase.value ?? false);
124
+ }
125
+ /** Reactive permission for DOM text measurement. Call during setup. */
126
+ function useCanMeasureText() {
127
+ const phase = inject(runtimeKey, null)?.renderPhase;
128
+ return computed(() => phase ? !phase.value : !isServerRender());
129
+ }
130
+ var clipPathKey = Symbol("v-charts-clip-path");
131
+ function useClipPathId() {
132
+ const value = inject(clipPathKey);
133
+ if (value === void 0) throw new Error("vccs: clip paths require a chart runtime.");
134
+ return value;
135
+ }
136
+ var layersKey = Symbol("v-charts-layers");
137
+ /** Provides layers to the subtree; layers that an outer component provided stay available. */
138
+ function provideChartLayers(layers) {
139
+ provide(layersKey, {
140
+ ...inject(layersKey, {}),
141
+ ...layers
142
+ });
143
+ }
144
+ /** The named layer, or `null` outside a chart: the caller then renders in place. */
145
+ function useChartLayer(name) {
146
+ return inject(layersKey, {})[name] ?? null;
147
+ }
148
+ /** Create the chart's SSR-stable clip-path id. */
149
+ function provideClipPathId(props) {
150
+ const generatedId = useChartId("v-charts");
151
+ const clipPathId = `${props.id ?? generatedId}-clip`;
152
+ provide(clipPathKey, clipPathId);
153
+ return clipPathId;
154
+ }
155
+ //#endregion
156
+ export { isHydrating, isServerRender, provideChartInView, provideChartLayers, provideChartSize, provideClipPathId, provideRenderPhase, shouldSkipEntrance, useCanMeasureText, useChartGesture, useChartInView, useChartLayer, useChartSize, useClipPathId, useSeriesMotion };