@dowel-ui/react 0.1.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 (691) hide show
  1. package/LICENSE +21 -0
  2. package/dist/blocks/admin-users/meta.js +27 -0
  3. package/dist/blocks/admin-users/meta.js.map +1 -0
  4. package/dist/blocks/ai-chat/meta.js +30 -0
  5. package/dist/blocks/ai-chat/meta.js.map +1 -0
  6. package/dist/blocks/dashboard/meta.js +23 -0
  7. package/dist/blocks/dashboard/meta.js.map +1 -0
  8. package/dist/blocks/forgot-password/meta.js +24 -0
  9. package/dist/blocks/forgot-password/meta.js.map +1 -0
  10. package/dist/blocks/login/meta.js +26 -0
  11. package/dist/blocks/login/meta.js.map +1 -0
  12. package/dist/blocks/pricing/meta.js +24 -0
  13. package/dist/blocks/pricing/meta.js.map +1 -0
  14. package/dist/blocks/settings/meta.js +29 -0
  15. package/dist/blocks/settings/meta.js.map +1 -0
  16. package/dist/blocks/signup/meta.js +25 -0
  17. package/dist/blocks/signup/meta.js.map +1 -0
  18. package/dist/components/accordion/accordion.d.ts +19 -0
  19. package/dist/components/accordion/accordion.d.ts.map +1 -0
  20. package/dist/components/accordion/accordion.js +58 -0
  21. package/dist/components/accordion/accordion.js.map +1 -0
  22. package/dist/components/accordion/index.d.ts +2 -0
  23. package/dist/components/accordion/index.js +2 -0
  24. package/dist/components/accordion/meta.js +17 -0
  25. package/dist/components/accordion/meta.js.map +1 -0
  26. package/dist/components/activity-feed/activity-feed.d.ts +39 -0
  27. package/dist/components/activity-feed/activity-feed.d.ts.map +1 -0
  28. package/dist/components/activity-feed/activity-feed.js +77 -0
  29. package/dist/components/activity-feed/activity-feed.js.map +1 -0
  30. package/dist/components/activity-feed/index.d.ts +2 -0
  31. package/dist/components/activity-feed/index.js +2 -0
  32. package/dist/components/activity-feed/meta.js +17 -0
  33. package/dist/components/activity-feed/meta.js.map +1 -0
  34. package/dist/components/ai-agent-status/ai-agent-status.d.ts +30 -0
  35. package/dist/components/ai-agent-status/ai-agent-status.d.ts.map +1 -0
  36. package/dist/components/ai-agent-status/ai-agent-status.js +43 -0
  37. package/dist/components/ai-agent-status/ai-agent-status.js.map +1 -0
  38. package/dist/components/ai-agent-status/index.d.ts +2 -0
  39. package/dist/components/ai-agent-status/index.js +2 -0
  40. package/dist/components/ai-agent-status/meta.js +17 -0
  41. package/dist/components/ai-agent-status/meta.js.map +1 -0
  42. package/dist/components/ai-conversation/ai-conversation.d.ts +45 -0
  43. package/dist/components/ai-conversation/ai-conversation.d.ts.map +1 -0
  44. package/dist/components/ai-conversation/ai-conversation.js +138 -0
  45. package/dist/components/ai-conversation/ai-conversation.js.map +1 -0
  46. package/dist/components/ai-conversation/index.d.ts +2 -0
  47. package/dist/components/ai-conversation/index.js +2 -0
  48. package/dist/components/ai-conversation/meta.js +17 -0
  49. package/dist/components/ai-conversation/meta.js.map +1 -0
  50. package/dist/components/ai-message/ai-message.d.ts +56 -0
  51. package/dist/components/ai-message/ai-message.d.ts.map +1 -0
  52. package/dist/components/ai-message/ai-message.js +90 -0
  53. package/dist/components/ai-message/ai-message.js.map +1 -0
  54. package/dist/components/ai-message/index.d.ts +2 -0
  55. package/dist/components/ai-message/index.js +2 -0
  56. package/dist/components/ai-message/meta.js +17 -0
  57. package/dist/components/ai-message/meta.js.map +1 -0
  58. package/dist/components/ai-model-selector/ai-model-selector.d.ts +42 -0
  59. package/dist/components/ai-model-selector/ai-model-selector.d.ts.map +1 -0
  60. package/dist/components/ai-model-selector/ai-model-selector.js +48 -0
  61. package/dist/components/ai-model-selector/ai-model-selector.js.map +1 -0
  62. package/dist/components/ai-model-selector/index.d.ts +2 -0
  63. package/dist/components/ai-model-selector/index.js +2 -0
  64. package/dist/components/ai-model-selector/meta.js +17 -0
  65. package/dist/components/ai-model-selector/meta.js.map +1 -0
  66. package/dist/components/ai-prompt-input/ai-prompt-input.d.ts +61 -0
  67. package/dist/components/ai-prompt-input/ai-prompt-input.d.ts.map +1 -0
  68. package/dist/components/ai-prompt-input/ai-prompt-input.js +170 -0
  69. package/dist/components/ai-prompt-input/ai-prompt-input.js.map +1 -0
  70. package/dist/components/ai-prompt-input/index.d.ts +2 -0
  71. package/dist/components/ai-prompt-input/index.js +2 -0
  72. package/dist/components/ai-prompt-input/meta.js +17 -0
  73. package/dist/components/ai-prompt-input/meta.js.map +1 -0
  74. package/dist/components/ai-reasoning/ai-reasoning.d.ts +24 -0
  75. package/dist/components/ai-reasoning/ai-reasoning.d.ts.map +1 -0
  76. package/dist/components/ai-reasoning/ai-reasoning.js +64 -0
  77. package/dist/components/ai-reasoning/ai-reasoning.js.map +1 -0
  78. package/dist/components/ai-reasoning/index.d.ts +2 -0
  79. package/dist/components/ai-reasoning/index.js +2 -0
  80. package/dist/components/ai-reasoning/meta.js +17 -0
  81. package/dist/components/ai-reasoning/meta.js.map +1 -0
  82. package/dist/components/ai-response/ai-response.d.ts +36 -0
  83. package/dist/components/ai-response/ai-response.d.ts.map +1 -0
  84. package/dist/components/ai-response/ai-response.js +46 -0
  85. package/dist/components/ai-response/ai-response.js.map +1 -0
  86. package/dist/components/ai-response/index.d.ts +2 -0
  87. package/dist/components/ai-response/index.js +2 -0
  88. package/dist/components/ai-response/meta.js +17 -0
  89. package/dist/components/ai-response/meta.js.map +1 -0
  90. package/dist/components/ai-sources/ai-sources.d.ts +44 -0
  91. package/dist/components/ai-sources/ai-sources.d.ts.map +1 -0
  92. package/dist/components/ai-sources/ai-sources.js +112 -0
  93. package/dist/components/ai-sources/ai-sources.js.map +1 -0
  94. package/dist/components/ai-sources/index.d.ts +2 -0
  95. package/dist/components/ai-sources/index.js +2 -0
  96. package/dist/components/ai-sources/meta.js +17 -0
  97. package/dist/components/ai-sources/meta.js.map +1 -0
  98. package/dist/components/ai-token-usage/ai-token-usage.d.ts +34 -0
  99. package/dist/components/ai-token-usage/ai-token-usage.d.ts.map +1 -0
  100. package/dist/components/ai-token-usage/ai-token-usage.js +58 -0
  101. package/dist/components/ai-token-usage/ai-token-usage.js.map +1 -0
  102. package/dist/components/ai-token-usage/index.d.ts +2 -0
  103. package/dist/components/ai-token-usage/index.js +2 -0
  104. package/dist/components/ai-token-usage/meta.js +17 -0
  105. package/dist/components/ai-token-usage/meta.js.map +1 -0
  106. package/dist/components/ai-tool/ai-tool.d.ts +50 -0
  107. package/dist/components/ai-tool/ai-tool.d.ts.map +1 -0
  108. package/dist/components/ai-tool/ai-tool.js +129 -0
  109. package/dist/components/ai-tool/ai-tool.js.map +1 -0
  110. package/dist/components/ai-tool/index.d.ts +2 -0
  111. package/dist/components/ai-tool/index.js +2 -0
  112. package/dist/components/ai-tool/meta.js +17 -0
  113. package/dist/components/ai-tool/meta.js.map +1 -0
  114. package/dist/components/alert/alert.d.ts +32 -0
  115. package/dist/components/alert/alert.d.ts.map +1 -0
  116. package/dist/components/alert/alert.js +49 -0
  117. package/dist/components/alert/alert.js.map +1 -0
  118. package/dist/components/alert/index.d.ts +2 -0
  119. package/dist/components/alert/index.js +2 -0
  120. package/dist/components/alert/meta.js +17 -0
  121. package/dist/components/alert/meta.js.map +1 -0
  122. package/dist/components/avatar/avatar.d.ts +23 -0
  123. package/dist/components/avatar/avatar.d.ts.map +1 -0
  124. package/dist/components/avatar/avatar.js +44 -0
  125. package/dist/components/avatar/avatar.js.map +1 -0
  126. package/dist/components/avatar/index.d.ts +2 -0
  127. package/dist/components/avatar/index.js +2 -0
  128. package/dist/components/avatar/meta.js +17 -0
  129. package/dist/components/avatar/meta.js.map +1 -0
  130. package/dist/components/badge/badge.d.ts +20 -0
  131. package/dist/components/badge/badge.d.ts.map +1 -0
  132. package/dist/components/badge/badge.js +47 -0
  133. package/dist/components/badge/badge.js.map +1 -0
  134. package/dist/components/badge/index.d.ts +2 -0
  135. package/dist/components/badge/index.js +2 -0
  136. package/dist/components/badge/meta.js +17 -0
  137. package/dist/components/badge/meta.js.map +1 -0
  138. package/dist/components/button/button.d.ts +28 -0
  139. package/dist/components/button/button.d.ts.map +1 -0
  140. package/dist/components/button/button.js +77 -0
  141. package/dist/components/button/button.js.map +1 -0
  142. package/dist/components/button/index.d.ts +2 -0
  143. package/dist/components/button/index.js +2 -0
  144. package/dist/components/button/meta.js +17 -0
  145. package/dist/components/button/meta.js.map +1 -0
  146. package/dist/components/calendar/calendar.d.ts +16 -0
  147. package/dist/components/calendar/calendar.d.ts.map +1 -0
  148. package/dist/components/calendar/calendar.js +70 -0
  149. package/dist/components/calendar/calendar.js.map +1 -0
  150. package/dist/components/calendar/index.d.ts +2 -0
  151. package/dist/components/calendar/index.js +2 -0
  152. package/dist/components/calendar/meta.js +17 -0
  153. package/dist/components/calendar/meta.js.map +1 -0
  154. package/dist/components/card/card.d.ts +23 -0
  155. package/dist/components/card/card.d.ts.map +1 -0
  156. package/dist/components/card/card.js +53 -0
  157. package/dist/components/card/card.js.map +1 -0
  158. package/dist/components/card/index.d.ts +2 -0
  159. package/dist/components/card/index.js +2 -0
  160. package/dist/components/card/meta.js +17 -0
  161. package/dist/components/card/meta.js.map +1 -0
  162. package/dist/components/checkbox/checkbox.d.ts +15 -0
  163. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  164. package/dist/components/checkbox/checkbox.js +45 -0
  165. package/dist/components/checkbox/checkbox.js.map +1 -0
  166. package/dist/components/checkbox/index.d.ts +2 -0
  167. package/dist/components/checkbox/index.js +2 -0
  168. package/dist/components/checkbox/meta.js +17 -0
  169. package/dist/components/checkbox/meta.js.map +1 -0
  170. package/dist/components/code-block/code-block.d.ts +46 -0
  171. package/dist/components/code-block/code-block.d.ts.map +1 -0
  172. package/dist/components/code-block/code-block.js +110 -0
  173. package/dist/components/code-block/code-block.js.map +1 -0
  174. package/dist/components/code-block/index.d.ts +2 -0
  175. package/dist/components/code-block/index.js +2 -0
  176. package/dist/components/code-block/meta.js +17 -0
  177. package/dist/components/code-block/meta.js.map +1 -0
  178. package/dist/components/combobox/combobox.d.ts +59 -0
  179. package/dist/components/combobox/combobox.d.ts.map +1 -0
  180. package/dist/components/combobox/combobox.js +346 -0
  181. package/dist/components/combobox/combobox.js.map +1 -0
  182. package/dist/components/combobox/index.d.ts +2 -0
  183. package/dist/components/combobox/index.js +2 -0
  184. package/dist/components/combobox/meta.js +17 -0
  185. package/dist/components/combobox/meta.js.map +1 -0
  186. package/dist/components/command/command.d.ts +65 -0
  187. package/dist/components/command/command.d.ts.map +1 -0
  188. package/dist/components/command/command.js +330 -0
  189. package/dist/components/command/command.js.map +1 -0
  190. package/dist/components/command/index.d.ts +2 -0
  191. package/dist/components/command/index.js +2 -0
  192. package/dist/components/command/meta.js +17 -0
  193. package/dist/components/command/meta.js.map +1 -0
  194. package/dist/components/data-table/data-table.d.ts +91 -0
  195. package/dist/components/data-table/data-table.d.ts.map +1 -0
  196. package/dist/components/data-table/data-table.js +263 -0
  197. package/dist/components/data-table/data-table.js.map +1 -0
  198. package/dist/components/data-table/index.d.ts +2 -0
  199. package/dist/components/data-table/index.js +2 -0
  200. package/dist/components/data-table/meta.js +22 -0
  201. package/dist/components/data-table/meta.js.map +1 -0
  202. package/dist/components/date-picker/date-picker.d.ts +31 -0
  203. package/dist/components/date-picker/date-picker.d.ts.map +1 -0
  204. package/dist/components/date-picker/date-picker.js +123 -0
  205. package/dist/components/date-picker/date-picker.js.map +1 -0
  206. package/dist/components/date-picker/index.d.ts +2 -0
  207. package/dist/components/date-picker/index.js +2 -0
  208. package/dist/components/date-picker/meta.js +21 -0
  209. package/dist/components/date-picker/meta.js.map +1 -0
  210. package/dist/components/dialog/dialog.d.ts +30 -0
  211. package/dist/components/dialog/dialog.d.ts.map +1 -0
  212. package/dist/components/dialog/dialog.js +79 -0
  213. package/dist/components/dialog/dialog.js.map +1 -0
  214. package/dist/components/dialog/index.d.ts +2 -0
  215. package/dist/components/dialog/index.js +2 -0
  216. package/dist/components/dialog/meta.js +17 -0
  217. package/dist/components/dialog/meta.js.map +1 -0
  218. package/dist/components/drawer/drawer.d.ts +32 -0
  219. package/dist/components/drawer/drawer.d.ts.map +1 -0
  220. package/dist/components/drawer/drawer.js +153 -0
  221. package/dist/components/drawer/drawer.js.map +1 -0
  222. package/dist/components/drawer/index.d.ts +2 -0
  223. package/dist/components/drawer/index.js +2 -0
  224. package/dist/components/drawer/meta.js +17 -0
  225. package/dist/components/drawer/meta.js.map +1 -0
  226. package/dist/components/dropdown-menu/dropdown-menu.d.ts +43 -0
  227. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  228. package/dist/components/dropdown-menu/dropdown-menu.js +130 -0
  229. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -0
  230. package/dist/components/dropdown-menu/index.d.ts +2 -0
  231. package/dist/components/dropdown-menu/index.js +2 -0
  232. package/dist/components/dropdown-menu/meta.js +17 -0
  233. package/dist/components/dropdown-menu/meta.js.map +1 -0
  234. package/dist/components/empty-state/empty-state.d.ts +24 -0
  235. package/dist/components/empty-state/empty-state.d.ts.map +1 -0
  236. package/dist/components/empty-state/empty-state.js +73 -0
  237. package/dist/components/empty-state/empty-state.js.map +1 -0
  238. package/dist/components/empty-state/index.d.ts +2 -0
  239. package/dist/components/empty-state/index.js +2 -0
  240. package/dist/components/empty-state/meta.js +17 -0
  241. package/dist/components/empty-state/meta.js.map +1 -0
  242. package/dist/components/form/form.d.ts +43 -0
  243. package/dist/components/form/form.d.ts.map +1 -0
  244. package/dist/components/form/form.js +127 -0
  245. package/dist/components/form/form.js.map +1 -0
  246. package/dist/components/form/index.d.ts +2 -0
  247. package/dist/components/form/index.js +2 -0
  248. package/dist/components/form/meta.js +17 -0
  249. package/dist/components/form/meta.js.map +1 -0
  250. package/dist/components/input/index.d.ts +2 -0
  251. package/dist/components/input/index.js +2 -0
  252. package/dist/components/input/input.d.ts +21 -0
  253. package/dist/components/input/input.d.ts.map +1 -0
  254. package/dist/components/input/input.js +34 -0
  255. package/dist/components/input/input.js.map +1 -0
  256. package/dist/components/input/meta.js +17 -0
  257. package/dist/components/input/meta.js.map +1 -0
  258. package/dist/components/label/index.d.ts +2 -0
  259. package/dist/components/label/index.js +2 -0
  260. package/dist/components/label/label.d.ts +14 -0
  261. package/dist/components/label/label.d.ts.map +1 -0
  262. package/dist/components/label/label.js +20 -0
  263. package/dist/components/label/label.js.map +1 -0
  264. package/dist/components/label/meta.js +17 -0
  265. package/dist/components/label/meta.js.map +1 -0
  266. package/dist/components/pagination/index.d.ts +2 -0
  267. package/dist/components/pagination/index.js +2 -0
  268. package/dist/components/pagination/meta.js +17 -0
  269. package/dist/components/pagination/meta.js.map +1 -0
  270. package/dist/components/pagination/pagination.d.ts +33 -0
  271. package/dist/components/pagination/pagination.d.ts.map +1 -0
  272. package/dist/components/pagination/pagination.js +143 -0
  273. package/dist/components/pagination/pagination.js.map +1 -0
  274. package/dist/components/popover/index.d.ts +2 -0
  275. package/dist/components/popover/index.js +2 -0
  276. package/dist/components/popover/meta.js +17 -0
  277. package/dist/components/popover/meta.js.map +1 -0
  278. package/dist/components/popover/popover.d.ts +24 -0
  279. package/dist/components/popover/popover.d.ts.map +1 -0
  280. package/dist/components/popover/popover.js +60 -0
  281. package/dist/components/popover/popover.js.map +1 -0
  282. package/dist/components/progress/index.d.ts +2 -0
  283. package/dist/components/progress/index.js +2 -0
  284. package/dist/components/progress/meta.js +17 -0
  285. package/dist/components/progress/meta.js.map +1 -0
  286. package/dist/components/progress/progress.d.ts +21 -0
  287. package/dist/components/progress/progress.d.ts.map +1 -0
  288. package/dist/components/progress/progress.js +55 -0
  289. package/dist/components/progress/progress.js.map +1 -0
  290. package/dist/components/radio-group/index.d.ts +2 -0
  291. package/dist/components/radio-group/index.js +2 -0
  292. package/dist/components/radio-group/meta.js +17 -0
  293. package/dist/components/radio-group/meta.js.map +1 -0
  294. package/dist/components/radio-group/radio-group.d.ts +17 -0
  295. package/dist/components/radio-group/radio-group.d.ts.map +1 -0
  296. package/dist/components/radio-group/radio-group.js +29 -0
  297. package/dist/components/radio-group/radio-group.js.map +1 -0
  298. package/dist/components/select/index.d.ts +2 -0
  299. package/dist/components/select/index.js +2 -0
  300. package/dist/components/select/meta.js +17 -0
  301. package/dist/components/select/meta.js.map +1 -0
  302. package/dist/components/select/select.d.ts +37 -0
  303. package/dist/components/select/select.d.ts.map +1 -0
  304. package/dist/components/select/select.js +128 -0
  305. package/dist/components/select/select.js.map +1 -0
  306. package/dist/components/separator/index.d.ts +2 -0
  307. package/dist/components/separator/index.js +2 -0
  308. package/dist/components/separator/meta.js +17 -0
  309. package/dist/components/separator/meta.js.map +1 -0
  310. package/dist/components/separator/separator.d.ts +15 -0
  311. package/dist/components/separator/separator.d.ts.map +1 -0
  312. package/dist/components/separator/separator.js +23 -0
  313. package/dist/components/separator/separator.js.map +1 -0
  314. package/dist/components/sheet/index.d.ts +2 -0
  315. package/dist/components/sheet/index.js +2 -0
  316. package/dist/components/sheet/meta.js +17 -0
  317. package/dist/components/sheet/meta.js.map +1 -0
  318. package/dist/components/sheet/sheet.d.ts +31 -0
  319. package/dist/components/sheet/sheet.d.ts.map +1 -0
  320. package/dist/components/sheet/sheet.js +90 -0
  321. package/dist/components/sheet/sheet.js.map +1 -0
  322. package/dist/components/skeleton/index.d.ts +2 -0
  323. package/dist/components/skeleton/index.js +2 -0
  324. package/dist/components/skeleton/meta.js +17 -0
  325. package/dist/components/skeleton/meta.js.map +1 -0
  326. package/dist/components/skeleton/skeleton.d.ts +20 -0
  327. package/dist/components/skeleton/skeleton.d.ts.map +1 -0
  328. package/dist/components/skeleton/skeleton.js +29 -0
  329. package/dist/components/skeleton/skeleton.js.map +1 -0
  330. package/dist/components/slider/index.d.ts +2 -0
  331. package/dist/components/slider/index.js +2 -0
  332. package/dist/components/slider/meta.js +17 -0
  333. package/dist/components/slider/meta.js.map +1 -0
  334. package/dist/components/slider/slider.d.ts +29 -0
  335. package/dist/components/slider/slider.d.ts.map +1 -0
  336. package/dist/components/slider/slider.js +61 -0
  337. package/dist/components/slider/slider.js.map +1 -0
  338. package/dist/components/spinner/index.d.ts +2 -0
  339. package/dist/components/spinner/index.js +2 -0
  340. package/dist/components/spinner/meta.js +17 -0
  341. package/dist/components/spinner/meta.js.map +1 -0
  342. package/dist/components/spinner/spinner.d.ts +21 -0
  343. package/dist/components/spinner/spinner.d.ts.map +1 -0
  344. package/dist/components/spinner/spinner.js +45 -0
  345. package/dist/components/spinner/spinner.js.map +1 -0
  346. package/dist/components/switch/index.d.ts +2 -0
  347. package/dist/components/switch/index.js +2 -0
  348. package/dist/components/switch/meta.js +17 -0
  349. package/dist/components/switch/meta.js.map +1 -0
  350. package/dist/components/switch/switch.d.ts +15 -0
  351. package/dist/components/switch/switch.d.ts.map +1 -0
  352. package/dist/components/switch/switch.js +21 -0
  353. package/dist/components/switch/switch.js.map +1 -0
  354. package/dist/components/table/index.d.ts +2 -0
  355. package/dist/components/table/index.js +2 -0
  356. package/dist/components/table/meta.js +17 -0
  357. package/dist/components/table/meta.js.map +1 -0
  358. package/dist/components/table/table.d.ts +41 -0
  359. package/dist/components/table/table.d.ts.map +1 -0
  360. package/dist/components/table/table.js +78 -0
  361. package/dist/components/table/table.js.map +1 -0
  362. package/dist/components/tabs/index.d.ts +2 -0
  363. package/dist/components/tabs/index.js +2 -0
  364. package/dist/components/tabs/meta.js +17 -0
  365. package/dist/components/tabs/meta.js.map +1 -0
  366. package/dist/components/tabs/tabs.d.ts +28 -0
  367. package/dist/components/tabs/tabs.d.ts.map +1 -0
  368. package/dist/components/tabs/tabs.js +58 -0
  369. package/dist/components/tabs/tabs.js.map +1 -0
  370. package/dist/components/toast/index.d.ts +3 -0
  371. package/dist/components/toast/index.js +3 -0
  372. package/dist/components/toast/meta.js +17 -0
  373. package/dist/components/toast/meta.js.map +1 -0
  374. package/dist/components/toast/toast-store.d.ts +84 -0
  375. package/dist/components/toast/toast-store.d.ts.map +1 -0
  376. package/dist/components/toast/toast-store.js +115 -0
  377. package/dist/components/toast/toast-store.js.map +1 -0
  378. package/dist/components/toast/toast.d.ts +39 -0
  379. package/dist/components/toast/toast.d.ts.map +1 -0
  380. package/dist/components/toast/toast.js +140 -0
  381. package/dist/components/toast/toast.js.map +1 -0
  382. package/dist/components/tooltip/index.d.ts +2 -0
  383. package/dist/components/tooltip/index.js +2 -0
  384. package/dist/components/tooltip/meta.js +17 -0
  385. package/dist/components/tooltip/meta.js.map +1 -0
  386. package/dist/components/tooltip/tooltip.d.ts +24 -0
  387. package/dist/components/tooltip/tooltip.d.ts.map +1 -0
  388. package/dist/components/tooltip/tooltip.js +38 -0
  389. package/dist/components/tooltip/tooltip.js.map +1 -0
  390. package/dist/index.d.ts +97 -0
  391. package/dist/index.js +51 -0
  392. package/dist/lib/styles.d.ts +21 -0
  393. package/dist/lib/styles.d.ts.map +1 -0
  394. package/dist/lib/styles.js +22 -0
  395. package/dist/lib/styles.js.map +1 -0
  396. package/dist/lib/utils.d.ts +11 -0
  397. package/dist/lib/utils.d.ts.map +1 -0
  398. package/dist/lib/utils.js +21 -0
  399. package/dist/lib/utils.js.map +1 -0
  400. package/dist/registry/blocks.d.ts +15 -0
  401. package/dist/registry/blocks.d.ts.map +1 -0
  402. package/dist/registry/blocks.js +32 -0
  403. package/dist/registry/blocks.js.map +1 -0
  404. package/dist/registry/components.d.ts +18 -0
  405. package/dist/registry/components.d.ts.map +1 -0
  406. package/dist/registry/components.js +112 -0
  407. package/dist/registry/components.js.map +1 -0
  408. package/dist/registry/schema.d.ts +44 -0
  409. package/dist/registry/schema.d.ts.map +1 -0
  410. package/dist/registry/schema.js +33 -0
  411. package/dist/registry/schema.js.map +1 -0
  412. package/package.json +74 -0
  413. package/src/blocks/admin-users/admin-users.stories.tsx +83 -0
  414. package/src/blocks/admin-users/admin-users.test.tsx +159 -0
  415. package/src/blocks/admin-users/admin-users.tsx +251 -0
  416. package/src/blocks/admin-users/index.ts +1 -0
  417. package/src/blocks/admin-users/meta.ts +27 -0
  418. package/src/blocks/ai-chat/ai-chat.stories.tsx +149 -0
  419. package/src/blocks/ai-chat/ai-chat.test.tsx +166 -0
  420. package/src/blocks/ai-chat/ai-chat.tsx +280 -0
  421. package/src/blocks/ai-chat/index.ts +7 -0
  422. package/src/blocks/ai-chat/meta.ts +32 -0
  423. package/src/blocks/dashboard/dashboard.stories.tsx +106 -0
  424. package/src/blocks/dashboard/dashboard.test.tsx +94 -0
  425. package/src/blocks/dashboard/dashboard.tsx +192 -0
  426. package/src/blocks/dashboard/index.ts +6 -0
  427. package/src/blocks/dashboard/meta.ts +18 -0
  428. package/src/blocks/forgot-password/forgot-password.stories.tsx +41 -0
  429. package/src/blocks/forgot-password/forgot-password.test.tsx +62 -0
  430. package/src/blocks/forgot-password/forgot-password.tsx +158 -0
  431. package/src/blocks/forgot-password/index.ts +1 -0
  432. package/src/blocks/forgot-password/meta.ts +18 -0
  433. package/src/blocks/login/index.ts +1 -0
  434. package/src/blocks/login/login.stories.tsx +46 -0
  435. package/src/blocks/login/login.test.tsx +100 -0
  436. package/src/blocks/login/login.tsx +178 -0
  437. package/src/blocks/login/meta.ts +18 -0
  438. package/src/blocks/pricing/index.ts +1 -0
  439. package/src/blocks/pricing/meta.ts +18 -0
  440. package/src/blocks/pricing/pricing.stories.tsx +62 -0
  441. package/src/blocks/pricing/pricing.test.tsx +101 -0
  442. package/src/blocks/pricing/pricing.tsx +176 -0
  443. package/src/blocks/settings/index.ts +6 -0
  444. package/src/blocks/settings/meta.ts +29 -0
  445. package/src/blocks/settings/settings.stories.tsx +94 -0
  446. package/src/blocks/settings/settings.test.tsx +167 -0
  447. package/src/blocks/settings/settings.tsx +317 -0
  448. package/src/blocks/signup/index.ts +1 -0
  449. package/src/blocks/signup/meta.ts +18 -0
  450. package/src/blocks/signup/signup.stories.tsx +27 -0
  451. package/src/blocks/signup/signup.test.tsx +97 -0
  452. package/src/blocks/signup/signup.tsx +240 -0
  453. package/src/components/accordion/accordion.stories.tsx +90 -0
  454. package/src/components/accordion/accordion.test.tsx +156 -0
  455. package/src/components/accordion/accordion.tsx +88 -0
  456. package/src/components/accordion/index.ts +9 -0
  457. package/src/components/accordion/meta.ts +16 -0
  458. package/src/components/activity-feed/activity-feed.stories.tsx +163 -0
  459. package/src/components/activity-feed/activity-feed.test.tsx +125 -0
  460. package/src/components/activity-feed/activity-feed.tsx +115 -0
  461. package/src/components/activity-feed/index.ts +12 -0
  462. package/src/components/activity-feed/meta.ts +17 -0
  463. package/src/components/ai-agent-status/ai-agent-status.stories.tsx +86 -0
  464. package/src/components/ai-agent-status/ai-agent-status.test.tsx +66 -0
  465. package/src/components/ai-agent-status/ai-agent-status.tsx +88 -0
  466. package/src/components/ai-agent-status/index.ts +6 -0
  467. package/src/components/ai-agent-status/meta.ts +17 -0
  468. package/src/components/ai-conversation/ai-conversation.stories.tsx +126 -0
  469. package/src/components/ai-conversation/ai-conversation.test.tsx +144 -0
  470. package/src/components/ai-conversation/ai-conversation.tsx +229 -0
  471. package/src/components/ai-conversation/index.ts +9 -0
  472. package/src/components/ai-conversation/meta.ts +20 -0
  473. package/src/components/ai-message/ai-message.stories.tsx +106 -0
  474. package/src/components/ai-message/ai-message.test.tsx +160 -0
  475. package/src/components/ai-message/ai-message.tsx +162 -0
  476. package/src/components/ai-message/index.ts +13 -0
  477. package/src/components/ai-message/meta.ts +17 -0
  478. package/src/components/ai-model-selector/ai-model-selector.stories.tsx +66 -0
  479. package/src/components/ai-model-selector/ai-model-selector.test.tsx +120 -0
  480. package/src/components/ai-model-selector/ai-model-selector.tsx +112 -0
  481. package/src/components/ai-model-selector/index.ts +1 -0
  482. package/src/components/ai-model-selector/meta.ts +17 -0
  483. package/src/components/ai-prompt-input/ai-prompt-input.stories.tsx +145 -0
  484. package/src/components/ai-prompt-input/ai-prompt-input.test.tsx +273 -0
  485. package/src/components/ai-prompt-input/ai-prompt-input.tsx +306 -0
  486. package/src/components/ai-prompt-input/index.ts +11 -0
  487. package/src/components/ai-prompt-input/meta.ts +18 -0
  488. package/src/components/ai-reasoning/ai-reasoning.stories.tsx +60 -0
  489. package/src/components/ai-reasoning/ai-reasoning.test.tsx +95 -0
  490. package/src/components/ai-reasoning/ai-reasoning.tsx +106 -0
  491. package/src/components/ai-reasoning/index.ts +7 -0
  492. package/src/components/ai-reasoning/meta.ts +17 -0
  493. package/src/components/ai-response/ai-response.stories.tsx +75 -0
  494. package/src/components/ai-response/ai-response.test.tsx +96 -0
  495. package/src/components/ai-response/ai-response.tsx +95 -0
  496. package/src/components/ai-response/index.ts +7 -0
  497. package/src/components/ai-response/meta.ts +17 -0
  498. package/src/components/ai-sources/ai-sources.stories.tsx +93 -0
  499. package/src/components/ai-sources/ai-sources.test.tsx +102 -0
  500. package/src/components/ai-sources/ai-sources.tsx +186 -0
  501. package/src/components/ai-sources/index.ts +11 -0
  502. package/src/components/ai-sources/meta.ts +17 -0
  503. package/src/components/ai-token-usage/ai-token-usage.stories.tsx +59 -0
  504. package/src/components/ai-token-usage/ai-token-usage.test.tsx +83 -0
  505. package/src/components/ai-token-usage/ai-token-usage.tsx +105 -0
  506. package/src/components/ai-token-usage/index.ts +6 -0
  507. package/src/components/ai-token-usage/meta.ts +16 -0
  508. package/src/components/ai-tool/ai-tool.stories.tsx +96 -0
  509. package/src/components/ai-tool/ai-tool.test.tsx +137 -0
  510. package/src/components/ai-tool/ai-tool.tsx +235 -0
  511. package/src/components/ai-tool/index.ts +13 -0
  512. package/src/components/ai-tool/meta.ts +17 -0
  513. package/src/components/alert/alert.stories.tsx +101 -0
  514. package/src/components/alert/alert.test.tsx +94 -0
  515. package/src/components/alert/alert.tsx +89 -0
  516. package/src/components/alert/index.ts +8 -0
  517. package/src/components/alert/meta.ts +16 -0
  518. package/src/components/avatar/avatar.stories.tsx +58 -0
  519. package/src/components/avatar/avatar.test.tsx +64 -0
  520. package/src/components/avatar/avatar.tsx +68 -0
  521. package/src/components/avatar/index.ts +9 -0
  522. package/src/components/avatar/meta.ts +15 -0
  523. package/src/components/badge/badge.stories.tsx +68 -0
  524. package/src/components/badge/badge.test.tsx +61 -0
  525. package/src/components/badge/badge.tsx +54 -0
  526. package/src/components/badge/index.ts +1 -0
  527. package/src/components/badge/meta.ts +15 -0
  528. package/src/components/button/button.stories.tsx +128 -0
  529. package/src/components/button/button.test.tsx +224 -0
  530. package/src/components/button/button.tsx +114 -0
  531. package/src/components/button/index.ts +1 -0
  532. package/src/components/button/meta.ts +16 -0
  533. package/src/components/calendar/calendar.stories.tsx +105 -0
  534. package/src/components/calendar/calendar.test.tsx +255 -0
  535. package/src/components/calendar/calendar.tsx +115 -0
  536. package/src/components/calendar/index.ts +1 -0
  537. package/src/components/calendar/meta.ts +17 -0
  538. package/src/components/card/card.stories.tsx +61 -0
  539. package/src/components/card/card.test.tsx +66 -0
  540. package/src/components/card/card.tsx +81 -0
  541. package/src/components/card/index.ts +9 -0
  542. package/src/components/card/meta.ts +16 -0
  543. package/src/components/checkbox/checkbox.stories.tsx +124 -0
  544. package/src/components/checkbox/checkbox.test.tsx +121 -0
  545. package/src/components/checkbox/checkbox.tsx +66 -0
  546. package/src/components/checkbox/index.ts +1 -0
  547. package/src/components/checkbox/meta.ts +16 -0
  548. package/src/components/code-block/code-block.stories.tsx +62 -0
  549. package/src/components/code-block/code-block.test.tsx +139 -0
  550. package/src/components/code-block/code-block.tsx +188 -0
  551. package/src/components/code-block/index.ts +1 -0
  552. package/src/components/code-block/meta.ts +17 -0
  553. package/src/components/combobox/combobox.stories.tsx +171 -0
  554. package/src/components/combobox/combobox.test.tsx +429 -0
  555. package/src/components/combobox/combobox.tsx +544 -0
  556. package/src/components/combobox/index.ts +15 -0
  557. package/src/components/combobox/meta.ts +17 -0
  558. package/src/components/command/command.stories.tsx +152 -0
  559. package/src/components/command/command.test.tsx +380 -0
  560. package/src/components/command/command.tsx +482 -0
  561. package/src/components/command/index.ts +17 -0
  562. package/src/components/command/meta.ts +18 -0
  563. package/src/components/data-table/data-table.stories.tsx +151 -0
  564. package/src/components/data-table/data-table.test.tsx +288 -0
  565. package/src/components/data-table/data-table.tsx +485 -0
  566. package/src/components/data-table/index.ts +13 -0
  567. package/src/components/data-table/meta.ts +19 -0
  568. package/src/components/date-picker/date-picker.stories.tsx +103 -0
  569. package/src/components/date-picker/date-picker.test.tsx +205 -0
  570. package/src/components/date-picker/date-picker.tsx +198 -0
  571. package/src/components/date-picker/index.ts +6 -0
  572. package/src/components/date-picker/meta.ts +18 -0
  573. package/src/components/dialog/dialog.stories.tsx +140 -0
  574. package/src/components/dialog/dialog.test.tsx +186 -0
  575. package/src/components/dialog/dialog.tsx +132 -0
  576. package/src/components/dialog/index.ts +16 -0
  577. package/src/components/dialog/meta.ts +16 -0
  578. package/src/components/drawer/drawer.stories.tsx +111 -0
  579. package/src/components/drawer/drawer.test.tsx +187 -0
  580. package/src/components/drawer/drawer.tsx +293 -0
  581. package/src/components/drawer/index.ts +16 -0
  582. package/src/components/drawer/meta.ts +16 -0
  583. package/src/components/dropdown-menu/dropdown-menu.stories.tsx +128 -0
  584. package/src/components/dropdown-menu/dropdown-menu.test.tsx +321 -0
  585. package/src/components/dropdown-menu/dropdown-menu.tsx +242 -0
  586. package/src/components/dropdown-menu/index.ts +21 -0
  587. package/src/components/dropdown-menu/meta.ts +17 -0
  588. package/src/components/empty-state/empty-state.stories.tsx +70 -0
  589. package/src/components/empty-state/empty-state.test.tsx +97 -0
  590. package/src/components/empty-state/empty-state.tsx +92 -0
  591. package/src/components/empty-state/index.ts +9 -0
  592. package/src/components/empty-state/meta.ts +16 -0
  593. package/src/components/form/form.stories.tsx +144 -0
  594. package/src/components/form/form.test.tsx +203 -0
  595. package/src/components/form/form.tsx +221 -0
  596. package/src/components/form/index.ts +13 -0
  597. package/src/components/form/meta.ts +17 -0
  598. package/src/components/input/index.ts +1 -0
  599. package/src/components/input/input.stories.tsx +84 -0
  600. package/src/components/input/input.test.tsx +108 -0
  601. package/src/components/input/input.tsx +51 -0
  602. package/src/components/input/meta.ts +15 -0
  603. package/src/components/label/index.ts +1 -0
  604. package/src/components/label/label.stories.tsx +51 -0
  605. package/src/components/label/label.test.tsx +55 -0
  606. package/src/components/label/label.tsx +26 -0
  607. package/src/components/label/meta.ts +15 -0
  608. package/src/components/pagination/index.ts +10 -0
  609. package/src/components/pagination/meta.ts +17 -0
  610. package/src/components/pagination/pagination.stories.tsx +129 -0
  611. package/src/components/pagination/pagination.test.tsx +119 -0
  612. package/src/components/pagination/pagination.tsx +142 -0
  613. package/src/components/popover/index.ts +9 -0
  614. package/src/components/popover/meta.ts +18 -0
  615. package/src/components/popover/popover.stories.tsx +84 -0
  616. package/src/components/popover/popover.test.tsx +163 -0
  617. package/src/components/popover/popover.tsx +89 -0
  618. package/src/components/progress/index.ts +1 -0
  619. package/src/components/progress/meta.ts +17 -0
  620. package/src/components/progress/progress.stories.tsx +90 -0
  621. package/src/components/progress/progress.test.tsx +78 -0
  622. package/src/components/progress/progress.tsx +70 -0
  623. package/src/components/radio-group/index.ts +6 -0
  624. package/src/components/radio-group/meta.ts +16 -0
  625. package/src/components/radio-group/radio-group.stories.tsx +102 -0
  626. package/src/components/radio-group/radio-group.test.tsx +152 -0
  627. package/src/components/radio-group/radio-group.tsx +53 -0
  628. package/src/components/select/index.ts +14 -0
  629. package/src/components/select/meta.ts +16 -0
  630. package/src/components/select/select.stories.tsx +137 -0
  631. package/src/components/select/select.test.tsx +209 -0
  632. package/src/components/select/select.tsx +222 -0
  633. package/src/components/separator/index.ts +1 -0
  634. package/src/components/separator/meta.ts +15 -0
  635. package/src/components/separator/separator.stories.tsx +42 -0
  636. package/src/components/separator/separator.test.tsx +46 -0
  637. package/src/components/separator/separator.tsx +33 -0
  638. package/src/components/sheet/index.ts +14 -0
  639. package/src/components/sheet/meta.ts +16 -0
  640. package/src/components/sheet/sheet.stories.tsx +107 -0
  641. package/src/components/sheet/sheet.test.tsx +152 -0
  642. package/src/components/sheet/sheet.tsx +160 -0
  643. package/src/components/skeleton/index.ts +1 -0
  644. package/src/components/skeleton/meta.ts +15 -0
  645. package/src/components/skeleton/skeleton.stories.tsx +46 -0
  646. package/src/components/skeleton/skeleton.test.tsx +57 -0
  647. package/src/components/skeleton/skeleton.tsx +28 -0
  648. package/src/components/slider/index.ts +1 -0
  649. package/src/components/slider/meta.ts +19 -0
  650. package/src/components/slider/slider.stories.tsx +87 -0
  651. package/src/components/slider/slider.test.tsx +148 -0
  652. package/src/components/slider/slider.tsx +135 -0
  653. package/src/components/spinner/index.ts +1 -0
  654. package/src/components/spinner/meta.ts +15 -0
  655. package/src/components/spinner/spinner.stories.tsx +47 -0
  656. package/src/components/spinner/spinner.test.tsx +41 -0
  657. package/src/components/spinner/spinner.tsx +68 -0
  658. package/src/components/switch/index.ts +1 -0
  659. package/src/components/switch/meta.ts +15 -0
  660. package/src/components/switch/switch.stories.tsx +70 -0
  661. package/src/components/switch/switch.test.tsx +101 -0
  662. package/src/components/switch/switch.tsx +42 -0
  663. package/src/components/table/index.ts +11 -0
  664. package/src/components/table/meta.ts +17 -0
  665. package/src/components/table/table.stories.tsx +131 -0
  666. package/src/components/table/table.test.tsx +153 -0
  667. package/src/components/table/table.tsx +138 -0
  668. package/src/components/tabs/index.ts +11 -0
  669. package/src/components/tabs/meta.ts +17 -0
  670. package/src/components/tabs/tabs.stories.tsx +139 -0
  671. package/src/components/tabs/tabs.test.tsx +148 -0
  672. package/src/components/tabs/tabs.tsx +106 -0
  673. package/src/components/toast/index.ts +24 -0
  674. package/src/components/toast/meta.ts +18 -0
  675. package/src/components/toast/toast-store.ts +181 -0
  676. package/src/components/toast/toast.stories.tsx +167 -0
  677. package/src/components/toast/toast.test.tsx +306 -0
  678. package/src/components/toast/toast.tsx +241 -0
  679. package/src/components/tooltip/index.ts +8 -0
  680. package/src/components/tooltip/meta.ts +17 -0
  681. package/src/components/tooltip/tooltip.stories.tsx +89 -0
  682. package/src/components/tooltip/tooltip.test.tsx +120 -0
  683. package/src/components/tooltip/tooltip.tsx +58 -0
  684. package/src/index.ts +50 -0
  685. package/src/lib/styles.ts +26 -0
  686. package/src/lib/utils.test.ts +32 -0
  687. package/src/lib/utils.ts +24 -0
  688. package/src/registry/blocks.ts +30 -0
  689. package/src/registry/components.ts +114 -0
  690. package/src/registry/meta.test.ts +234 -0
  691. package/src/registry/schema.ts +58 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 LibName contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,27 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/admin-users/meta.ts
