From f70ee3f3502899e68a797ab2104b7a56911ed81a Mon Sep 17 00:00:00 2001 From: Jason Rasmussen Date: Tue, 14 Jan 2025 09:14:28 -0500 Subject: [PATCH] refactor: auth pages (#15328) --- web/eslint.config.mjs | 1 + web/src/app.html | 6 + .../forms/admin-registration-form.svelte | 78 -------- .../forms/change-password-form.svelte | 64 ------- .../lib/components/forms/login-form.svelte | 177 ----------------- .../AuthPageLayout.svelte} | 2 +- web/src/routes/+layout.svelte | 26 +-- .../routes/auth/change-password/+page.svelte | 47 ++++- web/src/routes/auth/login/+page.svelte | 179 +++++++++++++++++- web/src/routes/auth/register/+page.svelte | 76 +++++++- 10 files changed, 294 insertions(+), 362 deletions(-) delete mode 100644 web/src/lib/components/forms/admin-registration-form.svelte delete mode 100644 web/src/lib/components/forms/change-password-form.svelte delete mode 100644 web/src/lib/components/forms/login-form.svelte rename web/src/lib/components/{shared-components/fullscreen-container.svelte => layouts/AuthPageLayout.svelte} (93%) diff --git a/web/eslint.config.mjs b/web/eslint.config.mjs index f3cf9d7f10..fc5e35ce6d 100644 --- a/web/eslint.config.mjs +++ b/web/eslint.config.mjs @@ -81,6 +81,7 @@ export default [ 'unicorn/prevent-abbreviations': 'off', 'unicorn/no-nested-ternary': 'off', 'unicorn/consistent-function-scoping': 'off', + 'unicorn/filename-case': 'off', 'unicorn/prefer-top-level-await': 'off', 'unicorn/import-style': 'off', 'svelte/button-has-type': 'error', diff --git a/web/src/app.html b/web/src/app.html index 6fd02dc9f8..c0ac3cfe6c 100644 --- a/web/src/app.html +++ b/web/src/app.html @@ -101,6 +101,12 @@ + +
diff --git a/web/src/lib/components/forms/admin-registration-form.svelte b/web/src/lib/components/forms/admin-registration-form.svelte deleted file mode 100644 index b4ecd56283..0000000000 --- a/web/src/lib/components/forms/admin-registration-form.svelte +++ /dev/null @@ -1,78 +0,0 @@ - - -
-
- - -
- -
- - -
- -
- - -
- -
- - -
- - {#if errorMessage} -

{errorMessage}

- {/if} - -
- -
- diff --git a/web/src/lib/components/forms/change-password-form.svelte b/web/src/lib/components/forms/change-password-form.svelte deleted file mode 100644 index 6f16781d9a..0000000000 --- a/web/src/lib/components/forms/change-password-form.svelte +++ /dev/null @@ -1,64 +0,0 @@ - - -
-
- - -
- -
- - -
- - {#if errorMessage} -

{errorMessage}

- {/if} - -
- -
-
diff --git a/web/src/lib/components/forms/login-form.svelte b/web/src/lib/components/forms/login-form.svelte deleted file mode 100644 index 6c1dcecba3..0000000000 --- a/web/src/lib/components/forms/login-form.svelte +++ /dev/null @@ -1,177 +0,0 @@ - - -{#if !oauthLoading && $featureFlags.passwordLogin} -
- {#if errorMessage} -

- {errorMessage} -

- {/if} - -
- - -
- -
- - -
- -
- -
-
-{/if} - -{#if $featureFlags.oauth} - {#if $featureFlags.passwordLogin} -
-
- - {$t('or')} - -
- {/if} -
- {#if oauthError} -

{oauthError}

- {/if} - -
-{/if} - -{#if !$featureFlags.passwordLogin && !$featureFlags.oauth} -

{$t('login_has_been_disabled')}

-{/if} diff --git a/web/src/lib/components/shared-components/fullscreen-container.svelte b/web/src/lib/components/layouts/AuthPageLayout.svelte similarity index 93% rename from web/src/lib/components/shared-components/fullscreen-container.svelte rename to web/src/lib/components/layouts/AuthPageLayout.svelte index 64ee41a225..c470f809a6 100644 --- a/web/src/lib/components/shared-components/fullscreen-container.svelte +++ b/web/src/lib/components/layouts/AuthPageLayout.svelte @@ -1,6 +1,6 @@ - + {#snippet message()}

{$t('hi_user', { values: { name: $user.name, email: $user.email } })} @@ -31,5 +44,23 @@

{/snippet} - -
+
+
+ + +
+ +
+ + +
+ + {#if errorMessage} +

{errorMessage}

+ {/if} + +
+ +
+
+ diff --git a/web/src/routes/auth/login/+page.svelte b/web/src/routes/auth/login/+page.svelte index 0ab506f5e3..63346a6abf 100644 --- a/web/src/routes/auth/login/+page.svelte +++ b/web/src/routes/auth/login/+page.svelte @@ -1,9 +1,17 @@ {#if $featureFlags.loaded} - + {#snippet message()}

@@ -22,10 +111,82 @@

{/snippet} - await goto(AppRoute.PHOTOS, { invalidateAll: true })} - onFirstLogin={async () => await goto(AppRoute.AUTH_CHANGE_PASSWORD)} - onOnboarding={async () => await goto(AppRoute.AUTH_ONBOARDING)} - /> -
+ {#if !oauthLoading && $featureFlags.passwordLogin} +
+ {#if errorMessage} +

+ {errorMessage} +

+ {/if} + +
+ + +
+ +
+ + +
+ +
+ +
+
+ {/if} + + {#if $featureFlags.oauth} + {#if $featureFlags.passwordLogin} +
+
+ + {$t('or')} + +
+ {/if} +
+ {#if oauthError} +

{oauthError}

+ {/if} + +
+ {/if} + + {#if !$featureFlags.passwordLogin && !$featureFlags.oauth} +

{$t('login_has_been_disabled')}

+ {/if} + {/if} diff --git a/web/src/routes/auth/register/+page.svelte b/web/src/routes/auth/register/+page.svelte index 2e55ba7435..43e28d5964 100644 --- a/web/src/routes/auth/register/+page.svelte +++ b/web/src/routes/auth/register/+page.svelte @@ -1,22 +1,86 @@ - + {#snippet message()}

{$t('admin.registration_description')}

{/snippet} - -
+
+
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ + {#if errorMessage} +

{errorMessage}

+ {/if} + +
+ +
+
+