@powerhousedao/ph-clint-app 0.1.0-dev.104 → 0.1.0-dev.105
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/connect/assets/{ClearStorageModal-DyU-FIgY-EmyEVbqJ.js → ClearStorageModal-DyU-FIgY-C2SQvwxh.js} +2 -2
- package/dist/connect/assets/{ClearStorageModal-DyU-FIgY-EmyEVbqJ.js.map → ClearStorageModal-DyU-FIgY-C2SQvwxh.js.map} +1 -1
- package/dist/connect/assets/{DebugSettingsModal-CwUN9gIr-DU3Ify9i.js → DebugSettingsModal-CwUN9gIr-C27CiPQG.js} +2 -2
- package/dist/connect/assets/{DebugSettingsModal-CwUN9gIr-DU3Ify9i.js.map → DebugSettingsModal-CwUN9gIr-C27CiPQG.js.map} +1 -1
- package/dist/connect/assets/{InspectorModal-Cd8kbCV8-oAxF19f2.js → InspectorModal-Cd8kbCV8-D9TUaRon.js} +2 -2
- package/dist/connect/assets/{InspectorModal-Cd8kbCV8-oAxF19f2.js.map → InspectorModal-Cd8kbCV8-D9TUaRon.js.map} +1 -1
- package/dist/connect/assets/{OpenFileDocumentsModal-BQsaBP4x-F5oIaNhF.js → OpenFileDocumentsModal-BQsaBP4x-HmKTWcS8.js} +2 -2
- package/dist/connect/assets/{OpenFileDocumentsModal-BQsaBP4x-F5oIaNhF.js.map → OpenFileDocumentsModal-BQsaBP4x-HmKTWcS8.js.map} +1 -1
- package/dist/connect/assets/{SettingsModal-CgjW-M2a-cl02gX0W.js → SettingsModal-CgjW-M2a-BbUA87ne.js} +2 -2
- package/dist/connect/assets/{SettingsModal-CgjW-M2a-cl02gX0W.js.map → SettingsModal-CgjW-M2a-BbUA87ne.js.map} +1 -1
- package/dist/connect/assets/{app-loader-l5wtQh5z-De20QMC5.js → app-loader-l5wtQh5z-BCq0Ui4Q.js} +4 -4
- package/dist/connect/assets/{app-loader-l5wtQh5z-De20QMC5.js.map → app-loader-l5wtQh5z-BCq0Ui4Q.js.map} +1 -1
- package/dist/connect/assets/{components-BH57lxCU-WIjGNcs_.js → components-BH57lxCU-CXFU4DBE.js} +2 -2
- package/dist/connect/assets/{components-BH57lxCU-WIjGNcs_.js.map → components-BH57lxCU-CXFU4DBE.js.map} +1 -1
- package/dist/connect/assets/{connect.config-CaXMoB42-VqdFwuy8.js → connect.config-CaXMoB42-DPDK2YJi.js} +2 -2
- package/dist/connect/assets/{connect.config-CaXMoB42-VqdFwuy8.js.map → connect.config-CaXMoB42-DPDK2YJi.js.map} +1 -1
- package/dist/connect/assets/{connection-state-Eqc2izmt-DTKlEPf8.js → connection-state-Eqc2izmt-DYeEdoBH.js} +2 -2
- package/dist/connect/assets/{connection-state-Eqc2izmt-DTKlEPf8.js.map → connection-state-Eqc2izmt-DYeEdoBH.js.map} +1 -1
- package/dist/connect/assets/{cookie-banner-BxXvPdIY-CasEfo4n.js → cookie-banner-BxXvPdIY-DciefBm4.js} +2 -2
- package/dist/connect/assets/{cookie-banner-BxXvPdIY-CasEfo4n.js.map → cookie-banner-BxXvPdIY-DciefBm4.js.map} +1 -1
- package/dist/connect/assets/{index-CgAuDZM-.js → index-CCrGK-st.js} +3 -3
- package/dist/connect/assets/{index-CgAuDZM-.js.map → index-CCrGK-st.js.map} +1 -1
- package/dist/connect/assets/{load-ftpCX1HI-sPDToliw.js → load-ftpCX1HI-C4L1Z5YI.js} +2 -2
- package/dist/connect/assets/{load-ftpCX1HI-sPDToliw.js.map → load-ftpCX1HI-C4L1Z5YI.js.map} +1 -1
- package/dist/connect/assets/{pglite-seed-Cl2d-iyl-BBapDDmK.js → pglite-seed-Cl2d-iyl-Abmu_EqV.js} +2 -2
- package/dist/connect/assets/{pglite-seed-Cl2d-iyl-BBapDDmK.js.map → pglite-seed-Cl2d-iyl-Abmu_EqV.js.map} +1 -1
- package/dist/connect/assets/{preferences-store-DZUIAkHE-BymxR2vb.js → preferences-store-DZUIAkHE-BwJzNFRa.js} +2 -2
- package/dist/connect/assets/{preferences-store-DZUIAkHE-BymxR2vb.js.map → preferences-store-DZUIAkHE-BwJzNFRa.js.map} +1 -1
- package/dist/connect/assets/{reactor-CItc8KaF-C82-SArQ.js → reactor-CItc8KaF-DIjxfM4l.js} +2 -2
- package/dist/connect/assets/{reactor-CItc8KaF-C82-SArQ.js.map → reactor-CItc8KaF-DIjxfM4l.js.map} +1 -1
- package/dist/connect/assets/{registerServiceWorker-smkROQhm-5rfjT0ui.js → registerServiceWorker-smkROQhm-Qbc3RMCx.js} +2 -2
- package/dist/connect/assets/{registerServiceWorker-smkROQhm-5rfjT0ui.js.map → registerServiceWorker-smkROQhm-Qbc3RMCx.js.map} +1 -1
- package/dist/connect/index.html +1 -1
- package/dist/connect/powerhouse.config.json +1 -1
- package/dist/connect/service-worker.js +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/secp256k1-CVqUn8M-.js","assets/secp256k1-D1r0jdlq.js","assets/utils-N6OADHW2.js","assets/sha2-DAzSwLJP.js","assets/utils-oVEYY1QK.js","assets/hmac-DoN68dA-.js","assets/live-E-YKBo63.js","assets/chunk-BTBUZ646--Q_mGPOy.js","assets/chunk-EADU5A67-BqqDB7-A.js","assets/rolldown-runtime-BcKkbAw3.js","assets/preload-helper-BZ1Pz5am.js","assets/live-W93_P198.js","assets/chunk-QY3QWFKW--Q_mGPOy.js","assets/chunk-3WWIVTCY-1OR_t9Fm.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as e,s as t,t as n}from"./rolldown-runtime-BcKkbAw3.js";import{n as r}from"./runtime-config-DtJIUgYw-yncHpou3.js";import{t as i}from"./preload-helper-BZ1Pz5am.js";import{c as a,h as o,l as s,m as c,n as l,p as u,s as d,u as f}from"./utils-N6OADHW2.js";import{t as p}from"./sha3-vjzUNIgY.js";import{i as m,r as h,t as g}from"./sha2-DAzSwLJP.js";import{t as _}from"./sha256-Bh9Gbylw.js";import{C as v,S as y,_ as b,a as ee,b as te,c as ne,d as re,f as x,g as ie,h as ae,i as oe,l as se,m as ce,n as le,o as ue,p as de,r as fe,s as pe,t as me,u as he,v as ge,x as _e,y as ve}from"./p256-Bbmxp9vE.js";import{r as ye}from"./toast-C6WW-_O--BnFrYYYY.js";import{n as be,r as xe,t as Se}from"./src-YxlLH438.js";import{n as Ce}from"./basics-CftvyfTN.js";import{t as we}from"./canonicalize-Dy8EJuht.js";import{g as Te,h as Ee,m as De,n as Oe,t as ke,v as Ae,y as je}from"./hashTypedData-Qe07TVhG.js";import{A as Me,D as Ne,E as Pe,T as Fe,f as Ie,i as Le,j as Re,k as ze,n as Be,o as Ve,r as He,s as Ue,x as We}from"./connection-state-Eqc2izmt-DTKlEPf8.js";import{n as Ge,o as Ke,r as qe}from"./connect.config-CaXMoB42-VqdFwuy8.js";import{n as Je,t as Ye}from"./package-manager-BbzIV9aN-ywzOaaLs.js";import{i as Xe,n as Ze}from"./build-info-BV8UtyA4-vnk7Wd-i.js";import{i as Qe,n as $e,r as et,t as tt}from"./null-attachment-transport-D53Rz9lE-D9F9p4EE.js";import{ConsoleLogger as nt,childLogger as rt,logger as it,setLogLevel as at}from"document-model";import{BrowserLocalStorage as ot,ChannelScheme as st,DRIVE_DOCUMENT_TYPES as ct,DocumentCache as lt,DocumentChangeType as ut,ReactorBuilder as dt,ReactorClientBuilder as ft,RegistryClient as pt,addDrive as mt,addPHEventHandlers as ht,addRemoteDrive as gt,createAnalyticsStore as _t,extractDriveSlugFromPath as vt,extractNodeSlugFromPath as yt,getDrives as bt,isDriveAuthError as xt,login as St,refreshReactorDataClient as Ct,setAttachmentService as wt,setDefaultPHGlobalConfig as Tt,setDocumentCache as Et,setDriveMetadata as Dt,setDrives as Ot,setFeatures as kt,setPGliteDB as At,setPHToast as jt,setPackageDiscoveryService as Mt,setReactorClient as Nt,setReactorClientModule as Pt,setRenown as Ft,setSelectedDrive as It,setSelectedNode as Lt,setVetraPackageManager as Rt,waitForDocumentReady as zt}from"@powerhousedao/reactor-browser";import{actionSignerIdentity as Bt,createAction as Vt,signActionV2 as Ht}from"@powerhousedao/shared/document-model";import"@powerhousedao/shared/document-drive";import{createRelationalDb as Ut}from"@powerhousedao/shared/processors";import{MessageRouter as Wt,RPC_PROTOCOL_VERSION as Gt,SyncManagerProxy as Kt,connectReactorClient as qt,createInspectorProxy as Jt,createPortTransport as Yt,createReactorEventBusProxy as Xt,createRelationalPgliteProxy as Zt,createWorkerAdminClient as Qt,postReactorIdentity as $t}from"@powerhousedao/reactor-browser/rpc";var en=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),tn=Uint8Array.from(Array(16).fill(0).map((e,t)=>t)),nn=tn.map(e=>(9*e+5)%16),rn=(()=>{let e=[[tn],[nn]];for(let t=0;t<4;t++)for(let n of e)n.push(n[t].map(e=>en[e]));return e})(),an=rn[0],on=rn[1],sn=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(e=>Uint8Array.from(e)),cn=an.map((e,t)=>e.map(e=>sn[t][e])),ln=on.map((e,t)=>e.map(e=>sn[t][e])),un=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),dn=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function fn(e,t,n,r){return e===0?t^n^r:e===1?t&n|~t&r:e===2?(t|~n)^r:e===3?t&r|n&~r:t^(n|~r)}var pn=new Uint32Array(16),mn=class extends m{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:e,h1:t,h2:n,h3:r,h4:i}=this;return[e,t,n,r,i]}set(e,t,n,r,i){this.h0=e|0,this.h1=t|0,this.h2=n|0,this.h3=r|0,this.h4=i|0}process(e,t){for(let n=0;n<16;n++,t+=4)pn[n]=e.getUint32(t,!0);let n=this.h0|0,r=n,i=this.h1|0,a=i,s=this.h2|0,c=s,l=this.h3|0,u=l,d=this.h4|0,f=d;for(let e=0;e<5;e++){let t=4-e,p=un[e],m=dn[e],h=an[e],g=on[e],_=cn[e],v=ln[e];for(let t=0;t<16;t++){let r=o(n+fn(e,i,s,l)+pn[h[t]]+p,_[t])+d|0;n=d,d=l,l=o(s,10)|0,s=i,i=r}for(let e=0;e<16;e++){let n=o(r+fn(t,a,c,u)+pn[g[e]]+m,v[e])+f|0;r=f,f=u,u=o(c,10)|0,c=a,a=n}}this.set(this.h1+s+u|0,this.h2+l+f|0,this.h3+d+r|0,this.h4+n+a|0,this.h0+i+c|0)}roundClean(){a(pn)}destroy(){this.destroyed=!0,a(this.buffer),this.set(0,0,0,0,0)}},hn=f(()=>new mn),gn=v,_n={p:BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),n:BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt(`0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798`),Gy:BigInt(`0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8`)},vn={beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),basises:[[BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),-BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`)],[BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),BigInt(`0x3086d221a7d46bcde86c90e49284eb15`)]]},yn=BigInt(2);function bn(e){let t=_n.p,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=x(u,n,t)*u%t,f=x(d,n,t)*u%t,p=x(f,yn,t)*l%t,m=x(p,i,t)*p%t,h=x(m,a,t)*m%t,g=x(h,s,t)*h%t,_=x(g,c,t)*g%t,v=x(_,s,t)*h%t,y=x(v,n,t)*u%t,b=x(y,o,t)*m%t,ee=x(b,r,t)*l%t,te=x(ee,yn,t);if(!xn.eql(xn.sqr(te),e))throw Error(`Cannot find square root`);return te}var xn=se(_n.p,{sqrt:bn}),Sn=oe({..._n,Fp:xn,lowS:!0,endo:vn},g),Cn=`https://www.renown.id`,wn=`eip155`,Tn={EIP712Domain:[{name:`version`,type:`string`},{name:`chainId`,type:`uint256`}],VerifiableCredential:[{name:`@context`,type:`string[]`},{name:`type`,type:`string[]`},{name:`id`,type:`string`},{name:`issuer`,type:`Issuer`},{name:`credentialSubject`,type:`CredentialSubject`},{name:`credentialSchema`,type:`CredentialSchema`},{name:`issuanceDate`,type:`string`},{name:`expirationDate`,type:`string`}],CredentialSchema:[{name:`id`,type:`string`},{name:`type`,type:`string`}],CredentialSubject:[{name:`app`,type:`string`},{name:`id`,type:`string`}],Issuer:[{name:`id`,type:`string`},{name:`ethereumAddress`,type:`string`}]},En=BigInt(0),S=BigInt(1),Dn=BigInt(2),On=BigInt(8);function kn(e,t,n,r){let i=e.sqr(n),a=e.sqr(r),o=e.add(e.mul(t.a,i),a),s=e.add(e.ONE,e.mul(t.d,e.mul(i,a)));return e.eql(o,s)}function An(e,t={}){let n=ee(`edwards`,e,t,t.FpFnLE),{Fp:r,Fn:i}=n,a=n.CURVE,{h:o}=a;ae(t,{},{uvRatio:`function`});let s=Dn<<BigInt(i.BYTES*8)-S,c=e=>r.create(e),l=t.uvRatio||((e,t)=>{try{return{isValid:!0,value:r.sqrt(r.div(e,t))}}catch{return{isValid:!1,value:En}}});if(!kn(r,a,a.Gx,a.Gy))throw Error(`bad curve params: generator point`);function u(e,t,n=!1){let r=n?S:En;return ie(`coordinate `+e,t,r,s),t}function f(e){if(!(e instanceof h))throw Error(`ExtendedPoint expected`)}let p=_e((e,t)=>{let{X:n,Y:i,Z:a}=e,o=e.is0();t??=o?On:r.inv(a);let s=c(n*t),l=c(i*t),u=r.mul(a,t);if(o)return{x:En,y:S};if(u!==S)throw Error(`invZ was invalid`);return{x:s,y:l}}),m=_e(e=>{let{a:t,d:n}=a;if(e.is0())throw Error(`bad point: ZERO`);let{X:r,Y:i,Z:o,T:s}=e,l=c(r*r),u=c(i*i),d=c(o*o),f=c(d*d),p=c(l*t);if(c(d*c(p+u))!==c(f+c(n*c(l*u))))throw Error(`bad point: equation left != right (1)`);if(c(r*i)!==c(o*s))throw Error(`bad point: equation left != right (2)`);return!0});class h{constructor(e,t,n,r){this.X=u(`x`,e),this.Y=u(`y`,t),this.Z=u(`z`,n,!0),this.T=u(`t`,r),Object.freeze(this)}static CURVE(){return a}static fromAffine(e){if(e instanceof h)throw Error(`extended point not allowed`);let{x:t,y:n}=e||{};return u(`x`,t),u(`y`,n),new h(t,n,S,c(t*n))}static fromBytes(e,t=!1){let n=r.BYTES,{a:i,d:o}=a;e=ge(ce(e,n,`point`)),de(t,`zip215`);let u=ge(e),d=e[n-1];u[n-1]=d&-129;let f=b(u),p=t?s:r.ORDER;ie(`point.y`,f,En,p);let m=c(f*f),g=c(m-S),_=c(o*m-i),{isValid:v,value:y}=l(g,_);if(!v)throw Error(`bad point: invalid y coordinate`);let ee=(y&S)===S,te=!!(d&128);if(!t&&y===En&&te)throw Error(`bad point: x=0 and x_0=1`);return te!==ee&&(y=c(-y)),h.fromAffine({x:y,y:f})}static fromHex(e,t=!1){return h.fromBytes(ve(`point`,e),t)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(e=8,t=!0){return g.createCache(this,e),t||this.multiply(Dn),this}assertValidity(){m(this)}equals(e){f(e);let{X:t,Y:n,Z:r}=this,{X:i,Y:a,Z:o}=e,s=c(t*o),l=c(i*r),u=c(n*o),d=c(a*r);return s===l&&u===d}is0(){return this.equals(h.ZERO)}negate(){return new h(c(-this.X),this.Y,this.Z,c(-this.T))}double(){let{a:e}=a,{X:t,Y:n,Z:r}=this,i=c(t*t),o=c(n*n),s=c(Dn*c(r*r)),l=c(e*i),u=t+n,d=c(c(u*u)-i-o),f=l+o,p=f-s,m=l-o,g=c(d*p),_=c(f*m),v=c(d*m),y=c(p*f);return new h(g,_,y,v)}add(e){f(e);let{a:t,d:n}=a,{X:r,Y:i,Z:o,T:s}=this,{X:l,Y:u,Z:d,T:p}=e,m=c(r*l),g=c(i*u),_=c(s*n*p),v=c(o*d),y=c((r+i)*(l+u)-m-g),b=v-_,ee=v+_,te=c(g-t*m),ne=c(y*b),re=c(ee*te),x=c(y*te),ie=c(b*ee);return new h(ne,re,ie,x)}subtract(e){return this.add(e.negate())}multiply(e){if(!i.isValidNot0(e))throw Error(`invalid scalar: expected 1 <= sc < curve.n`);let{p:t,f:n}=g.cached(this,e,e=>ue(h,e));return ue(h,[t,n])[0]}multiplyUnsafe(e,t=h.ZERO){if(!i.isValid(e))throw Error(`invalid scalar: expected 0 <= sc < curve.n`);return e===En?h.ZERO:this.is0()||e===S?this:g.unsafe(this,e,e=>ue(h,e),t)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}isTorsionFree(){return g.unsafe(this,a.n).is0()}toAffine(e){return p(this,e)}clearCofactor(){return o===S?this:this.multiplyUnsafe(o)}toBytes(){let{x:e,y:t}=this.toAffine(),n=r.toBytes(t);return n[n.length-1]|=e&S?128:0,n}toHex(){return d(this.toBytes())}toString(){return`<Point ${this.is0()?`ZERO`:this.toHex()}>`}get ex(){return this.X}get ey(){return this.Y}get ez(){return this.Z}get et(){return this.T}static normalizeZ(e){return ue(h,e)}static msm(e,t){return pe(h,i,e,t)}_setWindowSize(e){this.precompute(e)}toRawBytes(){return this.toBytes()}}h.BASE=new h(a.Gx,a.Gy,S,c(a.Gx*a.Gy)),h.ZERO=new h(En,S,S,En),h.Fp=r,h.Fn=i;let g=new ne(h,i.BITS);return h.BASE.precompute(8),h}var jn=class{constructor(e){this.ep=e}static fromBytes(e){y()}static fromHex(e){y()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine(e){return this.ep.toAffine(e)}toHex(){return d(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add(e){return this.assertSame(e),this.init(this.ep.add(e.ep))}subtract(e){return this.assertSame(e),this.init(this.ep.subtract(e.ep))}multiply(e){return this.init(this.ep.multiply(e))}multiplyUnsafe(e){return this.init(this.ep.multiplyUnsafe(e))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute(e,t){return this.init(this.ep.precompute(e,t))}toRawBytes(){return this.toBytes()}};function Mn(e,t,n={}){if(typeof t!=`function`)throw Error(`"hash" function param is required`);ae(n,{},{adjustScalarBytes:`function`,randomBytes:`function`,domain:`function`,prehash:`function`,mapToCurve:`function`});let{prehash:r}=n,{BASE:i,Fp:a,Fn:o}=e,l=n.randomBytes||c,d=n.adjustScalarBytes||(e=>e),f=n.domain||((e,t,n)=>{if(de(n,`phflag`),t.length||n)throw Error(`Contexts/pre-hash are not supported`);return e});function p(e){return o.create(b(e))}function m(e){let n=ne.secretKey;e=ve(`private key`,e,n);let r=ve(`hashed private key`,t(e),2*n),i=d(r.slice(0,n));return{head:i,prefix:r.slice(n,2*n),scalar:p(i)}}function h(e){let{head:t,prefix:n,scalar:r}=m(e),a=i.multiply(r);return{head:t,prefix:n,scalar:r,point:a,pointBytes:a.toBytes()}}function g(e){return h(e).pointBytes}function _(e=Uint8Array.of(),...n){let i=s(...n);return p(t(f(i,ve(`context`,e),!!r)))}function v(e,t,n={}){e=ve(`message`,e),r&&(e=r(e));let{prefix:a,scalar:c,pointBytes:l}=h(t),u=_(n.context,a,e),d=i.multiply(u).toBytes(),f=_(n.context,d,l,e),p=o.create(u+f*c);if(!o.isValid(p))throw Error(`sign failed: invalid s`);let m=s(d,o.toBytes(p));return ce(m,ne.signature,`result`)}let y={zip215:!0};function ee(t,n,a,o=y){let{context:s,zip215:c}=o,l=ne.signature;t=ve(`signature`,t,l),n=ve(`message`,n),a=ve(`publicKey`,a,ne.publicKey),c!==void 0&&de(c,`zip215`),r&&(n=r(n));let u=l/2,d=t.subarray(0,u),f=b(t.subarray(u,l)),p,m,h;try{p=e.fromBytes(a,c),m=e.fromBytes(d,c),h=i.multiplyUnsafe(f)}catch{return!1}if(!c&&p.isSmallOrder())return!1;let g=_(s,m.toBytes(),p.toBytes(),n);return m.add(p.multiplyUnsafe(g)).subtract(h).clearCofactor().is0()}let te=a.BYTES,ne={secretKey:te,publicKey:te,signature:2*te,seed:te};function re(e=l(ne.seed)){return ce(e,ne.seed,`seed`)}function x(e){let t=se.randomSecretKey(e);return{secretKey:t,publicKey:g(t)}}function ie(e){return u(e)&&e.length===o.BYTES}function oe(t,n){try{return!!e.fromBytes(t,n)}catch{return!1}}let se={getExtendedPublicKey:h,randomSecretKey:re,isValidSecretKey:ie,isValidPublicKey:oe,toMontgomery(t){let{y:n}=e.fromBytes(t),r=ne.publicKey,i=r===32;if(!i&&r!==57)throw Error(`only defined for 25519 and 448`);let o=i?a.div(S+n,S-n):a.div(n-S,n+S);return a.toBytes(o)},toMontgomerySecret(e){let n=ne.secretKey;ce(e,n);let r=t(e.subarray(0,n));return d(r).subarray(0,n)},randomPrivateKey:re,precompute(t=8,n=e.BASE){return n.precompute(t,!1)}};return Object.freeze({keygen:x,getPublicKey:g,sign:v,verify:ee,utils:se,Point:e,lengths:ne})}function Nn(e){let t={a:e.a,d:e.d,p:e.Fp.ORDER,n:e.n,h:e.h,Gx:e.Gx,Gy:e.Gy},n={Fp:e.Fp,Fn:se(t.n,e.nBitLength,!0),uvRatio:e.uvRatio},r={randomBytes:e.randomBytes,adjustScalarBytes:e.adjustScalarBytes,domain:e.domain,prehash:e.prehash,mapToCurve:e.mapToCurve};return{CURVE:t,curveOpts:n,hash:e.hash,eddsaOpts:r}}function Pn(e,t){let n=t.Point;return Object.assign({},t,{ExtendedPoint:n,CURVE:e,nBitLength:n.Fn.BITS,nByteLength:n.Fn.BYTES})}function Fn(e){let{CURVE:t,curveOpts:n,hash:r,eddsaOpts:i}=Nn(e);return Pn(e,Mn(An(t,n),r,i))}var In=BigInt(0),Ln=BigInt(1),Rn=BigInt(2),zn=BigInt(5),Bn=BigInt(8),Vn=BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed`),Hn={p:Vn,n:BigInt(`0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed`),h:Bn,a:BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec`),d:BigInt(`0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3`),Gx:BigInt(`0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a`),Gy:BigInt(`0x6666666666666666666666666666666666666666666666666666666666666658`)};function Un(e){let t=BigInt(10),n=BigInt(20),r=BigInt(40),i=BigInt(80),a=Vn,o=e*e%a*e%a,s=x(o,Rn,a)*o%a,c=x(s,Ln,a)*e%a,l=x(c,zn,a)*c%a,u=x(l,t,a)*l%a,d=x(u,n,a)*u%a,f=x(d,r,a)*d%a,p=x(f,i,a)*f%a,m=x(p,i,a)*f%a,h=x(m,t,a)*l%a;return{pow_p_5_8:x(h,Rn,a)*e%a,b2:o}}function Wn(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var Gn=BigInt(`19681161376707505956807079304988542015446066515923890162744021073123829784752`);function Kn(e,t){let n=Vn,r=re(t*t*t,n),i=Un(e*re(r*r*t,n)).pow_p_5_8,a=re(e*r*i,n),o=re(t*a*a,n),s=a,c=re(a*Gn,n),l=o===e,u=o===re(-e,n),d=o===re(-e*Gn,n);return l&&(a=s),(u||d)&&(a=c),he(a,n)&&(a=re(-a,n)),{isValid:l||u,value:a}}var qn=se(Hn.p,{isLE:!0}),Jn=se(Hn.n,{isLE:!0}),Yn=Fn({...Hn,Fp:qn,hash:h,adjustScalarBytes:Wn,uvRatio:Kn}),Xn=Gn,Zn=BigInt(`25063068953384623474111414158702152701244531502492656460079210482610430750235`),Qn=BigInt(`54469307008909316920995813868745141605393597292927456921205312896311721017578`),$n=BigInt(`1159843021668779879193775521855586647937357759715417654439879720876111806838`),er=BigInt(`40440834346308536858101042469323190826248399146238708352240133220865137265952`),tr=e=>Kn(Ln,e),nr=BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`),rr=e=>Yn.Point.Fp.create(b(e)&nr);function ir(e){let{d:t}=Hn,n=Vn,r=e=>qn.create(e),i=r(Xn*e*e),a=r((i+Ln)*$n),o=BigInt(-1),s=r((o-t*i)*r(i+t)),{isValid:c,value:l}=Kn(a,s),u=r(l*e);he(u,n)||(u=r(-u)),c||(l=u),c||(o=i);let d=r(o*(i-Ln)*er-s),f=l*l,p=r((l+l)*s),m=r(d*Zn),h=r(Ln-f),g=r(Ln+f);return new Yn.Point(r(p*g),r(h*m),r(m*g),r(p*h))}function ar(e){l(e,64);let t=ir(rr(e.subarray(0,32))),n=ir(rr(e.subarray(32,64)));return new or(t.add(n))}var or=class e extends jn{constructor(e){super(e)}static fromAffine(t){return new e(Yn.Point.fromAffine(t))}assertSame(t){if(!(t instanceof e))throw Error(`RistrettoPoint expected`)}init(t){return new e(t)}static hashToCurve(e){return ar(ve(`ristrettoHash`,e,64))}static fromBytes(t){l(t,32);let{a:n,d:r}=Hn,i=Vn,a=e=>qn.create(e),o=rr(t);if(!te(qn.toBytes(o),t)||he(o,i))throw Error(`invalid ristretto255 encoding 1`);let s=a(o*o),c=a(Ln+n*s),u=a(Ln-n*s),d=a(c*c),f=a(u*u),p=a(n*r*d-f),{isValid:m,value:h}=tr(a(p*f)),g=a(h*u),_=a(h*g*p),v=a((o+o)*g);he(v,i)&&(v=a(-v));let y=a(c*_),b=a(v*y);if(!m||he(b,i)||y===In)throw Error(`invalid ristretto255 encoding 2`);return new e(new Yn.Point(v,y,Ln,b))}static fromHex(t){return e.fromBytes(ve(`ristrettoHex`,t,32))}static msm(t,n){return pe(e,Yn.Point.Fn,t,n)}toBytes(){let{X:e,Y:t,Z:n,T:r}=this.ep,i=Vn,a=e=>qn.create(e),o=a(a(n+t)*a(n-t)),s=a(e*t),{value:c}=tr(a(o*a(s*s))),l=a(c*o),u=a(c*s),d=a(l*u*r),f;if(he(r*d,i)){let n=a(t*Xn),r=a(e*Xn);e=n,t=r,f=a(l*Qn)}else f=u;he(e*d,i)&&(t=a(-t));let p=a((n-t)*f);return he(p,i)&&(p=a(-p)),qn.toBytes(p)}equals(e){this.assertSame(e);let{X:t,Y:n}=this.ep,{X:r,Y:i}=e.ep,a=e=>qn.create(e),o=a(t*i)===a(n*r),s=a(n*i)===a(t*r);return o||s}is0(){return this.equals(e.ZERO)}};or.BASE=new or(Yn.Point.BASE),or.ZERO=new or(Yn.Point.ZERO),or.Fp=qn,or.Fn=Jn;function sr(e){return Yn.utils.toMontgomery(ve(`pub`,e))}var cr=n(((e,t)=>{function n(e){if(e.length>=255)throw TypeError(`Alphabet too long`);for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var r=0;r<e.length;r++){var i=e.charAt(r),a=i.charCodeAt(0);if(t[a]!==255)throw TypeError(i+` is ambiguous`);t[a]=r}var o=e.length,s=e.charAt(0),c=Math.log(o)/Math.log(256),l=Math.log(256)/Math.log(o);function u(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError(`Expected Uint8Array`);if(t.length===0)return``;for(var n=0,r=0,i=0,a=t.length;i!==a&&t[i]===0;)i++,n++;for(var c=(a-i)*l+1>>>0,u=new Uint8Array(c);i!==a;){for(var d=t[i],f=0,p=c-1;(d!==0||f<r)&&p!==-1;p--,f++)d+=256*u[p]>>>0,u[p]=d%o>>>0,d=d/o>>>0;if(d!==0)throw Error(`Non-zero carry`);r=f,i++}for(var m=c-r;m!==c&&u[m]===0;)m++;for(var h=s.repeat(n);m<c;++m)h+=e.charAt(u[m]);return h}function d(e){if(typeof e!=`string`)throw TypeError(`Expected String`);if(e.length===0)return new Uint8Array;var n=0;if(e[n]!==` `){for(var r=0,i=0;e[n]===s;)r++,n++;for(var a=(e.length-n)*c+1>>>0,l=new Uint8Array(a);e[n];){var u=t[e.charCodeAt(n)];if(u===255)return;for(var d=0,f=a-1;(u!==0||d<i)&&f!==-1;f--,d++)u+=o*l[f]>>>0,l[f]=u%256>>>0,u=u/256>>>0;if(u!==0)throw Error(`Non-zero carry`);i=d,n++}if(e[n]!==` `){for(var p=a-i;p!==a&&l[p]===0;)p++;for(var m=new Uint8Array(r+(a-p)),h=r;p!==a;)m[h++]=l[p++];return m}}}function f(e){var t=d(e);if(t)return t;throw Error(`Non-base`+o+` character`)}return{encode:u,decodeUnsafe:d,decode:f}}t.exports=n})),lr=n(((e,t)=>{var n=new TextDecoder,r=e=>n.decode(e),i=new TextEncoder,a=e=>i.encode(e);function o(e,t){let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}t.exports={decodeText:r,encodeText:a,concat:o}})),ur=n(((e,t)=>{var{encodeText:n}=lr();t.exports=class{constructor(e,t,r,i){this.name=e,this.code=t,this.codeBuf=n(this.code),this.alphabet=i,this.codec=r(i)}encode(e){return this.codec.encode(e)}decode(e){for(let t of e)if(this.alphabet&&this.alphabet.indexOf(t)<0)throw Error(`invalid character '${t}' in '${e}'`);return this.codec.decode(e)}}})),dr=n(((e,t)=>{var n=(e,t,n)=>{let r={};for(let e=0;e<t.length;++e)r[t[e]]=e;let i=e.length;for(;e[i-1]===`=`;)--i;let a=new Uint8Array(i*n/8|0),o=0,s=0,c=0;for(let t=0;t<i;++t){let i=r[e[t]];if(i===void 0)throw SyntaxError(`Invalid character `+e[t]);s=s<<n|i,o+=n,o>=8&&(o-=8,a[c++]=255&s>>o)}if(o>=n||255&s<<8-o)throw SyntaxError(`Unexpected end of data`);return a},r=(e,t,n)=>{let r=t[t.length-1]===`=`,i=(1<<n)-1,a=``,o=0,s=0;for(let r=0;r<e.length;++r)for(s=s<<8|e[r],o+=8;o>n;)o-=n,a+=t[i&s>>o];if(o&&(a+=t[i&s<<n-o]),r)for(;a.length*n&7;)a+=`=`;return a};t.exports={rfc4648:e=>t=>({encode(n){return r(n,t,e)},decode(r){return n(r,t,e)}})}})),fr=n(((e,t)=>{var n=cr(),r=ur(),{rfc4648:i}=dr(),{decodeText:a,encodeText:o}=lr(),s=[[`identity`,`\0`,()=>({encode:a,decode:o}),``],[`base2`,`0`,i(1),`01`],[`base8`,`7`,i(3),`01234567`],[`base10`,`9`,n,`0123456789`],[`base16`,`f`,i(4),`0123456789abcdef`],[`base16upper`,`F`,i(4),`0123456789ABCDEF`],[`base32hex`,`v`,i(5),`0123456789abcdefghijklmnopqrstuv`],[`base32hexupper`,`V`,i(5),`0123456789ABCDEFGHIJKLMNOPQRSTUV`],[`base32hexpad`,`t`,i(5),`0123456789abcdefghijklmnopqrstuv=`],[`base32hexpadupper`,`T`,i(5),`0123456789ABCDEFGHIJKLMNOPQRSTUV=`],[`base32`,`b`,i(5),`abcdefghijklmnopqrstuvwxyz234567`],[`base32upper`,`B`,i(5),`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`],[`base32pad`,`c`,i(5),`abcdefghijklmnopqrstuvwxyz234567=`],[`base32padupper`,`C`,i(5),`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=`],[`base32z`,`h`,i(5),`ybndrfg8ejkmcpqxot1uwisza345h769`],[`base36`,`k`,n,`0123456789abcdefghijklmnopqrstuvwxyz`],[`base36upper`,`K`,n,`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ`],[`base58btc`,`z`,n,`123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`],[`base58flickr`,`Z`,n,`123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ`],[`base64`,`m`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`],[`base64pad`,`M`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`],[`base64url`,`u`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`],[`base64urlpad`,`U`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=`]],c=s.reduce((e,t)=>(e[t[0]]=new r(t[0],t[1],t[2],t[3]),e),{});t.exports={names:c,codes:s.reduce((e,t)=>(e[t[1]]=c[t[0]],e),{})}})),pr=n(((e,t)=>{var n=fr(),{encodeText:r,decodeText:i,concat:a}=lr();function o(e,t){if(!t)throw Error(`requires an encoded Uint8Array`);let{name:n,codeBuf:r}=d(e);return u(n,t),a([r,t],r.length+t.length)}function s(e,t){let n=d(e),i=r(n.encode(t));return a([n.codeBuf,i],n.codeBuf.length+i.length)}function c(e){e instanceof Uint8Array&&(e=i(e));let t=e[0];return[`f`,`F`,`v`,`V`,`t`,`T`,`b`,`B`,`c`,`C`,`h`,`k`,`K`].includes(t)&&(e=e.toLowerCase()),d(e[0]).decode(e.substring(1))}function l(e){if(e instanceof Uint8Array&&(e=i(e)),Object.prototype.toString.call(e)!==`[object String]`)return!1;try{return d(e[0]).name}catch{return!1}}function u(e,t){d(e).decode(i(t))}function d(e){if(Object.prototype.hasOwnProperty.call(n.names,e))return n.names[e];if(Object.prototype.hasOwnProperty.call(n.codes,e))return n.codes[e];throw Error(`Unsupported encoding: ${e}`)}function f(e){return e instanceof Uint8Array&&(e=i(e)),d(e[0])}e=t.exports=o,e.encode=s,e.decode=c,e.isEncoded=l,e.encoding=d,e.encodingFromData=f;var p=Object.freeze(n.names),m=Object.freeze(n.codes);e.names=p,e.codes=m}))(),mr=t(we(),1);function hr(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function gr(){let e=new Map;return function(t,n){try{let r;function i(i){if(r)return i;let a=e.get(t.didUrl);return a===void 0?Promise.resolve(n()).then(function(n){return n.didResolutionMetadata?.error!==`notFound`&&e.set(t.didUrl,n),n}):a}let a=function(){if(t.params&&t.params[`no-cache`]===`true`)return Promise.resolve(n()).then(function(e){return r=1,e})}();return Promise.resolve(a&&a.then?a.then(i):i(a))}catch(e){return Promise.reject(e)}}}function _r(e,t){return t()}var vr=`(?:[a-zA-Z0-9._-]|(?:%[0-9a-fA-F]{2}))`,yr=`([a-z0-9]+)`,br=`((?:${vr}*:)*(${vr}+))`,xr=`[a-zA-Z0-9_.:%-]`,Sr=RegExp(`^did:${yr}:${br}${`((${`;${xr}+=${xr}*`})*)`}(/[^#?]*)?([?][^#]*)?(#.*)?$`);function Cr(e){if(e===``||!e)return null;let t=e.match(Sr);if(t){let n={did:`did:${t[1]}:${t[2]}`,method:t[1],id:t[2],didUrl:e};if(t[4]){let e=t[4].slice(1).split(`;`);n.params={};for(let t of e){let e=t.split(`=`);n.params[e[0]]=e[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 wr={didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};function Tr(e){return function(t,n,r){try{return Promise.resolve(hr(function(){return Promise.resolve(e(t,n,r)).then(function(e){return{...wr,didResolutionMetadata:{contentType:`application/did+ld+json`},didDocument:e}})},function(e){return{...wr,didResolutionMetadata:{error:`notFound`,message:e.toString()}}}))}catch(e){return Promise.reject(e)}}}var Er=class{constructor(e={},t={}){this.registry=void 0,this.cache=void 0,this.registry=e,this.cache=t.cache===!0?gr():t.cache||_r,t.legacyResolvers&&Object.keys(t.legacyResolvers).map(e=>{this.registry[e]||(this.registry[e]=Tr(t.legacyResolvers[e]))})}resolve(e,t={}){try{let n=this,r=Cr(e);if(r===null)return Promise.resolve({...wr,didResolutionMetadata:{error:`invalidDid`}});let i=n.registry[r.method];return i?Promise.resolve(n.cache(r,()=>i(r.did,r,n,t))):Promise.resolve({...wr,didResolutionMetadata:{error:`unsupportedDidMethod`}})}catch(e){return Promise.reject(e)}}},Dr=e=>Object.freeze(e());function Or(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1}function kr(e){if(!Or(e))throw TypeError(`Uint8Array expected`)}function Ar(e,t){return Array.isArray(t)?t.length===0?!0:e?t.every(e=>typeof e==`string`):t.every(e=>Number.isSafeInteger(e)):!1}function jr(e){if(typeof e!=`function`)throw TypeError(`function expected`);return!0}function Mr(e,t){if(typeof t!=`string`)throw TypeError(`${e}: string expected`);return!0}function Nr(e,t=`number`){if(typeof e!=`number`)throw TypeError(`${t}: expected number, got ${typeof e}`);if(!Number.isSafeInteger(e))throw RangeError(`${t}: expected safe integer, got ${e}`)}function Pr(e,t){if(!Ar(!1,t))throw TypeError(`${e}: array of numbers expected`)}var Fr=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function Ir(e,t=e.length){let n=Array(t);for(let r=0;r<t;r++)n[r]=e[r];return n}var Lr=(()=>{try{let e=new TextDecoder;return e.decode(Uint8Array.of(65,48,43,127))===`A0+`?e:void 0}catch{return}})(),Rr=8192;function zr(e){let t=e.length;if(Lr!==void 0&&t>=12)return Lr.decode(e);if(t<=Rr)return String.fromCharCode.apply(null,e);let n=``;for(let r=0;r<t;r+=Rr)n+=String.fromCharCode.apply(null,e.subarray(r,r+Rr));return n}function Br(e){if(Nr(e),e<=0||e>8)throw RangeError(`radix2: bits should be in (0..8]`);let t=Fr[e]-1;return{encode:n=>{kr(n);let r=n.length,i=new Uint8Array(Math.ceil(r*8/e)),a=0,o=0,s=0;for(let c=0;c<r;)for(c+2<r?(a=a<<24|n[c]<<16|n[c+1]<<8|n[c+2],o+=24,c+=3):(a=(a<<8|n[c])&65535,o+=8,c++);o-=e,i[s++]=a>>o&t,!(o<e););return o>0&&(i[s]=a<<e-o&t),i},decode:t=>{let n=t.length,r=new Uint8Array(Math.floor(n*e/8)),i=0,a=0,o=0;for(let s=0;s<n;s++)for(i=(i<<e|t[s])&65535,a+=e;a>=8;a-=8)r[o++]=i>>a-8&255;if(i=i<<8-a&255,a>=e)throw Error(`Excess padding`);if(i>0)throw Error(`Non-zero padding: ${i}`);return r}}}function Vr(e,t){let n=e.length;if(n>128)throw Error(`alphabet: max 128 letters`);let r=new Uint8Array(n),i=new Int8Array(128).fill(-1);for(let t=0;t<n;t++){let n=e.charCodeAt(t);if(e.codePointAt(t)!==n||n>127)throw Error(`alphabet: single-char ASCII letters only`);r[t]=n,i[n]=t}if(t!==void 0)for(let e of Object.keys(t)){let n=e.charCodeAt(0),r=i[t[e].charCodeAt(0)];if(e.length!==1||n>127||r===void 0||r===-1)throw Error(`alphabet: invalid alias ${e}`);i[n]=r}return{encode:e=>{let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){let i=e[n],a=r[i];if(a===void 0)throw Error(`alphabet.encode: invalid digit ${i}`);t[n]=a}return zr(t)},decode:t=>{Mr(`decode`,t);let n=t.length,r=new Uint8Array(n);for(let a=0;a<n;a++){let n=t.charCodeAt(a),o=n<128?i[n]:-1;if(o===-1)throw Error(`Unknown letter "${t[a]}". Allowed: ${e}`);r[a]=o}return r}}}function Hr(e){return jr(e),function(...t){try{return e.apply(null,t)}catch{}}}var Ur=Vr(`qpzry9x8gf2tvdw0s3jn54khce6mua7l`),Wr=/^[\x21-\x60\x7b-\x7e]+$/;function Gr(e,t){for(let n=0;n<t.length;n++){let r=t.charCodeAt(n);if(r<33||r>126)throw Error(`${e}: printable ASCII expected`)}}function Kr(e){let t=e.length,n=new Uint8Array(t);for(let r=0;r<t;r++){let t=e[r];if(t<0||t>=32)throw Error(`alphabet.encode: invalid digit ${t}`);n[r]=t}return n}var qr=[996825010,642813549,513874426,1027748829,705979059];function Jr(e){let t=e>>25,n=(e&33554431)<<5;for(let e=0;e<qr.length;e++)(t>>e&1)==1&&(n^=qr[e]);return n}function Yr(e,t,n=1){let r=e.length,i=1;for(let t=0;t<r;t++){let n=e.charCodeAt(t);if(n<33||n>126)throw Error(`Invalid prefix (${e})`);i=Jr(i)^n>>5}i=Jr(i);for(let t=0;t<r;t++)i=Jr(i)^e.charCodeAt(t)&31;for(let e of t)i=Jr(i)^e;for(let e=0;e<6;e++)i=Jr(i);i^=n;let a=new Uint8Array(6);for(let e=0;e<6;e++)a[e]=i>>>5*(5-e)&31;return Ur.encode(a)}function Xr(e){let t=e===`bech32`?1:734539939,n=Br(5),r=e=>{kr(e);let t=e.length,n=Array(Math.ceil(t*8/5)),r=0,i=0,a=0;for(let o=0;o<t;o++)for(r=r<<8|e[o],i+=8;i>=5;i-=5)n[a++]=r>>i-5&31;return i>0&&(n[a]=r<<5-i&31),n},i=e=>{Pr(`radix2.decode`,e);let t=e.length,r=new Uint8Array(t);for(let n=0;n<t;n++){let t=e[n];if(t<0||t>=32)throw Error(`convertRadix2: invalid word=${t}`);r[n]=t}return n.decode(r)},a=Hr(i);function o(e,n,r=90){Mr(`bech32.encode prefix`,e),r!==!1&&Nr(r,`limit`),Or(n)&&(n=Ir(n)),Pr(`bech32.encode`,n);let i=e.length;if(i===0)throw TypeError(`Invalid prefix length ${i}`);let a=i+7+n.length;if(r!==!1&&a>r)throw TypeError(`Length ${a} exceeds limit ${r}`);Gr(`bech32.encode prefix`,e);let o=e.toLowerCase(),s=Yr(o,n,t);return`${o}1${Ur.encode(Kr(n))}${s}`}function s(e,n=90){Mr(`bech32.decode input`,e),n!==!1&&Nr(n,`limit`);let r=e.length;if(r<8||n!==!1&&r>n)throw TypeError(`invalid string length ${r}, expected (8..${n})`);let i=e.toLowerCase();if(e!==i&&!Wr.test(e))throw Gr(`bech32.decode input`,e),Error(`mixed-case string not allowed`);let a=i.lastIndexOf(`1`);if(a===0||a===-1)throw Error(`invalid separator "1"`);let o=i.slice(0,a),s=i.slice(a+1);if(s.length<6)throw Error(`invalid data length`);let c=Ur.decode(s),l=Ir(c,c.length-6),u=Yr(o,l,t);if(!s.endsWith(u))throw Error(`Invalid checksum in ${e}`);return{prefix:o,words:l}}let c=Hr(s);function l(e,t=90){let{prefix:n,words:r}=s(e,t);return{prefix:n,words:r,bytes:i(r)}}function u(e,t){return o(e,r(t))}return{encode:o,decode:s,encodeFromBytes:u,decodeToBytes:l,decodeUnsafe:c,fromWords:i,fromWordsUnsafe:a,toWords:r}}var Zr=Dr(()=>Xr(`bech32`)),Qr={toString:Se,fromString:be,concat:xe};function $r(e){return Qr.toString(e,`base64url`)}function ei(e){let t=e.replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=/g,``);return Qr.fromString(t,`base64url`)}function ti(e){return Qr.fromString(e,`base58btc`)}function ni(e){return Qr.toString(e,`base58btc`)}var ri={ES256:[`JsonWebKey2020`,`Multikey`,`EcdsaSecp256r1VerificationKey2019`],ES256K:[`EcdsaSecp256k1VerificationKey2019`,`EcdsaSecp256k1RecoveryMethod2020`,`Secp256k1VerificationKey2018`,`Secp256k1SignatureVerificationKey2018`,`EcdsaPublicKeySecp256k1`,`JsonWebKey2020`,`Multikey`],"ES256K-R":[`EcdsaSecp256k1VerificationKey2019`,`EcdsaSecp256k1RecoveryMethod2020`,`Secp256k1VerificationKey2018`,`Secp256k1SignatureVerificationKey2018`,`EcdsaPublicKeySecp256k1`,`ConditionalProof2022`,`JsonWebKey2020`,`Multikey`],Ed25519:[`ED25519SignatureVerification`,`Ed25519VerificationKey2018`,`Ed25519VerificationKey2020`,`JsonWebKey2020`,`Multikey`],EdDSA:[`ED25519SignatureVerification`,`Ed25519VerificationKey2018`,`Ed25519VerificationKey2020`,`JsonWebKey2020`,`Multikey`]},ii={Secp256k1SignatureVerificationKey2018:`Secp256k1`,Secp256k1VerificationKey2018:`Secp256k1`,EcdsaSecp256k1VerificationKey2019:`Secp256k1`,EcdsaPublicKeySecp256k1:`Secp256k1`,EcdsaSecp256k1RecoveryMethod2020:`Secp256k1`,EcdsaSecp256r1VerificationKey2019:`P-256`,Ed25519VerificationKey2018:`Ed25519`,Ed25519VerificationKey2020:`Ed25519`,ED25519SignatureVerification:`Ed25519`,X25519KeyAgreementKey2019:`X25519`,X25519KeyAgreementKey2020:`X25519`,ConditionalProof2022:void 0,JsonWebKey2020:void 0,Multikey:void 0},ai={"ed25519-pub":237,"x25519-pub":236,"secp256k1-pub":231,"bls12_381-g1-pub":234,"bls12_381-g2-pub":235,"p256-pub":4608},oi={"bls12_381-g1-pub":`Bls12381G1`,"bls12_381-g2-pub":`Bls12381G2`,"ed25519-pub":`Ed25519`,"p256-pub":`P-256`,"secp256k1-pub":`Secp256k1`,"x25519-pub":`X25519`};function si(e){if(e.publicKeyBase58)return{keyBytes:ti(e.publicKeyBase58),keyType:ii[e.type]};if(e.publicKeyBase64)return{keyBytes:ei(e.publicKeyBase64),keyType:ii[e.type]};if(e.publicKeyHex)return{keyBytes:li(e.publicKeyHex),keyType:ii[e.type]};if(e.publicKeyJwk&&e.publicKeyJwk.crv===`secp256k1`&&e.publicKeyJwk.x&&e.publicKeyJwk.y)return{keyBytes:Sn.ProjectivePoint.fromAffine({x:pi(ei(e.publicKeyJwk.x)),y:pi(ei(e.publicKeyJwk.y))}).toRawBytes(!1),keyType:`Secp256k1`};if(e.publicKeyJwk&&e.publicKeyJwk.crv===`P-256`&&e.publicKeyJwk.x&&e.publicKeyJwk.y)return{keyBytes:me.ProjectivePoint.fromAffine({x:pi(ei(e.publicKeyJwk.x)),y:pi(ei(e.publicKeyJwk.y))}).toRawBytes(!1),keyType:`P-256`};if(e.publicKeyJwk&&e.publicKeyJwk.kty===`OKP`&&[`Ed25519`,`X25519`].includes(e.publicKeyJwk.crv??``)&&e.publicKeyJwk.x)return{keyBytes:ei(e.publicKeyJwk.x),keyType:e.publicKeyJwk.crv};if(e.publicKeyMultibase){let{keyBytes:t,keyType:n}=ci(e.publicKeyMultibase);return{keyBytes:t,keyType:n??ii[e.type]}}return{keyBytes:new Uint8Array}}function ci(e){let t=(0,pr.decode)(e);if([32,33,48,64,65,96].includes(t.length))return{keyBytes:t};try{let[e,n]=Ce(t),r=Object.entries(ai).filter(([,t])=>t===e)?.[0][0]??``;return{keyBytes:t.slice(n),keyType:oi[r]}}catch{return{keyBytes:t}}}function li(e,t){let n=e.startsWith(`0x`)?e.substring(2):e;if(n.length%2!=0&&(n=`0${n}`),t){let e=Math.max(n.length,t*2);n=n.padStart(e,`00`)}return Qr.fromString(n.toLowerCase(),`base16`)}function ui(e){return $r(Qr.fromString(e))}function di(e){return Qr.toString(ei(e))}function fi(e){return Qr.toString(e,`base16`)}function pi(e){return BigInt(`0x`+Qr.toString(e,`base16`))}function mi(e){return Qr.fromString(e,`utf-8`)}function hi({r:e,s:t,recoveryParam:n},r){let i=new Uint8Array(r?65:64);if(i.set(Qr.fromString(e,`base16`),0),i.set(Qr.fromString(t,`base16`),32),r){if(n===void 0)throw Error(`Signer did not return a recoveryParam`);i[64]=n}return $r(i)}function gi(e){let t=ei(e);if(t.length<64||t.length>65)throw TypeError(`Wrong size for signature. Expected 64 or 65 bytes, but got ${t.length}`);return{r:fi(t.slice(0,32)),s:fi(t.slice(32,64)),recoveryParam:t.length===65?t[64]:void 0}}function _i(e){let t=typeof e==`string`?be(e):e;return _(t)}var vi=p;function yi(e){let t=be(e.slice(2),`base16`);return`0x${Se(vi(t).slice(-20),`base16`)}`}function bi(e){return typeof e==`object`&&`r`in e&&`s`in e}function xi(){return function(e,t){try{return Promise.resolve(t(e)).then(function(e){return bi(e)?hi(e):e})}catch(e){return Promise.reject(e)}}}function Si(e){return function(t,n){try{return Promise.resolve(n(t)).then(function(t){if(bi(t))return hi(t,e);if(e&&gi(t).recoveryParam===void 0)throw Error(`not_supported: ES256K-R not supported when signer doesn't provide a recovery param`);return t})}catch(e){return Promise.reject(e)}}}function Ci(){return function(e,t){try{return Promise.resolve(t(e)).then(function(e){if(bi(e))throw Error(`invalid_config: expected a signer function that returns a string instead of signature object`);return e})}catch(e){return Promise.reject(e)}}}var wi={ES256:xi(),ES256K:Si(),"ES256K-R":Si(!0),Ed25519:Ci(),EdDSA:Ci()};function Ti(e){let t=wi[e];if(!t)throw Error(`not_supported: Unsupported algorithm ${e}`);return t}function Ei(e,t){let n=fi(ti(t).slice(0,1))+fi(hn(_i(li(e))));return ni(li(n+fi(_i(_i(li(n)))).substring(0,8)))}function Di(e,t){let n=hn(_i(Sn.ProjectivePoint.fromHex(e).toRawBytes())),r=Zr.toWords(n);return Zr.encode(t,r).replace(t,``)}function Oi(e,t){if(t){let n=t.split(`:`);switch(n[0]){case`bip122`:n[n.length-1]=Ei(e,n[n.length-1]);break;case`cosmos`:n[n.length-1]=Di(e,n[1]);break;case`eip155`:n[n.length-1]=yi(e);break;default:return!1}return n.join(`:`).toLowerCase()===t.toLowerCase()}return!1}function ki(e,t=!1){let n=ei(e);if(n.length!==(t?65:64))throw Error(`wrong signature length`);let r={r:fi(n.slice(0,32)),s:fi(n.slice(32,64))};return t&&(r.recoveryParam=n[64]),r}function Ai(e,t=!1){let n=ei(e);if(n.length!==(t?65:64))throw Error(`wrong signature length`);return{compact:n.slice(0,64),recovery:n[64]}}function ji(e,t,n){let r=_i(e),i=me.Signature.fromCompact(Ai(t).compact),a=n.filter(e=>!e.ethereumAddress&&!e.blockchainAccountId).find(e=>{try{let{keyBytes:t}=si(e);return me.verify(i,r,t)}catch{return!1}});if(!a)throw Error(`invalid_signature: Signature invalid for JWT`);return a}function Mi(e,t,n){let r=_i(e),i=Sn.Signature.fromCompact(ei(t)).normalizeS(),a=n.filter(e=>!e.ethereumAddress&&!e.blockchainAccountId),o=n.filter(e=>e.ethereumAddress||e.blockchainAccountId),s=a.find(e=>{try{let{keyBytes:t}=si(e);return Sn.verify(i,r,t)}catch{return!1}});if(!s&&o.length>0&&(s=Ni(e,t,o)),!s)throw Error(`invalid_signature: Signature invalid for JWT`);return s}function Ni(e,t,n){let r=[];if(t.length>86)r.push(Ai(t,!0));else{let e=Ai(t,!1);r.push({...e,recovery:0}),r.push({...e,recovery:1})}let i=_i(e),a=e=>{let t=Sn.Signature.fromCompact(e.compact).addRecoveryBit(e.recovery||0).recoverPublicKey(i),r=yi(t.toHex(!1)).toLowerCase(),a=t.toHex(!1),o=t.toHex(!0);return n.find(e=>{let{keyBytes:t}=si(e),n=fi(t);return n===a||n===o||e.ethereumAddress?.toLowerCase()===r||e.blockchainAccountId?.split(`@eip155`)?.[0].toLowerCase()===r||Oi(a,e.blockchainAccountId)})};for(let e of r){let t=a(e);if(t)return t}throw Error(`invalid_signature: Signature invalid for JWT`)}function Pi(e,t,n){let r=mi(e),i=ei(t),a=n.find(e=>{let{keyBytes:t,keyType:n}=si(e);return n===`Ed25519`&&Yn.verify(i,r,t)});if(!a)throw Error(`invalid_signature: Signature invalid for JWT`);return a}var Fi={ES256:ji,ES256K:Mi,"ES256K-R":Ni,Ed25519:Pi,EdDSA:Pi};function Ii(e){let t=Fi[e];if(!t)throw Error(`not_supported: Unsupported algorithm ${e}`);return t}Ii.toSignatureObject=ki;var C={INVALID_JWT:`invalid_jwt`,INVALID_AUDIENCE:`invalid_config`,INVALID_SIGNATURE:`invalid_signature`,NO_SUITABLE_KEYS:`no_suitable_keys`,NOT_SUPPORTED:`not_supported`,RESOLVER_ERROR:`resolver_error`};function Li(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}var Ri=function(e,{header:t,payload:n,data:r,signature:i},a,o){try{if(!a.conditionDelegated)throw Error(`Expected conditionDelegated`);if(!o.resolver)throw Error(`Expected resolver`);let s,c=a.conditionDelegated;return Promise.resolve($i(o.resolver,t.alg,c,o.proofPurpose)).then(function(l){function u(e){if(s)return a;throw Error(`${C.INVALID_SIGNATURE}: condition for authenticator ${a.id} is not met.`)}let d=l.didResolutionResult;if(!d?.didDocument)throw Error(`${C.RESOLVER_ERROR}: Could not resolve delegated DID ${c}.`);let f=l.authenticators.find(e=>e.id===c);if(!f)throw Error(`${C.NO_SUITABLE_KEYS}: Could not find delegated authenticator ${c} in it's DID Document`);let p=function(){if(f.type===qi)return Promise.resolve(ea(e,{...o,didAuthenticator:{didResolutionResult:d,authenticators:[f],issuer:f.id}})).then(function({verified:e}){e&&(s=f)});try{s=pa({header:t,payload:n,data:r,signature:i},f)}catch(e){if(!e.message.startsWith(`invalid_signature:`))throw e}}();return p&&p.then?p.then(u):u(p)})}catch(e){return Promise.reject(e)}},zi=typeof Symbol<`u`?Symbol.iterator||(Symbol.iterator=Symbol(`Symbol.iterator`)):`@@iterator`;function w(e,t,n){if(!e.s){if(n instanceof Bi){if(n.s)t&1&&(t=n.s),n=n.v;else{n.o=w.bind(null,e,t);return}}if(n&&n.then){n.then(w.bind(null,e,t),w.bind(null,e,2));return}e.s=t,e.v=n;let r=e.o;r&&r(e)}}var Bi=function(){function e(){}return e.prototype.then=function(t,n){let r=new e,i=this.s;if(i){let e=i&1?t:n;if(e){try{w(r,1,e(this.v))}catch(e){w(r,2,e)}return r}return this}return this.o=function(e){try{let i=e.v;e.s&1?w(r,1,t?t(i):i):n?w(r,1,n(i)):w(r,2,i)}catch(e){w(r,2,e)}},r},e}();function Vi(e){return e instanceof Bi&&e.s&1}function Hi(e,t,n){var r=-1,i,a;function o(s){try{for(;++r<e.length&&(!n||!n());)if(s=t(r),s&&s.then){if(Vi(s))s=s.v;else{s.then(o,a||=w.bind(null,i=new Bi,2));return}}i?w(i,1,s):i=s}catch(e){w(i||=new Bi,2,e)}}return o(),i}var Ui=function(e,{header:t,payload:n,data:r,signature:i},a,o){try{let s;function c(e){if(s)return e;throw Error(`${C.INVALID_SIGNATURE}: condition for authenticator ${a.id} is not met.`)}if(!a.conditionWeightedThreshold||!a.threshold)throw Error(`Expected conditionWeightedThreshold and threshold`);let l=[],u=a.threshold,d=0,f=Wi(a.conditionWeightedThreshold,function(c){function f(e){if(s)return e;if(m&&!l.includes(m.id)&&(l.push(m.id),d+=c.weight,d>=u))return s=1,a}let p=c.condition,m,h=Li(function(){if(p.type===qi){if(!o.didAuthenticator)throw Error(`Expected didAuthenticator`);let t={...o,didAuthenticator:{didResolutionResult:o.didAuthenticator?.didResolutionResult,authenticators:[p],issuer:p.id}};return Promise.resolve(ea(e,t)).then(function({verified:e}){e&&(m=p)})}return Promise.resolve(pa({header:t,payload:n,data:r,signature:i},p)).then(function(e){m=e})},function(e){if(!e.message.startsWith(C.INVALID_SIGNATURE))throw e});return h&&h.then?h.then(f):f(h)},function(){return s});return Promise.resolve(f&&f.then?f.then(c):c(f))}catch(e){return Promise.reject(e)}};function Wi(e,t,n){if(typeof e[zi]==`function`){var r=e[zi](),i,a,o;function c(e){try{for(;!(i=r.next()).done&&(!n||!n());)if(e=t(i.value),e&&e.then){if(Vi(e))e=e.v;else{e.then(c,o||=w.bind(null,a=new Bi,2));return}}a?w(a,1,e):a=e}catch(e){w(a||=new Bi,2,e)}}if(c(),r.return){var s=function(e){try{i.done||r.return()}catch{}return e};if(a&&a.then)return a.then(s,function(e){throw s(e)});s()}return a}if(!(`length`in e))throw TypeError(`Object is not iterable`);for(var c=[],l=0;l<e.length;l++)c.push(e[l]);return Hi(c,function(e){return t(c[e])},n)}var Gi=function(e,{header:t,payload:n,signature:r,data:i},a,o){try{if(a.conditionWeightedThreshold)return Ui(e,{header:t,payload:n,data:i,signature:r},a,o);if(a.conditionDelegated)return Ri(e,{header:t,payload:n,data:i,signature:r},a,o);throw Error(`${C.INVALID_JWT}: conditional proof type did not find condition for authenticator ${a.id}.`)}catch(e){return Promise.reject(e)}},Ki=function(e,{header:t,payload:n,signature:r,data:i},a,o){try{return a.type===qi?Gi(e,{payload:n,header:t,signature:r,data:i},a,o):Promise.resolve(pa({header:t,payload:n,data:i,signature:r},[a]))}catch(e){return Promise.reject(e)}},qi=`ConditionalProof2022`;function T(e,t,n){if(!e.s){if(n instanceof Ji){if(n.s)t&1&&(t=n.s),n=n.v;else{n.o=T.bind(null,e,t);return}}if(n&&n.then){n.then(T.bind(null,e,t),T.bind(null,e,2));return}e.s=t,e.v=n;let r=e.o;r&&r(e)}}var Ji=function(){function e(){}return e.prototype.then=function(t,n){let r=new e,i=this.s;if(i){let e=i&1?t:n;if(e){try{T(r,1,e(this.v))}catch(e){T(r,2,e)}return r}return this}return this.o=function(e){try{let i=e.v;e.s&1?T(r,1,t?t(i):i):n?T(r,1,n(i)):T(r,2,i)}catch(e){T(r,2,e)}},r},e}();function Yi(e){return e instanceof Ji&&e.s&1}function Xi(e,t,n){var r=-1,i,a;function o(s){try{for(;++r<e.length&&(!n||!n());)if(s=t(r),s&&s.then){if(Yi(s))s=s.v;else{s.then(o,a||=T.bind(null,i=new Ji,2));return}}i?T(i,1,s):i=s}catch(e){T(i||=new Ji,2,e)}}return o(),i}function Zi(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function Qi(e,t,n){for(var r;;){var i=e();if(Yi(i)&&(i=i.v),!i)return a;if(i.then){r=0;break}var a=n();if(a&&a.then){if(Yi(a))a=a.s;else{r=1;break}}if(t){var o=t();if(o&&o.then&&!Yi(o)){r=2;break}}}var s=new Ji,c=T.bind(null,s,2);return(r===0?i.then(u):r===1?a.then(l):o.then(d)).then(void 0,c),s;function l(r){a=r;do{if(t&&(o=t(),o&&o.then&&!Yi(o))){o.then(d).then(void 0,c);return}if(i=e(),!i||Yi(i)&&!i.v){T(s,1,a);return}if(i.then){i.then(u).then(void 0,c);return}a=n(),Yi(a)&&(a=a.v)}while(!a||!a.then);a.then(l).then(void 0,c)}function u(e){e?(a=n(),a&&a.then?a.then(l).then(void 0,c):l(a)):T(s,1,a)}function d(){(i=e())?i.then?i.then(u).then(void 0,c):u(i):T(s,1,a)}}var $i=function(e,t,n,r){try{let i=ri[t];if(!i||i.length===0)throw Error(`${C.NOT_SUPPORTED}: No supported signature types for algorithm ${t}`);let a;return Promise.resolve(e.resolve(n,{accept:ca})).then(function(e){if(a=Object.getOwnPropertyNames(e).indexOf(`didDocument`)===-1?{didDocument:e,didDocumentMetadata:{},didResolutionMetadata:{contentType:ca}}:e,a.didResolutionMetadata?.error||a.didDocument==null){let{error:e,message:t}=a.didResolutionMetadata;throw Error(`${C.RESOLVER_ERROR}: Unable to resolve DID document for ${n}: ${e}, ${t||``}`)}let o=(e,t)=>{let n=e.filter(({id:e})=>t===e);return n.length>0?n[0]:null},s=[...a?.didDocument?.verificationMethod||[],...a?.didDocument?.publicKey||[]];typeof r==`string`&&(r.startsWith(`assertion`)&&!Object.getOwnPropertyNames(a?.didDocument).includes(`assertionMethod`)&&(a.didDocument={...a.didDocument},a.didDocument.assertionMethod=[...s.map(e=>e.id)]),s=(a.didDocument[r]||[]).map(e=>typeof e==`string`?o(s,e):typeof e.publicKey==`string`?o(s,e.publicKey):e).filter(e=>e!=null));let c=s.filter(({type:e})=>i.find(t=>t===e));if(typeof r==`string`&&(!c||c.length===0))throw Error(`${C.NO_SUITABLE_KEYS}: DID document for ${n} does not have public keys suitable for ${t} with ${r} purpose`);if(!c||c.length===0)throw Error(`${C.NO_SUITABLE_KEYS}: DID document for ${n} does not have public keys for ${t}`);return{authenticators:c,issuer:n,didResolutionResult:a}})}catch(e){return Promise.reject(e)}},ea=function(e,t={resolver:void 0,auth:void 0,audience:void 0,callbackUrl:void 0,skewTime:void 0,proofPurpose:void 0,policies:{},didAuthenticator:void 0}){try{function n(){function n(n){if(f){let n=typeof t.policies?.now==`number`?t.policies.now:Math.floor(Date.now()/1e3),i=t.skewTime!==void 0&&t.skewTime>=0?t.skewTime:ua,a=n+i;if(t.policies?.nbf!==!1&&r.nbf){if(r.nbf>a)throw Error(`${C.INVALID_JWT}: JWT not valid before nbf: ${r.nbf}`)}else if(t.policies?.iat!==!1&&r.iat&&r.iat>a)throw Error(`${C.INVALID_JWT}: JWT not valid yet (issued in the future) iat: ${r.iat}`);if(t.policies?.exp!==!1&&r.exp&&r.exp<=n-i)throw Error(`${C.INVALID_JWT}: JWT has expired: exp: ${r.exp} < now: ${n}`);if(t.policies?.aud!==!1&&r.aud){if(!t.audience&&!t.callbackUrl)throw Error(`${C.INVALID_AUDIENCE}: JWT audience is required but your app address has not been configured`);if((Array.isArray(r.aud)?r.aud:[r.aud]).find(e=>t.audience===e||t.callbackUrl===e)===void 0)throw Error(`${C.INVALID_AUDIENCE}: JWT audience does not match your DID or callback url`)}return{verified:!0,payload:r,didResolutionResult:d,issuer:u,signer:f,jwt:e,policies:t.policies}}throw Error(`${C.INVALID_SIGNATURE}: JWT not valid. issuer DID document does not contain a verificationMethod that matches the signature.`)}let{did:s}=Cr(c),f=null,p=function(){if(s!==c){let n=l.find(e=>e.id===c);if(!n)throw Error(`${C.INVALID_JWT}: No authenticator found for did URL ${c}`);return Promise.resolve(Ki(e,{payload:r,header:i,signature:a,data:o},n,t)).then(function(e){f=e})}{let n=0;return Qi(function(){return!f&&n<l.length},void 0,function(){function s(e){n++}let c=l[n],u=Zi(function(){return Promise.resolve(Ki(e,{payload:r,header:i,signature:a,data:o},c,t)).then(function(e){f=e})},function(e){if(!e.message.includes(C.INVALID_SIGNATURE)||n===l.length-1)throw e});return u&&u.then?u.then(s):s(u)})}}();return p&&p.then?p.then(n):n(p)}if(!t.resolver)throw Error(`missing_resolver: No DID resolver has been configured`);let{payload:r,header:i,signature:a,data:o}=fa(e,!1),s=Object.prototype.hasOwnProperty.call(t,`auth`)?t.auth?`authentication`:void 0:t.proofPurpose,c;if(!r.iss&&!r.client_id)throw Error(`${C.INVALID_JWT}: JWT iss or client_id are required`);if(t.didAuthenticator)c=t.didAuthenticator.issuer;else if(r.iss===ia||r.iss===aa){if(!r.sub)throw Error(`${C.INVALID_JWT}: JWT sub is required`);c=r.sub_jwk===void 0?r.sub:(i.kid||``).split(`#`)[0]}else if(r.iss===oa){if(!r.did)throw Error(`${C.INVALID_JWT}: JWT did is required`);c=r.did}else if(!r.iss&&r.scope===`openid`&&r.redirect_uri){if(!r.client_id)throw Error(`${C.INVALID_JWT}: JWT client_id is required`);c=r.client_id}else c=r.iss;if(!c)throw Error(`${C.INVALID_JWT}: No DID has been found in the JWT`);let l,u,d,f=function(){if(t.didAuthenticator)({didResolutionResult:d,authenticators:l,issuer:u}=t.didAuthenticator);else return Promise.resolve($i(t.resolver,i.alg,c,s)).then(function(e){({didResolutionResult:d,authenticators:l,issuer:u}=e),t.didAuthenticator={didResolutionResult:d,authenticators:l,issuer:u}})}();return Promise.resolve(f&&f.then?f.then(n):n(f))}catch(e){return Promise.reject(e)}},ta=function(e,{expiresIn:t,canonicalize:n},r){try{if(r.length===0)throw Error(`invalid_argument: must provide one or more issuers`);let i=e,a=``,o=Xi(r,function(e){let o=r[e],s={typ:`JWT`,alg:o.alg};return e!==0&&(s.cty=`JWT`),Promise.resolve(na(i,{...o,canonicalize:n,expiresIn:t},s)).then(function(e){a=e,i={jwt:a}})});return Promise.resolve(o&&o.then?o.then(function(){return a}):a)}catch(e){return Promise.reject(e)}},na=function(e,{issuer:t,signer:n,alg:r,expiresIn:i,canonicalize:a},o={}){try{if(!n)throw Error(`missing_signer: No Signer functionality has been configured`);if(!t)throw Error(`missing_issuer: No issuing DID has been configured`);o.typ||=`JWT`,o.alg||=r;let s={iat:Math.floor(Date.now()/1e3),exp:void 0};if(i){if(typeof i==`number`)s.exp=(e.nbf||s.iat)+Math.floor(i);else throw Error(`invalid_argument: JWT expiresIn is not a number`)}return ra({...s,...e,iss:t},n,o,{canonicalize:a})}catch(e){return Promise.reject(e)}},ra=function(e,t,n={},r={}){try{n.alg||=sa;let i=typeof e==`string`?e:la(e,r.canonicalize),a=[la(n,r.canonicalize),i].join(`.`),o=Ti(n.alg);return Promise.resolve(o(a,t)).then(function(e){return[a,e].join(`.`)})}catch(e){return Promise.reject(e)}},ia=`https://self-issued.me/v2`,aa=`https://self-issued.me/v2/openid-vc`,oa=`https://self-issued.me`,sa=`ES256K`,ca=`application/did+json`;function la(e,t=!1){return ui(t?(0,mr.default)(e):JSON.stringify(e))}var ua=300;function da(e){let t=e.match(/^([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)$/);if(t)return{header:JSON.parse(di(t[1])),payload:t[2],signature:t[3],data:`${t[1]}.${t[2]}`};throw Error(`invalid_argument: Incorrect format JWS`)}function fa(e,t=!0){if(!e)throw Error(`invalid_argument: no JWT passed into decodeJWT`);try{let n=da(e),r=Object.assign(n,{payload:JSON.parse(di(n.payload))}),i=r.payload.iss;if(r.header.cty===`JWT`&&t){let e=fa(r.payload.jwt);if(e.payload.iss!==i)throw Error(`${C.INVALID_JWT}: multiple issuers`);return e}return r}catch(e){throw Error(`invalid_argument: ${C.INVALID_JWT}: ${e}`)}}function pa({header:e,payload:t,data:n,signature:r},i){Array.isArray(i)||(i=[i]);let a=t.iss,o=!0;do{if(a!==t.iss)throw Error(`${C.INVALID_JWT}: multiple issuers`);try{return Ii(e.alg)(n,r,i)}catch(e){if(!e.message.startsWith(C.INVALID_SIGNATURE))throw e}e.cty===`JWT`?{payload:t,header:e,signature:r,data:n}=fa(t.jwt,!1):o=!1}while(o);throw Error(`${C.INVALID_SIGNATURE}: no matching public key found`)}typeof Symbol<`u`&&(Symbol.iterator||(Symbol.iterator=Symbol(`Symbol.iterator`)));var ma=`ES256K`,ha=/^[A-Za-z0-9-_=]+\.[A-Za-z0-9-_=]+\.?[A-Za-z0-9-_.+/=]*$/,ga=`https://www.w3.org/2018/credentials/v1`,_a=`VerifiableCredential`,va=`JwtProof2020`,ya=[`evidence`,`termsOfUse`,`refreshService`,`credentialSchema`,`credentialStatus`];function ba(e){return Array.isArray(e)?e:[e]}function xa(e){return Array.isArray(e)?e.map(e=>xa(e)):e instanceof Date?new Date(e.getTime()):e&&typeof e==`object`?Object.getOwnPropertyNames(e).reduce((t,n)=>(Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n)),t[n]=xa(e[n]),t),Object.create(Object.getPrototypeOf(e))):e}function Sa(e){return e!=null}function Ca(e){if(typeof e!=`object`||!e)return e;let t={...e};return Object.keys(t).forEach(e=>t[e]===void 0&&delete t[e]),t}function wa(e){return typeof e==`object`&&e.sub&&e.iss&&e.claim&&e.iat}function Ta(e){let{iat:t,nbf:n,claim:r,vc:i,...a}=e,o={...a,nbf:n||t,vc:{"@context":[ga],type:[_a],credentialSubject:r}};return i&&(e.issVc=i),o}function Ea(e,t=!0){let n=xa(e);wa(e)&&(n=Ta(e)),n.credentialSubject={...e.credentialSubject,...e.vc?.credentialSubject},e.sub&&!e.credentialSubject?.id&&n.credentialSubject&&(n.credentialSubject.id=e.sub,t&&delete n.sub),t&&delete n.vc?.credentialSubject,(e.issuer===void 0||typeof e.issuer==`object`)&&(n.issuer=Ca({id:e.iss,...e.issuer}),t&&!e.issuer?.id&&delete n.iss),!e.id&&e.jti&&(n.id=n.id||n.jti,t&&delete n.jti);let r=[...ba(n.type),...ba(n.vc?.type)].filter(Sa);n.type=[...new Set(r)],t&&delete n.vc?.type;for(let r of ya)e.vc&&e.vc[r]&&(n[r]||(n[r]=e.vc[r]),t&&delete n.vc[r]);let i=[...ba(e.context),...ba(e[`@context`]),...ba(e.vc?.[`@context`])].filter(Sa);return n[`@context`]=[...new Set(i)],t&&(delete n.context,delete n.vc?.[`@context`]),!e.issuanceDate&&(e.iat||e.nbf)&&(n.issuanceDate=new Date((e.nbf||e.iat)*1e3).toISOString(),t&&(e.nbf?delete n.nbf:delete n.iat)),!e.expirationDate&&e.exp&&(n.expirationDate=new Date(e.exp*1e3).toISOString(),t&&delete n.exp),t&&n.vc&&Object.keys(n.vc).length===0&&delete n.vc,n}function Da(e,t=!0){let n;try{n=fa(e)}catch{throw TypeError(`unknown credential format`)}return{...Ea(n.payload,t),proof:{type:va,jwt:e}}}function Oa(e,t=!0){if(typeof e==`string`){if(ha.test(e))return Da(e,t);{let n;try{n=JSON.parse(e)}catch{throw TypeError(`unknown credential format`)}return Oa(n,t)}}return e.proof?.jwt?xa({...Da(e.proof.jwt,t),proof:e.proof}):{proof:{},...Ea(e,t)}}function ka(e,t=!0){if(Array.isArray(e.credentialSubject))throw Error(`credentialSubject of type array not supported`);let n=xa({vc:{...e.vc},...e});n.vc=n.vc;let r={...e.credentialSubject,...e.vc?.credentialSubject};e.sub||(n.sub=e.credentialSubject?.id,t&&delete r.id);let i=[...ba(e.context),...ba(e[`@context`]),...ba(e.vc?.[`@context`])].filter(Sa);n.vc[`@context`]=[...new Set(i)],t&&(delete n.context,delete n[`@context`]);let a=[...ba(e.type),...ba(e.vc?.type)].filter(Sa);if(n.vc.type=[...new Set(a)],t&&delete n.type,e.id&&Object.getOwnPropertyNames(e).indexOf(`jti`)===-1&&(n.jti=e.id,t&&delete n.id),e.issuanceDate&&Object.getOwnPropertyNames(e).indexOf(`nbf`)===-1){let r=Date.parse(e.issuanceDate);isNaN(r)||(n.nbf=Math.floor(r/1e3),t&&delete n.issuanceDate)}if(e.expirationDate&&Object.getOwnPropertyNames(e).indexOf(`exp`)===-1){let r=Date.parse(e.expirationDate);isNaN(r)||(n.exp=Math.floor(r/1e3),t&&delete n.expirationDate)}e.issuer&&Object.getOwnPropertyNames(e).indexOf(`iss`)===-1&&(typeof e.issuer==`object`?(n.iss=e.issuer?.id,t&&(delete n.issuer.id,Object.keys(n.issuer).length===0&&delete n.issuer)):typeof e.issuer==`string`&&(n.iss=e.iss||``+e.issuer,t&&delete n.issuer)),n.vc.credentialSubject=r,t&&delete n.credentialSubject;for(let r of ya)e[r]&&(n.vc[r]||(n.vc[r]=e[r]),t&&delete n[r]);return n}var Aa={SCHEMA_ERROR:`schema_error`,FORMAT_ERROR:`format_error`,AUTH_ERROR:`auth_error`};({...Aa,...C});function ja(e){return e&&!isNaN(e)&&Object.prototype.toString.call(e)===`[object Date]`}function Ma(e){if(typeof e==`number`){if(!(Number.isInteger(e)&&e<1e11))throw TypeError(`${Aa.SCHEMA_ERROR}: "${e}" is not a unix timestamp in seconds`)}else if(typeof e==`string`)Ma(Math.floor(new Date(e).valueOf()/1e3));else if(!ja(e))throw TypeError(`${Aa.SCHEMA_ERROR}: "${e}" is not a valid time`)}function Na(e){let t=ba(e);if(t.length<1||t.indexOf(ga)===-1)throw TypeError(`${Aa.SCHEMA_ERROR}: @context is missing default context "${ga}"`)}function Pa(e){let t=ba(e);if(t.length<1||t.indexOf(_a)===-1)throw TypeError(`${Aa.SCHEMA_ERROR}: type is missing default "${_a}"`)}function Fa(e){if(Object.keys(e).length===0)throw TypeError(`${Aa.SCHEMA_ERROR}: credentialSubject must not be empty`)}var Ia=function(e,t,n={}){try{let r=n?.policies?.issuanceDate!==!1&&void 0,i=n?.policies?.expirationDate!==!1&&void 0;return n={...n,policies:{...n?.policies,nbf:r,exp:i,iat:r}},Promise.resolve(ea(e,{resolver:t,...n})).then(function(e){return e.verifiableCredential=Oa(e.jwt,n?.removeOriginalFields),n?.policies?.format!==!1&&za(e.verifiableCredential),e})}catch(e){return Promise.reject(e)}},La=function(e,t,n={}){try{let r={iat:void 0,...ka(e,n.removeOriginalFields)};if(Ra(r),Array.isArray(t)){let e=t[0].did,i=[];for(let a of t){if(a.did!==e)throw Error(`All issuers must be the same did to comply with the Verifiable Conditions spec`);i.push({issuer:a.did||r.iss||``,signer:a.signer,alg:a.alg||n.header?.alg||ma})}return Promise.resolve(ta(r,{...n},i))}return Promise.resolve(na(r,{...n,issuer:t.did||r.iss||``,signer:t.signer},{...n.header,alg:t.alg||n.header?.alg||ma}))}catch(e){return Promise.reject(e)}};function Ra(e){Na(e.vc[`@context`]),Pa(e.vc.type),Fa(e.vc.credentialSubject),e.nbf&&Ma(e.nbf),e.exp&&Ma(e.exp)}function za(e){Na(e[`@context`]),Pa(e.type),Fa(e.credentialSubject),e.issuanceDate&&Ma(e.issuanceDate),e.expirationDate&&Ma(e.expirationDate)}var Ba=n(((e,t)=>{t.exports=a;var n=128,r=-128,i=2**31;function a(e,t,o){if(2**53-1&&e>2**53-1)throw a.bytes=0,RangeError(`Could not encode varint`);t||=[],o||=0;for(var s=o;e>=i;)t[o++]=e&255|n,e/=128;for(;e&r;)t[o++]=e&255|n,e>>>=7;return t[o]=e|0,a.bytes=o-s+1,t}})),Va=n(((e,t)=>{t.exports=i;var n=128,r=127;function i(e,t){var a=0,t=t||0,o=0,s=t,c,l=e.length;do{if(s>=l||o>49)throw i.bytes=0,RangeError(`Could not decode varint`);c=e[s++],a+=o<28?(c&r)<<o:(c&r)*2**o,o+=7}while(c>=n);return i.bytes=s-t,a}})),Ha=n(((e,t)=>{var n=2**14,r=2**21,i=2**28,a=2**35,o=2**42,s=2**49,c=2**56,l=2**63;t.exports=function(e){return e<128?1:e<n?2:e<r?3:e<i?4:e<a?5:e<o?6:e<s?7:e<c?8:e<l?9:10}})),Ua=t(n(((e,t)=>{t.exports={encode:Ba(),decode:Va(),encodingLength:Ha()}}))(),1);function Wa(e){if(e instanceof Uint8Array&&e.constructor.name===`Uint8Array`)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw Error(`Unknown type, must be binary type`)}function Ga(e){return new TextEncoder().encode(e)}function Ka(e){return new TextDecoder().decode(e)}function qa(e,t){if(e.length>=255)throw TypeError(`Alphabet too long`);for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var i=0;i<e.length;i++){var a=e.charAt(i),o=a.charCodeAt(0);if(n[o]!==255)throw TypeError(a+` is ambiguous`);n[o]=i}var s=e.length,c=e.charAt(0),l=Math.log(s)/Math.log(256),u=Math.log(256)/Math.log(s);function d(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError(`Expected Uint8Array`);if(t.length===0)return``;for(var n=0,r=0,i=0,a=t.length;i!==a&&t[i]===0;)i++,n++;for(var o=(a-i)*u+1>>>0,l=new Uint8Array(o);i!==a;){for(var d=t[i],f=0,p=o-1;(d!==0||f<r)&&p!==-1;p--,f++)d+=256*l[p]>>>0,l[p]=d%s>>>0,d=d/s>>>0;if(d!==0)throw Error(`Non-zero carry`);r=f,i++}for(var m=o-r;m!==o&&l[m]===0;)m++;for(var h=c.repeat(n);m<o;++m)h+=e.charAt(l[m]);return h}function f(e){if(typeof e!=`string`)throw TypeError(`Expected String`);if(e.length===0)return new Uint8Array;var t=0;if(e[t]!==` `){for(var r=0,i=0;e[t]===c;)r++,t++;for(var a=(e.length-t)*l+1>>>0,o=new Uint8Array(a);e[t];){var u=n[e.charCodeAt(t)];if(u===255)return;for(var d=0,f=a-1;(u!==0||d<i)&&f!==-1;f--,d++)u+=s*o[f]>>>0,o[f]=u%256>>>0,u=u/256>>>0;if(u!==0)throw Error(`Non-zero carry`);i=d,t++}if(e[t]!==` `){for(var p=a-i;p!==a&&o[p]===0;)p++;for(var m=new Uint8Array(r+(a-p)),h=r;p!==a;)m[h++]=o[p++];return m}}}function p(e){var n=f(e);if(n)return n;throw Error(`Non-${t} character`)}return{encode:d,decodeUnsafe:f,decode:p}}var Ja=qa,Ya=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error(`Unknown type, must be binary type`)}},Xa=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let r=t.codePointAt(0);if(r===void 0)throw Error(`Invalid prefix character`);this.prefixCodePoint=r,this.baseDecode=n}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))}throw Error(`Can only multibase decode strings`)}or(e){return Qa(this,e)}},Za=class{decoders;constructor(e){this.decoders=e}or(e){return Qa(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Qa(e,t){return new Za({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var $a=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,r){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=r,this.encoder=new Ya(e,t,n),this.decoder=new Xa(e,t,r)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function eo({name:e,prefix:t,encode:n,decode:r}){return new $a(e,t,n,r)}function to({name:e,prefix:t,alphabet:n}){let{encode:r,decode:i}=Ja(n,e);return eo({prefix:t,name:e,encode:r,decode:e=>Wa(i(e))})}function no(e,t,n,r){let i=e.length;for(;e[i-1]===`=`;)--i;let a=new Uint8Array(i*n/8|0),o=0,s=0,c=0;for(let l=0;l<i;++l){let i=t[e[l]];if(i===void 0)throw SyntaxError(`Non-${r} character`);s=s<<n|i,o+=n,o>=8&&(o-=8,a[c++]=255&s>>o)}if(o>=n||255&s<<8-o)throw SyntaxError(`Unexpected end of data`);return a}function ro(e,t,n){let r=t[t.length-1]===`=`,i=(1<<n)-1,a=``,o=0,s=0;for(let r=0;r<e.length;++r)for(s=s<<8|e[r],o+=8;o>n;)o-=n,a+=t[i&s>>o];if(o!==0&&(a+=t[i&s<<n-o]),r)for(;a.length*n&7;)a+=`=`;return a}function io(e){let t={};for(let n=0;n<e.length;++n)t[e[n]]=n;return t}function E({name:e,prefix:t,bitsPerChar:n,alphabet:r}){let i=io(r);return eo({prefix:t,name:e,encode(e){return ro(e,r,n)},decode(t){return no(t,i,n,e)}})}var ao=e({base58btc:()=>oo,base58flickr:()=>so}),oo=to({name:`base58btc`,prefix:`z`,alphabet:`123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`}),so=to({name:`base58flickr`,prefix:`Z`,alphabet:`123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ`});function co(e=0){return new Uint8Array(e)}function lo(e){return e}function uo(e,t){t??=e.reduce((e,t)=>e+t.length,0);let n=co(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return lo(n)}var fo=e({base10:()=>po}),po=to({prefix:`9`,name:`base10`,alphabet:`0123456789`}),mo=e({base16:()=>ho,base16upper:()=>go}),ho=E({prefix:`f`,name:`base16`,alphabet:`0123456789abcdef`,bitsPerChar:4}),go=E({prefix:`F`,name:`base16upper`,alphabet:`0123456789ABCDEF`,bitsPerChar:4}),_o=e({base2:()=>vo}),vo=E({prefix:`0`,name:`base2`,alphabet:`01`,bitsPerChar:1}),yo=e({base256emoji:()=>To}),bo=Array.from(`🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂`),xo=bo.reduce((e,t,n)=>(e[n]=t,e),[]),So=bo.reduce((e,t,n)=>{let r=t.codePointAt(0);if(r==null)throw Error(`Invalid character: ${t}`);return e[r]=n,e},[]);function Co(e){return e.reduce((e,t)=>(e+=xo[t],e),``)}function wo(e){let t=[];for(let n of e){let e=n.codePointAt(0);if(e==null)throw Error(`Invalid character: ${n}`);let r=So[e];if(r==null)throw Error(`Non-base256emoji character: ${n}`);t.push(r)}return new Uint8Array(t)}var To=eo({prefix:`🚀`,name:`base256emoji`,encode:Co,decode:wo}),Eo=e({base32:()=>Do,base32hex:()=>jo,base32hexpad:()=>No,base32hexpadupper:()=>Po,base32hexupper:()=>Mo,base32pad:()=>ko,base32padupper:()=>Ao,base32upper:()=>Oo,base32z:()=>Fo}),Do=E({prefix:`b`,name:`base32`,alphabet:`abcdefghijklmnopqrstuvwxyz234567`,bitsPerChar:5}),Oo=E({prefix:`B`,name:`base32upper`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`,bitsPerChar:5}),ko=E({prefix:`c`,name:`base32pad`,alphabet:`abcdefghijklmnopqrstuvwxyz234567=`,bitsPerChar:5}),Ao=E({prefix:`C`,name:`base32padupper`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=`,bitsPerChar:5}),jo=E({prefix:`v`,name:`base32hex`,alphabet:`0123456789abcdefghijklmnopqrstuv`,bitsPerChar:5}),Mo=E({prefix:`V`,name:`base32hexupper`,alphabet:`0123456789ABCDEFGHIJKLMNOPQRSTUV`,bitsPerChar:5}),No=E({prefix:`t`,name:`base32hexpad`,alphabet:`0123456789abcdefghijklmnopqrstuv=`,bitsPerChar:5}),Po=E({prefix:`T`,name:`base32hexpadupper`,alphabet:`0123456789ABCDEFGHIJKLMNOPQRSTUV=`,bitsPerChar:5}),Fo=E({prefix:`h`,name:`base32z`,alphabet:`ybndrfg8ejkmcpqxot1uwisza345h769`,bitsPerChar:5}),Io=e({base36:()=>Lo,base36upper:()=>Ro}),Lo=to({prefix:`k`,name:`base36`,alphabet:`0123456789abcdefghijklmnopqrstuvwxyz`}),Ro=to({prefix:`K`,name:`base36upper`,alphabet:`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ`}),zo=e({base64:()=>Bo,base64pad:()=>Vo,base64url:()=>Ho,base64urlpad:()=>Uo}),Bo=E({prefix:`m`,name:`base64`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,bitsPerChar:6}),Vo=E({prefix:`M`,name:`base64pad`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`,bitsPerChar:6}),Ho=E({prefix:`u`,name:`base64url`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`,bitsPerChar:6}),Uo=E({prefix:`U`,name:`base64urlpad`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=`,bitsPerChar:6}),Wo=e({base8:()=>Go}),Go=E({prefix:`7`,name:`base8`,alphabet:`01234567`,bitsPerChar:3}),Ko=e({identity:()=>qo}),qo=eo({prefix:`\0`,name:`identity`,encode:e=>Ka(e),decode:e=>Ga(e)});new TextEncoder,new TextDecoder;var Jo=Qo,Yo=128,Xo=-128,Zo=2**31;function Qo(e,t,n){t||=[],n||=0;for(var r=n;e>=Zo;)t[n++]=e&255|Yo,e/=128;for(;e&Xo;)t[n++]=e&255|Yo,e>>>=7;return t[n]=e|0,Qo.bytes=n-r+1,t}var $o=ns,es=128,ts=127;function ns(e,t){var n=0,t=t||0,r=0,i=t,a,o=e.length;do{if(i>=o)throw ns.bytes=0,RangeError(`Could not decode varint`);a=e[i++],n+=r<28?(a&ts)<<r:(a&ts)*2**r,r+=7}while(a>=es);return ns.bytes=i-t,n}var rs=128,is=2**14,as=2**21,os=2**28,ss=2**35,cs=2**42,ls=2**49,us=2**56,ds=2**63,fs={encode:Jo,decode:$o,encodingLength:function(e){return e<rs?1:e<is?2:e<as?3:e<os?4:e<ss?5:e<cs?6:e<ls?7:e<us?8:e<ds?9:10}};function ps(e,t,n=0){return fs.encode(e,t,n),t}function ms(e){return fs.encodingLength(e)}function hs(e,t){let n=t.byteLength,r=ms(e),i=r+ms(n),a=new Uint8Array(i+n);return ps(e,a,0),ps(n,a,r),a.set(t,i),new gs(e,n,t,a)}var gs=class{code;size;digest;bytes;constructor(e,t,n,r){this.code=e,this.size=t,this.digest=n,this.bytes=r}},_s=e({identity:()=>Ss}),vs=0,ys=`identity`,bs=Wa;function xs(e,t){if(t?.truncate!=null&&t.truncate!==e.byteLength){if(t.truncate<0||t.truncate>e.byteLength)throw Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,t.truncate)}return hs(vs,bs(e))}var Ss={code:vs,name:ys,encode:bs,digest:xs},Cs=20;function ws({name:e,code:t,encode:n,minDigestLength:r,maxDigestLength:i}){return new Ts(e,t,n,r,i)}var Ts=class{name;code;encode;minDigestLength;maxDigestLength;constructor(e,t,n,r,i){this.name=e,this.code=t,this.encode=n,this.minDigestLength=r??Cs,this.maxDigestLength=i}digest(e,t){if(t?.truncate!=null){if(t.truncate<this.minDigestLength)throw Error(`Invalid truncate option, must be greater than or equal to ${this.minDigestLength}`);if(this.maxDigestLength!=null&&t.truncate>this.maxDigestLength)throw Error(`Invalid truncate option, must be less than or equal to ${this.maxDigestLength}`)}if(e instanceof Uint8Array){let n=this.encode(e);return n instanceof Uint8Array?Es(n,this.code,t?.truncate):n.then(e=>Es(e,this.code,t?.truncate))}throw Error(`Unknown type, must be binary type`)}};function Es(e,t,n){if(n!=null&&n!==e.byteLength){if(n>e.byteLength)throw Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,n)}return hs(t,e)}var Ds=e({sha256:()=>ks,sha512:()=>As});function Os(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var ks=ws({name:`sha2-256`,code:18,encode:Os(`SHA-256`)}),As=ws({name:`sha2-512`,code:19,encode:Os(`SHA-512`)}),js={...Ko,..._o,...Wo,...fo,...mo,...Eo,...Io,...ao,...zo,...yo};({...Ds,..._s});function Ms(e,t,n,r){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:n},decoder:{decode:r}}}var Ns=Ms(`utf8`,`u`,e=>`u`+new TextDecoder(`utf8`).decode(e),e=>new TextEncoder().encode(e.substring(1))),Ps=Ms(`ascii`,`a`,e=>{let t=`a`;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t},e=>{e=e.substring(1);let t=co(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}),Fs={utf8:Ns,"utf-8":Ns,hex:js.base16,latin1:Ps,ascii:Ps,binary:Ps,...js};function Is(e,t=`utf8`){let n=Fs[t];if(n==null)throw Error(`Unsupported encoding "${t}"`);return n.decoder.decode(`${n.prefix}${e}`)}function Ls(e,t=`utf8`){let n=Fs[t];if(n==null)throw Error(`Unsupported encoding "${t}"`);return n.encoder.encode(e).substring(1)}var Rs=e({keyToDidDoc:()=>zs});function zs(e,t){let n=`did:key:${t}`,r=`${n}#${t}`;return{id:n,verificationMethod:[{id:r,type:`Secp256k1VerificationKey2018`,controller:n,publicKeyBase58:Ls(e,`base58btc`)}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}var Bs=e({keyToDidDoc:()=>Hs});function Vs(e){let t=new Uint8Array(e.length+2);return t[0]=236,t[1]=1,t.set(e,2),`z${Ls(t,`base58btc`)}`}function Hs(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=sr(e),a=`${n}#${Vs(i)}`;return{id:n,verificationMethod:[{id:r,type:`Ed25519VerificationKey2018`,controller:n,publicKeyBase58:Ls(e,`base58btc`)}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r],keyAgreement:[{id:a,type:`X25519KeyAgreementKey2019`,controller:n,publicKeyBase58:Ls(i,`base58btc`)}]}}var Us=e({keyToDidDoc:()=>Ws});function Ws(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=me.ProjectivePoint.fromHex(Gs(e));return{id:n,verificationMethod:[{id:r,type:`JsonWebKey2020`,controller:n,publicKeyJwk:{kty:`EC`,crv:`P-256`,x:Ls(gn(i.x),`base64url`),y:Ls(gn(i.y),`base64url`)}}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}function Gs(e){return e.length===64?uo([new Uint8Array([4]),e]):e}var Ks=le,qs=e({keyToDidDoc:()=>Js});function Js(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=Ks.ProjectivePoint.fromHex(Ys(e));return{id:n,verificationMethod:[{id:r,type:`JsonWebKey2020`,controller:n,publicKeyJwk:{kty:`EC`,crv:`P-384`,x:Ls(gn(i.x),`base64url`),y:Ls(gn(i.y),`base64url`)}}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}function Ys(e){return e.length===96?uo([new Uint8Array([4]),e]):e}var Xs=fe,Zs=e({keyToDidDoc:()=>Qs});function Qs(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=Xs.ProjectivePoint.fromHex(e);return{id:n,verificationMethod:[{id:r,type:`JsonWebKey2020`,controller:n,publicKeyJwk:{kty:`EC`,crv:`P-521`,x:Ls(gn(i.x),`base64url`),y:Ls(gn(i.y),`base64url`)}}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}var $s=`application/did+ld+json`,ec=`application/did+json`,tc={231:Rs,237:Bs,4608:Us,4609:qs,4610:Zs};function nc(){return{key:async(e,t,n,r)=>{let i=r.accept||ec,a={didResolutionMetadata:{contentType:i},didDocument:null,didDocumentMetadata:{}};try{let e=oo.decode(t.id),n=Ua.default.decode(e),r=e.slice(Ua.default.decode.bytes),o=await tc[n].keyToDidDoc(r,t.id);i===$s?(o[`@context`]=`https://w3id.org/did/v1`,a.didDocument=o):i===ec?a.didDocument=o:(delete a.didResolutionMetadata.contentType,a.didResolutionMetadata.error=`representationNotSupported`)}catch(e){a.didResolutionMetadata.error=`invalidDid`,a.didResolutionMetadata.message=e.toString()}return a}}}function rc(e){let t=e.split(`:`);if(!e.startsWith(`did:pkh:`)||t.length!==5)throw Error(`Invalid pkh did`);let[,,n,r,i]=t;if(!i.startsWith(`0x`))throw Error(`Invalid address: ${i}`);let a=Number(r);if(isNaN(a))throw Error(`Invalid chain id: ${r}`);return{chainId:a,networkId:n,address:i}}async function ic(e,t){try{let n=parseInt(String(Date.now()/1e3)),r=await Ia(e,sc(),{...t?.audience!==void 0&&{audience:t.audience},policies:{now:parseInt(String(Date.now()/1e3)),expirationDate:!0,issuanceDate:!0}});return r.payload.exp&&r.payload.exp<n?!1:(ac(r),r)}catch(e){return console.error(e),!1}}function ac(e){let t=Object.keys(e.verifiableCredential.credentialSubject);if(![`address`,`chainId`,`networkId`].every(e=>t.includes(e)))throw Error(`Invalid Auth Credential Subject:`+JSON.stringify(e.verifiableCredential.credentialSubject,null,2))}async function oc(e,t,n,r,i){return await La({sub:r.did,vc:{"@context":[`https://www.w3.org/2018/credentials/v1`],type:[`VerifiableCredential`],credentialSubject:{chainId:e,networkId:t,address:n}},aud:i?.aud},r,{expiresIn:i?.expiresIn})}var sc=()=>{let e=nc();if(!e)throw Error(`Failed to get key resolver`);return new Er(e)};async function cc({hash:e,signature:t}){let n=je(e)?e:De(e),{secp256k1:r}=await i(async()=>{let{secp256k1:e}=await import(`./secp256k1-CVqUn8M-.js`);return{secp256k1:e}},__vite__mapDeps([0,1,2,3,4,5]));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=lc(Number(a??i));return new r.Signature(Ee(e),Ee(n)).addRecoveryBit(o)}let e=je(t)?t:De(t);if(Ae(e)!==65)throw Error(`invalid signature length`);let n=lc(Te(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function lc(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function uc({hash:e,signature:t}){return Oe(await cc({hash:e,signature:t}))}async function dc(e){let{domain:t,message:n,primaryType:r,signature:i,types:a}=e;return uc({hash:ke({domain:t,message:n,primaryType:r,types:a}),signature:i})}var fc=3e3;async function pc(e){let{switchboardUrl:t,baseUrl:n,timeoutMs:r}=e;if(t)return t;if(!n)return;let i=new AbortController,a=setTimeout(()=>i.abort(),r??fc);try{let e=new URL(`/api/switchboard`,n),t=await fetch(e,{method:`GET`,signal:i.signal});return t.ok&&(await t.json()).endpoint||void 0}catch{return}finally{clearTimeout(a)}}var mc=class e extends Error{constructor(){super(`signIn requires a switchboard endpoint. Set switchboardUrl or a discoverable baseUrl.`),this.name=`MissingSwitchboardError`}static is(t){return t instanceof e||t instanceof Error&&t.name===`MissingSwitchboardError`}};function hc(e){return`renown-${e.toLowerCase()}`}var gc=`
|
|
2
|
+
import{r as e,s as t,t as n}from"./rolldown-runtime-BcKkbAw3.js";import{n as r}from"./runtime-config-DtJIUgYw-yncHpou3.js";import{t as i}from"./preload-helper-BZ1Pz5am.js";import{c as a,h as o,l as s,m as c,n as l,p as u,s as d,u as f}from"./utils-N6OADHW2.js";import{t as p}from"./sha3-vjzUNIgY.js";import{i as m,r as h,t as g}from"./sha2-DAzSwLJP.js";import{t as _}from"./sha256-Bh9Gbylw.js";import{C as v,S as y,_ as b,a as ee,b as te,c as ne,d as re,f as x,g as ie,h as ae,i as oe,l as se,m as ce,n as le,o as ue,p as de,r as fe,s as pe,t as me,u as he,v as ge,x as _e,y as ve}from"./p256-Bbmxp9vE.js";import{r as ye}from"./toast-C6WW-_O--BnFrYYYY.js";import{n as be,r as xe,t as Se}from"./src-YxlLH438.js";import{n as Ce}from"./basics-CftvyfTN.js";import{t as we}from"./canonicalize-Dy8EJuht.js";import{g as Te,h as Ee,m as De,n as Oe,t as ke,v as Ae,y as je}from"./hashTypedData-Qe07TVhG.js";import{A as Me,D as Ne,E as Pe,T as Fe,f as Ie,i as Le,j as Re,k as ze,n as Be,o as Ve,r as He,s as Ue,x as We}from"./connection-state-Eqc2izmt-DYeEdoBH.js";import{n as Ge,o as Ke,r as qe}from"./connect.config-CaXMoB42-DPDK2YJi.js";import{n as Je,t as Ye}from"./package-manager-BbzIV9aN-ywzOaaLs.js";import{i as Xe,n as Ze}from"./build-info-BV8UtyA4-vnk7Wd-i.js";import{i as Qe,n as $e,r as et,t as tt}from"./null-attachment-transport-D53Rz9lE-D9F9p4EE.js";import{ConsoleLogger as nt,childLogger as rt,logger as it,setLogLevel as at}from"document-model";import{BrowserLocalStorage as ot,ChannelScheme as st,DRIVE_DOCUMENT_TYPES as ct,DocumentCache as lt,DocumentChangeType as ut,ReactorBuilder as dt,ReactorClientBuilder as ft,RegistryClient as pt,addDrive as mt,addPHEventHandlers as ht,addRemoteDrive as gt,createAnalyticsStore as _t,extractDriveSlugFromPath as vt,extractNodeSlugFromPath as yt,getDrives as bt,isDriveAuthError as xt,login as St,refreshReactorDataClient as Ct,setAttachmentService as wt,setDefaultPHGlobalConfig as Tt,setDocumentCache as Et,setDriveMetadata as Dt,setDrives as Ot,setFeatures as kt,setPGliteDB as At,setPHToast as jt,setPackageDiscoveryService as Mt,setReactorClient as Nt,setReactorClientModule as Pt,setRenown as Ft,setSelectedDrive as It,setSelectedNode as Lt,setVetraPackageManager as Rt,waitForDocumentReady as zt}from"@powerhousedao/reactor-browser";import{actionSignerIdentity as Bt,createAction as Vt,signActionV2 as Ht}from"@powerhousedao/shared/document-model";import"@powerhousedao/shared/document-drive";import{createRelationalDb as Ut}from"@powerhousedao/shared/processors";import{MessageRouter as Wt,RPC_PROTOCOL_VERSION as Gt,SyncManagerProxy as Kt,connectReactorClient as qt,createInspectorProxy as Jt,createPortTransport as Yt,createReactorEventBusProxy as Xt,createRelationalPgliteProxy as Zt,createWorkerAdminClient as Qt,postReactorIdentity as $t}from"@powerhousedao/reactor-browser/rpc";var en=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),tn=Uint8Array.from(Array(16).fill(0).map((e,t)=>t)),nn=tn.map(e=>(9*e+5)%16),rn=(()=>{let e=[[tn],[nn]];for(let t=0;t<4;t++)for(let n of e)n.push(n[t].map(e=>en[e]));return e})(),an=rn[0],on=rn[1],sn=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(e=>Uint8Array.from(e)),cn=an.map((e,t)=>e.map(e=>sn[t][e])),ln=on.map((e,t)=>e.map(e=>sn[t][e])),un=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),dn=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function fn(e,t,n,r){return e===0?t^n^r:e===1?t&n|~t&r:e===2?(t|~n)^r:e===3?t&r|n&~r:t^(n|~r)}var pn=new Uint32Array(16),mn=class extends m{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:e,h1:t,h2:n,h3:r,h4:i}=this;return[e,t,n,r,i]}set(e,t,n,r,i){this.h0=e|0,this.h1=t|0,this.h2=n|0,this.h3=r|0,this.h4=i|0}process(e,t){for(let n=0;n<16;n++,t+=4)pn[n]=e.getUint32(t,!0);let n=this.h0|0,r=n,i=this.h1|0,a=i,s=this.h2|0,c=s,l=this.h3|0,u=l,d=this.h4|0,f=d;for(let e=0;e<5;e++){let t=4-e,p=un[e],m=dn[e],h=an[e],g=on[e],_=cn[e],v=ln[e];for(let t=0;t<16;t++){let r=o(n+fn(e,i,s,l)+pn[h[t]]+p,_[t])+d|0;n=d,d=l,l=o(s,10)|0,s=i,i=r}for(let e=0;e<16;e++){let n=o(r+fn(t,a,c,u)+pn[g[e]]+m,v[e])+f|0;r=f,f=u,u=o(c,10)|0,c=a,a=n}}this.set(this.h1+s+u|0,this.h2+l+f|0,this.h3+d+r|0,this.h4+n+a|0,this.h0+i+c|0)}roundClean(){a(pn)}destroy(){this.destroyed=!0,a(this.buffer),this.set(0,0,0,0,0)}},hn=f(()=>new mn),gn=v,_n={p:BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),n:BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt(`0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798`),Gy:BigInt(`0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8`)},vn={beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),basises:[[BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),-BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`)],[BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),BigInt(`0x3086d221a7d46bcde86c90e49284eb15`)]]},yn=BigInt(2);function bn(e){let t=_n.p,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=x(u,n,t)*u%t,f=x(d,n,t)*u%t,p=x(f,yn,t)*l%t,m=x(p,i,t)*p%t,h=x(m,a,t)*m%t,g=x(h,s,t)*h%t,_=x(g,c,t)*g%t,v=x(_,s,t)*h%t,y=x(v,n,t)*u%t,b=x(y,o,t)*m%t,ee=x(b,r,t)*l%t,te=x(ee,yn,t);if(!xn.eql(xn.sqr(te),e))throw Error(`Cannot find square root`);return te}var xn=se(_n.p,{sqrt:bn}),Sn=oe({..._n,Fp:xn,lowS:!0,endo:vn},g),Cn=`https://www.renown.id`,wn=`eip155`,Tn={EIP712Domain:[{name:`version`,type:`string`},{name:`chainId`,type:`uint256`}],VerifiableCredential:[{name:`@context`,type:`string[]`},{name:`type`,type:`string[]`},{name:`id`,type:`string`},{name:`issuer`,type:`Issuer`},{name:`credentialSubject`,type:`CredentialSubject`},{name:`credentialSchema`,type:`CredentialSchema`},{name:`issuanceDate`,type:`string`},{name:`expirationDate`,type:`string`}],CredentialSchema:[{name:`id`,type:`string`},{name:`type`,type:`string`}],CredentialSubject:[{name:`app`,type:`string`},{name:`id`,type:`string`}],Issuer:[{name:`id`,type:`string`},{name:`ethereumAddress`,type:`string`}]},En=BigInt(0),S=BigInt(1),Dn=BigInt(2),On=BigInt(8);function kn(e,t,n,r){let i=e.sqr(n),a=e.sqr(r),o=e.add(e.mul(t.a,i),a),s=e.add(e.ONE,e.mul(t.d,e.mul(i,a)));return e.eql(o,s)}function An(e,t={}){let n=ee(`edwards`,e,t,t.FpFnLE),{Fp:r,Fn:i}=n,a=n.CURVE,{h:o}=a;ae(t,{},{uvRatio:`function`});let s=Dn<<BigInt(i.BYTES*8)-S,c=e=>r.create(e),l=t.uvRatio||((e,t)=>{try{return{isValid:!0,value:r.sqrt(r.div(e,t))}}catch{return{isValid:!1,value:En}}});if(!kn(r,a,a.Gx,a.Gy))throw Error(`bad curve params: generator point`);function u(e,t,n=!1){let r=n?S:En;return ie(`coordinate `+e,t,r,s),t}function f(e){if(!(e instanceof h))throw Error(`ExtendedPoint expected`)}let p=_e((e,t)=>{let{X:n,Y:i,Z:a}=e,o=e.is0();t??=o?On:r.inv(a);let s=c(n*t),l=c(i*t),u=r.mul(a,t);if(o)return{x:En,y:S};if(u!==S)throw Error(`invZ was invalid`);return{x:s,y:l}}),m=_e(e=>{let{a:t,d:n}=a;if(e.is0())throw Error(`bad point: ZERO`);let{X:r,Y:i,Z:o,T:s}=e,l=c(r*r),u=c(i*i),d=c(o*o),f=c(d*d),p=c(l*t);if(c(d*c(p+u))!==c(f+c(n*c(l*u))))throw Error(`bad point: equation left != right (1)`);if(c(r*i)!==c(o*s))throw Error(`bad point: equation left != right (2)`);return!0});class h{constructor(e,t,n,r){this.X=u(`x`,e),this.Y=u(`y`,t),this.Z=u(`z`,n,!0),this.T=u(`t`,r),Object.freeze(this)}static CURVE(){return a}static fromAffine(e){if(e instanceof h)throw Error(`extended point not allowed`);let{x:t,y:n}=e||{};return u(`x`,t),u(`y`,n),new h(t,n,S,c(t*n))}static fromBytes(e,t=!1){let n=r.BYTES,{a:i,d:o}=a;e=ge(ce(e,n,`point`)),de(t,`zip215`);let u=ge(e),d=e[n-1];u[n-1]=d&-129;let f=b(u),p=t?s:r.ORDER;ie(`point.y`,f,En,p);let m=c(f*f),g=c(m-S),_=c(o*m-i),{isValid:v,value:y}=l(g,_);if(!v)throw Error(`bad point: invalid y coordinate`);let ee=(y&S)===S,te=!!(d&128);if(!t&&y===En&&te)throw Error(`bad point: x=0 and x_0=1`);return te!==ee&&(y=c(-y)),h.fromAffine({x:y,y:f})}static fromHex(e,t=!1){return h.fromBytes(ve(`point`,e),t)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(e=8,t=!0){return g.createCache(this,e),t||this.multiply(Dn),this}assertValidity(){m(this)}equals(e){f(e);let{X:t,Y:n,Z:r}=this,{X:i,Y:a,Z:o}=e,s=c(t*o),l=c(i*r),u=c(n*o),d=c(a*r);return s===l&&u===d}is0(){return this.equals(h.ZERO)}negate(){return new h(c(-this.X),this.Y,this.Z,c(-this.T))}double(){let{a:e}=a,{X:t,Y:n,Z:r}=this,i=c(t*t),o=c(n*n),s=c(Dn*c(r*r)),l=c(e*i),u=t+n,d=c(c(u*u)-i-o),f=l+o,p=f-s,m=l-o,g=c(d*p),_=c(f*m),v=c(d*m),y=c(p*f);return new h(g,_,y,v)}add(e){f(e);let{a:t,d:n}=a,{X:r,Y:i,Z:o,T:s}=this,{X:l,Y:u,Z:d,T:p}=e,m=c(r*l),g=c(i*u),_=c(s*n*p),v=c(o*d),y=c((r+i)*(l+u)-m-g),b=v-_,ee=v+_,te=c(g-t*m),ne=c(y*b),re=c(ee*te),x=c(y*te),ie=c(b*ee);return new h(ne,re,ie,x)}subtract(e){return this.add(e.negate())}multiply(e){if(!i.isValidNot0(e))throw Error(`invalid scalar: expected 1 <= sc < curve.n`);let{p:t,f:n}=g.cached(this,e,e=>ue(h,e));return ue(h,[t,n])[0]}multiplyUnsafe(e,t=h.ZERO){if(!i.isValid(e))throw Error(`invalid scalar: expected 0 <= sc < curve.n`);return e===En?h.ZERO:this.is0()||e===S?this:g.unsafe(this,e,e=>ue(h,e),t)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}isTorsionFree(){return g.unsafe(this,a.n).is0()}toAffine(e){return p(this,e)}clearCofactor(){return o===S?this:this.multiplyUnsafe(o)}toBytes(){let{x:e,y:t}=this.toAffine(),n=r.toBytes(t);return n[n.length-1]|=e&S?128:0,n}toHex(){return d(this.toBytes())}toString(){return`<Point ${this.is0()?`ZERO`:this.toHex()}>`}get ex(){return this.X}get ey(){return this.Y}get ez(){return this.Z}get et(){return this.T}static normalizeZ(e){return ue(h,e)}static msm(e,t){return pe(h,i,e,t)}_setWindowSize(e){this.precompute(e)}toRawBytes(){return this.toBytes()}}h.BASE=new h(a.Gx,a.Gy,S,c(a.Gx*a.Gy)),h.ZERO=new h(En,S,S,En),h.Fp=r,h.Fn=i;let g=new ne(h,i.BITS);return h.BASE.precompute(8),h}var jn=class{constructor(e){this.ep=e}static fromBytes(e){y()}static fromHex(e){y()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine(e){return this.ep.toAffine(e)}toHex(){return d(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add(e){return this.assertSame(e),this.init(this.ep.add(e.ep))}subtract(e){return this.assertSame(e),this.init(this.ep.subtract(e.ep))}multiply(e){return this.init(this.ep.multiply(e))}multiplyUnsafe(e){return this.init(this.ep.multiplyUnsafe(e))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute(e,t){return this.init(this.ep.precompute(e,t))}toRawBytes(){return this.toBytes()}};function Mn(e,t,n={}){if(typeof t!=`function`)throw Error(`"hash" function param is required`);ae(n,{},{adjustScalarBytes:`function`,randomBytes:`function`,domain:`function`,prehash:`function`,mapToCurve:`function`});let{prehash:r}=n,{BASE:i,Fp:a,Fn:o}=e,l=n.randomBytes||c,d=n.adjustScalarBytes||(e=>e),f=n.domain||((e,t,n)=>{if(de(n,`phflag`),t.length||n)throw Error(`Contexts/pre-hash are not supported`);return e});function p(e){return o.create(b(e))}function m(e){let n=ne.secretKey;e=ve(`private key`,e,n);let r=ve(`hashed private key`,t(e),2*n),i=d(r.slice(0,n));return{head:i,prefix:r.slice(n,2*n),scalar:p(i)}}function h(e){let{head:t,prefix:n,scalar:r}=m(e),a=i.multiply(r);return{head:t,prefix:n,scalar:r,point:a,pointBytes:a.toBytes()}}function g(e){return h(e).pointBytes}function _(e=Uint8Array.of(),...n){let i=s(...n);return p(t(f(i,ve(`context`,e),!!r)))}function v(e,t,n={}){e=ve(`message`,e),r&&(e=r(e));let{prefix:a,scalar:c,pointBytes:l}=h(t),u=_(n.context,a,e),d=i.multiply(u).toBytes(),f=_(n.context,d,l,e),p=o.create(u+f*c);if(!o.isValid(p))throw Error(`sign failed: invalid s`);let m=s(d,o.toBytes(p));return ce(m,ne.signature,`result`)}let y={zip215:!0};function ee(t,n,a,o=y){let{context:s,zip215:c}=o,l=ne.signature;t=ve(`signature`,t,l),n=ve(`message`,n),a=ve(`publicKey`,a,ne.publicKey),c!==void 0&&de(c,`zip215`),r&&(n=r(n));let u=l/2,d=t.subarray(0,u),f=b(t.subarray(u,l)),p,m,h;try{p=e.fromBytes(a,c),m=e.fromBytes(d,c),h=i.multiplyUnsafe(f)}catch{return!1}if(!c&&p.isSmallOrder())return!1;let g=_(s,m.toBytes(),p.toBytes(),n);return m.add(p.multiplyUnsafe(g)).subtract(h).clearCofactor().is0()}let te=a.BYTES,ne={secretKey:te,publicKey:te,signature:2*te,seed:te};function re(e=l(ne.seed)){return ce(e,ne.seed,`seed`)}function x(e){let t=se.randomSecretKey(e);return{secretKey:t,publicKey:g(t)}}function ie(e){return u(e)&&e.length===o.BYTES}function oe(t,n){try{return!!e.fromBytes(t,n)}catch{return!1}}let se={getExtendedPublicKey:h,randomSecretKey:re,isValidSecretKey:ie,isValidPublicKey:oe,toMontgomery(t){let{y:n}=e.fromBytes(t),r=ne.publicKey,i=r===32;if(!i&&r!==57)throw Error(`only defined for 25519 and 448`);let o=i?a.div(S+n,S-n):a.div(n-S,n+S);return a.toBytes(o)},toMontgomerySecret(e){let n=ne.secretKey;ce(e,n);let r=t(e.subarray(0,n));return d(r).subarray(0,n)},randomPrivateKey:re,precompute(t=8,n=e.BASE){return n.precompute(t,!1)}};return Object.freeze({keygen:x,getPublicKey:g,sign:v,verify:ee,utils:se,Point:e,lengths:ne})}function Nn(e){let t={a:e.a,d:e.d,p:e.Fp.ORDER,n:e.n,h:e.h,Gx:e.Gx,Gy:e.Gy},n={Fp:e.Fp,Fn:se(t.n,e.nBitLength,!0),uvRatio:e.uvRatio},r={randomBytes:e.randomBytes,adjustScalarBytes:e.adjustScalarBytes,domain:e.domain,prehash:e.prehash,mapToCurve:e.mapToCurve};return{CURVE:t,curveOpts:n,hash:e.hash,eddsaOpts:r}}function Pn(e,t){let n=t.Point;return Object.assign({},t,{ExtendedPoint:n,CURVE:e,nBitLength:n.Fn.BITS,nByteLength:n.Fn.BYTES})}function Fn(e){let{CURVE:t,curveOpts:n,hash:r,eddsaOpts:i}=Nn(e);return Pn(e,Mn(An(t,n),r,i))}var In=BigInt(0),Ln=BigInt(1),Rn=BigInt(2),zn=BigInt(5),Bn=BigInt(8),Vn=BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed`),Hn={p:Vn,n:BigInt(`0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed`),h:Bn,a:BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec`),d:BigInt(`0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3`),Gx:BigInt(`0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a`),Gy:BigInt(`0x6666666666666666666666666666666666666666666666666666666666666658`)};function Un(e){let t=BigInt(10),n=BigInt(20),r=BigInt(40),i=BigInt(80),a=Vn,o=e*e%a*e%a,s=x(o,Rn,a)*o%a,c=x(s,Ln,a)*e%a,l=x(c,zn,a)*c%a,u=x(l,t,a)*l%a,d=x(u,n,a)*u%a,f=x(d,r,a)*d%a,p=x(f,i,a)*f%a,m=x(p,i,a)*f%a,h=x(m,t,a)*l%a;return{pow_p_5_8:x(h,Rn,a)*e%a,b2:o}}function Wn(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var Gn=BigInt(`19681161376707505956807079304988542015446066515923890162744021073123829784752`);function Kn(e,t){let n=Vn,r=re(t*t*t,n),i=Un(e*re(r*r*t,n)).pow_p_5_8,a=re(e*r*i,n),o=re(t*a*a,n),s=a,c=re(a*Gn,n),l=o===e,u=o===re(-e,n),d=o===re(-e*Gn,n);return l&&(a=s),(u||d)&&(a=c),he(a,n)&&(a=re(-a,n)),{isValid:l||u,value:a}}var qn=se(Hn.p,{isLE:!0}),Jn=se(Hn.n,{isLE:!0}),Yn=Fn({...Hn,Fp:qn,hash:h,adjustScalarBytes:Wn,uvRatio:Kn}),Xn=Gn,Zn=BigInt(`25063068953384623474111414158702152701244531502492656460079210482610430750235`),Qn=BigInt(`54469307008909316920995813868745141605393597292927456921205312896311721017578`),$n=BigInt(`1159843021668779879193775521855586647937357759715417654439879720876111806838`),er=BigInt(`40440834346308536858101042469323190826248399146238708352240133220865137265952`),tr=e=>Kn(Ln,e),nr=BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`),rr=e=>Yn.Point.Fp.create(b(e)&nr);function ir(e){let{d:t}=Hn,n=Vn,r=e=>qn.create(e),i=r(Xn*e*e),a=r((i+Ln)*$n),o=BigInt(-1),s=r((o-t*i)*r(i+t)),{isValid:c,value:l}=Kn(a,s),u=r(l*e);he(u,n)||(u=r(-u)),c||(l=u),c||(o=i);let d=r(o*(i-Ln)*er-s),f=l*l,p=r((l+l)*s),m=r(d*Zn),h=r(Ln-f),g=r(Ln+f);return new Yn.Point(r(p*g),r(h*m),r(m*g),r(p*h))}function ar(e){l(e,64);let t=ir(rr(e.subarray(0,32))),n=ir(rr(e.subarray(32,64)));return new or(t.add(n))}var or=class e extends jn{constructor(e){super(e)}static fromAffine(t){return new e(Yn.Point.fromAffine(t))}assertSame(t){if(!(t instanceof e))throw Error(`RistrettoPoint expected`)}init(t){return new e(t)}static hashToCurve(e){return ar(ve(`ristrettoHash`,e,64))}static fromBytes(t){l(t,32);let{a:n,d:r}=Hn,i=Vn,a=e=>qn.create(e),o=rr(t);if(!te(qn.toBytes(o),t)||he(o,i))throw Error(`invalid ristretto255 encoding 1`);let s=a(o*o),c=a(Ln+n*s),u=a(Ln-n*s),d=a(c*c),f=a(u*u),p=a(n*r*d-f),{isValid:m,value:h}=tr(a(p*f)),g=a(h*u),_=a(h*g*p),v=a((o+o)*g);he(v,i)&&(v=a(-v));let y=a(c*_),b=a(v*y);if(!m||he(b,i)||y===In)throw Error(`invalid ristretto255 encoding 2`);return new e(new Yn.Point(v,y,Ln,b))}static fromHex(t){return e.fromBytes(ve(`ristrettoHex`,t,32))}static msm(t,n){return pe(e,Yn.Point.Fn,t,n)}toBytes(){let{X:e,Y:t,Z:n,T:r}=this.ep,i=Vn,a=e=>qn.create(e),o=a(a(n+t)*a(n-t)),s=a(e*t),{value:c}=tr(a(o*a(s*s))),l=a(c*o),u=a(c*s),d=a(l*u*r),f;if(he(r*d,i)){let n=a(t*Xn),r=a(e*Xn);e=n,t=r,f=a(l*Qn)}else f=u;he(e*d,i)&&(t=a(-t));let p=a((n-t)*f);return he(p,i)&&(p=a(-p)),qn.toBytes(p)}equals(e){this.assertSame(e);let{X:t,Y:n}=this.ep,{X:r,Y:i}=e.ep,a=e=>qn.create(e),o=a(t*i)===a(n*r),s=a(n*i)===a(t*r);return o||s}is0(){return this.equals(e.ZERO)}};or.BASE=new or(Yn.Point.BASE),or.ZERO=new or(Yn.Point.ZERO),or.Fp=qn,or.Fn=Jn;function sr(e){return Yn.utils.toMontgomery(ve(`pub`,e))}var cr=n(((e,t)=>{function n(e){if(e.length>=255)throw TypeError(`Alphabet too long`);for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var r=0;r<e.length;r++){var i=e.charAt(r),a=i.charCodeAt(0);if(t[a]!==255)throw TypeError(i+` is ambiguous`);t[a]=r}var o=e.length,s=e.charAt(0),c=Math.log(o)/Math.log(256),l=Math.log(256)/Math.log(o);function u(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError(`Expected Uint8Array`);if(t.length===0)return``;for(var n=0,r=0,i=0,a=t.length;i!==a&&t[i]===0;)i++,n++;for(var c=(a-i)*l+1>>>0,u=new Uint8Array(c);i!==a;){for(var d=t[i],f=0,p=c-1;(d!==0||f<r)&&p!==-1;p--,f++)d+=256*u[p]>>>0,u[p]=d%o>>>0,d=d/o>>>0;if(d!==0)throw Error(`Non-zero carry`);r=f,i++}for(var m=c-r;m!==c&&u[m]===0;)m++;for(var h=s.repeat(n);m<c;++m)h+=e.charAt(u[m]);return h}function d(e){if(typeof e!=`string`)throw TypeError(`Expected String`);if(e.length===0)return new Uint8Array;var n=0;if(e[n]!==` `){for(var r=0,i=0;e[n]===s;)r++,n++;for(var a=(e.length-n)*c+1>>>0,l=new Uint8Array(a);e[n];){var u=t[e.charCodeAt(n)];if(u===255)return;for(var d=0,f=a-1;(u!==0||d<i)&&f!==-1;f--,d++)u+=o*l[f]>>>0,l[f]=u%256>>>0,u=u/256>>>0;if(u!==0)throw Error(`Non-zero carry`);i=d,n++}if(e[n]!==` `){for(var p=a-i;p!==a&&l[p]===0;)p++;for(var m=new Uint8Array(r+(a-p)),h=r;p!==a;)m[h++]=l[p++];return m}}}function f(e){var t=d(e);if(t)return t;throw Error(`Non-base`+o+` character`)}return{encode:u,decodeUnsafe:d,decode:f}}t.exports=n})),lr=n(((e,t)=>{var n=new TextDecoder,r=e=>n.decode(e),i=new TextEncoder,a=e=>i.encode(e);function o(e,t){let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}t.exports={decodeText:r,encodeText:a,concat:o}})),ur=n(((e,t)=>{var{encodeText:n}=lr();t.exports=class{constructor(e,t,r,i){this.name=e,this.code=t,this.codeBuf=n(this.code),this.alphabet=i,this.codec=r(i)}encode(e){return this.codec.encode(e)}decode(e){for(let t of e)if(this.alphabet&&this.alphabet.indexOf(t)<0)throw Error(`invalid character '${t}' in '${e}'`);return this.codec.decode(e)}}})),dr=n(((e,t)=>{var n=(e,t,n)=>{let r={};for(let e=0;e<t.length;++e)r[t[e]]=e;let i=e.length;for(;e[i-1]===`=`;)--i;let a=new Uint8Array(i*n/8|0),o=0,s=0,c=0;for(let t=0;t<i;++t){let i=r[e[t]];if(i===void 0)throw SyntaxError(`Invalid character `+e[t]);s=s<<n|i,o+=n,o>=8&&(o-=8,a[c++]=255&s>>o)}if(o>=n||255&s<<8-o)throw SyntaxError(`Unexpected end of data`);return a},r=(e,t,n)=>{let r=t[t.length-1]===`=`,i=(1<<n)-1,a=``,o=0,s=0;for(let r=0;r<e.length;++r)for(s=s<<8|e[r],o+=8;o>n;)o-=n,a+=t[i&s>>o];if(o&&(a+=t[i&s<<n-o]),r)for(;a.length*n&7;)a+=`=`;return a};t.exports={rfc4648:e=>t=>({encode(n){return r(n,t,e)},decode(r){return n(r,t,e)}})}})),fr=n(((e,t)=>{var n=cr(),r=ur(),{rfc4648:i}=dr(),{decodeText:a,encodeText:o}=lr(),s=[[`identity`,`\0`,()=>({encode:a,decode:o}),``],[`base2`,`0`,i(1),`01`],[`base8`,`7`,i(3),`01234567`],[`base10`,`9`,n,`0123456789`],[`base16`,`f`,i(4),`0123456789abcdef`],[`base16upper`,`F`,i(4),`0123456789ABCDEF`],[`base32hex`,`v`,i(5),`0123456789abcdefghijklmnopqrstuv`],[`base32hexupper`,`V`,i(5),`0123456789ABCDEFGHIJKLMNOPQRSTUV`],[`base32hexpad`,`t`,i(5),`0123456789abcdefghijklmnopqrstuv=`],[`base32hexpadupper`,`T`,i(5),`0123456789ABCDEFGHIJKLMNOPQRSTUV=`],[`base32`,`b`,i(5),`abcdefghijklmnopqrstuvwxyz234567`],[`base32upper`,`B`,i(5),`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`],[`base32pad`,`c`,i(5),`abcdefghijklmnopqrstuvwxyz234567=`],[`base32padupper`,`C`,i(5),`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=`],[`base32z`,`h`,i(5),`ybndrfg8ejkmcpqxot1uwisza345h769`],[`base36`,`k`,n,`0123456789abcdefghijklmnopqrstuvwxyz`],[`base36upper`,`K`,n,`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ`],[`base58btc`,`z`,n,`123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`],[`base58flickr`,`Z`,n,`123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ`],[`base64`,`m`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`],[`base64pad`,`M`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`],[`base64url`,`u`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`],[`base64urlpad`,`U`,i(6),`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=`]],c=s.reduce((e,t)=>(e[t[0]]=new r(t[0],t[1],t[2],t[3]),e),{});t.exports={names:c,codes:s.reduce((e,t)=>(e[t[1]]=c[t[0]],e),{})}})),pr=n(((e,t)=>{var n=fr(),{encodeText:r,decodeText:i,concat:a}=lr();function o(e,t){if(!t)throw Error(`requires an encoded Uint8Array`);let{name:n,codeBuf:r}=d(e);return u(n,t),a([r,t],r.length+t.length)}function s(e,t){let n=d(e),i=r(n.encode(t));return a([n.codeBuf,i],n.codeBuf.length+i.length)}function c(e){e instanceof Uint8Array&&(e=i(e));let t=e[0];return[`f`,`F`,`v`,`V`,`t`,`T`,`b`,`B`,`c`,`C`,`h`,`k`,`K`].includes(t)&&(e=e.toLowerCase()),d(e[0]).decode(e.substring(1))}function l(e){if(e instanceof Uint8Array&&(e=i(e)),Object.prototype.toString.call(e)!==`[object String]`)return!1;try{return d(e[0]).name}catch{return!1}}function u(e,t){d(e).decode(i(t))}function d(e){if(Object.prototype.hasOwnProperty.call(n.names,e))return n.names[e];if(Object.prototype.hasOwnProperty.call(n.codes,e))return n.codes[e];throw Error(`Unsupported encoding: ${e}`)}function f(e){return e instanceof Uint8Array&&(e=i(e)),d(e[0])}e=t.exports=o,e.encode=s,e.decode=c,e.isEncoded=l,e.encoding=d,e.encodingFromData=f;var p=Object.freeze(n.names),m=Object.freeze(n.codes);e.names=p,e.codes=m}))(),mr=t(we(),1);function hr(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function gr(){let e=new Map;return function(t,n){try{let r;function i(i){if(r)return i;let a=e.get(t.didUrl);return a===void 0?Promise.resolve(n()).then(function(n){return n.didResolutionMetadata?.error!==`notFound`&&e.set(t.didUrl,n),n}):a}let a=function(){if(t.params&&t.params[`no-cache`]===`true`)return Promise.resolve(n()).then(function(e){return r=1,e})}();return Promise.resolve(a&&a.then?a.then(i):i(a))}catch(e){return Promise.reject(e)}}}function _r(e,t){return t()}var vr=`(?:[a-zA-Z0-9._-]|(?:%[0-9a-fA-F]{2}))`,yr=`([a-z0-9]+)`,br=`((?:${vr}*:)*(${vr}+))`,xr=`[a-zA-Z0-9_.:%-]`,Sr=RegExp(`^did:${yr}:${br}${`((${`;${xr}+=${xr}*`})*)`}(/[^#?]*)?([?][^#]*)?(#.*)?$`);function Cr(e){if(e===``||!e)return null;let t=e.match(Sr);if(t){let n={did:`did:${t[1]}:${t[2]}`,method:t[1],id:t[2],didUrl:e};if(t[4]){let e=t[4].slice(1).split(`;`);n.params={};for(let t of e){let e=t.split(`=`);n.params[e[0]]=e[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 wr={didResolutionMetadata:{},didDocument:null,didDocumentMetadata:{}};function Tr(e){return function(t,n,r){try{return Promise.resolve(hr(function(){return Promise.resolve(e(t,n,r)).then(function(e){return{...wr,didResolutionMetadata:{contentType:`application/did+ld+json`},didDocument:e}})},function(e){return{...wr,didResolutionMetadata:{error:`notFound`,message:e.toString()}}}))}catch(e){return Promise.reject(e)}}}var Er=class{constructor(e={},t={}){this.registry=void 0,this.cache=void 0,this.registry=e,this.cache=t.cache===!0?gr():t.cache||_r,t.legacyResolvers&&Object.keys(t.legacyResolvers).map(e=>{this.registry[e]||(this.registry[e]=Tr(t.legacyResolvers[e]))})}resolve(e,t={}){try{let n=this,r=Cr(e);if(r===null)return Promise.resolve({...wr,didResolutionMetadata:{error:`invalidDid`}});let i=n.registry[r.method];return i?Promise.resolve(n.cache(r,()=>i(r.did,r,n,t))):Promise.resolve({...wr,didResolutionMetadata:{error:`unsupportedDidMethod`}})}catch(e){return Promise.reject(e)}}},Dr=e=>Object.freeze(e());function Or(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1}function kr(e){if(!Or(e))throw TypeError(`Uint8Array expected`)}function Ar(e,t){return Array.isArray(t)?t.length===0?!0:e?t.every(e=>typeof e==`string`):t.every(e=>Number.isSafeInteger(e)):!1}function jr(e){if(typeof e!=`function`)throw TypeError(`function expected`);return!0}function Mr(e,t){if(typeof t!=`string`)throw TypeError(`${e}: string expected`);return!0}function Nr(e,t=`number`){if(typeof e!=`number`)throw TypeError(`${t}: expected number, got ${typeof e}`);if(!Number.isSafeInteger(e))throw RangeError(`${t}: expected safe integer, got ${e}`)}function Pr(e,t){if(!Ar(!1,t))throw TypeError(`${e}: array of numbers expected`)}var Fr=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function Ir(e,t=e.length){let n=Array(t);for(let r=0;r<t;r++)n[r]=e[r];return n}var Lr=(()=>{try{let e=new TextDecoder;return e.decode(Uint8Array.of(65,48,43,127))===`A0+`?e:void 0}catch{return}})(),Rr=8192;function zr(e){let t=e.length;if(Lr!==void 0&&t>=12)return Lr.decode(e);if(t<=Rr)return String.fromCharCode.apply(null,e);let n=``;for(let r=0;r<t;r+=Rr)n+=String.fromCharCode.apply(null,e.subarray(r,r+Rr));return n}function Br(e){if(Nr(e),e<=0||e>8)throw RangeError(`radix2: bits should be in (0..8]`);let t=Fr[e]-1;return{encode:n=>{kr(n);let r=n.length,i=new Uint8Array(Math.ceil(r*8/e)),a=0,o=0,s=0;for(let c=0;c<r;)for(c+2<r?(a=a<<24|n[c]<<16|n[c+1]<<8|n[c+2],o+=24,c+=3):(a=(a<<8|n[c])&65535,o+=8,c++);o-=e,i[s++]=a>>o&t,!(o<e););return o>0&&(i[s]=a<<e-o&t),i},decode:t=>{let n=t.length,r=new Uint8Array(Math.floor(n*e/8)),i=0,a=0,o=0;for(let s=0;s<n;s++)for(i=(i<<e|t[s])&65535,a+=e;a>=8;a-=8)r[o++]=i>>a-8&255;if(i=i<<8-a&255,a>=e)throw Error(`Excess padding`);if(i>0)throw Error(`Non-zero padding: ${i}`);return r}}}function Vr(e,t){let n=e.length;if(n>128)throw Error(`alphabet: max 128 letters`);let r=new Uint8Array(n),i=new Int8Array(128).fill(-1);for(let t=0;t<n;t++){let n=e.charCodeAt(t);if(e.codePointAt(t)!==n||n>127)throw Error(`alphabet: single-char ASCII letters only`);r[t]=n,i[n]=t}if(t!==void 0)for(let e of Object.keys(t)){let n=e.charCodeAt(0),r=i[t[e].charCodeAt(0)];if(e.length!==1||n>127||r===void 0||r===-1)throw Error(`alphabet: invalid alias ${e}`);i[n]=r}return{encode:e=>{let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){let i=e[n],a=r[i];if(a===void 0)throw Error(`alphabet.encode: invalid digit ${i}`);t[n]=a}return zr(t)},decode:t=>{Mr(`decode`,t);let n=t.length,r=new Uint8Array(n);for(let a=0;a<n;a++){let n=t.charCodeAt(a),o=n<128?i[n]:-1;if(o===-1)throw Error(`Unknown letter "${t[a]}". Allowed: ${e}`);r[a]=o}return r}}}function Hr(e){return jr(e),function(...t){try{return e.apply(null,t)}catch{}}}var Ur=Vr(`qpzry9x8gf2tvdw0s3jn54khce6mua7l`),Wr=/^[\x21-\x60\x7b-\x7e]+$/;function Gr(e,t){for(let n=0;n<t.length;n++){let r=t.charCodeAt(n);if(r<33||r>126)throw Error(`${e}: printable ASCII expected`)}}function Kr(e){let t=e.length,n=new Uint8Array(t);for(let r=0;r<t;r++){let t=e[r];if(t<0||t>=32)throw Error(`alphabet.encode: invalid digit ${t}`);n[r]=t}return n}var qr=[996825010,642813549,513874426,1027748829,705979059];function Jr(e){let t=e>>25,n=(e&33554431)<<5;for(let e=0;e<qr.length;e++)(t>>e&1)==1&&(n^=qr[e]);return n}function Yr(e,t,n=1){let r=e.length,i=1;for(let t=0;t<r;t++){let n=e.charCodeAt(t);if(n<33||n>126)throw Error(`Invalid prefix (${e})`);i=Jr(i)^n>>5}i=Jr(i);for(let t=0;t<r;t++)i=Jr(i)^e.charCodeAt(t)&31;for(let e of t)i=Jr(i)^e;for(let e=0;e<6;e++)i=Jr(i);i^=n;let a=new Uint8Array(6);for(let e=0;e<6;e++)a[e]=i>>>5*(5-e)&31;return Ur.encode(a)}function Xr(e){let t=e===`bech32`?1:734539939,n=Br(5),r=e=>{kr(e);let t=e.length,n=Array(Math.ceil(t*8/5)),r=0,i=0,a=0;for(let o=0;o<t;o++)for(r=r<<8|e[o],i+=8;i>=5;i-=5)n[a++]=r>>i-5&31;return i>0&&(n[a]=r<<5-i&31),n},i=e=>{Pr(`radix2.decode`,e);let t=e.length,r=new Uint8Array(t);for(let n=0;n<t;n++){let t=e[n];if(t<0||t>=32)throw Error(`convertRadix2: invalid word=${t}`);r[n]=t}return n.decode(r)},a=Hr(i);function o(e,n,r=90){Mr(`bech32.encode prefix`,e),r!==!1&&Nr(r,`limit`),Or(n)&&(n=Ir(n)),Pr(`bech32.encode`,n);let i=e.length;if(i===0)throw TypeError(`Invalid prefix length ${i}`);let a=i+7+n.length;if(r!==!1&&a>r)throw TypeError(`Length ${a} exceeds limit ${r}`);Gr(`bech32.encode prefix`,e);let o=e.toLowerCase(),s=Yr(o,n,t);return`${o}1${Ur.encode(Kr(n))}${s}`}function s(e,n=90){Mr(`bech32.decode input`,e),n!==!1&&Nr(n,`limit`);let r=e.length;if(r<8||n!==!1&&r>n)throw TypeError(`invalid string length ${r}, expected (8..${n})`);let i=e.toLowerCase();if(e!==i&&!Wr.test(e))throw Gr(`bech32.decode input`,e),Error(`mixed-case string not allowed`);let a=i.lastIndexOf(`1`);if(a===0||a===-1)throw Error(`invalid separator "1"`);let o=i.slice(0,a),s=i.slice(a+1);if(s.length<6)throw Error(`invalid data length`);let c=Ur.decode(s),l=Ir(c,c.length-6),u=Yr(o,l,t);if(!s.endsWith(u))throw Error(`Invalid checksum in ${e}`);return{prefix:o,words:l}}let c=Hr(s);function l(e,t=90){let{prefix:n,words:r}=s(e,t);return{prefix:n,words:r,bytes:i(r)}}function u(e,t){return o(e,r(t))}return{encode:o,decode:s,encodeFromBytes:u,decodeToBytes:l,decodeUnsafe:c,fromWords:i,fromWordsUnsafe:a,toWords:r}}var Zr=Dr(()=>Xr(`bech32`)),Qr={toString:Se,fromString:be,concat:xe};function $r(e){return Qr.toString(e,`base64url`)}function ei(e){let t=e.replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=/g,``);return Qr.fromString(t,`base64url`)}function ti(e){return Qr.fromString(e,`base58btc`)}function ni(e){return Qr.toString(e,`base58btc`)}var ri={ES256:[`JsonWebKey2020`,`Multikey`,`EcdsaSecp256r1VerificationKey2019`],ES256K:[`EcdsaSecp256k1VerificationKey2019`,`EcdsaSecp256k1RecoveryMethod2020`,`Secp256k1VerificationKey2018`,`Secp256k1SignatureVerificationKey2018`,`EcdsaPublicKeySecp256k1`,`JsonWebKey2020`,`Multikey`],"ES256K-R":[`EcdsaSecp256k1VerificationKey2019`,`EcdsaSecp256k1RecoveryMethod2020`,`Secp256k1VerificationKey2018`,`Secp256k1SignatureVerificationKey2018`,`EcdsaPublicKeySecp256k1`,`ConditionalProof2022`,`JsonWebKey2020`,`Multikey`],Ed25519:[`ED25519SignatureVerification`,`Ed25519VerificationKey2018`,`Ed25519VerificationKey2020`,`JsonWebKey2020`,`Multikey`],EdDSA:[`ED25519SignatureVerification`,`Ed25519VerificationKey2018`,`Ed25519VerificationKey2020`,`JsonWebKey2020`,`Multikey`]},ii={Secp256k1SignatureVerificationKey2018:`Secp256k1`,Secp256k1VerificationKey2018:`Secp256k1`,EcdsaSecp256k1VerificationKey2019:`Secp256k1`,EcdsaPublicKeySecp256k1:`Secp256k1`,EcdsaSecp256k1RecoveryMethod2020:`Secp256k1`,EcdsaSecp256r1VerificationKey2019:`P-256`,Ed25519VerificationKey2018:`Ed25519`,Ed25519VerificationKey2020:`Ed25519`,ED25519SignatureVerification:`Ed25519`,X25519KeyAgreementKey2019:`X25519`,X25519KeyAgreementKey2020:`X25519`,ConditionalProof2022:void 0,JsonWebKey2020:void 0,Multikey:void 0},ai={"ed25519-pub":237,"x25519-pub":236,"secp256k1-pub":231,"bls12_381-g1-pub":234,"bls12_381-g2-pub":235,"p256-pub":4608},oi={"bls12_381-g1-pub":`Bls12381G1`,"bls12_381-g2-pub":`Bls12381G2`,"ed25519-pub":`Ed25519`,"p256-pub":`P-256`,"secp256k1-pub":`Secp256k1`,"x25519-pub":`X25519`};function si(e){if(e.publicKeyBase58)return{keyBytes:ti(e.publicKeyBase58),keyType:ii[e.type]};if(e.publicKeyBase64)return{keyBytes:ei(e.publicKeyBase64),keyType:ii[e.type]};if(e.publicKeyHex)return{keyBytes:li(e.publicKeyHex),keyType:ii[e.type]};if(e.publicKeyJwk&&e.publicKeyJwk.crv===`secp256k1`&&e.publicKeyJwk.x&&e.publicKeyJwk.y)return{keyBytes:Sn.ProjectivePoint.fromAffine({x:pi(ei(e.publicKeyJwk.x)),y:pi(ei(e.publicKeyJwk.y))}).toRawBytes(!1),keyType:`Secp256k1`};if(e.publicKeyJwk&&e.publicKeyJwk.crv===`P-256`&&e.publicKeyJwk.x&&e.publicKeyJwk.y)return{keyBytes:me.ProjectivePoint.fromAffine({x:pi(ei(e.publicKeyJwk.x)),y:pi(ei(e.publicKeyJwk.y))}).toRawBytes(!1),keyType:`P-256`};if(e.publicKeyJwk&&e.publicKeyJwk.kty===`OKP`&&[`Ed25519`,`X25519`].includes(e.publicKeyJwk.crv??``)&&e.publicKeyJwk.x)return{keyBytes:ei(e.publicKeyJwk.x),keyType:e.publicKeyJwk.crv};if(e.publicKeyMultibase){let{keyBytes:t,keyType:n}=ci(e.publicKeyMultibase);return{keyBytes:t,keyType:n??ii[e.type]}}return{keyBytes:new Uint8Array}}function ci(e){let t=(0,pr.decode)(e);if([32,33,48,64,65,96].includes(t.length))return{keyBytes:t};try{let[e,n]=Ce(t),r=Object.entries(ai).filter(([,t])=>t===e)?.[0][0]??``;return{keyBytes:t.slice(n),keyType:oi[r]}}catch{return{keyBytes:t}}}function li(e,t){let n=e.startsWith(`0x`)?e.substring(2):e;if(n.length%2!=0&&(n=`0${n}`),t){let e=Math.max(n.length,t*2);n=n.padStart(e,`00`)}return Qr.fromString(n.toLowerCase(),`base16`)}function ui(e){return $r(Qr.fromString(e))}function di(e){return Qr.toString(ei(e))}function fi(e){return Qr.toString(e,`base16`)}function pi(e){return BigInt(`0x`+Qr.toString(e,`base16`))}function mi(e){return Qr.fromString(e,`utf-8`)}function hi({r:e,s:t,recoveryParam:n},r){let i=new Uint8Array(r?65:64);if(i.set(Qr.fromString(e,`base16`),0),i.set(Qr.fromString(t,`base16`),32),r){if(n===void 0)throw Error(`Signer did not return a recoveryParam`);i[64]=n}return $r(i)}function gi(e){let t=ei(e);if(t.length<64||t.length>65)throw TypeError(`Wrong size for signature. Expected 64 or 65 bytes, but got ${t.length}`);return{r:fi(t.slice(0,32)),s:fi(t.slice(32,64)),recoveryParam:t.length===65?t[64]:void 0}}function _i(e){let t=typeof e==`string`?be(e):e;return _(t)}var vi=p;function yi(e){let t=be(e.slice(2),`base16`);return`0x${Se(vi(t).slice(-20),`base16`)}`}function bi(e){return typeof e==`object`&&`r`in e&&`s`in e}function xi(){return function(e,t){try{return Promise.resolve(t(e)).then(function(e){return bi(e)?hi(e):e})}catch(e){return Promise.reject(e)}}}function Si(e){return function(t,n){try{return Promise.resolve(n(t)).then(function(t){if(bi(t))return hi(t,e);if(e&&gi(t).recoveryParam===void 0)throw Error(`not_supported: ES256K-R not supported when signer doesn't provide a recovery param`);return t})}catch(e){return Promise.reject(e)}}}function Ci(){return function(e,t){try{return Promise.resolve(t(e)).then(function(e){if(bi(e))throw Error(`invalid_config: expected a signer function that returns a string instead of signature object`);return e})}catch(e){return Promise.reject(e)}}}var wi={ES256:xi(),ES256K:Si(),"ES256K-R":Si(!0),Ed25519:Ci(),EdDSA:Ci()};function Ti(e){let t=wi[e];if(!t)throw Error(`not_supported: Unsupported algorithm ${e}`);return t}function Ei(e,t){let n=fi(ti(t).slice(0,1))+fi(hn(_i(li(e))));return ni(li(n+fi(_i(_i(li(n)))).substring(0,8)))}function Di(e,t){let n=hn(_i(Sn.ProjectivePoint.fromHex(e).toRawBytes())),r=Zr.toWords(n);return Zr.encode(t,r).replace(t,``)}function Oi(e,t){if(t){let n=t.split(`:`);switch(n[0]){case`bip122`:n[n.length-1]=Ei(e,n[n.length-1]);break;case`cosmos`:n[n.length-1]=Di(e,n[1]);break;case`eip155`:n[n.length-1]=yi(e);break;default:return!1}return n.join(`:`).toLowerCase()===t.toLowerCase()}return!1}function ki(e,t=!1){let n=ei(e);if(n.length!==(t?65:64))throw Error(`wrong signature length`);let r={r:fi(n.slice(0,32)),s:fi(n.slice(32,64))};return t&&(r.recoveryParam=n[64]),r}function Ai(e,t=!1){let n=ei(e);if(n.length!==(t?65:64))throw Error(`wrong signature length`);return{compact:n.slice(0,64),recovery:n[64]}}function ji(e,t,n){let r=_i(e),i=me.Signature.fromCompact(Ai(t).compact),a=n.filter(e=>!e.ethereumAddress&&!e.blockchainAccountId).find(e=>{try{let{keyBytes:t}=si(e);return me.verify(i,r,t)}catch{return!1}});if(!a)throw Error(`invalid_signature: Signature invalid for JWT`);return a}function Mi(e,t,n){let r=_i(e),i=Sn.Signature.fromCompact(ei(t)).normalizeS(),a=n.filter(e=>!e.ethereumAddress&&!e.blockchainAccountId),o=n.filter(e=>e.ethereumAddress||e.blockchainAccountId),s=a.find(e=>{try{let{keyBytes:t}=si(e);return Sn.verify(i,r,t)}catch{return!1}});if(!s&&o.length>0&&(s=Ni(e,t,o)),!s)throw Error(`invalid_signature: Signature invalid for JWT`);return s}function Ni(e,t,n){let r=[];if(t.length>86)r.push(Ai(t,!0));else{let e=Ai(t,!1);r.push({...e,recovery:0}),r.push({...e,recovery:1})}let i=_i(e),a=e=>{let t=Sn.Signature.fromCompact(e.compact).addRecoveryBit(e.recovery||0).recoverPublicKey(i),r=yi(t.toHex(!1)).toLowerCase(),a=t.toHex(!1),o=t.toHex(!0);return n.find(e=>{let{keyBytes:t}=si(e),n=fi(t);return n===a||n===o||e.ethereumAddress?.toLowerCase()===r||e.blockchainAccountId?.split(`@eip155`)?.[0].toLowerCase()===r||Oi(a,e.blockchainAccountId)})};for(let e of r){let t=a(e);if(t)return t}throw Error(`invalid_signature: Signature invalid for JWT`)}function Pi(e,t,n){let r=mi(e),i=ei(t),a=n.find(e=>{let{keyBytes:t,keyType:n}=si(e);return n===`Ed25519`&&Yn.verify(i,r,t)});if(!a)throw Error(`invalid_signature: Signature invalid for JWT`);return a}var Fi={ES256:ji,ES256K:Mi,"ES256K-R":Ni,Ed25519:Pi,EdDSA:Pi};function Ii(e){let t=Fi[e];if(!t)throw Error(`not_supported: Unsupported algorithm ${e}`);return t}Ii.toSignatureObject=ki;var C={INVALID_JWT:`invalid_jwt`,INVALID_AUDIENCE:`invalid_config`,INVALID_SIGNATURE:`invalid_signature`,NO_SUITABLE_KEYS:`no_suitable_keys`,NOT_SUPPORTED:`not_supported`,RESOLVER_ERROR:`resolver_error`};function Li(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}var Ri=function(e,{header:t,payload:n,data:r,signature:i},a,o){try{if(!a.conditionDelegated)throw Error(`Expected conditionDelegated`);if(!o.resolver)throw Error(`Expected resolver`);let s,c=a.conditionDelegated;return Promise.resolve($i(o.resolver,t.alg,c,o.proofPurpose)).then(function(l){function u(e){if(s)return a;throw Error(`${C.INVALID_SIGNATURE}: condition for authenticator ${a.id} is not met.`)}let d=l.didResolutionResult;if(!d?.didDocument)throw Error(`${C.RESOLVER_ERROR}: Could not resolve delegated DID ${c}.`);let f=l.authenticators.find(e=>e.id===c);if(!f)throw Error(`${C.NO_SUITABLE_KEYS}: Could not find delegated authenticator ${c} in it's DID Document`);let p=function(){if(f.type===qi)return Promise.resolve(ea(e,{...o,didAuthenticator:{didResolutionResult:d,authenticators:[f],issuer:f.id}})).then(function({verified:e}){e&&(s=f)});try{s=pa({header:t,payload:n,data:r,signature:i},f)}catch(e){if(!e.message.startsWith(`invalid_signature:`))throw e}}();return p&&p.then?p.then(u):u(p)})}catch(e){return Promise.reject(e)}},zi=typeof Symbol<`u`?Symbol.iterator||(Symbol.iterator=Symbol(`Symbol.iterator`)):`@@iterator`;function w(e,t,n){if(!e.s){if(n instanceof Bi){if(n.s)t&1&&(t=n.s),n=n.v;else{n.o=w.bind(null,e,t);return}}if(n&&n.then){n.then(w.bind(null,e,t),w.bind(null,e,2));return}e.s=t,e.v=n;let r=e.o;r&&r(e)}}var Bi=function(){function e(){}return e.prototype.then=function(t,n){let r=new e,i=this.s;if(i){let e=i&1?t:n;if(e){try{w(r,1,e(this.v))}catch(e){w(r,2,e)}return r}return this}return this.o=function(e){try{let i=e.v;e.s&1?w(r,1,t?t(i):i):n?w(r,1,n(i)):w(r,2,i)}catch(e){w(r,2,e)}},r},e}();function Vi(e){return e instanceof Bi&&e.s&1}function Hi(e,t,n){var r=-1,i,a;function o(s){try{for(;++r<e.length&&(!n||!n());)if(s=t(r),s&&s.then){if(Vi(s))s=s.v;else{s.then(o,a||=w.bind(null,i=new Bi,2));return}}i?w(i,1,s):i=s}catch(e){w(i||=new Bi,2,e)}}return o(),i}var Ui=function(e,{header:t,payload:n,data:r,signature:i},a,o){try{let s;function c(e){if(s)return e;throw Error(`${C.INVALID_SIGNATURE}: condition for authenticator ${a.id} is not met.`)}if(!a.conditionWeightedThreshold||!a.threshold)throw Error(`Expected conditionWeightedThreshold and threshold`);let l=[],u=a.threshold,d=0,f=Wi(a.conditionWeightedThreshold,function(c){function f(e){if(s)return e;if(m&&!l.includes(m.id)&&(l.push(m.id),d+=c.weight,d>=u))return s=1,a}let p=c.condition,m,h=Li(function(){if(p.type===qi){if(!o.didAuthenticator)throw Error(`Expected didAuthenticator`);let t={...o,didAuthenticator:{didResolutionResult:o.didAuthenticator?.didResolutionResult,authenticators:[p],issuer:p.id}};return Promise.resolve(ea(e,t)).then(function({verified:e}){e&&(m=p)})}return Promise.resolve(pa({header:t,payload:n,data:r,signature:i},p)).then(function(e){m=e})},function(e){if(!e.message.startsWith(C.INVALID_SIGNATURE))throw e});return h&&h.then?h.then(f):f(h)},function(){return s});return Promise.resolve(f&&f.then?f.then(c):c(f))}catch(e){return Promise.reject(e)}};function Wi(e,t,n){if(typeof e[zi]==`function`){var r=e[zi](),i,a,o;function c(e){try{for(;!(i=r.next()).done&&(!n||!n());)if(e=t(i.value),e&&e.then){if(Vi(e))e=e.v;else{e.then(c,o||=w.bind(null,a=new Bi,2));return}}a?w(a,1,e):a=e}catch(e){w(a||=new Bi,2,e)}}if(c(),r.return){var s=function(e){try{i.done||r.return()}catch{}return e};if(a&&a.then)return a.then(s,function(e){throw s(e)});s()}return a}if(!(`length`in e))throw TypeError(`Object is not iterable`);for(var c=[],l=0;l<e.length;l++)c.push(e[l]);return Hi(c,function(e){return t(c[e])},n)}var Gi=function(e,{header:t,payload:n,signature:r,data:i},a,o){try{if(a.conditionWeightedThreshold)return Ui(e,{header:t,payload:n,data:i,signature:r},a,o);if(a.conditionDelegated)return Ri(e,{header:t,payload:n,data:i,signature:r},a,o);throw Error(`${C.INVALID_JWT}: conditional proof type did not find condition for authenticator ${a.id}.`)}catch(e){return Promise.reject(e)}},Ki=function(e,{header:t,payload:n,signature:r,data:i},a,o){try{return a.type===qi?Gi(e,{payload:n,header:t,signature:r,data:i},a,o):Promise.resolve(pa({header:t,payload:n,data:i,signature:r},[a]))}catch(e){return Promise.reject(e)}},qi=`ConditionalProof2022`;function T(e,t,n){if(!e.s){if(n instanceof Ji){if(n.s)t&1&&(t=n.s),n=n.v;else{n.o=T.bind(null,e,t);return}}if(n&&n.then){n.then(T.bind(null,e,t),T.bind(null,e,2));return}e.s=t,e.v=n;let r=e.o;r&&r(e)}}var Ji=function(){function e(){}return e.prototype.then=function(t,n){let r=new e,i=this.s;if(i){let e=i&1?t:n;if(e){try{T(r,1,e(this.v))}catch(e){T(r,2,e)}return r}return this}return this.o=function(e){try{let i=e.v;e.s&1?T(r,1,t?t(i):i):n?T(r,1,n(i)):T(r,2,i)}catch(e){T(r,2,e)}},r},e}();function Yi(e){return e instanceof Ji&&e.s&1}function Xi(e,t,n){var r=-1,i,a;function o(s){try{for(;++r<e.length&&(!n||!n());)if(s=t(r),s&&s.then){if(Yi(s))s=s.v;else{s.then(o,a||=T.bind(null,i=new Ji,2));return}}i?T(i,1,s):i=s}catch(e){T(i||=new Ji,2,e)}}return o(),i}function Zi(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function Qi(e,t,n){for(var r;;){var i=e();if(Yi(i)&&(i=i.v),!i)return a;if(i.then){r=0;break}var a=n();if(a&&a.then){if(Yi(a))a=a.s;else{r=1;break}}if(t){var o=t();if(o&&o.then&&!Yi(o)){r=2;break}}}var s=new Ji,c=T.bind(null,s,2);return(r===0?i.then(u):r===1?a.then(l):o.then(d)).then(void 0,c),s;function l(r){a=r;do{if(t&&(o=t(),o&&o.then&&!Yi(o))){o.then(d).then(void 0,c);return}if(i=e(),!i||Yi(i)&&!i.v){T(s,1,a);return}if(i.then){i.then(u).then(void 0,c);return}a=n(),Yi(a)&&(a=a.v)}while(!a||!a.then);a.then(l).then(void 0,c)}function u(e){e?(a=n(),a&&a.then?a.then(l).then(void 0,c):l(a)):T(s,1,a)}function d(){(i=e())?i.then?i.then(u).then(void 0,c):u(i):T(s,1,a)}}var $i=function(e,t,n,r){try{let i=ri[t];if(!i||i.length===0)throw Error(`${C.NOT_SUPPORTED}: No supported signature types for algorithm ${t}`);let a;return Promise.resolve(e.resolve(n,{accept:ca})).then(function(e){if(a=Object.getOwnPropertyNames(e).indexOf(`didDocument`)===-1?{didDocument:e,didDocumentMetadata:{},didResolutionMetadata:{contentType:ca}}:e,a.didResolutionMetadata?.error||a.didDocument==null){let{error:e,message:t}=a.didResolutionMetadata;throw Error(`${C.RESOLVER_ERROR}: Unable to resolve DID document for ${n}: ${e}, ${t||``}`)}let o=(e,t)=>{let n=e.filter(({id:e})=>t===e);return n.length>0?n[0]:null},s=[...a?.didDocument?.verificationMethod||[],...a?.didDocument?.publicKey||[]];typeof r==`string`&&(r.startsWith(`assertion`)&&!Object.getOwnPropertyNames(a?.didDocument).includes(`assertionMethod`)&&(a.didDocument={...a.didDocument},a.didDocument.assertionMethod=[...s.map(e=>e.id)]),s=(a.didDocument[r]||[]).map(e=>typeof e==`string`?o(s,e):typeof e.publicKey==`string`?o(s,e.publicKey):e).filter(e=>e!=null));let c=s.filter(({type:e})=>i.find(t=>t===e));if(typeof r==`string`&&(!c||c.length===0))throw Error(`${C.NO_SUITABLE_KEYS}: DID document for ${n} does not have public keys suitable for ${t} with ${r} purpose`);if(!c||c.length===0)throw Error(`${C.NO_SUITABLE_KEYS}: DID document for ${n} does not have public keys for ${t}`);return{authenticators:c,issuer:n,didResolutionResult:a}})}catch(e){return Promise.reject(e)}},ea=function(e,t={resolver:void 0,auth:void 0,audience:void 0,callbackUrl:void 0,skewTime:void 0,proofPurpose:void 0,policies:{},didAuthenticator:void 0}){try{function n(){function n(n){if(f){let n=typeof t.policies?.now==`number`?t.policies.now:Math.floor(Date.now()/1e3),i=t.skewTime!==void 0&&t.skewTime>=0?t.skewTime:ua,a=n+i;if(t.policies?.nbf!==!1&&r.nbf){if(r.nbf>a)throw Error(`${C.INVALID_JWT}: JWT not valid before nbf: ${r.nbf}`)}else if(t.policies?.iat!==!1&&r.iat&&r.iat>a)throw Error(`${C.INVALID_JWT}: JWT not valid yet (issued in the future) iat: ${r.iat}`);if(t.policies?.exp!==!1&&r.exp&&r.exp<=n-i)throw Error(`${C.INVALID_JWT}: JWT has expired: exp: ${r.exp} < now: ${n}`);if(t.policies?.aud!==!1&&r.aud){if(!t.audience&&!t.callbackUrl)throw Error(`${C.INVALID_AUDIENCE}: JWT audience is required but your app address has not been configured`);if((Array.isArray(r.aud)?r.aud:[r.aud]).find(e=>t.audience===e||t.callbackUrl===e)===void 0)throw Error(`${C.INVALID_AUDIENCE}: JWT audience does not match your DID or callback url`)}return{verified:!0,payload:r,didResolutionResult:d,issuer:u,signer:f,jwt:e,policies:t.policies}}throw Error(`${C.INVALID_SIGNATURE}: JWT not valid. issuer DID document does not contain a verificationMethod that matches the signature.`)}let{did:s}=Cr(c),f=null,p=function(){if(s!==c){let n=l.find(e=>e.id===c);if(!n)throw Error(`${C.INVALID_JWT}: No authenticator found for did URL ${c}`);return Promise.resolve(Ki(e,{payload:r,header:i,signature:a,data:o},n,t)).then(function(e){f=e})}{let n=0;return Qi(function(){return!f&&n<l.length},void 0,function(){function s(e){n++}let c=l[n],u=Zi(function(){return Promise.resolve(Ki(e,{payload:r,header:i,signature:a,data:o},c,t)).then(function(e){f=e})},function(e){if(!e.message.includes(C.INVALID_SIGNATURE)||n===l.length-1)throw e});return u&&u.then?u.then(s):s(u)})}}();return p&&p.then?p.then(n):n(p)}if(!t.resolver)throw Error(`missing_resolver: No DID resolver has been configured`);let{payload:r,header:i,signature:a,data:o}=fa(e,!1),s=Object.prototype.hasOwnProperty.call(t,`auth`)?t.auth?`authentication`:void 0:t.proofPurpose,c;if(!r.iss&&!r.client_id)throw Error(`${C.INVALID_JWT}: JWT iss or client_id are required`);if(t.didAuthenticator)c=t.didAuthenticator.issuer;else if(r.iss===ia||r.iss===aa){if(!r.sub)throw Error(`${C.INVALID_JWT}: JWT sub is required`);c=r.sub_jwk===void 0?r.sub:(i.kid||``).split(`#`)[0]}else if(r.iss===oa){if(!r.did)throw Error(`${C.INVALID_JWT}: JWT did is required`);c=r.did}else if(!r.iss&&r.scope===`openid`&&r.redirect_uri){if(!r.client_id)throw Error(`${C.INVALID_JWT}: JWT client_id is required`);c=r.client_id}else c=r.iss;if(!c)throw Error(`${C.INVALID_JWT}: No DID has been found in the JWT`);let l,u,d,f=function(){if(t.didAuthenticator)({didResolutionResult:d,authenticators:l,issuer:u}=t.didAuthenticator);else return Promise.resolve($i(t.resolver,i.alg,c,s)).then(function(e){({didResolutionResult:d,authenticators:l,issuer:u}=e),t.didAuthenticator={didResolutionResult:d,authenticators:l,issuer:u}})}();return Promise.resolve(f&&f.then?f.then(n):n(f))}catch(e){return Promise.reject(e)}},ta=function(e,{expiresIn:t,canonicalize:n},r){try{if(r.length===0)throw Error(`invalid_argument: must provide one or more issuers`);let i=e,a=``,o=Xi(r,function(e){let o=r[e],s={typ:`JWT`,alg:o.alg};return e!==0&&(s.cty=`JWT`),Promise.resolve(na(i,{...o,canonicalize:n,expiresIn:t},s)).then(function(e){a=e,i={jwt:a}})});return Promise.resolve(o&&o.then?o.then(function(){return a}):a)}catch(e){return Promise.reject(e)}},na=function(e,{issuer:t,signer:n,alg:r,expiresIn:i,canonicalize:a},o={}){try{if(!n)throw Error(`missing_signer: No Signer functionality has been configured`);if(!t)throw Error(`missing_issuer: No issuing DID has been configured`);o.typ||=`JWT`,o.alg||=r;let s={iat:Math.floor(Date.now()/1e3),exp:void 0};if(i){if(typeof i==`number`)s.exp=(e.nbf||s.iat)+Math.floor(i);else throw Error(`invalid_argument: JWT expiresIn is not a number`)}return ra({...s,...e,iss:t},n,o,{canonicalize:a})}catch(e){return Promise.reject(e)}},ra=function(e,t,n={},r={}){try{n.alg||=sa;let i=typeof e==`string`?e:la(e,r.canonicalize),a=[la(n,r.canonicalize),i].join(`.`),o=Ti(n.alg);return Promise.resolve(o(a,t)).then(function(e){return[a,e].join(`.`)})}catch(e){return Promise.reject(e)}},ia=`https://self-issued.me/v2`,aa=`https://self-issued.me/v2/openid-vc`,oa=`https://self-issued.me`,sa=`ES256K`,ca=`application/did+json`;function la(e,t=!1){return ui(t?(0,mr.default)(e):JSON.stringify(e))}var ua=300;function da(e){let t=e.match(/^([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)$/);if(t)return{header:JSON.parse(di(t[1])),payload:t[2],signature:t[3],data:`${t[1]}.${t[2]}`};throw Error(`invalid_argument: Incorrect format JWS`)}function fa(e,t=!0){if(!e)throw Error(`invalid_argument: no JWT passed into decodeJWT`);try{let n=da(e),r=Object.assign(n,{payload:JSON.parse(di(n.payload))}),i=r.payload.iss;if(r.header.cty===`JWT`&&t){let e=fa(r.payload.jwt);if(e.payload.iss!==i)throw Error(`${C.INVALID_JWT}: multiple issuers`);return e}return r}catch(e){throw Error(`invalid_argument: ${C.INVALID_JWT}: ${e}`)}}function pa({header:e,payload:t,data:n,signature:r},i){Array.isArray(i)||(i=[i]);let a=t.iss,o=!0;do{if(a!==t.iss)throw Error(`${C.INVALID_JWT}: multiple issuers`);try{return Ii(e.alg)(n,r,i)}catch(e){if(!e.message.startsWith(C.INVALID_SIGNATURE))throw e}e.cty===`JWT`?{payload:t,header:e,signature:r,data:n}=fa(t.jwt,!1):o=!1}while(o);throw Error(`${C.INVALID_SIGNATURE}: no matching public key found`)}typeof Symbol<`u`&&(Symbol.iterator||(Symbol.iterator=Symbol(`Symbol.iterator`)));var ma=`ES256K`,ha=/^[A-Za-z0-9-_=]+\.[A-Za-z0-9-_=]+\.?[A-Za-z0-9-_.+/=]*$/,ga=`https://www.w3.org/2018/credentials/v1`,_a=`VerifiableCredential`,va=`JwtProof2020`,ya=[`evidence`,`termsOfUse`,`refreshService`,`credentialSchema`,`credentialStatus`];function ba(e){return Array.isArray(e)?e:[e]}function xa(e){return Array.isArray(e)?e.map(e=>xa(e)):e instanceof Date?new Date(e.getTime()):e&&typeof e==`object`?Object.getOwnPropertyNames(e).reduce((t,n)=>(Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n)),t[n]=xa(e[n]),t),Object.create(Object.getPrototypeOf(e))):e}function Sa(e){return e!=null}function Ca(e){if(typeof e!=`object`||!e)return e;let t={...e};return Object.keys(t).forEach(e=>t[e]===void 0&&delete t[e]),t}function wa(e){return typeof e==`object`&&e.sub&&e.iss&&e.claim&&e.iat}function Ta(e){let{iat:t,nbf:n,claim:r,vc:i,...a}=e,o={...a,nbf:n||t,vc:{"@context":[ga],type:[_a],credentialSubject:r}};return i&&(e.issVc=i),o}function Ea(e,t=!0){let n=xa(e);wa(e)&&(n=Ta(e)),n.credentialSubject={...e.credentialSubject,...e.vc?.credentialSubject},e.sub&&!e.credentialSubject?.id&&n.credentialSubject&&(n.credentialSubject.id=e.sub,t&&delete n.sub),t&&delete n.vc?.credentialSubject,(e.issuer===void 0||typeof e.issuer==`object`)&&(n.issuer=Ca({id:e.iss,...e.issuer}),t&&!e.issuer?.id&&delete n.iss),!e.id&&e.jti&&(n.id=n.id||n.jti,t&&delete n.jti);let r=[...ba(n.type),...ba(n.vc?.type)].filter(Sa);n.type=[...new Set(r)],t&&delete n.vc?.type;for(let r of ya)e.vc&&e.vc[r]&&(n[r]||(n[r]=e.vc[r]),t&&delete n.vc[r]);let i=[...ba(e.context),...ba(e[`@context`]),...ba(e.vc?.[`@context`])].filter(Sa);return n[`@context`]=[...new Set(i)],t&&(delete n.context,delete n.vc?.[`@context`]),!e.issuanceDate&&(e.iat||e.nbf)&&(n.issuanceDate=new Date((e.nbf||e.iat)*1e3).toISOString(),t&&(e.nbf?delete n.nbf:delete n.iat)),!e.expirationDate&&e.exp&&(n.expirationDate=new Date(e.exp*1e3).toISOString(),t&&delete n.exp),t&&n.vc&&Object.keys(n.vc).length===0&&delete n.vc,n}function Da(e,t=!0){let n;try{n=fa(e)}catch{throw TypeError(`unknown credential format`)}return{...Ea(n.payload,t),proof:{type:va,jwt:e}}}function Oa(e,t=!0){if(typeof e==`string`){if(ha.test(e))return Da(e,t);{let n;try{n=JSON.parse(e)}catch{throw TypeError(`unknown credential format`)}return Oa(n,t)}}return e.proof?.jwt?xa({...Da(e.proof.jwt,t),proof:e.proof}):{proof:{},...Ea(e,t)}}function ka(e,t=!0){if(Array.isArray(e.credentialSubject))throw Error(`credentialSubject of type array not supported`);let n=xa({vc:{...e.vc},...e});n.vc=n.vc;let r={...e.credentialSubject,...e.vc?.credentialSubject};e.sub||(n.sub=e.credentialSubject?.id,t&&delete r.id);let i=[...ba(e.context),...ba(e[`@context`]),...ba(e.vc?.[`@context`])].filter(Sa);n.vc[`@context`]=[...new Set(i)],t&&(delete n.context,delete n[`@context`]);let a=[...ba(e.type),...ba(e.vc?.type)].filter(Sa);if(n.vc.type=[...new Set(a)],t&&delete n.type,e.id&&Object.getOwnPropertyNames(e).indexOf(`jti`)===-1&&(n.jti=e.id,t&&delete n.id),e.issuanceDate&&Object.getOwnPropertyNames(e).indexOf(`nbf`)===-1){let r=Date.parse(e.issuanceDate);isNaN(r)||(n.nbf=Math.floor(r/1e3),t&&delete n.issuanceDate)}if(e.expirationDate&&Object.getOwnPropertyNames(e).indexOf(`exp`)===-1){let r=Date.parse(e.expirationDate);isNaN(r)||(n.exp=Math.floor(r/1e3),t&&delete n.expirationDate)}e.issuer&&Object.getOwnPropertyNames(e).indexOf(`iss`)===-1&&(typeof e.issuer==`object`?(n.iss=e.issuer?.id,t&&(delete n.issuer.id,Object.keys(n.issuer).length===0&&delete n.issuer)):typeof e.issuer==`string`&&(n.iss=e.iss||``+e.issuer,t&&delete n.issuer)),n.vc.credentialSubject=r,t&&delete n.credentialSubject;for(let r of ya)e[r]&&(n.vc[r]||(n.vc[r]=e[r]),t&&delete n[r]);return n}var Aa={SCHEMA_ERROR:`schema_error`,FORMAT_ERROR:`format_error`,AUTH_ERROR:`auth_error`};({...Aa,...C});function ja(e){return e&&!isNaN(e)&&Object.prototype.toString.call(e)===`[object Date]`}function Ma(e){if(typeof e==`number`){if(!(Number.isInteger(e)&&e<1e11))throw TypeError(`${Aa.SCHEMA_ERROR}: "${e}" is not a unix timestamp in seconds`)}else if(typeof e==`string`)Ma(Math.floor(new Date(e).valueOf()/1e3));else if(!ja(e))throw TypeError(`${Aa.SCHEMA_ERROR}: "${e}" is not a valid time`)}function Na(e){let t=ba(e);if(t.length<1||t.indexOf(ga)===-1)throw TypeError(`${Aa.SCHEMA_ERROR}: @context is missing default context "${ga}"`)}function Pa(e){let t=ba(e);if(t.length<1||t.indexOf(_a)===-1)throw TypeError(`${Aa.SCHEMA_ERROR}: type is missing default "${_a}"`)}function Fa(e){if(Object.keys(e).length===0)throw TypeError(`${Aa.SCHEMA_ERROR}: credentialSubject must not be empty`)}var Ia=function(e,t,n={}){try{let r=n?.policies?.issuanceDate!==!1&&void 0,i=n?.policies?.expirationDate!==!1&&void 0;return n={...n,policies:{...n?.policies,nbf:r,exp:i,iat:r}},Promise.resolve(ea(e,{resolver:t,...n})).then(function(e){return e.verifiableCredential=Oa(e.jwt,n?.removeOriginalFields),n?.policies?.format!==!1&&za(e.verifiableCredential),e})}catch(e){return Promise.reject(e)}},La=function(e,t,n={}){try{let r={iat:void 0,...ka(e,n.removeOriginalFields)};if(Ra(r),Array.isArray(t)){let e=t[0].did,i=[];for(let a of t){if(a.did!==e)throw Error(`All issuers must be the same did to comply with the Verifiable Conditions spec`);i.push({issuer:a.did||r.iss||``,signer:a.signer,alg:a.alg||n.header?.alg||ma})}return Promise.resolve(ta(r,{...n},i))}return Promise.resolve(na(r,{...n,issuer:t.did||r.iss||``,signer:t.signer},{...n.header,alg:t.alg||n.header?.alg||ma}))}catch(e){return Promise.reject(e)}};function Ra(e){Na(e.vc[`@context`]),Pa(e.vc.type),Fa(e.vc.credentialSubject),e.nbf&&Ma(e.nbf),e.exp&&Ma(e.exp)}function za(e){Na(e[`@context`]),Pa(e.type),Fa(e.credentialSubject),e.issuanceDate&&Ma(e.issuanceDate),e.expirationDate&&Ma(e.expirationDate)}var Ba=n(((e,t)=>{t.exports=a;var n=128,r=-128,i=2**31;function a(e,t,o){if(2**53-1&&e>2**53-1)throw a.bytes=0,RangeError(`Could not encode varint`);t||=[],o||=0;for(var s=o;e>=i;)t[o++]=e&255|n,e/=128;for(;e&r;)t[o++]=e&255|n,e>>>=7;return t[o]=e|0,a.bytes=o-s+1,t}})),Va=n(((e,t)=>{t.exports=i;var n=128,r=127;function i(e,t){var a=0,t=t||0,o=0,s=t,c,l=e.length;do{if(s>=l||o>49)throw i.bytes=0,RangeError(`Could not decode varint`);c=e[s++],a+=o<28?(c&r)<<o:(c&r)*2**o,o+=7}while(c>=n);return i.bytes=s-t,a}})),Ha=n(((e,t)=>{var n=2**14,r=2**21,i=2**28,a=2**35,o=2**42,s=2**49,c=2**56,l=2**63;t.exports=function(e){return e<128?1:e<n?2:e<r?3:e<i?4:e<a?5:e<o?6:e<s?7:e<c?8:e<l?9:10}})),Ua=t(n(((e,t)=>{t.exports={encode:Ba(),decode:Va(),encodingLength:Ha()}}))(),1);function Wa(e){if(e instanceof Uint8Array&&e.constructor.name===`Uint8Array`)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw Error(`Unknown type, must be binary type`)}function Ga(e){return new TextEncoder().encode(e)}function Ka(e){return new TextDecoder().decode(e)}function qa(e,t){if(e.length>=255)throw TypeError(`Alphabet too long`);for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var i=0;i<e.length;i++){var a=e.charAt(i),o=a.charCodeAt(0);if(n[o]!==255)throw TypeError(a+` is ambiguous`);n[o]=i}var s=e.length,c=e.charAt(0),l=Math.log(s)/Math.log(256),u=Math.log(256)/Math.log(s);function d(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError(`Expected Uint8Array`);if(t.length===0)return``;for(var n=0,r=0,i=0,a=t.length;i!==a&&t[i]===0;)i++,n++;for(var o=(a-i)*u+1>>>0,l=new Uint8Array(o);i!==a;){for(var d=t[i],f=0,p=o-1;(d!==0||f<r)&&p!==-1;p--,f++)d+=256*l[p]>>>0,l[p]=d%s>>>0,d=d/s>>>0;if(d!==0)throw Error(`Non-zero carry`);r=f,i++}for(var m=o-r;m!==o&&l[m]===0;)m++;for(var h=c.repeat(n);m<o;++m)h+=e.charAt(l[m]);return h}function f(e){if(typeof e!=`string`)throw TypeError(`Expected String`);if(e.length===0)return new Uint8Array;var t=0;if(e[t]!==` `){for(var r=0,i=0;e[t]===c;)r++,t++;for(var a=(e.length-t)*l+1>>>0,o=new Uint8Array(a);e[t];){var u=n[e.charCodeAt(t)];if(u===255)return;for(var d=0,f=a-1;(u!==0||d<i)&&f!==-1;f--,d++)u+=s*o[f]>>>0,o[f]=u%256>>>0,u=u/256>>>0;if(u!==0)throw Error(`Non-zero carry`);i=d,t++}if(e[t]!==` `){for(var p=a-i;p!==a&&o[p]===0;)p++;for(var m=new Uint8Array(r+(a-p)),h=r;p!==a;)m[h++]=o[p++];return m}}}function p(e){var n=f(e);if(n)return n;throw Error(`Non-${t} character`)}return{encode:d,decodeUnsafe:f,decode:p}}var Ja=qa,Ya=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error(`Unknown type, must be binary type`)}},Xa=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let r=t.codePointAt(0);if(r===void 0)throw Error(`Invalid prefix character`);this.prefixCodePoint=r,this.baseDecode=n}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))}throw Error(`Can only multibase decode strings`)}or(e){return Qa(this,e)}},Za=class{decoders;constructor(e){this.decoders=e}or(e){return Qa(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Qa(e,t){return new Za({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var $a=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,r){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=r,this.encoder=new Ya(e,t,n),this.decoder=new Xa(e,t,r)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function eo({name:e,prefix:t,encode:n,decode:r}){return new $a(e,t,n,r)}function to({name:e,prefix:t,alphabet:n}){let{encode:r,decode:i}=Ja(n,e);return eo({prefix:t,name:e,encode:r,decode:e=>Wa(i(e))})}function no(e,t,n,r){let i=e.length;for(;e[i-1]===`=`;)--i;let a=new Uint8Array(i*n/8|0),o=0,s=0,c=0;for(let l=0;l<i;++l){let i=t[e[l]];if(i===void 0)throw SyntaxError(`Non-${r} character`);s=s<<n|i,o+=n,o>=8&&(o-=8,a[c++]=255&s>>o)}if(o>=n||255&s<<8-o)throw SyntaxError(`Unexpected end of data`);return a}function ro(e,t,n){let r=t[t.length-1]===`=`,i=(1<<n)-1,a=``,o=0,s=0;for(let r=0;r<e.length;++r)for(s=s<<8|e[r],o+=8;o>n;)o-=n,a+=t[i&s>>o];if(o!==0&&(a+=t[i&s<<n-o]),r)for(;a.length*n&7;)a+=`=`;return a}function io(e){let t={};for(let n=0;n<e.length;++n)t[e[n]]=n;return t}function E({name:e,prefix:t,bitsPerChar:n,alphabet:r}){let i=io(r);return eo({prefix:t,name:e,encode(e){return ro(e,r,n)},decode(t){return no(t,i,n,e)}})}var ao=e({base58btc:()=>oo,base58flickr:()=>so}),oo=to({name:`base58btc`,prefix:`z`,alphabet:`123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`}),so=to({name:`base58flickr`,prefix:`Z`,alphabet:`123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ`});function co(e=0){return new Uint8Array(e)}function lo(e){return e}function uo(e,t){t??=e.reduce((e,t)=>e+t.length,0);let n=co(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return lo(n)}var fo=e({base10:()=>po}),po=to({prefix:`9`,name:`base10`,alphabet:`0123456789`}),mo=e({base16:()=>ho,base16upper:()=>go}),ho=E({prefix:`f`,name:`base16`,alphabet:`0123456789abcdef`,bitsPerChar:4}),go=E({prefix:`F`,name:`base16upper`,alphabet:`0123456789ABCDEF`,bitsPerChar:4}),_o=e({base2:()=>vo}),vo=E({prefix:`0`,name:`base2`,alphabet:`01`,bitsPerChar:1}),yo=e({base256emoji:()=>To}),bo=Array.from(`🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂`),xo=bo.reduce((e,t,n)=>(e[n]=t,e),[]),So=bo.reduce((e,t,n)=>{let r=t.codePointAt(0);if(r==null)throw Error(`Invalid character: ${t}`);return e[r]=n,e},[]);function Co(e){return e.reduce((e,t)=>(e+=xo[t],e),``)}function wo(e){let t=[];for(let n of e){let e=n.codePointAt(0);if(e==null)throw Error(`Invalid character: ${n}`);let r=So[e];if(r==null)throw Error(`Non-base256emoji character: ${n}`);t.push(r)}return new Uint8Array(t)}var To=eo({prefix:`🚀`,name:`base256emoji`,encode:Co,decode:wo}),Eo=e({base32:()=>Do,base32hex:()=>jo,base32hexpad:()=>No,base32hexpadupper:()=>Po,base32hexupper:()=>Mo,base32pad:()=>ko,base32padupper:()=>Ao,base32upper:()=>Oo,base32z:()=>Fo}),Do=E({prefix:`b`,name:`base32`,alphabet:`abcdefghijklmnopqrstuvwxyz234567`,bitsPerChar:5}),Oo=E({prefix:`B`,name:`base32upper`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`,bitsPerChar:5}),ko=E({prefix:`c`,name:`base32pad`,alphabet:`abcdefghijklmnopqrstuvwxyz234567=`,bitsPerChar:5}),Ao=E({prefix:`C`,name:`base32padupper`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=`,bitsPerChar:5}),jo=E({prefix:`v`,name:`base32hex`,alphabet:`0123456789abcdefghijklmnopqrstuv`,bitsPerChar:5}),Mo=E({prefix:`V`,name:`base32hexupper`,alphabet:`0123456789ABCDEFGHIJKLMNOPQRSTUV`,bitsPerChar:5}),No=E({prefix:`t`,name:`base32hexpad`,alphabet:`0123456789abcdefghijklmnopqrstuv=`,bitsPerChar:5}),Po=E({prefix:`T`,name:`base32hexpadupper`,alphabet:`0123456789ABCDEFGHIJKLMNOPQRSTUV=`,bitsPerChar:5}),Fo=E({prefix:`h`,name:`base32z`,alphabet:`ybndrfg8ejkmcpqxot1uwisza345h769`,bitsPerChar:5}),Io=e({base36:()=>Lo,base36upper:()=>Ro}),Lo=to({prefix:`k`,name:`base36`,alphabet:`0123456789abcdefghijklmnopqrstuvwxyz`}),Ro=to({prefix:`K`,name:`base36upper`,alphabet:`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ`}),zo=e({base64:()=>Bo,base64pad:()=>Vo,base64url:()=>Ho,base64urlpad:()=>Uo}),Bo=E({prefix:`m`,name:`base64`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,bitsPerChar:6}),Vo=E({prefix:`M`,name:`base64pad`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`,bitsPerChar:6}),Ho=E({prefix:`u`,name:`base64url`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`,bitsPerChar:6}),Uo=E({prefix:`U`,name:`base64urlpad`,alphabet:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=`,bitsPerChar:6}),Wo=e({base8:()=>Go}),Go=E({prefix:`7`,name:`base8`,alphabet:`01234567`,bitsPerChar:3}),Ko=e({identity:()=>qo}),qo=eo({prefix:`\0`,name:`identity`,encode:e=>Ka(e),decode:e=>Ga(e)});new TextEncoder,new TextDecoder;var Jo=Qo,Yo=128,Xo=-128,Zo=2**31;function Qo(e,t,n){t||=[],n||=0;for(var r=n;e>=Zo;)t[n++]=e&255|Yo,e/=128;for(;e&Xo;)t[n++]=e&255|Yo,e>>>=7;return t[n]=e|0,Qo.bytes=n-r+1,t}var $o=ns,es=128,ts=127;function ns(e,t){var n=0,t=t||0,r=0,i=t,a,o=e.length;do{if(i>=o)throw ns.bytes=0,RangeError(`Could not decode varint`);a=e[i++],n+=r<28?(a&ts)<<r:(a&ts)*2**r,r+=7}while(a>=es);return ns.bytes=i-t,n}var rs=128,is=2**14,as=2**21,os=2**28,ss=2**35,cs=2**42,ls=2**49,us=2**56,ds=2**63,fs={encode:Jo,decode:$o,encodingLength:function(e){return e<rs?1:e<is?2:e<as?3:e<os?4:e<ss?5:e<cs?6:e<ls?7:e<us?8:e<ds?9:10}};function ps(e,t,n=0){return fs.encode(e,t,n),t}function ms(e){return fs.encodingLength(e)}function hs(e,t){let n=t.byteLength,r=ms(e),i=r+ms(n),a=new Uint8Array(i+n);return ps(e,a,0),ps(n,a,r),a.set(t,i),new gs(e,n,t,a)}var gs=class{code;size;digest;bytes;constructor(e,t,n,r){this.code=e,this.size=t,this.digest=n,this.bytes=r}},_s=e({identity:()=>Ss}),vs=0,ys=`identity`,bs=Wa;function xs(e,t){if(t?.truncate!=null&&t.truncate!==e.byteLength){if(t.truncate<0||t.truncate>e.byteLength)throw Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,t.truncate)}return hs(vs,bs(e))}var Ss={code:vs,name:ys,encode:bs,digest:xs},Cs=20;function ws({name:e,code:t,encode:n,minDigestLength:r,maxDigestLength:i}){return new Ts(e,t,n,r,i)}var Ts=class{name;code;encode;minDigestLength;maxDigestLength;constructor(e,t,n,r,i){this.name=e,this.code=t,this.encode=n,this.minDigestLength=r??Cs,this.maxDigestLength=i}digest(e,t){if(t?.truncate!=null){if(t.truncate<this.minDigestLength)throw Error(`Invalid truncate option, must be greater than or equal to ${this.minDigestLength}`);if(this.maxDigestLength!=null&&t.truncate>this.maxDigestLength)throw Error(`Invalid truncate option, must be less than or equal to ${this.maxDigestLength}`)}if(e instanceof Uint8Array){let n=this.encode(e);return n instanceof Uint8Array?Es(n,this.code,t?.truncate):n.then(e=>Es(e,this.code,t?.truncate))}throw Error(`Unknown type, must be binary type`)}};function Es(e,t,n){if(n!=null&&n!==e.byteLength){if(n>e.byteLength)throw Error(`Invalid truncate option, must be less than or equal to ${e.byteLength}`);e=e.subarray(0,n)}return hs(t,e)}var Ds=e({sha256:()=>ks,sha512:()=>As});function Os(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var ks=ws({name:`sha2-256`,code:18,encode:Os(`SHA-256`)}),As=ws({name:`sha2-512`,code:19,encode:Os(`SHA-512`)}),js={...Ko,..._o,...Wo,...fo,...mo,...Eo,...Io,...ao,...zo,...yo};({...Ds,..._s});function Ms(e,t,n,r){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:n},decoder:{decode:r}}}var Ns=Ms(`utf8`,`u`,e=>`u`+new TextDecoder(`utf8`).decode(e),e=>new TextEncoder().encode(e.substring(1))),Ps=Ms(`ascii`,`a`,e=>{let t=`a`;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t},e=>{e=e.substring(1);let t=co(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}),Fs={utf8:Ns,"utf-8":Ns,hex:js.base16,latin1:Ps,ascii:Ps,binary:Ps,...js};function Is(e,t=`utf8`){let n=Fs[t];if(n==null)throw Error(`Unsupported encoding "${t}"`);return n.decoder.decode(`${n.prefix}${e}`)}function Ls(e,t=`utf8`){let n=Fs[t];if(n==null)throw Error(`Unsupported encoding "${t}"`);return n.encoder.encode(e).substring(1)}var Rs=e({keyToDidDoc:()=>zs});function zs(e,t){let n=`did:key:${t}`,r=`${n}#${t}`;return{id:n,verificationMethod:[{id:r,type:`Secp256k1VerificationKey2018`,controller:n,publicKeyBase58:Ls(e,`base58btc`)}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}var Bs=e({keyToDidDoc:()=>Hs});function Vs(e){let t=new Uint8Array(e.length+2);return t[0]=236,t[1]=1,t.set(e,2),`z${Ls(t,`base58btc`)}`}function Hs(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=sr(e),a=`${n}#${Vs(i)}`;return{id:n,verificationMethod:[{id:r,type:`Ed25519VerificationKey2018`,controller:n,publicKeyBase58:Ls(e,`base58btc`)}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r],keyAgreement:[{id:a,type:`X25519KeyAgreementKey2019`,controller:n,publicKeyBase58:Ls(i,`base58btc`)}]}}var Us=e({keyToDidDoc:()=>Ws});function Ws(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=me.ProjectivePoint.fromHex(Gs(e));return{id:n,verificationMethod:[{id:r,type:`JsonWebKey2020`,controller:n,publicKeyJwk:{kty:`EC`,crv:`P-256`,x:Ls(gn(i.x),`base64url`),y:Ls(gn(i.y),`base64url`)}}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}function Gs(e){return e.length===64?uo([new Uint8Array([4]),e]):e}var Ks=le,qs=e({keyToDidDoc:()=>Js});function Js(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=Ks.ProjectivePoint.fromHex(Ys(e));return{id:n,verificationMethod:[{id:r,type:`JsonWebKey2020`,controller:n,publicKeyJwk:{kty:`EC`,crv:`P-384`,x:Ls(gn(i.x),`base64url`),y:Ls(gn(i.y),`base64url`)}}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}function Ys(e){return e.length===96?uo([new Uint8Array([4]),e]):e}var Xs=fe,Zs=e({keyToDidDoc:()=>Qs});function Qs(e,t){let n=`did:key:${t}`,r=`${n}#${t}`,i=Xs.ProjectivePoint.fromHex(e);return{id:n,verificationMethod:[{id:r,type:`JsonWebKey2020`,controller:n,publicKeyJwk:{kty:`EC`,crv:`P-521`,x:Ls(gn(i.x),`base64url`),y:Ls(gn(i.y),`base64url`)}}],authentication:[r],assertionMethod:[r],capabilityDelegation:[r],capabilityInvocation:[r]}}var $s=`application/did+ld+json`,ec=`application/did+json`,tc={231:Rs,237:Bs,4608:Us,4609:qs,4610:Zs};function nc(){return{key:async(e,t,n,r)=>{let i=r.accept||ec,a={didResolutionMetadata:{contentType:i},didDocument:null,didDocumentMetadata:{}};try{let e=oo.decode(t.id),n=Ua.default.decode(e),r=e.slice(Ua.default.decode.bytes),o=await tc[n].keyToDidDoc(r,t.id);i===$s?(o[`@context`]=`https://w3id.org/did/v1`,a.didDocument=o):i===ec?a.didDocument=o:(delete a.didResolutionMetadata.contentType,a.didResolutionMetadata.error=`representationNotSupported`)}catch(e){a.didResolutionMetadata.error=`invalidDid`,a.didResolutionMetadata.message=e.toString()}return a}}}function rc(e){let t=e.split(`:`);if(!e.startsWith(`did:pkh:`)||t.length!==5)throw Error(`Invalid pkh did`);let[,,n,r,i]=t;if(!i.startsWith(`0x`))throw Error(`Invalid address: ${i}`);let a=Number(r);if(isNaN(a))throw Error(`Invalid chain id: ${r}`);return{chainId:a,networkId:n,address:i}}async function ic(e,t){try{let n=parseInt(String(Date.now()/1e3)),r=await Ia(e,sc(),{...t?.audience!==void 0&&{audience:t.audience},policies:{now:parseInt(String(Date.now()/1e3)),expirationDate:!0,issuanceDate:!0}});return r.payload.exp&&r.payload.exp<n?!1:(ac(r),r)}catch(e){return console.error(e),!1}}function ac(e){let t=Object.keys(e.verifiableCredential.credentialSubject);if(![`address`,`chainId`,`networkId`].every(e=>t.includes(e)))throw Error(`Invalid Auth Credential Subject:`+JSON.stringify(e.verifiableCredential.credentialSubject,null,2))}async function oc(e,t,n,r,i){return await La({sub:r.did,vc:{"@context":[`https://www.w3.org/2018/credentials/v1`],type:[`VerifiableCredential`],credentialSubject:{chainId:e,networkId:t,address:n}},aud:i?.aud},r,{expiresIn:i?.expiresIn})}var sc=()=>{let e=nc();if(!e)throw Error(`Failed to get key resolver`);return new Er(e)};async function cc({hash:e,signature:t}){let n=je(e)?e:De(e),{secp256k1:r}=await i(async()=>{let{secp256k1:e}=await import(`./secp256k1-CVqUn8M-.js`);return{secp256k1:e}},__vite__mapDeps([0,1,2,3,4,5]));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=lc(Number(a??i));return new r.Signature(Ee(e),Ee(n)).addRecoveryBit(o)}let e=je(t)?t:De(t);if(Ae(e)!==65)throw Error(`invalid signature length`);let n=lc(Te(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function lc(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function uc({hash:e,signature:t}){return Oe(await cc({hash:e,signature:t}))}async function dc(e){let{domain:t,message:n,primaryType:r,signature:i,types:a}=e;return uc({hash:ke({domain:t,message:n,primaryType:r,types:a}),signature:i})}var fc=3e3;async function pc(e){let{switchboardUrl:t,baseUrl:n,timeoutMs:r}=e;if(t)return t;if(!n)return;let i=new AbortController,a=setTimeout(()=>i.abort(),r??fc);try{let e=new URL(`/api/switchboard`,n),t=await fetch(e,{method:`GET`,signal:i.signal});return t.ok&&(await t.json()).endpoint||void 0}catch{return}finally{clearTimeout(a)}}var mc=class e extends Error{constructor(){super(`signIn requires a switchboard endpoint. Set switchboardUrl or a discoverable baseUrl.`),this.name=`MissingSwitchboardError`}static is(t){return t instanceof e||t instanceof Error&&t.name===`MissingSwitchboardError`}};function hc(e){return`renown-${e.toLowerCase()}`}var gc=`
|
|
3
3
|
query RenownCredentials($input: RenownCredentialsInput!) {
|
|
4
4
|
renownCredentials(input: $input) {
|
|
5
5
|
documentId
|
|
@@ -115,4 +115,4 @@ import{r as e,s as t,t as n}from"./rolldown-runtime-BcKkbAw3.js";import{n as r}f
|
|
|
115
115
|
}
|
|
116
116
|
`;function Tc(e){return`token`in e?{token:e.token,signed:{}}:{signed:{signature:e.signature,timestamp:e.timestamp}}}var Ec=`powerhouse/renown-credential`,Dc=`powerhouse/renown-user`;function Oc(e){return`\\\\?"${e}\\\\?"`}function kc(e,t,...n){let r=e instanceof Error?e.message:String(e);return RegExp(`Cannot query field ${Oc(t)}`).test(r)?!0:!r.includes(`got invalid value`)&&n.some(e=>RegExp(`Unknown type ${Oc(e)}`).test(r))}function Ac(e){let t=JSON.parse(e.proofEip712Domain);return{"@context":e.context,type:e.type,id:e.credentialId,issuer:{id:e.issuerId,ethereumAddress:e.issuerEthereumAddress},credentialSubject:{id:e.credentialSubjectId??``,app:e.credentialSubjectApp},credentialSchema:{id:e.credentialSchemaId,type:e.credentialSchemaType},...e.credentialStatusId?{credentialStatus:{id:e.credentialStatusId,type:e.credentialStatusType??``}}:{},issuanceDate:e.issuanceDate,expirationDate:e.expirationDate??``,proof:{type:e.proofType,created:e.proofCreated,verificationMethod:e.proofVerificationMethod,proofPurpose:e.proofPurpose,proofValue:e.proofValue,ethereumAddress:e.proofEthereumAddress,eip712:{domain:t,types:Tn,primaryType:`VerifiableCredential`}}}}function jc(e){return e.split(`:`)[3]}function Mc(e){return e.split(`:`)[4]}function Nc(e,t,n,r){return!e.revoked&&Pc(e,t,n,r)}function Pc(e,t,n,r){let i=t.toLowerCase();return e.credentialSubjectId===r&&jc(e.issuerId)===String(n)&&Mc(e.issuerId)?.toLowerCase()===i&&e.issuerEthereumAddress.toLowerCase()===i}var Fc=class{#e;#t;#n=!1;constructor(e){typeof e==`string`?(this.#e=e,this.#t=(t,n,r)=>this.#r(e,t,n,r?.token)):this.#t=e}get endpoint(){return this.#e}async#r(e,t,n,r){let i=await fetch(e,{method:`POST`,headers:{"Content-Type":`application/json`,...r?{Authorization:`Bearer ${r}`}:{}},body:JSON.stringify({query:t,variables:n})}),a=await i.json().catch(()=>void 0);if(a?.errors?.length)throw Error(a.errors.map(e=>e.message).join(`; `));if(!i.ok||!a)throw Error(`Switchboard request failed: ${i.status}`);return a.data}async#i(e,t,n){let r=await(n?this.#t(e,t,{token:n}):this.#t(e,t));if(!r)throw Error(`Switchboard returned no data`);return r}async getCredential(e){let{address:t,chainId:n,appDid:r}=e,{renownCredentials:i}=await this.#i(gc,{input:{driveId:hc(t),ethAddress:t.toLowerCase(),did:r,includeRevoked:!1}}),a=Date.now(),o=i.filter(e=>Nc(e,t,n,r)).filter(e=>{if(!e.expirationDate)return!0;let t=Date.parse(e.expirationDate);return!Number.isNaN(t)&&t>a}).sort((e,t)=>Date.parse(t.issuanceDate)-Date.parse(e.issuanceDate)).at(0);return o?Ac(o):void 0}async getIssuedCredentials(e){let{address:t,chainId:n,appDid:r}=e,{renownCredentials:i}=await this.#i(gc,{input:{driveId:hc(t),ethAddress:t.toLowerCase(),did:r,includeRevoked:!0}}),a=[];for(let e of i)if(Pc(e,t,n,r))try{a.push(Ac(e))}catch{}return a}async getProfileByAddress(e){let{renownUsers:t}=await this.#i(_c,{input:{driveId:hc(e),ethAddresses:[e.toLowerCase()]}}),n=t.at(0);if(n)return{documentId:n.documentId,username:n.username,ethAddress:n.ethAddress,userImage:n.userImage,createdAt:n.createdAt,updatedAt:n.updatedAt}}async createEmptyDocument(e,t,n){let{createEmptyDocument:r}=await this.#i(vc,{documentType:e,parentIdentifier:t},n);return r.id}async mutateDocument(e,t,n){let r={documentIdentifier:e,actions:t};if(!this.#n)try{let{mutateDocument:e}=await this.#i(yc,r,n);return e.id}catch(e){if(!xc(e))throw e;this.#n=!0}let{mutateDocument:i}=await this.#i(bc,r,n);return i.id}async issueCredential(e,t){let n={id:e.id,context:e[`@context`],type:e.type,issuer:{id:e.issuer.id,ethereumAddress:e.issuer.ethereumAddress},credentialSubject:{id:e.credentialSubject.id,app:e.credentialSubject.app},credentialSchema:{id:e.credentialSchema.id,type:e.credentialSchema.type},issuanceDate:e.issuanceDate,expirationDate:e.expirationDate||void 0,proof:{type:e.proof.type,created:e.proof.created,verificationMethod:e.proof.verificationMethod,proofPurpose:e.proof.proofPurpose,proofValue:e.proof.proofValue,ethereumAddress:e.proof.ethereumAddress,eip712:{domain:{version:e.proof.eip712.domain.version,chainId:e.proof.eip712.domain.chainId},primaryType:e.proof.eip712.primaryType}}};try{let{renown_issueCredential:e}=await this.#i(Sc,{input:n});return e}catch(e){if(!kc(e,`renown_issueCredential`,`RenownCredential_InitInput`))throw e;let r=await this.createEmptyDocument(Ec,t);return await this.mutateDocument(r,[Vt(`INIT`,n)]),r}}async upsertUserProfile(e,t,n){let{token:r,signed:i}=Tc(n);try{let{renown_upsertProfile:n}=await this.#i(Cc,{address:e,username:t.username,userImage:t.userImage,...i},r);return n}catch(n){if(!kc(n,`renown_upsertProfile`))throw n;return this.#a(e,t,r)}}async#a(e,t,n){let r=[];t.username!=null&&r.push(Vt(`SET_USERNAME`,{username:t.username})),t.userImage!=null&&r.push(Vt(`SET_USER_IMAGE`,{userImage:t.userImage}));let i=await this.getProfileByAddress(e);if(i)return r.length&&await this.mutateDocument(i.documentId,r,n),i.documentId;let a=await this.createEmptyDocument(Dc,void 0,n);return await this.mutateDocument(a,[Vt(`SET_ETH_ADDRESS`,{ethAddress:e}),...r],n),a}async revokeCredential(e,t){let{token:n,signed:r}=Tc(t);try{await this.#i(wc,{credentialId:e,...r},n)}catch(t){if(!kc(t,`renown_revokeCredential`))throw t;await this.#o(e,n)}}async#o(e,t){let{renownCredentials:n}=await this.#i(gc,{input:{includeRevoked:!1}},t),r=n.filter(t=>t.credentialId===e).map(e=>e.documentId);if(!r.length)throw Error(`Credential not found: ${e}`);let i=new Date().toISOString();for(let e of r)await this.mutateDocument(e,[Vt(`REVOKE`,{revokedAt:i,reason:null})],t)}profileFetcher=e=>this.getProfileByAddress(e.address).catch(()=>void 0)};async function Ic(e){let{signTypedData:t,address:n,chainId:r,app:i,appId:a,expiresInDays:o=7}=e,s=`did:pkh:${wn}:${r}:${n.toLowerCase()}`,c=`urn:uuid:${globalThis.crypto.randomUUID()}`,l=new Date,u=new Date(l.getTime()+o*24*60*60*1e3),d={"@context":[`https://www.w3.org/2018/credentials/v1`],type:[`VerifiableCredential`,`RenownCredential`],id:c,issuer:{id:s,ethereumAddress:n},credentialSubject:{id:a,app:i},credentialSchema:{id:`https://renown.id/schemas/renown-credential/v1`,type:`JsonSchemaValidator2018`},issuanceDate:l.toISOString(),expirationDate:u.toISOString()},f={version:`1`,chainId:r},{EIP712Domain:p,...m}=Tn,h=await t({domain:f,types:m,primaryType:`VerifiableCredential`,message:d});return{...d,proof:{type:`EthereumEip712Signature2021`,created:d.issuanceDate,verificationMethod:s,proofPurpose:`assertionMethod`,proofValue:h,ethereumAddress:n,eip712:{domain:f,types:Tn,primaryType:`VerifiableCredential`}}}}async function Lc(e){let{proof:t,...n}=e,{EIP712Domain:r,...i}=Tn;return dc({domain:t.eip712.domain,types:i,primaryType:`VerifiableCredential`,message:n,signature:t.proofValue})}async function Rc(e){try{return(await Lc(e)).toLowerCase()===e.issuer.ethereumAddress.toLowerCase()}catch{return!1}}function zc(e,t){return e.proof.eip712?.domain?e:{...e,proof:{...e.proof,eip712:{domain:{version:`1`,chainId:t},types:Tn,primaryType:`VerifiableCredential`}}}}async function Bc(e,t){let n=zc(e,t);return n.proof.eip712.domain.chainId===t&&await Rc(n)}var Vc=1e4,Hc=6e4;function Uc(e={}){let t=e.maxAccepted??Vc,n=e.refusalTtlMs??Hc,r=e.switchboard?new Fc(e.switchboard):void 0,i=e.renownUrl??`https://www.renown.id`,a=new Set,o=new Map,s=new Map,c=(e,t)=>r?r.getIssuedCredentials({address:e.address,chainId:e.chainId,appDid:t}):Jc(e,t,i);async function l(e,t){for(let n of await c(e,t))if(qc(n,e,t)&&await Bc(n,e.chainId))return!0;return!1}function u(e,r){if(r){if(a.size>=t){let e=a.values().next().value;e!==void 0&&a.delete(e)}a.add(e),o.delete(e)}else o.set(e,Date.now()+n)}return{authorizeSigner(t,n){let r=t.user,i=Wc(e);if(i&&Gc(i,r,n))return Promise.resolve(!0);if(!r||!Kc(r,n))return Promise.resolve(!1);let c=`${r.networkId}|${r.chainId}|${r.address.toLowerCase()}|${n}`;if(a.has(c))return Promise.resolve(!0);let d=o.get(c);if(d!==void 0&&d>Date.now())return Promise.resolve(!1);let f=s.get(c);if(f)return f;let p=l(r,n).then(e=>(s.delete(c),u(c,e),e),e=>{throw s.delete(c),e});return s.set(c,p),p}}}function Wc(e){if(!e.ownSigner)return e.self;let{app:t,user:n}=e.ownSigner;return{key:t?.key??``,user:{address:n?.address??``,networkId:n?.networkId??``,chainId:n?.chainId??0}}}function Gc(e,t,n){return e.key!==``&&n===e.key&&(t?.address??``).toLowerCase()===e.user.address.toLowerCase()&&(t?.networkId??``)===e.user.networkId&&(t?.chainId??0)===e.user.chainId}function Kc(e,t){return t.startsWith(`did:key:`)&&/^0x[0-9a-fA-F]{40}$/.test(e.address)&&e.networkId!==``&&Number.isInteger(e.chainId)&&e.chainId>0}function qc(e,t,n){let r=t.address.toLowerCase(),i=e.issuer.id.split(`:`);if(i.length!==5)return!1;let[a,o,s,c,l]=i;return e.credentialSubject.id===n&&a===`did`&&o===`pkh`&&s===t.networkId&&c===String(t.chainId)&&l.toLowerCase()===r&&e.issuer.ethereumAddress.toLowerCase()===r}async function Jc(e,t,n){let r=new URL(`/api/auth/credential`,n);r.searchParams.set(`address`,e.address),r.searchParams.set(`chainId`,String(e.chainId)),r.searchParams.set(`connectId`,t),r.searchParams.set(`appId`,t);let i=await fetch(r,{method:`GET`});if(i.status===404)return[];if(!i.ok)throw Error(`Renown credential lookup failed: ${i.status}`);let{credential:a}=await i.json();return a?[a]:[]}(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`2a03e561-8352-534f-9e49-4827833e1919`)}catch{}})();var Yc=`connect.reactor.featureFlags.authEnforcement is on, but no Renown endpoint is configured to verify signers against: set connect.renown.url (or connect.renown.switchboardUrl). Without one every signed write would be refused.`;async function Xc(e,t,n){if(!e?.authEnforcement)return;let r=t.renownUrl||void 0,i=t.switchboardUrl||void 0;if(!r&&!i)throw Error(Yc);let a=await pc({switchboardUrl:i,baseUrl:r});return Uc({...a?{switchboard:a}:{},...r?{renownUrl:r}:{},ownSigner:n})}async function Zc(e,t,n){let r=await Xc(t,n,e);return r?{signer:e,trustPolicy:r}:{signer:e}}function Qc(e){return e===void 0||e===void 0}function D(e){return typeof e==`string`}function $c(e){return typeof e==`number`}function el(e){return typeof e==`boolean`}function tl(e){return e===null}function nl(e){return e instanceof Date}function rl(e){return typeof e==`bigint`}function O(e){return typeof e==`function`}function il(e){return typeof e==`object`&&!!e}function k(e){return Object.freeze(e)}function al(e){return ol(e)?e:[e]}function ol(e){return Array.isArray(e)}function A(e){return e}var j=k({is(e){return e.kind===`AlterTableNode`},create(e){return k({kind:`AlterTableNode`,table:e})},cloneWithTableProps(e,t){return k({...e,...t})},cloneWithColumnAlteration(e,t){return k({...e,columnAlterations:e.columnAlterations?[...e.columnAlterations,t]:[t]})}}),M=k({is(e){return e.kind===`IdentifierNode`},create(e){return k({kind:`IdentifierNode`,name:e})}}),sl=k({is(e){return e.kind===`CreateIndexNode`},create(e){return k({kind:`CreateIndexNode`,name:M.create(e)})},cloneWith(e,t){return k({...e,...t})},cloneWithColumns(e,t){return k({...e,columns:[...e.columns||[],...t]})}}),cl=k({is(e){return e.kind===`CreateSchemaNode`},create(e,t){return k({kind:`CreateSchemaNode`,schema:M.create(e),...t})},cloneWith(e,t){return k({...e,...t})}}),ll=[`preserve rows`,`delete rows`,`drop`],N=k({is(e){return e.kind===`CreateTableNode`},create(e){return k({kind:`CreateTableNode`,table:e,columns:k([])})},cloneWithColumn(e,t){return k({...e,columns:k([...e.columns,t])})},cloneWithConstraint(e,t){return k({...e,constraints:e.constraints?k([...e.constraints,t]):k([t])})},cloneWithFrontModifier(e,t){return k({...e,frontModifiers:e.frontModifiers?k([...e.frontModifiers,t]):k([t])})},cloneWithEndModifier(e,t){return k({...e,endModifiers:e.endModifiers?k([...e.endModifiers,t]):k([t])})},cloneWith(e,t){return k({...e,...t})}}),ul=k({is(e){return e.kind===`SchemableIdentifierNode`},create(e){return k({kind:`SchemableIdentifierNode`,identifier:M.create(e)})},createWithSchema(e,t){return k({kind:`SchemableIdentifierNode`,schema:M.create(e),identifier:M.create(t)})}}),dl=k({is(e){return e.kind===`DropIndexNode`},create(e,t){return k({kind:`DropIndexNode`,name:ul.create(e),...t})},cloneWith(e,t){return k({...e,...t})}}),fl=k({is(e){return e.kind===`DropSchemaNode`},create(e,t){return k({kind:`DropSchemaNode`,schema:M.create(e),...t})},cloneWith(e,t){return k({...e,...t})}}),pl=k({is(e){return e.kind===`DropTableNode`},create(e,t){return k({kind:`DropTableNode`,table:e,...t})},cloneWith(e,t){return k({...e,...t})}}),ml=k({is(e){return e.kind===`AliasNode`},create(e,t){return k({kind:`AliasNode`,node:e,alias:t})}}),hl=k({is(e){return e.kind===`TableNode`},create(e){return k({kind:`TableNode`,table:ul.create(e)})},createWithSchema(e,t){return k({kind:`TableNode`,table:ul.createWithSchema(e,t)})}});function P(e){return il(e)&&O(e.toOperationNode)}function gl(e){return il(e)&&`expressionType`in e&&P(e)}function _l(e){return il(e)&&`expression`in e&&D(e.alias)&&P(e)}var vl=k({is(e){return e.kind===`SelectModifierNode`},create(e,t){return k({kind:`SelectModifierNode`,modifier:e,of:t})},createWithExpression(e){return k({kind:`SelectModifierNode`,rawModifier:e})}}),yl=k({is(e){return e.kind===`AndNode`},create(e,t){return k({kind:`AndNode`,left:e,right:t})}}),bl=k({is(e){return e.kind===`OrNode`},create(e,t){return k({kind:`OrNode`,left:e,right:t})}}),xl=k({is(e){return e.kind===`OnNode`},create(e){return k({kind:`OnNode`,on:e})},cloneWithOperation(e,t,n){return k({...e,on:t===`And`?yl.create(e.on,n):bl.create(e.on,n)})}}),Sl=k({is(e){return e.kind===`JoinNode`},create(e,t){return k({kind:`JoinNode`,joinType:e,table:t,on:void 0})},createWithOn(e,t,n){return k({kind:`JoinNode`,joinType:e,table:t,on:xl.create(n)})},cloneWithOn(e,t){return k({...e,on:e.on?xl.cloneWithOperation(e.on,`And`,t):xl.create(t)})}}),Cl=k({is(e){return e.kind===`BinaryOperationNode`},create(e,t,n){return k({kind:`BinaryOperationNode`,leftOperand:e,operator:t,rightOperand:n})}}),wl=`=.==.!=.<>.>.>=.<.<=.in.not in.is.is not.like.not like.match.ilike.not ilike.@>.<@.^@.&&.?.?&.?|.!<.!>.<=>.!~.~.~*.!~*.@@.@@@.!!.<->.regexp.is distinct from.is not distinct from`.split(`.`),Tl=[`+`,`-`,`*`,`/`,`%`,`^`,`&`,`|`,`#`,`<<`,`>>`],El=[`->`,`->>`],Dl=[...wl,...Tl,`&&`,`||`],Ol=[`not`,`-`,`exists`,`not exists`],kl=[...Dl,...El,...Ol,`between`,`between symmetric`],Al=k({is(e){return e.kind===`OperatorNode`},create(e){return k({kind:`OperatorNode`,operator:e})}});function jl(e){return D(e)&&El.includes(e)}var F=k({is(e){return e.kind===`ColumnNode`},create(e){return k({kind:`ColumnNode`,column:M.create(e)})}}),Ml=k({is(e){return e.kind===`SelectAllNode`},create(){return k({kind:`SelectAllNode`})}}),Nl=k({is(e){return e.kind===`ReferenceNode`},create(e,t){return k({kind:`ReferenceNode`,table:t,column:e})},createSelectAll(e){return k({kind:`ReferenceNode`,table:e,column:Ml.create()})}}),Pl=class{#e;get dynamicReference(){return this.#e}get refType(){}constructor(e){this.#e=e}toOperationNode(){return Yl(this.#e)}};function Fl(e){return il(e)&&P(e)&&D(e.dynamicReference)}var Il=k({is(e){return e.kind===`OrderByItemNode`},create(e,t){return k({kind:`OrderByItemNode`,orderBy:e,direction:t})},cloneWith(e,t){return k({...e,...t})}}),I=k({is(e){return e.kind===`RawNode`},create(e,t){return k({kind:`RawNode`,sqlFragments:k(e),parameters:k(t)})},createWithSql(e){return I.create([e],[])},createWithChild(e){return I.create([``,``],[e])},createWithChildren(e){return I.create(Array(e.length+1).fill(``),e)}}),Ll=k({is(e){return e.kind===`CollateNode`},create(e){return k({kind:`CollateNode`,collation:M.create(e)})}}),Rl=class e{#e;constructor(e){this.#e=k(e)}desc(){return new e({node:Il.cloneWith(this.#e.node,{direction:I.createWithSql(`desc`)})})}asc(){return new e({node:Il.cloneWith(this.#e.node,{direction:I.createWithSql(`asc`)})})}nullsLast(){return new e({node:Il.cloneWith(this.#e.node,{nulls:`last`})})}nullsFirst(){return new e({node:Il.cloneWith(this.#e.node,{nulls:`first`})})}collate(t){return new e({node:Il.cloneWith(this.#e.node,{collation:Ll.create(t)})})}toOperationNode(){return this.#e.node}},zl=new Set;function Bl(e){zl.has(e)||(zl.add(e),console.log(e))}function Vl(e){return e===`asc`||e===`desc`}function Hl(e){if(e.length===2)return[Ul(e[0],e[1])];if(e.length===1){let[t]=e;return Array.isArray(t)?(Bl(`orderBy(array) is deprecated, use multiple orderBy calls instead.`),t.map(e=>Ul(e))):[Ul(t)]}throw Error(`Invalid number of arguments at order by! expected 1-2, received ${e.length}`)}function Ul(e,t){let n=Wl(e);if(Il.is(n)){if(t)throw Error(`Cannot specify direction twice!`);return n}return Gl(n,t)}function Wl(e){if(Vf(e))return zf(e);if(Fl(e))return e.toOperationNode();let[t,n]=e.split(` `);return n?(Bl("`orderBy('column asc')` is deprecated. Use `orderBy('column', 'asc')` instead."),Gl(Ql(t),n)):Ql(e)}function Gl(e,t){if(typeof t==`string`){if(!Vl(t))throw Error(`Invalid order by direction: ${t}`);return Il.create(e,I.createWithSql(t))}if(gl(t))return Bl("`orderBy(..., expr)` is deprecated. Use `orderBy(..., 'asc')` or `orderBy(..., (ob) => ...)` instead."),Il.create(e,t.toOperationNode());let n=Il.create(e);return t?t(new Rl({node:n})).toOperationNode():n}var Kl=k({is(e){return e.kind===`JSONReferenceNode`},create(e,t){return k({kind:`JSONReferenceNode`,reference:e,traversal:t})},cloneWithTraversal(e,t){return k({...e,traversal:t})}}),ql=k({is(e){return e.kind===`JSONOperatorChainNode`},create(e){return k({kind:`JSONOperatorChainNode`,operator:e,values:k([])})},cloneWithValue(e,t){return k({...e,values:k([...e.values,t])})}}),Jl=k({is(e){return e.kind===`JSONPathNode`},create(e){return k({kind:`JSONPathNode`,inOperator:e,pathLegs:k([])})},cloneWithLeg(e,t){return k({...e,pathLegs:k([...e.pathLegs,t])})}});function Yl(e){return D(e)?Ql(e):e.toOperationNode()}function Xl(e){return ol(e)?e.map(e=>L(e)):[L(e)]}function L(e){return Vf(e)?zf(e):Yl(e)}function Zl(e,t){let n=Ql(e);if(jl(t))return Kl.create(n,ql.create(Al.create(t)));let r=t.slice(0,-1);if(jl(r))return Kl.create(n,Jl.create(Al.create(r)));throw Error(`Invalid JSON operator: ${t}`)}function Ql(e){if(!e.includes(`.`))return Nl.create(F.create(e));let t=e.split(`.`).map(iu);if(t.length===3)return nu(t);if(t.length===2)return ru(t);throw Error(`invalid column reference ${e}`)}function $l(e){let t=` as `;if(e.includes(t)){let[n,r]=e.split(t).map(iu);return ml.create(Ql(n),M.create(r))}return Ql(e)}function eu(e){return F.create(e)}function tu(e){if(e.includes(` `)){let[t,n]=e.split(` `).map(iu);if(!Vl(n))throw Error(`invalid order direction "${n}" next to "${t}"`);return Hl([t,n])[0]}return eu(e)}function nu(e){let[t,n,r]=e;return Nl.create(F.create(r),hl.createWithSchema(t,n))}function ru(e){let[t,n]=e;return Nl.create(F.create(n),hl.create(t))}function iu(e){return e.trim()}var au=k({is(e){return e.kind===`PrimitiveValueListNode`},create(e){return k({kind:`PrimitiveValueListNode`,values:k([...e])})}}),ou=k({is(e){return e.kind===`ValueListNode`},create(e){return k({kind:`ValueListNode`,values:k(e)})}}),su=k({is(e){return e.kind===`ValueNode`},create(e){return k({kind:`ValueNode`,value:e})},createImmediate(e){return k({kind:`ValueNode`,value:e,immediate:!0})}});function cu(e){return ol(e)?du(e):R(e)}function R(e){return Vf(e)?zf(e):su.create(e)}function lu(e){return $c(e)||el(e)||tl(e)}function uu(e){if(!lu(e))throw Error(`unsafe immediate value ${JSON.stringify(e)}`);return su.createImmediate(e)}function du(e){return e.some(Vf)?ou.create(e.map(e=>R(e))):au.create(e)}var fu=k({is(e){return e.kind===`ParensNode`},create(e){return k({kind:`ParensNode`,node:e})}});function z(e){if(e.length===3)return pu(e[0],e[1],e[2]);if(e.length===1)return R(e[0]);throw Error(`invalid arguments: ${JSON.stringify(e)}`)}function pu(e,t,n){return _u(t)&&vu(n)?Cl.create(L(e),yu(t),su.createImmediate(n)):Cl.create(L(e),yu(t),cu(n))}function mu(e,t,n){return Cl.create(L(e),yu(t),L(n))}function hu(e,t){return gu(Object.entries(e).filter(([,e])=>!Qc(e)).map(([e,t])=>pu(e,vu(t)?`is`:`=`,t)),t)}function gu(e,t,n=!0){let r=t===`and`?yl.create:bl.create;if(e.length===0)return Cl.create(su.createImmediate(1),Al.create(`=`),su.createImmediate(+(t===`and`)));let i=bu(e[0]);for(let t=1;t<e.length;++t)i=r(i,bu(e[t]));return e.length>1&&n?fu.create(i):i}function _u(e){return e===`is`||e===`is not`}function vu(e){return tl(e)||el(e)}function yu(e){if(D(e)&&kl.includes(e))return Al.create(e);if(P(e))return e.toOperationNode();throw Error(`invalid operator ${JSON.stringify(e)}`)}function bu(e){return P(e)?e.toOperationNode():e}var xu=k({is(e){return e.kind===`OrderByNode`},create(e){return k({kind:`OrderByNode`,items:k([...e])})},cloneWithItems(e,t){return k({...e,items:k([...e.items,...t])})}}),Su=k({is(e){return e.kind===`PartitionByNode`},create(e){return k({kind:`PartitionByNode`,items:k(e)})},cloneWithItems(e,t){return k({...e,items:k([...e.items,...t])})}}),Cu=k({is(e){return e.kind===`OverNode`},create(){return k({kind:`OverNode`})},cloneWithOrderByItems(e,t){return k({...e,orderBy:e.orderBy?xu.cloneWithItems(e.orderBy,t):xu.create(t)})},cloneWithPartitionByItems(e,t){return k({...e,partitionBy:e.partitionBy?Su.cloneWithItems(e.partitionBy,t):Su.create(t)})}}),wu=k({is(e){return e.kind===`FromNode`},create(e){return k({kind:`FromNode`,froms:k(e)})},cloneWithFroms(e,t){return k({...e,froms:k([...e.froms,...t])})}}),Tu=k({is(e){return e.kind===`GroupByNode`},create(e){return k({kind:`GroupByNode`,items:k(e)})},cloneWithItems(e,t){return k({...e,items:k([...e.items,...t])})}}),Eu=k({is(e){return e.kind===`HavingNode`},create(e){return k({kind:`HavingNode`,having:e})},cloneWithOperation(e,t,n){return k({...e,having:t===`And`?yl.create(e.having,n):bl.create(e.having,n)})}}),B=k({is(e){return e.kind===`InsertQueryNode`},create(e,t,n){return k({kind:`InsertQueryNode`,into:e,...t&&{with:t},replace:n})},createWithoutInto(){return k({kind:`InsertQueryNode`})},cloneWith(e,t){return k({...e,...t})}}),Du=k({is(e){return e.kind===`ListNode`},create(e){return k({kind:`ListNode`,items:k(e)})}}),Ou=k({is(e){return e.kind===`UpdateQueryNode`},create(e,t){return k({kind:`UpdateQueryNode`,table:e.length===1?e[0]:Du.create(e),...t&&{with:t}})},createWithoutTable(){return k({kind:`UpdateQueryNode`})},cloneWithFromItems(e,t){return k({...e,from:e.from?wu.cloneWithFroms(e.from,t):wu.create(t)})},cloneWithUpdates(e,t){return k({...e,updates:e.updates?k([...e.updates,...t]):t})},cloneWithLimit(e,t){return k({...e,limit:t})}}),ku=k({is(e){return e.kind===`UsingNode`},create(e){return k({kind:`UsingNode`,tables:k(e)})},cloneWithTables(e,t){return k({...e,tables:k([...e.tables,...t])})}}),Au=k({is(e){return e.kind===`DeleteQueryNode`},create(e,t){return k({kind:`DeleteQueryNode`,from:wu.create(e),...t&&{with:t}})},cloneWithOrderByItems:(e,t)=>H.cloneWithOrderByItems(e,t),cloneWithoutOrderBy:e=>H.cloneWithoutOrderBy(e),cloneWithLimit(e,t){return k({...e,limit:t})},cloneWithoutLimit(e){return k({...e,limit:void 0})},cloneWithUsing(e,t){return k({...e,using:e.using===void 0?ku.create(t):ku.cloneWithTables(e.using,t)})}}),V=k({is(e){return e.kind===`WhereNode`},create(e){return k({kind:`WhereNode`,where:e})},cloneWithOperation(e,t,n){return k({...e,where:t===`And`?yl.create(e.where,n):bl.create(e.where,n)})}}),ju=k({is(e){return e.kind===`ReturningNode`},create(e){return k({kind:`ReturningNode`,selections:k(e)})},cloneWithSelections(e,t){return k({...e,selections:e.selections?k([...e.selections,...t]):k(t)})}}),Mu=k({is(e){return e.kind===`ExplainNode`},create(e,t){return k({kind:`ExplainNode`,format:e,options:t})}}),Nu=k({is(e){return e.kind===`WhenNode`},create(e){return k({kind:`WhenNode`,condition:e})},cloneWithResult(e,t){return k({...e,result:t})}}),Pu=k({is(e){return e.kind===`MergeQueryNode`},create(e,t){return k({kind:`MergeQueryNode`,into:e,...t&&{with:t}})},cloneWithUsing(e,t){return k({...e,using:t})},cloneWithWhen(e,t){return k({...e,whens:e.whens?k([...e.whens,t]):k([t])})},cloneWithThen(e,t){return k({...e,whens:e.whens?k([...e.whens.slice(0,-1),Nu.cloneWithResult(e.whens[e.whens.length-1],t)]):void 0})}}),Fu=k({is(e){return e.kind===`OutputNode`},create(e){return k({kind:`OutputNode`,selections:k(e)})},cloneWithSelections(e,t){return k({...e,selections:e.selections?k([...e.selections,...t]):k(t)})}}),H=k({is(e){return U.is(e)||B.is(e)||Ou.is(e)||Au.is(e)||Pu.is(e)},cloneWithEndModifier(e,t){return k({...e,endModifiers:e.endModifiers?k([...e.endModifiers,t]):k([t])})},cloneWithWhere(e,t){return k({...e,where:e.where?V.cloneWithOperation(e.where,`And`,t):V.create(t)})},cloneWithJoin(e,t){return k({...e,joins:e.joins?k([...e.joins,t]):k([t])})},cloneWithReturning(e,t){return k({...e,returning:e.returning?ju.cloneWithSelections(e.returning,t):ju.create(t)})},cloneWithoutReturning(e){return k({...e,returning:void 0})},cloneWithoutWhere(e){return k({...e,where:void 0})},cloneWithExplain(e,t,n){return k({...e,explain:Mu.create(t,n?.toOperationNode())})},cloneWithTop(e,t){return k({...e,top:t})},cloneWithOutput(e,t){return k({...e,output:e.output?Fu.cloneWithSelections(e.output,t):Fu.create(t)})},cloneWithOrderByItems(e,t){return k({...e,orderBy:e.orderBy?xu.cloneWithItems(e.orderBy,t):xu.create(t)})},cloneWithoutOrderBy(e){return k({...e,orderBy:void 0})}}),U=k({is(e){return e.kind===`SelectQueryNode`},create(e){return k({kind:`SelectQueryNode`,...e&&{with:e}})},createFrom(e,t){return k({kind:`SelectQueryNode`,from:wu.create(e),...t&&{with:t}})},cloneWithSelections(e,t){return k({...e,selections:e.selections?k([...e.selections,...t]):k(t)})},cloneWithDistinctOn(e,t){return k({...e,distinctOn:e.distinctOn?k([...e.distinctOn,...t]):k(t)})},cloneWithFrontModifier(e,t){return k({...e,frontModifiers:e.frontModifiers?k([...e.frontModifiers,t]):k([t])})},cloneWithOrderByItems:(e,t)=>H.cloneWithOrderByItems(e,t),cloneWithGroupByItems(e,t){return k({...e,groupBy:e.groupBy?Tu.cloneWithItems(e.groupBy,t):Tu.create(t)})},cloneWithLimit(e,t){return k({...e,limit:t})},cloneWithOffset(e,t){return k({...e,offset:t})},cloneWithFetch(e,t){return k({...e,fetch:t})},cloneWithHaving(e,t){return k({...e,having:e.having?Eu.cloneWithOperation(e.having,`And`,t):Eu.create(t)})},cloneWithSetOperations(e,t){return k({...e,setOperations:e.setOperations?k([...e.setOperations,...t]):k([...t])})},cloneWithoutSelections(e){return k({...e,selections:[]})},cloneWithoutLimit(e){return k({...e,limit:void 0})},cloneWithoutOffset(e){return k({...e,offset:void 0})},cloneWithoutOrderBy:e=>H.cloneWithoutOrderBy(e),cloneWithoutGroupBy(e){return k({...e,groupBy:void 0})}}),Iu=class e{#e;constructor(e){this.#e=k(e)}on(...t){return new e({...this.#e,joinNode:Sl.cloneWithOn(this.#e.joinNode,z(t))})}onRef(t,n,r){return new e({...this.#e,joinNode:Sl.cloneWithOn(this.#e.joinNode,mu(t,n,r))})}onTrue(){return new e({...this.#e,joinNode:Sl.cloneWithOn(this.#e.joinNode,I.createWithSql(`true`))})}$call(e){return e(this)}toOperationNode(){return this.#e.joinNode}},Lu=k({is(e){return e.kind===`PartitionByItemNode`},create(e){return k({kind:`PartitionByItemNode`,partitionBy:e})}});function Ru(e){return Xl(e).map(Lu.create)}var zu=class e{#e;constructor(e){this.#e=k(e)}orderBy(...t){return new e({overNode:Cu.cloneWithOrderByItems(this.#e.overNode,Hl(t))})}clearOrderBy(){return new e({overNode:H.cloneWithoutOrderBy(this.#e.overNode)})}partitionBy(t){return new e({overNode:Cu.cloneWithPartitionByItems(this.#e.overNode,Ru(t))})}$call(e){return e(this)}toOperationNode(){return this.#e.overNode}},Bu=k({is(e){return e.kind===`SelectionNode`},create(e){return k({kind:`SelectionNode`,selection:e})},createSelectAll(){return k({kind:`SelectionNode`,selection:Ml.create()})},createSelectAllFromTable(e){return k({kind:`SelectionNode`,selection:Nl.createSelectAll(e)})}});function W(e){return O(e)?W(e(Rf())):ol(e)?e.map(e=>Vu(e)):[Vu(e)]}function Vu(e){return D(e)?Bu.create($l(e)):Fl(e)?Bu.create(e.toOperationNode()):Bu.create(Bf(e))}function Hu(e){return e?Array.isArray(e)?e.map(Uu):[Uu(e)]:[Bu.createSelectAll()]}function Uu(e){if(D(e))return Bu.createSelectAllFromTable(Q(e));throw Error(`invalid value selectAll expression: ${JSON.stringify(e)}`)}var Wu=k({is(e){return e.kind===`ValuesNode`},create(e){return k({kind:`ValuesNode`,values:k(e)})}}),Gu=k({is(e){return e.kind===`DefaultInsertValueNode`},create(){return k({kind:`DefaultInsertValueNode`})}});function Ku(e){let t=O(e)?e(Rf()):e;return qu(ol(t)?t:k([t]))}function qu(e){let t=Ju(e);return[k([...t.keys()].map(F.create)),Wu.create(e.map(e=>Yu(e,t)))]}function Ju(e){let t=new Map;for(let n of e){let e=Object.keys(n);for(let r of e)!t.has(r)&&n[r]!==void 0&&t.set(r,t.size)}return t}function Yu(e,t){let n=Object.keys(e),r=Array.from({length:t.size}),i=!1,a=n.length;for(let o of n){let n=t.get(o);if(Qc(n)){a--;continue}let s=e[o];(Qc(s)||Vf(s))&&(i=!0),r[n]=s}if(a<t.size||i){let e=Gu.create();return ou.create(r.map(t=>Qc(t)?e:R(t)))}return au.create(r)}var Xu=k({is(e){return e.kind===`ColumnUpdateNode`},create(e,t){return k({kind:`ColumnUpdateNode`,column:e,value:t})}});function Zu(...e){return e.length===2?[Xu.create(L(e[0]),R(e[1]))]:Qu(e[0])}function Qu(e){let t=O(e)?e(Rf()):e;return Object.entries(t).filter(([e,t])=>t!==void 0).map(([e,t])=>Xu.create(F.create(e),R(t)))}var $u=k({is(e){return e.kind===`OnDuplicateKeyNode`},create(e){return k({kind:`OnDuplicateKeyNode`,updates:e})}}),ed=class{insertId;numInsertedOrUpdatedRows;constructor(e,t){this.insertId=e,this.numInsertedOrUpdatedRows=t}},td=class extends Error{node;constructor(e){super(`no result`),this.node=e}};function nd(e){return Object.prototype.hasOwnProperty.call(e,`prototype`)}var G=k({is(e){return e.kind===`OnConflictNode`},create(){return k({kind:`OnConflictNode`})},cloneWith(e,t){return k({...e,...t})},cloneWithIndexWhere(e,t){return k({...e,indexWhere:e.indexWhere?V.cloneWithOperation(e.indexWhere,`And`,t):V.create(t)})},cloneWithIndexOrWhere(e,t){return k({...e,indexWhere:e.indexWhere?V.cloneWithOperation(e.indexWhere,`Or`,t):V.create(t)})},cloneWithUpdateWhere(e,t){return k({...e,updateWhere:e.updateWhere?V.cloneWithOperation(e.updateWhere,`And`,t):V.create(t)})},cloneWithUpdateOrWhere(e,t){return k({...e,updateWhere:e.updateWhere?V.cloneWithOperation(e.updateWhere,`Or`,t):V.create(t)})},cloneWithoutIndexWhere(e){return k({...e,indexWhere:void 0})},cloneWithoutUpdateWhere(e){return k({...e,updateWhere:void 0})}}),rd=class e{#e;constructor(e){this.#e=k(e)}column(t){let n=F.create(t);return new e({...this.#e,onConflictNode:G.cloneWith(this.#e.onConflictNode,{columns:this.#e.onConflictNode.columns?k([...this.#e.onConflictNode.columns,n]):k([n])})})}columns(t){let n=t.map(F.create);return new e({...this.#e,onConflictNode:G.cloneWith(this.#e.onConflictNode,{columns:this.#e.onConflictNode.columns?k([...this.#e.onConflictNode.columns,...n]):k(n)})})}constraint(t){return new e({...this.#e,onConflictNode:G.cloneWith(this.#e.onConflictNode,{constraint:M.create(t)})})}expression(t){return new e({...this.#e,onConflictNode:G.cloneWith(this.#e.onConflictNode,{indexExpression:t.toOperationNode()})})}where(...t){return new e({...this.#e,onConflictNode:G.cloneWithIndexWhere(this.#e.onConflictNode,z(t))})}whereRef(t,n,r){return new e({...this.#e,onConflictNode:G.cloneWithIndexWhere(this.#e.onConflictNode,mu(t,n,r))})}clearWhere(){return new e({...this.#e,onConflictNode:G.cloneWithoutIndexWhere(this.#e.onConflictNode)})}doNothing(){return new id({...this.#e,onConflictNode:G.cloneWith(this.#e.onConflictNode,{doNothing:!0})})}doUpdateSet(e){return new ad({...this.#e,onConflictNode:G.cloneWith(this.#e.onConflictNode,{updates:Qu(e)})})}$call(e){return e(this)}},id=class{#e;constructor(e){this.#e=k(e)}toOperationNode(){return this.#e.onConflictNode}},ad=class e{#e;constructor(e){this.#e=k(e)}where(...t){return new e({...this.#e,onConflictNode:G.cloneWithUpdateWhere(this.#e.onConflictNode,z(t))})}whereRef(t,n,r){return new e({...this.#e,onConflictNode:G.cloneWithUpdateWhere(this.#e.onConflictNode,mu(t,n,r))})}clearWhere(){return new e({...this.#e,onConflictNode:G.cloneWithoutUpdateWhere(this.#e.onConflictNode)})}$call(e){return e(this)}toOperationNode(){return this.#e.onConflictNode}},od=k({is(e){return e.kind===`TopNode`},create(e,t){return k({kind:`TopNode`,expression:e,modifiers:t})}});function sd(e,t){if(!$c(e)&&!rl(e))throw Error(`Invalid top expression: ${e}`);if(!Qc(t)&&!cd(t))throw Error(`Invalid top modifiers: ${t}`);return od.create(e,t)}function cd(e){return e===`percent`||e===`with ties`||e===`percent with ties`}var ld=k({is(e){return e.kind===`OrActionNode`},create(e){return k({kind:`OrActionNode`,action:e})}}),ud=class e{#e;constructor(e){this.#e=k(e)}values(t){let[n,r]=Ku(t);return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{columns:n,values:r})})}columns(t){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{columns:k(t.map(F.create))})})}expression(t){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{values:zf(t)})})}defaultValues(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{defaultValues:!0})})}modifyEnd(t){return new e({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,t.toOperationNode())})}ignore(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{orAction:ld.create(`ignore`)})})}orIgnore(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{orAction:ld.create(`ignore`)})})}orAbort(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{orAction:ld.create(`abort`)})})}orFail(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{orAction:ld.create(`fail`)})})}orReplace(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{orAction:ld.create(`replace`)})})}orRollback(){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{orAction:ld.create(`rollback`)})})}top(t,n){return new e({...this.#e,queryNode:H.cloneWithTop(this.#e.queryNode,sd(t,n))})}onConflict(t){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{onConflict:t(new rd({onConflictNode:G.create()})).toOperationNode()})})}onDuplicateKeyUpdate(t){return new e({...this.#e,queryNode:B.cloneWith(this.#e.queryNode,{onDuplicateKey:$u.create(Qu(t))})})}returning(t){return new e({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,W(t))})}returningAll(){return new e({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,Hu())})}output(t){return new e({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,W(t))})}outputAll(t){return new e({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,Hu(t))})}clearReturning(){return new e({...this.#e,queryNode:H.cloneWithoutReturning(this.#e.queryNode)})}$call(e){return e(this)}$if(t,n){return t?n(this):new e({...this.#e})}$castTo(){return new e(this.#e)}$narrowType(){return new e(this.#e)}$assertType(){return new e(this.#e)}withPlugin(t){return new e({...this.#e,executor:this.#e.executor.withPlugin(t)})}toOperationNode(){return this.#e.executor.transformQuery(this.#e.queryNode,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){let e=this.compile(),t=await this.#e.executor.executeQuery(e),{adapter:n}=this.#e.executor,r=e.query;return r.returning&&n.supportsReturning||r.output&&n.supportsOutput?t.rows:[new ed(t.insertId,t.numAffectedRows??BigInt(0))]}async executeTakeFirst(){let[e]=await this.execute();return e}async executeTakeFirstOrThrow(e=td){let t=await this.executeTakeFirst();if(t===void 0)throw nd(e)?new e(this.toOperationNode()):e(this.toOperationNode());return t}async*stream(e=100){let t=this.compile(),n=this.#e.executor.stream(t,e);for await(let e of n)yield*e.rows}async explain(t,n){return await new e({...this.#e,queryNode:H.cloneWithExplain(this.#e.queryNode,t,n)}).execute()}},dd=class{numDeletedRows;constructor(e){this.numDeletedRows=e}},fd=k({is(e){return e.kind===`LimitNode`},create(e){return k({kind:`LimitNode`,limit:e})}}),K,pd=class{#e;constructor(e){this.#e=k(e)}where(...e){return new K({...this.#e,queryNode:H.cloneWithWhere(this.#e.queryNode,z(e))})}whereRef(e,t,n){return new K({...this.#e,queryNode:H.cloneWithWhere(this.#e.queryNode,mu(e,t,n))})}clearWhere(){return new K({...this.#e,queryNode:H.cloneWithoutWhere(this.#e.queryNode)})}top(e,t){return new K({...this.#e,queryNode:H.cloneWithTop(this.#e.queryNode,sd(e,t))})}using(e){return new K({...this.#e,queryNode:Au.cloneWithUsing(this.#e.queryNode,Gf(e))})}innerJoin(...e){return this.#t(`InnerJoin`,e)}leftJoin(...e){return this.#t(`LeftJoin`,e)}rightJoin(...e){return this.#t(`RightJoin`,e)}fullJoin(...e){return this.#t(`FullJoin`,e)}#t(e,t){return new K({...this.#e,queryNode:H.cloneWithJoin(this.#e.queryNode,Yd(e,t))})}returning(e){return new K({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,W(e))})}returningAll(e){return new K({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,Hu(e))})}output(e){return new K({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,W(e))})}outputAll(e){return new K({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,Hu(e))})}clearReturning(){return new K({...this.#e,queryNode:H.cloneWithoutReturning(this.#e.queryNode)})}clearLimit(){return new K({...this.#e,queryNode:Au.cloneWithoutLimit(this.#e.queryNode)})}orderBy(...e){return new K({...this.#e,queryNode:H.cloneWithOrderByItems(this.#e.queryNode,Hl(e))})}clearOrderBy(){return new K({...this.#e,queryNode:H.cloneWithoutOrderBy(this.#e.queryNode)})}limit(e){return new K({...this.#e,queryNode:Au.cloneWithLimit(this.#e.queryNode,fd.create(R(e)))})}modifyEnd(e){return new K({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,e.toOperationNode())})}$call(e){return e(this)}$if(e,t){return e?t(this):new K({...this.#e})}$castTo(){return new K(this.#e)}$narrowType(){return new K(this.#e)}$assertType(){return new K(this.#e)}withPlugin(e){return new K({...this.#e,executor:this.#e.executor.withPlugin(e)})}toOperationNode(){return this.#e.executor.transformQuery(this.#e.queryNode,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){let e=this.compile(),t=await this.#e.executor.executeQuery(e),{adapter:n}=this.#e.executor,r=e.query;return r.returning&&n.supportsReturning||r.output&&n.supportsOutput?t.rows:[new dd(t.numAffectedRows??BigInt(0))]}async executeTakeFirst(){let[e]=await this.execute();return e}async executeTakeFirstOrThrow(e=td){let t=await this.executeTakeFirst();if(t===void 0)throw nd(e)?new e(this.toOperationNode()):e(this.toOperationNode());return t}async*stream(e=100){let t=this.compile(),n=this.#e.executor.stream(t,e);for await(let e of n)yield*e.rows}async explain(e,t){return await new K({...this.#e,queryNode:H.cloneWithExplain(this.#e.queryNode,e,t)}).execute()}};K=pd;var md=class{numUpdatedRows;numChangedRows;constructor(e,t){this.numUpdatedRows=e,this.numChangedRows=t}},q,hd=class{#e;constructor(e){this.#e=k(e)}where(...e){return new q({...this.#e,queryNode:H.cloneWithWhere(this.#e.queryNode,z(e))})}whereRef(e,t,n){return new q({...this.#e,queryNode:H.cloneWithWhere(this.#e.queryNode,mu(e,t,n))})}clearWhere(){return new q({...this.#e,queryNode:H.cloneWithoutWhere(this.#e.queryNode)})}top(e,t){return new q({...this.#e,queryNode:H.cloneWithTop(this.#e.queryNode,sd(e,t))})}from(e){return new q({...this.#e,queryNode:Ou.cloneWithFromItems(this.#e.queryNode,Gf(e))})}innerJoin(...e){return this.#t(`InnerJoin`,e)}leftJoin(...e){return this.#t(`LeftJoin`,e)}rightJoin(...e){return this.#t(`RightJoin`,e)}fullJoin(...e){return this.#t(`FullJoin`,e)}#t(e,t){return new q({...this.#e,queryNode:H.cloneWithJoin(this.#e.queryNode,Yd(e,t))})}orderBy(...e){return new q({...this.#e,queryNode:H.cloneWithOrderByItems(this.#e.queryNode,Hl(e))})}clearOrderBy(){return new q({...this.#e,queryNode:H.cloneWithoutOrderBy(this.#e.queryNode)})}limit(e){return new q({...this.#e,queryNode:Ou.cloneWithLimit(this.#e.queryNode,fd.create(R(e)))})}set(...e){return new q({...this.#e,queryNode:Ou.cloneWithUpdates(this.#e.queryNode,Zu(...e))})}returning(e){return new q({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,W(e))})}returningAll(e){return new q({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,Hu(e))})}output(e){return new q({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,W(e))})}outputAll(e){return new q({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,Hu(e))})}modifyEnd(e){return new q({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,e.toOperationNode())})}clearReturning(){return new q({...this.#e,queryNode:H.cloneWithoutReturning(this.#e.queryNode)})}$call(e){return e(this)}$if(e,t){return e?t(this):new q({...this.#e})}$castTo(){return new q(this.#e)}$narrowType(){return new q(this.#e)}$assertType(){return new q(this.#e)}withPlugin(e){return new q({...this.#e,executor:this.#e.executor.withPlugin(e)})}toOperationNode(){return this.#e.executor.transformQuery(this.#e.queryNode,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){let e=this.compile(),t=await this.#e.executor.executeQuery(e),{adapter:n}=this.#e.executor,r=e.query;return r.returning&&n.supportsReturning||r.output&&n.supportsOutput?t.rows:[new md(t.numAffectedRows??BigInt(0),t.numChangedRows)]}async executeTakeFirst(){let[e]=await this.execute();return e}async executeTakeFirstOrThrow(e=td){let t=await this.executeTakeFirst();if(t===void 0)throw nd(e)?new e(this.toOperationNode()):e(this.toOperationNode());return t}async*stream(e=100){let t=this.compile(),n=this.#e.executor.stream(t,e);for await(let e of n)yield*e.rows}async explain(e,t){return await new q({...this.#e,queryNode:H.cloneWithExplain(this.#e.queryNode,e,t)}).execute()}};q=hd;var gd=k({is(e){return e.kind===`CommonTableExpressionNameNode`},create(e,t){return k({kind:`CommonTableExpressionNameNode`,table:hl.create(e),columns:t?k(t.map(F.create)):void 0})}}),_d=k({is(e){return e.kind===`CommonTableExpressionNode`},create(e,t){return k({kind:`CommonTableExpressionNode`,name:e,expression:t})},cloneWith(e,t){return k({...e,...t})}}),vd=class e{#e;constructor(e){this.#e=k(e)}materialized(){return new e({...this.#e,node:_d.cloneWith(this.#e.node,{materialized:!0})})}notMaterialized(){return new e({...this.#e,node:_d.cloneWith(this.#e.node,{materialized:!1})})}toOperationNode(){return this.#e.node}};function yd(e,t){let n=t(Kd()).toOperationNode();return O(e)?e(bd(n)).toOperationNode():_d.create(xd(e),n)}function bd(e){return t=>new vd({node:_d.create(xd(t),e)})}function xd(e){if(e.includes(`(`)){let t=e.split(/[\(\)]/),n=t[0],r=t[1].split(`,`).map(e=>e.trim());return gd.create(n,r)}return gd.create(e)}var Sd=k({is(e){return e.kind===`WithNode`},create(e,t){return k({kind:`WithNode`,expressions:k([e]),...t})},cloneWithExpression(e,t){return k({...e,expressions:k([...e.expressions,t])})}}),Cd=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`.split(``);function wd(e){let t=``;for(let n=0;n<e;++n)t+=Td();return t}function Td(){return Cd[~~(Math.random()*Cd.length)]}function J(){return new Ed}var Ed=class{#e;get queryId(){return this.#e===void 0&&(this.#e=wd(8)),this.#e}};function Y(e){return e}var Dd=class{nodeStack=[];#e=k({AliasNode:this.transformAlias.bind(this),ColumnNode:this.transformColumn.bind(this),IdentifierNode:this.transformIdentifier.bind(this),SchemableIdentifierNode:this.transformSchemableIdentifier.bind(this),RawNode:this.transformRaw.bind(this),ReferenceNode:this.transformReference.bind(this),SelectQueryNode:this.transformSelectQuery.bind(this),SelectionNode:this.transformSelection.bind(this),TableNode:this.transformTable.bind(this),FromNode:this.transformFrom.bind(this),SelectAllNode:this.transformSelectAll.bind(this),AndNode:this.transformAnd.bind(this),OrNode:this.transformOr.bind(this),ValueNode:this.transformValue.bind(this),ValueListNode:this.transformValueList.bind(this),PrimitiveValueListNode:this.transformPrimitiveValueList.bind(this),ParensNode:this.transformParens.bind(this),JoinNode:this.transformJoin.bind(this),OperatorNode:this.transformOperator.bind(this),WhereNode:this.transformWhere.bind(this),InsertQueryNode:this.transformInsertQuery.bind(this),DeleteQueryNode:this.transformDeleteQuery.bind(this),ReturningNode:this.transformReturning.bind(this),CreateTableNode:this.transformCreateTable.bind(this),AddColumnNode:this.transformAddColumn.bind(this),ColumnDefinitionNode:this.transformColumnDefinition.bind(this),DropTableNode:this.transformDropTable.bind(this),DataTypeNode:this.transformDataType.bind(this),OrderByNode:this.transformOrderBy.bind(this),OrderByItemNode:this.transformOrderByItem.bind(this),GroupByNode:this.transformGroupBy.bind(this),GroupByItemNode:this.transformGroupByItem.bind(this),UpdateQueryNode:this.transformUpdateQuery.bind(this),ColumnUpdateNode:this.transformColumnUpdate.bind(this),LimitNode:this.transformLimit.bind(this),OffsetNode:this.transformOffset.bind(this),OnConflictNode:this.transformOnConflict.bind(this),OnDuplicateKeyNode:this.transformOnDuplicateKey.bind(this),CreateIndexNode:this.transformCreateIndex.bind(this),DropIndexNode:this.transformDropIndex.bind(this),ListNode:this.transformList.bind(this),PrimaryKeyConstraintNode:this.transformPrimaryKeyConstraint.bind(this),UniqueConstraintNode:this.transformUniqueConstraint.bind(this),ReferencesNode:this.transformReferences.bind(this),CheckConstraintNode:this.transformCheckConstraint.bind(this),WithNode:this.transformWith.bind(this),CommonTableExpressionNode:this.transformCommonTableExpression.bind(this),CommonTableExpressionNameNode:this.transformCommonTableExpressionName.bind(this),HavingNode:this.transformHaving.bind(this),CreateSchemaNode:this.transformCreateSchema.bind(this),DropSchemaNode:this.transformDropSchema.bind(this),AlterTableNode:this.transformAlterTable.bind(this),DropColumnNode:this.transformDropColumn.bind(this),RenameColumnNode:this.transformRenameColumn.bind(this),AlterColumnNode:this.transformAlterColumn.bind(this),ModifyColumnNode:this.transformModifyColumn.bind(this),AddConstraintNode:this.transformAddConstraint.bind(this),DropConstraintNode:this.transformDropConstraint.bind(this),RenameConstraintNode:this.transformRenameConstraint.bind(this),ForeignKeyConstraintNode:this.transformForeignKeyConstraint.bind(this),CreateViewNode:this.transformCreateView.bind(this),RefreshMaterializedViewNode:this.transformRefreshMaterializedView.bind(this),DropViewNode:this.transformDropView.bind(this),GeneratedNode:this.transformGenerated.bind(this),DefaultValueNode:this.transformDefaultValue.bind(this),OnNode:this.transformOn.bind(this),ValuesNode:this.transformValues.bind(this),SelectModifierNode:this.transformSelectModifier.bind(this),CreateTypeNode:this.transformCreateType.bind(this),DropTypeNode:this.transformDropType.bind(this),ExplainNode:this.transformExplain.bind(this),DefaultInsertValueNode:this.transformDefaultInsertValue.bind(this),AggregateFunctionNode:this.transformAggregateFunction.bind(this),OverNode:this.transformOver.bind(this),PartitionByNode:this.transformPartitionBy.bind(this),PartitionByItemNode:this.transformPartitionByItem.bind(this),SetOperationNode:this.transformSetOperation.bind(this),BinaryOperationNode:this.transformBinaryOperation.bind(this),UnaryOperationNode:this.transformUnaryOperation.bind(this),UsingNode:this.transformUsing.bind(this),FunctionNode:this.transformFunction.bind(this),CaseNode:this.transformCase.bind(this),WhenNode:this.transformWhen.bind(this),JSONReferenceNode:this.transformJSONReference.bind(this),JSONPathNode:this.transformJSONPath.bind(this),JSONPathLegNode:this.transformJSONPathLeg.bind(this),JSONOperatorChainNode:this.transformJSONOperatorChain.bind(this),TupleNode:this.transformTuple.bind(this),MergeQueryNode:this.transformMergeQuery.bind(this),MatchedNode:this.transformMatched.bind(this),AddIndexNode:this.transformAddIndex.bind(this),CastNode:this.transformCast.bind(this),FetchNode:this.transformFetch.bind(this),TopNode:this.transformTop.bind(this),OutputNode:this.transformOutput.bind(this),OrActionNode:this.transformOrAction.bind(this),CollateNode:this.transformCollate.bind(this)});transformNode(e,t){if(!e)return e;this.nodeStack.push(e);let n=this.transformNodeImpl(e,t);return this.nodeStack.pop(),k(n)}transformNodeImpl(e,t){return this.#e[e.kind](e,t)}transformNodeList(e,t){return e&&k(e.map(e=>this.transformNode(e,t)))}transformSelectQuery(e,t){return Y({kind:`SelectQueryNode`,from:this.transformNode(e.from,t),selections:this.transformNodeList(e.selections,t),distinctOn:this.transformNodeList(e.distinctOn,t),joins:this.transformNodeList(e.joins,t),groupBy:this.transformNode(e.groupBy,t),orderBy:this.transformNode(e.orderBy,t),where:this.transformNode(e.where,t),frontModifiers:this.transformNodeList(e.frontModifiers,t),endModifiers:this.transformNodeList(e.endModifiers,t),limit:this.transformNode(e.limit,t),offset:this.transformNode(e.offset,t),with:this.transformNode(e.with,t),having:this.transformNode(e.having,t),explain:this.transformNode(e.explain,t),setOperations:this.transformNodeList(e.setOperations,t),fetch:this.transformNode(e.fetch,t),top:this.transformNode(e.top,t)})}transformSelection(e,t){return Y({kind:`SelectionNode`,selection:this.transformNode(e.selection,t)})}transformColumn(e,t){return Y({kind:`ColumnNode`,column:this.transformNode(e.column,t)})}transformAlias(e,t){return Y({kind:`AliasNode`,node:this.transformNode(e.node,t),alias:this.transformNode(e.alias,t)})}transformTable(e,t){return Y({kind:`TableNode`,table:this.transformNode(e.table,t)})}transformFrom(e,t){return Y({kind:`FromNode`,froms:this.transformNodeList(e.froms,t)})}transformReference(e,t){return Y({kind:`ReferenceNode`,column:this.transformNode(e.column,t),table:this.transformNode(e.table,t)})}transformAnd(e,t){return Y({kind:`AndNode`,left:this.transformNode(e.left,t),right:this.transformNode(e.right,t)})}transformOr(e,t){return Y({kind:`OrNode`,left:this.transformNode(e.left,t),right:this.transformNode(e.right,t)})}transformValueList(e,t){return Y({kind:`ValueListNode`,values:this.transformNodeList(e.values,t)})}transformParens(e,t){return Y({kind:`ParensNode`,node:this.transformNode(e.node,t)})}transformJoin(e,t){return Y({kind:`JoinNode`,joinType:e.joinType,table:this.transformNode(e.table,t),on:this.transformNode(e.on,t)})}transformRaw(e,t){return Y({kind:`RawNode`,sqlFragments:k([...e.sqlFragments]),parameters:this.transformNodeList(e.parameters,t)})}transformWhere(e,t){return Y({kind:`WhereNode`,where:this.transformNode(e.where,t)})}transformInsertQuery(e,t){return Y({kind:`InsertQueryNode`,into:this.transformNode(e.into,t),columns:this.transformNodeList(e.columns,t),values:this.transformNode(e.values,t),returning:this.transformNode(e.returning,t),onConflict:this.transformNode(e.onConflict,t),onDuplicateKey:this.transformNode(e.onDuplicateKey,t),endModifiers:this.transformNodeList(e.endModifiers,t),with:this.transformNode(e.with,t),ignore:e.ignore,orAction:this.transformNode(e.orAction,t),replace:e.replace,explain:this.transformNode(e.explain,t),defaultValues:e.defaultValues,top:this.transformNode(e.top,t),output:this.transformNode(e.output,t)})}transformValues(e,t){return Y({kind:`ValuesNode`,values:this.transformNodeList(e.values,t)})}transformDeleteQuery(e,t){return Y({kind:`DeleteQueryNode`,from:this.transformNode(e.from,t),using:this.transformNode(e.using,t),joins:this.transformNodeList(e.joins,t),where:this.transformNode(e.where,t),returning:this.transformNode(e.returning,t),endModifiers:this.transformNodeList(e.endModifiers,t),with:this.transformNode(e.with,t),orderBy:this.transformNode(e.orderBy,t),limit:this.transformNode(e.limit,t),explain:this.transformNode(e.explain,t),top:this.transformNode(e.top,t),output:this.transformNode(e.output,t)})}transformReturning(e,t){return Y({kind:`ReturningNode`,selections:this.transformNodeList(e.selections,t)})}transformCreateTable(e,t){return Y({kind:`CreateTableNode`,table:this.transformNode(e.table,t),columns:this.transformNodeList(e.columns,t),constraints:this.transformNodeList(e.constraints,t),temporary:e.temporary,ifNotExists:e.ifNotExists,onCommit:e.onCommit,frontModifiers:this.transformNodeList(e.frontModifiers,t),endModifiers:this.transformNodeList(e.endModifiers,t),selectQuery:this.transformNode(e.selectQuery,t)})}transformColumnDefinition(e,t){return Y({kind:`ColumnDefinitionNode`,column:this.transformNode(e.column,t),dataType:this.transformNode(e.dataType,t),references:this.transformNode(e.references,t),primaryKey:e.primaryKey,autoIncrement:e.autoIncrement,unique:e.unique,notNull:e.notNull,unsigned:e.unsigned,defaultTo:this.transformNode(e.defaultTo,t),check:this.transformNode(e.check,t),generated:this.transformNode(e.generated,t),frontModifiers:this.transformNodeList(e.frontModifiers,t),endModifiers:this.transformNodeList(e.endModifiers,t),nullsNotDistinct:e.nullsNotDistinct,identity:e.identity,ifNotExists:e.ifNotExists})}transformAddColumn(e,t){return Y({kind:`AddColumnNode`,column:this.transformNode(e.column,t)})}transformDropTable(e,t){return Y({kind:`DropTableNode`,table:this.transformNode(e.table,t),ifExists:e.ifExists,cascade:e.cascade})}transformOrderBy(e,t){return Y({kind:`OrderByNode`,items:this.transformNodeList(e.items,t)})}transformOrderByItem(e,t){return Y({kind:`OrderByItemNode`,orderBy:this.transformNode(e.orderBy,t),direction:this.transformNode(e.direction,t),collation:this.transformNode(e.collation,t),nulls:e.nulls})}transformGroupBy(e,t){return Y({kind:`GroupByNode`,items:this.transformNodeList(e.items,t)})}transformGroupByItem(e,t){return Y({kind:`GroupByItemNode`,groupBy:this.transformNode(e.groupBy,t)})}transformUpdateQuery(e,t){return Y({kind:`UpdateQueryNode`,table:this.transformNode(e.table,t),from:this.transformNode(e.from,t),joins:this.transformNodeList(e.joins,t),where:this.transformNode(e.where,t),updates:this.transformNodeList(e.updates,t),returning:this.transformNode(e.returning,t),endModifiers:this.transformNodeList(e.endModifiers,t),with:this.transformNode(e.with,t),explain:this.transformNode(e.explain,t),limit:this.transformNode(e.limit,t),top:this.transformNode(e.top,t),output:this.transformNode(e.output,t),orderBy:this.transformNode(e.orderBy,t)})}transformColumnUpdate(e,t){return Y({kind:`ColumnUpdateNode`,column:this.transformNode(e.column,t),value:this.transformNode(e.value,t)})}transformLimit(e,t){return Y({kind:`LimitNode`,limit:this.transformNode(e.limit,t)})}transformOffset(e,t){return Y({kind:`OffsetNode`,offset:this.transformNode(e.offset,t)})}transformOnConflict(e,t){return Y({kind:`OnConflictNode`,columns:this.transformNodeList(e.columns,t),constraint:this.transformNode(e.constraint,t),indexExpression:this.transformNode(e.indexExpression,t),indexWhere:this.transformNode(e.indexWhere,t),updates:this.transformNodeList(e.updates,t),updateWhere:this.transformNode(e.updateWhere,t),doNothing:e.doNothing})}transformOnDuplicateKey(e,t){return Y({kind:`OnDuplicateKeyNode`,updates:this.transformNodeList(e.updates,t)})}transformCreateIndex(e,t){return Y({kind:`CreateIndexNode`,name:this.transformNode(e.name,t),table:this.transformNode(e.table,t),columns:this.transformNodeList(e.columns,t),unique:e.unique,using:this.transformNode(e.using,t),ifNotExists:e.ifNotExists,where:this.transformNode(e.where,t),nullsNotDistinct:e.nullsNotDistinct})}transformList(e,t){return Y({kind:`ListNode`,items:this.transformNodeList(e.items,t)})}transformDropIndex(e,t){return Y({kind:`DropIndexNode`,name:this.transformNode(e.name,t),table:this.transformNode(e.table,t),ifExists:e.ifExists,cascade:e.cascade})}transformPrimaryKeyConstraint(e,t){return Y({kind:`PrimaryKeyConstraintNode`,columns:this.transformNodeList(e.columns,t),name:this.transformNode(e.name,t),deferrable:e.deferrable,initiallyDeferred:e.initiallyDeferred})}transformUniqueConstraint(e,t){return Y({kind:`UniqueConstraintNode`,columns:this.transformNodeList(e.columns,t),name:this.transformNode(e.name,t),nullsNotDistinct:e.nullsNotDistinct,deferrable:e.deferrable,initiallyDeferred:e.initiallyDeferred})}transformForeignKeyConstraint(e,t){return Y({kind:`ForeignKeyConstraintNode`,columns:this.transformNodeList(e.columns,t),references:this.transformNode(e.references,t),name:this.transformNode(e.name,t),onDelete:e.onDelete,onUpdate:e.onUpdate,deferrable:e.deferrable,initiallyDeferred:e.initiallyDeferred})}transformSetOperation(e,t){return Y({kind:`SetOperationNode`,operator:e.operator,expression:this.transformNode(e.expression,t),all:e.all})}transformReferences(e,t){return Y({kind:`ReferencesNode`,table:this.transformNode(e.table,t),columns:this.transformNodeList(e.columns,t),onDelete:e.onDelete,onUpdate:e.onUpdate})}transformCheckConstraint(e,t){return Y({kind:`CheckConstraintNode`,expression:this.transformNode(e.expression,t),name:this.transformNode(e.name,t)})}transformWith(e,t){return Y({kind:`WithNode`,expressions:this.transformNodeList(e.expressions,t),recursive:e.recursive})}transformCommonTableExpression(e,t){return Y({kind:`CommonTableExpressionNode`,name:this.transformNode(e.name,t),materialized:e.materialized,expression:this.transformNode(e.expression,t)})}transformCommonTableExpressionName(e,t){return Y({kind:`CommonTableExpressionNameNode`,table:this.transformNode(e.table,t),columns:this.transformNodeList(e.columns,t)})}transformHaving(e,t){return Y({kind:`HavingNode`,having:this.transformNode(e.having,t)})}transformCreateSchema(e,t){return Y({kind:`CreateSchemaNode`,schema:this.transformNode(e.schema,t),ifNotExists:e.ifNotExists})}transformDropSchema(e,t){return Y({kind:`DropSchemaNode`,schema:this.transformNode(e.schema,t),ifExists:e.ifExists,cascade:e.cascade})}transformAlterTable(e,t){return Y({kind:`AlterTableNode`,table:this.transformNode(e.table,t),renameTo:this.transformNode(e.renameTo,t),setSchema:this.transformNode(e.setSchema,t),columnAlterations:this.transformNodeList(e.columnAlterations,t),addConstraint:this.transformNode(e.addConstraint,t),dropConstraint:this.transformNode(e.dropConstraint,t),renameConstraint:this.transformNode(e.renameConstraint,t),addIndex:this.transformNode(e.addIndex,t),dropIndex:this.transformNode(e.dropIndex,t)})}transformDropColumn(e,t){return Y({kind:`DropColumnNode`,column:this.transformNode(e.column,t)})}transformRenameColumn(e,t){return Y({kind:`RenameColumnNode`,column:this.transformNode(e.column,t),renameTo:this.transformNode(e.renameTo,t)})}transformAlterColumn(e,t){return Y({kind:`AlterColumnNode`,column:this.transformNode(e.column,t),dataType:this.transformNode(e.dataType,t),dataTypeExpression:this.transformNode(e.dataTypeExpression,t),setDefault:this.transformNode(e.setDefault,t),dropDefault:e.dropDefault,setNotNull:e.setNotNull,dropNotNull:e.dropNotNull})}transformModifyColumn(e,t){return Y({kind:`ModifyColumnNode`,column:this.transformNode(e.column,t)})}transformAddConstraint(e,t){return Y({kind:`AddConstraintNode`,constraint:this.transformNode(e.constraint,t)})}transformDropConstraint(e,t){return Y({kind:`DropConstraintNode`,constraintName:this.transformNode(e.constraintName,t),ifExists:e.ifExists,modifier:e.modifier})}transformRenameConstraint(e,t){return Y({kind:`RenameConstraintNode`,oldName:this.transformNode(e.oldName,t),newName:this.transformNode(e.newName,t)})}transformCreateView(e,t){return Y({kind:`CreateViewNode`,name:this.transformNode(e.name,t),temporary:e.temporary,orReplace:e.orReplace,ifNotExists:e.ifNotExists,materialized:e.materialized,columns:this.transformNodeList(e.columns,t),as:this.transformNode(e.as,t)})}transformRefreshMaterializedView(e,t){return Y({kind:`RefreshMaterializedViewNode`,name:this.transformNode(e.name,t),concurrently:e.concurrently,withNoData:e.withNoData})}transformDropView(e,t){return Y({kind:`DropViewNode`,name:this.transformNode(e.name,t),ifExists:e.ifExists,materialized:e.materialized,cascade:e.cascade})}transformGenerated(e,t){return Y({kind:`GeneratedNode`,byDefault:e.byDefault,always:e.always,identity:e.identity,stored:e.stored,expression:this.transformNode(e.expression,t)})}transformDefaultValue(e,t){return Y({kind:`DefaultValueNode`,defaultValue:this.transformNode(e.defaultValue,t)})}transformOn(e,t){return Y({kind:`OnNode`,on:this.transformNode(e.on,t)})}transformSelectModifier(e,t){return Y({kind:`SelectModifierNode`,modifier:e.modifier,rawModifier:this.transformNode(e.rawModifier,t),of:this.transformNodeList(e.of,t)})}transformCreateType(e,t){return Y({kind:`CreateTypeNode`,name:this.transformNode(e.name,t),enum:this.transformNode(e.enum,t)})}transformDropType(e,t){return Y({kind:`DropTypeNode`,name:this.transformNode(e.name,t),ifExists:e.ifExists})}transformExplain(e,t){return Y({kind:`ExplainNode`,format:e.format,options:this.transformNode(e.options,t)})}transformSchemableIdentifier(e,t){return Y({kind:`SchemableIdentifierNode`,schema:this.transformNode(e.schema,t),identifier:this.transformNode(e.identifier,t)})}transformAggregateFunction(e,t){return Y({kind:`AggregateFunctionNode`,func:e.func,aggregated:this.transformNodeList(e.aggregated,t),distinct:e.distinct,orderBy:this.transformNode(e.orderBy,t),withinGroup:this.transformNode(e.withinGroup,t),filter:this.transformNode(e.filter,t),over:this.transformNode(e.over,t)})}transformOver(e,t){return Y({kind:`OverNode`,orderBy:this.transformNode(e.orderBy,t),partitionBy:this.transformNode(e.partitionBy,t)})}transformPartitionBy(e,t){return Y({kind:`PartitionByNode`,items:this.transformNodeList(e.items,t)})}transformPartitionByItem(e,t){return Y({kind:`PartitionByItemNode`,partitionBy:this.transformNode(e.partitionBy,t)})}transformBinaryOperation(e,t){return Y({kind:`BinaryOperationNode`,leftOperand:this.transformNode(e.leftOperand,t),operator:this.transformNode(e.operator,t),rightOperand:this.transformNode(e.rightOperand,t)})}transformUnaryOperation(e,t){return Y({kind:`UnaryOperationNode`,operator:this.transformNode(e.operator,t),operand:this.transformNode(e.operand,t)})}transformUsing(e,t){return Y({kind:`UsingNode`,tables:this.transformNodeList(e.tables,t)})}transformFunction(e,t){return Y({kind:`FunctionNode`,func:e.func,arguments:this.transformNodeList(e.arguments,t)})}transformCase(e,t){return Y({kind:`CaseNode`,value:this.transformNode(e.value,t),when:this.transformNodeList(e.when,t),else:this.transformNode(e.else,t),isStatement:e.isStatement})}transformWhen(e,t){return Y({kind:`WhenNode`,condition:this.transformNode(e.condition,t),result:this.transformNode(e.result,t)})}transformJSONReference(e,t){return Y({kind:`JSONReferenceNode`,reference:this.transformNode(e.reference,t),traversal:this.transformNode(e.traversal,t)})}transformJSONPath(e,t){return Y({kind:`JSONPathNode`,inOperator:this.transformNode(e.inOperator,t),pathLegs:this.transformNodeList(e.pathLegs,t)})}transformJSONPathLeg(e,t){return Y({kind:`JSONPathLegNode`,type:e.type,value:e.value})}transformJSONOperatorChain(e,t){return Y({kind:`JSONOperatorChainNode`,operator:this.transformNode(e.operator,t),values:this.transformNodeList(e.values,t)})}transformTuple(e,t){return Y({kind:`TupleNode`,values:this.transformNodeList(e.values,t)})}transformMergeQuery(e,t){return Y({kind:`MergeQueryNode`,into:this.transformNode(e.into,t),using:this.transformNode(e.using,t),whens:this.transformNodeList(e.whens,t),with:this.transformNode(e.with,t),top:this.transformNode(e.top,t),endModifiers:this.transformNodeList(e.endModifiers,t),output:this.transformNode(e.output,t),returning:this.transformNode(e.returning,t)})}transformMatched(e,t){return Y({kind:`MatchedNode`,not:e.not,bySource:e.bySource})}transformAddIndex(e,t){return Y({kind:`AddIndexNode`,name:this.transformNode(e.name,t),columns:this.transformNodeList(e.columns,t),unique:e.unique,using:this.transformNode(e.using,t),ifNotExists:e.ifNotExists})}transformCast(e,t){return Y({kind:`CastNode`,expression:this.transformNode(e.expression,t),dataType:this.transformNode(e.dataType,t)})}transformFetch(e,t){return Y({kind:`FetchNode`,rowCount:this.transformNode(e.rowCount,t),modifier:e.modifier})}transformTop(e,t){return Y({kind:`TopNode`,expression:e.expression,modifiers:e.modifiers})}transformOutput(e,t){return Y({kind:`OutputNode`,selections:this.transformNodeList(e.selections,t)})}transformDataType(e,t){return e}transformSelectAll(e,t){return e}transformIdentifier(e,t){return e}transformValue(e,t){return e}transformPrimitiveValueList(e,t){return e}transformOperator(e,t){return e}transformDefaultInsertValue(e,t){return e}transformOrAction(e,t){return e}transformCollate(e,t){return e}},Od=k({AlterTableNode:!0,CreateIndexNode:!0,CreateSchemaNode:!0,CreateTableNode:!0,CreateTypeNode:!0,CreateViewNode:!0,RefreshMaterializedViewNode:!0,DeleteQueryNode:!0,DropIndexNode:!0,DropSchemaNode:!0,DropTableNode:!0,DropTypeNode:!0,DropViewNode:!0,InsertQueryNode:!0,RawNode:!0,SelectQueryNode:!0,UpdateQueryNode:!0,MergeQueryNode:!0}),kd={json_agg:!0,to_json:!0},Ad=class extends Dd{#e;#t=new Set;#n=new Set;constructor(e){super(),this.#e=e}transformNodeImpl(e,t){if(!this.#i(e))return super.transformNodeImpl(e,t);let n=this.#o(e);for(let e of n)this.#n.add(e);let r=this.#a(e);for(let e of r)this.#t.add(e);let i=super.transformNodeImpl(e,t);for(let e of r)this.#t.delete(e);for(let e of n)this.#n.delete(e);return i}transformSchemableIdentifier(e,t){let n=super.transformSchemableIdentifier(e,t);return n.schema||!this.#t.has(e.identifier.name)?n:{...n,schema:M.create(this.#e)}}transformReferences(e,t){let n=super.transformReferences(e,t);return n.table.table.schema?n:{...n,table:hl.createWithSchema(this.#e,n.table.table.identifier.name)}}transformAggregateFunction(e,t){return{...super.transformAggregateFunction({...e,aggregated:[]},t),aggregated:this.#r(e,t,`aggregated`)}}transformFunction(e,t){return{...super.transformFunction({...e,arguments:[]},t),arguments:this.#r(e,t,`arguments`)}}transformSelectModifier(e,t){return{...super.transformSelectModifier({...e,of:void 0},t),of:e.of?.map(e=>hl.is(e)&&!e.table.schema?{...e,table:this.transformIdentifier(e.table.identifier,t)}:this.transformNode(e,t))}}#r(e,t,n){return kd[e.func]?e[n].map(e=>!hl.is(e)||e.table.schema?this.transformNode(e,t):{...e,table:this.transformIdentifier(e.table.identifier,t)}):this.transformNodeList(e[n],t)}#i(e){return e.kind in Od}#a(e){let t=new Set;if(`name`in e&&e.name&&ul.is(e.name)&&this.#c(e.name,t),`from`in e&&e.from)for(let n of e.from.froms)this.#s(n,t);if(`into`in e&&e.into&&this.#s(e.into,t),`table`in e&&e.table&&this.#s(e.table,t),`joins`in e&&e.joins)for(let n of e.joins)this.#s(n.table,t);return`using`in e&&e.using&&(Sl.is(e.using)?this.#s(e.using.table,t):this.#s(e.using,t)),t}#o(e){let t=new Set;return`with`in e&&e.with&&this.#l(e.with,t),t}#s(e,t){if(hl.is(e))return this.#c(e.table,t);if(ml.is(e)&&hl.is(e.node))return this.#c(e.node.table,t);if(Du.is(e)){for(let n of e.items)this.#s(n,t);return}if(ku.is(e)){for(let n of e.tables)this.#s(n,t);return}}#c(e,t){let n=e.identifier.name;!this.#t.has(n)&&!this.#n.has(n)&&t.add(n)}#l(e,t){for(let n of e.expressions){let e=n.name.table.table.identifier.name;this.#n.has(e)||t.add(e)}}},jd=class{#e;constructor(e){this.#e=new Ad(e)}transformQuery(e){return this.#e.transformNode(e.node,e.queryId)}async transformResult(e){return e.result}},Md=k({is(e){return e.kind===`MatchedNode`},create(e,t=!1){return k({kind:`MatchedNode`,not:e,bySource:t})}});function Nd(e,t,n){return Nu.create(gu([Md.create(!e.isMatched,e.bySource),...t&&t.length>0?[t.length===3&&n?mu(t[0],t[1],t[2]):z(t)]:[]],`and`,!1))}function Pd(e){return D(e)?I.create([e],[]):P(e)?e.toOperationNode():e}var Fd=class{#e;#t;#n;constructor(){this.#e=new Promise((e,t)=>{this.#n=t,this.#t=e})}get promise(){return this.#e}resolve=e=>{this.#t&&this.#t(e)};reject=e=>{this.#n&&this.#n(e)}};async function Id(e){let t=new Fd,n=new Fd;return e.provideConnection(async e=>(t.resolve(e),await n.promise)).catch(e=>t.reject(e)),k({connection:await t.promise,release:n.resolve})}var Ld=k([]),Rd=class{#e;constructor(e=Ld){this.#e=e}get plugins(){return this.#e}transformQuery(e,t){for(let n of this.#e){let r=n.transformQuery({node:e,queryId:t});if(r.kind===e.kind)e=r;else throw Error([`KyselyPlugin.transformQuery must return a node`,`of the same kind that was given to it.`,`The plugin was given a ${e.kind}`,`but it returned a ${r.kind}`].join(` `))}return e}async executeQuery(e){return await this.provideConnection(async t=>{let n=await t.executeQuery(e);return`numUpdatedOrDeletedRows`in n&&Bl("kysely:warning: outdated driver/plugin detected! `QueryResult.numUpdatedOrDeletedRows` has been replaced with `QueryResult.numAffectedRows`."),await this.#t(n,e.queryId)})}async*stream(e,t){let{connection:n,release:r}=await Id(this);try{for await(let r of n.streamQuery(e,t))yield await this.#t(r,e.queryId)}finally{r()}}async#t(e,t){for(let n of this.#e)e=await n.transformResult({result:e,queryId:t});return e}},zd=new class e extends Rd{get adapter(){throw Error(`this query cannot be compiled to SQL`)}compileQuery(){throw Error(`this query cannot be compiled to SQL`)}provideConnection(){throw Error(`this query cannot be executed`)}withConnectionProvider(){throw Error(`this query cannot have a connection provider`)}withPlugin(t){return new e([...this.plugins,t])}withPlugins(t){return new e([...this.plugins,...t])}withPluginAtFront(t){return new e([t,...this.plugins])}withoutPlugins(){return new e([])}},Bd=class{numChangedRows;constructor(e){this.numChangedRows=e}},Vd=class e{#e;constructor(e){this.#e=k(e)}modifyEnd(t){return new e({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,t.toOperationNode())})}top(t,n){return new e({...this.#e,queryNode:H.cloneWithTop(this.#e.queryNode,sd(t,n))})}using(...e){return new Hd({...this.#e,queryNode:Pu.cloneWithUsing(this.#e.queryNode,Yd(`Using`,e))})}returning(t){return new e({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,W(t))})}returningAll(t){return new e({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,Hu(t))})}output(t){return new e({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,W(t))})}outputAll(t){return new e({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,Hu(t))})}},Hd=class e{#e;constructor(e){this.#e=k(e)}modifyEnd(t){return new e({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,t.toOperationNode())})}top(t,n){return new e({...this.#e,queryNode:H.cloneWithTop(this.#e.queryNode,sd(t,n))})}whenMatched(){return this.#t([])}whenMatchedAnd(...e){return this.#t(e)}whenMatchedAndRef(e,t,n){return this.#t([e,t,n],!0)}#t(e,t){return new Ud({...this.#e,queryNode:Pu.cloneWithWhen(this.#e.queryNode,Nd({isMatched:!0},e,t))})}whenNotMatched(){return this.#n([])}whenNotMatchedAnd(...e){return this.#n(e)}whenNotMatchedAndRef(e,t,n){return this.#n([e,t,n],!0)}whenNotMatchedBySource(){return this.#n([],!1,!0)}whenNotMatchedBySourceAnd(...e){return this.#n(e,!1,!0)}whenNotMatchedBySourceAndRef(e,t,n){return this.#n([e,t,n],!0,!0)}returning(t){return new e({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,W(t))})}returningAll(t){return new e({...this.#e,queryNode:H.cloneWithReturning(this.#e.queryNode,Hu(t))})}output(t){return new e({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,W(t))})}outputAll(t){return new e({...this.#e,queryNode:H.cloneWithOutput(this.#e.queryNode,Hu(t))})}#n(e,t=!1,n=!1){let r={...this.#e,queryNode:Pu.cloneWithWhen(this.#e.queryNode,Nd({isMatched:!1,bySource:n},e,t))};return new(n?Ud:Wd)(r)}$call(e){return e(this)}$if(t,n){return t?n(this):new e({...this.#e})}toOperationNode(){return this.#e.executor.transformQuery(this.#e.queryNode,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){let e=this.compile(),t=await this.#e.executor.executeQuery(e),{adapter:n}=this.#e.executor,r=e.query;return r.returning&&n.supportsReturning||r.output&&n.supportsOutput?t.rows:[new Bd(t.numAffectedRows)]}async executeTakeFirst(){let[e]=await this.execute();return e}async executeTakeFirstOrThrow(e=td){let t=await this.executeTakeFirst();if(t===void 0)throw nd(e)?new e(this.toOperationNode()):e(this.toOperationNode());return t}},Ud=class{#e;constructor(e){this.#e=k(e)}thenDelete(){return new Hd({...this.#e,queryNode:Pu.cloneWithThen(this.#e.queryNode,Pd(`delete`))})}thenDoNothing(){return new Hd({...this.#e,queryNode:Pu.cloneWithThen(this.#e.queryNode,Pd(`do nothing`))})}thenUpdate(e){return new Hd({...this.#e,queryNode:Pu.cloneWithThen(this.#e.queryNode,Pd(e(new hd({queryId:this.#e.queryId,executor:zd,queryNode:Ou.createWithoutTable()}))))})}thenUpdateSet(...e){return this.thenUpdate(t=>t.set(...e))}},Wd=class{#e;constructor(e){this.#e=k(e)}thenDoNothing(){return new Hd({...this.#e,queryNode:Pu.cloneWithThen(this.#e.queryNode,Pd(`do nothing`))})}thenInsertValues(e){let[t,n]=Ku(e);return new Hd({...this.#e,queryNode:Pu.cloneWithThen(this.#e.queryNode,Pd(B.cloneWith(B.createWithoutInto(),{columns:t,values:n})))})}},Gd=class e{#e;constructor(e){this.#e=k(e)}selectFrom(e){return ff({queryId:J(),executor:this.#e.executor,queryNode:U.createFrom(Gf(e),this.#e.withNode)})}selectNoFrom(e){return ff({queryId:J(),executor:this.#e.executor,queryNode:U.cloneWithSelections(U.create(this.#e.withNode),W(e))})}insertInto(e){return new ud({queryId:J(),executor:this.#e.executor,queryNode:B.create(Q(e),this.#e.withNode)})}replaceInto(e){return new ud({queryId:J(),executor:this.#e.executor,queryNode:B.create(Q(e),this.#e.withNode,!0)})}deleteFrom(e){return new pd({queryId:J(),executor:this.#e.executor,queryNode:Au.create(Gf(e),this.#e.withNode)})}updateTable(e){return new hd({queryId:J(),executor:this.#e.executor,queryNode:Ou.create(Gf(e),this.#e.withNode)})}mergeInto(e){return new Vd({queryId:J(),executor:this.#e.executor,queryNode:Pu.create(qf(e),this.#e.withNode)})}with(t,n){let r=yd(t,n);return new e({...this.#e,withNode:this.#e.withNode?Sd.cloneWithExpression(this.#e.withNode,r):Sd.create(r)})}withRecursive(t,n){let r=yd(t,n);return new e({...this.#e,withNode:this.#e.withNode?Sd.cloneWithExpression(this.#e.withNode,r):Sd.create(r,{recursive:!0})})}withPlugin(t){return new e({...this.#e,executor:this.#e.executor.withPlugin(t)})}withoutPlugins(){return new e({...this.#e,executor:this.#e.executor.withoutPlugins()})}withSchema(t){return new e({...this.#e,executor:this.#e.executor.withPluginAtFront(new jd(t))})}};function Kd(){return new Gd({executor:zd})}function qd(e,t){return new Iu({joinNode:Sl.create(e,Kf(t))})}function Jd(){return new zu({overNode:Cu.create()})}function Yd(e,t){if(t.length===3)return Zd(e,t[0],t[1],t[2]);if(t.length===2)return Xd(e,t[0],t[1]);if(t.length===1)return Qd(e,t[0]);throw Error(`not implemented`)}function Xd(e,t,n){return n(qd(e,t)).toOperationNode()}function Zd(e,t,n,r){return Sl.createWithOn(e,Kf(t),mu(n,`=`,r))}function Qd(e,t){return Sl.create(e,Kf(t))}var $d=k({is(e){return e.kind===`OffsetNode`},create(e){return k({kind:`OffsetNode`,offset:e})}}),ef=k({is(e){return e.kind===`GroupByItemNode`},create(e){return k({kind:`GroupByItemNode`,groupBy:e})}});function tf(e){return e=O(e)?e(Rf()):e,Xl(e).map(ef.create)}var nf=k({is(e){return e.kind===`SetOperationNode`},create(e,t,n){return k({kind:`SetOperationNode`,operator:e,expression:t,all:n})}});function rf(e,t,n){return O(t)&&(t=t(Lf())),ol(t)||(t=[t]),t.map(t=>nf.create(e,zf(t),n))}var X=class e{#e;constructor(e){this.#e=e}get expressionType(){}as(e){return new af(this,e)}or(...e){return new of(bl.create(this.#e,z(e)))}and(...e){return new sf(yl.create(this.#e,z(e)))}$castTo(){return new e(this.#e)}$notNull(){return new e(this.#e)}toOperationNode(){return this.#e}},af=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}get expression(){return this.#e}get alias(){return this.#t}toOperationNode(){return ml.create(this.#e.toOperationNode(),P(this.#t)?this.#t.toOperationNode():M.create(this.#t))}},of=class e{#e;constructor(e){this.#e=e}get expressionType(){}as(e){return new af(this,e)}or(...t){return new e(bl.create(this.#e,z(t)))}$castTo(){return new e(this.#e)}toOperationNode(){return fu.create(this.#e)}},sf=class e{#e;constructor(e){this.#e=e}get expressionType(){}as(e){return new af(this,e)}and(...t){return new e(yl.create(this.#e,z(t)))}$castTo(){return new e(this.#e)}toOperationNode(){return fu.create(this.#e)}},cf=k({is(e){return e.kind===`FetchNode`},create(e,t){return{kind:`FetchNode`,rowCount:su.create(e),modifier:t}}});function lf(e,t){if(!$c(e)&&!rl(e))throw Error(`Invalid fetch row count: ${e}`);if(!uf(t))throw Error(`Invalid fetch modifier: ${t}`);return cf.create(e,t)}function uf(e){return e===`only`||e===`with ties`}var Z,df=class{#e;constructor(e){this.#e=k(e)}get expressionType(){}get isSelectQueryBuilder(){return!0}where(...e){return new Z({...this.#e,queryNode:H.cloneWithWhere(this.#e.queryNode,z(e))})}whereRef(e,t,n){return new Z({...this.#e,queryNode:H.cloneWithWhere(this.#e.queryNode,mu(e,t,n))})}having(...e){return new Z({...this.#e,queryNode:U.cloneWithHaving(this.#e.queryNode,z(e))})}havingRef(e,t,n){return new Z({...this.#e,queryNode:U.cloneWithHaving(this.#e.queryNode,mu(e,t,n))})}select(e){return new Z({...this.#e,queryNode:U.cloneWithSelections(this.#e.queryNode,W(e))})}distinctOn(e){return new Z({...this.#e,queryNode:U.cloneWithDistinctOn(this.#e.queryNode,Xl(e))})}modifyFront(e){return new Z({...this.#e,queryNode:U.cloneWithFrontModifier(this.#e.queryNode,vl.createWithExpression(e.toOperationNode()))})}modifyEnd(e){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.createWithExpression(e.toOperationNode()))})}distinct(){return new Z({...this.#e,queryNode:U.cloneWithFrontModifier(this.#e.queryNode,vl.create(`Distinct`))})}forUpdate(e){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.create(`ForUpdate`,e?al(e).map(Q):void 0))})}forShare(e){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.create(`ForShare`,e?al(e).map(Q):void 0))})}forKeyShare(e){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.create(`ForKeyShare`,e?al(e).map(Q):void 0))})}forNoKeyUpdate(e){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.create(`ForNoKeyUpdate`,e?al(e).map(Q):void 0))})}skipLocked(){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.create(`SkipLocked`))})}noWait(){return new Z({...this.#e,queryNode:H.cloneWithEndModifier(this.#e.queryNode,vl.create(`NoWait`))})}selectAll(e){return new Z({...this.#e,queryNode:U.cloneWithSelections(this.#e.queryNode,Hu(e))})}innerJoin(...e){return this.#t(`InnerJoin`,e)}leftJoin(...e){return this.#t(`LeftJoin`,e)}rightJoin(...e){return this.#t(`RightJoin`,e)}fullJoin(...e){return this.#t(`FullJoin`,e)}crossJoin(...e){return this.#t(`CrossJoin`,e)}innerJoinLateral(...e){return this.#t(`LateralInnerJoin`,e)}leftJoinLateral(...e){return this.#t(`LateralLeftJoin`,e)}crossJoinLateral(...e){return this.#t(`LateralCrossJoin`,e)}crossApply(...e){return this.#t(`CrossApply`,e)}outerApply(...e){return this.#t(`OuterApply`,e)}#t(e,t){return new Z({...this.#e,queryNode:H.cloneWithJoin(this.#e.queryNode,Yd(e,t))})}orderBy(...e){return new Z({...this.#e,queryNode:H.cloneWithOrderByItems(this.#e.queryNode,Hl(e))})}groupBy(e){return new Z({...this.#e,queryNode:U.cloneWithGroupByItems(this.#e.queryNode,tf(e))})}limit(e){return new Z({...this.#e,queryNode:U.cloneWithLimit(this.#e.queryNode,fd.create(R(e)))})}offset(e){return new Z({...this.#e,queryNode:U.cloneWithOffset(this.#e.queryNode,$d.create(R(e)))})}fetch(e,t=`only`){return new Z({...this.#e,queryNode:U.cloneWithFetch(this.#e.queryNode,lf(e,t))})}top(e,t){return new Z({...this.#e,queryNode:H.cloneWithTop(this.#e.queryNode,sd(e,t))})}union(e){return new Z({...this.#e,queryNode:U.cloneWithSetOperations(this.#e.queryNode,rf(`union`,e,!1))})}unionAll(e){return new Z({...this.#e,queryNode:U.cloneWithSetOperations(this.#e.queryNode,rf(`union`,e,!0))})}intersect(e){return new Z({...this.#e,queryNode:U.cloneWithSetOperations(this.#e.queryNode,rf(`intersect`,e,!1))})}intersectAll(e){return new Z({...this.#e,queryNode:U.cloneWithSetOperations(this.#e.queryNode,rf(`intersect`,e,!0))})}except(e){return new Z({...this.#e,queryNode:U.cloneWithSetOperations(this.#e.queryNode,rf(`except`,e,!1))})}exceptAll(e){return new Z({...this.#e,queryNode:U.cloneWithSetOperations(this.#e.queryNode,rf(`except`,e,!0))})}as(e){return new pf(this,e)}clearSelect(){return new Z({...this.#e,queryNode:U.cloneWithoutSelections(this.#e.queryNode)})}clearWhere(){return new Z({...this.#e,queryNode:H.cloneWithoutWhere(this.#e.queryNode)})}clearLimit(){return new Z({...this.#e,queryNode:U.cloneWithoutLimit(this.#e.queryNode)})}clearOffset(){return new Z({...this.#e,queryNode:U.cloneWithoutOffset(this.#e.queryNode)})}clearOrderBy(){return new Z({...this.#e,queryNode:H.cloneWithoutOrderBy(this.#e.queryNode)})}clearGroupBy(){return new Z({...this.#e,queryNode:U.cloneWithoutGroupBy(this.#e.queryNode)})}$call(e){return e(this)}$if(e,t){return e?t(this):new Z({...this.#e})}$castTo(){return new Z(this.#e)}$narrowType(){return new Z(this.#e)}$assertType(){return new Z(this.#e)}$asTuple(){return new X(this.toOperationNode())}$asScalar(){return new X(this.toOperationNode())}withPlugin(e){return new Z({...this.#e,executor:this.#e.executor.withPlugin(e)})}toOperationNode(){return this.#e.executor.transformQuery(this.#e.queryNode,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){let e=this.compile();return(await this.#e.executor.executeQuery(e)).rows}async executeTakeFirst(){let[e]=await this.execute();return e}async executeTakeFirstOrThrow(e=td){let t=await this.executeTakeFirst();if(t===void 0)throw nd(e)?new e(this.toOperationNode()):e(this.toOperationNode());return t}async*stream(e=100){let t=this.compile(),n=this.#e.executor.stream(t,e);for await(let e of n)yield*e.rows}async explain(e,t){return await new Z({...this.#e,queryNode:H.cloneWithExplain(this.#e.queryNode,e,t)}).execute()}};Z=df;function ff(e){return new df(e)}var pf=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}get expression(){return this.#e}get alias(){return this.#t}get isAliasedSelectQueryBuilder(){return!0}toOperationNode(){return ml.create(this.#e.toOperationNode(),M.create(this.#t))}},mf=k({is(e){return e.kind===`AggregateFunctionNode`},create(e,t=[]){return k({kind:`AggregateFunctionNode`,func:e,aggregated:t})},cloneWithDistinct(e){return k({...e,distinct:!0})},cloneWithOrderBy(e,t,n=!1){let r=n?`withinGroup`:`orderBy`;return k({...e,[r]:e[r]?xu.cloneWithItems(e[r],t):xu.create(t)})},cloneWithFilter(e,t){return k({...e,filter:e.filter?V.cloneWithOperation(e.filter,`And`,t):V.create(t)})},cloneWithOrFilter(e,t){return k({...e,filter:e.filter?V.cloneWithOperation(e.filter,`Or`,t):V.create(t)})},cloneWithOver(e,t){return k({...e,over:t})}}),hf=k({is(e){return e.kind===`FunctionNode`},create(e,t){return k({kind:`FunctionNode`,func:e,arguments:t})}}),gf=class e{#e;constructor(e){this.#e=k(e)}get expressionType(){}as(e){return new _f(this,e)}distinct(){return new e({...this.#e,aggregateFunctionNode:mf.cloneWithDistinct(this.#e.aggregateFunctionNode)})}orderBy(...t){return new e({...this.#e,aggregateFunctionNode:H.cloneWithOrderByItems(this.#e.aggregateFunctionNode,Hl(t))})}clearOrderBy(){return new e({...this.#e,aggregateFunctionNode:H.cloneWithoutOrderBy(this.#e.aggregateFunctionNode)})}withinGroupOrderBy(...t){return new e({...this.#e,aggregateFunctionNode:mf.cloneWithOrderBy(this.#e.aggregateFunctionNode,Hl(t),!0)})}filterWhere(...t){return new e({...this.#e,aggregateFunctionNode:mf.cloneWithFilter(this.#e.aggregateFunctionNode,z(t))})}filterWhereRef(t,n,r){return new e({...this.#e,aggregateFunctionNode:mf.cloneWithFilter(this.#e.aggregateFunctionNode,mu(t,n,r))})}over(t){let n=Jd();return new e({...this.#e,aggregateFunctionNode:mf.cloneWithOver(this.#e.aggregateFunctionNode,(t?t(n):n).toOperationNode())})}$call(e){return e(this)}$castTo(){return new e(this.#e)}$notNull(){return new e(this.#e)}toOperationNode(){return this.#e.aggregateFunctionNode}},_f=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}get expression(){return this.#e}get alias(){return this.#t}toOperationNode(){return ml.create(this.#e.toOperationNode(),M.create(this.#t))}};function vf(){let e=(e,t)=>new X(hf.create(e,Xl(t??[]))),t=(e,t)=>new gf({aggregateFunctionNode:mf.create(e,t?Xl(t):void 0)});return Object.assign(e,{agg:t,avg(e){return t(`avg`,[e])},coalesce(...t){return e(`coalesce`,t)},count(e){return t(`count`,[e])},countAll(e){return new gf({aggregateFunctionNode:mf.create(`count`,Hu(e))})},max(e){return t(`max`,[e])},min(e){return t(`min`,[e])},sum(e){return t(`sum`,[e])},any(t){return e(`any`,[t])},jsonAgg(e){return new gf({aggregateFunctionNode:mf.create(`json_agg`,[D(e)?Q(e):e.toOperationNode()])})},toJson(e){return new X(hf.create(`to_json`,[D(e)?Q(e):e.toOperationNode()]))}})}var yf=k({is(e){return e.kind===`UnaryOperationNode`},create(e,t){return k({kind:`UnaryOperationNode`,operator:e,operand:t})}});function bf(e,t){return yf.create(Al.create(e),L(t))}var xf=k({is(e){return e.kind===`CaseNode`},create(e){return k({kind:`CaseNode`,value:e})},cloneWithWhen(e,t){return k({...e,when:k(e.when?[...e.when,t]:[t])})},cloneWithThen(e,t){return k({...e,when:e.when?k([...e.when.slice(0,-1),Nu.cloneWithResult(e.when[e.when.length-1],t)]):void 0})},cloneWith(e,t){return k({...e,...t})}}),Sf=class{#e;constructor(e){this.#e=k(e)}when(...e){return new Cf({...this.#e,node:xf.cloneWithWhen(this.#e.node,Nu.create(z(e)))})}},Cf=class{#e;constructor(e){this.#e=k(e)}then(e){return new wf({...this.#e,node:xf.cloneWithThen(this.#e.node,lu(e)?uu(e):R(e))})}},wf=class{#e;constructor(e){this.#e=k(e)}when(...e){return new Cf({...this.#e,node:xf.cloneWithWhen(this.#e.node,Nu.create(z(e)))})}else(e){return new Tf({...this.#e,node:xf.cloneWith(this.#e.node,{else:lu(e)?uu(e):R(e)})})}end(){return new X(xf.cloneWith(this.#e.node,{isStatement:!1}))}endCase(){return new X(xf.cloneWith(this.#e.node,{isStatement:!0}))}},Tf=class{#e;constructor(e){this.#e=k(e)}end(){return new X(xf.cloneWith(this.#e.node,{isStatement:!1}))}endCase(){return new X(xf.cloneWith(this.#e.node,{isStatement:!0}))}},Ef=k({is(e){return e.kind===`JSONPathLegNode`},create(e,t){return k({kind:`JSONPathLegNode`,type:e,value:t})}}),Df=class{#e;constructor(e){this.#e=e}at(e){return this.#t(`ArrayLocation`,e)}key(e){return this.#t(`Member`,e)}#t(e,t){return Kl.is(this.#e)?new Of(Kl.cloneWithTraversal(this.#e,Jl.is(this.#e.traversal)?Jl.cloneWithLeg(this.#e.traversal,Ef.create(e,t)):ql.cloneWithValue(this.#e.traversal,su.createImmediate(t)))):new Of(Jl.cloneWithLeg(this.#e,Ef.create(e,t)))}},Of=class e extends Df{#e;constructor(e){super(e),this.#e=e}get expressionType(){}as(e){return new kf(this,e)}$castTo(){return new e(this.#e)}$notNull(){return new e(this.#e)}toOperationNode(){return this.#e}},kf=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}get expression(){return this.#e}get alias(){return this.#t}toOperationNode(){return ml.create(this.#e.toOperationNode(),P(this.#t)?this.#t.toOperationNode():M.create(this.#t))}},Af=k({is(e){return e.kind===`TupleNode`},create(e){return k({kind:`TupleNode`,values:k(e)})}}),jf=`varchar.char.text.integer.int2.int4.int8.smallint.bigint.boolean.real.double precision.float4.float8.decimal.numeric.binary.bytea.date.datetime.time.timetz.timestamp.timestamptz.serial.bigserial.uuid.json.jsonb.blob.varbinary.int4range.int4multirange.int8range.int8multirange.numrange.nummultirange.tsrange.tsmultirange.tstzrange.tstzmultirange.daterange.datemultirange`.split(`.`),Mf=[/^varchar\(\d+\)$/,/^char\(\d+\)$/,/^decimal\(\d+, \d+\)$/,/^numeric\(\d+, \d+\)$/,/^binary\(\d+\)$/,/^datetime\(\d+\)$/,/^time\(\d+\)$/,/^timetz\(\d+\)$/,/^timestamp\(\d+\)$/,/^timestamptz\(\d+\)$/,/^varbinary\(\d+\)$/],Nf=k({is(e){return e.kind===`DataTypeNode`},create(e){return k({kind:`DataTypeNode`,dataType:e})}});function Pf(e){return!!(jf.includes(e)||Mf.some(t=>t.test(e)))}function Ff(e){if(P(e))return e.toOperationNode();if(Pf(e))return Nf.create(e);throw Error(`invalid column data type ${JSON.stringify(e)}`)}var If=k({is(e){return e.kind===`CastNode`},create(e,t){return k({kind:`CastNode`,expression:e,dataType:t})}});function Lf(e=zd){function t(e,t,n){return new X(pu(e,t,n))}function n(e,t){return new X(bf(e,t))}let r=Object.assign(t,{fn:void 0,eb:void 0,selectFrom(t){return ff({queryId:J(),executor:e,queryNode:U.createFrom(Gf(t))})},case(e){return new Sf({node:xf.create(Qc(e)?void 0:L(e))})},ref(e,t){return Qc(t)?new X(Ql(e)):new Df(Zl(e,t))},jsonPath(){return new Df(Jl.create())},table(e){return new X(Q(e))},val(e){return new X(R(e))},refTuple(...e){return new X(Af.create(e.map(L)))},tuple(...e){return new X(Af.create(e.map(R)))},lit(e){return new X(uu(e))},unary:n,not(e){return n(`not`,e)},exists(e){return n(`exists`,e)},neg(e){return n(`-`,e)},between(e,t,n){return new X(Cl.create(L(e),Al.create(`between`),yl.create(R(t),R(n))))},betweenSymmetric(e,t,n){return new X(Cl.create(L(e),Al.create(`between symmetric`),yl.create(R(t),R(n))))},and(e){return ol(e)?new X(gu(e,`and`)):new X(hu(e,`and`))},or(e){return ol(e)?new X(gu(e,`or`)):new X(hu(e,`or`))},parens(...e){let t=z(e);return fu.is(t)?new X(t):new X(fu.create(t))},cast(e,t){return new X(If.create(L(e),Ff(t)))},withSchema(t){return Lf(e.withPluginAtFront(new jd(t)))}});return r.fn=vf(),r.eb=r,r}function Rf(e){return Lf()}function zf(e){if(P(e))return e.toOperationNode();if(O(e))return e(Rf()).toOperationNode();throw Error(`invalid expression: ${JSON.stringify(e)}`)}function Bf(e){if(P(e))return e.toOperationNode();if(O(e))return e(Rf()).toOperationNode();throw Error(`invalid aliased expression: ${JSON.stringify(e)}`)}function Vf(e){return gl(e)||_l(e)||O(e)}var Hf=class{#e;get table(){return this.#e}constructor(e){this.#e=e}as(e){return new Uf(this.#e,e)}},Uf=class{#e;#t;get table(){return this.#e}get alias(){return this.#t}constructor(e,t){this.#e=e,this.#t=t}toOperationNode(){return ml.create(Q(this.#e),M.create(this.#t))}};function Wf(e){return il(e)&&P(e)&&D(e.table)&&D(e.alias)}function Gf(e){return ol(e)?e.map(e=>Kf(e)):[Kf(e)]}function Kf(e){return D(e)?qf(e):Wf(e)?e.toOperationNode():Bf(e)}function qf(e){let t=` as `;if(e.includes(t)){let[n,r]=e.split(t).map(Jf);return ml.create(Q(n),M.create(r))}return Q(e)}function Q(e){if(e.includes(`.`)){let[t,n]=e.split(`.`).map(Jf);return hl.createWithSchema(t,n)}return hl.create(e)}function Jf(e){return e.trim()}var Yf=k({is(e){return e.kind===`AddColumnNode`},create(e){return k({kind:`AddColumnNode`,column:e})}}),$=k({is(e){return e.kind===`ColumnDefinitionNode`},create(e,t){return k({kind:`ColumnDefinitionNode`,column:F.create(e),dataType:t})},cloneWithFrontModifier(e,t){return k({...e,frontModifiers:e.frontModifiers?k([...e.frontModifiers,t]):[t]})},cloneWithEndModifier(e,t){return k({...e,endModifiers:e.endModifiers?k([...e.endModifiers,t]):[t]})},cloneWith(e,t){return k({...e,...t})}}),Xf=k({is(e){return e.kind===`DropColumnNode`},create(e){return k({kind:`DropColumnNode`,column:F.create(e)})}}),Zf=k({is(e){return e.kind===`RenameColumnNode`},create(e,t){return k({kind:`RenameColumnNode`,column:F.create(e),renameTo:F.create(t)})}}),Qf=k({is(e){return e.kind===`CheckConstraintNode`},create(e,t){return k({kind:`CheckConstraintNode`,expression:e,name:t?M.create(t):void 0})}}),$f=[`no action`,`restrict`,`cascade`,`set null`,`set default`],ep=k({is(e){return e.kind===`ReferencesNode`},create(e,t){return k({kind:`ReferencesNode`,table:e,columns:k([...t])})},cloneWithOnDelete(e,t){return k({...e,onDelete:t})},cloneWithOnUpdate(e,t){return k({...e,onUpdate:t})}});function tp(e){return P(e)?e.toOperationNode():su.createImmediate(e)}var np=k({is(e){return e.kind===`GeneratedNode`},create(e){return k({kind:`GeneratedNode`,...e})},createWithExpression(e){return k({kind:`GeneratedNode`,always:!0,expression:e})},cloneWith(e,t){return k({...e,...t})}}),rp=k({is(e){return e.kind===`DefaultValueNode`},create(e){return k({kind:`DefaultValueNode`,defaultValue:e})}});function ip(e){if($f.includes(e))return e;throw Error(`invalid OnModifyForeignAction ${e}`)}var ap=class e{#e;constructor(e){this.#e=e}autoIncrement(){return new e($.cloneWith(this.#e,{autoIncrement:!0}))}identity(){return new e($.cloneWith(this.#e,{identity:!0}))}primaryKey(){return new e($.cloneWith(this.#e,{primaryKey:!0}))}references(t){let n=Ql(t);if(!n.table||Ml.is(n.column))throw Error(`invalid call references('${t}'). The reference must have format table.column or schema.table.column`);return new e($.cloneWith(this.#e,{references:ep.create(n.table,[n.column])}))}onDelete(t){if(!this.#e.references)throw Error(`on delete constraint can only be added for foreign keys`);return new e($.cloneWith(this.#e,{references:ep.cloneWithOnDelete(this.#e.references,ip(t))}))}onUpdate(t){if(!this.#e.references)throw Error(`on update constraint can only be added for foreign keys`);return new e($.cloneWith(this.#e,{references:ep.cloneWithOnUpdate(this.#e.references,ip(t))}))}unique(){return new e($.cloneWith(this.#e,{unique:!0}))}notNull(){return new e($.cloneWith(this.#e,{notNull:!0}))}unsigned(){return new e($.cloneWith(this.#e,{unsigned:!0}))}defaultTo(t){return new e($.cloneWith(this.#e,{defaultTo:rp.create(tp(t))}))}check(t){return new e($.cloneWith(this.#e,{check:Qf.create(t.toOperationNode())}))}generatedAlwaysAs(t){return new e($.cloneWith(this.#e,{generated:np.createWithExpression(t.toOperationNode())}))}generatedAlwaysAsIdentity(){return new e($.cloneWith(this.#e,{generated:np.create({identity:!0,always:!0})}))}generatedByDefaultAsIdentity(){return new e($.cloneWith(this.#e,{generated:np.create({identity:!0,byDefault:!0})}))}stored(){if(!this.#e.generated)throw Error(`stored() can only be called after generatedAlwaysAs`);return new e($.cloneWith(this.#e,{generated:np.cloneWith(this.#e.generated,{stored:!0})}))}modifyFront(t){return new e($.cloneWithFrontModifier(this.#e,t.toOperationNode()))}nullsNotDistinct(){return new e($.cloneWith(this.#e,{nullsNotDistinct:!0}))}ifNotExists(){return new e($.cloneWith(this.#e,{ifNotExists:!0}))}modifyEnd(t){return new e($.cloneWithEndModifier(this.#e,t.toOperationNode()))}$call(e){return e(this)}toOperationNode(){return this.#e}},op=k({is(e){return e.kind===`ModifyColumnNode`},create(e){return k({kind:`ModifyColumnNode`,column:e})}}),sp=k({is(e){return e.kind===`ForeignKeyConstraintNode`},create(e,t,n,r){return k({kind:`ForeignKeyConstraintNode`,columns:e,references:ep.create(t,n),name:r?M.create(r):void 0})},cloneWith(e,t){return k({...e,...t})}}),cp=class e{#e;constructor(e){this.#e=e}onDelete(t){return new e(sp.cloneWith(this.#e,{onDelete:ip(t)}))}onUpdate(t){return new e(sp.cloneWith(this.#e,{onUpdate:ip(t)}))}deferrable(){return new e(sp.cloneWith(this.#e,{deferrable:!0}))}notDeferrable(){return new e(sp.cloneWith(this.#e,{deferrable:!1}))}initiallyDeferred(){return new e(sp.cloneWith(this.#e,{initiallyDeferred:!0}))}initiallyImmediate(){return new e(sp.cloneWith(this.#e,{initiallyDeferred:!1}))}$call(e){return e(this)}toOperationNode(){return this.#e}},lp=k({is(e){return e.kind===`AddConstraintNode`},create(e){return k({kind:`AddConstraintNode`,constraint:e})}}),up=k({is(e){return e.kind===`UniqueConstraintNode`},create(e,t,n){return k({kind:`UniqueConstraintNode`,columns:k(e.map(F.create)),name:t?M.create(t):void 0,nullsNotDistinct:n})},cloneWith(e,t){return k({...e,...t})}}),dp=k({is(e){return e.kind===`DropConstraintNode`},create(e){return k({kind:`DropConstraintNode`,constraintName:M.create(e)})},cloneWith(e,t){return k({...e,...t})}}),fp=k({is(e){return e.kind===`AlterColumnNode`},create(e,t,n){return k({kind:`AlterColumnNode`,column:F.create(e),[t]:n})}}),pp=class{#e;constructor(e){this.#e=e}setDataType(e){return new mp(fp.create(this.#e,`dataType`,Ff(e)))}setDefault(e){return new mp(fp.create(this.#e,`setDefault`,tp(e)))}dropDefault(){return new mp(fp.create(this.#e,`dropDefault`,!0))}setNotNull(){return new mp(fp.create(this.#e,`setNotNull`,!0))}dropNotNull(){return new mp(fp.create(this.#e,`dropNotNull`,!0))}$call(e){return e(this)}},mp=class{#e;constructor(e){this.#e=e}toOperationNode(){return this.#e}},hp=class{#e;constructor(e){this.#e=k(e)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},gp=class e{#e;constructor(e){this.#e=k(e)}onDelete(t){return new e({...this.#e,constraintBuilder:this.#e.constraintBuilder.onDelete(t)})}onUpdate(t){return new e({...this.#e,constraintBuilder:this.#e.constraintBuilder.onUpdate(t)})}deferrable(){return new e({...this.#e,constraintBuilder:this.#e.constraintBuilder.deferrable()})}notDeferrable(){return new e({...this.#e,constraintBuilder:this.#e.constraintBuilder.notDeferrable()})}initiallyDeferred(){return new e({...this.#e,constraintBuilder:this.#e.constraintBuilder.initiallyDeferred()})}initiallyImmediate(){return new e({...this.#e,constraintBuilder:this.#e.constraintBuilder.initiallyImmediate()})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(j.cloneWithTableProps(this.#e.node,{addConstraint:lp.create(this.#e.constraintBuilder.toOperationNode())}),this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},_p=class e{#e;constructor(e){this.#e=k(e)}ifExists(){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{dropConstraint:dp.cloneWith(this.#e.node.dropConstraint,{ifExists:!0})})})}cascade(){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{dropConstraint:dp.cloneWith(this.#e.node.dropConstraint,{modifier:`cascade`})})})}restrict(){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{dropConstraint:dp.cloneWith(this.#e.node.dropConstraint,{modifier:`restrict`})})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},vp=k({is(e){return e.kind===`PrimaryKeyConstraintNode`},create(e,t){return k({kind:`PrimaryKeyConstraintNode`,columns:k(e.map(F.create)),name:t?M.create(t):void 0})},cloneWith(e,t){return k({...e,...t})}}),yp=k({is(e){return e.kind===`AddIndexNode`},create(e){return k({kind:`AddIndexNode`,name:M.create(e)})},cloneWith(e,t){return k({...e,...t})},cloneWithColumns(e,t){return k({...e,columns:[...e.columns||[],...t]})}}),bp=class e{#e;constructor(e){this.#e=k(e)}unique(){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addIndex:yp.cloneWith(this.#e.node.addIndex,{unique:!0})})})}column(t){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addIndex:yp.cloneWithColumns(this.#e.node.addIndex,[tu(t)])})})}columns(t){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addIndex:yp.cloneWithColumns(this.#e.node.addIndex,t.map(tu))})})}expression(t){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addIndex:yp.cloneWithColumns(this.#e.node.addIndex,[t.toOperationNode()])})})}using(t){return new e({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addIndex:yp.cloneWith(this.#e.node.addIndex,{using:I.createWithSql(t)})})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},xp=class e{#e;constructor(e){this.#e=e}nullsNotDistinct(){return new e(up.cloneWith(this.#e,{nullsNotDistinct:!0}))}deferrable(){return new e(up.cloneWith(this.#e,{deferrable:!0}))}notDeferrable(){return new e(up.cloneWith(this.#e,{deferrable:!1}))}initiallyDeferred(){return new e(up.cloneWith(this.#e,{initiallyDeferred:!0}))}initiallyImmediate(){return new e(up.cloneWith(this.#e,{initiallyDeferred:!1}))}$call(e){return e(this)}toOperationNode(){return this.#e}},Sp=class e{#e;constructor(e){this.#e=e}deferrable(){return new e(vp.cloneWith(this.#e,{deferrable:!0}))}notDeferrable(){return new e(vp.cloneWith(this.#e,{deferrable:!1}))}initiallyDeferred(){return new e(vp.cloneWith(this.#e,{initiallyDeferred:!0}))}initiallyImmediate(){return new e(vp.cloneWith(this.#e,{initiallyDeferred:!1}))}$call(e){return e(this)}toOperationNode(){return this.#e}},Cp=class{#e;constructor(e){this.#e=e}$call(e){return e(this)}toOperationNode(){return this.#e}},wp=k({is(e){return e.kind===`RenameConstraintNode`},create(e,t){return k({kind:`RenameConstraintNode`,oldName:M.create(e),newName:M.create(t)})}}),Tp=class{#e;constructor(e){this.#e=k(e)}renameTo(e){return new hp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{renameTo:Q(e)})})}setSchema(e){return new hp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{setSchema:M.create(e)})})}alterColumn(e,t){let n=t(new pp(e));return new Ep({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,n.toOperationNode())})}dropColumn(e){return new Ep({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,Xf.create(e))})}renameColumn(e,t){return new Ep({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,Zf.create(e,t))})}addColumn(e,t,n=A){let r=n(new ap($.create(e,Ff(t))));return new Ep({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,Yf.create(r.toOperationNode()))})}modifyColumn(e,t,n=A){let r=n(new ap($.create(e,Ff(t))));return new Ep({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,op.create(r.toOperationNode()))})}addUniqueConstraint(e,t,n=A){let r=n(new xp(up.create(t,e)));return new hp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addConstraint:lp.create(r.toOperationNode())})})}addCheckConstraint(e,t,n=A){let r=n(new Cp(Qf.create(t.toOperationNode(),e)));return new hp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addConstraint:lp.create(r.toOperationNode())})})}addForeignKeyConstraint(e,t,n,r,i=A){let a=i(new cp(sp.create(t.map(F.create),Q(n),r.map(F.create),e)));return new gp({...this.#e,constraintBuilder:a})}addPrimaryKeyConstraint(e,t,n=A){let r=n(new Sp(vp.create(t,e)));return new hp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addConstraint:lp.create(r.toOperationNode())})})}dropConstraint(e){return new _p({...this.#e,node:j.cloneWithTableProps(this.#e.node,{dropConstraint:dp.create(e)})})}renameConstraint(e,t){return new _p({...this.#e,node:j.cloneWithTableProps(this.#e.node,{renameConstraint:wp.create(e,t)})})}addIndex(e){return new bp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{addIndex:yp.create(e)})})}dropIndex(e){return new hp({...this.#e,node:j.cloneWithTableProps(this.#e.node,{dropIndex:dl.create(e)})})}$call(e){return e(this)}},Ep=class e{#e;constructor(e){this.#e=k(e)}alterColumn(t,n){let r=n(new pp(t));return new e({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,r.toOperationNode())})}dropColumn(t){return new e({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,Xf.create(t))})}renameColumn(t,n){return new e({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,Zf.create(t,n))})}addColumn(t,n,r=A){let i=r(new ap($.create(t,Ff(n))));return new e({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,Yf.create(i.toOperationNode()))})}modifyColumn(t,n,r=A){let i=r(new ap($.create(t,Ff(n))));return new e({...this.#e,node:j.cloneWithColumnAlteration(this.#e.node,op.create(i.toOperationNode()))})}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Dp=class extends Dd{transformPrimitiveValueList(e){return ou.create(e.values.map(su.createImmediate))}transformValue(e){return su.createImmediate(e.value)}},Op=class e{#e;constructor(e){this.#e=k(e)}ifNotExists(){return new e({...this.#e,node:sl.cloneWith(this.#e.node,{ifNotExists:!0})})}unique(){return new e({...this.#e,node:sl.cloneWith(this.#e.node,{unique:!0})})}nullsNotDistinct(){return new e({...this.#e,node:sl.cloneWith(this.#e.node,{nullsNotDistinct:!0})})}on(t){return new e({...this.#e,node:sl.cloneWith(this.#e.node,{table:Q(t)})})}column(t){return new e({...this.#e,node:sl.cloneWithColumns(this.#e.node,[tu(t)])})}columns(t){return new e({...this.#e,node:sl.cloneWithColumns(this.#e.node,t.map(tu))})}expression(t){return new e({...this.#e,node:sl.cloneWithColumns(this.#e.node,[t.toOperationNode()])})}using(t){return new e({...this.#e,node:sl.cloneWith(this.#e.node,{using:I.createWithSql(t)})})}where(...t){let n=new Dp;return new e({...this.#e,node:H.cloneWithWhere(this.#e.node,n.transformNode(z(t),this.#e.queryId))})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},kp=class e{#e;constructor(e){this.#e=k(e)}ifNotExists(){return new e({...this.#e,node:cl.cloneWith(this.#e.node,{ifNotExists:!0})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}};function Ap(e){if(ll.includes(e))return e;throw Error(`invalid OnCommitAction ${e}`)}var jp=class e{#e;constructor(e){this.#e=k(e)}temporary(){return new e({...this.#e,node:N.cloneWith(this.#e.node,{temporary:!0})})}onCommit(t){return new e({...this.#e,node:N.cloneWith(this.#e.node,{onCommit:Ap(t)})})}ifNotExists(){return new e({...this.#e,node:N.cloneWith(this.#e.node,{ifNotExists:!0})})}addColumn(t,n,r=A){let i=r(new ap($.create(t,Ff(n))));return new e({...this.#e,node:N.cloneWithColumn(this.#e.node,i.toOperationNode())})}addPrimaryKeyConstraint(t,n,r=A){let i=r(new Sp(vp.create(n,t)));return new e({...this.#e,node:N.cloneWithConstraint(this.#e.node,i.toOperationNode())})}addUniqueConstraint(t,n,r=A){let i=r(new xp(up.create(n,t)));return new e({...this.#e,node:N.cloneWithConstraint(this.#e.node,i.toOperationNode())})}addCheckConstraint(t,n,r=A){let i=r(new Cp(Qf.create(n.toOperationNode(),t)));return new e({...this.#e,node:N.cloneWithConstraint(this.#e.node,i.toOperationNode())})}addForeignKeyConstraint(t,n,r,i,a=A){let o=a(new cp(sp.create(n.map(F.create),Q(r),i.map(F.create),t)));return new e({...this.#e,node:N.cloneWithConstraint(this.#e.node,o.toOperationNode())})}modifyFront(t){return new e({...this.#e,node:N.cloneWithFrontModifier(this.#e.node,t.toOperationNode())})}modifyEnd(t){return new e({...this.#e,node:N.cloneWithEndModifier(this.#e.node,t.toOperationNode())})}as(t){return new e({...this.#e,node:N.cloneWith(this.#e.node,{selectQuery:zf(t)})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Mp=class e{#e;constructor(e){this.#e=k(e)}on(t){return new e({...this.#e,node:dl.cloneWith(this.#e.node,{table:Q(t)})})}ifExists(){return new e({...this.#e,node:dl.cloneWith(this.#e.node,{ifExists:!0})})}cascade(){return new e({...this.#e,node:dl.cloneWith(this.#e.node,{cascade:!0})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Np=class e{#e;constructor(e){this.#e=k(e)}ifExists(){return new e({...this.#e,node:fl.cloneWith(this.#e.node,{ifExists:!0})})}cascade(){return new e({...this.#e,node:fl.cloneWith(this.#e.node,{cascade:!0})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Pp=class e{#e;constructor(e){this.#e=k(e)}ifExists(){return new e({...this.#e,node:pl.cloneWith(this.#e.node,{ifExists:!0})})}cascade(){return new e({...this.#e,node:pl.cloneWith(this.#e.node,{cascade:!0})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Fp=k({is(e){return e.kind===`CreateViewNode`},create(e){return k({kind:`CreateViewNode`,name:ul.create(e)})},cloneWith(e,t){return k({...e,...t})}}),Ip=class{#e=new Dp;transformQuery(e){return this.#e.transformNode(e.node,e.queryId)}transformResult(e){return Promise.resolve(e.result)}},Lp=class e{#e;constructor(e){this.#e=k(e)}temporary(){return new e({...this.#e,node:Fp.cloneWith(this.#e.node,{temporary:!0})})}materialized(){return new e({...this.#e,node:Fp.cloneWith(this.#e.node,{materialized:!0})})}ifNotExists(){return new e({...this.#e,node:Fp.cloneWith(this.#e.node,{ifNotExists:!0})})}orReplace(){return new e({...this.#e,node:Fp.cloneWith(this.#e.node,{orReplace:!0})})}columns(t){return new e({...this.#e,node:Fp.cloneWith(this.#e.node,{columns:t.map(eu)})})}as(t){let n=t.withPlugin(new Ip).toOperationNode();return new e({...this.#e,node:Fp.cloneWith(this.#e.node,{as:n})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Rp=k({is(e){return e.kind===`DropViewNode`},create(e){return k({kind:`DropViewNode`,name:ul.create(e)})},cloneWith(e,t){return k({...e,...t})}}),zp=class e{#e;constructor(e){this.#e=k(e)}materialized(){return new e({...this.#e,node:Rp.cloneWith(this.#e.node,{materialized:!0})})}ifExists(){return new e({...this.#e,node:Rp.cloneWith(this.#e.node,{ifExists:!0})})}cascade(){return new e({...this.#e,node:Rp.cloneWith(this.#e.node,{cascade:!0})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Bp=k({is(e){return e.kind===`CreateTypeNode`},create(e){return k({kind:`CreateTypeNode`,name:e})},cloneWithEnum(e,t){return k({...e,enum:ou.create(t.map(su.createImmediate))})}}),Vp=class e{#e;constructor(e){this.#e=k(e)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}asEnum(t){return new e({...this.#e,node:Bp.cloneWithEnum(this.#e.node,t)})}$call(e){return e(this)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Hp=k({is(e){return e.kind===`DropTypeNode`},create(e){return k({kind:`DropTypeNode`,name:e})},cloneWith(e,t){return k({...e,...t})}}),Up=class e{#e;constructor(e){this.#e=k(e)}ifExists(){return new e({...this.#e,node:Hp.cloneWith(this.#e.node,{ifExists:!0})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}};function Wp(e){if(e.includes(`.`)){let t=e.split(`.`).map(Gp);if(t.length===2)return ul.createWithSchema(t[0],t[1]);throw Error(`invalid schemable identifier ${e}`)}return ul.create(e)}function Gp(e){return e.trim()}var Kp=k({is(e){return e.kind===`RefreshMaterializedViewNode`},create(e){return k({kind:`RefreshMaterializedViewNode`,name:ul.create(e)})},cloneWith(e,t){return k({...e,...t})}}),qp=class e{#e;constructor(e){this.#e=k(e)}concurrently(){return new e({...this.#e,node:Kp.cloneWith(this.#e.node,{concurrently:!0,withNoData:!1})})}withData(){return new e({...this.#e,node:Kp.cloneWith(this.#e.node,{withNoData:!1})})}withNoData(){return new e({...this.#e,node:Kp.cloneWith(this.#e.node,{withNoData:!0,concurrently:!1})})}$call(e){return e(this)}toOperationNode(){return this.#e.executor.transformQuery(this.#e.node,this.#e.queryId)}compile(){return this.#e.executor.compileQuery(this.toOperationNode(),this.#e.queryId)}async execute(){await this.#e.executor.executeQuery(this.compile())}},Jp=class e{#e;constructor(e){this.#e=e}createTable(e){return new jp({queryId:J(),executor:this.#e,node:N.create(Q(e))})}dropTable(e){return new Pp({queryId:J(),executor:this.#e,node:pl.create(Q(e))})}createIndex(e){return new Op({queryId:J(),executor:this.#e,node:sl.create(e)})}dropIndex(e){return new Mp({queryId:J(),executor:this.#e,node:dl.create(e)})}createSchema(e){return new kp({queryId:J(),executor:this.#e,node:cl.create(e)})}dropSchema(e){return new Np({queryId:J(),executor:this.#e,node:fl.create(e)})}alterTable(e){return new Tp({queryId:J(),executor:this.#e,node:j.create(Q(e))})}createView(e){return new Lp({queryId:J(),executor:this.#e,node:Fp.create(e)})}refreshMaterializedView(e){return new qp({queryId:J(),executor:this.#e,node:Kp.create(e)})}dropView(e){return new zp({queryId:J(),executor:this.#e,node:Rp.create(e)})}createType(e){return new Vp({queryId:J(),executor:this.#e,node:Bp.create(Wp(e))})}dropType(e){return new Up({queryId:J(),executor:this.#e,node:Hp.create(Wp(e))})}withPlugin(t){return new e(this.#e.withPlugin(t))}withoutPlugins(){return new e(this.#e.withoutPlugins())}withSchema(t){return new e(this.#e.withPluginAtFront(new jd(t)))}},Yp=class{ref(e){return new Pl(e)}table(e){return new Hf(e)}},Xp=class{#e;constructor(e){this.#e=e}async provideConnection(e){let t=await this.#e.acquireConnection();try{return await e(t)}finally{await this.#e.releaseConnection(t)}}},Zp=class e extends Rd{#e;#t;#n;constructor(e,t,n,r=[]){super(r),this.#e=e,this.#t=t,this.#n=n}get adapter(){return this.#t}compileQuery(e,t){return this.#e.compileQuery(e,t)}provideConnection(e){return this.#n.provideConnection(e)}withPlugins(t){return new e(this.#e,this.#t,this.#n,[...this.plugins,...t])}withPlugin(t){return new e(this.#e,this.#t,this.#n,[...this.plugins,t])}withPluginAtFront(t){return new e(this.#e,this.#t,this.#n,[t,...this.plugins])}withConnectionProvider(t){return new e(this.#e,this.#t,t,[...this.plugins])}withoutPlugins(){return new e(this.#e,this.#t,this.#n,[])}};function Qp(){return typeof performance<`u`&&O(performance.now)?performance.now():Date.now()}var $p=class{#e;#t;#n;#r;#i;#a=new WeakSet;constructor(e,t){this.#r=!1,this.#e=e,this.#t=t}async init(){if(this.#i)throw Error(`driver has already been destroyed`);this.#n||=this.#e.init().then(()=>{this.#r=!0}).catch(e=>(this.#n=void 0,Promise.reject(e))),await this.#n}async acquireConnection(){if(this.#i)throw Error(`driver has already been destroyed`);this.#r||await this.init();let e=await this.#e.acquireConnection();return this.#a.has(e)||(this.#o()&&this.#s(e),this.#a.add(e)),e}async releaseConnection(e){await this.#e.releaseConnection(e)}beginTransaction(e,t){return this.#e.beginTransaction(e,t)}commitTransaction(e){return this.#e.commitTransaction(e)}rollbackTransaction(e){return this.#e.rollbackTransaction(e)}savepoint(e,t,n){if(this.#e.savepoint)return this.#e.savepoint(e,t,n);throw Error("The `savepoint` method is not supported by this driver")}rollbackToSavepoint(e,t,n){if(this.#e.rollbackToSavepoint)return this.#e.rollbackToSavepoint(e,t,n);throw Error("The `rollbackToSavepoint` method is not supported by this driver")}releaseSavepoint(e,t,n){if(this.#e.releaseSavepoint)return this.#e.releaseSavepoint(e,t,n);throw Error("The `releaseSavepoint` method is not supported by this driver")}async destroy(){this.#n&&(await this.#n,this.#i||=this.#e.destroy().catch(e=>(this.#i=void 0,Promise.reject(e))),await this.#i)}#o(){return this.#t.isLevelEnabled(`query`)||this.#t.isLevelEnabled(`error`)}#s(e){let t=e.executeQuery,n=e.streamQuery,r=this;e.executeQuery=async n=>{let i,a=Qp();try{return await t.call(e,n)}catch(e){throw i=e,await r.#c(e,n,a),e}finally{i||await r.#l(n,a)}},e.streamQuery=async function*(t,i){let a,o=Qp();try{for await(let r of n.call(e,t,i))yield r}catch(e){throw a=e,await r.#c(e,t,o),e}finally{a||await r.#l(t,o,!0)}}}async#c(e,t,n){await this.#t.error(()=>({level:`error`,error:e,query:t,queryDurationMillis:this.#u(n)}))}async#l(e,t,n=!1){await this.#t.query(()=>({level:`query`,isStream:n,query:e,queryDurationMillis:this.#u(t)}))}#u(e){return Qp()-e}},em=()=>{},tm=class{#e;#t;constructor(e){this.#e=e}async provideConnection(e){for(;this.#t;)await this.#t.catch(em);return this.#t=this.#n(e).finally(()=>{this.#t=void 0}),this.#t}async#n(e){return await e(this.#e)}},nm=[`read only`,`read write`],rm=[`read uncommitted`,`read committed`,`repeatable read`,`serializable`,`snapshot`];function im(e){if(e.accessMode&&!nm.includes(e.accessMode))throw Error(`invalid transaction access mode ${e.accessMode}`);if(e.isolationLevel&&!rm.includes(e.isolationLevel))throw Error(`invalid transaction isolation level ${e.isolationLevel}`)}k([`query`,`error`]);var am=class{#e;#t;constructor(e){O(e)?(this.#t=e,this.#e=k({query:!0,error:!0})):(this.#t=om,this.#e=k({query:e.includes(`query`),error:e.includes(`error`)}))}isLevelEnabled(e){return this.#e[e]}async query(e){this.#e.query&&await this.#t(e())}async error(e){this.#e.error&&await this.#t(e())}};function om(e){if(e.level===`query`){let t=`kysely:query:${e.isStream?`stream:`:``}`;console.log(`${t} ${e.query.sql}`),console.log(`${t} duration: ${e.queryDurationMillis.toFixed(1)}ms`)}else e.level===`error`&&(e.error instanceof Error?console.error(`kysely:error: ${e.error.stack??e.error.message}`):console.error(`kysely:error: ${JSON.stringify({error:e.error,query:e.query.sql,queryDurationMillis:e.queryDurationMillis})}`))}function sm(e){return il(e)&&O(e.compile)}Symbol.asyncDispose??=Symbol(`Symbol.asyncDispose`);var cm=class e extends Gd{#e;constructor(e){let t,n;if(um(e))t={executor:e.executor},n={...e};else{let r=e.dialect,i=r.createDriver(),a=r.createQueryCompiler(),o=r.createAdapter(),s=new $p(i,new am(e.log??[])),c=new Zp(a,o,new Xp(s),e.plugins??[]);t={executor:c},n={config:e,executor:c,dialect:r,driver:s}}super(t),this.#e=k(n)}get schema(){return new Jp(this.#e.executor)}get dynamic(){return new Yp}get introspection(){return this.#e.dialect.createIntrospector(this.withoutPlugins())}case(e){return new Sf({node:xf.create(Qc(e)?void 0:zf(e))})}get fn(){return vf()}transaction(){return new fm({...this.#e})}startTransaction(){return new pm({...this.#e})}connection(){return new dm({...this.#e})}withPlugin(t){return new e({...this.#e,executor:this.#e.executor.withPlugin(t)})}withoutPlugins(){return new e({...this.#e,executor:this.#e.executor.withoutPlugins()})}withSchema(t){return new e({...this.#e,executor:this.#e.executor.withPluginAtFront(new jd(t))})}withTables(){return new e({...this.#e})}async destroy(){await this.#e.driver.destroy()}get isTransaction(){return!1}getExecutor(){return this.#e.executor}executeQuery(e,t){t!==void 0&&Bl("Passing `queryId` in `db.executeQuery` is deprecated and will result in a compile-time error in the future.");let n=sm(e)?e.compile():e;return this.getExecutor().executeQuery(n)}async[Symbol.asyncDispose](){await this.destroy()}},lm=class e extends cm{#e;constructor(e){super(e),this.#e=e}get isTransaction(){return!0}transaction(){throw Error(`calling the transaction method for a Transaction is not supported`)}connection(){throw Error(`calling the connection method for a Transaction is not supported`)}async destroy(){throw Error(`calling the destroy method for a Transaction is not supported`)}withPlugin(t){return new e({...this.#e,executor:this.#e.executor.withPlugin(t)})}withoutPlugins(){return new e({...this.#e,executor:this.#e.executor.withoutPlugins()})}withSchema(t){return new e({...this.#e,executor:this.#e.executor.withPluginAtFront(new jd(t))})}withTables(){return new e({...this.#e})}};function um(e){return il(e)&&il(e.config)&&il(e.driver)&&il(e.executor)&&il(e.dialect)}var dm=class{#e;constructor(e){this.#e=k(e)}async execute(e){return this.#e.executor.provideConnection(async t=>{let n=this.#e.executor.withConnectionProvider(new tm(t));return await e(new cm({...this.#e,executor:n}))})}},fm=class e{#e;constructor(e){this.#e=k(e)}setAccessMode(t){return new e({...this.#e,accessMode:t})}setIsolationLevel(t){return new e({...this.#e,isolationLevel:t})}async execute(e){let{isolationLevel:t,accessMode:n,...r}=this.#e,i={isolationLevel:t,accessMode:n};return im(i),this.#e.executor.provideConnection(async t=>{let n={isCommitted:!1,isRolledBack:!1},a=new _m(this.#e.executor.withConnectionProvider(new tm(t)),n),o=new lm({...r,executor:a}),s=!1;try{await this.#e.driver.beginTransaction(t,i),s=!0;let r=await e(o);return await this.#e.driver.commitTransaction(t),n.isCommitted=!0,r}catch(e){throw s&&(await this.#e.driver.rollbackTransaction(t),n.isRolledBack=!0),e}})}},pm=class e{#e;constructor(e){this.#e=k(e)}setAccessMode(t){return new e({...this.#e,accessMode:t})}setIsolationLevel(t){return new e({...this.#e,isolationLevel:t})}async execute(){let{isolationLevel:e,accessMode:t,...n}=this.#e,r={isolationLevel:e,accessMode:t};im(r);let i=await Id(this.#e.executor);return await this.#e.driver.beginTransaction(i.connection,r),new mm({...n,connection:i,executor:this.#e.executor.withConnectionProvider(new tm(i.connection))})}},mm=class e extends lm{#e;#t;#n;constructor(e){let t={isCommitted:!1,isRolledBack:!1};e={...e,executor:new _m(e.executor,t)};let{connection:n,...r}=e;super(r),this.#e=k(e),this.#n=t;let i=J();this.#t=t=>e.executor.compileQuery(t,i)}get isCommitted(){return this.#n.isCommitted}get isRolledBack(){return this.#n.isRolledBack}commit(){return gm(this.#n),new hm(async()=>{await this.#e.driver.commitTransaction(this.#e.connection.connection),this.#n.isCommitted=!0,this.#e.connection.release()})}rollback(){return gm(this.#n),new hm(async()=>{await this.#e.driver.rollbackTransaction(this.#e.connection.connection),this.#n.isRolledBack=!0,this.#e.connection.release()})}savepoint(t){return gm(this.#n),new hm(async()=>(await this.#e.driver.savepoint?.(this.#e.connection.connection,t,this.#t),new e({...this.#e})))}rollbackToSavepoint(t){return gm(this.#n),new hm(async()=>(await this.#e.driver.rollbackToSavepoint?.(this.#e.connection.connection,t,this.#t),new e({...this.#e})))}releaseSavepoint(t){return gm(this.#n),new hm(async()=>(await this.#e.driver.releaseSavepoint?.(this.#e.connection.connection,t,this.#t),new e({...this.#e})))}withPlugin(t){return new e({...this.#e,executor:this.#e.executor.withPlugin(t)})}withoutPlugins(){return new e({...this.#e,executor:this.#e.executor.withoutPlugins()})}withSchema(t){return new e({...this.#e,executor:this.#e.executor.withPluginAtFront(new jd(t))})}withTables(){return new e({...this.#e})}},hm=class{#e;constructor(e){this.#e=e}async execute(){return await this.#e()}};function gm(e){if(e.isCommitted)throw Error(`Transaction is already committed`);if(e.isRolledBack)throw Error(`Transaction is already rolled back`)}var _m=class e{#e;#t;constructor(t,n){this.#e=t instanceof e?t.#e:t,this.#t=n}get adapter(){return this.#e.adapter}get plugins(){return this.#e.plugins}transformQuery(e,t){return this.#e.transformQuery(e,t)}compileQuery(e,t){return this.#e.compileQuery(e,t)}provideConnection(e){return this.#e.provideConnection(e)}executeQuery(e){return gm(this.#t),this.#e.executeQuery(e)}stream(e,t){return gm(this.#t),this.#e.stream(e,t)}withConnectionProvider(t){return new e(this.#e.withConnectionProvider(t),this.#t)}withPlugin(t){return new e(this.#e.withPlugin(t),this.#t)}withPlugins(t){return new e(this.#e.withPlugins(t),this.#t)}withPluginAtFront(t){return new e(this.#e.withPluginAtFront(t),this.#t)}withoutPlugins(){return new e(this.#e.withoutPlugins(),this.#t)}},vm=class e{#e;constructor(e){this.#e=k(e)}get expressionType(){}get isRawBuilder(){return!0}as(e){return new bm(this,e)}$castTo(){return new e({...this.#e})}$notNull(){return new e(this.#e)}withPlugin(t){return new e({...this.#e,plugins:this.#e.plugins===void 0?k([t]):k([...this.#e.plugins,t])})}toOperationNode(){return this.#n(this.#t())}compile(e){return this.#r(this.#t(e))}async execute(e){let t=this.#t(e);return t.executeQuery(this.#r(t))}#t(e){let t=e===void 0?zd:e.getExecutor();return this.#e.plugins===void 0?t:t.withPlugins(this.#e.plugins)}#n(e){return e.transformQuery(this.#e.rawNode,this.#e.queryId)}#r(e){return e.compileQuery(this.#n(e),this.#e.queryId)}};function ym(e){return new vm(e)}var bm=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}get expression(){return this.#e}get alias(){return this.#t}get rawBuilder(){return this.#e}toOperationNode(){return ml.create(this.#e.toOperationNode(),P(this.#t)?this.#t.toOperationNode():M.create(this.#t))}},xm=Object.assign((e,...t)=>ym({queryId:J(),rawNode:I.create(e,t?.map(Sm)??[])}),{ref(e){return ym({queryId:J(),rawNode:I.createWithChild(Ql(e))})},val(e){return ym({queryId:J(),rawNode:I.createWithChild(R(e))})},value(e){return this.val(e)},table(e){return ym({queryId:J(),rawNode:I.createWithChild(Q(e))})},id(...e){let t=Array(e.length+1).fill(`.`);return t[0]=``,t[t.length-1]=``,ym({queryId:J(),rawNode:I.create(t,e.map(M.create))})},lit(e){return ym({queryId:J(),rawNode:I.createWithChild(su.createImmediate(e))})},literal(e){return this.lit(e)},raw(e){return ym({queryId:J(),rawNode:I.createWithSql(e)})},join(e,t=xm`, `){let n=Array(Math.max(2*e.length-1,0)),r=t.toOperationNode();for(let t=0;t<e.length;++t)n[2*t]=Sm(e[t]),t!==e.length-1&&(n[2*t+1]=r);return ym({queryId:J(),rawNode:I.createWithChildren(n)})}});function Sm(e){return P(e)?e.toOperationNode():R(e)}var Cm=class{nodeStack=[];get parentNode(){return this.nodeStack[this.nodeStack.length-2]}#e=k({AliasNode:this.visitAlias.bind(this),ColumnNode:this.visitColumn.bind(this),IdentifierNode:this.visitIdentifier.bind(this),SchemableIdentifierNode:this.visitSchemableIdentifier.bind(this),RawNode:this.visitRaw.bind(this),ReferenceNode:this.visitReference.bind(this),SelectQueryNode:this.visitSelectQuery.bind(this),SelectionNode:this.visitSelection.bind(this),TableNode:this.visitTable.bind(this),FromNode:this.visitFrom.bind(this),SelectAllNode:this.visitSelectAll.bind(this),AndNode:this.visitAnd.bind(this),OrNode:this.visitOr.bind(this),ValueNode:this.visitValue.bind(this),ValueListNode:this.visitValueList.bind(this),PrimitiveValueListNode:this.visitPrimitiveValueList.bind(this),ParensNode:this.visitParens.bind(this),JoinNode:this.visitJoin.bind(this),OperatorNode:this.visitOperator.bind(this),WhereNode:this.visitWhere.bind(this),InsertQueryNode:this.visitInsertQuery.bind(this),DeleteQueryNode:this.visitDeleteQuery.bind(this),ReturningNode:this.visitReturning.bind(this),CreateTableNode:this.visitCreateTable.bind(this),AddColumnNode:this.visitAddColumn.bind(this),ColumnDefinitionNode:this.visitColumnDefinition.bind(this),DropTableNode:this.visitDropTable.bind(this),DataTypeNode:this.visitDataType.bind(this),OrderByNode:this.visitOrderBy.bind(this),OrderByItemNode:this.visitOrderByItem.bind(this),GroupByNode:this.visitGroupBy.bind(this),GroupByItemNode:this.visitGroupByItem.bind(this),UpdateQueryNode:this.visitUpdateQuery.bind(this),ColumnUpdateNode:this.visitColumnUpdate.bind(this),LimitNode:this.visitLimit.bind(this),OffsetNode:this.visitOffset.bind(this),OnConflictNode:this.visitOnConflict.bind(this),OnDuplicateKeyNode:this.visitOnDuplicateKey.bind(this),CreateIndexNode:this.visitCreateIndex.bind(this),DropIndexNode:this.visitDropIndex.bind(this),ListNode:this.visitList.bind(this),PrimaryKeyConstraintNode:this.visitPrimaryKeyConstraint.bind(this),UniqueConstraintNode:this.visitUniqueConstraint.bind(this),ReferencesNode:this.visitReferences.bind(this),CheckConstraintNode:this.visitCheckConstraint.bind(this),WithNode:this.visitWith.bind(this),CommonTableExpressionNode:this.visitCommonTableExpression.bind(this),CommonTableExpressionNameNode:this.visitCommonTableExpressionName.bind(this),HavingNode:this.visitHaving.bind(this),CreateSchemaNode:this.visitCreateSchema.bind(this),DropSchemaNode:this.visitDropSchema.bind(this),AlterTableNode:this.visitAlterTable.bind(this),DropColumnNode:this.visitDropColumn.bind(this),RenameColumnNode:this.visitRenameColumn.bind(this),AlterColumnNode:this.visitAlterColumn.bind(this),ModifyColumnNode:this.visitModifyColumn.bind(this),AddConstraintNode:this.visitAddConstraint.bind(this),DropConstraintNode:this.visitDropConstraint.bind(this),RenameConstraintNode:this.visitRenameConstraint.bind(this),ForeignKeyConstraintNode:this.visitForeignKeyConstraint.bind(this),CreateViewNode:this.visitCreateView.bind(this),RefreshMaterializedViewNode:this.visitRefreshMaterializedView.bind(this),DropViewNode:this.visitDropView.bind(this),GeneratedNode:this.visitGenerated.bind(this),DefaultValueNode:this.visitDefaultValue.bind(this),OnNode:this.visitOn.bind(this),ValuesNode:this.visitValues.bind(this),SelectModifierNode:this.visitSelectModifier.bind(this),CreateTypeNode:this.visitCreateType.bind(this),DropTypeNode:this.visitDropType.bind(this),ExplainNode:this.visitExplain.bind(this),DefaultInsertValueNode:this.visitDefaultInsertValue.bind(this),AggregateFunctionNode:this.visitAggregateFunction.bind(this),OverNode:this.visitOver.bind(this),PartitionByNode:this.visitPartitionBy.bind(this),PartitionByItemNode:this.visitPartitionByItem.bind(this),SetOperationNode:this.visitSetOperation.bind(this),BinaryOperationNode:this.visitBinaryOperation.bind(this),UnaryOperationNode:this.visitUnaryOperation.bind(this),UsingNode:this.visitUsing.bind(this),FunctionNode:this.visitFunction.bind(this),CaseNode:this.visitCase.bind(this),WhenNode:this.visitWhen.bind(this),JSONReferenceNode:this.visitJSONReference.bind(this),JSONPathNode:this.visitJSONPath.bind(this),JSONPathLegNode:this.visitJSONPathLeg.bind(this),JSONOperatorChainNode:this.visitJSONOperatorChain.bind(this),TupleNode:this.visitTuple.bind(this),MergeQueryNode:this.visitMergeQuery.bind(this),MatchedNode:this.visitMatched.bind(this),AddIndexNode:this.visitAddIndex.bind(this),CastNode:this.visitCast.bind(this),FetchNode:this.visitFetch.bind(this),TopNode:this.visitTop.bind(this),OutputNode:this.visitOutput.bind(this),OrActionNode:this.visitOrAction.bind(this),CollateNode:this.visitCollate.bind(this)});visitNode=e=>{this.nodeStack.push(e),this.#e[e.kind](e),this.nodeStack.pop()}},wm=/'/g,Tm=class extends Cm{#e=``;#t=[];get numParameters(){return this.#t.length}compileQuery(e,t){return this.#e=``,this.#t=[],this.nodeStack.splice(0,this.nodeStack.length),this.visitNode(e),k({query:e,queryId:t,sql:this.getSql(),parameters:[...this.#t]})}getSql(){return this.#e}visitSelectQuery(e){let t=this.parentNode!==void 0&&!fu.is(this.parentNode)&&!B.is(this.parentNode)&&!N.is(this.parentNode)&&!Fp.is(this.parentNode)&&!nf.is(this.parentNode);this.parentNode===void 0&&e.explain&&(this.visitNode(e.explain),this.append(` `)),t&&this.append(`(`),e.with&&(this.visitNode(e.with),this.append(` `)),this.append(`select`),e.distinctOn&&(this.append(` `),this.compileDistinctOn(e.distinctOn)),e.frontModifiers?.length&&(this.append(` `),this.compileList(e.frontModifiers,` `)),e.top&&(this.append(` `),this.visitNode(e.top)),e.selections&&(this.append(` `),this.compileList(e.selections)),e.from&&(this.append(` `),this.visitNode(e.from)),e.joins&&(this.append(` `),this.compileList(e.joins,` `)),e.where&&(this.append(` `),this.visitNode(e.where)),e.groupBy&&(this.append(` `),this.visitNode(e.groupBy)),e.having&&(this.append(` `),this.visitNode(e.having)),e.setOperations&&(this.append(` `),this.compileList(e.setOperations,` `)),e.orderBy&&(this.append(` `),this.visitNode(e.orderBy)),e.limit&&(this.append(` `),this.visitNode(e.limit)),e.offset&&(this.append(` `),this.visitNode(e.offset)),e.fetch&&(this.append(` `),this.visitNode(e.fetch)),e.endModifiers?.length&&(this.append(` `),this.compileList(this.sortSelectModifiers([...e.endModifiers]),` `)),t&&this.append(`)`)}visitFrom(e){this.append(`from `),this.compileList(e.froms)}visitSelection(e){this.visitNode(e.selection)}visitColumn(e){this.visitNode(e.column)}compileDistinctOn(e){this.append(`distinct on (`),this.compileList(e),this.append(`)`)}compileList(e,t=`, `){let n=e.length-1;for(let r=0;r<=n;r++)this.visitNode(e[r]),r<n&&this.append(t)}visitWhere(e){this.append(`where `),this.visitNode(e.where)}visitHaving(e){this.append(`having `),this.visitNode(e.having)}visitInsertQuery(e){let t=this.parentNode!==void 0&&!fu.is(this.parentNode)&&!I.is(this.parentNode)&&!Nu.is(this.parentNode);this.parentNode===void 0&&e.explain&&(this.visitNode(e.explain),this.append(` `)),t&&this.append(`(`),e.with&&(this.visitNode(e.with),this.append(` `)),this.append(e.replace?`replace`:`insert`),e.ignore&&(Bl("`InsertQueryNode.ignore` is deprecated. Use `InsertQueryNode.orAction` instead."),this.append(` ignore`)),e.orAction&&(this.append(` `),this.visitNode(e.orAction)),e.top&&(this.append(` `),this.visitNode(e.top)),e.into&&(this.append(` into `),this.visitNode(e.into)),e.columns&&(this.append(` (`),this.compileList(e.columns),this.append(`)`)),e.output&&(this.append(` `),this.visitNode(e.output)),e.values&&(this.append(` `),this.visitNode(e.values)),e.defaultValues&&(this.append(` `),this.append(`default values`)),e.onConflict&&(this.append(` `),this.visitNode(e.onConflict)),e.onDuplicateKey&&(this.append(` `),this.visitNode(e.onDuplicateKey)),e.returning&&(this.append(` `),this.visitNode(e.returning)),t&&this.append(`)`),e.endModifiers?.length&&(this.append(` `),this.compileList(e.endModifiers,` `))}visitValues(e){this.append(`values `),this.compileList(e.values)}visitDeleteQuery(e){let t=this.parentNode!==void 0&&!fu.is(this.parentNode)&&!I.is(this.parentNode);this.parentNode===void 0&&e.explain&&(this.visitNode(e.explain),this.append(` `)),t&&this.append(`(`),e.with&&(this.visitNode(e.with),this.append(` `)),this.append(`delete `),e.top&&(this.visitNode(e.top),this.append(` `)),this.visitNode(e.from),e.output&&(this.append(` `),this.visitNode(e.output)),e.using&&(this.append(` `),this.visitNode(e.using)),e.joins&&(this.append(` `),this.compileList(e.joins,` `)),e.where&&(this.append(` `),this.visitNode(e.where)),e.orderBy&&(this.append(` `),this.visitNode(e.orderBy)),e.limit&&(this.append(` `),this.visitNode(e.limit)),e.returning&&(this.append(` `),this.visitNode(e.returning)),t&&this.append(`)`),e.endModifiers?.length&&(this.append(` `),this.compileList(e.endModifiers,` `))}visitReturning(e){this.append(`returning `),this.compileList(e.selections)}visitAlias(e){this.visitNode(e.node),this.append(` as `),this.visitNode(e.alias)}visitReference(e){e.table&&(this.visitNode(e.table),this.append(`.`)),this.visitNode(e.column)}visitSelectAll(e){this.append(`*`)}visitIdentifier(e){this.append(this.getLeftIdentifierWrapper()),this.compileUnwrappedIdentifier(e),this.append(this.getRightIdentifierWrapper())}compileUnwrappedIdentifier(e){if(!D(e.name))throw Error(`a non-string identifier was passed to compileUnwrappedIdentifier.`);this.append(this.sanitizeIdentifier(e.name))}visitAnd(e){this.visitNode(e.left),this.append(` and `),this.visitNode(e.right)}visitOr(e){this.visitNode(e.left),this.append(` or `),this.visitNode(e.right)}visitValue(e){e.immediate?this.appendImmediateValue(e.value):this.appendValue(e.value)}visitValueList(e){this.append(`(`),this.compileList(e.values),this.append(`)`)}visitTuple(e){this.append(`(`),this.compileList(e.values),this.append(`)`)}visitPrimitiveValueList(e){this.append(`(`);let{values:t}=e;for(let e=0;e<t.length;++e)this.appendValue(t[e]),e!==t.length-1&&this.append(`, `);this.append(`)`)}visitParens(e){this.append(`(`),this.visitNode(e.node),this.append(`)`)}visitJoin(e){this.append(Om[e.joinType]),this.append(` `),this.visitNode(e.table),e.on&&(this.append(` `),this.visitNode(e.on))}visitOn(e){this.append(`on `),this.visitNode(e.on)}visitRaw(e){let{sqlFragments:t,parameters:n}=e;for(let e=0;e<t.length;++e)this.append(t[e]),n.length>e&&this.visitNode(n[e])}visitOperator(e){this.append(e.operator)}visitTable(e){this.visitNode(e.table)}visitSchemableIdentifier(e){e.schema&&(this.visitNode(e.schema),this.append(`.`)),this.visitNode(e.identifier)}visitCreateTable(e){this.append(`create `),e.frontModifiers?.length&&(this.compileList(e.frontModifiers,` `),this.append(` `)),e.temporary&&this.append(`temporary `),this.append(`table `),e.ifNotExists&&this.append(`if not exists `),this.visitNode(e.table),e.selectQuery||(this.append(` (`),this.compileList([...e.columns,...e.constraints??[]]),this.append(`)`)),e.onCommit&&(this.append(` on commit `),this.append(e.onCommit)),e.endModifiers?.length&&(this.append(` `),this.compileList(e.endModifiers,` `)),e.selectQuery&&(this.append(` as `),this.visitNode(e.selectQuery))}visitColumnDefinition(e){e.ifNotExists&&this.append(`if not exists `),this.visitNode(e.column),this.append(` `),this.visitNode(e.dataType),e.unsigned&&this.append(` unsigned`),e.frontModifiers&&e.frontModifiers.length>0&&(this.append(` `),this.compileList(e.frontModifiers,` `)),e.generated&&(this.append(` `),this.visitNode(e.generated)),e.identity&&this.append(` identity`),e.defaultTo&&(this.append(` `),this.visitNode(e.defaultTo)),e.notNull&&this.append(` not null`),e.unique&&this.append(` unique`),e.nullsNotDistinct&&this.append(` nulls not distinct`),e.primaryKey&&this.append(` primary key`),e.autoIncrement&&(this.append(` `),this.append(this.getAutoIncrement())),e.references&&(this.append(` `),this.visitNode(e.references)),e.check&&(this.append(` `),this.visitNode(e.check)),e.endModifiers&&e.endModifiers.length>0&&(this.append(` `),this.compileList(e.endModifiers,` `))}getAutoIncrement(){return`auto_increment`}visitReferences(e){this.append(`references `),this.visitNode(e.table),this.append(` (`),this.compileList(e.columns),this.append(`)`),e.onDelete&&(this.append(` on delete `),this.append(e.onDelete)),e.onUpdate&&(this.append(` on update `),this.append(e.onUpdate))}visitDropTable(e){this.append(`drop table `),e.ifExists&&this.append(`if exists `),this.visitNode(e.table),e.cascade&&this.append(` cascade`)}visitDataType(e){this.append(e.dataType)}visitOrderBy(e){this.append(`order by `),this.compileList(e.items)}visitOrderByItem(e){this.visitNode(e.orderBy),e.collation&&(this.append(` `),this.visitNode(e.collation)),e.direction&&(this.append(` `),this.visitNode(e.direction)),e.nulls&&(this.append(` nulls `),this.append(e.nulls))}visitGroupBy(e){this.append(`group by `),this.compileList(e.items)}visitGroupByItem(e){this.visitNode(e.groupBy)}visitUpdateQuery(e){let t=this.parentNode!==void 0&&!fu.is(this.parentNode)&&!I.is(this.parentNode)&&!Nu.is(this.parentNode);if(this.parentNode===void 0&&e.explain&&(this.visitNode(e.explain),this.append(` `)),t&&this.append(`(`),e.with&&(this.visitNode(e.with),this.append(` `)),this.append(`update `),e.top&&(this.visitNode(e.top),this.append(` `)),e.table&&(this.visitNode(e.table),this.append(` `)),this.append(`set `),e.updates&&this.compileList(e.updates),e.output&&(this.append(` `),this.visitNode(e.output)),e.from&&(this.append(` `),this.visitNode(e.from)),e.joins){if(!e.from)throw Error(`Joins in an update query are only supported as a part of a PostgreSQL 'update set from join' query. If you want to create a MySQL 'update join set' query, see https://kysely.dev/docs/examples/update/my-sql-joins`);this.append(` `),this.compileList(e.joins,` `)}e.where&&(this.append(` `),this.visitNode(e.where)),e.returning&&(this.append(` `),this.visitNode(e.returning)),e.orderBy&&(this.append(` `),this.visitNode(e.orderBy)),e.limit&&(this.append(` `),this.visitNode(e.limit)),t&&this.append(`)`),e.endModifiers?.length&&(this.append(` `),this.compileList(e.endModifiers,` `))}visitColumnUpdate(e){this.visitNode(e.column),this.append(` = `),this.visitNode(e.value)}visitLimit(e){this.append(`limit `),this.visitNode(e.limit)}visitOffset(e){this.append(`offset `),this.visitNode(e.offset)}visitOnConflict(e){this.append(`on conflict`),e.columns?(this.append(` (`),this.compileList(e.columns),this.append(`)`)):e.constraint?(this.append(` on constraint `),this.visitNode(e.constraint)):e.indexExpression&&(this.append(` (`),this.visitNode(e.indexExpression),this.append(`)`)),e.indexWhere&&(this.append(` `),this.visitNode(e.indexWhere)),e.doNothing===!0?this.append(` do nothing`):e.updates&&(this.append(` do update set `),this.compileList(e.updates),e.updateWhere&&(this.append(` `),this.visitNode(e.updateWhere)))}visitOnDuplicateKey(e){this.append(`on duplicate key update `),this.compileList(e.updates)}visitCreateIndex(e){this.append(`create `),e.unique&&this.append(`unique `),this.append(`index `),e.ifNotExists&&this.append(`if not exists `),this.visitNode(e.name),e.table&&(this.append(` on `),this.visitNode(e.table)),e.using&&(this.append(` using `),this.visitNode(e.using)),e.columns&&(this.append(` (`),this.compileList(e.columns),this.append(`)`)),e.nullsNotDistinct&&this.append(` nulls not distinct`),e.where&&(this.append(` `),this.visitNode(e.where))}visitDropIndex(e){this.append(`drop index `),e.ifExists&&this.append(`if exists `),this.visitNode(e.name),e.table&&(this.append(` on `),this.visitNode(e.table)),e.cascade&&this.append(` cascade`)}visitCreateSchema(e){this.append(`create schema `),e.ifNotExists&&this.append(`if not exists `),this.visitNode(e.schema)}visitDropSchema(e){this.append(`drop schema `),e.ifExists&&this.append(`if exists `),this.visitNode(e.schema),e.cascade&&this.append(` cascade`)}visitPrimaryKeyConstraint(e){e.name&&(this.append(`constraint `),this.visitNode(e.name),this.append(` `)),this.append(`primary key (`),this.compileList(e.columns),this.append(`)`),this.buildDeferrable(e)}buildDeferrable(e){e.deferrable!==void 0&&(e.deferrable?this.append(` deferrable`):this.append(` not deferrable`)),e.initiallyDeferred!==void 0&&(e.initiallyDeferred?this.append(` initially deferred`):this.append(` initially immediate`))}visitUniqueConstraint(e){e.name&&(this.append(`constraint `),this.visitNode(e.name),this.append(` `)),this.append(`unique`),e.nullsNotDistinct&&this.append(` nulls not distinct`),this.append(` (`),this.compileList(e.columns),this.append(`)`),this.buildDeferrable(e)}visitCheckConstraint(e){e.name&&(this.append(`constraint `),this.visitNode(e.name),this.append(` `)),this.append(`check (`),this.visitNode(e.expression),this.append(`)`)}visitForeignKeyConstraint(e){e.name&&(this.append(`constraint `),this.visitNode(e.name),this.append(` `)),this.append(`foreign key (`),this.compileList(e.columns),this.append(`) `),this.visitNode(e.references),e.onDelete&&(this.append(` on delete `),this.append(e.onDelete)),e.onUpdate&&(this.append(` on update `),this.append(e.onUpdate)),this.buildDeferrable(e)}visitList(e){this.compileList(e.items)}visitWith(e){this.append(`with `),e.recursive&&this.append(`recursive `),this.compileList(e.expressions)}visitCommonTableExpression(e){this.visitNode(e.name),this.append(` as `),el(e.materialized)&&(e.materialized||this.append(`not `),this.append(`materialized `)),this.visitNode(e.expression)}visitCommonTableExpressionName(e){this.visitNode(e.table),e.columns&&(this.append(`(`),this.compileList(e.columns),this.append(`)`))}visitAlterTable(e){this.append(`alter table `),this.visitNode(e.table),this.append(` `),e.renameTo&&(this.append(`rename to `),this.visitNode(e.renameTo)),e.setSchema&&(this.append(`set schema `),this.visitNode(e.setSchema)),e.addConstraint&&this.visitNode(e.addConstraint),e.dropConstraint&&this.visitNode(e.dropConstraint),e.renameConstraint&&this.visitNode(e.renameConstraint),e.columnAlterations&&this.compileColumnAlterations(e.columnAlterations),e.addIndex&&this.visitNode(e.addIndex),e.dropIndex&&this.visitNode(e.dropIndex)}visitAddColumn(e){this.append(`add column `),this.visitNode(e.column)}visitRenameColumn(e){this.append(`rename column `),this.visitNode(e.column),this.append(` to `),this.visitNode(e.renameTo)}visitDropColumn(e){this.append(`drop column `),this.visitNode(e.column)}visitAlterColumn(e){this.append(`alter column `),this.visitNode(e.column),this.append(` `),e.dataType&&(this.announcesNewColumnDataType()&&this.append(`type `),this.visitNode(e.dataType),e.dataTypeExpression&&(this.append(`using `),this.visitNode(e.dataTypeExpression))),e.setDefault&&(this.append(`set default `),this.visitNode(e.setDefault)),e.dropDefault&&this.append(`drop default`),e.setNotNull&&this.append(`set not null`),e.dropNotNull&&this.append(`drop not null`)}visitModifyColumn(e){this.append(`modify column `),this.visitNode(e.column)}visitAddConstraint(e){this.append(`add `),this.visitNode(e.constraint)}visitDropConstraint(e){this.append(`drop constraint `),e.ifExists&&this.append(`if exists `),this.visitNode(e.constraintName),e.modifier===`cascade`?this.append(` cascade`):e.modifier===`restrict`&&this.append(` restrict`)}visitRenameConstraint(e){this.append(`rename constraint `),this.visitNode(e.oldName),this.append(` to `),this.visitNode(e.newName)}visitSetOperation(e){this.append(e.operator),this.append(` `),e.all&&this.append(`all `),this.visitNode(e.expression)}visitCreateView(e){this.append(`create `),e.orReplace&&this.append(`or replace `),e.materialized&&this.append(`materialized `),e.temporary&&this.append(`temporary `),this.append(`view `),e.ifNotExists&&this.append(`if not exists `),this.visitNode(e.name),this.append(` `),e.columns&&(this.append(`(`),this.compileList(e.columns),this.append(`) `)),e.as&&(this.append(`as `),this.visitNode(e.as))}visitRefreshMaterializedView(e){this.append(`refresh materialized view `),e.concurrently&&this.append(`concurrently `),this.visitNode(e.name),e.withNoData?this.append(` with no data`):this.append(` with data`)}visitDropView(e){this.append(`drop `),e.materialized&&this.append(`materialized `),this.append(`view `),e.ifExists&&this.append(`if exists `),this.visitNode(e.name),e.cascade&&this.append(` cascade`)}visitGenerated(e){this.append(`generated `),e.always&&this.append(`always `),e.byDefault&&this.append(`by default `),this.append(`as `),e.identity&&this.append(`identity`),e.expression&&(this.append(`(`),this.visitNode(e.expression),this.append(`)`)),e.stored&&this.append(` stored`)}visitDefaultValue(e){this.append(`default `),this.visitNode(e.defaultValue)}visitSelectModifier(e){e.rawModifier?this.visitNode(e.rawModifier):this.append(Em[e.modifier]),e.of&&(this.append(` of `),this.compileList(e.of,`, `))}visitCreateType(e){this.append(`create type `),this.visitNode(e.name),e.enum&&(this.append(` as enum `),this.visitNode(e.enum))}visitDropType(e){this.append(`drop type `),e.ifExists&&this.append(`if exists `),this.visitNode(e.name)}visitExplain(e){this.append(`explain`),(e.options||e.format)&&(this.append(` `),this.append(this.getLeftExplainOptionsWrapper()),e.options&&(this.visitNode(e.options),e.format&&this.append(this.getExplainOptionsDelimiter())),e.format&&(this.append(`format`),this.append(this.getExplainOptionAssignment()),this.append(e.format)),this.append(this.getRightExplainOptionsWrapper()))}visitDefaultInsertValue(e){this.append(`default`)}visitAggregateFunction(e){this.append(e.func),this.append(`(`),e.distinct&&this.append(`distinct `),this.compileList(e.aggregated),e.orderBy&&(this.append(` `),this.visitNode(e.orderBy)),this.append(`)`),e.withinGroup&&(this.append(` within group (`),this.visitNode(e.withinGroup),this.append(`)`)),e.filter&&(this.append(` filter(`),this.visitNode(e.filter),this.append(`)`)),e.over&&(this.append(` `),this.visitNode(e.over))}visitOver(e){this.append(`over(`),e.partitionBy&&(this.visitNode(e.partitionBy),e.orderBy&&this.append(` `)),e.orderBy&&this.visitNode(e.orderBy),this.append(`)`)}visitPartitionBy(e){this.append(`partition by `),this.compileList(e.items)}visitPartitionByItem(e){this.visitNode(e.partitionBy)}visitBinaryOperation(e){this.visitNode(e.leftOperand),this.append(` `),this.visitNode(e.operator),this.append(` `),this.visitNode(e.rightOperand)}visitUnaryOperation(e){this.visitNode(e.operator),this.isMinusOperator(e.operator)||this.append(` `),this.visitNode(e.operand)}isMinusOperator(e){return Al.is(e)&&e.operator===`-`}visitUsing(e){this.append(`using `),this.compileList(e.tables)}visitFunction(e){this.append(e.func),this.append(`(`),this.compileList(e.arguments),this.append(`)`)}visitCase(e){this.append(`case`),e.value&&(this.append(` `),this.visitNode(e.value)),e.when&&(this.append(` `),this.compileList(e.when,` `)),e.else&&(this.append(` else `),this.visitNode(e.else)),this.append(` end`),e.isStatement&&this.append(` case`)}visitWhen(e){this.append(`when `),this.visitNode(e.condition),e.result&&(this.append(` then `),this.visitNode(e.result))}visitJSONReference(e){this.visitNode(e.reference),this.visitNode(e.traversal)}visitJSONPath(e){e.inOperator&&this.visitNode(e.inOperator),this.append(`'$`);for(let t of e.pathLegs)this.visitNode(t);this.append(`'`)}visitJSONPathLeg(e){let t=e.type===`ArrayLocation`;this.append(t?`[`:`.`),this.append(typeof e.value==`string`?this.sanitizeStringLiteral(e.value):String(e.value)),t&&this.append(`]`)}visitJSONOperatorChain(e){for(let t=0,n=e.values.length;t<n;t++)t===n-1?this.visitNode(e.operator):this.append(`->`),this.visitNode(e.values[t])}visitMergeQuery(e){e.with&&(this.visitNode(e.with),this.append(` `)),this.append(`merge `),e.top&&(this.visitNode(e.top),this.append(` `)),this.append(`into `),this.visitNode(e.into),e.using&&(this.append(` `),this.visitNode(e.using)),e.whens&&(this.append(` `),this.compileList(e.whens,` `)),e.returning&&(this.append(` `),this.visitNode(e.returning)),e.output&&(this.append(` `),this.visitNode(e.output)),e.endModifiers?.length&&(this.append(` `),this.compileList(e.endModifiers,` `))}visitMatched(e){e.not&&this.append(`not `),this.append(`matched`),e.bySource&&this.append(` by source`)}visitAddIndex(e){this.append(`add `),e.unique&&this.append(`unique `),this.append(`index `),this.visitNode(e.name),e.columns&&(this.append(` (`),this.compileList(e.columns),this.append(`)`)),e.using&&(this.append(` using `),this.visitNode(e.using))}visitCast(e){this.append(`cast(`),this.visitNode(e.expression),this.append(` as `),this.visitNode(e.dataType),this.append(`)`)}visitFetch(e){this.append(`fetch next `),this.visitNode(e.rowCount),this.append(` rows ${e.modifier}`)}visitOutput(e){this.append(`output `),this.compileList(e.selections)}visitTop(e){this.append(`top(${e.expression})`),e.modifiers&&this.append(` ${e.modifiers}`)}visitOrAction(e){this.append(e.action)}visitCollate(e){this.append(`collate `),this.visitNode(e.collation)}append(e){this.#e+=e}appendValue(e){this.addParameter(e),this.append(this.getCurrentParameterPlaceholder())}getLeftIdentifierWrapper(){return`"`}getRightIdentifierWrapper(){return`"`}getCurrentParameterPlaceholder(){return`$`+this.numParameters}getLeftExplainOptionsWrapper(){return`(`}getExplainOptionAssignment(){return` `}getExplainOptionsDelimiter(){return`, `}getRightExplainOptionsWrapper(){return`)`}sanitizeIdentifier(e){let t=this.getLeftIdentifierWrapper(),n=this.getRightIdentifierWrapper(),r=``;for(let i of e)r+=i,i===t?r+=t:i===n&&(r+=n);return r}sanitizeStringLiteral(e){return e.replace(wm,`''`)}addParameter(e){this.#t.push(e)}appendImmediateValue(e){if(D(e))this.appendStringLiteral(e);else if($c(e)||el(e)||rl(e))this.append(e.toString());else if(tl(e))this.append(`null`);else if(nl(e))this.appendImmediateValue(e.toISOString());else throw Error(`invalid immediate value ${e}`)}appendStringLiteral(e){this.append(`'`),this.append(this.sanitizeStringLiteral(e)),this.append(`'`)}sortSelectModifiers(e){return e.sort((e,t)=>e.modifier&&t.modifier?Dm[e.modifier]-Dm[t.modifier]:1),k(e)}compileColumnAlterations(e){this.compileList(e)}announcesNewColumnDataType(){return!0}},Em=k({ForKeyShare:`for key share`,ForNoKeyUpdate:`for no key update`,ForUpdate:`for update`,ForShare:`for share`,NoWait:`nowait`,SkipLocked:`skip locked`,Distinct:`distinct`}),Dm=k({ForKeyShare:1,ForNoKeyUpdate:1,ForUpdate:1,ForShare:1,NoWait:2,SkipLocked:2,Distinct:0}),Om=k({InnerJoin:`inner join`,LeftJoin:`left join`,RightJoin:`right join`,FullJoin:`full join`,CrossJoin:`cross join`,LateralInnerJoin:`inner join lateral`,LateralLeftJoin:`left join lateral`,LateralCrossJoin:`cross join lateral`,OuterApply:`outer apply`,CrossApply:`cross apply`,Using:`using`}),km=k({raw(e,t=[]){return k({sql:e,query:I.createWithSql(e),parameters:k(t),queryId:J()})}}),Am=class{get supportsCreateIfNotExists(){return!0}get supportsTransactionalDdl(){return!1}get supportsReturning(){return!1}get supportsOutput(){return!1}},jm=`kysely_migration`,Mm=`kysely_migration_lock`;k({__noMigrations__:!0});var Nm=/"/g,Pm=class extends Tm{sanitizeIdentifier(e){return e.replace(Nm,`""`)}},Fm=class{#e;constructor(e){this.#e=e}async getSchemas(){return(await this.#e.selectFrom(`pg_catalog.pg_namespace`).select(`nspname`).$castTo().execute()).map(e=>({name:e.nspname}))}async getTables(e={withInternalKyselyTables:!1}){let t=this.#e.selectFrom(`pg_catalog.pg_attribute as a`).innerJoin(`pg_catalog.pg_class as c`,`a.attrelid`,`c.oid`).innerJoin(`pg_catalog.pg_namespace as ns`,`c.relnamespace`,`ns.oid`).innerJoin(`pg_catalog.pg_type as typ`,`a.atttypid`,`typ.oid`).innerJoin(`pg_catalog.pg_namespace as dtns`,`typ.typnamespace`,`dtns.oid`).select([`a.attname as column`,`a.attnotnull as not_null`,`a.atthasdef as has_default`,`c.relname as table`,`c.relkind as table_type`,`ns.nspname as schema`,`typ.typname as type`,`dtns.nspname as type_schema`,xm`col_description(a.attrelid, a.attnum)`.as(`column_description`),xm`pg_get_serial_sequence(quote_ident(ns.nspname) || '.' || quote_ident(c.relname), a.attname)`.as(`auto_incrementing`)]).where(`c.relkind`,`in`,[`r`,`v`,`p`]).where(`ns.nspname`,`!~`,`^pg_`).where(`ns.nspname`,`!=`,`information_schema`).where(`ns.nspname`,`!=`,`crdb_internal`).where(xm`has_schema_privilege(ns.nspname, 'USAGE')`).where(`a.attnum`,`>=`,0).where(`a.attisdropped`,`!=`,!0).orderBy(`ns.nspname`).orderBy(`c.relname`).orderBy(`a.attnum`).$castTo();e.withInternalKyselyTables||(t=t.where(`c.relname`,`!=`,jm).where(`c.relname`,`!=`,Mm));let n=await t.execute();return this.#t(n)}async getMetadata(e){return{tables:await this.getTables(e)}}#t(e){let t=new Map;for(let n=0,r=e.length;n<r;n++){let r=e[n],{schema:i,table:a}=r,o=`schema:${i};table:${a}`;t.has(o)||t.set(o,k({columns:[],isView:r.table_type===`v`,name:a,schema:i})),t.get(o).columns.push(k({comment:r.column_description??void 0,dataType:r.type,dataTypeSchema:r.type_schema,hasDefaultValue:r.has_default,isAutoIncrementing:r.auto_incrementing!==null,isNullable:!r.not_null,name:r.column}))}return Array.from(t.values())}},Im=BigInt(`3853314791062309107`),Lm=class extends Am{get supportsTransactionalDdl(){return!0}get supportsReturning(){return!0}async acquireMigrationLock(e,t){await xm`select pg_advisory_xact_lock(${xm.lit(Im)})`.execute(e)}async releaseMigrationLock(e,t){}};xm.raw(`scope = 'document' and "index" = 0 and (action->'input'->'protocolVersions') is not null`),xm.raw(`md5((action->'input'->'protocolVersions')::text)`);function Rm(e){return`${e.documentModel.global.id}@${e.version??1}`}function zm(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.reducer==`function`&&typeof t.documentModel?.global?.id==`string`}async function Bm(e){let t=new Map;for(let n of e){if(zm(n)){Vm(t,{module:n,spec:null});continue}for(let e of await Hm(n))Vm(t,e)}let n=[],r=[],i=[];for(let[e,a]of t)n.push(a.module),a.spec?r.push({documentType:a.module.documentModel.global.id,version:String(a.module.version??1),spec:a.spec}):i.push(e);return{modules:n,manifest:r,moduleOnlyKeys:i}}function Vm(e,t){let n=Rm(t.module),r=e.get(n);if(!r){e.set(n,t);return}!r.spec&&t.spec&&(r.spec=t.spec)}async function Hm(e){let t=`filePath`in e,n=t?new URL(`file://${e.filePath}`).href:e.subpath?`${e.packageName}/${e.subpath}`:e.packageName,r=t?{filePath:e.filePath}:{packageName:n},a;try{a=await i(()=>import(n),[])}catch(t){throw Error(`Failed to import document-model source "${Um(e)}"`,{cause:t})}if(e.exportName!==void 0){let t=a[e.exportName];if(!zm(t))throw Error(`Export "${e.exportName}" of document-model source "${Um(e)}" is not a DocumentModelModule`);return[{module:t,spec:{module:{...r,exportName:e.exportName}}}]}let o=[];for(let[e,t]of Object.entries(a))zm(t)&&o.push({module:t,spec:{module:{...r,exportName:e}}});if(o.length===0)throw Error(`Document-model source "${Um(e)}" has no DocumentModelModule exports`);return o}function Um(e){return`filePath`in e?e.filePath:e.subpath?`${e.packageName}/${e.subpath}`:e.packageName}var Wm=class{registry;loader;loadingModels=new Map;failedModelTypes=new Set;broadcastHook=null;modelLoadedHook=null;logger=rt([`reactor`,`document-model-resolver`]);constructor(e,t){this.registry=e,this.loader=t}setBroadcastHook(e){this.broadcastHook=e}setModelLoadedHook(e){this.modelLoadedHook=e}async ensureModelLoaded(e){try{this.registry.getModule(e);return}catch(e){if(!Me.isError(e))throw e}if(this.failedModelTypes.has(e))throw Error(`Document model type previously failed to load: ${e}`);let t=this.loadingModels.get(e);if(t)return t;let n=(async()=>{try{await this.loadRegisterAndBroadcast(e)}catch(t){throw this.failedModelTypes.add(e),t}finally{this.loadingModels.delete(e)}await this.notifyPeersModelLoaded(e)})();return this.loadingModels.set(e,n),n}async loadRegisterAndBroadcast(e){let t=await Bm([await this.loader.load(e)]);if(!t.modules.some(t=>t.documentModel.global.id===e))throw Error(`Loader source resolved no module for document type: ${e}`);let n=this.registry.registerModules(...t.modules);for(let e of n)if(e.status===`error`&&!ze.isError(e.error))throw e.error;if(this.broadcastHook)for(let e of t.manifest)await this.broadcastHook(e)}async notifyPeersModelLoaded(e){if(this.modelLoadedHook)try{await this.modelLoadedHook(e)}catch(t){this.logger.warn(`MODEL_LOADED hook failed: ${e}`,t)}}};new Set(Object.values({malformedStoredOperation:`MALFORMED_STORED_OPERATION`}));function Gm(){let e=new URL(`/assets/entry-D62sYiFV.js`,``+import.meta.url);if(e.protocol!==`file:`)return e.href;let t=decodeURIComponent(e.pathname);return/^\/[A-Za-z]:[/\\]/.test(t)&&(t=t.slice(1)),t}Gm();function Km(e){let{client:t,readModels:n,...r}=e;return{...r,client:t,dispatch:{async execute(e,n,r,i){let a=await t.executeAsync(e,n,r,i);return{id:a.id,status:a.status}}},getReadModel(e){let t=n.find(t=>t.name===e);if(!t)throw Error(`Read model "${e}" not found`);return t}}}var qm=class{client;constructor(e){this.client=e}async executeQuery(e){let t=await this.client.query(e.sql,[...e.parameters]);return t.affectedRows?{numAffectedRows:BigInt(t.affectedRows),rows:t.rows}:{rows:t.rows}}async*streamQuery(e,t){if(!Number.isInteger(t)||t<=0)throw Error(`chunkSize must be a positive integer`);let n=await this.client.query(e.sql,[...e.parameters]);for(let e=0;e<n.rows.length;e+=t)yield{rows:n.rows.slice(e,e+t)}}},Jm=class{constructor(e){this.pgLite=e}createAdapter(){return new Lm}createDriver(){return new Ym(this.pgLite)}createQueryCompiler(){return new Pm}createIntrospector(e){return new Fm(e)}},Ym=class{client;connection;queue=[];constructor(e){this.client=e}async init(){}async acquireConnection(){if(this.client===void 0)throw Error(`PGLite not initialized`);return this.connection===void 0?(this.connection=new qm(this.client),this.connection):new Promise(e=>{this.queue.push(e)})}async releaseConnection(e){if(e!==this.connection)throw Error(`Invalid connection`);let t=this.queue.splice(0,1)[0];if(t===void 0){this.connection=void 0;return}t(this.connection)}async beginTransaction(e,t){t.isolationLevel?await e.executeQuery(km.raw(`start transaction isolation level ${t.isolationLevel}`)):await e.executeQuery(km.raw(`begin`))}async commitTransaction(e){await e.executeQuery(km.raw(`commit`))}async rollbackTransaction(e){await e.executeQuery(km.raw(`rollback`))}async destroy(){this.client=void 0}};async function Xm(e,t,n){let{concurrency:r,signal:i,onSettled:a}=n;if(!Number.isInteger(r)||r<1)throw Error(`concurrency must be a positive integer, got: ${r}`);let o=Array(e.length),s=0;async function c(){for(;;){let n=s++;if(n>=e.length)return;if(i?.aborted){o[n]={index:n,status:`rejected`,error:Zm(i)},a?.(o[n]);continue}try{let r=await t(e[n],n);o[n]={index:n,status:`fulfilled`,value:r}}catch(e){o[n]={index:n,status:`rejected`,error:e}}a?.(o[n])}}let l=Array.from({length:Math.min(r,e.length)},()=>c());return await Promise.all(l),o}function Zm(e){return e.reason??new DOMException(`The operation was aborted`,`AbortError`)}var Qm=class{listener;throttleMs;now;currentStage;loaded=0;total;emittedBytesInStage=!1;lastEmitAt=-1/0;settled=!1;constructor(e){this.listener=e?.onProgress,this.throttleMs=e?.throttleMs??100,this.now=e?.now??(()=>Date.now())}get active(){return this.listener!==void 0}stage(e,t){this.settled||(this.currentStage=e,this.loaded=0,this.total=t?.total,this.emittedBytesInStage=!1,this.emit({stage:e,loaded:0,total:this.total,indeterminate:!0}))}bytes(e,t){this.settled||this.currentStage===void 0||(t!==void 0&&(this.total=t),e>this.loaded&&(this.loaded=e),!(this.emittedBytesInStage&&this.now()-this.lastEmitAt<this.throttleMs)&&(this.emittedBytesInStage=!0,this.emit({stage:this.currentStage,loaded:this.loaded,total:this.total,indeterminate:!1})))}finish(e){if(this.settled)return;this.settled=!0;let t=e?.total??this.total??this.loaded,n=e?.loaded??t;this.emit({stage:`done`,loaded:n,total:t,indeterminate:!1,...e?.deduped?{deduped:!0}:{}})}finishDeduped(){this.finish({loaded:0,total:0,deduped:!0})}fail(){this.settled||(this.settled=!0,this.emit({stage:`error`,loaded:this.loaded,total:this.total,indeterminate:!1}))}emit(e){this.lastEmitAt=this.now(),this.listener?.(e)}};function $m(e,t){if(!t.onBytes&&!t.onDone&&!t.onError)return e;let n=0,r=!1,i=e.getReader();return new ReadableStream({async pull(e){try{let{done:a,value:o}=await i.read();if(r)return;if(a){t.onDone?.(),e.close();return}n+=o.byteLength,t.onBytes?.(n),e.enqueue(o)}catch(n){if(r)return;t.onError?.(n),e.error(n)}},cancel(e){r=!0,i.cancel(e).catch(()=>{}),t.onError?.(e??eh())}},{highWaterMark:0})}function eh(){return new DOMException(`The operation was aborted`,`AbortError`)}function th(e){return e instanceof tt||e instanceof Error&&e.name===`AttachmentAlreadyExists`&&typeof e.hash==`string`&&typeof e.ref==`string`}function nh(e,t){let n=new Date().toISOString();return{hash:e,mimeType:t.mimeType,fileName:t.fileName,sizeBytes:t.sizeBytes,extension:t.extension??null,status:`available`,source:`local`,createdAtUtc:n,lastAccessedAtUtc:n,expiresAtUtc:null}}function rh(e){return new ReadableStream({start(t){t.enqueue(e),t.close()}})}function ih(e,t){if(e?.onProgress||e?.throttleMs!==void 0)return{...e.onProgress?{onProgress:n=>e.onProgress?.({...n,index:t})}:{},...e.throttleMs===void 0?{}:{throttleMs:e.throttleMs}}}function ah(e,t){let n=t?.onItemSettled,r=0,i=0,a=0;return{concurrency:t?.concurrency??4,...t?.signal?{signal:t.signal}:{},...n?{onSettled:t=>{r+=1,t.status===`fulfilled`?i+=1:a+=1,n({settled:r,completed:i,failed:a,total:e})}}:{}}}var oh=class{service;constructor(e){this.service=e}async preprocess(e,t){let n=await e.arrayBuffer(),r=new Uint8Array(n),i=await globalThis.crypto.subtle.digest(`SHA-256`,r),a=Array.from(new Uint8Array(i)).map(e=>e.toString(16).padStart(2,`0`)).join(``),o=$e(a),s=e.size;return{ref:o,hash:a,sizeBytes:s,options:{mimeType:t?.mimeType??e.type,fileName:t?.fileName??(e instanceof File?e.name:`attachment`),clientHash:a,sizeBytes:s},data:rh(r),stream:()=>rh(r)}}async reserveOrDedup(e){try{return{kind:`handle`,handle:await this.service.reserve(e)}}catch(t){if(!th(t))throw t;return{kind:`deduped`,result:{hash:t.hash,ref:t.ref,header:nh(t.hash,e)}}}}async reserve(e,t){let n=await this.reserveOrDedup(e);return n.kind===`deduped`?n.result:t(n.handle)}async upload(e,t){let n=new Qm(t),r=e.signal;try{r?.throwIfAborted();let t;`preprocessed`in e?t=e.preprocessed:(n.stage(`hashing`,{total:e.file.size}),t=await this.preprocess(e.file,{...e.fileName===void 0?{}:{fileName:e.fileName},...e.mimeType===void 0?{}:{mimeType:e.mimeType}}));let i=t.sizeBytes;r?.throwIfAborted(),n.stage(`reserving`);let a=await this.reserveOrDedup(t.options);if(a.kind===`deduped`)return n.finishDeduped(),a.result;r?.throwIfAborted(),n.stage(`uploading`,{total:i});let o={...n.active?{onProgress:(e,t)=>n.bytes(e,t??i)}:{},...r?{signal:r}:{}},s=await a.handle.send(t.stream(),o);return n.finish(),s}catch(e){throw n.fail(),e}}async getWithProgress(e,t){let{header:n,body:r}=await this.service.get(e.ref,{documentId:e.documentId,signal:e.signal});return t.stage(`downloading`,{total:n.sizeBytes}),t.active?{header:n,body:$m(r,{onBytes:e=>t.bytes(e),onDone:()=>t.finish(),onError:()=>t.fail()})}:{header:n,body:r}}async download(e,t){let n=new Qm(t);try{return e.signal?.throwIfAborted(),n.stage(`requesting-download-target`),await this.getWithProgress(e,n)}catch(e){throw n.fail(),e}}async downloadBlob(e,t){let n=new Qm(t);try{e.signal?.throwIfAborted(),n.stage(`requesting-download-target`);let{header:r,body:i}=await this.getWithProgress(e,n),a=i.getReader(),o=[];for(;;){let{done:e,value:t}=await a.read();if(e)break;o.push(t)}let s=new Blob(o,{type:t?.mimeType??r.mimeType});return n.finish(),{blob:s,header:r}}catch(e){throw n.fail(),e}}async saveAttachment(e,t){if(typeof document>`u`)throw Error(`saveAttachment requires a browser environment; use downloadBlob elsewhere`);let{blob:n,header:r}=await this.downloadBlob(e,t),i=URL.createObjectURL(n);try{let e=document.createElement(`a`);e.href=i,e.download=t?.fileName??r.fileName,e.click()}finally{URL.revokeObjectURL(i)}}async downloadObjectUrl(e,t){let{blob:n,header:r}=await this.downloadBlob(e,t),i=URL.createObjectURL(n),a=!1;return{url:i,header:r,revoke:()=>{a||(a=!0,URL.revokeObjectURL(i))}}}async getShareLink(e){e.signal?.throwIfAborted();let t=await this.service.getDownloadTarget(e.ref,{documentId:e.documentId,...e.expiresIn===void 0?{}:{expiresIn:e.expiresIn},...e.signal===void 0?{}:{signal:e.signal}});if(t.kind!==`presigned-get`)throw Error(`Public share links require a presigned-capable storage backend (S3); this server answered with an authenticated target`);return{url:t.url,expiresAtUtc:t.expiresAtUtc}}uploadMany(e,t){return Xm(e,(e,n)=>this.upload(e,ih(t,n)),ah(e.length,t))}downloadMany(e,t){return Xm(e,(e,n)=>this.download(e,ih(t,n)),ah(e.length,t))}};function sh(e){return new oh(e)}n(((e,t)=>{t.exports=function(e,t){t||={},typeof t==`function`&&(t={cmp:t});var n=typeof t.cycles==`boolean`&&t.cycles,r=t.cmp&&(function(e){return function(t){return function(n,r){return e({key:n,value:t[n]},{key:r,value:t[r]})}}})(t.cmp),i=[];return(function e(t){if(t&&t.toJSON&&typeof t.toJSON==`function`&&(t=t.toJSON()),t!==void 0){if(typeof t==`number`)return isFinite(t)?``+t:`null`;if(typeof t!=`object`)return JSON.stringify(t);var a,o;if(Array.isArray(t)){for(o=`[`,a=0;a<t.length;a++)a&&(o+=`,`),o+=e(t[a])||`null`;return o+`]`}if(t===null)return`null`;if(i.indexOf(t)!==-1){if(n)return JSON.stringify(`__cycle__`);throw TypeError(`Converting circular structure to JSON`)}var s=i.push(t)-1,c=Object.keys(t).sort(r&&r(t));for(o=``,a=0;a<c.length;a++){var l=c[a],u=e(t[l]);u&&(o&&(o+=`,`),o+=JSON.stringify(l)+`:`+u)}return i.splice(s,1),`{`+o+`}`}})(e)}}))();function ch(e,t){let n=new Uint8Array(e.length+1);return n[0]=2+(t[t.length-1]&1),n.set(e,1),n}async function lh({publicKey:e}){let t=await globalThis.crypto.subtle.exportKey(`raw`,e);return ch(new Uint8Array(t.slice(1,33)),new Uint8Array(t.slice(33,65)))}function uh(e){return`did:key:z${Ls(uo([new Uint8Array(Ua.default.encode(4608)),e]),`base58btc`)}`}var dh={name:`ECDSA`,namedCurve:`P-256`},fh={name:`ECDSA`,namedCurve:`P-256`,hash:`SHA-256`};async function ph(e){return uh(await lh(e))}async function mh(e,t){return{publicKey:await t.exportKey(`jwk`,e.publicKey),privateKey:await t.exportKey(`jwk`,e.privateKey)}}async function hh(e,t,n=dh){return{publicKey:await t.importKey(`jwk`,e.publicKey,n,!0,[`verify`]),privateKey:await t.importKey(`jwk`,e.privateKey,n,!0,[`sign`])}}async function gh(e,t=dh){return e.generateKey(t,!0,[`sign`,`verify`])}var _h=class e{#e;#t;#n;did;chainId;static algorithm=dh;static signAlgorithm=fh;constructor(e,t,n,r,i=1){this.#n=e,this.#e=t,this.#t=n,this.did=r,this.chainId=i}get publicKey(){return this.#t.publicKey}async getBearerToken(e,t){return await oc(this.chainId,wn,e||this.did,this.issuer,t)}async removeDid(){await this.#n.removeKeyPair()}#r(e){return Is(e,`utf-8`)}async sign(t){let n=typeof t==`string`?this.#r(t):t,r=await this.#e.sign(e.signAlgorithm,this.#t.privateKey,n.buffer);return new Uint8Array(r)}async verify(e,t){return this.#e.verify({name:`ECDSA`,hash:`SHA-256`},this.#t.publicKey,t.buffer,e.buffer)}get issuer(){return{did:this.did,signer:async e=>Ls(await this.sign(typeof e==`string`?new TextEncoder().encode(e):e),`base64url`),alg:`ES256`}}},vh=class{keyPairStorage;subtleCrypto;chainId;withKeyPairStorage(e){return this.keyPairStorage=e,this}withSubtleCrypto(e){return this.subtleCrypto=e,this}withChainId(e){return this.chainId=e,this}async build(){if(!this.keyPairStorage)throw Error(`KeyPairStorage is required. Use withKeyPairStorage() to set it.`);let e=this.subtleCrypto??globalThis.crypto.subtle,t=await this.#e(e,this.keyPairStorage),n=await ph(t);return new _h(this.keyPairStorage,e,t,n,this.chainId)}async#e(e,t){let n=await t.loadKeyPair();if(n)return hh(n,e);let r=await gh(e),i=await mh(r,e);return await t.saveKeyPair(i),r}},yh=class extends Error{constructor(){super(`Invalid signature`)}},bh=class{crypto;appName;user;app;constructor(e,t,n){this.crypto=e,this.appName=t,this.user=n,this.app={key:this.crypto.did,name:this.appName}}get publicKey(){return this.crypto.publicKey}async sign(e){return this.crypto.sign(e)}async verify(e,t){if(!await this.crypto.verify(e,t))throw new yh}async signAction(e,t,n){let r=e.context?.prevOpHash??``;return this._signAction(e,t,r,n)}async signActionWithResultingState(e,t,n,r){let i=`${e.context?.prevOpHash??``}:${n}`;return this._signAction(e,t,i,r)}async signActionLegacy(e,t){if(t?.aborted)throw Error(`Signing aborted`);let n=[(new Date().getTime()/1e3).toFixed(0),this.crypto.did,await this.hashAction(e),e.context?.prevOpHash??``],r=await this.crypto.sign(this.buildSignatureMessage(n));if(t?.aborted)throw Error(`Signing aborted`);return[...n,`0x${this.arrayBufferToHex(r)}`]}async _signAction(e,t,n,r){if(r?.aborted)throw Error(`Signing aborted`);let i=await Ht({action:e,target:t,signer:Bt(this),sign:e=>this.crypto.sign(e),previousStateHash:n});if(r?.aborted)throw Error(`Signing aborted`);return i}async hashAction(e){let t=[e.scope,e.type,JSON.stringify(e.input)].join(``),n=new TextEncoder().encode(t),r=await crypto.subtle.digest(`SHA-256`,n);return this.arrayBufferToBase64(r)}buildSignatureMessage(e){let t=e.join(``),n=`Signed Operation:
|
|
117
117
|
`+t.length.toString();return new TextEncoder().encode(n+t)}arrayBufferToHex(e){let t=e instanceof Uint8Array?e:new Uint8Array(e);return Array.from(t).map(e=>e.toString(16).padStart(2,`0`)).join(``)}arrayBufferToBase64(e){let t=new Uint8Array(e),n=``;for(let e=0;e<t.length;e++)n+=String.fromCharCode(t[e]);return btoa(n)}},xh=`renownKeyDB`,Sh=`keyPairs`,Ch=`keyPair`,wh=class e{#e;constructor(e){this.#e=e}static async create(t=xh){let n=await e.#t(t);return new e(n)}static#t(e){return new Promise((t,n)=>{let r=indexedDB.open(e);r.onupgradeneeded=e=>{let t=e.target.result;t.objectStoreNames.contains(Sh)||t.createObjectStore(Sh)},r.onsuccess=()=>{let i=r.result;if(i.objectStoreNames.contains(Sh))t(i);else{let r=i.version;i.close();let a=indexedDB.open(e,r+1);a.onupgradeneeded=e=>{let t=e.target.result;t.objectStoreNames.contains(Sh)||t.createObjectStore(Sh)},a.onsuccess=()=>t(a.result),a.onerror=()=>n(a.error)}},r.onerror=()=>n(r.error)})}#n(e=`readwrite`){return this.#e.transaction(Sh,e).objectStore(Sh)}async saveKeyPair(e){let t=this.#n().put(e,Ch);return new Promise((e,n)=>{t.onsuccess=()=>e(),t.onerror=()=>n(Error(`Failed to save key pair`))})}async loadKeyPair(){let e=this.#n(`readonly`).get(Ch);return new Promise((t,n)=>{e.onsuccess=()=>{let n=e.result;t(n)},e.onerror=()=>n(Error(`Failed to load key pair`))})}async removeKeyPair(){let e=this.#n().delete(Ch);return new Promise((t,n)=>{e.onsuccess=()=>t(),e.onerror=()=>n(Error(`Failed to remove key pair`))})}},Th=class{},Eh=class extends Th{data=new Map;get(e){return this.data.get(e)}set(e,t){t===void 0?this.data.delete(e):this.data.set(e,t)}delete(e){this.data.delete(e)}},Dh=class extends Eh{};function Oh(e){if(e)return{address:e.address,networkId:e.networkId,chainId:e.chainId}}var kh=class{#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=`initial`;constructor(e,t,n,r,i=Cn,a,o,s=1){this.#t=e,this.#n=t,this.#e=i,this.#i=n,this.#r=r,this.#o=a,this.#s=o,this.#c=s;let c=this.user;this.#a=new bh(n,this.#r,Oh(c)),c&&(this.#l=`authorized`),this.on(`user`,e=>{this.#a.user=Oh(e)})}get baseUrl(){return this.#e}get chainId(){return this.#c}get user(){return this.#t.get(`user`)}get status(){return this.#l}get signer(){return this.#a}get crypto(){return this.#i}get did(){return this.#i.did}get profileFetcher(){return this.#o}#u(e){this.#l=e,this.#n.emit(`status`,e)}#d(e){e?this.#t.set(`user`,e):this.#t.delete(`user`),this.#n.emit(`user`,e)}async login(e){this.#u(`checking`);try{let t=rc(e),n=await this.#m(t.address,t.chainId,this.#i.did);if(!n)throw this.#d(void 0),Error(`Credential not found`);return await this.#p(e,t,n)}catch(e){throw this.#d(void 0),this.#u(`not-authorized`),e}}async signIn(e){if(!this.#s)throw new mc;let{address:t,chainId:n,signTypedData:r,username:i,userImage:a,expiresInDays:o}=e;if(n!==this.#c)throw Error(`Renown signIn: wallet is on chain ${n}, but this app issues credentials on chain ${this.#c}. Switch networks and retry — signing here would create a separate identity for the same address.`);this.#u(`checking`);try{let e=await Ic({signTypedData:r,address:t,chainId:n,app:this.#r,appId:this.did,expiresInDays:o});await this.#s.issueCredential(e);let s=`did:pkh:${wn}:${n}:${t.toLowerCase()}`,c=await this.#p(s,rc(s),e);return(i!==void 0||a!==void 0)&&this.#f(t,{username:i,userImage:a}).catch(()=>void 0),c}catch(e){throw this.#d(void 0),this.#u(`not-authorized`),e}}async#f(e,t){if(!this.#s)return;let n=await this.#i.getBearerToken(e);for(let r=1;r<=5;r++)try{await this.#s.upsertUserProfile(e,t,{token:n});return}catch(e){if(r===5)throw e;await new Promise(e=>setTimeout(e,600))}}async#p(e,t,n){if(n.issuer.id!==e||n.credentialSubject.id!==this.did)throw Error(`Invalid credential`);let r=n.proof.eip712?.domain?n:{...n,proof:{...n.proof,eip712:{domain:{version:`1`,chainId:t.chainId},types:Tn,primaryType:`VerifiableCredential`}}};if(n.issuer.ethereumAddress.toLowerCase()!==t.address.toLowerCase()||r.proof.eip712.domain.chainId!==t.chainId||!await Rc(r))throw Error(`Invalid credential signature`);let i={...t,address:n.issuer.ethereumAddress,did:e,credential:r};return this.#d(i),this.#u(`authorized`),this.#o&&this.#o(i,this.#e).then(e=>{e&&this.user?.address===i.address&&this.user.chainId===i.chainId&&this.#d({...this.user,profile:e,ens:{name:e.username??void 0,avatarUrl:e.userImage??void 0}})}).catch(console.error),i}logout(){return this.#d(void 0),this.#u(`initial`),Promise.resolve()}async revalidate(){let e=this.user;if(!e)return!1;try{return await this.#m(e.address,e.chainId,this.#i.did)?(await this.refreshProfile(),!0):(await this.logout(),!1)}catch{return!0}}async refreshProfile(){let e=this.user;if(!e||!this.#o)return!1;try{let t=await this.#o(e,this.#e);if(!t)return!1;let n=this.user;return!n||n.address!==e.address||n.chainId!==e.chainId||n.profile!==void 0&&n.profile.documentId===t.documentId&&n.profile.username===t.username&&n.profile.userImage===t.userImage?!1:(this.#d({...n,profile:t,ens:{name:t.username??void 0,avatarUrl:t.userImage??void 0}}),!0)}catch{return!1}}on(e,t){return this.#n.on(e,t)}async#m(e,t,n){if(this.#s)return this.#s.getCredential({address:e,chainId:t,appDid:n});if(!this.#e)throw Error(`RENOWN_URL is not set`);let r=new URL(`/api/auth/credential?address=${encodeURIComponent(e)}&chainId=${encodeURIComponent(t)}&connectId=${encodeURIComponent(n)}&appId=${encodeURIComponent(n)}`,this.#e),i=await fetch(r,{method:`GET`});if(i.ok)return(await i.json()).credential;throw Error(`Failed to get credential: ${i.status}`)}async verifyBearerToken(e){return ic(e)}async getBearerToken(e){if(!this.user)throw Error(`User not found`);return this.#i.getBearerToken(this.user.address,e)}},Ah=class{#e=new Map;on(e,t){return this.#e.has(e)||this.#e.set(e,new Set),this.#e.get(e).add(t),()=>{this.#e.get(e)?.delete(t)}}emit(e,t){this.#e.get(e)?.forEach(e=>e(t))}},jh=async(e,t)=>{try{let n=await fetch(`${t.replace(/\/+$/,``)}/api/profile`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({ethAddress:e.address})});return n.ok?(await n.json()).profile??void 0:void 0}catch{return}},Mh=class e{#e;#t;#n;#r;#i;#a;#o;#s;#c;constructor(e){this.#e=e}withStorage(e){return this.#t=e,this}withEventEmitter(e){return this.#n=e,this}withCrypto(e){return this.#r=e,this}withKeyPairStorage(e){return this.#i=e,this}withBaseUrl(e){return this.#a=e,this}withSwitchboardUrl(e){return this.#o=e,this}withChainId(e){return this.#c=e,this}withProfileFetcher(e){return this.#s=e,this}async build(){if(!this.#r&&!this.#i)throw Error(`Either crypto or keyPairStorage is required. Use withCrypto() or withKeyPairStorage() to set one.`);let e=this.#c??1,t=this.#r??await new vh().withKeyPairStorage(this.#i).withChainId(e).build();t.chainId!==void 0&&t.chainId!==e&&console.warn(`Renown: the supplied crypto signs bearer tokens for chain ${t.chainId}, but credentials are issued on chain ${e}.`);let n=this.#t??new Dh,r=this.#n??new Ah,i=this.#a??`https://www.renown.id`,a=await pc({switchboardUrl:this.#o,baseUrl:i}),o=a?new Fc(a):void 0,s=this.#s??(o?o.profileFetcher:jh);return new kh(n,r,t,this.#e,i,s,o,e)}static from(t){let n=new e(t.appName);return t.storage&&n.withStorage(t.storage),t.eventEmitter&&n.withEventEmitter(t.eventEmitter),t.crypto&&n.withCrypto(t.crypto),t.keyPairStorage&&n.withKeyPairStorage(t.keyPairStorage),t.baseUrl&&n.withBaseUrl(t.baseUrl),t.switchboardUrl&&n.withSwitchboardUrl(t.switchboardUrl),t.profileFetcher&&n.withProfileFetcher(t.profileFetcher),t.chainId!==void 0&&n.withChainId(t.chainId),n}},Nh=class extends CustomEvent{constructor(e,t){super(e,{detail:t})}},Ph=class{#e=new EventTarget;on(e,t){let n=e=>{e instanceof Nh&&t(e.detail)};return this.#e.addEventListener(e.toString(),n),()=>{this.#e.removeEventListener(e.toString(),n)}}emit(e,t){let n=new Nh(e.toString(),t);this.#e.dispatchEvent(n)}},Fh=class extends Th{namespace;constructor(e,t){super(),this.namespace=`${t}:${e}`}#e(e){return`${this.namespace}:${e.toString()}`}get(e){let t=localStorage.getItem(this.#e(e));if(t)return JSON.parse(t)}set(e,t){return t?localStorage.setItem(this.#e(e),JSON.stringify(t)):localStorage.removeItem(this.#e(e))}delete(e){return localStorage.removeItem(this.#e(e))}},Ih=class extends Fh{},Lh=class extends Ph{},Rh=class extends Mh{#e;#t;#n;constructor(e,t={}){super(e),this.#e=t.basename,this.#t=t.keyDbName,this.#n=t.revalidate??`always`,this.withStorage(new Ih(`renown`,this.#e)),this.withEventEmitter(new Lh),t.baseUrl&&this.withBaseUrl(t.baseUrl),t.switchboardUrl&&this.withSwitchboardUrl(t.switchboardUrl),t.chainId!==void 0&&this.withChainId(t.chainId)}withBasename(e){return this.#e=e,this.withStorage(new Ih(`renown`,this.#e)),this}withKeyDbName(e){return this.#t=e,this}async build(){let e=await wh.create(this.#t);this.withKeyPairStorage(e);let t=await super.build();return t.user&&(this.#n===`always`?t.revalidate():t.refreshProfile()),t}},zh=Object.defineProperty,Bh=Object.defineProperties,Vh=Object.getOwnPropertyDescriptors,Hh=Object.getOwnPropertySymbols,Uh=Object.prototype.hasOwnProperty,Wh=Object.prototype.propertyIsEnumerable,Gh=(e,t,n)=>t in e?zh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Kh=(e,t)=>{for(var n in t||={})Uh.call(t,n)&&Gh(e,n,t[n]);if(Hh)for(var n of Hh(t))Wh.call(t,n)&&Gh(e,n,t[n]);return e},qh=(e,t)=>Bh(e,Vh(t)),Jh=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),Yh=class{constructor(){this.data=new Map}set(e,t){this.data.set(e,t)}get(e){return this.data.get(e)}has(e){return this.data.has(e)}delete(e){return this.data.delete(e)}clear(){this.data.clear()}},Xh={STATIC:`STATIC`,DEFAULT:`DEFAULT`,TARGETING_MATCH:`TARGETING_MATCH`,SPLIT:`SPLIT`,CACHED:`CACHED`,DISABLED:`DISABLED`,UNKNOWN:`UNKNOWN`,STALE:`STALE`,ERROR:`ERROR`},Zh=(e=>(e.PROVIDER_NOT_READY=`PROVIDER_NOT_READY`,e.PROVIDER_FATAL=`PROVIDER_FATAL`,e.FLAG_NOT_FOUND=`FLAG_NOT_FOUND`,e.PARSE_ERROR=`PARSE_ERROR`,e.TYPE_MISMATCH=`TYPE_MISMATCH`,e.TARGETING_KEY_MISSING=`TARGETING_KEY_MISSING`,e.INVALID_CONTEXT=`INVALID_CONTEXT`,e.GENERAL=`GENERAL`,e))(Zh||{}),Qh=class e extends Error{constructor(t,n){super(t),Object.setPrototypeOf(this,e.prototype),this.name=`OpenFeatureError`,this.cause=n?.cause}},$h=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`FlagNotFoundError`,this.code=`FLAG_NOT_FOUND`}},eg=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`GeneralError`,this.code=`GENERAL`}},tg=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`InvalidContextError`,this.code=`INVALID_CONTEXT`}},ng=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`ParseError`,this.code=`PARSE_ERROR`}},rg=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`ProviderFatalError`,this.code=`PROVIDER_FATAL`}},ig=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`ProviderNotReadyError`,this.code=`PROVIDER_NOT_READY`}},ag=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`TargetingKeyMissingError`,this.code=`TARGETING_KEY_MISSING`}},og=class e extends Qh{constructor(t,n){super(t,n),Object.setPrototypeOf(this,e.prototype),this.name=`TypeMismatchError`,this.code=`TYPE_MISMATCH`}},sg=(e,t)=>{switch(e){case`FLAG_NOT_FOUND`:return new $h(t);case`PARSE_ERROR`:return new ng(t);case`TYPE_MISMATCH`:return new og(t);case`TARGETING_KEY_MISSING`:return new ag(t);case`INVALID_CONTEXT`:return new tg(t);case`PROVIDER_NOT_READY`:return new ig(t);case`PROVIDER_FATAL`:return new rg(t);default:return new eg(t)}},cg=(e=>(e.NOT_READY=`NOT_READY`,e.READY=`READY`,e.ERROR=`ERROR`,e.STALE=`STALE`,e.FATAL=`FATAL`,e.RECONCILING=`RECONCILING`,e))(cg||{}),lg=(e=>(e.Ready=`PROVIDER_READY`,e.Error=`PROVIDER_ERROR`,e.ConfigurationChanged=`PROVIDER_CONFIGURATION_CHANGED`,e.ContextChanged=`PROVIDER_CONTEXT_CHANGED`,e.Reconciling=`PROVIDER_RECONCILING`,e.Stale=`PROVIDER_STALE`,e))(lg||{}),ug={READY:`PROVIDER_READY`,ERROR:`PROVIDER_ERROR`,FATAL:`PROVIDER_ERROR`,STALE:`PROVIDER_STALE`,RECONCILING:`PROVIDER_RECONCILING`,NOT_READY:void 0},dg=(e,t)=>!t&&e===`PROVIDER_READY`||ug[t]===e,fg=class{error(...e){console.error(...e)}warn(...e){console.warn(...e)}info(){}debug(){}},pg=[`error`,`warn`,`info`,`debug`],mg=class{constructor(e){this.fallbackLogger=new fg;try{for(let t of pg)if(!e[t]||typeof e[t]!=`function`)throw Error(`The provided logger is missing the ${t} method.`);this.logger=e}catch(e){console.error(e),console.error(`Falling back to the default logger.`),this.logger=this.fallbackLogger}}error(...e){this.log(`error`,...e)}warn(...e){this.log(`warn`,...e)}info(...e){this.log(`info`,...e)}debug(...e){this.log(`debug`,...e)}log(e,...t){try{this.logger[e](...t)}catch{this.fallbackLogger[e](...t)}}},hg=class{constructor(e){this.globalLogger=e,this._handlers={PROVIDER_CONFIGURATION_CHANGED:new WeakMap,PROVIDER_CONTEXT_CHANGED:new WeakMap,PROVIDER_READY:new WeakMap,PROVIDER_ERROR:new WeakMap,PROVIDER_STALE:new WeakMap,PROVIDER_RECONCILING:new WeakMap}}emit(e,t){this.eventEmitter.emit(e,t)}addHandler(e,t){let n=e=>Jh(this,null,function*(){var n;try{yield t(e)}catch(e){(n=this._logger)==null||n.error(`Error running event handler:`,e)}}),r=this._handlers[e].get(t);this._handlers[e].set(t,[...r||[],n]),this.eventEmitter.on(e,n)}removeHandler(e,t){let n=this._handlers[e].get(t);if(n){let t=n.pop();t&&this.eventEmitter.removeListener(e,t)}}removeAllHandlers(e){e?this.eventEmitter.removeAllListeners(e):this.eventEmitter.removeAllListeners()}getHandlers(e){return this.eventEmitter.listeners(e)}setLogger(e){return this._eventLogger=new mg(e),this}get _logger(){return this._eventLogger??this.globalLogger?.call(this)}};function gg(e){return typeof e==`string`}function _g(e){return gg(e)?e:void 0}function vg(e){return typeof e==`object`}function yg(e){return vg(e)?e:void 0}function bg(e){return e!=null}var xg=class{constructor(e,t,n){this._provider=e,this._status=t,this._pendingContextChanges=0;var r,i,a;(r=e.events)==null||r.addHandler(`PROVIDER_READY`,()=>{this._status=n.READY}),(i=e.events)==null||i.addHandler(`PROVIDER_STALE`,()=>{this._status=n.STALE}),(a=e.events)==null||a.addHandler(`PROVIDER_ERROR`,e=>{this._status=e?.errorCode===`PROVIDER_FATAL`?n.FATAL:n.ERROR})}get provider(){return this._provider}set provider(e){this._provider=e}get status(){return this._status}set status(e){this._status=e}get allContextChangesSettled(){return this._pendingContextChanges===0}incrementPendingContextChanges(){this._pendingContextChanges++}decrementPendingContextChanges(){this._pendingContextChanges--}},Sg=class{constructor(e){this._hooks=[],this._context={},this._logger=new fg,this._clientEventHandlers=new Map,this._domainScopedContext=new Map,this._clientEvents=new Map,this._runsOn=e}addHooks(...e){return this._hooks=[...this._hooks,...e],this}getHooks(){return this._hooks}clearHooks(){return this._hooks=[],this}setLogger(e){return this._logger=new mg(e),this}get providerMetadata(){return this.getProviderMetadata()}getProviderMetadata(e){return this.getProviderForClient(e).metadata}addHandler(e,t,n){[...new Map([[void 0,this._defaultProvider]]),...this._domainScopedProviders].forEach(n=>{var r;let i=n[0],a=n[1].provider,o=n[1].status;if(dg(e,o))try{t({domain:i,providerName:a.metadata.name})}catch(e){(r=this._logger)==null||r.error(`Error running event handler:`,e)}}),this._apiEmitter.addHandler(e,t),n?.signal&&typeof n.signal.addEventListener==`function`&&n.signal.addEventListener(`abort`,()=>{this.removeHandler(e,t)})}removeHandler(e,t){this._apiEmitter.removeHandler(e,t)}clearHandlers(){this._apiEmitter.removeAllHandlers()}getHandlers(e){return this._apiEmitter.getHandlers(e)}setAwaitableProvider(e,t){var n,r;let i=_g(e),a=yg(e)??yg(t);if(!a){this._logger.debug(`No provider defined, ignoring setProvider call`);return}let o=this.getProviderForClient(i),s=a.metadata.name;if(o===a){this._logger.debug(`Provider is already set, ignoring setProvider call`);return}if(!a.runsOn)this._logger.debug(`Provider '${a.metadata.name}' has not defined its intended use.`);else if(a.runsOn!==this._runsOn)throw new eg(`Provider '${a.metadata.name}' is intended for use on the ${a.runsOn}.`);let c=this.getAssociatedEventEmitters(i),l,u=new xg(a,this._statusEnumType.NOT_READY,this._statusEnumType);return typeof a.initialize==`function`&&!this.allProviders.includes(a)?l=((a.initialize?.call(a,i?this._domainScopedContext.get(i)??this._context:this._context))?.then(()=>{var e;u.status=this._statusEnumType.READY,this.getAssociatedEventEmitters(i).forEach(e=>{e?.emit(`PROVIDER_READY`,{clientName:i,domain:i,providerName:s})}),(e=this._apiEmitter)==null||e.emit(`PROVIDER_READY`,{clientName:i,domain:i,providerName:s})}))?.catch(e=>{var t;throw e?.code===`PROVIDER_FATAL`?u.status=this._statusEnumType.FATAL:u.status=this._statusEnumType.ERROR,this.getAssociatedEventEmitters(i).forEach(t=>{t?.emit(`PROVIDER_ERROR`,{clientName:i,domain:i,providerName:s,message:e?.message})}),(t=this._apiEmitter)==null||t.emit(`PROVIDER_ERROR`,{clientName:i,domain:i,providerName:s,message:e?.message}),e}):(u.status=this._statusEnumType.READY,c.forEach(e=>{e?.emit(`PROVIDER_READY`,{clientName:i,domain:i,providerName:s})}),(n=this._apiEmitter)==null||n.emit(`PROVIDER_READY`,{clientName:i,domain:i,providerName:s})),i?this._domainScopedProviders.set(i,u):this._defaultProvider=u,this.transferListeners(o,a,i,c),this.allProviders.includes(o)||(r=(o?.onClose)?.call(o))==null||r.catch(e=>{this._logger.error(`error closing provider: ${e?.message}, ${e?.stack}`)}),l}getProviderForClient(e){return e?this._domainScopedProviders.get(e)?.provider??this._defaultProvider.provider:this._defaultProvider.provider}buildAndCacheEventEmitterForClient(e){let t=this._clientEvents.get(e);if(t)return t;let n=this._createEventEmitter();this._clientEvents.set(e,n);let r=this.getProviderForClient(e);return Object.values(lg).forEach(t=>r.events?.addHandler(t,i=>Jh(this,null,function*(){n.emit(t,qh(Kh({},i),{clientName:e,domain:e,providerName:r.metadata.name}))}))),n}getUnboundEmitters(){let e=[...this._domainScopedProviders.keys()];return[...[...this._clientEvents.keys()].filter(bg).filter(t=>!e.includes(t)).map(e=>this._clientEvents.get(e)),this._clientEvents.get(void 0)].filter(bg)}getAssociatedEventEmitters(e){return e?[this.buildAndCacheEventEmitterForClient(e)]:this.getUnboundEmitters()}transferListeners(e,t,n,r){var i;(i=this._clientEventHandlers.get(n))==null||i.forEach(t=>e.events?.removeHandler(...t));let a=Object.values(lg).map(e=>[e,i=>Jh(this,null,function*(){r.forEach(r=>{r?.emit(e,qh(Kh({},i),{clientName:n,domain:n,providerName:t.metadata.name}))}),this._apiEmitter.emit(e,qh(Kh({},i),{clientName:n,domain:n,providerName:t.metadata.name}))})]);this._clientEventHandlers.set(n,a),a.forEach(e=>t.events?.addHandler(...e))}close(){return Jh(this,null,function*(){var e;try{yield((e=this==null?void 0:this._defaultProvider.provider)?.onClose)?.call(e)}catch(e){this.handleShutdownError(this._defaultProvider.provider,e)}let t=Array.from(this._domainScopedProviders);yield Promise.all(t.map(e=>Jh(this,[e],function*([,e]){var t;try{yield(e==null?void 0:(t=e.provider).onClose)?.call(t)}catch(t){this.handleShutdownError(e?.provider,t)}})))})}clearProvidersAndSetDefault(e){return Jh(this,null,function*(){try{yield this.close()}catch{this._logger.error(`Unable to cleanly close providers. Resetting to the default configuration.`)}finally{this._domainScopedProviders.clear(),this._defaultProvider=new xg(e,this._statusEnumType.NOT_READY,this._statusEnumType)}})}get allProviders(){return[...[...this._domainScopedProviders.values()].map(e=>e.provider),this._defaultProvider.provider]}handleShutdownError(e,t){this._logger.error(`Error during shutdown of provider ${e.metadata.name}: ${t}`),this._logger.error(t?.stack)}},Cg=Object.create,wg=Object.defineProperty,Tg=Object.defineProperties,Eg=Object.getOwnPropertyDescriptor,Dg=Object.getOwnPropertyDescriptors,Og=Object.getOwnPropertyNames,kg=Object.getOwnPropertySymbols,Ag=Object.getPrototypeOf,jg=Object.prototype.hasOwnProperty,Mg=Object.prototype.propertyIsEnumerable,Ng=Reflect.get,Pg=(e,t,n)=>t in e?wg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Fg=(e,t)=>{for(var n in t||={})jg.call(t,n)&&Pg(e,n,t[n]);if(kg)for(var n of kg(t))Mg.call(t,n)&&Pg(e,n,t[n]);return e},Ig=(e,t)=>Tg(e,Dg(t)),Lg=(e,t)=>function(){return t||(0,e[Og(e)[0]])((t={exports:{}}).exports,t),t.exports},Rg=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of Og(t))!jg.call(e,i)&&i!==n&&wg(e,i,{get:()=>t[i],enumerable:!(r=Eg(t,i))||r.enumerable});return e},zg=(e,t,n)=>(n=e==null?{}:Cg(Ag(e)),Rg(t||!e||!e.__esModule?wg(n,`default`,{value:e,enumerable:!0}):n,e)),Bg=(e,t,n)=>Ng(Ag(e),n,t),Vg=(e,t,n)=>new Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),Hg=Lg({"../../node_modules/eventemitter3/index.js"(e,t){var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}}),Ug=`No-op`,Wg=new class{constructor(){this.metadata={name:`No-op Provider`}}resolveBooleanEvaluation(e,t){return this.noOp(t)}resolveStringEvaluation(e,t){return this.noOp(t)}resolveNumberEvaluation(e,t){return this.noOp(t)}resolveObjectEvaluation(e,t){return this.noOp(t)}noOp(e){return{value:e,reason:Ug}}},Gg=zg(Hg(),1),Kg=class extends hg{constructor(){super(),this.eventEmitter=new Gg.default}},qg=class{constructor(e,t,n,r,i,a,o){this.providerAccessor=e,this.providerStatusAccessor=t,this.emitterAccessor=n,this.apiContextAccessor=r,this.apiHooksAccessor=i,this.globalLogger=a,this.options=o,this._hooks=[]}get metadata(){return{name:this.options.domain??this.options.name,domain:this.options.domain??this.options.name,version:this.options.version,providerMetadata:this.providerAccessor().metadata}}get providerStatus(){return this.providerStatusAccessor()}addHandler(e,t,n){var r;if(this.emitterAccessor().addHandler(e,t),dg(e,this.providerStatus))try{t({clientName:this.metadata.name,domain:this.metadata.domain,providerName:this._provider.metadata.name})}catch(e){(r=this._logger)==null||r.error(`Error running event handler:`,e)}n?.signal&&typeof n.signal.addEventListener==`function`&&n.signal.addEventListener(`abort`,()=>{this.removeHandler(e,t)})}removeHandler(e,t){this.emitterAccessor().removeHandler(e,t)}getHandlers(e){return this.emitterAccessor().getHandlers(e)}setLogger(e){return this._clientLogger=new mg(e),this}addHooks(...e){return this._hooks=[...this._hooks,...e],this}getHooks(){return this._hooks}clearHooks(){return this._hooks=[],this}getBooleanValue(e,t,n){return this.getBooleanDetails(e,t,n).value}getBooleanDetails(e,t,n){return this.evaluate(e,this._provider.resolveBooleanEvaluation,t,`boolean`,n)}getStringValue(e,t,n){return this.getStringDetails(e,t,n).value}getStringDetails(e,t,n){return this.evaluate(e,this._provider.resolveStringEvaluation,t,`string`,n)}getNumberValue(e,t,n){return this.getNumberDetails(e,t,n).value}getNumberDetails(e,t,n){return this.evaluate(e,this._provider.resolveNumberEvaluation,t,`number`,n)}getObjectValue(e,t,n){return this.getObjectDetails(e,t,n).value}getObjectDetails(e,t,n){return this.evaluate(e,this._provider.resolveObjectEvaluation,t,`object`,n)}track(e,t={}){var n;try{if(this.shortCircuitIfNotReady(),typeof this._provider.track==`function`){let r=Object.freeze(Fg({},this.apiContextAccessor((this==null?void 0:this.options)?.domain)));return(n=this._provider).track?.call(n,e,r,t)}this._logger.debug(`Provider does not support the track function; will no-op.`)}catch(e){this._logger.debug(`Error recording tracking event.`,e)}}evaluate(e,t,n,r,i={}){let a=[...this.apiHooksAccessor(),...this.getHooks(),...i.hooks||[],...this._provider.hooks||[]],o=[...a].reverse(),s=Fg({},this.apiContextAccessor((this==null?void 0:this.options)?.domain)),c=o.map(()=>Object.freeze({flagKey:e,defaultValue:n,flagValueType:r,clientMetadata:this.metadata,providerMetadata:this._provider.metadata,context:s,logger:this._logger,hookData:new Yh})),l;try{this.beforeHooks(a,c,i),this.shortCircuitIfNotReady();let r=t.call(this._provider,e,n,s,this._logger),u=Ig(Fg({},r),{flagMetadata:Object.freeze(r.flagMetadata??{}),flagKey:e});if(u.errorCode){let t=sg(u.errorCode,u.errorMessage);this.errorHooks(o,c,t,i),l=this.getErrorEvaluationDetails(e,n,t,u.flagMetadata)}else this.afterHooks(o,c,u,i),l=u}catch(t){this.errorHooks(o,c,t,i),l=this.getErrorEvaluationDetails(e,n,t)}return this.finallyHooks(o,c,l,i),l}beforeHooks(e,t,n){var r;for(let[i,a]of e.entries()){let o=t[e.length-1-i];Object.freeze(o),Object.freeze(o.context),(r=a?.before)==null||r.call(a,o,Object.freeze(n.hookHints))}}afterHooks(e,t,n,r){var i;for(let[a,o]of e.entries()){let e=t[a];(i=o?.after)==null||i.call(o,e,n,r.hookHints)}}errorHooks(e,t,n,r){var i;for(let[a,o]of e.entries())try{let e=t[a];(i=o?.error)==null||i.call(o,e,n,r.hookHints)}catch(e){this._logger.error(`Unhandled error during 'error' hook: ${e}`),e instanceof Error&&this._logger.error(e.stack),this._logger.error(e?.stack)}}finallyHooks(e,t,n,r){var i;for(let[a,o]of e.entries())try{let e=t[a];(i=o?.finally)==null||i.call(o,e,n,r.hookHints)}catch(e){this._logger.error(`Unhandled error during 'finally' hook: ${e}`),e instanceof Error&&this._logger.error(e.stack),this._logger.error(e?.stack)}}get _provider(){return this.providerAccessor()}get _logger(){return this._clientLogger||this.globalLogger()}shortCircuitIfNotReady(){if(this.providerStatus===cg.NOT_READY)throw new ig(`provider has not yet initialized`);if(this.providerStatus===cg.FATAL)throw new rg(`provider is in an irrecoverable error state`)}getErrorEvaluationDetails(e,t,n,r={}){let i=n?.message;return{errorCode:n?.code||Zh.GENERAL,errorMessage:i,value:t,reason:Xh.ERROR,flagMetadata:Object.freeze(r),flagKey:e}}},Jg=Symbol.for(`@openfeature/web-sdk/api`),Yg=globalThis,Xg=class e extends Sg{constructor(){super(`client`),this._statusEnumType=cg,this._apiEmitter=new Kg,this._defaultProvider=new xg(Wg,cg.NOT_READY,this._statusEnumType),this._domainScopedProviders=new Map,this._createEventEmitter=()=>new Kg}static getInstance(){let t=Yg[Jg];if(t)return t;let n=new e;return Yg[Jg]=n,n}getProviderStatus(e){return e?this._domainScopedProviders.get(e)?.status??this._defaultProvider.status:this._defaultProvider.status}setProviderAndWait(e,t,n){return Vg(this,null,function*(){let r=_g(e),i=yg(r?t:e),a=yg(r?n:t);a&&(r?this._domainScopedContext.set(r,a):this._context=a),yield this.setAwaitableProvider(r,i)})}setProvider(e,t,n){let r=_g(e),i=yg(r?t:e),a=yg(r?n:t);a&&(r?this._domainScopedContext.set(r,a):this._context=a);let o=this.setAwaitableProvider(r,i);return Promise.resolve(o).catch(e=>{this._logger.error(`Error during provider initialization:`,e)}),this}getProvider(e){return this.getProviderForClient(e)}setContext(e,t){return Vg(this,null,function*(){let n=_g(e),r=yg(e)??yg(t)??{};if(n){let e=this._domainScopedProviders.get(n);if(e){let t=this.getContext(n);this._domainScopedContext.set(n,r),yield this.runProviderContextChangeHandler(n,e,t,r)}else this._domainScopedContext.set(n,r)}else{let e=this._context;this._context=r;let t=Array.from(this._domainScopedProviders.entries()).filter(([e])=>!this._domainScopedContext.has(e)).reduce((e,[t,n])=>(e.push({domain:t,wrapper:n}),e),[]),n=[{domain:void 0,wrapper:this._defaultProvider},...t];yield Promise.all(n.map(t=>this.runProviderContextChangeHandler(t.domain,t.wrapper,e,r)))}})}getContext(e){let t=_g(e);if(t){let e=this._domainScopedContext.get(t);if(e)return e;this._logger.debug(`Unable to find context for '${t}'.`)}return this._context}clearContext(e){return Vg(this,null,function*(){let t=_g(e);if(t){let e=this._domainScopedProviders.get(t);if(e){let n=this.getContext(t);this._domainScopedContext.delete(t);let r=this.getContext();yield this.runProviderContextChangeHandler(t,e,n,r)}else this._domainScopedContext.delete(t)}else return this.setContext({})})}clearContexts(){return Vg(this,null,function*(){yield this.clearContext(),yield Promise.allSettled(Array.from(this._domainScopedProviders.keys()).map(e=>this.clearContext(e)))})}getClient(e,t){return new qg(()=>this.getProviderForClient(e),()=>this.getProviderStatus(e),()=>this.buildAndCacheEventEmitterForClient(e),e=>this.getContext(e),()=>this.getHooks(),()=>this._logger,{domain:e,version:t})}clearProviders(){return Vg(this,null,function*(){yield Bg(e.prototype,this,`clearProvidersAndSetDefault`).call(this,Wg),this._domainScopedContext.clear()})}runProviderContextChangeHandler(e,t,n,r){return Vg(this,null,function*(){var i,a,o,s;let c=t.provider?.metadata?.name||`unnamed-provider`;try{if(typeof t.provider.onContextChange==`function`){let a=t.provider.onContextChange(n,r);a&&typeof a?.then==`function`&&(t.incrementPendingContextChanges(),t.status=this._statusEnumType.RECONCILING,this.getAssociatedEventEmitters(e).forEach(t=>{t?.emit(lg.Reconciling,{domain:e,providerName:c})}),(i=this._apiEmitter)==null||i.emit(lg.Reconciling,{domain:e,providerName:c}),yield a,t.decrementPendingContextChanges())}t.status=this._statusEnumType.READY,t.allContextChangesSettled&&(this.getAssociatedEventEmitters(e).forEach(t=>{t?.emit(lg.ContextChanged,{clientName:e,domain:e,providerName:c})}),(a=this._apiEmitter)==null||a.emit(lg.ContextChanged,{clientName:e,domain:e,providerName:c}))}catch(n){if(t.decrementPendingContextChanges(),t.status=this._statusEnumType.ERROR,t.allContextChangesSettled){let t=`Error running ${c}'s context change handler: ${n?.message}`;(o=this._logger)==null||o.error(`${t}`,n),this.getAssociatedEventEmitters(e).forEach(n=>{n?.emit(lg.Error,{clientName:e,domain:e,providerName:c,message:t})}),(s=this._apiEmitter)==null||s.emit(lg.Error,{clientName:e,domain:e,providerName:c,message:t})}}})}}.getInstance();(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`e9dffb1a-3523-5af8-8cad-60683e091ce0`)}catch{}})();async function Zg(e,t){let{PGlite:n}=await We(e),{live:r}=e===16?await i(()=>import(`./live-E-YKBo63.js`),__vite__mapDeps([6,7,8,9,10])):await i(()=>import(`./live-W93_P198.js`),__vite__mapDeps([11,12,13,9,10]));return new n(`idb://${t}`,{relaxedDurability:!0,extensions:{live:r}})}var Qg=Promise.resolve();function $g(e){let t=Qg.then(e,e);return Qg=t.catch(()=>void 0),t}function e_(e){let t;return function(){if(t)return t;let n=$g(async()=>{let t=Fe(await e.detectMajor());return t!==17&&console.warn(`[${e.label}] Opening legacy Postgres ${t} data dir. Migrate to PG17 from the banner or the Inspector → Debug tab.`),Zg(t,e.dbName)});return t=n,n.catch(()=>{t===n&&(t=void 0)}),n}}var t_=e_({dbName:He,detectMajor:Ve,label:`reactor`}),n_=e_({dbName:Le,detectMajor:Ue,label:`relational`});async function r_(){let e=await n_();return{pgLite:e,relationalDb:Ut(new cm({dialect:new Jm(e)}))}}async function i_(e,t,n,r,i,a,o={},s){let c=await Zc(n.signer,r,o),l=async e=>{if(n.user)return n.getBearerToken({expiresIn:10})},u=await t_(),d=new nt([`reactor-client`]),f=new dt().withDocumentModelSources(e).withUpgradeManifests(t).withChannelScheme(st.CONNECT).withExecutorConfig({featureFlags:r}).withJwtHandler(l).withKysely(new cm({dialect:new Jm(u)})),p=new ft().withLogger(d).withSigner(c).withReactorBuilder(f);i&&p.withDocumentModelLoader(i),a&&p.withCreateSignaturePolicy(a),s&&f.withUnsupportedStoredDocuments(s);let m;try{m=await p.buildModule()}catch(e){throw Pe(e)}return{...m,kind:`browser`,reactorModule:m.reactorModule?{...m.reactorModule,pg:u}:void 0}}function a_(e){return e.connect.drives?.defaultDrives??[]}async function o_(e){await Promise.all(e.map(e=>`url`in e?s_(e):c_(e)))}async function s_(e){let t;for(let n=1;n<=3;n++)try{t=await gt(e.url);break}catch(t){if(xt(t))break;if(n===3)console.error(`Failed to add default drive ${e.url} after 3 attempts:`,t);else{let t=2e3*n;console.warn(`Default drive ${e.url} not reachable (attempt ${n}/3), retrying in ${t}ms...`),await new Promise(e=>setTimeout(e,t))}}if(t&&(e.name||e.icon))try{let n=window.ph?.reactorClientModule?.client;n&&await zt(n,t,{timeoutMs:15e3}),await Dt(t,{name:e.name,icon:e.icon})}catch(t){console.warn(`Default drive ${e.url} was added but metadata update failed:`,t)}}async function c_(e){if(!e.id){console.error(`Ignoring local default drive with no id:`,JSON.stringify(e));return}try{let t=window.ph?.reactorClientModule?.client;if(t&&await t.isDocumentIdTaken(e.id))return;await mt({id:e.id,global:{name:e.name??``,icon:e.icon??null}},e.app)}catch(t){console.error(`Failed to create local default drive ${e.id}:`,t)}}var l_=class{runsOn=`client`;metadata={name:`QueryParamProvider`};flags;constructor(e){this.flags=new Map;for(let[t,n]of e.entries())this.flags.set(t,n)}resolveBooleanEvaluation(e,t){let n=this.flags.get(e);return n===void 0?{value:t,reason:`DEFAULT`}:{value:n.toLowerCase()===`true`||n===`1`,reason:`STATIC`,variant:n}}resolveStringEvaluation(e,t){let n=this.flags.get(e);return n===void 0?{value:t,reason:`DEFAULT`}:{value:n,reason:`STATIC`,variant:n}}resolveNumberEvaluation(e,t){let n=this.flags.get(e);if(n===void 0)return{value:t,reason:`DEFAULT`};let r=Number(n);return isNaN(r)?{value:t,reason:`ERROR`,errorCode:`PARSE_ERROR`,errorMessage:`Failed to parse "${n}" as a number`}:{value:r,reason:`STATIC`,variant:n}}resolveObjectEvaluation(e,t){let n=this.flags.get(e);if(n===void 0)return{value:t,reason:`DEFAULT`};try{return{value:JSON.parse(n),reason:`STATIC`,variant:n}}catch(e){return{value:t,reason:`ERROR`,errorCode:`PARSE_ERROR`,errorMessage:`Failed to parse JSON: ${e instanceof Error?e.message:String(e)}`}}}};async function u_(e){let t=e??(typeof window<`u`?new URLSearchParams(window.location.search):new URLSearchParams),n=new l_(t);await Xg.setProviderAndWait(n);let r=new Map,i=t.get(`LOG_LEVEL`);if(i){let e=[`verbose`,`debug`,`info`,`warn`,`error`];e.includes(i.toLowerCase())?(at(i.toLowerCase()),it.info(`Log level set to @level via query param`,i.toLowerCase())):it.warn(`Invalid LOG_LEVEL query param: @param. Valid values: @validLevels`,i,e.join(`, `))}return r}var d_=class{#e;#t=new Map;#n=[];#r=new Set;#i=new Set;constructor(e){this.#e=e}load(e){let t=this.#a(e);return t?(this.#s(e),Promise.resolve(t)):(this.#o(e),Promise.reject(Error(`No package registry configured; cannot resolve "${e}"`)))}promptInstallation(){}approveInstallation(){return Promise.resolve()}dismissInstallation(){}getPendingInstallations(){return[]}subscribePending(){return()=>{}}getFailedInstallations(){return this.#n}subscribeFailed(e){return this.#r.add(e),()=>{this.#r.delete(e)}}subscribeEvents(e){return this.#i.add(e),()=>{this.#i.delete(e)}}retryInstallation(e){return this.#o(e),Promise.resolve()}#a(e){return this.#e.packages.flatMap(e=>e.documentModels).find(t=>t.documentModel.global.id===e)}#o(e){this.#t.set(e,{documentType:e,reason:`no-registry`,packageNames:[],error:null}),this.#l({type:`load-failed`,documentType:e,reason:`no-registry`}),this.#c()}#s(e){this.#t.delete(e)&&this.#c()}#c(){this.#n=Array.from(this.#t.values());for(let e of this.#r)e()}#l(e){for(let t of this.#i)t(e)}},f_=class{#e;#t;#n;#r=new Map;#i=new Map;#a=[];#o=new Set;#s=new Map;#c=[];#l=new Set;#u=new Set;#d;#f=new Map;constructor(e,t,n){this.#e=e,this.#t=t,this.#n=n.mode,this.#d=new ot(n.storageKey+`:PH_DISMISSED_TYPES`)}load(e){let t=this.#g(e);if(t)return this.#x(e),Promise.resolve(t);if(this.#d.has(e))return this.#b(e,`dismissed`,[],null),Promise.reject(Error(`Document type "${e}" was dismissed`));let n=this.#r.get(e);return n?n.promise:this.#p(e)}promptInstallation(e){let t=this.#f.get(e);t&&(this.#i.has(e)||(this.#f.delete(e),this.#h(e,t)))}async approveInstallation(e){let t=this.#_(e);if(t.length===0)return;let n=await this.#e.addPackage(e);if(n.type===`error`){this.#S({type:`installation-failed`,packageName:e,error:n.error});for(let r of t){let t=this.#r.get(r);t&&(t.reject(n.error),this.#r.delete(r),this.#i.delete(r)),this.#b(r,`install-failed`,[e],n.error)}this.#v();return}this.#S({type:`installation-approved`,packageName:e,documentTypes:t});for(let n of t){let t=this.#r.get(n);if(!t)continue;let r=this.#g(n);if(r)t.resolve(r),this.#x(n);else{let r=Error(`Package "${e}" installed but module for "${n}" not found`);t.reject(r),this.#b(n,`install-failed`,[e],r)}this.#r.delete(n),this.#i.delete(n)}this.#v()}dismissInstallation(e){let t=this.#_(e);if(t.length!==0){for(let n of t){this.#d.set(n,!0);let t=this.#r.get(n);t&&t.reject(Error(`Document type "${n}" was dismissed`)),this.#r.delete(n),this.#i.delete(n),this.#f.delete(n),this.#b(n,`dismissed`,[e],null)}this.#S({type:`installation-dismissed`,packageName:e,documentTypes:t}),this.#v()}}getPendingInstallations(){return this.#a}subscribePending(e){return this.#o.add(e),()=>{this.#o.delete(e)}}getFailedInstallations(){return this.#c}subscribeFailed(e){return this.#l.add(e),()=>{this.#l.delete(e)}}subscribeEvents(e){return this.#u.add(e),()=>{this.#u.delete(e)}}async retryInstallation(e){this.#d.delete(e),this.#x(e);try{await this.#p(e)}catch{}}async#p(e){if(typeof navigator<`u`&&navigator.onLine===!1)return this.#b(e,`offline`,[],null),Promise.reject(Error(`Offline: cannot discover document type "${e}"`));let t;try{t=await this.#t.getPackagesByDocumentType(e)}catch(t){let n=t instanceof Error?t:Error(String(t));return this.#S({type:`registry-query-failed`,documentType:e,error:n}),this.#b(e,`registry-error`,[],n),Promise.reject(n)}if(t.length===0)return this.#b(e,`not-in-registry`,[],null),Promise.reject(Error(`No packages found for document type "${e}"`));let n=this.#m(e,t);return this.#S({type:`type-discovered`,documentType:e,packageNames:t}),this.#n===`immediate`?this.#h(e,t):this.#f.set(e,t),n.promise}#m(e,t){let n,r,i=new Promise((e,t)=>{n=e,r=t}),a={packageNames:t,resolve:n,reject:r,promise:i};return this.#r.set(e,a),a}#h(e,t){let n={documentType:e,packageNames:t};this.#i.set(e,n),this.#S({type:`installation-prompted`,documentType:e,packageNames:t}),this.#v()}#g(e){return this.#e.packages.flatMap(e=>e.documentModels).find(t=>t.documentModel.global.id===e)}#_(e){let t=[];for(let[n,r]of this.#r)r.packageNames.includes(e)&&t.push(n);return t}#v(){this.#a=Array.from(this.#i.values());for(let e of this.#o)e()}#y(){this.#c=Array.from(this.#s.values());for(let e of this.#l)e()}#b(e,t,n,r){this.#s.set(e,{documentType:e,reason:t,packageNames:n,error:r}),this.#S({type:`load-failed`,documentType:e,reason:t}),this.#y()}#x(e){this.#s.delete(e)&&this.#y()}#S(e){for(let t of this.#u)t(e)}},p_=`ph-reactor-gen:`;function m_(e){let t=h_(e);return t?`ph-reactor:${e}#${t}`:`ph-reactor:${e}`}function h_(e){try{return localStorage.getItem(p_+e)}catch{return null}}function g_(e,t){try{localStorage.setItem(p_+e,t)}catch{}}var __=2e3,v_=3e3,y_=2;function b_(e){return Object.entries(e).filter(([,e])=>e).map(([e])=>e).sort().join(`,`)}function x_(e){return e?{address:e.address,chainId:e.chainId,networkId:e.networkId}:null}function S_(e){let t=new URL(`/assets/reactor.worker-Ctl7ls-o.js`,``+import.meta.url);console.info(`[reactor-worker] constructing SharedWorker ${m_(e.namespace)} from ${t.href}`);let n=new SharedWorker(t,{name:m_(e.namespace),type:`module`});n.addEventListener(`error`,e=>{console.error(`[reactor-worker] SharedWorker failed to load from ${t.href}`,e.message||e)}),n.port.onmessageerror=e=>{console.error(`[reactor-worker] port message could not be deserialized`,e)};let r=Yt(n.port),i=new Wt;i.attach(r);let a=new Ne;a.registerModules(...e.documentModelModules),a.registerUpgradeManifests(...e.upgradeManifests);let o=Ze(),s=qt(i,{version:{appBuildId:o===`unknown`?Xe():o,rpcProtocolVersion:Gt,models:e.documentModelModules.map(e=>({id:e.documentModel.global.id,version:e.version??1})),featureFlags:b_(e.featureFlags)},construct:{namespace:e.namespace,relationalNamespace:e.relationalNamespace,cdnUrl:e.cdnUrl,packageSpecs:e.packageSpecs,sharedImports:e.sharedImports,studioMode:e.studioMode,workflowsEnabled:e.workflowsEnabled,renownChainId:e.renownChainId,featureFlags:e.featureFlags,createSignaturePolicy:e.createSignaturePolicy,unsupportedStoredDocuments:e.unsupportedStoredDocuments,renownEndpoints:e.renownEndpoints},packages:e.packageSpecs},e.onReload,a),c=Xt(i),l=new Kt(i,c),u=new Wm(a,e.documentModelLoader);c.subscribe(Re.MODEL_LOADED,(e,t)=>{let{documentType:n}=t;u.ensureModelLoaded(n).catch(e=>{console.error(`Failed to load model "${n}" into tab registry`,e)})}),At({db:Zt(i),isLoading:!1,error:null}),$t(i,x_(e.renown.user)),e.renown.on(`user`,e=>$t(i,x_(e)));let d={kind:`worker`,client:s,adminClient:Qt(i),inspector:Jt(i),reactorModule:{documentModelRegistry:a,syncModule:{syncManager:l},eventBus:c}},f=0,p=0,m=new Map;i.on(`pong`,e=>{let t=m.get(e.id);t!==void 0&&(clearTimeout(t),m.delete(e.id),p=0,Ie(`connected`))});let h=setInterval(()=>{let e=`ping${++f}`,t=setTimeout(()=>{m.delete(e),p+=1,p>=y_&&Ie(`lost`)},v_);m.set(e,t),i.post({k:`ping`,id:e})},__);return{reactorClientModule:d,syncManagerProxy:l,dispose:()=>{clearInterval(h);for(let e of m.values())clearTimeout(e);m.clear()}}}var C_=`reactorWorker`,w_=`ph:reactorWorker`;function T_(e){let t=D_(e.queryParam);if(t!==void 0)return t;let n=D_(e.storedValue);return n===void 0?e.configFlag:n}function E_(){let e=r().connect.instance?.reactorWorker??!1;if(typeof window>`u`)return e;let t=new URLSearchParams(window.location.search).get(C_),n=T_({configFlag:e,queryParam:t,storedValue:window.localStorage.getItem(w_)});return D_(t)!==void 0&&window.localStorage.setItem(w_,n?`true`:`false`),n}function D_(e){if(e==null)return;let t=e.trim().toLowerCase();if(t===`true`||t===`1`)return!0;if(t===`false`||t===`0`)return!1}var O_=class{reserve(){return Promise.reject(Error(`NullAttachmentService: no attachment service configured`))}stat(){return Promise.reject(Error(`NullAttachmentService: no attachment service configured`))}get(){return Promise.reject(Error(`NullAttachmentService: no attachment service configured`))}getDownloadTarget(){return Promise.reject(Error(`NullAttachmentService: no attachment service configured`))}};async function k_(e,t,n){try{let{pgLite:r,relationalDb:i}=await r_(),{store:a}=await _t({pgLite:r});return{...Km({client:e,readModels:t,relationalDb:i,analyticsStore:a,processorApp:`connect`}),attachments:sh(n??new O_)}}catch(e){console.error(`Failed to initialize processor host module:`),console.error(e)}}function A_(e){if(typeof window>`u`||typeof EventSource>`u`)return;let t;try{t=new EventSource(`/__packages`)}catch(e){console.debug(`[Connect] /__packages subscribe failed:`,e);return}let n=!0;t.addEventListener(`packages-changed`,t=>{try{let r=JSON.parse(t.data);if(!Array.isArray(r.packages))return;let i=r.packages.filter(e=>typeof e==`string`),a=e=>{let t=e.startsWith(`@`)?e.lastIndexOf(`@`):e.indexOf(`@`);return t>0?{bareName:e.slice(0,t),version:e.slice(t+1)}:{bareName:e}},o=new Map(e.getRegistryPackages().map(({name:e,version:t})=>[e,t])),s=new Map;for(let e of i){let{bareName:t,version:n}=a(e);s.set(t,n)}let c=n;n=!1;for(let t of o.keys())s.has(t)||(e.removePackage(t),c||ye(`Removed package ${t}`,{type:`connect-deleted`}));for(let t of i){let{bareName:n,version:r}=a(t),i=o.get(n),s=o.has(n);if(s&&(!r||!i||r===i))continue;let l=s;Promise.resolve(e.addPackage(t)).then(e=>{if(e.type===`error`){console.error(`[Connect] /__packages addPackage(${t}) failed:`,e.error);return}if(c)return;let n=e.package.manifest.name;ye(l?`Updated package ${n}`:`Installed package ${n}`,{type:`connect-success`})},e=>{console.error(`[Connect] /__packages addPackage(${t}) threw:`,e)})}}catch(e){console.error(`[Connect] /__packages event parse failed:`,e)}}),t.addEventListener(`error`,()=>{})}async function j_(){let e=window.ph?.reactorClientModule;if(e?.kind===`worker`){await e.adminClient.clearStorage();return}e?.kind===`browser`&&await e.reactorModule?.pg?.close();let t=(await indexedDB.databases()).map(e=>e.name).filter(e=>!!e&&!e.startsWith(`ph-pglite-backup::`)&&/pglite|reactor/i.test(e));await Promise.all(t.map(e=>new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=n.onerror=n.onblocked=()=>t()})))}async function M_(e){if(window.ph||(window.ph={}),window.ph.loading)return;window.ph.loading=!0,ht(),jt(ye);let t=await u_();it.info(`Features: @features`,JSON.stringify(Object.fromEntries(t),null,2));let n=r().connect.renown?.chainId,a=await wh.create(),o=new vh().withKeyPairStorage(a);n!==void 0&&o.withChainId(n);let s=await o.build(),c=await new Rh(`connect`,{basename:r().connect.renown?.namespace??Ke.routerBasename,baseUrl:Ke.renownUrl,switchboardUrl:Ke.switchboardUrl,chainId:n}).withCrypto(s).build(),l=r(),u=new Ye(Ke.routerBasename??``,l.packageRegistryUrl??null);Rt(u),await u.init(e,l.localPackage?.version,Ke.studioMode,qe.workflowsEnabled);try{let{default:e}=await i(async()=>{let{default:e}=await import(`ph-bundled-packages-virtual`);return{default:e}},[]);e(u)}catch{}let d=l.packages.filter(e=>e.provider!==`local`).map(e=>e.version?`${e.packageName}@${e.version}`:e.packageName);(await u.addPackages(d)).map(e=>{e.type===`error`&&console.error(e.error)}),l.connect?.packages?.liveReload&&A_(u);let f=u.packages.flatMap(e=>e.documentModels).filter((e,t,n)=>n.findIndex(t=>t.documentModel.global.id===e.documentModel.global.id&&t.version===e.version)===t),p=u.packages.flatMap(e=>e.upgradeManifests).filter((e,t,n)=>e!==void 0&&n.findIndex(t=>t&&t.documentType===e.documentType)===t),m=u.cdnUrl===null?new d_(u):new f_(u,new pt(u.cdnUrl),{mode:`immediate`,storageKey:Ke.routerBasename??``});Mt(m);let h=l.connect?.reactor?.featureFlags??{},g=Object.entries(h).filter(([,e])=>e).map(([e])=>e);g.length>0&&it.info(`Reactor feature flags: ${g.join(`, `)}`);let _=l.connect?.reactor?.createSignaturePolicy,v=l.connect?.reactor?.unsupportedStoredDocuments,y={renownUrl:Ke.renownUrl,switchboardUrl:Ke.switchboardUrl},b;if(E_()){let e=u.getRegistryPackages().map(e=>e.version?`${e.name}@${e.version}`:e.name),t=new pt(u.cdnUrl??``),r={async load(e){let n=u.cdnUrl?await t.getPackagesByDocumentType(e):[];for(let t of n){let n=await u.addPackage(t);if(n.type===`error`)throw Error(`Failed to install package "${t}" for document model: ${e}`,{cause:n.error})}let r=u.packages.flatMap(e=>e.documentModels).find(t=>t.documentModel.global.id===e);if(!r)throw Error(n.length>0?`Installed [${n.join(`, `)}] but document model not available: ${e}`:`No package found for document model: ${e} (cdnUrl: ${u.cdnUrl??`none`})`);return r}},i=(await Je())?.imports,a=S_({namespace:Be,relationalNamespace:Le,cdnUrl:u.cdnUrl??``,packageSpecs:e,sharedImports:i,studioMode:Ke.studioMode,workflowsEnabled:qe.workflowsEnabled,renownChainId:n,featureFlags:h,createSignaturePolicy:_,unsupportedStoredDocuments:v,renownEndpoints:y,documentModelModules:f,upgradeManifests:p,documentModelLoader:r,renown:c,onReload:(e,t)=>{it.warn(`Reactor worker requested reload: @reason`,e),t&&g_(Be,t),window.location.reload()}});b=a.reactorClientModule;try{await a.syncManagerProxy.startup()}catch(e){throw window.ph.loading=!1,it.error(`Reactor worker failed to start: @error`,e),e}}else b=await i_(f,p,c,h,m,_,y,v);let ee=await bt(b.client),te=N_();await St(te,c);let ne=new lt(b.client),re=Ke.basePath??`/`,x=Ke.routerBasename??`/`,ie=Ge(re,x,l.connect??{});Tt(ie);let ae=window.location.pathname,oe=vt(ae),se=yt(ae);Pt(b),Nt(b.client);let ce=Ke.defaultDrivesUrl;if(ce){let e;try{e=new URL(ce).origin}catch{}if(e){let t=et({remoteUrl:e,jwtHandler:async e=>{if(c.user)return c.getBearerToken({expiresIn:10})},uploadTransport:Qe()});wt(t)}}Et(ne),Ft(c),Ot(ee),kt(t);let le=a_(l);le.length>0&&o_(le).catch(e=>console.error(`Failed to add default drives:`,e));let ue=P_();ue&>(ue,void 0).catch(e=>console.error(`Failed to add remote drive from ${ue}:`,e)),It(oe),Lt(se);let de=b.client;for(let e of ct)de.subscribe({type:e},e=>{it.verbose(`ReactorClient subscription event: @event`,e),Ct(b.client).catch(e=>it.error(`@error`,e))});de.subscribe({},e=>{if(e.type!==ut.Deleted)return;let t=e.context?.childId;if(!t)return;let n=window.ph?.selectedDriveId,r=window.ph?.selectedNodeId;if(n&&t===n){It(void 0),ye(`The drive you were viewing has been deleted`);return}r&&t===r&&(Lt(void 0),ye(`The document you were editing has been deleted`))}),await Ct(b.client);let fe=u.packages.filter(e=>e.processorFactory!==void 0),pe=b.kind===`browser`?b.reactorModule:void 0;if(fe.length>0&&!pe)for(let e of fe)it.warn(`Skipping processor factory @name: processors are not supported on the worker reactor path yet`,e.manifest.name);else if(fe.length>0&&pe){let e=pe.readModelCoordinator.readModels,t=await k_(b.client,e,window.ph?.attachmentService);t!==void 0&&await Promise.all(fe.map(async e=>{let{manifest:n,processorFactory:r}=e,i=n.name,a=n.name,o=u.getPackageVersion(i),s=o?`${i}@${o}`:i;it.info(`Loading processor factory: @label`,s);try{let e=await r?.(t);if(!e)return;await pe.processorManager.registerFactory(a,e)}catch(e){it.error(`Error registering processor: @label`,s),it.error(`@error`,e)}}))}window.ph.loading=!1}function N_(){let e=new URLSearchParams(window.location.search).get(`user`);return e?decodeURIComponent(e):void 0}function P_(){let e=new URLSearchParams(window.location.search).get(`driveUrl`);return e?decodeURIComponent(e):void 0}export{cm as a,xm as i,M_ as n,Jm as r,j_ as t};
|
|
118
|
-
//# sourceMappingURL=reactor-CItc8KaF-
|
|
118
|
+
//# sourceMappingURL=reactor-CItc8KaF-DIjxfM4l.js.map
|