@h4ad/serverless-adapter 4.2.1 → 4.2.2

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.
Files changed (65) hide show
  1. package/lib/adapters/apollo-server/index.cjs +3 -3
  2. package/lib/adapters/apollo-server/index.mjs +1 -1
  3. package/lib/adapters/aws/index.cjs +3 -3
  4. package/lib/adapters/aws/index.cjs.map +1 -1
  5. package/lib/adapters/aws/index.d.cts +6 -0
  6. package/lib/adapters/aws/index.d.ts +6 -0
  7. package/lib/adapters/aws/index.mjs +1 -1
  8. package/lib/adapters/aws/index.mjs.map +1 -1
  9. package/lib/adapters/azure/index.cjs +2 -2
  10. package/lib/adapters/azure/index.cjs.map +1 -1
  11. package/lib/adapters/azure/index.mjs +1 -1
  12. package/lib/adapters/digital-ocean/index.cjs +2 -2
  13. package/lib/adapters/digital-ocean/index.cjs.map +1 -1
  14. package/lib/adapters/digital-ocean/index.mjs +1 -1
  15. package/lib/adapters/dummy/index.cjs +3 -3
  16. package/lib/adapters/dummy/index.mjs +1 -1
  17. package/lib/adapters/huawei/index.cjs +2 -2
  18. package/lib/adapters/huawei/index.cjs.map +1 -1
  19. package/lib/adapters/huawei/index.mjs +1 -1
  20. package/lib/{chunk-TNR3TUP7.mjs → chunk-BLHUHVMU.mjs} +2 -2
  21. package/lib/{chunk-7DI442G5.mjs → chunk-TVNUJWDB.mjs} +2 -2
  22. package/lib/chunk-ZSZTKYDB.mjs +12 -0
  23. package/lib/chunk-ZSZTKYDB.mjs.map +1 -0
  24. package/lib/frameworks/apollo-server/index.cjs +2 -2
  25. package/lib/frameworks/apollo-server/index.mjs +1 -1
  26. package/lib/frameworks/body-parser/index.cjs +2 -2
  27. package/lib/frameworks/body-parser/index.mjs +1 -1
  28. package/lib/frameworks/cors/index.cjs +3 -3
  29. package/lib/frameworks/cors/index.mjs +1 -1
  30. package/lib/frameworks/deepkit/index.cjs +2 -2
  31. package/lib/frameworks/deepkit/index.cjs.map +1 -1
  32. package/lib/frameworks/deepkit/index.mjs +1 -1
  33. package/lib/frameworks/lazy/index.cjs +2 -2
  34. package/lib/frameworks/lazy/index.mjs +1 -1
  35. package/lib/frameworks/trpc/index.cjs +2 -2
  36. package/lib/frameworks/trpc/index.cjs.map +1 -1
  37. package/lib/frameworks/trpc/index.mjs +1 -1
  38. package/lib/handlers/aws/index.cjs +7 -7
  39. package/lib/handlers/aws/index.cjs.map +1 -1
  40. package/lib/handlers/aws/index.mjs +1 -1
  41. package/lib/handlers/azure/index.cjs +2 -2
  42. package/lib/handlers/azure/index.mjs +1 -1
  43. package/lib/handlers/default/index.cjs +2 -2
  44. package/lib/handlers/default/index.mjs +1 -1
  45. package/lib/handlers/digital-ocean/index.cjs +2 -2
  46. package/lib/handlers/digital-ocean/index.mjs +1 -1
  47. package/lib/handlers/firebase/index.cjs +2 -2
  48. package/lib/handlers/firebase/index.cjs.map +1 -1
  49. package/lib/handlers/firebase/index.mjs +1 -1
  50. package/lib/handlers/gcp/index.cjs +2 -2
  51. package/lib/handlers/gcp/index.cjs.map +1 -1
  52. package/lib/handlers/gcp/index.mjs +1 -1
  53. package/lib/handlers/huawei/index.cjs +2 -2
  54. package/lib/handlers/huawei/index.mjs +1 -1
  55. package/lib/index.cjs +7 -7
  56. package/lib/index.cjs.map +1 -1
  57. package/lib/index.d.cts +4 -1
  58. package/lib/index.d.ts +4 -1
  59. package/lib/index.mjs +1 -1
  60. package/lib/index.mjs.map +1 -1
  61. package/package.json +1 -1
  62. package/lib/chunk-MQYXRLYI.mjs +0 -12
  63. package/lib/chunk-MQYXRLYI.mjs.map +0 -1
  64. /package/lib/{chunk-TNR3TUP7.mjs.map → chunk-BLHUHVMU.mjs.map} +0 -0
  65. /package/lib/{chunk-7DI442G5.mjs.map → chunk-TVNUJWDB.mjs.map} +0 -0
@@ -1,6 +1,6 @@
1
- "use strict";var g=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var o=(r,e)=>g(r,"name",{value:e,configurable:!0});var w=(r,e)=>{for(var t in e)g(r,t,{get:e[t],enumerable:!0})},C=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of A(e))!E.call(r,n)&&n!==t&&g(r,n,{get:()=>e[n],enumerable:!(s=b(e,n))||s.enumerable});return r};var k=r=>C(g({},"__esModule",{value:!0}),r);var O={};w(O,{ApolloServerMutationAdapter:()=>x});module.exports=k(O);var B=require("http");var S=require("http");function y(r){if(Buffer.isBuffer(r))return r.toString("utf8");if(typeof r=="string")return r;if(r instanceof Uint8Array)return new TextDecoder().decode(r);throw new Error(`response.write() of unexpected type: ${typeof r}`)}o(y,"getString");var v=`\r
1
+ "use strict";var g=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var o=(r,e)=>g(r,"name",{value:e,configurable:!0});var w=(r,e)=>{for(var t in e)g(r,t,{get:e[t],enumerable:!0})},C=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of A(e))!E.call(r,n)&&n!==t&&g(r,n,{get:()=>e[n],enumerable:!(s=b(e,n))||s.enumerable});return r};var k=r=>C(g({},"__esModule",{value:!0}),r);var O={};w(O,{ApolloServerMutationAdapter:()=>x});module.exports=k(O);var L=require("http");var v=require("http");function y(r){if(Buffer.isBuffer(r))return r.toString("utf8");if(typeof r=="string")return r;if(r instanceof Uint8Array)return new TextDecoder().decode(r);throw new Error(`response.write() of unexpected type: ${typeof r}`)}o(y,"getString");var T=`\r
2
2
  \r
3
- `,H=`0\r
3
+ `,B=`0\r
4
4
  \r
