{#if loading}
Loading…
{:else}
Open a beta
{#if eligibleScripts.length === 0}
{:else}
{#each picks as row, idx (row.key)}
onPickScript(idx)} >
— Pick an artifact —
{#each eligibleForRow(idx) as s (s.id)}
[{s.kind}] {s.name}
{/each}
▾
{#if row.scriptId === null}
—
{:else} {#each versionsForRow(row) as v (v.id)}
v{v.version} · {v.sha256.slice(0, 8)} · {v.state}
{/each} {/if}
▾
removeRow(idx)} disabled={picks.length === 1} title={picks.length === 1 ? 'Need at least one script' : 'Remove this script'} aria-label="Remove artifact" >×
{/each}
+ Add artifact
{#if candidateServers.length === 0}
No server satisfies all selected scopes — pick different scripts.
{:else} {#each candidateServers as name (name)}
toggleServer(name)} />
{name}
{/each} {/if}
Open beta
{#if flash}
{flash}
{/if}
{/if}
{#if betas.length === 0}
{:else} {#each grouped as g (g.state)} {#if g.rows.length > 0}
{g.state.replace('-', ' ')}
{g.rows.length}
{#each g.rows as b (b.id)}
#{b.id}
{summarizeScripts(b)}
{b.testOutcome && b.state === 'running' ? b.testOutcome : b.state}
{b.servers.length} server{b.servers.length === 1 ? '' : 's'}
{/each}
{/if} {/each} {/if} {/if}