@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
@@ -0,0 +1,128 @@
1
+ "use client";
2
+ import { focusRing, invalidStyles } from "../../lib/styles.js";
3
+ import { cn } from "../../lib/utils.js";
4
+ import { Select } from "radix-ui";
5
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
+ import { cva } from "class-variance-authority";
7
+ //#region src/components/select/select.tsx
8
+ /**
9
+ * Picks one value from a list.
10
+ *
11
+ * For a short, known list. Past roughly a dozen options people want to type
12
+ * rather than scroll — reach for Combobox there. Unlike a native `<select>`,
13
+ * the options are real elements, so they can carry icons and descriptions.
14
+ */
15
+ const Select$1 = Select.Root;
16
+ const SelectGroup = Select.Group;
17
+ const SelectValue = Select.Value;
18
+ const selectTriggerVariants = cva(cn("flex w-full items-center justify-between gap-2 rounded-md border border-input bg-background", "whitespace-nowrap text-foreground shadow-xs", "transition-[border-color,box-shadow] duration-[var(--duration-fast)]", "data-[placeholder]:text-muted-foreground", "focus-visible:border-ring", "disabled:cursor-not-allowed disabled:opacity-55", "[&_svg]:pointer-events-none [&_svg]:shrink-0", "*:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2", focusRing, invalidStyles), {
19
+ variants: { triggerSize: {
20
+ sm: "h-8 px-2.5 text-sm",
21
+ md: "h-9 px-3 text-sm",
22
+ lg: "h-10 px-3.5 text-base"
23
+ } },
24
+ defaultVariants: { triggerSize: "md" }
25
+ });
26
+ function SelectTrigger({ className, triggerSize, children, ...props }) {
27
+ return /* @__PURE__ */ jsxs(Select.Trigger, {
28
+ "data-slot": "select-trigger",
29
+ className: cn(selectTriggerVariants({ triggerSize }), className),
30
+ ...props,
31
+ children: [children, /* @__PURE__ */ jsx(Select.Icon, {
32
+ asChild: true,
33
+ children: /* @__PURE__ */ jsx("svg", {
34
+ viewBox: "0 0 24 24",
35
+ fill: "none",
36
+ "aria-hidden": "true",
37
+ className: "size-4 opacity-60",
38
+ children: /* @__PURE__ */ jsx("path", {
39
+ d: "m7 10 5 5 5-5",
40
+ stroke: "currentColor",
41
+ strokeWidth: "2",
42
+ strokeLinecap: "round",
43
+ strokeLinejoin: "round"
44
+ })
45
+ })
46
+ })]
47
+ });
48
+ }
49
+ /** Scroll affordance shown only when the list overflows. Decorative. */
50
+ function ScrollButton({ direction, className, ...props }) {
51
+ const Comp = direction === "up" ? Select.ScrollUpButton : Select.ScrollDownButton;
52
+ return /* @__PURE__ */ jsx(Comp, {
53
+ "data-slot": `select-scroll-${direction}`,
54
+ className: cn("flex cursor-default items-center justify-center py-1", className),
55
+ ...props,
56
+ children: /* @__PURE__ */ jsx("svg", {
57
+ viewBox: "0 0 24 24",
58
+ fill: "none",
59
+ "aria-hidden": "true",
60
+ className: "size-4 opacity-60",
61
+ children: /* @__PURE__ */ jsx("path", {
62
+ d: direction === "up" ? "m7 14 5-5 5 5" : "m7 10 5 5 5-5",
63
+ stroke: "currentColor",
64
+ strokeWidth: "2",
65
+ strokeLinecap: "round",
66
+ strokeLinejoin: "round"
67
+ })
68
+ })
69
+ });
70
+ }
71
+ function SelectContent({ className, children, position = "popper", sideOffset = 6, ...props }) {
72
+ return /* @__PURE__ */ jsx(Select.Portal, { children: /* @__PURE__ */ jsxs(Select.Content, {
73
+ "data-slot": "select-content",
74
+ position,
75
+ sideOffset: position === "popper" ? sideOffset : void 0,
76
+ className: cn("relative z-[var(--z-popover)] max-h-[var(--radix-select-content-available-height)]", "min-w-32 overflow-x-hidden overflow-y-auto rounded-lg border border-border bg-popover", "p-1 text-popover-foreground shadow-lg", "origin-[var(--radix-select-content-transform-origin)]", "data-[state=closed]:animate-float-out data-[state=open]:animate-float-in", position === "popper" && "w-full min-w-[var(--radix-select-trigger-width)]", className),
77
+ ...props,
78
+ children: [
79
+ /* @__PURE__ */ jsx(ScrollButton, { direction: "up" }),
80
+ /* @__PURE__ */ jsx(Select.Viewport, {
81
+ className: "p-0",
82
+ children
83
+ }),
84
+ /* @__PURE__ */ jsx(ScrollButton, { direction: "down" })
85
+ ]
86
+ }) });
87
+ }
88
+ function SelectItem({ className, label, children, ...props }) {
89
+ return /* @__PURE__ */ jsxs(Select.Item, {
90
+ "data-slot": "select-item",
91
+ className: cn("relative flex w-full cursor-default items-center gap-2 rounded-md py-1.5 pr-8 pl-2 text-sm outline-none select-none", "transition-colors duration-[var(--duration-instant)]", "data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground", "data-[disabled]:pointer-events-none data-[disabled]:opacity-55", "[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
92
+ ...props,
93
+ children: [label === void 0 ? /* @__PURE__ */ jsx(Select.ItemText, { children }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Select.ItemText, { children: label }), children] }), /* @__PURE__ */ jsx("span", {
94
+ className: "absolute right-2 grid size-4 place-items-center",
95
+ children: /* @__PURE__ */ jsx(Select.ItemIndicator, { children: /* @__PURE__ */ jsx("svg", {
96
+ viewBox: "0 0 24 24",
97
+ fill: "none",
98
+ "aria-hidden": "true",
99
+ className: "size-3.5",
100
+ children: /* @__PURE__ */ jsx("path", {
101
+ d: "m5 13 4 4L19 7",
102
+ stroke: "currentColor",
103
+ strokeWidth: "2.5",
104
+ strokeLinecap: "round",
105
+ strokeLinejoin: "round"
106
+ })
107
+ }) })
108
+ })]
109
+ });
110
+ }
111
+ function SelectLabel({ className, ...props }) {
112
+ return /* @__PURE__ */ jsx(Select.Label, {
113
+ "data-slot": "select-label",
114
+ className: cn("px-2 py-1.5 text-xs font-medium text-muted-foreground", className),
115
+ ...props
116
+ });
117
+ }
118
+ function SelectSeparator({ className, ...props }) {
119
+ return /* @__PURE__ */ jsx(Select.Separator, {
120
+ "data-slot": "select-separator",
121
+ className: cn("-mx-1 my-1 h-px bg-border", className),
122
+ ...props
123
+ });
124
+ }
125
+ //#endregion
126
+ export { Select$1 as Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, selectTriggerVariants };
127
+
128
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.js","names":["Select","SelectPrimitive"],"sources":["../../../src/components/select/select.tsx"],"sourcesContent":["\"use client\";\n\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { Select as SelectPrimitive } from \"radix-ui\";\nimport type { ComponentPropsWithRef, ReactNode } from \"react\";\n\nimport { focusRing, invalidStyles } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * Picks one value from a list.\n *\n * For a short, known list. Past roughly a dozen options people want to type\n * rather than scroll — reach for Combobox there. Unlike a native `<select>`,\n * the options are real elements, so they can carry icons and descriptions.\n */\nexport const Select = SelectPrimitive.Root;\nexport const SelectGroup = SelectPrimitive.Group;\nexport const SelectValue = SelectPrimitive.Value;\n\nconst selectTriggerVariants = cva(\n cn(\n \"flex w-full items-center justify-between gap-2 rounded-md border border-input bg-background\",\n \"whitespace-nowrap text-foreground shadow-xs\",\n \"transition-[border-color,box-shadow] duration-[var(--duration-fast)]\",\n \"data-[placeholder]:text-muted-foreground\",\n \"focus-visible:border-ring\",\n \"disabled:cursor-not-allowed disabled:opacity-55\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0\",\n \"*:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2\",\n focusRing,\n invalidStyles,\n ),\n {\n variants: {\n triggerSize: {\n sm: \"h-8 px-2.5 text-sm\",\n md: \"h-9 px-3 text-sm\",\n lg: \"h-10 px-3.5 text-base\",\n },\n },\n defaultVariants: {\n triggerSize: \"md\",\n },\n },\n);\n\nexport interface SelectTriggerProps\n extends\n ComponentPropsWithRef<typeof SelectPrimitive.Trigger>,\n VariantProps<typeof selectTriggerVariants> {}\n\nexport function SelectTrigger({\n className,\n triggerSize,\n children,\n ...props\n}: SelectTriggerProps) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n className={cn(selectTriggerVariants({ triggerSize }), className)}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\" className=\"size-4 opacity-60\">\n <path\n d=\"m7 10 5 5 5-5\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\n/** Scroll affordance shown only when the list overflows. Decorative. */\nfunction ScrollButton({\n direction,\n className,\n ...props\n}: {\n direction: \"up\" | \"down\";\n} & ComponentPropsWithRef<typeof SelectPrimitive.ScrollUpButton>) {\n const Comp =\n direction === \"up\" ? SelectPrimitive.ScrollUpButton : SelectPrimitive.ScrollDownButton;\n\n return (\n <Comp\n data-slot={`select-scroll-${direction}`}\n className={cn(\"flex cursor-default items-center justify-center py-1\", className)}\n {...props}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\" className=\"size-4 opacity-60\">\n <path\n d={direction === \"up\" ? \"m7 14 5-5 5 5\" : \"m7 10 5 5 5-5\"}\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </Comp>\n );\n}\n\nexport type SelectContentProps = ComponentPropsWithRef<typeof SelectPrimitive.Content>;\n\nexport function SelectContent({\n className,\n children,\n position = \"popper\",\n sideOffset = 6,\n ...props\n}: SelectContentProps) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n position={position}\n sideOffset={position === \"popper\" ? sideOffset : undefined}\n className={cn(\n \"relative z-[var(--z-popover)] max-h-[var(--radix-select-content-available-height)]\",\n \"min-w-32 overflow-x-hidden overflow-y-auto rounded-lg border border-border bg-popover\",\n \"p-1 text-popover-foreground shadow-lg\",\n \"origin-[var(--radix-select-content-transform-origin)]\",\n \"data-[state=closed]:animate-float-out data-[state=open]:animate-float-in\",\n position === \"popper\" && \"w-full min-w-[var(--radix-select-trigger-width)]\",\n className,\n )}\n {...props}\n >\n <ScrollButton direction=\"up\" />\n <SelectPrimitive.Viewport className=\"p-0\">{children}</SelectPrimitive.Viewport>\n <ScrollButton direction=\"down\" />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nexport interface SelectItemProps extends ComponentPropsWithRef<typeof SelectPrimitive.Item> {\n /**\n * What the trigger shows once this option is chosen.\n *\n * The primitive clones the item's text into the trigger, so a rich option —\n * a name with a description under it — would otherwise drag all of that into\n * a one-line trigger. Give the label here and the rest as children.\n */\n label?: ReactNode;\n}\n\nexport function SelectItem({ className, label, children, ...props }: SelectItemProps) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"relative flex w-full cursor-default items-center gap-2 rounded-md py-1.5 pr-8 pl-2 text-sm outline-none select-none\",\n \"transition-colors duration-[var(--duration-instant)]\",\n \"data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground\",\n \"data-[disabled]:pointer-events-none data-[disabled]:opacity-55\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {label === undefined ? (\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n ) : (\n <>\n <SelectPrimitive.ItemText>{label}</SelectPrimitive.ItemText>\n {children}\n </>\n )}\n {/* Decorative: selection is already announced through aria-selected. */}\n <span className=\"absolute right-2 grid size-4 place-items-center\">\n <SelectPrimitive.ItemIndicator>\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\" className=\"size-3.5\">\n <path\n d=\"m5 13 4 4L19 7\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </SelectPrimitive.ItemIndicator>\n </span>\n </SelectPrimitive.Item>\n );\n}\n\nexport function SelectLabel({\n className,\n ...props\n}: ComponentPropsWithRef<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\"px-2 py-1.5 text-xs font-medium text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport function SelectSeparator({\n className,\n ...props\n}: ComponentPropsWithRef<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"-mx-1 my-1 h-px bg-border\", className)}\n {...props}\n />\n );\n}\n\nexport { selectTriggerVariants };\n"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAaA,WAASC,OAAgB;AACtC,MAAa,cAAcA,OAAgB;AAC3C,MAAa,cAAcA,OAAgB;AAE3C,MAAM,wBAAwB,IAC5B,GACE,+FACA,+CACA,wEACA,4CACA,6BACA,mDACA,gDACA,4GACA,WACA,aACF,GACA;CACE,UAAU,EACR,aAAa;EACX,IAAI;EACJ,IAAI;EACJ,IAAI;CACN,EACF;CACA,iBAAiB,EACf,aAAa,KACf;AACF,CACF;AAOA,SAAgB,cAAc,EAC5B,WACA,aACA,UACA,GAAG,SACkB;CACrB,OACE,qBAACA,OAAgB,SAAjB;EACE,aAAU;EACV,WAAW,GAAG,sBAAsB,EAAE,YAAY,CAAC,GAAG,SAAS;EAC/D,GAAI;EAHN,UAAA,CAKG,UACD,oBAACA,OAAgB,MAAjB;GAAsB,SAAA;GACpB,UAAA,oBAAC,OAAD;IAAK,SAAQ;IAAY,MAAK;IAAO,eAAY;IAAO,WAAU;IAChE,UAAA,oBAAC,QAAD;KACE,GAAE;KACF,QAAO;KACP,aAAY;KACZ,eAAc;KACd,gBAAe;IAChB,CAAA;GACE,CAAA;EACe,CAAA,CACC;;AAE7B;;AAGA,SAAS,aAAa,EACpB,WACA,WACA,GAAG,SAG6D;CAChE,MAAM,OACJ,cAAc,OAAOA,OAAgB,iBAAiBA,OAAgB;CAExE,OACE,oBAAC,MAAD;EACE,aAAW,iBAAiB;EAC5B,WAAW,GAAG,wDAAwD,SAAS;EAC/E,GAAI;EAEJ,UAAA,oBAAC,OAAD;GAAK,SAAQ;GAAY,MAAK;GAAO,eAAY;GAAO,WAAU;GAChE,UAAA,oBAAC,QAAD;IACE,GAAG,cAAc,OAAO,kBAAkB;IAC1C,QAAO;IACP,aAAY;IACZ,eAAc;IACd,gBAAe;GAChB,CAAA;EACE,CAAA;CACD,CAAA;AAEV;AAIA,SAAgB,cAAc,EAC5B,WACA,UACA,WAAW,UACX,aAAa,GACb,GAAG,SACkB;CACrB,OACE,oBAACA,OAAgB,QAAjB,EAAA,UACE,qBAACA,OAAgB,SAAjB;EACE,aAAU;EACA;EACV,YAAY,aAAa,WAAW,aAAa,KAAA;EACjD,WAAW,GACT,sFACA,yFACA,yCACA,yDACA,4EACA,aAAa,YAAY,oDACzB,SACF;EACA,GAAI;EAbN,UAAA;GAeE,oBAAC,cAAD,EAAc,WAAU,KAAM,CAAA;GAC9B,oBAACA,OAAgB,UAAjB;IAA0B,WAAU;IAAO;GAAmC,CAAA;GAC9E,oBAAC,cAAD,EAAc,WAAU,OAAQ,CAAA;EACT;CACH,CAAA,EAAA,CAAA;AAE5B;AAaA,SAAgB,WAAW,EAAE,WAAW,OAAO,UAAU,GAAG,SAA0B;CACpF,OACE,qBAACA,OAAgB,MAAjB;EACE,aAAU;EACV,WAAW,GACT,uHACA,wDACA,0EACA,kEACA,qFACA,SACF;EACA,GAAI;EAVN,UAAA,CAYG,UAAU,KAAA,IACT,oBAACA,OAAgB,UAAjB,EAA2B,SAAmC,CAAA,IAE9D,qBAAA,UAAA,EAAA,UAAA,CACE,oBAACA,OAAgB,UAAjB,EAAA,UAA2B,MAAgC,CAAA,GAC1D,QACD,EAAA,CAAA,GAGJ,oBAAC,QAAD;GAAM,WAAU;GACd,UAAA,oBAACA,OAAgB,eAAjB,EAAA,UACE,oBAAC,OAAD;IAAK,SAAQ;IAAY,MAAK;IAAO,eAAY;IAAO,WAAU;IAChE,UAAA,oBAAC,QAAD;KACE,GAAE;KACF,QAAO;KACP,aAAY;KACZ,eAAc;KACd,gBAAe;IAChB,CAAA;GACE,CAAA,EACwB,CAAA;EAC3B,CAAA,CACc;;AAE1B;AAEA,SAAgB,YAAY,EAC1B,WACA,GAAG,SACmD;CACtD,OACE,oBAACA,OAAgB,OAAjB;EACE,aAAU;EACV,WAAW,GAAG,yDAAyD,SAAS;EAChF,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,gBAAgB,EAC9B,WACA,GAAG,SACuD;CAC1D,OACE,oBAACA,OAAgB,WAAjB;EACE,aAAU;EACV,WAAW,GAAG,6BAA6B,SAAS;EACpD,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,2 @@
1
+ import { Separator, SeparatorProps } from "./separator.js";
2
+ export { Separator, type SeparatorProps };
@@ -0,0 +1,2 @@
1
+ import { Separator } from "./separator.js";
2
+ export { Separator };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/separator/meta.ts
3
+ const meta = defineMeta({
4
+ name: "separator",
5
+ title: "Separator",
6
+ description: "A horizontal or vertical rule that divides content.",
7
+ category: "layout",
8
+ status: "stable",
9
+ dependencies: ["radix-ui"],
10
+ registryDependencies: [],
11
+ files: ["separator.tsx"],
12
+ a11y: "Decorative by default and hidden from assistive technology. Set decorative={false} to expose it as a semantic separator when it divides meaningfully distinct groups."
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/separator/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"separator\",\n title: \"Separator\",\n description: \"A horizontal or vertical rule that divides content.\",\n category: \"layout\",\n status: \"stable\",\n dependencies: [\"radix-ui\"],\n registryDependencies: [],\n files: [\"separator.tsx\"],\n a11y:\n \"Decorative by default and hidden from assistive technology. Set decorative={false} to \" +\n \"expose it as a semantic separator when it divides meaningfully distinct groups.\",\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;AAEJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { Separator } from "radix-ui";
2
+ import { ComponentPropsWithRef } from "react";
3
+ //#region src/components/separator/separator.d.ts
4
+ type SeparatorProps = ComponentPropsWithRef<typeof Separator.Root>;
5
+ /**
6
+ * Visual or semantic divider.
7
+ *
8
+ * Defaults to decorative, which removes it from the accessibility tree. Pass
9
+ * `decorative={false}` only when the rule genuinely separates two groups of
10
+ * content that a screen reader user needs to know are distinct.
11
+ */
12
+ declare function Separator$1({ className, orientation, decorative, ...props }: SeparatorProps): import("react").JSX.Element;
13
+ //#endregion
14
+ export { Separator$1 as Separator, SeparatorProps };
15
+ //# sourceMappingURL=separator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"separator.d.ts","names":[],"sources":["../../../src/components/separator/separator.tsx"],"mappings":";;;KAKY,iBAAiB,6BAA6B,UAAmB;;;;;;;;iBAS7D,cACd,WACA,aACA,eACG,SACF,iCAAc,IAAA"}
@@ -0,0 +1,23 @@
1
+ import { cn } from "../../lib/utils.js";
2
+ import { Separator } from "radix-ui";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/components/separator/separator.tsx
5
+ /**
6
+ * Visual or semantic divider.
7
+ *
8
+ * Defaults to decorative, which removes it from the accessibility tree. Pass
9
+ * `decorative={false}` only when the rule genuinely separates two groups of
10
+ * content that a screen reader user needs to know are distinct.
11
+ */
12
+ function Separator$1({ className, orientation = "horizontal", decorative = true, ...props }) {
13
+ return /* @__PURE__ */ jsx(Separator.Root, {
14
+ orientation,
15
+ decorative,
16
+ className: cn("shrink-0 bg-border", orientation === "horizontal" ? "h-px w-full" : "h-full w-px", className),
17
+ ...props
18
+ });
19
+ }
20
+ //#endregion
21
+ export { Separator$1 as Separator };
22
+
23
+ //# sourceMappingURL=separator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"separator.js","names":["Separator","SeparatorPrimitive"],"sources":["../../../src/components/separator/separator.tsx"],"sourcesContent":["import { Separator as SeparatorPrimitive } from \"radix-ui\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nexport type SeparatorProps = ComponentPropsWithRef<typeof SeparatorPrimitive.Root>;\n\n/**\n * Visual or semantic divider.\n *\n * Defaults to decorative, which removes it from the accessibility tree. Pass\n * `decorative={false}` only when the rule genuinely separates two groups of\n * content that a screen reader user needs to know are distinct.\n */\nexport function Separator({\n className,\n orientation = \"horizontal\",\n decorative = true,\n ...props\n}: SeparatorProps) {\n return (\n <SeparatorPrimitive.Root\n orientation={orientation}\n decorative={decorative}\n className={cn(\n \"shrink-0 bg-border\",\n orientation === \"horizontal\" ? \"h-px w-full\" : \"h-full w-px\",\n className,\n )}\n {...props}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;AAcA,SAAgBA,YAAU,EACxB,WACA,cAAc,cACd,aAAa,MACb,GAAG,SACc;CACjB,OACE,oBAACC,UAAmB,MAApB;EACe;EACD;EACZ,WAAW,GACT,sBACA,gBAAgB,eAAe,gBAAgB,eAC/C,SACF;EACA,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,2 @@
1
+ import { Sheet, SheetClose, SheetContent, SheetContentProps, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants } from "./sheet.js";
2
+ export { Sheet, SheetClose, SheetContent, type SheetContentProps, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants };
@@ -0,0 +1,2 @@
1
+ import { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants } from "./sheet.js";
2
+ export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/sheet/meta.ts
3
+ const meta = defineMeta({
4
+ name: "sheet",
5
+ title: "Sheet",
6
+ description: "A panel that enters from an edge of the viewport for secondary content.",
7
+ category: "overlay",
8
+ status: "stable",
9
+ dependencies: ["class-variance-authority", "radix-ui"],
10
+ registryDependencies: [],
11
+ files: ["sheet.tsx"],
12
+ a11y: "Modal, with the same focus trapping and restoration as Dialog. Always render a SheetTitle. For a side navigation sheet, put a nav landmark inside rather than relying on placement to convey the role."
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/sheet/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"sheet\",\n title: \"Sheet\",\n description: \"A panel that enters from an edge of the viewport for secondary content.\",\n category: \"overlay\",\n status: \"stable\",\n dependencies: [\"class-variance-authority\", \"radix-ui\"],\n registryDependencies: [],\n files: [\"sheet.tsx\"],\n a11y:\n \"Modal, with the same focus trapping and restoration as Dialog. Always render a SheetTitle. \" +\n \"For a side navigation sheet, put a nav landmark inside rather than relying on placement \" +\n \"to convey the role.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,4BAA4B,UAAU;CACrD,sBAAsB,CAAC;CACvB,OAAO,CAAC,WAAW;CACnB,MACE;AAGJ,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { Dialog } from "radix-ui";
2
+ import { VariantProps } from "class-variance-authority";
3
+ import { ComponentPropsWithRef } from "react";
4
+ //#region src/components/sheet/sheet.d.ts
5
+ /**
6
+ * A panel that enters from an edge of the viewport.
7
+ *
8
+ * Built on the same modal primitive as Dialog, so focus management, Escape
9
+ * handling and page inerting are identical; only the placement and motion
10
+ * differ. Reach for Sheet when the content is a secondary surface — filters,
11
+ * details, navigation — rather than a decision that must be answered.
12
+ */
13
+ declare const Sheet: import("react").FC<Dialog.DialogProps>;
14
+ declare const SheetTrigger: import("react").ForwardRefExoticComponent<Dialog.DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
15
+ declare const SheetPortal: import("react").FC<Dialog.DialogPortalProps>;
16
+ declare const SheetClose: import("react").ForwardRefExoticComponent<Dialog.DialogCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
17
+ declare function SheetOverlay({ className, ...props }: ComponentPropsWithRef<typeof Dialog.Overlay>): import("react").JSX.Element;
18
+ declare const sheetVariants: (props?: ({
19
+ side?: "top" | "bottom" | "left" | "right" | null | undefined;
20
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
21
+ interface SheetContentProps extends ComponentPropsWithRef<typeof Dialog.Content>, VariantProps<typeof sheetVariants> {
22
+ showCloseButton?: boolean;
23
+ }
24
+ declare function SheetContent({ className, children, side, showCloseButton, ...props }: SheetContentProps): import("react").JSX.Element;
25
+ declare function SheetHeader({ className, ...props }: ComponentPropsWithRef<"div">): import("react").JSX.Element;
26
+ declare function SheetFooter({ className, ...props }: ComponentPropsWithRef<"div">): import("react").JSX.Element;
27
+ declare function SheetTitle({ className, ...props }: ComponentPropsWithRef<typeof Dialog.Title>): import("react").JSX.Element;
28
+ declare function SheetDescription({ className, ...props }: ComponentPropsWithRef<typeof Dialog.Description>): import("react").JSX.Element;
29
+ //#endregion
30
+ export { Sheet, SheetClose, SheetContent, SheetContentProps, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants };
31
+ //# sourceMappingURL=sheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheet.d.ts","names":[],"sources":["../../../src/components/sheet/sheet.tsx"],"mappings":";;;;;;;;;;;;cAiBa,uBAAK,GAAA,OAAA;cACL,8BAAY,0BAAA,OAAA,qCAAA,cAAA;cACZ,6BAAW,GAAA,OAAA;cACX,4BAAU,0BAAA,OAAA,mCAAA,cAAA;iBAEP,eACd,cACG,SACF,6BAA6B,OAAe,2BAAQ,IAAA;cAcjD,gBAAa;;6CAoBlB;UAEgB,0BAEb,6BAA6B,OAAe,UAC5C,oBAAoB;EACtB;;iBAGc,eACd,WACA,UACA,MACA,oBACG,SACF,oCAAiB,IAAA;iBAoCJ,cAAc,cAAc,SAAS,+CAA4B,IAAA;iBAUjE,cAAc,cAAc,SAAS,+CAA4B,IAAA;iBAajE,aACd,cACG,SACF,6BAA6B,OAAe,yBAAM,IAAA;iBAUrC,mBACd,cACG,SACF,6BAA6B,OAAe,+BAAY,IAAA"}
@@ -0,0 +1,90 @@
1
+ "use client";
2
+ import { focusRing } from "../../lib/styles.js";
3
+ import { cn } from "../../lib/utils.js";
4
+ import { Dialog } from "radix-ui";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { cva } from "class-variance-authority";
7
+ //#region src/components/sheet/sheet.tsx
8
+ /**
9
+ * A panel that enters from an edge of the viewport.
10
+ *
11
+ * Built on the same modal primitive as Dialog, so focus management, Escape
12
+ * handling and page inerting are identical; only the placement and motion
13
+ * differ. Reach for Sheet when the content is a secondary surface — filters,
14
+ * details, navigation — rather than a decision that must be answered.
15
+ */
16
+ const Sheet = Dialog.Root;
17
+ const SheetTrigger = Dialog.Trigger;
18
+ const SheetPortal = Dialog.Portal;
19
+ const SheetClose = Dialog.Close;
20
+ function SheetOverlay({ className, ...props }) {
21
+ return /* @__PURE__ */ jsx(Dialog.Overlay, {
22
+ "data-slot": "sheet-overlay",
23
+ className: cn("fixed inset-0 z-[var(--z-overlay)] bg-overlay", "data-[state=closed]:animate-overlay-out data-[state=open]:animate-overlay-in", className),
24
+ ...props
25
+ });
26
+ }
27
+ const sheetVariants = cva(cn("fixed z-[var(--z-drawer)] flex flex-col gap-4 bg-card p-6 text-card-foreground shadow-xl", "data-[state=closed]:animate-slide-out data-[state=open]:animate-slide-in"), {
28
+ variants: { side: {
29
+ top: "inset-x-0 top-0 border-b [--slide-y:-100%]",
30
+ bottom: "inset-x-0 bottom-0 border-t [--slide-y:100%]",
31
+ left: "inset-y-0 left-0 h-full w-3/4 max-w-sm border-r [--slide-x:-100%]",
32
+ right: "inset-y-0 right-0 h-full w-3/4 max-w-sm border-l [--slide-x:100%]"
33
+ } },
34
+ defaultVariants: { side: "right" }
35
+ });
36
+ function SheetContent({ className, children, side, showCloseButton = true, ...props }) {
37
+ return /* @__PURE__ */ jsxs(SheetPortal, { children: [/* @__PURE__ */ jsx(SheetOverlay, {}), /* @__PURE__ */ jsxs(Dialog.Content, {
38
+ "data-slot": "sheet-content",
39
+ className: cn(sheetVariants({ side }), className),
40
+ ...props,
41
+ children: [children, showCloseButton ? /* @__PURE__ */ jsx(Dialog.Close, {
42
+ "data-slot": "sheet-close",
43
+ "aria-label": "Close",
44
+ className: cn("absolute top-4 right-4 grid size-7 place-items-center rounded-md text-muted-foreground", "transition-colors duration-[var(--duration-fast)] hover:bg-accent hover:text-foreground", "[&_svg]:size-4", focusRing),
45
+ children: /* @__PURE__ */ jsx("svg", {
46
+ viewBox: "0 0 24 24",
47
+ fill: "none",
48
+ "aria-hidden": "true",
49
+ children: /* @__PURE__ */ jsx("path", {
50
+ d: "m6 6 12 12M18 6 6 18",
51
+ stroke: "currentColor",
52
+ strokeWidth: "2",
53
+ strokeLinecap: "round"
54
+ })
55
+ })
56
+ }) : null]
57
+ })] });
58
+ }
59
+ function SheetHeader({ className, ...props }) {
60
+ return /* @__PURE__ */ jsx("div", {
61
+ "data-slot": "sheet-header",
62
+ className: cn("flex flex-col gap-1.5 pr-8 text-left", className),
63
+ ...props
64
+ });
65
+ }
66
+ function SheetFooter({ className, ...props }) {
67
+ return /* @__PURE__ */ jsx("div", {
68
+ "data-slot": "sheet-footer",
69
+ className: cn("mt-auto flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className),
70
+ ...props
71
+ });
72
+ }
73
+ function SheetTitle({ className, ...props }) {
74
+ return /* @__PURE__ */ jsx(Dialog.Title, {
75
+ "data-slot": "sheet-title",
76
+ className: cn("text-lg leading-tight font-semibold tracking-tight", className),
77
+ ...props
78
+ });
79
+ }
80
+ function SheetDescription({ className, ...props }) {
81
+ return /* @__PURE__ */ jsx(Dialog.Description, {
82
+ "data-slot": "sheet-description",
83
+ className: cn("text-sm text-muted-foreground", className),
84
+ ...props
85
+ });
86
+ }
87
+ //#endregion
88
+ export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, sheetVariants };
89
+
90
+ //# sourceMappingURL=sheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheet.js","names":["SheetPrimitive"],"sources":["../../../src/components/sheet/sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { Dialog as SheetPrimitive } from \"radix-ui\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * A panel that enters from an edge of the viewport.\n *\n * Built on the same modal primitive as Dialog, so focus management, Escape\n * handling and page inerting are identical; only the placement and motion\n * differ. Reach for Sheet when the content is a secondary surface — filters,\n * details, navigation — rather than a decision that must be answered.\n */\nexport const Sheet = SheetPrimitive.Root;\nexport const SheetTrigger = SheetPrimitive.Trigger;\nexport const SheetPortal = SheetPrimitive.Portal;\nexport const SheetClose = SheetPrimitive.Close;\n\nexport function SheetOverlay({\n className,\n ...props\n}: ComponentPropsWithRef<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n \"fixed inset-0 z-[var(--z-overlay)] bg-overlay\",\n \"data-[state=closed]:animate-overlay-out data-[state=open]:animate-overlay-in\",\n className,\n )}\n {...props}\n />\n );\n}\n\nconst sheetVariants = cva(\n cn(\n \"fixed z-[var(--z-drawer)] flex flex-col gap-4 bg-card p-6 text-card-foreground shadow-xl\",\n \"data-[state=closed]:animate-slide-out data-[state=open]:animate-slide-in\",\n ),\n {\n variants: {\n // --slide-x/--slide-y feed the shared slide keyframes, so all four sides\n // reuse one animation pair instead of eight bespoke keyframes.\n side: {\n top: \"inset-x-0 top-0 border-b [--slide-y:-100%]\",\n bottom: \"inset-x-0 bottom-0 border-t [--slide-y:100%]\",\n left: \"inset-y-0 left-0 h-full w-3/4 max-w-sm border-r [--slide-x:-100%]\",\n right: \"inset-y-0 right-0 h-full w-3/4 max-w-sm border-l [--slide-x:100%]\",\n },\n },\n defaultVariants: {\n side: \"right\",\n },\n },\n);\n\nexport interface SheetContentProps\n extends\n ComponentPropsWithRef<typeof SheetPrimitive.Content>,\n VariantProps<typeof sheetVariants> {\n showCloseButton?: boolean;\n}\n\nexport function SheetContent({\n className,\n children,\n side,\n showCloseButton = true,\n ...props\n}: SheetContentProps) {\n return (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n className={cn(sheetVariants({ side }), className)}\n {...props}\n >\n {children}\n {showCloseButton ? (\n <SheetPrimitive.Close\n data-slot=\"sheet-close\"\n aria-label=\"Close\"\n className={cn(\n \"absolute top-4 right-4 grid size-7 place-items-center rounded-md text-muted-foreground\",\n \"transition-colors duration-[var(--duration-fast)] hover:bg-accent hover:text-foreground\",\n \"[&_svg]:size-4\",\n focusRing,\n )}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"m6 6 12 12M18 6 6 18\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n </SheetPrimitive.Close>\n ) : null}\n </SheetPrimitive.Content>\n </SheetPortal>\n );\n}\n\nexport function SheetHeader({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn(\"flex flex-col gap-1.5 pr-8 text-left\", className)}\n {...props}\n />\n );\n}\n\nexport function SheetFooter({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\n \"mt-auto flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function SheetTitle({\n className,\n ...props\n}: ComponentPropsWithRef<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn(\"text-lg leading-tight font-semibold tracking-tight\", className)}\n {...props}\n />\n );\n}\n\nexport function SheetDescription({\n className,\n ...props\n}: ComponentPropsWithRef<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport { sheetVariants };\n"],"mappings":";;;;;;;;;;;;;;;AAiBA,MAAa,QAAQA,OAAe;AACpC,MAAa,eAAeA,OAAe;AAC3C,MAAa,cAAcA,OAAe;AAC1C,MAAa,aAAaA,OAAe;AAEzC,SAAgB,aAAa,EAC3B,WACA,GAAG,SACoD;CACvD,OACE,oBAACA,OAAe,SAAhB;EACE,aAAU;EACV,WAAW,GACT,iDACA,gFACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,MAAM,gBAAgB,IACpB,GACE,4FACA,0EACF,GACA;CACE,UAAU,EAGR,MAAM;EACJ,KAAK;EACL,QAAQ;EACR,MAAM;EACN,OAAO;CACT,EACF;CACA,iBAAiB,EACf,MAAM,QACR;AACF,CACF;AASA,SAAgB,aAAa,EAC3B,WACA,UACA,MACA,kBAAkB,MAClB,GAAG,SACiB;CACpB,OACE,qBAAC,aAAD,EAAA,UAAA,CACE,oBAAC,cAAD,CAAe,CAAA,GACf,qBAACA,OAAe,SAAhB;EACE,aAAU;EACV,WAAW,GAAG,cAAc,EAAE,KAAK,CAAC,GAAG,SAAS;EAChD,GAAI;EAHN,UAAA,CAKG,UACA,kBACC,oBAACA,OAAe,OAAhB;GACE,aAAU;GACV,cAAW;GACX,WAAW,GACT,0FACA,2FACA,kBACA,SACF;GAEA,UAAA,oBAAC,OAAD;IAAK,SAAQ;IAAY,MAAK;IAAO,eAAY;IAC/C,UAAA,oBAAC,QAAD;KACE,GAAE;KACF,QAAO;KACP,aAAY;KACZ,eAAc;IACf,CAAA;GACE,CAAA;EACe,CAAA,IACpB,IACkB;CACb,CAAA,CAAA,EAAA,CAAA;AAEjB;AAEA,SAAgB,YAAY,EAAE,WAAW,GAAG,SAAuC;CACjF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,wCAAwC,SAAS;EAC/D,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,YAAY,EAAE,WAAW,GAAG,SAAuC;CACjF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,kEACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,WAAW,EACzB,WACA,GAAG,SACkD;CACrD,OACE,oBAACA,OAAe,OAAhB;EACE,aAAU;EACV,WAAW,GAAG,sDAAsD,SAAS;EAC7E,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,iBAAiB,EAC/B,WACA,GAAG,SACwD;CAC3D,OACE,oBAACA,OAAe,aAAhB;EACE,aAAU;EACV,WAAW,GAAG,iCAAiC,SAAS;EACxD,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,2 @@
1
+ import { Skeleton } from "./skeleton.js";
2
+ export { Skeleton };
@@ -0,0 +1,2 @@
1
+ import { Skeleton } from "./skeleton.js";
2
+ export { Skeleton };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/skeleton/meta.ts
3
+ const meta = defineMeta({
4
+ name: "skeleton",
5
+ title: "Skeleton",
6
+ description: "A shaped placeholder that holds layout while content loads.",
7
+ category: "feedback",
8
+ status: "stable",
9
+ dependencies: [],
10
+ registryDependencies: [],
11
+ files: ["skeleton.tsx"],
12
+ a11y: "Hidden from assistive technology. Put aria-busy on the container that owns the loading data so the state is announced once instead of once per placeholder."
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/skeleton/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"skeleton\",\n title: \"Skeleton\",\n description: \"A shaped placeholder that holds layout while content loads.\",\n category: \"feedback\",\n status: \"stable\",\n dependencies: [],\n registryDependencies: [],\n files: [\"skeleton.tsx\"],\n a11y:\n \"Hidden from assistive technology. Put aria-busy on the container that owns the loading \" +\n \"data so the state is announced once instead of once per placeholder.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB,CAAC;CACvB,OAAO,CAAC,cAAc;CACtB,MACE;AAEJ,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { ComponentPropsWithRef } from "react";
2
+ //#region src/components/skeleton/skeleton.d.ts
3
+ /**
4
+ * Placeholder shown while content loads.
5
+ *
6
+ * Rendered aria-hidden: the shape is meaningless to a screen reader, and the
7
+ * loading state belongs on the region that owns the data (via aria-busy) rather
8
+ * than on each individual placeholder.
9
+ *
10
+ * A `span` set to `display: block`, not a `div`. A skeleton stands in for
11
+ * whatever was going to be there, so it gets placed inside paragraphs, headings
12
+ * and labels as often as inside layout containers — and a `div` inside a `p` is
13
+ * invalid HTML that the parser corrects, which breaks hydration rather than
14
+ * merely looking wrong. Phrasing content is valid in both places, and `block`
15
+ * keeps the box behaviour identical.
16
+ */
17
+ declare function Skeleton({ className, ...props }: ComponentPropsWithRef<"span">): import("react").JSX.Element;
18
+ //#endregion
19
+ export { Skeleton };
20
+ //# sourceMappingURL=skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.d.ts","names":[],"sources":["../../../src/components/skeleton/skeleton.tsx"],"mappings":";;;;;;;;;;;;;;;;iBAkBgB,WAAW,cAAc,SAAS,gDAA6B,IAAA"}
@@ -0,0 +1,29 @@
1
+ import { cn } from "../../lib/utils.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/components/skeleton/skeleton.tsx
4
+ /**
5
+ * Placeholder shown while content loads.
6
+ *
7
+ * Rendered aria-hidden: the shape is meaningless to a screen reader, and the
8
+ * loading state belongs on the region that owns the data (via aria-busy) rather
9
+ * than on each individual placeholder.
10
+ *
11
+ * A `span` set to `display: block`, not a `div`. A skeleton stands in for
12
+ * whatever was going to be there, so it gets placed inside paragraphs, headings
13
+ * and labels as often as inside layout containers — and a `div` inside a `p` is
14
+ * invalid HTML that the parser corrects, which breaks hydration rather than
15
+ * merely looking wrong. Phrasing content is valid in both places, and `block`
16
+ * keeps the box behaviour identical.
17
+ */
18
+ function Skeleton({ className, ...props }) {
19
+ return /* @__PURE__ */ jsx("span", {
20
+ "data-slot": "skeleton",
21
+ "aria-hidden": "true",
22
+ className: cn("block animate-pulse-soft rounded-md bg-muted", className),
23
+ ...props
24
+ });
25
+ }
26
+ //#endregion
27
+ export { Skeleton };
28
+
29
+ //# sourceMappingURL=skeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.js","names":[],"sources":["../../../src/components/skeleton/skeleton.tsx"],"sourcesContent":["import type { ComponentPropsWithRef } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n/**\n * Placeholder shown while content loads.\n *\n * Rendered aria-hidden: the shape is meaningless to a screen reader, and the\n * loading state belongs on the region that owns the data (via aria-busy) rather\n * than on each individual placeholder.\n *\n * A `span` set to `display: block`, not a `div`. A skeleton stands in for\n * whatever was going to be there, so it gets placed inside paragraphs, headings\n * and labels as often as inside layout containers — and a `div` inside a `p` is\n * invalid HTML that the parser corrects, which breaks hydration rather than\n * merely looking wrong. Phrasing content is valid in both places, and `block`\n * keeps the box behaviour identical.\n */\nexport function Skeleton({ className, ...props }: ComponentPropsWithRef<\"span\">) {\n return (\n <span\n data-slot=\"skeleton\"\n aria-hidden=\"true\"\n className={cn(\"block animate-pulse-soft rounded-md bg-muted\", className)}\n {...props}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAkBA,SAAgB,SAAS,EAAE,WAAW,GAAG,SAAwC;CAC/E,OACE,oBAAC,QAAD;EACE,aAAU;EACV,eAAY;EACZ,WAAW,GAAG,gDAAgD,SAAS;EACvE,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,2 @@
1
+ import { Slider, SliderProps } from "./slider.js";
2
+ export { Slider, type SliderProps };
@@ -0,0 +1,2 @@
1
+ import { Slider } from "./slider.js";
2
+ export { Slider };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/slider/meta.ts
3
+ const meta = defineMeta({
4
+ name: "slider",
5
+ title: "Slider",
6
+ description: "Selects a value, or a range, from a continuous span.",
7
+ category: "form",
8
+ status: "stable",
9
+ dependencies: ["radix-ui"],
10
+ registryDependencies: [],
11
+ files: ["slider.tsx"],
12
+ a11y: "Each thumb is a role=\"slider\" with arrow keys, Home/End and Page Up/Down. The name is forwarded onto the thumbs, since the root has no role — a range slider should name each thumb separately with thumbLabels. A development-only warning fires if a thumb would be unnamed. Pass aria-valuetext when the raw number is not meaningful on its own (a price, a duration). Show the current value on screen too — a slider is imprecise, so pair it with a numeric input when exactness matters."
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/slider/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"slider\",\n title: \"Slider\",\n description: \"Selects a value, or a range, from a continuous span.\",\n category: \"form\",\n status: \"stable\",\n dependencies: [\"radix-ui\"],\n registryDependencies: [],\n files: [\"slider.tsx\"],\n a11y:\n 'Each thumb is a role=\"slider\" with arrow keys, Home/End and Page Up/Down. The name is ' +\n \"forwarded onto the thumbs, since the root has no role — a range slider should name each \" +\n \"thumb separately with thumbLabels. A development-only warning fires if a thumb would be \" +\n \"unnamed. Pass aria-valuetext when the raw number is not meaningful on its own \" +\n \"(a price, a duration). Show the current value on screen too — a slider is imprecise, so \" +\n \"pair it with a numeric input when exactness matters.\",\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,YAAY;CACpB,MACE;AAMJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { Slider } from "radix-ui";
2
+ import { ComponentPropsWithRef } from "react";
3
+ //#region src/components/slider/slider.d.ts
4
+ /**
5
+ * Selects a value, or a range, from a continuous span.
6
+ *
7
+ * Renders one thumb per value, so a range slider is just two values. Sliders
8
+ * are imprecise by nature: if the exact number matters, pair it with a numeric
9
+ * input rather than asking people to land on a pixel.
10
+ */
11
+ interface SliderProps extends ComponentPropsWithRef<typeof Slider.Root> {
12
+ /**
13
+ * Accessible name per thumb, in order.
14
+ *
15
+ * A range slider is two independent `role="slider"` controls, and naming both
16
+ * of them "Price" tells a screen reader user nothing about which one they are
17
+ * on. Give them distinct names — "Minimum price", "Maximum price".
18
+ */
19
+ thumbLabels?: string[];
20
+ /**
21
+ * Spoken value per thumb, in order, for values whose raw number is not
22
+ * meaningful on its own — a price, a duration, a rating.
23
+ */
24
+ thumbValueTexts?: string[];
25
+ }
26
+ declare function Slider$1({ className, value, defaultValue, min, max, thumbLabels, thumbValueTexts, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-valuetext": ariaValueText, ...props }: SliderProps): import("react").JSX.Element;
27
+ //#endregion
28
+ export { Slider$1 as Slider, SliderProps };
29
+ //# sourceMappingURL=slider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slider.d.ts","names":[],"sources":["../../../src/components/slider/slider.tsx"],"mappings":";;;;;;;;;;UAeiB,oBAAoB,6BAA6B,OAAgB;;;;;;;;EAQhF;;;;;EAKA;;iBAGc,WACd,WACA,OACA,cACA,KACA,KACA,aACA,+BAGc,8BACK,kCACD,kBACf,SACF,8BAAW,IAAA"}