@arolariu/components 0.0.30 → 0.0.32

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 (476) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/components/ui/accordion.cjs +1 -1
  3. package/dist/cjs/components/ui/accordion.cjs.map +1 -1
  4. package/dist/cjs/components/ui/alert-dialog.cjs +1 -1
  5. package/dist/cjs/components/ui/alert-dialog.cjs.map +1 -1
  6. package/dist/cjs/components/ui/alert.cjs +1 -1
  7. package/dist/cjs/components/ui/alert.cjs.map +1 -1
  8. package/dist/cjs/components/ui/aspect-ratio.cjs +1 -1
  9. package/dist/cjs/components/ui/aspect-ratio.cjs.map +1 -1
  10. package/dist/cjs/components/ui/avatar.cjs +1 -1
  11. package/dist/cjs/components/ui/avatar.cjs.map +1 -1
  12. package/dist/cjs/components/ui/badge.cjs +1 -1
  13. package/dist/cjs/components/ui/badge.cjs.map +1 -1
  14. package/dist/cjs/components/ui/breadcrumb.cjs +1 -1
  15. package/dist/cjs/components/ui/breadcrumb.cjs.map +1 -1
  16. package/dist/cjs/components/ui/button.cjs +1 -1
  17. package/dist/cjs/components/ui/button.cjs.map +1 -1
  18. package/dist/cjs/components/ui/calendar.cjs +1 -1
  19. package/dist/cjs/components/ui/calendar.cjs.map +1 -1
  20. package/dist/cjs/components/ui/card.cjs +1 -1
  21. package/dist/cjs/components/ui/card.cjs.map +1 -1
  22. package/dist/cjs/components/ui/carousel.cjs +1 -1
  23. package/dist/cjs/components/ui/carousel.cjs.map +1 -1
  24. package/dist/cjs/components/ui/chart.cjs +3 -3
  25. package/dist/cjs/components/ui/chart.cjs.map +1 -1
  26. package/dist/cjs/components/ui/checkbox.cjs +1 -1
  27. package/dist/cjs/components/ui/checkbox.cjs.map +1 -1
  28. package/dist/cjs/components/ui/collapsible.cjs +1 -1
  29. package/dist/cjs/components/ui/collapsible.cjs.map +1 -1
  30. package/dist/cjs/components/ui/command.cjs +1 -1
  31. package/dist/cjs/components/ui/command.cjs.map +1 -1
  32. package/dist/cjs/components/ui/context-menu.cjs +1 -1
  33. package/dist/cjs/components/ui/context-menu.cjs.map +1 -1
  34. package/dist/cjs/components/ui/dialog.cjs +1 -1
  35. package/dist/cjs/components/ui/dialog.cjs.map +1 -1
  36. package/dist/cjs/components/ui/drawer.cjs +1 -1
  37. package/dist/cjs/components/ui/drawer.cjs.map +1 -1
  38. package/dist/cjs/components/ui/dropdown-menu.cjs +1 -1
  39. package/dist/cjs/components/ui/dropdown-menu.cjs.map +1 -1
  40. package/dist/cjs/components/ui/form.cjs +1 -1
  41. package/dist/cjs/components/ui/form.cjs.map +1 -1
  42. package/dist/cjs/components/ui/hover-card.cjs +1 -1
  43. package/dist/cjs/components/ui/hover-card.cjs.map +1 -1
  44. package/dist/cjs/components/ui/input-otp.cjs +1 -1
  45. package/dist/cjs/components/ui/input-otp.cjs.map +1 -1
  46. package/dist/cjs/components/ui/input.cjs +1 -1
  47. package/dist/cjs/components/ui/input.cjs.map +1 -1
  48. package/dist/cjs/components/ui/label.cjs +1 -1
  49. package/dist/cjs/components/ui/label.cjs.map +1 -1
  50. package/dist/cjs/components/ui/menubar.cjs +1 -1
  51. package/dist/cjs/components/ui/menubar.cjs.map +1 -1
  52. package/dist/cjs/components/ui/navigation-menu.cjs +1 -1
  53. package/dist/cjs/components/ui/navigation-menu.cjs.map +1 -1
  54. package/dist/cjs/components/ui/pagination.cjs +1 -1
  55. package/dist/cjs/components/ui/pagination.cjs.map +1 -1
  56. package/dist/cjs/components/ui/popover.cjs +1 -1
  57. package/dist/cjs/components/ui/popover.cjs.map +1 -1
  58. package/dist/cjs/components/ui/progress.cjs +1 -1
  59. package/dist/cjs/components/ui/progress.cjs.map +1 -1
  60. package/dist/cjs/components/ui/radio-group.cjs +1 -1
  61. package/dist/cjs/components/ui/radio-group.cjs.map +1 -1
  62. package/dist/cjs/components/ui/resizable.cjs +1 -1
  63. package/dist/cjs/components/ui/resizable.cjs.map +1 -1
  64. package/dist/cjs/components/ui/scroll-area.cjs +1 -1
  65. package/dist/cjs/components/ui/scroll-area.cjs.map +1 -1
  66. package/dist/cjs/components/ui/select.cjs +1 -1
  67. package/dist/cjs/components/ui/select.cjs.map +1 -1
  68. package/dist/cjs/components/ui/separator.cjs +1 -1
  69. package/dist/cjs/components/ui/separator.cjs.map +1 -1
  70. package/dist/cjs/components/ui/sheet.cjs +1 -1
  71. package/dist/cjs/components/ui/sheet.cjs.map +1 -1
  72. package/dist/cjs/components/ui/sidebar.cjs +1 -1
  73. package/dist/cjs/components/ui/sidebar.cjs.map +1 -1
  74. package/dist/cjs/components/ui/skeleton.cjs +1 -1
  75. package/dist/cjs/components/ui/skeleton.cjs.map +1 -1
  76. package/dist/cjs/components/ui/slider.cjs +1 -1
  77. package/dist/cjs/components/ui/slider.cjs.map +1 -1
  78. package/dist/cjs/components/ui/sonner.cjs +1 -1
  79. package/dist/cjs/components/ui/sonner.cjs.map +1 -1
  80. package/dist/cjs/components/ui/switch.cjs +1 -1
  81. package/dist/cjs/components/ui/switch.cjs.map +1 -1
  82. package/dist/cjs/components/ui/table.cjs +1 -1
  83. package/dist/cjs/components/ui/table.cjs.map +1 -1
  84. package/dist/cjs/components/ui/tabs.cjs +1 -1
  85. package/dist/cjs/components/ui/tabs.cjs.map +1 -1
  86. package/dist/cjs/components/ui/textarea.cjs +1 -1
  87. package/dist/cjs/components/ui/textarea.cjs.map +1 -1
  88. package/dist/cjs/components/ui/toggle-group.cjs +1 -1
  89. package/dist/cjs/components/ui/toggle-group.cjs.map +1 -1
  90. package/dist/cjs/components/ui/toggle.cjs +1 -1
  91. package/dist/cjs/components/ui/toggle.cjs.map +1 -1
  92. package/dist/cjs/components/ui/tooltip.cjs +1 -1
  93. package/dist/cjs/components/ui/tooltip.cjs.map +1 -1
  94. package/dist/cjs/index.cjs +1 -1
  95. package/dist/cjs/index.css +1 -0
  96. package/dist/cjs/node_modules/@radix-ui/react-accordion/dist/index.cjs +1 -1
  97. package/dist/cjs/node_modules/@radix-ui/react-accordion/dist/index.cjs.map +1 -1
  98. package/dist/cjs/node_modules/@radix-ui/react-alert-dialog/dist/index.cjs +3 -3
  99. package/dist/cjs/node_modules/@radix-ui/react-alert-dialog/dist/index.cjs.map +1 -1
  100. package/dist/cjs/node_modules/@radix-ui/react-arrow/dist/index.cjs +1 -1
  101. package/dist/cjs/node_modules/@radix-ui/react-arrow/dist/index.cjs.map +1 -1
  102. package/dist/cjs/node_modules/@radix-ui/react-aspect-ratio/dist/index.cjs +1 -1
  103. package/dist/cjs/node_modules/@radix-ui/react-aspect-ratio/dist/index.cjs.map +1 -1
  104. package/dist/cjs/node_modules/@radix-ui/react-avatar/dist/index.cjs +1 -1
  105. package/dist/cjs/node_modules/@radix-ui/react-avatar/dist/index.cjs.map +1 -1
  106. package/dist/cjs/node_modules/@radix-ui/react-checkbox/dist/index.cjs +1 -1
  107. package/dist/cjs/node_modules/@radix-ui/react-checkbox/dist/index.cjs.map +1 -1
  108. package/dist/cjs/node_modules/@radix-ui/react-collapsible/dist/index.cjs +1 -1
  109. package/dist/cjs/node_modules/@radix-ui/react-collapsible/dist/index.cjs.map +1 -1
  110. package/dist/cjs/node_modules/@radix-ui/react-collection/dist/index.cjs +1 -1
  111. package/dist/cjs/node_modules/@radix-ui/react-collection/dist/index.cjs.map +1 -1
  112. package/dist/cjs/node_modules/@radix-ui/react-context/dist/index.cjs +1 -1
  113. package/dist/cjs/node_modules/@radix-ui/react-context/dist/index.cjs.map +1 -1
  114. package/dist/cjs/node_modules/@radix-ui/react-context-menu/dist/index.cjs +1 -1
  115. package/dist/cjs/node_modules/@radix-ui/react-context-menu/dist/index.cjs.map +1 -1
  116. package/dist/cjs/node_modules/@radix-ui/react-dialog/dist/index.cjs +2 -2
  117. package/dist/cjs/node_modules/@radix-ui/react-dialog/dist/index.cjs.map +1 -1
  118. package/dist/cjs/node_modules/@radix-ui/react-direction/dist/index.cjs +1 -1
  119. package/dist/cjs/node_modules/@radix-ui/react-direction/dist/index.cjs.map +1 -1
  120. package/dist/cjs/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs +1 -1
  121. package/dist/cjs/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs.map +1 -1
  122. package/dist/cjs/node_modules/@radix-ui/react-dropdown-menu/dist/index.cjs +1 -1
  123. package/dist/cjs/node_modules/@radix-ui/react-dropdown-menu/dist/index.cjs.map +1 -1
  124. package/dist/cjs/node_modules/@radix-ui/react-focus-scope/dist/index.cjs +1 -1
  125. package/dist/cjs/node_modules/@radix-ui/react-focus-scope/dist/index.cjs.map +1 -1
  126. package/dist/cjs/node_modules/@radix-ui/react-hover-card/dist/index.cjs +1 -1
  127. package/dist/cjs/node_modules/@radix-ui/react-hover-card/dist/index.cjs.map +1 -1
  128. package/dist/cjs/node_modules/@radix-ui/react-label/dist/index.cjs +1 -1
  129. package/dist/cjs/node_modules/@radix-ui/react-label/dist/index.cjs.map +1 -1
  130. package/dist/cjs/node_modules/@radix-ui/react-menu/dist/index.cjs +1 -1
  131. package/dist/cjs/node_modules/@radix-ui/react-menu/dist/index.cjs.map +1 -1
  132. package/dist/cjs/node_modules/@radix-ui/react-menubar/dist/index.cjs +1 -1
  133. package/dist/cjs/node_modules/@radix-ui/react-menubar/dist/index.cjs.map +1 -1
  134. package/dist/cjs/node_modules/@radix-ui/react-navigation-menu/dist/index.cjs +1 -1
  135. package/dist/cjs/node_modules/@radix-ui/react-navigation-menu/dist/index.cjs.map +1 -1
  136. package/dist/cjs/node_modules/@radix-ui/react-popover/dist/index.cjs +1 -1
  137. package/dist/cjs/node_modules/@radix-ui/react-popover/dist/index.cjs.map +1 -1
  138. package/dist/cjs/node_modules/@radix-ui/react-popper/dist/index.cjs +1 -1
  139. package/dist/cjs/node_modules/@radix-ui/react-popper/dist/index.cjs.map +1 -1
  140. package/dist/cjs/node_modules/@radix-ui/react-portal/dist/index.cjs +1 -1
  141. package/dist/cjs/node_modules/@radix-ui/react-portal/dist/index.cjs.map +1 -1
  142. package/dist/cjs/node_modules/@radix-ui/react-primitive/dist/index.cjs +1 -1
  143. package/dist/cjs/node_modules/@radix-ui/react-primitive/dist/index.cjs.map +1 -1
  144. package/dist/cjs/node_modules/@radix-ui/react-progress/dist/index.cjs +2 -2
  145. package/dist/cjs/node_modules/@radix-ui/react-progress/dist/index.cjs.map +1 -1
  146. package/dist/cjs/node_modules/@radix-ui/react-radio-group/dist/index.cjs +1 -1
  147. package/dist/cjs/node_modules/@radix-ui/react-radio-group/dist/index.cjs.map +1 -1
  148. package/dist/cjs/node_modules/@radix-ui/react-roving-focus/dist/index.cjs +1 -1
  149. package/dist/cjs/node_modules/@radix-ui/react-roving-focus/dist/index.cjs.map +1 -1
  150. package/dist/cjs/node_modules/@radix-ui/react-scroll-area/dist/index.cjs +1 -1
  151. package/dist/cjs/node_modules/@radix-ui/react-scroll-area/dist/index.cjs.map +1 -1
  152. package/dist/cjs/node_modules/@radix-ui/react-select/dist/index.cjs +1 -1
  153. package/dist/cjs/node_modules/@radix-ui/react-select/dist/index.cjs.map +1 -1
  154. package/dist/cjs/node_modules/@radix-ui/react-separator/dist/index.cjs +1 -1
  155. package/dist/cjs/node_modules/@radix-ui/react-separator/dist/index.cjs.map +1 -1
  156. package/dist/cjs/node_modules/@radix-ui/react-slider/dist/index.cjs +1 -1
  157. package/dist/cjs/node_modules/@radix-ui/react-slider/dist/index.cjs.map +1 -1
  158. package/dist/cjs/node_modules/@radix-ui/react-slot/dist/index.cjs +1 -1
  159. package/dist/cjs/node_modules/@radix-ui/react-slot/dist/index.cjs.map +1 -1
  160. package/dist/cjs/node_modules/@radix-ui/react-switch/dist/index.cjs +1 -1
  161. package/dist/cjs/node_modules/@radix-ui/react-switch/dist/index.cjs.map +1 -1
  162. package/dist/cjs/node_modules/@radix-ui/react-tabs/dist/index.cjs +1 -1
  163. package/dist/cjs/node_modules/@radix-ui/react-tabs/dist/index.cjs.map +1 -1
  164. package/dist/cjs/node_modules/@radix-ui/react-toggle/dist/index.cjs +1 -1
  165. package/dist/cjs/node_modules/@radix-ui/react-toggle/dist/index.cjs.map +1 -1
  166. package/dist/cjs/node_modules/@radix-ui/react-toggle-group/dist/index.cjs +1 -1
  167. package/dist/cjs/node_modules/@radix-ui/react-toggle-group/dist/index.cjs.map +1 -1
  168. package/dist/cjs/node_modules/@radix-ui/react-tooltip/dist/index.cjs +1 -1
  169. package/dist/cjs/node_modules/@radix-ui/react-tooltip/dist/index.cjs.map +1 -1
  170. package/dist/cjs/node_modules/@radix-ui/react-visually-hidden/dist/index.cjs +1 -1
  171. package/dist/cjs/node_modules/@radix-ui/react-visually-hidden/dist/index.cjs.map +1 -1
  172. package/dist/cjs/node_modules/react-day-picker/dist/index.esm.cjs +1 -1
  173. package/dist/cjs/node_modules/react-day-picker/dist/index.esm.cjs.map +1 -1
  174. package/dist/esm/components/ui/accordion.js +20 -20
  175. package/dist/esm/components/ui/accordion.js.map +1 -1
  176. package/dist/esm/components/ui/alert-dialog.js +53 -50
  177. package/dist/esm/components/ui/alert-dialog.js.map +1 -1
  178. package/dist/esm/components/ui/alert.js +10 -10
  179. package/dist/esm/components/ui/alert.js.map +1 -1
  180. package/dist/esm/components/ui/aspect-ratio.js +4 -4
  181. package/dist/esm/components/ui/aspect-ratio.js.map +1 -1
  182. package/dist/esm/components/ui/avatar.js +7 -7
  183. package/dist/esm/components/ui/avatar.js.map +1 -1
  184. package/dist/esm/components/ui/badge.js +9 -10
  185. package/dist/esm/components/ui/badge.js.map +1 -1
  186. package/dist/esm/components/ui/breadcrumb.js +36 -31
  187. package/dist/esm/components/ui/breadcrumb.js.map +1 -1
  188. package/dist/esm/components/ui/button.js +9 -10
  189. package/dist/esm/components/ui/button.js.map +1 -1
  190. package/dist/esm/components/ui/calendar.js +4 -4
  191. package/dist/esm/components/ui/calendar.js.map +1 -1
  192. package/dist/esm/components/ui/card.js +15 -12
  193. package/dist/esm/components/ui/card.js.map +1 -1
  194. package/dist/esm/components/ui/carousel.js +83 -83
  195. package/dist/esm/components/ui/carousel.js.map +1 -1
  196. package/dist/esm/components/ui/chart.js +80 -80
  197. package/dist/esm/components/ui/chart.js.map +1 -1
  198. package/dist/esm/components/ui/checkbox.js +4 -4
  199. package/dist/esm/components/ui/checkbox.js.map +1 -1
  200. package/dist/esm/components/ui/collapsible.js +10 -10
  201. package/dist/esm/components/ui/collapsible.js.map +1 -1
  202. package/dist/esm/components/ui/command.js +53 -53
  203. package/dist/esm/components/ui/command.js.map +1 -1
  204. package/dist/esm/components/ui/context-menu.js +80 -77
  205. package/dist/esm/components/ui/context-menu.js.map +1 -1
  206. package/dist/esm/components/ui/dialog.js +48 -45
  207. package/dist/esm/components/ui/dialog.js.map +1 -1
  208. package/dist/esm/components/ui/drawer.js +55 -49
  209. package/dist/esm/components/ui/drawer.js.map +1 -1
  210. package/dist/esm/components/ui/dropdown-menu.js +67 -64
  211. package/dist/esm/components/ui/dropdown-menu.js.map +1 -1
  212. package/dist/esm/components/ui/form.js +44 -38
  213. package/dist/esm/components/ui/form.js.map +1 -1
  214. package/dist/esm/components/ui/hover-card.js +6 -6
  215. package/dist/esm/components/ui/hover-card.js.map +1 -1
  216. package/dist/esm/components/ui/input-otp.js +19 -19
  217. package/dist/esm/components/ui/input-otp.js.map +1 -1
  218. package/dist/esm/components/ui/input.js +2 -2
  219. package/dist/esm/components/ui/input.js.map +1 -1
  220. package/dist/esm/components/ui/label.js +4 -4
  221. package/dist/esm/components/ui/label.js.map +1 -1
  222. package/dist/esm/components/ui/menubar.js +94 -91
  223. package/dist/esm/components/ui/menubar.js.map +1 -1
  224. package/dist/esm/components/ui/navigation-menu.js +44 -44
  225. package/dist/esm/components/ui/navigation-menu.js.map +1 -1
  226. package/dist/esm/components/ui/pagination.js +39 -39
  227. package/dist/esm/components/ui/pagination.js.map +1 -1
  228. package/dist/esm/components/ui/popover.js +9 -9
  229. package/dist/esm/components/ui/popover.js.map +1 -1
  230. package/dist/esm/components/ui/progress.js +9 -9
  231. package/dist/esm/components/ui/progress.js.map +1 -1
  232. package/dist/esm/components/ui/radio-group.js +8 -8
  233. package/dist/esm/components/ui/radio-group.js.map +1 -1
  234. package/dist/esm/components/ui/resizable.js +8 -8
  235. package/dist/esm/components/ui/resizable.js.map +1 -1
  236. package/dist/esm/components/ui/scroll-area.js +22 -22
  237. package/dist/esm/components/ui/scroll-area.js.map +1 -1
  238. package/dist/esm/components/ui/select.js +81 -78
  239. package/dist/esm/components/ui/select.js.map +1 -1
  240. package/dist/esm/components/ui/separator.js +4 -4
  241. package/dist/esm/components/ui/separator.js.map +1 -1
  242. package/dist/esm/components/ui/sheet.js +50 -44
  243. package/dist/esm/components/ui/sheet.js.map +1 -1
  244. package/dist/esm/components/ui/sidebar.js +178 -179
  245. package/dist/esm/components/ui/sidebar.js.map +1 -1
  246. package/dist/esm/components/ui/skeleton.js +8 -5
  247. package/dist/esm/components/ui/skeleton.js.map +1 -1
  248. package/dist/esm/components/ui/slider.js +21 -21
  249. package/dist/esm/components/ui/slider.js.map +1 -1
  250. package/dist/esm/components/ui/sonner.js +2 -2
  251. package/dist/esm/components/ui/sonner.js.map +1 -1
  252. package/dist/esm/components/ui/switch.js +3 -3
  253. package/dist/esm/components/ui/switch.js.map +1 -1
  254. package/dist/esm/components/ui/table.js +20 -17
  255. package/dist/esm/components/ui/table.js.map +1 -1
  256. package/dist/esm/components/ui/tabs.js +5 -5
  257. package/dist/esm/components/ui/tabs.js.map +1 -1
  258. package/dist/esm/components/ui/textarea.js +2 -2
  259. package/dist/esm/components/ui/textarea.js.map +1 -1
  260. package/dist/esm/components/ui/toggle-group.js +7 -7
  261. package/dist/esm/components/ui/toggle-group.js.map +1 -1
  262. package/dist/esm/components/ui/toggle.js +5 -5
  263. package/dist/esm/components/ui/toggle.js.map +1 -1
  264. package/dist/esm/components/ui/tooltip.js +19 -19
  265. package/dist/esm/components/ui/tooltip.js.map +1 -1
  266. package/dist/esm/index.css +1 -0
  267. package/dist/esm/index.js +294 -293
  268. package/dist/esm/index.js.map +1 -1
  269. package/dist/esm/node_modules/@radix-ui/react-accordion/dist/index.js +74 -74
  270. package/dist/esm/node_modules/@radix-ui/react-accordion/dist/index.js.map +1 -1
  271. package/dist/esm/node_modules/@radix-ui/react-alert-dialog/dist/index.js +69 -69
  272. package/dist/esm/node_modules/@radix-ui/react-alert-dialog/dist/index.js.map +1 -1
  273. package/dist/esm/node_modules/@radix-ui/react-arrow/dist/index.js +6 -6
  274. package/dist/esm/node_modules/@radix-ui/react-arrow/dist/index.js.map +1 -1
  275. package/dist/esm/node_modules/@radix-ui/react-aspect-ratio/dist/index.js +12 -12
  276. package/dist/esm/node_modules/@radix-ui/react-aspect-ratio/dist/index.js.map +1 -1
  277. package/dist/esm/node_modules/@radix-ui/react-avatar/dist/index.js +29 -29
  278. package/dist/esm/node_modules/@radix-ui/react-avatar/dist/index.js.map +1 -1
  279. package/dist/esm/node_modules/@radix-ui/react-checkbox/dist/index.js +62 -62
  280. package/dist/esm/node_modules/@radix-ui/react-checkbox/dist/index.js.map +1 -1
  281. package/dist/esm/node_modules/@radix-ui/react-collapsible/dist/index.js +46 -46
  282. package/dist/esm/node_modules/@radix-ui/react-collapsible/dist/index.js.map +1 -1
  283. package/dist/esm/node_modules/@radix-ui/react-collection/dist/index.js +26 -26
  284. package/dist/esm/node_modules/@radix-ui/react-collection/dist/index.js.map +1 -1
  285. package/dist/esm/node_modules/@radix-ui/react-context/dist/index.js +21 -21
  286. package/dist/esm/node_modules/@radix-ui/react-context/dist/index.js.map +1 -1
  287. package/dist/esm/node_modules/@radix-ui/react-context-menu/dist/index.js +115 -115
  288. package/dist/esm/node_modules/@radix-ui/react-context-menu/dist/index.js.map +1 -1
  289. package/dist/esm/node_modules/@radix-ui/react-dialog/dist/index.js +100 -100
  290. package/dist/esm/node_modules/@radix-ui/react-dialog/dist/index.js.map +1 -1
  291. package/dist/esm/node_modules/@radix-ui/react-direction/dist/index.js +1 -1
  292. package/dist/esm/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +38 -38
  293. package/dist/esm/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +1 -1
  294. package/dist/esm/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +105 -105
  295. package/dist/esm/node_modules/@radix-ui/react-dropdown-menu/dist/index.js.map +1 -1
  296. package/dist/esm/node_modules/@radix-ui/react-focus-scope/dist/index.js +9 -9
  297. package/dist/esm/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +1 -1
  298. package/dist/esm/node_modules/@radix-ui/react-hover-card/dist/index.js +41 -41
  299. package/dist/esm/node_modules/@radix-ui/react-hover-card/dist/index.js.map +1 -1
  300. package/dist/esm/node_modules/@radix-ui/react-label/dist/index.js +3 -3
  301. package/dist/esm/node_modules/@radix-ui/react-label/dist/index.js.map +1 -1
  302. package/dist/esm/node_modules/@radix-ui/react-menu/dist/index.js +198 -198
  303. package/dist/esm/node_modules/@radix-ui/react-menu/dist/index.js.map +1 -1
  304. package/dist/esm/node_modules/@radix-ui/react-menubar/dist/index.js +96 -96
  305. package/dist/esm/node_modules/@radix-ui/react-menubar/dist/index.js.map +1 -1
  306. package/dist/esm/node_modules/@radix-ui/react-navigation-menu/dist/index.js +236 -236
  307. package/dist/esm/node_modules/@radix-ui/react-navigation-menu/dist/index.js.map +1 -1
  308. package/dist/esm/node_modules/@radix-ui/react-popover/dist/index.js +90 -90
  309. package/dist/esm/node_modules/@radix-ui/react-popover/dist/index.js.map +1 -1
  310. package/dist/esm/node_modules/@radix-ui/react-popper/dist/index.js +49 -49
  311. package/dist/esm/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -1
  312. package/dist/esm/node_modules/@radix-ui/react-portal/dist/index.js +8 -8
  313. package/dist/esm/node_modules/@radix-ui/react-portal/dist/index.js.map +1 -1
  314. package/dist/esm/node_modules/@radix-ui/react-primitive/dist/index.js +10 -10
  315. package/dist/esm/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -1
  316. package/dist/esm/node_modules/@radix-ui/react-progress/dist/index.js +18 -18
  317. package/dist/esm/node_modules/@radix-ui/react-progress/dist/index.js.map +1 -1
  318. package/dist/esm/node_modules/@radix-ui/react-radio-group/dist/index.js +86 -86
  319. package/dist/esm/node_modules/@radix-ui/react-radio-group/dist/index.js.map +1 -1
  320. package/dist/esm/node_modules/@radix-ui/react-roving-focus/dist/index.js +29 -29
  321. package/dist/esm/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +1 -1
  322. package/dist/esm/node_modules/@radix-ui/react-scroll-area/dist/index.js +170 -170
  323. package/dist/esm/node_modules/@radix-ui/react-scroll-area/dist/index.js.map +1 -1
  324. package/dist/esm/node_modules/@radix-ui/react-select/dist/index.js +350 -350
  325. package/dist/esm/node_modules/@radix-ui/react-select/dist/index.js.map +1 -1
  326. package/dist/esm/node_modules/@radix-ui/react-separator/dist/index.js +6 -6
  327. package/dist/esm/node_modules/@radix-ui/react-separator/dist/index.js.map +1 -1
  328. package/dist/esm/node_modules/@radix-ui/react-slider/dist/index.js +114 -114
  329. package/dist/esm/node_modules/@radix-ui/react-slider/dist/index.js.map +1 -1
  330. package/dist/esm/node_modules/@radix-ui/react-slot/dist/index.js +14 -14
  331. package/dist/esm/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -1
  332. package/dist/esm/node_modules/@radix-ui/react-switch/dist/index.js +48 -48
  333. package/dist/esm/node_modules/@radix-ui/react-switch/dist/index.js.map +1 -1
  334. package/dist/esm/node_modules/@radix-ui/react-tabs/dist/index.js +48 -48
  335. package/dist/esm/node_modules/@radix-ui/react-tabs/dist/index.js.map +1 -1
  336. package/dist/esm/node_modules/@radix-ui/react-toggle/dist/index.js +6 -6
  337. package/dist/esm/node_modules/@radix-ui/react-toggle/dist/index.js.map +1 -1
  338. package/dist/esm/node_modules/@radix-ui/react-toggle-group/dist/index.js +67 -71
  339. package/dist/esm/node_modules/@radix-ui/react-toggle-group/dist/index.js.map +1 -1
  340. package/dist/esm/node_modules/@radix-ui/react-tooltip/dist/index.js +97 -97
  341. package/dist/esm/node_modules/@radix-ui/react-tooltip/dist/index.js.map +1 -1
  342. package/dist/esm/node_modules/@radix-ui/react-visually-hidden/dist/index.js +4 -4
  343. package/dist/esm/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +1 -1
  344. package/dist/esm/node_modules/react-day-picker/dist/index.esm.js +483 -483
  345. package/dist/esm/node_modules/react-day-picker/dist/index.esm.js.map +1 -1
  346. package/dist/index.css +1 -0
  347. package/dist/index.js +298 -0
  348. package/dist/types/components/ui/accordion.d.ts.map +1 -1
  349. package/dist/types/components/ui/alert-dialog.d.ts.map +1 -1
  350. package/dist/types/components/ui/alert.d.ts.map +1 -1
  351. package/dist/types/components/ui/avatar.d.ts.map +1 -1
  352. package/dist/types/components/ui/badge.d.ts.map +1 -1
  353. package/dist/types/components/ui/breadcrumb.d.ts.map +1 -1
  354. package/dist/types/components/ui/button.d.ts.map +1 -1
  355. package/dist/types/components/ui/calendar.d.ts.map +1 -1
  356. package/dist/types/components/ui/card.d.ts +1 -1
  357. package/dist/types/components/ui/card.d.ts.map +1 -1
  358. package/dist/types/components/ui/carousel.d.ts +1 -1
  359. package/dist/types/components/ui/carousel.d.ts.map +1 -1
  360. package/dist/types/components/ui/chart.d.ts.map +1 -1
  361. package/dist/types/components/ui/checkbox.d.ts.map +1 -1
  362. package/dist/types/components/ui/command.d.ts +1 -1
  363. package/dist/types/components/ui/command.d.ts.map +1 -1
  364. package/dist/types/components/ui/context-menu.d.ts.map +1 -1
  365. package/dist/types/components/ui/dialog.d.ts.map +1 -1
  366. package/dist/types/components/ui/drawer.d.ts.map +1 -1
  367. package/dist/types/components/ui/dropdown-menu.d.ts.map +1 -1
  368. package/dist/types/components/ui/form.d.ts.map +1 -1
  369. package/dist/types/components/ui/hover-card.d.ts.map +1 -1
  370. package/dist/types/components/ui/input-otp.d.ts.map +1 -1
  371. package/dist/types/components/ui/input.d.ts.map +1 -1
  372. package/dist/types/components/ui/label.d.ts.map +1 -1
  373. package/dist/types/components/ui/menubar.d.ts.map +1 -1
  374. package/dist/types/components/ui/navigation-menu.d.ts.map +1 -1
  375. package/dist/types/components/ui/pagination.d.ts +1 -1
  376. package/dist/types/components/ui/pagination.d.ts.map +1 -1
  377. package/dist/types/components/ui/popover.d.ts.map +1 -1
  378. package/dist/types/components/ui/progress.d.ts.map +1 -1
  379. package/dist/types/components/ui/radio-group.d.ts.map +1 -1
  380. package/dist/types/components/ui/resizable.d.ts.map +1 -1
  381. package/dist/types/components/ui/scroll-area.d.ts.map +1 -1
  382. package/dist/types/components/ui/select.d.ts.map +1 -1
  383. package/dist/types/components/ui/separator.d.ts.map +1 -1
  384. package/dist/types/components/ui/sheet.d.ts.map +1 -1
  385. package/dist/types/components/ui/sidebar.d.ts +5 -5
  386. package/dist/types/components/ui/sidebar.d.ts.map +1 -1
  387. package/dist/types/components/ui/skeleton.d.ts.map +1 -1
  388. package/dist/types/components/ui/slider.d.ts.map +1 -1
  389. package/dist/types/components/ui/switch.d.ts.map +1 -1
  390. package/dist/types/components/ui/table.d.ts.map +1 -1
  391. package/dist/types/components/ui/tabs.d.ts.map +1 -1
  392. package/dist/types/components/ui/textarea.d.ts.map +1 -1
  393. package/dist/types/components/ui/toggle-group.d.ts +1 -1
  394. package/dist/types/components/ui/toggle-group.d.ts.map +1 -1
  395. package/dist/types/components/ui/toggle.d.ts.map +1 -1
  396. package/dist/types/components/ui/tooltip.d.ts.map +1 -1
  397. package/package.json +237 -442
  398. package/src/components/ui/accordion.tsx +10 -11
  399. package/src/components/ui/alert-dialog.tsx +160 -157
  400. package/src/components/ui/alert.tsx +11 -9
  401. package/src/components/ui/aspect-ratio.tsx +12 -12
  402. package/src/components/ui/avatar.tsx +52 -53
  403. package/src/components/ui/badge.tsx +47 -48
  404. package/src/components/ui/breadcrumb.tsx +116 -111
  405. package/src/components/ui/button.tsx +60 -60
  406. package/src/components/ui/calendar.tsx +75 -75
  407. package/src/components/ui/card.tsx +79 -70
  408. package/src/components/ui/carousel.tsx +240 -241
  409. package/src/components/ui/chart.tsx +352 -353
  410. package/src/components/ui/checkbox.tsx +31 -32
  411. package/src/components/ui/collapsible.tsx +34 -34
  412. package/src/components/ui/command.tsx +176 -177
  413. package/src/components/ui/context-menu.tsx +254 -252
  414. package/src/components/ui/dialog.tsx +20 -18
  415. package/src/components/ui/drawer.tsx +137 -132
  416. package/src/components/ui/dropdown-menu.tsx +259 -257
  417. package/src/components/ui/form.tsx +173 -167
  418. package/src/components/ui/hover-card.tsx +41 -42
  419. package/src/components/ui/input-otp.tsx +77 -78
  420. package/src/components/ui/input.tsx +22 -23
  421. package/src/components/ui/label.tsx +23 -24
  422. package/src/components/ui/menubar.tsx +278 -276
  423. package/src/components/ui/navigation-menu.tsx +170 -170
  424. package/src/components/ui/pagination.tsx +128 -129
  425. package/src/components/ui/popover.tsx +47 -48
  426. package/src/components/ui/progress.tsx +30 -31
  427. package/src/components/ui/radio-group.tsx +44 -45
  428. package/src/components/ui/resizable.tsx +55 -56
  429. package/src/components/ui/scroll-area.tsx +57 -58
  430. package/src/components/ui/select.tsx +183 -181
  431. package/src/components/ui/separator.tsx +27 -28
  432. package/src/components/ui/sheet.tsx +144 -139
  433. package/src/components/ui/sidebar.tsx +725 -723
  434. package/src/components/ui/skeleton.tsx +17 -14
  435. package/src/components/ui/slider.tsx +62 -63
  436. package/src/components/ui/sonner.tsx +30 -30
  437. package/src/components/ui/switch.tsx +30 -31
  438. package/src/components/ui/table.tsx +118 -116
  439. package/src/components/ui/tabs.tsx +65 -66
  440. package/src/components/ui/textarea.tsx +19 -19
  441. package/src/components/ui/toggle-group.tsx +72 -73
  442. package/src/components/ui/toggle.tsx +46 -47
  443. package/src/components/ui/tooltip.tsx +60 -61
  444. package/src/index.css +3 -107
  445. package/src/index.ts +2 -0
  446. package/tailwind.config.mjs +67 -0
  447. package/tsconfig.json +50 -0
  448. package/dist/cjs/_virtual/jsx-runtime.cjs +0 -2
  449. package/dist/cjs/_virtual/jsx-runtime.cjs.map +0 -1
  450. package/dist/cjs/_virtual/jsx-runtime2.cjs +0 -2
  451. package/dist/cjs/_virtual/jsx-runtime2.cjs.map +0 -1
  452. package/dist/cjs/_virtual/react-jsx-runtime.development.cjs +0 -2
  453. package/dist/cjs/_virtual/react-jsx-runtime.development.cjs.map +0 -1
  454. package/dist/cjs/_virtual/react-jsx-runtime.production.cjs +0 -2
  455. package/dist/cjs/_virtual/react-jsx-runtime.production.cjs.map +0 -1
  456. package/dist/cjs/node_modules/react/cjs/react-jsx-runtime.development.cjs +0 -24
  457. package/dist/cjs/node_modules/react/cjs/react-jsx-runtime.development.cjs.map +0 -1
  458. package/dist/cjs/node_modules/react/cjs/react-jsx-runtime.production.cjs +0 -10
  459. package/dist/cjs/node_modules/react/cjs/react-jsx-runtime.production.cjs.map +0 -1
  460. package/dist/cjs/node_modules/react/jsx-runtime.cjs +0 -2
  461. package/dist/cjs/node_modules/react/jsx-runtime.cjs.map +0 -1
  462. package/dist/esm/_virtual/jsx-runtime.js +0 -7
  463. package/dist/esm/_virtual/jsx-runtime.js.map +0 -1
  464. package/dist/esm/_virtual/jsx-runtime2.js +0 -6
  465. package/dist/esm/_virtual/jsx-runtime2.js.map +0 -1
  466. package/dist/esm/_virtual/react-jsx-runtime.development.js +0 -6
  467. package/dist/esm/_virtual/react-jsx-runtime.development.js.map +0 -1
  468. package/dist/esm/_virtual/react-jsx-runtime.production.js +0 -6
  469. package/dist/esm/_virtual/react-jsx-runtime.production.js.map +0 -1
  470. package/dist/esm/node_modules/react/cjs/react-jsx-runtime.development.js +0 -410
  471. package/dist/esm/node_modules/react/cjs/react-jsx-runtime.development.js.map +0 -1
  472. package/dist/esm/node_modules/react/cjs/react-jsx-runtime.production.js +0 -37
  473. package/dist/esm/node_modules/react/cjs/react-jsx-runtime.production.js.map +0 -1
  474. package/dist/esm/node_modules/react/jsx-runtime.js +0 -12
  475. package/dist/esm/node_modules/react/jsx-runtime.js.map +0 -1
  476. package/src/global.d.ts +0 -3
