diff --git a/app/src/lib/project-manager/ProjectManager.svelte b/app/src/lib/project-manager/ProjectManager.svelte index 88486dc..f64f491 100644 --- a/app/src/lib/project-manager/ProjectManager.svelte +++ b/app/src/lib/project-manager/ProjectManager.svelte @@ -1,7 +1,7 @@

Project

- +
{#if showNewProject} @@ -53,20 +64,11 @@ onkeydown={(e) => e.key === 'Enter' && handleCreate()} /> t.name)} bind:value={selectedTemplateIndex} /> - + {/if}
- {#if projectManager.loading} -

Loading...

- {/if} -
+ {:else} + {#if projectManager.loading} +
+ +

Loading

+
+ {:else} +
  • + No projects yet.
    Press New to create one. +
  • + {/if} {/each} + + diff --git a/app/src/lib/project-manager/project-manager.svelte.ts b/app/src/lib/project-manager/project-manager.svelte.ts index f69071e..f6f53dd 100644 --- a/app/src/lib/project-manager/project-manager.svelte.ts +++ b/app/src/lib/project-manager/project-manager.svelte.ts @@ -10,7 +10,9 @@ export class ProjectManager { 'node.activeProjectId', undefined ); - public readonly loading = $derived(this.graph?.id !== this.activeProjectId.value); + public readonly loading = $derived( + this.projects.length && this.graph?.id !== this.activeProjectId.value + ); constructor() { this.init(); diff --git a/packages/ui/src/lib/ConfirmDialog.svelte b/packages/ui/src/lib/ConfirmDialog.svelte new file mode 100644 index 0000000..8e5f0cb --- /dev/null +++ b/packages/ui/src/lib/ConfirmDialog.svelte @@ -0,0 +1,91 @@ + + + + { if (e.target === dialogEl) cancel(); }} +> +
    +

    {title}

    + {#if message} +

    {message}

    + {/if} + {#if children} +
    + {@render children()} +
    + {/if} +
    + + +
    +
    +
    + +