@neynar/ui 0.1.1 → 0.1.3

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 (440) hide show
  1. package/dist/components/ui/accordion.d.ts +1 -25
  2. package/dist/components/ui/accordion.d.ts.map +1 -1
  3. package/dist/components/ui/alert-dialog.d.ts +240 -46
  4. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  5. package/dist/components/ui/alert.d.ts +73 -11
  6. package/dist/components/ui/alert.d.ts.map +1 -1
  7. package/dist/components/ui/aspect-ratio.d.ts +44 -10
  8. package/dist/components/ui/aspect-ratio.d.ts.map +1 -1
  9. package/dist/components/ui/avatar.d.ts +117 -33
  10. package/dist/components/ui/avatar.d.ts.map +1 -1
  11. package/dist/components/ui/badge.d.ts +50 -71
  12. package/dist/components/ui/badge.d.ts.map +1 -1
  13. package/dist/components/ui/breadcrumb.d.ts +231 -49
  14. package/dist/components/ui/breadcrumb.d.ts.map +1 -1
  15. package/dist/components/ui/button.d.ts +189 -71
  16. package/dist/components/ui/button.d.ts.map +1 -1
  17. package/dist/components/ui/calendar.d.ts +197 -40
  18. package/dist/components/ui/calendar.d.ts.map +1 -1
  19. package/dist/components/ui/card.d.ts +7 -22
  20. package/dist/components/ui/card.d.ts.map +1 -1
  21. package/dist/components/ui/carousel.d.ts +369 -99
  22. package/dist/components/ui/carousel.d.ts.map +1 -1
  23. package/dist/components/ui/chart.d.ts.map +1 -1
  24. package/dist/components/ui/checkbox.d.ts +110 -38
  25. package/dist/components/ui/checkbox.d.ts.map +1 -1
  26. package/dist/components/ui/collapsible.d.ts +246 -61
  27. package/dist/components/ui/collapsible.d.ts.map +1 -1
  28. package/dist/components/ui/combobox.d.ts +207 -159
  29. package/dist/components/ui/combobox.d.ts.map +1 -1
  30. package/dist/components/ui/command.d.ts +336 -67
  31. package/dist/components/ui/command.d.ts.map +1 -1
  32. package/dist/components/ui/container.d.ts +159 -64
  33. package/dist/components/ui/container.d.ts.map +1 -1
  34. package/dist/components/ui/context-menu.d.ts +321 -39
  35. package/dist/components/ui/context-menu.d.ts.map +1 -1
  36. package/dist/components/ui/date-picker.d.ts +113 -86
  37. package/dist/components/ui/date-picker.d.ts.map +1 -1
  38. package/dist/components/ui/dialog.d.ts +106 -25
  39. package/dist/components/ui/dialog.d.ts.map +1 -1
  40. package/dist/components/ui/drawer.d.ts +388 -59
  41. package/dist/components/ui/drawer.d.ts.map +1 -1
  42. package/dist/components/ui/dropdown-menu.d.ts +521 -74
  43. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  44. package/dist/components/ui/empty-state.d.ts +148 -76
  45. package/dist/components/ui/empty-state.d.ts.map +1 -1
  46. package/dist/components/ui/hover-card.d.ts +253 -34
  47. package/dist/components/ui/hover-card.d.ts.map +1 -1
  48. package/dist/components/ui/input.d.ts +143 -44
  49. package/dist/components/ui/input.d.ts.map +1 -1
  50. package/dist/components/ui/label.d.ts +0 -8
  51. package/dist/components/ui/label.d.ts.map +1 -1
  52. package/dist/components/ui/menubar.d.ts +288 -46
  53. package/dist/components/ui/menubar.d.ts.map +1 -1
  54. package/dist/components/ui/navigation-menu.d.ts +444 -127
  55. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  56. package/dist/components/ui/pagination.d.ts +342 -66
  57. package/dist/components/ui/pagination.d.ts.map +1 -1
  58. package/dist/components/ui/popover.d.ts +0 -8
  59. package/dist/components/ui/popover.d.ts.map +1 -1
  60. package/dist/components/ui/progress.d.ts +88 -30
  61. package/dist/components/ui/progress.d.ts.map +1 -1
  62. package/dist/components/ui/radio-group.d.ts +189 -45
  63. package/dist/components/ui/radio-group.d.ts.map +1 -1
  64. package/dist/components/ui/resizable.d.ts +178 -62
  65. package/dist/components/ui/resizable.d.ts.map +1 -1
  66. package/dist/components/ui/scroll-area.d.ts +180 -21
  67. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  68. package/dist/components/ui/select.d.ts +382 -60
  69. package/dist/components/ui/select.d.ts.map +1 -1
  70. package/dist/components/ui/separator.d.ts +52 -39
  71. package/dist/components/ui/separator.d.ts.map +1 -1
  72. package/dist/components/ui/sheet.d.ts +144 -27
  73. package/dist/components/ui/sheet.d.ts.map +1 -1
  74. package/dist/components/ui/sidebar.d.ts +81 -31
  75. package/dist/components/ui/sidebar.d.ts.map +1 -1
  76. package/dist/components/ui/skeleton.d.ts +94 -32
  77. package/dist/components/ui/skeleton.d.ts.map +1 -1
  78. package/dist/components/ui/slider.d.ts +37 -31
  79. package/dist/components/ui/slider.d.ts.map +1 -1
  80. package/dist/components/ui/sonner.d.ts +280 -46
  81. package/dist/components/ui/sonner.d.ts.map +1 -1
  82. package/dist/components/ui/stack.d.ts +289 -148
  83. package/dist/components/ui/stack.d.ts.map +1 -1
  84. package/dist/components/ui/stories/aspect-ratio.stories.d.ts +1 -2
  85. package/dist/components/ui/stories/aspect-ratio.stories.d.ts.map +1 -1
  86. package/dist/components/ui/stories/container.stories.d.ts +2 -3
  87. package/dist/components/ui/stories/container.stories.d.ts.map +1 -1
  88. package/dist/components/ui/stories/empty-state.stories.d.ts +2 -2
  89. package/dist/components/ui/stories/scroll-area.stories.d.ts +1 -2
  90. package/dist/components/ui/stories/scroll-area.stories.d.ts.map +1 -1
  91. package/dist/components/ui/stories/stack.stories.d.ts +1 -1
  92. package/dist/components/ui/stories/text-field.stories.d.ts +7 -1
  93. package/dist/components/ui/stories/text-field.stories.d.ts.map +1 -1
  94. package/dist/components/ui/switch.d.ts +44 -38
  95. package/dist/components/ui/switch.d.ts.map +1 -1
  96. package/dist/components/ui/table.d.ts +33 -0
  97. package/dist/components/ui/table.d.ts.map +1 -1
  98. package/dist/components/ui/tabs.d.ts +4 -22
  99. package/dist/components/ui/tabs.d.ts.map +1 -1
  100. package/dist/components/ui/text-field.d.ts +170 -84
  101. package/dist/components/ui/text-field.d.ts.map +1 -1
  102. package/dist/components/ui/textarea.d.ts +106 -29
  103. package/dist/components/ui/textarea.d.ts.map +1 -1
  104. package/dist/components/ui/theme-toggle.d.ts +190 -65
  105. package/dist/components/ui/theme-toggle.d.ts.map +1 -1
  106. package/dist/components/ui/theme.d.ts +107 -23
  107. package/dist/components/ui/theme.d.ts.map +1 -1
  108. package/dist/components/ui/toggle-group.d.ts +143 -67
  109. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  110. package/dist/components/ui/toggle.d.ts +118 -30
  111. package/dist/components/ui/toggle.d.ts.map +1 -1
  112. package/dist/components/ui/tooltip.d.ts +152 -28
  113. package/dist/components/ui/tooltip.d.ts.map +1 -1
  114. package/dist/components/ui/typography.d.ts +452 -134
  115. package/dist/components/ui/typography.d.ts.map +1 -1
  116. package/dist/index.js +9388 -8281
  117. package/dist/index.js.map +1 -1
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/llm-docs/a.llm.md +145 -0
  120. package/llm-docs/accordion-content.llm.md +67 -0
  121. package/llm-docs/accordion-item.llm.md +61 -0
  122. package/llm-docs/accordion-trigger.llm.md +69 -0
  123. package/llm-docs/accordion.llm.md +88 -0
  124. package/llm-docs/alert-description.llm.md +78 -0
  125. package/llm-docs/alert-dialog-action.llm.md +51 -0
  126. package/llm-docs/alert-dialog-cancel.llm.md +48 -0
  127. package/llm-docs/alert-dialog-content.llm.md +88 -0
  128. package/llm-docs/alert-dialog-description.llm.md +53 -0
  129. package/llm-docs/alert-dialog-footer.llm.md +41 -0
  130. package/llm-docs/alert-dialog-header.llm.md +39 -0
  131. package/llm-docs/alert-dialog-overlay.llm.md +44 -0
  132. package/llm-docs/alert-dialog-portal.llm.md +41 -0
  133. package/llm-docs/alert-dialog-title.llm.md +46 -0
  134. package/llm-docs/alert-dialog-trigger.llm.md +40 -0
  135. package/llm-docs/alert-dialog.llm.md +80 -0
  136. package/llm-docs/alert-title.llm.md +48 -0
  137. package/llm-docs/alert.llm.md +92 -0
  138. package/llm-docs/aspect-ratio.llm.md +41 -0
  139. package/llm-docs/avatar-fallback.llm.md +41 -0
  140. package/llm-docs/avatar-image.llm.md +48 -0
  141. package/llm-docs/avatar.llm.md +35 -0
  142. package/llm-docs/badge.llm.md +108 -0
  143. package/llm-docs/blockquote.llm.md +122 -0
  144. package/llm-docs/breadcrumb-ellipsis.llm.md +73 -0
  145. package/llm-docs/breadcrumb-item.llm.md +53 -0
  146. package/llm-docs/breadcrumb-link.llm.md +84 -0
  147. package/llm-docs/breadcrumb-list.llm.md +54 -0
  148. package/llm-docs/breadcrumb-page.llm.md +52 -0
  149. package/llm-docs/breadcrumb-separator.llm.md +60 -0
  150. package/llm-docs/breadcrumb.llm.md +110 -0
  151. package/llm-docs/button.llm.md +281 -0
  152. package/llm-docs/calendar-day-button.llm.md +57 -0
  153. package/llm-docs/calendar.llm.md +340 -0
  154. package/llm-docs/card-action.llm.md +64 -0
  155. package/llm-docs/card-content.llm.md +48 -0
  156. package/llm-docs/card-description.llm.md +46 -0
  157. package/llm-docs/card-footer.llm.md +56 -0
  158. package/llm-docs/card-header.llm.md +53 -0
  159. package/llm-docs/card-title.llm.md +43 -0
  160. package/llm-docs/card.llm.md +100 -0
  161. package/llm-docs/carousel-content.llm.md +77 -0
  162. package/llm-docs/carousel-item.llm.md +96 -0
  163. package/llm-docs/carousel-next.llm.md +95 -0
  164. package/llm-docs/carousel-previous.llm.md +95 -0
  165. package/llm-docs/carousel.llm.md +211 -0
  166. package/llm-docs/chart-config.llm.md +71 -0
  167. package/llm-docs/chart-container.llm.md +148 -0
  168. package/llm-docs/chart-legend-content.llm.md +85 -0
  169. package/llm-docs/chart-legend.llm.md +144 -0
  170. package/llm-docs/chart-style.llm.md +28 -0
  171. package/llm-docs/chart-tooltip-content.llm.md +149 -0
  172. package/llm-docs/chart-tooltip.llm.md +184 -0
  173. package/llm-docs/checkbox.llm.md +100 -0
  174. package/llm-docs/cn.llm.md +46 -0
  175. package/llm-docs/code.llm.md +108 -0
  176. package/llm-docs/collapsible-content.llm.md +109 -0
  177. package/llm-docs/collapsible-trigger.llm.md +75 -0
  178. package/llm-docs/collapsible.llm.md +109 -0
  179. package/llm-docs/combobox-option.llm.md +53 -0
  180. package/llm-docs/combobox.llm.md +208 -0
  181. package/llm-docs/command-dialog.llm.md +112 -0
  182. package/llm-docs/command-empty.llm.md +63 -0
  183. package/llm-docs/command-group.llm.md +83 -0
  184. package/llm-docs/command-input.llm.md +82 -0
  185. package/llm-docs/command-item.llm.md +97 -0
  186. package/llm-docs/command-list.llm.md +53 -0
  187. package/llm-docs/command-loading.llm.md +48 -0
  188. package/llm-docs/command-separator.llm.md +44 -0
  189. package/llm-docs/command-shortcut.llm.md +63 -0
  190. package/llm-docs/command.llm.md +147 -0
  191. package/llm-docs/container.llm.md +236 -0
  192. package/llm-docs/context-menu-checkbox-item.llm.md +97 -0
  193. package/llm-docs/context-menu-content.llm.md +91 -0
  194. package/llm-docs/context-menu-group.llm.md +61 -0
  195. package/llm-docs/context-menu-item.llm.md +94 -0
  196. package/llm-docs/context-menu-label.llm.md +60 -0
  197. package/llm-docs/context-menu-portal.llm.md +49 -0
  198. package/llm-docs/context-menu-radio-group.llm.md +66 -0
  199. package/llm-docs/context-menu-radio-item.llm.md +76 -0
  200. package/llm-docs/context-menu-separator.llm.md +51 -0
  201. package/llm-docs/context-menu-shortcut.llm.md +57 -0
  202. package/llm-docs/context-menu-sub-content.llm.md +90 -0
  203. package/llm-docs/context-menu-sub-trigger.llm.md +73 -0
  204. package/llm-docs/context-menu-sub.llm.md +61 -0
  205. package/llm-docs/context-menu-trigger.llm.md +53 -0
  206. package/llm-docs/context-menu.llm.md +103 -0
  207. package/llm-docs/date-picker.llm.md +90 -0
  208. package/llm-docs/dialog-close.llm.md +61 -0
  209. package/llm-docs/dialog-content.llm.md +128 -0
  210. package/llm-docs/dialog-description.llm.md +44 -0
  211. package/llm-docs/dialog-footer.llm.md +38 -0
  212. package/llm-docs/dialog-header.llm.md +40 -0
  213. package/llm-docs/dialog-overlay.llm.md +57 -0
  214. package/llm-docs/dialog-portal.llm.md +47 -0
  215. package/llm-docs/dialog-title.llm.md +41 -0
  216. package/llm-docs/dialog-trigger.llm.md +51 -0
  217. package/llm-docs/dialog.llm.md +113 -0
  218. package/llm-docs/drawer-close.llm.md +53 -0
  219. package/llm-docs/drawer-content.llm.md +58 -0
  220. package/llm-docs/drawer-description.llm.md +54 -0
  221. package/llm-docs/drawer-footer.llm.md +67 -0
  222. package/llm-docs/drawer-header.llm.md +60 -0
  223. package/llm-docs/drawer-overlay.llm.md +40 -0
  224. package/llm-docs/drawer-portal.llm.md +42 -0
  225. package/llm-docs/drawer-title.llm.md +51 -0
  226. package/llm-docs/drawer-trigger.llm.md +44 -0
  227. package/llm-docs/drawer.llm.md +194 -0
  228. package/llm-docs/dropdown-menu-checkbox-item.llm.md +111 -0
  229. package/llm-docs/dropdown-menu-content.llm.md +109 -0
  230. package/llm-docs/dropdown-menu-group.llm.md +38 -0
  231. package/llm-docs/dropdown-menu-item.llm.md +94 -0
  232. package/llm-docs/dropdown-menu-label.llm.md +66 -0
  233. package/llm-docs/dropdown-menu-portal.llm.md +32 -0
  234. package/llm-docs/dropdown-menu-radio-group.llm.md +73 -0
  235. package/llm-docs/dropdown-menu-radio-item.llm.md +92 -0
  236. package/llm-docs/dropdown-menu-separator.llm.md +55 -0
  237. package/llm-docs/dropdown-menu-shortcut.llm.md +74 -0
  238. package/llm-docs/dropdown-menu-sub-content.llm.md +80 -0
  239. package/llm-docs/dropdown-menu-sub-trigger.llm.md +84 -0
  240. package/llm-docs/dropdown-menu-sub.llm.md +74 -0
  241. package/llm-docs/dropdown-menu-trigger.llm.md +48 -0
  242. package/llm-docs/dropdown-menu.llm.md +120 -0
  243. package/llm-docs/empty-state.llm.md +174 -0
  244. package/llm-docs/h1.llm.md +113 -0
  245. package/llm-docs/h2.llm.md +113 -0
  246. package/llm-docs/h3.llm.md +111 -0
  247. package/llm-docs/h4.llm.md +109 -0
  248. package/llm-docs/h5.llm.md +110 -0
  249. package/llm-docs/h6.llm.md +110 -0
  250. package/llm-docs/hover-card-content.llm.md +167 -0
  251. package/llm-docs/hover-card-trigger.llm.md +65 -0
  252. package/llm-docs/hover-card.llm.md +121 -0
  253. package/llm-docs/input.llm.md +319 -0
  254. package/llm-docs/label.llm.md +145 -0
  255. package/llm-docs/lead.llm.md +119 -0
  256. package/llm-docs/menubar-checkbox-item.llm.md +66 -0
  257. package/llm-docs/menubar-content.llm.md +128 -0
  258. package/llm-docs/menubar-group.llm.md +40 -0
  259. package/llm-docs/menubar-item.llm.md +62 -0
  260. package/llm-docs/menubar-label.llm.md +40 -0
  261. package/llm-docs/menubar-menu.llm.md +32 -0
  262. package/llm-docs/menubar-portal.llm.md +38 -0
  263. package/llm-docs/menubar-radio-group.llm.md +39 -0
  264. package/llm-docs/menubar-radio-item.llm.md +59 -0
  265. package/llm-docs/menubar-separator.llm.md +35 -0
  266. package/llm-docs/menubar-shortcut.llm.md +37 -0
  267. package/llm-docs/menubar-sub-content.llm.md +127 -0
  268. package/llm-docs/menubar-sub-trigger.llm.md +51 -0
  269. package/llm-docs/menubar-sub.llm.md +53 -0
  270. package/llm-docs/menubar-trigger.llm.md +37 -0
  271. package/llm-docs/menubar.llm.md +115 -0
  272. package/llm-docs/navigation-menu-content.llm.md +116 -0
  273. package/llm-docs/navigation-menu-indicator.llm.md +68 -0
  274. package/llm-docs/navigation-menu-item.llm.md +62 -0
  275. package/llm-docs/navigation-menu-link.llm.md +109 -0
  276. package/llm-docs/navigation-menu-list.llm.md +52 -0
  277. package/llm-docs/navigation-menu-trigger-style.llm.md +22 -0
  278. package/llm-docs/navigation-menu-trigger.llm.md +57 -0
  279. package/llm-docs/navigation-menu-viewport.llm.md +51 -0
  280. package/llm-docs/navigation-menu.llm.md +184 -0
  281. package/llm-docs/p.llm.md +115 -0
  282. package/llm-docs/pagination-content.llm.md +60 -0
  283. package/llm-docs/pagination-ellipsis.llm.md +107 -0
  284. package/llm-docs/pagination-item.llm.md +59 -0
  285. package/llm-docs/pagination-link.llm.md +150 -0
  286. package/llm-docs/pagination-next.llm.md +115 -0
  287. package/llm-docs/pagination-previous.llm.md +115 -0
  288. package/llm-docs/pagination.llm.md +190 -0
  289. package/llm-docs/popover-anchor.llm.md +53 -0
  290. package/llm-docs/popover-content.llm.md +109 -0
  291. package/llm-docs/popover-trigger.llm.md +54 -0
  292. package/llm-docs/popover.llm.md +116 -0
  293. package/llm-docs/progress.llm.md +76 -0
  294. package/llm-docs/radio-group-indicator.llm.md +28 -0
  295. package/llm-docs/radio-group-item.llm.md +40 -0
  296. package/llm-docs/radio-group.llm.md +76 -0
  297. package/llm-docs/resizable-handle.llm.md +156 -0
  298. package/llm-docs/resizable-panel-group.llm.md +149 -0
  299. package/llm-docs/resizable-panel.llm.md +157 -0
  300. package/llm-docs/scroll-area-corner.llm.md +41 -0
  301. package/llm-docs/scroll-area-thumb.llm.md +39 -0
  302. package/llm-docs/scroll-area-viewport.llm.md +60 -0
  303. package/llm-docs/scroll-area.llm.md +125 -0
  304. package/llm-docs/scroll-bar.llm.md +78 -0
  305. package/llm-docs/sdk-items-registry.json +2638 -0
  306. package/llm-docs/select-content.llm.md +139 -0
  307. package/llm-docs/select-group.llm.md +60 -0
  308. package/llm-docs/select-item.llm.md +75 -0
  309. package/llm-docs/select-label.llm.md +62 -0
  310. package/llm-docs/select-scroll-down-button.llm.md +45 -0
  311. package/llm-docs/select-scroll-up-button.llm.md +45 -0
  312. package/llm-docs/select-separator.llm.md +59 -0
  313. package/llm-docs/select-trigger.llm.md +66 -0
  314. package/llm-docs/select-value.llm.md +67 -0
  315. package/llm-docs/select.llm.md +159 -0
  316. package/llm-docs/separator.llm.md +129 -0
  317. package/llm-docs/sheet-close.llm.md +49 -0
  318. package/llm-docs/sheet-content.llm.md +115 -0
  319. package/llm-docs/sheet-description.llm.md +62 -0
  320. package/llm-docs/sheet-footer.llm.md +64 -0
  321. package/llm-docs/sheet-header.llm.md +52 -0
  322. package/llm-docs/sheet-title.llm.md +53 -0
  323. package/llm-docs/sheet-trigger.llm.md +46 -0
  324. package/llm-docs/sheet.llm.md +126 -0
  325. package/llm-docs/sidebar-content.llm.md +63 -0
  326. package/llm-docs/sidebar-footer.llm.md +50 -0
  327. package/llm-docs/sidebar-group-action.llm.md +60 -0
  328. package/llm-docs/sidebar-group-content.llm.md +64 -0
  329. package/llm-docs/sidebar-group-label.llm.md +53 -0
  330. package/llm-docs/sidebar-group.llm.md +56 -0
  331. package/llm-docs/sidebar-header.llm.md +67 -0
  332. package/llm-docs/sidebar-input.llm.md +50 -0
  333. package/llm-docs/sidebar-inset.llm.md +52 -0
  334. package/llm-docs/sidebar-menu-action.llm.md +84 -0
  335. package/llm-docs/sidebar-menu-badge.llm.md +60 -0
  336. package/llm-docs/sidebar-menu-button.llm.md +103 -0
  337. package/llm-docs/sidebar-menu-item.llm.md +75 -0
  338. package/llm-docs/sidebar-menu-skeleton.llm.md +76 -0
  339. package/llm-docs/sidebar-menu-sub-button.llm.md +85 -0
  340. package/llm-docs/sidebar-menu-sub-item.llm.md +54 -0
  341. package/llm-docs/sidebar-menu-sub.llm.md +74 -0
  342. package/llm-docs/sidebar-menu.llm.md +65 -0
  343. package/llm-docs/sidebar-provider.llm.md +79 -0
  344. package/llm-docs/sidebar-rail.llm.md +34 -0
  345. package/llm-docs/sidebar-separator.llm.md +57 -0
  346. package/llm-docs/sidebar-trigger.llm.md +49 -0
  347. package/llm-docs/sidebar.llm.md +129 -0
  348. package/llm-docs/skeleton.llm.md +134 -0
  349. package/llm-docs/slider.llm.md +173 -0
  350. package/llm-docs/small.llm.md +115 -0
  351. package/llm-docs/span.llm.md +132 -0
  352. package/llm-docs/stack.llm.md +28 -0
  353. package/llm-docs/strong.llm.md +115 -0
  354. package/llm-docs/switch.llm.md +76 -0
  355. package/llm-docs/table-body.llm.md +36 -0
  356. package/llm-docs/table-caption.llm.md +48 -0
  357. package/llm-docs/table-cell.llm.md +53 -0
  358. package/llm-docs/table-footer.llm.md +41 -0
  359. package/llm-docs/table-head.llm.md +69 -0
  360. package/llm-docs/table-header.llm.md +41 -0
  361. package/llm-docs/table-row.llm.md +42 -0
  362. package/llm-docs/table.llm.md +123 -0
  363. package/llm-docs/tabs-content.llm.md +47 -0
  364. package/llm-docs/tabs-list.llm.md +41 -0
  365. package/llm-docs/tabs-trigger.llm.md +47 -0
  366. package/llm-docs/tabs.llm.md +71 -0
  367. package/llm-docs/text-field.llm.md +327 -0
  368. package/llm-docs/textarea.llm.md +311 -0
  369. package/llm-docs/theme-preference.llm.md +25 -0
  370. package/llm-docs/theme-toggle.llm.md +57 -0
  371. package/llm-docs/theme.llm.md +14 -0
  372. package/llm-docs/toast.llm.md +32 -0
  373. package/llm-docs/toaster.llm.md +193 -0
  374. package/llm-docs/toggle-group-item.llm.md +59 -0
  375. package/llm-docs/toggle-group.llm.md +101 -0
  376. package/llm-docs/toggle.llm.md +40 -0
  377. package/llm-docs/tooltip-content.llm.md +185 -0
  378. package/llm-docs/tooltip-provider.llm.md +68 -0
  379. package/llm-docs/tooltip-trigger.llm.md +70 -0
  380. package/llm-docs/tooltip.llm.md +129 -0
  381. package/llm-docs/typography.llm.md +175 -0
  382. package/llm-docs/use-carousel.llm.md +55 -0
  383. package/llm-docs/use-command-state.llm.md +32 -0
  384. package/llm-docs/use-is-mobile.llm.md +73 -0
  385. package/llm-docs/use-sidebar.llm.md +61 -0
  386. package/llms.txt +173 -3
  387. package/package.json +7 -3
  388. package/src/components/ui/accordion.tsx +112 -27
  389. package/src/components/ui/alert-dialog.tsx +401 -46
  390. package/src/components/ui/alert.tsx +114 -11
  391. package/src/components/ui/aspect-ratio.tsx +69 -14
  392. package/src/components/ui/avatar.tsx +179 -33
  393. package/src/components/ui/badge.tsx +74 -75
  394. package/src/components/ui/breadcrumb.tsx +335 -50
  395. package/src/components/ui/button.tsx +198 -90
  396. package/src/components/ui/calendar.tsx +867 -43
  397. package/src/components/ui/card.tsx +140 -33
  398. package/src/components/ui/carousel.tsx +529 -98
  399. package/src/components/ui/chart.tsx +222 -1
  400. package/src/components/ui/checkbox.tsx +176 -38
  401. package/src/components/ui/collapsible.tsx +321 -67
  402. package/src/components/ui/combobox.tsx +284 -83
  403. package/src/components/ui/command.tsx +527 -67
  404. package/src/components/ui/container.tsx +217 -65
  405. package/src/components/ui/context-menu.tsx +716 -51
  406. package/src/components/ui/date-picker.tsx +228 -38
  407. package/src/components/ui/dialog.tsx +270 -33
  408. package/src/components/ui/drawer.tsx +546 -67
  409. package/src/components/ui/dropdown-menu.tsx +657 -74
  410. package/src/components/ui/empty-state.tsx +241 -82
  411. package/src/components/ui/hover-card.tsx +328 -39
  412. package/src/components/ui/input.tsx +207 -44
  413. package/src/components/ui/label.tsx +98 -8
  414. package/src/components/ui/menubar.tsx +587 -54
  415. package/src/components/ui/navigation-menu.tsx +557 -128
  416. package/src/components/ui/pagination.tsx +561 -79
  417. package/src/components/ui/popover.tsx +119 -8
  418. package/src/components/ui/progress.tsx +131 -29
  419. package/src/components/ui/radio-group.tsx +260 -51
  420. package/src/components/ui/resizable.tsx +289 -63
  421. package/src/components/ui/scroll-area.tsx +377 -66
  422. package/src/components/ui/select.tsx +545 -60
  423. package/src/components/ui/separator.tsx +146 -40
  424. package/src/components/ui/sheet.tsx +348 -31
  425. package/src/components/ui/sidebar.tsx +471 -29
  426. package/src/components/ui/skeleton.tsx +114 -32
  427. package/src/components/ui/slider.tsx +77 -31
  428. package/src/components/ui/sonner.tsx +574 -46
  429. package/src/components/ui/stack.tsx +423 -101
  430. package/src/components/ui/switch.tsx +78 -39
  431. package/src/components/ui/table.tsx +170 -4
  432. package/src/components/ui/tabs.tsx +108 -22
  433. package/src/components/ui/text-field.tsx +226 -81
  434. package/src/components/ui/textarea.tsx +180 -29
  435. package/src/components/ui/theme-toggle.tsx +313 -65
  436. package/src/components/ui/theme.tsx +117 -23
  437. package/src/components/ui/toggle-group.tsx +280 -69
  438. package/src/components/ui/toggle.tsx +124 -35
  439. package/src/components/ui/tooltip.tsx +239 -29
  440. package/src/components/ui/typography.tsx +1115 -165
