@codefast/ui 0.0.40 → 0.0.42

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 (387) hide show
  1. package/dist/{chunk-EVN2IB57.js → chunk-6EAQQBWG.js} +2 -2
  2. package/dist/chunk-6EAQQBWG.js.map +1 -0
  3. package/dist/{chunk-YR36SVVG.mjs → chunk-7HJV22OF.mjs} +1 -1
  4. package/dist/chunk-7HJV22OF.mjs.map +1 -0
  5. package/dist/{chunk-5WJB3UAO.js → chunk-CERSQE5J.js} +1 -1
  6. package/dist/chunk-CERSQE5J.js.map +1 -0
  7. package/dist/{chunk-UPZHCTQV.js → chunk-ELWITZPX.js} +2 -2
  8. package/dist/chunk-ELWITZPX.js.map +1 -0
  9. package/dist/{chunk-WLMYX3C7.mjs → chunk-GDMHMSJ2.mjs} +2 -2
  10. package/dist/chunk-GDMHMSJ2.mjs.map +1 -0
  11. package/dist/{chunk-UJJZZCAC.js → chunk-HQ4AUOQM.js} +1 -1
  12. package/dist/{chunk-UJJZZCAC.js.map → chunk-HQ4AUOQM.js.map} +1 -1
  13. package/dist/{chunk-HLXU3SQI.mjs → chunk-HWEFQSTC.mjs} +1 -1
  14. package/dist/chunk-HWEFQSTC.mjs.map +1 -0
  15. package/dist/{chunk-JTAXNFUM.mjs → chunk-HX5YKP4E.mjs} +2 -2
  16. package/dist/chunk-HX5YKP4E.mjs.map +1 -0
  17. package/dist/{chunk-PLX35IKX.mjs → chunk-I6QCJDIF.mjs} +1 -1
  18. package/dist/chunk-I6QCJDIF.mjs.map +1 -0
  19. package/dist/{chunk-466PAJCA.mjs → chunk-LEUB3C3L.mjs} +1 -1
  20. package/dist/chunk-LEUB3C3L.mjs.map +1 -0
  21. package/dist/{chunk-KJ77RPJ4.mjs → chunk-M5UKNISJ.mjs} +2 -2
  22. package/dist/chunk-M5UKNISJ.mjs.map +1 -0
  23. package/dist/{chunk-EYERINEJ.js → chunk-MZJL73RI.js} +1 -1
  24. package/dist/chunk-MZJL73RI.js.map +1 -0
  25. package/dist/{chunk-JCMRDCFT.js → chunk-NH6X3FON.js} +1 -1
  26. package/dist/{chunk-JCMRDCFT.js.map → chunk-NH6X3FON.js.map} +1 -1
  27. package/dist/{chunk-UDNWQQ3I.js → chunk-NSK74YTM.js} +2 -2
  28. package/dist/chunk-NSK74YTM.js.map +1 -0
  29. package/dist/{chunk-N6QGG4WS.mjs → chunk-P5AV3QU7.mjs} +2 -2
  30. package/dist/chunk-P5AV3QU7.mjs.map +1 -0
  31. package/dist/{chunk-GRQGCS7U.mjs → chunk-PWF46YXQ.mjs} +2 -2
  32. package/dist/chunk-PWF46YXQ.mjs.map +1 -0
  33. package/dist/{chunk-ZWGC5M4G.js → chunk-SCJ3W2VO.js} +2 -2
  34. package/dist/chunk-SCJ3W2VO.js.map +1 -0
  35. package/dist/{chunk-MSHUAEXI.js → chunk-SCPFGC2X.js} +2 -2
  36. package/dist/chunk-SCPFGC2X.js.map +1 -0
  37. package/dist/{chunk-JIHHUXA5.js → chunk-VXPAGNPJ.js} +2 -2
  38. package/dist/chunk-VXPAGNPJ.js.map +1 -0
  39. package/dist/{chunk-6B2PU2GG.mjs → chunk-WL65TBKJ.mjs} +2 -2
  40. package/dist/chunk-WL65TBKJ.mjs.map +1 -0
  41. package/dist/{chunk-4TJBMO2Y.mjs → chunk-WYYOCZNI.mjs} +2 -2
  42. package/dist/chunk-WYYOCZNI.mjs.map +1 -0
  43. package/dist/{chunk-FEE6PNWV.js → chunk-XM4Y2S5E.js} +2 -2
  44. package/dist/chunk-XM4Y2S5E.js.map +1 -0
  45. package/dist/{chunk-7PJR4WFR.mjs → chunk-ZEYIBYZP.mjs} +2 -2
  46. package/dist/chunk-ZEYIBYZP.mjs.map +1 -0
  47. package/dist/{chunk-AEWLL6A2.js → chunk-ZTEJNUH6.js} +2 -2
  48. package/dist/chunk-ZTEJNUH6.js.map +1 -0
  49. package/dist/lib/utils.js +1 -1
  50. package/dist/lib/utils.mjs +1 -1
  51. package/dist/plugin/animate.plugin.js +1 -1
  52. package/dist/plugin/animate.plugin.mjs +1 -1
  53. package/dist/plugin/base.plugin.js +1 -1
  54. package/dist/plugin/base.plugin.mjs +1 -1
  55. package/dist/plugin/perspective.plugin.js +1 -1
  56. package/dist/plugin/perspective.plugin.mjs +1 -1
  57. package/dist/react/accordion.js +1 -1
  58. package/dist/react/accordion.js.map +1 -1
  59. package/dist/react/accordion.mjs +1 -1
  60. package/dist/react/accordion.mjs.map +1 -1
  61. package/dist/react/alert-dialog.js +1 -1
  62. package/dist/react/alert-dialog.js.map +1 -1
  63. package/dist/react/alert-dialog.mjs +1 -1
  64. package/dist/react/alert-dialog.mjs.map +1 -1
  65. package/dist/react/alert.js +1 -1
  66. package/dist/react/alert.js.map +1 -1
  67. package/dist/react/alert.mjs +1 -1
  68. package/dist/react/alert.mjs.map +1 -1
  69. package/dist/react/aspect-ratio.js.map +1 -1
  70. package/dist/react/aspect-ratio.mjs.map +1 -1
  71. package/dist/react/avatar.js +1 -1
  72. package/dist/react/avatar.js.map +1 -1
  73. package/dist/react/avatar.mjs +1 -1
  74. package/dist/react/avatar.mjs.map +1 -1
  75. package/dist/react/badge.js +1 -1
  76. package/dist/react/badge.js.map +1 -1
  77. package/dist/react/badge.mjs +1 -1
  78. package/dist/react/badge.mjs.map +1 -1
  79. package/dist/react/blockquote.js.map +1 -1
  80. package/dist/react/blockquote.mjs.map +1 -1
  81. package/dist/react/box.d.mts +2 -2
  82. package/dist/react/box.d.ts +2 -2
  83. package/dist/react/box.js.map +1 -1
  84. package/dist/react/box.mjs.map +1 -1
  85. package/dist/react/breadcrumb.js +1 -1
  86. package/dist/react/breadcrumb.js.map +1 -1
  87. package/dist/react/breadcrumb.mjs +1 -1
  88. package/dist/react/breadcrumb.mjs.map +1 -1
  89. package/dist/react/button.js +1 -1
  90. package/dist/react/button.mjs +1 -1
  91. package/dist/react/calendar.js +1 -1
  92. package/dist/react/calendar.js.map +1 -1
  93. package/dist/react/calendar.mjs +1 -1
  94. package/dist/react/calendar.mjs.map +1 -1
  95. package/dist/react/card.js +1 -1
  96. package/dist/react/card.js.map +1 -1
  97. package/dist/react/card.mjs +1 -1
  98. package/dist/react/card.mjs.map +1 -1
  99. package/dist/react/carousel.d.mts +1 -1
  100. package/dist/react/carousel.d.ts +1 -1
  101. package/dist/react/carousel.js +1 -1
  102. package/dist/react/carousel.js.map +1 -1
  103. package/dist/react/carousel.mjs +1 -1
  104. package/dist/react/carousel.mjs.map +1 -1
  105. package/dist/react/checkbox-cards.js +1 -1
  106. package/dist/react/checkbox-cards.js.map +1 -1
  107. package/dist/react/checkbox-cards.mjs +1 -1
  108. package/dist/react/checkbox-cards.mjs.map +1 -1
  109. package/dist/react/checkbox-group.js +1 -1
  110. package/dist/react/checkbox-group.js.map +1 -1
  111. package/dist/react/checkbox-group.mjs +1 -1
  112. package/dist/react/checkbox-group.mjs.map +1 -1
  113. package/dist/react/checkbox-group.primitive.d.mts +8 -8
  114. package/dist/react/checkbox-group.primitive.d.ts +8 -8
  115. package/dist/react/checkbox-group.primitive.js +1 -1
  116. package/dist/react/checkbox-group.primitive.mjs +1 -1
  117. package/dist/react/checkbox.js +1 -1
  118. package/dist/react/checkbox.js.map +1 -1
  119. package/dist/react/checkbox.mjs +1 -1
  120. package/dist/react/checkbox.mjs.map +1 -1
  121. package/dist/react/code.js.map +1 -1
  122. package/dist/react/code.mjs.map +1 -1
  123. package/dist/react/collapsible.js +1 -1
  124. package/dist/react/collapsible.js.map +1 -1
  125. package/dist/react/collapsible.mjs +1 -1
  126. package/dist/react/collapsible.mjs.map +1 -1
  127. package/dist/react/command.js +1 -1
  128. package/dist/react/command.js.map +1 -1
  129. package/dist/react/command.mjs +1 -1
  130. package/dist/react/command.mjs.map +1 -1
  131. package/dist/react/container.js +1 -1
  132. package/dist/react/container.js.map +1 -1
  133. package/dist/react/container.mjs +1 -1
  134. package/dist/react/container.mjs.map +1 -1
  135. package/dist/react/context-menu.js +1 -1
  136. package/dist/react/context-menu.js.map +1 -1
  137. package/dist/react/context-menu.mjs +1 -1
  138. package/dist/react/context-menu.mjs.map +1 -1
  139. package/dist/react/data-table.d.mts +1 -1
  140. package/dist/react/data-table.d.ts +1 -1
  141. package/dist/react/data-table.js +1 -1
  142. package/dist/react/data-table.js.map +1 -1
  143. package/dist/react/data-table.mjs +1 -1
  144. package/dist/react/data-table.mjs.map +1 -1
  145. package/dist/react/dialog.js +1 -1
  146. package/dist/react/dialog.mjs +1 -1
  147. package/dist/react/drawer.js +1 -1
  148. package/dist/react/drawer.js.map +1 -1
  149. package/dist/react/drawer.mjs +1 -1
  150. package/dist/react/drawer.mjs.map +1 -1
  151. package/dist/react/dropdown-menu.js +1 -1
  152. package/dist/react/dropdown-menu.mjs +1 -1
  153. package/dist/react/em.js.map +1 -1
  154. package/dist/react/em.mjs.map +1 -1
  155. package/dist/react/form.js +1 -1
  156. package/dist/react/form.js.map +1 -1
  157. package/dist/react/form.mjs +1 -1
  158. package/dist/react/form.mjs.map +1 -1
  159. package/dist/react/heading.d.mts +1 -1
  160. package/dist/react/heading.d.ts +1 -1
  161. package/dist/react/heading.js.map +1 -1
  162. package/dist/react/heading.mjs.map +1 -1
  163. package/dist/react/hover-card.js +1 -1
  164. package/dist/react/hover-card.js.map +1 -1
  165. package/dist/react/hover-card.mjs +1 -1
  166. package/dist/react/hover-card.mjs.map +1 -1
  167. package/dist/react/input-otp.js +1 -1
  168. package/dist/react/input-otp.js.map +1 -1
  169. package/dist/react/input-otp.mjs +1 -1
  170. package/dist/react/input-otp.mjs.map +1 -1
  171. package/dist/react/input.js +1 -1
  172. package/dist/react/input.js.map +1 -1
  173. package/dist/react/input.mjs +1 -1
  174. package/dist/react/input.mjs.map +1 -1
  175. package/dist/react/kbd.js +1 -1
  176. package/dist/react/kbd.js.map +1 -1
  177. package/dist/react/kbd.mjs +1 -1
  178. package/dist/react/kbd.mjs.map +1 -1
  179. package/dist/react/label.js +1 -1
  180. package/dist/react/label.mjs +1 -1
  181. package/dist/react/menubar.js +1 -1
  182. package/dist/react/menubar.js.map +1 -1
  183. package/dist/react/menubar.mjs +1 -1
  184. package/dist/react/menubar.mjs.map +1 -1
  185. package/dist/react/navigation-menu.js +1 -1
  186. package/dist/react/navigation-menu.js.map +1 -1
  187. package/dist/react/navigation-menu.mjs +1 -1
  188. package/dist/react/navigation-menu.mjs.map +1 -1
  189. package/dist/react/pagination.d.mts +1 -1
  190. package/dist/react/pagination.d.ts +1 -1
  191. package/dist/react/pagination.js +1 -1
  192. package/dist/react/pagination.js.map +1 -1
  193. package/dist/react/pagination.mjs +1 -1
  194. package/dist/react/pagination.mjs.map +1 -1
  195. package/dist/react/popover.js +1 -1
  196. package/dist/react/popover.js.map +1 -1
  197. package/dist/react/popover.mjs +1 -1
  198. package/dist/react/popover.mjs.map +1 -1
  199. package/dist/react/pre.js.map +1 -1
  200. package/dist/react/pre.mjs.map +1 -1
  201. package/dist/react/progress.js +1 -1
  202. package/dist/react/progress.js.map +1 -1
  203. package/dist/react/progress.mjs +1 -1
  204. package/dist/react/progress.mjs.map +1 -1
  205. package/dist/react/quote.js.map +1 -1
  206. package/dist/react/quote.mjs.map +1 -1
  207. package/dist/react/radio-cards.js +1 -1
  208. package/dist/react/radio-cards.js.map +1 -1
  209. package/dist/react/radio-cards.mjs +1 -1
  210. package/dist/react/radio-cards.mjs.map +1 -1
  211. package/dist/react/radio-group.js +1 -1
  212. package/dist/react/radio-group.js.map +1 -1
  213. package/dist/react/radio-group.mjs +1 -1
  214. package/dist/react/radio-group.mjs.map +1 -1
  215. package/dist/react/radio.js +1 -1
  216. package/dist/react/radio.js.map +1 -1
  217. package/dist/react/radio.mjs +1 -1
  218. package/dist/react/radio.mjs.map +1 -1
  219. package/dist/react/resizable.js +1 -1
  220. package/dist/react/resizable.js.map +1 -1
  221. package/dist/react/resizable.mjs +1 -1
  222. package/dist/react/resizable.mjs.map +1 -1
  223. package/dist/react/scroll-area.js +1 -1
  224. package/dist/react/scroll-area.js.map +1 -1
  225. package/dist/react/scroll-area.mjs +1 -1
  226. package/dist/react/scroll-area.mjs.map +1 -1
  227. package/dist/react/section.js.map +1 -1
  228. package/dist/react/section.mjs.map +1 -1
  229. package/dist/react/select.js +1 -1
  230. package/dist/react/select.mjs +1 -1
  231. package/dist/react/separator.js +1 -1
  232. package/dist/react/separator.js.map +1 -1
  233. package/dist/react/separator.mjs +1 -1
  234. package/dist/react/separator.mjs.map +1 -1
  235. package/dist/react/sheet.js +1 -1
  236. package/dist/react/sheet.js.map +1 -1
  237. package/dist/react/sheet.mjs +1 -1
  238. package/dist/react/sheet.mjs.map +1 -1
  239. package/dist/react/skeleton.js +1 -1
  240. package/dist/react/skeleton.js.map +1 -1
  241. package/dist/react/skeleton.mjs +1 -1
  242. package/dist/react/skeleton.mjs.map +1 -1
  243. package/dist/react/slider.js +1 -1
  244. package/dist/react/slider.js.map +1 -1
  245. package/dist/react/slider.mjs +1 -1
  246. package/dist/react/slider.mjs.map +1 -1
  247. package/dist/react/sonner.js.map +1 -1
  248. package/dist/react/sonner.mjs.map +1 -1
  249. package/dist/react/spinner.js +1 -1
  250. package/dist/react/spinner.mjs +1 -1
  251. package/dist/react/strong.js.map +1 -1
  252. package/dist/react/strong.mjs.map +1 -1
  253. package/dist/react/switch.js +1 -1
  254. package/dist/react/switch.js.map +1 -1
  255. package/dist/react/switch.mjs +1 -1
  256. package/dist/react/switch.mjs.map +1 -1
  257. package/dist/react/table.js +1 -1
  258. package/dist/react/table.js.map +1 -1
  259. package/dist/react/table.mjs +1 -1
  260. package/dist/react/table.mjs.map +1 -1
  261. package/dist/react/tabs.js +1 -1
  262. package/dist/react/tabs.js.map +1 -1
  263. package/dist/react/tabs.mjs +1 -1
  264. package/dist/react/tabs.mjs.map +1 -1
  265. package/dist/react/text.d.mts +2 -2
  266. package/dist/react/text.d.ts +2 -2
  267. package/dist/react/text.js.map +1 -1
  268. package/dist/react/text.mjs.map +1 -1
  269. package/dist/react/textarea.js +1 -1
  270. package/dist/react/textarea.js.map +1 -1
  271. package/dist/react/textarea.mjs +1 -1
  272. package/dist/react/textarea.mjs.map +1 -1
  273. package/dist/react/toggle-group.js +1 -1
  274. package/dist/react/toggle-group.js.map +1 -1
  275. package/dist/react/toggle-group.mjs +1 -1
  276. package/dist/react/toggle-group.mjs.map +1 -1
  277. package/dist/react/toggle.js +1 -1
  278. package/dist/react/toggle.mjs +1 -1
  279. package/dist/react/tooltip.js +1 -1
  280. package/dist/react/tooltip.js.map +1 -1
  281. package/dist/react/tooltip.mjs +1 -1
  282. package/dist/react/tooltip.mjs.map +1 -1
  283. package/dist/styles.css +1 -1
  284. package/dist/styles.css.map +1 -1
  285. package/dist/tailwind.config.js +1 -1
  286. package/dist/tailwind.config.js.map +1 -1
  287. package/dist/tailwind.config.mjs +1 -1
  288. package/dist/tailwind.config.mjs.map +1 -1
  289. package/package.json +7 -7
  290. package/plugin/animate.plugin.ts +114 -111
  291. package/plugin/base.plugin.ts +10 -7
  292. package/plugin/perspective.plugin.ts +1 -1
  293. package/src/lib/utils.ts +2 -2
  294. package/src/react/accordion.tsx +65 -41
  295. package/src/react/alert-dialog.tsx +130 -62
  296. package/src/react/alert.tsx +50 -24
  297. package/src/react/aspect-ratio.tsx +6 -4
  298. package/src/react/avatar.tsx +47 -19
  299. package/src/react/badge.tsx +15 -10
  300. package/src/react/blockquote.tsx +11 -8
  301. package/src/react/box.tsx +11 -9
  302. package/src/react/breadcrumb.tsx +62 -29
  303. package/src/react/button.tsx +47 -31
  304. package/src/react/calendar.tsx +54 -37
  305. package/src/react/card.tsx +64 -30
  306. package/src/react/carousel.tsx +101 -43
  307. package/src/react/checkbox-cards.tsx +60 -33
  308. package/src/react/checkbox-group.primitive.tsx +93 -38
  309. package/src/react/checkbox-group.tsx +57 -34
  310. package/src/react/checkbox.tsx +24 -20
  311. package/src/react/code.tsx +9 -7
  312. package/src/react/collapsible.tsx +33 -23
  313. package/src/react/command.tsx +140 -75
  314. package/src/react/container.tsx +12 -8
  315. package/src/react/context-menu.tsx +228 -150
  316. package/src/react/data-table.tsx +51 -21
  317. package/src/react/dialog.tsx +95 -50
  318. package/src/react/drawer.tsx +96 -49
  319. package/src/react/dropdown-menu.tsx +199 -131
  320. package/src/react/em.tsx +9 -7
  321. package/src/react/form.tsx +96 -61
  322. package/src/react/heading.tsx +10 -8
  323. package/src/react/hover-card.tsx +42 -26
  324. package/src/react/input-otp.tsx +48 -37
  325. package/src/react/input.tsx +25 -15
  326. package/src/react/kbd.tsx +21 -19
  327. package/src/react/label.tsx +16 -14
  328. package/src/react/menubar.tsx +214 -135
  329. package/src/react/navigation-menu.tsx +153 -111
  330. package/src/react/pagination.tsx +59 -26
  331. package/src/react/popover.tsx +44 -29
  332. package/src/react/pre.tsx +9 -7
  333. package/src/react/progress.tsx +26 -19
  334. package/src/react/quote.tsx +9 -7
  335. package/src/react/radio-cards.tsx +32 -12
  336. package/src/react/radio-group.tsx +32 -12
  337. package/src/react/radio.tsx +24 -20
  338. package/src/react/resizable.tsx +13 -8
  339. package/src/react/scroll-area.tsx +56 -34
  340. package/src/react/section.tsx +9 -7
  341. package/src/react/select.tsx +167 -114
  342. package/src/react/separator.tsx +16 -7
  343. package/src/react/sheet.tsx +84 -34
  344. package/src/react/skeleton.tsx +8 -3
  345. package/src/react/slider.tsx +31 -24
  346. package/src/react/sonner.tsx +12 -10
  347. package/src/react/spinner.tsx +14 -9
  348. package/src/react/strong.tsx +9 -7
  349. package/src/react/switch.tsx +18 -16
  350. package/src/react/table.tsx +97 -52
  351. package/src/react/tabs.tsx +48 -38
  352. package/src/react/text.tsx +13 -10
  353. package/src/react/textarea.tsx +17 -15
  354. package/src/react/toggle-group.tsx +66 -23
  355. package/src/react/toggle.tsx +26 -18
  356. package/src/react/tooltip.tsx +43 -28
  357. package/tailwind.config.ts +62 -62
  358. package/dist/chunk-466PAJCA.mjs.map +0 -1
  359. package/dist/chunk-4TJBMO2Y.mjs.map +0 -1
  360. package/dist/chunk-5WJB3UAO.js.map +0 -1
  361. package/dist/chunk-6B2PU2GG.mjs.map +0 -1
  362. package/dist/chunk-7PJR4WFR.mjs.map +0 -1
  363. package/dist/chunk-AEWLL6A2.js.map +0 -1
  364. package/dist/chunk-EVN2IB57.js.map +0 -1
  365. package/dist/chunk-EYERINEJ.js.map +0 -1
  366. package/dist/chunk-FEE6PNWV.js.map +0 -1
  367. package/dist/chunk-GRQGCS7U.mjs.map +0 -1
  368. package/dist/chunk-HLXU3SQI.mjs.map +0 -1
  369. package/dist/chunk-JIHHUXA5.js.map +0 -1
  370. package/dist/chunk-JTAXNFUM.mjs.map +0 -1
  371. package/dist/chunk-KJ77RPJ4.mjs.map +0 -1
  372. package/dist/chunk-MSHUAEXI.js.map +0 -1
  373. package/dist/chunk-N6QGG4WS.mjs.map +0 -1
  374. package/dist/chunk-PLX35IKX.mjs.map +0 -1
  375. package/dist/chunk-UDNWQQ3I.js.map +0 -1
  376. package/dist/chunk-UPZHCTQV.js.map +0 -1
  377. package/dist/chunk-WLMYX3C7.mjs.map +0 -1
  378. package/dist/chunk-YR36SVVG.mjs.map +0 -1
  379. package/dist/chunk-ZWGC5M4G.js.map +0 -1
  380. package/dist/plugin/animate.plugin.d.mts +0 -9
  381. package/dist/plugin/animate.plugin.d.ts +0 -9
  382. package/dist/plugin/base.plugin.d.mts +0 -8
  383. package/dist/plugin/base.plugin.d.ts +0 -8
  384. package/dist/plugin/perspective.plugin.d.mts +0 -8
  385. package/dist/plugin/perspective.plugin.d.ts +0 -8
  386. package/dist/tailwind.config.d.mts +0 -5
  387. package/dist/tailwind.config.d.ts +0 -5
