@tulip-systems/core 0.5.13 → 0.5.15

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 (229) hide show
  1. package/dist/auth/client.d.mts +5 -4
  2. package/dist/auth/client.mjs +6 -5
  3. package/dist/auth.mjs +2 -2
  4. package/dist/components/client.mjs +2 -2
  5. package/dist/components/common/icons.d.mts +52 -52
  6. package/dist/components/common/status.d.mts +3 -3
  7. package/dist/components/editor/components/content.client.d.mts +2 -2
  8. package/dist/components/editor/components/editor.client.d.mts +6 -6
  9. package/dist/components/editor/components/editor.client.d.mts.map +1 -1
  10. package/dist/components/editor/components/menu.client.d.mts +3 -3
  11. package/dist/components/header/back-button.client.d.mts +2 -2
  12. package/dist/components/header/bottom-bar.client.d.mts +3 -3
  13. package/dist/components/header/breadcrumbs.client.d.mts +7 -7
  14. package/dist/components/header/header.client.d.mts +2 -2
  15. package/dist/components/header/mobile-nav-switcher.client.d.mts +2 -2
  16. package/dist/components/header/top-bar.client.d.mts +4 -4
  17. package/dist/components/layouts/admin-content.client.d.mts +2 -2
  18. package/dist/components/layouts/admin-error-pages.d.mts +4 -4
  19. package/dist/components/layouts/admin-layout.d.mts +2 -2
  20. package/dist/components/layouts/admin-layout.mjs +1 -1
  21. package/dist/components/layouts/admin-layout.mjs.map +1 -1
  22. package/dist/components/layouts/admin-loading.d.mts +2 -2
  23. package/dist/components/layouts/empty-page.d.mts +4 -4
  24. package/dist/components/layouts/error-page.d.mts +9 -9
  25. package/dist/components/layouts/error-sections.d.mts +5 -5
  26. package/dist/components/layouts/list-layout.d.mts +2 -2
  27. package/dist/components/layouts/providers.client.d.mts +2 -2
  28. package/dist/components/layouts/root-error-pages.d.mts +2 -2
  29. package/dist/components/layouts/root-layout.server.d.mts +4 -4
  30. package/dist/components/layouts/root-layout.server.d.mts.map +1 -1
  31. package/dist/components/layouts/root-loading.d.mts +2 -2
  32. package/dist/components/layouts/tab-layout.d.mts +2 -2
  33. package/dist/components/lists/data-list.d.mts +5 -5
  34. package/dist/components/lists/data-stack.d.mts +8 -8
  35. package/dist/components/navigation/admin-sidebar-header.client.mjs +3 -2
  36. package/dist/components/navigation/admin-sidebar-header.client.mjs.map +1 -1
  37. package/dist/components/navigation/admin-sidebar-paths.client.d.mts +10 -10
  38. package/dist/components/ui/accordion.d.mts +5 -5
  39. package/dist/components/ui/alert-dialog.d.mts +12 -12
  40. package/dist/components/ui/alert.d.mts +6 -6
  41. package/dist/components/ui/aspect-ratio.d.mts +2 -2
  42. package/dist/components/ui/avatar.client.d.mts +4 -4
  43. package/dist/components/ui/badge.d.mts +4 -4
  44. package/dist/components/ui/breadcrumb.d.mts +8 -8
  45. package/dist/components/ui/button.d.mts +4 -4
  46. package/dist/components/ui/calendar.d.mts +3 -3
  47. package/dist/components/ui/card.d.mts +7 -7
  48. package/dist/components/ui/carousel.d.mts +6 -6
  49. package/dist/components/ui/chart.client.d.mts +5 -5
  50. package/dist/components/ui/checkbox.d.mts +2 -2
  51. package/dist/components/ui/collapsible.client.d.mts +4 -4
  52. package/dist/components/ui/color-picker.client.d.mts +2 -2
  53. package/dist/components/ui/combobox-dropdown.client.d.mts +2 -2
  54. package/dist/components/ui/combobox.client.d.mts +2 -2
  55. package/dist/components/ui/command.d.mts +10 -10
  56. package/dist/components/ui/context-menu.d.mts +16 -16
  57. package/dist/components/ui/date-picker.client.d.mts +2 -2
  58. package/dist/components/ui/dialog.client.d.mts +11 -11
  59. package/dist/components/ui/drawer.client.d.mts +11 -11
  60. package/dist/components/ui/dropdown-menu.d.mts +16 -16
  61. package/dist/components/ui/form.client.d.mts +7 -7
  62. package/dist/components/ui/hover-card.client.d.mts +4 -4
  63. package/dist/components/ui/input-recipient.d.mts +2 -2
  64. package/dist/components/ui/input.d.mts +2 -2
  65. package/dist/components/ui/label.d.mts +2 -2
  66. package/dist/components/ui/navigation-menu.d.mts +11 -11
  67. package/dist/components/ui/pagination.d.mts +8 -8
  68. package/dist/components/ui/popover.d.mts +5 -5
  69. package/dist/components/ui/progress.client.d.mts +2 -2
  70. package/dist/components/ui/radio-group.d.mts +3 -3
  71. package/dist/components/ui/resizable.client.d.mts +4 -4
  72. package/dist/components/ui/scroll-area.d.mts +3 -3
  73. package/dist/components/ui/select.client.d.mts +11 -11
  74. package/dist/components/ui/separator.d.mts +2 -2
  75. package/dist/components/ui/sheet.client.d.mts +9 -9
  76. package/dist/components/ui/sidebar.client.d.mts +26 -26
  77. package/dist/components/ui/skeleton.d.mts +2 -2
  78. package/dist/components/ui/slider.d.mts +2 -2
  79. package/dist/components/ui/sonner.client.d.mts +2 -2
  80. package/dist/components/ui/sonner.client.mjs +1 -1
  81. package/dist/components/ui/switch.d.mts +2 -2
  82. package/dist/components/ui/tabs.d.mts +5 -5
  83. package/dist/components/ui/textarea.d.mts +2 -2
  84. package/dist/components/ui/time-input.client.d.mts +2 -2
  85. package/dist/components/ui/toggle-group.client.d.mts +3 -3
  86. package/dist/components/ui/toggle.d.mts +4 -4
  87. package/dist/components/ui/toggle.d.mts.map +1 -1
  88. package/dist/components/ui/tooltip.client.d.mts +5 -5
  89. package/dist/components.mjs +2 -2
  90. package/dist/lib/client.mjs +1 -1
  91. package/dist/lib/hooks/use-action.d.mts +2 -2
  92. package/dist/lib/hooks/use-indicator.d.mts +2 -2
  93. package/dist/modules/auth/components/allowed.client.d.mts +2 -2
  94. package/dist/modules/auth/components/allowed.client.mjs +2 -3
  95. package/dist/modules/auth/components/allowed.client.mjs.map +1 -1
  96. package/dist/modules/auth/components/auth-layout.server.d.mts +2 -2
  97. package/dist/modules/auth/components/auth-layout.server.d.mts.map +1 -1
  98. package/dist/modules/auth/components/auth-loading.d.mts +2 -2
  99. package/dist/modules/auth/components/create-first-user-page.client.d.mts +2 -2
  100. package/dist/modules/auth/components/create-first-user-page.client.mjs +4 -3
  101. package/dist/modules/auth/components/create-first-user-page.client.mjs.map +1 -1
  102. package/dist/modules/auth/components/forget-password-page.client.d.mts +2 -2
  103. package/dist/modules/auth/components/forget-password-page.client.mjs +4 -3
  104. package/dist/modules/auth/components/forget-password-page.client.mjs.map +1 -1
  105. package/dist/modules/auth/components/guard-first-user.server.d.mts +2 -2
  106. package/dist/modules/auth/components/guard-first-user.server.d.mts.map +1 -1
  107. package/dist/modules/auth/components/guard.server.d.mts +3 -2
  108. package/dist/modules/auth/components/guard.server.d.mts.map +1 -1
  109. package/dist/modules/auth/components/guard.server.mjs +1 -0
  110. package/dist/modules/auth/components/guard.server.mjs.map +1 -1
  111. package/dist/modules/auth/components/login-page.client.d.mts +2 -2
  112. package/dist/modules/auth/components/login-page.client.mjs +4 -3
  113. package/dist/modules/auth/components/login-page.client.mjs.map +1 -1
  114. package/dist/modules/auth/components/reset-password-page.client.d.mts +2 -2
  115. package/dist/modules/auth/components/reset-password-page.client.mjs +4 -3
  116. package/dist/modules/auth/components/reset-password-page.client.mjs.map +1 -1
  117. package/dist/modules/auth/components/update-password-command.d.mts +2 -2
  118. package/dist/modules/auth/components/update-password-command.mjs +1 -1
  119. package/dist/modules/auth/handler/{client.client.d.mts → create-client.client.d.mts} +288 -168
  120. package/dist/modules/auth/handler/create-client.client.d.mts.map +1 -0
  121. package/dist/modules/auth/handler/create-client.client.mjs +26 -0
  122. package/dist/modules/auth/handler/create-client.client.mjs.map +1 -0
  123. package/dist/modules/auth/handler/init.d.mts +133 -133
  124. package/dist/modules/auth/handler/init.d.mts.map +1 -1
  125. package/dist/modules/auth/hooks/use-auth-client.d.mts +24 -0
  126. package/dist/modules/auth/hooks/use-auth-client.d.mts.map +1 -0
  127. package/dist/modules/auth/hooks/use-auth-client.mjs +31 -0
  128. package/dist/modules/auth/hooks/use-auth-client.mjs.map +1 -0
  129. package/dist/modules/auth/hooks/use-permission.d.mts +8 -35
  130. package/dist/modules/auth/hooks/use-permission.d.mts.map +1 -1
  131. package/dist/modules/auth/hooks/use-permission.mjs +47 -93
  132. package/dist/modules/auth/hooks/use-permission.mjs.map +1 -1
  133. package/dist/modules/auth/hooks/use-session.d.mts +5 -119
  134. package/dist/modules/auth/hooks/use-session.d.mts.map +1 -1
  135. package/dist/modules/auth/hooks/use-session.mjs +15 -17
  136. package/dist/modules/auth/hooks/use-session.mjs.map +1 -1
  137. package/dist/modules/auth/lib/helpers.server.mjs +1 -1
  138. package/dist/modules/auth/lib/validators.d.mts +2 -2
  139. package/dist/modules/auth/lib/validators.d.mts.map +1 -1
  140. package/dist/modules/commands/components/alert-dialog-command.client.d.mts +11 -11
  141. package/dist/modules/commands/components/click-command.client.d.mts +2 -2
  142. package/dist/modules/commands/components/command-trigger.client.d.mts +4 -4
  143. package/dist/modules/commands/components/dialog-command.client.d.mts +8 -8
  144. package/dist/modules/commands/components/dropdown-command.client.d.mts +5 -5
  145. package/dist/modules/commands/components/empty-command.client.d.mts +2 -2
  146. package/dist/modules/commands/components/form-dialog-command.client.d.mts +12 -12
  147. package/dist/modules/commands/hooks/use-command-menu.client.mjs.map +1 -1
  148. package/dist/modules/commands/hooks/use-command-mutation.client.mjs +1 -1
  149. package/dist/modules/commands/menus/context-menu.client.d.mts +2 -2
  150. package/dist/modules/commands/menus/dropdown-menu.client.d.mts +3 -3
  151. package/dist/modules/commands/menus/inline-menu.client.d.mts +3 -3
  152. package/dist/modules/commands/menus/responsive-menu.client.d.mts +3 -3
  153. package/dist/modules/commands/utils/archive-command.client.d.mts +3 -3
  154. package/dist/modules/commands/utils/delete-command.client.d.mts +3 -3
  155. package/dist/modules/config/db/helpers.d.mts +5 -5
  156. package/dist/modules/config/db/helpers.d.mts.map +1 -1
  157. package/dist/modules/config/lib/config.d.mts +1 -1
  158. package/dist/modules/config/lib/config.mjs.map +1 -1
  159. package/dist/modules/data-tables/components/cell/common.client.d.mts +5 -5
  160. package/dist/modules/data-tables/components/filters/combobox.client.d.mts +2 -2
  161. package/dist/modules/data-tables/components/filters/slider.client.d.mts +2 -2
  162. package/dist/modules/data-tables/components/search-input.client.d.mts +2 -2
  163. package/dist/modules/data-tables/hooks/use-context.client.d.mts +2 -2
  164. package/dist/modules/data-tables/strategies/helpers/sorting.mjs +1 -1
  165. package/dist/modules/data-tables/tables/data-table/components/table.d.mts +2 -2
  166. package/dist/modules/data-tables/tables/inline-table/components/cells/common.d.mts +2 -2
  167. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.d.mts +2 -2
  168. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.d.mts +2 -2
  169. package/dist/modules/data-tables/tables/inline-table/components/table.d.mts +2 -2
  170. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.d.mts +2 -2
  171. package/dist/modules/inline-edit/components/combobox-dropdown.client.d.mts +2 -2
  172. package/dist/modules/inline-edit/components/combobox-dropdown.client.d.mts.map +1 -1
  173. package/dist/modules/inline-edit/components/combobox.client.d.mts +2 -2
  174. package/dist/modules/inline-edit/components/combobox.client.d.mts.map +1 -1
  175. package/dist/modules/inline-edit/components/date-input.client.d.mts +2 -2
  176. package/dist/modules/inline-edit/components/date-input.client.d.mts.map +1 -1
  177. package/dist/modules/inline-edit/components/date-picker.client.d.mts +2 -2
  178. package/dist/modules/inline-edit/components/date-picker.client.d.mts.map +1 -1
  179. package/dist/modules/inline-edit/components/editor.client.d.mts +2 -2
  180. package/dist/modules/inline-edit/components/input-recipient.client.d.mts +2 -2
  181. package/dist/modules/inline-edit/components/input-toggle.client.d.mts +2 -2
  182. package/dist/modules/inline-edit/components/input.client.d.mts +4 -4
  183. package/dist/modules/inline-edit/components/select.client.d.mts +6 -6
  184. package/dist/modules/inline-edit/components/switch.client.d.mts +2 -2
  185. package/dist/modules/inline-edit/components/toggle.client.d.mts +2 -2
  186. package/dist/modules/inline-edit/hooks/context.client.d.mts +2 -2
  187. package/dist/modules/inline-edit/hooks/context.client.d.mts.map +1 -1
  188. package/dist/modules/inline-edit/hooks/use-inline.client.mjs +2 -6
  189. package/dist/modules/inline-edit/hooks/use-inline.client.mjs.map +1 -1
  190. package/dist/modules/storage/components/dropzone.client.d.mts +4 -4
  191. package/dist/modules/storage/components/image-grid.client.d.mts +3 -3
  192. package/dist/modules/storage/components/image-grid.client.mjs +1 -1
  193. package/dist/modules/storage/components/upload-zone.client.d.mts +2 -2
  194. package/dist/modules/storage/components/upload-zone.client.mjs +1 -2
  195. package/dist/modules/storage/components/upload-zone.client.mjs.map +1 -1
  196. package/dist/modules/storage/lib/create-upload.client.d.mts.map +1 -1
  197. package/dist/modules/storage/lib/proxy.server.mjs +1 -1
  198. package/dist/modules/storage/lib/router.server.d.mts +2354 -2324
  199. package/dist/modules/storage/lib/router.server.d.mts.map +1 -1
  200. package/dist/modules/storage/lib/router.server.mjs +2 -3
  201. package/dist/modules/storage/lib/router.server.mjs.map +1 -1
  202. package/dist/modules/storage/lib/service.server.d.mts +18 -18
  203. package/dist/modules/storage/lib/validators.d.mts +90 -90
  204. package/dist/modules/storage/lib/validators.d.mts.map +1 -1
  205. package/package.json +1 -1
  206. package/src/components/layouts/admin-layout.tsx +1 -3
  207. package/src/components/navigation/admin-sidebar-header.client.tsx +3 -20
  208. package/src/modules/auth/components/allowed.client.tsx +2 -2
  209. package/src/modules/auth/components/create-first-user-page.client.tsx +3 -2
  210. package/src/modules/auth/components/forget-password-page.client.tsx +2 -1
  211. package/src/modules/auth/components/guard.server.tsx +2 -0
  212. package/src/modules/auth/components/login-page.client.tsx +2 -1
  213. package/src/modules/auth/components/reset-password-page.client.tsx +3 -1
  214. package/src/modules/auth/entry.client.ts +13 -1
  215. package/src/modules/auth/entry.ts +11 -0
  216. package/src/modules/auth/handler/create-client.client.ts +53 -0
  217. package/src/modules/auth/hooks/use-auth-client.tsx +38 -0
  218. package/src/modules/auth/hooks/use-permission.ts +49 -94
  219. package/src/modules/auth/hooks/use-session.ts +16 -16
  220. package/src/modules/commands/hooks/use-command-menu.client.tsx +0 -6
  221. package/src/modules/config/lib/config.ts +3 -2
  222. package/src/modules/inline-edit/hooks/use-inline.client.tsx +1 -1
  223. package/src/modules/storage/components/upload-zone.client.tsx +0 -2
  224. package/src/modules/storage/lib/router.server.ts +5 -4
  225. package/dist/modules/auth/handler/client.client.d.mts.map +0 -1
  226. package/dist/modules/auth/handler/client.client.mjs +0 -21
  227. package/dist/modules/auth/handler/client.client.mjs.map +0 -1
  228. package/src/modules/auth/components/guard.client.tsx +0 -12
  229. package/src/modules/auth/handler/client.client.ts +0 -16
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime254 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime380 from "react/jsx-runtime";
2
2
  import * as React$1 from "react";
