@tulip-systems/core 0.6.0 → 0.7.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 (567) hide show
  1. package/LICENSE +662 -0
  2. package/dist/commands/client.d.mts +2 -1
  3. package/dist/commands/client.mjs +2 -1
  4. package/dist/components/client.d.mts +19 -3
  5. package/dist/components/client.mjs +18 -2
  6. package/dist/components/editor/components/menu-nodes.client.mjs +3 -3
  7. package/dist/components/editor/components/menu-nodes.client.mjs.map +1 -1
  8. package/dist/components/editor/components/menu.client.mjs +3 -3
  9. package/dist/components/editor/components/menu.client.mjs.map +1 -1
  10. package/dist/components/emails/forget-password-email.mjs +6 -6
  11. package/dist/components/emails/forget-password-email.mjs.map +1 -1
  12. package/dist/components/header/back-button.client.mjs +2 -2
  13. package/dist/components/header/back-button.client.mjs.map +1 -1
  14. package/dist/components/header/bottom-bar.client.mjs +2 -2
  15. package/dist/components/header/bottom-bar.client.mjs.map +1 -1
  16. package/dist/components/header/breadcrumbs.client.mjs +1 -1
  17. package/dist/components/header/breadcrumbs.client.mjs.map +1 -1
  18. package/dist/components/header/header.client.mjs +1 -1
  19. package/dist/components/header/header.client.mjs.map +1 -1
  20. package/dist/components/layouts/empty-page.mjs +2 -2
  21. package/dist/components/layouts/empty-page.mjs.map +1 -1
  22. package/dist/components/layouts/error-page.mjs +3 -3
  23. package/dist/components/layouts/error-page.mjs.map +1 -1
  24. package/dist/components/layouts/providers.client.d.mts.map +1 -1
  25. package/dist/components/layouts/providers.client.mjs +3 -2
  26. package/dist/components/layouts/providers.client.mjs.map +1 -1
  27. package/dist/components/layouts/root-loading.mjs +2 -2
  28. package/dist/components/layouts/root-loading.mjs.map +1 -1
  29. package/dist/components/layouts/tab-layout.mjs +1 -1
  30. package/dist/components/layouts/tab-layout.mjs.map +1 -1
  31. package/dist/components/lists/data-list.mjs +1 -1
  32. package/dist/components/lists/data-list.mjs.map +1 -1
  33. package/dist/components/lists/data-stack.mjs +1 -1
  34. package/dist/components/lists/data-stack.mjs.map +1 -1
  35. package/dist/components/navigation/admin-sidebar-header.client.mjs +3 -3
  36. package/dist/components/navigation/admin-sidebar-header.client.mjs.map +1 -1
  37. package/dist/components/navigation/admin-sidebar-skeleton.mjs +1 -1
  38. package/dist/components/navigation/admin-sidebar-skeleton.mjs.map +1 -1
  39. package/dist/components/ui/accordion.client.d.mts +26 -0
  40. package/dist/components/ui/accordion.client.d.mts.map +1 -0
  41. package/dist/components/ui/accordion.client.mjs +58 -0
  42. package/dist/components/ui/accordion.client.mjs.map +1 -0
  43. package/dist/components/ui/alert-dialog.client.d.mts +61 -0
  44. package/dist/components/ui/alert-dialog.client.d.mts.map +1 -0
  45. package/dist/components/ui/alert-dialog.client.mjs +104 -0
  46. package/dist/components/ui/alert-dialog.client.mjs.map +1 -0
  47. package/dist/components/ui/alert.d.mts +5 -1
  48. package/dist/components/ui/alert.d.mts.map +1 -1
  49. package/dist/components/ui/alert.mjs +13 -6
  50. package/dist/components/ui/alert.mjs.map +1 -1
  51. package/dist/components/ui/aspect-ratio.client.d.mts +10 -0
  52. package/dist/components/ui/aspect-ratio.client.d.mts.map +1 -0
  53. package/dist/components/ui/aspect-ratio.client.mjs +16 -0
  54. package/dist/components/ui/aspect-ratio.client.mjs.map +1 -0
  55. package/dist/components/ui/avatar.client.d.mts +21 -6
  56. package/dist/components/ui/avatar.client.d.mts.map +1 -1
  57. package/dist/components/ui/avatar.client.mjs +31 -9
  58. package/dist/components/ui/avatar.client.mjs.map +1 -1
  59. package/dist/components/ui/badge.d.mts +1 -1
  60. package/dist/components/ui/badge.d.mts.map +1 -1
  61. package/dist/components/ui/badge.mjs +11 -8
  62. package/dist/components/ui/badge.mjs.map +1 -1
  63. package/dist/components/ui/breadcrumb.d.mts +3 -1
  64. package/dist/components/ui/breadcrumb.d.mts.map +1 -1
  65. package/dist/components/ui/breadcrumb.mjs +7 -7
  66. package/dist/components/ui/breadcrumb.mjs.map +1 -1
  67. package/dist/components/ui/button-group.d.mts +29 -0
  68. package/dist/components/ui/button-group.d.mts.map +1 -0
  69. package/dist/components/ui/button-group.mjs +41 -0
  70. package/dist/components/ui/button-group.mjs.map +1 -0
  71. package/dist/components/ui/button.d.mts +1 -1
  72. package/dist/components/ui/button.d.mts.map +1 -1
  73. package/dist/components/ui/button.mjs +19 -13
  74. package/dist/components/ui/button.mjs.map +1 -1
  75. package/dist/components/ui/{calendar.d.mts → calendar.client.d.mts} +7 -4
  76. package/dist/components/ui/calendar.client.d.mts.map +1 -0
  77. package/dist/components/ui/{calendar.mjs → calendar.client.mjs} +22 -19
  78. package/dist/components/ui/calendar.client.mjs.map +1 -0
  79. package/dist/components/ui/card.d.mts +9 -2
  80. package/dist/components/ui/card.d.mts.map +1 -1
  81. package/dist/components/ui/card.mjs +15 -7
  82. package/dist/components/ui/card.mjs.map +1 -1
  83. package/dist/components/ui/{carousel.d.mts → carousel.client.d.mts} +12 -3
  84. package/dist/components/ui/carousel.client.d.mts.map +1 -0
  85. package/dist/components/ui/{carousel.mjs → carousel.client.mjs} +10 -10
  86. package/dist/components/ui/carousel.client.mjs.map +1 -0
  87. package/dist/components/ui/chart.client.d.mts.map +1 -1
  88. package/dist/components/ui/chart.client.mjs +11 -11
  89. package/dist/components/ui/chart.client.mjs.map +1 -1
  90. package/dist/components/ui/checkbox.client.d.mts +12 -0
  91. package/dist/components/ui/checkbox.client.d.mts.map +1 -0
  92. package/dist/components/ui/checkbox.client.mjs +24 -0
  93. package/dist/components/ui/checkbox.client.mjs.map +1 -0
  94. package/dist/components/ui/collapsible.client.d.mts +6 -6
  95. package/dist/components/ui/collapsible.client.d.mts.map +1 -1
  96. package/dist/components/ui/collapsible.client.mjs +6 -6
  97. package/dist/components/ui/collapsible.client.mjs.map +1 -1
  98. package/dist/components/ui/combobox-dropdown.client.d.mts +1 -1
  99. package/dist/components/ui/combobox-dropdown.client.mjs +2 -2
  100. package/dist/components/ui/combobox-dropdown.client.mjs.map +1 -1
  101. package/dist/components/ui/combobox.client.mjs +4 -4
  102. package/dist/components/ui/combobox.client.mjs.map +1 -1
  103. package/dist/components/ui/{command.d.mts → command.client.d.mts} +8 -2
  104. package/dist/components/ui/command.client.d.mts.map +1 -0
  105. package/dist/components/ui/command.client.mjs +91 -0
  106. package/dist/components/ui/command.client.mjs.map +1 -0
  107. package/dist/components/ui/context-menu.client.d.mts +86 -0
  108. package/dist/components/ui/context-menu.client.d.mts.map +1 -0
  109. package/dist/components/ui/context-menu.client.mjs +128 -0
  110. package/dist/components/ui/context-menu.client.mjs.map +1 -0
  111. package/dist/components/ui/date-picker.client.mjs +2 -2
  112. package/dist/components/ui/date-picker.client.mjs.map +1 -1
  113. package/dist/components/ui/dialog.client.d.mts +19 -12
  114. package/dist/components/ui/dialog.client.d.mts.map +1 -1
  115. package/dist/components/ui/dialog.client.mjs +40 -29
  116. package/dist/components/ui/dialog.client.mjs.map +1 -1
  117. package/dist/components/ui/drawer.client.d.mts.map +1 -1
  118. package/dist/components/ui/drawer.client.mjs +5 -5
  119. package/dist/components/ui/drawer.client.mjs.map +1 -1
  120. package/dist/components/ui/dropdown-menu.client.d.mts +85 -0
  121. package/dist/components/ui/dropdown-menu.client.d.mts.map +1 -0
  122. package/dist/components/ui/dropdown-menu.client.mjs +131 -0
  123. package/dist/components/ui/dropdown-menu.client.mjs.map +1 -0
  124. package/dist/components/ui/empty.d.mts +36 -0
  125. package/dist/components/ui/empty.d.mts.map +1 -0
  126. package/dist/components/ui/empty.mjs +62 -0
  127. package/dist/components/ui/empty.mjs.map +1 -0
  128. package/dist/components/ui/field.client.d.mts +65 -0
  129. package/dist/components/ui/field.client.d.mts.map +1 -0
  130. package/dist/components/ui/field.client.mjs +114 -0
  131. package/dist/components/ui/field.client.mjs.map +1 -0
  132. package/dist/components/ui/form.client.d.mts +3 -4
  133. package/dist/components/ui/form.client.d.mts.map +1 -1
  134. package/dist/components/ui/form.client.mjs +4 -4
  135. package/dist/components/ui/form.client.mjs.map +1 -1
  136. package/dist/components/ui/hover-card.client.d.mts +6 -6
  137. package/dist/components/ui/hover-card.client.d.mts.map +1 -1
  138. package/dist/components/ui/hover-card.client.mjs +14 -11
  139. package/dist/components/ui/hover-card.client.mjs.map +1 -1
  140. package/dist/components/ui/{input-date-time.d.mts → input-date-time.client.d.mts} +7 -7
  141. package/dist/components/ui/input-date-time.client.d.mts.map +1 -0
  142. package/dist/components/ui/{input-date-time.mjs → input-date-time.client.mjs} +8 -8
  143. package/dist/components/ui/input-date-time.client.mjs.map +1 -0
  144. package/dist/components/ui/input-date.d.mts +1 -1
  145. package/dist/components/ui/input-date.d.mts.map +1 -1
  146. package/dist/components/ui/input-date.mjs.map +1 -1
  147. package/dist/components/ui/input-group.client.d.mts +59 -0
  148. package/dist/components/ui/input-group.client.d.mts.map +1 -0
  149. package/dist/components/ui/input-group.client.mjs +106 -0
  150. package/dist/components/ui/input-group.client.mjs.map +1 -0
  151. package/dist/components/ui/input-recipient.mjs +11 -11
  152. package/dist/components/ui/input-recipient.mjs.map +1 -1
  153. package/dist/components/ui/input-time.d.mts +1 -1
  154. package/dist/components/ui/input-time.d.mts.map +1 -1
  155. package/dist/components/ui/input-time.mjs.map +1 -1
  156. package/dist/components/ui/input.d.mts.map +1 -1
  157. package/dist/components/ui/input.mjs +1 -1
  158. package/dist/components/ui/input.mjs.map +1 -1
  159. package/dist/components/ui/item.d.mts +63 -0
  160. package/dist/components/ui/item.d.mts.map +1 -0
  161. package/dist/components/ui/item.mjs +119 -0
  162. package/dist/components/ui/item.mjs.map +1 -0
  163. package/dist/components/ui/kbd.d.mts +14 -0
  164. package/dist/components/ui/kbd.d.mts.map +1 -0
  165. package/dist/components/ui/kbd.mjs +22 -0
  166. package/dist/components/ui/kbd.mjs.map +1 -0
  167. package/dist/components/ui/label.d.mts +4 -4
  168. package/dist/components/ui/label.d.mts.map +1 -1
  169. package/dist/components/ui/label.mjs +5 -5
  170. package/dist/components/ui/label.mjs.map +1 -1
  171. package/dist/components/ui/loader.d.mts +7 -0
  172. package/dist/components/ui/loader.d.mts.map +1 -0
  173. package/dist/components/ui/loader.mjs +63 -0
  174. package/dist/components/ui/loader.mjs.map +1 -0
  175. package/dist/components/ui/navigation-menu.d.mts +11 -11
  176. package/dist/components/ui/navigation-menu.d.mts.map +1 -1
  177. package/dist/components/ui/navigation-menu.mjs +18 -20
  178. package/dist/components/ui/navigation-menu.mjs.map +1 -1
  179. package/dist/components/ui/pagination.d.mts +8 -2
  180. package/dist/components/ui/pagination.d.mts.map +1 -1
  181. package/dist/components/ui/pagination.mjs +29 -21
  182. package/dist/components/ui/pagination.mjs.map +1 -1
  183. package/dist/components/ui/popover.client.d.mts +35 -0
  184. package/dist/components/ui/popover.client.d.mts.map +1 -0
  185. package/dist/components/ui/popover.client.mjs +59 -0
  186. package/dist/components/ui/popover.client.mjs.map +1 -0
  187. package/dist/components/ui/progress.client.d.mts +4 -4
  188. package/dist/components/ui/progress.client.d.mts.map +1 -1
  189. package/dist/components/ui/progress.client.mjs +7 -7
  190. package/dist/components/ui/progress.client.mjs.map +1 -1
  191. package/dist/components/ui/radio-group.d.mts +5 -5
  192. package/dist/components/ui/radio-group.d.mts.map +1 -1
  193. package/dist/components/ui/radio-group.mjs +10 -11
  194. package/dist/components/ui/radio-group.mjs.map +1 -1
  195. package/dist/components/ui/resizable.client.d.mts +3 -4
  196. package/dist/components/ui/resizable.client.d.mts.map +1 -1
  197. package/dist/components/ui/resizable.client.mjs +5 -9
  198. package/dist/components/ui/resizable.client.mjs.map +1 -1
  199. package/dist/components/ui/scroll-area.d.mts +5 -5
  200. package/dist/components/ui/scroll-area.d.mts.map +1 -1
  201. package/dist/components/ui/scroll-area.mjs +12 -11
  202. package/dist/components/ui/scroll-area.mjs.map +1 -1
  203. package/dist/components/ui/select.client.d.mts +18 -13
  204. package/dist/components/ui/select.client.d.mts.map +1 -1
  205. package/dist/components/ui/select.client.mjs +37 -32
  206. package/dist/components/ui/select.client.mjs.map +1 -1
  207. package/dist/components/ui/separator.d.mts +4 -4
  208. package/dist/components/ui/separator.d.mts.map +1 -1
  209. package/dist/components/ui/separator.mjs +6 -6
  210. package/dist/components/ui/separator.mjs.map +1 -1
  211. package/dist/components/ui/sheet.client.d.mts +9 -7
  212. package/dist/components/ui/sheet.client.d.mts.map +1 -1
  213. package/dist/components/ui/sheet.client.mjs +30 -20
  214. package/dist/components/ui/sheet.client.mjs.map +1 -1
  215. package/dist/components/ui/sidebar.client.mjs +28 -28
  216. package/dist/components/ui/sidebar.client.mjs.map +1 -1
  217. package/dist/components/ui/skeleton.mjs +1 -1
  218. package/dist/components/ui/skeleton.mjs.map +1 -1
  219. package/dist/components/ui/slider.d.mts +4 -4
  220. package/dist/components/ui/slider.d.mts.map +1 -1
  221. package/dist/components/ui/slider.mjs +11 -11
  222. package/dist/components/ui/slider.mjs.map +1 -1
  223. package/dist/components/ui/spinner.d.mts +10 -0
  224. package/dist/components/ui/spinner.d.mts.map +1 -0
  225. package/dist/components/ui/spinner.mjs +9 -55
  226. package/dist/components/ui/spinner.mjs.map +1 -1
  227. package/dist/components/ui/switch.client.d.mts +15 -0
  228. package/dist/components/ui/switch.client.d.mts.map +1 -0
  229. package/dist/components/ui/switch.client.mjs +23 -0
  230. package/dist/components/ui/switch.client.mjs.map +1 -0
  231. package/dist/components/ui/tabs.client.d.mts +31 -0
  232. package/dist/components/ui/tabs.client.d.mts.map +1 -0
  233. package/dist/components/ui/tabs.client.mjs +49 -0
  234. package/dist/components/ui/tabs.client.mjs.map +1 -0
  235. package/dist/components/ui/textarea.d.mts.map +1 -1
  236. package/dist/components/ui/textarea.mjs +1 -1
  237. package/dist/components/ui/textarea.mjs.map +1 -1
  238. package/dist/components/ui/toggle-group.client.d.mts +11 -6
  239. package/dist/components/ui/toggle-group.client.d.mts.map +1 -1
  240. package/dist/components/ui/toggle-group.client.mjs +20 -12
  241. package/dist/components/ui/toggle-group.client.mjs.map +1 -1
  242. package/dist/components/ui/{toggle.d.mts → toggle.client.d.mts} +6 -6
  243. package/dist/components/ui/toggle.client.d.mts.map +1 -0
  244. package/dist/components/ui/toggle.client.mjs +40 -0
  245. package/dist/components/ui/toggle.client.mjs.map +1 -0
  246. package/dist/components/ui/tooltip.client.d.mts +7 -7
  247. package/dist/components/ui/tooltip.client.d.mts.map +1 -1
  248. package/dist/components/ui/tooltip.client.mjs +10 -10
  249. package/dist/components/ui/tooltip.client.mjs.map +1 -1
  250. package/dist/components.d.mts +12 -20
  251. package/dist/components.mjs +12 -20
  252. package/dist/inline-edit/client.d.mts +3 -3
  253. package/dist/lib/hooks/use-indicator.d.mts.map +1 -1
  254. package/dist/lib/hooks/use-indicator.mjs +11 -8
  255. package/dist/lib/hooks/use-indicator.mjs.map +1 -1
  256. package/dist/modules/auth/components/auth-layout.server.mjs +3 -3
  257. package/dist/modules/auth/components/auth-layout.server.mjs.map +1 -1
  258. package/dist/modules/auth/components/create-first-user-page.client.mjs +3 -3
  259. package/dist/modules/auth/components/create-first-user-page.client.mjs.map +1 -1
  260. package/dist/modules/auth/components/forget-password-page.client.mjs +1 -1
  261. package/dist/modules/auth/components/forget-password-page.client.mjs.map +1 -1
  262. package/dist/modules/auth/components/login-page.client.mjs +5 -5
  263. package/dist/modules/auth/components/login-page.client.mjs.map +1 -1
  264. package/dist/modules/auth/components/reset-password-page.client.mjs +5 -5
  265. package/dist/modules/auth/components/reset-password-page.client.mjs.map +1 -1
  266. package/dist/modules/commands/components/alert-dialog-command.client.d.mts +9 -9
  267. package/dist/modules/commands/components/alert-dialog-command.client.d.mts.map +1 -1
  268. package/dist/modules/commands/components/alert-dialog-command.client.mjs +3 -3
  269. package/dist/modules/commands/components/alert-dialog-command.client.mjs.map +1 -1
  270. package/dist/modules/commands/components/click-command.client.mjs +2 -2
  271. package/dist/modules/commands/components/click-command.client.mjs.map +1 -1
  272. package/dist/modules/commands/components/dialog-command.client.d.mts +8 -8
  273. package/dist/modules/commands/components/dialog-command.client.d.mts.map +1 -1
  274. package/dist/modules/commands/components/dialog-command.client.mjs +2 -2
  275. package/dist/modules/commands/components/dialog-command.client.mjs.map +1 -1
  276. package/dist/modules/commands/components/dropdown-command.client.mjs +2 -2
  277. package/dist/modules/commands/components/dropdown-command.client.mjs.map +1 -1
  278. package/dist/modules/commands/components/empty-command.client.mjs +2 -2
  279. package/dist/modules/commands/components/empty-command.client.mjs.map +1 -1
  280. package/dist/modules/commands/components/form-dialog-command.client.d.mts +11 -9
  281. package/dist/modules/commands/components/form-dialog-command.client.d.mts.map +1 -1
  282. package/dist/modules/commands/components/form-dialog-command.client.mjs +8 -6
  283. package/dist/modules/commands/components/form-dialog-command.client.mjs.map +1 -1
  284. package/dist/modules/commands/hooks/use-command-menu.client.d.mts +8 -1
  285. package/dist/modules/commands/hooks/use-command-menu.client.d.mts.map +1 -1
  286. package/dist/modules/commands/hooks/use-command-menu.client.mjs.map +1 -1
  287. package/dist/modules/commands/menus/context-menu.client.d.mts +3 -3
  288. package/dist/modules/commands/menus/context-menu.client.d.mts.map +1 -1
  289. package/dist/modules/commands/menus/context-menu.client.mjs +1 -1
  290. package/dist/modules/commands/menus/context-menu.client.mjs.map +1 -1
  291. package/dist/modules/commands/menus/dropdown-menu.client.mjs +2 -2
  292. package/dist/modules/commands/menus/dropdown-menu.client.mjs.map +1 -1
  293. package/dist/modules/commands/menus/floating-menu.client.d.mts +19 -0
  294. package/dist/modules/commands/menus/floating-menu.client.d.mts.map +1 -0
  295. package/dist/modules/commands/menus/{data-table-menu.client.mjs → floating-menu.client.mjs} +11 -11
  296. package/dist/modules/commands/menus/floating-menu.client.mjs.map +1 -0
  297. package/dist/modules/commands/utils/archive-command.client.mjs +1 -1
  298. package/dist/modules/commands/utils/archive-command.client.mjs.map +1 -1
  299. package/dist/modules/commands/utils/delete-command.client.mjs +1 -1
  300. package/dist/modules/commands/utils/delete-command.client.mjs.map +1 -1
  301. package/dist/modules/data-tables/components/cell/select.client.mjs +1 -1
  302. package/dist/modules/data-tables/components/cell/select.client.mjs.map +1 -1
  303. package/dist/modules/data-tables/components/column-header.mjs +5 -5
  304. package/dist/modules/data-tables/components/column-header.mjs.map +1 -1
  305. package/dist/modules/data-tables/components/filters/combobox.client.mjs +6 -6
  306. package/dist/modules/data-tables/components/filters/combobox.client.mjs.map +1 -1
  307. package/dist/modules/data-tables/components/filters/slider.client.mjs +2 -2
  308. package/dist/modules/data-tables/components/filters/slider.client.mjs.map +1 -1
  309. package/dist/modules/data-tables/components/header.mjs +1 -1
  310. package/dist/modules/data-tables/components/header.mjs.map +1 -1
  311. package/dist/modules/data-tables/components/skeleton.mjs +2 -2
  312. package/dist/modules/data-tables/components/skeleton.mjs.map +1 -1
  313. package/dist/modules/data-tables/components/table.mjs +3 -3
  314. package/dist/modules/data-tables/components/table.mjs.map +1 -1
  315. package/dist/modules/data-tables/components/toolbar.mjs +1 -1
  316. package/dist/modules/data-tables/components/toolbar.mjs.map +1 -1
  317. package/dist/modules/data-tables/strategies/pagination/components.mjs +3 -3
  318. package/dist/modules/data-tables/strategies/pagination/components.mjs.map +1 -1
  319. package/dist/modules/data-tables/tables/data-table/components/table.mjs +8 -2
  320. package/dist/modules/data-tables/tables/data-table/components/table.mjs.map +1 -1
  321. package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs +1 -1
  322. package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs.map +1 -1
  323. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs +1 -1
  324. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs.map +1 -1
  325. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs +1 -1
  326. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs.map +1 -1
  327. package/dist/modules/data-tables/tables/inline-table/components/table.mjs +8 -2
  328. package/dist/modules/data-tables/tables/inline-table/components/table.mjs.map +1 -1
  329. package/dist/modules/inline-edit/components/combobox-dropdown.client.mjs +5 -1
  330. package/dist/modules/inline-edit/components/combobox-dropdown.client.mjs.map +1 -1
  331. package/dist/modules/inline-edit/components/combobox.client.mjs +5 -1
  332. package/dist/modules/inline-edit/components/combobox.client.mjs.map +1 -1
  333. package/dist/modules/inline-edit/components/date-input.client.mjs +8 -4
  334. package/dist/modules/inline-edit/components/date-input.client.mjs.map +1 -1
  335. package/dist/modules/inline-edit/components/date-picker.client.mjs +7 -3
  336. package/dist/modules/inline-edit/components/date-picker.client.mjs.map +1 -1
  337. package/dist/modules/inline-edit/components/date-time.client.d.mts +1 -1
  338. package/dist/modules/inline-edit/components/date-time.client.d.mts.map +1 -1
  339. package/dist/modules/inline-edit/components/date-time.client.mjs +7 -2
  340. package/dist/modules/inline-edit/components/date-time.client.mjs.map +1 -1
  341. package/dist/modules/inline-edit/components/editor.client.mjs +5 -1
  342. package/dist/modules/inline-edit/components/editor.client.mjs.map +1 -1
  343. package/dist/modules/inline-edit/components/input-recipient.client.mjs +5 -1
  344. package/dist/modules/inline-edit/components/input-recipient.client.mjs.map +1 -1
  345. package/dist/modules/inline-edit/components/input-toggle.client.mjs +7 -3
  346. package/dist/modules/inline-edit/components/input-toggle.client.mjs.map +1 -1
  347. package/dist/modules/inline-edit/components/input.client.d.mts.map +1 -1
  348. package/dist/modules/inline-edit/components/input.client.mjs +18 -6
  349. package/dist/modules/inline-edit/components/input.client.mjs.map +1 -1
  350. package/dist/modules/inline-edit/components/select.client.d.mts +8 -11
  351. package/dist/modules/inline-edit/components/select.client.d.mts.map +1 -1
  352. package/dist/modules/inline-edit/components/select.client.mjs +5 -1
  353. package/dist/modules/inline-edit/components/select.client.mjs.map +1 -1
  354. package/dist/modules/inline-edit/components/switch.client.d.mts +3 -2
  355. package/dist/modules/inline-edit/components/switch.client.d.mts.map +1 -1
  356. package/dist/modules/inline-edit/components/switch.client.mjs +6 -2
  357. package/dist/modules/inline-edit/components/switch.client.mjs.map +1 -1
  358. package/dist/modules/inline-edit/components/toggle.client.mjs +6 -2
  359. package/dist/modules/inline-edit/components/toggle.client.mjs.map +1 -1
  360. package/dist/modules/inline-edit/hooks/use-inline.client.d.mts +20 -5
  361. package/dist/modules/inline-edit/hooks/use-inline.client.d.mts.map +1 -1
  362. package/dist/modules/inline-edit/hooks/use-inline.client.mjs +11 -8
  363. package/dist/modules/inline-edit/hooks/use-inline.client.mjs.map +1 -1
  364. package/dist/modules/inline-edit/lib/variants.mjs +1 -1
  365. package/dist/modules/inline-edit/lib/variants.mjs.map +1 -1
  366. package/dist/modules/storage/components/dropzone.client.d.mts +2 -2
  367. package/dist/modules/storage/components/dropzone.client.d.mts.map +1 -1
  368. package/dist/modules/storage/components/dropzone.client.mjs +8 -8
  369. package/dist/modules/storage/components/dropzone.client.mjs.map +1 -1
  370. package/dist/modules/storage/components/image-grid.client.mjs +5 -5
  371. package/dist/modules/storage/components/image-grid.client.mjs.map +1 -1
  372. package/dist/modules/storage/components/upload-zone-context.client.d.mts +1 -0
  373. package/dist/modules/storage/components/upload-zone-context.client.d.mts.map +1 -1
  374. package/dist/modules/storage/components/upload-zone-context.client.mjs.map +1 -1
  375. package/dist/modules/storage/components/upload-zone.client.d.mts +2 -1
  376. package/dist/modules/storage/components/upload-zone.client.d.mts.map +1 -1
  377. package/dist/modules/storage/components/upload-zone.client.mjs +6 -4
  378. package/dist/modules/storage/components/upload-zone.client.mjs.map +1 -1
  379. package/package.json +6 -31
  380. package/src/components/editor/components/menu-nodes.client.tsx +3 -3
  381. package/src/components/editor/components/menu.client.tsx +3 -3
  382. package/src/components/emails/forget-password-email.tsx +6 -6
  383. package/src/components/entry.client.ts +16 -0
  384. package/src/components/entry.ts +6 -14
  385. package/src/components/header/back-button.client.tsx +2 -2
  386. package/src/components/header/bottom-bar.client.tsx +2 -2
  387. package/src/components/header/breadcrumbs.client.tsx +1 -1
  388. package/src/components/header/header.client.tsx +1 -1
  389. package/src/components/layouts/empty-page.tsx +2 -2
  390. package/src/components/layouts/error-page.tsx +3 -3
  391. package/src/components/layouts/providers.client.tsx +8 -5
  392. package/src/components/layouts/root-loading.tsx +2 -2
  393. package/src/components/layouts/tab-layout.tsx +1 -1
  394. package/src/components/lists/data-list.tsx +1 -1
  395. package/src/components/lists/data-stack.tsx +1 -1
  396. package/src/components/navigation/admin-sidebar-header.client.tsx +3 -3
  397. package/src/components/navigation/admin-sidebar-skeleton.tsx +1 -1
  398. package/src/components/navigation/admin-sidebar.client.tsx +1 -0
  399. package/src/components/ui/accordion.client.tsx +83 -0
  400. package/src/components/ui/alert-dialog.client.tsx +181 -0
  401. package/src/components/ui/alert.tsx +15 -7
  402. package/src/components/ui/aspect-ratio.client.tsx +9 -0
  403. package/src/components/ui/avatar.client.tsx +61 -6
  404. package/src/components/ui/badge.tsx +17 -11
  405. package/src/components/ui/breadcrumb.tsx +9 -10
  406. package/src/components/ui/button-group.tsx +78 -0
  407. package/src/components/ui/button.tsx +26 -16
  408. package/src/components/ui/{calendar.tsx → calendar.client.tsx} +27 -20
  409. package/src/components/ui/card.tsx +41 -8
  410. package/src/components/ui/{carousel.tsx → carousel.client.tsx} +12 -12
  411. package/src/components/ui/chart.client.tsx +105 -103
  412. package/src/components/ui/checkbox.client.tsx +28 -0
  413. package/src/components/ui/collapsible.client.tsx +2 -2
  414. package/src/components/ui/combobox-dropdown.client.tsx +2 -2
  415. package/src/components/ui/combobox.client.tsx +6 -6
  416. package/src/components/ui/command.client.tsx +179 -0
  417. package/src/components/ui/{context-menu.tsx → context-menu.client.tsx} +86 -64
  418. package/src/components/ui/date-picker.client.tsx +2 -2
  419. package/src/components/ui/dialog.client.tsx +43 -20
  420. package/src/components/ui/drawer.client.tsx +13 -15
  421. package/src/components/ui/{dropdown-menu.tsx → dropdown-menu.client.tsx} +45 -24
  422. package/src/components/ui/empty.tsx +93 -0
  423. package/src/components/ui/field.client.tsx +224 -0
  424. package/src/components/ui/form.client.tsx +4 -4
  425. package/src/components/ui/hover-card.client.tsx +14 -13
  426. package/src/components/ui/{input-date-time.tsx → input-date-time.client.tsx} +18 -11
  427. package/src/components/ui/input-date.tsx +1 -1
  428. package/src/components/ui/input-group.client.tsx +191 -0
  429. package/src/components/ui/input-recipient.tsx +12 -12
  430. package/src/components/ui/input-time.tsx +1 -1
  431. package/src/components/ui/input.tsx +2 -4
  432. package/src/components/ui/item.tsx +182 -0
  433. package/src/components/ui/kbd.tsx +26 -0
  434. package/src/components/ui/label.tsx +2 -3
  435. package/src/components/ui/loader.tsx +51 -0
  436. package/src/components/ui/navigation-menu.tsx +14 -17
  437. package/src/components/ui/pagination.tsx +31 -26
  438. package/src/components/ui/popover.client.tsx +73 -0
  439. package/src/components/ui/progress.client.tsx +6 -4
  440. package/src/components/ui/radio-group.tsx +5 -7
  441. package/src/components/ui/resizable.client.tsx +9 -19
  442. package/src/components/ui/scroll-area.tsx +5 -7
  443. package/src/components/ui/select.client.tsx +40 -22
  444. package/src/components/ui/separator.tsx +3 -4
  445. package/src/components/ui/sheet.client.tsx +19 -18
  446. package/src/components/ui/sidebar.client.tsx +27 -27
  447. package/src/components/ui/skeleton.tsx +1 -1
  448. package/src/components/ui/slider.tsx +5 -10
  449. package/src/components/ui/spinner.tsx +12 -48
  450. package/src/components/ui/switch.client.tsx +32 -0
  451. package/src/components/ui/tabs.client.tsx +79 -0
  452. package/src/components/ui/textarea.tsx +1 -2
  453. package/src/components/ui/toggle-group.client.tsx +26 -10
  454. package/src/components/ui/toggle.client.tsx +44 -0
  455. package/src/components/ui/tooltip.client.tsx +4 -9
  456. package/src/lib/hooks/use-indicator.tsx +14 -8
  457. package/src/modules/auth/components/auth-layout.server.tsx +3 -3
  458. package/src/modules/auth/components/create-first-user-page.client.tsx +4 -4
  459. package/src/modules/auth/components/forget-password-page.client.tsx +1 -1
  460. package/src/modules/auth/components/login-page.client.tsx +6 -6
  461. package/src/modules/auth/components/reset-password-page.client.tsx +7 -7
  462. package/src/modules/commands/components/alert-dialog-command.client.tsx +20 -16
  463. package/src/modules/commands/components/click-command.client.tsx +2 -2
  464. package/src/modules/commands/components/dialog-command.client.tsx +11 -10
  465. package/src/modules/commands/components/dropdown-command.client.tsx +2 -2
  466. package/src/modules/commands/components/empty-command.client.tsx +2 -2
  467. package/src/modules/commands/components/form-dialog-command.client.tsx +29 -13
  468. package/src/modules/commands/entry.client.ts +16 -0
  469. package/src/modules/commands/hooks/use-command-menu.client.tsx +2 -0
  470. package/src/modules/commands/menus/context-menu.client.tsx +3 -4
  471. package/src/modules/commands/menus/dropdown-menu.client.tsx +2 -2
  472. package/src/modules/commands/menus/floating-menu.client.tsx +54 -0
  473. package/src/modules/commands/utils/archive-command.client.tsx +1 -1
  474. package/src/modules/commands/utils/delete-command.client.tsx +1 -1
  475. package/src/modules/data-tables/components/cell/select.client.tsx +1 -1
  476. package/src/modules/data-tables/components/column-header.tsx +5 -5
  477. package/src/modules/data-tables/components/filters/combobox.client.tsx +6 -6
  478. package/src/modules/data-tables/components/filters/slider.client.tsx +2 -2
  479. package/src/modules/data-tables/components/header.tsx +1 -1
  480. package/src/modules/data-tables/components/skeleton.tsx +2 -2
  481. package/src/modules/data-tables/components/table.tsx +3 -3
  482. package/src/modules/data-tables/components/toolbar.tsx +1 -1
  483. package/src/modules/data-tables/strategies/pagination/components.tsx +3 -3
  484. package/src/modules/data-tables/tables/data-table/components/table.tsx +11 -2
  485. package/src/modules/data-tables/tables/inline-table/components/cells/common.tsx +1 -1
  486. package/src/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.tsx +1 -1
  487. package/src/modules/data-tables/tables/inline-table/components/cells/read-only.tsx +1 -1
  488. package/src/modules/data-tables/tables/inline-table/components/table.tsx +11 -2
  489. package/src/modules/inline-edit/components/combobox-dropdown.client.tsx +4 -0
  490. package/src/modules/inline-edit/components/combobox.client.tsx +4 -0
  491. package/src/modules/inline-edit/components/date-input.client.tsx +7 -3
  492. package/src/modules/inline-edit/components/date-picker.client.tsx +6 -2
  493. package/src/modules/inline-edit/components/date-time.client.tsx +16 -2
  494. package/src/modules/inline-edit/components/editor.client.tsx +4 -0
  495. package/src/modules/inline-edit/components/input-recipient.client.tsx +4 -0
  496. package/src/modules/inline-edit/components/input-toggle.client.tsx +6 -2
  497. package/src/modules/inline-edit/components/input.client.tsx +15 -3
  498. package/src/modules/inline-edit/components/select.client.tsx +10 -20
  499. package/src/modules/inline-edit/components/switch.client.tsx +7 -3
  500. package/src/modules/inline-edit/components/toggle.client.tsx +5 -1
  501. package/src/modules/inline-edit/hooks/use-inline.client.tsx +37 -13
  502. package/src/modules/inline-edit/lib/parsers.ts +9 -0
  503. package/src/modules/inline-edit/lib/variants.ts +1 -1
  504. package/src/modules/storage/components/dropzone.client.tsx +8 -8
  505. package/src/modules/storage/components/image-grid.client.tsx +5 -5
  506. package/src/modules/storage/components/upload-zone-context.client.tsx +1 -0
  507. package/src/modules/storage/components/upload-zone.client.tsx +9 -3
  508. package/src/styles.css +1 -3
  509. package/dist/components/ui/accordion.d.mts +0 -25
  510. package/dist/components/ui/accordion.d.mts.map +0 -1
  511. package/dist/components/ui/accordion.mjs +0 -46
  512. package/dist/components/ui/accordion.mjs.map +0 -1
  513. package/dist/components/ui/alert-dialog.d.mts +0 -43
  514. package/dist/components/ui/alert-dialog.d.mts.map +0 -1
  515. package/dist/components/ui/alert-dialog.mjs +0 -84
  516. package/dist/components/ui/alert-dialog.mjs.map +0 -1
  517. package/dist/components/ui/aspect-ratio.d.mts +0 -8
  518. package/dist/components/ui/aspect-ratio.d.mts.map +0 -1
  519. package/dist/components/ui/aspect-ratio.mjs +0 -16
  520. package/dist/components/ui/aspect-ratio.mjs.map +0 -1
  521. package/dist/components/ui/calendar.d.mts.map +0 -1
  522. package/dist/components/ui/calendar.mjs.map +0 -1
  523. package/dist/components/ui/carousel.d.mts.map +0 -1
  524. package/dist/components/ui/carousel.mjs.map +0 -1
  525. package/dist/components/ui/checkbox.d.mts +0 -12
  526. package/dist/components/ui/checkbox.d.mts.map +0 -1
  527. package/dist/components/ui/checkbox.mjs +0 -24
  528. package/dist/components/ui/checkbox.mjs.map +0 -1
  529. package/dist/components/ui/command.d.mts.map +0 -1
  530. package/dist/components/ui/command.mjs +0 -88
  531. package/dist/components/ui/command.mjs.map +0 -1
  532. package/dist/components/ui/context-menu.d.mts +0 -77
  533. package/dist/components/ui/context-menu.d.mts.map +0 -1
  534. package/dist/components/ui/context-menu.mjs +0 -125
  535. package/dist/components/ui/context-menu.mjs.map +0 -1
  536. package/dist/components/ui/dropdown-menu.d.mts +0 -78
  537. package/dist/components/ui/dropdown-menu.d.mts.map +0 -1
  538. package/dist/components/ui/dropdown-menu.mjs +0 -126
  539. package/dist/components/ui/dropdown-menu.mjs.map +0 -1
  540. package/dist/components/ui/input-date-time.d.mts.map +0 -1
  541. package/dist/components/ui/input-date-time.mjs.map +0 -1
  542. package/dist/components/ui/popover.d.mts +0 -23
  543. package/dist/components/ui/popover.d.mts.map +0 -1
  544. package/dist/components/ui/popover.mjs +0 -38
  545. package/dist/components/ui/popover.mjs.map +0 -1
  546. package/dist/components/ui/switch.d.mts +0 -12
  547. package/dist/components/ui/switch.d.mts.map +0 -1
  548. package/dist/components/ui/switch.mjs +0 -22
  549. package/dist/components/ui/switch.mjs.map +0 -1
  550. package/dist/components/ui/tabs.d.mts +0 -24
  551. package/dist/components/ui/tabs.d.mts.map +0 -1
  552. package/dist/components/ui/tabs.mjs +0 -39
  553. package/dist/components/ui/tabs.mjs.map +0 -1
  554. package/dist/components/ui/toggle.d.mts.map +0 -1
  555. package/dist/components/ui/toggle.mjs +0 -40
  556. package/dist/components/ui/toggle.mjs.map +0 -1
  557. package/dist/modules/commands/menus/data-table-menu.client.mjs.map +0 -1
  558. package/src/components/ui/accordion.tsx +0 -63
  559. package/src/components/ui/alert-dialog.tsx +0 -133
  560. package/src/components/ui/aspect-ratio.tsx +0 -9
  561. package/src/components/ui/checkbox.tsx +0 -29
  562. package/src/components/ui/command.tsx +0 -154
  563. package/src/components/ui/popover.tsx +0 -42
  564. package/src/components/ui/switch.tsx +0 -28
  565. package/src/components/ui/tabs.tsx +0 -54
  566. package/src/components/ui/toggle.tsx +0 -46
  567. package/src/modules/commands/menus/data-table-menu.client.tsx +0 -46
