gemi 0.176.0 → 0.177.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/ai/AgentController.d.ts +6 -4
- package/dist/ai/AgentController.d.ts.map +1 -1
- package/dist/ai/client/index.d.ts +3 -2
- package/dist/ai/client/index.d.ts.map +1 -1
- package/dist/ai/client/index.js +108 -21
- package/dist/ai/client/index.js.map +1 -1
- package/dist/ai/index.d.ts +2 -1
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +3 -3
- package/dist/ai/index.js.map +4 -4
- package/dist/ai/store/MemoryAgentStore.d.ts.map +1 -1
- package/dist/ai/types.d.ts +18 -0
- package/dist/ai/types.d.ts.map +1 -1
- package/dist/ai/useChat.d.ts +27 -2
- package/dist/ai/useChat.d.ts.map +1 -1
- package/dist/app/index.js +1 -1
- package/dist/bun/plugin.js +1 -1
- package/dist/bun/preload.js +1 -1
- package/dist/{chunk-xe126csw.js → chunk-0mye000w.js} +2 -2
- package/dist/{chunk-dqj22m1r.js.map → chunk-0mye000w.js.map} +1 -1
- package/dist/{chunk-q1s9y4ce.js → chunk-10ap3vpj.js} +2 -2
- package/dist/{chunk-q1s9y4ce.js.map → chunk-10ap3vpj.js.map} +1 -1
- package/dist/{chunk-r22svpab.js → chunk-11aqfdr7.js} +3 -3
- package/dist/{chunk-r22svpab.js.map → chunk-11aqfdr7.js.map} +1 -1
- package/dist/{chunk-nfj6k1a6.js → chunk-2cw1et3n.js} +2 -2
- package/dist/{chunk-nfj6k1a6.js.map → chunk-2cw1et3n.js.map} +1 -1
- package/dist/{chunk-rjsd8f8q.js → chunk-344f6c5q.js} +2 -2
- package/dist/{chunk-rjsd8f8q.js.map → chunk-344f6c5q.js.map} +1 -1
- package/dist/{chunk-cx05t002.js → chunk-3szc00gq.js} +2 -2
- package/dist/{chunk-cx05t002.js.map → chunk-3szc00gq.js.map} +1 -1
- package/dist/chunk-50hrefzf.js +10 -0
- package/dist/{chunk-xnkx1kz8.js.map → chunk-50hrefzf.js.map} +3 -3
- package/dist/{chunk-ewf24h4z.js → chunk-574s5sgz.js} +2 -2
- package/dist/{chunk-ewf24h4z.js.map → chunk-574s5sgz.js.map} +1 -1
- package/dist/{chunk-xtj7cgsx.js → chunk-5yjseh8g.js} +2 -2
- package/dist/{chunk-xtj7cgsx.js.map → chunk-5yjseh8g.js.map} +1 -1
- package/dist/{chunk-6016sfy5.js → chunk-5zfwvabd.js} +2 -2
- package/dist/{chunk-6016sfy5.js.map → chunk-5zfwvabd.js.map} +1 -1
- package/dist/{chunk-dqj22m1r.js → chunk-64m4fmf0.js} +2 -2
- package/dist/{chunk-xe126csw.js.map → chunk-64m4fmf0.js.map} +1 -1
- package/dist/{chunk-k9ndr16q.js → chunk-7e1fgzcv.js} +2 -2
- package/dist/{chunk-k9ndr16q.js.map → chunk-7e1fgzcv.js.map} +1 -1
- package/dist/{chunk-9r4rvyfr.js → chunk-8bnmvhrv.js} +2 -2
- package/dist/{chunk-9r4rvyfr.js.map → chunk-8bnmvhrv.js.map} +1 -1
- package/dist/{chunk-f4wkm07x.js → chunk-8tyxtp36.js} +2 -2
- package/dist/{chunk-f4wkm07x.js.map → chunk-8tyxtp36.js.map} +1 -1
- package/dist/{chunk-0v46hne6.js → chunk-8ym912fj.js} +3 -3
- package/dist/{chunk-0v46hne6.js.map → chunk-8ym912fj.js.map} +1 -1
- package/dist/{chunk-4dnr1vg7.js → chunk-96gnm8zb.js} +2 -2
- package/dist/{chunk-4dnr1vg7.js.map → chunk-96gnm8zb.js.map} +1 -1
- package/dist/{chunk-vzz91xsm.js → chunk-9nks1y2h.js} +2 -2
- package/dist/{chunk-vzz91xsm.js.map → chunk-9nks1y2h.js.map} +1 -1
- package/dist/{chunk-9bcsfce4.js → chunk-a2br22hp.js} +2 -2
- package/dist/{chunk-9bcsfce4.js.map → chunk-a2br22hp.js.map} +1 -1
- package/dist/{chunk-7gc1jp2z.js → chunk-a2r94jbz.js} +2 -2
- package/dist/{chunk-7gc1jp2z.js.map → chunk-a2r94jbz.js.map} +1 -1
- package/dist/{chunk-h3jb2g2g.js → chunk-a4s0kf20.js} +2 -2
- package/dist/{chunk-h3jb2g2g.js.map → chunk-a4s0kf20.js.map} +1 -1
- package/dist/{chunk-tzne38pa.js → chunk-aat9zhrj.js} +3 -3
- package/dist/{chunk-tzne38pa.js.map → chunk-aat9zhrj.js.map} +1 -1
- package/dist/{chunk-r5wtc9fw.js → chunk-ay60f8dy.js} +1 -1
- package/dist/{chunk-df0nx9d6.js → chunk-bcdst4fd.js} +2 -2
- package/dist/{chunk-df0nx9d6.js.map → chunk-bcdst4fd.js.map} +1 -1
- package/dist/{chunk-6srzhv88.js → chunk-bhaae60h.js} +3 -3
- package/dist/{chunk-6srzhv88.js.map → chunk-bhaae60h.js.map} +1 -1
- package/dist/{chunk-zdpxwpc3.js → chunk-bmzznzhz.js} +3 -3
- package/dist/{chunk-zdpxwpc3.js.map → chunk-bmzznzhz.js.map} +1 -1
- package/dist/{chunk-8tzmat5s.js → chunk-brcn3h9b.js} +3 -3
- package/dist/{chunk-8tzmat5s.js.map → chunk-brcn3h9b.js.map} +1 -1
- package/dist/{chunk-d7a79eqm.js → chunk-c6ms23fk.js} +2 -2
- package/dist/{chunk-d7a79eqm.js.map → chunk-c6ms23fk.js.map} +1 -1
- package/dist/{chunk-05k9gmr9.js → chunk-cmjmy3gt.js} +1 -1
- package/dist/{chunk-ksgeqtcv.js → chunk-cnnmb8p3.js} +2 -2
- package/dist/{chunk-ksgeqtcv.js.map → chunk-cnnmb8p3.js.map} +1 -1
- package/dist/{chunk-fqw81xgw.js → chunk-eq252sbg.js} +2 -2
- package/dist/{chunk-fqw81xgw.js.map → chunk-eq252sbg.js.map} +1 -1
- package/dist/{chunk-1hhwqx50.js → chunk-ezrf5vv9.js} +2 -2
- package/dist/{chunk-1hhwqx50.js.map → chunk-ezrf5vv9.js.map} +1 -1
- package/dist/{chunk-39sawkhs.js → chunk-f76hstxx.js} +2 -2
- package/dist/{chunk-39sawkhs.js.map → chunk-f76hstxx.js.map} +1 -1
- package/dist/{chunk-kxgxeead.js → chunk-fbbqy4af.js} +2 -2
- package/dist/{chunk-kxgxeead.js.map → chunk-fbbqy4af.js.map} +1 -1
- package/dist/{chunk-9zcsshgb.js → chunk-gr4vynwd.js} +2 -2
- package/dist/{chunk-9zcsshgb.js.map → chunk-gr4vynwd.js.map} +1 -1
- package/dist/{chunk-sgarq1q9.js → chunk-gr625kyj.js} +2 -2
- package/dist/{chunk-sgarq1q9.js.map → chunk-gr625kyj.js.map} +1 -1
- package/dist/{chunk-bsnp7h5w.js → chunk-h2yyyzsv.js} +3 -3
- package/dist/{chunk-bsnp7h5w.js.map → chunk-h2yyyzsv.js.map} +1 -1
- package/dist/{chunk-tbf76adx.js → chunk-h3xpvksc.js} +2 -2
- package/dist/{chunk-tbf76adx.js.map → chunk-h3xpvksc.js.map} +1 -1
- package/dist/{chunk-gnnay997.js → chunk-h968axww.js} +2 -2
- package/dist/{chunk-gnnay997.js.map → chunk-h968axww.js.map} +1 -1
- package/dist/{chunk-w65gftzm.js → chunk-hkjfyhv4.js} +2 -2
- package/dist/{chunk-w65gftzm.js.map → chunk-hkjfyhv4.js.map} +1 -1
- package/dist/{chunk-pbc3w7mq.js → chunk-hrj2d0w4.js} +2 -2
- package/dist/{chunk-pbc3w7mq.js.map → chunk-hrj2d0w4.js.map} +1 -1
- package/dist/{chunk-kknybxbv.js → chunk-hthdwnfr.js} +2 -2
- package/dist/{chunk-kknybxbv.js.map → chunk-hthdwnfr.js.map} +1 -1
- package/dist/{chunk-c9q856yk.js → chunk-j6sbfa2q.js} +2 -2
- package/dist/{chunk-c9q856yk.js.map → chunk-j6sbfa2q.js.map} +1 -1
- package/dist/{chunk-bs8mrewm.js → chunk-jj4w6ce5.js} +2 -2
- package/dist/{chunk-bs8mrewm.js.map → chunk-jj4w6ce5.js.map} +1 -1
- package/dist/{chunk-2p7zph5z.js → chunk-kx3etqsr.js} +2 -2
- package/dist/{chunk-2p7zph5z.js.map → chunk-kx3etqsr.js.map} +1 -1
- package/dist/{chunk-b1grj1t0.js → chunk-mg9m53kk.js} +2 -2
- package/dist/{chunk-b1grj1t0.js.map → chunk-mg9m53kk.js.map} +1 -1
- package/dist/{chunk-6vmc8eak.js → chunk-mkb9nt5n.js} +2 -2
- package/dist/{chunk-6vmc8eak.js.map → chunk-mkb9nt5n.js.map} +1 -1
- package/dist/{chunk-w8hre8gz.js → chunk-n8egkp1k.js} +2 -2
- package/dist/{chunk-w8hre8gz.js.map → chunk-n8egkp1k.js.map} +1 -1
- package/dist/{chunk-erwawm84.js → chunk-nbmzs80j.js} +2 -2
- package/dist/{chunk-erwawm84.js.map → chunk-nbmzs80j.js.map} +1 -1
- package/dist/{chunk-d084zwp9.js → chunk-nfx1p5z2.js} +3 -3
- package/dist/{chunk-d084zwp9.js.map → chunk-nfx1p5z2.js.map} +1 -1
- package/dist/{chunk-hr9twa8v.js → chunk-nwdtdq2k.js} +3 -3
- package/dist/{chunk-hr9twa8v.js.map → chunk-nwdtdq2k.js.map} +1 -1
- package/dist/{chunk-mbshptjq.js → chunk-p779zv1n.js} +2 -2
- package/dist/{chunk-mbshptjq.js.map → chunk-p779zv1n.js.map} +1 -1
- package/dist/chunk-pb2bap50.js +117 -0
- package/dist/{chunk-k036qfj0.js.map → chunk-pb2bap50.js.map} +5 -5
- package/dist/{chunk-4hhvaa7a.js → chunk-pha2mqjr.js} +2 -2
- package/dist/{chunk-4hhvaa7a.js.map → chunk-pha2mqjr.js.map} +1 -1
- package/dist/{chunk-qfqn7rz8.js → chunk-pv3152gj.js} +1 -1
- package/dist/{chunk-f1my4jah.js → chunk-q21p7bq9.js} +1 -1
- package/dist/{chunk-srvsz7vm.js → chunk-q21wxx5y.js} +1 -1
- package/dist/{chunk-g3m7t5zc.js → chunk-q5j1bwny.js} +1 -1
- package/dist/{chunk-m250ejpg.js → chunk-r4ewwmcr.js} +2 -2
- package/dist/{chunk-m250ejpg.js.map → chunk-r4ewwmcr.js.map} +1 -1
- package/dist/{chunk-3esnjxv9.js → chunk-rhqcv3te.js} +2 -2
- package/dist/{chunk-3esnjxv9.js.map → chunk-rhqcv3te.js.map} +1 -1
- package/dist/{chunk-6rh3brnr.js → chunk-sq2ccgxy.js} +3 -3
- package/dist/{chunk-6rh3brnr.js.map → chunk-sq2ccgxy.js.map} +1 -1
- package/dist/chunk-sz8w3kwt.js +5 -0
- package/dist/{chunk-2mvz2pjr.js.map → chunk-sz8w3kwt.js.map} +1 -1
- package/dist/{chunk-7mp369vg.js → chunk-tdbm67bb.js} +2 -2
- package/dist/{chunk-7mp369vg.js.map → chunk-tdbm67bb.js.map} +1 -1
- package/dist/{chunk-sjg5g92s.js → chunk-tpx30rbj.js} +2 -2
- package/dist/{chunk-sjg5g92s.js.map → chunk-tpx30rbj.js.map} +1 -1
- package/dist/{chunk-m0nvysa5.js → chunk-v9g2np6k.js} +3 -3
- package/dist/{chunk-m0nvysa5.js.map → chunk-v9g2np6k.js.map} +1 -1
- package/dist/{chunk-ywcfezjq.js → chunk-w1y6x2rm.js} +2 -2
- package/dist/{chunk-ywcfezjq.js.map → chunk-w1y6x2rm.js.map} +1 -1
- package/dist/{chunk-vpmbynke.js → chunk-x9h1hchj.js} +2 -2
- package/dist/{chunk-vpmbynke.js.map → chunk-x9h1hchj.js.map} +1 -1
- package/dist/{chunk-699j2epd.js → chunk-xvaan2fe.js} +4 -4
- package/dist/{chunk-699j2epd.js.map → chunk-xvaan2fe.js.map} +1 -1
- package/dist/{chunk-97aeny79.js → chunk-y13dsype.js} +3 -3
- package/dist/{chunk-97aeny79.js.map → chunk-y13dsype.js.map} +1 -1
- package/dist/{chunk-5d653hk1.js → chunk-y5c9xqme.js} +2 -2
- package/dist/{chunk-5d653hk1.js.map → chunk-y5c9xqme.js.map} +1 -1
- package/dist/{chunk-jhn1h70n.js → chunk-ygdmm1h4.js} +2 -2
- package/dist/{chunk-jhn1h70n.js.map → chunk-ygdmm1h4.js.map} +1 -1
- package/dist/{chunk-h041bq3j.js → chunk-yhdwr77h.js} +2 -2
- package/dist/{chunk-h041bq3j.js.map → chunk-yhdwr77h.js.map} +1 -1
- package/dist/{chunk-5yvy70d7.js → chunk-yszn7ses.js} +2 -2
- package/dist/{chunk-5yvy70d7.js.map → chunk-yszn7ses.js.map} +1 -1
- package/dist/{chunk-r1n2fkfz.js → chunk-z0q126b1.js} +2 -2
- package/dist/{chunk-r1n2fkfz.js.map → chunk-z0q126b1.js.map} +1 -1
- package/dist/{chunk-ykd2ayw8.js → chunk-zczvbygf.js} +2 -2
- package/dist/{chunk-ykd2ayw8.js.map → chunk-zczvbygf.js.map} +1 -1
- package/dist/{chunk-jv48eg0a.js → chunk-zn6j65pg.js} +2 -2
- package/dist/{chunk-jv48eg0a.js.map → chunk-zn6j65pg.js.map} +1 -1
- package/dist/config/index.js +1 -1
- package/dist/console/run.js +2 -2
- package/dist/console/run.js.map +1 -1
- package/dist/container/index.js +2 -2
- package/dist/container/index.js.map +1 -1
- package/dist/database/index.js +2 -2
- package/dist/database/index.js.map +1 -1
- package/dist/email/index.js +2 -2
- package/dist/email/index.js.map +1 -1
- package/dist/facades/index.js +2 -2
- package/dist/facades/index.js.map +1 -1
- package/dist/foundation/index.js +2 -2
- package/dist/foundation/index.js.map +1 -1
- package/dist/http/ApiRouter.d.ts +1 -1
- package/dist/http/ApiRouter.d.ts.map +1 -1
- package/dist/http/index.js +2 -2
- package/dist/http/index.js.map +1 -1
- package/dist/i18n/dictionaryRuntime.js +2 -2
- package/dist/i18n/dictionaryRuntime.js.map +1 -1
- package/dist/i18n/index.js +2 -2
- package/dist/i18n/index.js.map +1 -1
- package/dist/kernel/index.js +2 -2
- package/dist/kernel/index.js.map +1 -1
- package/dist/orm/index.js +2 -2
- package/dist/orm/index.js.map +1 -1
- package/dist/probe/index.js +2 -2
- package/dist/probe/index.js.map +1 -1
- package/dist/server/index.js +2 -2
- package/dist/server/index.js.map +1 -1
- package/dist/services/index.js +2 -2
- package/dist/services/index.js.map +1 -1
- package/dist/services/queue/work.js +2 -2
- package/dist/services/queue/work.js.map +1 -1
- package/dist/services/router/ViewRouteDispatcher.d.ts.map +1 -1
- package/dist/services/router/globalMiddleware.d.ts.map +1 -1
- package/dist/services/router/staticCache.d.ts +1 -0
- package/dist/services/router/staticCache.d.ts.map +1 -1
- package/dist/stats/route-table.js +1 -1
- package/dist/support/index.js +2 -2
- package/dist/support/index.js.map +1 -1
- package/dist/utils/jsonify.d.ts +81 -0
- package/dist/utils/jsonify.d.ts.map +1 -0
- package/dist/vitest/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-2mvz2pjr.js +0 -5
- package/dist/chunk-k036qfj0.js +0 -117
- package/dist/chunk-xnkx1kz8.js +0 -10
- /package/dist/{chunk-r5wtc9fw.js.map → chunk-ay60f8dy.js.map} +0 -0
- /package/dist/{chunk-05k9gmr9.js.map → chunk-cmjmy3gt.js.map} +0 -0
- /package/dist/{chunk-qfqn7rz8.js.map → chunk-pv3152gj.js.map} +0 -0
- /package/dist/{chunk-f1my4jah.js.map → chunk-q21p7bq9.js.map} +0 -0
- /package/dist/{chunk-srvsz7vm.js.map → chunk-q21wxx5y.js.map} +0 -0
- /package/dist/{chunk-g3m7t5zc.js.map → chunk-q5j1bwny.js.map} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{F as
|
|
2
|
+
import{Hl as P}from"./chunk-0mye000w.js";class F{provider="custom";supportsIdempotencyKey=!1;async deliver(j){let x=await this.send(j);return{ok:Boolean(x),id:null}}}class G extends F{apiKey;provider="resend";supportsIdempotencyKey=!0;constructor(j=process.env.RESEND_API_KEY){super();this.apiKey=j}async send(j){return(await this.deliver(j)).ok}async deliver(j){let{Resend:x}=await import("./chunk-r4ewwmcr.js"),A=new x(this.apiKey),{idempotencyKey:z,...N}=j,{data:H,error:B}=await A.emails.send(N,z?{idempotencyKey:z}:void 0);if(B)return console.error(B),{ok:!1,id:null,error:B};if(H)return{ok:!0,id:H.id??null};return{ok:!1,id:null}}}function Z(j){return j}function J(){return{driver:new G,headers:{},filterRecipients:(j)=>j}}function Q(j){for(let x=j;x;x=Object.getPrototypeOf(x)){let A=Object.prototype.hasOwnProperty.call(x,"deliver"),z=Object.prototype.hasOwnProperty.call(x,"send");if(A)return!1;if(z)return!0}return!0}async function M(j,x){if(typeof j.deliver==="function"&&!Q(j))return j.deliver(x);return{ok:Boolean(await j.send(x)),id:null}}class U{static token="mail";driver;headers;recipientFilter;constructor(j={}){let x=J();this.driver=j.driver??x.driver,this.headers=j.headers??x.headers,this.recipientFilter=j.filterRecipients??x.filterRecipients}filterRecipients(j){return this.recipientFilter(j)}send(j){return this.driver.send(j)}async deliver(j){return M(this.driver,j)}}
|
|
3
|
+
export{F as Tk,G as Uk,Z as Vk,J as Wk,M as Xk,U as Yk};
|
|
4
4
|
|
|
5
|
-
//# debugId=
|
|
5
|
+
//# debugId=DD2A41E065EFACF164756E2164756E21
|
|
@@ -9,6 +9,6 @@
|
|
|
9
9
|
"import { mailConfigDefaults, type MailConfig } from \"./config\";\nimport { deliverThrough } from \"./deliver\";\nimport type { EmailDriver } from \"./drivers/EmailDriver\";\nimport type { EmailDeliveryResult, SendEmailParams } from \"./drivers/types\";\n\nexport class MailManager {\n static token = \"mail\";\n\n readonly driver: EmailDriver;\n readonly headers: Record<string, string>;\n\n private readonly recipientFilter: NonNullable<MailConfig[\"filterRecipients\"]>;\n\n constructor(config: MailConfig = {}) {\n const defaults = mailConfigDefaults();\n\n this.driver = config.driver ?? defaults.driver;\n this.headers = config.headers ?? defaults.headers;\n this.recipientFilter = config.filterRecipients ?? defaults.filterRecipients;\n }\n\n filterRecipients(emails: string[]): Promise<Array<string>> | Array<string> {\n return this.recipientFilter(emails);\n }\n\n send(params: SendEmailParams) {\n return this.driver.send(params);\n }\n\n /** Like `send`, but reports the outcome and the provider's message id. */\n async deliver(params: SendEmailParams): Promise<EmailDeliveryResult> {\n // A driver that doesn't extend `EmailDriver`, or a subclass that only\n // overrides `send`, is called through `send`.\n return deliverThrough(this.driver, params);\n }\n}\n"
|
|
10
10
|
],
|
|
11
11
|
"mappings": ";yCAEO,MAAe,CAAY,CAKvB,SAAmB,SAMnB,uBAAkC,QASrC,QAAO,CAAC,EAAuD,CACnE,IAAM,EAAK,MAAM,KAAK,KAAK,CAAM,EACjC,MAAO,CAAE,GAAI,QAAQ,CAAE,EAAG,GAAI,IAAK,EAEvC,CCvBO,MAAM,UAAqB,CAAY,CAIxB,OAHF,SAAW,SACX,uBAAyB,GAE3C,WAAW,CAAS,EAAS,QAAQ,IAAI,eAAgB,CACvD,MAAM,EADY,mBAId,KAAI,CAAC,EAAyB,CAClC,OAAQ,MAAM,KAAK,QAAQ,CAAM,GAAG,QAGvB,QAAO,CAAC,EAAuD,CAO5E,IAAQ,UAAW,KAAa,+BAC1B,EAAS,IAAI,EAAO,KAAK,MAAM,GAG7B,oBAAmB,GAAY,GAC/B,OAAM,SAAU,MAAM,EAAO,OAAO,KAC1C,EACA,EAAiB,CAAE,gBAAe,EAAI,MACxC,EAEA,GAAI,EAEF,OADA,QAAQ,MAAM,CAAK,EACZ,CAAE,GAAI,GAAO,GAAI,KAAM,OAAM,EAGtC,GAAI,EACF,MAAO,CAAE,GAAI,GAAM,GAAI,EAAK,IAAM,IAAK,EAGzC,MAAO,CAAE,GAAI,GAAO,GAAI,IAAK,EAEjC,CC7BO,SAAS,CAAgB,CAAC,EAAgC,CAC/D,OAAO,EAGF,SAAS,CAAkB,EAAyB,CACzD,MAAO,CACL,OAAQ,IAAI,EACZ,QAAS,CAAC,EACV,iBAAkB,CAAC,IAAW,CAChC,ECVF,SAAS,CAAgB,CAAC,EAAgB,CACxC,QAAS,EAAQ,EAAQ,EAAO,EAAQ,OAAO,eAAe,CAAK,EAAG,CACpE,IAAM,EAAa,OAAO,UAAU,eAAe,KAAK,EAAO,SAAS,EAClE,EAAU,OAAO,UAAU,eAAe,KAAK,EAAO,MAAM,EAClE,GAAI,EAAY,MAAO,GACvB,GAAI,EAAS,MAAO,GAEtB,MAAO,GAOT,eAAsB,CAAc,CAClC,EACA,EAC8B,CAC9B,GAAI,OAAO,EAAO,UAAY,YAAc,CAAC,EAAiB,CAAM,EAClE,OAAO,EAAO,QAAQ,CAAM,EAE9B,MAAO,CAAE,GAAI,QAAQ,MAAM,EAAO,KAAK,CAAM,CAAC,EAAG,GAAI,IAAK,EC7BrD,MAAM,CAAY,OAChB,OAAQ,OAEN,OACA,QAEQ,gBAEjB,WAAW,CAAC,EAAqB,CAAC,EAAG,CACnC,IAAM,EAAW,EAAmB,EAEpC,KAAK,OAAS,EAAO,QAAU,EAAS,OACxC,KAAK,QAAU,EAAO,SAAW,EAAS,QAC1C,KAAK,gBAAkB,EAAO,kBAAoB,EAAS,iBAG7D,gBAAgB,CAAC,EAA0D,CACzE,OAAO,KAAK,gBAAgB,CAAM,EAGpC,IAAI,CAAC,EAAyB,CAC5B,OAAO,KAAK,OAAO,KAAK,CAAM,OAI1B,QAAO,CAAC,EAAuD,CAGnE,OAAO,EAAe,KAAK,OAAQ,CAAM,EAE7C",
|
|
12
|
-
"debugId": "
|
|
12
|
+
"debugId": "DD2A41E065EFACF164756E2164756E21",
|
|
13
13
|
"names": []
|
|
14
14
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{pa as w,qa as P,ra as R,sa as b}from"./chunk-bwg7genv.js";import{va as K,wa as _,xa as L,ya as A}from"./chunk-mvd4mc8p.js";import{za as I}from"./chunk-7txst143.js";import{Aa as T,Ba as E}from"./chunk-
|
|
2
|
+
import{pa as w,qa as P,ra as R,sa as b}from"./chunk-bwg7genv.js";import{va as K,wa as _,xa as L,ya as A}from"./chunk-mvd4mc8p.js";import{za as I}from"./chunk-7txst143.js";import{Aa as T,Ba as E}from"./chunk-10ap3vpj.js";var i=["gemi","gemi/client","gemi/http","gemi/app","gemi/facades","gemi/email","gemi/kernel","gemi/services","gemi/i18n","gemi/dictionary"];function O(q){return q==="gemi"||q.startsWith("gemi/")}import{parseAstAsync as h}from"vite";var V="virtual:gemi-dict/",x="\x00virtual:gemi-dict/",f=new Set(["gemi/dictionary","gemi/client","gemi/i18n"]),y="gemi/dictionary";function B(){let q=new Map;return{name:"gemi-plugin-dictionary",enforce:"post",resolveId(H){if(H.startsWith(V))return`\x00${H}`;return null},async load(H){if(!H.startsWith(x))return null;let Q=H.slice(x.length),W=Q.lastIndexOf("/"),J=Q.slice(0,W),Y=Q.slice(W+1),$=q.get(J);if(!$){let M=g(J);if(M){try{await this.load({id:M})}catch{}$=q.get(J)}}if(!$)return this.error(`No dictionary registered for "${J}". If this persists, restart the dev server.`),null;let G=_($.translations,Y,$.locales);return`export default ${JSON.stringify(G)};
|
|
3
3
|
`},async transform(H,Q){if(!H.includes("defineDictionary"))return null;if(Q.startsWith("\x00")||Q.includes("/node_modules/"))return null;let W=await h(H),J=new Set;for(let Z of W.body){if(Z.type!=="ImportDeclaration")continue;if(!f.has(Z.source?.value))continue;for(let z of Z.specifiers??[])if(z.type==="ImportSpecifier"&&z.imported?.name==="defineDictionary")J.add(z.local.name)}let Y=[],$=0;if(X(W,(Z)=>{if(Z.type!=="CallExpression")return;let z=Z.callee;if(z?.type==="Identifier"&&J.has(z.name)){Y.push(Z);return}if((z?.type==="Identifier"?z.name:z?.type==="MemberExpression"&&!z.computed?z.property?.name:void 0)==="defineDictionary")$++}),$>0&&p(W,"defineDictionary"))$=0;if($>0)this.warn(`${Q}: ${$} defineDictionary() call(s) could not be traced to an import of "gemi/dictionary", "gemi/client" or "gemi/i18n", so their locales were left inline and will all ship to the browser. Import defineDictionary directly by name rather than through a namespace import or a local re-export.`);if(Y.length===0)return null;let G=new T(H),M=!1;for(let Z of Y){if(Z.arguments?.length<1||Z.arguments?.length>2)this.error({message:"defineDictionary() takes an object literal and an optional options object.",pos:Z.start});let z=m(Z.arguments[0],(j)=>this.error({message:j,pos:Z.arguments[0]?.start??Z.start})),F=v(Z.arguments[1],(j)=>this.error({message:j,pos:Z.arguments[1]?.start??Z.start})),D=A(z),C=`${Buffer.from(Q).toString("base64url")}/${D}`,N=K(z,F);if(N.length===0)this.error({message:'defineDictionary() declares no locales \u2014 every key needs at least one "<locale>": "<string>" entry.',pos:Z.start});if(!F){let j=L(z);if(j)this.error({message:`defineDictionary() cannot infer a source language. Key "${j.againstKey}" lists "${j.againstFirst}" first but "${j.key}" lists "${j.first}" first, so the locale every key falls back to depends on the order `+"they are written in \u2014 moving one key would change what language a reader sees. "+'Pass { sourceLocale: "<locale>" } as the second argument to pin it.',pos:Z.start})}q.set(C,{id:D,locales:N,translations:z});let S=N.map((j)=>`${JSON.stringify(j)}:()=>import(${JSON.stringify(`${V}${C}/${j}`)})`).join(",");G.overwrite(Z.start,Z.end,`__gemi_dict__(${JSON.stringify(D)},{${S}})`),M=!0}if(!M)return null;return G.append(`
|
|
4
4
|
import { __gemi_dict__ } from ${JSON.stringify(y)};
|
|
5
5
|
`),{code:G.toString(),map:G.generateMap({hires:!0})}}}}function g(q){let H=q.indexOf("/");if(H===-1)return null;try{return Buffer.from(q.slice(0,H),"base64url").toString("utf8")}catch{return null}}function m(q,H){if(q?.type!=="ObjectExpression")H("defineDictionary() needs an inline object literal \u2014 it is read at build time, so a variable or spread cannot be resolved.");let Q={};for(let W of q.properties){let J=U(W);if(J===null)H("defineDictionary() keys must be plain string keys \u2014 computed keys and spreads cannot be read at build time.");if(W.value?.type!=="ObjectExpression")H(`defineDictionary() entry "${J}" must be an object of "<locale>": "<string>" pairs.`);let Y={};for(let $ of W.value.properties){let G=U($);if(G===null)H(`defineDictionary() entry "${J}" has a locale key that cannot be read at build time.`);let M=$.value;if(M?.type!=="Literal"||typeof M.value!=="string")H(`defineDictionary() entry "${J}" locale "${G}" must be a string literal. Use {{param}} interpolation instead of a template literal or a function.`);Y[G]=M.value}Q[J]=Y}return Q}function v(q,H){if(q===void 0)return;if(q.type!=="ObjectExpression")H("defineDictionary() options must be an inline object literal \u2014 it is read at build time.");for(let Q of q.properties){if(U(Q)!=="sourceLocale")continue;let W=Q.value;if(W?.type!=="Literal"||typeof W.value!=="string")H("defineDictionary() sourceLocale must be a string literal.");return W.value}return}function p(q,H){let Q=!1;return X(q,(W)=>{if(Q)return;if(W.type==="FunctionDeclaration"&&W.id?.name===H)Q=!0;if(W.type==="VariableDeclarator"&&W.id?.name===H)Q=!0}),Q}function U(q){if(q?.type!=="Property"||q.computed)return null;if(q.key?.type==="Identifier")return q.key.name;if(q.key?.type==="Literal"&&typeof q.key.value==="string")return q.key.value;return null}function X(q,H){if(q===null||typeof q!=="object")return;if(Array.isArray(q)){for(let Q of q)X(Q,H);return}if(typeof q.type==="string")H(q);for(let Q of Object.keys(q)){if(Q==="parent")continue;let W=q[Q];if(W&&typeof W==="object")X(W,H)}}import{mkdir as u,writeFile as c}from"fs/promises";import{dirname as r,join as t}from"path";function k(q){let H;return{name:"gemi-plugin-asset-base",config:(Q,W)=>W.command==="build"&&q?{base:q}:void 0,configResolved(Q){H=Q},async writeBundle(Q){if(!H||H.command!=="build"||H.build.ssr||!Q.dir)return;let W=t(Q.dir,P);await u(r(W),{recursive:!0}),await c(W,`${JSON.stringify({assetBase:d(H.base)})}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{El as n}from"./chunk-0mye000w.js";var w=n((p)=>{var r={warningEmitted:!1},a=(e)=>{if(e&&!r.warningEmitted&&parseInt(e.substring(1,e.indexOf(".")))<20)r.warningEmitted=!0,process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
|
|
3
3
|
no longer support Node.js ${e} in January 2026.
|
|
4
4
|
|
|
5
5
|
To continue receiving updates to AWS services, bug fixes, and security
|
|
@@ -8,4 +8,4 @@ updates please upgrade to a supported Node.js LTS version.
|
|
|
8
8
|
More information can be found at: https://a.co/c895JFp`)};function o(e,t,s){if(!e.$source)e.$source={};return e.$source[t]=s,e}function u(e,t,s){if(!e.__aws_sdk_context)e.__aws_sdk_context={features:{}};else if(!e.__aws_sdk_context.features)e.__aws_sdk_context.features={};e.__aws_sdk_context.features[t]=s}function i(e,t,s){if(!e.$source)e.$source={};return e.$source[t]=s,e}p.emitWarningIfUnsupportedVersion=a;p.setCredentialFeature=o;p.setFeature=u;p.setTokenFeature=i;p.state=r});
|
|
9
9
|
export{w as U};
|
|
10
10
|
|
|
11
|
-
//# debugId=
|
|
11
|
+
//# debugId=32FB906CABAB469764756E2164756E21
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"'use strict';\n\nconst state = {\n warningEmitted: false,\n};\nconst emitWarningIfUnsupportedVersion = (version) => {\n if (version && !state.warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 20) {\n state.warningEmitted = true;\n process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will\nno longer support Node.js ${version} in January 2026.\n\nTo continue receiving updates to AWS services, bug fixes, and security\nupdates please upgrade to a supported Node.js LTS version.\n\nMore information can be found at: https://a.co/c895JFp`);\n }\n};\n\nfunction setCredentialFeature(credentials, feature, value) {\n if (!credentials.$source) {\n credentials.$source = {};\n }\n credentials.$source[feature] = value;\n return credentials;\n}\n\nfunction setFeature(context, feature, value) {\n if (!context.__aws_sdk_context) {\n context.__aws_sdk_context = {\n features: {},\n };\n }\n else if (!context.__aws_sdk_context.features) {\n context.__aws_sdk_context.features = {};\n }\n context.__aws_sdk_context.features[feature] = value;\n}\n\nfunction setTokenFeature(token, feature, value) {\n if (!token.$source) {\n token.$source = {};\n }\n token.$source[feature] = value;\n return token;\n}\n\nexports.emitWarningIfUnsupportedVersion = emitWarningIfUnsupportedVersion;\nexports.setCredentialFeature = setCredentialFeature;\nexports.setFeature = setFeature;\nexports.setTokenFeature = setTokenFeature;\nexports.state = state;\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";uDAEA,IAAM,EAAQ,CACV,eAAgB,EACpB,EACM,EAAkC,CAAC,IAAY,CACjD,GAAI,GAAW,CAAC,EAAM,gBAAkB,SAAS,EAAQ,UAAU,EAAG,EAAQ,QAAQ,GAAG,CAAC,CAAC,EAAI,GAC3F,EAAM,eAAiB,GACvB,QAAQ,YAAY;AAAA,4BACA;AAAA;AAAA;AAAA;AAAA;AAAA,uDAK2B,GAIvD,SAAS,CAAoB,CAAC,EAAa,EAAS,EAAO,CACvD,GAAI,CAAC,EAAY,QACb,EAAY,QAAU,CAAC,EAG3B,OADA,EAAY,QAAQ,GAAW,EACxB,EAGX,SAAS,CAAU,CAAC,EAAS,EAAS,EAAO,CACzC,GAAI,CAAC,EAAQ,kBACT,EAAQ,kBAAoB,CACxB,SAAU,CAAC,CACf,EAEC,QAAI,CAAC,EAAQ,kBAAkB,SAChC,EAAQ,kBAAkB,SAAW,CAAC,EAE1C,EAAQ,kBAAkB,SAAS,GAAW,EAGlD,SAAS,CAAe,CAAC,EAAO,EAAS,EAAO,CAC5C,GAAI,CAAC,EAAM,QACP,EAAM,QAAU,CAAC,EAGrB,OADA,EAAM,QAAQ,GAAW,EAClB,EAGH,kCAAkC,EAClC,uBAAuB,EACvB,aAAa,EACb,kBAAkB,EAClB,QAAQ",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "32FB906CABAB469764756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{tj as O}from"./chunk-8ym912fj.js";import{bk as S}from"./chunk-c6ms23fk.js";import{Ik as E}from"./chunk-x9h1hchj.js";import{gl as U}from"./chunk-h2yyyzsv.js";class F{rows=new Map;async find(j,G){for(let Q of this.rows.values())if(Q.userId===j&&Q.provider===G)return{...Q};return null}async list(j){return[...this.rows.values()].filter((G)=>G.userId===j).map((G)=>({...G}))}async save(j,G,Q){let V=await this.find(j,G),W=new Date,Y={id:V?.id??Bun.randomUUIDv7(),userId:j,provider:G,...P(Q),needsReconnect:!1,revision:(V?.revision??0)+1,createdAt:V?.createdAt??W,updatedAt:W};return this.rows.set(Y.id,Y),{...Y}}async updateTokens(j,G,Q){let V=this.rows.get(j);if(!V||V.revision!==G)return null;let W=P(Q);W.providerAccountId??=V.providerAccountId;let Y={...V,...W,needsReconnect:!1,revision:G+1,updatedAt:new Date};return this.rows.set(j,Y),{...Y}}async markNeedsReconnect(j){let G=this.rows.get(j);if(G)this.rows.set(j,{...G,needsReconnect:!0,updatedAt:new Date})}async delete(j){this.rows.delete(j)}}class L{encrypter;table;sql;dialect;constructor(j,G,Q={}){this.encrypter=G;let V=Q.table??"gemi_oauth_connections";if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(V))throw Error(`The connections table name "${V}" is not a plain identifier.`);this.table=V,this.sql=j.sql,this.dialect=j.dialect}async createTable(){for(let j of q(this.dialect,this.table))await this.sql.unsafe(j)}async find(j,G){let Q=this.sql,V=await Q`
|
|
3
3
|
SELECT * FROM ${this.name(Q)} WHERE user_id = ${j} AND provider = ${G}
|
|
4
4
|
`;return V[0]?this.decode(V[0]):null}async list(j){let G=this.sql;return(await G`
|
|
5
5
|
SELECT * FROM ${this.name(G)} WHERE user_id = ${j} ORDER BY provider
|
|
@@ -66,6 +66,6 @@ import{sj as O}from"./chunk-0v46hne6.js";import{ak as S}from"./chunk-d7a79eqm.js
|
|
|
66
66
|
"created_at" BIGINT NOT NULL,
|
|
67
67
|
"updated_at" BIGINT NOT NULL${V}
|
|
68
68
|
)`,`CREATE UNIQUE INDEX IF NOT EXISTS "${G}_user_id_provider_key" ON "${G}"("user_id", "provider")`]}class X extends Error{code;status;providerError;constructor(j,G,Q={}){super(G,Q.cause!==void 0?{cause:Q.cause}:void 0);this.code=j;this.name="OAuthConnectionError",this.status=Q.status,this.providerError=Q.providerError}}class K extends X{provider;constructor(j,G={}){super("reconnect_required",`The ${j} connection needs to be reconnected: its tokens were refused and could not be refreshed.`,G);this.provider=j;this.name="OAuthReconnectRequiredError"}}class C{config;constructor(j){for(let G of["authorizeUrl","tokenUrl"])_(G,j[G]);for(let G of["refreshUrl","revokeUrl"])if(j[G]!==void 0)_(G,j[G]);if(j.apiBaseUrl===void 0||j.apiBaseUrl===null||j.apiBaseUrl==="")throw Error(`OAuthConnectionProvider: apiBaseUrl is required. Set it to the provider's API origin (e.g. apiBaseUrl: "https://api.figma.com"); connection.fetch only sends the token there.`);_("apiBaseUrl",j.apiBaseUrl),this.config={scopeSeparator:" ",clientAuth:"body",pkce:!0,authorizationParams:{},refreshLeewaySeconds:60,multiple:!1,tokenPlacement:"header",...j,refreshGrantType:j.refreshGrantType??"refresh_token"}}async isTokenRejected(j){let G=this.config.isTokenRejected;if(!G)return j.status===401;return await G(j)}authorizationUrl(j){let G=new URL(this.config.authorizeUrl),Q={...this.config.authorizationParams,response_type:"code",client_id:this.config.clientId,redirect_uri:j.redirectUri,scope:this.config.scopes.join(this.config.scopeSeparator),state:j.state};if(this.config.pkce)Q.code_challenge=j.codeChallenge,Q.code_challenge_method="S256";for(let[V,W]of Object.entries(Q))G.searchParams.set(V,W);return G.toString()}exchangeCode(j){let G=new URLSearchParams({grant_type:"authorization_code",code:j.code,redirect_uri:j.redirectUri});if(this.config.pkce)G.set("code_verifier",j.codeVerifier);return this.tokenRequest(this.config.tokenUrl,G,{scopes:this.config.scopes,refreshToken:null,phase:"exchange"})}refresh(j,G){let Q=new URLSearchParams,V=this.config.refreshGrantType;if(V!==!1&&V!=="")Q.set("grant_type",V);return Q.set("refresh_token",j),this.tokenRequest(this.config.refreshUrl??this.config.tokenUrl,Q,{scopes:G,refreshToken:j,phase:"refresh"})}async revoke(j,G){if(!this.config.revokeUrl)throw new X("revoke_unsupported","This provider has no revokeUrl configured. Use disconnect() to forget the tokens locally.");let Q=new URLSearchParams({token:j,token_type_hint:G}),V;try{V=await fetch(this.config.revokeUrl,this.post(Q))}catch(W){throw new X("revoke_failed","The revocation request failed.",{cause:W})}if(!V.ok)throw new X("revoke_failed",`The provider refused the revocation (HTTP ${V.status}).`,{status:V.status})}post(j){let G={"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"};if(this.config.clientAuth==="basic"){let Q=`${encodeURIComponent(this.config.clientId)}:${encodeURIComponent(this.config.clientSecret)}`;G.Authorization=`Basic ${Buffer.from(Q).toString("base64")}`}else j.set("client_id",this.config.clientId),j.set("client_secret",this.config.clientSecret);return{method:"POST",headers:G,body:j.toString(),redirect:"error"}}async tokenRequest(j,G,Q){let V=Q.phase==="exchange"?"exchange_failed":"refresh_failed",W;try{W=await fetch(j,this.post(G))}catch($){throw new X(V,"The token request failed.",{cause:$})}let Y=await W.json().catch(()=>({}));if(!W.ok||typeof Y.access_token!=="string"||Y.access_token===""){let $=typeof Y.error==="string"&&/^[a-z0-9_]{1,64}$/.test(Y.error)?Y.error:void 0;throw new X(V,`The token endpoint refused the ${Q.phase==="exchange"?"code":"refresh token"} (HTTP ${W.status}${$?`, ${$}`:""}).`,{status:W.status,providerError:$})}let Z=Number(Y.expires_in),B=typeof Y.scope==="string"?Y.scope:void 0,J=Y.user_id_string??Y.user_id??Y.account_id;return{accessToken:Y.access_token,refreshToken:typeof Y.refresh_token==="string"&&Y.refresh_token!==""?Y.refresh_token:Q.refreshToken,tokenType:typeof Y.token_type==="string"?Y.token_type:null,expiresAt:Number.isFinite(Z)&&Z>0?new Date(Date.now()+Z*1000):null,scopes:B!==void 0?B.split(/[\s,]+/).filter(Boolean):Q.scopes,providerAccountId:typeof J==="string"||typeof J==="number"?String(J):null}}}function _(j,G){let Q;try{Q=new URL(String(G))}catch{Q=void 0}if(!Q||Q.protocol!=="https:"&&!(Q.protocol==="http:"&&M(Q.hostname)))throw Error(`OAuthConnectionProvider: ${j} must be an https URL (http only for localhost), got ${JSON.stringify(G)}.`)}function M(j){return j==="localhost"||j==="127.0.0.1"||j==="[::1]"||j==="::1"}class A{options;static token="auth.connections";resolvedStore;refreshing=new Map;fakes;fakeStore;fakeRequests=[];constructor(j){this.options=j;for(let[G,Q]of Object.entries(j.providers)){if(!Q.config.multiple)continue;let V=Object.keys(j.providers).find((W)=>W.startsWith(`${G}${D}`));if(G.includes(D)||V)throw Error(`auth.connections: "${V??G}" cannot be used alongside the multiple-account provider "${G}" ("${D}" separates a provider from an account id in the store).`)}}get providers(){return this.options.providers}get store(){if(this.fakeStore)return this.fakeStore;if(!this.resolvedStore){let j=this.options.store;this.resolvedStore=typeof j==="function"?j():j??new L(U(E).connection(),()=>O())}return this.resolvedStore}provider(j){let G=this.options.providers[j];if(!G){let Q=Object.keys(this.options.providers);throw new X("unknown_provider",`No OAuth connection provider "${j}" in auth.connections`+(Q.length>0?` (configured: ${Q.join(", ")}).`:" (none are configured)."))}return G}async for(j,G,Q){let V=this.provider(G),W=N(j);if(!V.config.multiple){let Z=await this.store.find(W,G);if(!Z||Q!==void 0&&Z.providerAccountId!==Q)return null;return new z(this,Z)}if(Q!==void 0){let Z=await this.store.find(W,T(G,Q))??await this.store.find(W,G);return Z&&Z.providerAccountId===Q?new z(this,Z):null}let[Y]=(await this.list(j,G)).sort((Z,B)=>B.connectedAt.getTime()-Z.connectedAt.getTime());return Y??null}async list(j,G){if(G!==void 0)this.provider(G);return(await this.store.list(N(j))).filter((V)=>{let W=this.providerName(V.provider);return W!==null&&(G===void 0||W===G)}).map((V)=>new z(this,V))}async save(j,G,Q){let V=this.provider(G),W=N(j),{profile:Y,...Z}=Q,B={refreshToken:null,tokenType:null,expiresAt:null,providerAccountId:null,scopes:V.config.scopes,...Z};if(!V.config.multiple)return new z(this,await this.store.save(W,G,B));let J=B.providerAccountId;if(typeof J!=="string"||J==="")throw new X("missing_account_id",`"${G}" allows several accounts per user, so a connection needs the provider's account id (providerAccountId), and the token exchange did not supply one.`);let $=await this.store.save(W,T(G,J),B),H=await this.store.find(W,G);if(H&&H.providerAccountId===J)await this.store.delete(H.id);return new z(this,$)}providerName(j){let G=this.options.providers;if(Object.hasOwn(G,j))return j;let Q=j.indexOf(D);if(Q<=0)return null;let V=j.slice(0,Q);return Object.hasOwn(G,V)&&G[V].config.multiple?V:null}fake(j={}){return this.fakes=new Map(Object.entries(j)),this.fakeStore=new F,this.fakeRequests.length=0,this}restore(){this.fakes=void 0,this.fakeStore=void 0,this.fakeRequests.length=0}get faked(){return this.fakes!==void 0}async send(j,G){if(!this.fakes)return fetch(G);this.fakeRequests.push(G.clone());let Q=this.fakes.get(j);if(!Q)throw Error(`Connections.fake() has no handler for "${j}". Pass one: Connections.fake({ ${j}: (req) => ... }).`);return Q(G)}refresh(j,G="requested"){let Q=this.refreshing.get(j.id);if(Q)return Q;let V=this.withLock(j.id,()=>this.refreshOnce(j,G)).finally(()=>this.refreshing.delete(j.id));return this.refreshing.set(j.id,V),V}async refreshOnce(j,G){let Q=this.providerName(j.provider)??j.provider,V=await this.store.find(j.userId,j.provider);if(!V||V.id!==j.id)throw new K(Q);if(V.revision!==j.revision&&!V.needsReconnect)return V;if(V.needsReconnect)throw new K(Q);let W=this.provider(Q);if(this.faked)return V;let Y=W.config.refreshStrategy;if(!Y&&V.refreshToken===null)throw await this.store.markNeedsReconnect(V.id),new K(Q);let Z;try{Z=Y?await Y({accessToken:V.accessToken,refreshToken:V.refreshToken,scopes:[...V.scopes],expiresAt:V.expiresAt,issuedAt:V.updatedAt,reason:G,providerAccountId:V.providerAccountId}):await W.refresh(V.refreshToken,V.scopes)}catch($){if($ instanceof X&&$.status!==void 0&&$.status>=400&&$.status<500&&$.providerError!=="invalid_client")throw await this.store.markNeedsReconnect(V.id),new K(Q,{cause:$,status:$.status,providerError:$.providerError});throw $}if(Z===null)return V;let B=await this.store.updateTokens(V.id,V.revision,Z);if(B)return B;let J=await this.store.find(V.userId,V.provider);if(!J)throw new K(Q);return J}async withLock(j,G){let Q=U();if(this.faked||!Q.bound(S))return G();let V=await Q.make(S).run(`gemi:oauth-connection:${j}`,{ttl:30000,wait:20000},()=>G());if(!V.acquired)throw new X("refresh_failed","Timed out waiting for another refresh of this connection to finish.");return V.value}}class z{manager;record;constructor(j,G){this.manager=j;this.record=G}get provider(){return this.manager.providerName(this.record.provider)??this.record.provider}get userId(){return this.record.userId}get providerAccountId(){return this.record.providerAccountId}get scopes(){return this.record.scopes}get expiresAt(){return this.record.expiresAt}get needsReconnect(){return this.record.needsReconnect}get connectedAt(){return this.record.createdAt}get status(){if(this.record.needsReconnect)return"needs_reconnect";let j=this.record.expiresAt?.getTime();if(this.record.refreshToken===null&&j!==void 0&&j<=Date.now())return"needs_reconnect";return"connected"}hasScopes(...j){return j.every((G)=>this.record.scopes.includes(G))}async fetch(j,G={}){let Q=this.resolveUrl(j),V=await this.current(),W=await this.send(Q,G,V.accessToken);if(!W.authorized||G.body instanceof ReadableStream)return W.response;if(!await this.manager.provider(this.provider).isTokenRejected(W.response))return W.response;await W.response.body?.cancel().catch(()=>{});let Z=await this.refreshFrom(V,"rejected");return(await this.send(Q,G,Z.accessToken)).response}async accessToken(){return(await this.current()).accessToken}async refresh(){await this.refreshFrom(this.record)}async revoke(){if(!this.manager.faked){let j=this.manager.provider(this.provider);if(this.record.refreshToken!==null)await j.revoke(this.record.refreshToken,"refresh_token");else await j.revoke(this.record.accessToken,"access_token")}await this.manager.store.delete(this.record.id)}async disconnect(){await this.manager.store.delete(this.record.id)}toJSON(){return{provider:this.provider,providerAccountId:this.providerAccountId,scopes:[...this.scopes],expiresAt:this.expiresAt,needsReconnect:this.needsReconnect,status:this.status,connectedAt:this.connectedAt}}[Symbol.for("nodejs.util.inspect.custom")](){return{ProviderConnection:this.toJSON()}}async current(){if(this.record.needsReconnect)throw new K(this.provider);let j=this.manager.provider(this.provider).config.refreshLeewaySeconds*1000,G=this.record.expiresAt?.getTime();if(G!==void 0&&G-Date.now()<=j)return this.refreshFrom(this.record,"expiring");return this.record}async refreshFrom(j,G="requested"){try{this.record=await this.manager.refresh(j,G)}catch(Q){if(Q instanceof K)this.record={...this.record,needsReconnect:!0};throw Q}return this.record}resolveUrl(j){let G=this.manager.provider(this.provider).config.apiBaseUrl,Q;try{Q=new URL(String(j),G)}catch{throw new X("forbidden_url",`connection.fetch was given ${JSON.stringify(String(j))}, which is not a URL.`)}if(Q.origin!==new URL(G).origin)throw new X("forbidden_url",`connection.fetch only sends the ${this.provider} token to ${new URL(G).origin} (apiBaseUrl), not to ${Q.origin}.`);if(Q.protocol!=="https:"&&!(Q.protocol==="http:"&&M(Q.hostname)))throw new X("forbidden_url",`connection.fetch only sends a token over https, not to ${Q.origin}.`);return Q}async send(j,G,Q){let V=j,W=(G.method??"GET").toUpperCase(),Y=G.body,Z=!0;if(G.redirect==="manual"||G.redirect==="error")return{response:await this.manager.send(this.provider,this.request(V,G,W,Y,Q)),authorized:Z};for(let B=0;;B++){let J=this.request(V,{...G,redirect:"manual"},W,Y,Z?Q:null),$=await this.manager.send(this.provider,J),H=$.headers.get("location");if(!b.has($.status)||H===null||B>=5)return{response:$,authorized:Z};await $.body?.cancel().catch(()=>{});let x=new URL(H,V);if(x.origin!==V.origin)Z=!1;if($.status===303||($.status===301||$.status===302)&&W==="POST")W="GET",Y=void 0;V=x}}request(j,G,Q,V,W){let Y=new Headers(G.headers),Z=new URL(j),B=this.manager.provider(this.provider).config.tokenPlacement;if(W===null)Y.delete("authorization");else if(B==="query")Z.searchParams.set("access_token",W);else Y.set("Authorization",`Bearer ${W}`);return new Request(Z,{...G,method:Q,body:V,headers:Y})}}var b=new Set([301,302,303,307,308]),D=":";function T(j,G){return`${j}${D}${G}`}function N(j){let G=typeof j==="object"&&j!==null?j.id:j;if(G===void 0||G===null||G==="")throw TypeError("An OAuth connection belongs to a user: pass the user (or its id).");return String(G)}
|
|
69
|
-
export{F as
|
|
69
|
+
export{F as cj,L as dj,X as ej,K as fj,C as gj,A as hj,z as ij};
|
|
70
70
|
|
|
71
|
-
//# debugId=
|
|
71
|
+
//# debugId=C8DA74E1523ACB8D64756E2164756E21
|
|
@@ -8,6 +8,6 @@
|
|
|
8
8
|
"import { DatabaseManager } from \"../../database/DatabaseManager\";\nimport { app } from \"../../foundation/app\";\nimport { currentEncrypter } from \"../../orm/encryption\";\nimport { LockManager } from \"../../services/lock/LockManager\";\nimport {\n type ConnectionRecord,\n type ConnectionStore,\n DatabaseConnectionStore,\n MemoryConnectionStore,\n} from \"./ConnectionStore\";\nimport { OAuthConnectionError, OAuthReconnectRequiredError } from \"./errors\";\nimport {\n type ConnectionRefreshReason,\n type OAuthConnectionProvider,\n type OAuthTokenSet,\n isLoopback,\n} from \"./OAuthConnectionProvider\";\n\n/** A user, as far as a connection is concerned: anything with an `id`. */\nexport type ConnectionOwner = { id: string | number } | string | number;\n\n/** See `ProviderConnection.status`. */\nexport type ConnectionStatus = \"connected\" | \"needs_reconnect\";\n\n/** What `Connections.fake` answers an API request with. */\nexport type FakeConnectionHandler = (request: Request) => Response | Promise<Response>;\n\nexport interface ConnectionManagerOptions {\n providers: Record<string, OAuthConnectionProvider>;\n /** Default: a `DatabaseConnectionStore` on the default database connection. */\n store?: ConnectionStore | (() => ConnectionStore);\n}\n\n/**\n * The OAuth connections a user has made, and the one place their tokens are\n * read, refreshed and spent. Reached through the `Connections` facade.\n */\nexport class ConnectionManager {\n static token = \"auth.connections\";\n\n private resolvedStore: ConnectionStore | undefined;\n private readonly refreshing = new Map<string, Promise<ConnectionRecord>>();\n private fakes: Map<string, FakeConnectionHandler> | undefined;\n private fakeStore: MemoryConnectionStore | undefined;\n readonly fakeRequests: Request[] = [];\n\n constructor(private readonly options: ConnectionManagerOptions) {\n for (const [name, provider] of Object.entries(options.providers)) {\n if (!provider.config.multiple) continue;\n // A multiple-account provider's connections are stored under\n // `<name>:<account id>`, which must not be read as another provider's.\n const clash = Object.keys(options.providers).find((other) => other.startsWith(`${name}${ACCOUNT_SEPARATOR}`));\n if (name.includes(ACCOUNT_SEPARATOR) || clash) {\n throw new Error(\n `auth.connections: \"${clash ?? name}\" cannot be used alongside the multiple-account provider \"${name}\" ` +\n `(\"${ACCOUNT_SEPARATOR}\" separates a provider from an account id in the store).`,\n );\n }\n }\n }\n\n get providers(): Record<string, OAuthConnectionProvider> {\n return this.options.providers;\n }\n\n /** The store connections are kept in. */\n get store(): ConnectionStore {\n if (this.fakeStore) return this.fakeStore;\n if (!this.resolvedStore) {\n const configured = this.options.store;\n this.resolvedStore =\n typeof configured === \"function\"\n ? configured()\n : (configured ??\n new DatabaseConnectionStore(app(DatabaseManager).connection(), () => currentEncrypter()));\n }\n return this.resolvedStore;\n }\n\n provider(name: string): OAuthConnectionProvider {\n const provider = this.options.providers[name];\n if (!provider) {\n const known = Object.keys(this.options.providers);\n throw new OAuthConnectionError(\n \"unknown_provider\",\n `No OAuth connection provider \"${name}\" in auth.connections` +\n (known.length > 0 ? ` (configured: ${known.join(\", \")}).` : \" (none are configured).\"),\n );\n }\n return provider;\n }\n\n /**\n * The user's connection to `provider`, or `null` when they have not\n * connected it. With `accountId`, only the connection to that account\n * (`providerAccountId`). For a provider with `multiple: true` and no\n * `accountId`, the account added most recently; use `list(user,\n * provider)` for all of them.\n */\n async for(user: ConnectionOwner, provider: string, accountId?: string): Promise<ProviderConnection | null> {\n const config = this.provider(provider);\n const userId = ownerId(user);\n if (!config.config.multiple) {\n const record = await this.store.find(userId, provider);\n if (!record || (accountId !== undefined && record.providerAccountId !== accountId)) return null;\n return new ProviderConnection(this, record);\n }\n if (accountId !== undefined) {\n const record =\n (await this.store.find(userId, storeKey(provider, accountId))) ??\n // Stored before the provider was switched to `multiple`.\n (await this.store.find(userId, provider));\n return record && record.providerAccountId === accountId ? new ProviderConnection(this, record) : null;\n }\n const [latest] = (await this.list(user, provider)).sort(\n (a, b) => b.connectedAt.getTime() - a.connectedAt.getTime(),\n );\n return latest ?? null;\n }\n\n /** Every connection the user has, or only those to `provider`. */\n async list(user: ConnectionOwner, provider?: string): Promise<ProviderConnection[]> {\n if (provider !== undefined) this.provider(provider);\n const records = await this.store.list(ownerId(user));\n return records\n .filter((record) => {\n const name = this.providerName(record.provider);\n return name !== null && (provider === undefined || name === provider);\n })\n .map((record) => new ProviderConnection(this, record));\n }\n\n /**\n * Stores tokens for the user, replacing any earlier connection to the same\n * provider — or, for a provider with `multiple: true`, to the same account\n * (`providerAccountId`, required there). The connect callback calls this;\n * call it yourself for tokens obtained some other way.\n */\n async save(\n user: ConnectionOwner,\n provider: string,\n tokens: Partial<OAuthTokenSet> & { accessToken: string },\n ): Promise<ProviderConnection> {\n const config = this.provider(provider);\n const userId = ownerId(user);\n const { profile: _profile, ...grant } = tokens;\n const set: OAuthTokenSet = {\n refreshToken: null,\n tokenType: null,\n expiresAt: null,\n providerAccountId: null,\n scopes: config.config.scopes,\n ...grant,\n };\n if (!config.config.multiple) {\n return new ProviderConnection(this, await this.store.save(userId, provider, set));\n }\n\n const accountId = set.providerAccountId;\n if (typeof accountId !== \"string\" || accountId === \"\") {\n throw new OAuthConnectionError(\n \"missing_account_id\",\n `\"${provider}\" allows several accounts per user, so a connection needs the provider's account id ` +\n \"(providerAccountId), and the token exchange did not supply one.\",\n );\n }\n const record = await this.store.save(userId, storeKey(provider, accountId), set);\n // The same account, stored before the provider was switched to `multiple`.\n const legacy = await this.store.find(userId, provider);\n if (legacy && legacy.providerAccountId === accountId) await this.store.delete(legacy.id);\n return new ProviderConnection(this, record);\n }\n\n /**\n * The configured provider a stored connection belongs to: the store key\n * itself, or `<name>` of a multiple-account provider's `<name>:<account id>`.\n * `null` for a provider no longer configured.\n *\n * @internal\n */\n providerName(key: string): string | null {\n const providers = this.options.providers;\n if (Object.hasOwn(providers, key)) return key;\n const at = key.indexOf(ACCOUNT_SEPARATOR);\n if (at <= 0) return null;\n const name = key.slice(0, at);\n return Object.hasOwn(providers, name) && providers[name].config.multiple ? name : null;\n }\n\n // --- testing ---------------------------------------------------------------\n\n /**\n * Fakes every provider's API: connections live in memory, `fetch` answers\n * through `handlers[provider]` (recorded in `fakeRequests`), and nothing\n * reaches a token or revocation endpoint. Returns `this` so a test can\n * `save` a connection to start from.\n */\n fake(handlers: Record<string, FakeConnectionHandler> = {}): this {\n this.fakes = new Map(Object.entries(handlers));\n this.fakeStore = new MemoryConnectionStore();\n this.fakeRequests.length = 0;\n return this;\n }\n\n /** Undoes `fake`. */\n restore(): void {\n this.fakes = undefined;\n this.fakeStore = undefined;\n this.fakeRequests.length = 0;\n }\n\n get faked(): boolean {\n return this.fakes !== undefined;\n }\n\n // --- internals, for ProviderConnection ---------------------------------------\n\n /** @internal */\n async send(provider: string, request: Request): Promise<Response> {\n if (!this.fakes) return fetch(request);\n this.fakeRequests.push(request.clone());\n const handler = this.fakes.get(provider);\n if (!handler) {\n throw new Error(`Connections.fake() has no handler for \"${provider}\". Pass one: Connections.fake({ ${provider}: (req) => ... }).`);\n }\n return handler(request);\n }\n\n /**\n * A record whose access token is not the one at `staleRevision`: refreshed\n * by this call, or by whoever refreshed it first. Serialised per connection\n * in this process (concurrent callers share one refresh) and, through the\n * app's lock store, across processes — a rotating refresh token must be\n * spent exactly once.\n *\n * @internal\n */\n refresh(record: ConnectionRecord, reason: ConnectionRefreshReason = \"requested\"): Promise<ConnectionRecord> {\n const inFlight = this.refreshing.get(record.id);\n if (inFlight) return inFlight;\n const task = this.withLock(record.id, () => this.refreshOnce(record, reason)).finally(() =>\n this.refreshing.delete(record.id),\n );\n this.refreshing.set(record.id, task);\n return task;\n }\n\n private async refreshOnce(seen: ConnectionRecord, reason: ConnectionRefreshReason): Promise<ConnectionRecord> {\n // Re-read under the lock: another process may have refreshed already.\n const name = this.providerName(seen.provider) ?? seen.provider;\n const current = await this.store.find(seen.userId, seen.provider);\n if (!current || current.id !== seen.id) {\n throw new OAuthReconnectRequiredError(name);\n }\n if (current.revision !== seen.revision && !current.needsReconnect) return current;\n if (current.needsReconnect) throw new OAuthReconnectRequiredError(name);\n\n const provider = this.provider(name);\n if (this.faked) return current;\n const strategy = provider.config.refreshStrategy;\n if (!strategy && current.refreshToken === null) {\n await this.store.markNeedsReconnect(current.id);\n throw new OAuthReconnectRequiredError(name);\n }\n\n let tokens: OAuthTokenSet | null;\n try {\n tokens = strategy\n ? await strategy({\n accessToken: current.accessToken,\n refreshToken: current.refreshToken,\n scopes: [...current.scopes],\n expiresAt: current.expiresAt,\n issuedAt: current.updatedAt,\n reason,\n providerAccountId: current.providerAccountId,\n })\n : await provider.refresh(current.refreshToken as string, current.scopes);\n } catch (error) {\n // A refusal from the token endpoint is final: the grant is gone. A\n // network error or a 5xx is not, and leaves the connection alone. Nor\n // is `invalid_client`: the app's own credentials (or `clientAuth`) are\n // wrong, reconnecting would fail the same way, and marking would make\n // every user reconnect once the config is fixed.\n if (\n error instanceof OAuthConnectionError &&\n error.status !== undefined &&\n error.status >= 400 &&\n error.status < 500 &&\n error.providerError !== \"invalid_client\"\n ) {\n await this.store.markNeedsReconnect(current.id);\n throw new OAuthReconnectRequiredError(name, {\n cause: error,\n status: error.status,\n providerError: error.providerError,\n });\n }\n throw error;\n }\n // The strategy has nothing to refresh yet: keep the current token.\n if (tokens === null) return current;\n\n const updated = await this.store.updateTokens(current.id, current.revision, tokens);\n if (updated) return updated;\n // Someone else wrote first (only possible without a shared lock store).\n const winner = await this.store.find(current.userId, current.provider);\n if (!winner) throw new OAuthReconnectRequiredError(name);\n return winner;\n }\n\n private async withLock<T>(id: string, fn: () => Promise<T>): Promise<T> {\n const application = app();\n if (this.faked || !application.bound(LockManager)) return fn();\n const result = await application\n .make(LockManager)\n .run(`gemi:oauth-connection:${id}`, { ttl: 30_000, wait: 20_000 }, () => fn());\n if (!result.acquired) {\n throw new OAuthConnectionError(\n \"refresh_failed\",\n \"Timed out waiting for another refresh of this connection to finish.\",\n );\n }\n return result.value as T;\n }\n}\n\n/**\n * One user's connection to one provider. Never exposes a token as a property,\n * and serialises (`toJSON`, `console.log`) without them.\n */\nexport class ProviderConnection {\n constructor(\n private readonly manager: ConnectionManager,\n private record: ConnectionRecord,\n ) {}\n\n /** The provider's name under `auth.connections`. */\n get provider(): string {\n return this.manager.providerName(this.record.provider) ?? this.record.provider;\n }\n get userId(): string {\n return this.record.userId;\n }\n get providerAccountId(): string | null {\n return this.record.providerAccountId;\n }\n /** The scopes the provider granted. */\n get scopes(): readonly string[] {\n return this.record.scopes;\n }\n get expiresAt(): Date | null {\n return this.record.expiresAt;\n }\n /** A refresh was refused: the user has to connect again. */\n get needsReconnect(): boolean {\n return this.record.needsReconnect;\n }\n get connectedAt(): Date {\n return this.record.createdAt;\n }\n\n /**\n * What to show the user: `\"needs_reconnect\"` when a refresh was refused, or\n * when the access token has expired and there is no refresh token to renew\n * it; `\"connected\"` otherwise. Read without calling the provider.\n */\n get status(): ConnectionStatus {\n if (this.record.needsReconnect) return \"needs_reconnect\";\n const expiresAt = this.record.expiresAt?.getTime();\n if (this.record.refreshToken === null && expiresAt !== undefined && expiresAt <= Date.now()) {\n return \"needs_reconnect\";\n }\n return \"connected\";\n }\n\n /** Whether every one of `scopes` was granted. */\n hasScopes(...scopes: string[]): boolean {\n return scopes.every((scope) => this.record.scopes.includes(scope));\n }\n\n /**\n * `fetch`, as the user: adds `Authorization: Bearer <token>`, refreshes the\n * token first when it is about to expire, and after a 401 refreshes and\n * retries once. A refresh the provider refuses marks the connection and\n * throws `OAuthReconnectRequiredError`.\n *\n * A path is resolved against the provider's `apiBaseUrl`, and a URL on any\n * other origin is refused (`OAuthConnectionError`,\n * `forbidden_url`), so the token only ever goes to the provider. Redirects\n * are followed by hand: the token is dropped on one that leaves the origin.\n * A streamed request body cannot be sent twice, so a 401 for one is\n * returned rather than retried.\n */\n async fetch(input: string | URL, init: RequestInit = {}): Promise<Response> {\n const url = this.resolveUrl(input);\n const record = await this.current();\n const first = await this.send(url, init, record.accessToken);\n // Retry only a refusal of the token itself, not one from where a redirect\n // led after the token was dropped.\n if (!first.authorized || init.body instanceof ReadableStream) return first.response;\n const provider = this.manager.provider(this.provider);\n if (!(await provider.isTokenRejected(first.response))) return first.response;\n\n await first.response.body?.cancel().catch(() => {});\n const refreshed = await this.refreshFrom(record, \"rejected\");\n return (await this.send(url, init, refreshed.accessToken)).response;\n }\n\n /**\n * A valid access token, refreshed first if it is about to expire — for an\n * SDK that wants the token itself. Prefer `fetch`, which also retries a 401.\n */\n async accessToken(): Promise<string> {\n return (await this.current()).accessToken;\n }\n\n /** Refreshes now, whatever the expiry says. */\n async refresh(): Promise<void> {\n await this.refreshFrom(this.record);\n }\n\n /**\n * Revokes the grant at the provider (the refresh token when there is one,\n * which ends the whole grant, else the access token) and deletes the\n * connection. If the provider refuses, nothing is deleted and\n * `OAuthConnectionError` (`revoke_failed`) is thrown — call `disconnect()`\n * to forget the tokens anyway. A provider without a `revokeUrl` throws\n * `revoke_unsupported`; use `disconnect()`.\n */\n async revoke(): Promise<void> {\n if (!this.manager.faked) {\n const provider = this.manager.provider(this.provider);\n if (this.record.refreshToken !== null) {\n await provider.revoke(this.record.refreshToken, \"refresh_token\");\n } else {\n await provider.revoke(this.record.accessToken, \"access_token\");\n }\n }\n await this.manager.store.delete(this.record.id);\n }\n\n /** Forgets the tokens locally without telling the provider. */\n async disconnect(): Promise<void> {\n await this.manager.store.delete(this.record.id);\n }\n\n toJSON() {\n return {\n provider: this.provider,\n providerAccountId: this.providerAccountId,\n scopes: [...this.scopes],\n expiresAt: this.expiresAt,\n needsReconnect: this.needsReconnect,\n status: this.status,\n connectedAt: this.connectedAt,\n };\n }\n\n [Symbol.for(\"nodejs.util.inspect.custom\")]() {\n return { ProviderConnection: this.toJSON() };\n }\n\n private async current(): Promise<ConnectionRecord> {\n if (this.record.needsReconnect) throw new OAuthReconnectRequiredError(this.provider);\n const leeway = this.manager.provider(this.provider).config.refreshLeewaySeconds * 1000;\n const expiresAt = this.record.expiresAt?.getTime();\n if (expiresAt !== undefined && expiresAt - Date.now() <= leeway) {\n return this.refreshFrom(this.record, \"expiring\");\n }\n return this.record;\n }\n\n private async refreshFrom(\n record: ConnectionRecord,\n reason: ConnectionRefreshReason = \"requested\",\n ): Promise<ConnectionRecord> {\n try {\n this.record = await this.manager.refresh(record, reason);\n } catch (error) {\n if (error instanceof OAuthReconnectRequiredError) {\n this.record = { ...this.record, needsReconnect: true };\n }\n throw error;\n }\n return this.record;\n }\n\n private resolveUrl(input: string | URL): URL {\n const base = this.manager.provider(this.provider).config.apiBaseUrl;\n let url: URL;\n try {\n url = new URL(String(input), base);\n } catch {\n throw new OAuthConnectionError(\n \"forbidden_url\",\n `connection.fetch was given ${JSON.stringify(String(input))}, which is not a URL.`,\n );\n }\n if (url.origin !== new URL(base).origin) {\n throw new OAuthConnectionError(\n \"forbidden_url\",\n `connection.fetch only sends the ${this.provider} token to ${new URL(base).origin} ` +\n `(apiBaseUrl), not to ${url.origin}.`,\n );\n }\n if (url.protocol !== \"https:\" && !(url.protocol === \"http:\" && isLoopback(url.hostname))) {\n throw new OAuthConnectionError(\n \"forbidden_url\",\n `connection.fetch only sends a token over https, not to ${url.origin}.`,\n );\n }\n return url;\n }\n\n private async send(url: URL, init: RequestInit, token: string): Promise<{ response: Response; authorized: boolean }> {\n let target = url;\n let method = (init.method ?? \"GET\").toUpperCase();\n let body = init.body;\n let authorized = true;\n\n // Followed by hand (unless the caller asked for \"manual\" or \"error\"), so\n // the token never follows a redirect to another origin.\n if (init.redirect === \"manual\" || init.redirect === \"error\") {\n const response = await this.manager.send(this.provider, this.request(target, init, method, body, token));\n return { response, authorized };\n }\n\n for (let hop = 0; ; hop++) {\n const request = this.request(target, { ...init, redirect: \"manual\" }, method, body, authorized ? token : null);\n const response = await this.manager.send(this.provider, request);\n const location = response.headers.get(\"location\");\n if (!REDIRECTS.has(response.status) || location === null || hop >= 5) return { response, authorized };\n\n await response.body?.cancel().catch(() => {});\n const next = new URL(location, target);\n if (next.origin !== target.origin) authorized = false;\n if (response.status === 303 || ((response.status === 301 || response.status === 302) && method === \"POST\")) {\n method = \"GET\";\n body = undefined;\n }\n target = next;\n }\n }\n\n private request(url: URL, init: RequestInit, method: string, body: RequestInit[\"body\"], token: string | null): Request {\n const headers = new Headers(init.headers);\n const target = new URL(url);\n const placement = this.manager.provider(this.provider).config.tokenPlacement;\n if (token === null) {\n headers.delete(\"authorization\");\n } else if (placement === \"query\") {\n // Where the provider documents it (Instagram's Graph API). Only ever on\n // `apiBaseUrl`'s origin: a redirect elsewhere is sent with `token` null.\n target.searchParams.set(\"access_token\", token);\n } else {\n headers.set(\"Authorization\", `Bearer ${token}`);\n }\n return new Request(target, { ...init, method, body, headers });\n }\n}\n\nconst REDIRECTS = new Set([301, 302, 303, 307, 308]);\n\n/** Between a multiple-account provider's name and the account id, in the store's `provider` column. */\nconst ACCOUNT_SEPARATOR = \":\";\n\nfunction storeKey(provider: string, accountId: string): string {\n return `${provider}${ACCOUNT_SEPARATOR}${accountId}`;\n}\n\nfunction ownerId(user: ConnectionOwner): string {\n const id = typeof user === \"object\" && user !== null ? user.id : user;\n if (id === undefined || id === null || id === \"\") {\n throw new TypeError(\"An OAuth connection belongs to a user: pass the user (or its id).\");\n }\n return String(id);\n}\n"
|
|
9
9
|
],
|
|
10
10
|
"mappings": "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",
|
|
11
|
-
"debugId": "
|
|
11
|
+
"debugId": "C8DA74E1523ACB8D64756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{Q as ye}from"./chunk-
|
|
2
|
+
import{Q as ye}from"./chunk-a4s0kf20.js";import{R as en}from"./chunk-hthdwnfr.js";import{T as At}from"./chunk-j6sbfa2q.js";import{aa as Ze,ba as Te}from"./chunk-yhdwr77h.js";import{ma as Hi}from"./chunk-zn6j65pg.js";import{El as _,Hl as D}from"./chunk-0mye000w.js";var Rt=_((Gs)=>{var Pt=At(),Xs=(e)=>e[Pt.SMITHY_CONTEXT_KEY]||(e[Pt.SMITHY_CONTEXT_KEY]={}),Zs=(e)=>{if(typeof e==="function")return e;let t=Promise.resolve(e);return()=>t};Gs.getSmithyContext=Xs;Gs.normalizeProvider=Zs});var It=_((rn)=>{var Ut=en(),tn=(e)=>{if(typeof e==="object"){if("url"in e){let t=Ut.parseUrl(e.url);if(e.headers){t.headers={};for(let[r,s]of Object.entries(e.headers))t.headers[r.toLowerCase()]=s.join(", ")}return t}return e}return Ut.parseUrl(e)};rn.toEndpointV1=tn});var Qe=_((wn)=>{var nn=ye(),Dt=Rt(),on=It(),de=(e)=>{if(typeof e==="function")return e();return e},Ye=(e,t,r,s,n)=>({name:t,namespace:e,traits:r,input:s,output:n}),cn=(e)=>(t,r)=>async(s)=>{let{response:n}=await t(s),{operationSchema:o}=Dt.getSmithyContext(r),[,i,c,a,l,d]=o??[];try{let f=await e.protocol.deserializeResponse(Ye(i,c,a,l,d),{...e,...r},n);return{response:n,output:f}}catch(f){if(Object.defineProperty(f,"$response",{value:n,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in f)){try{f.message+=`
|
|
3
3
|
Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`}catch(h){if(!r.logger||r.logger?.constructor?.name==="NoOpLogger")console.warn("Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.");else r.logger?.warn?.("Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.")}if(typeof f.$responseBodyText<"u"){if(f.$response)f.$response.body=f.$responseBodyText}try{if(nn.HttpResponse.isInstance(n)){let{headers:h={}}=n,p=Object.entries(h);f.$metadata={httpStatusCode:n.statusCode,requestId:Je(/^x-[\w-]+-request-?id$/,p),extendedRequestId:Je(/^x-[\w-]+-id-2$/,p),cfId:Je(/^x-[\w-]+-cf-id$/,p)}}}catch(h){}}throw f}},Je=(e,t)=>{return(t.find(([r])=>{return r.match(e)})||[void 0,void 0])[1]},an=(e)=>(t,r)=>async(s)=>{let{operationSchema:n}=Dt.getSmithyContext(r),[,o,i,c,a,l]=n??[],d=r.endpointV2?async()=>on.toEndpointV1(r.endpointV2):e.endpoint,f=await e.protocol.serializeRequest(Ye(o,i,c,a,l),s.input,{...e,...r,endpoint:d});return t({...s,request:f})},Bt={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},Lt={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};function fn(e){return{applyToStack:(t)=>{t.add(an(e),Lt),t.add(cn(e),Bt),e.protocol.setSerdeContext(e)}}}class A{name;namespace;traits;static assign(e,t){return Object.assign(e,t)}static[Symbol.hasInstance](e){let t=this.prototype.isPrototypeOf(e);if(!t&&typeof e==="object"&&e!==null)return e.symbol===this.symbol;return t}getName(){return this.namespace+"#"+this.name}}class be extends A{static symbol=Symbol.for("@smithy/lis");name;traits;valueSchema;symbol=be.symbol}var un=(e,t,r,s)=>A.assign(new be,{name:t,namespace:e,traits:r,valueSchema:s});class we extends A{static symbol=Symbol.for("@smithy/map");name;traits;keySchema;valueSchema;symbol=we.symbol}var hn=(e,t,r,s,n)=>A.assign(new we,{name:t,namespace:e,traits:r,keySchema:s,valueSchema:n});class ge extends A{static symbol=Symbol.for("@smithy/ope");name;traits;input;output;symbol=ge.symbol}var dn=(e,t,r,s,n)=>A.assign(new ge,{name:t,namespace:e,traits:r,input:s,output:n});class re extends A{static symbol=Symbol.for("@smithy/str");name;traits;memberNames;memberList;symbol=re.symbol}var ln=(e,t,r,s,n)=>A.assign(new re,{name:t,namespace:e,traits:r,memberNames:s,memberList:n});class _e extends re{static symbol=Symbol.for("@smithy/err");ctor;symbol=_e.symbol}var pn=(e,t,r,s,n,o)=>A.assign(new _e,{name:t,namespace:e,traits:r,memberNames:s,memberList:n,ctor:null}),le=[];function te(e){if(typeof e==="object")return e;if(e=e|0,le[e])return le[e];let t={},r=0;for(let s of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])if((e>>r++&1)===1)t[s]=1;return le[e]=t}var K={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},pe=[],me={};class q{ref;memberName;static symbol=Symbol.for("@smithy/nor");symbol=q.symbol;name;schema;_isMemberSchema;traits;memberTraits;normalizedTraits;constructor(e,t){this.ref=e,this.memberName=t;let r=[],s=e,n=e;this._isMemberSchema=!1;while(ve(s))r.push(s[1]),s=s[0],n=de(s),this._isMemberSchema=!0;if(r.length>0){this.memberTraits={};for(let o=r.length-1;o>=0;--o){let i=r[o];Object.assign(this.memberTraits,te(i))}}else this.memberTraits=0;if(n instanceof q){let o=this.memberTraits;Object.assign(this,n),this.memberTraits=Object.assign({},o,n.getMemberTraits(),this.getMemberTraits()),this.normalizedTraits=void 0,this.memberName=t??n.memberName;return}if(this.schema=de(n),Nt(this.schema))this.name=`${this.schema[1]}#${this.schema[2]}`,this.traits=this.schema[3];else this.name=this.memberName??String(n),this.traits=0;if(this._isMemberSchema&&!t)throw Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(!0)} missing member name.`)}static[Symbol.hasInstance](e){let t=this.prototype.isPrototypeOf(e);if(!t&&typeof e==="object"&&e!==null)return e.symbol===this.symbol;return t}static of(e){let t=typeof e==="function"||typeof e==="object"&&e!==null;if(typeof e==="number"){if(pe[e])return pe[e]}else if(typeof e==="string"){if(me[e])return me[e]}else if(t){if(e[K.ns])return e[K.ns]}let r=de(e);if(r instanceof q)return r;if(ve(r)){let[n,o]=r;if(n instanceof q)return Object.assign(n.getMergedTraits(),te(o)),n;throw Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(e,null,2)}.`)}let s=new q(r);if(t)return e[K.ns]=s;if(typeof r==="string")return me[r]=s;if(typeof r==="number")return pe[r]=s;return s}getSchema(){let e=this.schema;if(Array.isArray(e)&&e[0]===0)return e[4];return e}getName(e=!1){let{name:t}=this;return!e&&t&&t.includes("#")?t.split("#")[1]:t||void 0}getMemberName(){return this.memberName}isMemberSchema(){return this._isMemberSchema}isListSchema(){let e=this.getSchema();return typeof e==="number"?e>=64&&e<128:e[0]===1}isMapSchema(){let e=this.getSchema();return typeof e==="number"?e>=128&&e<=255:e[0]===2}isStructSchema(){let e=this.getSchema();if(typeof e!=="object")return!1;let t=e[0];return t===3||t===-3||t===4}isUnionSchema(){let e=this.getSchema();if(typeof e!=="object")return!1;return e[0]===4}isBlobSchema(){let e=this.getSchema();return e===21||e===42}isTimestampSchema(){let e=this.getSchema();return typeof e==="number"&&e>=4&&e<=7}isUnitSchema(){return this.getSchema()==="unit"}isDocumentSchema(){return this.getSchema()===15}isStringSchema(){return this.getSchema()===0}isBooleanSchema(){return this.getSchema()===2}isNumericSchema(){return this.getSchema()===1}isBigIntegerSchema(){return this.getSchema()===17}isBigDecimalSchema(){return this.getSchema()===19}isStreaming(){let{streaming:e}=this.getMergedTraits();return!!e||this.getSchema()===42}isIdempotencyToken(){return!!this.getMergedTraits().idempotencyToken}getMergedTraits(){return this.normalizedTraits??(this.normalizedTraits={...this.getOwnTraits(),...this.getMemberTraits()})}getMemberTraits(){return te(this.memberTraits)}getOwnTraits(){return te(this.traits)}getKeySchema(){let[e,t]=[this.isDocumentSchema(),this.isMapSchema()];if(!e&&!t)throw Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(!0)}`);let r=this.getSchema(),s=e?15:r[4]??0;return ee([s,0],"key")}getValueSchema(){let e=this.getSchema(),[t,r,s]=[this.isDocumentSchema(),this.isMapSchema(),this.isListSchema()],n=typeof e==="number"?63&e:e&&typeof e==="object"&&(r||s)?e[3+e[0]]:t?15:void 0;if(n!=null)return ee([n,0],r?"value":"member");throw Error(`@smithy/core/schema - ${this.getName(!0)} has no value member.`)}getMemberSchema(e){let t=this.getSchema();if(this.isStructSchema()&&t[4].includes(e)){let r=t[4].indexOf(e),s=t[5][r];return ee(ve(s)?s:[s,0],e)}if(this.isDocumentSchema())return ee([15,0],e);throw Error(`@smithy/core/schema - ${this.getName(!0)} has no member=${e}.`)}getMemberSchemas(){let e={};try{for(let[t,r]of this.structIterator())e[t]=r}catch(t){}return e}getEventStreamMember(){if(this.isStructSchema()){for(let[e,t]of this.structIterator())if(t.isStreaming()&&t.isStructSchema())return e}return""}*structIterator(){if(this.isUnitSchema())return;if(!this.isStructSchema())throw Error("@smithy/core/schema - cannot iterate non-struct schema.");let e=this.getSchema(),t=e[4].length,r=e[K.it];if(r&&t===r.length){yield*r;return}r=Array(t);for(let s=0;s<t;++s){let n=e[4][s],o=ee([e[5][s],0],n);yield r[s]=[n,o]}e[K.it]=r}}function ee(e,t){if(e instanceof q)return Object.assign(e,{memberName:t,_isMemberSchema:!0});return new q(e,t)}var ve=(e)=>Array.isArray(e)&&e.length===2,Nt=(e)=>Array.isArray(e)&&e.length>=5;class se extends A{static symbol=Symbol.for("@smithy/sim");name;schemaRef;traits;symbol=se.symbol}var mn=(e,t,r,s)=>A.assign(new se,{name:t,namespace:e,traits:s,schemaRef:r}),yn=(e,t,r,s)=>A.assign(new se,{name:t,namespace:e,traits:r,schemaRef:s}),bn={BLOB:21,STREAMING_BLOB:42,BOOLEAN:2,STRING:0,NUMERIC:1,BIG_INTEGER:17,BIG_DECIMAL:19,DOCUMENT:15,TIMESTAMP_DEFAULT:4,TIMESTAMP_DATE_TIME:5,TIMESTAMP_HTTP_DATE:6,TIMESTAMP_EPOCH_SECONDS:7,LIST_MODIFIER:64,MAP_MODIFIER:128};class N{namespace;schemas;exceptions;static registries=new Map;constructor(e,t=new Map,r=new Map){this.namespace=e,this.schemas=t,this.exceptions=r}static for(e){if(!N.registries.has(e))N.registries.set(e,new N(e));return N.registries.get(e)}copyFrom(e){let{schemas:t,exceptions:r}=this;for(let[s,n]of e.schemas)if(!t.has(s))t.set(s,n);for(let[s,n]of e.exceptions)if(!r.has(s))r.set(s,n)}register(e,t){let r=this.normalizeShapeId(e);for(let s of[this,N.for(r.split("#")[0])])s.schemas.set(r,t)}getSchema(e){let t=this.normalizeShapeId(e);if(!this.schemas.has(t))throw Error(`@smithy/core/schema - schema not found for ${t}`);return this.schemas.get(t)}registerError(e,t){let r=e,s=r[1];for(let n of[this,N.for(s)])n.schemas.set(s+"#"+r[2],r),n.exceptions.set(r,t)}getErrorCtor(e){let t=e;if(this.exceptions.has(t))return this.exceptions.get(t);return N.for(t[1]).exceptions.get(t)}getBaseException(){for(let e of this.exceptions.keys())if(Array.isArray(e)){let[,t,r]=e,s=t+"#"+r;if(s.startsWith("smithy.ts.sdk.synthetic.")&&s.endsWith("ServiceException"))return e}return}find(e){return[...this.schemas.values()].find(e)}clear(){this.schemas.clear(),this.exceptions.clear()}normalizeShapeId(e){if(e.includes("#"))return e;return this.namespace+"#"+e}}wn.ErrorSchema=_e;wn.ListSchema=be;wn.MapSchema=we;wn.NormalizedSchema=q;wn.OperationSchema=ge;wn.SCHEMA=bn;wn.Schema=A;wn.SimpleSchema=se;wn.StructureSchema=re;wn.TypeRegistry=N;wn.deref=de;wn.deserializerMiddlewareOption=Bt;wn.error=pn;wn.getSchemaSerdePlugin=fn;wn.isStaticSchema=Nt;wn.list=un;wn.map=hn;wn.op=dn;wn.operation=Ye;wn.serializerMiddlewareOption=Lt;wn.sim=mn;wn.simAdapter=yn;wn.simpleSchemaCacheN=pe;wn.simpleSchemaCacheS=me;wn.struct=ln;wn.traitsCache=le;wn.translateTraits=te});var Ct=_((vn)=>{var W=(e,t)=>{let r=[];if(e)r.push(e);if(t)for(let s of t)r.push(s);return r},z=(e,t)=>{return`${e||"anonymous"}${t&&t.length>0?` (a.k.a. ${t.join(",")})`:""}`},Xe=()=>{let e=[],t=[],r=!1,s=new Set,n=(f)=>f.sort((u,h)=>qt[h.step]-qt[u.step]||jt[h.priority||"normal"]-jt[u.priority||"normal"]),o=(f)=>{let u=!1,h=(p)=>{let b=W(p.name,p.aliases);if(b.includes(f)){u=!0;for(let y of b)s.delete(y);return!1}return!0};return e=e.filter(h),t=t.filter(h),u},i=(f)=>{let u=!1,h=(p)=>{if(p.middleware===f){u=!0;for(let b of W(p.name,p.aliases))s.delete(b);return!1}return!0};return e=e.filter(h),t=t.filter(h),u},c=(f)=>{return e.forEach((u)=>{f.add(u.middleware,{...u})}),t.forEach((u)=>{f.addRelativeTo(u.middleware,{...u})}),f.identifyOnResolve?.(d.identifyOnResolve()),f},a=(f)=>{let u=[];return f.before.forEach((h)=>{if(h.before.length===0&&h.after.length===0)u.push(h);else u.push(...a(h))}),u.push(f),f.after.reverse().forEach((h)=>{if(h.before.length===0&&h.after.length===0)u.push(h);else u.push(...a(h))}),u},l=(f=!1)=>{let u=[],h=[],p={};return e.forEach((y)=>{let m={...y,before:[],after:[]};for(let w of W(m.name,m.aliases))p[w]=m;u.push(m)}),t.forEach((y)=>{let m={...y,before:[],after:[]};for(let w of W(m.name,m.aliases))p[w]=m;h.push(m)}),h.forEach((y)=>{if(y.toMiddleware){let m=p[y.toMiddleware];if(m===void 0){if(f)return;throw Error(`${y.toMiddleware} is not found when adding ${z(y.name,y.aliases)} middleware ${y.relation} ${y.toMiddleware}`)}if(y.relation==="after")m.after.push(y);if(y.relation==="before")m.before.push(y)}}),n(u).map(a).reduce((y,m)=>{return y.push(...m),y},[])},d={add:(f,u={})=>{let{name:h,override:p,aliases:b}=u,y={step:"initialize",priority:"normal",middleware:f,...u},m=W(h,b);if(m.length>0){if(m.some((w)=>s.has(w))){if(!p)throw Error(`Duplicate middleware name '${z(h,b)}'`);for(let w of m){let S=e.findIndex((O)=>O.name===w||O.aliases?.some((I)=>I===w));if(S===-1)continue;let g=e[S];if(g.step!==y.step||y.priority!==g.priority)throw Error(`"${z(g.name,g.aliases)}" middleware with ${g.priority} priority in ${g.step} step cannot be overridden by "${z(h,b)}" middleware with ${y.priority} priority in ${y.step} step.`);e.splice(S,1)}}for(let w of m)s.add(w)}e.push(y)},addRelativeTo:(f,u)=>{let{name:h,override:p,aliases:b}=u,y={middleware:f,...u},m=W(h,b);if(m.length>0){if(m.some((w)=>s.has(w))){if(!p)throw Error(`Duplicate middleware name '${z(h,b)}'`);for(let w of m){let S=t.findIndex((O)=>O.name===w||O.aliases?.some((I)=>I===w));if(S===-1)continue;let g=t[S];if(g.toMiddleware!==y.toMiddleware||g.relation!==y.relation)throw Error(`"${z(g.name,g.aliases)}" middleware ${g.relation} "${g.toMiddleware}" middleware cannot be overridden by "${z(h,b)}" middleware ${y.relation} "${y.toMiddleware}" middleware.`);t.splice(S,1)}}for(let w of m)s.add(w)}t.push(y)},clone:()=>c(Xe()),use:(f)=>{f.applyToStack(d)},remove:(f)=>{if(typeof f==="string")return o(f);else return i(f)},removeByTag:(f)=>{let u=!1,h=(p)=>{let{tags:b,name:y,aliases:m}=p;if(b&&b.includes(f)){let w=W(y,m);for(let S of w)s.delete(S);return u=!0,!1}return!0};return e=e.filter(h),t=t.filter(h),u},concat:(f)=>{let u=c(Xe());return u.use(f),u.identifyOnResolve(r||u.identifyOnResolve()||(f.identifyOnResolve?.()??!1)),u},applyToStack:c,identify:()=>{return l(!0).map((f)=>{let u=f.step??f.relation+" "+f.toMiddleware;return z(f.name,f.aliases)+" - "+u})},identifyOnResolve(f){if(typeof f==="boolean")r=f;return r},resolve:(f,u)=>{for(let h of l().map((p)=>p.middleware).reverse())f=h(f,u);if(r)console.log(d.identify());return f}};return d},qt={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},jt={high:3,normal:2,low:1};vn.constructStack=Xe});var zt=_((Ft)=>{Object.defineProperty(Ft,"__esModule",{value:!0});Ft.fromBase64=void 0;var Qn=Ze(),Xn=/^[A-Za-z0-9+/]*={0,2}$/,Zn=(e)=>{if(e.length*3%4!==0)throw TypeError("Incorrect padding on base64 string.");if(!Xn.exec(e))throw TypeError("Invalid base64 string.");let t=(0,Qn.fromString)(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)};Ft.fromBase64=Zn});var Jt=_((Wt)=>{Object.defineProperty(Wt,"__esModule",{value:!0});Wt.toBase64=void 0;var Gn=Ze(),Vn=Te(),Kn=(e)=>{let t;if(typeof e==="string")t=(0,Vn.fromUtf8)(e);else t=e;if(typeof t!=="object"||typeof t.byteOffset!=="number"||typeof t.byteLength!=="number")throw Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");return(0,Gn.fromArrayBuffer)(t.buffer,t.byteOffset,t.byteLength).toString("base64")};Wt.toBase64=Kn});var k=_((j)=>{var Ee=zt(),Se=Jt();Object.prototype.hasOwnProperty.call(Ee,"__proto__")&&!Object.prototype.hasOwnProperty.call(j,"__proto__")&&Object.defineProperty(j,"__proto__",{enumerable:!0,value:Ee.__proto__});Object.keys(Ee).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(j,e))j[e]=Ee[e]});Object.prototype.hasOwnProperty.call(Se,"__proto__")&&!Object.prototype.hasOwnProperty.call(j,"__proto__")&&Object.defineProperty(j,"__proto__",{enumerable:!0,value:Se.__proto__});Object.keys(Se).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(j,e))j[e]=Se[e]})});var Ge=_((Yt)=>{Object.defineProperty(Yt,"__esModule",{value:!0});Yt.ChecksumStream=void 0;var eo=k(),to=D("stream");class vt extends to.Duplex{expectedChecksum;checksumSourceLocation;checksum;source;base64Encoder;pendingCallback=null;constructor({expectedChecksum:e,checksum:t,source:r,checksumSourceLocation:s,base64Encoder:n}){super();if(typeof r.pipe==="function")this.source=r;else throw Error(`@smithy/util-stream: unsupported source type ${r?.constructor?.name??r} in ChecksumStream.`);this.base64Encoder=n??eo.toBase64,this.expectedChecksum=e,this.checksum=t,this.checksumSourceLocation=s,this.source.pipe(this)}_read(e){if(this.pendingCallback){let t=this.pendingCallback;this.pendingCallback=null,t()}}_write(e,t,r){try{if(this.checksum.update(e),!this.push(e)){this.pendingCallback=r;return}}catch(s){return r(s)}return r()}async _final(e){try{let t=await this.checksum.digest(),r=this.base64Encoder(t);if(this.expectedChecksum!==r)return e(Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${r}" in response header "${this.checksumSourceLocation}".`))}catch(t){return e(t)}return this.push(null),e()}}Yt.ChecksumStream=vt});var C=_((Xt)=>{Object.defineProperty(Xt,"__esModule",{value:!0});Xt.isBlob=Xt.isReadableStream=void 0;var ro=(e)=>typeof ReadableStream==="function"&&(e?.constructor?.name===ReadableStream.name||e instanceof ReadableStream);Xt.isReadableStream=ro;var so=(e)=>{return typeof Blob==="function"&&(e?.constructor?.name===Blob.name||e instanceof Blob)};Xt.isBlob=so});var er=_((Vt)=>{Object.defineProperty(Vt,"__esModule",{value:!0});Vt.ChecksumStream=void 0;var oo=typeof ReadableStream==="function"?ReadableStream:function(){};class Gt extends oo{}Vt.ChecksumStream=Gt});var sr=_((tr)=>{Object.defineProperty(tr,"__esModule",{value:!0});tr.createChecksumStream=void 0;var io=k(),co=C(),ao=er(),fo=({expectedChecksum:e,checksum:t,source:r,checksumSourceLocation:s,base64Encoder:n})=>{if(!(0,co.isReadableStream)(r))throw Error(`@smithy/util-stream: unsupported source type ${r?.constructor?.name??r} in ChecksumStream.`);let o=n??io.toBase64;if(typeof TransformStream!=="function")throw Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");let i=new TransformStream({start(){},async transform(a,l){t.update(a),l.enqueue(a)},async flush(a){let l=await t.digest(),d=o(l);if(e!==d){let f=Error(`Checksum mismatch: expected "${e}" but received "${d}" in response header "${s}".`);a.error(f)}else a.terminate()}});r.pipeThrough(i);let c=i.readable;return Object.setPrototypeOf(c,ao.ChecksumStream.prototype),c};tr.createChecksumStream=fo});var or=_((nr)=>{Object.defineProperty(nr,"__esModule",{value:!0});nr.createChecksumStream=po;var uo=C(),ho=Ge(),lo=sr();function po(e){if(typeof ReadableStream==="function"&&(0,uo.isReadableStream)(e.source))return(0,lo.createChecksumStream)(e);return new ho.ChecksumStream(e)}});var Ve=_((cr)=>{Object.defineProperty(cr,"__esModule",{value:!0});cr.ByteArrayCollector=void 0;class ir{allocByteArray;byteLength=0;byteArrays=[];constructor(e){this.allocByteArray=e}push(e){this.byteArrays.push(e),this.byteLength+=e.byteLength}flush(){if(this.byteArrays.length===1){let r=this.byteArrays[0];return this.reset(),r}let e=this.allocByteArray(this.byteLength),t=0;for(let r=0;r<this.byteArrays.length;++r){let s=this.byteArrays[r];e.set(s,t),t+=s.byteLength}return this.reset(),e}reset(){this.byteArrays=[],this.byteLength=0}}cr.ByteArrayCollector=ir});var pr=_((dr)=>{Object.defineProperty(dr,"__esModule",{value:!0});dr.createBufferedReadable=void 0;dr.createBufferedReadableStream=fr;dr.merge=ur;dr.flush=xe;dr.sizeOf=Y;dr.modeOf=hr;var yo=Ve();function fr(e,t,r){let s=e.getReader(),n=!1,o=0,i=["",new yo.ByteArrayCollector((l)=>new Uint8Array(l))],c=-1,a=async(l)=>{let{value:d,done:f}=await s.read(),u=d;if(f){if(c!==-1){let h=xe(i,c);if(Y(h)>0)l.enqueue(h)}l.close()}else{let h=hr(u,!1);if(c!==h){if(c>=0)l.enqueue(xe(i,c));c=h}if(c===-1){l.enqueue(u);return}let p=Y(u);o+=p;let b=Y(i[c]);if(p>=t&&b===0)l.enqueue(u);else{let y=ur(i,c,u);if(!n&&o>t*2)n=!0,r?.warn(`@smithy/util-stream - stream chunk size ${p} is below threshold of ${t}, automatically buffering.`);if(y>=t)l.enqueue(xe(i,c));else await a(l)}}};return new ReadableStream({pull:a})}dr.createBufferedReadable=fr;function ur(e,t,r){switch(t){case 0:return e[0]+=r,Y(e[0]);case 1:case 2:return e[t].push(r),Y(e[t])}}function xe(e,t){switch(t){case 0:let r=e[0];return e[0]="",r;case 1:case 2:return e[t].flush()}throw Error(`@smithy/util-stream - invalid index ${t} given to flush()`)}function Y(e){return e?.byteLength??e?.length??0}function hr(e,t=!0){if(t&&typeof Buffer<"u"&&e instanceof Buffer)return 2;if(e instanceof Uint8Array)return 1;if(typeof e==="string")return 0;return-1}});var br=_((yr)=>{Object.defineProperty(yr,"__esModule",{value:!0});yr.createBufferedReadable=xo;var Eo=D("stream"),mr=Ve(),F=pr(),So=C();function xo(e,t,r){if((0,So.isReadableStream)(e))return(0,F.createBufferedReadableStream)(e,t,r);let s=new Eo.Readable({read(){}}),n=!1,o=0,i=["",new mr.ByteArrayCollector((a)=>new Uint8Array(a)),new mr.ByteArrayCollector((a)=>Buffer.from(new Uint8Array(a)))],c=-1;return e.on("data",(a)=>{let l=(0,F.modeOf)(a,!0);if(c!==l){if(c>=0)s.push((0,F.flush)(i,c));c=l}if(c===-1){s.push(a);return}let d=(0,F.sizeOf)(a);o+=d;let f=(0,F.sizeOf)(i[c]);if(d>=t&&f===0)s.push(a);else{let u=(0,F.merge)(i,c,a);if(!n&&o>t*2)n=!0,r?.warn(`@smithy/util-stream - stream chunk size ${d} is below threshold of ${t}, automatically buffering.`);if(u>=t)s.push((0,F.flush)(i,c))}}),e.on("end",()=>{if(c!==-1){let a=(0,F.flush)(i,c);if((0,F.sizeOf)(a)>0)s.push(a)}s.push(null)}),s}});var _r=_((wr)=>{Object.defineProperty(wr,"__esModule",{value:!0});wr.getAwsChunkedEncodingStream=void 0;var Oo=(e,t)=>{let{base64Encoder:r,bodyLengthChecker:s,checksumAlgorithmFn:n,checksumLocationName:o,streamHasher:i}=t,c=r!==void 0&&s!==void 0&&n!==void 0&&o!==void 0&&i!==void 0,a=c?i(n,e):void 0,l=e.getReader();return new ReadableStream({async pull(d){let{value:f,done:u}=await l.read();if(u){if(d.enqueue(`0\r
|
|
4
4
|
`),c){let h=r(await a);d.enqueue(`${o}:${h}\r
|
|
5
5
|
`),d.enqueue(`\r
|
|
@@ -15,7 +15,7 @@ See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-confi
|
|
|
15
15
|
or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`),Date.now()}return t}constructor(e){this.configProvider=new Promise((t,r)=>{if(typeof e==="function")e().then((s)=>{t(this.resolveDefaultConfig(s))}).catch(r);else t(this.resolveDefaultConfig(e))})}destroy(){this.config?.httpAgent?.destroy(),this.config?.httpsAgent?.destroy()}async handle(e,{abortSignal:t,requestTimeout:r}={}){if(!this.config)this.config=await this.configProvider;let s=this.config,n=e.protocol==="https:";if(!n&&!this.config.httpAgent)this.config.httpAgent=await this.config.httpAgentProvider();return new Promise((o,i)=>{let c=void 0,a=[],l=async(E)=>{await c,a.forEach(P.clearTimeout),o(E)},d=async(E)=>{await c,a.forEach(P.clearTimeout),i(E)};if(t?.aborted){let E=Me(t);d(E);return}let f=e.headers??{},u=(f.Expect??f.expect)==="100-continue",h=n?s.httpsAgent:s.httpAgent;if(u&&!this.externalAgent)h=new(n?$e.Agent:Oe)({keepAlive:!1,maxSockets:1/0});a.push(P.setTimeout(()=>{this.socketWarningTimestamp=Pe.checkSocketUsage(h,this.socketWarningTimestamp,s.logger)},s.socketAcquisitionWarningTimeout??(s.requestTimeout??2000)+(s.connectionTimeout??1000)));let p=Nr.buildQueryString(e.query||{}),b=void 0;if(e.username!=null||e.password!=null){let E=e.username??"",x=e.password??"";b=`${E}:${x}`}let y=e.path;if(p)y+=`?${p}`;if(e.fragment)y+=`#${e.fragment}`;let m=e.hostname??"";if(m[0]==="["&&m.endsWith("]"))m=e.hostname.slice(1,-1);else m=e.hostname;let w={headers:e.headers,host:m,method:e.method,path:y,port:e.port,agent:h,auth:b},g=(n?$e.request:Br)(w,(E)=>{let x=new Lr.HttpResponse({statusCode:E.statusCode||-1,reason:E.statusMessage,headers:jr(E.headers),body:E});l({response:x})});if(g.on("error",(E)=>{if(vo.includes(E.code))d(Object.assign(E,{name:"TimeoutError"}));else d(E)}),t){let E=()=>{g.destroy();let x=Me(t);d(x)};if(typeof t.addEventListener==="function"){let x=t;x.addEventListener("abort",E,{once:!0}),g.once("close",()=>x.removeEventListener("abort",E))}else t.onabort=E}let O=r??s.requestTimeout;a.push(Yo(g,d,s.connectionTimeout)),a.push(Qo(g,d,O,s.throwOnRequestTimeout,s.logger??console)),a.push(Go(g,d,s.socketTimeout));let I=w.agent;if(typeof I==="object"&&"keepAlive"in I)a.push(Zo(g,{keepAlive:I.keepAlive,keepAliveMsecs:I.keepAliveMsecs}));c=Cr(g,e,O,this.externalAgent).catch((E)=>{return a.forEach(P.clearTimeout),i(E)})})}updateHttpClientConfig(e,t){this.config=void 0,this.configProvider=this.configProvider.then((r)=>{return{...r,[e]:t}})}httpHandlerConfigs(){return this.config??{}}resolveDefaultConfig(e){let{requestTimeout:t,connectionTimeout:r,socketTimeout:s,socketAcquisitionWarningTimeout:n,httpAgent:o,httpsAgent:i,throwOnRequestTimeout:c,logger:a}=e||{},l=!0,d=50;return{connectionTimeout:r,requestTimeout:t,socketTimeout:s,socketAcquisitionWarningTimeout:n,throwOnRequestTimeout:c,httpAgentProvider:async()=>{let{Agent:f,request:u}=await import("http");if(Br=u,Oe=f,o instanceof Oe||typeof o?.destroy==="function")return this.externalAgent=!0,o;return new Oe({keepAlive:!0,maxSockets:50,...o})},httpsAgent:(()=>{if(i instanceof $e.Agent||typeof i?.destroy==="function")return this.externalAgent=!0,i;return new $e.Agent({keepAlive:!0,maxSockets:50,...i})})(),logger:a}}}class Fr{sessions=[];constructor(e){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((t)=>t!==e)}[Symbol.iterator](){return this.sessions[Symbol.iterator]()}destroy(e){for(let t of this.sessions)if(t===e){if(!t.destroyed)t.destroy()}}}class Hr{constructor(e){if(this.config=e,this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw RangeError("maxConcurrency must be greater than zero.")}config;sessionCache=new Map;lease(e,t){let r=this.getUrlString(e),s=this.sessionCache.get(r);if(s){let c=s.poll();if(c&&!this.config.disableConcurrency)return c}let n=tt.connect(r);if(this.config.maxConcurrency)n.settings({maxConcurrentStreams:this.config.maxConcurrency},(c)=>{if(c)throw Error("Fail to set maxConcurrentStreams to "+this.config.maxConcurrency+"when creating new session for "+e.destination.toString())});n.unref();let o=()=>{n.destroy(),this.deleteSession(r,n)};if(n.on("goaway",o),n.on("error",o),n.on("frameError",o),n.on("close",()=>this.deleteSession(r,n)),t.requestTimeout)n.setTimeout(t.requestTimeout,o);let i=this.sessionCache.get(r)||new Fr;return i.offerLast(n),this.sessionCache.set(r,i),n}deleteSession(e,t){let r=this.sessionCache.get(e);if(!r)return;if(!r.contains(t))return;r.remove(t),this.sessionCache.set(e,r)}release(e,t){let r=this.getUrlString(e);this.sessionCache.get(r)?.offerLast(t)}destroy(){for(let[e,t]of this.sessionCache){for(let r of t){if(!r.destroyed)r.destroy();t.remove(r)}this.sessionCache.delete(e)}}setMaxConcurrentStreams(e){if(e&&e<=0)throw RangeError("maxConcurrentStreams must be greater than zero.");this.config.maxConcurrency=e}setDisableConcurrentStreams(e){this.config.disableConcurrency=e}getUrlString(e){return e.destination.toString()}}class rt{config;configProvider;metadata={handlerProtocol:"h2"};connectionManager=new Hr({});static create(e){if(typeof e?.handle==="function")return e;return new rt(e)}constructor(e){this.configProvider=new Promise((t,r)=>{if(typeof e==="function")e().then((s)=>{t(s||{})}).catch(r);else t(e||{})})}destroy(){this.connectionManager.destroy()}async handle(e,{abortSignal:t,requestTimeout:r}={}){if(!this.config){if(this.config=await this.configProvider,this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams||!1),this.config.maxConcurrentStreams)this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams)}let{requestTimeout:s,disableConcurrentStreams:n}=this.config,o=r??s;return new Promise((i,c)=>{let a=!1,l=void 0,d=async($)=>{await l,i($)},f=async($)=>{await l,c($)};if(t?.aborted){a=!0;let $=Me(t);f($);return}let{hostname:u,method:h,port:p,protocol:b,query:y}=e,m="";if(e.username!=null||e.password!=null){let $=e.username??"",B=e.password??"";m=`${$}:${B}@`}let w=`${b}//${m}${u}${p?`:${p}`:""}`,S={destination:new URL(w)},g=this.connectionManager.lease(S,{requestTimeout:this.config?.sessionTimeout,disableConcurrentStreams:n||!1}),O=($)=>{if(n)this.destroySession(g);a=!0,f($)},I=Nr.buildQueryString(y||{}),E=e.path;if(I)E+=`?${I}`;if(e.fragment)E+=`#${e.fragment}`;let x=g.request({...e.headers,[tt.constants.HTTP2_HEADER_PATH]:E,[tt.constants.HTTP2_HEADER_METHOD]:h});if(g.ref(),x.on("response",($)=>{let B=new Lr.HttpResponse({statusCode:$[":status"]||-1,headers:jr($),body:x});if(a=!0,d({response:B}),n)g.close(),this.connectionManager.deleteSession(w,g)}),o)x.setTimeout(o,()=>{x.close();let $=Error(`Stream timed out because of no activity for ${o} ms`);$.name="TimeoutError",O($)});if(t){let $=()=>{x.close();let B=Me(t);O(B)};if(typeof t.addEventListener==="function"){let B=t;B.addEventListener("abort",$,{once:!0}),x.once("close",()=>B.removeEventListener("abort",$))}else t.onabort=$}x.on("frameError",($,B,Qs)=>{O(Error(`Frame type id ${$} in stream id ${Qs} has failed with code ${B}.`))}),x.on("error",O),x.on("aborted",()=>{O(Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${x.rstCode}.`))}),x.on("close",()=>{if(g.unref(),n)g.destroy();if(!a)O(Error("Unexpected error: http2 request did not get a response"))}),l=Cr(x,e,o)})}updateHttpClientConfig(e,t){this.config=void 0,this.configProvider=this.configProvider.then((r)=>{return{...r,[e]:t}})}httpHandlerConfigs(){return this.config??{}}destroySession(e){if(!e.destroyed)e.destroy()}}class zr extends qr.Writable{bufferedBytes=[];_write(e,t,r){this.bufferedBytes.push(e),r()}}var ei=(e)=>{if(ti(e))return ri(e);return new Promise((t,r)=>{let s=new zr;e.pipe(s),e.on("error",(n)=>{s.end(),r(n)}),s.on("error",r),s.on("finish",function(){let n=new Uint8Array(Buffer.concat(this.bufferedBytes));t(n)})})},ti=(e)=>typeof ReadableStream==="function"&&e instanceof ReadableStream;async function ri(e){let t=[],r=e.getReader(),s=!1,n=0;while(!s){let{done:c,value:a}=await r.read();if(a)t.push(a),n+=a.length;s=c}let o=new Uint8Array(n),i=0;for(let c of t)o.set(c,i),i+=c.length;return o}si.DEFAULT_REQUEST_TIMEOUT=Ko;si.NodeHttp2Handler=rt;si.NodeHttpHandler=Pe;si.streamCollector=ei});var Yr=_((mi)=>{var kr=ye(),ai=et(),fi=k();function Jr(e,t){return new Request(e,t)}function ui(e=0){return new Promise((t,r)=>{if(e)setTimeout(()=>{let s=Error(`Request did not complete within ${e} ms`);s.name="TimeoutError",r(s)},e)})}var Ae={supported:void 0};class st{config;configProvider;static create(e){if(typeof e?.handle==="function")return e;return new st(e)}constructor(e){if(typeof e==="function")this.configProvider=e().then((t)=>t||{});else this.config=e??{},this.configProvider=Promise.resolve(this.config);if(Ae.supported===void 0)Ae.supported=Boolean(typeof Request<"u"&&"keepalive"in Jr("https://[::1]"))}destroy(){}async handle(e,{abortSignal:t,requestTimeout:r}={}){if(!this.config)this.config=await this.configProvider;let s=r??this.config.requestTimeout,n=this.config.keepAlive===!0,o=this.config.credentials;if(t?.aborted){let m=vr(t);return Promise.reject(m)}let i=e.path,c=ai.buildQueryString(e.query||{});if(c)i+=`?${c}`;if(e.fragment)i+=`#${e.fragment}`;let a="";if(e.username!=null||e.password!=null){let m=e.username??"",w=e.password??"";a=`${m}:${w}@`}let{port:l,method:d}=e,f=`${e.protocol}//${a}${e.hostname}${l?`:${l}`:""}${i}`,u=d==="GET"||d==="HEAD"?void 0:e.body,h={body:u,headers:new Headers(e.headers),method:d,credentials:o};if(this.config?.cache)h.cache=this.config.cache;if(u)h.duplex="half";if(typeof AbortController<"u")h.signal=t;if(Ae.supported)h.keepalive=n;if(typeof this.config.requestInit==="function")Object.assign(h,this.config.requestInit(e));let p=()=>{},b=Jr(f,h),y=[fetch(b).then((m)=>{let w=m.headers,S={};for(let O of w.entries())S[O[0]]=O[1];if(m.body==null)return m.blob().then((O)=>({response:new kr.HttpResponse({headers:S,reason:m.statusText,statusCode:m.status,body:O})}));return{response:new kr.HttpResponse({headers:S,reason:m.statusText,statusCode:m.status,body:m.body})}}),ui(s)];if(t)y.push(new Promise((m,w)=>{let S=()=>{let g=vr(t);w(g)};if(typeof t.addEventListener==="function"){let g=t;g.addEventListener("abort",S,{once:!0}),p=()=>g.removeEventListener("abort",S)}else t.onabort=S}));return Promise.race(y).finally(p)}updateHttpClientConfig(e,t){this.config=void 0,this.configProvider=this.configProvider.then((r)=>{return r[e]=t,r})}httpHandlerConfigs(){return this.config??{}}}function vr(e){let t=e&&typeof e==="object"&&"reason"in e?e.reason:void 0;if(t){if(t instanceof Error){let n=Error("Request aborted");return n.name="AbortError",n.cause=t,n}let s=Error(String(t));return s.name="AbortError",s}let r=Error("Request aborted");return r.name="AbortError",r}var hi=async(e)=>{if(typeof Blob==="function"&&e instanceof Blob||e.constructor?.name==="Blob"){if(Blob.prototype.arrayBuffer!==void 0)return new Uint8Array(await e.arrayBuffer());return di(e)}return li(e)};async function di(e){let t=await pi(e),r=fi.fromBase64(t);return new Uint8Array(r)}async function li(e){let t=[],r=e.getReader(),s=!1,n=0;while(!s){let{done:c,value:a}=await r.read();if(a)t.push(a),n+=a.length;s=c}let o=new Uint8Array(n),i=0;for(let c of t)o.set(c,i),i+=c.length;return o}function pi(e){return new Promise((t,r)=>{let s=new FileReader;s.onloadend=()=>{if(s.readyState!==2)return r(Error("Reader aborted too early"));let n=s.result??"",o=n.indexOf(","),i=o>-1?o+1:n.length;t(n.substring(i))},s.onabort=()=>r(Error("Read aborted")),s.onerror=()=>r(s.error),s.readAsDataURL(e)})}mi.FetchHttpHandler=st;mi.keepAliveSupport=Ae;mi.streamCollector=hi});var Xr=_((Ti)=>{var Qr={},nt={};for(let e=0;e<256;e++){let t=e.toString(16).toLowerCase();if(t.length===1)t=`0${t}`;Qr[e]=t,nt[t]=e}function gi(e){if(e.length%2!==0)throw Error("Hex encoded strings must have an even number length");let t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){let s=e.slice(r,r+2).toLowerCase();if(s in nt)t[r/2]=nt[s];else throw Error(`Cannot decode unrecognized sequence ${s} as hexadecimal`)}return t}function _i(e){let t="";for(let r=0;r<e.byteLength;r++)t+=Qr[e[r]];return t}Ti.fromHex=gi;Ti.toHex=_i});var ts=_((Kr)=>{Object.defineProperty(Kr,"__esModule",{value:!0});Kr.sdkStreamMixin=void 0;var xi=Yr(),$i=k(),Oi=Xr(),Mi=Te(),Zr=C(),Gr="The stream has already been transformed.",Pi=(e)=>{if(!Vr(e)&&!(0,Zr.isReadableStream)(e)){let n=e?.__proto__?.constructor?.name||e;throw Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${n}`)}let t=!1,r=async()=>{if(t)throw Error(Gr);return t=!0,await(0,xi.streamCollector)(e)},s=(n)=>{if(typeof n.stream!=="function")throw Error(`Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.
|
|
16
16
|
If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body`);return n.stream()};return Object.assign(e,{transformToByteArray:r,transformToString:async(n)=>{let o=await r();if(n==="base64")return(0,$i.toBase64)(o);else if(n==="hex")return(0,Oi.toHex)(o);else if(n===void 0||n==="utf8"||n==="utf-8")return(0,Mi.toUtf8)(o);else if(typeof TextDecoder==="function")return new TextDecoder(n).decode(o);else throw Error("TextDecoder is not available, please make sure polyfill is provided.")},transformToWebStream:()=>{if(t)throw Error(Gr);if(t=!0,Vr(e))return s(e);else if((0,Zr.isReadableStream)(e))return e;else throw Error(`Cannot transform payload to web stream, got ${e}`)}})};Kr.sdkStreamMixin=Pi;var Vr=(e)=>typeof Blob==="function"&&e instanceof Blob});var os=_((ss)=>{Object.defineProperty(ss,"__esModule",{value:!0});ss.sdkStreamMixin=void 0;var Ai=Wr(),Ri=Ze(),ot=D("stream"),Ui=ts(),rs="The stream has already been transformed.",Ii=(e)=>{if(!(e instanceof ot.Readable))try{return(0,Ui.sdkStreamMixin)(e)}catch(s){let n=e?.__proto__?.constructor?.name||e;throw Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${n}`)}let t=!1,r=async()=>{if(t)throw Error(rs);return t=!0,await(0,Ai.streamCollector)(e)};return Object.assign(e,{transformToByteArray:r,transformToString:async(s)=>{let n=await r();if(s===void 0||Buffer.isEncoding(s))return(0,Ri.fromArrayBuffer)(n.buffer,n.byteOffset,n.byteLength).toString(s);else return new TextDecoder(s).decode(n)},transformToWebStream:()=>{if(t)throw Error(rs);if(e.readableFlowing!==null)throw Error("The stream has been consumed by other callbacks.");if(typeof ot.Readable.toWeb!=="function")throw Error("Readable.toWeb() is not supported. Please ensure a polyfill is available.");return t=!0,ot.Readable.toWeb(e)}})};ss.sdkStreamMixin=Ii});var cs=_((is)=>{Object.defineProperty(is,"__esModule",{value:!0});is.splitStream=Di;async function Di(e){if(typeof e.stream==="function")e=e.stream();return e.tee()}});var hs=_((us)=>{Object.defineProperty(us,"__esModule",{value:!0});us.splitStream=Ni;var as=D("stream"),Li=cs(),fs=C();async function Ni(e){if((0,fs.isReadableStream)(e)||(0,fs.isBlob)(e))return(0,Li.splitStream)(e);let t=new as.PassThrough,r=new as.PassThrough;return e.pipe(t),e.pipe(r),[t,r]}});var ms=_((T)=>{var ds=k(),ls=Te(),Re=Ge(),Ue=or(),Ie=br(),De=Er(),Be=Pr(),Le=os(),Ne=hs(),ps=C();class ne extends Uint8Array{static fromString(e,t="utf-8"){if(typeof e==="string"){if(t==="base64")return ne.mutate(ds.fromBase64(e));return ne.mutate(ls.fromUtf8(e))}throw Error(`Unsupported conversion from ${typeof e} to Uint8ArrayBlobAdapter.`)}static mutate(e){return Object.setPrototypeOf(e,ne.prototype),e}transformToString(e="utf-8"){if(e==="base64")return ds.toBase64(this);return ls.toUtf8(this)}}T.isBlob=ps.isBlob;T.isReadableStream=ps.isReadableStream;T.Uint8ArrayBlobAdapter=ne;Object.prototype.hasOwnProperty.call(Re,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:Re.__proto__});Object.keys(Re).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=Re[e]});Object.prototype.hasOwnProperty.call(Ue,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:Ue.__proto__});Object.keys(Ue).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=Ue[e]});Object.prototype.hasOwnProperty.call(Ie,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:Ie.__proto__});Object.keys(Ie).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=Ie[e]});Object.prototype.hasOwnProperty.call(De,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:De.__proto__});Object.keys(De).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=De[e]});Object.prototype.hasOwnProperty.call(Be,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:Be.__proto__});Object.keys(Be).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=Be[e]});Object.prototype.hasOwnProperty.call(Le,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:Le.__proto__});Object.keys(Le).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=Le[e]});Object.prototype.hasOwnProperty.call(Ne,"__proto__")&&!Object.prototype.hasOwnProperty.call(T,"__proto__")&&Object.defineProperty(T,"__proto__",{enumerable:!0,value:Ne.__proto__});Object.keys(Ne).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(T,e))T[e]=Ne[e]})});var gs=_((bs)=>{Object.defineProperty(bs,"__esModule",{value:!0});bs.randomUUID=void 0;var zi=Hi(),ys=zi.__importDefault(D("crypto"));bs.randomUUID=ys.default.randomUUID.bind(ys.default)});var Ts=_((ki)=>{var _s=gs(),M=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0")),Wi=()=>{if(_s.randomUUID)return _s.randomUUID();let e=new Uint8Array(16);return crypto.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128,M[e[0]]+M[e[1]]+M[e[2]]+M[e[3]]+"-"+M[e[4]]+M[e[5]]+"-"+M[e[6]]+M[e[7]]+"-"+M[e[8]]+M[e[9]]+"-"+M[e[10]]+M[e[11]]+M[e[12]]+M[e[13]]+M[e[14]]+M[e[15]]};ki.v4=Wi});var bt=_((Fc)=>{var vi=Ts(),Yi=(e,t,r=(s)=>s)=>e,Qi=(e)=>{switch(e){case"true":return!0;case"false":return!1;default:throw Error(`Unable to parse boolean value "${e}"`)}},Xi=(e)=>{if(e===null||e===void 0)return;if(typeof e==="number"){if(e===0||e===1)ae.warn(je(`Expected boolean, got ${typeof e}: ${e}`));if(e===0)return!1;if(e===1)return!0}if(typeof e==="string"){let t=e.toLowerCase();if(t==="false"||t==="true")ae.warn(je(`Expected boolean, got ${typeof e}: ${e}`));if(t==="false")return!1;if(t==="true")return!0}if(typeof e==="boolean")return e;throw TypeError(`Expected boolean, got ${typeof e}: ${e}`)},ie=(e)=>{if(e===null||e===void 0)return;if(typeof e==="string"){let t=parseFloat(e);if(!Number.isNaN(t)){if(String(t)!==String(e))ae.warn(je(`Expected number but observed string: ${e}`));return t}}if(typeof e==="number")return e;throw TypeError(`Expected number, got ${typeof e}: ${e}`)},Zi=Math.ceil(340282346638528860000000000000000000000),qe=(e)=>{let t=ie(e);if(t!==void 0&&!Number.isNaN(t)&&t!==1/0&&t!==-1/0){if(Math.abs(t)>Zi)throw TypeError(`Expected 32-bit float, got ${e}`)}return t},ce=(e)=>{if(e===null||e===void 0)return;if(Number.isInteger(e)&&!Number.isNaN(e))return e;throw TypeError(`Expected integer, got ${typeof e}: ${e}`)},Gi=ce,ct=(e)=>ut(e,32),at=(e)=>ut(e,16),ft=(e)=>ut(e,8),ut=(e,t)=>{let r=ce(e);if(r!==void 0&&Vi(r,t)!==r)throw TypeError(`Expected ${t}-bit integer, got ${e}`);return r},Vi=(e,t)=>{switch(t){case 32:return Int32Array.of(e)[0];case 16:return Int16Array.of(e)[0];case 8:return Int8Array.of(e)[0]}},Ki=(e,t)=>{if(e===null||e===void 0){if(t)throw TypeError(`Expected a non-null value for ${t}`);throw TypeError("Expected a non-null value")}return e},Ss=(e)=>{if(e===null||e===void 0)return;if(typeof e==="object"&&!Array.isArray(e))return e;let t=Array.isArray(e)?"array":typeof e;throw TypeError(`Expected object, got ${t}: ${e}`)},ec=(e)=>{if(e===null||e===void 0)return;if(typeof e==="string")return e;if(["boolean","number","bigint"].includes(typeof e))return ae.warn(je(`Expected string, got ${typeof e}: ${e}`)),String(e);throw TypeError(`Expected string, got ${typeof e}: ${e}`)},tc=(e)=>{if(e===null||e===void 0)return;let t=Ss(e),r=Object.entries(t).filter(([,s])=>s!=null).map(([s])=>s);if(r.length===0)throw TypeError("Unions must have exactly one non-null member. None were found.");if(r.length>1)throw TypeError(`Unions must have exactly one non-null member. Keys ${r} were not null.`);return t},ht=(e)=>{if(typeof e=="string")return ie(Z(e));return ie(e)},rc=ht,xs=(e)=>{if(typeof e=="string")return qe(Z(e));return qe(e)},sc=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,Z=(e)=>{let t=e.match(sc);if(t===null||t[0].length!==e.length)throw TypeError("Expected real number, got implicit NaN");return parseFloat(e)},dt=(e)=>{if(typeof e=="string")return $s(e);return ie(e)},nc=dt,oc=dt,ic=(e)=>{if(typeof e=="string")return $s(e);return qe(e)},$s=(e)=>{switch(e){case"NaN":return NaN;case"Infinity":return 1/0;case"-Infinity":return-1/0;default:throw Error(`Unable to parse float value: ${e}`)}},Os=(e)=>{if(typeof e==="string")return ce(Z(e));return ce(e)},cc=Os,ac=(e)=>{if(typeof e==="string")return ct(Z(e));return ct(e)},Q=(e)=>{if(typeof e==="string")return at(Z(e));return at(e)},Ms=(e)=>{if(typeof e==="string")return ft(Z(e));return ft(e)},je=(e)=>{return String(TypeError(e).stack||e).split(`
|
|
17
17
|
`).slice(0,5).filter((t)=>!t.includes("stackTraceWarning")).join(`
|
|
18
|
-
`)},ae={warn:console.warn},fc=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],lt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function uc(e){let t=e.getUTCFullYear(),r=e.getUTCMonth(),s=e.getUTCDay(),n=e.getUTCDate(),o=e.getUTCHours(),i=e.getUTCMinutes(),c=e.getUTCSeconds(),a=n<10?`0${n}`:`${n}`,l=o<10?`0${o}`:`${o}`,d=i<10?`0${i}`:`${i}`,f=c<10?`0${c}`:`${c}`;return`${fc[s]}, ${a} ${lt[r]} ${t} ${l}:${d}:${f} GMT`}var hc=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),dc=(e)=>{if(e===null||e===void 0)return;if(typeof e!=="string")throw TypeError("RFC-3339 date-times must be expressed as strings");let t=hc.exec(e);if(!t)throw TypeError("Invalid RFC-3339 date-time value");let[r,s,n,o,i,c,a,l]=t,d=Q(X(s)),f=L(n,"month",1,12),u=L(o,"day",1,31);return oe(d,f,u,{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l})},lc=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),pc=(e)=>{if(e===null||e===void 0)return;if(typeof e!=="string")throw TypeError("RFC-3339 date-times must be expressed as strings");let t=lc.exec(e);if(!t)throw TypeError("Invalid RFC-3339 date-time value");let[r,s,n,o,i,c,a,l,d]=t,f=Q(X(s)),u=L(n,"month",1,12),h=L(o,"day",1,31),p=oe(f,u,h,{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l});if(d.toUpperCase()!="Z")p.setTime(p.getTime()-Mc(d));return p},mc=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),yc=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),bc=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),wc=(e)=>{if(e===null||e===void 0)return;if(typeof e!=="string")throw TypeError("RFC-7231 date-times must be expressed as strings");let t=mc.exec(e);if(t){let[r,s,n,o,i,c,a,l]=t;return oe(Q(X(o)),it(n),L(s,"day",1,31),{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l})}if(t=yc.exec(e),t){let[r,s,n,o,i,c,a,l]=t;return Ec(oe(_c(o),it(n),L(s,"day",1,31),{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l}))}if(t=bc.exec(e),t){let[r,s,n,o,i,c,a,l]=t;return oe(Q(X(l)),it(s),L(n.trimLeft(),"day",1,31),{hours:o,minutes:i,seconds:c,fractionalMilliseconds:a})}throw TypeError("Invalid RFC-7231 date-time value")},gc=(e)=>{if(e===null||e===void 0)return;let t;if(typeof e==="number")t=e;else if(typeof e==="string")t=ht(e);else if(typeof e==="object"&&e.tag===1)t=e.value;else throw TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(t)||t===1/0||t===-1/0)throw TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(t*1000))},oe=(e,t,r,s)=>{let n=t-1;return xc(e,n,r),new Date(Date.UTC(e,n,r,L(s.hours,"hour",0,23),L(s.minutes,"minute",0,59),L(s.seconds,"seconds",0,60),Oc(s.fractionalMilliseconds)))},_c=(e)=>{let t=new Date().getUTCFullYear(),r=Math.floor(t/100)*100+Q(X(e));if(r<t)return r+100;return r},Tc=1576800000000,Ec=(e)=>{if(e.getTime()-new Date().getTime()>Tc)return new Date(Date.UTC(e.getUTCFullYear()-100,e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()));return e},it=(e)=>{let t=lt.indexOf(e);if(t<0)throw TypeError(`Invalid month: ${e}`);return t+1},Sc=[31,28,31,30,31,30,31,31,30,31,30,31],xc=(e,t,r)=>{let s=Sc[t];if(t===1&&$c(e))s=29;if(r>s)throw TypeError(`Invalid day for ${lt[t]} in ${e}: ${r}`)},$c=(e)=>{return e%4===0&&(e%100!==0||e%400===0)},L=(e,t,r,s)=>{let n=Ms(X(e));if(n<r||n>s)throw TypeError(`${t} must be between ${r} and ${s}, inclusive`);return n},Oc=(e)=>{if(e===null||e===void 0)return 0;return xs("0."+e)*1000},Mc=(e)=>{let t=e[0],r=1;if(t=="+")r=1;else if(t=="-")r=-1;else throw TypeError(`Offset direction, ${t}, must be "+" or "-"`);let s=Number(e.substring(1,3)),n=Number(e.substring(4,6));return r*(s*60+n)*60*1000},X=(e)=>{let t=0;while(t<e.length-1&&e.charAt(t)==="0")t++;if(t===0)return e;return e.slice(t)},J=function(t){return Object.assign(new String(t),{deserializeJSON(){return JSON.parse(String(t))},toString(){return String(t)},toJSON(){return String(t)}})};J.from=(e)=>{if(e&&typeof e==="object"&&(e instanceof J||("deserializeJSON"in e)))return e;else if(typeof e==="string"||Object.getPrototypeOf(e)===String.prototype)return J(String(e));return J(JSON.stringify(e))};J.fromObject=J.from;function Pc(e){if(e.includes(",")||e.includes('"'))e=`"${e.replace(/"/g,"\\\"")}"`;return e}var pt="(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?",mt="(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)",yt="(\\d?\\d):(\\d{2}):(\\d{2})(?:\\.(\\d+))?",Ps="(\\d?\\d)",As="(\\d{4})",Ac=new RegExp(/^(\d{4})-(\d\d)-(\d\d)[tT](\d\d):(\d\d):(\d\d)(\.(\d+))?(([-+]\d\d:\d\d)|[zZ])$/),Rc=new RegExp(`^${pt}, ${Ps} ${mt} ${As} ${yt} GMT$`),Uc=new RegExp(`^${pt}, ${Ps}-${mt}-(\\d\\d) ${yt} GMT$`),Ic=new RegExp(`^${pt} ${mt} ( [1-9]|\\d\\d) ${yt} ${As}$`),Dc=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Bc=(e)=>{if(e==null)return;let t=NaN;if(typeof e==="number")t=e;else if(typeof e==="string"){if(!/^-?\d*\.?\d+$/.test(e))throw TypeError("parseEpochTimestamp - numeric string invalid.");t=Number.parseFloat(e)}else if(typeof e==="object"&&e.tag===1)t=e.value;if(isNaN(t)||Math.abs(t)===1/0)throw TypeError("Epoch timestamps must be valid finite numbers.");return new Date(Math.round(t*1000))},Lc=(e)=>{if(e==null)return;if(typeof e!=="string")throw TypeError("RFC3339 timestamps must be strings");let t=Ac.exec(e);if(!t)throw TypeError(`Invalid RFC3339 timestamp format ${e}`);let[,r,s,n,o,i,c,,a,l]=t;H(s,1,12),H(n,1,31),H(o,0,23),H(i,0,59),H(c,0,60);let d=new Date(Date.UTC(Number(r),Number(s)-1,Number(n),Number(o),Number(i),Number(c),Number(a)?Math.round(parseFloat(`0.${a}`)*1000):0));if(d.setUTCFullYear(Number(r)),l.toUpperCase()!="Z"){let[,f,u,h]=/([+-])(\d\d):(\d\d)/.exec(l)||[void 0,"+",0,0],p=f==="-"?1:-1;d.setTime(d.getTime()+p*(Number(u)*60*60*1000+Number(h)*60*1000))}return d},Nc=(e)=>{if(e==null)return;if(typeof e!=="string")throw TypeError("RFC7231 timestamps must be strings.");let t,r,s,n,o,i,c,a;if(a=Rc.exec(e))[,t,r,s,n,o,i,c]=a;else if(a=Uc.exec(e))[,t,r,s,n,o,i,c]=a,s=(Number(s)+1900).toString();else if(a=Ic.exec(e))[,r,t,n,o,i,c,s]=a;if(s&&i){let l=Date.UTC(Number(s),Dc.indexOf(r),Number(t),Number(n),Number(o),Number(i),c?Math.round(parseFloat(`0.${c}`)*1000):0);H(t,1,31),H(n,0,23),H(o,0,59),H(i,0,60);let d=new Date(l);return d.setUTCFullYear(Number(s)),d}throw TypeError(`Invalid RFC7231 date-time value ${e}.`)};function H(e,t,r){let s=Number(e);if(s<t||s>r)throw Error(`Value ${s} out of range [${t}, ${r}]`)}function qc(e,t,r){if(r<=0||!Number.isInteger(r))throw Error("Invalid number of delimiters ("+r+") for splitEvery.");let s=e.split(t);if(r===1)return s;let n=[],o="";for(let i=0;i<s.length;i++){if(o==="")o=s[i];else o+=t+s[i];if((i+1)%r===0)n.push(o),o=""}if(o!=="")n.push(o);return n}var jc=(e)=>{let t=e.length,r=[],s=!1,n=void 0,o=0;for(let i=0;i<t;++i){let c=e[i];switch(c){case'"':if(n!=="\\")s=!s;break;case",":if(!s)r.push(e.slice(o,i)),o=i+1;break}n=c}return r.push(e.slice(o)),r.map((i)=>{i=i.trim();let c=i.length;if(c<2)return i;if(i[0]==='"'&&i[c-1]==='"')i=i.slice(1,c-1);return i.replace(/\\"/g,'"')})},Es=/^-?\d*(\.\d+)?$/;class Ce{string;type;constructor(e,t){if(this.string=e,this.type=t,!Es.test(e))throw Error('@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point ".", and an optional negation prefix "-".')}toString(){return this.string}static[Symbol.hasInstance](e){if(!e||typeof e!=="object")return!1;let t=e;return Ce.prototype.isPrototypeOf(e)||t.type==="bigDecimal"&&Es.test(t.string)}}function Cc(e){return new Ce(String(e),"bigDecimal")}Fc.generateIdempotencyToken=vi.v4;Fc.LazyJsonString=J;Fc.NumericValue=Ce;Fc._parseEpochTimestamp=Bc;Fc._parseRfc3339DateTimeWithOffset=Lc;Fc._parseRfc7231DateTime=Nc;Fc.copyDocumentWithTransform=Yi;Fc.dateToUtcString=uc;Fc.expectBoolean=Xi;Fc.expectByte=ft;Fc.expectFloat32=qe;Fc.expectInt=Gi;Fc.expectInt32=ct;Fc.expectLong=ce;Fc.expectNonNull=Ki;Fc.expectNumber=ie;Fc.expectObject=Ss;Fc.expectShort=at;Fc.expectString=ec;Fc.expectUnion=tc;Fc.handleFloat=nc;Fc.limitedParseDouble=dt;Fc.limitedParseFloat=oc;Fc.limitedParseFloat32=ic;Fc.logger=ae;Fc.nv=Cc;Fc.parseBoolean=Qi;Fc.parseEpochTimestamp=gc;Fc.parseRfc3339DateTime=dc;Fc.parseRfc3339DateTimeWithOffset=pc;Fc.parseRfc7231DateTime=wc;Fc.quoteHeader=Pc;Fc.splitEvery=qc;Fc.splitHeader=jc;Fc.strictParseByte=Ms;Fc.strictParseDouble=ht;Fc.strictParseFloat=rc;Fc.strictParseFloat32=xs;Fc.strictParseInt=cc;Fc.strictParseInt32=ac;Fc.strictParseLong=Os;Fc.strictParseShort=Q});var Ls=_((Ra)=>{var Fe=ms(),R=Qe(),U=bt(),fe=ye(),He=k(),wt=Te(),v=async(e=new Uint8Array,t)=>{if(e instanceof Uint8Array)return Fe.Uint8ArrayBlobAdapter.mutate(e);if(!e)return Fe.Uint8ArrayBlobAdapter.mutate(new Uint8Array);let r=t.streamCollector(e);return Fe.Uint8ArrayBlobAdapter.mutate(await r)};function ue(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}class G{serdeContext;setSerdeContext(e){this.serdeContext=e}}class ze extends G{options;compositeErrorRegistry;constructor(e){super();this.options=e,this.compositeErrorRegistry=R.TypeRegistry.for(e.defaultNamespace);for(let t of e.errorTypeRegistries??[])this.compositeErrorRegistry.copyFrom(t)}getRequestType(){return fe.HttpRequest}getResponseType(){return fe.HttpResponse}setSerdeContext(e){if(this.serdeContext=e,this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e),this.getPayloadCodec())this.getPayloadCodec().setSerdeContext(e)}updateServiceEndpoint(e,t){if("url"in t){if(e.protocol=t.url.protocol,e.hostname=t.url.hostname,e.port=t.url.port?Number(t.url.port):void 0,e.path=t.url.pathname,e.fragment=t.url.hash||void 0,e.username=t.url.username||void 0,e.password=t.url.password||void 0,!e.query)e.query={};for(let[r,s]of t.url.searchParams.entries())e.query[r]=s;if(t.headers)for(let[r,s]of Object.entries(t.headers))e.headers[r]=s.join(", ");return e}else{if(e.protocol=t.protocol,e.hostname=t.hostname,e.port=t.port?Number(t.port):void 0,e.path=t.path,e.query={...t.query},t.headers)for(let[r,s]of Object.entries(t.headers))e.headers[r]=s;return e}}setHostPrefix(e,t,r){if(this.serdeContext?.disableHostPrefix)return;let s=R.NormalizedSchema.of(t.input),n=R.translateTraits(t.traits??{});if(n.endpoint){let o=n.endpoint?.[0];if(typeof o==="string"){let i=[...s.structIterator()].filter(([,c])=>c.getMergedTraits().hostLabel);for(let[c]of i){let a=r[c];if(typeof a!=="string")throw Error(`@smithy/core/schema - ${c} in input must be a string as hostLabel.`);o=o.replace(`{${c}}`,a)}e.hostname=o+e.hostname}}}deserializeMetadata(e){return{httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}}async serializeEventStream({eventStream:e,requestSchema:t,initialRequest:r}){return(await this.loadEventStreamCapability()).serializeEventStream({eventStream:e,requestSchema:t,initialRequest:r})}async deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:r}){return(await this.loadEventStreamCapability()).deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:r})}async loadEventStreamCapability(){let{EventStreamSerde:e}=await import("./chunk-erwawm84.js");return new e({marshaller:this.getEventStreamMarshaller(),serializer:this.serializer,deserializer:this.deserializer,serdeContext:this.serdeContext,defaultContentType:this.getDefaultContentType()})}getDefaultContentType(){throw Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`)}async deserializeHttpMessage(e,t,r,s,n){return[]}getEventStreamMarshaller(){let e=this.serdeContext;if(!e.eventStreamMarshaller)throw Error("@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.");return e.eventStreamMarshaller}}class Rs extends ze{async serializeRequest(e,t,r){let s={...t??{}},n=this.serializer,o={},i={},c=await r.endpoint(),a=R.NormalizedSchema.of(e?.input),l=[],d=[],f=!1,u,h=new fe.HttpRequest({protocol:"",hostname:"",port:void 0,path:"",fragment:void 0,query:o,headers:i,body:void 0});if(c){this.updateServiceEndpoint(h,c),this.setHostPrefix(h,e,s);let p=R.translateTraits(e.traits);if(p.http){h.method=p.http[0];let[b,y]=p.http[1].split("?");if(h.path=="/")h.path=b;else h.path+=b;let m=new URLSearchParams(y??"");Object.assign(o,Object.fromEntries(m))}}for(let[p,b]of a.structIterator()){let y=b.getMergedTraits()??{},m=s[p];if(m==null&&!b.isIdempotencyToken()){if(y.httpLabel){if(h.path.includes(`{${p}+}`)||h.path.includes(`{${p}}`))throw Error(`No value provided for input HTTP label: ${p}.`)}continue}if(y.httpPayload){if(b.isStreaming())if(b.isStructSchema()){if(s[p])u=await this.serializeEventStream({eventStream:s[p],requestSchema:a})}else u=m;else n.write(b,m),u=n.flush();delete s[p]}else if(y.httpLabel){n.write(b,m);let w=n.flush();if(h.path.includes(`{${p}+}`))h.path=h.path.replace(`{${p}+}`,w.split("/").map(ue).join("/"));else if(h.path.includes(`{${p}}`))h.path=h.path.replace(`{${p}}`,ue(w));delete s[p]}else if(y.httpHeader)n.write(b,m),i[y.httpHeader.toLowerCase()]=String(n.flush()),delete s[p];else if(typeof y.httpPrefixHeaders==="string"){for(let[w,S]of Object.entries(m)){let g=y.httpPrefixHeaders+w;n.write([b.getValueSchema(),{httpHeader:g}],S),i[g.toLowerCase()]=n.flush()}delete s[p]}else if(y.httpQuery||y.httpQueryParams)this.serializeQuery(b,m,o),delete s[p];else f=!0,l.push(p),d.push(b)}if(f&&s){let[p,b]=(a.getName(!0)??"#Unknown").split("#"),y=a.getSchema()[6],m=[3,p,b,a.getMergedTraits(),l,d,void 0];if(y)m[6]=y;else m.pop();n.write(m,s),u=n.flush()}return h.headers=i,h.query=o,h.body=u,h}serializeQuery(e,t,r){let s=this.serializer,n=e.getMergedTraits();if(n.httpQueryParams){for(let[o,i]of Object.entries(t))if(!(o in r)){let c=e.getValueSchema();Object.assign(c.getMergedTraits(),{...n,httpQuery:o,httpQueryParams:void 0}),this.serializeQuery(c,i,r)}return}if(e.isListSchema()){let o=!!e.getMergedTraits().sparse,i=[];for(let c of t){s.write([e.getValueSchema(),n],c);let a=s.flush();if(o||a!==void 0)i.push(a)}r[n.httpQuery]=i}else s.write([e,n],t),r[n.httpQuery]=s.flush()}async deserializeResponse(e,t,r){let s=this.deserializer,n=R.NormalizedSchema.of(e.output),o={};if(r.statusCode>=300){let c=await v(r.body,t);if(c.byteLength>0)Object.assign(o,await s.read(15,c));throw await this.handleError(e,t,r,o,this.deserializeMetadata(r)),Error("@smithy/core/protocols - HTTP Protocol error handler failed to throw.")}for(let c in r.headers){let a=r.headers[c];delete r.headers[c],r.headers[c.toLowerCase()]=a}let i=await this.deserializeHttpMessage(n,t,r,o);if(i.length){let c=await v(r.body,t);if(c.byteLength>0){let a=await s.read(n,c);for(let l of i)if(a[l]!=null)o[l]=a[l]}}else if(i.discardResponseBody)await v(r.body,t);return o.$metadata=this.deserializeMetadata(r),o}async deserializeHttpMessage(e,t,r,s,n){let o;if(s instanceof Set)o=n;else o=s;let i=!0,c=this.deserializer,a=R.NormalizedSchema.of(e),l=[];for(let[d,f]of a.structIterator()){let u=f.getMemberTraits();if(u.httpPayload){if(i=!1,f.isStreaming())if(f.isStructSchema())o[d]=await this.deserializeEventStream({response:r,responseSchema:a});else o[d]=Fe.sdkStreamMixin(r.body);else if(r.body){let p=await v(r.body,t);if(p.byteLength>0)o[d]=await c.read(f,p)}}else if(u.httpHeader){let h=String(u.httpHeader).toLowerCase(),p=r.headers[h];if(p!=null)if(f.isListSchema()){let b=f.getValueSchema();b.getMergedTraits().httpHeader=h;let y;if(b.isTimestampSchema()&&b.getSchema()===4)y=U.splitEvery(p,",",2);else y=U.splitHeader(p);let m=[];for(let w of y)m.push(await c.read(b,w.trim()));o[d]=m}else o[d]=await c.read(f,p)}else if(u.httpPrefixHeaders!==void 0){o[d]={};for(let[h,p]of Object.entries(r.headers))if(h.startsWith(u.httpPrefixHeaders)){let b=f.getValueSchema();b.getMergedTraits().httpHeader=h,o[d][h.slice(u.httpPrefixHeaders.length)]=await c.read(b,p)}}else if(u.httpResponseCode)o[d]=r.statusCode;else l.push(d)}return l.discardResponseBody=i,l}}class Us extends ze{async serializeRequest(e,t,r){let s=this.serializer,n={},o={},i=await r.endpoint(),c=R.NormalizedSchema.of(e?.input),a=c.getSchema(),l,d=new fe.HttpRequest({protocol:"",hostname:"",port:void 0,path:"/",fragment:void 0,query:n,headers:o,body:void 0});if(i)this.updateServiceEndpoint(d,i),this.setHostPrefix(d,e,t);let f={...t};if(t){let u=c.getEventStreamMember();if(u){if(f[u]){let h={};for(let[p,b]of c.structIterator())if(p!==u&&f[p])s.write(b,f[p]),h[p]=s.flush();l=await this.serializeEventStream({eventStream:f[u],requestSchema:c,initialRequest:h})}}else s.write(a,f),l=s.flush()}return d.headers=Object.assign(d.headers,o),d.query=n,d.body=l,d.method="POST",d}async deserializeResponse(e,t,r){let s=this.deserializer,n=R.NormalizedSchema.of(e.output),o={};if(r.statusCode>=300){let c=await v(r.body,t);if(c.byteLength>0)Object.assign(o,await s.read(15,c));throw await this.handleError(e,t,r,o,this.deserializeMetadata(r)),Error("@smithy/core/protocols - RPC Protocol error handler failed to throw.")}for(let c in r.headers){let a=r.headers[c];delete r.headers[c],r.headers[c.toLowerCase()]=a}let i=n.getEventStreamMember();if(i)o[i]=await this.deserializeEventStream({response:r,responseSchema:n,initialResponseContainer:o});else{let c=await v(r.body,t);if(c.byteLength>0)Object.assign(o,await s.read(n,c))}return o.$metadata=this.deserializeMetadata(r),o}}var Is=(e,t,r,s,n,o)=>{if(t!=null&&t[r]!==void 0){let i=s();if(i==null||i.length<=0)throw Error("Empty value provided for input HTTP label: "+r+".");e=e.replace(n,o?i.split("/").map((c)=>ue(c)).join("/"):ue(i))}else throw Error("No value provided for input HTTP label: "+r+".");return e};function Aa(e,t){return new gt(e,t)}class gt{input;context;query={};method="";headers={};path="";body=null;hostname="";resolvePathStack=[];constructor(e,t){this.input=e,this.context=t}async build(){let{hostname:e,protocol:t="https",port:r,path:s}=await this.context.endpoint();this.path=s;for(let n of this.resolvePathStack)n(this.path);return new fe.HttpRequest({protocol:t,hostname:this.hostname||e,port:r,method:this.method,path:this.path,query:this.query,body:this.body,headers:this.headers})}hn(e){return this.hostname=e,this}bp(e){return this.resolvePathStack.push((t)=>{this.path=`${t?.endsWith("/")?t.slice(0,-1):t||""}`+e}),this}p(e,t,r,s){return this.resolvePathStack.push((n)=>{this.path=Is(n,this.input,e,t,r,s)}),this}h(e){return this.headers=e,this}q(e){return this.query=e,this}b(e){return this.body=e,this}m(e){return this.method=e,this}}function _t(e,t){if(t.timestampFormat.useTrait){if(e.isTimestampSchema()&&(e.getSchema()===5||e.getSchema()===6||e.getSchema()===7))return e.getSchema()}let{httpLabel:r,httpPrefixHeaders:s,httpHeader:n,httpQuery:o}=e.getMergedTraits();return(t.httpBindings?typeof s==="string"||Boolean(n)?6:Boolean(o)||Boolean(r)?5:void 0:void 0)??t.timestampFormat.default}class Tt extends G{settings;constructor(e){super();this.settings=e}read(e,t){let r=R.NormalizedSchema.of(e);if(r.isListSchema())return U.splitHeader(t).map((s)=>this.read(r.getValueSchema(),s));if(r.isBlobSchema())return(this.serdeContext?.base64Decoder??He.fromBase64)(t);if(r.isTimestampSchema())switch(_t(r,this.settings)){case 5:return U._parseRfc3339DateTimeWithOffset(t);case 6:return U._parseRfc7231DateTime(t);case 7:return U._parseEpochTimestamp(t);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",t),new Date(t)}if(r.isStringSchema()){let s=r.getMergedTraits().mediaType,n=t;if(s){if(r.getMergedTraits().httpHeader)n=this.base64ToUtf8(n);if(s==="application/json"||s.endsWith("+json"))n=U.LazyJsonString.from(n);return n}}if(r.isNumericSchema())return Number(t);if(r.isBigIntegerSchema())return BigInt(t);if(r.isBigDecimalSchema())return new U.NumericValue(t,"bigDecimal");if(r.isBooleanSchema())return String(t).toLowerCase()==="true";return t}base64ToUtf8(e){return(this.serdeContext?.utf8Encoder??wt.toUtf8)((this.serdeContext?.base64Decoder??He.fromBase64)(e))}}class Ds extends G{codecDeserializer;stringDeserializer;constructor(e,t){super();this.codecDeserializer=e,this.stringDeserializer=new Tt(t)}setSerdeContext(e){this.stringDeserializer.setSerdeContext(e),this.codecDeserializer.setSerdeContext(e),this.serdeContext=e}read(e,t){let r=R.NormalizedSchema.of(e),s=r.getMergedTraits(),n=this.serdeContext?.utf8Encoder??wt.toUtf8;if(s.httpHeader||s.httpResponseCode)return this.stringDeserializer.read(r,n(t));if(s.httpPayload){if(r.isBlobSchema()){let o=this.serdeContext?.utf8Decoder??wt.fromUtf8;if(typeof t==="string")return o(t);return t}else if(r.isStringSchema()){if("byteLength"in t)return n(t);return t}}return this.codecDeserializer.read(r,t)}}class Et extends G{settings;stringBuffer="";constructor(e){super();this.settings=e}write(e,t){let r=R.NormalizedSchema.of(e);switch(typeof t){case"object":if(t===null){this.stringBuffer="null";return}if(r.isTimestampSchema()){if(!(t instanceof Date))throw Error(`@smithy/core/protocols - received non-Date value ${t} when schema expected Date in ${r.getName(!0)}`);switch(_t(r,this.settings)){case 5:this.stringBuffer=t.toISOString().replace(".000Z","Z");break;case 6:this.stringBuffer=U.dateToUtcString(t);break;case 7:this.stringBuffer=String(t.getTime()/1000);break;default:console.warn("Missing timestamp format, using epoch seconds",t),this.stringBuffer=String(t.getTime()/1000)}return}if(r.isBlobSchema()&&"byteLength"in t){this.stringBuffer=(this.serdeContext?.base64Encoder??He.toBase64)(t);return}if(r.isListSchema()&&Array.isArray(t)){let o="";for(let i of t){this.write([r.getValueSchema(),r.getMergedTraits()],i);let c=this.flush(),a=r.getValueSchema().isTimestampSchema()?c:U.quoteHeader(c);if(o!=="")o+=", ";o+=a}this.stringBuffer=o;return}this.stringBuffer=JSON.stringify(t,null,2);break;case"string":let s=r.getMergedTraits().mediaType,n=t;if(s){if(s==="application/json"||s.endsWith("+json"))n=U.LazyJsonString.from(n);if(r.getMergedTraits().httpHeader){this.stringBuffer=(this.serdeContext?.base64Encoder??He.toBase64)(n.toString());return}}this.stringBuffer=t;break;default:if(r.isIdempotencyToken())this.stringBuffer=U.generateIdempotencyToken();else this.stringBuffer=String(t)}}flush(){let e=this.stringBuffer;return this.stringBuffer="",e}}class Bs{codecSerializer;stringSerializer;buffer;constructor(e,t,r=new Et(t)){this.codecSerializer=e,this.stringSerializer=r}setSerdeContext(e){this.codecSerializer.setSerdeContext(e),this.stringSerializer.setSerdeContext(e)}write(e,t){let r=R.NormalizedSchema.of(e),s=r.getMergedTraits();if(s.httpHeader||s.httpLabel||s.httpQuery){this.stringSerializer.write(r,t),this.buffer=this.stringSerializer.flush();return}return this.codecSerializer.write(r,t)}flush(){if(this.buffer!==void 0){let e=this.buffer;return this.buffer=void 0,e}return this.codecSerializer.flush()}}Ra.FromStringShapeDeserializer=Tt;Ra.HttpBindingProtocol=Rs;Ra.HttpInterceptingShapeDeserializer=Ds;Ra.HttpInterceptingShapeSerializer=Bs;Ra.HttpProtocol=ze;Ra.RequestBuilder=gt;Ra.RpcProtocol=Us;Ra.SerdeContext=G;Ra.ToStringShapeSerializer=Et;Ra.collectBody=v;Ra.determineTimestampFormat=_t;Ra.extendedEncodeURIComponent=ue;Ra.requestBuilder=Aa;Ra.resolvedPath=Is});var Ff=_((he)=>{var qs=Ct(),Ot=Ls(),We=At(),Ja=Qe(),ke=bt();class js{config;middlewareStack=qs.constructStack();initConfig;handlers;constructor(e){this.config=e;let{protocol:t,protocolSettings:r}=e;if(r){if(typeof t==="function")e.protocol=new t(r)}}send(e,t,r){let s=typeof t!=="function"?t:void 0,n=typeof t==="function"?t:r,o=s===void 0&&this.config.cacheMiddleware===!0,i;if(o){if(!this.handlers)this.handlers=new WeakMap;let c=this.handlers;if(c.has(e.constructor))i=c.get(e.constructor);else i=e.resolveMiddleware(this.middlewareStack,this.config,s),c.set(e.constructor,i)}else delete this.handlers,i=e.resolveMiddleware(this.middlewareStack,this.config,s);if(n)i(e).then((c)=>n(null,c.output),(c)=>n(c)).catch(()=>{});else return i(e).then((c)=>c.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}var St="***SensitiveInformation***";function xt(e,t){if(t==null)return t;let r=Ja.NormalizedSchema.of(e);if(r.getMergedTraits().sensitive)return St;if(r.isListSchema()){if(!!r.getValueSchema().getMergedTraits().sensitive)return St}else if(r.isMapSchema()){if(!!r.getKeySchema().getMergedTraits().sensitive||!!r.getValueSchema().getMergedTraits().sensitive)return St}else if(r.isStructSchema()&&typeof t==="object"){let s=t,n={};for(let[o,i]of r.structIterator())if(s[o]!=null)n[o]=xt(i,s[o]);return n}return t}class Mt{middlewareStack=qs.constructStack();schema;static classBuilder(){return new Cs}resolveMiddlewareWithContext(e,t,r,{middlewareFn:s,clientName:n,commandName:o,inputFilterSensitiveLog:i,outputFilterSensitiveLog:c,smithyContext:a,additionalContext:l,CommandCtor:d}){for(let b of s.bind(this)(d,e,t,r))this.middlewareStack.use(b);let f=e.concat(this.middlewareStack),{logger:u}=t,h={logger:u,clientName:n,commandName:o,inputFilterSensitiveLog:i,outputFilterSensitiveLog:c,[We.SMITHY_CONTEXT_KEY]:{commandInstance:this,...a},...l},{requestHandler:p}=t;return f.resolve((b)=>p.handle(b.request,r||{}),h)}}class Cs{_init=()=>{};_ep={};_middlewareFn=()=>[];_commandName="";_clientName="";_additionalContext={};_smithyContext={};_inputFilterSensitiveLog=void 0;_outputFilterSensitiveLog=void 0;_serializer=null;_deserializer=null;_operationSchema;init(e){this._init=e}ep(e){return this._ep=e,this}m(e){return this._middlewareFn=e,this}s(e,t,r={}){return this._smithyContext={service:e,operation:t,...r},this}c(e={}){return this._additionalContext=e,this}n(e,t){return this._clientName=e,this._commandName=t,this}f(e=(r)=>r,t=(r)=>r){return this._inputFilterSensitiveLog=e,this._outputFilterSensitiveLog=t,this}ser(e){return this._serializer=e,this}de(e){return this._deserializer=e,this}sc(e){return this._operationSchema=e,this._smithyContext.operationSchema=e,this}build(){let e=this,t;return t=class extends Mt{input;static getEndpointParameterInstructions(){return e._ep}constructor(...[r]){super();this.input=r??{},e._init(this),this.schema=e._operationSchema}resolveMiddleware(r,s,n){let o=e._operationSchema,i=o?.[4]??o?.input,c=o?.[5]??o?.output;return this.resolveMiddlewareWithContext(r,s,n,{CommandCtor:t,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog??(o?xt.bind(null,i):(a)=>a),outputFilterSensitiveLog:e._outputFilterSensitiveLog??(o?xt.bind(null,c):(a)=>a),smithyContext:e._smithyContext,additionalContext:e._additionalContext})}serialize=e._serializer;deserialize=e._deserializer}}}var va="***SensitiveInformation***",Ya=(e,t,r)=>{for(let[o,i]of Object.entries(e)){let c=async function(l,d,f){let u=new i(l);if(typeof d==="function")this.send(u,d);else if(typeof f==="function"){if(typeof d!=="object")throw Error(`Expected http options but got ${typeof d}`);this.send(u,d||{},f)}else return this.send(u,d)},a=(o[0].toLowerCase()+o.slice(1)).replace(/Command$/,"");t.prototype[a]=c}let{paginators:s={},waiters:n={}}=r??{};for(let[o,i]of Object.entries(s))if(t.prototype[o]===void 0)t.prototype[o]=function(c={},a,...l){return i({...a,client:this},c,...l)};for(let[o,i]of Object.entries(n))if(t.prototype[o]===void 0)t.prototype[o]=async function(c={},a,...l){let d=a;if(typeof a==="number")d={maxWaitTime:a};return i({...d,client:this},c,...l)}};class V extends Error{$fault;$response;$retryable;$metadata;constructor(e){super(e.message);Object.setPrototypeOf(this,Object.getPrototypeOf(this).constructor.prototype),this.name=e.name,this.$fault=e.$fault,this.$metadata=e.$metadata}static isInstance(e){if(!e)return!1;let t=e;return V.prototype.isPrototypeOf(t)||Boolean(t.$fault)&&Boolean(t.$metadata)&&(t.$fault==="client"||t.$fault==="server")}static[Symbol.hasInstance](e){if(!e)return!1;let t=e;if(this===V)return V.isInstance(e);if(V.isInstance(e)){if(t.name&&this.name)return this.prototype.isPrototypeOf(e)||t.name===this.name;return this.prototype.isPrototypeOf(e)}return!1}}var Fs=(e,t={})=>{Object.entries(t).filter(([,s])=>s!==void 0).forEach(([s,n])=>{if(e[s]==null||e[s]==="")e[s]=n});let r=e.message||e.Message||"UnknownError";return e.message=r,delete e.Message,e},Hs=({output:e,parsedBody:t,exceptionCtor:r,errorCode:s})=>{let n=Xa(e),o=n.httpStatusCode?n.httpStatusCode+"":void 0,i=new r({name:t?.code||t?.Code||s||o||"UnknownError",$fault:"client",$metadata:n});throw Fs(i,t)},Qa=(e)=>{return({output:t,parsedBody:r,errorCode:s})=>{Hs({output:t,parsedBody:r,exceptionCtor:e,errorCode:s})}},Xa=(e)=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),Za=(e)=>{switch(e){case"standard":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"mobile":return{retryMode:"standard",connectionTimeout:30000};default:return{}}},Ns=!1,Ga=(e)=>{if(e&&!Ns&&parseInt(e.substring(1,e.indexOf(".")))<16)Ns=!0},zs=Object.values(We.AlgorithmId),Va=(e)=>{let t=[];for(let r in We.AlgorithmId){let s=We.AlgorithmId[r];if(e[s]===void 0)continue;t.push({algorithmId:()=>s,checksumConstructor:()=>e[s]})}for(let[r,s]of Object.entries(e.checksumAlgorithms??{}))t.push({algorithmId:()=>r,checksumConstructor:()=>s});return{addChecksumAlgorithm(r){e.checksumAlgorithms=e.checksumAlgorithms??{};let s=r.algorithmId(),n=r.checksumConstructor();if(zs.includes(s))e.checksumAlgorithms[s.toUpperCase()]=n;else e.checksumAlgorithms[s]=n;t.push(r)},checksumAlgorithms(){return t}}},Ka=(e)=>{let t={};return e.checksumAlgorithms().forEach((r)=>{let s=r.algorithmId();if(zs.includes(s))t[s]=r.checksumConstructor()}),t},ef=(e)=>{return{setRetryStrategy(t){e.retryStrategy=t},retryStrategy(){return e.retryStrategy}}},tf=(e)=>{let t={};return t.retryStrategy=e.retryStrategy(),t},Ws=(e)=>{return Object.assign(Va(e),ef(e))},rf=Ws,sf=(e)=>{return Object.assign(Ka(e),tf(e))},nf=(e)=>Array.isArray(e)?e:[e],ks=(e)=>{for(let r in e)if(e.hasOwnProperty(r)&&e[r]["#text"]!==void 0)e[r]=e[r]["#text"];else if(typeof e[r]==="object"&&e[r]!==null)e[r]=ks(e[r]);return e},of=(e)=>{return e!=null};class Js{trace(){}debug(){}info(){}warn(){}error(){}}function vs(e,t,r){let s,n,o;if(typeof t>"u"&&typeof r>"u")s={},o=e;else if(s=e,typeof t==="function")return n=t,o=r,ff(s,n,o);else o=t;for(let i of Object.keys(o)){if(!Array.isArray(o[i])){s[i]=o[i];continue}Ys(s,null,o,i)}return s}var cf=(e)=>{let t={};for(let[r,s]of Object.entries(e||{}))t[r]=[,s];return t},af=(e,t)=>{let r={};for(let s in t)Ys(r,e,t,s);return r},ff=(e,t,r)=>{return vs(e,Object.entries(r).reduce((s,[n,o])=>{if(Array.isArray(o))s[n]=o;else if(typeof o==="function")s[n]=[t,o()];else s[n]=[t,o];return s},{}))},Ys=(e,t,r,s)=>{if(t!==null){let i=r[s];if(typeof i==="function")i=[,i];let[c=uf,a=hf,l=s]=i;if(typeof c==="function"&&c(t[l])||typeof c!=="function"&&!!c)e[s]=a(t[l]);return}let[n,o]=r[s];if(typeof o==="function"){let i,c=n===void 0&&(i=o())!=null,a=typeof n==="function"&&!!n(void 0)||typeof n!=="function"&&!!n;if(c)e[s]=i;else if(a)e[s]=o()}else{let i=n===void 0&&o!=null,c=typeof n==="function"&&!!n(o)||typeof n!=="function"&&!!n;if(i||c)e[s]=o}},uf=(e)=>e!=null,hf=(e)=>e,df=(e)=>{if(e!==e)return"NaN";switch(e){case 1/0:return"Infinity";case-1/0:return"-Infinity";default:return e}},lf=(e)=>e.toISOString().replace(".000Z","Z"),$t=(e)=>{if(e==null)return{};if(Array.isArray(e))return e.filter((t)=>t!=null).map($t);if(typeof e==="object"){let t={};for(let r of Object.keys(e)){if(e[r]==null)continue;t[r]=$t(e[r])}return t}return e};he.collectBody=Ot.collectBody;he.extendedEncodeURIComponent=Ot.extendedEncodeURIComponent;he.resolvedPath=Ot.resolvedPath;he.Client=js;he.Command=Mt;he.NoOpLogger=Js;he.SENSITIVE_STRING=va;he.ServiceException=V;he._json=$t;he.convertMap=cf;he.createAggregatedClient=Ya;he.decorateServiceException=Fs;he.emitWarningIfUnsupportedVersion=Ga;he.getArrayIfSingleItem=nf;he.getDefaultClientConfiguration=rf;he.getDefaultExtensionConfiguration=Ws;he.getValueFromTextNode=ks;he.isSerializableHeaderValue=of;he.loadConfigsForDefaultMode=Za;he.map=vs;he.resolveDefaultRuntimeConfig=sf;he.serializeDateTime=lf;he.serializeFloat=df;he.take=af;he.throwDefaultError=Hs;he.withBaseException=Qa;Object.prototype.hasOwnProperty.call(ke,"__proto__")&&!Object.prototype.hasOwnProperty.call(he,"__proto__")&&Object.defineProperty(he,"__proto__",{enumerable:!0,value:ke.__proto__});Object.keys(ke).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(he,e))he[e]=ke[e]})});
|
|
18
|
+
`)},ae={warn:console.warn},fc=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],lt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function uc(e){let t=e.getUTCFullYear(),r=e.getUTCMonth(),s=e.getUTCDay(),n=e.getUTCDate(),o=e.getUTCHours(),i=e.getUTCMinutes(),c=e.getUTCSeconds(),a=n<10?`0${n}`:`${n}`,l=o<10?`0${o}`:`${o}`,d=i<10?`0${i}`:`${i}`,f=c<10?`0${c}`:`${c}`;return`${fc[s]}, ${a} ${lt[r]} ${t} ${l}:${d}:${f} GMT`}var hc=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),dc=(e)=>{if(e===null||e===void 0)return;if(typeof e!=="string")throw TypeError("RFC-3339 date-times must be expressed as strings");let t=hc.exec(e);if(!t)throw TypeError("Invalid RFC-3339 date-time value");let[r,s,n,o,i,c,a,l]=t,d=Q(X(s)),f=L(n,"month",1,12),u=L(o,"day",1,31);return oe(d,f,u,{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l})},lc=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),pc=(e)=>{if(e===null||e===void 0)return;if(typeof e!=="string")throw TypeError("RFC-3339 date-times must be expressed as strings");let t=lc.exec(e);if(!t)throw TypeError("Invalid RFC-3339 date-time value");let[r,s,n,o,i,c,a,l,d]=t,f=Q(X(s)),u=L(n,"month",1,12),h=L(o,"day",1,31),p=oe(f,u,h,{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l});if(d.toUpperCase()!="Z")p.setTime(p.getTime()-Mc(d));return p},mc=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),yc=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),bc=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),wc=(e)=>{if(e===null||e===void 0)return;if(typeof e!=="string")throw TypeError("RFC-7231 date-times must be expressed as strings");let t=mc.exec(e);if(t){let[r,s,n,o,i,c,a,l]=t;return oe(Q(X(o)),it(n),L(s,"day",1,31),{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l})}if(t=yc.exec(e),t){let[r,s,n,o,i,c,a,l]=t;return Ec(oe(_c(o),it(n),L(s,"day",1,31),{hours:i,minutes:c,seconds:a,fractionalMilliseconds:l}))}if(t=bc.exec(e),t){let[r,s,n,o,i,c,a,l]=t;return oe(Q(X(l)),it(s),L(n.trimLeft(),"day",1,31),{hours:o,minutes:i,seconds:c,fractionalMilliseconds:a})}throw TypeError("Invalid RFC-7231 date-time value")},gc=(e)=>{if(e===null||e===void 0)return;let t;if(typeof e==="number")t=e;else if(typeof e==="string")t=ht(e);else if(typeof e==="object"&&e.tag===1)t=e.value;else throw TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(t)||t===1/0||t===-1/0)throw TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(t*1000))},oe=(e,t,r,s)=>{let n=t-1;return xc(e,n,r),new Date(Date.UTC(e,n,r,L(s.hours,"hour",0,23),L(s.minutes,"minute",0,59),L(s.seconds,"seconds",0,60),Oc(s.fractionalMilliseconds)))},_c=(e)=>{let t=new Date().getUTCFullYear(),r=Math.floor(t/100)*100+Q(X(e));if(r<t)return r+100;return r},Tc=1576800000000,Ec=(e)=>{if(e.getTime()-new Date().getTime()>Tc)return new Date(Date.UTC(e.getUTCFullYear()-100,e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds()));return e},it=(e)=>{let t=lt.indexOf(e);if(t<0)throw TypeError(`Invalid month: ${e}`);return t+1},Sc=[31,28,31,30,31,30,31,31,30,31,30,31],xc=(e,t,r)=>{let s=Sc[t];if(t===1&&$c(e))s=29;if(r>s)throw TypeError(`Invalid day for ${lt[t]} in ${e}: ${r}`)},$c=(e)=>{return e%4===0&&(e%100!==0||e%400===0)},L=(e,t,r,s)=>{let n=Ms(X(e));if(n<r||n>s)throw TypeError(`${t} must be between ${r} and ${s}, inclusive`);return n},Oc=(e)=>{if(e===null||e===void 0)return 0;return xs("0."+e)*1000},Mc=(e)=>{let t=e[0],r=1;if(t=="+")r=1;else if(t=="-")r=-1;else throw TypeError(`Offset direction, ${t}, must be "+" or "-"`);let s=Number(e.substring(1,3)),n=Number(e.substring(4,6));return r*(s*60+n)*60*1000},X=(e)=>{let t=0;while(t<e.length-1&&e.charAt(t)==="0")t++;if(t===0)return e;return e.slice(t)},J=function(t){return Object.assign(new String(t),{deserializeJSON(){return JSON.parse(String(t))},toString(){return String(t)},toJSON(){return String(t)}})};J.from=(e)=>{if(e&&typeof e==="object"&&(e instanceof J||("deserializeJSON"in e)))return e;else if(typeof e==="string"||Object.getPrototypeOf(e)===String.prototype)return J(String(e));return J(JSON.stringify(e))};J.fromObject=J.from;function Pc(e){if(e.includes(",")||e.includes('"'))e=`"${e.replace(/"/g,"\\\"")}"`;return e}var pt="(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?",mt="(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)",yt="(\\d?\\d):(\\d{2}):(\\d{2})(?:\\.(\\d+))?",Ps="(\\d?\\d)",As="(\\d{4})",Ac=new RegExp(/^(\d{4})-(\d\d)-(\d\d)[tT](\d\d):(\d\d):(\d\d)(\.(\d+))?(([-+]\d\d:\d\d)|[zZ])$/),Rc=new RegExp(`^${pt}, ${Ps} ${mt} ${As} ${yt} GMT$`),Uc=new RegExp(`^${pt}, ${Ps}-${mt}-(\\d\\d) ${yt} GMT$`),Ic=new RegExp(`^${pt} ${mt} ( [1-9]|\\d\\d) ${yt} ${As}$`),Dc=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Bc=(e)=>{if(e==null)return;let t=NaN;if(typeof e==="number")t=e;else if(typeof e==="string"){if(!/^-?\d*\.?\d+$/.test(e))throw TypeError("parseEpochTimestamp - numeric string invalid.");t=Number.parseFloat(e)}else if(typeof e==="object"&&e.tag===1)t=e.value;if(isNaN(t)||Math.abs(t)===1/0)throw TypeError("Epoch timestamps must be valid finite numbers.");return new Date(Math.round(t*1000))},Lc=(e)=>{if(e==null)return;if(typeof e!=="string")throw TypeError("RFC3339 timestamps must be strings");let t=Ac.exec(e);if(!t)throw TypeError(`Invalid RFC3339 timestamp format ${e}`);let[,r,s,n,o,i,c,,a,l]=t;H(s,1,12),H(n,1,31),H(o,0,23),H(i,0,59),H(c,0,60);let d=new Date(Date.UTC(Number(r),Number(s)-1,Number(n),Number(o),Number(i),Number(c),Number(a)?Math.round(parseFloat(`0.${a}`)*1000):0));if(d.setUTCFullYear(Number(r)),l.toUpperCase()!="Z"){let[,f,u,h]=/([+-])(\d\d):(\d\d)/.exec(l)||[void 0,"+",0,0],p=f==="-"?1:-1;d.setTime(d.getTime()+p*(Number(u)*60*60*1000+Number(h)*60*1000))}return d},Nc=(e)=>{if(e==null)return;if(typeof e!=="string")throw TypeError("RFC7231 timestamps must be strings.");let t,r,s,n,o,i,c,a;if(a=Rc.exec(e))[,t,r,s,n,o,i,c]=a;else if(a=Uc.exec(e))[,t,r,s,n,o,i,c]=a,s=(Number(s)+1900).toString();else if(a=Ic.exec(e))[,r,t,n,o,i,c,s]=a;if(s&&i){let l=Date.UTC(Number(s),Dc.indexOf(r),Number(t),Number(n),Number(o),Number(i),c?Math.round(parseFloat(`0.${c}`)*1000):0);H(t,1,31),H(n,0,23),H(o,0,59),H(i,0,60);let d=new Date(l);return d.setUTCFullYear(Number(s)),d}throw TypeError(`Invalid RFC7231 date-time value ${e}.`)};function H(e,t,r){let s=Number(e);if(s<t||s>r)throw Error(`Value ${s} out of range [${t}, ${r}]`)}function qc(e,t,r){if(r<=0||!Number.isInteger(r))throw Error("Invalid number of delimiters ("+r+") for splitEvery.");let s=e.split(t);if(r===1)return s;let n=[],o="";for(let i=0;i<s.length;i++){if(o==="")o=s[i];else o+=t+s[i];if((i+1)%r===0)n.push(o),o=""}if(o!=="")n.push(o);return n}var jc=(e)=>{let t=e.length,r=[],s=!1,n=void 0,o=0;for(let i=0;i<t;++i){let c=e[i];switch(c){case'"':if(n!=="\\")s=!s;break;case",":if(!s)r.push(e.slice(o,i)),o=i+1;break}n=c}return r.push(e.slice(o)),r.map((i)=>{i=i.trim();let c=i.length;if(c<2)return i;if(i[0]==='"'&&i[c-1]==='"')i=i.slice(1,c-1);return i.replace(/\\"/g,'"')})},Es=/^-?\d*(\.\d+)?$/;class Ce{string;type;constructor(e,t){if(this.string=e,this.type=t,!Es.test(e))throw Error('@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point ".", and an optional negation prefix "-".')}toString(){return this.string}static[Symbol.hasInstance](e){if(!e||typeof e!=="object")return!1;let t=e;return Ce.prototype.isPrototypeOf(e)||t.type==="bigDecimal"&&Es.test(t.string)}}function Cc(e){return new Ce(String(e),"bigDecimal")}Fc.generateIdempotencyToken=vi.v4;Fc.LazyJsonString=J;Fc.NumericValue=Ce;Fc._parseEpochTimestamp=Bc;Fc._parseRfc3339DateTimeWithOffset=Lc;Fc._parseRfc7231DateTime=Nc;Fc.copyDocumentWithTransform=Yi;Fc.dateToUtcString=uc;Fc.expectBoolean=Xi;Fc.expectByte=ft;Fc.expectFloat32=qe;Fc.expectInt=Gi;Fc.expectInt32=ct;Fc.expectLong=ce;Fc.expectNonNull=Ki;Fc.expectNumber=ie;Fc.expectObject=Ss;Fc.expectShort=at;Fc.expectString=ec;Fc.expectUnion=tc;Fc.handleFloat=nc;Fc.limitedParseDouble=dt;Fc.limitedParseFloat=oc;Fc.limitedParseFloat32=ic;Fc.logger=ae;Fc.nv=Cc;Fc.parseBoolean=Qi;Fc.parseEpochTimestamp=gc;Fc.parseRfc3339DateTime=dc;Fc.parseRfc3339DateTimeWithOffset=pc;Fc.parseRfc7231DateTime=wc;Fc.quoteHeader=Pc;Fc.splitEvery=qc;Fc.splitHeader=jc;Fc.strictParseByte=Ms;Fc.strictParseDouble=ht;Fc.strictParseFloat=rc;Fc.strictParseFloat32=xs;Fc.strictParseInt=cc;Fc.strictParseInt32=ac;Fc.strictParseLong=Os;Fc.strictParseShort=Q});var Ls=_((Ra)=>{var Fe=ms(),R=Qe(),U=bt(),fe=ye(),He=k(),wt=Te(),v=async(e=new Uint8Array,t)=>{if(e instanceof Uint8Array)return Fe.Uint8ArrayBlobAdapter.mutate(e);if(!e)return Fe.Uint8ArrayBlobAdapter.mutate(new Uint8Array);let r=t.streamCollector(e);return Fe.Uint8ArrayBlobAdapter.mutate(await r)};function ue(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}class G{serdeContext;setSerdeContext(e){this.serdeContext=e}}class ze extends G{options;compositeErrorRegistry;constructor(e){super();this.options=e,this.compositeErrorRegistry=R.TypeRegistry.for(e.defaultNamespace);for(let t of e.errorTypeRegistries??[])this.compositeErrorRegistry.copyFrom(t)}getRequestType(){return fe.HttpRequest}getResponseType(){return fe.HttpResponse}setSerdeContext(e){if(this.serdeContext=e,this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e),this.getPayloadCodec())this.getPayloadCodec().setSerdeContext(e)}updateServiceEndpoint(e,t){if("url"in t){if(e.protocol=t.url.protocol,e.hostname=t.url.hostname,e.port=t.url.port?Number(t.url.port):void 0,e.path=t.url.pathname,e.fragment=t.url.hash||void 0,e.username=t.url.username||void 0,e.password=t.url.password||void 0,!e.query)e.query={};for(let[r,s]of t.url.searchParams.entries())e.query[r]=s;if(t.headers)for(let[r,s]of Object.entries(t.headers))e.headers[r]=s.join(", ");return e}else{if(e.protocol=t.protocol,e.hostname=t.hostname,e.port=t.port?Number(t.port):void 0,e.path=t.path,e.query={...t.query},t.headers)for(let[r,s]of Object.entries(t.headers))e.headers[r]=s;return e}}setHostPrefix(e,t,r){if(this.serdeContext?.disableHostPrefix)return;let s=R.NormalizedSchema.of(t.input),n=R.translateTraits(t.traits??{});if(n.endpoint){let o=n.endpoint?.[0];if(typeof o==="string"){let i=[...s.structIterator()].filter(([,c])=>c.getMergedTraits().hostLabel);for(let[c]of i){let a=r[c];if(typeof a!=="string")throw Error(`@smithy/core/schema - ${c} in input must be a string as hostLabel.`);o=o.replace(`{${c}}`,a)}e.hostname=o+e.hostname}}}deserializeMetadata(e){return{httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}}async serializeEventStream({eventStream:e,requestSchema:t,initialRequest:r}){return(await this.loadEventStreamCapability()).serializeEventStream({eventStream:e,requestSchema:t,initialRequest:r})}async deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:r}){return(await this.loadEventStreamCapability()).deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:r})}async loadEventStreamCapability(){let{EventStreamSerde:e}=await import("./chunk-nbmzs80j.js");return new e({marshaller:this.getEventStreamMarshaller(),serializer:this.serializer,deserializer:this.deserializer,serdeContext:this.serdeContext,defaultContentType:this.getDefaultContentType()})}getDefaultContentType(){throw Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`)}async deserializeHttpMessage(e,t,r,s,n){return[]}getEventStreamMarshaller(){let e=this.serdeContext;if(!e.eventStreamMarshaller)throw Error("@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.");return e.eventStreamMarshaller}}class Rs extends ze{async serializeRequest(e,t,r){let s={...t??{}},n=this.serializer,o={},i={},c=await r.endpoint(),a=R.NormalizedSchema.of(e?.input),l=[],d=[],f=!1,u,h=new fe.HttpRequest({protocol:"",hostname:"",port:void 0,path:"",fragment:void 0,query:o,headers:i,body:void 0});if(c){this.updateServiceEndpoint(h,c),this.setHostPrefix(h,e,s);let p=R.translateTraits(e.traits);if(p.http){h.method=p.http[0];let[b,y]=p.http[1].split("?");if(h.path=="/")h.path=b;else h.path+=b;let m=new URLSearchParams(y??"");Object.assign(o,Object.fromEntries(m))}}for(let[p,b]of a.structIterator()){let y=b.getMergedTraits()??{},m=s[p];if(m==null&&!b.isIdempotencyToken()){if(y.httpLabel){if(h.path.includes(`{${p}+}`)||h.path.includes(`{${p}}`))throw Error(`No value provided for input HTTP label: ${p}.`)}continue}if(y.httpPayload){if(b.isStreaming())if(b.isStructSchema()){if(s[p])u=await this.serializeEventStream({eventStream:s[p],requestSchema:a})}else u=m;else n.write(b,m),u=n.flush();delete s[p]}else if(y.httpLabel){n.write(b,m);let w=n.flush();if(h.path.includes(`{${p}+}`))h.path=h.path.replace(`{${p}+}`,w.split("/").map(ue).join("/"));else if(h.path.includes(`{${p}}`))h.path=h.path.replace(`{${p}}`,ue(w));delete s[p]}else if(y.httpHeader)n.write(b,m),i[y.httpHeader.toLowerCase()]=String(n.flush()),delete s[p];else if(typeof y.httpPrefixHeaders==="string"){for(let[w,S]of Object.entries(m)){let g=y.httpPrefixHeaders+w;n.write([b.getValueSchema(),{httpHeader:g}],S),i[g.toLowerCase()]=n.flush()}delete s[p]}else if(y.httpQuery||y.httpQueryParams)this.serializeQuery(b,m,o),delete s[p];else f=!0,l.push(p),d.push(b)}if(f&&s){let[p,b]=(a.getName(!0)??"#Unknown").split("#"),y=a.getSchema()[6],m=[3,p,b,a.getMergedTraits(),l,d,void 0];if(y)m[6]=y;else m.pop();n.write(m,s),u=n.flush()}return h.headers=i,h.query=o,h.body=u,h}serializeQuery(e,t,r){let s=this.serializer,n=e.getMergedTraits();if(n.httpQueryParams){for(let[o,i]of Object.entries(t))if(!(o in r)){let c=e.getValueSchema();Object.assign(c.getMergedTraits(),{...n,httpQuery:o,httpQueryParams:void 0}),this.serializeQuery(c,i,r)}return}if(e.isListSchema()){let o=!!e.getMergedTraits().sparse,i=[];for(let c of t){s.write([e.getValueSchema(),n],c);let a=s.flush();if(o||a!==void 0)i.push(a)}r[n.httpQuery]=i}else s.write([e,n],t),r[n.httpQuery]=s.flush()}async deserializeResponse(e,t,r){let s=this.deserializer,n=R.NormalizedSchema.of(e.output),o={};if(r.statusCode>=300){let c=await v(r.body,t);if(c.byteLength>0)Object.assign(o,await s.read(15,c));throw await this.handleError(e,t,r,o,this.deserializeMetadata(r)),Error("@smithy/core/protocols - HTTP Protocol error handler failed to throw.")}for(let c in r.headers){let a=r.headers[c];delete r.headers[c],r.headers[c.toLowerCase()]=a}let i=await this.deserializeHttpMessage(n,t,r,o);if(i.length){let c=await v(r.body,t);if(c.byteLength>0){let a=await s.read(n,c);for(let l of i)if(a[l]!=null)o[l]=a[l]}}else if(i.discardResponseBody)await v(r.body,t);return o.$metadata=this.deserializeMetadata(r),o}async deserializeHttpMessage(e,t,r,s,n){let o;if(s instanceof Set)o=n;else o=s;let i=!0,c=this.deserializer,a=R.NormalizedSchema.of(e),l=[];for(let[d,f]of a.structIterator()){let u=f.getMemberTraits();if(u.httpPayload){if(i=!1,f.isStreaming())if(f.isStructSchema())o[d]=await this.deserializeEventStream({response:r,responseSchema:a});else o[d]=Fe.sdkStreamMixin(r.body);else if(r.body){let p=await v(r.body,t);if(p.byteLength>0)o[d]=await c.read(f,p)}}else if(u.httpHeader){let h=String(u.httpHeader).toLowerCase(),p=r.headers[h];if(p!=null)if(f.isListSchema()){let b=f.getValueSchema();b.getMergedTraits().httpHeader=h;let y;if(b.isTimestampSchema()&&b.getSchema()===4)y=U.splitEvery(p,",",2);else y=U.splitHeader(p);let m=[];for(let w of y)m.push(await c.read(b,w.trim()));o[d]=m}else o[d]=await c.read(f,p)}else if(u.httpPrefixHeaders!==void 0){o[d]={};for(let[h,p]of Object.entries(r.headers))if(h.startsWith(u.httpPrefixHeaders)){let b=f.getValueSchema();b.getMergedTraits().httpHeader=h,o[d][h.slice(u.httpPrefixHeaders.length)]=await c.read(b,p)}}else if(u.httpResponseCode)o[d]=r.statusCode;else l.push(d)}return l.discardResponseBody=i,l}}class Us extends ze{async serializeRequest(e,t,r){let s=this.serializer,n={},o={},i=await r.endpoint(),c=R.NormalizedSchema.of(e?.input),a=c.getSchema(),l,d=new fe.HttpRequest({protocol:"",hostname:"",port:void 0,path:"/",fragment:void 0,query:n,headers:o,body:void 0});if(i)this.updateServiceEndpoint(d,i),this.setHostPrefix(d,e,t);let f={...t};if(t){let u=c.getEventStreamMember();if(u){if(f[u]){let h={};for(let[p,b]of c.structIterator())if(p!==u&&f[p])s.write(b,f[p]),h[p]=s.flush();l=await this.serializeEventStream({eventStream:f[u],requestSchema:c,initialRequest:h})}}else s.write(a,f),l=s.flush()}return d.headers=Object.assign(d.headers,o),d.query=n,d.body=l,d.method="POST",d}async deserializeResponse(e,t,r){let s=this.deserializer,n=R.NormalizedSchema.of(e.output),o={};if(r.statusCode>=300){let c=await v(r.body,t);if(c.byteLength>0)Object.assign(o,await s.read(15,c));throw await this.handleError(e,t,r,o,this.deserializeMetadata(r)),Error("@smithy/core/protocols - RPC Protocol error handler failed to throw.")}for(let c in r.headers){let a=r.headers[c];delete r.headers[c],r.headers[c.toLowerCase()]=a}let i=n.getEventStreamMember();if(i)o[i]=await this.deserializeEventStream({response:r,responseSchema:n,initialResponseContainer:o});else{let c=await v(r.body,t);if(c.byteLength>0)Object.assign(o,await s.read(n,c))}return o.$metadata=this.deserializeMetadata(r),o}}var Is=(e,t,r,s,n,o)=>{if(t!=null&&t[r]!==void 0){let i=s();if(i==null||i.length<=0)throw Error("Empty value provided for input HTTP label: "+r+".");e=e.replace(n,o?i.split("/").map((c)=>ue(c)).join("/"):ue(i))}else throw Error("No value provided for input HTTP label: "+r+".");return e};function Aa(e,t){return new gt(e,t)}class gt{input;context;query={};method="";headers={};path="";body=null;hostname="";resolvePathStack=[];constructor(e,t){this.input=e,this.context=t}async build(){let{hostname:e,protocol:t="https",port:r,path:s}=await this.context.endpoint();this.path=s;for(let n of this.resolvePathStack)n(this.path);return new fe.HttpRequest({protocol:t,hostname:this.hostname||e,port:r,method:this.method,path:this.path,query:this.query,body:this.body,headers:this.headers})}hn(e){return this.hostname=e,this}bp(e){return this.resolvePathStack.push((t)=>{this.path=`${t?.endsWith("/")?t.slice(0,-1):t||""}`+e}),this}p(e,t,r,s){return this.resolvePathStack.push((n)=>{this.path=Is(n,this.input,e,t,r,s)}),this}h(e){return this.headers=e,this}q(e){return this.query=e,this}b(e){return this.body=e,this}m(e){return this.method=e,this}}function _t(e,t){if(t.timestampFormat.useTrait){if(e.isTimestampSchema()&&(e.getSchema()===5||e.getSchema()===6||e.getSchema()===7))return e.getSchema()}let{httpLabel:r,httpPrefixHeaders:s,httpHeader:n,httpQuery:o}=e.getMergedTraits();return(t.httpBindings?typeof s==="string"||Boolean(n)?6:Boolean(o)||Boolean(r)?5:void 0:void 0)??t.timestampFormat.default}class Tt extends G{settings;constructor(e){super();this.settings=e}read(e,t){let r=R.NormalizedSchema.of(e);if(r.isListSchema())return U.splitHeader(t).map((s)=>this.read(r.getValueSchema(),s));if(r.isBlobSchema())return(this.serdeContext?.base64Decoder??He.fromBase64)(t);if(r.isTimestampSchema())switch(_t(r,this.settings)){case 5:return U._parseRfc3339DateTimeWithOffset(t);case 6:return U._parseRfc7231DateTime(t);case 7:return U._parseEpochTimestamp(t);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",t),new Date(t)}if(r.isStringSchema()){let s=r.getMergedTraits().mediaType,n=t;if(s){if(r.getMergedTraits().httpHeader)n=this.base64ToUtf8(n);if(s==="application/json"||s.endsWith("+json"))n=U.LazyJsonString.from(n);return n}}if(r.isNumericSchema())return Number(t);if(r.isBigIntegerSchema())return BigInt(t);if(r.isBigDecimalSchema())return new U.NumericValue(t,"bigDecimal");if(r.isBooleanSchema())return String(t).toLowerCase()==="true";return t}base64ToUtf8(e){return(this.serdeContext?.utf8Encoder??wt.toUtf8)((this.serdeContext?.base64Decoder??He.fromBase64)(e))}}class Ds extends G{codecDeserializer;stringDeserializer;constructor(e,t){super();this.codecDeserializer=e,this.stringDeserializer=new Tt(t)}setSerdeContext(e){this.stringDeserializer.setSerdeContext(e),this.codecDeserializer.setSerdeContext(e),this.serdeContext=e}read(e,t){let r=R.NormalizedSchema.of(e),s=r.getMergedTraits(),n=this.serdeContext?.utf8Encoder??wt.toUtf8;if(s.httpHeader||s.httpResponseCode)return this.stringDeserializer.read(r,n(t));if(s.httpPayload){if(r.isBlobSchema()){let o=this.serdeContext?.utf8Decoder??wt.fromUtf8;if(typeof t==="string")return o(t);return t}else if(r.isStringSchema()){if("byteLength"in t)return n(t);return t}}return this.codecDeserializer.read(r,t)}}class Et extends G{settings;stringBuffer="";constructor(e){super();this.settings=e}write(e,t){let r=R.NormalizedSchema.of(e);switch(typeof t){case"object":if(t===null){this.stringBuffer="null";return}if(r.isTimestampSchema()){if(!(t instanceof Date))throw Error(`@smithy/core/protocols - received non-Date value ${t} when schema expected Date in ${r.getName(!0)}`);switch(_t(r,this.settings)){case 5:this.stringBuffer=t.toISOString().replace(".000Z","Z");break;case 6:this.stringBuffer=U.dateToUtcString(t);break;case 7:this.stringBuffer=String(t.getTime()/1000);break;default:console.warn("Missing timestamp format, using epoch seconds",t),this.stringBuffer=String(t.getTime()/1000)}return}if(r.isBlobSchema()&&"byteLength"in t){this.stringBuffer=(this.serdeContext?.base64Encoder??He.toBase64)(t);return}if(r.isListSchema()&&Array.isArray(t)){let o="";for(let i of t){this.write([r.getValueSchema(),r.getMergedTraits()],i);let c=this.flush(),a=r.getValueSchema().isTimestampSchema()?c:U.quoteHeader(c);if(o!=="")o+=", ";o+=a}this.stringBuffer=o;return}this.stringBuffer=JSON.stringify(t,null,2);break;case"string":let s=r.getMergedTraits().mediaType,n=t;if(s){if(s==="application/json"||s.endsWith("+json"))n=U.LazyJsonString.from(n);if(r.getMergedTraits().httpHeader){this.stringBuffer=(this.serdeContext?.base64Encoder??He.toBase64)(n.toString());return}}this.stringBuffer=t;break;default:if(r.isIdempotencyToken())this.stringBuffer=U.generateIdempotencyToken();else this.stringBuffer=String(t)}}flush(){let e=this.stringBuffer;return this.stringBuffer="",e}}class Bs{codecSerializer;stringSerializer;buffer;constructor(e,t,r=new Et(t)){this.codecSerializer=e,this.stringSerializer=r}setSerdeContext(e){this.codecSerializer.setSerdeContext(e),this.stringSerializer.setSerdeContext(e)}write(e,t){let r=R.NormalizedSchema.of(e),s=r.getMergedTraits();if(s.httpHeader||s.httpLabel||s.httpQuery){this.stringSerializer.write(r,t),this.buffer=this.stringSerializer.flush();return}return this.codecSerializer.write(r,t)}flush(){if(this.buffer!==void 0){let e=this.buffer;return this.buffer=void 0,e}return this.codecSerializer.flush()}}Ra.FromStringShapeDeserializer=Tt;Ra.HttpBindingProtocol=Rs;Ra.HttpInterceptingShapeDeserializer=Ds;Ra.HttpInterceptingShapeSerializer=Bs;Ra.HttpProtocol=ze;Ra.RequestBuilder=gt;Ra.RpcProtocol=Us;Ra.SerdeContext=G;Ra.ToStringShapeSerializer=Et;Ra.collectBody=v;Ra.determineTimestampFormat=_t;Ra.extendedEncodeURIComponent=ue;Ra.requestBuilder=Aa;Ra.resolvedPath=Is});var Ff=_((he)=>{var qs=Ct(),Ot=Ls(),We=At(),Ja=Qe(),ke=bt();class js{config;middlewareStack=qs.constructStack();initConfig;handlers;constructor(e){this.config=e;let{protocol:t,protocolSettings:r}=e;if(r){if(typeof t==="function")e.protocol=new t(r)}}send(e,t,r){let s=typeof t!=="function"?t:void 0,n=typeof t==="function"?t:r,o=s===void 0&&this.config.cacheMiddleware===!0,i;if(o){if(!this.handlers)this.handlers=new WeakMap;let c=this.handlers;if(c.has(e.constructor))i=c.get(e.constructor);else i=e.resolveMiddleware(this.middlewareStack,this.config,s),c.set(e.constructor,i)}else delete this.handlers,i=e.resolveMiddleware(this.middlewareStack,this.config,s);if(n)i(e).then((c)=>n(null,c.output),(c)=>n(c)).catch(()=>{});else return i(e).then((c)=>c.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}var St="***SensitiveInformation***";function xt(e,t){if(t==null)return t;let r=Ja.NormalizedSchema.of(e);if(r.getMergedTraits().sensitive)return St;if(r.isListSchema()){if(!!r.getValueSchema().getMergedTraits().sensitive)return St}else if(r.isMapSchema()){if(!!r.getKeySchema().getMergedTraits().sensitive||!!r.getValueSchema().getMergedTraits().sensitive)return St}else if(r.isStructSchema()&&typeof t==="object"){let s=t,n={};for(let[o,i]of r.structIterator())if(s[o]!=null)n[o]=xt(i,s[o]);return n}return t}class Mt{middlewareStack=qs.constructStack();schema;static classBuilder(){return new Cs}resolveMiddlewareWithContext(e,t,r,{middlewareFn:s,clientName:n,commandName:o,inputFilterSensitiveLog:i,outputFilterSensitiveLog:c,smithyContext:a,additionalContext:l,CommandCtor:d}){for(let b of s.bind(this)(d,e,t,r))this.middlewareStack.use(b);let f=e.concat(this.middlewareStack),{logger:u}=t,h={logger:u,clientName:n,commandName:o,inputFilterSensitiveLog:i,outputFilterSensitiveLog:c,[We.SMITHY_CONTEXT_KEY]:{commandInstance:this,...a},...l},{requestHandler:p}=t;return f.resolve((b)=>p.handle(b.request,r||{}),h)}}class Cs{_init=()=>{};_ep={};_middlewareFn=()=>[];_commandName="";_clientName="";_additionalContext={};_smithyContext={};_inputFilterSensitiveLog=void 0;_outputFilterSensitiveLog=void 0;_serializer=null;_deserializer=null;_operationSchema;init(e){this._init=e}ep(e){return this._ep=e,this}m(e){return this._middlewareFn=e,this}s(e,t,r={}){return this._smithyContext={service:e,operation:t,...r},this}c(e={}){return this._additionalContext=e,this}n(e,t){return this._clientName=e,this._commandName=t,this}f(e=(r)=>r,t=(r)=>r){return this._inputFilterSensitiveLog=e,this._outputFilterSensitiveLog=t,this}ser(e){return this._serializer=e,this}de(e){return this._deserializer=e,this}sc(e){return this._operationSchema=e,this._smithyContext.operationSchema=e,this}build(){let e=this,t;return t=class extends Mt{input;static getEndpointParameterInstructions(){return e._ep}constructor(...[r]){super();this.input=r??{},e._init(this),this.schema=e._operationSchema}resolveMiddleware(r,s,n){let o=e._operationSchema,i=o?.[4]??o?.input,c=o?.[5]??o?.output;return this.resolveMiddlewareWithContext(r,s,n,{CommandCtor:t,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog??(o?xt.bind(null,i):(a)=>a),outputFilterSensitiveLog:e._outputFilterSensitiveLog??(o?xt.bind(null,c):(a)=>a),smithyContext:e._smithyContext,additionalContext:e._additionalContext})}serialize=e._serializer;deserialize=e._deserializer}}}var va="***SensitiveInformation***",Ya=(e,t,r)=>{for(let[o,i]of Object.entries(e)){let c=async function(l,d,f){let u=new i(l);if(typeof d==="function")this.send(u,d);else if(typeof f==="function"){if(typeof d!=="object")throw Error(`Expected http options but got ${typeof d}`);this.send(u,d||{},f)}else return this.send(u,d)},a=(o[0].toLowerCase()+o.slice(1)).replace(/Command$/,"");t.prototype[a]=c}let{paginators:s={},waiters:n={}}=r??{};for(let[o,i]of Object.entries(s))if(t.prototype[o]===void 0)t.prototype[o]=function(c={},a,...l){return i({...a,client:this},c,...l)};for(let[o,i]of Object.entries(n))if(t.prototype[o]===void 0)t.prototype[o]=async function(c={},a,...l){let d=a;if(typeof a==="number")d={maxWaitTime:a};return i({...d,client:this},c,...l)}};class V extends Error{$fault;$response;$retryable;$metadata;constructor(e){super(e.message);Object.setPrototypeOf(this,Object.getPrototypeOf(this).constructor.prototype),this.name=e.name,this.$fault=e.$fault,this.$metadata=e.$metadata}static isInstance(e){if(!e)return!1;let t=e;return V.prototype.isPrototypeOf(t)||Boolean(t.$fault)&&Boolean(t.$metadata)&&(t.$fault==="client"||t.$fault==="server")}static[Symbol.hasInstance](e){if(!e)return!1;let t=e;if(this===V)return V.isInstance(e);if(V.isInstance(e)){if(t.name&&this.name)return this.prototype.isPrototypeOf(e)||t.name===this.name;return this.prototype.isPrototypeOf(e)}return!1}}var Fs=(e,t={})=>{Object.entries(t).filter(([,s])=>s!==void 0).forEach(([s,n])=>{if(e[s]==null||e[s]==="")e[s]=n});let r=e.message||e.Message||"UnknownError";return e.message=r,delete e.Message,e},Hs=({output:e,parsedBody:t,exceptionCtor:r,errorCode:s})=>{let n=Xa(e),o=n.httpStatusCode?n.httpStatusCode+"":void 0,i=new r({name:t?.code||t?.Code||s||o||"UnknownError",$fault:"client",$metadata:n});throw Fs(i,t)},Qa=(e)=>{return({output:t,parsedBody:r,errorCode:s})=>{Hs({output:t,parsedBody:r,exceptionCtor:e,errorCode:s})}},Xa=(e)=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),Za=(e)=>{switch(e){case"standard":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"mobile":return{retryMode:"standard",connectionTimeout:30000};default:return{}}},Ns=!1,Ga=(e)=>{if(e&&!Ns&&parseInt(e.substring(1,e.indexOf(".")))<16)Ns=!0},zs=Object.values(We.AlgorithmId),Va=(e)=>{let t=[];for(let r in We.AlgorithmId){let s=We.AlgorithmId[r];if(e[s]===void 0)continue;t.push({algorithmId:()=>s,checksumConstructor:()=>e[s]})}for(let[r,s]of Object.entries(e.checksumAlgorithms??{}))t.push({algorithmId:()=>r,checksumConstructor:()=>s});return{addChecksumAlgorithm(r){e.checksumAlgorithms=e.checksumAlgorithms??{};let s=r.algorithmId(),n=r.checksumConstructor();if(zs.includes(s))e.checksumAlgorithms[s.toUpperCase()]=n;else e.checksumAlgorithms[s]=n;t.push(r)},checksumAlgorithms(){return t}}},Ka=(e)=>{let t={};return e.checksumAlgorithms().forEach((r)=>{let s=r.algorithmId();if(zs.includes(s))t[s]=r.checksumConstructor()}),t},ef=(e)=>{return{setRetryStrategy(t){e.retryStrategy=t},retryStrategy(){return e.retryStrategy}}},tf=(e)=>{let t={};return t.retryStrategy=e.retryStrategy(),t},Ws=(e)=>{return Object.assign(Va(e),ef(e))},rf=Ws,sf=(e)=>{return Object.assign(Ka(e),tf(e))},nf=(e)=>Array.isArray(e)?e:[e],ks=(e)=>{for(let r in e)if(e.hasOwnProperty(r)&&e[r]["#text"]!==void 0)e[r]=e[r]["#text"];else if(typeof e[r]==="object"&&e[r]!==null)e[r]=ks(e[r]);return e},of=(e)=>{return e!=null};class Js{trace(){}debug(){}info(){}warn(){}error(){}}function vs(e,t,r){let s,n,o;if(typeof t>"u"&&typeof r>"u")s={},o=e;else if(s=e,typeof t==="function")return n=t,o=r,ff(s,n,o);else o=t;for(let i of Object.keys(o)){if(!Array.isArray(o[i])){s[i]=o[i];continue}Ys(s,null,o,i)}return s}var cf=(e)=>{let t={};for(let[r,s]of Object.entries(e||{}))t[r]=[,s];return t},af=(e,t)=>{let r={};for(let s in t)Ys(r,e,t,s);return r},ff=(e,t,r)=>{return vs(e,Object.entries(r).reduce((s,[n,o])=>{if(Array.isArray(o))s[n]=o;else if(typeof o==="function")s[n]=[t,o()];else s[n]=[t,o];return s},{}))},Ys=(e,t,r,s)=>{if(t!==null){let i=r[s];if(typeof i==="function")i=[,i];let[c=uf,a=hf,l=s]=i;if(typeof c==="function"&&c(t[l])||typeof c!=="function"&&!!c)e[s]=a(t[l]);return}let[n,o]=r[s];if(typeof o==="function"){let i,c=n===void 0&&(i=o())!=null,a=typeof n==="function"&&!!n(void 0)||typeof n!=="function"&&!!n;if(c)e[s]=i;else if(a)e[s]=o()}else{let i=n===void 0&&o!=null,c=typeof n==="function"&&!!n(o)||typeof n!=="function"&&!!n;if(i||c)e[s]=o}},uf=(e)=>e!=null,hf=(e)=>e,df=(e)=>{if(e!==e)return"NaN";switch(e){case 1/0:return"Infinity";case-1/0:return"-Infinity";default:return e}},lf=(e)=>e.toISOString().replace(".000Z","Z"),$t=(e)=>{if(e==null)return{};if(Array.isArray(e))return e.filter((t)=>t!=null).map($t);if(typeof e==="object"){let t={};for(let r of Object.keys(e)){if(e[r]==null)continue;t[r]=$t(e[r])}return t}return e};he.collectBody=Ot.collectBody;he.extendedEncodeURIComponent=Ot.extendedEncodeURIComponent;he.resolvedPath=Ot.resolvedPath;he.Client=js;he.Command=Mt;he.NoOpLogger=Js;he.SENSITIVE_STRING=va;he.ServiceException=V;he._json=$t;he.convertMap=cf;he.createAggregatedClient=Ya;he.decorateServiceException=Fs;he.emitWarningIfUnsupportedVersion=Ga;he.getArrayIfSingleItem=nf;he.getDefaultClientConfiguration=rf;he.getDefaultExtensionConfiguration=Ws;he.getValueFromTextNode=ks;he.isSerializableHeaderValue=of;he.loadConfigsForDefaultMode=Za;he.map=vs;he.resolveDefaultRuntimeConfig=sf;he.serializeDateTime=lf;he.serializeFloat=df;he.take=af;he.throwDefaultError=Hs;he.withBaseException=Qa;Object.prototype.hasOwnProperty.call(ke,"__proto__")&&!Object.prototype.hasOwnProperty.call(he,"__proto__")&&Object.defineProperty(he,"__proto__",{enumerable:!0,value:ke.__proto__});Object.keys(ke).forEach(function(e){if(e!=="default"&&!Object.prototype.hasOwnProperty.call(he,e))he[e]=ke[e]})});
|
|
19
19
|
export{Rt as E,k as F,Rr as G,Wr as H,Xr as I,ms as J,It as K,Qe as L,Ts as M,bt as N,Ls as O,Ff as P};
|
|
20
20
|
|
|
21
|
-
//# debugId=
|
|
21
|
+
//# debugId=6B7878182550948564756E2164756E21
|