@privy-io/js-sdk-core 0.26.7 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/EmailApi.js +1 -1
- package/dist/EmailApi.js.map +1 -1
- package/dist/FarcasterApi.js +1 -1
- package/dist/FarcasterApi.js.map +1 -1
- package/dist/OAuthApi.js +1 -1
- package/dist/OAuthApi.js.map +1 -1
- package/dist/PhoneApi.js +1 -1
- package/dist/PhoneApi.js.map +1 -1
- package/dist/PrivyInternal.js +1 -1
- package/dist/SiweApi.js +1 -1
- package/dist/SiweApi.js.map +1 -1
- package/dist/chains/polygon.js +1 -1
- package/dist/chains/polygon.js.map +1 -1
- package/dist/chains/polygonAmoy.js +1 -1
- package/dist/chains/polygonAmoy.js.map +1 -1
- package/dist/dts/EmailApi.d.ts +22 -1
- package/dist/dts/FarcasterApi.d.ts +22 -1
- package/dist/dts/OAuthApi.d.ts +24 -1
- package/dist/dts/PhoneApi.d.ts +22 -1
- package/dist/dts/SiweApi.d.ts +5 -1
- package/dist/dts/UserApi.d.ts +10 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/package.json +2 -2
package/dist/EmailApi.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{PasswordlessInit as e,PasswordlessAuthenticate as t,PasswordlessLink as r,PasswordlessUnlink as n}from"@privy-io/public-api";class i{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(t,r){return this._privyInternal.fetch(e,{body:{email:t,token:r}})}async loginWithCode(e,r){const
|
|
1
|
+
import{PasswordlessInit as e,PasswordlessAuthenticate as t,PasswordlessLink as r,PasswordlessUnlink as n}from"@privy-io/public-api";class i{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(t,r){return this._privyInternal.fetch(e,{body:{email:t,token:r}})}async loginWithCode(e,r,n){const i=await this._privyInternal.fetch(t,{body:{email:e,code:r,mode:n}});return await Promise.all([this._privyInternal.session.storeToken(i.token),this._privyInternal.session.storeRefreshToken(i.refresh_token),this._privyInternal.session.storeIdentityToken(i.identity_token)]),this._privyInternal.callbacks?.setUser?.(i.user),i}async linkWithCode(e,t){await this._privyInternal.fetch(r,{body:{email:e,code:t}});return(await this._privyInternal.refreshSession()).user}async unlink(e){await this._privyInternal.fetch(n,{body:{address:e}});return(await this._privyInternal.refreshSession()).user}}export{i as default};
|
|
2
2
|
//# sourceMappingURL=EmailApi.js.map
|
package/dist/EmailApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmailApi.js","sources":["../src/EmailApi.ts"],"sourcesContent":[null],"names":["EmailApi","_privyInternal","constructor","privyInternal","this","sendCode","email","token","fetch","PasswordlessInit","body","loginWithCode","code","res","PasswordlessAuthenticate","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","linkWithCode","PasswordlessLink","refreshSession","unlink","PasswordlessUnlink","address"],"mappings":"oIASc,MAAOA,EAIFC,eAKjB,WAAAC,CAAmBC,GACjBC,KAAKH,eAAiBE,CACvB,CAQM,cAAME,CAASC,EAAeC,GACnC,OAAOH,KAAKH,eAAeO,MAAMC,EAAkB,CAACC,KAAM,CAACJ,QAAOC,UACnE,
|
|
1
|
+
{"version":3,"file":"EmailApi.js","sources":["../src/EmailApi.ts"],"sourcesContent":[null],"names":["EmailApi","_privyInternal","constructor","privyInternal","this","sendCode","email","token","fetch","PasswordlessInit","body","loginWithCode","code","mode","res","PasswordlessAuthenticate","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","linkWithCode","PasswordlessLink","refreshSession","unlink","PasswordlessUnlink","address"],"mappings":"oIASc,MAAOA,EAIFC,eAKjB,WAAAC,CAAmBC,GACjBC,KAAKH,eAAiBE,CACvB,CAQM,cAAME,CAASC,EAAeC,GACnC,OAAOH,KAAKH,eAAeO,MAAMC,EAAkB,CAACC,KAAM,CAACJ,QAAOC,UACnE,CASM,mBAAMI,CAAcL,EAAeM,EAAcC,GACtD,MAAMC,QAAYV,KAAKH,eAAeO,MAAMO,EAA0B,CACpEL,KAAM,CAACJ,QAAOM,OAAMC,UAWtB,aARMG,QAAQC,IAAI,CAChBb,KAAKH,eAAeiB,QAAQC,WAAWL,EAAIP,OAC3CH,KAAKH,eAAeiB,QAAQE,kBAAkBN,EAAIO,eAClDjB,KAAKH,eAAeiB,QAAQI,mBAAmBR,EAAIS,kBAGrDnB,KAAKH,eAAeuB,WAAWC,UAAUX,EAAIY,MAEtCZ,CACR,CAQM,kBAAMa,CAAarB,EAAeM,SACjCR,KAAKH,eAAeO,MAAMoB,EAAkB,CAAClB,KAAM,CAACJ,QAAOM,UAMjE,aAJkBR,KAAKH,eAAe4B,kBAI3BH,IACZ,CAEM,YAAMI,CAAOxB,SACZF,KAAKH,eAAeO,MAAMuB,EAAoB,CAACrB,KAAM,CAACsB,QAAS1B,KAKrE,aAHkBF,KAAKH,eAAe4B,kBAG3BH,IACZ"}
|
package/dist/FarcasterApi.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{FarcasterInit as e,FarcasterStatus as t,FarcasterAuthenticate as n,FarcasterLink as r,FarcasterUnlink as i}from"@privy-io/public-api";class a{_privyInternal;constructor(e){this._privyInternal=e}async initializeAuth({relyingParty:t,redirectUrl:n,token:r}){return await this._privyInternal.fetch(e,{body:{relying_party:t,redirect_url:n,token:r}})}async getFarcasterStatus({channel_token:e}){return await this._privyInternal.fetch(t,{headers:{"farcaster-channel-token":e}})}async authenticate({channel_token:e,message:t,signature:r,fid:i}){const
|
|
1
|
+
import{FarcasterInit as e,FarcasterStatus as t,FarcasterAuthenticate as n,FarcasterLink as r,FarcasterUnlink as i}from"@privy-io/public-api";class a{_privyInternal;constructor(e){this._privyInternal=e}async initializeAuth({relyingParty:t,redirectUrl:n,token:r}){return await this._privyInternal.fetch(e,{body:{relying_party:t,redirect_url:n,token:r}})}async getFarcasterStatus({channel_token:e}){return await this._privyInternal.fetch(t,{headers:{"farcaster-channel-token":e}})}async authenticate({channel_token:e,message:t,signature:r,fid:i,mode:a}){const s=await this._privyInternal.fetch(n,{body:{channel_token:e,message:t,signature:r,fid:i,mode:a}});return await Promise.all([this._privyInternal.session.storeToken(s.token),this._privyInternal.session.storeRefreshToken(s.refresh_token),this._privyInternal.session.storeIdentityToken(s.identity_token)]),this._privyInternal.callbacks?.setUser?.(s.user),s}async link({channel_token:e,message:t,signature:n,fid:i}){await this._privyInternal.fetch(r,{body:{channel_token:e,message:t,signature:n,fid:i}});return(await this._privyInternal.refreshSession()).user}async unlink({fid:e}){await this._privyInternal.fetch(i,{body:{fid:e}});return(await this._privyInternal.refreshSession()).user}}export{a as default};
|
|
2
2
|
//# sourceMappingURL=FarcasterApi.js.map
|
package/dist/FarcasterApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FarcasterApi.js","sources":["../src/FarcasterApi.ts"],"sourcesContent":[null],"names":["FarcasterApi","_privyInternal","constructor","privyInternal","this","initializeAuth","relyingParty","redirectUrl","token","fetch","FarcasterInit","body","relying_party","redirect_url","getFarcasterStatus","channel_token","FarcasterStatus","headers","authenticate","message","signature","fid","res","FarcasterAuthenticate","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","link","FarcasterLink","refreshSession","unlink","FarcasterUnlink"],"mappings":"6IAUc,MAAOA,EAIFC,eAKjB,WAAAC,CAAmBC,GACjBC,KAAKH,eAAiBE,CACvB,CAKM,oBAAME,EAAeC,aAC1BA,EAAYC,YACZA,EAAWC,MACXA,IAcA,aARkBJ,KAAKH,eAAeQ,MAAMC,EAAe,CACzDC,KAAM,CACJC,cAAeN,EACfO,aAAcN,EACdC,UAKL,CAKM,wBAAMM,EAAmBC,cAACA,IAO/B,aANkBX,KAAKH,eAAeQ,MAAMO,EAAiB,CAC3DC,QAAS,CACP,0BAA2BF,IAKhC,CAKM,kBAAMG,EAAaH,cACxBA,EAAaI,QACbA,EAAOC,UACPA,EAASC,IACTA,
|
|
1
|
+
{"version":3,"file":"FarcasterApi.js","sources":["../src/FarcasterApi.ts"],"sourcesContent":[null],"names":["FarcasterApi","_privyInternal","constructor","privyInternal","this","initializeAuth","relyingParty","redirectUrl","token","fetch","FarcasterInit","body","relying_party","redirect_url","getFarcasterStatus","channel_token","FarcasterStatus","headers","authenticate","message","signature","fid","mode","res","FarcasterAuthenticate","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","link","FarcasterLink","refreshSession","unlink","FarcasterUnlink"],"mappings":"6IAUc,MAAOA,EAIFC,eAKjB,WAAAC,CAAmBC,GACjBC,KAAKH,eAAiBE,CACvB,CAKM,oBAAME,EAAeC,aAC1BA,EAAYC,YACZA,EAAWC,MACXA,IAcA,aARkBJ,KAAKH,eAAeQ,MAAMC,EAAe,CACzDC,KAAM,CACJC,cAAeN,EACfO,aAAcN,EACdC,UAKL,CAKM,wBAAMM,EAAmBC,cAACA,IAO/B,aANkBX,KAAKH,eAAeQ,MAAMO,EAAiB,CAC3DC,QAAS,CACP,0BAA2BF,IAKhC,CAKM,kBAAMG,EAAaH,cACxBA,EAAaI,QACbA,EAAOC,UACPA,EAASC,IACTA,EAAGC,KACHA,IAQA,MAAMC,QAAYnB,KAAKH,eAAeQ,MAAMe,EAAuB,CACjEb,KAAM,CACJI,gBACAI,UACAC,YACAC,MACAC,UAWJ,aAPMG,QAAQC,IAAI,CAChBtB,KAAKH,eAAe0B,QAAQC,WAAWL,EAAIf,OAC3CJ,KAAKH,eAAe0B,QAAQE,kBAAkBN,EAAIO,eAClD1B,KAAKH,eAAe0B,QAAQI,mBAAmBR,EAAIS,kBAErD5B,KAAKH,eAAegC,WAAWC,UAAUX,EAAIY,MAEtCZ,CACR,CAIM,UAAMa,EAAKrB,cAChBA,EAAaI,QACbA,EAAOC,UACPA,EAASC,IACTA,UAOMjB,KAAKH,eAAeQ,MAAM4B,EAAe,CAC7C1B,KAAM,CACJI,gBACAI,UACAC,YACAC,SASJ,aAJkBjB,KAAKH,eAAeqC,kBAI3BH,IACZ,CAKM,YAAMI,EAAOlB,IAACA,UACbjB,KAAKH,eAAeQ,MAAM+B,EAAiB,CAC/C7B,KAAM,CACJU,SAQJ,aAHkBjB,KAAKH,eAAeqC,kBAG3BH,IACZ"}
|
package/dist/OAuthApi.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{OAuthInit as t,OAuthAuthenticate as e,OAuthLink as r,OAuthUnlink as i}from"@privy-io/public-api";import{PrivyClientError as s}from"./Error.js";import{createCodeVerifier as o,createStateCode as a,deriveCodeChallengeFromCodeVerifier as n,CODE_VERIFIER_KEY as h,STATE_CODE_KEY as _}from"./pkce.js";import"jose";class c{_privyInternal;_storage;_crypto;constructor(t,e,r){this._privyInternal=t,this._storage=e,this._crypto=r}async generateURL(e,r){const i=o(),s=a(),c=await n({codeVerifier:i,digest:this._crypto?.digest});return await Promise.all([this._storage.put(h,i),this._storage.put(_,s)]),this._privyInternal.fetch(t,{body:{redirect_to:r,provider:e,code_challenge:c,state_code:s}})}async loginWithCode(t,r,i,o){const[
|
|
1
|
+
import{OAuthInit as t,OAuthAuthenticate as e,OAuthLink as r,OAuthUnlink as i}from"@privy-io/public-api";import{PrivyClientError as s}from"./Error.js";import{createCodeVerifier as o,createStateCode as a,deriveCodeChallengeFromCodeVerifier as n,CODE_VERIFIER_KEY as h,STATE_CODE_KEY as _}from"./pkce.js";import"jose";class c{_privyInternal;_storage;_crypto;constructor(t,e,r){this._privyInternal=t,this._storage=e,this._crypto=r}async generateURL(e,r){const i=o(),s=a(),c=await n({codeVerifier:i,digest:this._crypto?.digest});return await Promise.all([this._storage.put(h,i),this._storage.put(_,s)]),this._privyInternal.fetch(t,{body:{redirect_to:r,provider:e,code_challenge:c,state_code:s}})}async loginWithCode(t,r,i,o,a){const[n,c]=await Promise.all([this._storage.get(h),this._storage.get(_)]);if(c!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"oauth",provider:i,storedStateCode:c??"",returnedStateCode:r??""}),new s({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});const l=await this._privyInternal.fetch(e,{body:{authorization_code:t,code_type:o,state_code:c,code_verifier:n,mode:a}});return await Promise.all([this._privyInternal.session.storeToken(l.token),this._privyInternal.session.storeRefreshToken(l.refresh_token),this._privyInternal.session.storeIdentityToken(l.identity_token)]),this._privyInternal.callbacks?.setUser?.(l.user),await Promise.all([this._storage.del(h),this._storage.del(_)]),l}async linkWithCode(t,e,i,o){const[a,n]=await Promise.all([this._storage.get(h),this._storage.get(_)]);if(n!==e)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"oauth",provider:i,storedStateCode:n??"",returnedStateCode:e??""}),new s({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});await this._privyInternal.fetch(r,{body:{authorization_code:t,code_type:o,state_code:n,code_verifier:a}});const c=await this._privyInternal.refreshSession();return await Promise.all([this._storage.del(h),this._storage.del(_)]),c.user}async unlink(t,e){await this._privyInternal.fetch(i,{body:{provider:t,subject:e}});return(await this._privyInternal.refreshSession()).user}}export{c as default};
|
|
2
2
|
//# sourceMappingURL=OAuthApi.js.map
|
package/dist/OAuthApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OAuthApi.js","sources":["../src/OAuthApi.ts"],"sourcesContent":[null],"names":["OAuthApi","_privyInternal","_storage","_crypto","constructor","privyInternal","storage","crypto","this","generateURL","provider","redirectURI","codeVerifier","createCodeVerifier","stateCode","createStateCode","codeChallenge","deriveCodeChallengeFromCodeVerifier","digest","Promise","all","put","CODE_VERIFIER_KEY","STATE_CODE_KEY","fetch","OAuthInit","body","redirect_to","code_challenge","state_code","loginWithCode","authorizationCode","returnedStateCode","codeType","storedStateCode","get","createAnalyticsEvent","flow","PrivyClientError","code","error","res","OAuthAuthenticate","authorization_code","code_type","code_verifier","session","storeToken","token","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","del","linkWithCode","OAuthLink","refreshSession","unlink","subject","OAuthUnlink"],"mappings":"2TAec,MAAOA,EAIFC,eAKAC,SAKAC,QAKjB,WAAAC,CACEC,EACAC,EACAC,GAEAC,KAAKP,eAAiBI,EACtBG,KAAKN,SAAWI,EAChBE,KAAKL,QAAUI,CAChB,CASM,iBAAME,CAAYC,EAA6BC,GACpD,MAAMC,EAAeC,IACfC,EAAYC,IACZC,QAAsBC,EAAoC,CAC9DL,eACAM,OAAQV,KAAKL,SAASe,SAQxB,aALMC,QAAQC,IAAI,CAChBZ,KAAKN,SAASmB,IAAIC,EAAmBV,GACrCJ,KAAKN,SAASmB,IAAIE,EAAgBT,KAG7BN,KAAKP,eAAeuB,MAAMC,EAAW,CAC1CC,KAAM,CACJC,YAAahB,EACbD,WACAkB,eAAgBZ,EAChBa,WAAYf,IAGjB,
|
|
1
|
+
{"version":3,"file":"OAuthApi.js","sources":["../src/OAuthApi.ts"],"sourcesContent":[null],"names":["OAuthApi","_privyInternal","_storage","_crypto","constructor","privyInternal","storage","crypto","this","generateURL","provider","redirectURI","codeVerifier","createCodeVerifier","stateCode","createStateCode","codeChallenge","deriveCodeChallengeFromCodeVerifier","digest","Promise","all","put","CODE_VERIFIER_KEY","STATE_CODE_KEY","fetch","OAuthInit","body","redirect_to","code_challenge","state_code","loginWithCode","authorizationCode","returnedStateCode","codeType","mode","storedStateCode","get","createAnalyticsEvent","flow","PrivyClientError","code","error","res","OAuthAuthenticate","authorization_code","code_type","code_verifier","session","storeToken","token","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","del","linkWithCode","OAuthLink","refreshSession","unlink","subject","OAuthUnlink"],"mappings":"2TAec,MAAOA,EAIFC,eAKAC,SAKAC,QAKjB,WAAAC,CACEC,EACAC,EACAC,GAEAC,KAAKP,eAAiBI,EACtBG,KAAKN,SAAWI,EAChBE,KAAKL,QAAUI,CAChB,CASM,iBAAME,CAAYC,EAA6BC,GACpD,MAAMC,EAAeC,IACfC,EAAYC,IACZC,QAAsBC,EAAoC,CAC9DL,eACAM,OAAQV,KAAKL,SAASe,SAQxB,aALMC,QAAQC,IAAI,CAChBZ,KAAKN,SAASmB,IAAIC,EAAmBV,GACrCJ,KAAKN,SAASmB,IAAIE,EAAgBT,KAG7BN,KAAKP,eAAeuB,MAAMC,EAAW,CAC1CC,KAAM,CACJC,YAAahB,EACbD,WACAkB,eAAgBZ,EAChBa,WAAYf,IAGjB,CAWM,mBAAMgB,CACXC,EACAC,EACAtB,EACAuB,EACAC,GAEA,MAAOtB,EAAcuB,SAAyBhB,QAAQC,IAAI,CACxDZ,KAAKN,SAASkC,IAAId,GAClBd,KAAKN,SAASkC,IAAIb,KAGpB,GAAIY,IAAoBH,EAStB,MAPKxB,KAAKP,eAAeoC,qBAAqB,4BAA6B,CACzEC,KAAM,QACN5B,SAAUA,EACVyB,gBAAiBA,GAAmB,GACpCH,kBAAmBA,GAAqB,KAGpC,IAAIO,EAAiB,CACzBC,KAAM,2BACNC,MAAO,0DAIX,MAAMC,QAAYlC,KAAKP,eAAeuB,MAAMmB,EAAmB,CAC7DjB,KAAM,CACJkB,mBAAoBb,EACpBc,UAAWZ,EACXJ,WAAYM,EACZW,cAAelC,EACfsB,UAcJ,aAVMf,QAAQC,IAAI,CAChBZ,KAAKP,eAAe8C,QAAQC,WAAWN,EAAIO,OAC3CzC,KAAKP,eAAe8C,QAAQG,kBAAkBR,EAAIS,eAClD3C,KAAKP,eAAe8C,QAAQK,mBAAmBV,EAAIW,kBAGrD7C,KAAKP,eAAeqD,WAAWC,UAAUb,EAAIc,YAEvCrC,QAAQC,IAAI,CAACZ,KAAKN,SAASuD,IAAInC,GAAoBd,KAAKN,SAASuD,IAAIlC,KAEpEmB,CACR,CAQM,kBAAMgB,CACX3B,EACAC,EACAtB,EACAuB,GAEA,MAAOrB,EAAcuB,SAAyBhB,QAAQC,IAAI,CACxDZ,KAAKN,SAASkC,IAAId,GAClBd,KAAKN,SAASkC,IAAIb,KAGpB,GAAIY,IAAoBH,EAStB,MAPKxB,KAAKP,eAAeoC,qBAAqB,4BAA6B,CACzEC,KAAM,QACN5B,SAAUA,EACVyB,gBAAiBA,GAAmB,GACpCH,kBAAmBA,GAAqB,KAGpC,IAAIO,EAAiB,CACzBC,KAAM,2BACNC,MAAO,gEAILjC,KAAKP,eAAeuB,MAAMmC,EAAW,CACzCjC,KAAM,CACJkB,mBAAoBb,EACpBc,UAAWZ,EACXJ,WAAYM,EACZW,cAAelC,KAKnB,MAAM8B,QAAYlC,KAAKP,eAAe2D,iBAKtC,aAHMzC,QAAQC,IAAI,CAACZ,KAAKN,SAASuD,IAAInC,GAAoBd,KAAKN,SAASuD,IAAIlC,KAGpEmB,EAAIc,IACZ,CAQM,YAAMK,CAAOnD,EAA6BoD,SACzCtD,KAAKP,eAAeuB,MAAMuC,EAAa,CAACrC,KAAM,CAAChB,WAAUoD,aAO/D,aAJkBtD,KAAKP,eAAe2D,kBAI3BJ,IACZ"}
|
package/dist/PhoneApi.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{PasswordlessSmsInit as e,PasswordlessSmsAuthenticate as n,PasswordlessSmsLink as r,PasswordlessSmsUnlink as t}from"@privy-io/public-api";class i{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(n,r){return this._privyInternal.fetch(e,{body:{phoneNumber:n,token:r}})}async loginWithCode(e,r){const
|
|
1
|
+
import{PasswordlessSmsInit as e,PasswordlessSmsAuthenticate as n,PasswordlessSmsLink as r,PasswordlessSmsUnlink as t}from"@privy-io/public-api";class i{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(n,r){return this._privyInternal.fetch(e,{body:{phoneNumber:n,token:r}})}async loginWithCode(e,r,t){const i=await this._privyInternal.fetch(n,{body:{phoneNumber:e,code:r,mode:t}});return await Promise.all([this._privyInternal.session.storeToken(i.token),this._privyInternal.session.storeRefreshToken(i.refresh_token),this._privyInternal.session.storeIdentityToken(i.identity_token)]),this._privyInternal.callbacks?.setUser?.(i.user),i}async linkWithCode(e,n){await this._privyInternal.fetch(r,{body:{phoneNumber:e,code:n}});return(await this._privyInternal.refreshSession()).user}async unlink(e){await this._privyInternal.fetch(t,{body:{phoneNumber:e}});return(await this._privyInternal.refreshSession()).user}}export{i as default};
|
|
2
2
|
//# sourceMappingURL=PhoneApi.js.map
|
package/dist/PhoneApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhoneApi.js","sources":["../src/PhoneApi.ts"],"sourcesContent":[null],"names":["PhoneApi","_privyInternal","constructor","privyInternal","this","sendCode","phoneNumber","token","fetch","PasswordlessSmsInit","body","loginWithCode","code","res","PasswordlessSmsAuthenticate","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","linkWithCode","PasswordlessSmsLink","refreshSession","unlink","PasswordlessSmsUnlink"],"mappings":"gJASc,MAAOA,EAIFC,eAKjB,WAAAC,CAAmBC,GACjBC,KAAKH,eAAiBE,CACvB,CAQM,cAAME,CAASC,EAAqBC,GACzC,OAAOH,KAAKH,eAAeO,MAAMC,EAAqB,CAACC,KAAM,CAACJ,cAAaC,UAC5E,
|
|
1
|
+
{"version":3,"file":"PhoneApi.js","sources":["../src/PhoneApi.ts"],"sourcesContent":[null],"names":["PhoneApi","_privyInternal","constructor","privyInternal","this","sendCode","phoneNumber","token","fetch","PasswordlessSmsInit","body","loginWithCode","code","mode","res","PasswordlessSmsAuthenticate","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","linkWithCode","PasswordlessSmsLink","refreshSession","unlink","PasswordlessSmsUnlink"],"mappings":"gJASc,MAAOA,EAIFC,eAKjB,WAAAC,CAAmBC,GACjBC,KAAKH,eAAiBE,CACvB,CAQM,cAAME,CAASC,EAAqBC,GACzC,OAAOH,KAAKH,eAAeO,MAAMC,EAAqB,CAACC,KAAM,CAACJ,cAAaC,UAC5E,CASM,mBAAMI,CACXL,EACAM,EACAC,GAEA,MAAMC,QAAYV,KAAKH,eAAeO,MAAMO,EAA6B,CACvEL,KAAM,CAACJ,cAAaM,OAAMC,UAW5B,aARMG,QAAQC,IAAI,CAChBb,KAAKH,eAAeiB,QAAQC,WAAWL,EAAIP,OAC3CH,KAAKH,eAAeiB,QAAQE,kBAAkBN,EAAIO,eAClDjB,KAAKH,eAAeiB,QAAQI,mBAAmBR,EAAIS,kBAGrDnB,KAAKH,eAAeuB,WAAWC,UAAUX,EAAIY,MAEtCZ,CACR,CAQM,kBAAMa,CAAarB,EAAqBM,SACvCR,KAAKH,eAAeO,MAAMoB,EAAqB,CAAClB,KAAM,CAACJ,cAAaM,UAK1E,aAHkBR,KAAKH,eAAe4B,kBAG3BH,IACZ,CAEM,YAAMI,CAAOxB,SACZF,KAAKH,eAAeO,MAAMuB,EAAuB,CAACrB,KAAM,CAACJ,iBAK/D,aAHkBF,KAAKH,eAAe4B,kBAG3BH,IACZ"}
|
package/dist/PrivyInternal.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"fetch-retry";import{v4 as e}from"uuid";import{PrivyErrorCode as s}from"@privy-io/api-base";import{getPathWithParams as i,AppConfig as n,AnalyticsEvent as a,RefreshSession as o}from"@privy-io/public-api";import{PrivyApiError as r}from"./Error.js";import{Session as h}from"./Session.js";import c from"./toAbortSignalTimeout.js";import"eventemitter3";import"js-cookie";import"./Token.js";import"jose";const l="privy:caid";class d{baseUrl;_config;appId;appClientId;_storage;_analyticsId;_sdkVersion="js-sdk-core:0.
|
|
1
|
+
import t from"fetch-retry";import{v4 as e}from"uuid";import{PrivyErrorCode as s}from"@privy-io/api-base";import{getPathWithParams as i,AppConfig as n,AnalyticsEvent as a,RefreshSession as o}from"@privy-io/public-api";import{PrivyApiError as r}from"./Error.js";import{Session as h}from"./Session.js";import c from"./toAbortSignalTimeout.js";import"eventemitter3";import"js-cookie";import"./Token.js";import"jose";const l="privy:caid";class d{baseUrl;_config;appId;appClientId;_storage;_analyticsId;_sdkVersion="js-sdk-core:0.27.0";_fetch;nativeAppIdentifier;callbacks;_cache=new Map;session;constructor(e){this._storage=e.storage,this._analyticsId=null,this._getOrGenerateClientAnalyticsId(),this.baseUrl=e.baseUrl??"https://auth.privy.io",this.appId=e.appId,this.appClientId=e.appClientId,this._sdkVersion=e.sdkVersion??this._sdkVersion,this.callbacks=e.callbacks,"undefined"==typeof document&&(this.nativeAppIdentifier=e.nativeAppIdentifier),this.session=new h({storage:this._storage,isUsingServerCookies:!1}),this._fetch=t(fetch,{retries:3,retryDelay:500})}get isReady(){return Boolean(this._config)}get config(){return this._config}get caid(){return this._analyticsId}async _initialize(){this.isReady||(this._config=await this.getAppConfig(),this._config?.custom_api_url&&(this.baseUrl=this._config.custom_api_url,this.session.isUsingServerCookies=!0),this.callbacks?.setIsReady?.(!0),this.createAnalyticsEvent("sdk_initialize",{}))}async fetch(t,{body:e,params:s,headers:n,options:a={onRequest:this._beforeRequest.bind(this)}}){const o=`${this.baseUrl}${i(t.path,s)}`,h=new Request(o,{method:t.method,body:JSON.stringify(e),headers:n}),c=await a.onRequest(h),l=await this._fetch(h,c),d=await l.json();if(l.status>299)throw new r(d);return d}async _beforeRequestWithoutInitialize(t){const e=await this.session.getToken(),s=new Headers(t.headers);s.set("privy-app-id",this.appId),this.appClientId&&s.set("privy-client-id",this.appClientId),s.set("privy-client",this._sdkVersion),s.set("Authorization",`Bearer ${e}`),s.set("Content-Type","application/json"),s.set("Accept","application/json");const i=await this._getOrGenerateClientAnalyticsId();return i&&s.set("privy-ca-id",i),this.nativeAppIdentifier&&s.set("x-native-app-identifier",this.nativeAppIdentifier),{signal:c(2e4),headers:s,credentials:"include"}}async beforeRequestWithoutRefresh(t){return await this._initialize(),this._beforeRequestWithoutInitialize(t)}async _beforeRequest(t){return await this._initialize(),await this.getAccessToken(),this.beforeRequestWithoutRefresh(t)}async getAppConfig(){return await this.fetch(n,{params:{app_id:this.appId},options:{onRequest:this._beforeRequestWithoutInitialize.bind(this)}})}async _getOrGenerateClientAnalyticsId(){if(this._analyticsId)return this._analyticsId;try{const t=await this._storage.get(l);if("string"==typeof t&&t.length>0)return this._analyticsId=t,t}catch(t){console.error("Unable to load clientId",t)}try{this._analyticsId=e()}catch(t){console.error("Unable to generate uuidv4",t)}if(!this._analyticsId)return null;try{await this._storage.put(l,this._analyticsId)}catch(t){console.error(`Unable to store clientId: ${this._analyticsId}`,t)}return this._analyticsId}async destroyClientAnalyticsId(){try{return await this._storage.del(l)}catch(t){console.error("Unable to delete clientId",t)}}async createAnalyticsEvent(t,e){try{await this.fetch(a,{body:{event_name:t,client_id:await this._getOrGenerateClientAnalyticsId(),payload:e},options:{onRequest:this.beforeRequestWithoutRefresh.bind(this)}})}catch(t){}}async refreshSession(){const t=await this.session.getRefreshToken()??void 0,e=t??"key",s=this._cache.get(e);if(s)return await s;const i=this._refreshSession(t);this._cache.set(e,i);try{return await i}catch(t){throw t}finally{this._cache.delete(e)}}async _refreshSession(t){const e=await this.session.getToken();if(!this.session.hasRefreshCredentials(e,t??null))throw await this._initialize(),new Error("missing_or_invalid_token");try{const{session_update_action:e,...s}=await this.fetch(o,{body:{refresh_token:t},options:{onRequest:this.beforeRequestWithoutRefresh.bind(this)}});return this.callbacks?.setUser?.(s.user),"set"===e&&await Promise.all([this.session.storeToken(s.token),this.session.storeRefreshToken(s.refresh_token),this.session.storeIdentityToken(s.identity_token)]),"clear"===e&&(await this.session.destroyLocalState(),this.callbacks?.setUser?.(null)),"ignore"===e&&s.token&&(await this.session.storeToken(s.token),s.identity_token&&await this.session.storeIdentityToken(s.identity_token)),s}catch(t){throw(t instanceof r&&t.code===s.MISSING_OR_INVALID_TOKEN||t instanceof Error&&"missing_or_invalid_token"===t.message)&&(await this.session.destroyLocalState(),this.callbacks?.setUser?.(null)),t}}async getAccessToken(){const[t,e]=await Promise.all([this.session.getToken(),this.session.getRefreshToken()]);if(!this.session.tokenIsActive(t)&&this.session.hasRefreshCredentials(t,e))try{return await this.refreshSession(),await this.session.getToken()}catch(t){return null}return t}async getIdentityToken(){return await this.session.getIdentityToken()}}export{d as PrivyInternal};
|
|
2
2
|
//# sourceMappingURL=PrivyInternal.js.map
|
package/dist/SiweApi.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{SiweUnlink as e,SiweLink as t,SiweAuthenticate as n,SiweInit as i}from"@privy-io/public-api";class r{_privyInternal;_wallet=void 0;_preparedMessage;constructor(e){this._privyInternal=e}async unlinkWallet(t){try{await this._privyInternal.fetch(e,{body:{address:t}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async linkWithSiwe(e,n,i){const r=n||this._wallet,s=i||this._preparedMessage;if(!r)throw new Error("A wallet must be provided in the init step or as an argument to linkWithSiwe");if(!s)throw new Error("A message must be generated and signed before being used to link a wallet to privy");try{await this._privyInternal.fetch(t,{body:{message:s,signature:e,chainId:r.chainId,walletClientType:r.walletClientType,connectorType:r.connectorType}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async loginWithSiwe(e,t,i){const
|
|
1
|
+
import{SiweUnlink as e,SiweLink as t,SiweAuthenticate as n,SiweInit as i}from"@privy-io/public-api";class r{_privyInternal;_wallet=void 0;_preparedMessage;constructor(e){this._privyInternal=e}async unlinkWallet(t){try{await this._privyInternal.fetch(e,{body:{address:t}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async linkWithSiwe(e,n,i){const r=n||this._wallet,s=i||this._preparedMessage;if(!r)throw new Error("A wallet must be provided in the init step or as an argument to linkWithSiwe");if(!s)throw new Error("A message must be generated and signed before being used to link a wallet to privy");try{await this._privyInternal.fetch(t,{body:{message:s,signature:e,chainId:r.chainId,walletClientType:r.walletClientType,connectorType:r.connectorType}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async loginWithSiwe(e,t,i,r){const s=t||this._wallet,a=i||this._preparedMessage;if(!s)throw new Error("A wallet must be provided in the init step or as an argument to loginWithSiwe");if(!a)throw new Error("A message must be generated and signed before being used to login to privy with a wallet");try{const t=await this._privyInternal.fetch(n,{body:{signature:e,message:a,chainId:s.chainId,walletClientType:s.walletClientType,connectorType:s.connectorType,mode:r}});return await Promise.all([this._privyInternal.session.storeToken(t.token),this._privyInternal.session.storeRefreshToken(t.refresh_token),this._privyInternal.session.storeIdentityToken(t.identity_token)]),this._privyInternal.callbacks?.setUser?.(t.user),t}catch(e){throw e}}async init(e,t,n){this._wallet=e;const r=await this._privyInternal.fetch(i,{body:{address:e.address}}),{nonce:s}=r,a=`${(o={chainId:e.chainId.toString().replace("eip155:",""),address:e.address,issuedAt:(new Date).toISOString(),statement:"By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",domain:t,nonce:s,uri:n}).domain} wants you to sign in with your Ethereum account:\n${o.address}\n\n${o.statement}\n\nURI: ${o.uri}\nVersion: 1\nChain ID: ${o.chainId}\nNonce: ${o.nonce}\nIssued At: ${o.issuedAt}\nResources:\n- https://privy.io`;var o;return this._preparedMessage=a,{nonce:s,message:a}}}export{r as default};
|
|
2
2
|
//# sourceMappingURL=SiweApi.js.map
|
package/dist/SiweApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiweApi.js","sources":["../src/SiweApi.ts"],"sourcesContent":[null],"names":["SiweApi","_privyInternal","_wallet","undefined","_preparedMessage","constructor","privyInternal","this","unlinkWallet","address","fetch","SiweUnlink","body","refreshSession","user","error","linkWithSiwe","signature","walletOverride","messageOverride","wallet","message","Error","SiweLink","chainId","walletClientType","connectorType","loginWithSiwe","res","SiweAuthenticate","Promise","all","session","storeToken","token","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","init","domain","uri","response","SiweInit","nonce","opts","toString","replace","issuedAt","Date","toISOString","statement"],"mappings":"oGAkBc,MAAOA,EAEFC,eAQTC,aAA2BC,EAQ3BC,iBAGR,WAAAC,CAAmBC,GACjBC,KAAKN,eAAiBK,CACvB,CAOD,kBAAME,CAIJC,GAEA,UACQF,KAAKN,eAAeS,MAAMC,EAAY,CAC1CC,KAAM,CAACH,aAKT,aAFkBF,KAAKN,eAAeY,kBAE3BC,IACZ,CAAC,MAAOC,GACP,MAAMA,CACP,CACF,CAOD,kBAAMC,CAIJC,EAIAC,EAIAC,GAEA,MAAMC,EAASF,GAAkBX,KAAKL,QAChCmB,EAAUF,GAAmBZ,KAAKH,iBAExC,IAAKgB,EACH,MAAM,IAAIE,MACR,gFAIJ,IAAKD,EACH,MAAM,IAAIC,MACR,sFAIJ,UACQf,KAAKN,eAAeS,MAAMa,EAAU,CACxCX,KAAM,CACJS,UACAJ,YACAO,QAASJ,EAAOI,QAChBC,iBAAkBL,EAAOK,iBACzBC,cAAeN,EAAOM,iBAQ1B,aAJkBnB,KAAKN,eAAeY,kBAI3BC,IACZ,CAAC,MAAOC,GACP,MAAMA,CACP,CACF,CAOD,mBAAMY,CAIJV,EAIAC,EAIAC,GAEA,
|
|
1
|
+
{"version":3,"file":"SiweApi.js","sources":["../src/SiweApi.ts"],"sourcesContent":[null],"names":["SiweApi","_privyInternal","_wallet","undefined","_preparedMessage","constructor","privyInternal","this","unlinkWallet","address","fetch","SiweUnlink","body","refreshSession","user","error","linkWithSiwe","signature","walletOverride","messageOverride","wallet","message","Error","SiweLink","chainId","walletClientType","connectorType","loginWithSiwe","mode","res","SiweAuthenticate","Promise","all","session","storeToken","token","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","init","domain","uri","response","SiweInit","nonce","opts","toString","replace","issuedAt","Date","toISOString","statement"],"mappings":"oGAkBc,MAAOA,EAEFC,eAQTC,aAA2BC,EAQ3BC,iBAGR,WAAAC,CAAmBC,GACjBC,KAAKN,eAAiBK,CACvB,CAOD,kBAAME,CAIJC,GAEA,UACQF,KAAKN,eAAeS,MAAMC,EAAY,CAC1CC,KAAM,CAACH,aAKT,aAFkBF,KAAKN,eAAeY,kBAE3BC,IACZ,CAAC,MAAOC,GACP,MAAMA,CACP,CACF,CAOD,kBAAMC,CAIJC,EAIAC,EAIAC,GAEA,MAAMC,EAASF,GAAkBX,KAAKL,QAChCmB,EAAUF,GAAmBZ,KAAKH,iBAExC,IAAKgB,EACH,MAAM,IAAIE,MACR,gFAIJ,IAAKD,EACH,MAAM,IAAIC,MACR,sFAIJ,UACQf,KAAKN,eAAeS,MAAMa,EAAU,CACxCX,KAAM,CACJS,UACAJ,YACAO,QAASJ,EAAOI,QAChBC,iBAAkBL,EAAOK,iBACzBC,cAAeN,EAAOM,iBAQ1B,aAJkBnB,KAAKN,eAAeY,kBAI3BC,IACZ,CAAC,MAAOC,GACP,MAAMA,CACP,CACF,CAOD,mBAAMY,CAIJV,EAIAC,EAIAC,EAIAS,GAEA,MAAMR,EAASF,GAAkBX,KAAKL,QAChCmB,EAAUF,GAAmBZ,KAAKH,iBAExC,IAAKgB,EACH,MAAM,IAAIE,MACR,iFAIJ,IAAKD,EACH,MAAM,IAAIC,MACR,4FAIJ,IACE,MAAMO,QAAYtB,KAAKN,eAAeS,MAAMoB,EAAkB,CAC5DlB,KAAM,CACJK,YACAI,UACAG,QAASJ,EAAOI,QAChBC,iBAAkBL,EAAOK,iBACzBC,cAAeN,EAAOM,cACtBE,UAWJ,aAPMG,QAAQC,IAAI,CAChBzB,KAAKN,eAAegC,QAAQC,WAAWL,EAAIM,OAC3C5B,KAAKN,eAAegC,QAAQG,kBAAkBP,EAAIQ,eAClD9B,KAAKN,eAAegC,QAAQK,mBAAmBT,EAAIU,kBAGrDhC,KAAKN,eAAeuC,WAAWC,UAAUZ,EAAIf,MACtCe,CACR,CAAC,MAAOd,GACP,MAAMA,CACP,CACF,CAOD,UAAM2B,CAEJtB,EAEAuB,EAEAC,GAEArC,KAAKL,QAAUkB,EAEf,MAAMyB,QAAiBtC,KAAKN,eAAeS,MAAMoC,EAAU,CAAClC,KAAM,CAACH,QAASW,EAAOX,YAC7EsC,MAACA,GAASF,EAEVxB,EAwCD,IADkB2B,EAvCW,CAEhCxB,QAASJ,EAAOI,QAAQyB,WAAWC,QAAQ,UAAW,IACtDzC,QAASW,EAAOX,QAChB0C,UAAU,IAAIC,MAAOC,cACrBC,UAAW,yHACXX,SACAI,QACAH,QAgCWD,4DACfK,EAAKvC,cAELuC,EAAKM,qBAEAN,EAAKJ,8BAEAI,EAAKxB,mBACRwB,EAAKD,qBACDC,EAAKG,2CAVlB,IAA2BH,EA3BvB,OADAzC,KAAKH,iBAAmBiB,EACjB,CAAC0B,QAAO1B,UAChB"}
|
package/dist/chains/polygon.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const
|
|
1
|
+
const o={id:137,name:"Polygon Mainnet",network:"polygon",nativeCurrency:{name:"POL",symbol:"POL",decimals:18},rpcUrls:{privy:{http:["https://polygon-mainnet.rpc.privy.systems"]},alchemy:{http:["https://polygon-mainnet.g.alchemy.com/v2"],webSocket:["wss://polygon-mainnet.g.alchemy.com/v2"]},infura:{http:["https://polygon-mainnet.infura.io/v3"],webSocket:["wss://polygon-mainnet.infura.io/ws/v3"]},default:{http:["https://polygon-rpc.com"]},public:{http:["https://polygon-rpc.com"]}},blockExplorers:{etherscan:{name:"PolygonScan",url:"https://polygonscan.com"},default:{name:"PolygonScan",url:"https://polygonscan.com"}}};export{o as polygon};
|
|
2
2
|
//# sourceMappingURL=polygon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon.js","sources":["../../src/chains/polygon.ts"],"sourcesContent":[null],"names":["polygon","id","name","network","nativeCurrency","symbol","decimals","rpcUrls","privy","http","alchemy","webSocket","infura","default","public","blockExplorers","etherscan","url"],"mappings":"AAEa,MAAAA,EAAiB,CAC5BC,GAAI,IACJC,KAAM,kBACNC,QAAS,
|
|
1
|
+
{"version":3,"file":"polygon.js","sources":["../../src/chains/polygon.ts"],"sourcesContent":[null],"names":["polygon","id","name","network","nativeCurrency","symbol","decimals","rpcUrls","privy","http","alchemy","webSocket","infura","default","public","blockExplorers","etherscan","url"],"mappings":"AAEa,MAAAA,EAAiB,CAC5BC,GAAI,IACJC,KAAM,kBACNC,QAAS,UACTC,eAAgB,CAACF,KAAM,MAAOG,OAAQ,MAAOC,SAAU,IACvDC,QAAS,CACPC,MAAO,CACLC,KAAM,CAAC,8CAETC,QAAS,CACPD,KAAM,CAAC,4CACPE,UAAW,CAAC,2CAEdC,OAAQ,CACNH,KAAM,CAAC,wCACPE,UAAW,CAAC,0CAEdE,QAAS,CACPJ,KAAM,CAAC,4BAETK,OAAQ,CACNL,KAAM,CAAC,6BAGXM,eAAgB,CACdC,UAAW,CACTd,KAAM,cACNe,IAAK,2BAEPJ,QAAS,CACPX,KAAM,cACNe,IAAK"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const o={id:80002,name:"Polygon Amoy",nativeCurrency:{name:"
|
|
1
|
+
const o={id:80002,name:"Polygon Amoy",network:"polygon-amoy",nativeCurrency:{name:"POL",symbol:"POL",decimals:18},rpcUrls:{privy:{http:["https://polygon-amoy.rpc.privy.systems"]},infura:{http:["https://polygon-amoy.infura.io/v3"],webSocket:["wss://polygon-amoy.infura.io/ws/v3"]},default:{http:["https://rpc-amoy.polygon.technology"]}},blockExplorers:{default:{name:"OK LINK",url:"https://www.oklink.com/amoy"}},testnet:!0};export{o as polygonAmoy};
|
|
2
2
|
//# sourceMappingURL=polygonAmoy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygonAmoy.js","sources":["../../src/chains/polygonAmoy.ts"],"sourcesContent":[null],"names":["polygonAmoy","id","name","nativeCurrency","symbol","decimals","rpcUrls","privy","http","infura","webSocket","default","blockExplorers","url","testnet"],"mappings":"AAEa,MAAAA,EAAqB,CAChCC,GAAI,MACJC,KAAM,eACNC,eAAgB,
|
|
1
|
+
{"version":3,"file":"polygonAmoy.js","sources":["../../src/chains/polygonAmoy.ts"],"sourcesContent":[null],"names":["polygonAmoy","id","name","network","nativeCurrency","symbol","decimals","rpcUrls","privy","http","infura","webSocket","default","blockExplorers","url","testnet"],"mappings":"AAEa,MAAAA,EAAqB,CAChCC,GAAI,MACJC,KAAM,eACNC,QAAS,eACTC,eAAgB,CAACF,KAAM,MAAOG,OAAQ,MAAOC,SAAU,IACvDC,QAAS,CACPC,MAAO,CACLC,KAAM,CAAC,2CAETC,OAAQ,CACND,KAAM,CAAC,qCACPE,UAAW,CAAC,uCAEdC,QAAS,CACPH,KAAM,CAAC,yCAGXI,eAAgB,CACdD,QAAS,CACPV,KAAM,UACNY,IAAK,gCAGTC,SAAS"}
|
package/dist/dts/EmailApi.d.ts
CHANGED
|
@@ -11,8 +11,9 @@ export default class EmailApi {
|
|
|
11
11
|
*
|
|
12
12
|
* @param email The email address that the one time code was sent to
|
|
13
13
|
* @param code The one time code
|
|
14
|
+
* @param mode Optional Whether or not to block sign ups (only allow existing users to log in).
|
|
14
15
|
*/
|
|
15
|
-
loginWithCode(email: string, code: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
16
|
+
loginWithCode(email: string, code: string, mode?: 'login-or-sign-up' | 'no-signup'): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
16
17
|
/**
|
|
17
18
|
* Links an email adress to an existing user
|
|
18
19
|
*
|
|
@@ -54,6 +55,16 @@ export default class EmailApi {
|
|
|
54
55
|
chain_id?: string | undefined;
|
|
55
56
|
wallet_client_type?: string | undefined;
|
|
56
57
|
connector_type?: string | undefined;
|
|
58
|
+
} | {
|
|
59
|
+
type: "wallet";
|
|
60
|
+
address: string;
|
|
61
|
+
chain_type: "solana";
|
|
62
|
+
verified_at: number;
|
|
63
|
+
first_verified_at: number | null;
|
|
64
|
+
latest_verified_at: number | null;
|
|
65
|
+
wallet_client: "unknown";
|
|
66
|
+
wallet_client_type?: string | undefined;
|
|
67
|
+
connector_type?: string | undefined;
|
|
57
68
|
} | {
|
|
58
69
|
type: "farcaster";
|
|
59
70
|
fid: number;
|
|
@@ -251,6 +262,16 @@ export default class EmailApi {
|
|
|
251
262
|
chain_id?: string | undefined;
|
|
252
263
|
wallet_client_type?: string | undefined;
|
|
253
264
|
connector_type?: string | undefined;
|
|
265
|
+
} | {
|
|
266
|
+
type: "wallet";
|
|
267
|
+
address: string;
|
|
268
|
+
chain_type: "solana";
|
|
269
|
+
verified_at: number;
|
|
270
|
+
first_verified_at: number | null;
|
|
271
|
+
latest_verified_at: number | null;
|
|
272
|
+
wallet_client: "unknown";
|
|
273
|
+
wallet_client_type?: string | undefined;
|
|
274
|
+
connector_type?: string | undefined;
|
|
254
275
|
} | {
|
|
255
276
|
type: "farcaster";
|
|
256
277
|
fid: number;
|
|
@@ -16,11 +16,12 @@ export default class FarcasterApi {
|
|
|
16
16
|
/**
|
|
17
17
|
* Authenticate with Privy via the Sign-In With Farcaster spec [FIP-11: Sign in with Farcaster](https://github.com/farcasterxyz/protocol/discussions/110).
|
|
18
18
|
*/
|
|
19
|
-
authenticate({ channel_token, message, signature, fid, }: {
|
|
19
|
+
authenticate({ channel_token, message, signature, fid, mode, }: {
|
|
20
20
|
channel_token: string;
|
|
21
21
|
message: string;
|
|
22
22
|
signature: string;
|
|
23
23
|
fid: number;
|
|
24
|
+
mode?: 'login-or-sign-up' | 'no-signup';
|
|
24
25
|
}): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
25
26
|
/**
|
|
26
27
|
* Link with Privy via the Sign-In With Farcaster spec [FIP-11: Sign in with Farcaster](https://github.com/farcasterxyz/protocol/discussions/110).
|
|
@@ -65,6 +66,16 @@ export default class FarcasterApi {
|
|
|
65
66
|
chain_id?: string | undefined;
|
|
66
67
|
wallet_client_type?: string | undefined;
|
|
67
68
|
connector_type?: string | undefined;
|
|
69
|
+
} | {
|
|
70
|
+
type: "wallet";
|
|
71
|
+
address: string;
|
|
72
|
+
chain_type: "solana";
|
|
73
|
+
verified_at: number;
|
|
74
|
+
first_verified_at: number | null;
|
|
75
|
+
latest_verified_at: number | null;
|
|
76
|
+
wallet_client: "unknown";
|
|
77
|
+
wallet_client_type?: string | undefined;
|
|
78
|
+
connector_type?: string | undefined;
|
|
68
79
|
} | {
|
|
69
80
|
type: "farcaster";
|
|
70
81
|
fid: number;
|
|
@@ -267,6 +278,16 @@ export default class FarcasterApi {
|
|
|
267
278
|
chain_id?: string | undefined;
|
|
268
279
|
wallet_client_type?: string | undefined;
|
|
269
280
|
connector_type?: string | undefined;
|
|
281
|
+
} | {
|
|
282
|
+
type: "wallet";
|
|
283
|
+
address: string;
|
|
284
|
+
chain_type: "solana";
|
|
285
|
+
verified_at: number;
|
|
286
|
+
first_verified_at: number | null;
|
|
287
|
+
latest_verified_at: number | null;
|
|
288
|
+
wallet_client: "unknown";
|
|
289
|
+
wallet_client_type?: string | undefined;
|
|
290
|
+
connector_type?: string | undefined;
|
|
270
291
|
} | {
|
|
271
292
|
type: "farcaster";
|
|
272
293
|
fid: number;
|
package/dist/dts/OAuthApi.d.ts
CHANGED
|
@@ -13,8 +13,11 @@ export default class OAuthApi {
|
|
|
13
13
|
*
|
|
14
14
|
* @param authorizationCode The code generated by the authorization server
|
|
15
15
|
* @param returnedStateCode The state value initially set in the request by Privy to the authorization server
|
|
16
|
+
* @param provider The OAuth provider (e.g. google, apple)
|
|
17
|
+
* @param codeType The string literal `raw` indicating this the authorizationCode is unhashed, from a native sign in flow.
|
|
18
|
+
* @param mode Optional Whether or not to block sign ups (only allow existing users to log in).
|
|
16
19
|
*/
|
|
17
|
-
loginWithCode(authorizationCode: string, returnedStateCode: string, provider?: OAuthProviderType, codeType?: 'raw'): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
20
|
+
loginWithCode(authorizationCode: string, returnedStateCode: string, provider?: OAuthProviderType, codeType?: 'raw', mode?: 'login-or-sign-up' | 'no-signup'): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
18
21
|
/**
|
|
19
22
|
* Links an OAuth account to an existing user
|
|
20
23
|
*
|
|
@@ -56,6 +59,16 @@ export default class OAuthApi {
|
|
|
56
59
|
chain_id?: string | undefined;
|
|
57
60
|
wallet_client_type?: string | undefined;
|
|
58
61
|
connector_type?: string | undefined;
|
|
62
|
+
} | {
|
|
63
|
+
type: "wallet";
|
|
64
|
+
address: string;
|
|
65
|
+
chain_type: "solana";
|
|
66
|
+
verified_at: number;
|
|
67
|
+
first_verified_at: number | null;
|
|
68
|
+
latest_verified_at: number | null;
|
|
69
|
+
wallet_client: "unknown";
|
|
70
|
+
wallet_client_type?: string | undefined;
|
|
71
|
+
connector_type?: string | undefined;
|
|
59
72
|
} | {
|
|
60
73
|
type: "farcaster";
|
|
61
74
|
fid: number;
|
|
@@ -259,6 +272,16 @@ export default class OAuthApi {
|
|
|
259
272
|
chain_id?: string | undefined;
|
|
260
273
|
wallet_client_type?: string | undefined;
|
|
261
274
|
connector_type?: string | undefined;
|
|
275
|
+
} | {
|
|
276
|
+
type: "wallet";
|
|
277
|
+
address: string;
|
|
278
|
+
chain_type: "solana";
|
|
279
|
+
verified_at: number;
|
|
280
|
+
first_verified_at: number | null;
|
|
281
|
+
latest_verified_at: number | null;
|
|
282
|
+
wallet_client: "unknown";
|
|
283
|
+
wallet_client_type?: string | undefined;
|
|
284
|
+
connector_type?: string | undefined;
|
|
262
285
|
} | {
|
|
263
286
|
type: "farcaster";
|
|
264
287
|
fid: number;
|
package/dist/dts/PhoneApi.d.ts
CHANGED
|
@@ -11,8 +11,9 @@ export default class PhoneApi {
|
|
|
11
11
|
*
|
|
12
12
|
* @param phoneNumber The phone number that the one time code was sent to
|
|
13
13
|
* @param code The one time code
|
|
14
|
+
* @param mode Optional Whether or not to block sign ups (only allow existing users to log in).
|
|
14
15
|
*/
|
|
15
|
-
loginWithCode(phoneNumber: string, code: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
16
|
+
loginWithCode(phoneNumber: string, code: string, mode?: 'login-or-sign-up' | 'no-signup'): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
|
|
16
17
|
/**
|
|
17
18
|
* Links a phone number to an existing user
|
|
18
19
|
*
|
|
@@ -54,6 +55,16 @@ export default class PhoneApi {
|
|
|
54
55
|
chain_id?: string | undefined;
|
|
55
56
|
wallet_client_type?: string | undefined;
|
|
56
57
|
connector_type?: string | undefined;
|
|
58
|
+
} | {
|
|
59
|
+
type: "wallet";
|
|
60
|
+
address: string;
|
|
61
|
+
chain_type: "solana";
|
|
62
|
+
verified_at: number;
|
|
63
|
+
first_verified_at: number | null;
|
|
64
|
+
latest_verified_at: number | null;
|
|
65
|
+
wallet_client: "unknown";
|
|
66
|
+
wallet_client_type?: string | undefined;
|
|
67
|
+
connector_type?: string | undefined;
|
|
57
68
|
} | {
|
|
58
69
|
type: "farcaster";
|
|
59
70
|
fid: number;
|
|
@@ -251,6 +262,16 @@ export default class PhoneApi {
|
|
|
251
262
|
chain_id?: string | undefined;
|
|
252
263
|
wallet_client_type?: string | undefined;
|
|
253
264
|
connector_type?: string | undefined;
|
|
265
|
+
} | {
|
|
266
|
+
type: "wallet";
|
|
267
|
+
address: string;
|
|
268
|
+
chain_type: "solana";
|
|
269
|
+
verified_at: number;
|
|
270
|
+
first_verified_at: number | null;
|
|
271
|
+
latest_verified_at: number | null;
|
|
272
|
+
wallet_client: "unknown";
|
|
273
|
+
wallet_client_type?: string | undefined;
|
|
274
|
+
connector_type?: string | undefined;
|
|
254
275
|
} | {
|
|
255
276
|
type: "farcaster";
|
|
256
277
|
fid: number;
|
package/dist/dts/SiweApi.d.ts
CHANGED
|
@@ -52,7 +52,11 @@ export default class SiweApi {
|
|
|
52
52
|
/**
|
|
53
53
|
* Optional [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) message, only needed if the message differs from the one in memory that was cached in previous call to `generateMessage`
|
|
54
54
|
*/
|
|
55
|
-
messageOverride?: string
|
|
55
|
+
messageOverride?: string,
|
|
56
|
+
/**
|
|
57
|
+
* Optional Whether or not to block sign ups (only allow existing users to log in).
|
|
58
|
+
*/
|
|
59
|
+
mode?: 'login-or-sign-up' | 'no-signup'): Promise<PrivyAuthenticatedUser>;
|
|
56
60
|
/**
|
|
57
61
|
* Begin a login or link flow according to the [Sign-In With Ethereum](https://eips.ethereum.org/EIPS/eip-4361) spec.
|
|
58
62
|
*
|
package/dist/dts/UserApi.d.ts
CHANGED
|
@@ -38,6 +38,16 @@ export default class UserApi {
|
|
|
38
38
|
chain_id?: string | undefined;
|
|
39
39
|
wallet_client_type?: string | undefined;
|
|
40
40
|
connector_type?: string | undefined;
|
|
41
|
+
} | {
|
|
42
|
+
type: "wallet";
|
|
43
|
+
address: string;
|
|
44
|
+
chain_type: "solana";
|
|
45
|
+
verified_at: number;
|
|
46
|
+
first_verified_at: number | null;
|
|
47
|
+
latest_verified_at: number | null;
|
|
48
|
+
wallet_client: "unknown";
|
|
49
|
+
wallet_client_type?: string | undefined;
|
|
50
|
+
connector_type?: string | undefined;
|
|
41
51
|
} | {
|
|
42
52
|
type: "farcaster";
|
|
43
53
|
fid: number;
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@privy-io/public-api"),t=require("jose"),r=require("eventemitter3"),s=require("@ethersproject/abstract-signer"),a=require("@ethersproject/providers"),i=require("@ethersproject/bignumber"),n=require("@ethersproject/contracts"),o=require("@ethersproject/transactions"),c=require("@ethersproject/units"),l=require("fetch-retry"),d=require("uuid"),h=require("@privy-io/api-base"),p=require("js-cookie");function y(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var m=u(t),_=y(r),v=y(l),w=y(p);class g{_privyInternal;constructor(e){this._privyInternal=e}async syncWithToken(t){const r=await this._privyInternal.fetch(e.CustomJWTAuthenticate,{body:{token:t}});return await Promise.all([this._privyInternal.session.storeToken(r.token),this._privyInternal.session.storeRefreshToken(r.refresh_token),this._privyInternal.session.storeIdentityToken(r.identity_token)]),this._privyInternal.callbacks?.setUser?.(r.user),r}}class f{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(t,r){return this._privyInternal.fetch(e.PasswordlessInit,{body:{email:t,token:r}})}async loginWithCode(t,r){const s=await this._privyInternal.fetch(e.PasswordlessAuthenticate,{body:{email:t,code:r}});return await Promise.all([this._privyInternal.session.storeToken(s.token),this._privyInternal.session.storeRefreshToken(s.refresh_token),this._privyInternal.session.storeIdentityToken(s.identity_token)]),this._privyInternal.callbacks?.setUser?.(s.user),s}async linkWithCode(t,r){await this._privyInternal.fetch(e.PasswordlessLink,{body:{email:t,code:r}});return(await this._privyInternal.refreshSession()).user}async unlink(t){await this._privyInternal.fetch(e.PasswordlessUnlink,{body:{address:t}});return(await this._privyInternal.refreshSession()).user}}class b{_privyInternal;constructor(e){this._privyInternal=e}async initializeAuth({relyingParty:t,redirectUrl:r,token:s}){return await this._privyInternal.fetch(e.FarcasterInit,{body:{relying_party:t,redirect_url:r,token:s}})}async getFarcasterStatus({channel_token:t}){return await this._privyInternal.fetch(e.FarcasterStatus,{headers:{"farcaster-channel-token":t}})}async authenticate({channel_token:t,message:r,signature:s,fid:a}){const i=await this._privyInternal.fetch(e.FarcasterAuthenticate,{body:{channel_token:t,message:r,signature:s,fid:a}});return await Promise.all([this._privyInternal.session.storeToken(i.token),this._privyInternal.session.storeRefreshToken(i.refresh_token),this._privyInternal.session.storeIdentityToken(i.identity_token)]),this._privyInternal.callbacks?.setUser?.(i.user),i}async link({channel_token:t,message:r,signature:s,fid:a}){await this._privyInternal.fetch(e.FarcasterLink,{body:{channel_token:t,message:r,signature:s,fid:a}});return(await this._privyInternal.refreshSession()).user}async unlink({fid:t}){await this._privyInternal.fetch(e.FarcasterUnlink,{body:{fid:t}});return(await this._privyInternal.refreshSession()).user}}class k extends Error{error;code;constructor({error:e,code:t}){super(e),this.error=e,this.code=t}}class I extends Error{error;code;constructor({error:e,code:t}){super(e),this.code=t,this.error=e}}const E="privy:state_code",x="privy:code_verifier";function P(){return t.base64url.encode((e=36,crypto.getRandomValues(new Uint8Array(e))));var e}function T(){return P()}async function S({codeVerifier:e,method:r="S256",digest:s=crypto.subtle.digest.bind(crypto.subtle)}){if("S256"==r){const r=await async function(e,t){const r=(new TextEncoder).encode(e),s=await t("SHA-256",r);return new Uint8Array(s)}(e,s);return t.base64url.encode(r)}return e}class C{_privyInternal;_storage;_crypto;constructor(e,t,r){this._privyInternal=e,this._storage=t,this._crypto=r}async generateURL(t,r){const s=P(),a=T(),i=await S({codeVerifier:s,digest:this._crypto?.digest});return await Promise.all([this._storage.put(x,s),this._storage.put(E,a)]),this._privyInternal.fetch(e.OAuthInit,{body:{redirect_to:r,provider:t,code_challenge:i,state_code:a}})}async loginWithCode(t,r,s,a){const[i,n]=await Promise.all([this._storage.get(x),this._storage.get(E)]);if(n!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"oauth",provider:s,storedStateCode:n??"",returnedStateCode:r??""}),new I({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});const o=await this._privyInternal.fetch(e.OAuthAuthenticate,{body:{authorization_code:t,code_type:a,state_code:n,code_verifier:i}});return await Promise.all([this._privyInternal.session.storeToken(o.token),this._privyInternal.session.storeRefreshToken(o.refresh_token),this._privyInternal.session.storeIdentityToken(o.identity_token)]),this._privyInternal.callbacks?.setUser?.(o.user),await Promise.all([this._storage.del(x),this._storage.del(E)]),o}async linkWithCode(t,r,s,a){const[i,n]=await Promise.all([this._storage.get(x),this._storage.get(E)]);if(n!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"oauth",provider:s,storedStateCode:n??"",returnedStateCode:r??""}),new I({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});await this._privyInternal.fetch(e.OAuthLink,{body:{authorization_code:t,code_type:a,state_code:n,code_verifier:i}});const o=await this._privyInternal.refreshSession();return await Promise.all([this._storage.del(x),this._storage.del(E)]),o.user}async unlink(t,r){await this._privyInternal.fetch(e.OAuthUnlink,{body:{provider:t,subject:r}});return(await this._privyInternal.refreshSession()).user}}class R{_privyInternal;constructor(e){this._privyInternal=e}async generateRegistrationOptions(t){return await this._privyInternal.fetch(e.PasskeyLinkInit,{body:{relying_party:t}})}async generateAuthenticationOptions(t){return await this._privyInternal.fetch(e.PasskeyAuthenticateInit,{body:{relying_party:t}})}async loginWithPasskey(t,r,s){const a=await this._privyInternal.fetch(e.PasskeyAuthenticate,{body:{relying_party:s,challenge:r,authenticator_response:{type:t.type,id:t.id,raw_id:t.rawId,response:{signature:t.response.signature,client_data_json:t.response.clientDataJSON,authenticator_data:t.response.authenticatorData,user_handle:t.response.userHandle||void 0},authenticator_attachment:t.authenticatorAttachment||void 0,client_extension_results:{app_id:t.clientExtensionResults.appid||void 0,cred_props:t.clientExtensionResults.credProps||void 0,hmac_create_secret:t.clientExtensionResults.hmacCreateSecret||void 0}}}});return await Promise.all([this._privyInternal.session.storeToken(a.token),this._privyInternal.session.storeRefreshToken(a.refresh_token),this._privyInternal.session.storeIdentityToken(a.identity_token)]),this._privyInternal.callbacks?.setUser?.(a.user),a}async linkWithPasskey(t,r){await this._privyInternal.fetch(e.PasskeyLink,{body:{relying_party:r,authenticator_response:{type:t.type,id:t.id,raw_id:t.rawId,response:{client_data_json:t.response.clientDataJSON,attestation_object:t.response.attestationObject,authenticator_data:t.response.authenticatorData||void 0,transports:t.response.transports||void 0,public_key:t.response.publicKey||void 0,public_key_algorithm:t.response.publicKeyAlgorithm||void 0},authenticator_attachment:t.authenticatorAttachment||void 0,client_extension_results:{app_id:t.clientExtensionResults.appid||void 0,cred_props:t.clientExtensionResults.credProps||void 0,hmac_create_secret:t.clientExtensionResults.hmacCreateSecret||void 0}}}});return(await this._privyInternal.refreshSession()).user}}class A{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(t,r){return this._privyInternal.fetch(e.PasswordlessSmsInit,{body:{phoneNumber:t,token:r}})}async loginWithCode(t,r){const s=await this._privyInternal.fetch(e.PasswordlessSmsAuthenticate,{body:{phoneNumber:t,code:r}});return await Promise.all([this._privyInternal.session.storeToken(s.token),this._privyInternal.session.storeRefreshToken(s.refresh_token),this._privyInternal.session.storeIdentityToken(s.identity_token)]),this._privyInternal.callbacks?.setUser?.(s.user),s}async linkWithCode(t,r){await this._privyInternal.fetch(e.PasswordlessSmsLink,{body:{phoneNumber:t,code:r}});return(await this._privyInternal.refreshSession()).user}async unlink(t){await this._privyInternal.fetch(e.PasswordlessSmsUnlink,{body:{phoneNumber:t}});return(await this._privyInternal.refreshSession()).user}}class U{_privyInternal;_wallet=void 0;_preparedMessage;constructor(e){this._privyInternal=e}async unlinkWallet(t){try{await this._privyInternal.fetch(e.SiweUnlink,{body:{address:t}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async linkWithSiwe(t,r,s){const a=r||this._wallet,i=s||this._preparedMessage;if(!a)throw new Error("A wallet must be provided in the init step or as an argument to linkWithSiwe");if(!i)throw new Error("A message must be generated and signed before being used to link a wallet to privy");try{await this._privyInternal.fetch(e.SiweLink,{body:{message:i,signature:t,chainId:a.chainId,walletClientType:a.walletClientType,connectorType:a.connectorType}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async loginWithSiwe(t,r,s){const a=r||this._wallet,i=s||this._preparedMessage;if(!a)throw new Error("A wallet must be provided in the init step or as an argument to loginWithSiwe");if(!i)throw new Error("A message must be generated and signed before being used to login to privy with a wallet");try{const r=await this._privyInternal.fetch(e.SiweAuthenticate,{body:{signature:t,message:i,chainId:a.chainId,walletClientType:a.walletClientType,connectorType:a.connectorType}});return await Promise.all([this._privyInternal.session.storeToken(r.token),this._privyInternal.session.storeRefreshToken(r.refresh_token),this._privyInternal.session.storeIdentityToken(r.identity_token)]),this._privyInternal.callbacks?.setUser?.(r.user),r}catch(e){throw e}}async init(t,r,s){this._wallet=t;const a=await this._privyInternal.fetch(e.SiweInit,{body:{address:t.address}}),{nonce:i}=a,n=`${(o={chainId:t.chainId.toString().replace("eip155:",""),address:t.address,issuedAt:(new Date).toISOString(),statement:"By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",domain:r,nonce:i,uri:s}).domain} wants you to sign in with your Ethereum account:\n${o.address}\n\n${o.statement}\n\nURI: ${o.uri}\nVersion: 1\nChain ID: ${o.chainId}\nNonce: ${o.nonce}\nIssued At: ${o.issuedAt}\nResources:\n- https://privy.io`;var o;return this._preparedMessage=n,{nonce:i,message:n}}}class F{_privyInternal;customProvider;phone;email;oauth;siwe;passkey;farcaster;constructor(e,t,r){this._privyInternal=e,this.customProvider=new g(this._privyInternal),this.phone=new A(this._privyInternal),this.email=new f(this._privyInternal),this.oauth=new C(this._privyInternal,t,r),this.siwe=new U(this._privyInternal),this.passkey=new R(this._privyInternal),this.farcaster=new b(this._privyInternal)}async logout(){try{const t=await this._privyInternal.session.getRefreshToken()??void 0;await this._privyInternal.fetch(e.Logout,{body:{refresh_token:t}})}catch(e){console.warn("Error destroying session")}await Promise.all([this._privyInternal.session.destroyLocalState({reason:"logout"}),this._privyInternal.destroyClientAnalyticsId()]),this._privyInternal.callbacks?.setUser?.(null)}}const O={id:42161,name:"Arbitrum One",network:"arbitrum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://arbitrum-mainnet.rpc.privy.systems"]},alchemy:{http:["https://arb-mainnet.g.alchemy.com/v2"],webSocket:["wss://arb-mainnet.g.alchemy.com/v2"]},infura:{http:["https://arbitrum-mainnet.infura.io/v3"],webSocket:["wss://arbitrum-mainnet.infura.io/ws/v3"]},default:{http:["https://arb1.arbitrum.io/rpc"]},public:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{etherscan:{name:"Arbiscan",url:"https://arbiscan.io"},default:{name:"Arbiscan",url:"https://arbiscan.io"}}},N={id:421613,name:"Arbitrum Goerli",network:"arbitrum-goerli",nativeCurrency:{name:"Goerli Ether",symbol:"AGOR",decimals:18},rpcUrls:{default:{http:["https://goerli-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://goerli.arbiscan.io/"}},testnet:!0},L={id:421614,name:"Arbitrum Sepolia",network:"arbitrum-sepolia",nativeCurrency:{name:"Arbitrum Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://arbitrum-sepolia.rpc.privy.systems"]},default:{http:["https://sepolia-rollup.arbitrum.io/rpc"]},public:{http:["https://sepolia-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Blockscout",url:"https://sepolia-explorer.arbitrum.io"}},testnet:!0},G={id:43114,name:"Avalanche",network:"avalanche",nativeCurrency:{decimals:18,name:"Avalanche",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax.network/ext/bc/C/rpc"]},public:{http:["https://api.avax.network/ext/bc/C/rpc"]}},blockExplorers:{etherscan:{name:"SnowTrace",url:"https://snowtrace.io"},default:{name:"SnowTrace",url:"https://snowtrace.io"}}},D={id:43113,name:"Avalanche Fuji",network:"avalanche-fuji",nativeCurrency:{decimals:18,name:"Avalanche Fuji",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax-test.network/ext/bc/C/rpc"]},public:{http:["https://api.avax-test.network/ext/bc/C/rpc"]}},blockExplorers:{etherscan:{name:"SnowTrace",url:"https://testnet.snowtrace.io"},default:{name:"SnowTrace",url:"https://testnet.snowtrace.io"}},testnet:!0},M={id:8453,network:"base",name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://base-mainnet.rpc.privy.systems"]},blast:{http:["https://base-mainnet.blastapi.io"],webSocket:["wss://base-mainnet.blastapi.io"]},default:{http:["https://mainnet.base.org"]},public:{http:["https://mainnet.base.org"]}},blockExplorers:{etherscan:{name:"Basescan",url:"https://basescan.org"},default:{name:"Basescan",url:"https://basescan.org"}}},q={id:84531,network:"base-goerli",name:"Base Goerli Testnet",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://goerli.basescan.org"}},testnet:!0},j={id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://base-sepolia.rpc.privy.systems"]},default:{http:["https://sepolia.base.org"]},public:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Blockscout",url:"https://base-sepolia.blockscout.com"}},testnet:!0},W={id:42220,name:"Celo Mainnet",network:"celo",nativeCurrency:{decimals:18,name:"CELO",symbol:"CELO"},rpcUrls:{default:{http:["https://forno.celo.org"]},infura:{http:["https://celo-mainnet.infura.io/v3"]},public:{http:["https://forno.celo.org"]}},blockExplorers:{default:{name:"Celo Explorer",url:"https://explorer.celo.org/mainnet"},etherscan:{name:"CeloScan",url:"https://celoscan.io"}},testnet:!1},z={id:44787,name:"Celo Alfajores Testnet",network:"celo-alfajores",nativeCurrency:{decimals:18,name:"CELO",symbol:"CELO"},rpcUrls:{default:{http:["https://alfajores-forno.celo-testnet.org"]},infura:{http:["https://celo-alfajores.infura.io/v3"]},public:{http:["https://alfajores-forno.celo-testnet.org"]}},blockExplorers:{default:{name:"Celo Explorer",url:"https://explorer.celo.org/alfajores"},etherscan:{name:"CeloScan",url:"https://alfajores.celoscan.io/"}},testnet:!0},H={id:314,name:"Filecoin - Mainnet",network:"filecoin-mainnet",nativeCurrency:{decimals:18,name:"filecoin",symbol:"FIL"},rpcUrls:{default:{http:["https://api.node.glif.io/rpc/v1"]},public:{http:["https://api.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filfox",url:"https://filfox.info/en"},filscan:{name:"Filscan",url:"https://filscan.io"},filscout:{name:"Filscout",url:"https://filscout.io/en"},glif:{name:"Glif",url:"https://explorer.glif.io"}}},$={id:314159,name:"Filecoin - Calibration testnet",network:"filecoin-calibration",nativeCurrency:{decimals:18,name:"testnet filecoin",symbol:"tFIL"},rpcUrls:{default:{http:["https://api.calibration.node.glif.io/rpc/v1"]},public:{http:["https://api.calibration.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filscan",url:"https://calibration.filscan.io"}}},B={id:17069,name:"Garnet Holesky",network:"garnet-holesky",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.garnetchain.com"]},public:{http:["https://rpc.garnetchain.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://explorer.garnetchain.com"}}},J={id:5,network:"goerli",name:"Goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.ankr.com/eth_goerli"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.etherscan.io"}},testnet:!0},K={id:17e3,name:"Holesky",network:"holesky",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://ethereum-holesky.publicnode.com"]},public:{http:["https://ethereum-holesky.publicnode.com"]}},blockExplorers:{etherscan:{name:"EtherScan",url:"https://holesky.etherscan.io"},default:{name:"EtherScan",url:"https://holesky.etherscan.io"}}},V={id:59144,network:"linea-mainnet",name:"Linea Mainnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.linea.build"],webSocket:["wss://rpc.linea.build"]},public:{http:["https://rpc.linea.build"],webSocket:["wss://rpc.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://lineascan.build"},etherscan:{name:"Etherscan",url:"https://lineascan.build"}},testnet:!1},Y={id:59140,network:"linea-testnet",name:"Linea Goerli Testnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{infura:{http:["https://linea-goerli.infura.io/v3"],webSocket:["wss://linea-goerli.infura.io/ws/v3"]},default:{http:["https://rpc.goerli.linea.build"],webSocket:["wss://rpc.goerli.linea.build"]},public:{http:["https://rpc.goerli.linea.build"],webSocket:["wss://rpc.goerli.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.lineascan.build"},etherscan:{name:"Etherscan",url:"https://goerli.lineascan.build"}},testnet:!0},Q={id:1,network:"homestead",name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://mainnet.rpc.privy.systems"]},alchemy:{http:["https://eth-mainnet.g.alchemy.com/v2"],webSocket:["wss://eth-mainnet.g.alchemy.com/v2"]},infura:{http:["https://mainnet.infura.io/v3"],webSocket:["wss://mainnet.infura.io/ws/v3"]},default:{http:["https://cloudflare-eth.com"]},public:{http:["https://cloudflare-eth.com"]}},blockExplorers:{etherscan:{name:"Etherscan",url:"https://etherscan.io"},default:{name:"Etherscan",url:"https://etherscan.io"}}},Z={id:10,name:"OP Mainnet",network:"optimism",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://optimism-mainnet.rpc.privy.systems"]},alchemy:{http:["https://opt-mainnet.g.alchemy.com/v2"],webSocket:["wss://opt-mainnet.g.alchemy.com/v2"]},infura:{http:["https://optimism-mainnet.infura.io/v3"],webSocket:["wss://optimism-mainnet.infura.io/ws/v3"]},default:{http:["https://mainnet.optimism.io"]},public:{http:["https://mainnet.optimism.io"]}},blockExplorers:{etherscan:{name:"Etherscan",url:"https://optimistic.etherscan.io"},default:{name:"Optimism Explorer",url:"https://explorer.optimism.io"}}},X={id:420,name:"Optimism Goerli Testnet",network:"optimism-goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli.optimism.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli-optimism.etherscan.io"}},testnet:!0},ee={id:11155420,name:"Optimism Sepolia",network:"optimism-sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://optimism-sepolia.rpc.privy.systems"]},default:{http:["https://sepolia.optimism.io"]},public:{http:["https://sepolia.optimism.io"]},infura:{http:["https://optimism-sepolia.infura.io/v3"]}},blockExplorers:{default:{name:"Blockscout",url:"https://optimism-sepolia.blockscout.com"}},testnet:!0},te={id:137,name:"Polygon Mainnet",network:"matic",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{privy:{http:["https://polygon-mainnet.rpc.privy.systems"]},alchemy:{http:["https://polygon-mainnet.g.alchemy.com/v2"],webSocket:["wss://polygon-mainnet.g.alchemy.com/v2"]},infura:{http:["https://polygon-mainnet.infura.io/v3"],webSocket:["wss://polygon-mainnet.infura.io/ws/v3"]},default:{http:["https://polygon-rpc.com"]},public:{http:["https://polygon-rpc.com"]}},blockExplorers:{etherscan:{name:"PolygonScan",url:"https://polygonscan.com"},default:{name:"PolygonScan",url:"https://polygonscan.com"}}},re={id:80001,name:"Mumbai",network:"maticmum",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{default:{http:["https://matic-mumbai.chainstacklabs.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://mumbai.polygonscan.com"}},testnet:!0},se={id:690,name:"Redstone",network:"redstone",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.redstonechain.com"]},public:{http:["https://rpc.redstonechain.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://explorer.redstone.xyz/"}}},ae={id:17001,name:"Redstone Holesky",network:"redstone-holesky",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.holesky.redstone.xyz"]},public:{http:["https://rpc.holesky.redstone.xyz"]}},blockExplorers:{etherscan:{name:"EtherScan",url:"https://explorer.holesky.redstone.xyz"},default:{name:"EtherScan",url:"https://explorer.holesky.redstone.xyz"}}},ie={id:11155111,network:"sepolia",name:"Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"SEP",decimals:18},rpcUrls:{privy:{http:["https://sepolia.rpc.privy.systems"]},alchemy:{http:["https://eth-sepolia.g.alchemy.com/v2"],webSocket:["wss://eth-sepolia.g.alchemy.com/v2"]},infura:{http:["https://sepolia.infura.io/v3"],webSocket:["wss://sepolia.infura.io/ws/v3"]},default:{http:["https://rpc.sepolia.org"]},public:{http:["https://rpc.sepolia.org"]}},blockExplorers:{etherscan:{name:"Etherscan",url:"https://sepolia.etherscan.io"},default:{name:"Etherscan",url:"https://sepolia.etherscan.io"}},testnet:!0},ne={id:7777777,name:"Zora",network:"zora",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]},public:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://explorer.zora.energy"}}},oe={id:999999999,name:"Zora Sepolia",network:"zora-sepolia",nativeCurrency:{decimals:18,name:"Zora Sepolia",symbol:"ETH"},rpcUrls:{default:{http:["https://sepolia.rpc.zora.energy"],webSocket:["wss://sepolia.rpc.zora.energy"]},public:{http:["https://sepolia.rpc.zora.energy"],webSocket:["wss://sepolia.rpc.zora.energy"]}},blockExplorers:{default:{name:"Zora Sepolia Explorer",url:"https://sepolia.explorer.zora.energy/"}},testnet:!0},ce={id:999,name:"Zora Goerli Testnet",network:"zora-testnet",nativeCurrency:{decimals:18,name:"Zora Goerli",symbol:"ETH"},rpcUrls:{default:{http:["https://testnet.rpc.zora.energy"],webSocket:["wss://testnet.rpc.zora.energy"]},public:{http:["https://testnet.rpc.zora.energy"],webSocket:["wss://testnet.rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://testnet.explorer.zora.energy"}},testnet:!0},le={mainnet:Q,goerli:J,sepolia:ie,arbitrum:O,arbitrumGoerli:N,arbitrumSepolia:L,optimism:Z,optimismGoerli:X,optimismSepolia:ee,polygon:te,polygonMumbai:re,celo:W,celoAlfajores:z,filecoin:H,filecoinCalibration:$,base:M,baseGoerli:q,baseSepolia:j,linea:V,lineaTestnet:Y,avalanche:G,avalancheFuji:D,holesky:K,redstone:se,garnetHolesky:B,redstoneHolesky:ae,zora:ne,zoraSepolia:oe,zoraTestnet:ce},de=[Q,J,ie,O,N,L,Z,X,ee,te,re,W,z,H,$,M,q,j,{id:80085,network:"berachain-artio",name:"Berachain Artio",nativeCurrency:{name:"BERA",symbol:"BERA",decimals:18},rpcUrls:{default:{http:["https://berachain-artio.rpc.privy.systems"]},public:{http:["https://berachain-artio.rpc.privy.systems"]}},blockExplorers:{default:{name:"Beratrail",url:"https://artio.beratrail.io"}},testnet:!0},V,Y,G,D,K,se,B,ae,ne,oe,ce],he=new Set(de.map((e=>e.id))),pe=["error","invalid_request_arguments","wallet_not_on_device","invalid_recovery_pin","insufficient_funds"];var ye;exports.PrivyEmbeddedWalletErrorCode=void 0,(ye=exports.PrivyEmbeddedWalletErrorCode||(exports.PrivyEmbeddedWalletErrorCode={})).MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",ye.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",ye.INVALID_DATA="invalid_data",ye.LINKED_TO_ANOTHER_USER="linked_to_another_user",ye.ALLOWLIST_REJECTED="allowlist_rejected",ye.OAUTH_USER_DENIED="oauth_user_denied",ye.UNKNOWN_AUTH_ERROR="unknown_auth_error",ye.USER_EXITED_AUTH_FLOW="exited_auth_flow",ye.MUST_BE_AUTHENTICATED="must_be_authenticated",ye.UNKNOWN_CONNECT_WALLET_ERROR="unknown_connect_wallet_error",ye.GENERIC_CONNECT_WALLET_ERROR="generic_connect_wallet_error",ye.CLIENT_REQUEST_TIMEOUT="client_request_timeout",ye.INVALID_CREDENTIALS="invalid_credentials";class ue extends Error{cause;privyErrorCode;constructor(e,t,r){super(e),t instanceof Error&&(this.cause=t),this.privyErrorCode=r}toString(){return`${this.type}${this.privyErrorCode?`-${this.privyErrorCode}`:""}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}}class me extends ue{type="provider_error";code;data;constructor(e,t,r){super(e),this.code=t,this.data=r}}class _e extends Error{type;constructor(e,t){super(t),this.type=e}}class ve extends ue{type="connector_error";constructor(e,t,r){super(e,t,r)}}class we extends Error{code;data;constructor(e,t,r){super(e),this.code=t,this.data=r}}const ge={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:!0,retryable:!0},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:!0,retryable:!1},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:!0,retryable:!1},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:!0,retryable:!0},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:!0,retryable:!0},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:!0,retryable:!1},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:!0,retryable:!1},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:!0,retryable:!1},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:!0,retryable:!1},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:!0,retryable:!0},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:!0,retryable:!1},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:!0,retryable:!1},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:!0,retryable:!0},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:!0,retryable:!0},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:!0,retryable:!1},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:!0,retryable:!1},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:!0,retryable:!1},E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don’t see your wallet? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don’t see your wallet? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don’t see your wallet? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}};function fe(e){return function(e){const t=e.type;return"string"==typeof t&&pe.includes(t)}(e)&&"wallet_not_on_device"===e.type}class be extends me{details;constructor(e){const t=e;super(t.message,t.code,t.data);const r=Object.values(ge).find((e=>e.eipCode===t.code));this.details=r||ge.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=ge.E32002_CONNECTION_ALREADY_PENDING:this.details=ge.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=ge.E32002_WALLET_LOCKED))}}const ke=["eth_sign","eth_signTransaction","personal_sign","eth_signTypedData_v4","csw_signUserOperation"],Ie=e=>i.BigNumber.from(e);function Ee(e){if("number"==typeof e||"bigint"==typeof e||"string"==typeof e)return e;if("function"==typeof e.toHexString)return e.toHexString();throw new Error(`Expected numeric value but received ${e}`)}function xe(e){const t={};return void 0!==e.to&&(t.to=e.to),void 0!==e.data&&(t.data=e.data),void 0!==e.chainId&&(t.chainId=e.chainId),void 0!==e.type&&(t.type=e.type),void 0!==e.accessList&&(t.accessList=e.accessList),void 0!==e.nonce&&(t.nonce=Ie(e.nonce).toNumber()),void 0!==e.gasLimit&&(t.gasLimit=Ie(e.gasLimit)),void 0!==e.gasPrice&&(t.gasPrice=Ie(e.gasPrice)),void 0!==e.value&&(t.value=Ie(e.value)),void 0!==e.maxFeePerGas&&(t.maxFeePerGas=Ie(e.maxFeePerGas)),void 0!==e.maxPriorityFeePerGas&&(t.maxPriorityFeePerGas=Ie(e.maxPriorityFeePerGas)),t}const Pe=e=>[O.id,N.id,L.id].includes(e),Te=e=>[56,97].includes(e),Se=81457,Ce=168587773,Re="0x420000000000000000000000000000000000000F",Ae=["function getL1Fee(bytes memory _data) external view returns (uint256)"],Ue=e=>[M.id,q.id,j.id,Z.id,X.id,ee.id,ne.id,ce.id,oe.id,Se,Ce].includes(e);const Fe={id:80002,name:"Polygon Amoy",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{privy:{http:["https://polygon-amoy.rpc.privy.systems"]},infura:{http:["https://polygon-amoy.infura.io/v3"],webSocket:["wss://polygon-amoy.infura.io/ws/v3"]},default:{http:["https://rpc-amoy.polygon.technology"]}},blockExplorers:{default:{name:"OK LINK",url:"https://www.oklink.com/amoy"}},testnet:!0},Oe=v.default(fetch,{retries:3,retryDelay:500}),Ne=e=>[te.id,re.id,Fe.id].includes(e),Le=e=>({maxPriorityFee:c.parseUnits(e.maxPriorityFee.toFixed(9),"gwei").toHexString(),maxFee:c.parseUnits(e.maxFee.toFixed(9),"gwei").toHexString()}),Ge=async e=>{let t="";switch(e){case te.id:t="https://gasstation.polygon.technology/v2";break;case re.id:t="https://gasstation-testnet.polygon.technology/v2";break;case Fe.id:t="https://gasstation.polygon.technology/amoy";break;default:throw Error(`chainId ${e} does not support polygon gas stations`)}const r=await Oe(t),s=await r.json();if(r.status>399)throw s;return{safeLow:Le((a=s).safeLow),standard:Le(a.standard),fast:Le(a.fast)};var a};async function De(e,t){try{return(await t.estimateGas(e)).toHexString()}catch(r){let s;if("message"in r&&r.message.includes("insufficient funds")&&(console.warn(`Gas estimation failed with error: ${r}. Retrying gas estimation by omitting the 'value'`),s=await async function({txRequest:e,provider:t}){try{const r={...e,value:void 0};return(await t.estimateGas(r)).toHexString()}catch(e){return console.warn(`Gas estimation failed with error: ${e} when omitting the 'value'`),null}}({txRequest:e,provider:t})),s||(console.warn(`Gas estimation failed with error: ${r}. Retrying gas estimation by omitting the 'from'`),s=await async function({txRequest:e,provider:t}){try{const r={...e,from:void 0};return(await t.estimateGas(r)).toHexString()}catch(e){return console.warn(`Gas estimation failed with error: ${e} when omitting the 'from' address`),null}}({txRequest:e,provider:t})),!s)throw r;return s}}const Me=(e,t,r,s)=>{const i=Number(e),n=t.find((e=>e.id===i));if(!n)throw new ve(`Unsupported chainId ${e}`,4901);let o;if(o=n.rpcUrls.privyWalletOverride&&n.rpcUrls.privyWalletOverride.http[0]?new a.StaticJsonRpcProvider(n.rpcUrls.privyWalletOverride.http[0]):r.rpcUrls&&r.rpcUrls[i]?new a.StaticJsonRpcProvider(r.rpcUrls[i]):n.rpcUrls.privy?.http[0]?new a.StaticJsonRpcProvider({url:n.rpcUrls.privy.http[0],headers:{"privy-app-id":s.appId}}):n.rpcUrls.public?.http[0]?new a.StaticJsonRpcProvider(n.rpcUrls.public?.http[0]):new a.StaticJsonRpcProvider(n.rpcUrls.default?.http[0]),!o)throw new ve(`No RPC url found for ${e}`);return o};function qe(e){return/^-?0x[a-f0-9]+$/i.test(e)}function je(e){const t="number"==typeof e,r="bigint"==typeof e,s="string"==typeof e&&qe(e);return t||r||s}async function We(e,t,r){if(t.chainId=Number(t.chainId),function(e){const t=["gasLimit","gasPrice","value","maxPriorityFeePerGas","maxFeePerGas"];for(const r of t){const t=e[r];if(void 0!==t&&!je(t))throw new Error(`Transaction request property '${r}' must be a valid number, bigint, or hex string representing a quantity`)}if("number"!=typeof e.chainId)throw new Error("Transaction request property 'chainId' must be a number")}(t),t.from||(t.from=e),!t.nonce){const a=new s.VoidSigner(e,r);t.nonce=await a.getTransactionCount("pending")}return t.gasLimit||(t.gas?(t.gasLimit=t.gas,delete t.gas):t.gasLimit=await De(t,r)),"string"==typeof t.type&&qe(t.type)&&(t.type=Number(t.type)),[23294,23295].includes(t.chainId)&&(t.type=0),t=Ne(t.chainId)?await async function(e){if(!Ne(e.chainId))throw new Error("Invalid chain ID for Polygon gas estimation.");if(void 0===e.type&&(e.type=2),e.maxPriorityFeePerGas&&e.maxFeePerGas)return e;try{const{standard:t}=await Ge(e.chainId);e.maxPriorityFeePerGas||(e.maxPriorityFeePerGas=t.maxPriorityFee),e.maxFeePerGas||(e.maxFeePerGas=t.maxFee),e.gasPrice&&(console.warn("`gasPrice` is not supported on this chain and will be ignored. Use `maxPriorityFeePerGas` and/or `maxFeePerGas` instead."),delete e.gasPrice)}catch(e){throw new Error(`Failed to set gas prices from Polygon gas station with error: ${e}.`)}return e}(t):Pe(t.chainId)?await(async(e,t)=>{if(!Pe(e.chainId))throw new Error("Invalid chain ID for Arbitrum gas estimation.");if(void 0===e.type&&(e.type=2),e.maxFeePerGas)return e;try{const{lastBaseFeePerGas:r}=await t.getFeeData();if(r){const t=r.mul(i.BigNumber.from(120)).div(i.BigNumber.from(100));e.maxFeePerGas=Ee(t),e.maxPriorityFeePerGas=Ee(i.BigNumber.from(0))}}catch(e){throw new Error(`Failed to set gas price for Arbitrum transaction: ${e}.`)}return e})(t,r):Ue(t.chainId)?await(async(e,t)=>{if(!Ue(e.chainId))throw new Error("Invalid chain ID for OP Stack gas estimation.");if(void 0===e.type&&(e.type=2),e.gasPrice&&(console.warn("`gasPrice` is not supported on this chain and will be ignored. Use `maxPriorityFeePerGas` and/or `maxFeePerGas` instead."),delete e.gasPrice),e.maxPriorityFeePerGas&&e.maxFeePerGas)return e;try{if(!e.maxPriorityFeePerGas){const r=await t.send("eth_maxPriorityFeePerGas",[]);e.maxPriorityFeePerGas=r}if(e.maxFeePerGas&&(console.warn("maxFeePerGas is specified without maxPriorityFeePerGas - this can result in hung transactions."),e.maxPriorityFeePerGas>=e.maxFeePerGas))throw new Error("Overridden maxFeePerGas is less than or equal to the calculated maxPriorityFeePerGas. Please set both values or maxPriorityFeePerGas alone for correct gas estimation.");if(!e.maxFeePerGas){const{lastBaseFeePerGas:r}=await t.getFeeData();if(!r)throw new Error("Unable to fetch baseFee for last block.");const s=i.BigNumber.from(r).mul(i.BigNumber.from(126)).div(i.BigNumber.from(100)).add(i.BigNumber.from(e.maxPriorityFeePerGas));e.maxFeePerGas=Ee(s)}}catch(e){throw new Error(`Failed to set gas price for OP stack transaction: ${e}.`)}return e})(t,r):Te(t.chainId)?await(async(e,t)=>{if(!Te(e.chainId))throw new Error("Invalid chain ID for BSC gas estimation.");if(void 0===e.type?e.type=0:1!=e.type&&2!=e.type||console.warn("Transaction request type specified is incompatible for chain and will result in undefined behavior. Please use transaction type 0."),!e.gasPrice){const r=await t.getFeeData();e.gasPrice=r.gasPrice?.toHexString()}return e})(t,r):await(async(e,t)=>{if(void 0===e.type&&(e.type=2),2===e.type){if(!e.maxFeePerGas||!e.maxPriorityFeePerGas){const r=await t.getFeeData();e.maxFeePerGas||(e.maxFeePerGas=r.maxFeePerGas?.toHexString()),e.maxPriorityFeePerGas||(e.maxPriorityFeePerGas=r.maxPriorityFeePerGas?.toHexString())}}else if(!e.gasPrice){const r=await t.getFeeData();e.gasPrice=r.gasPrice?.toHexString()}return e})(t,r),0===t.type&&delete t.accessList,2!==t.type&&(delete t.maxPriorityFeePerGas,delete t.maxFeePerGas),t}function ze({currentRecoveryMethod:e,upgradeToRecoveryMethod:t}){switch(e){case"privy":case"user-passcode":return!0;case"icloud":case"google-drive":if(e===t)throw new Error("Cannot upgrade to the existing cloud platform");return!0;default:throw new Error("Unknown recovery method")}}class He extends _.default{_walletProxy;_privyInternal;_address;_chainId;_chains;_jsonRpcProvider;constructor({walletProxy:e,privyInternal:t,address:r,chains:s,chainId:a=s[0].id}){super(),this._walletProxy=e,this._privyInternal=t,this._address=r,this._chainId=a,this._chains=s,this._jsonRpcProvider=Me(a,s,{rpcUrls:[]},{appId:this._privyInternal.appId})}async request(e){if(t=e.method,ke.includes(t))return this.handleIFrameRpc(e);var t;switch(e.method){case"eth_accounts":case"eth_requestAccounts":return this._address?[this._address]:[];case"eth_chainId":return`0x${this._chainId.toString(16)}`;case"wallet_switchEthereumChain":return this.handleSwitchEthereumChain(e);case"eth_estimateGas":return this.handleEstimateGas(e);case"eth_sendTransaction":{const t=e.params?.[0];return this.handleSendTransaction(t)}case"eth_populateTransactionRequest":{const t=e.params?.[0];return this.handlePopulateTransaction(t)}default:return this.handleJsonRpc(e)}}ensureChainId(e){const t={chainId:this._chainId,...e};return this.internalSwitchEthereumChain(t.chainId),t}internalSwitchEthereumChain(e){e&&Number(e)!==this._chainId&&(this._chainId=Number(e),this._jsonRpcProvider=Me(this._chainId,this._chains,{rpcUrls:[]},{appId:this._privyInternal.appId}),this.emit("chainChanged",e))}async handlePopulateTransaction(e){const t=this.ensureChainId(e);return We(this._address,t,this._jsonRpcProvider)}async handleSendTransaction(e){const t=this.ensureChainId(e),r=await We(this._address,t,this._jsonRpcProvider),s=await this.handleIFrameRpc({method:"eth_signTransaction",params:[r]});return await this.handleJsonRpc({method:"eth_sendRawTransaction",params:[s]})}async handleEstimateGas(e){if(!e.params||!Array.isArray(e.params))throw new Error("Invalid params for eth_estimateGas");delete e.params[0].gasPrice,delete e.params[0].maxFeePerGas,delete e.params[0].maxPriorityFeePerGas;const t={...e.params[0],chainId:`0x${this._chainId.toString(16)}`};this.internalSwitchEthereumChain(t.chainId);try{return await this._jsonRpcProvider.send("eth_estimateGas",[t])}catch(e){console.warn(`Gas estimation failed with error: ${e}. Retrying gas estimation by omitting the 'from' address`);try{return delete t.from,await this._jsonRpcProvider.send("eth_estimateGas",[t])}catch(t){throw console.warn(`Gas estimation failed with error: ${t} when omitting the 'from' address`),e}}}handleSwitchEthereumChain(e){if(!e.params||!Array.isArray(e.params))throw new we(`Invalid params for ${e.method}`,4200);let t;if("string"==typeof e.params[0])t=e.params[0];else{if(!("chainId"in e.params[0])||"string"!=typeof e.params[0].chainId)throw new we(`Invalid params for ${e.method}`,4200);t=e.params[0].chainId}this.internalSwitchEthereumChain(t)}async handleIFrameRpc(e){try{const t=await this._privyInternal.getAccessToken();if(!t)throw new Error("Missing privy token. User must be logged in");this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_started",{method:e.method,address:this._address});const r=await this._walletProxy.rpc({request:e,address:this._address,accessToken:t});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_completed",{method:e.method,address:this._address}),r.response.data}catch(t){console.error(t);const r=t instanceof Error?t.message:"Unable to make wallet request";throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_failed",{method:e.method,address:this._address,error:r}),new I({code:"embedded_wallet_request_error",error:r})}}async handleJsonRpc(e){return this._jsonRpcProvider.send(e.method,e.params??[])}toJSON(){return`PrivyEIP1193Provider { address: '${this._address}', chainId: ${this._chainId}, request: [Function] }`}}class $e{_walletProxy;_privyInternal;_publicKey;constructor({walletProxy:e,privyInternal:t,publicKey:r}){this._walletProxy=e,this._privyInternal=t,this._publicKey=r}async request(e){const t=await this._privyInternal.getAccessToken();if(!t)throw new I({error:"Missing access token",code:"attempted_rpc_call_before_logged_in"});return(await this._walletProxy.solanaRpc({accessToken:t,request:e,publicKey:this._publicKey})).response.data}}function Be(e){return void 0!==e.error}const Je=(Ke=0,()=>"id-"+Ke++);var Ke;const Ve=(e,t)=>"bigint"==typeof t?t.toString():t,Ye=e=>new Promise((t=>{setTimeout(t,e)})),Qe=(e,{ms:t,msg:r})=>Promise.race([e,new Promise(((e,s)=>{setTimeout((()=>{s(new Error(r))}),t??15e3)}))]),Ze=new class{callbacks={};enqueue(e,t){this.callbacks[e]=t}dequeue(e,t){const r=this.callbacks[t];if(!r)throw new Error(`cannot dequeue ${e} event: no event found for id ${t}`);switch(delete this.callbacks[t],e){case"privy:iframe:ready":case"privy:wallet:create":case"privy:wallet:connect":case"privy:wallet:recover":case"privy:wallet:rpc":case"privy:wallet:set-recovery":case"privy:solana-wallet:create":case"privy:solana-wallet:connect":case"privy:solana-wallet:recover":case"privy:solana-wallet:rpc":return r;default:throw new Error(`invalid wallet event type ${e}`)}}};class Xe{ready;cache;_embeddedWalletMessagePoster;constructor(e){this.ready=!1,this.cache=new Map,this._embeddedWalletMessagePoster=e}ping(e=15e3){return Qe(this.invoke("privy:iframe:ready",{},this._embeddedWalletMessagePoster),{msg:"Ping reached timeout",ms:e})}create(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:create",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: create"})}connect(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:connect",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: connect"})}recover(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:recover",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: recover",ms:6e4})}setRecovery(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:set-recovery",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: setRecovery",ms:6e4})}rpc(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:rpc",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: rpc"})}createSolana(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:create",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: create"})}connectSolana(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:connect",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: connect"})}recoverSolana(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:recover",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: recover",ms:6e4})}solanaRpc(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:rpc",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: rpc"})}handleEmbeddedWalletMessages(e){switch(e.event){case"privy:iframe:ready":const t=Ze.dequeue(e.event,e.id);return Be(e)?t.reject(new _e(e.error.type,e.error.message)):t.resolve(e.data);case"privy:wallet:create":const r=Ze.dequeue(e.event,e.id);return Be(e)?r.reject(new _e(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallet:connect":const s=Ze.dequeue(e.event,e.id);return Be(e)?s.reject(new _e(e.error.type,e.error.message)):s.resolve(e.data);case"privy:wallet:recover":const a=Ze.dequeue(e.event,e.id);return Be(e)?a.reject(new _e(e.error.type,e.error.message)):a.resolve(e.data);case"privy:wallet:rpc":const i=Ze.dequeue(e.event,e.id);return Be(e)?i.reject(new _e(e.error.type,e.error.message)):i.resolve(e.data);case"privy:wallet:set-recovery":const n=Ze.dequeue(e.event,e.id);return Be(e)?n.reject(new _e(e.error.type,e.error.message)):n.resolve(e.data);case"privy:solana-wallet:create":const o=Ze.dequeue(e.event,e.id);return Be(e)?o.reject(new _e(e.error.type,e.error.message)):o.resolve(e.data);case"privy:solana-wallet:connect":const c=Ze.dequeue(e.event,e.id);return Be(e)?c.reject(new _e(e.error.type,e.error.message)):c.resolve(e.data);case"privy:solana-wallet:recover":const l=Ze.dequeue(e.event,e.id);return Be(e)?l.reject(new _e(e.error.type,e.error.message)):l.resolve(e.data);case"privy:solana-wallet:rpc":const d=Ze.dequeue(e.event,e.id);return Be(e)?d.reject(new _e(e.error.type,e.error.message)):d.resolve(e.data)}}waitForReady(){return this.ready?Promise.resolve():new Promise((async(e,t)=>{for(;!this.ready;)this.invoke("privy:iframe:ready",{},this._embeddedWalletMessagePoster).then((()=>{this.ready=!0,e()})).catch(t),await Ye(150)}))}invoke(e,t,r){const s=((e,t)=>`${e}${JSON.stringify(t,Ve)}`)(e,t);if("privy:wallet:create"===e||"privy:solana-wallet:create"===e){const e=this.cache.get(s);if(e)return e}const a=new Promise(((s,a)=>{const i=Je();Ze.enqueue(i,{resolve:s,reject:a}),r.postMessage(JSON.stringify({id:i,event:e,data:t}),"*")})).finally((()=>{this.cache.delete(s)}));return this.cache.set(s,a),a}}class et{_privyInternal;_proxy;_chains=Array.from(de);constructor(e,t,r){this._privyInternal=e,t&&(this._proxy=new Xe(t)),r&&(this._chains=r)}setMessagePoster(e){this._proxy=new Xe(e)}async create(e,t,r,s,a){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");let i;if(i=t||(e?"user-passcode":"privy"),e&&"string"!=typeof e)throw new Error("Invalid recovery password, must be a string");if("privy"===i&&this._privyInternal.config?.embedded_wallet_config.require_user_password_on_create)throw new Error("Password not provided yet is required by App configuration");const n=await this._privyInternal.getAccessToken();if(!n)throw new Error("User must be logged in to create an embedded wallet");const{address:o}=await this._proxy.create({accessToken:n,recoveryMethod:i,recoveryPassword:e,recoveryAccessToken:r,recoverySecretOverride:s,iCloudRecordNameOverride:a});if(!o)throw new Error("Failed to create wallet");const{user:c}=await this._privyInternal.refreshSession();return{user:c,provider:new He({address:o,privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}}async createSolana(e){if(!this._proxy)throw new I({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_creation_error"});const t=await this._privyInternal.getAccessToken();if(!t)throw new I({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});if(e?.ethereumAccount){if("privy"!==e.ethereumAccount.recovery_method)throw new I({error:"Cannot create Solana wallet for user with Ethereum wallet with user-controlled recovery",code:"embedded_wallet_creation_error"});await this.getProvider(e.ethereumAccount)}const{publicKey:r}=await this._proxy.createSolana({accessToken:t,ethereumAddress:e?.ethereumAccount?.address});if(!r)throw new I({error:"Failed to create wallet",code:"embedded_wallet_creation_error"});return this._privyInternal.callbacks?.setUser&&await this._privyInternal.refreshSession(),new $e({publicKey:r,privyInternal:this._privyInternal,walletProxy:this._proxy})}async hasEmbeddedWallet(){const{user:e,token:t}=await this._privyInternal.refreshSession();if(!e||!t)throw new Error("User must be logged in to interact with embedded wallets");return!!this._getEmbeddedWallet(e)}async isPasswordRequired(){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const{user:e,token:t}=await this._privyInternal.refreshSession();if(!e||!t)throw new Error("User must be logged in to interact with embedded wallets");const r=this._getEmbeddedWallet(e);if(!r)return!1;if("privy"===r.recovery_method)return!1;try{return await this._proxy.connect({accessToken:t,address:r.address}),!1}catch(e){return fe(e)}}async getProvider(e,t,r,s){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const a=await this._load(e,t,r,s);return new He({address:a,privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}async getSolanaProvider(e){if(!this._proxy)throw new I({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_webview_not_loaded"});const t=await this._loadSolana(e);return new $e({publicKey:t,privyInternal:this._privyInternal,walletProxy:this._proxy})}async setPassword(e,t){const{provider:r}=await this.setRecovery({wallet:e,recoveryMethod:"user-passcode",password:t});return r}async setRecovery({wallet:e,...t}){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");ze({currentRecoveryMethod:e.recovery_method,upgradeToRecoveryMethod:"icloud-native"===t.recoveryMethod?"icloud":t.recoveryMethod});const r=await this._load(e),s=await this._privyInternal.getAccessToken();if(!s)throw new Error("User must be logged in to interact with embedded wallets");const a=e.recovery_method;this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_started",{address:e.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:a});try{await this._proxy.setRecovery({accessToken:s,address:r,recoveryMethod:t.recoveryMethod,recoveryPassword:"user-passcode"===t.recoveryMethod?t.password:void 0,recoveryAccessToken:"google-drive"===t.recoveryMethod||"icloud"===t.recoveryMethod?t.recoveryAccessToken:void 0,recoverySecretOverride:"icloud-native"===t.recoveryMethod?t.recoverySecretOverride:void 0,iCloudRecordNameOverride:"icloud-native"===t.recoveryMethod?t.iCloudRecordNameOverride:void 0}),this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_completed",{address:e.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:a});const{user:i}=await this._privyInternal.refreshSession();return{user:i,provider:new He({address:r,privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}}catch(t){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_failed",{address:e.address,recovery_method:e.recovery_method,error:t instanceof Error?t.message:"Unable to recover wallet"}),t}}getURL(){const e=new URL(`${this._privyInternal.baseUrl}/apps/${this._privyInternal.appId}/embedded-wallets`);return this._privyInternal.caid&&e.searchParams.append("caid",this._privyInternal.caid),this._privyInternal.appClientId&&e.searchParams.append("client_id",this._privyInternal.appClientId),e.href}getMessageHandler(){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");return this._proxy.handleEmbeddedWalletMessages.bind(this._proxy)}onMessage(e){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");return this._proxy.handleEmbeddedWalletMessages(e)}async ping(e){try{if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");return await this._proxy.ping(e),!0}catch(e){return console.error(e),!1}}async _load(e,t,r,s){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const a=await this._privyInternal.getAccessToken();if(!a)throw new Error("User must be logged in to interact with embedded wallets");const i=e.address;try{return await this._proxy.connect({accessToken:a,address:i}),i}catch(n){if(fe(n)){try{if("privy"===e.recovery_method){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:e.recovery_method});const t=await this._proxy.recover({accessToken:a,address:i});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:e.recovery_method}),t.address}if("user-passcode"===e.recovery_method&&t){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:e.recovery_method});const r=await this._proxy.recover({accessToken:a,address:i,recoveryPassword:t});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:e.recovery_method}),r.address}if(["google-drive","icloud"].includes(e.recovery_method)&&r){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:e.recovery_method});const t=await this._proxy.recover({accessToken:a,address:i,recoveryAccessToken:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:e.recovery_method}),t.address}if("icloud"===e.recovery_method&&s){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:"icloud-native"});const t=await this._proxy.recover({accessToken:a,address:i,recoverySecretOverride:s});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:"icloud-native"}),t.address}}catch(t){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_failed",{address:e.address,recovery_method:e.recovery_method,error:t instanceof Error?t.message:"Unable to recover wallet"}),t}throw n}throw n}}async _loadSolana(e){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const t=await this._privyInternal.getAccessToken();if(!t)throw new Error("User must be logged in to interact with embedded wallets");const r=e.public_key;try{return await this._proxy.connectSolana({accessToken:t,publicKey:r}),r}catch(e){if(fe(e)){return(await this._proxy.recoverSolana({accessToken:t,publicKey:r})).publicKey}throw e}}_getEmbeddedWallet(e){return e?.linked_accounts.find((e=>"wallet"===e.type&&"embedded"===e.connector_type&&"privy"===e.wallet_client_type))}}class tt{static parse(e){try{return new tt(e)}catch(e){return null}}value;_decoded;constructor(e){this.value=e,this._decoded=m.decodeJwt(e)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}get issuer(){return this._decoded.iss}get audience(){return this._decoded.aud}isExpired(e=0){return Date.now()>=1e3*(this.expiration-e)}}const rt="privy:token",st="privy-token",at="privy:refresh_token",it="privy-refresh-token",nt="privy:id-token",ot="privy-id-token",ct="privy-session",lt="privy:session_transfer_token",dt=["storage_cleared","token_cleared","refresh_token_cleared","identity_token_cleared","forked_token_cleared","token_stored","refresh_token_stored","identity_token_stored"];class ht extends _.default{static events=dt;_storage;_isUsingServerCookies=!1;constructor(e){super(),this._storage=e.storage}set isUsingServerCookies(e){this._isUsingServerCookies=e}async getToken(){const e=await this._storage.get(rt);try{return"string"==typeof e?new tt(e).value:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getToken_error"}),null}}async getRefreshToken(){try{const e=await this._storage.get(at);return"string"==typeof e?e:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getRefreshToken_error"}),null}}async getIdentityToken(){try{const e=await this._storage.get(nt);return"string"==typeof e?e:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getIdentityToken_error"}),null}}async getForkedToken(){try{const e=await this._storage.get(lt);return"string"==typeof e?e:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getForkedToken_error"}),null}}get mightHaveServerCookies(){try{const e=w.default.get(ct);return void 0!==e&&e.length>0}catch(e){console.error(e)}return!1}hasRefreshCredentials(e,t){return this.mightHaveServerCookies||"string"==typeof e&&"string"==typeof t}async hasRecoveryCredentials(){return"string"==typeof await this.getForkedToken()}tokenIsActive(e){if(!e)return!1;const t=tt.parse(e);return null!==t&&!t.isExpired(30)}async destroyLocalState(e){const t=await Promise.all([this._storage.del(rt),this._storage.del(at),this._storage.del(nt),this.clearForkedToken()]);return e?.reason&&this.emit("storage_cleared",{reason:e.reason}),t}async storeToken(e){if("string"==typeof e){const t=await this._storage.get(rt);if(await this._storage.put(rt,e),!this._isUsingServerCookies){const t=tt.parse(e)?.expiration;w.default.set(st,e,{sameSite:"Strict",secure:!0,expires:t?new Date(1e3*t):void 0})}t!==e&&this.emit("token_stored",{cookiesEnabled:this._isUsingServerCookies})}else{const e=await this._storage.get(rt);await this._storage.del(rt),w.default.remove(st),null!==e&&this.emit("token_cleared",{reason:"set_with_non_string_value"})}}async storeRefreshToken(e){"string"==typeof e?(await this._storage.put(at,e),this._isUsingServerCookies||(w.default.set(ct,"t",{sameSite:"Strict",secure:!0,expires:30}),w.default.set(it,e,{sameSite:"Strict",secure:!0,expires:30})),this.emit("refresh_token_stored",{cookiesEnabled:this._isUsingServerCookies})):(await this._storage.del(at),w.default.remove(it),w.default.remove(ct),this.emit("refresh_token_cleared",{reason:"set_with_non_string_value"}))}async storeIdentityToken(e){if("string"==typeof e){const t=await this._storage.get(nt);if(await this._storage.put(nt,e),!this._isUsingServerCookies){const t=tt.parse(e)?.expiration;w.default.set(ot,e,{sameSite:"Strict",secure:!0,expires:t?new Date(1e3*t):void 0})}t!==e&&this.emit("identity_token_stored",{cookiesEnabled:this._isUsingServerCookies})}else{const e=await this._storage.get(nt);await this._storage.del(nt),w.default.remove(ot),null!==e&&this.emit("identity_token_cleared",{reason:"set_with_non_string_value"})}}async clearForkedToken(){await this._storage.del(lt)}}const pt=e=>{const t=new AbortController;return setTimeout((()=>t.abort()),e),t.signal},yt="privy:caid";class ut{baseUrl;_config;appId;appClientId;_storage;_analyticsId;_sdkVersion="js-sdk-core:0.26.7";_fetch;nativeAppIdentifier;callbacks;_cache=new Map;session;constructor(e){this._storage=e.storage,this._analyticsId=null,this._getOrGenerateClientAnalyticsId(),this.baseUrl=e.baseUrl??"https://auth.privy.io",this.appId=e.appId,this.appClientId=e.appClientId,this._sdkVersion=e.sdkVersion??this._sdkVersion,this.callbacks=e.callbacks,"undefined"==typeof document&&(this.nativeAppIdentifier=e.nativeAppIdentifier),this.session=new ht({storage:this._storage,isUsingServerCookies:!1}),this._fetch=v.default(fetch,{retries:3,retryDelay:500})}get isReady(){return Boolean(this._config)}get config(){return this._config}get caid(){return this._analyticsId}async _initialize(){this.isReady||(this._config=await this.getAppConfig(),this._config?.custom_api_url&&(this.baseUrl=this._config.custom_api_url,this.session.isUsingServerCookies=!0),this.callbacks?.setIsReady?.(!0),this.createAnalyticsEvent("sdk_initialize",{}))}async fetch(t,{body:r,params:s,headers:a,options:i={onRequest:this._beforeRequest.bind(this)}}){const n=`${this.baseUrl}${e.getPathWithParams(t.path,s)}`,o=new Request(n,{method:t.method,body:JSON.stringify(r),headers:a}),c=await i.onRequest(o),l=await this._fetch(o,c),d=await l.json();if(l.status>299)throw new k(d);return d}async _beforeRequestWithoutInitialize(e){const t=await this.session.getToken(),r=new Headers(e.headers);r.set("privy-app-id",this.appId),this.appClientId&&r.set("privy-client-id",this.appClientId),r.set("privy-client",this._sdkVersion),r.set("Authorization",`Bearer ${t}`),r.set("Content-Type","application/json"),r.set("Accept","application/json");const s=await this._getOrGenerateClientAnalyticsId();return s&&r.set("privy-ca-id",s),this.nativeAppIdentifier&&r.set("x-native-app-identifier",this.nativeAppIdentifier),{signal:pt(2e4),headers:r,credentials:"include"}}async beforeRequestWithoutRefresh(e){return await this._initialize(),this._beforeRequestWithoutInitialize(e)}async _beforeRequest(e){return await this._initialize(),await this.getAccessToken(),this.beforeRequestWithoutRefresh(e)}async getAppConfig(){return await this.fetch(e.AppConfig,{params:{app_id:this.appId},options:{onRequest:this._beforeRequestWithoutInitialize.bind(this)}})}async _getOrGenerateClientAnalyticsId(){if(this._analyticsId)return this._analyticsId;try{const e=await this._storage.get(yt);if("string"==typeof e&&e.length>0)return this._analyticsId=e,e}catch(e){console.error("Unable to load clientId",e)}try{this._analyticsId=d.v4()}catch(e){console.error("Unable to generate uuidv4",e)}if(!this._analyticsId)return null;try{await this._storage.put(yt,this._analyticsId)}catch(e){console.error(`Unable to store clientId: ${this._analyticsId}`,e)}return this._analyticsId}async destroyClientAnalyticsId(){try{return await this._storage.del(yt)}catch(e){console.error("Unable to delete clientId",e)}}async createAnalyticsEvent(t,r){try{await this.fetch(e.AnalyticsEvent,{body:{event_name:t,client_id:await this._getOrGenerateClientAnalyticsId(),payload:r},options:{onRequest:this.beforeRequestWithoutRefresh.bind(this)}})}catch(e){}}async refreshSession(){const e=await this.session.getRefreshToken()??void 0,t=e??"key",r=this._cache.get(t);if(r)return await r;const s=this._refreshSession(e);this._cache.set(t,s);try{return await s}catch(e){throw e}finally{this._cache.delete(t)}}async _refreshSession(t){const r=await this.session.getToken();if(!this.session.hasRefreshCredentials(r,t??null))throw await this._initialize(),new Error("missing_or_invalid_token");try{const{session_update_action:r,...s}=await this.fetch(e.RefreshSession,{body:{refresh_token:t},options:{onRequest:this.beforeRequestWithoutRefresh.bind(this)}});return this.callbacks?.setUser?.(s.user),"set"===r&&await Promise.all([this.session.storeToken(s.token),this.session.storeRefreshToken(s.refresh_token),this.session.storeIdentityToken(s.identity_token)]),"clear"===r&&(await this.session.destroyLocalState(),this.callbacks?.setUser?.(null)),"ignore"===r&&s.token&&(await this.session.storeToken(s.token),s.identity_token&&await this.session.storeIdentityToken(s.identity_token)),s}catch(e){throw(e instanceof k&&e.code===h.PrivyErrorCode.MISSING_OR_INVALID_TOKEN||e instanceof Error&&"missing_or_invalid_token"===e.message)&&(await this.session.destroyLocalState(),this.callbacks?.setUser?.(null)),e}}async getAccessToken(){const[e,t]=await Promise.all([this.session.getToken(),this.session.getRefreshToken()]);if(!this.session.tokenIsActive(e)&&this.session.hasRefreshCredentials(e,t))try{return await this.refreshSession(),await this.session.getToken()}catch(e){return null}return e}async getIdentityToken(){return await this.session.getIdentityToken()}}class mt{_privyInternal;constructor(e){this._privyInternal=e}async init(t){return this._privyInternal.fetch(e.RecoveryOAuthInitICloud,{body:{client_type:t}})}async getICloudConfiguration(t){return this._privyInternal.fetch(e.RecoveryConfigurationICloud,{body:{client_type:t}})}}class _t{_privyInternal;_storage;_crypto;constructor(e,t,r){this._privyInternal=e,this._storage=t,this._crypto=r}async generateURL(t){const r=P(),s=T(),a=await S({codeVerifier:r,digest:this._crypto?.digest});return await Promise.all([this._storage.put(x,r),this._storage.put(E,s)]),this._privyInternal.fetch(e.RecoveryOAuthInit,{body:{redirect_to:t,code_challenge:a,state_code:s}})}async authorize(t,r){const[s,a]=await Promise.all([this._storage.get(x),this._storage.get(E)]);if(a!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"recovery_oauth",storedStateCode:a??"",returnedStateCode:r??""}),new I({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});const i=await this._privyInternal.fetch(e.RecoveryOAuthAuthenticate,{body:{authorization_code:t,state_code:a,code_verifier:s}});return await Promise.all([this._storage.del(x),this._storage.del(E)]),i}}class vt{_privyInternal;auth;icloudAuth;constructor(e,t,r){this._privyInternal=e,this.auth=new _t(this._privyInternal,t,r),this.icloudAuth=new mt(this._privyInternal)}async getRecoveryKeyMaterial(t,r){return this._privyInternal.fetch(e.RecoveryKeyMaterial,{body:{chain_type:r},params:{address:t}})}}class wt{_privyInternal;constructor(e){this._privyInternal=e}async get(){try{const{user:e}=await this._privyInternal.refreshSession();return{user:e}}catch(e){throw e}}}const gt=["metamask","phantom","brave_wallet","rainbow","coinbase_wallet","metamask","trust","safe","rainbow","uniswap","zerion","argent","spot","omni","cryptocom","blockchain","safepal","bitkeep","zengo","1inch","binance","exodus","mew_wallet","alphawallet","keyring_pro","mathwallet","unstoppable","obvious","ambire","internet_money_wallet","coin98","abc_wallet","arculus_wallet","haha","cling_wallet","broearn","copiosa","burrito_wallet","enjin_wallet","plasma_wallet","avacus","bee","pitaka","pltwallet","minerva","kryptogo","prema","slingshot","kriptonio","timeless","secux","bitizen","blocto","safemoon","privy","unknown"];exports.ALL_WALLET_CLIENT_TYPES=gt,exports.DEFAULT_SUPPORTED_CHAINS=de,exports.DEFAULT_SUPPORTED_CHAIN_IDS=he,exports.EmbeddedProviderError=we,exports.InMemoryCache=class{_cache={};get(e){return this._cache[e]}put(e,t){void 0!==t?this._cache[e]=t:this.del(e)}del(e){delete this._cache[e]}getKeys(){return Object.keys(this._cache)}},exports.LocalStorage=class{async get(e){const t=localStorage.getItem(e);return null===t?void 0:JSON.parse(t)}put(e,t){void 0!==t?localStorage.setItem(e,JSON.stringify(t)):this.del(e)}del(e){localStorage.removeItem(e)}getKeys(){return Object.entries(localStorage).map((([e])=>e))}},exports.PrivyApiError=k,exports.PrivyClientError=I,exports.PrivyConnectorError=ve,exports.PrivyProviderRpcError=be,exports.ProviderErrors=ge,exports.QuantityToBigNumber=Ie,exports.SUPPORTED_CONNECTOR_TYPES=["injected","wallet_connect","wallet_connect_v2","coinbase_wallet","embedded"],exports.calculateTotalGasEstimate=async function(e,t){if(!e.gasLimit)throw new be("gasLimit was not successfully set for transaction.");const r=Ie(e.gasLimit);let s=i.BigNumber.from(0);if(2==e.type){if(!e.maxFeePerGas)throw new be("maxFeePerGas was not successfully set for transaction of type 2.");s=Ie(e.maxFeePerGas)}else{if(!e.gasPrice)throw new be("gasPrice was not successfully set for transaction of type 0 or 1.");s=Ie(e.gasPrice)}let a=r.mul(s),c=i.BigNumber.from(0);if(e.chainId&&Ue(e.chainId))try{c=await async function(e,t){if(!e.chainId||e.chainId&&!Ue(e.chainId))return i.BigNumber.from(0);let r=i.BigNumber.from(0);try{const s=new n.Contract(Re,Ae,t),a=xe(e),i=o.serialize(a);r=await s.getL1Fee(i)}catch(e){}return r}(e,t),a=a.add(c)}catch(e){}return{totalGasEstimate:a,l1ExecutionFeeEstimate:c}},exports.chainDefs=le,exports.convertBigNumberish=Ee,exports.default=class{auth;user;embeddedWallet;recovery;_privyInternal;constructor({clientId:e,...t}){this._privyInternal=new ut({...t,appClientId:e}),this.user=new wt(this._privyInternal),this.auth=new F(this._privyInternal,t.storage,t.crypto),this.embeddedWallet=new et(this._privyInternal,t.embeddedWalletMessagePoster,t.supportedChains),this.recovery=new vt(this._privyInternal,t.storage,t.crypto)}setMessagePoster(e){this.embeddedWallet.setMessagePoster(e)}getAccessToken(){return this._privyInternal.getAccessToken()}getIdentityToken(){return this._privyInternal.getIdentityToken()}},exports.errorIndicatesRecoveryIsNeeded=fe,exports.getUserEmbeddedSolanaWallet=e=>{if(!e)return null;const t=e.linked_accounts.find((e=>"wallet"===e.type&&"privy"===e.wallet_client_type&&"embedded"===e.connector_type&&"solana"===e.chain_type));return t||null},exports.getUserEmbeddedWallet=e=>{if(!e)return null;const t=e.linked_accounts.find((e=>"wallet"===e.type&&"privy"===e.wallet_client_type&&"embedded"===e.connector_type&&"ethereum"===e.chain_type));return t||null},exports.populateTransactionRequest=We,exports.throwIfInvalidRecoveryUpgradePath=ze,exports.toEthersUnsignedTransaction=xe,exports.toObjectKeys=(e,t=!0)=>e.reduce(((e,r)=>({...e,[r]:t})),{});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@privy-io/public-api"),t=require("jose"),r=require("eventemitter3"),s=require("@ethersproject/abstract-signer"),a=require("@ethersproject/providers"),i=require("@ethersproject/bignumber"),n=require("@ethersproject/contracts"),o=require("@ethersproject/transactions"),c=require("@ethersproject/units"),l=require("fetch-retry"),d=require("uuid"),h=require("@privy-io/api-base"),p=require("js-cookie");function y(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var m=u(t),_=y(r),v=y(l),w=y(p);class g{_privyInternal;constructor(e){this._privyInternal=e}async syncWithToken(t){const r=await this._privyInternal.fetch(e.CustomJWTAuthenticate,{body:{token:t}});return await Promise.all([this._privyInternal.session.storeToken(r.token),this._privyInternal.session.storeRefreshToken(r.refresh_token),this._privyInternal.session.storeIdentityToken(r.identity_token)]),this._privyInternal.callbacks?.setUser?.(r.user),r}}class f{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(t,r){return this._privyInternal.fetch(e.PasswordlessInit,{body:{email:t,token:r}})}async loginWithCode(t,r,s){const a=await this._privyInternal.fetch(e.PasswordlessAuthenticate,{body:{email:t,code:r,mode:s}});return await Promise.all([this._privyInternal.session.storeToken(a.token),this._privyInternal.session.storeRefreshToken(a.refresh_token),this._privyInternal.session.storeIdentityToken(a.identity_token)]),this._privyInternal.callbacks?.setUser?.(a.user),a}async linkWithCode(t,r){await this._privyInternal.fetch(e.PasswordlessLink,{body:{email:t,code:r}});return(await this._privyInternal.refreshSession()).user}async unlink(t){await this._privyInternal.fetch(e.PasswordlessUnlink,{body:{address:t}});return(await this._privyInternal.refreshSession()).user}}class b{_privyInternal;constructor(e){this._privyInternal=e}async initializeAuth({relyingParty:t,redirectUrl:r,token:s}){return await this._privyInternal.fetch(e.FarcasterInit,{body:{relying_party:t,redirect_url:r,token:s}})}async getFarcasterStatus({channel_token:t}){return await this._privyInternal.fetch(e.FarcasterStatus,{headers:{"farcaster-channel-token":t}})}async authenticate({channel_token:t,message:r,signature:s,fid:a,mode:i}){const n=await this._privyInternal.fetch(e.FarcasterAuthenticate,{body:{channel_token:t,message:r,signature:s,fid:a,mode:i}});return await Promise.all([this._privyInternal.session.storeToken(n.token),this._privyInternal.session.storeRefreshToken(n.refresh_token),this._privyInternal.session.storeIdentityToken(n.identity_token)]),this._privyInternal.callbacks?.setUser?.(n.user),n}async link({channel_token:t,message:r,signature:s,fid:a}){await this._privyInternal.fetch(e.FarcasterLink,{body:{channel_token:t,message:r,signature:s,fid:a}});return(await this._privyInternal.refreshSession()).user}async unlink({fid:t}){await this._privyInternal.fetch(e.FarcasterUnlink,{body:{fid:t}});return(await this._privyInternal.refreshSession()).user}}class k extends Error{error;code;constructor({error:e,code:t}){super(e),this.error=e,this.code=t}}class I extends Error{error;code;constructor({error:e,code:t}){super(e),this.code=t,this.error=e}}const E="privy:state_code",x="privy:code_verifier";function P(){return t.base64url.encode((e=36,crypto.getRandomValues(new Uint8Array(e))));var e}function T(){return P()}async function S({codeVerifier:e,method:r="S256",digest:s=crypto.subtle.digest.bind(crypto.subtle)}){if("S256"==r){const r=await async function(e,t){const r=(new TextEncoder).encode(e),s=await t("SHA-256",r);return new Uint8Array(s)}(e,s);return t.base64url.encode(r)}return e}class C{_privyInternal;_storage;_crypto;constructor(e,t,r){this._privyInternal=e,this._storage=t,this._crypto=r}async generateURL(t,r){const s=P(),a=T(),i=await S({codeVerifier:s,digest:this._crypto?.digest});return await Promise.all([this._storage.put(x,s),this._storage.put(E,a)]),this._privyInternal.fetch(e.OAuthInit,{body:{redirect_to:r,provider:t,code_challenge:i,state_code:a}})}async loginWithCode(t,r,s,a,i){const[n,o]=await Promise.all([this._storage.get(x),this._storage.get(E)]);if(o!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"oauth",provider:s,storedStateCode:o??"",returnedStateCode:r??""}),new I({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});const c=await this._privyInternal.fetch(e.OAuthAuthenticate,{body:{authorization_code:t,code_type:a,state_code:o,code_verifier:n,mode:i}});return await Promise.all([this._privyInternal.session.storeToken(c.token),this._privyInternal.session.storeRefreshToken(c.refresh_token),this._privyInternal.session.storeIdentityToken(c.identity_token)]),this._privyInternal.callbacks?.setUser?.(c.user),await Promise.all([this._storage.del(x),this._storage.del(E)]),c}async linkWithCode(t,r,s,a){const[i,n]=await Promise.all([this._storage.get(x),this._storage.get(E)]);if(n!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"oauth",provider:s,storedStateCode:n??"",returnedStateCode:r??""}),new I({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});await this._privyInternal.fetch(e.OAuthLink,{body:{authorization_code:t,code_type:a,state_code:n,code_verifier:i}});const o=await this._privyInternal.refreshSession();return await Promise.all([this._storage.del(x),this._storage.del(E)]),o.user}async unlink(t,r){await this._privyInternal.fetch(e.OAuthUnlink,{body:{provider:t,subject:r}});return(await this._privyInternal.refreshSession()).user}}class R{_privyInternal;constructor(e){this._privyInternal=e}async generateRegistrationOptions(t){return await this._privyInternal.fetch(e.PasskeyLinkInit,{body:{relying_party:t}})}async generateAuthenticationOptions(t){return await this._privyInternal.fetch(e.PasskeyAuthenticateInit,{body:{relying_party:t}})}async loginWithPasskey(t,r,s){const a=await this._privyInternal.fetch(e.PasskeyAuthenticate,{body:{relying_party:s,challenge:r,authenticator_response:{type:t.type,id:t.id,raw_id:t.rawId,response:{signature:t.response.signature,client_data_json:t.response.clientDataJSON,authenticator_data:t.response.authenticatorData,user_handle:t.response.userHandle||void 0},authenticator_attachment:t.authenticatorAttachment||void 0,client_extension_results:{app_id:t.clientExtensionResults.appid||void 0,cred_props:t.clientExtensionResults.credProps||void 0,hmac_create_secret:t.clientExtensionResults.hmacCreateSecret||void 0}}}});return await Promise.all([this._privyInternal.session.storeToken(a.token),this._privyInternal.session.storeRefreshToken(a.refresh_token),this._privyInternal.session.storeIdentityToken(a.identity_token)]),this._privyInternal.callbacks?.setUser?.(a.user),a}async linkWithPasskey(t,r){await this._privyInternal.fetch(e.PasskeyLink,{body:{relying_party:r,authenticator_response:{type:t.type,id:t.id,raw_id:t.rawId,response:{client_data_json:t.response.clientDataJSON,attestation_object:t.response.attestationObject,authenticator_data:t.response.authenticatorData||void 0,transports:t.response.transports||void 0,public_key:t.response.publicKey||void 0,public_key_algorithm:t.response.publicKeyAlgorithm||void 0},authenticator_attachment:t.authenticatorAttachment||void 0,client_extension_results:{app_id:t.clientExtensionResults.appid||void 0,cred_props:t.clientExtensionResults.credProps||void 0,hmac_create_secret:t.clientExtensionResults.hmacCreateSecret||void 0}}}});return(await this._privyInternal.refreshSession()).user}}class A{_privyInternal;constructor(e){this._privyInternal=e}async sendCode(t,r){return this._privyInternal.fetch(e.PasswordlessSmsInit,{body:{phoneNumber:t,token:r}})}async loginWithCode(t,r,s){const a=await this._privyInternal.fetch(e.PasswordlessSmsAuthenticate,{body:{phoneNumber:t,code:r,mode:s}});return await Promise.all([this._privyInternal.session.storeToken(a.token),this._privyInternal.session.storeRefreshToken(a.refresh_token),this._privyInternal.session.storeIdentityToken(a.identity_token)]),this._privyInternal.callbacks?.setUser?.(a.user),a}async linkWithCode(t,r){await this._privyInternal.fetch(e.PasswordlessSmsLink,{body:{phoneNumber:t,code:r}});return(await this._privyInternal.refreshSession()).user}async unlink(t){await this._privyInternal.fetch(e.PasswordlessSmsUnlink,{body:{phoneNumber:t}});return(await this._privyInternal.refreshSession()).user}}class U{_privyInternal;_wallet=void 0;_preparedMessage;constructor(e){this._privyInternal=e}async unlinkWallet(t){try{await this._privyInternal.fetch(e.SiweUnlink,{body:{address:t}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async linkWithSiwe(t,r,s){const a=r||this._wallet,i=s||this._preparedMessage;if(!a)throw new Error("A wallet must be provided in the init step or as an argument to linkWithSiwe");if(!i)throw new Error("A message must be generated and signed before being used to link a wallet to privy");try{await this._privyInternal.fetch(e.SiweLink,{body:{message:i,signature:t,chainId:a.chainId,walletClientType:a.walletClientType,connectorType:a.connectorType}});return(await this._privyInternal.refreshSession()).user}catch(e){throw e}}async loginWithSiwe(t,r,s,a){const i=r||this._wallet,n=s||this._preparedMessage;if(!i)throw new Error("A wallet must be provided in the init step or as an argument to loginWithSiwe");if(!n)throw new Error("A message must be generated and signed before being used to login to privy with a wallet");try{const r=await this._privyInternal.fetch(e.SiweAuthenticate,{body:{signature:t,message:n,chainId:i.chainId,walletClientType:i.walletClientType,connectorType:i.connectorType,mode:a}});return await Promise.all([this._privyInternal.session.storeToken(r.token),this._privyInternal.session.storeRefreshToken(r.refresh_token),this._privyInternal.session.storeIdentityToken(r.identity_token)]),this._privyInternal.callbacks?.setUser?.(r.user),r}catch(e){throw e}}async init(t,r,s){this._wallet=t;const a=await this._privyInternal.fetch(e.SiweInit,{body:{address:t.address}}),{nonce:i}=a,n=`${(o={chainId:t.chainId.toString().replace("eip155:",""),address:t.address,issuedAt:(new Date).toISOString(),statement:"By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",domain:r,nonce:i,uri:s}).domain} wants you to sign in with your Ethereum account:\n${o.address}\n\n${o.statement}\n\nURI: ${o.uri}\nVersion: 1\nChain ID: ${o.chainId}\nNonce: ${o.nonce}\nIssued At: ${o.issuedAt}\nResources:\n- https://privy.io`;var o;return this._preparedMessage=n,{nonce:i,message:n}}}class F{_privyInternal;customProvider;phone;email;oauth;siwe;passkey;farcaster;constructor(e,t,r){this._privyInternal=e,this.customProvider=new g(this._privyInternal),this.phone=new A(this._privyInternal),this.email=new f(this._privyInternal),this.oauth=new C(this._privyInternal,t,r),this.siwe=new U(this._privyInternal),this.passkey=new R(this._privyInternal),this.farcaster=new b(this._privyInternal)}async logout(){try{const t=await this._privyInternal.session.getRefreshToken()??void 0;await this._privyInternal.fetch(e.Logout,{body:{refresh_token:t}})}catch(e){console.warn("Error destroying session")}await Promise.all([this._privyInternal.session.destroyLocalState({reason:"logout"}),this._privyInternal.destroyClientAnalyticsId()]),this._privyInternal.callbacks?.setUser?.(null)}}const O={id:42161,name:"Arbitrum One",network:"arbitrum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://arbitrum-mainnet.rpc.privy.systems"]},alchemy:{http:["https://arb-mainnet.g.alchemy.com/v2"],webSocket:["wss://arb-mainnet.g.alchemy.com/v2"]},infura:{http:["https://arbitrum-mainnet.infura.io/v3"],webSocket:["wss://arbitrum-mainnet.infura.io/ws/v3"]},default:{http:["https://arb1.arbitrum.io/rpc"]},public:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{etherscan:{name:"Arbiscan",url:"https://arbiscan.io"},default:{name:"Arbiscan",url:"https://arbiscan.io"}}},N={id:421613,name:"Arbitrum Goerli",network:"arbitrum-goerli",nativeCurrency:{name:"Goerli Ether",symbol:"AGOR",decimals:18},rpcUrls:{default:{http:["https://goerli-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://goerli.arbiscan.io/"}},testnet:!0},L={id:421614,name:"Arbitrum Sepolia",network:"arbitrum-sepolia",nativeCurrency:{name:"Arbitrum Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://arbitrum-sepolia.rpc.privy.systems"]},default:{http:["https://sepolia-rollup.arbitrum.io/rpc"]},public:{http:["https://sepolia-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Blockscout",url:"https://sepolia-explorer.arbitrum.io"}},testnet:!0},G={id:43114,name:"Avalanche",network:"avalanche",nativeCurrency:{decimals:18,name:"Avalanche",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax.network/ext/bc/C/rpc"]},public:{http:["https://api.avax.network/ext/bc/C/rpc"]}},blockExplorers:{etherscan:{name:"SnowTrace",url:"https://snowtrace.io"},default:{name:"SnowTrace",url:"https://snowtrace.io"}}},D={id:43113,name:"Avalanche Fuji",network:"avalanche-fuji",nativeCurrency:{decimals:18,name:"Avalanche Fuji",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax-test.network/ext/bc/C/rpc"]},public:{http:["https://api.avax-test.network/ext/bc/C/rpc"]}},blockExplorers:{etherscan:{name:"SnowTrace",url:"https://testnet.snowtrace.io"},default:{name:"SnowTrace",url:"https://testnet.snowtrace.io"}},testnet:!0},q={id:8453,network:"base",name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://base-mainnet.rpc.privy.systems"]},blast:{http:["https://base-mainnet.blastapi.io"],webSocket:["wss://base-mainnet.blastapi.io"]},default:{http:["https://mainnet.base.org"]},public:{http:["https://mainnet.base.org"]}},blockExplorers:{etherscan:{name:"Basescan",url:"https://basescan.org"},default:{name:"Basescan",url:"https://basescan.org"}}},M={id:84531,network:"base-goerli",name:"Base Goerli Testnet",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://goerli.basescan.org"}},testnet:!0},j={id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://base-sepolia.rpc.privy.systems"]},default:{http:["https://sepolia.base.org"]},public:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Blockscout",url:"https://base-sepolia.blockscout.com"}},testnet:!0},W={id:42220,name:"Celo Mainnet",network:"celo",nativeCurrency:{decimals:18,name:"CELO",symbol:"CELO"},rpcUrls:{default:{http:["https://forno.celo.org"]},infura:{http:["https://celo-mainnet.infura.io/v3"]},public:{http:["https://forno.celo.org"]}},blockExplorers:{default:{name:"Celo Explorer",url:"https://explorer.celo.org/mainnet"},etherscan:{name:"CeloScan",url:"https://celoscan.io"}},testnet:!1},z={id:44787,name:"Celo Alfajores Testnet",network:"celo-alfajores",nativeCurrency:{decimals:18,name:"CELO",symbol:"CELO"},rpcUrls:{default:{http:["https://alfajores-forno.celo-testnet.org"]},infura:{http:["https://celo-alfajores.infura.io/v3"]},public:{http:["https://alfajores-forno.celo-testnet.org"]}},blockExplorers:{default:{name:"Celo Explorer",url:"https://explorer.celo.org/alfajores"},etherscan:{name:"CeloScan",url:"https://alfajores.celoscan.io/"}},testnet:!0},H={id:314,name:"Filecoin - Mainnet",network:"filecoin-mainnet",nativeCurrency:{decimals:18,name:"filecoin",symbol:"FIL"},rpcUrls:{default:{http:["https://api.node.glif.io/rpc/v1"]},public:{http:["https://api.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filfox",url:"https://filfox.info/en"},filscan:{name:"Filscan",url:"https://filscan.io"},filscout:{name:"Filscout",url:"https://filscout.io/en"},glif:{name:"Glif",url:"https://explorer.glif.io"}}},$={id:314159,name:"Filecoin - Calibration testnet",network:"filecoin-calibration",nativeCurrency:{decimals:18,name:"testnet filecoin",symbol:"tFIL"},rpcUrls:{default:{http:["https://api.calibration.node.glif.io/rpc/v1"]},public:{http:["https://api.calibration.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filscan",url:"https://calibration.filscan.io"}}},B={id:17069,name:"Garnet Holesky",network:"garnet-holesky",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.garnetchain.com"]},public:{http:["https://rpc.garnetchain.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://explorer.garnetchain.com"}}},J={id:5,network:"goerli",name:"Goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.ankr.com/eth_goerli"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.etherscan.io"}},testnet:!0},K={id:17e3,name:"Holesky",network:"holesky",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://ethereum-holesky.publicnode.com"]},public:{http:["https://ethereum-holesky.publicnode.com"]}},blockExplorers:{etherscan:{name:"EtherScan",url:"https://holesky.etherscan.io"},default:{name:"EtherScan",url:"https://holesky.etherscan.io"}}},V={id:59144,network:"linea-mainnet",name:"Linea Mainnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.linea.build"],webSocket:["wss://rpc.linea.build"]},public:{http:["https://rpc.linea.build"],webSocket:["wss://rpc.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://lineascan.build"},etherscan:{name:"Etherscan",url:"https://lineascan.build"}},testnet:!1},Y={id:59140,network:"linea-testnet",name:"Linea Goerli Testnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{infura:{http:["https://linea-goerli.infura.io/v3"],webSocket:["wss://linea-goerli.infura.io/ws/v3"]},default:{http:["https://rpc.goerli.linea.build"],webSocket:["wss://rpc.goerli.linea.build"]},public:{http:["https://rpc.goerli.linea.build"],webSocket:["wss://rpc.goerli.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.lineascan.build"},etherscan:{name:"Etherscan",url:"https://goerli.lineascan.build"}},testnet:!0},Q={id:1,network:"homestead",name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://mainnet.rpc.privy.systems"]},alchemy:{http:["https://eth-mainnet.g.alchemy.com/v2"],webSocket:["wss://eth-mainnet.g.alchemy.com/v2"]},infura:{http:["https://mainnet.infura.io/v3"],webSocket:["wss://mainnet.infura.io/ws/v3"]},default:{http:["https://cloudflare-eth.com"]},public:{http:["https://cloudflare-eth.com"]}},blockExplorers:{etherscan:{name:"Etherscan",url:"https://etherscan.io"},default:{name:"Etherscan",url:"https://etherscan.io"}}},Z={id:10,name:"OP Mainnet",network:"optimism",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://optimism-mainnet.rpc.privy.systems"]},alchemy:{http:["https://opt-mainnet.g.alchemy.com/v2"],webSocket:["wss://opt-mainnet.g.alchemy.com/v2"]},infura:{http:["https://optimism-mainnet.infura.io/v3"],webSocket:["wss://optimism-mainnet.infura.io/ws/v3"]},default:{http:["https://mainnet.optimism.io"]},public:{http:["https://mainnet.optimism.io"]}},blockExplorers:{etherscan:{name:"Etherscan",url:"https://optimistic.etherscan.io"},default:{name:"Optimism Explorer",url:"https://explorer.optimism.io"}}},X={id:420,name:"Optimism Goerli Testnet",network:"optimism-goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli.optimism.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli-optimism.etherscan.io"}},testnet:!0},ee={id:11155420,name:"Optimism Sepolia",network:"optimism-sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{privy:{http:["https://optimism-sepolia.rpc.privy.systems"]},default:{http:["https://sepolia.optimism.io"]},public:{http:["https://sepolia.optimism.io"]},infura:{http:["https://optimism-sepolia.infura.io/v3"]}},blockExplorers:{default:{name:"Blockscout",url:"https://optimism-sepolia.blockscout.com"}},testnet:!0},te={id:137,name:"Polygon Mainnet",network:"polygon",nativeCurrency:{name:"POL",symbol:"POL",decimals:18},rpcUrls:{privy:{http:["https://polygon-mainnet.rpc.privy.systems"]},alchemy:{http:["https://polygon-mainnet.g.alchemy.com/v2"],webSocket:["wss://polygon-mainnet.g.alchemy.com/v2"]},infura:{http:["https://polygon-mainnet.infura.io/v3"],webSocket:["wss://polygon-mainnet.infura.io/ws/v3"]},default:{http:["https://polygon-rpc.com"]},public:{http:["https://polygon-rpc.com"]}},blockExplorers:{etherscan:{name:"PolygonScan",url:"https://polygonscan.com"},default:{name:"PolygonScan",url:"https://polygonscan.com"}}},re={id:80001,name:"Mumbai",network:"maticmum",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{default:{http:["https://matic-mumbai.chainstacklabs.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://mumbai.polygonscan.com"}},testnet:!0},se={id:690,name:"Redstone",network:"redstone",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.redstonechain.com"]},public:{http:["https://rpc.redstonechain.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://explorer.redstone.xyz/"}}},ae={id:17001,name:"Redstone Holesky",network:"redstone-holesky",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.holesky.redstone.xyz"]},public:{http:["https://rpc.holesky.redstone.xyz"]}},blockExplorers:{etherscan:{name:"EtherScan",url:"https://explorer.holesky.redstone.xyz"},default:{name:"EtherScan",url:"https://explorer.holesky.redstone.xyz"}}},ie={id:11155111,network:"sepolia",name:"Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"SEP",decimals:18},rpcUrls:{privy:{http:["https://sepolia.rpc.privy.systems"]},alchemy:{http:["https://eth-sepolia.g.alchemy.com/v2"],webSocket:["wss://eth-sepolia.g.alchemy.com/v2"]},infura:{http:["https://sepolia.infura.io/v3"],webSocket:["wss://sepolia.infura.io/ws/v3"]},default:{http:["https://rpc.sepolia.org"]},public:{http:["https://rpc.sepolia.org"]}},blockExplorers:{etherscan:{name:"Etherscan",url:"https://sepolia.etherscan.io"},default:{name:"Etherscan",url:"https://sepolia.etherscan.io"}},testnet:!0},ne={id:7777777,name:"Zora",network:"zora",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]},public:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://explorer.zora.energy"}}},oe={id:999999999,name:"Zora Sepolia",network:"zora-sepolia",nativeCurrency:{decimals:18,name:"Zora Sepolia",symbol:"ETH"},rpcUrls:{default:{http:["https://sepolia.rpc.zora.energy"],webSocket:["wss://sepolia.rpc.zora.energy"]},public:{http:["https://sepolia.rpc.zora.energy"],webSocket:["wss://sepolia.rpc.zora.energy"]}},blockExplorers:{default:{name:"Zora Sepolia Explorer",url:"https://sepolia.explorer.zora.energy/"}},testnet:!0},ce={id:999,name:"Zora Goerli Testnet",network:"zora-testnet",nativeCurrency:{decimals:18,name:"Zora Goerli",symbol:"ETH"},rpcUrls:{default:{http:["https://testnet.rpc.zora.energy"],webSocket:["wss://testnet.rpc.zora.energy"]},public:{http:["https://testnet.rpc.zora.energy"],webSocket:["wss://testnet.rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://testnet.explorer.zora.energy"}},testnet:!0},le={mainnet:Q,goerli:J,sepolia:ie,arbitrum:O,arbitrumGoerli:N,arbitrumSepolia:L,optimism:Z,optimismGoerli:X,optimismSepolia:ee,polygon:te,polygonMumbai:re,celo:W,celoAlfajores:z,filecoin:H,filecoinCalibration:$,base:q,baseGoerli:M,baseSepolia:j,linea:V,lineaTestnet:Y,avalanche:G,avalancheFuji:D,holesky:K,redstone:se,garnetHolesky:B,redstoneHolesky:ae,zora:ne,zoraSepolia:oe,zoraTestnet:ce},de=[Q,J,ie,O,N,L,Z,X,ee,te,re,W,z,H,$,q,M,j,{id:80085,network:"berachain-artio",name:"Berachain Artio",nativeCurrency:{name:"BERA",symbol:"BERA",decimals:18},rpcUrls:{default:{http:["https://berachain-artio.rpc.privy.systems"]},public:{http:["https://berachain-artio.rpc.privy.systems"]}},blockExplorers:{default:{name:"Beratrail",url:"https://artio.beratrail.io"}},testnet:!0},V,Y,G,D,K,se,B,ae,ne,oe,ce],he=new Set(de.map((e=>e.id))),pe=["error","invalid_request_arguments","wallet_not_on_device","invalid_recovery_pin","insufficient_funds"];var ye;exports.PrivyEmbeddedWalletErrorCode=void 0,(ye=exports.PrivyEmbeddedWalletErrorCode||(exports.PrivyEmbeddedWalletErrorCode={})).MISSING_OR_INVALID_PRIVY_APP_ID="missing_or_invalid_privy_app_id",ye.MISSING_OR_INVALID_PRIVY_ACCOUNT_ID="missing_or_invalid_privy_account_id",ye.INVALID_DATA="invalid_data",ye.LINKED_TO_ANOTHER_USER="linked_to_another_user",ye.ALLOWLIST_REJECTED="allowlist_rejected",ye.OAUTH_USER_DENIED="oauth_user_denied",ye.UNKNOWN_AUTH_ERROR="unknown_auth_error",ye.USER_EXITED_AUTH_FLOW="exited_auth_flow",ye.MUST_BE_AUTHENTICATED="must_be_authenticated",ye.UNKNOWN_CONNECT_WALLET_ERROR="unknown_connect_wallet_error",ye.GENERIC_CONNECT_WALLET_ERROR="generic_connect_wallet_error",ye.CLIENT_REQUEST_TIMEOUT="client_request_timeout",ye.INVALID_CREDENTIALS="invalid_credentials";class ue extends Error{cause;privyErrorCode;constructor(e,t,r){super(e),t instanceof Error&&(this.cause=t),this.privyErrorCode=r}toString(){return`${this.type}${this.privyErrorCode?`-${this.privyErrorCode}`:""}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}}class me extends ue{type="provider_error";code;data;constructor(e,t,r){super(e),this.code=t,this.data=r}}class _e extends Error{type;constructor(e,t){super(t),this.type=e}}class ve extends ue{type="connector_error";constructor(e,t,r){super(e,t,r)}}class we extends Error{code;data;constructor(e,t,r){super(e),this.code=t,this.data=r}}const ge={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:!0,retryable:!0},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:!0,retryable:!1},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:!0,retryable:!1},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:!0,retryable:!0},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:!0,retryable:!0},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:!0,retryable:!1},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:!0,retryable:!1},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:!0,retryable:!1},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:!0,retryable:!1},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:!0,retryable:!0},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:!0,retryable:!1},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:!0,retryable:!1},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:!0,retryable:!0},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:!0,retryable:!0},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:!0,retryable:!1},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:!0,retryable:!1},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:!0,retryable:!1},E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don’t see your wallet? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don’t see your wallet? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don’t see your wallet? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}};function fe(e){return function(e){const t=e.type;return"string"==typeof t&&pe.includes(t)}(e)&&"wallet_not_on_device"===e.type}class be extends me{details;constructor(e){const t=e;super(t.message,t.code,t.data);const r=Object.values(ge).find((e=>e.eipCode===t.code));this.details=r||ge.UNKNOWN_ERROR,-32002===t.code&&(t.message?.includes("already pending for origin")?t.message?.includes("wallet_requestPermissions")?this.details=ge.E32002_CONNECTION_ALREADY_PENDING:this.details=ge.E32002_REQUEST_ALREADY_PENDING:t.message?.includes("Already processing")&&t.message.includes("eth_requestAccounts")&&(this.details=ge.E32002_WALLET_LOCKED))}}const ke=["eth_sign","eth_signTransaction","personal_sign","eth_signTypedData_v4","csw_signUserOperation"],Ie=e=>i.BigNumber.from(e);function Ee(e){if("number"==typeof e||"bigint"==typeof e||"string"==typeof e)return e;if("function"==typeof e.toHexString)return e.toHexString();throw new Error(`Expected numeric value but received ${e}`)}function xe(e){const t={};return void 0!==e.to&&(t.to=e.to),void 0!==e.data&&(t.data=e.data),void 0!==e.chainId&&(t.chainId=e.chainId),void 0!==e.type&&(t.type=e.type),void 0!==e.accessList&&(t.accessList=e.accessList),void 0!==e.nonce&&(t.nonce=Ie(e.nonce).toNumber()),void 0!==e.gasLimit&&(t.gasLimit=Ie(e.gasLimit)),void 0!==e.gasPrice&&(t.gasPrice=Ie(e.gasPrice)),void 0!==e.value&&(t.value=Ie(e.value)),void 0!==e.maxFeePerGas&&(t.maxFeePerGas=Ie(e.maxFeePerGas)),void 0!==e.maxPriorityFeePerGas&&(t.maxPriorityFeePerGas=Ie(e.maxPriorityFeePerGas)),t}const Pe=e=>[O.id,N.id,L.id].includes(e),Te=e=>[56,97].includes(e),Se=81457,Ce=168587773,Re="0x420000000000000000000000000000000000000F",Ae=["function getL1Fee(bytes memory _data) external view returns (uint256)"],Ue=e=>[q.id,M.id,j.id,Z.id,X.id,ee.id,ne.id,ce.id,oe.id,Se,Ce].includes(e);const Fe={id:80002,name:"Polygon Amoy",network:"polygon-amoy",nativeCurrency:{name:"POL",symbol:"POL",decimals:18},rpcUrls:{privy:{http:["https://polygon-amoy.rpc.privy.systems"]},infura:{http:["https://polygon-amoy.infura.io/v3"],webSocket:["wss://polygon-amoy.infura.io/ws/v3"]},default:{http:["https://rpc-amoy.polygon.technology"]}},blockExplorers:{default:{name:"OK LINK",url:"https://www.oklink.com/amoy"}},testnet:!0},Oe=v.default(fetch,{retries:3,retryDelay:500}),Ne=e=>[te.id,re.id,Fe.id].includes(e),Le=e=>({maxPriorityFee:c.parseUnits(e.maxPriorityFee.toFixed(9),"gwei").toHexString(),maxFee:c.parseUnits(e.maxFee.toFixed(9),"gwei").toHexString()}),Ge=async e=>{let t="";switch(e){case te.id:t="https://gasstation.polygon.technology/v2";break;case re.id:t="https://gasstation-testnet.polygon.technology/v2";break;case Fe.id:t="https://gasstation.polygon.technology/amoy";break;default:throw Error(`chainId ${e} does not support polygon gas stations`)}const r=await Oe(t),s=await r.json();if(r.status>399)throw s;return{safeLow:Le((a=s).safeLow),standard:Le(a.standard),fast:Le(a.fast)};var a};async function De(e,t){try{return(await t.estimateGas(e)).toHexString()}catch(r){let s;if("message"in r&&r.message.includes("insufficient funds")&&(console.warn(`Gas estimation failed with error: ${r}. Retrying gas estimation by omitting the 'value'`),s=await async function({txRequest:e,provider:t}){try{const r={...e,value:void 0};return(await t.estimateGas(r)).toHexString()}catch(e){return console.warn(`Gas estimation failed with error: ${e} when omitting the 'value'`),null}}({txRequest:e,provider:t})),s||(console.warn(`Gas estimation failed with error: ${r}. Retrying gas estimation by omitting the 'from'`),s=await async function({txRequest:e,provider:t}){try{const r={...e,from:void 0};return(await t.estimateGas(r)).toHexString()}catch(e){return console.warn(`Gas estimation failed with error: ${e} when omitting the 'from' address`),null}}({txRequest:e,provider:t})),!s)throw r;return s}}const qe=(e,t,r,s)=>{const i=Number(e),n=t.find((e=>e.id===i));if(!n)throw new ve(`Unsupported chainId ${e}`,4901);let o;if(o=n.rpcUrls.privyWalletOverride&&n.rpcUrls.privyWalletOverride.http[0]?new a.StaticJsonRpcProvider(n.rpcUrls.privyWalletOverride.http[0]):r.rpcUrls&&r.rpcUrls[i]?new a.StaticJsonRpcProvider(r.rpcUrls[i]):n.rpcUrls.privy?.http[0]?new a.StaticJsonRpcProvider({url:n.rpcUrls.privy.http[0],headers:{"privy-app-id":s.appId}}):n.rpcUrls.public?.http[0]?new a.StaticJsonRpcProvider(n.rpcUrls.public?.http[0]):new a.StaticJsonRpcProvider(n.rpcUrls.default?.http[0]),!o)throw new ve(`No RPC url found for ${e}`);return o};function Me(e){return/^-?0x[a-f0-9]+$/i.test(e)}function je(e){const t="number"==typeof e,r="bigint"==typeof e,s="string"==typeof e&&Me(e);return t||r||s}async function We(e,t,r){if(t.chainId=Number(t.chainId),function(e){const t=["gasLimit","gasPrice","value","maxPriorityFeePerGas","maxFeePerGas"];for(const r of t){const t=e[r];if(void 0!==t&&!je(t))throw new Error(`Transaction request property '${r}' must be a valid number, bigint, or hex string representing a quantity`)}if("number"!=typeof e.chainId)throw new Error("Transaction request property 'chainId' must be a number")}(t),t.from||(t.from=e),!t.nonce){const a=new s.VoidSigner(e,r);t.nonce=await a.getTransactionCount("pending")}return t.gasLimit||(t.gas?(t.gasLimit=t.gas,delete t.gas):t.gasLimit=await De(t,r)),"string"==typeof t.type&&Me(t.type)&&(t.type=Number(t.type)),[23294,23295].includes(t.chainId)&&(t.type=0),t=Ne(t.chainId)?await async function(e){if(!Ne(e.chainId))throw new Error("Invalid chain ID for Polygon gas estimation.");if(void 0===e.type&&(e.type=2),e.maxPriorityFeePerGas&&e.maxFeePerGas)return e;try{const{standard:t}=await Ge(e.chainId);e.maxPriorityFeePerGas||(e.maxPriorityFeePerGas=t.maxPriorityFee),e.maxFeePerGas||(e.maxFeePerGas=t.maxFee),e.gasPrice&&(console.warn("`gasPrice` is not supported on this chain and will be ignored. Use `maxPriorityFeePerGas` and/or `maxFeePerGas` instead."),delete e.gasPrice)}catch(e){throw new Error(`Failed to set gas prices from Polygon gas station with error: ${e}.`)}return e}(t):Pe(t.chainId)?await(async(e,t)=>{if(!Pe(e.chainId))throw new Error("Invalid chain ID for Arbitrum gas estimation.");if(void 0===e.type&&(e.type=2),e.maxFeePerGas)return e;try{const{lastBaseFeePerGas:r}=await t.getFeeData();if(r){const t=r.mul(i.BigNumber.from(120)).div(i.BigNumber.from(100));e.maxFeePerGas=Ee(t),e.maxPriorityFeePerGas=Ee(i.BigNumber.from(0))}}catch(e){throw new Error(`Failed to set gas price for Arbitrum transaction: ${e}.`)}return e})(t,r):Ue(t.chainId)?await(async(e,t)=>{if(!Ue(e.chainId))throw new Error("Invalid chain ID for OP Stack gas estimation.");if(void 0===e.type&&(e.type=2),e.gasPrice&&(console.warn("`gasPrice` is not supported on this chain and will be ignored. Use `maxPriorityFeePerGas` and/or `maxFeePerGas` instead."),delete e.gasPrice),e.maxPriorityFeePerGas&&e.maxFeePerGas)return e;try{if(!e.maxPriorityFeePerGas){const r=await t.send("eth_maxPriorityFeePerGas",[]);e.maxPriorityFeePerGas=r}if(e.maxFeePerGas&&(console.warn("maxFeePerGas is specified without maxPriorityFeePerGas - this can result in hung transactions."),e.maxPriorityFeePerGas>=e.maxFeePerGas))throw new Error("Overridden maxFeePerGas is less than or equal to the calculated maxPriorityFeePerGas. Please set both values or maxPriorityFeePerGas alone for correct gas estimation.");if(!e.maxFeePerGas){const{lastBaseFeePerGas:r}=await t.getFeeData();if(!r)throw new Error("Unable to fetch baseFee for last block.");const s=i.BigNumber.from(r).mul(i.BigNumber.from(126)).div(i.BigNumber.from(100)).add(i.BigNumber.from(e.maxPriorityFeePerGas));e.maxFeePerGas=Ee(s)}}catch(e){throw new Error(`Failed to set gas price for OP stack transaction: ${e}.`)}return e})(t,r):Te(t.chainId)?await(async(e,t)=>{if(!Te(e.chainId))throw new Error("Invalid chain ID for BSC gas estimation.");if(void 0===e.type?e.type=0:1!=e.type&&2!=e.type||console.warn("Transaction request type specified is incompatible for chain and will result in undefined behavior. Please use transaction type 0."),!e.gasPrice){const r=await t.getFeeData();e.gasPrice=r.gasPrice?.toHexString()}return e})(t,r):await(async(e,t)=>{if(void 0===e.type&&(e.type=2),2===e.type){if(!e.maxFeePerGas||!e.maxPriorityFeePerGas){const r=await t.getFeeData();e.maxFeePerGas||(e.maxFeePerGas=r.maxFeePerGas?.toHexString()),e.maxPriorityFeePerGas||(e.maxPriorityFeePerGas=r.maxPriorityFeePerGas?.toHexString())}}else if(!e.gasPrice){const r=await t.getFeeData();e.gasPrice=r.gasPrice?.toHexString()}return e})(t,r),0===t.type&&delete t.accessList,2!==t.type&&(delete t.maxPriorityFeePerGas,delete t.maxFeePerGas),t}function ze({currentRecoveryMethod:e,upgradeToRecoveryMethod:t}){switch(e){case"privy":case"user-passcode":return!0;case"icloud":case"google-drive":if(e===t)throw new Error("Cannot upgrade to the existing cloud platform");return!0;default:throw new Error("Unknown recovery method")}}class He extends _.default{_walletProxy;_privyInternal;_address;_chainId;_chains;_jsonRpcProvider;constructor({walletProxy:e,privyInternal:t,address:r,chains:s,chainId:a=s[0].id}){super(),this._walletProxy=e,this._privyInternal=t,this._address=r,this._chainId=a,this._chains=s,this._jsonRpcProvider=qe(a,s,{rpcUrls:[]},{appId:this._privyInternal.appId})}async request(e){if(t=e.method,ke.includes(t))return this.handleIFrameRpc(e);var t;switch(e.method){case"eth_accounts":case"eth_requestAccounts":return this._address?[this._address]:[];case"eth_chainId":return`0x${this._chainId.toString(16)}`;case"wallet_switchEthereumChain":return this.handleSwitchEthereumChain(e);case"eth_estimateGas":return this.handleEstimateGas(e);case"eth_sendTransaction":{const t=e.params?.[0];return this.handleSendTransaction(t)}case"eth_populateTransactionRequest":{const t=e.params?.[0];return this.handlePopulateTransaction(t)}default:return this.handleJsonRpc(e)}}ensureChainId(e){const t={chainId:this._chainId,...e};return this.internalSwitchEthereumChain(t.chainId),t}internalSwitchEthereumChain(e){e&&Number(e)!==this._chainId&&(this._chainId=Number(e),this._jsonRpcProvider=qe(this._chainId,this._chains,{rpcUrls:[]},{appId:this._privyInternal.appId}),this.emit("chainChanged",e))}async handlePopulateTransaction(e){const t=this.ensureChainId(e);return We(this._address,t,this._jsonRpcProvider)}async handleSendTransaction(e){const t=this.ensureChainId(e),r=await We(this._address,t,this._jsonRpcProvider),s=await this.handleIFrameRpc({method:"eth_signTransaction",params:[r]});return await this.handleJsonRpc({method:"eth_sendRawTransaction",params:[s]})}async handleEstimateGas(e){if(!e.params||!Array.isArray(e.params))throw new Error("Invalid params for eth_estimateGas");delete e.params[0].gasPrice,delete e.params[0].maxFeePerGas,delete e.params[0].maxPriorityFeePerGas;const t={...e.params[0],chainId:`0x${this._chainId.toString(16)}`};this.internalSwitchEthereumChain(t.chainId);try{return await this._jsonRpcProvider.send("eth_estimateGas",[t])}catch(e){console.warn(`Gas estimation failed with error: ${e}. Retrying gas estimation by omitting the 'from' address`);try{return delete t.from,await this._jsonRpcProvider.send("eth_estimateGas",[t])}catch(t){throw console.warn(`Gas estimation failed with error: ${t} when omitting the 'from' address`),e}}}handleSwitchEthereumChain(e){if(!e.params||!Array.isArray(e.params))throw new we(`Invalid params for ${e.method}`,4200);let t;if("string"==typeof e.params[0])t=e.params[0];else{if(!("chainId"in e.params[0])||"string"!=typeof e.params[0].chainId)throw new we(`Invalid params for ${e.method}`,4200);t=e.params[0].chainId}this.internalSwitchEthereumChain(t)}async handleIFrameRpc(e){try{const t=await this._privyInternal.getAccessToken();if(!t)throw new Error("Missing privy token. User must be logged in");this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_started",{method:e.method,address:this._address});const r=await this._walletProxy.rpc({request:e,address:this._address,accessToken:t});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_completed",{method:e.method,address:this._address}),r.response.data}catch(t){console.error(t);const r=t instanceof Error?t.message:"Unable to make wallet request";throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_rpc_failed",{method:e.method,address:this._address,error:r}),new I({code:"embedded_wallet_request_error",error:r})}}async handleJsonRpc(e){return this._jsonRpcProvider.send(e.method,e.params??[])}toJSON(){return`PrivyEIP1193Provider { address: '${this._address}', chainId: ${this._chainId}, request: [Function] }`}}class $e{_walletProxy;_privyInternal;_publicKey;constructor({walletProxy:e,privyInternal:t,publicKey:r}){this._walletProxy=e,this._privyInternal=t,this._publicKey=r}async request(e){const t=await this._privyInternal.getAccessToken();if(!t)throw new I({error:"Missing access token",code:"attempted_rpc_call_before_logged_in"});return(await this._walletProxy.solanaRpc({accessToken:t,request:e,publicKey:this._publicKey})).response.data}}function Be(e){return void 0!==e.error}const Je=(Ke=0,()=>"id-"+Ke++);var Ke;const Ve=(e,t)=>"bigint"==typeof t?t.toString():t,Ye=e=>new Promise((t=>{setTimeout(t,e)})),Qe=(e,{ms:t,msg:r})=>Promise.race([e,new Promise(((e,s)=>{setTimeout((()=>{s(new Error(r))}),t??15e3)}))]),Ze=new class{callbacks={};enqueue(e,t){this.callbacks[e]=t}dequeue(e,t){const r=this.callbacks[t];if(!r)throw new Error(`cannot dequeue ${e} event: no event found for id ${t}`);switch(delete this.callbacks[t],e){case"privy:iframe:ready":case"privy:wallet:create":case"privy:wallet:connect":case"privy:wallet:recover":case"privy:wallet:rpc":case"privy:wallet:set-recovery":case"privy:solana-wallet:create":case"privy:solana-wallet:connect":case"privy:solana-wallet:recover":case"privy:solana-wallet:rpc":return r;default:throw new Error(`invalid wallet event type ${e}`)}}};class Xe{ready;cache;_embeddedWalletMessagePoster;constructor(e){this.ready=!1,this.cache=new Map,this._embeddedWalletMessagePoster=e}ping(e=15e3){return Qe(this.invoke("privy:iframe:ready",{},this._embeddedWalletMessagePoster),{msg:"Ping reached timeout",ms:e})}create(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:create",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: create"})}connect(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:connect",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: connect"})}recover(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:recover",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: recover",ms:6e4})}setRecovery(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:set-recovery",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: setRecovery",ms:6e4})}rpc(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:wallet:rpc",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: rpc"})}createSolana(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:create",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: create"})}connectSolana(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:connect",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: connect"})}recoverSolana(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:recover",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: recover",ms:6e4})}solanaRpc(e){return Qe(this.waitForReady().then((()=>this.invoke("privy:solana-wallet:rpc",e,this._embeddedWalletMessagePoster))),{msg:"Operation reached timeout: rpc"})}handleEmbeddedWalletMessages(e){switch(e.event){case"privy:iframe:ready":const t=Ze.dequeue(e.event,e.id);return Be(e)?t.reject(new _e(e.error.type,e.error.message)):t.resolve(e.data);case"privy:wallet:create":const r=Ze.dequeue(e.event,e.id);return Be(e)?r.reject(new _e(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallet:connect":const s=Ze.dequeue(e.event,e.id);return Be(e)?s.reject(new _e(e.error.type,e.error.message)):s.resolve(e.data);case"privy:wallet:recover":const a=Ze.dequeue(e.event,e.id);return Be(e)?a.reject(new _e(e.error.type,e.error.message)):a.resolve(e.data);case"privy:wallet:rpc":const i=Ze.dequeue(e.event,e.id);return Be(e)?i.reject(new _e(e.error.type,e.error.message)):i.resolve(e.data);case"privy:wallet:set-recovery":const n=Ze.dequeue(e.event,e.id);return Be(e)?n.reject(new _e(e.error.type,e.error.message)):n.resolve(e.data);case"privy:solana-wallet:create":const o=Ze.dequeue(e.event,e.id);return Be(e)?o.reject(new _e(e.error.type,e.error.message)):o.resolve(e.data);case"privy:solana-wallet:connect":const c=Ze.dequeue(e.event,e.id);return Be(e)?c.reject(new _e(e.error.type,e.error.message)):c.resolve(e.data);case"privy:solana-wallet:recover":const l=Ze.dequeue(e.event,e.id);return Be(e)?l.reject(new _e(e.error.type,e.error.message)):l.resolve(e.data);case"privy:solana-wallet:rpc":const d=Ze.dequeue(e.event,e.id);return Be(e)?d.reject(new _e(e.error.type,e.error.message)):d.resolve(e.data)}}waitForReady(){return this.ready?Promise.resolve():new Promise((async(e,t)=>{for(;!this.ready;)this.invoke("privy:iframe:ready",{},this._embeddedWalletMessagePoster).then((()=>{this.ready=!0,e()})).catch(t),await Ye(150)}))}invoke(e,t,r){const s=((e,t)=>`${e}${JSON.stringify(t,Ve)}`)(e,t);if("privy:wallet:create"===e||"privy:solana-wallet:create"===e){const e=this.cache.get(s);if(e)return e}const a=new Promise(((s,a)=>{const i=Je();Ze.enqueue(i,{resolve:s,reject:a}),r.postMessage(JSON.stringify({id:i,event:e,data:t}),"*")})).finally((()=>{this.cache.delete(s)}));return this.cache.set(s,a),a}}class et{_privyInternal;_proxy;_chains=Array.from(de);constructor(e,t,r){this._privyInternal=e,t&&(this._proxy=new Xe(t)),r&&(this._chains=r)}setMessagePoster(e){this._proxy=new Xe(e)}async create(e,t,r,s,a){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");let i;if(i=t||(e?"user-passcode":"privy"),e&&"string"!=typeof e)throw new Error("Invalid recovery password, must be a string");if("privy"===i&&this._privyInternal.config?.embedded_wallet_config.require_user_password_on_create)throw new Error("Password not provided yet is required by App configuration");const n=await this._privyInternal.getAccessToken();if(!n)throw new Error("User must be logged in to create an embedded wallet");const{address:o}=await this._proxy.create({accessToken:n,recoveryMethod:i,recoveryPassword:e,recoveryAccessToken:r,recoverySecretOverride:s,iCloudRecordNameOverride:a});if(!o)throw new Error("Failed to create wallet");const{user:c}=await this._privyInternal.refreshSession();return{user:c,provider:new He({address:o,privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}}async createSolana(e){if(!this._proxy)throw new I({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_creation_error"});const t=await this._privyInternal.getAccessToken();if(!t)throw new I({error:"User must be logged in to create an embedded wallet",code:"embedded_wallet_creation_error"});if(e?.ethereumAccount){if("privy"!==e.ethereumAccount.recovery_method)throw new I({error:"Cannot create Solana wallet for user with Ethereum wallet with user-controlled recovery",code:"embedded_wallet_creation_error"});await this.getProvider(e.ethereumAccount)}const{publicKey:r}=await this._proxy.createSolana({accessToken:t,ethereumAddress:e?.ethereumAccount?.address});if(!r)throw new I({error:"Failed to create wallet",code:"embedded_wallet_creation_error"});return this._privyInternal.callbacks?.setUser&&await this._privyInternal.refreshSession(),new $e({publicKey:r,privyInternal:this._privyInternal,walletProxy:this._proxy})}async hasEmbeddedWallet(){const{user:e,token:t}=await this._privyInternal.refreshSession();if(!e||!t)throw new Error("User must be logged in to interact with embedded wallets");return!!this._getEmbeddedWallet(e)}async isPasswordRequired(){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const{user:e,token:t}=await this._privyInternal.refreshSession();if(!e||!t)throw new Error("User must be logged in to interact with embedded wallets");const r=this._getEmbeddedWallet(e);if(!r)return!1;if("privy"===r.recovery_method)return!1;try{return await this._proxy.connect({accessToken:t,address:r.address}),!1}catch(e){return fe(e)}}async getProvider(e,t,r,s){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const a=await this._load(e,t,r,s);return new He({address:a,privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}async getSolanaProvider(e){if(!this._proxy)throw new I({error:"Embedded wallet proxy not initialized",code:"embedded_wallet_webview_not_loaded"});const t=await this._loadSolana(e);return new $e({publicKey:t,privyInternal:this._privyInternal,walletProxy:this._proxy})}async setPassword(e,t){const{provider:r}=await this.setRecovery({wallet:e,recoveryMethod:"user-passcode",password:t});return r}async setRecovery({wallet:e,...t}){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");ze({currentRecoveryMethod:e.recovery_method,upgradeToRecoveryMethod:"icloud-native"===t.recoveryMethod?"icloud":t.recoveryMethod});const r=await this._load(e),s=await this._privyInternal.getAccessToken();if(!s)throw new Error("User must be logged in to interact with embedded wallets");const a=e.recovery_method;this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_started",{address:e.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:a});try{await this._proxy.setRecovery({accessToken:s,address:r,recoveryMethod:t.recoveryMethod,recoveryPassword:"user-passcode"===t.recoveryMethod?t.password:void 0,recoveryAccessToken:"google-drive"===t.recoveryMethod||"icloud"===t.recoveryMethod?t.recoveryAccessToken:void 0,recoverySecretOverride:"icloud-native"===t.recoveryMethod?t.recoverySecretOverride:void 0,iCloudRecordNameOverride:"icloud-native"===t.recoveryMethod?t.iCloudRecordNameOverride:void 0}),this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_completed",{address:e.address,target_recovery_method:t.recoveryMethod,existing_recovery_method:a});const{user:i}=await this._privyInternal.refreshSession();return{user:i,provider:new He({address:r,privyInternal:this._privyInternal,chains:this._chains,walletProxy:this._proxy})}}catch(t){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_set_recovery_failed",{address:e.address,recovery_method:e.recovery_method,error:t instanceof Error?t.message:"Unable to recover wallet"}),t}}getURL(){const e=new URL(`${this._privyInternal.baseUrl}/apps/${this._privyInternal.appId}/embedded-wallets`);return this._privyInternal.caid&&e.searchParams.append("caid",this._privyInternal.caid),this._privyInternal.appClientId&&e.searchParams.append("client_id",this._privyInternal.appClientId),e.href}getMessageHandler(){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");return this._proxy.handleEmbeddedWalletMessages.bind(this._proxy)}onMessage(e){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");return this._proxy.handleEmbeddedWalletMessages(e)}async ping(e){try{if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");return await this._proxy.ping(e),!0}catch(e){return console.error(e),!1}}async _load(e,t,r,s){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const a=await this._privyInternal.getAccessToken();if(!a)throw new Error("User must be logged in to interact with embedded wallets");const i=e.address;try{return await this._proxy.connect({accessToken:a,address:i}),i}catch(n){if(fe(n)){try{if("privy"===e.recovery_method){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:e.recovery_method});const t=await this._proxy.recover({accessToken:a,address:i});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:e.recovery_method}),t.address}if("user-passcode"===e.recovery_method&&t){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:e.recovery_method});const r=await this._proxy.recover({accessToken:a,address:i,recoveryPassword:t});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:e.recovery_method}),r.address}if(["google-drive","icloud"].includes(e.recovery_method)&&r){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:e.recovery_method});const t=await this._proxy.recover({accessToken:a,address:i,recoveryAccessToken:r});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:e.recovery_method}),t.address}if("icloud"===e.recovery_method&&s){this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_started",{address:e.address,recovery_method:"icloud-native"});const t=await this._proxy.recover({accessToken:a,address:i,recoverySecretOverride:s});return this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_completed",{address:e.address,recovery_method:"icloud-native"}),t.address}}catch(t){throw this._privyInternal.createAnalyticsEvent("embedded_wallet_sdk_recovery_failed",{address:e.address,recovery_method:e.recovery_method,error:t instanceof Error?t.message:"Unable to recover wallet"}),t}throw n}throw n}}async _loadSolana(e){if(!this._proxy)throw new Error("Embedded wallet proxy not initialized");const t=await this._privyInternal.getAccessToken();if(!t)throw new Error("User must be logged in to interact with embedded wallets");const r=e.public_key;try{return await this._proxy.connectSolana({accessToken:t,publicKey:r}),r}catch(e){if(fe(e)){return(await this._proxy.recoverSolana({accessToken:t,publicKey:r})).publicKey}throw e}}_getEmbeddedWallet(e){return e?.linked_accounts.find((e=>"wallet"===e.type&&"embedded"===e.connector_type&&"privy"===e.wallet_client_type))}}class tt{static parse(e){try{return new tt(e)}catch(e){return null}}value;_decoded;constructor(e){this.value=e,this._decoded=m.decodeJwt(e)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}get issuer(){return this._decoded.iss}get audience(){return this._decoded.aud}isExpired(e=0){return Date.now()>=1e3*(this.expiration-e)}}const rt="privy:token",st="privy-token",at="privy:refresh_token",it="privy-refresh-token",nt="privy:id-token",ot="privy-id-token",ct="privy-session",lt="privy:session_transfer_token",dt=["storage_cleared","token_cleared","refresh_token_cleared","identity_token_cleared","forked_token_cleared","token_stored","refresh_token_stored","identity_token_stored"];class ht extends _.default{static events=dt;_storage;_isUsingServerCookies=!1;constructor(e){super(),this._storage=e.storage}set isUsingServerCookies(e){this._isUsingServerCookies=e}async getToken(){const e=await this._storage.get(rt);try{return"string"==typeof e?new tt(e).value:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getToken_error"}),null}}async getRefreshToken(){try{const e=await this._storage.get(at);return"string"==typeof e?e:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getRefreshToken_error"}),null}}async getIdentityToken(){try{const e=await this._storage.get(nt);return"string"==typeof e?e:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getIdentityToken_error"}),null}}async getForkedToken(){try{const e=await this._storage.get(lt);return"string"==typeof e?e:null}catch(e){return console.error(e),await this.destroyLocalState({reason:"getForkedToken_error"}),null}}get mightHaveServerCookies(){try{const e=w.default.get(ct);return void 0!==e&&e.length>0}catch(e){console.error(e)}return!1}hasRefreshCredentials(e,t){return this.mightHaveServerCookies||"string"==typeof e&&"string"==typeof t}async hasRecoveryCredentials(){return"string"==typeof await this.getForkedToken()}tokenIsActive(e){if(!e)return!1;const t=tt.parse(e);return null!==t&&!t.isExpired(30)}async destroyLocalState(e){const t=await Promise.all([this._storage.del(rt),this._storage.del(at),this._storage.del(nt),this.clearForkedToken()]);return e?.reason&&this.emit("storage_cleared",{reason:e.reason}),t}async storeToken(e){if("string"==typeof e){const t=await this._storage.get(rt);if(await this._storage.put(rt,e),!this._isUsingServerCookies){const t=tt.parse(e)?.expiration;w.default.set(st,e,{sameSite:"Strict",secure:!0,expires:t?new Date(1e3*t):void 0})}t!==e&&this.emit("token_stored",{cookiesEnabled:this._isUsingServerCookies})}else{const e=await this._storage.get(rt);await this._storage.del(rt),w.default.remove(st),null!==e&&this.emit("token_cleared",{reason:"set_with_non_string_value"})}}async storeRefreshToken(e){"string"==typeof e?(await this._storage.put(at,e),this._isUsingServerCookies||(w.default.set(ct,"t",{sameSite:"Strict",secure:!0,expires:30}),w.default.set(it,e,{sameSite:"Strict",secure:!0,expires:30})),this.emit("refresh_token_stored",{cookiesEnabled:this._isUsingServerCookies})):(await this._storage.del(at),w.default.remove(it),w.default.remove(ct),this.emit("refresh_token_cleared",{reason:"set_with_non_string_value"}))}async storeIdentityToken(e){if("string"==typeof e){const t=await this._storage.get(nt);if(await this._storage.put(nt,e),!this._isUsingServerCookies){const t=tt.parse(e)?.expiration;w.default.set(ot,e,{sameSite:"Strict",secure:!0,expires:t?new Date(1e3*t):void 0})}t!==e&&this.emit("identity_token_stored",{cookiesEnabled:this._isUsingServerCookies})}else{const e=await this._storage.get(nt);await this._storage.del(nt),w.default.remove(ot),null!==e&&this.emit("identity_token_cleared",{reason:"set_with_non_string_value"})}}async clearForkedToken(){await this._storage.del(lt)}}const pt=e=>{const t=new AbortController;return setTimeout((()=>t.abort()),e),t.signal},yt="privy:caid";class ut{baseUrl;_config;appId;appClientId;_storage;_analyticsId;_sdkVersion="js-sdk-core:0.27.0";_fetch;nativeAppIdentifier;callbacks;_cache=new Map;session;constructor(e){this._storage=e.storage,this._analyticsId=null,this._getOrGenerateClientAnalyticsId(),this.baseUrl=e.baseUrl??"https://auth.privy.io",this.appId=e.appId,this.appClientId=e.appClientId,this._sdkVersion=e.sdkVersion??this._sdkVersion,this.callbacks=e.callbacks,"undefined"==typeof document&&(this.nativeAppIdentifier=e.nativeAppIdentifier),this.session=new ht({storage:this._storage,isUsingServerCookies:!1}),this._fetch=v.default(fetch,{retries:3,retryDelay:500})}get isReady(){return Boolean(this._config)}get config(){return this._config}get caid(){return this._analyticsId}async _initialize(){this.isReady||(this._config=await this.getAppConfig(),this._config?.custom_api_url&&(this.baseUrl=this._config.custom_api_url,this.session.isUsingServerCookies=!0),this.callbacks?.setIsReady?.(!0),this.createAnalyticsEvent("sdk_initialize",{}))}async fetch(t,{body:r,params:s,headers:a,options:i={onRequest:this._beforeRequest.bind(this)}}){const n=`${this.baseUrl}${e.getPathWithParams(t.path,s)}`,o=new Request(n,{method:t.method,body:JSON.stringify(r),headers:a}),c=await i.onRequest(o),l=await this._fetch(o,c),d=await l.json();if(l.status>299)throw new k(d);return d}async _beforeRequestWithoutInitialize(e){const t=await this.session.getToken(),r=new Headers(e.headers);r.set("privy-app-id",this.appId),this.appClientId&&r.set("privy-client-id",this.appClientId),r.set("privy-client",this._sdkVersion),r.set("Authorization",`Bearer ${t}`),r.set("Content-Type","application/json"),r.set("Accept","application/json");const s=await this._getOrGenerateClientAnalyticsId();return s&&r.set("privy-ca-id",s),this.nativeAppIdentifier&&r.set("x-native-app-identifier",this.nativeAppIdentifier),{signal:pt(2e4),headers:r,credentials:"include"}}async beforeRequestWithoutRefresh(e){return await this._initialize(),this._beforeRequestWithoutInitialize(e)}async _beforeRequest(e){return await this._initialize(),await this.getAccessToken(),this.beforeRequestWithoutRefresh(e)}async getAppConfig(){return await this.fetch(e.AppConfig,{params:{app_id:this.appId},options:{onRequest:this._beforeRequestWithoutInitialize.bind(this)}})}async _getOrGenerateClientAnalyticsId(){if(this._analyticsId)return this._analyticsId;try{const e=await this._storage.get(yt);if("string"==typeof e&&e.length>0)return this._analyticsId=e,e}catch(e){console.error("Unable to load clientId",e)}try{this._analyticsId=d.v4()}catch(e){console.error("Unable to generate uuidv4",e)}if(!this._analyticsId)return null;try{await this._storage.put(yt,this._analyticsId)}catch(e){console.error(`Unable to store clientId: ${this._analyticsId}`,e)}return this._analyticsId}async destroyClientAnalyticsId(){try{return await this._storage.del(yt)}catch(e){console.error("Unable to delete clientId",e)}}async createAnalyticsEvent(t,r){try{await this.fetch(e.AnalyticsEvent,{body:{event_name:t,client_id:await this._getOrGenerateClientAnalyticsId(),payload:r},options:{onRequest:this.beforeRequestWithoutRefresh.bind(this)}})}catch(e){}}async refreshSession(){const e=await this.session.getRefreshToken()??void 0,t=e??"key",r=this._cache.get(t);if(r)return await r;const s=this._refreshSession(e);this._cache.set(t,s);try{return await s}catch(e){throw e}finally{this._cache.delete(t)}}async _refreshSession(t){const r=await this.session.getToken();if(!this.session.hasRefreshCredentials(r,t??null))throw await this._initialize(),new Error("missing_or_invalid_token");try{const{session_update_action:r,...s}=await this.fetch(e.RefreshSession,{body:{refresh_token:t},options:{onRequest:this.beforeRequestWithoutRefresh.bind(this)}});return this.callbacks?.setUser?.(s.user),"set"===r&&await Promise.all([this.session.storeToken(s.token),this.session.storeRefreshToken(s.refresh_token),this.session.storeIdentityToken(s.identity_token)]),"clear"===r&&(await this.session.destroyLocalState(),this.callbacks?.setUser?.(null)),"ignore"===r&&s.token&&(await this.session.storeToken(s.token),s.identity_token&&await this.session.storeIdentityToken(s.identity_token)),s}catch(e){throw(e instanceof k&&e.code===h.PrivyErrorCode.MISSING_OR_INVALID_TOKEN||e instanceof Error&&"missing_or_invalid_token"===e.message)&&(await this.session.destroyLocalState(),this.callbacks?.setUser?.(null)),e}}async getAccessToken(){const[e,t]=await Promise.all([this.session.getToken(),this.session.getRefreshToken()]);if(!this.session.tokenIsActive(e)&&this.session.hasRefreshCredentials(e,t))try{return await this.refreshSession(),await this.session.getToken()}catch(e){return null}return e}async getIdentityToken(){return await this.session.getIdentityToken()}}class mt{_privyInternal;constructor(e){this._privyInternal=e}async init(t){return this._privyInternal.fetch(e.RecoveryOAuthInitICloud,{body:{client_type:t}})}async getICloudConfiguration(t){return this._privyInternal.fetch(e.RecoveryConfigurationICloud,{body:{client_type:t}})}}class _t{_privyInternal;_storage;_crypto;constructor(e,t,r){this._privyInternal=e,this._storage=t,this._crypto=r}async generateURL(t){const r=P(),s=T(),a=await S({codeVerifier:r,digest:this._crypto?.digest});return await Promise.all([this._storage.put(x,r),this._storage.put(E,s)]),this._privyInternal.fetch(e.RecoveryOAuthInit,{body:{redirect_to:t,code_challenge:a,state_code:s}})}async authorize(t,r){const[s,a]=await Promise.all([this._storage.get(x),this._storage.get(E)]);if(a!==r)throw this._privyInternal.createAnalyticsEvent("possible_phishing_attempt",{flow:"recovery_oauth",storedStateCode:a??"",returnedStateCode:r??""}),new I({code:"pkce_state_code_mismatch",error:"Unexpected auth flow. This may be a phishing attempt."});const i=await this._privyInternal.fetch(e.RecoveryOAuthAuthenticate,{body:{authorization_code:t,state_code:a,code_verifier:s}});return await Promise.all([this._storage.del(x),this._storage.del(E)]),i}}class vt{_privyInternal;auth;icloudAuth;constructor(e,t,r){this._privyInternal=e,this.auth=new _t(this._privyInternal,t,r),this.icloudAuth=new mt(this._privyInternal)}async getRecoveryKeyMaterial(t,r){return this._privyInternal.fetch(e.RecoveryKeyMaterial,{body:{chain_type:r},params:{address:t}})}}class wt{_privyInternal;constructor(e){this._privyInternal=e}async get(){try{const{user:e}=await this._privyInternal.refreshSession();return{user:e}}catch(e){throw e}}}const gt=["metamask","phantom","brave_wallet","rainbow","coinbase_wallet","metamask","trust","safe","rainbow","uniswap","zerion","argent","spot","omni","cryptocom","blockchain","safepal","bitkeep","zengo","1inch","binance","exodus","mew_wallet","alphawallet","keyring_pro","mathwallet","unstoppable","obvious","ambire","internet_money_wallet","coin98","abc_wallet","arculus_wallet","haha","cling_wallet","broearn","copiosa","burrito_wallet","enjin_wallet","plasma_wallet","avacus","bee","pitaka","pltwallet","minerva","kryptogo","prema","slingshot","kriptonio","timeless","secux","bitizen","blocto","safemoon","privy","unknown"];exports.ALL_WALLET_CLIENT_TYPES=gt,exports.DEFAULT_SUPPORTED_CHAINS=de,exports.DEFAULT_SUPPORTED_CHAIN_IDS=he,exports.EmbeddedProviderError=we,exports.InMemoryCache=class{_cache={};get(e){return this._cache[e]}put(e,t){void 0!==t?this._cache[e]=t:this.del(e)}del(e){delete this._cache[e]}getKeys(){return Object.keys(this._cache)}},exports.LocalStorage=class{async get(e){const t=localStorage.getItem(e);return null===t?void 0:JSON.parse(t)}put(e,t){void 0!==t?localStorage.setItem(e,JSON.stringify(t)):this.del(e)}del(e){localStorage.removeItem(e)}getKeys(){return Object.entries(localStorage).map((([e])=>e))}},exports.PrivyApiError=k,exports.PrivyClientError=I,exports.PrivyConnectorError=ve,exports.PrivyProviderRpcError=be,exports.ProviderErrors=ge,exports.QuantityToBigNumber=Ie,exports.SUPPORTED_CONNECTOR_TYPES=["injected","wallet_connect","wallet_connect_v2","coinbase_wallet","embedded"],exports.calculateTotalGasEstimate=async function(e,t){if(!e.gasLimit)throw new be("gasLimit was not successfully set for transaction.");const r=Ie(e.gasLimit);let s=i.BigNumber.from(0);if(2==e.type){if(!e.maxFeePerGas)throw new be("maxFeePerGas was not successfully set for transaction of type 2.");s=Ie(e.maxFeePerGas)}else{if(!e.gasPrice)throw new be("gasPrice was not successfully set for transaction of type 0 or 1.");s=Ie(e.gasPrice)}let a=r.mul(s),c=i.BigNumber.from(0);if(e.chainId&&Ue(e.chainId))try{c=await async function(e,t){if(!e.chainId||e.chainId&&!Ue(e.chainId))return i.BigNumber.from(0);let r=i.BigNumber.from(0);try{const s=new n.Contract(Re,Ae,t),a=xe(e),i=o.serialize(a);r=await s.getL1Fee(i)}catch(e){}return r}(e,t),a=a.add(c)}catch(e){}return{totalGasEstimate:a,l1ExecutionFeeEstimate:c}},exports.chainDefs=le,exports.convertBigNumberish=Ee,exports.default=class{auth;user;embeddedWallet;recovery;_privyInternal;constructor({clientId:e,...t}){this._privyInternal=new ut({...t,appClientId:e}),this.user=new wt(this._privyInternal),this.auth=new F(this._privyInternal,t.storage,t.crypto),this.embeddedWallet=new et(this._privyInternal,t.embeddedWalletMessagePoster,t.supportedChains),this.recovery=new vt(this._privyInternal,t.storage,t.crypto)}setMessagePoster(e){this.embeddedWallet.setMessagePoster(e)}getAccessToken(){return this._privyInternal.getAccessToken()}getIdentityToken(){return this._privyInternal.getIdentityToken()}},exports.errorIndicatesRecoveryIsNeeded=fe,exports.getUserEmbeddedSolanaWallet=e=>{if(!e)return null;const t=e.linked_accounts.find((e=>"wallet"===e.type&&"privy"===e.wallet_client_type&&"embedded"===e.connector_type&&"solana"===e.chain_type));return t||null},exports.getUserEmbeddedWallet=e=>{if(!e)return null;const t=e.linked_accounts.find((e=>"wallet"===e.type&&"privy"===e.wallet_client_type&&"embedded"===e.connector_type&&"ethereum"===e.chain_type));return t||null},exports.populateTransactionRequest=We,exports.throwIfInvalidRecoveryUpgradePath=ze,exports.toEthersUnsignedTransaction=xe,exports.toObjectKeys=(e,t=!0)=>e.reduce(((e,r)=>({...e,[r]:t})),{});
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../src/CustomProviderApi.ts","../src/EmailApi.ts","../src/FarcasterApi.ts","../src/Error.ts","../src/pkce.ts","../src/OAuthApi.ts","../src/PasskeyApi.ts","../src/PhoneApi.ts","../src/SiweApi.ts","../src/AuthApi.ts","../src/chains/arbitrum.ts","../src/chains/arbitrumGoerli.ts","../src/chains/arbitrumSepolia.ts","../src/chains/avalanche.ts","../src/chains/avalancheFuji.ts","../src/chains/base.ts","../src/chains/baseGoerli.ts","../src/chains/baseSepolia.ts","../src/chains/celo.ts","../src/chains/celoAlfajores.ts","../src/chains/filecoin.ts","../src/chains/filecoinCalibration.ts","../src/chains/garnetHolesky.ts","../src/chains/goerli.ts","../src/chains/holesky.ts","../src/chains/linea.ts","../src/chains/lineaTestnet.ts","../src/chains/mainnet.ts","../src/chains/optimism.ts","../src/chains/optimismGoerli.ts","../src/chains/optimismSepolia.ts","../src/chains/polygon.ts","../src/chains/polygonMumbai.ts","../src/chains/redstone.ts","../src/chains/redstoneHolesky.ts","../src/chains/sepolia.ts","../src/chains/zora.ts","../src/chains/zoraSepolia.ts","../src/chains/zoraTestnet.ts","../src/chains/index.ts","../src/chains/berachainArtio.ts","../src/embedded/types.ts","../src/embedded/errors.ts","../src/embedded/methods.ts","../src/embedded/utils/ethers.ts","../src/embedded/gas/arbitrum.ts","../src/embedded/gas/bsc.ts","../src/embedded/gas/op-stack.ts","../src/chains/polygonAmoy.ts","../src/embedded/gas/polygon.ts","../src/embedded/utils/gas.ts","../src/embedded/utils/index.ts","../src/embedded/EmbeddedWalletProvider.ts","../src/embedded/EmbeddedSolanaWalletProvider.ts","../src/embedded/EmbeddedWalletProxy.ts","../src/embedded/EventCallbackQueue.ts","../src/EmbeddedWalletApi.ts","../src/Token.ts","../src/Session.ts","../src/toAbortSignalTimeout.ts","../src/PrivyInternal.ts","../src/RecoveryICloudApi.ts","../src/RecoveryOAuthApi.ts","../src/RecoveryApi.ts","../src/UserApi.ts","../src/utils/getUserEmbeddedWallet.ts","../src/types.ts","../src/storage/InMemoryStorage.ts","../src/storage/LocalStorage.ts","../src/Privy.ts","../src/utils/getUserEmbeddedSolanaWallet.ts","../src/utils/toObjectKeys.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["CustomProviderApi","_privyInternal","constructor","privyInternal","this","syncWithToken","token","res","fetch","CustomJWTAuthenticate","body","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","EmailApi","sendCode","email","PasswordlessInit","loginWithCode","code","PasswordlessAuthenticate","linkWithCode","PasswordlessLink","refreshSession","unlink","PasswordlessUnlink","address","FarcasterApi","initializeAuth","relyingParty","redirectUrl","FarcasterInit","relying_party","redirect_url","getFarcasterStatus","channel_token","FarcasterStatus","headers","authenticate","message","signature","fid","FarcasterAuthenticate","link","FarcasterLink","FarcasterUnlink","PrivyApiError","Error","error","super","PrivyClientError","STATE_CODE_KEY","CODE_VERIFIER_KEY","createCodeVerifier","base64url","encode","size","crypto","getRandomValues","Uint8Array","createStateCode","async","deriveCodeChallengeFromCodeVerifier","codeVerifier","method","digest","subtle","bind","hashBuffer","data","TextEncoder","hash","createHashBuffer","OAuthApi","_storage","_crypto","storage","generateURL","provider","redirectURI","stateCode","codeChallenge","put","OAuthInit","redirect_to","code_challenge","state_code","authorizationCode","returnedStateCode","codeType","storedStateCode","get","createAnalyticsEvent","flow","OAuthAuthenticate","authorization_code","code_type","code_verifier","del","OAuthLink","subject","OAuthUnlink","PasskeyApi","generateRegistrationOptions","PasskeyLinkInit","generateAuthenticationOptions","PasskeyAuthenticateInit","loginWithPasskey","input","challenge","PasskeyAuthenticate","authenticator_response","type","id","raw_id","rawId","response","client_data_json","clientDataJSON","authenticator_data","authenticatorData","user_handle","userHandle","undefined","authenticator_attachment","authenticatorAttachment","client_extension_results","app_id","clientExtensionResults","appid","cred_props","credProps","hmac_create_secret","hmacCreateSecret","linkWithPasskey","PasskeyLink","attestation_object","attestationObject","transports","public_key","publicKey","public_key_algorithm","publicKeyAlgorithm","PhoneApi","phoneNumber","PasswordlessSmsInit","PasswordlessSmsAuthenticate","PasswordlessSmsLink","PasswordlessSmsUnlink","SiweApi","_wallet","_preparedMessage","unlinkWallet","SiweUnlink","linkWithSiwe","walletOverride","messageOverride","wallet","SiweLink","chainId","walletClientType","connectorType","loginWithSiwe","SiweAuthenticate","init","domain","uri","SiweInit","nonce","opts","toString","replace","issuedAt","Date","toISOString","statement","AuthApi","customProvider","phone","oauth","siwe","passkey","farcaster","logout","getRefreshToken","Logout","e","console","warn","destroyLocalState","reason","destroyClientAnalyticsId","arbitrum","name","network","nativeCurrency","symbol","decimals","rpcUrls","privy","http","alchemy","webSocket","infura","default","public","blockExplorers","etherscan","url","arbitrumGoerli","testnet","arbitrumSepolia","avalanche","avalancheFuji","base","blast","baseGoerli","baseSepolia","celo","celoAlfajores","filecoin","filscan","filscout","glif","filecoinCalibration","garnetHolesky","goerli","holesky","linea","lineaTestnet","mainnet","optimism","optimismGoerli","optimismSepolia","polygon","polygonMumbai","redstone","redstoneHolesky","sepolia","zora","zoraSepolia","zoraTestnet","chainDefs","DEFAULT_SUPPORTED_CHAINS","DEFAULT_SUPPORTED_CHAIN_IDS","Set","map","chain","PrivyIframeErrorTypes","PrivyEmbeddedWalletErrorCode","PrivyError","cause","privyErrorCode","ProviderRpcError","PrivyIframeError","PrivyConnectorError","EmbeddedProviderError","ProviderErrors","UNKNOWN_ERROR","eipCode","detail","retryable","E4001_DEFAULT_USER_REJECTED_REQUEST","E4100_DEFAULT_UNAUTHORIZED","E4200_DEFAULT_UNSUPPORTED_METHOD","E4900_DEFAULT_DISCONNECTED","E4901_DEFAULT_CHAIN_DISCONNECTED","E32700_DEFAULT_PARSE_ERROR","E32600_DEFAULT_INVALID_REQUEST","E32601_DEFAULT_METHOD_NOT_FOUND","E32602_DEFAULT_INVALID_PARAMS","E32603_DEFAULT_INTERNAL_ERROR","E32000_DEFAULT_INVALID_INPUT","E32001_DEFAULT_RESOURCE_NOT_FOUND","E32002_DEFAULT_RESOURCE_UNAVAILABLE","E32003_DEFAULT_TRANSACTION_REJECTED","E32004_DEFAULT_METHOD_NOT_SUPPORTED","E32005_DEFAULT_LIMIT_EXCEEDED","E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED","E32002_CONNECTION_ALREADY_PENDING","E32002_REQUEST_ALREADY_PENDING","E32002_WALLET_LOCKED","E4001_USER_REJECTED_REQUEST","errorIndicatesRecoveryIsNeeded","includes","isPrivyIframeError","PrivyProviderRpcError","details","defaultError","Object","values","find","v","SUPPORTED_IFRAME_JSON_RPC_METHODS","QuantityToBigNumber","quantity","BigNumber","from","convertBigNumberish","value","toHexString","toEthersUnsignedTransaction","txRequest","result","to","accessList","toNumber","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","isArbitrum","isBsc","BLAST_MAINNET_ID","BLAST_TESTNET_ID","OPTIMISM_STACK_GAS_PRICE_ORACLE_ADDRESS","OPTIMISM_STACK_GAS_PRICE_ORACLE_ABI","isOpStack","polygonAmoy","_fetch","rfetch","retries","retryDelay","isPolygon","convertGasStationFeesToWei","fee","maxPriorityFee","parseUnits","toFixed","maxFee","getPolygonGasStationFees","json","status","safeLow","standard","fast","defaultGasLimit","estimateGas","txRequestWithoutValue","retryError","safeAttemptEstimateGasWithoutValue","txRequestWithoutFrom","safeAttemptEstimateGasWithoutFrom","getJsonRpcProvider","chains","rpcConfig","options","chainIdInt","Number","rpcProvider","privyWalletOverride","StaticJsonRpcProvider","appId","isHexString","test","isValidQuantity","validNumber","validBigInt","validHexString","populateTransactionRequest","hexStringProperties","prop","txRequestQuantity","validateTransactionRequest","signer","VoidSigner","getTransactionCount","gas","defaultGasForPolygon","lastBaseFeePerGas","getFeeData","newMaxFeePerGasBN","mul","div","defaultGasForArbitrum","networkMaxPriorityFeePerGas","send","add","defaultGasForOpStack","feeData","defaultGasForBsc","defaultGasForEvmChain","throwIfInvalidRecoveryUpgradePath","currentRecoveryMethod","upgradeToRecoveryMethod","EmbeddedWalletProvider","EventEmitter","_walletProxy","_address","_chainId","_chains","_jsonRpcProvider","walletProxy","request","handleIFrameRpc","handleSwitchEthereumChain","handleEstimateGas","params","handleSendTransaction","handlePopulateTransaction","handleJsonRpc","ensureChainId","tx","ensureTxChainId","internalSwitchEthereumChain","emit","populatedTx","signedTx","args","Array","isArray","newChain","getAccessToken","rpc","accessToken","toJSON","EmbeddedSolanaWalletProvider","_publicKey","solanaRpc","isErrorResponseEvent","event","uniqueId","replacer","_key","sleep","ms","resolve","setTimeout","withTimeout","promise","msg","race","_","reject","EVENT_CALLBACK_QUEUE","enqueue","eventId","dequeue","EmbeddedWalletProxy","ready","cache","_embeddedWalletMessagePoster","embeddedWalletMessagePoster","Map","ping","timeoutMs","invoke","create","waitForReady","then","connect","recover","setRecovery","createSolana","connectSolana","recoverSolana","handleEmbeddedWalletMessages","readyCallbacks","createCallbacks","connectCallbacks","recoverCallbacks","rpcCallbacks","cb","createSolanaCallbacks","connectSolanaCallbacks","recoverSolanaCallbacks","rpcSolanaCallbacks","catch","key","JSON","stringify","serialize","cached","postMessage","finally","delete","set","EmbeddedWalletApi","_proxy","setMessagePoster","poster","password","recoveryMethod","recoveryToken","recoverySecretOverride","iCloudRecordNameOverride","parsedRecoveryMethod","config","embedded_wallet_config","require_user_password_on_create","recoveryPassword","recoveryAccessToken","ethereumAccount","recovery_method","getProvider","ethereumAddress","hasEmbeddedWallet","_getEmbeddedWallet","isPasswordRequired","embeddedWallet","_load","getSolanaProvider","_loadSolana","setPassword","recoveryArgs","existingRecoveryMethod","target_recovery_method","existing_recovery_method","getURL","URL","baseUrl","caid","searchParams","append","appClientId","href","getMessageHandler","onMessage","err","recovered","linked_accounts","account","connector_type","wallet_client_type","Token","parse","_decoded","jose","decodeJwt","sub","expiration","exp","issuer","iss","audience","aud","isExpired","seconds","now","TOKEN_STORAGE_KEY","TOKEN_COOKIE_KEY","REFRESH_TOKEN_STORAGE_KEY","REFRESH_TOKEN_COOKIE_KEY","IDENTITY_TOKEN_STORAGE_KEY","IDENTITY_TOKEN_COOKIE_KEY","SESSION_COOKIE_KEY","FORKED_TOKEN_STORAGE_KEY","events","Session","static","_isUsingServerCookies","o","isUsingServerCookies","getToken","refreshToken","getIdentityToken","identityToken","getForkedToken","forkedToken","mightHaveServerCookies","sessionToken","Cookies","length","hasRefreshCredentials","hasRecoveryCredentials","tokenIsActive","tokenRaw","clearForkedToken","previousToken","sameSite","secure","expires","cookiesEnabled","remove","previousIdentityToken","toAbortSignalTimeout","duration","controller","AbortController","abort","signal","CLIENT_ANALYTICS_ID_KEY","PrivyInternal","_config","_analyticsId","_sdkVersion","nativeAppIdentifier","_cache","_getOrGenerateClientAnalyticsId","sdkVersion","document","isReady","Boolean","_initialize","getAppConfig","custom_api_url","setIsReady","r","onRequest","_beforeRequest","getPathWithParams","path","Request","requestInit","_beforeRequestWithoutInitialize","Headers","credentials","beforeRequestWithoutRefresh","AppConfig","clientAnalyticsId","uuid","properties","AnalyticsEvent","event_name","client_id","payload","_refreshSession","session_update_action","RefreshSession","PrivyErrorCode","MISSING_OR_INVALID_TOKEN","RecoveryICloudApi","client_type","RecoveryOAuthInitICloud","getICloudConfiguration","RecoveryConfigurationICloud","RecoveryOAuthApi","RecoveryOAuthInit","authorize","RecoveryOAuthAuthenticate","RecoveryApi","auth","icloudAuth","getRecoveryKeyMaterial","chain_type","RecoveryKeyMaterial","UserApi","ALL_WALLET_CLIENT_TYPES","val","getKeys","keys","localStorage","getItem","setItem","removeItem","entries","gasFee","totalGasEstimate","l1ExecutionFeeEstimate","l1GasEstimateBN","gasPriceOracleContract","Contract","ethersRequest","rlpSerializedTransaction","getL1Fee","estimateOpStackL1Gas","recovery","clientId","supportedChains","array","reduce","acc","curr"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../src/CustomProviderApi.ts","../src/EmailApi.ts","../src/FarcasterApi.ts","../src/Error.ts","../src/pkce.ts","../src/OAuthApi.ts","../src/PasskeyApi.ts","../src/PhoneApi.ts","../src/SiweApi.ts","../src/AuthApi.ts","../src/chains/arbitrum.ts","../src/chains/arbitrumGoerli.ts","../src/chains/arbitrumSepolia.ts","../src/chains/avalanche.ts","../src/chains/avalancheFuji.ts","../src/chains/base.ts","../src/chains/baseGoerli.ts","../src/chains/baseSepolia.ts","../src/chains/celo.ts","../src/chains/celoAlfajores.ts","../src/chains/filecoin.ts","../src/chains/filecoinCalibration.ts","../src/chains/garnetHolesky.ts","../src/chains/goerli.ts","../src/chains/holesky.ts","../src/chains/linea.ts","../src/chains/lineaTestnet.ts","../src/chains/mainnet.ts","../src/chains/optimism.ts","../src/chains/optimismGoerli.ts","../src/chains/optimismSepolia.ts","../src/chains/polygon.ts","../src/chains/polygonMumbai.ts","../src/chains/redstone.ts","../src/chains/redstoneHolesky.ts","../src/chains/sepolia.ts","../src/chains/zora.ts","../src/chains/zoraSepolia.ts","../src/chains/zoraTestnet.ts","../src/chains/index.ts","../src/chains/berachainArtio.ts","../src/embedded/types.ts","../src/embedded/errors.ts","../src/embedded/methods.ts","../src/embedded/utils/ethers.ts","../src/embedded/gas/arbitrum.ts","../src/embedded/gas/bsc.ts","../src/embedded/gas/op-stack.ts","../src/chains/polygonAmoy.ts","../src/embedded/gas/polygon.ts","../src/embedded/utils/gas.ts","../src/embedded/utils/index.ts","../src/embedded/EmbeddedWalletProvider.ts","../src/embedded/EmbeddedSolanaWalletProvider.ts","../src/embedded/EmbeddedWalletProxy.ts","../src/embedded/EventCallbackQueue.ts","../src/EmbeddedWalletApi.ts","../src/Token.ts","../src/Session.ts","../src/toAbortSignalTimeout.ts","../src/PrivyInternal.ts","../src/RecoveryICloudApi.ts","../src/RecoveryOAuthApi.ts","../src/RecoveryApi.ts","../src/UserApi.ts","../src/utils/getUserEmbeddedWallet.ts","../src/types.ts","../src/storage/InMemoryStorage.ts","../src/storage/LocalStorage.ts","../src/Privy.ts","../src/utils/getUserEmbeddedSolanaWallet.ts","../src/utils/toObjectKeys.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["CustomProviderApi","_privyInternal","constructor","privyInternal","this","syncWithToken","token","res","fetch","CustomJWTAuthenticate","body","Promise","all","session","storeToken","storeRefreshToken","refresh_token","storeIdentityToken","identity_token","callbacks","setUser","user","EmailApi","sendCode","email","PasswordlessInit","loginWithCode","code","mode","PasswordlessAuthenticate","linkWithCode","PasswordlessLink","refreshSession","unlink","PasswordlessUnlink","address","FarcasterApi","initializeAuth","relyingParty","redirectUrl","FarcasterInit","relying_party","redirect_url","getFarcasterStatus","channel_token","FarcasterStatus","headers","authenticate","message","signature","fid","FarcasterAuthenticate","link","FarcasterLink","FarcasterUnlink","PrivyApiError","Error","error","super","PrivyClientError","STATE_CODE_KEY","CODE_VERIFIER_KEY","createCodeVerifier","base64url","encode","size","crypto","getRandomValues","Uint8Array","createStateCode","async","deriveCodeChallengeFromCodeVerifier","codeVerifier","method","digest","subtle","bind","hashBuffer","data","TextEncoder","hash","createHashBuffer","OAuthApi","_storage","_crypto","storage","generateURL","provider","redirectURI","stateCode","codeChallenge","put","OAuthInit","redirect_to","code_challenge","state_code","authorizationCode","returnedStateCode","codeType","storedStateCode","get","createAnalyticsEvent","flow","OAuthAuthenticate","authorization_code","code_type","code_verifier","del","OAuthLink","subject","OAuthUnlink","PasskeyApi","generateRegistrationOptions","PasskeyLinkInit","generateAuthenticationOptions","PasskeyAuthenticateInit","loginWithPasskey","input","challenge","PasskeyAuthenticate","authenticator_response","type","id","raw_id","rawId","response","client_data_json","clientDataJSON","authenticator_data","authenticatorData","user_handle","userHandle","undefined","authenticator_attachment","authenticatorAttachment","client_extension_results","app_id","clientExtensionResults","appid","cred_props","credProps","hmac_create_secret","hmacCreateSecret","linkWithPasskey","PasskeyLink","attestation_object","attestationObject","transports","public_key","publicKey","public_key_algorithm","publicKeyAlgorithm","PhoneApi","phoneNumber","PasswordlessSmsInit","PasswordlessSmsAuthenticate","PasswordlessSmsLink","PasswordlessSmsUnlink","SiweApi","_wallet","_preparedMessage","unlinkWallet","SiweUnlink","linkWithSiwe","walletOverride","messageOverride","wallet","SiweLink","chainId","walletClientType","connectorType","loginWithSiwe","SiweAuthenticate","init","domain","uri","SiweInit","nonce","opts","toString","replace","issuedAt","Date","toISOString","statement","AuthApi","customProvider","phone","oauth","siwe","passkey","farcaster","logout","getRefreshToken","Logout","e","console","warn","destroyLocalState","reason","destroyClientAnalyticsId","arbitrum","name","network","nativeCurrency","symbol","decimals","rpcUrls","privy","http","alchemy","webSocket","infura","default","public","blockExplorers","etherscan","url","arbitrumGoerli","testnet","arbitrumSepolia","avalanche","avalancheFuji","base","blast","baseGoerli","baseSepolia","celo","celoAlfajores","filecoin","filscan","filscout","glif","filecoinCalibration","garnetHolesky","goerli","holesky","linea","lineaTestnet","mainnet","optimism","optimismGoerli","optimismSepolia","polygon","polygonMumbai","redstone","redstoneHolesky","sepolia","zora","zoraSepolia","zoraTestnet","chainDefs","DEFAULT_SUPPORTED_CHAINS","DEFAULT_SUPPORTED_CHAIN_IDS","Set","map","chain","PrivyIframeErrorTypes","PrivyEmbeddedWalletErrorCode","PrivyError","cause","privyErrorCode","ProviderRpcError","PrivyIframeError","PrivyConnectorError","EmbeddedProviderError","ProviderErrors","UNKNOWN_ERROR","eipCode","detail","retryable","E4001_DEFAULT_USER_REJECTED_REQUEST","E4100_DEFAULT_UNAUTHORIZED","E4200_DEFAULT_UNSUPPORTED_METHOD","E4900_DEFAULT_DISCONNECTED","E4901_DEFAULT_CHAIN_DISCONNECTED","E32700_DEFAULT_PARSE_ERROR","E32600_DEFAULT_INVALID_REQUEST","E32601_DEFAULT_METHOD_NOT_FOUND","E32602_DEFAULT_INVALID_PARAMS","E32603_DEFAULT_INTERNAL_ERROR","E32000_DEFAULT_INVALID_INPUT","E32001_DEFAULT_RESOURCE_NOT_FOUND","E32002_DEFAULT_RESOURCE_UNAVAILABLE","E32003_DEFAULT_TRANSACTION_REJECTED","E32004_DEFAULT_METHOD_NOT_SUPPORTED","E32005_DEFAULT_LIMIT_EXCEEDED","E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED","E32002_CONNECTION_ALREADY_PENDING","E32002_REQUEST_ALREADY_PENDING","E32002_WALLET_LOCKED","E4001_USER_REJECTED_REQUEST","errorIndicatesRecoveryIsNeeded","includes","isPrivyIframeError","PrivyProviderRpcError","details","defaultError","Object","values","find","v","SUPPORTED_IFRAME_JSON_RPC_METHODS","QuantityToBigNumber","quantity","BigNumber","from","convertBigNumberish","value","toHexString","toEthersUnsignedTransaction","txRequest","result","to","accessList","toNumber","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","isArbitrum","isBsc","BLAST_MAINNET_ID","BLAST_TESTNET_ID","OPTIMISM_STACK_GAS_PRICE_ORACLE_ADDRESS","OPTIMISM_STACK_GAS_PRICE_ORACLE_ABI","isOpStack","polygonAmoy","_fetch","rfetch","retries","retryDelay","isPolygon","convertGasStationFeesToWei","fee","maxPriorityFee","parseUnits","toFixed","maxFee","getPolygonGasStationFees","json","status","safeLow","standard","fast","defaultGasLimit","estimateGas","txRequestWithoutValue","retryError","safeAttemptEstimateGasWithoutValue","txRequestWithoutFrom","safeAttemptEstimateGasWithoutFrom","getJsonRpcProvider","chains","rpcConfig","options","chainIdInt","Number","rpcProvider","privyWalletOverride","StaticJsonRpcProvider","appId","isHexString","test","isValidQuantity","validNumber","validBigInt","validHexString","populateTransactionRequest","hexStringProperties","prop","txRequestQuantity","validateTransactionRequest","signer","VoidSigner","getTransactionCount","gas","defaultGasForPolygon","lastBaseFeePerGas","getFeeData","newMaxFeePerGasBN","mul","div","defaultGasForArbitrum","networkMaxPriorityFeePerGas","send","add","defaultGasForOpStack","feeData","defaultGasForBsc","defaultGasForEvmChain","throwIfInvalidRecoveryUpgradePath","currentRecoveryMethod","upgradeToRecoveryMethod","EmbeddedWalletProvider","EventEmitter","_walletProxy","_address","_chainId","_chains","_jsonRpcProvider","walletProxy","request","handleIFrameRpc","handleSwitchEthereumChain","handleEstimateGas","params","handleSendTransaction","handlePopulateTransaction","handleJsonRpc","ensureChainId","tx","ensureTxChainId","internalSwitchEthereumChain","emit","populatedTx","signedTx","args","Array","isArray","newChain","getAccessToken","rpc","accessToken","toJSON","EmbeddedSolanaWalletProvider","_publicKey","solanaRpc","isErrorResponseEvent","event","uniqueId","replacer","_key","sleep","ms","resolve","setTimeout","withTimeout","promise","msg","race","_","reject","EVENT_CALLBACK_QUEUE","enqueue","eventId","dequeue","EmbeddedWalletProxy","ready","cache","_embeddedWalletMessagePoster","embeddedWalletMessagePoster","Map","ping","timeoutMs","invoke","create","waitForReady","then","connect","recover","setRecovery","createSolana","connectSolana","recoverSolana","handleEmbeddedWalletMessages","readyCallbacks","createCallbacks","connectCallbacks","recoverCallbacks","rpcCallbacks","cb","createSolanaCallbacks","connectSolanaCallbacks","recoverSolanaCallbacks","rpcSolanaCallbacks","catch","key","JSON","stringify","serialize","cached","postMessage","finally","delete","set","EmbeddedWalletApi","_proxy","setMessagePoster","poster","password","recoveryMethod","recoveryToken","recoverySecretOverride","iCloudRecordNameOverride","parsedRecoveryMethod","config","embedded_wallet_config","require_user_password_on_create","recoveryPassword","recoveryAccessToken","ethereumAccount","recovery_method","getProvider","ethereumAddress","hasEmbeddedWallet","_getEmbeddedWallet","isPasswordRequired","embeddedWallet","_load","getSolanaProvider","_loadSolana","setPassword","recoveryArgs","existingRecoveryMethod","target_recovery_method","existing_recovery_method","getURL","URL","baseUrl","caid","searchParams","append","appClientId","href","getMessageHandler","onMessage","err","recovered","linked_accounts","account","connector_type","wallet_client_type","Token","parse","_decoded","jose","decodeJwt","sub","expiration","exp","issuer","iss","audience","aud","isExpired","seconds","now","TOKEN_STORAGE_KEY","TOKEN_COOKIE_KEY","REFRESH_TOKEN_STORAGE_KEY","REFRESH_TOKEN_COOKIE_KEY","IDENTITY_TOKEN_STORAGE_KEY","IDENTITY_TOKEN_COOKIE_KEY","SESSION_COOKIE_KEY","FORKED_TOKEN_STORAGE_KEY","events","Session","static","_isUsingServerCookies","o","isUsingServerCookies","getToken","refreshToken","getIdentityToken","identityToken","getForkedToken","forkedToken","mightHaveServerCookies","sessionToken","Cookies","length","hasRefreshCredentials","hasRecoveryCredentials","tokenIsActive","tokenRaw","clearForkedToken","previousToken","sameSite","secure","expires","cookiesEnabled","remove","previousIdentityToken","toAbortSignalTimeout","duration","controller","AbortController","abort","signal","CLIENT_ANALYTICS_ID_KEY","PrivyInternal","_config","_analyticsId","_sdkVersion","nativeAppIdentifier","_cache","_getOrGenerateClientAnalyticsId","sdkVersion","document","isReady","Boolean","_initialize","getAppConfig","custom_api_url","setIsReady","r","onRequest","_beforeRequest","getPathWithParams","path","Request","requestInit","_beforeRequestWithoutInitialize","Headers","credentials","beforeRequestWithoutRefresh","AppConfig","clientAnalyticsId","uuid","properties","AnalyticsEvent","event_name","client_id","payload","_refreshSession","session_update_action","RefreshSession","PrivyErrorCode","MISSING_OR_INVALID_TOKEN","RecoveryICloudApi","client_type","RecoveryOAuthInitICloud","getICloudConfiguration","RecoveryConfigurationICloud","RecoveryOAuthApi","RecoveryOAuthInit","authorize","RecoveryOAuthAuthenticate","RecoveryApi","auth","icloudAuth","getRecoveryKeyMaterial","chain_type","RecoveryKeyMaterial","UserApi","ALL_WALLET_CLIENT_TYPES","val","getKeys","keys","localStorage","getItem","setItem","removeItem","entries","gasFee","totalGasEstimate","l1ExecutionFeeEstimate","l1GasEstimateBN","gasPriceOracleContract","Contract","ethersRequest","rlpSerializedTransaction","getL1Fee","estimateOpStackL1Gas","recovery","clientId","supportedChains","array","reduce","acc","curr"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@privy-io/js-sdk-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "Vanilla JS client for the Privy Auth API",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"keywords": [
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"@ethersproject/transactions": "^5.7.0",
|
|
67
67
|
"@ethersproject/units": "^5.7.0",
|
|
68
68
|
"@privy-io/api-base": "^1.2.3",
|
|
69
|
-
"@privy-io/public-api": "2.9.
|
|
69
|
+
"@privy-io/public-api": "2.9.4",
|
|
70
70
|
"eventemitter3": "^5.0.1",
|
|
71
71
|
"fetch-retry": "^5.0.6",
|
|
72
72
|
"jose": "^4.15.5",
|