5
- `,l=Symbol("Response body"),u=Symbol("Response headers");function m(r,e){if(Buffer.isBuffer(e)||typeof e=="string"||e instanceof Uint8Array)r[l].push(Buffer.from(e));else throw new Error(`response.write() of unexpected type: ${typeof e}`)}o(m,"addData");var h=class r extends S.ServerResponse{static{o(this,"ServerlessResponse")}constructor({method:e}){super({method:e}),this[l]=[],this[u]={},this.useChunkedEncodingByDefault=!1,this.chunkedEncoding=!1,this._header="";let t=1,s={_writableState:{},writable:!0,on:a,removeListener:a,destroy:a,cork:a,uncork:a,write:(n,i,d)=>{if(typeof i=="function"&&(d=i,i=null),this._header===""||this._wroteHeader)this.chunkedEncoding?t>0?t--:n!==H&&(m(this,n),t=3):m(this,n);else{let p=y(n),f=p.indexOf(v);if(f!==-1){let c=p.slice(f+v.length);c&&!this.chunkedEncoding&&m(this,c),this._wroteHeader=!0}}typeof d=="function"&&d()}};this.assignSocket(s)}_header;_headers;_wroteHeader;[l];[u];get headers(){return this[u]}static from(e){let t=new r({method:e.method});return t.statusCode=e.statusCode||0,t[u]=e.headers,t[l]=e.body?[Buffer.from(e.body)]:[],t.end(),t}static body(e){return Buffer.concat(e[l])}static headers(e){let t=e.getHeaders();return Object.assign(t,e[u])}setHeader(e,t){this._wroteHeader?this[u][e]=t:super.setHeader(e,t)}writeHead(e,t,s){let n=typeof t=="string"?s:t,i=Array.isArray(n)?n:[n||{}];for(let d of i)for(let p in d)if(this.setHeader(p,d[p]),!this._wroteHeader)break;return this.callNativeWriteHead(e,t,s)}callNativeWriteHead(e,t,s){return super.writeHead(e,t,s)}};var L=require("http");function T(r,e){let t=e?"base64":"utf8",s=Buffer.from(r,t),n=Buffer.byteLength(s,t);return[s,n]}o(T,"getEventBodyAsBuffer");var a=o(()=>{},"NO_OP");var me=Symbol("InternalLogger");function R(r,e){return r===void 0?e:r}o(R,"getDefaultIfUndefined");var be=require("stream");var x=class{constructor(e,t){this.baseAdapter=e;this.options=t}static{o(this,"ApolloServerMutationAdapter")}canHandle(e,t,s){return this.baseAdapter.canHandle(e,t,s)}getAdapterName(){return this.baseAdapter.getAdapterName()+"Mutation"}getRequest(e,t,s){let n=this.baseAdapter.getRequest(e,t,s);n.method="POST";let i=this.options.mutationName,d=R(this.options.mutationResultQuery,"{ __typename }"),p=JSON.stringify({operationName:i,query:`mutation ${i} ($event: String) { ${i} (event: $event) ${d} }`,variables:{event:n.body?.toString()||""}}),[f,c]=T(p,!1);return n.body=f,n.headers["content-type"]="application/json",n.headers["content-length"]=String(c),n}getResponse(e){let{data:t,errors:s}=JSON.parse(e.body);return s?this.baseAdapter.getResponse(e):this.baseAdapter.getResponse({...e,body:JSON.stringify(t[this.options.mutationName])})}onErrorWhileForwarding(e){return this.baseAdapter.onErrorWhileForwarding(e)}};0&&(module.exports={ApolloServerMutationAdapter});
5
+ `,f=Symbol("Response body"),u=Symbol("Response headers");function m(r,e){if(Buffer.isBuffer(e)||typeof e=="string"||e instanceof Uint8Array)r[f].push(Buffer.from(e));else throw new Error(`response.write() of unexpected type: ${typeof e}`)}o(m,"addData");var h=class r extends v.ServerResponse{static{o(this,"ServerlessResponse")}constructor({method:e}){super({method:e}),this[f]=[],this[u]={},this.useChunkedEncodingByDefault=!1,this.chunkedEncoding=!1,this._header="";let t=1,s={_writableState:{},writable:!0,on:a,removeListener:a,destroy:a,cork:a,uncork:a,write:(n,i,d)=>{if(typeof i=="function"&&(d=i,i=null),this._header===""||this._wroteHeader)this.chunkedEncoding?t>0?t--:n!==B&&(m(this,n),t=3):m(this,n);else{let p=y(n),l=p.indexOf(T);if(l!==-1){let c=p.slice(l+T.length);c&&!this.chunkedEncoding&&m(this,c),this._wroteHeader=!0}}typeof d=="function"&&d()}};this.assignSocket(s)}_header;_headers;_wroteHeader;[f];[u];get headers(){return this[u]}static from(e){let t=new r({method:e.method});return t.statusCode=e.statusCode||0,t[u]=e.headers,t[f]=e.body?[Buffer.from(e.body)]:[],t.end(),t}static body(e){return Buffer.concat(e[f])}static headers(e){let t=e.getHeaders();return Object.assign(t,e[u])}setHeader(e,t){this._wroteHeader?this[u][e]=t:super.setHeader(e,t)}writeHead(e,t,s){let n=typeof t=="string"?s:t,i=Array.isArray(n)?n:[n||{}];for(let d of i)for(let p in d)if(this.setHeader(p,d[p]),!this._wroteHeader)break;return this.callNativeWriteHead(e,t,s)}callNativeWriteHead(e,t,s){return super.writeHead(e,t,s)}};var H=require("http");function S(r,e){let t=e?"base64":"utf8",s=Buffer.from(r,t),n=Buffer.byteLength(s,t);return[s,n]}o(S,"getEventBodyAsBuffer");var a=o(()=>{},"NO_OP");var me=Symbol("InternalLogger");function R(r,e){return r===void 0?e:r}o(R,"getDefaultIfUndefined");var be=require("stream");var x=class{constructor(e,t){this.baseAdapter=e;this.options=t}static{o(this,"ApolloServerMutationAdapter")}canHandle(e,t,s){return this.baseAdapter.canHandle(e,t,s)}getAdapterName(){return this.baseAdapter.getAdapterName()+"Mutation"}getRequest(e,t,s){let n=this.baseAdapter.getRequest(e,t,s);n.method="POST";let i=this.options.mutationName,d=R(this.options.mutationResultQuery,"{ __typename }"),p=JSON.stringify({operationName:i,query:`mutation ${i} ($event: String) { ${i} (event: $event) ${d} }`,variables:{event:n.body?.toString()||""}}),[l,c]=S(p,!1);return n.body=l,n.headers["content-type"]="application/json",n.headers["content-length"]=String(c),n}getResponse(e){let{data:t,errors:s}=JSON.parse(e.body);return s?this.baseAdapter.getResponse(e):this.baseAdapter.getResponse({...e,body:JSON.stringify(t[this.options.mutationName])})}onErrorWhileForwarding(e){return this.baseAdapter.onErrorWhileForwarding(e)}};0&&(module.exports={ApolloServerMutationAdapter});
6
6
  //# sourceMappingURL=index.cjs.map
