{ componentStack.close(); detail.stopPropagation(); }} > {#if selectedRow}
{#key selectedRow.label}
{capitalize(selectedRow.label)}
{/key}
{#each actions as action, index} {@const selected = index === selectedActionIndex}
{#if action.type === 'action' && action.action === 'stream'}
{/if} {action.label}
{/each}
{/if}
{#await groups} Loading... {:then view} {#each view.data.items as group} {#each group.streamables as row, index}
{ selectedRow = row; selectedActionIndex = 0; const el = detail.selectable.getSibling(-1)?.getHtmlElement() ?? detail.selectable?.getHtmlElement(); if (el) scrollElementIntoView(el, { top: 32 }); }} on:select={() => {}} on:click={() => { selectedRow = row; selectedActionIndex = 0; }} on:navigate={({ detail }) => { if (detail.direction === 'left') { selectedActionIndex = Math.max(0, selectedActionIndex - 1); } else if (detail.direction === 'right') { selectedActionIndex = 0; // selectedActionIndex = Math.min(row.actions.length - 1, selectedActionIndex + 1); } }} focusOnClick let:hasFocus >
{capitalize(row.label)}
{:else}
No streams available
{/each} {/each} {/await}