@neynar/ui 0.2.1 → 0.3.1

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 (547) hide show
  1. package/{llm-docs → .llm}/a.llm.md +2 -16
  2. package/{llm-docs → .llm}/badge.llm.md +16 -21
  3. package/{llm-docs → .llm}/blockquote.llm.md +1 -6
  4. package/.llm/button-group-separator.llm.md +53 -0
  5. package/.llm/button-group-text.llm.md +56 -0
  6. package/.llm/button-group.llm.md +81 -0
  7. package/{llm-docs → .llm}/button.llm.md +1 -1
  8. package/{llm-docs → .llm}/code.llm.md +1 -6
  9. package/.llm/empty-content.llm.md +103 -0
  10. package/.llm/empty-description.llm.md +70 -0
  11. package/.llm/empty-header.llm.md +64 -0
  12. package/.llm/empty-media.llm.md +81 -0
  13. package/.llm/empty-title.llm.md +54 -0
  14. package/.llm/empty.llm.md +158 -0
  15. package/.llm/field-content.llm.md +28 -0
  16. package/.llm/field-description.llm.md +28 -0
  17. package/.llm/field-error.llm.md +41 -0
  18. package/.llm/field-group.llm.md +84 -0
  19. package/.llm/field-label.llm.md +28 -0
  20. package/.llm/field-legend.llm.md +77 -0
  21. package/.llm/field-separator.llm.md +35 -0
  22. package/.llm/field-set.llm.md +80 -0
  23. package/.llm/field-title.llm.md +28 -0
  24. package/.llm/field.llm.md +35 -0
  25. package/{llm-docs → .llm}/h1.llm.md +2 -7
  26. package/{llm-docs → .llm}/h2.llm.md +2 -7
  27. package/{llm-docs → .llm}/h3.llm.md +2 -7
  28. package/{llm-docs → .llm}/h4.llm.md +2 -7
  29. package/{llm-docs → .llm}/h5.llm.md +2 -7
  30. package/{llm-docs → .llm}/h6.llm.md +1 -6
  31. package/.llm/input-group-addon.llm.md +91 -0
  32. package/.llm/input-group-button.llm.md +120 -0
  33. package/.llm/input-group-input.llm.md +145 -0
  34. package/.llm/input-group-text.llm.md +75 -0
  35. package/.llm/input-group-textarea.llm.md +157 -0
  36. package/.llm/input-group.llm.md +108 -0
  37. package/.llm/item-actions.llm.md +77 -0
  38. package/.llm/item-content.llm.md +73 -0
  39. package/.llm/item-description.llm.md +61 -0
  40. package/.llm/item-footer.llm.md +68 -0
  41. package/.llm/item-group.llm.md +73 -0
  42. package/.llm/item-header.llm.md +66 -0
  43. package/.llm/item-media.llm.md +75 -0
  44. package/.llm/item-separator.llm.md +80 -0
  45. package/.llm/item-title.llm.md +59 -0
  46. package/.llm/item.llm.md +115 -0
  47. package/.llm/kbd-group.llm.md +71 -0
  48. package/.llm/kbd.llm.md +71 -0
  49. package/{llm-docs → .llm}/lead.llm.md +1 -6
  50. package/{llm-docs → .llm}/p.llm.md +1 -6
  51. package/{llm-docs → .llm}/sdk-items-registry.json +390 -6
  52. package/{llm-docs → .llm}/small.llm.md +1 -6
  53. package/{llm-docs → .llm}/span.llm.md +2 -16
  54. package/.llm/spinner.llm.md +182 -0
  55. package/{llm-docs → .llm}/strong.llm.md +1 -6
  56. package/{llm-docs → .llm}/typography.llm.md +2 -16
  57. package/dist/components/ui/button-group.d.ts +448 -0
  58. package/dist/components/ui/button-group.d.ts.map +1 -0
  59. package/dist/components/ui/button.d.ts +1 -1
  60. package/dist/components/ui/button.d.ts.map +1 -1
  61. package/dist/components/ui/empty-state.d.ts +1 -0
  62. package/dist/components/ui/empty-state.d.ts.map +1 -1
  63. package/dist/components/ui/empty.d.ts +630 -0
  64. package/dist/components/ui/empty.d.ts.map +1 -0
  65. package/dist/components/ui/field.d.ts +238 -0
  66. package/dist/components/ui/field.d.ts.map +1 -0
  67. package/dist/components/ui/input-group.d.ts +636 -0
  68. package/dist/components/ui/input-group.d.ts.map +1 -0
  69. package/dist/components/ui/item.d.ts +766 -0
  70. package/dist/components/ui/item.d.ts.map +1 -0
  71. package/dist/components/ui/kbd.d.ts +149 -0
  72. package/dist/components/ui/kbd.d.ts.map +1 -0
  73. package/dist/components/ui/scroll-area.d.ts +5 -5
  74. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  75. package/dist/components/ui/spinner.d.ts +194 -0
  76. package/dist/components/ui/spinner.d.ts.map +1 -0
  77. package/dist/components/ui/stack.d.ts.map +1 -1
  78. package/dist/components/ui/stories/accordion.stories.d.ts +0 -1
  79. package/dist/components/ui/stories/accordion.stories.d.ts.map +1 -1
  80. package/dist/components/ui/stories/alert-dialog.stories.d.ts +0 -1
  81. package/dist/components/ui/stories/alert-dialog.stories.d.ts.map +1 -1
  82. package/dist/components/ui/stories/alert.stories.d.ts +0 -1
  83. package/dist/components/ui/stories/alert.stories.d.ts.map +1 -1
  84. package/dist/components/ui/stories/aspect-ratio.stories.d.ts +0 -1
  85. package/dist/components/ui/stories/aspect-ratio.stories.d.ts.map +1 -1
  86. package/dist/components/ui/stories/avatar.stories.d.ts +0 -1
  87. package/dist/components/ui/stories/avatar.stories.d.ts.map +1 -1
  88. package/dist/components/ui/stories/badge.stories.d.ts +0 -1
  89. package/dist/components/ui/stories/badge.stories.d.ts.map +1 -1
  90. package/dist/components/ui/stories/breadcrumb.stories.d.ts +0 -1
  91. package/dist/components/ui/stories/breadcrumb.stories.d.ts.map +1 -1
  92. package/dist/components/ui/stories/button-group.stories.d.ts +48 -0
  93. package/dist/components/ui/stories/button-group.stories.d.ts.map +1 -0
  94. package/dist/components/ui/stories/button.stories.d.ts +0 -1
  95. package/dist/components/ui/stories/button.stories.d.ts.map +1 -1
  96. package/dist/components/ui/stories/calendar.stories.d.ts +0 -1
  97. package/dist/components/ui/stories/calendar.stories.d.ts.map +1 -1
  98. package/dist/components/ui/stories/card.stories.d.ts +0 -1
  99. package/dist/components/ui/stories/card.stories.d.ts.map +1 -1
  100. package/dist/components/ui/stories/carousel.stories.d.ts +0 -1
  101. package/dist/components/ui/stories/carousel.stories.d.ts.map +1 -1
  102. package/dist/components/ui/stories/chart.stories.d.ts +0 -1
  103. package/dist/components/ui/stories/chart.stories.d.ts.map +1 -1
  104. package/dist/components/ui/stories/checkbox.stories.d.ts +0 -1
  105. package/dist/components/ui/stories/checkbox.stories.d.ts.map +1 -1
  106. package/dist/components/ui/stories/cn.stories.d.ts.map +1 -1
  107. package/dist/components/ui/stories/collapsible.stories.d.ts +0 -1
  108. package/dist/components/ui/stories/collapsible.stories.d.ts.map +1 -1
  109. package/dist/components/ui/stories/colors.stories.d.ts +0 -1
  110. package/dist/components/ui/stories/colors.stories.d.ts.map +1 -1
  111. package/dist/components/ui/stories/combobox.stories.d.ts +0 -1
  112. package/dist/components/ui/stories/combobox.stories.d.ts.map +1 -1
  113. package/dist/components/ui/stories/command.stories.d.ts +0 -1
  114. package/dist/components/ui/stories/command.stories.d.ts.map +1 -1
  115. package/dist/components/ui/stories/container.stories.d.ts +0 -1
  116. package/dist/components/ui/stories/container.stories.d.ts.map +1 -1
  117. package/dist/components/ui/stories/context-menu.stories.d.ts +0 -1
  118. package/dist/components/ui/stories/context-menu.stories.d.ts.map +1 -1
  119. package/dist/components/ui/stories/date-picker.stories.d.ts +0 -1
  120. package/dist/components/ui/stories/date-picker.stories.d.ts.map +1 -1
  121. package/dist/components/ui/stories/dialog.stories.d.ts +0 -1
  122. package/dist/components/ui/stories/dialog.stories.d.ts.map +1 -1
  123. package/dist/components/ui/stories/drawer.stories.d.ts +0 -1
  124. package/dist/components/ui/stories/drawer.stories.d.ts.map +1 -1
  125. package/dist/components/ui/stories/dropdown-menu.stories.d.ts +0 -1
  126. package/dist/components/ui/stories/dropdown-menu.stories.d.ts.map +1 -1
  127. package/dist/components/ui/stories/empty-state.stories.d.ts +0 -1
  128. package/dist/components/ui/stories/empty-state.stories.d.ts.map +1 -1
  129. package/dist/components/ui/stories/empty.stories.d.ts +38 -0
  130. package/dist/components/ui/stories/empty.stories.d.ts.map +1 -0
  131. package/dist/components/ui/stories/field.stories.d.ts +48 -0
  132. package/dist/components/ui/stories/field.stories.d.ts.map +1 -0
  133. package/dist/components/ui/stories/hover-card.stories.d.ts +0 -1
  134. package/dist/components/ui/stories/hover-card.stories.d.ts.map +1 -1
  135. package/dist/components/ui/stories/input-group.stories.d.ts +37 -0
  136. package/dist/components/ui/stories/input-group.stories.d.ts.map +1 -0
  137. package/dist/components/ui/stories/input.stories.d.ts +0 -1
  138. package/dist/components/ui/stories/input.stories.d.ts.map +1 -1
  139. package/dist/components/ui/stories/item.stories.d.ts +61 -0
  140. package/dist/components/ui/stories/item.stories.d.ts.map +1 -0
  141. package/dist/components/ui/stories/kbd.stories.d.ts +37 -0
  142. package/dist/components/ui/stories/kbd.stories.d.ts.map +1 -0
  143. package/dist/components/ui/stories/label.stories.d.ts +0 -1
  144. package/dist/components/ui/stories/label.stories.d.ts.map +1 -1
  145. package/dist/components/ui/stories/menubar.stories.d.ts +0 -1
  146. package/dist/components/ui/stories/menubar.stories.d.ts.map +1 -1
  147. package/dist/components/ui/stories/navigation-menu.stories.d.ts +0 -1
  148. package/dist/components/ui/stories/navigation-menu.stories.d.ts.map +1 -1
  149. package/dist/components/ui/stories/pagination.stories.d.ts +0 -1
  150. package/dist/components/ui/stories/pagination.stories.d.ts.map +1 -1
  151. package/dist/components/ui/stories/popover.stories.d.ts +0 -1
  152. package/dist/components/ui/stories/popover.stories.d.ts.map +1 -1
  153. package/dist/components/ui/stories/progress.stories.d.ts +0 -1
  154. package/dist/components/ui/stories/progress.stories.d.ts.map +1 -1
  155. package/dist/components/ui/stories/radio-group.stories.d.ts +0 -1
  156. package/dist/components/ui/stories/radio-group.stories.d.ts.map +1 -1
  157. package/dist/components/ui/stories/resizable.stories.d.ts +0 -1
  158. package/dist/components/ui/stories/resizable.stories.d.ts.map +1 -1
  159. package/dist/components/ui/stories/scroll-area.stories.d.ts +1 -2
  160. package/dist/components/ui/stories/scroll-area.stories.d.ts.map +1 -1
  161. package/dist/components/ui/stories/select.stories.d.ts +0 -1
  162. package/dist/components/ui/stories/select.stories.d.ts.map +1 -1
  163. package/dist/components/ui/stories/separator.stories.d.ts +0 -1
  164. package/dist/components/ui/stories/separator.stories.d.ts.map +1 -1
  165. package/dist/components/ui/stories/sheet.stories.d.ts +0 -1
  166. package/dist/components/ui/stories/sheet.stories.d.ts.map +1 -1
  167. package/dist/components/ui/stories/sidebar.stories.d.ts +0 -1
  168. package/dist/components/ui/stories/sidebar.stories.d.ts.map +1 -1
  169. package/dist/components/ui/stories/skeleton.stories.d.ts +0 -1
  170. package/dist/components/ui/stories/skeleton.stories.d.ts.map +1 -1
  171. package/dist/components/ui/stories/slider.stories.d.ts +0 -1
  172. package/dist/components/ui/stories/slider.stories.d.ts.map +1 -1
  173. package/dist/components/ui/stories/sonner.stories.d.ts.map +1 -1
  174. package/dist/components/ui/stories/spinner.stories.d.ts +37 -0
  175. package/dist/components/ui/stories/spinner.stories.d.ts.map +1 -0
  176. package/dist/components/ui/stories/stack.stories.d.ts +0 -1
  177. package/dist/components/ui/stories/stack.stories.d.ts.map +1 -1
  178. package/dist/components/ui/stories/switch.stories.d.ts +0 -1
  179. package/dist/components/ui/stories/switch.stories.d.ts.map +1 -1
  180. package/dist/components/ui/stories/table.stories.d.ts +0 -1
  181. package/dist/components/ui/stories/table.stories.d.ts.map +1 -1
  182. package/dist/components/ui/stories/tabs.stories.d.ts +0 -1
  183. package/dist/components/ui/stories/tabs.stories.d.ts.map +1 -1
  184. package/dist/components/ui/stories/text-field.stories.d.ts +0 -1
  185. package/dist/components/ui/stories/text-field.stories.d.ts.map +1 -1
  186. package/dist/components/ui/stories/textarea.stories.d.ts +0 -1
  187. package/dist/components/ui/stories/textarea.stories.d.ts.map +1 -1
  188. package/dist/components/ui/stories/theme-toggle.stories.d.ts +0 -1
  189. package/dist/components/ui/stories/theme-toggle.stories.d.ts.map +1 -1
  190. package/dist/components/ui/stories/theme.stories.d.ts +0 -1
  191. package/dist/components/ui/stories/theme.stories.d.ts.map +1 -1
  192. package/dist/components/ui/stories/toggle-group.stories.d.ts +0 -1
  193. package/dist/components/ui/stories/toggle-group.stories.d.ts.map +1 -1
  194. package/dist/components/ui/stories/toggle.stories.d.ts +0 -1
  195. package/dist/components/ui/stories/toggle.stories.d.ts.map +1 -1
  196. package/dist/components/ui/stories/tooltip.stories.d.ts +0 -1
  197. package/dist/components/ui/stories/tooltip.stories.d.ts.map +1 -1
  198. package/dist/components/ui/stories/typography.stories.d.ts +0 -1
  199. package/dist/components/ui/stories/typography.stories.d.ts.map +1 -1
  200. package/dist/components/ui/stories/use-mobile.stories.d.ts.map +1 -1
  201. package/dist/components/ui/stories/use-theme.stories.d.ts.map +1 -1
  202. package/dist/components/ui/theme-toggle.d.ts +0 -3
  203. package/dist/components/ui/theme-toggle.d.ts.map +1 -1
  204. package/dist/components/ui/theme.d.ts.map +1 -1
  205. package/dist/components/ui/typography.d.ts +12 -11
  206. package/dist/components/ui/typography.d.ts.map +1 -1
  207. package/dist/index.d.ts +7 -0
  208. package/dist/index.d.ts.map +1 -1
  209. package/dist/index.js +4973 -2353
  210. package/dist/index.js.map +1 -1
  211. package/dist/tsconfig.tsbuildinfo +1 -1
  212. package/docs/llm/components/display.md +125 -0
  213. package/docs/llm/components/feedback.md +0 -14
  214. package/docs/llm/components/forms.md +94 -0
  215. package/docs/llm/components/layout.md +169 -0
  216. package/llms.txt +18 -12
  217. package/package.json +7 -6
  218. package/src/components/ui/button-group.tsx +525 -0
  219. package/src/components/ui/button.tsx +9 -12
  220. package/src/components/ui/empty-state.tsx +1 -0
  221. package/src/components/ui/empty.tsx +793 -0
  222. package/src/components/ui/field.tsx +494 -0
  223. package/src/components/ui/input-group.tsx +801 -0
  224. package/src/components/ui/item.tsx +955 -0
  225. package/src/components/ui/kbd.tsx +175 -0
  226. package/src/components/ui/skeleton.tsx +1 -1
  227. package/src/components/ui/spinner.tsx +211 -0
  228. package/src/components/ui/stack.tsx +3 -1
  229. package/src/components/ui/stories/accordion.stories.tsx +0 -1
  230. package/src/components/ui/stories/alert-dialog.stories.tsx +0 -1
  231. package/src/components/ui/stories/alert.stories.tsx +0 -1
  232. package/src/components/ui/stories/aspect-ratio.stories.tsx +0 -1
  233. package/src/components/ui/stories/avatar.stories.tsx +0 -1
  234. package/src/components/ui/stories/badge.stories.tsx +0 -1
  235. package/src/components/ui/stories/breadcrumb.stories.tsx +0 -1
  236. package/src/components/ui/stories/button-group.stories.tsx +300 -0
  237. package/src/components/ui/stories/button.stories.tsx +0 -1
  238. package/src/components/ui/stories/calendar.stories.tsx +0 -1
  239. package/src/components/ui/stories/card.stories.tsx +0 -1
  240. package/src/components/ui/stories/carousel.stories.tsx +0 -1
  241. package/src/components/ui/stories/chart.stories.tsx +0 -1
  242. package/src/components/ui/stories/checkbox.stories.tsx +0 -1
  243. package/src/components/ui/stories/cn.stories.tsx +0 -1
  244. package/src/components/ui/stories/collapsible.stories.tsx +0 -1
  245. package/src/components/ui/stories/colors.stories.tsx +0 -1
  246. package/src/components/ui/stories/combobox.stories.tsx +0 -1
  247. package/src/components/ui/stories/command.stories.tsx +0 -1
  248. package/src/components/ui/stories/container.stories.tsx +0 -1
  249. package/src/components/ui/stories/context-menu.stories.tsx +0 -1
  250. package/src/components/ui/stories/date-picker.stories.tsx +0 -1
  251. package/src/components/ui/stories/dialog.stories.tsx +0 -1
  252. package/src/components/ui/stories/drawer.stories.tsx +0 -1
  253. package/src/components/ui/stories/dropdown-menu.stories.tsx +0 -1
  254. package/src/components/ui/stories/empty-state.stories.tsx +0 -1
  255. package/src/components/ui/stories/empty.stories.tsx +293 -0
  256. package/src/components/ui/stories/field.stories.tsx +470 -0
  257. package/src/components/ui/stories/hover-card.stories.tsx +0 -1
  258. package/src/components/ui/stories/input-group.stories.tsx +444 -0
  259. package/src/components/ui/stories/input.stories.tsx +0 -1
  260. package/src/components/ui/stories/item.stories.tsx +601 -0
  261. package/src/components/ui/stories/kbd.stories.tsx +462 -0
  262. package/src/components/ui/stories/label.stories.tsx +0 -1
  263. package/src/components/ui/stories/menubar.stories.tsx +0 -1
  264. package/src/components/ui/stories/navigation-menu.stories.tsx +0 -1
  265. package/src/components/ui/stories/pagination.stories.tsx +0 -1
  266. package/src/components/ui/stories/popover.stories.tsx +0 -1
  267. package/src/components/ui/stories/progress.stories.tsx +0 -1
  268. package/src/components/ui/stories/radio-group.stories.tsx +0 -1
  269. package/src/components/ui/stories/resizable.stories.tsx +0 -1
  270. package/src/components/ui/stories/scroll-area.stories.tsx +0 -1
  271. package/src/components/ui/stories/select.stories.tsx +0 -1
  272. package/src/components/ui/stories/separator.stories.tsx +0 -1
  273. package/src/components/ui/stories/sheet.stories.tsx +0 -1
  274. package/src/components/ui/stories/sidebar.stories.tsx +0 -1
  275. package/src/components/ui/stories/skeleton.stories.tsx +0 -1
  276. package/src/components/ui/stories/slider.stories.tsx +0 -1
  277. package/src/components/ui/stories/sonner.stories.tsx +0 -1
  278. package/src/components/ui/stories/spinner.stories.tsx +356 -0
  279. package/src/components/ui/stories/stack.stories.tsx +0 -1
  280. package/src/components/ui/stories/switch.stories.tsx +0 -1
  281. package/src/components/ui/stories/table.stories.tsx +0 -1
  282. package/src/components/ui/stories/tabs.stories.tsx +0 -1
  283. package/src/components/ui/stories/text-field.stories.tsx +0 -1
  284. package/src/components/ui/stories/textarea.stories.tsx +0 -1
  285. package/src/components/ui/stories/theme-toggle.stories.tsx +0 -1
  286. package/src/components/ui/stories/theme.stories.tsx +0 -1
  287. package/src/components/ui/stories/toggle-group.stories.tsx +0 -1
  288. package/src/components/ui/stories/toggle.stories.tsx +0 -1
  289. package/src/components/ui/stories/tooltip.stories.tsx +0 -1
  290. package/src/components/ui/stories/typography.stories.tsx +5 -2
  291. package/src/components/ui/stories/use-mobile.stories.tsx +0 -1
  292. package/src/components/ui/stories/use-theme.stories.tsx +0 -1
  293. package/src/components/ui/tabs.tsx +1 -1
  294. package/src/components/ui/theme-toggle.tsx +1 -3
  295. package/src/components/ui/theme.tsx +6 -1
  296. package/src/components/ui/typography.tsx +29 -129
  297. package/src/index.ts +7 -0
  298. package/src/styles/globals.css +82 -94
  299. /package/{llm-docs → .llm}/accordion-content.llm.md +0 -0
  300. /package/{llm-docs → .llm}/accordion-item.llm.md +0 -0
  301. /package/{llm-docs → .llm}/accordion-trigger.llm.md +0 -0
  302. /package/{llm-docs → .llm}/accordion.llm.md +0 -0
  303. /package/{llm-docs → .llm}/alert-description.llm.md +0 -0
  304. /package/{llm-docs → .llm}/alert-dialog-action.llm.md +0 -0
  305. /package/{llm-docs → .llm}/alert-dialog-cancel.llm.md +0 -0
  306. /package/{llm-docs → .llm}/alert-dialog-content.llm.md +0 -0
  307. /package/{llm-docs → .llm}/alert-dialog-description.llm.md +0 -0
  308. /package/{llm-docs → .llm}/alert-dialog-footer.llm.md +0 -0
  309. /package/{llm-docs → .llm}/alert-dialog-header.llm.md +0 -0
  310. /package/{llm-docs → .llm}/alert-dialog-overlay.llm.md +0 -0
  311. /package/{llm-docs → .llm}/alert-dialog-portal.llm.md +0 -0
  312. /package/{llm-docs → .llm}/alert-dialog-title.llm.md +0 -0
  313. /package/{llm-docs → .llm}/alert-dialog-trigger.llm.md +0 -0
  314. /package/{llm-docs → .llm}/alert-dialog.llm.md +0 -0
  315. /package/{llm-docs → .llm}/alert-title.llm.md +0 -0
  316. /package/{llm-docs → .llm}/alert.llm.md +0 -0
  317. /package/{llm-docs → .llm}/aspect-ratio.llm.md +0 -0
  318. /package/{llm-docs → .llm}/avatar-fallback.llm.md +0 -0
  319. /package/{llm-docs → .llm}/avatar-image.llm.md +0 -0
  320. /package/{llm-docs → .llm}/avatar.llm.md +0 -0
  321. /package/{llm-docs → .llm}/breadcrumb-ellipsis.llm.md +0 -0
  322. /package/{llm-docs → .llm}/breadcrumb-item.llm.md +0 -0
  323. /package/{llm-docs → .llm}/breadcrumb-link.llm.md +0 -0
  324. /package/{llm-docs → .llm}/breadcrumb-list.llm.md +0 -0
  325. /package/{llm-docs → .llm}/breadcrumb-page.llm.md +0 -0
  326. /package/{llm-docs → .llm}/breadcrumb-separator.llm.md +0 -0
  327. /package/{llm-docs → .llm}/breadcrumb.llm.md +0 -0
  328. /package/{llm-docs → .llm}/calendar-day-button.llm.md +0 -0
  329. /package/{llm-docs → .llm}/calendar.llm.md +0 -0
  330. /package/{llm-docs → .llm}/card-action.llm.md +0 -0
  331. /package/{llm-docs → .llm}/card-content.llm.md +0 -0
  332. /package/{llm-docs → .llm}/card-description.llm.md +0 -0
  333. /package/{llm-docs → .llm}/card-footer.llm.md +0 -0
  334. /package/{llm-docs → .llm}/card-header.llm.md +0 -0
  335. /package/{llm-docs → .llm}/card-title.llm.md +0 -0
  336. /package/{llm-docs → .llm}/card.llm.md +0 -0
  337. /package/{llm-docs → .llm}/carousel-content.llm.md +0 -0
  338. /package/{llm-docs → .llm}/carousel-item.llm.md +0 -0
  339. /package/{llm-docs → .llm}/carousel-next.llm.md +0 -0
  340. /package/{llm-docs → .llm}/carousel-previous.llm.md +0 -0
  341. /package/{llm-docs → .llm}/carousel.llm.md +0 -0
  342. /package/{llm-docs → .llm}/chart-config.llm.md +0 -0
  343. /package/{llm-docs → .llm}/chart-container.llm.md +0 -0
  344. /package/{llm-docs → .llm}/chart-legend-content.llm.md +0 -0
  345. /package/{llm-docs → .llm}/chart-legend.llm.md +0 -0
  346. /package/{llm-docs → .llm}/chart-style.llm.md +0 -0
  347. /package/{llm-docs → .llm}/chart-tooltip-content.llm.md +0 -0
  348. /package/{llm-docs → .llm}/chart-tooltip.llm.md +0 -0
  349. /package/{llm-docs → .llm}/checkbox.llm.md +0 -0
  350. /package/{llm-docs → .llm}/cn.llm.md +0 -0
  351. /package/{llm-docs → .llm}/collapsible-content.llm.md +0 -0
  352. /package/{llm-docs → .llm}/collapsible-trigger.llm.md +0 -0
  353. /package/{llm-docs → .llm}/collapsible.llm.md +0 -0
  354. /package/{llm-docs → .llm}/combobox-option.llm.md +0 -0
  355. /package/{llm-docs → .llm}/combobox.llm.md +0 -0
  356. /package/{llm-docs → .llm}/command-dialog.llm.md +0 -0
  357. /package/{llm-docs → .llm}/command-empty.llm.md +0 -0
  358. /package/{llm-docs → .llm}/command-group.llm.md +0 -0
  359. /package/{llm-docs → .llm}/command-input.llm.md +0 -0
  360. /package/{llm-docs → .llm}/command-item.llm.md +0 -0
  361. /package/{llm-docs → .llm}/command-list.llm.md +0 -0
  362. /package/{llm-docs → .llm}/command-loading.llm.md +0 -0
  363. /package/{llm-docs → .llm}/command-separator.llm.md +0 -0
  364. /package/{llm-docs → .llm}/command-shortcut.llm.md +0 -0
  365. /package/{llm-docs → .llm}/command.llm.md +0 -0
  366. /package/{llm-docs → .llm}/container.llm.md +0 -0
  367. /package/{llm-docs → .llm}/context-menu-checkbox-item.llm.md +0 -0
  368. /package/{llm-docs → .llm}/context-menu-content.llm.md +0 -0
  369. /package/{llm-docs → .llm}/context-menu-group.llm.md +0 -0
  370. /package/{llm-docs → .llm}/context-menu-item.llm.md +0 -0
  371. /package/{llm-docs → .llm}/context-menu-label.llm.md +0 -0
  372. /package/{llm-docs → .llm}/context-menu-portal.llm.md +0 -0
  373. /package/{llm-docs → .llm}/context-menu-radio-group.llm.md +0 -0
  374. /package/{llm-docs → .llm}/context-menu-radio-item.llm.md +0 -0
  375. /package/{llm-docs → .llm}/context-menu-separator.llm.md +0 -0
  376. /package/{llm-docs → .llm}/context-menu-shortcut.llm.md +0 -0
  377. /package/{llm-docs → .llm}/context-menu-sub-content.llm.md +0 -0
  378. /package/{llm-docs → .llm}/context-menu-sub-trigger.llm.md +0 -0
  379. /package/{llm-docs → .llm}/context-menu-sub.llm.md +0 -0
  380. /package/{llm-docs → .llm}/context-menu-trigger.llm.md +0 -0
  381. /package/{llm-docs → .llm}/context-menu.llm.md +0 -0
  382. /package/{llm-docs → .llm}/date-picker.llm.md +0 -0
  383. /package/{llm-docs → .llm}/dialog-close.llm.md +0 -0
  384. /package/{llm-docs → .llm}/dialog-content.llm.md +0 -0
  385. /package/{llm-docs → .llm}/dialog-description.llm.md +0 -0
  386. /package/{llm-docs → .llm}/dialog-footer.llm.md +0 -0
  387. /package/{llm-docs → .llm}/dialog-header.llm.md +0 -0
  388. /package/{llm-docs → .llm}/dialog-overlay.llm.md +0 -0
  389. /package/{llm-docs → .llm}/dialog-portal.llm.md +0 -0
  390. /package/{llm-docs → .llm}/dialog-title.llm.md +0 -0
  391. /package/{llm-docs → .llm}/dialog-trigger.llm.md +0 -0
  392. /package/{llm-docs → .llm}/dialog.llm.md +0 -0
  393. /package/{llm-docs → .llm}/drawer-close.llm.md +0 -0
  394. /package/{llm-docs → .llm}/drawer-content.llm.md +0 -0
  395. /package/{llm-docs → .llm}/drawer-description.llm.md +0 -0
  396. /package/{llm-docs → .llm}/drawer-footer.llm.md +0 -0
  397. /package/{llm-docs → .llm}/drawer-header.llm.md +0 -0
  398. /package/{llm-docs → .llm}/drawer-overlay.llm.md +0 -0
  399. /package/{llm-docs → .llm}/drawer-portal.llm.md +0 -0
  400. /package/{llm-docs → .llm}/drawer-title.llm.md +0 -0
  401. /package/{llm-docs → .llm}/drawer-trigger.llm.md +0 -0
  402. /package/{llm-docs → .llm}/drawer.llm.md +0 -0
  403. /package/{llm-docs → .llm}/dropdown-menu-checkbox-item.llm.md +0 -0
  404. /package/{llm-docs → .llm}/dropdown-menu-content.llm.md +0 -0
  405. /package/{llm-docs → .llm}/dropdown-menu-group.llm.md +0 -0
  406. /package/{llm-docs → .llm}/dropdown-menu-item.llm.md +0 -0
  407. /package/{llm-docs → .llm}/dropdown-menu-label.llm.md +0 -0
  408. /package/{llm-docs → .llm}/dropdown-menu-portal.llm.md +0 -0
  409. /package/{llm-docs → .llm}/dropdown-menu-radio-group.llm.md +0 -0
  410. /package/{llm-docs → .llm}/dropdown-menu-radio-item.llm.md +0 -0
  411. /package/{llm-docs → .llm}/dropdown-menu-separator.llm.md +0 -0
  412. /package/{llm-docs → .llm}/dropdown-menu-shortcut.llm.md +0 -0
  413. /package/{llm-docs → .llm}/dropdown-menu-sub-content.llm.md +0 -0
  414. /package/{llm-docs → .llm}/dropdown-menu-sub-trigger.llm.md +0 -0
  415. /package/{llm-docs → .llm}/dropdown-menu-sub.llm.md +0 -0
  416. /package/{llm-docs → .llm}/dropdown-menu-trigger.llm.md +0 -0
  417. /package/{llm-docs → .llm}/dropdown-menu.llm.md +0 -0
  418. /package/{llm-docs → .llm}/empty-state.llm.md +0 -0
  419. /package/{llm-docs → .llm}/hover-card-content.llm.md +0 -0
  420. /package/{llm-docs → .llm}/hover-card-trigger.llm.md +0 -0
  421. /package/{llm-docs → .llm}/hover-card.llm.md +0 -0
  422. /package/{llm-docs → .llm}/input.llm.md +0 -0
  423. /package/{llm-docs → .llm}/label.llm.md +0 -0
  424. /package/{llm-docs → .llm}/menubar-checkbox-item.llm.md +0 -0
  425. /package/{llm-docs → .llm}/menubar-content.llm.md +0 -0
  426. /package/{llm-docs → .llm}/menubar-group.llm.md +0 -0
  427. /package/{llm-docs → .llm}/menubar-item.llm.md +0 -0
  428. /package/{llm-docs → .llm}/menubar-label.llm.md +0 -0
  429. /package/{llm-docs → .llm}/menubar-menu.llm.md +0 -0
  430. /package/{llm-docs → .llm}/menubar-portal.llm.md +0 -0
  431. /package/{llm-docs → .llm}/menubar-radio-group.llm.md +0 -0
  432. /package/{llm-docs → .llm}/menubar-radio-item.llm.md +0 -0
  433. /package/{llm-docs → .llm}/menubar-separator.llm.md +0 -0
  434. /package/{llm-docs → .llm}/menubar-shortcut.llm.md +0 -0
  435. /package/{llm-docs → .llm}/menubar-sub-content.llm.md +0 -0
  436. /package/{llm-docs → .llm}/menubar-sub-trigger.llm.md +0 -0
  437. /package/{llm-docs → .llm}/menubar-sub.llm.md +0 -0
  438. /package/{llm-docs → .llm}/menubar-trigger.llm.md +0 -0
  439. /package/{llm-docs → .llm}/menubar.llm.md +0 -0
  440. /package/{llm-docs → .llm}/navigation-menu-content.llm.md +0 -0
  441. /package/{llm-docs → .llm}/navigation-menu-indicator.llm.md +0 -0
  442. /package/{llm-docs → .llm}/navigation-menu-item.llm.md +0 -0
  443. /package/{llm-docs → .llm}/navigation-menu-link.llm.md +0 -0
  444. /package/{llm-docs → .llm}/navigation-menu-list.llm.md +0 -0
  445. /package/{llm-docs → .llm}/navigation-menu-trigger-style.llm.md +0 -0
  446. /package/{llm-docs → .llm}/navigation-menu-trigger.llm.md +0 -0
  447. /package/{llm-docs → .llm}/navigation-menu-viewport.llm.md +0 -0
  448. /package/{llm-docs → .llm}/navigation-menu.llm.md +0 -0
  449. /package/{llm-docs → .llm}/pagination-content.llm.md +0 -0
  450. /package/{llm-docs → .llm}/pagination-ellipsis.llm.md +0 -0
  451. /package/{llm-docs → .llm}/pagination-item.llm.md +0 -0
  452. /package/{llm-docs → .llm}/pagination-link.llm.md +0 -0
  453. /package/{llm-docs → .llm}/pagination-next.llm.md +0 -0
  454. /package/{llm-docs → .llm}/pagination-previous.llm.md +0 -0
  455. /package/{llm-docs → .llm}/pagination.llm.md +0 -0
  456. /package/{llm-docs → .llm}/popover-anchor.llm.md +0 -0
  457. /package/{llm-docs → .llm}/popover-content.llm.md +0 -0
  458. /package/{llm-docs → .llm}/popover-trigger.llm.md +0 -0
  459. /package/{llm-docs → .llm}/popover.llm.md +0 -0
  460. /package/{llm-docs → .llm}/progress.llm.md +0 -0
  461. /package/{llm-docs → .llm}/radio-group-indicator.llm.md +0 -0
  462. /package/{llm-docs → .llm}/radio-group-item.llm.md +0 -0
  463. /package/{llm-docs → .llm}/radio-group.llm.md +0 -0
  464. /package/{llm-docs → .llm}/resizable-handle.llm.md +0 -0
  465. /package/{llm-docs → .llm}/resizable-panel-group.llm.md +0 -0
  466. /package/{llm-docs → .llm}/resizable-panel.llm.md +0 -0
  467. /package/{llm-docs → .llm}/scroll-area-corner.llm.md +0 -0
  468. /package/{llm-docs → .llm}/scroll-area-thumb.llm.md +0 -0
  469. /package/{llm-docs → .llm}/scroll-area-viewport.llm.md +0 -0
  470. /package/{llm-docs → .llm}/scroll-area.llm.md +0 -0
  471. /package/{llm-docs → .llm}/scroll-bar.llm.md +0 -0
  472. /package/{llm-docs → .llm}/select-content.llm.md +0 -0
  473. /package/{llm-docs → .llm}/select-group.llm.md +0 -0
  474. /package/{llm-docs → .llm}/select-item.llm.md +0 -0
  475. /package/{llm-docs → .llm}/select-label.llm.md +0 -0
  476. /package/{llm-docs → .llm}/select-scroll-down-button.llm.md +0 -0
  477. /package/{llm-docs → .llm}/select-scroll-up-button.llm.md +0 -0
  478. /package/{llm-docs → .llm}/select-separator.llm.md +0 -0
  479. /package/{llm-docs → .llm}/select-trigger.llm.md +0 -0
  480. /package/{llm-docs → .llm}/select-value.llm.md +0 -0
  481. /package/{llm-docs → .llm}/select.llm.md +0 -0
  482. /package/{llm-docs → .llm}/separator.llm.md +0 -0
  483. /package/{llm-docs → .llm}/sheet-close.llm.md +0 -0
  484. /package/{llm-docs → .llm}/sheet-content.llm.md +0 -0
  485. /package/{llm-docs → .llm}/sheet-description.llm.md +0 -0
  486. /package/{llm-docs → .llm}/sheet-footer.llm.md +0 -0
  487. /package/{llm-docs → .llm}/sheet-header.llm.md +0 -0
  488. /package/{llm-docs → .llm}/sheet-title.llm.md +0 -0
  489. /package/{llm-docs → .llm}/sheet-trigger.llm.md +0 -0
  490. /package/{llm-docs → .llm}/sheet.llm.md +0 -0
  491. /package/{llm-docs → .llm}/sidebar-content.llm.md +0 -0
  492. /package/{llm-docs → .llm}/sidebar-footer.llm.md +0 -0
  493. /package/{llm-docs → .llm}/sidebar-group-action.llm.md +0 -0
  494. /package/{llm-docs → .llm}/sidebar-group-content.llm.md +0 -0
  495. /package/{llm-docs → .llm}/sidebar-group-label.llm.md +0 -0
  496. /package/{llm-docs → .llm}/sidebar-group.llm.md +0 -0
  497. /package/{llm-docs → .llm}/sidebar-header.llm.md +0 -0
  498. /package/{llm-docs → .llm}/sidebar-input.llm.md +0 -0
  499. /package/{llm-docs → .llm}/sidebar-inset.llm.md +0 -0
  500. /package/{llm-docs → .llm}/sidebar-menu-action.llm.md +0 -0
  501. /package/{llm-docs → .llm}/sidebar-menu-badge.llm.md +0 -0
  502. /package/{llm-docs → .llm}/sidebar-menu-button.llm.md +0 -0
  503. /package/{llm-docs → .llm}/sidebar-menu-item.llm.md +0 -0
  504. /package/{llm-docs → .llm}/sidebar-menu-skeleton.llm.md +0 -0
  505. /package/{llm-docs → .llm}/sidebar-menu-sub-button.llm.md +0 -0
  506. /package/{llm-docs → .llm}/sidebar-menu-sub-item.llm.md +0 -0
  507. /package/{llm-docs → .llm}/sidebar-menu-sub.llm.md +0 -0
  508. /package/{llm-docs → .llm}/sidebar-menu.llm.md +0 -0
  509. /package/{llm-docs → .llm}/sidebar-provider.llm.md +0 -0
  510. /package/{llm-docs → .llm}/sidebar-rail.llm.md +0 -0
  511. /package/{llm-docs → .llm}/sidebar-separator.llm.md +0 -0
  512. /package/{llm-docs → .llm}/sidebar-trigger.llm.md +0 -0
  513. /package/{llm-docs → .llm}/sidebar.llm.md +0 -0
  514. /package/{llm-docs → .llm}/skeleton.llm.md +0 -0
  515. /package/{llm-docs → .llm}/slider.llm.md +0 -0
  516. /package/{llm-docs → .llm}/stack.llm.md +0 -0
  517. /package/{llm-docs → .llm}/switch.llm.md +0 -0
  518. /package/{llm-docs → .llm}/table-body.llm.md +0 -0
  519. /package/{llm-docs → .llm}/table-caption.llm.md +0 -0
  520. /package/{llm-docs → .llm}/table-cell.llm.md +0 -0
  521. /package/{llm-docs → .llm}/table-footer.llm.md +0 -0
  522. /package/{llm-docs → .llm}/table-head.llm.md +0 -0
  523. /package/{llm-docs → .llm}/table-header.llm.md +0 -0
  524. /package/{llm-docs → .llm}/table-row.llm.md +0 -0
  525. /package/{llm-docs → .llm}/table.llm.md +0 -0
  526. /package/{llm-docs → .llm}/tabs-content.llm.md +0 -0
  527. /package/{llm-docs → .llm}/tabs-list.llm.md +0 -0
  528. /package/{llm-docs → .llm}/tabs-trigger.llm.md +0 -0
  529. /package/{llm-docs → .llm}/tabs.llm.md +0 -0
  530. /package/{llm-docs → .llm}/text-field.llm.md +0 -0
  531. /package/{llm-docs → .llm}/textarea.llm.md +0 -0
  532. /package/{llm-docs → .llm}/theme-preference.llm.md +0 -0
  533. /package/{llm-docs → .llm}/theme-toggle.llm.md +0 -0
  534. /package/{llm-docs → .llm}/theme.llm.md +0 -0
  535. /package/{llm-docs → .llm}/toast.llm.md +0 -0
  536. /package/{llm-docs → .llm}/toaster.llm.md +0 -0
  537. /package/{llm-docs → .llm}/toggle-group-item.llm.md +0 -0
  538. /package/{llm-docs → .llm}/toggle-group.llm.md +0 -0
  539. /package/{llm-docs → .llm}/toggle.llm.md +0 -0
  540. /package/{llm-docs → .llm}/tooltip-content.llm.md +0 -0
  541. /package/{llm-docs → .llm}/tooltip-provider.llm.md +0 -0
  542. /package/{llm-docs → .llm}/tooltip-trigger.llm.md +0 -0
  543. /package/{llm-docs → .llm}/tooltip.llm.md +0 -0
  544. /package/{llm-docs → .llm}/use-carousel.llm.md +0 -0
  545. /package/{llm-docs → .llm}/use-command-state.llm.md +0 -0
  546. /package/{llm-docs → .llm}/use-is-mobile.llm.md +0 -0
  547. /package/{llm-docs → .llm}/use-sidebar.llm.md +0 -0