@@ -7,10 +7,15 @@ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
7
7
  * They're typically triggered by a button and appear as a floating panel with full
8
8
  * keyboard navigation support, submenus, and various interactive item types.
9
9
  *
10
- * Based on the shadcn/ui dropdown-menu component with additional enhancements for
11
- * better integration with design systems and improved accessibility.
10
+ * Built on Radix UI's DropdownMenu primitive with enhanced styling and type safety.
11
+ * Follows the WAI-ARIA Menu Button pattern for accessibility compliance.
12
+ *
13
+ * @param defaultOpen - Whether the dropdown is initially open (uncontrolled mode)
14
+ * @param open - Whether the dropdown is open (controlled mode)
15
+ * @param onOpenChange - Callback fired when the open state changes
16
+ * @param modal - Whether the dropdown should be modal (blocks interaction with outside elements)
17
+ * @param dir - The reading direction of the dropdown menu
12
18
  *
13
- * @component
14
19
  * @example
15
20
  * ```tsx
16
21
  * // Basic dropdown menu
@@ -29,8 +34,10 @@ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
29
34
  *
30
35
  * @example
31
36
  * ```tsx
32
- * // Context menu with alignment and destructive actions
33
- * <DropdownMenu>
37
+ * // Controlled dropdown with alignment
38
+ * const [open, setOpen] = useState(false);
39
+ *
40
+ * <DropdownMenu open={open} onOpenChange={setOpen}>
34
41
  * <DropdownMenuTrigger asChild>
