semiotic 2.0.3 → 3.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 (424) hide show
  1. package/CLAUDE.md +530 -0
  2. package/README.md +190 -37
  3. package/ai/cli.js +48 -0
  4. package/ai/dist/ai/componentRegistry.js +45 -0
  5. package/ai/dist/ai/mcp-server.js +99 -0
  6. package/ai/dist/ai/renderHOCToSVG.js +77 -0
  7. package/ai/dist/src/components/Annotation.js +358 -0
  8. package/ai/dist/src/components/AnnotationLayer/AnnotationLayer.js +369 -0
  9. package/ai/dist/src/components/Axis/Axis.js +373 -0
  10. package/ai/dist/src/components/Axis/axisTitle.js +14 -0
  11. package/ai/dist/src/components/Axis/index.js +7 -0
  12. package/ai/dist/src/components/Axis/summaryGraphic.js +37 -0
  13. package/ai/dist/src/components/Brush.js +84 -0
  14. package/ai/dist/src/components/DividedLine.js +65 -0
  15. package/ai/dist/src/components/FacetController.js +259 -0
  16. package/ai/dist/src/components/Frame.js +139 -0
  17. package/ai/dist/src/components/InteractionLayer.js +328 -0
  18. package/ai/dist/src/components/Legend.js +140 -0
  19. package/ai/dist/src/components/MiniMap.js +75 -0
  20. package/ai/dist/src/components/MinimapXYFrame.js +99 -0
  21. package/ai/dist/src/components/NetworkFrame.js +335 -0
  22. package/ai/dist/src/components/OrdinalFrame.js +437 -0
  23. package/ai/dist/src/components/ResponsiveFrame.js +68 -0
  24. package/ai/dist/src/components/ResponsiveMinimapXYFrame.js +11 -0
  25. package/ai/dist/src/components/ResponsiveNetworkFrame.js +11 -0
  26. package/ai/dist/src/components/ResponsiveOrdinalFrame.js +11 -0
  27. package/ai/dist/src/components/ResponsiveXYFrame.js +10 -0
  28. package/ai/dist/src/components/SparkFrame.js +113 -0
  29. package/ai/dist/src/components/SparkNetworkFrame.js +11 -0
  30. package/ai/dist/src/components/SparkOrdinalFrame.js +11 -0
  31. package/ai/dist/src/components/SparkXYFrame.js +11 -0
  32. package/ai/dist/src/components/Tooltip/Tooltip.js +304 -0
  33. package/ai/dist/src/components/TooltipPositioner/index.js +132 -0
  34. package/ai/dist/src/components/VisualizationLayer.js +395 -0
  35. package/ai/dist/src/components/XYFrame.js +524 -0
  36. package/ai/dist/src/components/annotationLayerBehavior/annotationHandling.js +73 -0
  37. package/ai/dist/src/components/annotationLayerBehavior/d3labeler.js +254 -0
  38. package/ai/dist/src/components/annotationRules/baseRules.js +150 -0
  39. package/ai/dist/src/components/annotationRules/networkframeRules.js +198 -0
  40. package/ai/dist/src/components/annotationRules/orframeRules.js +695 -0
  41. package/ai/dist/src/components/annotationRules/xyframeRules.js +299 -0
  42. package/ai/dist/src/components/batchWork.js +35 -0
  43. package/ai/dist/src/components/charts/index.js +96 -0
  44. package/ai/dist/src/components/charts/network/ChordDiagram.js +245 -0
  45. package/ai/dist/src/components/charts/network/CirclePack.js +177 -0
  46. package/ai/dist/src/components/charts/network/ForceDirectedGraph.js +248 -0
  47. package/ai/dist/src/components/charts/network/SankeyDiagram.js +305 -0
  48. package/ai/dist/src/components/charts/network/TreeDiagram.js +268 -0
  49. package/ai/dist/src/components/charts/network/Treemap.js +177 -0
  50. package/ai/dist/src/components/charts/ordinal/BarChart.js +191 -0
  51. package/ai/dist/src/components/charts/ordinal/BoxPlot.js +235 -0
  52. package/ai/dist/src/components/charts/ordinal/DonutChart.js +178 -0
  53. package/ai/dist/src/components/charts/ordinal/DotPlot.js +194 -0
  54. package/ai/dist/src/components/charts/ordinal/GroupedBarChart.js +194 -0
  55. package/ai/dist/src/components/charts/ordinal/PieChart.js +155 -0
  56. package/ai/dist/src/components/charts/ordinal/StackedBarChart.js +213 -0
  57. package/ai/dist/src/components/charts/ordinal/SwarmPlot.js +219 -0
  58. package/ai/dist/src/components/charts/realtime/RealtimeBarChart.js +91 -0
  59. package/ai/dist/src/components/charts/realtime/RealtimeLineChart.js +73 -0
  60. package/ai/dist/src/components/charts/realtime/RealtimeSwarmChart.js +85 -0
  61. package/ai/dist/src/components/charts/realtime/RealtimeWaterfallChart.js +86 -0
  62. package/ai/dist/src/components/charts/shared/ChartError.js +72 -0
  63. package/ai/dist/src/components/charts/shared/colorUtils.js +138 -0
  64. package/ai/dist/src/components/charts/shared/formatUtils.js +176 -0
  65. package/ai/dist/src/components/charts/shared/hooks.js +49 -0
  66. package/ai/dist/src/components/charts/shared/legendUtils.js +57 -0
  67. package/ai/dist/src/components/charts/shared/types.js +2 -0
  68. package/ai/dist/src/components/charts/shared/validateChartData.js +82 -0
  69. package/ai/dist/src/components/charts/shared/validateProps.js +640 -0
  70. package/ai/dist/src/components/charts/xy/AreaChart.js +220 -0
  71. package/ai/dist/src/components/charts/xy/BubbleChart.js +222 -0
  72. package/ai/dist/src/components/charts/xy/Heatmap.js +230 -0
  73. package/ai/dist/src/components/charts/xy/LineChart.js +302 -0
  74. package/ai/dist/src/components/charts/xy/Scatterplot.js +136 -0
  75. package/ai/dist/src/components/charts/xy/StackedAreaChart.js +220 -0
  76. package/ai/dist/src/components/constants/coordinateNames.js +11 -0
  77. package/ai/dist/src/components/constants/frame_props.js +251 -0
  78. package/ai/dist/src/components/constants/jsx.js +71 -0
  79. package/ai/dist/src/components/data/dataFunctions.js +473 -0
  80. package/ai/dist/src/components/data/multiAccessorUtils.js +14 -0
  81. package/ai/dist/src/components/data/networkPipelineCache.js +43 -0
  82. package/ai/dist/src/components/data/ordinalPipelineCache.js +53 -0
  83. package/ai/dist/src/components/data/unflowedFunctions.js +5 -0
  84. package/ai/dist/src/components/data/xyPipelineCache.js +49 -0
  85. package/ai/dist/src/components/generic_utilities/functions.js +5 -0
  86. package/ai/dist/src/components/index.js +145 -0
  87. package/ai/dist/src/components/interactionLayerBehavior/InteractionCanvas.js +128 -0
  88. package/ai/dist/src/components/processing/InteractionItems.js +223 -0
  89. package/ai/dist/src/components/processing/hierarchyUtils.js +104 -0
  90. package/ai/dist/src/components/processing/layouts/chordLayout.js +58 -0
  91. package/ai/dist/src/components/processing/layouts/forceLayout.js +142 -0
  92. package/ai/dist/src/components/processing/layouts/hierarchyLayout.js +31 -0
  93. package/ai/dist/src/components/processing/layouts/index.js +32 -0
  94. package/ai/dist/src/components/processing/layouts/sankeyLayout.js +96 -0
  95. package/ai/dist/src/components/processing/layouts/simpleLayouts.js +34 -0
  96. package/ai/dist/src/components/processing/layouts/types.js +2 -0
  97. package/ai/dist/src/components/processing/network.js +771 -0
  98. package/ai/dist/src/components/processing/networkDefaults.js +39 -0
  99. package/ai/dist/src/components/processing/networkLayoutHelpers.js +98 -0
  100. package/ai/dist/src/components/processing/ordinal.js +889 -0
  101. package/ai/dist/src/components/processing/ordinalConstants.js +23 -0
  102. package/ai/dist/src/components/processing/ordinalOverlays.js +88 -0
  103. package/ai/dist/src/components/processing/ordinalRenderPipeline.js +196 -0
  104. package/ai/dist/src/components/processing/xyDrawing.js +484 -0
  105. package/ai/dist/src/components/realtime/BinAccumulator.js +36 -0
  106. package/ai/dist/src/components/realtime/IncrementalExtent.js +55 -0
  107. package/ai/dist/src/components/realtime/RealtimeFrame.js +710 -0
  108. package/ai/dist/src/components/realtime/RingBuffer.js +104 -0
  109. package/ai/dist/src/components/realtime/renderers/barRenderer.js +133 -0
  110. package/ai/dist/src/components/realtime/renderers/candlestickRenderer.js +7 -0
  111. package/ai/dist/src/components/realtime/renderers/lineRenderer.js +164 -0
  112. package/ai/dist/src/components/realtime/renderers/swarmRenderer.js +91 -0
  113. package/ai/dist/src/components/realtime/renderers/types.js +2 -0
  114. package/ai/dist/src/components/realtime/renderers/waterfallRenderer.js +163 -0
  115. package/ai/dist/src/components/realtime/types.js +2 -0
  116. package/ai/dist/src/components/semiotic-ai.js +66 -0
  117. package/ai/dist/src/components/semiotic-network.js +30 -0
  118. package/ai/dist/src/components/semiotic-ordinal.js +28 -0
  119. package/ai/dist/src/components/semiotic-realtime.js +37 -0
  120. package/ai/dist/src/components/semiotic-server.js +8 -0
  121. package/ai/dist/src/components/semiotic-xy.js +41 -0
  122. package/ai/dist/src/components/semiotic.js +101 -0
  123. package/ai/dist/src/components/server/renderToStaticSVG.js +392 -0
  124. package/ai/dist/src/components/store/TooltipStore.js +13 -0
  125. package/ai/dist/src/components/store/createStore.js +77 -0
  126. package/ai/dist/src/components/svg/SvgHelper.js +308 -0
  127. package/ai/dist/src/components/svg/areaDrawing.js +312 -0
  128. package/ai/dist/src/components/svg/boxplotRenderer.js +441 -0
  129. package/ai/dist/src/components/svg/bucketizedRenderer.js +677 -0
  130. package/ai/dist/src/components/svg/ckbinsRenderer.js +92 -0
  131. package/ai/dist/src/components/svg/ckmeans.js +238 -0
  132. package/ai/dist/src/components/svg/contourLayout.js +73 -0
  133. package/ai/dist/src/components/svg/contourRenderer.js +53 -0
  134. package/ai/dist/src/components/svg/edgeGenerators.js +181 -0
  135. package/ai/dist/src/components/svg/frameFunctions.js +579 -0
  136. package/ai/dist/src/components/svg/graphAlgorithms.js +138 -0
  137. package/ai/dist/src/components/svg/hexbinLayout.js +163 -0
  138. package/ai/dist/src/components/svg/lineDrawing.js +427 -0
  139. package/ai/dist/src/components/svg/networkDrawing.js +207 -0
  140. package/ai/dist/src/components/svg/nodeGenerators.js +131 -0
  141. package/ai/dist/src/components/svg/pieceDrawing.js +110 -0
  142. package/ai/dist/src/components/svg/pieceLayouts.js +588 -0
  143. package/ai/dist/src/components/svg/sankeyLinks.js +143 -0
  144. package/ai/dist/src/components/svg/summaryAxis.js +48 -0
  145. package/ai/dist/src/components/svg/summaryLayouts.js +202 -0
  146. package/ai/dist/src/components/svg/swarmLayout.js +128 -0
  147. package/ai/dist/src/components/types/annotationTypes.js +2 -0
  148. package/ai/dist/src/components/types/canvasTypes.js +2 -0
  149. package/ai/dist/src/components/types/generalTypes.js +2 -0
  150. package/ai/dist/src/components/types/interactionTypes.js +2 -0
  151. package/ai/dist/src/components/types/legendTypes.js +2 -0
  152. package/ai/dist/src/components/types/networkTypes.js +2 -0
  153. package/ai/dist/src/components/types/ordinalTypes.js +2 -0
  154. package/ai/dist/src/components/types/xyTypes.js +2 -0
  155. package/ai/dist/src/components/useBoundingRect.js +24 -0
  156. package/ai/dist/src/components/useDerivedStateFromProps.js +25 -0
  157. package/ai/dist/src/components/useLegacyUnmountCallback.js +21 -0
  158. package/ai/dist/src/components/visualizationLayerBehavior/axis.js +249 -0
  159. package/ai/dist/src/components/visualizationLayerBehavior/general.js +435 -0
  160. package/ai/dist/src/setupTests.js +4 -0
  161. package/ai/examples.md +394 -0
  162. package/ai/schema.json +1178 -0
  163. package/ai/system-prompt.md +38 -0
  164. package/dist/AnnotationLayer/AnnotationLayer.d.ts +0 -1
  165. package/dist/Axis/axisTitle.d.ts +3 -3
  166. package/dist/Axis/summaryGraphic.d.ts +1 -1
  167. package/dist/FacetController.d.ts +1 -1
  168. package/dist/MinimapXYFrame.d.ts +2 -2
  169. package/dist/NetworkFrame.d.ts +5 -1
  170. package/dist/OrdinalFrame.d.ts +5 -1
  171. package/dist/ResponsiveFrame.d.ts +2 -2
  172. package/dist/ResponsiveMinimapXYFrame.d.ts +3 -6
  173. package/dist/ResponsiveNetworkFrame.d.ts +3 -6
  174. package/dist/ResponsiveOrdinalFrame.d.ts +3 -6
  175. package/dist/ResponsiveXYFrame.d.ts +3 -6
  176. package/dist/SparkFrame.d.ts +1 -1
  177. package/dist/SparkNetworkFrame.d.ts +3 -3
  178. package/dist/SparkOrdinalFrame.d.ts +3 -3
  179. package/dist/SparkXYFrame.d.ts +3 -3
  180. package/dist/Tooltip/Tooltip.d.ts +141 -0
  181. package/dist/TooltipPositioner/index.d.ts +1 -1
  182. package/dist/VisualizationLayer.d.ts +3 -3
  183. package/dist/XYFrame.d.ts +5 -1
  184. package/dist/annotationLayerBehavior/annotationHandling.d.ts +2 -2
  185. package/dist/annotationRules/networkframeRules.d.ts +2 -2
  186. package/dist/annotationRules/orframeRules.d.ts +2 -4
  187. package/dist/annotationRules/xyframeRules.d.ts +2 -2
  188. package/dist/batchWork.d.ts +1 -1
  189. package/dist/charts/index.d.ts +62 -0
  190. package/dist/charts/network/ChordDiagram.d.ts +181 -0
  191. package/dist/charts/network/CirclePack.d.ts +103 -0
  192. package/dist/charts/network/ForceDirectedGraph.d.ts +192 -0
  193. package/dist/charts/network/SankeyDiagram.d.ts +195 -0
  194. package/dist/charts/network/TreeDiagram.d.ts +200 -0
  195. package/dist/charts/network/Treemap.d.ts +98 -0
  196. package/dist/charts/ordinal/BarChart.d.ts +119 -0
  197. package/dist/charts/ordinal/BoxPlot.d.ts +125 -0
  198. package/dist/charts/ordinal/DonutChart.d.ts +95 -0
  199. package/dist/charts/ordinal/DotPlot.d.ts +128 -0
  200. package/dist/charts/ordinal/GroupedBarChart.d.ts +113 -0
  201. package/dist/charts/ordinal/PieChart.d.ts +83 -0
  202. package/dist/charts/ordinal/StackedBarChart.d.ts +119 -0
  203. package/dist/charts/ordinal/SwarmPlot.d.ts +137 -0
  204. package/dist/charts/realtime/RealtimeBarChart.d.ts +102 -0
  205. package/dist/charts/realtime/RealtimeLineChart.d.ts +78 -0
  206. package/dist/charts/realtime/RealtimeSwarmChart.d.ts +88 -0
  207. package/dist/charts/realtime/RealtimeWaterfallChart.d.ts +85 -0
  208. package/dist/charts/shared/ChartError.d.ts +19 -0
  209. package/dist/charts/shared/colorUtils.d.ts +62 -0
  210. package/dist/charts/shared/formatUtils.d.ts +82 -0
  211. package/dist/charts/shared/hooks.d.ts +20 -0
  212. package/dist/charts/shared/legendUtils.d.ts +32 -0
  213. package/dist/charts/shared/types.d.ts +58 -0
  214. package/dist/charts/shared/validateChartData.d.ts +41 -0
  215. package/dist/charts/shared/validateProps.d.ts +18 -0
  216. package/dist/charts/xy/AreaChart.d.ts +127 -0
  217. package/dist/charts/xy/BubbleChart.d.ts +157 -0
  218. package/dist/charts/xy/Heatmap.d.ts +153 -0
  219. package/dist/charts/xy/LineChart.d.ts +193 -0
  220. package/dist/charts/xy/Scatterplot.d.ts +50 -0
  221. package/dist/charts/xy/StackedAreaChart.d.ts +131 -0
  222. package/dist/constants/frame_props.d.ts +9 -0
  223. package/dist/constants/jsx.d.ts +2 -2
  224. package/dist/data/dataFunctions.d.ts +11 -12
  225. package/dist/data/networkPipelineCache.d.ts +27 -0
  226. package/dist/data/ordinalPipelineCache.d.ts +33 -0
  227. package/dist/data/xyPipelineCache.d.ts +35 -0
  228. package/dist/index.d.ts +70 -62
  229. package/dist/interactionLayerBehavior/InteractionCanvas.d.ts +1 -1
  230. package/dist/network.js +8520 -0
  231. package/dist/network.js.map +1 -0
  232. package/dist/network.min.js +1 -0
  233. package/dist/network.module.js +8484 -0
  234. package/dist/network.module.js.map +1 -0
  235. package/dist/network.module.min.js +1 -0
  236. package/dist/ordinal.js +9276 -0
  237. package/dist/ordinal.js.map +1 -0
  238. package/dist/ordinal.min.js +1 -0
  239. package/dist/ordinal.module.js +9242 -0
  240. package/dist/ordinal.module.js.map +1 -0
  241. package/dist/ordinal.module.min.js +1 -0
  242. package/dist/processing/InteractionItems.d.ts +5 -4
  243. package/dist/processing/hierarchyUtils.d.ts +16 -0
  244. package/dist/processing/layouts/chordLayout.d.ts +2 -0
  245. package/dist/processing/layouts/forceLayout.d.ts +3 -0
  246. package/dist/processing/layouts/hierarchyLayout.d.ts +10 -0
  247. package/dist/processing/layouts/index.d.ts +8 -0
  248. package/dist/processing/layouts/sankeyLayout.d.ts +8 -0
  249. package/dist/processing/layouts/simpleLayouts.d.ts +7 -0
  250. package/dist/processing/layouts/types.d.ts +17 -0
  251. package/dist/processing/network.d.ts +25 -28
  252. package/dist/processing/networkDefaults.d.ts +36 -0
  253. package/dist/processing/networkLayoutHelpers.d.ts +54 -0
  254. package/dist/processing/ordinal.d.ts +43 -43
  255. package/dist/processing/ordinalConstants.d.ts +33 -0
  256. package/dist/processing/ordinalOverlays.d.ts +33 -0
  257. package/dist/processing/ordinalRenderPipeline.d.ts +148 -0
  258. package/dist/processing/xyDrawing.d.ts +46 -41
  259. package/dist/realtime/BinAccumulator.d.ts +8 -0
  260. package/dist/realtime/IncrementalExtent.d.ts +13 -0
  261. package/dist/realtime/RealtimeFrame.d.ts +4 -0
  262. package/dist/realtime/RingBuffer.d.ts +19 -0
  263. package/dist/realtime/renderers/barRenderer.d.ts +2 -0
  264. package/dist/realtime/renderers/candlestickRenderer.d.ts +2 -0
  265. package/dist/realtime/renderers/lineRenderer.d.ts +2 -0
  266. package/dist/realtime/renderers/swarmRenderer.d.ts +2 -0
  267. package/dist/realtime/renderers/types.d.ts +9 -0
  268. package/dist/realtime/renderers/waterfallRenderer.d.ts +3 -0
  269. package/dist/realtime/types.d.ts +113 -0
  270. package/dist/realtime.js +1598 -0
  271. package/dist/realtime.js.map +1 -0
  272. package/dist/realtime.min.js +1 -0
  273. package/dist/realtime.module.js +1566 -0
  274. package/dist/realtime.module.js.map +1 -0
  275. package/dist/realtime.module.min.js +1 -0
  276. package/dist/semiotic-ai.d.ts +28 -0
  277. package/dist/semiotic-ai.js +18722 -0
  278. package/dist/semiotic-ai.js.map +1 -0
  279. package/dist/semiotic-ai.min.js +1 -0
  280. package/dist/semiotic-ai.module.js +18668 -0
  281. package/dist/semiotic-ai.module.js.map +1 -0
  282. package/dist/semiotic-ai.module.min.js +1 -0
  283. package/dist/semiotic-network.d.ts +19 -0
  284. package/dist/semiotic-ordinal.d.ts +18 -0
  285. package/dist/semiotic-realtime.d.ts +23 -0
  286. package/dist/semiotic-server.d.ts +1 -0
  287. package/dist/semiotic-xy.d.ts +24 -0
  288. package/dist/semiotic.d.ts +19 -3
  289. package/dist/semiotic.js +18707 -12983
  290. package/dist/semiotic.js.map +1 -0
  291. package/dist/semiotic.min.js +1 -0
  292. package/dist/semiotic.module.js +18651 -12953
  293. package/dist/semiotic.module.js.map +1 -0
  294. package/dist/semiotic.module.min.js +1 -0
  295. package/dist/server/renderToStaticSVG.d.ts +9 -0
  296. package/dist/server.js +8360 -0
  297. package/dist/server.js.map +1 -0
  298. package/dist/server.min.js +1 -0
  299. package/dist/server.module.js +8331 -0
  300. package/dist/server.module.js.map +1 -0
  301. package/dist/server.module.min.js +1 -0
  302. package/dist/svg/SvgHelper.d.ts +1 -5
  303. package/dist/svg/areaDrawing.d.ts +3 -13
  304. package/dist/svg/boxplotRenderer.d.ts +15 -0
  305. package/dist/svg/bucketizedRenderer.d.ts +16 -0
  306. package/dist/svg/ckbinsRenderer.d.ts +20 -0
  307. package/dist/svg/contourLayout.d.ts +6 -0
  308. package/dist/svg/contourRenderer.d.ts +12 -0
  309. package/dist/svg/edgeGenerators.d.ts +51 -0
  310. package/dist/svg/frameFunctions.d.ts +17 -28
  311. package/dist/svg/graphAlgorithms.d.ts +14 -0
  312. package/dist/svg/hexbinLayout.d.ts +7 -0
  313. package/dist/svg/lineDrawing.d.ts +8 -8
  314. package/dist/svg/networkDrawing.d.ts +5 -123
  315. package/dist/svg/nodeGenerators.d.ts +58 -0
  316. package/dist/svg/pieceDrawing.d.ts +1 -2
  317. package/dist/svg/pieceLayouts.d.ts +5 -23
  318. package/dist/svg/sankeyLinks.d.ts +3 -0
  319. package/dist/svg/summaryAxis.d.ts +6 -0
  320. package/dist/svg/summaryLayouts.d.ts +36 -57
  321. package/dist/svg/swarmLayout.d.ts +13 -0
  322. package/dist/types/annotationTypes.d.ts +13 -18
  323. package/dist/types/canvasTypes.d.ts +1 -1
  324. package/dist/types/generalTypes.d.ts +37 -35
  325. package/dist/types/interactionTypes.d.ts +7 -9
  326. package/dist/types/legendTypes.d.ts +2 -2
  327. package/dist/types/networkTypes.d.ts +40 -30
  328. package/dist/types/ordinalTypes.d.ts +27 -18
  329. package/dist/types/xyTypes.d.ts +13 -16
  330. package/dist/useLegacyUnmountCallback.d.ts +2 -1
  331. package/dist/visualizationLayerBehavior/axis.d.ts +3 -5
  332. package/dist/visualizationLayerBehavior/general.d.ts +8 -12
  333. package/dist/xy.js +7944 -0
  334. package/dist/xy.js.map +1 -0
  335. package/dist/xy.min.js +1 -0
  336. package/dist/xy.module.js +7903 -0
  337. package/dist/xy.module.js.map +1 -0
  338. package/dist/xy.module.min.js +1 -0
  339. package/package.json +116 -66
  340. package/dist/AnnotationLayer/helpers.d.ts +0 -6
  341. package/dist/AnnotationLayer/index.d.ts +0 -2
  342. package/dist/Mark/Mark.d.ts +0 -3
  343. package/dist/Mark/Mark.types.d.ts +0 -10
  344. package/dist/Mark/constants/markTransition.d.ts +0 -10
  345. package/dist/Mark/markBehavior/drawing.d.ts +0 -13
  346. package/dist/SpanOrDiv.d.ts +0 -10
  347. package/dist/components/Annotation.d.ts +0 -3
  348. package/dist/components/AnnotationLayer/AnnotationLayer.d.ts +0 -26
  349. package/dist/components/Axis/Axis.d.ts +0 -7
  350. package/dist/components/Axis/axisTitle.d.ts +0 -10
  351. package/dist/components/Axis/index.d.ts +0 -2
  352. package/dist/components/Axis/summaryGraphic.d.ts +0 -17
  353. package/dist/components/Brush.d.ts +0 -12
  354. package/dist/components/DividedLine.d.ts +0 -16
  355. package/dist/components/FacetController.d.ts +0 -12
  356. package/dist/components/Frame.d.ts +0 -2
  357. package/dist/components/InteractionLayer.d.ts +0 -3
  358. package/dist/components/Legend.d.ts +0 -3
  359. package/dist/components/Mark/Mark.d.ts +0 -3
  360. package/dist/components/Mark/Mark.types.d.ts +0 -10
  361. package/dist/components/Mark/markBehavior/drawing.d.ts +0 -13
  362. package/dist/components/MiniMap.d.ts +0 -14
  363. package/dist/components/MinimapXYFrame.d.ts +0 -10
  364. package/dist/components/NetworkFrame.d.ts +0 -4
  365. package/dist/components/OrdinalFrame.d.ts +0 -4
  366. package/dist/components/ResponsiveFrame.d.ts +0 -22
  367. package/dist/components/ResponsiveMinimapXYFrame.d.ts +0 -6
  368. package/dist/components/ResponsiveNetworkFrame.d.ts +0 -6
  369. package/dist/components/ResponsiveOrdinalFrame.d.ts +0 -6
  370. package/dist/components/ResponsiveXYFrame.d.ts +0 -6
  371. package/dist/components/SpanOrDiv.d.ts +0 -10
  372. package/dist/components/SparkFrame.d.ts +0 -14
  373. package/dist/components/SparkNetworkFrame.d.ts +0 -5
  374. package/dist/components/SparkOrdinalFrame.d.ts +0 -5
  375. package/dist/components/SparkXYFrame.d.ts +0 -5
  376. package/dist/components/TooltipPositioner/index.d.ts +0 -7
  377. package/dist/components/VisualizationLayer.d.ts +0 -33
  378. package/dist/components/XYFrame.d.ts +0 -4
  379. package/dist/components/annotationLayerBehavior/annotationHandling.d.ts +0 -19
  380. package/dist/components/annotationLayerBehavior/d3labeler.d.ts +0 -9
  381. package/dist/components/annotationRules/baseRules.d.ts +0 -25
  382. package/dist/components/annotationRules/networkframeRules.d.ts +0 -48
  383. package/dist/components/annotationRules/orframeRules.d.ts +0 -105
  384. package/dist/components/annotationRules/xyframeRules.d.ts +0 -117
  385. package/dist/components/batchWork.d.ts +0 -6
  386. package/dist/components/constants/coordinateNames.d.ts +0 -8
  387. package/dist/components/constants/frame_props.d.ts +0 -4
  388. package/dist/components/constants/jsx.d.ts +0 -19
  389. package/dist/components/data/dataFunctions.d.ts +0 -46
  390. package/dist/components/data/multiAccessorUtils.d.ts +0 -1
  391. package/dist/components/data/unflowedFunctions.d.ts +0 -1
  392. package/dist/components/generic_utilities/functions.d.ts +0 -1
  393. package/dist/components/index.d.ts +0 -125
  394. package/dist/components/interactionLayerBehavior/InteractionCanvas.d.ts +0 -20
  395. package/dist/components/processing/InteractionItems.d.ts +0 -12
  396. package/dist/components/processing/network.d.ts +0 -114
  397. package/dist/components/processing/ordinal.d.ts +0 -102
  398. package/dist/components/processing/xyDrawing.d.ts +0 -135
  399. package/dist/components/semiotic.d.ts +0 -35
  400. package/dist/components/store/TooltipStore.d.ts +0 -2
  401. package/dist/components/store/createStore.d.ts +0 -1
  402. package/dist/components/svg/SvgHelper.d.ts +0 -37
  403. package/dist/components/svg/areaDrawing.d.ts +0 -31
  404. package/dist/components/svg/ckmeans.d.ts +0 -69
  405. package/dist/components/svg/frameFunctions.d.ts +0 -119
  406. package/dist/components/svg/lineDrawing.d.ts +0 -99
  407. package/dist/components/svg/networkDrawing.d.ts +0 -134
  408. package/dist/components/svg/pieceDrawing.d.ts +0 -13
  409. package/dist/components/svg/pieceLayouts.d.ts +0 -71
  410. package/dist/components/svg/summaryLayouts.d.ts +0 -74
  411. package/dist/components/types/annotationTypes.d.ts +0 -140
  412. package/dist/components/types/canvasTypes.d.ts +0 -9
  413. package/dist/components/types/generalTypes.d.ts +0 -236
  414. package/dist/components/types/interactionTypes.d.ts +0 -74
  415. package/dist/components/types/legendTypes.d.ts +0 -20
  416. package/dist/components/types/networkTypes.d.ts +0 -165
  417. package/dist/components/types/ordinalTypes.d.ts +0 -103
  418. package/dist/components/types/xyTypes.d.ts +0 -118
  419. package/dist/components/useBoundingRect.d.ts +0 -2
  420. package/dist/components/useDerivedStateFromProps.d.ts +0 -1
  421. package/dist/components/useLegacyUnmountCallback.d.ts +0 -1
  422. package/dist/components/visualizationLayerBehavior/axis.d.ts +0 -38
  423. package/dist/components/visualizationLayerBehavior/general.d.ts +0 -84
  424. package/dist/setupTests.d.ts +0 -1
