feat(documents): prefill sender and receiver from URL params on new document page

When navigating from the conversations page via the 'New document in this
correspondence' link, the senderId and receiverId query params are now read
in the server load, resolved to person names, and used to pre-populate the
sender typeahead and receiver multi-select on the form.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Marcel
2026-03-20 17:01:24 +01:00
parent f2f9a1bf03
commit 4026bb9003
2 changed files with 46 additions and 10 deletions

View File

@@ -5,11 +5,13 @@ import PersonTypeahead from '$lib/components/PersonTypeahead.svelte';
import PersonMultiSelect from '$lib/components/PersonMultiSelect.svelte';
import { m } from '$lib/paraglide/messages.js';
let { form } = $props();
let { data, form } = $props();
let tags: string[] = $state([]);
let senderId = $state('');
let selectedReceivers: { id: string; firstName: string; lastName: string }[] = $state([]);
let senderId = $state(data.initialSenderId);
let selectedReceivers: { id: string; firstName: string; lastName: string }[] = $state(
data.initialReceivers
);
let dateDisplay = $state('');
let dateIso = $state('');
@@ -120,7 +122,12 @@ function handleDateInput(e: Event) {
<!-- Absender -->
<div>
<PersonTypeahead name="senderId" label={m.form_label_sender()} bind:value={senderId} />
<PersonTypeahead
name="senderId"
label={m.form_label_sender()}
bind:value={senderId}
initialName={data.initialSenderName}
/>
</div>
<!-- Empfänger -->