35
42
  * <Button variant="ghost" size="icon">
36
43
  * <MoreHorizontal />
@@ -48,6 +55,9 @@ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
48
55
  * @example
49
56
  * ```tsx
50
57
  * // Complex menu with checkboxes, radio groups, and submenus
58
+ * const [showPanel, setShowPanel] = useState(true);
59
+ * const [position, setPosition] = useState("top");
60
+ *
51
61
  * <DropdownMenu>
52
62
  * <DropdownMenuTrigger asChild>
53
63
  * <Button>Advanced Menu</Button>
@@ -78,17 +88,19 @@ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
78
88
  * @accessibility
79
89
  * - Full keyboard navigation with arrow keys (Up/Down for navigation)
80
90
  * - Enter/Space to activate items
81
- * - Escape key closes the menu and restores focus
91
+ * - Escape key closes the menu and restores focus to the trigger
82
92
  * - Home/End keys navigate to first/last item
83
93
  * - Type-ahead search to jump to items by first letter
84
94
  * - Left/Right arrow keys for submenu navigation
85
95
  * - Proper ARIA roles (menu, menuitem, menuitemcheckbox, menuitemradio)
86
96
  * - Focus management with focus trapping and restoration
87
97
  * - Screen reader announcements for state changes
98
+ * - Supports roving tabindex for focus movement
88
99
  *
89
100
  * @see {@link ContextMenu} - For right-click context menus
90
101
  * @see {@link Popover} - For rich content overlays
91
102
  * @see {@link Select} - For single selection dropdowns
103
+ * @see {@link https://www.radix-ui.com/primitives/docs/components/dropdown-menu} - Radix UI documentation
92
104
  * @see {@link https://ui.shadcn.com/docs/components/dropdown-menu} - shadcn/ui documentation
93
105
  * @since 1.0.0
94
106
  */
@@ -98,68 +110,168 @@ declare function DropdownMenu({ ...props }: React.ComponentProps<typeof Dropdown
98
110
  *
99
111
  * Renders dropdown content outside of the normal DOM hierarchy to avoid
100
112
  * z-index and overflow issues. Automatically used by DropdownMenuContent
101
- * but can be used explicitly for submenus.
113
+ * but can be used explicitly for advanced positioning scenarios.
114
+ *
115
+ * @param container - Optional container element for portal rendering. If not provided, portals to document.body
102
116
  *
103
- * @component
104
- * @param container - Optional container element for portal rendering
117
+ * @example
118
+ * ```tsx
119
+ * <DropdownMenuPortal container={customContainer}>
120
+ * <DropdownMenuContent>
121
+ * <DropdownMenuItem>Item</DropdownMenuItem>
122
+ * </DropdownMenuContent>
123
+ * </DropdownMenuPortal>
124
+ * ```
105
125
  * @since 1.0.0
106
126
  */
107
127
  declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
108
128
  /**
109
- * DropdownMenuTrigger - The element that triggers the dropdown menu
129
+ * The element that triggers the dropdown menu
130
+ *
131
+ * Renders the interactive element that opens and closes the dropdown menu.
132
+ * Typically wraps a button or other interactive element using the asChild prop.
133
+ * Automatically receives proper ARIA attributes and keyboard event handlers.
134
+ *
135
+ * @param asChild - Merge props onto the immediate child instead of rendering a wrapper element
110
136
  *
111
- * @component
112
137
  * @example
113
138
  * ```tsx
