Folders are stored as Suwayomi categories. Changes sync across all clients.
{#if catsError}
{catsError}
{/if}
{#if catsLoading}
Loading folders…
{:else}
Saved
built-in
Downloaded
built-in
{#if completedCat}
{completedCat.name}
{completedCat.mangas?.nodes.length ?? 0} manga
built-in
{/if}
{#each orderedCatIds.filter(id => id !== completedId) as id}
{@const cat = store.categories.find(c => String(c.id) === id) ?? null}
{@const hidden = isHidden(id)}
{#if cat}
onDragOver(e, cat.id)}
ondrop={(e) => onDrop(e, cat.id)}
ondragleave={() => { if (dragOverId === cat.id) { dragOverId = null; dropPosition = null; } }}
>
{#if editingId === cat.id}
{ if (e.key === "Enter") commitEdit(); if (e.key === "Escape") { editingId = null; } }}
onblur={commitEdit} use:focusInput />
{:else}
onDragStart(e, cat.id)}
ondragend={onDragEnd}>
{ e.stopPropagation(); startEdit(cat.id, cat.name); }} title="Click to rename">{cat.name}
{cat.mangas?.nodes.length ?? 0} manga
{/if}
{/if}
{/each}
{#if store.categories.filter(c => c.id !== 0 && c.name !== "Completed").length === 0}
No custom folders yet. Create one below.
{/if}
{/if}