diff --git a/frontend/src/lib/components/MentionDropdown.svelte b/frontend/src/lib/components/MentionDropdown.svelte
index 5090b0bc..d86e912a 100644
--- a/frontend/src/lib/components/MentionDropdown.svelte
+++ b/frontend/src/lib/components/MentionDropdown.svelte
@@ -122,6 +122,22 @@ function selectItem(item: Person) {
{m.person_mention_popup_empty()}
+
+ e.preventDefault()}
+ >
+ {m.person_mention_create_new()}
+ →
+
{:else}
{#each model.items as person, i (person.id)}
{
await expect.element(page.getByText('Keine Personen gefunden')).toBeInTheDocument();
});
});
+
+ it('offers a "create new person" link in the empty state', async () => {
+ mockFetchEmpty();
+ renderHost();
+
+ await userEvent.type(page.getByRole('textbox'), '@xyz');
+
+ await vi.waitFor(async () => {
+ const link = page.getByRole('link', { name: /Neue Person anlegen/ });
+ await expect.element(link).toBeVisible();
+ await expect.element(link).toHaveAttribute('href', '/persons/new');
+ });
+ });
});
// ─── AC-1: typed text becomes displayName, not DB name ───────────────────────