@@ -0,0 +1,462 @@
1
+ import type { Meta, StoryObj } from "@storybook/react-vite";
2
+ import {
3
+ Command,
4
+ ArrowUp,
5
+ ArrowDown,
6
+ ArrowLeft,
7
+ ArrowRight,
8
+ CornerDownLeft,
9
+ } from "lucide-react";
10
+ import { Kbd, KbdGroup } from "../kbd";
11
+
12
+ const meta = {
13
+ title: "Form & Input/Kbd",
14
+ component: Kbd,
15
+ parameters: {
16
+ layout: "centered",
17
+ docs: {
18
+ description: {
19
+ component:
20
+ "A keyboard key component for displaying keyboard shortcuts and key combinations. Supports single keys and grouped key combinations.",
21
+ },
22
+ },
23
+ },
24
+ argTypes: {
25
+ className: {
26
+ control: { type: "text" },
27
+ description: "Additional CSS classes to apply",
28
+ },
29
+ },
30
+ } satisfies Meta<typeof Kbd>;
31
+
32
+ export default meta;
33
+ type Story = StoryObj<typeof meta>;
34
+
35
+ /**
36
+ * Interactive playground with kbd properties.
37
+ */
38
+ export const Interactive: Story = {
39
+ render: (args) => <Kbd {...args}>⌘K</Kbd>,
40
+ };
41
+
42
+ /**
43
+ * Showcase of all available kbd variants and combinations.
44
+ */
45
+ export const Variants: Story = {
46
+ render: () => (
47
+ <div className="space-y-12 w-full max-w-2xl">
48
+ {/* Single Keys */}
49
+ <div className="space-y-4">
50
+ <h3 className="text-sm font-medium text-muted-foreground">
51
+ Single Keys
52
+ </h3>
53
+ <div className="flex flex-wrap gap-2">
54
+ <Kbd>A</Kbd>
55
+ <Kbd>B</Kbd>
56
+ <Kbd>1</Kbd>
57
+ <Kbd>2</Kbd>
58
+ <Kbd>Enter</Kbd>
59
+ <Kbd>Esc</Kbd>
60
+ <Kbd>Tab</Kbd>
61
+ <Kbd>Space</Kbd>
62
+ <Kbd>Del</Kbd>
63
+ </div>
64
+ </div>
65
+
66
+ {/* Modifier Keys */}
67
+ <div className="space-y-4">
68
+ <h3 className="text-sm font-medium text-muted-foreground">
69
+ Modifier Keys
70
+ </h3>
71
+ <div className="flex flex-wrap gap-2">
72
+ <Kbd>⌘</Kbd>
73
+ <Kbd>⌥</Kbd>
74
+ <Kbd>⇧</Kbd>
75
+ <Kbd>⌃</Kbd>
76
+ <Kbd>Ctrl</Kbd>
77
+ <Kbd>Alt</Kbd>
78
+ <Kbd>Shift</Kbd>
79
+ <Kbd>Cmd</Kbd>
80
+ </div>
81
+ </div>
82
+
83
+ {/* With Icons */}
84
+ <div className="space-y-4">
85
+ <h3 className="text-sm font-medium text-muted-foreground">
86
+ With Icons
87
+ </h3>
88
+ <div className="flex flex-wrap gap-2">
89
+ <Kbd>
90
+ <Command className="size-3" />
91
+ </Kbd>
92
+ <Kbd>
93
+ <ArrowUp className="size-3" />
94
+ </Kbd>
95
+ <Kbd>
96
+ <ArrowDown className="size-3" />
97
+ </Kbd>
98
+ <Kbd>
99
+ <ArrowLeft className="size-3" />
100
+ </Kbd>
101
+ <Kbd>
102
+ <ArrowRight className="size-3" />
103
+ </Kbd>
104
+ <Kbd>
105
+ <CornerDownLeft className="size-3" />
106
+ </Kbd>
107
+ </div>
108
+ </div>
109
+
110
+ {/* Key Combinations */}
111
+ <div className="space-y-4">
112
+ <h3 className="text-sm font-medium text-muted-foreground">
113
+ Key Combinations
114
+ </h3>
115
+ <div className="flex flex-col gap-3">
116
+ <div className="flex items-center gap-2">
117
+ <span className="text-sm w-32">Search:</span>
118
+ <KbdGroup>
119
+ <Kbd>⌘</Kbd>
120
+ <Kbd>K</Kbd>
121
+ </KbdGroup>
122
+ </div>
123
+ <div className="flex items-center gap-2">
124
+ <span className="text-sm w-32">Save:</span>
125
+ <KbdGroup>
126
+ <Kbd>⌘</Kbd>
127
+ <Kbd>S</Kbd>
128
+ </KbdGroup>
129
+ </div>
130
+ <div className="flex items-center gap-2">
131
+ <span className="text-sm w-32">Copy:</span>
132
+ <KbdGroup>
133
+ <Kbd>⌘</Kbd>
134
+ <Kbd>C</Kbd>
135
+ </KbdGroup>
136
+ </div>
137
+ <div className="flex items-center gap-2">
138
+ <span className="text-sm w-32">Paste:</span>
139
+ <KbdGroup>
140
+ <Kbd>⌘</Kbd>
141
+ <Kbd>V</Kbd>
142
+ </KbdGroup>
143
+ </div>
144
+ <div className="flex items-center gap-2">
145
+ <span className="text-sm w-32">Undo:</span>
146
+ <KbdGroup>
147
+ <Kbd>⌘</Kbd>
148
+ <Kbd>Z</Kbd>
149
+ </KbdGroup>
150
+ </div>
151
+ <div className="flex items-center gap-2">
152
+ <span className="text-sm w-32">Redo:</span>
153
+ <KbdGroup>
154
+ <Kbd>⌘</Kbd>
155
+ <Kbd>⇧</Kbd>
156
+ <Kbd>Z</Kbd>
157
+ </KbdGroup>
158
+ </div>
159
+ </div>
160
+ </div>
161
+
162
+ {/* Windows/Linux Shortcuts */}
163
+ <div className="space-y-4">
164
+ <h3 className="text-sm font-medium text-muted-foreground">
165
+ Windows/Linux Shortcuts
166
+ </h3>
167
+ <div className="flex flex-col gap-3">
168
+ <div className="flex items-center gap-2">
169
+ <span className="text-sm w-32">Search:</span>
170
+ <KbdGroup>
171
+ <Kbd>Ctrl</Kbd>
172
+ <Kbd>K</Kbd>
173
+ </KbdGroup>
174
+ </div>
175
+ <div className="flex items-center gap-2">
176
+ <span className="text-sm w-32">Save:</span>
177
+ <KbdGroup>
178
+ <Kbd>Ctrl</Kbd>
179
+ <Kbd>S</Kbd>
180
+ </KbdGroup>
181
+ </div>
182
+ <div className="flex items-center gap-2">
183
+ <span className="text-sm w-32">Select All:</span>
184
+ <KbdGroup>
185
+ <Kbd>Ctrl</Kbd>
186
+ <Kbd>A</Kbd>
187
+ </KbdGroup>
188
+ </div>
189
+ <div className="flex items-center gap-2">
190
+ <span className="text-sm w-32">Find:</span>
191
+ <KbdGroup>
192
+ <Kbd>Ctrl</Kbd>
193
+ <Kbd>F</Kbd>
194
+ </KbdGroup>
195
+ </div>
196
+ </div>
197
+ </div>
198
+
199
+ {/* Multiple Keys */}
200
+ <div className="space-y-4">
201
+ <h3 className="text-sm font-medium text-muted-foreground">
202
+ Complex Combinations
203
+ </h3>
204
+ <div className="flex flex-col gap-3">
205
+ <div className="flex items-center gap-2">
206
+ <span className="text-sm w-32">Force Quit:</span>
207
+ <KbdGroup>
208
+ <Kbd>⌘</Kbd>
209
+ <Kbd>⌥</Kbd>
210
+ <Kbd>Esc</Kbd>
211
+ </KbdGroup>
212
+ </div>
213
+ <div className="flex items-center gap-2">
214
+ <span className="text-sm w-32">Screenshot:</span>
215
+ <KbdGroup>
216
+ <Kbd>⌘</Kbd>
217
+ <Kbd>⇧</Kbd>
218
+ <Kbd>4</Kbd>
219
+ </KbdGroup>
220
+ </div>
221
+ <div className="flex items-center gap-2">
222
+ <span className="text-sm w-32">Task Manager:</span>
223
+ <KbdGroup>
224
+ <Kbd>Ctrl</Kbd>
225
+ <Kbd>Shift</Kbd>
226
+ <Kbd>Esc</Kbd>
227
+ </KbdGroup>
228
+ </div>
229
+ </div>
230
+ </div>
231
+
232
+ {/* In Different Contexts */}
233
+ <div className="space-y-4">
234
+ <h3 className="text-sm font-medium text-muted-foreground">
235
+ Different Sizes
236
+ </h3>
237
+ <div className="flex flex-col gap-3">
238
+ <div className="flex items-center gap-2">
239
+ <span className="text-xs">Small:</span>
240
+ <Kbd className="h-4 min-w-4 text-[10px]">⌘K</Kbd>
241
+ </div>
242
+ <div className="flex items-center gap-2">
243
+ <span className="text-sm">Default:</span>
244
+ <Kbd>⌘K</Kbd>
245
+ </div>
246
+ <div className="flex items-center gap-2">
247
+ <span className="text-base">Large:</span>
248
+ <Kbd className="h-6 min-w-6 text-sm">⌘K</Kbd>
249
+ </div>
250
+ </div>
251
+ </div>
252
+ </div>
253
+ ),
254
+ parameters: {
255
+ layout: "padded",
256
+ docs: {
257
+ description: {
258
+ story:
259
+ "Complete showcase of keyboard key representations including single keys, modifiers, icons, and combinations.",
260
+ },
261
+ },
262
+ },
263
+ };
264
+
265
+ /**
266
+ * Real-world usage examples showing kbd in practical scenarios.
267
+ */
268
+ export const InContext: Story = {
269
+ render: () => (
270
+ <div className="space-y-8 w-full max-w-2xl">
271
+ {/* Search Bar with Shortcut */}
272
+ <div className="space-y-4 p-6 border rounded-lg">
273
+ <h3 className="text-lg font-semibold">Search</h3>
274
+ <div className="relative">
275
+ <input
276
+ type="text"
277
+ placeholder="Search anything..."
278
+ className="w-full px-4 py-2 pr-16 border rounded-md"
279
+ />
280
+ <div className="absolute right-3 top-1/2 transform -translate-y-1/2">
281
+ <KbdGroup>
282
+ <Kbd>⌘</Kbd>
283
+ <Kbd>K</Kbd>
284
+ </KbdGroup>
285
+ </div>
286
+ </div>
287
+ </div>
288
+
289
+ {/* Keyboard Shortcuts Guide */}
290
+ <div className="space-y-4 p-6 border rounded-lg">
291
+ <h3 className="text-lg font-semibold">Keyboard Shortcuts</h3>
292
+ <div className="space-y-3">
293
+ <div className="flex items-center justify-between py-2 border-b">
294
+ <span className="text-sm">Open search</span>
295
+ <KbdGroup>
296
+ <Kbd>⌘</Kbd>
297
+ <Kbd>K</Kbd>
298
+ </KbdGroup>
299
+ </div>
300
+ <div className="flex items-center justify-between py-2 border-b">
301
+ <span className="text-sm">Create new</span>
302
+ <KbdGroup>
303
+ <Kbd>⌘</Kbd>
304
+ <Kbd>N</Kbd>
305
+ </KbdGroup>
306
+ </div>
307
+ <div className="flex items-center justify-between py-2 border-b">
308
+ <span className="text-sm">Save changes</span>
309
+ <KbdGroup>
310
+ <Kbd>⌘</Kbd>
311
+ <Kbd>S</Kbd>
312
+ </KbdGroup>
313
+ </div>
314
+ <div className="flex items-center justify-between py-2 border-b">
315
+ <span className="text-sm">Open settings</span>
316
+ <KbdGroup>
317
+ <Kbd>⌘</Kbd>
318
+ <Kbd>,</Kbd>
319
+ </KbdGroup>
320
+ </div>
321
+ <div className="flex items-center justify-between py-2">
322
+ <span className="text-sm">Show help</span>
323
+ <KbdGroup>
324
+ <Kbd>⌘</Kbd>
325
+ <Kbd>/</Kbd>
326
+ </KbdGroup>
327
+ </div>
328
+ </div>
329
+ </div>
330
+
331
+ {/* Editor Commands */}
332
+ <div className="space-y-4 p-6 border rounded-lg">
333
+ <h3 className="text-lg font-semibold">Editor Commands</h3>
334
+ <div className="grid grid-cols-2 gap-4">
335
+ <div className="space-y-3">
336
+ <h4 className="text-sm font-medium">Text Formatting</h4>
337
+ <div className="space-y-2 text-sm">
338
+ <div className="flex items-center justify-between">
339
+ <span>Bold</span>
340
+ <KbdGroup>
341
+ <Kbd>⌘</Kbd>
342
+ <Kbd>B</Kbd>
343
+ </KbdGroup>
344
+ </div>
345
+ <div className="flex items-center justify-between">
346
+ <span>Italic</span>
347
+ <KbdGroup>
348
+ <Kbd>⌘</Kbd>
349
+ <Kbd>I</Kbd>
350
+ </KbdGroup>
351
+ </div>
352
+ <div className="flex items-center justify-between">
353
+ <span>Underline</span>
354
+ <KbdGroup>
355
+ <Kbd>⌘</Kbd>
356
+ <Kbd>U</Kbd>
357
+ </KbdGroup>
358
+ </div>
359
+ </div>
360
+ </div>
361
+ <div className="space-y-3">
362
+ <h4 className="text-sm font-medium">Navigation</h4>
363
+ <div className="space-y-2 text-sm">
364
+ <div className="flex items-center justify-between">
365
+ <span>Move up</span>
366
+ <Kbd>
367
+ <ArrowUp className="size-3" />
368
+ </Kbd>
369
+ </div>
370
+ <div className="flex items-center justify-between">
371
+ <span>Move down</span>
372
+ <Kbd>
373
+ <ArrowDown className="size-3" />
374
+ </Kbd>
375
+ </div>
376
+ <div className="flex items-center justify-between">
377
+ <span>Go to start</span>
378
+ <KbdGroup>
379
+ <Kbd>⌘</Kbd>
380
+ <Kbd>
381
+ <ArrowLeft className="size-3" />
382
+ </Kbd>
383
+ </KbdGroup>
384
+ </div>
385
+ </div>
386
+ </div>
387
+ </div>
388
+ </div>
389
+
390
+ {/* Command Palette */}
391
+ <div className="space-y-4 p-6 border rounded-lg max-w-md">
392
+ <div className="flex items-center justify-between">
393
+ <h3 className="text-lg font-semibold">Command Palette</h3>
394
+ <KbdGroup>
395
+ <Kbd>⌘</Kbd>
396
+ <Kbd>P</Kbd>
397
+ </KbdGroup>
398
+ </div>
399
+ <div className="space-y-1">
400
+ <div className="flex items-center justify-between p-2 hover:bg-muted rounded-md cursor-pointer">
401
+ <span className="text-sm">New File</span>
402
+ <KbdGroup>
403
+ <Kbd>⌘</Kbd>
404
+ <Kbd>N</Kbd>
405
+ </KbdGroup>
406
+ </div>
407
+ <div className="flex items-center justify-between p-2 hover:bg-muted rounded-md cursor-pointer">
408
+ <span className="text-sm">Open File</span>
409
+ <KbdGroup>
410
+ <Kbd>⌘</Kbd>
411
+ <Kbd>O</Kbd>
412
+ </KbdGroup>
413
+ </div>
414
+ <div className="flex items-center justify-between p-2 hover:bg-muted rounded-md cursor-pointer">
415
+ <span className="text-sm">Save</span>
416
+ <KbdGroup>
417
+ <Kbd>⌘</Kbd>
418
+ <Kbd>S</Kbd>
419
+ </KbdGroup>
420
+ </div>
421
+ <div className="flex items-center justify-between p-2 hover:bg-muted rounded-md cursor-pointer">
422
+ <span className="text-sm">Close Tab</span>
423
+ <KbdGroup>
424
+ <Kbd>⌘</Kbd>
425
+ <Kbd>W</Kbd>
426
+ </KbdGroup>
427
+ </div>
428
+ </div>
429
+ </div>
430
+
431
+ {/* Inline Documentation */}
432
+ <div className="space-y-4 p-6 border rounded-lg">
433
+ <h3 className="text-lg font-semibold">Getting Started</h3>
434
+ <div className="space-y-4 text-sm">
435
+ <p>
436
+ Press <KbdGroup><Kbd>⌘</Kbd><Kbd>K</Kbd></KbdGroup> to open the command palette, or use{" "}
437
+ <KbdGroup><Kbd>⌘</Kbd><Kbd>P</Kbd></KbdGroup> to quickly search for files.
438
+ </p>
439
+ <p>
440
+ Navigate between tabs using{" "}
441
+ <KbdGroup><Kbd>⌘</Kbd><Kbd>1</Kbd></KbdGroup> through{" "}
442
+ <KbdGroup><Kbd>⌘</Kbd><Kbd>9</Kbd></KbdGroup>, or close the current tab with{" "}
443
+ <KbdGroup><Kbd>⌘</Kbd><Kbd>W</Kbd></KbdGroup>.
444
+ </p>
445
+ <p>
446
+ To save your work, press <KbdGroup><Kbd>⌘</Kbd><Kbd>S</Kbd></KbdGroup>. Need help? Press{" "}
447
+ <KbdGroup><Kbd>⌘</Kbd><Kbd>/</Kbd></KbdGroup> anytime.
448
+ </p>
449
+ </div>
450
+ </div>
451
+ </div>
452
+ ),
453
+ parameters: {
454
+ layout: "padded",
455
+ docs: {
456
+ description: {
457
+ story:
458
+ "Real-world examples showing kbd in search bars, shortcut guides, editors, command palettes, and documentation.",
459
+ },
460
+ },
461
+ },
462
+ };
@@ -25,7 +25,6 @@ const meta = {
25
25
  },
