From 43568713b6b3fd8070beb6d0610db9e493b52462 Mon Sep 17 00:00:00 2001 From: Roberto Tonino Date: Wed, 11 Aug 2021 15:25:02 +0200 Subject: [PATCH] feat(server): added spotifyStatus endpoint to get spotify plugin status; feat(server): added plugin information on connect endpoint --- server/src/routes/api/get/index.ts | 4 +++- server/src/routes/api/get/spotifyStatus.ts | 12 ++++++++++++ server/src/routes/index.ts | 5 +++-- 3 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 server/src/routes/api/get/spotifyStatus.ts diff --git a/server/src/routes/api/get/index.ts b/server/src/routes/api/get/index.ts index b058ed2..435426c 100644 --- a/server/src/routes/api/get/index.ts +++ b/server/src/routes/api/get/index.ts @@ -16,6 +16,7 @@ import getUserPlaylists from './getUserPlaylists' import getUserSpotifyPlaylists from './getUserSpotifyPlaylists' import getUserFavorites from './getUserFavorites' import getQueue from './getQueue' +import spotifyStatus from './spotifyStatus' export default [ albumSearch, @@ -35,5 +36,6 @@ export default [ getUserPlaylists, getUserSpotifyPlaylists, getUserFavorites, - getQueue + getQueue, + spotifyStatus ] diff --git a/server/src/routes/api/get/spotifyStatus.ts b/server/src/routes/api/get/spotifyStatus.ts new file mode 100644 index 0000000..a4fec73 --- /dev/null +++ b/server/src/routes/api/get/spotifyStatus.ts @@ -0,0 +1,12 @@ +import { ApiHandler } from '../../../types' +import { plugins } from '../../../main' + +const path: ApiHandler['path'] = '/spotifyStatus' + +const handler: ApiHandler['handler'] = (_, res) => { + res.send({ spotifyEnabled: plugins.spotify.enabled }) +} + +const apiHandler: ApiHandler = { path, handler } + +export default apiHandler diff --git a/server/src/routes/index.ts b/server/src/routes/index.ts index 87c2415..665e34b 100644 --- a/server/src/routes/index.ts +++ b/server/src/routes/index.ts @@ -3,7 +3,7 @@ import express from 'express' // @ts-expect-error import { Deezer } from 'deezer-js' import { GUI_PACKAGE } from '../helpers/paths' -import { sessionDZ, getQueue, deemixVersion, isDeezerAvailable } from '../main' +import { sessionDZ, getQueue, deemixVersion, isDeezerAvailable, plugins } from '../main' const router = express.Router() let update: any = null @@ -27,7 +27,8 @@ router.get('/connect', async (req, res) => { update, autologin: !dz.logged_in, currentUser: dz.current_user, - deezerAvailable: await isDeezerAvailable() + deezerAvailable: await isDeezerAvailable(), + spotifyEnabled: plugins.spotify.enabled } const queue = getQueue()