@tulip-systems/core 0.6.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (840) hide show
  1. package/LICENSE +662 -0
  2. package/dist/auth/server.d.mts +3 -3
  3. package/dist/auth/server.mjs +3 -3
  4. package/dist/components/client.d.mts +19 -3
  5. package/dist/components/client.mjs +18 -2
  6. package/dist/components/editor/components/editor.client.d.mts +4 -3
  7. package/dist/components/editor/components/editor.client.d.mts.map +1 -1
  8. package/dist/components/editor/components/editor.client.mjs +5 -2
  9. package/dist/components/editor/components/editor.client.mjs.map +1 -1
  10. package/dist/components/editor/components/menu-nodes.client.mjs +1 -1
  11. package/dist/components/editor/components/menu-nodes.client.mjs.map +1 -1
  12. package/dist/components/editor/components/menu.client.mjs +3 -3
  13. package/dist/components/editor/components/menu.client.mjs.map +1 -1
  14. package/dist/components/editor/extensions/file-handler/extension.d.mts +4 -4
  15. package/dist/components/editor/extensions/file-handler/extension.d.mts.map +1 -1
  16. package/dist/components/editor/extensions/file-handler/extension.mjs.map +1 -1
  17. package/dist/components/editor/extensions/file-handler/strategy.d.mts +4 -6
  18. package/dist/components/editor/extensions/file-handler/strategy.d.mts.map +1 -1
  19. package/dist/components/editor/extensions/file-handler/strategy.mjs +11 -11
  20. package/dist/components/editor/extensions/file-handler/strategy.mjs.map +1 -1
  21. package/dist/components/editor/extensions/file-handler/utils.mjs +1 -1
  22. package/dist/components/editor/extensions/file-handler/utils.mjs.map +1 -1
  23. package/dist/components/editor/extensions/image/extension.mjs +9 -9
  24. package/dist/components/editor/extensions/image/extension.mjs.map +1 -1
  25. package/dist/components/editor/lib/constants.d.mts +1 -1
  26. package/dist/components/editor/lib/constants.mjs +1 -1
  27. package/dist/components/editor/lib/extensions.d.mts +1 -1
  28. package/dist/components/editor/lib/helpers.d.mts +11 -3
  29. package/dist/components/editor/lib/helpers.d.mts.map +1 -1
  30. package/dist/components/editor/lib/helpers.mjs +27 -13
  31. package/dist/components/editor/lib/helpers.mjs.map +1 -1
  32. package/dist/components/emails/forget-password-email.mjs +6 -6
  33. package/dist/components/emails/forget-password-email.mjs.map +1 -1
  34. package/dist/components/header/back-button.client.mjs +2 -2
  35. package/dist/components/header/back-button.client.mjs.map +1 -1
  36. package/dist/components/header/bottom-bar.client.mjs +2 -2
  37. package/dist/components/header/bottom-bar.client.mjs.map +1 -1
  38. package/dist/components/header/breadcrumbs.client.mjs +1 -1
  39. package/dist/components/header/breadcrumbs.client.mjs.map +1 -1
  40. package/dist/components/header/header.client.mjs +1 -1
  41. package/dist/components/header/header.client.mjs.map +1 -1
  42. package/dist/components/layouts/empty-page.mjs +2 -2
  43. package/dist/components/layouts/empty-page.mjs.map +1 -1
  44. package/dist/components/layouts/error-page.mjs +3 -3
  45. package/dist/components/layouts/error-page.mjs.map +1 -1
  46. package/dist/components/layouts/providers.client.d.mts.map +1 -1
  47. package/dist/components/layouts/providers.client.mjs +3 -2
  48. package/dist/components/layouts/providers.client.mjs.map +1 -1
  49. package/dist/components/layouts/root-loading.mjs +2 -2
  50. package/dist/components/layouts/root-loading.mjs.map +1 -1
  51. package/dist/components/layouts/tab-layout.mjs +1 -1
  52. package/dist/components/layouts/tab-layout.mjs.map +1 -1
  53. package/dist/components/lists/data-list.mjs +1 -1
  54. package/dist/components/lists/data-list.mjs.map +1 -1
  55. package/dist/components/lists/data-stack.mjs +1 -1
  56. package/dist/components/lists/data-stack.mjs.map +1 -1
  57. package/dist/components/navigation/admin-sidebar-header.client.mjs +3 -3
  58. package/dist/components/navigation/admin-sidebar-header.client.mjs.map +1 -1
  59. package/dist/components/navigation/admin-sidebar-skeleton.mjs +1 -1
  60. package/dist/components/navigation/admin-sidebar-skeleton.mjs.map +1 -1
  61. package/dist/components/ui/accordion.client.d.mts +26 -0
  62. package/dist/components/ui/accordion.client.d.mts.map +1 -0
  63. package/dist/components/ui/accordion.client.mjs +58 -0
  64. package/dist/components/ui/accordion.client.mjs.map +1 -0
  65. package/dist/components/ui/alert-dialog.client.d.mts +61 -0
  66. package/dist/components/ui/alert-dialog.client.d.mts.map +1 -0
  67. package/dist/components/ui/alert-dialog.client.mjs +104 -0
  68. package/dist/components/ui/alert-dialog.client.mjs.map +1 -0
  69. package/dist/components/ui/alert.d.mts +5 -1
  70. package/dist/components/ui/alert.d.mts.map +1 -1
  71. package/dist/components/ui/alert.mjs +13 -6
  72. package/dist/components/ui/alert.mjs.map +1 -1
  73. package/dist/components/ui/aspect-ratio.client.d.mts +10 -0
  74. package/dist/components/ui/aspect-ratio.client.d.mts.map +1 -0
  75. package/dist/components/ui/aspect-ratio.client.mjs +16 -0
  76. package/dist/components/ui/aspect-ratio.client.mjs.map +1 -0
  77. package/dist/components/ui/avatar.client.d.mts +21 -6
  78. package/dist/components/ui/avatar.client.d.mts.map +1 -1
  79. package/dist/components/ui/avatar.client.mjs +31 -9
  80. package/dist/components/ui/avatar.client.mjs.map +1 -1
  81. package/dist/components/ui/badge.d.mts +1 -1
  82. package/dist/components/ui/badge.d.mts.map +1 -1
  83. package/dist/components/ui/badge.mjs +11 -8
  84. package/dist/components/ui/badge.mjs.map +1 -1
  85. package/dist/components/ui/breadcrumb.d.mts +3 -1
  86. package/dist/components/ui/breadcrumb.d.mts.map +1 -1
  87. package/dist/components/ui/breadcrumb.mjs +7 -7
  88. package/dist/components/ui/breadcrumb.mjs.map +1 -1
  89. package/dist/components/ui/button-group.d.mts +29 -0
  90. package/dist/components/ui/button-group.d.mts.map +1 -0
  91. package/dist/components/ui/button-group.mjs +41 -0
  92. package/dist/components/ui/button-group.mjs.map +1 -0
  93. package/dist/components/ui/button.d.mts +2 -2
  94. package/dist/components/ui/button.d.mts.map +1 -1
  95. package/dist/components/ui/button.mjs +19 -13
  96. package/dist/components/ui/button.mjs.map +1 -1
  97. package/dist/components/ui/{calendar.d.mts → calendar.client.d.mts} +7 -4
  98. package/dist/components/ui/calendar.client.d.mts.map +1 -0
  99. package/dist/components/ui/{calendar.mjs → calendar.client.mjs} +22 -19
  100. package/dist/components/ui/calendar.client.mjs.map +1 -0
  101. package/dist/components/ui/card.d.mts +9 -2
  102. package/dist/components/ui/card.d.mts.map +1 -1
  103. package/dist/components/ui/card.mjs +15 -7
  104. package/dist/components/ui/card.mjs.map +1 -1
  105. package/dist/components/ui/{carousel.d.mts → carousel.client.d.mts} +12 -3
  106. package/dist/components/ui/carousel.client.d.mts.map +1 -0
  107. package/dist/components/ui/{carousel.mjs → carousel.client.mjs} +10 -10
  108. package/dist/components/ui/carousel.client.mjs.map +1 -0
  109. package/dist/components/ui/chart.client.d.mts.map +1 -1
  110. package/dist/components/ui/chart.client.mjs +11 -11
  111. package/dist/components/ui/chart.client.mjs.map +1 -1
  112. package/dist/components/ui/checkbox.client.d.mts +12 -0
  113. package/dist/components/ui/checkbox.client.d.mts.map +1 -0
  114. package/dist/components/ui/checkbox.client.mjs +24 -0
  115. package/dist/components/ui/checkbox.client.mjs.map +1 -0
  116. package/dist/components/ui/collapsible.client.d.mts +6 -6
  117. package/dist/components/ui/collapsible.client.d.mts.map +1 -1
  118. package/dist/components/ui/collapsible.client.mjs +6 -6
  119. package/dist/components/ui/collapsible.client.mjs.map +1 -1
  120. package/dist/components/ui/combobox-dropdown.client.d.mts +1 -1
  121. package/dist/components/ui/combobox-dropdown.client.mjs +3 -2
  122. package/dist/components/ui/combobox-dropdown.client.mjs.map +1 -1
  123. package/dist/components/ui/combobox.client.mjs +5 -5
  124. package/dist/components/ui/combobox.client.mjs.map +1 -1
  125. package/dist/components/ui/{command.d.mts → command.client.d.mts} +8 -2
  126. package/dist/components/ui/command.client.d.mts.map +1 -0
  127. package/dist/components/ui/command.client.mjs +91 -0
  128. package/dist/components/ui/command.client.mjs.map +1 -0
  129. package/dist/components/ui/context-menu.client.d.mts +86 -0
  130. package/dist/components/ui/context-menu.client.d.mts.map +1 -0
  131. package/dist/components/ui/context-menu.client.mjs +128 -0
  132. package/dist/components/ui/context-menu.client.mjs.map +1 -0
  133. package/dist/components/ui/date-picker.client.mjs +2 -2
  134. package/dist/components/ui/date-picker.client.mjs.map +1 -1
  135. package/dist/components/ui/dialog.client.d.mts +19 -12
  136. package/dist/components/ui/dialog.client.d.mts.map +1 -1
  137. package/dist/components/ui/dialog.client.mjs +40 -29
  138. package/dist/components/ui/dialog.client.mjs.map +1 -1
  139. package/dist/components/ui/drawer.client.d.mts.map +1 -1
  140. package/dist/components/ui/drawer.client.mjs +5 -5
  141. package/dist/components/ui/drawer.client.mjs.map +1 -1
  142. package/dist/components/ui/dropdown-menu.client.d.mts +85 -0
  143. package/dist/components/ui/dropdown-menu.client.d.mts.map +1 -0
  144. package/dist/components/ui/dropdown-menu.client.mjs +131 -0
  145. package/dist/components/ui/dropdown-menu.client.mjs.map +1 -0
  146. package/dist/components/ui/empty.d.mts +36 -0
  147. package/dist/components/ui/empty.d.mts.map +1 -0
  148. package/dist/components/ui/empty.mjs +62 -0
  149. package/dist/components/ui/empty.mjs.map +1 -0
  150. package/dist/components/ui/field.client.d.mts +65 -0
  151. package/dist/components/ui/field.client.d.mts.map +1 -0
  152. package/dist/components/ui/field.client.mjs +114 -0
  153. package/dist/components/ui/field.client.mjs.map +1 -0
  154. package/dist/components/ui/form.client.d.mts +3 -4
  155. package/dist/components/ui/form.client.d.mts.map +1 -1
  156. package/dist/components/ui/form.client.mjs +4 -4
  157. package/dist/components/ui/form.client.mjs.map +1 -1
  158. package/dist/components/ui/hover-card.client.d.mts +6 -6
  159. package/dist/components/ui/hover-card.client.d.mts.map +1 -1
  160. package/dist/components/ui/hover-card.client.mjs +14 -11
  161. package/dist/components/ui/hover-card.client.mjs.map +1 -1
  162. package/dist/components/ui/{input-date-time.d.mts → input-date-time.client.d.mts} +3 -3
  163. package/dist/components/ui/input-date-time.client.d.mts.map +1 -0
  164. package/dist/components/ui/{input-date-time.mjs → input-date-time.client.mjs} +4 -2
  165. package/dist/components/ui/input-date-time.client.mjs.map +1 -0
  166. package/dist/components/ui/input-date.d.mts +1 -1
  167. package/dist/components/ui/input-date.d.mts.map +1 -1
  168. package/dist/components/ui/input-date.mjs.map +1 -1
  169. package/dist/components/ui/input-group.client.d.mts +59 -0
  170. package/dist/components/ui/input-group.client.d.mts.map +1 -0
  171. package/dist/components/ui/input-group.client.mjs +106 -0
  172. package/dist/components/ui/input-group.client.mjs.map +1 -0
  173. package/dist/components/ui/input-recipient.mjs +11 -11
  174. package/dist/components/ui/input-recipient.mjs.map +1 -1
  175. package/dist/components/ui/input-time.d.mts +1 -1
  176. package/dist/components/ui/input-time.d.mts.map +1 -1
  177. package/dist/components/ui/input-time.mjs.map +1 -1
  178. package/dist/components/ui/input.d.mts.map +1 -1
  179. package/dist/components/ui/input.mjs +1 -1
  180. package/dist/components/ui/input.mjs.map +1 -1
  181. package/dist/components/ui/item.d.mts +63 -0
  182. package/dist/components/ui/item.d.mts.map +1 -0
  183. package/dist/components/ui/item.mjs +119 -0
  184. package/dist/components/ui/item.mjs.map +1 -0
  185. package/dist/components/ui/kbd.d.mts +14 -0
  186. package/dist/components/ui/kbd.d.mts.map +1 -0
  187. package/dist/components/ui/kbd.mjs +22 -0
  188. package/dist/components/ui/kbd.mjs.map +1 -0
  189. package/dist/components/ui/label.d.mts +4 -4
  190. package/dist/components/ui/label.d.mts.map +1 -1
  191. package/dist/components/ui/label.mjs +5 -5
  192. package/dist/components/ui/label.mjs.map +1 -1
  193. package/dist/components/ui/loader.d.mts +7 -0
  194. package/dist/components/ui/loader.d.mts.map +1 -0
  195. package/dist/components/ui/loader.mjs +63 -0
  196. package/dist/components/ui/loader.mjs.map +1 -0
  197. package/dist/components/ui/navigation-menu.d.mts +11 -11
  198. package/dist/components/ui/navigation-menu.d.mts.map +1 -1
  199. package/dist/components/ui/navigation-menu.mjs +18 -20
  200. package/dist/components/ui/navigation-menu.mjs.map +1 -1
  201. package/dist/components/ui/pagination.d.mts +8 -2
  202. package/dist/components/ui/pagination.d.mts.map +1 -1
  203. package/dist/components/ui/pagination.mjs +29 -21
  204. package/dist/components/ui/pagination.mjs.map +1 -1
  205. package/dist/components/ui/popover.client.d.mts +35 -0
  206. package/dist/components/ui/popover.client.d.mts.map +1 -0
  207. package/dist/components/ui/popover.client.mjs +59 -0
  208. package/dist/components/ui/popover.client.mjs.map +1 -0
  209. package/dist/components/ui/progress.client.d.mts +4 -4
  210. package/dist/components/ui/progress.client.d.mts.map +1 -1
  211. package/dist/components/ui/progress.client.mjs +7 -7
  212. package/dist/components/ui/progress.client.mjs.map +1 -1
  213. package/dist/components/ui/radio-group.d.mts +5 -5
  214. package/dist/components/ui/radio-group.d.mts.map +1 -1
  215. package/dist/components/ui/radio-group.mjs +10 -11
  216. package/dist/components/ui/radio-group.mjs.map +1 -1
  217. package/dist/components/ui/resizable.client.d.mts +3 -4
  218. package/dist/components/ui/resizable.client.d.mts.map +1 -1
  219. package/dist/components/ui/resizable.client.mjs +5 -9
  220. package/dist/components/ui/resizable.client.mjs.map +1 -1
  221. package/dist/components/ui/scroll-area.d.mts +5 -5
  222. package/dist/components/ui/scroll-area.d.mts.map +1 -1
  223. package/dist/components/ui/scroll-area.mjs +12 -11
  224. package/dist/components/ui/scroll-area.mjs.map +1 -1
  225. package/dist/components/ui/select.client.d.mts +18 -13
  226. package/dist/components/ui/select.client.d.mts.map +1 -1
  227. package/dist/components/ui/select.client.mjs +37 -32
  228. package/dist/components/ui/select.client.mjs.map +1 -1
  229. package/dist/components/ui/separator.d.mts +4 -4
  230. package/dist/components/ui/separator.d.mts.map +1 -1
  231. package/dist/components/ui/separator.mjs +6 -6
  232. package/dist/components/ui/separator.mjs.map +1 -1
  233. package/dist/components/ui/sheet.client.d.mts +9 -7
  234. package/dist/components/ui/sheet.client.d.mts.map +1 -1
  235. package/dist/components/ui/sheet.client.mjs +30 -20
  236. package/dist/components/ui/sheet.client.mjs.map +1 -1
  237. package/dist/components/ui/sidebar.client.mjs +28 -28
  238. package/dist/components/ui/sidebar.client.mjs.map +1 -1
  239. package/dist/components/ui/skeleton.mjs +1 -1
  240. package/dist/components/ui/skeleton.mjs.map +1 -1
  241. package/dist/components/ui/slider.d.mts +4 -4
  242. package/dist/components/ui/slider.d.mts.map +1 -1
  243. package/dist/components/ui/slider.mjs +11 -11
  244. package/dist/components/ui/slider.mjs.map +1 -1
  245. package/dist/components/ui/spinner.d.mts +10 -0
  246. package/dist/components/ui/spinner.d.mts.map +1 -0
  247. package/dist/components/ui/spinner.mjs +9 -55
  248. package/dist/components/ui/spinner.mjs.map +1 -1
  249. package/dist/components/ui/switch.client.d.mts +15 -0
  250. package/dist/components/ui/switch.client.d.mts.map +1 -0
  251. package/dist/components/ui/switch.client.mjs +23 -0
  252. package/dist/components/ui/switch.client.mjs.map +1 -0
  253. package/dist/components/ui/tabs.client.d.mts +31 -0
  254. package/dist/components/ui/tabs.client.d.mts.map +1 -0
  255. package/dist/components/ui/tabs.client.mjs +49 -0
  256. package/dist/components/ui/tabs.client.mjs.map +1 -0
  257. package/dist/components/ui/textarea.d.mts.map +1 -1
  258. package/dist/components/ui/textarea.mjs +1 -1
  259. package/dist/components/ui/textarea.mjs.map +1 -1
  260. package/dist/components/ui/toggle-group.client.d.mts +11 -6
  261. package/dist/components/ui/toggle-group.client.d.mts.map +1 -1
  262. package/dist/components/ui/toggle-group.client.mjs +20 -12
  263. package/dist/components/ui/toggle-group.client.mjs.map +1 -1
  264. package/dist/components/ui/{toggle.d.mts → toggle.client.d.mts} +6 -6
  265. package/dist/components/ui/toggle.client.d.mts.map +1 -0
  266. package/dist/components/ui/toggle.client.mjs +40 -0
  267. package/dist/components/ui/toggle.client.mjs.map +1 -0
  268. package/dist/components/ui/tooltip.client.d.mts +7 -7
  269. package/dist/components/ui/tooltip.client.d.mts.map +1 -1
  270. package/dist/components/ui/tooltip.client.mjs +10 -10
  271. package/dist/components/ui/tooltip.client.mjs.map +1 -1
  272. package/dist/components.d.mts +13 -21
  273. package/dist/components.mjs +13 -21
  274. package/dist/config/server.d.mts +1 -3
  275. package/dist/config/server.mjs +1 -4
  276. package/dist/config.d.mts +2 -2
  277. package/dist/config.mjs +1 -1
  278. package/dist/data-tables/client.d.mts +2 -1
  279. package/dist/data-tables/client.mjs +2 -1
  280. package/dist/data-tables.d.mts +1 -1
  281. package/dist/database/client.d.mts +1 -0
  282. package/dist/database/client.mjs +1 -0
  283. package/dist/database/server.d.mts +2 -0
  284. package/dist/database/server.mjs +3 -0
  285. package/dist/database.d.mts +3 -0
  286. package/dist/database.mjs +3 -0
  287. package/dist/emails/client.d.mts +1 -0
  288. package/dist/emails/client.mjs +1 -0
  289. package/dist/emails/server.d.mts +2 -0
  290. package/dist/emails/server.mjs +3 -0
  291. package/dist/emails.d.mts +1 -0
  292. package/dist/emails.mjs +1 -0
  293. package/dist/inline-edit/client.d.mts +2 -2
  294. package/dist/lib/hooks/use-indicator.d.mts.map +1 -1
  295. package/dist/lib/hooks/use-indicator.mjs.map +1 -1
  296. package/dist/lib/utils/markdown.d.mts +10 -0
  297. package/dist/lib/utils/markdown.d.mts.map +1 -0
  298. package/dist/lib/utils/markdown.mjs +15 -0
  299. package/dist/lib/utils/markdown.mjs.map +1 -0
  300. package/dist/lib/utils/url.mjs +2 -1
  301. package/dist/lib/utils/url.mjs.map +1 -1
  302. package/dist/lib/utils/user-agent.mjs +15 -0
  303. package/dist/lib/utils/user-agent.mjs.map +1 -1
  304. package/dist/lib.d.mts +2 -2
  305. package/dist/lib.mjs +2 -2
  306. package/dist/modules/auth/components/auth-layout.server.mjs +2 -2
  307. package/dist/modules/auth/components/auth-layout.server.mjs.map +1 -1
  308. package/dist/modules/auth/components/create-first-user-guard.server.d.mts +16 -0
  309. package/dist/modules/auth/components/create-first-user-guard.server.d.mts.map +1 -0
  310. package/dist/modules/auth/components/create-first-user-guard.server.mjs +16 -0
  311. package/dist/modules/auth/components/create-first-user-guard.server.mjs.map +1 -0
  312. package/dist/modules/auth/components/create-first-user-page.client.mjs +3 -3
  313. package/dist/modules/auth/components/create-first-user-page.client.mjs.map +1 -1
  314. package/dist/modules/auth/components/forget-password-page.client.mjs +1 -1
  315. package/dist/modules/auth/components/forget-password-page.client.mjs.map +1 -1
  316. package/dist/modules/auth/components/guard.server.d.mts +2 -2
  317. package/dist/modules/auth/components/guard.server.mjs +1 -1
  318. package/dist/modules/auth/components/guard.server.mjs.map +1 -1
  319. package/dist/modules/auth/components/login-page.client.mjs +5 -5
  320. package/dist/modules/auth/components/login-page.client.mjs.map +1 -1
  321. package/dist/modules/auth/components/reset-password-page.client.mjs +5 -5
  322. package/dist/modules/auth/components/reset-password-page.client.mjs.map +1 -1
  323. package/dist/modules/auth/db/schema.d.mts +1 -1
  324. package/dist/modules/auth/db/schema.mjs +2 -2
  325. package/dist/modules/auth/handler/create-client.client.d.mts +4838 -229
  326. package/dist/modules/auth/handler/create-client.client.d.mts.map +1 -1
  327. package/dist/modules/auth/handler/create-client.client.mjs.map +1 -1
  328. package/dist/modules/auth/handler/proxy.server.mjs +2 -2
  329. package/dist/modules/auth/handler/proxy.server.mjs.map +1 -1
  330. package/dist/modules/auth/handler/route.server.d.mts +2 -2
  331. package/dist/modules/auth/handler/route.server.d.mts.map +1 -1
  332. package/dist/modules/auth/handler/route.server.mjs.map +1 -1
  333. package/dist/modules/auth/handler/{init.d.mts → service.server.d.mts} +322 -90
  334. package/dist/modules/auth/handler/service.server.d.mts.map +1 -0
  335. package/dist/modules/auth/handler/{init.mjs → service.server.mjs} +19 -8
  336. package/dist/modules/auth/handler/service.server.mjs.map +1 -0
  337. package/dist/modules/auth/hooks/use-session.d.mts +9 -4
  338. package/dist/modules/auth/hooks/use-session.d.mts.map +1 -1
  339. package/dist/modules/auth/lib/helpers.server.d.mts +1 -1
  340. package/dist/modules/auth/lib/permissions.d.mts +1 -1
  341. package/dist/modules/auth/lib/validators.mjs +1 -1
  342. package/dist/modules/commands/components/alert-dialog-command.client.d.mts +9 -9
  343. package/dist/modules/commands/components/alert-dialog-command.client.d.mts.map +1 -1
  344. package/dist/modules/commands/components/alert-dialog-command.client.mjs +3 -3
  345. package/dist/modules/commands/components/alert-dialog-command.client.mjs.map +1 -1
  346. package/dist/modules/commands/components/click-command.client.mjs +2 -2
  347. package/dist/modules/commands/components/click-command.client.mjs.map +1 -1
  348. package/dist/modules/commands/components/dialog-command.client.d.mts +8 -8
  349. package/dist/modules/commands/components/dialog-command.client.d.mts.map +1 -1
  350. package/dist/modules/commands/components/dialog-command.client.mjs +2 -2
  351. package/dist/modules/commands/components/dialog-command.client.mjs.map +1 -1
  352. package/dist/modules/commands/components/dropdown-command.client.mjs +2 -2
  353. package/dist/modules/commands/components/dropdown-command.client.mjs.map +1 -1
  354. package/dist/modules/commands/components/empty-command.client.mjs +2 -2
  355. package/dist/modules/commands/components/empty-command.client.mjs.map +1 -1
  356. package/dist/modules/commands/components/form-dialog-command.client.d.mts +11 -9
  357. package/dist/modules/commands/components/form-dialog-command.client.d.mts.map +1 -1
  358. package/dist/modules/commands/components/form-dialog-command.client.mjs +8 -6
  359. package/dist/modules/commands/components/form-dialog-command.client.mjs.map +1 -1
  360. package/dist/modules/commands/menus/context-menu.client.d.mts +3 -3
  361. package/dist/modules/commands/menus/context-menu.client.d.mts.map +1 -1
  362. package/dist/modules/commands/menus/context-menu.client.mjs +1 -1
  363. package/dist/modules/commands/menus/context-menu.client.mjs.map +1 -1
  364. package/dist/modules/commands/menus/dropdown-menu.client.mjs +2 -2
  365. package/dist/modules/commands/menus/dropdown-menu.client.mjs.map +1 -1
  366. package/dist/modules/commands/menus/floating-menu.client.mjs +2 -2
  367. package/dist/modules/commands/menus/floating-menu.client.mjs.map +1 -1
  368. package/dist/modules/commands/utils/archive-command.client.mjs +1 -1
  369. package/dist/modules/commands/utils/archive-command.client.mjs.map +1 -1
  370. package/dist/modules/commands/utils/delete-command.client.mjs +1 -1
  371. package/dist/modules/commands/utils/delete-command.client.mjs.map +1 -1
  372. package/dist/modules/config/lib/context.d.mts +9 -10
  373. package/dist/modules/config/lib/context.d.mts.map +1 -1
  374. package/dist/modules/config/lib/context.mjs.map +1 -1
  375. package/dist/modules/data-tables/components/cell/select.client.mjs +1 -1
  376. package/dist/modules/data-tables/components/cell/select.client.mjs.map +1 -1
  377. package/dist/modules/data-tables/components/column-header.mjs +5 -5
  378. package/dist/modules/data-tables/components/column-header.mjs.map +1 -1
  379. package/dist/modules/data-tables/components/filters/combobox.client.mjs +6 -6
  380. package/dist/modules/data-tables/components/filters/combobox.client.mjs.map +1 -1
  381. package/dist/modules/data-tables/components/filters/slider.client.mjs +2 -2
  382. package/dist/modules/data-tables/components/filters/slider.client.mjs.map +1 -1
  383. package/dist/modules/data-tables/components/header.mjs +1 -1
  384. package/dist/modules/data-tables/components/header.mjs.map +1 -1
  385. package/dist/modules/data-tables/components/skeleton.mjs +2 -2
  386. package/dist/modules/data-tables/components/skeleton.mjs.map +1 -1
  387. package/dist/modules/data-tables/components/table.mjs +3 -3
  388. package/dist/modules/data-tables/components/table.mjs.map +1 -1
  389. package/dist/modules/data-tables/components/toolbar.mjs +1 -1
  390. package/dist/modules/data-tables/components/toolbar.mjs.map +1 -1
  391. package/dist/modules/data-tables/lib/converters/search.d.mts +1 -1
  392. package/dist/modules/data-tables/lib/converters/sorting.d.mts +1 -1
  393. package/dist/modules/data-tables/server/get-data.server.d.mts +3 -3
  394. package/dist/modules/data-tables/server/get-data.server.mjs +1 -1
  395. package/dist/modules/data-tables/server/get-data.server.mjs.map +1 -1
  396. package/dist/modules/data-tables/strategies/infinite/strategy.d.mts +1 -1
  397. package/dist/modules/data-tables/strategies/infinite/strategy.mjs +3 -0
  398. package/dist/modules/data-tables/strategies/infinite/strategy.mjs.map +1 -1
  399. package/dist/modules/data-tables/strategies/pagination/components.mjs +3 -3
  400. package/dist/modules/data-tables/strategies/pagination/components.mjs.map +1 -1
  401. package/dist/modules/data-tables/tables/data-table/components/row.mjs +5 -15
  402. package/dist/modules/data-tables/tables/data-table/components/row.mjs.map +1 -1
  403. package/dist/modules/data-tables/tables/inline-table/components/body.mjs +1 -1
  404. package/dist/modules/data-tables/tables/inline-table/components/body.mjs.map +1 -1
  405. package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs +1 -1
  406. package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs.map +1 -1
  407. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs +1 -1
  408. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs.map +1 -1
  409. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs +1 -1
  410. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs.map +1 -1
  411. package/dist/modules/data-tables/tables/inline-table/components/row.client.mjs +13 -23
  412. package/dist/modules/data-tables/tables/inline-table/components/row.client.mjs.map +1 -1
  413. package/dist/modules/data-tables/tables/inline-table/components/table.d.mts +1 -0
  414. package/dist/modules/data-tables/tables/inline-table/components/table.d.mts.map +1 -1
  415. package/dist/modules/data-tables/tables/inline-table/components/table.mjs +2 -1
  416. package/dist/modules/data-tables/tables/inline-table/components/table.mjs.map +1 -1
  417. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.d.mts +5 -1
  418. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.d.mts.map +1 -1
  419. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.mjs +2 -1
  420. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.mjs.map +1 -1
  421. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.d.mts +30 -0
  422. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.d.mts.map +1 -0
  423. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.mjs +77 -9
  424. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.mjs.map +1 -1
  425. package/dist/modules/{config/db → database/lib}/helpers.d.mts +2 -2
  426. package/dist/modules/database/lib/helpers.d.mts.map +1 -0
  427. package/dist/modules/{config/db → database/lib}/helpers.mjs +1 -1
  428. package/dist/modules/database/lib/helpers.mjs.map +1 -0
  429. package/dist/modules/database/lib/service.server.d.mts +34 -0
  430. package/dist/modules/database/lib/service.server.d.mts.map +1 -0
  431. package/dist/modules/database/lib/service.server.mjs +24 -0
  432. package/dist/modules/database/lib/service.server.mjs.map +1 -0
  433. package/dist/modules/{config/db → database/lib}/types.d.mts +1 -1
  434. package/dist/modules/database/lib/types.d.mts.map +1 -0
  435. package/dist/modules/emails/lib/service.server.d.mts +29 -0
  436. package/dist/modules/emails/lib/service.server.d.mts.map +1 -0
  437. package/dist/modules/emails/lib/service.server.mjs +21 -0
  438. package/dist/modules/emails/lib/service.server.mjs.map +1 -0
  439. package/dist/modules/inline-edit/components/date-input.client.mjs +4 -4
  440. package/dist/modules/inline-edit/components/date-input.client.mjs.map +1 -1
  441. package/dist/modules/inline-edit/components/date-picker.client.mjs +3 -2
  442. package/dist/modules/inline-edit/components/date-picker.client.mjs.map +1 -1
  443. package/dist/modules/inline-edit/components/date-time.client.d.mts +1 -1
  444. package/dist/modules/inline-edit/components/date-time.client.mjs +2 -1
  445. package/dist/modules/inline-edit/components/date-time.client.mjs.map +1 -1
  446. package/dist/modules/inline-edit/components/editor.client.mjs +1 -0
  447. package/dist/modules/inline-edit/components/editor.client.mjs.map +1 -1
  448. package/dist/modules/inline-edit/components/input-recipient.client.mjs +1 -0
  449. package/dist/modules/inline-edit/components/input-recipient.client.mjs.map +1 -1
  450. package/dist/modules/inline-edit/components/input-toggle.client.mjs +3 -2
  451. package/dist/modules/inline-edit/components/input-toggle.client.mjs.map +1 -1
  452. package/dist/modules/inline-edit/components/input.client.d.mts.map +1 -1
  453. package/dist/modules/inline-edit/components/input.client.mjs +6 -3
  454. package/dist/modules/inline-edit/components/input.client.mjs.map +1 -1
  455. package/dist/modules/inline-edit/components/select.client.d.mts +8 -11
  456. package/dist/modules/inline-edit/components/select.client.d.mts.map +1 -1
  457. package/dist/modules/inline-edit/components/select.client.mjs +1 -0
  458. package/dist/modules/inline-edit/components/select.client.mjs.map +1 -1
  459. package/dist/modules/inline-edit/components/switch.client.d.mts +3 -2
  460. package/dist/modules/inline-edit/components/switch.client.d.mts.map +1 -1
  461. package/dist/modules/inline-edit/components/switch.client.mjs +2 -1
  462. package/dist/modules/inline-edit/components/switch.client.mjs.map +1 -1
  463. package/dist/modules/inline-edit/components/toggle.client.mjs +2 -1
  464. package/dist/modules/inline-edit/components/toggle.client.mjs.map +1 -1
  465. package/dist/modules/inline-edit/lib/variants.d.mts +1 -1
  466. package/dist/modules/inline-edit/lib/variants.mjs +1 -1
  467. package/dist/modules/inline-edit/lib/variants.mjs.map +1 -1
  468. package/dist/modules/router/handler/context.server.d.mts +12 -10
  469. package/dist/modules/router/handler/context.server.d.mts.map +1 -1
  470. package/dist/modules/router/handler/init.server.d.mts +13 -11
  471. package/dist/modules/router/handler/init.server.d.mts.map +1 -1
  472. package/dist/modules/router/handler/init.server.mjs +2 -2
  473. package/dist/modules/router/handler/init.server.mjs.map +1 -1
  474. package/dist/modules/router/handler/route.server.d.mts +1 -1
  475. package/dist/modules/storage/components/dropzone.client.d.mts +2 -2
  476. package/dist/modules/storage/components/dropzone.client.d.mts.map +1 -1
  477. package/dist/modules/storage/components/dropzone.client.mjs +8 -8
  478. package/dist/modules/storage/components/dropzone.client.mjs.map +1 -1
  479. package/dist/modules/storage/components/image-grid.client.d.mts +3 -3
  480. package/dist/modules/storage/components/image-grid.client.d.mts.map +1 -1
  481. package/dist/modules/storage/components/image-grid.client.mjs +24 -26
  482. package/dist/modules/storage/components/image-grid.client.mjs.map +1 -1
  483. package/dist/modules/storage/components/image.client.d.mts +8 -0
  484. package/dist/modules/storage/components/image.client.d.mts.map +1 -0
  485. package/dist/modules/storage/components/image.client.mjs +17 -0
  486. package/dist/modules/storage/components/image.client.mjs.map +1 -0
  487. package/dist/modules/storage/components/upload-button.client.d.mts +12 -0
  488. package/dist/modules/storage/components/upload-button.client.d.mts.map +1 -0
  489. package/dist/modules/storage/components/upload-button.client.mjs +34 -0
  490. package/dist/modules/storage/components/upload-button.client.mjs.map +1 -0
  491. package/dist/modules/storage/components/upload-zone-context.client.d.mts +5 -5
  492. package/dist/modules/storage/components/upload-zone-context.client.d.mts.map +1 -1
  493. package/dist/modules/storage/components/upload-zone-context.client.mjs +2 -2
  494. package/dist/modules/storage/components/upload-zone-context.client.mjs.map +1 -1
  495. package/dist/modules/storage/components/upload-zone.client.d.mts +4 -4
  496. package/dist/modules/storage/components/upload-zone.client.d.mts.map +1 -1
  497. package/dist/modules/storage/components/upload-zone.client.mjs +17 -10
  498. package/dist/modules/storage/components/upload-zone.client.mjs.map +1 -1
  499. package/dist/modules/storage/lib/constants.d.mts +1 -5
  500. package/dist/modules/storage/lib/constants.d.mts.map +1 -1
  501. package/dist/modules/storage/lib/constants.mjs +1 -13
  502. package/dist/modules/storage/lib/constants.mjs.map +1 -1
  503. package/dist/modules/storage/lib/helpers.d.mts +14 -28
  504. package/dist/modules/storage/lib/helpers.d.mts.map +1 -1
  505. package/dist/modules/storage/lib/helpers.mjs +17 -75
  506. package/dist/modules/storage/lib/helpers.mjs.map +1 -1
  507. package/dist/modules/storage/lib/procedures.server.d.mts +1991 -0
  508. package/dist/modules/{auth/handler/init.d.mts.map → storage/lib/procedures.server.d.mts.map} +1 -1
  509. package/dist/modules/storage/lib/procedures.server.mjs +22 -0
  510. package/dist/modules/storage/lib/procedures.server.mjs.map +1 -0
  511. package/dist/modules/storage/lib/router-handlers.server.d.mts +41 -0
  512. package/dist/modules/storage/lib/router-handlers.server.d.mts.map +1 -0
  513. package/dist/modules/storage/lib/router-handlers.server.mjs +124 -0
  514. package/dist/modules/storage/lib/router-handlers.server.mjs.map +1 -0
  515. package/dist/modules/storage/lib/schema.d.mts +68 -958
  516. package/dist/modules/storage/lib/schema.d.mts.map +1 -1
  517. package/dist/modules/storage/lib/schema.mjs +28 -65
  518. package/dist/modules/storage/lib/schema.mjs.map +1 -1
  519. package/dist/modules/storage/lib/service.server.d.mts +2155 -141
  520. package/dist/modules/storage/lib/service.server.d.mts.map +1 -1
  521. package/dist/modules/storage/lib/service.server.mjs +453 -242
  522. package/dist/modules/storage/lib/service.server.mjs.map +1 -1
  523. package/dist/modules/storage/lib/upload.client.d.mts +58 -0
  524. package/dist/modules/storage/lib/upload.client.d.mts.map +1 -0
  525. package/dist/modules/storage/lib/upload.client.mjs +87 -0
  526. package/dist/modules/storage/lib/upload.client.mjs.map +1 -0
  527. package/dist/modules/storage/lib/validators.d.mts +297 -835
  528. package/dist/modules/storage/lib/validators.d.mts.map +1 -1
  529. package/dist/modules/storage/lib/validators.mjs +32 -76
  530. package/dist/modules/storage/lib/validators.mjs.map +1 -1
  531. package/dist/modules/storage/providers/adapters/s3.server.d.mts +19 -0
  532. package/dist/modules/storage/providers/adapters/s3.server.d.mts.map +1 -0
  533. package/dist/modules/storage/providers/adapters/s3.server.mjs +173 -0
  534. package/dist/modules/storage/providers/adapters/s3.server.mjs.map +1 -0
  535. package/dist/modules/storage/providers/lib/constants.d.mts +6 -0
  536. package/dist/modules/storage/providers/lib/constants.d.mts.map +1 -0
  537. package/dist/modules/storage/providers/lib/constants.mjs +6 -0
  538. package/dist/modules/storage/providers/lib/constants.mjs.map +1 -0
  539. package/dist/modules/storage/providers/lib/errors.d.mts +12 -0
  540. package/dist/modules/storage/providers/lib/errors.d.mts.map +1 -0
  541. package/dist/modules/storage/providers/lib/errors.mjs +13 -0
  542. package/dist/modules/storage/providers/lib/errors.mjs.map +1 -0
  543. package/dist/modules/storage/providers/lib/types.d.mts +21 -0
  544. package/dist/modules/storage/providers/lib/types.d.mts.map +1 -0
  545. package/dist/modules/storage/providers/lib/validators.d.mts +112 -0
  546. package/dist/modules/storage/providers/lib/validators.d.mts.map +1 -0
  547. package/dist/modules/storage/providers/lib/validators.mjs +75 -0
  548. package/dist/modules/storage/providers/lib/validators.mjs.map +1 -0
  549. package/dist/router/server.d.mts +1 -1
  550. package/dist/storage/client.d.mts +4 -2
  551. package/dist/storage/client.mjs +4 -2
  552. package/dist/storage/server.d.mts +5 -4
  553. package/dist/storage/server.mjs +5 -4
  554. package/dist/storage.d.mts +9 -6
  555. package/dist/storage.mjs +8 -6
  556. package/package.json +20 -32
  557. package/src/components/editor/components/editor.client.tsx +9 -1
  558. package/src/components/editor/components/menu-nodes.client.tsx +1 -1
  559. package/src/components/editor/components/menu.client.tsx +3 -3
  560. package/src/components/editor/extensions/file-handler/extension.ts +4 -4
  561. package/src/components/editor/extensions/file-handler/strategy.ts +15 -40
  562. package/src/components/editor/extensions/file-handler/utils.ts +1 -1
  563. package/src/components/editor/extensions/image/extension.ts +10 -10
  564. package/src/components/editor/lib/helpers.ts +28 -11
  565. package/src/components/emails/forget-password-email.tsx +6 -6
  566. package/src/components/entry.client.ts +16 -0
  567. package/src/components/entry.ts +6 -14
  568. package/src/components/header/back-button.client.tsx +2 -2
  569. package/src/components/header/bottom-bar.client.tsx +2 -2
  570. package/src/components/header/breadcrumbs.client.tsx +1 -1
  571. package/src/components/header/header.client.tsx +1 -1
  572. package/src/components/layouts/empty-page.tsx +2 -2
  573. package/src/components/layouts/error-page.tsx +3 -3
  574. package/src/components/layouts/providers.client.tsx +8 -5
  575. package/src/components/layouts/root-loading.tsx +2 -2
  576. package/src/components/layouts/tab-layout.tsx +1 -1
  577. package/src/components/lists/data-list.tsx +1 -1
  578. package/src/components/lists/data-stack.tsx +1 -1
  579. package/src/components/navigation/admin-sidebar-header.client.tsx +3 -3
  580. package/src/components/navigation/admin-sidebar-skeleton.tsx +1 -1
  581. package/src/components/ui/accordion.client.tsx +83 -0
  582. package/src/components/ui/alert-dialog.client.tsx +181 -0
  583. package/src/components/ui/alert.tsx +15 -7
  584. package/src/components/ui/aspect-ratio.client.tsx +9 -0
  585. package/src/components/ui/avatar.client.tsx +61 -6
  586. package/src/components/ui/badge.tsx +17 -11
  587. package/src/components/ui/breadcrumb.tsx +9 -10
  588. package/src/components/ui/button-group.tsx +78 -0
  589. package/src/components/ui/button.tsx +26 -16
  590. package/src/components/ui/{calendar.tsx → calendar.client.tsx} +27 -20
  591. package/src/components/ui/card.tsx +41 -8
  592. package/src/components/ui/{carousel.tsx → carousel.client.tsx} +12 -12
  593. package/src/components/ui/chart.client.tsx +105 -103
  594. package/src/components/ui/checkbox.client.tsx +28 -0
  595. package/src/components/ui/collapsible.client.tsx +2 -2
  596. package/src/components/ui/combobox-dropdown.client.tsx +3 -2
  597. package/src/components/ui/combobox.client.tsx +7 -7
  598. package/src/components/ui/command.client.tsx +179 -0
  599. package/src/components/ui/{context-menu.tsx → context-menu.client.tsx} +86 -64
  600. package/src/components/ui/date-picker.client.tsx +2 -2
  601. package/src/components/ui/dialog.client.tsx +43 -20
  602. package/src/components/ui/drawer.client.tsx +13 -15
  603. package/src/components/ui/{dropdown-menu.tsx → dropdown-menu.client.tsx} +45 -24
  604. package/src/components/ui/empty.tsx +93 -0
  605. package/src/components/ui/field.client.tsx +224 -0
  606. package/src/components/ui/form.client.tsx +4 -4
  607. package/src/components/ui/hover-card.client.tsx +14 -13
  608. package/src/components/ui/{input-date-time.tsx → input-date-time.client.tsx} +6 -1
  609. package/src/components/ui/input-date.tsx +1 -1
  610. package/src/components/ui/input-group.client.tsx +191 -0
  611. package/src/components/ui/input-recipient.tsx +12 -12
  612. package/src/components/ui/input-time.tsx +1 -1
  613. package/src/components/ui/input.tsx +2 -4
  614. package/src/components/ui/item.tsx +182 -0
  615. package/src/components/ui/kbd.tsx +26 -0
  616. package/src/components/ui/label.tsx +2 -3
  617. package/src/components/ui/loader.tsx +51 -0
  618. package/src/components/ui/navigation-menu.tsx +14 -17
  619. package/src/components/ui/pagination.tsx +31 -26
  620. package/src/components/ui/popover.client.tsx +73 -0
  621. package/src/components/ui/progress.client.tsx +6 -4
  622. package/src/components/ui/radio-group.tsx +5 -7
  623. package/src/components/ui/resizable.client.tsx +9 -19
  624. package/src/components/ui/scroll-area.tsx +5 -7
  625. package/src/components/ui/select.client.tsx +40 -22
  626. package/src/components/ui/separator.tsx +3 -4
  627. package/src/components/ui/sheet.client.tsx +19 -18
  628. package/src/components/ui/sidebar.client.tsx +27 -27
  629. package/src/components/ui/skeleton.tsx +1 -1
  630. package/src/components/ui/slider.tsx +5 -10
  631. package/src/components/ui/spinner.tsx +12 -48
  632. package/src/components/ui/switch.client.tsx +32 -0
  633. package/src/components/ui/tabs.client.tsx +79 -0
  634. package/src/components/ui/textarea.tsx +1 -2
  635. package/src/components/ui/toggle-group.client.tsx +26 -10
  636. package/src/components/ui/toggle.client.tsx +44 -0
  637. package/src/components/ui/tooltip.client.tsx +4 -9
  638. package/src/entry.ts +12 -51
  639. package/src/lib/entry.ts +1 -5
  640. package/src/lib/hooks/use-indicator.tsx +4 -7
  641. package/src/lib/utils/markdown.ts +10 -0
  642. package/src/lib/utils/url.ts +2 -1
  643. package/src/lib/utils/user-agent.ts +15 -0
  644. package/src/modules/auth/components/auth-layout.server.tsx +2 -2
  645. package/src/modules/auth/components/{guard-first-user.server.tsx → create-first-user-guard.server.tsx} +8 -8
  646. package/src/modules/auth/components/create-first-user-page.client.tsx +4 -4
  647. package/src/modules/auth/components/forget-password-page.client.tsx +1 -1
  648. package/src/modules/auth/components/guard.server.tsx +1 -1
  649. package/src/modules/auth/components/login-page.client.tsx +6 -6
  650. package/src/modules/auth/components/reset-password-page.client.tsx +7 -7
  651. package/src/modules/auth/entry.server.ts +4 -5
  652. package/src/modules/auth/handler/create-client.client.ts +2 -2
  653. package/src/modules/auth/handler/proxy.server.ts +1 -1
  654. package/src/modules/auth/handler/route.server.ts +2 -2
  655. package/src/modules/auth/handler/{init.ts → service.server.ts} +30 -9
  656. package/src/modules/commands/components/alert-dialog-command.client.tsx +20 -16
  657. package/src/modules/commands/components/click-command.client.tsx +2 -2
  658. package/src/modules/commands/components/dialog-command.client.tsx +11 -10
  659. package/src/modules/commands/components/dropdown-command.client.tsx +2 -2
  660. package/src/modules/commands/components/empty-command.client.tsx +2 -2
  661. package/src/modules/commands/components/form-dialog-command.client.tsx +29 -13
  662. package/src/modules/commands/menus/context-menu.client.tsx +3 -4
  663. package/src/modules/commands/menus/dropdown-menu.client.tsx +2 -2
  664. package/src/modules/commands/menus/floating-menu.client.tsx +2 -2
  665. package/src/modules/commands/utils/archive-command.client.tsx +1 -1
  666. package/src/modules/commands/utils/delete-command.client.tsx +1 -1
  667. package/src/modules/config/entry.server.ts +0 -9
  668. package/src/modules/config/entry.ts +2 -2
  669. package/src/modules/config/lib/context.ts +9 -9
  670. package/src/modules/data-tables/components/cell/select.client.tsx +1 -1
  671. package/src/modules/data-tables/components/column-header.tsx +5 -5
  672. package/src/modules/data-tables/components/filters/combobox.client.tsx +6 -6
  673. package/src/modules/data-tables/components/filters/slider.client.tsx +2 -2
  674. package/src/modules/data-tables/components/header.tsx +1 -1
  675. package/src/modules/data-tables/components/skeleton.tsx +2 -2
  676. package/src/modules/data-tables/components/table.tsx +3 -3
  677. package/src/modules/data-tables/components/toolbar.tsx +1 -1
  678. package/src/modules/data-tables/entry.client.ts +1 -0
  679. package/src/modules/data-tables/server/get-data.server.ts +1 -1
  680. package/src/modules/data-tables/strategies/infinite/strategy.ts +4 -1
  681. package/src/modules/data-tables/strategies/pagination/components.tsx +3 -3
  682. package/src/modules/data-tables/tables/data-table/components/row.tsx +12 -21
  683. package/src/modules/data-tables/tables/inline-table/components/body.tsx +1 -1
  684. package/src/modules/data-tables/tables/inline-table/components/cells/common.tsx +1 -1
  685. package/src/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.tsx +1 -1
  686. package/src/modules/data-tables/tables/inline-table/components/cells/read-only.tsx +1 -1
  687. package/src/modules/data-tables/tables/inline-table/components/row.client.tsx +24 -30
  688. package/src/modules/data-tables/tables/inline-table/components/table.tsx +6 -1
  689. package/src/modules/data-tables/tables/inline-table/hooks/context.client.tsx +5 -0
  690. package/src/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.ts +119 -91
  691. package/src/modules/database/entry.client.ts +0 -0
  692. package/src/modules/database/entry.server.ts +4 -0
  693. package/src/modules/database/entry.ts +5 -0
  694. package/src/modules/database/lib/service.server.ts +33 -0
  695. package/src/modules/emails/entry.client.ts +0 -0
  696. package/src/modules/emails/entry.server.ts +4 -0
  697. package/src/modules/emails/entry.ts +0 -0
  698. package/src/modules/emails/lib/service.server.ts +29 -0
  699. package/src/modules/inline-edit/components/date-input.client.tsx +4 -4
  700. package/src/modules/inline-edit/components/date-picker.client.tsx +3 -2
  701. package/src/modules/inline-edit/components/date-time.client.tsx +2 -1
  702. package/src/modules/inline-edit/components/editor.client.tsx +3 -0
  703. package/src/modules/inline-edit/components/input-recipient.client.tsx +1 -0
  704. package/src/modules/inline-edit/components/input-toggle.client.tsx +3 -2
  705. package/src/modules/inline-edit/components/input.client.tsx +6 -3
  706. package/src/modules/inline-edit/components/select.client.tsx +11 -21
  707. package/src/modules/inline-edit/components/switch.client.tsx +4 -3
  708. package/src/modules/inline-edit/components/toggle.client.tsx +2 -1
  709. package/src/modules/inline-edit/lib/variants.ts +1 -1
  710. package/src/modules/router/handler/init.server.ts +2 -2
  711. package/src/modules/storage/components/dropzone.client.tsx +9 -9
  712. package/src/modules/storage/components/image-grid.client.tsx +28 -25
  713. package/src/modules/storage/components/image.client.tsx +8 -0
  714. package/src/modules/storage/components/upload-zone-context.client.tsx +11 -8
  715. package/src/modules/storage/components/upload-zone.client.tsx +23 -17
  716. package/src/modules/storage/entry.client.ts +3 -1
  717. package/src/modules/storage/entry.server.ts +9 -3
  718. package/src/modules/storage/entry.ts +13 -1
  719. package/src/modules/storage/lib/constants.ts +0 -11
  720. package/src/modules/storage/lib/helpers.ts +18 -65
  721. package/src/modules/storage/lib/procedures.server.ts +60 -0
  722. package/src/modules/storage/lib/router-handlers.server.ts +178 -0
  723. package/src/modules/storage/lib/schema.ts +26 -97
  724. package/src/modules/storage/lib/service.server.ts +636 -374
  725. package/src/modules/storage/lib/upload.client.ts +156 -0
  726. package/src/modules/storage/lib/validators.ts +50 -111
  727. package/src/modules/storage/providers/adapters/s3.server.ts +281 -0
  728. package/src/modules/storage/providers/lib/constants.ts +3 -0
  729. package/src/modules/storage/providers/lib/errors.ts +21 -0
  730. package/src/modules/storage/providers/lib/types.ts +28 -0
  731. package/src/modules/storage/providers/lib/validators.ts +122 -0
  732. package/src/styles.css +1 -3
  733. package/dist/components/ui/accordion.d.mts +0 -25
  734. package/dist/components/ui/accordion.d.mts.map +0 -1
  735. package/dist/components/ui/accordion.mjs +0 -46
  736. package/dist/components/ui/accordion.mjs.map +0 -1
  737. package/dist/components/ui/alert-dialog.d.mts +0 -43
  738. package/dist/components/ui/alert-dialog.d.mts.map +0 -1
  739. package/dist/components/ui/alert-dialog.mjs +0 -84
  740. package/dist/components/ui/alert-dialog.mjs.map +0 -1
  741. package/dist/components/ui/aspect-ratio.d.mts +0 -8
  742. package/dist/components/ui/aspect-ratio.d.mts.map +0 -1
  743. package/dist/components/ui/aspect-ratio.mjs +0 -16
  744. package/dist/components/ui/aspect-ratio.mjs.map +0 -1
  745. package/dist/components/ui/calendar.d.mts.map +0 -1
  746. package/dist/components/ui/calendar.mjs.map +0 -1
  747. package/dist/components/ui/carousel.d.mts.map +0 -1
  748. package/dist/components/ui/carousel.mjs.map +0 -1
  749. package/dist/components/ui/checkbox.d.mts +0 -12
  750. package/dist/components/ui/checkbox.d.mts.map +0 -1
  751. package/dist/components/ui/checkbox.mjs +0 -24
  752. package/dist/components/ui/checkbox.mjs.map +0 -1
  753. package/dist/components/ui/command.d.mts.map +0 -1
  754. package/dist/components/ui/command.mjs +0 -88
  755. package/dist/components/ui/command.mjs.map +0 -1
  756. package/dist/components/ui/context-menu.d.mts +0 -77
  757. package/dist/components/ui/context-menu.d.mts.map +0 -1
  758. package/dist/components/ui/context-menu.mjs +0 -125
  759. package/dist/components/ui/context-menu.mjs.map +0 -1
  760. package/dist/components/ui/dropdown-menu.d.mts +0 -78
  761. package/dist/components/ui/dropdown-menu.d.mts.map +0 -1
  762. package/dist/components/ui/dropdown-menu.mjs +0 -126
  763. package/dist/components/ui/dropdown-menu.mjs.map +0 -1
  764. package/dist/components/ui/input-date-time.d.mts.map +0 -1
  765. package/dist/components/ui/input-date-time.mjs.map +0 -1
  766. package/dist/components/ui/popover.d.mts +0 -23
  767. package/dist/components/ui/popover.d.mts.map +0 -1
  768. package/dist/components/ui/popover.mjs +0 -38
  769. package/dist/components/ui/popover.mjs.map +0 -1
  770. package/dist/components/ui/switch.d.mts +0 -12
  771. package/dist/components/ui/switch.d.mts.map +0 -1
  772. package/dist/components/ui/switch.mjs +0 -22
  773. package/dist/components/ui/switch.mjs.map +0 -1
  774. package/dist/components/ui/tabs.d.mts +0 -24
  775. package/dist/components/ui/tabs.d.mts.map +0 -1
  776. package/dist/components/ui/tabs.mjs +0 -39
  777. package/dist/components/ui/tabs.mjs.map +0 -1
  778. package/dist/components/ui/toggle.d.mts.map +0 -1
  779. package/dist/components/ui/toggle.mjs +0 -40
  780. package/dist/components/ui/toggle.mjs.map +0 -1
  781. package/dist/lib/config/constants.d.mts +0 -5
  782. package/dist/lib/config/constants.d.mts.map +0 -1
  783. package/dist/lib/config/constants.mjs +0 -6
  784. package/dist/lib/config/constants.mjs.map +0 -1
  785. package/dist/modules/auth/components/guard-first-user.server.d.mts +0 -18
  786. package/dist/modules/auth/components/guard-first-user.server.d.mts.map +0 -1
  787. package/dist/modules/auth/components/guard-first-user.server.mjs +0 -16
  788. package/dist/modules/auth/components/guard-first-user.server.mjs.map +0 -1
  789. package/dist/modules/auth/handler/init.mjs.map +0 -1
  790. package/dist/modules/config/db/helpers.d.mts.map +0 -1
  791. package/dist/modules/config/db/helpers.mjs.map +0 -1
  792. package/dist/modules/config/db/init.d.mts +0 -20
  793. package/dist/modules/config/db/init.d.mts.map +0 -1
  794. package/dist/modules/config/db/init.mjs +0 -15
  795. package/dist/modules/config/db/init.mjs.map +0 -1
  796. package/dist/modules/config/db/types.d.mts.map +0 -1
  797. package/dist/modules/config/providers/email.d.mts +0 -12
  798. package/dist/modules/config/providers/email.d.mts.map +0 -1
  799. package/dist/modules/config/providers/email.mjs +0 -11
  800. package/dist/modules/config/providers/email.mjs.map +0 -1
  801. package/dist/modules/storage/config/filters.d.mts +0 -17
  802. package/dist/modules/storage/config/filters.d.mts.map +0 -1
  803. package/dist/modules/storage/config/filters.mjs +0 -17
  804. package/dist/modules/storage/config/filters.mjs.map +0 -1
  805. package/dist/modules/storage/lib/create-client.server.d.mts +0 -11
  806. package/dist/modules/storage/lib/create-client.server.d.mts.map +0 -1
  807. package/dist/modules/storage/lib/create-client.server.mjs +0 -11
  808. package/dist/modules/storage/lib/create-client.server.mjs.map +0 -1
  809. package/dist/modules/storage/lib/create-upload.client.d.mts +0 -56
  810. package/dist/modules/storage/lib/create-upload.client.d.mts.map +0 -1
  811. package/dist/modules/storage/lib/create-upload.client.mjs +0 -98
  812. package/dist/modules/storage/lib/create-upload.client.mjs.map +0 -1
  813. package/dist/modules/storage/lib/proxy.server.d.mts +0 -21
  814. package/dist/modules/storage/lib/proxy.server.d.mts.map +0 -1
  815. package/dist/modules/storage/lib/proxy.server.mjs +0 -46
  816. package/dist/modules/storage/lib/proxy.server.mjs.map +0 -1
  817. package/dist/modules/storage/lib/router.server.d.mts +0 -31002
  818. package/dist/modules/storage/lib/router.server.d.mts.map +0 -1
  819. package/dist/modules/storage/lib/router.server.mjs +0 -86
  820. package/dist/modules/storage/lib/router.server.mjs.map +0 -1
  821. package/src/components/ui/accordion.tsx +0 -63
  822. package/src/components/ui/alert-dialog.tsx +0 -133
  823. package/src/components/ui/aspect-ratio.tsx +0 -9
  824. package/src/components/ui/checkbox.tsx +0 -29
  825. package/src/components/ui/command.tsx +0 -154
  826. package/src/components/ui/popover.tsx +0 -42
  827. package/src/components/ui/switch.tsx +0 -28
  828. package/src/components/ui/tabs.tsx +0 -54
  829. package/src/components/ui/toggle.tsx +0 -46
  830. package/src/lib/config/constants.ts +0 -1
  831. package/src/lib/utils/time-picker.ts +0 -139
  832. package/src/modules/config/db/init.ts +0 -21
  833. package/src/modules/config/providers/email.ts +0 -13
  834. package/src/modules/storage/config/filters.ts +0 -12
  835. package/src/modules/storage/lib/create-client.server.ts +0 -14
  836. package/src/modules/storage/lib/create-upload.client.ts +0 -134
  837. package/src/modules/storage/lib/proxy.server.ts +0 -63
  838. package/src/modules/storage/lib/router.server.ts +0 -182
  839. /package/src/modules/{config/db → database/lib}/helpers.ts +0 -0
  840. /package/src/modules/{config/db → database/lib}/types.ts +0 -0
