diff --git a/apps/staged/src/lib/features/projects/NewProjectForm.svelte b/apps/staged/src/lib/features/projects/NewProjectForm.svelte index f34d1fa0..02e1959e 100644 --- a/apps/staged/src/lib/features/projects/NewProjectForm.svelte +++ b/apps/staged/src/lib/features/projects/NewProjectForm.svelte @@ -90,8 +90,11 @@ error = null; }); + let repoMissing = $derived(location === 'remote' && !selectedRepo); + let canCreate = $derived(!!name.trim() && !saving && !repoMissing); + async function handleCreate() { - if (!name.trim() || saving) return; + if (!canCreate) return; saving = true; error = null; @@ -239,7 +242,12 @@
- + {#if selectedRepo}
@@ -337,7 +345,7 @@ variant="primary" class={!onCancel ? 'full-width-btn' : ''} onclick={handleCreate} - disabled={saving || !name.trim()} + disabled={!canCreate} > {#if saving} @@ -395,6 +403,11 @@ color: var(--bg-deepest); } + .field-badge.required { + background-color: var(--ui-danger); + color: var(--bg-deepest); + } + .field-badge.new-branch { background-color: var(--ui-accent); color: var(--bg-deepest);