@graffiti-garden/implementation-decentralized 0.0.9 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/1-services/1-authorization.d.ts.map +1 -1
- package/dist/1-services/2-dids.d.ts +1 -3
- package/dist/1-services/2-dids.d.ts.map +1 -1
- package/dist/1-services/3-storage-buckets.d.ts.map +1 -1
- package/dist/1-services/4-inboxes.d.ts.map +1 -1
- package/dist/1-services/utilities.d.ts.map +1 -1
- package/dist/2-primitives/1-string-encoding.d.ts.map +1 -1
- package/dist/2-primitives/2-content-addresses.d.ts.map +1 -1
- package/dist/2-primitives/3-channel-attestations.d.ts.map +1 -1
- package/dist/2-primitives/4-allowed-attestations.d.ts.map +1 -1
- package/dist/3-protocol/1-sessions.d.ts.map +1 -1
- package/dist/3-protocol/2-handles.d.ts.map +1 -1
- package/dist/3-protocol/3-object-encoding.d.ts.map +1 -1
- package/dist/3-protocol/4-graffiti.d.ts.map +1 -1
- package/dist/3-protocol/browser-storage.d.ts +4 -0
- package/dist/3-protocol/browser-storage.d.ts.map +1 -0
- package/dist/browser/ajv-LGNUXWV5.js +9 -0
- package/dist/browser/ajv-LGNUXWV5.js.map +7 -0
- package/dist/browser/{build-BXWPS7VK.js → build-DM3HADDZ.js} +2 -2
- package/dist/browser/chunk-O4MIY67H.js +2 -0
- package/dist/browser/{graffiti-KV3G3O72-URO7SJIJ.js → graffiti-KV3G3O72-TAZN6KIP.js} +2 -2
- package/dist/browser/index.js +13 -10
- package/dist/browser/index.js.map +4 -4
- package/dist/browser/{login-dialog.html-VTDKJZBG.js → login-dialog.html-E6VRKMXH.js} +2 -2
- package/dist/browser/{rock-salt-LI7DAH66-KPFEBIBO.js → rock-salt-LI7DAH66-TZP5ZWGV.js} +2 -2
- package/dist/browser/{style-BOBMBTYJ-ORUSIJTZ.js → style-BOBMBTYJ-GXWKT5M3.js} +2 -2
- package/dist/cjs/1-services/2-dids.js +4 -1
- package/dist/cjs/1-services/2-dids.js.map +2 -2
- package/dist/cjs/3-protocol/1-sessions.js +6 -6
- package/dist/cjs/3-protocol/1-sessions.js.map +2 -2
- package/dist/cjs/3-protocol/2-handles.js +1 -0
- package/dist/cjs/3-protocol/2-handles.js.map +1 -1
- package/dist/cjs/3-protocol/3-object-encoding.js +1 -0
- package/dist/cjs/3-protocol/3-object-encoding.js.map +1 -1
- package/dist/cjs/3-protocol/browser-storage.js +59 -0
- package/dist/cjs/3-protocol/browser-storage.js.map +7 -0
- package/dist/esm/1-services/2-dids.js +4 -1
- package/dist/esm/1-services/2-dids.js.map +2 -2
- package/dist/esm/3-protocol/1-sessions.js +10 -6
- package/dist/esm/3-protocol/1-sessions.js.map +2 -2
- package/dist/esm/3-protocol/2-handles.js +1 -0
- package/dist/esm/3-protocol/2-handles.js.map +1 -1
- package/dist/esm/3-protocol/3-object-encoding.js +1 -0
- package/dist/esm/3-protocol/3-object-encoding.js.map +1 -1
- package/dist/esm/3-protocol/browser-storage.js +29 -0
- package/dist/esm/3-protocol/browser-storage.js.map +7 -0
- package/dist/index.d.ts.map +1 -1
- package/package.json +12 -10
- package/src/1-services/2-dids.ts +6 -3
- package/src/3-protocol/1-sessions.ts +9 -6
- package/src/3-protocol/browser-storage.ts +37 -0
- package/dist/browser/ajv-U35FOJ27.js +0 -9
- package/dist/browser/ajv-U35FOJ27.js.map +0 -7
- package/dist/browser/chunk-RFBBAUMM.js +0 -2
- /package/dist/browser/{build-BXWPS7VK.js.map → build-DM3HADDZ.js.map} +0 -0
- /package/dist/browser/{chunk-RFBBAUMM.js.map → chunk-O4MIY67H.js.map} +0 -0
- /package/dist/browser/{graffiti-KV3G3O72-URO7SJIJ.js.map → graffiti-KV3G3O72-TAZN6KIP.js.map} +0 -0
- /package/dist/browser/{login-dialog.html-VTDKJZBG.js.map → login-dialog.html-E6VRKMXH.js.map} +0 -0
- /package/dist/browser/{rock-salt-LI7DAH66-KPFEBIBO.js.map → rock-salt-LI7DAH66-TZP5ZWGV.js.map} +0 -0
- /package/dist/browser/{style-BOBMBTYJ-ORUSIJTZ.js.map → style-BOBMBTYJ-GXWKT5M3.js.map} +0 -0
package/dist/browser/index.js
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
|
-
import{a as
|
|
2
|
-
`)===0?Z.substr(1,Z.length):Z}).forEach(function(Z){var q=Z.split(":"),z=q.shift().trim();if(z){var gt=q.join(":").trim();try{w.append(z,gt)}catch(Te){console.warn("Response "+Te.message)}}}),w}A.call(x.prototype);function B(h,w){if(!(this instanceof B))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(w||(w={}),this.type="default",this.status=w.status===void 0?200:w.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=w.statusText===void 0?"":""+w.statusText,this.headers=new d(w.headers),this.url=w.url||"",this._initBody(h)}A.call(B.prototype),B.prototype.clone=function(){return new B(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new d(this.headers),url:this.url})},B.error=function(){var h=new B(null,{status:200,statusText:""});return h.ok=!1,h.status=0,h.type="error",h};var ie=[301,302,303,307,308];B.redirect=function(h,w){if(ie.indexOf(w)===-1)throw new RangeError("Invalid status code");return new B(null,{status:w,headers:{location:h}})},n.DOMException=r.DOMException;try{new n.DOMException}catch{n.DOMException=function(w,O){this.message=w,this.name=O;var Z=Error(w);this.stack=Z.stack},n.DOMException.prototype=Object.create(Error.prototype),n.DOMException.prototype.constructor=n.DOMException}function Ae(h,w){return new Promise(function(O,Z){var q=new x(h,w);if(q.signal&&q.signal.aborted)return Z(new n.DOMException("Aborted","AbortError"));var z=new XMLHttpRequest;function gt(){z.abort()}z.onload=function(){var ne={statusText:z.statusText,headers:M(z.getAllResponseHeaders()||"")};q.url.indexOf("file://")===0&&(z.status<200||z.status>599)?ne.status=200:ne.status=z.status,ne.url="responseURL"in z?z.responseURL:ne.headers.get("X-Request-URL");var ce="response"in z?z.response:z.responseText;setTimeout(function(){O(new B(ce,ne))},0)},z.onerror=function(){setTimeout(function(){Z(new TypeError("Network request failed"))},0)},z.ontimeout=function(){setTimeout(function(){Z(new TypeError("Network request timed out"))},0)},z.onabort=function(){setTimeout(function(){Z(new n.DOMException("Aborted","AbortError"))},0)};function Te(ne){try{return ne===""&&r.location.href?r.location.href:ne}catch{return ne}}if(z.open(q.method,Te(q.url),!0),q.credentials==="include"?z.withCredentials=!0:q.credentials==="omit"&&(z.withCredentials=!1),"responseType"in z&&(o.blob?z.responseType="blob":o.arrayBuffer&&(z.responseType="arraybuffer")),w&&typeof w.headers=="object"&&!(w.headers instanceof d||r.Headers&&w.headers instanceof r.Headers)){var yn=[];Object.getOwnPropertyNames(w.headers).forEach(function(ne){yn.push(c(ne)),z.setRequestHeader(ne,u(w.headers[ne]))}),q.headers.forEach(function(ne,ce){yn.indexOf(ce)===-1&&z.setRequestHeader(ce,ne)})}else q.headers.forEach(function(ne,ce){z.setRequestHeader(ce,ne)});q.signal&&(q.signal.addEventListener("abort",gt),z.onreadystatechange=function(){z.readyState===4&&q.signal.removeEventListener("abort",gt)}),z.send(typeof q._bodyInit>"u"?null:q._bodyInit)})}return Ae.polyfill=!0,r.fetch||(r.fetch=Ae,r.Headers=d,r.Request=x,r.Response=B),n.Headers=d,n.Request=x,n.Response=B,n.fetch=Ae,n})({})})(po);po.fetch.ponyfill=!0;delete po.fetch.polyfill;var on=fo.fetch?fo:po;ft=on.fetch;ft.default=on.fetch;ft.fetch=on.fetch;ft.Headers=on.Headers;ft.Request=on.Request;ft.Response=on.Response;Rl.exports=ft});var sf={type:"object",properties:{value:{type:"object"},channels:{type:"array",items:{type:"string"}},allowed:{type:"array",items:{type:"string"},nullable:!0},url:{type:"string"},actor:{type:"string"}},additionalProperties:!1,required:["value","channels","actor","url"]},Hy={...sf,required:["value","channels"]};var st=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorForbidden",Object.setPrototypeOf(this,t.prototype)}},Q=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorNotFound",Object.setPrototypeOf(this,t.prototype)}},Dt=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorInvalidSchema",Object.setPrototypeOf(this,t.prototype)}},hr=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorSchemaMismatch",Object.setPrototypeOf(this,t.prototype)}},jt=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorTooLarge",Object.setPrototypeOf(this,t.prototype)}},gr=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorNotAcceptable",Object.setPrototypeOf(this,t.prototype)}},De=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorCursorExpired",Object.setPrototypeOf(this,t.prototype)}};function ai(t){return typeof t=="string"?t:t.url}function si(t,e,n){if(n===t.actor)return t;let r=t.allowed&&n?[n]:void 0,o=t.channels.filter(i=>e.includes(i));return{...t,...r?{allowed:r}:{},channels:o}}function _s(t,e){let[n,r]=t.toLowerCase().split(";")[0].split("/");return!n||!r?!1:e.some(o=>{let[i,a]=o.toLowerCase().split(";")[0].split("/");return!i||!a?!1:(i===n||i==="*")&&(a===r||a==="*")})}var ii;async function yr(t){if(!ii){let{default:e}=await import("./ajv-U35FOJ27.js");ii=new e({strict:!1})}try{return ii.compile(t)}catch(e){throw new Dt(e instanceof Error?e.message:String(e))}}var cf=Object.freeze({status:"aborted"});function P(t,e,n){function r(s,c){if(s._zod||Object.defineProperty(s,"_zod",{value:{def:c,constr:a,traits:new Set},enumerable:!1}),s._zod.traits.has(t))return;s._zod.traits.add(t),e(s,c);let u=a.prototype,l=Object.keys(u);for(let d=0;d<l.length;d++){let p=l[d];p in s||(s[p]=u[p].bind(s))}}let o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:t});function a(s){var c;let u=n?.Parent?new i:this;r(u,s),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(a,"init",{value:r}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>n?.Parent&&s instanceof n.Parent?!0:s?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var Ye=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};var ci={};function Qe(t){return t&&Object.assign(ci,t),ci}function li(t){let e=Object.values(t).filter(r=>typeof r=="number");return Object.entries(t).filter(([r,o])=>e.indexOf(+r)===-1).map(([r,o])=>o)}function $s(t,e){return typeof e=="bigint"?e.toString():e}function di(t){return{get value(){{let n=t();return Object.defineProperty(this,"value",{value:n}),n}throw new Error("cached value already set")}}}function wr(t){let e=t.startsWith("^")?1:0,n=t.endsWith("$")?t.length-1:t.length;return t.slice(e,n)}var xs=Symbol("evaluating");function de(t,e,n){let r;Object.defineProperty(t,e,{get(){if(r!==xs)return r===void 0&&(r=xs,r=n()),r},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function uf(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!0,configurable:!0})}function lf(...t){let e={};for(let n of t){let r=Object.getOwnPropertyDescriptors(n);Object.assign(e,r)}return Object.defineProperties({},e)}var fi="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function br(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var df=di(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function vn(t){if(br(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let n=e.prototype;return!(br(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}var Ss=new Set(["string","number","symbol"]);function _r(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function bn(t,e,n){let r=new t._zod.constr(e??t._zod.def);return(!e||n?.parent)&&(r._zod.parent=t),r}function re(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Es(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var ks={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Is(t,e){if(!vn(e))throw new Error("Invalid input to extend: expected a plain object");let n=t._zod.def.checks;if(n&&n.length>0){let i=t._zod.def.shape;for(let a in e)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=lf(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return uf(this,"shape",i),i}});return bn(t,o)}function yt(t,e=0){if(t.aborted===!0)return!0;for(let n=e;n<t.issues.length;n++)if(t.issues[n]?.continue!==!0)return!0;return!1}function et(t,e){return e.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(t),n})}function vr(t){return typeof t=="string"?t:t?.message}function ct(t,e,n){let r={...t,path:t.path??[]};if(!t.message){let o=vr(t.inst?._zod.def?.error?.(t))??vr(e?.error?.(t))??vr(n.customError?.(t))??vr(n.localeError?.(t))??"Invalid input";r.message=o}return delete r.inst,delete r.continue,e?.reportInput||delete r.input,r}function pi(...t){let[e,n,r]=t;return typeof e=="string"?{message:e,code:"custom",input:n,inst:r}:{...e}}var As=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,$s,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ts=P("$ZodError",As),wn=P("$ZodError",As,{Parent:Error});var pf=t=>(e,n,r,o)=>{let i=r?Object.assign(r,{async:!1}):{async:!1},a=e._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Ye;if(a.issues.length){let s=new(o?.Err??t)(a.issues.map(c=>ct(c,i,Qe())));throw fi(s,o?.callee),s}return a.value},xr=pf(wn),mf=t=>async(e,n,r,o)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=e._zod.run({value:n,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let s=new(o?.Err??t)(a.issues.map(c=>ct(c,i,Qe())));throw fi(s,o?.callee),s}return a.value},$r=mf(wn),hf=t=>(e,n,r)=>{let o=r?{...r,async:!1}:{async:!1},i=e._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new Ye;return i.issues.length?{success:!1,error:new(t??Ts)(i.issues.map(a=>ct(a,o,Qe())))}:{success:!0,data:i.value}},_n=hf(wn),gf=t=>async(e,n,r)=>{let o=r?Object.assign(r,{async:!0}):{async:!0},i=e._zod.run({value:n,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>ct(a,o,Qe())))}:{success:!0,data:i.value}},xn=gf(wn);var yf="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",vf=new RegExp(`^${yf}$`);var Ps=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var zs=/^-?\d+$/,mi=/^-?\d+(?:\.\d+)?$/,Os=/^(?:true|false)$/i;var Us=/^undefined$/i;var vt=P("$ZodCheck",(t,e)=>{var n;t._zod??(t._zod={}),t._zod.def=e,(n=t._zod).onattach??(n.onattach=[])}),bf={number:"number",bigint:"bigint",object:"date"};var Rs=P("$ZodCheckGreaterThan",(t,e)=>{vt.init(t,e);let n=bf[typeof e.value];t._zod.onattach.push(r=>{let o=r._zod.bag,i=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value>=e.value:r.value>e.value)||r.issues.push({origin:n,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}});var Ds=P("$ZodCheckNumberFormat",(t,e)=>{vt.init(t,e),e.format=e.format||"float64";let n=e.format?.includes("int"),r=n?"int":"number",[o,i]=ks[e.format];t._zod.onattach.push(a=>{let s=a._zod.bag;s.format=e.format,s.minimum=o,s.maximum=i,n&&(s.pattern=zs)}),t._zod.check=a=>{let s=a.value;if(n){if(!Number.isInteger(s)){a.issues.push({expected:r,format:e.format,code:"invalid_type",continue:!1,input:s,inst:t});return}if(!Number.isSafeInteger(s)){s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort});return}}s<o&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),s>i&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}});var js=P("$ZodCheckStringFormat",(t,e)=>{var n,r;vt.init(t,e),t._zod.onattach.push(o=>{let i=o._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(n=t._zod).check??(n.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(r=t._zod).check??(r.check=()=>{})});var Cs={major:4,minor:3,patch:6};var ee=P("$ZodType",(t,e)=>{var n;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Cs;let r=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&r.unshift(t);for(let o of r)for(let i of o._zod.onattach)i(t);if(r.length===0)(n=t._zod).deferred??(n.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(a,s,c)=>{let u=yt(a),l;for(let d of s){if(d._zod.def.when){if(!d._zod.def.when(a))continue}else if(u)continue;let p=a.issues.length,b=d._zod.check(a);if(b instanceof Promise&&c?.async===!1)throw new Ye;if(l||b instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await b,a.issues.length!==p&&(u||(u=yt(a,p)))});else{if(a.issues.length===p)continue;u||(u=yt(a,p))}}return l?l.then(()=>a):a},i=(a,s,c)=>{if(yt(a))return a.aborted=!0,a;let u=o(s,r,c);if(u instanceof Promise){if(c.async===!1)throw new Ye;return u.then(l=>t._zod.parse(l,c))}return t._zod.parse(u,c)};t._zod.run=(a,s)=>{if(s.skipChecks)return t._zod.parse(a,s);if(s.direction==="backward"){let u=t._zod.parse({value:a.value,issues:[]},{...s,skipChecks:!0});return u instanceof Promise?u.then(l=>i(l,a,s)):i(u,a,s)}let c=t._zod.parse(a,s);if(c instanceof Promise){if(s.async===!1)throw new Ye;return c.then(u=>o(u,r,s))}return o(c,r,s)}}de(t,"~standard",()=>({validate:o=>{try{let i=_n(t,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return xn(t,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),kr=P("$ZodString",(t,e)=>{ee.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Ps(t._zod.bag),t._zod.parse=(n,r)=>{if(e.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:t}),n}}),gi=P("$ZodStringFormat",(t,e)=>{js.init(t,e),kr.init(t,e)});var Hs=P("$ZodURL",(t,e)=>{gi.init(t,e),t._zod.check=n=>{try{let r=n.value.trim(),o=new URL(r);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:n.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:n.value,inst:t,continue:!e.abort})),e.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:t,continue:!e.abort})}}});var yi=P("$ZodNumber",(t,e)=>{ee.init(t,e),t._zod.pattern=t._zod.bag.pattern??mi,t._zod.parse=(n,r)=>{if(e.coerce)try{n.value=Number(n.value)}catch{}let o=n.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;let i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...i?{received:i}:{}}),n}}),Js=P("$ZodNumberFormat",(t,e)=>{Ds.init(t,e),yi.init(t,e)}),vi=P("$ZodBoolean",(t,e)=>{ee.init(t,e),t._zod.pattern=Os,t._zod.parse=(n,r)=>{if(e.coerce)try{n.value=!!n.value}catch{}let o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),n}});var Gs=P("$ZodUndefined",(t,e)=>{ee.init(t,e),t._zod.pattern=Us,t._zod.values=new Set([void 0]),t._zod.optin="optional",t._zod.optout="optional",t._zod.parse=(n,r)=>{let o=n.value;return typeof o>"u"||n.issues.push({expected:"undefined",code:"invalid_type",input:o,inst:t}),n}});var Vs=P("$ZodUnknown",(t,e)=>{ee.init(t,e),t._zod.parse=n=>n}),qs=P("$ZodNever",(t,e)=>{ee.init(t,e),t._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:t}),n)});function Ls(t,e,n){t.issues.length&&e.issues.push(...et(n,t.issues)),e.value[n]=t.value}var Ks=P("$ZodArray",(t,e)=>{ee.init(t,e),t._zod.parse=(n,r)=>{let o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),n;n.value=Array(o.length);let i=[];for(let a=0;a<o.length;a++){let s=o[a],c=e.element._zod.run({value:s,issues:[]},r);c instanceof Promise?i.push(c.then(u=>Ls(u,n,a))):Ls(c,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function Er(t,e,n,r,o){if(t.issues.length){if(o&&!(n in r))return;e.issues.push(...et(n,t.issues))}t.value===void 0?n in r&&(e.value[n]=void 0):e.value[n]=t.value}function wf(t){let e=Object.keys(t.shape);for(let r of e)if(!t.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);let n=Es(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(n)}}function _f(t,e,n,r,o,i){let a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type,l=c.optout==="optional";for(let d in e){if(s.has(d))continue;if(u==="never"){a.push(d);continue}let p=c.run({value:e[d],issues:[]},r);p instanceof Promise?t.push(p.then(b=>Er(b,n,d,e,l))):Er(p,n,d,e,l)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:e,inst:i}),t.length?Promise.all(t).then(()=>n):n}var Ws=P("$ZodObject",(t,e)=>{if(ee.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let s=e.shape;Object.defineProperty(e,"shape",{get:()=>{let c={...s};return Object.defineProperty(e,"shape",{value:c}),c}})}let r=di(()=>wf(e));de(t._zod,"propValues",()=>{let s=e.shape,c={};for(let u in s){let l=s[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let o=br,i=e.catchall,a;t._zod.parse=(s,c)=>{a??(a=r.value);let u=s.value;if(!o(u))return s.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),s;s.value={};let l=[],d=a.shape;for(let p of a.keys){let b=d[p],f=b._zod.optout==="optional",g=b._zod.run({value:u[p],issues:[]},c);g instanceof Promise?l.push(g.then(v=>Er(v,s,p,u,f))):Er(g,s,p,u,f)}return i?_f(l,u,s,c,r.value,t):l.length?Promise.all(l).then(()=>s):s}});function Ms(t,e,n,r){for(let i of t)if(i.issues.length===0)return e.value=i.value,e;let o=t.filter(i=>!yt(i));return o.length===1?(e.value=o[0].value,o[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:n,errors:t.map(i=>i.issues.map(a=>ct(a,r,Qe())))}),e)}var Xs=P("$ZodUnion",(t,e)=>{ee.init(t,e),de(t._zod,"optin",()=>e.options.some(o=>o._zod.optin==="optional")?"optional":void 0),de(t._zod,"optout",()=>e.options.some(o=>o._zod.optout==="optional")?"optional":void 0),de(t._zod,"values",()=>{if(e.options.every(o=>o._zod.values))return new Set(e.options.flatMap(o=>Array.from(o._zod.values)))}),de(t._zod,"pattern",()=>{if(e.options.every(o=>o._zod.pattern)){let o=e.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>wr(i.source)).join("|")})$`)}});let n=e.options.length===1,r=e.options[0]._zod.run;t._zod.parse=(o,i)=>{if(n)return r(o,i);let a=!1,s=[];for(let c of e.options){let u=c._zod.run({value:o.value,issues:[]},i);if(u instanceof Promise)s.push(u),a=!0;else{if(u.issues.length===0)return u;s.push(u)}}return a?Promise.all(s).then(c=>Ms(c,o,t,i)):Ms(s,o,t,i)}});var Ys=P("$ZodIntersection",(t,e)=>{ee.init(t,e),t._zod.parse=(n,r)=>{let o=n.value,i=e.left._zod.run({value:o,issues:[]},r),a=e.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,u])=>Zs(n,c,u)):Zs(n,i,a)}});function hi(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(vn(t)&&vn(e)){let n=Object.keys(e),r=Object.keys(t).filter(i=>n.indexOf(i)!==-1),o={...t,...e};for(let i of r){let a=hi(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};o[i]=a.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<t.length;r++){let o=t[r],i=e[r],a=hi(o,i);if(!a.valid)return{valid:!1,mergeErrorPath:[r,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Zs(t,e,n){let r=new Map,o;for(let s of e.issues)if(s.code==="unrecognized_keys"){o??(o=s);for(let c of s.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else t.issues.push(s);for(let s of n.issues)if(s.code==="unrecognized_keys")for(let c of s.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else t.issues.push(s);let i=[...r].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(i.length&&o&&t.issues.push({...o,keys:i}),yt(t))return t;let a=hi(e.value,n.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return t.value=a.data,t}var Qs=P("$ZodTuple",(t,e)=>{ee.init(t,e);let n=e.items;t._zod.parse=(r,o)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({input:i,inst:t,expected:"tuple",code:"invalid_type"}),r;r.value=[];let a=[],s=[...n].reverse().findIndex(l=>l._zod.optin!=="optional"),c=s===-1?0:n.length-s;if(!e.rest){let l=i.length>n.length,d=i.length<c-1;if(l||d)return r.issues.push({...l?{code:"too_big",maximum:n.length,inclusive:!0}:{code:"too_small",minimum:n.length},input:i,inst:t,origin:"array"}),r}let u=-1;for(let l of n){if(u++,u>=i.length&&u>=c)continue;let d=l._zod.run({value:i[u],issues:[]},o);d instanceof Promise?a.push(d.then(p=>Sr(p,r,u))):Sr(d,r,u)}if(e.rest){let l=i.slice(n.length);for(let d of l){u++;let p=e.rest._zod.run({value:d,issues:[]},o);p instanceof Promise?a.push(p.then(b=>Sr(b,r,u))):Sr(p,r,u)}}return a.length?Promise.all(a).then(()=>r):r}});function Sr(t,e,n){t.issues.length&&e.issues.push(...et(n,t.issues)),e.value[n]=t.value}var ec=P("$ZodRecord",(t,e)=>{ee.init(t,e),t._zod.parse=(n,r)=>{let o=n.value;if(!vn(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),n;let i=[],a=e.keyType._zod.values;if(a){n.value={};let s=new Set;for(let u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){s.add(typeof u=="number"?u.toString():u);let l=e.valueType._zod.run({value:o[u],issues:[]},r);l instanceof Promise?i.push(l.then(d=>{d.issues.length&&n.issues.push(...et(u,d.issues)),n.value[u]=d.value})):(l.issues.length&&n.issues.push(...et(u,l.issues)),n.value[u]=l.value)}let c;for(let u in o)s.has(u)||(c=c??[],c.push(u));c&&c.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:c})}else{n.value={};for(let s of Reflect.ownKeys(o)){if(s==="__proto__")continue;let c=e.keyType._zod.run({value:s,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof s=="string"&&mi.test(s)&&c.issues.length){let d=e.keyType._zod.run({value:Number(s),issues:[]},r);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){e.mode==="loose"?n.value[s]=o[s]:n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>ct(d,r,Qe())),input:s,path:[s],inst:t});continue}let l=e.valueType._zod.run({value:o[s],issues:[]},r);l instanceof Promise?i.push(l.then(d=>{d.issues.length&&n.issues.push(...et(s,d.issues)),n.value[c.value]=d.value})):(l.issues.length&&n.issues.push(...et(s,l.issues)),n.value[c.value]=l.value)}}return i.length?Promise.all(i).then(()=>n):n}});var tc=P("$ZodEnum",(t,e)=>{ee.init(t,e);let n=li(e.entries),r=new Set(n);t._zod.values=r,t._zod.pattern=new RegExp(`^(${n.filter(o=>Ss.has(typeof o)).map(o=>typeof o=="string"?_r(o):o.toString()).join("|")})$`),t._zod.parse=(o,i)=>{let a=o.value;return r.has(a)||o.issues.push({code:"invalid_value",values:n,input:a,inst:t}),o}});function Bs(t,e){return t.issues.length&&e===void 0?{issues:[],value:void 0}:t}var nc=P("$ZodOptional",(t,e)=>{ee.init(t,e),t._zod.optin="optional",t._zod.optout="optional",de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),de(t._zod,"pattern",()=>{let n=e.innerType._zod.pattern;return n?new RegExp(`^(${wr(n.source)})?$`):void 0}),t._zod.parse=(n,r)=>{if(e.innerType._zod.optin==="optional"){let o=e.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Bs(i,n.value)):Bs(o,n.value)}return n.value===void 0?n:e.innerType._zod.run(n,r)}});var rc=P("$ZodNullable",(t,e)=>{ee.init(t,e),de(t._zod,"optin",()=>e.innerType._zod.optin),de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"pattern",()=>{let n=e.innerType._zod.pattern;return n?new RegExp(`^(${wr(n.source)}|null)$`):void 0}),de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(n,r)=>n.value===null?n:e.innerType._zod.run(n,r)});var oc=P("$ZodCustom",(t,e)=>{vt.init(t,e),ee.init(t,e),t._zod.parse=(n,r)=>n,t._zod.check=n=>{let r=n.value,o=e.fn(r);if(o instanceof Promise)return o.then(i=>Fs(i,n,r,t));Fs(o,n,r,t)}});function Fs(t,e,n,r){if(!t){let o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),e.issues.push(pi(o))}}var ac;var bi=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...n){let r=n[0];return this._map.set(e,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let n=this._map.get(e);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(e),this}get(e){let n=e._zod.parent;if(n){let r={...this.get(n)??{}};delete r.id;let o={...r,...this._map.get(e)};return Object.keys(o).length?o:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function sc(){return new bi}(ac=globalThis).__zod_globalRegistry??(ac.__zod_globalRegistry=sc());var wi=globalThis.__zod_globalRegistry;function cc(t,e){return new t({type:"string",...re(e)})}function uc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...re(e)})}function lc(t,e){return new t({type:"number",checks:[],...re(e)})}function dc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...re(e)})}function fc(t,e){return new t({type:"boolean",...re(e)})}function pc(t,e){return new t({type:"undefined",...re(e)})}function mc(t){return new t({type:"unknown"})}function hc(t,e){return new t({type:"never",...re(e)})}function _i(t,e){return new Rs({check:"greater_than",...re(e),value:t,inclusive:!0})}function bt(t){return _i(0,t)}function gc(t,e,n){let r=re(n);return r.abort??(r.abort=!0),new t({type:"custom",check:"custom",fn:e,...r})}var ue=P("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ee.init(t,e),t.def=e,t.type=e.type,t.parse=(n,r)=>xr(t,n,r,{callee:t.parse}),t.safeParse=(n,r)=>_n(t,n,r),t.parseAsync=async(n,r)=>$r(t,n,r,{callee:t.parseAsync}),t.safeParseAsync=async(n,r)=>xn(t,n,r),t.check=(...n)=>t.clone({...e,checks:[...e.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]},{parent:!0}),t.with=t.check,t.clone=(n,r)=>bn(t,n,r),t.brand=()=>t,t.register=((n,r)=>(n.add(t,r),t)),t.apply=n=>n(t)}),xi=P("ZodMiniString",(t,e)=>{kr.init(t,e),ue.init(t,e)});function H(t){return cc(xi,t)}var yc=P("ZodMiniStringFormat",(t,e)=>{gi.init(t,e),xi.init(t,e)});var Rf=P("ZodMiniURL",(t,e)=>{Hs.init(t,e),yc.init(t,e)});function J(t){return uc(Rf,t)}var $i=P("ZodMiniNumber",(t,e)=>{yi.init(t,e),ue.init(t,e)});function vc(t){return lc($i,t)}var Df=P("ZodMiniNumberFormat",(t,e)=>{Js.init(t,e),$i.init(t,e)});function Nt(t){return dc(Df,t)}var bc=P("ZodMiniBoolean",(t,e)=>{vi.init(t,e),ue.init(t,e)});function Si(t){return fc(bc,t)}var jf=P("ZodMiniUndefined",(t,e)=>{Gs.init(t,e),ue.init(t,e)});function wc(t){return pc(jf,t)}var Nf=P("ZodMiniUnknown",(t,e)=>{Vs.init(t,e),ue.init(t,e)});function Cf(){return mc(Nf)}var Lf=P("ZodMiniNever",(t,e)=>{qs.init(t,e),ue.init(t,e)});function Mf(t){return hc(Lf,t)}var Zf=P("ZodMiniArray",(t,e)=>{Ks.init(t,e),ue.init(t,e)});function V(t,e){return new Zf({type:"array",element:t,...re(e)})}var Ei=P("ZodMiniObject",(t,e)=>{Ws.init(t,e),ue.init(t,e),de(t,"shape",()=>e.shape)});function be(t,e){let n={type:"object",shape:t??{},...re(e)};return new Ei(n)}function we(t,e){return new Ei({type:"object",shape:t,catchall:Mf(),...re(e)})}function he(t,e){return new Ei({type:"object",shape:t,catchall:Cf(),...re(e)})}function tt(t,e){return Is(t,e)}var Bf=P("ZodMiniUnion",(t,e)=>{Xs.init(t,e),ue.init(t,e)});function ut(t,e){return new Bf({type:"union",options:t,...re(e)})}var Ff=P("ZodMiniIntersection",(t,e)=>{Ys.init(t,e),ue.init(t,e)});function _c(t,e){return new Ff({type:"intersection",left:t,right:e})}var Hf=P("ZodMiniTuple",(t,e)=>{Qs.init(t,e),ue.init(t,e)});function fe(t,e,n){let r=e instanceof ee,o=r?n:e,i=r?e:null;return new Hf({type:"tuple",items:t,rest:i,...re(o)})}var Jf=P("ZodMiniRecord",(t,e)=>{ec.init(t,e),ue.init(t,e)});function xc(t,e,n){return new Jf({type:"record",keyType:t,valueType:e,...re(n)})}var Gf=P("ZodMiniEnum",(t,e)=>{tc.init(t,e),ue.init(t,e),t.options=Object.values(e.entries)});function $c(t,e){let n=Array.isArray(t)?Object.fromEntries(t.map(r=>[r,r])):t;return new Gf({type:"enum",entries:n,...re(e)})}var Vf=P("ZodMiniOptional",(t,e)=>{nc.init(t,e),ue.init(t,e)});function X(t){return new Vf({type:"optional",innerType:t})}var qf=P("ZodMiniNullable",(t,e)=>{rc.init(t,e),ue.init(t,e)});function Ze(t){return new qf({type:"nullable",innerType:t})}var Kf=P("ZodMiniCustom",(t,e)=>{oc.init(t,e),ue.init(t,e)});function wt(t,e){return gc(Kf,t??(()=>!0),e)}function Ct(t,e={}){let n=wt(r=>r instanceof t,e);return n._zod.bag.Class=t,n._zod.check=r=>{r.value instanceof t||r.issues.push({code:"invalid_type",expected:t.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}var kc=he({value:he({}),channels:V(H()),allowed:X(Ze(V(J())))}),hE=tt(kc,{url:J(),actor:J()}),Ec=ut([he({url:J()}),J()]),Lt=he({actor:J()}),Ar=X(Ze(Lt)),Ic=he({data:Ct(Blob),allowed:X(Ze(V(J())))}),gE=tt(Ic,{actor:J()}),ep=he({types:X(V(H())),maxBytes:X(Nt().check(bt()))}),Tr=class{constructor(e){this.graffiti=e,this.sessionEvents=this.graffiti.sessionEvents}sessionEvents;login=(...e)=>{let n=fe([X(J())]).parse(e);return this.graffiti.login(...n)};logout=(...e)=>{let n=fe([Lt]).parse(e);return this.graffiti.logout(...n)};handleToActor=(...e)=>{let n=fe([H()]).parse(e);return this.graffiti.handleToActor(...n)};actorToHandle=(...e)=>{let n=fe([J()]).parse(e);return this.graffiti.actorToHandle(...n)};post=(...e)=>{let n=fe([kc,Lt]).parse(e);return this.graffiti.post(...n)};get=(...e)=>{let n=fe([Ec,he({}),Ar]).parse(e);return this.graffiti.get(n[0],n[1],n[2])};delete=(...e)=>{let n=fe([Ec,Lt]).parse(e);return this.graffiti.delete(...n)};postMedia=(...e)=>{let n=fe([Ic,Lt]).parse(e);return this.graffiti.postMedia(...n)};getMedia=(...e)=>{let n=fe([J(),ep,Ar]).parse(e);return this.graffiti.getMedia(...n)};deleteMedia=(...e)=>{let n=fe([J(),Lt]).parse(e);return this.graffiti.deleteMedia(...n)};discover=(...e)=>{let n=fe([V(H()),he({}),Ar]).parse(e);return this.graffiti.discover(n[0],n[1],n[2])};continueDiscover=(...e)=>{let n=fe([H(),Ar]).parse(e);return this.graffiti.continueDiscover(...n)}};function tp(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function ki(t,e=""){if(!Number.isSafeInteger(t)||t<0){let n=e&&`"${e}" `;throw new Error(`${n}expected integer >= 0, got ${t}`)}}function Pr(t,e,n=""){let r=tp(t),o=t?.length,i=e!==void 0;if(!r||i&&o!==e){let a=n&&`"${n}" `,s=i?` of length ${e}`:"",c=r?`length=${o}`:`type=${typeof t}`;throw new Error(a+"expected Uint8Array"+s+", got "+c)}return t}function Ac(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash must wrapped by utils.createHasher");ki(t.outputLen),ki(t.blockLen)}function _t(t=32){let e=typeof globalThis=="object"?globalThis.crypto:null;if(typeof e?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");return e.getRandomValues(new Uint8Array(t))}var np=["Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Ii(t){if(t===null)return"null";if(t===void 0)return"undefined";if(t===!0||t===!1)return"boolean";let e=typeof t;if(e==="string"||e==="number"||e==="bigint"||e==="symbol")return e;if(e==="function")return"Function";if(Array.isArray(t))return"Array";if(t instanceof Uint8Array)return"Uint8Array";if(t.constructor===Object)return"Object";let n=rp(t);return n||"Object"}function rp(t){let e=Object.prototype.toString.call(t).slice(8,-1);if(np.includes(e))return e}var y=class{constructor(e,n,r){this.major=e,this.majorEncoded=e<<5,this.name=n,this.terminal=r}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}static equals(e,n){return e===n||e.major===n.major&&e.name===n.name}};y.uint=new y(0,"uint",!0);y.negint=new y(1,"negint",!0);y.bytes=new y(2,"bytes",!0);y.string=new y(3,"string",!0);y.array=new y(4,"array",!1);y.map=new y(5,"map",!1);y.tag=new y(6,"tag",!1);y.float=new y(7,"float",!0);y.false=new y(7,"false",!0);y.true=new y(7,"true",!0);y.null=new y(7,"null",!0);y.undefined=new y(7,"undefined",!0);y.break=new y(7,"break",!0);var E=class{constructor(e,n,r){this.type=e,this.value=n,this.encodedLength=r,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var Sn=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",op=new TextEncoder;function zr(t){return Sn&&globalThis.Buffer.isBuffer(t)}function En(t){return t instanceof Uint8Array?zr(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t:Uint8Array.from(t)}var ip=24,ap=200,Or=Sn?t=>t.length>=ip?globalThis.Buffer.from(t):Tc(t):t=>t.length>=ap?op.encode(t):Tc(t),Be=t=>Uint8Array.from(t),Pc=Sn?(t,e,n)=>zr(t)?new Uint8Array(t.subarray(e,n)):t.slice(e,n):(t,e,n)=>t.slice(e,n),zc=Sn?(t,e)=>(t=t.map(n=>n instanceof Uint8Array?n:globalThis.Buffer.from(n)),En(globalThis.Buffer.concat(t,e))):(t,e)=>{let n=new Uint8Array(e),r=0;for(let o of t)r+o.length>n.length&&(o=o.subarray(0,n.length-r)),n.set(o,r),r+=o.length;return n},Oc=Sn?t=>globalThis.Buffer.allocUnsafe(t):t=>new Uint8Array(t);function Ur(t,e){if(zr(t)&&zr(e))return t.compare(e);for(let n=0;n<t.length;n++)if(t[n]!==e[n])return t[n]<e[n]?-1:1;return 0}function Tc(t){let e=[],n=0;for(let r=0;r<t.length;r++){let o=t.charCodeAt(r);o<128?e[n++]=o:o<2048?(e[n++]=o>>6|192,e[n++]=o&63|128):(o&64512)===55296&&r+1<t.length&&(t.charCodeAt(r+1)&64512)===56320?(o=65536+((o&1023)<<10)+(t.charCodeAt(++r)&1023),e[n++]=o>>18|240,e[n++]=o>>12&63|128,e[n++]=o>>6&63|128,e[n++]=o&63|128):(o>=55296&&o<=57343&&(o=65533),e[n++]=o>>12|224,e[n++]=o>>6&63|128,e[n++]=o&63|128)}return e}var sp=256,kn=class{constructor(e=sp){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let n=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let o=n.length-(this.maxCursor-this.cursor)-1;n.set(e,o)}else{if(n){let o=n.length-(this.maxCursor-this.cursor)-1;o<n.length&&(this.chunks[this.chunks.length-1]=n.subarray(0,o),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(n=Oc(this.chunkSize),this.chunks.push(n),this.maxCursor+=n.length,this._initReuseChunk===null&&(this._initReuseChunk=n),n.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let n;if(this.chunks.length===1){let r=this.chunks[0];e&&this.cursor>r.length/2?(n=this.cursor===r.length?r:r.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):n=Pc(r,0,this.cursor)}else n=zc(this.chunks,this.cursor);return e&&this.reset(),n}},Rr=class{constructor(e){this.dest=e,this.cursor=0,this.chunks=[e]}reset(){this.cursor=0}push(e){if(this.cursor+e.length>this.dest.length)throw new Error("write out of bounds, destination buffer is too small");this.dest.set(e,this.cursor),this.cursor+=e.length}toBytes(e=!1){let n=this.dest.subarray(0,this.cursor);return e&&this.reset(),n}};var L="CBOR decode error:",Dr="CBOR encode error:",In=[];In[23]=1;In[24]=2;In[25]=3;In[26]=5;In[27]=9;function nt(t,e,n){if(t.length-e<n)throw new Error(`${L} not enough data for type`)}var ae=[24,256,65536,4294967296,BigInt("18446744073709551616")];function _e(t,e,n){nt(t,e,1);let r=t[e];if(n.strict===!0&&r<ae[0])throw new Error(`${L} integer encoded in more bytes than necessary (strict decode)`);return r}function xe(t,e,n){nt(t,e,2);let r=t[e]<<8|t[e+1];if(n.strict===!0&&r<ae[1])throw new Error(`${L} integer encoded in more bytes than necessary (strict decode)`);return r}function $e(t,e,n){nt(t,e,4);let r=t[e]*16777216+(t[e+1]<<16)+(t[e+2]<<8)+t[e+3];if(n.strict===!0&&r<ae[2])throw new Error(`${L} integer encoded in more bytes than necessary (strict decode)`);return r}function Se(t,e,n){nt(t,e,8);let r=t[e]*16777216+(t[e+1]<<16)+(t[e+2]<<8)+t[e+3],o=t[e+4]*16777216+(t[e+5]<<16)+(t[e+6]<<8)+t[e+7],i=(BigInt(r)<<BigInt(32))+BigInt(o);if(n.strict===!0&&i<ae[3])throw new Error(`${L} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(n.allowBigInt===!0)return i;throw new Error(`${L} integers outside of the safe integer range are not supported`)}function Uc(t,e,n,r){return new E(y.uint,_e(t,e+1,r),2)}function Rc(t,e,n,r){return new E(y.uint,xe(t,e+1,r),3)}function Dc(t,e,n,r){return new E(y.uint,$e(t,e+1,r),5)}function jc(t,e,n,r){return new E(y.uint,Se(t,e+1,r),9)}function Pe(t,e){return W(t,0,e.value)}function W(t,e,n){if(n<ae[0]){let r=Number(n);t.push([e|r])}else if(n<ae[1]){let r=Number(n);t.push([e|24,r])}else if(n<ae[2]){let r=Number(n);t.push([e|25,r>>>8,r&255])}else if(n<ae[3]){let r=Number(n);t.push([e|26,r>>>24&255,r>>>16&255,r>>>8&255,r&255])}else{let r=BigInt(n);if(r<ae[4]){let o=[e|27,0,0,0,0,0,0,0],i=Number(r&BigInt(4294967295)),a=Number(r>>BigInt(32)&BigInt(4294967295));o[8]=i&255,i=i>>8,o[7]=i&255,i=i>>8,o[6]=i&255,i=i>>8,o[5]=i&255,o[4]=a&255,a=a>>8,o[3]=a&255,a=a>>8,o[2]=a&255,a=a>>8,o[1]=a&255,t.push(o)}else throw new Error(`${L} encountered BigInt larger than allowable range`)}}Pe.encodedSize=function(e){return W.encodedSize(e.value)};W.encodedSize=function(e){return e<ae[0]?1:e<ae[1]?2:e<ae[2]?3:e<ae[3]?5:9};Pe.compareTokens=function(e,n){return e.value<n.value?-1:e.value>n.value?1:0};function Nc(t,e,n,r){return new E(y.negint,-1-_e(t,e+1,r),2)}function Cc(t,e,n,r){return new E(y.negint,-1-xe(t,e+1,r),3)}function Lc(t,e,n,r){return new E(y.negint,-1-$e(t,e+1,r),5)}var Ai=BigInt(-1),Mc=BigInt(1);function Zc(t,e,n,r){let o=Se(t,e+1,r);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new E(y.negint,i,9)}if(r.allowBigInt!==!0)throw new Error(`${L} integers outside of the safe integer range are not supported`);return new E(y.negint,Ai-BigInt(o),9)}function jr(t,e){let n=e.value,r=typeof n=="bigint"?n*Ai-Mc:n*-1-1;W(t,e.type.majorEncoded,r)}jr.encodedSize=function(e){let n=e.value,r=typeof n=="bigint"?n*Ai-Mc:n*-1-1;return r<ae[0]?1:r<ae[1]?2:r<ae[2]?3:r<ae[3]?5:9};jr.compareTokens=function(e,n){return e.value<n.value?1:e.value>n.value?-1:0};function An(t,e,n,r){nt(t,e,n+r);let o=t.slice(e+n,e+n+r);return new E(y.bytes,o,n+r)}function Bc(t,e,n,r){return An(t,e,1,n)}function Fc(t,e,n,r){return An(t,e,2,_e(t,e+1,r))}function Hc(t,e,n,r){return An(t,e,3,xe(t,e+1,r))}function Jc(t,e,n,r){return An(t,e,5,$e(t,e+1,r))}function Gc(t,e,n,r){let o=Se(t,e+1,r);if(typeof o=="bigint")throw new Error(`${L} 64-bit integer bytes lengths not supported`);return An(t,e,9,o)}function Nr(t){return t.encodedBytes===void 0&&(t.encodedBytes=y.equals(t.type,y.string)?Or(t.value):t.value),t.encodedBytes}function Mt(t,e){let n=Nr(e);W(t,e.type.majorEncoded,n.length),t.push(n)}Mt.encodedSize=function(e){let n=Nr(e);return W.encodedSize(n.length)+n.length};Mt.compareTokens=function(e,n){return up(Nr(e),Nr(n))};function up(t,e){return t.length<e.length?-1:t.length>e.length?1:Ur(t,e)}var Vc=new TextDecoder,dp=32;function fp(t,e,n){if(n-e<dp){let o="";for(let i=e;i<n;i++){let a=t[i];if(a&128)return Vc.decode(t.subarray(e,n));o+=String.fromCharCode(a)}return o}return Vc.decode(t.subarray(e,n))}function Tn(t,e,n,r,o){let i=n+r;nt(t,e,i);let a=new E(y.string,fp(t,e+n,e+i),i);return o.retainStringBytes===!0&&(a.byteValue=t.slice(e+n,e+i)),a}function qc(t,e,n,r){return Tn(t,e,1,n,r)}function Kc(t,e,n,r){return Tn(t,e,2,_e(t,e+1,r),r)}function Wc(t,e,n,r){return Tn(t,e,3,xe(t,e+1,r),r)}function Xc(t,e,n,r){return Tn(t,e,5,$e(t,e+1,r),r)}function Yc(t,e,n,r){let o=Se(t,e+1,r);if(typeof o=="bigint")throw new Error(`${L} 64-bit integer string lengths not supported`);return Tn(t,e,9,o,r)}var Qc=Mt;function Zt(t,e,n,r){return new E(y.array,r,n)}function eu(t,e,n,r){return Zt(t,e,1,n)}function tu(t,e,n,r){return Zt(t,e,2,_e(t,e+1,r))}function nu(t,e,n,r){return Zt(t,e,3,xe(t,e+1,r))}function ru(t,e,n,r){return Zt(t,e,5,$e(t,e+1,r))}function ou(t,e,n,r){let o=Se(t,e+1,r);if(typeof o=="bigint")throw new Error(`${L} 64-bit integer array lengths not supported`);return Zt(t,e,9,o)}function iu(t,e,n,r){if(r.allowIndefinite===!1)throw new Error(`${L} indefinite length items not allowed`);return Zt(t,e,1,1/0)}function Cr(t,e){W(t,y.array.majorEncoded,e.value)}Cr.compareTokens=Pe.compareTokens;Cr.encodedSize=function(e){return W.encodedSize(e.value)};function Bt(t,e,n,r){return new E(y.map,r,n)}function au(t,e,n,r){return Bt(t,e,1,n)}function su(t,e,n,r){return Bt(t,e,2,_e(t,e+1,r))}function cu(t,e,n,r){return Bt(t,e,3,xe(t,e+1,r))}function uu(t,e,n,r){return Bt(t,e,5,$e(t,e+1,r))}function lu(t,e,n,r){let o=Se(t,e+1,r);if(typeof o=="bigint")throw new Error(`${L} 64-bit integer map lengths not supported`);return Bt(t,e,9,o)}function du(t,e,n,r){if(r.allowIndefinite===!1)throw new Error(`${L} indefinite length items not allowed`);return Bt(t,e,1,1/0)}function Lr(t,e){W(t,y.map.majorEncoded,e.value)}Lr.compareTokens=Pe.compareTokens;Lr.encodedSize=function(e){return W.encodedSize(e.value)};function fu(t,e,n,r){return new E(y.tag,n,1)}function pu(t,e,n,r){return new E(y.tag,_e(t,e+1,r),2)}function mu(t,e,n,r){return new E(y.tag,xe(t,e+1,r),3)}function hu(t,e,n,r){return new E(y.tag,$e(t,e+1,r),5)}function gu(t,e,n,r){return new E(y.tag,Se(t,e+1,r),9)}function Mr(t,e){W(t,y.tag.majorEncoded,e.value)}Mr.compareTokens=Pe.compareTokens;Mr.encodedSize=function(e){return W.encodedSize(e.value)};var Ti=20,Pi=21,zi=22,Oi=23;function yu(t,e,n,r){if(r.allowUndefined===!1)throw new Error(`${L} undefined values are not supported`);return r.coerceUndefinedToNull===!0?new E(y.null,null,1):new E(y.undefined,void 0,1)}function vu(t,e,n,r){if(r.allowIndefinite===!1)throw new Error(`${L} indefinite length items not allowed`);return new E(y.break,void 0,1)}function Ui(t,e,n){if(n){if(n.allowNaN===!1&&Number.isNaN(t))throw new Error(`${L} NaN values are not supported`);if(n.allowInfinity===!1&&(t===1/0||t===-1/0))throw new Error(`${L} Infinity values are not supported`)}return new E(y.float,t,e)}function bu(t,e,n,r){return Ui(Ri(t,e+1),3,r)}function wu(t,e,n,r){return Ui(Di(t,e+1),5,r)}function _u(t,e,n,r){return Ui(Eu(t,e+1),9,r)}function Pn(t,e,n){let r=e.value;if(r===!1)t.push([y.float.majorEncoded|Ti]);else if(r===!0)t.push([y.float.majorEncoded|Pi]);else if(r===null)t.push([y.float.majorEncoded|zi]);else if(r===void 0)t.push([y.float.majorEncoded|Oi]);else{let o,i=!1;(!n||n.float64!==!0)&&($u(r),o=Ri(je,1),r===o||Number.isNaN(r)?(je[0]=249,t.push(je.slice(0,3)),i=!0):(Su(r),o=Di(je,1),r===o&&(je[0]=250,t.push(je.slice(0,5)),i=!0))),i||(yp(r),o=Eu(je,1),je[0]=251,t.push(je.slice(0,9)))}}Pn.encodedSize=function(e,n){let r=e.value;if(r===!1||r===!0||r===null||r===void 0)return 1;if(!n||n.float64!==!0){$u(r);let o=Ri(je,1);if(r===o||Number.isNaN(r))return 3;if(Su(r),o=Di(je,1),r===o)return 5}return 9};var xu=new ArrayBuffer(9),ze=new DataView(xu,1),je=new Uint8Array(xu,0);function $u(t){if(t===1/0)ze.setUint16(0,31744,!1);else if(t===-1/0)ze.setUint16(0,64512,!1);else if(Number.isNaN(t))ze.setUint16(0,32256,!1);else{ze.setFloat32(0,t);let e=ze.getUint32(0),n=(e&2139095040)>>23,r=e&8388607;if(n===255)ze.setUint16(0,31744,!1);else if(n===0)ze.setUint16(0,(t&2147483648)>>16|r>>13,!1);else{let o=n-127;o<-24?ze.setUint16(0,0):o<-14?ze.setUint16(0,(e&2147483648)>>16|1<<24+o,!1):ze.setUint16(0,(e&2147483648)>>16|o+15<<10|r>>13,!1)}}}function Ri(t,e){if(t.length-e<2)throw new Error(`${L} not enough data for float16`);let n=(t[e]<<8)+t[e+1];if(n===31744)return 1/0;if(n===64512)return-1/0;if(n===32256)return NaN;let r=n>>10&31,o=n&1023,i;return r===0?i=o*2**-24:r!==31?i=(o+1024)*2**(r-25):i=o===0?1/0:NaN,n&32768?-i:i}function Su(t){ze.setFloat32(0,t,!1)}function Di(t,e){if(t.length-e<4)throw new Error(`${L} not enough data for float32`);let n=(t.byteOffset||0)+e;return new DataView(t.buffer,n,4).getFloat32(0,!1)}function yp(t){ze.setFloat64(0,t,!1)}function Eu(t,e){if(t.length-e<8)throw new Error(`${L} not enough data for float64`);let n=(t.byteOffset||0)+e;return new DataView(t.buffer,n,8).getFloat64(0,!1)}Pn.compareTokens=Pe.compareTokens;function F(t,e,n){throw new Error(`${L} encountered invalid minor (${n}) for major ${t[e]>>>5}`)}function Zr(t){return()=>{throw new Error(`${L} ${t}`)}}var $=[];for(let t=0;t<=23;t++)$[t]=F;$[24]=Uc;$[25]=Rc;$[26]=Dc;$[27]=jc;$[28]=F;$[29]=F;$[30]=F;$[31]=F;for(let t=32;t<=55;t++)$[t]=F;$[56]=Nc;$[57]=Cc;$[58]=Lc;$[59]=Zc;$[60]=F;$[61]=F;$[62]=F;$[63]=F;for(let t=64;t<=87;t++)$[t]=Bc;$[88]=Fc;$[89]=Hc;$[90]=Jc;$[91]=Gc;$[92]=F;$[93]=F;$[94]=F;$[95]=Zr("indefinite length bytes/strings are not supported");for(let t=96;t<=119;t++)$[t]=qc;$[120]=Kc;$[121]=Wc;$[122]=Xc;$[123]=Yc;$[124]=F;$[125]=F;$[126]=F;$[127]=Zr("indefinite length bytes/strings are not supported");for(let t=128;t<=151;t++)$[t]=eu;$[152]=tu;$[153]=nu;$[154]=ru;$[155]=ou;$[156]=F;$[157]=F;$[158]=F;$[159]=iu;for(let t=160;t<=183;t++)$[t]=au;$[184]=su;$[185]=cu;$[186]=uu;$[187]=lu;$[188]=F;$[189]=F;$[190]=F;$[191]=du;for(let t=192;t<=215;t++)$[t]=fu;$[216]=pu;$[217]=mu;$[218]=hu;$[219]=gu;$[220]=F;$[221]=F;$[222]=F;$[223]=F;for(let t=224;t<=243;t++)$[t]=Zr("simple values are not supported");$[244]=F;$[245]=F;$[246]=F;$[247]=yu;$[248]=Zr("simple values are not supported");$[249]=bu;$[250]=wu;$[251]=_u;$[252]=F;$[253]=F;$[254]=F;$[255]=vu;var Ne=[];for(let t=0;t<24;t++)Ne[t]=new E(y.uint,t,1);for(let t=-1;t>=-24;t--)Ne[31-t]=new E(y.negint,t,1);Ne[64]=new E(y.bytes,new Uint8Array(0),1);Ne[96]=new E(y.string,"",1);Ne[128]=new E(y.array,0,1);Ne[160]=new E(y.map,0,1);Ne[244]=new E(y.false,!1,1);Ne[245]=new E(y.true,!0,1);Ne[246]=new E(y.null,null,1);function ji(t){switch(t.type){case y.false:return Be([244]);case y.true:return Be([245]);case y.null:return Be([246]);case y.bytes:return t.value.length?void 0:Be([64]);case y.string:return t.value===""?Be([96]):void 0;case y.array:return t.value===0?Be([128]):void 0;case y.map:return t.value===0?Be([160]):void 0;case y.uint:return t.value<24?Be([Number(t.value)]):void 0;case y.negint:if(t.value>=-24)return Be([31-Number(t.value)])}}var bp={float64:!1,mapSorter:xp,quickEncodeToken:ji},Pu=Object.freeze({float64:!0,mapSorter:$p,quickEncodeToken:ji});function wp(){let t=[];return t[y.uint.major]=Pe,t[y.negint.major]=jr,t[y.bytes.major]=Mt,t[y.string.major]=Qc,t[y.array.major]=Cr,t[y.map.major]=Lr,t[y.tag.major]=Mr,t[y.float.major]=Pn,t}var Ft=wp(),Br=new kn,On=class t{constructor(e,n){this.obj=e,this.parent=n}includes(e){let n=this;do if(n.obj===e)return!0;while(n=n.parent);return!1}static createCheck(e,n){if(e&&e.includes(n))throw new Error(`${Dr} object contains circular references`);return new t(n,e)}},lt={null:new E(y.null,null),undefined:new E(y.undefined,void 0),true:new E(y.true,!0),false:new E(y.false,!1),emptyArray:new E(y.array,0),emptyMap:new E(y.map,0)},Fe={number(t,e,n,r){return!Number.isInteger(t)||!Number.isSafeInteger(t)?new E(y.float,t):t>=0?new E(y.uint,t):new E(y.negint,t)},bigint(t,e,n,r){return t>=BigInt(0)?new E(y.uint,t):new E(y.negint,t)},Uint8Array(t,e,n,r){return new E(y.bytes,t)},string(t,e,n,r){return new E(y.string,t)},boolean(t,e,n,r){return t?lt.true:lt.false},null(t,e,n,r){return lt.null},undefined(t,e,n,r){return lt.undefined},ArrayBuffer(t,e,n,r){return new E(y.bytes,new Uint8Array(t))},DataView(t,e,n,r){return new E(y.bytes,new Uint8Array(t.buffer,t.byteOffset,t.byteLength))},Array(t,e,n,r){if(!t.length)return n.addBreakTokens===!0?[lt.emptyArray,new E(y.break)]:lt.emptyArray;r=On.createCheck(r,t);let o=[],i=0;for(let a of t)o[i++]=Fr(a,n,r);return n.addBreakTokens?[new E(y.array,t.length),o,new E(y.break)]:[new E(y.array,t.length),o]},Object(t,e,n,r){let o=e!=="Object",i=o?t.keys():Object.keys(t),a=o?t.size:i.length,s;if(a){s=new Array(a),r=On.createCheck(r,t);let c=!o&&n.ignoreUndefinedProperties,u=0;for(let l of i){let d=o?t.get(l):t[l];c&&d===void 0||(s[u++]=[Fr(l,n,r),Fr(d,n,r)])}u<a&&(s.length=u)}return s?.length?(_p(s,n),n.addBreakTokens?[new E(y.map,s.length),s,new E(y.break)]:[new E(y.map,s.length),s]):n.addBreakTokens===!0?[lt.emptyMap,new E(y.break)]:lt.emptyMap}};Fe.Map=Fe.Object;Fe.Buffer=Fe.Uint8Array;for(let t of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Fe[`${t}Array`]=Fe.DataView;function Fr(t,e={},n){let r=Ii(t),o=e&&e.typeEncoders&&e.typeEncoders[r]||Fe[r];if(typeof o=="function"){let a=o(t,r,e,n);if(a!=null)return a}let i=Fe[r];if(!i)throw new Error(`${Dr} unsupported type: ${r}`);return i(t,r,e,n)}function _p(t,e){e.mapSorter&&t.sort(e.mapSorter)}function xp(t,e){let n=Array.isArray(t[0])?t[0][0]:t[0],r=Array.isArray(e[0])?e[0][0]:e[0];if(n.type!==r.type)return n.type.compare(r.type);let o=n.type.major,i=Ft[o].compareTokens(n,r);return i===0&&console.warn("WARNING: complex key types used, CBOR key sorting guarantees are gone"),i}function $p(t,e){if(t[0]instanceof E&&e[0]instanceof E){let n=t[0],r=e[0];return n._keyBytes||(n._keyBytes=ku(n.value)),r._keyBytes||(r._keyBytes=ku(r.value)),Ur(n._keyBytes,r._keyBytes)}throw new Error("rfc8949MapSorter: complex key types are not supported yet")}function ku(t){return Ou(t,Ft,Pu)}function zn(t,e,n,r){if(Array.isArray(e))for(let o of e)zn(t,o,n,r);else n[e.type.major](t,e,r)}var Iu=y.uint.majorEncoded,Au=y.negint.majorEncoded,Sp=y.bytes.majorEncoded,Ep=y.string.majorEncoded,Tu=y.array.majorEncoded,kp=y.float.majorEncoded|Ti,Ip=y.float.majorEncoded|Pi,Ap=y.float.majorEncoded|zi,Tp=y.float.majorEncoded|Oi,Pp=BigInt(-1),zp=BigInt(1);function Op(t){return t.addBreakTokens!==!0}function zu(t,e,n,r){let o=Ii(e),i=n.typeEncoders&&n.typeEncoders[o];if(i){let a=i(e,o,n,r);if(a!=null){zn(t,a,Ft,n);return}}switch(o){case"null":t.push([Ap]);return;case"undefined":t.push([Tp]);return;case"boolean":t.push([e?Ip:kp]);return;case"number":!Number.isInteger(e)||!Number.isSafeInteger(e)?Pn(t,new E(y.float,e),n):e>=0?W(t,Iu,e):W(t,Au,e*-1-1);return;case"bigint":e>=BigInt(0)?W(t,Iu,e):W(t,Au,e*Pp-zp);return;case"string":{let a=Or(e);W(t,Ep,a.length),t.push(a);return}case"Uint8Array":W(t,Sp,e.length),t.push(e);return;case"Array":if(!e.length){t.push([Tu]);return}r=On.createCheck(r,e),W(t,Tu,e.length);for(let a of e)zu(t,a,n,r);return;case"Object":case"Map":{let a=Fe.Object(e,o,n,r);zn(t,a,Ft,n)}return;default:{let a=Fe[o];if(!a)throw new Error(`${Dr} unsupported type: ${o}`);let s=a(e,o,n,r);zn(t,s,Ft,n)}}}function Ou(t,e,n,r){let o=r instanceof Uint8Array,i=o?new Rr(r):Br,a=Fr(t,n);if(!Array.isArray(a)&&n.quickEncodeToken){let s=n.quickEncodeToken(a);if(s)return o?(i.push(s),i.toBytes()):s;let c=e[a.type.major];if(c.encodedSize){let u=c.encodedSize(a,n);if(o||(i=new kn(u)),c(i,a,n),i.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${a} was wrong`);return o?i.toBytes():En(i.chunks[0])}}return i.reset(),zn(i,a,e,n),i.toBytes(!0)}function Ni(t,e){return e=Object.assign({},bp,e),Op(e)?(Br.reset(),zu(Br,t,e,void 0),Br.toBytes(!0)):Ou(t,Ft,e)}var Up={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Hr=class{constructor(e,n={}){this._pos=0,this.data=e,this.options=n}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],n=Ne[e];if(n===void 0){let r=$[e];if(!r)throw new Error(`${L} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let o=e&31;n=r(this.data,this._pos,o,this.options)}return this._pos+=n.encodedLength,n}},Un=Symbol.for("DONE"),Jr=Symbol.for("BREAK");function Rp(t,e,n){let r=[];for(let o=0;o<t.value;o++){let i=Ht(e,n);if(i===Jr){if(t.value===1/0)break;throw new Error(`${L} got unexpected break to lengthed array`)}if(i===Un)throw new Error(`${L} found array but not enough entries (got ${o}, expected ${t.value})`);r[o]=i}return r}function Dp(t,e,n){let r=n.useMaps===!0,o=n.rejectDuplicateMapKeys===!0,i=r?void 0:{},a=r?new Map:void 0;for(let s=0;s<t.value;s++){let c=Ht(e,n);if(c===Jr){if(t.value===1/0)break;throw new Error(`${L} got unexpected break to lengthed map`)}if(c===Un)throw new Error(`${L} found map but not enough entries (got ${s} [no key], expected ${t.value})`);if(!r&&typeof c!="string")throw new Error(`${L} non-string keys not supported (got ${typeof c})`);if(o&&(r&&a.has(c)||!r&&Object.hasOwn(i,c)))throw new Error(`${L} found repeat map key "${c}"`);let u=Ht(e,n);if(u===Un)throw new Error(`${L} found map but not enough entries (got ${s} [no value], expected ${t.value})`);r?a.set(c,u):i[c]=u}return r?a:i}function Ht(t,e){if(t.done())return Un;let n=t.next();if(y.equals(n.type,y.break))return Jr;if(n.type.terminal)return n.value;if(y.equals(n.type,y.array))return Rp(n,t,e);if(y.equals(n.type,y.map))return Dp(n,t,e);if(y.equals(n.type,y.tag)){if(e.tags&&typeof e.tags[n.value]=="function"){let r=Ht(t,e);return e.tags[n.value](r)}throw new Error(`${L} tag not supported (${n.value})`)}throw new Error("unsupported")}function Uu(t,e){if(!(t instanceof Uint8Array))throw new Error(`${L} data to decode must be a Uint8Array`);e=Object.assign({},Up,e);let n=En(t),r=e.tokenizer||new Hr(n,e),o=Ht(r,e);if(o===Un)throw new Error(`${L} did not find any content to decode`);if(o===Jr)throw new Error(`${L} got unexpected break`);return[o,t.subarray(r.pos())]}function Ci(t,e){let[n,r]=Uu(t,e);if(r.length>0)throw new Error(`${L} too many terminals, data makes no sense`);return n}var $k=new Uint8Array(0);function Ru(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let n=0;n<t.byteLength;n++)if(t[n]!==e[n])return!1;return!0}function Jt(t){if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")}function Np(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var o=0;o<t.length;o++){var i=t.charAt(o),a=i.charCodeAt(0);if(n[a]!==255)throw new TypeError(i+" is ambiguous");n[a]=o}var s=t.length,c=t.charAt(0),u=Math.log(s)/Math.log(256),l=Math.log(256)/Math.log(s);function d(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var g=0,v=0,k=0,A=f.length;k!==A&&f[k]===0;)k++,g++;for(var _=(A-k)*l+1>>>0,S=new Uint8Array(_);k!==A;){for(var x=f[k],U=0,M=_-1;(x!==0||U<v)&&M!==-1;M--,U++)x+=256*S[M]>>>0,S[M]=x%s>>>0,x=x/s>>>0;if(x!==0)throw new Error("Non-zero carry");v=U,k++}for(var B=_-v;B!==_&&S[B]===0;)B++;for(var ie=c.repeat(g);B<_;++B)ie+=t.charAt(S[B]);return ie}function p(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var g=0;if(f[g]!==" "){for(var v=0,k=0;f[g]===c;)v++,g++;for(var A=(f.length-g)*u+1>>>0,_=new Uint8Array(A);f[g];){var S=n[f.charCodeAt(g)];if(S===255)return;for(var x=0,U=A-1;(S!==0||x<k)&&U!==-1;U--,x++)S+=s*_[U]>>>0,_[U]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");k=x,g++}if(f[g]!==" "){for(var M=A-k;M!==A&&_[M]===0;)M++;for(var B=new Uint8Array(v+(A-M)),ie=v;M!==A;)B[ie++]=_[M++];return B}}}function b(f){var g=p(f);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:d,decodeUnsafe:p,decode:b}}var Cp=Np,Lp=Cp,Du=Lp;var Li=class{name;prefix;baseEncode;constructor(e,n,r){this.name=e,this.prefix=n,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Mi=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,n,r){this.name=e,this.prefix=n;let o=n.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,this.baseDecode=r}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return ju(this,e)}},Zi=class{decoders;constructor(e){this.decoders=e}or(e){return ju(this,e)}decode(e){let n=e[0],r=this.decoders[n];if(r!=null)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function ju(t,e){return new Zi({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var Bi=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,n,r,o){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=o,this.encoder=new Li(e,n,r),this.decoder=new Mi(e,n,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Nu({name:t,prefix:e,encode:n,decode:r}){return new Bi(t,e,n,r)}function Gt({name:t,prefix:e,alphabet:n}){let{encode:r,decode:o}=Du(n,t);return Nu({prefix:e,name:t,encode:r,decode:i=>Jt(o(i))})}function Mp(t,e,n,r){let o=t.length;for(;t[o-1]==="=";)--o;let i=new Uint8Array(o*n/8|0),a=0,s=0,c=0;for(let u=0;u<o;++u){let l=e[t[u]];if(l===void 0)throw new SyntaxError(`Non-${r} character`);s=s<<n|l,a+=n,a>=8&&(a-=8,i[c++]=255&s>>a)}if(a>=n||(255&s<<8-a)!==0)throw new SyntaxError("Unexpected end of data");return i}function Zp(t,e,n){let r=e[e.length-1]==="=",o=(1<<n)-1,i="",a=0,s=0;for(let c=0;c<t.length;++c)for(s=s<<8|t[c],a+=8;a>n;)a-=n,i+=e[o&s>>a];if(a!==0&&(i+=e[o&s<<n-a]),r)for(;(i.length*n&7)!==0;)i+="=";return i}function Bp(t){let e={};for(let n=0;n<t.length;++n)e[t[n]]=n;return e}function He({name:t,prefix:e,bitsPerChar:n,alphabet:r}){let o=Bp(r);return Nu({prefix:e,name:t,encode(i){return Zp(i,r,n)},decode(i){return Mp(i,o,n,t)}})}var Rn=He({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Pk=He({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),zk=He({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Ok=He({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Uk=He({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Rk=He({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Dk=He({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),jk=He({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Nk=He({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Gr=Gt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Mk=Gt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var rt=Gt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Fk=Gt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Fp=Mu,Cu=128,Hp=127,Jp=~Hp,Gp=Math.pow(2,31);function Mu(t,e,n){e=e||[],n=n||0;for(var r=n;t>=Gp;)e[n++]=t&255|Cu,t/=128;for(;t&Jp;)e[n++]=t&255|Cu,t>>>=7;return e[n]=t|0,Mu.bytes=n-r+1,e}var Vp=Fi,qp=128,Lu=127;function Fi(t,r){var n=0,r=r||0,o=0,i=r,a,s=t.length;do{if(i>=s)throw Fi.bytes=0,new RangeError("Could not decode varint");a=t[i++],n+=o<28?(a&Lu)<<o:(a&Lu)*Math.pow(2,o),o+=7}while(a>=qp);return Fi.bytes=i-r,n}var Kp=Math.pow(2,7),Wp=Math.pow(2,14),Xp=Math.pow(2,21),Yp=Math.pow(2,28),Qp=Math.pow(2,35),em=Math.pow(2,42),tm=Math.pow(2,49),nm=Math.pow(2,56),rm=Math.pow(2,63),om=function(t){return t<Kp?1:t<Wp?2:t<Xp?3:t<Yp?4:t<Qp?5:t<em?6:t<tm?7:t<nm?8:t<rm?9:10},im={encode:Fp,decode:Vp,encodingLength:om},am=im,Dn=am;function jn(t,e=0){return[Dn.decode(t,e),Dn.decode.bytes]}function Vt(t,e,n=0){return Dn.encode(t,e,n),e}function qt(t){return Dn.encodingLength(t)}function Bu(t,e){let n=e.byteLength,r=qt(t),o=r+qt(n),i=new Uint8Array(o+n);return Vt(t,i,0),Vt(n,i,r),i.set(e,o),new Kt(t,n,e,i)}function Fu(t){let e=Jt(t),[n,r]=jn(e),[o,i]=jn(e.subarray(r)),a=e.subarray(r+i);if(a.byteLength!==o)throw new Error("Incorrect length");return new Kt(n,o,a,e)}function Hu(t,e){if(t===e)return!0;{let n=e;return t.code===n.code&&t.size===n.size&&n.bytes instanceof Uint8Array&&Ru(t.bytes,n.bytes)}}var Kt=class{code;size;digest;bytes;constructor(e,n,r,o){this.code=e,this.size=n,this.digest=r,this.bytes=o}};function Ju(t,e){let{bytes:n,version:r}=t;return r===0?um(n,Hi(t),e??rt.encoder):lm(n,Hi(t),e??Rn.encoder)}var Gu=new WeakMap;function Hi(t){let e=Gu.get(t);if(e==null){let n=new Map;return Gu.set(t,n),n}return e}var Cn=class t{code;version;multihash;bytes;"/";constructor(e,n,r,o){this.code=n,this.version=e,this.multihash=r,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:n}=this;if(e!==Nn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(n.code!==dm)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(n)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:n}=this.multihash,r=Bu(e,n);return t.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,n){let r=n;return r!=null&&e.code===r.code&&e.version===r.version&&Hu(e.multihash,r.multihash)}toString(e){return Ju(this,e)}toJSON(){return{"/":Ju(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let n=e;if(n instanceof t)return n;if(n["/"]!=null&&n["/"]===n.bytes||n.asCID===n){let{version:r,code:o,multihash:i,bytes:a}=n;return new t(r,o,i,a??Vu(r,o,i.bytes))}else if(n[fm]===!0){let{version:r,multihash:o,code:i}=n,a=Fu(o);return t.create(r,i,a)}else return null}static create(e,n,r){if(typeof n!="number")throw new Error("String codecs are no longer supported");if(!(r.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(n!==Nn)throw new Error(`Version 0 CID must use dag-pb (code: ${Nn}) block encoding`);return new t(e,n,r,r.bytes)}case 1:{let o=Vu(e,n,r.bytes);return new t(e,n,r,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Nn,e)}static createV1(e,n){return t.create(1,e,n)}static decode(e){let[n,r]=t.decodeFirst(e);if(r.length!==0)throw new Error("Incorrect length");return n}static decodeFirst(e){let n=t.inspectBytes(e),r=n.size-n.multihashSize,o=Jt(e.subarray(r,r+n.multihashSize));if(o.byteLength!==n.multihashSize)throw new Error("Incorrect length");let i=o.subarray(n.multihashSize-n.digestSize),a=new Kt(n.multihashCode,n.digestSize,i,o);return[n.version===0?t.createV0(a):t.createV1(n.codec,a),e.subarray(n.size)]}static inspectBytes(e){let n=0,r=()=>{let[d,p]=jn(e.subarray(n));return n+=p,d},o=r(),i=Nn;if(o===18?(o=0,n=0):i=r(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let a=n,s=r(),c=r(),u=n+c,l=u-a;return{version:o,codec:i,multihashCode:s,digestSize:c,multihashSize:l,size:u}}static parse(e,n){let[r,o]=cm(e,n),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Hi(i).set(r,e),i}};function cm(t,e){switch(t[0]){case"Q":{let n=e??rt;return[rt.prefix,n.decode(`${rt.prefix}${t}`)]}case rt.prefix:{let n=e??rt;return[rt.prefix,n.decode(t)]}case Rn.prefix:{let n=e??Rn;return[Rn.prefix,n.decode(t)]}case Gr.prefix:{let n=e??Gr;return[Gr.prefix,n.decode(t)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}}function um(t,e,n){let{prefix:r}=n;if(r!==rt.prefix)throw Error(`Cannot string encode V0 in ${n.name} encoding`);let o=e.get(r);if(o==null){let i=n.encode(t).slice(1);return e.set(r,i),i}else return o}function lm(t,e,n){let{prefix:r}=n,o=e.get(r);if(o==null){let i=n.encode(t);return e.set(r,i),i}else return o}var Nn=112,dm=18;function Vu(t,e,n){let r=qt(t),o=r+qt(e),i=new Uint8Array(o+n.byteLength);return Vt(t,i,0),Vt(e,i,r),i.set(n,o),i}var fm=Symbol.for("@ipld/js-cid/CID");var qu=42;function pm(t){return t instanceof ArrayBuffer?new Uint8Array(t,0,t.byteLength):t}function mm(t){if(t.asCID!==t&&t["/"]!==t.bytes)return null;let e=Cn.asCID(t);if(!e)return null;let n=new Uint8Array(e.bytes.byteLength+1);return n.set(e.bytes,1),[new E(y.tag,qu),new E(y.bytes,n)]}function hm(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function gm(t){if(Number.isNaN(t))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(t===1/0||t===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}function ym(t){for(let e of t.keys())if(typeof e!="string"||e.length===0)throw new Error("Non-string Map keys are not supported by the IPLD Data Model and cannot be encoded");return null}var Ji={float64:!0,typeEncoders:{Map:ym,Object:mm,undefined:hm,number:gm}},tI={...Ji,typeEncoders:{...Ji.typeEncoders}};function vm(t){if(t[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return Cn.decode(t.subarray(1))}var Vr={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Vr.tags[qu]=vm;var nI={...Vr,tags:Vr.tags.slice()};var Ee=t=>Ni(t,Ji),Je=t=>Ci(pm(t),Vr);function bm(t,e){try{var n=t()}catch(r){return e(r)}return n&&n.then?n.then(void 0,e):n}function wm(){let t=new Map;return function(e,n){try{let o=function(a){if(r)return a;let s=t.get(e.didUrl);return s!==void 0?s:Promise.resolve(n()).then(function(c){var u;return((u=c.didResolutionMetadata)==null?void 0:u.error)!=="notFound"&&t.set(e.didUrl,c),c})},r,i=(function(){if(e.params&&e.params["no-cache"]==="true")return Promise.resolve(n()).then(function(a){return r=1,a})})();return Promise.resolve(i&&i.then?i.then(o):o(i))}catch(r){return Promise.reject(r)}}}function _m(t,e){return e()}var xm="(?:%[0-9a-fA-F]{2})",Ku=`(?:[a-zA-Z0-9._-]|${xm})`,$m="([a-z0-9]+)",Sm=`((?:${Ku}*:)*(${Ku}+))`,Wu="[a-zA-Z0-9_.:%-]",Em=`;${Wu}+=${Wu}*`,km=`((${Em})*)`,Im="(/[^#?]*)?",Am="([?][^#]*)?",Tm="(#.*)?",Pm=new RegExp(`^did:${$m}:${Sm}${km}${Im}${Am}${Tm}$`);function zm(t){if(t===""||!t)return null;let e=t.match(Pm);if(e){let n={did:`did:${e[1]}:${e[2]}`,method:e[1],id:e[2],didUrl:t};if(e[4]){let r=e[4].slice(1).split(";");n.params={};for(let o of r){let i=o.split("=");n.params[i[0]]=i[1]}}return e[6]&&(n.path=e[6]),e[7]&&(n.query=e[7].slice(1)),e[8]&&(n.fragment=e[8].slice(1)),n}return null}var qr={didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};function Om(t){return function(e,n,r){try{return Promise.resolve(bm(function(){return Promise.resolve(t(e,n,r)).then(function(o){return{...qr,didResolutionMetadata:{contentType:"application/did+ld+json"},didDocument:o}})},function(o){return{...qr,didResolutionMetadata:{error:"notFound",message:o.toString()}}}))}catch(o){return Promise.reject(o)}}}var Kr=class{constructor(e={},n={}){this.registry=void 0,this.cache=void 0,this.registry=e,this.cache=n.cache===!0?wm():n.cache||_m,n.legacyResolvers&&Object.keys(n.legacyResolvers).map(r=>{this.registry[r]||(this.registry[r]=Om(n.legacyResolvers[r]))})}resolve(e,n={}){try{let r=this,o=zm(e);if(o===null)return Promise.resolve({...qr,didResolutionMetadata:{error:"invalidDid"}});let i=r.registry[o.method];return i?Promise.resolve(r.cache(o,()=>i(o.did,o,r,n))):Promise.resolve({...qr,didResolutionMetadata:{error:"unsupportedDidMethod"}})}catch(r){return Promise.reject(r)}}};function Ln(t,e){return function(){return t.apply(e,arguments)}}var{toString:Um}=Object.prototype,{getPrototypeOf:Vi}=Object,{iterator:Xr,toStringTag:el}=Symbol,Yr=(t=>e=>{let n=Um.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ce=t=>(t=t.toLowerCase(),e=>Yr(e)===t),Qr=t=>e=>typeof e===t,{isArray:Xt}=Array,Wt=Qr("undefined");function Mn(t){return t!==null&&!Wt(t)&&t.constructor!==null&&!Wt(t.constructor)&&ge(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var tl=Ce("ArrayBuffer");function Rm(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&tl(t.buffer),e}var Dm=Qr("string"),ge=Qr("function"),nl=Qr("number"),Zn=t=>t!==null&&typeof t=="object",jm=t=>t===!0||t===!1,Wr=t=>{if(Yr(t)!=="object")return!1;let e=Vi(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(el in t)&&!(Xr in t)},Nm=t=>{if(!Zn(t)||Mn(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},Cm=Ce("Date"),Lm=Ce("File"),Mm=t=>!!(t&&typeof t.uri<"u"),Zm=t=>t&&typeof t.getParts<"u",Bm=Ce("Blob"),Fm=Ce("FileList"),Hm=t=>Zn(t)&&ge(t.pipe);function Jm(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}var Xu=Jm(),Yu=typeof Xu.FormData<"u"?Xu.FormData:void 0,Gm=t=>{let e;return t&&(Yu&&t instanceof Yu||ge(t.append)&&((e=Yr(t))==="formdata"||e==="object"&&ge(t.toString)&&t.toString()==="[object FormData]"))},Vm=Ce("URLSearchParams"),[qm,Km,Wm,Xm]=["ReadableStream","Request","Response","Headers"].map(Ce),Ym=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Bn(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let r,o;if(typeof t!="object"&&(t=[t]),Xt(t))for(r=0,o=t.length;r<o;r++)e.call(null,t[r],r,t);else{if(Mn(t))return;let i=n?Object.getOwnPropertyNames(t):Object.keys(t),a=i.length,s;for(r=0;r<a;r++)s=i[r],e.call(null,t[s],s,t)}}function rl(t,e){if(Mn(t))return null;e=e.toLowerCase();let n=Object.keys(t),r=n.length,o;for(;r-- >0;)if(o=n[r],e===o.toLowerCase())return o;return null}var $t=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ol=t=>!Wt(t)&&t!==$t;function Gi(){let{caseless:t,skipUndefined:e}=ol(this)&&this||{},n={},r=(o,i)=>{if(i==="__proto__"||i==="constructor"||i==="prototype")return;let a=t&&rl(n,i)||i;Wr(n[a])&&Wr(o)?n[a]=Gi(n[a],o):Wr(o)?n[a]=Gi({},o):Xt(o)?n[a]=o.slice():(!e||!Wt(o))&&(n[a]=o)};for(let o=0,i=arguments.length;o<i;o++)arguments[o]&&Bn(arguments[o],r);return n}var Qm=(t,e,n,{allOwnKeys:r}={})=>(Bn(e,(o,i)=>{n&&ge(o)?Object.defineProperty(t,i,{value:Ln(o,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,i,{value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),t),eh=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),th=(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),Object.defineProperty(t.prototype,"constructor",{value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},nh=(t,e,n,r)=>{let o,i,a,s={};if(e=e||{},t==null)return e;do{for(o=Object.getOwnPropertyNames(t),i=o.length;i-- >0;)a=o[i],(!r||r(a,t,e))&&!s[a]&&(e[a]=t[a],s[a]=!0);t=n!==!1&&Vi(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},rh=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;let r=t.indexOf(e,n);return r!==-1&&r===n},oh=t=>{if(!t)return null;if(Xt(t))return t;let e=t.length;if(!nl(e))return null;let n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},ih=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Vi(Uint8Array)),ah=(t,e)=>{let r=(t&&t[Xr]).call(t),o;for(;(o=r.next())&&!o.done;){let i=o.value;e.call(t,i[0],i[1])}},sh=(t,e)=>{let n,r=[];for(;(n=t.exec(e))!==null;)r.push(n);return r},ch=Ce("HTMLFormElement"),uh=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,o){return r.toUpperCase()+o}),Qu=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),lh=Ce("RegExp"),il=(t,e)=>{let n=Object.getOwnPropertyDescriptors(t),r={};Bn(n,(o,i)=>{let a;(a=e(o,i,t))!==!1&&(r[i]=a||o)}),Object.defineProperties(t,r)},dh=t=>{il(t,(e,n)=>{if(ge(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;let r=t[n];if(ge(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},fh=(t,e)=>{let n={},r=o=>{o.forEach(i=>{n[i]=!0})};return Xt(t)?r(t):r(String(t).split(e)),n},ph=()=>{},mh=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function hh(t){return!!(t&&ge(t.append)&&t[el]==="FormData"&&t[Xr])}var gh=t=>{let e=new Array(10),n=(r,o)=>{if(Zn(r)){if(e.indexOf(r)>=0)return;if(Mn(r))return r;if(!("toJSON"in r)){e[o]=r;let i=Xt(r)?[]:{};return Bn(r,(a,s)=>{let c=n(a,o+1);!Wt(c)&&(i[s]=c)}),e[o]=void 0,i}}return r};return n(t,0)},yh=Ce("AsyncFunction"),vh=t=>t&&(Zn(t)||ge(t))&&ge(t.then)&&ge(t.catch),al=((t,e)=>t?setImmediate:e?((n,r)=>($t.addEventListener("message",({source:o,data:i})=>{o===$t&&i===n&&r.length&&r.shift()()},!1),o=>{r.push(o),$t.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",ge($t.postMessage)),bh=typeof queueMicrotask<"u"?queueMicrotask.bind($t):typeof process<"u"&&process.nextTick||al,wh=t=>t!=null&&ge(t[Xr]),m={isArray:Xt,isArrayBuffer:tl,isBuffer:Mn,isFormData:Gm,isArrayBufferView:Rm,isString:Dm,isNumber:nl,isBoolean:jm,isObject:Zn,isPlainObject:Wr,isEmptyObject:Nm,isReadableStream:qm,isRequest:Km,isResponse:Wm,isHeaders:Xm,isUndefined:Wt,isDate:Cm,isFile:Lm,isReactNativeBlob:Mm,isReactNative:Zm,isBlob:Bm,isRegExp:lh,isFunction:ge,isStream:Hm,isURLSearchParams:Vm,isTypedArray:ih,isFileList:Fm,forEach:Bn,merge:Gi,extend:Qm,trim:Ym,stripBOM:eh,inherits:th,toFlatObject:nh,kindOf:Yr,kindOfTest:Ce,endsWith:rh,toArray:oh,forEachEntry:ah,matchAll:sh,isHTMLForm:ch,hasOwnProperty:Qu,hasOwnProp:Qu,reduceDescriptors:il,freezeMethods:dh,toObjectSet:fh,toCamelCase:uh,noop:ph,toFiniteNumber:mh,findKey:rl,global:$t,isContextDefined:ol,isSpecCompliantForm:hh,toJSONObject:gh,isAsyncFn:yh,isThenable:vh,setImmediate:al,asap:bh,isIterable:wh};var pe=class t extends Error{static from(e,n,r,o,i,a){let s=new t(e.message,n||e.code,r,o,i);return s.cause=e,s.name=e.name,e.status!=null&&s.status==null&&(s.status=e.status),a&&Object.assign(s,a),s}constructor(e,n,r,o,i){super(e),Object.defineProperty(this,"message",{value:e,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),o&&(this.request=o),i&&(this.response=i,this.status=i.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:m.toJSONObject(this.config),code:this.code,status:this.status}}};pe.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";pe.ERR_BAD_OPTION="ERR_BAD_OPTION";pe.ECONNABORTED="ECONNABORTED";pe.ETIMEDOUT="ETIMEDOUT";pe.ERR_NETWORK="ERR_NETWORK";pe.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";pe.ERR_DEPRECATED="ERR_DEPRECATED";pe.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";pe.ERR_BAD_REQUEST="ERR_BAD_REQUEST";pe.ERR_CANCELED="ERR_CANCELED";pe.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";pe.ERR_INVALID_URL="ERR_INVALID_URL";var N=pe;var eo=null;function Ki(t){return m.isPlainObject(t)||m.isArray(t)}function sl(t){return m.endsWith(t,"[]")?t.slice(0,-2):t}function qi(t,e,n){return t?t.concat(e).map(function(o,i){return o=sl(o),!n&&i?"["+o+"]":o}).join(n?".":""):e}function _h(t){return m.isArray(t)&&!t.some(Ki)}var xh=m.toFlatObject(m,{},null,function(e){return/^is[A-Z]/.test(e)});function $h(t,e,n){if(!m.isObject(t))throw new TypeError("target must be an object");e=e||new(eo||FormData),n=m.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,v){return!m.isUndefined(v[g])});let r=n.metaTokens,o=n.visitor||l,i=n.dots,a=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&m.isSpecCompliantForm(e);if(!m.isFunction(o))throw new TypeError("visitor must be a function");function u(f){if(f===null)return"";if(m.isDate(f))return f.toISOString();if(m.isBoolean(f))return f.toString();if(!c&&m.isBlob(f))throw new N("Blob is not supported. Use a Buffer instead.");return m.isArrayBuffer(f)||m.isTypedArray(f)?c&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function l(f,g,v){let k=f;if(m.isReactNative(e)&&m.isReactNativeBlob(f))return e.append(qi(v,g,i),u(f)),!1;if(f&&!v&&typeof f=="object"){if(m.endsWith(g,"{}"))g=r?g:g.slice(0,-2),f=JSON.stringify(f);else if(m.isArray(f)&&_h(f)||(m.isFileList(f)||m.endsWith(g,"[]"))&&(k=m.toArray(f)))return g=sl(g),k.forEach(function(_,S){!(m.isUndefined(_)||_===null)&&e.append(a===!0?qi([g],S,i):a===null?g:g+"[]",u(_))}),!1}return Ki(f)?!0:(e.append(qi(v,g,i),u(f)),!1)}let d=[],p=Object.assign(xh,{defaultVisitor:l,convertValue:u,isVisitable:Ki});function b(f,g){if(!m.isUndefined(f)){if(d.indexOf(f)!==-1)throw Error("Circular reference detected in "+g.join("."));d.push(f),m.forEach(f,function(k,A){(!(m.isUndefined(k)||k===null)&&o.call(e,k,m.isString(A)?A.trim():A,g,p))===!0&&b(k,g?g.concat(A):[A])}),d.pop()}}if(!m.isObject(t))throw new TypeError("data must be an object");return b(t),e}var dt=$h;function cl(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function ul(t,e){this._pairs=[],t&&dt(t,this,e)}var ll=ul.prototype;ll.append=function(e,n){this._pairs.push([e,n])};ll.toString=function(e){let n=e?function(r){return e.call(this,r,cl)}:cl;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};var to=ul;function Sh(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Fn(t,e,n){if(!e)return t;let r=n&&n.encode||Sh,o=m.isFunction(n)?{serialize:n}:n,i=o&&o.serialize,a;if(i?a=i(e,o):a=m.isURLSearchParams(e)?e.toString():new to(e,o).toString(r),a){let s=t.indexOf("#");s!==-1&&(t=t.slice(0,s)),t+=(t.indexOf("?")===-1?"?":"&")+a}return t}var Wi=class{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){m.forEach(this.handlers,function(r){r!==null&&e(r)})}},Xi=Wi;var Yt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0};var dl=typeof URLSearchParams<"u"?URLSearchParams:to;var fl=typeof FormData<"u"?FormData:null;var pl=typeof Blob<"u"?Blob:null;var ml={isBrowser:!0,classes:{URLSearchParams:dl,FormData:fl,Blob:pl},protocols:["http","https","file","blob","url","data"]};var ea={};of(ea,{hasBrowserEnv:()=>Qi,hasStandardBrowserEnv:()=>Eh,hasStandardBrowserWebWorkerEnv:()=>kh,navigator:()=>Yi,origin:()=>Ih});var Qi=typeof window<"u"&&typeof document<"u",Yi=typeof navigator=="object"&&navigator||void 0,Eh=Qi&&(!Yi||["ReactNative","NativeScript","NS"].indexOf(Yi.product)<0),kh=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Ih=Qi&&window.location.href||"http://localhost";var Y={...ea,...ml};function ta(t,e){return dt(t,new Y.classes.URLSearchParams,{visitor:function(n,r,o,i){return Y.isNode&&m.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...e})}function Ah(t){return m.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function Th(t){let e={},n=Object.keys(t),r,o=n.length,i;for(r=0;r<o;r++)i=n[r],e[i]=t[i];return e}function Ph(t){function e(n,r,o,i){let a=n[i++];if(a==="__proto__")return!0;let s=Number.isFinite(+a),c=i>=n.length;return a=!a&&m.isArray(o)?o.length:a,c?(m.hasOwnProp(o,a)?o[a]=[o[a],r]:o[a]=r,!s):((!o[a]||!m.isObject(o[a]))&&(o[a]=[]),e(n,r,o[a],i)&&m.isArray(o[a])&&(o[a]=Th(o[a])),!s)}if(m.isFormData(t)&&m.isFunction(t.entries)){let n={};return m.forEachEntry(t,(r,o)=>{e(Ah(r),o,n,0)}),n}return null}var no=Ph;function zh(t,e,n){if(m.isString(t))try{return(e||JSON.parse)(t),m.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(t)}var na={transitional:Yt,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){let r=n.getContentType()||"",o=r.indexOf("application/json")>-1,i=m.isObject(e);if(i&&m.isHTMLForm(e)&&(e=new FormData(e)),m.isFormData(e))return o?JSON.stringify(no(e)):e;if(m.isArrayBuffer(e)||m.isBuffer(e)||m.isStream(e)||m.isFile(e)||m.isBlob(e)||m.isReadableStream(e))return e;if(m.isArrayBufferView(e))return e.buffer;if(m.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let s;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return ta(e,this.formSerializer).toString();if((s=m.isFileList(e))||r.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return dt(s?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||o?(n.setContentType("application/json",!1),zh(e)):e}],transformResponse:[function(e){let n=this.transitional||na.transitional,r=n&&n.forcedJSONParsing,o=this.responseType==="json";if(m.isResponse(e)||m.isReadableStream(e))return e;if(e&&m.isString(e)&&(r&&!this.responseType||o)){let a=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(e,this.parseReviver)}catch(s){if(a)throw s.name==="SyntaxError"?N.from(s,N.ERR_BAD_RESPONSE,this,null,this.response):s}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Y.classes.FormData,Blob:Y.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};m.forEach(["delete","get","head","post","put","patch"],t=>{na.headers[t]={}});var Qt=na;var Oh=m.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),hl=t=>{let e={},n,r,o;return t&&t.split(`
|
|
3
|
-
`).forEach(function(
|
|
4
|
-
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){let r=new this(e);return n.forEach(o=>r.set(o)),r}static accessor(e){let r=(this[gl]=this[gl]={accessors:{}}).accessors,o=this.prototype;function i(a){let s=Hn(a);r[s]||(jh(o,a),r[s]=!0)}return m.isArray(e)?e.forEach(i):i(e),this}};en.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);m.reduceDescriptors(en.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(r){this[n]=r}}});m.freezeMethods(en);var oe=en;function Jn(t,e){let n=this||Qt,r=e||n,o=oe.from(r.headers),i=r.data;return m.forEach(t,function(s){i=s.call(n,i,o.normalize(),e?e.status:void 0)}),o.normalize(),i}function Gn(t){return!!(t&&t.__CANCEL__)}var oa=class extends N{constructor(e,n,r){super(e??"canceled",N.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}},Ge=oa;function Vn(t,e,n){let r=n.config.validateStatus;!n.status||!r||r(n.status)?t(n):e(new N("Request failed with status code "+n.status,[N.ERR_BAD_REQUEST,N.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function ia(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function Nh(t,e){t=t||10;let n=new Array(t),r=new Array(t),o=0,i=0,a;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=r[i];a||(a=u),n[o]=c,r[o]=u;let d=i,p=0;for(;d!==o;)p+=n[d++],d=d%t;if(o=(o+1)%t,o===i&&(i=(i+1)%t),u-a<e)return;let b=l&&u-l;return b?Math.round(p*1e3/b):void 0}}var yl=Nh;function Ch(t,e){let n=0,r=1e3/e,o,i,a=(u,l=Date.now())=>{n=l,o=null,i&&(clearTimeout(i),i=null),t(...u)};return[(...u)=>{let l=Date.now(),d=l-n;d>=r?a(u,l):(o=u,i||(i=setTimeout(()=>{i=null,a(o)},r-d)))},()=>o&&a(o)]}var vl=Ch;var tn=(t,e,n=3)=>{let r=0,o=yl(50,250);return vl(i=>{let a=i.loaded,s=i.lengthComputable?i.total:void 0,c=a-r,u=o(c),l=a<=s;r=a;let d={loaded:a,total:s,progress:s?a/s:void 0,bytes:c,rate:u||void 0,estimated:u&&s&&l?(s-a)/u:void 0,event:i,lengthComputable:s!=null,[e?"download":"upload"]:!0};t(d)},n)},aa=(t,e)=>{let n=t!=null;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},sa=t=>(...e)=>m.asap(()=>t(...e));var bl=Y.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,Y.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(Y.origin),Y.navigator&&/(msie|trident)/i.test(Y.navigator.userAgent)):()=>!0;var wl=Y.hasStandardBrowserEnv?{write(t,e,n,r,o,i,a){if(typeof document>"u")return;let s=[`${t}=${encodeURIComponent(e)}`];m.isNumber(n)&&s.push(`expires=${new Date(n).toUTCString()}`),m.isString(r)&&s.push(`path=${r}`),m.isString(o)&&s.push(`domain=${o}`),i===!0&&s.push("secure"),m.isString(a)&&s.push(`SameSite=${a}`),document.cookie=s.join("; ")},read(t){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function ca(t){return typeof t!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function ua(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function qn(t,e,n){let r=!ca(e);return t&&(r||n==!1)?ua(t,e):e}var _l=t=>t instanceof oe?{...t}:t;function Le(t,e){e=e||{};let n={};function r(u,l,d,p){return m.isPlainObject(u)&&m.isPlainObject(l)?m.merge.call({caseless:p},u,l):m.isPlainObject(l)?m.merge({},l):m.isArray(l)?l.slice():l}function o(u,l,d,p){if(m.isUndefined(l)){if(!m.isUndefined(u))return r(void 0,u,d,p)}else return r(u,l,d,p)}function i(u,l){if(!m.isUndefined(l))return r(void 0,l)}function a(u,l){if(m.isUndefined(l)){if(!m.isUndefined(u))return r(void 0,u)}else return r(void 0,l)}function s(u,l,d){if(d in e)return r(u,l);if(d in t)return r(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(u,l,d)=>o(_l(u),_l(l),d,!0)};return m.forEach(Object.keys({...t,...e}),function(l){if(l==="__proto__"||l==="constructor"||l==="prototype")return;let d=m.hasOwnProp(c,l)?c[l]:o,p=d(t[l],e[l],l);m.isUndefined(p)&&d!==s||(n[l]=p)}),n}var oo=t=>{let e=Le({},t),{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:a,auth:s}=e;if(e.headers=a=oe.from(a),e.url=Fn(qn(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),s&&a.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):""))),m.isFormData(n)){if(Y.hasStandardBrowserEnv||Y.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(m.isFunction(n.getHeaders)){let c=n.getHeaders(),u=["content-type","content-length"];Object.entries(c).forEach(([l,d])=>{u.includes(l.toLowerCase())&&a.set(l,d)})}}if(Y.hasStandardBrowserEnv&&(r&&m.isFunction(r)&&(r=r(e)),r||r!==!1&&bl(e.url))){let c=o&&i&&wl.read(i);c&&a.set(o,c)}return e};var Lh=typeof XMLHttpRequest<"u",xl=Lh&&function(t){return new Promise(function(n,r){let o=oo(t),i=o.data,a=oe.from(o.headers).normalize(),{responseType:s,onUploadProgress:c,onDownloadProgress:u}=o,l,d,p,b,f;function g(){b&&b(),f&&f(),o.cancelToken&&o.cancelToken.unsubscribe(l),o.signal&&o.signal.removeEventListener("abort",l)}let v=new XMLHttpRequest;v.open(o.method.toUpperCase(),o.url,!0),v.timeout=o.timeout;function k(){if(!v)return;let _=oe.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders()),x={data:!s||s==="text"||s==="json"?v.responseText:v.response,status:v.status,statusText:v.statusText,headers:_,config:t,request:v};Vn(function(M){n(M),g()},function(M){r(M),g()},x),v=null}"onloadend"in v?v.onloadend=k:v.onreadystatechange=function(){!v||v.readyState!==4||v.status===0&&!(v.responseURL&&v.responseURL.indexOf("file:")===0)||setTimeout(k)},v.onabort=function(){v&&(r(new N("Request aborted",N.ECONNABORTED,t,v)),v=null)},v.onerror=function(S){let x=S&&S.message?S.message:"Network Error",U=new N(x,N.ERR_NETWORK,t,v);U.event=S||null,r(U),v=null},v.ontimeout=function(){let S=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded",x=o.transitional||Yt;o.timeoutErrorMessage&&(S=o.timeoutErrorMessage),r(new N(S,x.clarifyTimeoutError?N.ETIMEDOUT:N.ECONNABORTED,t,v)),v=null},i===void 0&&a.setContentType(null),"setRequestHeader"in v&&m.forEach(a.toJSON(),function(S,x){v.setRequestHeader(x,S)}),m.isUndefined(o.withCredentials)||(v.withCredentials=!!o.withCredentials),s&&s!=="json"&&(v.responseType=o.responseType),u&&([p,f]=tn(u,!0),v.addEventListener("progress",p)),c&&v.upload&&([d,b]=tn(c),v.upload.addEventListener("progress",d),v.upload.addEventListener("loadend",b)),(o.cancelToken||o.signal)&&(l=_=>{v&&(r(!_||_.type?new Ge(null,t,v):_),v.abort(),v=null)},o.cancelToken&&o.cancelToken.subscribe(l),o.signal&&(o.signal.aborted?l():o.signal.addEventListener("abort",l)));let A=ia(o.url);if(A&&Y.protocols.indexOf(A)===-1){r(new N("Unsupported protocol "+A+":",N.ERR_BAD_REQUEST,t));return}v.send(i||null)})};var Mh=(t,e)=>{let{length:n}=t=t?t.filter(Boolean):[];if(e||n){let r=new AbortController,o,i=function(u){if(!o){o=!0,s();let l=u instanceof Error?u:this.reason;r.abort(l instanceof N?l:new Ge(l instanceof Error?l.message:l))}},a=e&&setTimeout(()=>{a=null,i(new N(`timeout of ${e}ms exceeded`,N.ETIMEDOUT))},e),s=()=>{t&&(a&&clearTimeout(a),a=null,t.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),t=null)};t.forEach(u=>u.addEventListener("abort",i));let{signal:c}=r;return c.unsubscribe=()=>m.asap(s),c}},$l=Mh;var Zh=function*(t,e){let n=t.byteLength;if(!e||n<e){yield t;return}let r=0,o;for(;r<n;)o=r+e,yield t.slice(r,o),r=o},Bh=async function*(t,e){for await(let n of Fh(t))yield*Zh(n,e)},Fh=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}let e=t.getReader();try{for(;;){let{done:n,value:r}=await e.read();if(n)break;yield r}}finally{await e.cancel()}},la=(t,e,n,r)=>{let o=Bh(t,e),i=0,a,s=c=>{a||(a=!0,r&&r(c))};return new ReadableStream({async pull(c){try{let{done:u,value:l}=await o.next();if(u){s(),c.close();return}let d=l.byteLength;if(n){let p=i+=d;n(p)}c.enqueue(new Uint8Array(l))}catch(u){throw s(u),u}},cancel(c){return s(c),o.return()}},{highWaterMark:2})};var Sl=64*1024,{isFunction:io}=m,Hh=(({Request:t,Response:e})=>({Request:t,Response:e}))(m.global),{ReadableStream:El,TextEncoder:kl}=m.global,Il=(t,...e)=>{try{return!!t(...e)}catch{return!1}},Jh=t=>{t=m.merge.call({skipUndefined:!0},Hh,t);let{fetch:e,Request:n,Response:r}=t,o=e?io(e):typeof fetch=="function",i=io(n),a=io(r);if(!o)return!1;let s=o&&io(El),c=o&&(typeof kl=="function"?(f=>g=>f.encode(g))(new kl):async f=>new Uint8Array(await new n(f).arrayBuffer())),u=i&&s&&Il(()=>{let f=!1,g=new n(Y.origin,{body:new El,method:"POST",get duplex(){return f=!0,"half"}}).headers.has("Content-Type");return f&&!g}),l=a&&s&&Il(()=>m.isReadableStream(new r("").body)),d={stream:l&&(f=>f.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(f=>{!d[f]&&(d[f]=(g,v)=>{let k=g&&g[f];if(k)return k.call(g);throw new N(`Response type '${f}' is not supported`,N.ERR_NOT_SUPPORT,v)})});let p=async f=>{if(f==null)return 0;if(m.isBlob(f))return f.size;if(m.isSpecCompliantForm(f))return(await new n(Y.origin,{method:"POST",body:f}).arrayBuffer()).byteLength;if(m.isArrayBufferView(f)||m.isArrayBuffer(f))return f.byteLength;if(m.isURLSearchParams(f)&&(f=f+""),m.isString(f))return(await c(f)).byteLength},b=async(f,g)=>{let v=m.toFiniteNumber(f.getContentLength());return v??p(g)};return async f=>{let{url:g,method:v,data:k,signal:A,cancelToken:_,timeout:S,onDownloadProgress:x,onUploadProgress:U,responseType:M,headers:B,withCredentials:ie="same-origin",fetchOptions:Ae}=oo(f),h=e||fetch;M=M?(M+"").toLowerCase():"text";let w=$l([A,_&&_.toAbortSignal()],S),O=null,Z=w&&w.unsubscribe&&(()=>{w.unsubscribe()}),q;try{if(U&&u&&v!=="get"&&v!=="head"&&(q=await b(B,k))!==0){let ce=new n(g,{method:"POST",body:k,duplex:"half"}),Rt;if(m.isFormData(k)&&(Rt=ce.headers.get("content-type"))&&B.setContentType(Rt),ce.body){let[oi,mr]=aa(q,tn(sa(U)));k=la(ce.body,Sl,oi,mr)}}m.isString(ie)||(ie=ie?"include":"omit");let z=i&&"credentials"in n.prototype,gt={...Ae,signal:w,method:v.toUpperCase(),headers:B.normalize().toJSON(),body:k,duplex:"half",credentials:z?ie:void 0};O=i&&new n(g,gt);let Te=await(i?h(O,Ae):h(g,gt)),yn=l&&(M==="stream"||M==="response");if(l&&(x||yn&&Z)){let ce={};["status","statusText","headers"].forEach(ws=>{ce[ws]=Te[ws]});let Rt=m.toFiniteNumber(Te.headers.get("content-length")),[oi,mr]=x&&aa(Rt,tn(sa(x),!0))||[];Te=new r(la(Te.body,Sl,oi,()=>{mr&&mr(),Z&&Z()}),ce)}M=M||"text";let ne=await d[m.findKey(d,M)||"text"](Te,f);return!yn&&Z&&Z(),await new Promise((ce,Rt)=>{Vn(ce,Rt,{data:ne,headers:oe.from(Te.headers),status:Te.status,statusText:Te.statusText,config:f,request:O})})}catch(z){throw Z&&Z(),z&&z.name==="TypeError"&&/Load failed|fetch/i.test(z.message)?Object.assign(new N("Network Error",N.ERR_NETWORK,f,O,z&&z.response),{cause:z.cause||z}):N.from(z,z&&z.code,f,O,z&&z.response)}}},Gh=new Map,da=t=>{let e=t&&t.env||{},{fetch:n,Request:r,Response:o}=e,i=[r,o,n],a=i.length,s=a,c,u,l=Gh;for(;s--;)c=i[s],u=l.get(c),u===void 0&&l.set(c,u=s?new Map:Jh(e)),l=u;return u},sT=da();var fa={http:eo,xhr:xl,fetch:{get:da}};m.forEach(fa,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var Al=t=>`- ${t}`,qh=t=>m.isFunction(t)||t===null||t===!1;function Kh(t,e){t=m.isArray(t)?t:[t];let{length:n}=t,r,o,i={};for(let a=0;a<n;a++){r=t[a];let s;if(o=r,!qh(r)&&(o=fa[(s=String(r)).toLowerCase()],o===void 0))throw new N(`Unknown adapter '${s}'`);if(o&&(m.isFunction(o)||(o=o.get(e))))break;i[s||"#"+a]=o}if(!o){let a=Object.entries(i).map(([c,u])=>`adapter ${c} `+(u===!1?"is not supported by the environment":"is not available in the build")),s=n?a.length>1?`since :
|
|
5
|
-
`+
|
|
6
|
-
`):" "+
|
|
7
|
-
`+i):r.stack=i}catch{}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=Le(this.defaults,n);let{transitional:r,paramsSerializer:o,headers:i}=n;r!==void 0&&Kn.assertOptions(r,{silentJSONParsing:Oe.transitional(Oe.boolean),forcedJSONParsing:Oe.transitional(Oe.boolean),clarifyTimeoutError:Oe.transitional(Oe.boolean),legacyInterceptorReqResOrdering:Oe.transitional(Oe.boolean)},!1),o!=null&&(m.isFunction(o)?n.paramsSerializer={serialize:o}:Kn.assertOptions(o,{encode:Oe.function,serialize:Oe.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Kn.assertOptions(n,{baseUrl:Oe.spelling("baseURL"),withXsrfToken:Oe.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=i&&m.merge(i.common,i[n.method]);i&&m.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),n.headers=oe.concat(a,i);let s=[],c=!0;this.interceptors.request.forEach(function(g){if(typeof g.runWhen=="function"&&g.runWhen(n)===!1)return;c=c&&g.synchronous;let v=n.transitional||Yt;v&&v.legacyInterceptorReqResOrdering?s.unshift(g.fulfilled,g.rejected):s.push(g.fulfilled,g.rejected)});let u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.rejected)});let l,d=0,p;if(!c){let f=[so.bind(this),void 0];for(f.unshift(...s),f.push(...u),p=f.length,l=Promise.resolve(n);d<p;)l=l.then(f[d++],f[d++]);return l}p=s.length;let b=n;for(;d<p;){let f=s[d++],g=s[d++];try{b=f(b)}catch(v){g.call(this,v);break}}try{l=so.call(this,b)}catch(f){return Promise.reject(f)}for(d=0,p=u.length;d<p;)l=l.then(u[d++],u[d++]);return l}getUri(e){e=Le(this.defaults,e);let n=qn(e.baseURL,e.url,e.allowAbsoluteUrls);return Fn(n,e.params,e.paramsSerializer)}};m.forEach(["delete","get","head","options"],function(e){nn.prototype[e]=function(n,r){return this.request(Le(r||{},{method:e,url:n,data:(r||{}).data}))}});m.forEach(["post","put","patch"],function(e){function n(r){return function(i,a,s){return this.request(Le(s||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}nn.prototype[e]=n(),nn.prototype[e+"Form"]=n(!0)});var Wn=nn;var ma=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});let r=this;this.promise.then(o=>{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](o);r._listeners=null}),this.promise.then=o=>{let i,a=new Promise(s=>{r.subscribe(s),i=s}).then(o);return a.cancel=function(){r.unsubscribe(i)},a},e(function(i,a,s){r.reason||(r.reason=new Ge(i,a,s),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){let e=new AbortController,n=r=>{e.abort(r)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new t(function(o){e=o}),cancel:e}}},Pl=ma;function ha(t){return function(n){return t.apply(null,n)}}function ga(t){return m.isObject(t)&&t.isAxiosError===!0}var ya={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(ya).forEach(([t,e])=>{ya[e]=t});var zl=ya;function Ol(t){let e=new Wn(t),n=Ln(Wn.prototype.request,e);return m.extend(n,Wn.prototype,e,{allOwnKeys:!0}),m.extend(n,e,null,{allOwnKeys:!0}),n.create=function(o){return Ol(Le(t,o))},n}var te=Ol(Qt);te.Axios=Wn;te.CanceledError=Ge;te.CancelToken=Pl;te.isCancel=Gn;te.VERSION=co;te.toFormData=dt;te.AxiosError=N;te.Cancel=te.CanceledError;te.all=function(e){return Promise.all(e)};te.spread=ha;te.isAxiosError=ga;te.mergeConfig=Le;te.AxiosHeaders=oe;te.formToJSON=t=>no(m.isHTMLForm(t)?new FormData(t):t);te.getAdapter=ao.getAdapter;te.HttpStatusCode=zl;te.default=te;var lo=te;var{Axios:i0,AxiosError:a0,CanceledError:s0,isCancel:c0,CancelToken:u0,VERSION:l0,all:d0,Cancel:f0,isAxiosError:p0,spread:m0,toFormData:h0,AxiosHeaders:g0,HttpStatusCode:y0,formToJSON:v0,getAdapter:b0,mergeConfig:w0}=lo;function Xh(t,e){try{var n=t()}catch(r){return e(r)}return n&&n.then?n.then(void 0,e):n}function ke(t,e,n){if(!t.s){if(n instanceof va)if(n.s)e&1&&(e=n.s),n=n.v;else{n.o=ke.bind(null,t,e);return}if(n&&n.then){n.then(ke.bind(null,t,e),ke.bind(null,t,2));return}t.s=e,t.v=n;let r=t.o;r&&r(t)}}var va=(function(){function t(){}return t.prototype.then=function(e,n){let r=new t,o=this.s;if(o){let i=o&1?e:n;if(i){try{ke(r,1,i(this.v))}catch(a){ke(r,2,a)}return r}else return this}return this.o=function(i){try{let a=i.v;i.s&1?ke(r,1,e?e(a):a):n?ke(r,1,n(a)):ke(r,2,a)}catch(a){ke(r,2,a)}},r},t})();function rn(t){return t instanceof va&&t.s&1}function Yh(t,e){var n;do{var r=t();if(r&&r.then)if(rn(r))r=r.v;else{n=!0;break}var o=e();if(rn(o)&&(o=o.v),!o)return r}while(!o.then);let i=new va,a=ke.bind(null,i,2);return(n?r.then(s):o.then(c)).then(void 0,a),i;function s(u){for(r=u;o=e(),rn(o)&&(o=o.v),!!o;){if(o.then){o.then(c).then(void 0,a);return}if(r=t(),r&&r.then)if(rn(r))r=r.v;else{r.then(s).then(void 0,a);return}}ke(i,1,r)}function c(u){if(u){do{if(r=t(),r&&r.then)if(rn(r))r=r.v;else{r.then(s).then(void 0,a);return}if(u=e(),rn(u)&&(u=u.v),!u){ke(i,1,r);return}}while(!u.then);u.then(c).then(void 0,a)}else ke(i,1,r)}}function Ul(){return{plc:function(e,n){try{let o=function(){let l=typeof c?.["@context"]<"u"?"application/did+ld+json":"application/did+json";return i?{didDocument:c,didDocumentMetadata:s,didResolutionMetadata:{error:"notFound",message:i}}:{didDocument:c,didDocumentMetadata:s,didResolutionMetadata:{contentType:l}}},r,i=null,a=`https://plc.directory/${encodeURIComponent(e)}`,s={},c=null,u=Yh(function(){function l(){r||c?.id===e||(i="resolver_error: DID document id does not match requested did")}let d=Xh(function(){return Promise.resolve(lo.get(a)).then(function(p){c=p.data})},function(p){i=`resolver_error: '"https://plc.directory/" + DID' must resolve to a valid https URL containing a JSON document: ${p}`,r=1});return d&&d.then?d.then(l):l(d)},function(){return!r&&!1});return Promise.resolve(u&&u.then?u.then(o):o(u))}catch(r){return Promise.reject(r)}}}}var jl=af(Dl(),1);function Qh(t,e){try{var n=t()}catch(r){return e(r)}return n&&n.then?n.then(void 0,e):n}var eg=function(t){try{return Promise.resolve((0,jl.default)(t,{mode:"cors"})).then(function(e){if(e.status>=400)throw new Error(`Bad response ${e.statusText}`);return e.json()})}catch(e){return Promise.reject(e)}};function Ie(t,e,n){if(!t.s){if(n instanceof ba)if(n.s)e&1&&(e=n.s),n=n.v;else{n.o=Ie.bind(null,t,e);return}if(n&&n.then){n.then(Ie.bind(null,t,e),Ie.bind(null,t,2));return}t.s=e,t.v=n;let r=t.o;r&&r(t)}}var tg="/.well-known/did.json",ba=(function(){function t(){}return t.prototype.then=function(e,n){let r=new t,o=this.s;if(o){let i=o&1?e:n;if(i){try{Ie(r,1,i(this.v))}catch(a){Ie(r,2,a)}return r}else return this}return this.o=function(i){try{let a=i.v;i.s&1?Ie(r,1,e?e(a):a):n?Ie(r,1,n(a)):Ie(r,2,a)}catch(a){Ie(r,2,a)}},r},t})();function an(t){return t instanceof ba&&t.s&1}function ng(t,e){var n;do{var r=t();if(r&&r.then)if(an(r))r=r.v;else{n=!0;break}var o=e();if(an(o)&&(o=o.v),!o)return r}while(!o.then);let i=new ba,a=Ie.bind(null,i,2);return(n?r.then(s):o.then(c)).then(void 0,a),i;function s(u){for(r=u;o=e(),an(o)&&(o=o.v),!!o;){if(o.then){o.then(c).then(void 0,a);return}if(r=t(),r&&r.then)if(an(r))r=r.v;else{r.then(s).then(void 0,a);return}}Ie(i,1,r)}function c(u){if(u){do{if(r=t(),r&&r.then)if(an(r))r=r.v;else{r.then(s).then(void 0,a);return}if(u=e(),an(u)&&(u=u.v),!u){Ie(i,1,r);return}}while(!u.then);u.then(c).then(void 0,a)}else Ie(i,1,r)}}function Nl(){return{web:function(e,n){try{let o=function(){let p=typeof l?.["@context"]<"u"?"application/did+ld+json":"application/did+json";return i?{didDocument:l,didDocumentMetadata:u,didResolutionMetadata:{error:"notFound",message:i}}:{didDocument:l,didDocumentMetadata:u,didResolutionMetadata:{contentType:p}}},r,i=null,a=decodeURIComponent(n.id)+tg,s=n.id.split(":");s.length>1&&(a=s.map(decodeURIComponent).join("/")+"/did.json");let c=`https://${a}`,u={},l=null,d=ng(function(){function p(){r||l?.id===e||(i="resolver_error: DID document id does not match requested did")}let b=Qh(function(){return Promise.resolve(eg(c)).then(function(f){l=f})},function(f){i=`resolver_error: DID must resolve to a valid https URL containing a JSON document: ${f}`,r=1});return b&&b.then?b.then(p):p(b)},function(){return!r&&!1});return Promise.resolve(d&&d.then?d.then(o):o(d))}catch(r){return Promise.reject(r)}}}}var mo=class{methods={...Ul(),...Nl()};resolver=new Kr(this.methods,{cache:!0});async resolve(e){if(!Object.keys(this.methods).some(r=>e.startsWith(`did:${r}:`)))throw new Error(`Unrecognized DID method: ${e}`);let{didDocument:n}=await this.resolver.resolve(e);if(!n)throw new Q(`DID not found: ${e}`);return n}};var xa;(typeof navigator>"u"||!navigator.userAgent?.startsWith?.("Mozilla/5.0 "))&&(xa="oauth4webapi/v3.8.5");function tr(t,e){if(t==null)return!1;try{return t instanceof e||Object.getPrototypeOf(t)[Symbol.toStringTag]===e.prototype[Symbol.toStringTag]}catch{return!1}}var ve="ERR_INVALID_ARG_VALUE",Ue="ERR_INVALID_ARG_TYPE";function K(t,e,n){let r=new TypeError(t,{cause:n});return Object.assign(r,{code:e}),r}var Et=Symbol(),bo=Symbol(),wo=Symbol(),kt=Symbol();var ho=Symbol();var rg=new TextEncoder,og=new TextDecoder;function Cl(t){return typeof t=="string"?rg.encode(t):og.decode(t)}var $a;Uint8Array.prototype.toBase64?$a=t=>(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),t.toBase64({alphabet:"base64url",omitPadding:!0})):$a=e=>{e instanceof ArrayBuffer&&(e=new Uint8Array(e));let n=[];for(let r=0;r<e.byteLength;r+=32768)n.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(n.join("")).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")};var Sa;Uint8Array.fromBase64?Sa=t=>{try{return Uint8Array.fromBase64(t,{alphabet:"base64url"})}catch(e){throw K("The input to be decoded is not correctly encoded.",ve,e)}}:Sa=t=>{try{let e=atob(t.replace(/-/g,"+").replace(/_/g,"/").replace(/\s/g,"")),n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e.charCodeAt(r);return n}catch(e){throw K("The input to be decoded is not correctly encoded.",ve,e)}};function Ea(t){return typeof t=="string"?Sa(t):$a(t)}var pt=class extends Error{code;constructor(e,n){super(e,n),this.name=this.constructor.name,this.code=ko,Error.captureStackTrace?.(this,this.constructor)}},Yn=class extends Error{code;constructor(e,n){super(e,n),this.name=this.constructor.name,n?.code&&(this.code=n?.code),Error.captureStackTrace?.(this,this.constructor)}};function C(t,e,n){return new Yn(t,{code:e,cause:n})}function go(t){return!(t===null||typeof t!="object"||Array.isArray(t))}function ka(t){tr(t,Headers)&&(t=Object.fromEntries(t.entries()));let e=new Headers(t??{});if(xa&&!e.has("user-agent")&&e.set("user-agent",xa),e.has("authorization"))throw K('"options.headers" must not include the "authorization" header name',ve);return e}function Ml(t,e){if(e!==void 0){if(typeof e=="function"&&(e=e(t.href)),!(e instanceof AbortSignal))throw K('"options.signal" must return or be an instance of AbortSignal',Ue);return e}}function Zl(t){return t.includes("//")?t.replace("//","/"):t}function ig(t,e,n=!1){return t.pathname==="/"?t.pathname=e:t.pathname=Zl(`${e}/${n?t.pathname:t.pathname.replace(/(\/)$/,"")}`),t}function ag(t,e){return t.pathname=Zl(`${t.pathname}/${e}`),t}async function sg(t,e,n,r){if(!(t instanceof URL))throw K(`"${e}" must be an instance of URL`,Ue);$o(t,r?.[Et]!==!0);let o=n(new URL(t.href)),i=ka(r?.headers);return i.set("accept","application/json"),(r?.[kt]||fetch)(o.href,{body:void 0,headers:Object.fromEntries(i.entries()),method:"GET",redirect:"manual",signal:Ml(o,r?.signal)})}async function Bl(t,e){return sg(t,"issuerIdentifier",n=>{switch(e?.algorithm){case void 0:case"oidc":ag(n,".well-known/openid-configuration");break;case"oauth2":ig(n,".well-known/oauth-authorization-server");break;default:throw K('"options.algorithm" must be "oidc" (default), or "oauth2"',ve)}return n},e)}function Xn(t,e,n,r,o){try{if(typeof t!="number"||!Number.isFinite(t))throw K(`${n} must be a number`,Ue,o);if(t>0)return;if(e){if(t!==0)throw K(`${n} must be a non-negative number`,ve,o);return}throw K(`${n} must be a positive number`,ve,o)}catch(i){throw r?C(i.message,r,o):i}}function ye(t,e,n,r){try{if(typeof t!="string")throw K(`${e} must be a string`,Ue,r);if(t.length===0)throw K(`${e} must not be empty`,ve,r)}catch(o){throw n?C(o.message,n,r):o}}async function Fl(t,e){let n=t;if(!(n instanceof URL)&&n!==vo)throw K('"expectedIssuerIdentifier" must be an instance of URL',Ue);if(!tr(e,Response))throw K('"response" must be an instance of Response',Ue);if(e.status!==200)throw C('"response" is not a conform Authorization Server Metadata response (unexpected HTTP status code)',Io,e);Na(e);let r=await id(e);if(ye(r.issuer,'"response" body "issuer" property',G,{body:r}),n!==vo&&new URL(r.issuer).href!==n.href)throw C('"response" body "issuer" property does not match the expected value',Ao,{expected:n.href,body:r,attribute:"issuer"});return r}function Hl(t){ug(t,"application/json")}function cg(t,...e){let n='"response" content-type must be ';if(e.length>2){let r=e.pop();n+=`${e.join(", ")}, or ${r}`}else e.length===2?n+=`${e[0]} or ${e[1]}`:n+=e[0];return C(n,Ra,t)}function ug(t,e){if(za(t)!==e)throw cg(t,e)}function lg(){return Ea(crypto.getRandomValues(new Uint8Array(32)))}function Jl(){return lg()}function Ia(t){let e=t?.[bo];return typeof e=="number"&&Number.isFinite(e)?e:0}function Aa(t){let e=t?.[wo];return typeof e=="number"&&Number.isFinite(e)&&Math.sign(e)!==-1?e:30}function Ta(){return Math.floor(Date.now()/1e3)}function _o(t){if(typeof t!="object"||t===null)throw K('"as" must be an object',Ue);ye(t.issuer,'"as.issuer"')}function xo(t){if(typeof t!="object"||t===null)throw K('"client" must be an object',Ue);ye(t.client_id,'"client.client_id"')}function Pa(t){return ye(t,'"clientSecret"'),(e,n,r,o)=>{r.set("client_id",n.client_id),r.set("client_secret",t)}}function Gl(){return(t,e,n,r)=>{n.set("client_id",e.client_id)}}var dg=URL.parse?(t,e)=>URL.parse(t,e):(t,e)=>{try{return new URL(t,e)}catch{return null}};function $o(t,e){if(e&&t.protocol!=="https:")throw C("only requests to HTTPS are allowed",Da,t);if(t.protocol!=="https:"&&t.protocol!=="http:")throw C("only HTTP and HTTPS requests are allowed",ja,t)}function Ll(t,e,n,r){let o;if(typeof t!="string"||!(o=dg(t)))throw C(`authorization server metadata does not contain a valid ${n?`"as.mtls_endpoint_aliases.${e}"`:`"as.${e}"`}`,t===void 0?jg:Ng,{attribute:n?`mtls_endpoint_aliases.${e}`:e});return $o(o,r),o}function So(t,e,n,r){return n&&t.mtls_endpoint_aliases&&e in t.mtls_endpoint_aliases?Ll(t.mtls_endpoint_aliases[e],e,n,r):Ll(t[e],e,n,r)}function Vl(t){if(t instanceof cn){let{0:e,length:n}=t.cause;return n===1&&e.scheme==="dpop"&&e.parameters.error==="use_dpop_nonce"}return t instanceof sn?t.error==="use_dpop_nonce":!1}var sn=class extends Error{cause;code;error;status;error_description;response;constructor(e,n){super(e,n),this.name=this.constructor.name,this.code=Rg,this.cause=n.cause,this.error=n.cause.error,this.status=n.response.status,this.error_description=n.cause.error_description,Object.defineProperty(this,"response",{enumerable:!1,value:n.response}),Error.captureStackTrace?.(this,this.constructor)}},Qn=class extends Error{cause;code;error;error_description;constructor(e,n){super(e,n),this.name=this.constructor.name,this.code=Dg,this.cause=n.cause,this.error=n.cause.get("error"),this.error_description=n.cause.get("error_description")??void 0,Error.captureStackTrace?.(this,this.constructor)}},cn=class extends Error{cause;code;response;status;constructor(e,n){super(e,n),this.name=this.constructor.name,this.code=Ug,this.cause=n.cause,this.status=n.response.status,this.response=n.response,Object.defineProperty(this,"response",{enumerable:!1}),Error.captureStackTrace?.(this,this.constructor)}},yo="[a-zA-Z0-9!#$%&\\'\\*\\+\\-\\.\\^_`\\|~]+",fg="[a-zA-Z0-9\\-\\._\\~\\+\\/]+={0,2}",pg='"((?:[^"\\\\]|\\\\[\\s\\S])*)"',mg="("+yo+")\\s*=\\s*"+pg,hg="("+yo+")\\s*=\\s*("+yo+")",gg=new RegExp("^[,\\s]*("+yo+")"),yg=new RegExp("^[,\\s]*"+mg+"[,\\s]*(.*)"),vg=new RegExp("^[,\\s]*"+hg+"[,\\s]*(.*)"),bg=new RegExp("^("+fg+")(?:$|[,\\s])(.*)");function wg(t){if(!tr(t,Response))throw K('"response" must be an instance of Response',Ue);let e=t.headers.get("www-authenticate");if(e===null)return;let n=[],r=e;for(;r;){let o=r.match(gg),i=o?.[1].toLowerCase();if(!i)return;let a=r.substring(o[0].length);if(a&&!a.match(/^[\s,]/))return;let s=a.match(/^\s+(.*)$/),c=!!s;r=s?s[1]:void 0;let u={},l;if(c)for(;r;){let p,b;if(o=r.match(yg)){if([,p,b,r]=o,b.includes("\\"))try{b=JSON.parse(`"${b}"`)}catch{}u[p.toLowerCase()]=b;continue}if(o=r.match(vg)){[,p,b,r]=o,u[p.toLowerCase()]=b;continue}if(o=r.match(bg)){if(Object.keys(u).length)break;[,l,r]=o;break}return}else r=a||void 0;let d={scheme:i,parameters:u};l&&(d.token68=l),n.push(d)}if(n.length)return n}async function _g(t){if(t.status>399&&t.status<500){Na(t),Hl(t);try{let e=await t.clone().json();if(go(e)&&typeof e.error=="string"&&e.error.length)return e}catch{}}}async function ql(t,e,n){if(t.status!==e){Eg(t);let r;throw(r=await _g(t))?(await t.body?.cancel(),new sn("server responded with an error in the response body",{cause:r,response:t})):C(`"response" is not a conform ${n} response (unexpected HTTP status code)`,Io,t)}}function xg(t){if(!Oa.has(t))throw K('"options.DPoP" is not a valid DPoPHandle',ve)}function za(t){return t.headers.get("content-type")?.split(";")[0]}async function Kl(t,e,n,r,o,i,a){return await n(t,e,o,i),i.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"),(a?.[kt]||fetch)(r.href,{body:o,headers:Object.fromEntries(i.entries()),method:"POST",redirect:"manual",signal:Ml(r,a?.signal)})}async function $g(t,e,n,r,o,i){let a=So(t,"token_endpoint",e.use_mtls_endpoint_aliases,i?.[Et]!==!0);o.set("grant_type",r);let s=ka(i?.headers);s.set("accept","application/json"),i?.DPoP!==void 0&&(xg(i.DPoP),await i.DPoP.addProof(a,s,"POST"));let c=await Kl(t,e,n,a,o,s,i);return i?.DPoP?.cacheNonce(c,a),c}var Wl=new WeakMap,Sg=new WeakMap;function Eo(t){if(!t.id_token)return;let e=Wl.get(t);if(!e)throw K('"ref" was already garbage collected or did not resolve from the proper sources',ve);return e}async function Xl(t,e,n,r,o,i){if(_o(t),xo(e),!tr(n,Response))throw K('"response" must be an instance of Response',Ue);await ql(n,200,"Token Endpoint"),Na(n);let a=await id(n);if(ye(a.access_token,'"response" body "access_token" property',G,{body:a}),ye(a.token_type,'"response" body "token_type" property',G,{body:a}),a.token_type=a.token_type.toLowerCase(),a.expires_in!==void 0){let s=typeof a.expires_in!="number"?parseFloat(a.expires_in):a.expires_in;Xn(s,!0,'"response" body "expires_in" property',G,{body:a}),a.expires_in=s}if(a.refresh_token!==void 0&&ye(a.refresh_token,'"response" body "refresh_token" property',G,{body:a}),a.scope!==void 0&&typeof a.scope!="string")throw C('"response" body "scope" property must be a string',G,{body:a});if(a.id_token!==void 0){ye(a.id_token,'"response" body "id_token" property',G,{body:a});let s=["aud","exp","iat","iss","sub"];e.require_auth_time===!0&&s.push("auth_time"),e.default_max_age!==void 0&&(Xn(e.default_max_age,!0,'"client.default_max_age"'),s.push("auth_time")),r?.length&&s.push(...r);let{claims:c,jwt:u}=await Cg(a.id_token,Mg.bind(void 0,e.id_token_signed_response_alg,t.id_token_signing_alg_values_supported,"RS256"),Ia(e),Aa(e),o).then(Pg.bind(void 0,s)).then(Ig.bind(void 0,t)).then(kg.bind(void 0,e.client_id));if(Array.isArray(c.aud)&&c.aud.length!==1){if(c.azp===void 0)throw C('ID Token "aud" (audience) claim includes additional untrusted audiences',Ve,{claims:c,claim:"aud"});if(c.azp!==e.client_id)throw C('unexpected ID Token "azp" (authorized party) claim value',Ve,{expected:e.client_id,claims:c,claim:"azp"})}c.auth_time!==void 0&&Xn(c.auth_time,!0,'ID Token "auth_time" (authentication time)',G,{claims:c}),Sg.set(n,u),Wl.set(a,c)}if(i?.[a.token_type]!==void 0)i[a.token_type](n,a);else if(a.token_type!=="dpop"&&a.token_type!=="bearer")throw new pt("unsupported `token_type` value",{cause:{body:a}});return a}function Eg(t){let e;if(e=wg(t))throw new cn("server responded with a challenge in the WWW-Authenticate HTTP Header",{cause:e,response:t})}function kg(t,e){if(Array.isArray(e.claims.aud)){if(!e.claims.aud.includes(t))throw C('unexpected JWT "aud" (audience) claim value',Ve,{expected:t,claims:e.claims,claim:"aud"})}else if(e.claims.aud!==t)throw C('unexpected JWT "aud" (audience) claim value',Ve,{expected:t,claims:e.claims,claim:"aud"});return e}function Ig(t,e){let n=t[Ca]?.(e)??t.issuer;if(e.claims.iss!==n)throw C('unexpected JWT "iss" (issuer) claim value',Ve,{expected:n,claims:e.claims,claim:"iss"});return e}var Oa=new WeakSet;function Ag(t){return Oa.add(t),t}var Ua=Symbol();async function Yl(t,e,n,r,o,i,a){if(_o(t),xo(e),!Oa.has(r))throw K('"callbackParameters" must be an instance of URLSearchParams obtained from "validateAuthResponse()", or "validateJwtAuthResponse()',ve);ye(o,'"redirectUri"');let s=St(r,"code");if(!s)throw C('no authorization code in "callbackParameters"',G);let c=new URLSearchParams(a?.additionalParameters);return c.set("redirect_uri",o),c.set("code",s),i!==Ua&&(ye(i,'"codeVerifier"'),c.set("code_verifier",i)),$g(t,e,n,"authorization_code",c,a)}var Tg={aud:"audience",c_hash:"code hash",client_id:"client id",exp:"expiration time",iat:"issued at",iss:"issuer",jti:"jwt id",nonce:"nonce",s_hash:"state hash",sub:"subject",ath:"access token hash",htm:"http method",htu:"http uri",cnf:"confirmation",auth_time:"authentication time"};function Pg(t,e){for(let n of t)if(e.claims[n]===void 0)throw C(`JWT "${n}" (${Tg[n]}) claim missing`,G,{claims:e.claims});return e}var wa=Symbol(),_a=Symbol();async function Ql(t,e,n,r){return typeof r?.expectedNonce=="string"||typeof r?.maxAge=="number"||r?.requireIdToken?zg(t,e,n,r.expectedNonce,r.maxAge,r[ho],r.recognizedTokenTypes):Og(t,e,n,r?.[ho],r?.recognizedTokenTypes)}async function zg(t,e,n,r,o,i,a){let s=[];switch(r){case void 0:r=wa;break;case wa:break;default:ye(r,'"expectedNonce" argument'),s.push("nonce")}switch(o??=e.default_max_age,o){case void 0:o=_a;break;case _a:break;default:Xn(o,!0,'"maxAge" argument'),s.push("auth_time")}let c=await Xl(t,e,n,s,i,a);ye(c.id_token,'"response" body "id_token" property',G,{body:c});let u=Eo(c);if(o!==_a){let l=Ta()+Ia(e),d=Aa(e);if(u.auth_time+o<l-d)throw C("too much time has elapsed since the last End-User authentication",un,{claims:u,now:l,tolerance:d,claim:"auth_time"})}if(r===wa){if(u.nonce!==void 0)throw C('unexpected ID Token "nonce" claim value',Ve,{expected:void 0,claims:u,claim:"nonce"})}else if(u.nonce!==r)throw C('unexpected ID Token "nonce" claim value',Ve,{expected:r,claims:u,claim:"nonce"});return c}async function Og(t,e,n,r,o){let i=await Xl(t,e,n,void 0,r,o),a=Eo(i);if(a){if(e.default_max_age!==void 0){Xn(e.default_max_age,!0,'"client.default_max_age"');let s=Ta()+Ia(e),c=Aa(e);if(a.auth_time+e.default_max_age<s-c)throw C("too much time has elapsed since the last End-User authentication",un,{claims:a,now:s,tolerance:c,claim:"auth_time"})}if(a.nonce!==void 0)throw C('unexpected ID Token "nonce" claim value',Ve,{expected:void 0,claims:a,claim:"nonce"})}return i}var Ug="OAUTH_WWW_AUTHENTICATE_CHALLENGE",Rg="OAUTH_RESPONSE_BODY_ERROR",ko="OAUTH_UNSUPPORTED_OPERATION",Dg="OAUTH_AUTHORIZATION_RESPONSE_ERROR";var er="OAUTH_PARSE_ERROR",G="OAUTH_INVALID_RESPONSE";var Ra="OAUTH_RESPONSE_IS_NOT_JSON",Io="OAUTH_RESPONSE_IS_NOT_CONFORM",Da="OAUTH_HTTP_REQUEST_FORBIDDEN",ja="OAUTH_REQUEST_PROTOCOL_FORBIDDEN",un="OAUTH_JWT_TIMESTAMP_CHECK_FAILED",Ve="OAUTH_JWT_CLAIM_COMPARISON_FAILED",Ao="OAUTH_JSON_ATTRIBUTE_COMPARISON_FAILED";var jg="OAUTH_MISSING_SERVER_METADATA",Ng="OAUTH_INVALID_SERVER_METADATA";async function ed(t,e,n,r,o){_o(t),xo(e),ye(r,'"token"');let i=So(t,"revocation_endpoint",e.use_mtls_endpoint_aliases,o?.[Et]!==!0),a=new URLSearchParams(o?.additionalParameters);a.set("token",r);let s=ka(o?.headers);return s.delete("accept"),Kl(t,e,n,i,a,s,o)}async function td(t){if(!tr(t,Response))throw K('"response" must be an instance of Response',Ue);await ql(t,200,"Revocation Endpoint")}function Na(t){if(t.bodyUsed)throw K('"response" body has been used already',ve)}async function Cg(t,e,n,r,o){let{0:i,1:a,length:s}=t.split(".");if(s===5)if(o!==void 0)t=await o(t),{0:i,1:a,length:s}=t.split(".");else throw new pt("JWE decryption is not configured",{cause:t});if(s!==3)throw C("Invalid JWT",G,t);let c;try{c=JSON.parse(Cl(Ea(i)))}catch(d){throw C("failed to parse JWT Header body as base64url encoded JSON",er,d)}if(!go(c))throw C("JWT Header must be a top level object",G,t);if(e(c),c.crit!==void 0)throw new pt('no JWT "crit" header parameter extensions are supported',{cause:{header:c}});let u;try{u=JSON.parse(Cl(Ea(a)))}catch(d){throw C("failed to parse JWT Payload body as base64url encoded JSON",er,d)}if(!go(u))throw C("JWT Payload must be a top level object",G,t);let l=Ta()+n;if(u.exp!==void 0){if(typeof u.exp!="number")throw C('unexpected JWT "exp" (expiration time) claim type',G,{claims:u});if(u.exp<=l-r)throw C('unexpected JWT "exp" (expiration time) claim value, expiration is past current timestamp',un,{claims:u,now:l,tolerance:r,claim:"exp"})}if(u.iat!==void 0&&typeof u.iat!="number")throw C('unexpected JWT "iat" (issued at) claim type',G,{claims:u});if(u.iss!==void 0&&typeof u.iss!="string")throw C('unexpected JWT "iss" (issuer) claim type',G,{claims:u});if(u.nbf!==void 0){if(typeof u.nbf!="number")throw C('unexpected JWT "nbf" (not before) claim type',G,{claims:u});if(u.nbf>l+r)throw C('unexpected JWT "nbf" (not before) claim value',un,{claims:u,now:l,tolerance:r,claim:"nbf"})}if(u.aud!==void 0&&typeof u.aud!="string"&&!Array.isArray(u.aud))throw C('unexpected JWT "aud" (audience) claim type',G,{claims:u});return{header:c,claims:u,jwt:t}}async function Lg(t){if(t.bodyUsed)throw K("form_post Request instances must contain a readable body",ve,{cause:t});return t.text()}async function nd(t){if(t.method!=="POST")throw K("form_post responses are expected to use the POST method",ve,{cause:t});if(za(t)!=="application/x-www-form-urlencoded")throw K("form_post responses are expected to use the application/x-www-form-urlencoded content-type",ve,{cause:t});return Lg(t)}function Mg(t,e,n,r){if(t!==void 0){if(typeof t=="string"?r.alg!==t:!t.includes(r.alg))throw C('unexpected JWT "alg" header parameter',G,{header:r,expected:t,reason:"client configuration"});return}if(Array.isArray(e)){if(!e.includes(r.alg))throw C('unexpected JWT "alg" header parameter',G,{header:r,expected:e,reason:"authorization server metadata"});return}if(n!==void 0){if(typeof n=="string"?r.alg!==n:typeof n=="function"?!n(r.alg):!n.includes(r.alg))throw C('unexpected JWT "alg" header parameter',G,{header:r,expected:n,reason:"default value"});return}throw C('missing client or server configuration to verify used JWT "alg" header parameter',void 0,{client:t,issuer:e,fallback:n})}function St(t,e){let{0:n,length:r}=t.getAll(e);if(r>1)throw C(`"${e}" parameter must be provided only once`,G);return n}var rd=Symbol(),Zg=Symbol();function od(t,e,n,r){if(_o(t),xo(e),n instanceof URL&&(n=n.searchParams),!(n instanceof URLSearchParams))throw K('"parameters" must be an instance of URLSearchParams, or URL',Ue);if(St(n,"response"))throw C('"parameters" contains a JARM response, use validateJwtAuthResponse() instead of validateAuthResponse()',G,{parameters:n});let o=St(n,"iss"),i=St(n,"state");if(!o&&t.authorization_response_iss_parameter_supported)throw C('response parameter "iss" (issuer) missing',G,{parameters:n});if(o&&o!==t.issuer)throw C('unexpected "iss" (issuer) response parameter value',G,{expected:t.issuer,parameters:n});switch(r){case void 0:case Zg:if(i!==void 0)throw C('unexpected "state" response parameter encountered',G,{expected:void 0,parameters:n});break;case rd:break;default:if(ye(r,'"expectedState" argument'),i!==r)throw C(i===void 0?'response parameter "state" missing':'unexpected "state" response parameter value',G,{expected:r,parameters:n})}if(St(n,"error"))throw new Qn("authorization response from the server is an error",{cause:n});let s=St(n,"id_token"),c=St(n,"token");if(s!==void 0||c!==void 0)throw new pt("implicit and hybrid flows are not supported");return Ag(new URLSearchParams(n))}async function id(t,e=Hl){let n;try{n=await t.json()}catch(r){throw e(t),C('failed to parse "response" body as JSON',er,r)}if(!go(n))throw C('"response" body must be a top level object',G,{body:n});return n}var vo=Symbol(),Ca=Symbol();var rr,ad;(typeof navigator>"u"||!navigator.userAgent?.startsWith?.("Mozilla/5.0 "))&&(ad="openid-client/v6.8.2",rr={"user-agent":ad});var Me=t=>Ma.get(t),Ma,La;function Fg(t){return t!==void 0?Pa(t):(La||=new WeakMap,(e,n,r,o)=>{let i;return(i=La.get(n))||(Hg(n.client_secret,'"metadata.client_secret"'),i=Pa(n.client_secret),La.set(n,i)),i(e,n,r,o)})}function Hg(t,e){if(typeof t!="string")throw qe(`${e} must be a string`,ir);if(t.length===0)throw qe(`${e} must not be empty`,or)}function Jg(){return Gl()}var ln=kt;var or="ERR_INVALID_ARG_VALUE",ir="ERR_INVALID_ARG_TYPE";function qe(t,e,n){let r=new TypeError(t,{cause:n});return Object.assign(r,{code:e}),r}function cd(){return Jl()}var dn=class extends Error{code;constructor(e,n){super(e,n),this.name=this.constructor.name,this.code=n?.code,Error.captureStackTrace?.(this,this.constructor)}},gP=new TextDecoder;function me(t,e,n){return new dn(t,{cause:e,code:n})}function nr(t){if(t instanceof TypeError||t instanceof dn||t instanceof sn||t instanceof Qn||t instanceof cn)throw t;if(t instanceof Yn)switch(t.code){case Da:throw me("only requests to HTTPS are allowed",t,t.code);case ja:throw me("only requests to HTTP or HTTPS are allowed",t,t.code);case Io:throw me("unexpected HTTP response status code",t.cause,t.code);case Ra:throw me("unexpected response content-type",t.cause,t.code);case er:throw me("parsing error occured",t,t.code);case G:throw me("invalid response encountered",t,t.code);case Ve:throw me("unexpected JWT claim value encountered",t,t.code);case Ao:throw me("unexpected JSON attribute value encountered",t,t.code);case un:throw me("JWT timestamp claim value failed validation",t,t.code);default:throw me(t.message,t,t.code)}if(t instanceof pt)throw me("unsupported operation",t,t.code);if(t instanceof DOMException)switch(t.name){case"OperationError":throw me("runtime operation error",t,ko);case"NotSupportedError":throw me("runtime unsupported operation",t,ko);case"TimeoutError":throw me("operation timed out",t,"OAUTH_TIMEOUT");case"AbortError":throw me("operation aborted",t,"OAUTH_ABORT")}throw new dn("something went wrong",{cause:t})}function Gg(t,e,n){return t.origin==="https://login.microsoftonline.com"&&(!n?.algorithm||n.algorithm==="oidc")?(e[ld]=!0,!0):!1}function Vg(t,e){return!!(t.hostname.endsWith(".b2clogin.com")&&(!e?.algorithm||e.algorithm==="oidc"))}async function ud(t,e,n,r,o){let i=await qg(t,o),a=new fn(i,e,n,r),s=Me(a);if(o?.[ln]&&(s.fetch=o[ln]),o?.timeout&&(s.timeout=o.timeout),o?.execute)for(let c of o.execute)c(a);return a}async function qg(t,e){if(!(t instanceof URL))throw qe('"server" must be an instance of URL',ir);let n=!t.href.includes("/.well-known/"),r=e?.timeout??30,o=AbortSignal.timeout(r*1e3),i=await(n?Bl(t,{algorithm:e?.algorithm,[kt]:e?.[ln],[Et]:e?.execute?.includes(sd),signal:o,headers:new Headers(rr)}):(e?.[ln]||fetch)(($o(t,!e?.execute?.includes(sd)),t.href),{headers:Object.fromEntries(new Headers({accept:"application/json",...rr}).entries()),body:void 0,method:"GET",redirect:"manual",signal:o})).then(a=>Fl(vo,a)).catch(nr);return n&&new URL(i.issuer).href!==t.href&&(Gg(t,i,e)||Vg(t,e)||(()=>{throw new dn("discovered metadata issuer does not match the expected issuer",{code:Ao,cause:{expected:t.href,body:i,attribute:"issuer"}})})()),i}function Kg(t){return{supportsPKCE:{__proto__:null,value(e="S256"){return t.code_challenge_methods_supported?.includes(e)===!0}}}}function Wg(t){Object.defineProperties(t,Kg(t))}var ld=Symbol(),fn=class{constructor(e,n,r,o){if(typeof n!="string"||!n.length)throw qe('"clientId" must be a non-empty string',ir);if(typeof r=="string"&&(r={client_secret:r}),r?.client_id!==void 0&&n!==r.client_id)throw qe('"clientId" and "metadata.client_id" must be the same',or);let i={...structuredClone(r),client_id:n};i[bo]=r?.[bo]??0,i[wo]=r?.[wo]??30;let a;o?a=o:typeof i.client_secret=="string"&&i.client_secret.length?a=Fg(i.client_secret):a=Jg();let s=Object.freeze(i),c=structuredClone(e);ld in e&&(c[Ca]=({claims:{tid:l}})=>e.issuer.replace("{tenantid}",l));let u=Object.freeze(c);Ma||=new WeakMap,Ma.set(this,{__proto__:null,as:u,c:s,auth:a,tlsOnly:!0,jwksCache:{}})}serverMetadata(){let e=structuredClone(Me(this).as);return Wg(e),e}clientMetadata(){return structuredClone(Me(this).c)}get timeout(){return Me(this).timeout}set timeout(e){Me(this).timeout=e}get[ln](){return Me(this).fetch}set[ln](e){Me(this).fetch=e}};Object.freeze(fn.prototype);function Xg(t){let e;if(t.expires_in!==void 0){let n=new Date;n.setSeconds(n.getSeconds()+t.expires_in),e=n.getTime()}return{expiresIn:{__proto__:null,value(){if(e){let n=Date.now();return e>n?Math.floor((e-n)/1e3):0}}},claims:{__proto__:null,value(){try{return Eo(this)}catch{return}}}}}function Yg(t){Object.defineProperties(t,Xg(t))}function sd(t){Me(t).tlsOnly=!1}function Qg(t){return t=new URL(t),t.search="",t.hash="",t.href}function ey(t,e){try{return Object.getPrototypeOf(t)[Symbol.toStringTag]===e}catch{return!1}}async function Za(t,e,n,r,o){if(Ba(t),o?.flag!==To&&!(e instanceof URL)&&!ey(e,"Request"))throw qe('"currentUrl" must be an instance of URL, or Request',ir);let i,a,{as:s,c,auth:u,fetch:l,tlsOnly:d,jarm:p,hybrid:b,nonRepudiation:f,timeout:g,decrypt:v,implicit:k}=Me(t);if(o?.flag===To)i=o.authResponse,a=o.redirectUri;else{if(!(e instanceof URL)){let x=e;switch(e=new URL(e.url),x.method){case"GET":break;case"POST":let U=new URLSearchParams(await nd(x));if(b)e.hash=U.toString();else for(let[M,B]of U.entries())e.searchParams.append(M,B);break;default:throw qe("unexpected Request HTTP method",or)}}switch(a=Qg(e),!0){case!!p:i=await p(e,n?.expectedState);break;case!!b:i=await b(e,n?.expectedNonce,n?.expectedState,n?.maxAge);break;case!!k:throw new TypeError("authorizationCodeGrant() cannot be used by response_type=id_token clients");default:try{i=od(s,c,e.searchParams,n?.expectedState)}catch(x){nr(x)}}}let A=await Yl(s,c,u,i,a,n?.pkceCodeVerifier||Ua,{additionalParameters:r,[kt]:l,[Et]:!d,DPoP:o?.DPoP,headers:new Headers(rr),signal:fd(g)}).catch(nr);(typeof n?.expectedNonce=="string"||typeof n?.maxAge=="number")&&(n.idTokenExpected=!0);let _=Ql(s,c,A,{expectedNonce:n?.expectedNonce,maxAge:n?.maxAge,requireIdToken:n?.idTokenExpected,[ho]:v}),S;try{S=await _}catch(x){if(ty(x,o))return Za(t,void 0,n,r,{...o,flag:To,authResponse:i,redirectUri:a});nr(x)}return S.id_token&&await f?.(A),Yg(S),S}function dd(t,e){Ba(t);let{as:n,c:r,tlsOnly:o,hybrid:i,jarm:a,implicit:s}=Me(t),c=So(n,"authorization_endpoint",!1,o);if(e=new URLSearchParams(e),e.has("client_id")||e.set("client_id",r.client_id),!e.has("request_uri")&&!e.has("request")){if(e.has("response_type")||e.set("response_type",i?"code id_token":s?"id_token":"code"),s&&!e.has("nonce"))throw qe("response_type=id_token clients must provide a nonce parameter in their authorization request parameters",or);a&&e.set("response_mode","jwt")}for(let[u,l]of e.entries())c.searchParams.append(u,l);return c}function Ba(t){if(!(t instanceof fn))throw qe('"config" must be an instance of Configuration',ir);if(Object.getPrototypeOf(t)!==fn.prototype)throw qe("subclassing Configuration is not allowed",or)}function fd(t){return t?AbortSignal.timeout(t*1e3):void 0}function ty(t,e){return e?.DPoP&&e.flag!==To?Vl(t):!1}var To=Symbol();async function pd(t,e,n){Ba(t);let{as:r,c:o,auth:i,fetch:a,tlsOnly:s,timeout:c}=Me(t);return ed(r,o,i,e,{[kt]:a,[Et]:!s,additionalParameters:new URLSearchParams(n),headers:new Headers(rr),signal:fd(c)}).then(td).catch(nr)}var md="oauth2:",ar="graffiti-auth-oauth2-data",Po=class{eventTarget=new EventTarget;constructor(){let e=this.completeOauth();(async()=>{await new Promise(r=>setTimeout(r,0)),await e;let n=new CustomEvent("initialized");this.eventTarget.dispatchEvent(n)})()}async login(...e){try{await this.login_(...e)}catch(n){let r=n instanceof Error?n:new Error("Unknown error"),o={loginId:e[1],error:r};this.eventTarget.dispatchEvent(new CustomEvent("login",{detail:o}))}}async login_(e,n,r){let o=await this.getAuthorizationConfiguration(e),i=r.map(encodeURIComponent).join(" "),a=cd(),s,c;if(typeof window<"u"){s=window.location.href;let d={loginId:n,redirectUri:s,authorizationEndpoint:e,state:a,serviceEndpoints:r};window.localStorage.setItem(ar,JSON.stringify(d))}else{let p=(await import("node:http").catch(f=>{throw new Error("Unrecognized environment: cannot find window or node:http")})).createServer();try{await new Promise((f,g)=>{p.once("error",g),p.listen(0,"::1",f)})}catch{try{p.close()}catch{}throw new Error("Failed to start local oauth callback server.")}let b=p.address();if(!b){try{p.close()}catch{}throw new Error("Failed to get local oauth callback server address.")}s=typeof b=="string"?`http://${b}`:`http://${b.family==="IPv6"?`[${b.address}]`:b.address}:${b.port}`,c=new Promise((f,g)=>{let v=setTimeout(()=>{try{p.close()}catch{}g("Oauth callback timed out.")},3e5),k=new Set;p.on("connection",_=>{k.add(_),_.on("close",()=>{k.delete(_)})});let A=async(_,S)=>{try{let x=new URL(_.url??"/",s);await this.onCallbackUrl({loginId:n,callbackUrl:x,configuration:o,expectedState:a,serviceEndpoints:r}),S.statusCode=200,S.setHeader("Content-Type","text/plain"),S.end("You may now close this window.")}catch(x){throw S.statusCode=500,S.setHeader("Content-Type","text/plain"),S.end("Error processing OAuth callback."),x}finally{clearTimeout(v),p.off("request",A);for(let x of k)x.destroy();p.close(()=>f())}};p.on("request",A)})}let u=new URL(s);u.hash="",u.search="";let l=dd(o,{scope:i,redirect_uri:u.toString(),state:a});typeof window<"u"?window.location.href=l.toString():(console.log("Please open the following URL in your browser:"),console.log(l.toString()),await c)}completeOauth(){if(typeof window>"u")return;let e=window.localStorage.getItem(ar);if(!e)return;let n;try{n=JSON.parse(e)}catch{console.error("Invalid OAuth2 login data in local storage."),window.localStorage.removeItem(ar);return}let r=ny.safeParse(n);if(!r.success){console.error("Invalid OAuth2 login data structure in local storage.",r.error),window.localStorage.removeItem(ar);return}let{loginId:o,redirectUri:i,authorizationEndpoint:a,state:s,serviceEndpoints:c}=r.data;try{let u=new URL(i),l=new URL(window.location.href);if(u.pathname!==l.pathname)return;let d=l.searchParams;return!d.has("code")&&!d.has("error")?void 0:(window.history.replaceState({},document.title,u.toString()),window.localStorage.removeItem(ar),new Promise(p=>setTimeout(p,0)).then(()=>this.getAuthorizationConfiguration(a)).then(p=>this.onCallbackUrl({loginId:o,callbackUrl:l,configuration:p,expectedState:s,serviceEndpoints:c})).catch(p=>{let b=p instanceof Error?p:new Error("Unknown error"),f={loginId:o,error:b};this.eventTarget.dispatchEvent(new CustomEvent("login",{detail:f}))}))}catch(u){console.error(u)}}async onCallbackUrl(e){let{loginId:n,callbackUrl:r,configuration:o,expectedState:i,serviceEndpoints:a}=e,s=await Za(o,r,{expectedState:i}),c=s.access_token,l=s.scope?.split(" ").map(decodeURIComponent)||a;if(!a.every(p=>l.includes(p)))throw new Error("Not all requested service endpoints were granted.");let d=new CustomEvent("login",{detail:{loginId:n,token:c}});this.eventTarget.dispatchEvent(d)}async logout(e,n,r){try{await this.logout_(e,n,r)}catch(o){let i=o instanceof Error?o:new Error("Unknown error"),a={logoutId:n,error:i};this.eventTarget.dispatchEvent(new CustomEvent("logout",{detail:a}))}}async logout_(e,n,r){let o=await this.getAuthorizationConfiguration(e);await pd(o,r);let i={logoutId:n};this.eventTarget.dispatchEvent(new CustomEvent("logout",{detail:i}))}async getAuthorizationConfiguration(e){if(!e.startsWith(md))throw new Error(`Unrecognized authorization endpoint method: ${e}`);let n=e.slice(md.length),r;try{r=new URL(n)}catch{throw new Error("Invalid issuer URL.")}return await ud(r,"graffiti-client")}},hd=_c(be({loginId:H()}),ut([be({token:H(),error:X(wc())}),be({error:Ct(Error)})])),gd=be({logoutId:H(),error:X(Ct(Error))}),yd=X(Ze(be({error:X(Ct(Error))}))),ny=be({loginId:H(),redirectUri:J(),authorizationEndpoint:J(),state:H(),serviceEndpoints:V(J())});var ry="https://";function Re(t){if(!t.startsWith(ry))throw new Error("Unrecognized storage bucket endpoint type")}async function zo(t){Re(t);let e=`${t}/auth`,n=await fetch(e);if(!n.ok)throw new Error("Failed to get storage bucket authorization endpoint");return await n.text()}var It=class t extends Error{constructor(e){super(e),this.name="GraffitiErrorUnauthorized",Object.setPrototypeOf(this,t.prototype)}};async function Ke(...t){let e=await fetch(...t);if(!e.ok){let n;try{n=await e.text()}catch{n=e.statusText}throw e.status===401?new It(n):e.status===403?new st(n):e.status===404?new Q(n):e.status===410?new De(n):e.status===413?new jt(n):new Error(n)}return e}var Oo=class{getAuthorizationEndpoint=zo;async put(e,n,r,o){Re(e);let i=`${e}/value/${encodeURIComponent(n)}`;await Ke(i,{method:"PUT",headers:{"Content-Type":"application/octet-stream",Authorization:`Bearer ${o}`},body:r.slice()})}async delete(e,n,r){Re(e);let o=`${e}/value/${encodeURIComponent(n)}`;await Ke(o,{method:"DELETE",headers:{Authorization:`Bearer ${r}`}})}async get(e,n,r){Re(e);let o=`${e}/value/${encodeURIComponent(n)}`,i=await Ke(o),a=i.body?.getReader();if(!a)throw new Error("Failed to read value from storage bucket");let s=i.headers.get("Content-Length"),c=s?Number(s):void 0;if(!!c&&!!Number.isFinite(c)&&c>=0){let f=c;if(r!==void 0&&f>r)throw new Error("Value exceeds maximum byte limit");let g=new Uint8Array(f),v=0,k=!1;try{for(;v<=g.length;){let{done:A,value:_}=await a.read();if(A){k=!0;break}if(!_||_.length===0)continue;let S=v+_.length;if(S>g.length)throw new Error("Received more data than expected");g.set(_,v),v=S}}finally{a.releaseLock()}if(!k)throw new Error("Failed to read complete value from storage bucket");return v===f?g:g.slice(0,v)}let l=[],d=0;try{for(;;){let{done:f,value:g}=await a.read();if(f)break;if(!(!g||g.length===0)){if(d+=g.length,r!==void 0&&d>r)throw new Error("Value exceeds maximum byte limit");l.push(g.slice())}}}finally{a.releaseLock()}let p=new Uint8Array(d),b=0;for(let f of l)p.set(f,b),b+=f.length;return p}async*export(e,n){Re(e);let r=`${e}/export`,o;for(;;){let a=await(await Ke(o?`${r}?cursor=${encodeURIComponent(o)}`:r,{headers:{Authorization:`Bearer ${n}`}})).blob(),s=Je(await a.arrayBuffer()),c=oy.parse(s);for(let u of c.keys)yield{key:u};if(c.cursor)o=c.cursor;else break}}},oy=be({keys:V(H()),cursor:X(Ze(H()))});var Ro=class{getAuthorizationEndpoint=zo;cache_=null;get cache(){return this.cache_||(this.cache_=dy()),this.cache_}async send(e,n){Re(e);let r=`${e}/send`,i=await(await Ke(r,{method:"PUT",headers:{"Content-Type":"application/cbor"},body:new Uint8Array(Ee({m:n}))})).blob(),a=Je(await i.arrayBuffer());return cy.parse(a).id}async get(e,n,r){let o=Uo(e,n),i=await this.cache,a=await i.messages.get(o);if(a!==void 0)return a;let s=`${e}/message/${n}`,c=null;try{c=await Ke(s,{method:"GET",headers:{...r?{Authorization:`Bearer ${r}`}:{}}})}catch(p){if(p instanceof Q)return await i.messages.set(o,null),null;throw p}let u=await c.blob(),l=Je(await u.arrayBuffer()),d=xd.parse(l);return await i.messages.set(o,d),d}async label(e,n,r,o){if(Re(e),o){let c=`${e}/label/${n}`;await Ke(c,{method:"PUT",headers:{"Content-Type":"application/cbor",Authorization:`Bearer ${o}`},body:new Uint8Array(Ee({l:r}))})}let i=await this.cache,a=Uo(e,n),s=await i.messages.get(a);s&&await i.messages.set(a,{...s,l:r})}async fetchMessageBatch(e,n,r,o,i){let a=await Ke(`${e}/${n}${i?`?cursor=${encodeURIComponent(i)}`:""}`,{method:"POST",headers:{"Content-Type":"application/cbor",...o?{Authorization:`Bearer ${o}`}:{}},body:r}),s=a.headers.get("Retry-After"),c=s?parseInt(s):void 0,u=c&&Number.isFinite(c)?Date.now()+c*1e3:void 0;return{response:a,waitTil:u}}async*yieldFromCache(e,n,r,o,i=0){let a=o.messageIds.slice(i);yield*await Promise.all(a.map(async c=>{let u=await e.messages.get(Uo(n,c));if(!u){try{await e.messageIds.del(r)}catch{}throw new Error("Cache out of sync - perhaps clear browser storage")}return u}))}async*lockedMessageStreamer(...e){if(typeof window>"u"||!await $d()){let f=this.messageStreamer(...e);for(;;){let g=await f.next();if(g.done)return g.value;yield g.value}}let n=await e[0],r=`graffiti:inbox:${n}`,o=()=>{},i=!1;if(await new Promise(f=>{window.navigator.locks.request(r,{mode:"exclusive",ifAvailable:!0},async g=>{i=!!g,f(),await new Promise(v=>o=v)})}),i)try{let f=this.messageStreamer(...e);for(;;){let g=await f.next();if(g.done)return g.value;yield g.value}}finally{o()}o(),await window.navigator.locks.request(r,()=>{});let a=e[1],s=e[5]??{},c=e[6],u=e[7],l=await this.cache,d=await l.messageIds.get(n);if(!d)throw new Error("Cache not found");if(c!==void 0&&c!==d.version)throw new De("Cursor is stale");let p=this.yieldFromCache(l,a,n,d,u);for await(let f of p)yield f;let b={numSeen:d.messageIds.length,version:d.version,messageIdsCacheKey:n,objectSchema:s};return JSON.stringify(b)}async*messageStreamer(e,n,r,o,i,a={},s,c=0){let u=await yr(a),l=await e,d=await this.cache,p=await d.messageIds.get(l);if(s!==void 0&&s!==p?.version)throw new De("Cursor is stale");let b=p?.waitTil;await wd(b);let f=p?.cursor,g;try{let x=await this.fetchMessageBatch(n,r,o,i,f);g=x.response,b=x.waitTil}catch(x){if(!(x instanceof De&&f))throw console.error("Unexpected error in stream, waiting 5 seconds before continuing..."),await new Promise(U=>setTimeout(U,5e3)),x;if(await d.messageIds.del(l),s===void 0)p=void 0;else throw x}if(g!==void 0&&p){let x=this.yieldFromCache(d,n,l,p,c);for await(let U of x)yield U}if(g===void 0){let x=await this.fetchMessageBatch(n,r,o,i);g=x.response,b=x.waitTil}let v=g,k,A=p?.version??crypto.randomUUID(),_=p?.messageIds??[];for(;;){let x=await v.blob(),U=Je(await x.arrayBuffer()),{results:M,hasMore:B,cursor:ie}=uy.parse(U);k=ie;let Ae=M.map(w=>{let O=w[At][ot];if(!u(O))throw new Error("Server returned data that does not match schema");return{...w,[At]:{...w[At],[ot]:O}}});await Promise.all(Ae.map(w=>d.messages.set(Uo(n,w[Fa]),w))),_=[..._,...Ae.map(w=>w[Fa])],await d.messageIds.set(l,{cursor:k,version:A,messageIds:_,waitTil:b}),c+=Ae.length;for(let w of Ae)yield w;if(!B)break;await wd(b);let h=await this.fetchMessageBatch(n,r,void 0,i,k);v=h.response,b=h.waitTil}return JSON.stringify({numSeen:c,version:A,messageIdsCacheKey:l,objectSchema:a})}query(e,n,r,o){Re(e);let i=Ee({tags:n,schema:r}),a=vd(e,"query",i);return this.lockedMessageStreamer(a,e,"query",new Uint8Array(i),o,r)}continueQuery(e,n,r){Re(e);let o=JSON.parse(n),{messageIdsCacheKey:i,numSeen:a,objectSchema:s,version:c}=ly.parse(o);return this.lockedMessageStreamer(Promise.resolve(i),e,"query",void 0,r,s,c,a)}export(e,n){Re(e);let r=vd(e,"export");return this.lockedMessageStreamer(r,e,"export",void 0,n)}},iy=we({value:he({}),channels:V(H()),allowed:X(Ze(V(J()))),url:J(),actor:J()}),_d=wt(t=>t instanceof Uint8Array),ay=V(_d),sr="t",ot="o",cr="m",sy=we({[sr]:ay,[ot]:iy,[cr]:_d}),Fa="id",At="m",Do="l",xd=we({[Fa]:H(),[At]:sy,[Do]:vc()}),cy=we({id:H()}),uy=we({results:V(xd),hasMore:Si(),cursor:H()}),ly=we({messageIdsCacheKey:H(),version:H(),numSeen:Nt().check(bt()),objectSchema:ut([he({}),Si()])});async function $d(){try{return globalThis.indexedDB?(await new Promise((t,e)=>{let n=indexedDB.open("__idb_probe__",1);n.onupgradeneeded=()=>n.result.createObjectStore("k"),n.onsuccess=()=>{n.result.close(),t()},n.onerror=()=>e(n.error)}),!0):!1}catch{return!1}}function Uo(t,e){return`${encodeURIComponent(t)}:${encodeURIComponent(e)}`}async function vd(t,e,n){let r=Ee({inboxUrl:t,type:e,body:n??null});return crypto.subtle.digest("SHA-256",new Uint8Array(r)).then(o=>Array.from(new Uint8Array(o)).map(i=>i.toString(16).padStart(2,"0")).join(""))}async function bd(){await new Promise(t=>{let e=indexedDB.deleteDatabase("graffiti-inbox-cache");e.onsuccess=()=>t(),e.onerror=()=>t(),e.onblocked=()=>t()})}async function dy(){if(await $d()){let{openDB:n}=await import("./build-BXWPS7VK.js"),r=await n("graffiti-inbox-cache",1,{upgrade(o){o.objectStoreNames.contains("m")||o.createObjectStore("m"),o.objectStoreNames.contains("q")||o.createObjectStore("q")}});return{messages:{get:async o=>{try{return r.get("m",o)}catch(i){console.error("Error getting message from cache:",i),console.error("resetting cache..."),await bd();return}},set:async(o,i)=>{await r.put("m",i,o)},del:o=>r.delete("m",o)},messageIds:{get:async o=>{try{return await r.get("q",o)}catch(i){console.error("Error getting message IDs from cache:",i),console.error("resetting cache..."),await bd();return}},set:async(o,i)=>{await r.put("q",i,o)},del:o=>r.delete("q",o)}}}let t=new Map,e=new Map;return{messages:{get:async n=>t.get(n),set:async(n,r)=>{t.set(n,r)},del:async n=>{t.delete(n)}},messageIds:{get:async n=>e.get(n),set:async(n,r)=>{e.set(n,r)},del:async n=>{e.delete(n)}}}}async function wd(t){if(t!==void 0){let e=t-Date.now();e>0&&await new Promise(n=>setTimeout(n,e))}}var pn="base64url";var jo=class{async encode(e,n){if(e!==pn)throw new Error(`Unsupported string encoding method: ${e}`);return"u"+btoa(String.fromCodePoint(...n)).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=+$/,"")}async decode(e){if(!e.startsWith("u"))throw new Error(`Unsupported string encoding prefix: ${e[0]}`);e=e.slice(1);let n=e.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";return Uint8Array.from(atob(n),r=>r.charCodeAt(0))}};function Sd(){let e=(typeof globalThis=="object"?globalThis.crypto:null)?.subtle;if(typeof e=="object"&&e!=null)return e;throw new Error("crypto.subtle must be defined")}function Ed(t,e,n){let r=async o=>{Pr(o);let i=Sd();return new Uint8Array(await i.digest(t,o))};return r.webCryptoName=t,r.outputLen=n,r.blockLen=e,r.create=()=>{throw new Error("not implemented")},r}function fy(t){if(Ac(t),typeof t.webCryptoName!="string")throw new Error("non-web hash")}var Tt=Ed("SHA-256",64,32);var kd=Ed("SHA-512",128,64),Ha=(()=>{let t=async(e,n,r)=>{let o=Sd();Pr(n,void 0,"key"),Pr(r,void 0,"message"),fy(e);let i=await o.importKey("raw",n,{name:"HMAC",hash:e.webCryptoName},!1,["sign"]);return new Uint8Array(await o.sign("HMAC",i,r))};return t.create=(e,n)=>{throw new Error("not implemented")},t})();var No="sha2-256",ur=18,mn=32,Co=class{async register(e,n){if(e!==No)throw new Error(`Unsupported content address method: ${e}`);let r=await Tt(n),o=new Uint8Array(2+r.length);return o[0]=ur,o[1]=mn,o.set(r,2),o}async getMethod(e){if(e[0]===ur&&e[1]===mn&&e.length===2+mn)return No;throw new Error("Unrecognized content address format.")}};var Ud={p:0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffedn,n:0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3edn,h:8n,a:0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecn,d:0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3n,Gx:0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51an,Gy:0x6666666666666666666666666666666666666666666666666666666666666658n},{p:le,n:Lo,Gx:Id,Gy:Ad,a:Ja,d:Ga,h:py}=Ud,zt=32,lr=64,my=(...t)=>{"captureStackTrace"in Error&&typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(...t)},se=(t="")=>{let e=new Error(t);throw my(e,se),e},hy=t=>typeof t=="bigint",gy=t=>typeof t=="string",yy=t=>t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array",Xe=(t,e,n="")=>{let r=yy(t),o=t?.length,i=e!==void 0;if(!r||i&&o!==e){let a=n&&`"${n}" `,s=i?` of length ${e}`:"",c=r?`length=${o}`:`type=${typeof t}`;se(a+"expected Uint8Array"+s+", got "+c)}return t},Wa=t=>new Uint8Array(t),Rd=t=>Uint8Array.from(t),Dd=(t,e)=>t.toString(16).padStart(e,"0"),jd=t=>Array.from(Xe(t)).map(e=>Dd(e,2)).join(""),it={_0:48,_9:57,A:65,F:70,a:97,f:102},Td=t=>{if(t>=it._0&&t<=it._9)return t-it._0;if(t>=it.A&&t<=it.F)return t-(it.A-10);if(t>=it.a&&t<=it.f)return t-(it.a-10)},Nd=t=>{let e="hex invalid";if(!gy(t))return se(e);let n=t.length,r=n/2;if(n%2)return se(e);let o=Wa(r);for(let i=0,a=0;i<r;i++,a+=2){let s=Td(t.charCodeAt(a)),c=Td(t.charCodeAt(a+1));if(s===void 0||c===void 0)return se(e);o[i]=s*16+c}return o},vy=()=>globalThis?.crypto,by=()=>vy()?.subtle??se("crypto.subtle must be defined, consider polyfill"),dr=(...t)=>{let e=Wa(t.reduce((r,o)=>r+Xe(o).length,0)),n=0;return t.forEach(r=>{e.set(r,n),n+=r.length}),e};var Mo=BigInt,Pt=(t,e,n,r="bad number: out of range")=>hy(t)&&e<=t&&t<n?t:se(r),I=(t,e=le)=>{let n=t%e;return n>=0n?n:e+n},Cd=t=>I(t,Lo),wy=(t,e)=>{(t===0n||e<=0n)&&se("no inverse n="+t+" mod="+e);let n=I(t,e),r=e,o=0n,i=1n,a=1n,s=0n;for(;n!==0n;){let c=r/n,u=r%n,l=o-a*c,d=i-s*c;r=n,n=u,o=a,i=s,a=l,s=d}return r===1n?I(o,e):se("no inverse")};var Va=t=>t instanceof at?t:se("Point expected"),qa=2n**256n,at=class t{static BASE;static ZERO;X;Y;Z;T;constructor(e,n,r,o){let i=qa;this.X=Pt(e,0n,i),this.Y=Pt(n,0n,i),this.Z=Pt(r,1n,i),this.T=Pt(o,0n,i),Object.freeze(this)}static CURVE(){return Ud}static fromAffine(e){return new t(e.x,e.y,1n,I(e.x*e.y))}static fromBytes(e,n=!1){let r=Ga,o=Rd(Xe(e,zt)),i=e[31];o[31]=i&-129;let a=Xa(o);Pt(a,0n,n?qa:le);let c=I(a*a),u=I(c-1n),l=I(r*c+1n),{isValid:d,value:p}=xy(u,l);d||se("bad point: y not sqrt");let b=(p&1n)===1n,f=(i&128)!==0;return!n&&p===0n&&f&&se("bad point: x==0, isLastByteOdd"),f!==b&&(p=I(-p)),new t(p,a,1n,I(p*a))}static fromHex(e,n){return t.fromBytes(Nd(e),n)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}assertValidity(){let e=Ja,n=Ga,r=this;if(r.is0())return se("bad point: ZERO");let{X:o,Y:i,Z:a,T:s}=r,c=I(o*o),u=I(i*i),l=I(a*a),d=I(l*l),p=I(c*e),b=I(l*I(p+u)),f=I(d+I(n*I(c*u)));if(b!==f)return se("bad point: equation left != right (1)");let g=I(o*i),v=I(a*s);return g!==v?se("bad point: equation left != right (2)"):this}equals(e){let{X:n,Y:r,Z:o}=this,{X:i,Y:a,Z:s}=Va(e),c=I(n*s),u=I(i*o),l=I(r*s),d=I(a*o);return c===u&&l===d}is0(){return this.equals(hn)}negate(){return new t(I(-this.X),this.Y,this.Z,I(-this.T))}double(){let{X:e,Y:n,Z:r}=this,o=Ja,i=I(e*e),a=I(n*n),s=I(2n*I(r*r)),c=I(o*i),u=e+n,l=I(I(u*u)-i-a),d=c+a,p=d-s,b=c-a,f=I(l*p),g=I(d*b),v=I(l*b),k=I(p*d);return new t(f,g,k,v)}add(e){let{X:n,Y:r,Z:o,T:i}=this,{X:a,Y:s,Z:c,T:u}=Va(e),l=Ja,d=Ga,p=I(n*a),b=I(r*s),f=I(i*d*u),g=I(o*c),v=I((n+r)*(a+s)-p-b),k=I(g-f),A=I(g+f),_=I(b-l*p),S=I(v*k),x=I(A*_),U=I(v*_),M=I(k*A);return new t(S,x,M,U)}subtract(e){return this.add(Va(e).negate())}multiply(e,n=!0){if(!n&&(e===0n||this.is0()))return hn;if(Pt(e,1n,Lo),e===1n)return this;if(this.equals(mt))return Ay(e).p;let r=hn,o=mt;for(let i=this;e>0n;i=i.double(),e>>=1n)e&1n?r=r.add(i):n&&(o=o.add(i));return r}multiplyUnsafe(e){return this.multiply(e,!1)}toAffine(){let{X:e,Y:n,Z:r}=this;if(this.equals(hn))return{x:0n,y:1n};let o=wy(r,le);I(r*o)!==1n&&se("invalid inverse");let i=I(e*o),a=I(n*o);return{x:i,y:a}}toBytes(){let{x:e,y:n}=this.assertValidity().toAffine(),r=Ld(n);return r[31]|=e&1n?128:0,r}toHex(){return jd(this.toBytes())}clearCofactor(){return this.multiply(Mo(py),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let e=this.multiply(Lo/2n,!1).double();return Lo%2n&&(e=e.add(this)),e.is0()}},mt=new at(Id,Ad,1n,I(Id*Ad)),hn=new at(0n,1n,1n,0n);at.BASE=mt;at.ZERO=hn;var Ld=t=>Nd(Dd(Pt(t,0n,qa),lr)).reverse(),Xa=t=>Mo("0x"+jd(Rd(Xe(t)).reverse())),We=(t,e)=>{let n=t;for(;e-- >0n;)n*=n,n%=le;return n},_y=t=>{let n=t*t%le*t%le,r=We(n,2n)*n%le,o=We(r,1n)*t%le,i=We(o,5n)*o%le,a=We(i,10n)*i%le,s=We(a,20n)*a%le,c=We(s,40n)*s%le,u=We(c,80n)*c%le,l=We(u,80n)*c%le,d=We(l,10n)*i%le;return{pow_p_5_8:We(d,2n)*t%le,b2:n}},Pd=0x2b8324804fc1df0b2b4d00993dfbd7a72f431806ad2fe478c4ee1b274a0ea0b0n,xy=(t,e)=>{let n=I(e*e*e),r=I(n*n*e),o=_y(t*r).pow_p_5_8,i=I(t*n*o),a=I(e*i*i),s=i,c=I(i*Pd),u=a===t,l=a===I(-t),d=a===I(-t*Pd);return u&&(i=s),(l||d)&&(i=c),(I(i)&1n)===1n&&(i=I(-i)),{isValid:u||l,value:i}},Zo=t=>Cd(Xa(t)),Ya=(...t)=>Qa.sha512Async(dr(...t));var $y=t=>{let e=t.slice(0,zt);e[0]&=248,e[31]&=127,e[31]|=64;let n=t.slice(zt,lr),r=Zo(e),o=mt.multiply(r),i=o.toBytes();return{head:e,prefix:n,scalar:r,point:o,pointBytes:i}},Md=t=>Ya(Xe(t,zt)).then($y);var Zd=t=>Md(t).then(e=>e.pointBytes);var Bd=t=>Ya(t.hashable).then(t.finish);var Sy=(t,e,n)=>{let{pointBytes:r,scalar:o}=t,i=Zo(e),a=mt.multiply(i).toBytes();return{hashable:dr(a,r,n),finish:u=>{let l=Cd(i+Zo(u)*o);return Xe(dr(a,Ld(l)),lr)}}},Fd=async(t,e)=>{let n=Xe(t),r=await Md(e),o=await Ya(r.prefix,n);return Bd(Sy(r,o,n))};var Hd={zip215:!0},Ey=(t,e,n,r=Hd)=>{t=Xe(t,lr),e=Xe(e),n=Xe(n,zt);let{zip215:o}=r,i,a,s,c,u=Uint8Array.of();try{i=at.fromBytes(n,o),a=at.fromBytes(t.slice(0,zt),o),s=Xa(t.slice(zt,lr)),c=mt.multiply(s,!1),u=dr(a.toBytes(),i.toBytes(),e)}catch{}return{hashable:u,finish:d=>{if(c==null||!o&&i.isSmallOrder())return!1;let p=Zo(d);return a.add(i.multiply(p,!1)).add(c.negate()).clearCofactor().is0()}}},Jd=async(t,e,n,r=Hd)=>Bd(Ey(t,e,n,r));var Qa={sha512Async:async t=>{let e=by(),n=dr(t);return Wa(await e.digest("SHA-512",n.buffer))},sha512:void 0};var Bo=8,ky=256,Gd=Math.ceil(ky/Bo)+1,Ka=2**(Bo-1),Iy=()=>{let t=[],e=mt,n=e;for(let r=0;r<Gd;r++){n=e,t.push(n);for(let o=1;o<Ka;o++)n=n.add(e),t.push(n);e=n.double()}return t},zd,Od=(t,e)=>{let n=e.negate();return t?n:e},Ay=t=>{let e=zd||(zd=Iy()),n=hn,r=mt,o=2**Bo,i=o,a=Mo(o-1),s=Mo(Bo);for(let c=0;c<Gd;c++){let u=Number(t&a);t>>=s,u>Ka&&(u-=i,t+=1n);let l=c*Ka,d=l,p=l+Math.abs(u)-1,b=c%2!==0,f=u<0;u===0?r=r.add(Od(b,e[d])):n=n.add(Od(f,e[p]))}return t!==0n&&se("invalid wnaf"),{p:n,f:r}};Qa.sha512Async=kd;var Ot="pk:sha2-256+ed25519",es=0,Fo=class{async register(e,n){if(e!==Ot)throw new Error(`Unsupported channel attestation method: ${e}`);let r=await this.channelToPrivateKey(n);return await this.channelPublicIdFromPrivateKey(r)}async getMethod(e){if(e[0]===es)return Ot;throw new Error("Unrecognized channel attestation method.")}async channelToPrivateKey(e){let n=new TextEncoder().encode(e);return await Tt(n)}async channelPublicIdFromPrivateKey(e){let n=await Zd(e),r=new Uint8Array(n.length+1);return r[0]=es,r.set(n,1),r}async attest(e,n,r){if(e!==Ot)throw new Error(`Unsupported channel attestation method: ${e}`);let o=await this.channelToPrivateKey(r),i=await this.channelPublicIdFromPrivateKey(o),a=new TextEncoder().encode(n);return{attestation:await Fd(a,o),channelPublicId:i}}async validate(e,n,r){let o=r[0];if(o!==es)throw new Error(`Unrecognized channel attestation method prefix: ${o}`);return await Jd(e,new TextEncoder().encode(n),r.slice(1))}};var ts="hmac:sha2-256",Vd=0,Ho=class{async attest(e,n){if(e!==ts)throw new Error(`Unsupported allowed attestation method: ${e}`);let r=_t(),o=await Ha(Tt,r,new TextEncoder().encode(n)),i=new Uint8Array(r.length+3);return i[0]=Vd,i[1]=ur,i[2]=mn,i.set(r,3),{attestation:o,ticket:i}}async validate(e,n,r){let o=r[0],i=r[1],a=r[2];if(o!==Vd||i!==ur||a!==mn)throw new Error("Unrecognized allowed ticket format");let s=await Ha(Tt,r.slice(3),new TextEncoder().encode(n));return e.length!==s.length?!1:s.every((c,u)=>e[u]===c)}};var ns="did:web:",Jo=class{constructor(e){this.services=e}actorToHandle=async e=>{let r=(await this.services.dids.resolve(e)).alsoKnownAs?.at(0);if(!r)throw new Q(`Handle for actor DID ${e} not found`);if(!r.startsWith(ns))throw new Error(`Handle DID ${r} is not a valid handle`);let o=r.slice(ns.length),i=await this.services.dids.resolve(r);if(!i.alsoKnownAs||!i.alsoKnownAs.includes(e))throw new Error(`Handle ${o} does not match actor ${e}`);return o};handleToActor=async e=>{let n=`${ns}${e}`,o=(await this.services.dids.resolve(n)).alsoKnownAs?.at(0);if(!o)throw new Q(`Actor for handle DID ${n} not found`);let i=await this.services.dids.resolve(o);if(!i.alsoKnownAs||!i.alsoKnownAs.includes(n))throw new Error(`Actor ${o} does not match handle ${e}`);return o}};var Ko="GraffitiInbox",Xo="GraffitiStorageBucket",as="#graffitiPersonalInbox",Yo="#graffitiStorageBucket",Ty="#graffitiSharedInbox_",Wo=class{constructor(e){this.services=e;let n=new Promise(o=>{this.services.authorization.eventTarget.addEventListener("initialized",i=>{if(!(i instanceof CustomEvent))return;let a=yd.safeParse(i.detail);if(!a.success)return;let s=a.data?.error;s&&console.error(s),o()})});this.services.authorization.eventTarget.addEventListener("login",this.onLogin.bind(this)),this.services.authorization.eventTarget.addEventListener("logout",this.onLogout.bind(this));let r;if(typeof window<"u"){let o=new URLSearchParams(window.location.search).get("actor");if(o)try{let i=decodeURIComponent(o),a=new URL(window.location.toString());a.searchParams.delete("actor"),window.history.replaceState({},"",a.toString()),r=this.login(i)}catch(i){console.error("Error decoding actor:",i)}}(async()=>{await new Promise(i=>setTimeout(i,0)),await r;for(let i of this.loggedInSessions){let a=new CustomEvent("login",{detail:{session:{actor:i.actor}}});this.sessionEvents.dispatchEvent(a)}await n;let o=new CustomEvent("initialized");this.sessionEvents.dispatchEvent(o)})()}sessionEvents=new EventTarget;inProgressLogin=void 0;inProgressLogout=void 0;async login(e){try{await this.login_(e)}catch(n){let r=new CustomEvent("login",{detail:{error:n instanceof Error?n:new Error(String(n)),session:{actor:e}}});this.sessionEvents.dispatchEvent(r)}}async login_(e){if(this.loggedInSessions.find(_=>_.actor===e)){this.sessionEvents.dispatchEvent(new CustomEvent("login",{detail:{session:{actor:e}}}));return}let o=(await this.services.dids.resolve(e)).service;if(!o)throw new Error(`No services found in actor document for ${e}`);let i=o.find(_=>_.id===Yo&&_.type===Xo),a=o.find(_=>_.id===as&&_.type===Ko),s=o.filter(_=>_.id.match(new RegExp(`^${Ty}\\d+$`))&&_.type===Ko);if(!a||!i||s.length===0)throw new Error(`Required services not found in actor document for ${e}`);let c=os(i),u=os(a),l=s.map(os),d=[{endpoint:c,type:"bucket"},{endpoint:u,type:"personal-inbox"},...l.map(_=>({endpoint:_,type:"shared-inbox"}))],p=await Promise.all(d.map(async({endpoint:_,type:S})=>{let x=await(S==="bucket"?this.services.storageBuckets.getAuthorizationEndpoint(_):this.services.inboxes.getAuthorizationEndpoint(_));return{endpoint:_,authorizationEndpoint:x,type:S}})),b=new Map;p.forEach(({authorizationEndpoint:_,endpoint:S,type:x})=>{b.has(_)||b.set(_,[]),b.get(_).push({endpoint:S,type:x})});let f=[...b.entries()],v={...{actor:e},tokens:[],servicesByAuthorization:f};typeof window<"u"?window.localStorage.setItem(Go,JSON.stringify(v)):this.inProgressLogin=v;let[k,A]=f[0];await this.services.authorization.login(k,e,A.map(_=>_.endpoint))}async onLogin(e){if(!(e instanceof CustomEvent))return;let n=hd.safeParse(e.detail);if(!n.success)return;let r=n.data.loginId;try{await this.onLogin_(n.data)}catch(o){let i=new CustomEvent("login",{detail:{error:o instanceof Error?o:new Error(String(o)),session:{actor:r}}});this.sessionEvents.dispatchEvent(i)}}async onLogin_(e){if(e.error)throw e.error;let n=e.token,r=e.loginId,o;if(typeof window<"u"){let i=window.localStorage.getItem(Go);if(!i)throw new Error("No in-progress login found");let a=JSON.parse(i);o=is.parse(a)}else{if(!this.inProgressLogin)throw new Error("No in-progress login found");o=this.inProgressLogin}if(o.actor!==r)throw new Error("Actor mismatch in login response - concurrent logins?");if(o.tokens.push(n),o.tokens.length===o.servicesByAuthorization.length){typeof window>"u"?this.inProgressLogin=void 0:window.localStorage.removeItem(Go);let i=o.servicesByAuthorization.flatMap(([u,l],d)=>l.map(p=>({token:o.tokens[d],serviceEndpoint:p.endpoint,authorizationEndpoint:u,type:p.type}))),a={...o,storageBucket:i.find(u=>u.type==="bucket"),personalInbox:i.find(u=>u.type==="personal-inbox"),sharedInboxes:i.filter(u=>u.type==="shared-inbox")},s=this.loggedInSessions;s.push(a),this.loggedInSessions=s;let c=new CustomEvent("login",{detail:{session:{actor:r}}});this.sessionEvents.dispatchEvent(c)}else{typeof window<"u"?window.localStorage.setItem(Go,JSON.stringify(o)):this.inProgressLogin=o;let[i,a]=o.servicesByAuthorization[o.tokens.length];await this.services.authorization.login(i,r,a.map(s=>s.endpoint))}}async logout(e){try{await this.logout_(e)}catch(n){let r=new CustomEvent("logout",{detail:{error:n instanceof It?void 0:n instanceof Error?n:new Error(String(n)),actor:e}});this.sessionEvents.dispatchEvent(r)}}async logout_(e){let n=this.loggedInSessions.find(a=>a.actor===e);if(!n)throw new Error(`No session found for actor ${e}`);this.loggedInSessions=this.loggedInSessions.filter(a=>a.actor!==e);let r=n.tokens.pop();if(!r)throw new Error("No tokens found in session");typeof window<"u"?window.localStorage.setItem(Vo,JSON.stringify(n)):this.inProgressLogout=n;let[o,i]=n.servicesByAuthorization[n.tokens.length];await this.services.authorization.logout(o,e,r)}async onLogout(e){if(!(e instanceof CustomEvent))return;let n=gd.safeParse(e.detail);if(!n.success)return;let r=n.data.logoutId;try{await this.onLogout_(n.data)}catch(o){let i=new CustomEvent("logout",{detail:{error:o instanceof Error?o:new Error(String(o)),actor:r}});this.sessionEvents.dispatchEvent(i)}}async onLogout_(e){if(e.error)throw e.error;let n=e.logoutId,r;if(typeof window<"u"){let i=window.localStorage.getItem(Vo);if(!i)throw new Error("No in-progress logout found");let a=JSON.parse(i);r=is.parse(a)}else{if(!this.inProgressLogout)throw new Error("No in-progress logout found");r=this.inProgressLogout}if(r.actor!==n)throw new Error("Actor mismatch in logout response - concurrent logouts?");let o=r.tokens.pop();if(o){typeof window<"u"?window.localStorage.setItem(Vo,JSON.stringify(r)):this.inProgressLogout=r;let[i,a]=r.servicesByAuthorization[r.tokens.length];await this.services.authorization.logout(i,n,o)}else{typeof window>"u"?this.inProgressLogout=void 0:window.localStorage.removeItem(Vo);let i=new CustomEvent("logout",{detail:{actor:n}});this.sessionEvents.dispatchEvent(i)}}get loggedInSessions(){if(typeof window>"u")return qd;let e=window.localStorage.getItem(qo);if(!e)return[];let n;try{n=JSON.parse(e)}catch{return console.error("Error parsing stored session data"),window.localStorage.removeItem(qo),[]}let r=V(Oy).safeParse(n);return r.success?r.data:(console.error("Stored session data is invalid"),window.localStorage.removeItem(qo),[])}set loggedInSessions(e){if(typeof window>"u"){qd=e;return}window.localStorage.setItem(qo,JSON.stringify(e))}resolveSession(e){let n=this.loggedInSessions.find(r=>r.actor===e.actor);if(!n){let r=new CustomEvent("logout",{detail:{actor:e.actor}});throw this.sessionEvents.dispatchEvent(r),new Error("Not logged in")}return n}},qd=[],Go="graffiti-login-in-progress",Vo="graffiti-logout-in-progress",qo="graffiti-sessions-logged-in",Py=be({actor:J()}),rs=be({token:H(),serviceEndpoint:J(),authorizationEndpoint:J()}),zy=V(fe([J(),V(be({endpoint:J(),type:$c(["bucket","personal-inbox","shared-inbox"])}))])),is=tt(Py,{tokens:V(H()),servicesByAuthorization:zy}),Oy=tt(is,{storageBucket:rs,personalInbox:rs,sharedInboxes:V(rs)});function os(t){if(typeof t.serviceEndpoint=="string")return t.serviceEndpoint;throw new Error(`Service endpoint for ${t.id} is not a string`)}var Qo=32*1024,ei=class{constructor(e){this.primitives=e}async encode(e,n){e=fs(e);let r=[...new Set(e.channels)],o=await Promise.all(r.map(g=>this.primitives.channelAttestations.attest(Ot,n,g))),i=o.map(g=>g.attestation),a=o.map(g=>g.channelPublicId),s={[cs]:e.value,[us]:i,[Xd]:_t(32)},c;if(Array.isArray(e.allowed)){let g=await Promise.all(e.allowed.map(async v=>this.primitives.allowedAttestations.attest(ts,v)));s[ls]=g.map(v=>v.attestation),c=g.map(v=>v.ticket)}let u=Ee(s);if(u.byteLength>Qo)throw new Error("The object is too large");let l=await this.primitives.contentAddresses.register(No,u),d=await this.primitives.stringEncoder.encode(pn,l),p=Ry(n,d),b=[new TextEncoder().encode(p),...a];return{object:{value:e.value,channels:r,url:p,actor:n,...e.allowed?{allowed:e.allowed}:{}},tags:b,objectBytes:u,allowedTickets:c}}async validate(e,n,r,o){if(r.byteLength>Qo)throw new Error("Object is too big");let{actor:i,contentAddress:a}=ps(e.url);if(i!==e.actor)throw new Error("Object actor does not match URL actor");let s=n.at(0);if(!s)throw new Error("No object URL tag");if(new TextDecoder().decode(s)!==e.url)throw new Error("Object URL tag does not match object URL");let c=n.slice(1),u=await this.primitives.stringEncoder.decode(a),l=await this.primitives.contentAddresses.getMethod(u),d=await this.primitives.contentAddresses.register(l,r);if(d.length!==u.length||!d.every((_,S)=>_===u[S]))throw new Error("Content address is invalid");let p=Je(r),b=Uy.parse(p),f=b[cs],g=b[us],v=b[ls],k=Ee(f),A=Ee(e.value);if(k.length!==A.length||!k.every((_,S)=>_===A[S]))throw new Error("Object value does not match storage value");if(g.length!==c.length)throw new Error("Not as many channel attestations and public ids");for(let[_,S]of g.entries()){let x=c[_];if(!await this.primitives.channelAttestations.validate(S,i,x))throw new Error("Invalid channel attestation")}if(e.channels.length){if(e.channels.length!==c.length)throw new Error("Number of claimed channels does not match attestations/public IDs");let _=await this.primitives.channelAttestations.getMethod(c[0]),S=await Promise.all(e.channels.map(x=>this.primitives.channelAttestations.register(_,x)));for(let[x,U]of S.entries()){let M=c[x];if(U.length!==M.length||!U.every((B,ie)=>B===M[ie]))throw new Error("Channel public id does not match expected")}}if(o){if(!v)throw new Error("Object is public but thought to be private");let _,S,x;if("recipient"in o?(_=[o.recipient],S=[o.allowedTicket],x=v.filter((U,M)=>M===o.allowedIndex)):(_=[...e.allowed??[]],S=o.allowedTickets,x=v),_.length!==e.allowed?.length)throw new Error("Recipient count does not match object allowed list");if(!_.every(U=>e.allowed?.includes(U)))throw new Error("Recipient not in object allowed list");for(let[U,M]of _.entries()){let B=S.at(U),ie=x.at(U);if(!B)throw new Error("Missing allowed ticket for recipient");if(!ie)throw new Error("Missing allowed attestation for recipient");if(!await this.primitives.allowedAttestations.validate(ie,M,B))throw new Error("Invalid allowed attestation for recipient")}}else if(v)throw new Error("Object is private but no recipient info provided")}},cs="v",us="c",ls="a",Xd="n",ss=wt(t=>t instanceof Uint8Array),Uy=we({[cs]:he({}),[us]:V(ss),[ls]:X(V(ss)),[Xd]:ss}),ds="graffiti:";function Kd(t){let e=t.replace(/:/g,"!").replace(/\//g,"~");return encodeURIComponent(e)}function Wd(t){return decodeURIComponent(t).replace(/!/g,":").replace(/~/g,"/")}function Ry(t,e){return`${ds}${Kd(t)}:${Kd(e)}`}function ps(t){if(!t.startsWith(ds))throw new Error("Invalid object URL");let n=t.slice(ds.length).split(":");if(n.length!==2)throw new Error("Invalid object URL format");let[r,o]=n;return{actor:Wd(r),contentAddress:Wd(o)}}function fs(t){return t===void 0?null:Array.isArray(t)?t.map(fs):typeof t=="object"?Object.fromEntries(Object.entries(t).filter(([,e])=>e!==void 0).map(([e,n])=>[e,fs(n)])):t}var Yd=class{dialog=document.createElement("dialog");shadow;main_;useTemplateHTML;templates_;onManualClose;displayTemplateSeq=0;constructor(t){this.useTemplateHTML=t.useTemplateHTML,this.onManualClose=t.onManualClose,this.dialog.className="graffiti-modal",this.dialog.addEventListener("click",n=>{if("pointerType"in n&&!n.pointerType)return;let r=this.dialog.getBoundingClientRect();(r.top>n.clientY||r.left>n.clientX||n.clientY>r.top+r.height||n.clientX>r.left+r.width)&&(this.close(),this.onManualClose?.())});let e=document.createElement("div");this.shadow=e.attachShadow({mode:"closed"}),this.shadow.appendChild(this.dialog),document.body.append(e)}get templates(){return this.templates_||(this.main_,this.templates_=new Promise(async t=>t(await this.useTemplateHTML())).then(t=>{let e=new DOMParser().parseFromString(t,"text/html"),n=new Map;return e.querySelectorAll("template").forEach(r=>{let o=r.id;o&&n.set(o,r)}),n})),this.templates_}get main(){return this.main_||(this.templates_,this.main_=Promise.all([import("./style-BOBMBTYJ-ORUSIJTZ.js"),import("./graffiti-KV3G3O72-URO7SJIJ.js"),import("./rock-salt-LI7DAH66-KPFEBIBO.js")]).then(async([{default:t},{default:e},{default:n}])=>{let r=document.createElement("header"),o=document.createElement("button");o.className="secondary",o.textContent="Close",o?.addEventListener("click",()=>{this.close(),this.onManualClose?.()}),r.appendChild(o);let i=document.createElement("main");this.dialog.appendChild(r),this.dialog.appendChild(i);let a=new FontFace("Rock Salt",`url(${n})`,{style:"normal",weight:"400"});document.fonts.add(a),await a.load(),t=t.replace("url(graffiti.jpg)",`url(${e})`);let s=new CSSStyleSheet;return s.replace(t).then(()=>{this.shadow.adoptedStyleSheets=[s]}),i})),this.main_}async open(){await this.main,this.dialog.showModal(),this.dialog.focus()}close(){this.dialog.close()}async displayTemplate(t){let e=++this.displayTemplateSeq,n=()=>{if(e!==this.displayTemplateSeq)throw new Error(`displayTemplate(${t}) overridden by concurrent call`)},r=await this.main;n();let o=(await this.templates).get(t);if(n(),!o)throw new Error(`Template not found: ${t}`);let i=o.content.cloneNode(!0);return r.replaceChildren(i),r}};var tf=wt(t=>t instanceof Uint8Array),gs="k",gn="t",bs=we({[gs]:H(),[gn]:X(H())}),Ut="id",ys="e",fr="a",Dy=V(we({[Ut]:H(),[ys]:X(J()),[fr]:X(J())})),ti="s",ni="n",jy=tt(bs,{[ti]:X(V(tf)),[ni]:Dy}),pr="a",vs="i",Ny=tt(bs,{[pr]:tf,[vs]:Nt().check(bt())}),Cy=ut([bs,jy,Ny]),Ly=0,ms=1,ht=2,hs=3,My=16,Qd="graffiti-login-remembered-handle",ri=class{dids=new mo;authorization=new Po;storageBuckets=new Oo;inboxes=new Ro;stringEncoder=new jo;contentAddresses=new Co;channelAttestations=new Fo;allowedAttestations=new Ho;sessions=new Wo({dids:this.dids,authorization:this.authorization,storageBuckets:this.storageBuckets,inboxes:this.inboxes});handles=new Jo({dids:this.dids});objectEncoding=new ei({stringEncoder:this.stringEncoder,contentAddresses:this.contentAddresses,channelAttestations:this.channelAttestations,allowedAttestations:this.allowedAttestations});modal=typeof window>"u"?void 0:new Yd({useTemplateHTML:()=>import("./login-dialog.html-VTDKJZBG.js").then(({template:e})=>e),onManualClose:()=>{let e=new CustomEvent("login",{detail:{error:new Error("User cancelled login"),manual:!0}});this.sessionEvents.dispatchEvent(e)}});defaultInboxEndpoints;identityCreatorEndpoint;constructor(e){this.defaultInboxEndpoints=e?.defaultInboxEndpoints??["https://graffiti.actor/i/shared"],this.identityCreatorEndpoint=e?.identityCreatorEndpoint??"https://graffiti.actor/create",this.sessionEvents.addEventListener("login",async n=>{if(!(n instanceof CustomEvent))return;let r=n.detail;if(r.error!==void 0){if("manual"in r&&r.manual)return;alert("Login failed: "+r.error.message);let a=r.session?.actor,s;if(a)try{s=await this.actorToHandle(a)}catch(c){console.error("Failed to handle actor:",c)}this.login_(s);return}let o=r.session.actor,i;try{i=await this.actorToHandle(o)}catch(a){console.error("Failed to load handle from actor:",a)}i&&await this.rememberHandleInPasswordManager(i,o)});for(let n of["post","get","delete","postMedia","getMedia","deleteMedia"]){let r=this[n];this[n]=async(...o)=>{try{return await r(...o)}catch(i){let a=o[o.length-1];throw await this.tryLogoutIfUnauthorized(i,a),i}}}}actorToHandle=this.handles.actorToHandle.bind(this.handles);handleToActor=this.handles.handleToActor.bind(this.handles);sessionEvents=this.sessions.sessionEvents;login=async e=>{try{let n;try{n=e?await this.actorToHandle(e):void 0}catch(r){console.error("Error fetching handle for actor:",r)}await this.login_(n)}catch(n){let r=new CustomEvent("login",{detail:{error:n instanceof Error?n:new Error(String(n))}});this.sessionEvents.dispatchEvent(r)}};async login_(e){if(typeof window<"u"){let n;if(e!==void 0){n=await this.modal?.displayTemplate("graffiti-login-handle");let o=n?.querySelector("#username"),i=e||await this.getRememberedHandleFromPasswordManager();o&&(o.value=i??""),o?.addEventListener("focus",()=>o?.select()),setTimeout(()=>o?.focus(),0),n?.querySelector("#graffiti-login-handle-form")?.addEventListener("submit",async a=>{a.preventDefault(),o?.setAttribute("disabled","true");let s=n?.querySelector("#graffiti-login-handle-submit");if(s?.setAttribute("disabled","true"),s&&(s.innerHTML="Logging in..."),!o?.value){alert("No handle provided"),this.login_("");return}let c=o.value;if(!c.includes(".")&&!c.startsWith("localhost")){let l=new URL(this.identityCreatorEndpoint).host;c=`${c}.${l}`}let u;try{u=await this.handleToActor(c)}catch{alert("Could not find an identity associated with that handle."),this.login_(c);return}try{await this.sessions.login(u)}catch(l){alert("Error logging in."),console.error(l),this.login_(c)}})}else n=await this.modal?.displayTemplate("graffiti-login-welcome"),n?.querySelector("#graffiti-login-existing")?.addEventListener("click",o=>{o.preventDefault(),this.login_("")}),setTimeout(()=>n?.querySelector("#graffiti-login-new")?.focus(),0);let r=new URL(this.identityCreatorEndpoint);r.searchParams.set("redirect_uri",encodeURIComponent(window.location.toString())),n?.querySelector("#graffiti-login-new")?.setAttribute("href",r.toString()),await this.modal?.open()}else{let n=await import("readline").catch(a=>{throw new Error("Unrecognized environment: neither window nor readline")});console.log("If you do not already have a Graffiti handle, you can create one here:"),console.log(this.identityCreatorEndpoint);let r=n.createInterface({input:process.stdin,output:process.stdout}),o=await new Promise(a=>{r.question(`Please enter your handle${e?` (default: ${e})`:""}: `,s=>{r.close(),a(s||e)})});if(!o)throw new Error("No handle provided");let i=await this.handleToActor(o);await this.sessions.login(i)}}async rememberHandleInPasswordManager(e,n){if(typeof window>"u")return;let r=window.navigator.credentials,o=window.PasswordCredential;if(!r?.store||!o){this.rememberHandleInBrowserStorage(e);return}try{let i=new o({id:e,password:"no-password",name:e});await r.store(i)}catch(i){console.error("Failed to remember handle in password manager:",i),this.rememberHandleInBrowserStorage(e)}}async getRememberedHandleFromPasswordManager(){if(typeof window>"u")return;let e=window.navigator.credentials,n=window.PasswordCredential;if(!e?.get||!n)return this.getRememberedHandleFromBrowserStorage();try{let r=await e.get({password:!0,mediation:"optional"});if(r&&"id"in r&&typeof r.id=="string")return r.id}catch(r){return console.error("Failed to load handle from password manager:",r),this.getRememberedHandleFromBrowserStorage()}}rememberHandleInBrowserStorage(e){if(!(typeof window>"u"))try{window.localStorage.setItem(Qd,e)}catch(n){console.error("Failed to remember handle in browser storage:",n)}}getRememberedHandleFromBrowserStorage(){if(!(typeof window>"u"))try{return window.localStorage.getItem(Qd)??void 0}catch(e){console.error("Failed to load handle from browser storage:",e);return}}logout=async e=>{await this.sessions.logout(e.actor)};post=async(...e)=>{let[n,r]=e,o=this.sessions.resolveSession(r),{object:i,tags:a,objectBytes:s,allowedTickets:c}=await this.objectEncoding.encode(n,r.actor),u=_t(),l=await this.stringEncoder.encode(pn,u);return await this.storageBuckets.put(o.storageBucket.serviceEndpoint,l,s,o.storageBucket.token),await this.announceObject(i,a,c,l,r),i};get=async(...e)=>{let[n,r,o]=e,i,a=await yr(r);if(o){let u=this.sessions.resolveSession(o);i=[u.personalInbox,...u.sharedInboxes]}else i=this.defaultInboxEndpoints.map(u=>({serviceEndpoint:u}));let s=ai(n),c=[new TextEncoder().encode(s)];for(let u of i){let l,d=this.querySingleEndpoint(u.serviceEndpoint,{tags:c,objectSchema:{}},u.token,o?.actor);for await(let p of d)p.object.url===s&&(p.tombstone?l=void 0:l=p.object);if(l){if(!a(l))throw new hr("Object exists but does not match the supplied schema");return l}}throw new Q("Object not found")};delete=async(e,n)=>{let r=this.sessions.resolveSession(n),o=ai(e),{actor:i}=ps(o);if(i!==n.actor)throw new st("Cannot delete someone else's actor");let a=this.querySingleEndpoint(r.personalInbox.serviceEndpoint,{tags:[new TextEncoder().encode(o)],objectSchema:{}},r.personalInbox.token),s;for await(let f of a)f.object.url===o&&(f.tombstone?s=void 0:s=f);if(!s)throw new Q(`Object ${o} not found`);let{object:c,storageBucketKey:u,tags:l,allowedTickets:d,announcements:p,messageId:b}=s;return await this.storageBuckets.delete(r.storageBucket.serviceEndpoint,u,r.storageBucket.token),await this.announceObject(c,l,d,u,n,[...p??[],{[fr]:n.actor,[Ut]:b}]),c};postMedia=async(...e)=>{let[n,r]=e,o=n.data.type,i=this.sessions.resolveSession(r),a=_t(),s=await this.stringEncoder.encode(pn,a);await this.storageBuckets.put(i.storageBucket.serviceEndpoint,s,new Uint8Array(await n.data.arrayBuffer()),i.storageBucket.token);let{url:c}=await this.post({value:{key:s,type:o,size:n.data.size},channels:[],allowed:n.allowed},r);return c};getMedia=async(...e)=>{let[n,r,o]=e,i=await this.get(n,Zy,o),{key:a,type:s,size:c}=i.value;if(r?.maxBytes&&c>r.maxBytes)throw new jt("File size exceeds limit");if(r?.types&&!_s(s,r.types))throw new gr(`Unacceptable media type, ${s}`);let l=(await this.dids.resolve(i.actor))?.service?.find(f=>f.id===Yo&&f.type===Xo);if(!l)throw new Q(`Actor ${i.actor} has no storage bucket service`);if(typeof l.serviceEndpoint!="string")throw new Q(`Actor ${i.actor} does not have a valid storage bucket endpoint`);let d=l.serviceEndpoint,p=await this.storageBuckets.get(d,a,c);return{data:new Blob([p.slice()],{type:s}),actor:i.actor,allowed:i.allowed}};deleteMedia=async(...e)=>{let[n,r]=e,o=this.sessions.resolveSession(r),i=await this.delete(n,r);if(!("key"in i.value&&typeof i.value.key=="string"))throw new Error("Deleted object was not media: "+JSON.stringify(i,null,2));await this.storageBuckets.delete(o.storageBucket.serviceEndpoint,i.value.key,o.storageBucket.token)};async*discoverMeta(e,n,r,o){let i=new Map,a;if(o){let d=this.sessions.resolveSession(o);a=[d.personalInbox,...d.sharedInboxes]}else a=this.defaultInboxEndpoints.map(d=>({serviceEndpoint:d}));for(let d in r)if(!a.some(p=>p.serviceEndpoint===d))throw new st("Cursor does not match actor's inboxes");let s=await Promise.all(e.map(d=>this.channelAttestations.register(Ot,d))),c=a.map(d=>{let p=r[d.serviceEndpoint];return this.querySingleEndpoint(d.serviceEndpoint,p?{cursor:p}:{tags:s,objectSchema:n},d.token,o?.actor)}),u=c.map(async(d,p)=>ef(d,p)),l=u.length;try{for(;l>0;){let d=await Promise.race(u);if(d.error!==void 0)u[d.index]=new Promise(()=>{}),l--,yield{error:d.error,origin:a[d.index].serviceEndpoint},this.tryLogoutIfUnauthorized(d.error,o);else if(d.result.done){let p=a[d.index];r[p.serviceEndpoint]=d.result.value,u[d.index]=new Promise(()=>{}),l--}else{u[d.index]=ef(c[d.index],d.index);let{object:p,tombstone:b,tags:f}=d.result.value;if(b){if(i.get(p.url)===!0)continue;i.set(p.url,!0),yield{tombstone:b,object:{url:p.url}}}else{if(i.get(p.url)===!1)continue;let v=s.reduce((k,A,_)=>{for(let S of f)if(A.length===S.length&&A.every((x,U)=>S[U]===x)){k.push(_);break}return k},[]).map(k=>e[k]);v.length===0&&(yield{error:new Error("Inbox returned object without matching channels"),origin:a[d.index].serviceEndpoint}),i.set(p.url,!1),yield{object:{...p,channels:v}}}}}}catch(d){throw this.tryLogoutIfUnauthorized(d,o),d}finally{await Promise.all(c.map(async d=>{await d.return("")}))}return{cursor:JSON.stringify({channels:e,cursors:r})}}discover=(...e)=>{let[n,r,o]=e;return this.discoverMeta(n,r,{},o)};continueDiscover=(...e)=>{let[n,r]=e,o,i;try{let a=JSON.parse(n),s=By.parse(a);o=s.channels,i=s.cursors}catch{return(async function*(){throw new De("Invalid cursor")})()}return this.discoverMeta(o,{},i,r)};async tryLogoutIfUnauthorized(e,n){e instanceof It&&n&&await this.sessions.logout(n.actor)}async announceObject(e,n,r,o,i,a){let s=this.sessions.resolveSession(i),c={[gs]:o},u=[],l=e.allowed;if(Array.isArray(l)){if(!r||r.length!==l.length)throw new Error("If allowed actors are specified, there must be a corresponding ticket for each allowed actor");let b=await Promise.allSettled(l.map(async(f,g)=>{let v=JSON.parse(JSON.stringify(e)),k=si(v,[],f),_=(await this.dids.resolve(f)).service?.find(M=>M.type===Ko&&M.id===as);if(!_)throw new Error(`Recipient ${f} does not have a personal inbox`);if(typeof _.serviceEndpoint!="string")throw new Error(`Recipient ${f} does not have a valid personal inbox endpoint`);let S=a?a.find(M=>M[fr]===f)?.[Ut]:void 0,x={...c,...S?{[gn]:S}:{},[pr]:r[g],[vs]:g},U=await this.inboxes.send(_.serviceEndpoint,{[sr]:n,[ot]:k,[cr]:Ee(x)});u.push({[Ut]:U,[fr]:f})}));for(let[f,g]of b.entries())if(g.status==="rejected"){let v=l[f];console.error("Error sending to recipient:",v),console.error(g.reason)}}else{let b=JSON.parse(JSON.stringify(e)),f=si(b,[]),g=s.sharedInboxes,v=await Promise.allSettled(g.map(async k=>{let A=a?a.find(x=>x[ys]===k.serviceEndpoint)?.[Ut]:void 0,_={...c,...A?{[gn]:A}:{}},S=await this.inboxes.send(k.serviceEndpoint,{...A?{[gn]:A}:{},[sr]:n,[ot]:f,[cr]:Ee(_)});u.push({[Ut]:S,[ys]:k.serviceEndpoint})}));for(let[k,A]of v.entries())if(A.status==="rejected"){let _=g[k];console.error("Error sending to inbox:",_),console.error(A.reason)}}let d=a?a.find(b=>b[fr]===i.actor)?.[Ut]:void 0,p={...c,...r?{[ti]:r}:{},...d?{[gn]:d}:{},[ni]:u};await this.inboxes.send(s.personalInbox.serviceEndpoint,{[sr]:n,[ot]:e,[cr]:Ee(p)})}async*querySingleEndpoint(e,n,r,o){let i="tags"in n?this.inboxes.query(e,n.tags,n.objectSchema,r):this.inboxes.continueQuery(e,n.cursor,r),a=[],s=null;try{for(;;){for(;s===null&&a.length<My;){let l=await i.next();if(l.done){s=l.value;break}let d=this.processOneLabeledMessage(e,l.value,r,o).catch(p=>{throw p});a.push(d)}let c=a.shift();if(!c){if(s!==null)return s;throw new Error("Process queue empty but no return value")}let u=await c;u&&(yield u)}}finally{await i.return("")}}async processOneLabeledMessage(e,n,r,o){let i=n.l;if(i!==ms&&i!==Ly&&i!==ht)return;let a=n.id,{o:s,m:c,t:u}=n.m,l;try{let v=Je(c);l=Cy.parse(v)}catch{this.inboxes.label(e,a,hs,r);return}let{[gs]:d,[gn]:p}=l,b=ti in l?l[ti]:void 0,f=ni in l?l[ni]:void 0;if(i===ms)return{messageId:a,object:s,storageBucketKey:d,allowedTickets:b,tags:u,announcements:f};if(i===ht){if(!p)return;let v=await this.inboxes.get(e,p,r);return!v||v[At][ot].url!==s.url?void 0:(v[Do]!==ht&&this.inboxes.label(e,p,ht,r),{messageId:a,tombstone:!0,object:s,storageBucketKey:d,allowedTickets:b,tags:u,announcements:f})}let g;try{let v=s.actor,A=(await this.dids.resolve(v))?.service?.find(U=>U.id===Yo&&U.type===Xo);if(!A)throw new Q(`Actor ${v} has no storage bucket service`);if(typeof A.serviceEndpoint!="string")throw new Q(`Actor ${v} does not have a valid storage bucket endpoint`);let _=A.serviceEndpoint,S=await this.storageBuckets.get(_,d,Qo);if(pr in l&&!o)throw new st("Recipient is required when allowed ticket is present");let x=b?{allowedTickets:b}:pr in l?{recipient:o??"null",allowedTicket:l[pr],allowedIndex:l[vs]}:void 0;await this.objectEncoding.validate(s,u,S,x)}catch(v){g=v}if(p){if(g instanceof Q)return this.inboxes.get(e,p,r).then(v=>{v&&v[At][ot].url===s.url&&v[Do]!==ht&&this.inboxes.label(e,p,ht,r),this.inboxes.label(e,a,ht,r)}),{messageId:a,tombstone:!0,object:s,storageBucketKey:d,allowedTickets:b,tags:u,announcements:f};console.error("Recieved an incorrect tombstone object"),console.error(g),this.inboxes.label(e,a,hs,r)}else{if(g===void 0)return this.inboxes.label(e,a,ms,r),{messageId:a,object:s,storageBucketKey:d,tags:u,allowedTickets:b,announcements:f};g instanceof Q?this.inboxes.label(e,a,ht,r):(console.error("Recieved an incorrect object"),console.error(g),this.inboxes.label(e,a,hs,r))}}},Zy={properties:{value:{properties:{type:{type:"string"},size:{type:"number"},key:{type:"string"}},required:["type","size","key"]}}},By=we({cursors:xc(J(),H()),channels:V(H())});async function ef(t,e){try{return{index:e,result:await t.next()}}catch(n){if(n instanceof De||n instanceof Dt)throw n;return{index:e,error:n instanceof Error?n:new Error(String(n))}}}var nf=class extends Tr{constructor(e){let n=new ri(e);super(n)}};export{nf as GraffitiDecentralized};
|
|
1
|
+
import{a as Uf,b as Mf,c as Nf}from"./chunk-O4MIY67H.js";var cd=Uf((yt,ad)=>{var xo=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||typeof global<"u"&&global,Eo=(function(){function e(){this.fetch=!1,this.DOMException=xo.DOMException}return e.prototype=xo,new e})();(function(e){var t=(function(n){var r=typeof e<"u"&&e||typeof self<"u"&&self||typeof global<"u"&&global||{},o={searchParams:"URLSearchParams"in r,iterable:"Symbol"in r&&"iterator"in Symbol,blob:"FileReader"in r&&"Blob"in r&&(function(){try{return new Blob,!0}catch{return!1}})(),formData:"FormData"in r,arrayBuffer:"ArrayBuffer"in r};function i(h){return h&&DataView.prototype.isPrototypeOf(h)}if(o.arrayBuffer)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],a=ArrayBuffer.isView||function(h){return h&&s.indexOf(Object.prototype.toString.call(h))>-1};function c(h){if(typeof h!="string"&&(h=String(h)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(h)||h==="")throw new TypeError('Invalid character in header field name: "'+h+'"');return h.toLowerCase()}function u(h){return typeof h!="string"&&(h=String(h)),h}function l(h){var E={next:function(){var C=h.shift();return{done:C===void 0,value:C}}};return o.iterable&&(E[Symbol.iterator]=function(){return E}),E}function d(h){this.map={},h instanceof d?h.forEach(function(E,C){this.append(C,E)},this):Array.isArray(h)?h.forEach(function(E){if(E.length!=2)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+E.length);this.append(E[0],E[1])},this):h&&Object.getOwnPropertyNames(h).forEach(function(E){this.append(E,h[E])},this)}d.prototype.append=function(h,E){h=c(h),E=u(E);var C=this.map[h];this.map[h]=C?C+", "+E:E},d.prototype.delete=function(h){delete this.map[c(h)]},d.prototype.get=function(h){return h=c(h),this.has(h)?this.map[h]:null},d.prototype.has=function(h){return this.map.hasOwnProperty(c(h))},d.prototype.set=function(h,E){this.map[c(h)]=u(E)},d.prototype.forEach=function(h,E){for(var C in this.map)this.map.hasOwnProperty(C)&&h.call(E,this.map[C],C,this)},d.prototype.keys=function(){var h=[];return this.forEach(function(E,C){h.push(C)}),l(h)},d.prototype.values=function(){var h=[];return this.forEach(function(E){h.push(E)}),l(h)},d.prototype.entries=function(){var h=[];return this.forEach(function(E,C){h.push([C,E])}),l(h)},o.iterable&&(d.prototype[Symbol.iterator]=d.prototype.entries);function p(h){if(!h._noBody){if(h.bodyUsed)return Promise.reject(new TypeError("Already read"));h.bodyUsed=!0}}function m(h){return new Promise(function(E,C){h.onload=function(){E(h.result)},h.onerror=function(){C(h.error)}})}function w(h){var E=new FileReader,C=m(E);return E.readAsArrayBuffer(h),C}function x(h){var E=new FileReader,C=m(E),N=/charset=([A-Za-z0-9_-]+)/.exec(h.type),G=N?N[1]:"utf-8";return E.readAsText(h,G),C}function _(h){for(var E=new Uint8Array(h),C=new Array(E.length),N=0;N<E.length;N++)C[N]=String.fromCharCode(E[N]);return C.join("")}function g(h){if(h.slice)return h.slice(0);var E=new Uint8Array(h.byteLength);return E.set(new Uint8Array(h)),E.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(h){this.bodyUsed=this.bodyUsed,this._bodyInit=h,h?typeof h=="string"?this._bodyText=h:o.blob&&Blob.prototype.isPrototypeOf(h)?this._bodyBlob=h:o.formData&&FormData.prototype.isPrototypeOf(h)?this._bodyFormData=h:o.searchParams&&URLSearchParams.prototype.isPrototypeOf(h)?this._bodyText=h.toString():o.arrayBuffer&&o.blob&&i(h)?(this._bodyArrayBuffer=g(h.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(h)||a(h))?this._bodyArrayBuffer=g(h):this._bodyText=h=Object.prototype.toString.call(h):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||(typeof h=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):o.searchParams&&URLSearchParams.prototype.isPrototypeOf(h)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},o.blob&&(this.blob=function(){var h=p(this);if(h)return h;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var h=p(this);return h||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}else{if(o.blob)return this.blob().then(w);throw new Error("could not read as ArrayBuffer")}},this.text=function(){var h=p(this);if(h)return h;if(this._bodyBlob)return x(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(_(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},o.formData&&(this.formData=function(){return this.text().then(O)}),this.json=function(){return this.text().then(JSON.parse)},this}var b=["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"];function S(h){var E=h.toUpperCase();return b.indexOf(E)>-1?E:h}function A(h,E){if(!(this instanceof A))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');E=E||{};var C=E.body;if(h instanceof A){if(h.bodyUsed)throw new TypeError("Already read");this.url=h.url,this.credentials=h.credentials,E.headers||(this.headers=new d(h.headers)),this.method=h.method,this.mode=h.mode,this.signal=h.signal,!C&&h._bodyInit!=null&&(C=h._bodyInit,h.bodyUsed=!0)}else this.url=String(h);if(this.credentials=E.credentials||this.credentials||"same-origin",(E.headers||!this.headers)&&(this.headers=new d(E.headers)),this.method=S(E.method||this.method||"GET"),this.mode=E.mode||this.mode||null,this.signal=E.signal||this.signal||(function(){if("AbortController"in r){var M=new AbortController;return M.signal}})(),this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&C)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(C),(this.method==="GET"||this.method==="HEAD")&&(E.cache==="no-store"||E.cache==="no-cache")){var N=/([?&])_=[^&]*/;if(N.test(this.url))this.url=this.url.replace(N,"$1_="+new Date().getTime());else{var G=/\?/;this.url+=(G.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}A.prototype.clone=function(){return new A(this,{body:this._bodyInit})};function O(h){var E=new FormData;return h.trim().split("&").forEach(function(C){if(C){var N=C.split("="),G=N.shift().replace(/\+/g," "),M=N.join("=").replace(/\+/g," ");E.append(decodeURIComponent(G),decodeURIComponent(M))}}),E}function D(h){var E=new d,C=h.replace(/\r?\n[\t ]+/g," ");return C.split("\r").map(function(N){return N.indexOf(`
|
|
2
|
+
`)===0?N.substr(1,N.length):N}).forEach(function(N){var G=N.split(":"),M=G.shift().trim();if(M){var ut=G.join(":").trim();try{E.append(M,ut)}catch(zn){console.warn("Response "+zn.message)}}}),E}v.call(A.prototype);function L(h,E){if(!(this instanceof L))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(E||(E={}),this.type="default",this.status=E.status===void 0?200:E.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=E.statusText===void 0?"":""+E.statusText,this.headers=new d(E.headers),this.url=E.url||"",this._initBody(h)}v.call(L.prototype),L.prototype.clone=function(){return new L(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new d(this.headers),url:this.url})},L.error=function(){var h=new L(null,{status:200,statusText:""});return h.ok=!1,h.status=0,h.type="error",h};var ne=[301,302,303,307,308];L.redirect=function(h,E){if(ne.indexOf(E)===-1)throw new RangeError("Invalid status code");return new L(null,{status:E,headers:{location:h}})},n.DOMException=r.DOMException;try{new n.DOMException}catch{n.DOMException=function(E,C){this.message=E,this.name=C;var N=Error(E);this.stack=N.stack},n.DOMException.prototype=Object.create(Error.prototype),n.DOMException.prototype.constructor=n.DOMException}function H(h,E){return new Promise(function(C,N){var G=new A(h,E);if(G.signal&&G.signal.aborted)return N(new n.DOMException("Aborted","AbortError"));var M=new XMLHttpRequest;function ut(){M.abort()}M.onload=function(){var K={statusText:M.statusText,headers:D(M.getAllResponseHeaders()||"")};G.url.indexOf("file://")===0&&(M.status<200||M.status>599)?K.status=200:K.status=M.status,K.url="responseURL"in M?M.responseURL:K.headers.get("X-Request-URL");var W="response"in M?M.response:M.responseText;setTimeout(function(){C(new L(W,K))},0)},M.onerror=function(){setTimeout(function(){N(new TypeError("Network request failed"))},0)},M.ontimeout=function(){setTimeout(function(){N(new TypeError("Network request timed out"))},0)},M.onabort=function(){setTimeout(function(){N(new n.DOMException("Aborted","AbortError"))},0)};function zn(K){try{return K===""&&r.location.href?r.location.href:K}catch{return K}}if(M.open(G.method,zn(G.url),!0),G.credentials==="include"?M.withCredentials=!0:G.credentials==="omit"&&(M.withCredentials=!1),"responseType"in M&&(o.blob?M.responseType="blob":o.arrayBuffer&&(M.responseType="arraybuffer")),E&&typeof E.headers=="object"&&!(E.headers instanceof d||r.Headers&&E.headers instanceof r.Headers)){var In=[];Object.getOwnPropertyNames(E.headers).forEach(function(K){In.push(c(K)),M.setRequestHeader(K,u(E.headers[K]))}),G.headers.forEach(function(K,W){In.indexOf(W)===-1&&M.setRequestHeader(W,K)})}else G.headers.forEach(function(K,W){M.setRequestHeader(W,K)});G.signal&&(G.signal.addEventListener("abort",ut),M.onreadystatechange=function(){M.readyState===4&&G.signal.removeEventListener("abort",ut)}),M.send(typeof G._bodyInit>"u"?null:G._bodyInit)})}return H.polyfill=!0,r.fetch||(r.fetch=H,r.Headers=d,r.Request=A,r.Response=L),n.Headers=d,n.Request=A,n.Response=L,n.fetch=H,n})({})})(Eo);Eo.fetch.ponyfill=!0;delete Eo.fetch.polyfill;var _n=xo.fetch?xo:Eo;yt=_n.fetch;yt.default=_n.fetch;yt.fetch=_n.fetch;yt.Headers=_n.Headers;yt.Request=_n.Request;yt.Response=_n.Response;ad.exports=yt});var Lf={type:"object",properties:{value:{type:"object"},channels:{type:"array",items:{type:"string"}},allowed:{type:"array",items:{type:"string"},nullable:!0},url:{type:"string"},actor:{type:"string"}},additionalProperties:!1,required:["value","channels","actor","url"]},$w={...Lf,required:["value","channels"]};var dt=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorForbidden",Object.setPrototypeOf(this,e.prototype)}},re=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorNotFound",Object.setPrototypeOf(this,e.prototype)}},Ft=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorInvalidSchema",Object.setPrototypeOf(this,e.prototype)}},Pr=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorSchemaMismatch",Object.setPrototypeOf(this,e.prototype)}},Ht=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorTooLarge",Object.setPrototypeOf(this,e.prototype)}},kr=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorNotAcceptable",Object.setPrototypeOf(this,e.prototype)}},Ce=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorCursorExpired",Object.setPrototypeOf(this,e.prototype)}};function wi(e){return typeof e=="string"?e:e.url}function _i(e,t,n){if(n===e.actor)return e;let r=e.allowed&&n?[n]:void 0,o=e.channels.filter(i=>t.includes(i));return{...e,...r?{allowed:r}:{},channels:o}}function La(e,t){let[n,r]=e.toLowerCase().split(";")[0].split("/");return!n||!r?!1:t.some(o=>{let[i,s]=o.toLowerCase().split(";")[0].split("/");return!i||!s?!1:(i===n||i==="*")&&(s===r||s==="*")})}var yi;async function Or(e){if(!yi){let{default:t}=await import("./ajv-LGNUXWV5.js");yi=new t({strict:!1})}try{return yi.compile(e)}catch(t){throw new Ft(t instanceof Error?t.message:String(t))}}var Ba;function I(e,t,n){function r(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:s,traits:new Set},enumerable:!1}),a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,c);let u=s.prototype,l=Object.keys(u);for(let d=0;d<l.length;d++){let p=l[d];p in a||(a[p]=u[p].bind(a))}}let o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var c;let u=n?.Parent?new i:this;r(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(s,"init",{value:r}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>n?.Parent&&a instanceof n.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}var et=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};(Ba=globalThis).__zod_globalConfig??(Ba.__zod_globalConfig={});var bi=globalThis.__zod_globalConfig;function tt(e){return e&&Object.assign(bi,e),bi}function Za(e){let t=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function Fa(e,t){return typeof t=="bigint"?t.toString():t}function Ha(e){return{get value(){{let n=e();return Object.defineProperty(this,"value",{value:n}),n}throw new Error("cached value already set")}}}function $r(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}var ja=Symbol("evaluating");function fe(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==ja)return r===void 0&&(r=ja,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Bf(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function jf(...e){let t={};for(let n of e){let r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}var Ei="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Ir(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Dn(e){if(Ir(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!="function")return!0;let n=t.prototype;return!(Ir(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}var Ga=new Set(["string","number","symbol"]);function vi(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Cr(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function oe(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function qa(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Ja={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Ka(e,t){if(!Dn(t))throw new Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let s in t)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=jf(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return Bf(this,"shape",i),i}});return Cr(e,o)}function vt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Va(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function je(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function zr(e){return typeof e=="string"?e:e?.message}function nt(e,t,n){let r=e.message?e.message:zr(e.inst?._zod.def?.error?.(e))??zr(t?.error?.(e))??zr(n.customError?.(e))??zr(n.localeError?.(e))??"Invalid input",{inst:o,continue:i,input:s,...a}=e;return a.path??(a.path=[]),a.message=r,t?.reportInput&&(a.input=s),a}function Si(...e){let[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}var Wa=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Fa,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Xa=I("$ZodError",Wa),Un=I("$ZodError",Wa,{Parent:Error});var Ff=e=>(t,n,r,o)=>{let i=r?{...r,async:!1}:{async:!1},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw new et;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map(c=>nt(c,i,tt())));throw Ei(a,o?.callee),a}return s.value},Dr=Ff(Un),Hf=e=>async(t,n,r,o)=>{let i=r?{...r,async:!0}:{async:!0},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){let a=new(o?.Err??e)(s.issues.map(c=>nt(c,i,tt())));throw Ei(a,o?.callee),a}return s.value},Ur=Hf(Un),Gf=e=>(t,n,r)=>{let o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new et;return i.issues.length?{success:!1,error:new(e??Xa)(i.issues.map(s=>nt(s,o,tt())))}:{success:!0,data:i.value}},Mn=Gf(Un),qf=e=>async(t,n,r)=>{let o=r?{...r,async:!0}:{async:!0},i=t._zod.run({value:n,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(s=>nt(s,o,tt())))}:{success:!0,data:i.value}},Nn=qf(Un);var Ya=/^https?$/;var Jf="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Kf=new RegExp(`^${Jf}$`);var Qa=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var ec=/^-?\d+$/,Ai=/^-?\d+(?:\.\d+)?$/,tc=/^(?:true|false)$/i;var nc=/^undefined$/i;var St=I("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Vf={number:"number",bigint:"bigint",object:"date"};var rc=I("$ZodCheckGreaterThan",(e,t)=>{St.init(e,t);let n=Vf[typeof t.value];e._zod.onattach.push(r=>{let o=r._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}});var oc=I("$ZodCheckNumberFormat",(e,t)=>{St.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[o,i]=Ja[t.format];e._zod.onattach.push(s=>{let a=s._zod.bag;a.format=t.format,a.minimum=o,a.maximum=i,n&&(a.pattern=ec)}),e._zod.check=s=>{let a=s.value;if(n){if(!Number.isInteger(a)){s.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){a>0?s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort}):s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}a<o&&s.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),a>i&&s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}});var ic=I("$ZodCheckStringFormat",(e,t)=>{var n,r;St.init(e,t),e._zod.onattach.push(o=>{let i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})});var ac={major:4,minor:4,patch:3};var se=I("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ac;let r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(let o of r)for(let i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(s,a,c)=>{let u=vt(s),l;for(let d of a){if(d._zod.def.when){if(Va(s)||!d._zod.def.when(s))continue}else if(u)continue;let p=s.issues.length,m=d._zod.check(s);if(m instanceof Promise&&c?.async===!1)throw new et;if(l||m instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await m,s.issues.length!==p&&(u||(u=vt(s,p)))});else{if(s.issues.length===p)continue;u||(u=vt(s,p))}}return l?l.then(()=>s):s},i=(s,a,c)=>{if(vt(s))return s.aborted=!0,s;let u=o(a,r,c);if(u instanceof Promise){if(c.async===!1)throw new et;return u.then(l=>e._zod.parse(l,c))}return e._zod.parse(u,c)};e._zod.run=(s,a)=>{if(a.skipChecks)return e._zod.parse(s,a);if(a.direction==="backward"){let u=e._zod.parse({value:s.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>i(l,s,a)):i(u,s,a)}let c=e._zod.parse(s,a);if(c instanceof Promise){if(a.async===!1)throw new et;return c.then(u=>o(u,r,a))}return o(c,r,a)}}fe(e,"~standard",()=>({validate:o=>{try{let i=Mn(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Nn(e,o).then(s=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Pi=I("$ZodString",(e,t)=>{se.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Qa(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),ki=I("$ZodStringFormat",(e,t)=>{ic.init(e,t),Pi.init(e,t)});var gc=I("$ZodURL",(e,t)=>{ki.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===Ya.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}let o=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}});var Oi=I("$ZodNumber",(e,t)=>{se.init(e,t),e._zod.pattern=e._zod.bag.pattern??Ai,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let o=n.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;let i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),n}}),yc=I("$ZodNumberFormat",(e,t)=>{oc.init(e,t),Oi.init(e,t)}),wc=I("$ZodBoolean",(e,t)=>{se.init(e,t),e._zod.pattern=tc,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}});var _c=I("$ZodUndefined",(e,t)=>{se.init(e,t),e._zod.pattern=nc,e._zod.values=new Set([void 0]),e._zod.parse=(n,r)=>{let o=n.value;return typeof o>"u"||n.issues.push({expected:"undefined",code:"invalid_type",input:o,inst:e}),n}});var bc=I("$ZodUnknown",(e,t)=>{se.init(e,t),e._zod.parse=n=>n}),xc=I("$ZodNever",(e,t)=>{se.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function cc(e,t,n){e.issues.length&&t.issues.push(...je(n,e.issues)),t.value[n]=e.value}var Ec=I("$ZodArray",(e,t)=>{se.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);let i=[];for(let s=0;s<o.length;s++){let a=o[s],c=t.element._zod.run({value:a,issues:[]},r);c instanceof Promise?i.push(c.then(u=>cc(u,n,s))):cc(c,n,s)}return i.length?Promise.all(i).then(()=>n):n}});function Mr(e,t,n,r,o,i){let s=n in r;if(e.issues.length){if(o&&i&&!s)return;t.issues.push(...je(n,e.issues))}if(!s&&!o){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?s&&(t.value[n]=void 0):t.value[n]=e.value}function Wf(e){let t=Object.keys(e.shape);for(let r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);let n=qa(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Xf(e,t,n,r,o,i){let s=[],a=o.keySet,c=o.catchall._zod,u=c.def.type,l=c.optin==="optional",d=c.optout==="optional";for(let p in t){if(p==="__proto__"||a.has(p))continue;if(u==="never"){s.push(p);continue}let m=c.run({value:t[p],issues:[]},r);m instanceof Promise?e.push(m.then(w=>Mr(w,n,p,t,l,d))):Mr(m,n,p,t,l,d)}return s.length&&n.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}var vc=I("$ZodObject",(e,t)=>{if(se.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let a=t.shape;Object.defineProperty(t,"shape",{get:()=>{let c={...a};return Object.defineProperty(t,"shape",{value:c}),c}})}let r=Ha(()=>Wf(t));fe(e._zod,"propValues",()=>{let a=t.shape,c={};for(let u in a){let l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let o=Ir,i=t.catchall,s;e._zod.parse=(a,c)=>{s??(s=r.value);let u=a.value;if(!o(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),a;a.value={};let l=[],d=s.shape;for(let p of s.keys){let m=d[p],w=m._zod.optin==="optional",x=m._zod.optout==="optional",_=m._zod.run({value:u[p],issues:[]},c);_ instanceof Promise?l.push(_.then(g=>Mr(g,a,p,u,w,x))):Mr(_,a,p,u,w,x)}return i?Xf(l,u,a,c,r.value,e):l.length?Promise.all(l).then(()=>a):a}});function uc(e,t,n,r){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;let o=e.filter(i=>!vt(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(s=>nt(s,r,tt())))}),t)}var Sc=I("$ZodUnion",(e,t)=>{se.init(e,t),fe(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),fe(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),fe(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),fe(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){let r=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${r.map(o=>$r(o.source)).join("|")})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,o)=>{if(n)return n(r,o);let i=!1,s=[];for(let a of t.options){let c=a._zod.run({value:r.value,issues:[]},o);if(c instanceof Promise)s.push(c),i=!0;else{if(c.issues.length===0)return c;s.push(c)}}return i?Promise.all(s).then(a=>uc(a,r,e,o)):uc(s,r,e,o)}});var Ac=I("$ZodIntersection",(e,t)=>{se.init(e,t),e._zod.parse=(n,r)=>{let o=n.value,i=t.left._zod.run({value:o,issues:[]},r),s=t.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([c,u])=>lc(n,c,u)):lc(n,i,s)}});function Ti(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Dn(e)&&Dn(t)){let n=Object.keys(t),r=Object.keys(e).filter(i=>n.indexOf(i)!==-1),o={...e,...t};for(let i of r){let s=Ti(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let o=e[r],i=t[r],s=Ti(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[r,...s.mergeErrorPath]};n.push(s.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function lc(e,t,n){let r=new Map,o;for(let a of t.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(let c of a.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else e.issues.push(a);for(let a of n.issues)if(a.code==="unrecognized_keys")for(let c of a.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else e.issues.push(a);let i=[...r].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(i.length&&o&&e.issues.push({...o,keys:i}),vt(e))return e;let s=Ti(t.value,n.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Rc=I("$ZodTuple",(e,t)=>{se.init(e,t);let n=t.items;e._zod.parse=(r,o)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let s=[],a=dc(n,"optin"),c=dc(n,"optout");if(!t.rest){if(i.length<a)return r.issues.push({code:"too_small",minimum:a,inclusive:!0,input:i,inst:e,origin:"array"}),r;i.length>n.length&&r.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:i,inst:e,origin:"array"})}let u=new Array(n.length);for(let l=0;l<n.length;l++){let d=n[l]._zod.run({value:i[l],issues:[]},o);d instanceof Promise?s.push(d.then(p=>{u[l]=p})):u[l]=d}if(t.rest){let l=n.length-1,d=i.slice(n.length);for(let p of d){l++;let m=t.rest._zod.run({value:p,issues:[]},o);m instanceof Promise?s.push(m.then(w=>fc(w,r,l))):fc(m,r,l)}}return s.length?Promise.all(s).then(()=>pc(u,r,n,i,c)):pc(u,r,n,i,c)}});function dc(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!=="optional")return n+1;return 0}function fc(e,t,n){e.issues.length&&t.issues.push(...je(n,e.issues)),t.value[n]=e.value}function pc(e,t,n,r,o){for(let i=0;i<n.length;i++){let s=e[i],a=i<r.length;if(s.issues.length){if(!a&&i>=o){t.value.length=i;break}t.issues.push(...je(i,s.issues))}t.value[i]=s.value}for(let i=t.value.length-1;i>=r.length&&(n[i]._zod.optout==="optional"&&t.value[i]===void 0);i--)t.value.length=i;return t}var Tc=I("$ZodRecord",(e,t)=>{se.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!Dn(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;let i=[],s=t.keyType._zod.values;if(s){n.value={};let a=new Set;for(let u of s)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);let l=t.keyType._zod.run({value:u,issues:[]},r);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(l.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(m=>nt(m,r,tt())),input:u,path:[u],inst:e});continue}let d=l.value,p=t.valueType._zod.run({value:o[u],issues:[]},r);p instanceof Promise?i.push(p.then(m=>{m.issues.length&&n.issues.push(...je(u,m.issues)),n.value[d]=m.value})):(p.issues.length&&n.issues.push(...je(u,p.issues)),n.value[d]=p.value)}let c;for(let u in o)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(let a of Reflect.ownKeys(o)){if(a==="__proto__"||!Object.prototype.propertyIsEnumerable.call(o,a))continue;let c=t.keyType._zod.run({value:a,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&Ai.test(a)&&c.issues.length){let d=t.keyType._zod.run({value:Number(a),issues:[]},r);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){t.mode==="loose"?n.value[a]=o[a]:n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>nt(d,r,tt())),input:a,path:[a],inst:e});continue}let l=t.valueType._zod.run({value:o[a],issues:[]},r);l instanceof Promise?i.push(l.then(d=>{d.issues.length&&n.issues.push(...je(a,d.issues)),n.value[c.value]=d.value})):(l.issues.length&&n.issues.push(...je(a,l.issues)),n.value[c.value]=l.value)}}return i.length?Promise.all(i).then(()=>n):n}});var Pc=I("$ZodEnum",(e,t)=>{se.init(e,t);let n=Za(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>Ga.has(typeof o)).map(o=>typeof o=="string"?vi(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{let s=o.value;return r.has(s)||o.issues.push({code:"invalid_value",values:n,input:s,inst:e}),o}});function hc(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var kc=I("$ZodOptional",(e,t)=>{se.init(e,t),e._zod.optin="optional",e._zod.optout="optional",fe(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),fe(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${$r(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let o=n.value,i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(s=>hc(s,o)):hc(i,o)}return n.value===void 0?n:t.innerType._zod.run(n,r)}});var Oc=I("$ZodNullable",(e,t)=>{se.init(e,t),fe(e._zod,"optin",()=>t.innerType._zod.optin),fe(e._zod,"optout",()=>t.innerType._zod.optout),fe(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${$r(n.source)}|null)$`):void 0}),fe(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)});var zc=I("$ZodCustom",(e,t)=>{St.init(e,t),se.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{let r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(i=>mc(i,n,r,e));mc(o,n,r,e)}});function mc(e,t,n,r){if(!e){let o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(Si(o))}}function Ic(e,t){return new e({type:"string",...oe(t)})}function $c(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...oe(t)})}function Cc(e,t){return new e({type:"number",checks:[],...oe(t)})}function Dc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...oe(t)})}function Uc(e,t){return new e({type:"boolean",...oe(t)})}function Mc(e,t){return new e({type:"undefined",...oe(t)})}function Nc(e){return new e({type:"unknown"})}function Lc(e,t){return new e({type:"never",...oe(t)})}function zi(e,t){return new rc({check:"greater_than",...oe(t),value:e,inclusive:!0})}function At(e){return zi(0,e)}function Bc(e,t,n){let r=oe(n);return r.abort??(r.abort=!0),new e({type:"custom",check:"custom",fn:t,...r})}var le=I("ZodMiniType",(e,t)=>{if(!e._zod)throw new Error("Uninitialized schema in ZodMiniType.");se.init(e,t),e.def=t,e.type=t.type,e.parse=(n,r)=>Dr(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Mn(e,n,r),e.parseAsync=async(n,r)=>Ur(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Nn(e,n,r),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]},{parent:!0}),e.with=e.check,e.clone=(n,r)=>Cr(e,n,r),e.brand=()=>e,e.register=((n,r)=>(n.add(e,r),e)),e.apply=n=>n(e)}),Zc=I("ZodMiniString",(e,t)=>{Pi.init(e,t),le.init(e,t)});function B(e){return Ic(Zc,e)}var ep=I("ZodMiniStringFormat",(e,t)=>{ki.init(e,t),Zc.init(e,t)});var tp=I("ZodMiniURL",(e,t)=>{gc.init(e,t),ep.init(e,t)});function Z(e){return $c(tp,e)}var Fc=I("ZodMiniNumber",(e,t)=>{Oi.init(e,t),le.init(e,t)});function Hc(e){return Cc(Fc,e)}var np=I("ZodMiniNumberFormat",(e,t)=>{yc.init(e,t),Fc.init(e,t)});function qt(e){return Dc(np,e)}var rp=I("ZodMiniBoolean",(e,t)=>{wc.init(e,t),le.init(e,t)});function Ii(e){return Uc(rp,e)}var op=I("ZodMiniUndefined",(e,t)=>{_c.init(e,t),le.init(e,t)});function Gc(e){return Mc(op,e)}var ip=I("ZodMiniUnknown",(e,t)=>{bc.init(e,t),le.init(e,t)});function sp(){return Nc(ip)}var ap=I("ZodMiniNever",(e,t)=>{xc.init(e,t),le.init(e,t)});function cp(e){return Lc(ap,e)}var up=I("ZodMiniArray",(e,t)=>{Ec.init(e,t),le.init(e,t)});function J(e,t){return new up({type:"array",element:e,...oe(t)})}var $i=I("ZodMiniObject",(e,t)=>{vc.init(e,t),le.init(e,t),fe(e,"shape",()=>t.shape)});function be(e,t){let n={type:"object",shape:e??{},...oe(t)};return new $i(n)}function xe(e,t){return new $i({type:"object",shape:e,catchall:cp(),...oe(t)})}function me(e,t){return new $i({type:"object",shape:e,catchall:sp(),...oe(t)})}function rt(e,t){return Ka(e,t)}var lp=I("ZodMiniUnion",(e,t)=>{Sc.init(e,t),le.init(e,t)});function ft(e,t){return new lp({type:"union",options:e,...oe(t)})}var dp=I("ZodMiniIntersection",(e,t)=>{Ac.init(e,t),le.init(e,t)});function qc(e,t){return new dp({type:"intersection",left:e,right:t})}var fp=I("ZodMiniTuple",(e,t)=>{Rc.init(e,t),le.init(e,t)});function pe(e,t,n){let r=t instanceof se,o=r?n:t,i=r?t:null;return new fp({type:"tuple",items:e,rest:i,...oe(o)})}var jc=I("ZodMiniRecord",(e,t)=>{Tc.init(e,t),le.init(e,t)});function Jc(e,t,n){return!t||!t._zod?new jc({type:"record",keyType:B(),valueType:e,...oe(t)}):new jc({type:"record",keyType:e,valueType:t,...oe(n)})}var pp=I("ZodMiniEnum",(e,t)=>{Pc.init(e,t),le.init(e,t),e.options=Object.values(t.entries)});function Kc(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new pp({type:"enum",entries:n,...oe(t)})}var hp=I("ZodMiniOptional",(e,t)=>{kc.init(e,t),le.init(e,t)});function ee(e){return new hp({type:"optional",innerType:e})}var mp=I("ZodMiniNullable",(e,t)=>{Oc.init(e,t),le.init(e,t)});function Ze(e){return new mp({type:"nullable",innerType:e})}var gp=I("ZodMiniCustom",(e,t)=>{zc.init(e,t),le.init(e,t)});function Rt(e,t){return Bc(gp,e??(()=>!0),t)}function Jt(e,t={}){let n=Rt(r=>r instanceof e,t);return n._zod.bag.Class=e,n._zod.check=r=>{r.value instanceof e||r.issues.push({code:"invalid_type",expected:e.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}var Wc=me({value:me({}),channels:J(B()),allowed:ee(Ze(J(Z())))}),yE=rt(Wc,{url:Z(),actor:Z()}),Vc=ft([me({url:Z()}),Z()]),Kt=me({actor:Z()}),Nr=ee(Ze(Kt)),Xc=me({data:Jt(Blob),allowed:ee(Ze(J(Z())))}),wE=rt(Xc,{actor:Z()}),wp=me({types:ee(J(B())),maxBytes:ee(qt().check(At()))}),Lr=class{constructor(t){this.graffiti=t,this.sessionEvents=this.graffiti.sessionEvents}sessionEvents;login=(...t)=>{let n=pe([ee(Z())]).parse(t);return this.graffiti.login(...n)};logout=(...t)=>{let n=pe([Kt]).parse(t);return this.graffiti.logout(...n)};handleToActor=(...t)=>{let n=pe([B()]).parse(t);return this.graffiti.handleToActor(...n)};actorToHandle=(...t)=>{let n=pe([Z()]).parse(t);return this.graffiti.actorToHandle(...n)};post=(...t)=>{let n=pe([Wc,Kt]).parse(t);return this.graffiti.post(...n)};get=(...t)=>{let n=pe([Vc,me({}),Nr]).parse(t);return this.graffiti.get(n[0],n[1],n[2])};delete=(...t)=>{let n=pe([Vc,Kt]).parse(t);return this.graffiti.delete(...n)};postMedia=(...t)=>{let n=pe([Xc,Kt]).parse(t);return this.graffiti.postMedia(...n)};getMedia=(...t)=>{let n=pe([Z(),wp,Nr]).parse(t);return this.graffiti.getMedia(...n)};deleteMedia=(...t)=>{let n=pe([Z(),Kt]).parse(t);return this.graffiti.deleteMedia(...n)};discover=(...t)=>{let n=pe([J(B()),me({}),Nr]).parse(t);return this.graffiti.discover(n[0],n[1],n[2])};continueDiscover=(...t)=>{let n=pe([B(),Nr]).parse(t);return this.graffiti.continueDiscover(...n)}};function _p(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1}function Br(e,t=""){if(typeof e!="number"){let n=t&&`"${t}" `;throw new TypeError(`${n}expected number, got ${typeof e}`)}if(!Number.isSafeInteger(e)||e<0){let n=t&&`"${t}" `;throw new RangeError(`${n}expected integer >= 0, got ${e}`)}}function jr(e,t,n=""){let r=_p(e),o=e?.length,i=t!==void 0;if(!r||i&&o!==t){let s=n&&`"${n}" `,a=i?` of length ${t}`:"",c=r?`length=${o}`:`type=${typeof e}`,u=s+"expected Uint8Array"+a+", got "+c;throw r?new RangeError(u):new TypeError(u)}return e}function Yc(e){if(typeof e!="function"||typeof e.create!="function")throw new TypeError("Hash must wrapped by utils.createHasher");if(Br(e.outputLen),Br(e.blockLen),e.outputLen<1)throw new Error('"outputLen" must be >= 1');if(e.blockLen<1)throw new Error('"blockLen" must be >= 1')}function Tt(e=32){Br(e,"bytesLength");let t=typeof globalThis=="object"?globalThis.crypto:null;if(typeof t?.getRandomValues!="function")throw new Error("crypto.getRandomValues must be defined");if(e>65536)throw new RangeError(`"bytesLength" expected <= 65536, got ${e}`);return t.getRandomValues(new Uint8Array(e))}var bp=["Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array","Tagged"];function Ci(e){if(e===null)return"null";if(e===void 0)return"undefined";if(e===!0||e===!1)return"boolean";let t=typeof e;if(t==="string"||t==="number"||t==="bigint"||t==="symbol")return t;if(t==="function")return"Function";if(Array.isArray(e))return"Array";if(e instanceof Uint8Array)return"Uint8Array";if(e.constructor===Object)return"Object";let n=xp(e);return n||"Object"}function xp(e){let t=Object.prototype.toString.call(e).slice(8,-1);if(bp.includes(t))return t}var y=class{constructor(t,n,r){this.major=t,this.majorEncoded=t<<5,this.name=n,this.terminal=r}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.major?1:0}static equals(t,n){return t===n||t.major===n.major&&t.name===n.name}};y.uint=new y(0,"uint",!0);y.negint=new y(1,"negint",!0);y.bytes=new y(2,"bytes",!0);y.string=new y(3,"string",!0);y.array=new y(4,"array",!1);y.map=new y(5,"map",!1);y.tag=new y(6,"tag",!1);y.float=new y(7,"float",!0);y.false=new y(7,"false",!0);y.true=new y(7,"true",!0);y.null=new y(7,"null",!0);y.undefined=new y(7,"undefined",!0);y.break=new y(7,"break",!0);var T=class{constructor(t,n,r){this.type=t,this.value=n,this.encodedLength=r,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var Ln=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Ep=new TextEncoder;function Zr(e){return Ln&&globalThis.Buffer.isBuffer(e)}function Bn(e){return e instanceof Uint8Array?Zr(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e:Uint8Array.from(e)}var vp=24,Sp=200,Fr=Ln?e=>e.length>=vp?globalThis.Buffer.from(e):Qc(e):e=>e.length>=Sp?Ep.encode(e):Qc(e),Fe=e=>Uint8Array.from(e),eu=Ln?(e,t,n)=>Zr(e)?new Uint8Array(e.subarray(t,n)):e.slice(t,n):(e,t,n)=>e.slice(t,n),tu=Ln?(e,t)=>(e=e.map(n=>n instanceof Uint8Array?n:globalThis.Buffer.from(n)),Bn(globalThis.Buffer.concat(e,t))):(e,t)=>{let n=new Uint8Array(t),r=0;for(let o of e)r+o.length>n.length&&(o=o.subarray(0,n.length-r)),n.set(o,r),r+=o.length;return n},nu=Ln?e=>globalThis.Buffer.allocUnsafe(e):e=>new Uint8Array(e);function Hr(e,t){if(Zr(e)&&Zr(t))return e.compare(t);for(let n=0;n<e.length;n++)if(e[n]!==t[n])return e[n]<t[n]?-1:1;return 0}function Qc(e){let t=[],n=0;for(let r=0;r<e.length;r++){let o=e.charCodeAt(r);o<128?t[n++]=o:o<2048?(t[n++]=o>>6|192,t[n++]=o&63|128):(o&64512)===55296&&r+1<e.length&&(e.charCodeAt(r+1)&64512)===56320?(o=65536+((o&1023)<<10)+(e.charCodeAt(++r)&1023),t[n++]=o>>18|240,t[n++]=o>>12&63|128,t[n++]=o>>6&63|128,t[n++]=o&63|128):(o>=55296&&o<=57343&&(o=65533),t[n++]=o>>12|224,t[n++]=o>>6&63|128,t[n++]=o&63|128)}return t}var Ap=256,jn=class{constructor(t=Ap){this.chunkSize=t,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(t){let n=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let o=n.length-(this.maxCursor-this.cursor)-1;n.set(t,o)}else{if(n){let o=n.length-(this.maxCursor-this.cursor)-1;o<n.length&&(this.chunks[this.chunks.length-1]=n.subarray(0,o),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(n=nu(this.chunkSize),this.chunks.push(n),this.maxCursor+=n.length,this._initReuseChunk===null&&(this._initReuseChunk=n),n.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let n;if(this.chunks.length===1){let r=this.chunks[0];t&&this.cursor>r.length/2?(n=this.cursor===r.length?r:r.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):n=eu(r,0,this.cursor)}else n=tu(this.chunks,this.cursor);return t&&this.reset(),n}},Gr=class{constructor(t){this.dest=t,this.cursor=0,this.chunks=[t]}reset(){this.cursor=0}push(t){if(this.cursor+t.length>this.dest.length)throw new Error("write out of bounds, destination buffer is too small");this.dest.set(t,this.cursor),this.cursor+=t.length}toBytes(t=!1){let n=this.dest.subarray(0,this.cursor);return t&&this.reset(),n}};var z="CBOR decode error:",qr="CBOR encode error:",Zn=[];Zn[23]=1;Zn[24]=2;Zn[25]=3;Zn[26]=5;Zn[27]=9;function ot(e,t,n){if(e.length-t<n)throw new Error(`${z} not enough data for type`)}var ae=[24,256,65536,4294967296,BigInt("18446744073709551616")];function Ee(e,t,n){ot(e,t,1);let r=e[t];if(n.strict===!0&&r<ae[0])throw new Error(`${z} integer encoded in more bytes than necessary (strict decode)`);return r}function ve(e,t,n){ot(e,t,2);let r=e[t]<<8|e[t+1];if(n.strict===!0&&r<ae[1])throw new Error(`${z} integer encoded in more bytes than necessary (strict decode)`);return r}function Se(e,t,n){ot(e,t,4);let r=e[t]*16777216+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3];if(n.strict===!0&&r<ae[2])throw new Error(`${z} integer encoded in more bytes than necessary (strict decode)`);return r}function Ae(e,t,n){ot(e,t,8);let r=e[t]*16777216+(e[t+1]<<16)+(e[t+2]<<8)+e[t+3],o=e[t+4]*16777216+(e[t+5]<<16)+(e[t+6]<<8)+e[t+7],i=(BigInt(r)<<BigInt(32))+BigInt(o);if(n.strict===!0&&i<ae[3])throw new Error(`${z} integer encoded in more bytes than necessary (strict decode)`);if(i<=Number.MAX_SAFE_INTEGER)return Number(i);if(n.allowBigInt===!0)return i;throw new Error(`${z} integers outside of the safe integer range are not supported`)}function ru(e,t,n,r){return new T(y.uint,Ee(e,t+1,r),2)}function ou(e,t,n,r){return new T(y.uint,ve(e,t+1,r),3)}function iu(e,t,n,r){return new T(y.uint,Se(e,t+1,r),5)}function su(e,t,n,r){return new T(y.uint,Ae(e,t+1,r),9)}function Oe(e,t){return X(e,0,t.value)}function X(e,t,n){if(n<ae[0]){let r=Number(n);e.push([t|r])}else if(n<ae[1]){let r=Number(n);e.push([t|24,r])}else if(n<ae[2]){let r=Number(n);e.push([t|25,r>>>8,r&255])}else if(n<ae[3]){let r=Number(n);e.push([t|26,r>>>24&255,r>>>16&255,r>>>8&255,r&255])}else{let r=BigInt(n);if(r<ae[4]){let o=[t|27,0,0,0,0,0,0,0],i=Number(r&BigInt(4294967295)),s=Number(r>>BigInt(32)&BigInt(4294967295));o[8]=i&255,i=i>>8,o[7]=i&255,i=i>>8,o[6]=i&255,i=i>>8,o[5]=i&255,o[4]=s&255,s=s>>8,o[3]=s&255,s=s>>8,o[2]=s&255,s=s>>8,o[1]=s&255,e.push(o)}else throw new Error(`${z} encountered BigInt larger than allowable range`)}}Oe.encodedSize=function(t){return X.encodedSize(t.value)};X.encodedSize=function(t){return t<ae[0]?1:t<ae[1]?2:t<ae[2]?3:t<ae[3]?5:9};Oe.compareTokens=function(t,n){return t.value<n.value?-1:t.value>n.value?1:0};function au(e,t,n,r){return new T(y.negint,-1-Ee(e,t+1,r),2)}function cu(e,t,n,r){return new T(y.negint,-1-ve(e,t+1,r),3)}function uu(e,t,n,r){return new T(y.negint,-1-Se(e,t+1,r),5)}var Di=BigInt(-1),lu=BigInt(1);function du(e,t,n,r){let o=Ae(e,t+1,r);if(typeof o!="bigint"){let i=-1-o;if(i>=Number.MIN_SAFE_INTEGER)return new T(y.negint,i,9)}if(r.allowBigInt!==!0)throw new Error(`${z} integers outside of the safe integer range are not supported`);return new T(y.negint,Di-BigInt(o),9)}function Jr(e,t){let n=t.value,r=typeof n=="bigint"?n*Di-lu:n*-1-1;X(e,t.type.majorEncoded,r)}Jr.encodedSize=function(t){let n=t.value,r=typeof n=="bigint"?n*Di-lu:n*-1-1;return r<ae[0]?1:r<ae[1]?2:r<ae[2]?3:r<ae[3]?5:9};Jr.compareTokens=function(t,n){return t.value<n.value?1:t.value>n.value?-1:0};function Fn(e,t,n,r){ot(e,t,n+r);let o=e.slice(t+n,t+n+r);return new T(y.bytes,o,n+r)}function fu(e,t,n,r){return Fn(e,t,1,n)}function pu(e,t,n,r){return Fn(e,t,2,Ee(e,t+1,r))}function hu(e,t,n,r){return Fn(e,t,3,ve(e,t+1,r))}function mu(e,t,n,r){return Fn(e,t,5,Se(e,t+1,r))}function gu(e,t,n,r){let o=Ae(e,t+1,r);if(typeof o=="bigint")throw new Error(`${z} 64-bit integer bytes lengths not supported`);return Fn(e,t,9,o)}function Kr(e){return e.encodedBytes===void 0&&(e.encodedBytes=y.equals(e.type,y.string)?Fr(e.value):e.value),e.encodedBytes}function Vt(e,t){let n=Kr(t);X(e,t.type.majorEncoded,n.length),e.push(n)}Vt.encodedSize=function(t){let n=Kr(t);return X.encodedSize(n.length)+n.length};Vt.compareTokens=function(t,n){return Tp(Kr(t),Kr(n))};function Tp(e,t){return e.length<t.length?-1:e.length>t.length?1:Hr(e,t)}var yu=new TextDecoder,kp=32;function Op(e,t,n){if(n-t<kp){let o="";for(let i=t;i<n;i++){let s=e[i];if(s&128)return yu.decode(e.subarray(t,n));o+=String.fromCharCode(s)}return o}return yu.decode(e.subarray(t,n))}function Hn(e,t,n,r,o){let i=n+r;ot(e,t,i);let s=new T(y.string,Op(e,t+n,t+i),i);return o.retainStringBytes===!0&&(s.byteValue=e.slice(t+n,t+i)),s}function wu(e,t,n,r){return Hn(e,t,1,n,r)}function _u(e,t,n,r){return Hn(e,t,2,Ee(e,t+1,r),r)}function bu(e,t,n,r){return Hn(e,t,3,ve(e,t+1,r),r)}function xu(e,t,n,r){return Hn(e,t,5,Se(e,t+1,r),r)}function Eu(e,t,n,r){let o=Ae(e,t+1,r);if(typeof o=="bigint")throw new Error(`${z} 64-bit integer string lengths not supported`);return Hn(e,t,9,o,r)}var vu=Vt;function Wt(e,t,n,r){return new T(y.array,r,n)}function Su(e,t,n,r){return Wt(e,t,1,n)}function Au(e,t,n,r){return Wt(e,t,2,Ee(e,t+1,r))}function Ru(e,t,n,r){return Wt(e,t,3,ve(e,t+1,r))}function Tu(e,t,n,r){return Wt(e,t,5,Se(e,t+1,r))}function Pu(e,t,n,r){let o=Ae(e,t+1,r);if(typeof o=="bigint")throw new Error(`${z} 64-bit integer array lengths not supported`);return Wt(e,t,9,o)}function ku(e,t,n,r){if(r.allowIndefinite===!1)throw new Error(`${z} indefinite length items not allowed`);return Wt(e,t,1,1/0)}function Vr(e,t){X(e,y.array.majorEncoded,t.value)}Vr.compareTokens=Oe.compareTokens;Vr.encodedSize=function(t){return X.encodedSize(t.value)};function Xt(e,t,n,r){return new T(y.map,r,n)}function Ou(e,t,n,r){return Xt(e,t,1,n)}function zu(e,t,n,r){return Xt(e,t,2,Ee(e,t+1,r))}function Iu(e,t,n,r){return Xt(e,t,3,ve(e,t+1,r))}function $u(e,t,n,r){return Xt(e,t,5,Se(e,t+1,r))}function Cu(e,t,n,r){let o=Ae(e,t+1,r);if(typeof o=="bigint")throw new Error(`${z} 64-bit integer map lengths not supported`);return Xt(e,t,9,o)}function Du(e,t,n,r){if(r.allowIndefinite===!1)throw new Error(`${z} indefinite length items not allowed`);return Xt(e,t,1,1/0)}function Wr(e,t){X(e,y.map.majorEncoded,t.value)}Wr.compareTokens=Oe.compareTokens;Wr.encodedSize=function(t){return X.encodedSize(t.value)};function Uu(e,t,n,r){return new T(y.tag,n,1)}function Mu(e,t,n,r){return new T(y.tag,Ee(e,t+1,r),2)}function Nu(e,t,n,r){return new T(y.tag,ve(e,t+1,r),3)}function Lu(e,t,n,r){return new T(y.tag,Se(e,t+1,r),5)}function Bu(e,t,n,r){return new T(y.tag,Ae(e,t+1,r),9)}function Xr(e,t){X(e,y.tag.majorEncoded,t.value)}Xr.compareTokens=Oe.compareTokens;Xr.encodedSize=function(t){return X.encodedSize(t.value)};var Ui=20,Mi=21,Ni=22,Li=23;function ju(e,t,n,r){if(r.allowUndefined===!1)throw new Error(`${z} undefined values are not supported`);return r.coerceUndefinedToNull===!0?new T(y.null,null,1):new T(y.undefined,void 0,1)}function Zu(e,t,n,r){if(r.allowIndefinite===!1)throw new Error(`${z} indefinite length items not allowed`);return new T(y.break,void 0,1)}function Bi(e,t,n){if(n){if(n.allowNaN===!1&&Number.isNaN(e))throw new Error(`${z} NaN values are not supported`);if(n.allowInfinity===!1&&(e===1/0||e===-1/0))throw new Error(`${z} Infinity values are not supported`)}return new T(y.float,e,t)}function Fu(e,t,n,r){return Bi(ji(e,t+1),3,r)}function Hu(e,t,n,r){return Bi(Zi(e,t+1),5,r)}function Gu(e,t,n,r){return Bi(Vu(e,t+1),9,r)}function Gn(e,t,n){let r=t.value;if(r===!1)e.push([y.float.majorEncoded|Ui]);else if(r===!0)e.push([y.float.majorEncoded|Mi]);else if(r===null)e.push([y.float.majorEncoded|Ni]);else if(r===void 0)e.push([y.float.majorEncoded|Li]);else{let o,i=!1;(!n||n.float64!==!0)&&(Ju(r),o=ji(De,1),r===o||Number.isNaN(r)?(De[0]=249,e.push(De.slice(0,3)),i=!0):(Ku(r),o=Zi(De,1),r===o&&(De[0]=250,e.push(De.slice(0,5)),i=!0))),i||(Dp(r),o=Vu(De,1),De[0]=251,e.push(De.slice(0,9)))}}Gn.encodedSize=function(t,n){let r=t.value;if(r===!1||r===!0||r===null||r===void 0)return 1;if(!n||n.float64!==!0){Ju(r);let o=ji(De,1);if(r===o||Number.isNaN(r))return 3;if(Ku(r),o=Zi(De,1),r===o)return 5}return 9};var qu=new ArrayBuffer(9),ze=new DataView(qu,1),De=new Uint8Array(qu,0);function Ju(e){if(e===1/0)ze.setUint16(0,31744,!1);else if(e===-1/0)ze.setUint16(0,64512,!1);else if(Number.isNaN(e))ze.setUint16(0,32256,!1);else{ze.setFloat32(0,e);let t=ze.getUint32(0),n=(t&2139095040)>>23,r=t&8388607;if(n===255)ze.setUint16(0,31744,!1);else if(n===0)ze.setUint16(0,(t&2147483648)>>16|r>>13,!1);else{let o=n-127;o<-24?ze.setUint16(0,0):o<-14?ze.setUint16(0,(t&2147483648)>>16|1<<24+o,!1):ze.setUint16(0,(t&2147483648)>>16|o+15<<10|r>>13,!1)}}}function ji(e,t){if(e.length-t<2)throw new Error(`${z} not enough data for float16`);let n=(e[t]<<8)+e[t+1];if(n===31744)return 1/0;if(n===64512)return-1/0;if(n===32256)return NaN;let r=n>>10&31,o=n&1023,i;return r===0?i=o*2**-24:r!==31?i=(o+1024)*2**(r-25):i=o===0?1/0:NaN,n&32768?-i:i}function Ku(e){ze.setFloat32(0,e,!1)}function Zi(e,t){if(e.length-t<4)throw new Error(`${z} not enough data for float32`);let n=(e.byteOffset||0)+t;return new DataView(e.buffer,n,4).getFloat32(0,!1)}function Dp(e){ze.setFloat64(0,e,!1)}function Vu(e,t){if(e.length-t<8)throw new Error(`${z} not enough data for float64`);let n=(e.byteOffset||0)+t;return new DataView(e.buffer,n,8).getFloat64(0,!1)}Gn.compareTokens=Oe.compareTokens;function j(e,t,n){throw new Error(`${z} encountered invalid minor (${n}) for major ${e[t]>>>5}`)}function Yr(e){return()=>{throw new Error(`${z} ${e}`)}}var R=[];for(let e=0;e<=23;e++)R[e]=j;R[24]=ru;R[25]=ou;R[26]=iu;R[27]=su;R[28]=j;R[29]=j;R[30]=j;R[31]=j;for(let e=32;e<=55;e++)R[e]=j;R[56]=au;R[57]=cu;R[58]=uu;R[59]=du;R[60]=j;R[61]=j;R[62]=j;R[63]=j;for(let e=64;e<=87;e++)R[e]=fu;R[88]=pu;R[89]=hu;R[90]=mu;R[91]=gu;R[92]=j;R[93]=j;R[94]=j;R[95]=Yr("indefinite length bytes/strings are not supported");for(let e=96;e<=119;e++)R[e]=wu;R[120]=_u;R[121]=bu;R[122]=xu;R[123]=Eu;R[124]=j;R[125]=j;R[126]=j;R[127]=Yr("indefinite length bytes/strings are not supported");for(let e=128;e<=151;e++)R[e]=Su;R[152]=Au;R[153]=Ru;R[154]=Tu;R[155]=Pu;R[156]=j;R[157]=j;R[158]=j;R[159]=ku;for(let e=160;e<=183;e++)R[e]=Ou;R[184]=zu;R[185]=Iu;R[186]=$u;R[187]=Cu;R[188]=j;R[189]=j;R[190]=j;R[191]=Du;for(let e=192;e<=215;e++)R[e]=Uu;R[216]=Mu;R[217]=Nu;R[218]=Lu;R[219]=Bu;R[220]=j;R[221]=j;R[222]=j;R[223]=j;for(let e=224;e<=243;e++)R[e]=Yr("simple values are not supported");R[244]=j;R[245]=j;R[246]=j;R[247]=ju;R[248]=Yr("simple values are not supported");R[249]=Fu;R[250]=Hu;R[251]=Gu;R[252]=j;R[253]=j;R[254]=j;R[255]=Zu;var Ue=[];for(let e=0;e<24;e++)Ue[e]=new T(y.uint,e,1);for(let e=-1;e>=-24;e--)Ue[31-e]=new T(y.negint,e,1);Ue[64]=new T(y.bytes,new Uint8Array(0),1);Ue[96]=new T(y.string,"",1);Ue[128]=new T(y.array,0,1);Ue[160]=new T(y.map,0,1);Ue[244]=new T(y.false,!1,1);Ue[245]=new T(y.true,!0,1);Ue[246]=new T(y.null,null,1);function Fi(e){switch(e.type){case y.false:return Fe([244]);case y.true:return Fe([245]);case y.null:return Fe([246]);case y.bytes:return e.value.length?void 0:Fe([64]);case y.string:return e.value===""?Fe([96]):void 0;case y.array:return e.value===0?Fe([128]):void 0;case y.map:return e.value===0?Fe([160]):void 0;case y.uint:return e.value<24?Fe([Number(e.value)]):void 0;case y.negint:if(e.value>=-24)return Fe([31-Number(e.value)])}}var Mp={float64:!1,mapSorter:Bp,quickEncodeToken:Fi},el=Object.freeze({mapSorter:jp,quickEncodeToken:Fi});function Np(){let e=[];return e[y.uint.major]=Oe,e[y.negint.major]=Jr,e[y.bytes.major]=Vt,e[y.string.major]=vu,e[y.array.major]=Vr,e[y.map.major]=Wr,e[y.tag.major]=Xr,e[y.float.major]=Gn,e}var Qt=Np(),Qr=new jn,Jn=class e{constructor(t,n){this.obj=t,this.parent=n}includes(t){let n=this;do if(n.obj===t)return!0;while(n=n.parent);return!1}static createCheck(t,n){if(t&&t.includes(n))throw new Error(`${qr} object contains circular references`);return new e(n,t)}},pt={null:new T(y.null,null),undefined:new T(y.undefined,void 0),true:new T(y.true,!0),false:new T(y.false,!1),emptyArray:new T(y.array,0),emptyMap:new T(y.map,0)},He={number(e,t,n,r){return!Number.isInteger(e)||!Number.isSafeInteger(e)?new T(y.float,e):e>=0?new T(y.uint,e):new T(y.negint,e)},bigint(e,t,n,r){return e>=BigInt(0)?new T(y.uint,e):new T(y.negint,e)},Uint8Array(e,t,n,r){return new T(y.bytes,e)},string(e,t,n,r){return new T(y.string,e)},boolean(e,t,n,r){return e?pt.true:pt.false},null(e,t,n,r){return pt.null},undefined(e,t,n,r){return pt.undefined},ArrayBuffer(e,t,n,r){return new T(y.bytes,new Uint8Array(e))},DataView(e,t,n,r){return new T(y.bytes,new Uint8Array(e.buffer,e.byteOffset,e.byteLength))},Array(e,t,n,r){if(!e.length)return n.addBreakTokens===!0?[pt.emptyArray,new T(y.break)]:pt.emptyArray;r=Jn.createCheck(r,e);let o=[],i=0;for(let s of e)o[i++]=Yt(s,n,r);return n.addBreakTokens?[new T(y.array,e.length),o,new T(y.break)]:[new T(y.array,e.length),o]},Object(e,t,n,r){let o=t!=="Object",i=o?e.keys():Object.keys(e),s=o?e.size:i.length,a;if(s){a=new Array(s),r=Jn.createCheck(r,e);let c=!o&&n.ignoreUndefinedProperties,u=0;for(let l of i){let d=o?e.get(l):e[l];c&&d===void 0||(a[u++]=[Yt(l,n,r),Yt(d,n,r)])}u<s&&(a.length=u)}return a?.length?(Lp(a,n),n.addBreakTokens?[new T(y.map,a.length),a,new T(y.break)]:[new T(y.map,a.length),a]):n.addBreakTokens===!0?[pt.emptyMap,new T(y.break)]:pt.emptyMap},Tagged(e,t,n,r){return[new T(y.tag,e.tag),Yt(e.value,n,r)]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let e of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${e}Array`]=He.DataView;function Yt(e,t={},n){let r=Ci(e),o=t&&t.typeEncoders&&t.typeEncoders[r]||He[r];if(typeof o=="function"){let s=o(e,r,t,n);if(s!=null)return s}let i=He[r];if(!i)throw new Error(`${qr} unsupported type: ${r}`);return i(e,r,t,n)}function Lp(e,t){t.mapSorter&&e.sort(t.mapSorter)}function Bp(e,t){let n=Array.isArray(e[0])?e[0][0]:e[0],r=Array.isArray(t[0])?t[0][0]:t[0];if(n.type!==r.type)return n.type.compare(r.type);let o=n.type.major,i=Qt[o].compareTokens(n,r);return i===0&&console.warn("WARNING: complex key types used, CBOR key sorting guarantees are gone"),i}function jp(e,t){if(e[0]instanceof T&&t[0]instanceof T){let n=e[0],r=t[0];return n._keyBytes||(n._keyBytes=Wu(n.value)),r._keyBytes||(r._keyBytes=Wu(r.value)),Hr(n._keyBytes,r._keyBytes)}throw new Error("rfc8949MapSorter: complex key types are not supported yet")}function Wu(e){return nl(e,Qt,el)}function qn(e,t,n,r){if(Array.isArray(t))for(let o of t)qn(e,o,n,r);else n[t.type.major](e,t,r)}var Xu=y.uint.majorEncoded,Yu=y.negint.majorEncoded,Zp=y.bytes.majorEncoded,Fp=y.string.majorEncoded,Qu=y.array.majorEncoded,Hp=y.float.majorEncoded|Ui,Gp=y.float.majorEncoded|Mi,qp=y.float.majorEncoded|Ni,Jp=y.float.majorEncoded|Li,Kp=BigInt(-1),Vp=BigInt(1);function Wp(e){return e.addBreakTokens!==!0}function tl(e,t,n,r){let o=Ci(t),i=n.typeEncoders&&n.typeEncoders[o];if(i){let s=i(t,o,n,r);if(s!=null){qn(e,s,Qt,n);return}}switch(o){case"null":e.push([qp]);return;case"undefined":e.push([Jp]);return;case"boolean":e.push([t?Gp:Hp]);return;case"number":!Number.isInteger(t)||!Number.isSafeInteger(t)?Gn(e,new T(y.float,t),n):t>=0?X(e,Xu,t):X(e,Yu,t*-1-1);return;case"bigint":t>=BigInt(0)?X(e,Xu,t):X(e,Yu,t*Kp-Vp);return;case"string":{let s=Fr(t);X(e,Fp,s.length),e.push(s);return}case"Uint8Array":X(e,Zp,t.length),e.push(t);return;case"Array":if(!t.length){e.push([Qu]);return}r=Jn.createCheck(r,t),X(e,Qu,t.length);for(let s of t)tl(e,s,n,r);return;case"Object":case"Map":{let s=He.Object(t,o,n,r);qn(e,s,Qt,n)}return;default:{let s=He[o];if(!s)throw new Error(`${qr} unsupported type: ${o}`);let a=s(t,o,n,r);qn(e,a,Qt,n)}}}function nl(e,t,n,r){let o=r instanceof Uint8Array,i=o?new Gr(r):Qr,s=Yt(e,n);if(!Array.isArray(s)&&n.quickEncodeToken){let a=n.quickEncodeToken(s);if(a)return o?(i.push(a),i.toBytes()):a;let c=t[s.type.major];if(c.encodedSize){let u=c.encodedSize(s,n);if(o||(i=new jn(u)),c(i,s,n),i.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${s} was wrong`);return o?i.toBytes():Bn(i.chunks[0])}}return i.reset(),qn(i,s,t,n),i.toBytes(!0)}function Hi(e,t){return t=Object.assign({},Mp,t),Wp(t)?(Qr.reset(),tl(Qr,e,t,void 0),Qr.toBytes(!0)):nl(e,Qt,t)}var Xp={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},eo=class{constructor(t,n={}){this._pos=0,this.data=t,this.options=n}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],n=Ue[t];if(n===void 0){let r=R[t];if(!r)throw new Error(`${z} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let o=t&31;n=r(this.data,this._pos,o,this.options)}return this._pos+=n.encodedLength,n}},ht=Symbol.for("DONE"),en=Symbol.for("BREAK");function Yp(e,t,n){let r=[];for(let o=0;o<e.value;o++){let i=mt(t,n);if(i===en){if(e.value===1/0)break;throw new Error(`${z} got unexpected break to lengthed array`)}if(i===ht)throw new Error(`${z} found array but not enough entries (got ${o}, expected ${e.value})`);r[o]=i}return r}function Qp(e,t,n){let r=n.useMaps===!0,o=n.rejectDuplicateMapKeys===!0,i=r?void 0:{},s=r?new Map:void 0;for(let a=0;a<e.value;a++){let c=mt(t,n);if(c===en){if(e.value===1/0)break;throw new Error(`${z} got unexpected break to lengthed map`)}if(c===ht)throw new Error(`${z} found map but not enough entries (got ${a} [no key], expected ${e.value})`);if(!r&&typeof c!="string")throw new Error(`${z} non-string keys not supported (got ${typeof c})`);if(o&&(r&&s.has(c)||!r&&Object.hasOwn(i,c)))throw new Error(`${z} found repeat map key "${c}"`);let u=mt(t,n);if(u===ht)throw new Error(`${z} found map but not enough entries (got ${a} [no value], expected ${e.value})`);r?s.set(c,u):i[c]=u}return r?s:i}function*eh(e,t,n){for(let r=0;r<e.value;r++){let o=mt(t,n);if(o===en){if(e.value===1/0)break;throw new Error(`${z} got unexpected break to lengthed map`)}if(o===ht)throw new Error(`${z} found map but not enough entries (got ${r} [no key], expected ${e.value})`);let i=mt(t,n);if(i===ht)throw new Error(`${z} found map but not enough entries (got ${r} [no value], expected ${e.value})`);yield[o,i]}}function th(e,t){let n=!1,r=function(){if(n)throw new Error(`${z} tag decode() may only be called once`);n=!0;let o=mt(e,t);if(o===ht)throw new Error(`${z} tag content missing`);if(o===en)throw new Error(`${z} got unexpected break in tag content`);return o};return r.entries=function(){if(n)throw new Error(`${z} tag decode() may only be called once`);n=!0;let o=e.next();if(!y.equals(o.type,y.map))throw new Error(`${z} entries() requires map content, got ${o.type.name}`);let i=[];for(let s of eh(o,e,t))i.push(s);return i},Object.defineProperty(r,"_called",{get(){return n},enumerable:!1}),r}function mt(e,t){if(e.done())return ht;let n=e.next();if(y.equals(n.type,y.break))return en;if(n.type.terminal)return n.value;if(y.equals(n.type,y.array))return Yp(n,e,t);if(y.equals(n.type,y.map))return Qp(n,e,t);if(y.equals(n.type,y.tag)){if(t.tags&&typeof t.tags[n.value]=="function"){let r=th(e,t),o=t.tags[n.value](r);if(!r._called)throw new Error(`${z} tag decoder must call decode() or entries()`);return o}throw new Error(`${z} tag not supported (${n.value})`)}throw new Error("unsupported")}function rl(e,t){if(!(e instanceof Uint8Array))throw new Error(`${z} data to decode must be a Uint8Array`);t=Object.assign({},Xp,t);let n=Bn(e),r=t.tokenizer||new eo(n,t),o=mt(r,t);if(o===ht)throw new Error(`${z} did not find any content to decode`);if(o===en)throw new Error(`${z} got unexpected break`);return[o,e.subarray(r.pos())]}function Gi(e,t){let[n,r]=rl(e,t);if(r.length>0)throw new Error(`${z} too many terminals, data makes no sense`);return n}var to=class e{constructor(t,n){if(typeof t!="number"||!Number.isInteger(t)||t<0)throw new TypeError("Tagged: tag must be a non-negative integer");this.tag=t,this.value=n}static decoder(t){return n=>new e(t,n())}static preserve(...t){let n={};for(let r of t)n[r]=e.decoder(r);return n}};Object.defineProperty(to.prototype,Symbol.toStringTag,{value:"Tagged"});var Tv=new Uint8Array(0);function ol(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0}function tn(e){if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return kt(e);if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return kt(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));throw new Error("Unknown type, must be binary type")}function rh(e){return e?.buffer instanceof ArrayBuffer}function kt(e){return rh(e)?e:e.slice()}function oh(e,t,n){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),o=0;o<r.length;o++)r[o]=255;for(var i=0;i<e.length;i++){var s=e.charAt(i),a=s.charCodeAt(0);if(r[a]!==255)throw new TypeError(s+" is ambiguous");if(r[a]=i,n){var c=s.toLowerCase().charCodeAt(0),u=s.toUpperCase().charCodeAt(0);c!==a&&(r[c]=i),u!==a&&(r[u]=i)}}var l=e.length,d=e.charAt(0),p=Math.log(l)/Math.log(256),m=Math.log(256)/Math.log(l);function w(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var v=0,b=0,S=0,A=g.length;S!==A&&g[S]===0;)S++,v++;for(var O=(A-S)*m+1>>>0,D=new Uint8Array(O);S!==A;){for(var L=g[S],ne=0,H=O-1;(L!==0||ne<b)&&H!==-1;H--,ne++)L+=256*D[H]>>>0,D[H]=L%l>>>0,L=L/l>>>0;if(L!==0)throw new Error("Non-zero carry");b=ne,S++}for(var h=O-b;h!==O&&D[h]===0;)h++;for(var E=d.repeat(v);h<O;++h)E+=e.charAt(D[h]);return E}function x(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var v=0;if(g[v]!==" "){for(var b=0,S=0;g[v]===d;)b++,v++;for(var A=(g.length-v)*p+1>>>0,O=new Uint8Array(A);g[v];){var D=r[g.charCodeAt(v)];if(D===255)return;for(var L=0,ne=A-1;(D!==0||L<S)&&ne!==-1;ne--,L++)D+=l*O[ne]>>>0,O[ne]=D%256>>>0,D=D/256>>>0;if(D!==0)throw new Error("Non-zero carry");S=L,v++}if(g[v]!==" "){for(var H=A-S;H!==A&&O[H]===0;)H++;for(var h=new Uint8Array(b+(A-H)),E=b;H!==A;)h[E++]=O[H++];return h}}}function _(g){var v=x(g);if(v)return v;throw new Error(`Non-${t} character`)}return{encode:w,decodeUnsafe:x,decode:_}}var ih=oh,sh=ih,il=sh;var qi=class{name;prefix;baseEncode;constructor(t,n,r){this.name=t,this.prefix=n,this.baseEncode=r}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Ji=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,n,r){this.name=t,this.prefix=n;let o=n.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,this.baseDecode=r}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return sl(this,t)}},Ki=class{decoders;constructor(t){this.decoders=t}or(t){return sl(this,t)}decode(t){let n=t[0],r=this.decoders[n];if(r!=null)return r.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function sl(e,t){return new Ki({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var Vi=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,n,r,o){this.name=t,this.prefix=n,this.baseEncode=r,this.baseDecode=o,this.encoder=new qi(t,n,r),this.decoder=new Ji(t,n,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function al({name:e,prefix:t,encode:n,decode:r}){return new Vi(e,t,n,r)}function nn({name:e,prefix:t,alphabet:n,caseInsensitive:r=!1}){let{encode:o,decode:i}=il(n,e,r);return al({prefix:t,name:e,encode:o,decode:s=>tn(i(s))})}function ah(e,t,n,r){let o=e.length;for(;e[o-1]==="=";)--o;let i=new Uint8Array(o*n/8|0),s=0,a=0,c=0;for(let u=0;u<o;++u){let l=t[e[u]];if(l===void 0)throw new SyntaxError(`Non-${r} character`);a=a<<n|l,s+=n,s>=8&&(s-=8,i[c++]=255&a>>s)}if(s>=n||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return i}function ch(e,t,n){let r=t[t.length-1]==="=",o=(1<<n)-1,i="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>n;)s-=n,i+=t[o&a>>s];if(s!==0&&(i+=t[o&a<<n-s]),r)for(;(i.length*n&7)!==0;)i+="=";return i}function uh(e,t){let n={};for(let r=0;r<e.length;++r)if(n[e[r]]=r,t){let o=e[r].toLowerCase(),i=e[r].toUpperCase();o!==e[r]&&(n[o]=r),i!==e[r]&&(n[i]=r)}return n}function Ge({name:e,prefix:t,bitsPerChar:n,alphabet:r,caseInsensitive:o=!1}){let i=uh(r,o);return al({prefix:t,name:e,encode(s){return ch(s,r,n)},decode(s){return ah(s,i,n,e)}})}var Kn=Ge({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5,caseInsensitive:!0}),Cv=Ge({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5,caseInsensitive:!0}),Dv=Ge({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5,caseInsensitive:!0}),Uv=Ge({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5,caseInsensitive:!0}),Mv=Ge({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5,caseInsensitive:!0}),Nv=Ge({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5,caseInsensitive:!0}),Lv=Ge({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5,caseInsensitive:!0}),Bv=Ge({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5,caseInsensitive:!0}),jv=Ge({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var no=nn({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz",caseInsensitive:!0}),Hv=nn({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",caseInsensitive:!0});var it=nn({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Jv=nn({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var lh=ll,cl=128,dh=127,fh=~dh,ph=Math.pow(2,31);function ll(e,t,n){t=t||[],n=n||0;for(var r=n;e>=ph;)t[n++]=e&255|cl,e/=128;for(;e&fh;)t[n++]=e&255|cl,e>>>=7;return t[n]=e|0,ll.bytes=n-r+1,t}var hh=Wi,mh=128,ul=127;function Wi(e,r){var n=0,r=r||0,o=0,i=r,s,a=e.length;do{if(i>=a)throw Wi.bytes=0,new RangeError("Could not decode varint");s=e[i++],n+=o<28?(s&ul)<<o:(s&ul)*Math.pow(2,o),o+=7}while(s>=mh);return Wi.bytes=i-r,n}var gh=Math.pow(2,7),yh=Math.pow(2,14),wh=Math.pow(2,21),_h=Math.pow(2,28),bh=Math.pow(2,35),xh=Math.pow(2,42),Eh=Math.pow(2,49),vh=Math.pow(2,56),Sh=Math.pow(2,63),Ah=function(e){return e<gh?1:e<yh?2:e<wh?3:e<_h?4:e<bh?5:e<xh?6:e<Eh?7:e<vh?8:e<Sh?9:10},Rh={encode:lh,decode:hh,encodingLength:Ah},Th=Rh,Vn=Th;function Wn(e,t=0){return[Vn.decode(e,t),Vn.decode.bytes]}function rn(e,t,n=0){return Vn.encode(e,t,n),t}function on(e){return Vn.encodingLength(e)}function fl(e,t){let n=t.byteLength,r=on(e),o=r+on(n),i=new Uint8Array(o+n);return rn(e,i,0),rn(n,i,r),i.set(t,o),new sn(e,n,t,i)}function pl(e){let t=tn(e),[n,r]=Wn(t),[o,i]=Wn(t.subarray(r)),s=t.subarray(r+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new sn(n,o,s,t)}function hl(e,t){if(e===t)return!0;{let n=t;return e.code===n.code&&e.size===n.size&&n.bytes instanceof Uint8Array&&ol(e.bytes,n.bytes)}}var sn=class{code;size;digest;bytes;constructor(t,n,r,o){this.code=t,this.size=n,this.digest=kt(r),this.bytes=kt(o)}};function ml(e,t){let{bytes:n,version:r}=e;return r===0?Oh(n,Xi(e),t??it.encoder):zh(n,Xi(e),t??Kn.encoder)}var gl=new WeakMap;function Xi(e){let t=gl.get(e);if(t==null){let n=new Map;return gl.set(e,n),n}return t}var Yn=class e{code;version;multihash;bytes;"/";constructor(t,n,r,o){this.code=n,this.version=t,this.multihash=r,this.bytes=kt(o),this["/"]=this.bytes}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:n}=this;if(t!==Xn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(n.code!==Ih)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(n)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:n}=this.multihash,r=fl(t,n);return e.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,n){let r=n;return r!=null&&t.code===r.code&&t.version===r.version&&hl(t.multihash,r.multihash)}toString(t){return ml(this,t)}toJSON(){return{"/":ml(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let n=t;if(n instanceof e)return n;if(n["/"]!=null&&n["/"]===n.bytes||n.asCID===n){let{version:r,code:o,multihash:i,bytes:s}=n;return new e(r,o,i,s??yl(r,o,i.bytes))}else if(n[$h]===!0){let{version:r,multihash:o,code:i}=n,s=pl(o);return e.create(r,i,s)}else return null}static create(t,n,r){if(typeof n!="number")throw new Error("String codecs are no longer supported");if(!(r.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(n!==Xn)throw new Error(`Version 0 CID must use dag-pb (code: ${Xn}) block encoding`);return new e(t,n,r,r.bytes)}case 1:{let o=yl(t,n,r.bytes);return new e(t,n,r,o)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Xn,t)}static createV1(t,n){return e.create(1,t,n)}static decode(t){let[n,r]=e.decodeFirst(t);if(r.length!==0)throw new Error("Incorrect length");return n}static decodeFirst(t){let n=e.inspectBytes(t),r=n.size-n.multihashSize,o=tn(t.subarray(r,r+n.multihashSize));if(o.byteLength!==n.multihashSize)throw new Error("Incorrect length");let i=o.subarray(n.multihashSize-n.digestSize),s=new sn(n.multihashCode,n.digestSize,i,o);return[n.version===0?e.createV0(s):e.createV1(n.codec,s),t.subarray(n.size)]}static inspectBytes(t){let n=0,r=()=>{let[d,p]=Wn(t.subarray(n));return n+=p,d},o=r(),i=Xn;if(o===18?(o=0,n=0):i=r(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=n,a=r(),c=r(),u=n+c,l=u-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(t,n){let[r,o]=kh(t,n),i=e.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Xi(i).set(r,t),i}};function kh(e,t){switch(e[0]){case"Q":{let n=t??it;return[it.prefix,n.decode(`${it.prefix}${e}`)]}case it.prefix:{let n=t??it;return[it.prefix,n.decode(e)]}case Kn.prefix:{let n=t??Kn;return[Kn.prefix,n.decode(e)]}case no.prefix:{let n=t??no;return[no.prefix,n.decode(e)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}}function Oh(e,t,n){let{prefix:r}=n;if(r!==it.prefix)throw Error(`Cannot string encode V0 in ${n.name} encoding`);let o=t.get(r);if(o==null){let i=n.encode(e).slice(1);return t.set(r,i),i}else return o}function zh(e,t,n){let{prefix:r}=n,o=t.get(r);if(o==null){let i=n.encode(e);return t.set(r,i),i}else return o}var Xn=112,Ih=18;function yl(e,t,n){let r=on(e),o=r+on(t),i=new Uint8Array(o+n.byteLength);return rn(e,i,0),rn(t,i,r),i.set(n,o),i}var $h=Symbol.for("@ipld/js-cid/CID");var wl=42;function Ch(e){return e instanceof ArrayBuffer?new Uint8Array(e,0,e.byteLength):e}function Dh(e){if(e.asCID!==e&&e["/"]!==e.bytes)return null;let t=Yn.asCID(e);if(!t)return null;let n=new Uint8Array(t.bytes.byteLength+1);return n.set(t.bytes,1),[new T(y.tag,wl),new T(y.bytes,n)]}function Uh(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Mh(e){if(Number.isNaN(e))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(e===1/0||e===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}function Nh(e){for(let t of e.keys())if(typeof t!="string"||t.length===0)throw new Error("Non-string Map keys are not supported by the IPLD Data Model and cannot be encoded");return null}var Yi={float64:!0,typeEncoders:{Map:Nh,Object:Dh,undefined:Uh,number:Mh}},iS={...Yi,typeEncoders:{...Yi.typeEncoders}};function Lh(e){let t=e();if(t[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return Yn.decode(t.subarray(1))}var Qi={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:{[wl]:Lh}},sS={...Qi,tags:{...Qi.tags}};var Re=e=>Hi(e,Yi),qe=e=>Gi(Ch(e),Qi);function Bh(){let e=new Map;return async(t,n)=>{if(t.params&&t.params["no-cache"]==="true")return await n();let r=e.get(t.didUrl);if(r!==void 0)return r;let o=await n();return o.didResolutionMetadata?.error!=="notFound"&&e.set(t.didUrl,o),o}}function jh(e,t){return t()}var Zh="(?:%[0-9a-fA-F]{2})",_l=`(?:[a-zA-Z0-9._-]|${Zh})`,Fh="([a-z0-9]+)",Hh=`((?:${_l}*:)*(${_l}+))`,bl="[a-zA-Z0-9_.:%-]",Gh=`;${bl}+=${bl}*`,qh=`((${Gh})*)`,Jh="(/[^#?]*)?",Kh="([?][^#]*)?",Vh="(#.*)?",Wh=new RegExp(`^did:${Fh}:${Hh}${qh}${Jh}${Kh}${Vh}$`);function Xh(e){if(e===""||!e)return null;let t=e.match(Wh);if(t){let n={did:`did:${t[1]}:${t[2]}`,method:t[1],id:t[2],didUrl:e};if(t[4]){let r=t[4].slice(1).split(";");n.params={};for(let o of r){let i=o.split("=");n.params[i[0]]=i[1]}}return t[6]&&(n.path=t[6]),t[7]&&(n.query=t[7].slice(1)),t[8]&&(n.fragment=t[8].slice(1)),n}return null}var ro={didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};function Yh(e){return async(t,n,r)=>{try{let o=await e(t,n,r);return{...ro,didResolutionMetadata:{contentType:"application/did+ld+json"},didDocument:o}}catch(o){return{...ro,didResolutionMetadata:{error:"notFound",message:o.toString()}}}}}var oo=class{constructor(t={},n={}){this.registry=t,this.cache=n.cache===!0?Bh():n.cache||jh,n.legacyResolvers&&Object.keys(n.legacyResolvers).map(r=>{this.registry[r]||(this.registry[r]=Yh(n.legacyResolvers[r]))})}async resolve(t,n={}){let r=Xh(t);if(r===null)return{...ro,didResolutionMetadata:{error:"invalidDid"}};let o=this.registry[r.method];return o?this.cache(r,()=>o(r.did,r,this,n)):{...ro,didResolutionMetadata:{error:"unsupportedDidMethod"}}}};function Qn(e,t){return function(){return e.apply(t,arguments)}}var{toString:Qh}=Object.prototype,{getPrototypeOf:an}=Object,{iterator:tr,toStringTag:vl}=Symbol,so=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),er=(e,t)=>{let n=e,r=[];for(;n!=null&&n!==Object.prototype;){if(r.indexOf(n)!==-1)return!1;if(r.push(n),so(n,t))return!0;n=an(n)}return!1},em=(e,t)=>e!=null&&er(e,t)?e[t]:void 0,ts=(e=>t=>{let n=Qh.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Me=e=>(e=e.toLowerCase(),t=>ts(t)===e),ao=e=>t=>typeof t===e,{isArray:zt}=Array,cn=ao("undefined");function un(e){return e!==null&&!cn(e)&&e.constructor!==null&&!cn(e.constructor)&&ge(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Sl=Me("ArrayBuffer");function tm(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Sl(e.buffer),t}var nm=ao("string"),ge=ao("function"),Al=ao("number"),ln=e=>e!==null&&typeof e=="object",rm=e=>e===!0||e===!1,io=e=>{if(!ln(e))return!1;let t=an(e);return(t===null||t===Object.prototype||an(t)===null)&&!er(e,vl)&&!er(e,tr)},om=e=>{if(!ln(e)||un(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},im=Me("Date"),sm=Me("File"),am=e=>!!(e&&typeof e.uri<"u"),cm=e=>e&&typeof e.getParts<"u",um=Me("Blob"),lm=Me("FileList"),dm=e=>ln(e)&&ge(e.pipe);function fm(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}var xl=fm(),El=typeof xl.FormData<"u"?xl.FormData:void 0,pm=e=>{if(!e)return!1;if(El&&e instanceof El)return!0;let t=an(e);if(!t||t===Object.prototype||!ge(e.append))return!1;let n=ts(e);return n==="formdata"||n==="object"&&ge(e.toString)&&e.toString()==="[object FormData]"},hm=Me("URLSearchParams"),[mm,gm,ym,wm]=["ReadableStream","Request","Response","Headers"].map(Me),_m=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function nr(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,o;if(typeof e!="object"&&(e=[e]),zt(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{if(un(e))return;let i=n?Object.getOwnPropertyNames(e):Object.keys(e),s=i.length,a;for(r=0;r<s;r++)a=i[r],t.call(null,e[a],a,e)}}function Rl(e,t){if(un(e))return null;t=t.toLowerCase();let n=Object.keys(e),r=n.length,o;for(;r-- >0;)if(o=n[r],t===o.toLowerCase())return o;return null}var Ot=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Tl=e=>!cn(e)&&e!==Ot;function es(...e){let{caseless:t,skipUndefined:n}=Tl(this)&&this||{},r={},o=(i,s)=>{if(s==="__proto__"||s==="constructor"||s==="prototype")return;let a=t&&typeof s=="string"&&Rl(r,s)||s,c=so(r,a)?r[a]:void 0;io(c)&&io(i)?r[a]=es(c,i):io(i)?r[a]=es({},i):zt(i)?r[a]=i.slice():(!n||!cn(i))&&(r[a]=i)};for(let i=0,s=e.length;i<s;i++){let a=e[i];if(!a||un(a)||(nr(a,o),typeof a!="object"||zt(a)))continue;let c=Object.getOwnPropertySymbols(a);for(let u=0;u<c.length;u++){let l=c[u];zm.call(a,l)&&o(a[l],l)}}return r}var bm=(e,t,n,{allOwnKeys:r}={})=>(nr(t,(o,i)=>{n&&ge(o)?Object.defineProperty(e,i,{__proto__:null,value:Qn(o,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,i,{__proto__:null,value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),xm=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Em=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),n&&Object.assign(e.prototype,n)},vm=(e,t,n,r)=>{let o,i,s,a={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)s=o[i],(!r||r(s,e,t))&&!a[s]&&(t[s]=e[s],a[s]=!0);e=n!==!1&&an(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Sm=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;let r=e.indexOf(t,n);return r!==-1&&r===n},Am=e=>{if(!e)return null;if(zt(e))return e;let t=e.length;if(!Al(t))return null;let n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Rm=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&an(Uint8Array)),Tm=(e,t)=>{let r=(e&&e[tr]).call(e),o;for(;(o=r.next())&&!o.done;){let i=o.value;t.call(e,i[0],i[1])}},Pm=(e,t)=>{let n,r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},km=Me("HTMLFormElement"),Om=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,o){return r.toUpperCase()+o}),{propertyIsEnumerable:zm}=Object.prototype,Im=Me("RegExp"),Pl=(e,t)=>{let n=Object.getOwnPropertyDescriptors(e),r={};nr(n,(o,i)=>{let s;(s=t(o,i,e))!==!1&&(r[i]=s||o)}),Object.defineProperties(e,r)},$m=e=>{Pl(e,(t,n)=>{if(ge(e)&&["arguments","caller","callee"].includes(n))return!1;let r=e[n];if(ge(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Cm=(e,t)=>{let n={},r=o=>{o.forEach(i=>{n[i]=!0})};return zt(e)?r(e):r(String(e).split(t)),n},Dm=()=>{},Um=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Mm(e){return!!(e&&ge(e.append)&&e[vl]==="FormData"&&e[tr])}var Nm=e=>{let t=new WeakSet,n=r=>{if(ln(r)){if(t.has(r))return;if(un(r))return r;if(!("toJSON"in r)){t.add(r);let o=zt(r)?[]:{};return nr(r,(i,s)=>{let a=n(i);!cn(a)&&(o[s]=a)}),t.delete(r),o}}return r};return n(e)},Lm=Me("AsyncFunction"),Bm=e=>e&&(ln(e)||ge(e))&&ge(e.then)&&ge(e.catch),kl=((e,t)=>e?setImmediate:t?((n,r)=>(Ot.addEventListener("message",({source:o,data:i})=>{o===Ot&&i===n&&r.length&&r.shift()()},!1),o=>{r.push(o),Ot.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",ge(Ot.postMessage)),jm=typeof queueMicrotask<"u"?queueMicrotask.bind(Ot):typeof process<"u"&&process.nextTick||kl,Ol=e=>e!=null&&ge(e[tr]),Zm=e=>e!=null&&er(e,tr)&&Ol(e),f={isArray:zt,isArrayBuffer:Sl,isBuffer:un,isFormData:pm,isArrayBufferView:tm,isString:nm,isNumber:Al,isBoolean:rm,isObject:ln,isPlainObject:io,isEmptyObject:om,isReadableStream:mm,isRequest:gm,isResponse:ym,isHeaders:wm,isUndefined:cn,isDate:im,isFile:sm,isReactNativeBlob:am,isReactNative:cm,isBlob:um,isRegExp:Im,isFunction:ge,isStream:dm,isURLSearchParams:hm,isTypedArray:Rm,isFileList:lm,forEach:nr,merge:es,extend:bm,trim:_m,stripBOM:xm,inherits:Em,toFlatObject:vm,kindOf:ts,kindOfTest:Me,endsWith:Sm,toArray:Am,forEachEntry:Tm,matchAll:Pm,isHTMLForm:km,hasOwnProperty:so,hasOwnProp:so,hasOwnInPrototypeChain:er,getSafeProp:em,reduceDescriptors:Pl,freezeMethods:$m,toObjectSet:Cm,toCamelCase:Om,noop:Dm,toFiniteNumber:Um,findKey:Rl,global:Ot,isContextDefined:Tl,isSpecCompliantForm:Mm,toJSONObject:Nm,isAsyncFn:Lm,isThenable:Bm,setImmediate:kl,asap:jm,isIterable:Ol,isSafeIterable:Zm};var Fm=f.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),zl=e=>{let t={},n,r,o;return e&&e.split(`
|
|
3
|
+
`).forEach(function(s){o=s.indexOf(":"),n=s.substring(0,o).trim().toLowerCase(),r=s.substring(o+1).trim(),!(!n||t[n]&&Fm[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t};function Hm(e){let t=0,n=e.length;for(;t<n;){let r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){let r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}var Gm=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),qm=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function ns(e,t){return f.isArray(e)?e.map(n=>ns(n,t)):Hm(String(e).replace(t,""))}var Il=e=>ns(e,Gm),Jm=e=>ns(e,qm);function co(e){let t=Object.create(null);return f.forEach(e.toJSON(),(n,r)=>{t[r]=Jm(n)}),t}var $l=Symbol("internals");function rr(e){return e&&String(e).trim().toLowerCase()}function uo(e){return e===!1||e==null?e:f.isArray(e)?e.map(uo):Il(String(e))}function Km(e){let t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}var Vm=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function rs(e,t,n,r,o){if(f.isFunction(r))return r.call(this,t,n);if(o&&(t=n),!!f.isString(t)){if(f.isString(r))return t.indexOf(r)!==-1;if(f.isRegExp(r))return r.test(t)}}function Wm(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Xm(e,t){let n=f.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{__proto__:null,value:function(o,i,s){return this[r].call(this,t,o,i,s)},configurable:!0})})}var dn=class{constructor(t){t&&this.set(t)}set(t,n,r){let o=this;function i(a,c,u){let l=rr(c);if(!l)return;let d=f.findKey(o,l);(!d||o[d]===void 0||u===!0||u===void 0&&o[d]!==!1)&&(o[d||c]=uo(a))}let s=(a,c)=>f.forEach(a,(u,l)=>i(u,l,c));if(f.isPlainObject(t)||t instanceof this.constructor)s(t,n);else if(f.isString(t)&&(t=t.trim())&&!Vm(t))s(zl(t),n);else if(f.isObject(t)&&f.isSafeIterable(t)){let a=Object.create(null),c,u;for(let l of t){if(!f.isArray(l))throw new TypeError("Object iterator must return a key-value pair");u=l[0],f.hasOwnProp(a,u)?(c=a[u],a[u]=f.isArray(c)?[...c,l[1]]:[c,l[1]]):a[u]=l[1]}s(a,n)}else t!=null&&i(n,t,r);return this}get(t,n){if(t=rr(t),t){let r=f.findKey(this,t);if(r){let o=this[r];if(!n)return o;if(n===!0)return Km(o);if(f.isFunction(n))return n.call(this,o,r);if(f.isRegExp(n))return n.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=rr(t),t){let r=f.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||rs(this,this[r],r,n)))}return!1}delete(t,n){let r=this,o=!1;function i(s){if(s=rr(s),s){let a=f.findKey(r,s);a&&(!n||rs(r,r[a],a,n))&&(delete r[a],o=!0)}}return f.isArray(t)?t.forEach(i):i(t),o}clear(t){let n=Object.keys(this),r=n.length,o=!1;for(;r--;){let i=n[r];(!t||rs(this,this[i],i,t,!0))&&(delete this[i],o=!0)}return o}normalize(t){let n=this,r={};return f.forEach(this,(o,i)=>{let s=f.findKey(r,i);if(s){n[s]=uo(o),delete n[i];return}let a=t?Wm(i):String(i).trim();a!==i&&delete n[i],n[a]=uo(o),r[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let n=Object.create(null);return f.forEach(this,(r,o)=>{r!=null&&r!==!1&&(n[o]=t&&f.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
|
|
4
|
+
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){let r=new this(t);return n.forEach(o=>r.set(o)),r}static accessor(t){let r=(this[$l]=this[$l]={accessors:{}}).accessors,o=this.prototype;function i(s){let a=rr(s);r[a]||(Xm(o,s),r[a]=!0)}return f.isArray(t)?t.forEach(i):i(t),this}};dn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);f.reduceDescriptors(dn.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});f.freezeMethods(dn);var te=dn;var Ym="[REDACTED ****]";function Qm(e){if(f.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(f.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function eg(e,t){let n=new Set(t.map(i=>String(i).toLowerCase())),r=[],o=i=>{if(i===null||typeof i!="object"||f.isBuffer(i))return i;if(r.indexOf(i)!==-1)return;i instanceof te&&(i=i.toJSON()),r.push(i);let s;if(f.isArray(i))s=[],i.forEach((a,c)=>{let u=o(a);f.isUndefined(u)||(s[c]=u)});else{if(!f.isPlainObject(i)&&Qm(i))return r.pop(),i;s=Object.create(null);for(let[a,c]of Object.entries(i)){let u=n.has(a.toLowerCase())?Ym:o(c);f.isUndefined(u)||(s[a]=u)}}return r.pop(),s};return o(e)}var ce=class e extends Error{static from(t,n,r,o,i,s){let a=new e(t.message,n||t.code,r,o,i);return Object.defineProperty(a,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),a.name=t.name,t.status!=null&&a.status==null&&(a.status=t.status),s&&Object.assign(a,s),a}constructor(t,n,r,o,i){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),o&&(this.request=o),i&&(this.response=i,this.status=i.status)}toJSON(){let t=this.config,n=t&&f.hasOwnProp(t,"redact")?t.redact:void 0,r=f.isArray(n)&&n.length>0?eg(t,n):f.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:r,code:this.code,status:this.status}}};ce.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";ce.ERR_BAD_OPTION="ERR_BAD_OPTION";ce.ECONNABORTED="ECONNABORTED";ce.ETIMEDOUT="ETIMEDOUT";ce.ECONNREFUSED="ECONNREFUSED";ce.ERR_NETWORK="ERR_NETWORK";ce.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";ce.ERR_DEPRECATED="ERR_DEPRECATED";ce.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";ce.ERR_BAD_REQUEST="ERR_BAD_REQUEST";ce.ERR_CANCELED="ERR_CANCELED";ce.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";ce.ERR_INVALID_URL="ERR_INVALID_URL";ce.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";var P=ce;var lo=null;var ss=100;function is(e){return f.isPlainObject(e)||f.isArray(e)}function Cl(e){return f.endsWith(e,"[]")?e.slice(0,-2):e}function os(e,t,n){return e?e.concat(t).map(function(o,i){return o=Cl(o),!n&&i?"["+o+"]":o}).join(n?".":""):t}function tg(e){return f.isArray(e)&&!e.some(is)}var ng=f.toFlatObject(f,{},null,function(t){return/^is[A-Z]/.test(t)});function rg(e,t,n){if(!f.isObject(e))throw new TypeError("target must be an object");t=t||new(lo||FormData),n=f.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(v,b){return!f.isUndefined(b[v])});let r=n.metaTokens,o=n.visitor||w,i=n.dots,s=n.indexes,a=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?ss:n.maxDepth,u=a&&f.isSpecCompliantForm(t),l=[];if(!f.isFunction(o))throw new TypeError("visitor must be a function");function d(g){if(g===null)return"";if(f.isDate(g))return g.toISOString();if(f.isBoolean(g))return g.toString();if(!u&&f.isBlob(g))throw new P("Blob is not supported. Use a Buffer instead.");if(f.isArrayBuffer(g)||f.isTypedArray(g)){if(u&&typeof a=="function")return new a([g]);if(typeof Buffer<"u")return Buffer.from(g);throw new P("Blob is not supported. Use a Buffer instead.",P.ERR_NOT_SUPPORT)}return g}function p(g){if(g>c)throw new P("Object is too deeply nested ("+g+" levels). Max depth: "+c,P.ERR_FORM_DATA_DEPTH_EXCEEDED)}function m(g,v){if(c===1/0)return JSON.stringify(g);let b=[];return JSON.stringify(g,function(A,O){if(!f.isObject(O))return O;for(;b.length&&b[b.length-1]!==this;)b.pop();return b.push(O),p(v+b.length-1),O})}function w(g,v,b){let S=g;if(f.isReactNative(t)&&f.isReactNativeBlob(g))return t.append(os(b,v,i),d(g)),!1;if(g&&!b&&typeof g=="object"){if(f.endsWith(v,"{}"))v=r?v:v.slice(0,-2),g=m(g,1);else if(f.isArray(g)&&tg(g)||(f.isFileList(g)||f.endsWith(v,"[]"))&&(S=f.toArray(g)))return v=Cl(v),S.forEach(function(O,D){!(f.isUndefined(O)||O===null)&&t.append(s===!0?os([v],D,i):s===null?v:v+"[]",d(O))}),!1}return is(g)?!0:(t.append(os(b,v,i),d(g)),!1)}let x=Object.assign(ng,{defaultVisitor:w,convertValue:d,isVisitable:is});function _(g,v,b=0){if(!f.isUndefined(g)){if(p(b),l.indexOf(g)!==-1)throw new Error("Circular reference detected in "+v.join("."));l.push(g),f.forEach(g,function(A,O){(!(f.isUndefined(A)||A===null)&&o.call(t,A,f.isString(O)?O.trim():O,v,x))===!0&&_(A,v?v.concat(O):[O],b+1)}),l.pop()}}if(!f.isObject(e))throw new TypeError("data must be an object");return _(e),t}var gt=rg;function Dl(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Ul(e,t){this._pairs=[],e&>(e,this,t)}var Ml=Ul.prototype;Ml.append=function(t,n){this._pairs.push([t,n])};Ml.toString=function(t){let n=t?r=>t.call(this,r,Dl):Dl;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};var fo=Ul;function og(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function or(e,t,n){if(!t)return e;e=e||"";let r=f.isFunction(n)?{serialize:n}:n,o=f.getSafeProp(r,"encode")||og,i=f.getSafeProp(r,"serialize"),s;if(i?s=i(t,r):s=f.isURLSearchParams(t)?t.toString():new fo(t,r).toString(o),s){let a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+s}return e}var as=class{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){f.forEach(this.handlers,function(r){r!==null&&t(r)})}},cs=as;var fn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0};var Nl=typeof URLSearchParams<"u"?URLSearchParams:fo;var Ll=typeof FormData<"u"?FormData:null;var Bl=typeof Blob<"u"?Blob:null;var jl={isBrowser:!0,classes:{URLSearchParams:Nl,FormData:Ll,Blob:Bl},protocols:["http","https","file","blob","url","data"]};var ds={};Mf(ds,{hasBrowserEnv:()=>ls,hasStandardBrowserEnv:()=>ig,hasStandardBrowserWebWorkerEnv:()=>sg,navigator:()=>us,origin:()=>ag});var ls=typeof window<"u"&&typeof document<"u",us=typeof navigator=="object"&&navigator||void 0,ig=ls&&(!us||["ReactNative","NativeScript","NS"].indexOf(us.product)<0),sg=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ag=ls&&window.location.href||"http://localhost";var Y={...ds,...jl};function fs(e,t){return gt(e,new Y.classes.URLSearchParams,{visitor:function(n,r,o,i){return Y.isNode&&f.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}var Zl=ss;function Fl(e){if(e>Zl)throw new P("FormData field is too deeply nested ("+e+" levels). Max depth: "+Zl,P.ERR_FORM_DATA_DEPTH_EXCEEDED)}function cg(e){let t=[],n=/\w+|\[(\w*)]/g,r;for(;(r=n.exec(e))!==null;)Fl(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function ug(e){let t={},n=Object.keys(e),r,o=n.length,i;for(r=0;r<o;r++)i=n[r],t[i]=e[i];return t}function lg(e){function t(n,r,o,i){Fl(i);let s=n[i++];if(s==="__proto__")return!0;let a=Number.isFinite(+s),c=i>=n.length;return s=!s&&f.isArray(o)?o.length:s,c?(f.hasOwnProp(o,s)?o[s]=f.isArray(o[s])?o[s].concat(r):[o[s],r]:o[s]=r,!a):((!f.hasOwnProp(o,s)||!f.isObject(o[s]))&&(o[s]=[]),t(n,r,o[s],i)&&f.isArray(o[s])&&(o[s]=ug(o[s])),!a)}if(f.isFormData(e)&&f.isFunction(e.entries)){let n={};return f.forEachEntry(e,(r,o)=>{t(cg(r),o,n,0)}),n}return null}var po=lg;var pn=(e,t)=>e!=null&&f.hasOwnProp(e,t)?e[t]:void 0;function dg(e,t,n){if(f.isString(e))try{return(t||JSON.parse)(e),f.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}var ps={transitional:fn,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){let r=n.getContentType()||"",o=r.indexOf("application/json")>-1,i=f.isObject(t);if(i&&f.isHTMLForm(t)&&(t=new FormData(t)),f.isFormData(t))return o?JSON.stringify(po(t)):t;if(f.isArrayBuffer(t)||f.isBuffer(t)||f.isStream(t)||f.isFile(t)||f.isBlob(t)||f.isReadableStream(t))return t;if(f.isArrayBufferView(t))return t.buffer;if(f.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(i){let c=pn(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return fs(t,c).toString();if((a=f.isFileList(t))||r.indexOf("multipart/form-data")>-1){let u=pn(this,"env"),l=u&&u.FormData;return gt(a?{"files[]":t}:t,l&&new l,c)}}return i||o?(n.setContentType("application/json",!1),dg(t)):t}],transformResponse:[function(t){let n=pn(this,"transitional")||ps.transitional,r=n&&n.forcedJSONParsing,o=pn(this,"responseType"),i=o==="json";if(f.isResponse(t)||f.isReadableStream(t))return t;if(t&&f.isString(t)&&(r&&!o||i)){let a=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t,pn(this,"parseReviver"))}catch(c){if(a)throw c.name==="SyntaxError"?P.from(c,P.ERR_BAD_RESPONSE,this,null,pn(this,"response")):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Y.classes.FormData,Blob:Y.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};f.forEach(["delete","get","head","post","put","patch","query"],e=>{ps.headers[e]={}});var hn=ps;function ir(e,t){let n=this||hn,r=t||n,o=te.from(r.headers),i=r.data;return f.forEach(e,function(a){i=a.call(n,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function sr(e){return!!(e&&e.__CANCEL__)}var hs=class extends P{constructor(t,n,r){super(t??"canceled",P.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}},Je=hs;function ar(e,t,n){let r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new P("Request failed with status code "+n.status,n.status>=400&&n.status<500?P.ERR_BAD_REQUEST:P.ERR_BAD_RESPONSE,n.config,n.request,n))}function ms(e){let t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function fg(e,t){e=e||10;let n=new Array(e),r=new Array(e),o=0,i=0,s;return t=t!==void 0?t:1e3,function(c){let u=Date.now(),l=r[i];s||(s=u),n[o]=c,r[o]=u;let d=i,p=0;for(;d!==o;)p+=n[d++],d=d%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),u-s<t)return;let m=l&&u-l;return m?Math.round(p*1e3/m):void 0}}var Hl=fg;function pg(e,t){let n=0,r=1e3/t,o,i,s=(u,l=Date.now())=>{n=l,o=null,i&&(clearTimeout(i),i=null),e(...u)};return[(...u)=>{let l=Date.now(),d=l-n;d>=r?s(u,l):(o=u,i||(i=setTimeout(()=>{i=null,s(o)},r-d)))},()=>o&&s(o)]}var Gl=pg;var mn=(e,t,n=3)=>{let r=0,o=Hl(50,250);return Gl(i=>{if(!i||typeof i.loaded!="number")return;let s=i.loaded,a=i.lengthComputable?i.total:void 0,c=a!=null?Math.min(s,a):s,u=Math.max(0,c-r),l=o(u);r=Math.max(r,c);let d={loaded:c,total:a,progress:a?c/a:void 0,bytes:u,rate:l||void 0,estimated:l&&a?(a-c)/l:void 0,event:i,lengthComputable:a!=null,[t?"download":"upload"]:!0};e(d)},n)},gs=(e,t)=>{let n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},ys=e=>(...t)=>f.asap(()=>e(...t));var ql=Y.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Y.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Y.origin),Y.navigator&&/(msie|trident)/i.test(Y.navigator.userAgent)):()=>!0;var Jl=Y.hasStandardBrowserEnv?{write(e,t,n,r,o,i,s){if(typeof document>"u")return;let a=[`${e}=${encodeURIComponent(t)}`];f.isNumber(n)&&a.push(`expires=${new Date(n).toUTCString()}`),f.isString(r)&&a.push(`path=${r}`),f.isString(o)&&a.push(`domain=${o}`),i===!0&&a.push("secure"),f.isString(s)&&a.push(`SameSite=${s}`),document.cookie=a.join("; ")},read(e){if(typeof document>"u")return null;let t=document.cookie.split(";");for(let n=0;n<t.length;n++){let r=t[n].replace(/^\s+/,""),o=r.indexOf("=");if(o!==-1&&r.slice(0,o)===e)try{return decodeURIComponent(r.slice(o+1))}catch{return r.slice(o+1)}}return null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function ws(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function _s(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}var hg=/^https?:(?!\/\/)/i,mg=/[\t\n\r]/g;function gg(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function yg(e){return gg(e).replace(mg,"")}function Kl(e,t){if(typeof e=="string"&&hg.test(yg(e)))throw new P('Invalid URL: missing "//" after protocol',P.ERR_INVALID_URL,t)}function cr(e,t,n,r){Kl(t,r);let o=!ws(t);return e&&(o||n===!1)?(Kl(e,r),_s(e,t)):t}var Vl=e=>e instanceof te?{...e}:e;function Ne(e,t){e=e||{},t=t||{};let n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(l,d,p,m){return f.isPlainObject(l)&&f.isPlainObject(d)?f.merge.call({caseless:m},l,d):f.isPlainObject(d)?f.merge({},d):f.isArray(d)?d.slice():d}function o(l,d,p,m){if(f.isUndefined(d)){if(!f.isUndefined(l))return r(void 0,l,p,m)}else return r(l,d,p,m)}function i(l,d){if(!f.isUndefined(d))return r(void 0,d)}function s(l,d){if(f.isUndefined(d)){if(!f.isUndefined(l))return r(void 0,l)}else return r(void 0,d)}function a(l){let d=f.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!f.isUndefined(d))if(f.isPlainObject(d)){if(f.hasOwnProp(d,l))return d[l]}else return;let p=f.hasOwnProp(e,"transitional")?e.transitional:void 0;if(f.isPlainObject(p)&&f.hasOwnProp(p,l))return p[l]}function c(l,d,p){if(f.hasOwnProp(t,p))return r(l,d);if(f.hasOwnProp(e,p))return r(void 0,l)}let u={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,allowedSocketPaths:s,responseEncoding:s,validateStatus:c,headers:(l,d,p)=>o(Vl(l),Vl(d),p,!0)};return f.forEach(Object.keys({...e,...t}),function(d){if(d==="__proto__"||d==="constructor"||d==="prototype")return;let p=f.hasOwnProp(u,d)?u[d]:o,m=f.hasOwnProp(e,d)?e[d]:void 0,w=f.hasOwnProp(t,d)?t[d]:void 0,x=p(m,w,d);f.isUndefined(x)&&p!==c||(n[d]=x)}),f.hasOwnProp(t,"validateStatus")&&f.isUndefined(t.validateStatus)&&a("validateStatusUndefinedResolves")===!1&&(f.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}var wg=["content-type","content-length"];function _g(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,o])=>{wg.includes(r.toLowerCase())&&e.set(r,o)})}var bg=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function xg(e){let t=Ne({},e),n=p=>f.hasOwnProp(t,p)?t[p]:void 0,r=n("data"),o=n("withXSRFToken"),i=n("xsrfHeaderName"),s=n("xsrfCookieName"),a=n("headers"),c=n("auth"),u=n("baseURL"),l=n("allowAbsoluteUrls"),d=n("url");if(t.headers=a=te.from(a),t.url=or(cr(u,d,l,t),n("params"),n("paramsSerializer")),c){let p=f.getSafeProp(c,"username")||"",m=f.getSafeProp(c,"password")||"";try{a.set("Authorization","Basic "+btoa(p+":"+(m?bg(m):"")))}catch(w){throw P.from(w,P.ERR_BAD_OPTION_VALUE,e)}}if(f.isFormData(r)&&(Y.hasStandardBrowserEnv||Y.hasStandardBrowserWebWorkerEnv||f.isReactNative(r)?a.setContentType(void 0):f.isFunction(r.getHeaders)&&_g(a,r.getHeaders(),n("formDataHeaderPolicy"))),Y.hasStandardBrowserEnv&&(f.isFunction(o)&&(o=o(t)),o===!0||o==null&&ql(t.url))){let m=i&&s&&Jl.read(s);m&&a.set(i,m)}return t}var ho=xg;var Eg=typeof XMLHttpRequest<"u",Wl=Eg&&function(e){return new Promise(function(n,r){let o=ho(e),i=o.data,s=te.from(o.headers).normalize(),{responseType:a,onUploadProgress:c,onDownloadProgress:u}=o,l,d,p,m,w;function x(){m&&m(),w&&w(),o.cancelToken&&o.cancelToken.unsubscribe(l),o.signal&&o.signal.removeEventListener("abort",l)}let _=new XMLHttpRequest;_.open(o.method.toUpperCase(),o.url,!0),_.timeout=o.timeout;function g(){if(!_)return;let b=te.from("getAllResponseHeaders"in _&&_.getAllResponseHeaders()),A={data:!a||a==="text"||a==="json"?_.responseText:_.response,status:_.status,statusText:_.statusText,headers:b,config:e,request:_};ar(function(D){n(D),x()},function(D){r(D),x()},A),_=null}"onloadend"in _?_.onloadend=g:_.onreadystatechange=function(){!_||_.readyState!==4||_.status===0&&!(_.responseURL&&_.responseURL.startsWith("file:"))||setTimeout(g)},_.onabort=function(){_&&(r(new P("Request aborted",P.ECONNABORTED,e,_)),x(),_=null)},_.onerror=function(S){let A=S&&S.message?S.message:"Network Error",O=new P(A,P.ERR_NETWORK,e,_);O.event=S||null,r(O),x(),_=null},_.ontimeout=function(){let S=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded",A=o.transitional||fn;o.timeoutErrorMessage&&(S=o.timeoutErrorMessage),r(new P(S,A.clarifyTimeoutError?P.ETIMEDOUT:P.ECONNABORTED,e,_)),x(),_=null},i===void 0&&s.setContentType(null),"setRequestHeader"in _&&f.forEach(co(s),function(S,A){_.setRequestHeader(A,S)}),f.isUndefined(o.withCredentials)||(_.withCredentials=!!o.withCredentials),a&&a!=="json"&&(_.responseType=o.responseType),u&&([p,w]=mn(u,!0),_.addEventListener("progress",p)),c&&_.upload&&([d,m]=mn(c),_.upload.addEventListener("progress",d),_.upload.addEventListener("loadend",m)),(o.cancelToken||o.signal)&&(l=b=>{_&&(r(!b||b.type?new Je(null,e,_):b),_.abort(),x(),_=null)},o.cancelToken&&o.cancelToken.subscribe(l),o.signal&&(o.signal.aborted?l():o.signal.addEventListener("abort",l)));let v=ms(o.url);if(v&&!Y.protocols.includes(v)){r(new P("Unsupported protocol "+v+":",P.ERR_BAD_REQUEST,e)),x();return}_.send(i||null)})};var vg=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;let n=new AbortController,r=!1,o=function(c){if(!r){r=!0,s();let u=c instanceof Error?c:this.reason;n.abort(u instanceof P?u:new Je(u instanceof Error?u.message:u))}},i=t&&setTimeout(()=>{i=null,o(new P(`timeout of ${t}ms exceeded`,P.ETIMEDOUT))},t),s=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(o):c.removeEventListener("abort",o)}),e=null)};e.forEach(c=>c.addEventListener("abort",o,{once:!0}));let{signal:a}=n;return a.unsubscribe=()=>f.asap(s),a},Xl=vg;var Sg=function*(e,t){let n=e.byteLength;if(!t||n<t){yield e;return}let r=0,o;for(;r<n;)o=r+t,yield e.slice(r,o),r=o},Ag=async function*(e,t){for await(let n of Rg(e))yield*Sg(n,t)},Rg=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}let t=e.getReader();try{for(;;){let{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},bs=(e,t,n,r)=>{let o=Ag(e,t),i=0,s,a=c=>{s||(s=!0,r&&r(c))};return new ReadableStream({async pull(c){try{let{done:u,value:l}=await o.next();if(u){a(),c.close();return}let d=l.byteLength;if(n){let p=i+=d;n(p)}c.enqueue(new Uint8Array(l))}catch(u){throw a(u),u}},cancel(c){return a(c),o.return()}},{highWaterMark:2})};var mo=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,Tg=(e,t,n)=>t+2<n&&mo(e.charCodeAt(t+1))&&mo(e.charCodeAt(t+2));function xs(e){if(!e||typeof e!="string"||!e.startsWith("data:"))return 0;let t=e.indexOf(",");if(t<0)return 0;let n=e.slice(5,t),r=e.slice(t+1);if(/;base64/i.test(n)){let s=r.length,a=r.length;for(let m=0;m<a;m++)if(r.charCodeAt(m)===37&&m+2<a){let w=r.charCodeAt(m+1),x=r.charCodeAt(m+2);mo(w)&&mo(x)&&(s-=2,m+=2)}let c=0,u=a-1,l=m=>m>=2&&r.charCodeAt(m-2)===37&&r.charCodeAt(m-1)===51&&(r.charCodeAt(m)===68||r.charCodeAt(m)===100);u>=0&&(r.charCodeAt(u)===61?(c++,u--):l(u)&&(c++,u-=3)),c===1&&u>=0&&(r.charCodeAt(u)===61||l(u))&&c++;let p=Math.floor(s/4)*3-(c||0);return p>0?p:0}let i=0;for(let s=0,a=r.length;s<a;s++){let c=r.charCodeAt(s);if(c===37&&Tg(r,s,a))i+=1,s+=2;else if(c<128)i+=1;else if(c<2048)i+=2;else if(c>=55296&&c<=56319&&s+1<a){let u=r.charCodeAt(s+1);u>=56320&&u<=57343?(i+=4,s++):i+=3}else i+=3}return i}var gn="1.18.1";var Yl=64*1024,{isFunction:go}=f,Pg=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),Ql=e=>{if(!f.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},ed=(e,...t)=>{try{return!!e(...t)}catch{return!1}},kg=e=>{let t=e.indexOf("://"),n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},Og=e=>{let t=f.global!==void 0&&f.global!==null?f.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=f.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);let{fetch:o,Request:i,Response:s}=e,a=o?go(o):typeof fetch=="function",c=go(i),u=go(s);if(!a)return!1;let l=a&&go(n),d=a&&(typeof r=="function"?(g=>v=>g.encode(v))(new r):async g=>new Uint8Array(await new i(g).arrayBuffer())),p=c&&l&&ed(()=>{let g=!1,v=new i(Y.origin,{body:new n,method:"POST",get duplex(){return g=!0,"half"}}),b=v.headers.has("Content-Type");return v.body!=null&&v.body.cancel(),g&&!b}),m=u&&l&&ed(()=>f.isReadableStream(new s("").body)),w={stream:m&&(g=>g.body)};a&&["text","arrayBuffer","blob","formData","stream"].forEach(g=>{!w[g]&&(w[g]=(v,b)=>{let S=v&&v[g];if(S)return S.call(v);throw new P(`Response type '${g}' is not supported`,P.ERR_NOT_SUPPORT,b)})});let x=async g=>{if(g==null)return 0;if(f.isBlob(g))return g.size;if(f.isSpecCompliantForm(g))return(await new i(Y.origin,{method:"POST",body:g}).arrayBuffer()).byteLength;if(f.isArrayBufferView(g)||f.isArrayBuffer(g))return g.byteLength;if(f.isURLSearchParams(g)&&(g=g+""),f.isString(g))return(await d(g)).byteLength},_=async(g,v)=>{let b=f.toFiniteNumber(g.getContentLength());return b??x(v)};return async g=>{let{url:v,method:b,data:S,signal:A,cancelToken:O,timeout:D,onDownloadProgress:L,onUploadProgress:ne,responseType:H,headers:h,withCredentials:E="same-origin",fetchOptions:C,maxContentLength:N,maxBodyLength:G}=ho(g),M=f.isNumber(N)&&N>-1,ut=f.isNumber(G)&&G>-1,zn=q=>f.hasOwnProp(g,q)?g[q]:void 0,In=o||fetch;H=H?(H+"").toLowerCase():"text";let K=Xl([A,O&&O.toAbortSignal()],D),W=null,xt=K&&K.unsubscribe&&(()=>{K.unsubscribe()}),Zt,$n=null,Ca=()=>new P("Request body larger than maxBodyLength limit",P.ERR_BAD_REQUEST,g,W);try{let q,ke=zn("auth");if(ke){let U=f.getSafeProp(ke,"username")||"",_e=f.getSafeProp(ke,"password")||"";q={username:U,password:_e}}if(kg(v)){let U=new URL(v,Y.origin);if(!q&&(U.username||U.password)){let _e=Ql(U.username),lt=Ql(U.password);q={username:_e,password:lt}}(U.username||U.password)&&(U.username="",U.password="",v=U.href)}if(q&&(h.delete("authorization"),h.set("Authorization","Basic "+btoa(Pg((q.username||"")+":"+(q.password||""))))),M&&typeof v=="string"&&v.startsWith("data:")&&xs(v)>N)throw new P("maxContentLength size of "+N+" exceeded",P.ERR_BAD_RESPONSE,g,W);if(ut&&b!=="get"&&b!=="head"){let U=await x(S);if(typeof U=="number"&&isFinite(U)&&(Zt=U,U>G))throw Ca()}let Tr=ut&&(f.isReadableStream(S)||f.isStream(S)),Da=(U,_e,lt)=>bs(U,Yl,Et=>{if(ut&&Et>G)throw $n=Ca();_e&&_e(Et)},lt);if(p&&b!=="get"&&b!=="head"&&(ne||Tr)){if(Zt=Zt??await _(h,S),Zt!==0||Tr){let U=new i(v,{method:"POST",body:S,duplex:"half"}),_e;if(f.isFormData(S)&&(_e=U.headers.get("content-type"))&&h.setContentType(_e),U.body){let[lt,Et]=ne&&gs(Zt,mn(ys(ne)))||[];S=Da(U.body,lt,Et)}}}else if(Tr&&!c&&l&&b!=="get"&&b!=="head")S=Da(S);else if(Tr&&c&&!p&&b!=="get"&&b!=="head")throw new P("Stream request bodies are not supported by the current fetch implementation",P.ERR_NOT_SUPPORT,g,W);f.isString(E)||(E=E?"include":"omit");let Cf=c&&"credentials"in i.prototype;if(f.isFormData(S)){let U=h.getContentType();U&&/^multipart\/form-data/i.test(U)&&!/boundary=/i.test(U)&&h.delete("content-type")}h.set("User-Agent","axios/"+gn,!1);let Ua={...C,signal:K,method:b.toUpperCase(),headers:co(h.normalize()),body:S,duplex:"half",credentials:Cf?E:void 0};W=c&&new i(v,Ua);let Ye=await(c?In(W,C):In(v,Ua)),Ma=te.from(Ye.headers);if(M){let U=f.toFiniteNumber(Ma.getContentLength());if(U!=null&&U>N)throw new P("maxContentLength size of "+N+" exceeded",P.ERR_BAD_RESPONSE,g,W)}let gi=m&&(H==="stream"||H==="response");if(m&&Ye.body&&(L||M||gi&&xt)){let U={};["status","statusText","headers"].forEach(Cn=>{U[Cn]=Ye[Cn]});let _e=f.toFiniteNumber(Ma.getContentLength()),[lt,Et]=L&&gs(_e,mn(ys(L),!0))||[],Na=0,Df=Cn=>{if(M&&(Na=Cn,Na>N))throw new P("maxContentLength size of "+N+" exceeded",P.ERR_BAD_RESPONSE,g,W);lt&<(Cn)};Ye=new s(bs(Ye.body,Yl,Df,()=>{Et&&Et(),xt&&xt()}),U)}H=H||"text";let Qe=await w[f.findKey(w,H)||"text"](Ye,g);if(M&&!m&&!gi){let U;if(Qe!=null&&(typeof Qe.byteLength=="number"?U=Qe.byteLength:typeof Qe.size=="number"?U=Qe.size:typeof Qe=="string"&&(U=typeof r=="function"?new r().encode(Qe).byteLength:Qe.length)),typeof U=="number"&&U>N)throw new P("maxContentLength size of "+N+" exceeded",P.ERR_BAD_RESPONSE,g,W)}return!gi&&xt&&xt(),await new Promise((U,_e)=>{ar(U,_e,{data:Qe,headers:te.from(Ye.headers),status:Ye.status,statusText:Ye.statusText,config:g,request:W})})}catch(q){if(xt&&xt(),K&&K.aborted&&K.reason instanceof P){let ke=K.reason;throw ke.config=g,W&&(ke.request=W),q!==ke&&Object.defineProperty(ke,"cause",{__proto__:null,value:q,writable:!0,enumerable:!1,configurable:!0}),ke}if($n)throw W&&!$n.request&&($n.request=W),$n;if(q instanceof P)throw W&&!q.request&&(q.request=W),q;if(q&&q.name==="TypeError"&&/Load failed|fetch/i.test(q.message)){let ke=new P("Network Error",P.ERR_NETWORK,g,W,q&&q.response);throw Object.defineProperty(ke,"cause",{__proto__:null,value:q.cause||q,writable:!0,enumerable:!1,configurable:!0}),ke}throw P.from(q,q&&q.code,g,W,q&&q.response)}}},zg=new Map,Es=e=>{let t=e&&e.env||{},{fetch:n,Request:r,Response:o}=t,i=[r,o,n],s=i.length,a=s,c,u,l=zg;for(;a--;)c=i[a],u=l.get(c),u===void 0&&l.set(c,u=a?new Map:Og(t)),l=u;return u},A0=Es();var vs={http:lo,xhr:Wl,fetch:{get:Es}};f.forEach(vs,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});var td=e=>`- ${e}`,$g=e=>f.isFunction(e)||e===null||e===!1;function Cg(e,t){e=f.isArray(e)?e:[e];let{length:n}=e,r,o,i={};for(let s=0;s<n;s++){r=e[s];let a;if(o=r,!$g(r)&&(o=vs[(a=String(r)).toLowerCase()],o===void 0))throw new P(`Unknown adapter '${a}'`);if(o&&(f.isFunction(o)||(o=o.get(t))))break;i[a||"#"+s]=o}if(!o){let s=Object.entries(i).map(([c,u])=>`adapter ${c} `+(u===!1?"is not supported by the environment":"is not available in the build")),a=n?s.length>1?`since :
|
|
5
|
+
`+s.map(td).join(`
|
|
6
|
+
`):" "+td(s[0]):"as no adapter specified";throw new P("There is no suitable adapter to dispatch the request "+a,P.ERR_NOT_SUPPORT)}return o}var yo={getAdapter:Cg,adapters:vs};function Ss(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Je(null,e)}function wo(e){return Ss(e),e.headers=te.from(e.headers),e.data=ir.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),yo.getAdapter(e.adapter||hn.adapter,e)(e).then(function(r){Ss(e),e.response=r;try{r.data=ir.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=te.from(r.headers),r},function(r){if(!sr(r)&&(Ss(e),r&&r.response)){e.response=r.response;try{r.response.data=ir.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=te.from(r.response.headers)}return Promise.reject(r)})}var _o={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{_o[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});var nd={};_o.transitional=function(t,n,r){function o(i,s){return"[Axios v"+gn+"] Transitional option '"+i+"'"+s+(r?". "+r:"")}return(i,s,a)=>{if(t===!1)throw new P(o(s," has been removed"+(n?" in "+n:"")),P.ERR_DEPRECATED);return n&&!nd[s]&&(nd[s]=!0,console.warn(o(s," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,s,a):!0}};_o.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Dg(e,t,n){if(typeof e!="object"||e===null)throw new P("options must be an object",P.ERR_BAD_OPTION_VALUE);let r=Object.keys(e),o=r.length;for(;o-- >0;){let i=r[o],s=Object.prototype.hasOwnProperty.call(t,i)?t[i]:void 0;if(s){let a=e[i],c=a===void 0||s(a,i,e);if(c!==!0)throw new P("option "+i+" must be "+c,P.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new P("Unknown option "+i,P.ERR_BAD_OPTION)}}var ur={assertOptions:Dg,validators:_o};var de=ur.validators,yn=class{constructor(t){this.defaults=t||{},this.interceptors={request:new cs,response:new cs}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;let i=(()=>{if(!o.stack)return"";let s=o.stack.indexOf(`
|
|
7
|
+
`);return s===-1?"":o.stack.slice(s+1)})();try{if(!r.stack)r.stack=i;else if(i){let s=i.indexOf(`
|
|
8
|
+
`),a=s===-1?-1:i.indexOf(`
|
|
9
|
+
`,s+1),c=a===-1?"":i.slice(a+1);String(r.stack).endsWith(c)||(r.stack+=`
|
|
10
|
+
`+i)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Ne(this.defaults,n);let{transitional:r,paramsSerializer:o,headers:i}=n;r!==void 0&&ur.assertOptions(r,{silentJSONParsing:de.transitional(de.boolean),forcedJSONParsing:de.transitional(de.boolean),clarifyTimeoutError:de.transitional(de.boolean),legacyInterceptorReqResOrdering:de.transitional(de.boolean),advertiseZstdAcceptEncoding:de.transitional(de.boolean),validateStatusUndefinedResolves:de.transitional(de.boolean)},!1),o!=null&&(f.isFunction(o)?n.paramsSerializer={serialize:o}:ur.assertOptions(o,{encode:de.function,serialize:de.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ur.assertOptions(n,{baseUrl:de.spelling("baseURL"),withXsrfToken:de.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=i&&f.merge(i.common,i[n.method]);i&&f.forEach(["delete","get","head","post","put","patch","query","common"],w=>{delete i[w]}),n.headers=te.concat(s,i);let a=[],c=!0;this.interceptors.request.forEach(function(x){if(typeof x.runWhen=="function"&&x.runWhen(n)===!1)return;c=c&&x.synchronous;let _=n.transitional||fn;_&&_.legacyInterceptorReqResOrdering?a.unshift(x.fulfilled,x.rejected):a.push(x.fulfilled,x.rejected)});let u=[];this.interceptors.response.forEach(function(x){u.push(x.fulfilled,x.rejected)});let l,d=0,p;if(!c){let w=[wo.bind(this),void 0];for(w.unshift(...a),w.push(...u),p=w.length,l=Promise.resolve(n);d<p;)l=l.then(w[d++],w[d++]);return l}p=a.length;let m=n;for(;d<p;){let w=a[d++],x=a[d++];try{m=w(m)}catch(_){x.call(this,_);break}}try{l=wo.call(this,m)}catch(w){return Promise.reject(w)}for(d=0,p=u.length;d<p;)l=l.then(u[d++],u[d++]);return l}getUri(t){t=Ne(this.defaults,t);let n=cr(t.baseURL,t.url,t.allowAbsoluteUrls,t);return or(n,t.params,t.paramsSerializer)}};f.forEach(["delete","get","head","options"],function(t){yn.prototype[t]=function(n,r){return this.request(Ne(r||{},{method:t,url:n,data:r&&f.hasOwnProp(r,"data")?r.data:void 0}))}});f.forEach(["post","put","patch","query"],function(t){function n(r){return function(i,s,a){return this.request(Ne(a||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:i,data:s}))}}yn.prototype[t]=n(),t!=="query"&&(yn.prototype[t+"Form"]=n(!0))});var lr=yn;var As=class e{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});let r=this;this.promise.then(o=>{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](o);r._listeners=null}),this.promise.then=o=>{let i,s=new Promise(a=>{r.subscribe(a),i=a}).then(o);return s.cancel=function(){r.unsubscribe(i)},s},t(function(i,s,a){r.reason||(r.reason=new Je(i,s,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){let t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new e(function(o){t=o}),cancel:t}}},rd=As;function Rs(e){return function(n){return e.apply(null,n)}}function Ts(e){return f.isObject(e)&&e.isAxiosError===!0}var Ps={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Ps).forEach(([e,t])=>{Ps[t]=e});var od=Ps;function id(e){let t=new lr(e),n=Qn(lr.prototype.request,t);return f.extend(n,lr.prototype,t,{allOwnKeys:!0}),f.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return id(Ne(e,o))},n}var ie=id(hn);ie.Axios=lr;ie.CanceledError=Je;ie.CancelToken=rd;ie.isCancel=sr;ie.VERSION=gn;ie.toFormData=gt;ie.AxiosError=P;ie.Cancel=ie.CanceledError;ie.all=function(t){return Promise.all(t)};ie.spread=Rs;ie.isAxiosError=Ts;ie.mergeConfig=Ne;ie.AxiosHeaders=te;ie.formToJSON=e=>po(f.isHTMLForm(e)?new FormData(e):e);ie.getAdapter=yo.getAdapter;ie.HttpStatusCode=od;ie.default=ie;var bo=ie;var{Axios:ER,AxiosError:vR,CanceledError:SR,isCancel:AR,CancelToken:RR,VERSION:TR,all:PR,Cancel:kR,isAxiosError:OR,spread:zR,toFormData:IR,AxiosHeaders:$R,HttpStatusCode:CR,formToJSON:DR,getAdapter:UR,mergeConfig:MR,create:NR}=bo;function Ug(e,t){try{var n=e()}catch(r){return t(r)}return n&&n.then?n.then(void 0,t):n}function Te(e,t,n){if(!e.s){if(n instanceof ks)if(n.s)t&1&&(t=n.s),n=n.v;else{n.o=Te.bind(null,e,t);return}if(n&&n.then){n.then(Te.bind(null,e,t),Te.bind(null,e,2));return}e.s=t,e.v=n;let r=e.o;r&&r(e)}}var ks=(function(){function e(){}return e.prototype.then=function(t,n){let r=new e,o=this.s;if(o){let i=o&1?t:n;if(i){try{Te(r,1,i(this.v))}catch(s){Te(r,2,s)}return r}else return this}return this.o=function(i){try{let s=i.v;i.s&1?Te(r,1,t?t(s):s):n?Te(r,1,n(s)):Te(r,2,s)}catch(s){Te(r,2,s)}},r},e})();function wn(e){return e instanceof ks&&e.s&1}function Mg(e,t){var n;do{var r=e();if(r&&r.then)if(wn(r))r=r.v;else{n=!0;break}var o=t();if(wn(o)&&(o=o.v),!o)return r}while(!o.then);let i=new ks,s=Te.bind(null,i,2);return(n?r.then(a):o.then(c)).then(void 0,s),i;function a(u){for(r=u;o=t(),wn(o)&&(o=o.v),!!o;){if(o.then){o.then(c).then(void 0,s);return}if(r=e(),r&&r.then)if(wn(r))r=r.v;else{r.then(a).then(void 0,s);return}}Te(i,1,r)}function c(u){if(u){do{if(r=e(),r&&r.then)if(wn(r))r=r.v;else{r.then(a).then(void 0,s);return}if(u=t(),wn(u)&&(u=u.v),!u){Te(i,1,r);return}}while(!u.then);u.then(c).then(void 0,s)}else Te(i,1,r)}}function sd(){return{plc:function(t,n){try{let o=function(){let l=typeof c?.["@context"]<"u"?"application/did+ld+json":"application/did+json";return i?{didDocument:c,didDocumentMetadata:a,didResolutionMetadata:{error:"notFound",message:i}}:{didDocument:c,didDocumentMetadata:a,didResolutionMetadata:{contentType:l}}},r,i=null,s=`https://plc.directory/${encodeURIComponent(t)}`,a={},c=null,u=Mg(function(){function l(){r||c?.id===t||(i="resolver_error: DID document id does not match requested did")}let d=Ug(function(){return Promise.resolve(bo.get(s)).then(function(p){c=p.data})},function(p){i=`resolver_error: '"https://plc.directory/" + DID' must resolve to a valid https URL containing a JSON document: ${p}`,r=1});return d&&d.then?d.then(l):l(d)},function(){return!r&&!1});return Promise.resolve(u&&u.then?u.then(o):o(u))}catch(r){return Promise.reject(r)}}}}var ud=Nf(cd(),1);function Ng(e,t){try{var n=e()}catch(r){return t(r)}return n&&n.then?n.then(void 0,t):n}var Lg=function(e){try{return Promise.resolve((0,ud.default)(e,{mode:"cors"})).then(function(t){if(t.status>=400)throw new Error(`Bad response ${t.statusText}`);return t.json()})}catch(t){return Promise.reject(t)}};function Pe(e,t,n){if(!e.s){if(n instanceof Os)if(n.s)t&1&&(t=n.s),n=n.v;else{n.o=Pe.bind(null,e,t);return}if(n&&n.then){n.then(Pe.bind(null,e,t),Pe.bind(null,e,2));return}e.s=t,e.v=n;let r=e.o;r&&r(e)}}var Bg="/.well-known/did.json",Os=(function(){function e(){}return e.prototype.then=function(t,n){let r=new e,o=this.s;if(o){let i=o&1?t:n;if(i){try{Pe(r,1,i(this.v))}catch(s){Pe(r,2,s)}return r}else return this}return this.o=function(i){try{let s=i.v;i.s&1?Pe(r,1,t?t(s):s):n?Pe(r,1,n(s)):Pe(r,2,s)}catch(s){Pe(r,2,s)}},r},e})();function bn(e){return e instanceof Os&&e.s&1}function jg(e,t){var n;do{var r=e();if(r&&r.then)if(bn(r))r=r.v;else{n=!0;break}var o=t();if(bn(o)&&(o=o.v),!o)return r}while(!o.then);let i=new Os,s=Pe.bind(null,i,2);return(n?r.then(a):o.then(c)).then(void 0,s),i;function a(u){for(r=u;o=t(),bn(o)&&(o=o.v),!!o;){if(o.then){o.then(c).then(void 0,s);return}if(r=e(),r&&r.then)if(bn(r))r=r.v;else{r.then(a).then(void 0,s);return}}Pe(i,1,r)}function c(u){if(u){do{if(r=e(),r&&r.then)if(bn(r))r=r.v;else{r.then(a).then(void 0,s);return}if(u=t(),bn(u)&&(u=u.v),!u){Pe(i,1,r);return}}while(!u.then);u.then(c).then(void 0,s)}else Pe(i,1,r)}}function ld(){return{web:function(t,n){try{let o=function(){let p=typeof l?.["@context"]<"u"?"application/did+ld+json":"application/did+json";return i?{didDocument:l,didDocumentMetadata:u,didResolutionMetadata:{error:"notFound",message:i}}:{didDocument:l,didDocumentMetadata:u,didResolutionMetadata:{contentType:p}}},r,i=null,s=decodeURIComponent(n.id)+Bg,a=n.id.split(":");a.length>1&&(s=a.map(decodeURIComponent).join("/")+"/did.json");let c=`https://${s}`,u={},l=null,d=jg(function(){function p(){r||l?.id===t||(i="resolver_error: DID document id does not match requested did")}let m=Ng(function(){return Promise.resolve(Lg(c)).then(function(w){l=w})},function(w){i=`resolver_error: DID must resolve to a valid https URL containing a JSON document: ${w}`,r=1});return m&&m.then?m.then(p):p(m)},function(){return!r&&!1});return Promise.resolve(d&&d.then?d.then(o):o(d))}catch(r){return Promise.reject(r)}}}}var vo=class{methods={...sd(),...ld()};resolver=new oo(this.methods,{cache:!0});async resolve(t){if(!Object.keys(this.methods).some(r=>t.startsWith(`did:${r}:`)))throw new Error(`Unrecognized DID method: ${t}`);let{didDocument:n}=await this.resolver.resolve(t);if(!n)throw new re(`DID not found: ${t}`);return n}};var $s;(typeof navigator>"u"||!navigator.userAgent?.startsWith?.("Mozilla/5.0 "))&&($s="oauth4webapi/v3.8.6");function mr(e,t){if(e==null)return!1;try{return e instanceof t||Object.getPrototypeOf(e)[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]}catch{return!1}}var we="ERR_INVALID_ARG_VALUE",Ie="ERR_INVALID_ARG_TYPE";function V(e,t,n){let r=new TypeError(e,{cause:n});return Object.assign(r,{code:t}),r}var $t=Symbol(),Po=Symbol(),ko=Symbol(),Ct=Symbol();var So=Symbol();var Zg=new TextEncoder,Fg=new TextDecoder;function dd(e){return typeof e=="string"?Zg.encode(e):Fg.decode(e)}var Cs;Uint8Array.prototype.toBase64?Cs=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:"base64url",omitPadding:!0})):Cs=t=>{t instanceof ArrayBuffer&&(t=new Uint8Array(t));let n=[];for(let r=0;r<t.byteLength;r+=32768)n.push(String.fromCharCode.apply(null,t.subarray(r,r+32768)));return btoa(n.join("")).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")};var Ds;Uint8Array.fromBase64?Ds=e=>{try{return Uint8Array.fromBase64(e,{alphabet:"base64url"})}catch(t){throw V("The input to be decoded is not correctly encoded.",we,t)}}:Ds=e=>{try{let t=atob(e.replace(/-/g,"+").replace(/_/g,"/").replace(/\s/g,"")),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}catch(t){throw V("The input to be decoded is not correctly encoded.",we,t)}};function Us(e){return typeof e=="string"?Ds(e):Cs(e)}var wt=class extends Error{code;constructor(t,n){super(t,n),this.name=this.constructor.name,this.code=Do,Error.captureStackTrace?.(this,this.constructor)}},fr=class extends Error{code;constructor(t,n){super(t,n),this.name=this.constructor.name,n?.code&&(this.code=n?.code),Error.captureStackTrace?.(this,this.constructor)}};function $(e,t,n){return new fr(e,{code:t,cause:n})}function Ao(e){return!(e===null||typeof e!="object"||Array.isArray(e))}function Ms(e){mr(e,Headers)&&(e=Object.fromEntries(e.entries()));let t=new Headers(e??{});if($s&&!t.has("user-agent")&&t.set("user-agent",$s),t.has("authorization"))throw V('"options.headers" must not include the "authorization" header name',we);return t}function pd(e,t){if(t!==void 0){if(typeof t=="function"&&(t=t(e.href)),!(t instanceof AbortSignal))throw V('"options.signal" must return or be an instance of AbortSignal',Ie);return t}}function hd(e){return e.includes("//")?e.replace("//","/"):e}function Hg(e,t,n=!1){return e.pathname==="/"?e.pathname=t:e.pathname=hd(`${t}/${n?e.pathname:e.pathname.replace(/(\/)$/,"")}`),e}function Gg(e,t){return e.pathname=hd(`${e.pathname}/${t}`),e}async function qg(e,t,n,r){if(!(e instanceof URL))throw V(`"${t}" must be an instance of URL`,Ie);Io(e,r?.[$t]!==!0);let o=n(new URL(e.href)),i=Ms(r?.headers);return i.set("accept","application/json"),(r?.[Ct]||fetch)(o.href,{body:void 0,headers:Object.fromEntries(i.entries()),method:"GET",redirect:"manual",signal:pd(o,r?.signal)})}async function md(e,t){return qg(e,"issuerIdentifier",n=>{switch(t?.algorithm){case void 0:case"oidc":Gg(n,".well-known/openid-configuration");break;case"oauth2":Hg(n,".well-known/oauth-authorization-server");break;default:throw V('"options.algorithm" must be "oidc" (default), or "oauth2"',we)}return n},t)}function dr(e,t,n,r,o){try{if(typeof e!="number"||!Number.isFinite(e))throw V(`${n} must be a number`,Ie,o);if(e>0)return;if(t){if(e!==0)throw V(`${n} must be a non-negative number`,we,o);return}throw V(`${n} must be a positive number`,we,o)}catch(i){throw r?$(i.message,r,o):i}}function ye(e,t,n,r){try{if(typeof e!="string")throw V(`${t} must be a string`,Ie,r);if(e.length===0)throw V(`${t} must not be empty`,we,r)}catch(o){throw n?$(o.message,n,r):o}}async function gd(e,t){let n=e;if(!(n instanceof URL)&&n!==To)throw V('"expectedIssuerIdentifier" must be an instance of URL',Ie);if(!mr(t,Response))throw V('"response" must be an instance of Response',Ie);if(t.status!==200)throw $('"response" is not a conform Authorization Server Metadata response (unexpected HTTP status code)',Uo,t);Ks(t);let r=await Id(t);if(ye(r.issuer,'"response" body "issuer" property',F,{body:r}),n!==To&&new URL(r.issuer).href!==n.href)throw $('"response" body "issuer" property does not match the expected value',Mo,{expected:n.href,body:r,attribute:"issuer"});return r}function yd(e){Kg(e,"application/json")}function Jg(e,...t){let n='"response" content-type must be ';if(t.length>2){let r=t.pop();n+=`${t.join(", ")}, or ${r}`}else t.length===2?n+=`${t[0]} or ${t[1]}`:n+=t[0];return $(n,Gs,e)}function Kg(e,t){if(Zs(e)!==t)throw Jg(e,t)}function Vg(){return Us(crypto.getRandomValues(new Uint8Array(32)))}function wd(){return Vg()}function Ns(e){let t=e?.[Po];return typeof t=="number"&&Number.isFinite(t)?t:0}function Ls(e){let t=e?.[ko];return typeof t=="number"&&Number.isFinite(t)&&Math.sign(t)!==-1?t:30}function Bs(){return Math.floor(Date.now()/1e3)}function Oo(e){if(typeof e!="object"||e===null)throw V('"as" must be an object',Ie);ye(e.issuer,'"as.issuer"')}function zo(e){if(typeof e!="object"||e===null)throw V('"client" must be an object',Ie);ye(e.client_id,'"client.client_id"')}function js(e){return ye(e,'"clientSecret"'),(t,n,r,o)=>{r.set("client_id",n.client_id),r.set("client_secret",e)}}function _d(){return(e,t,n,r)=>{n.set("client_id",t.client_id)}}var Wg=URL.parse?(e,t)=>URL.parse(e,t):(e,t)=>{try{return new URL(e,t)}catch{return null}};function Io(e,t){if(t&&e.protocol!=="https:")throw $("only requests to HTTPS are allowed",qs,e);if(e.protocol!=="https:"&&e.protocol!=="http:")throw $("only HTTP and HTTPS requests are allowed",Js,e)}function fd(e,t,n,r){let o;if(typeof e!="string"||!(o=Wg(e)))throw $(`authorization server metadata does not contain a valid ${n?`"as.mtls_endpoint_aliases.${t}"`:`"as.${t}"`}`,e===void 0?xy:Ey,{attribute:n?`mtls_endpoint_aliases.${t}`:t});return Io(o,r),o}function $o(e,t,n,r){return n&&e.mtls_endpoint_aliases&&t in e.mtls_endpoint_aliases?fd(e.mtls_endpoint_aliases[t],t,n,r):fd(e[t],t,n,r)}function bd(e){if(e instanceof En){let{0:t,length:n}=e.cause;return n===1&&t.scheme==="dpop"&&t.parameters.error==="use_dpop_nonce"}return e instanceof xn?e.error==="use_dpop_nonce":!1}var xn=class extends Error{cause;code;error;status;error_description;response;constructor(t,n){super(t,n),this.name=this.constructor.name,this.code=_y,this.cause=n.cause,this.error=n.cause.error,this.status=n.response.status,this.error_description=n.cause.error_description,Object.defineProperty(this,"response",{enumerable:!1,value:n.response}),Error.captureStackTrace?.(this,this.constructor)}},pr=class extends Error{cause;code;error;error_description;constructor(t,n){super(t,n),this.name=this.constructor.name,this.code=by,this.cause=n.cause,this.error=n.cause.get("error"),this.error_description=n.cause.get("error_description")??void 0,Error.captureStackTrace?.(this,this.constructor)}},En=class extends Error{cause;code;response;status;constructor(t,n){super(t,n),this.name=this.constructor.name,this.code=wy,this.cause=n.cause,this.status=n.response.status,this.response=n.response,Object.defineProperty(this,"response",{enumerable:!1}),Error.captureStackTrace?.(this,this.constructor)}},Ro="[a-zA-Z0-9!#$%&\\'\\*\\+\\-\\.\\^_`\\|~]+",Xg="[a-zA-Z0-9\\-\\._\\~\\+\\/]+={0,2}",Yg='"((?:[^"\\\\]|\\\\[\\s\\S])*)"',Qg="("+Ro+")\\s*=\\s*"+Yg,ey="("+Ro+")\\s*=\\s*("+Ro+")",ty=new RegExp("^[,\\s]*("+Ro+")"),ny=new RegExp("^[,\\s]*"+Qg+"[,\\s]*(.*)"),ry=new RegExp("^[,\\s]*"+ey+"[,\\s]*(.*)"),oy=new RegExp("^("+Xg+")(?:$|[,\\s])(.*)");function iy(e){if(!mr(e,Response))throw V('"response" must be an instance of Response',Ie);let t=e.headers.get("www-authenticate");if(t===null)return;let n=[],r=t;for(;r;){let o=r.match(ty),i=o?.[1].toLowerCase();if(!i)return;let s=r.substring(o[0].length);if(s&&!s.match(/^[\s,]/))return;let a=s.match(/^\s+(.*)$/),c=!!a;r=a?a[1]:void 0;let u={},l;if(c)for(;r;){let p,m;if(o=r.match(ny)){if([,p,m,r]=o,m.includes("\\"))try{m=JSON.parse(`"${m}"`)}catch{}u[p.toLowerCase()]=m;continue}if(o=r.match(ry)){[,p,m,r]=o,u[p.toLowerCase()]=m;continue}if(o=r.match(oy)){if(Object.keys(u).length)break;[,l,r]=o;break}return}else r=s||void 0;let d={scheme:i,parameters:u};l&&(d.token68=l),n.push(d)}if(n.length)return n}async function sy(e){if(e.status>399&&e.status<500){Ks(e),yd(e);try{let t=await e.clone().json();if(Ao(t)&&typeof t.error=="string"&&t.error.length)return t}catch{}}}async function xd(e,t,n){if(e.status!==t){ly(e);let r;throw(r=await sy(e))?(await e.body?.cancel(),new xn("server responded with an error in the response body",{cause:r,response:e})):$(`"response" is not a conform ${n} response (unexpected HTTP status code)`,Uo,e)}}function ay(e){if(!Fs.has(e))throw V('"options.DPoP" is not a valid DPoPHandle',we)}function Zs(e){return e.headers.get("content-type")?.split(";")[0]}async function Ed(e,t,n,r,o,i,s){return await n(e,t,o,i),i.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"),(s?.[Ct]||fetch)(r.href,{body:o,headers:Object.fromEntries(i.entries()),method:"POST",redirect:"manual",signal:pd(r,s?.signal)})}async function cy(e,t,n,r,o,i){let s=$o(e,"token_endpoint",t.use_mtls_endpoint_aliases,i?.[$t]!==!0);o.set("grant_type",r);let a=Ms(i?.headers);a.set("accept","application/json"),i?.DPoP!==void 0&&(ay(i.DPoP),await i.DPoP.addProof(s,a,"POST"));let c=await Ed(e,t,n,s,o,a,i);return i?.DPoP?.cacheNonce(c,s),c}var vd=new WeakMap,uy=new WeakMap;function Co(e){if(!e.id_token)return;let t=vd.get(e);if(!t)throw V('"ref" was already garbage collected or did not resolve from the proper sources',we);return t}async function Sd(e,t,n,r,o,i){if(Oo(e),zo(t),!mr(n,Response))throw V('"response" must be an instance of Response',Ie);await xd(n,200,"Token Endpoint"),Ks(n);let s=await Id(n);if(ye(s.access_token,'"response" body "access_token" property',F,{body:s}),ye(s.token_type,'"response" body "token_type" property',F,{body:s}),s.token_type=s.token_type.toLowerCase(),s.expires_in!==void 0){let a=typeof s.expires_in!="number"?parseFloat(s.expires_in):s.expires_in;dr(a,!0,'"response" body "expires_in" property',F,{body:s}),s.expires_in=a}if(s.refresh_token!==void 0&&ye(s.refresh_token,'"response" body "refresh_token" property',F,{body:s}),s.scope!==void 0&&typeof s.scope!="string")throw $('"response" body "scope" property must be a string',F,{body:s});if(s.id_token!==void 0){ye(s.id_token,'"response" body "id_token" property',F,{body:s});let a=["aud","exp","iat","iss","sub"];t.require_auth_time===!0&&a.push("auth_time"),t.default_max_age!==void 0&&(dr(t.default_max_age,!0,'"client.default_max_age"'),a.push("auth_time")),r?.length&&a.push(...r);let{claims:c,jwt:u}=await vy(s.id_token,Ay.bind(void 0,t.id_token_signed_response_alg,e.id_token_signing_alg_values_supported,"RS256"),Ns(t),Ls(t),o).then(my.bind(void 0,a)).then(fy.bind(void 0,e)).then(dy.bind(void 0,t.client_id));if(Array.isArray(c.aud)&&c.aud.length!==1){if(c.azp===void 0)throw $('ID Token "aud" (audience) claim includes additional untrusted audiences',Ke,{claims:c,claim:"aud"});if(c.azp!==t.client_id)throw $('unexpected ID Token "azp" (authorized party) claim value',Ke,{expected:t.client_id,claims:c,claim:"azp"})}c.auth_time!==void 0&&dr(c.auth_time,!0,'ID Token "auth_time" (authentication time)',F,{claims:c}),uy.set(n,u),vd.set(s,c)}if(i?.[s.token_type]!==void 0)i[s.token_type](n,s);else if(s.token_type!=="dpop"&&s.token_type!=="bearer")throw new wt("unsupported `token_type` value",{cause:{body:s}});return s}function ly(e){let t;if(t=iy(e))throw new En("server responded with a challenge in the WWW-Authenticate HTTP Header",{cause:t,response:e})}function dy(e,t){if(Array.isArray(t.claims.aud)){if(!t.claims.aud.includes(e))throw $('unexpected JWT "aud" (audience) claim value',Ke,{expected:e,claims:t.claims,claim:"aud"})}else if(t.claims.aud!==e)throw $('unexpected JWT "aud" (audience) claim value',Ke,{expected:e,claims:t.claims,claim:"aud"});return t}function fy(e,t){let n=e[Vs]?.(t)??e.issuer;if(t.claims.iss!==n)throw $('unexpected JWT "iss" (issuer) claim value',Ke,{expected:n,claims:t.claims,claim:"iss"});return t}var Fs=new WeakSet;function py(e){return Fs.add(e),e}var Hs=Symbol();async function Ad(e,t,n,r,o,i,s){if(Oo(e),zo(t),!Fs.has(r))throw V('"callbackParameters" must be an instance of URLSearchParams obtained from "validateAuthResponse()", or "validateJwtAuthResponse()',we);ye(o,'"redirectUri"');let a=It(r,"code");if(!a)throw $('no authorization code in "callbackParameters"',F);let c=new URLSearchParams(s?.additionalParameters);return c.set("redirect_uri",o),c.set("code",a),i!==Hs&&(ye(i,'"codeVerifier"'),c.set("code_verifier",i)),cy(e,t,n,"authorization_code",c,s)}var hy={aud:"audience",c_hash:"code hash",client_id:"client id",exp:"expiration time",iat:"issued at",iss:"issuer",jti:"jwt id",nonce:"nonce",s_hash:"state hash",sub:"subject",ath:"access token hash",htm:"http method",htu:"http uri",cnf:"confirmation",auth_time:"authentication time"};function my(e,t){for(let n of e)if(t.claims[n]===void 0)throw $(`JWT "${n}" (${hy[n]}) claim missing`,F,{claims:t.claims});return t}var zs=Symbol(),Is=Symbol();async function Rd(e,t,n,r){return typeof r?.expectedNonce=="string"||typeof r?.maxAge=="number"||r?.requireIdToken?gy(e,t,n,r.expectedNonce,r.maxAge,r[So],r.recognizedTokenTypes):yy(e,t,n,r?.[So],r?.recognizedTokenTypes)}async function gy(e,t,n,r,o,i,s){let a=[];switch(r){case void 0:r=zs;break;case zs:break;default:ye(r,'"expectedNonce" argument'),a.push("nonce")}switch(o??=t.default_max_age,o){case void 0:o=Is;break;case Is:break;default:dr(o,!0,'"maxAge" argument'),a.push("auth_time")}let c=await Sd(e,t,n,a,i,s);ye(c.id_token,'"response" body "id_token" property',F,{body:c});let u=Co(c);if(o!==Is){let l=Bs()+Ns(t),d=Ls(t);if(u.auth_time+o<l-d)throw $("too much time has elapsed since the last End-User authentication",vn,{claims:u,now:l,tolerance:d,claim:"auth_time"})}if(r===zs){if(u.nonce!==void 0)throw $('unexpected ID Token "nonce" claim value',Ke,{expected:void 0,claims:u,claim:"nonce"})}else if(u.nonce!==r)throw $('unexpected ID Token "nonce" claim value',Ke,{expected:r,claims:u,claim:"nonce"});return c}async function yy(e,t,n,r,o){let i=await Sd(e,t,n,void 0,r,o),s=Co(i);if(s){if(t.default_max_age!==void 0){dr(t.default_max_age,!0,'"client.default_max_age"');let a=Bs()+Ns(t),c=Ls(t);if(s.auth_time+t.default_max_age<a-c)throw $("too much time has elapsed since the last End-User authentication",vn,{claims:s,now:a,tolerance:c,claim:"auth_time"})}if(s.nonce!==void 0)throw $('unexpected ID Token "nonce" claim value',Ke,{expected:void 0,claims:s,claim:"nonce"})}return i}var wy="OAUTH_WWW_AUTHENTICATE_CHALLENGE",_y="OAUTH_RESPONSE_BODY_ERROR",Do="OAUTH_UNSUPPORTED_OPERATION",by="OAUTH_AUTHORIZATION_RESPONSE_ERROR";var hr="OAUTH_PARSE_ERROR",F="OAUTH_INVALID_RESPONSE";var Gs="OAUTH_RESPONSE_IS_NOT_JSON",Uo="OAUTH_RESPONSE_IS_NOT_CONFORM",qs="OAUTH_HTTP_REQUEST_FORBIDDEN",Js="OAUTH_REQUEST_PROTOCOL_FORBIDDEN",vn="OAUTH_JWT_TIMESTAMP_CHECK_FAILED",Ke="OAUTH_JWT_CLAIM_COMPARISON_FAILED",Mo="OAUTH_JSON_ATTRIBUTE_COMPARISON_FAILED";var xy="OAUTH_MISSING_SERVER_METADATA",Ey="OAUTH_INVALID_SERVER_METADATA";async function Td(e,t,n,r,o){Oo(e),zo(t),ye(r,'"token"');let i=$o(e,"revocation_endpoint",t.use_mtls_endpoint_aliases,o?.[$t]!==!0),s=new URLSearchParams(o?.additionalParameters);s.set("token",r);let a=Ms(o?.headers);return a.delete("accept"),Ed(e,t,n,i,s,a,o)}async function Pd(e){if(!mr(e,Response))throw V('"response" must be an instance of Response',Ie);await xd(e,200,"Revocation Endpoint")}function Ks(e){if(e.bodyUsed)throw V('"response" body has been used already',we)}async function vy(e,t,n,r,o){let{0:i,1:s,length:a}=e.split(".");if(a===5)if(o!==void 0)e=await o(e),{0:i,1:s,length:a}=e.split(".");else throw new wt("JWE decryption is not configured",{cause:e});if(a!==3)throw $("Invalid JWT",F,e);let c;try{c=JSON.parse(dd(Us(i)))}catch(d){throw $("failed to parse JWT Header body as base64url encoded JSON",hr,d)}if(!Ao(c))throw $("JWT Header must be a top level object",F,e);if(t(c),c.crit!==void 0)throw new wt('no JWT "crit" header parameter extensions are supported',{cause:{header:c}});let u;try{u=JSON.parse(dd(Us(s)))}catch(d){throw $("failed to parse JWT Payload body as base64url encoded JSON",hr,d)}if(!Ao(u))throw $("JWT Payload must be a top level object",F,e);let l=Bs()+n;if(u.exp!==void 0){if(typeof u.exp!="number")throw $('unexpected JWT "exp" (expiration time) claim type',F,{claims:u});if(u.exp<=l-r)throw $('unexpected JWT "exp" (expiration time) claim value, expiration is past current timestamp',vn,{claims:u,now:l,tolerance:r,claim:"exp"})}if(u.iat!==void 0&&typeof u.iat!="number")throw $('unexpected JWT "iat" (issued at) claim type',F,{claims:u});if(u.iss!==void 0&&typeof u.iss!="string")throw $('unexpected JWT "iss" (issuer) claim type',F,{claims:u});if(u.nbf!==void 0){if(typeof u.nbf!="number")throw $('unexpected JWT "nbf" (not before) claim type',F,{claims:u});if(u.nbf>l+r)throw $('unexpected JWT "nbf" (not before) claim value',vn,{claims:u,now:l,tolerance:r,claim:"nbf"})}if(u.aud!==void 0&&typeof u.aud!="string"&&!Array.isArray(u.aud))throw $('unexpected JWT "aud" (audience) claim type',F,{claims:u});return{header:c,claims:u,jwt:e}}async function Sy(e){if(e.bodyUsed)throw V("form_post Request instances must contain a readable body",we,{cause:e});return e.text()}async function kd(e){if(e.method!=="POST")throw V("form_post responses are expected to use the POST method",we,{cause:e});if(Zs(e)!=="application/x-www-form-urlencoded")throw V("form_post responses are expected to use the application/x-www-form-urlencoded content-type",we,{cause:e});return Sy(e)}function Ay(e,t,n,r){if(e!==void 0){if(typeof e=="string"?r.alg!==e:!e.includes(r.alg))throw $('unexpected JWT "alg" header parameter',F,{header:r,expected:e,reason:"client configuration"});return}if(Array.isArray(t)){if(!t.includes(r.alg))throw $('unexpected JWT "alg" header parameter',F,{header:r,expected:t,reason:"authorization server metadata"});return}if(n!==void 0){if(typeof n=="string"?r.alg!==n:typeof n=="function"?!n(r.alg):!n.includes(r.alg))throw $('unexpected JWT "alg" header parameter',F,{header:r,expected:n,reason:"default value"});return}throw $('missing client or server configuration to verify used JWT "alg" header parameter',void 0,{client:e,issuer:t,fallback:n})}function It(e,t){let{0:n,length:r}=e.getAll(t);if(r>1)throw $(`"${t}" parameter must be provided only once`,F);return n}var Od=Symbol(),Ry=Symbol();function zd(e,t,n,r){if(Oo(e),zo(t),n instanceof URL&&(n=n.searchParams),!(n instanceof URLSearchParams))throw V('"parameters" must be an instance of URLSearchParams, or URL',Ie);if(It(n,"response"))throw $('"parameters" contains a JARM response, use validateJwtAuthResponse() instead of validateAuthResponse()',F,{parameters:n});let o=It(n,"iss"),i=It(n,"state");if(!o&&e.authorization_response_iss_parameter_supported)throw $('response parameter "iss" (issuer) missing',F,{parameters:n});if(o&&o!==e.issuer)throw $('unexpected "iss" (issuer) response parameter value',F,{expected:e.issuer,parameters:n});switch(r){case void 0:case Ry:if(i!==void 0)throw $('unexpected "state" response parameter encountered',F,{expected:void 0,parameters:n});break;case Od:break;default:if(ye(r,'"expectedState" argument'),i!==r)throw $(i===void 0?'response parameter "state" missing':'unexpected "state" response parameter value',F,{expected:r,parameters:n})}if(It(n,"error"))throw new pr("authorization response from the server is an error",{cause:n});let a=It(n,"id_token"),c=It(n,"token");if(a!==void 0||c!==void 0)throw new wt("implicit and hybrid flows are not supported");return py(new URLSearchParams(n))}async function Id(e,t=yd){let n;try{n=await e.json()}catch(r){throw t(e),$('failed to parse "response" body as JSON',hr,r)}if(!Ao(n))throw $('"response" body must be a top level object',F,{body:n});return n}var To=Symbol(),Vs=Symbol();var yr,$d;(typeof navigator>"u"||!navigator.userAgent?.startsWith?.("Mozilla/5.0 "))&&($d="openid-client/v6.8.4",yr={"user-agent":$d});var Le=e=>Xs.get(e),Xs,Ws;function Py(e){return e!==void 0?js(e):(Ws||=new WeakMap,(t,n,r,o)=>{let i;return(i=Ws.get(n))||(ky(n.client_secret,'"metadata.client_secret"'),i=js(n.client_secret),Ws.set(n,i)),i(t,n,r,o)})}function ky(e,t){if(typeof e!="string")throw Ve(`${t} must be a string`,_r);if(e.length===0)throw Ve(`${t} must not be empty`,wr)}function Oy(){return _d()}var Sn=Ct;var wr="ERR_INVALID_ARG_VALUE",_r="ERR_INVALID_ARG_TYPE";function Ve(e,t,n){let r=new TypeError(e,{cause:n});return Object.assign(r,{code:t}),r}function Dd(){return wd()}var An=class extends Error{code;constructor(t,n){super(t,n),this.name=this.constructor.name,this.code=n?.code,Error.captureStackTrace?.(this,this.constructor)}},CT=new TextDecoder;function he(e,t,n){return new An(e,{cause:t,code:n})}function gr(e){if(e instanceof TypeError||e instanceof An||e instanceof xn||e instanceof pr||e instanceof En)throw e;if(e instanceof fr)switch(e.code){case qs:throw he("only requests to HTTPS are allowed",e,e.code);case Js:throw he("only requests to HTTP or HTTPS are allowed",e,e.code);case Uo:throw he("unexpected HTTP response status code",e.cause,e.code);case Gs:throw he("unexpected response content-type",e.cause,e.code);case hr:throw he("parsing error occured",e,e.code);case F:throw he("invalid response encountered",e,e.code);case Ke:throw he("unexpected JWT claim value encountered",e,e.code);case Mo:throw he("unexpected JSON attribute value encountered",e,e.code);case vn:throw he("JWT timestamp claim value failed validation",e,e.code);default:throw he(e.message,e,e.code)}if(e instanceof wt)throw he("unsupported operation",e,e.code);if(e instanceof DOMException)switch(e.name){case"OperationError":throw he("runtime operation error",e,Do);case"NotSupportedError":throw he("runtime unsupported operation",e,Do);case"TimeoutError":throw he("operation timed out",e,"OAUTH_TIMEOUT");case"AbortError":throw he("operation aborted",e,"OAUTH_ABORT")}throw new An("something went wrong",{cause:e})}function zy(e,t,n){return e.origin==="https://login.microsoftonline.com"&&(!n?.algorithm||n.algorithm==="oidc")?(t[Md]=!0,!0):!1}function Iy(e,t){return!!(e.hostname.endsWith(".b2clogin.com")&&(!t?.algorithm||t.algorithm==="oidc"))}async function Ud(e,t,n,r,o){let i=await $y(e,o),s=new Rn(i,t,n,r),a=Le(s);if(o?.[Sn]&&(a.fetch=o[Sn]),o?.timeout&&(a.timeout=o.timeout),o?.execute)for(let c of o.execute)c(s);return s}async function $y(e,t){if(!(e instanceof URL))throw Ve('"server" must be an instance of URL',_r);let n=!e.href.includes("/.well-known/"),r=t?.timeout??30,o=AbortSignal.timeout(r*1e3),i=await(n?md(e,{algorithm:t?.algorithm,[Ct]:t?.[Sn],[$t]:t?.execute?.includes(Cd),signal:o,headers:new Headers(yr)}):(t?.[Sn]||fetch)((Io(e,!t?.execute?.includes(Cd)),e.href),{headers:Object.fromEntries(new Headers({accept:"application/json",...yr}).entries()),body:void 0,method:"GET",redirect:"manual",signal:o})).then(s=>gd(To,s)).catch(gr);return n&&new URL(i.issuer).href!==e.href&&(zy(e,i,t)||Iy(e,t)||(()=>{throw new An("discovered metadata issuer does not match the expected issuer",{code:Mo,cause:{expected:e.href,body:i,attribute:"issuer"}})})()),i}function Cy(e){return{supportsPKCE:{__proto__:null,value(t="S256"){return e.code_challenge_methods_supported?.includes(t)===!0}}}}function Dy(e){Object.defineProperties(e,Cy(e))}var Md=Symbol(),Rn=class{constructor(t,n,r,o){if(typeof n!="string"||!n.length)throw Ve('"clientId" must be a non-empty string',_r);if(typeof r=="string"&&(r={client_secret:r}),r?.client_id!==void 0&&n!==r.client_id)throw Ve('"clientId" and "metadata.client_id" must be the same',wr);let i={...structuredClone(r),client_id:n};i[Po]=r?.[Po]??0,i[ko]=r?.[ko]??30;let s;o?s=o:typeof i.client_secret=="string"&&i.client_secret.length?s=Py(i.client_secret):s=Oy();let a=Object.freeze(i),c=structuredClone(t);Md in t&&(c[Vs]=({claims:{tid:l}})=>t.issuer.replace("{tenantid}",l));let u=Object.freeze(c);Xs||=new WeakMap,Xs.set(this,{__proto__:null,as:u,c:a,auth:s,tlsOnly:!0,jwksCache:{}})}serverMetadata(){let t=structuredClone(Le(this).as);return Dy(t),t}clientMetadata(){return structuredClone(Le(this).c)}get timeout(){return Le(this).timeout}set timeout(t){Le(this).timeout=t}get[Sn](){return Le(this).fetch}set[Sn](t){Le(this).fetch=t}};Object.freeze(Rn.prototype);function Uy(e){let t;if(e.expires_in!==void 0){let n=new Date;n.setSeconds(n.getSeconds()+e.expires_in),t=n.getTime()}return{expiresIn:{__proto__:null,value(){if(t){let n=Date.now();return t>n?Math.floor((t-n)/1e3):0}}},claims:{__proto__:null,value(){try{return Co(this)}catch{return}}}}}function My(e){Object.defineProperties(e,Uy(e))}function Cd(e){Le(e).tlsOnly=!1}function Ny(e){return e=new URL(e),e.search="",e.hash="",e.href}function Ly(e,t){try{return Object.getPrototypeOf(e)[Symbol.toStringTag]===t}catch{return!1}}async function Ys(e,t,n,r,o){if(Qs(e),o?.flag!==No&&!(t instanceof URL)&&!Ly(t,"Request"))throw Ve('"currentUrl" must be an instance of URL, or Request',_r);let i,s,{as:a,c,auth:u,fetch:l,tlsOnly:d,jarm:p,hybrid:m,nonRepudiation:w,timeout:x,decrypt:_,implicit:g}=Le(e);if(o?.flag===No)i=o.authResponse,s=o.redirectUri;else{if(!(t instanceof URL)){let A=t;switch(t=new URL(t.url),A.method){case"GET":break;case"POST":let O=new URLSearchParams(await kd(A));if(m)t.hash=O.toString();else for(let[D,L]of O.entries())t.searchParams.append(D,L);break;default:throw Ve("unexpected Request HTTP method",wr)}}switch(s=Ny(t),!0){case!!p:i=await p(t,n?.expectedState);break;case!!m:i=await m(t,n?.expectedNonce,n?.expectedState,n?.maxAge);break;case!!g:throw new TypeError("authorizationCodeGrant() cannot be used by response_type=id_token clients");default:try{i=zd(a,c,t.searchParams,n?.expectedState)}catch(A){gr(A)}}}let v=await Ad(a,c,u,i,s,n?.pkceCodeVerifier||Hs,{additionalParameters:r,[Ct]:l,[$t]:!d,DPoP:o?.DPoP,headers:new Headers(yr),signal:Ld(x)}).catch(gr);(typeof n?.expectedNonce=="string"||typeof n?.maxAge=="number")&&(n.idTokenExpected=!0);let b=Rd(a,c,v,{expectedNonce:n?.expectedNonce,maxAge:n?.maxAge,requireIdToken:n?.idTokenExpected,[So]:_}),S;try{S=await b}catch(A){if(By(A,o))return Ys(e,void 0,n,r,{...o,flag:No,authResponse:i,redirectUri:s});gr(A)}return S.id_token&&await w?.(v),My(S),S}function Nd(e,t){Qs(e);let{as:n,c:r,tlsOnly:o,hybrid:i,jarm:s,implicit:a}=Le(e),c=$o(n,"authorization_endpoint",!1,o);if(t=new URLSearchParams(t),t.has("client_id")||t.set("client_id",r.client_id),!t.has("request_uri")&&!t.has("request")){if(t.has("response_type")||t.set("response_type",i?"code id_token":a?"id_token":"code"),a&&!t.has("nonce"))throw Ve("response_type=id_token clients must provide a nonce parameter in their authorization request parameters",wr);s&&t.set("response_mode","jwt")}for(let[u,l]of t.entries())c.searchParams.append(u,l);return c}function Qs(e){if(!(e instanceof Rn))throw Ve('"config" must be an instance of Configuration',_r);if(Object.getPrototypeOf(e)!==Rn.prototype)throw Ve("subclassing Configuration is not allowed",wr)}function Ld(e){return e?AbortSignal.timeout(e*1e3):void 0}function By(e,t){return t?.DPoP&&t.flag!==No?bd(e):!1}var No=Symbol();async function Bd(e,t,n){Qs(e);let{as:r,c:o,auth:i,fetch:s,tlsOnly:a,timeout:c}=Le(e);return Td(r,o,i,t,{[Ct]:s,[$t]:!a,additionalParameters:new URLSearchParams(n),headers:new Headers(yr),signal:Ld(c)}).then(Pd).catch(gr)}var jd="oauth2:",br="graffiti-auth-oauth2-data",Lo=class{eventTarget=new EventTarget;constructor(){let t=this.completeOauth();(async()=>{await new Promise(r=>setTimeout(r,0)),await t;let n=new CustomEvent("initialized");this.eventTarget.dispatchEvent(n)})()}async login(...t){try{await this.login_(...t)}catch(n){let r=n instanceof Error?n:new Error("Unknown error"),o={loginId:t[1],error:r};this.eventTarget.dispatchEvent(new CustomEvent("login",{detail:o}))}}async login_(t,n,r){let o=await this.getAuthorizationConfiguration(t),i=r.map(encodeURIComponent).join(" "),s=Dd(),a,c;if(typeof window<"u"){a=window.location.href;let d={loginId:n,redirectUri:a,authorizationEndpoint:t,state:s,serviceEndpoints:r};window.localStorage.setItem(br,JSON.stringify(d))}else{let p=(await import("node:http").catch(w=>{throw new Error("Unrecognized environment: cannot find window or node:http")})).createServer();try{await new Promise((w,x)=>{p.once("error",x),p.listen(0,"::1",w)})}catch{try{p.close()}catch{}throw new Error("Failed to start local oauth callback server.")}let m=p.address();if(!m){try{p.close()}catch{}throw new Error("Failed to get local oauth callback server address.")}a=typeof m=="string"?`http://${m}`:`http://${m.family==="IPv6"?`[${m.address}]`:m.address}:${m.port}`,c=new Promise((w,x)=>{let _=setTimeout(()=>{try{p.close()}catch{}x("Oauth callback timed out.")},3e5),g=new Set;p.on("connection",b=>{g.add(b),b.on("close",()=>{g.delete(b)})});let v=async(b,S)=>{try{let A=new URL(b.url??"/",a);await this.onCallbackUrl({loginId:n,callbackUrl:A,configuration:o,expectedState:s,serviceEndpoints:r}),S.statusCode=200,S.setHeader("Content-Type","text/plain"),S.end("You may now close this window.")}catch(A){throw S.statusCode=500,S.setHeader("Content-Type","text/plain"),S.end("Error processing OAuth callback."),A}finally{clearTimeout(_),p.off("request",v);for(let A of g)A.destroy();p.close(()=>w())}};p.on("request",v)})}let u=new URL(a);u.hash="",u.search="";let l=Nd(o,{scope:i,redirect_uri:u.toString(),state:s});typeof window<"u"?window.location.href=l.toString():(console.log("Please open the following URL in your browser:"),console.log(l.toString()),await c)}completeOauth(){if(typeof window>"u")return;let t=window.localStorage.getItem(br);if(!t)return;let n;try{n=JSON.parse(t)}catch{console.error("Invalid OAuth2 login data in local storage."),window.localStorage.removeItem(br);return}let r=jy.safeParse(n);if(!r.success){console.error("Invalid OAuth2 login data structure in local storage.",r.error),window.localStorage.removeItem(br);return}let{loginId:o,redirectUri:i,authorizationEndpoint:s,state:a,serviceEndpoints:c}=r.data;try{let u=new URL(i),l=new URL(window.location.href);if(u.pathname!==l.pathname)return;let d=l.searchParams;return!d.has("code")&&!d.has("error")?void 0:(window.history.replaceState({},document.title,u.toString()),window.localStorage.removeItem(br),new Promise(p=>setTimeout(p,0)).then(()=>this.getAuthorizationConfiguration(s)).then(p=>this.onCallbackUrl({loginId:o,callbackUrl:l,configuration:p,expectedState:a,serviceEndpoints:c})).catch(p=>{let m=p instanceof Error?p:new Error("Unknown error"),w={loginId:o,error:m};this.eventTarget.dispatchEvent(new CustomEvent("login",{detail:w}))}))}catch(u){console.error(u)}}async onCallbackUrl(t){let{loginId:n,callbackUrl:r,configuration:o,expectedState:i,serviceEndpoints:s}=t,a=await Ys(o,r,{expectedState:i}),c=a.access_token,l=a.scope?.split(" ").map(decodeURIComponent)||s;if(!s.every(p=>l.includes(p)))throw new Error("Not all requested service endpoints were granted.");let d=new CustomEvent("login",{detail:{loginId:n,token:c}});this.eventTarget.dispatchEvent(d)}async logout(t,n,r){try{await this.logout_(t,n,r)}catch(o){let i=o instanceof Error?o:new Error("Unknown error"),s={logoutId:n,error:i};this.eventTarget.dispatchEvent(new CustomEvent("logout",{detail:s}))}}async logout_(t,n,r){let o=await this.getAuthorizationConfiguration(t);await Bd(o,r);let i={logoutId:n};this.eventTarget.dispatchEvent(new CustomEvent("logout",{detail:i}))}async getAuthorizationConfiguration(t){if(!t.startsWith(jd))throw new Error(`Unrecognized authorization endpoint method: ${t}`);let n=t.slice(jd.length),r;try{r=new URL(n)}catch{throw new Error("Invalid issuer URL.")}return await Ud(r,"graffiti-client")}},Zd=qc(be({loginId:B()}),ft([be({token:B(),error:ee(Gc())}),be({error:Jt(Error)})])),Fd=be({logoutId:B(),error:ee(Jt(Error))}),Hd=ee(Ze(be({error:ee(Jt(Error))}))),jy=be({loginId:B(),redirectUri:Z(),authorizationEndpoint:Z(),state:B(),serviceEndpoints:J(Z())});var Zy="https://";function $e(e){if(!e.startsWith(Zy))throw new Error("Unrecognized storage bucket endpoint type")}async function Bo(e){$e(e);let t=`${e}/auth`,n=await fetch(t);if(!n.ok)throw new Error("Failed to get storage bucket authorization endpoint");return await n.text()}var Dt=class e extends Error{constructor(t){super(t),this.name="GraffitiErrorUnauthorized",Object.setPrototypeOf(this,e.prototype)}};async function We(...e){let t=await fetch(...e);if(!t.ok){let n;try{n=await t.text()}catch{n=t.statusText}throw t.status===401?new Dt(n):t.status===403?new dt(n):t.status===404?new re(n):t.status===410?new Ce(n):t.status===413?new Ht(n):new Error(n)}return t}var jo=class{getAuthorizationEndpoint=Bo;async put(t,n,r,o){$e(t);let i=`${t}/value/${encodeURIComponent(n)}`;await We(i,{method:"PUT",headers:{"Content-Type":"application/octet-stream",Authorization:`Bearer ${o}`},body:r.slice()})}async delete(t,n,r){$e(t);let o=`${t}/value/${encodeURIComponent(n)}`;await We(o,{method:"DELETE",headers:{Authorization:`Bearer ${r}`}})}async get(t,n,r){$e(t);let o=`${t}/value/${encodeURIComponent(n)}`,i=await We(o),s=i.body?.getReader();if(!s)throw new Error("Failed to read value from storage bucket");let a=i.headers.get("Content-Length"),c=a?Number(a):void 0;if(!!c&&!!Number.isFinite(c)&&c>=0){let w=c;if(r!==void 0&&w>r)throw new Error("Value exceeds maximum byte limit");let x=new Uint8Array(w),_=0,g=!1;try{for(;_<=x.length;){let{done:v,value:b}=await s.read();if(v){g=!0;break}if(!b||b.length===0)continue;let S=_+b.length;if(S>x.length)throw new Error("Received more data than expected");x.set(b,_),_=S}}finally{s.releaseLock()}if(!g)throw new Error("Failed to read complete value from storage bucket");return _===w?x:x.slice(0,_)}let l=[],d=0;try{for(;;){let{done:w,value:x}=await s.read();if(w)break;if(!(!x||x.length===0)){if(d+=x.length,r!==void 0&&d>r)throw new Error("Value exceeds maximum byte limit");l.push(x.slice())}}}finally{s.releaseLock()}let p=new Uint8Array(d),m=0;for(let w of l)p.set(w,m),m+=w.length;return p}async*export(t,n){$e(t);let r=`${t}/export`,o;for(;;){let s=await(await We(o?`${r}?cursor=${encodeURIComponent(o)}`:r,{headers:{Authorization:`Bearer ${n}`}})).blob(),a=qe(await s.arrayBuffer()),c=Fy.parse(a);for(let u of c.keys)yield{key:u};if(c.cursor)o=c.cursor;else break}}},Fy=be({keys:J(B()),cursor:ee(Ze(B()))});var Fo=class{getAuthorizationEndpoint=Bo;cache_=null;get cache(){return this.cache_||(this.cache_=Wy()),this.cache_}async send(t,n){$e(t);let r=`${t}/send`,i=await(await We(r,{method:"PUT",headers:{"Content-Type":"application/cbor"},body:new Uint8Array(Re({m:n}))})).blob(),s=qe(await i.arrayBuffer());return Jy.parse(s).id}async get(t,n,r){let o=Zo(t,n),i=await this.cache,s=await i.messages.get(o);if(s!==void 0)return s;let a=`${t}/message/${n}`,c=null;try{c=await We(a,{method:"GET",headers:{...r?{Authorization:`Bearer ${r}`}:{}}})}catch(p){if(p instanceof re)return await i.messages.set(o,null),null;throw p}let u=await c.blob(),l=qe(await u.arrayBuffer()),d=Vd.parse(l);return await i.messages.set(o,d),d}async label(t,n,r,o){if($e(t),o){let c=`${t}/label/${n}`;await We(c,{method:"PUT",headers:{"Content-Type":"application/cbor",Authorization:`Bearer ${o}`},body:new Uint8Array(Re({l:r}))})}let i=await this.cache,s=Zo(t,n),a=await i.messages.get(s);a&&await i.messages.set(s,{...a,l:r})}async fetchMessageBatch(t,n,r,o,i){let s=await We(`${t}/${n}${i?`?cursor=${encodeURIComponent(i)}`:""}`,{method:"POST",headers:{"Content-Type":"application/cbor",...o?{Authorization:`Bearer ${o}`}:{}},body:r}),a=s.headers.get("Retry-After"),c=a?parseInt(a):void 0,u=c&&Number.isFinite(c)?Date.now()+c*1e3:void 0;return{response:s,waitTil:u}}async*yieldFromCache(t,n,r,o,i=0){let s=o.messageIds.slice(i);yield*await Promise.all(s.map(async c=>{let u=await t.messages.get(Zo(n,c));if(!u){try{await t.messageIds.del(r)}catch{}throw new Error("Cache out of sync - perhaps clear browser storage")}return u}))}async*lockedMessageStreamer(...t){if(typeof window>"u"||!await Wd()){let w=this.messageStreamer(...t);for(;;){let x=await w.next();if(x.done)return x.value;yield x.value}}let n=await t[0],r=`graffiti:inbox:${n}`,o=()=>{},i=!1;if(await new Promise(w=>{window.navigator.locks.request(r,{mode:"exclusive",ifAvailable:!0},async x=>{i=!!x,w(),await new Promise(_=>o=_)})}),i)try{let w=this.messageStreamer(...t);for(;;){let x=await w.next();if(x.done)return x.value;yield x.value}}finally{o()}o(),await window.navigator.locks.request(r,()=>{});let s=t[1],a=t[5]??{},c=t[6],u=t[7],l=await this.cache,d=await l.messageIds.get(n);if(!d)throw new Error("Cache not found");if(c!==void 0&&c!==d.version)throw new Ce("Cursor is stale");let p=this.yieldFromCache(l,s,n,d,u);for await(let w of p)yield w;let m={numSeen:d.messageIds.length,version:d.version,messageIdsCacheKey:n,objectSchema:a};return JSON.stringify(m)}async*messageStreamer(t,n,r,o,i,s={},a,c=0){let u=await Or(s),l=await t,d=await this.cache,p=await d.messageIds.get(l);if(a!==void 0&&a!==p?.version)throw new Ce("Cursor is stale");let m=p?.waitTil;await Jd(m);let w=p?.cursor,x;try{let A=await this.fetchMessageBatch(n,r,o,i,w);x=A.response,m=A.waitTil}catch(A){if(!(A instanceof Ce&&w))throw console.error("Unexpected error in stream, waiting 5 seconds before continuing..."),await new Promise(O=>setTimeout(O,5e3)),A;if(await d.messageIds.del(l),a===void 0)p=void 0;else throw A}if(x!==void 0&&p){let A=this.yieldFromCache(d,n,l,p,c);for await(let O of A)yield O}if(x===void 0){let A=await this.fetchMessageBatch(n,r,o,i);x=A.response,m=A.waitTil}let _=x,g,v=p?.version??crypto.randomUUID(),b=p?.messageIds??[];for(;;){let A=await _.blob(),O=qe(await A.arrayBuffer()),{results:D,hasMore:L,cursor:ne}=Ky.parse(O);g=ne;let H=D.map(E=>{let C=E[Ut][st];if(!u(C))throw new Error("Server returned data that does not match schema");return{...E,[Ut]:{...E[Ut],[st]:C}}});await Promise.all(H.map(E=>d.messages.set(Zo(n,E[ea]),E))),b=[...b,...H.map(E=>E[ea])],await d.messageIds.set(l,{cursor:g,version:v,messageIds:b,waitTil:m}),c+=H.length;for(let E of H)yield E;if(!L)break;await Jd(m);let h=await this.fetchMessageBatch(n,r,void 0,i,g);_=h.response,m=h.waitTil}return JSON.stringify({numSeen:c,version:v,messageIdsCacheKey:l,objectSchema:s})}query(t,n,r,o){$e(t);let i=Re({tags:n,schema:r}),s=Gd(t,"query",i);return this.lockedMessageStreamer(s,t,"query",new Uint8Array(i),o,r)}continueQuery(t,n,r){$e(t);let o=JSON.parse(n),{messageIdsCacheKey:i,numSeen:s,objectSchema:a,version:c}=Vy.parse(o);return this.lockedMessageStreamer(Promise.resolve(i),t,"query",void 0,r,a,c,s)}export(t,n){$e(t);let r=Gd(t,"export");return this.lockedMessageStreamer(r,t,"export",void 0,n)}},Hy=xe({value:me({}),channels:J(B()),allowed:ee(Ze(J(Z()))),url:Z(),actor:Z()}),Kd=Rt(e=>e instanceof Uint8Array),Gy=J(Kd),xr="t",st="o",Er="m",qy=xe({[xr]:Gy,[st]:Hy,[Er]:Kd}),ea="id",Ut="m",Ho="l",Vd=xe({[ea]:B(),[Ut]:qy,[Ho]:Hc()}),Jy=xe({id:B()}),Ky=xe({results:J(Vd),hasMore:Ii(),cursor:B()}),Vy=xe({messageIdsCacheKey:B(),version:B(),numSeen:qt().check(At()),objectSchema:ft([me({}),Ii()])});async function Wd(){try{return globalThis.indexedDB?(await new Promise((e,t)=>{let n=indexedDB.open("__idb_probe__",1);n.onupgradeneeded=()=>n.result.createObjectStore("k"),n.onsuccess=()=>{n.result.close(),e()},n.onerror=()=>t(n.error)}),!0):!1}catch{return!1}}function Zo(e,t){return`${encodeURIComponent(e)}:${encodeURIComponent(t)}`}async function Gd(e,t,n){let r=Re({inboxUrl:e,type:t,body:n??null});return crypto.subtle.digest("SHA-256",new Uint8Array(r)).then(o=>Array.from(new Uint8Array(o)).map(i=>i.toString(16).padStart(2,"0")).join(""))}async function qd(){await new Promise(e=>{let t=indexedDB.deleteDatabase("graffiti-inbox-cache");t.onsuccess=()=>e(),t.onerror=()=>e(),t.onblocked=()=>e()})}async function Wy(){if(await Wd()){let{openDB:n}=await import("./build-DM3HADDZ.js"),r=await n("graffiti-inbox-cache",1,{upgrade(o){o.objectStoreNames.contains("m")||o.createObjectStore("m"),o.objectStoreNames.contains("q")||o.createObjectStore("q")}});return{messages:{get:async o=>{try{return r.get("m",o)}catch(i){console.error("Error getting message from cache:",i),console.error("resetting cache..."),await qd();return}},set:async(o,i)=>{await r.put("m",i,o)},del:o=>r.delete("m",o)},messageIds:{get:async o=>{try{return await r.get("q",o)}catch(i){console.error("Error getting message IDs from cache:",i),console.error("resetting cache..."),await qd();return}},set:async(o,i)=>{await r.put("q",i,o)},del:o=>r.delete("q",o)}}}let e=new Map,t=new Map;return{messages:{get:async n=>e.get(n),set:async(n,r)=>{e.set(n,r)},del:async n=>{e.delete(n)}},messageIds:{get:async n=>t.get(n),set:async(n,r)=>{t.set(n,r)},del:async n=>{t.delete(n)}}}}async function Jd(e){if(e!==void 0){let t=e-Date.now();t>0&&await new Promise(n=>setTimeout(n,t))}}var Tn="base64url";var Go=class{async encode(t,n){if(t!==Tn)throw new Error(`Unsupported string encoding method: ${t}`);return"u"+btoa(String.fromCodePoint(...n)).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=+$/,"")}async decode(t){if(!t.startsWith("u"))throw new Error(`Unsupported string encoding prefix: ${t[0]}`);t=t.slice(1);let n=t.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";return Uint8Array.from(atob(n),r=>r.charCodeAt(0))}};function Xd(){let t=(typeof globalThis=="object"?globalThis.crypto:null)?.subtle;if(typeof t=="object"&&t!=null)return t;throw new Error("crypto.subtle must be defined")}function Yd(e,t,n){let r=async o=>{jr(o);let i=Xd();return new Uint8Array(await i.digest(e,o))};return r.webCryptoName=e,r.outputLen=n,r.blockLen=t,r.create=()=>{throw new Error("not implemented")},Object.freeze(r)}function Xy(e){if(Yc(e),typeof e.webCryptoName!="string")throw new Error("non-web hash")}var Mt=Yd("SHA-256",64,32);var Qd=Yd("SHA-512",128,64),ta=(()=>{let e=async(t,n,r)=>{let o=Xd();jr(n,void 0,"key"),jr(r,void 0,"message"),Xy(t);let i=await o.importKey("raw",n,{name:"HMAC",hash:t.webCryptoName},!1,["sign"]);return new Uint8Array(await o.sign("HMAC",i,r))};return e.create=(t,n)=>{throw new Error("not implemented")},e})();var qo="sha2-256",vr=18,Pn=32,Jo=class{async register(t,n){if(t!==qo)throw new Error(`Unsupported content address method: ${t}`);let r=await Mt(n),o=new Uint8Array(2+r.length);return o[0]=vr,o[1]=Pn,o.set(r,2),o}async getMethod(t){if(t[0]===vr&&t[1]===Pn&&t.length===2+Pn)return qo;throw new Error("Unrecognized content address format.")}};var cf=Object.freeze({p:0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffedn,n:0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3edn,h:8n,a:0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecn,d:0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3n,Gx:0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51an,Gy:0x6666666666666666666666666666666666666666666666666666666666666658n}),{p:Vo,n:Ko,Gx:ef,Gy:tf,a:na,d:ra,h:Yy}=cf,kn=32,Qy=(...e)=>{"captureStackTrace"in Error&&typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(...e)},ue=(e="")=>{let t=new Error(e);throw Qy(t,ue),t},ew=e=>typeof e=="bigint",tw=e=>typeof e=="string",nw=e=>e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in e&&e.BYTES_PER_ELEMENT===1,Be=(e,t,n="")=>{let r=nw(e),o=e?.length,i=t!==void 0;if(!r||i&&o!==t){let s=n&&`"${n}" `,a=i?` of length ${t}`:"",c=r?`length=${o}`:`type=${typeof e}`,u=s+"expected Uint8Array"+a+", got "+c;throw r?new RangeError(u):new TypeError(u)}return e},aa=e=>new Uint8Array(e),ca=e=>Uint8Array.from(e),uf=(e,t)=>e.toString(16).padStart(t,"0"),lf=e=>Array.from(Be(e)).map(t=>uf(t,2)).join(""),at={_0:48,_9:57,A:65,F:70,a:97,f:102},nf=e=>{if(e>=at._0&&e<=at._9)return e-at._0;if(e>=at.A&&e<=at.F)return e-(at.A-10);if(e>=at.a&&e<=at.f)return e-(at.a-10)},df=e=>{let t="hex invalid";if(!tw(e))return ue(t);let n=e.length,r=n/2;if(n%2)return ue(t);let o=aa(r);for(let i=0,s=0;i<r;i++,s+=2){let a=nf(e.charCodeAt(s)),c=nf(e.charCodeAt(s+1));if(a===void 0||c===void 0)return ue(t);o[i]=a*16+c}return o},rw=()=>globalThis?.crypto,ow=()=>rw()?.subtle??ue("crypto.subtle must be defined, consider polyfill"),Sr=(...e)=>{let t=0;for(let o of e)t+=Be(o).length;let n=aa(t),r=0;return e.forEach(o=>{n.set(o,r),r+=o.length}),n};var Wo=BigInt,Nt=(e,t,n,r="bad number: out of range")=>{if(!ew(e))throw new TypeError(r);if(t<=e&&e<n)return e;throw new RangeError(r)},Q=(e,t=Vo)=>{let n=e%t;return n>=0n?n:t+n},rf=(1n<<255n)-1n,k=e=>{e<0n&&ue("negative coordinate");let t=(e>>255n)*19n+(e&rf);return t=(t>>255n)*19n+(t&rf),t%Vo},ff=e=>Q(e,Ko),iw=(e,t)=>{(e===0n||t<=0n)&&ue("no inverse n="+e+" mod="+t);let n=Q(e,t),r=t,o=0n,i=1n,s=1n,a=0n;for(;n!==0n;){let c=r/n,u=r%n,l=o-s*c,d=i-a*c;r=n,n=u,o=s,i=a,s=l,a=d}return r===1n?Q(o,t):ue("no inverse")},sw=e=>{let t=da[e];return typeof t!="function"&&ue("hashes."+e+" not set"),t},aw=e=>Be(e,64,"digest");var oa=e=>e instanceof ct?e:ue("Point expected"),ia=2n**256n,ct=class e{static BASE;static ZERO;X;Y;Z;T;constructor(t,n,r,o){let i=ia;this.X=Nt(t,0n,i),this.Y=Nt(n,0n,i),this.Z=Nt(r,1n,i),this.T=Nt(o,0n,i),Object.freeze(this)}static CURVE(){return cf}static fromAffine(t){return new e(t.x,t.y,1n,k(t.x*t.y))}static fromBytes(t,n=!1){let r=ra,o=ca(Be(t,kn)),i=t[31];o[31]=i&-129;let s=ua(o);Nt(s,0n,n?ia:Vo);let c=k(s*s),u=Q(c-1n),l=k(r*c+1n),{isValid:d,value:p}=uw(u,l);d||ue("bad point: y not sqrt");let m=(p&1n)===1n,w=(i&128)!==0;return!n&&p===0n&&w&&ue("bad point: x==0, isLastByteOdd"),w!==m&&(p=Q(-p)),new e(p,s,1n,k(p*s))}static fromHex(t,n){return e.fromBytes(df(t),n)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}assertValidity(){let t=na,n=ra,r=this;if(r.is0())return ue("bad point: ZERO");let{X:o,Y:i,Z:s,T:a}=r,c=k(o*o),u=k(i*i),l=k(s*s),d=k(l*l),p=k(c*t),m=k(l*(p+u)),w=Q(d+k(n*k(c*u)));if(m!==w)return ue("bad point: equation left != right (1)");let x=k(o*i),_=k(s*a);return x!==_?ue("bad point: equation left != right (2)"):this}equals(t){let{X:n,Y:r,Z:o}=this,{X:i,Y:s,Z:a}=oa(t),c=k(n*a),u=k(i*o),l=k(r*a),d=k(s*o);return c===u&&l===d}is0(){return this.equals(Lt)}negate(){return new e(Q(-this.X),this.Y,this.Z,Q(-this.T))}double(){let{X:t,Y:n,Z:r}=this,o=na,i=k(t*t),s=k(n*n),a=k(2n*r*r),c=k(o*i),u=Q(t+n),l=Q(k(u*u)-i-s),d=Q(c+s),p=Q(d-a),m=Q(c-s),w=k(l*p),x=k(d*m),_=k(l*m),g=k(p*d);return new e(w,x,g,_)}add(t){let{X:n,Y:r,Z:o,T:i}=this,{X:s,Y:a,Z:c,T:u}=oa(t),l=na,d=ra,p=k(n*s),m=k(r*a),w=k(k(i*d)*u),x=k(o*c),_=Q(k(Q(n+r)*Q(s+a))-p-m),g=Q(x-w),v=Q(x+w),b=Q(m-k(l*p)),S=k(_*g),A=k(v*b),O=k(_*b),D=k(g*v);return new e(S,A,D,O)}subtract(t){return this.add(oa(t).negate())}multiply(t,n=!0){if(!n&&t===0n||(Nt(t,1n,Ko),!n&&this.is0()))return Lt;if(t===1n)return this;if(this.equals(_t))return mw(t).p;let r=Lt,o=_t;for(let i=this;t>0n;i=i.double(),t>>=1n)t&1n?r=r.add(i):n&&(o=o.add(i));return r}multiplyUnsafe(t){return this.multiply(t,!1)}toAffine(){let{X:t,Y:n,Z:r}=this;if(this.equals(Lt))return{x:0n,y:1n};let o=iw(r,Vo);k(r*o)!==1n&&ue("invalid inverse");let i=k(t*o),s=k(n*o);return{x:i,y:s}}toBytes(){let{x:t,y:n}=this.toAffine(),r=pf(n);return r[31]|=t&1n?128:0,r}toHex(){return lf(this.toBytes())}clearCofactor(){return this.multiply(Wo(Yy),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let t=this.multiply(Ko/2n,!1).double();return Ko%2n&&(t=t.add(this)),t.is0()}},_t=new ct(ef,tf,1n,Q(ef*tf)),Lt=new ct(0n,1n,1n,0n);ct.BASE=_t;ct.ZERO=Lt;var pf=e=>df(uf(Nt(e,0n,ia),64)).reverse(),ua=e=>Wo("0x"+lf(ca(Be(e)).reverse())),Xe=(e,t)=>{let n=e;for(;t-- >0n;)n=k(n*n);return n},cw=e=>{let t=k(e*e),n=k(t*e),r=k(Xe(n,2n)*n),o=k(Xe(r,1n)*e),i=k(Xe(o,5n)*o),s=k(Xe(i,10n)*i),a=k(Xe(s,20n)*s),c=k(Xe(a,40n)*a),u=k(Xe(c,80n)*c),l=k(Xe(u,80n)*c),d=k(Xe(l,10n)*i);return{pow_p_5_8:k(Xe(d,2n)*e),b2:n}},of=0x2b8324804fc1df0b2b4d00993dfbd7a72f431806ad2fe478c4ee1b274a0ea0b0n,uw=(e,t)=>{let n=k(t*k(t*t)),r=k(k(n*n)*t),o=cw(k(e*r)).pow_p_5_8,i=k(e*k(n*o)),s=k(t*k(i*i)),a=i,c=k(i*of),u=s===e,l=s===Q(-e),d=s===Q(-e*of);return u&&(i=a),(l||d)&&(i=c),(Q(i)&1n)===1n&&(i=Q(-i)),{isValid:u||l,value:i}},Xo=e=>ff(ua(e)),la=(...e)=>Promise.resolve(sw("sha512Async")(Sr(...e))).then(aw);var lw=e=>{let t=ca(e),n=t.slice(0,32);n[0]&=248,n[31]&=127,n[31]|=64;let r=t.slice(32,64),o=Xo(n),i=_t.multiply(o),s=i.toBytes();return{head:n,prefix:r,scalar:o,point:i,pointBytes:s}},hf=e=>la(Be(e,kn)).then(lw);var mf=e=>hf(e).then(t=>t.pointBytes);var gf=e=>la(e.hashable).then(e.finish);var dw=(e,t,n)=>{let{pointBytes:r,scalar:o}=e,i=Xo(t),s=_t.multiply(i).toBytes();return{hashable:Sr(s,r,n),finish:u=>{let l=ff(i+Xo(u)*o);return Be(Sr(s,pf(l)),64)}}},yf=async(e,t)=>{let n=Be(e),r=await hf(t),o=await la(r.prefix,n);return gf(dw(r,o,n))};var wf={zip215:!0},fw=(e,t,n,r=wf)=>{e=Be(e,64),t=Be(t),n=Be(n,kn);let{zip215:o=!0}=r,i=e.subarray(0,kn),s=ua(e.subarray(kn,kn*2)),a,c,u,l=Uint8Array.of(),d=!1;try{a=ct.fromBytes(n,o),c=ct.fromBytes(i,o),u=_t.multiply(s,!1),l=Sr(i,n,t),d=!0}catch{}return{hashable:l,finish:m=>{if(!d||!o&&a.isSmallOrder())return!1;let w=Xo(m);return c.add(a.multiply(w,!1)).subtract(u).clearCofactor().is0()}}},_f=async(e,t,n,r=wf)=>gf(fw(e,t,n,r));var da={sha512Async:async e=>{let t=ow(),n=Sr(e);return aa(await t.digest("SHA-512",n.buffer))},sha512:void 0};var Yo=8,pw=256,bf=Math.ceil(pw/Yo)+1,sa=2**(Yo-1),hw=()=>{let e=[],t=_t,n=t;for(let r=0;r<bf;r++){n=t,e.push(n);for(let o=1;o<sa;o++)n=n.add(t),e.push(n);t=n.double()}return e},sf,af=(e,t)=>{let n=t.negate();return e?n:t},mw=e=>{let t=sf||(sf=hw()),n=Lt,r=_t,o=2**Yo,i=o,s=Wo(o-1),a=Wo(Yo);for(let c=0;c<bf;c++){let u=Number(e&s);e>>=a,u>sa&&(u-=i,e+=1n);let l=c*sa,d=l,p=l+Math.abs(u)-1,m=c%2!==0,w=u<0;u===0?r=r.add(af(m,t[d])):n=n.add(af(w,t[p]))}return e!==0n&&ue("invalid wnaf"),{p:n,f:r}};da.sha512Async=Qd;var Bt="pk:sha2-256+ed25519",fa=0,Qo=class{async register(t,n){if(t!==Bt)throw new Error(`Unsupported channel attestation method: ${t}`);let r=await this.channelToPrivateKey(n);return await this.channelPublicIdFromPrivateKey(r)}async getMethod(t){if(t[0]===fa)return Bt;throw new Error("Unrecognized channel attestation method.")}async channelToPrivateKey(t){let n=new TextEncoder().encode(t);return await Mt(n)}async channelPublicIdFromPrivateKey(t){let n=await mf(t),r=new Uint8Array(n.length+1);return r[0]=fa,r.set(n,1),r}async attest(t,n,r){if(t!==Bt)throw new Error(`Unsupported channel attestation method: ${t}`);let o=await this.channelToPrivateKey(r),i=await this.channelPublicIdFromPrivateKey(o),s=new TextEncoder().encode(n);return{attestation:await yf(s,o),channelPublicId:i}}async validate(t,n,r){let o=r[0];if(o!==fa)throw new Error(`Unrecognized channel attestation method prefix: ${o}`);return await _f(t,new TextEncoder().encode(n),r.slice(1))}};var pa="hmac:sha2-256",xf=0,ei=class{async attest(t,n){if(t!==pa)throw new Error(`Unsupported allowed attestation method: ${t}`);let r=Tt(),o=await ta(Mt,r,new TextEncoder().encode(n)),i=new Uint8Array(r.length+3);return i[0]=xf,i[1]=vr,i[2]=Pn,i.set(r,3),{attestation:o,ticket:i}}async validate(t,n,r){let o=r[0],i=r[1],s=r[2];if(o!==xf||i!==vr||s!==Pn)throw new Error("Unrecognized allowed ticket format");let a=await ta(Mt,r.slice(3),new TextEncoder().encode(n));return t.length!==a.length?!1:a.every((c,u)=>t[u]===c)}};var ha="did:web:",ti=class{constructor(t){this.services=t}services;actorToHandle=async t=>{let r=(await this.services.dids.resolve(t)).alsoKnownAs?.at(0);if(!r)throw new re(`Handle for actor DID ${t} not found`);if(!r.startsWith(ha))throw new Error(`Handle DID ${r} is not a valid handle`);let o=r.slice(ha.length),i=await this.services.dids.resolve(r);if(!i.alsoKnownAs||!i.alsoKnownAs.includes(t))throw new Error(`Handle ${o} does not match actor ${t}`);return o};handleToActor=async t=>{let n=`${ha}${t}`,o=(await this.services.dids.resolve(n)).alsoKnownAs?.at(0);if(!o)throw new re(`Actor for handle DID ${n} not found`);let i=await this.services.dids.resolve(o);if(!i.alsoKnownAs||!i.alsoKnownAs.includes(n))throw new Error(`Actor ${o} does not match handle ${t}`);return o}};function ni(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)r!=="__proto__"&&(e[r]=n[r])}return e}var gw={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function ma(e,t){function n(o,i,s){if(!(typeof document>"u")){s=ni({},t,s),typeof s.expires=="number"&&(s.expires=new Date(Date.now()+s.expires*864e5)),s.expires&&(s.expires=s.expires.toUTCString()),o=encodeURIComponent(o).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var a="";for(var c in s)s[c]&&(a+="; "+c,s[c]!==!0&&(a+="="+s[c].split(";")[0]));return document.cookie=o+"="+e.write(i,o)+a}}function r(o){if(!(typeof document>"u"||arguments.length&&!o)){for(var i=document.cookie?document.cookie.split("; "):[],s={},a=0;a<i.length;a++){var c=i[a].split("="),u=c.slice(1).join("=");try{var l=decodeURIComponent(c[0]);if(l in s||(s[l]=e.read(u,l)),o===l)break}catch{}}return o?s[o]:s}}return Object.create({set:n,get:r,remove:function(o,i){n(o,"",ni({},i,{expires:-1}))},withAttributes:function(o){return ma(this.converter,ni({},this.attributes,o))},withConverter:function(o){return ma(ni({},this.converter,o),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var ri=ma(gw,{path:"/"});var yw=365;function Ef(e,t){ri.set(e,t,Sf())}function vf(e){return ri.get(e)}function ga(e){ri.remove(e,Sf())}function Sf(){let e={expires:yw,path:"/",sameSite:"lax"};return typeof window<"u"&&window.location.protocol==="https:"&&(e.sameSite="none",e.secure=!0),e}var ai="GraffitiInbox",ui="GraffitiStorageBucket",ba="#graffitiPersonalInbox",li="#graffitiStorageBucket",ww="#graffitiSharedInbox_",ci=class{constructor(t){this.services=t;let n=new Promise(o=>{this.services.authorization.eventTarget.addEventListener("initialized",i=>{if(!(i instanceof CustomEvent))return;let s=Hd.safeParse(i.detail);if(!s.success)return;let a=s.data?.error;a&&console.error(a),o()})});this.services.authorization.eventTarget.addEventListener("login",this.onLogin.bind(this)),this.services.authorization.eventTarget.addEventListener("logout",this.onLogout.bind(this));let r;if(typeof window<"u"){let o=new URLSearchParams(window.location.search).get("actor");if(o)try{let i=decodeURIComponent(o),s=new URL(window.location.toString());s.searchParams.delete("actor"),window.history.replaceState({},"",s.toString()),r=this.login(i)}catch(i){console.error("Error decoding actor:",i)}}(async()=>{await new Promise(i=>setTimeout(i,0)),await r;for(let i of this.loggedInSessions){let s=new CustomEvent("login",{detail:{session:{actor:i.actor}}});this.sessionEvents.dispatchEvent(s)}await n;let o=new CustomEvent("initialized");this.sessionEvents.dispatchEvent(o)})()}services;sessionEvents=new EventTarget;inProgressLogin=void 0;inProgressLogout=void 0;async login(t){try{await this.login_(t)}catch(n){let r=new CustomEvent("login",{detail:{error:n instanceof Error?n:new Error(String(n)),session:{actor:t}}});this.sessionEvents.dispatchEvent(r)}}async login_(t){if(this.loggedInSessions.find(b=>b.actor===t)){this.sessionEvents.dispatchEvent(new CustomEvent("login",{detail:{session:{actor:t}}}));return}let o=(await this.services.dids.resolve(t)).service;if(!o)throw new Error(`No services found in actor document for ${t}`);let i=o.find(b=>b.id===li&&b.type===ui),s=o.find(b=>b.id===ba&&b.type===ai),a=o.filter(b=>b.id.match(new RegExp(`^${ww}\\d+$`))&&b.type===ai);if(!s||!i||a.length===0)throw new Error(`Required services not found in actor document for ${t}`);let c=wa(i),u=wa(s),l=a.map(wa),d=[{endpoint:c,type:"bucket"},{endpoint:u,type:"personal-inbox"},...l.map(b=>({endpoint:b,type:"shared-inbox"}))],p=await Promise.all(d.map(async({endpoint:b,type:S})=>{let A=await(S==="bucket"?this.services.storageBuckets.getAuthorizationEndpoint(b):this.services.inboxes.getAuthorizationEndpoint(b));return{endpoint:b,authorizationEndpoint:A,type:S}})),m=new Map;p.forEach(({authorizationEndpoint:b,endpoint:S,type:A})=>{m.has(b)||m.set(b,[]),m.get(b).push({endpoint:S,type:A})});let w=[...m.entries()],_={...{actor:t},tokens:[],servicesByAuthorization:w};typeof window<"u"?window.localStorage.setItem(oi,JSON.stringify(_)):this.inProgressLogin=_;let[g,v]=w[0];await this.services.authorization.login(g,t,v.map(b=>b.endpoint))}async onLogin(t){if(!(t instanceof CustomEvent))return;let n=Zd.safeParse(t.detail);if(!n.success)return;let r=n.data.loginId;try{await this.onLogin_(n.data)}catch(o){let i=new CustomEvent("login",{detail:{error:o instanceof Error?o:new Error(String(o)),session:{actor:r}}});this.sessionEvents.dispatchEvent(i)}}async onLogin_(t){if(t.error)throw t.error;let n=t.token,r=t.loginId,o;if(typeof window<"u"){let i=window.localStorage.getItem(oi);if(!i)throw new Error("No in-progress login found");let s=JSON.parse(i);o=_a.parse(s)}else{if(!this.inProgressLogin)throw new Error("No in-progress login found");o=this.inProgressLogin}if(o.actor!==r)throw new Error("Actor mismatch in login response - concurrent logins?");if(o.tokens.push(n),o.tokens.length===o.servicesByAuthorization.length){typeof window>"u"?this.inProgressLogin=void 0:window.localStorage.removeItem(oi);let i=o.servicesByAuthorization.flatMap(([u,l],d)=>l.map(p=>({token:o.tokens[d],serviceEndpoint:p.endpoint,authorizationEndpoint:u,type:p.type}))),s={...o,storageBucket:i.find(u=>u.type==="bucket"),personalInbox:i.find(u=>u.type==="personal-inbox"),sharedInboxes:i.filter(u=>u.type==="shared-inbox")},a=this.loggedInSessions;a.push(s),this.loggedInSessions=a;let c=new CustomEvent("login",{detail:{session:{actor:r}}});this.sessionEvents.dispatchEvent(c)}else{typeof window<"u"?window.localStorage.setItem(oi,JSON.stringify(o)):this.inProgressLogin=o;let[i,s]=o.servicesByAuthorization[o.tokens.length];await this.services.authorization.login(i,r,s.map(a=>a.endpoint))}}async logout(t){try{await this.logout_(t)}catch(n){let r=new CustomEvent("logout",{detail:{error:n instanceof Dt?void 0:n instanceof Error?n:new Error(String(n)),actor:t}});this.sessionEvents.dispatchEvent(r)}}async logout_(t){let n=this.loggedInSessions.find(s=>s.actor===t);if(!n)throw new Error(`No session found for actor ${t}`);this.loggedInSessions=this.loggedInSessions.filter(s=>s.actor!==t);let r=n.tokens.pop();if(!r)throw new Error("No tokens found in session");typeof window<"u"?window.localStorage.setItem(ii,JSON.stringify(n)):this.inProgressLogout=n;let[o,i]=n.servicesByAuthorization[n.tokens.length];await this.services.authorization.logout(o,t,r)}async onLogout(t){if(!(t instanceof CustomEvent))return;let n=Fd.safeParse(t.detail);if(!n.success)return;let r=n.data.logoutId;try{await this.onLogout_(n.data)}catch(o){let i=new CustomEvent("logout",{detail:{error:o instanceof Error?o:new Error(String(o)),actor:r}});this.sessionEvents.dispatchEvent(i)}}async onLogout_(t){if(t.error)throw t.error;let n=t.logoutId,r;if(typeof window<"u"){let i=window.localStorage.getItem(ii);if(!i)throw new Error("No in-progress logout found");let s=JSON.parse(i);r=_a.parse(s)}else{if(!this.inProgressLogout)throw new Error("No in-progress logout found");r=this.inProgressLogout}if(r.actor!==n)throw new Error("Actor mismatch in logout response - concurrent logouts?");let o=r.tokens.pop();if(o){typeof window<"u"?window.localStorage.setItem(ii,JSON.stringify(r)):this.inProgressLogout=r;let[i,s]=r.servicesByAuthorization[r.tokens.length];await this.services.authorization.logout(i,n,o)}else{typeof window>"u"?this.inProgressLogout=void 0:window.localStorage.removeItem(ii);let i=new CustomEvent("logout",{detail:{actor:n}});this.sessionEvents.dispatchEvent(i)}}get loggedInSessions(){if(typeof window>"u")return Af;let t=vf(si);if(!t)return[];let n;try{n=JSON.parse(t)}catch{return console.error("Error parsing stored session data"),ga(si),[]}let r=J(xw).safeParse(n);return r.success?r.data:(console.error("Stored session data is invalid"),ga(si),[])}set loggedInSessions(t){if(typeof window>"u"){Af=t;return}Ef(si,JSON.stringify(t))}resolveSession(t){let n=this.loggedInSessions.find(r=>r.actor===t.actor);if(!n){let r=new CustomEvent("logout",{detail:{actor:t.actor}});throw this.sessionEvents.dispatchEvent(r),new Error("Not logged in")}return n}},Af=[],oi="graffiti-login-in-progress",ii="graffiti-logout-in-progress",si="graffiti-sessions-logged-in",_w=be({actor:Z()}),ya=be({token:B(),serviceEndpoint:Z(),authorizationEndpoint:Z()}),bw=J(pe([Z(),J(be({endpoint:Z(),type:Kc(["bucket","personal-inbox","shared-inbox"])}))])),_a=rt(_w,{tokens:J(B()),servicesByAuthorization:bw}),xw=rt(_a,{storageBucket:ya,personalInbox:ya,sharedInboxes:J(ya)});function wa(e){if(typeof e.serviceEndpoint=="string")return e.serviceEndpoint;throw new Error(`Service endpoint for ${e.id} is not a string`)}var di=32*1024,fi=class{constructor(t){this.primitives=t}primitives;async encode(t,n){t=Ra(t);let r=[...new Set(t.channels)],o=await Promise.all(r.map(x=>this.primitives.channelAttestations.attest(Bt,n,x))),i=o.map(x=>x.attestation),s=o.map(x=>x.channelPublicId),a={[Ea]:t.value,[va]:i,[Pf]:Tt(32)},c;if(Array.isArray(t.allowed)){let x=await Promise.all(t.allowed.map(async _=>this.primitives.allowedAttestations.attest(pa,_)));a[Sa]=x.map(_=>_.attestation),c=x.map(_=>_.ticket)}let u=Re(a);if(u.byteLength>di)throw new Error("The object is too large");let l=await this.primitives.contentAddresses.register(qo,u),d=await this.primitives.stringEncoder.encode(Tn,l),p=vw(n,d),m=[new TextEncoder().encode(p),...s];return{object:{value:t.value,channels:r,url:p,actor:n,...t.allowed?{allowed:t.allowed}:{}},tags:m,objectBytes:u,allowedTickets:c}}async validate(t,n,r,o){if(r.byteLength>di)throw new Error("Object is too big");let{actor:i,contentAddress:s}=Ta(t.url);if(i!==t.actor)throw new Error("Object actor does not match URL actor");let a=n.at(0);if(!a)throw new Error("No object URL tag");if(new TextDecoder().decode(a)!==t.url)throw new Error("Object URL tag does not match object URL");let c=n.slice(1),u=await this.primitives.stringEncoder.decode(s),l=await this.primitives.contentAddresses.getMethod(u),d=await this.primitives.contentAddresses.register(l,r);if(d.length!==u.length||!d.every((b,S)=>b===u[S]))throw new Error("Content address is invalid");let p=qe(r),m=Ew.parse(p),w=m[Ea],x=m[va],_=m[Sa],g=Re(w),v=Re(t.value);if(g.length!==v.length||!g.every((b,S)=>b===v[S]))throw new Error("Object value does not match storage value");if(x.length!==c.length)throw new Error("Not as many channel attestations and public ids");for(let[b,S]of x.entries()){let A=c[b];if(!await this.primitives.channelAttestations.validate(S,i,A))throw new Error("Invalid channel attestation")}if(t.channels.length){if(t.channels.length!==c.length)throw new Error("Number of claimed channels does not match attestations/public IDs");let b=await this.primitives.channelAttestations.getMethod(c[0]),S=await Promise.all(t.channels.map(A=>this.primitives.channelAttestations.register(b,A)));for(let[A,O]of S.entries()){let D=c[A];if(O.length!==D.length||!O.every((L,ne)=>L===D[ne]))throw new Error("Channel public id does not match expected")}}if(o){if(!_)throw new Error("Object is public but thought to be private");let b,S,A;if("recipient"in o?(b=[o.recipient],S=[o.allowedTicket],A=_.filter((O,D)=>D===o.allowedIndex)):(b=[...t.allowed??[]],S=o.allowedTickets,A=_),b.length!==t.allowed?.length)throw new Error("Recipient count does not match object allowed list");if(!b.every(O=>t.allowed?.includes(O)))throw new Error("Recipient not in object allowed list");for(let[O,D]of b.entries()){let L=S.at(O),ne=A.at(O);if(!L)throw new Error("Missing allowed ticket for recipient");if(!ne)throw new Error("Missing allowed attestation for recipient");if(!await this.primitives.allowedAttestations.validate(ne,D,L))throw new Error("Invalid allowed attestation for recipient")}}else if(_)throw new Error("Object is private but no recipient info provided")}},Ea="v",va="c",Sa="a",Pf="n",xa=Rt(e=>e instanceof Uint8Array),Ew=xe({[Ea]:me({}),[va]:J(xa),[Sa]:ee(J(xa)),[Pf]:xa}),Aa="graffiti:";function Rf(e){let t=e.replace(/:/g,"!").replace(/\//g,"~");return encodeURIComponent(t)}function Tf(e){return decodeURIComponent(e).replace(/!/g,":").replace(/~/g,"/")}function vw(e,t){return`${Aa}${Rf(e)}:${Rf(t)}`}function Ta(e){if(!e.startsWith(Aa))throw new Error("Invalid object URL");let n=e.slice(Aa.length).split(":");if(n.length!==2)throw new Error("Invalid object URL format");let[r,o]=n;return{actor:Tf(r),contentAddress:Tf(o)}}function Ra(e){return e===void 0?null:Array.isArray(e)?e.map(Ra):typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0).map(([t,n])=>[t,Ra(n)])):e}var kf=class{dialog=document.createElement("dialog");shadow;main_;useTemplateHTML;templates_;onManualClose;displayTemplateSeq=0;constructor(e){this.useTemplateHTML=e.useTemplateHTML,this.onManualClose=e.onManualClose,this.dialog.className="graffiti-modal",this.dialog.addEventListener("click",n=>{if("pointerType"in n&&!n.pointerType)return;let r=this.dialog.getBoundingClientRect();(r.top>n.clientY||r.left>n.clientX||n.clientY>r.top+r.height||n.clientX>r.left+r.width)&&(this.close(),this.onManualClose?.())});let t=document.createElement("div");this.shadow=t.attachShadow({mode:"closed"}),this.shadow.appendChild(this.dialog),document.body.append(t)}get templates(){return this.templates_||(this.main_,this.templates_=new Promise(async e=>e(await this.useTemplateHTML())).then(e=>{let t=new DOMParser().parseFromString(e,"text/html"),n=new Map;return t.querySelectorAll("template").forEach(r=>{let o=r.id;o&&n.set(o,r)}),n})),this.templates_}get main(){return this.main_||(this.templates_,this.main_=Promise.all([import("./style-BOBMBTYJ-GXWKT5M3.js"),import("./graffiti-KV3G3O72-TAZN6KIP.js"),import("./rock-salt-LI7DAH66-TZP5ZWGV.js")]).then(async([{default:e},{default:t},{default:n}])=>{let r=document.createElement("header"),o=document.createElement("button");o.className="secondary",o.textContent="Close",o?.addEventListener("click",()=>{this.close(),this.onManualClose?.()}),r.appendChild(o);let i=document.createElement("main");this.dialog.appendChild(r),this.dialog.appendChild(i);let s=new FontFace("Rock Salt",`url(${n})`,{style:"normal",weight:"400"});document.fonts.add(s),await s.load(),e=e.replace("url(graffiti.jpg)",`url(${t})`);let a=new CSSStyleSheet;return a.replace(e).then(()=>{this.shadow.adoptedStyleSheets=[a]}),i})),this.main_}async open(){await this.main,this.dialog.showModal(),this.dialog.focus()}close(){this.dialog.close()}async displayTemplate(e){let t=++this.displayTemplateSeq,n=()=>{if(t!==this.displayTemplateSeq)throw new Error(`displayTemplate(${e}) overridden by concurrent call`)},r=await this.main;n();let o=(await this.templates).get(e);if(n(),!o)throw new Error(`Template not found: ${e}`);let i=o.content.cloneNode(!0);return r.replaceChildren(i),r}};var If=Rt(e=>e instanceof Uint8Array),Oa="k",On="t",$a=xe({[Oa]:B(),[On]:ee(B())}),jt="id",za="e",Ar="a",Sw=J(xe({[jt]:B(),[za]:ee(Z()),[Ar]:ee(Z())})),pi="s",hi="n",Aw=rt($a,{[pi]:ee(J(If)),[hi]:Sw}),Rr="a",Ia="i",Rw=rt($a,{[Rr]:If,[Ia]:qt().check(At())}),Tw=ft([$a,Aw,Rw]),Pw=0,Pa=1,bt=2,ka=3,kw=16,Of="graffiti-login-remembered-handle",mi=class{dids=new vo;authorization=new Lo;storageBuckets=new jo;inboxes=new Fo;stringEncoder=new Go;contentAddresses=new Jo;channelAttestations=new Qo;allowedAttestations=new ei;sessions=new ci({dids:this.dids,authorization:this.authorization,storageBuckets:this.storageBuckets,inboxes:this.inboxes});handles=new ti({dids:this.dids});objectEncoding=new fi({stringEncoder:this.stringEncoder,contentAddresses:this.contentAddresses,channelAttestations:this.channelAttestations,allowedAttestations:this.allowedAttestations});modal=typeof window>"u"?void 0:new kf({useTemplateHTML:()=>import("./login-dialog.html-E6VRKMXH.js").then(({template:t})=>t),onManualClose:()=>{let t=new CustomEvent("login",{detail:{error:new Error("User cancelled login"),manual:!0}});this.sessionEvents.dispatchEvent(t)}});defaultInboxEndpoints;identityCreatorEndpoint;constructor(t){this.defaultInboxEndpoints=t?.defaultInboxEndpoints??["https://graffiti.actor/i/shared"],this.identityCreatorEndpoint=t?.identityCreatorEndpoint??"https://graffiti.actor/create",this.sessionEvents.addEventListener("login",async n=>{if(!(n instanceof CustomEvent))return;let r=n.detail;if(r.error!==void 0){if("manual"in r&&r.manual)return;alert("Login failed: "+r.error.message);let s=r.session?.actor,a;if(s)try{a=await this.actorToHandle(s)}catch(c){console.error("Failed to handle actor:",c)}this.login_(a);return}let o=r.session.actor,i;try{i=await this.actorToHandle(o)}catch(s){console.error("Failed to load handle from actor:",s)}i&&await this.rememberHandleInPasswordManager(i,o)});for(let n of["post","get","delete","postMedia","getMedia","deleteMedia"]){let r=this[n];this[n]=async(...o)=>{try{return await r(...o)}catch(i){let s=o[o.length-1];throw await this.tryLogoutIfUnauthorized(i,s),i}}}}actorToHandle=this.handles.actorToHandle.bind(this.handles);handleToActor=this.handles.handleToActor.bind(this.handles);sessionEvents=this.sessions.sessionEvents;login=async t=>{try{let n;try{n=t?await this.actorToHandle(t):void 0}catch(r){console.error("Error fetching handle for actor:",r)}await this.login_(n)}catch(n){let r=new CustomEvent("login",{detail:{error:n instanceof Error?n:new Error(String(n))}});this.sessionEvents.dispatchEvent(r)}};async login_(t){if(typeof window<"u"){let n;if(t!==void 0){n=await this.modal?.displayTemplate("graffiti-login-handle");let o=n?.querySelector("#username"),i=t||await this.getRememberedHandleFromPasswordManager();o&&(o.value=i??""),o?.addEventListener("focus",()=>o?.select()),setTimeout(()=>o?.focus(),0),n?.querySelector("#graffiti-login-handle-form")?.addEventListener("submit",async s=>{s.preventDefault(),o?.setAttribute("disabled","true");let a=n?.querySelector("#graffiti-login-handle-submit");if(a?.setAttribute("disabled","true"),a&&(a.innerHTML="Logging in..."),!o?.value){alert("No handle provided"),this.login_("");return}let c=o.value;if(!c.includes(".")&&!c.startsWith("localhost")){let l=new URL(this.identityCreatorEndpoint).host;c=`${c}.${l}`}let u;try{u=await this.handleToActor(c)}catch{alert("Could not find an identity associated with that handle."),this.login_(c);return}try{await this.sessions.login(u)}catch(l){alert("Error logging in."),console.error(l),this.login_(c)}})}else n=await this.modal?.displayTemplate("graffiti-login-welcome"),n?.querySelector("#graffiti-login-existing")?.addEventListener("click",o=>{o.preventDefault(),this.login_("")}),setTimeout(()=>n?.querySelector("#graffiti-login-new")?.focus(),0);let r=new URL(this.identityCreatorEndpoint);r.searchParams.set("redirect_uri",encodeURIComponent(window.location.toString())),n?.querySelector("#graffiti-login-new")?.setAttribute("href",r.toString()),await this.modal?.open()}else{let n=await import("readline").catch(s=>{throw new Error("Unrecognized environment: neither window nor readline")});console.log("If you do not already have a Graffiti handle, you can create one here:"),console.log(this.identityCreatorEndpoint);let r=n.createInterface({input:process.stdin,output:process.stdout}),o=await new Promise(s=>{r.question(`Please enter your handle${t?` (default: ${t})`:""}: `,a=>{r.close(),s(a||t)})});if(!o)throw new Error("No handle provided");let i=await this.handleToActor(o);await this.sessions.login(i)}}async rememberHandleInPasswordManager(t,n){if(typeof window>"u")return;let r=window.navigator.credentials,o=window.PasswordCredential;if(!r?.store||!o){this.rememberHandleInBrowserStorage(t);return}try{let i=new o({id:t,password:"no-password",name:t});await r.store(i)}catch(i){console.error("Failed to remember handle in password manager:",i),this.rememberHandleInBrowserStorage(t)}}async getRememberedHandleFromPasswordManager(){if(typeof window>"u")return;let t=window.navigator.credentials,n=window.PasswordCredential;if(!t?.get||!n)return this.getRememberedHandleFromBrowserStorage();try{let r=await t.get({password:!0,mediation:"optional"});if(r&&"id"in r&&typeof r.id=="string")return r.id}catch(r){return console.error("Failed to load handle from password manager:",r),this.getRememberedHandleFromBrowserStorage()}}rememberHandleInBrowserStorage(t){if(!(typeof window>"u"))try{window.localStorage.setItem(Of,t)}catch(n){console.error("Failed to remember handle in browser storage:",n)}}getRememberedHandleFromBrowserStorage(){if(!(typeof window>"u"))try{return window.localStorage.getItem(Of)??void 0}catch(t){console.error("Failed to load handle from browser storage:",t);return}}logout=async t=>{await this.sessions.logout(t.actor)};post=async(...t)=>{let[n,r]=t,o=this.sessions.resolveSession(r),{object:i,tags:s,objectBytes:a,allowedTickets:c}=await this.objectEncoding.encode(n,r.actor),u=Tt(),l=await this.stringEncoder.encode(Tn,u);return await this.storageBuckets.put(o.storageBucket.serviceEndpoint,l,a,o.storageBucket.token),await this.announceObject(i,s,c,l,r),i};get=async(...t)=>{let[n,r,o]=t,i,s=await Or(r);if(o){let u=this.sessions.resolveSession(o);i=[u.personalInbox,...u.sharedInboxes]}else i=this.defaultInboxEndpoints.map(u=>({serviceEndpoint:u}));let a=wi(n),c=[new TextEncoder().encode(a)];for(let u of i){let l,d=this.querySingleEndpoint(u.serviceEndpoint,{tags:c,objectSchema:{}},u.token,o?.actor);for await(let p of d)p.object.url===a&&(p.tombstone?l=void 0:l=p.object);if(l){if(!s(l))throw new Pr("Object exists but does not match the supplied schema");return l}}throw new re("Object not found")};delete=async(t,n)=>{let r=this.sessions.resolveSession(n),o=wi(t),{actor:i}=Ta(o);if(i!==n.actor)throw new dt("Cannot delete someone else's actor");let s=this.querySingleEndpoint(r.personalInbox.serviceEndpoint,{tags:[new TextEncoder().encode(o)],objectSchema:{}},r.personalInbox.token),a;for await(let w of s)w.object.url===o&&(w.tombstone?a=void 0:a=w);if(!a)throw new re(`Object ${o} not found`);let{object:c,storageBucketKey:u,tags:l,allowedTickets:d,announcements:p,messageId:m}=a;return await this.storageBuckets.delete(r.storageBucket.serviceEndpoint,u,r.storageBucket.token),await this.announceObject(c,l,d,u,n,[...p??[],{[Ar]:n.actor,[jt]:m}]),c};postMedia=async(...t)=>{let[n,r]=t,o=n.data.type,i=this.sessions.resolveSession(r),s=Tt(),a=await this.stringEncoder.encode(Tn,s);await this.storageBuckets.put(i.storageBucket.serviceEndpoint,a,new Uint8Array(await n.data.arrayBuffer()),i.storageBucket.token);let{url:c}=await this.post({value:{key:a,type:o,size:n.data.size},channels:[],allowed:n.allowed},r);return c};getMedia=async(...t)=>{let[n,r,o]=t,i=await this.get(n,Ow,o),{key:s,type:a,size:c}=i.value;if(r?.maxBytes&&c>r.maxBytes)throw new Ht("File size exceeds limit");if(r?.types&&!La(a,r.types))throw new kr(`Unacceptable media type, ${a}`);let l=(await this.dids.resolve(i.actor))?.service?.find(w=>w.id===li&&w.type===ui);if(!l)throw new re(`Actor ${i.actor} has no storage bucket service`);if(typeof l.serviceEndpoint!="string")throw new re(`Actor ${i.actor} does not have a valid storage bucket endpoint`);let d=l.serviceEndpoint,p=await this.storageBuckets.get(d,s,c);return{data:new Blob([p.slice()],{type:a}),actor:i.actor,allowed:i.allowed}};deleteMedia=async(...t)=>{let[n,r]=t,o=this.sessions.resolveSession(r),i=await this.delete(n,r);if(!("key"in i.value&&typeof i.value.key=="string"))throw new Error("Deleted object was not media: "+JSON.stringify(i,null,2));await this.storageBuckets.delete(o.storageBucket.serviceEndpoint,i.value.key,o.storageBucket.token)};async*discoverMeta(t,n,r,o){let i=new Map,s;if(o){let d=this.sessions.resolveSession(o);s=[d.personalInbox,...d.sharedInboxes]}else s=this.defaultInboxEndpoints.map(d=>({serviceEndpoint:d}));for(let d in r)if(!s.some(p=>p.serviceEndpoint===d))throw new dt("Cursor does not match actor's inboxes");let a=await Promise.all(t.map(d=>this.channelAttestations.register(Bt,d))),c=s.map(d=>{let p=r[d.serviceEndpoint];return this.querySingleEndpoint(d.serviceEndpoint,p?{cursor:p}:{tags:a,objectSchema:n},d.token,o?.actor)}),u=c.map(async(d,p)=>zf(d,p)),l=u.length;try{for(;l>0;){let d=await Promise.race(u);if(d.error!==void 0)u[d.index]=new Promise(()=>{}),l--,yield{error:d.error,origin:s[d.index].serviceEndpoint},this.tryLogoutIfUnauthorized(d.error,o);else if(d.result.done){let p=s[d.index];r[p.serviceEndpoint]=d.result.value,u[d.index]=new Promise(()=>{}),l--}else{u[d.index]=zf(c[d.index],d.index);let{object:p,tombstone:m,tags:w}=d.result.value;if(m){if(i.get(p.url)===!0)continue;i.set(p.url,!0),yield{tombstone:m,object:{url:p.url}}}else{if(i.get(p.url)===!1)continue;let _=a.reduce((g,v,b)=>{for(let S of w)if(v.length===S.length&&v.every((A,O)=>S[O]===A)){g.push(b);break}return g},[]).map(g=>t[g]);_.length===0&&(yield{error:new Error("Inbox returned object without matching channels"),origin:s[d.index].serviceEndpoint}),i.set(p.url,!1),yield{object:{...p,channels:_}}}}}}catch(d){throw this.tryLogoutIfUnauthorized(d,o),d}finally{await Promise.all(c.map(async d=>{await d.return("")}))}return{cursor:JSON.stringify({channels:t,cursors:r})}}discover=(...t)=>{let[n,r,o]=t;return this.discoverMeta(n,r,{},o)};continueDiscover=(...t)=>{let[n,r]=t,o,i;try{let s=JSON.parse(n),a=zw.parse(s);o=a.channels,i=a.cursors}catch{return(async function*(){throw new Ce("Invalid cursor")})()}return this.discoverMeta(o,{},i,r)};async tryLogoutIfUnauthorized(t,n){t instanceof Dt&&n&&await this.sessions.logout(n.actor)}async announceObject(t,n,r,o,i,s){let a=this.sessions.resolveSession(i),c={[Oa]:o},u=[],l=t.allowed;if(Array.isArray(l)){if(!r||r.length!==l.length)throw new Error("If allowed actors are specified, there must be a corresponding ticket for each allowed actor");let m=await Promise.allSettled(l.map(async(w,x)=>{let _=JSON.parse(JSON.stringify(t)),g=_i(_,[],w),b=(await this.dids.resolve(w)).service?.find(D=>D.type===ai&&D.id===ba);if(!b)throw new Error(`Recipient ${w} does not have a personal inbox`);if(typeof b.serviceEndpoint!="string")throw new Error(`Recipient ${w} does not have a valid personal inbox endpoint`);let S=s?s.find(D=>D[Ar]===w)?.[jt]:void 0,A={...c,...S?{[On]:S}:{},[Rr]:r[x],[Ia]:x},O=await this.inboxes.send(b.serviceEndpoint,{[xr]:n,[st]:g,[Er]:Re(A)});u.push({[jt]:O,[Ar]:w})}));for(let[w,x]of m.entries())if(x.status==="rejected"){let _=l[w];console.error("Error sending to recipient:",_),console.error(x.reason)}}else{let m=JSON.parse(JSON.stringify(t)),w=_i(m,[]),x=a.sharedInboxes,_=await Promise.allSettled(x.map(async g=>{let v=s?s.find(A=>A[za]===g.serviceEndpoint)?.[jt]:void 0,b={...c,...v?{[On]:v}:{}},S=await this.inboxes.send(g.serviceEndpoint,{...v?{[On]:v}:{},[xr]:n,[st]:w,[Er]:Re(b)});u.push({[jt]:S,[za]:g.serviceEndpoint})}));for(let[g,v]of _.entries())if(v.status==="rejected"){let b=x[g];console.error("Error sending to inbox:",b),console.error(v.reason)}}let d=s?s.find(m=>m[Ar]===i.actor)?.[jt]:void 0,p={...c,...r?{[pi]:r}:{},...d?{[On]:d}:{},[hi]:u};await this.inboxes.send(a.personalInbox.serviceEndpoint,{[xr]:n,[st]:t,[Er]:Re(p)})}async*querySingleEndpoint(t,n,r,o){let i="tags"in n?this.inboxes.query(t,n.tags,n.objectSchema,r):this.inboxes.continueQuery(t,n.cursor,r),s=[],a=null;try{for(;;){for(;a===null&&s.length<kw;){let l=await i.next();if(l.done){a=l.value;break}let d=this.processOneLabeledMessage(t,l.value,r,o).catch(p=>{throw p});s.push(d)}let c=s.shift();if(!c){if(a!==null)return a;throw new Error("Process queue empty but no return value")}let u=await c;u&&(yield u)}}finally{await i.return("")}}async processOneLabeledMessage(t,n,r,o){let i=n.l;if(i!==Pa&&i!==Pw&&i!==bt)return;let s=n.id,{o:a,m:c,t:u}=n.m,l;try{let _=qe(c);l=Tw.parse(_)}catch{this.inboxes.label(t,s,ka,r);return}let{[Oa]:d,[On]:p}=l,m=pi in l?l[pi]:void 0,w=hi in l?l[hi]:void 0;if(i===Pa)return{messageId:s,object:a,storageBucketKey:d,allowedTickets:m,tags:u,announcements:w};if(i===bt){if(!p)return;let _=await this.inboxes.get(t,p,r);return!_||_[Ut][st].url!==a.url?void 0:(_[Ho]!==bt&&this.inboxes.label(t,p,bt,r),{messageId:s,tombstone:!0,object:a,storageBucketKey:d,allowedTickets:m,tags:u,announcements:w})}let x;try{let _=a.actor,v=(await this.dids.resolve(_))?.service?.find(O=>O.id===li&&O.type===ui);if(!v)throw new re(`Actor ${_} has no storage bucket service`);if(typeof v.serviceEndpoint!="string")throw new re(`Actor ${_} does not have a valid storage bucket endpoint`);let b=v.serviceEndpoint,S=await this.storageBuckets.get(b,d,di);if(Rr in l&&!o)throw new dt("Recipient is required when allowed ticket is present");let A=m?{allowedTickets:m}:Rr in l?{recipient:o??"null",allowedTicket:l[Rr],allowedIndex:l[Ia]}:void 0;await this.objectEncoding.validate(a,u,S,A)}catch(_){x=_}if(p){if(x instanceof re)return this.inboxes.get(t,p,r).then(_=>{_&&_[Ut][st].url===a.url&&_[Ho]!==bt&&this.inboxes.label(t,p,bt,r),this.inboxes.label(t,s,bt,r)}),{messageId:s,tombstone:!0,object:a,storageBucketKey:d,allowedTickets:m,tags:u,announcements:w};console.error("Recieved an incorrect tombstone object"),console.error(x),this.inboxes.label(t,s,ka,r)}else{if(x===void 0)return this.inboxes.label(t,s,Pa,r),{messageId:s,object:a,storageBucketKey:d,tags:u,allowedTickets:m,announcements:w};x instanceof re?this.inboxes.label(t,s,bt,r):(console.error("Recieved an incorrect object"),console.error(x),this.inboxes.label(t,s,ka,r))}}},Ow={properties:{value:{properties:{type:{type:"string"},size:{type:"number"},key:{type:"string"}},required:["type","size","key"]}}},zw=xe({cursors:Jc(Z(),B()),channels:J(B())});async function zf(e,t){try{return{index:t,result:await e.next()}}catch(n){if(n instanceof Ce||n instanceof Ft)throw n;return{index:t,error:n instanceof Error?n:new Error(String(n))}}}var $f=class extends Lr{constructor(t){let n=new mi(t);super(n)}};export{$f as GraffitiDecentralized};
|
|
8
11
|
/*! Bundled license information:
|
|
9
12
|
|
|
10
|
-
@noble/hashes/utils.js:
|
|
11
|
-
(*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
12
|
-
|
|
13
13
|
@noble/ed25519/index.js:
|
|
14
14
|
(*! noble-ed25519 - MIT License (c) 2019 Paul Miller (paulmillr.com) *)
|
|
15
|
+
|
|
16
|
+
js-cookie/dist/js.cookie.mjs:
|
|
17
|
+
(*! js-cookie v3.0.8 | MIT *)
|
|
15
18
|
*/
|
|
16
19
|
//# sourceMappingURL=index.js.map
|