{$t('search.title')}

{#if query.trim()} {/if}
{#if isSearching}

{$t('search.searching')}

{:else if searchError}

{$t('errors.loadFailed')}

{searchError}

{:else if !query.trim()}

{$t('search.startTyping')}

{:else if activeTab === 'albums' && albumResults} {#if albumResults.items.length === 0}
{$t('search.noAlbumsFor', { values: { query } })}
{:else}
{#each albumResults.items as album} onAlbumPlay(album.id) : undefined} onPlayNext={onAlbumPlayNext ? () => onAlbumPlayNext(album.id) : undefined} onPlayLater={onAlbumPlayLater ? () => onAlbumPlayLater(album.id) : undefined} onShareQobuz={onAlbumShareQobuz ? () => onAlbumShareQobuz(album.id) : undefined} onShareSonglink={onAlbumShareSonglink ? () => onAlbumShareSonglink(album.id) : undefined} onDownload={onAlbumDownload ? () => onAlbumDownload(album.id) : undefined} onclick={() => onAlbumClick?.(album.id)} /> {/each}
{#if hasMoreAlbums}
{/if} {/if} {:else if activeTab === 'tracks' && trackResults} {#if trackResults.items.length === 0}
{$t('search.noTracksFor', { values: { query } })}
{:else}
{#each trackResults.items as track, index}
onTrackPlay?.(track)} onkeydown={(e) => e.key === 'Enter' && onTrackPlay?.(track)} >
{index + 1}
{#if failedTrackImages.has(track.id) || !getTrackArtwork(track)}
{:else} {track.title} handleTrackImageError(track.id)} /> {/if}
{track.title}
{#if track.performer?.id && onTrackGoToArtist} {:else}
{track.performer?.name || 'Unknown Artist'}
{/if}
{getQualityLabel(track)}
{formatDuration(track.duration)}
onTrackPlay?.(track)} onPlayNext={onTrackPlayNext ? () => onTrackPlayNext(track) : undefined} onPlayLater={onTrackPlayLater ? () => onTrackPlayLater(track) : undefined} onAddFavorite={onTrackAddFavorite ? () => onTrackAddFavorite(track.id) : undefined} onAddToPlaylist={onTrackAddToPlaylist ? () => onTrackAddToPlaylist(track.id) : undefined} onShareQobuz={onTrackShareQobuz ? () => onTrackShareQobuz(track.id) : undefined} onShareSonglink={onTrackShareSonglink ? () => onTrackShareSonglink(track) : undefined} onGoToAlbum={track.album?.id && onTrackGoToAlbum ? (() => { const albumId = track.album!.id!; return () => onTrackGoToAlbum(albumId); })() : undefined} onGoToArtist={track.performer?.id && onTrackGoToArtist ? (() => { const artistId = track.performer!.id!; return () => onTrackGoToArtist(artistId); })() : undefined} />
{/each}
{#if hasMoreTracks}
{/if} {/if} {:else if activeTab === 'artists' && artistResults} {#if artistResults.items.length === 0}
{$t('search.noArtistsFor', { values: { query } })}
{:else}
{#each artistResults.items as artist} {/each}
{#if hasMoreArtists}
{/if} {/if} {/if}