0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2025-02-11 01:18:24 -05:00

fix(web): auth page padding (#15569)

This commit is contained in:
Jason Rasmussen 2025-01-23 16:38:34 -05:00 committed by GitHub
parent 071b271484
commit a1691ddc0f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 60 additions and 70 deletions

View file

@ -19,10 +19,8 @@
</VStack> </VStack>
</CardHeader> </CardHeader>
<div class="pb-4"> <CardBody class="p-8">
<CardBody> {@render children?.()}
{@render children?.()} </CardBody>
</CardBody>
</div>
</Card> </Card>
</section> </section>

View file

@ -34,29 +34,25 @@
</script> </script>
<AuthPageLayout title={data.meta.title}> <AuthPageLayout title={data.meta.title}>
<div class="m-4"> <form onsubmit={onSubmit} method="post" class="flex flex-col gap-4">
<Alert color="primary" size="small"> <Alert color="primary" size="small" class="mb-2">
<Stack gap={4}> <Stack gap={4}>
<Text>{$t('hi_user', { values: { name: $user.name, email: $user.email } })}</Text> <Text>{$t('hi_user', { values: { name: $user.name, email: $user.email } })}</Text>
<Text>{$t('change_password_description')}</Text> <Text>{$t('change_password_description')}</Text>
</Stack> </Stack>
</Alert> </Alert>
</div>
<form onsubmit={onSubmit} method="post" class="mx-4 mt-6"> <Field label={$t('new_password')} required>
<Stack gap={4} class="mt-4"> <PasswordInput bind:value={password} autocomplete="new-password" />
<Field label={$t('new_password')} required> </Field>
<PasswordInput bind:value={password} autocomplete="new-password" />
</Field>
<Field label={$t('confirm_password')} required> <Field label={$t('confirm_password')} required>
<PasswordInput bind:value={passwordConfirm} autocomplete="new-password" /> <PasswordInput bind:value={passwordConfirm} autocomplete="new-password" />
<HelperText color="danger">{errorMessage}</HelperText> <HelperText color="danger">{errorMessage}</HelperText>
</Field> </Field>
<div class="my-5 flex w-full"> <Button class="mt-2" type="submit" size="large" shape="round" fullWidth disabled={!valid}
<Button type="submit" size="large" shape="round" fullWidth disabled={!valid}>{$t('to_change_password')}</Button> >{$t('to_change_password')}</Button
</div> >
</Stack>
</form> </form>
</AuthPageLayout> </AuthPageLayout>

View file

@ -6,7 +6,7 @@
import { oauth } from '$lib/utils'; import { oauth } from '$lib/utils';
import { getServerErrorMessage, handleError } from '$lib/utils/handle-error'; import { getServerErrorMessage, handleError } from '$lib/utils/handle-error';
import { login } from '@immich/sdk'; import { login } from '@immich/sdk';
import { Alert, Button, Field, Input, PasswordInput } from '@immich/ui'; import { Alert, Button, Field, Input, PasswordInput, Stack } from '@immich/ui';
import { onMount } from 'svelte'; import { onMount } from 'svelte';
import { t } from 'svelte-i18n'; import { t } from 'svelte-i18n';
import type { PageData } from './$types'; import type { PageData } from './$types';
@ -101,43 +101,43 @@
{#if $featureFlags.loaded} {#if $featureFlags.loaded}
<AuthPageLayout title={data.meta.title}> <AuthPageLayout title={data.meta.title}>
{#if $serverConfig.loginPageMessage} <Stack gap={4}>
<Alert color="primary"> {#if $serverConfig.loginPageMessage}
<!-- eslint-disable-next-line svelte/no-at-html-tags --> <Alert color="primary" class="mb-6">
{@html $serverConfig.loginPageMessage} <!-- eslint-disable-next-line svelte/no-at-html-tags -->
</Alert> {@html $serverConfig.loginPageMessage}
{/if} </Alert>
{#if !oauthLoading && $featureFlags.passwordLogin}
<form {onsubmit} class="mt-5 flex flex-col gap-5 text-dark mx-4">
{#if errorMessage}
<Alert color="danger" title={errorMessage} closable />
{/if}
<Field label={$t('email')}>
<Input name="email" type="email" autocomplete="email" bind:value={email} />
</Field>
<Field label={$t('password')}>
<PasswordInput bind:value={password} autocomplete="current-password" />
</Field>
<Button type="submit" size="large" shape="round" fullWidth {loading} class="mt-6">{$t('to_login')}</Button>
</form>
{/if}
{#if $featureFlags.oauth}
{#if $featureFlags.passwordLogin}
<div class="inline-flex w-full items-center justify-center mt-4">
<hr class="my-4 h-px w-3/4 border-0 bg-gray-200 dark:bg-gray-600" />
<span
class="absolute left-1/2 -translate-x-1/2 bg-gray-50 px-3 font-medium text-gray-900 dark:bg-neutral-900 dark:text-white"
>
{$t('or').toUpperCase()}
</span>
</div>
{/if} {/if}
<div class="my-5 flex flex-col gap-5 mx-4">
{#if !oauthLoading && $featureFlags.passwordLogin}
<form {onsubmit} class="flex flex-col gap-4">
{#if errorMessage}
<Alert color="danger" title={errorMessage} closable />
{/if}
<Field label={$t('email')}>
<Input name="email" type="email" autocomplete="email" bind:value={email} />
</Field>
<Field label={$t('password')}>
<PasswordInput bind:value={password} autocomplete="current-password" />
</Field>
<Button type="submit" size="large" shape="round" fullWidth {loading} class="mt-6">{$t('to_login')}</Button>
</form>
{/if}
{#if $featureFlags.oauth}
{#if $featureFlags.passwordLogin}
<div class="inline-flex w-full items-center justify-center my-4">
<hr class="my-4 h-px w-3/4 border-0 bg-gray-200 dark:bg-gray-600" />
<span
class="absolute left-1/2 -translate-x-1/2 bg-gray-50 px-3 font-medium text-gray-900 dark:bg-neutral-900 dark:text-white"
>
{$t('or').toUpperCase()}
</span>
</div>
{/if}
{#if oauthError} {#if oauthError}
<Alert color="danger" title={oauthError} closable /> <Alert color="danger" title={oauthError} closable />
{/if} {/if}
@ -152,11 +152,11 @@
> >
{$serverConfig.oauthButtonText} {$serverConfig.oauthButtonText}
</Button> </Button>
</div> {/if}
{/if}
{#if !$featureFlags.passwordLogin && !$featureFlags.oauth} {#if !$featureFlags.passwordLogin && !$featureFlags.oauth}
<Alert color="warning" title={$t('login_has_been_disabled')} /> <Alert color="warning" title={$t('login_has_been_disabled')} />
{/if} {/if}
</Stack>
</AuthPageLayout> </AuthPageLayout>
{/if} {/if}

View file

@ -47,13 +47,11 @@
</script> </script>
<AuthPageLayout title={data.meta.title}> <AuthPageLayout title={data.meta.title}>
<div class="mx-4 mt-4"> <form onsubmit={onSubmit} method="post" class="flex flex-col gap-4">
<Alert color="primary"> <Alert color="primary" class="mb-2">
<Text>{$t('admin.registration_description')}</Text> <Text>{$t('admin.registration_description')}</Text>
</Alert> </Alert>
</div>
<form onsubmit={onSubmit} method="post" class="mt-5 flex flex-col gap-5 text-dark p-4">
<Field label={$t('admin_email')} required> <Field label={$t('admin_email')} required>
<Input bind:value={email} type="email" autocomplete="email" /> <Input bind:value={email} type="email" autocomplete="email" />
</Field> </Field>
@ -74,8 +72,6 @@
<Alert color="danger" title={errorMessage} size="medium" class="mt-4" /> <Alert color="danger" title={errorMessage} size="medium" class="mt-4" />
{/if} {/if}
<div class="my-5 flex w-full"> <Button class="mt-4" type="submit" size="giant" shape="round" fullWidth disabled={!valid}>{$t('sign_up')}</Button>
<Button type="submit" size="giant" shape="round" fullWidth disabled={!valid}>{$t('sign_up')}</Button>
</div>
</form> </form>
</AuthPageLayout> </AuthPageLayout>