fix(frontend): stop a dismissed project import from running on

Modal reports dismissal only through its bindable `open` — the X, Escape
and the backdrop dispatch neither `confirmed` nor `canceled`. Bind it, so
clearing `pick` follows the dialog closing: re-picking the same project
opens it again, and a run still in flight is abandoned with a toast
instead of writing to the workspace with no UI in front of it.

Also mark the inline-link buttons as sanctioned rather than oversights,
and give Log out `text-accent` instead of `text-blue-500`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012fRjnaHLwjpHN84gNNxah9
This commit is contained in:
Guilhem Lemouel
2026-09-03 18:30:56 +02:00
co-authored by Claude Opus 5
parent 2c6730ce02
commit cc7d176911
3 changed files with 11 additions and 2 deletions
@@ -101,7 +101,11 @@
or
<CreateActionsMenu source="empty_state" triggerElement={newLinkEl}>
{#snippet trigger()}
<!-- The full stop rides inside the snippet: across a component boundary Svelte
<!-- A bare <button> for a link inside a sentence, signed off by design: <Button>
carries its own padding and background and cannot sit inline in running text.
The colour is `text-accent` — the `text-blue-500` older links use is the
mistake to avoid, not the pattern to copy.
The full stop rides inside the snippet: across a component boundary Svelte
keeps the markup whitespace, which would leave a gap before it. -->
<button
bind:this={newLinkEl}
@@ -158,6 +158,8 @@
{/if}
<div class="mt-6 flex items-center justify-between gap-4">
<!-- A bare <button> as a quiet text link, signed off by design: a second <Button> here
would compete with Create workspace for the eye. -->
<button class="text-xs text-secondary hover:text-emphasis" onclick={() => (advanced = true)}>
Advanced settings
</button>
@@ -238,7 +238,10 @@
<span class="text-xs text-tertiary">
Logged in as <span class="text-secondary">{$usersWorkspaceStore?.email}</span>
·
<button class="text-blue-500 hover:underline" onclick={() => logout()}>Log out</button>
<!-- A bare <button> for a link inside the sentence, signed off by design: <Button>
cannot sit inline in running text. `text-accent`, not the `text-blue-500` of
older links. -->
<button class="text-accent hover:underline" onclick={() => logout()}>Log out</button>
</span>
{/if}
{/snippet}