139
+ * // Basic trigger with button
114
140
  * <DropdownMenuTrigger asChild>
115
- * <Button>Menu</Button>
141
+ * <Button variant="outline">Open Menu</Button>
142
+ * </DropdownMenuTrigger>
143
+ * ```
144
+ *
145
+ * @example
146
+ * ```tsx
147
+ * // Icon button trigger
148
+ * <DropdownMenuTrigger asChild>
149
+ * <Button variant="ghost" size="icon" aria-label="More options">
150
+ * <MoreVertical className="h-4 w-4" />
151
+ * </Button>
116
152
  * </DropdownMenuTrigger>
117
153
  * ```
118
154
  * @since 1.0.0
119
155
  */
120
156
  declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
121
157
  /**
122
- * DropdownMenuContent - The content container for dropdown menu items
158
+ * The content container for dropdown menu items
159
+ *
160
+ * Contains all menu items and handles positioning relative to the trigger.
161
+ * Automatically portals content to avoid z-index issues and includes sophisticated
162
+ * collision detection to keep the menu visible within viewport boundaries.
163
+ *
164
+ * @param side - The preferred side of the trigger to render against
165
+ * @param sideOffset - Distance in pixels from the trigger
166
+ * @param align - The preferred alignment against the trigger
167
+ * @param alignOffset - Distance in pixels from the align point
168
+ * @param avoidCollisions - Whether to avoid collisions with viewport boundaries
169
+ * @param loop - When true, keyboard navigation will loop from last to first item
170
+ * @param sticky - Element positioning behavior relative to the viewport
171
+ * @param hideWhenDetached - Whether to hide the content when the reference element is fully occluded
123
172
  *
124
- * @component
125
173
  * @example
126
174
  * ```tsx
