@neynar/ui 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (503) hide show
  1. package/dist/components/ui/badge.d.ts +7 -1
  2. package/dist/components/ui/badge.d.ts.map +1 -1
  3. package/dist/components/ui/button-group.d.ts +448 -0
  4. package/dist/components/ui/button-group.d.ts.map +1 -0
  5. package/dist/components/ui/button.d.ts +1 -1
  6. package/dist/components/ui/button.d.ts.map +1 -1
  7. package/dist/components/ui/empty-state.d.ts +1 -0
  8. package/dist/components/ui/empty-state.d.ts.map +1 -1
  9. package/dist/components/ui/empty.d.ts +630 -0
  10. package/dist/components/ui/empty.d.ts.map +1 -0
  11. package/dist/components/ui/field.d.ts +238 -0
  12. package/dist/components/ui/field.d.ts.map +1 -0
  13. package/dist/components/ui/input-group.d.ts +636 -0
  14. package/dist/components/ui/input-group.d.ts.map +1 -0
  15. package/dist/components/ui/item.d.ts +766 -0
  16. package/dist/components/ui/item.d.ts.map +1 -0
  17. package/dist/components/ui/kbd.d.ts +149 -0
  18. package/dist/components/ui/kbd.d.ts.map +1 -0
  19. package/dist/components/ui/spinner.d.ts +194 -0
  20. package/dist/components/ui/spinner.d.ts.map +1 -0
  21. package/dist/components/ui/stories/accordion.stories.d.ts +0 -1
  22. package/dist/components/ui/stories/accordion.stories.d.ts.map +1 -1
  23. package/dist/components/ui/stories/alert-dialog.stories.d.ts +0 -1
  24. package/dist/components/ui/stories/alert-dialog.stories.d.ts.map +1 -1
  25. package/dist/components/ui/stories/alert.stories.d.ts +0 -1
  26. package/dist/components/ui/stories/alert.stories.d.ts.map +1 -1
  27. package/dist/components/ui/stories/aspect-ratio.stories.d.ts +0 -1
  28. package/dist/components/ui/stories/aspect-ratio.stories.d.ts.map +1 -1
  29. package/dist/components/ui/stories/avatar.stories.d.ts +0 -1
  30. package/dist/components/ui/stories/avatar.stories.d.ts.map +1 -1
  31. package/dist/components/ui/stories/badge.stories.d.ts +0 -1
  32. package/dist/components/ui/stories/badge.stories.d.ts.map +1 -1
  33. package/dist/components/ui/stories/breadcrumb.stories.d.ts +0 -1
  34. package/dist/components/ui/stories/breadcrumb.stories.d.ts.map +1 -1
  35. package/dist/components/ui/stories/button-group.stories.d.ts +48 -0
  36. package/dist/components/ui/stories/button-group.stories.d.ts.map +1 -0
  37. package/dist/components/ui/stories/button.stories.d.ts +0 -1
  38. package/dist/components/ui/stories/button.stories.d.ts.map +1 -1
  39. package/dist/components/ui/stories/calendar.stories.d.ts +0 -1
  40. package/dist/components/ui/stories/calendar.stories.d.ts.map +1 -1
  41. package/dist/components/ui/stories/card.stories.d.ts +0 -1
  42. package/dist/components/ui/stories/card.stories.d.ts.map +1 -1
  43. package/dist/components/ui/stories/carousel.stories.d.ts +0 -1
  44. package/dist/components/ui/stories/carousel.stories.d.ts.map +1 -1
  45. package/dist/components/ui/stories/chart.stories.d.ts +0 -1
  46. package/dist/components/ui/stories/chart.stories.d.ts.map +1 -1
  47. package/dist/components/ui/stories/checkbox.stories.d.ts +0 -1
  48. package/dist/components/ui/stories/checkbox.stories.d.ts.map +1 -1
  49. package/dist/components/ui/stories/cn.stories.d.ts.map +1 -1
  50. package/dist/components/ui/stories/collapsible.stories.d.ts +0 -1
  51. package/dist/components/ui/stories/collapsible.stories.d.ts.map +1 -1
  52. package/dist/components/ui/stories/colors.stories.d.ts +0 -1
  53. package/dist/components/ui/stories/colors.stories.d.ts.map +1 -1
  54. package/dist/components/ui/stories/combobox.stories.d.ts +0 -1
  55. package/dist/components/ui/stories/combobox.stories.d.ts.map +1 -1
  56. package/dist/components/ui/stories/command.stories.d.ts +0 -1
  57. package/dist/components/ui/stories/command.stories.d.ts.map +1 -1
  58. package/dist/components/ui/stories/container.stories.d.ts +0 -1
  59. package/dist/components/ui/stories/container.stories.d.ts.map +1 -1
  60. package/dist/components/ui/stories/context-menu.stories.d.ts +0 -1
  61. package/dist/components/ui/stories/context-menu.stories.d.ts.map +1 -1
  62. package/dist/components/ui/stories/date-picker.stories.d.ts +0 -1
  63. package/dist/components/ui/stories/date-picker.stories.d.ts.map +1 -1
  64. package/dist/components/ui/stories/dialog.stories.d.ts +0 -1
  65. package/dist/components/ui/stories/dialog.stories.d.ts.map +1 -1
  66. package/dist/components/ui/stories/drawer.stories.d.ts +0 -1
  67. package/dist/components/ui/stories/drawer.stories.d.ts.map +1 -1
  68. package/dist/components/ui/stories/dropdown-menu.stories.d.ts +0 -1
  69. package/dist/components/ui/stories/dropdown-menu.stories.d.ts.map +1 -1
  70. package/dist/components/ui/stories/empty-state.stories.d.ts +0 -1
  71. package/dist/components/ui/stories/empty-state.stories.d.ts.map +1 -1
  72. package/dist/components/ui/stories/empty.stories.d.ts +38 -0
  73. package/dist/components/ui/stories/empty.stories.d.ts.map +1 -0
  74. package/dist/components/ui/stories/field.stories.d.ts +48 -0
  75. package/dist/components/ui/stories/field.stories.d.ts.map +1 -0
  76. package/dist/components/ui/stories/hover-card.stories.d.ts +0 -1
  77. package/dist/components/ui/stories/hover-card.stories.d.ts.map +1 -1
  78. package/dist/components/ui/stories/input-group.stories.d.ts +37 -0
  79. package/dist/components/ui/stories/input-group.stories.d.ts.map +1 -0
  80. package/dist/components/ui/stories/input.stories.d.ts +0 -1
  81. package/dist/components/ui/stories/input.stories.d.ts.map +1 -1
  82. package/dist/components/ui/stories/item.stories.d.ts +61 -0
  83. package/dist/components/ui/stories/item.stories.d.ts.map +1 -0
  84. package/dist/components/ui/stories/kbd.stories.d.ts +37 -0
  85. package/dist/components/ui/stories/kbd.stories.d.ts.map +1 -0
  86. package/dist/components/ui/stories/label.stories.d.ts +0 -1
  87. package/dist/components/ui/stories/label.stories.d.ts.map +1 -1
  88. package/dist/components/ui/stories/menubar.stories.d.ts +0 -1
  89. package/dist/components/ui/stories/menubar.stories.d.ts.map +1 -1
  90. package/dist/components/ui/stories/navigation-menu.stories.d.ts +0 -1
  91. package/dist/components/ui/stories/navigation-menu.stories.d.ts.map +1 -1
  92. package/dist/components/ui/stories/pagination.stories.d.ts +0 -1
  93. package/dist/components/ui/stories/pagination.stories.d.ts.map +1 -1
  94. package/dist/components/ui/stories/popover.stories.d.ts +0 -1
  95. package/dist/components/ui/stories/popover.stories.d.ts.map +1 -1
  96. package/dist/components/ui/stories/progress.stories.d.ts +0 -1
  97. package/dist/components/ui/stories/progress.stories.d.ts.map +1 -1
  98. package/dist/components/ui/stories/radio-group.stories.d.ts +0 -1
  99. package/dist/components/ui/stories/radio-group.stories.d.ts.map +1 -1
  100. package/dist/components/ui/stories/resizable.stories.d.ts +0 -1
  101. package/dist/components/ui/stories/resizable.stories.d.ts.map +1 -1
  102. package/dist/components/ui/stories/scroll-area.stories.d.ts +0 -1
  103. package/dist/components/ui/stories/scroll-area.stories.d.ts.map +1 -1
  104. package/dist/components/ui/stories/select.stories.d.ts +0 -1
  105. package/dist/components/ui/stories/select.stories.d.ts.map +1 -1
  106. package/dist/components/ui/stories/separator.stories.d.ts +0 -1
  107. package/dist/components/ui/stories/separator.stories.d.ts.map +1 -1
  108. package/dist/components/ui/stories/sheet.stories.d.ts +0 -1
  109. package/dist/components/ui/stories/sheet.stories.d.ts.map +1 -1
  110. package/dist/components/ui/stories/sidebar.stories.d.ts +0 -1
  111. package/dist/components/ui/stories/sidebar.stories.d.ts.map +1 -1
  112. package/dist/components/ui/stories/skeleton.stories.d.ts +0 -1
  113. package/dist/components/ui/stories/skeleton.stories.d.ts.map +1 -1
  114. package/dist/components/ui/stories/slider.stories.d.ts +0 -1
  115. package/dist/components/ui/stories/slider.stories.d.ts.map +1 -1
  116. package/dist/components/ui/stories/sonner.stories.d.ts.map +1 -1
  117. package/dist/components/ui/stories/spinner.stories.d.ts +37 -0
  118. package/dist/components/ui/stories/spinner.stories.d.ts.map +1 -0
  119. package/dist/components/ui/stories/stack.stories.d.ts +0 -1
  120. package/dist/components/ui/stories/stack.stories.d.ts.map +1 -1
  121. package/dist/components/ui/stories/switch.stories.d.ts +0 -1
  122. package/dist/components/ui/stories/switch.stories.d.ts.map +1 -1
  123. package/dist/components/ui/stories/table.stories.d.ts +0 -1
  124. package/dist/components/ui/stories/table.stories.d.ts.map +1 -1
  125. package/dist/components/ui/stories/tabs.stories.d.ts +0 -1
  126. package/dist/components/ui/stories/tabs.stories.d.ts.map +1 -1
  127. package/dist/components/ui/stories/text-field.stories.d.ts +0 -1
  128. package/dist/components/ui/stories/text-field.stories.d.ts.map +1 -1
  129. package/dist/components/ui/stories/textarea.stories.d.ts +0 -1
  130. package/dist/components/ui/stories/textarea.stories.d.ts.map +1 -1
  131. package/dist/components/ui/stories/theme-toggle.stories.d.ts +0 -1
  132. package/dist/components/ui/stories/theme-toggle.stories.d.ts.map +1 -1
  133. package/dist/components/ui/stories/theme.stories.d.ts +0 -1
  134. package/dist/components/ui/stories/theme.stories.d.ts.map +1 -1
  135. package/dist/components/ui/stories/toggle-group.stories.d.ts +0 -1
  136. package/dist/components/ui/stories/toggle-group.stories.d.ts.map +1 -1
  137. package/dist/components/ui/stories/toggle.stories.d.ts +0 -1
  138. package/dist/components/ui/stories/toggle.stories.d.ts.map +1 -1
  139. package/dist/components/ui/stories/tooltip.stories.d.ts +0 -1
  140. package/dist/components/ui/stories/tooltip.stories.d.ts.map +1 -1
  141. package/dist/components/ui/stories/typography.stories.d.ts +0 -1
  142. package/dist/components/ui/stories/typography.stories.d.ts.map +1 -1
  143. package/dist/components/ui/stories/use-mobile.stories.d.ts.map +1 -1
  144. package/dist/components/ui/stories/use-theme.stories.d.ts.map +1 -1
  145. package/dist/components/ui/typography.d.ts +12 -11
  146. package/dist/components/ui/typography.d.ts.map +1 -1
  147. package/dist/index.d.ts +7 -0
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +21584 -12837
  150. package/dist/index.js.map +1 -1
  151. package/dist/tsconfig.tsbuildinfo +1 -1
  152. package/docs/llm/components/display.md +125 -0
  153. package/docs/llm/components/feedback.md +0 -14
  154. package/docs/llm/components/forms.md +94 -0
  155. package/docs/llm/components/layout.md +169 -0
  156. package/llms.txt +18 -12
  157. package/package.json +6 -5
  158. package/src/components/ui/badge.tsx +21 -3
  159. package/src/components/ui/button-group.tsx +525 -0
  160. package/src/components/ui/button.tsx +9 -12
  161. package/src/components/ui/empty-state.tsx +1 -0
  162. package/src/components/ui/empty.tsx +793 -0
  163. package/src/components/ui/field.tsx +494 -0
  164. package/src/components/ui/input-group.tsx +801 -0
  165. package/src/components/ui/item.tsx +955 -0
  166. package/src/components/ui/kbd.tsx +175 -0
  167. package/src/components/ui/skeleton.tsx +1 -1
  168. package/src/components/ui/spinner.tsx +211 -0
  169. package/src/components/ui/stories/accordion.stories.tsx +0 -1
  170. package/src/components/ui/stories/alert-dialog.stories.tsx +0 -1
  171. package/src/components/ui/stories/alert.stories.tsx +0 -1
  172. package/src/components/ui/stories/aspect-ratio.stories.tsx +0 -1
  173. package/src/components/ui/stories/avatar.stories.tsx +0 -1
  174. package/src/components/ui/stories/badge.stories.tsx +0 -1
  175. package/src/components/ui/stories/breadcrumb.stories.tsx +0 -1
  176. package/src/components/ui/stories/button-group.stories.tsx +300 -0
  177. package/src/components/ui/stories/button.stories.tsx +0 -1
  178. package/src/components/ui/stories/calendar.stories.tsx +0 -1
  179. package/src/components/ui/stories/card.stories.tsx +0 -1
  180. package/src/components/ui/stories/carousel.stories.tsx +0 -1
  181. package/src/components/ui/stories/chart.stories.tsx +0 -1
  182. package/src/components/ui/stories/checkbox.stories.tsx +0 -1
  183. package/src/components/ui/stories/cn.stories.tsx +0 -1
  184. package/src/components/ui/stories/collapsible.stories.tsx +0 -1
  185. package/src/components/ui/stories/colors.stories.tsx +0 -1
  186. package/src/components/ui/stories/combobox.stories.tsx +0 -1
  187. package/src/components/ui/stories/command.stories.tsx +0 -1
  188. package/src/components/ui/stories/container.stories.tsx +0 -1
  189. package/src/components/ui/stories/context-menu.stories.tsx +0 -1
  190. package/src/components/ui/stories/date-picker.stories.tsx +0 -1
  191. package/src/components/ui/stories/dialog.stories.tsx +0 -1
  192. package/src/components/ui/stories/drawer.stories.tsx +0 -1
  193. package/src/components/ui/stories/dropdown-menu.stories.tsx +0 -1
  194. package/src/components/ui/stories/empty-state.stories.tsx +0 -1
  195. package/src/components/ui/stories/empty.stories.tsx +293 -0
  196. package/src/components/ui/stories/field.stories.tsx +470 -0
  197. package/src/components/ui/stories/hover-card.stories.tsx +0 -1
  198. package/src/components/ui/stories/input-group.stories.tsx +444 -0
  199. package/src/components/ui/stories/input.stories.tsx +0 -1
  200. package/src/components/ui/stories/item.stories.tsx +601 -0
  201. package/src/components/ui/stories/kbd.stories.tsx +462 -0
  202. package/src/components/ui/stories/label.stories.tsx +0 -1
  203. package/src/components/ui/stories/menubar.stories.tsx +0 -1
  204. package/src/components/ui/stories/navigation-menu.stories.tsx +0 -1
  205. package/src/components/ui/stories/pagination.stories.tsx +0 -1
  206. package/src/components/ui/stories/popover.stories.tsx +0 -1
  207. package/src/components/ui/stories/progress.stories.tsx +0 -1
  208. package/src/components/ui/stories/radio-group.stories.tsx +0 -1
  209. package/src/components/ui/stories/resizable.stories.tsx +0 -1
  210. package/src/components/ui/stories/scroll-area.stories.tsx +0 -1
  211. package/src/components/ui/stories/select.stories.tsx +0 -1
  212. package/src/components/ui/stories/separator.stories.tsx +0 -1
  213. package/src/components/ui/stories/sheet.stories.tsx +0 -1
  214. package/src/components/ui/stories/sidebar.stories.tsx +0 -1
  215. package/src/components/ui/stories/skeleton.stories.tsx +0 -1
  216. package/src/components/ui/stories/slider.stories.tsx +0 -1
  217. package/src/components/ui/stories/sonner.stories.tsx +0 -1
  218. package/src/components/ui/stories/spinner.stories.tsx +356 -0
  219. package/src/components/ui/stories/stack.stories.tsx +0 -1
  220. package/src/components/ui/stories/switch.stories.tsx +0 -1
  221. package/src/components/ui/stories/table.stories.tsx +0 -1
  222. package/src/components/ui/stories/tabs.stories.tsx +0 -1
  223. package/src/components/ui/stories/text-field.stories.tsx +0 -1
  224. package/src/components/ui/stories/textarea.stories.tsx +0 -1
  225. package/src/components/ui/stories/theme-toggle.stories.tsx +0 -1
  226. package/src/components/ui/stories/theme.stories.tsx +0 -1
  227. package/src/components/ui/stories/toggle-group.stories.tsx +0 -1
  228. package/src/components/ui/stories/toggle.stories.tsx +0 -1
  229. package/src/components/ui/stories/tooltip.stories.tsx +0 -1
  230. package/src/components/ui/stories/typography.stories.tsx +5 -2
  231. package/src/components/ui/stories/use-mobile.stories.tsx +0 -1
  232. package/src/components/ui/stories/use-theme.stories.tsx +0 -1
  233. package/src/components/ui/tabs.tsx +1 -1
  234. package/src/components/ui/typography.tsx +29 -129
  235. package/src/index.ts +7 -0
  236. package/src/styles/globals.css +45 -25
  237. package/llm-docs/a.llm.md +0 -145
  238. package/llm-docs/accordion-content.llm.md +0 -67
  239. package/llm-docs/accordion-item.llm.md +0 -61
  240. package/llm-docs/accordion-trigger.llm.md +0 -69
  241. package/llm-docs/accordion.llm.md +0 -88
  242. package/llm-docs/alert-description.llm.md +0 -78
  243. package/llm-docs/alert-dialog-action.llm.md +0 -51
  244. package/llm-docs/alert-dialog-cancel.llm.md +0 -48
  245. package/llm-docs/alert-dialog-content.llm.md +0 -88
  246. package/llm-docs/alert-dialog-description.llm.md +0 -53
  247. package/llm-docs/alert-dialog-footer.llm.md +0 -41
  248. package/llm-docs/alert-dialog-header.llm.md +0 -39
  249. package/llm-docs/alert-dialog-overlay.llm.md +0 -44
  250. package/llm-docs/alert-dialog-portal.llm.md +0 -41
  251. package/llm-docs/alert-dialog-title.llm.md +0 -46
  252. package/llm-docs/alert-dialog-trigger.llm.md +0 -40
  253. package/llm-docs/alert-dialog.llm.md +0 -80
  254. package/llm-docs/alert-title.llm.md +0 -48
  255. package/llm-docs/alert.llm.md +0 -92
  256. package/llm-docs/aspect-ratio.llm.md +0 -41
  257. package/llm-docs/avatar-fallback.llm.md +0 -41
  258. package/llm-docs/avatar-image.llm.md +0 -48
  259. package/llm-docs/avatar.llm.md +0 -35
  260. package/llm-docs/badge.llm.md +0 -108
  261. package/llm-docs/blockquote.llm.md +0 -122
  262. package/llm-docs/breadcrumb-ellipsis.llm.md +0 -73
  263. package/llm-docs/breadcrumb-item.llm.md +0 -53
  264. package/llm-docs/breadcrumb-link.llm.md +0 -84
  265. package/llm-docs/breadcrumb-list.llm.md +0 -54
  266. package/llm-docs/breadcrumb-page.llm.md +0 -52
  267. package/llm-docs/breadcrumb-separator.llm.md +0 -60
  268. package/llm-docs/breadcrumb.llm.md +0 -110
  269. package/llm-docs/button.llm.md +0 -281
  270. package/llm-docs/calendar-day-button.llm.md +0 -57
  271. package/llm-docs/calendar.llm.md +0 -340
  272. package/llm-docs/card-action.llm.md +0 -64
  273. package/llm-docs/card-content.llm.md +0 -48
  274. package/llm-docs/card-description.llm.md +0 -46
  275. package/llm-docs/card-footer.llm.md +0 -56
  276. package/llm-docs/card-header.llm.md +0 -53
  277. package/llm-docs/card-title.llm.md +0 -43
  278. package/llm-docs/card.llm.md +0 -100
  279. package/llm-docs/carousel-content.llm.md +0 -77
  280. package/llm-docs/carousel-item.llm.md +0 -96
  281. package/llm-docs/carousel-next.llm.md +0 -95
  282. package/llm-docs/carousel-previous.llm.md +0 -95
  283. package/llm-docs/carousel.llm.md +0 -211
  284. package/llm-docs/chart-config.llm.md +0 -71
  285. package/llm-docs/chart-container.llm.md +0 -148
  286. package/llm-docs/chart-legend-content.llm.md +0 -85
  287. package/llm-docs/chart-legend.llm.md +0 -144
  288. package/llm-docs/chart-style.llm.md +0 -28
  289. package/llm-docs/chart-tooltip-content.llm.md +0 -149
  290. package/llm-docs/chart-tooltip.llm.md +0 -184
  291. package/llm-docs/checkbox.llm.md +0 -100
  292. package/llm-docs/cn.llm.md +0 -46
  293. package/llm-docs/code.llm.md +0 -108
  294. package/llm-docs/collapsible-content.llm.md +0 -109
  295. package/llm-docs/collapsible-trigger.llm.md +0 -75
  296. package/llm-docs/collapsible.llm.md +0 -109
  297. package/llm-docs/combobox-option.llm.md +0 -53
  298. package/llm-docs/combobox.llm.md +0 -208
  299. package/llm-docs/command-dialog.llm.md +0 -112
  300. package/llm-docs/command-empty.llm.md +0 -63
  301. package/llm-docs/command-group.llm.md +0 -83
  302. package/llm-docs/command-input.llm.md +0 -82
  303. package/llm-docs/command-item.llm.md +0 -97
  304. package/llm-docs/command-list.llm.md +0 -53
  305. package/llm-docs/command-loading.llm.md +0 -48
  306. package/llm-docs/command-separator.llm.md +0 -44
  307. package/llm-docs/command-shortcut.llm.md +0 -63
  308. package/llm-docs/command.llm.md +0 -147
  309. package/llm-docs/container.llm.md +0 -236
  310. package/llm-docs/context-menu-checkbox-item.llm.md +0 -97
  311. package/llm-docs/context-menu-content.llm.md +0 -91
  312. package/llm-docs/context-menu-group.llm.md +0 -61
  313. package/llm-docs/context-menu-item.llm.md +0 -94
  314. package/llm-docs/context-menu-label.llm.md +0 -60
  315. package/llm-docs/context-menu-portal.llm.md +0 -49
  316. package/llm-docs/context-menu-radio-group.llm.md +0 -66
  317. package/llm-docs/context-menu-radio-item.llm.md +0 -76
  318. package/llm-docs/context-menu-separator.llm.md +0 -51
  319. package/llm-docs/context-menu-shortcut.llm.md +0 -57
  320. package/llm-docs/context-menu-sub-content.llm.md +0 -90
  321. package/llm-docs/context-menu-sub-trigger.llm.md +0 -73
  322. package/llm-docs/context-menu-sub.llm.md +0 -61
  323. package/llm-docs/context-menu-trigger.llm.md +0 -53
  324. package/llm-docs/context-menu.llm.md +0 -103
  325. package/llm-docs/date-picker.llm.md +0 -90
  326. package/llm-docs/dialog-close.llm.md +0 -61
  327. package/llm-docs/dialog-content.llm.md +0 -128
  328. package/llm-docs/dialog-description.llm.md +0 -44
  329. package/llm-docs/dialog-footer.llm.md +0 -38
  330. package/llm-docs/dialog-header.llm.md +0 -40
  331. package/llm-docs/dialog-overlay.llm.md +0 -57
  332. package/llm-docs/dialog-portal.llm.md +0 -47
  333. package/llm-docs/dialog-title.llm.md +0 -41
  334. package/llm-docs/dialog-trigger.llm.md +0 -51
  335. package/llm-docs/dialog.llm.md +0 -113
  336. package/llm-docs/drawer-close.llm.md +0 -53
  337. package/llm-docs/drawer-content.llm.md +0 -58
  338. package/llm-docs/drawer-description.llm.md +0 -54
  339. package/llm-docs/drawer-footer.llm.md +0 -67
  340. package/llm-docs/drawer-header.llm.md +0 -60
  341. package/llm-docs/drawer-overlay.llm.md +0 -40
  342. package/llm-docs/drawer-portal.llm.md +0 -42
  343. package/llm-docs/drawer-title.llm.md +0 -51
  344. package/llm-docs/drawer-trigger.llm.md +0 -44
  345. package/llm-docs/drawer.llm.md +0 -194
  346. package/llm-docs/dropdown-menu-checkbox-item.llm.md +0 -111
  347. package/llm-docs/dropdown-menu-content.llm.md +0 -109
  348. package/llm-docs/dropdown-menu-group.llm.md +0 -38
  349. package/llm-docs/dropdown-menu-item.llm.md +0 -94
  350. package/llm-docs/dropdown-menu-label.llm.md +0 -66
  351. package/llm-docs/dropdown-menu-portal.llm.md +0 -32
  352. package/llm-docs/dropdown-menu-radio-group.llm.md +0 -73
  353. package/llm-docs/dropdown-menu-radio-item.llm.md +0 -92
  354. package/llm-docs/dropdown-menu-separator.llm.md +0 -55
  355. package/llm-docs/dropdown-menu-shortcut.llm.md +0 -74
  356. package/llm-docs/dropdown-menu-sub-content.llm.md +0 -80
  357. package/llm-docs/dropdown-menu-sub-trigger.llm.md +0 -84
  358. package/llm-docs/dropdown-menu-sub.llm.md +0 -74
  359. package/llm-docs/dropdown-menu-trigger.llm.md +0 -48
  360. package/llm-docs/dropdown-menu.llm.md +0 -120
  361. package/llm-docs/empty-state.llm.md +0 -174
  362. package/llm-docs/h1.llm.md +0 -113
  363. package/llm-docs/h2.llm.md +0 -113
  364. package/llm-docs/h3.llm.md +0 -111
  365. package/llm-docs/h4.llm.md +0 -109
  366. package/llm-docs/h5.llm.md +0 -110
  367. package/llm-docs/h6.llm.md +0 -110
  368. package/llm-docs/hover-card-content.llm.md +0 -167
  369. package/llm-docs/hover-card-trigger.llm.md +0 -65
  370. package/llm-docs/hover-card.llm.md +0 -121
  371. package/llm-docs/input.llm.md +0 -319
  372. package/llm-docs/label.llm.md +0 -145
  373. package/llm-docs/lead.llm.md +0 -119
  374. package/llm-docs/menubar-checkbox-item.llm.md +0 -66
  375. package/llm-docs/menubar-content.llm.md +0 -128
  376. package/llm-docs/menubar-group.llm.md +0 -40
  377. package/llm-docs/menubar-item.llm.md +0 -62
  378. package/llm-docs/menubar-label.llm.md +0 -40
  379. package/llm-docs/menubar-menu.llm.md +0 -32
  380. package/llm-docs/menubar-portal.llm.md +0 -38
  381. package/llm-docs/menubar-radio-group.llm.md +0 -39
  382. package/llm-docs/menubar-radio-item.llm.md +0 -59
  383. package/llm-docs/menubar-separator.llm.md +0 -35
  384. package/llm-docs/menubar-shortcut.llm.md +0 -37
  385. package/llm-docs/menubar-sub-content.llm.md +0 -127
  386. package/llm-docs/menubar-sub-trigger.llm.md +0 -51
  387. package/llm-docs/menubar-sub.llm.md +0 -53
  388. package/llm-docs/menubar-trigger.llm.md +0 -37
  389. package/llm-docs/menubar.llm.md +0 -115
  390. package/llm-docs/navigation-menu-content.llm.md +0 -116
  391. package/llm-docs/navigation-menu-indicator.llm.md +0 -68
  392. package/llm-docs/navigation-menu-item.llm.md +0 -62
  393. package/llm-docs/navigation-menu-link.llm.md +0 -109
  394. package/llm-docs/navigation-menu-list.llm.md +0 -52
  395. package/llm-docs/navigation-menu-trigger-style.llm.md +0 -22
  396. package/llm-docs/navigation-menu-trigger.llm.md +0 -57
  397. package/llm-docs/navigation-menu-viewport.llm.md +0 -51
  398. package/llm-docs/navigation-menu.llm.md +0 -184
  399. package/llm-docs/p.llm.md +0 -115
  400. package/llm-docs/pagination-content.llm.md +0 -60
  401. package/llm-docs/pagination-ellipsis.llm.md +0 -107
  402. package/llm-docs/pagination-item.llm.md +0 -59
  403. package/llm-docs/pagination-link.llm.md +0 -150
  404. package/llm-docs/pagination-next.llm.md +0 -115
  405. package/llm-docs/pagination-previous.llm.md +0 -115
  406. package/llm-docs/pagination.llm.md +0 -190
  407. package/llm-docs/popover-anchor.llm.md +0 -53
  408. package/llm-docs/popover-content.llm.md +0 -109
  409. package/llm-docs/popover-trigger.llm.md +0 -54
  410. package/llm-docs/popover.llm.md +0 -116
  411. package/llm-docs/progress.llm.md +0 -76
  412. package/llm-docs/radio-group-indicator.llm.md +0 -28
  413. package/llm-docs/radio-group-item.llm.md +0 -40
  414. package/llm-docs/radio-group.llm.md +0 -76
  415. package/llm-docs/resizable-handle.llm.md +0 -156
  416. package/llm-docs/resizable-panel-group.llm.md +0 -149
  417. package/llm-docs/resizable-panel.llm.md +0 -157
  418. package/llm-docs/scroll-area-corner.llm.md +0 -41
  419. package/llm-docs/scroll-area-thumb.llm.md +0 -39
  420. package/llm-docs/scroll-area-viewport.llm.md +0 -60
  421. package/llm-docs/scroll-area.llm.md +0 -125
  422. package/llm-docs/scroll-bar.llm.md +0 -78
  423. package/llm-docs/sdk-items-registry.json +0 -2638
  424. package/llm-docs/select-content.llm.md +0 -139
  425. package/llm-docs/select-group.llm.md +0 -60
  426. package/llm-docs/select-item.llm.md +0 -75
  427. package/llm-docs/select-label.llm.md +0 -62
  428. package/llm-docs/select-scroll-down-button.llm.md +0 -45
  429. package/llm-docs/select-scroll-up-button.llm.md +0 -45
  430. package/llm-docs/select-separator.llm.md +0 -59
  431. package/llm-docs/select-trigger.llm.md +0 -66
  432. package/llm-docs/select-value.llm.md +0 -67
  433. package/llm-docs/select.llm.md +0 -159
  434. package/llm-docs/separator.llm.md +0 -129
  435. package/llm-docs/sheet-close.llm.md +0 -49
  436. package/llm-docs/sheet-content.llm.md +0 -115
  437. package/llm-docs/sheet-description.llm.md +0 -62
  438. package/llm-docs/sheet-footer.llm.md +0 -64
  439. package/llm-docs/sheet-header.llm.md +0 -52
  440. package/llm-docs/sheet-title.llm.md +0 -53
  441. package/llm-docs/sheet-trigger.llm.md +0 -46
  442. package/llm-docs/sheet.llm.md +0 -126
  443. package/llm-docs/sidebar-content.llm.md +0 -63
  444. package/llm-docs/sidebar-footer.llm.md +0 -50
  445. package/llm-docs/sidebar-group-action.llm.md +0 -60
  446. package/llm-docs/sidebar-group-content.llm.md +0 -64
  447. package/llm-docs/sidebar-group-label.llm.md +0 -53
  448. package/llm-docs/sidebar-group.llm.md +0 -56
  449. package/llm-docs/sidebar-header.llm.md +0 -67
  450. package/llm-docs/sidebar-input.llm.md +0 -50
  451. package/llm-docs/sidebar-inset.llm.md +0 -52
  452. package/llm-docs/sidebar-menu-action.llm.md +0 -84
  453. package/llm-docs/sidebar-menu-badge.llm.md +0 -60
  454. package/llm-docs/sidebar-menu-button.llm.md +0 -103
  455. package/llm-docs/sidebar-menu-item.llm.md +0 -75
  456. package/llm-docs/sidebar-menu-skeleton.llm.md +0 -76
  457. package/llm-docs/sidebar-menu-sub-button.llm.md +0 -85
  458. package/llm-docs/sidebar-menu-sub-item.llm.md +0 -54
  459. package/llm-docs/sidebar-menu-sub.llm.md +0 -74
  460. package/llm-docs/sidebar-menu.llm.md +0 -65
  461. package/llm-docs/sidebar-provider.llm.md +0 -79
  462. package/llm-docs/sidebar-rail.llm.md +0 -34
  463. package/llm-docs/sidebar-separator.llm.md +0 -57
  464. package/llm-docs/sidebar-trigger.llm.md +0 -49
  465. package/llm-docs/sidebar.llm.md +0 -129
  466. package/llm-docs/skeleton.llm.md +0 -134
  467. package/llm-docs/slider.llm.md +0 -173
  468. package/llm-docs/small.llm.md +0 -115
  469. package/llm-docs/span.llm.md +0 -132
  470. package/llm-docs/stack.llm.md +0 -28
  471. package/llm-docs/strong.llm.md +0 -115
  472. package/llm-docs/switch.llm.md +0 -76
  473. package/llm-docs/table-body.llm.md +0 -36
  474. package/llm-docs/table-caption.llm.md +0 -48
  475. package/llm-docs/table-cell.llm.md +0 -53
  476. package/llm-docs/table-footer.llm.md +0 -41
  477. package/llm-docs/table-head.llm.md +0 -69
  478. package/llm-docs/table-header.llm.md +0 -41
  479. package/llm-docs/table-row.llm.md +0 -42
  480. package/llm-docs/table.llm.md +0 -123
  481. package/llm-docs/tabs-content.llm.md +0 -47
  482. package/llm-docs/tabs-list.llm.md +0 -41
  483. package/llm-docs/tabs-trigger.llm.md +0 -47
  484. package/llm-docs/tabs.llm.md +0 -71
  485. package/llm-docs/text-field.llm.md +0 -327
  486. package/llm-docs/textarea.llm.md +0 -311
  487. package/llm-docs/theme-preference.llm.md +0 -25
  488. package/llm-docs/theme-toggle.llm.md +0 -57
  489. package/llm-docs/theme.llm.md +0 -14
  490. package/llm-docs/toast.llm.md +0 -32
  491. package/llm-docs/toaster.llm.md +0 -193
  492. package/llm-docs/toggle-group-item.llm.md +0 -59
  493. package/llm-docs/toggle-group.llm.md +0 -101
  494. package/llm-docs/toggle.llm.md +0 -40
  495. package/llm-docs/tooltip-content.llm.md +0 -185
  496. package/llm-docs/tooltip-provider.llm.md +0 -68
  497. package/llm-docs/tooltip-trigger.llm.md +0 -70
  498. package/llm-docs/tooltip.llm.md +0 -129
  499. package/llm-docs/typography.llm.md +0 -175
  500. package/llm-docs/use-carousel.llm.md +0 -55
  501. package/llm-docs/use-command-state.llm.md +0 -32
  502. package/llm-docs/use-is-mobile.llm.md +0 -73
  503. package/llm-docs/use-sidebar.llm.md +0 -61