@@ -2,31 +2,53 @@
2
2
 
3
3
  import { cn } from "../../lib/utils/cn.mjs";
4
4
  import { jsx } from "react/jsx-runtime";
5
- import * as AvatarPrimitive from "@radix-ui/react-avatar";
5
+ import { Avatar } from "radix-ui";
6
6
 
7
7
  //#region src/components/ui/avatar.client.tsx
8
- function Avatar({ className, ...props }) {
9
- return /* @__PURE__ */ jsx(AvatarPrimitive.Root, {
8
+ function Avatar$1({ className, size = "default", ...props }) {
9
+ return /* @__PURE__ */ jsx(Avatar.Root, {
10
10
  "data-slot": "avatar",
11
- className: cn("relative flex size-8 shrink-0 overflow-hidden rounded-full", className),
11
+ "data-size": size,
12
+ className: cn("group/avatar relative flex size-8 shrink-0 select-none rounded-full data-[size=lg]:size-10 data-[size=sm]:size-6", className),
12
13
  ...props
13
14
  });
14
15
  }
15
16
  function AvatarImage({ className, ...props }) {
16
- return /* @__PURE__ */ jsx(AvatarPrimitive.Image, {
17
+ return /* @__PURE__ */ jsx(Avatar.Image, {
17
18
  "data-slot": "avatar-image",
18
- className: cn("aspect-square size-full", className),
19
+ className: cn("aspect-square size-full rounded-full", className),
19
20
  ...props
20
21
  });
21
22
  }
22
23
  function AvatarFallback({ className, ...props }) {
23
- return /* @__PURE__ */ jsx(AvatarPrimitive.Fallback, {
24
+ return /* @__PURE__ */ jsx(Avatar.Fallback, {
24
25
  "data-slot": "avatar-fallback",
25
- className: cn("bg-muted flex size-full items-center justify-center rounded-full", className),
26
+ className: cn("flex size-full items-center justify-center rounded-full bg-muted text-muted-foreground text-sm group-data-[size=sm]/avatar:text-xs", className),
27
+ ...props
28
+ });
29
+ }
30
+ function AvatarBadge({ className, ...props }) {
31
+ return /* @__PURE__ */ jsx("span", {
32
+ "data-slot": "avatar-badge",
33
+ className: cn("absolute right-0 bottom-0 z-10 inline-flex select-none items-center justify-center rounded-full bg-primary text-primary-foreground ring-2 ring-background", "group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden", "group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2", "group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2", className),
34
+ ...props
35
+ });
36
+ }
37
+ function AvatarGroup({ className, ...props }) {
38
+ return /* @__PURE__ */ jsx("div", {
39
+ "data-slot": "avatar-group",
40
+ className: cn("group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background", className),
41
+ ...props
42
+ });
43
+ }
44
+ function AvatarGroupCount({ className, ...props }) {
45
+ return /* @__PURE__ */ jsx("div", {
46
+ "data-slot": "avatar-group-count",
47
+ className: cn("relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-muted-foreground text-sm ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3", className),
26
48
  ...props
27
49
  });
28
50
  }
29
51
 
30
52
  //#endregion
31
- export { Avatar, AvatarFallback, AvatarImage };
53
+ export { Avatar$1 as Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage };
32
54
  //# sourceMappingURL=avatar.client.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.client.mjs","names":[],"sources":["../../../src/components/ui/avatar.client.tsx"],"sourcesContent":["\"use client\";\n\nimport * as AvatarPrimitive from \"@radix-ui/react-avatar\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction Avatar({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root>) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n className={cn(\"relative flex size-8 shrink-0 overflow-hidden rounded-full\", className)}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\"aspect-square size-full\", className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\"bg-muted flex size-full items-center justify-center rounded-full\", className)}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarFallback, AvatarImage };\n"],"mappings":";;;;;;;AAOA,SAAS,OAAO,EAAE,WAAW,GAAG,SAA4D;AAC1F,QACE,oBAAC,gBAAgB;EACf,aAAU;EACV,WAAW,GAAG,8DAA8D,UAAU;EACtF,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAA6D;AAChG,QACE,oBAAC,gBAAgB;EACf,aAAU;EACV,WAAW,GAAG,2BAA2B,UAAU;EACnD,GAAI;GACJ;;AAIN,SAAS,eAAe,EACtB,WACA,GAAG,SACqD;AACxD,QACE,oBAAC,gBAAgB;EACf,aAAU;EACV,WAAW,GAAG,oEAAoE,UAAU;EAC5F,GAAI;GACJ"}
1
+ {"version":3,"file":"avatar.client.mjs","names":["Avatar","AvatarPrimitive"],"sources":["../../../src/components/ui/avatar.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n}) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n \"group/avatar relative flex size-8 shrink-0 select-none rounded-full data-[size=lg]:size-10 data-[size=sm]:size-6\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\"aspect-square size-full rounded-full\", className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n \"flex size-full items-center justify-center rounded-full bg-muted text-muted-foreground text-sm group-data-[size=sm]/avatar:text-xs\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n \"absolute right-0 bottom-0 z-10 inline-flex select-none items-center justify-center rounded-full bg-primary text-primary-foreground ring-2 ring-background\",\n \"group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden\",\n \"group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2\",\n \"group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n \"group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroupCount({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n \"relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-muted-foreground text-sm ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarImage, AvatarFallback, AvatarBadge, AvatarGroup, AvatarGroupCount };\n"],"mappings":";;;;;;;AAOA,SAASA,SAAO,EACd,WACA,OAAO,WACP,GAAG,SAGF;AACD,QACE,oBAACC,OAAgB;EACf,aAAU;EACV,aAAW;EACX,WAAW,GACT,oHACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAA6D;AAChG,QACE,oBAACA,OAAgB;EACf,aAAU;EACV,WAAW,GAAG,wCAAwC,UAAU;EAChE,GAAI;GACJ;;AAIN,SAAS,eAAe,EACtB,WACA,GAAG,SACqD;AACxD,QACE,oBAACA,OAAgB;EACf,aAAU;EACV,WAAW,GACT,sIACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAuC;AAC1E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,6JACA,iFACA,6FACA,iFACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,uGACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAsC;AAC9E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,4VACA,UACD;EACD,GAAI;GACJ"}
@@ -5,7 +5,7 @@ import * as class_variance_authority_types0 from "class-variance-authority/types
5
5
 
6
6
  //#region src/components/ui/badge.d.ts
7
7
  declare const badgeVariants: (props?: ({
8
- variant?: "default" | "outline" | "destructive" | "secondary" | null | undefined;
8
+ variant?: "link" | "default" | "destructive" | "secondary" | "outline" | "ghost" | null | undefined;
9
9
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
10
10
  declare function Badge({
11
11
  className,
@@ -1 +1 @@
1
- {"version":3,"file":"badge.d.mts","names":[],"sources":["../../../src/components/ui/badge.tsx"],"mappings":";;;;;;cAMM,aAAA,GAAa,KAAA;;IAiBlB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,KAAA,CAAA;EACP,SAAA;EACA,OAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,WAAyB,YAAA,QAAoB,aAAA;EAAmB,OAAA;AAAA,IAAmB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"badge.d.mts","names":[],"sources":["../../../src/components/ui/badge.tsx"],"mappings":";;;;;;cAKM,aAAA,GAAa,KAAA;;IAmBlB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,KAAA,CAAA;EACP,SAAA;EACA,OAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,WAAyB,YAAA,QAAoB,aAAA;EAAmB,OAAA;AAAA,IAAmB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,21 +1,24 @@
1
1
  import { cn } from "../../lib/utils/cn.mjs";
2
2
  import { jsx } from "react/jsx-runtime";
3
- import { Slot } from "@radix-ui/react-slot";
4
3
  import { cva } from "class-variance-authority";
4
+ import { Slot } from "radix-ui";
5
5
 
6
6
  //#region src/components/ui/badge.tsx
7
- const badgeVariants = cva("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden", {
7
+ const badgeVariants = cva("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden", {
8
8
  variants: { variant: {
9
- default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
10
- secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
11
- destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",
12
- outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
9
+ default: "bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
10
+ secondary: "bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
11
+ destructive: "bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
12
+ outline: "border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",
13
+ ghost: "[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",
14
+ link: "text-primary underline-offset-4 [a&]:hover:underline"
13
15
  } },
14
16
  defaultVariants: { variant: "default" }
15
17
  });
16
- function Badge({ className, variant, asChild = false, ...props }) {
17
- return /* @__PURE__ */ jsx(asChild ? Slot : "span", {
18
+ function Badge({ className, variant = "default", asChild = false, ...props }) {
19
+ return /* @__PURE__ */ jsx(asChild ? Slot.Root : "span", {
18
20
  "data-slot": "badge",
21
+ "data-variant": variant,
19
22
  className: cn(badgeVariants({ variant }), className),
20
23
  ...props
21
24
  });
@@ -1 +1 @@
1
- {"version":3,"file":"badge.mjs","names":[],"sources":["../../../src/components/ui/badge.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils/cn\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden\",\n {\n variants: {\n variant: {\n default: \"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n destructive:\n \"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40\",\n outline: \"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction Badge({\n className,\n variant,\n asChild = false,\n ...props\n}: React.ComponentProps<\"span\"> & VariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"span\";\n\n return (\n <Comp data-slot=\"badge\" className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n"],"mappings":";;;;;;AAMA,MAAM,gBAAgB,IACpB,kZACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,WACE;EACF,aACE;EACF,SAAS;EACV,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,MAAM,EACb,WACA,SACA,UAAU,OACV,GAAG,SACyF;AAG5F,QACE,oBAHW,UAAU,OAAO;EAGtB,aAAU;EAAQ,WAAW,GAAG,cAAc,EAAE,SAAS,CAAC,EAAE,UAAU;EAAE,GAAI;GAAS"}
1
+ {"version":3,"file":"badge.mjs","names":[],"sources":["../../../src/components/ui/badge.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport { Slot } from \"radix-ui\";\nimport type * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n secondary: \"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n destructive:\n \"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n ghost: \"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 [a&]:hover:underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction Badge({\n className,\n variant = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"span\"> & VariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot.Root : \"span\";\n\n return (\n <Comp\n data-slot=\"badge\"\n data-variant={variant}\n className={cn(badgeVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\nexport { Badge, badgeVariants };\n"],"mappings":";;;;;;AAKA,MAAM,gBAAgB,IACpB,uaACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,WAAW;EACX,aACE;EACF,SACE;EACF,OAAO;EACP,MAAM;EACP,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,MAAM,EACb,WACA,UAAU,WACV,UAAU,OACV,GAAG,SACyF;AAG5F,QACE,oBAHW,UAAU,KAAK,OAAO;EAI/B,aAAU;EACV,gBAAc;EACd,WAAW,GAAG,cAAc,EAAE,SAAS,CAAC,EAAE,UAAU;EACpD,GAAI;GACJ"}
@@ -2,7 +2,9 @@ import * as react_jsx_runtime0 from "react/jsx-runtime";
2
2
  import * as React$1 from "react";
3
3
 
4
4
  //#region src/components/ui/breadcrumb.d.ts
5
- declare function Breadcrumb(props: React$1.ComponentProps<"nav">): react_jsx_runtime0.JSX.Element;
5
+ declare function Breadcrumb({
6
+ ...props
7
+ }: React$1.ComponentProps<"nav">): react_jsx_runtime0.JSX.Element;
6
8
  declare function BreadcrumbList({
7
9
  className,
8
10
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.d.mts","names":[],"sources":["../../../src/components/ui/breadcrumb.tsx"],"mappings":";;;;iBAMS,UAAA,CAAW,KAAA,EAAO,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI7C,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAalE,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUlE,cAAA,CAAA;EACP,OAAA;EACA,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA;EACP,OAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAYQ,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAepE,mBAAA,CAAA;EAAsB,QAAA;EAAU,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAcjF,kBAAA,CAAA;EAAqB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"breadcrumb.d.mts","names":[],"sources":["../../../src/components/ui/breadcrumb.tsx"],"mappings":";;;;iBAKS,UAAA,CAAA;EAAA,GAAgB;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIpD,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAalE,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUlE,cAAA,CAAA;EACP,OAAA;EACA,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA;EACP,OAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAYQ,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAepE,mBAAA,CAAA;EAAsB,QAAA;EAAU,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAcjF,kBAAA,CAAA;EAAqB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,10 +1,10 @@
1
1
  import { cn } from "../../lib/utils/cn.mjs";
2
2
  import { ChevronRight, MoreHorizontal } from "lucide-react";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
- import { Slot } from "@radix-ui/react-slot";
4
+ import { Slot } from "radix-ui";
5
5
 
6
6
  //#region src/components/ui/breadcrumb.tsx
7
- function Breadcrumb(props) {
7
+ function Breadcrumb({ ...props }) {
8
8
  return /* @__PURE__ */ jsx("nav", {
9
9
  "aria-label": "breadcrumb",
10
10
  "data-slot": "breadcrumb",
@@ -14,21 +14,21 @@ function Breadcrumb(props) {
14
14
  function BreadcrumbList({ className, ...props }) {
15
15
  return /* @__PURE__ */ jsx("ol", {
16
16
  "data-slot": "breadcrumb-list",
17
- className: cn("text-muted-foreground flex flex-wrap items-center gap-1 wrap-break-word text-sm", className),
17
+ className: cn("wrap-break-word flex flex-wrap items-center gap-1.5 text-muted-foreground text-sm sm:gap-2.5", className),
18
18
  ...props
19
19
  });
20
20
  }
21
21
  function BreadcrumbItem({ className, ...props }) {
22
22
  return /* @__PURE__ */ jsx("li", {
23
23
  "data-slot": "breadcrumb-item",
24
- className: cn("inline-flex items-center gap-1.5 rounded-md p-2", className),
24
+ className: cn("inline-flex items-center gap-1.5", className),
25
25
  ...props
26
26
  });
27
27
  }
28
28
  function BreadcrumbLink({ asChild, className, ...props }) {
29
- return /* @__PURE__ */ jsx(asChild ? Slot : "a", {
29
+ return /* @__PURE__ */ jsx(asChild ? Slot.Root : "a", {
30
30
  "data-slot": "breadcrumb-link",
31
- className: cn("hover:text-foreground transition-colors", className),
31
+ className: cn("transition-colors hover:text-foreground", className),
32
32
  ...props
33
33
  });
34
34
  }
@@ -38,7 +38,7 @@ function BreadcrumbPage({ className, ...props }) {
38
38
  role: "link",
39
39
  "aria-disabled": "true",
40
40
  "aria-current": "page",
41
- className: cn("text-foreground font-normal", className),
41
+ className: cn("font-normal text-foreground", className),
42
42
  ...props
43
43
  });
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.mjs","names":[],"sources":["../../../src/components/ui/breadcrumb.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport { ChevronRight, MoreHorizontal } from \"lucide-react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction Breadcrumb(props: React.ComponentProps<\"nav\">) {\n return <nav aria-label=\"breadcrumb\" data-slot=\"breadcrumb\" {...props} />;\n}\n\nfunction BreadcrumbList({ className, ...props }: React.ComponentProps<\"ol\">) {\n return (\n <ol\n data-slot=\"breadcrumb-list\"\n className={cn(\n \"text-muted-foreground flex flex-wrap items-center gap-1 wrap-break-word text-sm\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"breadcrumb-item\"\n className={cn(\"inline-flex items-center gap-1.5 rounded-md p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbLink({\n asChild,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean;\n}) {\n const Comp = asChild ? Slot : \"a\";\n\n return (\n <Comp\n data-slot=\"breadcrumb-link\"\n className={cn(\"hover:text-foreground transition-colors\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbPage({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n // biome-ignore lint/a11y/useFocusableInteractive: BreadcrumbPage is not meant to be interactive, it's just a label for the current page in the breadcrumb.\n // biome-ignore lint/a11y/useSemanticElements: BreadcrumbPage is not meant to be interactive, it's just a label for the current page in the breadcrumb.\n <span\n data-slot=\"breadcrumb-page\"\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn(\"text-foreground font-normal\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbSeparator({ children, className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"breadcrumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"[&>svg]:size-3.5\", className)}\n {...props}\n >\n {children ?? <ChevronRight />}\n </li>\n );\n}\n\nfunction BreadcrumbEllipsis({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"breadcrumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"flex size-9 items-center justify-center\", className)}\n {...props}\n >\n <MoreHorizontal className=\"size-4\" />\n <span className=\"sr-only\">More</span>\n </span>\n );\n}\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n};\n"],"mappings":";;;;;;AAMA,SAAS,WAAW,OAAoC;AACtD,QAAO,oBAAC;EAAI,cAAW;EAAa,aAAU;EAAa,GAAI;GAAS;;AAG1E,SAAS,eAAe,EAAE,WAAW,GAAG,SAAqC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,mFACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,eAAe,EAAE,WAAW,GAAG,SAAqC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,mDAAmD,UAAU;EAC3E,GAAI;GACJ;;AAIN,SAAS,eAAe,EACtB,SACA,WACA,GAAG,SAGF;AAGD,QACE,oBAHW,UAAU,OAAO;EAI1B,aAAU;EACV,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;GACJ;;AAIN,SAAS,eAAe,EAAE,WAAW,GAAG,SAAuC;AAC7E,QAGE,oBAAC;EACC,aAAU;EACV,MAAK;EACL,iBAAc;EACd,gBAAa;EACb,WAAW,GAAG,+BAA+B,UAAU;EACvD,GAAI;GACJ;;AAIN,SAAS,oBAAoB,EAAE,UAAU,WAAW,GAAG,SAAqC;AAC1F,QACE,oBAAC;EACC,aAAU;EACV,MAAK;EACL,eAAY;EACZ,WAAW,GAAG,oBAAoB,UAAU;EAC5C,GAAI;YAEH,YAAY,oBAAC,iBAAe;GAC1B;;AAIT,SAAS,mBAAmB,EAAE,WAAW,GAAG,SAAuC;AACjF,QACE,qBAAC;EACC,aAAU;EACV,MAAK;EACL,eAAY;EACZ,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;aAEJ,oBAAC,kBAAe,WAAU,WAAW,EACrC,oBAAC;GAAK,WAAU;aAAU;IAAW;GAChC"}
1
+ {"version":3,"file":"breadcrumb.mjs","names":[],"sources":["../../../src/components/ui/breadcrumb.tsx"],"sourcesContent":["import { ChevronRight, MoreHorizontal } from \"lucide-react\";\nimport { Slot } from \"radix-ui\";\nimport type * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction Breadcrumb({ ...props }: React.ComponentProps<\"nav\">) {\n return <nav aria-label=\"breadcrumb\" data-slot=\"breadcrumb\" {...props} />;\n}\n\nfunction BreadcrumbList({ className, ...props }: React.ComponentProps<\"ol\">) {\n return (\n <ol\n data-slot=\"breadcrumb-list\"\n className={cn(\n \"wrap-break-word flex flex-wrap items-center gap-1.5 text-muted-foreground text-sm sm:gap-2.5\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"breadcrumb-item\"\n className={cn(\"inline-flex items-center gap-1.5\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbLink({\n asChild,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean;\n}) {\n const Comp = asChild ? Slot.Root : \"a\";\n\n return (\n <Comp\n data-slot=\"breadcrumb-link\"\n className={cn(\"transition-colors hover:text-foreground\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbPage({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n // biome-ignore lint/a11y/useFocusableInteractive: BreadcrumbPage is not meant to be interactive, it's just a label for the current page in the breadcrumb.\n // biome-ignore lint/a11y/useSemanticElements: BreadcrumbPage is not meant to be interactive, it's just a label for the current page in the breadcrumb.\n <span\n data-slot=\"breadcrumb-page\"\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn(\"font-normal text-foreground\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbSeparator({ children, className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"breadcrumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"[&>svg]:size-3.5\", className)}\n {...props}\n >\n {children ?? <ChevronRight />}\n </li>\n );\n}\n\nfunction BreadcrumbEllipsis({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"breadcrumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"flex size-9 items-center justify-center\", className)}\n {...props}\n >\n <MoreHorizontal className=\"size-4\" />\n <span className=\"sr-only\">More</span>\n </span>\n );\n}\n\nexport {\n Breadcrumb,\n BreadcrumbList,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbPage,\n BreadcrumbSeparator,\n BreadcrumbEllipsis,\n};\n"],"mappings":";;;;;;AAKA,SAAS,WAAW,EAAE,GAAG,SAAsC;AAC7D,QAAO,oBAAC;EAAI,cAAW;EAAa,aAAU;EAAa,GAAI;GAAS;;AAG1E,SAAS,eAAe,EAAE,WAAW,GAAG,SAAqC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,gGACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,eAAe,EAAE,WAAW,GAAG,SAAqC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,oCAAoC,UAAU;EAC5D,GAAI;GACJ;;AAIN,SAAS,eAAe,EACtB,SACA,WACA,GAAG,SAGF;AAGD,QACE,oBAHW,UAAU,KAAK,OAAO;EAI/B,aAAU;EACV,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;GACJ;;AAIN,SAAS,eAAe,EAAE,WAAW,GAAG,SAAuC;AAC7E,QAGE,oBAAC;EACC,aAAU;EACV,MAAK;EACL,iBAAc;EACd,gBAAa;EACb,WAAW,GAAG,+BAA+B,UAAU;EACvD,GAAI;GACJ;;AAIN,SAAS,oBAAoB,EAAE,UAAU,WAAW,GAAG,SAAqC;AAC1F,QACE,oBAAC;EACC,aAAU;EACV,MAAK;EACL,eAAY;EACZ,WAAW,GAAG,oBAAoB,UAAU;EAC5C,GAAI;YAEH,YAAY,oBAAC,iBAAe;GAC1B;;AAIT,SAAS,mBAAmB,EAAE,WAAW,GAAG,SAAuC;AACjF,QACE,qBAAC;EACC,aAAU;EACV,MAAK;EACL,eAAY;EACZ,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;aAEJ,oBAAC,kBAAe,WAAU,WAAW,EACrC,oBAAC;GAAK,WAAU;aAAU;IAAW;GAChC"}
@@ -0,0 +1,29 @@
1
+ import { Separator } from "./separator.mjs";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+ import { VariantProps } from "class-variance-authority";
4
+ import * as class_variance_authority_types0 from "class-variance-authority/types";
5
+
6
+ //#region src/components/ui/button-group.d.ts
7
+ declare const buttonGroupVariants: (props?: ({
8
+ orientation?: "horizontal" | "vertical" | null | undefined;
9
+ } & class_variance_authority_types0.ClassProp) | undefined) => string;
10
+ declare function ButtonGroup({
11
+ className,
12
+ orientation,
13
+ ...props
14
+ }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants>): react_jsx_runtime0.JSX.Element;
15
+ declare function ButtonGroupText({
16
+ className,
17
+ asChild,
18
+ ...props
19
+ }: React.ComponentProps<"div"> & {
20
+ asChild?: boolean;
21
+ }): react_jsx_runtime0.JSX.Element;
22
+ declare function ButtonGroupSeparator({
23
+ className,
24
+ orientation,
25
+ ...props
26
+ }: React.ComponentProps<typeof Separator>): react_jsx_runtime0.JSX.Element;
27
+ //#endregion
28
+ export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
29
+ //# sourceMappingURL=button-group.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.d.mts","names":[],"sources":["../../../src/components/ui/button-group.tsx"],"mappings":";;;;;;cAKM,mBAAA,GAAmB,KAAA;;IAexB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,WAAA,CAAA;EACP,SAAA;EACA,WAAA;EAAA,GACG;AAAA,GACF,KAAA,CAAM,cAAA,UAAwB,YAAA,QAAoB,mBAAA,IAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAahE,eAAA,CAAA;EACP,SAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,KAAA,CAAM,cAAA;EACP,OAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAcQ,oBAAA,CAAA;EACP,SAAA;EACA,WAAA;EAAA,GACG;AAAA,GACF,KAAA,CAAM,cAAA,QAAsB,SAAA,IAAU,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,41 @@
1
+ import { cn } from "../../lib/utils/cn.mjs";
2
+ import { Separator as Separator$1 } from "./separator.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { cva } from "class-variance-authority";
5
+ import { Slot } from "radix-ui";
6
+
7
+ //#region src/components/ui/button-group.tsx
8
+ const buttonGroupVariants = cva("has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg flex w-fit items-stretch *:focus-visible:z-10 *:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1", {
9
+ variants: { orientation: {
10
+ horizontal: "[&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-lg! [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none",
11
+ vertical: "[&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-lg! flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none"
12
+ } },
13
+ defaultVariants: { orientation: "horizontal" }
14
+ });
15
+ function ButtonGroup({ className, orientation, ...props }) {
16
+ return /* @__PURE__ */ jsx("div", {
17
+ role: "group",
18
+ "data-slot": "button-group",
19
+ "data-orientation": orientation,
20
+ className: cn(buttonGroupVariants({ orientation }), className),
21
+ ...props
22
+ });
23
+ }
24
+ function ButtonGroupText({ className, asChild = false, ...props }) {
25
+ return /* @__PURE__ */ jsx(asChild ? Slot.Root : "div", {
26
+ className: cn("flex items-center gap-2 rounded-lg border bg-muted px-2.5 font-medium text-sm [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none", className),
27
+ ...props
28
+ });
29
+ }
30
+ function ButtonGroupSeparator({ className, orientation = "vertical", ...props }) {
31
+ return /* @__PURE__ */ jsx(Separator$1, {
32
+ "data-slot": "button-group-separator",
33
+ orientation,
34
+ className: cn("relative self-stretch bg-input data-[orientation=horizontal]:mx-px data-[orientation=vertical]:my-px data-[orientation=vertical]:h-auto data-[orientation=horizontal]:w-auto", className),
35
+ ...props
36
+ });
37
+ }
38
+
39
+ //#endregion
40
+ export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
41
+ //# sourceMappingURL=button-group.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.mjs","names":["Separator"],"sources":["../../../src/components/ui/button-group.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport { Slot } from \"radix-ui\";\nimport { Separator } from \"@/components/ui/separator\";\nimport { cn } from \"@/lib/utils/cn\";\n\nconst buttonGroupVariants = cva(\n \"has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg flex w-fit items-stretch *:focus-visible:z-10 *:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1\",\n {\n variants: {\n orientation: {\n horizontal:\n \"[&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-lg! [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none\",\n vertical:\n \"[&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-lg! flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n },\n);\n\nfunction ButtonGroup({\n className,\n orientation,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof buttonGroupVariants>) {\n return (\n // biome-ignore lint/a11y/useSemanticElements: The role=\"group\" is necessary for accessibility, and the div is used to wrap the buttons in the group.\n <div\n role=\"group\"\n data-slot=\"button-group\"\n data-orientation={orientation}\n className={cn(buttonGroupVariants({ orientation }), className)}\n {...props}\n />\n );\n}\n\nfunction ButtonGroupText({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n asChild?: boolean;\n}) {\n const Comp = asChild ? Slot.Root : \"div\";\n\n return (\n <Comp\n className={cn(\n \"flex items-center gap-2 rounded-lg border bg-muted px-2.5 font-medium text-sm [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ButtonGroupSeparator({\n className,\n orientation = \"vertical\",\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"button-group-separator\"\n orientation={orientation}\n className={cn(\n \"relative self-stretch bg-input data-[orientation=horizontal]:mx-px data-[orientation=vertical]:my-px data-[orientation=vertical]:h-auto data-[orientation=horizontal]:w-auto\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };\n"],"mappings":";;;;;;;AAKA,MAAM,sBAAsB,IAC1B,4RACA;CACE,UAAU,EACR,aAAa;EACX,YACE;EACF,UACE;EACH,EACF;CACD,iBAAiB,EACf,aAAa,cACd;CACF,CACF;AAED,SAAS,YAAY,EACnB,WACA,aACA,GAAG,SACsE;AACzE,QAEE,oBAAC;EACC,MAAK;EACL,aAAU;EACV,oBAAkB;EAClB,WAAW,GAAG,oBAAoB,EAAE,aAAa,CAAC,EAAE,UAAU;EAC9D,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EACvB,WACA,UAAU,OACV,GAAG,SAGF;AAGD,QACE,oBAHW,UAAU,KAAK,OAAO;EAI/B,WAAW,GACT,kJACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,qBAAqB,EAC5B,WACA,cAAc,YACd,GAAG,SACsC;AACzC,QACE,oBAACA;EACC,aAAU;EACG;EACb,WAAW,GACT,gLACA,UACD;EACD,GAAI;GACJ"}
@@ -5,8 +5,8 @@ import * as class_variance_authority_types0 from "class-variance-authority/types
5
5
 
6
6
  //#region src/components/ui/button.d.ts
7
7
  declare const buttonVariants: (props?: ({
8
- variant?: "default" | "link" | "outline" | "destructive" | "secondary" | "ghost" | null | undefined;
9
- size?: "default" | "sm" | "lg" | "icon" | null | undefined;
8
+ variant?: "link" | "default" | "destructive" | "secondary" | "outline" | "ghost" | null | undefined;
9
+ size?: "default" | "xs" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
10
10
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
11
11
  declare function Button({
12
12
  className,
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.mts","names":[],"sources":["../../../src/components/ui/button.tsx"],"mappings":";;;;;;cAMM,cAAA,GAAc,KAAA;;;IA0BnB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,MAAA,CAAA;EACP,SAAA;EACA,OAAA;EACA,IAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,aACP,YAAA,QAAoB,cAAA;EAClB,OAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"button.d.mts","names":[],"sources":["../../../src/components/ui/button.tsx"],"mappings":";;;;;;cAKM,cAAA,GAAc,KAAA;;;IAmCnB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,MAAA,CAAA;EACP,SAAA;EACA,OAAA;EACA,IAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,aACP,YAAA,QAAoB,cAAA;EAClB,OAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,24 +1,28 @@
1
1
  import { cn } from "../../lib/utils/cn.mjs";
2
2
  import { jsx } from "react/jsx-runtime";
3
- import { Slot } from "@radix-ui/react-slot";
4
3
  import { cva } from "class-variance-authority";
4
+ import { Slot } from "radix-ui";
5
5
 
6
6
  //#region src/components/ui/button.tsx
7
- const buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", {
7
+ const buttonVariants = cva("focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 rounded-lg border border-transparent bg-clip-padding text-sm font-medium focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none", {
8
8
  variants: {
9
9
  variant: {
10
- default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
11
- destructive: "bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",
12
- outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground",
13
- secondary: "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",
14
- ghost: "hover:bg-accent hover:text-accent-foreground",
10
+ default: "bg-primary text-primary-foreground [a]:hover:bg-primary/80",
11
+ outline: "border-border bg-background hover:bg-muted hover:text-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 aria-expanded:bg-muted aria-expanded:text-foreground",
12
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",
13
+ ghost: "hover:bg-muted hover:text-foreground dark:hover:bg-muted/50 aria-expanded:bg-muted aria-expanded:text-foreground",
14
+ destructive: "bg-destructive/10 hover:bg-destructive/20 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/20 text-destructive focus-visible:border-destructive/40 dark:hover:bg-destructive/30",
15
15
  link: "text-primary underline-offset-4 hover:underline"
16
16
  },
17
17
  size: {
18
- default: "h-9 px-4 py-2 has-[>svg]:px-3",
19
- sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
20
- lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
21
- icon: "size-9"
18
+ default: "h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",
19
+ xs: "h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",
20
+ sm: "h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",
21
+ lg: "h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3",
22
+ icon: "size-8",
23
+ "icon-xs": "size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3",
24
+ "icon-sm": "size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg",
25
+ "icon-lg": "size-9"
22
26
  }
23
27
  },
24
28
  defaultVariants: {
@@ -26,9 +30,11 @@ const buttonVariants = cva("inline-flex items-center justify-center gap-2 whites
26
30
  size: "default"
27
31
  }
28
32
  });
29
- function Button({ className, variant, size, asChild = false, ...props }) {
30
- return /* @__PURE__ */ jsx(asChild ? Slot : "button", {
33
+ function Button({ className, variant = "default", size = "default", asChild = false, ...props }) {
34
+ return /* @__PURE__ */ jsx(asChild ? Slot.Root : "button", {
31
35
  "data-slot": "button",
36
+ "data-variant": variant,
37
+ "data-size": size,
32
38
  className: cn(buttonVariants({
33
39
  variant,
34
40
  size,
@@ -1 +1 @@
1
- {"version":3,"file":"button.mjs","names":[],"sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils/cn\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40\",\n outline:\n \"border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground\",\n secondary: \"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2 has-[>svg]:px-3\",\n sm: \"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5\",\n lg: \"h-10 rounded-md px-6 has-[>svg]:px-4\",\n icon: \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Button({\n className,\n variant,\n size,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean;\n }) {\n const Comp = asChild ? Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"button\"\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\nexport { Button, buttonVariants };\n"],"mappings":";;;;;;AAMA,MAAM,iBAAiB,IACrB,8cACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,aACE;GACF,SACE;GACF,WAAW;GACX,OAAO;GACP,MAAM;GACP;EACD,MAAM;GACJ,SAAS;GACT,IAAI;GACJ,IAAI;GACJ,MAAM;GACP;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF;AAED,SAAS,OAAO,EACd,WACA,SACA,MACA,UAAU,OACV,GAAG,SAIA;AAGH,QACE,oBAHW,UAAU,OAAO;EAI1B,aAAU;EACV,WAAW,GAAG,eAAe;GAAE;GAAS;GAAM;GAAW,CAAC,CAAC;EAC3D,GAAI;GACJ"}
1
+ {"version":3,"file":"button.mjs","names":[],"sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport { Slot } from \"radix-ui\";\nimport type * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nconst buttonVariants = cva(\n \"focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 rounded-lg border border-transparent bg-clip-padding text-sm font-medium focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a]:hover:bg-primary/80\",\n outline:\n \"border-border bg-background hover:bg-muted hover:text-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 aria-expanded:bg-muted aria-expanded:text-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-muted hover:text-foreground dark:hover:bg-muted/50 aria-expanded:bg-muted aria-expanded:text-foreground\",\n destructive:\n \"bg-destructive/10 hover:bg-destructive/20 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/20 text-destructive focus-visible:border-destructive/40 dark:hover:bg-destructive/30\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n xs: \"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-8\",\n \"icon-xs\":\n \"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\":\n \"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg\",\n \"icon-lg\": \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean;\n }) {\n const Comp = asChild ? Slot.Root : \"button\";\n\n return (\n <Comp\n data-slot=\"button\"\n data-variant={variant}\n data-size={size}\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\nexport { Button, buttonVariants };\n"],"mappings":";;;;;;AAKA,MAAM,iBAAiB,IACrB,ojBACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SACE;GACF,WACE;GACF,OACE;GACF,aACE;GACF,MAAM;GACP;EACD,MAAM;GACJ,SACE;GACF,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,MAAM;GACN,WACE;GACF,WACE;GACF,WAAW;GACZ;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF;AAED,SAAS,OAAO,EACd,WACA,UAAU,WACV,OAAO,WACP,UAAU,OACV,GAAG,SAIA;AAGH,QACE,oBAHW,UAAU,KAAK,OAAO;EAI/B,aAAU;EACV,gBAAc;EACd,aAAW;EACX,WAAW,GAAG,eAAe;GAAE;GAAS;GAAM;GAAW,CAAC,CAAC;EAC3D,GAAI;GACJ"}
@@ -1,9 +1,9 @@
1
1
  import { Button } from "./button.mjs";
2
2
  import * as react_jsx_runtime0 from "react/jsx-runtime";
3
3
  import * as React$1 from "react";
4
- import { DayButton, DayPicker } from "react-day-picker";
4
+ import { DayButton, DayPicker, Locale } from "react-day-picker";
5
5
 
6
- //#region src/components/ui/calendar.d.ts
6
+ //#region src/components/ui/calendar.client.d.ts
7
7
  declare function Calendar({
8
8
  className,
9
9
  classNames,
@@ -21,8 +21,11 @@ declare function CalendarDayButton({
21
21
  className,
22
22
  day,
23
23
  modifiers,
24
+ locale,
24
25
  ...props
25
- }: React$1.ComponentProps<typeof DayButton>): react_jsx_runtime0.JSX.Element;
26
+ }: React$1.ComponentProps<typeof DayButton> & {
27
+ locale?: Partial<Locale>;
28
+ }): react_jsx_runtime0.JSX.Element;
26
29
  //#endregion
27
30
  export { Calendar, CalendarDayButton };
28
- //# sourceMappingURL=calendar.d.mts.map
31
+ //# sourceMappingURL=calendar.client.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.client.d.mts","names":[],"sources":["../../../src/components/ui/calendar.client.tsx"],"mappings":";;;;;;iBASS,QAAA,CAAA;EACP,SAAA;EACA,UAAA;EACA,eAAA;EACA,aAAA;EACA,aAAA;EACA,MAAA;EACA,UAAA;EACA,UAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,SAAA;EAC7B,aAAA,GAAgB,OAAA,CAAM,cAAA,QAAsB,MAAA;AAAA,IAC7C,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAgIQ,iBAAA,CAAA;EACP,SAAA;EACA,GAAA;EACA,SAAA;EACA,MAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,SAAA;EAAe,MAAA,GAAS,OAAA,CAAQ,MAAA;AAAA,IAAS,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -8,18 +8,18 @@ import * as React$1 from "react";
8
8
  import { DayPicker, getDefaultClassNames } from "react-day-picker";
9
9
  import { nlBE } from "react-day-picker/locale";
10
10
 
11
- //#region src/components/ui/calendar.tsx
11
+ //#region src/components/ui/calendar.client.tsx
12
12
  function Calendar$1({ className, classNames, showOutsideDays = true, captionLayout = "label", buttonVariant = "ghost", locale = nlBE, formatters, components, ...props }) {
13
13
  const defaultClassNames = getDefaultClassNames();
14
14
  return /* @__PURE__ */ jsx(DayPicker, {
15
15
  showOutsideDays,
16
- className: cn("bg-background group/calendar in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent p-3 [--cell-size:--spacing(8)]", String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`, String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`, className),
16
+ className: cn("group/calendar bg-background in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)]", String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`, String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`, className),
17
17
  captionLayout,
18
+ locale,
18
19
  formatters: {
19
- formatMonthDropdown: (date) => date.toLocaleString("default", { month: "short" }),
20
+ formatMonthDropdown: (date) => date.toLocaleString(locale?.code, { month: "short" }),
20
21
  ...formatters
21
22
  },
22
- locale,
23
23
  classNames: {
24
24
  root: cn("w-fit", defaultClassNames.root),
25
25
  months: cn("flex gap-4 flex-col md:flex-row relative", defaultClassNames.months),
@@ -29,20 +29,20 @@ function Calendar$1({ className, classNames, showOutsideDays = true, captionLayo
29
29
  button_next: cn(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) aria-disabled:opacity-50 p-0 select-none", defaultClassNames.button_next),
30
30
  month_caption: cn("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)", defaultClassNames.month_caption),
31
31
  dropdowns: cn("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5", defaultClassNames.dropdowns),
32
- dropdown_root: cn("relative has-focus:border-ring border border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] rounded-md", defaultClassNames.dropdown_root),
32
+ dropdown_root: cn("relative cn-calendar-dropdown-root rounded-(--cell-radius)", defaultClassNames.dropdown_root),
33
33
  dropdown: cn("absolute bg-popover inset-0 opacity-0", defaultClassNames.dropdown),
34
- caption_label: cn("select-none font-medium", captionLayout === "label" ? "text-sm" : "rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5", defaultClassNames.caption_label),
34
+ caption_label: cn("select-none font-medium", captionLayout === "label" ? "text-sm" : "cn-calendar-caption-label rounded-(--cell-radius) flex items-center gap-1 text-sm [&>svg]:text-muted-foreground [&>svg]:size-3.5", defaultClassNames.caption_label),
35
35
  table: "w-full border-collapse",
36
36
  weekdays: cn("flex", defaultClassNames.weekdays),
37
- weekday: cn("text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none", defaultClassNames.weekday),
37
+ weekday: cn("text-muted-foreground rounded-(--cell-radius) flex-1 font-normal text-[0.8rem] select-none", defaultClassNames.weekday),
38
38
  week: cn("flex w-full mt-2", defaultClassNames.week),
39
39
  week_number_header: cn("select-none w-(--cell-size)", defaultClassNames.week_number_header),
40
40
  week_number: cn("text-[0.8rem] select-none text-muted-foreground", defaultClassNames.week_number),
41
- day: cn("relative w-full h-full p-0 text-center [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none", props.showWeekNumber ? "[&:nth-child(2)[data-selected=true]_button]:rounded-l-md" : "[&:first-child[data-selected=true]_button]:rounded-l-md", defaultClassNames.day),
42
- range_start: cn("rounded-l-md bg-accent", defaultClassNames.range_start),
41
+ day: cn("relative w-full rounded-(--cell-radius) h-full p-0 text-center [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius) group/day aspect-square select-none", props.showWeekNumber ? "[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)" : "[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)", defaultClassNames.day),
42
+ range_start: cn("rounded-l-(--cell-radius) bg-muted relative after:bg-muted after:absolute after:inset-y-0 after:w-4 after:right-0 z-0 isolate", defaultClassNames.range_start),
43
43
  range_middle: cn("rounded-none", defaultClassNames.range_middle),
44
- range_end: cn("rounded-r-md bg-accent", defaultClassNames.range_end),
45
- today: cn("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none", defaultClassNames.today),
44
+ range_end: cn("rounded-r-(--cell-radius) bg-muted relative after:bg-muted after:absolute after:inset-y-0 after:w-4 after:left-0 z-0 isolate", defaultClassNames.range_end),
45
+ today: cn("bg-muted text-foreground rounded-(--cell-radius) data-[selected=true]:rounded-none", defaultClassNames.today),
46
46
  outside: cn("text-muted-foreground aria-selected:text-muted-foreground", defaultClassNames.outside),
47
47
  disabled: cn("text-muted-foreground opacity-50", defaultClassNames.disabled),
48
48
  hidden: cn("invisible", defaultClassNames.hidden),
@@ -59,11 +59,11 @@ function Calendar$1({ className, classNames, showOutsideDays = true, captionLayo
59
59
  },
60
60
  Chevron: ({ className, orientation, ...props }) => {
61
61
  if (orientation === "left") return /* @__PURE__ */ jsx(ChevronLeftIcon, {
62
- className: cn("size-4", className),
62
+ className: cn("cn-rtl-flip size-4", className),
63
63
  ...props
64
64
  });
65
65
  if (orientation === "right") return /* @__PURE__ */ jsx(ChevronRightIcon, {
66
- className: cn("size-4", className),
66
+ className: cn("cn-rtl-flip size-4", className),
67
67
  ...props
68
68
  });
69
69
  return /* @__PURE__ */ jsx(ChevronDownIcon, {
@@ -71,12 +71,15 @@ function Calendar$1({ className, classNames, showOutsideDays = true, captionLayo
71
71
  ...props
72
72
  });
73
73
  },
74
- DayButton: CalendarDayButton,
74
+ DayButton: ({ ...props }) => /* @__PURE__ */ jsx(CalendarDayButton, {
75
+ locale,
76
+ ...props
77
+ }),
75
78
  WeekNumber: ({ children, ...props }) => {
76
79
  return /* @__PURE__ */ jsx("td", {
77
80
  ...props,
78
81
  children: /* @__PURE__ */ jsx("div", {
79
- className: "size-(--cell-size) flex items-center justify-center text-center",
82
+ className: "flex size-(--cell-size) items-center justify-center text-center",
80
83
  children
81
84
  })
82
85
  });
@@ -86,7 +89,7 @@ function Calendar$1({ className, classNames, showOutsideDays = true, captionLayo
86
89
  ...props
87
90
  });
88
91
  }
89
- function CalendarDayButton({ className, day, modifiers, ...props }) {
92
+ function CalendarDayButton({ className, day, modifiers, locale, ...props }) {
90
93
  const defaultClassNames = getDefaultClassNames();
91
94
  const ref = React$1.useRef(null);
92
95
  React$1.useEffect(() => {
@@ -96,16 +99,16 @@ function CalendarDayButton({ className, day, modifiers, ...props }) {
96
99
  ref,
97
100
  variant: "ghost",
98
101
  size: "icon",
99
- "data-day": day.date.toLocaleDateString(),
102
+ "data-day": day.date.toLocaleDateString(locale?.code),
100
103
  "data-selected-single": modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle,
101
104
  "data-range-start": modifiers.range_start,
102
105
  "data-range-end": modifiers.range_end,
103
106
  "data-range-middle": modifiers.range_middle,
104
- className: cn("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground min-w-(--cell-size) flex aspect-square size-auto w-full flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-start=true]:rounded-l-md group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] [&>span]:text-xs [&>span]:opacity-70", defaultClassNames.day, className),
107
+ className: cn("relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 font-normal leading-none data-[range-end=true]:rounded-(--cell-radius) data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-end=true]:bg-primary data-[range-middle=true]:bg-muted data-[range-start=true]:bg-primary data-[selected-single=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:text-foreground data-[range-start=true]:text-primary-foreground data-[selected-single=true]:text-primary-foreground group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70", defaultClassNames.day, className),
105
108
  ...props
106
109
  });
107
110
  }
108
111
 
109
112
  //#endregion
110
113
  export { Calendar$1 as Calendar, CalendarDayButton };
111
- //# sourceMappingURL=calendar.mjs.map
114
+ //# sourceMappingURL=calendar.client.mjs.map