3
3
  import * as SwitchPrimitive from "@radix-ui/react-switch";
4
4
 
@@ -6,7 +6,7 @@ import * as SwitchPrimitive from "@radix-ui/react-switch";
6
6
  declare function Switch({
7
7
  className,
8
8
  ...props
9
- }: React$1.ComponentProps<typeof SwitchPrimitive.Root>): react_jsx_runtime254.JSX.Element;
9
+ }: React$1.ComponentProps<typeof SwitchPrimitive.Root>): react_jsx_runtime380.JSX.Element;
10
10
  //#endregion
11
11
  export { Switch };
12
12
  //# sourceMappingURL=switch.d.mts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime255 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime381 from "react/jsx-runtime";
2
2
  import * as React$1 from "react";
3
3
  import * as TabsPrimitive from "@radix-ui/react-tabs";
4
4
 
@@ -6,19 +6,19 @@ import * as TabsPrimitive from "@radix-ui/react-tabs";
6
6
  declare function Tabs({
7
7
  className,
8
8
  ...props
9
- }: React$1.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime255.JSX.Element;
9
+ }: React$1.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime381.JSX.Element;
10
10
  declare function TabsList({
11
11
  className,
12
12
  ...props
13
- }: React$1.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime255.JSX.Element;
13
+ }: React$1.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime381.JSX.Element;
14
14
  declare function TabsTrigger({
15
15
  className,
16
16
  ...props
17
- }: React$1.ComponentProps<typeof TabsPrimitive.Trigger>): react_jsx_runtime255.JSX.Element;
17
+ }: React$1.ComponentProps<typeof TabsPrimitive.Trigger>): react_jsx_runtime381.JSX.Element;
18
18
  declare function TabsContent({
19
19
  className,
20
20
  ...props
21
- }: React$1.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime255.JSX.Element;
21
+ }: React$1.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime381.JSX.Element;
22
22
  //#endregion