127
- * <DropdownMenuContent align="end" sideOffset={5}>
128
- * <DropdownMenuItem>Item 1</DropdownMenuItem>
175
+ * // Basic content with default positioning
176
+ * <DropdownMenuContent>
177
+ * <DropdownMenuItem>Profile</DropdownMenuItem>
178
+ * <DropdownMenuItem>Settings</DropdownMenuItem>
179
+ * </DropdownMenuContent>
180
+ * ```
181
+ *
182
+ * @example
183
+ * ```tsx
184
+ * // Content with custom alignment and offset
185
+ * <DropdownMenuContent align="end" sideOffset={8}>
186
+ * <DropdownMenuItem>Edit</DropdownMenuItem>
187
+ * <DropdownMenuItem variant="destructive">Delete</DropdownMenuItem>
188
+ * </DropdownMenuContent>
189
+ * ```
190
+ *
191
+ * @example
192
+ * ```tsx
193
+ * // Content with collision avoidance disabled
194
+ * <DropdownMenuContent avoidCollisions={false} side="top">
195
+ * <DropdownMenuItem>Always above trigger</DropdownMenuItem>
129
196
  * </DropdownMenuContent>
130
197
  * ```
131
198
  * @since 1.0.0
132
199
  */
133
- declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
200
+ declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content> & {
201
+ className?: string;
202
+ }): import("react/jsx-runtime").JSX.Element;
134
203
  /**
135
204
  * Groups related dropdown menu items together
136
205
  *
137
206
  * Used to create logical groupings of menu items, typically separated by
138
207
  * DropdownMenuSeparator components. Helps with semantic organization and
139
- * keyboard navigation.
208
+ * improves accessibility by providing proper group semantics to screen readers.
209
+ *
210
+ * @param asChild - Merge props onto the immediate child instead of rendering a wrapper element
140
211
  *
141
- * @component
142
212
  * @example
143
213
  * ```tsx
144
- * <DropdownMenuGroup>
145
- * <DropdownMenuItem>Profile</DropdownMenuItem>
146
- * <DropdownMenuItem>Settings</DropdownMenuItem>
147
- * </DropdownMenuGroup>
214
+ * <DropdownMenuContent>
215
+ * <DropdownMenuGroup>
216
+ * <DropdownMenuItem>Profile</DropdownMenuItem>
217
+ * <DropdownMenuItem>Account Settings</DropdownMenuItem>
218
+ * </DropdownMenuGroup>
219
+ * <DropdownMenuSeparator />
220
+ * <DropdownMenuGroup>
221
+ * <DropdownMenuItem>Help</DropdownMenuItem>
222
+ * <DropdownMenuItem>Support</DropdownMenuItem>
223
+ * </DropdownMenuGroup>
224
+ * </DropdownMenuContent>
148
225
  * ```
149
226
  * @since 1.0.0
150
227
  */
151
228
  declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
152
229
  /**
153
- * DropdownMenuItem - A single item in the dropdown menu
230
+ * A single interactive item in the dropdown menu
231
+ *
232
+ * Renders a clickable menu item with proper focus management and keyboard navigation.
233
+ * Supports different visual variants for semantic meaning (e.g., destructive actions).
234
+ * Includes built-in styling for icons, disabled states, and focus indicators.
235
+ *
236
+ * @param disabled - Whether the item is disabled and cannot be selected
237
+ * @param onSelect - Callback fired when the item is selected via click or keyboard
238
+ * @param textValue - Optional text value used for typeahead search functionality
239
+ * @param inset - Whether to add extra left padding to align with items that have icons
240
+ * @param variant - Visual variant of the menu item for semantic distinction
241
+ *
242
+ * @example
243
+ * ```tsx
244
+ * // Basic menu item with click handler
245
+ * <DropdownMenuItem onSelect={() => console.log('Profile clicked')}>
246
+ * <User className="mr-2 h-4 w-4" />
247
+ * Profile
248
+ * </DropdownMenuItem>
249
+ * ```
250
+ *
251
+ * @example
252
+ * ```tsx
253
+ * // Destructive action item
254
+ * <DropdownMenuItem variant="destructive" onSelect={handleDelete}>
255
+ * <Trash className="mr-2 h-4 w-4" />
256
+ * Delete Account
257
+ * </DropdownMenuItem>
258
+ * ```
154
259
  *
155
- * @component
156
260
  * @example
157
261
  * ```tsx
158
- * <DropdownMenuItem onClick={handleClick}>
159
- * Edit
262
+ * // Disabled item
263
+ * <DropdownMenuItem disabled>
264
+ * <Settings className="mr-2 h-4 w-4" />
265
+ * Settings (Coming Soon)
160
266
  * </DropdownMenuItem>
161
- * <DropdownMenuItem variant="destructive">
162
- * Delete
267
+ * ```
268
+ *
269
+ * @example
270
+ * ```tsx
271
+ * // Item with keyboard shortcut
272
+ * <DropdownMenuItem onSelect={handleSave}>
273
+ * Save Document
274
+ * <DropdownMenuShortcut>⌘S</DropdownMenuShortcut>
163
275
  * </DropdownMenuItem>
164
276
  * ```
165
277
  * @since 1.0.0
@@ -167,51 +279,117 @@ declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof Dro
167
279
  declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
168
280
  inset?: boolean;
169
281
  variant?: "default" | "destructive";
282
+ className?: string;
170
283
  }): import("react/jsx-runtime").JSX.Element;
171
284
  /**
172
285
  * A checkable menu item with visual state indication
173
286
  *
174
287
  * Displays a checkbox that can be toggled on/off. The checked state is
175
- * visually indicated with a checkmark icon. Useful for menu options that
176
- * represent toggleable settings or features.
288
+ * visually indicated with a checkmark icon. Supports indeterminate state
289
+ * for partial selections. Ideal for menu options that represent toggleable
290
+ * settings, features, or multi-selection scenarios.
177
291
  *
178
- * @component
179
- * @param checked - Whether the checkbox is checked
180
- * @param onCheckedChange - Callback when the checked state changes
181
- * @param disabled - Whether the item is disabled
292
+ * @param checked - The checked state of the checkbox item (boolean or "indeterminate")
293
+ * @param onCheckedChange - Callback fired when the checked state changes
294
+ * @param disabled - Whether the item is disabled and cannot be interacted with
295
+ * @param onSelect - Callback fired when the item is selected via click or keyboard
296
+ * @param textValue - Optional text value used for typeahead search functionality
297
+ * @param inset - Whether to add extra left padding to align with items that have icons
182
298
  *
183
299
  * @example
184
300
  * ```tsx