@@ -1,241 +1,240 @@
1
- "use client"
2
-
3
- import * as React from "react"
4
- import useEmblaCarousel, {
5
- type UseEmblaCarouselType,
6
- } from "embla-carousel-react"
7
- import { ArrowLeft, ArrowRight } from "lucide-react"
8
-
9
- import { cn } from "@/lib/utils"
10
- import { Button } from "@/components/ui/button"
11
-
12
- type CarouselApi = UseEmblaCarouselType[1]
13
- type UseCarouselParameters = Parameters<typeof useEmblaCarousel>
14
- type CarouselOptions = UseCarouselParameters[0]
15
- type CarouselPlugin = UseCarouselParameters[1]
16
-
17
- type CarouselProps = {
18
- opts?: CarouselOptions
19
- plugins?: CarouselPlugin
20
- orientation?: "horizontal" | "vertical"
21
- setApi?: (api: CarouselApi) => void
22
- }
23
-
24
- type CarouselContextProps = {
25
- carouselRef: ReturnType<typeof useEmblaCarousel>[0]
26
- api: ReturnType<typeof useEmblaCarousel>[1]
27
- scrollPrev: () => void
28
- scrollNext: () => void
29
- canScrollPrev: boolean
30
- canScrollNext: boolean
31
- } & CarouselProps
32
-
33
- const CarouselContext = React.createContext<CarouselContextProps | null>(null)
34
-
35
- function useCarousel() {
36
- const context = React.useContext(CarouselContext)
37
-
38
- if (!context) {
39
- throw new Error("useCarousel must be used within a <Carousel />")
40
- }
41
-
42
- return context
43
- }
44
-
45
- function Carousel({
46
- orientation = "horizontal",
47
- opts,
48
- setApi,
49
- plugins,
50
- className,
51
- children,
52
- ...props
53
- }: React.ComponentProps<"div"> & CarouselProps) {
54
- const [carouselRef, api] = useEmblaCarousel(
55
- {
56
- ...opts,
57
- axis: orientation === "horizontal" ? "x" : "y",
58
- },
59
- plugins
60
- )
61
- const [canScrollPrev, setCanScrollPrev] = React.useState(false)
62
- const [canScrollNext, setCanScrollNext] = React.useState(false)
63
-
64
- const onSelect = React.useCallback((api: CarouselApi) => {
65
- if (!api) return
66
- setCanScrollPrev(api.canScrollPrev())
67
- setCanScrollNext(api.canScrollNext())
68
- }, [])
69
-
70
- const scrollPrev = React.useCallback(() => {
71
- api?.scrollPrev()
72
- }, [api])
73
-
74
- const scrollNext = React.useCallback(() => {
75
- api?.scrollNext()
76
- }, [api])
77
-
78
- const handleKeyDown = React.useCallback(
79
- (event: React.KeyboardEvent<HTMLDivElement>) => {
80
- if (event.key === "ArrowLeft") {
81
- event.preventDefault()
82
- scrollPrev()
83
- } else if (event.key === "ArrowRight") {
84
- event.preventDefault()
85
- scrollNext()
86
- }
87
- },
88
- [scrollPrev, scrollNext]
89
- )
90
-
91
- React.useEffect(() => {
92
- if (!api || !setApi) return
93
- setApi(api)
94
- }, [api, setApi])
95
-
96
- React.useEffect(() => {
97
- if (!api) return
98
- onSelect(api)
99
- api.on("reInit", onSelect)
100
- api.on("select", onSelect)
101
-
102
- return () => {
103
- api?.off("select", onSelect)
104
- }
105
- }, [api, onSelect])
106
-
107
- return (
108
- <CarouselContext.Provider
109
- value={{
110
- carouselRef,
111
- api: api,
112
- opts,
113
- orientation:
114
- orientation || (opts?.axis === "y" ? "vertical" : "horizontal"),
115
- scrollPrev,
116
- scrollNext,
117
- canScrollPrev,
118
- canScrollNext,
119
- }}
120
- >
121
- <div
122
- onKeyDownCapture={handleKeyDown}
123
- className={cn("relative", className)}
124
- role="region"
125
- aria-roledescription="carousel"
126
- data-slot="carousel"
127
- {...props}
128
- >
129
- {children}
130
- </div>
131
- </CarouselContext.Provider>
132
- )
133
- }
134
-
135
- function CarouselContent({ className, ...props }: React.ComponentProps<"div">) {
136
- const { carouselRef, orientation } = useCarousel()
137
-
138
- return (
139
- <div
140
- ref={carouselRef}
141
- className="overflow-hidden"
142
- data-slot="carousel-content"
143
- >
144
- <div
145
- className={cn(
146
- "flex",
147
- orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
148
- className
149
- )}
150
- {...props}
151
- />
152
- </div>
153
- )
154
- }
155
-
156
- function CarouselItem({ className, ...props }: React.ComponentProps<"div">) {
157
- const { orientation } = useCarousel()
158
-
159
- return (
160
- <div
161
- role="group"
162
- aria-roledescription="slide"
163
- data-slot="carousel-item"
164
- className={cn(
165
- "min-w-0 shrink-0 grow-0 basis-full",
166
- orientation === "horizontal" ? "pl-4" : "pt-4",
167
- className
168
- )}
169
- {...props}
170
- />
171
- )
172
- }
173
-
174
- function CarouselPrevious({
175
- className,
176
- variant = "outline",
177
- size = "icon",
178
- ...props
179
- }: React.ComponentProps<typeof Button>) {
180
- const { orientation, scrollPrev, canScrollPrev } = useCarousel()
181
-
182
- return (
183
- <Button
184
- data-slot="carousel-previous"
185
- variant={variant}
186
- size={size}
187
- className={cn(
188
- "absolute size-8 rounded-full",
189
- orientation === "horizontal"
190
- ? "top-1/2 -left-12 -translate-y-1/2"
191
- : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
192
- className
193
- )}
194
- disabled={!canScrollPrev}
195
- onClick={scrollPrev}
196
- {...props}
197
- >
198
- <ArrowLeft />
199
- <span className="sr-only">Previous slide</span>
200
- </Button>
201
- )
202
- }
203
-
204
- function CarouselNext({
205
- className,
206
- variant = "outline",
207
- size = "icon",
208
- ...props
209
- }: React.ComponentProps<typeof Button>) {
210
- const { orientation, scrollNext, canScrollNext } = useCarousel()
211
-
212
- return (
213
- <Button
214
- data-slot="carousel-next"
215
- variant={variant}
216
- size={size}
217
- className={cn(
218
- "absolute size-8 rounded-full",
219
- orientation === "horizontal"
220
- ? "top-1/2 -right-12 -translate-y-1/2"
221
- : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
222
- className
223
- )}
224
- disabled={!canScrollNext}
225
- onClick={scrollNext}
226
- {...props}
227
- >
228
- <ArrowRight />
229
- <span className="sr-only">Next slide</span>
230
- </Button>
231
- )
232
- }
233
-
234
- export {
235
- type CarouselApi,
236
- Carousel,
237
- CarouselContent,
238
- CarouselItem,
239
- CarouselPrevious,
240
- CarouselNext,
241
- }
1
+ "use client";
2
+
3
+ import * as React from "react";
4
+ import useEmblaCarousel, {
5
+ type UseEmblaCarouselType,
6
+ } from "embla-carousel-react";
7
+ import { ArrowLeft, ArrowRight } from "lucide-react";
8
+ import { cn } from "./../../lib/utils";
9
+ import { Button } from "./button";
10
+
11
+ type CarouselApi = UseEmblaCarouselType[1];
12
+ type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
13
+ type CarouselOptions = UseCarouselParameters[0];
14
+ type CarouselPlugin = UseCarouselParameters[1];
15
+
16
+ type CarouselProps = {
17
+ opts?: CarouselOptions;
18
+ plugins?: CarouselPlugin;
19
+ orientation?: "horizontal" | "vertical";
20
+ setApi?: (api: CarouselApi) => void;
21
+ };
22
+
23
+ type CarouselContextProps = {
24
+ carouselRef: ReturnType<typeof useEmblaCarousel>[0];
25
+ api: ReturnType<typeof useEmblaCarousel>[1];
26
+ scrollPrev: () => void;
27
+ scrollNext: () => void;
28
+ canScrollPrev: boolean;
29
+ canScrollNext: boolean;
30
+ } & CarouselProps;
31
+
32
+ const CarouselContext = React.createContext<CarouselContextProps | null>(null);
33
+
34
+ function useCarousel() {
35
+ const context = React.useContext(CarouselContext);
36
+
37
+ if (!context) {
38
+ throw new Error("useCarousel must be used within a <Carousel />");
39
+ }
40
+
41
+ return context;
42
+ }
43
+
44
+ function Carousel({
45
+ orientation = "horizontal",
46
+ opts,
47
+ setApi,
48
+ plugins,
49
+ className,
50
+ children,
51
+ ...props
52
+ }: React.ComponentProps<"div"> & CarouselProps) {
53
+ const [carouselRef, api] = useEmblaCarousel(
54
+ {
55
+ ...opts,
56
+ axis: orientation === "horizontal" ? "x" : "y",
57
+ },
58
+ plugins
59
+ );
60
+ const [canScrollPrev, setCanScrollPrev] = React.useState(false);
61
+ const [canScrollNext, setCanScrollNext] = React.useState(false);
62
+
63
+ const onSelect = React.useCallback((api: CarouselApi) => {
64
+ if (!api) return;
65
+ setCanScrollPrev(api.canScrollPrev());
66
+ setCanScrollNext(api.canScrollNext());
67
+ }, []);
68
+
69
+ const scrollPrev = React.useCallback(() => {
70
+ api?.scrollPrev();
71
+ }, [api]);
72
+
73
+ const scrollNext = React.useCallback(() => {
74
+ api?.scrollNext();
75
+ }, [api]);
76
+
77
+ const handleKeyDown = React.useCallback(
78
+ (event: React.KeyboardEvent<HTMLDivElement>) => {
79
+ if (event.key === "ArrowLeft") {
80
+ event.preventDefault();
81
+ scrollPrev();
82
+ } else if (event.key === "ArrowRight") {
83
+ event.preventDefault();
84
+ scrollNext();
85
+ }
86
+ },
87
+ [scrollPrev, scrollNext]
88
+ );
89
+
90
+ React.useEffect(() => {
91
+ if (!api || !setApi) return;
92
+ setApi(api);
93
+ }, [api, setApi]);
94
+
95
+ React.useEffect(() => {
96
+ if (!api) return;
97
+ onSelect(api);
98
+ api.on("reInit", onSelect);
99
+ api.on("select", onSelect);
100
+
101
+ return () => {
102
+ api?.off("select", onSelect);
103
+ };
104
+ }, [api, onSelect]);
105
+
106
+ return (
107
+ <CarouselContext.Provider
108
+ value={{
109
+ carouselRef,
110
+ api: api,
111
+ opts,
112
+ orientation:
113
+ orientation || (opts?.axis === "y" ? "vertical" : "horizontal"),
114
+ scrollPrev,
115
+ scrollNext,
116
+ canScrollPrev,
117
+ canScrollNext,
118
+ }}
119
+ >
120
+ <div
121
+ onKeyDownCapture={handleKeyDown}
122
+ className={cn("relative", className)}
123
+ role="region"
124
+ aria-roledescription="carousel"
125
+ data-slot="carousel"
126
+ {...props}
127
+ >
128
+ {children}
129
+ </div>
130
+ </CarouselContext.Provider>
131
+ );
132
+ }
133
+
134
+ function CarouselContent({ className, ...props }: React.ComponentProps<"div">) {
135
+ const { carouselRef, orientation } = useCarousel();
136
+
137
+ return (
138
+ <div
139
+ ref={carouselRef}
140
+ className="overflow-hidden"
141
+ data-slot="carousel-content"
142
+ >
143
+ <div
144
+ className={cn(
145
+ "flex",
146
+ orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
147
+ className
148
+ )}
149
+ {...props}
150
+ />
151
+ </div>
152
+ );
153
+ }
154
+
155
+ function CarouselItem({ className, ...props }: React.ComponentProps<"div">) {
156
+ const { orientation } = useCarousel();
157
+
158
+ return (
159
+ <div
160
+ role="group"
161
+ aria-roledescription="slide"
162
+ data-slot="carousel-item"
163
+ className={cn(
164
+ "min-w-0 shrink-0 grow-0 basis-full",
165
+ orientation === "horizontal" ? "pl-4" : "pt-4",
166
+ className
167
+ )}
168
+ {...props}
169
+ />
170
+ );
171
+ }
172
+
173
+ function CarouselPrevious({
174
+ className,
175
+ variant = "outline",
176
+ size = "icon",
177
+ ...props
178
+ }: React.ComponentProps<typeof Button>) {
179
+ const { orientation, scrollPrev, canScrollPrev } = useCarousel();
180
+
181
+ return (
182
+ <Button
183
+ data-slot="carousel-previous"
184
+ variant={variant}
185
+ size={size}
186
+ className={cn(
187
+ "absolute size-8 rounded-full",
188
+ orientation === "horizontal"
189
+ ? "top-1/2 -left-12 -translate-y-1/2"
190
+ : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
191
+ className
192
+ )}
193
+ disabled={!canScrollPrev}
194
+ onClick={scrollPrev}
195
+ {...props}
196
+ >
197
+ <ArrowLeft />
198
+ <span className="sr-only">Previous slide</span>
199
+ </Button>
200
+ );
201
+ }
202
+
203
+ function CarouselNext({
204
+ className,
205
+ variant = "outline",
206
+ size = "icon",
207
+ ...props
208
+ }: React.ComponentProps<typeof Button>) {
209
+ const { orientation, scrollNext, canScrollNext } = useCarousel();
210
+
211
+ return (
212
+ <Button
213
+ data-slot="carousel-next"
214
+ variant={variant}
215
+ size={size}
216
+ className={cn(
217
+ "absolute size-8 rounded-full",
218
+ orientation === "horizontal"
219
+ ? "top-1/2 -right-12 -translate-y-1/2"
220
+ : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
221
+ className
222
+ )}
223
+ disabled={!canScrollNext}
224
+ onClick={scrollNext}
225
+ {...props}
226
+ >
227
+ <ArrowRight />
228
+ <span className="sr-only">Next slide</span>
229
+ </Button>
230
+ );
231
+ }
232
+
233
+ export {
234
+ type CarouselApi,
235
+ Carousel,
236
+ CarouselContent,
237
+ CarouselItem,
238
+ CarouselPrevious,
239
+ CarouselNext,
240
+ };