{#if loading}

Loading repository...

{:else if !repoEvent}

Repository not found.

{:else} {#if getBannerUrl()}
{getRepoName()} banner
{/if}
{#if getImageUrl()}
{getRepoName()}
{/if}
{#if repoEvent} {/if}
{#if gitRepo?.usingGitHubToken}
Using your saved GitHub API token for authenticated requests
{/if} {#if getRepoDescription()}

{getRepoDescription()}

{/if}
{#if getDocumentation().length > 0} {/if}
{#if activeTab === 'metadata'} {:else if activeTab === 'about'}
{#if gitRepo?.readme}
{@html renderReadme(gitRepo.readme.content, gitRepo.readme.format)}
{:else}

No README found.

{/if}
{:else if activeTab === 'repository'}
{#if loadingGitRepo}

Loading repository data...

{:else if gitRepo}

Latest Commit

{#if gitRepo.commits.length > 0}
{gitRepo.commits[0].sha.slice(0, 7)} {gitRepo.commits[0].message}
{gitRepo.commits[0].author} {new Date(gitRepo.commits[0].date).toLocaleString()}
{/if}

Branches

{#each gitRepo.branches as branch}
{branch.name} {#if branch.name === gitRepo.defaultBranch} default {/if} {branch.commit.sha.slice(0, 7)} {branch.commit.message}
{/each}

File Structure

{#if gitRepo.files.length > 0} {:else}

No files found.

{/if}
{:else}

Git repository data not available.

{/if}
{:else if activeTab === 'issues'}
{#if loadingIssues}

Loading issues...

{:else if issues.length > 0}
{#if statusFilter} Showing {filteredIssues.length} of {issues.length} issues {:else} {issues.length} {issues.length === 1 ? 'issue' : 'issues'} {/if} {#if loadingIssueData} (loading details...) {/if}
{#if filteredIssues.length > 0} {#each paginatedIssues as issue} {@const currentStatus = getCurrentStatus(issue.id)} {@const isChanging = changingStatus.get(issue.id) || false}
{#if isChanging} Updating... {/if}
{#if issueComments.has(issue.id)}

Comments ({issueComments.get(issue.id)!.length})

{#each issueComments.get(issue.id)! as comment}
{/each}
{/if}
{/each} {#if totalPages > 1} {/if} {:else}

No issues found with status "{statusFilter}".

{/if}
{:else}

No issues found.

{/if}
{:else if activeTab === 'documentation'}
{#if documentationEvents.size > 0}
{#each Array.from(documentationEvents.entries()) as [docNaddr, docEvent]}
{#if docEvent.kind === KIND.LONG_FORM_NOTE || docEvent.kind === KIND.SHORT_TEXT_NOTE} {:else} {@const isAsciidoc = docEvent.content.includes('= ') || docEvent.content.includes('== ') || docEvent.tags.some(t => Array.isArray(t) && t[0] === 'format' && t[1] === 'asciidoc')} {#if isAsciidoc}
{@html renderReadme(docEvent.content, 'asciidoc')}
{:else} {/if} {/if}
{/each}
{:else}

No documentation found.

{/if}
{/if}
{/if}