@@ -1,11 +1,11 @@
1
- import { Spinner } from "../ui/spinner.mjs";
1
+ import { Loader } from "../ui/loader.mjs";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/layouts/root-loading.tsx
5
5
  function RootLoading() {
6
6
  return /* @__PURE__ */ jsx("div", {
7
7
  className: "grid h-dvh w-full place-items-center",
8
- children: /* @__PURE__ */ jsx(Spinner, {})
8
+ children: /* @__PURE__ */ jsx(Loader, {})
9
9
  });
10
10
  }
11
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"root-loading.mjs","names":[],"sources":["../../../src/components/layouts/root-loading.tsx"],"sourcesContent":["import { Spinner } from \"../ui/spinner\";\n\nexport function RootLoading() {\n return (\n <div className=\"grid h-dvh w-full place-items-center\">\n <Spinner />\n </div>\n );\n}\n"],"mappings":";;;;AAEA,SAAgB,cAAc;AAC5B,QACE,oBAAC;EAAI,WAAU;YACb,oBAAC,YAAU;GACP"}
1
+ {"version":3,"file":"root-loading.mjs","names":[],"sources":["../../../src/components/layouts/root-loading.tsx"],"sourcesContent":["import { Loader } from \"../ui/loader\";\n\nexport function RootLoading() {\n return (\n <div className=\"grid h-dvh w-full place-items-center\">\n <Loader />\n </div>\n );\n}\n"],"mappings":";;;;AAEA,SAAgB,cAAc;AAC5B,QACE,oBAAC;EAAI,WAAU;YACb,oBAAC,WAAS;GACN"}
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import { Allowed } from "../../modules/auth/components/allowed.client.mjs";
4
+ import { Tabs, TabsContent, TabsList, TabsTrigger } from "../ui/tabs.client.mjs";
4
5
  import { ListLayout } from "./list-layout.mjs";