23
23
  export { Tabs, TabsContent, TabsList, TabsTrigger };
24
24
  //# sourceMappingURL=tabs.d.mts.map
@@ -1,11 +1,11 @@
1
- import * as react_jsx_runtime259 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime385 from "react/jsx-runtime";
2
2
  import * as React$1 from "react";
3
3
 
4
4
  //#region src/components/ui/textarea.d.ts
5
5
  declare function Textarea({
6
6
  className,
7
7
  ...props
8
- }: React$1.ComponentProps<"textarea">): react_jsx_runtime259.JSX.Element;
8
+ }: React$1.ComponentProps<"textarea">): react_jsx_runtime385.JSX.Element;
9
9
  //#endregion
10
10
  export { Textarea };
11
11
  //# sourceMappingURL=textarea.d.mts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime382 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime234 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/components/ui/time-input.client.d.ts
4
4
  type TimeInputProps = {
@@ -10,7 +10,7 @@ declare function TimeInput({
10
10
  value,
11
11
  onChange,
12
12
  format
13
- }: TimeInputProps): react_jsx_runtime382.JSX.Element;
13
+ }: TimeInputProps): react_jsx_runtime234.JSX.Element;
14
14
  //#endregion
15
15
  export { TimeInput };
16
16
  //# sourceMappingURL=time-input.client.d.mts.map
@@ -1,5 +1,5 @@
1
1
  import { toggleVariants } from "./toggle.mjs";
2
- import * as react_jsx_runtime383 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime235 from "react/jsx-runtime";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
  import * as React$1 from "react";
5
5
  import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
@@ -11,14 +11,14 @@ declare function ToggleGroup({
11
11
  size,
12
12
  children,
13
13
  ...props
14
- }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime383.JSX.Element;
14
+ }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime235.JSX.Element;
15
15
  declare function ToggleGroupItem({
16
16
  className,
17
17
  children,
18
18
  variant,
19
19
  size,
20
20
  ...props
21
- }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): react_jsx_runtime383.JSX.Element;
21
+ }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): react_jsx_runtime235.JSX.Element;
22
22
  //#endregion
23
23
  export { ToggleGroup, ToggleGroupItem };
24
24
  //# sourceMappingURL=toggle-group.client.d.mts.map
@@ -1,20 +1,20 @@
1
- import * as react_jsx_runtime89 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime238 from "react/jsx-runtime";
2
2
  import { VariantProps } from "class-variance-authority";
3
3
  import * as React$1 from "react";
4
4
  import * as TogglePrimitive from "@radix-ui/react-toggle";
5
- import * as class_variance_authority_types0 from "class-variance-authority/types";
5
+ import * as class_variance_authority_types1 from "class-variance-authority/types";
6
6
 
7
7
  //#region src/components/ui/toggle.d.ts
8
8
  declare const toggleVariants: (props?: ({
9
9
  variant?: "default" | "outline" | null | undefined;
10
10
  size?: "default" | "sm" | "lg" | null | undefined;
11
- } & class_variance_authority_types0.ClassProp) | undefined) => string;
11
+ } & class_variance_authority_types1.ClassProp) | undefined) => string;
12
12
  declare function Toggle({
13
13
  className,
14
14
  variant,
15
15
  size,
16
16
  ...props
17
- }: React$1.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime89.JSX.Element;
17
+ }: React$1.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime238.JSX.Element;
18
18
  //#endregion
19
19
  export { Toggle, toggleVariants };
20
20
  //# sourceMappingURL=toggle.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.d.mts","names":[],"sources":["../../../src/components/ui/toggle.tsx"],"sourcesContent":[],"mappings":";;;;;;;cAQM;;;IAoBL,+BAAA,CAAA;AAxB8B,iBA0BtB,MAAA,CAFR;EAAA,SAAA;EAAA,OAAA;EAAA,IAAA;EAAA,GAAA;AAAA,CAAA,EAOE,OAAA,CAAM,cAPR,CAAA,OAO8B,eAAA,CAAgB,IAP9C,CAAA,GAOsD,YAPtD,CAAA,OAO0E,cAP1E,CAAA,CAAA,EAOyF,mBAAA,CAAA,GAAA,CAAA,OAPzF"}
1
+ {"version":3,"file":"toggle.d.mts","names":[],"sources":["../../../src/components/ui/toggle.tsx"],"sourcesContent":[],"mappings":";;;;;;;cAQM;;;IAoBL,+BAAA,CAAA;AAxB8B,iBA0BtB,MAAA,CAFR;EAAA,SAAA;EAAA,OAAA;EAAA,IAAA;EAAA,GAAA;AAAA,CAAA,EAOE,OAAA,CAAM,cAPR,CAAA,OAO8B,eAAA,CAAgB,IAP9C,CAAA,GAOsD,YAPtD,CAAA,OAO0E,cAP1E,CAAA,CAAA,EAOyF,oBAAA,CAAA,GAAA,CAAA,OAPzF"}
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime260 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime112 from "react/jsx-runtime";
2
2
  import * as React$1 from "react";
3
3
  import * as TooltipPrimitive from "@radix-ui/react-tooltip";
4
4
 
@@ -6,19 +6,19 @@ import * as TooltipPrimitive from "@radix-ui/react-tooltip";
6
6
  declare function TooltipProvider({
7
7
  delayDuration,
8
8
  ...props
9
- }: React$1.ComponentProps<typeof TooltipPrimitive.Provider>): react_jsx_runtime260.JSX.Element;
9
+ }: React$1.ComponentProps<typeof TooltipPrimitive.Provider>): react_jsx_runtime112.JSX.Element;
10
10
  declare function Tooltip({
11
11
  ...props
12
- }: React$1.ComponentProps<typeof TooltipPrimitive.Root>): react_jsx_runtime260.JSX.Element;
12
+ }: React$1.ComponentProps<typeof TooltipPrimitive.Root>): react_jsx_runtime112.JSX.Element;
13
13
  declare function TooltipTrigger({
14
14
  ...props
15
- }: React$1.ComponentProps<typeof TooltipPrimitive.Trigger>): react_jsx_runtime260.JSX.Element;
15
+ }: React$1.ComponentProps<typeof TooltipPrimitive.Trigger>): react_jsx_runtime112.JSX.Element;
16
16
  declare function TooltipContent({
17
17
  className,
18
18
  sideOffset,
19
19
  children,
20
20
  ...props
21
- }: React$1.ComponentProps<typeof TooltipPrimitive.Content>): react_jsx_runtime260.JSX.Element;
21
+ }: React$1.ComponentProps<typeof TooltipPrimitive.Content>): react_jsx_runtime112.JSX.Element;
22
22
  //#endregion
23
23
  export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
24
24
  //# sourceMappingURL=tooltip.client.d.mts.map
@@ -10,12 +10,11 @@ import { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMe
10
10
  import { ScrollArea, ScrollBar } from "./components/ui/scroll-area.mjs";
11
11
  import { Skeleton } from "./components/ui/skeleton.mjs";
12
12
  import { Popover, PopoverAnchor, PopoverContent, PopoverTrigger } from "./components/ui/popover.mjs";
13
- import { Label } from "./components/ui/label.mjs";
14
13
  import { Input } from "./components/ui/input.mjs";
15
- import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from "./components/ui/alert-dialog.mjs";
16
14
  import { Separator } from "./components/ui/separator.mjs";
17
15
  import { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from "./components/ui/command.mjs";
18
16
  import { Calendar, CalendarDayButton } from "./components/ui/calendar.mjs";
17
+ import { Label } from "./components/ui/label.mjs";
19
18
  import { Toggle, toggleVariants } from "./components/ui/toggle.mjs";
20
19
  import { ErrorPage, ErrorPageCode, ErrorPageDescription, ErrorPageIcon } from "./components/layouts/error-page.mjs";
21
20
  import { DefaultErrorSection, NotAllowedSection, NotFoundSection, ServerErrorSection } from "./components/layouts/error-sections.mjs";
@@ -31,6 +30,7 @@ import { DataList, DataListItem, DataListTitle, DataListValue } from "./componen
31
30
  import { DataStack, DataStackColumn, DataStackGrid, DataStackLayout, DataStackRow, DataStackTitle, DataStackValue } from "./components/lists/data-stack.mjs";
32
31
  import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "./components/ui/accordion.mjs";
33
32
  import { Alert, AlertDescription, AlertTitle } from "./components/ui/alert.mjs";
33
+ import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from "./components/ui/alert-dialog.mjs";
34
34
  import { AspectRatio } from "./components/ui/aspect-ratio.mjs";
35
35
  import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "./components/ui/card.mjs";
36
36
  import { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from "./components/ui/carousel.mjs";
@@ -1,6 +1,6 @@
1
1
  import { IndicatorContext, IndicatorContextProvider, useIndicator, useLocalIndicator } from "./hooks/use-indicator.mjs";
2
- import { useAction } from "./hooks/use-action.mjs";
3
2
  import { useIsMobile } from "./hooks/use-mobile.client.mjs";
4
3
  import { fontSans, registerFonts } from "./utils/fonts.mjs";
4
+ import { useAction } from "./hooks/use-action.mjs";
5
5
 
6
6
  export { IndicatorContext, IndicatorContextProvider, fontSans, registerFonts, useAction, useIndicator, useIsMobile, useLocalIndicator };
@@ -1,4 +1,4 @@
1
- import * as _tanstack_react_query0 from "@tanstack/react-query";
1
+ import * as _tanstack_react_query1 from "@tanstack/react-query";
2
2
  import { DefaultError, MutationFunctionContext, UseMutationOptions } from "@tanstack/react-query";
3
3
  import "client-only";
4
4
 
@@ -12,7 +12,7 @@ import "client-only";
12
12
  */
13
13
  declare function useAction<TData = unknown, TError = DefaultError, TVariables = void, TContext = MutationFunctionContext>(options?: UseMutationOptions<TData, TError, TVariables, TContext> & {
14
14
  onRedirect?: () => void;
15
- }): _tanstack_react_query0.UseMutationResult<TData, TError, TVariables, TContext>;
15
+ }): _tanstack_react_query1.UseMutationResult<TData, TError, TVariables, TContext>;
16
16
  //#endregion
17
17
  export { useAction };
18
18
  //# sourceMappingURL=use-action.d.mts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime38 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime58 from "react/jsx-runtime";
2
2
  import React from "react";
3
3
 
4
4
  //#region src/lib/hooks/use-indicator.d.ts
@@ -34,7 +34,7 @@ declare function IndicatorContextProvider({
34
34
  children
35
35
  }: {
36
36
  children: React.ReactNode;
37
- }): react_jsx_runtime38.JSX.Element;
37
+ }): react_jsx_runtime58.JSX.Element;
38
38
  //#endregion