3
+ const meta = defineMeta({
4
+ name: "admin-users",
5
+ kind: "block",
6
+ title: "Admin — users",
7
+ description: "A team administration table with filtering, sorting and per-row actions.",
8
+ category: "data",
9
+ status: "stable",
10
+ dependencies: ["@tanstack/react-table"],
11
+ registryDependencies: [
12
+ "avatar",
13
+ "badge",
14
+ "button",
15
+ "data-table",
16
+ "dropdown-menu",
17
+ "empty-state",
18
+ "input",
19
+ "label"
20
+ ],
21
+ files: ["admin-users.tsx"],
22
+ a11y: "Filtering changes the results without the user asking, so the matching count is announced politely. The filter has a real label rather than only a placeholder, which disappears the moment anyone types. Each row's action button is named after its row — four identical \"Actions\" buttons say nothing about which row you are on."
23
+ });
24
+ //#endregion
25
+ export { meta };
26
+
27
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/admin-users/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"admin-users\",\n kind: \"block\",\n title: \"Admin — users\",\n description: \"A team administration table with filtering, sorting and per-row actions.\",\n category: \"data\",\n status: \"stable\",\n dependencies: [\"@tanstack/react-table\"],\n registryDependencies: [\n \"avatar\",\n \"badge\",\n \"button\",\n \"data-table\",\n \"dropdown-menu\",\n \"empty-state\",\n \"input\",\n \"label\",\n ],\n files: [\"admin-users.tsx\"],\n a11y:\n \"Filtering changes the results without the user asking, so the matching count is announced \" +\n \"politely. The filter has a real label rather than only a placeholder, which disappears the \" +\n \"moment anyone types. Each row's action button is named after its row — four identical \" +\n '\"Actions\" buttons say nothing about which row you are on.',\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,uBAAuB;CACtC,sBAAsB;EACpB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,OAAO,CAAC,iBAAiB;CACzB,MACE;AAIJ,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/ai-chat/meta.ts
3
+ const meta = defineMeta({
4
+ name: "ai-chat",
5
+ kind: "block",
6
+ title: "AI Chat",
7
+ description: "A complete chat surface: transcript, reasoning, tool calls, sources and composer.",
8
+ category: "ai",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "ai-conversation",
13
+ "ai-message",
14
+ "ai-model-selector",
15
+ "ai-prompt-input",
16
+ "ai-reasoning",
17
+ "ai-response",
18
+ "ai-sources",
19
+ "ai-token-usage",
20
+ "ai-tool",
21
+ "button",
22
+ "empty-state"
23
+ ],
24
+ files: ["ai-chat.tsx"],
25
+ a11y: "Assembled from the AI components rather than reimplementing them, so their decisions still hold: the transcript is a list and not a live region, state is announced separately through ConversationStatus, and the composer will not send while an IME composition is active. Tool payloads are named per tool, so two open tool calls do not present two regions called \"Result\"."
26
+ });
27
+ //#endregion
28
+ export { meta };
29
+
30
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/ai-chat/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"ai-chat\",\n kind: \"block\",\n title: \"AI Chat\",\n description:\n \"A complete chat surface: transcript, reasoning, tool calls, sources and composer.\",\n category: \"ai\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\n \"ai-conversation\",\n \"ai-message\",\n \"ai-model-selector\",\n \"ai-prompt-input\",\n \"ai-reasoning\",\n \"ai-response\",\n \"ai-sources\",\n \"ai-token-usage\",\n \"ai-tool\",\n \"button\",\n \"empty-state\",\n ],\n files: [\"ai-chat.tsx\"],\n a11y:\n \"Assembled from the AI components rather than reimplementing them, so their decisions still \" +\n \"hold: the transcript is a list and not a live region, state is announced separately through \" +\n \"ConversationStatus, and the composer will not send while an IME composition is active. Tool \" +\n \"payloads are named per tool, so two open tool calls do not present two regions called \" +\n '\"Result\".',\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EACpB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,OAAO,CAAC,aAAa;CACrB,MACE;AAKJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/dashboard/meta.ts
3
+ const meta = defineMeta({
4
+ name: "dashboard",
5
+ kind: "block",
6
+ title: "Dashboard",
7
+ description: "An overview page with headline metrics and a recent activity feed.",
8
+ category: "data",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "activity-feed",
13
+ "badge",
14
+ "card",
15
+ "skeleton"
16
+ ],
17
+ files: ["dashboard.tsx"],
18
+ a11y: "Each metric states its change in words — \"up 12.4%\" — rather than by a coloured arrow, which is unreadable to a screen reader and ambiguous to anyone who cannot distinguish the colours. Whether a rise is good is configurable, since churn going up is not. The metrics sit in a named region so they can be jumped to."
19
+ });
20
+ //#endregion
21
+ export { meta };
22
+
23
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/dashboard/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"dashboard\",\n kind: \"block\",\n title: \"Dashboard\",\n description: \"An overview page with headline metrics and a recent activity feed.\",\n category: \"data\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\"activity-feed\", \"badge\", \"card\", \"skeleton\"],\n files: [\"dashboard.tsx\"],\n a11y:\n 'Each metric states its change in words — \"up 12.4%\" — rather than by a coloured arrow, ' +\n \"which is unreadable to a screen reader and ambiguous to anyone who cannot distinguish the \" +\n \"colours. Whether a rise is good is configurable, since churn going up is not. The metrics \" +\n \"sit in a named region so they can be jumped to.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EAAC;EAAiB;EAAS;EAAQ;CAAU;CACnE,OAAO,CAAC,eAAe;CACvB,MACE;AAIJ,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/forgot-password/meta.ts
3
+ const meta = defineMeta({
4
+ name: "forgot-password",
5
+ kind: "block",
6
+ title: "Forgot password",
7
+ description: "A password reset request, with a confirmation that does not leak account existence.",
8
+ category: "form",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "button",
13
+ "card",
14
+ "empty-state",
15
+ "form",
16
+ "input"
17
+ ],
18
+ files: ["forgot-password.tsx"],
19
+ a11y: "The confirmation replaces the form, so it is a polite live region — otherwise a screen reader user submits and hears nothing. The wording is deliberately neutral about whether the address exists: confirming it would turn this form into an account enumeration oracle."
20
+ });
21
+ //#endregion
22
+ export { meta };
23
+
24
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/forgot-password/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"forgot-password\",\n kind: \"block\",\n title: \"Forgot password\",\n description:\n \"A password reset request, with a confirmation that does not leak account existence.\",\n category: \"form\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\"button\", \"card\", \"empty-state\", \"form\", \"input\"],\n files: [\"forgot-password.tsx\"],\n a11y:\n \"The confirmation replaces the form, so it is a polite live region — otherwise a screen \" +\n \"reader user submits and hears nothing. The wording is deliberately neutral about whether \" +\n \"the address exists: confirming it would turn this form into an account enumeration oracle.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EAAC;EAAU;EAAQ;EAAe;EAAQ;CAAO;CACvE,OAAO,CAAC,qBAAqB;CAC7B,MACE;AAGJ,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/login/meta.ts
3
+ const meta = defineMeta({
4
+ name: "login",
5
+ kind: "block",
6
+ title: "Login",
7
+ description: "A sign-in form with validation, social providers and a busy state.",
8
+ category: "form",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "button",
13
+ "card",
14
+ "checkbox",
15
+ "form",
16
+ "input",
17
+ "label",
18
+ "separator"
19
+ ],
20
+ files: ["login.tsx"],
21
+ a11y: "Email and password fields carry the right type and autocomplete, so password managers and mobile keyboards behave. Field errors are tied to their inputs through the Form wiring; a server error is an assertive alert, because it arrived after the user acted and explains why nothing happened. The submit button reports its own busy state rather than going quiet."
22
+ });
23
+ //#endregion
24
+ export { meta };
25
+
26
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/login/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"login\",\n kind: \"block\",\n title: \"Login\",\n description: \"A sign-in form with validation, social providers and a busy state.\",\n category: \"form\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\"button\", \"card\", \"checkbox\", \"form\", \"input\", \"label\", \"separator\"],\n files: [\"login.tsx\"],\n a11y:\n \"Email and password fields carry the right type and autocomplete, so password managers and \" +\n \"mobile keyboards behave. Field errors are tied to their inputs through the Form wiring; a \" +\n \"server error is an assertive alert, because it arrived after the user acted and explains why \" +\n \"nothing happened. The submit button reports its own busy state rather than going quiet.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EAAC;EAAU;EAAQ;EAAY;EAAQ;EAAS;EAAS;CAAW;CAC1F,OAAO,CAAC,WAAW;CACnB,MACE;AAIJ,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/pricing/meta.ts
3
+ const meta = defineMeta({
4
+ name: "pricing",
5
+ kind: "block",
6
+ title: "Pricing",
7
+ description: "A pricing section with plan cards and a monthly/yearly toggle.",
8
+ category: "layout",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "badge",
13
+ "button",
14
+ "card",
15
+ "label",
16
+ "switch"
17
+ ],
18
+ files: ["pricing.tsx"],
19
+ a11y: "Switching the billing period rewrites every price on the page, so the change is announced politely rather than happening silently. Each plan's call to action names the plan — three buttons all reading \"Choose\" are indistinguishable out of context. Feature ticks are decorative; the feature text carries the meaning."
20
+ });
21
+ //#endregion
22
+ export { meta };
23
+
24
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/pricing/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"pricing\",\n kind: \"block\",\n title: \"Pricing\",\n description: \"A pricing section with plan cards and a monthly/yearly toggle.\",\n category: \"layout\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\"badge\", \"button\", \"card\", \"label\", \"switch\"],\n files: [\"pricing.tsx\"],\n a11y:\n \"Switching the billing period rewrites every price on the page, so the change is announced \" +\n \"politely rather than happening silently. Each plan's call to action names the plan — three \" +\n 'buttons all reading \"Choose\" are indistinguishable out of context. Feature ticks are ' +\n \"decorative; the feature text carries the meaning.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EAAC;EAAS;EAAU;EAAQ;EAAS;CAAQ;CACnE,OAAO,CAAC,aAAa;CACrB,MACE;AAIJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/settings/meta.ts
3
+ const meta = defineMeta({
4
+ name: "settings",
5
+ kind: "block",
6
+ title: "Settings",
7
+ description: "A settings page with a profile form, immediate toggles and a danger zone.",
8
+ category: "form",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "avatar",
13
+ "button",
14
+ "card",
15
+ "dialog",
16
+ "form",
17
+ "input",
18
+ "label",
19
+ "separator",
20
+ "switch",
21
+ "tabs"
22
+ ],
23
+ files: ["settings.tsx"],
24
+ a11y: "Switches apply immediately and have no Save button — a switch that needs saving is a broken promise, so staged changes live in the form instead. The delete confirmation names what will be destroyed and requires typing the account's email, so the destructive button cannot be reached by muscle memory."
25
+ });
26
+ //#endregion
27
+ export { meta };
28
+
29
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/settings/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"settings\",\n kind: \"block\",\n title: \"Settings\",\n description: \"A settings page with a profile form, immediate toggles and a danger zone.\",\n category: \"form\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\n \"avatar\",\n \"button\",\n \"card\",\n \"dialog\",\n \"form\",\n \"input\",\n \"label\",\n \"separator\",\n \"switch\",\n \"tabs\",\n ],\n files: [\"settings.tsx\"],\n a11y:\n \"Switches apply immediately and have no Save button — a switch that needs saving is a broken \" +\n \"promise, so staged changes live in the form instead. The delete confirmation names what will \" +\n \"be destroyed and requires typing the account's email, so the destructive button cannot be \" +\n \"reached by muscle memory.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EACpB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,OAAO,CAAC,cAAc;CACtB,MACE;AAIJ,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/blocks/signup/meta.ts
3
+ const meta = defineMeta({
4
+ name: "signup",
5
+ kind: "block",
6
+ title: "Sign up",
7
+ description: "An account creation form with a password strength hint and terms acceptance.",
8
+ category: "form",
9
+ status: "stable",
10
+ dependencies: [],
11
+ registryDependencies: [
12
+ "button",
13
+ "card",
14
+ "checkbox",
15
+ "form",
16
+ "input",
17
+ "progress"
18
+ ],
19
+ files: ["signup.tsx"],
20
+ a11y: "The strength label is text and the bar beside it is aria-hidden, so the estimate is not announced twice. autoComplete=\"new-password\" tells password managers to offer a generated password rather than an existing one. Strength is a hint, never a gate: the form is validated on length alone."
21
+ });
22
+ //#endregion
23
+ export { meta };
24
+
25
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/blocks/signup/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"signup\",\n kind: \"block\",\n title: \"Sign up\",\n description: \"An account creation form with a password strength hint and terms acceptance.\",\n category: \"form\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [\"button\", \"card\", \"checkbox\", \"form\", \"input\", \"progress\"],\n files: [\"signup.tsx\"],\n a11y:\n \"The strength label is text and the bar beside it is aria-hidden, so the estimate is not \" +\n 'announced twice. autoComplete=\"new-password\" tells password managers to offer a generated ' +\n \"password rather than an existing one. Strength is a hint, never a gate: the form is validated \" +\n \"on length alone.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB;EAAC;EAAU;EAAQ;EAAY;EAAQ;EAAS;CAAU;CAChF,OAAO,CAAC,YAAY;CACpB,MACE;AAIJ,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { Accordion } from "radix-ui";
2
+ import { ComponentPropsWithRef } from "react";
3
+ //#region src/components/accordion/accordion.d.ts
4
+ /**
5
+ * Vertically stacked sections that expand to reveal their content.
6
+ *
7
+ * Use `type="single"` for a set where one answer at a time is the point (an
8
+ * FAQ), and `type="multiple"` where sections are independent (settings groups).
9
+ */
10
+ declare const Accordion$1: import("react").ForwardRefExoticComponent<(Accordion.AccordionSingleProps | Accordion.AccordionMultipleProps) & import("react").RefAttributes<HTMLDivElement>>;
11
+ type AccordionItemProps = ComponentPropsWithRef<typeof Accordion.Item>;
12
+ declare function AccordionItem({ className, ...props }: AccordionItemProps): import("react").JSX.Element;
13
+ type AccordionTriggerProps = ComponentPropsWithRef<typeof Accordion.Trigger>;
14
+ declare function AccordionTrigger({ className, children, ...props }: AccordionTriggerProps): import("react").JSX.Element;
15
+ type AccordionContentProps = ComponentPropsWithRef<typeof Accordion.Content>;
16
+ declare function AccordionContent({ className, children, ...props }: AccordionContentProps): import("react").JSX.Element;
17
+ //#endregion
18
+ export { Accordion$1 as Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionTrigger, AccordionTriggerProps };
19
+ //# sourceMappingURL=accordion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.d.ts","names":[],"sources":["../../../src/components/accordion/accordion.tsx"],"mappings":";;;;;;;;;cAca,6BAAS,2BAAA,UAAA,uBAAA,UAAA,0CAAA,cAAA;KAEV,qBAAqB,6BAA6B,UAAmB;iBAEjE,gBAAgB,cAAc,SAAS,qCAAkB,IAAA;KAU7D,wBAAwB,6BAA6B,UAAmB;iBAEpE,mBAAmB,WAAW,aAAa,SAAS,wCAAqB,IAAA;KAsC7E,wBAAwB,6BAA6B,UAAmB;iBAEpE,mBAAmB,WAAW,aAAa,SAAS,wCAAqB,IAAA"}
@@ -0,0 +1,58 @@
1
+ "use client";
2
+ import { focusRing } from "../../lib/styles.js";
3
+ import { cn } from "../../lib/utils.js";
4
+ import { Accordion } from "radix-ui";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ //#region src/components/accordion/accordion.tsx
7
+ /**
8
+ * Vertically stacked sections that expand to reveal their content.
9
+ *
10
+ * Use `type="single"` for a set where one answer at a time is the point (an
11
+ * FAQ), and `type="multiple"` where sections are independent (settings groups).
12
+ */
13
+ const Accordion$1 = Accordion.Root;
14
+ function AccordionItem({ className, ...props }) {
15
+ return /* @__PURE__ */ jsx(Accordion.Item, {
16
+ "data-slot": "accordion-item",
17
+ className: cn("border-b border-border last:border-b-0", className),
18
+ ...props
19
+ });
20
+ }
21
+ function AccordionTrigger({ className, children, ...props }) {
22
+ return /* @__PURE__ */ jsx(Accordion.Header, {
23
+ className: "flex",
24
+ children: /* @__PURE__ */ jsxs(Accordion.Trigger, {
25
+ "data-slot": "accordion-trigger",
26
+ className: cn("flex flex-1 items-start justify-between gap-4 py-4 text-left text-sm font-medium", "transition-colors duration-[var(--duration-fast)] hover:text-primary", "disabled:pointer-events-none disabled:opacity-55", "[&[data-state=open]>svg]:rotate-180", focusRing, className),
27
+ ...props,
28
+ children: [children, /* @__PURE__ */ jsx("svg", {
29
+ viewBox: "0 0 24 24",
30
+ fill: "none",
31
+ "aria-hidden": "true",
32
+ className: "size-4 shrink-0 translate-y-0.5 text-muted-foreground transition-transform duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]",
33
+ children: /* @__PURE__ */ jsx("path", {
34
+ d: "m6 9 6 6 6-6",
35
+ stroke: "currentColor",
36
+ strokeWidth: "2",
37
+ strokeLinecap: "round",
38
+ strokeLinejoin: "round"
39
+ })
40
+ })]
41
+ })
42
+ });
43
+ }
44
+ function AccordionContent({ className, children, ...props }) {
45
+ return /* @__PURE__ */ jsx(Accordion.Content, {
46
+ "data-slot": "accordion-content",
47
+ className: cn("overflow-hidden text-sm text-muted-foreground", "data-[state=closed]:animate-accordion-close data-[state=open]:animate-accordion-open", className),
48
+ ...props,
49
+ children: /* @__PURE__ */ jsx("div", {
50
+ className: cn("pb-4"),
51
+ children
52
+ })
53
+ });
54
+ }
55
+ //#endregion
56
+ export { Accordion$1 as Accordion, AccordionContent, AccordionItem, AccordionTrigger };
57
+
58
+ //# sourceMappingURL=accordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.js","names":["Accordion","AccordionPrimitive"],"sources":["../../../src/components/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * Vertically stacked sections that expand to reveal their content.\n *\n * Use `type=\"single\"` for a set where one answer at a time is the point (an\n * FAQ), and `type=\"multiple\"` where sections are independent (settings groups).\n */\nexport const Accordion = AccordionPrimitive.Root;\n\nexport type AccordionItemProps = ComponentPropsWithRef<typeof AccordionPrimitive.Item>;\n\nexport function AccordionItem({ className, ...props }: AccordionItemProps) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b border-border last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\nexport type AccordionTriggerProps = ComponentPropsWithRef<typeof AccordionPrimitive.Trigger>;\n\nexport function AccordionTrigger({ className, children, ...props }: AccordionTriggerProps) {\n return (\n // The primitive requires the trigger to sit inside a Header so the button\n // carries a heading role — without it the sections are unreachable by\n // heading navigation, which is how many screen reader users move around.\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"flex flex-1 items-start justify-between gap-4 py-4 text-left text-sm font-medium\",\n \"transition-colors duration-[var(--duration-fast)] hover:text-primary\",\n \"disabled:pointer-events-none disabled:opacity-55\",\n \"[&[data-state=open]>svg]:rotate-180\",\n focusRing,\n className,\n )}\n {...props}\n >\n {children}\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n aria-hidden=\"true\"\n className=\"size-4 shrink-0 translate-y-0.5 text-muted-foreground transition-transform duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]\"\n >\n <path\n d=\"m6 9 6 6 6-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nexport type AccordionContentProps = ComponentPropsWithRef<typeof AccordionPrimitive.Content>;\n\nexport function AccordionContent({ className, children, ...props }: AccordionContentProps) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className={cn(\n // The height keyframes read --radix-accordion-content-height, which the\n // primitive measures; overflow-hidden keeps the content clipped as the\n // box grows rather than spilling over the section below.\n \"overflow-hidden text-sm text-muted-foreground\",\n \"data-[state=closed]:animate-accordion-close data-[state=open]:animate-accordion-open\",\n className,\n )}\n {...props}\n >\n <div className={cn(\"pb-4\")}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAcA,MAAaA,cAAYC,UAAmB;AAI5C,SAAgB,cAAc,EAAE,WAAW,GAAG,SAA6B;CACzE,OACE,oBAACA,UAAmB,MAApB;EACE,aAAU;EACV,WAAW,GAAG,0CAA0C,SAAS;EACjE,GAAI;CACL,CAAA;AAEL;AAIA,SAAgB,iBAAiB,EAAE,WAAW,UAAU,GAAG,SAAgC;CACzF,OAIE,oBAACA,UAAmB,QAApB;EAA2B,WAAU;EACnC,UAAA,qBAACA,UAAmB,SAApB;GACE,aAAU;GACV,WAAW,GACT,oFACA,wEACA,oDACA,uCACA,WACA,SACF;GACA,GAAI;GAVN,UAAA,CAYG,UACD,oBAAC,OAAD;IACE,SAAQ;IACR,MAAK;IACL,eAAY;IACZ,WAAU;IAEV,UAAA,oBAAC,QAAD;KACE,GAAE;KACF,QAAO;KACP,aAAY;KACZ,eAAc;KACd,gBAAe;IAChB,CAAA;GACE,CAAA,CACqB;;CACH,CAAA;AAE/B;AAIA,SAAgB,iBAAiB,EAAE,WAAW,UAAU,GAAG,SAAgC;CACzF,OACE,oBAACA,UAAmB,SAApB;EACE,aAAU;EACV,WAAW,GAIT,iDACA,wFACA,SACF;EACA,GAAI;EAEJ,UAAA,oBAAC,OAAD;GAAK,WAAW,GAAG,MAAM;GAAI;EAAc,CAAA;CACjB,CAAA;AAEhC"}
@@ -0,0 +1,2 @@
1
+ import { Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionTrigger, AccordionTriggerProps } from "./accordion.js";
2
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, AccordionTrigger, type AccordionTriggerProps };
@@ -0,0 +1,2 @@
1
+ import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "./accordion.js";
2
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/accordion/meta.ts
3
+ const meta = defineMeta({
4
+ name: "accordion",
5
+ title: "Accordion",
6
+ description: "Vertically stacked sections that expand to reveal their content.",
7
+ category: "data",
8
+ status: "stable",
9
+ dependencies: ["radix-ui"],
10
+ registryDependencies: [],
11
+ files: ["accordion.tsx"],
12
+ a11y: "Each trigger is a button inside a heading, so screen reader users can navigate the sections by heading. aria-expanded and aria-controls tie the trigger to its panel, and arrow keys move between triggers."
13
+ });
14
+ //#endregion
15
+ export { meta };
16
+
17
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/accordion/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"accordion\",\n title: \"Accordion\",\n description: \"Vertically stacked sections that expand to reveal their content.\",\n category: \"data\",\n status: \"stable\",\n dependencies: [\"radix-ui\"],\n registryDependencies: [],\n files: [\"accordion.tsx\"],\n a11y:\n \"Each trigger is a button inside a heading, so screen reader users can navigate the \" +\n \"sections by heading. aria-expanded and aria-controls tie the trigger to its panel, and \" +\n \"arrow keys move between triggers.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,UAAU;CACzB,sBAAsB,CAAC;CACvB,OAAO,CAAC,eAAe;CACvB,MACE;AAGJ,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { ComponentPropsWithRef } from "react";
2
+ //#region src/components/activity-feed/activity-feed.d.ts
3
+ /**
4
+ * A chronological list of events.
5
+ *
6
+ * An ordered list underneath, because the order is the meaning: a screen reader
7
+ * announces the position and count, and "3 of 12" is information a row of divs
8
+ * cannot convey. The connecting line is drawn with a pseudo-element rather than
9
+ * a real node so it never appears in the accessibility tree.
10
+ */
11
+ declare function ActivityFeed({ className, ...props }: ComponentPropsWithRef<"ol">): import("react").JSX.Element;
12
+ interface ActivityItemProps extends ComponentPropsWithRef<"li"> {
13
+ /** Draws no connecting line below. Set this on the last item. */
14
+ last?: boolean;
15
+ }
16
+ declare function ActivityItem({ className, last, ...props }: ActivityItemProps): import("react").JSX.Element;
17
+ interface ActivityIndicatorProps extends ComponentPropsWithRef<"div"> {
18
+ asChild?: boolean;
19
+ }
20
+ /** The marker on the rail. Decorative: the item's text says what happened. */
21
+ declare function ActivityIndicator({ className, asChild, ...props }: ActivityIndicatorProps): import("react").JSX.Element;
22
+ declare function ActivityContent({ className, ...props }: ComponentPropsWithRef<"div">): import("react").JSX.Element;
23
+ declare function ActivityTitle({ className, ...props }: ComponentPropsWithRef<"p">): import("react").JSX.Element;
24
+ interface ActivityTimeProps extends ComponentPropsWithRef<"time"> {
25
+ /** Machine-readable timestamp. Required — a relative label alone is ambiguous. */
26
+ dateTime: string;
27
+ }
28
+ /**
29
+ * When the event happened.
30
+ *
31
+ * `dateTime` is required rather than optional: "2 hours ago" is meaningless in
32
+ * a page read a day later, or by anything parsing the feed, and a `<time>` with
33
+ * no datetime is just a span.
34
+ */
35
+ declare function ActivityTime({ className, dateTime, ...props }: ActivityTimeProps): import("react").JSX.Element;
36
+ declare function ActivityDescription({ className, ...props }: ComponentPropsWithRef<"div">): import("react").JSX.Element;
37
+ //#endregion
38
+ export { ActivityContent, ActivityDescription, ActivityFeed, ActivityIndicator, ActivityIndicatorProps, ActivityItem, ActivityItemProps, ActivityTime, ActivityTimeProps, ActivityTitle };
39
+ //# sourceMappingURL=activity-feed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-feed.d.ts","names":[],"sources":["../../../src/components/activity-feed/activity-feed.tsx"],"mappings":";;;;;;;;;;iBAagB,eAAe,cAAc,SAAS,8CAA2B,IAAA;UAIhE,0BAA0B;;EAEzC;;iBAGc,eAAe,WAAW,SAAS,SAAS,oCAAiB,IAAA;UAkB5D,+BAA+B;EAC9C;;;iBAIc,oBAAoB,WAAW,YAAY,SAAS,yCAAsB,IAAA;iBAkB1E,kBAAkB,cAAc,SAAS,+CAA4B,IAAA;iBAUrE,gBAAgB,cAAc,SAAS,6CAA0B,IAAA;UAUhE,0BAA0B;;EAEzC;;;;;;;;;iBAUc,eAAe,WAAW,aAAa,SAAS,oCAAiB,IAAA;iBAWjE,sBAAsB,cAAc,SAAS,+CAA4B,IAAA"}
@@ -0,0 +1,77 @@
1
+ import { cn } from "../../lib/utils.js";
2
+ import { Slot } from "radix-ui";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/components/activity-feed/activity-feed.tsx
5
+ /**
6
+ * A chronological list of events.
7
+ *
8
+ * An ordered list underneath, because the order is the meaning: a screen reader
9
+ * announces the position and count, and "3 of 12" is information a row of divs
10
+ * cannot convey. The connecting line is drawn with a pseudo-element rather than
11
+ * a real node so it never appears in the accessibility tree.
12
+ */
13
+ function ActivityFeed({ className, ...props }) {
14
+ return /* @__PURE__ */ jsx("ol", {
15
+ "data-slot": "activity-feed",
16
+ className: cn("flex flex-col", className),
17
+ ...props
18
+ });
19
+ }
20
+ function ActivityItem({ className, last, ...props }) {
21
+ return /* @__PURE__ */ jsx("li", {
22
+ "data-slot": "activity-item",
23
+ "data-last": last || void 0,
24
+ className: cn("relative flex gap-3 pb-6 last:pb-0", "before:absolute before:top-7 before:bottom-1 before:left-[0.6875rem] before:w-px before:bg-border", "last:before:hidden data-[last]:before:hidden", className),
25
+ ...props
26
+ });
27
+ }
28
+ /** The marker on the rail. Decorative: the item's text says what happened. */
29
+ function ActivityIndicator({ className, asChild, ...props }) {
30
+ const Comp = asChild ? Slot.Root : "div";
31
+ return /* @__PURE__ */ jsx(Comp, {
32
+ "data-slot": "activity-indicator",
33
+ "aria-hidden": "true",
34
+ className: cn("relative z-[var(--z-base)] grid size-6 shrink-0 place-items-center rounded-full", "border border-border bg-background text-muted-foreground", "[&_svg:not([class*='size-'])]:size-3", className),
35
+ ...props
36
+ });
37
+ }
38
+ function ActivityContent({ className, ...props }) {
39
+ return /* @__PURE__ */ jsx("div", {
40
+ "data-slot": "activity-content",
41
+ className: cn("flex min-w-0 flex-1 flex-col gap-1 pt-0.5", className),
42
+ ...props
43
+ });
44
+ }
45
+ function ActivityTitle({ className, ...props }) {
46
+ return /* @__PURE__ */ jsx("p", {
47
+ "data-slot": "activity-title",
48
+ className: cn("text-sm leading-snug text-foreground", className),
49
+ ...props
50
+ });
51
+ }
52
+ /**
53
+ * When the event happened.
54
+ *
55
+ * `dateTime` is required rather than optional: "2 hours ago" is meaningless in
56
+ * a page read a day later, or by anything parsing the feed, and a `<time>` with
57
+ * no datetime is just a span.
58
+ */
59
+ function ActivityTime({ className, dateTime, ...props }) {
60
+ return /* @__PURE__ */ jsx("time", {
61
+ "data-slot": "activity-time",
62
+ dateTime,
63
+ className: cn("text-xs text-muted-foreground", className),
64
+ ...props
65
+ });
66
+ }
67
+ function ActivityDescription({ className, ...props }) {
68
+ return /* @__PURE__ */ jsx("div", {
69
+ "data-slot": "activity-description",
70
+ className: cn("text-sm text-muted-foreground", className),
71
+ ...props
72
+ });
73
+ }
74
+ //#endregion
75
+ export { ActivityContent, ActivityDescription, ActivityFeed, ActivityIndicator, ActivityItem, ActivityTime, ActivityTitle };
76
+
77
+ //# sourceMappingURL=activity-feed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-feed.js","names":[],"sources":["../../../src/components/activity-feed/activity-feed.tsx"],"sourcesContent":["import { Slot } from \"radix-ui\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n/**\n * A chronological list of events.\n *\n * An ordered list underneath, because the order is the meaning: a screen reader\n * announces the position and count, and \"3 of 12\" is information a row of divs\n * cannot convey. The connecting line is drawn with a pseudo-element rather than\n * a real node so it never appears in the accessibility tree.\n */\nexport function ActivityFeed({ className, ...props }: ComponentPropsWithRef<\"ol\">) {\n return <ol data-slot=\"activity-feed\" className={cn(\"flex flex-col\", className)} {...props} />;\n}\n\nexport interface ActivityItemProps extends ComponentPropsWithRef<\"li\"> {\n /** Draws no connecting line below. Set this on the last item. */\n last?: boolean;\n}\n\nexport function ActivityItem({ className, last, ...props }: ActivityItemProps) {\n return (\n <li\n data-slot=\"activity-item\"\n data-last={last || undefined}\n className={cn(\n \"relative flex gap-3 pb-6 last:pb-0\",\n // The rail is a pseudo-element on the item, so it is decorative by\n // construction rather than by remembering an aria-hidden.\n \"before:absolute before:top-7 before:bottom-1 before:left-[0.6875rem] before:w-px before:bg-border\",\n \"last:before:hidden data-[last]:before:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport interface ActivityIndicatorProps extends ComponentPropsWithRef<\"div\"> {\n asChild?: boolean;\n}\n\n/** The marker on the rail. Decorative: the item's text says what happened. */\nexport function ActivityIndicator({ className, asChild, ...props }: ActivityIndicatorProps) {\n const Comp = asChild ? Slot.Root : \"div\";\n\n return (\n <Comp\n data-slot=\"activity-indicator\"\n aria-hidden=\"true\"\n className={cn(\n \"relative z-[var(--z-base)] grid size-6 shrink-0 place-items-center rounded-full\",\n \"border border-border bg-background text-muted-foreground\",\n \"[&_svg:not([class*='size-'])]:size-3\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function ActivityContent({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"activity-content\"\n className={cn(\"flex min-w-0 flex-1 flex-col gap-1 pt-0.5\", className)}\n {...props}\n />\n );\n}\n\nexport function ActivityTitle({ className, ...props }: ComponentPropsWithRef<\"p\">) {\n return (\n <p\n data-slot=\"activity-title\"\n className={cn(\"text-sm leading-snug text-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport interface ActivityTimeProps extends ComponentPropsWithRef<\"time\"> {\n /** Machine-readable timestamp. Required — a relative label alone is ambiguous. */\n dateTime: string;\n}\n\n/**\n * When the event happened.\n *\n * `dateTime` is required rather than optional: \"2 hours ago\" is meaningless in\n * a page read a day later, or by anything parsing the feed, and a `<time>` with\n * no datetime is just a span.\n */\nexport function ActivityTime({ className, dateTime, ...props }: ActivityTimeProps) {\n return (\n <time\n data-slot=\"activity-time\"\n dateTime={dateTime}\n className={cn(\"text-xs text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport function ActivityDescription({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"activity-description\"\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;AAaA,SAAgB,aAAa,EAAE,WAAW,GAAG,SAAsC;CACjF,OAAO,oBAAC,MAAD;EAAI,aAAU;EAAgB,WAAW,GAAG,iBAAiB,SAAS;EAAG,GAAI;CAAQ,CAAA;AAC9F;AAOA,SAAgB,aAAa,EAAE,WAAW,MAAM,GAAG,SAA4B;CAC7E,OACE,oBAAC,MAAD;EACE,aAAU;EACV,aAAW,QAAQ,KAAA;EACnB,WAAW,GACT,sCAGA,qGACA,gDACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAOA,SAAgB,kBAAkB,EAAE,WAAW,SAAS,GAAG,SAAiC;CAC1F,MAAM,OAAO,UAAU,KAAK,OAAO;CAEnC,OACE,oBAAC,MAAD;EACE,aAAU;EACV,eAAY;EACZ,WAAW,GACT,mFACA,4DACA,wCACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,gBAAgB,EAAE,WAAW,GAAG,SAAuC;CACrF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,6CAA6C,SAAS;EACpE,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,cAAc,EAAE,WAAW,GAAG,SAAqC;CACjF,OACE,oBAAC,KAAD;EACE,aAAU;EACV,WAAW,GAAG,wCAAwC,SAAS;EAC/D,GAAI;CACL,CAAA;AAEL;;;;;;;;AAcA,SAAgB,aAAa,EAAE,WAAW,UAAU,GAAG,SAA4B;CACjF,OACE,oBAAC,QAAD;EACE,aAAU;EACA;EACV,WAAW,GAAG,iCAAiC,SAAS;EACxD,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,oBAAoB,EAAE,WAAW,GAAG,SAAuC;CACzF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,iCAAiC,SAAS;EACxD,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,2 @@
1
+ import { ActivityContent, ActivityDescription, ActivityFeed, ActivityIndicator, ActivityIndicatorProps, ActivityItem, ActivityItemProps, ActivityTime, ActivityTimeProps, ActivityTitle } from "./activity-feed.js";
2
+ export { ActivityContent, ActivityDescription, ActivityFeed, ActivityIndicator, type ActivityIndicatorProps, ActivityItem, type ActivityItemProps, ActivityTime, type ActivityTimeProps, ActivityTitle };
@@ -0,0 +1,2 @@
1
+ import { ActivityContent, ActivityDescription, ActivityFeed, ActivityIndicator, ActivityItem, ActivityTime, ActivityTitle } from "./activity-feed.js";
2
+ export { ActivityContent, ActivityDescription, ActivityFeed, ActivityIndicator, ActivityItem, ActivityTime, ActivityTitle };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/activity-feed/meta.ts
3
+ const meta = defineMeta({
4
+ name: "activity-feed",
5
+ title: "Activity Feed",
6
+ description: "A chronological list of events, with a connecting timeline rail.",
7
+ category: "data",
8
+ status: "stable",
9
+ dependencies: ["radix-ui"],
10
+ registryDependencies: [],
11
+ files: ["activity-feed.tsx"],
12
+ a11y: "An ordered list, so position and count are announced — the order is the meaning here. The rail and the indicators are decorative; the item text has to say what happened. ActivityTime requires a machine-readable dateTime, because a relative label like \"2 hours ago\" is ambiguous outside the moment it was rendered."
13
+ });
14
+ //#endregion
15
+ export { meta };
16
+
17
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/activity-feed/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"activity-feed\",\n title: \"Activity Feed\",\n description: \"A chronological list of events, with a connecting timeline rail.\",\n category: \"data\",\n status: \"stable\",\n dependencies: [\"radix-ui\"],\n registryDependencies: [],\n files: [\"activity-feed.tsx\"],\n a11y:\n \"An ordered list, so position and count are announced — the order is the meaning here. The \" +\n \"rail and the indicators are decorative; the item text has to say what happened. \" +\n 'ActivityTime requires a machine-readable dateTime, because a relative label like \"2 hours ' +\n 'ago\" is ambiguous outside the moment it was rendered.',\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,UAAU;CACzB,sBAAsB,CAAC;CACvB,OAAO,CAAC,mBAAmB;CAC3B,MACE;AAIJ,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { VariantProps } from "class-variance-authority";
2
+ import { ComponentPropsWithRef } from "react";
3
+ //#region src/components/ai-agent-status/ai-agent-status.d.ts
4
+ /**
5
+ * What an agent is doing right now.
6
+ *
7
+ * Always a word, never only a colour. Agent states matter most when something
8
+ * has gone wrong, which is exactly when a colour-only signal fails the people
9
+ * who most need to notice.
10
+ */
11
+ type AgentState = "idle" | "thinking" | "working" | "waiting" | "done" | "error";
12
+ declare const agentStatusVariants: (props?: ({
13
+ state?: "done" | "error" | "idle" | "thinking" | "working" | "waiting" | null | undefined;
14
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
15
+ interface AgentStatusProps extends ComponentPropsWithRef<"span">, VariantProps<typeof agentStatusVariants> {
16
+ state?: AgentState;
17
+ /** Overrides the wording. The state must still be readable as text. */
18
+ label?: string;
19
+ /**
20
+ * Announce changes politely.
21
+ *
22
+ * Off by default: several agents each announcing their own transitions turns
23
+ * a dashboard into noise. Turn it on for the one agent the user is watching.
24
+ */
25
+ live?: boolean;
26
+ }
27
+ declare function AgentStatus({ className, state, label, live, children, ...props }: AgentStatusProps): import("react").JSX.Element;
28
+ //#endregion
29
+ export { AgentState, AgentStatus, AgentStatusProps, agentStatusVariants };
30
+ //# sourceMappingURL=ai-agent-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-agent-status.d.ts","names":[],"sources":["../../../src/components/ai-agent-status/ai-agent-status.tsx"],"mappings":";;;;;;;;;;KAeY;cAWN,sBAAmB;;6CAiBxB;UAEgB,yBACP,+BAA+B,oBAAoB;EAC3D,QAAQ;;EAER;;;;;;;EAOA;;iBAGc,cACd,WACA,OACA,OACA,MACA,aACG,SACF,mCAAgB,IAAA"}