@vllnt/ui 0.3.0-canary.f3cafe8 → 0.3.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 (336) hide show
  1. package/CHANGELOG.md +16 -5
  2. package/README.md +1 -1
  3. package/dist/components/accordion/accordion.js +2 -8
  4. package/dist/components/activity-heatmap/activity-heatmap.js +22 -29
  5. package/dist/components/activity-log/activity-log.js +52 -53
  6. package/dist/components/agent-activity/agent-activity.js +139 -125
  7. package/dist/components/ai-artifact/ai-artifact.js +115 -76
  8. package/dist/components/ai-chat-input/ai-chat-input.js +59 -61
  9. package/dist/components/ai-message-bubble/ai-message-bubble.js +63 -65
  10. package/dist/components/ai-sidebar/ai-sidebar.js +77 -55
  11. package/dist/components/ai-source-citation/ai-source-citation.js +38 -32
  12. package/dist/components/ai-streaming-text/ai-streaming-text.js +33 -35
  13. package/dist/components/ai-tool-call-display/ai-tool-call-display.js +58 -60
  14. package/dist/components/alert/alert.js +20 -7
  15. package/dist/components/alert-dialog/alert-dialog.js +36 -13
  16. package/dist/components/alert-pulse/alert-pulse.js +69 -69
  17. package/dist/components/anchor-port/anchor-port.js +26 -28
  18. package/dist/components/animated-beam/animated-beam.js +157 -0
  19. package/dist/components/animated-beam/index.js +4 -0
  20. package/dist/components/animated-grid-pattern/animated-grid-pattern.js +81 -0
  21. package/dist/components/animated-grid-pattern/index.js +6 -0
  22. package/dist/components/animated-list/animated-list.js +28 -0
  23. package/dist/components/animated-list/index.js +4 -0
  24. package/dist/components/animated-tabs/animated-tabs.js +98 -0
  25. package/dist/components/animated-tabs/index.js +6 -0
  26. package/dist/components/animated-testimonials/animated-testimonials.js +97 -0
  27. package/dist/components/animated-testimonials/index.js +6 -0
  28. package/dist/components/animated-text/animated-text.js +66 -67
  29. package/dist/components/animated-tooltip/animated-tooltip.js +58 -0
  30. package/dist/components/animated-tooltip/index.js +6 -0
  31. package/dist/components/auto-reload/auto-reload.js +109 -105
  32. package/dist/components/avatar/avatar.js +18 -7
  33. package/dist/components/avatar-group/avatar-group.js +35 -30
  34. package/dist/components/banner/banner.js +80 -77
  35. package/dist/components/bento-grid/bento-grid.js +46 -0
  36. package/dist/components/bento-grid/index.js +8 -0
  37. package/dist/components/blur-reveal/blur-reveal.js +83 -0
  38. package/dist/components/blur-reveal/index.js +4 -0
  39. package/dist/components/border-beam/border-beam.js +43 -45
  40. package/dist/components/bottom-activity-strip/bottom-activity-strip.js +5 -5
  41. package/dist/components/bottom-bar/bottom-bar.js +22 -18
  42. package/dist/components/button/button.js +18 -14
  43. package/dist/components/button-group/button-group.js +37 -0
  44. package/dist/components/button-group/index.js +8 -0
  45. package/dist/components/candlestick-chart/candlestick-chart.js +52 -54
  46. package/dist/components/canvas-shell/canvas-shell.js +11 -6
  47. package/dist/components/canvas-view/canvas-view.js +72 -74
  48. package/dist/components/card/card.js +35 -12
  49. package/dist/components/card-flip/card-flip.js +67 -0
  50. package/dist/components/card-flip/index.js +4 -0
  51. package/dist/components/carousel/carousel.js +78 -60
  52. package/dist/components/chain-of-thought/chain-of-thought.js +78 -0
  53. package/dist/components/chain-of-thought/index.js +6 -0
  54. package/dist/components/chart/area-chart.js +66 -67
  55. package/dist/components/chart/bar-chart.js +68 -70
  56. package/dist/components/chart/line-chart.js +69 -70
  57. package/dist/components/chat-dock-section/chat-dock-section.js +43 -45
  58. package/dist/components/checkbox/checkbox.js +6 -3
  59. package/dist/components/checkbox-group/checkbox-group.js +98 -0
  60. package/dist/components/checkbox-group/index.js +8 -0
  61. package/dist/components/choropleth-map/choropleth-map.js +90 -82
  62. package/dist/components/chronological-timeline/chronological-timeline.js +75 -72
  63. package/dist/components/civilization-card/civilization-card.js +59 -56
  64. package/dist/components/code-block/code-block.js +14 -17
  65. package/dist/components/code-playground/code-playground.js +8 -9
  66. package/dist/components/color-picker/color-picker.js +133 -0
  67. package/dist/components/color-picker/index.js +4 -0
  68. package/dist/components/combobox/combobox.js +57 -58
  69. package/dist/components/command/command.js +42 -15
  70. package/dist/components/comment-pin/comment-pin.js +58 -60
  71. package/dist/components/connector-edge/connector-edge.js +59 -54
  72. package/dist/components/content-intro/content-intro.js +4 -1
  73. package/dist/components/context-lens/context-lens.js +74 -73
  74. package/dist/components/context-menu/context-menu.js +55 -17
  75. package/dist/components/contribution-graph/contribution-graph.js +118 -0
  76. package/dist/components/contribution-graph/index.js +6 -0
  77. package/dist/components/conversation-thread/conversation-thread.js +89 -65
  78. package/dist/components/cookie-consent/cookie-consent.js +114 -115
  79. package/dist/components/copy-button/copy-button.js +100 -103
  80. package/dist/components/countdown-timer/countdown-timer.js +47 -75
  81. package/dist/components/credit-badge/credit-badge.js +26 -22
  82. package/dist/components/curriculum/curriculum.js +2 -2
  83. package/dist/components/cursor/cursor.js +52 -0
  84. package/dist/components/cursor/index.js +4 -0
  85. package/dist/components/data-list/data-list.js +54 -40
  86. package/dist/components/date-field/date-field.js +42 -0
  87. package/dist/components/date-field/index.js +4 -0
  88. package/dist/components/date-picker/date-picker.js +49 -50
  89. package/dist/components/date-range-picker/date-range-picker.js +73 -0
  90. package/dist/components/date-range-picker/index.js +6 -0
  91. package/dist/components/dialog/dialog.js +25 -9
  92. package/dist/components/dock/dock.js +109 -0
  93. package/dist/components/dock/index.js +5 -0
  94. package/dist/components/document-sibling-nav/document-sibling-nav.js +10 -5
  95. package/dist/components/dot-pattern/dot-pattern.js +36 -0
  96. package/dist/components/dot-pattern/index.js +4 -0
  97. package/dist/components/drawer/drawer.js +25 -9
  98. package/dist/components/dropdown-menu/dropdown-menu.js +56 -17
  99. package/dist/components/edge-label/edge-label.js +17 -15
  100. package/dist/components/empty-state/empty-state.js +27 -31
  101. package/dist/components/era-comparison/era-comparison.js +96 -83
  102. package/dist/components/expandable-cards/expandable-cards.js +61 -0
  103. package/dist/components/expandable-cards/index.js +6 -0
  104. package/dist/components/field/field.js +137 -0
  105. package/dist/components/field/index.js +16 -0
  106. package/dist/components/fieldset/fieldset.js +49 -0
  107. package/dist/components/fieldset/index.js +10 -0
  108. package/dist/components/file-upload/file-upload.js +4 -3
  109. package/dist/components/floating-navbar/floating-navbar.js +67 -0
  110. package/dist/components/floating-navbar/index.js +4 -0
  111. package/dist/components/floating-toolbar/floating-toolbar.js +49 -51
  112. package/dist/components/flow-diagram/flow-fullscreen.js +3 -13
  113. package/dist/components/flow-diagram/use-flow-diagram.js +7 -18
  114. package/dist/components/follow-mode/follow-mode.js +67 -69
  115. package/dist/components/form/form.js +131 -112
  116. package/dist/components/gantt-chart/gantt-chart.js +49 -51
  117. package/dist/components/gauge-chart/gauge-chart.js +132 -0
  118. package/dist/components/gauge-chart/index.js +4 -0
  119. package/dist/components/geography-quiz-map/geography-quiz-map.js +88 -78
  120. package/dist/components/glass-card/glass-card.js +25 -0
  121. package/dist/components/glass-card/index.js +4 -0
  122. package/dist/components/glass-panel/glass-panel.js +16 -14
  123. package/dist/components/glass-progress/glass-progress.js +39 -0
  124. package/dist/components/glass-progress/index.js +4 -0
  125. package/dist/components/globe-3d/globe-3d.js +70 -66
  126. package/dist/components/grid/grid.js +100 -0
  127. package/dist/components/grid/index.js +4 -0
  128. package/dist/components/group-hull/group-hull.js +27 -22
  129. package/dist/components/handoff-beacon/handoff-beacon.js +55 -57
  130. package/dist/components/heat-map-overlay/heat-map-overlay.js +55 -55
  131. package/dist/components/heat-overlay/heat-overlay.js +49 -48
  132. package/dist/components/historic-timeline/historic-timeline.js +57 -59
  133. package/dist/components/historical-figure-card/historical-figure-card.js +5 -3
  134. package/dist/components/hover-card/hover-card.js +8 -3
  135. package/dist/components/index.js +271 -0
  136. package/dist/components/infinite-plane/infinite-plane.js +34 -36
  137. package/dist/components/input/input.js +19 -17
  138. package/dist/components/input-group/index.js +14 -0
  139. package/dist/components/input-group/input-group.js +73 -0
  140. package/dist/components/input-otp/input-otp.js +25 -8
  141. package/dist/components/interactive-timeline/interactive-timeline.js +38 -15
  142. package/dist/components/item/index.js +18 -0
  143. package/dist/components/item/item.js +118 -0
  144. package/dist/components/jarvis-dock/jarvis-dock.js +40 -42
  145. package/dist/components/kbd/kbd.js +31 -42
  146. package/dist/components/keyboard-shortcuts-help/keyboard-shortcuts-help.js +7 -18
  147. package/dist/components/knowledge-check/knowledge-check.js +50 -58
  148. package/dist/components/label/label.js +6 -3
  149. package/dist/components/left-rail/left-rail.js +22 -18
  150. package/dist/components/link/index.js +5 -0
  151. package/dist/components/link/link.js +53 -0
  152. package/dist/components/liquid-glass/index.js +4 -0
  153. package/dist/components/liquid-glass/liquid-glass.js +39 -0
  154. package/dist/components/list-box/index.js +8 -0
  155. package/dist/components/list-box/list-box.js +130 -0
  156. package/dist/components/live-cursor/live-cursor.js +49 -51
  157. package/dist/components/live-feed/live-feed.js +51 -76
  158. package/dist/components/magnetic/index.js +4 -0
  159. package/dist/components/magnetic/magnetic.js +63 -0
  160. package/dist/components/magnetic-button/index.js +4 -0
  161. package/dist/components/magnetic-button/magnetic-button.js +64 -0
  162. package/dist/components/map-2d/map-2d.js +120 -101
  163. package/dist/components/map-timeline/map-timeline.js +188 -170
  164. package/dist/components/market-treemap/market-treemap.js +10 -6
  165. package/dist/components/marquee/marquee.js +64 -65
  166. package/dist/components/mdx-content/mdx-content.js +4 -1
  167. package/dist/components/menubar/menubar.js +82 -35
  168. package/dist/components/meteors/index.js +4 -0
  169. package/dist/components/meteors/meteors.js +62 -0
  170. package/dist/components/meter/index.js +5 -0
  171. package/dist/components/meter/meter.js +76 -0
  172. package/dist/components/metric-cluster/metric-cluster.js +47 -49
  173. package/dist/components/metric-gauge/metric-gauge.js +42 -44
  174. package/dist/components/mini-map-panel/mini-map-panel.js +71 -66
  175. package/dist/components/model-comparison/model-comparison.js +76 -67
  176. package/dist/components/multi-select/multi-select.js +100 -102
  177. package/dist/components/multi-select-lasso/multi-select-lasso.js +5 -5
  178. package/dist/components/native-select/index.js +4 -0
  179. package/dist/components/native-select/native-select.js +28 -0
  180. package/dist/components/navbar-saas/navbar-saas.js +54 -46
  181. package/dist/components/navigation-menu/navigation-menu.js +38 -13
  182. package/dist/components/newsletter-signup/newsletter-signup.js +5 -3
  183. package/dist/components/number-input/number-input.js +4 -3
  184. package/dist/components/number-ticker/number-ticker.js +50 -51
  185. package/dist/components/object-card/object-card.js +40 -42
  186. package/dist/components/object-handle/object-handle.js +33 -30
  187. package/dist/components/object-inspector/object-inspector.js +40 -42
  188. package/dist/components/order-book/order-book.js +59 -54
  189. package/dist/components/overview-board/overview-board.js +91 -87
  190. package/dist/components/panel/index.js +16 -0
  191. package/dist/components/panel/panel.js +95 -0
  192. package/dist/components/parallel-timeline/parallel-timeline.js +54 -56
  193. package/dist/components/particles/index.js +4 -0
  194. package/dist/components/particles/particles.js +52 -0
  195. package/dist/components/password-input/password-input.js +35 -36
  196. package/dist/components/phone-input/index.js +6 -0
  197. package/dist/components/phone-input/phone-input.js +63 -0
  198. package/dist/components/pie-chart/index.js +4 -0
  199. package/dist/components/pie-chart/pie-chart.js +130 -0
  200. package/dist/components/plan-badge/plan-badge.js +28 -24
  201. package/dist/components/playback-ghost/playback-ghost.js +46 -48
  202. package/dist/components/policy-delivery-panel/policy-delivery-panel.js +5 -5
  203. package/dist/components/popover/popover.js +8 -3
  204. package/dist/components/presence-stack/presence-stack.js +39 -41
  205. package/dist/components/presence-sync-indicator/presence-sync-indicator.js +5 -5
  206. package/dist/components/pricing-table/pricing-table.js +71 -70
  207. package/dist/components/primary-source-viewer/primary-source-viewer.js +90 -41
  208. package/dist/components/progress-tracker/progress-tracker.js +1 -1
  209. package/dist/components/progressive-blur/index.js +6 -0
  210. package/dist/components/progressive-blur/progressive-blur.js +48 -0
  211. package/dist/components/prompt-input/index.js +4 -0
  212. package/dist/components/prompt-input/prompt-input.js +185 -0
  213. package/dist/components/prompt-templates/prompt-templates.js +36 -36
  214. package/dist/components/property-section/property-section.js +28 -30
  215. package/dist/components/qr-code/index.js +4 -0
  216. package/dist/components/qr-code/qr-code.js +49 -0
  217. package/dist/components/radar-chart/index.js +6 -0
  218. package/dist/components/radar-chart/radar-chart.js +180 -0
  219. package/dist/components/radio-group/radio-group.js +12 -5
  220. package/dist/components/range-calendar/index.js +4 -0
  221. package/dist/components/range-calendar/range-calendar.js +35 -0
  222. package/dist/components/reasoning/index.js +4 -0
  223. package/dist/components/reasoning/reasoning.js +124 -0
  224. package/dist/components/relationship-inspector/relationship-inspector.js +5 -5
  225. package/dist/components/reveal-text/index.js +6 -0
  226. package/dist/components/reveal-text/reveal-text.js +93 -0
  227. package/dist/components/right-dock/right-dock.js +26 -21
  228. package/dist/components/role-badge/role-badge.js +22 -19
  229. package/dist/components/route-map/route-map.js +5 -3
  230. package/dist/components/routing-assignment-panel/routing-assignment-panel.js +5 -5
  231. package/dist/components/run-timeline/run-timeline.js +57 -59
  232. package/dist/components/runtime-overview-panel/runtime-overview-panel.js +5 -5
  233. package/dist/components/sankey-chart/index.js +6 -0
  234. package/dist/components/sankey-chart/sankey-chart.js +255 -0
  235. package/dist/components/scope-selector/scope-selector.js +39 -40
  236. package/dist/components/scramble-text/index.js +4 -0
  237. package/dist/components/scramble-text/scramble-text.js +76 -0
  238. package/dist/components/scroll-area/scroll-area.js +14 -5
  239. package/dist/components/scroll-progress/index.js +4 -0
  240. package/dist/components/scroll-progress/scroll-progress.js +50 -0
  241. package/dist/components/search-bar/search-bar.js +5 -2
  242. package/dist/components/search-field/index.js +4 -0
  243. package/dist/components/search-field/search-field.js +67 -0
  244. package/dist/components/segmented-control/segmented-control.js +14 -5
  245. package/dist/components/select/select.js +46 -15
  246. package/dist/components/selection-halo/selection-halo.js +53 -62
  247. package/dist/components/selection-presence/selection-presence.js +5 -5
  248. package/dist/components/separator/separator.js +19 -16
  249. package/dist/components/share-dialog/share-dialog.js +6 -8
  250. package/dist/components/sheet/sheet.js +26 -9
  251. package/dist/components/shimmer-button/index.js +4 -0
  252. package/dist/components/shimmer-button/shimmer-button.js +41 -0
  253. package/dist/components/shimmer-text/index.js +4 -0
  254. package/dist/components/shimmer-text/shimmer-text.js +40 -0
  255. package/dist/components/shine-border/index.js +4 -0
  256. package/dist/components/shine-border/shine-border.js +38 -0
  257. package/dist/components/shiny-button/index.js +4 -0
  258. package/dist/components/shiny-button/shiny-button.js +39 -0
  259. package/dist/components/sidebar-provider/sidebar-provider.js +2 -7
  260. package/dist/components/slider/slider.js +6 -3
  261. package/dist/components/slideshow/slideshow.js +380 -302
  262. package/dist/components/snap-guides/snap-guides.js +35 -35
  263. package/dist/components/sparkles/index.js +4 -0
  264. package/dist/components/sparkles/sparkles.js +51 -0
  265. package/dist/components/sparkline-grid/sparkline-grid.js +6 -7
  266. package/dist/components/spinner/unicode-spinner.js +57 -56
  267. package/dist/components/spinning-text/index.js +4 -0
  268. package/dist/components/spinning-text/spinning-text.js +58 -0
  269. package/dist/components/spotlight-card/index.js +4 -0
  270. package/dist/components/spotlight-card/spotlight-card.js +53 -0
  271. package/dist/components/stat-card/stat-card.js +37 -39
  272. package/dist/components/state-badge-overlay/state-badge-overlay.js +5 -5
  273. package/dist/components/status-board/status-board.js +20 -22
  274. package/dist/components/status-indicator/status-indicator.js +38 -40
  275. package/dist/components/sticky-metric/sticky-metric.js +58 -60
  276. package/dist/components/story-map/story-map.js +66 -60
  277. package/dist/components/subscription-card/subscription-card.js +68 -70
  278. package/dist/components/switch/switch.js +6 -3
  279. package/dist/components/table/table.js +47 -16
  280. package/dist/components/table-of-contents-panel/table-of-contents-panel.js +7 -18
  281. package/dist/components/tabs/tabs.js +2 -2
  282. package/dist/components/tag-group/index.js +8 -0
  283. package/dist/components/tag-group/tag-group.js +127 -0
  284. package/dist/components/tags-input/tags-input.js +59 -60
  285. package/dist/components/terminal/terminal.js +7 -15
  286. package/dist/components/text-animate/index.js +6 -0
  287. package/dist/components/text-animate/text-animate.js +129 -0
  288. package/dist/components/text-field/index.js +4 -0
  289. package/dist/components/text-field/text-field.js +59 -0
  290. package/dist/components/text-reveal/index.js +4 -0
  291. package/dist/components/text-reveal/text-reveal.js +90 -0
  292. package/dist/components/text-shimmer/index.js +4 -0
  293. package/dist/components/text-shimmer/text-shimmer.js +33 -0
  294. package/dist/components/textarea/textarea.js +17 -16
  295. package/dist/components/thinking-block/thinking-block.js +1 -1
  296. package/dist/components/thread-bubble/thread-bubble.js +51 -53
  297. package/dist/components/threshold-ring/threshold-ring.js +76 -78
  298. package/dist/components/ticker-tape/ticker-tape.js +47 -46
  299. package/dist/components/tilt-card/index.js +4 -0
  300. package/dist/components/tilt-card/tilt-card.js +70 -0
  301. package/dist/components/time-field/index.js +4 -0
  302. package/dist/components/time-field/time-field.js +42 -0
  303. package/dist/components/time-picker/index.js +4 -0
  304. package/dist/components/time-picker/time-picker.js +113 -0
  305. package/dist/components/timeline/timeline.js +70 -66
  306. package/dist/components/timeline-scrubber/timeline-scrubber.js +5 -3
  307. package/dist/components/tldr-section/tldr-section.js +9 -6
  308. package/dist/components/toast/toast.js +32 -11
  309. package/dist/components/toggle/toggle.js +8 -3
  310. package/dist/components/toggle-group/toggle-group.js +20 -6
  311. package/dist/components/toolbar/index.js +8 -0
  312. package/dist/components/toolbar/toolbar.js +87 -0
  313. package/dist/components/tooltip/tooltip.js +7 -3
  314. package/dist/components/top-bar/top-bar.js +30 -24
  315. package/dist/components/transaction-list/transaction-list.js +53 -47
  316. package/dist/components/tree-view/tree-view.js +72 -76
  317. package/dist/components/typewriter/index.js +4 -0
  318. package/dist/components/typewriter/typewriter.js +71 -0
  319. package/dist/components/typography/index.js +26 -0
  320. package/dist/components/typography/typography.js +173 -0
  321. package/dist/components/usage-breakdown/usage-breakdown.js +37 -38
  322. package/dist/components/viewport-bookmarks/viewport-bookmarks.js +5 -5
  323. package/dist/components/wallet-card/wallet-card.js +56 -58
  324. package/dist/components/watchlist/watchlist.js +47 -52
  325. package/dist/components/workspace-switcher/workspace-switcher.js +58 -52
  326. package/dist/components/world-breadcrumbs/world-breadcrumbs.js +43 -45
  327. package/dist/components/world-clock-bar/world-clock-bar.js +34 -61
  328. package/dist/components/zoom-hud/zoom-hud.js +56 -51
  329. package/dist/index.d.ts +6132 -3949
  330. package/dist/index.js +9 -0
  331. package/dist/lib/format.js +14 -0
  332. package/dist/lib/use-body-scroll-lock.js +30 -0
  333. package/dist/lib/use-escape-key.js +24 -0
  334. package/dist/lib/use-live-date.js +26 -0
  335. package/package.json +7 -5
  336. package/styles.css +84 -0