26
26
  },
27
27
  },
28
- tags: ["autodocs"],
29
28
  argTypes: {
30
29
  htmlFor: {
31
30
  control: { type: "text" },
@@ -57,7 +57,6 @@ const meta = {
57
57
  },
58
58
  },
59
59
  },
60
- tags: ["autodocs"],
61
60
  argTypes: {
62
61
  className: {
63
62
  control: "text",
@@ -33,7 +33,6 @@ const meta = {
33
33
  },
34
34
  },
35
35
  },
36
- tags: ["autodocs"],
37
36
  argTypes: {
38
37
  viewport: {
39
38
  control: "boolean",
@@ -22,7 +22,6 @@ const meta = {
22
22
  },
23
23
  },
24
24
  },
25
- tags: ["autodocs"],
26
25
  } satisfies Meta<typeof Pagination>;
27
26
 
28
27
  export default meta;
@@ -32,7 +32,6 @@ const meta = {
32
32
  },
33
33
  },
34
34
  },
35
- tags: ["autodocs"],
36
35
  argTypes: {
37
36
  open: {
38
37
  control: "boolean",
@@ -16,7 +16,6 @@ const meta = {
16
16
  },
17
17
  },
18
18
  },
19
- tags: ["autodocs"],
20
19
  argTypes: {
21
20
  value: {
22
21
  control: { type: "range", min: 0, max: 100, step: 1 },
@@ -16,7 +16,6 @@ const meta = {
16
16
  },
17
17
  },
18
18
  },
