@questpie/admin 3.2.4 → 3.2.6

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 (255) hide show
  1. package/dist/client/blocks/block-renderer.d.mts +2 -2
  2. package/dist/client/blocks/block-renderer.mjs +164 -339
  3. package/dist/client/components/actions/action-button.mjs +9 -9
  4. package/dist/client/components/actions/action-dialog.mjs +195 -493
  5. package/dist/client/components/actions/confirmation-dialog.mjs +44 -159
  6. package/dist/client/components/actions/header-actions.mjs +73 -165
  7. package/dist/client/components/admin-link.d.mts +2 -2
  8. package/dist/client/components/admin-link.mjs +40 -126
  9. package/dist/client/components/auth/auth-loading.mjs +9 -44
  10. package/dist/client/components/blocks/block-canvas.mjs +31 -95
  11. package/dist/client/components/blocks/block-editor-context.mjs +13 -57
  12. package/dist/client/components/blocks/block-editor-layout.mjs +72 -166
  13. package/dist/client/components/blocks/block-editor-provider.mjs +184 -245
  14. package/dist/client/components/blocks/block-fields-renderer.mjs +54 -229
  15. package/dist/client/components/blocks/block-insert-button.mjs +49 -165
  16. package/dist/client/components/blocks/block-item-menu.mjs +102 -301
  17. package/dist/client/components/blocks/block-item.mjs +136 -370
  18. package/dist/client/components/blocks/block-library-sidebar.mjs +103 -230
  19. package/dist/client/components/blocks/block-tree.mjs +12 -68
  20. package/dist/client/components/blocks/block-type-icon.mjs +14 -56
  21. package/dist/client/components/brand-logo.mjs +35 -149
  22. package/dist/client/components/component-renderer.mjs +42 -118
  23. package/dist/client/components/error-boundary.mjs +14 -58
  24. package/dist/client/components/fields/array-field.mjs +209 -521
  25. package/dist/client/components/fields/asset-preview-field.mjs +41 -141
  26. package/dist/client/components/fields/blocks-field/blocks-field.mjs +60 -156
  27. package/dist/client/components/fields/boolean-field.mjs +29 -59
  28. package/dist/client/components/fields/date-field.mjs +7 -37
  29. package/dist/client/components/fields/datetime-field.mjs +7 -38
  30. package/dist/client/components/fields/email-field.mjs +25 -54
  31. package/dist/client/components/fields/field-wrapper.mjs +30 -105
  32. package/dist/client/components/fields/json-field.mjs +94 -296
  33. package/dist/client/components/fields/locale-badge.mjs +6 -15
  34. package/dist/client/components/fields/number-field.mjs +27 -60
  35. package/dist/client/components/fields/object-array-field.mjs +283 -659
  36. package/dist/client/components/fields/object-field.mjs +165 -633
  37. package/dist/client/components/fields/relation/displays/cards-display.mjs +106 -220
  38. package/dist/client/components/fields/relation/displays/chips-display.mjs +78 -150
  39. package/dist/client/components/fields/relation/displays/grid-display.mjs +92 -186
  40. package/dist/client/components/fields/relation/displays/list-display.mjs +122 -239
  41. package/dist/client/components/fields/relation/displays/table-display.mjs +70 -244
  42. package/dist/client/components/fields/relation/relation-items-display.mjs +30 -126
  43. package/dist/client/components/fields/relation-field.mjs +10 -66
  44. package/dist/client/components/fields/relation-picker.mjs +18 -18
  45. package/dist/client/components/fields/relation-select.mjs +12 -12
  46. package/dist/client/components/fields/rich-text-editor/bubble-menu.mjs +80 -180
  47. package/dist/client/components/fields/rich-text-editor/image-popover.mjs +2 -2
  48. package/dist/client/components/fields/rich-text-editor/image-upload.mjs +13 -29
  49. package/dist/client/components/fields/rich-text-editor/index.mjs +195 -513
  50. package/dist/client/components/fields/rich-text-editor/slash-commands.mjs +61 -111
  51. package/dist/client/components/fields/rich-text-editor/table-controls.mjs +105 -415
  52. package/dist/client/components/fields/rich-text-editor/toolbar.mjs +256 -511
  53. package/dist/client/components/fields/rich-text-field.mjs +14 -53
  54. package/dist/client/components/fields/select-field.mjs +61 -72
  55. package/dist/client/components/fields/text-field.mjs +26 -59
  56. package/dist/client/components/fields/textarea-field.mjs +26 -58
  57. package/dist/client/components/fields/time-field.mjs +7 -35
  58. package/dist/client/components/fields/upload-field.mjs +47 -165
  59. package/dist/client/components/filter-builder/columns-tab.mjs +80 -280
  60. package/dist/client/components/filter-builder/filter-builder-sheet.mjs +197 -540
  61. package/dist/client/components/filter-builder/filters-tab.mjs +96 -386
  62. package/dist/client/components/filter-builder/saved-views-tab.mjs +133 -351
  63. package/dist/client/components/history-sidebar.mjs +285 -605
  64. package/dist/client/components/layout/field-layout-renderer.mjs +106 -254
  65. package/dist/client/components/locale-switcher.mjs +106 -228
  66. package/dist/client/components/media/media-grid.mjs +84 -273
  67. package/dist/client/components/media/media-picker-dialog.mjs +176 -476
  68. package/dist/client/components/preview/live-preview-mode.mjs +233 -458
  69. package/dist/client/components/preview/preview-pane.mjs +22 -22
  70. package/dist/client/components/primitives/asset-preview.mjs +290 -666
  71. package/dist/client/components/primitives/checkbox-input.mjs +9 -35
  72. package/dist/client/components/primitives/date-input.mjs +109 -327
  73. package/dist/client/components/primitives/dropzone.mjs +209 -336
  74. package/dist/client/components/primitives/field-select-control.mjs +12 -80
  75. package/dist/client/components/primitives/number-input.mjs +4 -4
  76. package/dist/client/components/primitives/select-multi.mjs +229 -572
  77. package/dist/client/components/primitives/select-single.mjs +179 -499
  78. package/dist/client/components/primitives/time-input.mjs +43 -117
  79. package/dist/client/components/primitives/toggle-input.mjs +9 -29
  80. package/dist/client/components/sheets/resource-sheet.mjs +61 -70
  81. package/dist/client/components/ui/accordion.mjs +35 -155
  82. package/dist/client/components/ui/alert.mjs +13 -68
  83. package/dist/client/components/ui/badge.mjs +9 -51
  84. package/dist/client/components/ui/button.mjs +8 -54
  85. package/dist/client/components/ui/card.mjs +37 -193
  86. package/dist/client/components/ui/checkbox.mjs +12 -68
  87. package/dist/client/components/ui/command.mjs +48 -219
  88. package/dist/client/components/ui/dialog.mjs +50 -262
  89. package/dist/client/components/ui/drawer.mjs +55 -259
  90. package/dist/client/components/ui/dropdown-menu.mjs +86 -427
  91. package/dist/client/components/ui/empty-state.mjs +28 -98
  92. package/dist/client/components/ui/field.mjs +73 -309
  93. package/dist/client/components/ui/input-group.mjs +42 -167
  94. package/dist/client/components/ui/input.mjs +7 -37
  95. package/dist/client/components/ui/kbd.mjs +6 -36
  96. package/dist/client/components/ui/label.mjs +7 -37
  97. package/dist/client/components/ui/popover.mjs +34 -169
  98. package/dist/client/components/ui/responsive-dialog.mjs +67 -273
  99. package/dist/client/components/ui/scroll-fade.mjs +63 -158
  100. package/dist/client/components/ui/search-input.mjs +33 -100
  101. package/dist/client/components/ui/select.mjs +72 -393
  102. package/dist/client/components/ui/separator.mjs +7 -38
  103. package/dist/client/components/ui/sheet.mjs +49 -269
  104. package/dist/client/components/ui/sidebar.mjs +171 -690
  105. package/dist/client/components/ui/skeleton.mjs +7 -38
  106. package/dist/client/components/ui/sonner.mjs +11 -42
  107. package/dist/client/components/ui/switch.mjs +9 -45
  108. package/dist/client/components/ui/table.mjs +48 -266
  109. package/dist/client/components/ui/tabs.mjs +26 -139
  110. package/dist/client/components/ui/textarea.mjs +6 -32
  111. package/dist/client/components/ui/tooltip.mjs +27 -129
  112. package/dist/client/components/widgets/chart-widget.mjs +174 -522
  113. package/dist/client/components/widgets/progress-widget.mjs +66 -172
  114. package/dist/client/components/widgets/quick-actions-widget.mjs +102 -261
  115. package/dist/client/components/widgets/recent-items-widget.mjs +69 -195
  116. package/dist/client/components/widgets/stats-widget.mjs +41 -175
  117. package/dist/client/components/widgets/table-widget.mjs +9 -9
  118. package/dist/client/components/widgets/timeline-widget.mjs +86 -226
  119. package/dist/client/components/widgets/value-widget.mjs +74 -381
  120. package/dist/client/components/widgets/widget-empty-state.mjs +26 -76
  121. package/dist/client/components/widgets/widget-skeletons.mjs +138 -421
  122. package/dist/client/contexts/focus-context.mjs +63 -146
  123. package/dist/client/hooks/typed-hooks.mjs +241 -701
  124. package/dist/client/hooks/use-action.mjs +62 -198
  125. package/dist/client/hooks/use-admin-config.mjs +5 -35
  126. package/dist/client/hooks/use-admin-preferences.mjs +16 -88
  127. package/dist/client/hooks/use-admin-routes.mjs +22 -56
  128. package/dist/client/hooks/use-audit-history.mjs +21 -69
  129. package/dist/client/hooks/use-brand.mjs +1 -9
  130. package/dist/client/hooks/use-collection-fields.mjs +17 -57
  131. package/dist/client/hooks/use-collection-meta.mjs +12 -44
  132. package/dist/client/hooks/use-collection-schema.mjs +10 -33
  133. package/dist/client/hooks/use-collection-validation.mjs +23 -53
  134. package/dist/client/hooks/use-collection.mjs +194 -614
  135. package/dist/client/hooks/use-current-user.mjs +0 -1
  136. package/dist/client/hooks/use-field-hooks.mjs +10 -10
  137. package/dist/client/hooks/use-field-options.mjs +61 -202
  138. package/dist/client/hooks/use-global-fields.mjs +14 -46
  139. package/dist/client/hooks/use-global-meta.mjs +9 -30
  140. package/dist/client/hooks/use-global-schema.mjs +9 -30
  141. package/dist/client/hooks/use-global.mjs +63 -219
  142. package/dist/client/hooks/use-locks.mjs +117 -325
  143. package/dist/client/hooks/use-media-query.mjs +16 -36
  144. package/dist/client/hooks/use-prefill-params.mjs +0 -1
  145. package/dist/client/hooks/use-questpie-query-options.mjs +12 -29
  146. package/dist/client/hooks/use-reactive-fields.mjs +1 -1
  147. package/dist/client/hooks/use-reactive-prop.mjs +65 -223
  148. package/dist/client/hooks/use-realtime-highlight.mjs +51 -114
  149. package/dist/client/hooks/use-saved-views.mjs +22 -103
  150. package/dist/client/hooks/use-search-param-toggle.mjs +28 -79
  151. package/dist/client/hooks/use-search.mjs +31 -143
  152. package/dist/client/hooks/use-server-actions.mjs +18 -50
  153. package/dist/client/hooks/use-server-validation.mjs +72 -166
  154. package/dist/client/hooks/use-server-widget-data.mjs +7 -33
  155. package/dist/client/hooks/use-setup-status.mjs +12 -25
  156. package/dist/client/hooks/use-sidebar-search-param.mjs +33 -78
  157. package/dist/client/hooks/use-transition-stage.mjs +8 -38
  158. package/dist/client/hooks/use-upload.mjs +54 -152
  159. package/dist/client/hooks/use-validation-error-map.mjs +6 -26
  160. package/dist/client/hooks/use-view-state.mjs +187 -437
  161. package/dist/client/i18n/hooks.mjs +65 -197
  162. package/dist/client/lib/render-profiler.mjs +14 -41
  163. package/dist/client/preview/block-scope-context.mjs +14 -36
  164. package/dist/client/preview/preview-banner.d.mts +2 -2
  165. package/dist/client/preview/preview-banner.mjs +42 -108
  166. package/dist/client/preview/preview-field.d.mts +4 -4
  167. package/dist/client/preview/preview-field.mjs +167 -348
  168. package/dist/client/preview/use-collection-preview.mjs +121 -215
  169. package/dist/client/runtime/content-locales-provider.mjs +31 -83
  170. package/dist/client/runtime/locale-scope.mjs +22 -63
  171. package/dist/client/runtime/provider.mjs +100 -255
  172. package/dist/client/runtime/translations-provider.mjs +41 -107
  173. package/dist/client/scope/picker.mjs +86 -321
  174. package/dist/client/scope/provider.mjs +8 -17
  175. package/dist/client/utils/build-field-definitions-from-schema.mjs +4 -2
  176. package/dist/client/views/auth/accept-invite-form.d.mts +2 -2
  177. package/dist/client/views/auth/accept-invite-form.mjs +121 -412
  178. package/dist/client/views/auth/auth-layout.d.mts +3 -3
  179. package/dist/client/views/auth/auth-layout.mjs +104 -284
  180. package/dist/client/views/auth/forgot-password-form.d.mts +2 -2
  181. package/dist/client/views/auth/forgot-password-form.mjs +94 -325
  182. package/dist/client/views/auth/invite-form.mjs +107 -442
  183. package/dist/client/views/auth/login-form.d.mts +2 -2
  184. package/dist/client/views/auth/login-form.mjs +116 -337
  185. package/dist/client/views/auth/reset-password-form.d.mts +2 -2
  186. package/dist/client/views/auth/reset-password-form.mjs +128 -453
  187. package/dist/client/views/auth/setup-form.d.mts +2 -2
  188. package/dist/client/views/auth/setup-form.mjs +140 -478
  189. package/dist/client/views/collection/auto-form-fields.mjs +243 -615
  190. package/dist/client/views/collection/bulk-action-toolbar.mjs +212 -379
  191. package/dist/client/views/collection/cells/complex-cells.mjs +183 -611
  192. package/dist/client/views/collection/cells/primitive-cells.mjs +116 -356
  193. package/dist/client/views/collection/cells/relation-cells.mjs +86 -233
  194. package/dist/client/views/collection/cells/shared/asset-thumbnail.mjs +142 -371
  195. package/dist/client/views/collection/cells/shared/relation-chip.mjs +35 -131
  196. package/dist/client/views/collection/cells/upload-cells.mjs +60 -177
  197. package/dist/client/views/collection/columns/build-columns.mjs +8 -48
  198. package/dist/client/views/collection/field-renderer.mjs +58 -182
  199. package/dist/client/views/collection/form-view.mjs +284 -518
  200. package/dist/client/views/collection/table-view.mjs +231 -463
  201. package/dist/client/views/collection/view-skeletons.mjs +112 -237
  202. package/dist/client/views/common/global-search.mjs +241 -560
  203. package/dist/client/views/dashboard/dashboard-grid.mjs +256 -775
  204. package/dist/client/views/dashboard/dashboard-widget.mjs +38 -126
  205. package/dist/client/views/dashboard/widget-card.mjs +61 -269
  206. package/dist/client/views/globals/global-form-view.mjs +477 -1301
  207. package/dist/client/views/layout/admin-layout-provider.mjs +28 -88
  208. package/dist/client/views/layout/admin-layout.mjs +83 -246
  209. package/dist/client/views/layout/admin-router.mjs +458 -1274
  210. package/dist/client/views/layout/admin-sidebar.mjs +510 -1292
  211. package/dist/client/views/layout/admin-theme.mjs +30 -64
  212. package/dist/client/views/layout/admin-view-layout.mjs +40 -144
  213. package/dist/client/views/pages/accept-invite-page.d.mts +2 -2
  214. package/dist/client/views/pages/accept-invite-page.mjs +95 -290
  215. package/dist/client/views/pages/dashboard-page.d.mts +2 -2
  216. package/dist/client/views/pages/dashboard-page.mjs +11 -57
  217. package/dist/client/views/pages/forgot-password-page.d.mts +2 -2
  218. package/dist/client/views/pages/forgot-password-page.mjs +31 -83
  219. package/dist/client/views/pages/invite-page.d.mts +2 -2
  220. package/dist/client/views/pages/invite-page.mjs +35 -90
  221. package/dist/client/views/pages/login-page.d.mts +2 -2
  222. package/dist/client/views/pages/login-page.mjs +41 -121
  223. package/dist/client/views/pages/reset-password-page.d.mts +2 -2
  224. package/dist/client/views/pages/reset-password-page.mjs +46 -173
  225. package/dist/client/views/pages/setup-page.d.mts +2 -2
  226. package/dist/client/views/pages/setup-page.mjs +33 -95
  227. package/dist/components/rich-text/rich-text-renderer.mjs +9 -33
  228. package/dist/server/adapters/index.d.mts +2 -0
  229. package/dist/server/adapters/nextjs.d.mts +1 -0
  230. package/dist/server/auth-helpers.d.mts +1 -0
  231. package/dist/server/modules/admin/.generated/module.d.mts +1 -0
  232. package/dist/server/modules/admin/collections/account.d.mts +46 -46
  233. package/dist/server/modules/admin/collections/admin-locks.d.mts +50 -50
  234. package/dist/server/modules/admin/collections/admin-preferences.d.mts +39 -39
  235. package/dist/server/modules/admin/collections/admin-saved-views.d.mts +47 -47
  236. package/dist/server/modules/admin/collections/apikey.d.mts +68 -68
  237. package/dist/server/modules/admin/collections/assets.d.mts +39 -39
  238. package/dist/server/modules/admin/collections/session.d.mts +42 -42
  239. package/dist/server/modules/admin/collections/user.d.mts +62 -62
  240. package/dist/server/modules/admin/collections/verification.d.mts +23 -23
  241. package/dist/server/modules/admin/index.d.mts +20 -19
  242. package/dist/server/modules/admin/routes/admin-config.d.mts +2 -2
  243. package/dist/server/modules/admin/routes/execute-action.d.mts +9 -9
  244. package/dist/server/modules/admin/routes/locales.d.mts +2 -2
  245. package/dist/server/modules/admin/routes/preview.d.mts +11 -11
  246. package/dist/server/modules/admin/routes/reactive.d.mts +9 -9
  247. package/dist/server/modules/admin/routes/setup.d.mts +7 -7
  248. package/dist/server/modules/admin/routes/translations.d.mts +4 -4
  249. package/dist/server/modules/admin/routes/widget-data.d.mts +5 -5
  250. package/dist/server/modules/admin-preferences/collections/saved-views.d.mts +45 -45
  251. package/dist/server/modules/audit/.generated/module.d.mts +6 -6
  252. package/dist/server/modules/audit/collections/audit-log.d.mts +78 -78
  253. package/dist/server/modules/audit/jobs/audit-cleanup.d.mts +2 -2
  254. package/dist/server.d.mts +2 -0
  255. package/package.json +3 -5