@@ -0,0 +1,127 @@
1
+ import * as React from "react";
2
+ import type { XYFrameProps } from "../../types/xyTypes";
3
+ import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * AreaChart component props
7
+ */
8
+ export interface AreaChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
9
+ /**
10
+ * Array of data points, grouped by category.
11
+ * @example
12
+ * ```ts
13
+ * // Multiple areas with grouping
14
+ * [{x: 1, y: 10, category: 'A'}, {x: 2, y: 20, category: 'A'}, {x: 1, y: 15, category: 'B'}]
15
+ * ```
16
+ */
17
+ data: TDatum[];
18
+ /**
19
+ * Field name or function to access x values
20
+ * @default "x"
21
+ */
22
+ xAccessor?: ChartAccessor<TDatum, number>;
23
+ /**
24
+ * Field name or function to access y values
25
+ * @default "y"
26
+ */
27
+ yAccessor?: ChartAccessor<TDatum, number>;
28
+ /**
29
+ * Field name or function to group data into multiple areas
30
+ * @example
31
+ * ```ts
32
+ * areaBy="category" // Group by category field
33
+ * areaBy={d => d.group} // Use function
34
+ * ```
35
+ */
36
+ areaBy?: ChartAccessor<TDatum, string>;
37
+ /**
38
+ * Field name in area objects that contains coordinate arrays
39
+ * Used when data is in area objects format
40
+ * @default "coordinates"
41
+ */
42
+ lineDataAccessor?: string;
43
+ /**
44
+ * Field name or function to determine area color
45
+ * @example
46
+ * ```ts
47
+ * colorBy="category"
48
+ * colorBy={d => d.label}
49
+ * ```
50
+ */
51
+ colorBy?: ChartAccessor<TDatum, string>;
52
+ /**
53
+ * Color scheme for categorical data or custom colors array
54
+ * @default "category10"
55
+ */
56
+ colorScheme?: string | string[];
57
+ /**
58
+ * Curve interpolation type
59
+ * @default "monotoneX"
60
+ */
61
+ curve?: "linear" | "monotoneX" | "monotoneY" | "step" | "stepAfter" | "stepBefore" | "basis" | "cardinal" | "catmullRom";
62
+ /**
63
+ * Area opacity
64
+ * @default 0.7
65
+ */
66
+ areaOpacity?: number;
67
+ /**
68
+ * Show line on top of area
69
+ * @default true
70
+ */
71
+ showLine?: boolean;
72
+ /**
73
+ * Line stroke width when showLine is true
74
+ * @default 2
75
+ */
76
+ lineWidth?: number;
77
+ /**
78
+ * Enable hover annotations
79
+ * @default true
80
+ */
81
+ enableHover?: boolean;
82
+ /**
83
+ * Show grid lines
84
+ * @default false
85
+ */
86
+ showGrid?: boolean;
87
+ /**
88
+ * Show legend for multiple areas
89
+ * @default true (when multiple areas)
90
+ */
91
+ showLegend?: boolean;
92
+ /**
93
+ * Tooltip configuration
94
+ */
95
+ tooltip?: TooltipProp;
96
+ /**
97
+ * Additional XYFrame props for advanced customization
98
+ * For full control, consider using XYFrame directly
99
+ * @see https://semiotic.nteract.io/guides/xy-frame
100
+ */
101
+ frameProps?: Partial<Omit<XYFrameProps, "lines" | "size">>;
102
+ }
103
+ /**
104
+ * AreaChart - Visualize quantities over continuous intervals with overlapping filled areas
105
+ *
106
+ * Each series fills from its line down to the baseline. Multiple series overlap
107
+ * with transparency so all shapes remain visible.
108
+ *
109
+ * For stacked areas use {@link StackedAreaChart}.
110
+ *
111
+ * @example
112
+ * ```tsx
113
+ * <AreaChart
114
+ * data={[
115
+ * {x: 1, y: 10, category: 'A'},
116
+ * {x: 2, y: 20, category: 'A'},
117
+ * {x: 1, y: 15, category: 'B'},
118
+ * {x: 2, y: 25, category: 'B'}
119
+ * ]}
120
+ * areaBy="category"
121
+ * colorBy="category"
122
+ * xLabel="Time"
123
+ * yLabel="Value"
124
+ * />
125
+ * ```
126
+ */
127
+ export declare function AreaChart<TDatum extends Record<string, any> = Record<string, any>>(props: AreaChartProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,157 @@
1
+ import * as React from "react";
2
+ import type { XYFrameProps } from "../../types/xyTypes";
3
+ import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * BubbleChart component props
7
+ */
8
+ export interface BubbleChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
9
+ /**
10
+ * Array of data points. Each point should have x, y, and size properties.
11
+ * @example
12
+ * ```ts
13
+ * [{x: 1, y: 10, size: 50, category: 'A'}, {x: 2, y: 20, size: 30, category: 'B'}]
14
+ * ```
15
+ */
16
+ data: TDatum[];
17
+ /**
18
+ * Field name or function to access x values
19
+ * @default "x"
20
+ */
21
+ xAccessor?: ChartAccessor<TDatum, number>;
22
+ /**
23
+ * Field name or function to access y values
24
+ * @default "y"
25
+ */
26
+ yAccessor?: ChartAccessor<TDatum, number>;
27
+ /**
28
+ * Field name or function to determine bubble size (required)
29
+ * @example
30
+ * ```ts
31
+ * sizeBy="population"
32
+ * sizeBy={d => Math.sqrt(d.value)}
33
+ * ```
34
+ */
35
+ sizeBy: ChartAccessor<TDatum, number>;
36
+ /**
37
+ * Min and max radius for bubbles
38
+ * @default [5, 40]
39
+ */
40
+ sizeRange?: [number, number];
41
+ /**
42
+ * Field name or function to determine bubble color
43
+ * @example
44
+ * ```ts
45
+ * colorBy="category"
46
+ * colorBy={d => d.value > 10 ? 'red' : 'blue'}
47
+ * ```
48
+ */
49
+ colorBy?: ChartAccessor<TDatum, string>;
50
+ /**
51
+ * Color scheme for categorical data or custom colors array
52
+ * @default "category10"
53
+ */
54
+ colorScheme?: string | string[];
55
+ /**
56
+ * Bubble opacity
57
+ * @default 0.6
58
+ */
59
+ bubbleOpacity?: number;
60
+ /**
61
+ * Bubble stroke width
62
+ * @default 1
63
+ */
64
+ bubbleStrokeWidth?: number;
65
+ /**
66
+ * Bubble stroke color
67
+ * @default "white"
68
+ */
69
+ bubbleStrokeColor?: string;
70
+ /**
71
+ * Enable hover annotations
72
+ * @default true
73
+ */
74
+ enableHover?: boolean;
75
+ /**
76
+ * Show grid lines
77
+ * @default false
78
+ */
79
+ showGrid?: boolean;
80
+ /**
81
+ * Show legend
82
+ * @default true (when colorBy is specified)
83
+ */
84
+ showLegend?: boolean;
85
+ /**
86
+ * Tooltip configuration
87
+ */
88
+ tooltip?: TooltipProp;
89
+ /**
90
+ * Additional XYFrame props for advanced customization
91
+ * For full control, consider using XYFrame directly
92
+ * @see https://semiotic.nteract.io/guides/xy-frame
93
+ */
94
+ frameProps?: Partial<Omit<XYFrameProps, "points" | "size">>;
95
+ }
96
+ /**
97
+ * BubbleChart - Visualize three dimensions of data using x, y, and size
98
+ *
99
+ * A simplified wrapper around XYFrame for creating bubble charts. Perfect for
100
+ * showing relationships between three continuous variables or comparing
101
+ * magnitudes across categories.
102
+ *
103
+ * @example
104
+ * ```tsx
105
+ * // Simple bubble chart
106
+ * <BubbleChart
107
+ * data={[
108
+ * {x: 1, y: 10, size: 50, name: 'A'},
109
+ * {x: 2, y: 20, size: 30, name: 'B'},
110
+ * {x: 3, y: 15, size: 70, name: 'C'}
111
+ * ]}
112
+ * sizeBy="size"
113
+ * xLabel="Time"
114
+ * yLabel="Value"
115
+ * />
116
+ * ```
117
+ *
118
+ * @example
119
+ * ```tsx
120
+ * // With color encoding
121
+ * <BubbleChart
122
+ * data={data}
123
+ * sizeBy="population"
124
+ * colorBy="continent"
125
+ * sizeRange={[5, 50]}
126
+ * bubbleOpacity={0.7}
127
+ * xLabel="GDP per Capita"
128
+ * yLabel="Life Expectancy"
129
+ * />
130
+ * ```
131
+ *
132
+ * @example
133
+ * ```tsx
134
+ * // Advanced: Override XYFrame props
135
+ * <BubbleChart
136
+ * data={data}
137
+ * sizeBy="value"
138
+ * frameProps={{
139
+ * customPointMark: ({ d }) => <circle r={d.r} fill="gold" />
140
+ * }}
141
+ * />
142
+ * ```
143
+ *
144
+ * @remarks
145
+ * This component wraps {@link XYFrame} with sensible defaults for bubble charts.
146
+ * For more advanced features like custom marks, annotations, or complex interactions,
147
+ * use XYFrame directly.
148
+ *
149
+ * **Breadcrumb to advanced usage:**
150
+ * - Use the `frameProps` prop to pass any XYFrame prop
151
+ * - See XYFrame documentation: https://semiotic.nteract.io/guides/xy-frame
152
+ * - All XYFrame props are available via `frameProps`
153
+ *
154
+ * @param props - BubbleChart configuration
155
+ * @returns Rendered bubble chart
156
+ */
157
+ export declare function BubbleChart<TDatum extends Record<string, any> = Record<string, any>>(props: BubbleChartProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,153 @@
1
+ import * as React from "react";
2
+ import type { XYFrameProps } from "../../types/xyTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * Heatmap component props
7
+ */
8
+ export interface HeatmapProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points with x, y, and value properties.
11
+ * @example
12
+ * ```ts
13
+ * [{x: 1, y: 1, value: 10}, {x: 1, y: 2, value: 20}, {x: 2, y: 1, value: 15}]
14
+ * ```
15
+ */
16
+ data: TDatum[];
17
+ /**
18
+ * Field name or function to access x values
19
+ * @default "x"
20
+ */
21
+ xAccessor?: ChartAccessor<TDatum, number>;
22
+ /**
23
+ * Field name or function to access y values
24
+ * @default "y"
25
+ */
26
+ yAccessor?: ChartAccessor<TDatum, number>;
27
+ /**
28
+ * Field name or function to access cell values
29
+ * @default "value"
30
+ */
31
+ valueAccessor?: ChartAccessor<TDatum, number>;
32
+ /**
33
+ * Label for the x-axis
34
+ */
35
+ xLabel?: string;
36
+ /**
37
+ * Label for the y-axis
38
+ */
39
+ yLabel?: string;
40
+ /**
41
+ * Format function for x-axis tick labels
42
+ */
43
+ xFormat?: (d: any) => string;
44
+ /**
45
+ * Format function for y-axis tick labels
46
+ */
47
+ yFormat?: (d: any) => string;
48
+ /**
49
+ * Color scheme for the heatmap
50
+ * @default "blues"
51
+ */
52
+ colorScheme?: "blues" | "reds" | "greens" | "viridis" | "custom";
53
+ /**
54
+ * Custom color scale (used when colorScheme is "custom")
55
+ * @example
56
+ * ```ts
57
+ * customColorScale={scaleSequential(interpolatePlasma).domain([0, 100])}
58
+ * ```
59
+ */
60
+ customColorScale?: any;
61
+ /**
62
+ * Show values in cells
63
+ * @default false
64
+ */
65
+ showValues?: boolean;
66
+ /**
67
+ * Format function for cell value labels
68
+ */
69
+ valueFormat?: (d: number) => string;
70
+ /**
71
+ * Cell border color
72
+ * @default "#fff"
73
+ */
74
+ cellBorderColor?: string;
75
+ /**
76
+ * Cell border width
77
+ * @default 1
78
+ */
79
+ cellBorderWidth?: number;
80
+ /**
81
+ * Enable hover annotations
82
+ * @default true
83
+ */
84
+ enableHover?: boolean;
85
+ /**
86
+ * Tooltip configuration
87
+ */
88
+ tooltip?: TooltipProp;
89
+ /**
90
+ * Additional XYFrame props for advanced customization
91
+ * For full control, consider using XYFrame directly
92
+ * @see https://semiotic.nteract.io/guides/xy-frame
93
+ */
94
+ frameProps?: Partial<Omit<XYFrameProps, "summaries" | "size">>;
95
+ }
96
+ /**
97
+ * Heatmap - Visualize matrix data with color-encoded cells
98
+ *
99
+ * A simplified wrapper around XYFrame for creating heatmaps. Perfect for
100
+ * showing patterns, correlations, and distributions in 2D data.
101
+ *
102
+ * @example
103
+ * ```tsx
104
+ * // Simple heatmap
105
+ * <Heatmap
106
+ * data={[
107
+ * {x: 1, y: 1, value: 10},
108
+ * {x: 1, y: 2, value: 20},
109
+ * {x: 2, y: 1, value: 15},
110
+ * {x: 2, y: 2, value: 25}
111
+ * ]}
112
+ * xLabel="Time"
113
+ * yLabel="Category"
114
+ * />
115
+ * ```
116
+ *
117
+ * @example
118
+ * ```tsx
119
+ * // With custom color scheme and value labels
120
+ * <Heatmap
121
+ * data={data}
122
+ * colorScheme="viridis"
123
+ * showValues={true}
124
+ * valueFormat={d => d.toFixed(1)}
125
+ * />
126
+ * ```
127
+ *
128
+ * @example
129
+ * ```tsx
130
+ * // Advanced: Custom color scale
131
+ * <Heatmap
132
+ * data={data}
133
+ * colorScheme="custom"
134
+ * customColorScale={
135
+ * scaleSequential(interpolatePlasma).domain([0, 100])
136
+ * }
137
+ * />
138
+ * ```
139
+ *
140
+ * @remarks
141
+ * This component wraps {@link XYFrame} with sensible defaults for heatmaps.
142
+ * For more advanced features like hexbins, contours, or custom summaries,
143
+ * use XYFrame directly.
144
+ *
145
+ * **Breadcrumb to advanced usage:**
146
+ * - Use the `frameProps` prop to pass any XYFrame prop
147
+ * - See XYFrame documentation: https://semiotic.nteract.io/guides/xy-frame
148
+ * - All XYFrame props are available via `frameProps`
149
+ *
150
+ * @param props - Heatmap configuration
151
+ * @returns Rendered heatmap
152
+ */
153
+ export declare function Heatmap<TDatum extends Record<string, any> = Record<string, any>>(props: HeatmapProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,193 @@
1
+ import * as React from "react";
2
+ import type { XYFrameProps } from "../../types/xyTypes";
3
+ import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * LineChart component props
7
+ */
8
+ export interface LineChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
9
+ /**
10
+ * Array of data points or array of line objects with coordinates.
11
+ * @example
12
+ * ```ts
13
+ * // Simple format (single line)
14
+ * [{x: 1, y: 10}, {x: 2, y: 20}]
15
+ *
16
+ * // Multiple lines with grouping
17
+ * [{x: 1, y: 10, series: 'A'}, {x: 2, y: 20, series: 'A'}, {x: 1, y: 15, series: 'B'}]
18
+ *
19
+ * // Line objects format
20
+ * [{label: 'Series A', coordinates: [{x: 1, y: 10}, {x: 2, y: 20}]}]
21
+ * ```
22
+ */
23
+ data: TDatum[];
24
+ /**
25
+ * Field name or function to access x values
26
+ * @default "x"
27
+ */
28
+ xAccessor?: ChartAccessor<TDatum, number>;
29
+ /**
30
+ * Field name or function to access y values
31
+ * @default "y"
32
+ */
33
+ yAccessor?: ChartAccessor<TDatum, number>;
34
+ /**
35
+ * Field name or function to group data into multiple lines
36
+ * @example
37
+ * ```ts
38
+ * lineBy="series" // Group by series field
39
+ * lineBy={d => d.category} // Use function
40
+ * ```
41
+ */
42
+ lineBy?: ChartAccessor<TDatum, string>;
43
+ /**
44
+ * Field name in line objects that contains coordinate arrays
45
+ * Used when data is in line objects format
46
+ * @default "coordinates"
47
+ */
48
+ lineDataAccessor?: string;
49
+ /**
50
+ * Field name or function to determine line color
51
+ * @example
52
+ * ```ts
53
+ * colorBy="series"
54
+ * colorBy={d => d.label}
55
+ * ```
56
+ */
57
+ colorBy?: ChartAccessor<TDatum, string>;
58
+ /**
59
+ * Color scheme for categorical data or custom colors array
60
+ * @default "category10"
61
+ */
62
+ colorScheme?: string | string[];
63
+ /**
64
+ * Curve interpolation type
65
+ * @default "linear"
66
+ */
67
+ curve?: "linear" | "monotoneX" | "monotoneY" | "step" | "stepAfter" | "stepBefore" | "basis" | "cardinal" | "catmullRom";
68
+ /**
69
+ * Show points on the line
70
+ * @default false
71
+ */
72
+ showPoints?: boolean;
73
+ /**
74
+ * Point radius when showPoints is true
75
+ * @default 3
76
+ */
77
+ pointRadius?: number;
78
+ /**
79
+ * Fill area under the line
80
+ * @default false
81
+ */
82
+ fillArea?: boolean;
83
+ /**
84
+ * Area opacity when fillArea is true
85
+ * @default 0.3
86
+ */
87
+ areaOpacity?: number;
88
+ /**
89
+ * Line stroke width
90
+ * @default 2
91
+ */
92
+ lineWidth?: number;
93
+ /**
94
+ * Enable hover annotations
95
+ * @default true
96
+ */
97
+ enableHover?: boolean;
98
+ /**
99
+ * Show grid lines
100
+ * @default false
101
+ */
102
+ showGrid?: boolean;
103
+ /**
104
+ * Show legend for multiple lines
105
+ * @default true (when multiple lines)
106
+ */
107
+ showLegend?: boolean;
108
+ /**
109
+ * Tooltip configuration
110
+ */
111
+ tooltip?: TooltipProp;
112
+ /**
113
+ * Additional XYFrame props for advanced customization
114
+ * For full control, consider using XYFrame directly
115
+ * @see https://semiotic.nteract.io/guides/xy-frame
116
+ */
117
+ frameProps?: Partial<Omit<XYFrameProps, "lines" | "size">>;
118
+ }
119
+ /**
120
+ * LineChart - Visualize trends and time series data with lines
121
+ *
122
+ * A simplified wrapper around XYFrame for creating line charts. Perfect for
123
+ * showing trends, comparisons, and temporal patterns in your data.
124
+ *
125
+ * @example
126
+ * ```tsx
127
+ * // Simple line chart
128
+ * <LineChart
129
+ * data={[
130
+ * {x: 1, y: 10},
131
+ * {x: 2, y: 20},
132
+ * {x: 3, y: 15}
133
+ * ]}
134
+ * xLabel="Time"
135
+ * yLabel="Value"
136
+ * />
137
+ * ```
138
+ *
139
+ * @example
140
+ * ```tsx
141
+ * // Multiple lines with grouping
142
+ * <LineChart
143
+ * data={[
144
+ * {x: 1, y: 10, series: 'A'},
145
+ * {x: 2, y: 20, series: 'A'},
146
+ * {x: 1, y: 15, series: 'B'},
147
+ * {x: 2, y: 25, series: 'B'}
148
+ * ]}
149
+ * lineBy="series"
150
+ * colorBy="series"
151
+ * xLabel="Time"
152
+ * yLabel="Value"
153
+ * />
154
+ * ```
155
+ *
156
+ * @example
157
+ * ```tsx
158
+ * // Area chart with custom curve
159
+ * <LineChart
160
+ * data={data}
161
+ * curve="monotoneX"
162
+ * fillArea={true}
163
+ * areaOpacity={0.3}
164
+ * showPoints={true}
165
+ * />
166
+ * ```
167
+ *
168
+ * @example
169
+ * ```tsx
170
+ * // Advanced: Override XYFrame props
171
+ * <LineChart
172
+ * data={data}
173
+ * frameProps={{
174
+ * lineType: { type: "line", interpolator: d3.curveCardinal },
175
+ * customLineMark: ({ d }) => <path stroke="red" />
176
+ * }}
177
+ * />
178
+ * ```
179
+ *
180
+ * @remarks
181
+ * This component wraps {@link XYFrame} with sensible defaults for line charts.
182
+ * For more advanced features like custom marks, annotations, or complex interactions,
183
+ * use XYFrame directly.
184
+ *
185
+ * **Breadcrumb to advanced usage:**
186
+ * - Use the `frameProps` prop to pass any XYFrame prop
187
+ * - See XYFrame documentation: https://semiotic.nteract.io/guides/xy-frame
188
+ * - All XYFrame props are available via `frameProps`
189
+ *
190
+ * @param props - LineChart configuration
191
+ * @returns Rendered line chart
192
+ */
193
+ export declare function LineChart<TDatum extends Record<string, any> = Record<string, any>>(props: LineChartProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,50 @@
1
+ import * as React from "react";
2
+ import type { XYFrameProps } from "../../types/xyTypes";
3
+ import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * Scatterplot component props
7
+ */
8
+ export interface ScatterplotProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
9
+ /** Array of data points. Each point should have x and y properties. */
10
+ data: TDatum[];
11
+ /** Field name or function to access x values @default "x" */
12
+ xAccessor?: ChartAccessor<TDatum, number>;
13
+ /** Field name or function to access y values @default "y" */
14
+ yAccessor?: ChartAccessor<TDatum, number>;
15
+ /** Field name or function to determine point color */
16
+ colorBy?: ChartAccessor<TDatum, string>;
17
+ /** Color scheme for categorical data or custom colors array @default "category10" */
18
+ colorScheme?: string | string[];
19
+ /** Field name or function to determine point size */
20
+ sizeBy?: ChartAccessor<TDatum, number>;
21
+ /** Min and max radius for points @default [3, 15] */
22
+ sizeRange?: [number, number];
23
+ /** Default point radius when sizeBy is not specified @default 5 */
24
+ pointRadius?: number;
25
+ /** Point opacity @default 0.8 */
26
+ pointOpacity?: number;
27
+ /** Enable hover annotations @default true */
28
+ enableHover?: boolean;
29
+ /** Show grid lines @default false */
30
+ showGrid?: boolean;
31
+ /** Show legend @default true (when colorBy is specified) */
32
+ showLegend?: boolean;
33
+ /** Tooltip configuration */
34
+ tooltip?: TooltipProp;
35
+ /** Additional XYFrame props for advanced customization */
36
+ frameProps?: Partial<Omit<XYFrameProps, "points" | "size">>;
37
+ }
38
+ /**
39
+ * Scatterplot - Visualize relationships between two continuous variables
40
+ *
41
+ * @example
42
+ * ```tsx
43
+ * <Scatterplot
44
+ * data={[{x: 1, y: 10}, {x: 2, y: 20}]}
45
+ * xLabel="Time"
46
+ * yLabel="Value"
47
+ * />
48
+ * ```
49
+ */
50
+ export declare function Scatterplot<TDatum extends Record<string, any> = Record<string, any>>(props: ScatterplotProps<TDatum>): React.JSX.Element;