handleCheckboxChange(dashboard, e)}
/>
navigateToDashboardDetail(dashboard.id)}
title={$t.dashboard?.open_overview}
>
{dashboard.title}
{dashboard.git?.hasRepo
? $t.dashboard?.status_repo || "Repo"
: $t.dashboard?.status_no_repo || "No Repo"}
{#if dashboard.git?.hasRepo}
{dashboard.git?.hasChangesForCommit
? $t.dashboard?.status_changes || "Diff"
: $t.dashboard?.status_no_changes || "Synced"}
{/if}
{#if dashboard.lastTask}
handleTaskStatusClick(dashboard)}
on:keydown={(e) =>
(e.key === "Enter" || e.key === " ") &&
handleTaskStatusClick(dashboard)}
role="button"
tabindex="0"
aria-label={$t.dashboard?.view_task}
>
{getValidationLabel(dashboard.lastTask.validationStatus)}
{:else}
-
{/if}
{dashboard.changedOnLabel}
{$t.dashboard?.owners || "Owners"}
{#if dashboard.owners?.length > 0}
{#each dashboard.owners as owner (owner)}
{owner}
{/each}
{:else}
-
{/if}
{#if !dashboard.git?.hasRepo}
handleGitInit(dashboard)}
disabled={isGitBusy(dashboard.id)}
title={$t.git?.init_repo || "Init Git repository"}
>
{:else}
handleGitSync(dashboard)}
disabled={isGitBusy(dashboard.id)}
title={$t.git?.sync || "Sync from Superset"}
>
handleGitCommit(dashboard)}
disabled={isGitBusy(dashboard.id) ||
!dashboard.git?.hasChangesForCommit}
title={$t.git?.commit || "Commit"}
>
handleGitPull(dashboard)}
disabled={isGitBusy(dashboard.id)}
title={$t.git?.pull || "Pull"}
>
handleGitPush(dashboard)}
disabled={isGitBusy(dashboard.id)}
title={$t.git?.push || "Push"}
>
{/if}
handleAction(dashboard, "migrate")}
title={$t.dashboard?.action_migrate}
>
handleValidate(dashboard)}
disabled={validatingIds.has(dashboard.id)}
title={$t.dashboard?.action_validate}
>
{#if validatingIds.has(dashboard.id)}
{:else}
{/if}
handleAction(dashboard, "backup")}
title={$t.dashboard?.action_backup}
>