UNPKG

@h4ad/serverless-adapter

Version:

Run REST APIs and other web applications using your existing Node.js application framework (NestJS, Express, Koa, Hapi, Fastify and many others), on top of AWS, Azure, Digital Ocean and many other clouds.

1 lines 1.89 kB
{"version":3,"sources":["../../../src/frameworks/deepkit/http-deepkit.framework.ts"],"sourcesContent":["//#region\n\nimport type { ServerResponse } from 'http';\nimport { HttpKernel, HttpResponse, RequestBuilder } from '@deepkit/http';\nimport type { FrameworkContract } from '../../contracts';\nimport { getFlattenedHeadersMap } from '../../core';\nimport { ServerlessRequest } from '../../network';\n\n//#endregion\n\n/**\n * The framework that forwards requests to express handler\n *\n * @breadcrumb Frameworks / HttpDeepkitFramework\n * @public\n */\nexport class HttpDeepkitFramework implements FrameworkContract<HttpKernel> {\n /**\n * {@inheritDoc}\n */\n public sendRequest(\n app: HttpKernel,\n request: ServerlessRequest,\n response: ServerResponse,\n ): void {\n const flattenedHeaders = getFlattenedHeadersMap(request.headers);\n\n let requestBuilder = new RequestBuilder(\n request.url!,\n request.method,\n ).headers(flattenedHeaders);\n\n if (request.body) {\n requestBuilder = Buffer.isBuffer(request.body)\n ? requestBuilder.body(request.body)\n : requestBuilder.body(Buffer.from(request.body));\n }\n\n const httpRequest = requestBuilder.build();\n\n app.handleRequest(httpRequest, response as HttpResponse);\n }\n}\n"],"mappings":"0FAGA,OAAmC,kBAAAA,MAAsB,gBAalD,IAAMC,EAAN,KAAoE,CAhB3E,MAgB2E,CAAAC,EAAA,6BAIlE,YACLC,EACAC,EACAC,EACM,CACN,IAAMC,EAAmBC,EAAuBH,EAAQ,OAAO,EAE3DI,EAAiB,IAAIC,EACvBL,EAAQ,IACRA,EAAQ,MACV,EAAE,QAAQE,CAAgB,EAEtBF,EAAQ,OACVI,EAAiB,OAAO,SAASJ,EAAQ,IAAI,EACzCI,EAAe,KAAKJ,EAAQ,IAAI,EAChCI,EAAe,KAAK,OAAO,KAAKJ,EAAQ,IAAI,CAAC,GAGnD,IAAMM,EAAcF,EAAe,MAAM,EAEzCL,EAAI,cAAcO,EAAaL,CAAwB,CACzD,CACF","names":["RequestBuilder","HttpDeepkitFramework","__name","app","request","response","flattenedHeaders","getFlattenedHeadersMap","requestBuilder","RequestBuilder","httpRequest"]}