refactor: migrate all Svelte components from Svelte 4 to Svelte 5 runes
- Replace `export let` with `$props()` and `$bindable()` across all components
- Replace `$:` reactive statements with `$derived()` and `$effect()`
- Replace `createEventDispatcher` with callback props (e.g. `onchange`)
- Replace `on:event` directives with inline event handlers (`onclick`, `oninput`, etc.)
- Replace `<slot />` with `{@render children()}` in layout
- Use `untrack()` for SSR-safe $state initialization from reactive props
- Replace `blur` + `setTimeout` anti-pattern in TagInput with `clickOutside` action
- Fix `page` store usage in layout to use `$app/state` directly
- 0 errors, 0 warnings after svelte-check
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
<script lang="ts">
|
||||
// TypeScript Typen für die Form-Antwort
|
||||
export let form: { error?: string, success?: boolean };
|
||||
let { form }: { form?: { error?: string; success?: boolean } } = $props();
|
||||
</script>
|
||||
|
||||
<div class="min-h-screen flex items-center justify-center">
|
||||
@@ -10,13 +9,13 @@
|
||||
<form method="POST" action="?/login" class="space-y-4">
|
||||
<div>
|
||||
<label for="username" class="block text-sm font-medium text-gray-700">Benutzername</label>
|
||||
<input type="text" name="username" id="username" required
|
||||
<input type="text" name="username" id="username" required
|
||||
class="mt-1 block w-full rounded border-gray-300 shadow-sm p-2 border" />
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label for="password" class="block text-sm font-medium text-gray-700">Passwort</label>
|
||||
<input type="password" name="password" id="password" required
|
||||
<input type="password" name="password" id="password" required
|
||||
class="mt-1 block w-full rounded border-gray-300 shadow-sm p-2 border" />
|
||||
</div>
|
||||
|
||||
@@ -24,7 +23,7 @@
|
||||
<div class="text-red-600 text-sm text-center">{form.error}</div>
|
||||
{/if}
|
||||
|
||||
<button type="submit"
|
||||
<button type="submit"
|
||||
class="bg-brand-navy text-white h-[42px] rounded text-sm font-bold uppercase hover:bg-brand-mint hover:text-brand-navy w-full">
|
||||
Anmelden
|
||||
</button>
|
||||
|
||||
Reference in New Issue
Block a user