Files
music-v2/server/api/user/tracks.get.ts
2026-10-05 17:54:29 +02:00

22 lines
660 B
TypeScript

import { User } from "#server/models/user"
import { defineAuthenticatedEventHandler, requireAuthenticatedUser } from "#server/utils/auth"
import { setResponseStatus } from "h3"
export default defineAuthenticatedEventHandler(async (event) => {
const authenticatedUser = await requireAuthenticatedUser(event)
const user = await User.findById(authenticatedUser._id).populate({
path: "savedTracks",
populate: [
{ path: "artists" },
{ path: "album", populate: { path: "artists" } },
],
})
if (!user) {
setResponseStatus(event, 404)
return { message: "User not found" }
}
return user.savedTracks.filter((track: unknown) => track != null)
})