1
0
Fork 0
Anvil/src/lib/components/organisms/LoginForm.svelte
André Jaenisch 1e52798e6a
chore: introduce REUSE
This required adding annotation to the whole project.
I need to double-check whether I have the license banner of AGPL in
place everywhere.

Signed-off-by: André Jaenisch <andre.jaenisch@posteo.de>
2024-03-06 16:03:12 +01:00

74 lines
2.2 KiB
Svelte

<!--
LoginForm organism.
Copyright (C) 2024 André Jaenisch
SPDX-FileCopyrightText: 2024 André Jaenisch
SPDX-License-Identifier: AGPL-3.0-or-later
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<script lang="ts">
import { _ } from 'svelte-i18n';
/**
* Form handling by SvelteKit
*/
export let form: unknown = null;
/**
* Translation keys to enable reuse
*/
export let i18n: null;
/**
* Available servers for signin
*/
export let servers: Array = [];
/**
* Allow for linking stories in Storybook.
*/
export let sb = '';
</script>
<form class="space-y-4" name="login" method="POST" action="?/login">
{#if form?.missing}
<p class="error">{$_(i18n.validation.missing)}</p>
{/if}
{#if form?.incorrect}
<p class="error">{$_(i18n.validation.incorrect)}</p>
{/if}
<label class="label">
<span>{$_(i18n.fields.server.label)}</span>
<select class="select" name="server">
<option value="1">fig.fr33domlover.site</option>
<option value="2">grape.fr33domlover.site</option>
<option value="3">walnut.fr33domlover.site</option>
</select>
</label>
<label class="label">
<span>{$_(i18n.fields.account.label)}</span>
<input class="input" name="account" type="text" value={form?.account ?? ''} />
</label>
<label class="label">
<span>{$_(i18n.fields.passphrase.label)}</span>
<input
class="input"
name="passphrase"
type="password"
placeholder={$_(i18n.fields.passphrase.placeholder)}
/>
</label>
<div class="text-right">
<a href="/" class="btn btn-bg-initial">
{$_(i18n.reset)}
</a>
</div>
<button type="submit" class="w-full btn variant-filled-primary" data-sb-kind={sb}>
{$_(i18n.submit)}
</button>
</form>