1} class:root-row={item.parents.length === 0} class:tip-row={item.refs.length > 0} > {#if row} {#each row.top as seg} {/each} {#each row.bottom as seg} {/each} {#if refSummary.primaryBranch} {/if} 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} {#if item.has_note} {/if} {#if refSummary.primaryBranch || refSummary.primaryTag || refSummary.overflowCount > 0} {#if refSummary.primaryBranch} {refSummary.primaryBranch.label} {#if !refSummary.primaryBranch.localOnly && branchStatusLabel(refSummary.primaryBranch)} {branchStatusLabel(refSummary.primaryBranch)} {/if} {#if refSummary.primaryBranch.localOnly} {t("history.localOnlyBadge")} {/if} {/if} {#if refSummary.primaryTag} {refSummary.primaryTag} {/if} {#if refSummary.overflowCount > 0} toggleCommitRefs(item)} aria-expanded={expandedRefsCommitHash === item.hash} aria-controls={`commit-refs-${item.hash}`} title={refSummary.overflowCount === 1 ? t("history.showMoreRefsOne") : t("history.showMoreRefs", { count: refSummary.overflowCount })} > +{refSummary.overflowCount} {/if} {#if refSummary.overflowCount > 0 && expandedRefsCommitHash === item.hash} {t("history.refsOnCommit")} {#if refSummary.branches.some((branch) => branch.kind !== "remote")} {t("common.local")} {#each refSummary.branches.filter((branch) => branch.kind !== "remote") as branch} {branch.label} {#if branch.current}{t("history.current")}{/if} {#if branch.trackedRemote}{branch.trackedRemote}{/if} {#if branch.localOnly}{t("history.localOnly")}{/if} {/each} {/if} {#if refSummary.branches.some((branch) => branch.kind === "remote")} {t("common.remote")} {#each refSummary.branches.filter((branch) => branch.kind === "remote") as branch} {branch.label} {/each} {/if} {#if refSummary.tags.length > 0} {t("history.tags")} {#each refSummary.tags as tag} {tag} {/each} {/if} {#if refSummary.other.length > 0} {t("history.other")} {#each refSummary.other as ref} {ref} {/each} {/if} {/if} {/if} {authorInitials(item.author_name)} {item.summary} {#if item.parents.length > 1} {/if} {commitKindLabel(item)} {item.short_hash} {item.author_name} {#if item.has_note} void loadCommitNotePreview(item)} onfocus={() => void loadCommitNotePreview(item)} onclick={() => openCommitNote(item)} disabled={isBusy} aria-label={t("history.openNote", { hash: item.short_hash })} aria-describedby={`commit-note-preview-${item.hash}`} > {t("history.note")} {t("history.gitNote")} {t("history.clickToOpen")} {#if notePreviewLoading.has(item.hash)} Loading note… {:else if notePreviewErrors.has(item.hash)} Note could not be loaded. {:else} {notePreviews[item.hash] ?? "Hover to load the note."} {/if} {/if} {#if item.files.length > 0} onToggleCommitFiles(item.hash)} aria-expanded={expandedCommitHashes.has(item.hash)} > {#if expandedCommitHashes.has(item.hash)} {:else} {/if} {item.files.length} {item.files.length === 1 ? "file" : "files"} changed {#if expandedCommitHashes.has(item.hash)} {#each item.files as file (`${item.hash}:${file.old_path ?? ""}:${file.path}`)} onPreviewCommitFile(item, file)} disabled={isBusy} title={t("history.diffBeforeRestore", { file: displayCommitFile(file) })} > {statusLabel(file.status)} {commitFileName(file)} {/each} {/if} {/if} {formatCommitDate(item.date)} {#if !item.has_note} openCommitNote(item)} disabled={isBusy} title={t("history.addNote", { hash: item.short_hash })} aria-label={t("history.addNote", { hash: item.short_hash })} > {/if} openCommitActionMenu(event, item)} disabled={isBusy} title={t("history.commitActions")} aria-label={t("history.actionsFor", { hash: item.short_hash })} aria-haspopup="menu" aria-expanded={contextCommit?.hash === item.hash} >