|
1 | 1 | <script lang="ts"> |
2 | | - import type { |
3 | | - LikedTrackObject, |
4 | | - Mixtape, |
5 | | - ReleaseHydrated, |
6 | | - TrackRaw, |
7 | | - UserProfile |
8 | | - } from '../../../../../shared/types'; |
| 2 | + import type { ReleaseHydrated, TrackRaw } from '../../../../../shared/types'; |
9 | 3 | import { prettifyDuration } from '../../../../../shared/utils'; |
10 | | - import type { Session } from '@supabase/supabase-js'; |
11 | 4 | import ReleaseTrackButton from './ReleaseTrackButton.svelte'; |
12 | 5 | import TrackLikeButton from './TrackLikeButton.svelte'; |
13 | 6 | import ThreeDots from '../icons/ThreeDots.svelte'; |
14 | 7 | import PopupWrapper from '../layout/PopupWrapper.svelte'; |
15 | 8 | import { addTrackToMixtape } from '$lib/remote-functions/mixtapes.remote'; |
| 9 | + import { userState } from '$lib/global/state.svelte'; |
16 | 10 |
|
17 | 11 | const { |
18 | 12 | i = undefined, |
19 | 13 | track, |
20 | 14 | release, |
21 | | - profileData, |
22 | | - session, |
23 | | - likedTracks, |
24 | | - mixtapes, |
25 | 15 | showReleaseAndArtist = false |
26 | 16 | }: { |
27 | 17 | i?: number; |
28 | 18 | track: TrackRaw; |
29 | 19 | release: ReleaseHydrated; |
30 | | - profileData: UserProfile; |
31 | | - session: Session; |
32 | | - likedTracks: LikedTrackObject[]; |
33 | | - mixtapes: Mixtape[]; |
34 | 20 | showReleaseAndArtist: boolean; |
35 | 21 | } = $props(); |
36 | 22 |
|
|
46 | 32 | {/if} |
47 | 33 | <td>{prettifyDuration(track.duration_seconds)}</td> |
48 | 34 | <td class="play-button-container"> |
49 | | - <ReleaseTrackButton {track} {release} {profileData} {session} /> |
| 35 | + <ReleaseTrackButton {track} {release} /> |
50 | 36 | </td> |
51 | 37 | <td> |
52 | | - <TrackLikeButton trackID={track.id} {likedTracks} lightOrDark={'light'} /> |
| 38 | + <TrackLikeButton |
| 39 | + trackID={track.id} |
| 40 | + likedTracks={userState.music.likedTracks} |
| 41 | + lightOrDark={'light'} |
| 42 | + /> |
53 | 43 | </td> |
54 | 44 | <td> |
55 | 45 | <div onclick={() => (popupMenuOpen = !popupMenuOpen)}><ThreeDots /></div> |
|
65 | 55 | >Add to mixtape: |
66 | 56 | <select {...addTrackToMixtape.fields.mixtapeId.as('select')}> |
67 | 57 | <option value="" disabled selected>Select a mixtape</option> |
68 | | - {#each mixtapes as mixtape} |
| 58 | + {#each userState.music.mixtapes as mixtape} |
69 | 59 | <option value={mixtape.id}>{mixtape.name}</option> |
70 | 60 | {/each} |
71 | 61 | </select> |
|
0 commit comments