tuiuiu.js 0.1.1 → 0.1.4-next.2b42a16

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 (402) hide show
  1. package/README.md +100 -42
  2. package/dist/atoms/button.d.ts.map +1 -1
  3. package/dist/atoms/button.js +17 -9
  4. package/dist/atoms/button.js.map +1 -1
  5. package/dist/atoms/text-input.d.ts +2 -0
  6. package/dist/atoms/text-input.d.ts.map +1 -1
  7. package/dist/atoms/text-input.js +13 -7
  8. package/dist/atoms/text-input.js.map +1 -1
  9. package/dist/atoms/tooltip.d.ts.map +1 -1
  10. package/dist/atoms/tooltip.js +2 -1
  11. package/dist/atoms/tooltip.js.map +1 -1
  12. package/dist/cli/commands/help.d.ts +5 -0
  13. package/dist/cli/commands/help.d.ts.map +1 -0
  14. package/dist/cli/commands/help.js +31 -0
  15. package/dist/cli/commands/help.js.map +1 -0
  16. package/dist/cli/commands/mcp.d.ts +11 -0
  17. package/dist/cli/commands/mcp.d.ts.map +1 -0
  18. package/dist/cli/commands/mcp.js +21 -0
  19. package/dist/cli/commands/mcp.js.map +1 -0
  20. package/dist/cli/commands/storybook.d.ts +5 -0
  21. package/dist/cli/commands/storybook.d.ts.map +1 -0
  22. package/dist/cli/commands/storybook.js +9 -0
  23. package/dist/cli/commands/storybook.js.map +1 -0
  24. package/dist/cli/index.d.ts +14 -0
  25. package/dist/cli/index.d.ts.map +1 -0
  26. package/dist/cli/index.js +50 -0
  27. package/dist/cli/index.js.map +1 -0
  28. package/dist/core/error-boundary.d.ts.map +1 -1
  29. package/dist/core/error-boundary.js +2 -1
  30. package/dist/core/error-boundary.js.map +1 -1
  31. package/dist/core/hotkeys.d.ts +62 -0
  32. package/dist/core/hotkeys.d.ts.map +1 -0
  33. package/dist/core/hotkeys.js +0 -0
  34. package/dist/core/hotkeys.js.map +1 -0
  35. package/dist/core/index.d.ts +3 -1
  36. package/dist/core/index.d.ts.map +1 -1
  37. package/dist/core/index.js +9 -1
  38. package/dist/core/index.js.map +1 -1
  39. package/dist/core/screen.d.ts.map +1 -1
  40. package/dist/core/screen.js +2 -0
  41. package/dist/core/screen.js.map +1 -1
  42. package/dist/core/theme.d.ts +79 -0
  43. package/dist/core/theme.d.ts.map +1 -1
  44. package/dist/core/theme.js +358 -0
  45. package/dist/core/theme.js.map +1 -1
  46. package/dist/design-system/data-display/index.d.ts +9 -6
  47. package/dist/design-system/data-display/index.d.ts.map +1 -1
  48. package/dist/design-system/data-display/index.js +16 -7
  49. package/dist/design-system/data-display/index.js.map +1 -1
  50. package/dist/design-system/feedback/badge.d.ts +21 -4
  51. package/dist/design-system/feedback/badge.d.ts.map +1 -1
  52. package/dist/design-system/feedback/badge.js +15 -2
  53. package/dist/design-system/feedback/badge.js.map +1 -1
  54. package/dist/design-system/forms/index.d.ts +11 -8
  55. package/dist/design-system/forms/index.d.ts.map +1 -1
  56. package/dist/design-system/forms/index.js +19 -10
  57. package/dist/design-system/forms/index.js.map +1 -1
  58. package/dist/design-system/layout/index.d.ts +7 -4
  59. package/dist/design-system/layout/index.d.ts.map +1 -1
  60. package/dist/design-system/layout/index.js +18 -6
  61. package/dist/design-system/layout/index.js.map +1 -1
  62. package/dist/design-system/media/picture.d.ts.map +1 -1
  63. package/dist/design-system/media/picture.js +2 -1
  64. package/dist/design-system/media/picture.js.map +1 -1
  65. package/dist/design-system/overlays/index.d.ts +6 -3
  66. package/dist/design-system/overlays/index.d.ts.map +1 -1
  67. package/dist/design-system/overlays/index.js +9 -3
  68. package/dist/design-system/overlays/index.js.map +1 -1
  69. package/dist/design-system/visual/splash-screen.d.ts.map +1 -1
  70. package/dist/design-system/visual/splash-screen.js +38 -18
  71. package/dist/design-system/visual/splash-screen.js.map +1 -1
  72. package/dist/hooks/index.d.ts +2 -0
  73. package/dist/hooks/index.d.ts.map +1 -1
  74. package/dist/hooks/index.js +2 -0
  75. package/dist/hooks/index.js.map +1 -1
  76. package/dist/hooks/use-hotkeys.d.ts +153 -0
  77. package/dist/hooks/use-hotkeys.d.ts.map +1 -0
  78. package/dist/hooks/use-hotkeys.js +379 -0
  79. package/dist/hooks/use-hotkeys.js.map +1 -0
  80. package/dist/hooks/use-input.d.ts +2 -10
  81. package/dist/hooks/use-input.d.ts.map +1 -1
  82. package/dist/hooks/use-input.js +2 -287
  83. package/dist/hooks/use-input.js.map +1 -1
  84. package/dist/hooks/use-mouse.d.ts +5 -0
  85. package/dist/hooks/use-mouse.d.ts.map +1 -1
  86. package/dist/hooks/use-mouse.js +29 -11
  87. package/dist/hooks/use-mouse.js.map +1 -1
  88. package/dist/index.d.ts +6 -4
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +15 -3
  91. package/dist/index.js.map +1 -1
  92. package/dist/mcp/docs-data.d.ts +31 -0
  93. package/dist/mcp/docs-data.d.ts.map +1 -0
  94. package/dist/mcp/docs-data.js +637 -0
  95. package/dist/mcp/docs-data.js.map +1 -0
  96. package/dist/mcp/index.d.ts +14 -0
  97. package/dist/mcp/index.d.ts.map +1 -0
  98. package/dist/mcp/index.js +12 -0
  99. package/dist/mcp/index.js.map +1 -0
  100. package/dist/mcp/server.d.ts +31 -0
  101. package/dist/mcp/server.d.ts.map +1 -0
  102. package/dist/mcp/server.js +597 -0
  103. package/dist/mcp/server.js.map +1 -0
  104. package/dist/mcp/types.d.ts +114 -0
  105. package/dist/mcp/types.d.ts.map +1 -0
  106. package/dist/mcp/types.js +16 -0
  107. package/dist/mcp/types.js.map +1 -0
  108. package/dist/molecules/autocomplete.d.ts.map +1 -1
  109. package/dist/molecules/autocomplete.js +2 -1
  110. package/dist/molecules/autocomplete.js.map +1 -1
  111. package/dist/molecules/calendar.d.ts.map +1 -1
  112. package/dist/molecules/calendar.js +5 -3
  113. package/dist/molecules/calendar.js.map +1 -1
  114. package/dist/molecules/data-viz/annotations.d.ts +75 -0
  115. package/dist/molecules/data-viz/annotations.d.ts.map +1 -0
  116. package/dist/molecules/data-viz/annotations.js +40 -0
  117. package/dist/molecules/data-viz/annotations.js.map +1 -0
  118. package/dist/molecules/data-viz/gantt-chart.d.ts +66 -0
  119. package/dist/molecules/data-viz/gantt-chart.d.ts.map +1 -0
  120. package/dist/molecules/data-viz/gantt-chart.js +134 -0
  121. package/dist/molecules/data-viz/gantt-chart.js.map +1 -0
  122. package/dist/molecules/data-viz/gauge.d.ts +2 -2
  123. package/dist/molecules/data-viz/gauge.d.ts.map +1 -1
  124. package/dist/molecules/data-viz/gauge.js +24 -8
  125. package/dist/molecules/data-viz/gauge.js.map +1 -1
  126. package/dist/molecules/data-viz/heatmap.d.ts +8 -2
  127. package/dist/molecules/data-viz/heatmap.d.ts.map +1 -1
  128. package/dist/molecules/data-viz/heatmap.js +41 -9
  129. package/dist/molecules/data-viz/heatmap.js.map +1 -1
  130. package/dist/molecules/data-viz/hooks.d.ts +264 -0
  131. package/dist/molecules/data-viz/hooks.d.ts.map +1 -0
  132. package/dist/molecules/data-viz/hooks.js +373 -0
  133. package/dist/molecules/data-viz/hooks.js.map +1 -0
  134. package/dist/molecules/data-viz/index.d.ts +14 -0
  135. package/dist/molecules/data-viz/index.d.ts.map +1 -1
  136. package/dist/molecules/data-viz/index.js +14 -0
  137. package/dist/molecules/data-viz/index.js.map +1 -1
  138. package/dist/molecules/data-viz/legend.d.ts +82 -0
  139. package/dist/molecules/data-viz/legend.d.ts.map +1 -0
  140. package/dist/molecules/data-viz/legend.js +146 -0
  141. package/dist/molecules/data-viz/legend.js.map +1 -0
  142. package/dist/molecules/data-viz/line-chart.d.ts.map +1 -1
  143. package/dist/molecules/data-viz/line-chart.js +48 -12
  144. package/dist/molecules/data-viz/line-chart.js.map +1 -1
  145. package/dist/molecules/data-viz/radar-chart.d.ts +61 -0
  146. package/dist/molecules/data-viz/radar-chart.d.ts.map +1 -0
  147. package/dist/molecules/data-viz/radar-chart.js +86 -0
  148. package/dist/molecules/data-viz/radar-chart.js.map +1 -0
  149. package/dist/molecules/data-viz/scatter-plot.d.ts +97 -0
  150. package/dist/molecules/data-viz/scatter-plot.d.ts.map +1 -0
  151. package/dist/molecules/data-viz/scatter-plot.js +205 -0
  152. package/dist/molecules/data-viz/scatter-plot.js.map +1 -0
  153. package/dist/molecules/data-viz/time-heatmap.d.ts +48 -0
  154. package/dist/molecules/data-viz/time-heatmap.d.ts.map +1 -0
  155. package/dist/molecules/data-viz/time-heatmap.js +145 -0
  156. package/dist/molecules/data-viz/time-heatmap.js.map +1 -0
  157. package/dist/molecules/select.d.ts +2 -0
  158. package/dist/molecules/select.d.ts.map +1 -1
  159. package/dist/molecules/select.js +4 -3
  160. package/dist/molecules/select.js.map +1 -1
  161. package/dist/molecules/tabs.d.ts.map +1 -1
  162. package/dist/molecules/tabs.js +14 -2
  163. package/dist/molecules/tabs.js.map +1 -1
  164. package/dist/organisms/command-palette.d.ts.map +1 -1
  165. package/dist/organisms/command-palette.js +2 -1
  166. package/dist/organisms/command-palette.js.map +1 -1
  167. package/dist/storybook/app.d.ts.map +1 -1
  168. package/dist/storybook/app.js +53 -44
  169. package/dist/storybook/app.js.map +1 -1
  170. package/dist/storybook/components/compare-view.d.ts.map +1 -1
  171. package/dist/storybook/components/compare-view.js +19 -18
  172. package/dist/storybook/components/compare-view.js.map +1 -1
  173. package/dist/storybook/components/log-viewer.d.ts.map +1 -1
  174. package/dist/storybook/components/log-viewer.js +9 -8
  175. package/dist/storybook/components/log-viewer.js.map +1 -1
  176. package/dist/storybook/components/preview.d.ts.map +1 -1
  177. package/dist/storybook/components/preview.js +34 -33
  178. package/dist/storybook/components/preview.js.map +1 -1
  179. package/dist/storybook/components/sidebar.d.ts.map +1 -1
  180. package/dist/storybook/components/sidebar.js +21 -20
  181. package/dist/storybook/components/sidebar.js.map +1 -1
  182. package/dist/storybook/stories/apps/index.d.ts.map +1 -1
  183. package/dist/storybook/stories/apps/index.js +306 -209
  184. package/dist/storybook/stories/apps/index.js.map +1 -1
  185. package/dist/storybook/stories/atoms/index.d.ts.map +1 -1
  186. package/dist/storybook/stories/atoms/index.js.map +1 -1
  187. package/dist/storybook/stories/molecules/index.d.ts +25 -0
  188. package/dist/storybook/stories/molecules/index.d.ts.map +1 -1
  189. package/dist/storybook/stories/molecules/index.js +402 -20
  190. package/dist/storybook/stories/molecules/index.js.map +1 -1
  191. package/dist/storybook/stories/organisms/index.d.ts.map +1 -1
  192. package/dist/storybook/stories/organisms/index.js +1 -1
  193. package/dist/storybook/stories/organisms/index.js.map +1 -1
  194. package/dist/utils/index.d.ts +2 -0
  195. package/dist/utils/index.d.ts.map +1 -1
  196. package/dist/utils/index.js +2 -0
  197. package/dist/utils/index.js.map +1 -1
  198. package/dist/utils/system-data.d.ts +73 -0
  199. package/dist/utils/system-data.d.ts.map +1 -0
  200. package/dist/utils/system-data.js +367 -0
  201. package/dist/utils/system-data.js.map +1 -0
  202. package/dist/version.d.ts +43 -0
  203. package/dist/version.d.ts.map +1 -0
  204. package/dist/version.js +82 -0
  205. package/dist/version.js.map +1 -0
  206. package/package.json +22 -22
  207. package/dist/components/canvas.d.ts +0 -322
  208. package/dist/components/canvas.d.ts.map +0 -1
  209. package/dist/components/canvas.js +0 -833
  210. package/dist/components/canvas.js.map +0 -1
  211. package/dist/components/code-block.d.ts +0 -75
  212. package/dist/components/code-block.d.ts.map +0 -1
  213. package/dist/components/code-block.js +0 -322
  214. package/dist/components/code-block.js.map +0 -1
  215. package/dist/components/components.d.ts +0 -122
  216. package/dist/components/components.d.ts.map +0 -1
  217. package/dist/components/components.js +0 -151
  218. package/dist/components/components.js.map +0 -1
  219. package/dist/components/data-viz/bar-chart.d.ts +0 -167
  220. package/dist/components/data-viz/bar-chart.d.ts.map +0 -1
  221. package/dist/components/data-viz/bar-chart.js +0 -375
  222. package/dist/components/data-viz/bar-chart.js.map +0 -1
  223. package/dist/components/data-viz/gauge.d.ts +0 -163
  224. package/dist/components/data-viz/gauge.d.ts.map +0 -1
  225. package/dist/components/data-viz/gauge.js +0 -451
  226. package/dist/components/data-viz/gauge.js.map +0 -1
  227. package/dist/components/data-viz/heatmap.d.ts +0 -154
  228. package/dist/components/data-viz/heatmap.d.ts.map +0 -1
  229. package/dist/components/data-viz/heatmap.js +0 -458
  230. package/dist/components/data-viz/heatmap.js.map +0 -1
  231. package/dist/components/data-viz/index.d.ts +0 -16
  232. package/dist/components/data-viz/index.d.ts.map +0 -1
  233. package/dist/components/data-viz/index.js +0 -16
  234. package/dist/components/data-viz/index.js.map +0 -1
  235. package/dist/components/data-viz/line-chart.d.ts +0 -157
  236. package/dist/components/data-viz/line-chart.d.ts.map +0 -1
  237. package/dist/components/data-viz/line-chart.js +0 -578
  238. package/dist/components/data-viz/line-chart.js.map +0 -1
  239. package/dist/components/data-viz/sparkline.d.ts +0 -156
  240. package/dist/components/data-viz/sparkline.d.ts.map +0 -1
  241. package/dist/components/data-viz/sparkline.js +0 -325
  242. package/dist/components/data-viz/sparkline.js.map +0 -1
  243. package/dist/components/grid.d.ts +0 -234
  244. package/dist/components/grid.d.ts.map +0 -1
  245. package/dist/components/grid.js +0 -719
  246. package/dist/components/grid.js.map +0 -1
  247. package/dist/components/index.d.ts +0 -33
  248. package/dist/components/index.d.ts.map +0 -1
  249. package/dist/components/index.js +0 -69
  250. package/dist/components/index.js.map +0 -1
  251. package/dist/components/markdown.d.ts +0 -52
  252. package/dist/components/markdown.d.ts.map +0 -1
  253. package/dist/components/markdown.js +0 -341
  254. package/dist/components/markdown.js.map +0 -1
  255. package/dist/components/modal.d.ts +0 -237
  256. package/dist/components/modal.d.ts.map +0 -1
  257. package/dist/components/modal.js +0 -396
  258. package/dist/components/modal.js.map +0 -1
  259. package/dist/components/progress-bar.d.ts +0 -89
  260. package/dist/components/progress-bar.d.ts.map +0 -1
  261. package/dist/components/progress-bar.js +0 -288
  262. package/dist/components/progress-bar.js.map +0 -1
  263. package/dist/components/select.d.ts +0 -114
  264. package/dist/components/select.d.ts.map +0 -1
  265. package/dist/components/select.js +0 -415
  266. package/dist/components/select.js.map +0 -1
  267. package/dist/components/spinner.d.ts +0 -71
  268. package/dist/components/spinner.d.ts.map +0 -1
  269. package/dist/components/spinner.js +0 -300
  270. package/dist/components/spinner.js.map +0 -1
  271. package/dist/components/split-panel.d.ts +0 -175
  272. package/dist/components/split-panel.d.ts.map +0 -1
  273. package/dist/components/split-panel.js +0 -322
  274. package/dist/components/split-panel.js.map +0 -1
  275. package/dist/components/table.d.ts +0 -103
  276. package/dist/components/table.d.ts.map +0 -1
  277. package/dist/components/table.js +0 -359
  278. package/dist/components/table.js.map +0 -1
  279. package/dist/components/text-input.d.ts +0 -79
  280. package/dist/components/text-input.d.ts.map +0 -1
  281. package/dist/components/text-input.js +0 -332
  282. package/dist/components/text-input.js.map +0 -1
  283. package/dist/design-system/data-display/calendar.d.ts +0 -141
  284. package/dist/design-system/data-display/calendar.d.ts.map +0 -1
  285. package/dist/design-system/data-display/calendar.js +0 -524
  286. package/dist/design-system/data-display/calendar.js.map +0 -1
  287. package/dist/design-system/data-display/code-block.d.ts +0 -75
  288. package/dist/design-system/data-display/code-block.d.ts.map +0 -1
  289. package/dist/design-system/data-display/code-block.js +0 -311
  290. package/dist/design-system/data-display/code-block.js.map +0 -1
  291. package/dist/design-system/data-display/data-table.d.ts +0 -173
  292. package/dist/design-system/data-display/data-table.d.ts.map +0 -1
  293. package/dist/design-system/data-display/data-table.js +0 -428
  294. package/dist/design-system/data-display/data-table.js.map +0 -1
  295. package/dist/design-system/data-display/markdown.d.ts +0 -52
  296. package/dist/design-system/data-display/markdown.d.ts.map +0 -1
  297. package/dist/design-system/data-display/markdown.js +0 -341
  298. package/dist/design-system/data-display/markdown.js.map +0 -1
  299. package/dist/design-system/data-display/table.d.ts +0 -103
  300. package/dist/design-system/data-display/table.d.ts.map +0 -1
  301. package/dist/design-system/data-display/table.js +0 -342
  302. package/dist/design-system/data-display/table.js.map +0 -1
  303. package/dist/design-system/data-display/tree.d.ts +0 -166
  304. package/dist/design-system/data-display/tree.d.ts.map +0 -1
  305. package/dist/design-system/data-display/tree.js +0 -428
  306. package/dist/design-system/data-display/tree.js.map +0 -1
  307. package/dist/design-system/forms/autocomplete.d.ts +0 -163
  308. package/dist/design-system/forms/autocomplete.d.ts.map +0 -1
  309. package/dist/design-system/forms/autocomplete.js +0 -455
  310. package/dist/design-system/forms/autocomplete.js.map +0 -1
  311. package/dist/design-system/forms/button.d.ts +0 -106
  312. package/dist/design-system/forms/button.d.ts.map +0 -1
  313. package/dist/design-system/forms/button.js +0 -170
  314. package/dist/design-system/forms/button.js.map +0 -1
  315. package/dist/design-system/forms/multi-select.d.ts +0 -102
  316. package/dist/design-system/forms/multi-select.d.ts.map +0 -1
  317. package/dist/design-system/forms/multi-select.js +0 -309
  318. package/dist/design-system/forms/multi-select.js.map +0 -1
  319. package/dist/design-system/forms/radio-group.d.ts +0 -88
  320. package/dist/design-system/forms/radio-group.d.ts.map +0 -1
  321. package/dist/design-system/forms/radio-group.js +0 -145
  322. package/dist/design-system/forms/radio-group.js.map +0 -1
  323. package/dist/design-system/forms/select.d.ts +0 -116
  324. package/dist/design-system/forms/select.d.ts.map +0 -1
  325. package/dist/design-system/forms/select.js +0 -441
  326. package/dist/design-system/forms/select.js.map +0 -1
  327. package/dist/design-system/forms/slider.d.ts +0 -134
  328. package/dist/design-system/forms/slider.d.ts.map +0 -1
  329. package/dist/design-system/forms/slider.js +0 -314
  330. package/dist/design-system/forms/slider.js.map +0 -1
  331. package/dist/design-system/forms/switch.d.ts +0 -99
  332. package/dist/design-system/forms/switch.d.ts.map +0 -1
  333. package/dist/design-system/forms/switch.js +0 -173
  334. package/dist/design-system/forms/switch.js.map +0 -1
  335. package/dist/design-system/forms/text-input.d.ts +0 -79
  336. package/dist/design-system/forms/text-input.d.ts.map +0 -1
  337. package/dist/design-system/forms/text-input.js +0 -344
  338. package/dist/design-system/forms/text-input.js.map +0 -1
  339. package/dist/design-system/layout/collapsible.d.ts +0 -166
  340. package/dist/design-system/layout/collapsible.d.ts.map +0 -1
  341. package/dist/design-system/layout/collapsible.js +0 -286
  342. package/dist/design-system/layout/collapsible.js.map +0 -1
  343. package/dist/design-system/layout/scroll-area.d.ts +0 -188
  344. package/dist/design-system/layout/scroll-area.d.ts.map +0 -1
  345. package/dist/design-system/layout/scroll-area.js +0 -348
  346. package/dist/design-system/layout/scroll-area.js.map +0 -1
  347. package/dist/design-system/layout/split-panel.d.ts +0 -183
  348. package/dist/design-system/layout/split-panel.d.ts.map +0 -1
  349. package/dist/design-system/layout/split-panel.js +0 -323
  350. package/dist/design-system/layout/split-panel.js.map +0 -1
  351. package/dist/design-system/layout/tabs.d.ts +0 -129
  352. package/dist/design-system/layout/tabs.d.ts.map +0 -1
  353. package/dist/design-system/layout/tabs.js +0 -373
  354. package/dist/design-system/layout/tabs.js.map +0 -1
  355. package/dist/design-system/overlays/command-palette.d.ts +0 -217
  356. package/dist/design-system/overlays/command-palette.d.ts.map +0 -1
  357. package/dist/design-system/overlays/command-palette.js +0 -443
  358. package/dist/design-system/overlays/command-palette.js.map +0 -1
  359. package/dist/design-system/overlays/modal.d.ts +0 -251
  360. package/dist/design-system/overlays/modal.d.ts.map +0 -1
  361. package/dist/design-system/overlays/modal.js +0 -461
  362. package/dist/design-system/overlays/modal.js.map +0 -1
  363. package/dist/design-system/overlays/overlay-stack.d.ts +0 -200
  364. package/dist/design-system/overlays/overlay-stack.d.ts.map +0 -1
  365. package/dist/design-system/overlays/overlay-stack.js +0 -341
  366. package/dist/design-system/overlays/overlay-stack.js.map +0 -1
  367. package/dist/design-system/primitives/box.d.ts +0 -16
  368. package/dist/design-system/primitives/box.d.ts.map +0 -1
  369. package/dist/design-system/primitives/box.js +0 -23
  370. package/dist/design-system/primitives/box.js.map +0 -1
  371. package/dist/design-system/primitives/divider.d.ts +0 -52
  372. package/dist/design-system/primitives/divider.d.ts.map +0 -1
  373. package/dist/design-system/primitives/divider.js +0 -72
  374. package/dist/design-system/primitives/divider.js.map +0 -1
  375. package/dist/design-system/primitives/helpers.d.ts +0 -10
  376. package/dist/design-system/primitives/helpers.d.ts.map +0 -1
  377. package/dist/design-system/primitives/helpers.js +0 -27
  378. package/dist/design-system/primitives/helpers.js.map +0 -1
  379. package/dist/design-system/primitives/index.d.ts +0 -11
  380. package/dist/design-system/primitives/index.d.ts.map +0 -1
  381. package/dist/design-system/primitives/index.js +0 -14
  382. package/dist/design-system/primitives/index.js.map +0 -1
  383. package/dist/design-system/primitives/slot.d.ts +0 -35
  384. package/dist/design-system/primitives/slot.d.ts.map +0 -1
  385. package/dist/design-system/primitives/slot.js +0 -17
  386. package/dist/design-system/primitives/slot.js.map +0 -1
  387. package/dist/design-system/primitives/spacer.d.ts +0 -34
  388. package/dist/design-system/primitives/spacer.d.ts.map +0 -1
  389. package/dist/design-system/primitives/spacer.js +0 -53
  390. package/dist/design-system/primitives/spacer.js.map +0 -1
  391. package/dist/design-system/primitives/text.d.ts +0 -12
  392. package/dist/design-system/primitives/text.d.ts.map +0 -1
  393. package/dist/design-system/primitives/text.js +0 -25
  394. package/dist/design-system/primitives/text.js.map +0 -1
  395. package/dist/design-system/primitives/utilities.d.ts +0 -70
  396. package/dist/design-system/primitives/utilities.d.ts.map +0 -1
  397. package/dist/design-system/primitives/utilities.js +0 -56
  398. package/dist/design-system/primitives/utilities.js.map +0 -1
  399. package/dist/storybook/cli.d.ts +0 -10
  400. package/dist/storybook/cli.d.ts.map +0 -1
  401. package/dist/storybook/cli.js +0 -14
  402. package/dist/storybook/cli.js.map +0 -1
