@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
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Cronus
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,262 @@
1
+ # @cronus-ui/ui
2
+
3
+ The Cronus UI component library — a themeable, accessible, shadcn-class set of
4
+ React components built on Radix UI, [CVA](https://cva.style/), and Tailwind v4.
5
+
6
+ Components are unstyled at the structural level and rendered against semantic
7
+ [`@cronus-ui/tokens`](../tokens) (`bg-primary`, `text-fg-secondary`, `rounded-lg`,
8
+ `shadow-glow`, …), so the entire library re-themes from one token change — and can
9
+ be re-themed live by [`@cronus-ui/theme`](../theme). New components take `ref` as a
10
+ prop (React 19). Existing ones may still use `forwardRef`. Every component
11
+ carries `data-slot` and visible `focus-visible` rings.
12
+
13
+ Reach for this package when you want production-ready Cronus components as a managed
14
+ dependency. Prefer to own the source instead? Copy components into your project
15
+ with `npx cronus-ui add` (see [Copy-in option](#copy-in-option-cli)).
16
+
17
+ ## Install
18
+
19
+ > Published on npm under the `@cronus-ui` scope.
20
+ > Install all three packages:
21
+
22
+ ```sh
23
+ # npm
24
+ npm i @cronus-ui/ui @cronus-ui/tokens @cronus-ui/theme
25
+ # pnpm
26
+ pnpm add @cronus-ui/ui @cronus-ui/tokens @cronus-ui/theme
27
+ # bun
28
+ bun add @cronus-ui/ui @cronus-ui/tokens @cronus-ui/theme
29
+ ```
30
+
31
+ `@cronus-ui/ui` renders against the token bridge and runtime provider, so install
32
+ [`@cronus-ui/tokens`](../tokens) and [`@cronus-ui/theme`](../theme) alongside it.
33
+
34
+ ### Prerequisites
35
+
36
+ - **React 19** (also works with React 18.3+) — `react` and `react-dom` are peers.
37
+ - **Tailwind v4** (or v3) configured with the `@cronus-ui/tokens` bridge or preset.
38
+ - A few heavy, component-specific packages are **optional** peers — install them
39
+ only for the components you use. See
40
+ [Optional peer dependencies](#optional-peer-dependencies).
41
+
42
+ ### Optional peer dependencies
43
+
44
+ Most components work out of the box. A handful sit on top of a heavy
45
+ third-party library that is only needed by that component, so those libraries
46
+ are declared as **optional peer dependencies** and are *not* installed with
47
+ `@cronus-ui/ui`. Install the matching package(s) only when you import the
48
+ component:
49
+
50
+ | Component(s) | Package(s) | Install |
51
+ | -------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
52
+ | `Chart` | `recharts` | `npm i recharts` |
53
+ | `RichTextEditor` | `@tiptap/react`, `@tiptap/pm`, `@tiptap/starter-kit` | `npm i @tiptap/react @tiptap/pm @tiptap/starter-kit` |
54
+ | `Kanban` | `@dnd-kit/core`, `@dnd-kit/sortable`, `@dnd-kit/utilities` | `npm i @dnd-kit/core @dnd-kit/sortable @dnd-kit/utilities` |
55
+ | `DataTable` | `@tanstack/react-table` | `npm i @tanstack/react-table` |
56
+ | `Calendar` | `react-day-picker` | `npm i react-day-picker` |
57
+ | `DatePicker`, `DateRangePicker` | `react-day-picker`, `date-fns` | `npm i react-day-picker date-fns` |
58
+ | `Scheduler` | `date-fns` | `npm i date-fns` |
59
+ | `Form` | `react-hook-form`, `zod`, `@hookform/resolvers` | `npm i react-hook-form zod @hookform/resolvers` |
60
+
61
+ Importing one of these components without its peer installed fails at
62
+ build/bundle time with a module-not-found error for the missing package —
63
+ installing the package(s) from the table fixes it.
64
+
65
+ > Using the CLI instead (`npx cronus-ui add <slug>`)? Nothing changes for you:
66
+ > the registry tracks each component's real imports and `add` installs them.
67
+
68
+ ### Wire up styling
69
+
70
+ Tailwind does not scan `node_modules` by default, so the utility classes baked
71
+ into the shipped components must be opted back into content detection — otherwise
72
+ the markup is correct but **no CSS is generated**.
73
+
74
+ **Tailwind v4** — in your global stylesheet:
75
+
76
+ ```css
77
+ @import "tailwindcss";
78
+ @import "@cronus-ui/tokens/styles.css";
79
+
80
+ /* REQUIRED: emit the utilities used inside the shipped components. */
81
+ @source "../node_modules/@cronus-ui/ui/dist/**/*.js";
82
+ ```
83
+
84
+ **Tailwind v3** — in `tailwind.config.js`:
85
+
86
+ ```js
87
+ import cronusPreset from "@cronus-ui/tokens/preset";
88
+
89
+ export default {
90
+ presets: [cronusPreset],
91
+ content: [
92
+ "./src/**/*.{ts,tsx}",
93
+ // REQUIRED: keep the utilities used inside the shipped components.
94
+ "./node_modules/@cronus-ui/ui/dist/**/*.js",
95
+ ],
96
+ };
97
+ ```
98
+
99
+ See [`@cronus-ui/tokens`](../tokens) for the full Tailwind v3/v4 setup details.
100
+
101
+ ## Usage
102
+
103
+ Wrap the app in the provider once, then import components anywhere.
104
+
105
+ ```tsx
106
+ // app/layout.tsx — or your root
107
+ import "@cronus-ui/tokens/styles.css";
108
+ import { CronusUIProvider } from "@cronus-ui/theme";
109
+
110
+ export default function RootLayout({ children }: { children: React.ReactNode }) {
111
+ return (
112
+ <html lang="en">
113
+ <body>
114
+ <CronusUIProvider asRoot defaultThemeName="aurora" defaultModeName="dark">
115
+ {children}
116
+ </CronusUIProvider>
117
+ </body>
118
+ </html>
119
+ );
120
+ }
121
+ ```
122
+
123
+ ```tsx
124
+ // any component
125
+ import { Button, Card, CardHeader, CardTitle, CardContent, Badge } from "@cronus-ui/ui";
126
+
127
+ export function Example() {
128
+ return (
129
+ <Card>
130
+ <CardHeader>
131
+ <CardTitle>Ship it</CardTitle>
132
+ <Badge>New</Badge>
133
+ </CardHeader>
134
+ <CardContent>
135
+ <Button variant="primary">Get started</Button>
136
+ </CardContent>
137
+ </Card>
138
+ );
139
+ }
140
+ ```
141
+
142
+ ### Subpath imports
143
+
144
+ Every component is also exposed as its own entry point for finer-grained imports,
145
+ e.g. `import { Button } from "@cronus-ui/ui/button"`. The `cn` class-merge helper used
146
+ by every component is available at `import { cn } from "@cronus-ui/ui/cn"`.
147
+
148
+ ## Components
149
+
150
+ Foundations and forms — Button, Input, Label, Badge, Card, Separator, Skeleton,
151
+ Spinner, Textarea, Checkbox, Switch, RadioGroup, Select, Slider, Toggle, Field,
152
+ Form (react-hook-form + zod), InputOTP, FileDropzone, NumberInput, Combobox,
153
+ MultiSelect, SegmentedControl, Autocomplete.
154
+
155
+ Overlays and navigation — Dialog, Sheet, AlertDialog, DropdownMenu, Popover,
156
+ MorphingPopover, HoverCard, Tooltip, Tabs, Accordion, Collapsible, Drawer, Toast
157
+ (Sonner), Command palette, NavigationMenu, Breadcrumb, Pagination, Sidebar,
158
+ AppShell.
159
+
160
+ Data and display — Table, DataTable (TanStack), Avatar, Progress, ScrollArea,
161
+ Calendar, DatePicker, DateRangePicker, Chart (Recharts), Empty, Metric, Kbd,
162
+ CodeBlock, CopyButton, Carousel.
163
+
164
+ Premium and brand — GlassCard, GradientBorder, GradientText, SpotlightCard,
165
+ AuroraBackground, Shimmer, AnimatedButton, AnimatedNumber, Reveal, TextEffect,
166
+ LogoCarousel, and motion presets — the Aurora layer of glass, gradients, springs,
167
+ and scroll reveals.
168
+
169
+ Browse them all, with live previews and props, on the [docs site](../../apps/www).
170
+
171
+ ## Theming
172
+
173
+ Components consume semantic tokens only — never raw colors — so they re-theme
174
+ with the active theme/mode and with any runtime override. Switch theme or override
175
+ tokens through [`@cronus-ui/theme`](../theme):
176
+
177
+ ```tsx
178
+ const { setTheme, setMode, setOverrides } = useTheme();
179
+ setOverrides({ radius: "20px", primary: "#7c3aed" }); // re-themes the subtree, no re-render
180
+ ```
181
+
182
+ The OKLCH token scale and the two built-in themes (Aurora, Neutral) live in
183
+ [`@cronus-ui/tokens`](../tokens).
184
+
185
+ ## Testing
186
+
187
+ `@cronus-ui/ui/testing` ships first-class helpers for testing apps built on
188
+ Cronus UI with [Testing Library](https://testing-library.com/) under jsdom
189
+ (Vitest or Jest). The subpath is not part of the main barrel, so test helpers
190
+ can never leak into an app bundle.
191
+
192
+ ```sh
193
+ npm i -D @testing-library/react vitest-axe
194
+ ```
195
+
196
+ Both are **optional peer dependencies** — only `@cronus-ui/ui/testing` uses
197
+ them, never the runtime components, and `vitest-axe` is only required if you
198
+ call `expectNoA11yViolations`.
199
+
200
+ ```tsx
201
+ import { expectNoA11yViolations, findDialog, renderWithCronus } from "@cronus-ui/ui/testing";
202
+ import { screen } from "@testing-library/react";
203
+ import userEvent from "@testing-library/user-event";
204
+ import { expect, it } from "vitest";
205
+
206
+ it("invite dialog works and stays accessible in every theme", async () => {
207
+ const user = userEvent.setup();
208
+ const { baseElement, rerenderWithTheme } = renderWithCronus(<InvitePanel />, {
209
+ theme: "aurora",
210
+ mode: "dark",
211
+ });
212
+
213
+ await user.click(screen.getByRole("button", { name: "Invite teammate" }));
214
+ await findDialog("Invite teammate"); // portaled to document.body — still found
215
+ await expectNoA11yViolations(baseElement);
216
+
217
+ rerenderWithTheme("neutral", "light"); // remounts the scope in the new theme
218
+ expect(screen.getByRole("button", { name: "Invite teammate" })).toBeVisible();
219
+ });
220
+ ```
221
+
222
+ - `renderWithCronus(ui, { theme?, mode?, ...rtlOptions })` — Testing Library's
223
+ `render` with the UI wrapped in a scoped `CronusUIProvider`. The theme lands
224
+ on a wrapper `<div data-cronus-theme data-cronus-mode>` (never on `<html>`), so
225
+ tests can't bleed theme state into each other. Returns the usual render
226
+ result plus `rerenderWithTheme(theme, mode?)`, which remounts the scope under
227
+ another theme/mode.
228
+ - `findDialog(name?)` / `findTooltip(text?)` — async queries scoped to
229
+ `document.body`, so they find Radix surfaces that render through portals
230
+ (outside the container `render` returns).
231
+ - `expectNoA11yViolations(baseElement, axeOptions?)` — runs axe-core and fails
232
+ with the formatted violations, the same gate this library's own component
233
+ suite runs. Pass `baseElement` (not `container`) so portaled overlays are
234
+ included in the scan.
235
+
236
+ > Radix overlays portal to `document.body`, outside the themed wrapper div —
237
+ > assert on their behavior and accessibility here, and cover theme-dependent
238
+ > visuals with your app-level (`asRoot`) provider in the browser.
239
+
240
+ ## Copy-in option (CLI)
241
+
242
+ Prefer to own the component source, shadcn-style? The `cronus-ui` CLI copies the
243
+ real component sources into your project and rewrites imports to your aliases:
244
+
245
+ ```sh
246
+ npx cronus-ui init # write cronus-ui.json + the cn() helper
247
+ npx cronus-ui add button card dialog # copy components in (resolves dependencies)
248
+ npx cronus-ui add dashboard # also pulls full-page blocks
249
+ ```
250
+
251
+ Both distribution modes share one source of truth. See the
252
+ [CLI README](../cli/README.md) for commands and configuration.
253
+
254
+ ## Related packages
255
+
256
+ - [`@cronus-ui/tokens`](../tokens) — the OKLCH design tokens these components render against.
257
+ - [`@cronus-ui/theme`](../theme) — the runtime provider + `useTheme` hook.
258
+ - [`cronus-ui`](../cli) — the CLI for copying components into your project.
259
+
260
+ ## License
261
+
262
+ MIT
@@ -0,0 +1,11 @@
1
+ import type { Transition } from "motion/react";
2
+ /** Default clip-reveal easing for cartesian charts. */
3
+ export declare const DEFAULT_ANIMATION_EASING = "cubic-bezier(0.85, 0, 0.15, 1)";
4
+ export declare const DEFAULT_ANIMATION_DURATION_MS = 1100;
5
+ /** Default enter transition — matches the original line chart reveal. */
6
+ export declare const DEFAULT_CHART_ENTER_TRANSITION: Transition;
7
+ /**
8
+ * Clip-path width reveal must use tween — spring does not reliably animate SVG width.
9
+ */
10
+ export declare function clipRevealTransition(enterTransition?: Transition): Transition;
11
+ //# sourceMappingURL=animation.d.ts.map
@@ -0,0 +1,29 @@
1
+ /** Default clip-reveal easing for cartesian charts. */
2
+ export const DEFAULT_ANIMATION_EASING = "cubic-bezier(0.85, 0, 0.15, 1)";
3
+ export const DEFAULT_ANIMATION_DURATION_MS = 1100;
4
+ /** Default enter transition — matches the original line chart reveal. */
5
+ export const DEFAULT_CHART_ENTER_TRANSITION = {
6
+ type: "tween",
7
+ duration: DEFAULT_ANIMATION_DURATION_MS / 1000,
8
+ ease: [0.85, 0, 0.15, 1],
9
+ };
10
+ /**
11
+ * Clip-path width reveal must use tween — spring does not reliably animate SVG width.
12
+ */
13
+ export function clipRevealTransition(enterTransition) {
14
+ if (enterTransition?.type === "tween") {
15
+ return {
16
+ ...enterTransition,
17
+ ease: enterTransition.ease ?? DEFAULT_CHART_ENTER_TRANSITION.ease,
18
+ };
19
+ }
20
+ const duration = typeof enterTransition?.duration === "number"
21
+ ? enterTransition.duration
22
+ : DEFAULT_ANIMATION_DURATION_MS / 1000;
23
+ return {
24
+ type: "tween",
25
+ duration,
26
+ ease: DEFAULT_CHART_ENTER_TRANSITION.ease,
27
+ };
28
+ }
29
+ //# sourceMappingURL=animation.js.map
@@ -0,0 +1,34 @@
1
+ import type { Margin } from "./chart-context.js";
2
+ import type { LoadingStyle } from "./chart-phase.js";
3
+ export interface AreaChartLoadingProps {
4
+ /** Chart margins */
5
+ margin?: Partial<Margin>;
6
+ /** Stroke color for the animated loading segment. */
7
+ stroke?: string;
8
+ /** Stroke opacity for the animated loading segment. Default: 0.5 */
9
+ strokeOpacity?: number;
10
+ /** Grid line stroke (color and opacity via color-mix or oklch alpha). */
11
+ gridStroke?: string;
12
+ /** Shimmer band stroke (color and opacity via color-mix or oklch alpha). */
13
+ gridShimmerStroke?: string;
14
+ /** Animate a shimmer band across grid lines. Default: true */
15
+ gridShimmer?: boolean;
16
+ /** Shimmer band width in pixels. Default: 140 */
17
+ gridShimmerLength?: number;
18
+ /** Shimmer speed multiplier (higher = faster). Default: 1 */
19
+ gridShimmerSpeed?: number;
20
+ /** Match shimmer loop to the loading line pulse (cycle + inter-loop pause). */
21
+ gridShimmerSync?: boolean;
22
+ /** Loading animation: `"pulse"` (default traveling pulse) or `"sweep"` (a
23
+ * diagonal shimmer across the skeleton area). Default: `"pulse"`. */
24
+ loadingStyle?: LoadingStyle;
25
+ /** Centered shimmer label text. Default: "Loading" */
26
+ label?: string;
27
+ /** Aspect ratio as "width / height". Default: "2 / 1" */
28
+ aspectRatio?: string;
29
+ /** Additional class name for the container */
30
+ className?: string;
31
+ }
32
+ export declare function AreaChartLoading({ margin, stroke, strokeOpacity, gridStroke, gridShimmerStroke, gridShimmer, gridShimmerLength, gridShimmerSpeed, gridShimmerSync, loadingStyle, label, aspectRatio, className, }: AreaChartLoadingProps): import("react").JSX.Element;
33
+ export default AreaChartLoading;
34
+ //# sourceMappingURL=area-chart-loading.d.ts.map
@@ -0,0 +1,22 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { curveNatural } from "@visx/curve";
4
+ import { useMemo } from "react";
5
+ import { Area } from "./area.js";
6
+ import { AreaChart } from "./area-chart.js";
7
+ import { DEFAULT_SKELETON_DATA_KEY, DEFAULT_SKELETON_POINT_COUNT, generateChartSkeletonData, } from "./generate-chart-skeleton-data.js";
8
+ import { Grid } from "./grid.js";
9
+ const LOADING_DATA_KEY = DEFAULT_SKELETON_DATA_KEY;
10
+ const DEFAULT_LOADING_STROKE = "var(--foreground)";
11
+ const DEFAULT_LOADING_GRID_STROKE = "color-mix(in oklch, var(--chart-grid) 50%, transparent)";
12
+ const DEFAULT_LOADING_GRID_SHIMMER_STROKE = "color-mix(in oklch, var(--foreground) 68%, transparent)";
13
+ const DEFAULT_LOADING_STROKE_OPACITY = 0.5;
14
+ export function AreaChartLoading({ margin, stroke = DEFAULT_LOADING_STROKE, strokeOpacity = DEFAULT_LOADING_STROKE_OPACITY, gridStroke = DEFAULT_LOADING_GRID_STROKE, gridShimmerStroke = DEFAULT_LOADING_GRID_SHIMMER_STROKE, gridShimmer = true, gridShimmerLength, gridShimmerSpeed, gridShimmerSync = false, loadingStyle = "pulse", label = "Loading", aspectRatio = "2 / 1", className = "", }) {
15
+ const data = useMemo(() => generateChartSkeletonData({
16
+ dataKey: DEFAULT_SKELETON_DATA_KEY,
17
+ pointCount: DEFAULT_SKELETON_POINT_COUNT,
18
+ }), []);
19
+ return (_jsxs(AreaChart, { animationDuration: 0, aspectRatio: aspectRatio, className: className, data: data, loadingLabel: label, margin: margin, status: "loading", children: [_jsx(Grid, { horizontal: true, shimmer: loadingStyle === "sweep" ? false : gridShimmer, shimmerLength: gridShimmerLength, shimmerSpeed: gridShimmerSpeed, shimmerStroke: gridShimmerStroke, shimmerSync: gridShimmerSync, stroke: gridStroke }), _jsx(Area, { curve: curveNatural, dataKey: LOADING_DATA_KEY, fadeEdges: false, fill: "transparent", fillOpacity: 0, loading: true, loadingStroke: stroke, loadingStrokeOpacity: strokeOpacity, loadingStyle: loadingStyle, showHighlight: false, showLine: true, stroke: "transparent", strokeWidth: 2 })] }));
20
+ }
21
+ export default AreaChartLoading;
22
+ //# sourceMappingURL=area-chart-loading.js.map
@@ -0,0 +1,48 @@
1
+ import type { Transition } from "motion/react";
2
+ import { type CSSProperties, type ReactNode } from "react";
3
+ import type { Margin } from "./chart-context.js";
4
+ import { type ChartPhase, type ChartStatus } from "./chart-phase.js";
5
+ export interface AreaChartProps {
6
+ /** Data array - each item should have a date field and numeric values */
7
+ data: Record<string, unknown>[];
8
+ /** Key in data for the x-axis (date). Default: "date" */
9
+ xDataKey?: string;
10
+ /** Chart margins */
11
+ margin?: Partial<Margin>;
12
+ /** Animation duration in milliseconds. Default: 1100 */
13
+ animationDuration?: number;
14
+ /** CSS easing for clip-reveal. Default: cubic-bezier(0.85, 0, 0.15, 1) */
15
+ animationEasing?: string;
16
+ /** Motion enter transition (spring or cubic-bezier tween). */
17
+ enterTransition?: Transition;
18
+ /** Signature of motion URL state — triggers reveal replay when it changes. */
19
+ revealSignature?: string;
20
+ /** Aspect ratio as "width / height". Default: "2 / 1" */
21
+ aspectRatio?: string;
22
+ /** Additional class name for the container */
23
+ className?: string;
24
+ /** Loading vs ready — drives chart phase and loading chrome. Default: `"ready"`. */
25
+ status?: ChartStatus;
26
+ /** Centered shimmer label while loading. */
27
+ loadingLabel?: string;
28
+ /** Animate y-domain over this duration (ms) on status transitions. Default: 500. */
29
+ yDomainTweenDuration?: number;
30
+ /** Animate y-domain when status or target domain changes. Default: true */
31
+ yDomainTween?: boolean;
32
+ /** Visible x-domain for brush zoom. */
33
+ xDomain?: [Date, Date];
34
+ /** Full dataset length for x-scale padding when `xDomain` is set. */
35
+ xDomainSlotCount?: number;
36
+ /** Tween y-domain when brush changes the visible x-range. Default: false */
37
+ tweenYDomainOnXDomainChange?: boolean;
38
+ /** Inline container styles (e.g. fixed height for brush strip). */
39
+ style?: CSSProperties;
40
+ /** Fires when the internal chart phase changes (e.g. OG capture readiness). */
41
+ onPhaseChange?: (phase: ChartPhase) => void;
42
+ /** Child components (Area, Grid, ChartTooltip, etc.) */
43
+ children: ReactNode;
44
+ }
45
+ export declare function AreaChart({ data, xDataKey, margin: marginProp, animationDuration, animationEasing, enterTransition, revealSignature, aspectRatio, className, status, loadingLabel, yDomainTweenDuration, yDomainTween, xDomain, xDomainSlotCount, tweenYDomainOnXDomainChange, style, onPhaseChange, children, }: AreaChartProps): import("react").JSX.Element;
46
+ export { Area, type AreaProps } from "./area.js";
47
+ export default AreaChart;
48
+ //# sourceMappingURL=area-chart.d.ts.map
@@ -0,0 +1,57 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { ParentSize } from "@visx/responsive";
4
+ import { Children, isValidElement, useCallback, useMemo, useRef, useState, } from "react";
5
+ import { cn } from "../lib/cn.js";
6
+ import { Area } from "./area.js";
7
+ import { ChartLoadingLabel } from "./chart-loading-label.js";
8
+ import { DEFAULT_CHART_STATUS, DEFAULT_Y_DOMAIN_TWEEN_MS, resolveRestingChartPhase, } from "./chart-phase.js";
9
+ import { PatternArea } from "./pattern-area.js";
10
+ import { TimeSeriesChartInner } from "./time-series-chart-shell.js";
11
+ const DEFAULT_MARGIN = { top: 40, right: 40, bottom: 40, left: 40 };
12
+ function extractAreaConfigs(children) {
13
+ const configs = [];
14
+ Children.forEach(children, (child) => {
15
+ if (!isValidElement(child)) {
16
+ return;
17
+ }
18
+ const childType = child.type;
19
+ const componentName = typeof child.type === "function" ? childType.displayName || childType.name || "" : "";
20
+ const props = child.props;
21
+ const isPatternArea = componentName === "PatternArea" || child.type === PatternArea;
22
+ const isAreaComponent = componentName === "Area" ||
23
+ child.type === Area ||
24
+ (props && typeof props.dataKey === "string" && props.dataKey.length > 0 && !isPatternArea);
25
+ if (isAreaComponent && props?.dataKey) {
26
+ configs.push({
27
+ dataKey: props.dataKey,
28
+ stroke: props.stroke || props.fill || "var(--chart-line-primary)",
29
+ strokeWidth: props.strokeWidth || 2,
30
+ yAxisId: props.yAxisId,
31
+ });
32
+ }
33
+ });
34
+ return configs;
35
+ }
36
+ function ChartInner({ width, height, data, xDataKey, margin, animationDuration, animationEasing, enterTransition, revealSignature, chartStatus, loadingLabel, yDomainTweenDuration, yDomainTween, xDomain, xDomainSlotCount, tweenYDomainOnXDomainChange, children, containerRef, onPhaseChange, }) {
37
+ const lines = useMemo(() => extractAreaConfigs(children), [children]);
38
+ return (_jsx(TimeSeriesChartInner, { animationDuration: animationDuration, animationEasing: animationEasing, chartStatus: chartStatus, clipPathId: "chart-area-grow-clip", containerRef: containerRef, data: data, enterTransition: enterTransition, height: height, lines: lines, loadingLabel: loadingLabel, margin: margin, onPhaseChange: onPhaseChange, revealSignature: revealSignature, tweenYDomainOnXDomainChange: tweenYDomainOnXDomainChange, width: width, xDataKey: xDataKey, xDomain: xDomain, xDomainSlotCount: xDomainSlotCount, yDomainTween: yDomainTween, yDomainTweenDuration: yDomainTweenDuration, children: children }));
39
+ }
40
+ export function AreaChart({ data, xDataKey = "date", margin: marginProp, animationDuration = 1100, animationEasing, enterTransition, revealSignature, aspectRatio = "2 / 1", className = "", status = DEFAULT_CHART_STATUS, loadingLabel, yDomainTweenDuration = DEFAULT_Y_DOMAIN_TWEEN_MS, yDomainTween = true, xDomain, xDomainSlotCount, tweenYDomainOnXDomainChange = false, style, onPhaseChange, children, }) {
41
+ const containerRef = useRef(null);
42
+ const margin = { ...DEFAULT_MARGIN, ...marginProp };
43
+ const [chartPhase, setChartPhase] = useState(() => resolveRestingChartPhase(status));
44
+ const handlePhaseChange = useCallback((phase) => {
45
+ setChartPhase(phase);
46
+ onPhaseChange?.(phase);
47
+ }, [onPhaseChange]);
48
+ const showLoadingLabel = Boolean(loadingLabel?.trim() &&
49
+ (chartPhase === "loading" ||
50
+ chartPhase === "exiting" ||
51
+ chartPhase === "gridTweenReady" ||
52
+ chartPhase === "revealingLoading"));
53
+ return (_jsxs("div", { "data-slot": "area-chart", className: cn("relative w-full", className), ref: containerRef, style: { aspectRatio, touchAction: "none", ...style }, children: [_jsx(ParentSize, { debounceTime: 10, children: ({ width, height }) => (_jsx(ChartInner, { animationDuration: animationDuration, animationEasing: animationEasing, chartStatus: status, containerRef: containerRef, data: data, enterTransition: enterTransition, height: height, loadingLabel: loadingLabel, margin: margin, onPhaseChange: handlePhaseChange, revealSignature: revealSignature, tweenYDomainOnXDomainChange: tweenYDomainOnXDomainChange, width: width, xDataKey: xDataKey, xDomain: xDomain, xDomainSlotCount: xDomainSlotCount, yDomainTween: yDomainTween, yDomainTweenDuration: yDomainTweenDuration, children: children })) }), showLoadingLabel ? (_jsx(ChartLoadingLabel, { exiting: chartPhase !== "loading", text: loadingLabel })) : null] }));
54
+ }
55
+ export { Area } from "./area.js";
56
+ export default AreaChart;
57
+ //# sourceMappingURL=area-chart.js.map
@@ -0,0 +1,20 @@
1
+ import { type FadeEdges } from "./fade-edges.js";
2
+ interface AreaGradientDefsProps {
3
+ gradientId: string;
4
+ strokeGradientId: string;
5
+ edgeMaskId: string;
6
+ edgeGradientId: string;
7
+ fill: string;
8
+ fillOpacity: number;
9
+ gradientToOpacity: number;
10
+ /** 0–1: where the bottom stop sits (1 = full-height gradient). */
11
+ gradientSpan?: number;
12
+ resolvedStroke: string;
13
+ isPatternFill: boolean;
14
+ fadeEdges: FadeEdges;
15
+ innerWidth: number;
16
+ innerHeight: number;
17
+ }
18
+ export declare function AreaGradientDefs({ gradientId, strokeGradientId, edgeMaskId, edgeGradientId, fill, fillOpacity, gradientToOpacity, gradientSpan, resolvedStroke, isPatternFill, fadeEdges, innerWidth, innerHeight, }: AreaGradientDefsProps): import("react").JSX.Element;
19
+ export {};
20
+ //# sourceMappingURL=area-gradient-defs.d.ts.map
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { fadeGradientStops, resolveFadeSides, viewportFadeGradientAttrs, } from "./fade-edges.js";
3
+ export function AreaGradientDefs({ gradientId, strokeGradientId, edgeMaskId, edgeGradientId, fill, fillOpacity, gradientToOpacity, gradientSpan = 1, resolvedStroke, isPatternFill, fadeEdges, innerWidth, innerHeight, }) {
4
+ const sides = resolveFadeSides(fadeEdges);
5
+ // Stroke gradient mirrors the area's edge fade so the line doesn't pop in
6
+ // past the faded fill. Skip emitting it when neither edge fades — the line
7
+ // can then paint a solid stroke instead of an unnecessary url(#...) ref.
8
+ const strokeStops = sides.any ? fadeGradientStops(sides) : null;
9
+ const showEdgeMask = sides.any && !isPatternFill;
10
+ const edgeStops = showEdgeMask ? fadeGradientStops(sides) : null;
11
+ const span = Math.min(1, Math.max(0.01, gradientSpan));
12
+ const midOffset = `${span * 100}%`;
13
+ return (_jsxs("defs", { children: [isPatternFill ? null : (_jsxs("linearGradient", { id: gradientId, x1: "0%", x2: "0%", y1: "0%", y2: "100%", children: [_jsx("stop", { offset: "0%", style: { stopColor: fill, stopOpacity: fillOpacity } }), _jsx("stop", { offset: midOffset, style: { stopColor: fill, stopOpacity: gradientToOpacity } }), span < 1 ? (_jsx("stop", { offset: "100%", style: { stopColor: fill, stopOpacity: gradientToOpacity } })) : null] })), strokeStops ? (_jsx("linearGradient", { id: strokeGradientId, ...viewportFadeGradientAttrs(innerWidth), children: strokeStops.map((stop) => (_jsx("stop", { offset: stop.offset, style: { stopColor: resolvedStroke, stopOpacity: stop.opacity } }, stop.offset))) })) : null, edgeStops ? (_jsxs(_Fragment, { children: [_jsx("linearGradient", { id: edgeGradientId, ...viewportFadeGradientAttrs(innerWidth), children: edgeStops.map((stop) => (_jsx("stop", { offset: stop.offset, style: { stopColor: "white", stopOpacity: stop.opacity } }, stop.offset))) }), _jsx("mask", { id: edgeMaskId, children: _jsx("rect", { fill: `url(#${edgeGradientId})`, height: innerHeight, width: innerWidth, x: "0", y: "0" }) })] })) : null] }));
14
+ }
15
+ //# sourceMappingURL=area-gradient-defs.js.map
@@ -0,0 +1,76 @@
1
+ type CurveFactory = any;
2
+ import type { LoadingStyle } from "./chart-phase.js";
3
+ import { type FadeEdges } from "./fade-edges.js";
4
+ import { type LineLoadingPulseMode } from "./line-loading-pulse.js";
5
+ import type { SeriesPointMarkerStyle } from "./series-point-marker.js";
6
+ export interface AreaProps {
7
+ /** Key in data to use for y values */
8
+ dataKey: string;
9
+ /** Y-scale group id (Recharts `yAxisId`). Default: `"left"`. */
10
+ yAxisId?: string | number;
11
+ /** Fill color for the area gradient start. Default: var(--chart-line-primary) */
12
+ fill?: string;
13
+ /** Fill opacity at the top of the area. Default: 0.4 */
14
+ fillOpacity?: number;
15
+ /** Stroke color for the line. Default: same as fill */
16
+ stroke?: string;
17
+ /** Stroke width. Default: 2 */
18
+ strokeWidth?: number;
19
+ /** Curve function. Default: curveMonotoneX */
20
+ curve?: CurveFactory;
21
+ /** Whether to animate the area. Default: true */
22
+ animate?: boolean;
23
+ /** Whether to show the stroke line. Default: true */
24
+ showLine?: boolean;
25
+ /** Whether to show highlight segment on hover. Default: true */
26
+ showHighlight?: boolean;
27
+ /** Gradient opacity at bottom (0 = fully transparent). Default: 0 */
28
+ gradientToOpacity?: number;
29
+ /**
30
+ * Vertical extent of the fill gradient (0–1). `1` fades across the full
31
+ * height; lower values compress the gradient toward the top.
32
+ */
33
+ gradientSpan?: number;
34
+ /**
35
+ * Fade the area fill (and stroke) toward transparent at the chart edges.
36
+ * - `true` fades both edges, `false` disables the fade entirely.
37
+ * - `"left"` / `"right"` fades only that side — useful when the opposite
38
+ * edge butts up against another element you don't want to fade into.
39
+ * Default: false
40
+ */
41
+ fadeEdges?: FadeEdges;
42
+ /** Render scatter-style circle markers at each data point. Default: false */
43
+ showMarkers?: boolean;
44
+ /** Marker styling (same options as Scatter). */
45
+ markers?: SeriesPointMarkerStyle;
46
+ /**
47
+ * Data index from which the line stroke becomes dashed (inclusive).
48
+ * Useful for projecting incomplete periods, e.g. dashed from yesterday through today.
49
+ */
50
+ dashFromIndex?: number;
51
+ /** Dash pattern for the tail segment when `dashFromIndex` is set. Default: "6,4" */
52
+ dashArray?: string;
53
+ /** Pulse stroke color while chart is loading. Default: var(--foreground) */
54
+ loadingStroke?: string;
55
+ /** Pulse stroke opacity while chart is loading. Default: 0.5 */
56
+ loadingStrokeOpacity?: number;
57
+ /**
58
+ * Show the loading pulse overlay. Default: follows chart loading phase.
59
+ * Set `false` to disable even during loading.
60
+ */
61
+ loading?: boolean;
62
+ /** Override pulse animation mode (loop / exit / enter). */
63
+ loadingPulseMode?: LineLoadingPulseMode;
64
+ /**
65
+ * Loading animation while the chart is in loading status: the default
66
+ * traveling `"pulse"`, or a diagonal `"sweep"` shimmer across the skeleton
67
+ * area. Default: `"pulse"`.
68
+ */
69
+ loadingStyle?: LoadingStyle;
70
+ }
71
+ export declare function Area({ dataKey, yAxisId, fill, fillOpacity, stroke, strokeWidth, curve, animate, showLine, showHighlight, gradientToOpacity, gradientSpan, fadeEdges, showMarkers, markers, dashFromIndex, dashArray, loading, loadingStroke, loadingStrokeOpacity, loadingPulseMode, loadingStyle, }: AreaProps): import("react").JSX.Element;
72
+ export declare namespace Area {
73
+ var displayName: string;
74
+ }
75
+ export default Area;
76
+ //# sourceMappingURL=area.d.ts.map