import {ResponseFactory} from "./ResponseFactory"; import {Request} from "../lifecycle/Request"; /** * Helper function to create a new JSONResponseFactory of the given value. * @param value */ export function json(value: any): JSONResponseFactory { return new JSONResponseFactory(value) } /** * Response factory that writes the given object as JSON to the response. */ export class JSONResponseFactory extends ResponseFactory { constructor( public readonly value: any ) { super() } public async write(request: Request) { request = await super.write(request) request.response.setHeader('Content-Type', 'application/json') request.response.body = JSON.stringify(this.value) return request } }