@spiffcommerce/core 41.0.3-alpha.0 → 41.0.3-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2801,7 +2801,7 @@ Minimum version required to store current data is: `+X+`.
2801
2801
  `));return t(i)},PV={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"endpointV2Middleware"},RV=(r,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:t})=>({applyToStack:n=>{n.addRelativeTo(DV(r,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:t}),PV)}}),OV=r=>e=>{throw e},BV=(r,e)=>{},MV=r=>(e,t)=>async n=>{if(!aa.isInstance(n.request))return e(n);const a=Sc(t).selectedHttpAuthScheme;if(!a)throw new Error("No HttpAuthScheme was selected: unable to sign request");const{httpAuthOption:{signingProperties:s={}},identity:o,signer:l}=a,u=await e({...n,request:await l.sign(n.request,o,s)}).catch((l.errorHandler||OV)(s));return(l.successHandler||BV)(u.response,s),u},_V={step:"finalizeRequest",tags:["HTTP_SIGNING"],name:"httpSigningMiddleware",aliases:["apiKeyMiddleware","tokenMiddleware","awsAuthMiddleware"],override:!0,relation:"after",toMiddleware:"retryMiddleware"},NV=r=>({applyToStack:e=>{e.addRelativeTo(MV(),_V)}}),ld=r=>{if(typeof r=="function")return r;const e=Promise.resolve(r);return()=>e},OI="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",EE=Object.entries(OI).reduce((r,[e,t])=>(r[t]=Number(e),r),{}),LV=OI.split(""),Xu=6,ud=8,UV=63,nm=r=>{let e=r.length/4*3;r.slice(-2)==="=="?e-=2:r.slice(-1)==="="&&e--;const t=new ArrayBuffer(e),n=new DataView(t);for(let i=0;i<r.length;i+=4){let a=0,s=0;for(let u=i,c=i+3;u<=c;u++)if(r[u]!=="="){if(!(r[u]in EE))throw new TypeError(`Invalid character ${r[u]} in base64 string.`);a|=EE[r[u]]<<(c-u)*Xu,s+=Xu}else a>>=Xu;const o=i/4*3;a>>=s%ud;const l=Math.floor(s/ud);for(let u=0;u<l;u++){const c=(l-u-1)*ud;n.setUint8(o+u,(a&255<<c)>>c)}}return new Uint8Array(t)},Dl=r=>new TextEncoder().encode(r),Od=r=>typeof r=="string"?Dl(r):ArrayBuffer.isView(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(r),im=r=>{if(typeof r=="string")return r;if(typeof r!="object"||typeof r.byteOffset!="number"||typeof r.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return new TextDecoder("utf-8").decode(r)};function kg(r){let e;typeof r=="string"?e=Dl(r):e=r;const t=typeof e=="object"&&typeof e.length=="number",n=typeof e=="object"&&typeof e.byteOffset=="number"&&typeof e.byteLength=="number";if(!t&&!n)throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");let i="";for(let a=0;a<e.length;a+=3){let s=0,o=0;for(let u=a,c=Math.min(a+3,e.length);u<c;u++)s|=e[u]<<(c-u-1)*ud,o+=ud;const l=Math.ceil(o/Xu);s<<=l*Xu-o;for(let u=1;u<=l;u++){const c=(l-u)*Xu;i+=LV[(s&UV<<c)>>c]}i+="==".slice(0,4-l)}return i}class Sl extends Uint8Array{static fromString(e,t="utf-8"){if(typeof e=="string")return t==="base64"?Sl.mutate(nm(e)):Sl.mutate(Dl(e));throw new Error(`Unsupported conversion from ${typeof e} to Uint8ArrayBlobAdapter.`)}static mutate(e){return Object.setPrototypeOf(e,Sl.prototype),e}transformToString(e="utf-8"){return e==="base64"?kg(this):im(this)}}const El=r=>encodeURIComponent(r).replace(/[!'()*]/g,VV),VV=r=>`%${r.charCodeAt(0).toString(16).toUpperCase()}`;function zV(r){const e=[];for(let t of Object.keys(r).sort()){const n=r[t];if(t=El(t),Array.isArray(n))for(let i=0,a=n.length;i<a;i++)e.push(`${t}=${El(n[i])}`);else{let i=t;(n||typeof n=="string")&&(i+=`=${El(n)}`),e.push(i)}}return e.join("&")}function kE(r,e){return new Request(r,e)}function HV(r=0){return new Promise((e,t)=>{r&&setTimeout(()=>{const n=new Error(`Request did not complete within ${r} ms`);n.name="TimeoutError",t(n)},r)})}const Nv={supported:void 0};class _1{config;configProvider;static create(e){return typeof e?.handle=="function"?e:new _1(e)}constructor(e){typeof e=="function"?this.configProvider=e().then(t=>t||{}):(this.config=e??{},this.configProvider=Promise.resolve(this.config)),Nv.supported===void 0&&(Nv.supported=typeof Request<"u"&&"keepalive"in kE("https://[::1]"))}destroy(){}async handle(e,{abortSignal:t,requestTimeout:n}={}){this.config||(this.config=await this.configProvider);const i=n??this.config.requestTimeout,a=this.config.keepAlive===!0,s=this.config.credentials;if(t?.aborted){const C=FE(t);return Promise.reject(C)}let o=e.path;const l=zV(e.query||{});l&&(o+=`?${l}`),e.fragment&&(o+=`#${e.fragment}`);let u="";if(e.username!=null||e.password!=null){const C=e.username??"",k=e.password??"";u=`${C}:${k}@`}const{port:c,method:h}=e,f=`${e.protocol}//${u}${e.hostname}${c?`:${c}`:""}${o}`,d=h==="GET"||h==="HEAD"?void 0:e.body,g={body:d,headers:new Headers(e.headers),method:h,credentials:s};this.config?.cache&&(g.cache=this.config.cache),d&&(g.duplex="half"),typeof AbortController<"u"&&(g.signal=t),Nv.supported&&(g.keepalive=a),typeof this.config.requestInit=="function"&&Object.assign(g,this.config.requestInit(e));let v=()=>{};const y=kE(f,g),A=[fetch(y).then(C=>{const k=C.headers,T={};for(const R of k.entries())T[R[0]]=R[1];return C.body!=null?{response:new fc({headers:T,reason:C.statusText,statusCode:C.status,body:C.body})}:C.blob().then(R=>({response:new fc({headers:T,reason:C.statusText,statusCode:C.status,body:R})}))}),HV(i)];return t&&A.push(new Promise((C,k)=>{const T=()=>{const S=FE(t);k(S)};if(typeof t.addEventListener=="function"){const S=t;S.addEventListener("abort",T,{once:!0}),v=()=>S.removeEventListener("abort",T)}else t.onabort=T})),Promise.race(A).finally(v)}updateHttpClientConfig(e,t){this.config=void 0,this.configProvider=this.configProvider.then(n=>(n[e]=t,n))}httpHandlerConfigs(){return this.config??{}}}function FE(r){const e=r&&typeof r=="object"&&"reason"in r?r.reason:void 0;if(e){if(e instanceof Error){const i=new Error("Request aborted");return i.name="AbortError",i.cause=e,i}const n=new Error(String(e));return n.name="AbortError",n}const t=new Error("Request aborted");return t.name="AbortError",t}const jV=async r=>typeof Blob=="function"&&r instanceof Blob||r.constructor?.name==="Blob"?Blob.prototype.arrayBuffer!==void 0?new Uint8Array(await r.arrayBuffer()):GV(r):$V(r);async function GV(r){const e=await qV(r),t=nm(e);return new Uint8Array(t)}async function $V(r){const e=[],t=r.getReader();let n=!1,i=0;for(;!n;){const{done:o,value:l}=await t.read();l&&(e.push(l),i+=l.length),n=o}const a=new Uint8Array(i);let s=0;for(const o of e)a.set(o,s),s+=o.length;return a}function qV(r){return new Promise((e,t)=>{const n=new FileReader;n.onloadend=()=>{if(n.readyState!==2)return t(new Error("Reader aborted too early"));const i=n.result??"",a=i.indexOf(","),s=a>-1?a+1:i.length;e(i.substring(s))},n.onabort=()=>t(new Error("Read aborted")),n.onerror=()=>t(n.error),n.readAsDataURL(r)})}const BI={},pA={};for(let r=0;r<256;r++){let e=r.toString(16).toLowerCase();e.length===1&&(e=`0${e}`),BI[r]=e,pA[e]=r}function WV(r){if(r.length%2!==0)throw new Error("Hex encoded strings must have an even number length");const e=new Uint8Array(r.length/2);for(let t=0;t<r.length;t+=2){const n=r.slice(t,t+2).toLowerCase();if(n in pA)e[t/2]=pA[n];else throw new Error(`Cannot decode unrecognized sequence ${n} as hexadecimal`)}return e}function kl(r){let e="";for(let t=0;t<r.byteLength;t++)e+=BI[r[t]];return e}const gA=async(r=new Uint8Array,e)=>{if(r instanceof Uint8Array)return Sl.mutate(r);if(!r)return Sl.mutate(new Uint8Array);const t=e.streamCollector(r);return Sl.mutate(await t)},tg=r=>typeof r=="function"?r():r,MI=(r,e,t,n,i)=>({name:e,namespace:r,traits:t,input:n,output:i}),QV=r=>(e,t)=>async n=>{const{response:i}=await e(n),{operationSchema:a}=Sc(t),[,s,o,l,u,c]=a??[];try{const h=await r.protocol.deserializeResponse(MI(s,o,l,u,c),{...r,...t},i);return{response:i,output:h}}catch(h){if(Object.defineProperty(h,"$response",{value:i,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in h)){const f="Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.";try{h.message+=`
2802
2802
  `+f}catch{!t.logger||t.logger?.constructor?.name==="NoOpLogger"?console.warn(f):t.logger?.warn?.(f)}typeof h.$responseBodyText<"u"&&h.$response&&(h.$response.body=h.$responseBodyText);try{if(fc.isInstance(i)){const{headers:d={}}=i,g=Object.entries(d);h.$metadata={httpStatusCode:i.statusCode,requestId:Lv(/^x-[\w-]+-request-?id$/,g),extendedRequestId:Lv(/^x-[\w-]+-id-2$/,g),cfId:Lv(/^x-[\w-]+-cf-id$/,g)}}}catch{}}throw h}},Lv=(r,e)=>(e.find(([t])=>t.match(r))||[void 0,void 0])[1];function YV(r){const e={};if(r=r.replace(/^\?/,""),r)for(const t of r.split("&")){let[n,i=null]=t.split("=");n=decodeURIComponent(n),i&&(i=decodeURIComponent(i)),n in e?Array.isArray(e[n])?e[n].push(i):e[n]=[e[n],i]:e[n]=i}return e}const dc=r=>{if(typeof r=="string")return dc(new URL(r));const{hostname:e,pathname:t,port:n,protocol:i,search:a}=r;let s;return a&&(s=YV(a)),{hostname:e,port:n?parseInt(n):void 0,protocol:i,path:t,query:s}},XV=r=>{if(typeof r=="object"){if("url"in r){const e=dc(r.url);if(r.headers){e.headers={};for(const[t,n]of Object.entries(r.headers))e.headers[t.toLowerCase()]=n.join(", ")}return e}return r}return dc(r)},JV=r=>(e,t)=>async n=>{const{operationSchema:i}=Sc(t),[,a,s,o,l,u]=i??[],c=t.endpointV2?async()=>XV(t.endpointV2):r.endpoint,h=await r.protocol.serializeRequest(MI(a,s,o,l,u),n.input,{...r,...t,endpoint:c});return e({...n,request:h})},KV={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},ZV={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};function ez(r){return{applyToStack:e=>{e.add(JV(r),ZV),e.add(QV(r),KV),r.protocol.setSerdeContext(r)}}}const Uv=[];function Jf(r){if(typeof r=="object")return r;if(r=r|0,Uv[r])return Uv[r];const e={};let t=0;for(const n of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])(r>>t++&1)===1&&(e[n]=1);return Uv[r]=e}const Mf={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},Vv=[],zv={};class vi{ref;memberName;static symbol=Symbol.for("@smithy/nor");symbol=vi.symbol;name;schema;_isMemberSchema;traits;memberTraits;normalizedTraits;constructor(e,t){this.ref=e,this.memberName=t;const n=[];let i=e,a=e;for(this._isMemberSchema=!1;Hv(i);)n.push(i[1]),i=i[0],a=tg(i),this._isMemberSchema=!0;if(n.length>0){this.memberTraits={};for(let s=n.length-1;s>=0;--s){const o=n[s];Object.assign(this.memberTraits,Jf(o))}}else this.memberTraits=0;if(a instanceof vi){const s=this.memberTraits;Object.assign(this,a),this.memberTraits=Object.assign({},s,a.getMemberTraits(),this.getMemberTraits()),this.normalizedTraits=void 0,this.memberName=t??a.memberName;return}if(this.schema=tg(a),tz(this.schema)?(this.name=`${this.schema[1]}#${this.schema[2]}`,this.traits=this.schema[3]):(this.name=this.memberName??String(a),this.traits=0),this._isMemberSchema&&!t)throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(!0)} missing member name.`)}static[Symbol.hasInstance](e){const t=this.prototype.isPrototypeOf(e);return!t&&typeof e=="object"&&e!==null?e.symbol===this.symbol:t}static of(e){const t=typeof e=="function"||typeof e=="object"&&e!==null;if(typeof e=="number"){if(Vv[e])return Vv[e]}else if(typeof e=="string"){if(zv[e])return zv[e]}else if(t&&e[Mf.ns])return e[Mf.ns];const n=tg(e);if(n instanceof vi)return n;if(Hv(n)){const[a,s]=n;if(a instanceof vi)return Object.assign(a.getMergedTraits(),Jf(s)),a;throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(e,null,2)}.`)}const i=new vi(n);return t?e[Mf.ns]=i:typeof n=="string"?zv[n]=i:typeof n=="number"?Vv[n]=i:i}getSchema(){const e=this.schema;return Array.isArray(e)&&e[0]===0?e[4]:e}getName(e=!1){const{name:t}=this;return!e&&t&&t.includes("#")?t.split("#")[1]:t||void 0}getMemberName(){return this.memberName}isMemberSchema(){return this._isMemberSchema}isListSchema(){const e=this.getSchema();return typeof e=="number"?e>=64&&e<128:e[0]===1}isMapSchema(){const e=this.getSchema();return typeof e=="number"?e>=128&&e<=255:e[0]===2}isStructSchema(){const e=this.getSchema();if(typeof e!="object")return!1;const t=e[0];return t===3||t===-3||t===4}isUnionSchema(){const e=this.getSchema();return typeof e!="object"?!1:e[0]===4}isBlobSchema(){const e=this.getSchema();return e===21||e===42}isTimestampSchema(){const 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(){const{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 Jf(this.memberTraits)}getOwnTraits(){return Jf(this.traits)}getKeySchema(){const[e,t]=[this.isDocumentSchema(),this.isMapSchema()];if(!e&&!t)throw new Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(!0)}`);const n=this.getSchema(),i=e?15:n[4]??0;return _f([i,0],"key")}getValueSchema(){const e=this.getSchema(),[t,n,i]=[this.isDocumentSchema(),this.isMapSchema(),this.isListSchema()],a=typeof e=="number"?63&e:e&&typeof e=="object"&&(n||i)?e[3+e[0]]:t?15:void 0;if(a!=null)return _f([a,0],n?"value":"member");throw new Error(`@smithy/core/schema - ${this.getName(!0)} has no value member.`)}getMemberSchema(e){const t=this.getSchema();if(this.isStructSchema()&&t[4].includes(e)){const n=t[4].indexOf(e),i=t[5][n];return _f(Hv(i)?i:[i,0],e)}if(this.isDocumentSchema())return _f([15,0],e);throw new Error(`@smithy/core/schema - ${this.getName(!0)} has no member=${e}.`)}getMemberSchemas(){const e={};try{for(const[t,n]of this.structIterator())e[t]=n}catch{}return e}getEventStreamMember(){if(this.isStructSchema()){for(const[e,t]of this.structIterator())if(t.isStreaming()&&t.isStructSchema())return e}return""}*structIterator(){if(this.isUnitSchema())return;if(!this.isStructSchema())throw new Error("@smithy/core/schema - cannot iterate non-struct schema.");const e=this.getSchema(),t=e[4].length;let n=e[Mf.it];if(n&&t===n.length){yield*n;return}n=Array(t);for(let i=0;i<t;++i){const a=e[4][i],s=_f([e[5][i],0],a);yield n[i]=[a,s]}e[Mf.it]=n}}function _f(r,e){if(r instanceof vi)return Object.assign(r,{memberName:e,_isMemberSchema:!0});const t=vi;return new t(r,e)}const Hv=r=>Array.isArray(r)&&r.length===2,tz=r=>Array.isArray(r)&&r.length>=5;class ra{namespace;schemas;exceptions;static registries=new Map;constructor(e,t=new Map,n=new Map){this.namespace=e,this.schemas=t,this.exceptions=n}static for(e){return ra.registries.has(e)||ra.registries.set(e,new ra(e)),ra.registries.get(e)}copyFrom(e){const{schemas:t,exceptions:n}=this;for(const[i,a]of e.schemas)t.has(i)||t.set(i,a);for(const[i,a]of e.exceptions)n.has(i)||n.set(i,a)}register(e,t){const n=this.normalizeShapeId(e);for(const i of[this,ra.for(n.split("#")[0])])i.schemas.set(n,t)}getSchema(e){const t=this.normalizeShapeId(e);if(!this.schemas.has(t))throw new Error(`@smithy/core/schema - schema not found for ${t}`);return this.schemas.get(t)}registerError(e,t){const n=e,i=n[1];for(const a of[this,ra.for(i)])a.schemas.set(i+"#"+n[2],n),a.exceptions.set(n,t)}getErrorCtor(e){const t=e;return this.exceptions.has(t)?this.exceptions.get(t):ra.for(t[1]).exceptions.get(t)}getBaseException(){for(const e of this.exceptions.keys())if(Array.isArray(e)){const[,t,n]=e,i=t+"#"+n;if(i.startsWith("smithy.ts.sdk.synthetic.")&&i.endsWith("ServiceException"))return e}}find(e){return[...this.schemas.values()].find(e)}clear(){this.schemas.clear(),this.exceptions.clear()}normalizeShapeId(e){return e.includes("#")?e:this.namespace+"#"+e}}const mA=r=>{if(r!=null){if(typeof r=="string"){const e=parseFloat(r);if(!Number.isNaN(e))return String(e)!==String(r)&&cz.warn(uz(`Expected number but observed string: ${r}`)),e}if(typeof r=="number")return r;throw new TypeError(`Expected number, got ${typeof r}: ${r}`)}},rz=Math.ceil(2**127*(2-2**-23)),TE=r=>{const e=mA(r);if(e!==void 0&&!Number.isNaN(e)&&e!==1/0&&e!==-1/0&&Math.abs(e)>rz)throw new TypeError(`Expected 32-bit float, got ${r}`);return e},nz=r=>{if(r!=null){if(Number.isInteger(r)&&!Number.isNaN(r))return r;throw new TypeError(`Expected integer, got ${typeof r}: ${r}`)}},IE=r=>_I(r,16),DE=r=>_I(r,8),_I=(r,e)=>{const t=nz(r);if(t!==void 0&&iz(t,e)!==t)throw new TypeError(`Expected ${e}-bit integer, got ${r}`);return t},iz=(r,e)=>{switch(e){case 32:return Int32Array.of(r)[0];case 16:return Int16Array.of(r)[0];case 8:return Int8Array.of(r)[0]}},az=r=>mA(typeof r=="string"?am(r):r),sz=r=>TE(typeof r=="string"?am(r):r),oz=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,am=r=>{const e=r.match(oz);if(e===null||e[0].length!==r.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(r)},Fg=r=>IE(typeof r=="string"?am(r):r),lz=r=>DE(typeof r=="string"?am(r):r),uz=r=>String(new TypeError(r).stack||r).split(`
2803
2803
  `).slice(0,5).filter(e=>!e.includes("stackTraceWarning")).join(`
2804
- `),cz={warn:console.warn},fz=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],N1=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function dz(r){const e=r.getUTCFullYear(),t=r.getUTCMonth(),n=r.getUTCDay(),i=r.getUTCDate(),a=r.getUTCHours(),s=r.getUTCMinutes(),o=r.getUTCSeconds(),l=i<10?`0${i}`:`${i}`,u=a<10?`0${a}`:`${a}`,c=s<10?`0${s}`:`${s}`,h=o<10?`0${o}`:`${o}`;return`${fz[n]}, ${l} ${N1[t]} ${e} ${u}:${c}:${h} GMT`}const hz=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),pz=r=>{if(r==null)return;if(typeof r!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");const e=hz.exec(r);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");const[t,n,i,a,s,o,l,u,c]=e,h=Fg(Bd(n)),f=bo(i,"month",1,12),d=bo(a,"day",1,31),g=rg(h,f,d,{hours:s,minutes:o,seconds:l,fractionalMilliseconds:u});return c.toUpperCase()!="Z"&&g.setTime(g.getTime()-kz(c)),g},gz=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$/),mz=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$/),vz=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})$/),NI=r=>{if(r==null)return;if(typeof r!="string")throw new TypeError("RFC-7231 date-times must be expressed as strings");let e=gz.exec(r);if(e){const[t,n,i,a,s,o,l,u]=e;return rg(Fg(Bd(a)),jv(i),bo(n,"day",1,31),{hours:s,minutes:o,seconds:l,fractionalMilliseconds:u})}if(e=mz.exec(r),e){const[t,n,i,a,s,o,l,u]=e;return wz(rg(Az(a),jv(i),bo(n,"day",1,31),{hours:s,minutes:o,seconds:l,fractionalMilliseconds:u}))}if(e=vz.exec(r),e){const[t,n,i,a,s,o,l,u]=e;return rg(Fg(Bd(u)),jv(n),bo(i.trimLeft(),"day",1,31),{hours:a,minutes:s,seconds:o,fractionalMilliseconds:l})}throw new TypeError("Invalid RFC-7231 date-time value")},yz=r=>{if(r==null)return;let e;if(typeof r=="number")e=r;else if(typeof r=="string")e=az(r);else if(typeof r=="object"&&r.tag===1)e=r.value;else throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(e)||e===1/0||e===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(e*1e3))},rg=(r,e,t,n)=>{const i=e-1;return xz(r,i,t),new Date(Date.UTC(r,i,t,bo(n.hours,"hour",0,23),bo(n.minutes,"minute",0,59),bo(n.seconds,"seconds",0,60),Ez(n.fractionalMilliseconds)))},Az=r=>{const e=new Date().getUTCFullYear(),t=Math.floor(e/100)*100+Fg(Bd(r));return t<e?t+100:t},bz=50*365*24*60*60*1e3,wz=r=>r.getTime()-new Date().getTime()>bz?new Date(Date.UTC(r.getUTCFullYear()-100,r.getUTCMonth(),r.getUTCDate(),r.getUTCHours(),r.getUTCMinutes(),r.getUTCSeconds(),r.getUTCMilliseconds())):r,jv=r=>{const e=N1.indexOf(r);if(e<0)throw new TypeError(`Invalid month: ${r}`);return e+1},Cz=[31,28,31,30,31,30,31,31,30,31,30,31],xz=(r,e,t)=>{let n=Cz[e];if(e===1&&Sz(r)&&(n=29),t>n)throw new TypeError(`Invalid day for ${N1[e]} in ${r}: ${t}`)},Sz=r=>r%4===0&&(r%100!==0||r%400===0),bo=(r,e,t,n)=>{const i=lz(Bd(r));if(i<t||i>n)throw new TypeError(`${e} must be between ${t} and ${n}, inclusive`);return i},Ez=r=>r==null?0:sz("0."+r)*1e3,kz=r=>{const e=r[0];let t=1;if(e=="+")t=1;else if(e=="-")t=-1;else throw new TypeError(`Offset direction, ${e}, must be "+" or "-"`);const n=Number(r.substring(1,3)),i=Number(r.substring(4,6));return t*(n*60+i)*60*1e3},Bd=r=>{let e=0;for(;e<r.length-1&&r.charAt(e)==="0";)e++;return e===0?r:r.slice(e)},PE=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Ti=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0")),LI=()=>{if(PE)return PE();const r=new Uint8Array(16);return crypto.getRandomValues(r),r[6]=r[6]&15|64,r[8]=r[8]&63|128,Ti[r[0]]+Ti[r[1]]+Ti[r[2]]+Ti[r[3]]+"-"+Ti[r[4]]+Ti[r[5]]+"-"+Ti[r[6]]+Ti[r[7]]+"-"+Ti[r[8]]+Ti[r[9]]+"-"+Ti[r[10]]+Ti[r[11]]+Ti[r[12]]+Ti[r[13]]+Ti[r[14]]+Ti[r[15]]},mo=function(e){return Object.assign(new String(e),{deserializeJSON(){return JSON.parse(String(e))},toString(){return String(e)},toJSON(){return String(e)}})};mo.from=r=>r&&typeof r=="object"&&(r instanceof mo||"deserializeJSON"in r)?r:typeof r=="string"||Object.getPrototypeOf(r)===String.prototype?mo(String(r)):mo(JSON.stringify(r));mo.fromObject=mo.from;const RE=/^-?\d*(\.\d+)?$/;class as{string;type;constructor(e,t){if(this.string=e,this.type=t,!RE.test(e))throw new 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;const t=e;return as.prototype.isPrototypeOf(e)||t.type==="bigDecimal"&&RE.test(t.string)}}class Fz{serdeContext;setSerdeContext(e){this.serdeContext=e}}class Tz extends Fz{options;compositeErrorRegistry;constructor(e){super(),this.options=e,this.compositeErrorRegistry=ra.for(e.defaultNamespace);for(const t of e.errorTypeRegistries??[])this.compositeErrorRegistry.copyFrom(t)}getRequestType(){return aa}getResponseType(){return fc}setSerdeContext(e){this.serdeContext=e,this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e),this.getPayloadCodec()&&this.getPayloadCodec().setSerdeContext(e)}updateServiceEndpoint(e,t){if("url"in t){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(const[n,i]of t.url.searchParams.entries())e.query[n]=i;if(t.headers)for(const[n,i]of Object.entries(t.headers))e.headers[n]=i.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(const[n,i]of Object.entries(t.headers))e.headers[n]=i;return e}}setHostPrefix(e,t,n){if(this.serdeContext?.disableHostPrefix)return;const i=vi.of(t.input),a=Jf(t.traits??{});if(a.endpoint){let s=a.endpoint?.[0];if(typeof s=="string"){const o=[...i.structIterator()].filter(([,l])=>l.getMergedTraits().hostLabel);for(const[l]of o){const u=n[l];if(typeof u!="string")throw new Error(`@smithy/core/schema - ${l} in input must be a string as hostLabel.`);s=s.replace(`{${l}}`,u)}e.hostname=s+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:n}){return(await this.loadEventStreamCapability()).serializeEventStream({eventStream:e,requestSchema:t,initialRequest:n})}async deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:n}){return(await this.loadEventStreamCapability()).deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:n})}async loadEventStreamCapability(){const{EventStreamSerde:e}=await Promise.resolve().then(()=>require("./index-CVscbFau.cjs"));return new e({marshaller:this.getEventStreamMarshaller(),serializer:this.serializer,deserializer:this.deserializer,serdeContext:this.serdeContext,defaultContentType:this.getDefaultContentType()})}getDefaultContentType(){throw new Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`)}async deserializeHttpMessage(e,t,n,i,a){return[]}getEventStreamMarshaller(){const e=this.serdeContext;if(!e.eventStreamMarshaller)throw new Error("@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.");return e.eventStreamMarshaller}}class Iz extends Tz{async serializeRequest(e,t,n){const i=this.serializer,a={},s={},o=await n.endpoint(),l=vi.of(e?.input),u=l.getSchema();let c;const h=t&&typeof t=="object"?t:{},f=new aa({protocol:"",hostname:"",port:void 0,path:"/",fragment:void 0,query:a,headers:s,body:void 0});if(o&&(this.updateServiceEndpoint(f,o),this.setHostPrefix(f,e,h)),h){const d=l.getEventStreamMember();if(d){if(h[d]){const g={};for(const[v,y]of l.structIterator())v!==d&&h[v]&&(i.write(y,h[v]),g[v]=i.flush());c=await this.serializeEventStream({eventStream:h[d],requestSchema:l,initialRequest:g})}}else i.write(u,h),c=i.flush()}return f.headers=Object.assign(f.headers,s),f.query=a,f.body=c,f.method="POST",f}async deserializeResponse(e,t,n){const i=this.deserializer,a=vi.of(e.output),s={};if(n.statusCode>=300){const l=await gA(n.body,t);throw l.byteLength>0&&Object.assign(s,await i.read(15,l)),await this.handleError(e,t,n,s,this.deserializeMetadata(n)),new Error("@smithy/core/protocols - RPC Protocol error handler failed to throw.")}for(const l in n.headers){const u=n.headers[l];delete n.headers[l],n.headers[l.toLowerCase()]=u}const o=a.getEventStreamMember();if(o)s[o]=await this.deserializeEventStream({response:n,responseSchema:a,initialResponseContainer:s});else{const l=await gA(n.body,t);l.byteLength>0&&Object.assign(s,await i.read(a,l))}return s.$metadata=this.deserializeMetadata(n),s}}function UI(r,e){if(e.timestampFormat.useTrait&&r.isTimestampSchema()&&(r.getSchema()===5||r.getSchema()===6||r.getSchema()===7))return r.getSchema();const{httpLabel:t,httpPrefixHeaders:n,httpHeader:i,httpQuery:a}=r.getMergedTraits();return(e.httpBindings?typeof n=="string"||i?6:a||t?5:void 0:void 0)??e.timestampFormat.default}function Dz(r,e,t){r.__smithy_context?r.__smithy_context.features||(r.__smithy_context.features={}):r.__smithy_context={features:{}},r.__smithy_context.features[e]=t}class Pz{authSchemes=new Map;constructor(e){for(const[t,n]of Object.entries(e))n!==void 0&&this.authSchemes.set(t,n)}getIdentityProvider(e){return this.authSchemes.get(e)}}class Rz{async sign(e,t,n){return e}}const Oz=r=>function(t){return VI(t)&&t.expiration.getTime()-Date.now()<r},Bz=3e5,Mz=Oz(Bz),VI=r=>r.expiration!==void 0,_z=(r,e,t)=>{if(r===void 0)return;const n=typeof r!="function"?async()=>Promise.resolve(r):r;let i,a,s,o=!1;const l=async u=>{a||(a=n(u));try{i=await a,s=!0,o=!1}finally{a=void 0}return i};return e===void 0?async u=>((!s||u?.forceRefresh)&&(i=await l(u)),i):async u=>((!s||u?.forceRefresh)&&(i=await l(u)),o?i:t(i)?(e(i)&&await l(u),i):(o=!0,i))},Nz=void 0;function Lz(r){return r===void 0?!0:typeof r=="string"&&r.length<=50}function Uz(r){const e=ld(r.userAgentAppId??Nz),{customUserAgent:t}=r;return Object.assign(r,{customUserAgent:typeof t=="string"?[[t]]:t,userAgentAppId:async()=>{const n=await e();if(!Lz(n)){const i=r.logger?.constructor?.name==="NoOpLogger"||!r.logger?console:r.logger;typeof n!="string"?i?.warn("userAgentAppId must be a string or undefined."):n.length>50&&i?.warn("The provided userAgentAppId exceeds the maximum length of 50 characters.")}return n}})}class Vz{capacity;data=new Map;parameters=[];constructor({size:e,params:t}){this.capacity=e??50,t&&(this.parameters=t)}get(e,t){const n=this.hash(e);if(n===!1)return t();if(!this.data.has(n)){if(this.data.size>this.capacity+10){const i=this.data.keys();let a=0;for(;;){const{value:s,done:o}=i.next();if(this.data.delete(s),o||++a>10)break}}this.data.set(n,t())}return this.data.get(n)}size(){return this.data.size}hash(e){let t="";const{parameters:n}=this;if(n.length===0)return!1;for(const i of n){const a=String(e[i]??"");if(a.includes("|;"))return!1;t+=a+"|;"}return t}}const zz=new RegExp("^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$"),L1=r=>zz.test(r)||r.startsWith("[")&&r.endsWith("]"),Hz=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),oh=(r,e=!1)=>{if(!e)return Hz.test(r);const t=r.split(".");for(const n of t)if(!oh(n))return!1;return!0},Md={},_d="endpoints";function Po(r){return typeof r!="object"||r==null?r:"ref"in r?`$${Po(r.ref)}`:"fn"in r?`${r.fn}(${(r.argv||[]).map(Po).join(", ")})`:JSON.stringify(r,null,2)}class sa extends Error{constructor(e){super(e),this.name="EndpointError"}}const jz=(r,e)=>r===e,Gz=r=>{const e=r.split("."),t=[];for(const n of e){const i=n.indexOf("[");if(i!==-1){if(n.indexOf("]")!==n.length-1)throw new sa(`Path: '${r}' does not end with ']'`);const a=n.slice(i+1,-1);if(Number.isNaN(parseInt(a)))throw new sa(`Invalid array index: '${a}' in path: '${r}'`);i!==0&&t.push(n.slice(0,i)),t.push(a)}else t.push(n)}return t},zI=(r,e)=>Gz(e).reduce((t,n)=>{if(typeof t!="object")throw new sa(`Index '${n}' in '${e}' not found in '${JSON.stringify(r)}'`);return Array.isArray(t)?t[parseInt(n)]:t[n]},r),$z=r=>r!=null,qz=r=>!r,Gv={[Pd.HTTP]:80,[Pd.HTTPS]:443},Wz=r=>{const e=(()=>{try{if(r instanceof URL)return r;if(typeof r=="object"&&"hostname"in r){const{hostname:f,port:d,protocol:g="",path:v="",query:y={}}=r,A=new URL(`${g}//${f}${d?`:${d}`:""}${v}`);return A.search=Object.entries(y).map(([C,k])=>`${C}=${k}`).join("&"),A}return new URL(r)}catch{return null}})();if(!e)return console.error(`Unable to parse ${JSON.stringify(r)} as a whatwg URL.`),null;const t=e.href,{host:n,hostname:i,pathname:a,protocol:s,search:o}=e;if(o)return null;const l=s.slice(0,-1);if(!Object.values(Pd).includes(l))return null;const u=L1(i),c=t.includes(`${n}:${Gv[l]}`)||typeof r=="string"&&r.includes(`${n}:${Gv[l]}`),h=`${n}${c?`:${Gv[l]}`:""}`;return{scheme:l,authority:h,path:a,normalizedPath:a.endsWith("/")?a:`${a}/`,isIp:u}},Qz=(r,e)=>r===e,Yz=(r,e,t,n)=>e>=t||r.length<t||/[^\u0000-\u007f]/.test(r)?null:n?r.substring(r.length-t,r.length-e):r.substring(e,t),Xz=r=>encodeURIComponent(r).replace(/[!*'()]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`),Jz={booleanEquals:jz,getAttr:zI,isSet:$z,isValidHostLabel:oh,not:qz,parseURL:Wz,stringEquals:Qz,substring:Yz,uriEncode:Xz},HI=(r,e)=>{const t=[],n={...e.endpointParams,...e.referenceRecord};let i=0;for(;i<r.length;){const a=r.indexOf("{",i);if(a===-1){t.push(r.slice(i));break}t.push(r.slice(i,a));const s=r.indexOf("}",a);if(s===-1){t.push(r.slice(a));break}r[a+1]==="{"&&r[s+1]==="}"&&(t.push(r.slice(a+1,s)),i=s+2);const o=r.substring(a+1,s);if(o.includes("#")){const[l,u]=o.split("#");t.push(zI(n[l],u))}else t.push(n[o]);i=s+1}return t.join("")},Kz=({ref:r},e)=>({...e.endpointParams,...e.referenceRecord})[r],sm=(r,e,t)=>{if(typeof r=="string")return HI(r,t);if(r.fn)return GI.callFunction(r,t);if(r.ref)return Kz(r,t);throw new sa(`'${e}': ${String(r)} is not a string, function or reference.`)},jI=({fn:r,argv:e},t)=>{const n=e.map(a=>["boolean","number"].includes(typeof a)?a:GI.evaluateExpression(a,"arg",t)),i=r.split(".");return i[0]in Md&&i[1]!=null?Md[i[0]][i[1]](...n):Jz[r](...n)},GI={evaluateExpression:sm,callFunction:jI},Zz=({assign:r,...e},t)=>{if(r&&r in t.referenceRecord)throw new sa(`'${r}' is already defined in Reference Record.`);const n=jI(e,t);return t.logger?.debug?.(`${_d} evaluateCondition: ${Po(e)} = ${Po(n)}`),{result:n===""?!0:!!n,...r!=null&&{toAssign:{name:r,value:n}}}},U1=(r=[],e)=>{const t={};for(const n of r){const{result:i,toAssign:a}=Zz(n,{...e,referenceRecord:{...e.referenceRecord,...t}});if(!i)return{result:i};a&&(t[a.name]=a.value,e.logger?.debug?.(`${_d} assign: ${a.name} := ${Po(a.value)}`))}return{result:!0,referenceRecord:t}},eH=(r,e)=>Object.entries(r).reduce((t,[n,i])=>({...t,[n]:i.map(a=>{const s=sm(a,"Header value entry",e);if(typeof s!="string")throw new sa(`Header '${n}' value '${s}' is not a string`);return s})}),{}),$I=(r,e)=>Object.entries(r).reduce((t,[n,i])=>({...t,[n]:WI.getEndpointProperty(i,e)}),{}),qI=(r,e)=>{if(Array.isArray(r))return r.map(t=>qI(t,e));switch(typeof r){case"string":return HI(r,e);case"object":if(r===null)throw new sa(`Unexpected endpoint property: ${r}`);return WI.getEndpointProperties(r,e);case"boolean":return r;default:throw new sa(`Unexpected endpoint property type: ${typeof r}`)}},WI={getEndpointProperty:qI,getEndpointProperties:$I},tH=(r,e)=>{const t=sm(r,"Endpoint URL",e);if(typeof t=="string")try{return new URL(t)}catch(n){throw console.error(`Failed to construct URL with ${t}`,n),n}throw new sa(`Endpoint URL must be a string, got ${typeof t}`)},rH=(r,e)=>{const{conditions:t,endpoint:n}=r,{result:i,referenceRecord:a}=U1(t,e);if(!i)return;const s={...e,referenceRecord:{...e.referenceRecord,...a}},{url:o,properties:l,headers:u}=n;return e.logger?.debug?.(`${_d} Resolving endpoint from template: ${Po(n)}`),{...u!=null&&{headers:eH(u,s)},...l!=null&&{properties:$I(l,s)},url:tH(o,s)}},nH=(r,e)=>{const{conditions:t,error:n}=r,{result:i,referenceRecord:a}=U1(t,e);if(i)throw new sa(sm(n,"Error",{...e,referenceRecord:{...e.referenceRecord,...a}}))},QI=(r,e)=>{for(const t of r)if(t.type==="endpoint"){const n=rH(t,e);if(n)return n}else if(t.type==="error")nH(t,e);else if(t.type==="tree"){const n=YI.evaluateTreeRule(t,e);if(n)return n}else throw new sa(`Unknown endpoint rule: ${t}`);throw new sa("Rules evaluation failed")},iH=(r,e)=>{const{conditions:t,rules:n}=r,{result:i,referenceRecord:a}=U1(t,e);if(i)return YI.evaluateRules(n,{...e,referenceRecord:{...e.referenceRecord,...a}})},YI={evaluateRules:QI,evaluateTreeRule:iH},aH=(r,e)=>{const{endpointParams:t,logger:n}=e,{parameters:i,rules:a}=r;e.logger?.debug?.(`${_d} Initial EndpointParams: ${Po(t)}`);const s=Object.entries(i).filter(([,u])=>u.default!=null).map(([u,c])=>[u,c.default]);if(s.length>0)for(const[u,c]of s)t[u]=t[u]??c;const o=Object.entries(i).filter(([,u])=>u.required).map(([u])=>u);for(const u of o)if(t[u]==null)throw new sa(`Missing required parameter: '${u}'`);const l=QI(a,{endpointParams:t,logger:n,referenceRecord:{}});return e.logger?.debug?.(`${_d} Resolved endpoint: ${Po(l)}`),l},XI=(r,e=!1)=>{if(e){for(const t of r.split("."))if(!XI(t))return!1;return!0}return!(!oh(r)||r.length<3||r.length>63||r!==r.toLowerCase()||L1(r))},OE=":",sH="/",oH=r=>{const e=r.split(OE);if(e.length<6)return null;const[t,n,i,a,s,...o]=e;if(t!=="arn"||n===""||i===""||o.join(OE)==="")return null;const l=o.map(u=>u.split(sH)).flat();return{partition:n,service:i,region:a,accountId:s,resourceId:l}},lH=[{id:"aws",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-east-1",name:"aws",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$",regions:{"af-south-1":{description:"Africa (Cape Town)"},"ap-east-1":{description:"Asia Pacific (Hong Kong)"},"ap-east-2":{description:"Asia Pacific (Taipei)"},"ap-northeast-1":{description:"Asia Pacific (Tokyo)"},"ap-northeast-2":{description:"Asia Pacific (Seoul)"},"ap-northeast-3":{description:"Asia Pacific (Osaka)"},"ap-south-1":{description:"Asia Pacific (Mumbai)"},"ap-south-2":{description:"Asia Pacific (Hyderabad)"},"ap-southeast-1":{description:"Asia Pacific (Singapore)"},"ap-southeast-2":{description:"Asia Pacific (Sydney)"},"ap-southeast-3":{description:"Asia Pacific (Jakarta)"},"ap-southeast-4":{description:"Asia Pacific (Melbourne)"},"ap-southeast-5":{description:"Asia Pacific (Malaysia)"},"ap-southeast-6":{description:"Asia Pacific (New Zealand)"},"ap-southeast-7":{description:"Asia Pacific (Thailand)"},"aws-global":{description:"aws global region"},"ca-central-1":{description:"Canada (Central)"},"ca-west-1":{description:"Canada West (Calgary)"},"eu-central-1":{description:"Europe (Frankfurt)"},"eu-central-2":{description:"Europe (Zurich)"},"eu-north-1":{description:"Europe (Stockholm)"},"eu-south-1":{description:"Europe (Milan)"},"eu-south-2":{description:"Europe (Spain)"},"eu-west-1":{description:"Europe (Ireland)"},"eu-west-2":{description:"Europe (London)"},"eu-west-3":{description:"Europe (Paris)"},"il-central-1":{description:"Israel (Tel Aviv)"},"me-central-1":{description:"Middle East (UAE)"},"me-south-1":{description:"Middle East (Bahrain)"},"mx-central-1":{description:"Mexico (Central)"},"sa-east-1":{description:"South America (Sao Paulo)"},"us-east-1":{description:"US East (N. Virginia)"},"us-east-2":{description:"US East (Ohio)"},"us-west-1":{description:"US West (N. California)"},"us-west-2":{description:"US West (Oregon)"}}},{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn",dualStackDnsSuffix:"api.amazonwebservices.com.cn",implicitGlobalRegion:"cn-northwest-1",name:"aws-cn",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:{"aws-cn-global":{description:"aws-cn global region"},"cn-north-1":{description:"China (Beijing)"},"cn-northwest-1":{description:"China (Ningxia)"}}},{id:"aws-eusc",outputs:{dnsSuffix:"amazonaws.eu",dualStackDnsSuffix:"api.amazonwebservices.eu",implicitGlobalRegion:"eusc-de-east-1",name:"aws-eusc",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eusc\\-(de)\\-\\w+\\-\\d+$",regions:{"eusc-de-east-1":{description:"AWS European Sovereign Cloud (Germany)"}}},{id:"aws-iso",outputs:{dnsSuffix:"c2s.ic.gov",dualStackDnsSuffix:"api.aws.ic.gov",implicitGlobalRegion:"us-iso-east-1",name:"aws-iso",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",regions:{"aws-iso-global":{description:"aws-iso global region"},"us-iso-east-1":{description:"US ISO East"},"us-iso-west-1":{description:"US ISO WEST"}}},{id:"aws-iso-b",outputs:{dnsSuffix:"sc2s.sgov.gov",dualStackDnsSuffix:"api.aws.scloud",implicitGlobalRegion:"us-isob-east-1",name:"aws-iso-b",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",regions:{"aws-iso-b-global":{description:"aws-iso-b global region"},"us-isob-east-1":{description:"US ISOB East (Ohio)"},"us-isob-west-1":{description:"US ISOB West"}}},{id:"aws-iso-e",outputs:{dnsSuffix:"cloud.adc-e.uk",dualStackDnsSuffix:"api.cloud-aws.adc-e.uk",implicitGlobalRegion:"eu-isoe-west-1",name:"aws-iso-e",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eu\\-isoe\\-\\w+\\-\\d+$",regions:{"aws-iso-e-global":{description:"aws-iso-e global region"},"eu-isoe-west-1":{description:"EU ISOE West"}}},{id:"aws-iso-f",outputs:{dnsSuffix:"csp.hci.ic.gov",dualStackDnsSuffix:"api.aws.hci.ic.gov",implicitGlobalRegion:"us-isof-south-1",name:"aws-iso-f",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isof\\-\\w+\\-\\d+$",regions:{"aws-iso-f-global":{description:"aws-iso-f global region"},"us-isof-east-1":{description:"US ISOF EAST"},"us-isof-south-1":{description:"US ISOF SOUTH"}}},{id:"aws-us-gov",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-gov-west-1",name:"aws-us-gov",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",regions:{"aws-us-gov-global":{description:"aws-us-gov global region"},"us-gov-east-1":{description:"AWS GovCloud (US-East)"},"us-gov-west-1":{description:"AWS GovCloud (US-West)"}}}],uH={partitions:lH};let cH=uH;const fH=r=>{const{partitions:e}=cH;for(const n of e){const{regions:i,outputs:a}=n;for(const[s,o]of Object.entries(i))if(s===r)return{...a,...o}}for(const n of e){const{regionRegex:i,outputs:a}=n;if(new RegExp(i).test(r))return{...a}}const t=e.find(n=>n.id==="aws");if(!t)throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");return{...t.outputs}},dH={isVirtualHostableS3Bucket:XI,parseArn:oH,partition:fH};Md.aws=dH;function hH(r,e,t){return r.$source||(r.$source={}),r.$source[e]=t,r}function Ds(r,e,t){r.__aws_sdk_context?r.__aws_sdk_context.features||(r.__aws_sdk_context.features={}):r.__aws_sdk_context={features:{}},r.__aws_sdk_context.features[e]=t}var Nd;(function(r){r.STANDARD="standard",r.ADAPTIVE="adaptive"})(Nd||(Nd={}));Nd.STANDARD;const pH=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],gH=["TimeoutError","RequestTimeout","RequestTimeoutException"],mH=[500,502,503,504],vH=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],yH=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"],AH=r=>r?.$retryable!==void 0,bH=r=>r.$metadata?.clockSkewCorrected,wH=r=>{const e=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);return r&&r instanceof TypeError?e.has(r.message):!1},JI=r=>r.$metadata?.httpStatusCode===429||pH.includes(r.name)||r.$retryable?.throttling==!0,V1=(r,e=0)=>AH(r)||bH(r)||gH.includes(r.name)||vH.includes(r?.code||"")||yH.includes(r?.code||"")||mH.includes(r.$metadata?.httpStatusCode||0)||wH(r)||r.cause!==void 0&&e<=10&&V1(r.cause,e+1),CH=r=>{if(r.$metadata?.httpStatusCode!==void 0){const e=r.$metadata.httpStatusCode;return 500<=e&&e<=599&&!V1(r)}return!1},xH=/\d{12}\.ddb/;async function SH(r,e,t){if(t.request?.headers?.["smithy-protocol"]==="rpc-v2-cbor"&&Ds(r,"PROTOCOL_RPC_V2_CBOR","M"),typeof e.retryStrategy=="function"){const a=await e.retryStrategy();if(typeof a.mode=="string")switch(a.mode){case Nd.ADAPTIVE:Ds(r,"RETRY_MODE_ADAPTIVE","F");break;case Nd.STANDARD:Ds(r,"RETRY_MODE_STANDARD","E");break}}if(typeof e.accountIdEndpointMode=="function"){const a=r.endpointV2;switch(String(a?.url?.hostname).match(xH)&&Ds(r,"ACCOUNT_ID_ENDPOINT","O"),await e.accountIdEndpointMode?.()){case"disabled":Ds(r,"ACCOUNT_ID_MODE_DISABLED","Q");break;case"preferred":Ds(r,"ACCOUNT_ID_MODE_PREFERRED","P");break;case"required":Ds(r,"ACCOUNT_ID_MODE_REQUIRED","R");break}}const i=r.__smithy_context?.selectedHttpAuthScheme?.identity;if(i?.$source){const a=i;a.accountId&&Ds(r,"RESOLVED_ACCOUNT_ID","T");for(const[s,o]of Object.entries(a.$source??{}))Ds(r,s,o)}}const BE="user-agent",$v="x-amz-user-agent",ME=" ",qv="/",EH=/[^!$%&'*+\-.^_`|~\w]/g,kH=/[^!$%&'*+\-.^_`|~\w#]/g,_E="-",FH=1024;function TH(r){let e="";for(const t in r){const n=r[t];if(e.length+n.length+1<=FH){e.length?e+=","+n:e+=n;continue}break}return e}const IH=r=>(e,t)=>async n=>{const{request:i}=n;if(!aa.isInstance(i))return e(n);const{headers:a}=i,s=t?.userAgent?.map(_p)||[],o=(await r.defaultUserAgentProvider()).map(_p);await SH(t,r,n);const l=t;o.push(`m/${TH(Object.assign({},t.__smithy_context?.features,l.__aws_sdk_context?.features))}`);const u=r?.customUserAgent?.map(_p)||[],c=await r.userAgentAppId();c&&o.push(_p(["app",`${c}`]));const h=[].concat([...o,...s,...u]).join(ME),f=[...o.filter(d=>d.startsWith("aws-sdk-")),...u].join(ME);return r.runtime!=="browser"?(f&&(a[$v]=a[$v]?`${a[BE]} ${f}`:f),a[BE]=h):a[$v]=h,e({...n,request:i})},_p=r=>{const e=r[0].split(qv).map(s=>s.replace(EH,_E)).join(qv),t=r[1]?.replace(kH,_E),n=e.indexOf(qv),i=e.substring(0,n);let a=e.substring(n+1);return i==="api"&&(a=a.toLowerCase()),[i,a,t].filter(s=>s&&s.length>0).reduce((s,o,l)=>{switch(l){case 0:return o;case 1:return`${s}/${o}`;default:return`${s}#${o}`}},"")},DH={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0},PH=r=>({applyToStack:e=>{e.add(IH(r),DH)}}),RH=!1,OH=!1,NE=new Set,BH=(r,e=oh)=>{if(!NE.has(r)&&!e(r))if(r==="*")console.warn('@smithy/config-resolver WARN - Please use the caller region instead of "*". See "sigv4a" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.');else throw new Error(`Region not accepted: region="${r}" is not a valid hostname component.`);else NE.add(r)},KI=r=>typeof r=="string"&&(r.startsWith("fips-")||r.endsWith("-fips")),MH=r=>KI(r)?["fips-aws-global","aws-fips"].includes(r)?"us-east-1":r.replace(/fips-(dkr-|prod-)?|-fips/,""):r,_H=r=>{const{region:e,useFipsEndpoint:t}=r;if(!e)throw new Error("Region is missing");return Object.assign(r,{region:async()=>{const n=typeof e=="function"?await e():e,i=MH(n);return BH(i),i},useFipsEndpoint:async()=>{const n=typeof e=="string"?e:await e();return KI(n)?!0:typeof t!="function"?Promise.resolve(!!t):t()}})},LE="content-length";function NH(r){return e=>async t=>{const n=t.request;if(aa.isInstance(n)){const{body:i,headers:a}=n;if(i&&Object.keys(a).map(s=>s.toLowerCase()).indexOf(LE)===-1)try{const s=r(i);n.headers={...n.headers,[LE]:String(s)}}catch{}}return e({...t,request:n})}}const LH={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},UH=r=>({applyToStack:e=>{e.add(NH(r.bodyLengthChecker),LH)}}),VH=async r=>{const e=r?.Bucket||"";if(typeof r.Bucket=="string"&&(r.Bucket=e.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"))),$H(e)){if(r.ForcePathStyle===!0)throw new Error("Path-style addressing cannot be used with ARN buckets")}else(!GH(e)||e.indexOf(".")!==-1&&!String(r.Endpoint).startsWith("http:")||e.toLowerCase()!==e||e.length<3)&&(r.ForcePathStyle=!0);return r.DisableMultiRegionAccessPoints&&(r.disableMultiRegionAccessPoints=!0,r.DisableMRAP=!0),r},zH=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,HH=/(\d+\.){3}\d+/,jH=/\.\./,GH=r=>zH.test(r)&&!HH.test(r)&&!jH.test(r),$H=r=>{const[e,t,n,,,i]=r.split(":"),a=e==="arn"&&r.split(":").length>=6,s=!!(a&&t&&n&&i);if(a&&!s)throw new Error(`Invalid ARN: ${r} was an invalid ARN.`);return s},qH=(r,e,t,n=!1)=>{const i=async()=>{let a;return n?a=t.clientContextParams?.[r]??t[r]??t[e]:a=t[r]??t[e],typeof a=="function"?a():a};return r==="credentialScope"||e==="CredentialScope"?async()=>{const a=typeof t.credentials=="function"?await t.credentials():t.credentials;return a?.credentialScope??a?.CredentialScope}:r==="accountId"||e==="AccountId"?async()=>{const a=typeof t.credentials=="function"?await t.credentials():t.credentials;return a?.accountId??a?.AccountId}:r==="endpoint"||e==="endpoint"?async()=>{if(t.isCustomEndpoint===!1)return;const a=await i();if(a&&typeof a=="object"){if("url"in a)return a.url.href;if("hostname"in a){const{protocol:s,hostname:o,port:l,path:u}=a;return`${s}//${o}${l?":"+l:""}${u}`}}return a}:i},ZI=async r=>{},eD=r=>{if(typeof r=="object"){if("url"in r){const e=dc(r.url);if(r.headers){e.headers={};for(const[t,n]of Object.entries(r.headers))e.headers[t.toLowerCase()]=n.join(", ")}return e}return r}return dc(r)},WH=async(r,e,t,n)=>{if(!t.isCustomEndpoint){let s;t.serviceConfiguredEndpoint?s=await t.serviceConfiguredEndpoint():s=await ZI(t.serviceId),s&&(t.endpoint=()=>Promise.resolve(eD(s)),t.isCustomEndpoint=!0)}const i=await QH(r,e,t);if(typeof t.endpointProvider!="function")throw new Error("config.endpointProvider is not set.");const a=t.endpointProvider(i,n);if(t.isCustomEndpoint&&t.endpoint){const s=await t.endpoint();if(s?.headers){a.headers??={};for(const[o,l]of Object.entries(s.headers))a.headers[o]=Array.isArray(l)?l:[l]}}return a},QH=async(r,e,t)=>{const n={},i=e?.getEndpointParameterInstructions?.()||{};for(const[a,s]of Object.entries(i))switch(s.type){case"staticContextParams":n[a]=s.value;break;case"contextParams":n[a]=r[s.name];break;case"clientContextParams":case"builtInParams":n[a]=await qH(s.name,a,t,s.type!=="builtInParams")();break;case"operationContextParams":n[a]=s.get(r);break;default:throw new Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(s))}return Object.keys(i).length===0&&Object.assign(n,t),String(t.serviceId).toLowerCase()==="s3"&&await VH(n),n},YH=({config:r,instructions:e})=>(t,n)=>async i=>{r.isCustomEndpoint&&Dz(n,"ENDPOINT_OVERRIDE","N");const a=await WH(i.input,{getEndpointParameterInstructions(){return e}},{...r},n);n.endpointV2=a,n.authSchemes=a.properties?.authSchemes;const s=n.authSchemes?.[0];if(s){n.signing_region=s.signingRegion,n.signing_service=s.signingName;const l=Sc(n)?.selectedHttpAuthScheme?.httpAuthOption;l&&(l.signingProperties=Object.assign(l.signingProperties||{},{signing_region:s.signingRegion,signingRegion:s.signingRegion,signing_service:s.signingName,signingName:s.signingName,signingRegionSet:s.signingRegionSet},s.properties))}return t({...i})},XH={name:"serializerMiddleware"},JH={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:XH.name},tD=(r,e)=>({applyToStack:t=>{t.addRelativeTo(YH({config:r,instructions:e}),JH)}}),KH=r=>{const e=r.tls??!0,{endpoint:t,useDualstackEndpoint:n,useFipsEndpoint:i}=r,a=t!=null?async()=>eD(await Ls(t)()):void 0,o=Object.assign(r,{endpoint:a,tls:e,isCustomEndpoint:!!t,useDualstackEndpoint:Ls(n??!1),useFipsEndpoint:Ls(i??!1)});let l;return o.serviceConfiguredEndpoint=async()=>(r.serviceId&&!l&&(l=ZI(r.serviceId)),l),o};var hc;(function(r){r.STANDARD="standard",r.ADAPTIVE="adaptive"})(hc||(hc={}));const cd=3,ZH=hc.STANDARD;class z1{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(e){this.beta=e?.beta??.7,this.minCapacity=e?.minCapacity??1,this.minFillRate=e?.minFillRate??.5,this.scaleConstant=e?.scaleConstant??.4,this.smooth=e?.smooth??.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(e){let t;this.updateMeasuredRate();const n=e;if(n?.errorType==="THROTTLING"||JI(n?.error??e)){const s=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=s,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),t=this.cubicThrottle(s),this.enableTokenBucket()}else this.calculateTimeWindow(),t=this.cubicSuccess(this.getCurrentTimeInSeconds());const a=Math.min(t,2*this.measuredTxRate);this.updateTokenBucketRate(a)}getCurrentTimeInSeconds(){return Date.now()/1e3}async acquireTokenBucket(e){if(this.enabled){if(this.refillTokenBucket(),e>this.availableTokens){const t=(e-this.availableTokens)/this.fillRate*1e3;await new Promise(n=>z1.setTimeoutFn(n,t))}this.availableTokens=this.availableTokens-e}}refillTokenBucket(){const e=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=e;return}const t=(e-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+t),this.lastTimestamp=e}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))}cubicThrottle(e){return this.getPrecise(e*this.beta)}cubicSuccess(e){return this.getPrecise(this.scaleConstant*Math.pow(e-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(e){this.refillTokenBucket(),this.fillRate=Math.max(e,this.minFillRate),this.maxCapacity=Math.max(e,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){const e=this.getCurrentTimeInSeconds(),t=Math.floor(e*2)/2;if(this.requestCount++,t>this.lastTxRateBucket){const n=this.requestCount/(t-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(n*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=t}}getPrecise(e){return parseFloat(e.toFixed(8))}}const rD=20*1e3,UE=500,ej=1,tj="amz-sdk-invocation-id",rj="amz-sdk-request";class Ui{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return Ui.v2026?50:100}static throttlingDelay(){return Ui.v2026?1e3:500}static cost(){return Ui.v2026?14:5}static throttlingCost(){return Ui.v2026?5:10}static modifiedCostType(){return Ui.v2026?"THROTTLING":"TRANSIENT"}}class nj{x=Ui.delay();computeNextBackoffDelay(e){const i=Math.random()*Math.min(this.x*2**e,rD);return Math.floor(i)}setDelayBase(e){this.x=e}}class VE{delay;count;cost;longPoll;constructor(e,t,n,i){this.delay=e,this.count=t,this.cost=n,this.longPoll=i}getRetryCount(){return this.count}getRetryDelay(){return Math.min(rD,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}class vA{mode=hc.STANDARD;capacity=UE;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(e){typeof e=="number"?this.maxAttemptsProvider=async()=>e:typeof e=="function"?this.maxAttemptsProvider=e:e&&typeof e=="object"&&(this.maxAttemptsProvider=async()=>e.maxAttempts,this.baseDelay=e.baseDelay,this.retryBackoffStrategy=e.backoff),this.maxAttemptsProvider??=async()=>cd,this.baseDelay??=Ui.delay(),this.retryBackoffStrategy??=new nj}async acquireInitialRetryToken(e){return new VE(Ui.delay(),0,void 0,Ui.v2026&&e.includes(":longpoll"))}async refreshRetryTokenForRetry(e,t){const n=await this.getMaxAttempts(),i=this.shouldRetry(e,t,n);if(i||e.isLongPoll?.()){const a=t.errorType;this.retryBackoffStrategy.setDelayBase(a==="THROTTLING"?Ui.throttlingDelay():this.baseDelay);const s=this.retryBackoffStrategy.computeNextBackoffDelay(e.getRetryCount());let o=s;if(t.retryAfterHint instanceof Date&&(o=Math.max(s,Math.min(t.retryAfterHint.getTime()-Date.now(),s+5e3))),i){const l=this.getCapacityCost(a);return this.capacity-=l,new VE(o,e.getRetryCount()+1,l,e.isLongPoll?.()??!1)}else throw Object.assign(new Error("No retry token available"),{$backoff:Ui.v2026?o:0})}throw new Error("No retry token available")}recordSuccess(e){this.capacity=Math.min(UE,this.capacity+(e.getRetryCost()??ej))}getCapacity(){return this.capacity}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch{return console.warn(`Max attempts provider could not resolve. Using default of ${cd}`),cd}}shouldRetry(e,t,n){return e.getRetryCount()+1<n&&this.capacity>=this.getCapacityCost(t.errorType)&&this.isRetryableError(t.errorType)}getCapacityCost(e){return e===Ui.modifiedCostType()?Ui.throttlingCost():Ui.cost()}isRetryableError(e){return e==="THROTTLING"||e==="TRANSIENT"}}class ij{mode=hc.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(e,t){const{rateLimiter:n}=t??{};this.rateLimiter=n??new z1,this.standardRetryStrategy=t?new vA({maxAttempts:typeof e=="number"?e:3,...t}):new vA(e)}async acquireInitialRetryToken(e){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(e)}async refreshRetryTokenForRetry(e,t){return this.rateLimiter.updateClientSendingRate(t),this.standardRetryStrategy.refreshRetryTokenForRetry(e,t)}recordSuccess(e){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(e)}}const aj=r=>r instanceof Error?r:r instanceof Object?Object.assign(new Error,r):typeof r=="string"?new Error(r):new Error(`AWS SDK error wrapper for ${r}`),sj=r=>{const{retryStrategy:e,retryMode:t}=r,n=Ls(r.maxAttempts??cd);let i=e?Promise.resolve(e):void 0;const a=async()=>await Ls(t)()===hc.ADAPTIVE?new ij(n):new vA(n);return Object.assign(r,{maxAttempts:n,retryStrategy:()=>i??=a()})},pl=(r,e)=>{const t=[];if(r&&t.push(r),e)for(const n of e)t.push(n);return t},io=(r,e)=>`${r||"anonymous"}${e&&e.length>0?` (a.k.a. ${e.join(",")})`:""}`,Tg=()=>{let r=[],e=[],t=!1;const n=new Set,i=h=>h.sort((f,d)=>zE[d.step]-zE[f.step]||HE[d.priority||"normal"]-HE[f.priority||"normal"]),a=h=>{let f=!1;const d=g=>{const v=pl(g.name,g.aliases);if(v.includes(h)){f=!0;for(const y of v)n.delete(y);return!1}return!0};return r=r.filter(d),e=e.filter(d),f},s=h=>{let f=!1;const d=g=>{if(g.middleware===h){f=!0;for(const v of pl(g.name,g.aliases))n.delete(v);return!1}return!0};return r=r.filter(d),e=e.filter(d),f},o=h=>(r.forEach(f=>{h.add(f.middleware,{...f})}),e.forEach(f=>{h.addRelativeTo(f.middleware,{...f})}),h.identifyOnResolve?.(c.identifyOnResolve()),h),l=h=>{const f=[];return h.before.forEach(d=>{d.before.length===0&&d.after.length===0?f.push(d):f.push(...l(d))}),f.push(h),h.after.reverse().forEach(d=>{d.before.length===0&&d.after.length===0?f.push(d):f.push(...l(d))}),f},u=(h=!1)=>{const f=[],d=[],g={};return r.forEach(y=>{const A={...y,before:[],after:[]};for(const C of pl(A.name,A.aliases))g[C]=A;f.push(A)}),e.forEach(y=>{const A={...y,before:[],after:[]};for(const C of pl(A.name,A.aliases))g[C]=A;d.push(A)}),d.forEach(y=>{if(y.toMiddleware){const A=g[y.toMiddleware];if(A===void 0){if(h)return;throw new Error(`${y.toMiddleware} is not found when adding ${io(y.name,y.aliases)} middleware ${y.relation} ${y.toMiddleware}`)}y.relation==="after"&&A.after.push(y),y.relation==="before"&&A.before.push(y)}}),i(f).map(l).reduce((y,A)=>(y.push(...A),y),[])},c={add:(h,f={})=>{const{name:d,override:g,aliases:v}=f,y={step:"initialize",priority:"normal",middleware:h,...f},A=pl(d,v);if(A.length>0){if(A.some(C=>n.has(C))){if(!g)throw new Error(`Duplicate middleware name '${io(d,v)}'`);for(const C of A){const k=r.findIndex(S=>S.name===C||S.aliases?.some(R=>R===C));if(k===-1)continue;const T=r[k];if(T.step!==y.step||y.priority!==T.priority)throw new Error(`"${io(T.name,T.aliases)}" middleware with ${T.priority} priority in ${T.step} step cannot be overridden by "${io(d,v)}" middleware with ${y.priority} priority in ${y.step} step.`);r.splice(k,1)}}for(const C of A)n.add(C)}r.push(y)},addRelativeTo:(h,f)=>{const{name:d,override:g,aliases:v}=f,y={middleware:h,...f},A=pl(d,v);if(A.length>0){if(A.some(C=>n.has(C))){if(!g)throw new Error(`Duplicate middleware name '${io(d,v)}'`);for(const C of A){const k=e.findIndex(S=>S.name===C||S.aliases?.some(R=>R===C));if(k===-1)continue;const T=e[k];if(T.toMiddleware!==y.toMiddleware||T.relation!==y.relation)throw new Error(`"${io(T.name,T.aliases)}" middleware ${T.relation} "${T.toMiddleware}" middleware cannot be overridden by "${io(d,v)}" middleware ${y.relation} "${y.toMiddleware}" middleware.`);e.splice(k,1)}}for(const C of A)n.add(C)}e.push(y)},clone:()=>o(Tg()),use:h=>{h.applyToStack(c)},remove:h=>typeof h=="string"?a(h):s(h),removeByTag:h=>{let f=!1;const d=g=>{const{tags:v,name:y,aliases:A}=g;if(v&&v.includes(h)){const C=pl(y,A);for(const k of C)n.delete(k);return f=!0,!1}return!0};return r=r.filter(d),e=e.filter(d),f},concat:h=>{const f=o(Tg());return f.use(h),f.identifyOnResolve(t||f.identifyOnResolve()||(h.identifyOnResolve?.()??!1)),f},applyToStack:o,identify:()=>u(!0).map(h=>{const f=h.step??h.relation+" "+h.toMiddleware;return io(h.name,h.aliases)+" - "+f}),identifyOnResolve(h){return typeof h=="boolean"&&(t=h),t},resolve:(h,f)=>{for(const d of u().map(g=>g.middleware).reverse())h=d(h,f);return t&&console.log(c.identify()),h}};return c},zE={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},HE={high:3,normal:2,low:1};class oj{config;middlewareStack=Tg();initConfig;handlers;constructor(e){this.config=e;const{protocol:t,protocolSettings:n}=e;n&&typeof t=="function"&&(e.protocol=new t(n))}send(e,t,n){const i=typeof t!="function"?t:void 0,a=typeof t=="function"?t:n,s=i===void 0&&this.config.cacheMiddleware===!0;let o;if(s){this.handlers||(this.handlers=new WeakMap);const l=this.handlers;l.has(e.constructor)?o=l.get(e.constructor):(o=e.resolveMiddleware(this.middlewareStack,this.config,i),l.set(e.constructor,o))}else delete this.handlers,o=e.resolveMiddleware(this.middlewareStack,this.config,i);if(a)o(e).then(l=>a(null,l.output),l=>a(l)).catch(()=>{});else return o(e).then(l=>l.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}const Wv="***SensitiveInformation***";function yA(r,e){if(e==null)return e;const t=vi.of(r);if(t.getMergedTraits().sensitive)return Wv;if(t.isListSchema()){if(!!t.getValueSchema().getMergedTraits().sensitive)return Wv}else if(t.isMapSchema()){if(!!t.getKeySchema().getMergedTraits().sensitive||!!t.getValueSchema().getMergedTraits().sensitive)return Wv}else if(t.isStructSchema()&&typeof e=="object"){const n=e,i={};for(const[a,s]of t.structIterator())n[a]!=null&&(i[a]=yA(s,n[a]));return i}return e}class H1{middlewareStack=Tg();schema;static classBuilder(){return new lj}resolveMiddlewareWithContext(e,t,n,{middlewareFn:i,clientName:a,commandName:s,inputFilterSensitiveLog:o,outputFilterSensitiveLog:l,smithyContext:u,additionalContext:c,CommandCtor:h}){for(const y of i.bind(this)(h,e,t,n))this.middlewareStack.use(y);const f=e.concat(this.middlewareStack),{logger:d}=t,g={logger:d,clientName:a,commandName:s,inputFilterSensitiveLog:o,outputFilterSensitiveLog:l,[hA]:{commandInstance:this,...u},...c},{requestHandler:v}=t;return f.resolve(y=>v.handle(y.request,n||{}),g)}}class lj{_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,n={}){return this._smithyContext={service:e,operation:t,...n},this}c(e={}){return this._additionalContext=e,this}n(e,t){return this._clientName=e,this._commandName=t,this}f(e=n=>n,t=n=>n){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(){const e=this;let t;return t=class extends H1{input;static getEndpointParameterInstructions(){return e._ep}constructor(...[n]){super(),this.input=n??{},e._init(this),this.schema=e._operationSchema}resolveMiddleware(n,i,a){const s=e._operationSchema,o=s?.[4]??s?.input,l=s?.[5]??s?.output;return this.resolveMiddlewareWithContext(n,i,a,{CommandCtor:t,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog??(s?yA.bind(null,o):u=>u),outputFilterSensitiveLog:e._outputFilterSensitiveLog??(s?yA.bind(null,l):u=>u),smithyContext:e._smithyContext,additionalContext:e._additionalContext})}serialize=e._serializer;deserialize=e._deserializer}}}class Hu 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;const t=e;return Hu.prototype.isPrototypeOf(t)||!!t.$fault&&!!t.$metadata&&(t.$fault==="client"||t.$fault==="server")}static[Symbol.hasInstance](e){if(!e)return!1;const t=e;return this===Hu?Hu.isInstance(e):Hu.isInstance(e)?t.name&&this.name?this.prototype.isPrototypeOf(e)||t.name===this.name:this.prototype.isPrototypeOf(e):!1}}const jE=(r,e={})=>{Object.entries(e).filter(([,n])=>n!==void 0).forEach(([n,i])=>{(r[n]==null||r[n]==="")&&(r[n]=i)});const t=r.message||r.Message||"UnknownError";return r.message=t,delete r.Message,r},uj=r=>{switch(r){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:3e4};default:return{}}},nD=Object.values(Rd),cj=r=>{const e=[];for(const t in Rd){const n=Rd[t];r[n]!==void 0&&e.push({algorithmId:()=>n,checksumConstructor:()=>r[n]})}for(const[t,n]of Object.entries(r.checksumAlgorithms??{}))e.push({algorithmId:()=>t,checksumConstructor:()=>n});return{addChecksumAlgorithm(t){r.checksumAlgorithms=r.checksumAlgorithms??{};const n=t.algorithmId(),i=t.checksumConstructor();nD.includes(n)?r.checksumAlgorithms[n.toUpperCase()]=i:r.checksumAlgorithms[n]=i,e.push(t)},checksumAlgorithms(){return e}}},fj=r=>{const e={};return r.checksumAlgorithms().forEach(t=>{const n=t.algorithmId();nD.includes(n)&&(e[n]=t.checksumConstructor())}),e},dj=r=>({setRetryStrategy(e){r.retryStrategy=e},retryStrategy(){return r.retryStrategy}}),hj=r=>{const e={};return e.retryStrategy=r.retryStrategy(),e},pj=r=>Object.assign(cj(r),dj(r)),gj=r=>Object.assign(fj(r),hj(r));class iD{trace(){}debug(){}info(){}warn(){}error(){}}const mj=r=>r?.body instanceof ReadableStream;function vj(r,e){if(fc.isInstance(r))for(const t of Object.keys(r.headers)){const n=t.toLowerCase();if(n==="retry-after"){const i=r.headers[t];let a=NaN;if(i.endsWith("GMT"))try{a=(NI(i).getTime()-Date.now())/1e3}catch(s){e?.trace?.("Failed to parse retry-after header"),e?.trace?.(s)}else i.match(/ GMT, ((\d+)|(\d+\.\d+))$/)?a=Number(i.match(/ GMT, ([\d.]+)$/)?.[1]):i.match(/^((\d+)|(\d+\.\d+))$/)?a=Number(i):Date.parse(i)>=Date.now()&&(a=(Date.parse(i)-Date.now())/1e3);return isNaN(a)?void 0:new Date(Date.now()+a*1e3)}else if(n==="x-amz-retry-after"){const i=r.headers[t],a=Number(i);if(isNaN(a)){e?.trace?.(`Failed to parse x-amz-retry-after=${i}`);return}return new Date(Date.now()+a)}}}const yj=r=>(e,t)=>async n=>{let i=await r.retryStrategy();const a=await r.maxAttempts();if(Aj(i)){i=i;let s=await i.acquireInitialRetryToken((t.partition_id??"")+(t.__retryLongPoll?":longpoll":"")),o=new Error,l=0,u=0;const{request:c}=n,h=aa.isInstance(c);for(h&&(c.headers[tj]=LI());;)try{h&&(c.headers[rj]=`attempt=${l+1}; max=${a}`);const{response:f,output:d}=await e(n);return i.recordSuccess(s),d.$metadata.attempts=l+1,d.$metadata.totalRetryDelay=u,{response:f,output:d}}catch(f){const d=bj(f,r.logger);if(o=aj(f),h&&mj(c))throw(t.logger instanceof iD?console:t.logger)?.warn("An error was encountered in a non-retryable streaming request."),o;try{s=await i.refreshRetryTokenForRetry(s,d)}catch(v){throw typeof v.$backoff=="number"&&await GE(v.$backoff),o.$metadata||(o.$metadata={}),o.$metadata.attempts=l+1,o.$metadata.totalRetryDelay=u,o}l=s.getRetryCount();const g=s.getRetryDelay();u+=g,await GE(g)}}else return i=i,i?.mode&&(t.userAgent=[...t.userAgent||[],["cfg/retry-mode",i.mode]]),i.retry(e,n)},GE=r=>new Promise(e=>setTimeout(e,r)),Aj=r=>typeof r.acquireInitialRetryToken<"u"&&typeof r.refreshRetryTokenForRetry<"u"&&typeof r.recordSuccess<"u",bj=(r,e)=>{const t={error:r,errorType:wj(r)},n=vj(r.$response,e);return n&&(t.retryAfterHint=n),t},wj=r=>JI(r)?"THROTTLING":V1(r)?"TRANSIENT":CH(r)?"SERVER_ERROR":"CLIENT_ERROR",Cj={name:"retryMiddleware",tags:["RETRY"],step:"finalizeRequest",priority:"high",override:!0},xj=r=>({applyToStack:e=>{e.add(yj(r),Cj)}}),$E=r=>fc.isInstance(r)?r.headers?.date??r.headers?.Date:void 0,aD=r=>new Date(Date.now()+r),Sj=(r,e)=>Math.abs(aD(e).getTime()-r)>=3e5,qE=(r,e)=>{const t=Date.parse(r);return Sj(t,e)?t-Date.now():e},fd=(r,e)=>{if(!e)throw new Error(`Property \`${r}\` is not resolved for AWS SDK SigV4Auth`);return e},Ej=async r=>{const e=fd("context",r.context),t=fd("config",r.config),n=e.endpointV2?.properties?.authSchemes?.[0],a=await fd("signer",t.signer)(n),s=r?.signingRegion,o=r?.signingRegionSet,l=r?.signingName;return{config:t,signer:a,signingRegion:s,signingRegionSet:o,signingName:l}};class kj{async sign(e,t,n){if(!aa.isInstance(e))throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");const i=await Ej(n),{config:a,signer:s}=i;let{signingRegion:o,signingName:l}=i;const u=n.context;if(u?.authSchemes?.length??!1){const[h,f]=u.authSchemes;h?.name==="sigv4a"&&f?.name==="sigv4"&&(o=f?.signingRegion??o,l=f?.signingName??l)}return await s.sign(e,{signingDate:aD(a.systemClockOffset),signingRegion:o,signingService:l})}errorHandler(e){return t=>{const n=t.ServerTime??$E(t.$response);if(n){const i=fd("config",e.config),a=i.systemClockOffset;i.systemClockOffset=qE(n,i.systemClockOffset),i.systemClockOffset!==a&&t.$metadata&&(t.$metadata.clockSkewCorrected=!0)}throw t}}successHandler(e,t){const n=$E(e);if(n){const i=fd("config",t.config);i.systemClockOffset=qE(n,i.systemClockOffset)}}}const Fj=(r,e,t)=>{let n,i,a,s=!1;const o=async()=>{i||(i=r());try{n=await i,a=!0,s=!1}finally{i=void 0}return n};return async l=>((!a||l?.forceRefresh)&&(n=await o()),n)},Tj="X-Amz-Algorithm",Ij="X-Amz-Credential",sD="X-Amz-Date",Dj="X-Amz-SignedHeaders",Pj="X-Amz-Expires",oD="X-Amz-Signature",lD="X-Amz-Security-Token",uD="authorization",cD=sD.toLowerCase(),Rj="date",Oj=[uD,cD,Rj],Bj=oD.toLowerCase(),AA="x-amz-content-sha256",Mj=lD.toLowerCase(),_j={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},Nj=/^proxy-/,Lj=/^sec-/,Qv="AWS4-HMAC-SHA256",Uj="AWS4-HMAC-SHA256-PAYLOAD",Vj="UNSIGNED-PAYLOAD",zj=50,fD="aws4_request",Hj=3600*24*7,Np={},Yv=[],Xv=(r,e,t)=>`${r}/${e}/${t}/${fD}`,jj=async(r,e,t,n,i)=>{const a=await WE(r,e.secretAccessKey,e.accessKeyId),s=`${t}:${n}:${i}:${kl(a)}:${e.sessionToken}`;if(s in Np)return Np[s];for(Yv.push(s);Yv.length>zj;)delete Np[Yv.shift()];let o=`AWS4${e.secretAccessKey}`;for(const l of[t,n,i,fD])o=await WE(r,o,l);return Np[s]=o},WE=(r,e,t)=>{const n=new r(e);return n.update(Od(t)),n.digest()},QE=({headers:r},e,t)=>{const n={};for(const i of Object.keys(r).sort()){if(r[i]==null)continue;const a=i.toLowerCase();(a in _j||e?.has(a)||Nj.test(a)||Lj.test(a))&&(!t||t&&!t.has(a))||(n[a]=r[i].trim().replace(/\s+/g," "))}return n},Gj=r=>typeof ArrayBuffer=="function"&&r instanceof ArrayBuffer||Object.prototype.toString.call(r)==="[object ArrayBuffer]",Jv=async({headers:r,body:e},t)=>{for(const n of Object.keys(r))if(n.toLowerCase()===AA)return r[n];if(e==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof e=="string"||ArrayBuffer.isView(e)||Gj(e)){const n=new t;return n.update(Od(e)),kl(await n.digest())}return Vj};class $j{format(e){const t=[];for(const a of Object.keys(e)){const s=Dl(a);t.push(Uint8Array.from([s.byteLength]),s,this.formatHeaderValue(e[a]))}const n=new Uint8Array(t.reduce((a,s)=>a+s.byteLength,0));let i=0;for(const a of t)n.set(a,i),i+=a.byteLength;return n}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":const t=new DataView(new ArrayBuffer(3));return t.setUint8(0,3),t.setInt16(1,e.value,!1),new Uint8Array(t.buffer);case"integer":const n=new DataView(new ArrayBuffer(5));return n.setUint8(0,4),n.setInt32(1,e.value,!1),new Uint8Array(n.buffer);case"long":const i=new Uint8Array(9);return i[0]=5,i.set(e.value.bytes,1),i;case"binary":const a=new DataView(new ArrayBuffer(3+e.value.byteLength));a.setUint8(0,6),a.setUint16(1,e.value.byteLength,!1);const s=new Uint8Array(a.buffer);return s.set(e.value,3),s;case"string":const o=Dl(e.value),l=new DataView(new ArrayBuffer(3+o.byteLength));l.setUint8(0,7),l.setUint16(1,o.byteLength,!1);const u=new Uint8Array(l.buffer);return u.set(o,3),u;case"timestamp":const c=new Uint8Array(9);return c[0]=8,c.set(j1.fromNumber(e.value.valueOf()).bytes,1),c;case"uuid":if(!qj.test(e.value))throw new Error(`Invalid UUID received: ${e.value}`);const h=new Uint8Array(17);return h[0]=9,h.set(WV(e.value.replace(/\-/g,"")),1),h}}}var YE;(function(r){r[r.boolTrue=0]="boolTrue",r[r.boolFalse=1]="boolFalse",r[r.byte=2]="byte",r[r.short=3]="short",r[r.integer=4]="integer",r[r.long=5]="long",r[r.byteArray=6]="byteArray",r[r.string=7]="string",r[r.timestamp=8]="timestamp",r[r.uuid=9]="uuid"})(YE||(YE={}));const qj=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;class j1{bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776e3||e<-9223372036854776e3)throw new Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);const t=new Uint8Array(8);for(let n=7,i=Math.abs(Math.round(e));n>-1&&i>0;n--,i/=256)t[n]=i;return e<0&&XE(t),new j1(t)}valueOf(){const e=this.bytes.slice(0),t=e[0]&128;return t&&XE(e),parseInt(kl(e),16)*(t?-1:1)}toString(){return String(this.valueOf())}}function XE(r){for(let e=0;e<8;e++)r[e]^=255;for(let e=7;e>-1&&(r[e]++,r[e]===0);e--);}const Wj=(r,e)=>{r=r.toLowerCase();for(const t of Object.keys(e))if(r===t.toLowerCase())return!0;return!1},Qj=(r,e={})=>{const{headers:t,query:n={}}=aa.clone(r);for(const i of Object.keys(t)){const a=i.toLowerCase();(a.slice(0,6)==="x-amz-"&&!e.unhoistableHeaders?.has(a)||e.hoistableHeaders?.has(a))&&(n[i]=t[i],delete t[i])}return{...r,headers:t,query:n}},JE=r=>{r=aa.clone(r);for(const e of Object.keys(r.headers))Oj.indexOf(e.toLowerCase())>-1&&delete r.headers[e];return r},Yj=({query:r={}})=>{const e=[],t={};for(const n of Object.keys(r)){if(n.toLowerCase()===Bj)continue;const i=El(n);e.push(i);const a=r[n];typeof a=="string"?t[i]=`${i}=${El(a)}`:Array.isArray(a)&&(t[i]=a.slice(0).reduce((s,o)=>s.concat([`${i}=${El(o)}`]),[]).sort().join("&"))}return e.sort().map(n=>t[n]).filter(n=>n).join("&")},Xj=r=>Jj(r).toISOString().replace(/\.\d{3}Z$/,"Z"),Jj=r=>typeof r=="number"?new Date(r*1e3):typeof r=="string"?Number(r)?new Date(Number(r)*1e3):new Date(r):r;class Kj{service;regionProvider;credentialProvider;sha256;uriEscapePath;applyChecksum;constructor({applyChecksum:e,credentials:t,region:n,service:i,sha256:a,uriEscapePath:s=!0}){this.service=i,this.sha256=a,this.uriEscapePath=s,this.applyChecksum=typeof e=="boolean"?e:!0,this.regionProvider=Ls(n),this.credentialProvider=Ls(t)}createCanonicalRequest(e,t,n){const i=Object.keys(t).sort();return`${e.method}
2804
+ `),cz={warn:console.warn},fz=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],N1=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function dz(r){const e=r.getUTCFullYear(),t=r.getUTCMonth(),n=r.getUTCDay(),i=r.getUTCDate(),a=r.getUTCHours(),s=r.getUTCMinutes(),o=r.getUTCSeconds(),l=i<10?`0${i}`:`${i}`,u=a<10?`0${a}`:`${a}`,c=s<10?`0${s}`:`${s}`,h=o<10?`0${o}`:`${o}`;return`${fz[n]}, ${l} ${N1[t]} ${e} ${u}:${c}:${h} GMT`}const hz=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),pz=r=>{if(r==null)return;if(typeof r!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");const e=hz.exec(r);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");const[t,n,i,a,s,o,l,u,c]=e,h=Fg(Bd(n)),f=bo(i,"month",1,12),d=bo(a,"day",1,31),g=rg(h,f,d,{hours:s,minutes:o,seconds:l,fractionalMilliseconds:u});return c.toUpperCase()!="Z"&&g.setTime(g.getTime()-kz(c)),g},gz=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$/),mz=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$/),vz=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})$/),NI=r=>{if(r==null)return;if(typeof r!="string")throw new TypeError("RFC-7231 date-times must be expressed as strings");let e=gz.exec(r);if(e){const[t,n,i,a,s,o,l,u]=e;return rg(Fg(Bd(a)),jv(i),bo(n,"day",1,31),{hours:s,minutes:o,seconds:l,fractionalMilliseconds:u})}if(e=mz.exec(r),e){const[t,n,i,a,s,o,l,u]=e;return wz(rg(Az(a),jv(i),bo(n,"day",1,31),{hours:s,minutes:o,seconds:l,fractionalMilliseconds:u}))}if(e=vz.exec(r),e){const[t,n,i,a,s,o,l,u]=e;return rg(Fg(Bd(u)),jv(n),bo(i.trimLeft(),"day",1,31),{hours:a,minutes:s,seconds:o,fractionalMilliseconds:l})}throw new TypeError("Invalid RFC-7231 date-time value")},yz=r=>{if(r==null)return;let e;if(typeof r=="number")e=r;else if(typeof r=="string")e=az(r);else if(typeof r=="object"&&r.tag===1)e=r.value;else throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(e)||e===1/0||e===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(e*1e3))},rg=(r,e,t,n)=>{const i=e-1;return xz(r,i,t),new Date(Date.UTC(r,i,t,bo(n.hours,"hour",0,23),bo(n.minutes,"minute",0,59),bo(n.seconds,"seconds",0,60),Ez(n.fractionalMilliseconds)))},Az=r=>{const e=new Date().getUTCFullYear(),t=Math.floor(e/100)*100+Fg(Bd(r));return t<e?t+100:t},bz=50*365*24*60*60*1e3,wz=r=>r.getTime()-new Date().getTime()>bz?new Date(Date.UTC(r.getUTCFullYear()-100,r.getUTCMonth(),r.getUTCDate(),r.getUTCHours(),r.getUTCMinutes(),r.getUTCSeconds(),r.getUTCMilliseconds())):r,jv=r=>{const e=N1.indexOf(r);if(e<0)throw new TypeError(`Invalid month: ${r}`);return e+1},Cz=[31,28,31,30,31,30,31,31,30,31,30,31],xz=(r,e,t)=>{let n=Cz[e];if(e===1&&Sz(r)&&(n=29),t>n)throw new TypeError(`Invalid day for ${N1[e]} in ${r}: ${t}`)},Sz=r=>r%4===0&&(r%100!==0||r%400===0),bo=(r,e,t,n)=>{const i=lz(Bd(r));if(i<t||i>n)throw new TypeError(`${e} must be between ${t} and ${n}, inclusive`);return i},Ez=r=>r==null?0:sz("0."+r)*1e3,kz=r=>{const e=r[0];let t=1;if(e=="+")t=1;else if(e=="-")t=-1;else throw new TypeError(`Offset direction, ${e}, must be "+" or "-"`);const n=Number(r.substring(1,3)),i=Number(r.substring(4,6));return t*(n*60+i)*60*1e3},Bd=r=>{let e=0;for(;e<r.length-1&&r.charAt(e)==="0";)e++;return e===0?r:r.slice(e)},PE=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Ti=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0")),LI=()=>{if(PE)return PE();const r=new Uint8Array(16);return crypto.getRandomValues(r),r[6]=r[6]&15|64,r[8]=r[8]&63|128,Ti[r[0]]+Ti[r[1]]+Ti[r[2]]+Ti[r[3]]+"-"+Ti[r[4]]+Ti[r[5]]+"-"+Ti[r[6]]+Ti[r[7]]+"-"+Ti[r[8]]+Ti[r[9]]+"-"+Ti[r[10]]+Ti[r[11]]+Ti[r[12]]+Ti[r[13]]+Ti[r[14]]+Ti[r[15]]},mo=function(e){return Object.assign(new String(e),{deserializeJSON(){return JSON.parse(String(e))},toString(){return String(e)},toJSON(){return String(e)}})};mo.from=r=>r&&typeof r=="object"&&(r instanceof mo||"deserializeJSON"in r)?r:typeof r=="string"||Object.getPrototypeOf(r)===String.prototype?mo(String(r)):mo(JSON.stringify(r));mo.fromObject=mo.from;const RE=/^-?\d*(\.\d+)?$/;class as{string;type;constructor(e,t){if(this.string=e,this.type=t,!RE.test(e))throw new 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;const t=e;return as.prototype.isPrototypeOf(e)||t.type==="bigDecimal"&&RE.test(t.string)}}class Fz{serdeContext;setSerdeContext(e){this.serdeContext=e}}class Tz extends Fz{options;compositeErrorRegistry;constructor(e){super(),this.options=e,this.compositeErrorRegistry=ra.for(e.defaultNamespace);for(const t of e.errorTypeRegistries??[])this.compositeErrorRegistry.copyFrom(t)}getRequestType(){return aa}getResponseType(){return fc}setSerdeContext(e){this.serdeContext=e,this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e),this.getPayloadCodec()&&this.getPayloadCodec().setSerdeContext(e)}updateServiceEndpoint(e,t){if("url"in t){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(const[n,i]of t.url.searchParams.entries())e.query[n]=i;if(t.headers)for(const[n,i]of Object.entries(t.headers))e.headers[n]=i.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(const[n,i]of Object.entries(t.headers))e.headers[n]=i;return e}}setHostPrefix(e,t,n){if(this.serdeContext?.disableHostPrefix)return;const i=vi.of(t.input),a=Jf(t.traits??{});if(a.endpoint){let s=a.endpoint?.[0];if(typeof s=="string"){const o=[...i.structIterator()].filter(([,l])=>l.getMergedTraits().hostLabel);for(const[l]of o){const u=n[l];if(typeof u!="string")throw new Error(`@smithy/core/schema - ${l} in input must be a string as hostLabel.`);s=s.replace(`{${l}}`,u)}e.hostname=s+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:n}){return(await this.loadEventStreamCapability()).serializeEventStream({eventStream:e,requestSchema:t,initialRequest:n})}async deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:n}){return(await this.loadEventStreamCapability()).deserializeEventStream({response:e,responseSchema:t,initialResponseContainer:n})}async loadEventStreamCapability(){const{EventStreamSerde:e}=await Promise.resolve().then(()=>require("./index-CpoaFOV-.cjs"));return new e({marshaller:this.getEventStreamMarshaller(),serializer:this.serializer,deserializer:this.deserializer,serdeContext:this.serdeContext,defaultContentType:this.getDefaultContentType()})}getDefaultContentType(){throw new Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`)}async deserializeHttpMessage(e,t,n,i,a){return[]}getEventStreamMarshaller(){const e=this.serdeContext;if(!e.eventStreamMarshaller)throw new Error("@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.");return e.eventStreamMarshaller}}class Iz extends Tz{async serializeRequest(e,t,n){const i=this.serializer,a={},s={},o=await n.endpoint(),l=vi.of(e?.input),u=l.getSchema();let c;const h=t&&typeof t=="object"?t:{},f=new aa({protocol:"",hostname:"",port:void 0,path:"/",fragment:void 0,query:a,headers:s,body:void 0});if(o&&(this.updateServiceEndpoint(f,o),this.setHostPrefix(f,e,h)),h){const d=l.getEventStreamMember();if(d){if(h[d]){const g={};for(const[v,y]of l.structIterator())v!==d&&h[v]&&(i.write(y,h[v]),g[v]=i.flush());c=await this.serializeEventStream({eventStream:h[d],requestSchema:l,initialRequest:g})}}else i.write(u,h),c=i.flush()}return f.headers=Object.assign(f.headers,s),f.query=a,f.body=c,f.method="POST",f}async deserializeResponse(e,t,n){const i=this.deserializer,a=vi.of(e.output),s={};if(n.statusCode>=300){const l=await gA(n.body,t);throw l.byteLength>0&&Object.assign(s,await i.read(15,l)),await this.handleError(e,t,n,s,this.deserializeMetadata(n)),new Error("@smithy/core/protocols - RPC Protocol error handler failed to throw.")}for(const l in n.headers){const u=n.headers[l];delete n.headers[l],n.headers[l.toLowerCase()]=u}const o=a.getEventStreamMember();if(o)s[o]=await this.deserializeEventStream({response:n,responseSchema:a,initialResponseContainer:s});else{const l=await gA(n.body,t);l.byteLength>0&&Object.assign(s,await i.read(a,l))}return s.$metadata=this.deserializeMetadata(n),s}}function UI(r,e){if(e.timestampFormat.useTrait&&r.isTimestampSchema()&&(r.getSchema()===5||r.getSchema()===6||r.getSchema()===7))return r.getSchema();const{httpLabel:t,httpPrefixHeaders:n,httpHeader:i,httpQuery:a}=r.getMergedTraits();return(e.httpBindings?typeof n=="string"||i?6:a||t?5:void 0:void 0)??e.timestampFormat.default}function Dz(r,e,t){r.__smithy_context?r.__smithy_context.features||(r.__smithy_context.features={}):r.__smithy_context={features:{}},r.__smithy_context.features[e]=t}class Pz{authSchemes=new Map;constructor(e){for(const[t,n]of Object.entries(e))n!==void 0&&this.authSchemes.set(t,n)}getIdentityProvider(e){return this.authSchemes.get(e)}}class Rz{async sign(e,t,n){return e}}const Oz=r=>function(t){return VI(t)&&t.expiration.getTime()-Date.now()<r},Bz=3e5,Mz=Oz(Bz),VI=r=>r.expiration!==void 0,_z=(r,e,t)=>{if(r===void 0)return;const n=typeof r!="function"?async()=>Promise.resolve(r):r;let i,a,s,o=!1;const l=async u=>{a||(a=n(u));try{i=await a,s=!0,o=!1}finally{a=void 0}return i};return e===void 0?async u=>((!s||u?.forceRefresh)&&(i=await l(u)),i):async u=>((!s||u?.forceRefresh)&&(i=await l(u)),o?i:t(i)?(e(i)&&await l(u),i):(o=!0,i))},Nz=void 0;function Lz(r){return r===void 0?!0:typeof r=="string"&&r.length<=50}function Uz(r){const e=ld(r.userAgentAppId??Nz),{customUserAgent:t}=r;return Object.assign(r,{customUserAgent:typeof t=="string"?[[t]]:t,userAgentAppId:async()=>{const n=await e();if(!Lz(n)){const i=r.logger?.constructor?.name==="NoOpLogger"||!r.logger?console:r.logger;typeof n!="string"?i?.warn("userAgentAppId must be a string or undefined."):n.length>50&&i?.warn("The provided userAgentAppId exceeds the maximum length of 50 characters.")}return n}})}class Vz{capacity;data=new Map;parameters=[];constructor({size:e,params:t}){this.capacity=e??50,t&&(this.parameters=t)}get(e,t){const n=this.hash(e);if(n===!1)return t();if(!this.data.has(n)){if(this.data.size>this.capacity+10){const i=this.data.keys();let a=0;for(;;){const{value:s,done:o}=i.next();if(this.data.delete(s),o||++a>10)break}}this.data.set(n,t())}return this.data.get(n)}size(){return this.data.size}hash(e){let t="";const{parameters:n}=this;if(n.length===0)return!1;for(const i of n){const a=String(e[i]??"");if(a.includes("|;"))return!1;t+=a+"|;"}return t}}const zz=new RegExp("^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$"),L1=r=>zz.test(r)||r.startsWith("[")&&r.endsWith("]"),Hz=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),oh=(r,e=!1)=>{if(!e)return Hz.test(r);const t=r.split(".");for(const n of t)if(!oh(n))return!1;return!0},Md={},_d="endpoints";function Po(r){return typeof r!="object"||r==null?r:"ref"in r?`$${Po(r.ref)}`:"fn"in r?`${r.fn}(${(r.argv||[]).map(Po).join(", ")})`:JSON.stringify(r,null,2)}class sa extends Error{constructor(e){super(e),this.name="EndpointError"}}const jz=(r,e)=>r===e,Gz=r=>{const e=r.split("."),t=[];for(const n of e){const i=n.indexOf("[");if(i!==-1){if(n.indexOf("]")!==n.length-1)throw new sa(`Path: '${r}' does not end with ']'`);const a=n.slice(i+1,-1);if(Number.isNaN(parseInt(a)))throw new sa(`Invalid array index: '${a}' in path: '${r}'`);i!==0&&t.push(n.slice(0,i)),t.push(a)}else t.push(n)}return t},zI=(r,e)=>Gz(e).reduce((t,n)=>{if(typeof t!="object")throw new sa(`Index '${n}' in '${e}' not found in '${JSON.stringify(r)}'`);return Array.isArray(t)?t[parseInt(n)]:t[n]},r),$z=r=>r!=null,qz=r=>!r,Gv={[Pd.HTTP]:80,[Pd.HTTPS]:443},Wz=r=>{const e=(()=>{try{if(r instanceof URL)return r;if(typeof r=="object"&&"hostname"in r){const{hostname:f,port:d,protocol:g="",path:v="",query:y={}}=r,A=new URL(`${g}//${f}${d?`:${d}`:""}${v}`);return A.search=Object.entries(y).map(([C,k])=>`${C}=${k}`).join("&"),A}return new URL(r)}catch{return null}})();if(!e)return console.error(`Unable to parse ${JSON.stringify(r)} as a whatwg URL.`),null;const t=e.href,{host:n,hostname:i,pathname:a,protocol:s,search:o}=e;if(o)return null;const l=s.slice(0,-1);if(!Object.values(Pd).includes(l))return null;const u=L1(i),c=t.includes(`${n}:${Gv[l]}`)||typeof r=="string"&&r.includes(`${n}:${Gv[l]}`),h=`${n}${c?`:${Gv[l]}`:""}`;return{scheme:l,authority:h,path:a,normalizedPath:a.endsWith("/")?a:`${a}/`,isIp:u}},Qz=(r,e)=>r===e,Yz=(r,e,t,n)=>e>=t||r.length<t||/[^\u0000-\u007f]/.test(r)?null:n?r.substring(r.length-t,r.length-e):r.substring(e,t),Xz=r=>encodeURIComponent(r).replace(/[!*'()]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`),Jz={booleanEquals:jz,getAttr:zI,isSet:$z,isValidHostLabel:oh,not:qz,parseURL:Wz,stringEquals:Qz,substring:Yz,uriEncode:Xz},HI=(r,e)=>{const t=[],n={...e.endpointParams,...e.referenceRecord};let i=0;for(;i<r.length;){const a=r.indexOf("{",i);if(a===-1){t.push(r.slice(i));break}t.push(r.slice(i,a));const s=r.indexOf("}",a);if(s===-1){t.push(r.slice(a));break}r[a+1]==="{"&&r[s+1]==="}"&&(t.push(r.slice(a+1,s)),i=s+2);const o=r.substring(a+1,s);if(o.includes("#")){const[l,u]=o.split("#");t.push(zI(n[l],u))}else t.push(n[o]);i=s+1}return t.join("")},Kz=({ref:r},e)=>({...e.endpointParams,...e.referenceRecord})[r],sm=(r,e,t)=>{if(typeof r=="string")return HI(r,t);if(r.fn)return GI.callFunction(r,t);if(r.ref)return Kz(r,t);throw new sa(`'${e}': ${String(r)} is not a string, function or reference.`)},jI=({fn:r,argv:e},t)=>{const n=e.map(a=>["boolean","number"].includes(typeof a)?a:GI.evaluateExpression(a,"arg",t)),i=r.split(".");return i[0]in Md&&i[1]!=null?Md[i[0]][i[1]](...n):Jz[r](...n)},GI={evaluateExpression:sm,callFunction:jI},Zz=({assign:r,...e},t)=>{if(r&&r in t.referenceRecord)throw new sa(`'${r}' is already defined in Reference Record.`);const n=jI(e,t);return t.logger?.debug?.(`${_d} evaluateCondition: ${Po(e)} = ${Po(n)}`),{result:n===""?!0:!!n,...r!=null&&{toAssign:{name:r,value:n}}}},U1=(r=[],e)=>{const t={};for(const n of r){const{result:i,toAssign:a}=Zz(n,{...e,referenceRecord:{...e.referenceRecord,...t}});if(!i)return{result:i};a&&(t[a.name]=a.value,e.logger?.debug?.(`${_d} assign: ${a.name} := ${Po(a.value)}`))}return{result:!0,referenceRecord:t}},eH=(r,e)=>Object.entries(r).reduce((t,[n,i])=>({...t,[n]:i.map(a=>{const s=sm(a,"Header value entry",e);if(typeof s!="string")throw new sa(`Header '${n}' value '${s}' is not a string`);return s})}),{}),$I=(r,e)=>Object.entries(r).reduce((t,[n,i])=>({...t,[n]:WI.getEndpointProperty(i,e)}),{}),qI=(r,e)=>{if(Array.isArray(r))return r.map(t=>qI(t,e));switch(typeof r){case"string":return HI(r,e);case"object":if(r===null)throw new sa(`Unexpected endpoint property: ${r}`);return WI.getEndpointProperties(r,e);case"boolean":return r;default:throw new sa(`Unexpected endpoint property type: ${typeof r}`)}},WI={getEndpointProperty:qI,getEndpointProperties:$I},tH=(r,e)=>{const t=sm(r,"Endpoint URL",e);if(typeof t=="string")try{return new URL(t)}catch(n){throw console.error(`Failed to construct URL with ${t}`,n),n}throw new sa(`Endpoint URL must be a string, got ${typeof t}`)},rH=(r,e)=>{const{conditions:t,endpoint:n}=r,{result:i,referenceRecord:a}=U1(t,e);if(!i)return;const s={...e,referenceRecord:{...e.referenceRecord,...a}},{url:o,properties:l,headers:u}=n;return e.logger?.debug?.(`${_d} Resolving endpoint from template: ${Po(n)}`),{...u!=null&&{headers:eH(u,s)},...l!=null&&{properties:$I(l,s)},url:tH(o,s)}},nH=(r,e)=>{const{conditions:t,error:n}=r,{result:i,referenceRecord:a}=U1(t,e);if(i)throw new sa(sm(n,"Error",{...e,referenceRecord:{...e.referenceRecord,...a}}))},QI=(r,e)=>{for(const t of r)if(t.type==="endpoint"){const n=rH(t,e);if(n)return n}else if(t.type==="error")nH(t,e);else if(t.type==="tree"){const n=YI.evaluateTreeRule(t,e);if(n)return n}else throw new sa(`Unknown endpoint rule: ${t}`);throw new sa("Rules evaluation failed")},iH=(r,e)=>{const{conditions:t,rules:n}=r,{result:i,referenceRecord:a}=U1(t,e);if(i)return YI.evaluateRules(n,{...e,referenceRecord:{...e.referenceRecord,...a}})},YI={evaluateRules:QI,evaluateTreeRule:iH},aH=(r,e)=>{const{endpointParams:t,logger:n}=e,{parameters:i,rules:a}=r;e.logger?.debug?.(`${_d} Initial EndpointParams: ${Po(t)}`);const s=Object.entries(i).filter(([,u])=>u.default!=null).map(([u,c])=>[u,c.default]);if(s.length>0)for(const[u,c]of s)t[u]=t[u]??c;const o=Object.entries(i).filter(([,u])=>u.required).map(([u])=>u);for(const u of o)if(t[u]==null)throw new sa(`Missing required parameter: '${u}'`);const l=QI(a,{endpointParams:t,logger:n,referenceRecord:{}});return e.logger?.debug?.(`${_d} Resolved endpoint: ${Po(l)}`),l},XI=(r,e=!1)=>{if(e){for(const t of r.split("."))if(!XI(t))return!1;return!0}return!(!oh(r)||r.length<3||r.length>63||r!==r.toLowerCase()||L1(r))},OE=":",sH="/",oH=r=>{const e=r.split(OE);if(e.length<6)return null;const[t,n,i,a,s,...o]=e;if(t!=="arn"||n===""||i===""||o.join(OE)==="")return null;const l=o.map(u=>u.split(sH)).flat();return{partition:n,service:i,region:a,accountId:s,resourceId:l}},lH=[{id:"aws",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-east-1",name:"aws",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$",regions:{"af-south-1":{description:"Africa (Cape Town)"},"ap-east-1":{description:"Asia Pacific (Hong Kong)"},"ap-east-2":{description:"Asia Pacific (Taipei)"},"ap-northeast-1":{description:"Asia Pacific (Tokyo)"},"ap-northeast-2":{description:"Asia Pacific (Seoul)"},"ap-northeast-3":{description:"Asia Pacific (Osaka)"},"ap-south-1":{description:"Asia Pacific (Mumbai)"},"ap-south-2":{description:"Asia Pacific (Hyderabad)"},"ap-southeast-1":{description:"Asia Pacific (Singapore)"},"ap-southeast-2":{description:"Asia Pacific (Sydney)"},"ap-southeast-3":{description:"Asia Pacific (Jakarta)"},"ap-southeast-4":{description:"Asia Pacific (Melbourne)"},"ap-southeast-5":{description:"Asia Pacific (Malaysia)"},"ap-southeast-6":{description:"Asia Pacific (New Zealand)"},"ap-southeast-7":{description:"Asia Pacific (Thailand)"},"aws-global":{description:"aws global region"},"ca-central-1":{description:"Canada (Central)"},"ca-west-1":{description:"Canada West (Calgary)"},"eu-central-1":{description:"Europe (Frankfurt)"},"eu-central-2":{description:"Europe (Zurich)"},"eu-north-1":{description:"Europe (Stockholm)"},"eu-south-1":{description:"Europe (Milan)"},"eu-south-2":{description:"Europe (Spain)"},"eu-west-1":{description:"Europe (Ireland)"},"eu-west-2":{description:"Europe (London)"},"eu-west-3":{description:"Europe (Paris)"},"il-central-1":{description:"Israel (Tel Aviv)"},"me-central-1":{description:"Middle East (UAE)"},"me-south-1":{description:"Middle East (Bahrain)"},"mx-central-1":{description:"Mexico (Central)"},"sa-east-1":{description:"South America (Sao Paulo)"},"us-east-1":{description:"US East (N. Virginia)"},"us-east-2":{description:"US East (Ohio)"},"us-west-1":{description:"US West (N. California)"},"us-west-2":{description:"US West (Oregon)"}}},{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn",dualStackDnsSuffix:"api.amazonwebservices.com.cn",implicitGlobalRegion:"cn-northwest-1",name:"aws-cn",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:{"aws-cn-global":{description:"aws-cn global region"},"cn-north-1":{description:"China (Beijing)"},"cn-northwest-1":{description:"China (Ningxia)"}}},{id:"aws-eusc",outputs:{dnsSuffix:"amazonaws.eu",dualStackDnsSuffix:"api.amazonwebservices.eu",implicitGlobalRegion:"eusc-de-east-1",name:"aws-eusc",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eusc\\-(de)\\-\\w+\\-\\d+$",regions:{"eusc-de-east-1":{description:"AWS European Sovereign Cloud (Germany)"}}},{id:"aws-iso",outputs:{dnsSuffix:"c2s.ic.gov",dualStackDnsSuffix:"api.aws.ic.gov",implicitGlobalRegion:"us-iso-east-1",name:"aws-iso",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",regions:{"aws-iso-global":{description:"aws-iso global region"},"us-iso-east-1":{description:"US ISO East"},"us-iso-west-1":{description:"US ISO WEST"}}},{id:"aws-iso-b",outputs:{dnsSuffix:"sc2s.sgov.gov",dualStackDnsSuffix:"api.aws.scloud",implicitGlobalRegion:"us-isob-east-1",name:"aws-iso-b",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",regions:{"aws-iso-b-global":{description:"aws-iso-b global region"},"us-isob-east-1":{description:"US ISOB East (Ohio)"},"us-isob-west-1":{description:"US ISOB West"}}},{id:"aws-iso-e",outputs:{dnsSuffix:"cloud.adc-e.uk",dualStackDnsSuffix:"api.cloud-aws.adc-e.uk",implicitGlobalRegion:"eu-isoe-west-1",name:"aws-iso-e",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eu\\-isoe\\-\\w+\\-\\d+$",regions:{"aws-iso-e-global":{description:"aws-iso-e global region"},"eu-isoe-west-1":{description:"EU ISOE West"}}},{id:"aws-iso-f",outputs:{dnsSuffix:"csp.hci.ic.gov",dualStackDnsSuffix:"api.aws.hci.ic.gov",implicitGlobalRegion:"us-isof-south-1",name:"aws-iso-f",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isof\\-\\w+\\-\\d+$",regions:{"aws-iso-f-global":{description:"aws-iso-f global region"},"us-isof-east-1":{description:"US ISOF EAST"},"us-isof-south-1":{description:"US ISOF SOUTH"}}},{id:"aws-us-gov",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-gov-west-1",name:"aws-us-gov",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",regions:{"aws-us-gov-global":{description:"aws-us-gov global region"},"us-gov-east-1":{description:"AWS GovCloud (US-East)"},"us-gov-west-1":{description:"AWS GovCloud (US-West)"}}}],uH={partitions:lH};let cH=uH;const fH=r=>{const{partitions:e}=cH;for(const n of e){const{regions:i,outputs:a}=n;for(const[s,o]of Object.entries(i))if(s===r)return{...a,...o}}for(const n of e){const{regionRegex:i,outputs:a}=n;if(new RegExp(i).test(r))return{...a}}const t=e.find(n=>n.id==="aws");if(!t)throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");return{...t.outputs}},dH={isVirtualHostableS3Bucket:XI,parseArn:oH,partition:fH};Md.aws=dH;function hH(r,e,t){return r.$source||(r.$source={}),r.$source[e]=t,r}function Ds(r,e,t){r.__aws_sdk_context?r.__aws_sdk_context.features||(r.__aws_sdk_context.features={}):r.__aws_sdk_context={features:{}},r.__aws_sdk_context.features[e]=t}var Nd;(function(r){r.STANDARD="standard",r.ADAPTIVE="adaptive"})(Nd||(Nd={}));Nd.STANDARD;const pH=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],gH=["TimeoutError","RequestTimeout","RequestTimeoutException"],mH=[500,502,503,504],vH=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],yH=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"],AH=r=>r?.$retryable!==void 0,bH=r=>r.$metadata?.clockSkewCorrected,wH=r=>{const e=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);return r&&r instanceof TypeError?e.has(r.message):!1},JI=r=>r.$metadata?.httpStatusCode===429||pH.includes(r.name)||r.$retryable?.throttling==!0,V1=(r,e=0)=>AH(r)||bH(r)||gH.includes(r.name)||vH.includes(r?.code||"")||yH.includes(r?.code||"")||mH.includes(r.$metadata?.httpStatusCode||0)||wH(r)||r.cause!==void 0&&e<=10&&V1(r.cause,e+1),CH=r=>{if(r.$metadata?.httpStatusCode!==void 0){const e=r.$metadata.httpStatusCode;return 500<=e&&e<=599&&!V1(r)}return!1},xH=/\d{12}\.ddb/;async function SH(r,e,t){if(t.request?.headers?.["smithy-protocol"]==="rpc-v2-cbor"&&Ds(r,"PROTOCOL_RPC_V2_CBOR","M"),typeof e.retryStrategy=="function"){const a=await e.retryStrategy();if(typeof a.mode=="string")switch(a.mode){case Nd.ADAPTIVE:Ds(r,"RETRY_MODE_ADAPTIVE","F");break;case Nd.STANDARD:Ds(r,"RETRY_MODE_STANDARD","E");break}}if(typeof e.accountIdEndpointMode=="function"){const a=r.endpointV2;switch(String(a?.url?.hostname).match(xH)&&Ds(r,"ACCOUNT_ID_ENDPOINT","O"),await e.accountIdEndpointMode?.()){case"disabled":Ds(r,"ACCOUNT_ID_MODE_DISABLED","Q");break;case"preferred":Ds(r,"ACCOUNT_ID_MODE_PREFERRED","P");break;case"required":Ds(r,"ACCOUNT_ID_MODE_REQUIRED","R");break}}const i=r.__smithy_context?.selectedHttpAuthScheme?.identity;if(i?.$source){const a=i;a.accountId&&Ds(r,"RESOLVED_ACCOUNT_ID","T");for(const[s,o]of Object.entries(a.$source??{}))Ds(r,s,o)}}const BE="user-agent",$v="x-amz-user-agent",ME=" ",qv="/",EH=/[^!$%&'*+\-.^_`|~\w]/g,kH=/[^!$%&'*+\-.^_`|~\w#]/g,_E="-",FH=1024;function TH(r){let e="";for(const t in r){const n=r[t];if(e.length+n.length+1<=FH){e.length?e+=","+n:e+=n;continue}break}return e}const IH=r=>(e,t)=>async n=>{const{request:i}=n;if(!aa.isInstance(i))return e(n);const{headers:a}=i,s=t?.userAgent?.map(_p)||[],o=(await r.defaultUserAgentProvider()).map(_p);await SH(t,r,n);const l=t;o.push(`m/${TH(Object.assign({},t.__smithy_context?.features,l.__aws_sdk_context?.features))}`);const u=r?.customUserAgent?.map(_p)||[],c=await r.userAgentAppId();c&&o.push(_p(["app",`${c}`]));const h=[].concat([...o,...s,...u]).join(ME),f=[...o.filter(d=>d.startsWith("aws-sdk-")),...u].join(ME);return r.runtime!=="browser"?(f&&(a[$v]=a[$v]?`${a[BE]} ${f}`:f),a[BE]=h):a[$v]=h,e({...n,request:i})},_p=r=>{const e=r[0].split(qv).map(s=>s.replace(EH,_E)).join(qv),t=r[1]?.replace(kH,_E),n=e.indexOf(qv),i=e.substring(0,n);let a=e.substring(n+1);return i==="api"&&(a=a.toLowerCase()),[i,a,t].filter(s=>s&&s.length>0).reduce((s,o,l)=>{switch(l){case 0:return o;case 1:return`${s}/${o}`;default:return`${s}#${o}`}},"")},DH={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0},PH=r=>({applyToStack:e=>{e.add(IH(r),DH)}}),RH=!1,OH=!1,NE=new Set,BH=(r,e=oh)=>{if(!NE.has(r)&&!e(r))if(r==="*")console.warn('@smithy/config-resolver WARN - Please use the caller region instead of "*". See "sigv4a" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.');else throw new Error(`Region not accepted: region="${r}" is not a valid hostname component.`);else NE.add(r)},KI=r=>typeof r=="string"&&(r.startsWith("fips-")||r.endsWith("-fips")),MH=r=>KI(r)?["fips-aws-global","aws-fips"].includes(r)?"us-east-1":r.replace(/fips-(dkr-|prod-)?|-fips/,""):r,_H=r=>{const{region:e,useFipsEndpoint:t}=r;if(!e)throw new Error("Region is missing");return Object.assign(r,{region:async()=>{const n=typeof e=="function"?await e():e,i=MH(n);return BH(i),i},useFipsEndpoint:async()=>{const n=typeof e=="string"?e:await e();return KI(n)?!0:typeof t!="function"?Promise.resolve(!!t):t()}})},LE="content-length";function NH(r){return e=>async t=>{const n=t.request;if(aa.isInstance(n)){const{body:i,headers:a}=n;if(i&&Object.keys(a).map(s=>s.toLowerCase()).indexOf(LE)===-1)try{const s=r(i);n.headers={...n.headers,[LE]:String(s)}}catch{}}return e({...t,request:n})}}const LH={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},UH=r=>({applyToStack:e=>{e.add(NH(r.bodyLengthChecker),LH)}}),VH=async r=>{const e=r?.Bucket||"";if(typeof r.Bucket=="string"&&(r.Bucket=e.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"))),$H(e)){if(r.ForcePathStyle===!0)throw new Error("Path-style addressing cannot be used with ARN buckets")}else(!GH(e)||e.indexOf(".")!==-1&&!String(r.Endpoint).startsWith("http:")||e.toLowerCase()!==e||e.length<3)&&(r.ForcePathStyle=!0);return r.DisableMultiRegionAccessPoints&&(r.disableMultiRegionAccessPoints=!0,r.DisableMRAP=!0),r},zH=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,HH=/(\d+\.){3}\d+/,jH=/\.\./,GH=r=>zH.test(r)&&!HH.test(r)&&!jH.test(r),$H=r=>{const[e,t,n,,,i]=r.split(":"),a=e==="arn"&&r.split(":").length>=6,s=!!(a&&t&&n&&i);if(a&&!s)throw new Error(`Invalid ARN: ${r} was an invalid ARN.`);return s},qH=(r,e,t,n=!1)=>{const i=async()=>{let a;return n?a=t.clientContextParams?.[r]??t[r]??t[e]:a=t[r]??t[e],typeof a=="function"?a():a};return r==="credentialScope"||e==="CredentialScope"?async()=>{const a=typeof t.credentials=="function"?await t.credentials():t.credentials;return a?.credentialScope??a?.CredentialScope}:r==="accountId"||e==="AccountId"?async()=>{const a=typeof t.credentials=="function"?await t.credentials():t.credentials;return a?.accountId??a?.AccountId}:r==="endpoint"||e==="endpoint"?async()=>{if(t.isCustomEndpoint===!1)return;const a=await i();if(a&&typeof a=="object"){if("url"in a)return a.url.href;if("hostname"in a){const{protocol:s,hostname:o,port:l,path:u}=a;return`${s}//${o}${l?":"+l:""}${u}`}}return a}:i},ZI=async r=>{},eD=r=>{if(typeof r=="object"){if("url"in r){const e=dc(r.url);if(r.headers){e.headers={};for(const[t,n]of Object.entries(r.headers))e.headers[t.toLowerCase()]=n.join(", ")}return e}return r}return dc(r)},WH=async(r,e,t,n)=>{if(!t.isCustomEndpoint){let s;t.serviceConfiguredEndpoint?s=await t.serviceConfiguredEndpoint():s=await ZI(t.serviceId),s&&(t.endpoint=()=>Promise.resolve(eD(s)),t.isCustomEndpoint=!0)}const i=await QH(r,e,t);if(typeof t.endpointProvider!="function")throw new Error("config.endpointProvider is not set.");const a=t.endpointProvider(i,n);if(t.isCustomEndpoint&&t.endpoint){const s=await t.endpoint();if(s?.headers){a.headers??={};for(const[o,l]of Object.entries(s.headers))a.headers[o]=Array.isArray(l)?l:[l]}}return a},QH=async(r,e,t)=>{const n={},i=e?.getEndpointParameterInstructions?.()||{};for(const[a,s]of Object.entries(i))switch(s.type){case"staticContextParams":n[a]=s.value;break;case"contextParams":n[a]=r[s.name];break;case"clientContextParams":case"builtInParams":n[a]=await qH(s.name,a,t,s.type!=="builtInParams")();break;case"operationContextParams":n[a]=s.get(r);break;default:throw new Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(s))}return Object.keys(i).length===0&&Object.assign(n,t),String(t.serviceId).toLowerCase()==="s3"&&await VH(n),n},YH=({config:r,instructions:e})=>(t,n)=>async i=>{r.isCustomEndpoint&&Dz(n,"ENDPOINT_OVERRIDE","N");const a=await WH(i.input,{getEndpointParameterInstructions(){return e}},{...r},n);n.endpointV2=a,n.authSchemes=a.properties?.authSchemes;const s=n.authSchemes?.[0];if(s){n.signing_region=s.signingRegion,n.signing_service=s.signingName;const l=Sc(n)?.selectedHttpAuthScheme?.httpAuthOption;l&&(l.signingProperties=Object.assign(l.signingProperties||{},{signing_region:s.signingRegion,signingRegion:s.signingRegion,signing_service:s.signingName,signingName:s.signingName,signingRegionSet:s.signingRegionSet},s.properties))}return t({...i})},XH={name:"serializerMiddleware"},JH={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:XH.name},tD=(r,e)=>({applyToStack:t=>{t.addRelativeTo(YH({config:r,instructions:e}),JH)}}),KH=r=>{const e=r.tls??!0,{endpoint:t,useDualstackEndpoint:n,useFipsEndpoint:i}=r,a=t!=null?async()=>eD(await Ls(t)()):void 0,o=Object.assign(r,{endpoint:a,tls:e,isCustomEndpoint:!!t,useDualstackEndpoint:Ls(n??!1),useFipsEndpoint:Ls(i??!1)});let l;return o.serviceConfiguredEndpoint=async()=>(r.serviceId&&!l&&(l=ZI(r.serviceId)),l),o};var hc;(function(r){r.STANDARD="standard",r.ADAPTIVE="adaptive"})(hc||(hc={}));const cd=3,ZH=hc.STANDARD;class z1{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(e){this.beta=e?.beta??.7,this.minCapacity=e?.minCapacity??1,this.minFillRate=e?.minFillRate??.5,this.scaleConstant=e?.scaleConstant??.4,this.smooth=e?.smooth??.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(e){let t;this.updateMeasuredRate();const n=e;if(n?.errorType==="THROTTLING"||JI(n?.error??e)){const s=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=s,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),t=this.cubicThrottle(s),this.enableTokenBucket()}else this.calculateTimeWindow(),t=this.cubicSuccess(this.getCurrentTimeInSeconds());const a=Math.min(t,2*this.measuredTxRate);this.updateTokenBucketRate(a)}getCurrentTimeInSeconds(){return Date.now()/1e3}async acquireTokenBucket(e){if(this.enabled){if(this.refillTokenBucket(),e>this.availableTokens){const t=(e-this.availableTokens)/this.fillRate*1e3;await new Promise(n=>z1.setTimeoutFn(n,t))}this.availableTokens=this.availableTokens-e}}refillTokenBucket(){const e=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=e;return}const t=(e-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+t),this.lastTimestamp=e}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))}cubicThrottle(e){return this.getPrecise(e*this.beta)}cubicSuccess(e){return this.getPrecise(this.scaleConstant*Math.pow(e-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(e){this.refillTokenBucket(),this.fillRate=Math.max(e,this.minFillRate),this.maxCapacity=Math.max(e,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){const e=this.getCurrentTimeInSeconds(),t=Math.floor(e*2)/2;if(this.requestCount++,t>this.lastTxRateBucket){const n=this.requestCount/(t-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(n*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=t}}getPrecise(e){return parseFloat(e.toFixed(8))}}const rD=20*1e3,UE=500,ej=1,tj="amz-sdk-invocation-id",rj="amz-sdk-request";class Ui{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return Ui.v2026?50:100}static throttlingDelay(){return Ui.v2026?1e3:500}static cost(){return Ui.v2026?14:5}static throttlingCost(){return Ui.v2026?5:10}static modifiedCostType(){return Ui.v2026?"THROTTLING":"TRANSIENT"}}class nj{x=Ui.delay();computeNextBackoffDelay(e){const i=Math.random()*Math.min(this.x*2**e,rD);return Math.floor(i)}setDelayBase(e){this.x=e}}class VE{delay;count;cost;longPoll;constructor(e,t,n,i){this.delay=e,this.count=t,this.cost=n,this.longPoll=i}getRetryCount(){return this.count}getRetryDelay(){return Math.min(rD,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}class vA{mode=hc.STANDARD;capacity=UE;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(e){typeof e=="number"?this.maxAttemptsProvider=async()=>e:typeof e=="function"?this.maxAttemptsProvider=e:e&&typeof e=="object"&&(this.maxAttemptsProvider=async()=>e.maxAttempts,this.baseDelay=e.baseDelay,this.retryBackoffStrategy=e.backoff),this.maxAttemptsProvider??=async()=>cd,this.baseDelay??=Ui.delay(),this.retryBackoffStrategy??=new nj}async acquireInitialRetryToken(e){return new VE(Ui.delay(),0,void 0,Ui.v2026&&e.includes(":longpoll"))}async refreshRetryTokenForRetry(e,t){const n=await this.getMaxAttempts(),i=this.shouldRetry(e,t,n);if(i||e.isLongPoll?.()){const a=t.errorType;this.retryBackoffStrategy.setDelayBase(a==="THROTTLING"?Ui.throttlingDelay():this.baseDelay);const s=this.retryBackoffStrategy.computeNextBackoffDelay(e.getRetryCount());let o=s;if(t.retryAfterHint instanceof Date&&(o=Math.max(s,Math.min(t.retryAfterHint.getTime()-Date.now(),s+5e3))),i){const l=this.getCapacityCost(a);return this.capacity-=l,new VE(o,e.getRetryCount()+1,l,e.isLongPoll?.()??!1)}else throw Object.assign(new Error("No retry token available"),{$backoff:Ui.v2026?o:0})}throw new Error("No retry token available")}recordSuccess(e){this.capacity=Math.min(UE,this.capacity+(e.getRetryCost()??ej))}getCapacity(){return this.capacity}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch{return console.warn(`Max attempts provider could not resolve. Using default of ${cd}`),cd}}shouldRetry(e,t,n){return e.getRetryCount()+1<n&&this.capacity>=this.getCapacityCost(t.errorType)&&this.isRetryableError(t.errorType)}getCapacityCost(e){return e===Ui.modifiedCostType()?Ui.throttlingCost():Ui.cost()}isRetryableError(e){return e==="THROTTLING"||e==="TRANSIENT"}}class ij{mode=hc.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(e,t){const{rateLimiter:n}=t??{};this.rateLimiter=n??new z1,this.standardRetryStrategy=t?new vA({maxAttempts:typeof e=="number"?e:3,...t}):new vA(e)}async acquireInitialRetryToken(e){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(e)}async refreshRetryTokenForRetry(e,t){return this.rateLimiter.updateClientSendingRate(t),this.standardRetryStrategy.refreshRetryTokenForRetry(e,t)}recordSuccess(e){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(e)}}const aj=r=>r instanceof Error?r:r instanceof Object?Object.assign(new Error,r):typeof r=="string"?new Error(r):new Error(`AWS SDK error wrapper for ${r}`),sj=r=>{const{retryStrategy:e,retryMode:t}=r,n=Ls(r.maxAttempts??cd);let i=e?Promise.resolve(e):void 0;const a=async()=>await Ls(t)()===hc.ADAPTIVE?new ij(n):new vA(n);return Object.assign(r,{maxAttempts:n,retryStrategy:()=>i??=a()})},pl=(r,e)=>{const t=[];if(r&&t.push(r),e)for(const n of e)t.push(n);return t},io=(r,e)=>`${r||"anonymous"}${e&&e.length>0?` (a.k.a. ${e.join(",")})`:""}`,Tg=()=>{let r=[],e=[],t=!1;const n=new Set,i=h=>h.sort((f,d)=>zE[d.step]-zE[f.step]||HE[d.priority||"normal"]-HE[f.priority||"normal"]),a=h=>{let f=!1;const d=g=>{const v=pl(g.name,g.aliases);if(v.includes(h)){f=!0;for(const y of v)n.delete(y);return!1}return!0};return r=r.filter(d),e=e.filter(d),f},s=h=>{let f=!1;const d=g=>{if(g.middleware===h){f=!0;for(const v of pl(g.name,g.aliases))n.delete(v);return!1}return!0};return r=r.filter(d),e=e.filter(d),f},o=h=>(r.forEach(f=>{h.add(f.middleware,{...f})}),e.forEach(f=>{h.addRelativeTo(f.middleware,{...f})}),h.identifyOnResolve?.(c.identifyOnResolve()),h),l=h=>{const f=[];return h.before.forEach(d=>{d.before.length===0&&d.after.length===0?f.push(d):f.push(...l(d))}),f.push(h),h.after.reverse().forEach(d=>{d.before.length===0&&d.after.length===0?f.push(d):f.push(...l(d))}),f},u=(h=!1)=>{const f=[],d=[],g={};return r.forEach(y=>{const A={...y,before:[],after:[]};for(const C of pl(A.name,A.aliases))g[C]=A;f.push(A)}),e.forEach(y=>{const A={...y,before:[],after:[]};for(const C of pl(A.name,A.aliases))g[C]=A;d.push(A)}),d.forEach(y=>{if(y.toMiddleware){const A=g[y.toMiddleware];if(A===void 0){if(h)return;throw new Error(`${y.toMiddleware} is not found when adding ${io(y.name,y.aliases)} middleware ${y.relation} ${y.toMiddleware}`)}y.relation==="after"&&A.after.push(y),y.relation==="before"&&A.before.push(y)}}),i(f).map(l).reduce((y,A)=>(y.push(...A),y),[])},c={add:(h,f={})=>{const{name:d,override:g,aliases:v}=f,y={step:"initialize",priority:"normal",middleware:h,...f},A=pl(d,v);if(A.length>0){if(A.some(C=>n.has(C))){if(!g)throw new Error(`Duplicate middleware name '${io(d,v)}'`);for(const C of A){const k=r.findIndex(S=>S.name===C||S.aliases?.some(R=>R===C));if(k===-1)continue;const T=r[k];if(T.step!==y.step||y.priority!==T.priority)throw new Error(`"${io(T.name,T.aliases)}" middleware with ${T.priority} priority in ${T.step} step cannot be overridden by "${io(d,v)}" middleware with ${y.priority} priority in ${y.step} step.`);r.splice(k,1)}}for(const C of A)n.add(C)}r.push(y)},addRelativeTo:(h,f)=>{const{name:d,override:g,aliases:v}=f,y={middleware:h,...f},A=pl(d,v);if(A.length>0){if(A.some(C=>n.has(C))){if(!g)throw new Error(`Duplicate middleware name '${io(d,v)}'`);for(const C of A){const k=e.findIndex(S=>S.name===C||S.aliases?.some(R=>R===C));if(k===-1)continue;const T=e[k];if(T.toMiddleware!==y.toMiddleware||T.relation!==y.relation)throw new Error(`"${io(T.name,T.aliases)}" middleware ${T.relation} "${T.toMiddleware}" middleware cannot be overridden by "${io(d,v)}" middleware ${y.relation} "${y.toMiddleware}" middleware.`);e.splice(k,1)}}for(const C of A)n.add(C)}e.push(y)},clone:()=>o(Tg()),use:h=>{h.applyToStack(c)},remove:h=>typeof h=="string"?a(h):s(h),removeByTag:h=>{let f=!1;const d=g=>{const{tags:v,name:y,aliases:A}=g;if(v&&v.includes(h)){const C=pl(y,A);for(const k of C)n.delete(k);return f=!0,!1}return!0};return r=r.filter(d),e=e.filter(d),f},concat:h=>{const f=o(Tg());return f.use(h),f.identifyOnResolve(t||f.identifyOnResolve()||(h.identifyOnResolve?.()??!1)),f},applyToStack:o,identify:()=>u(!0).map(h=>{const f=h.step??h.relation+" "+h.toMiddleware;return io(h.name,h.aliases)+" - "+f}),identifyOnResolve(h){return typeof h=="boolean"&&(t=h),t},resolve:(h,f)=>{for(const d of u().map(g=>g.middleware).reverse())h=d(h,f);return t&&console.log(c.identify()),h}};return c},zE={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},HE={high:3,normal:2,low:1};class oj{config;middlewareStack=Tg();initConfig;handlers;constructor(e){this.config=e;const{protocol:t,protocolSettings:n}=e;n&&typeof t=="function"&&(e.protocol=new t(n))}send(e,t,n){const i=typeof t!="function"?t:void 0,a=typeof t=="function"?t:n,s=i===void 0&&this.config.cacheMiddleware===!0;let o;if(s){this.handlers||(this.handlers=new WeakMap);const l=this.handlers;l.has(e.constructor)?o=l.get(e.constructor):(o=e.resolveMiddleware(this.middlewareStack,this.config,i),l.set(e.constructor,o))}else delete this.handlers,o=e.resolveMiddleware(this.middlewareStack,this.config,i);if(a)o(e).then(l=>a(null,l.output),l=>a(l)).catch(()=>{});else return o(e).then(l=>l.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}const Wv="***SensitiveInformation***";function yA(r,e){if(e==null)return e;const t=vi.of(r);if(t.getMergedTraits().sensitive)return Wv;if(t.isListSchema()){if(!!t.getValueSchema().getMergedTraits().sensitive)return Wv}else if(t.isMapSchema()){if(!!t.getKeySchema().getMergedTraits().sensitive||!!t.getValueSchema().getMergedTraits().sensitive)return Wv}else if(t.isStructSchema()&&typeof e=="object"){const n=e,i={};for(const[a,s]of t.structIterator())n[a]!=null&&(i[a]=yA(s,n[a]));return i}return e}class H1{middlewareStack=Tg();schema;static classBuilder(){return new lj}resolveMiddlewareWithContext(e,t,n,{middlewareFn:i,clientName:a,commandName:s,inputFilterSensitiveLog:o,outputFilterSensitiveLog:l,smithyContext:u,additionalContext:c,CommandCtor:h}){for(const y of i.bind(this)(h,e,t,n))this.middlewareStack.use(y);const f=e.concat(this.middlewareStack),{logger:d}=t,g={logger:d,clientName:a,commandName:s,inputFilterSensitiveLog:o,outputFilterSensitiveLog:l,[hA]:{commandInstance:this,...u},...c},{requestHandler:v}=t;return f.resolve(y=>v.handle(y.request,n||{}),g)}}class lj{_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,n={}){return this._smithyContext={service:e,operation:t,...n},this}c(e={}){return this._additionalContext=e,this}n(e,t){return this._clientName=e,this._commandName=t,this}f(e=n=>n,t=n=>n){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(){const e=this;let t;return t=class extends H1{input;static getEndpointParameterInstructions(){return e._ep}constructor(...[n]){super(),this.input=n??{},e._init(this),this.schema=e._operationSchema}resolveMiddleware(n,i,a){const s=e._operationSchema,o=s?.[4]??s?.input,l=s?.[5]??s?.output;return this.resolveMiddlewareWithContext(n,i,a,{CommandCtor:t,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog??(s?yA.bind(null,o):u=>u),outputFilterSensitiveLog:e._outputFilterSensitiveLog??(s?yA.bind(null,l):u=>u),smithyContext:e._smithyContext,additionalContext:e._additionalContext})}serialize=e._serializer;deserialize=e._deserializer}}}class Hu 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;const t=e;return Hu.prototype.isPrototypeOf(t)||!!t.$fault&&!!t.$metadata&&(t.$fault==="client"||t.$fault==="server")}static[Symbol.hasInstance](e){if(!e)return!1;const t=e;return this===Hu?Hu.isInstance(e):Hu.isInstance(e)?t.name&&this.name?this.prototype.isPrototypeOf(e)||t.name===this.name:this.prototype.isPrototypeOf(e):!1}}const jE=(r,e={})=>{Object.entries(e).filter(([,n])=>n!==void 0).forEach(([n,i])=>{(r[n]==null||r[n]==="")&&(r[n]=i)});const t=r.message||r.Message||"UnknownError";return r.message=t,delete r.Message,r},uj=r=>{switch(r){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:3e4};default:return{}}},nD=Object.values(Rd),cj=r=>{const e=[];for(const t in Rd){const n=Rd[t];r[n]!==void 0&&e.push({algorithmId:()=>n,checksumConstructor:()=>r[n]})}for(const[t,n]of Object.entries(r.checksumAlgorithms??{}))e.push({algorithmId:()=>t,checksumConstructor:()=>n});return{addChecksumAlgorithm(t){r.checksumAlgorithms=r.checksumAlgorithms??{};const n=t.algorithmId(),i=t.checksumConstructor();nD.includes(n)?r.checksumAlgorithms[n.toUpperCase()]=i:r.checksumAlgorithms[n]=i,e.push(t)},checksumAlgorithms(){return e}}},fj=r=>{const e={};return r.checksumAlgorithms().forEach(t=>{const n=t.algorithmId();nD.includes(n)&&(e[n]=t.checksumConstructor())}),e},dj=r=>({setRetryStrategy(e){r.retryStrategy=e},retryStrategy(){return r.retryStrategy}}),hj=r=>{const e={};return e.retryStrategy=r.retryStrategy(),e},pj=r=>Object.assign(cj(r),dj(r)),gj=r=>Object.assign(fj(r),hj(r));class iD{trace(){}debug(){}info(){}warn(){}error(){}}const mj=r=>r?.body instanceof ReadableStream;function vj(r,e){if(fc.isInstance(r))for(const t of Object.keys(r.headers)){const n=t.toLowerCase();if(n==="retry-after"){const i=r.headers[t];let a=NaN;if(i.endsWith("GMT"))try{a=(NI(i).getTime()-Date.now())/1e3}catch(s){e?.trace?.("Failed to parse retry-after header"),e?.trace?.(s)}else i.match(/ GMT, ((\d+)|(\d+\.\d+))$/)?a=Number(i.match(/ GMT, ([\d.]+)$/)?.[1]):i.match(/^((\d+)|(\d+\.\d+))$/)?a=Number(i):Date.parse(i)>=Date.now()&&(a=(Date.parse(i)-Date.now())/1e3);return isNaN(a)?void 0:new Date(Date.now()+a*1e3)}else if(n==="x-amz-retry-after"){const i=r.headers[t],a=Number(i);if(isNaN(a)){e?.trace?.(`Failed to parse x-amz-retry-after=${i}`);return}return new Date(Date.now()+a)}}}const yj=r=>(e,t)=>async n=>{let i=await r.retryStrategy();const a=await r.maxAttempts();if(Aj(i)){i=i;let s=await i.acquireInitialRetryToken((t.partition_id??"")+(t.__retryLongPoll?":longpoll":"")),o=new Error,l=0,u=0;const{request:c}=n,h=aa.isInstance(c);for(h&&(c.headers[tj]=LI());;)try{h&&(c.headers[rj]=`attempt=${l+1}; max=${a}`);const{response:f,output:d}=await e(n);return i.recordSuccess(s),d.$metadata.attempts=l+1,d.$metadata.totalRetryDelay=u,{response:f,output:d}}catch(f){const d=bj(f,r.logger);if(o=aj(f),h&&mj(c))throw(t.logger instanceof iD?console:t.logger)?.warn("An error was encountered in a non-retryable streaming request."),o;try{s=await i.refreshRetryTokenForRetry(s,d)}catch(v){throw typeof v.$backoff=="number"&&await GE(v.$backoff),o.$metadata||(o.$metadata={}),o.$metadata.attempts=l+1,o.$metadata.totalRetryDelay=u,o}l=s.getRetryCount();const g=s.getRetryDelay();u+=g,await GE(g)}}else return i=i,i?.mode&&(t.userAgent=[...t.userAgent||[],["cfg/retry-mode",i.mode]]),i.retry(e,n)},GE=r=>new Promise(e=>setTimeout(e,r)),Aj=r=>typeof r.acquireInitialRetryToken<"u"&&typeof r.refreshRetryTokenForRetry<"u"&&typeof r.recordSuccess<"u",bj=(r,e)=>{const t={error:r,errorType:wj(r)},n=vj(r.$response,e);return n&&(t.retryAfterHint=n),t},wj=r=>JI(r)?"THROTTLING":V1(r)?"TRANSIENT":CH(r)?"SERVER_ERROR":"CLIENT_ERROR",Cj={name:"retryMiddleware",tags:["RETRY"],step:"finalizeRequest",priority:"high",override:!0},xj=r=>({applyToStack:e=>{e.add(yj(r),Cj)}}),$E=r=>fc.isInstance(r)?r.headers?.date??r.headers?.Date:void 0,aD=r=>new Date(Date.now()+r),Sj=(r,e)=>Math.abs(aD(e).getTime()-r)>=3e5,qE=(r,e)=>{const t=Date.parse(r);return Sj(t,e)?t-Date.now():e},fd=(r,e)=>{if(!e)throw new Error(`Property \`${r}\` is not resolved for AWS SDK SigV4Auth`);return e},Ej=async r=>{const e=fd("context",r.context),t=fd("config",r.config),n=e.endpointV2?.properties?.authSchemes?.[0],a=await fd("signer",t.signer)(n),s=r?.signingRegion,o=r?.signingRegionSet,l=r?.signingName;return{config:t,signer:a,signingRegion:s,signingRegionSet:o,signingName:l}};class kj{async sign(e,t,n){if(!aa.isInstance(e))throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");const i=await Ej(n),{config:a,signer:s}=i;let{signingRegion:o,signingName:l}=i;const u=n.context;if(u?.authSchemes?.length??!1){const[h,f]=u.authSchemes;h?.name==="sigv4a"&&f?.name==="sigv4"&&(o=f?.signingRegion??o,l=f?.signingName??l)}return await s.sign(e,{signingDate:aD(a.systemClockOffset),signingRegion:o,signingService:l})}errorHandler(e){return t=>{const n=t.ServerTime??$E(t.$response);if(n){const i=fd("config",e.config),a=i.systemClockOffset;i.systemClockOffset=qE(n,i.systemClockOffset),i.systemClockOffset!==a&&t.$metadata&&(t.$metadata.clockSkewCorrected=!0)}throw t}}successHandler(e,t){const n=$E(e);if(n){const i=fd("config",t.config);i.systemClockOffset=qE(n,i.systemClockOffset)}}}const Fj=(r,e,t)=>{let n,i,a,s=!1;const o=async()=>{i||(i=r());try{n=await i,a=!0,s=!1}finally{i=void 0}return n};return async l=>((!a||l?.forceRefresh)&&(n=await o()),n)},Tj="X-Amz-Algorithm",Ij="X-Amz-Credential",sD="X-Amz-Date",Dj="X-Amz-SignedHeaders",Pj="X-Amz-Expires",oD="X-Amz-Signature",lD="X-Amz-Security-Token",uD="authorization",cD=sD.toLowerCase(),Rj="date",Oj=[uD,cD,Rj],Bj=oD.toLowerCase(),AA="x-amz-content-sha256",Mj=lD.toLowerCase(),_j={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},Nj=/^proxy-/,Lj=/^sec-/,Qv="AWS4-HMAC-SHA256",Uj="AWS4-HMAC-SHA256-PAYLOAD",Vj="UNSIGNED-PAYLOAD",zj=50,fD="aws4_request",Hj=3600*24*7,Np={},Yv=[],Xv=(r,e,t)=>`${r}/${e}/${t}/${fD}`,jj=async(r,e,t,n,i)=>{const a=await WE(r,e.secretAccessKey,e.accessKeyId),s=`${t}:${n}:${i}:${kl(a)}:${e.sessionToken}`;if(s in Np)return Np[s];for(Yv.push(s);Yv.length>zj;)delete Np[Yv.shift()];let o=`AWS4${e.secretAccessKey}`;for(const l of[t,n,i,fD])o=await WE(r,o,l);return Np[s]=o},WE=(r,e,t)=>{const n=new r(e);return n.update(Od(t)),n.digest()},QE=({headers:r},e,t)=>{const n={};for(const i of Object.keys(r).sort()){if(r[i]==null)continue;const a=i.toLowerCase();(a in _j||e?.has(a)||Nj.test(a)||Lj.test(a))&&(!t||t&&!t.has(a))||(n[a]=r[i].trim().replace(/\s+/g," "))}return n},Gj=r=>typeof ArrayBuffer=="function"&&r instanceof ArrayBuffer||Object.prototype.toString.call(r)==="[object ArrayBuffer]",Jv=async({headers:r,body:e},t)=>{for(const n of Object.keys(r))if(n.toLowerCase()===AA)return r[n];if(e==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof e=="string"||ArrayBuffer.isView(e)||Gj(e)){const n=new t;return n.update(Od(e)),kl(await n.digest())}return Vj};class $j{format(e){const t=[];for(const a of Object.keys(e)){const s=Dl(a);t.push(Uint8Array.from([s.byteLength]),s,this.formatHeaderValue(e[a]))}const n=new Uint8Array(t.reduce((a,s)=>a+s.byteLength,0));let i=0;for(const a of t)n.set(a,i),i+=a.byteLength;return n}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":const t=new DataView(new ArrayBuffer(3));return t.setUint8(0,3),t.setInt16(1,e.value,!1),new Uint8Array(t.buffer);case"integer":const n=new DataView(new ArrayBuffer(5));return n.setUint8(0,4),n.setInt32(1,e.value,!1),new Uint8Array(n.buffer);case"long":const i=new Uint8Array(9);return i[0]=5,i.set(e.value.bytes,1),i;case"binary":const a=new DataView(new ArrayBuffer(3+e.value.byteLength));a.setUint8(0,6),a.setUint16(1,e.value.byteLength,!1);const s=new Uint8Array(a.buffer);return s.set(e.value,3),s;case"string":const o=Dl(e.value),l=new DataView(new ArrayBuffer(3+o.byteLength));l.setUint8(0,7),l.setUint16(1,o.byteLength,!1);const u=new Uint8Array(l.buffer);return u.set(o,3),u;case"timestamp":const c=new Uint8Array(9);return c[0]=8,c.set(j1.fromNumber(e.value.valueOf()).bytes,1),c;case"uuid":if(!qj.test(e.value))throw new Error(`Invalid UUID received: ${e.value}`);const h=new Uint8Array(17);return h[0]=9,h.set(WV(e.value.replace(/\-/g,"")),1),h}}}var YE;(function(r){r[r.boolTrue=0]="boolTrue",r[r.boolFalse=1]="boolFalse",r[r.byte=2]="byte",r[r.short=3]="short",r[r.integer=4]="integer",r[r.long=5]="long",r[r.byteArray=6]="byteArray",r[r.string=7]="string",r[r.timestamp=8]="timestamp",r[r.uuid=9]="uuid"})(YE||(YE={}));const qj=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;class j1{bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776e3||e<-9223372036854776e3)throw new Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);const t=new Uint8Array(8);for(let n=7,i=Math.abs(Math.round(e));n>-1&&i>0;n--,i/=256)t[n]=i;return e<0&&XE(t),new j1(t)}valueOf(){const e=this.bytes.slice(0),t=e[0]&128;return t&&XE(e),parseInt(kl(e),16)*(t?-1:1)}toString(){return String(this.valueOf())}}function XE(r){for(let e=0;e<8;e++)r[e]^=255;for(let e=7;e>-1&&(r[e]++,r[e]===0);e--);}const Wj=(r,e)=>{r=r.toLowerCase();for(const t of Object.keys(e))if(r===t.toLowerCase())return!0;return!1},Qj=(r,e={})=>{const{headers:t,query:n={}}=aa.clone(r);for(const i of Object.keys(t)){const a=i.toLowerCase();(a.slice(0,6)==="x-amz-"&&!e.unhoistableHeaders?.has(a)||e.hoistableHeaders?.has(a))&&(n[i]=t[i],delete t[i])}return{...r,headers:t,query:n}},JE=r=>{r=aa.clone(r);for(const e of Object.keys(r.headers))Oj.indexOf(e.toLowerCase())>-1&&delete r.headers[e];return r},Yj=({query:r={}})=>{const e=[],t={};for(const n of Object.keys(r)){if(n.toLowerCase()===Bj)continue;const i=El(n);e.push(i);const a=r[n];typeof a=="string"?t[i]=`${i}=${El(a)}`:Array.isArray(a)&&(t[i]=a.slice(0).reduce((s,o)=>s.concat([`${i}=${El(o)}`]),[]).sort().join("&"))}return e.sort().map(n=>t[n]).filter(n=>n).join("&")},Xj=r=>Jj(r).toISOString().replace(/\.\d{3}Z$/,"Z"),Jj=r=>typeof r=="number"?new Date(r*1e3):typeof r=="string"?Number(r)?new Date(Number(r)*1e3):new Date(r):r;class Kj{service;regionProvider;credentialProvider;sha256;uriEscapePath;applyChecksum;constructor({applyChecksum:e,credentials:t,region:n,service:i,sha256:a,uriEscapePath:s=!0}){this.service=i,this.sha256=a,this.uriEscapePath=s,this.applyChecksum=typeof e=="boolean"?e:!0,this.regionProvider=Ls(n),this.credentialProvider=Ls(t)}createCanonicalRequest(e,t,n){const i=Object.keys(t).sort();return`${e.method}
2805
2805
  ${this.getCanonicalPath(e)}
2806
2806
  ${Yj(e)}
2807
2807
  ${i.map(a=>`${a}:${t[a]}`).join(`
@@ -2813,7 +2813,7 @@ ${e}
2813
2813
  ${t}
2814
2814
  ${kl(s)}`}getCanonicalPath({path:e}){if(this.uriEscapePath){const t=[];for(const a of e.split("/"))a?.length!==0&&a!=="."&&(a===".."?t.pop():t.push(a));const n=`${e?.startsWith("/")?"/":""}${t.join("/")}${t.length>0&&e?.endsWith("/")?"/":""}`;return El(n).replace(/%2F/g,"/")}return e}validateResolvedCredentials(e){if(typeof e!="object"||typeof e.accessKeyId!="string"||typeof e.secretAccessKey!="string")throw new Error("Resolved credential object is not valid")}formatDate(e){const t=Xj(e).replace(/[\-:]/g,"");return{longDate:t,shortDate:t.slice(0,8)}}getCanonicalHeaderList(e){return Object.keys(e).sort().join(";")}}class KE extends Kj{headerFormatter=new $j;constructor({applyChecksum:e,credentials:t,region:n,service:i,sha256:a,uriEscapePath:s=!0}){super({applyChecksum:e,credentials:t,region:n,service:i,sha256:a,uriEscapePath:s})}async presign(e,t={}){const{signingDate:n=new Date,expiresIn:i=3600,unsignableHeaders:a,unhoistableHeaders:s,signableHeaders:o,hoistableHeaders:l,signingRegion:u,signingService:c}=t,h=await this.credentialProvider();this.validateResolvedCredentials(h);const f=u??await this.regionProvider(),{longDate:d,shortDate:g}=this.formatDate(n);if(i>Hj)return Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future");const v=Xv(g,f,c??this.service),y=Qj(JE(e),{unhoistableHeaders:s,hoistableHeaders:l});h.sessionToken&&(y.query[lD]=h.sessionToken),y.query[Tj]=Qv,y.query[Ij]=`${h.accessKeyId}/${v}`,y.query[sD]=d,y.query[Pj]=i.toString(10);const A=QE(y,a,o);return y.query[Dj]=this.getCanonicalHeaderList(A),y.query[oD]=await this.getSignature(d,v,this.getSigningKey(h,f,g,c),this.createCanonicalRequest(y,A,await Jv(e,this.sha256))),y}async sign(e,t){return typeof e=="string"?this.signString(e,t):e.headers&&e.payload?this.signEvent(e,t):e.message?this.signMessage(e,t):this.signRequest(e,t)}async signEvent({headers:e,payload:t},{signingDate:n=new Date,priorSignature:i,signingRegion:a,signingService:s}){const o=a??await this.regionProvider(),{shortDate:l,longDate:u}=this.formatDate(n),c=Xv(l,o,s??this.service),h=await Jv({headers:{},body:t},this.sha256),f=new this.sha256;f.update(e);const d=kl(await f.digest()),g=[Uj,u,c,i,d,h].join(`
2815
2815
  `);return this.signString(g,{signingDate:n,signingRegion:o,signingService:s})}async signMessage(e,{signingDate:t=new Date,signingRegion:n,signingService:i}){return this.signEvent({headers:this.headerFormatter.format(e.message.headers),payload:e.message.body},{signingDate:t,signingRegion:n,signingService:i,priorSignature:e.priorSignature}).then(s=>({message:e.message,signature:s}))}async signString(e,{signingDate:t=new Date,signingRegion:n,signingService:i}={}){const a=await this.credentialProvider();this.validateResolvedCredentials(a);const s=n??await this.regionProvider(),{shortDate:o}=this.formatDate(t),l=new this.sha256(await this.getSigningKey(a,s,o,i));return l.update(Od(e)),kl(await l.digest())}async signRequest(e,{signingDate:t=new Date,signableHeaders:n,unsignableHeaders:i,signingRegion:a,signingService:s}={}){const o=await this.credentialProvider();this.validateResolvedCredentials(o);const l=a??await this.regionProvider(),u=JE(e),{longDate:c,shortDate:h}=this.formatDate(t),f=Xv(h,l,s??this.service);u.headers[cD]=c,o.sessionToken&&(u.headers[Mj]=o.sessionToken);const d=await Jv(u,this.sha256);!Wj(AA,u.headers)&&this.applyChecksum&&(u.headers[AA]=d);const g=QE(u,i,n),v=await this.getSignature(c,f,this.getSigningKey(o,l,h,s),this.createCanonicalRequest(u,g,d));return u.headers[uD]=`${Qv} Credential=${o.accessKeyId}/${f}, SignedHeaders=${this.getCanonicalHeaderList(g)}, Signature=${v}`,u}async getSignature(e,t,n,i){const a=await this.createStringToSign(e,t,i,Qv),s=new this.sha256(await n);return s.update(Od(a)),kl(await s.digest())}getSigningKey(e,t,n,i){return jj(this.sha256,e,n,t,i||this.service)}}const Zj=r=>{let e=r.credentials,t=!!r.credentials,n;Object.defineProperty(r,"credentials",{set(u){u&&u!==e&&u!==n&&(t=!0),e=u;const c=eG(r,{credentials:e,credentialDefaultProvider:r.credentialDefaultProvider}),h=tG(r,c);if(t&&!h.attributed){const f=typeof e=="object"&&e!==null;n=async d=>{const v=await h(d);return f&&(!v.$source||Object.keys(v.$source).length===0)?hH(v,"CREDENTIALS_CODE","e"):v},n.memoized=h.memoized,n.configBound=h.configBound,n.attributed=!0}else n=h},get(){return n},enumerable:!0,configurable:!0}),r.credentials=e;const{signingEscapePath:i=!0,systemClockOffset:a=r.systemClockOffset||0,sha256:s}=r;let o;return r.signer?o=ld(r.signer):r.regionInfoProvider?o=()=>ld(r.region)().then(async u=>[await r.regionInfoProvider(u,{useFipsEndpoint:await r.useFipsEndpoint(),useDualstackEndpoint:await r.useDualstackEndpoint()})||{},u]).then(([u,c])=>{const{signingRegion:h,signingService:f}=u;r.signingRegion=r.signingRegion||h||c,r.signingName=r.signingName||f||r.serviceId;const d={...r,credentials:r.credentials,region:r.signingRegion,service:r.signingName,sha256:s,uriEscapePath:i},g=r.signerConstructor||KE;return new g(d)}):o=async u=>{u=Object.assign({},{name:"sigv4",signingName:r.signingName||r.defaultSigningName,signingRegion:await ld(r.region)(),properties:{}},u);const c=u.signingRegion,h=u.signingName;r.signingRegion=r.signingRegion||c,r.signingName=r.signingName||h||r.serviceId;const f={...r,credentials:r.credentials,region:r.signingRegion,service:r.signingName,sha256:s,uriEscapePath:i},d=r.signerConstructor||KE;return new d(f)},Object.assign(r,{systemClockOffset:a,signingEscapePath:i,signer:o})};function eG(r,{credentials:e,credentialDefaultProvider:t}){let n;return e?e?.memoized?n=e:n=_z(e,Mz,VI):t?n=ld(t(Object.assign({},r,{parentClientConfig:r}))):n=async()=>{throw new Error("@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.")},n.memoized=!0,n}function tG(r,e){if(e.configBound)return e;const t=async n=>e({...n,callerClientConfig:r});return t.memoized=e.memoized,t.configBound=!0,t}const rG=async(r,e,t)=>({operation:Sc(e).operation,region:await Ls(r.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()});function nG(r){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"cognito-idp",region:r.region},propertiesExtractor:(e,t)=>({signingProperties:{config:e,context:t}})}}function Ur(r){return{schemeId:"smithy.api#noAuth"}}const iG=r=>{const e=[];switch(r.operation){case"AssociateSoftwareToken":{e.push(Ur());break}case"ChangePassword":{e.push(Ur());break}case"CompleteWebAuthnRegistration":{e.push(Ur());break}case"ConfirmDevice":{e.push(Ur());break}case"ConfirmForgotPassword":{e.push(Ur());break}case"ConfirmSignUp":{e.push(Ur());break}case"DeleteUser":{e.push(Ur());break}case"DeleteUserAttributes":{e.push(Ur());break}case"DeleteWebAuthnCredential":{e.push(Ur());break}case"ForgetDevice":{e.push(Ur());break}case"ForgotPassword":{e.push(Ur());break}case"GetDevice":{e.push(Ur());break}case"GetTokensFromRefreshToken":{e.push(Ur());break}case"GetUser":{e.push(Ur());break}case"GetUserAttributeVerificationCode":{e.push(Ur());break}case"GetUserAuthFactors":{e.push(Ur());break}case"GlobalSignOut":{e.push(Ur());break}case"InitiateAuth":{e.push(Ur());break}case"ListDevices":{e.push(Ur());break}case"ListWebAuthnCredentials":{e.push(Ur());break}case"ResendConfirmationCode":{e.push(Ur());break}case"RespondToAuthChallenge":{e.push(Ur());break}case"RevokeToken":{e.push(Ur());break}case"SetUserMFAPreference":{e.push(Ur());break}case"SetUserSettings":{e.push(Ur());break}case"SignUp":{e.push(Ur());break}case"StartWebAuthnRegistration":{e.push(Ur());break}case"UpdateAuthEventFeedback":{e.push(Ur());break}case"UpdateDeviceStatus":{e.push(Ur());break}case"UpdateUserAttributes":{e.push(Ur());break}case"VerifySoftwareToken":{e.push(Ur());break}case"VerifyUserAttribute":{e.push(Ur());break}default:e.push(nG(r))}return e},aG=r=>{const e=Zj(r);return Object.assign(e,{authSchemePreference:Ls(r.authSchemePreference??[])})},sG=r=>Object.assign(r,{useDualstackEndpoint:r.useDualstackEndpoint??!1,useFipsEndpoint:r.useFipsEndpoint??!1,defaultSigningName:"cognito-idp"}),dD={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},oG="3.1026.0",lG={version:oG},uG=r=>new TextEncoder().encode(r);var cG=typeof Buffer<"u"&&Buffer.from?function(r){return Buffer.from(r,"utf8")}:uG;function Ld(r){return r instanceof Uint8Array?r:typeof r=="string"?cG(r):ArrayBuffer.isView(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(r)}function bA(r){return typeof r=="string"?r.length===0:r.byteLength===0}var hD={name:"SHA-256"},ZE={name:"HMAC",hash:hD},fG=new Uint8Array([227,176,196,66,152,252,28,20,154,251,244,200,153,111,185,36,39,174,65,228,100,155,147,76,164,149,153,27,120,82,184,85]);const dG={};function ng(){return typeof window<"u"?window:typeof self<"u"?self:dG}var hG=(function(){function r(e){this.toHash=new Uint8Array(0),this.secret=e,this.reset()}return r.prototype.update=function(e){if(!bA(e)){var t=Ld(e),n=new Uint8Array(this.toHash.byteLength+t.byteLength);n.set(this.toHash,0),n.set(t,this.toHash.byteLength),this.toHash=n}},r.prototype.digest=function(){var e=this;return this.key?this.key.then(function(t){return ng().crypto.subtle.sign(ZE,t,e.toHash).then(function(n){return new Uint8Array(n)})}):bA(this.toHash)?Promise.resolve(fG):Promise.resolve().then(function(){return ng().crypto.subtle.digest(hD,e.toHash)}).then(function(t){return Promise.resolve(new Uint8Array(t))})},r.prototype.reset=function(){var e=this;this.toHash=new Uint8Array(0),this.secret&&this.secret!==void 0&&(this.key=new Promise(function(t,n){ng().crypto.subtle.importKey("raw",Ld(e.secret),ZE,!1,["sign"]).then(t,n)}),this.key.catch(function(){}))},r})(),ma=64,pG=32,gG=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),mG=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],vG=Math.pow(2,53)-1,ig=(function(){function r(){this.state=Int32Array.from(mG),this.temp=new Int32Array(64),this.buffer=new Uint8Array(64),this.bufferLength=0,this.bytesHashed=0,this.finished=!1}return r.prototype.update=function(e){if(this.finished)throw new Error("Attempted to update an already finished hash.");var t=0,n=e.byteLength;if(this.bytesHashed+=n,this.bytesHashed*8>vG)throw new Error("Cannot hash more than 2^53 - 1 bits");for(;n>0;)this.buffer[this.bufferLength++]=e[t++],n--,this.bufferLength===ma&&(this.hashBuffer(),this.bufferLength=0)},r.prototype.digest=function(){if(!this.finished){var e=this.bytesHashed*8,t=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),n=this.bufferLength;if(t.setUint8(this.bufferLength++,128),n%ma>=ma-8){for(var i=this.bufferLength;i<ma;i++)t.setUint8(i,0);this.hashBuffer(),this.bufferLength=0}for(var i=this.bufferLength;i<ma-8;i++)t.setUint8(i,0);t.setUint32(ma-8,Math.floor(e/4294967296),!0),t.setUint32(ma-4,e),this.hashBuffer(),this.finished=!0}for(var a=new Uint8Array(pG),i=0;i<8;i++)a[i*4]=this.state[i]>>>24&255,a[i*4+1]=this.state[i]>>>16&255,a[i*4+2]=this.state[i]>>>8&255,a[i*4+3]=this.state[i]>>>0&255;return a},r.prototype.hashBuffer=function(){for(var e=this,t=e.buffer,n=e.state,i=n[0],a=n[1],s=n[2],o=n[3],l=n[4],u=n[5],c=n[6],h=n[7],f=0;f<ma;f++){if(f<16)this.temp[f]=(t[f*4]&255)<<24|(t[f*4+1]&255)<<16|(t[f*4+2]&255)<<8|t[f*4+3]&255;else{var d=this.temp[f-2],g=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10;d=this.temp[f-15];var v=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3;this.temp[f]=(g+this.temp[f-7]|0)+(v+this.temp[f-16]|0)}var y=(((l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7))+(l&u^~l&c)|0)+(h+(gG[f]+this.temp[f]|0)|0)|0,A=((i>>>2|i<<30)^(i>>>13|i<<19)^(i>>>22|i<<10))+(i&a^i&s^a&s)|0;h=c,c=u,u=l,l=o+y|0,o=s,s=a,a=i,i=y+A|0}n[0]+=i,n[1]+=a,n[2]+=s,n[3]+=o,n[4]+=l,n[5]+=u,n[6]+=c,n[7]+=h},r})(),yG=(function(){function r(e){this.secret=e,this.hash=new ig,this.reset()}return r.prototype.update=function(e){if(!(bA(e)||this.error))try{this.hash.update(Ld(e))}catch(t){this.error=t}},r.prototype.digestSync=function(){if(this.error)throw this.error;return this.outer?(this.outer.finished||this.outer.update(this.hash.digest()),this.outer.digest()):this.hash.digest()},r.prototype.digest=function(){return rs(this,void 0,void 0,function(){return ns(this,function(e){return[2,this.digestSync()]})})},r.prototype.reset=function(){if(this.hash=new ig,this.secret){this.outer=new ig;var e=AG(this.secret),t=new Uint8Array(ma);t.set(e);for(var n=0;n<ma;n++)e[n]^=54,t[n]^=92;this.hash.update(e),this.outer.update(t);for(var n=0;n<e.byteLength;n++)e[n]=0}},r})();function AG(r){var e=Ld(r);if(e.byteLength>ma){var t=new ig;t.update(e),e=t.digest()}var n=new Uint8Array(ma);return n.set(e),n}var bG=["decrypt","digest","encrypt","exportKey","generateKey","importKey","sign","verify"];function wG(r){if(CG(r)&&typeof r.crypto.subtle=="object"){var e=r.crypto.subtle;return xG(e)}return!1}function CG(r){if(typeof r=="object"&&typeof r.crypto=="object"){var e=r.crypto.getRandomValues;return typeof e=="function"}return!1}function xG(r){return r&&bG.every(function(e){return typeof r[e]=="function"})}var SG=(function(){function r(e){wG(ng())?this.hash=new hG(e):this.hash=new yG(e)}return r.prototype.update=function(e,t){this.hash.update(Ld(e))},r.prototype.digest=function(){return this.hash.digest()},r.prototype.reset=function(){this.hash.reset()},r})();const EG=({serviceId:r,clientVersion:e})=>async t=>{const n=typeof window<"u"?window.navigator:void 0,i=n?.userAgent??"",a=n?.userAgentData?.platform??e2.os(i)??"other",s=void 0,o=n?.userAgentData?.brands??[],l=o[o.length-1],u=l?.brand??e2.browser(i)??"unknown",c=l?.version??"unknown",h=[["aws-sdk-js",e],["ua","2.1"],[`os/${a}`,s],["lang/js"],["md/browser",`${u}_${c}`]];r&&h.push([`api/${r}`,e]);const f=await t?.userAgentAppId?.();return f&&h.push([`app/${f}`]),h},e2={os(r){if(/iPhone|iPad|iPod/.test(r))return"iOS";if(/Macintosh|Mac OS X/.test(r))return"macOS";if(/Windows NT/.test(r))return"Windows";if(/Android/.test(r))return"Android";if(/Linux/.test(r))return"Linux"},browser(r){if(/EdgiOS|EdgA|Edg\//.test(r))return"Microsoft Edge";if(/Firefox\//.test(r))return"Firefox";if(/Chrome\//.test(r))return"Chrome";if(/Safari\//.test(r))return"Safari"}},kG=r=>()=>Promise.reject(r),t2=typeof TextEncoder=="function"?new TextEncoder:null,FG=r=>{if(typeof r=="string"){if(t2)return t2.encode(r).byteLength;let e=r.length;for(let t=e-1;t>=0;t--){const n=r.charCodeAt(t);n>127&&n<=2047?e++:n>2047&&n<=65535&&(e+=2),n>=56320&&n<=57343&&t--}return e}else{if(typeof r.byteLength=="number")return r.byteLength;if(typeof r.size=="number")return r.size}throw new Error(`Body Length computation failed for ${r}`)},TG=["in-region","cross-region","mobile","standard","legacy"],IG=({defaultsMode:r}={})=>Fj(async()=>{const e=typeof r=="function"?await r():r;switch(e?.toLowerCase()){case"auto":return Promise.resolve(DG()?"mobile":"standard");case"mobile":case"in-region":case"cross-region":case"standard":case"legacy":return Promise.resolve(e?.toLocaleLowerCase());case void 0:return Promise.resolve("legacy");default:throw new Error(`Invalid parameter for "defaultsMode", expect ${TG.join(", ")}, got ${e}`)}}),DG=()=>{const r=window?.navigator;if(r?.connection){const{effectiveType:e,rtt:t,downlink:n}=r?.connection;if(typeof e=="string"&&e!=="4g"||Number(t)>100||Number(n)<10)return!0}return r?.userAgentData?.mobile||typeof r?.maxTouchPoints=="number"&&r?.maxTouchPoints>1};class PG{queryCompat;errorRegistry;constructor(e=!1){this.queryCompat=e}resolveRestContentType(e,t){const n=t.getMemberSchemas(),i=Object.values(n).find(a=>!!a.getMergedTraits().httpPayload);if(i){const a=i.getMergedTraits().mediaType;return a||(i.isStringSchema()?"text/plain":i.isBlobSchema()?"application/octet-stream":e)}else if(!t.isUnitSchema()&&Object.values(n).find(s=>{const{httpQuery:o,httpQueryParams:l,httpHeader:u,httpLabel:c,httpPrefixHeaders:h}=s.getMergedTraits();return!o&&!l&&!u&&!c&&h===void 0}))return e}async getErrorSchemaOrThrowBaseException(e,t,n,i,a,s){let o=e;e.includes("#")&&([,o]=e.split("#"));const l={$metadata:a,$fault:n.statusCode<500?"client":"server"};if(!this.errorRegistry)throw new Error("@aws-sdk/core/protocols - error handler not initialized.");try{return{errorSchema:s?.(this.errorRegistry,o)??this.errorRegistry.getSchema(e),errorMetadata:l}}catch{i.message=i.message??i.Message??"UnknownError";const c=this.errorRegistry,h=c.getBaseException();if(h){const g=c.getErrorCtor(h)??Error;throw this.decorateServiceException(Object.assign(new g({name:o}),l),i)}const f=i,d=f?.message??f?.Message??f?.Error?.Message??f?.Error?.message;throw this.decorateServiceException(Object.assign(new Error(d),{name:o},l),i)}}compose(e,t,n){let i=n;t.includes("#")&&([i]=t.split("#"));const a=ra.for(i),s=ra.for("smithy.ts.sdk.synthetic."+n);e.copyFrom(a),e.copyFrom(s),this.errorRegistry=e}decorateServiceException(e,t={}){if(this.queryCompat){const n=e.Message??t.Message,i=jE(e,t);n&&(i.message=n),i.Error={...i.Error,Type:i.Error?.Type,Code:i.Error?.Code,Message:i.Error?.message??i.Error?.Message??n};const a=i.$metadata.requestId;return a&&(i.RequestId=a),i}return jE(e,t)}setQueryCompatError(e,t){const n=t.headers?.["x-amzn-query-error"];if(e!==void 0&&n!=null){const[i,a]=n.split(";"),s=Object.entries(e),o={Code:i,Type:a};Object.assign(e,o);for(const[l,u]of s)o[l==="message"?"Message":l]=u;delete o.__type,e.Error=o}}queryCompatOutput(e,t){e.Error&&(t.Error=e.Error),e.Type&&(t.Type=e.Type),e.Code&&(t.Code=e.Code)}findQueryCompatibleError(e,t){try{return e.getSchema(t)}catch{return e.find(i=>vi.of(i).getMergedTraits().awsQueryError?.[0]===t)}}}class G1{serdeContext;setSerdeContext(e){this.serdeContext=e}}class RG{from;to;keys;constructor(e,t){this.from=e,this.to=t,this.keys=new Set(Object.keys(this.from).filter(n=>n!=="__type"))}mark(e){this.keys.delete(e)}hasUnknown(){return this.keys.size===1&&Object.keys(this.to).length===0}writeUnknown(){if(this.hasUnknown()){const e=this.keys.values().next().value,t=this.from[e];this.to.$unknown=[e,t]}}}function OG(r,e,t){if(t?.source){const n=t.source;if(typeof e=="number"&&(e>Number.MAX_SAFE_INTEGER||e<Number.MIN_SAFE_INTEGER||n!==String(e)))return n.includes(".")?new as(n,"bigDecimal"):BigInt(n)}return e}const BG=(r,e)=>gA(r,e).then(t=>(e?.utf8Encoder??im)(t)),MG=(r,e)=>BG(r,e).then(t=>{if(t.length)try{return JSON.parse(t)}catch(n){throw n?.name==="SyntaxError"&&Object.defineProperty(n,"$responseBodyText",{value:t}),n}return{}}),_G=(r,e)=>{const t=(a,s)=>Object.keys(a).find(o=>o.toLowerCase()===s.toLowerCase()),n=a=>{let s=a;return typeof s=="number"&&(s=s.toString()),s.indexOf(",")>=0&&(s=s.split(",")[0]),s.indexOf(":")>=0&&(s=s.split(":")[0]),s.indexOf("#")>=0&&(s=s.split("#")[1]),s},i=t(r.headers,"x-amzn-errortype");if(i!==void 0)return n(r.headers[i]);if(e&&typeof e=="object"){const a=t(e,"code");if(a&&e[a]!==void 0)return n(e[a]);if(e.__type!==void 0)return n(e.__type)}};class NG extends G1{settings;constructor(e){super(),this.settings=e}async read(e,t){return this._read(e,typeof t=="string"?JSON.parse(t,OG):await MG(t,this.serdeContext))}readObject(e,t){return this._read(e,t)}_read(e,t){const n=t!==null&&typeof t=="object",i=vi.of(e);if(n){if(i.isStructSchema()){const s=t,o=i.isUnionSchema(),l={};let u;const{jsonName:c}=this.settings;c&&(u={});let h;o&&(h=new RG(s,l));for(const[f,d]of i.structIterator()){let g=f;c&&(g=d.getMergedTraits().jsonName??g,u[g]=f),o&&h.mark(g),s[g]!=null&&(l[f]=this._read(d,s[g]))}if(o)h.writeUnknown();else if(typeof s.__type=="string")for(const[f,d]of Object.entries(s)){const g=c?u[f]??f:f;g in l||(l[g]=d)}return l}if(Array.isArray(t)&&i.isListSchema()){const s=i.getValueSchema(),o=[];for(const l of t)o.push(this._read(s,l));return o}if(i.isMapSchema()){const s=i.getValueSchema(),o={};for(const[l,u]of Object.entries(t))o[l]=this._read(s,u);return o}}if(i.isBlobSchema()&&typeof t=="string")return nm(t);const a=i.getMergedTraits().mediaType;if(i.isStringSchema()&&typeof t=="string"&&a)return a==="application/json"||a.endsWith("+json")?mo.from(t):t;if(i.isTimestampSchema()&&t!=null)switch(UI(i,this.settings)){case 5:return pz(t);case 6:return NI(t);case 7:return yz(t);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",t),new Date(t)}if(i.isBigIntegerSchema()&&(typeof t=="number"||typeof t=="string"))return BigInt(t);if(i.isBigDecimalSchema()&&t!=null){if(t instanceof as)return t;const s=t;return s.type==="bigDecimal"&&"string"in s?new as(s.string,s.type):new as(String(t),"bigDecimal")}if(i.isNumericSchema()&&typeof t=="string"){switch(t){case"Infinity":return 1/0;case"-Infinity":return-1/0;case"NaN":return NaN}return t}if(i.isDocumentSchema())if(n){const s=Array.isArray(t)?[]:{};for(const[o,l]of Object.entries(t))l instanceof as?s[o]=l:s[o]=this._read(i,l);return s}else return structuredClone(t);return t}}const r2="Ν";class LG{values=new Map;counter=0;stage=0;createReplacer(){if(this.stage===1)throw new Error("@aws-sdk/core/protocols - JsonReplacer already created.");if(this.stage===2)throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");return this.stage=1,(e,t)=>{if(t instanceof as){const n=`${r2+"nv"+this.counter++}_`+t.string;return this.values.set(`"${n}"`,t.string),n}if(typeof t=="bigint"){const n=t.toString(),i=`${r2+"b"+this.counter++}_`+n;return this.values.set(`"${i}"`,n),i}return t}}replaceInJson(e){if(this.stage===0)throw new Error("@aws-sdk/core/protocols - JsonReplacer not created yet.");if(this.stage===2)throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");if(this.stage=2,this.counter===0)return e;for(const[t,n]of this.values)e=e.replace(t,n);return e}}class UG extends G1{settings;buffer;useReplacer=!1;rootSchema;constructor(e){super(),this.settings=e}write(e,t){this.rootSchema=vi.of(e),this.buffer=this._write(this.rootSchema,t)}writeDiscriminatedDocument(e,t){this.write(e,t),typeof this.buffer=="object"&&(this.buffer.__type=vi.of(e).getName(!0))}flush(){const{rootSchema:e,useReplacer:t}=this;if(this.rootSchema=void 0,this.useReplacer=!1,e?.isStructSchema()||e?.isDocumentSchema()){if(!t)return JSON.stringify(this.buffer);const n=new LG;return n.replaceInJson(JSON.stringify(this.buffer,n.createReplacer(),0))}return this.buffer}_write(e,t,n){const i=t!==null&&typeof t=="object",a=vi.of(e);if(i){if(a.isStructSchema()){const s=t,o={},{jsonName:l}=this.settings;let u;l&&(u={});for(const[c,h]of a.structIterator()){const f=this._write(h,s[c],a);if(f!==void 0){let d=c;l&&(d=h.getMergedTraits().jsonName??c,u[c]=d),o[d]=f}}if(a.isUnionSchema()&&Object.keys(o).length===0){const{$unknown:c}=s;if(Array.isArray(c)){const[h,f]=c;o[h]=this._write(15,f)}}else if(typeof s.__type=="string")for(const[c,h]of Object.entries(s)){const f=l?u[c]??c:c;f in o||(o[f]=this._write(15,h))}return o}if(Array.isArray(t)&&a.isListSchema()){const s=a.getValueSchema(),o=[],l=!!a.getMergedTraits().sparse;for(const u of t)(l||u!=null)&&o.push(this._write(s,u));return o}if(a.isMapSchema()){const s=a.getValueSchema(),o={},l=!!a.getMergedTraits().sparse;for(const[u,c]of Object.entries(t))(l||c!=null)&&(o[u]=this._write(s,c));return o}if(t instanceof Uint8Array&&(a.isBlobSchema()||a.isDocumentSchema()))return a===this.rootSchema?t:(this.serdeContext?.base64Encoder??kg)(t);if(t instanceof Date&&(a.isTimestampSchema()||a.isDocumentSchema()))switch(UI(a,this.settings)){case 5:return t.toISOString().replace(".000Z","Z");case 6:return dz(t);case 7:return t.getTime()/1e3;default:return console.warn("Missing timestamp format, using epoch seconds",t),t.getTime()/1e3}t instanceof as&&(this.useReplacer=!0)}if(!(t===null&&n?.isStructSchema())){if(a.isStringSchema()){if(typeof t>"u"&&a.isIdempotencyToken())return LI();const s=a.getMergedTraits().mediaType;return t!=null&&s&&(s==="application/json"||s.endsWith("+json"))?mo.from(t):t}if(typeof t=="number"&&a.isNumericSchema())return Math.abs(t)===1/0||isNaN(t)?String(t):t;if(typeof t=="string"&&a.isBlobSchema())return a===this.rootSchema?t:(this.serdeContext?.base64Encoder??kg)(t);if(typeof t=="bigint"&&(this.useReplacer=!0),a.isDocumentSchema())if(i){const s=Array.isArray(t)?[]:{};for(const[o,l]of Object.entries(t))l instanceof as?(this.useReplacer=!0,s[o]=l):s[o]=this._write(a,l);return s}else return structuredClone(t);return t}}}class VG extends G1{settings;constructor(e){super(),this.settings=e}createSerializer(){const e=new UG(this.settings);return e.setSerdeContext(this.serdeContext),e}createDeserializer(){const e=new NG(this.settings);return e.setSerdeContext(this.serdeContext),e}}class zG extends Iz{serializer;deserializer;serviceTarget;codec;mixin;awsQueryCompatible;constructor({defaultNamespace:e,errorTypeRegistries:t,serviceTarget:n,awsQueryCompatible:i,jsonCodec:a}){super({defaultNamespace:e,errorTypeRegistries:t}),this.serviceTarget=n,this.codec=a??new VG({timestampFormat:{useTrait:!0,default:7},jsonName:!1}),this.serializer=this.codec.createSerializer(),this.deserializer=this.codec.createDeserializer(),this.awsQueryCompatible=!!i,this.mixin=new PG(this.awsQueryCompatible)}async serializeRequest(e,t,n){const i=await super.serializeRequest(e,t,n);return i.path.endsWith("/")||(i.path+="/"),Object.assign(i.headers,{"content-type":`application/x-amz-json-${this.getJsonRpcVersion()}`,"x-amz-target":`${this.serviceTarget}.${e.name}`}),this.awsQueryCompatible&&(i.headers["x-amzn-query-mode"]="true"),(tg(e.input)==="unit"||!i.body)&&(i.body="{}"),i}getPayloadCodec(){return this.codec}async handleError(e,t,n,i,a){this.awsQueryCompatible&&this.mixin.setQueryCompatError(i,n);const s=_G(n,i)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,s,this.options.defaultNamespace);const{errorSchema:o,errorMetadata:l}=await this.mixin.getErrorSchemaOrThrowBaseException(s,this.options.defaultNamespace,n,i,a,this.awsQueryCompatible?this.mixin.findQueryCompatibleError:void 0),u=vi.of(o),c=i.message??i.Message??"UnknownError",h=this.compositeErrorRegistry.getErrorCtor(o)??Error,f=new h(c),d={};for(const[g,v]of u.structIterator())i[g]!=null&&(d[g]=this.codec.createDeserializer().readObject(v,i[g]));throw this.awsQueryCompatible&&this.mixin.queryCompatOutput(i,d),this.mixin.decorateServiceException(Object.assign(f,l,{$fault:u.getMergedTraits().error,message:c},d),i)}}class HG extends zG{constructor({defaultNamespace:e,errorTypeRegistries:t,serviceTarget:n,awsQueryCompatible:i,jsonCodec:a}){super({defaultNamespace:e,errorTypeRegistries:t,serviceTarget:n,awsQueryCompatible:i,jsonCodec:a})}getShapeId(){return"aws.protocols#awsJson1_1"}getJsonRpcVersion(){return"1.1"}getDefaultContentType(){return"application/x-amz-json-1.1"}}const pD=(r,e=!1)=>{if(e){for(const t of r.split("."))if(!pD(t))return!1;return!0}return!(!oh(r)||r.length<3||r.length>63||r!==r.toLowerCase()||L1(r))},n2=":",jG="/",GG=r=>{const e=r.split(n2);if(e.length<6)return null;const[t,n,i,a,s,...o]=e;if(t!=="arn"||n===""||i===""||o.join(n2)==="")return null;const l=o.map(u=>u.split(jG)).flat();return{partition:n,service:i,region:a,accountId:s,resourceId:l}},$G=[{id:"aws",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-east-1",name:"aws",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$",regions:{"af-south-1":{description:"Africa (Cape Town)"},"ap-east-1":{description:"Asia Pacific (Hong Kong)"},"ap-east-2":{description:"Asia Pacific (Taipei)"},"ap-northeast-1":{description:"Asia Pacific (Tokyo)"},"ap-northeast-2":{description:"Asia Pacific (Seoul)"},"ap-northeast-3":{description:"Asia Pacific (Osaka)"},"ap-south-1":{description:"Asia Pacific (Mumbai)"},"ap-south-2":{description:"Asia Pacific (Hyderabad)"},"ap-southeast-1":{description:"Asia Pacific (Singapore)"},"ap-southeast-2":{description:"Asia Pacific (Sydney)"},"ap-southeast-3":{description:"Asia Pacific (Jakarta)"},"ap-southeast-4":{description:"Asia Pacific (Melbourne)"},"ap-southeast-5":{description:"Asia Pacific (Malaysia)"},"ap-southeast-6":{description:"Asia Pacific (New Zealand)"},"ap-southeast-7":{description:"Asia Pacific (Thailand)"},"aws-global":{description:"aws global region"},"ca-central-1":{description:"Canada (Central)"},"ca-west-1":{description:"Canada West (Calgary)"},"eu-central-1":{description:"Europe (Frankfurt)"},"eu-central-2":{description:"Europe (Zurich)"},"eu-north-1":{description:"Europe (Stockholm)"},"eu-south-1":{description:"Europe (Milan)"},"eu-south-2":{description:"Europe (Spain)"},"eu-west-1":{description:"Europe (Ireland)"},"eu-west-2":{description:"Europe (London)"},"eu-west-3":{description:"Europe (Paris)"},"il-central-1":{description:"Israel (Tel Aviv)"},"me-central-1":{description:"Middle East (UAE)"},"me-south-1":{description:"Middle East (Bahrain)"},"mx-central-1":{description:"Mexico (Central)"},"sa-east-1":{description:"South America (Sao Paulo)"},"us-east-1":{description:"US East (N. Virginia)"},"us-east-2":{description:"US East (Ohio)"},"us-west-1":{description:"US West (N. California)"},"us-west-2":{description:"US West (Oregon)"}}},{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn",dualStackDnsSuffix:"api.amazonwebservices.com.cn",implicitGlobalRegion:"cn-northwest-1",name:"aws-cn",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:{"aws-cn-global":{description:"aws-cn global region"},"cn-north-1":{description:"China (Beijing)"},"cn-northwest-1":{description:"China (Ningxia)"}}},{id:"aws-eusc",outputs:{dnsSuffix:"amazonaws.eu",dualStackDnsSuffix:"api.amazonwebservices.eu",implicitGlobalRegion:"eusc-de-east-1",name:"aws-eusc",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eusc\\-(de)\\-\\w+\\-\\d+$",regions:{"eusc-de-east-1":{description:"AWS European Sovereign Cloud (Germany)"}}},{id:"aws-iso",outputs:{dnsSuffix:"c2s.ic.gov",dualStackDnsSuffix:"api.aws.ic.gov",implicitGlobalRegion:"us-iso-east-1",name:"aws-iso",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",regions:{"aws-iso-global":{description:"aws-iso global region"},"us-iso-east-1":{description:"US ISO East"},"us-iso-west-1":{description:"US ISO WEST"}}},{id:"aws-iso-b",outputs:{dnsSuffix:"sc2s.sgov.gov",dualStackDnsSuffix:"api.aws.scloud",implicitGlobalRegion:"us-isob-east-1",name:"aws-iso-b",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",regions:{"aws-iso-b-global":{description:"aws-iso-b global region"},"us-isob-east-1":{description:"US ISOB East (Ohio)"},"us-isob-west-1":{description:"US ISOB West"}}},{id:"aws-iso-e",outputs:{dnsSuffix:"cloud.adc-e.uk",dualStackDnsSuffix:"api.cloud-aws.adc-e.uk",implicitGlobalRegion:"eu-isoe-west-1",name:"aws-iso-e",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eu\\-isoe\\-\\w+\\-\\d+$",regions:{"aws-iso-e-global":{description:"aws-iso-e global region"},"eu-isoe-west-1":{description:"EU ISOE West"}}},{id:"aws-iso-f",outputs:{dnsSuffix:"csp.hci.ic.gov",dualStackDnsSuffix:"api.aws.hci.ic.gov",implicitGlobalRegion:"us-isof-south-1",name:"aws-iso-f",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isof\\-\\w+\\-\\d+$",regions:{"aws-iso-f-global":{description:"aws-iso-f global region"},"us-isof-east-1":{description:"US ISOF EAST"},"us-isof-south-1":{description:"US ISOF SOUTH"}}},{id:"aws-us-gov",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-gov-west-1",name:"aws-us-gov",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",regions:{"aws-us-gov-global":{description:"aws-us-gov global region"},"us-gov-east-1":{description:"AWS GovCloud (US-East)"},"us-gov-west-1":{description:"AWS GovCloud (US-West)"}}}],qG={partitions:$G};let WG=qG;const QG=r=>{const{partitions:e}=WG;for(const n of e){const{regions:i,outputs:a}=n;for(const[s,o]of Object.entries(i))if(s===r)return{...a,...o}}for(const n of e){const{regionRegex:i,outputs:a}=n;if(new RegExp(i).test(r))return{...a}}const t=e.find(n=>n.id==="aws");if(!t)throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");return{...t.outputs}},gD={isVirtualHostableS3Bucket:pD,parseArn:GG,partition:QG};Md.aws=gD;const mD="required",Ii="fn",Di="argv",Ec="ref",i2=!0,a2="isSet",Ud="booleanEquals",Pu="error",Ka="endpoint",Ps="tree",$1="PartitionResult",q1="getAttr",Nf="stringEquals",s2={[mD]:!1,type:"string"},o2={[mD]:!0,default:!1,type:"boolean"},l2={[Ec]:"Endpoint"},vD={[Ii]:Ud,[Di]:[{[Ec]:"UseFIPS"},!0]},yD={[Ii]:Ud,[Di]:[{[Ec]:"UseDualStack"},!0]},ti={},Kf={[Ec]:"Region"},u2={[Ii]:q1,[Di]:[{[Ec]:$1},"supportsFIPS"]},AD={[Ec]:$1},c2={[Ii]:Ud,[Di]:[!0,{[Ii]:q1,[Di]:[AD,"supportsDualStack"]}]},f2=[vD],d2=[yD],h2=[Kf],YG={parameters:{Region:s2,UseDualStack:o2,UseFIPS:o2,Endpoint:s2},rules:[{conditions:[{[Ii]:a2,[Di]:[l2]}],rules:[{conditions:f2,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:Pu},{conditions:d2,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:Pu},{endpoint:{url:l2,properties:ti,headers:ti},type:Ka}],type:Ps},{conditions:[{[Ii]:a2,[Di]:h2}],rules:[{conditions:[{[Ii]:"aws.partition",[Di]:h2,assign:$1}],rules:[{conditions:[vD,yD],rules:[{conditions:[{[Ii]:Ud,[Di]:[i2,u2]},c2],rules:[{conditions:[{[Ii]:Nf,[Di]:[Kf,"us-east-1"]}],endpoint:{url:"https://cognito-idp-fips.us-east-1.amazonaws.com",properties:ti,headers:ti},type:Ka},{conditions:[{[Ii]:Nf,[Di]:[Kf,"us-east-2"]}],endpoint:{url:"https://cognito-idp-fips.us-east-2.amazonaws.com",properties:ti,headers:ti},type:Ka},{conditions:[{[Ii]:Nf,[Di]:[Kf,"us-west-1"]}],endpoint:{url:"https://cognito-idp-fips.us-west-1.amazonaws.com",properties:ti,headers:ti},type:Ka},{conditions:[{[Ii]:Nf,[Di]:[Kf,"us-west-2"]}],endpoint:{url:"https://cognito-idp-fips.us-west-2.amazonaws.com",properties:ti,headers:ti},type:Ka},{endpoint:{url:"https://cognito-idp-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:ti,headers:ti},type:Ka}],type:Ps},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:Pu}],type:Ps},{conditions:f2,rules:[{conditions:[{[Ii]:Ud,[Di]:[u2,i2]}],rules:[{endpoint:{url:"https://cognito-idp-fips.{Region}.{PartitionResult#dnsSuffix}",properties:ti,headers:ti},type:Ka}],type:Ps},{error:"FIPS is enabled but this partition does not support FIPS",type:Pu}],type:Ps},{conditions:d2,rules:[{conditions:[c2],rules:[{conditions:[{[Ii]:Nf,[Di]:["aws",{[Ii]:q1,[Di]:[AD,"name"]}]}],endpoint:{url:"https://cognito-idp.{Region}.amazonaws.com",properties:ti,headers:ti},type:Ka},{endpoint:{url:"https://cognito-idp.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:ti,headers:ti},type:Ka}],type:Ps},{error:"DualStack is enabled but this partition does not support DualStack",type:Pu}],type:Ps},{endpoint:{url:"https://cognito-idp.{Region}.{PartitionResult#dnsSuffix}",properties:ti,headers:ti},type:Ka}],type:Ps}],type:Ps},{error:"Invalid Configuration: Missing Region",type:Pu}]},XG=YG,JG=new Vz({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),KG=(r,e={})=>JG.get(r,()=>aH(XG,{endpointParams:r,logger:e.logger}));Md.aws=gD;class xt extends Hu{constructor(e){super(e),Object.setPrototypeOf(this,xt.prototype)}}class W1 extends xt{name="AccessDeniedException";$fault="client";constructor(e){super({name:"AccessDeniedException",$fault:"client",...e}),Object.setPrototypeOf(this,W1.prototype)}}class Q1 extends xt{name="InternalErrorException";$fault="server";constructor(e){super({name:"InternalErrorException",$fault:"server",...e}),Object.setPrototypeOf(this,Q1.prototype)}}class Y1 extends xt{name="InvalidParameterException";$fault="client";reasonCode;constructor(e){super({name:"InvalidParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,Y1.prototype),this.reasonCode=e.reasonCode}}class X1 extends xt{name="NotAuthorizedException";$fault="client";constructor(e){super({name:"NotAuthorizedException",$fault:"client",...e}),Object.setPrototypeOf(this,X1.prototype)}}class J1 extends xt{name="ResourceNotFoundException";$fault="client";constructor(e){super({name:"ResourceNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,J1.prototype)}}class K1 extends xt{name="TooManyRequestsException";$fault="client";constructor(e){super({name:"TooManyRequestsException",$fault:"client",...e}),Object.setPrototypeOf(this,K1.prototype)}}class Z1 extends xt{name="UserImportInProgressException";$fault="client";constructor(e){super({name:"UserImportInProgressException",$fault:"client",...e}),Object.setPrototypeOf(this,Z1.prototype)}}class eb extends xt{name="InternalServerException";$fault="server";constructor(e){super({name:"InternalServerException",$fault:"server",...e}),Object.setPrototypeOf(this,eb.prototype)}}class tb extends xt{name="LimitExceededException";$fault="client";constructor(e){super({name:"LimitExceededException",$fault:"client",...e}),Object.setPrototypeOf(this,tb.prototype)}}class rb extends xt{name="UserNotFoundException";$fault="client";constructor(e){super({name:"UserNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,rb.prototype)}}class nb extends xt{name="InvalidLambdaResponseException";$fault="client";constructor(e){super({name:"InvalidLambdaResponseException",$fault:"client",...e}),Object.setPrototypeOf(this,nb.prototype)}}class ib extends xt{name="TooManyFailedAttemptsException";$fault="client";constructor(e){super({name:"TooManyFailedAttemptsException",$fault:"client",...e}),Object.setPrototypeOf(this,ib.prototype)}}class ab extends xt{name="UnexpectedLambdaException";$fault="client";constructor(e){super({name:"UnexpectedLambdaException",$fault:"client",...e}),Object.setPrototypeOf(this,ab.prototype)}}class sb extends xt{name="UserLambdaValidationException";$fault="client";constructor(e){super({name:"UserLambdaValidationException",$fault:"client",...e}),Object.setPrototypeOf(this,sb.prototype)}}class ob extends xt{name="CodeDeliveryFailureException";$fault="client";constructor(e){super({name:"CodeDeliveryFailureException",$fault:"client",...e}),Object.setPrototypeOf(this,ob.prototype)}}class lb extends xt{name="InvalidPasswordException";$fault="client";constructor(e){super({name:"InvalidPasswordException",$fault:"client",...e}),Object.setPrototypeOf(this,lb.prototype)}}class ub extends xt{name="InvalidSmsRoleAccessPolicyException";$fault="client";constructor(e){super({name:"InvalidSmsRoleAccessPolicyException",$fault:"client",...e}),Object.setPrototypeOf(this,ub.prototype)}}class cb extends xt{name="InvalidSmsRoleTrustRelationshipException";$fault="client";constructor(e){super({name:"InvalidSmsRoleTrustRelationshipException",$fault:"client",...e}),Object.setPrototypeOf(this,cb.prototype)}}class fb extends xt{name="PreconditionNotMetException";$fault="client";constructor(e){super({name:"PreconditionNotMetException",$fault:"client",...e}),Object.setPrototypeOf(this,fb.prototype)}}class db extends xt{name="UnsupportedUserStateException";$fault="client";constructor(e){super({name:"UnsupportedUserStateException",$fault:"client",...e}),Object.setPrototypeOf(this,db.prototype)}}class hb extends xt{name="UsernameExistsException";$fault="client";constructor(e){super({name:"UsernameExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,hb.prototype)}}class pb extends xt{name="AliasExistsException";$fault="client";constructor(e){super({name:"AliasExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,pb.prototype)}}class gb extends xt{name="InvalidUserPoolConfigurationException";$fault="client";constructor(e){super({name:"InvalidUserPoolConfigurationException",$fault:"client",...e}),Object.setPrototypeOf(this,gb.prototype)}}class mb extends xt{name="InvalidEmailRoleAccessPolicyException";$fault="client";constructor(e){super({name:"InvalidEmailRoleAccessPolicyException",$fault:"client",...e}),Object.setPrototypeOf(this,mb.prototype)}}class vb extends xt{name="MFAMethodNotFoundException";$fault="client";constructor(e){super({name:"MFAMethodNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,vb.prototype)}}class yb extends xt{name="PasswordResetRequiredException";$fault="client";constructor(e){super({name:"PasswordResetRequiredException",$fault:"client",...e}),Object.setPrototypeOf(this,yb.prototype)}}class Ab extends xt{name="UnsupportedOperationException";$fault="client";constructor(e){super({name:"UnsupportedOperationException",$fault:"client",...e}),Object.setPrototypeOf(this,Ab.prototype)}}class bb extends xt{name="UserNotConfirmedException";$fault="client";constructor(e){super({name:"UserNotConfirmedException",$fault:"client",...e}),Object.setPrototypeOf(this,bb.prototype)}}class wb extends xt{name="UserPoolAddOnNotEnabledException";$fault="client";constructor(e){super({name:"UserPoolAddOnNotEnabledException",$fault:"client",...e}),Object.setPrototypeOf(this,wb.prototype)}}class Cb extends xt{name="CodeMismatchException";$fault="client";constructor(e){super({name:"CodeMismatchException",$fault:"client",...e}),Object.setPrototypeOf(this,Cb.prototype)}}class xb extends xt{name="ExpiredCodeException";$fault="client";constructor(e){super({name:"ExpiredCodeException",$fault:"client",...e}),Object.setPrototypeOf(this,xb.prototype)}}class Sb extends xt{name="PasswordHistoryPolicyViolationException";$fault="client";constructor(e){super({name:"PasswordHistoryPolicyViolationException",$fault:"client",...e}),Object.setPrototypeOf(this,Sb.prototype)}}class Eb extends xt{name="SoftwareTokenMFANotFoundException";$fault="client";constructor(e){super({name:"SoftwareTokenMFANotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,Eb.prototype)}}class kb extends xt{name="ConcurrentModificationException";$fault="client";constructor(e){super({name:"ConcurrentModificationException",$fault:"client",...e}),Object.setPrototypeOf(this,kb.prototype)}}class Fb extends xt{name="ForbiddenException";$fault="client";constructor(e){super({name:"ForbiddenException",$fault:"client",...e}),Object.setPrototypeOf(this,Fb.prototype)}}class Tb extends xt{name="WebAuthnChallengeNotFoundException";$fault="client";constructor(e){super({name:"WebAuthnChallengeNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,Tb.prototype)}}class Ib extends xt{name="WebAuthnClientMismatchException";$fault="client";constructor(e){super({name:"WebAuthnClientMismatchException",$fault:"client",...e}),Object.setPrototypeOf(this,Ib.prototype)}}class Db extends xt{name="WebAuthnCredentialNotSupportedException";$fault="client";constructor(e){super({name:"WebAuthnCredentialNotSupportedException",$fault:"client",...e}),Object.setPrototypeOf(this,Db.prototype)}}class Pb extends xt{name="WebAuthnNotEnabledException";$fault="client";constructor(e){super({name:"WebAuthnNotEnabledException",$fault:"client",...e}),Object.setPrototypeOf(this,Pb.prototype)}}class Rb extends xt{name="WebAuthnOriginNotAllowedException";$fault="client";constructor(e){super({name:"WebAuthnOriginNotAllowedException",$fault:"client",...e}),Object.setPrototypeOf(this,Rb.prototype)}}class Ob extends xt{name="WebAuthnRelyingPartyMismatchException";$fault="client";constructor(e){super({name:"WebAuthnRelyingPartyMismatchException",$fault:"client",...e}),Object.setPrototypeOf(this,Ob.prototype)}}class Bb extends xt{name="DeviceKeyExistsException";$fault="client";constructor(e){super({name:"DeviceKeyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,Bb.prototype)}}class Mb extends xt{name="GroupExistsException";$fault="client";constructor(e){super({name:"GroupExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,Mb.prototype)}}class _b extends xt{name="DuplicateProviderException";$fault="client";constructor(e){super({name:"DuplicateProviderException",$fault:"client",...e}),Object.setPrototypeOf(this,_b.prototype)}}class Nb extends xt{name="ManagedLoginBrandingExistsException";$fault="client";constructor(e){super({name:"ManagedLoginBrandingExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,Nb.prototype)}}class Lb extends xt{name="TermsExistsException";$fault="client";constructor(e){super({name:"TermsExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,Lb.prototype)}}class Ub extends xt{name="FeatureUnavailableInTierException";$fault="client";constructor(e){super({name:"FeatureUnavailableInTierException",$fault:"client",...e}),Object.setPrototypeOf(this,Ub.prototype)}}class Vb extends xt{name="TierChangeNotAllowedException";$fault="client";constructor(e){super({name:"TierChangeNotAllowedException",$fault:"client",...e}),Object.setPrototypeOf(this,Vb.prototype)}}class zb extends xt{name="UserPoolTaggingException";$fault="client";constructor(e){super({name:"UserPoolTaggingException",$fault:"client",...e}),Object.setPrototypeOf(this,zb.prototype)}}class Hb extends xt{name="InvalidOAuthFlowException";$fault="client";constructor(e){super({name:"InvalidOAuthFlowException",$fault:"client",...e}),Object.setPrototypeOf(this,Hb.prototype)}}class jb extends xt{name="ScopeDoesNotExistException";$fault="client";constructor(e){super({name:"ScopeDoesNotExistException",$fault:"client",...e}),Object.setPrototypeOf(this,jb.prototype)}}class Gb extends xt{name="UnsupportedIdentityProviderException";$fault="client";constructor(e){super({name:"UnsupportedIdentityProviderException",$fault:"client",...e}),Object.setPrototypeOf(this,Gb.prototype)}}class $b extends xt{name="RefreshTokenReuseException";$fault="client";constructor(e){super({name:"RefreshTokenReuseException",$fault:"client",...e}),Object.setPrototypeOf(this,$b.prototype)}}class qb extends xt{name="UnauthorizedException";$fault="client";constructor(e){super({name:"UnauthorizedException",$fault:"client",...e}),Object.setPrototypeOf(this,qb.prototype)}}class Wb extends xt{name="UnsupportedTokenTypeException";$fault="client";constructor(e){super({name:"UnsupportedTokenTypeException",$fault:"client",...e}),Object.setPrototypeOf(this,Wb.prototype)}}class Qb extends xt{name="WebAuthnConfigurationMissingException";$fault="client";constructor(e){super({name:"WebAuthnConfigurationMissingException",$fault:"client",...e}),Object.setPrototypeOf(this,Qb.prototype)}}class Yb extends xt{name="EnableSoftwareTokenMFAException";$fault="client";constructor(e){super({name:"EnableSoftwareTokenMFAException",$fault:"client",...e}),Object.setPrototypeOf(this,Yb.prototype)}}const ZG="AvailableChallenges",e$="AccessDeniedException",t$="AliasExistsException",r$="AnalyticsEndpointId",n$="AuthFlow",bD="AnalyticsMetadata",i$="AnalyticsMetadataType",a$="AuthParameters",s$="AuthParametersType",wD="AuthenticationResult",o$="AuthenticationResultType",l$="AccessToken",u$="CodeDeliveryFailureException",CD="ClientId",c$="ClientIdType",xD="ClientMetadata",f$="CodeMismatchException",d$="ConcurrentModificationException",Xb="ChallengeName",SD="ChallengeParameters",h$="ChallengeResponses",p$="ChallengeResponsesType",g$="DeviceGroupKey",m$="DeviceKey",v$="DeviceKeyExistsException",y$="DuplicateProviderException",A$="ExpiredCodeException",b$="EncodedData",w$="ExpiresIn",C$="EnableSoftwareTokenMFAException",x$="ForbiddenException",S$="FeatureUnavailableInTierException",E$="GroupExistsException",k$="IpAddress",F$="InitiateAuthRequest",T$="InitiateAuthResponse",I$="InitiateAuth",D$="InternalErrorException",P$="InvalidEmailRoleAccessPolicyException",R$="InvalidLambdaResponseException",O$="InvalidOAuthFlowException",B$="InvalidParameterException",M$="InvalidPasswordException",_$="InternalServerException",N$="InvalidSmsRoleAccessPolicyException",L$="InvalidSmsRoleTrustRelationshipException",U$="IdToken",V$="InvalidUserPoolConfigurationException",z$="LimitExceededException",H$="MFAMethodNotFoundException",j$="ManagedLoginBrandingExistsException",G$="NotAuthorizedException",$$="NewDeviceMetadata",q$="NewDeviceMetadataType",W$="PasswordHistoryPolicyViolationException",Q$="PreconditionNotMetException",Y$="PasswordResetRequiredException",X$="ResourceNotFoundException",J$="RefreshToken",K$="RespondToAuthChallenge",Z$="RespondToAuthChallengeRequest",eq="RespondToAuthChallengeResponse",tq="RefreshTokenReuseException",om="Session",rq="ScopeDoesNotExistException",nq="SessionType",iq="SoftwareTokenMFANotFoundException",aq="TierChangeNotAllowedException",sq="TermsExistsException",oq="TooManyFailedAttemptsException",lq="TooManyRequestsException",uq="TokenModelType",cq="TokenType",fq="UserContextDataType",ED="UserContextData",dq="UnauthorizedException",hq="UsernameExistsException",pq="UserImportInProgressException",gq="UnsupportedIdentityProviderException",mq="UnexpectedLambdaException",vq="UserLambdaValidationException",yq="UserNotConfirmedException",Aq="UserNotFoundException",bq="UnsupportedOperationException",wq="UserPoolAddOnNotEnabledException",Cq="UserPoolTaggingException",xq="UnsupportedTokenTypeException",Sq="UnsupportedUserStateException",Eq="WebAuthnClientMismatchException",kq="WebAuthnConfigurationMissingException",Fq="WebAuthnChallengeNotFoundException",Tq="WebAuthnCredentialNotSupportedException",Iq="WebAuthnNotEnabledException",Dq="WebAuthnOriginNotAllowedException",Pq="WebAuthnRelyingPartyMismatchException",Ot="client",Ft="error",Bt="httpError",Tt="message",Rq="reasonCode",kD="smithy.ts.sdk.synthetic.com.amazonaws.cognitoidentityprovider",FD="server",at="com.amazonaws.cognitoidentityprovider",TD=ra.for(kD);var Oq=[-3,kD,"CognitoIdentityProviderServiceException",0,[],[]];TD.registerError(Oq,xt);const kt=ra.for(at);var Bq=[-3,at,e$,{[Ft]:Ot,[Bt]:403},[Tt],[0]];kt.registerError(Bq,W1);var Mq=[-3,at,t$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Mq,pb);var _q=[-3,at,u$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(_q,ob);var Nq=[-3,at,f$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Nq,Cb);var Lq=[-3,at,d$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Lq,kb);var Uq=[-3,at,v$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Uq,Bb);var Vq=[-3,at,y$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Vq,_b);var zq=[-3,at,C$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(zq,Yb);var Hq=[-3,at,A$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Hq,xb);var jq=[-3,at,S$,{[Ft]:Ot,[Bt]:403},[Tt],[0]];kt.registerError(jq,Ub);var Gq=[-3,at,x$,{[Ft]:Ot,[Bt]:403},[Tt],[0]];kt.registerError(Gq,Fb);var $q=[-3,at,E$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError($q,Mb);var qq=[-3,at,D$,{[Ft]:FD},[Tt],[0]];kt.registerError(qq,Q1);var Wq=[-3,at,_$,{[Ft]:FD},[Tt],[0]];kt.registerError(Wq,eb);var Qq=[-3,at,P$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Qq,mb);var Yq=[-3,at,R$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Yq,nb);var Xq=[-3,at,O$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Xq,Hb);var Jq=[-3,at,B$,{[Ft]:Ot,[Bt]:400},[Tt,Rq],[0,0]];kt.registerError(Jq,Y1);var Kq=[-3,at,M$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Kq,lb);var Zq=[-3,at,N$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(Zq,ub);var eW=[-3,at,L$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(eW,cb);var tW=[-3,at,V$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(tW,gb);var rW=[-3,at,z$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(rW,tb);var nW=[-3,at,j$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(nW,Nb);var iW=[-3,at,H$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(iW,vb);var aW=[-3,at,G$,{[Ft]:Ot,[Bt]:403},[Tt],[0]];kt.registerError(aW,X1);var sW=[-3,at,W$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(sW,Sb);var oW=[-3,at,Y$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(oW,yb);var lW=[-3,at,Q$,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(lW,fb);var uW=[-3,at,tq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(uW,$b);var cW=[-3,at,X$,{[Ft]:Ot,[Bt]:404},[Tt],[0]];kt.registerError(cW,J1);var fW=[-3,at,rq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(fW,jb);var dW=[-3,at,iq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(dW,Eb);var hW=[-3,at,sq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(hW,Lb);var pW=[-3,at,aq,{[Ft]:Ot,[Bt]:403},[Tt],[0]];kt.registerError(pW,Vb);var gW=[-3,at,oq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(gW,ib);var mW=[-3,at,lq,{[Ft]:Ot,[Bt]:429},[Tt],[0]];kt.registerError(mW,K1);var vW=[-3,at,dq,{[Ft]:Ot,[Bt]:401},[Tt],[0]];kt.registerError(vW,qb);var yW=[-3,at,mq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(yW,ab);var AW=[-3,at,gq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(AW,Gb);var bW=[-3,at,bq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(bW,Ab);var wW=[-3,at,xq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(wW,Wb);var CW=[-3,at,Sq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(CW,db);var xW=[-3,at,pq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(xW,Z1);var SW=[-3,at,vq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(SW,sb);var EW=[-3,at,hq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(EW,hb);var kW=[-3,at,yq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(kW,bb);var FW=[-3,at,Aq,{[Ft]:Ot,[Bt]:404},[Tt],[0]];kt.registerError(FW,rb);var TW=[-3,at,wq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(TW,wb);var IW=[-3,at,Cq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(IW,zb);var DW=[-3,at,Fq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(DW,Tb);var PW=[-3,at,Eq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(PW,Ib);var RW=[-3,at,kq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(RW,Qb);var OW=[-3,at,Tq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(OW,Db);var BW=[-3,at,Iq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(BW,Pb);var MW=[-3,at,Dq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(MW,Rb);var _W=[-3,at,Pq,{[Ft]:Ot,[Bt]:400},[Tt],[0]];kt.registerError(_W,Ob);const NW=[TD,kt];var ID=[0,at,c$,8,0],lm=[0,at,nq,8,0],Kv=[0,at,uq,8,0],DD=[3,at,i$,0,[r$],[0]],PD=[3,at,o$,0,[l$,w$,cq,J$,U$,$$],[[()=>Kv,0],1,0,[()=>Kv,0],[()=>Kv,0],()=>VW]],LW=[3,at,F$,0,[n$,CD,a$,xD,bD,ED,om],[0,[()=>ID,0],[()=>jW,0],128,()=>DD,[()=>RD,0],[()=>lm,0]],2],UW=[3,at,T$,0,[Xb,om,SD,wD,ZG],[0,[()=>lm,0],128,[()=>PD,0],64]],VW=[3,at,q$,0,[m$,g$],[0,0]],zW=[3,at,Z$,0,[CD,Xb,om,h$,bD,ED,xD],[[()=>ID,0],0,[()=>lm,0],[()=>GW,0],()=>DD,[()=>RD,0],128],2],HW=[3,at,eq,0,[Xb,om,SD,wD],[0,[()=>lm,0],128,[()=>PD,0]]],RD=[3,at,fq,8,[k$,b$],[0,0]],jW=[2,at,s$,8,0,0],GW=[2,at,p$,8,0,0],$W=[9,at,I$,0,()=>LW,()=>UW],qW=[9,at,K$,0,()=>zW,()=>HW];const WW=r=>({apiVersion:"2016-04-18",base64Decoder:r?.base64Decoder??nm,base64Encoder:r?.base64Encoder??kg,disableHostPrefix:r?.disableHostPrefix??!1,endpointProvider:r?.endpointProvider??KG,extensions:r?.extensions??[],httpAuthSchemeProvider:r?.httpAuthSchemeProvider??iG,httpAuthSchemes:r?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new kj},{schemeId:"smithy.api#noAuth",identityProvider:e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new Rz}],logger:r?.logger??new iD,protocol:r?.protocol??HG,protocolSettings:r?.protocolSettings??{defaultNamespace:"com.amazonaws.cognitoidentityprovider",errorTypeRegistries:NW,xmlNamespace:"http://cognito-idp.amazonaws.com/doc/2016-04-18/",version:"2016-04-18",serviceTarget:"AWSCognitoIdentityProviderService"},serviceId:r?.serviceId??"Cognito Identity Provider",urlParser:r?.urlParser??dc,utf8Decoder:r?.utf8Decoder??Dl,utf8Encoder:r?.utf8Encoder??im}),QW=r=>{const e=IG(r),t=()=>e().then(uj),n=WW(r);return{...n,...r,runtime:"browser",defaultsMode:e,bodyLengthChecker:r?.bodyLengthChecker??FG,credentialDefaultProvider:r?.credentialDefaultProvider??(i=>()=>Promise.reject(new Error("Credential is missing"))),defaultUserAgentProvider:r?.defaultUserAgentProvider??EG({serviceId:n.serviceId,clientVersion:lG.version}),maxAttempts:r?.maxAttempts??cd,region:r?.region??kG("Region is missing"),requestHandler:_1.create(r?.requestHandler??t),retryMode:r?.retryMode??(async()=>(await t()).retryMode||ZH),sha256:r?.sha256??SG,streamCollector:r?.streamCollector??jV,useDualstackEndpoint:r?.useDualstackEndpoint??(()=>Promise.resolve(RH)),useFipsEndpoint:r?.useFipsEndpoint??(()=>Promise.resolve(OH))}},YW=r=>({setRegion(e){r.region=e},region(){return r.region}}),XW=r=>({region:r.region()}),JW=r=>{const e=r.httpAuthSchemes;let t=r.httpAuthSchemeProvider,n=r.credentials;return{setHttpAuthScheme(i){const a=e.findIndex(s=>s.schemeId===i.schemeId);a===-1?e.push(i):e.splice(a,1,i)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(i){t=i},httpAuthSchemeProvider(){return t},setCredentials(i){n=i},credentials(){return n}}},KW=r=>({httpAuthSchemes:r.httpAuthSchemes(),httpAuthSchemeProvider:r.httpAuthSchemeProvider(),credentials:r.credentials()}),ZW=(r,e)=>{const t=Object.assign(YW(r),pj(r),mV(r),JW(r));return e.forEach(n=>n.configure(t)),Object.assign(r,XW(t),gj(t),vV(t),KW(t))};class eQ extends oj{config;constructor(...[e]){const t=QW(e||{});super(t),this.initConfig=t;const n=sG(t),i=Uz(n),a=sj(i),s=_H(a),o=s,l=KH(o),u=aG(l),c=ZW(u,e?.extensions||[]);this.config=c,this.middlewareStack.use(ez(this.config)),this.middlewareStack.use(PH(this.config)),this.middlewareStack.use(xj(this.config)),this.middlewareStack.use(UH(this.config)),this.middlewareStack.use(wV(this.config)),this.middlewareStack.use(SV(this.config)),this.middlewareStack.use(FV(this.config)),this.middlewareStack.use(RV(this.config,{httpAuthSchemeParametersProvider:rG,identityProviderConfigProvider:async h=>new Pz({"aws.auth#sigv4":h.credentials})})),this.middlewareStack.use(NV(this.config))}destroy(){super.destroy()}}class p2 extends H1.classBuilder().ep(dD).m(function(e,t,n,i){return[tD(n,e.getEndpointParameterInstructions())]}).s("AWSCognitoIdentityProviderService","InitiateAuth",{}).n("CognitoIdentityProviderClient","InitiateAuthCommand").sc($W).build(){}class tQ extends H1.classBuilder().ep(dD).m(function(e,t,n,i){return[tD(n,e.getEndpointParameterInstructions())]}).s("AWSCognitoIdentityProviderService","RespondToAuthChallenge",{}).n("CognitoIdentityProviderClient","RespondToAuthChallengeCommand").sc(qW).build(){}class rQ{init(e,t,n){this.cognitoClient=new eQ({region:t}),this.spiffRegion=e,this.userPoolClientId=n}async generateCode(e){const t=await this.cognitoClient?.send(new p2({AuthFlow:"CUSTOM_AUTH",ClientId:this.userPoolClientId,AuthParameters:{USERNAME:e}}));t?.ChallengeName==="CUSTOM_CHALLENGE"&&(this.challengeSession=t.Session)}async verifyCode(e,t,n){const i=await this.cognitoClient?.send(new tQ({ClientId:this.userPoolClientId,ChallengeName:"CUSTOM_CHALLENGE",Session:this.challengeSession,ChallengeResponses:{USERNAME:e,ANSWER:t},ClientMetadata:{partnerId:n,environment:(this.spiffRegion||"").toLowerCase()}}));return i?.ChallengeName==="CUSTOM_CHALLENGE"&&(this.challengeSession=i.Session),i}async refreshTokens(){const e=localStorage.getItem("cognito-tokens");if(!e)throw new Error("Failed to find existing tokens.");const t=JSON.parse(e);return await this.cognitoClient?.send(new p2({AuthFlow:"REFRESH_TOKEN_AUTH",ClientId:this.userPoolClientId,AuthParameters:{REFRESH_TOKEN:t.RefreshToken||""}}))}}const Lf=new rQ;var nQ={defaultAmount:0,defaultCurrency:"USD",defaultPrecision:2},iQ={globalLocale:"en-US",globalFormat:"$0,0.00",globalRoundingMode:"HALF_EVEN",globalFormatRoundingMode:"HALF_AWAY_FROM_ZERO",globalExchangeRatesApi:{endpoint:void 0,headers:void 0,propertyPath:void 0}};function dd(r){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?dd=function(e){return typeof e}:dd=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},dd(r)}function g2(r){return aQ(r)||sQ(r)||oQ(r)||lQ()}function aQ(r){if(Array.isArray(r))return r}function sQ(r){if(typeof Symbol<"u"&&Symbol.iterator in Object(r))return Array.from(r)}function oQ(r,e){if(r){if(typeof r=="string")return m2(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return m2(r,e)}}function m2(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}function lQ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2816
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var uQ={normalizePrecision:function(e){var t=e.reduce(function(n,i){return Math.max(n.getPrecision(),i.getPrecision())});return e.map(function(n){return n.getPrecision()!==t?n.convertPrecision(t):n})},minimum:function(e){var t=g2(e),n=t[0],i=t.slice(1),a=n;return i.forEach(function(s){a=a.lessThan(s)?a:s}),a},maximum:function(e){var t=g2(e),n=t[0],i=t.slice(1),a=n;return i.forEach(function(s){a=a.greaterThan(s)?a:s}),a}};function OD(r){return!isNaN(parseInt(r))&&isFinite(r)}function cQ(r){return OD(r)&&r<=100&&r>=0}function fQ(r){return r.length>0&&r.every(function(e){return e>=0})&&r.some(function(e){return e>0})}function v2(r){return r%2===0}function y2(r){return OD(r)&&!Number.isInteger(r)}function dQ(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,e=r.toString();if(e.indexOf("e-")>0)return parseInt(e.split("e-")[1]);var t=e.split(".")[1];return t?t.length:0}function Uf(r){return Math.abs(r)%1===.5}function hQ(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return new Promise(function(t,n){var i=Object.assign(new XMLHttpRequest,{onreadystatechange:function(){i.readyState===4&&(i.status>=200&&i.status<400?t(JSON.parse(i.responseText)):n(new Error(i.statusText)))},onerror:function(){n(new Error("Network error"))}});i.open("GET",r,!0),pQ(i,e.headers),i.send()})}function pQ(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};for(var t in e)r.setRequestHeader(t,e[t]);return r}function Zf(r){return typeof r>"u"}function BD(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:".",t={};return Object.entries(r).forEach(function(n){if(dd(n[1])==="object"){var i=BD(n[1]);Object.entries(i).forEach(function(a){t[n[0]+e+a[0]]=a[1]})}else t[n[0]]=n[1]}),t}function gQ(r){return!!r&&(dd(r)==="object"||typeof r=="function")&&typeof r.then=="function"}function MD(){var r=function(n,i){var a=function(l){return Math.pow(10,dQ(l))},s=Math.max(a(n),a(i));return Math.round(n*s)*Math.round(i*s)/(s*s)},e={HALF_ODD:function(n){var i=Math.round(n);return Uf(n)&&v2(i)?i-1:i},HALF_EVEN:function(n){var i=Math.round(n);return Uf(n)?v2(i)?i:i-1:i},HALF_UP:function(n){return Math.round(n)},HALF_DOWN:function(n){return Uf(n)?Math.floor(n):Math.round(n)},HALF_TOWARDS_ZERO:function(n){return Uf(n)?Math.sign(n)*Math.floor(Math.abs(n)):Math.round(n)},HALF_AWAY_FROM_ZERO:function(n){return Uf(n)?Math.sign(n)*Math.ceil(Math.abs(n)):Math.round(n)},DOWN:function(n){return Math.floor(n)}};return{add:function(n,i){return n+i},subtract:function(n,i){return n-i},multiply:function(n,i){return y2(n)||y2(i)?r(n,i):n*i},divide:function(n,i){return n/i},modulo:function(n,i){return n%i},round:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"HALF_EVEN";return e[i](n)}}}var mQ=MD();function vQ(r){var e=/^(?:(\$|USD)?0(?:(,)0)?(\.)?(0+)?|0(?:(,)0)?(\.)?(0+)?\s?(dollar)?)$/gm.exec(r);return{getMatches:function(){return e!==null?e.slice(1).filter(function(n){return!Zf(n)}):[]},getMinimumFractionDigits:function(){var n=function(a){return a==="."};return Zf(this.getMatches().find(n))?0:this.getMatches()[mQ.add(this.getMatches().findIndex(n),1)].split("").length},getCurrencyDisplay:function(){var n={USD:"code",dollar:"name",$:"symbol"};return n[this.getMatches().find(function(i){return i==="USD"||i==="dollar"||i==="$"})]},getStyle:function(){return Zf(this.getCurrencyDisplay(this.getMatches()))?"decimal":"currency"},getUseGrouping:function(){return!Zf(this.getMatches().find(function(n){return n===","}))}}}function yQ(r){var e=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;for(var s in a)i=i.replace("{{".concat(s,"}}"),a[s]);return i},t=function(i,a){return hQ(e(r.endpoint,{from:i,to:a}),{headers:r.headers})};return{getExchangeRate:function(i,a){return(gQ(r.endpoint)?r.endpoint:t(i,a)).then(function(s){return BD(s)[e(r.propertyPath,{from:i,to:a})]})}}}function Vd(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Error;if(!r)throw new t(e)}function AQ(r){Vd(cQ(r),"You must provide a numeric value between 0 and 100.",RangeError)}function bQ(r){Vd(fQ(r),"You must provide a non-empty array of numeric values greater than 0.",TypeError)}function Zv(r){Vd(Number.isInteger(r),"You must provide an integer.",TypeError)}var kn=MD(),wQ=function r(e){var t=Object.assign({},{amount:r.defaultAmount,currency:r.defaultCurrency,precision:r.defaultPrecision},e),n=t.amount,i=t.currency,a=t.precision;Zv(n),Zv(a);var s=r.globalLocale,o=r.globalFormat,l=r.globalRoundingMode,u=r.globalFormatRoundingMode,c=Object.assign({},r.globalExchangeRatesApi),h=function(g){var v=Object.assign({},Object.assign({},{amount:n,currency:i,precision:a},g),Object.assign({},{locale:this.locale},g));return Object.assign(r({amount:v.amount,currency:v.currency,precision:v.precision}),{locale:v.locale})},f=function(g){Vd(this.hasSameCurrency(g),"You must provide a Dinero instance with the same currency.",TypeError)};return{getAmount:function(){return n},getCurrency:function(){return i},getLocale:function(){return this.locale||s},setLocale:function(g){return h.call(this,{locale:g})},getPrecision:function(){return a},convertPrecision:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u;Zv(g);var y=this.getPrecision(),A=g>y,C=A?kn.multiply:kn.divide,k=A?[g,y]:[y,g],T=Math.pow(10,kn.subtract.apply(kn,k));return h.call(this,{amount:kn.round(C(this.getAmount(),T),v),precision:g})},add:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return h.call(this,{amount:kn.add(v[0].getAmount(),v[1].getAmount()),precision:v[0].getPrecision()})},subtract:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return h.call(this,{amount:kn.subtract(v[0].getAmount(),v[1].getAmount()),precision:v[0].getPrecision()})},multiply:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return h.call(this,{amount:kn.round(kn.multiply(this.getAmount(),g),v)})},divide:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return h.call(this,{amount:kn.round(kn.divide(this.getAmount(),g),v)})},percentage:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return AQ(g),this.multiply(kn.divide(g,100),v)},allocate:function(g){var v=this;bQ(g);for(var y=g.reduce(function(T,S){return kn.add(T,S)}),A=this.getAmount(),C=g.map(function(T){var S=Math.floor(kn.divide(kn.multiply(v.getAmount(),T),y));return A=kn.subtract(A,S),h.call(v,{amount:S})}),k=0;A>0;)g[k]>0&&(C[k]=C[k].add(h.call(this,{amount:1})),A=kn.subtract(A,1)),k+=1;return C},convert:function(g){var v=this,y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},A=y.endpoint,C=A===void 0?c.endpoint:A,k=y.propertyPath,T=k===void 0?c.propertyPath||"rates.{{to}}":k,S=y.headers,R=S===void 0?c.headers:S,B=y.roundingMode,G=B===void 0?l:B,$=Object.assign({},{endpoint:C,propertyPath:T,headers:R,roundingMode:G});return yQ($).getExchangeRate(this.getCurrency(),g).then(function(Y){return Vd(!Zf(Y),'No rate was found for the destination currency "'.concat(g,'".'),TypeError),h.call(v,{amount:kn.round(kn.multiply(v.getAmount(),parseFloat(Y)),$.roundingMode),currency:g})})},equalsTo:function(g){return this.hasSameAmount(g)&&this.hasSameCurrency(g)},lessThan:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()<v[1].getAmount()},lessThanOrEqual:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()<=v[1].getAmount()},greaterThan:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()>v[1].getAmount()},greaterThanOrEqual:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()>=v[1].getAmount()},isZero:function(){return this.getAmount()===0},isPositive:function(){return this.getAmount()>=0},isNegative:function(){return this.getAmount()<0},hasSubUnits:function(){return kn.modulo(this.getAmount(),Math.pow(10,a))!==0},hasCents:function(){return kn.modulo(this.getAmount(),Math.pow(10,a))!==0},hasSameCurrency:function(g){return this.getCurrency()===g.getCurrency()},hasSameAmount:function(g){var v=r.normalizePrecision([this,g]);return v[0].getAmount()===v[1].getAmount()},toFormat:function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:o,v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u,y=vQ(g);return this.toRoundedUnit(y.getMinimumFractionDigits(),v).toLocaleString(this.getLocale(),{currencyDisplay:y.getCurrencyDisplay(),useGrouping:y.getUseGrouping(),minimumFractionDigits:y.getMinimumFractionDigits(),style:y.getStyle(),currency:this.getCurrency()})},toUnit:function(){return kn.divide(this.getAmount(),Math.pow(10,a))},toRoundedUnit:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u,y=Math.pow(10,g);return kn.divide(kn.round(kn.multiply(this.toUnit(),y),v),y)},toObject:function(){return{amount:n,currency:i,precision:a}},toJSON:function(){return this.toObject()}}},CQ=Object.assign(wQ,nQ,iQ,uQ),Za={},ey,A2;function xQ(){if(A2)return ey;A2=1;function r(t){return t}function e(t,a,s){for(var a=a||r,s=s||t,o=0,l=t.length;o<l;o+=1)if(a.call(s,t[o],o))return t[o]}return ey=e,ey}var ty={exports:{}},b2;function SQ(){if(b2)return ty.exports;b2=1;var r=ty.exports=function(e,t){if(typeof e=="function"||t)return r.by(e,t);for(var n={object:[],function:[],string:{},number:{},boolean:{},undefined:{}},i=[],a=0;a<e.length;a++){var s=e[a],o=s==="__proto__"?n.objects:n[typeof s]||n.objects;Array.isArray(o)?o.indexOf(s)<0&&(o.push(s),i.push(s)):Object.hasOwnProperty.call(o,s)||(o[s]=!0,i.push(s))}return i};return r.by=function(e,t){if(typeof e=="function"){var n=t;t=e,e=n}for(var i=[],a=0;a<e.length;a++){for(var s=e[a],o=!1,l=0;l<i.length;l++){var u=i[l];if(t.call(i,s,u)){o=!0;break}}o||i.push(s)}return i},ty.exports}var ry,w2;function EQ(){return w2||(w2=1,ry=[{code:"AED",number:"784",digits:2,currency:"UAE Dirham",countries:["United Arab Emirates (The)"]},{code:"AFN",number:"971",digits:2,currency:"Afghani",countries:["Afghanistan"]},{code:"ALL",number:"008",digits:2,currency:"Lek",countries:["Albania"]},{code:"AMD",number:"051",digits:2,currency:"Armenian Dram",countries:["Armenia"]},{code:"ANG",number:"532",digits:2,currency:"Netherlands Antillean Guilder",countries:["Curaçao","Sint Maarten (Dutch Part)"]},{code:"AOA",number:"973",digits:2,currency:"Kwanza",countries:["Angola"]},{code:"ARS",number:"032",digits:2,currency:"Argentine Peso",countries:["Argentina"]},{code:"AUD",number:"036",digits:2,currency:"Australian Dollar",countries:["Australia","Christmas Island","Cocos (Keeling) Islands (The)","Heard Island and Mcdonald Islands","Kiribati","Nauru","Norfolk Island","Tuvalu"]},{code:"AWG",number:"533",digits:2,currency:"Aruban Florin",countries:["Aruba"]},{code:"AZN",number:"944",digits:2,currency:"Azerbaijan Manat",countries:["Azerbaijan"]},{code:"BAM",number:"977",digits:2,currency:"Convertible Mark",countries:["Bosnia and Herzegovina"]},{code:"BBD",number:"052",digits:2,currency:"Barbados Dollar",countries:["Barbados"]},{code:"BDT",number:"050",digits:2,currency:"Taka",countries:["Bangladesh"]},{code:"BGN",number:"975",digits:2,currency:"Bulgarian Lev",countries:["Bulgaria"]},{code:"BHD",number:"048",digits:3,currency:"Bahraini Dinar",countries:["Bahrain"]},{code:"BIF",number:"108",digits:0,currency:"Burundi Franc",countries:["Burundi"]},{code:"BMD",number:"060",digits:2,currency:"Bermudian Dollar",countries:["Bermuda"]},{code:"BND",number:"096",digits:2,currency:"Brunei Dollar",countries:["Brunei Darussalam"]},{code:"BOB",number:"068",digits:2,currency:"Boliviano",countries:["Bolivia (Plurinational State Of)"]},{code:"BOV",number:"984",digits:2,currency:"Mvdol",countries:["Bolivia (Plurinational State Of)"]},{code:"BRL",number:"986",digits:2,currency:"Brazilian Real",countries:["Brazil"]},{code:"BSD",number:"044",digits:2,currency:"Bahamian Dollar",countries:["Bahamas (The)"]},{code:"BTN",number:"064",digits:2,currency:"Ngultrum",countries:["Bhutan"]},{code:"BWP",number:"072",digits:2,currency:"Pula",countries:["Botswana"]},{code:"BYN",number:"933",digits:2,currency:"Belarusian Ruble",countries:["Belarus"]},{code:"BZD",number:"084",digits:2,currency:"Belize Dollar",countries:["Belize"]},{code:"CAD",number:"124",digits:2,currency:"Canadian Dollar",countries:["Canada"]},{code:"CDF",number:"976",digits:2,currency:"Congolese Franc",countries:["Congo (The Democratic Republic of The)"]},{code:"CHE",number:"947",digits:2,currency:"WIR Euro",countries:["Switzerland"]},{code:"CHF",number:"756",digits:2,currency:"Swiss Franc",countries:["Liechtenstein","Switzerland"]},{code:"CHW",number:"948",digits:2,currency:"WIR Franc",countries:["Switzerland"]},{code:"CLF",number:"990",digits:4,currency:"Unidad de Fomento",countries:["Chile"]},{code:"CLP",number:"152",digits:0,currency:"Chilean Peso",countries:["Chile"]},{code:"CNY",number:"156",digits:2,currency:"Yuan Renminbi",countries:["China"]},{code:"COP",number:"170",digits:2,currency:"Colombian Peso",countries:["Colombia"]},{code:"COU",number:"970",digits:2,currency:"Unidad de Valor Real",countries:["Colombia"]},{code:"CRC",number:"188",digits:2,currency:"Costa Rican Colon",countries:["Costa Rica"]},{code:"CUC",number:"931",digits:2,currency:"Peso Convertible",countries:["Cuba"]},{code:"CUP",number:"192",digits:2,currency:"Cuban Peso",countries:["Cuba"]},{code:"CVE",number:"132",digits:2,currency:"Cabo Verde Escudo",countries:["Cabo Verde"]},{code:"CZK",number:"203",digits:2,currency:"Czech Koruna",countries:["Czechia"]},{code:"DJF",number:"262",digits:0,currency:"Djibouti Franc",countries:["Djibouti"]},{code:"DKK",number:"208",digits:2,currency:"Danish Krone",countries:["Denmark","Faroe Islands (The)","Greenland"]},{code:"DOP",number:"214",digits:2,currency:"Dominican Peso",countries:["Dominican Republic (The)"]},{code:"DZD",number:"012",digits:2,currency:"Algerian Dinar",countries:["Algeria"]},{code:"EGP",number:"818",digits:2,currency:"Egyptian Pound",countries:["Egypt"]},{code:"ERN",number:"232",digits:2,currency:"Nakfa",countries:["Eritrea"]},{code:"ETB",number:"230",digits:2,currency:"Ethiopian Birr",countries:["Ethiopia"]},{code:"EUR",number:"978",digits:2,currency:"Euro",countries:["Åland Islands","Andorra","Austria","Belgium","Croatia","Cyprus","Estonia","European Union","Finland","France","French Guiana","French Southern Territories (The)","Germany","Greece","Guadeloupe","Holy See (The)","Ireland","Italy","Latvia","Lithuania","Luxembourg","Malta","Martinique","Mayotte","Monaco","Montenegro","Netherlands (The)","Portugal","Réunion","Saint Barthélemy","Saint Martin (French Part)","Saint Pierre and Miquelon","San Marino","Slovakia","Slovenia","Spain"]},{code:"FJD",number:"242",digits:2,currency:"Fiji Dollar",countries:["Fiji"]},{code:"FKP",number:"238",digits:2,currency:"Falkland Islands Pound",countries:["Falkland Islands (The) [Malvinas]"]},{code:"GBP",number:"826",digits:2,currency:"Pound Sterling",countries:["Guernsey","Isle of Man","Jersey","United Kingdom of Great Britain and Northern Ireland (The)"]},{code:"GEL",number:"981",digits:2,currency:"Lari",countries:["Georgia"]},{code:"GHS",number:"936",digits:2,currency:"Ghana Cedi",countries:["Ghana"]},{code:"GIP",number:"292",digits:2,currency:"Gibraltar Pound",countries:["Gibraltar"]},{code:"GMD",number:"270",digits:2,currency:"Dalasi",countries:["Gambia (The)"]},{code:"GNF",number:"324",digits:0,currency:"Guinean Franc",countries:["Guinea"]},{code:"GTQ",number:"320",digits:2,currency:"Quetzal",countries:["Guatemala"]},{code:"GYD",number:"328",digits:2,currency:"Guyana Dollar",countries:["Guyana"]},{code:"HKD",number:"344",digits:2,currency:"Hong Kong Dollar",countries:["Hong Kong"]},{code:"HNL",number:"340",digits:2,currency:"Lempira",countries:["Honduras"]},{code:"HTG",number:"332",digits:2,currency:"Gourde",countries:["Haiti"]},{code:"HUF",number:"348",digits:2,currency:"Forint",countries:["Hungary"]},{code:"IDR",number:"360",digits:2,currency:"Rupiah",countries:["Indonesia"]},{code:"ILS",number:"376",digits:2,currency:"New Israeli Sheqel",countries:["Israel"]},{code:"INR",number:"356",digits:2,currency:"Indian Rupee",countries:["Bhutan","India"]},{code:"IQD",number:"368",digits:3,currency:"Iraqi Dinar",countries:["Iraq"]},{code:"IRR",number:"364",digits:2,currency:"Iranian Rial",countries:["Iran (Islamic Republic Of)"]},{code:"ISK",number:"352",digits:0,currency:"Iceland Krona",countries:["Iceland"]},{code:"JMD",number:"388",digits:2,currency:"Jamaican Dollar",countries:["Jamaica"]},{code:"JOD",number:"400",digits:3,currency:"Jordanian Dinar",countries:["Jordan"]},{code:"JPY",number:"392",digits:0,currency:"Yen",countries:["Japan"]},{code:"KES",number:"404",digits:2,currency:"Kenyan Shilling",countries:["Kenya"]},{code:"KGS",number:"417",digits:2,currency:"Som",countries:["Kyrgyzstan"]},{code:"KHR",number:"116",digits:2,currency:"Riel",countries:["Cambodia"]},{code:"KMF",number:"174",digits:0,currency:"Comorian Franc ",countries:["Comoros (The)"]},{code:"KPW",number:"408",digits:2,currency:"North Korean Won",countries:["Korea (The Democratic People’s Republic Of)"]},{code:"KRW",number:"410",digits:0,currency:"Won",countries:["Korea (The Republic Of)"]},{code:"KWD",number:"414",digits:3,currency:"Kuwaiti Dinar",countries:["Kuwait"]},{code:"KYD",number:"136",digits:2,currency:"Cayman Islands Dollar",countries:["Cayman Islands (The)"]},{code:"KZT",number:"398",digits:2,currency:"Tenge",countries:["Kazakhstan"]},{code:"LAK",number:"418",digits:2,currency:"Lao Kip",countries:["Lao People’s Democratic Republic (The)"]},{code:"LBP",number:"422",digits:2,currency:"Lebanese Pound",countries:["Lebanon"]},{code:"LKR",number:"144",digits:2,currency:"Sri Lanka Rupee",countries:["Sri Lanka"]},{code:"LRD",number:"430",digits:2,currency:"Liberian Dollar",countries:["Liberia"]},{code:"LSL",number:"426",digits:2,currency:"Loti",countries:["Lesotho"]},{code:"LYD",number:"434",digits:3,currency:"Libyan Dinar",countries:["Libya"]},{code:"MAD",number:"504",digits:2,currency:"Moroccan Dirham",countries:["Morocco","Western Sahara"]},{code:"MDL",number:"498",digits:2,currency:"Moldovan Leu",countries:["Moldova (The Republic Of)"]},{code:"MGA",number:"969",digits:2,currency:"Malagasy Ariary",countries:["Madagascar"]},{code:"MKD",number:"807",digits:2,currency:"Denar",countries:["North Macedonia"]},{code:"MMK",number:"104",digits:2,currency:"Kyat",countries:["Myanmar"]},{code:"MNT",number:"496",digits:2,currency:"Tugrik",countries:["Mongolia"]},{code:"MOP",number:"446",digits:2,currency:"Pataca",countries:["Macao"]},{code:"MRU",number:"929",digits:2,currency:"Ouguiya",countries:["Mauritania"]},{code:"MUR",number:"480",digits:2,currency:"Mauritius Rupee",countries:["Mauritius"]},{code:"MVR",number:"462",digits:2,currency:"Rufiyaa",countries:["Maldives"]},{code:"MWK",number:"454",digits:2,currency:"Malawi Kwacha",countries:["Malawi"]},{code:"MXN",number:"484",digits:2,currency:"Mexican Peso",countries:["Mexico"]},{code:"MXV",number:"979",digits:2,currency:"Mexican Unidad de Inversion (UDI)",countries:["Mexico"]},{code:"MYR",number:"458",digits:2,currency:"Malaysian Ringgit",countries:["Malaysia"]},{code:"MZN",number:"943",digits:2,currency:"Mozambique Metical",countries:["Mozambique"]},{code:"NAD",number:"516",digits:2,currency:"Namibia Dollar",countries:["Namibia"]},{code:"NGN",number:"566",digits:2,currency:"Naira",countries:["Nigeria"]},{code:"NIO",number:"558",digits:2,currency:"Cordoba Oro",countries:["Nicaragua"]},{code:"NOK",number:"578",digits:2,currency:"Norwegian Krone",countries:["Bouvet Island","Norway","Svalbard and Jan Mayen"]},{code:"NPR",number:"524",digits:2,currency:"Nepalese Rupee",countries:["Nepal"]},{code:"NZD",number:"554",digits:2,currency:"New Zealand Dollar",countries:["Cook Islands (The)","New Zealand","Niue","Pitcairn","Tokelau"]},{code:"OMR",number:"512",digits:3,currency:"Rial Omani",countries:["Oman"]},{code:"PAB",number:"590",digits:2,currency:"Balboa",countries:["Panama"]},{code:"PEN",number:"604",digits:2,currency:"Sol",countries:["Peru"]},{code:"PGK",number:"598",digits:2,currency:"Kina",countries:["Papua New Guinea"]},{code:"PHP",number:"608",digits:2,currency:"Philippine Peso",countries:["Philippines (The)"]},{code:"PKR",number:"586",digits:2,currency:"Pakistan Rupee",countries:["Pakistan"]},{code:"PLN",number:"985",digits:2,currency:"Zloty",countries:["Poland"]},{code:"PYG",number:"600",digits:0,currency:"Guarani",countries:["Paraguay"]},{code:"QAR",number:"634",digits:2,currency:"Qatari Rial",countries:["Qatar"]},{code:"RON",number:"946",digits:2,currency:"Romanian Leu",countries:["Romania"]},{code:"RSD",number:"941",digits:2,currency:"Serbian Dinar",countries:["Serbia"]},{code:"RUB",number:"643",digits:2,currency:"Russian Ruble",countries:["Russian Federation (The)"]},{code:"RWF",number:"646",digits:0,currency:"Rwanda Franc",countries:["Rwanda"]},{code:"SAR",number:"682",digits:2,currency:"Saudi Riyal",countries:["Saudi Arabia"]},{code:"SBD",number:"090",digits:2,currency:"Solomon Islands Dollar",countries:["Solomon Islands"]},{code:"SCR",number:"690",digits:2,currency:"Seychelles Rupee",countries:["Seychelles"]},{code:"SDG",number:"938",digits:2,currency:"Sudanese Pound",countries:["Sudan (The)"]},{code:"SEK",number:"752",digits:2,currency:"Swedish Krona",countries:["Sweden"]},{code:"SGD",number:"702",digits:2,currency:"Singapore Dollar",countries:["Singapore"]},{code:"SHP",number:"654",digits:2,currency:"Saint Helena Pound",countries:["Saint Helena, Ascension and Tristan Da Cunha"]},{code:"SLE",number:"925",digits:2,currency:"Leone",countries:["Sierra Leone"]},{code:"SOS",number:"706",digits:2,currency:"Somali Shilling",countries:["Somalia"]},{code:"SRD",number:"968",digits:2,currency:"Surinam Dollar",countries:["Suriname"]},{code:"SSP",number:"728",digits:2,currency:"South Sudanese Pound",countries:["South Sudan"]},{code:"STN",number:"930",digits:2,currency:"Dobra",countries:["Sao Tome and Principe"]},{code:"SVC",number:"222",digits:2,currency:"El Salvador Colon",countries:["El Salvador"]},{code:"SYP",number:"760",digits:2,currency:"Syrian Pound",countries:["Syrian Arab Republic"]},{code:"SZL",number:"748",digits:2,currency:"Lilangeni",countries:["Eswatini"]},{code:"THB",number:"764",digits:2,currency:"Baht",countries:["Thailand"]},{code:"TJS",number:"972",digits:2,currency:"Somoni",countries:["Tajikistan"]},{code:"TMT",number:"934",digits:2,currency:"Turkmenistan New Manat",countries:["Turkmenistan"]},{code:"TND",number:"788",digits:3,currency:"Tunisian Dinar",countries:["Tunisia"]},{code:"TOP",number:"776",digits:2,currency:"Pa’anga",countries:["Tonga"]},{code:"TRY",number:"949",digits:2,currency:"Turkish Lira",countries:["Türki̇ye"]},{code:"TTD",number:"780",digits:2,currency:"Trinidad and Tobago Dollar",countries:["Trinidad and Tobago"]},{code:"TWD",number:"901",digits:2,currency:"New Taiwan Dollar",countries:["Taiwan (Province of China)"]},{code:"TZS",number:"834",digits:2,currency:"Tanzanian Shilling",countries:["Tanzania, United Republic Of"]},{code:"UAH",number:"980",digits:2,currency:"Hryvnia",countries:["Ukraine"]},{code:"UGX",number:"800",digits:0,currency:"Uganda Shilling",countries:["Uganda"]},{code:"USD",number:"840",digits:2,currency:"US Dollar",countries:["American Samoa","Bonaire, Sint Eustatius and Saba","British Indian Ocean Territory (The)","Ecuador","El Salvador","Guam","Haiti","Marshall Islands (The)","Micronesia (Federated States Of)","Northern Mariana Islands (The)","Palau","Panama","Puerto Rico","Timor-Leste","Turks and Caicos Islands (The)","United States Minor Outlying Islands (The)","United States of America (The)","Virgin Islands (British)","Virgin Islands (u.s.)"]},{code:"USN",number:"997",digits:2,currency:"US Dollar (Next day)",countries:["United States of America (The)"]},{code:"UYI",number:"940",digits:0,currency:"Uruguay Peso en Unidades Indexadas (UI)",countries:["Uruguay"]},{code:"UYU",number:"858",digits:2,currency:"Peso Uruguayo",countries:["Uruguay"]},{code:"UYW",number:"927",digits:4,currency:"Unidad Previsional",countries:["Uruguay"]},{code:"UZS",number:"860",digits:2,currency:"Uzbekistan Sum",countries:["Uzbekistan"]},{code:"VED",number:"926",digits:2,currency:"Bolívar Soberano",countries:["Venezuela (Bolivarian Republic Of)"]},{code:"VES",number:"928",digits:2,currency:"Bolívar Soberano",countries:["Venezuela (Bolivarian Republic Of)"]},{code:"VND",number:"704",digits:0,currency:"Dong",countries:["Viet Nam"]},{code:"VUV",number:"548",digits:0,currency:"Vatu",countries:["Vanuatu"]},{code:"WST",number:"882",digits:2,currency:"Tala",countries:["Samoa"]},{code:"XAF",number:"950",digits:0,currency:"CFA Franc BEAC",countries:["Cameroon","Central African Republic (The)","Chad","Congo (The)","Equatorial Guinea","Gabon"]},{code:"XAG",number:"961",digits:0,currency:"Silver",countries:["Zz11_silver"]},{code:"XAU",number:"959",digits:0,currency:"Gold",countries:["Zz08_gold"]},{code:"XBA",number:"955",digits:0,currency:"Bond Markets Unit European Composite Unit (EURCO)",countries:["Zz01_bond Markets Unit European_eurco"]},{code:"XBB",number:"956",digits:0,currency:"Bond Markets Unit European Monetary Unit (E.M.U.-6)",countries:["Zz02_bond Markets Unit European_emu-6"]},{code:"XBC",number:"957",digits:0,currency:"Bond Markets Unit European Unit of Account 9 (E.U.A.-9)",countries:["Zz03_bond Markets Unit European_eua-9"]},{code:"XBD",number:"958",digits:0,currency:"Bond Markets Unit European Unit of Account 17 (E.U.A.-17)",countries:["Zz04_bond Markets Unit European_eua-17"]},{code:"XCD",number:"951",digits:2,currency:"East Caribbean Dollar",countries:["Anguilla","Antigua and Barbuda","Dominica","Grenada","Montserrat","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines"]},{code:"XDR",number:"960",digits:0,currency:"SDR (Special Drawing Right)",countries:["International Monetary Fund (Imf) "]},{code:"XOF",number:"952",digits:0,currency:"CFA Franc BCEAO",countries:["Benin","Burkina Faso","Côte D'ivoire","Guinea-Bissau","Mali","Niger (The)","Senegal","Togo"]},{code:"XPD",number:"964",digits:0,currency:"Palladium",countries:["Zz09_palladium"]},{code:"XPF",number:"953",digits:0,currency:"CFP Franc",countries:["French Polynesia","New Caledonia","Wallis and Futuna"]},{code:"XPT",number:"962",digits:0,currency:"Platinum",countries:["Zz10_platinum"]},{code:"XSU",number:"994",digits:0,currency:"Sucre",countries:['Sistema Unitario De Compensacion Regional De Pagos "Sucre"']},{code:"XTS",number:"963",digits:0,currency:"Codes specifically reserved for testing purposes",countries:["Zz06_testing_code"]},{code:"XUA",number:"965",digits:0,currency:"ADB Unit of Account",countries:["Member Countries of the African Development Bank Group"]},{code:"XXX",number:"999",digits:0,currency:"The codes assigned for transactions where no currency is involved",countries:["Zz07_no_currency"]},{code:"YER",number:"886",digits:2,currency:"Yemeni Rial",countries:["Yemen"]},{code:"ZAR",number:"710",digits:2,currency:"Rand",countries:["Lesotho","Namibia","South Africa"]},{code:"ZMW",number:"967",digits:2,currency:"Zambian Kwacha",countries:["Zambia"]},{code:"ZWG",number:"924",digits:2,currency:"Zimbabwe Gold",countries:["Zimbabwe"]}]),ry}var ny,C2;function kQ(){return C2||(C2=1,ny="2024-06-25"),ny}var x2;function FQ(){if(x2)return Za;x2=1;var r=xQ(),e=SQ(),t=EQ(),n=kQ(),i=function(c){return c=c.toUpperCase(),r(t,function(h){return h.code===c})},a=function(c){return c=c.toLowerCase(),t.filter(function(h){return(h.countries.map(function(f){return f.toLowerCase()})||[]).indexOf(c)>-1})},s=function(c){return r(t,function(h){return h.number===String(c)})},o=function(){return t.map(function(c){return c.code})},l=function(){var c=t.map(function(h){return h.number});return c.filter(function(h){if(h)return h})},u=function(){var c=t.filter(function(h){return h.countries}).map(function(h){return h.countries});return e(Array.prototype.concat.apply([],c))};return Za.code=i,Za.country=a,Za.number=s,Za.codes=o,Za.numbers=l,Za.countries=u,Za.publishDate=n,Za.data=t,Za}var S2=FQ();class _D{formatCurrencyForDisplay(e,t){const n={amount:t||0,currency:e,precision:this.getPrecisionForCurrency(e)};return CQ(n).toFormat(this.getSpecialFormat(e))}getPrecisionForCurrency(e){const t=e,n=S2.code(t);return n?n.digits:2}getSpecialFormat(e){const t=e;if(S2.code(t)?.code==="CLP")return"USD0,0"}}const E2=new _D;class ND{constructor(e,t,n,i){this.presentmentCurrency=void 0,this.presentmentCurrency=i,this.partnerCurrency=n,this.rateFrom=e,this.rateTo=t}code(){return this.presentmentCurrency?this.presentmentCurrency:this.partnerCurrency}conversionRequired(){return this.presentmentCurrency!==void 0&&this.code()!==this.partnerCurrency}getConvertedSubunits(e){return this.conversionRequired()?Math.ceil(this.subunits(this.units(e,this.partnerCurrency)/this.rateFrom*this.rateTo,this.code())):e}units(e,t){return e/Math.pow(10,E2.getPrecisionForCurrency(t))}subunits(e,t){return e*Math.pow(10,E2.getPrecisionForCurrency(t))}}const TQ=async(r,e)=>{const t=await je.getShadowGraphqlClient().query({query:W3(e?.assets?.metadata||!1),errorPolicy:"all",variables:{ids:r}});if(t.error)throw t.error;if(t.errors)throw t.errors.forEach(i=>console.error(i)),new Error("Unable to read workflows. Consult GraphQL errors.");if(t.data.workflows===void 0||t.data.workflows.length!==r.length)throw new Error(`Unable to read workflows: ${t.errors??"Length mismatch in response"}`);const n=yo(t.data.workflows);return n.forEach(i=>{i.finalizeStepConfig||(i.finalizeStepConfig={}),i.finalizeStepConfig.termsMarkdown=i.finalizeStepConfig.termsMarkdown||i.partner.termsMarkdown}),n},IQ=async(r,e)=>{const n=(await e).find(i=>i.id===r);if(!n)throw new Error(`Workflow not found: ${r}`);return n},Jb=async(r,e)=>{const t=r.map(o=>Sd.get({id:o,options:e})),n=r.filter((o,l)=>t[l]===void 0);if(n.length===0)return Promise.all(t);const i=TQ(n,e),a=n.map(o=>Sd.set({id:o,options:e},IQ(o,i))),s=t.filter(o=>o!==void 0);return await Promise.all(s.concat(a))},LD=async(r,e)=>(await Jb([r],e))[0],DQ=async r=>{const e=await je.getShadowGraphqlClient().query({query:yF,variables:{ids:r},errorPolicy:"all",fetchPolicy:"no-cache"});return e.errors&&console.error(e.errors),e.data.integrationProducts||[]};class PQ{constructor(e){this.activeIntegration=void 0,this.updateTransactionState=async t=>{try{return je.getShadowGraphqlClient().mutate({...t,mutation:R3})}catch(n){throw console.error(n),new co("Critical - Unable to synchronize workflow state with server.")}},this.options=e,this.options.applicationKey&&X4(this.options.applicationKey),console.debug("------------------------"),console.debug("Spiff Commerce Core SDK"),console.debug("Version: 41.0.2"),console.debug(`Application Key Provided: ${!!this.options.applicationKey}`),console.debug("------------------------")}configure(e){_s.setHubUrl(e.hubUrl),_s.setServerUrl(e.serverUrl),_s.setServicesApiUrl(e.servicesApiUrl),this.marketplaceThemeInstallId=e.marketplaceThemeInstallId,this.marketplaceThemeInstallConfigurationId=e.marketplaceThemeInstallConfigurationId,this.userPoolClientId=e.userPoolClientId,this.userPoolRegion=e.userPoolRegion,this.spiffRegion=e.spiffRegion,e.bearerAuthenticationToken&&Xk(e.bearerAuthenticationToken),this.options.applicationKey&&this.getIntegration(),this.spiffRegion&&this.userPoolRegion&&this.userPoolClientId&&Lf.init(this.spiffRegion,this.userPoolRegion,this.userPoolClientId)}getAssetManager(){return Ln}async getBetaEnabled(){return this.options.enableBetaFeatures?!0:(await this.getIntegration()).partner.beta===!0}getFlowService(){if(!J4())throw new Error("Application key required to use Flow Service.");return new DI}async getCurrencyContext(e){const n=(await this.getIntegration()).partner.currencyCode,a=await je.getShadowGraphqlClient().query({query:Z3,errorPolicy:"all",fetchPolicy:"cache-first",variables:{from:n,to:e}}),{rateFrom:s,rateTo:o}=a.data.currencyConversion;return new ND(s,o,n,e)}async getIntegration(){if(this.activeIntegration)return this.activeIntegration;if(!this.options.applicationKey)throw new Error("Cannot get current Integration without specifying an Application Key.");return this.activeIntegration=UD(this.options.applicationKey),this.activeIntegration}async canUseAddon(e){try{return(await this.getIntegration()).partner.activeAddons?.includes(e)??!1}catch(t){return console.error(t),!1}}clearCustomer(){this.customer=void 0}clearCustomerForTransaction(e){const t=xr.getMap("transactionCustomerIds");t?.has(e)&&(t.delete(e),xr.setMap("transactionCustomerIds",t))}async customerHasBundleTemplates(e){const i=(await je.getShadowGraphqlClient().query({query:_v,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:e}})).data.customer;return i.id?i.hasBundleTemplates??!1:!1}getStakeholderTypeForTransaction(e){const t=this.customer?.stakeholders?.find(n=>n.transaction?.id===e);if(t)return t.type}async getOrCreateCustomer(e){this.customer=void 0;const t=je.getShadowGraphqlClient(),i=(await t.query({query:_v,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:e}})).data.customer;if(!i.id){const o=(await t.mutate({mutation:fV,errorPolicy:"all",fetchPolicy:"no-cache",variables:{details:{emailAddress:e}}})).data?.customerCreate;if(!o)throw new Error("Unable to create customer.");return this.storeCustomer(o),this.customer=o,{customer:o,isAuthenticated:!1}}this.storeCustomer(i);const a=await this.reloadLoggedInCustomer();return{customer:this.customer||i,isAuthenticated:a}}getCustomer(){return this.customer}async reloadLoggedInCustomer(){const e=localStorage.getItem("last-refreshed-cognito-tokens"),t=localStorage.getItem("cognito-tokens"),n=localStorage.getItem("cognito-email");if(!e||!t||!n)return!1;const i=JSON.parse(t),a=new Date().getTime()/1e3;if(!i.ExpiresIn||i.ExpiresIn<a-parseInt(e)){const u=await Lf.refreshTokens();if(u?.AuthenticationResult)localStorage.setItem("last-refreshed-cognito-tokens",`${new Date().getTime()/1e3}`),i.AccessToken=u.AuthenticationResult.AccessToken,localStorage.setItem("cognito-tokens",JSON.stringify(i));else return this.logOut(),console.error("Failed to refresh tokens."),!1}const s=localStorage.getItem("customer-login-token");s&&y0(s);const l=(await je.getShadowGraphqlClient().query({query:_v,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:n}})).data.customer;return l.id?(this.customer=l,!0):(console.error("Failed to get customer."),!1)}async generateVerificationCode(e){await je.getShadowGraphqlClient().mutate({mutation:dV,variables:{emailAddress:e}}),await Lf.generateCode(e)}async verifyCode(e,t){const n=(await this.getIntegration()).partner.id||"",i=await Lf.verifyCode(e,t,n);if(i?.AuthenticationResult){localStorage.setItem("last-refreshed-cognito-tokens",`${new Date().getTime()/1e3}`),localStorage.setItem("cognito-tokens",JSON.stringify(i.AuthenticationResult)),localStorage.setItem("cognito-email",e);const s=(await je.getShadowGraphqlClient().mutate({mutation:hV,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:e,verificationCode:t}})).data?.customerVerifyCode;if(!s?.id)throw new Error("Failed to get customer.");return this.customer=s,s.loginToken&&(localStorage.setItem("customer-login-token",s.loginToken),y0(s.loginToken)),!0}else throw new Error}async logOut(){localStorage.removeItem("last-refreshed-cognito-tokens"),localStorage.removeItem("cognito-tokens"),localStorage.removeItem("cognito-email"),localStorage.removeItem("customer-login-token"),y0(""),this.clearCustomer()}async loggedInBearerToken(){const e=localStorage.getItem("last-refreshed-cognito-tokens"),t=localStorage.getItem("cognito-tokens");if(!e||!t)throw new Error("No token data in storage.");const n=JSON.parse(t),i=new Date().getTime()/1e3,a=!n?.AccessToken||xg(n.AccessToken);if(!n.ExpiresIn||n.ExpiresIn<i-parseInt(e)||a){const s=await Lf.refreshTokens();if(s?.AuthenticationResult)localStorage.setItem("last-refreshed-cognito-tokens",`${new Date().getTime()/1e3}`),n.AccessToken=s.AuthenticationResult.AccessToken,localStorage.setItem("cognito-tokens",JSON.stringify(n));else throw this.logOut(),new Error("Failed to refresh tokens.")}if(!n.AccessToken)throw new Error("No bearer token in storage.");return n.AccessToken}async getCustomerMetafields(){if(!this.customer?.id)throw new Error("Customer must be logged in before calling this function.");return(await je.getShadowGraphqlClient().query({query:pV,variables:{id:this.customer.id}})).data.metafields}async getNewBundle(e,t,n){const a=(await je.getShadowGraphqlClient().mutate({mutation:ZU(n?.graphql?.productCollection?.eagerFetchProducts||!1),variables:{collectionId:e,initialMetadata:t?Object.entries(t).map((u,c)=>({key:u[0],value:u[1]})):void 0,marketplaceThemeInstallId:this.marketplaceThemeInstallId,marketplaceThemeInstallConfigurationId:this.marketplaceThemeInstallConfigurationId},fetchPolicy:"no-cache"})).data?.bundleCreate;if(!a?.id)throw new Error("Unable to create bundle");const s=xr.getMap("bundlePartnerIds")||new Map;s.set(a.id,a.partner.id),xr.setMap("bundlePartnerIds",s);const o=xr.getMap("bundleOwnerIds")||new Map;o.set(a.id,a.bundleOwnerId),xr.setMap("bundleOwnerIds",o);const l=new SE(this,a,void 0,void 0,a.bundleOwnerId,{eagerFetchProducts:n?.graphql?.productCollection?.eagerFetchProducts});return await l.getInitializationPromise(),l}async getExistingBundle(e,t,n,i,a){const o=xr.getMap("bundleOwnerIds")?.get(e),l={};try{const g=await this.loggedInBearerToken();l.Authorization=`Bearer ${g}`}catch{const y=Object.entries(localStorage).find(([C,k])=>C.startsWith("CognitoIdentityServiceProvider")&&C.endsWith("idToken"))?.[0]||"",A=localStorage.getItem(y);A&&!xg(A)&&(l.Authorization=`Bearer ${A}`)}const u={bundleOwnerId:o,...l,...i?.graphql?.additionalHeaders},c=await je.getShadowGraphqlClient().query({query:QU(i?.graphql?.productCollection?.eagerFetchProducts||!1),variables:{id:e},fetchPolicy:"no-cache",context:{headers:u}});if(!c.data?.bundles||c.data?.bundles.length===0||!c.data?.bundles[0])throw new Error(`Unable to find bundle: ${e}`);const h=c.data?.bundles[0],f=xr.getMap("bundlePartnerIds")||new Map;f.set(h.id,h.partner.id),xr.setMap("bundlePartnerIds",f);const d=new SE(this,h,t,n,o,{additionalHeaders:i?.graphql?.additionalHeaders,eagerFetchProducts:i?.graphql?.productCollection?.eagerFetchProducts,existingGlobalPropertyState:c.data.globalPropertyState,readonly:i?.readonly},a);return await d.getInitializationPromise(),d}async duplicateBundle(e,t,n,i){const s={...await zD(e),...i?.graphql?.additionalHeaders},l=(await je.getShadowGraphqlClient().mutate({mutation:e9(),variables:{id:e,template:t,marketplaceThemeInstallId:this.marketplaceThemeInstallId,marketplaceThemeInstallConfigurationId:this.marketplaceThemeInstallConfigurationId,duplicateTransactions:n},context:{headers:s},fetchPolicy:"no-cache"})).data?.bundleDuplicate;if(!l?.id)throw new Error("Unable to duplicate bundle");const u=xr.getMap("bundlePartnerIds")||new Map;u.set(l.id,l.partner.id),xr.setMap("bundlePartnerIds",u);const c=xr.getMap("bundleOwnerIds")||new Map;return c.set(l.id,l.bundleOwnerId),xr.setMap("bundleOwnerIds",c),async()=>await this.getExistingBundle(l.id,void 0,void 0,{graphql:{productCollection:{eagerFetchProducts:i?.graphql?.productCollection?.eagerFetchProducts||!1}}})}async getBundlesForCustomer(e){if(!this.customer?.id)throw new Error("Customer not authenticated.");const{includeMetadata:t,...n}=e;return(await je.getShadowGraphqlClient().query({query:f9(t??!1),variables:{...n,id:this.customer.id},fetchPolicy:"no-cache"})).data.customerBundlesFeed}async getBundleStakeholders(){if(!this.customer)throw new Error("Customer not authenticated.");const e=await je.getShadowGraphqlClient().query({query:YU,variables:{id:this.customer.id},fetchPolicy:"no-cache"});if(!e.data?.customers||e.data.customers.length===0)throw new Error("Unable to find customer.");const n=e.data.customers[0].bundleStakeholders||[],i=xr.getMap("bundlePartnerIds")||new Map;return n.forEach(a=>{a.bundle?.id&&a.bundle.partner?.id&&i.set(a.bundle.id,a.bundle.partner.id)}),xr.setMap("bundlePartnerIds",i),n}async getWorkflowExperience(e,t){if(!e)throw new Error("getWorkflowExperience has been called without an options object! This is not supported.");const n=await this.getWorkflowExperiences([e],e.graphql),i=n[0],a=i.getWorkflow();return t&&!a&&console.error("No workflow instantiated when trying to create preview service."),t&&a&&await i.getWorkflowManager().injectIntoPreviewService(t(a)),n[0]}async getWorkflowExperiences(e,t,n,i){if(e.length===0)throw new co("No options provided!");const a=e.map((Y,X)=>({option:Y,index:X})),s=a.filter(Y=>Y.option.type==="transaction"),o=a.filter(Y=>Y.option.type==="integration"||Y.option.type==="external"||Y.option.type==="blank"),l=50,u=uA(s,l),c=uA(o,l);let h=0;const f=je.getShadowGraphqlClient(),d=async Y=>{if(Y.length===0)return[];const X=Y.map(oe=>oe.option.transactionId),J=await f.query({query:P3,variables:{ids:X},errorPolicy:"all",fetchPolicy:"no-cache"}),Q=J.data.transactions;if(h=h+Q.length,i&&i(h,s.length),Q.length!==Y.length){const oe=J.errors?.[0]?.message||"Unknown error";throw new co(`Not all transactions were found: ${oe}`)}return!this.activeIntegration&&Q[0].integrationProduct?.integration&&(this.activeIntegration=Promise.resolve(Q[0].integrationProduct.integration)),Q.map((oe,se)=>({transaction:oe,workflowId:oe.workflowId,readOnly:Y.find(he=>he.option.transactionId===oe.id)?.option.readOnly??!1,index:Y[se].index}))},g=async Y=>{if(Y.length===0)return[];const X=await f.mutate({mutation:D3,variables:{inputs:Y.map(Q=>({integrationProductId:Q.option.type==="integration"?Q.option.integrationProductId:void 0,externalIntegrationId:Q.option.type==="external"?Q.option.externalIntegrationId:void 0,externalProductId:Q.option.type==="external"?Q.option.externalProductId:void 0,workflowId:Q.option.workflowId,designName:Q.option.designName,claim:!0,quantity:Q.option.quantity,recipient:Q.option.recipient})),marketplaceThemeInstallId:this.marketplaceThemeInstallId,marketplaceThemeInstallConfigurationId:this.marketplaceThemeInstallConfigurationId},errorPolicy:"all",fetchPolicy:"no-cache"}),J=X.data?.transactionCreateMany;if(!J||J.length===0){const Q=X.errors?.[0]?.message||"Unknown error";throw new co(`Failed to create transactions: ${Q}`)}return h=h+J.length,i&&i(h,s.length),J.map((Q,oe)=>({transaction:Q,workflowId:Q.workflowId,readOnly:!1,index:Y[oe].index}))},v=(await Promise.all([...u.map(d),...c.map(g)])).flat(),y=[...new Set(v.map(Y=>Y.transaction.integrationProductId))].filter(Y=>Y!==void 0),A=[...new Set(v.map(Y=>Y.workflowId))].filter(Y=>Y!==void 0),[C,k]=await Promise.all([(async()=>y.length>0?await DQ(y):[])(),(async()=>A.length>0?await Jb(A,t):[])()]),T=new Map(C.map(Y=>[Y.id,Y])),S=new Map(k.map(Y=>[Y.id,Y])),R=v.map(async Y=>{const{transaction:X,workflowId:J,readOnly:Q,index:oe}=Y,se=J?S.get(J):void 0,he=e[oe];if(X.integrationProductId){const K=T.get(X.integrationProductId);X.integrationProduct=K,X.product=K?.product,X.integrationProduct||console.error("failed to find transaction's product")}const ye=xr.getMap("transactionOwnerIds")||new Map;!ye.get(X.id)&&X.transactionOwnerId&&(ye.set(X.id,X.transactionOwnerId),xr.setMap("transactionOwnerIds",ye));const Ue=ye.get(X.id)||void 0,Oe=new gV({onMutate:()=>({context:{transactionOwnerId:Ue,bundleOwnerId:t?.bundleOwnerId}}),onQuery:()=>({context:{transactionOwnerId:Ue,bundleOwnerId:t?.bundleOwnerId}})}),Te={workflow:se,transaction:X,singleVariantsRenderable:he?.workflowConfiguration?.singleVariantsRenderable,stateMutationFunc:Q?async()=>{throw new nn("State mutation is forbidden in read only mode!")}:async K=>this.updateTransactionState({...K,context:{transactionOwnerId:Ue,bundleOwnerId:t?.bundleOwnerId}}),graphQlClient:()=>Oe,readOnly:Q,isReloadedTransaction:he.type==="transaction"};if(he.type==="transaction"&&X.workflowState){const K=JSON.parse(X.workflowState);await iA(K),Te.reloadedState=K}else if(!Q&&he.workflowState){const K=JSON.parse(he.workflowState);await iA(K),Te.reloadedState=K}return Te.delayWorkflowStateSync=!0,{experienceOptions:Te,index:oe,options:he}}),G=(await Promise.all(R)).sort((Y,X)=>Y.index-X.index);let $=[];for(const Y of G){const{experienceOptions:X,options:J}=Y,Q=new SI(this,X);await Q.getWorkflowManager().getInitializationPromise(),n&&n(),J.type!=="transaction"&&this.customer&&await Q.attachCustomerDetails({email:this.customer.emailAddress}),$=[...$,Q],Q.getWorkflowManager().setWorkflowStateSyncEnabled(!0)}return $}storeCustomer(e){const t=xr.getMap("partnerCustomerIds")||new Map;t.set(e.partner.id,e.id),xr.setMap("partnerCustomerIds",t)}async getIntegrationProductById(e,t){const a=(await je.getShadowGraphqlClient().query({query:U3(t),variables:{ids:[e]},fetchPolicy:"no-cache",errorPolicy:"all"})).data?.integrationProducts;if(!a||a.length===0||!a[0]?.id)throw new Error("Integration product not found.");return new dA(a[0])}async getIntegrationProductFromExternalIds(e,t,n){const s=(await je.getShadowGraphqlClient().query({query:V3(n),variables:{externalProductId:t,externalIntegrationId:e},fetchPolicy:"no-cache",errorPolicy:"all"})).data?.integrationProductFromExternalIds;if(!s?.id)throw new Error("Integration product not found.");return new dA(s)}async getIntegrationProduct(e){return e.type==="integration"?this.getIntegrationProductById(e.integrationProductId):this.getIntegrationProductFromExternalIds(e.externalIntegrationId,e.externalProductId)}async getShareActionsForTransaction(e){const n=(xr.getMap("transactionOwnerIds")||new Map).get(e)||void 0,i=await je.getShadowGraphqlClient().query({query:N3,errorPolicy:"all",fetchPolicy:"no-cache",variables:{id:e},context:{transactionOwnerId:n}});if(!i.data.transactions||i.data.transactions.length!==1)throw new Error(`Failed to fetch share actions for transaction: ${e}`);return i.data.transactions[0].transactionShareActions}async placeOrder(e){const t=await je.getShadowGraphqlClient().mutate({mutation:K3,variables:{orderItems:e}});if(t.errors)throw new Error(t.errors[0].message);if(!t.data)throw new Error("Failed to create order: No order data in response.");return{id:t.data.orderCreate.id,internalId:t.data.orderCreate.internalId}}}const UD=async(r,e)=>(await je.getShadowGraphqlClient().query({query:Y3,errorPolicy:"all",fetchPolicy:"no-cache",context:{headers:{"x-application-key":r},skipIntegrationCheck:!0},variables:{themeConfigurationId:e}})).data.currentIntegration,RQ=async r=>{const t=await je.getShadowGraphqlClient().query({query:_3,errorPolicy:"all",fetchPolicy:"network-only",variables:{id:r}});if(t.data.transactions.length!==0)return t.data.transactions[0]},OQ=async(r,e)=>(await je.getShadowGraphqlClient().query({query:Q3,errorPolicy:"all",variables:{themeConfigurationId:r,themeInstallId:e}})).data?.marketplaceThemeInstallConfiguration,BQ=async r=>(await je.getShadowGraphqlClient().query({query:J3,errorPolicy:"all",variables:{id:r}})).data?.bundles?.[0]?.marketplaceThemeInstallConfiguration,MQ=async r=>(await je.getShadowGraphqlClient().query({query:X3,errorPolicy:"all",variables:{id:r}})).data?.transactions?.[0]?.marketplaceThemeInstallConfiguration;async function VD(){const r={};try{const e=await this.loggedInBearerToken();r.Authorization=`Bearer ${e}`}catch{const n=Object.entries(localStorage).find(([a,s])=>a.startsWith("CognitoIdentityServiceProvider")&&a.endsWith("idToken"))?.[0]||"",i=localStorage.getItem(n);i&&!xg(i)&&(r.Authorization=`Bearer ${i}`)}return r}async function zD(r){const t=xr.getMap("bundleOwnerIds")?.get(r),n=await VD();return{bundleOwnerId:t,...n}}async function _Q(r){const t=xr.getMap("transactionOwnerIds")?.get(r),n=await VD();return{transactionOwnerId:t,...n}}const NQ=async r=>{const e=await zD(r),t=await je.getShadowGraphqlClient().mutate({mutation:b9,errorPolicy:"all",fetchPolicy:"no-cache",variables:{id:r},context:{headers:e}});if(t.data?.bundleDelete!==r)throw new Error(`Failed to delete bundle: ${t.errors}`)},LQ=async r=>{const e=await _Q(r),t=await je.getShadowGraphqlClient().mutate({mutation:w9,errorPolicy:"all",fetchPolicy:"no-cache",variables:{ids:[r]},context:{headers:e}});if(!t.data?.transactions||t.data.transactions.length!==1||t.data.transactions[0].id!==r)throw new Error(`Failed to find transaction to read bundle id: ${JSON.stringify(t.errors)}`);return t.data.transactions[0].bundle?.id};function HD(r,e,t,n){const i=t.width*r.zoom,a=t.height*r.zoom;if(n){const s=Math.max(e.width/t.width,e.height/t.height),o=Math.max(s,r.zoom),l=t.width*o,u=t.height*o;return{...r,x:Lp(r.x,e.width-l,0),y:Lp(r.y,e.height-u,0),zoom:o}}return{...r,x:Lp(r.x,-i,e.width),y:Lp(r.y,-a,e.height)}}function Lp(r,e,t){return Math.min(Math.max(r,e),t)}class jD{constructor(e,t){this.minZoomScale=[.03],this.maxZoomScale=[20],this._debouncedUpdateFrameOffsets=xI(this.updateFrameOffsets,200),this.targetElements=[],this.onFrameDataChangeListeners=[],this.onZoomChangeListeners=[],this.onRotationChangeListeners=[],this.forceImageCover=e,this.initialZoom=t,this.thresholdSettings={useThreshold:!1,invertThreshold:!1,threshold:128,thresholdSaturation:.5}}connectWorkflowManager(e,t){t&&e.addStepSpecificStorageCallback(async n=>{if(n){const i=n;if(i.currentFrameSources){let a=!1;for(let s=0;s<i.currentFrameSources.length;s++){const o=i.currentFrameSources[s],l=await ah(o),u=this.frameData?this.frameData[s]:void 0;Ed(l,u)||(this.frameData||(this.frameData=new Array(i.currentFrameSources.length)),this.frameData[s]=l,a=!0)}a&&(this.onFrameDataChangeListeners.forEach(s=>s(this.frameData)),this.frameData&&this.imageData&&(this.recalculateOffsets(this.imageData),this.updateOffsets(this.offsets),this.recalculateZoomLimits(this.imageData,this.frameData)))}}},t),this.workflowManager=e,this.stepName=t}setTargetElements(e){this.targetElements=e}getFrameData(){return this.frameData}setFrameData(e){if(!e){this.frameData=void 0;return}e.forEach((t,n)=>{const i=Vu.get(t);i&&(this.frameData||(this.frameData=new Array(e.length)),this.frameData[n]=i)})}getImageData(){return this.imageData}getImageSrc(){if(this.imageData){if(this.imageData.svg){const e=Gg(this.imageData.svg,this.imageData.colors||{},!1);return Hg(e)}return this.imageData.src}}getOffsets(){return this.offsets}setOffsets(e){this.offsets=e}setZoom(e,t,n,i){if(this.imageData&&this.offsets&&this.frameData){(!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length));const a=this.frameData.map((s,o)=>{const l=(t[o]-this.offsets[o].x)/this.offsets[o].zoom,u=(n[o]-this.offsets[o].y)/this.offsets[o].zoom,c=t[o]-l*e[o],h=n[o]-u*e[o];return{x:c,y:h,zoom:this.imageData.width*e[o]/this.imageData.width,rotation:this.offsets[o].rotation}});this.updateOffsets(a,i),this.onZoomChangeListeners.forEach(s=>s(e))}}setRotation(e,t){if(this.imageData&&this.offsets&&this.frameData){(!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length));const n=this.frameData.map((i,a)=>({...this.offsets[a],rotation:e[a]}));this.updateOffsets(n,t),this.onRotationChangeListeners.forEach(i=>i(e))}}setPatternData(e,t=!0){this.imageData=e,e&&this.frameData&&((t||!this.offsets)&&this.recalculateOffsets(e,t),this.updateOffsets(this.offsets,void 0,!0)),this.imageData&&this.frameData&&this.recalculateZoomLimits(this.imageData,this.frameData)}updateOffsets(e,t,n){const i=this.imageData;if(!i||!this.frameData)return;if(this.frameData.length!==e.length)throw new nn("Frame data and offsets are not the same length. This is a bug. Please report it.");if(!this.offsets.some((s,o)=>!(e[o].x===s.x&&e[o].y===s.y&&e[o].zoom===s.zoom&&e[o].rotation===s.rotation))&&!n){t&&t();return}(!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length)),this.frameData.forEach((s,o)=>{this.offsets[o]=HD(e[o],s,this.imageData,this.forceImageCover)}),this._debouncedUpdateFrameOffsets(this.offsets,i,this.frameData,this.thresholdSettings,t)}getThresholdSettings(){return this.thresholdSettings}setThresholdSettings(e){this.thresholdSettings=e,this.imageData&&this.frameData&&this._debouncedUpdateFrameOffsets(this.offsets,this.imageData,this.frameData,e)}onFrameDataChanged(e){e(this.frameData),this.onFrameDataChangeListeners.push(e)}onZoom(e){this.onZoomChangeListeners.push(e)}onRotation(e){this.onRotationChangeListeners.push(e)}updateFrameOffsets(e,t,n,i,a){if(!n||n.length===0||n.some(l=>!l))throw new nn("Frame data not set. This is a bug");if(!this.workflowManager)throw new nn("No workflow manager set, cannot update offsets.");const s=this.workflowManager.getRegionElements(this.stepName||""),o=this.workflowManager.getCommandDispatcher();this.targetElements.forEach((l,u)=>{let c=s.find(h=>h.id===l)?.regionIndex??u;c>=e.length&&(c=u);try{o(new On([new AL(l,t,e[c]),new bL(l,i.useThreshold,i.invertThreshold,i.threshold,i.thresholdSaturation)]))}catch{}}),this.stepName&&this.workflowManager.updateStorage(this.stepName,{frameOffsetsList:e}),a&&a()}recalculateZoomLimits(e,t){(this.minZoomScale.length!==t.length||this.maxZoomScale.length!==t.length)&&(this.minZoomScale=new Array(t.length),this.maxZoomScale=new Array(t.length)),t.forEach((n,i)=>{const a=Math.max(n.width/e.width,n.height/e.height);this.forceImageCover?(this.minZoomScale[i]=a,this.maxZoomScale[i]=a*2.5):(this.minZoomScale[i]=a/10,this.maxZoomScale[i]=a*2.5)})}recalculateOffsets(e,t=!0){this.frameData&&((!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length)),this.frameData.forEach((n,i)=>{const a=t?0:this.offsets[i]?.rotation||0;this.offsets[i]={...b1(e,n,this.initialZoom&&!this.forceImageCover?{scale:this.initialZoom}:void 0,this.forceImageCover),rotation:a}}),this._debouncedUpdateFrameOffsets(this.offsets,e,this.frameData,this.thresholdSettings))}}class UQ{traversableScenes(){throw new Error("Method not implemented.")}updateRecipient(e,t,n,i,a,s,o,l,u,c,h,f,d,g,v,y,A){throw new Error("Method not implemented.")}approveTransaction(e){throw new Error("Method not implemented.")}rejectTransaction(e){throw new Error("Method not implemented.")}getClient(){return this.client??{}}getWorkflowExperience(){return{}}setClient(e){this.client=e}getInitializationPromise(){return Promise.resolve()}isInitialized(){return!0}getInformationResults(){return[]}async reset(){}updateStateWithServer(e){}async outstandingRequestsPromise(){}async updateStateWithServerImmediate(e){}addPoller(e){}addConfirmCallback(e){}addEditedCallback(e){}addElementsCallback(e){}addInformationResultCallback(e){}addInitCallback(e){}addMakingAdjustmentsCallback(e){}addMandatoryCallback(e){}addMetadataCallback(e){}addSelectionCallback(e){}addStepSpecificStorageCallback(e,t){}addStorageCallback(e){}getCommandDispatcher(){return e=>{}}getLayouts(){return[]}getLayoutPreviewService(){return{getAll:()=>new Map}}getPreviewService(){}getModelContainer(){}getRegionElements(e){return[]}getSerializedStep(e,t){}getStepSpecificServices(e){}getTransaction(){return{id:""}}getTransactionCustomer(){}setTransactionCustomer(){}setTransactionCustomerDetails(){}getInitialOptionIds(){return new Promise(()=>new Set)}getWorkflow(){return{id:"",name:"",panels:[],steps:[],showModelOnFinishStep:!1,allowProofDownload:!1,introduction:"",stepGroups:[]}}markStepsAsInitialised(e){}markUpdateCompleted(e){}markUpdatePending(){return"123"}getWorkflowSelections(){return{}}getStepSelections(){return{}}setCurrentAdjustingStepId(e){}setEditedStatus(e,t){}setInformationResults(e){}setMandatoryFulfilled(e,t){}async setSelectionsAndElements(e,t,n){}toggleDesignConfirmed(){}updateMetadata(e,t){}async updateStorage(e,t){}injectIntoPreviewService(e){return Promise.resolve()}ejectFromPreviewService(){}setWorkflowStateSyncEnabled(e){}async updateTransactionShareActions(){}addValidationCallback(e){}setStepError(e,t,n){}getStepErrors(e){}getValidationErrors(){return{steps:new Map}}async updateTransactionStakeholders(){}getStepTags(e){return[]}}var GD=(r=>(r.SelectFrame="SelectFrame",r.SelectImage="SelectImage",r.Position="Position",r))(GD||{}),$D=(r=>(r.Original="original",r.BackgroundRemoved="backgroundRemoved",r.Optimized="optimized",r))($D||{});class qD extends Wi{constructor(e,t,n){super(e,t,n);const i=t.data;this.frameService=new jD(i.forceImageCover,i.initialZoomLevel),this.frameService.connectWorkflowManager(e,t.stepName)}selectVariant(e){const t=this.manager.getRegionElements(this.step.stepName);return uo.selectVariant(this.step,e.getResource(),t,this.manager,n=>this.setUpdateState(n))}onFrameDataChanged(e){this.frameService&&this.frameService.onFrameDataChanged(t=>{t&&e(t)})}async selectImage(e,t=!0,n=!0){await uo.selectImage(this.step,e,this.manager,n),t&&this.manager.updateStorage(this.step.stepName,{framePatternData:{originalAssetKey:e.key,backgroundRemovedAssetKey:void 0,vectorizedAssetKey:void 0,enhancedAssetKey:void 0,useOriginalAsset:void 0}})}async canUseAdvancedImageManipulation(){return this.manager.getClient().canUseAddon(Ng.AdvancedImageManipulation)}async canRemoveBackground(){return await this.canUseAdvancedImageManipulation()&&this.hasOriginalImageSelection()&&!!this.frameService?.getImageData()?.src&&!this.frameService?.getImageData()?.svg}async removeBackgroundFromImageSelection(e=!0){if(!await this.canUseAdvancedImageManipulation())throw new Error("The current Integration does not have access to the Background Remover. Please call canUseAdvancedImageManipulation to ensure you disable this feature when appropriate.");const t=await this.getOriginalImageSelection();if(!t)throw new Error("You must supply an image selection before attempting to remove the background.");const n=await Ln.removeBackgroundFromAsset(t);e&&await uo.selectImage(this.step,n,this.manager,!1);const i=this.getFrameStepStorage()?.framePatternData||{};return this.manager.updateStorage(this.step.stepName,{framePatternData:{...i,backgroundRemovedAssetKey:n.key,useOriginalAsset:!e}}),n}async vectorize(e,t=void 0){const n=e??await this.getOriginalImageSelection();if(!n)throw new Error("You must supply an image selection before attempting to vectorize the image.");const i=await Ln.vectorizeAsset(n,t);await this.selectImage(i,!1);const a=this.getFrameStepStorage()?.framePatternData||{};return this.manager.updateStorage(this.step.stepName,{framePatternData:{...a,vectorizedAssetKey:i.key,useOriginalAsset:!1}}),i}async enhanceWithAI(e,t){const n=e??await this.getOriginalImageSelection();if(!n)throw new Error("You must supply an image selection before attempting to enhance the image with AI.");const i=await Ln.enhanceWithAI(n,t);await this.selectImage(i,!1);const a=this.getFrameStepStorage()?.framePatternData||{};return this.manager.updateStorage(this.step.stepName,{framePatternData:{originalAssetKey:a.originalAssetKey,backgroundRemovedAssetKey:a.backgroundRemovedAssetKey,vectorizedAssetKey:a.vectorizedAssetKey,enhancedAssetKey:i.key,useOriginalAsset:!1}}),i}async getBackgroundRemovedImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.backgroundRemovedAssetKey;if(e)return Ln.getLocalOrFromServer(e)}async getVectorizedImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.vectorizedAssetKey;if(e)return Ln.getLocalOrFromServer(e)}async getEnhancedImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.enhancedAssetKey;if(e)return Ln.getLocalOrFromServer(e)}hasOriginalImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.originalAssetKey}hasBackgroundRemovedImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.backgroundRemovedAssetKey}hasVectorizedImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.vectorizedAssetKey}hasEnhancedImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.enhancedAssetKey}async changeColors(e){await uo.changeColors(this.step,this.manager,e)}getImageData(){if(this.frameService)return this.frameService.getImageData()}async getColorOption(){return await ft.ensureFullOption(this.step.data.colorOption)}getAvailableColors(){return this.step.data.colorPickerEnabled?uo.availableColors(this.step,this.manager):Promise.resolve([])}isColorPickerEnabled(){return this.step.data.colorPickerEnabled??!1}async getOriginalImageColors(){const e=this.getImageData();return e?.svg?(await Ba(e.svg)).colors:void 0}async mergeColors(e,t,n){const i=this.frameService.getImageData();if(!i?.svg||!i.colors)throw new Error("Cannot merge colors on non-SVG image or image without color information");const{svg:a,colors:s}=dF(i.svg,i.colors,e,t,n);this.frameService.setPatternData({...i,svg:a,colors:s},!1),this.manager.updateStorage(this.step.stepName,{colors:s})}async unmergeColors(e,t,n,i){const a=this.frameService.getImageData();if(!a?.svg||!a.colors)throw new Error("Cannot unmerge colors on non-SVG image or image without color information");this.frameService.setPatternData({...a,svg:i,colors:n},!1),this.manager.updateStorage(this.step.stepName,{colors:n})}getShouldVectorize(){return this.step.data.shouldVectorize??!1}getVectorizeMaxColors(){return this.step.data.vectorizeMaxColors}getMinimumPixelThresholdForOptimization(){return this.step.data.vectorizationMinimumPixelThreshold}getMaxAllowedColors(){return this.step.data.maxColors}getUniqueColorCount(){return uo.getUniqueColorCount(this.step,this.manager)}getCurrentFrameStep(e,t,n,i){return i&&i.length>1&&e===void 0?"SelectFrame":t||n||this.getImageData()?"Position":"SelectImage"}getFrameService(){return this.frameService}hasOverlayImageKey(){return this.step.data.overlayImageKey}hasOverlayImageUrl(){return this.step.data.overlayImageUrl}getWhitelistedExtensions(){return[...this.step.data.whitelistedExtensions,...this.step.data.whitelistedExtensions.includes(".jpg")?[".jpeg"]:[]]}async getOriginalImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.originalAssetKey;if(e)return Ln.getLocalOrFromServer(e)}getCurrentImageState(){const e=this.getFrameStepStorage()?.framePatternData;return e?e.vectorizedAssetKey&&!e.useOriginalAsset?"optimized":e.useOriginalAsset!==!1?"original":"backgroundRemoved":"original"}async setImageState(e){const t=this.getFrameStepStorage()?.framePatternData||{};let n,i;switch(e){case"original":if(n=await this.getOriginalImageSelection(),!n)throw new Error("No original image available");i=!0;break;case"backgroundRemoved":if(n=await this.getBackgroundRemovedImageSelection(),!n)throw new Error("No background-removed image available. Call removeBackgroundFromImageSelection first.");i=!1;break;case"optimized":if(n=await this.getVectorizedImageSelection(),!n)throw new Error("No optimized image available. Call vectorize first.");i=!1;break}await this.selectImage(n,!1,!0),this.manager.updateStorage(this.step.stepName,{framePatternData:{...t,useOriginalAsset:i}})}getUseOriginalImageSelection(){return this.getFrameStepStorage()?.framePatternData?.useOriginalAsset??!1}async setUseOriginalImageSelection(e){const t=this.getFrameStepStorage()?.framePatternData||{};if(t.useOriginalAsset===e)return;const n=await this.getOriginalImageSelection();if(!n)throw new Error("You must provide an image selection before calling setUseOriginalImageSelection");if(e)await this.selectImage(n,!1,!1);else{const i=await this.getBackgroundRemovedImageSelection();if(!i)throw new Error("You must call removeBackgroundFromImageSelection before attempting to apply the image.");await this.selectImage(i,!1,!1)}this.manager.updateStorage(this.step.stepName,{framePatternData:{...t,useOriginalAsset:e}})}getFrameStepStorage(){return this.manager.getStepStorage(this.step.stepName)}isVariantCategoriesEnabled(){return this.step.data.enableVariantCategories??!1}}const VQ=ke`
2816
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var uQ={normalizePrecision:function(e){var t=e.reduce(function(n,i){return Math.max(n.getPrecision(),i.getPrecision())});return e.map(function(n){return n.getPrecision()!==t?n.convertPrecision(t):n})},minimum:function(e){var t=g2(e),n=t[0],i=t.slice(1),a=n;return i.forEach(function(s){a=a.lessThan(s)?a:s}),a},maximum:function(e){var t=g2(e),n=t[0],i=t.slice(1),a=n;return i.forEach(function(s){a=a.greaterThan(s)?a:s}),a}};function OD(r){return!isNaN(parseInt(r))&&isFinite(r)}function cQ(r){return OD(r)&&r<=100&&r>=0}function fQ(r){return r.length>0&&r.every(function(e){return e>=0})&&r.some(function(e){return e>0})}function v2(r){return r%2===0}function y2(r){return OD(r)&&!Number.isInteger(r)}function dQ(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,e=r.toString();if(e.indexOf("e-")>0)return parseInt(e.split("e-")[1]);var t=e.split(".")[1];return t?t.length:0}function Uf(r){return Math.abs(r)%1===.5}function hQ(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return new Promise(function(t,n){var i=Object.assign(new XMLHttpRequest,{onreadystatechange:function(){i.readyState===4&&(i.status>=200&&i.status<400?t(JSON.parse(i.responseText)):n(new Error(i.statusText)))},onerror:function(){n(new Error("Network error"))}});i.open("GET",r,!0),pQ(i,e.headers),i.send()})}function pQ(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};for(var t in e)r.setRequestHeader(t,e[t]);return r}function Zf(r){return typeof r>"u"}function BD(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:".",t={};return Object.entries(r).forEach(function(n){if(dd(n[1])==="object"){var i=BD(n[1]);Object.entries(i).forEach(function(a){t[n[0]+e+a[0]]=a[1]})}else t[n[0]]=n[1]}),t}function gQ(r){return!!r&&(dd(r)==="object"||typeof r=="function")&&typeof r.then=="function"}function MD(){var r=function(n,i){var a=function(l){return Math.pow(10,dQ(l))},s=Math.max(a(n),a(i));return Math.round(n*s)*Math.round(i*s)/(s*s)},e={HALF_ODD:function(n){var i=Math.round(n);return Uf(n)&&v2(i)?i-1:i},HALF_EVEN:function(n){var i=Math.round(n);return Uf(n)?v2(i)?i:i-1:i},HALF_UP:function(n){return Math.round(n)},HALF_DOWN:function(n){return Uf(n)?Math.floor(n):Math.round(n)},HALF_TOWARDS_ZERO:function(n){return Uf(n)?Math.sign(n)*Math.floor(Math.abs(n)):Math.round(n)},HALF_AWAY_FROM_ZERO:function(n){return Uf(n)?Math.sign(n)*Math.ceil(Math.abs(n)):Math.round(n)},DOWN:function(n){return Math.floor(n)}};return{add:function(n,i){return n+i},subtract:function(n,i){return n-i},multiply:function(n,i){return y2(n)||y2(i)?r(n,i):n*i},divide:function(n,i){return n/i},modulo:function(n,i){return n%i},round:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"HALF_EVEN";return e[i](n)}}}var mQ=MD();function vQ(r){var e=/^(?:(\$|USD)?0(?:(,)0)?(\.)?(0+)?|0(?:(,)0)?(\.)?(0+)?\s?(dollar)?)$/gm.exec(r);return{getMatches:function(){return e!==null?e.slice(1).filter(function(n){return!Zf(n)}):[]},getMinimumFractionDigits:function(){var n=function(a){return a==="."};return Zf(this.getMatches().find(n))?0:this.getMatches()[mQ.add(this.getMatches().findIndex(n),1)].split("").length},getCurrencyDisplay:function(){var n={USD:"code",dollar:"name",$:"symbol"};return n[this.getMatches().find(function(i){return i==="USD"||i==="dollar"||i==="$"})]},getStyle:function(){return Zf(this.getCurrencyDisplay(this.getMatches()))?"decimal":"currency"},getUseGrouping:function(){return!Zf(this.getMatches().find(function(n){return n===","}))}}}function yQ(r){var e=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;for(var s in a)i=i.replace("{{".concat(s,"}}"),a[s]);return i},t=function(i,a){return hQ(e(r.endpoint,{from:i,to:a}),{headers:r.headers})};return{getExchangeRate:function(i,a){return(gQ(r.endpoint)?r.endpoint:t(i,a)).then(function(s){return BD(s)[e(r.propertyPath,{from:i,to:a})]})}}}function Vd(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Error;if(!r)throw new t(e)}function AQ(r){Vd(cQ(r),"You must provide a numeric value between 0 and 100.",RangeError)}function bQ(r){Vd(fQ(r),"You must provide a non-empty array of numeric values greater than 0.",TypeError)}function Zv(r){Vd(Number.isInteger(r),"You must provide an integer.",TypeError)}var kn=MD(),wQ=function r(e){var t=Object.assign({},{amount:r.defaultAmount,currency:r.defaultCurrency,precision:r.defaultPrecision},e),n=t.amount,i=t.currency,a=t.precision;Zv(n),Zv(a);var s=r.globalLocale,o=r.globalFormat,l=r.globalRoundingMode,u=r.globalFormatRoundingMode,c=Object.assign({},r.globalExchangeRatesApi),h=function(g){var v=Object.assign({},Object.assign({},{amount:n,currency:i,precision:a},g),Object.assign({},{locale:this.locale},g));return Object.assign(r({amount:v.amount,currency:v.currency,precision:v.precision}),{locale:v.locale})},f=function(g){Vd(this.hasSameCurrency(g),"You must provide a Dinero instance with the same currency.",TypeError)};return{getAmount:function(){return n},getCurrency:function(){return i},getLocale:function(){return this.locale||s},setLocale:function(g){return h.call(this,{locale:g})},getPrecision:function(){return a},convertPrecision:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u;Zv(g);var y=this.getPrecision(),A=g>y,C=A?kn.multiply:kn.divide,k=A?[g,y]:[y,g],T=Math.pow(10,kn.subtract.apply(kn,k));return h.call(this,{amount:kn.round(C(this.getAmount(),T),v),precision:g})},add:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return h.call(this,{amount:kn.add(v[0].getAmount(),v[1].getAmount()),precision:v[0].getPrecision()})},subtract:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return h.call(this,{amount:kn.subtract(v[0].getAmount(),v[1].getAmount()),precision:v[0].getPrecision()})},multiply:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return h.call(this,{amount:kn.round(kn.multiply(this.getAmount(),g),v)})},divide:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return h.call(this,{amount:kn.round(kn.divide(this.getAmount(),g),v)})},percentage:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return AQ(g),this.multiply(kn.divide(g,100),v)},allocate:function(g){var v=this;bQ(g);for(var y=g.reduce(function(T,S){return kn.add(T,S)}),A=this.getAmount(),C=g.map(function(T){var S=Math.floor(kn.divide(kn.multiply(v.getAmount(),T),y));return A=kn.subtract(A,S),h.call(v,{amount:S})}),k=0;A>0;)g[k]>0&&(C[k]=C[k].add(h.call(this,{amount:1})),A=kn.subtract(A,1)),k+=1;return C},convert:function(g){var v=this,y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},A=y.endpoint,C=A===void 0?c.endpoint:A,k=y.propertyPath,T=k===void 0?c.propertyPath||"rates.{{to}}":k,S=y.headers,R=S===void 0?c.headers:S,B=y.roundingMode,G=B===void 0?l:B,$=Object.assign({},{endpoint:C,propertyPath:T,headers:R,roundingMode:G});return yQ($).getExchangeRate(this.getCurrency(),g).then(function(Y){return Vd(!Zf(Y),'No rate was found for the destination currency "'.concat(g,'".'),TypeError),h.call(v,{amount:kn.round(kn.multiply(v.getAmount(),parseFloat(Y)),$.roundingMode),currency:g})})},equalsTo:function(g){return this.hasSameAmount(g)&&this.hasSameCurrency(g)},lessThan:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()<v[1].getAmount()},lessThanOrEqual:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()<=v[1].getAmount()},greaterThan:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()>v[1].getAmount()},greaterThanOrEqual:function(g){f.call(this,g);var v=r.normalizePrecision([this,g]);return v[0].getAmount()>=v[1].getAmount()},isZero:function(){return this.getAmount()===0},isPositive:function(){return this.getAmount()>=0},isNegative:function(){return this.getAmount()<0},hasSubUnits:function(){return kn.modulo(this.getAmount(),Math.pow(10,a))!==0},hasCents:function(){return kn.modulo(this.getAmount(),Math.pow(10,a))!==0},hasSameCurrency:function(g){return this.getCurrency()===g.getCurrency()},hasSameAmount:function(g){var v=r.normalizePrecision([this,g]);return v[0].getAmount()===v[1].getAmount()},toFormat:function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:o,v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u,y=vQ(g);return this.toRoundedUnit(y.getMinimumFractionDigits(),v).toLocaleString(this.getLocale(),{currencyDisplay:y.getCurrencyDisplay(),useGrouping:y.getUseGrouping(),minimumFractionDigits:y.getMinimumFractionDigits(),style:y.getStyle(),currency:this.getCurrency()})},toUnit:function(){return kn.divide(this.getAmount(),Math.pow(10,a))},toRoundedUnit:function(g){var v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u,y=Math.pow(10,g);return kn.divide(kn.round(kn.multiply(this.toUnit(),y),v),y)},toObject:function(){return{amount:n,currency:i,precision:a}},toJSON:function(){return this.toObject()}}},CQ=Object.assign(wQ,nQ,iQ,uQ),Za={},ey,A2;function xQ(){if(A2)return ey;A2=1;function r(t){return t}function e(t,a,s){for(var a=a||r,s=s||t,o=0,l=t.length;o<l;o+=1)if(a.call(s,t[o],o))return t[o]}return ey=e,ey}var ty={exports:{}},b2;function SQ(){if(b2)return ty.exports;b2=1;var r=ty.exports=function(e,t){if(typeof e=="function"||t)return r.by(e,t);for(var n={object:[],function:[],string:{},number:{},boolean:{},undefined:{}},i=[],a=0;a<e.length;a++){var s=e[a],o=s==="__proto__"?n.objects:n[typeof s]||n.objects;Array.isArray(o)?o.indexOf(s)<0&&(o.push(s),i.push(s)):Object.hasOwnProperty.call(o,s)||(o[s]=!0,i.push(s))}return i};return r.by=function(e,t){if(typeof e=="function"){var n=t;t=e,e=n}for(var i=[],a=0;a<e.length;a++){for(var s=e[a],o=!1,l=0;l<i.length;l++){var u=i[l];if(t.call(i,s,u)){o=!0;break}}o||i.push(s)}return i},ty.exports}var ry,w2;function EQ(){return w2||(w2=1,ry=[{code:"AED",number:"784",digits:2,currency:"UAE Dirham",countries:["United Arab Emirates (The)"]},{code:"AFN",number:"971",digits:2,currency:"Afghani",countries:["Afghanistan"]},{code:"ALL",number:"008",digits:2,currency:"Lek",countries:["Albania"]},{code:"AMD",number:"051",digits:2,currency:"Armenian Dram",countries:["Armenia"]},{code:"ANG",number:"532",digits:2,currency:"Netherlands Antillean Guilder",countries:["Curaçao","Sint Maarten (Dutch Part)"]},{code:"AOA",number:"973",digits:2,currency:"Kwanza",countries:["Angola"]},{code:"ARS",number:"032",digits:2,currency:"Argentine Peso",countries:["Argentina"]},{code:"AUD",number:"036",digits:2,currency:"Australian Dollar",countries:["Australia","Christmas Island","Cocos (Keeling) Islands (The)","Heard Island and Mcdonald Islands","Kiribati","Nauru","Norfolk Island","Tuvalu"]},{code:"AWG",number:"533",digits:2,currency:"Aruban Florin",countries:["Aruba"]},{code:"AZN",number:"944",digits:2,currency:"Azerbaijan Manat",countries:["Azerbaijan"]},{code:"BAM",number:"977",digits:2,currency:"Convertible Mark",countries:["Bosnia and Herzegovina"]},{code:"BBD",number:"052",digits:2,currency:"Barbados Dollar",countries:["Barbados"]},{code:"BDT",number:"050",digits:2,currency:"Taka",countries:["Bangladesh"]},{code:"BGN",number:"975",digits:2,currency:"Bulgarian Lev",countries:["Bulgaria"]},{code:"BHD",number:"048",digits:3,currency:"Bahraini Dinar",countries:["Bahrain"]},{code:"BIF",number:"108",digits:0,currency:"Burundi Franc",countries:["Burundi"]},{code:"BMD",number:"060",digits:2,currency:"Bermudian Dollar",countries:["Bermuda"]},{code:"BND",number:"096",digits:2,currency:"Brunei Dollar",countries:["Brunei Darussalam"]},{code:"BOB",number:"068",digits:2,currency:"Boliviano",countries:["Bolivia (Plurinational State Of)"]},{code:"BOV",number:"984",digits:2,currency:"Mvdol",countries:["Bolivia (Plurinational State Of)"]},{code:"BRL",number:"986",digits:2,currency:"Brazilian Real",countries:["Brazil"]},{code:"BSD",number:"044",digits:2,currency:"Bahamian Dollar",countries:["Bahamas (The)"]},{code:"BTN",number:"064",digits:2,currency:"Ngultrum",countries:["Bhutan"]},{code:"BWP",number:"072",digits:2,currency:"Pula",countries:["Botswana"]},{code:"BYN",number:"933",digits:2,currency:"Belarusian Ruble",countries:["Belarus"]},{code:"BZD",number:"084",digits:2,currency:"Belize Dollar",countries:["Belize"]},{code:"CAD",number:"124",digits:2,currency:"Canadian Dollar",countries:["Canada"]},{code:"CDF",number:"976",digits:2,currency:"Congolese Franc",countries:["Congo (The Democratic Republic of The)"]},{code:"CHE",number:"947",digits:2,currency:"WIR Euro",countries:["Switzerland"]},{code:"CHF",number:"756",digits:2,currency:"Swiss Franc",countries:["Liechtenstein","Switzerland"]},{code:"CHW",number:"948",digits:2,currency:"WIR Franc",countries:["Switzerland"]},{code:"CLF",number:"990",digits:4,currency:"Unidad de Fomento",countries:["Chile"]},{code:"CLP",number:"152",digits:0,currency:"Chilean Peso",countries:["Chile"]},{code:"CNY",number:"156",digits:2,currency:"Yuan Renminbi",countries:["China"]},{code:"COP",number:"170",digits:2,currency:"Colombian Peso",countries:["Colombia"]},{code:"COU",number:"970",digits:2,currency:"Unidad de Valor Real",countries:["Colombia"]},{code:"CRC",number:"188",digits:2,currency:"Costa Rican Colon",countries:["Costa Rica"]},{code:"CUC",number:"931",digits:2,currency:"Peso Convertible",countries:["Cuba"]},{code:"CUP",number:"192",digits:2,currency:"Cuban Peso",countries:["Cuba"]},{code:"CVE",number:"132",digits:2,currency:"Cabo Verde Escudo",countries:["Cabo Verde"]},{code:"CZK",number:"203",digits:2,currency:"Czech Koruna",countries:["Czechia"]},{code:"DJF",number:"262",digits:0,currency:"Djibouti Franc",countries:["Djibouti"]},{code:"DKK",number:"208",digits:2,currency:"Danish Krone",countries:["Denmark","Faroe Islands (The)","Greenland"]},{code:"DOP",number:"214",digits:2,currency:"Dominican Peso",countries:["Dominican Republic (The)"]},{code:"DZD",number:"012",digits:2,currency:"Algerian Dinar",countries:["Algeria"]},{code:"EGP",number:"818",digits:2,currency:"Egyptian Pound",countries:["Egypt"]},{code:"ERN",number:"232",digits:2,currency:"Nakfa",countries:["Eritrea"]},{code:"ETB",number:"230",digits:2,currency:"Ethiopian Birr",countries:["Ethiopia"]},{code:"EUR",number:"978",digits:2,currency:"Euro",countries:["Åland Islands","Andorra","Austria","Belgium","Croatia","Cyprus","Estonia","European Union","Finland","France","French Guiana","French Southern Territories (The)","Germany","Greece","Guadeloupe","Holy See (The)","Ireland","Italy","Latvia","Lithuania","Luxembourg","Malta","Martinique","Mayotte","Monaco","Montenegro","Netherlands (The)","Portugal","Réunion","Saint Barthélemy","Saint Martin (French Part)","Saint Pierre and Miquelon","San Marino","Slovakia","Slovenia","Spain"]},{code:"FJD",number:"242",digits:2,currency:"Fiji Dollar",countries:["Fiji"]},{code:"FKP",number:"238",digits:2,currency:"Falkland Islands Pound",countries:["Falkland Islands (The) [Malvinas]"]},{code:"GBP",number:"826",digits:2,currency:"Pound Sterling",countries:["Guernsey","Isle of Man","Jersey","United Kingdom of Great Britain and Northern Ireland (The)"]},{code:"GEL",number:"981",digits:2,currency:"Lari",countries:["Georgia"]},{code:"GHS",number:"936",digits:2,currency:"Ghana Cedi",countries:["Ghana"]},{code:"GIP",number:"292",digits:2,currency:"Gibraltar Pound",countries:["Gibraltar"]},{code:"GMD",number:"270",digits:2,currency:"Dalasi",countries:["Gambia (The)"]},{code:"GNF",number:"324",digits:0,currency:"Guinean Franc",countries:["Guinea"]},{code:"GTQ",number:"320",digits:2,currency:"Quetzal",countries:["Guatemala"]},{code:"GYD",number:"328",digits:2,currency:"Guyana Dollar",countries:["Guyana"]},{code:"HKD",number:"344",digits:2,currency:"Hong Kong Dollar",countries:["Hong Kong"]},{code:"HNL",number:"340",digits:2,currency:"Lempira",countries:["Honduras"]},{code:"HTG",number:"332",digits:2,currency:"Gourde",countries:["Haiti"]},{code:"HUF",number:"348",digits:2,currency:"Forint",countries:["Hungary"]},{code:"IDR",number:"360",digits:2,currency:"Rupiah",countries:["Indonesia"]},{code:"ILS",number:"376",digits:2,currency:"New Israeli Sheqel",countries:["Israel"]},{code:"INR",number:"356",digits:2,currency:"Indian Rupee",countries:["Bhutan","India"]},{code:"IQD",number:"368",digits:3,currency:"Iraqi Dinar",countries:["Iraq"]},{code:"IRR",number:"364",digits:2,currency:"Iranian Rial",countries:["Iran (Islamic Republic Of)"]},{code:"ISK",number:"352",digits:0,currency:"Iceland Krona",countries:["Iceland"]},{code:"JMD",number:"388",digits:2,currency:"Jamaican Dollar",countries:["Jamaica"]},{code:"JOD",number:"400",digits:3,currency:"Jordanian Dinar",countries:["Jordan"]},{code:"JPY",number:"392",digits:0,currency:"Yen",countries:["Japan"]},{code:"KES",number:"404",digits:2,currency:"Kenyan Shilling",countries:["Kenya"]},{code:"KGS",number:"417",digits:2,currency:"Som",countries:["Kyrgyzstan"]},{code:"KHR",number:"116",digits:2,currency:"Riel",countries:["Cambodia"]},{code:"KMF",number:"174",digits:0,currency:"Comorian Franc ",countries:["Comoros (The)"]},{code:"KPW",number:"408",digits:2,currency:"North Korean Won",countries:["Korea (The Democratic People’s Republic Of)"]},{code:"KRW",number:"410",digits:0,currency:"Won",countries:["Korea (The Republic Of)"]},{code:"KWD",number:"414",digits:3,currency:"Kuwaiti Dinar",countries:["Kuwait"]},{code:"KYD",number:"136",digits:2,currency:"Cayman Islands Dollar",countries:["Cayman Islands (The)"]},{code:"KZT",number:"398",digits:2,currency:"Tenge",countries:["Kazakhstan"]},{code:"LAK",number:"418",digits:2,currency:"Lao Kip",countries:["Lao People’s Democratic Republic (The)"]},{code:"LBP",number:"422",digits:2,currency:"Lebanese Pound",countries:["Lebanon"]},{code:"LKR",number:"144",digits:2,currency:"Sri Lanka Rupee",countries:["Sri Lanka"]},{code:"LRD",number:"430",digits:2,currency:"Liberian Dollar",countries:["Liberia"]},{code:"LSL",number:"426",digits:2,currency:"Loti",countries:["Lesotho"]},{code:"LYD",number:"434",digits:3,currency:"Libyan Dinar",countries:["Libya"]},{code:"MAD",number:"504",digits:2,currency:"Moroccan Dirham",countries:["Morocco","Western Sahara"]},{code:"MDL",number:"498",digits:2,currency:"Moldovan Leu",countries:["Moldova (The Republic Of)"]},{code:"MGA",number:"969",digits:2,currency:"Malagasy Ariary",countries:["Madagascar"]},{code:"MKD",number:"807",digits:2,currency:"Denar",countries:["North Macedonia"]},{code:"MMK",number:"104",digits:2,currency:"Kyat",countries:["Myanmar"]},{code:"MNT",number:"496",digits:2,currency:"Tugrik",countries:["Mongolia"]},{code:"MOP",number:"446",digits:2,currency:"Pataca",countries:["Macao"]},{code:"MRU",number:"929",digits:2,currency:"Ouguiya",countries:["Mauritania"]},{code:"MUR",number:"480",digits:2,currency:"Mauritius Rupee",countries:["Mauritius"]},{code:"MVR",number:"462",digits:2,currency:"Rufiyaa",countries:["Maldives"]},{code:"MWK",number:"454",digits:2,currency:"Malawi Kwacha",countries:["Malawi"]},{code:"MXN",number:"484",digits:2,currency:"Mexican Peso",countries:["Mexico"]},{code:"MXV",number:"979",digits:2,currency:"Mexican Unidad de Inversion (UDI)",countries:["Mexico"]},{code:"MYR",number:"458",digits:2,currency:"Malaysian Ringgit",countries:["Malaysia"]},{code:"MZN",number:"943",digits:2,currency:"Mozambique Metical",countries:["Mozambique"]},{code:"NAD",number:"516",digits:2,currency:"Namibia Dollar",countries:["Namibia"]},{code:"NGN",number:"566",digits:2,currency:"Naira",countries:["Nigeria"]},{code:"NIO",number:"558",digits:2,currency:"Cordoba Oro",countries:["Nicaragua"]},{code:"NOK",number:"578",digits:2,currency:"Norwegian Krone",countries:["Bouvet Island","Norway","Svalbard and Jan Mayen"]},{code:"NPR",number:"524",digits:2,currency:"Nepalese Rupee",countries:["Nepal"]},{code:"NZD",number:"554",digits:2,currency:"New Zealand Dollar",countries:["Cook Islands (The)","New Zealand","Niue","Pitcairn","Tokelau"]},{code:"OMR",number:"512",digits:3,currency:"Rial Omani",countries:["Oman"]},{code:"PAB",number:"590",digits:2,currency:"Balboa",countries:["Panama"]},{code:"PEN",number:"604",digits:2,currency:"Sol",countries:["Peru"]},{code:"PGK",number:"598",digits:2,currency:"Kina",countries:["Papua New Guinea"]},{code:"PHP",number:"608",digits:2,currency:"Philippine Peso",countries:["Philippines (The)"]},{code:"PKR",number:"586",digits:2,currency:"Pakistan Rupee",countries:["Pakistan"]},{code:"PLN",number:"985",digits:2,currency:"Zloty",countries:["Poland"]},{code:"PYG",number:"600",digits:0,currency:"Guarani",countries:["Paraguay"]},{code:"QAR",number:"634",digits:2,currency:"Qatari Rial",countries:["Qatar"]},{code:"RON",number:"946",digits:2,currency:"Romanian Leu",countries:["Romania"]},{code:"RSD",number:"941",digits:2,currency:"Serbian Dinar",countries:["Serbia"]},{code:"RUB",number:"643",digits:2,currency:"Russian Ruble",countries:["Russian Federation (The)"]},{code:"RWF",number:"646",digits:0,currency:"Rwanda Franc",countries:["Rwanda"]},{code:"SAR",number:"682",digits:2,currency:"Saudi Riyal",countries:["Saudi Arabia"]},{code:"SBD",number:"090",digits:2,currency:"Solomon Islands Dollar",countries:["Solomon Islands"]},{code:"SCR",number:"690",digits:2,currency:"Seychelles Rupee",countries:["Seychelles"]},{code:"SDG",number:"938",digits:2,currency:"Sudanese Pound",countries:["Sudan (The)"]},{code:"SEK",number:"752",digits:2,currency:"Swedish Krona",countries:["Sweden"]},{code:"SGD",number:"702",digits:2,currency:"Singapore Dollar",countries:["Singapore"]},{code:"SHP",number:"654",digits:2,currency:"Saint Helena Pound",countries:["Saint Helena, Ascension and Tristan Da Cunha"]},{code:"SLE",number:"925",digits:2,currency:"Leone",countries:["Sierra Leone"]},{code:"SOS",number:"706",digits:2,currency:"Somali Shilling",countries:["Somalia"]},{code:"SRD",number:"968",digits:2,currency:"Surinam Dollar",countries:["Suriname"]},{code:"SSP",number:"728",digits:2,currency:"South Sudanese Pound",countries:["South Sudan"]},{code:"STN",number:"930",digits:2,currency:"Dobra",countries:["Sao Tome and Principe"]},{code:"SVC",number:"222",digits:2,currency:"El Salvador Colon",countries:["El Salvador"]},{code:"SYP",number:"760",digits:2,currency:"Syrian Pound",countries:["Syrian Arab Republic"]},{code:"SZL",number:"748",digits:2,currency:"Lilangeni",countries:["Eswatini"]},{code:"THB",number:"764",digits:2,currency:"Baht",countries:["Thailand"]},{code:"TJS",number:"972",digits:2,currency:"Somoni",countries:["Tajikistan"]},{code:"TMT",number:"934",digits:2,currency:"Turkmenistan New Manat",countries:["Turkmenistan"]},{code:"TND",number:"788",digits:3,currency:"Tunisian Dinar",countries:["Tunisia"]},{code:"TOP",number:"776",digits:2,currency:"Pa’anga",countries:["Tonga"]},{code:"TRY",number:"949",digits:2,currency:"Turkish Lira",countries:["Türki̇ye"]},{code:"TTD",number:"780",digits:2,currency:"Trinidad and Tobago Dollar",countries:["Trinidad and Tobago"]},{code:"TWD",number:"901",digits:2,currency:"New Taiwan Dollar",countries:["Taiwan (Province of China)"]},{code:"TZS",number:"834",digits:2,currency:"Tanzanian Shilling",countries:["Tanzania, United Republic Of"]},{code:"UAH",number:"980",digits:2,currency:"Hryvnia",countries:["Ukraine"]},{code:"UGX",number:"800",digits:0,currency:"Uganda Shilling",countries:["Uganda"]},{code:"USD",number:"840",digits:2,currency:"US Dollar",countries:["American Samoa","Bonaire, Sint Eustatius and Saba","British Indian Ocean Territory (The)","Ecuador","El Salvador","Guam","Haiti","Marshall Islands (The)","Micronesia (Federated States Of)","Northern Mariana Islands (The)","Palau","Panama","Puerto Rico","Timor-Leste","Turks and Caicos Islands (The)","United States Minor Outlying Islands (The)","United States of America (The)","Virgin Islands (British)","Virgin Islands (u.s.)"]},{code:"USN",number:"997",digits:2,currency:"US Dollar (Next day)",countries:["United States of America (The)"]},{code:"UYI",number:"940",digits:0,currency:"Uruguay Peso en Unidades Indexadas (UI)",countries:["Uruguay"]},{code:"UYU",number:"858",digits:2,currency:"Peso Uruguayo",countries:["Uruguay"]},{code:"UYW",number:"927",digits:4,currency:"Unidad Previsional",countries:["Uruguay"]},{code:"UZS",number:"860",digits:2,currency:"Uzbekistan Sum",countries:["Uzbekistan"]},{code:"VED",number:"926",digits:2,currency:"Bolívar Soberano",countries:["Venezuela (Bolivarian Republic Of)"]},{code:"VES",number:"928",digits:2,currency:"Bolívar Soberano",countries:["Venezuela (Bolivarian Republic Of)"]},{code:"VND",number:"704",digits:0,currency:"Dong",countries:["Viet Nam"]},{code:"VUV",number:"548",digits:0,currency:"Vatu",countries:["Vanuatu"]},{code:"WST",number:"882",digits:2,currency:"Tala",countries:["Samoa"]},{code:"XAF",number:"950",digits:0,currency:"CFA Franc BEAC",countries:["Cameroon","Central African Republic (The)","Chad","Congo (The)","Equatorial Guinea","Gabon"]},{code:"XAG",number:"961",digits:0,currency:"Silver",countries:["Zz11_silver"]},{code:"XAU",number:"959",digits:0,currency:"Gold",countries:["Zz08_gold"]},{code:"XBA",number:"955",digits:0,currency:"Bond Markets Unit European Composite Unit (EURCO)",countries:["Zz01_bond Markets Unit European_eurco"]},{code:"XBB",number:"956",digits:0,currency:"Bond Markets Unit European Monetary Unit (E.M.U.-6)",countries:["Zz02_bond Markets Unit European_emu-6"]},{code:"XBC",number:"957",digits:0,currency:"Bond Markets Unit European Unit of Account 9 (E.U.A.-9)",countries:["Zz03_bond Markets Unit European_eua-9"]},{code:"XBD",number:"958",digits:0,currency:"Bond Markets Unit European Unit of Account 17 (E.U.A.-17)",countries:["Zz04_bond Markets Unit European_eua-17"]},{code:"XCD",number:"951",digits:2,currency:"East Caribbean Dollar",countries:["Anguilla","Antigua and Barbuda","Dominica","Grenada","Montserrat","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines"]},{code:"XDR",number:"960",digits:0,currency:"SDR (Special Drawing Right)",countries:["International Monetary Fund (Imf) "]},{code:"XOF",number:"952",digits:0,currency:"CFA Franc BCEAO",countries:["Benin","Burkina Faso","Côte D'ivoire","Guinea-Bissau","Mali","Niger (The)","Senegal","Togo"]},{code:"XPD",number:"964",digits:0,currency:"Palladium",countries:["Zz09_palladium"]},{code:"XPF",number:"953",digits:0,currency:"CFP Franc",countries:["French Polynesia","New Caledonia","Wallis and Futuna"]},{code:"XPT",number:"962",digits:0,currency:"Platinum",countries:["Zz10_platinum"]},{code:"XSU",number:"994",digits:0,currency:"Sucre",countries:['Sistema Unitario De Compensacion Regional De Pagos "Sucre"']},{code:"XTS",number:"963",digits:0,currency:"Codes specifically reserved for testing purposes",countries:["Zz06_testing_code"]},{code:"XUA",number:"965",digits:0,currency:"ADB Unit of Account",countries:["Member Countries of the African Development Bank Group"]},{code:"XXX",number:"999",digits:0,currency:"The codes assigned for transactions where no currency is involved",countries:["Zz07_no_currency"]},{code:"YER",number:"886",digits:2,currency:"Yemeni Rial",countries:["Yemen"]},{code:"ZAR",number:"710",digits:2,currency:"Rand",countries:["Lesotho","Namibia","South Africa"]},{code:"ZMW",number:"967",digits:2,currency:"Zambian Kwacha",countries:["Zambia"]},{code:"ZWG",number:"924",digits:2,currency:"Zimbabwe Gold",countries:["Zimbabwe"]}]),ry}var ny,C2;function kQ(){return C2||(C2=1,ny="2024-06-25"),ny}var x2;function FQ(){if(x2)return Za;x2=1;var r=xQ(),e=SQ(),t=EQ(),n=kQ(),i=function(c){return c=c.toUpperCase(),r(t,function(h){return h.code===c})},a=function(c){return c=c.toLowerCase(),t.filter(function(h){return(h.countries.map(function(f){return f.toLowerCase()})||[]).indexOf(c)>-1})},s=function(c){return r(t,function(h){return h.number===String(c)})},o=function(){return t.map(function(c){return c.code})},l=function(){var c=t.map(function(h){return h.number});return c.filter(function(h){if(h)return h})},u=function(){var c=t.filter(function(h){return h.countries}).map(function(h){return h.countries});return e(Array.prototype.concat.apply([],c))};return Za.code=i,Za.country=a,Za.number=s,Za.codes=o,Za.numbers=l,Za.countries=u,Za.publishDate=n,Za.data=t,Za}var S2=FQ();class _D{formatCurrencyForDisplay(e,t){const n={amount:t||0,currency:e,precision:this.getPrecisionForCurrency(e)};return CQ(n).toFormat(this.getSpecialFormat(e))}getPrecisionForCurrency(e){const t=e,n=S2.code(t);return n?n.digits:2}getSpecialFormat(e){const t=e;if(S2.code(t)?.code==="CLP")return"USD0,0"}}const E2=new _D;class ND{constructor(e,t,n,i){this.presentmentCurrency=void 0,this.presentmentCurrency=i,this.partnerCurrency=n,this.rateFrom=e,this.rateTo=t}code(){return this.presentmentCurrency?this.presentmentCurrency:this.partnerCurrency}conversionRequired(){return this.presentmentCurrency!==void 0&&this.code()!==this.partnerCurrency}getConvertedSubunits(e){return this.conversionRequired()?Math.ceil(this.subunits(this.units(e,this.partnerCurrency)/this.rateFrom*this.rateTo,this.code())):e}units(e,t){return e/Math.pow(10,E2.getPrecisionForCurrency(t))}subunits(e,t){return e*Math.pow(10,E2.getPrecisionForCurrency(t))}}const TQ=async(r,e)=>{const t=await je.getShadowGraphqlClient().query({query:W3(e?.assets?.metadata||!1),errorPolicy:"all",variables:{ids:r}});if(t.error)throw t.error;if(t.errors)throw t.errors.forEach(i=>console.error(i)),new Error("Unable to read workflows. Consult GraphQL errors.");if(t.data.workflows===void 0||t.data.workflows.length!==r.length)throw new Error(`Unable to read workflows: ${t.errors??"Length mismatch in response"}`);const n=yo(t.data.workflows);return n.forEach(i=>{i.finalizeStepConfig||(i.finalizeStepConfig={}),i.finalizeStepConfig.termsMarkdown=i.finalizeStepConfig.termsMarkdown||i.partner.termsMarkdown}),n},IQ=async(r,e)=>{const n=(await e).find(i=>i.id===r);if(!n)throw new Error(`Workflow not found: ${r}`);return n},Jb=async(r,e)=>{const t=r.map(o=>Sd.get({id:o,options:e})),n=r.filter((o,l)=>t[l]===void 0);if(n.length===0)return Promise.all(t);const i=TQ(n,e),a=n.map(o=>Sd.set({id:o,options:e},IQ(o,i))),s=t.filter(o=>o!==void 0);return await Promise.all(s.concat(a))},LD=async(r,e)=>(await Jb([r],e))[0],DQ=async r=>{const e=await je.getShadowGraphqlClient().query({query:yF,variables:{ids:r},errorPolicy:"all",fetchPolicy:"no-cache"});return e.errors&&console.error(e.errors),e.data.integrationProducts||[]};class PQ{constructor(e){this.activeIntegration=void 0,this.updateTransactionState=async t=>{try{return je.getShadowGraphqlClient().mutate({...t,mutation:R3})}catch(n){throw console.error(n),new co("Critical - Unable to synchronize workflow state with server.")}},this.options=e,this.options.applicationKey&&X4(this.options.applicationKey),console.debug("------------------------"),console.debug("Spiff Commerce Core SDK"),console.debug("Version: 41.0.3-alpha.1"),console.debug(`Application Key Provided: ${!!this.options.applicationKey}`),console.debug("------------------------")}configure(e){_s.setHubUrl(e.hubUrl),_s.setServerUrl(e.serverUrl),_s.setServicesApiUrl(e.servicesApiUrl),this.marketplaceThemeInstallId=e.marketplaceThemeInstallId,this.marketplaceThemeInstallConfigurationId=e.marketplaceThemeInstallConfigurationId,this.userPoolClientId=e.userPoolClientId,this.userPoolRegion=e.userPoolRegion,this.spiffRegion=e.spiffRegion,e.bearerAuthenticationToken&&Xk(e.bearerAuthenticationToken),this.options.applicationKey&&this.getIntegration(),this.spiffRegion&&this.userPoolRegion&&this.userPoolClientId&&Lf.init(this.spiffRegion,this.userPoolRegion,this.userPoolClientId)}getAssetManager(){return Ln}async getBetaEnabled(){return this.options.enableBetaFeatures?!0:(await this.getIntegration()).partner.beta===!0}getFlowService(){if(!J4())throw new Error("Application key required to use Flow Service.");return new DI}async getCurrencyContext(e){const n=(await this.getIntegration()).partner.currencyCode,a=await je.getShadowGraphqlClient().query({query:Z3,errorPolicy:"all",fetchPolicy:"cache-first",variables:{from:n,to:e}}),{rateFrom:s,rateTo:o}=a.data.currencyConversion;return new ND(s,o,n,e)}async getIntegration(){if(this.activeIntegration)return this.activeIntegration;if(!this.options.applicationKey)throw new Error("Cannot get current Integration without specifying an Application Key.");return this.activeIntegration=UD(this.options.applicationKey),this.activeIntegration}async canUseAddon(e){try{return(await this.getIntegration()).partner.activeAddons?.includes(e)??!1}catch(t){return console.error(t),!1}}clearCustomer(){this.customer=void 0}clearCustomerForTransaction(e){const t=xr.getMap("transactionCustomerIds");t?.has(e)&&(t.delete(e),xr.setMap("transactionCustomerIds",t))}async customerHasBundleTemplates(e){const i=(await je.getShadowGraphqlClient().query({query:_v,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:e}})).data.customer;return i.id?i.hasBundleTemplates??!1:!1}getStakeholderTypeForTransaction(e){const t=this.customer?.stakeholders?.find(n=>n.transaction?.id===e);if(t)return t.type}async getOrCreateCustomer(e){this.customer=void 0;const t=je.getShadowGraphqlClient(),i=(await t.query({query:_v,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:e}})).data.customer;if(!i.id){const o=(await t.mutate({mutation:fV,errorPolicy:"all",fetchPolicy:"no-cache",variables:{details:{emailAddress:e}}})).data?.customerCreate;if(!o)throw new Error("Unable to create customer.");return this.storeCustomer(o),this.customer=o,{customer:o,isAuthenticated:!1}}this.storeCustomer(i);const a=await this.reloadLoggedInCustomer();return{customer:this.customer||i,isAuthenticated:a}}getCustomer(){return this.customer}async reloadLoggedInCustomer(){const e=localStorage.getItem("last-refreshed-cognito-tokens"),t=localStorage.getItem("cognito-tokens"),n=localStorage.getItem("cognito-email");if(!e||!t||!n)return!1;const i=JSON.parse(t),a=new Date().getTime()/1e3;if(!i.ExpiresIn||i.ExpiresIn<a-parseInt(e)){const u=await Lf.refreshTokens();if(u?.AuthenticationResult)localStorage.setItem("last-refreshed-cognito-tokens",`${new Date().getTime()/1e3}`),i.AccessToken=u.AuthenticationResult.AccessToken,localStorage.setItem("cognito-tokens",JSON.stringify(i));else return this.logOut(),console.error("Failed to refresh tokens."),!1}const s=localStorage.getItem("customer-login-token");s&&y0(s);const l=(await je.getShadowGraphqlClient().query({query:_v,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:n}})).data.customer;return l.id?(this.customer=l,!0):(console.error("Failed to get customer."),!1)}async generateVerificationCode(e){await je.getShadowGraphqlClient().mutate({mutation:dV,variables:{emailAddress:e}}),await Lf.generateCode(e)}async verifyCode(e,t){const n=(await this.getIntegration()).partner.id||"",i=await Lf.verifyCode(e,t,n);if(i?.AuthenticationResult){localStorage.setItem("last-refreshed-cognito-tokens",`${new Date().getTime()/1e3}`),localStorage.setItem("cognito-tokens",JSON.stringify(i.AuthenticationResult)),localStorage.setItem("cognito-email",e);const s=(await je.getShadowGraphqlClient().mutate({mutation:hV,errorPolicy:"all",fetchPolicy:"no-cache",variables:{emailAddress:e,verificationCode:t}})).data?.customerVerifyCode;if(!s?.id)throw new Error("Failed to get customer.");return this.customer=s,s.loginToken&&(localStorage.setItem("customer-login-token",s.loginToken),y0(s.loginToken)),!0}else throw new Error}async logOut(){localStorage.removeItem("last-refreshed-cognito-tokens"),localStorage.removeItem("cognito-tokens"),localStorage.removeItem("cognito-email"),localStorage.removeItem("customer-login-token"),y0(""),this.clearCustomer()}async loggedInBearerToken(){const e=localStorage.getItem("last-refreshed-cognito-tokens"),t=localStorage.getItem("cognito-tokens");if(!e||!t)throw new Error("No token data in storage.");const n=JSON.parse(t),i=new Date().getTime()/1e3,a=!n?.AccessToken||xg(n.AccessToken);if(!n.ExpiresIn||n.ExpiresIn<i-parseInt(e)||a){const s=await Lf.refreshTokens();if(s?.AuthenticationResult)localStorage.setItem("last-refreshed-cognito-tokens",`${new Date().getTime()/1e3}`),n.AccessToken=s.AuthenticationResult.AccessToken,localStorage.setItem("cognito-tokens",JSON.stringify(n));else throw this.logOut(),new Error("Failed to refresh tokens.")}if(!n.AccessToken)throw new Error("No bearer token in storage.");return n.AccessToken}async getCustomerMetafields(){if(!this.customer?.id)throw new Error("Customer must be logged in before calling this function.");return(await je.getShadowGraphqlClient().query({query:pV,variables:{id:this.customer.id}})).data.metafields}async getNewBundle(e,t,n){const a=(await je.getShadowGraphqlClient().mutate({mutation:ZU(n?.graphql?.productCollection?.eagerFetchProducts||!1),variables:{collectionId:e,initialMetadata:t?Object.entries(t).map((u,c)=>({key:u[0],value:u[1]})):void 0,marketplaceThemeInstallId:this.marketplaceThemeInstallId,marketplaceThemeInstallConfigurationId:this.marketplaceThemeInstallConfigurationId},fetchPolicy:"no-cache"})).data?.bundleCreate;if(!a?.id)throw new Error("Unable to create bundle");const s=xr.getMap("bundlePartnerIds")||new Map;s.set(a.id,a.partner.id),xr.setMap("bundlePartnerIds",s);const o=xr.getMap("bundleOwnerIds")||new Map;o.set(a.id,a.bundleOwnerId),xr.setMap("bundleOwnerIds",o);const l=new SE(this,a,void 0,void 0,a.bundleOwnerId,{eagerFetchProducts:n?.graphql?.productCollection?.eagerFetchProducts});return await l.getInitializationPromise(),l}async getExistingBundle(e,t,n,i,a){const o=xr.getMap("bundleOwnerIds")?.get(e),l={};try{const g=await this.loggedInBearerToken();l.Authorization=`Bearer ${g}`}catch{const y=Object.entries(localStorage).find(([C,k])=>C.startsWith("CognitoIdentityServiceProvider")&&C.endsWith("idToken"))?.[0]||"",A=localStorage.getItem(y);A&&!xg(A)&&(l.Authorization=`Bearer ${A}`)}const u={bundleOwnerId:o,...l,...i?.graphql?.additionalHeaders},c=await je.getShadowGraphqlClient().query({query:QU(i?.graphql?.productCollection?.eagerFetchProducts||!1),variables:{id:e},fetchPolicy:"no-cache",context:{headers:u}});if(!c.data?.bundles||c.data?.bundles.length===0||!c.data?.bundles[0])throw new Error(`Unable to find bundle: ${e}`);const h=c.data?.bundles[0],f=xr.getMap("bundlePartnerIds")||new Map;f.set(h.id,h.partner.id),xr.setMap("bundlePartnerIds",f);const d=new SE(this,h,t,n,o,{additionalHeaders:i?.graphql?.additionalHeaders,eagerFetchProducts:i?.graphql?.productCollection?.eagerFetchProducts,existingGlobalPropertyState:c.data.globalPropertyState,readonly:i?.readonly},a);return await d.getInitializationPromise(),d}async duplicateBundle(e,t,n,i){const s={...await zD(e),...i?.graphql?.additionalHeaders},l=(await je.getShadowGraphqlClient().mutate({mutation:e9(),variables:{id:e,template:t,marketplaceThemeInstallId:this.marketplaceThemeInstallId,marketplaceThemeInstallConfigurationId:this.marketplaceThemeInstallConfigurationId,duplicateTransactions:n},context:{headers:s},fetchPolicy:"no-cache"})).data?.bundleDuplicate;if(!l?.id)throw new Error("Unable to duplicate bundle");const u=xr.getMap("bundlePartnerIds")||new Map;u.set(l.id,l.partner.id),xr.setMap("bundlePartnerIds",u);const c=xr.getMap("bundleOwnerIds")||new Map;return c.set(l.id,l.bundleOwnerId),xr.setMap("bundleOwnerIds",c),async()=>await this.getExistingBundle(l.id,void 0,void 0,{graphql:{productCollection:{eagerFetchProducts:i?.graphql?.productCollection?.eagerFetchProducts||!1}}})}async getBundlesForCustomer(e){if(!this.customer?.id)throw new Error("Customer not authenticated.");const{includeMetadata:t,...n}=e;return(await je.getShadowGraphqlClient().query({query:f9(t??!1),variables:{...n,id:this.customer.id},fetchPolicy:"no-cache"})).data.customerBundlesFeed}async getBundleStakeholders(){if(!this.customer)throw new Error("Customer not authenticated.");const e=await je.getShadowGraphqlClient().query({query:YU,variables:{id:this.customer.id},fetchPolicy:"no-cache"});if(!e.data?.customers||e.data.customers.length===0)throw new Error("Unable to find customer.");const n=e.data.customers[0].bundleStakeholders||[],i=xr.getMap("bundlePartnerIds")||new Map;return n.forEach(a=>{a.bundle?.id&&a.bundle.partner?.id&&i.set(a.bundle.id,a.bundle.partner.id)}),xr.setMap("bundlePartnerIds",i),n}async getWorkflowExperience(e,t){if(!e)throw new Error("getWorkflowExperience has been called without an options object! This is not supported.");const n=await this.getWorkflowExperiences([e],e.graphql),i=n[0],a=i.getWorkflow();return t&&!a&&console.error("No workflow instantiated when trying to create preview service."),t&&a&&await i.getWorkflowManager().injectIntoPreviewService(t(a)),n[0]}async getWorkflowExperiences(e,t,n,i){if(e.length===0)throw new co("No options provided!");const a=e.map((Y,X)=>({option:Y,index:X})),s=a.filter(Y=>Y.option.type==="transaction"),o=a.filter(Y=>Y.option.type==="integration"||Y.option.type==="external"||Y.option.type==="blank"),l=50,u=uA(s,l),c=uA(o,l);let h=0;const f=je.getShadowGraphqlClient(),d=async Y=>{if(Y.length===0)return[];const X=Y.map(oe=>oe.option.transactionId),J=await f.query({query:P3,variables:{ids:X},errorPolicy:"all",fetchPolicy:"no-cache"}),Q=J.data.transactions;if(h=h+Q.length,i&&i(h,s.length),Q.length!==Y.length){const oe=J.errors?.[0]?.message||"Unknown error";throw new co(`Not all transactions were found: ${oe}`)}return!this.activeIntegration&&Q[0].integrationProduct?.integration&&(this.activeIntegration=Promise.resolve(Q[0].integrationProduct.integration)),Q.map((oe,se)=>({transaction:oe,workflowId:oe.workflowId,readOnly:Y.find(he=>he.option.transactionId===oe.id)?.option.readOnly??!1,index:Y[se].index}))},g=async Y=>{if(Y.length===0)return[];const X=await f.mutate({mutation:D3,variables:{inputs:Y.map(Q=>({integrationProductId:Q.option.type==="integration"?Q.option.integrationProductId:void 0,externalIntegrationId:Q.option.type==="external"?Q.option.externalIntegrationId:void 0,externalProductId:Q.option.type==="external"?Q.option.externalProductId:void 0,workflowId:Q.option.workflowId,designName:Q.option.designName,claim:!0,quantity:Q.option.quantity,recipient:Q.option.recipient})),marketplaceThemeInstallId:this.marketplaceThemeInstallId,marketplaceThemeInstallConfigurationId:this.marketplaceThemeInstallConfigurationId},errorPolicy:"all",fetchPolicy:"no-cache"}),J=X.data?.transactionCreateMany;if(!J||J.length===0){const Q=X.errors?.[0]?.message||"Unknown error";throw new co(`Failed to create transactions: ${Q}`)}return h=h+J.length,i&&i(h,s.length),J.map((Q,oe)=>({transaction:Q,workflowId:Q.workflowId,readOnly:!1,index:Y[oe].index}))},v=(await Promise.all([...u.map(d),...c.map(g)])).flat(),y=[...new Set(v.map(Y=>Y.transaction.integrationProductId))].filter(Y=>Y!==void 0),A=[...new Set(v.map(Y=>Y.workflowId))].filter(Y=>Y!==void 0),[C,k]=await Promise.all([(async()=>y.length>0?await DQ(y):[])(),(async()=>A.length>0?await Jb(A,t):[])()]),T=new Map(C.map(Y=>[Y.id,Y])),S=new Map(k.map(Y=>[Y.id,Y])),R=v.map(async Y=>{const{transaction:X,workflowId:J,readOnly:Q,index:oe}=Y,se=J?S.get(J):void 0,he=e[oe];if(X.integrationProductId){const K=T.get(X.integrationProductId);X.integrationProduct=K,X.product=K?.product,X.integrationProduct||console.error("failed to find transaction's product")}const ye=xr.getMap("transactionOwnerIds")||new Map;!ye.get(X.id)&&X.transactionOwnerId&&(ye.set(X.id,X.transactionOwnerId),xr.setMap("transactionOwnerIds",ye));const Ue=ye.get(X.id)||void 0,Oe=new gV({onMutate:()=>({context:{transactionOwnerId:Ue,bundleOwnerId:t?.bundleOwnerId}}),onQuery:()=>({context:{transactionOwnerId:Ue,bundleOwnerId:t?.bundleOwnerId}})}),Te={workflow:se,transaction:X,singleVariantsRenderable:he?.workflowConfiguration?.singleVariantsRenderable,stateMutationFunc:Q?async()=>{throw new nn("State mutation is forbidden in read only mode!")}:async K=>this.updateTransactionState({...K,context:{transactionOwnerId:Ue,bundleOwnerId:t?.bundleOwnerId}}),graphQlClient:()=>Oe,readOnly:Q,isReloadedTransaction:he.type==="transaction"};if(he.type==="transaction"&&X.workflowState){const K=JSON.parse(X.workflowState);await iA(K),Te.reloadedState=K}else if(!Q&&he.workflowState){const K=JSON.parse(he.workflowState);await iA(K),Te.reloadedState=K}return Te.delayWorkflowStateSync=!0,{experienceOptions:Te,index:oe,options:he}}),G=(await Promise.all(R)).sort((Y,X)=>Y.index-X.index);let $=[];for(const Y of G){const{experienceOptions:X,options:J}=Y,Q=new SI(this,X);await Q.getWorkflowManager().getInitializationPromise(),n&&n(),J.type!=="transaction"&&this.customer&&await Q.attachCustomerDetails({email:this.customer.emailAddress}),$=[...$,Q],Q.getWorkflowManager().setWorkflowStateSyncEnabled(!0)}return $}storeCustomer(e){const t=xr.getMap("partnerCustomerIds")||new Map;t.set(e.partner.id,e.id),xr.setMap("partnerCustomerIds",t)}async getIntegrationProductById(e,t){const a=(await je.getShadowGraphqlClient().query({query:U3(t),variables:{ids:[e]},fetchPolicy:"no-cache",errorPolicy:"all"})).data?.integrationProducts;if(!a||a.length===0||!a[0]?.id)throw new Error("Integration product not found.");return new dA(a[0])}async getIntegrationProductFromExternalIds(e,t,n){const s=(await je.getShadowGraphqlClient().query({query:V3(n),variables:{externalProductId:t,externalIntegrationId:e},fetchPolicy:"no-cache",errorPolicy:"all"})).data?.integrationProductFromExternalIds;if(!s?.id)throw new Error("Integration product not found.");return new dA(s)}async getIntegrationProduct(e){return e.type==="integration"?this.getIntegrationProductById(e.integrationProductId):this.getIntegrationProductFromExternalIds(e.externalIntegrationId,e.externalProductId)}async getShareActionsForTransaction(e){const n=(xr.getMap("transactionOwnerIds")||new Map).get(e)||void 0,i=await je.getShadowGraphqlClient().query({query:N3,errorPolicy:"all",fetchPolicy:"no-cache",variables:{id:e},context:{transactionOwnerId:n}});if(!i.data.transactions||i.data.transactions.length!==1)throw new Error(`Failed to fetch share actions for transaction: ${e}`);return i.data.transactions[0].transactionShareActions}async placeOrder(e){const t=await je.getShadowGraphqlClient().mutate({mutation:K3,variables:{orderItems:e}});if(t.errors)throw new Error(t.errors[0].message);if(!t.data)throw new Error("Failed to create order: No order data in response.");return{id:t.data.orderCreate.id,internalId:t.data.orderCreate.internalId}}}const UD=async(r,e)=>(await je.getShadowGraphqlClient().query({query:Y3,errorPolicy:"all",fetchPolicy:"no-cache",context:{headers:{"x-application-key":r},skipIntegrationCheck:!0},variables:{themeConfigurationId:e}})).data.currentIntegration,RQ=async r=>{const t=await je.getShadowGraphqlClient().query({query:_3,errorPolicy:"all",fetchPolicy:"network-only",variables:{id:r}});if(t.data.transactions.length!==0)return t.data.transactions[0]},OQ=async(r,e)=>(await je.getShadowGraphqlClient().query({query:Q3,errorPolicy:"all",variables:{themeConfigurationId:r,themeInstallId:e}})).data?.marketplaceThemeInstallConfiguration,BQ=async r=>(await je.getShadowGraphqlClient().query({query:J3,errorPolicy:"all",variables:{id:r}})).data?.bundles?.[0]?.marketplaceThemeInstallConfiguration,MQ=async r=>(await je.getShadowGraphqlClient().query({query:X3,errorPolicy:"all",variables:{id:r}})).data?.transactions?.[0]?.marketplaceThemeInstallConfiguration;async function VD(){const r={};try{const e=await this.loggedInBearerToken();r.Authorization=`Bearer ${e}`}catch{const n=Object.entries(localStorage).find(([a,s])=>a.startsWith("CognitoIdentityServiceProvider")&&a.endsWith("idToken"))?.[0]||"",i=localStorage.getItem(n);i&&!xg(i)&&(r.Authorization=`Bearer ${i}`)}return r}async function zD(r){const t=xr.getMap("bundleOwnerIds")?.get(r),n=await VD();return{bundleOwnerId:t,...n}}async function _Q(r){const t=xr.getMap("transactionOwnerIds")?.get(r),n=await VD();return{transactionOwnerId:t,...n}}const NQ=async r=>{const e=await zD(r),t=await je.getShadowGraphqlClient().mutate({mutation:b9,errorPolicy:"all",fetchPolicy:"no-cache",variables:{id:r},context:{headers:e}});if(t.data?.bundleDelete!==r)throw new Error(`Failed to delete bundle: ${t.errors}`)},LQ=async r=>{const e=await _Q(r),t=await je.getShadowGraphqlClient().mutate({mutation:w9,errorPolicy:"all",fetchPolicy:"no-cache",variables:{ids:[r]},context:{headers:e}});if(!t.data?.transactions||t.data.transactions.length!==1||t.data.transactions[0].id!==r)throw new Error(`Failed to find transaction to read bundle id: ${JSON.stringify(t.errors)}`);return t.data.transactions[0].bundle?.id};function HD(r,e,t,n){const i=t.width*r.zoom,a=t.height*r.zoom;if(n){const s=Math.max(e.width/t.width,e.height/t.height),o=Math.max(s,r.zoom),l=t.width*o,u=t.height*o;return{...r,x:Lp(r.x,e.width-l,0),y:Lp(r.y,e.height-u,0),zoom:o}}return{...r,x:Lp(r.x,-i,e.width),y:Lp(r.y,-a,e.height)}}function Lp(r,e,t){return Math.min(Math.max(r,e),t)}class jD{constructor(e,t){this.minZoomScale=[.03],this.maxZoomScale=[20],this._debouncedUpdateFrameOffsets=xI(this.updateFrameOffsets,200),this.targetElements=[],this.onFrameDataChangeListeners=[],this.onZoomChangeListeners=[],this.onRotationChangeListeners=[],this.forceImageCover=e,this.initialZoom=t,this.thresholdSettings={useThreshold:!1,invertThreshold:!1,threshold:128,thresholdSaturation:.5}}connectWorkflowManager(e,t){t&&e.addStepSpecificStorageCallback(async n=>{if(n){const i=n;if(i.currentFrameSources){let a=!1;for(let s=0;s<i.currentFrameSources.length;s++){const o=i.currentFrameSources[s],l=await ah(o),u=this.frameData?this.frameData[s]:void 0;Ed(l,u)||(this.frameData||(this.frameData=new Array(i.currentFrameSources.length)),this.frameData[s]=l,a=!0)}a&&(this.onFrameDataChangeListeners.forEach(s=>s(this.frameData)),this.frameData&&this.imageData&&(this.recalculateOffsets(this.imageData),this.updateOffsets(this.offsets),this.recalculateZoomLimits(this.imageData,this.frameData)))}}},t),this.workflowManager=e,this.stepName=t}setTargetElements(e){this.targetElements=e}getFrameData(){return this.frameData}setFrameData(e){if(!e){this.frameData=void 0;return}e.forEach((t,n)=>{const i=Vu.get(t);i&&(this.frameData||(this.frameData=new Array(e.length)),this.frameData[n]=i)})}getImageData(){return this.imageData}getImageSrc(){if(this.imageData){if(this.imageData.svg){const e=Gg(this.imageData.svg,this.imageData.colors||{},!1);return Hg(e)}return this.imageData.src}}getOffsets(){return this.offsets}setOffsets(e){this.offsets=e}setZoom(e,t,n,i){if(this.imageData&&this.offsets&&this.frameData){(!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length));const a=this.frameData.map((s,o)=>{const l=(t[o]-this.offsets[o].x)/this.offsets[o].zoom,u=(n[o]-this.offsets[o].y)/this.offsets[o].zoom,c=t[o]-l*e[o],h=n[o]-u*e[o];return{x:c,y:h,zoom:this.imageData.width*e[o]/this.imageData.width,rotation:this.offsets[o].rotation}});this.updateOffsets(a,i),this.onZoomChangeListeners.forEach(s=>s(e))}}setRotation(e,t){if(this.imageData&&this.offsets&&this.frameData){(!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length));const n=this.frameData.map((i,a)=>({...this.offsets[a],rotation:e[a]}));this.updateOffsets(n,t),this.onRotationChangeListeners.forEach(i=>i(e))}}setPatternData(e,t=!0){this.imageData=e,e&&this.frameData&&((t||!this.offsets)&&this.recalculateOffsets(e,t),this.updateOffsets(this.offsets,void 0,!0)),this.imageData&&this.frameData&&this.recalculateZoomLimits(this.imageData,this.frameData)}updateOffsets(e,t,n){const i=this.imageData;if(!i||!this.frameData)return;if(this.frameData.length!==e.length)throw new nn("Frame data and offsets are not the same length. This is a bug. Please report it.");if(!this.offsets.some((s,o)=>!(e[o].x===s.x&&e[o].y===s.y&&e[o].zoom===s.zoom&&e[o].rotation===s.rotation))&&!n){t&&t();return}(!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length)),this.frameData.forEach((s,o)=>{this.offsets[o]=HD(e[o],s,this.imageData,this.forceImageCover)}),this._debouncedUpdateFrameOffsets(this.offsets,i,this.frameData,this.thresholdSettings,t)}getThresholdSettings(){return this.thresholdSettings}setThresholdSettings(e){this.thresholdSettings=e,this.imageData&&this.frameData&&this._debouncedUpdateFrameOffsets(this.offsets,this.imageData,this.frameData,e)}onFrameDataChanged(e){e(this.frameData),this.onFrameDataChangeListeners.push(e)}onZoom(e){this.onZoomChangeListeners.push(e)}onRotation(e){this.onRotationChangeListeners.push(e)}updateFrameOffsets(e,t,n,i,a){if(!n||n.length===0||n.some(l=>!l))throw new nn("Frame data not set. This is a bug");if(!this.workflowManager)throw new nn("No workflow manager set, cannot update offsets.");const s=this.workflowManager.getRegionElements(this.stepName||""),o=this.workflowManager.getCommandDispatcher();this.targetElements.forEach((l,u)=>{let c=s.find(h=>h.id===l)?.regionIndex??u;c>=e.length&&(c=u);try{o(new On([new AL(l,t,e[c]),new bL(l,i.useThreshold,i.invertThreshold,i.threshold,i.thresholdSaturation)]))}catch{}}),this.stepName&&this.workflowManager.updateStorage(this.stepName,{frameOffsetsList:e}),a&&a()}recalculateZoomLimits(e,t){(this.minZoomScale.length!==t.length||this.maxZoomScale.length!==t.length)&&(this.minZoomScale=new Array(t.length),this.maxZoomScale=new Array(t.length)),t.forEach((n,i)=>{const a=Math.max(n.width/e.width,n.height/e.height);this.forceImageCover?(this.minZoomScale[i]=a,this.maxZoomScale[i]=a*2.5):(this.minZoomScale[i]=a/10,this.maxZoomScale[i]=a*2.5)})}recalculateOffsets(e,t=!0){this.frameData&&((!this.offsets||this.offsets.length!==this.frameData.length)&&(this.offsets=new Array(this.frameData.length)),this.frameData.forEach((n,i)=>{const a=t?0:this.offsets[i]?.rotation||0;this.offsets[i]={...b1(e,n,this.initialZoom&&!this.forceImageCover?{scale:this.initialZoom}:void 0,this.forceImageCover),rotation:a}}),this._debouncedUpdateFrameOffsets(this.offsets,e,this.frameData,this.thresholdSettings))}}class UQ{traversableScenes(){throw new Error("Method not implemented.")}updateRecipient(e,t,n,i,a,s,o,l,u,c,h,f,d,g,v,y,A){throw new Error("Method not implemented.")}approveTransaction(e){throw new Error("Method not implemented.")}rejectTransaction(e){throw new Error("Method not implemented.")}getClient(){return this.client??{}}getWorkflowExperience(){return{}}setClient(e){this.client=e}getInitializationPromise(){return Promise.resolve()}isInitialized(){return!0}getInformationResults(){return[]}async reset(){}updateStateWithServer(e){}async outstandingRequestsPromise(){}async updateStateWithServerImmediate(e){}addPoller(e){}addConfirmCallback(e){}addEditedCallback(e){}addElementsCallback(e){}addInformationResultCallback(e){}addInitCallback(e){}addMakingAdjustmentsCallback(e){}addMandatoryCallback(e){}addMetadataCallback(e){}addSelectionCallback(e){}addStepSpecificStorageCallback(e,t){}addStorageCallback(e){}getCommandDispatcher(){return e=>{}}getLayouts(){return[]}getLayoutPreviewService(){return{getAll:()=>new Map}}getPreviewService(){}getModelContainer(){}getRegionElements(e){return[]}getSerializedStep(e,t){}getStepSpecificServices(e){}getTransaction(){return{id:""}}getTransactionCustomer(){}setTransactionCustomer(){}setTransactionCustomerDetails(){}getInitialOptionIds(){return new Promise(()=>new Set)}getWorkflow(){return{id:"",name:"",panels:[],steps:[],showModelOnFinishStep:!1,allowProofDownload:!1,introduction:"",stepGroups:[]}}markStepsAsInitialised(e){}markUpdateCompleted(e){}markUpdatePending(){return"123"}getWorkflowSelections(){return{}}getStepSelections(){return{}}setCurrentAdjustingStepId(e){}setEditedStatus(e,t){}setInformationResults(e){}setMandatoryFulfilled(e,t){}async setSelectionsAndElements(e,t,n){}toggleDesignConfirmed(){}updateMetadata(e,t){}async updateStorage(e,t){}injectIntoPreviewService(e){return Promise.resolve()}ejectFromPreviewService(){}setWorkflowStateSyncEnabled(e){}async updateTransactionShareActions(){}addValidationCallback(e){}setStepError(e,t,n){}getStepErrors(e){}getValidationErrors(){return{steps:new Map}}async updateTransactionStakeholders(){}getStepTags(e){return[]}}var GD=(r=>(r.SelectFrame="SelectFrame",r.SelectImage="SelectImage",r.Position="Position",r))(GD||{}),$D=(r=>(r.Original="original",r.BackgroundRemoved="backgroundRemoved",r.Optimized="optimized",r))($D||{});class qD extends Wi{constructor(e,t,n){super(e,t,n);const i=t.data;this.frameService=new jD(i.forceImageCover,i.initialZoomLevel),this.frameService.connectWorkflowManager(e,t.stepName)}selectVariant(e){const t=this.manager.getRegionElements(this.step.stepName);return uo.selectVariant(this.step,e.getResource(),t,this.manager,n=>this.setUpdateState(n))}onFrameDataChanged(e){this.frameService&&this.frameService.onFrameDataChanged(t=>{t&&e(t)})}async selectImage(e,t=!0,n=!0){await uo.selectImage(this.step,e,this.manager,n),t&&this.manager.updateStorage(this.step.stepName,{framePatternData:{originalAssetKey:e.key,backgroundRemovedAssetKey:void 0,vectorizedAssetKey:void 0,enhancedAssetKey:void 0,useOriginalAsset:void 0}})}async canUseAdvancedImageManipulation(){return this.manager.getClient().canUseAddon(Ng.AdvancedImageManipulation)}async canRemoveBackground(){return await this.canUseAdvancedImageManipulation()&&this.hasOriginalImageSelection()&&!!this.frameService?.getImageData()?.src&&!this.frameService?.getImageData()?.svg}async removeBackgroundFromImageSelection(e=!0){if(!await this.canUseAdvancedImageManipulation())throw new Error("The current Integration does not have access to the Background Remover. Please call canUseAdvancedImageManipulation to ensure you disable this feature when appropriate.");const t=await this.getOriginalImageSelection();if(!t)throw new Error("You must supply an image selection before attempting to remove the background.");const n=await Ln.removeBackgroundFromAsset(t);e&&await uo.selectImage(this.step,n,this.manager,!1);const i=this.getFrameStepStorage()?.framePatternData||{};return this.manager.updateStorage(this.step.stepName,{framePatternData:{...i,backgroundRemovedAssetKey:n.key,useOriginalAsset:!e}}),n}async vectorize(e,t=void 0){const n=e??await this.getOriginalImageSelection();if(!n)throw new Error("You must supply an image selection before attempting to vectorize the image.");const i=await Ln.vectorizeAsset(n,t);await this.selectImage(i,!1);const a=this.getFrameStepStorage()?.framePatternData||{};return this.manager.updateStorage(this.step.stepName,{framePatternData:{...a,vectorizedAssetKey:i.key,useOriginalAsset:!1}}),i}async enhanceWithAI(e,t){const n=e??await this.getOriginalImageSelection();if(!n)throw new Error("You must supply an image selection before attempting to enhance the image with AI.");const i=await Ln.enhanceWithAI(n,t);await this.selectImage(i,!1);const a=this.getFrameStepStorage()?.framePatternData||{};return this.manager.updateStorage(this.step.stepName,{framePatternData:{originalAssetKey:a.originalAssetKey,backgroundRemovedAssetKey:a.backgroundRemovedAssetKey,vectorizedAssetKey:a.vectorizedAssetKey,enhancedAssetKey:i.key,useOriginalAsset:!1}}),i}async getBackgroundRemovedImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.backgroundRemovedAssetKey;if(e)return Ln.getLocalOrFromServer(e)}async getVectorizedImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.vectorizedAssetKey;if(e)return Ln.getLocalOrFromServer(e)}async getEnhancedImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.enhancedAssetKey;if(e)return Ln.getLocalOrFromServer(e)}hasOriginalImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.originalAssetKey}hasBackgroundRemovedImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.backgroundRemovedAssetKey}hasVectorizedImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.vectorizedAssetKey}hasEnhancedImageSelection(){return!!this.getFrameStepStorage()?.framePatternData?.enhancedAssetKey}async changeColors(e){await uo.changeColors(this.step,this.manager,e)}getImageData(){if(this.frameService)return this.frameService.getImageData()}async getColorOption(){return await ft.ensureFullOption(this.step.data.colorOption)}getAvailableColors(){return this.step.data.colorPickerEnabled?uo.availableColors(this.step,this.manager):Promise.resolve([])}isColorPickerEnabled(){return this.step.data.colorPickerEnabled??!1}async getOriginalImageColors(){const e=this.getImageData();return e?.svg?(await Ba(e.svg)).colors:void 0}async mergeColors(e,t,n){const i=this.frameService.getImageData();if(!i?.svg||!i.colors)throw new Error("Cannot merge colors on non-SVG image or image without color information");const{svg:a,colors:s}=dF(i.svg,i.colors,e,t,n);this.frameService.setPatternData({...i,svg:a,colors:s},!1),this.manager.updateStorage(this.step.stepName,{colors:s})}async unmergeColors(e,t,n,i){const a=this.frameService.getImageData();if(!a?.svg||!a.colors)throw new Error("Cannot unmerge colors on non-SVG image or image without color information");this.frameService.setPatternData({...a,svg:i,colors:n},!1),this.manager.updateStorage(this.step.stepName,{colors:n})}getShouldVectorize(){return this.step.data.shouldVectorize??!1}getVectorizeMaxColors(){return this.step.data.vectorizeMaxColors}getMinimumPixelThresholdForOptimization(){return this.step.data.vectorizationMinimumPixelThreshold}getMaxAllowedColors(){return this.step.data.maxColors}getUniqueColorCount(){return uo.getUniqueColorCount(this.step,this.manager)}getCurrentFrameStep(e,t,n,i){return i&&i.length>1&&e===void 0?"SelectFrame":t||n||this.getImageData()?"Position":"SelectImage"}getFrameService(){return this.frameService}hasOverlayImageKey(){return this.step.data.overlayImageKey}hasOverlayImageUrl(){return this.step.data.overlayImageUrl}getWhitelistedExtensions(){return[...this.step.data.whitelistedExtensions,...this.step.data.whitelistedExtensions.includes(".jpg")?[".jpeg"]:[]]}async getOriginalImageSelection(){const e=this.getFrameStepStorage()?.framePatternData?.originalAssetKey;if(e)return Ln.getLocalOrFromServer(e)}getCurrentImageState(){const e=this.getFrameStepStorage()?.framePatternData;return e?e.vectorizedAssetKey&&!e.useOriginalAsset?"optimized":e.useOriginalAsset!==!1?"original":"backgroundRemoved":"original"}async setImageState(e){const t=this.getFrameStepStorage()?.framePatternData||{};let n,i;switch(e){case"original":if(n=await this.getOriginalImageSelection(),!n)throw new Error("No original image available");i=!0;break;case"backgroundRemoved":if(n=await this.getBackgroundRemovedImageSelection(),!n)throw new Error("No background-removed image available. Call removeBackgroundFromImageSelection first.");i=!1;break;case"optimized":if(n=await this.getVectorizedImageSelection(),!n)throw new Error("No optimized image available. Call vectorize first.");i=!1;break}await this.selectImage(n,!1,!0),this.manager.updateStorage(this.step.stepName,{framePatternData:{...t,useOriginalAsset:i}})}getUseOriginalImageSelection(){return this.getFrameStepStorage()?.framePatternData?.useOriginalAsset??!1}async setUseOriginalImageSelection(e){const t=this.getFrameStepStorage()?.framePatternData||{};if(t.useOriginalAsset===e)return;const n=await this.getOriginalImageSelection();if(!n)throw new Error("You must provide an image selection before calling setUseOriginalImageSelection");if(e)await this.selectImage(n,!1,!1);else{const i=await this.getBackgroundRemovedImageSelection();if(!i)throw new Error("You must call removeBackgroundFromImageSelection before attempting to apply the image.");await this.selectImage(i,!1,!1)}this.manager.updateStorage(this.step.stepName,{framePatternData:{...t,useOriginalAsset:e}})}getFrameStepStorage(){return this.manager.getStepStorage(this.step.stepName)}isVariantCategoriesEnabled(){return this.step.data.enableVariantCategories??!1}}const VQ=ke`
2817
2817
  query GetLoggedInCustomer($email: String!) {
2818
2818
  customer(emailAddress: $email) {
2819
2819
  id
@@ -3016,4 +3016,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
3016
3016
  }
3017
3017
  }
3018
3018
  `,mY=async r=>(await je.getShadowGraphqlClient().query({query:gY,variables:{ids:r}})).data.integrationProducts;exports.AddonHandle=Ng;exports.AddressValidationJobStatus=YD;exports.AddressValidationResultConfirmationLevel=QD;exports.AddressValidationStatus=HA;exports.ArrayInput=cV;exports.AspectType=jn;exports.AssetNotFoundError=Eo;exports.AssetType=bd;exports.BringForwardCommand=EL;exports.BringToBackCommand=SL;exports.BringToFrontCommand=xL;exports.BundleDesignCreationCartAddMode=Nk;exports.CanvasCommand=Tn;exports.CollectionProduct=Yf;exports.ColorOptionGlobalPropertyHandle=cA;exports.CommandContext=$T;exports.ConversionDataType=nd;exports.CreateElementCommand=ai;exports.CreateLayoutCommand=x1;exports.CurrencyContext=ND;exports.CurrencyService=_D;exports.DeleteElementCommand=Nl;exports.DigitalContentStepHandle=bI;exports.FileUploadGlobalPropertyHandle=EI;exports.FlowExecutionNodeResult=Xf;exports.FlowExecutionResult=PI;exports.FlowService=DI;exports.FontAlignmentCommand=JT;exports.FontColorCommand=YT;exports.FontSizeCommand=XT;exports.FontSourceCommand=aA;exports.FrameService=jD;exports.FrameStep=GD;exports.FrameStepHandle=qD;exports.GlobalPropertyHandle=rm;exports.GroupCommand=On;exports.IllustrationStepHandle=dI;exports.ImageState=$D;exports.InformationMessageType=sh;exports.InformationStepHandle=AI;exports.IntegrationProduct=dA;exports.IntegrationType=Uk;exports.LayoutElementFactory=gL;exports.LayoutElementType=Zt;exports.LayoutNotFoundError=Ai;exports.LayoutRenderingPurpose=nc;exports.MaterialStepHandle=hI;exports.MisconfigurationError=os;exports.MockWorkflowManager=UQ;exports.ModelStepHandle=pI;exports.ModuleStepHandle=wI;exports.MoveCommand=mL;exports.ObjectInput=M1;exports.ObjectInputType=RI;exports.OptionGlobalPropertyHandle=R1;exports.OptionNotFoundError=wd;exports.ParseError=wl;exports.PictureStepHandle=gI;exports.ProductCameraRig=Vk;exports.ProductCollection=O1;exports.ProductCollectionProductSortKey=II;exports.ProductWorkflow=Yu;exports.PromiseQueue=Xg;exports.QuestionStepHandle=mI;exports.QueueablePromise=Yg;exports.ResizeCommand=yL;exports.ResourceNotFoundError=ic;exports.RotateCommand=vL;exports.ScaleAxis=gi;exports.SendBackwardsCommand=kL;exports.ShapeStepHandle=vI;exports.ShareActionType=Lk;exports.SpiffCommerceClient=PQ;exports.StakeholderType=jA;exports.StepAspectType=_k;exports.StepHandle=Wi;exports.StepType=Je;exports.TextAlgorithm=Rl;exports.TextChangeCommand=KT;exports.TextGlobalPropertyHandle=kI;exports.TextInput=uV;exports.TextStepHandle=yI;exports.UnhandledBehaviorError=nn;exports.UnitOfMeasurement=zk;exports.UpdateImageSourceCommand=wL;exports.Variant=Pa;exports.WorkflowExperienceEventType=Sg;exports.WorkflowExperienceImpl=SI;exports.amtChannelsForAspect=FI;exports.assetConfigurationDeleteMutation=rM;exports.assetConfigurationUpdateMutation=tM;exports.assetConfigurationsQuery=eM;exports.assetService=Ln;exports.browserColorToHex=lF;exports.bundleEmailMutation=C9;exports.cmPerPixel=W_;exports.currentDirection=G_;exports.dataUrlFromExternalUrl=L4;exports.deleteBundle=NQ;exports.designService=eg;exports.determineCorrectFontSizeAndLines=od;exports.digitalContentStepService=E1;exports.domParser=cs;exports.duplicateBundle=XQ;exports.duplicateTransaction=JQ;exports.fetchAsString=ia;exports.findAngle=N_;exports.findElement=Un;exports.findPmsColors=a3;exports.frameDataCache=Vu;exports.frameStepService=uo;exports.fromUtf8=Dl;exports.generate=Ar;exports.generateCommands=uI;exports.generateSVGWithUnknownColors=Ba;exports.generateStateFromDesignInputSteps=HU;exports.getAddressValidationJobs=fY;exports.getAssetsForProductImagesQuery=nM;exports.getAttributesFromArrayBuffer=Wd;exports.getAxisAlignedBoundingBox=__;exports.getBoundedOffsets=HD;exports.getBundleIdForTransaction=LQ;exports.getBundleThemeConfiguration=BQ;exports.getCustomer=KQ;exports.getCustomerBundles=ZQ;exports.getElementVertices=$_;exports.getFrameData=ah;exports.getGlobalPropertyStateForBundle=qU;exports.getIntegration=UD;exports.getIntegrationProducts=mY;exports.getNEPoint=H_;exports.getNWPoint=z_;exports.getOrderedTransactions=rY;exports.getOverrideThemeConfiguration=OQ;exports.getPointOfRotation=V_;exports.getProductCollections=nV;exports.getSEPoint=j_;exports.getSvgElement=Zg;exports.getTemplateBundles=iY;exports.getTemplateTransactions=nY;exports.getTransaction=RQ;exports.getTransactionThemeConfiguration=MQ;exports.getTransactionsForBundle=eY;exports.getTransformedAssetURL=$g;exports.getTrueCoordinates=U_;exports.getUnorderedTransactions=tY;exports.getValidationJobsForWorkflowExperiences=cY;exports.getWorkflow=LD;exports.getWorkflows=Jb;exports.graphQlManager=je;exports.illustrationStepService=sd;exports.isCloseToValue=L_;exports.loadFont=_l;exports.matchHexToPms=r3;exports.materialStepService=k1;exports.mergeColorClasses=dF;exports.metafieldManager=Eg;exports.mmPerPixel=q_;exports.modelStepService=F1;exports.modifySVGColors=Gg;exports.moduleStepService=T1;exports.nameBundle=QQ;exports.nameTransaction=YQ;exports.optionService=ft;exports.outlineFontsInSvg=S7;exports.overrideWorkflowExperienceRecipientAddress=pY;exports.patternImageDataCache=Bs;exports.persistenceService=xr;exports.pictureStepService=I1;exports.pmsToRgb=t3;exports.promiseCache=Sd;exports.questionStepService=D1;exports.registerFetchImplementation=O4;exports.registerWindowImplementation=R4;exports.rehydrateSerializedLayout=iA;exports.rgbToPms=oF;exports.rotateAroundPoint=Wf;exports.sanitizeSvgTree=jg;exports.setBearerAuthenticationToken=Xk;exports.setCanvasModule=$A;exports.shapeStepService=zu;exports.shortenUrl=iI;exports.spiffCoreConfiguration=_s;exports.stepAspectValuesToDesignInputSteps=zU;exports.svgColorValueToDefinition=Vy;exports.svgStringDimensions=C1;exports.svgToDataUrl=Hg;exports.textStepService=ui;exports.toUtf8=im;exports.toast=sI;exports.validateWorkflowExperienceRecipient=dY;exports.validateWorkflowExperienceRecipients=hY;exports.xmlSerializer=Ro;
3019
- //# sourceMappingURL=index-BcOOjH1M.cjs.map
3019
+ //# sourceMappingURL=index-CCjbiG1M.cjs.map