@@ -1,8 +1,8 @@
1
- "use client";
1
+ 'use client';
2
2
 
3
- import * as React from "react";
4
- import * as SliderPrimitive from "@radix-ui/react-slider";
5
- import { cn } from "../lib/utils";
3
+ import * as React from 'react';
4
+ import * as SliderPrimitive from '@radix-ui/react-slider';
5
+ import { cn } from '../lib/utils';
6
6
 
7
7
  /* -----------------------------------------------------------------------------
8
8
  * Component: Slider
@@ -11,26 +11,33 @@ import { cn } from "../lib/utils";
11
11
  type SliderElement = React.ElementRef<typeof SliderPrimitive.Root>;
12
12
  type SliderProps = React.ComponentPropsWithoutRef<typeof SliderPrimitive.Root>;
13
13
 
14
- const Slider = React.forwardRef<SliderElement, SliderProps>(({ className, ...props }, ref) => (
15
- <SliderPrimitive.Root
16
- ref={ref}
17
- className={cn("relative flex w-full touch-none select-none items-center", className)}
18
- {...props}
19
- >
20
- <SliderPrimitive.Track className="bg-primary/20 relative h-1.5 w-full grow overflow-hidden rounded-full">
21
- <SliderPrimitive.Range className="bg-primary absolute h-full" />
22
- </SliderPrimitive.Track>
23
-
24
- {(props.value ?? props.defaultValue ?? []).map((value, index) => (
25
- <SliderPrimitive.Thumb
26
- // eslint-disable-next-line react/no-array-index-key -- index is stable
27
- key={index}
28
- className="border-primary/50 bg-background block size-4 rounded-full border shadow transition focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-50"
29
- {...(props.tabIndex !== undefined ? { tabIndex: props.tabIndex } : undefined)}
30
- />
31
- ))}
32
- </SliderPrimitive.Root>
33
- ));
14
+ const Slider = React.forwardRef<SliderElement, SliderProps>(
15
+ ({ className, ...props }, ref) => (
16
+ <SliderPrimitive.Root
17
+ ref={ref}
18
+ className={cn(
19
+ 'relative flex w-full touch-none select-none items-center',
20
+ className,
21
+ )}
22
+ {...props}
23
+ >
24
+ <SliderPrimitive.Track className="bg-primary/20 relative h-1.5 w-full grow overflow-hidden rounded-full">
25
+ <SliderPrimitive.Range className="bg-primary absolute h-full" />
26
+ </SliderPrimitive.Track>
27
+
28
+ {(props.value ?? props.defaultValue ?? []).map((value, index) => (
29
+ <SliderPrimitive.Thumb
30
+ // eslint-disable-next-line react/no-array-index-key -- index is stable
31
+ key={index}
32
+ className="border-primary/50 bg-background block size-4 rounded-full border shadow transition focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-50"
33
+ {...(props.tabIndex !== undefined
34
+ ? { tabIndex: props.tabIndex }
35
+ : undefined)}
36
+ />
37
+ ))}
38
+ </SliderPrimitive.Root>
39
+ ),
40
+ );
34
41
 
35
42
  Slider.displayName = SliderPrimitive.Root.displayName;
36
43
 
@@ -1,18 +1,18 @@
1
- "use client";
1
+ 'use client';
2
2
 
3
- import * as React from "react";
4
- import { useTheme } from "next-themes";
5
- import { toast, Toaster as Sonner } from "sonner";
3
+ import * as React from 'react';
4
+ import { useTheme } from 'next-themes';
5
+ import { toast, Toaster as Sonner } from 'sonner';
6
6
 
7
7
  /* -----------------------------------------------------------------------------
8
8
  * Component: Sonner
9
9
  * -------------------------------------------------------------------------- */
