feat(playlists): reorder tracks
This commit is contained in:
@@ -4,6 +4,8 @@ import { PlayerClient } from '$lib/proto/player.client';
|
||||
import { LibraryClient } from '$lib/proto/library.client';
|
||||
import { serializable } from '$lib/proto';
|
||||
import type { PlayerStatus } from '$lib/proto/player';
|
||||
import { fail } from '@sveltejs/kit';
|
||||
import type { TrackList } from '$lib/proto/library';
|
||||
|
||||
export const actions = {
|
||||
play: async ({ params }) => {
|
||||
@@ -19,5 +21,26 @@ export const actions = {
|
||||
const client = new LibraryClient(protoTransport);
|
||||
|
||||
const _response = await client.deletePlaylist({ id: parseInt(params.id) });
|
||||
},
|
||||
'swap-tracks': async ({ params, request }) => {
|
||||
const formData = await request.formData();
|
||||
|
||||
const a = formData.get('a')?.toString();
|
||||
const b = formData.get('b')?.toString();
|
||||
|
||||
if (!a || !b) {
|
||||
return fail(400);
|
||||
}
|
||||
|
||||
const client = new LibraryClient(protoTransport);
|
||||
|
||||
const response = await client.swapTracks({
|
||||
playlistId: parseInt(params.id),
|
||||
aRank: parseInt(a),
|
||||
bRank: parseInt(b)
|
||||
});
|
||||
|
||||
console.log(response.response.tracks);
|
||||
return serializable<TrackList>(response.response);
|
||||
}
|
||||
} satisfies Actions;
|
||||
|
||||
Reference in New Issue
Block a user