Tracking

{#if !loading && loggedInTrackers.length > 0}
{#each loggedInTrackers as t} {@const count = t.trackRecords.nodes.length} {/each}
{/if}
{#if loading}
Loading tracking data…
{:else if error}

{error}

{:else if loggedInTrackers.length === 0}

No trackers connected.

Go to Settings → Tracking to log in to AniList, MAL, or others.

{:else if filtered.length === 0}

{searchQuery || statusFilter !== "all" ? "No results match your filters." : "Nothing tracked yet."}

{#if searchQuery || statusFilter !== "all"} {/if}
{:else}
{#each filtered as record (record.tracker.id + ":" + record.id)} {@const tracker = record.tracker} {@const isBusy = updatingId === record.id} {@const isSyncing = syncingId === record.id} {@const progress = record.totalChapters > 0 ? Math.min(100, (record.lastChapterRead / record.totalChapters) * 100) : null}
openManga(record)} onkeydown={(e) => e.key === "Enter" && openManga(record)} > {#if record.manga?.thumbnailUrl} {record.title} {:else}
{/if} {tracker.name}
openManga(record)} onkeydown={(e) => e.key === "Enter" && openManga(record)} > {record.title} {#if record.manga?.title && record.manga.title !== record.title} {record.manga.title} {/if}
{#if activeTrackerId === "all"} {record.tracker.name} {record.tracker.name} {/if} {#if isSyncing} {:else} {/if} {#if record.remoteUrl} {/if}
{#if record.private} {/if}
{#if editingChapter === record.id}
Chapter read
0 ? record.totalChapters : undefined} step="0.5" bind:value={chapterDraft} onkeydown={(e) => { if (e.key === "Enter") submitChapter(record); if (e.key === "Escape") cancelChapterEditor(); }} use:focusEl /> {#if record.totalChapters > 0} / {record.totalChapters} {/if}
{#if record.totalChapters > 0} {/if}
{:else if progress !== null}
openChapterEditor(record)} onkeydown={(e) => e.key === "Enter" && openChapterEditor(record)} title="Click to edit" >
Ch. {record.lastChapterRead} / {record.totalChapters}
{:else}
openChapterEditor(record)} onkeydown={(e) => e.key === "Enter" && openChapterEditor(record)} title="Click to set chapter" > {record.lastChapterRead > 0 ? `Ch. ${record.lastChapterRead} read` : "Set chapter…"}
{/if}
{/each}
{/if}