@codefast/ui 0.0.8 → 0.0.10

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 (459) hide show
  1. package/dist/accordion.d.mts +8 -4
  2. package/dist/accordion.d.ts +8 -4
  3. package/dist/accordion.js +42 -32
  4. package/dist/accordion.js.map +1 -1
  5. package/dist/accordion.mjs +42 -32
  6. package/dist/accordion.mjs.map +1 -1
  7. package/dist/alert-dialog.d.mts +17 -8
  8. package/dist/alert-dialog.d.ts +17 -8
  9. package/dist/alert-dialog.js +47 -75
  10. package/dist/alert-dialog.js.map +1 -1
  11. package/dist/alert-dialog.mjs +47 -75
  12. package/dist/alert-dialog.mjs.map +1 -1
  13. package/dist/alert.d.mts +10 -5
  14. package/dist/alert.d.ts +10 -5
  15. package/dist/alert.js +5 -26
  16. package/dist/alert.js.map +1 -1
  17. package/dist/alert.mjs +5 -26
  18. package/dist/alert.mjs.map +1 -1
  19. package/dist/aspect-ratio.d.mts +2 -1
  20. package/dist/aspect-ratio.d.ts +2 -1
  21. package/dist/aspect-ratio.js.map +1 -1
  22. package/dist/aspect-ratio.mjs.map +1 -1
  23. package/dist/avatar.d.mts +7 -4
  24. package/dist/avatar.d.ts +7 -4
  25. package/dist/avatar.js +3 -16
  26. package/dist/avatar.js.map +1 -1
  27. package/dist/avatar.mjs +3 -16
  28. package/dist/avatar.mjs.map +1 -1
  29. package/dist/badge.d.mts +5 -2
  30. package/dist/badge.d.ts +5 -2
  31. package/dist/badge.js +1 -5
  32. package/dist/badge.js.map +1 -1
  33. package/dist/badge.mjs +1 -5
  34. package/dist/badge.mjs.map +1 -1
  35. package/dist/blockquote.d.mts +5 -4
  36. package/dist/blockquote.d.ts +5 -4
  37. package/dist/blockquote.js.map +1 -1
  38. package/dist/blockquote.mjs.map +1 -1
  39. package/dist/box.d.mts +1 -1
  40. package/dist/box.d.ts +1 -1
  41. package/dist/box.js +4 -6
  42. package/dist/box.js.map +1 -1
  43. package/dist/box.mjs +4 -6
  44. package/dist/box.mjs.map +1 -1
  45. package/dist/breadcrumb.d.mts +18 -11
  46. package/dist/breadcrumb.d.ts +18 -11
  47. package/dist/breadcrumb.js +12 -39
  48. package/dist/breadcrumb.js.map +1 -1
  49. package/dist/breadcrumb.mjs +12 -39
  50. package/dist/breadcrumb.mjs.map +1 -1
  51. package/dist/button.d.mts +4 -2
  52. package/dist/button.d.ts +4 -2
  53. package/dist/button.js +3 -2
  54. package/dist/button.mjs +2 -1
  55. package/dist/calendar.d.mts +3 -2
  56. package/dist/calendar.d.ts +3 -2
  57. package/dist/calendar.js +7 -19
  58. package/dist/calendar.js.map +1 -1
  59. package/dist/calendar.mjs +6 -18
  60. package/dist/calendar.mjs.map +1 -1
  61. package/dist/card.d.mts +13 -7
  62. package/dist/card.d.ts +13 -7
  63. package/dist/card.js +7 -44
  64. package/dist/card.js.map +1 -1
  65. package/dist/card.mjs +7 -44
  66. package/dist/card.mjs.map +1 -1
  67. package/dist/carousel.d.mts +13 -8
  68. package/dist/carousel.d.ts +13 -8
  69. package/dist/carousel.js +104 -104
  70. package/dist/carousel.js.map +1 -1
  71. package/dist/carousel.mjs +104 -104
  72. package/dist/carousel.mjs.map +1 -1
  73. package/dist/checkbox-cards.d.mts +15 -0
  74. package/dist/checkbox-cards.d.ts +15 -0
  75. package/dist/checkbox-cards.js +56 -0
  76. package/dist/checkbox-cards.js.map +1 -0
  77. package/dist/checkbox-cards.mjs +56 -0
  78. package/dist/checkbox-cards.mjs.map +1 -0
  79. package/dist/checkbox-group.d.mts +13 -0
  80. package/dist/checkbox-group.d.ts +13 -0
  81. package/dist/checkbox-group.js +44 -0
  82. package/dist/checkbox-group.js.map +1 -0
  83. package/dist/checkbox-group.mjs +44 -0
  84. package/dist/checkbox-group.mjs.map +1 -0
  85. package/dist/checkbox-group.primitive.d.mts +38 -0
  86. package/dist/checkbox-group.primitive.d.ts +38 -0
  87. package/dist/checkbox-group.primitive.js +19 -0
  88. package/dist/checkbox-group.primitive.js.map +1 -0
  89. package/dist/checkbox-group.primitive.mjs +19 -0
  90. package/dist/checkbox-group.primitive.mjs.map +1 -0
  91. package/dist/checkbox.d.mts +3 -2
  92. package/dist/checkbox.d.ts +3 -2
  93. package/dist/checkbox.js +5 -1
  94. package/dist/checkbox.js.map +1 -1
  95. package/dist/checkbox.mjs +5 -1
  96. package/dist/checkbox.mjs.map +1 -1
  97. package/dist/chunk-3ZZ3SRTJ.js +148 -0
  98. package/dist/chunk-3ZZ3SRTJ.js.map +1 -0
  99. package/dist/chunk-5UHPKXF4.mjs +60 -0
  100. package/dist/chunk-5UHPKXF4.mjs.map +1 -0
  101. package/dist/chunk-EWS3N4OZ.mjs +148 -0
  102. package/dist/chunk-EWS3N4OZ.mjs.map +1 -0
  103. package/dist/{chunk-PTD4AMHI.mjs → chunk-FGI3JA75.mjs} +1 -1
  104. package/dist/chunk-FGI3JA75.mjs.map +1 -0
  105. package/dist/{chunk-RTKEO347.js → chunk-IVYGBU4G.js} +1 -1
  106. package/dist/chunk-IVYGBU4G.js.map +1 -0
  107. package/dist/chunk-IXEJO7ZP.js +86 -0
  108. package/dist/chunk-IXEJO7ZP.js.map +1 -0
  109. package/dist/chunk-J6COVJTP.js +60 -0
  110. package/dist/chunk-J6COVJTP.js.map +1 -0
  111. package/dist/chunk-JULVZPCS.mjs +120 -0
  112. package/dist/chunk-JULVZPCS.mjs.map +1 -0
  113. package/dist/chunk-LNSEYAPJ.js +121 -0
  114. package/dist/chunk-LNSEYAPJ.js.map +1 -0
  115. package/dist/chunk-MOJNV3XZ.js +120 -0
  116. package/dist/chunk-MOJNV3XZ.js.map +1 -0
  117. package/dist/{chunk-U2WDUCW3.js → chunk-NEP3JDVQ.js} +31 -6
  118. package/dist/chunk-NEP3JDVQ.js.map +1 -0
  119. package/dist/chunk-OK63Q6EJ.mjs +121 -0
  120. package/dist/chunk-OK63Q6EJ.mjs.map +1 -0
  121. package/dist/{chunk-5GHZ6EXI.js → chunk-ORAVN37L.js} +6 -10
  122. package/dist/chunk-ORAVN37L.js.map +1 -0
  123. package/dist/{chunk-T52N6ZBP.mjs → chunk-XCBBSHAK.mjs} +6 -10
  124. package/dist/chunk-XCBBSHAK.mjs.map +1 -0
  125. package/dist/chunk-XCKLBP2V.mjs +86 -0
  126. package/dist/chunk-XCKLBP2V.mjs.map +1 -0
  127. package/dist/chunk-XHZUPL2U.mjs +81 -0
  128. package/dist/chunk-XHZUPL2U.mjs.map +1 -0
  129. package/dist/code.d.mts +5 -4
  130. package/dist/code.d.ts +5 -4
  131. package/dist/code.js.map +1 -1
  132. package/dist/code.mjs.map +1 -1
  133. package/dist/collapsible.d.mts +4 -1
  134. package/dist/collapsible.d.ts +4 -1
  135. package/dist/collapsible.js.map +1 -1
  136. package/dist/collapsible.mjs.map +1 -1
  137. package/dist/command.d.mts +24 -12
  138. package/dist/command.d.ts +24 -12
  139. package/dist/command.js +9 -40
  140. package/dist/command.js.map +1 -1
  141. package/dist/command.mjs +9 -40
  142. package/dist/command.mjs.map +1 -1
  143. package/dist/container.d.mts +5 -4
  144. package/dist/container.d.ts +5 -4
  145. package/dist/container.js.map +1 -1
  146. package/dist/container.mjs.map +1 -1
  147. package/dist/context-menu.d.mts +31 -16
  148. package/dist/context-menu.d.ts +31 -16
  149. package/dist/context-menu.js +108 -124
  150. package/dist/context-menu.js.map +1 -1
  151. package/dist/context-menu.mjs +109 -125
  152. package/dist/context-menu.mjs.map +1 -1
  153. package/dist/data-table.d.mts +10 -7
  154. package/dist/data-table.d.ts +10 -7
  155. package/dist/data-table.js +131 -149
  156. package/dist/data-table.js.map +1 -1
  157. package/dist/data-table.mjs +120 -138
  158. package/dist/data-table.mjs.map +1 -1
  159. package/dist/dialog.d.mts +14 -6
  160. package/dist/dialog.d.ts +14 -6
  161. package/dist/dialog.js +2 -2
  162. package/dist/dialog.mjs +1 -1
  163. package/dist/drawer.d.mts +12 -4
  164. package/dist/drawer.d.ts +12 -4
  165. package/dist/drawer.js +30 -63
  166. package/dist/drawer.js.map +1 -1
  167. package/dist/drawer.mjs +30 -63
  168. package/dist/drawer.mjs.map +1 -1
  169. package/dist/dropdown-menu.d.mts +29 -15
  170. package/dist/dropdown-menu.d.ts +29 -15
  171. package/dist/dropdown-menu.js +2 -2
  172. package/dist/dropdown-menu.mjs +1 -1
  173. package/dist/em.d.mts +5 -4
  174. package/dist/em.d.ts +5 -4
  175. package/dist/em.js.map +1 -1
  176. package/dist/em.mjs.map +1 -1
  177. package/dist/form.d.mts +14 -6
  178. package/dist/form.d.ts +14 -6
  179. package/dist/form.js +13 -40
  180. package/dist/form.js.map +1 -1
  181. package/dist/form.mjs +13 -40
  182. package/dist/form.mjs.map +1 -1
  183. package/dist/heading.d.mts +6 -5
  184. package/dist/heading.d.ts +6 -5
  185. package/dist/heading.js.map +1 -1
  186. package/dist/heading.mjs.map +1 -1
  187. package/dist/hover-card.d.mts +5 -2
  188. package/dist/hover-card.d.ts +5 -2
  189. package/dist/hover-card.js +15 -13
  190. package/dist/hover-card.js.map +1 -1
  191. package/dist/hover-card.mjs +15 -13
  192. package/dist/hover-card.mjs.map +1 -1
  193. package/dist/input-otp.d.mts +12 -32
  194. package/dist/input-otp.d.ts +12 -32
  195. package/dist/input-otp.js +16 -13
  196. package/dist/input-otp.js.map +1 -1
  197. package/dist/input-otp.mjs +15 -12
  198. package/dist/input-otp.mjs.map +1 -1
  199. package/dist/input.d.mts +6 -3
  200. package/dist/input.d.ts +6 -3
  201. package/dist/input.js +8 -10
  202. package/dist/input.js.map +1 -1
  203. package/dist/input.mjs +8 -10
  204. package/dist/input.mjs.map +1 -1
  205. package/dist/kbd.d.mts +5 -4
  206. package/dist/kbd.d.ts +5 -4
  207. package/dist/kbd.js.map +1 -1
  208. package/dist/kbd.mjs.map +1 -1
  209. package/dist/label.d.mts +3 -2
  210. package/dist/label.d.ts +3 -2
  211. package/dist/label.js +2 -2
  212. package/dist/label.mjs +1 -1
  213. package/dist/menubar.d.mts +32 -17
  214. package/dist/menubar.d.ts +32 -17
  215. package/dist/menubar.js +73 -93
  216. package/dist/menubar.js.map +1 -1
  217. package/dist/menubar.mjs +74 -94
  218. package/dist/menubar.mjs.map +1 -1
  219. package/dist/navigation-menu.d.mts +16 -8
  220. package/dist/navigation-menu.d.ts +16 -8
  221. package/dist/navigation-menu.js +89 -93
  222. package/dist/navigation-menu.js.map +1 -1
  223. package/dist/navigation-menu.mjs +89 -93
  224. package/dist/navigation-menu.mjs.map +1 -1
  225. package/dist/pagination.d.mts +13 -7
  226. package/dist/pagination.d.ts +13 -7
  227. package/dist/pagination.js +18 -55
  228. package/dist/pagination.js.map +1 -1
  229. package/dist/pagination.mjs +18 -55
  230. package/dist/pagination.mjs.map +1 -1
  231. package/dist/popover.d.mts +8 -3
  232. package/dist/popover.d.ts +8 -3
  233. package/dist/popover.js +16 -21
  234. package/dist/popover.js.map +1 -1
  235. package/dist/popover.mjs +16 -21
  236. package/dist/popover.mjs.map +1 -1
  237. package/dist/pre.d.mts +5 -4
  238. package/dist/pre.d.ts +5 -4
  239. package/dist/pre.js.map +1 -1
  240. package/dist/pre.mjs.map +1 -1
  241. package/dist/progress.d.mts +3 -2
  242. package/dist/progress.d.ts +3 -2
  243. package/dist/progress.js +2 -5
  244. package/dist/progress.js.map +1 -1
  245. package/dist/progress.mjs +2 -5
  246. package/dist/progress.mjs.map +1 -1
  247. package/dist/quote.d.mts +5 -4
  248. package/dist/quote.d.ts +5 -4
  249. package/dist/quote.js.map +1 -1
  250. package/dist/quote.mjs.map +1 -1
  251. package/dist/radio-cards.d.mts +9 -0
  252. package/dist/radio-cards.d.ts +9 -0
  253. package/dist/radio-cards.js +36 -0
  254. package/dist/radio-cards.js.map +1 -0
  255. package/dist/radio-cards.mjs +36 -0
  256. package/dist/radio-cards.mjs.map +1 -0
  257. package/dist/radio-group.d.mts +5 -3
  258. package/dist/radio-group.d.ts +5 -3
  259. package/dist/radio-group.js +3 -9
  260. package/dist/radio-group.js.map +1 -1
  261. package/dist/radio-group.mjs +3 -9
  262. package/dist/radio-group.mjs.map +1 -1
  263. package/dist/radio.d.mts +8 -0
  264. package/dist/radio.d.ts +8 -0
  265. package/dist/radio.js +35 -0
  266. package/dist/radio.js.map +1 -0
  267. package/dist/radio.mjs +35 -0
  268. package/dist/radio.mjs.map +1 -0
  269. package/dist/resizable.d.mts +6 -6
  270. package/dist/resizable.d.ts +6 -6
  271. package/dist/resizable.js +4 -6
  272. package/dist/resizable.js.map +1 -1
  273. package/dist/resizable.mjs +4 -6
  274. package/dist/resizable.mjs.map +1 -1
  275. package/dist/scroll-area.d.mts +5 -3
  276. package/dist/scroll-area.d.ts +5 -3
  277. package/dist/scroll-area.js +25 -31
  278. package/dist/scroll-area.js.map +1 -1
  279. package/dist/scroll-area.mjs +25 -31
  280. package/dist/scroll-area.mjs.map +1 -1
  281. package/dist/section.d.mts +5 -4
  282. package/dist/section.d.ts +5 -4
  283. package/dist/section.js.map +1 -1
  284. package/dist/section.mjs.map +1 -1
  285. package/dist/select.d.mts +18 -8
  286. package/dist/select.d.ts +18 -8
  287. package/dist/select.js +2 -2
  288. package/dist/select.mjs +1 -1
  289. package/dist/separator.d.mts +3 -2
  290. package/dist/separator.d.ts +3 -2
  291. package/dist/separator.js +1 -5
  292. package/dist/separator.js.map +1 -1
  293. package/dist/separator.mjs +1 -5
  294. package/dist/separator.mjs.map +1 -1
  295. package/dist/sheet.d.mts +20 -10
  296. package/dist/sheet.d.ts +20 -10
  297. package/dist/sheet.js +35 -76
  298. package/dist/sheet.js.map +1 -1
  299. package/dist/sheet.mjs +35 -76
  300. package/dist/sheet.mjs.map +1 -1
  301. package/dist/skeleton.d.mts +3 -2
  302. package/dist/skeleton.d.ts +3 -2
  303. package/dist/skeleton.js +2 -11
  304. package/dist/skeleton.js.map +1 -1
  305. package/dist/skeleton.mjs +2 -11
  306. package/dist/skeleton.mjs.map +1 -1
  307. package/dist/slider.d.mts +3 -2
  308. package/dist/slider.d.ts +3 -2
  309. package/dist/slider.js +10 -5
  310. package/dist/slider.js.map +1 -1
  311. package/dist/slider.mjs +10 -5
  312. package/dist/slider.mjs.map +1 -1
  313. package/dist/sonner.d.mts +1 -1
  314. package/dist/sonner.d.ts +1 -1
  315. package/dist/sonner.js +1 -6
  316. package/dist/sonner.js.map +1 -1
  317. package/dist/sonner.mjs +1 -6
  318. package/dist/sonner.mjs.map +1 -1
  319. package/dist/spinner.d.mts +8 -0
  320. package/dist/spinner.d.ts +8 -0
  321. package/dist/spinner.js +8 -0
  322. package/dist/spinner.js.map +1 -0
  323. package/dist/spinner.mjs +8 -0
  324. package/dist/spinner.mjs.map +1 -0
  325. package/dist/strong.d.mts +5 -4
  326. package/dist/strong.d.ts +5 -4
  327. package/dist/strong.js.map +1 -1
  328. package/dist/strong.mjs.map +1 -1
  329. package/dist/styles.css +1 -1
  330. package/dist/styles.css.map +1 -1
  331. package/dist/switch.d.mts +3 -2
  332. package/dist/switch.d.ts +3 -2
  333. package/dist/switch.js +2 -1
  334. package/dist/switch.js.map +1 -1
  335. package/dist/switch.mjs +2 -1
  336. package/dist/switch.mjs.map +1 -1
  337. package/dist/table.d.mts +17 -9
  338. package/dist/table.d.ts +17 -9
  339. package/dist/table.js +6 -47
  340. package/dist/table.js.map +1 -1
  341. package/dist/table.mjs +6 -47
  342. package/dist/table.mjs.map +1 -1
  343. package/dist/tabs.d.mts +8 -4
  344. package/dist/tabs.d.ts +8 -4
  345. package/dist/tabs.js +4 -2
  346. package/dist/tabs.js.map +1 -1
  347. package/dist/tabs.mjs +4 -2
  348. package/dist/tabs.mjs.map +1 -1
  349. package/dist/text.d.mts +1 -1
  350. package/dist/text.d.ts +1 -1
  351. package/dist/text.js +4 -6
  352. package/dist/text.js.map +1 -1
  353. package/dist/text.mjs +4 -6
  354. package/dist/text.mjs.map +1 -1
  355. package/dist/textarea.d.mts +3 -2
  356. package/dist/textarea.d.ts +3 -2
  357. package/dist/textarea.js +2 -1
  358. package/dist/textarea.js.map +1 -1
  359. package/dist/textarea.mjs +2 -1
  360. package/dist/textarea.mjs.map +1 -1
  361. package/dist/toggle-group.d.mts +5 -3
  362. package/dist/toggle-group.d.ts +5 -3
  363. package/dist/toggle-group.js +41 -34
  364. package/dist/toggle-group.js.map +1 -1
  365. package/dist/toggle-group.mjs +40 -33
  366. package/dist/toggle-group.mjs.map +1 -1
  367. package/dist/toggle.d.mts +3 -2
  368. package/dist/toggle.d.ts +3 -2
  369. package/dist/toggle.js +2 -2
  370. package/dist/toggle.mjs +1 -1
  371. package/dist/tooltip.d.mts +8 -3
  372. package/dist/tooltip.d.ts +8 -3
  373. package/dist/tooltip.js +15 -20
  374. package/dist/tooltip.js.map +1 -1
  375. package/dist/tooltip.mjs +15 -20
  376. package/dist/tooltip.mjs.map +1 -1
  377. package/package.json +40 -9
  378. package/src/accordion.tsx +63 -40
  379. package/src/alert-dialog.tsx +84 -84
  380. package/src/alert.tsx +25 -32
  381. package/src/aspect-ratio.tsx +3 -1
  382. package/src/avatar.tsx +19 -26
  383. package/src/badge.tsx +8 -9
  384. package/src/blockquote.tsx +9 -7
  385. package/src/box.tsx +8 -7
  386. package/src/breadcrumb.tsx +55 -54
  387. package/src/button.tsx +44 -15
  388. package/src/calendar.tsx +8 -23
  389. package/src/card.tsx +44 -53
  390. package/src/carousel.tsx +152 -134
  391. package/src/checkbox-cards.tsx +68 -0
  392. package/src/checkbox-group.primitive.tsx +199 -0
  393. package/src/checkbox-group.tsx +57 -0
  394. package/src/checkbox.tsx +11 -6
  395. package/src/code.tsx +9 -5
  396. package/src/collapsible.tsx +12 -1
  397. package/src/command.tsx +65 -65
  398. package/src/container.tsx +9 -7
  399. package/src/context-menu.tsx +184 -160
  400. package/src/data-table.tsx +43 -48
  401. package/src/dialog.tsx +68 -71
  402. package/src/drawer.tsx +59 -67
  403. package/src/dropdown-menu.tsx +164 -139
  404. package/src/em.tsx +9 -5
  405. package/src/form.tsx +61 -69
  406. package/src/heading.tsx +10 -8
  407. package/src/hover-card.tsx +30 -18
  408. package/src/input-otp.tsx +40 -26
  409. package/src/input.tsx +16 -15
  410. package/src/kbd.tsx +9 -5
  411. package/src/label.tsx +6 -5
  412. package/src/menubar.tsx +154 -139
  413. package/src/navigation-menu.tsx +118 -102
  414. package/src/pagination.tsx +39 -49
  415. package/src/popover.tsx +41 -27
  416. package/src/pre.tsx +9 -5
  417. package/src/progress.tsx +8 -10
  418. package/src/quote.tsx +9 -5
  419. package/src/radio-cards.tsx +50 -0
  420. package/src/radio-group.tsx +14 -17
  421. package/src/radio.tsx +44 -0
  422. package/src/resizable.tsx +7 -8
  423. package/src/scroll-area.tsx +33 -37
  424. package/src/section.tsx +9 -7
  425. package/src/select.tsx +116 -105
  426. package/src/separator.tsx +8 -14
  427. package/src/sheet.tsx +62 -70
  428. package/src/skeleton.tsx +5 -11
  429. package/src/slider.tsx +13 -10
  430. package/src/sonner.tsx +4 -8
  431. package/src/spinner.tsx +75 -0
  432. package/src/strong.tsx +9 -5
  433. package/src/switch.tsx +8 -6
  434. package/src/table.tsx +54 -64
  435. package/src/tabs.tsx +30 -15
  436. package/src/text.tsx +9 -9
  437. package/src/textarea.tsx +8 -6
  438. package/src/toggle-group.tsx +59 -48
  439. package/src/toggle.tsx +12 -13
  440. package/src/tooltip.tsx +33 -25
  441. package/dist/chunk-2D7SRYKN.js +0 -135
  442. package/dist/chunk-2D7SRYKN.js.map +0 -1
  443. package/dist/chunk-5GHZ6EXI.js.map +0 -1
  444. package/dist/chunk-EDVCMWDT.mjs +0 -158
  445. package/dist/chunk-EDVCMWDT.mjs.map +0 -1
  446. package/dist/chunk-EIHWTXQ4.mjs +0 -112
  447. package/dist/chunk-EIHWTXQ4.mjs.map +0 -1
  448. package/dist/chunk-ESWGFN3R.mjs +0 -135
  449. package/dist/chunk-ESWGFN3R.mjs.map +0 -1
  450. package/dist/chunk-KW5FJ62U.mjs +0 -56
  451. package/dist/chunk-KW5FJ62U.mjs.map +0 -1
  452. package/dist/chunk-LDYBRDAY.js +0 -112
  453. package/dist/chunk-LDYBRDAY.js.map +0 -1
  454. package/dist/chunk-OCLLX7EY.js +0 -158
  455. package/dist/chunk-OCLLX7EY.js.map +0 -1
  456. package/dist/chunk-PTD4AMHI.mjs.map +0 -1
  457. package/dist/chunk-RTKEO347.js.map +0 -1
  458. package/dist/chunk-T52N6ZBP.mjs.map +0 -1
  459. package/dist/chunk-U2WDUCW3.js.map +0 -1
