2024-07-31 10:29:46 +02:00
|
|
|
<script lang="ts">
|
|
|
|
|
import { enhance } from "$app/forms";
|
2024-08-02 16:36:21 +02:00
|
|
|
import SuccessOrError from "$lib/components/SuccessOrError.svelte";
|
2024-08-05 14:38:44 +02:00
|
|
|
import type { ActionData } from "./$types";
|
2024-09-07 14:28:23 +02:00
|
|
|
import LoadingSpinner from "$lib/components/LoadingSpinner.svelte";
|
2024-07-31 10:29:46 +02:00
|
|
|
|
2024-08-20 19:17:05 +02:00
|
|
|
const { form }: { form: ActionData } = $props();
|
2024-09-07 14:28:23 +02:00
|
|
|
|
|
|
|
|
let sending = $state(false);
|
2024-07-31 10:29:46 +02:00
|
|
|
</script>
|
|
|
|
|
|
2024-08-02 16:36:21 +02:00
|
|
|
<SuccessOrError success={form?.success} message={form?.message} />
|
2024-07-31 10:29:46 +02:00
|
|
|
|
2024-09-07 14:28:23 +02:00
|
|
|
{#if sending}
|
|
|
|
|
<LoadingSpinner />
|
|
|
|
|
{/if}
|
|
|
|
|
|
|
|
|
|
<form
|
|
|
|
|
method="POST"
|
|
|
|
|
use:enhance={() => {
|
|
|
|
|
sending = true;
|
|
|
|
|
return async ({ update }) => {
|
|
|
|
|
await update();
|
|
|
|
|
sending = false;
|
|
|
|
|
};
|
|
|
|
|
}}
|
|
|
|
|
>
|
2024-07-31 10:29:46 +02:00
|
|
|
<label>
|
2024-08-01 18:09:35 +02:00
|
|
|
Username:
|
2024-07-31 10:29:46 +02:00
|
|
|
<input type="text" name="username" required />
|
|
|
|
|
</label>
|
|
|
|
|
<label>
|
2024-08-01 18:09:35 +02:00
|
|
|
Password:
|
2024-07-31 10:29:46 +02:00
|
|
|
<input type="password" name="password" required />
|
|
|
|
|
</label>
|
|
|
|
|
|
|
|
|
|
<button type="submit">Submit</button>
|
|
|
|
|
</form>
|