aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
5 lines (4 loc) • 20.5 kB
JavaScript
var Qe=Object.create,O=Object.defineProperty,We=Object.getOwnPropertyDescriptor,Ke=Object.getOwnPropertyNames,Ve=Object.getPrototypeOf,Ye=Object.prototype.hasOwnProperty,P=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Je=(t,e)=>{for(var r in e)O(t,r,{get:e[r],enumerable:!0})},W=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ke(e))!Ye.call(t,n)&&n!==r&&O(t,n,{get:()=>e[n],enumerable:!(o=We(e,n))||o.enumerable});return t},ze=(t,e,r)=>(r=t!=null?Qe(Ve(t)):{},W(e||!t||!t.__esModule?O(r,"default",{value:t,enumerable:!0}):r,t)),Xe=t=>W(O({},"__esModule",{value:!0}),t),te=P((ur,ee)=>{"use strict";var A=Object.defineProperty,Ge=Object.getOwnPropertyDescriptor,Ze=Object.getOwnPropertyNames,et=Object.prototype.hasOwnProperty,k=(t,e)=>A(t,"name",{value:e,configurable:!0}),tt=(t,e)=>{for(var r in e)A(t,r,{get:e[r],enumerable:!0})},rt=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ze(e))!et.call(t,n)&&n!==r&&A(t,n,{get:()=>e[n],enumerable:!(o=Ge(e,n))||o.enumerable});return t},ot=t=>rt(A({},"__esModule",{value:!0}),t),K={};tt(K,{AlgorithmId:()=>z,EndpointURLScheme:()=>J,FieldPosition:()=>X,HttpApiKeyAuthLocation:()=>Y,HttpAuthLocation:()=>V,IniSectionType:()=>G,RequestHandlerProtocol:()=>Z,SMITHY_CONTEXT_KEY:()=>ct,getDefaultClientConfiguration:()=>it,resolveDefaultRuntimeConfig:()=>at}),ee.exports=ot(K);var V=(t=>(t.HEADER="header",t.QUERY="query",t))(V||{}),Y=(t=>(t.HEADER="header",t.QUERY="query",t))(Y||{}),J=(t=>(t.HTTP="http",t.HTTPS="https",t))(J||{}),z=(t=>(t.MD5="md5",t.CRC32="crc32",t.CRC32C="crc32c",t.SHA1="sha1",t.SHA256="sha256",t))(z||{}),nt=k(t=>{let e=[];return t.sha256!==void 0&&e.push({algorithmId:()=>"sha256",checksumConstructor:()=>t.sha256}),t.md5!=null&&e.push({algorithmId:()=>"md5",checksumConstructor:()=>t.md5}),{_checksumAlgorithms:e,addChecksumAlgorithm(r){this._checksumAlgorithms.push(r)},checksumAlgorithms(){return this._checksumAlgorithms}}},"getChecksumConfiguration"),st=k(t=>{let e={};return t.checksumAlgorithms().forEach(r=>{e[r.algorithmId()]=r.checksumConstructor()}),e},"resolveChecksumRuntimeConfig"),it=k(t=>({...nt(t)}),"getDefaultClientConfiguration"),at=k(t=>({...st(t)}),"resolveDefaultRuntimeConfig"),X=(t=>(t[t.HEADER=0]="HEADER",t[t.TRAILER=1]="TRAILER",t))(X||{}),ct="__smithy_context",G=(t=>(t.PROFILE="profile",t.SSO_SESSION="sso-session",t.SERVICES="services",t))(G||{}),Z=(t=>(t.HTTP_0_9="http/0.9",t.HTTP_1_0="http/1.0",t.TDS_8_0="tds/8.0",t))(Z||{})}),de=P((hr,le)=>{"use strict";var x=Object.defineProperty,ut=Object.getOwnPropertyDescriptor,lt=Object.getOwnPropertyNames,dt=Object.prototype.hasOwnProperty,b=(t,e)=>x(t,"name",{value:e,configurable:!0}),ft=(t,e)=>{for(var r in e)x(t,r,{get:e[r],enumerable:!0})},ht=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of lt(e))!dt.call(t,n)&&n!==r&&x(t,n,{get:()=>e[n],enumerable:!(o=ut(e,n))||o.enumerable});return t},pt=t=>ht(x({},"__esModule",{value:!0}),t),re={};ft(re,{Field:()=>vt,Fields:()=>yt,HttpRequest:()=>_t,HttpResponse:()=>Et,IHttpRequest:()=>oe.HttpRequest,getHttpHandlerExtensionConfiguration:()=>mt,isValidHostname:()=>ue,resolveHttpHandlerRuntimeConfig:()=>gt}),le.exports=pt(re);var mt=b(t=>{let e=t.httpHandler;return{setHttpHandler(r){e=r},httpHandler(){return e},updateHttpClientConfig(r,o){e.updateHttpClientConfig(r,o)},httpHandlerConfigs(){return e.httpHandlerConfigs()}}},"getHttpHandlerExtensionConfiguration"),gt=b(t=>({httpHandler:t.httpHandler()}),"resolveHttpHandlerRuntimeConfig"),oe=te(),ne=class{constructor({name:e,kind:r=oe.FieldPosition.HEADER,values:o=[]}){this.name=e,this.kind=r,this.values=o}add(e){this.values.push(e)}set(e){this.values=e}remove(e){this.values=this.values.filter(r=>r!==e)}toString(){return this.values.map(e=>e.includes(",")||e.includes(" ")?`"${e}"`:e).join(", ")}get(){return this.values}};b(ne,"Field");var vt=ne,se=class{constructor({fields:e=[],encoding:r="utf-8"}){this.entries={},e.forEach(this.setField.bind(this)),this.encoding=r}setField(e){this.entries[e.name.toLowerCase()]=e}getField(e){return this.entries[e.toLowerCase()]}removeField(e){delete this.entries[e.toLowerCase()]}getByType(e){return Object.values(this.entries).filter(r=>r.kind===e)}};b(se,"Fields");var yt=se,ie=class U{constructor(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?e.protocol.slice(-1)!==":"?`${e.protocol}:`:e.protocol:"https:",this.path=e.path?e.path.charAt(0)!=="/"?`/${e.path}`:e.path:"/",this.username=e.username,this.password=e.password,this.fragment=e.fragment}static clone(e){let r=new U({...e,headers:{...e.headers}});return r.query&&(r.query=ae(r.query)),r}static isInstance(e){if(!e)return!1;let r=e;return"method"in r&&"protocol"in r&&"hostname"in r&&"path"in r&&typeof r.query=="object"&&typeof r.headers=="object"}clone(){return U.clone(this)}};b(ie,"HttpRequest");var _t=ie;function ae(t){return Object.keys(t).reduce((e,r)=>{let o=t[r];return{...e,[r]:Array.isArray(o)?[...o]:o}},{})}b(ae,"cloneQuery");var ce=class{constructor(e){this.statusCode=e.statusCode,this.reason=e.reason,this.headers=e.headers||{},this.body=e.body}static isInstance(e){if(!e)return!1;let r=e;return typeof r.statusCode=="number"&&typeof r.headers=="object"}};b(ce,"HttpResponse");var Et=ce;function ue(t){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(t)}b(ue,"isValidHostname")}),me=P((pr,pe)=>{"use strict";var D=Object.defineProperty,bt=Object.getOwnPropertyDescriptor,Ct=Object.getOwnPropertyNames,Tt=Object.prototype.hasOwnProperty,I=(t,e)=>D(t,"name",{value:e,configurable:!0}),wt=(t,e)=>{for(var r in e)D(t,r,{get:e[r],enumerable:!0})},Ht=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ct(e))!Tt.call(t,n)&&n!==r&&D(t,n,{get:()=>e[n],enumerable:!(o=bt(e,n))||o.enumerable});return t},Pt=t=>Ht(D({},"__esModule",{value:!0}),t),fe={};wt(fe,{escapeUri:()=>he,escapeUriPath:()=>St}),pe.exports=Pt(fe);var he=I(t=>encodeURIComponent(t).replace(/[!'()*]/g,Rt),"escapeUri"),Rt=I(t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`,"hexEncode"),St=I(t=>t.split("/").map(he).join("/"),"escapeUriPath")}),_e=P((mr,ye)=>{"use strict";var N=Object.defineProperty,Ot=Object.getOwnPropertyDescriptor,At=Object.getOwnPropertyNames,kt=Object.prototype.hasOwnProperty,xt=(t,e)=>N(t,"name",{value:e,configurable:!0}),Dt=(t,e)=>{for(var r in e)N(t,r,{get:e[r],enumerable:!0})},Nt=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of At(e))!kt.call(t,n)&&n!==r&&N(t,n,{get:()=>e[n],enumerable:!(o=Ot(e,n))||o.enumerable});return t},jt=t=>Nt(N({},"__esModule",{value:!0}),t),ge={};Dt(ge,{buildQueryString:()=>ve}),ye.exports=jt(ge);var L=me();function ve(t){let e=[];for(let r of Object.keys(t).sort()){let o=t[r];if(r=(0,L.escapeUri)(r),Array.isArray(o))for(let n=0,s=o.length;n<s;n++)e.push(`${r}=${(0,L.escapeUri)(o[n])}`);else{let n=r;(o||typeof o=="string")&&(n+=`=${(0,L.escapeUri)(o)}`),e.push(n)}}return e.join("&")}xt(ve,"buildQueryString")}),$e=P((_r,Le)=>{"use strict";var Ut=Object.create,R=Object.defineProperty,It=Object.getOwnPropertyDescriptor,Lt=Object.getOwnPropertyNames,$t=Object.getPrototypeOf,Ft=Object.prototype.hasOwnProperty,u=(t,e)=>R(t,"name",{value:e,configurable:!0}),Mt=(t,e)=>{for(var r in e)R(t,r,{get:e[r],enumerable:!0})},we=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Lt(e))!Ft.call(t,n)&&n!==r&&R(t,n,{get:()=>e[n],enumerable:!(o=It(e,n))||o.enumerable});return t},qt=(t,e,r)=>(r=t!=null?Ut($t(t)):{},we(e||!t||!t.__esModule?R(r,"default",{value:t,enumerable:!0}):r,t)),Bt=t=>we(R({},"__esModule",{value:!0}),t),He={};Mt(He,{DEFAULT_REQUEST_TIMEOUT:()=>Jt,NodeHttp2Handler:()=>er,NodeHttpHandler:()=>zt,streamCollector:()=>rr}),Le.exports=Bt(He);var Pe=de(),Re=_e(),$=require("http"),F=require("https"),Qt=["ECONNRESET","EPIPE","ETIMEDOUT"],Se=u(t=>{let e={};for(let r of Object.keys(t)){let o=t[r];e[r]=Array.isArray(o)?o.join(","):o}return e},"getTransformedHeaders"),p={setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},Ee=1e3,Wt=u((t,e,r=0)=>{if(!r)return-1;let o=u(n=>{let s=p.setTimeout(()=>{t.destroy(),e(Object.assign(new Error(`Socket timed out without establishing a connection within ${r} ms`),{name:"TimeoutError"}))},r-n),i=u(a=>{a?.connecting?a.on("connect",()=>{p.clearTimeout(s)}):p.clearTimeout(s)},"doWithSocket");t.socket?i(t.socket):t.on("socket",i)},"registerTimeout");return r<2e3?(o(0),0):p.setTimeout(o.bind(null,Ee),Ee)},"setConnectionTimeout"),Kt=3e3,Vt=u((t,{keepAlive:e,keepAliveMsecs:r},o=Kt)=>{if(e!==!0)return-1;let n=u(()=>{t.socket?t.socket.setKeepAlive(e,r||0):t.on("socket",s=>{s.setKeepAlive(e,r||0)})},"registerListener");return o===0?(n(),0):p.setTimeout(n,o)},"setSocketKeepAlive"),be=3e3,Yt=u((t,e,r=0)=>{let o=u(n=>{let s=r-n,i=u(()=>{t.destroy(),e(Object.assign(new Error(`Connection timed out after ${r} ms`),{name:"TimeoutError"}))},"onTimeout");t.socket?t.socket.setTimeout(s,i):t.setTimeout(s,i)},"registerTimeout");return 0<r&&r<6e3?(o(0),0):p.setTimeout(o.bind(null,r===0?0:be),be)},"setSocketTimeout"),Oe=require("stream"),Ce=1e3;async function q(t,e,r=Ce){let o=e.headers??{},n=o.Expect||o.expect,s=-1,i=!0;n==="100-continue"&&(i=await Promise.race([new Promise(a=>{s=Number(p.setTimeout(a,Math.max(Ce,r)))}),new Promise(a=>{t.on("continue",()=>{p.clearTimeout(s),a(!0)}),t.on("response",()=>{p.clearTimeout(s),a(!1)}),t.on("error",()=>{p.clearTimeout(s),a(!1)})})])),i&&Ae(t,e.body)}u(q,"writeRequestBody");function Ae(t,e){if(e instanceof Oe.Readable){e.pipe(t);return}if(e){if(Buffer.isBuffer(e)||typeof e=="string"){t.end(e);return}let r=e;if(typeof r=="object"&&r.buffer&&typeof r.byteOffset=="number"&&typeof r.byteLength=="number"){t.end(Buffer.from(r.buffer,r.byteOffset,r.byteLength));return}t.end(Buffer.from(e));return}t.end()}u(Ae,"writeBody");var Jt=0,ke=class M{constructor(e){this.socketWarningTimestamp=0,this.metadata={handlerProtocol:"http/1.1"},this.configProvider=new Promise((r,o)=>{typeof e=="function"?e().then(n=>{r(this.resolveDefaultConfig(n))}).catch(o):r(this.resolveDefaultConfig(e))})}static create(e){return typeof e?.handle=="function"?e:new M(e)}static checkSocketUsage(e,r,o=console){var n,s,i;let{sockets:a,requests:c,maxSockets:h}=e;if(typeof h!="number"||h===1/0||Date.now()-15e3<r)return r;if(a&&c)for(let y in a){let T=((n=a[y])==null?void 0:n.length)??0,_=((s=c[y])==null?void 0:s.length)??0;if(T>=h&&_>=2*h)return(i=o?.warn)==null||i.call(o,`@smithy/node-http-handler:WARN - socket usage at capacity=${T} and ${_} additional requests are enqueued.
See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`),Date.now()}return r}resolveDefaultConfig(e){let{requestTimeout:r,connectionTimeout:o,socketTimeout:n,httpAgent:s,httpsAgent:i}=e||{},a=!0,c=50;return{connectionTimeout:o,requestTimeout:r??n,httpAgent:s instanceof $.Agent||typeof s?.destroy=="function"?s:new $.Agent({keepAlive:a,maxSockets:c,...s}),httpsAgent:i instanceof F.Agent||typeof i?.destroy=="function"?i:new F.Agent({keepAlive:a,maxSockets:c,...i}),logger:console}}destroy(){var e,r,o,n;(r=(e=this.config)==null?void 0:e.httpAgent)==null||r.destroy(),(n=(o=this.config)==null?void 0:o.httpsAgent)==null||n.destroy()}async handle(e,{abortSignal:r}={}){return this.config||(this.config=await this.configProvider),new Promise((o,n)=>{let s,i=[],a=u(async l=>{await s,i.forEach(p.clearTimeout),o(l)},"resolve"),c=u(async l=>{await s,i.forEach(p.clearTimeout),n(l)},"reject");if(!this.config)throw new Error("Node HTTP request handler config is not resolved");if(r?.aborted){let l=new Error("Request aborted");l.name="AbortError",c(l);return}let h=e.protocol==="https:",C=h?this.config.httpsAgent:this.config.httpAgent;i.push(p.setTimeout(()=>{this.socketWarningTimestamp=M.checkSocketUsage(C,this.socketWarningTimestamp,this.config.logger)},this.config.socketAcquisitionWarningTimeout??(this.config.requestTimeout??2e3)+(this.config.connectionTimeout??1e3)));let y=(0,Re.buildQueryString)(e.query||{}),T;if(e.username!=null||e.password!=null){let l=e.username??"",f=e.password??"";T=`${l}:${f}`}let _=e.path;y&&(_+=`?${y}`),e.fragment&&(_+=`#${e.fragment}`);let E=e.hostname??"";E[0]==="["&&E.endsWith("]")?E=e.hostname.slice(1,-1):E=e.hostname;let S={headers:e.headers,host:E,method:e.method,path:_,port:e.port,agent:C,auth:T},v=(h?F.request:$.request)(S,l=>{let f=new Pe.HttpResponse({statusCode:l.statusCode||-1,reason:l.statusMessage,headers:Se(l.headers),body:l});a({response:f})});if(v.on("error",l=>{Qt.includes(l.code)?c(Object.assign(l,{name:"TimeoutError"})):c(l)}),r){let l=u(()=>{v.destroy();let f=new Error("Request aborted");f.name="AbortError",c(f)},"onAbort");if(typeof r.addEventListener=="function"){let f=r;f.addEventListener("abort",l,{once:!0}),v.once("close",()=>f.removeEventListener("abort",l))}else r.onabort=l}i.push(Wt(v,c,this.config.connectionTimeout)),i.push(Yt(v,c,this.config.requestTimeout));let w=S.agent;typeof w=="object"&&"keepAlive"in w&&i.push(Vt(v,{keepAlive:w.keepAlive,keepAliveMsecs:w.keepAliveMsecs})),s=q(v,e,this.config.requestTimeout).catch(l=>(i.forEach(p.clearTimeout),n(l)))})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(o=>({...o,[e]:r}))}httpHandlerConfigs(){return this.config??{}}};u(ke,"NodeHttpHandler");var zt=ke,Te=require("http2"),Xt=qt(require("http2")),xe=class{constructor(e){this.sessions=[],this.sessions=e??[]}poll(){if(this.sessions.length>0)return this.sessions.shift()}offerLast(e){this.sessions.push(e)}contains(e){return this.sessions.includes(e)}remove(e){this.sessions=this.sessions.filter(r=>r!==e)}[Symbol.iterator](){return this.sessions[Symbol.iterator]()}destroy(e){for(let r of this.sessions)r===e&&(r.destroyed||r.destroy())}};u(xe,"NodeHttp2ConnectionPool");var Gt=xe,De=class{constructor(e){if(this.sessionCache=new Map,this.config=e,this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw new RangeError("maxConcurrency must be greater than zero.")}lease(e,r){let o=this.getUrlString(e),n=this.sessionCache.get(o);if(n){let c=n.poll();if(c&&!this.config.disableConcurrency)return c}let s=Xt.default.connect(o);this.config.maxConcurrency&&s.settings({maxConcurrentStreams:this.config.maxConcurrency},c=>{if(c)throw new Error("Fail to set maxConcurrentStreams to "+this.config.maxConcurrency+"when creating new session for "+e.destination.toString())}),s.unref();let i=u(()=>{s.destroy(),this.deleteSession(o,s)},"destroySessionCb");s.on("goaway",i),s.on("error",i),s.on("frameError",i),s.on("close",()=>this.deleteSession(o,s)),r.requestTimeout&&s.setTimeout(r.requestTimeout,i);let a=this.sessionCache.get(o)||new Gt;return a.offerLast(s),this.sessionCache.set(o,a),s}deleteSession(e,r){let o=this.sessionCache.get(e);o&&o.contains(r)&&(o.remove(r),this.sessionCache.set(e,o))}release(e,r){var o;let n=this.getUrlString(e);(o=this.sessionCache.get(n))==null||o.offerLast(r)}destroy(){for(let[e,r]of this.sessionCache){for(let o of r)o.destroyed||o.destroy(),r.remove(o);this.sessionCache.delete(e)}}setMaxConcurrentStreams(e){if(e&&e<=0)throw new RangeError("maxConcurrentStreams must be greater than zero.");this.config.maxConcurrency=e}setDisableConcurrentStreams(e){this.config.disableConcurrency=e}getUrlString(e){return e.destination.toString()}};u(De,"NodeHttp2ConnectionManager");var Zt=De,Ne=class je{constructor(e){this.metadata={handlerProtocol:"h2"},this.connectionManager=new Zt({}),this.configProvider=new Promise((r,o)=>{typeof e=="function"?e().then(n=>{r(n||{})}).catch(o):r(e||{})})}static create(e){return typeof e?.handle=="function"?e:new je(e)}destroy(){this.connectionManager.destroy()}async handle(e,{abortSignal:r}={}){this.config||(this.config=await this.configProvider,this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams||!1),this.config.maxConcurrentStreams&&this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams));let{requestTimeout:o,disableConcurrentStreams:n}=this.config;return new Promise((s,i)=>{var a;let c=!1,h,C=u(async d=>{await h,s(d)},"resolve"),y=u(async d=>{await h,i(d)},"reject");if(r?.aborted){c=!0;let d=new Error("Request aborted");d.name="AbortError",y(d);return}let{hostname:T,method:_,port:E,protocol:S,query:B}=e,v="";if(e.username!=null||e.password!=null){let d=e.username??"",g=e.password??"";v=`${d}:${g}@`}let w=`${S}//${v}${T}${E?`:${E}`:""}`,l={destination:new URL(w)},f=this.connectionManager.lease(l,{requestTimeout:(a=this.config)==null?void 0:a.sessionTimeout,disableConcurrentStreams:n||!1}),H=u(d=>{n&&this.destroySession(f),c=!0,y(d)},"rejectWithDestroy"),Q=(0,Re.buildQueryString)(B||{}),j=e.path;Q&&(j+=`?${Q}`),e.fragment&&(j+=`#${e.fragment}`);let m=f.request({...e.headers,[Te.constants.HTTP2_HEADER_PATH]:j,[Te.constants.HTTP2_HEADER_METHOD]:_});if(f.ref(),m.on("response",d=>{let g=new Pe.HttpResponse({statusCode:d[":status"]||-1,headers:Se(d),body:m});c=!0,C({response:g}),n&&(f.close(),this.connectionManager.deleteSession(w,f))}),o&&m.setTimeout(o,()=>{m.close();let d=new Error(`Stream timed out because of no activity for ${o} ms`);d.name="TimeoutError",H(d)}),r){let d=u(()=>{m.close();let g=new Error("Request aborted");g.name="AbortError",H(g)},"onAbort");if(typeof r.addEventListener=="function"){let g=r;g.addEventListener("abort",d,{once:!0}),m.once("close",()=>g.removeEventListener("abort",d))}else r.onabort=d}m.on("frameError",(d,g,Be)=>{H(new Error(`Frame type id ${d} in stream id ${Be} has failed with code ${g}.`))}),m.on("error",H),m.on("aborted",()=>{H(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${m.rstCode}.`))}),m.on("close",()=>{f.unref(),n&&f.destroy(),c||H(new Error("Unexpected error: http2 request did not get a response"))}),h=q(m,e,o)})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(o=>({...o,[e]:r}))}httpHandlerConfigs(){return this.config??{}}destroySession(e){e.destroyed||e.destroy()}};u(Ne,"NodeHttp2Handler");var er=Ne,Ue=class extends Oe.Writable{constructor(){super(...arguments),this.bufferedBytes=[]}_write(e,r,o){this.bufferedBytes.push(e),o()}};u(Ue,"Collector");var tr=Ue,rr=u(t=>or(t)?Ie(t):new Promise((e,r)=>{let o=new tr;t.pipe(o),t.on("error",n=>{o.end(),r(n)}),o.on("error",r),o.on("finish",function(){let n=new Uint8Array(Buffer.concat(this.bufferedBytes));e(n)})}),"streamCollector"),or=u(t=>typeof ReadableStream=="function"&&t instanceof ReadableStream,"isReadableStreamInstance");async function Ie(t){let e=[],r=t.getReader(),o=!1,n=0;for(;!o;){let{done:a,value:c}=await r.read();c&&(e.push(c),n+=c.length),o=a}let s=new Uint8Array(n),i=0;for(let a of e)s.set(a,i),i+=a.length;return s}u(Ie,"collectReadableStream")}),ar={};Je(ar,{handler:()=>sr,invoke:()=>qe}),module.exports=Xe(ar);var Fe=require("@aws-sdk/client-lambda"),Me=ze($e()),nr=t=>{if(t)return new TextDecoder().decode(Buffer.from(t))},qe=async(t,e,r)=>{let o=new Fe.Lambda({requestHandler:new Me.NodeHttpHandler({socketTimeout:r})}),n={FunctionName:t,InvocationType:e};console.log({invokeRequest:n});let s=0,i=5e3,a;for(;;)try{a=await o.invoke(n);break}catch(h){if(h.name==="AccessDeniedException"&&s<12){s++,await new Promise(C=>{setTimeout(C,i)});continue}throw h}let c={...a,Payload:nr(a.Payload)};return console.log({invokeResponse:c}),c};async function sr(t){if(console.log({...t,ResponseURL:"..."}),t.RequestType==="Delete"){console.log("not calling trigger on DELETE");return}if(t.RequestType==="Update"&&t.ResourceProperties.ExecuteOnHandlerChange==="false"){console.log("not calling trigger because ExecuteOnHandlerChange is false");return}let e=t.ResourceProperties.HandlerArn;if(!e)throw new Error('The "HandlerArn" property is required');let r=t.ResourceProperties.InvocationType,o=t.ResourceProperties.Timeout,n=parseInt(o);if(isNaN(n))throw new Error(`The "Timeout" property with value ${o} is not parsable to a number`);let s=await qe(e,r,n);if(s.StatusCode&&s.StatusCode>=400)throw new Error(`Trigger handler failed with status code ${s.StatusCode}`);if(s.FunctionError)throw new Error(ir(s.Payload))}function ir(t){if(!t)return"unknown handler error";console.log(`Error payload: ${t}`);try{let e=JSON.parse(t),r=[e.errorMessage,e.trace].filter(o=>o).join(`
`);return r.length>0?r:t}catch{return t}}
;