No repository loaded.
{:else if commits.length === 0}
No commits returned.
{:else}
{#if visibleCommits.length === 0}
No loaded commits match the selected branches.
{/if}
{#each visibleCommitEntries as entry, rowIndex (entry.commit.hash)}
{@const item = entry.commit}
{@const row = graphRows[rowIndex]}
{@const hoverBranchRefs = commitHoverBranchLabels(item, row)}
{@const otherRefs = visibleRefs(item)}
{@const rowSyncClass = syncClassForBranches(row?.branchLabels ?? [])}
1}
class:root-row={item.parents.length === 0}
class:tip-row={item.refs.length > 0}
>
{#if row}
1}
class:tip={item.refs.length > 0}
class:hidden-branch={!rowGraphIsVisible(row)}
class:ahead={rowSyncClass === "ahead"}
class:behind={rowSyncClass === "behind"}
title={commitHoverTitle(item, row)}
style={`left:${graphColX(row.dotCol)}px; --dot-color:${row.dotColor}`}
>
{#if hoverBranchRefs.length > 0}
{#each hoverBranchRefs as branch}
{branch}
{/each}
{/if}
{/if}
{authorInitials(item.author_name)}
{item.summary}
{#if item.parents.length > 1}
{/if}
{commitKindLabel(item)}
{item.short_hash}
{item.author_name}
{#if otherRefs.length > 0}
{#each otherRefs as ref}
{refLabel(ref)}
{/each}
{/if}
{#if item.files.length > 0}
{#if expandedCommitHashes.has(item.hash)}
{#each item.files as file (`${item.hash}:${file.old_path ?? ""}:${file.path}`)}
{/each}
{/if}
{/if}
{/each}
{#if hasMore || isLoadingMore || loadMoreError}
{#if isLoadingMore}
Loading older commits…
{:else if loadMoreError}
Older commits could not be loaded.
{:else}
{/if}
{/if}
{/if}
{#if contextCommit}
{/if}