feat(web): reset pin code (#20766)

This commit is contained in:
Jason Rasmussen
2025-08-07 15:07:31 -04:00
committed by GitHub
parent 1d4d8e7a9a
commit cfbc24579d
6 changed files with 112 additions and 18 deletions

View File

@@ -1,7 +1,9 @@
<script lang="ts">
import PinCodeChangeForm from '$lib/components/user-settings-page/PinCodeChangeForm.svelte';
import PinCodeCreateForm from '$lib/components/user-settings-page/PinCodeCreateForm.svelte';
import PinCodeResetModal from '$lib/modals/PinCodeResetModal.svelte';
import { getAuthStatus } from '@immich/sdk';
import { modalManager } from '@immich/ui';
import { onMount } from 'svelte';
import { fade } from 'svelte/transition';
@@ -11,15 +13,22 @@
const { pinCode } = await getAuthStatus();
hasPinCode = pinCode;
});
const handleResetPINCode = async () => {
const success = await modalManager.show(PinCodeResetModal, {});
if (success) {
hasPinCode = false;
}
};
</script>
<section class="my-4">
<section>
{#if hasPinCode}
<div in:fade={{ duration: 200 }} class="mt-6">
<PinCodeChangeForm />
<div in:fade={{ duration: 200 }}>
<PinCodeChangeForm onForgot={handleResetPINCode} />
</div>
{:else}
<div in:fade={{ duration: 200 }} class="mt-6">
<div in:fade={{ duration: 200 }}>
<PinCodeCreateForm onCreated={() => (hasPinCode = true)} />
</div>
{/if}