@@ -0,0 +1,470 @@
1
+ import type { Meta, StoryObj } from "@storybook/react-vite";
2
+ import { Info } from "lucide-react";
3
+ import { useState } from "react";
4
+ import { Checkbox } from "../checkbox";
5
+ import {
6
+ Field,
7
+ FieldContent,
8
+ FieldDescription,
9
+ FieldError,
10
+ FieldGroup,
11
+ FieldLabel,
12
+ FieldLegend,
13
+ FieldSeparator,
14
+ FieldSet,
15
+ FieldTitle,
16
+ } from "../field";
17
+ import { Input } from "../input";
18
+ import { RadioGroup, RadioGroupItem } from "../radio-group";
19
+ import { Switch } from "../switch";
20
+
21
+ const meta = {
22
+ title: "Form & Input/Field",
23
+ component: Field,
24
+ parameters: {
25
+ layout: "centered",
26
+ docs: {
27
+ description: {
28
+ component:
29
+ "A comprehensive form field component that provides proper labeling, description, error handling, and layout options. Supports vertical, horizontal, and responsive orientations.",
30
+ },
31
+ },
32
+ },
33
+ argTypes: {
34
+ orientation: {
35
+ control: { type: "select" },
36
+ options: ["vertical", "horizontal", "responsive"],
37
+ description: "The orientation of the field layout",
38
+ },
39
+ className: {
40
+ control: { type: "text" },
41
+ description: "Additional CSS classes to apply",
42
+ },
43
+ },
44
+ args: {
45
+ orientation: "vertical",
46
+ },
47
+ } satisfies Meta<typeof Field>;
48
+
49
+ export default meta;
50
+ type Story = StoryObj<typeof meta>;
51
+
52
+ /**
53
+ * Interactive playground with all field properties.
54
+ * Use the controls panel to test different combinations of props.
55
+ */
56
+ export const Interactive: Story = {
57
+ render: (args) => (
58
+ <div className="w-96">
59
+ <Field {...args}>
60
+ <FieldLabel htmlFor="email">Email Address</FieldLabel>
61
+ <Input id="email" type="email" placeholder="Enter your email" />
62
+ <FieldDescription>We'll never share your email.</FieldDescription>
63
+ </Field>
64
+ </div>
65
+ ),
66
+ };
67
+
68
+ /**
69
+ * Showcase of all available field orientations and compositions.
70
+ */
71
+ export const Variants: Story = {
72
+ render: () => (
73
+ <div className="space-y-12 w-full max-w-2xl">
74
+ {/* Vertical Orientation */}
75
+ <div className="space-y-4">
76
+ <h3 className="text-sm font-medium text-muted-foreground">
77
+ Vertical Layout
78
+ </h3>
79
+ <div className="space-y-6">
80
+ <Field>
81
+ <FieldLabel htmlFor="name-v">Full Name</FieldLabel>
82
+ <Input id="name-v" placeholder="John Doe" />
83
+ <FieldDescription>Enter your full legal name.</FieldDescription>
84
+ </Field>
85
+
86
+ <Field>
87
+ <FieldLabel htmlFor="bio-v">Bio</FieldLabel>
88
+ <textarea
89
+ id="bio-v"
90
+ className="w-full min-h-24 px-3 py-2 border rounded-md"
91
+ placeholder="Tell us about yourself"
92
+ />
93
+ <FieldDescription>
94
+ Write a short bio about yourself (max 500 characters).
95
+ </FieldDescription>
96
+ </Field>
97
+ </div>
98
+ </div>
99
+
100
+ {/* Horizontal Orientation */}
101
+ <div className="space-y-4">
102
+ <h3 className="text-sm font-medium text-muted-foreground">
103
+ Horizontal Layout
104
+ </h3>
105
+ <FieldGroup>
106
+ <Field orientation="horizontal">
107
+ <FieldContent>
108
+ <FieldTitle>Email Notifications</FieldTitle>
109
+ <FieldDescription>
110
+ Receive email updates about your account.
111
+ </FieldDescription>
112
+ </FieldContent>
113
+ <Switch />
114
+ </Field>
115
+
116
+ <Field orientation="horizontal">
117
+ <FieldContent>
118
+ <FieldTitle>Marketing Emails</FieldTitle>
119
+ <FieldDescription>
120
+ Get updates about new features and products.
121
+ </FieldDescription>
122
+ </FieldContent>
123
+ <Switch />
124
+ </Field>
125
+ </FieldGroup>
126
+ </div>
127
+
128
+ {/* Responsive Orientation */}
129
+ <div className="space-y-4">
130
+ <h3 className="text-sm font-medium text-muted-foreground">
131
+ Responsive Layout (vertical on mobile, horizontal on larger screens)
132
+ </h3>
133
+ <FieldGroup>
134
+ <Field orientation="responsive">
135
+ <FieldContent>
136
+ <FieldTitle>Two-Factor Auth</FieldTitle>
137
+ <FieldDescription>
138
+ Add an extra layer of security to your account.
139
+ </FieldDescription>
140
+ </FieldContent>
141
+ <Switch />
142
+ </Field>
143
+ </FieldGroup>
144
+ </div>
145
+
146
+ {/* With Error State */}
147
+ <div className="space-y-4">
148
+ <h3 className="text-sm font-medium text-muted-foreground">
149
+ Error States
150
+ </h3>
151
+ <div className="space-y-6">
152
+ <Field data-invalid="true">
153
+ <FieldLabel htmlFor="email-error">Email</FieldLabel>
154
+ <Input
155
+ id="email-error"
156
+ type="email"
157
+ placeholder="email@example.com"
158
+ aria-invalid="true"
159
+ defaultValue="invalid-email"
160
+ />
161
+ <FieldError>Please enter a valid email address.</FieldError>
162
+ </Field>
163
+
164
+ <Field data-invalid="true">
165
+ <FieldLabel htmlFor="password-error">Password</FieldLabel>
166
+ <Input
167
+ id="password-error"
168
+ type="password"
169
+ aria-invalid="true"
170
+ defaultValue="123"
171
+ />
172
+ <FieldError
173
+ errors={[
174
+ { message: "Password must be at least 8 characters" },
175
+ { message: "Password must contain a number" },
176
+ { message: "Password must contain a special character" },
177
+ ]}
178
+ />
179
+ </Field>
180
+ </div>
181
+ </div>
182
+
183
+ {/* Field Groups */}
184
+ <div className="space-y-4">
185
+ <h3 className="text-sm font-medium text-muted-foreground">
186
+ Field Groups with Separators
187
+ </h3>
188
+ <FieldGroup>
189
+ <Field>
190
+ <FieldLabel htmlFor="first-name">First Name</FieldLabel>
191
+ <Input id="first-name" placeholder="John" />
192
+ </Field>
193
+
194
+ <Field>
195
+ <FieldLabel htmlFor="last-name">Last Name</FieldLabel>
196
+ <Input id="last-name" placeholder="Doe" />
197
+ </Field>
198
+
199
+ <FieldSeparator>Contact Information</FieldSeparator>
200
+
201
+ <Field>
202
+ <FieldLabel htmlFor="email-group">Email</FieldLabel>
203
+ <Input id="email-group" type="email" placeholder="john@example.com" />
204
+ </Field>
205
+
206
+ <Field>
207
+ <FieldLabel htmlFor="phone-group">Phone</FieldLabel>
208
+ <Input id="phone-group" type="tel" placeholder="+1 (555) 000-0000" />
209
+ </Field>
210
+ </FieldGroup>
211
+ </div>
212
+
213
+ {/* With Checkboxes and Radio */}
214
+ <div className="space-y-4">
215
+ <h3 className="text-sm font-medium text-muted-foreground">
216
+ With Checkboxes and Radio Buttons
217
+ </h3>
218
+ <div className="space-y-6">
219
+ <FieldSet>
220
+ <FieldLegend>Preferences</FieldLegend>
221
+ <FieldGroup>
222
+ <Field orientation="horizontal">
223
+ <Checkbox id="newsletter" />
224
+ <FieldLabel htmlFor="newsletter">
225
+ Subscribe to newsletter
226
+ </FieldLabel>
227
+ </Field>
228
+
229
+ <Field orientation="horizontal">
230
+ <Checkbox id="updates" />
231
+ <FieldLabel htmlFor="updates">Receive product updates</FieldLabel>
232
+ </Field>
233
+ </FieldGroup>
234
+ </FieldSet>
235
+
236
+ <FieldSet>
237
+ <FieldLegend>Notification Method</FieldLegend>
238
+ <RadioGroup defaultValue="email">
239
+ <Field orientation="horizontal">
240
+ <RadioGroupItem value="email" id="radio-email" />
241
+ <FieldLabel htmlFor="radio-email">Email</FieldLabel>
242
+ </Field>
243
+
244
+ <Field orientation="horizontal">
245
+ <RadioGroupItem value="sms" id="radio-sms" />
246
+ <FieldLabel htmlFor="radio-sms">SMS</FieldLabel>
247
+ </Field>
248
+
249
+ <Field orientation="horizontal">
250
+ <RadioGroupItem value="push" id="radio-push" />
251
+ <FieldLabel htmlFor="radio-push">Push Notification</FieldLabel>
252
+ </Field>
253
+ </RadioGroup>
254
+ </FieldSet>
255
+ </div>
256
+ </div>
257
+ </div>
258
+ ),
259
+ parameters: {
260
+ layout: "padded",
261
+ docs: {
262
+ description: {
263
+ story:
264
+ "Complete showcase of field orientations, error states, groups, and integration with various form controls.",
265
+ },
266
+ },
267
+ },
268
+ };
269
+
270
+ /**
271
+ * Real-world usage examples showing fields in practical form scenarios.
272
+ */
273
+ export const InContext: Story = {
274
+ render: () => {
275
+ const [formErrors, setFormErrors] = useState({
276
+ email: "",
277
+ password: "",
278
+ });
279
+
280
+ const handleSubmit = (e: React.FormEvent) => {
281
+ e.preventDefault();
282
+ const formData = new FormData(e.target as HTMLFormElement);
283
+ const email = formData.get("email") as string;
284
+ const password = formData.get("password") as string;
285
+
286
+ const errors = { email: "", password: "" };
287
+ if (!email.includes("@")) {
288
+ errors.email = "Please enter a valid email address";
289
+ }
290
+ if (password.length < 8) {
291
+ errors.password = "Password must be at least 8 characters";
292
+ }
293
+ setFormErrors(errors);
294
+ };
295
+
296
+ return (
297
+ <div className="space-y-8 w-full max-w-2xl">
298
+ {/* Registration Form */}
299
+ <div className="space-y-4 p-6 border rounded-lg">
300
+ <h3 className="text-lg font-semibold">Create Account</h3>
301
+ <form onSubmit={handleSubmit} className="space-y-6">
302
+ <FieldGroup>
303
+ <Field data-invalid={!!formErrors.email}>
304
+ <FieldLabel htmlFor="reg-email">
305
+ Email Address
306
+ <span className="text-destructive ml-1">*</span>
307
+ </FieldLabel>
308
+ <Input
309
+ id="reg-email"
310
+ name="email"
311
+ type="email"
312
+ placeholder="you@example.com"
313
+ aria-invalid={!!formErrors.email}
314
+ required
315
+ />
316
+ {formErrors.email && (
317
+ <FieldError>{formErrors.email}</FieldError>
318
+ )}
319
+ </Field>
320
+
321
+ <Field data-invalid={!!formErrors.password}>
322
+ <FieldLabel htmlFor="reg-password">
323
+ Password
324
+ <span className="text-destructive ml-1">*</span>
325
+ </FieldLabel>
326
+ <Input
327
+ id="reg-password"
328
+ name="password"
329
+ type="password"
330
+ placeholder="Min. 8 characters"
331
+ aria-invalid={!!formErrors.password}
332
+ required
333
+ />
334
+ <FieldDescription>
335
+ Must be at least 8 characters with a number and special
336
+ character.
337
+ </FieldDescription>
338
+ {formErrors.password && (
339
+ <FieldError>{formErrors.password}</FieldError>
340
+ )}
341
+ </Field>
342
+
343
+ <Field orientation="horizontal">
344
+ <Checkbox id="reg-terms" required />
345
+ <FieldLabel htmlFor="reg-terms">
346
+ I agree to the{" "}
347
+ <a href="#" className="underline">
348
+ Terms of Service
349
+ </a>{" "}
350
+ and{" "}
351
+ <a href="#" className="underline">
352
+ Privacy Policy
353
+ </a>
354
+ </FieldLabel>
355
+ </Field>
356
+ </FieldGroup>
357
+
358
+ <button
359
+ type="submit"
360
+ className="w-full px-4 py-2 bg-primary text-primary-foreground rounded-md font-medium hover:bg-primary/90"
361
+ >
362
+ Create Account
363
+ </button>
364
+ </form>
365
+ </div>
366
+
367
+ {/* Settings Form */}
368
+ <div className="space-y-4 p-6 border rounded-lg">
369
+ <h3 className="text-lg font-semibold">Notification Settings</h3>
370
+ <FieldGroup>
371
+ <Field orientation="horizontal">
372
+ <FieldContent>
373
+ <FieldTitle>
374
+ Email Notifications
375
+ <Info className="size-4 text-muted-foreground ml-1" />
376
+ </FieldTitle>
377
+ <FieldDescription>
378
+ Receive email updates about your account activity.
379
+ </FieldDescription>
380
+ </FieldContent>
381
+ <Switch defaultChecked />
382
+ </Field>
383
+
384
+ <Field orientation="horizontal">
385
+ <FieldContent>
386
+ <FieldTitle>Push Notifications</FieldTitle>
387
+ <FieldDescription>
388
+ Get push notifications on your devices.
389
+ </FieldDescription>
390
+ </FieldContent>
391
+ <Switch />
392
+ </Field>
393
+
394
+ <FieldSeparator />
395
+
396
+ <Field orientation="horizontal">
397
+ <FieldContent>
398
+ <FieldTitle>Marketing Communications</FieldTitle>
399
+ <FieldDescription>
400
+ Receive news, announcements, and product updates.
401
+ </FieldDescription>
402
+ </FieldContent>
403
+ <Switch />
404
+ </Field>
405
+ </FieldGroup>
406
+ </div>
407
+
408
+ {/* Profile Form */}
409
+ <div className="space-y-4 p-6 border rounded-lg">
410
+ <h3 className="text-lg font-semibold">Profile Information</h3>
411
+ <FieldGroup>
412
+ <Field>
413
+ <FieldLabel htmlFor="profile-name">Display Name</FieldLabel>
414
+ <Input
415
+ id="profile-name"
416
+ placeholder="How you'd like to be called"
417
+ />
418
+ <FieldDescription>
419
+ This is how your name will appear to others.
420
+ </FieldDescription>
421
+ </Field>
422
+
423
+ <Field>
424
+ <FieldLabel htmlFor="profile-bio">Bio</FieldLabel>
425
+ <textarea
426
+ id="profile-bio"
427
+ className="w-full min-h-24 px-3 py-2 border rounded-md"
428
+ placeholder="Tell us about yourself"
429
+ />
430
+ <FieldDescription>
431
+ Brief description for your profile (max 500 characters).
432
+ </FieldDescription>
433
+ </Field>
434
+
435
+ <FieldSeparator>Visibility</FieldSeparator>
436
+
437
+ <FieldSet>
438
+ <FieldLegend variant="label">Who can see your profile?</FieldLegend>
439
+ <RadioGroup defaultValue="public">
440
+ <Field orientation="horizontal">
441
+ <RadioGroupItem value="public" id="vis-public" />
442
+ <FieldLabel htmlFor="vis-public">Public</FieldLabel>
443
+ </Field>
444
+
445
+ <Field orientation="horizontal">
446
+ <RadioGroupItem value="private" id="vis-private" />
447
+ <FieldLabel htmlFor="vis-private">Private</FieldLabel>
448
+ </Field>
449
+
450
+ <Field orientation="horizontal">
451
+ <RadioGroupItem value="friends" id="vis-friends" />
452
+ <FieldLabel htmlFor="vis-friends">Friends Only</FieldLabel>
453
+ </Field>
454
+ </RadioGroup>
455
+ </FieldSet>
456
+ </FieldGroup>
457
+ </div>
458
+ </div>
459
+ );
460
+ },
461
+ parameters: {
462
+ layout: "padded",
463
+ docs: {
464
+ description: {
465
+ story:
466
+ "Real-world examples showing fields in registration forms, settings panels, and profile editors with proper validation and layout.",
467
+ },
468
+ },
469
+ },
470
+ };
@@ -17,7 +17,6 @@ const meta = {
17
17
  },
18
18
  },
19
19
  },
20
- tags: ["autodocs"],
21
20
  argTypes: {
22
21
  openDelay: {
23
22
  control: { type: "number" },