Pools
poolSorting.setSort((e.currentTarget as HTMLSelectElement).value as PoolSortField)} > {#each SORT_OPTIONS as opt}
{opt.label}
{/each}
poolSorting.toggleOrder()} title={sortState.order === 'asc' ? 'Ascending' : 'Descending'} > {#if sortState.order === 'asc'}
{:else}
{/if}
goto('/pools/new')}>+ New
(search = (e.currentTarget as HTMLInputElement).value)} autocomplete="off" /> {#if search}
(search = '')} aria-label="Clear search">
{/if}
{#if error}
{error}
{/if}
{#each pools as pool (pool.id)}
goto(`/pools/${pool.id}`)}>
{pool.name}
{formatCount(pool.file_count ?? 0)} {#if pool.creator_name}· {pool.creator_name}{/if} {#if pool.is_public}
public
{/if}
{/each}
{#if loading}
{/if} {#if hasMore && !loading}
Load more
{/if} {#if !loading && pools.length === 0}
{search ? 'No pools match your search.' : 'No pools yet.'} {#if !search}
Create one
{/if}
{/if}