package/src/accordion.tsx CHANGED
@@ -9,68 +9,91 @@ import { cn } from "./utils";
9
9
  * Component: Accordion
10
10
  * -------------------------------------------------------------------------- */
11
11
 
12
+ type AccordionProps = React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Root>;
12
13
  const Accordion = AccordionPrimitive.Root;
13
14
 
14
15
  /* -----------------------------------------------------------------------------
15
16
  * Component: AccordionItem
16
17
  * -------------------------------------------------------------------------- */
17
18
 
18
- const AccordionItem = React.forwardRef<
19
- React.ElementRef<typeof AccordionPrimitive.Item>,
20
- AccordionPrimitive.AccordionItemProps
21
- >(({ className, ...props }, ref) => (
22
- <AccordionPrimitive.Item
23
- ref={ref}
24
- className={cn("border-b", className)}
25
- {...props}
26
- />
19
+ type AccordionItemElement = React.ElementRef<typeof AccordionPrimitive.Item>;
20
+ type AccordionItemProps = React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>;
21
+
22
+ const AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(({ className, ...props }, ref) => (
23
+ <AccordionPrimitive.Item ref={ref} className={cn("border-b", className)} {...props} />
27
24
  ));
25
+
28
26
  AccordionItem.displayName = AccordionPrimitive.Item.displayName;
29
27
 
30
28
  /* -----------------------------------------------------------------------------
31
29
  * Component: AccordionTrigger
32
30
  * -------------------------------------------------------------------------- */
33
31
 
34
- const AccordionTrigger = React.forwardRef<
35
- React.ElementRef<typeof AccordionPrimitive.Trigger>,
36
- AccordionPrimitive.AccordionTriggerProps
37
- >(({ className, children, ...props }, ref) => (
38
- <AccordionPrimitive.Header className="flex">
39
- <AccordionPrimitive.Trigger
40
- ref={ref}
41
- className={cn(
42
- "flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",
43
- className,
44
- )}
45
- {...props}
46
- >
47
- {children}
48
- <ChevronDownIcon className="text-muted-foreground size-4 shrink-0 transition-transform duration-200" />
49
- </AccordionPrimitive.Trigger>
50
- </AccordionPrimitive.Header>
51
- ));
32
+ type AccordionTriggerElement = React.ElementRef<typeof AccordionPrimitive.Trigger>;
33
+ type AccordionTriggerProps = React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger>;
34
+
35
+ const AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(
36
+ ({ className, children, ...props }, ref) => (
37
+ <AccordionPrimitive.Header className="flex">
38
+ <AccordionPrimitive.Trigger
39
+ ref={ref}
40
+ className={cn(
41
+ "group flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all",
42
+ "hover:underline",
43
+ className,
44
+ )}
45
+ {...props}
46
+ >
47
+ {children}
48
+ <ChevronDownIcon
49
+ className={cn(
50
+ "text-muted-foreground size-4 shrink-0 transition-transform duration-200",
51
+ "group-data-[state=open]:rotate-180",
52
+ )}
53
+ />
54
+ </AccordionPrimitive.Trigger>
55
+ </AccordionPrimitive.Header>
56
+ ),
57
+ );
58
+
52
59
  AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
53
60
 
54
61
  /* -----------------------------------------------------------------------------
55
62
  * Component: AccordionContent
56
63
  * -------------------------------------------------------------------------- */
57
64
 
58
- const AccordionContent = React.forwardRef<
59
- React.ElementRef<typeof AccordionPrimitive.Content>,
60
- AccordionPrimitive.AccordionContentProps
61
- >(({ className, children, ...props }, ref) => (
62
- <AccordionPrimitive.Content
63
- ref={ref}
64
- className="data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm"
65
- {...props}
66
- >
67
- <div className={cn("pb-4 pt-0", className)}>{children}</div>
68
- </AccordionPrimitive.Content>
69
- ));
65
+ type AccordionContentElement = React.ElementRef<typeof AccordionPrimitive.Content>;
66
+ type AccordionContentProps = React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content>;
67
+
68
+ const AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(
69
+ ({ className, children, ...props }, ref) => (
70
+ <AccordionPrimitive.Content
71
+ ref={ref}
72
+ className={cn(
73
+ "overflow-hidden text-sm",
74
+ "data-[state=open]:animate-accordion-down",
75
+ "data-[state=closed]:animate-accordion-up",
76
+ )}
77
+ {...props}
78
+ >
79
+ <div className={cn("pb-4 pt-0", className)}>{children}</div>
80
+ </AccordionPrimitive.Content>
81
+ ),
82
+ );
83
+
70
84
  AccordionContent.displayName = AccordionPrimitive.Content.displayName;
71
85
 
72
86
  /* -----------------------------------------------------------------------------
73
87
  * Exports
74
88
  * -------------------------------------------------------------------------- */
75
89
 
76
- export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
90
+ export {
91
+ Accordion,
92
+ AccordionItem,
93
+ AccordionTrigger,
94
+ AccordionContent,
95
+ type AccordionProps,
96
+ type AccordionItemProps,
97
+ type AccordionTriggerProps,
98
+ type AccordionContentProps,
99
+ };
@@ -9,137 +9,128 @@ import { cn } from "./utils";
9
9
  * Component: AlertDialog
10
10
  * -------------------------------------------------------------------------- */
11
11
 
12
+ type AlertDialogProps = React.ComponentProps<typeof AlertDialogPrimitive.Root>;
12
13
  const AlertDialog = AlertDialogPrimitive.Root;
13
14
 
14
15
  /* -----------------------------------------------------------------------------
15
16
  * Component: AlertDialogTrigger
16
17
  * -------------------------------------------------------------------------- */
17
18
 
19
+ type AlertDialogTriggerProps = React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Trigger>;
18
20
  const AlertDialogTrigger = AlertDialogPrimitive.Trigger;
19
21
 
20
22
  /* -----------------------------------------------------------------------------
21
23
  * Component: AlertDialogContent
22
24
  * -------------------------------------------------------------------------- */
23
25
 
24
- const AlertDialogContent = React.forwardRef<
25
- React.ElementRef<typeof AlertDialogPrimitive.Content>,
26
- AlertDialogPrimitive.AlertDialogContentProps
27
- >(({ className, ...props }, ref) => (
28
- <AlertDialogPrimitive.Portal>
29
- <AlertDialogPrimitive.Overlay className="data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 fixed inset-0 z-50 bg-black/80" />
30
- <AlertDialogPrimitive.Content
31
- ref={ref}
32
- className={cn(
33
- "bg-background data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/3 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-1/3 fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 shadow-lg duration-200 focus:outline-none sm:rounded-lg",
34
- className,
35
- )}
36
- {...props}
37
- />
38
- </AlertDialogPrimitive.Portal>
39
- ));
26
+ type AlertDialogContentElement = React.ElementRef<typeof AlertDialogPrimitive.Content>;
27
+ type AlertDialogContentProps = React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content>;
28
+
29
+ const AlertDialogContent = React.forwardRef<AlertDialogContentElement, AlertDialogContentProps>(
30
+ ({ className, ...props }, ref) => (
31
+ <AlertDialogPrimitive.Portal>
32
+ <AlertDialogPrimitive.Overlay
33
+ className={cn(
34
+ "fixed inset-0 z-50 bg-black/80",
35
+ "data-[state=open]:animate-in data-[state=open]:fade-in-0",
36
+ "data-[state=closed]:animate-out data-[state=closed]:fade-out-0",
37
+ )}
38
+ />
39
+ <AlertDialogPrimitive.Content
40
+ ref={ref}
41
+ className={cn(
42
+ "bg-background fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 border p-6 shadow-lg duration-200",
43
+ "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/3",
44
+ "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-1/3",
45
+ "focus:outline-none",
46
+ "sm:rounded-lg",
47
+ className,
48
+ )}
49
+ {...props}
50
+ />
51
+ </AlertDialogPrimitive.Portal>
52
+ ),
53
+ );
54
+
40
55
  AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
41
56
 
42
57
  /* -----------------------------------------------------------------------------
43
58
  * Component: AlertDialogHeader
44
59
  * -------------------------------------------------------------------------- */
45
60
 
46
- function AlertDialogHeader({
47
- className,
48
- ...props
49
- }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element {
50
- return (
51
- <div
52
- className={cn(
53
- "flex flex-col space-y-2 text-center sm:text-left",
54
- className,
55
- )}
56
- {...props}
57
- />
58
- );
61
+ type AlertDialogHeaderProps = React.HTMLAttributes<HTMLDivElement>;
62
+
63
+ function AlertDialogHeader({ className, ...props }: AlertDialogHeaderProps): React.JSX.Element {
64
+ return <div className={cn("flex flex-col space-y-2 text-center", "sm:text-left", className)} {...props} />;
59
65
  }
60
66
 
61
67
  /* -----------------------------------------------------------------------------
62
68
  * Component: AlertDialogFooter
63
69
  * -------------------------------------------------------------------------- */
64
70
 
65
- function AlertDialogFooter({
66
- className,
67
- ...props
68
- }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element {
69
- return (
70
- <div
71
- className={cn(
72
- "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
73
- className,
74
- )}
75
- {...props}
76
- />
77
- );
71
+ type AlertDialogFooterProps = React.HTMLAttributes<HTMLDivElement>;
72
+
73
+ function AlertDialogFooter({ className, ...props }: AlertDialogFooterProps): React.JSX.Element {
74
+ return <div className={cn("flex flex-col-reverse gap-2", "sm:flex-row sm:justify-end", className)} {...props} />;
78
75
  }
79
76
 
80
77
  /* -----------------------------------------------------------------------------
81
78
  * Component: AlertDialogTitle
82
79
  * -------------------------------------------------------------------------- */
83
80
 
84
- const AlertDialogTitle = React.forwardRef<
85
- React.ElementRef<typeof AlertDialogPrimitive.Title>,
86
- AlertDialogPrimitive.AlertDialogTitleProps
87
- >(({ className, ...props }, ref) => (
88
- <AlertDialogPrimitive.Title
89
- ref={ref}
90
- className={cn("text-lg font-semibold", className)}
91
- {...props}
92
- />
93
- ));
81
+ type AlertDialogTitleElement = React.ElementRef<typeof AlertDialogPrimitive.Title>;
82
+ type AlertDialogTitleProps = React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title>;
83
+
84
+ const AlertDialogTitle = React.forwardRef<AlertDialogTitleElement, AlertDialogTitleProps>(
85
+ ({ className, ...props }, ref) => (
86
+ <AlertDialogPrimitive.Title ref={ref} className={cn("text-lg font-semibold", className)} {...props} />
87
+ ),
88
+ );
89
+
94
90
  AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
95
91
 
96
92
  /* -----------------------------------------------------------------------------
97
93
  * Component: AlertDialogDescription
98
94
  * -------------------------------------------------------------------------- */
99
95
 
100
- const AlertDialogDescription = React.forwardRef<
101
- React.ElementRef<typeof AlertDialogPrimitive.Description>,
102
- AlertDialogPrimitive.AlertDialogDescriptionProps
103
- >(({ className, ...props }, ref) => (
104
- <AlertDialogPrimitive.Description
105
- ref={ref}
106
- className={cn("text-muted-foreground text-sm", className)}
107
- {...props}
108
- />
109
- ));
110
- AlertDialogDescription.displayName =
111
- AlertDialogPrimitive.Description.displayName;
96
+ type AlertDialogDescriptionElement = React.ElementRef<typeof AlertDialogPrimitive.Description>;
97
+ type AlertDialogDescriptionProps = React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description>;
98
+
99
+ const AlertDialogDescription = React.forwardRef<AlertDialogDescriptionElement, AlertDialogDescriptionProps>(
100
+ ({ className, ...props }, ref) => (
101
+ <AlertDialogPrimitive.Description ref={ref} className={cn("text-muted-foreground text-sm", className)} {...props} />
102
+ ),
103
+ );
104
+
105
+ AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
112
106
 
113
107
  /* -----------------------------------------------------------------------------
114
108
  * Component: AlertDialogAction
115
109
  * -------------------------------------------------------------------------- */
116
110
 
117
- const AlertDialogAction = React.forwardRef<
118
- React.ElementRef<typeof AlertDialogPrimitive.Action>,
119
- AlertDialogPrimitive.AlertDialogActionProps
120
- >(({ className, ...props }, ref) => (
121
- <AlertDialogPrimitive.Action
122
- ref={ref}
123
- className={buttonVariants({ className })}
124
- {...props}
125
- />
126
- ));
111
+ type AlertDialogActionElement = React.ElementRef<typeof AlertDialogPrimitive.Action>;
112
+ type AlertDialogActionProps = React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action>;
113
+
114
+ const AlertDialogAction = React.forwardRef<AlertDialogActionElement, AlertDialogActionProps>(
115
+ ({ className, ...props }, ref) => (
116
+ <AlertDialogPrimitive.Action ref={ref} className={buttonVariants({ className })} {...props} />
117
+ ),
118
+ );
119
+
127
120
  AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
128
121
 
129
122
  /* -----------------------------------------------------------------------------
130
123
  * Component: AlertDialogCancel
131
124
  * -------------------------------------------------------------------------- */
132
125
 
133
- const AlertDialogCancel = React.forwardRef<
134
- React.ElementRef<typeof AlertDialogPrimitive.Cancel>,
135
- AlertDialogPrimitive.AlertDialogCancelProps
136
- >(({ className, ...props }, ref) => (
137
- <AlertDialogPrimitive.Cancel
138
- ref={ref}
139
- className={buttonVariants({ variant: "outline", className })}
140
- {...props}
141
- />
142
- ));
126
+ type AlertDialogCancelElement = React.ElementRef<typeof AlertDialogPrimitive.Cancel>;
127
+ type AlertDialogCancelProps = React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel>;
128
+
129
+ const AlertDialogCancel = React.forwardRef<AlertDialogCancelElement, AlertDialogCancelProps>(
130
+ ({ className, ...props }, ref) => (
131
+ <AlertDialogPrimitive.Cancel ref={ref} className={buttonVariants({ variant: "outline", className })} {...props} />
132
+ ),
133
+ );
143
134
  AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
144
135
 
145
136
  /* -----------------------------------------------------------------------------
@@ -156,4 +147,13 @@ export {
156
147
  AlertDialogDescription,
157
148
  AlertDialogAction,
158
149
  AlertDialogCancel,
150
+ type AlertDialogProps,
151
+ type AlertDialogTriggerProps,
152
+ type AlertDialogContentProps,
153
+ type AlertDialogHeaderProps,
154
+ type AlertDialogFooterProps,
155
+ type AlertDialogTitleProps,
156
+ type AlertDialogDescriptionProps,
157
+ type AlertDialogActionProps,
158
+ type AlertDialogCancelProps,
159
159
  };
package/src/alert.tsx CHANGED
@@ -11,8 +11,7 @@ const alertVariants = cva({
11
11
  variants: {
12
12
  variant: {
13
13
  default: "bg-background text-foreground [&>svg]:text-foreground",
14
- destructive:
15
- "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive",
14
+ destructive: "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive",
16
15
  },
17
16
  },
18
17
  defaultVariants: {
@@ -20,59 +19,53 @@ const alertVariants = cva({
20
19
  },
21
20
  });
22
21
 
22
+ type AlertVariantsProps = VariantProps<typeof alertVariants>;
23
+
23
24
  /* -----------------------------------------------------------------------------
24
25
  * Component: Alert
25
26
  * -------------------------------------------------------------------------- */
26
27
 
27
- const Alert = React.forwardRef<
28
- HTMLDivElement,
29
- React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof alertVariants>
30
- >(({ className, variant, ...props }, ref) => (
31
- <div
32
- ref={ref}
33
- role="alert"
34
- className={alertVariants({ variant, className })}
35
- {...props}
36
- />
28
+ type AlertElement = HTMLDivElement;
29
+ type AlertProps = React.HTMLAttributes<HTMLDivElement> & AlertVariantsProps;
30
+
31
+ const Alert = React.forwardRef<AlertElement, AlertProps>(({ className, variant, ...props }, ref) => (
32
+ <div ref={ref} role="alert" className={alertVariants({ variant, className })} {...props} />
37
33
  ));
34
+
38
35
  Alert.displayName = "Alert";
39
36
 
40
37
  /* -----------------------------------------------------------------------------
41
38
  * Component: AlertTitle
42
39
  * -------------------------------------------------------------------------- */
43
40
 
44
- const AlertTitle = React.forwardRef<
45
- HTMLHeadingElement,
46
- React.HTMLAttributes<HTMLHeadingElement>
47
- >(({ className, children, ...props }, ref) => (
48
- <h5
49
- ref={ref}
50
- className={cn("mb-1 font-medium leading-none tracking-tight", className)}
51
- {...props}
52
- >
41
+ type AlertTitleElement = HTMLHeadingElement;
42
+ type AlertTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
43
+
44
+ const AlertTitle = React.forwardRef<AlertTitleElement, AlertTitleProps>(({ className, children, ...props }, ref) => (
45
+ <h5 ref={ref} className={cn("mb-1 font-medium leading-none tracking-tight", className)} {...props}>
53
46
  {children}
54
47
  </h5>
55
48
  ));
49
+
56
50
  AlertTitle.displayName = "AlertTitle";
57
51
 
58
52
  /* -----------------------------------------------------------------------------
59
53
  * Component: AlertDescription
60
54
  * -------------------------------------------------------------------------- */
61
55
 
62
- const AlertDescription = React.forwardRef<
63
- HTMLDivElement,
64
- React.HTMLAttributes<HTMLDivElement>
65
- >(({ className, ...props }, ref) => (
66
- <div
67
- ref={ref}
68
- className={cn("text-sm [&_p]:leading-relaxed", className)}
69
- {...props}
70
- />
71
- ));
56
+ type AlertDescriptionElement = HTMLDivElement;
57
+ type AlertDescriptionProps = React.HTMLAttributes<HTMLDivElement>;
58
+
59
+ const AlertDescription = React.forwardRef<AlertDescriptionElement, AlertDescriptionProps>(
60
+ ({ className, ...props }, ref) => (
61
+ <div ref={ref} className={cn("text-sm [&_p]:leading-relaxed", className)} {...props} />
62
+ ),
63
+ );
64
+
72
65
  AlertDescription.displayName = "AlertDescription";
73
66
 
74
67
  /* -----------------------------------------------------------------------------
75
68
  * Exports
76
69
  * -------------------------------------------------------------------------- */
77
70
 
78
- export { Alert, AlertTitle, AlertDescription };
71
+ export { Alert, AlertTitle, AlertDescription, type AlertProps, type AlertTitleProps, type AlertDescriptionProps };
@@ -1,15 +1,17 @@
1
1
  "use client";
2
2
 
3
+ import type * as React from "react";
3
4
  import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
4
5
 
5
6
  /* -----------------------------------------------------------------------------
6
7
  * Component: AspectRatio
7
8
  * -------------------------------------------------------------------------- */
8
9
 
10
+ type AspectRatioProps = React.ComponentPropsWithoutRef<typeof AspectRatioPrimitive.Root>;
9
11
  const AspectRatio = AspectRatioPrimitive.Root;
10
12
 
11
13
  /* -----------------------------------------------------------------------------
12
14
  * Exports
13
15
  * -------------------------------------------------------------------------- */
14
16
 
15
- export { AspectRatio };
17
+ export { AspectRatio, type AspectRatioProps };
package/src/avatar.tsx CHANGED
@@ -8,58 +8,51 @@ import { cn } from "./utils";
8
8
  * Component: Avatar
9
9
  * -------------------------------------------------------------------------- */
10
10
 
11
- const Avatar = React.forwardRef<
12
- React.ElementRef<typeof AvatarPrimitive.Root>,
13
- AvatarPrimitive.AvatarProps
14
- >(({ className, ...props }, ref) => (
11
+ type AvatarElement = React.ElementRef<typeof AvatarPrimitive.Root>;
12
+ type AvatarProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>;
13
+
14
+ const Avatar = React.forwardRef<AvatarElement, AvatarProps>(({ className, ...props }, ref) => (
15
15
  <AvatarPrimitive.Root
16
16
  ref={ref}
17
- className={cn(
18
- "relative flex size-10 shrink-0 overflow-hidden rounded-full",
19
- className,
20
- )}
17
+ className={cn("relative flex size-10 shrink-0 overflow-hidden rounded-full", className)}
21
18
  {...props}
22
19
  />
23
20
  ));
21
+
24
22
  Avatar.displayName = AvatarPrimitive.Root.displayName;
25
23
 
26
24
  /* -----------------------------------------------------------------------------
27
25
  * Component: AvatarImage
28
26
  * -------------------------------------------------------------------------- */
29
27
 
30
- const AvatarImage = React.forwardRef<
31
- React.ElementRef<typeof AvatarPrimitive.Image>,
32
- AvatarPrimitive.AvatarImageProps
33
- >(({ className, ...props }, ref) => (
34
- <AvatarPrimitive.Image
35
- ref={ref}
36
- className={cn("aspect-square h-full w-full", className)}
37
- {...props}
38
- />
28
+ type AvatarImageElement = React.ElementRef<typeof AvatarPrimitive.Image>;
29
+ type AvatarImageProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>;
30
+
31
+ const AvatarImage = React.forwardRef<AvatarImageElement, AvatarImageProps>(({ className, ...props }, ref) => (
32
+ <AvatarPrimitive.Image ref={ref} className={cn("aspect-square size-full", className)} {...props} />
39
33
  ));
34
+
40
35
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
41
36
 
42
37
  /* -----------------------------------------------------------------------------
43
38
  * Component: AvatarFallback
44
39
  * -------------------------------------------------------------------------- */
45
40
 
46
- const AvatarFallback = React.forwardRef<
47
- React.ElementRef<typeof AvatarPrimitive.Fallback>,
48
- AvatarPrimitive.AvatarFallbackProps
49
- >(({ className, ...props }, ref) => (
41
+ type AvatarFallbackElement = React.ElementRef<typeof AvatarPrimitive.Fallback>;
42
+ type AvatarFallbackProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>;
43
+
44
+ const AvatarFallback = React.forwardRef<AvatarFallbackElement, AvatarFallbackProps>(({ className, ...props }, ref) => (
50
45
  <AvatarPrimitive.Fallback
51
46
  ref={ref}
52
- className={cn(
53
- "bg-muted flex h-full w-full items-center justify-center rounded-full",
54
- className,
55
- )}
47
+ className={cn("bg-muted flex size-full items-center justify-center rounded-full", className)}
56
48
  {...props}
57
49
  />
58
50
  ));
51
+
59
52
  AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
60
53
 
61
54
  /* -----------------------------------------------------------------------------
62
55
  * Exports
63
56
  * -------------------------------------------------------------------------- */
64
57
 
65
- export { Avatar, AvatarImage, AvatarFallback };
58
+ export { Avatar, AvatarImage, AvatarFallback, type AvatarProps, type AvatarImageProps, type AvatarFallbackProps };
package/src/badge.tsx CHANGED
@@ -1,3 +1,4 @@
1
+ import * as React from "react";
1
2
  import { type VariantProps } from "cva";
2
3
  import { cva } from "./utils";
3
4
 
@@ -11,8 +12,7 @@ const badgeVariants = cva({
11
12
  variant: {
12
13
  default: "bg-primary text-primary-foreground border-transparent shadow",
13
14
  secondary: "bg-secondary text-secondary-foreground border-transparent",
14
- destructive:
15
- "bg-destructive text-destructive-foreground border-transparent shadow",
15
+ destructive: "bg-destructive text-destructive-foreground border-transparent shadow",
16
16
  outline: "text-foreground",
17
17
  },
18
18
  },
@@ -21,16 +21,15 @@ const badgeVariants = cva({
21
21
  },
22
22
  });
23
23
 
24
+ type BadgeVariantsProps = VariantProps<typeof badgeVariants>;
25
+
24
26
  /* -----------------------------------------------------------------------------
25
27
  * Component: Badge
26
28
  * -------------------------------------------------------------------------- */
27
29
 
28
- function Badge({
29
- className,
30
- variant,
31
- ...props
32
- }: React.HTMLAttributes<HTMLDivElement> &
33
- VariantProps<typeof badgeVariants>): React.JSX.Element {
30
+ type BadgeProps = React.HTMLAttributes<HTMLDivElement> & BadgeVariantsProps;
31
+
32
+ function Badge({ className, variant, ...props }: BadgeProps): React.JSX.Element {
34
33
  return <div className={badgeVariants({ variant, className })} {...props} />;
35
34
  }
36
35
 
@@ -38,4 +37,4 @@ function Badge({
38
37
  * Exports
39
38
  * -------------------------------------------------------------------------- */
40
39
 
41
- export { Badge };
40
+ export { Badge, type BadgeProps };
@@ -5,20 +5,22 @@ import { Slot } from "@radix-ui/react-slot";
5
5
  * Component: Blockquote
6
6
  * -------------------------------------------------------------------------- */
7
7
 
8
- const Blockquote = React.forwardRef<
9
- HTMLQuoteElement,
10
- React.BlockquoteHTMLAttributes<HTMLQuoteElement> & {
11
- asChild?: boolean;
12
- }
13
- >(({ asChild, ...props }, ref) => {
8
+ type BlockquoteElement = HTMLQuoteElement;
9
+
10
+ interface BlockquoteProps extends React.BlockquoteHTMLAttributes<HTMLQuoteElement> {
11
+ asChild?: boolean;
12
+ }
13
+
14
+ const Blockquote = React.forwardRef<BlockquoteElement, BlockquoteProps>(({ asChild, ...props }, ref) => {
14
15
  const Comp = asChild ? Slot : "blockquote";
15
16
 
16
17
  return <Comp ref={ref} {...props} />;
17
18
  });
19
+
18
20
  Blockquote.displayName = "Blockquote";
19
21
 
20
22
  /* -----------------------------------------------------------------------------
21
23
  * Exports
22
24
  * -------------------------------------------------------------------------- */
23
25
 
24
- export { Blockquote };
26
+ export { Blockquote, type BlockquoteProps };
package/src/box.tsx CHANGED
@@ -5,6 +5,8 @@ import { Slot } from "@radix-ui/react-slot";
5
5
  * Component: Box
6
6
  * -------------------------------------------------------------------------- */
7
7
 
8
+ type BoxElement = HTMLDivElement;
9
+
8
10
  interface BoxDivProps extends React.HTMLAttributes<HTMLDivElement> {
9
11
  as?: "div";
10
12
  }
@@ -17,17 +19,16 @@ type BoxProps = (BoxDivProps | BoxSpanProps) & {
17
19
  asChild?: boolean;
18
20
  };
19
21
 
20
- const Box = React.forwardRef<HTMLDivElement, BoxProps>(
21
- ({ as: Tag = "div", asChild, ...props }, ref) => {
22
- const Comp = asChild ? Slot : Tag;
22
+ const Box = React.forwardRef<BoxElement, BoxProps>(({ as: Tag = "div", asChild, ...props }, ref) => {
23
+ const Comp = asChild ? Slot : Tag;
24
+
25
+ return <Comp ref={ref} {...props} />;
26
+ });
23
27
 
24
- return <Comp ref={ref} {...props} />;
25
- },
26
- );
27
28
  Box.displayName = "Box";
28
29
 
29
30
  /* -----------------------------------------------------------------------------
30
31
  * Exports
31
32
  * -------------------------------------------------------------------------- */
32
33
 
33
- export { Box };
34
+ export { Box, type BoxProps };