{#if !loaded} {:else if loadError}
{loadError}
{:else if showForm}
{#if error}
{error}
{/if}
form.icon = v} />
{#if albums.length > 0}
{#each albums.filter(a => !albumFilter || a.albumName.toLowerCase().includes(albumFilter.toLowerCase())) as album} {/each}
{/if}
{#if targets.length > 0}
{#each targets as tgt} {/each}
{/if}
{/if} {#if !loaded} {:else if trackers.length === 0 && !showForm}

{t('trackers.noTrackers')}

{:else}
{#each trackers as tracker}
{#if tracker.icon}{/if}

{tracker.name}

{tracker.enabled ? t('trackers.active') : t('trackers.paused')}

{tracker.album_ids.length} {t('trackers.albums_count')} · {t('trackers.every')} {tracker.scan_interval}s · {tracker.target_ids.length} {t('trackers.targets')}

edit(tracker)} /> { await api(`/trackers/${tracker.id}/trigger`, { method: 'POST' }); }} /> testPeriodic(tracker)} disabled={testingPeriodic[tracker.id]} /> testMemory(tracker)} disabled={testingMemory[tracker.id]} /> {#if testFeedback[tracker.id]} {testFeedback[tracker.id] === 'ok' ? '\u2713' : '\u2717'} {/if} toggle(tracker)} disabled={toggling[tracker.id]} /> startDelete(tracker)} variant="danger" />
{/each}
{/if} confirmDelete = null} />