@@ -1,2 +1,2 @@
1
- import{g as a,s as p}from"../../chunk-MQYXRLYI.mjs";import{a as s}from"../../chunk-OYOJMOFP.mjs";var i=class{constructor(e,t){this.baseAdapter=e;this.options=t}static{s(this,"ApolloServerMutationAdapter")}canHandle(e,t,o){return this.baseAdapter.canHandle(e,t,o)}getAdapterName(){return this.baseAdapter.getAdapterName()+"Mutation"}getRequest(e,t,o){let n=this.baseAdapter.getRequest(e,t,o);n.method="POST";let r=this.options.mutationName,d=p(this.options.mutationResultQuery,"{ __typename }"),u=JSON.stringify({operationName:r,query:`mutation ${r} ($event: String) { ${r} (event: $event) ${d} }`,variables:{event:n.body?.toString()||""}}),[c,g]=a(u,!1);return n.body=c,n.headers["content-type"]="application/json",n.headers["content-length"]=String(g),n}getResponse(e){let{data:t,errors:o}=JSON.parse(e.body);return o?this.baseAdapter.getResponse(e):this.baseAdapter.getResponse({...e,body:JSON.stringify(t[this.options.mutationName])})}onErrorWhileForwarding(e){return this.baseAdapter.onErrorWhileForwarding(e)}};export{i as ApolloServerMutationAdapter};
1
+ import{g as a,t as p}from"../../chunk-ZSZTKYDB.mjs";import{a as s}from"../../chunk-OYOJMOFP.mjs";var i=class{constructor(e,t){this.baseAdapter=e;this.options=t}static{s(this,"ApolloServerMutationAdapter")}canHandle(e,t,o){return this.baseAdapter.canHandle(e,t,o)}getAdapterName(){return this.baseAdapter.getAdapterName()+"Mutation"}getRequest(e,t,o){let n=this.baseAdapter.getRequest(e,t,o);n.method="POST";let r=this.options.mutationName,d=p(this.options.mutationResultQuery,"{ __typename }"),u=JSON.stringify({operationName:r,query:`mutation ${r} ($event: String) { ${r} (event: $event) ${d} }`,variables:{event:n.body?.toString()||""}}),[c,g]=a(u,!1);return n.body=c,n.headers["content-type"]="application/json",n.headers["content-length"]=String(g),n}getResponse(e){let{data:t,errors:o}=JSON.parse(e.body);return o?this.baseAdapter.getResponse(e):this.baseAdapter.getResponse({...e,body:JSON.stringify(t[this.options.mutationName])})}onErrorWhileForwarding(e){return this.baseAdapter.onErrorWhileForwarding(e)}};export{i as ApolloServerMutationAdapter};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1,6 +1,6 @@
1
- "use strict";var A=Object.defineProperty;var j=Object.getOwnPropertyDescriptor;var Q=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var i=(o,e)=>A(o,"name",{value:e,configurable:!0});var $=(o,e)=>{for(var t in e)A(o,t,{get:e[t],enumerable:!0})},Y=(o,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Q(e))!X.call(o,n)&&n!==t&&A(o,n,{get:()=>e[n],enumerable:!(r=j(e,n))||r.enumerable});return o};var J=o=>Y(A({},"__esModule",{value:!0}),o);var ne={};$(ne,{AlbAdapter:()=>H,ApiGatewayV1Adapter:()=>O,ApiGatewayV2Adapter:()=>I,AwsSimpleAdapter:()=>c,DEFAULT_LAMBDA_EDGE_DISALLOWED_HEADERS:()=>w,DEFAULT_ORIGIN_MAX_RESPONSE_SIZE_IN_BYTES:()=>b,DEFAULT_VIEWER_MAX_RESPONSE_SIZE_IN_BYTES:()=>x,DynamoDBAdapter:()=>k,EventBridgeAdapter:()=>q,LambdaEdgeAdapter:()=>L,RequestLambdaEdgeAdapter:()=>M,S3Adapter:()=>D,SNSAdapter:()=>V,SQSAdapter:()=>_});module.exports=J(ne);var Z=require("http");var G=require("http");function P(o){if(Buffer.isBuffer(o))return o.toString("utf8");if(typeof o=="string")return o;if(o instanceof Uint8Array)return new TextDecoder().decode(o);throw new Error(`response.write() of unexpected type: ${typeof o}`)}i(P,"getString");var N=`\r
1
+ "use strict";var A=Object.defineProperty;var Q=Object.getOwnPropertyDescriptor;var X=Object.getOwnPropertyNames;var $=Object.prototype.hasOwnProperty;var i=(o,e)=>A(o,"name",{value:e,configurable:!0});var Y=(o,e)=>{for(var t in e)A(o,t,{get:e[t],enumerable:!0})},J=(o,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of X(e))!$.call(o,n)&&n!==t&&A(o,n,{get:()=>e[n],enumerable:!(r=Q(e,n))||r.enumerable});return o};var Z=o=>J(A({},"__esModule",{value:!0}),o);var oe={};Y(oe,{AlbAdapter:()=>H,ApiGatewayV1Adapter:()=>k,ApiGatewayV2Adapter:()=>O,AwsSimpleAdapter:()=>l,DEFAULT_LAMBDA_EDGE_DISALLOWED_HEADERS:()=>w,DEFAULT_ORIGIN_MAX_RESPONSE_SIZE_IN_BYTES:()=>b,DEFAULT_VIEWER_MAX_RESPONSE_SIZE_IN_BYTES:()=>x,DynamoDBAdapter:()=>I,EventBridgeAdapter:()=>q,LambdaEdgeAdapter:()=>L,RequestLambdaEdgeAdapter:()=>M,S3Adapter:()=>D,SNSAdapter:()=>V,SQSAdapter:()=>_});module.exports=Z(oe);var K=require("http");var G=require("http");function P(o){if(Buffer.isBuffer(o))return o.toString("utf8");if(typeof o=="string")return o;if(o instanceof Uint8Array)return new TextDecoder().decode(o);throw new Error(`response.write() of unexpected type: ${typeof o}`)}i(P,"getString");var N=`\r
2
2
  \r
3
- `,K=`0\r
3
+ `,ee=`0\r
4
4
  \r
