keyboard && (active = null)}
onclick={(event) =>
select(rows[activeIndex], segmentAt(event, activeIndex))}
onfocus={() => keyboard && (active ??= rows[0]?.key ?? null)}
{onkeydown}
onpointerleave={() => (active = null)}
onpointermove={pick}
role="slider"
tabindex={keyboard ? 0 : -1}
style:height="{height}px"
bind:clientWidth={width}
>
{#if width > 0 && rows.length > 0}
{/if}