ᚹ verdande
{ if (!carries(e, TASK)) return; accept(e); overToday = true; }} ondragleave={() => (overToday = false)} ondrop={onDropOnToday} > I dag Kommende {#if app.projects.some((p) => p.shared)} Venter på andre {/if} {#if app.inbox} {@render projectRow(app.inbox, false)} {/if}
{#snippet projectRow(project, sortable)} sortable && onDragStart(e, project)} ondragend={clearDrag} ondragover={(e) => { if (carries(e, TASK)) onTaskDragOver(e, project); else if (sortable) onDragOver(e, project); }} ondragleave={() => { overId = null; overProject = null; }} ondrop={(e) => (carries(e, TASK) ? onTaskDrop(e, project) : sortable && onDrop(e, project))} > {project.name} {#if project.shared} {project.member_count} {/if} {/snippet} {#snippet foldHeading(key, label)}

{/snippet}
{ if (!carries(e, PROJECT)) return; accept(e); overGroup = ''; overId = null; }} ondragleave={() => (overGroup = null)} ondrop={(e) => onDropInGroup(e, '')} > {@render foldHeading('projects', 'Projekter')}
{#if adding}
!newName.trim() && (adding = false)} onkeydown={(e) => e.key === 'Escape' && (adding = false)} />
{/if} {#if addingGroup}
!newGroupName.trim() && (addingGroup = false)} onkeydown={(e) => e.key === 'Escape' && (addingGroup = false)} />
{/if} {#if !app.sectionCollapsed('projects')} {#each ungrouped as project (project.id)} {@render projectRow(project, true)} {/each} {#if own.length === 0 && !adding}

Ingen projekter endnu.

{/if} {/if}
{#each groups as group (group.id)} {@const inside = inGroup(group.id)}
onGroupDragStart(e, group)} ondragend={clearDrag} ondragover={(e) => onGroupDragOver(e, group)} ondragleave={() => { overGroup = null; overId = null; }} ondrop={(e) => onGroupDrop(e, group)} > {#if renamingGroup === group.id}
renameGroup(e, group)} onfocusout={(e) => { if (!e.currentTarget.contains(e.relatedTarget)) renamingGroup = null; }} > e.key === 'Escape' && (renamingGroup = null)} />
{#each COLORS as color (color.id)} {/each}
{:else}

{inside.length} {/if}
{#if !group.collapsed} {#each inside as project (project.id)} {@render projectRow(project, true)} {/each} {#if !inside.length}

Tom — træk et projekt herop.

{/if} {/if}
{/each} {#if shared.length}
{@render foldHeading('shared', 'Delt med mig')}
{#if !app.sectionCollapsed('shared')} {#each shared as project (project.id)} {@render projectRow(project, false)} {/each} {/if}
{/if} {#if filters.length}
{@render foldHeading('filters', 'Filtre')}
{#if !app.sectionCollapsed('filters')} {#each filters as filter (filter.id)} {filter.name} {/each} {/if}
{/if} {#if labels.length}
{@render foldHeading('labels', 'Etiketter')}
{#if !app.sectionCollapsed('labels')} {#each labels.filter((l) => l.task_count > 0) as label (label.id)} {label.name} {label.task_count} {/each} {/if}
{/if}
Indstillinger {#if !app.connected} Offline {/if}
sidebar.reset()} onkeydown={(e) => { if (e.key === 'ArrowLeft') sidebar.setWidth(sidebar.width - 16); else if (e.key === 'ArrowRight') sidebar.setWidth(sidebar.width + 16); else if (e.key === 'Home') sidebar.reset(); else return; e.preventDefault(); }} >