semiotic 2.0.2 → 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 (359) 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/Annotation.d.ts +3 -0
  165. package/dist/AnnotationLayer/AnnotationLayer.d.ts +25 -0
  166. package/dist/Axis/Axis.d.ts +7 -0
  167. package/dist/Axis/axisTitle.d.ts +10 -0
  168. package/dist/Axis/index.d.ts +2 -0
  169. package/dist/Axis/summaryGraphic.d.ts +17 -0
  170. package/dist/Brush.d.ts +12 -0
  171. package/dist/DividedLine.d.ts +16 -0
  172. package/dist/FacetController.d.ts +12 -0
  173. package/dist/Frame.d.ts +2 -0
  174. package/dist/InteractionLayer.d.ts +3 -0
  175. package/dist/Legend.d.ts +3 -0
  176. package/dist/MiniMap.d.ts +14 -0
  177. package/dist/MinimapXYFrame.d.ts +10 -0
  178. package/dist/NetworkFrame.d.ts +8 -0
  179. package/dist/OrdinalFrame.d.ts +8 -0
  180. package/dist/ResponsiveFrame.d.ts +22 -0
  181. package/dist/ResponsiveMinimapXYFrame.d.ts +3 -0
  182. package/dist/ResponsiveNetworkFrame.d.ts +3 -0
  183. package/dist/ResponsiveOrdinalFrame.d.ts +3 -0
  184. package/dist/ResponsiveXYFrame.d.ts +3 -0
  185. package/dist/SparkFrame.d.ts +14 -0
  186. package/dist/SparkNetworkFrame.d.ts +5 -0
  187. package/dist/SparkOrdinalFrame.d.ts +5 -0
  188. package/dist/SparkXYFrame.d.ts +5 -0
  189. package/dist/Tooltip/Tooltip.d.ts +141 -0
  190. package/dist/TooltipPositioner/index.d.ts +7 -0
  191. package/dist/VisualizationLayer.d.ts +33 -0
  192. package/dist/XYFrame.d.ts +8 -0
  193. package/dist/annotationLayerBehavior/annotationHandling.d.ts +19 -0
  194. package/dist/annotationLayerBehavior/d3labeler.d.ts +9 -0
  195. package/dist/annotationRules/baseRules.d.ts +25 -0
  196. package/dist/annotationRules/networkframeRules.d.ts +48 -0
  197. package/dist/annotationRules/orframeRules.d.ts +103 -0
  198. package/dist/annotationRules/xyframeRules.d.ts +117 -0
  199. package/dist/batchWork.d.ts +6 -0
  200. package/dist/charts/index.d.ts +62 -0
  201. package/dist/charts/network/ChordDiagram.d.ts +181 -0
  202. package/dist/charts/network/CirclePack.d.ts +103 -0
  203. package/dist/charts/network/ForceDirectedGraph.d.ts +192 -0
  204. package/dist/charts/network/SankeyDiagram.d.ts +195 -0
  205. package/dist/charts/network/TreeDiagram.d.ts +200 -0
  206. package/dist/charts/network/Treemap.d.ts +98 -0
  207. package/dist/charts/ordinal/BarChart.d.ts +119 -0
  208. package/dist/charts/ordinal/BoxPlot.d.ts +125 -0
  209. package/dist/charts/ordinal/DonutChart.d.ts +95 -0
  210. package/dist/charts/ordinal/DotPlot.d.ts +128 -0
  211. package/dist/charts/ordinal/GroupedBarChart.d.ts +113 -0
  212. package/dist/charts/ordinal/PieChart.d.ts +83 -0
  213. package/dist/charts/ordinal/StackedBarChart.d.ts +119 -0
  214. package/dist/charts/ordinal/SwarmPlot.d.ts +137 -0
  215. package/dist/charts/realtime/RealtimeBarChart.d.ts +102 -0
  216. package/dist/charts/realtime/RealtimeLineChart.d.ts +78 -0
  217. package/dist/charts/realtime/RealtimeSwarmChart.d.ts +88 -0
  218. package/dist/charts/realtime/RealtimeWaterfallChart.d.ts +85 -0
  219. package/dist/charts/shared/ChartError.d.ts +19 -0
  220. package/dist/charts/shared/colorUtils.d.ts +62 -0
  221. package/dist/charts/shared/formatUtils.d.ts +82 -0
  222. package/dist/charts/shared/hooks.d.ts +20 -0
  223. package/dist/charts/shared/legendUtils.d.ts +32 -0
  224. package/dist/charts/shared/types.d.ts +58 -0
  225. package/dist/charts/shared/validateChartData.d.ts +41 -0
  226. package/dist/charts/shared/validateProps.d.ts +18 -0
  227. package/dist/charts/xy/AreaChart.d.ts +127 -0
  228. package/dist/charts/xy/BubbleChart.d.ts +157 -0
  229. package/dist/charts/xy/Heatmap.d.ts +153 -0
  230. package/dist/charts/xy/LineChart.d.ts +193 -0
  231. package/dist/charts/xy/Scatterplot.d.ts +50 -0
  232. package/dist/charts/xy/StackedAreaChart.d.ts +131 -0
  233. package/dist/constants/coordinateNames.d.ts +8 -0
  234. package/dist/constants/frame_props.d.ts +13 -0
  235. package/dist/constants/jsx.d.ts +19 -0
  236. package/dist/data/dataFunctions.d.ts +45 -0
  237. package/dist/data/multiAccessorUtils.d.ts +1 -0
  238. package/dist/data/networkPipelineCache.d.ts +27 -0
  239. package/dist/data/ordinalPipelineCache.d.ts +33 -0
  240. package/dist/data/unflowedFunctions.d.ts +1 -0
  241. package/dist/data/xyPipelineCache.d.ts +35 -0
  242. package/dist/generic_utilities/functions.d.ts +1 -0
  243. package/dist/index.d.ts +133 -0
  244. package/dist/interactionLayerBehavior/InteractionCanvas.d.ts +20 -0
  245. package/dist/network.js +8520 -0
  246. package/dist/network.js.map +1 -0
  247. package/dist/network.min.js +1 -0
  248. package/dist/network.module.js +8484 -0
  249. package/dist/network.module.js.map +1 -0
  250. package/dist/network.module.min.js +1 -0
  251. package/dist/ordinal.js +9276 -0
  252. package/dist/ordinal.js.map +1 -0
  253. package/dist/ordinal.min.js +1 -0
  254. package/dist/ordinal.module.js +9242 -0
  255. package/dist/ordinal.module.js.map +1 -0
  256. package/dist/ordinal.module.min.js +1 -0
  257. package/dist/processing/InteractionItems.d.ts +13 -0
  258. package/dist/processing/hierarchyUtils.d.ts +16 -0
  259. package/dist/processing/layouts/chordLayout.d.ts +2 -0
  260. package/dist/processing/layouts/forceLayout.d.ts +3 -0
  261. package/dist/processing/layouts/hierarchyLayout.d.ts +10 -0
  262. package/dist/processing/layouts/index.d.ts +8 -0
  263. package/dist/processing/layouts/sankeyLayout.d.ts +8 -0
  264. package/dist/processing/layouts/simpleLayouts.d.ts +7 -0
  265. package/dist/processing/layouts/types.d.ts +17 -0
  266. package/dist/processing/network.d.ts +111 -0
  267. package/dist/processing/networkDefaults.d.ts +36 -0
  268. package/dist/processing/networkLayoutHelpers.d.ts +54 -0
  269. package/dist/processing/ordinal.d.ts +102 -0
  270. package/dist/processing/ordinalConstants.d.ts +33 -0
  271. package/dist/processing/ordinalOverlays.d.ts +33 -0
  272. package/dist/processing/ordinalRenderPipeline.d.ts +148 -0
  273. package/dist/processing/xyDrawing.d.ts +140 -0
  274. package/dist/realtime/BinAccumulator.d.ts +8 -0
  275. package/dist/realtime/IncrementalExtent.d.ts +13 -0
  276. package/dist/realtime/RealtimeFrame.d.ts +4 -0
  277. package/dist/realtime/RingBuffer.d.ts +19 -0
  278. package/dist/realtime/renderers/barRenderer.d.ts +2 -0
  279. package/dist/realtime/renderers/candlestickRenderer.d.ts +2 -0
  280. package/dist/realtime/renderers/lineRenderer.d.ts +2 -0
  281. package/dist/realtime/renderers/swarmRenderer.d.ts +2 -0
  282. package/dist/realtime/renderers/types.d.ts +9 -0
  283. package/dist/realtime/renderers/waterfallRenderer.d.ts +3 -0
  284. package/dist/realtime/types.d.ts +113 -0
  285. package/dist/realtime.js +1598 -0
  286. package/dist/realtime.js.map +1 -0
  287. package/dist/realtime.min.js +1 -0
  288. package/dist/realtime.module.js +1566 -0
  289. package/dist/realtime.module.js.map +1 -0
  290. package/dist/realtime.module.min.js +1 -0
  291. package/dist/semiotic-ai.d.ts +28 -0
  292. package/dist/semiotic-ai.js +18722 -0
  293. package/dist/semiotic-ai.js.map +1 -0
  294. package/dist/semiotic-ai.min.js +1 -0
  295. package/dist/semiotic-ai.module.js +18668 -0
  296. package/dist/semiotic-ai.module.js.map +1 -0
  297. package/dist/semiotic-ai.module.min.js +1 -0
  298. package/dist/semiotic-network.d.ts +19 -0
  299. package/dist/semiotic-ordinal.d.ts +18 -0
  300. package/dist/semiotic-realtime.d.ts +23 -0
  301. package/dist/semiotic-server.d.ts +1 -0
  302. package/dist/semiotic-xy.d.ts +24 -0
  303. package/dist/semiotic.d.ts +51 -0
  304. package/dist/semiotic.js +18723 -12996
  305. package/dist/semiotic.js.map +1 -0
  306. package/dist/semiotic.min.js +1 -0
  307. package/dist/semiotic.module.js +18666 -12965
  308. package/dist/semiotic.module.js.map +1 -0
  309. package/dist/semiotic.module.min.js +1 -0
  310. package/dist/server/renderToStaticSVG.d.ts +9 -0
  311. package/dist/server.js +8360 -0
  312. package/dist/server.js.map +1 -0
  313. package/dist/server.min.js +1 -0
  314. package/dist/server.module.js +8331 -0
  315. package/dist/server.module.js.map +1 -0
  316. package/dist/server.module.min.js +1 -0
  317. package/dist/store/TooltipStore.d.ts +2 -0
  318. package/dist/store/createStore.d.ts +1 -0
  319. package/dist/svg/SvgHelper.d.ts +33 -0
  320. package/dist/svg/areaDrawing.d.ts +21 -0
  321. package/dist/svg/boxplotRenderer.d.ts +15 -0
  322. package/dist/svg/bucketizedRenderer.d.ts +16 -0
  323. package/dist/svg/ckbinsRenderer.d.ts +20 -0
  324. package/dist/svg/ckmeans.d.ts +69 -0
  325. package/dist/svg/contourLayout.d.ts +6 -0
  326. package/dist/svg/contourRenderer.d.ts +12 -0
  327. package/dist/svg/edgeGenerators.d.ts +51 -0
  328. package/dist/svg/frameFunctions.d.ts +108 -0
  329. package/dist/svg/graphAlgorithms.d.ts +14 -0
  330. package/dist/svg/hexbinLayout.d.ts +7 -0
  331. package/dist/svg/lineDrawing.d.ts +99 -0
  332. package/dist/svg/networkDrawing.d.ts +16 -0
  333. package/dist/svg/nodeGenerators.d.ts +58 -0
  334. package/dist/svg/pieceDrawing.d.ts +12 -0
  335. package/dist/svg/pieceLayouts.d.ts +53 -0
  336. package/dist/svg/sankeyLinks.d.ts +3 -0
  337. package/dist/svg/summaryAxis.d.ts +6 -0
  338. package/dist/svg/summaryLayouts.d.ts +53 -0
  339. package/dist/svg/swarmLayout.d.ts +13 -0
  340. package/dist/types/annotationTypes.d.ts +135 -0
  341. package/dist/types/canvasTypes.d.ts +9 -0
  342. package/dist/types/generalTypes.d.ts +238 -0
  343. package/dist/types/interactionTypes.d.ts +72 -0
  344. package/dist/types/legendTypes.d.ts +20 -0
  345. package/dist/types/networkTypes.d.ts +175 -0
  346. package/dist/types/ordinalTypes.d.ts +112 -0
  347. package/dist/types/xyTypes.d.ts +115 -0
  348. package/dist/useBoundingRect.d.ts +2 -0
  349. package/dist/useDerivedStateFromProps.d.ts +1 -0
  350. package/dist/useLegacyUnmountCallback.d.ts +2 -0
  351. package/dist/visualizationLayerBehavior/axis.d.ts +36 -0
  352. package/dist/visualizationLayerBehavior/general.d.ts +80 -0
  353. package/dist/xy.js +7944 -0
  354. package/dist/xy.js.map +1 -0
  355. package/dist/xy.min.js +1 -0
  356. package/dist/xy.module.js +7903 -0
  357. package/dist/xy.module.js.map +1 -0
  358. package/dist/xy.module.min.js +1 -0
  359. package/package.json +116 -65