39
39
  export { IndicatorContext, IndicatorContextProvider, IndicatorStatus, useIndicator, useLocalIndicator };
40
40
  //# sourceMappingURL=use-indicator.d.mts.map
@@ -1,5 +1,5 @@
1
1
  import { UsePermissionProps } from "../hooks/use-permission.mjs";
2
- import * as react_jsx_runtime88 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime60 from "react/jsx-runtime";
3
3
  import { JSX } from "react";
4
4
 
5
5
  //#region src/modules/auth/components/allowed.client.d.ts
@@ -29,7 +29,7 @@ declare function Allowed({
29
29
  strategy,
30
30
  fallback,
31
31
  children
32
- }: AllowedProps): react_jsx_runtime88.JSX.Element;
32
+ }: AllowedProps): react_jsx_runtime60.JSX.Element;
33
33
  //#endregion
34
34
  export { Allowed, AllowedProps, AllowedStrategy };
35
35
  //# sourceMappingURL=allowed.client.d.mts.map
@@ -8,11 +8,10 @@ import { Fragment, jsx } from "react/jsx-runtime";
8
8
  * Allowed
9
9
  */
10
10
  function Allowed({ permission, strategy, fallback, children }) {
11
- const { data } = usePermission({
11
+ if (usePermission({
12
12
  permission,
13
13
  strategy
14
- });
15
- if (data?.success) return /* @__PURE__ */ jsx(Fragment, { children });
14
+ }).success) return /* @__PURE__ */ jsx(Fragment, { children });
16
15
  return /* @__PURE__ */ jsx(Fragment, { children: fallback });
17
16
  }
18
17
 
@@ -1 +1 @@
1
- {"version":3,"file":"allowed.client.mjs","names":[],"sources":["../../../../src/modules/auth/components/allowed.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { JSX } from \"react\";\nimport { usePermission, UsePermissionProps } from \"../hooks/use-permission\";\n\n/**\n * Allowed types\n */\nexport type AllowedStrategy = \"all\" | \"any\";\n\n/**\n * Allowed props\n */\nexport type AllowedProps = UsePermissionProps & {\n // /**\n // * Permission to check\n // * @example { project: [\"view\", \"create\"] }\n // */\n // permission: Permission;\n\n // /**\n // * Strategy to use when checking multiple permissions\n // * - \"all\": all permissions must be allowed\n // * - \"any\": at least one permission must be allowed\n // * @default \"all\"\n // */\n // strategy?: AllowedStrategy;\n\n /**\n * Fallback component to render if the user doesn't have the permission\n * @default null\n */\n fallback?: JSX.Element | string;\n\n /**\n * Children to render if the user has the permission\n */\n children: React.ReactNode;\n};\n\n/**\n * Allowed\n */\nexport function Allowed({ permission, strategy, fallback, children }: AllowedProps) {\n const { data } = usePermission({ permission, strategy } as UsePermissionProps);\n\n if (data?.success) return <>{children}</>;\n\n return <>{fallback}</>;\n}\n"],"mappings":";;;;;;;;;AA2CA,SAAgB,QAAQ,EAAE,YAAY,UAAU,UAAU,YAA0B;CAClF,MAAM,EAAE,SAAS,cAAc;EAAE;EAAY;EAAU,CAAuB;AAE9E,KAAI,MAAM,QAAS,QAAO,gCAAG,WAAY;AAEzC,QAAO,0CAAG,WAAY"}
1
+ {"version":3,"file":"allowed.client.mjs","names":[],"sources":["../../../../src/modules/auth/components/allowed.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { JSX } from \"react\";\nimport { usePermission, UsePermissionProps } from \"../hooks/use-permission\";\n\n/**\n * Allowed types\n */\nexport type AllowedStrategy = \"all\" | \"any\";\n\n/**\n * Allowed props\n */\nexport type AllowedProps = UsePermissionProps & {\n // /**\n // * Permission to check\n // * @example { project: [\"view\", \"create\"] }\n // */\n // permission: Permission;\n\n // /**\n // * Strategy to use when checking multiple permissions\n // * - \"all\": all permissions must be allowed\n // * - \"any\": at least one permission must be allowed\n // * @default \"all\"\n // */\n // strategy?: AllowedStrategy;\n\n /**\n * Fallback component to render if the user doesn't have the permission\n * @default null\n */\n fallback?: JSX.Element | string;\n\n /**\n * Children to render if the user has the permission\n */\n children: React.ReactNode;\n};\n\n/**\n * Allowed\n */\nexport function Allowed({ permission, strategy, fallback, children }: AllowedProps) {\n const data = usePermission({ permission, strategy } as UsePermissionProps);\n\n if (data.success) return <>{children}</>;\n\n return <>{fallback}</>;\n}\n"],"mappings":";;;;;;;;;AA2CA,SAAgB,QAAQ,EAAE,YAAY,UAAU,UAAU,YAA0B;AAGlF,KAFa,cAAc;EAAE;EAAY;EAAU,CAAuB,CAEjE,QAAS,QAAO,gCAAG,WAAY;AAExC,QAAO,0CAAG,WAAY"}
@@ -1,10 +1,10 @@
1
- import * as react_jsx_runtime95 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime8 from "react/jsx-runtime";
2
2
  import { PropsWithChildren } from "react";
3
3
 
4
4
  //#region src/modules/auth/components/auth-layout.server.d.ts
5
5
  declare function AuthLayout(props: PropsWithChildren<{
6
6
  name: string;
7
- }>): Promise<react_jsx_runtime95.JSX.Element>;
7
+ }>): Promise<react_jsx_runtime8.JSX.Element>;
8
8
  //#endregion
9
9
  export { AuthLayout };
10
10
  //# sourceMappingURL=auth-layout.server.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-layout.server.d.mts","names":[],"sources":["../../../../src/modules/auth/components/auth-layout.server.tsx"],"sourcesContent":[],"mappings":";;;;iBAIsB,UAAA,QAAkB;;KAAmC,QAAA,mBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"auth-layout.server.d.mts","names":[],"sources":["../../../../src/modules/auth/components/auth-layout.server.tsx"],"sourcesContent":[],"mappings":";;;;iBAIsB,UAAA,QAAkB;;KAAmC,QAAA,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,7 +1,7 @@
1
- import * as react_jsx_runtime87 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime57 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/modules/auth/components/auth-loading.d.ts
4
- declare function AuthLoading(): react_jsx_runtime87.JSX.Element;
4
+ declare function AuthLoading(): react_jsx_runtime57.JSX.Element;
5
5
  //#endregion
6
6
  export { AuthLoading };
7
7
  //# sourceMappingURL=auth-loading.d.mts.map
@@ -1,7 +1,7 @@
1
- import * as react_jsx_runtime90 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime61 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/modules/auth/components/create-first-user-page.client.d.ts
4
- declare function CreateFirstUserPage(): react_jsx_runtime90.JSX.Element;
4
+ declare function CreateFirstUserPage(): react_jsx_runtime61.JSX.Element;
5
5
  //#endregion
6
6
  export { CreateFirstUserPage };
7
7
  //# sourceMappingURL=create-first-user-page.client.d.mts.map
@@ -2,23 +2,24 @@
2
2
 
3
3
  import { Icons } from "../../../components/common/icons.mjs";
4
4
  import { Button } from "../../../components/ui/button.mjs";
5
- import { authClient } from "../handler/client.client.mjs";
6
- import { Form as Form$1, FormControl, FormField, FormItem, FormLabel, FormMessage } from "../../../components/ui/form.client.mjs";
5
+ import { useAuthClient } from "../hooks/use-auth-client.mjs";
7
6
  import { Input } from "../../../components/ui/input.mjs";