5
- import { Tabs, TabsContent, TabsList, TabsTrigger } from "../ui/tabs.mjs";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
7
7
  import { useState } from "react";
8
8
  import { useRouter, useSelectedLayoutSegment } from "next/navigation";
@@ -1 +1 @@
1
- {"version":3,"file":"tab-layout.mjs","names":[],"sources":["../../../src/components/layouts/tab-layout.tsx"],"sourcesContent":["\"use client\";\n\nimport type { Route } from \"next\";\nimport { useRouter, useSelectedLayoutSegment } from \"next/navigation\";\nimport { useState } from \"react\";\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from \"@/components/ui/tabs\";\nimport { Allowed } from \"@/modules/auth/components/allowed.client\";\nimport type { Permission } from \"@/modules/auth/lib/permissions\";\nimport { ListLayout } from \"./list-layout\";\n\nexport type Tab = {\n name: string;\n href: Route;\n segment: string;\n icon?: React.ReactNode;\n permission?: Permission;\n};\n\nexport type TabLayoutProps = {\n tabs: Tab[];\n children: React.ReactNode;\n};\n\nexport function TabLayout({ tabs, children }: TabLayoutProps) {\n const segment = useSelectedLayoutSegment();\n const router = useRouter();\n\n const initialTab = tabs.find((tab) => tab.segment === segment);\n\n const [selectedTab, setSelectedTab] = useState(initialTab ?? tabs[0]);\n\n return (\n <Tabs\n value={selectedTab?.segment}\n onValueChange={(value) => {\n const newSelectedTab = tabs.find((tab) => tab.segment === value);\n if (!newSelectedTab) return;\n setSelectedTab(newSelectedTab);\n router.replace(newSelectedTab.href);\n }}\n >\n <div className=\"mb-10 max-w-full overflow-x-auto\">\n <TabsList>\n {tabs.map((tab) => {\n const children = (\n <TabsTrigger key={tab.segment} value={tab.segment}>\n {tab.icon && <span className=\"mr-2\">{tab.icon}</span>}\n <span className=\"capitalize\">{tab.name}</span>\n </TabsTrigger>\n );\n\n if (!tab.permission) return children;\n\n return (\n <Allowed key={tab.segment} permission={tab.permission}>\n {children}\n </Allowed>\n );\n })}\n </TabsList>\n </div>\n\n <TabsContent value={selectedTab?.segment ?? \"\"}>\n <ListLayout>{children}</ListLayout>\n </TabsContent>\n </Tabs>\n );\n}\n"],"mappings":";;;;;;;;;;AAuBA,SAAgB,UAAU,EAAE,MAAM,YAA4B;CAC5D,MAAM,UAAU,0BAA0B;CAC1C,MAAM,SAAS,WAAW;CAI1B,MAAM,CAAC,aAAa,kBAAkB,SAFnB,KAAK,MAAM,QAAQ,IAAI,YAAY,QAAQ,IAED,KAAK,GAAG;AAErE,QACE,qBAAC;EACC,OAAO,aAAa;EACpB,gBAAgB,UAAU;GACxB,MAAM,iBAAiB,KAAK,MAAM,QAAQ,IAAI,YAAY,MAAM;AAChE,OAAI,CAAC,eAAgB;AACrB,kBAAe,eAAe;AAC9B,UAAO,QAAQ,eAAe,KAAK;;aAGrC,oBAAC;GAAI,WAAU;aACb,oBAAC,sBACE,KAAK,KAAK,QAAQ;IACjB,MAAM,WACJ,qBAAC;KAA8B,OAAO,IAAI;gBACvC,IAAI,QAAQ,oBAAC;MAAK,WAAU;gBAAQ,IAAI;OAAY,EACrD,oBAAC;MAAK,WAAU;gBAAc,IAAI;OAAY;OAF9B,IAAI,QAGR;AAGhB,QAAI,CAAC,IAAI,WAAY,QAAO;AAE5B,WACE,oBAAC;KAA0B,YAAY,IAAI;KACxC;OADW,IAAI,QAER;KAEZ,GACO;IACP,EAEN,oBAAC;GAAY,OAAO,aAAa,WAAW;aAC1C,oBAAC,cAAY,WAAsB;IACvB;GACT"}
1
+ {"version":3,"file":"tab-layout.mjs","names":[],"sources":["../../../src/components/layouts/tab-layout.tsx"],"sourcesContent":["\"use client\";\n\nimport type { Route } from \"next\";\nimport { useRouter, useSelectedLayoutSegment } from \"next/navigation\";\nimport { useState } from \"react\";\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from \"@/components/ui/tabs.client\";\nimport { Allowed } from \"@/modules/auth/components/allowed.client\";\nimport type { Permission } from \"@/modules/auth/lib/permissions\";\nimport { ListLayout } from \"./list-layout\";\n\nexport type Tab = {\n name: string;\n href: Route;\n segment: string;\n icon?: React.ReactNode;\n permission?: Permission;\n};\n\nexport type TabLayoutProps = {\n tabs: Tab[];\n children: React.ReactNode;\n};\n\nexport function TabLayout({ tabs, children }: TabLayoutProps) {\n const segment = useSelectedLayoutSegment();\n const router = useRouter();\n\n const initialTab = tabs.find((tab) => tab.segment === segment);\n\n const [selectedTab, setSelectedTab] = useState(initialTab ?? tabs[0]);\n\n return (\n <Tabs\n value={selectedTab?.segment}\n onValueChange={(value) => {\n const newSelectedTab = tabs.find((tab) => tab.segment === value);\n if (!newSelectedTab) return;\n setSelectedTab(newSelectedTab);\n router.replace(newSelectedTab.href);\n }}\n >\n <div className=\"mb-10 max-w-full overflow-x-auto\">\n <TabsList>\n {tabs.map((tab) => {\n const children = (\n <TabsTrigger key={tab.segment} value={tab.segment}>\n {tab.icon && <span className=\"mr-2\">{tab.icon}</span>}\n <span className=\"capitalize\">{tab.name}</span>\n </TabsTrigger>\n );\n\n if (!tab.permission) return children;\n\n return (\n <Allowed key={tab.segment} permission={tab.permission}>\n {children}\n </Allowed>\n );\n })}\n </TabsList>\n </div>\n\n <TabsContent value={selectedTab?.segment ?? \"\"}>\n <ListLayout>{children}</ListLayout>\n </TabsContent>\n </Tabs>\n );\n}\n"],"mappings":";;;;;;;;;;AAuBA,SAAgB,UAAU,EAAE,MAAM,YAA4B;CAC5D,MAAM,UAAU,0BAA0B;CAC1C,MAAM,SAAS,WAAW;CAI1B,MAAM,CAAC,aAAa,kBAAkB,SAFnB,KAAK,MAAM,QAAQ,IAAI,YAAY,QAAQ,IAED,KAAK,GAAG;AAErE,QACE,qBAAC;EACC,OAAO,aAAa;EACpB,gBAAgB,UAAU;GACxB,MAAM,iBAAiB,KAAK,MAAM,QAAQ,IAAI,YAAY,MAAM;AAChE,OAAI,CAAC,eAAgB;AACrB,kBAAe,eAAe;AAC9B,UAAO,QAAQ,eAAe,KAAK;;aAGrC,oBAAC;GAAI,WAAU;aACb,oBAAC,sBACE,KAAK,KAAK,QAAQ;IACjB,MAAM,WACJ,qBAAC;KAA8B,OAAO,IAAI;gBACvC,IAAI,QAAQ,oBAAC;MAAK,WAAU;gBAAQ,IAAI;OAAY,EACrD,oBAAC;MAAK,WAAU;gBAAc,IAAI;OAAY;OAF9B,IAAI,QAGR;AAGhB,QAAI,CAAC,IAAI,WAAY,QAAO;AAE5B,WACE,oBAAC;KAA0B,YAAY,IAAI;KACxC;OADW,IAAI,QAER;KAEZ,GACO;IACP,EAEN,oBAAC;GAAY,OAAO,aAAa,WAAW;aAC1C,oBAAC,cAAY,WAAsB;IACvB;GACT"}
@@ -19,7 +19,7 @@ function DataListItem({ children, className, ...props }) {
19
19
  function DataListTitle({ children, className, ...props }) {
20
20
  return /* @__PURE__ */ jsx("dt", {
21
21
  ...props,
22
- className: cn("text-sm font-semibold leading-6", className),
22
+ className: cn("font-semibold text-sm leading-6", className),
23
23
  children
24
24
  });
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-list.mjs","names":[],"sources":["../../../src/components/lists/data-list.tsx"],"sourcesContent":["import type React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport type DataListProps = React.HTMLAttributes<HTMLOListElement>;\n\nexport function DataList({ children, className, ...props }: DataListProps) {\n return (\n <dl {...props} className={cn(\"divide-y\", className)}>\n {children}\n </dl>\n );\n}\n\nexport type DataListItemProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataListItem({ children, className, ...props }: DataListItemProps) {\n return (\n <div\n {...props}\n className={cn(\n \"items-center py-3 first:pt-0 last:pb-0 sm:grid sm:grid-cols-3 sm:gap-4\",\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nexport type DataListTitleProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataListTitle({ children, className, ...props }: DataListTitleProps) {\n return (\n <dt {...props} className={cn(\"text-sm font-semibold leading-6\", className)}>\n {children}\n </dt>\n );\n}\n\nexport type DataListValueProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataListValue({ children, className, ...props }: DataListValueProps) {\n return (\n <dd {...props} className={cn(\"mt-1 text-sm leading-6 sm:col-span-2 sm:mt-0\", className)}>\n {children}\n </dd>\n );\n}\n"],"mappings":";;;;AAKA,SAAgB,SAAS,EAAE,UAAU,WAAW,GAAG,SAAwB;AACzE,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,YAAY,UAAU;EAChD;GACE;;AAMT,SAAgB,aAAa,EAAE,UAAU,WAAW,GAAG,SAA4B;AACjF,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,GACT,0EACA,UACD;EAEA;GACG;;AAMV,SAAgB,cAAc,EAAE,UAAU,WAAW,GAAG,SAA6B;AACnF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,mCAAmC,UAAU;EACvE;GACE;;AAMT,SAAgB,cAAc,EAAE,UAAU,WAAW,GAAG,SAA6B;AACnF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,gDAAgD,UAAU;EACpF;GACE"}
1
+ {"version":3,"file":"data-list.mjs","names":[],"sources":["../../../src/components/lists/data-list.tsx"],"sourcesContent":["import type React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport type DataListProps = React.HTMLAttributes<HTMLOListElement>;\n\nexport function DataList({ children, className, ...props }: DataListProps) {\n return (\n <dl {...props} className={cn(\"divide-y\", className)}>\n {children}\n </dl>\n );\n}\n\nexport type DataListItemProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataListItem({ children, className, ...props }: DataListItemProps) {\n return (\n <div\n {...props}\n className={cn(\n \"items-center py-3 first:pt-0 last:pb-0 sm:grid sm:grid-cols-3 sm:gap-4\",\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nexport type DataListTitleProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataListTitle({ children, className, ...props }: DataListTitleProps) {\n return (\n <dt {...props} className={cn(\"font-semibold text-sm leading-6\", className)}>\n {children}\n </dt>\n );\n}\n\nexport type DataListValueProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataListValue({ children, className, ...props }: DataListValueProps) {\n return (\n <dd {...props} className={cn(\"mt-1 text-sm leading-6 sm:col-span-2 sm:mt-0\", className)}>\n {children}\n </dd>\n );\n}\n"],"mappings":";;;;AAKA,SAAgB,SAAS,EAAE,UAAU,WAAW,GAAG,SAAwB;AACzE,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,YAAY,UAAU;EAChD;GACE;;AAMT,SAAgB,aAAa,EAAE,UAAU,WAAW,GAAG,SAA4B;AACjF,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,GACT,0EACA,UACD;EAEA;GACG;;AAMV,SAAgB,cAAc,EAAE,UAAU,WAAW,GAAG,SAA6B;AACnF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,mCAAmC,UAAU;EACvE;GACE;;AAMT,SAAgB,cAAc,EAAE,UAAU,WAAW,GAAG,SAA6B;AACnF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,gDAAgD,UAAU;EACpF;GACE"}
@@ -40,7 +40,7 @@ function DataStack({ children, className, ...props }) {
40
40
  function DataStackTitle({ children, className, ...props }) {
41
41
  return /* @__PURE__ */ jsx("dt", {
42
42
  ...props,
43
- className: cn("text-sm font-medium leading-none", className),
43
+ className: cn("font-medium text-sm leading-none", className),
44
44
  children
45
45
  });
46
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-stack.mjs","names":[],"sources":["../../../src/components/lists/data-stack.tsx"],"sourcesContent":["import type React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport type DataStackGridProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackGrid({ children, className, ...props }: DataStackGridProps) {\n return (\n <div {...props} className={cn(\"grid gap-10 md:grid-cols-2 xl:grid-cols-3\", className)}>\n {children}\n </div>\n );\n}\n\nexport type DataStackLayoutProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackLayout({ children, className, ...props }: DataStackLayoutProps) {\n return (\n <div {...props} className={cn(\"flex flex-col gap-y-8\", className)}>\n {children}\n </div>\n );\n}\n\nexport type DataStackRowProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackRow({ children, className, ...props }: DataStackRowProps) {\n return (\n <div {...props} className={cn(\"flex flex-col gap-8 md:flex-row\", className)}>\n {children}\n </div>\n );\n}\nexport type DataStackColumnProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackColumn({ children, className, ...props }: DataStackRowProps) {\n return (\n <div {...props} className={cn(\"flex flex-col gap-8\", className)}>\n {children}\n </div>\n );\n}\n\nexport type DataStackProps = React.HTMLAttributes<HTMLOListElement>;\n\nexport function DataStack({ children, className, ...props }: DataStackProps) {\n return (\n <dl {...props} className={cn(\"w-full space-y-3\", className)}>\n {children}\n </dl>\n );\n}\n\nexport type DataStackTitleProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackTitle({ children, className, ...props }: DataStackTitleProps) {\n return (\n <dt {...props} className={cn(\"text-sm font-medium leading-none\", className)}>\n {children}\n </dt>\n );\n}\n\nexport type DataStackValueProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackValue({ children, className, ...props }: DataStackValueProps) {\n return (\n <dd {...props} className={cn(\"mt-1 text-sm leading-6 sm:col-span-2 sm:mt-0\", className)}>\n {children}\n </dd>\n );\n}\n"],"mappings":";;;;AAKA,SAAgB,cAAc,EAAE,UAAU,WAAW,GAAG,SAA6B;AACnF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,6CAA6C,UAAU;EAClF;GACG;;AAMV,SAAgB,gBAAgB,EAAE,UAAU,WAAW,GAAG,SAA+B;AACvF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,yBAAyB,UAAU;EAC9D;GACG;;AAMV,SAAgB,aAAa,EAAE,UAAU,WAAW,GAAG,SAA4B;AACjF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,mCAAmC,UAAU;EACxE;GACG;;AAKV,SAAgB,gBAAgB,EAAE,UAAU,WAAW,GAAG,SAA4B;AACpF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,uBAAuB,UAAU;EAC5D;GACG;;AAMV,SAAgB,UAAU,EAAE,UAAU,WAAW,GAAG,SAAyB;AAC3E,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,oBAAoB,UAAU;EACxD;GACE;;AAMT,SAAgB,eAAe,EAAE,UAAU,WAAW,GAAG,SAA8B;AACrF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,oCAAoC,UAAU;EACxE;GACE;;AAMT,SAAgB,eAAe,EAAE,UAAU,WAAW,GAAG,SAA8B;AACrF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,gDAAgD,UAAU;EACpF;GACE"}
1
+ {"version":3,"file":"data-stack.mjs","names":[],"sources":["../../../src/components/lists/data-stack.tsx"],"sourcesContent":["import type React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport type DataStackGridProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackGrid({ children, className, ...props }: DataStackGridProps) {\n return (\n <div {...props} className={cn(\"grid gap-10 md:grid-cols-2 xl:grid-cols-3\", className)}>\n {children}\n </div>\n );\n}\n\nexport type DataStackLayoutProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackLayout({ children, className, ...props }: DataStackLayoutProps) {\n return (\n <div {...props} className={cn(\"flex flex-col gap-y-8\", className)}>\n {children}\n </div>\n );\n}\n\nexport type DataStackRowProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackRow({ children, className, ...props }: DataStackRowProps) {\n return (\n <div {...props} className={cn(\"flex flex-col gap-8 md:flex-row\", className)}>\n {children}\n </div>\n );\n}\nexport type DataStackColumnProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackColumn({ children, className, ...props }: DataStackRowProps) {\n return (\n <div {...props} className={cn(\"flex flex-col gap-8\", className)}>\n {children}\n </div>\n );\n}\n\nexport type DataStackProps = React.HTMLAttributes<HTMLOListElement>;\n\nexport function DataStack({ children, className, ...props }: DataStackProps) {\n return (\n <dl {...props} className={cn(\"w-full space-y-3\", className)}>\n {children}\n </dl>\n );\n}\n\nexport type DataStackTitleProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackTitle({ children, className, ...props }: DataStackTitleProps) {\n return (\n <dt {...props} className={cn(\"font-medium text-sm leading-none\", className)}>\n {children}\n </dt>\n );\n}\n\nexport type DataStackValueProps = React.HTMLAttributes<HTMLElement>;\n\nexport function DataStackValue({ children, className, ...props }: DataStackValueProps) {\n return (\n <dd {...props} className={cn(\"mt-1 text-sm leading-6 sm:col-span-2 sm:mt-0\", className)}>\n {children}\n </dd>\n );\n}\n"],"mappings":";;;;AAKA,SAAgB,cAAc,EAAE,UAAU,WAAW,GAAG,SAA6B;AACnF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,6CAA6C,UAAU;EAClF;GACG;;AAMV,SAAgB,gBAAgB,EAAE,UAAU,WAAW,GAAG,SAA+B;AACvF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,yBAAyB,UAAU;EAC9D;GACG;;AAMV,SAAgB,aAAa,EAAE,UAAU,WAAW,GAAG,SAA4B;AACjF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,mCAAmC,UAAU;EACxE;GACG;;AAKV,SAAgB,gBAAgB,EAAE,UAAU,WAAW,GAAG,SAA4B;AACpF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,uBAAuB,UAAU;EAC5D;GACG;;AAMV,SAAgB,UAAU,EAAE,UAAU,WAAW,GAAG,SAAyB;AAC3E,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,oBAAoB,UAAU;EACxD;GACE;;AAMT,SAAgB,eAAe,EAAE,UAAU,WAAW,GAAG,SAA8B;AACrF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,oCAAoC,UAAU;EACxE;GACE;;AAMT,SAAgB,eAAe,EAAE,UAAU,WAAW,GAAG,SAA8B;AACrF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,gDAAgD,UAAU;EACpF;GACE"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { cn } from "../../lib/utils/cn.mjs";
4
4
  import { Button } from "../ui/button.mjs";
5
- import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "../ui/dropdown-menu.mjs";
5
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "../ui/dropdown-menu.client.mjs";
6
6
  import { useAuthClient } from "../../modules/auth/hooks/use-auth-client.mjs";
7
7
  import { useSession } from "../../modules/auth/hooks/use-session.mjs";
8
8
  import { SidebarHeader, useSidebar } from "../ui/sidebar.client.mjs";
@@ -39,10 +39,10 @@ function AdminSidebarHeader() {
39
39
  alt: sessionQuery.data?.user.name
40
40
  }), /* @__PURE__ */ jsx(AvatarFallback, { children: sessionQuery.data?.user.name?.[0] ?? "" })]
41
41
  }), /* @__PURE__ */ jsx("span", {
42
- className: "text-md text-muted-foreground font-bold",
42
+ className: "font-bold text-md text-muted-foreground",
43
43
  children: sessionQuery.data?.user.name
44
44
  })]
45
- }), /* @__PURE__ */ jsx(ChevronsUpDownIcon, { className: "text-muted-foreground h-4 w-4" })]
45
+ }), /* @__PURE__ */ jsx(ChevronsUpDownIcon, { className: "h-4 w-4 text-muted-foreground" })]
46
46
  })