301
+ * // Basic checkbox item with state
185
302
  * const [showSidebar, setShowSidebar] = useState(true);
186
303
  *
187
304
  * <DropdownMenuCheckboxItem
188
305
  * checked={showSidebar}
189
306
  * onCheckedChange={setShowSidebar}
190
307
  * >
308
+ * <Sidebar className="mr-2 h-4 w-4" />
191
309
  * Show Sidebar
192
310
  * </DropdownMenuCheckboxItem>
193
311
  * ```
312
+ *
313
+ * @example
314
+ * ```tsx
315
+ * // Multiple checkbox items for feature toggles
316
+ * const [features, setFeatures] = useState({
317
+ * notifications: true,
318
+ * autoSave: false,
319
+ * darkMode: true
320
+ * });
321
+ *
322
+ * <DropdownMenuCheckboxItem
323
+ * checked={features.notifications}
324
+ * onCheckedChange={(checked) => setFeatures(prev => ({ ...prev, notifications: checked }))}
325
+ * >
326
+ * Enable Notifications
327
+ * </DropdownMenuCheckboxItem>
328
+ * <DropdownMenuCheckboxItem
329
+ * checked={features.autoSave}
330
+ * onCheckedChange={(checked) => setFeatures(prev => ({ ...prev, autoSave: checked }))}
331
+ * >
332
+ * Auto-save Changes
333
+ * </DropdownMenuCheckboxItem>
334
+ * ```
335
+ *
336
+ * @example
337
+ * ```tsx
338
+ * // Indeterminate state for partial selections
339
+ * <DropdownMenuCheckboxItem
340
+ * checked="indeterminate"
341
+ * onCheckedChange={handleSelectAll}
342
+ * >
343
+ * Select All Items (Some selected)
344
+ * </DropdownMenuCheckboxItem>
345
+ * ```
194
346
  * @since 1.0.0
195
347
  */
196
- declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): import("react/jsx-runtime").JSX.Element;
348
+ declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem> & {
349
+ className?: string;
350
+ }): import("react/jsx-runtime").JSX.Element;
197
351
  /**
198
352
  * Groups radio items for single selection
199
353
  *
200
354
  * Creates a group where only one radio item can be selected at a time.
201
- * Use with DropdownMenuRadioItem components to create single-choice options.
355
+ * Manages the selection state and ensures mutual exclusivity between options.
356
+ * Use with DropdownMenuRadioItem components to create single-choice scenarios
357
+ * like theme selection, sorting options, or view modes.
202
358
  *
203
- * @component
204
- * @param value - Currently selected value
205
- * @param onValueChange - Callback when selection changes
359
+ * @param value - The currently selected value in the radio group
360
+ * @param onValueChange - Callback fired when the selection changes to a different value
361
+ * @param disabled - Whether the entire radio group is disabled
206
362
  *
207
363
  * @example
208
364
  * ```tsx
365
+ * // Theme selection with radio group
209
366
  * const [theme, setTheme] = useState("light");
210
367
  *
211
368
  * <DropdownMenuRadioGroup value={theme} onValueChange={setTheme}>
212
- * <DropdownMenuRadioItem value="light">Light</DropdownMenuRadioItem>
213
- * <DropdownMenuRadioItem value="dark">Dark</DropdownMenuRadioItem>
214
- * <DropdownMenuRadioItem value="system">System</DropdownMenuRadioItem>
369
+ * <DropdownMenuRadioItem value="light">
370
+ * <Sun className="mr-2 h-4 w-4" />
371
+ * Light Theme
372
+ * </DropdownMenuRadioItem>
373
+ * <DropdownMenuRadioItem value="dark">
374
+ * <Moon className="mr-2 h-4 w-4" />
375
+ * Dark Theme
376
+ * </DropdownMenuRadioItem>
377
+ * <DropdownMenuRadioItem value="system">
378
+ * <Monitor className="mr-2 h-4 w-4" />
379
+ * System Theme
380
+ * </DropdownMenuRadioItem>
381
+ * </DropdownMenuRadioGroup>
382
+ * ```
383
+ *
384
+ * @example
385
+ * ```tsx
386
+ * // Sorting options
387
+ * const [sortBy, setSortBy] = useState("name");
388
+ *
389
+ * <DropdownMenuRadioGroup value={sortBy} onValueChange={setSortBy}>
390
+ * <DropdownMenuRadioItem value="name">Sort by Name</DropdownMenuRadioItem>
391
+ * <DropdownMenuRadioItem value="date">Sort by Date</DropdownMenuRadioItem>
392
+ * <DropdownMenuRadioItem value="size">Sort by Size</DropdownMenuRadioItem>
215
393
  * </DropdownMenuRadioGroup>
216
394
  * ```
217
395
  * @since 1.0.0
@@ -221,129 +399,398 @@ declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeo
221
399
  * A radio button menu item for single selection within a group
222
400
  *
223
401
  * Must be used within a DropdownMenuRadioGroup. Shows a filled circle
224
- * indicator when selected. Only one radio item can be selected per group.
402
+ * indicator when selected. Only one radio item can be selected per group,
403
+ * ensuring mutually exclusive selection behavior.
225
404
  *
226
- * @component
227
- * @param value - The value this radio item represents
228
- * @param disabled - Whether the item is disabled
405
+ * @param value - The unique value this radio item represents
406
+ * @param disabled - Whether the item is disabled and cannot be selected
407
+ * @param onSelect - Callback fired when the item is selected via click or keyboard
408
+ * @param textValue - Optional text value used for typeahead search functionality
409
+ * @param inset - Whether to add extra left padding to align with items that have icons
229
410
  *
230
411
  * @example
231
412
  * ```tsx
413
+ * // Basic radio group for theme selection
232
414
  * <DropdownMenuRadioGroup value={selectedTheme} onValueChange={setSelectedTheme}>
233
415
  * <DropdownMenuRadioItem value="light">
416
+ * <Sun className="mr-2 h-4 w-4" />
234
417
  * Light Theme
235
418
  * </DropdownMenuRadioItem>
236
419
  * <DropdownMenuRadioItem value="dark">
420
+ * <Moon className="mr-2 h-4 w-4" />
237
421
  * Dark Theme
238
422
  * </DropdownMenuRadioItem>
423
+ * <DropdownMenuRadioItem value="system">
424
+ * <Monitor className="mr-2 h-4 w-4" />
425
+ * System Theme
426
+ * </DropdownMenuRadioItem>
427
+ * </DropdownMenuRadioGroup>
428
+ * ```
429
+ *
430
+ * @example
431
+ * ```tsx
432
+ * // Priority selection with disabled option
433
+ * <DropdownMenuRadioGroup value={priority} onValueChange={setPriority}>
434
+ * <DropdownMenuRadioItem value="low">Low Priority</DropdownMenuRadioItem>
435
+ * <DropdownMenuRadioItem value="medium">Medium Priority</DropdownMenuRadioItem>
436
+ * <DropdownMenuRadioItem value="high">High Priority</DropdownMenuRadioItem>
437
+ * <DropdownMenuRadioItem value="urgent" disabled>
438
+ * Urgent (Premium Only)
439
+ * </DropdownMenuRadioItem>
239
440
  * </DropdownMenuRadioGroup>
240
441
  * ```
241
442
  * @since 1.0.0
242
443
  */
243
- declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): import("react/jsx-runtime").JSX.Element;
444
+ declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem> & {
445
+ className?: string;
446
+ }): import("react/jsx-runtime").JSX.Element;
244
447
  /**
245
- * DropdownMenuLabel - A label for grouping menu items
448
+ * A non-interactive label for grouping and organizing menu items
449
+ *
450
+ * Used to provide semantic headers for groups of related menu items.
451
+ * Labels are not focusable and serve as visual and accessibility landmarks
452
+ * within the menu structure. Helps users understand the organization of menu options.
453
+ *
454
+ * @param asChild - Merge props onto the immediate child instead of rendering a wrapper element
455
+ * @param inset - Whether to add extra left padding to align with items that have icons
456
+ *
457
+ * @example
458
+ * ```tsx
459
+ * // Basic label for menu section
460
+ * <DropdownMenuContent>
461
+ * <DropdownMenuLabel>Account Actions</DropdownMenuLabel>
462
+ * <DropdownMenuSeparator />
463
+ * <DropdownMenuItem>View Profile</DropdownMenuItem>
464
+ * <DropdownMenuItem>Account Settings</DropdownMenuItem>
465
+ *
466
+ * <DropdownMenuSeparator />
467
+ * <DropdownMenuLabel>Preferences</DropdownMenuLabel>
468
+ * <DropdownMenuItem>Theme Settings</DropdownMenuItem>
469
+ * <DropdownMenuItem>Notification Settings</DropdownMenuItem>
470
+ * </DropdownMenuContent>
471
+ * ```
246
472
  *
247
- * @component
248
473
  * @example
249
474
  * ```tsx
