next/server/api/user/me/reviews.get.ts

25 lines
591 B
TypeScript

import { isLoggedIn } from "@server/middlewareButNotReally";
import { Story } from "@models/stories";
import { Review } from "@models/stories/review";
export default eventHandler(async (ev) => {
isLoggedIn(ev);
let stories = await Story.find({
author: ev.context.currentUser!._id,
}).exec();
let idArr = stories.map((a) => a._id);
let ar = await Review.find({
leftOn: {
$in: idArr,
},
replyingTo: null,
})
.populate("story")
.exec();
return ar
.map((a) => a.toObject())
.sort(
(a, b) => b.datePosted.getMilliseconds() - a.datePosted.getMilliseconds(),
);
});