5
- `,R=Symbol("Response body"),E=Symbol("Response headers");function C(o,e){if(Buffer.isBuffer(e)||typeof e=="string"||e instanceof Uint8Array)o[R].push(Buffer.from(e));else throw new Error(`response.write() of unexpected type: ${typeof e}`)}i(C,"addData");var B=class o extends G.ServerResponse{static{i(this,"ServerlessResponse")}constructor({method:e}){super({method:e}),this[R]=[],this[E]={},this.useChunkedEncodingByDefault=!1,this.chunkedEncoding=!1,this._header="";let t=1,r={_writableState:{},writable:!0,on:m,removeListener:m,destroy:m,cork:m,uncork:m,write:(n,s,a)=>{if(typeof s=="function"&&(a=s,s=null),this._header===""||this._wroteHeader)this.chunkedEncoding?t>0?t--:n!==K&&(C(this,n),t=3):C(this,n);else{let d=P(n),p=d.indexOf(N);if(p!==-1){let l=d.slice(p+N.length);l&&!this.chunkedEncoding&&C(this,l),this._wroteHeader=!0}}typeof a=="function"&&a()}};this.assignSocket(r)}_header;_headers;_wroteHeader;[R];[E];get headers(){return this[E]}static from(e){let t=new o({method:e.method});return t.statusCode=e.statusCode||0,t[E]=e.headers,t[R]=e.body?[Buffer.from(e.body)]:[],t.end(),t}static body(e){return Buffer.concat(e[R])}static headers(e){let t=e.getHeaders();return Object.assign(t,e[E])}setHeader(e,t){this._wroteHeader?this[E][e]=t:super.setHeader(e,t)}writeHead(e,t,r){let n=typeof t=="string"?r:t,s=Array.isArray(n)?n:[n||{}];for(let a of s)for(let d in a)if(this.setHeader(d,a[d]),!this._wroteHeader)break;return this.callNativeWriteHead(e,t,r)}callNativeWriteHead(e,t,r){return super.writeHead(e,t,r)}};var ee=require("http");var F={};function f(o,e){let t=e?"base64":"utf8",r=Buffer.from(o,t),n=Buffer.byteLength(r,t);return[r,n]}i(f,"getEventBodyAsBuffer");function T(o,e=",",t=!1){return Object.keys(o).reduce((r,n)=>{let s=t?n.toLowerCase():n,a=o[n];return Array.isArray(a)?r[s]=a.join(e):r[s]=(a??"")+"",r},{})}i(T,"getFlattenedHeadersMap");function v(o){return Object.keys(o).reduce((e,t)=>{let r=o[t];return e[t.toLowerCase()]=Array.isArray(r)?r.map(String):[String(r)],e},{})}i(v,"getMultiValueHeadersMap");function W(o){return Object.keys(o).reduce((e,t)=>{let r=o[t],n=t.toLowerCase();return Array.isArray(r)?n!=="set-cookie"?e.headers[t]=r.join(","):e.cookies.push(...r):n==="set-cookie"&&r!==void 0?e.cookies.push(r??""):e.headers[t]=String(r??""),e},{cookies:[],headers:{}})}i(W,"getFlattenedHeadersMapAndCookies");var m=i(()=>{},"NO_OP");var Ne=Symbol("InternalLogger");function u(o,e){return o===void 0?e:o}i(u,"getDefaultIfUndefined");function h(o,e){if(String(e||"").length===0)return o;if(typeof e=="string")return`${o}?${e}`;let t=te(e);return t?`${o}?${t}`:o}i(h,"getPathWithQueryStringParams");function te(o){let e=new URLSearchParams,t=Object.entries(o||{});if(t.length===0)return"";for(let[r,n]of t){if(!Array.isArray(n)){e.append(r,n||"");continue}for(let s of n)e.append(r,s)}return e.toString()}i(te,"getQueryParamsStringFromRecord");var re=i(o=>o,"NOOPBasePath");function y(o){if(!o)return re;let e=o.length;return t=>t.startsWith(o)?t.slice(t.indexOf(o)+e,t.length)||"/":t}i(y,"buildStripBasePath");var Xe=require("stream");var H=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath)}static{i(this,"AlbAdapter")}stripPathFn;getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t?.requestContext&&t.requestContext.elb)}getRequest(e){let t=e.httpMethod,r=this.getPathFromEvent(e),n=e.multiValueHeaders?T(e.multiValueHeaders,",",!0):e.headers,s;if(e.body){let[d,p]=f(e.body,e.isBase64Encoded);s=d,n["content-length"]=String(p)}let a="";return n["x-forwarded-for"]&&(a=n["x-forwarded-for"]),{method:t,headers:n,body:s,remoteAddress:a,path:r}}getResponse({event:e,headers:t,body:r,isBase64Encoded:n,statusCode:s}){let a=e.headers?void 0:v(t),d=e.headers?T(t):void 0;return d&&d["transfer-encoding"]==="chunked"&&delete d["transfer-encoding"],a&&a["transfer-encoding"]?.includes("chunked")&&delete a["transfer-encoding"],{statusCode:s,body:r,headers:d,multiValueHeaders:a,isBase64Encoded:n}}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,event:n,log:s}){let a=r&&e.stack||"",d=this.getResponse({event:n,statusCode:500,body:a,headers:{},isBase64Encoded:!1,log:s});t.succeed(d)}getPathFromEvent(e){let t=this.stripPathFn(e.path),r=e.headers?e.queryStringParameters:e.multiValueQueryStringParameters;return h(t,r||{})}};var O=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath)}static{i(this,"ApiGatewayV1Adapter")}stripPathFn;getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t?.requestContext&&t.version!=="2.0"&&t.headers&&t.multiValueHeaders&&(t.queryStringParameters===null&&t.multiValueQueryStringParameters===null||t.queryStringParameters&&t.multiValueQueryStringParameters))}getRequest(e){let t=e.httpMethod,r={...e.headers};for(let d of Object.keys(e.multiValueHeaders||{})){let p=e.multiValueHeaders[d];!p||p?.length<=1||(r[d]=p.join(","))}let n=this.getPathFromEvent(e),s;if(e.body){let[d,p]=f(e.body,e.isBase64Encoded);s=d,r["content-length"]=p+""}let a=e.requestContext.identity.sourceIp;return{method:t,headers:r,body:s,remoteAddress:a,path:n}}getResponse({headers:e,body:t,isBase64Encoded:r,statusCode:n,response:s}){let a=v(e),d=u(this.options?.throwOnChunkedTransferEncoding,!0);if(a["transfer-encoding"]?.some(g=>g.includes("chunked"))||s?.chunkedEncoding){if(d)throw new Error("chunked encoding in headers is not supported by API Gateway V1");delete a["transfer-encoding"]}return{statusCode:n,body:t,multiValueHeaders:a,isBase64Encoded:r}}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,event:n,log:s}){let a=r?e.stack:"",d=this.getResponse({event:n,statusCode:500,body:a||"",headers:{},isBase64Encoded:!1,log:s});t.succeed(d)}getPathFromEvent(e){let t=this.stripPathFn(e.path),r=e.multiValueQueryStringParameters||{};if(e.queryStringParameters)for(let n of Object.keys(e.queryStringParameters)){let s=e.queryStringParameters[n];s!==void 0&&(Array.isArray(r[n])||(r[n]=[]),!r[n].includes(s)&&r[n].push(s))}return h(t,r)}};var I=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath)}static{i(this,"ApiGatewayV2Adapter")}stripPathFn;getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t?.requestContext&&t.version==="2.0")}getRequest(e){let t=e.requestContext.http.method,r=this.getPathFromEvent(e),n={...e.headers};e.cookies&&(n.cookie=e.cookies.join("; "));let s;if(e.body){let[d,p]=f(e.body,e.isBase64Encoded);s=d,n["content-length"]=p+""}let a=e.requestContext.http.sourceIp;return{method:t,headers:n,body:s,remoteAddress:a,path:r}}getResponse({headers:e,body:t,isBase64Encoded:r,statusCode:n,response:s}){let{cookies:a,headers:d}=W(e),p=u(this.options?.throwOnChunkedTransferEncoding,!0),l=d["transfer-encoding"];if(l&&l.includes("chunked")||s?.chunkedEncoding){if(p)throw new Error("chunked encoding in headers is not supported by API Gateway V2");delete d["transfer-encoding"]}return{statusCode:n,body:t,headers:d,isBase64Encoded:r,cookies:a}}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,event:n,log:s}){let a=r?e.stack:"",d=this.getResponse({event:n,statusCode:500,body:a||"",headers:{},isBase64Encoded:!1,log:s});t.succeed(d)}getPathFromEvent(e){let t=this.stripPathFn(e.rawPath),r=e.rawQueryString;return h(t,r||{})}};var c=class{constructor(e){this.options=e}static{i(this,"AwsSimpleAdapter")}getAdapterName(){throw new Error("not implemented.")}canHandle(e){throw new Error("not implemented.")}getRequest(e){let t=this.options.forwardPath,r=this.options.forwardMethod,[n,s]=f(JSON.stringify(e),!1),a={host:this.options.host,"content-type":"application/json","content-length":String(s)};return{method:r,headers:a,body:n,path:t}}getResponse({body:e,headers:t,isBase64Encoded:r,event:n,statusCode:s}){if(this.hasInvalidStatusCode(s))throw new Error(JSON.stringify({body:e,headers:t,isBase64Encoded:r,event:n,statusCode:s}));if(!this.options.batch)return F;if(r)throw new Error("SERVERLESS_ADAPTER: The response could not be base64 encoded when you set batch: true, the response should be a JSON.");return e?JSON.parse(e):F}onErrorWhileForwarding({error:e,delegatedResolver:t}){t.fail(e)}hasInvalidStatusCode(e){return e<200||e>=400}};var k=class o extends c{static{i(this,"DynamoDBAdapter")}constructor(e){super({forwardPath:u(e?.dynamoDBForwardPath,"/dynamo"),forwardMethod:u(e?.dynamoDBForwardMethod,"POST"),batch:e?.batch,host:"dynamodb.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.eventSource==="aws:dynamodb":!1}};var q=class o extends c{static{i(this,"EventBridgeAdapter")}constructor(e){super({forwardPath:u(e?.eventBridgeForwardPath,"/eventbridge"),forwardMethod:u(e?.eventBridgeForwardMethod,"POST"),batch:!1,host:"events.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t&&t.version&&t.version==="0"&&t.id&&t["detail-type"]&&t.source&&t.account&&t.time&&t.region&&t.resources&&Array.isArray(t.resources)&&t.detail&&typeof t.detail=="object"&&!Array.isArray(t.detail))}};var w=["Connection","Expect","Keep-Alive","Proxy-Authenticate","Proxy-Authorization","Proxy-Connection","Trailer","Upgrade","X-Accel-Buffering","X-Accel-Charset","X-Accel-Limit-Rate","X-Accel-Redirect",/(X-Amz-Cf-)(.*)/gim,"X-Cache",/(X-Edge-)(.*)/gim,"X-Forwarded-Proto","X-Real-IP"],x=1024*40,b=1024*1024,L=class o{constructor(e){this.options=e;let t=u(this.options?.disallowedHeaders,w);this.cachedDisallowedHeaders=t.map(r=>r instanceof RegExp?r:new RegExp(`(${r})`,"gim"))}static{i(this,"LambdaEdgeAdapter")}cachedDisallowedHeaders;getAdapterName(){return o.name}canHandle(e){let t=e;if(!Array.isArray(t?.Records))return!1;let r=t.Records[0]?.cf?.config?.eventType;return["origin-response","origin-request","viewer-response","viewer-request"].includes(r)}getRequest(e){let t=e.Records[0],r=t.cf.request,n=r.method,s=this.options?.getPathFromEvent?this.options.getPathFromEvent(t):void 0,a=h(r.uri,r.querystring),d=u(s,a),p=r.clientIp,l=this.getFlattenedHeadersFromCloudfrontRequest(r),g;if(r.body){let[U,z]=f(JSON.stringify(r.body),!1);g=U,l["content-length"]=z.toString()}let{host:S}=l;return{method:n,path:d,headers:l,body:g,remoteAddress:p,host:S,hostname:S}}getResponse(e){let t=this.getResponseToLambdaEdge(e),r=new TextEncoder().encode(JSON.stringify(t)).length,s=this.isEventTypeOrigin(e.event.Records[0].cf.config)?u(this.options?.originMaxResponseSizeInBytes,b):u(this.options?.viewerMaxResponseSizeInBytes,x);return r<=s||(this.options?.onResponseSizeExceedLimit?this.options.onResponseSizeExceedLimit(t):e.log.error(`SERVERLESS_ADAPTER:LAMBDA_EDGE_ADAPTER: Max response size exceeded: ${r} of the max of ${s}.`)),t}onErrorWhileForwarding({error:e,delegatedResolver:t}){t.fail(e)}getFlattenedHeadersFromCloudfrontRequest(e){return Object.keys(e.headers).reduce((t,r)=>{let n=e.headers[r];return t[r]=n.map(s=>s.value).join(","),t},{})}getResponseToLambdaEdge({body:e,headers:t}){let r=u(this.options?.shouldUseHeadersFromFramework,!1),n=JSON.parse(e);return n.headers&&(n.headers=Object.keys(n.headers).reduce((s,a)=>(this.shouldStripHeader(a)||(s[a]=n.headers[a]),s),{})),r&&(n.headers=this.getHeadersForCloudfrontResponse(t)),n}getHeadersForCloudfrontResponse(e){return Object.keys(e).reduce((t,r)=>{if(this.shouldStripHeader(r))return t;t[r]||(t[r]=[]);let n=e[r];if(!Array.isArray(n))return t[r].push({key:r,value:n||""}),t;let s=n.map(a=>({key:r,value:a}));return t[r].push(...s),t},{})}shouldStripHeader(e){if(this.options?.shouldStripHeader)return this.options.shouldStripHeader(e);let t=e.toLowerCase();for(let r of this.cachedDisallowedHeaders)if(r.test(t))return!0;return!1}isEventTypeOrigin(e){return e.eventType.includes("origin")}};var D=class o extends c{static{i(this,"S3Adapter")}constructor(e){super({forwardPath:u(e?.s3ForwardPath,"/s3"),forwardMethod:u(e?.s3ForwardMethod,"POST"),batch:!1,host:"s3.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.eventSource==="aws:s3":!1}};var V=class o extends c{static{i(this,"SNSAdapter")}constructor(e){super({forwardPath:u(e?.snsForwardPath,"/sns"),forwardMethod:u(e?.snsForwardMethod,"POST"),batch:!1,host:"sns.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.EventSource==="aws:sns":!1}};var _=class o extends c{static{i(this,"SQSAdapter")}constructor(e){super({forwardPath:u(e?.sqsForwardPath,"/sqs"),forwardMethod:u(e?.sqsForwardMethod,"POST"),batch:e?.batch,host:"sqs.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.eventSource==="aws:sqs":!1}};var M=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath);let t=u(this.options?.disallowedHeaders,w);this.cachedDisallowedHeaders=t.map(r=>r instanceof RegExp?r:new RegExp(`(${r})`,"gim"))}static{i(this,"RequestLambdaEdgeAdapter")}stripPathFn;cachedDisallowedHeaders;getAdapterName(){return o.name}canHandle(e){let t=e;if(!Array.isArray(t?.Records))return!1;let r=t.Records[0]?.cf?.config?.eventType;return r==="viewer-request"||r==="origin-request"}getRequest(e){let r=e.Records[0].cf.request,n=r.method,s=this.stripPathFn(h(r.uri,r.querystring)),a=r.clientIp,d=this.getFlattenedHeadersFromCloudfrontRequest(r),p;if(r.body){let[g,S]=f(r.body.data,r.body.encoding==="base64");p=g,d["content-length"]=S.toString()}let{host:l}=d;return{method:n,path:s,headers:d,body:p,remoteAddress:a,host:l,hostname:l}}getResponse({body:e,headers:t,isBase64Encoded:r,statusCode:n,log:s,event:a}){let d=this.getHeadersForCloudfrontResponse(t),p=a.Records[0].cf.config.eventType==="origin-request"?u(this.options?.originMaxResponseSizeInBytes,b):u(this.options?.viewerMaxResponseSizeInBytes,x),l={body:e,status:n.toString(),bodyEncoding:r?"base64":"text",headers:d},g=e.length;return g<=p||(this.options?.onResponseSizeExceedLimit?this.options.onResponseSizeExceedLimit(l):s.error(`SERVERLESS_ADAPTER:LAMBDA_EDGE_ADAPTER: Max response size exceeded: ${g} of the max of ${p}.`)),l}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,log:n,event:s}){let a=r?e.stack:"",d=this.getResponse({event:s,statusCode:500,body:a||"",headers:{},isBase64Encoded:!1,log:n});t.succeed(d)}getFlattenedHeadersFromCloudfrontRequest(e){return Object.keys(e.headers).reduce((t,r)=>{let n=e.headers[r];return n.length===1?t[r]=n[0].value:t[r]=n.map(s=>s.value).join(","),t},{})}getHeadersForCloudfrontResponse(e){return Object.keys(e).reduce((t,r)=>{if(this.shouldStripHeader(r))return t;let n=r.toLowerCase();t[n]||(t[n]=[]);let s=e[r];if(!Array.isArray(s))return t[n].push({key:r,value:s||""}),t;let a=s.map(d=>({key:r,value:d}));return t[n].push(...a),t},{})}shouldStripHeader(e){if(this.options?.shouldStripHeader)return this.options.shouldStripHeader(e);let t=e.toLowerCase();for(let r of this.cachedDisallowedHeaders)if(r.test(t))return!0;return!1}};0&&(module.exports={AlbAdapter,ApiGatewayV1Adapter,ApiGatewayV2Adapter,AwsSimpleAdapter,DEFAULT_LAMBDA_EDGE_DISALLOWED_HEADERS,DEFAULT_ORIGIN_MAX_RESPONSE_SIZE_IN_BYTES,DEFAULT_VIEWER_MAX_RESPONSE_SIZE_IN_BYTES,DynamoDBAdapter,EventBridgeAdapter,LambdaEdgeAdapter,RequestLambdaEdgeAdapter,S3Adapter,SNSAdapter,SQSAdapter});
5
+ `,R=Symbol("Response body"),E=Symbol("Response headers");function C(o,e){if(Buffer.isBuffer(e)||typeof e=="string"||e instanceof Uint8Array)o[R].push(Buffer.from(e));else throw new Error(`response.write() of unexpected type: ${typeof e}`)}i(C,"addData");var B=class o extends G.ServerResponse{static{i(this,"ServerlessResponse")}constructor({method:e}){super({method:e}),this[R]=[],this[E]={},this.useChunkedEncodingByDefault=!1,this.chunkedEncoding=!1,this._header="";let t=1,r={_writableState:{},writable:!0,on:m,removeListener:m,destroy:m,cork:m,uncork:m,write:(n,s,a)=>{if(typeof s=="function"&&(a=s,s=null),this._header===""||this._wroteHeader)this.chunkedEncoding?t>0?t--:n!==ee&&(C(this,n),t=3):C(this,n);else{let d=P(n),p=d.indexOf(N);if(p!==-1){let c=d.slice(p+N.length);c&&!this.chunkedEncoding&&C(this,c),this._wroteHeader=!0}}typeof a=="function"&&a()}};this.assignSocket(r)}_header;_headers;_wroteHeader;[R];[E];get headers(){return this[E]}static from(e){let t=new o({method:e.method});return t.statusCode=e.statusCode||0,t[E]=e.headers,t[R]=e.body?[Buffer.from(e.body)]:[],t.end(),t}static body(e){return Buffer.concat(e[R])}static headers(e){let t=e.getHeaders();return Object.assign(t,e[E])}setHeader(e,t){this._wroteHeader?this[E][e]=t:super.setHeader(e,t)}writeHead(e,t,r){let n=typeof t=="string"?r:t,s=Array.isArray(n)?n:[n||{}];for(let a of s)for(let d in a)if(this.setHeader(d,a[d]),!this._wroteHeader)break;return this.callNativeWriteHead(e,t,r)}callNativeWriteHead(e,t,r){return super.writeHead(e,t,r)}};var te=require("http");var F={};function f(o,e){let t=e?"base64":"utf8",r=Buffer.from(o,t),n=Buffer.byteLength(r,t);return[r,n]}i(f,"getEventBodyAsBuffer");function T(o,e=",",t=!1){return Object.keys(o).reduce((r,n)=>{let s=t?n.toLowerCase():n,a=o[n];return Array.isArray(a)?r[s]=a.join(e):r[s]=(a??"")+"",r},{})}i(T,"getFlattenedHeadersMap");function v(o){return Object.keys(o).reduce((e,t)=>{let r=o[t];return e[t.toLowerCase()]=Array.isArray(r)?r.map(String):[String(r)],e},{})}i(v,"getMultiValueHeadersMap");function W(o){return Object.keys(o).reduce((e,t)=>{let r=o[t],n=t.toLowerCase();return Array.isArray(r)?n!=="set-cookie"?e.headers[t]=r.join(","):e.cookies.push(...r):n==="set-cookie"&&r!==void 0?e.cookies.push(r??""):e.headers[t]=String(r??""),e},{cookies:[],headers:{}})}i(W,"getFlattenedHeadersMapAndCookies");function U(o){let e={};for(let[t,r]of Object.entries(o))e[t.toLowerCase()]=r;return e}i(U,"keysToLowercase");var m=i(()=>{},"NO_OP");var Ge=Symbol("InternalLogger");function u(o,e){return o===void 0?e:o}i(u,"getDefaultIfUndefined");function h(o,e){if(String(e||"").length===0)return o;if(typeof e=="string")return`${o}?${e}`;let t=re(e);return t?`${o}?${t}`:o}i(h,"getPathWithQueryStringParams");function re(o){let e=new URLSearchParams,t=Object.entries(o||{});if(t.length===0)return"";for(let[r,n]of t){if(!Array.isArray(n)){e.append(r,n||"");continue}for(let s of n)e.append(r,s)}return e.toString()}i(re,"getQueryParamsStringFromRecord");var ne=i(o=>o,"NOOPBasePath");function y(o){if(!o)return ne;let e=o.length;return t=>t.startsWith(o)?t.slice(t.indexOf(o)+e,t.length)||"/":t}i(y,"buildStripBasePath");var $e=require("stream");var H=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath)}static{i(this,"AlbAdapter")}stripPathFn;getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t?.requestContext&&t.requestContext.elb)}getRequest(e){let t=e.httpMethod,r=this.getPathFromEvent(e),n=e.multiValueHeaders?T(e.multiValueHeaders,",",!0):e.headers,s;if(e.body){let[d,p]=f(e.body,e.isBase64Encoded);s=d,n["content-length"]=String(p)}let a="";return n["x-forwarded-for"]&&(a=n["x-forwarded-for"]),{method:t,headers:n,body:s,remoteAddress:a,path:r}}getResponse({event:e,headers:t,body:r,isBase64Encoded:n,statusCode:s}){let a=e.headers?void 0:v(t),d=e.headers?T(t):void 0;return d&&d["transfer-encoding"]==="chunked"&&delete d["transfer-encoding"],a&&a["transfer-encoding"]?.includes("chunked")&&delete a["transfer-encoding"],{statusCode:s,body:r,headers:d,multiValueHeaders:a,isBase64Encoded:n}}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,event:n,log:s}){let a=r&&e.stack||"",d=this.getResponse({event:n,statusCode:500,body:a,headers:{},isBase64Encoded:!1,log:s});t.succeed(d)}getPathFromEvent(e){let t=this.stripPathFn(e.path),r=e.headers?e.queryStringParameters:e.multiValueQueryStringParameters;return h(t,r||{})}};var k=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath)}static{i(this,"ApiGatewayV1Adapter")}stripPathFn;getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t?.requestContext&&t.version!=="2.0"&&t.headers&&t.multiValueHeaders&&(t.queryStringParameters===null&&t.multiValueQueryStringParameters===null||t.queryStringParameters&&t.multiValueQueryStringParameters))}getRequest(e){let t=e.httpMethod,r=this.options?.lowercaseRequestHeaders?U(e.headers):{...e.headers};for(let d of Object.keys(e.multiValueHeaders||{})){let p=e.multiValueHeaders[d];!p||p?.length<=1||(r[d]=p.join(","))}let n=this.getPathFromEvent(e),s;if(e.body){let[d,p]=f(e.body,e.isBase64Encoded);s=d,r["content-length"]=p+""}let a=e.requestContext.identity.sourceIp;return{method:t,headers:r,body:s,remoteAddress:a,path:n}}getResponse({headers:e,body:t,isBase64Encoded:r,statusCode:n,response:s}){let a=v(e),d=u(this.options?.throwOnChunkedTransferEncoding,!0);if(a["transfer-encoding"]?.some(g=>g.includes("chunked"))||s?.chunkedEncoding){if(d)throw new Error("chunked encoding in headers is not supported by API Gateway V1");delete a["transfer-encoding"]}return{statusCode:n,body:t,multiValueHeaders:a,isBase64Encoded:r}}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,event:n,log:s}){let a=r?e.stack:"",d=this.getResponse({event:n,statusCode:500,body:a||"",headers:{},isBase64Encoded:!1,log:s});t.succeed(d)}getPathFromEvent(e){let t=this.stripPathFn(e.path),r=e.multiValueQueryStringParameters||{};if(e.queryStringParameters)for(let n of Object.keys(e.queryStringParameters)){let s=e.queryStringParameters[n];s!==void 0&&(Array.isArray(r[n])||(r[n]=[]),!r[n].includes(s)&&r[n].push(s))}return h(t,r)}};var O=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath)}static{i(this,"ApiGatewayV2Adapter")}stripPathFn;getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t?.requestContext&&t.version==="2.0")}getRequest(e){let t=e.requestContext.http.method,r=this.getPathFromEvent(e),n={...e.headers};e.cookies&&(n.cookie=e.cookies.join("; "));let s;if(e.body){let[d,p]=f(e.body,e.isBase64Encoded);s=d,n["content-length"]=p+""}let a=e.requestContext.http.sourceIp;return{method:t,headers:n,body:s,remoteAddress:a,path:r}}getResponse({headers:e,body:t,isBase64Encoded:r,statusCode:n,response:s}){let{cookies:a,headers:d}=W(e),p=u(this.options?.throwOnChunkedTransferEncoding,!0),c=d["transfer-encoding"];if(c&&c.includes("chunked")||s?.chunkedEncoding){if(p)throw new Error("chunked encoding in headers is not supported by API Gateway V2");delete d["transfer-encoding"]}return{statusCode:n,body:t,headers:d,isBase64Encoded:r,cookies:a}}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,event:n,log:s}){let a=r?e.stack:"",d=this.getResponse({event:n,statusCode:500,body:a||"",headers:{},isBase64Encoded:!1,log:s});t.succeed(d)}getPathFromEvent(e){let t=this.stripPathFn(e.rawPath),r=e.rawQueryString;return h(t,r||{})}};var l=class{constructor(e){this.options=e}static{i(this,"AwsSimpleAdapter")}getAdapterName(){throw new Error("not implemented.")}canHandle(e){throw new Error("not implemented.")}getRequest(e){let t=this.options.forwardPath,r=this.options.forwardMethod,[n,s]=f(JSON.stringify(e),!1),a={host:this.options.host,"content-type":"application/json","content-length":String(s)};return{method:r,headers:a,body:n,path:t}}getResponse({body:e,headers:t,isBase64Encoded:r,event:n,statusCode:s}){if(this.hasInvalidStatusCode(s))throw new Error(JSON.stringify({body:e,headers:t,isBase64Encoded:r,event:n,statusCode:s}));if(!this.options.batch)return F;if(r)throw new Error("SERVERLESS_ADAPTER: The response could not be base64 encoded when you set batch: true, the response should be a JSON.");return e?JSON.parse(e):F}onErrorWhileForwarding({error:e,delegatedResolver:t}){t.fail(e)}hasInvalidStatusCode(e){return e<200||e>=400}};var I=class o extends l{static{i(this,"DynamoDBAdapter")}constructor(e){super({forwardPath:u(e?.dynamoDBForwardPath,"/dynamo"),forwardMethod:u(e?.dynamoDBForwardMethod,"POST"),batch:e?.batch,host:"dynamodb.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.eventSource==="aws:dynamodb":!1}};var q=class o extends l{static{i(this,"EventBridgeAdapter")}constructor(e){super({forwardPath:u(e?.eventBridgeForwardPath,"/eventbridge"),forwardMethod:u(e?.eventBridgeForwardMethod,"POST"),batch:!1,host:"events.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return!!(t&&t.version&&t.version==="0"&&t.id&&t["detail-type"]&&t.source&&t.account&&t.time&&t.region&&t.resources&&Array.isArray(t.resources)&&t.detail&&typeof t.detail=="object"&&!Array.isArray(t.detail))}};var w=["Connection","Expect","Keep-Alive","Proxy-Authenticate","Proxy-Authorization","Proxy-Connection","Trailer","Upgrade","X-Accel-Buffering","X-Accel-Charset","X-Accel-Limit-Rate","X-Accel-Redirect",/(X-Amz-Cf-)(.*)/gim,"X-Cache",/(X-Edge-)(.*)/gim,"X-Forwarded-Proto","X-Real-IP"],x=1024*40,b=1024*1024,L=class o{constructor(e){this.options=e;let t=u(this.options?.disallowedHeaders,w);this.cachedDisallowedHeaders=t.map(r=>r instanceof RegExp?r:new RegExp(`(${r})`,"gim"))}static{i(this,"LambdaEdgeAdapter")}cachedDisallowedHeaders;getAdapterName(){return o.name}canHandle(e){let t=e;if(!Array.isArray(t?.Records))return!1;let r=t.Records[0]?.cf?.config?.eventType;return["origin-response","origin-request","viewer-response","viewer-request"].includes(r)}getRequest(e){let t=e.Records[0],r=t.cf.request,n=r.method,s=this.options?.getPathFromEvent?this.options.getPathFromEvent(t):void 0,a=h(r.uri,r.querystring),d=u(s,a),p=r.clientIp,c=this.getFlattenedHeadersFromCloudfrontRequest(r),g;if(r.body){let[z,j]=f(JSON.stringify(r.body),!1);g=z,c["content-length"]=j.toString()}let{host:S}=c;return{method:n,path:d,headers:c,body:g,remoteAddress:p,host:S,hostname:S}}getResponse(e){let t=this.getResponseToLambdaEdge(e),r=new TextEncoder().encode(JSON.stringify(t)).length,s=this.isEventTypeOrigin(e.event.Records[0].cf.config)?u(this.options?.originMaxResponseSizeInBytes,b):u(this.options?.viewerMaxResponseSizeInBytes,x);return r<=s||(this.options?.onResponseSizeExceedLimit?this.options.onResponseSizeExceedLimit(t):e.log.error(`SERVERLESS_ADAPTER:LAMBDA_EDGE_ADAPTER: Max response size exceeded: ${r} of the max of ${s}.`)),t}onErrorWhileForwarding({error:e,delegatedResolver:t}){t.fail(e)}getFlattenedHeadersFromCloudfrontRequest(e){return Object.keys(e.headers).reduce((t,r)=>{let n=e.headers[r];return t[r]=n.map(s=>s.value).join(","),t},{})}getResponseToLambdaEdge({body:e,headers:t}){let r=u(this.options?.shouldUseHeadersFromFramework,!1),n=JSON.parse(e);return n.headers&&(n.headers=Object.keys(n.headers).reduce((s,a)=>(this.shouldStripHeader(a)||(s[a]=n.headers[a]),s),{})),r&&(n.headers=this.getHeadersForCloudfrontResponse(t)),n}getHeadersForCloudfrontResponse(e){return Object.keys(e).reduce((t,r)=>{if(this.shouldStripHeader(r))return t;t[r]||(t[r]=[]);let n=e[r];if(!Array.isArray(n))return t[r].push({key:r,value:n||""}),t;let s=n.map(a=>({key:r,value:a}));return t[r].push(...s),t},{})}shouldStripHeader(e){if(this.options?.shouldStripHeader)return this.options.shouldStripHeader(e);let t=e.toLowerCase();for(let r of this.cachedDisallowedHeaders)if(r.test(t))return!0;return!1}isEventTypeOrigin(e){return e.eventType.includes("origin")}};var D=class o extends l{static{i(this,"S3Adapter")}constructor(e){super({forwardPath:u(e?.s3ForwardPath,"/s3"),forwardMethod:u(e?.s3ForwardMethod,"POST"),batch:!1,host:"s3.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.eventSource==="aws:s3":!1}};var V=class o extends l{static{i(this,"SNSAdapter")}constructor(e){super({forwardPath:u(e?.snsForwardPath,"/sns"),forwardMethod:u(e?.snsForwardMethod,"POST"),batch:!1,host:"sns.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.EventSource==="aws:sns":!1}};var _=class o extends l{static{i(this,"SQSAdapter")}constructor(e){super({forwardPath:u(e?.sqsForwardPath,"/sqs"),forwardMethod:u(e?.sqsForwardMethod,"POST"),batch:e?.batch,host:"sqs.amazonaws.com"})}getAdapterName(){return o.name}canHandle(e){let t=e;return Array.isArray(t?.Records)?t.Records[0]?.eventSource==="aws:sqs":!1}};var M=class o{constructor(e){this.options=e;this.stripPathFn=y(this.options?.stripBasePath);let t=u(this.options?.disallowedHeaders,w);this.cachedDisallowedHeaders=t.map(r=>r instanceof RegExp?r:new RegExp(`(${r})`,"gim"))}static{i(this,"RequestLambdaEdgeAdapter")}stripPathFn;cachedDisallowedHeaders;getAdapterName(){return o.name}canHandle(e){let t=e;if(!Array.isArray(t?.Records))return!1;let r=t.Records[0]?.cf?.config?.eventType;return r==="viewer-request"||r==="origin-request"}getRequest(e){let r=e.Records[0].cf.request,n=r.method,s=this.stripPathFn(h(r.uri,r.querystring)),a=r.clientIp,d=this.getFlattenedHeadersFromCloudfrontRequest(r),p;if(r.body){let[g,S]=f(r.body.data,r.body.encoding==="base64");p=g,d["content-length"]=S.toString()}let{host:c}=d;return{method:n,path:s,headers:d,body:p,remoteAddress:a,host:c,hostname:c}}getResponse({body:e,headers:t,isBase64Encoded:r,statusCode:n,log:s,event:a}){let d=this.getHeadersForCloudfrontResponse(t),p=a.Records[0].cf.config.eventType==="origin-request"?u(this.options?.originMaxResponseSizeInBytes,b):u(this.options?.viewerMaxResponseSizeInBytes,x),c={body:e,status:n.toString(),bodyEncoding:r?"base64":"text",headers:d},g=e.length;return g<=p||(this.options?.onResponseSizeExceedLimit?this.options.onResponseSizeExceedLimit(c):s.error(`SERVERLESS_ADAPTER:LAMBDA_EDGE_ADAPTER: Max response size exceeded: ${g} of the max of ${p}.`)),c}onErrorWhileForwarding({error:e,delegatedResolver:t,respondWithErrors:r,log:n,event:s}){let a=r?e.stack:"",d=this.getResponse({event:s,statusCode:500,body:a||"",headers:{},isBase64Encoded:!1,log:n});t.succeed(d)}getFlattenedHeadersFromCloudfrontRequest(e){return Object.keys(e.headers).reduce((t,r)=>{let n=e.headers[r];return n.length===1?t[r]=n[0].value:t[r]=n.map(s=>s.value).join(","),t},{})}getHeadersForCloudfrontResponse(e){return Object.keys(e).reduce((t,r)=>{if(this.shouldStripHeader(r))return t;let n=r.toLowerCase();t[n]||(t[n]=[]);let s=e[r];if(!Array.isArray(s))return t[n].push({key:r,value:s||""}),t;let a=s.map(d=>({key:r,value:d}));return t[n].push(...a),t},{})}shouldStripHeader(e){if(this.options?.shouldStripHeader)return this.options.shouldStripHeader(e);let t=e.toLowerCase();for(let r of this.cachedDisallowedHeaders)if(r.test(t))return!0;return!1}};0&&(module.exports={AlbAdapter,ApiGatewayV1Adapter,ApiGatewayV2Adapter,AwsSimpleAdapter,DEFAULT_LAMBDA_EDGE_DISALLOWED_HEADERS,DEFAULT_ORIGIN_MAX_RESPONSE_SIZE_IN_BYTES,DEFAULT_VIEWER_MAX_RESPONSE_SIZE_IN_BYTES,DynamoDBAdapter,EventBridgeAdapter,LambdaEdgeAdapter,RequestLambdaEdgeAdapter,S3Adapter,SNSAdapter,SQSAdapter});
6
6
  //# sourceMappingURL=index.cjs.map