@zeltjs/adapter-lambda 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { EnvConfig, HttpApp, ReadyResult } from "@zeltjs/core";
1
+ import { EnvAdaptor, HttpApp, ReadyResult } from "@zeltjs/core";
2
2
  import { Writable } from "node:stream";
3
3
 
4
- //#region src/lambda-env.config.d.ts
5
- declare class LambdaEnvConfig extends EnvConfig {
4
+ //#region src/lambda-env.adaptor.d.ts
5
+ declare class LambdaEnvAdaptor extends EnvAdaptor {
6
6
  get(key: string): string | undefined;
7
7
  }
8
8
  //#endregion
@@ -337,5 +337,5 @@ type LambdaApp = ReadyResult & {
337
337
  };
338
338
  declare const onLambda: (app: HttpApp, options?: LambdaAppOptions) => Promise<LambdaApp>;
339
339
  //#endregion
340
- export { type LambdaApp, type LambdaAppOptions, LambdaEnvConfig, type LambdaHandlerV1, type LambdaHandlerV2, onLambda };
340
+ export { type LambdaApp, type LambdaAppOptions, LambdaEnvAdaptor, type LambdaHandlerV1, type LambdaHandlerV2, onLambda };
341
341
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":["APIGatewayAuthorizerResultContext","name","APIGatewayEventDefaultAuthorizerContext","APIGatewayEventRequestContext","APIGatewayEventRequestContextWithAuthorizer","TAuthorizerContext","APIGatewayEventIdentity","accountId","apiId","authorizer","connectedAt","connectionId","domainName","domainPrefix","eventType","extendedRequestId","protocol","httpMethod","identity","messageDirection","messageId","path","stage","requestId","requestTime","requestTimeEpoch","resourceId","resourcePath","routeKey","APIGatewayEventClientCertificate","clientCertPem","serialNumber","subjectDN","issuerDN","validity","notAfter","notBefore","accessKey","apiKey","apiKeyId","caller","clientCert","cognitoAuthenticationProvider","cognitoAuthenticationType","cognitoIdentityId","cognitoIdentityPoolId","principalOrgId","sourceIp","user","userAgent","userArn","Writable","Handler","TEvent","TResult","Context","Callback","Promise","event","context","callback","CognitoIdentity","ClientContext","Error","callbackWaitsForEmptyEventLoop","functionName","functionVersion","invokedFunctionArn","memoryLimitInMB","awsRequestId","logGroupName","logStreamName","identity","clientContext","getRemainingTimeInMillis","done","error","result","fail","succeed","messageOrObject","message","object","cognitoIdentityId","cognitoIdentityPoolId","ClientContextClient","ClientContextEnv","client","Custom","env","installationId","appTitle","appVersionName","appVersionCode","appPackageName","platformVersion","platform","make","model","locale","StreamifyHandler","awslambda","HttpResponseStream","responseStream","_0","Record","global","from","writable","metadata","setContentType","contentType","streamifyResponse","handler","sideEffect","APIGatewayEventClientCertificate","APIGatewayEventDefaultAuthorizerContext","APIGatewayEventRequestContextWithAuthorizer","Callback","CognitoIdentity","Handler","APIGatewayProxyHandler","APIGatewayProxyEvent","APIGatewayProxyResult","APIGatewayProxyCallback","APIGatewayProxyHandlerV2","T","APIGatewayProxyEventV2","APIGatewayProxyResultV2","APIGatewayProxyWebsocketHandlerV2","APIGatewayProxyWebsocketEventV2","APIGatewayProxyHandlerV2WithJWTAuthorizer","APIGatewayProxyEventV2WithJWTAuthorizer","APIGatewayProxyHandlerV2WithLambdaAuthorizer","TAuthorizerContext","APIGatewayProxyEventV2WithLambdaAuthorizer","APIGatewayProxyHandlerV2WithIAMAuthorizer","APIGatewayProxyEventV2WithIAMAuthorizer","APIGatewayProxyCallbackV2","APIGatewayProxyEventBase","APIGatewayProxyWithLambdaAuthorizerHandler","APIGatewayProxyWithLambdaAuthorizerEvent","APIGatewayProxyWithCognitoAuthorizerHandler","APIGatewayProxyWithCognitoAuthorizerEvent","APIGatewayEventLambdaAuthorizerContext","APIGatewayProxyWithLambdaAuthorizerEventRequestContext","P","principalId","integrationLatency","APIGatewayProxyCognitoAuthorizer","claims","name","APIGatewayProxyEventHeaders","APIGatewayProxyEventMultiValueHeaders","APIGatewayProxyEventPathParameters","APIGatewayProxyEventQueryStringParameters","APIGatewayProxyEventMultiValueQueryStringParameters","APIGatewayProxyEventStageVariables","body","headers","multiValueHeaders","httpMethod","isBase64Encoded","path","pathParameters","queryStringParameters","multiValueQueryStringParameters","stageVariables","requestContext","resource","Array","statusCode","header","APIGatewayEventRequestContextV2","accountId","apiId","authentication","clientCert","domainName","domainPrefix","http","method","protocol","sourceIp","userAgent","requestId","routeKey","stage","time","timeEpoch","APIGatewayEventWebsocketRequestContextV2","messageId","eventType","extendedRequestId","requestTime","messageDirection","connectedAt","requestTimeEpoch","connectionId","APIGatewayProxyEventV2WithRequestContext","TRequestContext","version","rawPath","rawQueryString","cookies","APIGatewayProxyWebsocketEventV2WithRequestContext","APIGatewayEventRequestContextLambdaAuthorizer","lambda","APIGatewayEventRequestContextJWTAuthorizer","jwt","scopes","APIGatewayEventRequestContextIAMAuthorizer","iam","accessKey","callerId","cognitoIdentity","principalOrgId","userArn","userId","APIGatewayEventRequestContextV2WithAuthorizer","TAuthorizer","authorizer","APIGatewayProxyStructuredResultV2","ProxyHandler","ProxyCallback","APIGatewayEvent","ProxyResult"],"sources":["../src/lambda-env.config.ts","../../../node_modules/.pnpm/@types+aws-lambda@8.10.150/node_modules/@types/aws-lambda/common/api-gateway.d.ts","../../../node_modules/.pnpm/@types+aws-lambda@8.10.150/node_modules/@types/aws-lambda/handler.d.ts","../../../node_modules/.pnpm/@types+aws-lambda@8.10.150/node_modules/@types/aws-lambda/trigger/api-gateway-proxy.d.ts","../src/on-lambda.ts"],"x_google_ignoreList":[1,2,3],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":["APIGatewayAuthorizerResultContext","name","APIGatewayEventDefaultAuthorizerContext","APIGatewayEventRequestContext","APIGatewayEventRequestContextWithAuthorizer","TAuthorizerContext","APIGatewayEventIdentity","accountId","apiId","authorizer","connectedAt","connectionId","domainName","domainPrefix","eventType","extendedRequestId","protocol","httpMethod","identity","messageDirection","messageId","path","stage","requestId","requestTime","requestTimeEpoch","resourceId","resourcePath","routeKey","APIGatewayEventClientCertificate","clientCertPem","serialNumber","subjectDN","issuerDN","validity","notAfter","notBefore","accessKey","apiKey","apiKeyId","caller","clientCert","cognitoAuthenticationProvider","cognitoAuthenticationType","cognitoIdentityId","cognitoIdentityPoolId","principalOrgId","sourceIp","user","userAgent","userArn","Writable","Handler","TEvent","TResult","Context","Callback","Promise","event","context","callback","CognitoIdentity","ClientContext","Error","callbackWaitsForEmptyEventLoop","functionName","functionVersion","invokedFunctionArn","memoryLimitInMB","awsRequestId","logGroupName","logStreamName","identity","clientContext","getRemainingTimeInMillis","done","error","result","fail","succeed","messageOrObject","message","object","cognitoIdentityId","cognitoIdentityPoolId","ClientContextClient","ClientContextEnv","client","Custom","env","installationId","appTitle","appVersionName","appVersionCode","appPackageName","platformVersion","platform","make","model","locale","StreamifyHandler","awslambda","HttpResponseStream","responseStream","_0","Record","global","from","writable","metadata","setContentType","contentType","streamifyResponse","handler","sideEffect","APIGatewayEventClientCertificate","APIGatewayEventDefaultAuthorizerContext","APIGatewayEventRequestContextWithAuthorizer","Callback","CognitoIdentity","Handler","APIGatewayProxyHandler","APIGatewayProxyEvent","APIGatewayProxyResult","APIGatewayProxyCallback","APIGatewayProxyHandlerV2","T","APIGatewayProxyEventV2","APIGatewayProxyResultV2","APIGatewayProxyWebsocketHandlerV2","APIGatewayProxyWebsocketEventV2","APIGatewayProxyHandlerV2WithJWTAuthorizer","APIGatewayProxyEventV2WithJWTAuthorizer","APIGatewayProxyHandlerV2WithLambdaAuthorizer","TAuthorizerContext","APIGatewayProxyEventV2WithLambdaAuthorizer","APIGatewayProxyHandlerV2WithIAMAuthorizer","APIGatewayProxyEventV2WithIAMAuthorizer","APIGatewayProxyCallbackV2","APIGatewayProxyEventBase","APIGatewayProxyWithLambdaAuthorizerHandler","APIGatewayProxyWithLambdaAuthorizerEvent","APIGatewayProxyWithCognitoAuthorizerHandler","APIGatewayProxyWithCognitoAuthorizerEvent","APIGatewayEventLambdaAuthorizerContext","APIGatewayProxyWithLambdaAuthorizerEventRequestContext","P","principalId","integrationLatency","APIGatewayProxyCognitoAuthorizer","claims","name","APIGatewayProxyEventHeaders","APIGatewayProxyEventMultiValueHeaders","APIGatewayProxyEventPathParameters","APIGatewayProxyEventQueryStringParameters","APIGatewayProxyEventMultiValueQueryStringParameters","APIGatewayProxyEventStageVariables","body","headers","multiValueHeaders","httpMethod","isBase64Encoded","path","pathParameters","queryStringParameters","multiValueQueryStringParameters","stageVariables","requestContext","resource","Array","statusCode","header","APIGatewayEventRequestContextV2","accountId","apiId","authentication","clientCert","domainName","domainPrefix","http","method","protocol","sourceIp","userAgent","requestId","routeKey","stage","time","timeEpoch","APIGatewayEventWebsocketRequestContextV2","messageId","eventType","extendedRequestId","requestTime","messageDirection","connectedAt","requestTimeEpoch","connectionId","APIGatewayProxyEventV2WithRequestContext","TRequestContext","version","rawPath","rawQueryString","cookies","APIGatewayProxyWebsocketEventV2WithRequestContext","APIGatewayEventRequestContextLambdaAuthorizer","lambda","APIGatewayEventRequestContextJWTAuthorizer","jwt","scopes","APIGatewayEventRequestContextIAMAuthorizer","iam","accessKey","callerId","cognitoIdentity","principalOrgId","userArn","userId","APIGatewayEventRequestContextV2WithAuthorizer","TAuthorizer","authorizer","APIGatewayProxyStructuredResultV2","ProxyHandler","ProxyCallback","APIGatewayEvent","ProxyResult"],"sources":["../src/lambda-env.adaptor.ts","../../../node_modules/.pnpm/@types+aws-lambda@8.10.150/node_modules/@types/aws-lambda/common/api-gateway.d.ts","../../../node_modules/.pnpm/@types+aws-lambda@8.10.150/node_modules/@types/aws-lambda/handler.d.ts","../../../node_modules/.pnpm/@types+aws-lambda@8.10.150/node_modules/@types/aws-lambda/trigger/api-gateway-proxy.d.ts","../src/on-lambda.ts"],"x_google_ignoreList":[1,2,3],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,17 +1,17 @@
1
- import { Config, EnvConfig } from "@zeltjs/core";
2
- //#region src/lambda-env.config.ts
1
+ import { Config, EnvAdaptor } from "@zeltjs/core";
2
+ //#region src/lambda-env.adaptor.ts
3
3
  function _ts_decorate(decorators, target, key, desc) {
4
4
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5
5
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
6
6
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
7
7
  return c > 3 && r && Object.defineProperty(target, key, r), r;
8
8
  }
9
- var LambdaEnvConfig = class extends EnvConfig {
9
+ var LambdaEnvAdaptor = class extends EnvAdaptor {
10
10
  get(key) {
11
11
  return process.env[key];
12
12
  }
13
13
  };
14
- LambdaEnvConfig = _ts_decorate([Config], LambdaEnvConfig);
14
+ LambdaEnvAdaptor = _ts_decorate([Config], LambdaEnvAdaptor);
15
15
  //#endregion
16
16
  //#region src/on-lambda.ts
17
17
  const buildHeadersFromRecord = (headersRecord) => {
@@ -101,7 +101,7 @@ const createHandlerV1 = (appFetch) => {
101
101
  };
102
102
  };
103
103
  const onLambda = async (app, options = {}) => {
104
- app.addFallbackConfig(LambdaEnvConfig);
104
+ app.addFallbackConfig(LambdaEnvAdaptor);
105
105
  const readyOptions = { warmup: options.warmup ?? false };
106
106
  const resolver = await app.ready(readyOptions);
107
107
  const handler = createHandlerV2(app.fetch);
@@ -114,6 +114,6 @@ const onLambda = async (app, options = {}) => {
114
114
  };
115
115
  };
116
116
  //#endregion
117
- export { LambdaEnvConfig, onLambda };
117
+ export { LambdaEnvAdaptor, onLambda };
118
118
 
119
119
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Config","EnvConfig","LambdaEnvConfig","get","key","process","env","LambdaEnvConfig","buildHeadersFromRecord","headersRecord","headers","Headers","key","value","Object","entries","set","buildBodyFromEvent","body","isBase64Encoded","buffer","Buffer","from","Blob","buildRequestBody","method","buildRequestFromEventV2","event","protocol","get","host","requestContext","domainName","path","rawPath","queryString","rawQueryString","url","http","requestBody","Request","buildQueryStringFromParams","queryParams","params","undefined","URLSearchParams","toString","buildRequestFromEventV1","queryStringParameters","httpMethod","buildResultFromResponseV2","response","forEach","contentType","isBinary","startsWith","arrayBuffer","text","statusCode","status","buildResultFromResponseV1","createHandlerV2","appFetch","_context","request","createHandlerV1","onLambda","app","options","addFallbackConfig","readyOptions","warmup","resolver","ready","handler","fetch","handlerV1","shutdown"],"sources":["../src/lambda-env.config.ts","../src/on-lambda.ts"],"sourcesContent":["import { Config, EnvConfig } from '@zeltjs/core';\n\n@Config\nexport class LambdaEnvConfig extends EnvConfig {\n override get(key: string): string | undefined {\n return process.env[key];\n }\n}\n","import type { HttpApp, ReadyOptions, ReadyResult } from '@zeltjs/core';\nimport type {\n APIGatewayProxyEvent,\n APIGatewayProxyEventV2,\n APIGatewayProxyResult,\n APIGatewayProxyResultV2,\n Context,\n} from 'aws-lambda';\n\nimport { LambdaEnvConfig } from './lambda-env.config';\n\nexport type LambdaAppOptions = {\n readonly warmup?: boolean;\n};\n\nexport type LambdaHandlerV2 = (\n event: APIGatewayProxyEventV2,\n context: Context,\n) => Promise<APIGatewayProxyResultV2>;\n\nexport type LambdaHandlerV1 = (\n event: APIGatewayProxyEvent,\n context: Context,\n) => Promise<APIGatewayProxyResult>;\n\nexport type LambdaApp = ReadyResult & {\n readonly handler: LambdaHandlerV2;\n readonly handlerV1: LambdaHandlerV1;\n readonly shutdown: () => Promise<void>;\n};\n\nconst buildHeadersFromRecord = (\n headersRecord: Record<string, string | undefined> | undefined,\n): Headers => {\n const headers = new Headers();\n if (headersRecord) {\n for (const [key, value] of Object.entries(headersRecord)) {\n if (value) headers.set(key, value);\n }\n }\n return headers;\n};\n\nconst buildBodyFromEvent = (\n body: string | null | undefined,\n isBase64Encoded: boolean,\n): BodyInit | null => {\n if (!body) return null;\n if (isBase64Encoded) {\n const buffer = Buffer.from(body, 'base64');\n return new Blob([buffer]);\n }\n return body;\n};\n\nconst buildRequestBody = (method: string, body: BodyInit | null): BodyInit | null => {\n return method !== 'GET' && method !== 'HEAD' ? body : null;\n};\n\nconst buildRequestFromEventV2 = (event: APIGatewayProxyEventV2): Request => {\n const headers = buildHeadersFromRecord(event.headers);\n\n const protocol = headers.get('x-forwarded-proto') ?? 'https';\n const host = event.requestContext.domainName;\n const path = event.rawPath;\n const queryString = event.rawQueryString ? `?${event.rawQueryString}` : '';\n const url = `${protocol}://${host}${path}${queryString}`;\n\n const method = event.requestContext.http.method;\n const body = buildBodyFromEvent(event.body, event.isBase64Encoded);\n const requestBody = buildRequestBody(method, body);\n\n return new Request(url, {\n method,\n headers,\n body: requestBody,\n });\n};\n\nconst buildQueryStringFromParams = (\n queryParams: Record<string, string | undefined> | null | undefined,\n): string => {\n if (!queryParams) return '';\n const params: Record<string, string> = {};\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== undefined) {\n params[key] = value;\n }\n }\n return `?${new URLSearchParams(params).toString()}`;\n};\n\nconst buildRequestFromEventV1 = (event: APIGatewayProxyEvent): Request => {\n const headers = buildHeadersFromRecord(event.headers);\n\n const protocol = headers.get('x-forwarded-proto') ?? 'https';\n const host = headers.get('host') ?? 'localhost';\n const path = event.path;\n\n const queryString = buildQueryStringFromParams(event.queryStringParameters);\n const url = `${protocol}://${host}${path}${queryString}`;\n\n const method = event.httpMethod;\n const body = buildBodyFromEvent(event.body, event.isBase64Encoded);\n const requestBody = buildRequestBody(method, body);\n\n return new Request(url, {\n method,\n headers,\n body: requestBody,\n });\n};\n\nconst buildResultFromResponseV2 = async (response: Response): Promise<APIGatewayProxyResultV2> => {\n const headers: Record<string, string> = {};\n response.headers.forEach((value, key) => {\n headers[key] = value;\n });\n\n const contentType = response.headers.get('content-type') ?? '';\n const isBinary =\n contentType.startsWith('image/') ||\n contentType.startsWith('audio/') ||\n contentType.startsWith('video/') ||\n contentType === 'application/octet-stream';\n\n const body = isBinary\n ? Buffer.from(await response.arrayBuffer()).toString('base64')\n : await response.text();\n\n return {\n statusCode: response.status,\n headers,\n body,\n isBase64Encoded: isBinary,\n };\n};\n\nconst buildResultFromResponseV1 = async (response: Response): Promise<APIGatewayProxyResult> => {\n const headers: Record<string, string> = {};\n response.headers.forEach((value, key) => {\n headers[key] = value;\n });\n\n const contentType = response.headers.get('content-type') ?? '';\n const isBinary =\n contentType.startsWith('image/') ||\n contentType.startsWith('audio/') ||\n contentType.startsWith('video/') ||\n contentType === 'application/octet-stream';\n\n const body = isBinary\n ? Buffer.from(await response.arrayBuffer()).toString('base64')\n : await response.text();\n\n return {\n statusCode: response.status,\n headers,\n body,\n isBase64Encoded: isBinary,\n };\n};\n\nconst createHandlerV2 = (appFetch: (request: Request) => Promise<Response>): LambdaHandlerV2 => {\n return async (\n event: APIGatewayProxyEventV2,\n _context: Context,\n ): Promise<APIGatewayProxyResultV2> => {\n const request = buildRequestFromEventV2(event);\n const response = await appFetch(request);\n return buildResultFromResponseV2(response);\n };\n};\n\nconst createHandlerV1 = (appFetch: (request: Request) => Promise<Response>): LambdaHandlerV1 => {\n return async (event: APIGatewayProxyEvent, _context: Context): Promise<APIGatewayProxyResult> => {\n const request = buildRequestFromEventV1(event);\n const response = await appFetch(request);\n return buildResultFromResponseV1(response);\n };\n};\n\nexport const onLambda = async (\n app: HttpApp,\n options: LambdaAppOptions = {},\n): Promise<LambdaApp> => {\n app.addFallbackConfig(LambdaEnvConfig);\n\n const readyOptions: ReadyOptions = { warmup: options.warmup ?? false };\n const resolver = await app.ready(readyOptions);\n\n const handler = createHandlerV2(app.fetch);\n const handlerV1 = createHandlerV1(app.fetch);\n\n return {\n ...resolver,\n handler,\n handlerV1,\n shutdown: app.shutdown,\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Config","EnvAdaptor","LambdaEnvAdaptor","get","key","process","env","LambdaEnvAdaptor","buildHeadersFromRecord","headersRecord","headers","Headers","key","value","Object","entries","set","buildBodyFromEvent","body","isBase64Encoded","buffer","Buffer","from","Blob","buildRequestBody","method","buildRequestFromEventV2","event","protocol","get","host","requestContext","domainName","path","rawPath","queryString","rawQueryString","url","http","requestBody","Request","buildQueryStringFromParams","queryParams","params","undefined","URLSearchParams","toString","buildRequestFromEventV1","queryStringParameters","httpMethod","buildResultFromResponseV2","response","forEach","contentType","isBinary","startsWith","arrayBuffer","text","statusCode","status","buildResultFromResponseV1","createHandlerV2","appFetch","_context","request","createHandlerV1","onLambda","app","options","addFallbackConfig","readyOptions","warmup","resolver","ready","handler","fetch","handlerV1","shutdown"],"sources":["../src/lambda-env.adaptor.ts","../src/on-lambda.ts"],"sourcesContent":["import { Config, EnvAdaptor } from '@zeltjs/core';\n\n@Config\nexport class LambdaEnvAdaptor extends EnvAdaptor {\n override get(key: string): string | undefined {\n return process.env[key];\n }\n}\n","import type { HttpApp, ReadyOptions, ReadyResult } from '@zeltjs/core';\nimport type {\n APIGatewayProxyEvent,\n APIGatewayProxyEventV2,\n APIGatewayProxyResult,\n APIGatewayProxyResultV2,\n Context,\n} from 'aws-lambda';\n\nimport { LambdaEnvAdaptor } from './lambda-env.adaptor';\n\nexport type LambdaAppOptions = {\n readonly warmup?: boolean;\n};\n\nexport type LambdaHandlerV2 = (\n event: APIGatewayProxyEventV2,\n context: Context,\n) => Promise<APIGatewayProxyResultV2>;\n\nexport type LambdaHandlerV1 = (\n event: APIGatewayProxyEvent,\n context: Context,\n) => Promise<APIGatewayProxyResult>;\n\nexport type LambdaApp = ReadyResult & {\n readonly handler: LambdaHandlerV2;\n readonly handlerV1: LambdaHandlerV1;\n readonly shutdown: () => Promise<void>;\n};\n\nconst buildHeadersFromRecord = (\n headersRecord: Record<string, string | undefined> | undefined,\n): Headers => {\n const headers = new Headers();\n if (headersRecord) {\n for (const [key, value] of Object.entries(headersRecord)) {\n if (value) headers.set(key, value);\n }\n }\n return headers;\n};\n\nconst buildBodyFromEvent = (\n body: string | null | undefined,\n isBase64Encoded: boolean,\n): BodyInit | null => {\n if (!body) return null;\n if (isBase64Encoded) {\n const buffer = Buffer.from(body, 'base64');\n return new Blob([buffer]);\n }\n return body;\n};\n\nconst buildRequestBody = (method: string, body: BodyInit | null): BodyInit | null => {\n return method !== 'GET' && method !== 'HEAD' ? body : null;\n};\n\nconst buildRequestFromEventV2 = (event: APIGatewayProxyEventV2): Request => {\n const headers = buildHeadersFromRecord(event.headers);\n\n const protocol = headers.get('x-forwarded-proto') ?? 'https';\n const host = event.requestContext.domainName;\n const path = event.rawPath;\n const queryString = event.rawQueryString ? `?${event.rawQueryString}` : '';\n const url = `${protocol}://${host}${path}${queryString}`;\n\n const method = event.requestContext.http.method;\n const body = buildBodyFromEvent(event.body, event.isBase64Encoded);\n const requestBody = buildRequestBody(method, body);\n\n return new Request(url, {\n method,\n headers,\n body: requestBody,\n });\n};\n\nconst buildQueryStringFromParams = (\n queryParams: Record<string, string | undefined> | null | undefined,\n): string => {\n if (!queryParams) return '';\n const params: Record<string, string> = {};\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== undefined) {\n params[key] = value;\n }\n }\n return `?${new URLSearchParams(params).toString()}`;\n};\n\nconst buildRequestFromEventV1 = (event: APIGatewayProxyEvent): Request => {\n const headers = buildHeadersFromRecord(event.headers);\n\n const protocol = headers.get('x-forwarded-proto') ?? 'https';\n const host = headers.get('host') ?? 'localhost';\n const path = event.path;\n\n const queryString = buildQueryStringFromParams(event.queryStringParameters);\n const url = `${protocol}://${host}${path}${queryString}`;\n\n const method = event.httpMethod;\n const body = buildBodyFromEvent(event.body, event.isBase64Encoded);\n const requestBody = buildRequestBody(method, body);\n\n return new Request(url, {\n method,\n headers,\n body: requestBody,\n });\n};\n\nconst buildResultFromResponseV2 = async (response: Response): Promise<APIGatewayProxyResultV2> => {\n const headers: Record<string, string> = {};\n response.headers.forEach((value, key) => {\n headers[key] = value;\n });\n\n const contentType = response.headers.get('content-type') ?? '';\n const isBinary =\n contentType.startsWith('image/') ||\n contentType.startsWith('audio/') ||\n contentType.startsWith('video/') ||\n contentType === 'application/octet-stream';\n\n const body = isBinary\n ? Buffer.from(await response.arrayBuffer()).toString('base64')\n : await response.text();\n\n return {\n statusCode: response.status,\n headers,\n body,\n isBase64Encoded: isBinary,\n };\n};\n\nconst buildResultFromResponseV1 = async (response: Response): Promise<APIGatewayProxyResult> => {\n const headers: Record<string, string> = {};\n response.headers.forEach((value, key) => {\n headers[key] = value;\n });\n\n const contentType = response.headers.get('content-type') ?? '';\n const isBinary =\n contentType.startsWith('image/') ||\n contentType.startsWith('audio/') ||\n contentType.startsWith('video/') ||\n contentType === 'application/octet-stream';\n\n const body = isBinary\n ? Buffer.from(await response.arrayBuffer()).toString('base64')\n : await response.text();\n\n return {\n statusCode: response.status,\n headers,\n body,\n isBase64Encoded: isBinary,\n };\n};\n\nconst createHandlerV2 = (appFetch: (request: Request) => Promise<Response>): LambdaHandlerV2 => {\n return async (\n event: APIGatewayProxyEventV2,\n _context: Context,\n ): Promise<APIGatewayProxyResultV2> => {\n const request = buildRequestFromEventV2(event);\n const response = await appFetch(request);\n return buildResultFromResponseV2(response);\n };\n};\n\nconst createHandlerV1 = (appFetch: (request: Request) => Promise<Response>): LambdaHandlerV1 => {\n return async (event: APIGatewayProxyEvent, _context: Context): Promise<APIGatewayProxyResult> => {\n const request = buildRequestFromEventV1(event);\n const response = await appFetch(request);\n return buildResultFromResponseV1(response);\n };\n};\n\nexport const onLambda = async (\n app: HttpApp,\n options: LambdaAppOptions = {},\n): Promise<LambdaApp> => {\n app.addFallbackConfig(LambdaEnvAdaptor);\n\n const readyOptions: ReadyOptions = { warmup: options.warmup ?? false };\n const resolver = await app.ready(readyOptions);\n\n const handler = createHandlerV2(app.fetch);\n const handlerV1 = createHandlerV1(app.fetch);\n\n return {\n ...resolver,\n handler,\n handlerV1,\n shutdown: app.shutdown,\n };\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeltjs/adapter-lambda",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -21,7 +21,7 @@
21
21
  "dist"
22
22
  ],
23
23
  "dependencies": {
24
- "@zeltjs/core": "0.7.0"
24
+ "@zeltjs/core": "0.8.0"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/aws-lambda": "8.10.150",