vccs 0.5.0 → 1.0.0-beta.1

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 +15 -0
  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 +43 -0
  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 +9 -8
  113. package/dist/components/legend/hooks/useLegendContent.d.ts +7 -14
  114. package/dist/components/legend/type.d.ts +33 -25
  115. package/dist/components/legend/utils.d.ts +12 -3
  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} +71 -99
  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 -153
  180. package/dist/es/cartesian/axis/YAxis.mjs +63 -161
  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/cartesianPositionToCSSTranslate.mjs +28 -0
  204. package/dist/es/cartesian/error-bar/ErrorBar.mjs +65 -102
  205. package/dist/es/cartesian/error-bar/ErrorBarContext.mjs +21 -5
  206. package/dist/es/cartesian/funnel/Funnel.mjs +247 -127
  207. package/dist/es/cartesian/funnel/type.mjs +8 -14
  208. package/dist/es/cartesian/getCartesianPosition.mjs +176 -0
  209. package/dist/es/cartesian/line/Line.mjs +72 -25
  210. package/dist/es/cartesian/line/StaticLine.mjs +129 -166
  211. package/dist/es/cartesian/line/hooks/useLine.mjs +38 -35
  212. package/dist/es/cartesian/line/type.mjs +5 -43
  213. package/dist/es/cartesian/reference-area/ReferenceArea.mjs +108 -88
  214. package/dist/es/cartesian/reference-dot/ReferenceDot.mjs +87 -67
  215. package/dist/es/cartesian/reference-line/ReferenceLine.mjs +99 -74
  216. package/dist/es/cartesian/scatter/Scatter.mjs +188 -190
  217. package/dist/es/cartesian/scatter/hooks/useScatter.mjs +25 -6
  218. package/dist/es/cartesian/scatter/type.mjs +79 -0
  219. package/dist/es/cartesian/useNeedsClip.mjs +6 -14
  220. package/dist/es/cartesian/utils/get-ticks.mjs +6 -6
  221. package/dist/es/cartesian/z-axis/ZAxis.mjs +7 -11
  222. package/dist/es/chart/AreaChart.mjs +12 -4
  223. package/dist/es/chart/BarChart.mjs +12 -4
  224. package/dist/es/chart/BarList.mjs +265 -0
  225. package/dist/es/chart/CalendarHeatmap.mjs +299 -0
  226. package/dist/es/chart/CellGridLayer.mjs +380 -0
  227. package/dist/es/chart/ChartShell.mjs +139 -0
  228. package/dist/es/chart/ChartWrapper.mjs +215 -0
  229. package/dist/es/chart/ChartsWrapper.mjs +21 -180
  230. package/dist/es/chart/CohortChart.mjs +169 -0
  231. package/dist/es/chart/ComposedChart.mjs +14 -4
  232. package/dist/es/chart/FunnelChart.mjs +11 -5
  233. package/dist/es/chart/Heatmap.mjs +319 -0
  234. package/dist/es/chart/JourneySankey.mjs +682 -0
  235. package/dist/es/chart/LineChart.mjs +13 -4
  236. package/dist/es/chart/PieChart.mjs +13 -9
  237. package/dist/es/chart/RadarChart.mjs +13 -9
  238. package/dist/es/chart/RadialBarChart.mjs +18 -10
  239. package/dist/es/chart/Sankey.mjs +355 -244
  240. package/dist/es/chart/ScatterChart.mjs +12 -4
  241. package/dist/es/chart/Sparkline.mjs +458 -0
  242. package/dist/es/chart/SunburstChart.mjs +215 -158
  243. package/dist/es/chart/Tracker.mjs +175 -0
  244. package/dist/es/chart/Treemap.mjs +357 -300
  245. package/dist/es/chart/cellGridProps.mjs +42 -0
  246. package/dist/es/chart/cellGridUtils.mjs +80 -0
  247. package/dist/es/chart/chartProps.mjs +88 -0
  248. package/dist/es/chart/chartRoot.mjs +153 -0
  249. package/dist/es/chart/journeyTypes.mjs +90 -0
  250. package/dist/es/chart/journeyUtils.mjs +223 -0
  251. package/dist/es/chart/sankeyUtils.mjs +52 -1
  252. package/dist/es/chart/shell.mjs +30 -0
  253. package/dist/es/chart/sunburstUtils.mjs +14 -9
  254. package/dist/es/chart/treemapUtils.mjs +10 -8
  255. package/dist/es/componentNames.mjs +84 -0
  256. package/dist/es/components/Cell.mjs +3 -2
  257. package/dist/es/components/Customized.mjs +14 -9
  258. package/dist/es/components/Text.vue_vue_type_script_setup_true_lang.mjs +16 -10
  259. package/dist/es/components/label/Label.mjs +12 -30
  260. package/dist/es/components/label/LabelList.mjs +13 -48
  261. package/dist/es/components/label/LabelListView.mjs +73 -0
  262. package/dist/es/components/label/LabelView.mjs +45 -0
  263. package/dist/es/components/label/types.mjs +10 -5
  264. package/dist/es/components/label/utils.mjs +39 -19
  265. package/dist/es/components/legend/Legend.mjs +104 -37
  266. package/dist/es/components/legend/LegendSymbol.mjs +2 -2
  267. package/dist/es/components/legend/hooks/useLegend.mjs +66 -46
  268. package/dist/es/components/legend/hooks/useLegendContent.mjs +1 -13
  269. package/dist/es/components/legend/type.mjs +20 -10
  270. package/dist/es/components/legend/utils.mjs +20 -5
  271. package/dist/es/components/tooltip/Cursor.mjs +118 -0
  272. package/dist/es/components/tooltip/DefaultTooltipContent.mjs +107 -0
  273. package/dist/es/components/tooltip/Tooltip.mjs +229 -0
  274. package/dist/es/components/tooltip/TooltipBoundingBox.mjs +187 -0
  275. package/dist/es/components/utils.mjs +26 -27
  276. package/dist/es/container/ClipPath.mjs +2 -2
  277. package/dist/es/container/Layer.mjs +2 -2
  278. package/dist/es/container/ResponsiveContainer.vue_vue_type_script_setup_true_lang.mjs +20 -115
  279. package/dist/es/container/Surface.mjs +46 -7
  280. package/dist/es/container/useSizeContext.mjs +12 -3
  281. package/dist/es/context/cartesianLabelListContext.mjs +11 -2
  282. package/dist/es/{cartesian/area/utils.mjs → core/area.mjs} +5 -4
  283. package/dist/es/core/axis/data.mjs +75 -0
  284. package/dist/es/core/axis/domain.mjs +63 -0
  285. package/dist/es/core/axis/key.mjs +13 -0
  286. package/dist/es/core/axis/polar.mjs +16 -0
  287. package/dist/es/core/axis/polarSettings.mjs +100 -0
  288. package/dist/es/core/axis/position.mjs +51 -0
  289. package/dist/es/core/axis/range.mjs +46 -0
  290. package/dist/es/core/axis/references.mjs +26 -0
  291. package/dist/es/core/axis/scale.mjs +148 -0
  292. package/dist/es/core/axis/settings.mjs +76 -0
  293. package/dist/es/core/axis/stacks.mjs +97 -0
  294. package/dist/es/core/axis/ticks.mjs +82 -0
  295. package/dist/es/{utils/isDomainSpecifiedByUser.mjs → core/axis/userDomain.mjs} +5 -4
  296. package/dist/es/{cartesian/bar/utils.mjs → core/bar.mjs} +19 -16
  297. package/dist/es/core/barSizing.mjs +108 -0
  298. package/dist/es/core/color.mjs +23 -0
  299. package/dist/es/core/coordinates.mjs +57 -0
  300. package/dist/es/core/data.mjs +20 -0
  301. package/dist/es/core/errorBar.mjs +56 -0
  302. package/dist/es/{cartesian/funnel/utils.mjs → core/funnel.mjs} +31 -11
  303. package/dist/es/core/interaction.mjs +152 -0
  304. package/dist/es/core/layout.mjs +91 -0
  305. package/dist/es/{cartesian/line/utils.mjs → core/line.mjs} +7 -6
  306. package/dist/es/{state/selectors/pieSelectors.mjs → core/pie.mjs} +37 -65
  307. package/dist/es/core/polygon.mjs +7 -0
  308. package/dist/es/core/radar.mjs +58 -0
  309. package/dist/es/core/radialBar.mjs +92 -0
  310. package/dist/es/core/rectangle.mjs +25 -0
  311. package/dist/es/core/scatter.mjs +86 -0
  312. package/dist/es/core/tooltip.mjs +96 -0
  313. package/dist/es/events/componentEvents.mjs +58 -0
  314. package/dist/es/events/delegateItemEvents.mjs +24 -0
  315. package/dist/es/events/itemEvents.mjs +34 -0
  316. package/dist/es/events/sync.mjs +141 -0
  317. package/dist/es/events/useChartCallbacks.mjs +24 -0
  318. package/dist/es/events/useChartInteractions.mjs +143 -0
  319. package/dist/es/events/useItemInteractions.mjs +58 -0
  320. package/dist/es/events/useItemKeyboard.mjs +45 -0
  321. package/dist/es/events/usePointEvents.mjs +55 -0
  322. package/dist/es/hooks/deferredView.mjs +19 -0
  323. package/dist/es/hooks/publicHooks.mjs +36 -35
  324. package/dist/es/hooks/useActiveTooltipDataPoints.mjs +10 -0
  325. package/dist/es/hooks/useChartId.mjs +8 -0
  326. package/dist/es/hooks/useLayerTeleport.mjs +10 -0
  327. package/dist/es/hooks/useResponsiveSize.mjs +84 -0
  328. package/dist/es/hooks/useRoundedSize.mjs +28 -0
  329. package/dist/es/hooks/useSeriesProps.mjs +32 -0
  330. package/dist/es/hooks/useSetupGraphicalItem.mjs +74 -44
  331. package/dist/es/hooks/useTrackedData.mjs +17 -0
  332. package/dist/es/index.mjs +37 -23
  333. package/dist/es/model/animation.mjs +11 -0
  334. package/dist/es/model/axis.mjs +85 -0
  335. package/dist/es/model/axisLayout.mjs +27 -0
  336. package/dist/es/model/axisScale.mjs +52 -0
  337. package/dist/es/model/brush.mjs +27 -0
  338. package/dist/es/model/chart.mjs +122 -0
  339. package/dist/es/model/dataRange.mjs +54 -0
  340. package/dist/es/model/defaults.mjs +28 -0
  341. package/dist/es/model/layout.mjs +33 -0
  342. package/dist/es/model/legend.mjs +30 -0
  343. package/dist/es/model/options.mjs +8 -0
  344. package/dist/es/model/polar.mjs +29 -0
  345. package/dist/es/model/polarAxis.mjs +48 -0
  346. package/dist/es/model/presentation.mjs +13 -0
  347. package/dist/es/model/registries.mjs +38 -0
  348. package/dist/es/model/registry.mjs +20 -0
  349. package/dist/es/model/runtime.mjs +156 -0
  350. package/dist/es/model/tooltip.mjs +385 -0
  351. package/dist/es/nuxt.mjs +28 -0
  352. package/dist/es/polar/pie/Pie.mjs +260 -112
  353. package/dist/es/polar/pie/type.mjs +19 -8
  354. package/dist/es/polar/radar/PolarAngleAxis.mjs +117 -99
  355. package/dist/es/polar/radar/PolarGrid.mjs +73 -50
  356. package/dist/es/polar/radar/PolarRadiusAxis.mjs +124 -100
  357. package/dist/es/polar/radar/Radar.mjs +272 -219
  358. package/dist/es/polar/radial-bar/RadialBar.mjs +248 -130
  359. package/dist/es/polar/radial-bar/type.mjs +6 -7
  360. package/dist/es/resolver.mjs +19 -0
  361. package/dist/es/shape/Cross.mjs +2 -1
  362. package/dist/es/shape/Curve.mjs +7 -5
  363. package/dist/es/shape/Dot.mjs +9 -5
  364. package/dist/es/shape/Polygon.mjs +4 -7
  365. package/dist/es/shape/Rectangle.mjs +17 -10
  366. package/dist/es/shape/Sector.mjs +8 -5
  367. package/dist/es/shape/Symbols.mjs +13 -8
  368. package/dist/es/shape/Trapezoid.mjs +3 -1
  369. package/dist/es/typed.mjs +9 -0
  370. package/dist/es/types/base.mjs +6 -0
  371. package/dist/es/utils/ReduceCSSCalc.mjs +2 -2
  372. package/dist/es/utils/VueUtils.mjs +89 -3
  373. package/dist/es/utils/attributes.mjs +18 -0
  374. package/dist/es/utils/attrs.mjs +38 -26
  375. package/dist/es/utils/cartesian.mjs +1 -21
  376. package/dist/es/utils/cell.mjs +13 -1
  377. package/dist/es/utils/chart.mjs +3 -361
  378. package/dist/es/utils/const.mjs +2 -25
  379. package/dist/es/utils/createCategoricalInverse.mjs +2 -2
  380. package/dist/es/utils/data-utils.mjs +2 -6
  381. package/dist/es/utils/data.mjs +1 -1
  382. package/dist/es/utils/env.mjs +10 -0
  383. package/dist/es/utils/events.mjs +29 -2
  384. package/dist/es/utils/labelColor.mjs +16 -0
  385. package/dist/es/utils/log.mjs +23 -5
  386. package/dist/es/utils/pointer.mjs +13 -0
  387. package/dist/es/utils/polar.mjs +7 -2
  388. package/dist/es/utils/scale/getNiceTickValues.mjs +8 -8
  389. package/dist/es/utils/scale/utils/arithmetic.mjs +0 -15
  390. package/dist/es/utils/scale/utils/utils.mjs +9 -44
  391. package/dist/es/utils/style.mjs +1 -1
  392. package/dist/es/utils/svg.mjs +320 -0
  393. package/dist/es/utils/theme.mjs +50 -0
  394. package/dist/es/utils/tick.mjs +4 -3
  395. package/dist/es/utils/validate.mjs +21 -3
  396. package/dist/events/componentEvents.d.ts +60 -0
  397. package/dist/events/delegateItemEvents.d.ts +12 -0
  398. package/dist/events/itemEvents.d.ts +100 -0
  399. package/dist/events/sync.d.ts +6 -0
  400. package/dist/events/useChartCallbacks.d.ts +2 -0
  401. package/dist/events/useChartInteractions.d.ts +8 -0
  402. package/dist/events/useItemInteractions.d.ts +7 -0
  403. package/dist/events/useItemKeyboard.d.ts +24 -0
  404. package/dist/events/usePointEvents.d.ts +23 -0
  405. package/dist/hooks/deferredView.d.ts +12 -0
  406. package/dist/hooks/publicHooks.d.ts +27 -29
  407. package/dist/hooks/useActiveTooltipDataPoints.d.ts +2 -0
  408. package/dist/hooks/useChartId.d.ts +2 -0
  409. package/dist/hooks/useLayerTeleport.d.ts +5 -0
  410. package/dist/hooks/useResponsiveSize.d.ts +37 -0
  411. package/dist/hooks/useRoundedSize.d.ts +19 -0
  412. package/dist/hooks/useSeriesProps.d.ts +7 -0
  413. package/dist/hooks/useSetupGraphicalItem.d.ts +35 -4
  414. package/dist/hooks/useTrackedData.d.ts +3 -0
  415. package/dist/index.d.ts +130 -9
  416. package/dist/model/animation.d.ts +7 -0
  417. package/dist/model/axis.d.ts +29 -0
  418. package/dist/model/axisLayout.d.ts +85 -0
  419. package/dist/model/axisScale.d.ts +41 -0
  420. package/dist/model/brush.d.ts +17 -0
  421. package/dist/model/chart.d.ts +44 -0
  422. package/dist/model/dataRange.d.ts +19 -0
  423. package/dist/model/defaults.d.ts +7 -0
  424. package/dist/model/layout.d.ts +38 -0
  425. package/dist/model/legend.d.ts +28 -0
  426. package/dist/model/options.d.ts +30 -0
  427. package/dist/model/polar.d.ts +24 -0
  428. package/dist/model/polarAxis.d.ts +39 -0
  429. package/dist/model/presentation.d.ts +19 -0
  430. package/dist/model/registries.d.ts +27 -0
  431. package/dist/model/registry.d.ts +7 -0
  432. package/dist/model/runtime.d.ts +76 -0
  433. package/dist/model/tooltip.d.ts +451 -0
  434. package/dist/nuxt.d.ts +7 -0
  435. package/dist/polar/pie/Pie.d.ts +252 -2
  436. package/dist/polar/pie/type.d.ts +37 -25
  437. package/dist/polar/radar/PolarAngleAxis.d.ts +36 -39
  438. package/dist/polar/radar/PolarGrid.d.ts +10 -8
  439. package/dist/polar/radar/PolarRadiusAxis.d.ts +30 -28
  440. package/dist/polar/radar/Radar.d.ts +82 -53
  441. package/dist/polar/radial-bar/RadialBar.d.ts +251 -2
  442. package/dist/polar/radial-bar/type.d.ts +26 -26
  443. package/dist/publicProps.d.ts +96 -0
  444. package/dist/resolver.d.ts +9 -0
  445. package/dist/shape/Cross.d.ts +2 -1
  446. package/dist/shape/Curve.d.ts +8 -19
  447. package/dist/shape/Dot.d.ts +10 -6
  448. package/dist/shape/Polygon.d.ts +2 -1
  449. package/dist/shape/Rectangle.d.ts +9 -8
  450. package/dist/shape/Sector.d.ts +7 -6
  451. package/dist/shape/Symbols.d.ts +3 -3
  452. package/dist/shape/Trapezoid.d.ts +5 -5
  453. package/dist/typed.d.ts +92 -0
  454. package/dist/types/area.d.ts +5 -6
  455. package/dist/types/axis.d.ts +9 -36
  456. package/dist/types/axisSettings.d.ts +20 -0
  457. package/dist/types/bar.d.ts +17 -7
  458. package/dist/types/base.d.ts +46 -0
  459. package/dist/types/categorical.d.ts +5 -7
  460. package/dist/types/chartData.d.ts +21 -0
  461. package/dist/types/chartLayout.d.ts +7 -0
  462. package/dist/{state/rootPropsSlice.d.ts → types/chartOptions.d.ts} +4 -5
  463. package/dist/types/common.d.ts +16 -55
  464. package/dist/types/event.d.ts +2 -15
  465. package/dist/types/funnel.d.ts +23 -0
  466. package/dist/types/graphical.d.ts +77 -0
  467. package/dist/types/index.d.ts +4 -4
  468. package/dist/types/legend.d.ts +17 -0
  469. package/dist/types/line.d.ts +6 -0
  470. package/dist/types/polarOptions.d.ts +8 -0
  471. package/dist/types/radar.d.ts +4 -4
  472. package/dist/types/radialBar.d.ts +15 -0
  473. package/dist/types/reference.d.ts +22 -0
  474. package/dist/types/scale.d.ts +13 -2
  475. package/dist/{shape/types.d.ts → types/shape.d.ts} +6 -4
  476. package/dist/types/tick.d.ts +18 -7
  477. package/dist/types/tooltip.d.ts +181 -14
  478. package/dist/types/typed.d.ts +16 -0
  479. package/dist/{cartesian/type.d.ts → types/viewBox.d.ts} +8 -2
  480. package/dist/utils/ReduceCSSCalc.d.ts +0 -1
  481. package/dist/utils/VueUtils.d.ts +6 -9
  482. package/dist/utils/attributes.d.ts +56 -0
  483. package/dist/utils/attrs.d.ts +4 -45
  484. package/dist/utils/cartesian.d.ts +2 -16
  485. package/dist/utils/cell.d.ts +7 -2
  486. package/dist/utils/chart.d.ts +2 -99
  487. package/dist/utils/const.d.ts +1 -24
  488. package/dist/utils/createCategoricalInverse.d.ts +2 -6
  489. package/dist/utils/data-utils.d.ts +0 -1
  490. package/dist/utils/data.d.ts +1 -2
  491. package/dist/utils/env.d.ts +5 -0
  492. package/dist/utils/events.d.ts +14 -7
  493. package/dist/utils/grid.d.ts +1 -28
  494. package/dist/utils/index.d.ts +4 -5
  495. package/dist/utils/isDomainSpecifiedByUser.d.ts +1 -47
  496. package/dist/utils/labelColor.d.ts +2 -0
  497. package/dist/utils/log.d.ts +2 -1
  498. package/dist/utils/pointer.d.ts +2 -0
  499. package/dist/utils/polar.d.ts +2 -4
  500. package/dist/utils/scale/getNiceTickValues.d.ts +2 -61
  501. package/dist/utils/scale/utils/arithmetic.d.ts +3 -31
  502. package/dist/utils/scale/utils/utils.d.ts +2 -9
  503. package/dist/utils/scale.d.ts +1 -1
  504. package/dist/utils/style.d.ts +2 -1
  505. package/dist/utils/svg.d.ts +4 -0
  506. package/dist/utils/theme.d.ts +4 -0
  507. package/dist/utils/tick.d.ts +3 -3
  508. package/dist/utils/tooltip/translate.d.ts +9 -25
  509. package/dist/utils/validate.d.ts +12 -4
  510. package/package.json +46 -29
  511. package/dist/animation/Animate.d.ts +0 -72
  512. package/dist/cartesian/area/ActivePoints.d.ts +0 -77
  513. package/dist/cartesian/area/ClipRect.d.ts +0 -1
  514. package/dist/cartesian/area/__stories__/config.d.ts +0 -31
  515. package/dist/cartesian/area/index.d.ts +0 -2
  516. package/dist/cartesian/area/utils.d.ts +0 -19
  517. package/dist/cartesian/axis/index.d.ts +0 -2
  518. package/dist/cartesian/axis/type.d.ts +0 -57
  519. package/dist/cartesian/bar/index.d.ts +0 -1
  520. package/dist/cartesian/bar/utils.d.ts +0 -31
  521. package/dist/cartesian/brush/hooks/useBrushSetting.d.ts +0 -6
  522. package/dist/cartesian/brush/index.d.ts +0 -2
  523. package/dist/cartesian/cartesian-axis/const.d.ts +0 -24
  524. package/dist/cartesian/cartesian-axis/index.d.ts +0 -1
  525. package/dist/cartesian/cartesian-axis/use-axis-line.d.ts +0 -7
  526. package/dist/cartesian/cartesian-grid/index.d.ts +0 -1
  527. package/dist/cartesian/error-bar/index.d.ts +0 -2
  528. package/dist/cartesian/funnel/index.d.ts +0 -2
  529. package/dist/cartesian/funnel/utils.d.ts +0 -12
  530. package/dist/cartesian/index.d.ts +0 -13
  531. package/dist/cartesian/line/ActivePoints.d.ts +0 -77
  532. package/dist/cartesian/line/index.d.ts +0 -3
  533. package/dist/cartesian/line/utils.d.ts +0 -13
  534. package/dist/cartesian/reference-area/index.d.ts +0 -1
  535. package/dist/cartesian/reference-dot/index.d.ts +0 -2
  536. package/dist/cartesian/reference-line/index.d.ts +0 -1
  537. package/dist/cartesian/scatter/index.d.ts +0 -1
  538. package/dist/cartesian/z-axis/index.d.ts +0 -1
  539. package/dist/chart/LegendPortalContext.d.ts +0 -3
  540. package/dist/chart/Surface.d.ts +0 -41
  541. package/dist/chart/TooltipPortalContext.d.ts +0 -2
  542. package/dist/chart/generateCategoricalChart.d.ts +0 -123
  543. package/dist/chart/index.d.ts +0 -12
  544. package/dist/chart/provideClipPathId.d.ts +0 -12
  545. package/dist/components/DefaultLegendContent.d.ts +0 -18
  546. package/dist/components/index.d.ts +0 -6
  547. package/dist/components/label/index.d.ts +0 -2
  548. package/dist/components/legend/index.d.ts +0 -2
  549. package/dist/container/RootSurface.d.ts +0 -17
  550. package/dist/container/index.d.ts +0 -1
  551. package/dist/context/ChartDataContextProvider.d.ts +0 -17
  552. package/dist/context/PanoramaContextProvider.d.ts +0 -22
  553. package/dist/context/accessibilityContext.d.ts +0 -1
  554. package/dist/context/chartLayoutContext.d.ts +0 -8
  555. package/dist/context/cursorLayerContext.d.ts +0 -2
  556. package/dist/context/graphicalLayerContext.d.ts +0 -2
  557. package/dist/context/labelLayerContext.d.ts +0 -2
  558. package/dist/context/useTooltipAxis.d.ts +0 -2
  559. package/dist/es/animation/Animate.mjs +0 -89
  560. package/dist/es/cartesian/area/ActivePoints.mjs +0 -78
  561. package/dist/es/cartesian/area/ClipRect.mjs +0 -125
  562. package/dist/es/cartesian/line/ActivePoints.mjs +0 -79
  563. package/dist/es/chart/LegendPortalContext.mjs +0 -5
  564. package/dist/es/chart/Surface.mjs +0 -5
  565. package/dist/es/chart/Surface.vue_vue_type_script_setup_true_lang.mjs +0 -78
  566. package/dist/es/chart/TooltipPortalContext.mjs +0 -5
  567. package/dist/es/chart/generateCategoricalChart.mjs +0 -205
  568. package/dist/es/chart/provideClipPathId.mjs +0 -15
  569. package/dist/es/components/Tooltip.mjs +0 -479
  570. package/dist/es/context/ChartDataContextProvider.mjs +0 -27
  571. package/dist/es/context/PanoramaContextProvider.mjs +0 -24
  572. package/dist/es/context/accessibilityContext.mjs +0 -5
  573. package/dist/es/context/chartLayoutContext.mjs +0 -49
  574. package/dist/es/context/cursorLayerContext.mjs +0 -5
  575. package/dist/es/context/graphicalLayerContext.mjs +0 -5
  576. package/dist/es/context/labelLayerContext.mjs +0 -5
  577. package/dist/es/context/useTooltipAxis.mjs +0 -17
  578. package/dist/es/events/useChartSynchronisation.mjs +0 -113
  579. package/dist/es/hooks/useIsAnimating.mjs +0 -28
  580. package/dist/es/state/ReportChartProps.mjs +0 -62
  581. package/dist/es/state/ReportMainChartProps.mjs +0 -46
  582. package/dist/es/state/ReportPolarOptions.mjs +0 -56
  583. package/dist/es/state/SetGraphicalItem.mjs +0 -49
  584. package/dist/es/state/SetLegendPayload.mjs +0 -20
  585. package/dist/es/state/SetTooltipEntrySettings.mjs +0 -19
  586. package/dist/es/state/brushSlice.mjs +0 -26
  587. package/dist/es/state/cartesianAxisSlice.mjs +0 -50
  588. package/dist/es/state/chartDataSlice.mjs +0 -33
  589. package/dist/es/state/externalEventsMiddleware.mjs +0 -30
  590. package/dist/es/state/graphicalItemsSlice.mjs +0 -47
  591. package/dist/es/state/hooks.mjs +0 -26
  592. package/dist/es/state/keyboardEventsMiddleware.mjs +0 -63
  593. package/dist/es/state/layoutSlice.mjs +0 -39
  594. package/dist/es/state/legendSlice.mjs +0 -40
  595. package/dist/es/state/mouseEventsMiddleware.mjs +0 -41
  596. package/dist/es/state/optionsSlice.mjs +0 -25
  597. package/dist/es/state/polarAxisSlice.mjs +0 -28
  598. package/dist/es/state/polarOptionsSlice.mjs +0 -13
  599. package/dist/es/state/reduxDevtoolsJsonStringifyReplacer.mjs +0 -8
  600. package/dist/es/state/referenceElementsSlice.mjs +0 -36
  601. package/dist/es/state/rootPropsSlice.mjs +0 -32
  602. package/dist/es/state/selectors/areaSelectors.mjs +0 -77
  603. package/dist/es/state/selectors/axisSelectors.mjs +0 -908
  604. package/dist/es/state/selectors/barSelectors.mjs +0 -241
  605. package/dist/es/state/selectors/brushSelectors.mjs +0 -18
  606. package/dist/es/state/selectors/combiners/combineActiveLabel.mjs +0 -9
  607. package/dist/es/state/selectors/combiners/combineActiveTooltipIndex.mjs +0 -43
  608. package/dist/es/state/selectors/combiners/combineAxisRangeWithReverse.mjs +0 -8
  609. package/dist/es/state/selectors/combiners/combineCoordinateForDefaultIndex.mjs +0 -21
  610. package/dist/es/state/selectors/combiners/combineTooltipInteractionState.mjs +0 -37
  611. package/dist/es/state/selectors/combiners/combineTooltipPayloadConfigurations.mjs +0 -13
  612. package/dist/es/state/selectors/common.mjs +0 -4
  613. package/dist/es/state/selectors/containerSelectors.mjs +0 -7
  614. package/dist/es/state/selectors/dataSelectors.mjs +0 -35
  615. package/dist/es/state/selectors/funnelSelectors.mjs +0 -38
  616. package/dist/es/state/selectors/legendSelectors.mjs +0 -10
  617. package/dist/es/state/selectors/lineSelectors.mjs +0 -64
  618. package/dist/es/state/selectors/pickAxisId.mjs +0 -4
  619. package/dist/es/state/selectors/pickAxisType.mjs +0 -4
  620. package/dist/es/state/selectors/polarAxisSelectors.mjs +0 -167
  621. package/dist/es/state/selectors/polarGridSelectors.mjs +0 -19
  622. package/dist/es/state/selectors/polarScaleSelectors.mjs +0 -55
  623. package/dist/es/state/selectors/polarSelectors.mjs +0 -81
  624. package/dist/es/state/selectors/radarSelectors.mjs +0 -133
  625. package/dist/es/state/selectors/radialBarSelectors.mjs +0 -259
  626. package/dist/es/state/selectors/rootPropsSelectors.mjs +0 -14
  627. package/dist/es/state/selectors/scatterSelectors.mjs +0 -134
  628. package/dist/es/state/selectors/selectActivePropsFromChartPointer.mjs +0 -20
  629. package/dist/es/state/selectors/selectAllAxes.mjs +0 -10
  630. package/dist/es/state/selectors/selectChartOffset.mjs +0 -72
  631. package/dist/es/state/selectors/selectChartOffsetInternal.mjs +0 -66
  632. package/dist/es/state/selectors/selectTooltipEventType.mjs +0 -22
  633. package/dist/es/state/selectors/selectTooltipPayloadSearcher.mjs +0 -6
  634. package/dist/es/state/selectors/selectTooltipSettings.mjs +0 -4
  635. package/dist/es/state/selectors/selectTooltipState.mjs +0 -4
  636. package/dist/es/state/selectors/selectors.mjs +0 -104
  637. package/dist/es/state/selectors/tooltipSelectors.mjs +0 -269
  638. package/dist/es/state/selectors/touchSelectors.mjs +0 -19
  639. package/dist/es/state/store.mjs +0 -55
  640. package/dist/es/state/tooltipSlice.mjs +0 -102
  641. package/dist/es/state/touchEventsMiddleware.mjs +0 -44
  642. package/dist/es/state/utils/useReportScale.mjs +0 -19
  643. package/dist/es/synchronisation/syncSelectors.mjs +0 -6
  644. package/dist/es/synchronisation/useChartSynchronisation.mjs +0 -38
  645. package/dist/es/utils/Global.mjs +0 -18
  646. package/dist/es/utils/createContext.mjs +0 -31
  647. package/dist/es/utils/legend.mjs +0 -19
  648. package/dist/es/utils/props.mjs +0 -20
  649. package/dist/es/utils/resolveDefaultProps.mjs +0 -26
  650. package/dist/events/useChartSynchronisation.d.ts +0 -8
  651. package/dist/hooks/useIsAnimating.d.ts +0 -14
  652. package/dist/polar/index.d.ts +0 -3
  653. package/dist/polar/pie/index.d.ts +0 -2
  654. package/dist/polar/radar/index.d.ts +0 -4
  655. package/dist/polar/radial-bar/index.d.ts +0 -2
  656. package/dist/shape/index.d.ts +0 -10
  657. package/dist/state/ReportBar.d.ts +0 -1
  658. package/dist/state/ReportChartProps.d.ts +0 -88
  659. package/dist/state/ReportMainChartProps.d.ts +0 -37
  660. package/dist/state/ReportPolarOptions.d.ts +0 -59
  661. package/dist/state/SetGraphicalItem.d.ts +0 -9
  662. package/dist/state/SetLegendPayload.d.ts +0 -3
  663. package/dist/state/SetTooltipEntrySettings.d.ts +0 -8
  664. package/dist/state/brushSlice.d.ts +0 -18
  665. package/dist/state/cartesianAxisSlice.d.ts +0 -96
  666. package/dist/state/chartDataSlice.d.ts +0 -44
  667. package/dist/state/externalEventsMiddleware.d.ts +0 -17
  668. package/dist/state/graphicalItemsSlice.d.ts +0 -108
  669. package/dist/state/hooks.d.ts +0 -54
  670. package/dist/state/keyboardEventsMiddleware.d.ts +0 -3
  671. package/dist/state/layoutSlice.d.ts +0 -15
  672. package/dist/state/legendSlice.d.ts +0 -26
  673. package/dist/state/mouseEventsMiddleware.d.ts +0 -5
  674. package/dist/state/optionsSlice.d.ts +0 -27
  675. package/dist/state/polarAxisSlice.d.ts +0 -10
  676. package/dist/state/polarOptionsSlice.d.ts +0 -10
  677. package/dist/state/reduxDevtoolsJsonStringifyReplacer.d.ts +0 -1
  678. package/dist/state/referenceElementsSlice.d.ts +0 -40
  679. package/dist/state/selectors/areaSelectors.d.ts +0 -24
  680. package/dist/state/selectors/axisSelectors.d.ts +0 -1833
  681. package/dist/state/selectors/barSelectors.d.ts +0 -944
  682. package/dist/state/selectors/brushSelectors.d.ts +0 -10
  683. package/dist/state/selectors/combiners/combineActiveLabel.d.ts +0 -3
  684. package/dist/state/selectors/combiners/combineActiveTooltipIndex.d.ts +0 -5
  685. package/dist/state/selectors/combiners/combineAxisRangeWithReverse.d.ts +0 -3
  686. package/dist/state/selectors/combiners/combineCoordinateForDefaultIndex.d.ts +0 -3
  687. package/dist/state/selectors/combiners/combineTooltipInteractionState.d.ts +0 -3
  688. package/dist/state/selectors/combiners/combineTooltipPayloadConfigurations.d.ts +0 -3
  689. package/dist/state/selectors/common.d.ts +0 -2
  690. package/dist/state/selectors/containerSelectors.d.ts +0 -6
  691. package/dist/state/selectors/dataSelectors.d.ts +0 -23
  692. package/dist/state/selectors/funnelSelectors.d.ts +0 -69
  693. package/dist/state/selectors/legendSelectors.d.ts +0 -7
  694. package/dist/state/selectors/lineSelectors.d.ts +0 -123
  695. package/dist/state/selectors/pickAxisId.d.ts +0 -3
  696. package/dist/state/selectors/pickAxisType.d.ts +0 -2
  697. package/dist/state/selectors/polarAxisSelectors.d.ts +0 -49
  698. package/dist/state/selectors/polarGridSelectors.d.ts +0 -118
  699. package/dist/state/selectors/polarScaleSelectors.d.ts +0 -9
  700. package/dist/state/selectors/polarSelectors.d.ts +0 -70
  701. package/dist/state/selectors/radarSelectors.d.ts +0 -76
  702. package/dist/state/selectors/radialBarSelectors.d.ts +0 -61
  703. package/dist/state/selectors/rootPropsSelectors.d.ts +0 -11
  704. package/dist/state/selectors/scatterSelectors.d.ts +0 -21
  705. package/dist/state/selectors/selectActivePropsFromChartPointer.d.ts +0 -382
  706. package/dist/state/selectors/selectAllAxes.d.ts +0 -4
  707. package/dist/state/selectors/selectChartOffset.d.ts +0 -116
  708. package/dist/state/selectors/selectChartOffsetInternal.d.ts +0 -9
  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 };