From f2e73e0e53e3681e7fee4b173128bd736163e1d9 Mon Sep 17 00:00:00 2001 From: arijohn723 Date: Fri, 13 Feb 2026 17:16:57 -0600 Subject: [PATCH] playlist user controls --- src/api/queries/playlist/utils/users.ts | 46 +++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/api/queries/playlist/utils/users.ts diff --git a/src/api/queries/playlist/utils/users.ts b/src/api/queries/playlist/utils/users.ts new file mode 100644 index 00000000..b2178d2a --- /dev/null +++ b/src/api/queries/playlist/utils/users.ts @@ -0,0 +1,46 @@ +//playlist id + +import { getApi, getUser } from '@/src/stores' +import { getPlaylistsApi } from '@jellyfin/sdk/lib/utils/api' + +//get playlist users +function getPlaylistUsers(playlistId: string) { + //use api + const api = getApi() + //const user = getUser(); + const playlist = getPlaylistsApi(api!) + + return playlist.getPlaylistUsers({ playlistId }) +} + +//also need user id for add and remove user functions + +function addPlaylistUser(playlistId: string, userId: string, CanEdit: boolean) { + //use api + const api = getApi() + const playlist = getPlaylistsApi(api!) + + //use dto + return playlist.updatePlaylist({ + playlistId, + updatePlaylistDto: { + Users: [ + { + UserId: userId, + CanEdit, + }, + ], + }, + }) +} + +function removePlaylistUser(playlistId: string, userId: string) { + //use api + const api = getApi() + const playlist = getPlaylistsApi(api!) + + return playlist.removeUserFromPlaylist({ + playlistId, + userId, + }) +}