mirror of
https://github.com/danbulant/Portfolio
synced 2026-05-24 12:35:31 +00:00
feat: add password textfield
This commit is contained in:
parent
f238679398
commit
5096f8ddca
2 changed files with 38 additions and 13 deletions
30
frontend/src/lib/components/textfield/PasswordField.svelte
Normal file
30
frontend/src/lib/components/textfield/PasswordField.svelte
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
<script lang="ts">
|
||||
import Lock from '../icons/Lock.svelte';
|
||||
import TextField from './TextField.svelte';
|
||||
|
||||
export let placeholder: string = '';
|
||||
export let value: string = '';
|
||||
export let error: string = '';
|
||||
</script>
|
||||
|
||||
<TextField
|
||||
bind:error
|
||||
bind:value
|
||||
on:click
|
||||
on:keydown
|
||||
on:keyup
|
||||
{placeholder}
|
||||
on:change
|
||||
type="password"
|
||||
icon
|
||||
>
|
||||
<div slot="icon" class="flex items-center justify-center">
|
||||
<Lock />
|
||||
</div>
|
||||
</TextField>
|
||||
|
||||
<style>
|
||||
div {
|
||||
@apply text-sspsBlue;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -7,14 +7,16 @@
|
|||
import Lock from '$lib/components/icons/Lock.svelte';
|
||||
import { apiLogin } from '$lib/@api/admin';
|
||||
import { goto } from '$app/navigation';
|
||||
import Submit from '$lib/components/button/Submit.svelte';
|
||||
import PasswordField from '$lib/components/textfield/PasswordField.svelte';
|
||||
|
||||
let adminIdValue = '';
|
||||
let adminPasswordValue = '';
|
||||
|
||||
const login = async () => {
|
||||
try {
|
||||
await apiLogin({adminId: Number(adminIdValue), password: adminPasswordValue});
|
||||
goto("/admin/dashboard");
|
||||
await apiLogin({ adminId: Number(adminIdValue), password: adminPasswordValue });
|
||||
goto('/admin/dashboard');
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
}
|
||||
|
|
@ -37,19 +39,12 @@
|
|||
<TextField bind:value={adminIdValue} placeholder="Admin id" type="number" />
|
||||
</span>
|
||||
<span class="mt-8">
|
||||
<TextField bind:value={adminPasswordValue} placeholder="Heslo" type="password" icon>
|
||||
<div slot="icon" class="flex items-center justify-center">
|
||||
<Lock />
|
||||
</div>
|
||||
</TextField>
|
||||
<PasswordField bind:value={adminPasswordValue} placeholder="Heslo" />
|
||||
</span>
|
||||
</div>
|
||||
<input
|
||||
class="bg-sspsBlue hover:bg-sspsBlueDark mt-8 w-3/5 rounded-lg p-3 text-xl font-semibold text-white transition-colors duration-300"
|
||||
type="submit"
|
||||
value="Odeslat"
|
||||
on:click={login}
|
||||
/>
|
||||
<div class="mt-8 w-3/5">
|
||||
<Submit value="Odeslat" on:click={login} />
|
||||
</div>
|
||||
</div>
|
||||
</SplitLayout>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue