{#snippet icons(status: IssueStatus)}
{/snippet} {#snippet counters(status: IssueStatus)}
{#if status === "all"} {project.meta.issues.open + project.meta.issues.closed} {:else} {project.meta.issues[status]} {/if}
{/snippet}
{title} Issues
{ if (showFilters) { showFilters = false; searchInput = ""; } else { showFilters = true; } }}> { if ($activeRouteStore.resource === "repo.createIssue") { window.history.back(); } else { void router.push({ resource: "repo.createIssue", rid: repo.rid, status, }); } }}> New
{#if showFilters}
{#snippet toggle(onclick)} {@render icons(status)} {capitalize(status)} {@render counters(status)} {/snippet} {#snippet popover()} {#snippet item(state)} { changeFilter(state); closeFocused(); }}> {@render icons(state)} {capitalize(state)} {@render counters(state)} {/snippet} {/snippet} { if (searchResults.length === 1) { await router.push({ resource: "repo.issue", rid: repo.rid, issue: searchResults[0].obj.issue.id, status, }); } }} onDismiss={() => { showFilters = false; searchInput = ""; }} placeholder={`Fuzzy filter issues ${modifierKey()} + f`} autofocus keyShortcuts="ctrl+f" bind:value={searchInput}> {#snippet left()}
{/snippet}
{/if} {#if searchResults.length > 0}
{#each searchResults as result} {/each}
{/if} {#if searchResults.length === 0}
{#if issues.length > 0 && searchResults.length === 0} No matching issues. {:else} No {status === "all" ? "" : status} issues. {/if}
{/if}