250
- * <DropdownMenuLabel>Actions</DropdownMenuLabel>
475
+ * // Label with inset alignment
476
+ * <DropdownMenuContent>
477
+ * <DropdownMenuLabel inset>File Operations</DropdownMenuLabel>
478
+ * <DropdownMenuItem>
479
+ * <Download className="mr-2 h-4 w-4" />
480
+ * Download
481
+ * </DropdownMenuItem>
482
+ * <DropdownMenuItem>
483
+ * <Upload className="mr-2 h-4 w-4" />
484
+ * Upload
485
+ * </DropdownMenuItem>
486
+ * </DropdownMenuContent>
251
487
  * ```
252
488
  * @since 1.0.0
253
489
  */
254
490
  declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
255
491
  inset?: boolean;
492
+ className?: string;
256
493
  }): import("react/jsx-runtime").JSX.Element;
257
494
  /**
258
- * DropdownMenuSeparator - A visual separator between menu items
495
+ * A visual separator between menu items or groups
496
+ *
497
+ * Renders a thin horizontal line to visually separate different sections
498
+ * of menu items. Improves visual hierarchy and helps users understand
499
+ * the logical grouping of menu options. Commonly used after labels
500
+ * or between different types of actions.
501
+ *
502
+ * @param asChild - Merge props onto the immediate child instead of rendering a wrapper element
503
+ *
504
+ * @example
505
+ * ```tsx
506
+ * // Separating different action groups
507
+ * <DropdownMenuContent>
508
+ * <DropdownMenuItem>View</DropdownMenuItem>
509
+ * <DropdownMenuItem>Edit</DropdownMenuItem>
510
+ * <DropdownMenuSeparator />
511
+ * <DropdownMenuItem variant="destructive">Delete</DropdownMenuItem>
512
+ * </DropdownMenuContent>
513
+ * ```
259
514
  *
260
- * @component
515
+ * @example
516
+ * ```tsx
517
+ * // Separating sections with labels
518
+ * <DropdownMenuContent>
519
+ * <DropdownMenuLabel>User Actions</DropdownMenuLabel>
520
+ * <DropdownMenuSeparator />
521
+ * <DropdownMenuItem>Profile</DropdownMenuItem>
522
+ * <DropdownMenuItem>Settings</DropdownMenuItem>
523
+ *
524
+ * <DropdownMenuSeparator />
525
+ * <DropdownMenuLabel>System</DropdownMenuLabel>
526
+ * <DropdownMenuSeparator />
527
+ * <DropdownMenuItem>Logout</DropdownMenuItem>
528
+ * </DropdownMenuContent>
529
+ * ```
261
530
  * @since 1.0.0
262
531
  */
263
- declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
532
+ declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator> & {
533
+ className?: string;
534
+ }): import("react/jsx-runtime").JSX.Element;
264
535
  /**
265
536
  * Displays keyboard shortcut hints in menu items
266
537
  *
267
538
  * Shows keyboard shortcut text aligned to the right side of menu items.
268
- * Purely visual - does not implement the actual keyboard functionality.
269
- * Use standard keyboard shortcut notation (⌘, ⌃, ⌥, ).
539
+ * Purely visual component - does not implement the actual keyboard functionality.
540
+ * Use standard keyboard shortcut notation and symbols (⌘, ⌃, ⌥, ⇧, Ctrl, Alt, Shift).
541
+ * Helps users discover and remember keyboard shortcuts for menu actions.
270
542
  *
271
- * @component
272
543
  * @example
273
544
  * ```tsx
274
- * <DropdownMenuItem>
545
+ * // macOS style shortcuts
546
+ * <DropdownMenuItem onSelect={handleSave}>
275
547
  * Save Document
276
548
  * <DropdownMenuShortcut>⌘S</DropdownMenuShortcut>
277
549
  * </DropdownMenuItem>
278
550
  * ```
551
+ *
552
+ * @example
553
+ * ```tsx
554
+ * // Windows/Linux style shortcuts
555
+ * <DropdownMenuItem onSelect={handleCopy}>
556
+ * Copy
557
+ * <DropdownMenuShortcut>Ctrl+C</DropdownMenuShortcut>
558
+ * </DropdownMenuItem>
559
+ * ```
560
+ *
561
+ * @example
562
+ * ```tsx
563
+ * // Complex shortcuts with multiple modifiers
564
+ * <DropdownMenuItem onSelect={handleForceRefresh}>
565
+ * Force Refresh
566
+ * <DropdownMenuShortcut>⌘⇧R</DropdownMenuShortcut>
567
+ * </DropdownMenuItem>
568
+ * ```
569
+ *
570
+ * @example
571
+ * ```tsx
572
+ * // Multiple menu items with shortcuts
573
+ * <DropdownMenuContent>
574
+ * <DropdownMenuItem>
575
+ * New File <DropdownMenuShortcut>⌘N</DropdownMenuShortcut>
576
+ * </DropdownMenuItem>
577
+ * <DropdownMenuItem>
578
+ * Open File <DropdownMenuShortcut>⌘O</DropdownMenuShortcut>
579
+ * </DropdownMenuItem>
580
+ * <DropdownMenuSeparator />
581
+ * <DropdownMenuItem>
582
+ * Save <DropdownMenuShortcut>⌘S</DropdownMenuShortcut>
583
+ * </DropdownMenuItem>
584
+ * <DropdownMenuItem>
585
+ * Save As <DropdownMenuShortcut>⌘⇧S</DropdownMenuShortcut>
586
+ * </DropdownMenuItem>
587
+ * </DropdownMenuContent>
588
+ * ```
279
589
  * @since 1.0.0
280
590
  */
281
- declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
591
+ declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<"span"> & {
592
+ className?: string;
593
+ }): import("react/jsx-runtime").JSX.Element;
282
594
  /**
283
595
  * Container for creating nested submenus
284
596
  *
285
597
  * Wraps a submenu trigger and content to create hierarchical menu structures.
286
- * Use with DropdownMenuSubTrigger and DropdownMenuSubContent.
598
+ * Enables multi-level navigation within dropdown menus. Use with
599
+ * DropdownMenuSubTrigger and DropdownMenuSubContent to build complex
600
+ * menu hierarchies with proper focus management and keyboard navigation.
601
+ *
602
+ * @param defaultOpen - Whether the submenu is initially open (uncontrolled mode)
603
+ * @param open - Whether the submenu is open (controlled mode)
604
+ * @param onOpenChange - Callback fired when the submenu open state changes
287
605
  *
288
- * @component
289
606
  * @example
290
607
  * ```tsx
608
+ * // Basic submenu structure
291
609
  * <DropdownMenuSub>
610
+ * <DropdownMenuSubTrigger>
611
+ * <Share className="mr-2 h-4 w-4" />
612
+ * Share Options
613
+ * </DropdownMenuSubTrigger>
614
+ * <DropdownMenuSubContent>
615
+ * <DropdownMenuItem>Email Link</DropdownMenuItem>
616
+ * <DropdownMenuItem>Copy to Clipboard</DropdownMenuItem>
617
+ * <DropdownMenuItem>Generate QR Code</DropdownMenuItem>
618
+ * </DropdownMenuSubContent>
619
+ * </DropdownMenuSub>
620
+ * ```
621
+ *
622
+ * @example
623
+ * ```tsx
624
+ * // Controlled submenu with state management
625
+ * const [isShareOpen, setIsShareOpen] = useState(false);
626
+ *
627
+ * <DropdownMenuSub open={isShareOpen} onOpenChange={setIsShareOpen}>
292
628
  * <DropdownMenuSubTrigger>Share</DropdownMenuSubTrigger>
293
629
  * <DropdownMenuSubContent>
294
- * <DropdownMenuItem>Email</DropdownMenuItem>
295
- * <DropdownMenuItem>Copy Link</DropdownMenuItem>
630
+ * <DropdownMenuItem onSelect={() => handleShare('email')}>Email</DropdownMenuItem>
631
+ * <DropdownMenuItem onSelect={() => handleShare('link')}>Copy Link</DropdownMenuItem>
296
632
  * </DropdownMenuSubContent>
