{scopeLabel}
{displayPath}
{isGerman ? "Öffnen mit" : "Open with"}
Gitty
{diffName}
Refresh
{#if isLoading}
Loading patch...
{:else if error}
{error}
{:else if !patch.trim()}
No line patch available for this file.
{:else if parsed.binary || parsed.hunks.length === 0}
This change cannot be split into text lines.
{:else}
0} class="line-patch-selection-bar">
{#if selectedCount > 0}
{selectedCount} {selectedCount === 1 ? "line" : "lines"} selected
Shift-click to select a range.
{:else}
Select changed lines
Choose individual additions or deletions below.
{/if}
{#if selectedCount > 0}
applySelected(staged ? "discard-staged" : "discard-unstaged")} disabled={isBusy}> Discard selected
applySelected(staged ? "unstage" : "stage")} disabled={isBusy}> {staged ? "Unstage selected" : "Stage selected"}
{ selectedLineIds = new Set(); }} disabled={isBusy}>Clear
{/if}
{#each parsed.hunks as hunk (hunk.id)}
toggleHunkSelection(hunk)} aria-label={`Select changed lines in ${hunk.header}`} aria-pressed={hunkSelectionState(hunk) === "all"} title="Select all changed lines in this hunk" > {#if hunkSelectionState(hunk) !== "none"}
{/if}
{hunk.header}
{#if staged}
applyHunkAction("discard-staged", hunk)} disabled={isBusy}> Discard Hunk
applyHunkAction("unstage", hunk)} disabled={isBusy}> Unstage Hunk
{:else}
applyHunkAction("discard-unstaged", hunk)} disabled={isBusy}> Discard Hunk
applyHunkAction("stage", hunk)} disabled={isBusy}> Stage Hunk
{/if}
{#each hunk.lines as line (line.id)}
{#if line.kind === "add" || line.kind === "delete"}
toggleLine(event, line)} aria-label={`${selectedLineIds.has(line.id) ? "Deselect" : "Select"} ${line.kind === "add" ? "added" : "deleted"} line ${line.newLine ?? line.oldLine ?? ""}`} aria-pressed={selectedLineIds.has(line.id)} title="Select line (Shift-click for range)" > {#if selectedLineIds.has(line.id)}
{/if}
{:else}
{/if}
{line.oldLine ?? ""}
{line.newLine ?? ""}
{linePrefix(line)}
{lineBody(line)}
{/each}
{/each}
{#each parsed.hunks as hunk, index (hunk.id)}
scrollToHunk(hunk.id)} title={`Jump to hunk ${index + 1} of ${parsed.hunks.length}`} aria-label={`Jump to hunk ${index + 1} of ${parsed.hunks.length}`} >
{/each}
{/if}