19
- tags: ["autodocs"],
20
19
  argTypes: {
21
20
  defaultValue: {
22
21
  control: { type: "text" },
@@ -17,7 +17,6 @@ const meta = {
17
17
  },
18
18
  },
19
19
  },
20
- tags: ["autodocs"],
21
20
  argTypes: {
22
21
  direction: {
23
22
  control: { type: "select" },
@@ -13,7 +13,6 @@ const meta = {
13
13
  },
14
14
  },
15
15
  },
16
- tags: ["autodocs"],
17
16
  argTypes: {
18
17
  className: {
19
18
  control: { type: "text" },
@@ -25,7 +25,6 @@ const meta = {
25
25
  },
26
26
  },
27
27
  },
28
- tags: ["autodocs"],
29
28
  argTypes: {
30
29
  value: {
31
30
  control: "text",
@@ -13,7 +13,6 @@ const meta = {
13
13
  },
14
14
  },
15
15
  },
16
- tags: ["autodocs"],
17
16
  argTypes: {
18
17
  orientation: {
19
18
  control: { type: "select" },
@@ -30,7 +30,6 @@ const meta = {
30
30
  },
31
31
  },
32
32
  },
33
- tags: ["autodocs"],
34
33
  argTypes: {
35
34
  open: {
36
35
  control: "boolean",
@@ -52,7 +52,6 @@ const meta = {
52
52
  },
53
53
  },
54
54
  },
55
- tags: ["autodocs"],
56
55
  argTypes: {
57
56
  side: {
58
57
  control: { type: "select" },
@@ -14,7 +14,6 @@ const meta = {
14
14
  },
15
15
  },
16
16
  },
17
- tags: ["autodocs"],
18
17
  argTypes: {
19
18
  className: {
20
19
  control: { type: "text" },
@@ -23,7 +23,6 @@ const meta = {
23
23
  },
24
24
  },
25
25
  },
26
- tags: ["autodocs"],
27
26
  argTypes: {
28
27
  value: {
29
28
  control: { type: "object" },
@@ -17,7 +17,6 @@ const meta: Meta<typeof Toaster> = {
17
17
  },
18
18
  },
19
19
  },
20
- tags: ["autodocs"],
21
20
  argTypes: {
22
21
  position: {
23
22
  control: "select",