monkeytype/backend/handlers/monkey-response.js
Jack 226de70e36
Added monkey status codes (#2613)
* test code

* added some monkey status codes

* adding status message to response

* added more codes

* using all new codes
2022-03-02 02:14:32 +01:00

27 lines
794 B
JavaScript

import { getCodesRangeStart } from "../constants/monkey-status-codes";
export class MonkeyResponse {
constructor(message, data, status = 200) {
this.message = message;
this.data = data ?? null;
this.status = status;
}
}
export function handleMonkeyResponse(handlerData, res) {
const isMonkeyResponse = handlerData instanceof MonkeyResponse;
const monkeyResponse = !isMonkeyResponse
? new MonkeyResponse("ok", handlerData)
: handlerData;
const { message, data, status } = monkeyResponse;
res.status(status);
if (status >= getCodesRangeStart()) res.statusMessage = message;
res.monkeyMessage = message; // so that we can see message in swagger stats
if ([301, 302].includes(status)) {
return res.redirect(data);
}
res.json({ message, data });
}