47
47
  }), /* @__PURE__ */ jsxs(DropdownMenuContent, {
48
48
  className: "w-44",
@@ -1 +1 @@
1
- {"version":3,"file":"admin-sidebar-header.client.mjs","names":[],"sources":["../../../src/components/navigation/admin-sidebar-header.client.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ChevronsUpDownIcon,\n LaptopIcon,\n LogOutIcon,\n MoonIcon,\n SettingsIcon,\n SunIcon,\n SunMoonIcon,\n} from \"lucide-react\";\nimport Link from \"next/link\";\nimport { useRouter } from \"next/navigation\";\nimport { useTheme } from \"next-themes\";\nimport React from \"react\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"@/components/ui/avatar.client\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu\";\nimport { cn } from \"@/lib/utils/cn\";\nimport { useAuthClient } from \"@/modules/auth/hooks/use-auth-client\";\nimport { useSession } from \"@/modules/auth/hooks/use-session\";\nimport { SidebarHeader, useSidebar } from \"../ui/sidebar.client\";\n\nexport function AdminSidebarHeader() {\n const router = useRouter();\n const authClient = useAuthClient();\n const { theme, setTheme } = useTheme();\n\n const [open, setOpen] = React.useState(false);\n\n const { setOpenMobile } = useSidebar();\n\n const sessionQuery = useSession(authClient);\n\n return (\n <SidebarHeader>\n <DropdownMenu open={open} onOpenChange={setOpen}>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" className=\"items-center justify-between py-3.5\">\n <div className=\"flex items-center gap-4\">\n <Avatar className=\"h-6 w-6 text-sm\">\n <AvatarImage\n src={sessionQuery.data?.user.image ?? undefined}\n alt={sessionQuery.data?.user.name}\n />\n <AvatarFallback>{sessionQuery.data?.user.name?.[0] ?? \"\"}</AvatarFallback>\n </Avatar>\n <span className=\"text-md text-muted-foreground font-bold\">\n {sessionQuery.data?.user.name}\n </span>\n </div>\n\n <ChevronsUpDownIcon className=\"text-muted-foreground h-4 w-4\" />\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent className=\"w-44\">\n <DropdownMenuItem asChild>\n <Link href=\"/admin/settings\" onClick={() => setOpenMobile(false)}>\n <SettingsIcon className=\"mr-2 h-4 w-4\" />\n <span>Instellingen</span>\n </Link>\n </DropdownMenuItem>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuSub>\n <DropdownMenuSubTrigger>\n <SunMoonIcon className=\"mr-2 h-4 w-4\" />\n <span>Thema</span>\n </DropdownMenuSubTrigger>\n\n <DropdownMenuSubContent>\n <DropdownMenuItem\n className={cn(theme === \"light\" && \"bg-secondary font-bold\")}\n onClick={() => setTheme(\"light\")}\n >\n <SunIcon className=\"mr-2 h-4 w-4\" />\n <span>Light</span>\n </DropdownMenuItem>\n\n <DropdownMenuItem\n className={cn(theme === \"dark\" && \"bg-secondary font-bold\")}\n onClick={() => setTheme(\"dark\")}\n >\n <MoonIcon className=\"mr-2 h-4 w-4\" />\n <span>Dark</span>\n </DropdownMenuItem>\n\n <DropdownMenuItem\n className={cn(theme === \"system\" && \"bg-secondary font-bold\")}\n onClick={() => setTheme(\"system\")}\n >\n <LaptopIcon className=\"mr-2 h-4 w-4\" />\n <span>System</span>\n </DropdownMenuItem>\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n\n <DropdownMenuItem\n onClick={() => {\n setOpenMobile(false);\n setOpen(false);\n\n authClient.signOut({\n fetchOptions: {\n onSuccess: () => {\n router.replace(\"/auth/login\");\n },\n },\n });\n }}\n >\n <LogOutIcon className=\"mr-2 h-4 w-4\" />\n <span>Log out</span>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </SidebarHeader>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAgCA,SAAgB,qBAAqB;CACnC,MAAM,SAAS,WAAW;CAC1B,MAAM,aAAa,eAAe;CAClC,MAAM,EAAE,OAAO,aAAa,UAAU;CAEtC,MAAM,CAAC,MAAM,WAAW,MAAM,SAAS,MAAM;CAE7C,MAAM,EAAE,kBAAkB,YAAY;CAEtC,MAAM,eAAe,WAAW,WAAW;AAE3C,QACE,oBAAC,2BACC,qBAAC;EAAmB;EAAM,cAAc;aACtC,oBAAC;GAAoB;aACnB,qBAAC;IAAO,SAAQ;IAAU,WAAU;eAClC,qBAAC;KAAI,WAAU;gBACb,qBAAC;MAAO,WAAU;iBAChB,oBAAC;OACC,KAAK,aAAa,MAAM,KAAK,SAAS;OACtC,KAAK,aAAa,MAAM,KAAK;QAC7B,EACF,oBAAC,4BAAgB,aAAa,MAAM,KAAK,OAAO,MAAM,KAAoB;OACnE,EACT,oBAAC;MAAK,WAAU;gBACb,aAAa,MAAM,KAAK;OACpB;MACH,EAEN,oBAAC,sBAAmB,WAAU,kCAAkC;KACzD;IACW,EAEtB,qBAAC;GAAoB,WAAU;;IAC7B,oBAAC;KAAiB;eAChB,qBAAC;MAAK,MAAK;MAAkB,eAAe,cAAc,MAAM;iBAC9D,oBAAC,gBAAa,WAAU,iBAAiB,EACzC,oBAAC,oBAAK,iBAAmB;OACpB;MACU;IAEnB,oBAAC,0BAAwB;IAEzB,qBAAC,8BACC,qBAAC,qCACC,oBAAC,eAAY,WAAU,iBAAiB,EACxC,oBAAC,oBAAK,UAAY,IACK,EAEzB,qBAAC;KACC,qBAAC;MACC,WAAW,GAAG,UAAU,WAAW,yBAAyB;MAC5D,eAAe,SAAS,QAAQ;iBAEhC,oBAAC,WAAQ,WAAU,iBAAiB,EACpC,oBAAC,oBAAK,UAAY;OACD;KAEnB,qBAAC;MACC,WAAW,GAAG,UAAU,UAAU,yBAAyB;MAC3D,eAAe,SAAS,OAAO;iBAE/B,oBAAC,YAAS,WAAU,iBAAiB,EACrC,oBAAC,oBAAK,SAAW;OACA;KAEnB,qBAAC;MACC,WAAW,GAAG,UAAU,YAAY,yBAAyB;MAC7D,eAAe,SAAS,SAAS;iBAEjC,oBAAC,cAAW,WAAU,iBAAiB,EACvC,oBAAC,oBAAK,WAAa;OACF;QACI,IACT;IAElB,qBAAC;KACC,eAAe;AACb,oBAAc,MAAM;AACpB,cAAQ,MAAM;AAEd,iBAAW,QAAQ,EACjB,cAAc,EACZ,iBAAiB;AACf,cAAO,QAAQ,cAAc;SAEhC,EACF,CAAC;;gBAGJ,oBAAC,cAAW,WAAU,iBAAiB,EACvC,oBAAC,oBAAK,YAAc;MACH;;IACC;GACT,GACD"}
1
+ {"version":3,"file":"admin-sidebar-header.client.mjs","names":[],"sources":["../../../src/components/navigation/admin-sidebar-header.client.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ChevronsUpDownIcon,\n LaptopIcon,\n LogOutIcon,\n MoonIcon,\n SettingsIcon,\n SunIcon,\n SunMoonIcon,\n} from \"lucide-react\";\nimport Link from \"next/link\";\nimport { useRouter } from \"next/navigation\";\nimport { useTheme } from \"next-themes\";\nimport React from \"react\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"@/components/ui/avatar.client\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu.client\";\nimport { cn } from \"@/lib/utils/cn\";\nimport { useAuthClient } from \"@/modules/auth/hooks/use-auth-client\";\nimport { useSession } from \"@/modules/auth/hooks/use-session\";\nimport { SidebarHeader, useSidebar } from \"../ui/sidebar.client\";\n\nexport function AdminSidebarHeader() {\n const router = useRouter();\n const authClient = useAuthClient();\n const { theme, setTheme } = useTheme();\n\n const [open, setOpen] = React.useState(false);\n\n const { setOpenMobile } = useSidebar();\n\n const sessionQuery = useSession(authClient);\n\n return (\n <SidebarHeader>\n <DropdownMenu open={open} onOpenChange={setOpen}>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" className=\"items-center justify-between py-3.5\">\n <div className=\"flex items-center gap-4\">\n <Avatar className=\"h-6 w-6 text-sm\">\n <AvatarImage\n src={sessionQuery.data?.user.image ?? undefined}\n alt={sessionQuery.data?.user.name}\n />\n <AvatarFallback>{sessionQuery.data?.user.name?.[0] ?? \"\"}</AvatarFallback>\n </Avatar>\n <span className=\"font-bold text-md text-muted-foreground\">\n {sessionQuery.data?.user.name}\n </span>\n </div>\n\n <ChevronsUpDownIcon className=\"h-4 w-4 text-muted-foreground\" />\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent className=\"w-44\">\n <DropdownMenuItem asChild>\n <Link href=\"/admin/settings\" onClick={() => setOpenMobile(false)}>\n <SettingsIcon className=\"mr-2 h-4 w-4\" />\n <span>Instellingen</span>\n </Link>\n </DropdownMenuItem>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuSub>\n <DropdownMenuSubTrigger>\n <SunMoonIcon className=\"mr-2 h-4 w-4\" />\n <span>Thema</span>\n </DropdownMenuSubTrigger>\n\n <DropdownMenuSubContent>\n <DropdownMenuItem\n className={cn(theme === \"light\" && \"bg-secondary font-bold\")}\n onClick={() => setTheme(\"light\")}\n >\n <SunIcon className=\"mr-2 h-4 w-4\" />\n <span>Light</span>\n </DropdownMenuItem>\n\n <DropdownMenuItem\n className={cn(theme === \"dark\" && \"bg-secondary font-bold\")}\n onClick={() => setTheme(\"dark\")}\n >\n <MoonIcon className=\"mr-2 h-4 w-4\" />\n <span>Dark</span>\n </DropdownMenuItem>\n\n <DropdownMenuItem\n className={cn(theme === \"system\" && \"bg-secondary font-bold\")}\n onClick={() => setTheme(\"system\")}\n >\n <LaptopIcon className=\"mr-2 h-4 w-4\" />\n <span>System</span>\n </DropdownMenuItem>\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n\n <DropdownMenuItem\n onClick={() => {\n setOpenMobile(false);\n setOpen(false);\n\n authClient.signOut({\n fetchOptions: {\n onSuccess: () => {\n router.replace(\"/auth/login\");\n },\n },\n });\n }}\n >\n <LogOutIcon className=\"mr-2 h-4 w-4\" />\n <span>Log out</span>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </SidebarHeader>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAgCA,SAAgB,qBAAqB;CACnC,MAAM,SAAS,WAAW;CAC1B,MAAM,aAAa,eAAe;CAClC,MAAM,EAAE,OAAO,aAAa,UAAU;CAEtC,MAAM,CAAC,MAAM,WAAW,MAAM,SAAS,MAAM;CAE7C,MAAM,EAAE,kBAAkB,YAAY;CAEtC,MAAM,eAAe,WAAW,WAAW;AAE3C,QACE,oBAAC,2BACC,qBAAC;EAAmB;EAAM,cAAc;aACtC,oBAAC;GAAoB;aACnB,qBAAC;IAAO,SAAQ;IAAU,WAAU;eAClC,qBAAC;KAAI,WAAU;gBACb,qBAAC;MAAO,WAAU;iBAChB,oBAAC;OACC,KAAK,aAAa,MAAM,KAAK,SAAS;OACtC,KAAK,aAAa,MAAM,KAAK;QAC7B,EACF,oBAAC,4BAAgB,aAAa,MAAM,KAAK,OAAO,MAAM,KAAoB;OACnE,EACT,oBAAC;MAAK,WAAU;gBACb,aAAa,MAAM,KAAK;OACpB;MACH,EAEN,oBAAC,sBAAmB,WAAU,kCAAkC;KACzD;IACW,EAEtB,qBAAC;GAAoB,WAAU;;IAC7B,oBAAC;KAAiB;eAChB,qBAAC;MAAK,MAAK;MAAkB,eAAe,cAAc,MAAM;iBAC9D,oBAAC,gBAAa,WAAU,iBAAiB,EACzC,oBAAC,oBAAK,iBAAmB;OACpB;MACU;IAEnB,oBAAC,0BAAwB;IAEzB,qBAAC,8BACC,qBAAC,qCACC,oBAAC,eAAY,WAAU,iBAAiB,EACxC,oBAAC,oBAAK,UAAY,IACK,EAEzB,qBAAC;KACC,qBAAC;MACC,WAAW,GAAG,UAAU,WAAW,yBAAyB;MAC5D,eAAe,SAAS,QAAQ;iBAEhC,oBAAC,WAAQ,WAAU,iBAAiB,EACpC,oBAAC,oBAAK,UAAY;OACD;KAEnB,qBAAC;MACC,WAAW,GAAG,UAAU,UAAU,yBAAyB;MAC3D,eAAe,SAAS,OAAO;iBAE/B,oBAAC,YAAS,WAAU,iBAAiB,EACrC,oBAAC,oBAAK,SAAW;OACA;KAEnB,qBAAC;MACC,WAAW,GAAG,UAAU,YAAY,yBAAyB;MAC7D,eAAe,SAAS,SAAS;iBAEjC,oBAAC,cAAW,WAAU,iBAAiB,EACvC,oBAAC,oBAAK,WAAa;OACF;QACI,IACT;IAElB,qBAAC;KACC,eAAe;AACb,oBAAc,MAAM;AACpB,cAAQ,MAAM;AAEd,iBAAW,QAAQ,EACjB,cAAc,EACZ,iBAAiB;AACf,cAAO,QAAQ,cAAc;SAEhC,EACF,CAAC;;gBAGJ,oBAAC,cAAW,WAAU,iBAAiB,EACvC,oBAAC,oBAAK,YAAc;MACH;;IACC;GACT,GACD"}
@@ -1,5 +1,5 @@
1
1
  import { Button } from "../ui/button.mjs";
2
- import { DropdownMenu, DropdownMenuTrigger } from "../ui/dropdown-menu.mjs";
2
+ import { DropdownMenu, DropdownMenuTrigger } from "../ui/dropdown-menu.client.mjs";
3
3
  import { Skeleton } from "../ui/skeleton.mjs";
4
4
  import { SidebarHeader, SidebarMenu, SidebarMenuItem, SidebarMenuSkeleton } from "../ui/sidebar.client.mjs";
5
5
  import { jsx } from "react/jsx-runtime";
@@ -1 +1 @@
1
- {"version":3,"file":"admin-sidebar-skeleton.mjs","names":[],"sources":["../../../src/components/navigation/admin-sidebar-skeleton.tsx"],"sourcesContent":["import { Suspense } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { DropdownMenu, DropdownMenuTrigger } from \"@/components/ui/dropdown-menu\";\nimport {\n SidebarHeader,\n SidebarMenu,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n} from \"@/components/ui/sidebar.client\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\n\n/**\n * SidebarMenuContentLoading\n */\nexport function AdminSidebarMenuContentLoading() {\n return (\n <SidebarMenu>\n {Array.from({ length: 20 }).map((_, index) => (\n <SidebarMenuItem key={index}>\n <Suspense>\n <SidebarMenuSkeleton />\n </Suspense>\n </SidebarMenuItem>\n ))}\n </SidebarMenu>\n );\n}\n\n/**\n *\n */\nexport function AdminSidebarHeaderLoading() {\n return (\n <SidebarHeader>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" disabled>\n <Skeleton className=\"h-5 w-full\" />\n </Button>\n </DropdownMenuTrigger>\n </DropdownMenu>\n </SidebarHeader>\n );\n}\n"],"mappings":";;;;;;;;;;;AAcA,SAAgB,iCAAiC;AAC/C,QACE,oBAAC,yBACE,MAAM,KAAK,EAAE,QAAQ,IAAI,CAAC,CAAC,KAAK,GAAG,UAClC,oBAAC,6BACC,oBAAC,sBACC,oBAAC,wBAAsB,GACd,IAHS,MAIJ,CAClB,GACU;;;;;AAOlB,SAAgB,4BAA4B;AAC1C,QACE,oBAAC,2BACC,oBAAC,0BACC,oBAAC;EAAoB;YACnB,oBAAC;GAAO,SAAQ;GAAU;aACxB,oBAAC,YAAS,WAAU,eAAe;IAC5B;GACW,GACT,GACD"}
1
+ {"version":3,"file":"admin-sidebar-skeleton.mjs","names":[],"sources":["../../../src/components/navigation/admin-sidebar-skeleton.tsx"],"sourcesContent":["import { Suspense } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { DropdownMenu, DropdownMenuTrigger } from \"@/components/ui/dropdown-menu.client\";\nimport {\n SidebarHeader,\n SidebarMenu,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n} from \"@/components/ui/sidebar.client\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\n\n/**\n * SidebarMenuContentLoading\n */\nexport function AdminSidebarMenuContentLoading() {\n return (\n <SidebarMenu>\n {Array.from({ length: 20 }).map((_, index) => (\n <SidebarMenuItem key={index}>\n <Suspense>\n <SidebarMenuSkeleton />\n </Suspense>\n </SidebarMenuItem>\n ))}\n </SidebarMenu>\n );\n}\n\n/**\n *\n */\nexport function AdminSidebarHeaderLoading() {\n return (\n <SidebarHeader>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" disabled>\n <Skeleton className=\"h-5 w-full\" />\n </Button>\n </DropdownMenuTrigger>\n </DropdownMenu>\n </SidebarHeader>\n );\n}\n"],"mappings":";;;;;;;;;;;AAcA,SAAgB,iCAAiC;AAC/C,QACE,oBAAC,yBACE,MAAM,KAAK,EAAE,QAAQ,IAAI,CAAC,CAAC,KAAK,GAAG,UAClC,oBAAC,6BACC,oBAAC,sBACC,oBAAC,wBAAsB,GACd,IAHS,MAIJ,CAClB,GACU;;;;;AAOlB,SAAgB,4BAA4B;AAC1C,QACE,oBAAC,2BACC,oBAAC,0BACC,oBAAC;EAAoB;YACnB,oBAAC;GAAO,SAAQ;GAAU;aACxB,oBAAC,YAAS,WAAU,eAAe;IAC5B;GACW,GACT,GACD"}
@@ -0,0 +1,26 @@
1
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
2
+ import { Accordion } from "radix-ui";
3
+ import * as React$1 from "react";
4
+
5
+ //#region src/components/ui/accordion.client.d.ts
6
+ declare function Accordion$1({
7
+ className,
8
+ ...props
9
+ }: React$1.ComponentProps<typeof Accordion.Root>): react_jsx_runtime0.JSX.Element;
10
+ declare function AccordionItem({
11
+ className,
12
+ ...props
13
+ }: React$1.ComponentProps<typeof Accordion.Item>): react_jsx_runtime0.JSX.Element;
14
+ declare function AccordionTrigger({
15
+ className,
16
+ children,
17
+ ...props
18
+ }: React$1.ComponentProps<typeof Accordion.Trigger>): react_jsx_runtime0.JSX.Element;
19
+ declare function AccordionContent({
20
+ className,
21
+ children,
22
+ ...props
23
+ }: React$1.ComponentProps<typeof Accordion.Content>): react_jsx_runtime0.JSX.Element;
24
+ //#endregion
25
+ export { Accordion$1 as Accordion, AccordionContent, AccordionItem, AccordionTrigger };
26
+ //# sourceMappingURL=accordion.client.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.client.d.mts","names":[],"sources":["../../../src/components/ui/accordion.client.tsx"],"mappings":";;;;;iBAOS,WAAA,CAAA;EAAY,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAmB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUvF,aAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAmB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAU9C,gBAAA,CAAA;EACP,SAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAmB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAyBjD,gBAAA,CAAA;EACP,SAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAmB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,58 @@
1
+ "use client";
2
+
3
+ import { cn } from "../../lib/utils/cn.mjs";
4
+ import { ChevronDownIcon, ChevronUpIcon } from "lucide-react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { Accordion } from "radix-ui";
7
+
8
+ //#region src/components/ui/accordion.client.tsx
9
+ function Accordion$1({ className, ...props }) {
10
+ return /* @__PURE__ */ jsx(Accordion.Root, {
11
+ "data-slot": "accordion",
12
+ className: cn("flex w-full flex-col", className),
13
+ ...props
14
+ });
15
+ }
16
+ function AccordionItem({ className, ...props }) {
17
+ return /* @__PURE__ */ jsx(Accordion.Item, {
18
+ "data-slot": "accordion-item",
19
+ className: cn("not-last:border-b", className),
20
+ ...props
21
+ });
22
+ }
23
+ function AccordionTrigger({ className, children, ...props }) {
24
+ return /* @__PURE__ */ jsx(Accordion.Header, {
25
+ className: "flex",
26
+ children: /* @__PURE__ */ jsxs(Accordion.Trigger, {
27
+ "data-slot": "accordion-trigger",
28
+ className: cn("group/accordion-trigger relative flex flex-1 items-start justify-between rounded-lg border border-transparent py-2.5 text-left font-medium text-sm outline-none transition-all hover:underline focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:after:border-ring disabled:pointer-events-none disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4 **:data-[slot=accordion-trigger-icon]:text-muted-foreground", className),
29
+ ...props,
30
+ children: [
31
+ children,
32
+ /* @__PURE__ */ jsx(ChevronDownIcon, {
33
+ "data-slot": "accordion-trigger-icon",
34
+ className: "pointer-events-none shrink-0 group-aria-expanded/accordion-trigger:hidden"
35
+ }),
36
+ /* @__PURE__ */ jsx(ChevronUpIcon, {
37
+ "data-slot": "accordion-trigger-icon",
38
+ className: "pointer-events-none hidden shrink-0 group-aria-expanded/accordion-trigger:inline"
39
+ })
40
+ ]
41
+ })
42
+ });
43
+ }
44
+ function AccordionContent({ className, children, ...props }) {
45
+ return /* @__PURE__ */ jsx(Accordion.Content, {
46
+ "data-slot": "accordion-content",
47
+ className: "overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
48
+ ...props,
49
+ children: /* @__PURE__ */ jsx("div", {
50
+ className: cn("pt-0 pb-2.5 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4", className),
51
+ children
52
+ })
53
+ });
54
+ }
55
+
56
+ //#endregion
57
+ export { Accordion$1 as Accordion, AccordionContent, AccordionItem, AccordionTrigger };
58
+ //# sourceMappingURL=accordion.client.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.client.mjs","names":["Accordion","AccordionPrimitive"],"sources":["../../../src/components/ui/accordion.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\nimport type * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction Accordion({ className, ...props }: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n className={cn(\"flex w-full flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"not-last:border-b\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"group/accordion-trigger relative flex flex-1 items-start justify-between rounded-lg border border-transparent py-2.5 text-left font-medium text-sm outline-none transition-all hover:underline focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:after:border-ring disabled:pointer-events-none disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4 **:data-[slot=accordion-trigger-icon]:text-muted-foreground\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n data-slot=\"accordion-trigger-icon\"\n className=\"pointer-events-none shrink-0 group-aria-expanded/accordion-trigger:hidden\"\n />\n <ChevronUpIcon\n data-slot=\"accordion-trigger-icon\"\n className=\"pointer-events-none hidden shrink-0 group-aria-expanded/accordion-trigger:inline\"\n />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down\"\n {...props}\n >\n <div\n className={cn(\n \"pt-0 pb-2.5 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4\",\n className,\n )}\n >\n {children}\n </div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"mappings":";;;;;;;;AAOA,SAASA,YAAU,EAAE,WAAW,GAAG,SAA+D;AAChG,QACE,oBAACC,UAAmB;EAClB,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,WACA,GAAG,SACoD;AACvD,QACE,oBAACA,UAAmB;EAClB,aAAU;EACV,WAAW,GAAG,qBAAqB,UAAU;EAC7C,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;AAC1D,QACE,oBAACA,UAAmB;EAAO,WAAU;YACnC,qBAACA,UAAmB;GAClB,aAAU;GACV,WAAW,GACT,ofACA,UACD;GACD,GAAI;;IAEH;IACD,oBAAC;KACC,aAAU;KACV,WAAU;MACV;IACF,oBAAC;KACC,aAAU;KACV,WAAU;MACV;;IACyB;GACH;;AAIhC,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;AAC1D,QACE,oBAACA,UAAmB;EAClB,aAAU;EACV,WAAU;EACV,GAAI;YAEJ,oBAAC;GACC,WAAW,GACT,gHACA,UACD;GAEA;IACG;GACqB"}
@@ -0,0 +1,61 @@
1
+ import { Button } from "./button.mjs";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+ import { AlertDialog } from "radix-ui";
4
+ import * as React$1 from "react";
5
+
6
+ //#region src/components/ui/alert-dialog.client.d.ts
7
+ declare function AlertDialog$1({
8
+ ...props
9
+ }: React$1.ComponentProps<typeof AlertDialog.Root>): react_jsx_runtime0.JSX.Element;
10
+ declare function AlertDialogTrigger({
11
+ ...props
12
+ }: React$1.ComponentProps<typeof AlertDialog.Trigger>): react_jsx_runtime0.JSX.Element;
13
+ declare function AlertDialogPortal({
14
+ ...props
15
+ }: React$1.ComponentProps<typeof AlertDialog.Portal>): react_jsx_runtime0.JSX.Element;
16
+ declare function AlertDialogOverlay({
17
+ className,
18
+ ...props
19
+ }: React$1.ComponentProps<typeof AlertDialog.Overlay>): react_jsx_runtime0.JSX.Element;
20
+ declare function AlertDialogContent({
21
+ className,
22
+ size,
23
+ ...props
24
+ }: React$1.ComponentProps<typeof AlertDialog.Content> & {
25
+ size?: "default" | "sm";
26
+ }): react_jsx_runtime0.JSX.Element;
27
+ declare function AlertDialogHeader({
28
+ className,
29
+ ...props
30
+ }: React$1.ComponentProps<"div">): react_jsx_runtime0.JSX.Element;
31
+ declare function AlertDialogFooter({
32
+ className,
33
+ ...props
34
+ }: React$1.ComponentProps<"div">): react_jsx_runtime0.JSX.Element;
35
+ declare function AlertDialogMedia({
36
+ className,
37
+ ...props
38
+ }: React$1.ComponentProps<"div">): react_jsx_runtime0.JSX.Element;
39
+ declare function AlertDialogTitle({
40
+ className,
41
+ ...props
42
+ }: React$1.ComponentProps<typeof AlertDialog.Title>): react_jsx_runtime0.JSX.Element;
43
+ declare function AlertDialogDescription({
44
+ className,
45
+ ...props
46
+ }: React$1.ComponentProps<typeof AlertDialog.Description>): react_jsx_runtime0.JSX.Element;
47
+ declare function AlertDialogAction({
48
+ className,
49
+ variant,
50
+ size,
51
+ ...props
52
+ }: React$1.ComponentProps<typeof AlertDialog.Action> & Pick<React$1.ComponentProps<typeof Button>, "variant" | "size">): react_jsx_runtime0.JSX.Element;
53
+ declare function AlertDialogCancel({
54
+ className,
55
+ variant,
56
+ size,
57
+ ...props
58
+ }: React$1.ComponentProps<typeof AlertDialog.Cancel> & Pick<React$1.ComponentProps<typeof Button>, "variant" | "size">): react_jsx_runtime0.JSX.Element;
59
+ //#endregion
60
+ export { AlertDialog$1 as AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger };
61
+ //# sourceMappingURL=alert-dialog.client.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-dialog.client.d.mts","names":[],"sources":["../../../src/components/ui/alert-dialog.client.tsx"],"mappings":";;;;;;iBAOS,aAAA,CAAA;EAAA,GAAiB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIhF,kBAAA,CAAA;EAAA,GACJ;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAInD,iBAAA,CAAA;EAAA,GAAuB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,MAAA,IAAO,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIxF,kBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAanD,kBAAA,CAAA;EACP,SAAA;EACA,IAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,OAAA;EAClD,IAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAiBQ,iBAAA,CAAA;EAAoB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAatE,iBAAA,CAAA;EAAoB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAatE,gBAAA,CAAA;EAAmB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAarE,gBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAajD,sBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,WAAA,IAAY,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAavD,iBAAA,CAAA;EACP,SAAA;EACA,OAAA;EACA,IAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,MAAA,IAClD,IAAA,CAAK,OAAA,CAAM,cAAA,QAAsB,MAAA,yBAA4B,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAYtD,iBAAA,CAAA;EACP,SAAA;EACA,OAAA;EACA,IAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,MAAA,IAClD,IAAA,CAAK,OAAA,CAAM,cAAA,QAAsB,MAAA,yBAA4B,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,104 @@
1
+ "use client";
2
+
3
+ import { cn } from "../../lib/utils/cn.mjs";
4
+ import { Button } from "./button.mjs";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { AlertDialog } from "radix-ui";
7
+
8
+ //#region src/components/ui/alert-dialog.client.tsx
9
+ function AlertDialog$1({ ...props }) {
10
+ return /* @__PURE__ */ jsx(AlertDialog.Root, {
11
+ "data-slot": "alert-dialog",
12
+ ...props
13
+ });
14
+ }
15
+ function AlertDialogTrigger({ ...props }) {
16
+ return /* @__PURE__ */ jsx(AlertDialog.Trigger, {
17
+ "data-slot": "alert-dialog-trigger",
18
+ ...props
19
+ });
20
+ }
21
+ function AlertDialogPortal({ ...props }) {
22
+ return /* @__PURE__ */ jsx(AlertDialog.Portal, {
23
+ "data-slot": "alert-dialog-portal",
24
+ ...props
25
+ });
26
+ }
27
+ function AlertDialogOverlay({ className, ...props }) {
28
+ return /* @__PURE__ */ jsx(AlertDialog.Overlay, {
29
+ "data-slot": "alert-dialog-overlay",
30
+ className: cn("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/10 duration-100 data-[state=closed]:animate-out data-[state=open]:animate-in supports-backdrop-filter:backdrop-blur-xs", className),
31
+ ...props
32
+ });
33
+ }
34
+ function AlertDialogContent({ className, size = "default", ...props }) {
35
+ return /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [/* @__PURE__ */ jsx(AlertDialogOverlay, {}), /* @__PURE__ */ jsx(AlertDialog.Content, {
36
+ "data-slot": "alert-dialog-content",
37
+ "data-size": size,
38
+ className: cn("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-background p-4 outline-none ring-1 ring-foreground/10 duration-100 data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[state=closed]:animate-out data-[state=open]:animate-in data-[size=default]:sm:max-w-sm", className),
39
+ ...props
40
+ })] });
41
+ }
42
+ function AlertDialogHeader({ className, ...props }) {
43
+ return /* @__PURE__ */ jsx("div", {
44
+ "data-slot": "alert-dialog-header",
45
+ className: cn("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]", className),
46
+ ...props
47
+ });
48
+ }
49
+ function AlertDialogFooter({ className, ...props }) {
50
+ return /* @__PURE__ */ jsx("div", {
51
+ "data-slot": "alert-dialog-footer",
52
+ className: cn("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end", className),
53
+ ...props
54
+ });
55
+ }
56
+ function AlertDialogMedia({ className, ...props }) {
57
+ return /* @__PURE__ */ jsx("div", {
58
+ "data-slot": "alert-dialog-media",
59
+ className: cn("mb-2 inline-flex size-10 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-6", className),
60
+ ...props
61
+ });
62
+ }
63
+ function AlertDialogTitle({ className, ...props }) {
64
+ return /* @__PURE__ */ jsx(AlertDialog.Title, {
65
+ "data-slot": "alert-dialog-title",
66
+ className: cn("font-medium text-base sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2", className),
67
+ ...props
68
+ });
69
+ }
70
+ function AlertDialogDescription({ className, ...props }) {
71
+ return /* @__PURE__ */ jsx(AlertDialog.Description, {
72
+ "data-slot": "alert-dialog-description",
73
+ className: cn("text-balance text-muted-foreground text-sm md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground", className),
74
+ ...props
75
+ });
76
+ }
77
+ function AlertDialogAction({ className, variant = "default", size = "default", ...props }) {
78
+ return /* @__PURE__ */ jsx(Button, {
79
+ variant,
80
+ size,
81
+ asChild: true,
82
+ children: /* @__PURE__ */ jsx(AlertDialog.Action, {
83
+ "data-slot": "alert-dialog-action",
84
+ className: cn(className),
85
+ ...props
86
+ })
87
+ });
88
+ }
89
+ function AlertDialogCancel({ className, variant = "outline", size = "default", ...props }) {
90
+ return /* @__PURE__ */ jsx(Button, {
91
+ variant,
92
+ size,
93
+ asChild: true,
94
+ children: /* @__PURE__ */ jsx(AlertDialog.Cancel, {
95
+ "data-slot": "alert-dialog-cancel",
96
+ className: cn(className),
97
+ ...props
98
+ })
99
+ });
100
+ }
101
+
102
+ //#endregion
103
+ export { AlertDialog$1 as AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger };
104
+ //# sourceMappingURL=alert-dialog.client.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-dialog.client.mjs","names":["AlertDialog","AlertDialogPrimitive"],"sources":["../../../src/components/ui/alert-dialog.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { AlertDialog as AlertDialogPrimitive } from \"radix-ui\";\nimport type * as React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction AlertDialog({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Root>) {\n return <AlertDialogPrimitive.Root data-slot=\"alert-dialog\" {...props} />;\n}\n\nfunction AlertDialogTrigger({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Trigger>) {\n return <AlertDialogPrimitive.Trigger data-slot=\"alert-dialog-trigger\" {...props} />;\n}\n\nfunction AlertDialogPortal({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Portal>) {\n return <AlertDialogPrimitive.Portal data-slot=\"alert-dialog-portal\" {...props} />;\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Overlay>) {\n return (\n <AlertDialogPrimitive.Overlay\n data-slot=\"alert-dialog-overlay\"\n className={cn(\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/10 duration-100 data-[state=closed]:animate-out data-[state=open]:animate-in supports-backdrop-filter:backdrop-blur-xs\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogContent({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Content> & {\n size?: \"default\" | \"sm\";\n}) {\n return (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n data-slot=\"alert-dialog-content\"\n data-size={size}\n className={cn(\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-background p-4 outline-none ring-1 ring-foreground/10 duration-100 data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[state=closed]:animate-out data-[state=open]:animate-in data-[size=default]:sm:max-w-sm\",\n className,\n )}\n {...props}\n />\n </AlertDialogPortal>\n );\n}\n\nfunction AlertDialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-header\"\n className={cn(\n \"grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-footer\"\n className={cn(\n \"-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogMedia({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-media\"\n className={cn(\n \"mb-2 inline-flex size-10 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-6\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Title>) {\n return (\n <AlertDialogPrimitive.Title\n data-slot=\"alert-dialog-title\"\n className={cn(\n \"font-medium text-base sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Description>) {\n return (\n <AlertDialogPrimitive.Description\n data-slot=\"alert-dialog-description\"\n className={cn(\n \"text-balance text-muted-foreground text-sm md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogAction({\n className,\n variant = \"default\",\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Action> &\n Pick<React.ComponentProps<typeof Button>, \"variant\" | \"size\">) {\n return (\n <Button variant={variant} size={size} asChild>\n <AlertDialogPrimitive.Action\n data-slot=\"alert-dialog-action\"\n className={cn(className)}\n {...props}\n />\n </Button>\n );\n}\n\nfunction AlertDialogCancel({\n className,\n variant = \"outline\",\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Cancel> &\n Pick<React.ComponentProps<typeof Button>, \"variant\" | \"size\">) {\n return (\n <Button variant={variant} size={size} asChild>\n <AlertDialogPrimitive.Cancel\n data-slot=\"alert-dialog-cancel\"\n className={cn(className)}\n {...props}\n />\n </Button>\n );\n}\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogMedia,\n AlertDialogOverlay,\n AlertDialogPortal,\n AlertDialogTitle,\n AlertDialogTrigger,\n};\n"],"mappings":";;;;;;;;AAOA,SAASA,cAAY,EAAE,GAAG,SAAiE;AACzF,QAAO,oBAACC,YAAqB;EAAK,aAAU;EAAe,GAAI;GAAS;;AAG1E,SAAS,mBAAmB,EAC1B,GAAG,SACyD;AAC5D,QAAO,oBAACA,YAAqB;EAAQ,aAAU;EAAuB,GAAI;GAAS;;AAGrF,SAAS,kBAAkB,EAAE,GAAG,SAAmE;AACjG,QAAO,oBAACA,YAAqB;EAAO,aAAU;EAAsB,GAAI;GAAS;;AAGnF,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GACT,iNACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,mBAAmB,EAC1B,WACA,OAAO,WACP,GAAG,SAGF;AACD,QACE,qBAAC,gCACC,oBAAC,uBAAqB,EACtB,oBAACA,YAAqB;EACpB,aAAU;EACV,aAAW;EACX,WAAW,GACT,ycACA,UACD;EACD,GAAI;GACJ,IACgB;;AAIxB,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAsC;AAC/E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sZACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAsC;AAC/E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,iNACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAsC;AAC9E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,8KACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,WACA,GAAG,SACuD;AAC1D,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GACT,qJACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,uBAAuB,EAC9B,WACA,GAAG,SAC6D;AAChE,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GACT,kIACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,kBAAkB,EACzB,WACA,UAAU,WACV,OAAO,WACP,GAAG,SAE4D;AAC/D,QACE,oBAAC;EAAgB;EAAe;EAAM;YACpC,oBAACA,YAAqB;GACpB,aAAU;GACV,WAAW,GAAG,UAAU;GACxB,GAAI;IACJ;GACK;;AAIb,SAAS,kBAAkB,EACzB,WACA,UAAU,WACV,OAAO,WACP,GAAG,SAE4D;AAC/D,QACE,oBAAC;EAAgB;EAAe;EAAM;YACpC,oBAACA,YAAqB;GACpB,aAAU;GACV,WAAW,GAAG,UAAU;GACxB,GAAI;IACJ;GACK"}
@@ -20,6 +20,10 @@ declare function AlertDescription({
20
20
  className,
21
21
  ...props
22
22
  }: React$1.ComponentProps<"div">): react_jsx_runtime0.JSX.Element;
23
+ declare function AlertAction({
24
+ className,
25
+ ...props
26
+ }: React$1.ComponentProps<"div">): react_jsx_runtime0.JSX.Element;
23
27
  //#endregion
24
- export { Alert, AlertDescription, AlertTitle };
28
+ export { Alert, AlertAction, AlertDescription, AlertTitle };
25
29
  //# sourceMappingURL=alert.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert.d.mts","names":[],"sources":["../../../src/components/ui/alert.tsx"],"mappings":";;;;;;cAKM,aAAA,GAAa,KAAA;;IAclB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,KAAA,CAAA;EACP,SAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,UAAwB,YAAA,QAAoB,aAAA,IAAc,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAW1D,UAAA,CAAA;EAAa,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAU/D,gBAAA,CAAA;EAAmB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"alert.d.mts","names":[],"sources":["../../../src/components/ui/alert.tsx"],"mappings":";;;;;;cAIM,aAAA,GAAa,KAAA;;IAclB,+BAAA,CAAA,SAAA;AAAA,iBAEQ,KAAA,CAAA;EACP,SAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,UAAwB,YAAA,QAAoB,aAAA,IAAc,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAW1D,UAAA,CAAA;EAAa,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAa/D,gBAAA,CAAA;EAAmB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAarE,WAAA,CAAA;EAAc,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -3,10 +3,10 @@ import { jsx } from "react/jsx-runtime";
3
3
  import { cva } from "class-variance-authority";
4
4
 
5
5
  //#region src/components/ui/alert.tsx
6
- const alertVariants = cva("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current", {
6
+ const alertVariants = cva("grid gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4 w-full relative group/alert", {
7
7
  variants: { variant: {
8
- default: "bg-background text-foreground",
9
- destructive: "text-destructive-foreground [&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/80"
8
+ default: "bg-card text-card-foreground",
9
+ destructive: "text-destructive bg-card *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current"
10
10
  } },
11
11
  defaultVariants: { variant: "default" }
12
12
  });
@@ -21,18 +21,25 @@ function Alert({ className, variant, ...props }) {
21
21
  function AlertTitle({ className, ...props }) {
22
22
  return /* @__PURE__ */ jsx("div", {
23
23
  "data-slot": "alert-title",
24
- className: cn("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight", className),
24
+ className: cn("font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground", className),
25
25
  ...props
26
26
  });
27
27
  }
28
28
  function AlertDescription({ className, ...props }) {
29
29
  return /* @__PURE__ */ jsx("div", {
30
30
  "data-slot": "alert-description",
31
- className: cn("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed", className),
31
+ className: cn("text-balance text-muted-foreground text-sm md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4", className),
32
+ ...props
33
+ });
34
+ }
35
+ function AlertAction({ className, ...props }) {
36
+ return /* @__PURE__ */ jsx("div", {
37
+ "data-slot": "alert-action",
38
+ className: cn("absolute top-2 right-2", className),
32
39
  ...props
33
40
  });
34
41
  }
35
42
 
36
43
  //#endregion
37
- export { Alert, AlertDescription, AlertTitle };
44
+ export { Alert, AlertAction, AlertDescription, AlertTitle };
38
45
  //# sourceMappingURL=alert.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert.mjs","names":[],"sources":["../../../src/components/ui/alert.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils/cn\";\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n {\n variants: {\n variant: {\n default: \"bg-background text-foreground\",\n destructive:\n \"text-destructive-foreground [&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/80\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction Alert({\n className,\n variant,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariants>) {\n return (\n <div\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-title\"\n className={cn(\"col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight\", className)}\n {...props}\n />\n );\n}\n\nfunction AlertDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\n \"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertDescription, AlertTitle };\n"],"mappings":";;;;;AAKA,MAAM,gBAAgB,IACpB,qOACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,aACE;EACH,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,MAAM,EACb,WACA,SACA,GAAG,SACgE;AACnE,QACE,oBAAC;EACC,aAAU;EACV,MAAK;EACL,WAAW,GAAG,cAAc,EAAE,SAAS,CAAC,EAAE,UAAU;EACpD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,+DAA+D,UAAU;EACvF,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAsC;AAC9E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,kGACA,UACD;EACD,GAAI;GACJ"}
1
+ {"version":3,"file":"alert.mjs","names":[],"sources":["../../../src/components/ui/alert.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nconst alertVariants = cva(\n \"grid gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4 w-full relative group/alert\",\n {\n variants: {\n variant: {\n default: \"bg-card text-card-foreground\",\n destructive:\n \"text-destructive bg-card *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction Alert({\n className,\n variant,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariants>) {\n return (\n <div\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-title\"\n className={cn(\n \"font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\n \"text-balance text-muted-foreground text-sm md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AlertAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"alert-action\" className={cn(\"absolute top-2 right-2\", className)} {...props} />\n );\n}\n\nexport { Alert, AlertTitle, AlertDescription, AlertAction };\n"],"mappings":";;;;;AAIA,MAAM,gBAAgB,IACpB,6TACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,aACE;EACH,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,MAAM,EACb,WACA,SACA,GAAG,SACgE;AACnE,QACE,oBAAC;EACC,aAAU;EACV,MAAK;EACL,WAAW,GAAG,cAAc,EAAE,SAAS,CAAC,EAAE,UAAU;EACpD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,uHACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAsC;AAC9E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,8JACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EAAI,aAAU;EAAe,WAAW,GAAG,0BAA0B,UAAU;EAAE,GAAI;GAAS"}
@@ -0,0 +1,10 @@
1
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
2
+ import { AspectRatio } from "radix-ui";
3
+
4
+ //#region src/components/ui/aspect-ratio.client.d.ts
5
+ declare function AspectRatio$1({
6
+ ...props
7
+ }: React.ComponentProps<typeof AspectRatio.Root>): react_jsx_runtime0.JSX.Element;
8
+ //#endregion
9
+ export { AspectRatio$1 as AspectRatio };
10
+ //# sourceMappingURL=aspect-ratio.client.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aspect-ratio.client.d.mts","names":[],"sources":["../../../src/components/ui/aspect-ratio.client.tsx"],"mappings":";;;;iBAIS,aAAA,CAAA;EAAA,GAAiB;AAAA,GAAS,KAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,16 @@
1
+ "use client";
2
+
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { AspectRatio } from "radix-ui";
5
+
6
+ //#region src/components/ui/aspect-ratio.client.tsx
7
+ function AspectRatio$1({ ...props }) {
8
+ return /* @__PURE__ */ jsx(AspectRatio.Root, {
9
+ "data-slot": "aspect-ratio",
10
+ ...props
11
+ });
12
+ }
13
+
14
+ //#endregion
15
+ export { AspectRatio$1 as AspectRatio };
16
+ //# sourceMappingURL=aspect-ratio.client.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aspect-ratio.client.mjs","names":["AspectRatio","AspectRatioPrimitive"],"sources":["../../../src/components/ui/aspect-ratio.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { AspectRatio as AspectRatioPrimitive } from \"radix-ui\";\n\nfunction AspectRatio({ ...props }: React.ComponentProps<typeof AspectRatioPrimitive.Root>) {\n return <AspectRatioPrimitive.Root data-slot=\"aspect-ratio\" {...props} />;\n}\n\nexport { AspectRatio };\n"],"mappings":";;;;;;AAIA,SAASA,cAAY,EAAE,GAAG,SAAiE;AACzF,QAAO,oBAACC,YAAqB;EAAK,aAAU;EAAe,GAAI;GAAS"}