2020-01-13 14:39:22 +01:00
|
|
|
<div>
|
2020-02-21 23:56:26 +01:00
|
|
|
<div class="queue__section">
|
|
|
|
<div class="queue__sectionTitle">Next song</div>
|
|
|
|
<div class="track" on:click={() => select($next)}>
|
|
|
|
<div class="track__main">
|
|
|
|
<div class="track__title" class:placeholder={!$next}>
|
|
|
|
{#if $next}{$next.title}{/if}
|
|
|
|
</div>
|
|
|
|
<div class="track__subtitle" class:placeholder={!$next}>
|
|
|
|
{#if $next}
|
|
|
|
shared by {$next.referer.username} •
|
|
|
|
<DistanceDate date={$next.date} />
|
|
|
|
{/if}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{#if $next}
|
|
|
|
<button class="track__menu" aria-label="track menu"><IconMenu></IconMenu></button>
|
|
|
|
{/if}
|
2020-01-20 04:49:38 +01:00
|
|
|
</div>
|
2020-02-21 23:56:26 +01:00
|
|
|
</div>
|
2020-02-18 19:18:46 +01:00
|
|
|
|
2020-01-20 04:49:38 +01:00
|
|
|
|
2020-02-21 23:56:26 +01:00
|
|
|
<div class="queue__section">
|
|
|
|
<div class="queue__sectionTitle">History</div>
|
|
|
|
{#each history as track}
|
2020-02-22 00:13:04 +01:00
|
|
|
<div class="track" class:track--active={track === $current} class:track--playing={!$paused} on:click={() => select(track)}>
|
2020-02-21 23:56:26 +01:00
|
|
|
<div class="track__main">
|
|
|
|
<div class="track__title">{track.title}</div>
|
|
|
|
<div class="track__subtitle">
|
|
|
|
shared by {track.referer.username} •
|
|
|
|
<DistanceDate date={track.date} />
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<button class="track__menu" aria-label="track menu"><IconMenu></IconMenu></button>
|
|
|
|
</div>
|
|
|
|
{/each}
|
|
|
|
{#if history.length === 0}
|
|
|
|
<div class="track">
|
|
|
|
<div class="track__main">
|
|
|
|
<div class="track__title placeholder"></div>
|
|
|
|
<div class="track__subtitle placeholder"></div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{/if}
|
|
|
|
</div>
|
2020-01-13 14:39:22 +01:00
|
|
|
</div>
|
|
|
|
|
|
|
|
<script>
|
2020-02-20 15:55:22 +01:00
|
|
|
import { getContext } from 'svelte'
|
2020-02-21 23:56:26 +01:00
|
|
|
import DistanceDate from '/components/DistanceDate'
|
|
|
|
import IconMenu from '/components/icons/Menu'
|
2020-01-13 14:39:22 +01:00
|
|
|
|
2020-02-20 15:55:22 +01:00
|
|
|
const current = getContext('current')
|
|
|
|
const enqueueing = getContext('enqueueing')
|
|
|
|
const next = getContext('next')
|
|
|
|
const queue = getContext('queue')
|
|
|
|
const select = getContext('select')
|
2020-02-22 00:13:04 +01:00
|
|
|
const paused = getContext('paused')
|
2020-02-20 15:55:22 +01:00
|
|
|
|
2020-02-14 16:48:49 +01:00
|
|
|
$: history = $queue.filter(x => x !== $next).reverse()
|
2020-01-13 14:39:22 +01:00
|
|
|
</script>
|