@@ -0,0 +1,5 @@
1
+ import { Dock, DockIcon } from "./dock";
2
+ export {
3
+ Dock,
4
+ DockIcon
5
+ };
@@ -1,7 +1,4 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import {
3
- forwardRef
4
- } from "react";
5
2
  import { cva } from "class-variance-authority";
6
3
  import { cn } from "../../lib/utils";
7
4
  const navVariants = cva("grid w-full gap-3 text-sm sm:grid-cols-2", {
@@ -64,7 +61,15 @@ function buildAriaLabel(caption, link, variant) {
64
61
  }
65
62
  return `${caption}: ${link.title}`;
66
63
  }
67
- const DocumentSiblingNav = forwardRef(({ className, labels, next, previous, variant, ...rest }, ref) => {
64
+ const DocumentSiblingNav = ({
65
+ className,
66
+ labels,
67
+ next,
68
+ previous,
69
+ ref,
70
+ variant,
71
+ ...rest
72
+ }) => {
68
73
  if (!previous && !next) return null;
69
74
  const resolvedVariant = variant ?? "with-title";
70
75
  const resolvedLabels = { ...DEFAULT_LABELS, ...labels };
@@ -103,7 +108,7 @@ const DocumentSiblingNav = forwardRef(({ className, labels, next, previous, vari
103
108
  ]
104
109
  }
105
110
  );
106
- });
111
+ };
107
112
  DocumentSiblingNav.displayName = "DocumentSiblingNav";
108
113
  export {
109
114
  DocumentSiblingNav,
@@ -0,0 +1,36 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { cn } from "../../lib/utils";
3
+ const fadeMask = "radial-gradient(ellipse at center, black, transparent 75%)";
4
+ const DotPattern = ({
5
+ className,
6
+ dotRadius = 1,
7
+ fade = true,
8
+ ref,
9
+ spacing = 16,
10
+ style,
11
+ ...props
12
+ }) => {
13
+ return /* @__PURE__ */ jsx(
14
+ "div",
15
+ {
16
+ "aria-hidden": "true",
17
+ className: cn(
18
+ "pointer-events-none absolute inset-0 text-muted-foreground/40",
19
+ className
20
+ ),
21
+ ref,
22
+ style: {
23
+ backgroundImage: `radial-gradient(currentColor ${dotRadius}px, transparent ${dotRadius}px)`,
24
+ backgroundSize: `${spacing}px ${spacing}px`,
25
+ maskImage: fade ? fadeMask : void 0,
26
+ WebkitMaskImage: fade ? fadeMask : void 0,
27
+ ...style
28
+ },
29
+ ...props
30
+ }
31
+ );
32
+ };
33
+ DotPattern.displayName = "DotPattern";
34
+ export {
35
+ DotPattern
36
+ };
@@ -0,0 +1,4 @@
1
+ import { DotPattern } from "./dot-pattern";
2
+ export {
3
+ DotPattern
4
+ };
@@ -1,6 +1,5 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { forwardRef } from "react";
4
3
  import { Drawer as DrawerPrimitive } from "vaul";
5
4
  import { cn } from "../../lib/utils";
6
5
  const Drawer = ({
@@ -17,16 +16,25 @@ Drawer.displayName = "Drawer";
17
16
  const DrawerTrigger = DrawerPrimitive.Trigger;
18
17
  const DrawerPortal = DrawerPrimitive.Portal;
19
18
  const DrawerClose = DrawerPrimitive.Close;
20
- const DrawerOverlay = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
19
+ const DrawerOverlay = ({
20
+ className,
21
+ ref,
22
+ ...props
23
+ }) => /* @__PURE__ */ jsx(
21
24
  DrawerPrimitive.Overlay,
22
25
  {
23
26
  className: cn("fixed inset-0 z-50 bg-black/80", className),
24
27
  ref,
25
28
  ...props
26
29
  }
27
- ));
30
+ );
28
31
  DrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName;
29
- const DrawerContent = forwardRef(({ children, className, ...props }, ref) => /* @__PURE__ */ jsxs(DrawerPortal, { children: [
32
+ const DrawerContent = ({
33
+ children,
34
+ className,
35
+ ref,
36
+ ...props
37
+ }) => /* @__PURE__ */ jsxs(DrawerPortal, { children: [
30
38
  /* @__PURE__ */ jsx(DrawerOverlay, {}),
31
39
  /* @__PURE__ */ jsxs(
32
40
  DrawerPrimitive.Content,
@@ -43,7 +51,7 @@ const DrawerContent = forwardRef(({ children, className, ...props }, ref) => /*
43
51
  ]
44
52
  }
45
53
  )
46
- ] }));
54
+ ] });
47
55
  DrawerContent.displayName = "DrawerContent";
48
56
  const DrawerHeader = ({
49
57
  className,
@@ -67,7 +75,11 @@ const DrawerFooter = ({
67
75
  }
68
76
  );
69
77
  DrawerFooter.displayName = "DrawerFooter";
70
- const DrawerTitle = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
78
+ const DrawerTitle = ({
79
+ className,
80
+ ref,
81
+ ...props
82
+ }) => /* @__PURE__ */ jsx(
71
83
  DrawerPrimitive.Title,
72
84
  {
73
85
  className: cn(
@@ -77,16 +89,20 @@ const DrawerTitle = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
77
89
  ref,
78
90
  ...props
79
91
  }
80
- ));
92
+ );
81
93
  DrawerTitle.displayName = DrawerPrimitive.Title.displayName;
82
- const DrawerDescription = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
94
+ const DrawerDescription = ({
95
+ className,
96
+ ref,
97
+ ...props
98
+ }) => /* @__PURE__ */ jsx(
83
99
  DrawerPrimitive.Description,
84
100
  {
85
101
  className: cn("text-sm text-muted-foreground", className),
86
102
  ref,
87
103
  ...props
88
104
  }
89
- ));
105
+ );
90
106
  DrawerDescription.displayName = DrawerPrimitive.Description.displayName;
91
107
  export {
92
108
  Drawer,
@@ -1,6 +1,5 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import * as React from "react";
4
3
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
5
4
  import { cn } from "../../lib/utils";
6
5
  const DropdownMenu = DropdownMenuPrimitive.Root;
@@ -9,7 +8,13 @@ const DropdownMenuGroup = DropdownMenuPrimitive.Group;
9
8
  const DropdownMenuPortal = DropdownMenuPrimitive.Portal;
10
9
  const DropdownMenuSub = DropdownMenuPrimitive.Sub;
11
10
  const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
12
- const DropdownMenuSubTrigger = React.forwardRef(({ children, className, inset, ...props }, reference) => /* @__PURE__ */ jsxs(
11
+ const DropdownMenuSubTrigger = ({
12
+ children,
13
+ className,
14
+ inset,
15
+ ref: reference,
16
+ ...props
17
+ }) => /* @__PURE__ */ jsxs(
13
18
  DropdownMenuPrimitive.SubTrigger,
14
19
  {
15
20
  className: cn(
@@ -24,9 +29,13 @@ const DropdownMenuSubTrigger = React.forwardRef(({ children, className, inset, .
24
29
  /* @__PURE__ */ jsx("span", { className: "ml-auto text-xs", children: "\u203A" })
25
30
  ]
26
31
  }
27
- ));
32
+ );
28
33
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
29
- const DropdownMenuSubContent = React.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx(
34
+ const DropdownMenuSubContent = ({
35
+ className,
36
+ ref: reference,
37
+ ...props
38
+ }) => /* @__PURE__ */ jsx(
30
39
  DropdownMenuPrimitive.SubContent,
31
40
  {
32
41
  className: cn(
@@ -36,9 +45,14 @@ const DropdownMenuSubContent = React.forwardRef(({ className, ...props }, refere
36
45
  ref: reference,
37
46
  ...props
38
47
  }
39
- ));
48
+ );
40
49
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
41
- const DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, ...props }, reference) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
50
+ const DropdownMenuContent = ({
51
+ className,
52
+ ref: reference,
53
+ sideOffset = 4,
54
+ ...props
55
+ }) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
42
56
  DropdownMenuPrimitive.Content,
43
57
  {
44
58
  className: cn(
@@ -49,9 +63,14 @@ const DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, ...pr
49
63
  sideOffset,
50
64
  ...props
51
65
  }
52
- ) }));
66
+ ) });
53
67
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
54
- const DropdownMenuItem = React.forwardRef(({ className, inset, ...props }, reference) => /* @__PURE__ */ jsx(
68
+ const DropdownMenuItem = ({
69
+ className,
70
+ inset,
71
+ ref: reference,
72
+ ...props
73
+ }) => /* @__PURE__ */ jsx(
55
74
  DropdownMenuPrimitive.Item,
56
75
  {
57
76
  className: cn(
@@ -62,9 +81,15 @@ const DropdownMenuItem = React.forwardRef(({ className, inset, ...props }, refer
62
81
  ref: reference,
63
82
  ...props
64
83
  }
65
- ));
84
+ );
66
85
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
67
- const DropdownMenuCheckboxItem = React.forwardRef(({ checked, children, className, ...props }, reference) => /* @__PURE__ */ jsxs(
86
+ const DropdownMenuCheckboxItem = ({
87
+ checked,
88
+ children,
89
+ className,
90
+ ref: reference,
91
+ ...props
92
+ }) => /* @__PURE__ */ jsxs(
68
93
  DropdownMenuPrimitive.CheckboxItem,
69
94
  {
70
95
  checked,
@@ -79,9 +104,14 @@ const DropdownMenuCheckboxItem = React.forwardRef(({ checked, children, classNam
79
104
  children
80
105
  ]
81
106
  }
82
- ));
107
+ );
83
108
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
84
- const DropdownMenuRadioItem = React.forwardRef(({ children, className, ...props }, reference) => /* @__PURE__ */ jsxs(
109
+ const DropdownMenuRadioItem = ({
110
+ children,
111
+ className,
112
+ ref: reference,
113
+ ...props
114
+ }) => /* @__PURE__ */ jsxs(
85
115
  DropdownMenuPrimitive.RadioItem,
86
116
  {
87
117
  className: cn(
@@ -95,9 +125,14 @@ const DropdownMenuRadioItem = React.forwardRef(({ children, className, ...props
95
125
  children
96
126
  ]
97
127
  }
98
- ));
128
+ );
99
129
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
100
- const DropdownMenuLabel = React.forwardRef(({ className, inset, ...props }, reference) => /* @__PURE__ */ jsx(
130
+ const DropdownMenuLabel = ({
131
+ className,
132
+ inset,
133
+ ref: reference,
134
+ ...props
135
+ }) => /* @__PURE__ */ jsx(
101
136
  DropdownMenuPrimitive.Label,
102
137
  {
103
138
  className: cn(
@@ -108,16 +143,20 @@ const DropdownMenuLabel = React.forwardRef(({ className, inset, ...props }, refe
108
143
  ref: reference,
109
144
  ...props
110
145
  }
111
- ));
146
+ );
112
147
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
113
- const DropdownMenuSeparator = React.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx(
148
+ const DropdownMenuSeparator = ({
149
+ className,
150
+ ref: reference,
151
+ ...props
152
+ }) => /* @__PURE__ */ jsx(
114
153
  DropdownMenuPrimitive.Separator,
115
154
  {
116
155
  className: cn("-m-1 h-px bg-muted", className),
117
156
  ref: reference,
118
157
  ...props
119
158
  }
120
- ));
159
+ );
121
160
  DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
122
161
  const DropdownMenuShortcut = ({
123
162
  className,
@@ -1,24 +1,26 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { forwardRef } from "react";
3
2
  import { cn } from "../../lib/utils";
4
3
  const emphasisClasses = {
5
4
  active: "border-sky-500/30 bg-sky-500/10 text-sky-700 dark:text-sky-300",
6
5
  subtle: "border-border/60 bg-background/90 text-muted-foreground"
7
6
  };
8
- const EdgeLabel = forwardRef(
9
- ({ className, emphasis = "subtle", ...props }, ref) => /* @__PURE__ */ jsx(
10
- "span",
11
- {
12
- className: cn(
13
- "inline-flex items-center rounded-full border px-2.5 py-1 text-[11px] font-medium uppercase tracking-[0.18em] shadow-sm",
14
- emphasisClasses[emphasis],
15
- className
16
- ),
17
- "data-emphasis": emphasis,
18
- ref,
19
- ...props
20
- }
21
- )
7
+ const EdgeLabel = ({
8
+ className,
9
+ emphasis = "subtle",
10
+ ref,
11
+ ...props
12
+ }) => /* @__PURE__ */ jsx(
13
+ "span",
14
+ {
15
+ className: cn(
16
+ "inline-flex items-center rounded-full border px-2.5 py-1 text-[11px] font-medium uppercase tracking-[0.18em] shadow-sm",
17
+ emphasisClasses[emphasis],
18
+ className
19
+ ),
20
+ "data-emphasis": emphasis,
21
+ ref,
22
+ ...props
23
+ }
22
24
  );
23
25
  EdgeLabel.displayName = "EdgeLabel";
24
26
  export {
@@ -1,7 +1,4 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import {
3
- forwardRef
4
- } from "react";
5
2
  import { cva } from "class-variance-authority";
6
3
  import { cn } from "../../lib/utils";
7
4
  const emptyStateVariants = cva(
@@ -58,34 +55,33 @@ const iconVariants = cva(
58
55
  }
59
56
  }
60
57
  );
61
- const EmptyState = forwardRef(
62
- ({
63
- children,
64
- className,
65
- description,
66
- icon,
67
- role: roleOverride,
68
- size,
69
- title,
70
- ...rest
71
- }, ref) => {
72
- return /* @__PURE__ */ jsxs(
73
- "div",
74
- {
75
- className: cn(emptyStateVariants({ size }), className),
76
- ref,
77
- role: roleOverride ?? "status",
78
- ...rest,
79
- children: [
80
- icon ? /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: cn(iconVariants({ size })), children: icon }) : null,
81
- title ? /* @__PURE__ */ jsx("h3", { className: cn(titleVariants({ size })), children: title }) : null,
82
- description ? /* @__PURE__ */ jsx("p", { className: cn(descriptionVariants({ size })), children: description }) : null,
83
- children ? /* @__PURE__ */ jsx("div", { className: "mt-2 flex flex-wrap items-center justify-center gap-2", children }) : null
84
- ]
85
- }
86
- );
87
- }
88
- );
58
+ const EmptyState = ({
59
+ children,
60
+ className,
61
+ description,
62
+ icon,
63
+ ref,
64
+ role: roleOverride,
65
+ size,
66
+ title,
67
+ ...rest
68
+ }) => {
69
+ return /* @__PURE__ */ jsxs(
70
+ "div",
71
+ {
72
+ className: cn(emptyStateVariants({ size }), className),
73
+ ref,
74
+ role: roleOverride ?? "status",
75
+ ...rest,
76
+ children: [
77
+ icon ? /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: cn(iconVariants({ size })), children: icon }) : null,
78
+ title ? /* @__PURE__ */ jsx("h3", { className: cn(titleVariants({ size })), children: title }) : null,
79
+ description ? /* @__PURE__ */ jsx("p", { className: cn(descriptionVariants({ size })), children: description }) : null,
80
+ children ? /* @__PURE__ */ jsx("div", { className: "mt-2 flex flex-wrap items-center justify-center gap-2", children }) : null
81
+ ]
82
+ }
83
+ );
84
+ };
89
85
  EmptyState.displayName = "EmptyState";
90
86
  export {
91
87
  EmptyState,
@@ -2,8 +2,7 @@
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import {
4
4
  createContext,
5
- forwardRef,
6
- useContext,
5
+ use,
7
6
  useMemo
8
7
  } from "react";
9
8
  import { cn } from "../../lib/utils";
@@ -48,21 +47,24 @@ const EraColumnContext = createContext({
48
47
  color: "neutral"
49
48
  });
50
49
  function useEraColumnColor() {
51
- return useContext(EraColumnContext).color;
50
+ return use(EraColumnContext).color;
52
51
  }
53
- const EraComparison = forwardRef(
54
- ({ children, className, ...rest }, ref) => /* @__PURE__ */ jsx(
55
- "section",
56
- {
57
- className: cn(
58
- "grid grid-cols-1 gap-4 md:grid-cols-2 xl:grid-cols-3",
59
- className
60
- ),
61
- ref,
62
- ...rest,
63
- children
64
- }
65
- )
52
+ const EraComparison = ({
53
+ children,
54
+ className,
55
+ ref,
56
+ ...rest
57
+ }) => /* @__PURE__ */ jsx(
58
+ "section",
59
+ {
60
+ className: cn(
61
+ "grid grid-cols-1 gap-4 md:grid-cols-2 xl:grid-cols-3",
62
+ className
63
+ ),
64
+ ref,
65
+ ...rest,
66
+ children
67
+ }
66
68
  );
67
69
  EraComparison.displayName = "EraComparison";
68
70
  function ColumnHeader({
@@ -96,81 +98,92 @@ function ColumnHeader({
96
98
  region ? /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: region }) : null
97
99
  ] });
98
100
  }
99
- const EraColumn = forwardRef(
100
- (props, ref) => {
101
- const {
102
- children,
103
- className,
104
- color = "neutral",
105
- name,
106
- period,
107
- region,
108
- ...rest
109
- } = props;
110
- const contextValue = useMemo(
111
- () => ({ color }),
112
- [color]
113
- );
114
- return /* @__PURE__ */ jsx(EraColumnContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxs(
115
- "article",
116
- {
117
- className: cn(
118
- "flex flex-col gap-3 rounded-2xl border border-border bg-background p-4 shadow-sm",
119
- className
120
- ),
121
- "data-color": color,
122
- ref,
123
- ...rest,
124
- children: [
125
- /* @__PURE__ */ jsx(
126
- ColumnHeader,
127
- {
128
- color,
129
- name,
130
- period,
131
- region
132
- }
133
- ),
134
- /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-3", children })
135
- ]
136
- }
137
- ) });
138
- }
139
- );
140
- EraColumn.displayName = "EraColumn";
141
- const EraDomain = forwardRef(
142
- ({ children, className, name, ...rest }, ref) => /* @__PURE__ */ jsxs(
143
- "section",
101
+ const EraColumn = ({
102
+ ref,
103
+ ...props
104
+ }) => {
105
+ const {
106
+ children,
107
+ className,
108
+ color = "neutral",
109
+ name,
110
+ period,
111
+ region,
112
+ ...rest
113
+ } = props;
114
+ const contextValue = useMemo(
115
+ () => ({ color }),
116
+ [color]
117
+ );
118
+ return /* @__PURE__ */ jsx(EraColumnContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxs(
119
+ "article",
144
120
  {
145
- className: cn("flex flex-col gap-2", className),
146
- "data-domain": typeof name === "string" ? name : void 0,
121
+ className: cn(
122
+ "flex flex-col gap-3 rounded-2xl border border-border bg-background p-4 shadow-sm",
123
+ className
124
+ ),
125
+ "data-color": color,
147
126
  ref,
148
127
  ...rest,
149
128
  children: [
150
- /* @__PURE__ */ jsx("h4", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: name }),
151
- children
129
+ /* @__PURE__ */ jsx(
130
+ ColumnHeader,
131
+ {
132
+ color,
133
+ name,
134
+ period,
135
+ region
136
+ }
137
+ ),
138
+ /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-3", children })
152
139
  ]
153
140
  }
154
- )
155
- );
156
- EraDomain.displayName = "EraDomain";
157
- const EraHighlight = forwardRef(
158
- ({ children, className, ...rest }, ref) => {
159
- const color = useEraColumnColor();
160
- const palette = ERA_PALETTE[color];
161
- return /* @__PURE__ */ jsx(
162
- "p",
163
- {
164
- className: cn("rounded-md px-2 py-1 text-sm", palette.chip, className),
165
- ref,
166
- ...rest,
167
- children
168
- }
169
- );
141
+ ) });
142
+ };
143
+ EraColumn.displayName = "EraColumn";
144
+ const EraDomain = ({
145
+ children,
146
+ className,
147
+ name,
148
+ ref,
149
+ ...rest
150
+ }) => /* @__PURE__ */ jsxs(
151
+ "section",
152
+ {
153
+ className: cn("flex flex-col gap-2", className),
154
+ "data-domain": typeof name === "string" ? name : void 0,
155
+ ref,
156
+ ...rest,
157
+ children: [
158
+ /* @__PURE__ */ jsx("h4", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: name }),
159
+ children
160
+ ]
170
161
  }
171
162
  );
163
+ EraDomain.displayName = "EraDomain";
164
+ const EraHighlight = ({
165
+ children,
166
+ className,
167
+ ref,
168
+ ...rest
169
+ }) => {
170
+ const color = useEraColumnColor();
171
+ const palette = ERA_PALETTE[color];
172
+ return /* @__PURE__ */ jsx(
173
+ "p",
174
+ {
175
+ className: cn("rounded-md px-2 py-1 text-sm", palette.chip, className),
176
+ ref,
177
+ ...rest,
178
+ children
179
+ }
180
+ );
181
+ };
172
182
  EraHighlight.displayName = "EraHighlight";
173
- const EraFigure = forwardRef((props, ref) => {
183
+ const EraFigure = ({
184
+ ref,
185
+ ...props
186
+ }) => {
174
187
  const { anchorProps, className, href, name, ...rest } = props;
175
188
  const color = useEraColumnColor();
176
189
  const palette = ERA_PALETTE[color];
@@ -204,7 +217,7 @@ const EraFigure = forwardRef((props, ref) => {
204
217
  children: name
205
218
  }
206
219
  );
207
- });
220
+ };
208
221
  EraFigure.displayName = "EraFigure";
209
222
  export {
210
223
  EraColumn,