@cronus-ui/ui 0.6.0

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 (717) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +262 -0
  3. package/dist/charts/animation.d.ts +11 -0
  4. package/dist/charts/animation.js +29 -0
  5. package/dist/charts/area-chart-loading.d.ts +34 -0
  6. package/dist/charts/area-chart-loading.js +22 -0
  7. package/dist/charts/area-chart.d.ts +48 -0
  8. package/dist/charts/area-chart.js +57 -0
  9. package/dist/charts/area-gradient-defs.d.ts +20 -0
  10. package/dist/charts/area-gradient-defs.js +15 -0
  11. package/dist/charts/area.d.ts +76 -0
  12. package/dist/charts/area.js +104 -0
  13. package/dist/charts/background.d.ts +27 -0
  14. package/dist/charts/background.js +68 -0
  15. package/dist/charts/bar-chart-loading.d.ts +17 -0
  16. package/dist/charts/bar-chart-loading.js +14 -0
  17. package/dist/charts/bar-chart.d.ts +55 -0
  18. package/dist/charts/bar-chart.js +432 -0
  19. package/dist/charts/bar-depth-geometry.d.ts +33 -0
  20. package/dist/charts/bar-depth-geometry.js +38 -0
  21. package/dist/charts/bar-depth.d.ts +157 -0
  22. package/dist/charts/bar-depth.js +586 -0
  23. package/dist/charts/bar-squares-layout.d.ts +28 -0
  24. package/dist/charts/bar-squares-layout.js +47 -0
  25. package/dist/charts/bar-squares.d.ts +49 -0
  26. package/dist/charts/bar-squares.js +207 -0
  27. package/dist/charts/bar-x-axis.d.ts +14 -0
  28. package/dist/charts/bar-x-axis.js +73 -0
  29. package/dist/charts/bar-y-axis.d.ts +12 -0
  30. package/dist/charts/bar-y-axis.js +64 -0
  31. package/dist/charts/bar.d.ts +41 -0
  32. package/dist/charts/bar.js +208 -0
  33. package/dist/charts/candlestick-chart.d.ts +46 -0
  34. package/dist/charts/candlestick-chart.js +203 -0
  35. package/dist/charts/candlestick.d.ts +24 -0
  36. package/dist/charts/candlestick.js +139 -0
  37. package/dist/charts/chart-brush-handle.d.ts +15 -0
  38. package/dist/charts/chart-brush-handle.js +47 -0
  39. package/dist/charts/chart-brush-layout.d.ts +27 -0
  40. package/dist/charts/chart-brush-layout.js +42 -0
  41. package/dist/charts/chart-brush-selection-overlay.d.ts +19 -0
  42. package/dist/charts/chart-brush-selection-overlay.js +44 -0
  43. package/dist/charts/chart-brush-track-overlay.d.ts +23 -0
  44. package/dist/charts/chart-brush-track-overlay.js +65 -0
  45. package/dist/charts/chart-brush.d.ts +32 -0
  46. package/dist/charts/chart-brush.js +116 -0
  47. package/dist/charts/chart-center-typography.d.ts +12 -0
  48. package/dist/charts/chart-center-typography.js +12 -0
  49. package/dist/charts/chart-child-passthrough.d.ts +17 -0
  50. package/dist/charts/chart-child-passthrough.js +74 -0
  51. package/dist/charts/chart-config-context.d.ts +26 -0
  52. package/dist/charts/chart-config-context.js +47 -0
  53. package/dist/charts/chart-context.d.ts +199 -0
  54. package/dist/charts/chart-context.js +201 -0
  55. package/dist/charts/chart-defs.d.ts +13 -0
  56. package/dist/charts/chart-defs.js +49 -0
  57. package/dist/charts/chart-formatters.d.ts +10 -0
  58. package/dist/charts/chart-formatters.js +28 -0
  59. package/dist/charts/chart-legend-hover.d.ts +13 -0
  60. package/dist/charts/chart-legend-hover.js +18 -0
  61. package/dist/charts/chart-legend.d.ts +55 -0
  62. package/dist/charts/chart-legend.js +30 -0
  63. package/dist/charts/chart-loading-label.d.ts +10 -0
  64. package/dist/charts/chart-loading-label.js +21 -0
  65. package/dist/charts/chart-phase.d.ts +31 -0
  66. package/dist/charts/chart-phase.js +21 -0
  67. package/dist/charts/chart-reveal-clip.d.ts +24 -0
  68. package/dist/charts/chart-reveal-clip.js +24 -0
  69. package/dist/charts/chart-scale.d.ts +12 -0
  70. package/dist/charts/chart-scale.js +17 -0
  71. package/dist/charts/chart-stat-flow.d.ts +36 -0
  72. package/dist/charts/chart-stat-flow.js +23 -0
  73. package/dist/charts/choropleth/choropleth-chart.d.ts +43 -0
  74. package/dist/charts/choropleth/choropleth-chart.js +218 -0
  75. package/dist/charts/choropleth/choropleth-context.d.ts +86 -0
  76. package/dist/charts/choropleth/choropleth-context.js +106 -0
  77. package/dist/charts/choropleth/choropleth-feature.d.ts +13 -0
  78. package/dist/charts/choropleth/choropleth-feature.js +125 -0
  79. package/dist/charts/choropleth/choropleth-graticule.d.ts +11 -0
  80. package/dist/charts/choropleth/choropleth-graticule.js +12 -0
  81. package/dist/charts/choropleth/choropleth-tooltip.d.ts +31 -0
  82. package/dist/charts/choropleth/choropleth-tooltip.js +50 -0
  83. package/dist/charts/choropleth/index.d.ts +7 -0
  84. package/dist/charts/choropleth/index.js +6 -0
  85. package/dist/charts/composed-chart.d.ts +36 -0
  86. package/dist/charts/composed-chart.js +152 -0
  87. package/dist/charts/dash-tail-stroke.d.ts +18 -0
  88. package/dist/charts/dash-tail-stroke.js +13 -0
  89. package/dist/charts/decimate-time-series.d.ts +10 -0
  90. package/dist/charts/decimate-time-series.js +112 -0
  91. package/dist/charts/fade-edges.d.ts +34 -0
  92. package/dist/charts/fade-edges.js +35 -0
  93. package/dist/charts/filter-data-by-x-domain.d.ts +5 -0
  94. package/dist/charts/filter-data-by-x-domain.js +42 -0
  95. package/dist/charts/funnel-chart.d.ts +91 -0
  96. package/dist/charts/funnel-chart.js +302 -0
  97. package/dist/charts/gauge-label-layout.d.ts +22 -0
  98. package/dist/charts/gauge-label-layout.js +44 -0
  99. package/dist/charts/gauge.d.ts +56 -0
  100. package/dist/charts/gauge.js +307 -0
  101. package/dist/charts/generate-chart-skeleton-data.d.ts +16 -0
  102. package/dist/charts/generate-chart-skeleton-data.js +25 -0
  103. package/dist/charts/grid.d.ts +58 -0
  104. package/dist/charts/grid.js +80 -0
  105. package/dist/charts/heatmap/generate-heatmap-skeleton-data.d.ts +4 -0
  106. package/dist/charts/heatmap/generate-heatmap-skeleton-data.js +12 -0
  107. package/dist/charts/heatmap/heatmap-animation.d.ts +41 -0
  108. package/dist/charts/heatmap/heatmap-animation.js +85 -0
  109. package/dist/charts/heatmap/heatmap-cells.d.ts +21 -0
  110. package/dist/charts/heatmap/heatmap-cells.js +265 -0
  111. package/dist/charts/heatmap/heatmap-chart-loading.d.ts +21 -0
  112. package/dist/charts/heatmap/heatmap-chart-loading.js +14 -0
  113. package/dist/charts/heatmap/heatmap-chart.d.ts +80 -0
  114. package/dist/charts/heatmap/heatmap-chart.js +275 -0
  115. package/dist/charts/heatmap/heatmap-colors.d.ts +70 -0
  116. package/dist/charts/heatmap/heatmap-colors.js +113 -0
  117. package/dist/charts/heatmap/heatmap-context.d.ts +109 -0
  118. package/dist/charts/heatmap/heatmap-context.js +69 -0
  119. package/dist/charts/heatmap/heatmap-legend-gradient.d.ts +20 -0
  120. package/dist/charts/heatmap/heatmap-legend-gradient.js +44 -0
  121. package/dist/charts/heatmap/heatmap-legend-swatch.d.ts +8 -0
  122. package/dist/charts/heatmap/heatmap-legend-swatch.js +26 -0
  123. package/dist/charts/heatmap/heatmap-legend.d.ts +41 -0
  124. package/dist/charts/heatmap/heatmap-legend.js +68 -0
  125. package/dist/charts/heatmap/heatmap-pattern-defs.d.ts +5 -0
  126. package/dist/charts/heatmap/heatmap-pattern-defs.js +25 -0
  127. package/dist/charts/heatmap/heatmap-resolve-separator.d.ts +8 -0
  128. package/dist/charts/heatmap/heatmap-resolve-separator.js +82 -0
  129. package/dist/charts/heatmap/heatmap-separator.d.ts +63 -0
  130. package/dist/charts/heatmap/heatmap-separator.js +71 -0
  131. package/dist/charts/heatmap/heatmap-tooltip.d.ts +30 -0
  132. package/dist/charts/heatmap/heatmap-tooltip.js +20 -0
  133. package/dist/charts/heatmap/heatmap-utils.d.ts +175 -0
  134. package/dist/charts/heatmap/heatmap-utils.js +595 -0
  135. package/dist/charts/heatmap/heatmap-x-axis.d.ts +7 -0
  136. package/dist/charts/heatmap/heatmap-x-axis.js +54 -0
  137. package/dist/charts/heatmap/heatmap-y-axis.d.ts +14 -0
  138. package/dist/charts/heatmap/heatmap-y-axis.js +37 -0
  139. package/dist/charts/heatmap/index.d.ts +15 -0
  140. package/dist/charts/heatmap/index.js +15 -0
  141. package/dist/charts/heatmap/use-delayed-tooltip-data.d.ts +3 -0
  142. package/dist/charts/heatmap/use-delayed-tooltip-data.js +53 -0
  143. package/dist/charts/highlight-segment-bounds.d.ts +18 -0
  144. package/dist/charts/highlight-segment-bounds.js +36 -0
  145. package/dist/charts/highlight-segment.d.ts +22 -0
  146. package/dist/charts/highlight-segment.js +14 -0
  147. package/dist/charts/index.d.ts +106 -0
  148. package/dist/charts/index.js +133 -0
  149. package/dist/charts/indicator-fade.d.ts +15 -0
  150. package/dist/charts/indicator-fade.js +42 -0
  151. package/dist/charts/legend/index.d.ts +8 -0
  152. package/dist/charts/legend/index.js +10 -0
  153. package/dist/charts/legend/legend-context.d.ts +48 -0
  154. package/dist/charts/legend/legend-context.js +34 -0
  155. package/dist/charts/legend/legend-item.d.ts +12 -0
  156. package/dist/charts/legend/legend-item.js +11 -0
  157. package/dist/charts/legend/legend-label.d.ts +9 -0
  158. package/dist/charts/legend/legend-label.js +10 -0
  159. package/dist/charts/legend/legend-marker.d.ts +9 -0
  160. package/dist/charts/legend/legend-marker.js +11 -0
  161. package/dist/charts/legend/legend-progress.d.ts +13 -0
  162. package/dist/charts/legend/legend-progress.js +15 -0
  163. package/dist/charts/legend/legend-value.d.ts +17 -0
  164. package/dist/charts/legend/legend-value.js +11 -0
  165. package/dist/charts/legend/legend.d.ts +23 -0
  166. package/dist/charts/legend/legend.js +43 -0
  167. package/dist/charts/line-chart-loading.d.ts +34 -0
  168. package/dist/charts/line-chart-loading.js +22 -0
  169. package/dist/charts/line-chart.d.ts +46 -0
  170. package/dist/charts/line-chart.js +91 -0
  171. package/dist/charts/line-loading-pulse.d.ts +20 -0
  172. package/dist/charts/line-loading-pulse.js +124 -0
  173. package/dist/charts/line-loading-timing.d.ts +10 -0
  174. package/dist/charts/line-loading-timing.js +10 -0
  175. package/dist/charts/line-series-terminal-marker.d.ts +16 -0
  176. package/dist/charts/line-series-terminal-marker.js +46 -0
  177. package/dist/charts/line.d.ts +64 -0
  178. package/dist/charts/line.js +96 -0
  179. package/dist/charts/live-line-chart.d.ts +35 -0
  180. package/dist/charts/live-line-chart.js +374 -0
  181. package/dist/charts/live-line.d.ts +39 -0
  182. package/dist/charts/live-line.js +78 -0
  183. package/dist/charts/live-x-axis.d.ts +12 -0
  184. package/dist/charts/live-x-axis.js +85 -0
  185. package/dist/charts/live-y-axis.d.ts +16 -0
  186. package/dist/charts/live-y-axis.js +137 -0
  187. package/dist/charts/loading-sweep.d.ts +66 -0
  188. package/dist/charts/loading-sweep.js +174 -0
  189. package/dist/charts/markers/chart-markers.d.ts +25 -0
  190. package/dist/charts/markers/chart-markers.js +87 -0
  191. package/dist/charts/markers/index.d.ts +3 -0
  192. package/dist/charts/markers/index.js +3 -0
  193. package/dist/charts/markers/marker-group.d.ts +88 -0
  194. package/dist/charts/markers/marker-group.js +171 -0
  195. package/dist/charts/motion-utils.d.ts +9 -0
  196. package/dist/charts/motion-utils.js +28 -0
  197. package/dist/charts/notch-gauge-shared.d.ts +49 -0
  198. package/dist/charts/notch-gauge-shared.js +103 -0
  199. package/dist/charts/path-stroke-utils.d.ts +20 -0
  200. package/dist/charts/path-stroke-utils.js +55 -0
  201. package/dist/charts/pattern-area.d.ts +21 -0
  202. package/dist/charts/pattern-area.js +19 -0
  203. package/dist/charts/pattern-preset.d.ts +26 -0
  204. package/dist/charts/pattern-preset.js +83 -0
  205. package/dist/charts/pie-center-shell.d.ts +24 -0
  206. package/dist/charts/pie-center-shell.js +109 -0
  207. package/dist/charts/pie-center.d.ts +46 -0
  208. package/dist/charts/pie-center.js +46 -0
  209. package/dist/charts/pie-chart.d.ts +50 -0
  210. package/dist/charts/pie-chart.js +248 -0
  211. package/dist/charts/pie-context.d.ts +74 -0
  212. package/dist/charts/pie-context.js +95 -0
  213. package/dist/charts/pie-slice.d.ts +28 -0
  214. package/dist/charts/pie-slice.js +180 -0
  215. package/dist/charts/profit-loss-legend-hover.d.ts +11 -0
  216. package/dist/charts/profit-loss-legend-hover.js +12 -0
  217. package/dist/charts/profit-loss-legend.d.ts +17 -0
  218. package/dist/charts/profit-loss-legend.js +18 -0
  219. package/dist/charts/profit-loss-line.d.ts +27 -0
  220. package/dist/charts/profit-loss-line.js +77 -0
  221. package/dist/charts/profit-loss-segments.d.ts +12 -0
  222. package/dist/charts/profit-loss-segments.js +86 -0
  223. package/dist/charts/projection-config.d.ts +11 -0
  224. package/dist/charts/projection-config.js +80 -0
  225. package/dist/charts/projection-line-end-marker.d.ts +15 -0
  226. package/dist/charts/projection-line-end-marker.js +27 -0
  227. package/dist/charts/projection-line.d.ts +40 -0
  228. package/dist/charts/projection-line.js +79 -0
  229. package/dist/charts/projection-utils.d.ts +46 -0
  230. package/dist/charts/projection-utils.js +253 -0
  231. package/dist/charts/radar-area.d.ts +17 -0
  232. package/dist/charts/radar-area.js +84 -0
  233. package/dist/charts/radar-axis.d.ts +14 -0
  234. package/dist/charts/radar-axis.js +24 -0
  235. package/dist/charts/radar-chart.d.ts +36 -0
  236. package/dist/charts/radar-chart.js +89 -0
  237. package/dist/charts/radar-context.d.ts +68 -0
  238. package/dist/charts/radar-context.js +87 -0
  239. package/dist/charts/radar-grid.d.ts +16 -0
  240. package/dist/charts/radar-grid.js +40 -0
  241. package/dist/charts/radar-labels.d.ts +16 -0
  242. package/dist/charts/radar-labels.js +29 -0
  243. package/dist/charts/reference-area-config.d.ts +10 -0
  244. package/dist/charts/reference-area-config.js +39 -0
  245. package/dist/charts/reference-area-geometry.d.ts +23 -0
  246. package/dist/charts/reference-area-geometry.js +68 -0
  247. package/dist/charts/reference-area-registration-context.d.ts +8 -0
  248. package/dist/charts/reference-area-registration-context.js +7 -0
  249. package/dist/charts/reference-area.d.ts +52 -0
  250. package/dist/charts/reference-area.js +101 -0
  251. package/dist/charts/ring-center.d.ts +46 -0
  252. package/dist/charts/ring-center.js +41 -0
  253. package/dist/charts/ring-chart.d.ts +41 -0
  254. package/dist/charts/ring-chart.js +212 -0
  255. package/dist/charts/ring-context.d.ts +66 -0
  256. package/dist/charts/ring-context.js +92 -0
  257. package/dist/charts/ring.d.ts +11 -0
  258. package/dist/charts/ring.js +104 -0
  259. package/dist/charts/sankey/index.d.ts +6 -0
  260. package/dist/charts/sankey/index.js +6 -0
  261. package/dist/charts/sankey/sankey-chart.d.ts +39 -0
  262. package/dist/charts/sankey/sankey-chart.js +117 -0
  263. package/dist/charts/sankey/sankey-context.d.ts +69 -0
  264. package/dist/charts/sankey/sankey-context.js +23 -0
  265. package/dist/charts/sankey/sankey-link.d.ts +26 -0
  266. package/dist/charts/sankey/sankey-link.js +155 -0
  267. package/dist/charts/sankey/sankey-node.d.ts +29 -0
  268. package/dist/charts/sankey/sankey-node.js +200 -0
  269. package/dist/charts/sankey/sankey-tooltip.d.ts +24 -0
  270. package/dist/charts/sankey/sankey-tooltip.js +70 -0
  271. package/dist/charts/scatter-chart-shell.d.ts +21 -0
  272. package/dist/charts/scatter-chart-shell.js +152 -0
  273. package/dist/charts/scatter-chart.d.ts +32 -0
  274. package/dist/charts/scatter-chart.js +56 -0
  275. package/dist/charts/scatter-svg.d.ts +6 -0
  276. package/dist/charts/scatter-svg.js +16 -0
  277. package/dist/charts/scatter.d.ts +21 -0
  278. package/dist/charts/scatter.js +30 -0
  279. package/dist/charts/segment.d.ts +26 -0
  280. package/dist/charts/segment.js +42 -0
  281. package/dist/charts/series-bar-layout.d.ts +18 -0
  282. package/dist/charts/series-bar-layout.js +31 -0
  283. package/dist/charts/series-bar.d.ts +20 -0
  284. package/dist/charts/series-bar.js +120 -0
  285. package/dist/charts/series-dash-tail-overlay.d.ts +17 -0
  286. package/dist/charts/series-dash-tail-overlay.js +39 -0
  287. package/dist/charts/series-highlight-layer.d.ts +23 -0
  288. package/dist/charts/series-highlight-layer.js +21 -0
  289. package/dist/charts/series-hover-dim.d.ts +29 -0
  290. package/dist/charts/series-hover-dim.js +26 -0
  291. package/dist/charts/series-markers.d.ts +14 -0
  292. package/dist/charts/series-markers.js +98 -0
  293. package/dist/charts/series-path-utils.d.ts +19 -0
  294. package/dist/charts/series-path-utils.js +60 -0
  295. package/dist/charts/series-point-marker.d.ts +48 -0
  296. package/dist/charts/series-point-marker.js +48 -0
  297. package/dist/charts/shimmering-text.d.ts +23 -0
  298. package/dist/charts/shimmering-text.js +31 -0
  299. package/dist/charts/static-chart-preview-context.d.ts +7 -0
  300. package/dist/charts/static-chart-preview-context.js +12 -0
  301. package/dist/charts/sunburst-breadcrumb.d.ts +16 -0
  302. package/dist/charts/sunburst-breadcrumb.js +26 -0
  303. package/dist/charts/sunburst-center.d.ts +5 -0
  304. package/dist/charts/sunburst-center.js +17 -0
  305. package/dist/charts/sunburst-chart.d.ts +30 -0
  306. package/dist/charts/sunburst-chart.js +263 -0
  307. package/dist/charts/sunburst-context.d.ts +61 -0
  308. package/dist/charts/sunburst-context.js +112 -0
  309. package/dist/charts/sunburst-data.d.ts +9 -0
  310. package/dist/charts/sunburst-data.js +2 -0
  311. package/dist/charts/sunburst-hint.d.ts +13 -0
  312. package/dist/charts/sunburst-hint.js +31 -0
  313. package/dist/charts/sunburst-labels.d.ts +9 -0
  314. package/dist/charts/sunburst-labels.js +63 -0
  315. package/dist/charts/sunburst-segment.d.ts +11 -0
  316. package/dist/charts/sunburst-segment.js +78 -0
  317. package/dist/charts/sunburst.d.ts +101 -0
  318. package/dist/charts/sunburst.js +396 -0
  319. package/dist/charts/time-series-chart-shell.d.ts +47 -0
  320. package/dist/charts/time-series-chart-shell.js +390 -0
  321. package/dist/charts/tooltip/chart-tooltip.d.ts +76 -0
  322. package/dist/charts/tooltip/chart-tooltip.js +150 -0
  323. package/dist/charts/tooltip/date-ticker.d.ts +11 -0
  324. package/dist/charts/tooltip/date-ticker.js +77 -0
  325. package/dist/charts/tooltip/index.d.ts +7 -0
  326. package/dist/charts/tooltip/index.js +7 -0
  327. package/dist/charts/tooltip/tooltip-box.d.ts +48 -0
  328. package/dist/charts/tooltip/tooltip-box.js +114 -0
  329. package/dist/charts/tooltip/tooltip-content.d.ts +18 -0
  330. package/dist/charts/tooltip/tooltip-content.js +9 -0
  331. package/dist/charts/tooltip/tooltip-dot.d.ts +28 -0
  332. package/dist/charts/tooltip/tooltip-dot.js +54 -0
  333. package/dist/charts/tooltip/tooltip-indicator.d.ts +45 -0
  334. package/dist/charts/tooltip/tooltip-indicator.js +65 -0
  335. package/dist/charts/use-animated-series-path.d.ts +19 -0
  336. package/dist/charts/use-animated-series-path.js +93 -0
  337. package/dist/charts/use-animated-y-domains.d.ts +14 -0
  338. package/dist/charts/use-animated-y-domains.js +150 -0
  339. package/dist/charts/use-chart-interaction.d.ts +41 -0
  340. package/dist/charts/use-chart-interaction.js +244 -0
  341. package/dist/charts/use-chart-phase-orchestrator.d.ts +23 -0
  342. package/dist/charts/use-chart-phase-orchestrator.js +139 -0
  343. package/dist/charts/use-enter-complete.d.ts +8 -0
  344. package/dist/charts/use-enter-complete.js +23 -0
  345. package/dist/charts/use-grid-shimmer.d.ts +16 -0
  346. package/dist/charts/use-grid-shimmer.js +63 -0
  347. package/dist/charts/use-highlight-segment.d.ts +14 -0
  348. package/dist/charts/use-highlight-segment.js +34 -0
  349. package/dist/charts/use-mount-progress.d.ts +4 -0
  350. package/dist/charts/use-mount-progress.js +22 -0
  351. package/dist/charts/use-scatter-chart-interaction.d.ts +35 -0
  352. package/dist/charts/use-scatter-chart-interaction.js +228 -0
  353. package/dist/charts/use-scheduled-tooltip.d.ts +9 -0
  354. package/dist/charts/use-scheduled-tooltip.js +76 -0
  355. package/dist/charts/visx-pattern.d.ts +19 -0
  356. package/dist/charts/visx-pattern.js +20 -0
  357. package/dist/charts/x-axis.d.ts +27 -0
  358. package/dist/charts/x-axis.js +415 -0
  359. package/dist/charts/y-axis-scales.d.ts +26 -0
  360. package/dist/charts/y-axis-scales.js +72 -0
  361. package/dist/charts/y-axis-ticks.d.ts +12 -0
  362. package/dist/charts/y-axis-ticks.js +24 -0
  363. package/dist/charts/y-axis.d.ts +22 -0
  364. package/dist/charts/y-axis.js +80 -0
  365. package/dist/charts/y-domain-utils.d.ts +27 -0
  366. package/dist/charts/y-domain-utils.js +88 -0
  367. package/dist/components/accordion.d.ts +6 -0
  368. package/dist/components/accordion.js +20 -0
  369. package/dist/components/alert-dialog.d.ts +18 -0
  370. package/dist/components/alert-dialog.js +41 -0
  371. package/dist/components/alert.d.ts +24 -0
  372. package/dist/components/alert.js +46 -0
  373. package/dist/components/animated-button.d.ts +5 -0
  374. package/dist/components/animated-button.js +16 -0
  375. package/dist/components/animated-list.d.ts +26 -0
  376. package/dist/components/animated-list.js +25 -0
  377. package/dist/components/animated-number.d.ts +67 -0
  378. package/dist/components/animated-number.js +131 -0
  379. package/dist/components/app-shell.d.ts +27 -0
  380. package/dist/components/app-shell.js +18 -0
  381. package/dist/components/area-chart.d.ts +11 -0
  382. package/dist/components/area-chart.js +12 -0
  383. package/dist/components/aspect-ratio.d.ts +16 -0
  384. package/dist/components/aspect-ratio.js +14 -0
  385. package/dist/components/aurora-background.d.ts +3 -0
  386. package/dist/components/aurora-background.js +8 -0
  387. package/dist/components/autocomplete.d.ts +55 -0
  388. package/dist/components/autocomplete.js +279 -0
  389. package/dist/components/avatar-group.d.ts +39 -0
  390. package/dist/components/avatar-group.js +50 -0
  391. package/dist/components/avatar.d.ts +5 -0
  392. package/dist/components/avatar.js +17 -0
  393. package/dist/components/badge.d.ts +10 -0
  394. package/dist/components/badge.js +35 -0
  395. package/dist/components/banner.d.ts +45 -0
  396. package/dist/components/banner.js +80 -0
  397. package/dist/components/bar-chart.d.ts +11 -0
  398. package/dist/components/bar-chart.js +9 -0
  399. package/dist/components/border-beam.d.ts +45 -0
  400. package/dist/components/border-beam.js +48 -0
  401. package/dist/components/breadcrumb.d.ts +12 -0
  402. package/dist/components/breadcrumb.js +35 -0
  403. package/dist/components/button-group.d.ts +7 -0
  404. package/dist/components/button-group.js +10 -0
  405. package/dist/components/button.d.ts +12 -0
  406. package/dist/components/button.js +39 -0
  407. package/dist/components/calendar.d.ts +7 -0
  408. package/dist/components/calendar.js +71 -0
  409. package/dist/components/candlestick-chart.d.ts +13 -0
  410. package/dist/components/candlestick-chart.js +66 -0
  411. package/dist/components/card-stack.d.ts +28 -0
  412. package/dist/components/card-stack.js +47 -0
  413. package/dist/components/card.d.ts +9 -0
  414. package/dist/components/card.js +32 -0
  415. package/dist/components/carousel.d.ts +82 -0
  416. package/dist/components/carousel.js +310 -0
  417. package/dist/components/chart.d.ts +100 -0
  418. package/dist/components/chart.js +210 -0
  419. package/dist/components/checkbox.d.ts +3 -0
  420. package/dist/components/checkbox.js +11 -0
  421. package/dist/components/chip.d.ts +80 -0
  422. package/dist/components/chip.js +186 -0
  423. package/dist/components/choropleth-chart.d.ts +12 -0
  424. package/dist/components/choropleth-chart.js +31 -0
  425. package/dist/components/click-spark.d.ts +19 -0
  426. package/dist/components/click-spark.js +51 -0
  427. package/dist/components/code-block.d.ts +13 -0
  428. package/dist/components/code-block.js +20 -0
  429. package/dist/components/code-tabs.d.ts +51 -0
  430. package/dist/components/code-tabs.js +150 -0
  431. package/dist/components/collapsible.d.ts +5 -0
  432. package/dist/components/collapsible.js +12 -0
  433. package/dist/components/color-picker.d.ts +30 -0
  434. package/dist/components/color-picker.js +300 -0
  435. package/dist/components/combobox.d.ts +33 -0
  436. package/dist/components/combobox.js +32 -0
  437. package/dist/components/command.d.ts +87 -0
  438. package/dist/components/command.js +44 -0
  439. package/dist/components/comparison-slider.d.ts +17 -0
  440. package/dist/components/comparison-slider.js +81 -0
  441. package/dist/components/composed-chart.d.ts +13 -0
  442. package/dist/components/composed-chart.js +22 -0
  443. package/dist/components/confetti.d.ts +21 -0
  444. package/dist/components/confetti.js +111 -0
  445. package/dist/components/confirmation-dialog.d.ts +46 -0
  446. package/dist/components/confirmation-dialog.js +102 -0
  447. package/dist/components/context-menu.d.ts +28 -0
  448. package/dist/components/context-menu.js +52 -0
  449. package/dist/components/copy-button.d.ts +13 -0
  450. package/dist/components/copy-button.js +72 -0
  451. package/dist/components/countdown.d.ts +58 -0
  452. package/dist/components/countdown.js +106 -0
  453. package/dist/components/credit-card-input.d.ts +62 -0
  454. package/dist/components/credit-card-input.js +211 -0
  455. package/dist/components/currency-input.d.ts +86 -0
  456. package/dist/components/currency-input.js +215 -0
  457. package/dist/components/data-table.d.ts +232 -0
  458. package/dist/components/data-table.js +359 -0
  459. package/dist/components/date-picker.d.ts +66 -0
  460. package/dist/components/date-picker.js +55 -0
  461. package/dist/components/date-range-picker.d.ts +59 -0
  462. package/dist/components/date-range-picker.js +59 -0
  463. package/dist/components/description-list.d.ts +84 -0
  464. package/dist/components/description-list.js +138 -0
  465. package/dist/components/dialog.d.ts +26 -0
  466. package/dist/components/dialog.js +35 -0
  467. package/dist/components/dock.d.ts +34 -0
  468. package/dist/components/dock.js +61 -0
  469. package/dist/components/dot-pattern.d.ts +24 -0
  470. package/dist/components/dot-pattern.js +19 -0
  471. package/dist/components/drawer.d.ts +22 -0
  472. package/dist/components/drawer.js +37 -0
  473. package/dist/components/dropdown-menu.d.ts +32 -0
  474. package/dist/components/dropdown-menu.js +56 -0
  475. package/dist/components/dynamic-island.d.ts +26 -0
  476. package/dist/components/dynamic-island.js +31 -0
  477. package/dist/components/empty.d.ts +7 -0
  478. package/dist/components/empty.js +24 -0
  479. package/dist/components/expandable-tabs.d.ts +24 -0
  480. package/dist/components/expandable-tabs.js +30 -0
  481. package/dist/components/fab.d.ts +35 -0
  482. package/dist/components/fab.js +36 -0
  483. package/dist/components/field.d.ts +6 -0
  484. package/dist/components/field.js +22 -0
  485. package/dist/components/file-dropzone.d.ts +28 -0
  486. package/dist/components/file-dropzone.js +59 -0
  487. package/dist/components/flickering-grid.d.ts +25 -0
  488. package/dist/components/flickering-grid.js +30 -0
  489. package/dist/components/flip-card.d.ts +70 -0
  490. package/dist/components/flip-card.js +117 -0
  491. package/dist/components/floating-label-input.d.ts +34 -0
  492. package/dist/components/floating-label-input.js +25 -0
  493. package/dist/components/form.d.ts +25 -0
  494. package/dist/components/form.js +68 -0
  495. package/dist/components/frame.d.ts +12 -0
  496. package/dist/components/frame.js +10 -0
  497. package/dist/components/funnel-chart.d.ts +11 -0
  498. package/dist/components/funnel-chart.js +16 -0
  499. package/dist/components/gauge-chart.d.ts +8 -0
  500. package/dist/components/gauge-chart.js +10 -0
  501. package/dist/components/glare-hover.d.ts +15 -0
  502. package/dist/components/glare-hover.js +64 -0
  503. package/dist/components/glass-card.d.ts +3 -0
  504. package/dist/components/glass-card.js +8 -0
  505. package/dist/components/gradient-border.d.ts +7 -0
  506. package/dist/components/gradient-border.js +8 -0
  507. package/dist/components/gradient-text.d.ts +6 -0
  508. package/dist/components/gradient-text.js +10 -0
  509. package/dist/components/grid-pattern.d.ts +23 -0
  510. package/dist/components/grid-pattern.js +18 -0
  511. package/dist/components/heatmap-chart.d.ts +6 -0
  512. package/dist/components/heatmap-chart.js +8 -0
  513. package/dist/components/heatmap.d.ts +28 -0
  514. package/dist/components/heatmap.js +41 -0
  515. package/dist/components/highlighter.d.ts +20 -0
  516. package/dist/components/highlighter.js +19 -0
  517. package/dist/components/hover-card.d.ts +5 -0
  518. package/dist/components/hover-card.js +12 -0
  519. package/dist/components/image-zoom.d.ts +47 -0
  520. package/dist/components/image-zoom.js +125 -0
  521. package/dist/components/input-group.d.ts +10 -0
  522. package/dist/components/input-group.js +12 -0
  523. package/dist/components/input-otp.d.ts +18 -0
  524. package/dist/components/input-otp.js +38 -0
  525. package/dist/components/input.d.ts +6 -0
  526. package/dist/components/input.js +8 -0
  527. package/dist/components/json-viewer.d.ts +43 -0
  528. package/dist/components/json-viewer.js +313 -0
  529. package/dist/components/kanban.d.ts +31 -0
  530. package/dist/components/kanban.js +143 -0
  531. package/dist/components/kbd.d.ts +3 -0
  532. package/dist/components/kbd.js +8 -0
  533. package/dist/components/label.d.ts +3 -0
  534. package/dist/components/label.js +9 -0
  535. package/dist/components/light-rays.d.ts +19 -0
  536. package/dist/components/light-rays.js +20 -0
  537. package/dist/components/lightbox.d.ts +24 -0
  538. package/dist/components/lightbox.js +68 -0
  539. package/dist/components/line-chart.d.ts +10 -0
  540. package/dist/components/line-chart.js +9 -0
  541. package/dist/components/live-line-chart.d.ts +12 -0
  542. package/dist/components/live-line-chart.js +42 -0
  543. package/dist/components/logo-carousel.d.ts +27 -0
  544. package/dist/components/logo-carousel.js +101 -0
  545. package/dist/components/magnetic.d.ts +44 -0
  546. package/dist/components/magnetic.js +172 -0
  547. package/dist/components/marquee.d.ts +71 -0
  548. package/dist/components/marquee.js +141 -0
  549. package/dist/components/masonry.d.ts +16 -0
  550. package/dist/components/masonry.js +84 -0
  551. package/dist/components/menubar.d.ts +33 -0
  552. package/dist/components/menubar.js +56 -0
  553. package/dist/components/meteors.d.ts +20 -0
  554. package/dist/components/meteors.js +39 -0
  555. package/dist/components/metric.d.ts +9 -0
  556. package/dist/components/metric.js +35 -0
  557. package/dist/components/mode-toggle.d.ts +32 -0
  558. package/dist/components/mode-toggle.js +40 -0
  559. package/dist/components/morphing-popover.d.ts +91 -0
  560. package/dist/components/morphing-popover.js +194 -0
  561. package/dist/components/motion-presets.d.ts +9 -0
  562. package/dist/components/motion-presets.js +20 -0
  563. package/dist/components/multi-select.d.ts +54 -0
  564. package/dist/components/multi-select.js +0 -0
  565. package/dist/components/navigation-menu.d.ts +12 -0
  566. package/dist/components/navigation-menu.js +42 -0
  567. package/dist/components/noise.d.ts +19 -0
  568. package/dist/components/noise.js +18 -0
  569. package/dist/components/notification-center.d.ts +68 -0
  570. package/dist/components/notification-center.js +57 -0
  571. package/dist/components/number-input.d.ts +45 -0
  572. package/dist/components/number-input.js +148 -0
  573. package/dist/components/orbit.d.ts +77 -0
  574. package/dist/components/orbit.js +100 -0
  575. package/dist/components/pagination.d.ts +16 -0
  576. package/dist/components/pagination.js +34 -0
  577. package/dist/components/particles.d.ts +18 -0
  578. package/dist/components/particles.js +92 -0
  579. package/dist/components/password-input.d.ts +16 -0
  580. package/dist/components/password-input.js +49 -0
  581. package/dist/components/phone-input.d.ts +67 -0
  582. package/dist/components/phone-input.js +225 -0
  583. package/dist/components/pie-chart.d.ts +12 -0
  584. package/dist/components/pie-chart.js +13 -0
  585. package/dist/components/pill-nav.d.ts +25 -0
  586. package/dist/components/pill-nav.js +66 -0
  587. package/dist/components/popover.d.ts +7 -0
  588. package/dist/components/popover.js +15 -0
  589. package/dist/components/profit-loss-chart.d.ts +10 -0
  590. package/dist/components/profit-loss-chart.js +8 -0
  591. package/dist/components/progress.d.ts +10 -0
  592. package/dist/components/progress.js +17 -0
  593. package/dist/components/progressive-blur.d.ts +24 -0
  594. package/dist/components/progressive-blur.js +43 -0
  595. package/dist/components/radar-chart.d.ts +9 -0
  596. package/dist/components/radar-chart.js +9 -0
  597. package/dist/components/radio-group.d.ts +4 -0
  598. package/dist/components/radio-group.js +15 -0
  599. package/dist/components/rating.d.ts +29 -0
  600. package/dist/components/rating.js +94 -0
  601. package/dist/components/resizable.d.ts +57 -0
  602. package/dist/components/resizable.js +73 -0
  603. package/dist/components/retro-grid.d.ts +25 -0
  604. package/dist/components/retro-grid.js +26 -0
  605. package/dist/components/reveal.d.ts +9 -0
  606. package/dist/components/reveal.js +14 -0
  607. package/dist/components/rich-text-editor.d.ts +28 -0
  608. package/dist/components/rich-text-editor.js +83 -0
  609. package/dist/components/ring-chart.d.ts +13 -0
  610. package/dist/components/ring-chart.js +16 -0
  611. package/dist/components/ripple.d.ts +25 -0
  612. package/dist/components/ripple.js +26 -0
  613. package/dist/components/sankey-chart.d.ts +16 -0
  614. package/dist/components/sankey-chart.js +8 -0
  615. package/dist/components/scatter-chart.d.ts +12 -0
  616. package/dist/components/scatter-chart.js +9 -0
  617. package/dist/components/scheduler.d.ts +50 -0
  618. package/dist/components/scheduler.js +93 -0
  619. package/dist/components/scramble-text.d.ts +39 -0
  620. package/dist/components/scramble-text.js +78 -0
  621. package/dist/components/scroll-area.d.ts +13 -0
  622. package/dist/components/scroll-area.js +14 -0
  623. package/dist/components/scroll-progress.d.ts +19 -0
  624. package/dist/components/scroll-progress.js +67 -0
  625. package/dist/components/segmented-control.d.ts +48 -0
  626. package/dist/components/segmented-control.js +222 -0
  627. package/dist/components/select.d.ts +12 -0
  628. package/dist/components/select.js +43 -0
  629. package/dist/components/separator.d.ts +3 -0
  630. package/dist/components/separator.js +9 -0
  631. package/dist/components/sheet.d.ts +25 -0
  632. package/dist/components/sheet.js +47 -0
  633. package/dist/components/shimmer.d.ts +3 -0
  634. package/dist/components/shimmer.js +8 -0
  635. package/dist/components/shiny-text.d.ts +20 -0
  636. package/dist/components/shiny-text.js +24 -0
  637. package/dist/components/sidebar.d.ts +92 -0
  638. package/dist/components/sidebar.js +290 -0
  639. package/dist/components/signature-pad.d.ts +44 -0
  640. package/dist/components/signature-pad.js +317 -0
  641. package/dist/components/skeleton.d.ts +3 -0
  642. package/dist/components/skeleton.js +8 -0
  643. package/dist/components/slider.d.ts +10 -0
  644. package/dist/components/slider.js +27 -0
  645. package/dist/components/sonner.d.ts +9 -0
  646. package/dist/components/sonner.js +17 -0
  647. package/dist/components/sparkles-text.d.ts +19 -0
  648. package/dist/components/sparkles-text.js +36 -0
  649. package/dist/components/sparkline.d.ts +22 -0
  650. package/dist/components/sparkline.js +100 -0
  651. package/dist/components/spinner.d.ts +10 -0
  652. package/dist/components/spinner.js +20 -0
  653. package/dist/components/spinning-text.d.ts +29 -0
  654. package/dist/components/spinning-text.js +40 -0
  655. package/dist/components/split-button.d.ts +71 -0
  656. package/dist/components/split-button.js +30 -0
  657. package/dist/components/spotlight-card.d.ts +11 -0
  658. package/dist/components/spotlight-card.js +63 -0
  659. package/dist/components/star-border.d.ts +19 -0
  660. package/dist/components/star-border.js +18 -0
  661. package/dist/components/status-dot.d.ts +60 -0
  662. package/dist/components/status-dot.js +76 -0
  663. package/dist/components/stepper.d.ts +98 -0
  664. package/dist/components/stepper.js +164 -0
  665. package/dist/components/sunburst-chart.d.ts +11 -0
  666. package/dist/components/sunburst-chart.js +45 -0
  667. package/dist/components/switch.d.ts +3 -0
  668. package/dist/components/switch.js +10 -0
  669. package/dist/components/table-of-contents.d.ts +64 -0
  670. package/dist/components/table-of-contents.js +0 -0
  671. package/dist/components/table.d.ts +10 -0
  672. package/dist/components/table.js +38 -0
  673. package/dist/components/tabs.d.ts +6 -0
  674. package/dist/components/tabs.js +22 -0
  675. package/dist/components/tags-input.d.ts +39 -0
  676. package/dist/components/tags-input.js +86 -0
  677. package/dist/components/terminal.d.ts +86 -0
  678. package/dist/components/terminal.js +182 -0
  679. package/dist/components/text-effect.d.ts +71 -0
  680. package/dist/components/text-effect.js +166 -0
  681. package/dist/components/textarea.d.ts +6 -0
  682. package/dist/components/textarea.js +8 -0
  683. package/dist/components/tilt-card.d.ts +30 -0
  684. package/dist/components/tilt-card.js +84 -0
  685. package/dist/components/time-picker.d.ts +58 -0
  686. package/dist/components/time-picker.js +245 -0
  687. package/dist/components/timeline.d.ts +81 -0
  688. package/dist/components/timeline.js +165 -0
  689. package/dist/components/toggle-group.d.ts +12 -0
  690. package/dist/components/toggle-group.js +23 -0
  691. package/dist/components/toggle.d.ts +12 -0
  692. package/dist/components/toggle.js +25 -0
  693. package/dist/components/toolbar.d.ts +14 -0
  694. package/dist/components/toolbar.js +89 -0
  695. package/dist/components/tooltip.d.ts +29 -0
  696. package/dist/components/tooltip.js +48 -0
  697. package/dist/components/tree-view.d.ts +45 -0
  698. package/dist/components/tree-view.js +197 -0
  699. package/dist/components/typing-text.d.ts +49 -0
  700. package/dist/components/typing-text.js +90 -0
  701. package/dist/components/usage-meter.d.ts +30 -0
  702. package/dist/components/usage-meter.js +90 -0
  703. package/dist/components/video-player.d.ts +48 -0
  704. package/dist/components/video-player.js +216 -0
  705. package/dist/components/word-rotate.d.ts +40 -0
  706. package/dist/components/word-rotate.js +34 -0
  707. package/dist/index.d.ts +306 -0
  708. package/dist/index.js +179 -0
  709. package/dist/lib/cn.d.ts +7 -0
  710. package/dist/lib/cn.js +10 -0
  711. package/dist/lib/demo-saas.d.ts +171 -0
  712. package/dist/lib/demo-saas.js +210 -0
  713. package/dist/lib/demo-store.d.ts +157 -0
  714. package/dist/lib/demo-store.js +353 -0
  715. package/dist/testing/index.d.ts +76 -0
  716. package/dist/testing/index.js +116 -0
  717. package/package.json +941 -0