@@ -13,4 +13,18 @@ export { LineChart, AreaChart, renderLineChartStrings, renderMultiSeriesChart, B
13
13
  export { Gauge, LinearGauge, MeterGauge, ArcGauge, DialGauge, BatteryGauge, renderLinearGaugeString, DEFAULT_ZONES, getZoneColor, } from './gauge.js';
14
14
  // Heatmap
15
15
  export { Heatmap, createHeatmap, ContributionGraph, CalendarHeatmap, CorrelationMatrix, COLOR_SCALES, } from './heatmap.js';
16
+ // Legend
17
+ export { Legend, createLegend, } from './legend.js';
18
+ // Scatter Plot
19
+ export { ScatterPlot, } from './scatter-plot.js';
20
+ // Radar Chart
21
+ export { RadarChart, } from './radar-chart.js';
22
+ // Gantt Chart
23
+ export { GanttChart, } from './gantt-chart.js';
24
+ // Time Heatmap
25
+ export { TimeHeatmap, } from './time-heatmap.js';
26
+ // Annotations
27
+ export { formatAnnotationLabel, getAnnotationColor, } from './annotations.js';
28
+ // Interactive Hooks
29
+ export { useChartSelection, useChartHover, useChartTooltip, useChartZoom, useChartKeyboard, useChartInteraction, useChartDataChange, } from './hooks.js';
16
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/molecules/data-viz/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY;AACZ,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAQxB,YAAY;AACZ,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAWxB,aAAa;AACb,OAAO,EACL,SAAS,EACT,SAAS,EACT,sBAAsB,EACtB,sBAAsB,EACtB,aAAa,EACb,WAAW,GACZ,MAAM,iBAAiB,CAAC;AAUzB,QAAQ;AACR,OAAO,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,uBAAuB,EACvB,aAAa,EACb,YAAY,GACb,MAAM,YAAY,CAAC;AAUpB,UAAU;AACV,OAAO,EACL,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,YAAY,GACb,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/molecules/data-viz/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY;AACZ,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAQxB,YAAY;AACZ,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAWxB,aAAa;AACb,OAAO,EACL,SAAS,EACT,SAAS,EACT,sBAAsB,EACtB,sBAAsB,EACtB,aAAa,EACb,WAAW,GACZ,MAAM,iBAAiB,CAAC;AAUzB,QAAQ;AACR,OAAO,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,uBAAuB,EACvB,aAAa,EACb,YAAY,GACb,MAAM,YAAY,CAAC;AAUpB,UAAU;AACV,OAAO,EACL,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,YAAY,GACb,MAAM,cAAc,CAAC;AAetB,SAAS;AACT,OAAO,EACL,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAUrB,eAAe;AACf,OAAO,EACL,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAS3B,cAAc;AACd,OAAO,EACL,UAAU,GACX,MAAM,kBAAkB,CAAC;AAQ1B,cAAc;AACd,OAAO,EACL,UAAU,GACX,MAAM,kBAAkB,CAAC;AAQ1B,eAAe;AACf,OAAO,EACL,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAQ3B,cAAc;AACd,OAAO,EACL,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAW1B,oBAAoB;AACpB,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Legend Component - Reusable legend for charts with color indicators
3
+ *
4
+ * Features:
5
+ * - Flexible positioning (top, bottom, right, left)
6
+ * - Color indicators (● or ■ symbols)
7
+ * - Optional interactivity (click to toggle visibility)
8
+ * - Series grouping
9
+ * - Custom styling
10
+ */
11
+ import type { VNode, ColorValue } from '../../utils/types.js';
12
+ export interface LegendItem {
13
+ /** Item label/name */
14
+ label: string;
15
+ /** Color indicator */
16
+ color?: ColorValue;
17
+ /** Optional symbol to use instead of default */
18
+ symbol?: string;
19
+ /** Whether item is visible (for interactive legends) */
20
+ visible?: boolean;
21
+ /** Optional metadata */
22
+ metadata?: Record<string, unknown>;
23
+ }
24
+ export type LegendPosition = 'top' | 'bottom' | 'right' | 'left';
25
+ export interface LegendOptions {
26
+ /** Items to display */
27
+ items: LegendItem[];
28
+ /** Legend position */
29
+ position?: LegendPosition;
30
+ /** Show legend indicator symbols */
31
+ showSymbols?: boolean;
32
+ /** Symbol type */
33
+ symbolType?: 'circle' | 'square' | 'line';
34
+ /** Enable interactivity (click to toggle) */
35
+ interactive?: boolean;
36
+ /** Gap between items */
37
+ gap?: number;
38
+ /** On item click (for interactive legends) */
39
+ onItemClick?: (index: number, label: string) => void;
40
+ /** Is legend active (for input handling) */
41
+ isActive?: boolean;
42
+ }
43
+ export interface LegendState {
44
+ visibleItems: () => boolean[];
45
+ toggleItem: (index: number) => void;
46
+ toggleAll: () => void;
47
+ showItem: (index: number) => void;
48
+ hideItem: (index: number) => void;
49
+ getVisibleItems: () => LegendItem[];
50
+ }
51
+ /**
52
+ * Create interactive legend state
53
+ */
54
+ export declare function createLegend(options: LegendOptions): LegendState;
55
+ export interface LegendProps extends LegendOptions {
56
+ state?: LegendState;
57
+ }
58
+ /**
59
+ * Legend - Reusable legend component for charts
60
+ *
61
+ * @example
62
+ * // Basic legend
63
+ * Legend({
64
+ * items: [
65
+ * { label: 'Series 1', color: 'cyan' },
66
+ * { label: 'Series 2', color: 'green' },
67
+ * ],
68
+ * position: 'bottom',
69
+ * })
70
+ *
71
+ * @example
72
+ * // Interactive legend with state management
73
+ * const legendState = createLegend({ items: [...] })
74
+ * Legend({
75
+ * items: [...],
76
+ * interactive: true,
77
+ * state: legendState,
78
+ * onItemClick: (idx, label) => console.log(`Clicked: ${label}`),
79
+ * })
80
+ */
81
+ export declare function Legend(props: LegendProps): VNode;
82
+ //# sourceMappingURL=legend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legend.d.ts","sourceRoot":"","sources":["../../../src/molecules/data-viz/legend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAO9D,MAAM,WAAW,UAAU;IACzB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,uBAAuB;IACvB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,oCAAoC;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB;IAClB,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC1C,6CAA6C;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAMD,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,OAAO,EAAE,CAAC;IAC9B,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,eAAe,EAAE,MAAM,UAAU,EAAE,CAAC;CACrC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,WAAW,CA+ChE;AA+BD,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,CA0EhD"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Legend Component - Reusable legend for charts with color indicators
3
+ *
4
+ * Features:
5
+ * - Flexible positioning (top, bottom, right, left)
6
+ * - Color indicators (● or ■ symbols)
7
+ * - Optional interactivity (click to toggle visibility)
8
+ * - Series grouping
9
+ * - Custom styling
10
+ */
11
+ import { Box, Text } from '../../primitives/nodes.js';
12
+ import { createSignal } from '../../primitives/signal.js';
13
+ /**
14
+ * Create interactive legend state
15
+ */
16
+ export function createLegend(options) {
17
+ const [visibleItems, setVisibleItems] = createSignal(options.items.map((item) => item.visible ?? true));
18
+ const toggleItem = (index) => {
19
+ setVisibleItems((items) => {
20
+ const newItems = [...items];
21
+ newItems[index] = !newItems[index];
22
+ return newItems;
23
+ });
24
+ options.onItemClick?.(index, options.items[index].label);
25
+ };
26
+ const toggleAll = () => {
27
+ const allVisible = visibleItems().every((v) => v);
28
+ setVisibleItems(() => options.items.map(() => !allVisible));
29
+ };
30
+ const showItem = (index) => {
31
+ setVisibleItems((items) => {
32
+ const newItems = [...items];
33
+ newItems[index] = true;
34
+ return newItems;
35
+ });
36
+ };
37
+ const hideItem = (index) => {
38
+ setVisibleItems((items) => {
39
+ const newItems = [...items];
40
+ newItems[index] = false;
41
+ return newItems;
42
+ });
43
+ };
44
+ const getVisibleItems = () => {
45
+ return options.items.filter((_, i) => visibleItems()[i]);
46
+ };
47
+ return {
48
+ visibleItems,
49
+ toggleItem,
50
+ toggleAll,
51
+ showItem,
52
+ hideItem,
53
+ getVisibleItems,
54
+ };
55
+ }
56
+ // =============================================================================
57
+ // Rendering
58
+ // =============================================================================
59
+ /**
60
+ * Get symbol for legend item
61
+ */
62
+ function getSymbol(symbolType = 'circle', customSymbol) {
63
+ if (customSymbol)
64
+ return customSymbol;
65
+ switch (symbolType) {
66
+ case 'circle':
67
+ return '●';
68
+ case 'square':
69
+ return '■';
70
+ case 'line':
71
+ return '─';
72
+ default:
73
+ return '●';
74
+ }
75
+ }
76
+ /**
77
+ * Legend - Reusable legend component for charts
78
+ *
79
+ * @example
80
+ * // Basic legend
81
+ * Legend({
82
+ * items: [
83
+ * { label: 'Series 1', color: 'cyan' },
84
+ * { label: 'Series 2', color: 'green' },
85
+ * ],
86
+ * position: 'bottom',
87
+ * })
88
+ *
89
+ * @example
90
+ * // Interactive legend with state management
91
+ * const legendState = createLegend({ items: [...] })
92
+ * Legend({
93
+ * items: [...],
94
+ * interactive: true,
95
+ * state: legendState,
96
+ * onItemClick: (idx, label) => console.log(`Clicked: ${label}`),
97
+ * })
98
+ */
99
+ export function Legend(props) {
100
+ const { items, position = 'bottom', showSymbols = true, symbolType = 'circle', interactive = false, gap = position === 'right' ? 0 : 2, state: externalState, } = props;
101
+ const state = externalState || (interactive ? createLegend(props) : undefined);
102
+ const visibleItems = state?.visibleItems() ?? items.map(() => true);
103
+ // Build legend items
104
+ const legendItems = items.map((item, idx) => {
105
+ const isVisible = visibleItems[idx];
106
+ const symbol = getSymbol(symbolType, item.symbol);
107
+ const textColor = item.color ?? 'gray';
108
+ // Build item content
109
+ const itemContent = [];
110
+ if (showSymbols) {
111
+ itemContent.push(Text({
112
+ color: textColor,
113
+ dim: !isVisible,
114
+ }, symbol));
115
+ }
116
+ itemContent.push(Text({
117
+ color: 'gray',
118
+ dim: !isVisible,
119
+ }, item.label));
120
+ // Item wrapper with optional click handler
121
+ return Box({
122
+ flexDirection: 'row',
123
+ gap: showSymbols ? 1 : 0,
124
+ paddingRight: interactive ? 1 : 0,
125
+ paddingLeft: interactive ? 1 : 0,
126
+ // Visual feedback for interactive mode
127
+ ...(interactive && isVisible === false
128
+ ? {
129
+ backgroundColor: 'gray',
130
+ }
131
+ : {}),
132
+ }, ...itemContent);
133
+ });
134
+ // Layout based on position
135
+ const isVertical = position === 'right' || position === 'left';
136
+ const flexDirection = isVertical ? 'column' : 'row';
137
+ return Box({
138
+ flexDirection,
139
+ gap,
140
+ }, ...legendItems);
141
+ }
142
+ // =============================================================================
143
+ // Exports
144
+ // =============================================================================
145
+ // Types are exported above via export type
146
+ //# sourceMappingURL=legend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legend.js","sourceRoot":"","sources":["../../../src/molecules/data-viz/legend.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"line-chart.d.ts","sourceRoot":"","sources":["../../../src/molecules/data-viz/line-chart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"line-chart.d.ts","sourceRoot":"","sources":["../../../src/molecules/data-viz/line-chart.ts"],"names":[],"mappings":"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"}
@@ -334,13 +334,20 @@ export function LineChart(options) {
334
334
  'magenta',
335
335
  'blue',
336
336
  'red',
337
+ 'white',
338
+ 'brightCyan',
337
339
  ];
338
340
  if (series.length === 0 || series.every((s) => s.data.length === 0)) {
339
341
  return Text({ color: 'gray', dim: true }, 'No data');
340
342
  }
341
343
  const bounds = calculateBounds(series, xAxis, yAxis);
342
- // Render chart canvas
343
- const chartLines = renderLineChartStrings(series, {
344
+ // Assign colors to series if not specified
345
+ const seriesWithColors = series.map((s, idx) => ({
346
+ ...s,
347
+ color: s.color ?? defaultColors[idx % defaultColors.length],
348
+ }));
349
+ // Render chart canvas with multi-series colors
350
+ const { lines: chartLines, colors: lineColors } = renderMultiSeriesChart(seriesWithColors, {
344
351
  width,
345
352
  height,
346
353
  xAxis,
@@ -349,7 +356,14 @@ export function LineChart(options) {
349
356
  });
350
357
  // Build Y-axis labels
351
358
  const yTicks = yAxis.ticks ?? 5;
352
- const yLabelWidth = 6;
359
+ // Calculate max Y label width dynamically from actual formatted labels
360
+ let yLabelWidth = 6; // minimum width
361
+ for (let i = 0; i <= yTicks; i++) {
362
+ const value = bounds.yMax - (i / yTicks) * (bounds.yMax - bounds.yMin);
363
+ const labelLen = formatTick(value, yAxis.formatter).length;
364
+ if (labelLen > yLabelWidth)
365
+ yLabelWidth = labelLen;
366
+ }
353
367
  const yLabels = [];
354
368
  for (let i = 0; i <= yTicks; i++) {
355
369
  const value = bounds.yMax - (i / yTicks) * (bounds.yMax - bounds.yMin);
@@ -368,20 +382,42 @@ export function LineChart(options) {
368
382
  const spacing = Math.floor(width / xTicks);
369
383
  xLabels.push(Box({ width: i === xTicks ? undefined : spacing }, Text({ color: 'gray', dim: true }, i === 0 ? label : label.padStart(spacing))));
370
384
  }
371
- // Render chart lines with colors
385
+ // Render chart lines with per-character colors
372
386
  const chartNodes = chartLines.map((line, lineIdx) => {
373
- // For braille mode, we need to color by series
374
- // For simplicity, use first series color for now
375
- const primaryColor = series[0]?.color ?? defaultColors[0];
376
- return Text({ color: primaryColor }, line);
387
+ const charColors = lineColors[lineIdx] ?? [];
388
+ // Build colored text segments for this line
389
+ if (charColors.length === 0) {
390
+ // No colors for this line (empty line)
391
+ return Text({}, line);
392
+ }
393
+ // Group consecutive characters with same color
394
+ const segments = [];
395
+ let currentColor = charColors[0];
396
+ let currentText = line[0] ?? '';
397
+ for (let i = 1; i < line.length; i++) {
398
+ const nextColor = charColors[i];
399
+ if (nextColor === currentColor) {
400
+ currentText += line[i];
401
+ }
402
+ else {
403
+ segments.push({ text: currentText, color: currentColor });
404
+ currentColor = nextColor;
405
+ currentText = line[i] ?? '';
406
+ }
407
+ }
408
+ if (currentText) {
409
+ segments.push({ text: currentText, color: currentColor });
410
+ }
411
+ // Render segments as Box with multiple Text elements
412
+ const textElements = segments.map((seg) => Text({ color: seg.color }, seg.text));
413
+ return Box({ flexDirection: 'row' }, ...textElements);
377
414
  });
378
415
  // Build legend
379
- const shouldShowLegend = showLegend ?? series.length > 1;
416
+ const shouldShowLegend = showLegend ?? seriesWithColors.length > 1;
380
417
  let legendNode = null;
381
418
  if (shouldShowLegend) {
382
- const legendItems = series.map((s, i) => {
383
- const color = s.color ?? defaultColors[i % defaultColors.length];
384
- return Box({ flexDirection: 'row', gap: 1 }, Text({ color }, '●'), Text({ color: 'gray' }, s.name));
419
+ const legendItems = seriesWithColors.map((s) => {
420
+ return Box({ flexDirection: 'row', gap: 1 }, Text({ color: s.color }, '●'), Text({ color: 'gray' }, s.name));
385
421
  });
386
422
  legendNode = Box({
387
423
  flexDirection: legendPosition === 'right' ? 'column' : 'row',
@@ -1 +1 @@
1
- {"version":3,"file":"line-chart.js","sourceRoot":"","sources":["../../../src/molecules/data-viz/line-chart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"line-chart.js","sourceRoot":"","sources":["../../../src/molecules/data-viz/line-chart.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * RadarChart - Multi-dimensional radar (spider) chart
3
+ *
4
+ * Features:
5
+ * - 3-8 dimensional comparison
6
+ * - Multiple series overlay
7
+ * - Customizable axis ranges
8
+ * - Text-based area fill
9
+ */
10
+ import type { VNode, ColorValue } from '../../utils/types.js';
11
+ export interface RadarAxis {
12
+ /** Axis name/label */
13
+ name: string;
14
+ /** Minimum value */
15
+ min?: number;
16
+ /** Maximum value */
17
+ max?: number;
18
+ /** Optional formatter */
19
+ formatter?: (value: number) => string;
20
+ }
21
+ export interface RadarSeries {
22
+ /** Series name (for legend) */
23
+ name: string;
24
+ /** Values (one per axis) */
25
+ values: number[];
26
+ /** Color */
27
+ color?: ColorValue;
28
+ }
29
+ export interface RadarChartOptions {
30
+ /** Axes definitions */
31
+ axes: RadarAxis[];
32
+ /** Data series */
33
+ series: RadarSeries[];
34
+ /** Chart size */
35
+ size?: number;
36
+ /** Show legend */
37
+ showLegend?: boolean;
38
+ /** Title */
39
+ title?: string;
40
+ }
41
+ /**
42
+ * RadarChart - Multi-dimensional comparison
43
+ *
44
+ * @example
45
+ * RadarChart({
46
+ * axes: [
47
+ * { name: 'Speed', max: 100 },
48
+ * { name: 'Power', max: 100 },
49
+ * { name: 'Range', max: 100 },
50
+ * { name: 'Efficiency', max: 100 },
51
+ * { name: 'Durability', max: 100 },
52
+ * ],
53
+ * series: [
54
+ * { name: 'Model A', values: [80, 75, 70, 85, 80], color: 'cyan' },
55
+ * { name: 'Model B', values: [70, 85, 80, 75, 90], color: 'green' },
56
+ * ],
57
+ * size: 20,
58
+ * })
59
+ */
60
+ export declare function RadarChart(props: RadarChartOptions): VNode;
61
+ //# sourceMappingURL=radar-chart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radar-chart.d.ts","sourceRoot":"","sources":["../../../src/molecules/data-viz/radar-chart.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAO9D,MAAM,WAAW,SAAS;IACxB,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yBAAyB;IACzB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY;IACZ,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,kBAAkB;IAClB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,iBAAiB;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,iBAAiB,GAAG,KAAK,CA4F1D"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * RadarChart - Multi-dimensional radar (spider) chart
3
+ *
4
+ * Features:
5
+ * - 3-8 dimensional comparison
6
+ * - Multiple series overlay
7
+ * - Customizable axis ranges
8
+ * - Text-based area fill
9
+ */
10
+ import { Box, Text } from '../../primitives/nodes.js';
11
+ // =============================================================================
12
+ // Component
13
+ // =============================================================================
14
+ /**
15
+ * RadarChart - Multi-dimensional comparison
16
+ *
17
+ * @example
18
+ * RadarChart({
19
+ * axes: [
20
+ * { name: 'Speed', max: 100 },
21
+ * { name: 'Power', max: 100 },
22
+ * { name: 'Range', max: 100 },
23
+ * { name: 'Efficiency', max: 100 },
24
+ * { name: 'Durability', max: 100 },
25
+ * ],
26
+ * series: [
27
+ * { name: 'Model A', values: [80, 75, 70, 85, 80], color: 'cyan' },
28
+ * { name: 'Model B', values: [70, 85, 80, 75, 90], color: 'green' },
29
+ * ],
30
+ * size: 20,
31
+ * })
32
+ */
33
+ export function RadarChart(props) {
34
+ const { axes, series, size = 20, showLegend = true, title, } = props;
35
+ if (axes.length < 3 || axes.length > 8) {
36
+ return Text({ color: 'red' }, 'Radar chart requires 3-8 axes');
37
+ }
38
+ const numAxes = axes.length;
39
+ const defaultColors = ['cyan', 'green', 'yellow', 'magenta', 'blue', 'red'];
40
+ // Calculate bounds for each axis
41
+ const bounds = axes.map((axis) => ({
42
+ min: axis.min ?? 0,
43
+ max: axis.max ?? 100,
44
+ }));
45
+ // Calculate axis positions (radial)
46
+ const angleStep = (2 * Math.PI) / numAxes;
47
+ const axisPositions = axes.map((_, i) => ({
48
+ angle: i * angleStep,
49
+ x: Math.cos(i * angleStep - Math.PI / 2),
50
+ y: Math.sin(i * angleStep - Math.PI / 2),
51
+ }));
52
+ // Build text-based display
53
+ const displayLines = [];
54
+ // Title
55
+ if (title) {
56
+ displayLines.push(Box({ marginBottom: 1 }, Text({ color: 'white', bold: true }, title)));
57
+ }
58
+ // Axis labels and values
59
+ const rows = [];
60
+ for (let i = 0; i < numAxes; i++) {
61
+ const axis = axes[i];
62
+ const rowItems = [];
63
+ // Axis name
64
+ rowItems.push(Text({ color: 'gray', dim: true }, axis.name.padEnd(12)));
65
+ // Values from each series
66
+ for (let s = 0; s < series.length; s++) {
67
+ const serie = series[s];
68
+ const value = serie.values[i] ?? 0;
69
+ const color = serie.color ?? defaultColors[s % defaultColors.length];
70
+ const formattedValue = axis.formatter ? axis.formatter(value) : value.toFixed(0);
71
+ rowItems.push(Box({ marginRight: 2 }, Text({ color }, formattedValue.padStart(8))));
72
+ }
73
+ rows.push(Box({ flexDirection: 'row', marginBottom: 0 }, ...rowItems));
74
+ }
75
+ displayLines.push(Box({ flexDirection: 'column' }, ...rows));
76
+ // Legend
77
+ if (showLegend) {
78
+ const legendItems = series.map((s, i) => {
79
+ const color = s.color ?? defaultColors[i % defaultColors.length];
80
+ return Box({ flexDirection: 'row', gap: 1 }, Text({ color }, '●'), Text({ color: 'gray' }, s.name));
81
+ });
82
+ displayLines.push(Box({ flexDirection: 'row', gap: 2, marginTop: 1 }, ...legendItems));
83
+ }
84
+ return Box({ flexDirection: 'column' }, ...displayLines);
85
+ }
86
+ //# sourceMappingURL=radar-chart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radar-chart.js","sourceRoot":"","sources":["../../../src/molecules/data-viz/radar-chart.ts"],"names":[],"mappings":"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"}