0
0
Fork 0
This commit is contained in:
Oliver Akins 2022-07-22 00:22:49 -06:00
parent 6a5f642fb4
commit 48dffc112a
No known key found for this signature in database
GPG key ID: 3C2014AF9457AF99
21 changed files with 1327 additions and 0 deletions

View file

@ -0,0 +1,46 @@
import { ServerRoute } from "@hapi/hapi";
import { formatMessage } from "@/utils";
import boom from "@hapi/boom";
import { db } from "@/main";
import Joi from "joi";
const data: ServerRoute = {
method: `GET`, path: `/{channel}/unlurk`,
options: {
auth: false,
validate: {
params: Joi.object({
channel: Joi.string().alphanum(),
}),
query: Joi.object({
user: Joi.string(),
}),
},
},
async handler(request, h) {
const { channel } = request.params;
const { user } = request.query;
if (!db[channel]) {
throw boom.notFound(`Invalid channel`);
};
const messages = db[channel].messages;
const messageId = db[channel].lurkers[user];
const message = messages[messageId];
let lurkMessage = message.unlurk[Math.floor(Math.random() * message.unlurk.length)];
delete db[channel].lurkers[user];
let twitchMessage = formatMessage(
lurkMessage,
{
user,
channel,
}
);
return h.response(twitchMessage).code(200);
},
};
export default data;