30 lines
746 B
TypeScript
30 lines
746 B
TypeScript
// @ts-expect-error
|
|
import { Deezer } from 'deezer-js'
|
|
import { ApiHandler } from '../../../types'
|
|
import { sessionDZ } from '../../../main'
|
|
|
|
const path: ApiHandler['path'] = '/getUserArtists'
|
|
|
|
const handler: ApiHandler['handler'] = async (req, res) => {
|
|
if (!sessionDZ[req.session.id]) sessionDZ[req.session.id] = new Deezer()
|
|
const dz = sessionDZ[req.session.id]
|
|
let data
|
|
|
|
if (dz.logged_in) {
|
|
const userID = dz.current_user.id
|
|
try {
|
|
data = await dz.api.get_user_artists(userID, { limit: -1 })
|
|
data = data.data
|
|
} catch {
|
|
data = await dz.gw.get_user_artists(userID, { limit: -1 })
|
|
}
|
|
} else {
|
|
data = { error: 'notLoggedIn' }
|
|
}
|
|
res.send(data)
|
|
}
|
|
|
|
const apiHandler: ApiHandler = { path, handler }
|
|
|
|
export default apiHandler
|