{ event.preventDefault(); if (!busy && !generating) onClose(); }} onclick={(event) => { if (event.target === dialog && !busy && !generating) { const rect = dialog.getBoundingClientRect(); if (event.clientX < rect.left || event.clientX > rect.right || event.clientY < rect.top || event.clientY > rect.bottom) onClose(); } }}>

{heading}

{source.label}

{#if error}{/if}
Repository{loading ? "…" : `${repositories.length} ${de ? "verfügbar" : "available"}`}
repositoryId = value}> {#snippet optionIcon()}
{#if !loading && !error && !repositories.length}

{de ? "Keine Repositories für diese Integration gefunden." : "No repositories found for this integration."}

{/if}
{de ? "Quellbranch" : "Source branch"} ({...option,disabled:option.value === targetBranch}))} disabled={generating || busy || branchesLoading || !repositoryId} ariaLabel={de ? "Quellbranch" : "Source branch"} placeholder={branchesLoading ? (de ? "Lädt …" : "Loading…") : (de ? "Quellbranch auswählen" : "Select source branch")} searchable searchPlaceholder={de ? "Branches durchsuchen …" : "Search branches…"} emptyText={de ? "Keine Branches gefunden" : "No branches found"} onChange={value => sourceBranch = value}/>
{de ? "Zielbranch" : "Target branch"} ({...option,disabled:option.value === sourceBranch}))} disabled={generating || busy || branchesLoading || !repositoryId} ariaLabel={de ? "Zielbranch" : "Target branch"} placeholder={branchesLoading ? (de ? "Lädt …" : "Loading…") : (de ? "Zielbranch auswählen" : "Select target branch")} searchable searchPlaceholder={de ? "Branches durchsuchen …" : "Search branches…"} emptyText={de ? "Keine Branches gefunden" : "No branches found"} onChange={value => targetBranch = value}/>
{#if branchError}{:else if repositoryId && !branchesLoading && !branches.length}

{de ? "Dieses Repository hat noch keine Branches." : "This repository has no branches yet."}

{/if} {#if sameBranch}

{de ? "Quell- und Zielbranch müssen unterschiedlich sein." : "Source and target branches must be different."}

{/if}

{de ? "Beide Branches müssen bereits in diesem Repository gepusht sein." : "Both branches must already be pushed to this repository."}

{de ? "Erstellt Titel und Beschreibung aus dem lokalen Stand der Remote-Branches. Vorher Fetch ausführen." : "Creates a title and description from locally fetched remote branches. Fetch first."}