@@ -0,0 +1,60 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ import { type HTMLAttributes } from "react";
3
+ declare const statusDotVariants: (props?: ({
4
+ status?: "info" | "success" | "warning" | "error" | "offline" | "online" | "neutral" | "busy" | "away" | null | undefined;
5
+ size?: "sm" | "md" | "lg" | "xs" | null | undefined;
6
+ ring?: boolean | null | undefined;
7
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
8
+ type StatusDotStatus = NonNullable<VariantProps<typeof statusDotVariants>["status"]>;
9
+ type StatusDotSize = NonNullable<VariantProps<typeof statusDotVariants>["size"]>;
10
+ type StatusDotPosition = "top-right" | "bottom-right" | "none";
11
+ export interface StatusDotProps extends Omit<HTMLAttributes<HTMLSpanElement>, "children">, VariantProps<typeof statusDotVariants> {
12
+ /**
13
+ * Presence / semantic state the dot communicates. Drives the fill color and
14
+ * the default accessible name.
15
+ * @default "online"
16
+ */
17
+ status?: StatusDotStatus;
18
+ /**
19
+ * Dot size preset.
20
+ * @default "md"
21
+ */
22
+ size?: StatusDotSize;
23
+ /**
24
+ * Draws a surface-colored ring around the dot so it cuts out cleanly when
25
+ * overlaid on an avatar or icon.
26
+ * @default false
27
+ */
28
+ ring?: boolean;
29
+ /**
30
+ * Status text. Rendered next to the dot when `withLabel` is set; otherwise
31
+ * rendered as visually-hidden live-region content so screen readers
32
+ * announce both the initial status and later `status` changes.
33
+ * @default The English name of `status` (e.g. `"Online"`).
34
+ */
35
+ label?: string;
36
+ /**
37
+ * Renders `label` visibly next to the dot (in `text-fg-secondary`) instead
38
+ * of exposing it only to assistive technology.
39
+ * @default false
40
+ */
41
+ withLabel?: boolean;
42
+ /**
43
+ * Animates an expanding "ping" halo behind the dot to draw attention. The
44
+ * halo reuses the dot's fill; the hollow `offline` dot gets a matching
45
+ * outline halo instead (its fill is transparent). The animation only runs
46
+ * for users who have not requested reduced motion.
47
+ * @default false
48
+ */
49
+ pulse?: boolean;
50
+ /**
51
+ * Absolute corner anchor for overlaying the dot on an avatar or icon —
52
+ * place the component inside a `relative` wrapper. The "right" corners map
53
+ * to the inline end, so they mirror under RTL.
54
+ * @default "none"
55
+ */
56
+ position?: StatusDotPosition;
57
+ }
58
+ export declare const StatusDot: import("react").ForwardRefExoticComponent<StatusDotProps & import("react").RefAttributes<HTMLSpanElement>>;
59
+ export { statusDotVariants };
60
+ //# sourceMappingURL=status-dot.d.ts.map
@@ -0,0 +1,76 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { forwardRef } from "react";
4
+ import { cn } from "../lib/cn.js";
5
+ const statusDotVariants = cva("relative inline-block shrink-0 rounded-full", {
6
+ variants: {
7
+ status: {
8
+ online: "bg-success",
9
+ // Hollow outline so "offline" reads as absence and stays distinguishable
10
+ // without relying on color alone. The gray is a glyph fill, not text.
11
+ offline: "border-2 border-fg-muted bg-transparent",
12
+ busy: "bg-error",
13
+ away: "bg-warning",
14
+ success: "bg-success",
15
+ warning: "bg-warning",
16
+ error: "bg-error",
17
+ info: "bg-info",
18
+ neutral: "bg-fg-muted",
19
+ },
20
+ size: {
21
+ xs: "size-1.5",
22
+ sm: "size-2",
23
+ md: "size-2.5",
24
+ lg: "size-3",
25
+ },
26
+ ring: {
27
+ // Surface-colored ring that cuts the dot out of whatever sits behind it
28
+ // (matches AvatarGroup's overlap ring) — for badge-on-avatar overlays.
29
+ true: "ring-2 ring-surface-base",
30
+ false: "",
31
+ },
32
+ },
33
+ defaultVariants: { status: "online", size: "md", ring: false },
34
+ });
35
+ /** Default English name per status; override via `label` for i18n. */
36
+ const DEFAULT_STATUS_LABELS = {
37
+ online: "Online",
38
+ offline: "Offline",
39
+ busy: "Busy",
40
+ away: "Away",
41
+ success: "Success",
42
+ warning: "Warning",
43
+ error: "Error",
44
+ info: "Info",
45
+ neutral: "Neutral",
46
+ };
47
+ // Corner anchors for badge-on-avatar composition. "right" maps to the inline
48
+ // end (`end-0`), so the dot mirrors automatically under RTL.
49
+ const POSITION_CLASSES = {
50
+ "top-right": "absolute top-0 end-0",
51
+ "bottom-right": "absolute bottom-0 end-0",
52
+ none: "",
53
+ };
54
+ const GAP_CLASSES = {
55
+ xs: "gap-1",
56
+ sm: "gap-1.5",
57
+ md: "gap-1.5",
58
+ lg: "gap-2",
59
+ };
60
+ const LABEL_SIZE_CLASSES = {
61
+ xs: "text-xs",
62
+ sm: "text-xs",
63
+ md: "text-sm",
64
+ lg: "text-base",
65
+ };
66
+ export const StatusDot = forwardRef(({ className, status, size, ring, label, withLabel = false, pulse = false, position = "none", ...props }, ref) => {
67
+ const resolvedStatus = status ?? "online";
68
+ const resolvedSize = size ?? "md";
69
+ const resolvedLabel = label ?? DEFAULT_STATUS_LABELS[resolvedStatus];
70
+ return (_jsxs("span", { ref: ref, "data-slot": "status-dot", "data-status": resolvedStatus, role: "status", className: cn("inline-flex items-center", GAP_CLASSES[resolvedSize], POSITION_CLASSES[position], className), ...props, children: [_jsx("span", { "aria-hidden": "true", "data-slot": "status-dot-indicator", className: statusDotVariants({ status: resolvedStatus, size: resolvedSize, ring }), children: pulse ? (_jsx("span", { "data-slot": "status-dot-ping", className: cn("absolute rounded-full opacity-75 motion-safe:animate-ping", resolvedStatus === "offline"
71
+ ? "-inset-0.5 border-2 border-fg-muted"
72
+ : "inset-0 bg-inherit") })) : null }), withLabel ? (_jsx("span", { "data-slot": "status-dot-label", className: cn("text-fg-secondary", LABEL_SIZE_CLASSES[resolvedSize]), children: resolvedLabel })) : (_jsx("span", { "data-slot": "status-dot-sr-label", className: "sr-only", children: resolvedLabel }))] }));
73
+ });
74
+ StatusDot.displayName = "StatusDot";
75
+ export { statusDotVariants };
76
+ //# sourceMappingURL=status-dot.js.map
@@ -0,0 +1,98 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type OlHTMLAttributes } from "react";
3
+ type StepperOrientation = "horizontal" | "vertical";
4
+ /**
5
+ * Screen-reader-only step-state announcements. Pass any subset via the
6
+ * `labels` prop on {@link Stepper} to localize; omitted keys keep their
7
+ * English defaults.
8
+ */
9
+ export interface StepperLabels {
10
+ /** Announced after a completed step. */
11
+ completed: string;
12
+ /** Announced after the active step. */
13
+ current: string;
14
+ /** Announced after a step that has not started yet. */
15
+ upcoming: string;
16
+ }
17
+ export interface StepperProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange"> {
18
+ /** Controlled active step index. When provided the stepper is fully controlled. */
19
+ value?: number;
20
+ /** Initial active step index for the uncontrolled case. Defaults to `0`. */
21
+ defaultValue?: number;
22
+ /** Called whenever a step should become active (controlled or not). */
23
+ onValueChange?: (value: number) => void;
24
+ /** Layout axis. Defaults to `"horizontal"`. */
25
+ orientation?: StepperOrientation;
26
+ /** Localize the sr-only step-state announcements. See {@link StepperLabels}. */
27
+ labels?: Partial<StepperLabels>;
28
+ }
29
+ /**
30
+ * Root of a multi-step / wizard progress indicator. Owns the active step index
31
+ * (controlled via `value` + `onValueChange`, or uncontrolled via `defaultValue`)
32
+ * and broadcasts the orientation through context. Renders nothing itself beyond
33
+ * a layout wrapper — compose {@link StepperItem}s (and an inner ordered list)
34
+ * inside it. SSR-safe: state is derived synchronously with no effects.
35
+ */
36
+ export declare const Stepper: import("react").ForwardRefExoticComponent<StepperProps & import("react").RefAttributes<HTMLDivElement>>;
37
+ /**
38
+ * Ordered list landmark wrapping the steps. Pure layout — lays the items out
39
+ * along the stepper's axis. Optional (a consumer may bring their own `<ol>`),
40
+ * but provided for the common case so the steps read as an ordered list to AT.
41
+ */
42
+ export declare const StepperList: import("react").ForwardRefExoticComponent<OlHTMLAttributes<HTMLOListElement> & import("react").RefAttributes<HTMLOListElement>>;
43
+ export interface StepperItemProps extends HTMLAttributes<HTMLLIElement> {
44
+ /**
45
+ * This step's zero-based index. Required so the item can derive its state
46
+ * (completed / active / upcoming) from the stepper's active value.
47
+ */
48
+ step: number;
49
+ /** Mark the step done explicitly. Overrides the index-derived "completed". */
50
+ completed?: boolean;
51
+ /** Disable interaction + dim the step. */
52
+ disabled?: boolean;
53
+ }
54
+ /**
55
+ * A single step. Computes its state relative to the active step — earlier steps
56
+ * are `completed`, the current one is `active`, later ones are `upcoming` — and
57
+ * exposes it (plus its index and disabled flag) to descendants through context.
58
+ * Renders an `<li>`; carries `aria-current="step"` on the active step and
59
+ * appends an sr-only state suffix ("completed" / "current" / "not started",
60
+ * localizable via the stepper's `labels` prop) — the visual state is otherwise
61
+ * color/icon-only, which screen readers cannot perceive.
62
+ */
63
+ export declare const StepperItem: import("react").ForwardRefExoticComponent<StepperItemProps & import("react").RefAttributes<HTMLLIElement>>;
64
+ declare const stepperIndicatorVariants: (props?: ({
65
+ state?: "active" | "completed" | "upcoming" | null | undefined;
66
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
67
+ export interface StepperIndicatorProps extends HTMLAttributes<HTMLSpanElement>, Omit<VariantProps<typeof stepperIndicatorVariants>, "state"> {
68
+ /** Override the auto-rendered content (step number / check). */
69
+ children?: HTMLAttributes<HTMLSpanElement>["children"];
70
+ }
71
+ /**
72
+ * The numbered circle for a step. Shows a {@link Check} once the step is
73
+ * completed, the 1-based step number while it is active or upcoming, and styles
74
+ * itself from the item state (active = solid primary, completed = tinted, else
75
+ * muted). Pass `children` to render custom content (e.g. an icon).
76
+ */
77
+ export declare const StepperIndicator: import("react").ForwardRefExoticComponent<StepperIndicatorProps & import("react").RefAttributes<HTMLSpanElement>>;
78
+ /**
79
+ * The connector line between two steps. Fills with `bg-primary` once the
80
+ * preceding step is complete and stays `bg-border` otherwise; orients itself
81
+ * along the stepper axis. Decorative — hidden from assistive tech.
82
+ */
83
+ export declare const StepperSeparator: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
84
+ export interface StepperTriggerProps extends ButtonHTMLAttributes<HTMLButtonElement> {
85
+ }
86
+ /**
87
+ * Optional clickable wrapper that activates its step on press. Inherits the
88
+ * item's `disabled` state, forwards keyboard/focus semantics as a real
89
+ * `<button>`, and is a no-op when the step is already active. Wrap the
90
+ * indicator + title/description in it to make a step navigable.
91
+ */
92
+ export declare const StepperTrigger: import("react").ForwardRefExoticComponent<StepperTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
93
+ /** The short label for a step. Brightens to `text-fg` once active or completed. */
94
+ export declare const StepperTitle: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
95
+ /** Optional secondary line under a {@link StepperTitle}. */
96
+ export declare const StepperDescription: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
97
+ export { stepperIndicatorVariants };
98
+ //# sourceMappingURL=stepper.d.ts.map
@@ -0,0 +1,164 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { cva } from "class-variance-authority";
4
+ import { Check } from "lucide-react";
5
+ import { createContext, forwardRef, useCallback, useContext, useMemo, useState, } from "react";
6
+ import { cn } from "../lib/cn.js";
7
+ const DEFAULT_LABELS = {
8
+ completed: "completed",
9
+ current: "current",
10
+ upcoming: "not started",
11
+ };
12
+ const StepperContext = createContext(null);
13
+ function useStepper(component) {
14
+ const context = useContext(StepperContext);
15
+ if (context === null) {
16
+ throw new Error(`<${component}> must be used within <Stepper>.`);
17
+ }
18
+ return context;
19
+ }
20
+ const StepperItemContext = createContext(null);
21
+ function useStepperItem(component) {
22
+ const context = useContext(StepperItemContext);
23
+ if (context === null) {
24
+ throw new Error(`<${component}> must be used within <StepperItem>.`);
25
+ }
26
+ return context;
27
+ }
28
+ /**
29
+ * Root of a multi-step / wizard progress indicator. Owns the active step index
30
+ * (controlled via `value` + `onValueChange`, or uncontrolled via `defaultValue`)
31
+ * and broadcasts the orientation through context. Renders nothing itself beyond
32
+ * a layout wrapper — compose {@link StepperItem}s (and an inner ordered list)
33
+ * inside it. SSR-safe: state is derived synchronously with no effects.
34
+ */
35
+ export const Stepper = forwardRef(({ value: valueProp, defaultValue = 0, onValueChange, orientation = "horizontal", labels, className, children, ...props }, ref) => {
36
+ // Uncontrolled state lives here; a provided `value` makes it controlled.
37
+ // Plain useState (no effects) keeps the first paint correct on both the
38
+ // server and the client.
39
+ const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue);
40
+ const isControlled = valueProp !== undefined;
41
+ const value = isControlled ? valueProp : uncontrolledValue;
42
+ const setValue = useCallback((next) => {
43
+ if (next === value) {
44
+ return;
45
+ }
46
+ if (!isControlled) {
47
+ setUncontrolledValue(next);
48
+ }
49
+ onValueChange?.(next);
50
+ }, [value, isControlled, onValueChange]);
51
+ const mergedLabels = useMemo(() => ({ ...DEFAULT_LABELS, ...labels }), [labels]);
52
+ const contextValue = useMemo(() => ({ value, setValue, orientation, labels: mergedLabels }), [value, setValue, orientation, mergedLabels]);
53
+ return (_jsx(StepperContext.Provider, { value: contextValue, children: _jsx("div", { ref: ref, "data-slot": "stepper", "data-orientation": orientation, className: cn("group/stepper flex w-full", orientation === "vertical" ? "flex-col" : "flex-row", className), ...props, children: children }) }));
54
+ });
55
+ Stepper.displayName = "Stepper";
56
+ /* ------------------------------------------------------------------ *
57
+ * Stepper list
58
+ * ------------------------------------------------------------------ */
59
+ /**
60
+ * Ordered list landmark wrapping the steps. Pure layout — lays the items out
61
+ * along the stepper's axis. Optional (a consumer may bring their own `<ol>`),
62
+ * but provided for the common case so the steps read as an ordered list to AT.
63
+ */
64
+ export const StepperList = forwardRef(({ className, ...props }, ref) => {
65
+ const { orientation } = useStepper("StepperList");
66
+ return (_jsx("ol", { ref: ref, "data-slot": "stepper-list", "data-orientation": orientation, className: cn("flex w-full", orientation === "vertical" ? "flex-col" : "flex-row items-center", className), ...props }));
67
+ });
68
+ StepperList.displayName = "StepperList";
69
+ /**
70
+ * A single step. Computes its state relative to the active step — earlier steps
71
+ * are `completed`, the current one is `active`, later ones are `upcoming` — and
72
+ * exposes it (plus its index and disabled flag) to descendants through context.
73
+ * Renders an `<li>`; carries `aria-current="step"` on the active step and
74
+ * appends an sr-only state suffix ("completed" / "current" / "not started",
75
+ * localizable via the stepper's `labels` prop) — the visual state is otherwise
76
+ * color/icon-only, which screen readers cannot perceive.
77
+ */
78
+ export const StepperItem = forwardRef(({ step, completed, disabled = false, className, children, ...props }, ref) => {
79
+ const { value, orientation, labels } = useStepper("StepperItem");
80
+ const state = completed || step < value ? "completed" : step === value ? "active" : "upcoming";
81
+ const stateLabel = state === "completed"
82
+ ? labels.completed
83
+ : state === "active"
84
+ ? labels.current
85
+ : labels.upcoming;
86
+ const itemContext = useMemo(() => ({ step, state, disabled }), [step, state, disabled]);
87
+ return (_jsx(StepperItemContext.Provider, { value: itemContext, children: _jsxs("li", { ref: ref, "data-slot": "stepper-item", "data-state": state, "data-orientation": orientation, "data-disabled": disabled || undefined, "aria-current": state === "active" ? "step" : undefined, className: cn("group/step relative flex", orientation === "vertical" ? "flex-col" : "flex-row items-center not-last:flex-1", className), ...props, children: [children, _jsx("span", { "data-slot": "stepper-item-state", className: "sr-only", children: stateLabel })] }) }));
88
+ });
89
+ StepperItem.displayName = "StepperItem";
90
+ /* ------------------------------------------------------------------ *
91
+ * Stepper indicator
92
+ * ------------------------------------------------------------------ */
93
+ const stepperIndicatorVariants = cva(cn("inline-flex size-8 shrink-0 select-none items-center justify-center rounded-full text-sm font-medium", "transition-[background,color,border-color] duration-200 ease-[var(--ease-out-quart)] motion-reduce:transition-none", "[&_svg]:size-4 [&_svg]:shrink-0"), {
94
+ variants: {
95
+ state: {
96
+ completed: "bg-primary/15 text-primary-strong",
97
+ active: "bg-primary text-white shadow-xs",
98
+ upcoming: "border border-border bg-surface-overlay text-fg-tertiary",
99
+ },
100
+ },
101
+ defaultVariants: { state: "upcoming" },
102
+ });
103
+ /**
104
+ * The numbered circle for a step. Shows a {@link Check} once the step is
105
+ * completed, the 1-based step number while it is active or upcoming, and styles
106
+ * itself from the item state (active = solid primary, completed = tinted, else
107
+ * muted). Pass `children` to render custom content (e.g. an icon).
108
+ */
109
+ export const StepperIndicator = forwardRef(({ className, children, ...props }, ref) => {
110
+ const { step, state } = useStepperItem("StepperIndicator");
111
+ return (_jsx("span", { ref: ref, "data-slot": "stepper-indicator", "data-state": state, className: cn(stepperIndicatorVariants({ state }), className), ...props, children: children ??
112
+ (state === "completed" ? (_jsx(Check, { "aria-hidden": "true", strokeWidth: 2.5 })) : (_jsx("span", { children: step + 1 }))) }));
113
+ });
114
+ StepperIndicator.displayName = "StepperIndicator";
115
+ /* ------------------------------------------------------------------ *
116
+ * Stepper separator
117
+ * ------------------------------------------------------------------ */
118
+ /**
119
+ * The connector line between two steps. Fills with `bg-primary` once the
120
+ * preceding step is complete and stays `bg-border` otherwise; orients itself
121
+ * along the stepper axis. Decorative — hidden from assistive tech.
122
+ */
123
+ export const StepperSeparator = forwardRef(({ className, ...props }, ref) => {
124
+ const { orientation } = useStepper("StepperSeparator");
125
+ const { state } = useStepperItem("StepperSeparator");
126
+ const filled = state === "completed";
127
+ return (_jsx("div", { ref: ref, "data-slot": "stepper-separator", "data-state": filled ? "completed" : "incomplete", "aria-hidden": "true", className: cn("shrink-0 rounded-full transition-colors duration-200 ease-[var(--ease-out-quart)] motion-reduce:transition-none", filled ? "bg-primary" : "bg-border", orientation === "vertical" ? "mx-auto my-1 w-px flex-1" : "mx-2 h-px flex-1", className), ...props }));
128
+ });
129
+ StepperSeparator.displayName = "StepperSeparator";
130
+ /**
131
+ * Optional clickable wrapper that activates its step on press. Inherits the
132
+ * item's `disabled` state, forwards keyboard/focus semantics as a real
133
+ * `<button>`, and is a no-op when the step is already active. Wrap the
134
+ * indicator + title/description in it to make a step navigable.
135
+ */
136
+ export const StepperTrigger = forwardRef(({ className, disabled, type, onClick, ...props }, ref) => {
137
+ const { setValue } = useStepper("StepperTrigger");
138
+ const { step, disabled: itemDisabled } = useStepperItem("StepperTrigger");
139
+ const isDisabled = disabled ?? itemDisabled;
140
+ return (_jsx("button", { ref: ref, type: type ?? "button", "data-slot": "stepper-trigger", disabled: isDisabled, className: cn("inline-flex items-center gap-3 rounded-lg text-left", "transition-opacity duration-150 ease-[var(--ease-out-quart)]", "outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base", "disabled:pointer-events-none disabled:opacity-50", "not-disabled:cursor-pointer", className), onClick: (event) => {
141
+ onClick?.(event);
142
+ if (event.defaultPrevented) {
143
+ return;
144
+ }
145
+ setValue(step);
146
+ }, ...props }));
147
+ });
148
+ StepperTrigger.displayName = "StepperTrigger";
149
+ /* ------------------------------------------------------------------ *
150
+ * Stepper title / description
151
+ * ------------------------------------------------------------------ */
152
+ /** The short label for a step. Brightens to `text-fg` once active or completed. */
153
+ export const StepperTitle = forwardRef(({ className, ...props }, ref) => {
154
+ const { state } = useStepperItem("StepperTitle");
155
+ return (_jsx("div", { ref: ref, "data-slot": "stepper-title", className: cn("text-sm font-medium leading-none", state === "upcoming" ? "text-fg-tertiary" : "text-fg", className), ...props }));
156
+ });
157
+ StepperTitle.displayName = "StepperTitle";
158
+ /** Optional secondary line under a {@link StepperTitle}. */
159
+ export const StepperDescription = forwardRef(({ className, ...props }, ref) => {
160
+ return (_jsx("div", { ref: ref, "data-slot": "stepper-description", className: cn("mt-1 text-xs text-fg-secondary", className), ...props }));
161
+ });
162
+ StepperDescription.displayName = "StepperDescription";
163
+ export { stepperIndicatorVariants };
164
+ //# sourceMappingURL=stepper.js.map
@@ -0,0 +1,11 @@
1
+ import { type HTMLAttributes } from "react";
2
+ export interface SunburstNode {
3
+ name: string;
4
+ value?: number;
5
+ children?: SunburstNode[];
6
+ }
7
+ export interface SunburstChartProps extends HTMLAttributes<HTMLDivElement> {
8
+ data: SunburstNode[];
9
+ }
10
+ export declare function SunburstChart({ data, className, ...props }: SunburstChartProps): import("react").JSX.Element;
11
+ //# sourceMappingURL=sunburst-chart.d.ts.map
@@ -0,0 +1,45 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useMemo } from "react";
3
+ import { cn } from "../lib/cn.js";
4
+ function polar(cx, cy, r, a) {
5
+ return [cx + r * Math.cos(a), cy + r * Math.sin(a)];
6
+ }
7
+ function arcPath(cx, cy, r0, r1, a0, a1) {
8
+ const large = a1 - a0 > Math.PI ? 1 : 0;
9
+ const [x0, y0] = polar(cx, cy, r1, a0);
10
+ const [x1, y1] = polar(cx, cy, r1, a1);
11
+ const [x2, y2] = polar(cx, cy, r0, a1);
12
+ const [x3, y3] = polar(cx, cy, r0, a0);
13
+ return `M ${x0} ${y0} A ${r1} ${r1} 0 ${large} 1 ${x1} ${y1} L ${x2} ${y2} A ${r0} ${r0} 0 ${large} 0 ${x3} ${y3} Z`;
14
+ }
15
+ export function SunburstChart({ data, className, ...props }) {
16
+ const slices = useMemo(() => {
17
+ const total = data.reduce((acc, node) => acc + (node.value ?? 0), 0) || 1;
18
+ let angle = -Math.PI / 2;
19
+ const out = [];
20
+ data.forEach((node, index) => {
21
+ const span = ((node.value ?? 0) / total) * Math.PI * 2;
22
+ out.push({
23
+ d: arcPath(100, 100, 36, 64, angle, angle + span),
24
+ color: `var(--cronus-chart-${(index % 5) + 1})`,
25
+ name: node.name,
26
+ });
27
+ const kids = node.children ?? [];
28
+ const kidTotal = kids.reduce((acc, child) => acc + (child.value ?? 0), 0) || 1;
29
+ let inner = angle;
30
+ for (const child of kids) {
31
+ const kidSpan = ((child.value ?? 0) / kidTotal) * span;
32
+ out.push({
33
+ d: arcPath(100, 100, 66, 94, inner, inner + kidSpan),
34
+ color: `var(--cronus-chart-${((index + 1) % 5) + 1})`,
35
+ name: child.name,
36
+ });
37
+ inner += kidSpan;
38
+ }
39
+ angle += span;
40
+ });
41
+ return out;
42
+ }, [data]);
43
+ return (_jsx("div", { "data-slot": "sunburst-chart", className: cn("h-64 w-full", className), ...props, children: _jsx("svg", { viewBox: "0 0 200 200", className: "mx-auto h-full", role: "img", "aria-label": "Sunburst chart", children: slices.map((slice) => (_jsx("path", { d: slice.d, fill: slice.color, children: _jsx("title", { children: slice.name }) }, `${slice.name}-${slice.d.slice(0, 24)}`))) }) }));
44
+ }
45
+ //# sourceMappingURL=sunburst-chart.js.map
@@ -0,0 +1,3 @@
1
+ import * as SwitchPrimitive from "@radix-ui/react-switch";
2
+ export declare const Switch: import("react").ForwardRefExoticComponent<Omit<SwitchPrimitive.SwitchProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
3
+ //# sourceMappingURL=switch.d.ts.map
@@ -0,0 +1,10 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import * as SwitchPrimitive from "@radix-ui/react-switch";
4
+ import { forwardRef } from "react";
5
+ import { cn } from "../lib/cn.js";
6
+ export const Switch = forwardRef(({ className, ...props }, ref) => {
7
+ return (_jsx(SwitchPrimitive.Root, { ref: ref, "data-slot": "switch", className: cn("peer inline-flex h-5 w-9 shrink-0 items-center rounded-full border border-transparent bg-fg-tertiary transition-colors outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base disabled:opacity-50 disabled:pointer-events-none data-[state=checked]:bg-primary aria-invalid:border-error aria-invalid:ring-2 aria-invalid:ring-error/30", className), ...props, children: _jsx(SwitchPrimitive.Thumb, { className: "pointer-events-none block size-4 rounded-full bg-primary-foreground shadow-sm ring-0 transition-transform translate-x-0.5 data-[state=checked]:translate-x-[18px]" }) }));
8
+ });
9
+ Switch.displayName = "Switch";
10
+ //# sourceMappingURL=switch.js.map
@@ -0,0 +1,64 @@
1
+ import { type HTMLAttributes } from "react";
2
+ /** One entry in the table of contents, linking to a heading by its `id`. */
3
+ export interface TableOfContentsItem {
4
+ /** The `id` of the heading element this entry links to. */
5
+ id: string;
6
+ /** Visible link text. */
7
+ label: string;
8
+ /**
9
+ * Nesting level, `0`-based — each level indents the link one step further.
10
+ * Defaults to `0`.
11
+ */
12
+ depth?: number;
13
+ }
14
+ export interface TableOfContentsProps extends Omit<HTMLAttributes<HTMLElement>, "children"> {
15
+ /**
16
+ * The entries to render, in document order. When omitted, headings are
17
+ * auto-discovered from the DOM via {@link TableOfContentsProps.selector}.
18
+ */
19
+ items?: TableOfContentsItem[];
20
+ /**
21
+ * CSS selector used to auto-discover headings when
22
+ * {@link TableOfContentsProps.items} is omitted. Only elements with an `id`
23
+ * participate; depth is derived from the heading level (the shallowest level
24
+ * found becomes depth 0). Defaults to `"h2, h3"`.
25
+ */
26
+ selector?: string;
27
+ /**
28
+ * `id` of the element that scopes heading discovery. When that element is
29
+ * itself a scroll container (`overflow-y: auto | scroll`), it also becomes
30
+ * the scrollspy root and the target of click-to-scroll — otherwise the
31
+ * window scrolls. Defaults to the whole document.
32
+ */
33
+ containerId?: string;
34
+ /**
35
+ * Pixels between the top of the scroll root and the activation line — match
36
+ * your sticky-header height. Also subtracted when scrolling to a section on
37
+ * click. Defaults to `0`.
38
+ */
39
+ offset?: number;
40
+ }
41
+ /**
42
+ * A scrollspy "On this page" table of contents. Section headings are watched by
43
+ * a single `IntersectionObserver` whose root margin carves an activation band
44
+ * across the top quarter of the scroll root (the window, or the scrollable
45
+ * container named by `containerId`): the first observed heading inside the band
46
+ * is the active section, and when the band is empty — e.g. deep inside a long
47
+ * section body — the heading that last crossed above it stays active. Scroll
48
+ * position is never polled and no scroll listener is attached; React re-renders
49
+ * only when the active section actually changes.
50
+ *
51
+ * The active link gains `text-fg` + `aria-current="location"`, and a small
52
+ * indicator bar translates vertically to the active row — its `transform` /
53
+ * `height` are written straight to the DOM and animated by a CSS transition
54
+ * (`motion-reduce:transition-none`, so opted-out visitors get an instant cut).
55
+ * Clicking a link smooth-scrolls to its heading (instant under
56
+ * `prefers-reduced-motion`) and rewrites the URL hash without pushing a history
57
+ * entry per click.
58
+ *
59
+ * Entries come from {@link TableOfContentsProps.items}, or are auto-discovered
60
+ * once on mount from the headings matching {@link TableOfContentsProps.selector}
61
+ * — headings need an `id` to participate.
62
+ */
63
+ export declare const TableOfContents: import("react").ForwardRefExoticComponent<TableOfContentsProps & import("react").RefAttributes<HTMLElement>>;
64
+ //# sourceMappingURL=table-of-contents.d.ts.map
@@ -0,0 +1,10 @@
1
+ import { type HTMLAttributes, type TdHTMLAttributes, type ThHTMLAttributes } from "react";
2
+ export declare const Table: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableElement> & import("react").RefAttributes<HTMLTableElement>>;
3
+ export declare const TableHeader: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableSectionElement> & import("react").RefAttributes<HTMLTableSectionElement>>;
4
+ export declare const TableBody: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableSectionElement> & import("react").RefAttributes<HTMLTableSectionElement>>;
5
+ export declare const TableFooter: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableSectionElement> & import("react").RefAttributes<HTMLTableSectionElement>>;
6
+ export declare const TableRow: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableRowElement> & import("react").RefAttributes<HTMLTableRowElement>>;
7
+ export declare const TableHead: import("react").ForwardRefExoticComponent<ThHTMLAttributes<HTMLTableCellElement> & import("react").RefAttributes<HTMLTableCellElement>>;
8
+ export declare const TableCell: import("react").ForwardRefExoticComponent<TdHTMLAttributes<HTMLTableCellElement> & import("react").RefAttributes<HTMLTableCellElement>>;
9
+ export declare const TableCaption: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableCaptionElement> & import("react").RefAttributes<HTMLTableCaptionElement>>;
10
+ //# sourceMappingURL=table.d.ts.map
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { forwardRef, } from "react";
3
+ import { cn } from "../lib/cn.js";
4
+ export const Table = forwardRef(({ className, ...props }, ref) => {
5
+ return (_jsx("section", { "data-slot": "table-container",
6
+ // biome-ignore lint/a11y/noNoninteractiveTabindex: a scrollable region is intentionally focusable so keyboard users can scroll it.
7
+ tabIndex: 0, "aria-label": "Table", className: "relative w-full overflow-x-auto outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", children: _jsx("table", { ref: ref, "data-slot": "table", className: cn("w-full caption-bottom text-sm text-fg", className), ...props }) }));
8
+ });
9
+ Table.displayName = "Table";
10
+ export const TableHeader = forwardRef(({ className, ...props }, ref) => {
11
+ return (_jsx("thead", { ref: ref, "data-slot": "table-header", className: cn("[&_tr]:border-b [&_tr]:border-border", className), ...props }));
12
+ });
13
+ TableHeader.displayName = "TableHeader";
14
+ export const TableBody = forwardRef(({ className, ...props }, ref) => {
15
+ return (_jsx("tbody", { ref: ref, "data-slot": "table-body", className: cn("[&_tr:last-child]:border-0", className), ...props }));
16
+ });
17
+ TableBody.displayName = "TableBody";
18
+ export const TableFooter = forwardRef(({ className, ...props }, ref) => {
19
+ return (_jsx("tfoot", { ref: ref, "data-slot": "table-footer", className: cn("border-t border-border bg-surface-inset/50 font-medium", className), ...props }));
20
+ });
21
+ TableFooter.displayName = "TableFooter";
22
+ export const TableRow = forwardRef(({ className, ...props }, ref) => {
23
+ return (_jsx("tr", { ref: ref, "data-slot": "table-row", className: cn("border-b border-border transition-colors hover:bg-surface-overlay/50 data-[state=selected]:bg-surface-overlay", className), ...props }));
24
+ });
25
+ TableRow.displayName = "TableRow";
26
+ export const TableHead = forwardRef(({ className, ...props }, ref) => {
27
+ return (_jsx("th", { ref: ref, "data-slot": "table-head", className: cn("h-10 px-3 text-left align-middle font-medium text-fg-secondary whitespace-nowrap", className), ...props }));
28
+ });
29
+ TableHead.displayName = "TableHead";
30
+ export const TableCell = forwardRef(({ className, ...props }, ref) => {
31
+ return (_jsx("td", { ref: ref, "data-slot": "table-cell", className: cn("p-3 align-middle whitespace-nowrap", className), ...props }));
32
+ });
33
+ TableCell.displayName = "TableCell";
34
+ export const TableCaption = forwardRef(({ className, ...props }, ref) => {
35
+ return (_jsx("caption", { ref: ref, "data-slot": "table-caption", className: cn("mt-4 text-sm text-fg-tertiary", className), ...props }));
36
+ });
37
+ TableCaption.displayName = "TableCaption";
38
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1,6 @@
1
+ import * as TabsPrimitive from "@radix-ui/react-tabs";
2
+ export declare const Tabs: import("react").ForwardRefExoticComponent<Omit<TabsPrimitive.TabsProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
3
+ export declare const TabsList: import("react").ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
4
+ export declare const TabsTrigger: import("react").ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
5
+ export declare const TabsContent: import("react").ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
6
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1,22 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import * as TabsPrimitive from "@radix-ui/react-tabs";
4
+ import { forwardRef } from "react";
5
+ import { cn } from "../lib/cn.js";
6
+ export const Tabs = forwardRef(({ className, ...props }, ref) => {
7
+ return (_jsx(TabsPrimitive.Root, { ref: ref, "data-slot": "tabs", className: cn("flex flex-col gap-2", className), ...props }));
8
+ });
9
+ Tabs.displayName = "Tabs";
10
+ export const TabsList = forwardRef(({ className, ...props }, ref) => {
11
+ return (_jsx(TabsPrimitive.List, { ref: ref, "data-slot": "tabs-list", className: cn("inline-flex h-10 w-fit items-center justify-center gap-1 rounded-lg bg-surface-inset p-1 text-fg-secondary", className), ...props }));
12
+ });
13
+ TabsList.displayName = "TabsList";
14
+ export const TabsTrigger = forwardRef(({ className, ...props }, ref) => {
15
+ return (_jsx(TabsPrimitive.Trigger, { ref: ref, "data-slot": "tabs-trigger", className: cn("inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium transition-colors outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base disabled:opacity-50 disabled:pointer-events-none data-[state=active]:bg-surface-floating data-[state=active]:text-fg data-[state=active]:shadow-xs [&_svg]:size-4", className), ...props }));
16
+ });
17
+ TabsTrigger.displayName = "TabsTrigger";
18
+ export const TabsContent = forwardRef(({ className, ...props }, ref) => {
19
+ return (_jsx(TabsPrimitive.Content, { ref: ref, "data-slot": "tabs-content", className: cn("flex-1 outline-none", className), ...props }));
20
+ });
21
+ TabsContent.displayName = "TabsContent";
22
+ //# sourceMappingURL=tabs.js.map