7
+ import { Form as Form$1, FormControl, FormField, FormItem, FormLabel, FormMessage } from "../../../components/ui/form.client.mjs";
8
8
  import { createUserSchema } from "../lib/validators.mjs";
9
9
  import { Eye, EyeOff } from "lucide-react";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
11
11
  import { useState } from "react";
12
12
  import { useRouter } from "next/navigation";
13
13
  import { useMutation } from "@tanstack/react-query";
14
+ import { toast } from "sonner";
14
15
  import { useForm } from "react-hook-form";
15
16
  import { parseAsString, useQueryState } from "nuqs";
16
- import { toast } from "sonner";
17
17
  import { standardSchemaResolver } from "@hookform/resolvers/standard-schema";
18
18
 
19
19
  //#region src/modules/auth/components/create-first-user-page.client.tsx
20
20
  function CreateFirstUserPage() {
21
21
  const router = useRouter();
22
+ const authClient = useAuthClient();
22
23
  const [callbackURL] = useQueryState("callbackURL", parseAsString);
23
24
  const [showPassword, setShowPassword] = useState(false);
24
25
  const createFirstUserMutation = useMutation({
@@ -1 +1 @@
1
- {"version":3,"file":"create-first-user-page.client.mjs","names":["Form"],"sources":["../../../../src/modules/auth/components/create-first-user-page.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Icons } from \"@/components/common/icons\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n Form,\n FormControl,\n FormField,\n FormItem,\n FormLabel,\n FormMessage,\n} from \"@/components/ui/form.client\";\nimport { Input } from \"@/components/ui/input\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { parseAsString, useQueryState } from \"nuqs\";\nimport { toast } from \"sonner\";\nimport * as z from \"zod\";\nimport { createUserSchema } from \"../lib/validators\";\n\nimport { standardSchemaResolver } from \"@hookform/resolvers/standard-schema\";\nimport { Eye, EyeOff } from \"lucide-react\";\nimport { useRouter } from \"next/navigation\";\nimport { useState } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { authClient } from \"../handler/client.client\";\n\nexport function CreateFirstUserPage() {\n const router = useRouter();\n const [callbackURL] = useQueryState(\"callbackURL\", parseAsString);\n const [showPassword, setShowPassword] = useState(false);\n\n const createFirstUserMutation = useMutation({\n mutationFn: async (data: z.infer<typeof createUserSchema>) => {\n const result = await authClient.signUp.email({\n email: data.email,\n password: data.password,\n name: `${data.firstName} ${data.lastName}`,\n firstName: data.firstName,\n lastName: data.lastName,\n callbackURL: callbackURL ?? \"/admin\",\n });\n\n if (result.error) throw result.error;\n\n return result.data;\n },\n onError: (err: Error) => {\n console.error(\"Create First User error: \", err);\n toast.error(\"Er is iets misgegaan\");\n },\n onSuccess: () => {\n router.replace(callbackURL ?? \"/admin\");\n toast.success(\"Account succesvol aangemaakt!\");\n },\n });\n\n const disabled = createFirstUserMutation.isPending;\n\n const form = useForm<z.infer<typeof createUserSchema>>({\n resolver: standardSchemaResolver(createUserSchema),\n defaultValues: { email: \"\", firstName: \"\", lastName: \"\", password: \"\" },\n disabled,\n });\n\n if(Object.keys(form.formState.errors).length > 0) {\n console.error(form.formState.errors);\n }\n\n return (\n <div className=\"mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]\">\n <div className=\"flex flex-col space-y-2 text-center\">\n <h1 className=\"text-3xl font-semibold tracking-tight\">Welkom eerste gebruiker</h1>\n <p className=\"text-muted-foreground text-sm\">Maak eerst een account aan om in te loggen</p>\n </div>\n\n <Form {...form}>\n <form\n className=\"space-y-6\"\n onSubmit={form.handleSubmit((data) => createFirstUserMutation.mutate(data))}\n >\n <div className=\"flex flex-col gap-3\">\n <FormField\n control={form.control}\n name=\"firstName\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Voornaam</FormLabel>\n <FormControl>\n <Input placeholder=\"Voornaam\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <FormField\n control={form.control}\n name=\"lastName\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Achternaam</FormLabel>\n <FormControl>\n <Input placeholder=\"Achternaam\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <FormField\n control={form.control}\n name=\"email\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Email</FormLabel>\n <FormControl>\n <Input placeholder=\"email@example.be\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <FormField\n control={form.control}\n name=\"password\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Wachtwoord</FormLabel>\n <FormControl>\n <div className=\"relative\">\n <Input\n type={showPassword ? \"text\" : \"password\"}\n placeholder=\"********\"\n {...field}\n />\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"sm\"\n className=\"absolute right-0 top-0 h-full px-3 py-2 hover:bg-transparent\"\n onClick={() => setShowPassword(!showPassword)}\n disabled={disabled}\n >\n {showPassword ? (\n <EyeOff className=\"text-muted-foreground h-4 w-4\" />\n ) : (\n <Eye className=\"text-muted-foreground h-4 w-4\" />\n )}\n </Button>\n </div>\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n </div>\n\n <div className=\"space-y-3\">\n <Button disabled={disabled} className=\"w-full\">\n {createFirstUserMutation.isPending && (\n <Icons.spinner className=\"mr-2 h-4 w-4 animate-spin\" />\n )}\n Account aanmaken\n </Button>\n </div>\n </form>\n </Form>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AA0BA,SAAgB,sBAAsB;CACpC,MAAM,SAAS,WAAW;CAC1B,MAAM,CAAC,eAAe,cAAc,eAAe,cAAc;CACjE,MAAM,CAAC,cAAc,mBAAmB,SAAS,MAAM;CAEvD,MAAM,0BAA0B,YAAY;EAC1C,YAAY,OAAO,SAA2C;GAC5D,MAAM,SAAS,MAAM,WAAW,OAAO,MAAM;IAC3C,OAAO,KAAK;IACZ,UAAU,KAAK;IACf,MAAM,GAAG,KAAK,UAAU,GAAG,KAAK;IAChC,WAAW,KAAK;IAChB,UAAU,KAAK;IACf,aAAa,eAAe;IAC7B,CAAC;AAEF,OAAI,OAAO,MAAO,OAAM,OAAO;AAE/B,UAAO,OAAO;;EAEhB,UAAU,QAAe;AACvB,WAAQ,MAAM,6BAA6B,IAAI;AAC/C,SAAM,MAAM,uBAAuB;;EAErC,iBAAiB;AACf,UAAO,QAAQ,eAAe,SAAS;AACvC,SAAM,QAAQ,gCAAgC;;EAEjD,CAAC;CAEF,MAAM,WAAW,wBAAwB;CAEzC,MAAM,OAAO,QAA0C;EACrD,UAAU,uBAAuB,iBAAiB;EAClD,eAAe;GAAE,OAAO;GAAI,WAAW;GAAI,UAAU;GAAI,UAAU;GAAI;EACvE;EACD,CAAC;AAEF,KAAG,OAAO,KAAK,KAAK,UAAU,OAAO,CAAC,SAAS,EAC7C,SAAQ,MAAM,KAAK,UAAU,OAAO;AAGtC,QACE,qBAAC;EAAI,WAAU;aACb,qBAAC;GAAI,WAAU;cACb,oBAAC;IAAG,WAAU;cAAwC;KAA4B,EAClF,oBAAC;IAAE,WAAU;cAAgC;KAA8C;IACvF,EAEN,oBAACA;GAAK,GAAI;aACR,qBAAC;IACC,WAAU;IACV,UAAU,KAAK,cAAc,SAAS,wBAAwB,OAAO,KAAK,CAAC;eAE3E,qBAAC;KAAI,WAAU;;MACb,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,aAAoB;QAC/B,oBAAC,yBACC,oBAAC;SAAM,aAAY;SAAW,GAAI;UAAS,GAC/B;QACd,oBAAC,gBAAc;WACN;QAEb;MAEF,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,eAAsB;QACjC,oBAAC,yBACC,oBAAC;SAAM,aAAY;SAAa,GAAI;UAAS,GACjC;QACd,oBAAC,gBAAc;WACN;QAEb;MAEF,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,UAAiB;QAC5B,oBAAC,yBACC,oBAAC;SAAM,aAAY;SAAmB,GAAI;UAAS,GACvC;QACd,oBAAC,gBAAc;WACN;QAEb;MAEF,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,eAAsB;QACjC,oBAAC,yBACC,qBAAC;SAAI,WAAU;oBACb,oBAAC;UACC,MAAM,eAAe,SAAS;UAC9B,aAAY;UACZ,GAAI;WACJ,EACF,oBAAC;UACC,MAAK;UACL,SAAQ;UACR,MAAK;UACL,WAAU;UACV,eAAe,gBAAgB,CAAC,aAAa;UACnC;oBAET,eACC,oBAAC,UAAO,WAAU,kCAAkC,GAEpD,oBAAC,OAAI,WAAU,kCAAkC;WAE5C;UACL,GACM;QACd,oBAAC,gBAAc;WACN;QAEb;;MACE,EAEN,oBAAC;KAAI,WAAU;eACb,qBAAC;MAAiB;MAAU,WAAU;iBACnC,wBAAwB,aACvB,oBAAC,MAAM,WAAQ,WAAU,8BAA8B,EACvD;OAEK;MACL;KACD;IACF;GACH"}
1
+ {"version":3,"file":"create-first-user-page.client.mjs","names":["Form"],"sources":["../../../../src/modules/auth/components/create-first-user-page.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Icons } from \"@/components/common/icons\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n Form,\n FormControl,\n FormField,\n FormItem,\n FormLabel,\n FormMessage,\n} from \"@/components/ui/form.client\";\nimport { Input } from \"@/components/ui/input\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { parseAsString, useQueryState } from \"nuqs\";\nimport { toast } from \"sonner\";\nimport * as z from \"zod\";\nimport { createUserSchema } from \"../lib/validators\";\n\nimport { standardSchemaResolver } from \"@hookform/resolvers/standard-schema\";\nimport { Eye, EyeOff } from \"lucide-react\";\nimport { useRouter } from \"next/navigation\";\nimport { useState } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { useAuthClient } from \"../hooks/use-auth-client\";\n\nexport function CreateFirstUserPage() {\n const router = useRouter();\n const authClient = useAuthClient();\n const [callbackURL] = useQueryState(\"callbackURL\", parseAsString);\n const [showPassword, setShowPassword] = useState(false);\n\n const createFirstUserMutation = useMutation({\n mutationFn: async (data: z.infer<typeof createUserSchema>) => {\n const result = await authClient.signUp.email({\n email: data.email,\n password: data.password,\n name: `${data.firstName} ${data.lastName}`,\n firstName: data.firstName,\n lastName: data.lastName,\n callbackURL: callbackURL ?? \"/admin\",\n });\n\n if (result.error) throw result.error;\n\n return result.data;\n },\n onError: (err: Error) => {\n console.error(\"Create First User error: \", err);\n toast.error(\"Er is iets misgegaan\");\n },\n onSuccess: () => {\n router.replace(callbackURL ?? \"/admin\");\n toast.success(\"Account succesvol aangemaakt!\");\n },\n });\n\n const disabled = createFirstUserMutation.isPending;\n\n const form = useForm<z.infer<typeof createUserSchema>>({\n resolver: standardSchemaResolver(createUserSchema),\n defaultValues: { email: \"\", firstName: \"\", lastName: \"\", password: \"\" },\n disabled,\n });\n\n if (Object.keys(form.formState.errors).length > 0) {\n console.error(form.formState.errors);\n }\n\n return (\n <div className=\"mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]\">\n <div className=\"flex flex-col space-y-2 text-center\">\n <h1 className=\"text-3xl font-semibold tracking-tight\">Welkom eerste gebruiker</h1>\n <p className=\"text-muted-foreground text-sm\">Maak eerst een account aan om in te loggen</p>\n </div>\n\n <Form {...form}>\n <form\n className=\"space-y-6\"\n onSubmit={form.handleSubmit((data) => createFirstUserMutation.mutate(data))}\n >\n <div className=\"flex flex-col gap-3\">\n <FormField\n control={form.control}\n name=\"firstName\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Voornaam</FormLabel>\n <FormControl>\n <Input placeholder=\"Voornaam\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <FormField\n control={form.control}\n name=\"lastName\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Achternaam</FormLabel>\n <FormControl>\n <Input placeholder=\"Achternaam\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <FormField\n control={form.control}\n name=\"email\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Email</FormLabel>\n <FormControl>\n <Input placeholder=\"email@example.be\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <FormField\n control={form.control}\n name=\"password\"\n render={({ field }) => (\n <FormItem>\n <FormLabel>Wachtwoord</FormLabel>\n <FormControl>\n <div className=\"relative\">\n <Input\n type={showPassword ? \"text\" : \"password\"}\n placeholder=\"********\"\n {...field}\n />\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"sm\"\n className=\"absolute right-0 top-0 h-full px-3 py-2 hover:bg-transparent\"\n onClick={() => setShowPassword(!showPassword)}\n disabled={disabled}\n >\n {showPassword ? (\n <EyeOff className=\"text-muted-foreground h-4 w-4\" />\n ) : (\n <Eye className=\"text-muted-foreground h-4 w-4\" />\n )}\n </Button>\n </div>\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n </div>\n\n <div className=\"space-y-3\">\n <Button disabled={disabled} className=\"w-full\">\n {createFirstUserMutation.isPending && (\n <Icons.spinner className=\"mr-2 h-4 w-4 animate-spin\" />\n )}\n Account aanmaken\n </Button>\n </div>\n </form>\n </Form>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AA0BA,SAAgB,sBAAsB;CACpC,MAAM,SAAS,WAAW;CAC1B,MAAM,aAAa,eAAe;CAClC,MAAM,CAAC,eAAe,cAAc,eAAe,cAAc;CACjE,MAAM,CAAC,cAAc,mBAAmB,SAAS,MAAM;CAEvD,MAAM,0BAA0B,YAAY;EAC1C,YAAY,OAAO,SAA2C;GAC5D,MAAM,SAAS,MAAM,WAAW,OAAO,MAAM;IAC3C,OAAO,KAAK;IACZ,UAAU,KAAK;IACf,MAAM,GAAG,KAAK,UAAU,GAAG,KAAK;IAChC,WAAW,KAAK;IAChB,UAAU,KAAK;IACf,aAAa,eAAe;IAC7B,CAAC;AAEF,OAAI,OAAO,MAAO,OAAM,OAAO;AAE/B,UAAO,OAAO;;EAEhB,UAAU,QAAe;AACvB,WAAQ,MAAM,6BAA6B,IAAI;AAC/C,SAAM,MAAM,uBAAuB;;EAErC,iBAAiB;AACf,UAAO,QAAQ,eAAe,SAAS;AACvC,SAAM,QAAQ,gCAAgC;;EAEjD,CAAC;CAEF,MAAM,WAAW,wBAAwB;CAEzC,MAAM,OAAO,QAA0C;EACrD,UAAU,uBAAuB,iBAAiB;EAClD,eAAe;GAAE,OAAO;GAAI,WAAW;GAAI,UAAU;GAAI,UAAU;GAAI;EACvE;EACD,CAAC;AAEF,KAAI,OAAO,KAAK,KAAK,UAAU,OAAO,CAAC,SAAS,EAC9C,SAAQ,MAAM,KAAK,UAAU,OAAO;AAGtC,QACE,qBAAC;EAAI,WAAU;aACb,qBAAC;GAAI,WAAU;cACb,oBAAC;IAAG,WAAU;cAAwC;KAA4B,EAClF,oBAAC;IAAE,WAAU;cAAgC;KAA8C;IACvF,EAEN,oBAACA;GAAK,GAAI;aACR,qBAAC;IACC,WAAU;IACV,UAAU,KAAK,cAAc,SAAS,wBAAwB,OAAO,KAAK,CAAC;eAE3E,qBAAC;KAAI,WAAU;;MACb,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,aAAoB;QAC/B,oBAAC,yBACC,oBAAC;SAAM,aAAY;SAAW,GAAI;UAAS,GAC/B;QACd,oBAAC,gBAAc;WACN;QAEb;MAEF,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,eAAsB;QACjC,oBAAC,yBACC,oBAAC;SAAM,aAAY;SAAa,GAAI;UAAS,GACjC;QACd,oBAAC,gBAAc;WACN;QAEb;MAEF,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,UAAiB;QAC5B,oBAAC,yBACC,oBAAC;SAAM,aAAY;SAAmB,GAAI;UAAS,GACvC;QACd,oBAAC,gBAAc;WACN;QAEb;MAEF,oBAAC;OACC,SAAS,KAAK;OACd,MAAK;OACL,SAAS,EAAE,YACT,qBAAC;QACC,oBAAC,uBAAU,eAAsB;QACjC,oBAAC,yBACC,qBAAC;SAAI,WAAU;oBACb,oBAAC;UACC,MAAM,eAAe,SAAS;UAC9B,aAAY;UACZ,GAAI;WACJ,EACF,oBAAC;UACC,MAAK;UACL,SAAQ;UACR,MAAK;UACL,WAAU;UACV,eAAe,gBAAgB,CAAC,aAAa;UACnC;oBAET,eACC,oBAAC,UAAO,WAAU,kCAAkC,GAEpD,oBAAC,OAAI,WAAU,kCAAkC;WAE5C;UACL,GACM;QACd,oBAAC,gBAAc;WACN;QAEb;;MACE,EAEN,oBAAC;KAAI,WAAU;eACb,qBAAC;MAAiB;MAAU,WAAU;iBACnC,wBAAwB,aACvB,oBAAC,MAAM,WAAQ,WAAU,8BAA8B,EACvD;OAEK;MACL;KACD;IACF;GACH"}
@@ -1,7 +1,7 @@
1
- import * as react_jsx_runtime91 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime62 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/modules/auth/components/forget-password-page.client.d.ts
4
- declare function ForgetPasswordPage(): react_jsx_runtime91.JSX.Element;
4
+ declare function ForgetPasswordPage(): react_jsx_runtime62.JSX.Element;
5
5
  //#endregion
6
6
  export { ForgetPasswordPage };
7
7
  //# sourceMappingURL=forget-password-page.client.d.mts.map
@@ -2,18 +2,19 @@
2
2
 
3
3
  import { Icons } from "../../../components/common/icons.mjs";
4
4
  import { Button } from "../../../components/ui/button.mjs";
5
- import { authClient } from "../handler/client.client.mjs";
6
- import { Form as Form$1, FormControl, FormField, FormItem, FormMessage } from "../../../components/ui/form.client.mjs";
5
+ import { useAuthClient } from "../hooks/use-auth-client.mjs";
7
6
  import { Input } from "../../../components/ui/input.mjs";
7
+ import { Form as Form$1, FormControl, FormField, FormItem, FormMessage } from "../../../components/ui/form.client.mjs";
8
8
  import { forgotPasswordSchema } from "../lib/validators.mjs";
9
9
  import { jsx, jsxs } from "react/jsx-runtime";
10
10
  import React from "react";
11
- import { useForm } from "react-hook-form";
12
11
  import { toast } from "sonner";
12
+ import { useForm } from "react-hook-form";
13
13
  import { standardSchemaResolver } from "@hookform/resolvers/standard-schema";
14
14
 
15
15
  //#region src/modules/auth/components/forget-password-page.client.tsx
16
16
  function ForgetPasswordPage() {
17
+ const authClient = useAuthClient();
17
18
  const [isPending, startTransition$1] = React.useTransition();
18
19
  const form = useForm({
19
20
  resolver: standardSchemaResolver(forgotPasswordSchema),
@@ -1 +1 @@
1
- {"version":3,"file":"forget-password-page.client.mjs","names":["startTransition","Form"],"sources":["../../../../src/modules/auth/components/forget-password-page.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Icons } from \"@/components/common/icons\";\nimport { Button } from \"@/components/ui/button\";\nimport { Form, FormControl, FormField, FormItem, FormMessage } from \"@/components/ui/form.client\";\nimport { Input } from \"@/components/ui/input\";\nimport { standardSchemaResolver } from \"@hookform/resolvers/standard-schema\";\nimport React from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { toast } from \"sonner\";\nimport * as z from \"zod\";\nimport { authClient } from \"../handler/client.client\";\nimport { forgotPasswordSchema } from \"../lib/validators\";\n\nexport function ForgetPasswordPage() {\n const [isPending, startTransition] = React.useTransition();\n\n const form = useForm<z.infer<typeof forgotPasswordSchema>>({\n resolver: standardSchemaResolver(forgotPasswordSchema),\n defaultValues: { email: \"\" },\n disabled: isPending,\n });\n\n return (\n <div className=\"mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]\">\n <div className=\"flex flex-col space-y-2 text-center\">\n <h1 className=\"text-3xl font-semibold tracking-tight\">Wachtwoord vergeten</h1>\n <p className=\"text-muted-foreground text-sm\">\n Schrijf je email zodat we je een mail kunnen verzenden om je wachtwoord te herstellen.\n </p>\n </div>\n\n <Form {...form}>\n <form\n onSubmit={form.handleSubmit(({ email }) =>\n startTransition(async () => {\n await authClient.emailOtp.sendVerificationOtp({\n type: \"forget-password\",\n email,\n fetchOptions: {\n onSuccess: () => {\n toast.success(\"Succesvol verzonden\", {\n description:\n \"We hebben je een email verzonden om je wachtwoord te herstellen.\",\n });\n },\n onError: ({ error }) => {\n console.error(\"Error: \", error);\n toast.error(\"Er is iets misgegaan\");\n },\n },\n });\n }),\n )}\n className=\"space-y-6\"\n >\n <FormField\n control={form.control}\n name=\"email\"\n render={({ field }) => (\n <FormItem>\n <FormControl>\n <Input placeholder=\"email@example.be\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <Button disabled={form.formState.disabled} className=\"w-full\">\n {isPending && <Icons.spinner className=\"mr-2 h-4 w-4 animate-spin\" />}\n Verzenden\n </Button>\n </form>\n </Form>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;AAcA,SAAgB,qBAAqB;CACnC,MAAM,CAAC,WAAWA,qBAAmB,MAAM,eAAe;CAE1D,MAAM,OAAO,QAA8C;EACzD,UAAU,uBAAuB,qBAAqB;EACtD,eAAe,EAAE,OAAO,IAAI;EAC5B,UAAU;EACX,CAAC;AAEF,QACE,qBAAC;EAAI,WAAU;aACb,qBAAC;GAAI,WAAU;cACb,oBAAC;IAAG,WAAU;cAAwC;KAAwB,EAC9E,oBAAC;IAAE,WAAU;cAAgC;KAEzC;IACA,EAEN,oBAACC;GAAK,GAAI;aACR,qBAAC;IACC,UAAU,KAAK,cAAc,EAAE,YAC7BD,kBAAgB,YAAY;AAC1B,WAAM,WAAW,SAAS,oBAAoB;MAC5C,MAAM;MACN;MACA,cAAc;OACZ,iBAAiB;AACf,cAAM,QAAQ,uBAAuB,EACnC,aACE,oEACH,CAAC;;OAEJ,UAAU,EAAE,YAAY;AACtB,gBAAQ,MAAM,WAAW,MAAM;AAC/B,cAAM,MAAM,uBAAuB;;OAEtC;MACF,CAAC;MACF,CACH;IACD,WAAU;eAEV,oBAAC;KACC,SAAS,KAAK;KACd,MAAK;KACL,SAAS,EAAE,YACT,qBAAC,uBACC,oBAAC,yBACC,oBAAC;MAAM,aAAY;MAAmB,GAAI;OAAS,GACvC,EACd,oBAAC,gBAAc,IACN;MAEb,EAEF,qBAAC;KAAO,UAAU,KAAK,UAAU;KAAU,WAAU;gBAClD,aAAa,oBAAC,MAAM,WAAQ,WAAU,8BAA8B,EAAC;MAE/D;KACJ;IACF;GACH"}
1
+ {"version":3,"file":"forget-password-page.client.mjs","names":["startTransition","Form"],"sources":["../../../../src/modules/auth/components/forget-password-page.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Icons } from \"@/components/common/icons\";\nimport { Button } from \"@/components/ui/button\";\nimport { Form, FormControl, FormField, FormItem, FormMessage } from \"@/components/ui/form.client\";\nimport { Input } from \"@/components/ui/input\";\nimport { standardSchemaResolver } from \"@hookform/resolvers/standard-schema\";\nimport React from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { toast } from \"sonner\";\nimport * as z from \"zod\";\nimport { useAuthClient } from \"../hooks/use-auth-client\";\nimport { forgotPasswordSchema } from \"../lib/validators\";\n\nexport function ForgetPasswordPage() {\n const authClient = useAuthClient();\n const [isPending, startTransition] = React.useTransition();\n\n const form = useForm<z.infer<typeof forgotPasswordSchema>>({\n resolver: standardSchemaResolver(forgotPasswordSchema),\n defaultValues: { email: \"\" },\n disabled: isPending,\n });\n\n return (\n <div className=\"mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]\">\n <div className=\"flex flex-col space-y-2 text-center\">\n <h1 className=\"text-3xl font-semibold tracking-tight\">Wachtwoord vergeten</h1>\n <p className=\"text-muted-foreground text-sm\">\n Schrijf je email zodat we je een mail kunnen verzenden om je wachtwoord te herstellen.\n </p>\n </div>\n\n <Form {...form}>\n <form\n onSubmit={form.handleSubmit(({ email }) =>\n startTransition(async () => {\n await authClient.emailOtp.sendVerificationOtp({\n type: \"forget-password\",\n email,\n fetchOptions: {\n onSuccess: () => {\n toast.success(\"Succesvol verzonden\", {\n description:\n \"We hebben je een email verzonden om je wachtwoord te herstellen.\",\n });\n },\n onError: ({ error }) => {\n console.error(\"Error: \", error);\n toast.error(\"Er is iets misgegaan\");\n },\n },\n });\n }),\n )}\n className=\"space-y-6\"\n >\n <FormField\n control={form.control}\n name=\"email\"\n render={({ field }) => (\n <FormItem>\n <FormControl>\n <Input placeholder=\"email@example.be\" {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n\n <Button disabled={form.formState.disabled} className=\"w-full\">\n {isPending && <Icons.spinner className=\"mr-2 h-4 w-4 animate-spin\" />}\n Verzenden\n </Button>\n </form>\n </Form>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;AAcA,SAAgB,qBAAqB;CACnC,MAAM,aAAa,eAAe;CAClC,MAAM,CAAC,WAAWA,qBAAmB,MAAM,eAAe;CAE1D,MAAM,OAAO,QAA8C;EACzD,UAAU,uBAAuB,qBAAqB;EACtD,eAAe,EAAE,OAAO,IAAI;EAC5B,UAAU;EACX,CAAC;AAEF,QACE,qBAAC;EAAI,WAAU;aACb,qBAAC;GAAI,WAAU;cACb,oBAAC;IAAG,WAAU;cAAwC;KAAwB,EAC9E,oBAAC;IAAE,WAAU;cAAgC;KAEzC;IACA,EAEN,oBAACC;GAAK,GAAI;aACR,qBAAC;IACC,UAAU,KAAK,cAAc,EAAE,YAC7BD,kBAAgB,YAAY;AAC1B,WAAM,WAAW,SAAS,oBAAoB;MAC5C,MAAM;MACN;MACA,cAAc;OACZ,iBAAiB;AACf,cAAM,QAAQ,uBAAuB,EACnC,aACE,oEACH,CAAC;;OAEJ,UAAU,EAAE,YAAY;AACtB,gBAAQ,MAAM,WAAW,MAAM;AAC/B,cAAM,MAAM,uBAAuB;;OAEtC;MACF,CAAC;MACF,CACH;IACD,WAAU;eAEV,oBAAC;KACC,SAAS,KAAK;KACd,MAAK;KACL,SAAS,EAAE,YACT,qBAAC,uBACC,oBAAC,yBACC,oBAAC;MAAM,aAAY;MAAmB,GAAI;OAAS,GACvC,EACd,oBAAC,gBAAc,IACN;MAEb,EAEF,qBAAC;KAAO,UAAU,KAAK,UAAU;KAAU,WAAU;gBAClD,aAAa,oBAAC,MAAM,WAAQ,WAAU,8BAA8B,EAAC;MAE/D;KACJ;IACF;GACH"}
@@ -1,7 +1,7 @@
1
1
  import { TDatabaseSchema } from "../../config/db/types.mjs";
2
2
  import { TulipContext } from "../../config/lib/context.mjs";
3
3
  import "../../../config.mjs";
4
- import * as react_jsx_runtime96 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime9 from "react/jsx-runtime";
5
5
  import { PropsWithChildren } from "react";
6
6
 
7
7
  //#region src/modules/auth/components/guard-first-user.server.d.ts
@@ -12,7 +12,7 @@ declare function AuthGuardFirstUser<TSchema extends TDatabaseSchema>({
12
12
  children,
13
13
  db,
14
14
  login
15
- }: AuthGuardFirstUserProps<TSchema>): Promise<react_jsx_runtime96.JSX.Element>;
15
+ }: AuthGuardFirstUserProps<TSchema>): Promise<react_jsx_runtime9.JSX.Element>;
16
16
  //#endregion
17
17
  export { AuthGuardFirstUser };
18
18
  //# sourceMappingURL=guard-first-user.server.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard-first-user.server.d.mts","names":[],"sources":["../../../../src/modules/auth/components/guard-first-user.server.tsx"],"sourcesContent":[],"mappings":";;;;;;;KAMK,wCAAwC,mBAAmB,kBAC9D,KAAK,aAAa;;;iBAGE,mCAAmC;;;;GAItD,wBAAwB,WAAQ,QAAA,mBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"guard-first-user.server.d.mts","names":[],"sources":["../../../../src/modules/auth/components/guard-first-user.server.tsx"],"sourcesContent":[],"mappings":";;;;;;;KAMK,wCAAwC,mBAAmB,kBAC9D,KAAK,aAAa;;;iBAGE,mCAAmC;;;;GAItD,wBAAwB,WAAQ,QAAA,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,14 +1,15 @@
1
1
  import { TDatabaseSchema } from "../../config/db/types.mjs";
2
2
  import { TulipContext } from "../../config/lib/context.mjs";
3
3
  import "../../../config.mjs";
4
- import * as react_jsx_runtime97 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime10 from "react/jsx-runtime";
5
5
  import { PropsWithChildren } from "react";
6
+ import "server-only";
6
7
 
7
8
  //#region src/modules/auth/components/guard.server.d.ts
8
9
  declare function AuthGuard<TSchema extends TDatabaseSchema>({
9
10
  children,
10
11
  auth
11
- }: PropsWithChildren<Pick<TulipContext<TSchema>, "auth">>): Promise<react_jsx_runtime97.JSX.Element>;
12
+ }: PropsWithChildren<Pick<TulipContext<TSchema>, "auth">>): Promise<react_jsx_runtime10.JSX.Element>;
12
13
  //#endregion
13
14
  export { AuthGuard };
14
15
  //# sourceMappingURL=guard.server.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard.server.d.mts","names":[],"sources":["../../../../src/modules/auth/components/guard.server.tsx"],"sourcesContent":[],"mappings":";;;;;;;iBAOsB,0BAA0B;;;GAG7C,kBAAkB,KAAK,aAAa,qBAAkB,QAAA,mBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"guard.server.d.mts","names":[],"sources":["../../../../src/modules/auth/components/guard.server.tsx"],"sourcesContent":[],"mappings":";;;;;;;;iBASsB,0BAA0B;;;GAG7C,kBAAkB,KAAK,aAAa,qBAAkB,QAAA,mBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -3,6 +3,7 @@ import { HydrateClient } from "../../router/lib/query-client.server.mjs";
3
3
  import { getSession } from "../lib/helpers.server.mjs";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { redirect } from "next/navigation";
6
+ import "server-only";
6
7
 
7
8
  //#region src/modules/auth/components/guard.server.tsx
8
9
  async function AuthGuard({ children, auth }) {
@@ -1 +1 @@
1
- {"version":3,"file":"guard.server.mjs","names":[],"sources":["../../../../src/modules/auth/components/guard.server.tsx"],"sourcesContent":["import { TDatabaseSchema, TulipContext } from \"@/modules/config/entry\";\nimport { getQueryClient } from \"@/modules/router/lib/query-client\";\nimport { HydrateClient } from \"@/modules/router/lib/query-client.server\";\nimport { redirect } from \"next/navigation\";\nimport { PropsWithChildren } from \"react\";\nimport { getSession } from \"../lib/helpers.server\";\n\nexport async function AuthGuard<TSchema extends TDatabaseSchema>({\n children,\n auth,\n}: PropsWithChildren<Pick<TulipContext<TSchema>, \"auth\">>) {\n const session = await getSession({ auth });\n if (!session) redirect(\"/auth/login\");\n\n const queryClient = getQueryClient();\n queryClient.prefetchQuery({\n queryKey: [\"session\"],\n queryFn: async () => session,\n });\n\n return <HydrateClient>{children}</HydrateClient>;\n}\n"],"mappings":";;;;;;;AAOA,eAAsB,UAA2C,EAC/D,UACA,QACyD;CACzD,MAAM,UAAU,MAAM,WAAW,EAAE,MAAM,CAAC;AAC1C,KAAI,CAAC,QAAS,UAAS,cAAc;AAGrC,CADoB,gBAAgB,CACxB,cAAc;EACxB,UAAU,CAAC,UAAU;EACrB,SAAS,YAAY;EACtB,CAAC;AAEF,QAAO,oBAAC,iBAAe,WAAyB"}
1
+ {"version":3,"file":"guard.server.mjs","names":[],"sources":["../../../../src/modules/auth/components/guard.server.tsx"],"sourcesContent":["import \"server-only\";\n\nimport { TDatabaseSchema, TulipContext } from \"@/modules/config/entry\";\nimport { getQueryClient } from \"@/modules/router/lib/query-client\";\nimport { HydrateClient } from \"@/modules/router/lib/query-client.server\";\nimport { redirect } from \"next/navigation\";\nimport { PropsWithChildren } from \"react\";\nimport { getSession } from \"../lib/helpers.server\";\n\nexport async function AuthGuard<TSchema extends TDatabaseSchema>({\n children,\n auth,\n}: PropsWithChildren<Pick<TulipContext<TSchema>, \"auth\">>) {\n const session = await getSession({ auth });\n if (!session) redirect(\"/auth/login\");\n\n const queryClient = getQueryClient();\n queryClient.prefetchQuery({\n queryKey: [\"session\"],\n queryFn: async () => session,\n });\n\n return <HydrateClient>{children}</HydrateClient>;\n}\n"],"mappings":";;;;;;;;AASA,eAAsB,UAA2C,EAC/D,UACA,QACyD;CACzD,MAAM,UAAU,MAAM,WAAW,EAAE,MAAM,CAAC;AAC1C,KAAI,CAAC,QAAS,UAAS,cAAc;AAGrC,CADoB,gBAAgB,CACxB,cAAc;EACxB,UAAU,CAAC,UAAU;EACrB,SAAS,YAAY;EACtB,CAAC;AAEF,QAAO,oBAAC,iBAAe,WAAyB"}
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime92 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime63 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/modules/auth/components/login-page.client.d.ts
4
4
  type LoginPageProps = {
@@ -6,7 +6,7 @@ type LoginPageProps = {
6
6
  enablePasskey?: boolean;
7
7
  };
8
8
  };
9
- declare function LoginPage(props: LoginPageProps): react_jsx_runtime92.JSX.Element;
9
+ declare function LoginPage(props: LoginPageProps): react_jsx_runtime63.JSX.Element;
10
10
  //#endregion
11
11
  export { LoginPage };
12
12
  //# sourceMappingURL=login-page.client.d.mts.map
@@ -2,9 +2,9 @@
2
2
 
3
3
  import { Icons } from "../../../components/common/icons.mjs";
4
4
  import { Button } from "../../../components/ui/button.mjs";
5
- import { authClient } from "../handler/client.client.mjs";
6
- import { Form as Form$1, FormControl, FormField, FormItem, FormMessage } from "../../../components/ui/form.client.mjs";
5
+ import { useAuthClient } from "../hooks/use-auth-client.mjs";
7
6
  import { Input } from "../../../components/ui/input.mjs";
7
+ import { Form as Form$1, FormControl, FormField, FormItem, FormMessage } from "../../../components/ui/form.client.mjs";
8
8
  import { loginSchema } from "../lib/validators.mjs";
9
9
  import { Eye, EyeOff, FingerprintIcon } from "lucide-react";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -12,14 +12,15 @@ import { useState } from "react";
12
12
  import { useRouter } from "next/navigation";
13
13
  import Link from "next/link";
14
14
  import { useMutation } from "@tanstack/react-query";
15
+ import { toast } from "sonner";
15
16
  import { useForm } from "react-hook-form";
16
17
  import { parseAsString, useQueryState } from "nuqs";
17
- import { toast } from "sonner";
18
18
  import { standardSchemaResolver } from "@hookform/resolvers/standard-schema";
19
19
 
20
20
  //#region src/modules/auth/components/login-page.client.tsx
21
21
  function LoginPage(props) {
22
22
  const router = useRouter();
23
+ const authClient = useAuthClient();
23
24
  const [callbackURL] = useQueryState("callbackURL", parseAsString);
24
25
  const [showPassword, setShowPassword] = useState(false);
25
26
  const loginWithEmailMutation = useMutation({