@@ -0,0 +1,119 @@
1
+ import * as React from "react";
2
+ import type { OrdinalFrameProps } from "../../types/ordinalTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * BarChart component props
7
+ */
8
+ export interface BarChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points. Each point should have a category and value.
11
+ * @example
12
+ * ```ts
13
+ * [{category: 'A', value: 10}, {category: 'B', value: 20}]
14
+ * ```
15
+ */
16
+ data: TDatum[];
17
+ /**
18
+ * Field name or function to access category values
19
+ * @default "category"
20
+ */
21
+ categoryAccessor?: ChartAccessor<TDatum, string>;
22
+ /**
23
+ * Field name or function to access numeric values
24
+ * @default "value"
25
+ */
26
+ valueAccessor?: ChartAccessor<TDatum, number>;
27
+ /**
28
+ * Chart orientation
29
+ * @default "vertical"
30
+ */
31
+ orientation?: "vertical" | "horizontal";
32
+ /**
33
+ * Label for the category axis
34
+ */
35
+ categoryLabel?: string;
36
+ /**
37
+ * Label for the value axis
38
+ */
39
+ valueLabel?: string;
40
+ /**
41
+ * Format function for value axis tick labels
42
+ */
43
+ valueFormat?: (d: number | string) => string;
44
+ /**
45
+ * Field name or function to determine bar color
46
+ * @example
47
+ * ```ts
48
+ * colorBy="category" // Use category field
49
+ * colorBy={d => d.value > 10 ? 'green' : 'red'} // Use function
50
+ * ```
51
+ */
52
+ colorBy?: ChartAccessor<TDatum, string>;
53
+ /**
54
+ * Color scheme for categorical data or custom colors array
55
+ * @default "category10"
56
+ */
57
+ colorScheme?: string | string[];
58
+ /**
59
+ * Sort bars by value
60
+ * @default false
61
+ * @example
62
+ * ```ts
63
+ * sort="asc" // Ascending
64
+ * sort="desc" // Descending
65
+ * sort={true} // Descending (default)
66
+ * sort={(a, b) => a.value - b.value} // Custom function
67
+ * ```
68
+ */
69
+ sort?: boolean | "asc" | "desc" | ((a: Record<string, any>, b: Record<string, any>) => number);
70
+ /**
71
+ * Padding between bars (in pixels)
72
+ * @default 5
73
+ */
74
+ barPadding?: number;
75
+ /**
76
+ * Enable hover annotations
77
+ * @default true
78
+ */
79
+ enableHover?: boolean;
80
+ /**
81
+ * Show grid lines
82
+ * @default false
83
+ */
84
+ showGrid?: boolean;
85
+ /**
86
+ * Show legend
87
+ * @default true (when colorBy is specified)
88
+ */
89
+ showLegend?: boolean;
90
+ /**
91
+ * Tooltip configuration
92
+ */
93
+ tooltip?: TooltipProp;
94
+ /**
95
+ * Additional OrdinalFrame props for advanced customization
96
+ * For full control, consider using OrdinalFrame directly
97
+ * @see https://semiotic.nteract.io/guides/ordinal-frame
98
+ */
99
+ frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
100
+ }
101
+ /**
102
+ * BarChart - Visualize categorical data with bars.
103
+ *
104
+ * A simplified wrapper around OrdinalFrame for creating bar charts.
105
+ *
106
+ * @example
107
+ * ```tsx
108
+ * <BarChart
109
+ * data={[
110
+ * {category: 'A', value: 10},
111
+ * {category: 'B', value: 20},
112
+ * {category: 'C', value: 15}
113
+ * ]}
114
+ * categoryLabel="Category"
115
+ * valueLabel="Value"
116
+ * />
117
+ * ```
118
+ */
119
+ export declare function BarChart<TDatum extends Record<string, any> = Record<string, any>>(props: BarChartProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,125 @@
1
+ import * as React from "react";
2
+ import type { OrdinalFrameProps } from "../../types/ordinalTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * BoxPlot component props
7
+ */
8
+ export interface BoxPlotProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points with category and value.
11
+ * @example
12
+ * ```ts
13
+ * [
14
+ * {category: 'Group A', value: 10},
15
+ * {category: 'Group A', value: 12},
16
+ * {category: 'Group A', value: 15},
17
+ * {category: 'Group B', value: 20}
18
+ * ]
19
+ * ```
20
+ */
21
+ data: TDatum[];
22
+ /**
23
+ * Field name or function to access category values
24
+ * @default "category"
25
+ */
26
+ categoryAccessor?: ChartAccessor<TDatum, string>;
27
+ /**
28
+ * Field name or function to access numeric values
29
+ * @default "value"
30
+ */
31
+ valueAccessor?: ChartAccessor<TDatum, number>;
32
+ /**
33
+ * Chart orientation
34
+ * @default "vertical"
35
+ */
36
+ orientation?: "vertical" | "horizontal";
37
+ /**
38
+ * Label for the category axis
39
+ */
40
+ categoryLabel?: string;
41
+ /**
42
+ * Label for the value axis
43
+ */
44
+ valueLabel?: string;
45
+ /**
46
+ * Format function for value axis tick labels
47
+ */
48
+ valueFormat?: (d: number | string) => string;
49
+ /**
50
+ * Field name or function to determine box color
51
+ * @example
52
+ * ```ts
53
+ * colorBy="category"
54
+ * colorBy={d => d.group}
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
+ * Show outlier points
65
+ * @default true
66
+ */
67
+ showOutliers?: boolean;
68
+ /**
69
+ * Outlier point radius
70
+ * @default 3
71
+ */
72
+ outlierRadius?: number;
73
+ /**
74
+ * Padding between categories (in pixels)
75
+ * @default 20
76
+ */
77
+ categoryPadding?: number;
78
+ /**
79
+ * Enable hover annotations
80
+ * @default true
81
+ */
82
+ enableHover?: boolean;
83
+ /**
84
+ * Show grid lines
85
+ * @default false
86
+ */
87
+ showGrid?: boolean;
88
+ /**
89
+ * Show legend
90
+ * @default true (when colorBy is specified)
91
+ */
92
+ showLegend?: boolean;
93
+ /**
94
+ * Tooltip configuration
95
+ */
96
+ tooltip?: TooltipProp;
97
+ /**
98
+ * Additional OrdinalFrame props for advanced customization
99
+ * For full control, consider using OrdinalFrame directly
100
+ * @see https://semiotic.nteract.io/guides/ordinal-frame
101
+ */
102
+ frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
103
+ }
104
+ /**
105
+ * BoxPlot - Visualize statistical distributions with box-and-whisker plots.
106
+ *
107
+ * A simplified wrapper around OrdinalFrame for creating box plots.
108
+ *
109
+ * @example
110
+ * ```tsx
111
+ * <BoxPlot
112
+ * data={[
113
+ * {category: 'Group A', value: 10},
114
+ * {category: 'Group A', value: 12},
115
+ * {category: 'Group A', value: 15},
116
+ * {category: 'Group A', value: 18},
117
+ * {category: 'Group B', value: 20},
118
+ * {category: 'Group B', value: 22}
119
+ * ]}
120
+ * categoryLabel="Group"
121
+ * valueLabel="Value"
122
+ * />
123
+ * ```
124
+ */
125
+ export declare function BoxPlot<TDatum extends Record<string, any> = Record<string, any>>(props: BoxPlotProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,95 @@
1
+ import * as React from "react";
2
+ import type { OrdinalFrameProps } from "../../types/ordinalTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * DonutChart component props
7
+ */
8
+ export interface DonutChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points, one per slice.
11
+ * @example
12
+ * ```ts
13
+ * [{category: 'A', value: 30}, {category: 'B', value: 50}, {category: 'C', value: 20}]
14
+ * ```
15
+ */
16
+ data: TDatum[];
17
+ /**
18
+ * Field name or function to access slice labels
19
+ * @default "category"
20
+ */
21
+ categoryAccessor?: ChartAccessor<TDatum, string>;
22
+ /**
23
+ * Field name or function to access slice values
24
+ * @default "value"
25
+ */
26
+ valueAccessor?: ChartAccessor<TDatum, number>;
27
+ /**
28
+ * Inner radius in pixels. Controls the donut hole size.
29
+ * @default 60
30
+ */
31
+ innerRadius?: number;
32
+ /**
33
+ * Content to render in the center of the donut (e.g. a total label)
34
+ */
35
+ centerContent?: React.ReactNode;
36
+ /**
37
+ * Field name or function to determine slice color
38
+ * @default categoryAccessor
39
+ */
40
+ colorBy?: ChartAccessor<TDatum, string>;
41
+ /**
42
+ * Color scheme for categorical data or custom colors array
43
+ * @default "category10"
44
+ */
45
+ colorScheme?: string | string[];
46
+ /**
47
+ * Starting angle offset in degrees
48
+ * @default 0
49
+ */
50
+ startAngle?: number;
51
+ /**
52
+ * Padding between slices (in pixels)
53
+ * @default 2
54
+ */
55
+ slicePadding?: number;
56
+ /**
57
+ * Enable hover annotations
58
+ * @default true
59
+ */
60
+ enableHover?: boolean;
61
+ /**
62
+ * Show legend
63
+ * @default true
64
+ */
65
+ showLegend?: boolean;
66
+ /**
67
+ * Tooltip configuration
68
+ */
69
+ tooltip?: TooltipProp;
70
+ /**
71
+ * Additional OrdinalFrame props for advanced customization
72
+ * For full control, consider using OrdinalFrame directly
73
+ */
74
+ frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
75
+ }
76
+ /**
77
+ * DonutChart - Visualize proportions as slices of a ring.
78
+ *
79
+ * A simplified wrapper around OrdinalFrame with radial projection and
80
+ * an inner radius to create a donut shape.
81
+ *
82
+ * @example
83
+ * ```tsx
84
+ * <DonutChart
85
+ * data={[
86
+ * {category: 'A', value: 30},
87
+ * {category: 'B', value: 50},
88
+ * {category: 'C', value: 20}
89
+ * ]}
90
+ * innerRadius={80}
91
+ * centerContent={<span>Total: 100</span>}
92
+ * />
93
+ * ```
94
+ */
95
+ export declare function DonutChart<TDatum extends Record<string, any> = Record<string, any>>(props: DonutChartProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,128 @@
1
+ import * as React from "react";
2
+ import type { OrdinalFrameProps } from "../../types/ordinalTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * DotPlot component props
7
+ */
8
+ export interface DotPlotProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points with category and value.
11
+ * @example
12
+ * ```ts
13
+ * [
14
+ * {category: 'Item A', value: 25},
15
+ * {category: 'Item B', value: 40},
16
+ * {category: 'Item C', value: 15}
17
+ * ]
18
+ * ```
19
+ */
20
+ data: TDatum[];
21
+ /**
22
+ * Field name or function to access category values
23
+ * @default "category"
24
+ */
25
+ categoryAccessor?: ChartAccessor<TDatum, string>;
26
+ /**
27
+ * Field name or function to access numeric values
28
+ * @default "value"
29
+ */
30
+ valueAccessor?: ChartAccessor<TDatum, number>;
31
+ /**
32
+ * Chart orientation
33
+ * @default "horizontal"
34
+ */
35
+ orientation?: "vertical" | "horizontal";
36
+ /**
37
+ * Label for the category axis
38
+ */
39
+ categoryLabel?: string;
40
+ /**
41
+ * Label for the value axis
42
+ */
43
+ valueLabel?: string;
44
+ /**
45
+ * Format function for value axis tick labels
46
+ */
47
+ valueFormat?: (d: number | string) => string;
48
+ /**
49
+ * Field name or function to determine dot color
50
+ * @example
51
+ * ```ts
52
+ * colorBy="type"
53
+ * colorBy={d => d.value > 20 ? 'high' : 'low'}
54
+ * ```
55
+ */
56
+ colorBy?: ChartAccessor<TDatum, string>;
57
+ /**
58
+ * Color scheme for categorical data or custom colors array
59
+ * @default "category10"
60
+ */
61
+ colorScheme?: string | string[];
62
+ /**
63
+ * Sort categories by value
64
+ * @default true
65
+ * @example
66
+ * ```ts
67
+ * sort="asc" // Ascending
68
+ * sort="desc" // Descending
69
+ * sort={true} // Descending (default)
70
+ * sort={(a, b) => a.value - b.value} // Custom function
71
+ * ```
72
+ */
73
+ sort?: boolean | "asc" | "desc" | ((a: Record<string, any>, b: Record<string, any>) => number);
74
+ /**
75
+ * Dot radius
76
+ * @default 5
77
+ */
78
+ dotRadius?: number;
79
+ /**
80
+ * Padding between categories (in pixels)
81
+ * @default 10
82
+ */
83
+ categoryPadding?: number;
84
+ /**
85
+ * Enable hover annotations
86
+ * @default true
87
+ */
88
+ enableHover?: boolean;
89
+ /**
90
+ * Show grid lines
91
+ * @default true
92
+ */
93
+ showGrid?: boolean;
94
+ /**
95
+ * Show legend
96
+ * @default true (when colorBy is specified)
97
+ */
98
+ showLegend?: boolean;
99
+ /**
100
+ * Tooltip configuration
101
+ */
102
+ tooltip?: TooltipProp;
103
+ /**
104
+ * Additional OrdinalFrame props for advanced customization
105
+ * For full control, consider using OrdinalFrame directly
106
+ * @see https://semiotic.nteract.io/guides/ordinal-frame
107
+ */
108
+ frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
109
+ }
110
+ /**
111
+ * DotPlot - Visualize categorical data with Cleveland dot plots.
112
+ *
113
+ * A simplified wrapper around OrdinalFrame for creating dot plots.
114
+ *
115
+ * @example
116
+ * ```tsx
117
+ * <DotPlot
118
+ * data={[
119
+ * {category: 'Item A', value: 25},
120
+ * {category: 'Item B', value: 40},
121
+ * {category: 'Item C', value: 15}
122
+ * ]}
123
+ * categoryLabel="Items"
124
+ * valueLabel="Value"
125
+ * />
126
+ * ```
127
+ */
128
+ export declare function DotPlot<TDatum extends Record<string, any> = Record<string, any>>(props: DotPlotProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,113 @@
1
+ import * as React from "react";
2
+ import type { OrdinalFrameProps } from "../../types/ordinalTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * GroupedBarChart component props
7
+ */
8
+ export interface GroupedBarChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points with category, group, and value.
11
+ * @example
12
+ * ```ts
13
+ * [
14
+ * {category: 'Q1', product: 'A', value: 100},
15
+ * {category: 'Q1', product: 'B', value: 150},
16
+ * {category: 'Q2', product: 'A', value: 120},
17
+ * {category: 'Q2', product: 'B', value: 180}
18
+ * ]
19
+ * ```
20
+ */
21
+ data: TDatum[];
22
+ /**
23
+ * Field name or function to access category values
24
+ * @default "category"
25
+ */
26
+ categoryAccessor?: ChartAccessor<TDatum, string>;
27
+ /**
28
+ * Field name or function to access group values (for grouping bars side by side)
29
+ */
30
+ groupBy: ChartAccessor<TDatum, string>;
31
+ /**
32
+ * Field name or function to access numeric values
33
+ * @default "value"
34
+ */
35
+ valueAccessor?: ChartAccessor<TDatum, number>;
36
+ /**
37
+ * Chart orientation
38
+ * @default "vertical"
39
+ */
40
+ orientation?: "vertical" | "horizontal";
41
+ /**
42
+ * Label for the category axis
43
+ */
44
+ categoryLabel?: string;
45
+ /**
46
+ * Label for the value axis
47
+ */
48
+ valueLabel?: string;
49
+ /**
50
+ * Format function for value axis tick labels
51
+ */
52
+ valueFormat?: (d: number | string) => string;
53
+ /**
54
+ * Field name or function to determine bar color
55
+ * @default groupBy value
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
+ * Padding between bar groups (in pixels)
65
+ * @default 5
66
+ */
67
+ barPadding?: number;
68
+ /**
69
+ * Enable hover annotations
70
+ * @default true
71
+ */
72
+ enableHover?: boolean;
73
+ /**
74
+ * Show grid lines
75
+ * @default false
76
+ */
77
+ showGrid?: boolean;
78
+ /**
79
+ * Show legend for groups
80
+ * @default true
81
+ */
82
+ showLegend?: boolean;
83
+ /**
84
+ * Tooltip configuration
85
+ */
86
+ tooltip?: TooltipProp;
87
+ /**
88
+ * Additional OrdinalFrame props for advanced customization
89
+ * For full control, consider using OrdinalFrame directly
90
+ */
91
+ frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
92
+ }
93
+ /**
94
+ * GroupedBarChart - Visualize comparisons across categories with side-by-side bars.
95
+ *
96
+ * A simplified wrapper around OrdinalFrame using clusterbar type.
97
+ *
98
+ * @example
99
+ * ```tsx
100
+ * <GroupedBarChart
101
+ * data={[
102
+ * {category: 'Q1', product: 'A', value: 100},
103
+ * {category: 'Q1', product: 'B', value: 150},
104
+ * {category: 'Q2', product: 'A', value: 120},
105
+ * {category: 'Q2', product: 'B', value: 180}
106
+ * ]}
107
+ * groupBy="product"
108
+ * categoryLabel="Quarter"
109
+ * valueLabel="Sales"
110
+ * />
111
+ * ```
112
+ */
113
+ export declare function GroupedBarChart<TDatum extends Record<string, any> = Record<string, any>>(props: GroupedBarChartProps<TDatum>): React.JSX.Element;
@@ -0,0 +1,83 @@
1
+ import * as React from "react";
2
+ import type { OrdinalFrameProps } from "../../types/ordinalTypes";
3
+ import type { BaseChartProps, ChartAccessor } from "../shared/types";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ /**
6
+ * PieChart component props
7
+ */
8
+ export interface PieChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
9
+ /**
10
+ * Array of data points, one per slice.
11
+ * @example
12
+ * ```ts
13
+ * [{category: 'A', value: 30}, {category: 'B', value: 50}, {category: 'C', value: 20}]
14
+ * ```
15
+ */
16
+ data: TDatum[];
17
+ /**
18
+ * Field name or function to access slice labels
19
+ * @default "category"
20
+ */
21
+ categoryAccessor?: ChartAccessor<TDatum, string>;
22
+ /**
23
+ * Field name or function to access slice values
24
+ * @default "value"
25
+ */
26
+ valueAccessor?: ChartAccessor<TDatum, number>;
27
+ /**
28
+ * Field name or function to determine slice color
29
+ * @default categoryAccessor
30
+ */
31
+ colorBy?: ChartAccessor<TDatum, string>;
32
+ /**
33
+ * Color scheme for categorical data or custom colors array
34
+ * @default "category10"
35
+ */
36
+ colorScheme?: string | string[];
37
+ /**
38
+ * Starting angle offset in degrees
39
+ * @default 0
40
+ */
41
+ startAngle?: number;
42
+ /**
43
+ * Padding between slices (in pixels)
44
+ * @default 2
45
+ */
46
+ slicePadding?: number;
47
+ /**
48
+ * Enable hover annotations
49
+ * @default true
50
+ */
51
+ enableHover?: boolean;
52
+ /**
53
+ * Show legend
54
+ * @default true
55
+ */
56
+ showLegend?: boolean;
57
+ /**
58
+ * Tooltip configuration
59
+ */
60
+ tooltip?: TooltipProp;
61
+ /**
62
+ * Additional OrdinalFrame props for advanced customization
63
+ * For full control, consider using OrdinalFrame directly
64
+ */
65
+ frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
66
+ }
67
+ /**
68
+ * PieChart - Visualize proportions as slices of a circle.
69
+ *
70
+ * A simplified wrapper around OrdinalFrame with radial projection.
71
+ *
72
+ * @example
73
+ * ```tsx
74
+ * <PieChart
75
+ * data={[
76
+ * {category: 'A', value: 30},
77
+ * {category: 'B', value: 50},
78
+ * {category: 'C', value: 20}
79
+ * ]}
80
+ * />
81
+ * ```
82
+ */
83
+ export declare function PieChart<TDatum extends Record<string, any> = Record<string, any>>(props: PieChartProps<TDatum>): React.JSX.Element;