297
633
  * </DropdownMenuSub>
298
634
  * ```
635
+ *
636
+ * @example
637
+ * ```tsx
638
+ * // Complex nested menu structure
639
+ * <DropdownMenuContent>
640
+ * <DropdownMenuItem>Edit</DropdownMenuItem>
641
+ * <DropdownMenuSeparator />
642
+ * <DropdownMenuSub>
643
+ * <DropdownMenuSubTrigger>Export</DropdownMenuSubTrigger>
644
+ * <DropdownMenuSubContent>
645
+ * <DropdownMenuItem>Export as PDF</DropdownMenuItem>
646
+ * <DropdownMenuItem>Export as PNG</DropdownMenuItem>
647
+ * <DropdownMenuSub>
648
+ * <DropdownMenuSubTrigger>Advanced Export</DropdownMenuSubTrigger>
649
+ * <DropdownMenuSubContent>
650
+ * <DropdownMenuItem>Custom Resolution</DropdownMenuItem>
651
+ * <DropdownMenuItem>Batch Export</DropdownMenuItem>
652
+ * </DropdownMenuSubContent>
653
+ * </DropdownMenuSub>
654
+ * </DropdownMenuSubContent>
655
+ * </DropdownMenuSub>
656
+ * </DropdownMenuContent>
657
+ * ```
299
658
  * @since 1.0.0
300
659
  */
301
660
  declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
302
661
  /**
303
662
  * Trigger element for opening a submenu
304
663
  *
305
- * Displays an arrow indicator and opens the associated submenu on hover or click.
306
- * Must be used within a DropdownMenuSub component.
664
+ * Displays an arrow indicator and opens the associated submenu on hover or keyboard
665
+ * navigation. Must be used within a DropdownMenuSub component. Automatically
666
+ * includes a chevron icon to indicate submenu availability and handles focus states.
307
667
  *
308
- * @component
668
+ * @param asChild - Merge props onto the immediate child instead of rendering a wrapper element
669
+ * @param disabled - Whether the trigger is disabled and cannot open the submenu
670
+ * @param textValue - Optional text value used for typeahead search functionality
309
671
  * @param inset - Whether to add left padding to align with items that have icons
310
672
  *
311
673
  * @example
312
674
  * ```tsx
675
+ * // Basic submenu trigger with icon
313
676
  * <DropdownMenuSub>
314
677
  * <DropdownMenuSubTrigger>
315
678
  * <Share className="mr-2 h-4 w-4" />
316
679
  * Share Options
317
680
  * </DropdownMenuSubTrigger>
318
681
  * <DropdownMenuSubContent>
319
- * <DropdownMenuItem>Email</DropdownMenuItem>
320
- * <DropdownMenuItem>Copy Link</DropdownMenuItem>
682
+ * <DropdownMenuItem>Email Link</DropdownMenuItem>
683
+ * <DropdownMenuItem>Copy to Clipboard</DropdownMenuItem>
321
684
  * </DropdownMenuSubContent>
322
685
  * </DropdownMenuSub>
323
686
  * ```
687
+ *
688
+ * @example
689
+ * ```tsx
690
+ * // Submenu trigger with inset alignment
691
+ * <DropdownMenuContent>
692
+ * <DropdownMenuItem>
693
+ * <FileText className="mr-2 h-4 w-4" />
694
+ * Open File
695
+ * </DropdownMenuItem>
696
+ * <DropdownMenuSub>
697
+ * <DropdownMenuSubTrigger inset>
698
+ * Recent Files
699
+ * </DropdownMenuSubTrigger>
700
+ * <DropdownMenuSubContent>
701
+ * <DropdownMenuItem>Document.pdf</DropdownMenuItem>
702
+ * <DropdownMenuItem>Presentation.pptx</DropdownMenuItem>
703
+ * </DropdownMenuSubContent>
704
+ * </DropdownMenuSub>
705
+ * </DropdownMenuContent>
706
+ * ```
707
+ *
708
+ * @example
709
+ * ```tsx
710
+ * // Disabled submenu trigger
711
+ * <DropdownMenuSubTrigger disabled>
712
+ * Advanced Options (Pro Only)
713
+ * </DropdownMenuSubTrigger>
714
+ * ```
324
715
  * @since 1.0.0
325
716
  */
326
717
  declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
327
718
  inset?: boolean;
719
+ className?: string;
328
720
  }): import("react/jsx-runtime").JSX.Element;
329
721
  /**
330
722
  * Content container for submenu items
331
723
  *
332
724
  * Contains the items displayed when a submenu is opened. Positioned relative
333
- * to the trigger and supports the same item types as the main menu.
725
+ * to the submenu trigger with intelligent collision detection. Supports all
726
+ * the same item types as the main menu content, enabling complex nested
727
+ * menu structures with consistent behavior and styling.
728
+ *
729
+ * @param asChild - Merge props onto the immediate child instead of rendering a wrapper element
730
+ * @param loop - When true, keyboard navigation will loop from last to first item
731
+ * @param side - The preferred side of the trigger to render against
732
+ * @param sideOffset - Distance in pixels from the trigger
733
+ * @param align - The preferred alignment against the trigger
734
+ * @param alignOffset - Distance in pixels from the align point
735
+ * @param avoidCollisions - Whether to avoid collisions with viewport boundaries
736
+ * @param sticky - Element positioning behavior relative to the viewport
737
+ * @param hideWhenDetached - Whether to hide content when reference element is occluded
334
738
  *
335
- * @component
336
739
  * @example
337
740
  * ```tsx
741
+ * // Basic submenu content with various item types
338
742
  * <DropdownMenuSubContent>
339
- * <DropdownMenuItem>Submenu Item 1</DropdownMenuItem>
340
- * <DropdownMenuItem>Submenu Item 2</DropdownMenuItem>
743
+ * <DropdownMenuItem>
744
+ * <Mail className="mr-2 h-4 w-4" />
745
+ * Send via Email
746
+ * </DropdownMenuItem>
747
+ * <DropdownMenuItem>
748
+ * <Link className="mr-2 h-4 w-4" />
749
+ * Copy Share Link
750
+ * </DropdownMenuItem>
341
751
  * <DropdownMenuSeparator />
342
- * <DropdownMenuItem>Submenu Item 3</DropdownMenuItem>
752
+ * <DropdownMenuItem>
753
+ * <QrCode className="mr-2 h-4 w-4" />
754
+ * Generate QR Code
755
+ * </DropdownMenuItem>
756
+ * </DropdownMenuSubContent>
757
+ * ```
758
+ *
759
+ * @example
760
+ * ```tsx
761
+ * // Submenu with checkbox items for multi-selection
762
+ * <DropdownMenuSubContent>
763
+ * <DropdownMenuLabel>Export Options</DropdownMenuLabel>
764
+ * <DropdownMenuSeparator />
765
+ * <DropdownMenuCheckboxItem checked={includeMetadata} onCheckedChange={setIncludeMetadata}>
766
+ * Include Metadata
767
+ * </DropdownMenuCheckboxItem>
768
+ * <DropdownMenuCheckboxItem checked={compressFile} onCheckedChange={setCompressFile}>
769
+ * Compress File
770
+ * </DropdownMenuCheckboxItem>
771
+ * <DropdownMenuSeparator />
772
+ * <DropdownMenuItem>Export Now</DropdownMenuItem>
773
+ * </DropdownMenuSubContent>
774
+ * ```
775
+ *
776
+ * @example
777
+ * ```tsx
778
+ * // Nested submenu structure
779
+ * <DropdownMenuSubContent>
780
+ * <DropdownMenuItem>Basic Export</DropdownMenuItem>
781
+ * <DropdownMenuSub>
782
+ * <DropdownMenuSubTrigger>Advanced Settings</DropdownMenuSubTrigger>
783
+ * <DropdownMenuSubContent>
784
+ * <DropdownMenuItem>High Quality</DropdownMenuItem>
785
+ * <DropdownMenuItem>Custom Resolution</DropdownMenuItem>
786
+ * </DropdownMenuSubContent>
787
+ * </DropdownMenuSub>
343
788
  * </DropdownMenuSubContent>
344
789
  * ```
345
790
  * @since 1.0.0
346
791
  */
347
- declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
792
+ declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent> & {
793
+ className?: string;
794
+ }): import("react/jsx-runtime").JSX.Element;
348
795
  export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
349
796
  //# sourceMappingURL=dropdown-menu.d.ts.map