@@ -4,7 +4,6 @@ import { Button } from "../../components/ui/button.mjs";
4
4
  import { Input } from "../../components/ui/input.mjs";
5
5
  import { Field, FieldContent, FieldError, FieldGroup, FieldLabel } from "../../components/ui/field.mjs";
6
6
  import { Alert, AlertDescription } from "../../components/ui/alert.mjs";
7
- import { c } from "react/compiler-runtime";
8
7
  import { Icon } from "@iconify/react";
9
8
  import "react";
10
9
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -42,345 +41,125 @@ import { useForm } from "react-hook-form";
42
41
  * }
43
42
  * ```
44
43
  */
45
- function LoginForm(t0) {
46
- const $ = c(86);
47
- const { onSubmit, onSignUpClick, onForgotPasswordClick, showRememberMe: t1, showSignUp: t2, showForgotPassword: t3, defaultValues, className, error, minPasswordLength: t4 } = t0;
48
- const showRememberMe = t1 === void 0 ? false : t1;
49
- const showSignUp = t2 === void 0 ? true : t2;
50
- const showForgotPassword = t3 === void 0 ? true : t3;
51
- const minPasswordLength = t4 === void 0 ? 8 : t4;
44
+ function LoginForm({ onSubmit, onSignUpClick, onForgotPasswordClick, showRememberMe = false, showSignUp = true, showForgotPassword = true, defaultValues, className, error, minPasswordLength = 8 }) {
52
45
  const { t } = useTranslation();
53
- let t5;
54
- if ($[0] !== defaultValues) {
55
- t5 = { defaultValues: {
56
- email: "",
57
- password: "",
58
- rememberMe: false,
59
- ...defaultValues
60
- } };
61
- $[0] = defaultValues;
62
- $[1] = t5;
63
- } else t5 = $[1];
64
- const { register, handleSubmit, formState: t6 } = useForm(t5);
65
- const { errors, isSubmitting } = t6;
66
- let t7;
67
- if ($[2] !== onSubmit) {
68
- t7 = async (values) => {
46
+ const { register, handleSubmit, formState: { errors, isSubmitting } } = useForm({ defaultValues: {
47
+ email: "",
48
+ password: "",
49
+ rememberMe: false,
50
+ ...defaultValues
51
+ } });
52
+ return /* @__PURE__ */ jsxs("form", {
53
+ onSubmit: handleSubmit(async (values) => {
69
54
  await onSubmit(values);
70
- };
71
- $[2] = onSubmit;
72
- $[3] = t7;
73
- } else t7 = $[3];
74
- let t8;
75
- if ($[4] !== handleSubmit || $[5] !== t7) {
76
- t8 = handleSubmit(t7);
77
- $[4] = handleSubmit;
78
- $[5] = t7;
79
- $[6] = t8;
80
- } else t8 = $[6];
81
- const handleFormSubmit = t8;
82
- let t9;
83
- if ($[7] !== className) {
84
- t9 = cn("qa-login-form space-y-4", className);
85
- $[7] = className;
86
- $[8] = t9;
87
- } else t9 = $[8];
88
- const t10 = !!errors.email;
89
- let t11;
90
- if ($[9] !== t) {
91
- t11 = t("auth.email");
92
- $[9] = t;
93
- $[10] = t11;
94
- } else t11 = $[10];
95
- let t12;
96
- if ($[11] !== t11) {
97
- t12 = /* @__PURE__ */ jsx(FieldLabel, {
98
- htmlFor: "email",
99
- children: t11
100
- });
101
- $[11] = t11;
102
- $[12] = t12;
103
- } else t12 = $[12];
104
- let t13;
105
- if ($[13] === Symbol.for("react.memo_cache_sentinel")) {
106
- t13 = /* @__PURE__ */ jsx(Icon, {
107
- icon: "ph:envelope-duotone",
108
- className: "text-muted-foreground absolute top-1/2 left-2 size-4 -translate-y-1/2"
109
- });
110
- $[13] = t13;
111
- } else t13 = $[13];
112
- let t14;
113
- if ($[14] !== t) {
114
- t14 = t("auth.emailPlaceholder");
115
- $[14] = t;
116
- $[15] = t14;
117
- } else t14 = $[15];
118
- const t15 = !!errors.email;
119
- let t16;
120
- if ($[16] !== register || $[17] !== t) {
121
- let t17$1;
122
- if ($[19] === Symbol.for("react.memo_cache_sentinel")) {
123
- t17$1 = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
124
- $[19] = t17$1;
125
- } else t17$1 = $[19];
126
- t16 = register("email", {
127
- required: t("auth.emailRequired"),
128
- pattern: {
129
- value: t17$1,
130
- message: t("auth.invalidEmail")
131
- }
132
- });
133
- $[16] = register;
134
- $[17] = t;
135
- $[18] = t16;
136
- } else t16 = $[18];
137
- let t17;
138
- if ($[20] !== t14 || $[21] !== t15 || $[22] !== t16) {
139
- t17 = /* @__PURE__ */ jsxs("div", {
140
- className: "relative",
141
- children: [t13, /* @__PURE__ */ jsx(Input, {
142
- id: "email",
143
- type: "email",
144
- placeholder: t14,
145
- className: "pl-8",
146
- autoComplete: "email",
147
- "aria-invalid": t15,
148
- ...t16
149
- })]
150
- });
151
- $[20] = t14;
152
- $[21] = t15;
153
- $[22] = t16;
154
- $[23] = t17;
155
- } else t17 = $[23];
156
- const t18 = errors.email?.message;
157
- let t19;
158
- if ($[24] !== t18) {
159
- t19 = /* @__PURE__ */ jsx(FieldError, { children: t18 });
160
- $[24] = t18;
161
- $[25] = t19;
162
- } else t19 = $[25];
163
- let t20;
164
- if ($[26] !== t17 || $[27] !== t19) {
165
- t20 = /* @__PURE__ */ jsxs(FieldContent, { children: [t17, t19] });
166
- $[26] = t17;
167
- $[27] = t19;
168
- $[28] = t20;
169
- } else t20 = $[28];
170
- let t21;
171
- if ($[29] !== t10 || $[30] !== t12 || $[31] !== t20) {
172
- t21 = /* @__PURE__ */ jsxs(Field, {
173
- "data-invalid": t10,
174
- children: [t12, t20]
175
- });
176
- $[29] = t10;
177
- $[30] = t12;
178
- $[31] = t20;
179
- $[32] = t21;
180
- } else t21 = $[32];
181
- const t22 = !!errors.password;
182
- let t23;
183
- if ($[33] !== t) {
184
- t23 = t("auth.password");
185
- $[33] = t;
186
- $[34] = t23;
187
- } else t23 = $[34];
188
- let t24;
189
- if ($[35] !== t23) {
190
- t24 = /* @__PURE__ */ jsx(FieldLabel, {
191
- htmlFor: "password",
192
- children: t23
193
- });
194
- $[35] = t23;
195
- $[36] = t24;
196
- } else t24 = $[36];
197
- let t25;
198
- if ($[37] === Symbol.for("react.memo_cache_sentinel")) {
199
- t25 = /* @__PURE__ */ jsx(Icon, {
200
- icon: "ph:lock-duotone",
201
- className: "text-muted-foreground absolute top-1/2 left-2 size-4 -translate-y-1/2"
202
- });
203
- $[37] = t25;
204
- } else t25 = $[37];
205
- let t26;
206
- if ($[38] !== t) {
207
- t26 = t("auth.passwordPlaceholder");
208
- $[38] = t;
209
- $[39] = t26;
210
- } else t26 = $[39];
211
- const t27 = !!errors.password;
212
- let t28;
213
- if ($[40] !== minPasswordLength || $[41] !== register || $[42] !== t) {
214
- t28 = register("password", {
215
- required: t("auth.passwordRequired"),
216
- minLength: {
217
- value: minPasswordLength,
218
- message: t("auth.passwordMinLength", { min: minPasswordLength })
219
- }
220
- });
221
- $[40] = minPasswordLength;
222
- $[41] = register;
223
- $[42] = t;
224
- $[43] = t28;
225
- } else t28 = $[43];
226
- let t29;
227
- if ($[44] !== t26 || $[45] !== t27 || $[46] !== t28) {
228
- t29 = /* @__PURE__ */ jsxs("div", {
229
- className: "relative",
230
- children: [t25, /* @__PURE__ */ jsx(Input, {
231
- id: "password",
232
- type: "password",
233
- placeholder: t26,
234
- className: "pl-8",
235
- autoComplete: "current-password",
236
- "aria-invalid": t27,
237
- ...t28
238
- })]
239
- });
240
- $[44] = t26;
241
- $[45] = t27;
242
- $[46] = t28;
243
- $[47] = t29;
244
- } else t29 = $[47];
245
- const t30 = errors.password?.message;
246
- let t31;
247
- if ($[48] !== t30) {
248
- t31 = /* @__PURE__ */ jsx(FieldError, { children: t30 });
249
- $[48] = t30;
250
- $[49] = t31;
251
- } else t31 = $[49];
252
- let t32;
253
- if ($[50] !== t29 || $[51] !== t31) {
254
- t32 = /* @__PURE__ */ jsxs(FieldContent, { children: [t29, t31] });
255
- $[50] = t29;
256
- $[51] = t31;
257
- $[52] = t32;
258
- } else t32 = $[52];
259
- let t33;
260
- if ($[53] !== t22 || $[54] !== t24 || $[55] !== t32) {
261
- t33 = /* @__PURE__ */ jsxs(Field, {
262
- "data-invalid": t22,
263
- children: [t24, t32]
264
- });
265
- $[53] = t22;
266
- $[54] = t24;
267
- $[55] = t32;
268
- $[56] = t33;
269
- } else t33 = $[56];
270
- let t34;
271
- if ($[57] !== onForgotPasswordClick || $[58] !== register || $[59] !== showForgotPassword || $[60] !== showRememberMe || $[61] !== t) {
272
- t34 = (showRememberMe || showForgotPassword) && /* @__PURE__ */ jsxs("div", {
273
- className: "flex items-center justify-between",
274
- children: [showRememberMe && /* @__PURE__ */ jsxs("label", {
275
- className: "text-muted-foreground flex items-center gap-2 text-xs",
276
- children: [/* @__PURE__ */ jsx("input", {
277
- type: "checkbox",
278
- className: "border-border accent-foreground",
279
- ...register("rememberMe")
280
- }), t("auth.rememberMe")]
281
- }), showForgotPassword && /* @__PURE__ */ jsx(Button, {
282
- type: "button",
283
- variant: "link",
284
- size: "sm",
285
- onClick: onForgotPasswordClick,
286
- className: "h-auto p-0 text-xs",
287
- children: t("auth.forgotPassword")
288
- })]
289
- });
290
- $[57] = onForgotPasswordClick;
291
- $[58] = register;
292
- $[59] = showForgotPassword;
293
- $[60] = showRememberMe;
294
- $[61] = t;
295
- $[62] = t34;
296
- } else t34 = $[62];
297
- let t35;
298
- if ($[63] !== t21 || $[64] !== t33 || $[65] !== t34) {
299
- t35 = /* @__PURE__ */ jsxs(FieldGroup, { children: [
300
- t21,
301
- t33,
302
- t34
303
- ] });
304
- $[63] = t21;
305
- $[64] = t33;
306
- $[65] = t34;
307
- $[66] = t35;
308
- } else t35 = $[66];
309
- let t36;
310
- if ($[67] !== error) {
311
- t36 = error && /* @__PURE__ */ jsxs(Alert, {
312
- variant: "destructive",
313
- children: [/* @__PURE__ */ jsx(Icon, { icon: "ph:warning-circle" }), /* @__PURE__ */ jsx(AlertDescription, { children: error })]
314
- });
315
- $[67] = error;
316
- $[68] = t36;
317
- } else t36 = $[68];
318
- let t37;
319
- if ($[69] !== isSubmitting || $[70] !== t) {
320
- t37 = isSubmitting ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Icon, {
321
- icon: "ph:spinner-gap-bold",
322
- className: "animate-spin"
323
- }), t("auth.signingIn")] }) : t("auth.signIn");
324
- $[69] = isSubmitting;
325
- $[70] = t;
326
- $[71] = t37;
327
- } else t37 = $[71];
328
- let t38;
329
- if ($[72] !== isSubmitting || $[73] !== t37) {
330
- t38 = /* @__PURE__ */ jsx(Button, {
331
- type: "submit",
332
- className: "w-full",
333
- size: "lg",
334
- disabled: isSubmitting,
335
- children: t37
336
- });
337
- $[72] = isSubmitting;
338
- $[73] = t37;
339
- $[74] = t38;
340
- } else t38 = $[74];
341
- let t39;
342
- if ($[75] !== onSignUpClick || $[76] !== showSignUp || $[77] !== t) {
343
- t39 = showSignUp && /* @__PURE__ */ jsxs("p", {
344
- className: "text-muted-foreground text-center text-xs",
345
- children: [
346
- t("auth.dontHaveAccount"),
347
- " ",
348
- /* @__PURE__ */ jsx(Button, {
349
- type: "button",
350
- variant: "link",
351
- size: "sm",
352
- onClick: onSignUpClick,
353
- className: "h-auto p-0 text-xs",
354
- children: t("auth.signUp")
55
+ }),
56
+ className: cn("qa-login-form space-y-4", className),
57
+ children: [
58
+ /* @__PURE__ */ jsxs(FieldGroup, { children: [
59
+ /* @__PURE__ */ jsxs(Field, {
60
+ "data-invalid": !!errors.email,
61
+ children: [/* @__PURE__ */ jsx(FieldLabel, {
62
+ htmlFor: "email",
63
+ children: t("auth.email")
64
+ }), /* @__PURE__ */ jsxs(FieldContent, { children: [/* @__PURE__ */ jsxs("div", {
65
+ className: "relative",
66
+ children: [/* @__PURE__ */ jsx(Icon, {
67
+ icon: "ph:envelope-duotone",
68
+ className: "text-muted-foreground absolute top-1/2 left-2 size-4 -translate-y-1/2"
69
+ }), /* @__PURE__ */ jsx(Input, {
70
+ id: "email",
71
+ type: "email",
72
+ placeholder: t("auth.emailPlaceholder"),
73
+ className: "pl-8",
74
+ autoComplete: "email",
75
+ "aria-invalid": !!errors.email,
76
+ ...register("email", {
77
+ required: t("auth.emailRequired"),
78
+ pattern: {
79
+ value: /^[^\s@]+@[^\s@]+\.[^\s@]+$/,
80
+ message: t("auth.invalidEmail")
81
+ }
82
+ })
83
+ })]
84
+ }), /* @__PURE__ */ jsx(FieldError, { children: errors.email?.message })] })]
85
+ }),
86
+ /* @__PURE__ */ jsxs(Field, {
87
+ "data-invalid": !!errors.password,
88
+ children: [/* @__PURE__ */ jsx(FieldLabel, {
89
+ htmlFor: "password",
90
+ children: t("auth.password")
91
+ }), /* @__PURE__ */ jsxs(FieldContent, { children: [/* @__PURE__ */ jsxs("div", {
92
+ className: "relative",
93
+ children: [/* @__PURE__ */ jsx(Icon, {
94
+ icon: "ph:lock-duotone",
95
+ className: "text-muted-foreground absolute top-1/2 left-2 size-4 -translate-y-1/2"
96
+ }), /* @__PURE__ */ jsx(Input, {
97
+ id: "password",
98
+ type: "password",
99
+ placeholder: t("auth.passwordPlaceholder"),
100
+ className: "pl-8",
101
+ autoComplete: "current-password",
102
+ "aria-invalid": !!errors.password,
103
+ ...register("password", {
104
+ required: t("auth.passwordRequired"),
105
+ minLength: {
106
+ value: minPasswordLength,
107
+ message: t("auth.passwordMinLength", { min: minPasswordLength })
108
+ }
109
+ })
110
+ })]
111
+ }), /* @__PURE__ */ jsx(FieldError, { children: errors.password?.message })] })]
112
+ }),
113
+ (showRememberMe || showForgotPassword) && /* @__PURE__ */ jsxs("div", {
114
+ className: "flex items-center justify-between",
115
+ children: [showRememberMe && /* @__PURE__ */ jsxs("label", {
116
+ className: "text-muted-foreground flex items-center gap-2 text-xs",
117
+ children: [/* @__PURE__ */ jsx("input", {
118
+ type: "checkbox",
119
+ className: "border-border accent-foreground",
120
+ ...register("rememberMe")
121
+ }), t("auth.rememberMe")]
122
+ }), showForgotPassword && /* @__PURE__ */ jsx(Button, {
123
+ type: "button",
124
+ variant: "link",
125
+ size: "sm",
126
+ onClick: onForgotPasswordClick,
127
+ className: "h-auto p-0 text-xs",
128
+ children: t("auth.forgotPassword")
129
+ })]
355
130
  })
356
- ]
357
- });
358
- $[75] = onSignUpClick;
359
- $[76] = showSignUp;
360
- $[77] = t;
361
- $[78] = t39;
362
- } else t39 = $[78];
363
- let t40;
364
- if ($[79] !== handleFormSubmit || $[80] !== t35 || $[81] !== t36 || $[82] !== t38 || $[83] !== t39 || $[84] !== t9) {
365
- t40 = /* @__PURE__ */ jsxs("form", {
366
- onSubmit: handleFormSubmit,
367
- className: t9,
368
- children: [
369
- t35,
370
- t36,
371
- t38,
372
- t39
373
- ]
374
- });
375
- $[79] = handleFormSubmit;
376
- $[80] = t35;
377
- $[81] = t36;
378
- $[82] = t38;
379
- $[83] = t39;
380
- $[84] = t9;
381
- $[85] = t40;
382
- } else t40 = $[85];
383
- return t40;
131
+ ] }),
132
+ error && /* @__PURE__ */ jsxs(Alert, {
133
+ variant: "destructive",
134
+ children: [/* @__PURE__ */ jsx(Icon, { icon: "ph:warning-circle" }), /* @__PURE__ */ jsx(AlertDescription, { children: error })]
135
+ }),
136
+ /* @__PURE__ */ jsx(Button, {
137
+ type: "submit",
138
+ className: "w-full",
139
+ size: "lg",
140
+ disabled: isSubmitting,
141
+ children: isSubmitting ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Icon, {
142
+ icon: "ph:spinner-gap-bold",
143
+ className: "animate-spin"
144
+ }), t("auth.signingIn")] }) : t("auth.signIn")
145
+ }),
146
+ showSignUp && /* @__PURE__ */ jsxs("p", {
147
+ className: "text-muted-foreground text-center text-xs",
148
+ children: [
149
+ t("auth.dontHaveAccount"),
150
+ " ",
151
+ /* @__PURE__ */ jsx(Button, {
152
+ type: "button",
153
+ variant: "link",
154
+ size: "sm",
155
+ onClick: onSignUpClick,
156
+ className: "h-auto p-0 text-xs",
157
+ children: t("auth.signUp")
158
+ })
159
+ ]
160
+ })
161
+ ]
162
+ });
384
163
  }
385
164
 
386
165
  //#endregion
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime6 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime5 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/client/views/auth/reset-password-form.d.ts
4
4
  /**
@@ -60,6 +60,6 @@ declare function ResetPasswordForm({
60
60
  minPasswordLength,
61
61
  className,
62
62
  error
63
- }: ResetPasswordFormProps): react_jsx_runtime6.JSX.Element;
63
+ }: ResetPasswordFormProps): react_jsx_runtime5.JSX.Element;
64
64
  //#endregion
65
65
  export { ResetPasswordForm };