10
10
 
11
11
  type ToasterProps = React.ComponentProps<typeof Sonner>;
12
- type Theme = "light" | "dark" | "system" | undefined;
12
+ type Theme = 'light' | 'dark' | 'system' | undefined;
13
13
 
14
14
  function Toaster({ ...props }: ToasterProps): React.JSX.Element {
15
- const { theme = "system" } = useTheme() as { theme: Theme };
15
+ const { theme = 'system' } = useTheme() as { theme: Theme };
16
16
 
17
17
  return (
18
18
  <Sonner
@@ -21,10 +21,12 @@ function Toaster({ ...props }: ToasterProps): React.JSX.Element {
21
21
  toastOptions={{
22
22
  classNames: {
23
23
  toast:
24
- "group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",
25
- description: "group-[.toast]:text-muted-foreground",
26
- actionButton: "group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",
27
- cancelButton: "group-[.toast]:bg-muted group-[.toast]:text-muted-foreground",
24
+ 'group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg',
25
+ description: 'group-[.toast]:text-muted-foreground',
26
+ actionButton:
27
+ 'group-[.toast]:bg-primary group-[.toast]:text-primary-foreground',
28
+ cancelButton:
29
+ 'group-[.toast]:bg-muted group-[.toast]:text-muted-foreground',
28
30
  },
29
31
  }}
30
32
  {...props}
@@ -1,6 +1,6 @@
1
- import * as React from "react";
2
- import { VisuallyHidden } from "@radix-ui/react-visually-hidden";
3
- import { cn } from "../lib/utils";
1
+ import * as React from 'react';
2
+ import { VisuallyHidden } from '@radix-ui/react-visually-hidden';
3
+ import { cn } from '../lib/utils';
4
4
 
5
5
  /* -----------------------------------------------------------------------------
6
6
  * Component: Spinner
@@ -23,7 +23,10 @@ const Spinner = React.forwardRef<SpinnerElement, SpinnerProps>(
23
23
  const spinner = (
24
24
  <span
25
25
  ref={ref}
26
- className={cn("relative flex size-4 items-center justify-center opacity-60", className)}
26
+ className={cn(
27
+ 'relative flex size-4 items-center justify-center opacity-60',
28
+ className,
29
+ )}
27
30
  {...props}
28
31
  >
29
32
  {Array.from({ length: spinnerCount }, (_, i) => (
@@ -33,9 +36,9 @@ const Spinner = React.forwardRef<SpinnerElement, SpinnerProps>(
33
36
  style={
34
37
  {
35
38
  width: `${(100 / spinnerCount).toString()}%`,
36
- "--spinner-delay": `-${((spinnerCount - i) * 100).toString()}ms`,
37
- "--spinner-rotate": `${((360 / spinnerCount) * i).toString()}deg`,
38
- "--spinner-duration": `${(spinnerCount * 100).toString()}ms`,
39
+ '--spinner-delay': `-${((spinnerCount - i) * 100).toString()}ms`,
40
+ '--spinner-rotate': `${((360 / spinnerCount) * i).toString()}deg`,
41
+ '--spinner-duration': `${(spinnerCount * 100).toString()}ms`,
39
42
  } as React.CSSProperties
40
43
  }
41
44
  />
@@ -53,13 +56,15 @@ const Spinner = React.forwardRef<SpinnerElement, SpinnerProps>(
53
56
  {children}
54
57
  </span>
55
58
  <VisuallyHidden>{children}</VisuallyHidden>
56
- <span className="absolute inset-0 flex items-center justify-center">{spinner}</span>
59
+ <span className="absolute inset-0 flex items-center justify-center">
60
+ {spinner}
61
+ </span>
57
62
  </span>
58
63
  );
59
64
  },
60
65
  );
61
66
 
62
- Spinner.displayName = "Spinner";
67
+ Spinner.displayName = 'Spinner';
63
68
 
64
69
  /* -----------------------------------------------------------------------------
65
70
  * Exports
@@ -1,5 +1,5 @@
1
- import * as React from "react";
2
- import { Slot } from "@radix-ui/react-slot";
1
+ import * as React from 'react';
2
+ import { Slot } from '@radix-ui/react-slot';
3
3
 
4
4
  /* -----------------------------------------------------------------------------
5
5
  * Component: Strong
@@ -11,13 +11,15 @@ interface StrongProps extends React.HTMLAttributes<HTMLElement> {
11
11
  asChild?: boolean;
12
12
  }
13
13
 
14
- const Strong = React.forwardRef<StrongElement, StrongProps>(({ asChild, ...props }, ref) => {
15
- const Component = asChild ? Slot : "strong";
14
+ const Strong = React.forwardRef<StrongElement, StrongProps>(
15
+ ({ asChild, ...props }, ref) => {
16
+ const Component = asChild ? Slot : 'strong';
16
17
 
17
- return <Component ref={ref} {...props} />;
18
- });
18
+ return <Component ref={ref} {...props} />;
19
+ },
20
+ );
19
21
 
20
- Strong.displayName = "Strong";
22
+ Strong.displayName = 'Strong';
21
23
 
22
24
  /* -----------------------------------------------------------------------------
23
25
  * Exports
@@ -1,8 +1,8 @@
1
- "use client";
1
+ 'use client';
2
2
 
3
- import * as React from "react";
4
- import * as SwitchPrimitives from "@radix-ui/react-switch";
5
- import { cn } from "../lib/utils";
3
+ import * as React from 'react';
4
+ import * as SwitchPrimitives from '@radix-ui/react-switch';
5
+ import { cn } from '../lib/utils';
6
6
 
7
7
  /* -----------------------------------------------------------------------------
8
8
  * Component: Switch
@@ -11,18 +11,20 @@ import { cn } from "../lib/utils";
11
11
  type SwitchElement = React.ElementRef<typeof SwitchPrimitives.Root>;
12
12
  type SwitchProps = React.ComponentPropsWithoutRef<typeof SwitchPrimitives.Root>;
13
13
 
14
- const Switch = React.forwardRef<SwitchElement, SwitchProps>(({ className, ...props }, ref) => (
15
- <SwitchPrimitives.Root
16
- className={cn(
17
- "data-[state=checked]:bg-primary data-[state=unchecked]:bg-input peer inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 border-transparent shadow-sm transition focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
18
- className,
19
- )}
20
- {...props}
21
- ref={ref}
22
- >
23
- <SwitchPrimitives.Thumb className="bg-background pointer-events-none block size-4 rounded-full shadow-lg transition data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0" />
24
- </SwitchPrimitives.Root>
25
- ));
14
+ const Switch = React.forwardRef<SwitchElement, SwitchProps>(
15
+ ({ className, ...props }, ref) => (
16
+ <SwitchPrimitives.Root
17
+ className={cn(
18
+ 'data-[state=checked]:bg-primary data-[state=unchecked]:bg-input peer inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 border-transparent shadow-sm transition focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-50',
19
+ className,
20
+ )}
21
+ {...props}
22
+ ref={ref}
23
+ >
24
+ <SwitchPrimitives.Thumb className="bg-background pointer-events-none block size-4 rounded-full shadow-lg transition data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0" />
25
+ </SwitchPrimitives.Root>
26
+ ),
27
+ );
26
28
 
27
29
  Switch.displayName = SwitchPrimitives.Root.displayName;
28
30
 
@@ -1,5 +1,5 @@
1
- import * as React from "react";
2
- import { cn } from "../lib/utils";
1
+ import * as React from 'react';
2
+ import { cn } from '../lib/utils';
3
3
 
4
4
  /* -----------------------------------------------------------------------------
5
5
  * Component: Table
@@ -8,13 +8,19 @@ import { cn } from "../lib/utils";
8
8
  type TableElement = HTMLTableElement;
9
9
  type TableProps = React.HTMLAttributes<HTMLTableElement>;
10
10
 
11
- const Table = React.forwardRef<TableElement, TableProps>(({ className, ...props }, ref) => (
12
- <div className="relative w-full overflow-auto">
13
- <table ref={ref} className={cn("w-full caption-bottom text-sm", className)} {...props} />
14
- </div>
15
- ));
11
+ const Table = React.forwardRef<TableElement, TableProps>(
12
+ ({ className, ...props }, ref) => (
13
+ <div className="relative w-full overflow-auto">
14
+ <table
15
+ ref={ref}
16
+ className={cn('w-full caption-bottom text-sm', className)}
17
+ {...props}
18
+ />
19
+ </div>
20
+ ),
21
+ );
16
22
 
17
- Table.displayName = "Table";
23
+ Table.displayName = 'Table';
18
24
 
19
25
  /* -----------------------------------------------------------------------------
20
26
  * Component: TableHeader
@@ -23,11 +29,13 @@ Table.displayName = "Table";
23
29
  type TableHeaderElement = HTMLTableSectionElement;
24
30
  type TableHeaderProps = React.HTMLAttributes<HTMLTableSectionElement>;
25
31
 
26
- const TableHeader = React.forwardRef<TableHeaderElement, TableHeaderProps>(({ className, ...props }, ref) => (
27
- <thead ref={ref} className={cn("[&_tr]:border-b", className)} {...props} />
28
- ));
32
+ const TableHeader = React.forwardRef<TableHeaderElement, TableHeaderProps>(
33
+ ({ className, ...props }, ref) => (
34
+ <thead ref={ref} className={cn('[&_tr]:border-b', className)} {...props} />
35
+ ),
36
+ );
29
37
 
30
- TableHeader.displayName = "TableHeader";
38
+ TableHeader.displayName = 'TableHeader';
31
39
 
32
40
  /* -----------------------------------------------------------------------------
33
41
  * Component: TableBody
@@ -36,11 +44,17 @@ TableHeader.displayName = "TableHeader";
36
44
  type TableBodyElement = HTMLTableSectionElement;
37
45
  type TableBodyProps = React.HTMLAttributes<HTMLTableSectionElement>;
38
46
 
39
- const TableBody = React.forwardRef<TableBodyElement, TableBodyProps>(({ className, ...props }, ref) => (
40
- <tbody ref={ref} className={cn("[&_tr:last-child]:border-0", className)} {...props} />
41
- ));
47
+ const TableBody = React.forwardRef<TableBodyElement, TableBodyProps>(
48
+ ({ className, ...props }, ref) => (
49
+ <tbody
50
+ ref={ref}
51
+ className={cn('[&_tr:last-child]:border-0', className)}
52
+ {...props}
53
+ />
54
+ ),
55
+ );
42
56
 
43
- TableBody.displayName = "TableBody";
57
+ TableBody.displayName = 'TableBody';
44
58
 
45
59
  /* -----------------------------------------------------------------------------
46
60
  * Component: TableFooter
@@ -49,11 +63,20 @@ TableBody.displayName = "TableBody";
49
63
  type TableFooterElement = HTMLTableSectionElement;
50
64
  type TableFooterProps = React.HTMLAttributes<HTMLTableSectionElement>;
51
65
 
52
- const TableFooter = React.forwardRef<TableFooterElement, TableFooterProps>(({ className, ...props }, ref) => (
53
- <tfoot ref={ref} className={cn("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0", className)} {...props} />
54
- ));
55
-
56
- TableFooter.displayName = "TableFooter";
66
+ const TableFooter = React.forwardRef<TableFooterElement, TableFooterProps>(
67
+ ({ className, ...props }, ref) => (
68
+ <tfoot
69
+ ref={ref}
70
+ className={cn(
71
+ 'bg-muted/50 border-t font-medium [&>tr]:last:border-b-0',
72
+ className,
73
+ )}
74
+ {...props}
75
+ />
76
+ ),
77
+ );
78
+
79
+ TableFooter.displayName = 'TableFooter';
57
80
 
58
81
  /* -----------------------------------------------------------------------------
59
82
  * Component: TableRow
@@ -62,15 +85,20 @@ TableFooter.displayName = "TableFooter";
62
85
  type TableRowElement = HTMLTableRowElement;
63
86
  type TableRowProps = React.HTMLAttributes<HTMLTableRowElement>;
64
87
 
65
- const TableRow = React.forwardRef<TableRowElement, TableRowProps>(({ className, ...props }, ref) => (
66
- <tr
67
- ref={ref}
68
- className={cn("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition", className)}
69
- {...props}
70
- />
71
- ));
72
-
73
- TableRow.displayName = "TableRow";
88
+ const TableRow = React.forwardRef<TableRowElement, TableRowProps>(
89
+ ({ className, ...props }, ref) => (
90
+ <tr
91
+ ref={ref}
92
+ className={cn(
93
+ 'hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition',
94
+ className,
95
+ )}
96
+ {...props}
97
+ />
98
+ ),
99
+ );
100
+
101
+ TableRow.displayName = 'TableRow';
74
102
 
75
103
  /* -----------------------------------------------------------------------------
76
104
  * Component: TableHead
@@ -79,18 +107,20 @@ TableRow.displayName = "TableRow";
79
107
  type TableHeadElement = HTMLTableCellElement;
80
108
  type TableHeadProps = React.ThHTMLAttributes<HTMLTableCellElement>;
81
109
 
82
- const TableHead = React.forwardRef<TableHeadElement, TableHeadProps>(({ className, ...props }, ref) => (
83
- <th
84
- ref={ref}
85
- className={cn(
86
- "text-muted-foreground h-12 px-4 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0",
87
- className,
88
- )}
89
- {...props}
90
- />
91
- ));
92
-
93
- TableHead.displayName = "TableHead";
110
+ const TableHead = React.forwardRef<TableHeadElement, TableHeadProps>(
111
+ ({ className, ...props }, ref) => (
112
+ <th
113
+ ref={ref}
114
+ className={cn(
115
+ 'text-muted-foreground h-12 px-4 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0',
116
+ className,
117
+ )}
118
+ {...props}
119
+ />
120
+ ),
121
+ );
122
+
123
+ TableHead.displayName = 'TableHead';
94
124
 
95
125
  /* -----------------------------------------------------------------------------
96
126
  * Component: TableCell
@@ -99,11 +129,20 @@ TableHead.displayName = "TableHead";
99
129
  type TableCellElement = HTMLTableCellElement;
100
130
  type TableCellProps = React.TdHTMLAttributes<HTMLTableCellElement>;
101
131
 
102
- const TableCell = React.forwardRef<TableCellElement, TableCellProps>(({ className, ...props }, ref) => (
103
- <td ref={ref} className={cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className)} {...props} />
104
- ));
105
-
106
- TableCell.displayName = "TableCell";
132
+ const TableCell = React.forwardRef<TableCellElement, TableCellProps>(
133
+ ({ className, ...props }, ref) => (
134
+ <td
135
+ ref={ref}
136
+ className={cn(
137
+ 'p-4 align-middle [&:has([role=checkbox])]:pr-0',
138
+ className,
139
+ )}
140
+ {...props}
141
+ />
142
+ ),
143
+ );
144
+
145
+ TableCell.displayName = 'TableCell';
107
146
 
108
147
  /* -----------------------------------------------------------------------------
109
148
  * Component: TableCaption
@@ -112,11 +151,17 @@ TableCell.displayName = "TableCell";
112
151
  type TableCaptionElement = HTMLTableCaptionElement;
113
152
  type TableCaptionProps = React.HTMLAttributes<HTMLTableCaptionElement>;
114
153
 
115
- const TableCaption = React.forwardRef<TableCaptionElement, TableCaptionProps>(({ className, ...props }, ref) => (
116
- <caption ref={ref} className={cn("text-muted-foreground mt-4 text-sm", className)} {...props} />
117
- ));
118
-
119
- TableCaption.displayName = "TableCaption";
154
+ const TableCaption = React.forwardRef<TableCaptionElement, TableCaptionProps>(
155
+ ({ className, ...props }, ref) => (
156
+ <caption
157
+ ref={ref}
158
+ className={cn('text-muted-foreground mt-4 text-sm', className)}
159
+ {...props}
160
+ />
161
+ ),
162
+ );
163
+
164
+ TableCaption.displayName = 'TableCaption';
120
165
 
121
166
  /* -----------------------------------------------------------------------------
122
167
  * Exports
@@ -1,8 +1,8 @@
1
- "use client";
1
+ 'use client';
2
2
 
3
- import * as React from "react";
4
- import * as TabsPrimitive from "@radix-ui/react-tabs";
5
- import { cn } from "../lib/utils";
3
+ import * as React from 'react';
4
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
5
+ import { cn } from '../lib/utils';
6
6
 
7
7
  /* -----------------------------------------------------------------------------
8
8
  * Component: Tabs
@@ -18,16 +18,18 @@ const Tabs = TabsPrimitive.Root;
18
18
  type TabsListElement = React.ElementRef<typeof TabsPrimitive.List>;
19
19
  type TabsListProps = React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>;
20
20
 
21
- const TabsList = React.forwardRef<TabsListElement, TabsListProps>(({ className, ...props }, ref) => (
22
- <TabsPrimitive.List
23
- ref={ref}
24
- className={cn(
25
- "bg-muted text-muted-foreground inline-flex h-10 items-center justify-center gap-1 rounded-md p-1",
26
- className,
27
- )}
28
- {...props}
29
- />
30
- ));
21
+ const TabsList = React.forwardRef<TabsListElement, TabsListProps>(
22
+ ({ className, ...props }, ref) => (
23
+ <TabsPrimitive.List
24
+ ref={ref}
25
+ className={cn(
26
+ 'bg-muted text-muted-foreground inline-flex h-10 items-center justify-center gap-1 rounded-md p-1',
27
+ className,
28
+ )}
29
+ {...props}
30
+ />
31
+ ),
32
+ );
31
33
 
32
34
  TabsList.displayName = TabsPrimitive.List.displayName;
33
35
 
@@ -36,18 +38,22 @@ TabsList.displayName = TabsPrimitive.List.displayName;
36
38
  * -------------------------------------------------------------------------- */
37
39
 
38
40
  type TabsTriggerElement = React.ElementRef<typeof TabsPrimitive.Trigger>;
39
- type TabsTriggerProps = React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>;
40
-
41
- const TabsTrigger = React.forwardRef<TabsTriggerElement, TabsTriggerProps>(({ className, ...props }, ref) => (
42
- <TabsPrimitive.Trigger
43
- ref={ref}
44
- className={cn(
45
- "data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium outline-transparent transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm",
46
- className,
47
- )}
48
- {...props}
49
- />
50
- ));
41
+ type TabsTriggerProps = React.ComponentPropsWithoutRef<
42
+ typeof TabsPrimitive.Trigger
43
+ >;
44
+
45
+ const TabsTrigger = React.forwardRef<TabsTriggerElement, TabsTriggerProps>(
46
+ ({ className, ...props }, ref) => (
47
+ <TabsPrimitive.Trigger
48
+ ref={ref}
49
+ className={cn(
50
+ 'data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium outline-transparent transition-all focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm',
51
+ className,
52
+ )}
53
+ {...props}
54
+ />
55
+ ),
56
+ );
51
57
 
52
58
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
53
59
 
@@ -56,18 +62,22 @@ TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
56
62
  * -------------------------------------------------------------------------- */
57
63
 
58
64
  type TabsContentElement = React.ElementRef<typeof TabsPrimitive.Content>;
59
- type TabsContentProps = React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>;
60
-
61
- const TabsContent = React.forwardRef<TabsContentElement, TabsContentProps>(({ className, ...props }, ref) => (
62
- <TabsPrimitive.Content
63
- ref={ref}
64
- className={cn(
65
- "mt-2 rounded-md focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2",
66
- className,
67
- )}
68
- {...props}
69
- />
70
- ));
65
+ type TabsContentProps = React.ComponentPropsWithoutRef<
66
+ typeof TabsPrimitive.Content
67
+ >;
68
+
69
+ const TabsContent = React.forwardRef<TabsContentElement, TabsContentProps>(
70
+ ({ className, ...props }, ref) => (
71
+ <TabsPrimitive.Content
72
+ ref={ref}
73
+ className={cn(
74
+ 'mt-2 rounded-md focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2',
75
+ className,
76
+ )}
77
+ {...props}
78
+ />
79
+ ),
80
+ );
71
81
 
72
82
  TabsContent.displayName = TabsPrimitive.Content.displayName;
73
83
 
@@ -1,5 +1,5 @@
1
- import * as React from "react";
2
- import { Slot } from "@radix-ui/react-slot";
1
+ import * as React from 'react';
2
+ import { Slot } from '@radix-ui/react-slot';
3
3
 
4
4
  /* -----------------------------------------------------------------------------
5
5
  * Component: Text
@@ -7,25 +7,28 @@ import { Slot } from "@radix-ui/react-slot";
7
7
 
8
8
  type TextElement = HTMLParagraphElement;
9
9
 
10
- interface TextParagraphProps extends React.HTMLAttributes<HTMLParagraphElement> {
11
- as?: "p";
10
+ interface TextParagraphProps
11
+ extends React.HTMLAttributes<HTMLParagraphElement> {
12
+ as?: 'p';
12
13
  }
13
14
 
14
15
  interface TextSpanProps extends React.HTMLAttributes<HTMLSpanElement> {
15
- as: "span";
16
+ as: 'span';
16
17
  }
17
18
 
18
19
  type TextProps = (TextParagraphProps | TextSpanProps) & {
19
20
  asChild?: boolean;
20
21
  };
21
22
 
22
- const Text = React.forwardRef<TextElement, TextProps>(({ as: Tag = "p", asChild, ...props }, ref) => {
23
- const Component = asChild ? Slot : Tag;
23
+ const Text = React.forwardRef<TextElement, TextProps>(
24
+ ({ as: Tag = 'p', asChild, ...props }, ref) => {
25
+ const Component = asChild ? Slot : Tag;
24
26
 
25
- return <Component ref={ref} {...props} />;
26
- });
27
+ return <Component ref={ref} {...props} />;
28
+ },
29
+ );
27
30
 
28
- Text.displayName = "Text";
31
+ Text.displayName = 'Text';
29
32
 
30
33
  /* -----------------------------------------------------------------------------
31
34
  * Exports
@@ -1,5 +1,5 @@
1
- import * as React from "react";
2
- import { cn } from "../lib/utils";
1
+ import * as React from 'react';
2
+ import { cn } from '../lib/utils';
3
3
 
4
4
  /* -----------------------------------------------------------------------------
5
5
  * Component: Textarea
@@ -8,20 +8,22 @@ import { cn } from "../lib/utils";
8
8
  type TextareaElement = HTMLTextAreaElement;
9
9
  type TextareaProps = React.TextareaHTMLAttributes<HTMLTextAreaElement>;
10
10
 
11
- const Textarea = React.forwardRef<TextareaElement, TextareaProps>(({ className, ...props }, ref) => {
12
- return (
13
- <textarea
14
- className={cn(
15
- "border-input placeholder:text-muted-foreground flex min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-sm shadow-sm focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
16
- className,
17
- )}
18
- ref={ref}
19
- {...props}
20
- />
21
- );
22
- });
11
+ const Textarea = React.forwardRef<TextareaElement, TextareaProps>(
12
+ ({ className, ...props }, ref) => {
13
+ return (
14
+ <textarea
15
+ className={cn(
16
+ 'border-input placeholder:text-muted-foreground flex min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-sm shadow-sm focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-50',
17
+ className,
18
+ )}
19
+ ref={ref}
20
+ {...props}
21
+ />
22
+ );
23
+ },
24
+ );
23
25
 
24
- Textarea.displayName = "Textarea";
26
+ Textarea.displayName = 'Textarea';
25
27
 
26
28
  /* -----------------------------------------------------------------------------
27
29
  * Exports