@privy-io/react-auth 1.6.0-beta.10 → 1.6.0-beta.11
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/index.cjs.js +10 -8
- package/dist/index.esm.js +10 -8
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var Y3=Object.create;var K1=Object.defineProperty;var J3=Object.getOwnPropertyDescriptor;var X3=Object.getOwnPropertyNames;var Q3=Object.getPrototypeOf,t5=Object.prototype.hasOwnProperty;var e5=(i,e)=>{for(var a in e)K1(i,a,{get:e[a],enumerable:!0})},p4=(i,e,a,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of X3(e))!t5.call(i,l)&&l!==a&&K1(i,l,{get:()=>e[l],enumerable:!(o=J3(e,l))||o.enumerable});return i};var k=(i,e,a)=>(a=i!=null?Y3(Q3(i)):{},p4(e||!i||!i.__esModule?K1(a,"default",{value:i,enumerable:!0}):a,i)),i5=i=>p4(K1({},"__esModule",{value:!0}),i);var f6={};e5(f6,{PrivyProvider:()=>q3,VERSION:()=>J1,usePrivy:()=>v});module.exports=i5(f6);var j=require("react");var X1=k(require("axios"));var h4=k(require("axios")),K=class extends Error{constructor(a,o){super(a);o instanceof Error&&(this.cause=o)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},Y1=class extends K{constructor(a,o,l,s){super(l,s);this.type=a;this.status=o}},m=class extends K{constructor(a,o){super(a,o);this.type="client_error"}};var $=class extends K{constructor(a,o){super(a,o);this.type="connector_error"}},R=i=>{if(i instanceof K)return i;if(!h4.default.isAxiosError(i))return Y(i);if(!i.response)return new Y1("api_error",null,i.message,i);let{type:e,message:a,error:o}=i.response.data;return new Y1(e||"ApiError",i.response.status,a||o,i)},Y=i=>i instanceof K?i:i instanceof Error?new m(i.message,i):new m(`Internal error: ${i}`);var f4="1.6.0-beta.10";var u4="https://api.privy.io/v0",m4=process.env.NEXT_PUBLIC_PRIVY_AUTH_URL||"https://auth.privy.io",E2="70f97dc579834350a5baec117b3c5ae3",b4=1e4,t1=1200,k4=3e4,J1=f4;var Q1=class{constructor(e,a,o){this.appId=e,this.sdkVersion=J1,this.session=a,this.defaults=o}async get(e,a){try{return await X1.default.get(e,this.buildConfig({headers:{"Cache-Control":"no-cache"},...a}))}catch(o){throw R(o)}}async post(e,a,o){try{return await X1.default.post(e,a,this.buildConfig(o))}catch(l){throw R(l)}}async delete(e,a){try{return await X1.default.delete(e,this.buildConfig(a))}catch(o){throw R(o)}}buildConfig(e){return e=e||{},e.headers=e.headers||{},e.headers["privy-app-id"]=this.appId,e.headers["privy-client"]=`react-auth:${this.sdkVersion}`,this.session.token!==null&&(e.headers.authorization=`Bearer ${this.session.token}`),{...this.defaults,...e}}};var M4=k(require("jwt-decode")),x1=class{static parse(e){try{return new x1(e)}catch{return null}}constructor(e){this.value=e,this._decoded=(0,M4.default)(e)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}isExpired(e=0){let a=Date.now(),o=(this.expiration-e)*1e3;return a>=o}};var E1=class{constructor(e){this.promise=null;this.fn=e}execute(e){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(e)}finally{this.promise=null}})()),this.promise}};var A2=class{constructor(){this._cache={}}get(e){return this._cache[e]}put(e,a){a!==void 0?this._cache[e]=a:this.del(e)}del(e){delete this._cache[e]}},P2=class{get(e){let a=localStorage.getItem(e);return a===null?void 0:JSON.parse(a)}put(e,a){a!==void 0?localStorage.setItem(e,JSON.stringify(a)):this.del(e)}del(e){localStorage.removeItem(e)}};function o5(){return typeof window<"u"&&window.localStorage?new P2:new A2}var J=o5();var l5=i=>{var e;return(e=i.map(a=>{if(a.type==="wallet")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3),chainType:a.chain_type}}).filter(a=>a))==null?void 0:e[0]},r5=i=>{var e;return(e=i.map(a=>{if(a.type==="email")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},n5=i=>{var e;return(e=i.map(a=>{if(a.type==="phone")return{number:a.phoneNumber,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},s5=i=>{var e;return(e=i.map(a=>{if(a.type==="google_oauth")return{subject:a.subject,email:a.email,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},C5=i=>{var e;return(e=i.map(a=>{if(a.type==="twitter_oauth")return{subject:a.subject,username:a.username,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},d5=i=>{var e;return(e=i.map(a=>{if(a.type==="discord_oauth")return{subject:a.subject,username:a.username,email:a.email,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]};function f1(i){if(!i)return null;let e=r5(i.linked_accounts),a=n5(i.linked_accounts),o=l5(i.linked_accounts),l=s5(i.linked_accounts),s=C5(i.linked_accounts),c=d5(i.linked_accounts);return{id:i.id,createdAt:new Date(i.created_at*1e3),linkedAccounts:[...o?[o]:[],...e?[e]:[],...a?[a]:[],...l?[l]:[],...s?[s]:[],...c?[c]:[]],email:e&&{address:e==null?void 0:e.address},phone:a&&{number:a==null?void 0:a.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletType:o.walletType},google:l&&{subject:l.subject,email:l.email,name:l.name},twitter:s&&{subject:s.subject,username:s.username,name:s.name},discord:c&&{subject:c.subject,username:c.username,email:c.email}}}var g4=()=>"/api/v1/sessions",w4=()=>"/api/v1/sessions/logout",y4=()=>"/api/v1/siwe/init",v4=()=>"/api/v1/siwe/authenticate",Z4=()=>"/api/v1/passwordless/init",L4=()=>"/api/v1/passwordless/authenticate",x4=()=>"/api/v1/passwordless_sms/init",E4=()=>"/api/v1/passwordless_sms/authenticate",A4=()=>"/api/v1/oauth/init",P4=()=>"/api/v1/oauth/authenticate",_4=()=>"/api/v1/siwe/unlink",T4=()=>"/api/v1/passwordless/unlink",S4=()=>"/api/v1/passwordless_sms/unlink",I4=()=>"/api/v1/oauth/unlink";var c5=30,_2="privy:token",T2="privy:refresh_token",t2=class{constructor(){this.authenticateOnce=new E1(async e=>this._authenticate(e)),this.refreshOnce=new E1(this._refresh.bind(this)),this.destroyOnce=new E1(this._destroy.bind(this))}get token(){let e=J.get(_2);return typeof e=="string"?e:null}get refreshToken(){let e=J.get(T2);return typeof e=="string"?e:null}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasActiveToken(){let e=x1.parse(this.token);return e!==null&&!e.isExpired(c5)}authenticate(e){return this.authenticateOnce.execute(e)}refresh(){return this.refreshOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(e){try{let{token:a,refresh_token:o,user:l}=await e.authenticate();return a&&this.storeToken(a),o&&this.storeRefreshToken(o),f1(l)}catch(a){throw console.warn("Error authenticating session"),Y(a)}}async _refresh(){if(!this.api)throw new m("Session has no API instance");let e=this.token,a=this.refreshToken;if(!e||!a)return null;try{let o=await this.api.post(g4(),{refresh_token:a});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),f1(o.data.user)}catch(o){throw Y(o)}}async _destroy(){var e;try{await((e=this.api)==null?void 0:e.post(w4(),{})),this.destroyLocalState()}catch(a){throw console.warn("Error destroying session"),Y(a)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null)}storeToken(e){typeof e=="string"?J.put(_2,e):J.del(_2)}storeRefreshToken(e){typeof e=="string"?J.put(T2,e):J.del(T2)}};var W4=require("@ethersproject/address"),W2=k(require("@walletconnect/web3-provider"));var A1=class{constructor(e){this.removeListener=(e,a)=>{if(this._provider)return this._provider.removeListener(e,a)};this.setProvider=e=>{this._provider=e,this._subscriptions.forEach(a=>{var o;(o=this._provider)==null||o.on(a.eventName,a.listener)})};this._provider=e,this._subscriptions=[]}on(e,a){if(this._provider)return this._provider.on(e,a);this._subscriptions.push({eventName:e,listener:a})}request(e){if(!this._provider)throw new $(`A wallet request of type ${e.method} was made to a disconnected wallet: `);return this._provider.request(e)}},P1=class extends A1{constructor(a){super(a)}},e2=class extends A1{constructor(e){super(e)}sendAsync(e,a){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};var O4=require("ethers");var R4=["metamask","coinbase_wallet","wallet_connect"];var N4=require("ethers");var i2=class extends ${constructor(){super("Wallet timeout");this.type="wallet_error"}},I2=i=>{if(i instanceof $)return i;if((i==null?void 0:i.code)&&(i==null?void 0:i.reason)){let e=new _1(i);return i.code===N4.ethers.errors.ACTION_REJECTED&&(e.details=M1.E4001_USER_REJECTED_REQUEST),e}return i!=null&&i.code?new _1(i):new $("Unknown connector error",i)},S2=class extends K{constructor(a,o,l){super(a);this.type="provider_error";this.code=o,this.data=l}},_1=class extends S2{constructor(a){var s,c,b;let o=a;super(o.message,o.code,o.data);let l=Object.values(M1).find(g=>g.eipCode===o.code);this.details=l||M1.UNKNOWN_ERROR,o.code===-32002&&((s=o.message)!=null&&s.includes("already pending for origin")?(c=o.message)!=null&&c.includes("wallet_requestPermissions")?this.details=M1.E32002_CONNECTION_ALREADY_PENDING:this.details=M1.E32002_REQUEST_ALREADY_PENDING:(b=o.message)!=null&&b.includes("Already processing")&&o.message.includes("eth_requestAccounts")&&(this.details=M1.E32002_WALLET_LOCKED))}},p5={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0}},h5={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},f5={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}},M1={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...f5,...h5},R2={...p5,...M1};var N2="privy:wallet_type",a2=(i=new i2,e=k4)=>new Promise((a,o)=>setTimeout(()=>{o(i)},e)),O2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isMetaMask)return!0}return!1},D2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isCoinbaseWallet)return!0}return!1},o2=class{constructor(){this.walletType=null;this.getEthereumProvider=()=>this.ethProvider;this.createSiweMessage=(e,a,o,l,s,c,b)=>`${o} wants you to sign in with your Ethereum account:
|
|
1
|
+
"use strict";var Y3=Object.create;var K1=Object.defineProperty;var J3=Object.getOwnPropertyDescriptor;var X3=Object.getOwnPropertyNames;var Q3=Object.getPrototypeOf,t5=Object.prototype.hasOwnProperty;var e5=(i,e)=>{for(var a in e)K1(i,a,{get:e[a],enumerable:!0})},p4=(i,e,a,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of X3(e))!t5.call(i,l)&&l!==a&&K1(i,l,{get:()=>e[l],enumerable:!(o=J3(e,l))||o.enumerable});return i};var k=(i,e,a)=>(a=i!=null?Y3(Q3(i)):{},p4(e||!i||!i.__esModule?K1(a,"default",{value:i,enumerable:!0}):a,i)),i5=i=>p4(K1({},"__esModule",{value:!0}),i);var f6={};e5(f6,{PrivyProvider:()=>q3,VERSION:()=>J1,usePrivy:()=>v});module.exports=i5(f6);var j=require("react");var X1=k(require("axios"));var h4=k(require("axios")),K=class extends Error{constructor(a,o){super(a);o instanceof Error&&(this.cause=o)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},Y1=class extends K{constructor(a,o,l,s){super(l,s);this.type=a;this.status=o}},m=class extends K{constructor(a,o){super(a,o);this.type="client_error"}};var $=class extends K{constructor(a,o){super(a,o);this.type="connector_error"}},R=i=>{if(i instanceof K)return i;if(!h4.default.isAxiosError(i))return Y(i);if(!i.response)return new Y1("api_error",null,i.message,i);let{type:e,message:a,error:o}=i.response.data;return new Y1(e||"ApiError",i.response.status,a||o,i)},Y=i=>i instanceof K?i:i instanceof Error?new m(i.message,i):new m(`Internal error: ${i}`);var f4="1.6.0-beta.11";var u4="https://api.privy.io/v0",m4=process.env.NEXT_PUBLIC_PRIVY_AUTH_URL||"https://auth.privy.io",E2="70f97dc579834350a5baec117b3c5ae3",b4=1e4,t1=1200,k4=3e4,J1=f4;var Q1=class{constructor(e,a,o){this.appId=e,this.sdkVersion=J1,this.session=a,this.defaults=o}async get(e,a){try{return await X1.default.get(e,this.buildConfig({headers:{"Cache-Control":"no-cache"},...a}))}catch(o){throw R(o)}}async post(e,a,o){try{return await X1.default.post(e,a,this.buildConfig(o))}catch(l){throw R(l)}}async delete(e,a){try{return await X1.default.delete(e,this.buildConfig(a))}catch(o){throw R(o)}}buildConfig(e){return e=e||{},e.headers=e.headers||{},e.headers["privy-app-id"]=this.appId,e.headers["privy-client"]=`react-auth:${this.sdkVersion}`,this.session.token!==null&&(e.headers.authorization=`Bearer ${this.session.token}`),{...this.defaults,...e}}};var M4=k(require("jwt-decode")),x1=class{static parse(e){try{return new x1(e)}catch{return null}}constructor(e){this.value=e,this._decoded=(0,M4.default)(e)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}isExpired(e=0){let a=Date.now(),o=(this.expiration-e)*1e3;return a>=o}};var E1=class{constructor(e){this.promise=null;this.fn=e}execute(e){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(e)}finally{this.promise=null}})()),this.promise}};var A2=class{constructor(){this._cache={}}get(e){return this._cache[e]}put(e,a){a!==void 0?this._cache[e]=a:this.del(e)}del(e){delete this._cache[e]}},P2=class{get(e){let a=localStorage.getItem(e);return a===null?void 0:JSON.parse(a)}put(e,a){a!==void 0?localStorage.setItem(e,JSON.stringify(a)):this.del(e)}del(e){localStorage.removeItem(e)}};function o5(){return typeof window<"u"&&window.localStorage?new P2:new A2}var J=o5();var l5=i=>{var e;return(e=i.map(a=>{if(a.type==="wallet")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3),chainType:a.chain_type}}).filter(a=>a))==null?void 0:e[0]},r5=i=>{var e;return(e=i.map(a=>{if(a.type==="email")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},n5=i=>{var e;return(e=i.map(a=>{if(a.type==="phone")return{number:a.phoneNumber,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},s5=i=>{var e;return(e=i.map(a=>{if(a.type==="google_oauth")return{subject:a.subject,email:a.email,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},C5=i=>{var e;return(e=i.map(a=>{if(a.type==="twitter_oauth")return{subject:a.subject,username:a.username,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},d5=i=>{var e;return(e=i.map(a=>{if(a.type==="discord_oauth")return{subject:a.subject,username:a.username,email:a.email,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]};function f1(i){if(!i)return null;let e=r5(i.linked_accounts),a=n5(i.linked_accounts),o=l5(i.linked_accounts),l=s5(i.linked_accounts),s=C5(i.linked_accounts),c=d5(i.linked_accounts);return{id:i.id,createdAt:new Date(i.created_at*1e3),linkedAccounts:[...o?[o]:[],...e?[e]:[],...a?[a]:[],...l?[l]:[],...s?[s]:[],...c?[c]:[]],email:e&&{address:e==null?void 0:e.address},phone:a&&{number:a==null?void 0:a.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletType:o.walletType},google:l&&{subject:l.subject,email:l.email,name:l.name},twitter:s&&{subject:s.subject,username:s.username,name:s.name},discord:c&&{subject:c.subject,username:c.username,email:c.email}}}var g4=()=>"/api/v1/sessions",w4=()=>"/api/v1/sessions/logout",y4=()=>"/api/v1/siwe/init",v4=()=>"/api/v1/siwe/authenticate",Z4=()=>"/api/v1/passwordless/init",L4=()=>"/api/v1/passwordless/authenticate",x4=()=>"/api/v1/passwordless_sms/init",E4=()=>"/api/v1/passwordless_sms/authenticate",A4=()=>"/api/v1/oauth/init",P4=()=>"/api/v1/oauth/authenticate",_4=()=>"/api/v1/siwe/unlink",T4=()=>"/api/v1/passwordless/unlink",S4=()=>"/api/v1/passwordless_sms/unlink",I4=()=>"/api/v1/oauth/unlink";var c5=30,_2="privy:token",T2="privy:refresh_token",t2=class{constructor(){this.authenticateOnce=new E1(async e=>this._authenticate(e)),this.refreshOnce=new E1(this._refresh.bind(this)),this.destroyOnce=new E1(this._destroy.bind(this))}get token(){let e=J.get(_2);return typeof e=="string"?e:null}get refreshToken(){let e=J.get(T2);return typeof e=="string"?e:null}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasActiveToken(){let e=x1.parse(this.token);return e!==null&&!e.isExpired(c5)}authenticate(e){return this.authenticateOnce.execute(e)}refresh(){return this.refreshOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(e){try{let{token:a,refresh_token:o,user:l}=await e.authenticate();return a&&this.storeToken(a),o&&this.storeRefreshToken(o),f1(l)}catch(a){throw console.warn("Error authenticating session"),Y(a)}}async _refresh(){if(!this.api)throw new m("Session has no API instance");let e=this.token,a=this.refreshToken;if(!e||!a)return null;try{let o=await this.api.post(g4(),{refresh_token:a});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),f1(o.data.user)}catch(o){throw Y(o)}}async _destroy(){var e;try{await((e=this.api)==null?void 0:e.post(w4(),{})),this.destroyLocalState()}catch(a){throw console.warn("Error destroying session"),Y(a)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null)}storeToken(e){typeof e=="string"?J.put(_2,e):J.del(_2)}storeRefreshToken(e){typeof e=="string"?J.put(T2,e):J.del(T2)}};var W4=require("@ethersproject/address"),W2=k(require("@walletconnect/web3-provider"));var A1=class{constructor(e){this.removeListener=(e,a)=>{if(this._provider)return this._provider.removeListener(e,a)};this.setProvider=e=>{this._provider=e,this._subscriptions.forEach(a=>{var o;(o=this._provider)==null||o.on(a.eventName,a.listener)})};this._provider=e,this._subscriptions=[]}on(e,a){if(this._provider)return this._provider.on(e,a);this._subscriptions.push({eventName:e,listener:a})}request(e){if(!this._provider)throw new $(`A wallet request of type ${e.method} was made to a disconnected wallet: `);return this._provider.request(e)}},P1=class extends A1{constructor(a){super(a)}},e2=class extends A1{constructor(e){super(e)}sendAsync(e,a){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};var O4=require("ethers");var R4=["metamask","coinbase_wallet","wallet_connect"];var N4=require("ethers");var i2=class extends ${constructor(){super("Wallet timeout");this.type="wallet_error"}},I2=i=>{if(i instanceof $)return i;if((i==null?void 0:i.code)&&(i==null?void 0:i.reason)){let e=new _1(i);return i.code===N4.ethers.errors.ACTION_REJECTED&&(e.details=M1.E4001_USER_REJECTED_REQUEST),e}return i!=null&&i.code?new _1(i):new $("Unknown connector error",i)},S2=class extends K{constructor(a,o,l){super(a);this.type="provider_error";this.code=o,this.data=l}},_1=class extends S2{constructor(a){var s,c,b;let o=a;super(o.message,o.code,o.data);let l=Object.values(M1).find(g=>g.eipCode===o.code);this.details=l||M1.UNKNOWN_ERROR,o.code===-32002&&((s=o.message)!=null&&s.includes("already pending for origin")?(c=o.message)!=null&&c.includes("wallet_requestPermissions")?this.details=M1.E32002_CONNECTION_ALREADY_PENDING:this.details=M1.E32002_REQUEST_ALREADY_PENDING:(b=o.message)!=null&&b.includes("Already processing")&&o.message.includes("eth_requestAccounts")&&(this.details=M1.E32002_WALLET_LOCKED))}},p5={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0}},h5={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},f5={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}},M1={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...f5,...h5},R2={...p5,...M1};var N2="privy:wallet_type",a2=(i=new i2,e=k4)=>new Promise((a,o)=>setTimeout(()=>{o(i)},e)),O2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isMetaMask)return!0}return!1},D2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isCoinbaseWallet)return!0}return!1},o2=class{constructor(){this.walletType=null;this.getEthereumProvider=()=>this.ethProvider;this.createSiweMessage=(e,a,o,l,s,c,b)=>`${o} wants you to sign in with your Ethereum account:
|
|
2
2
|
${a}
|
|
3
3
|
|
|
4
4
|
${b}
|
|
@@ -625,14 +625,16 @@ Resources:
|
|
|
625
625
|
justify-items: center;
|
|
626
626
|
gap: 8px;
|
|
627
627
|
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
628
|
+
&& {
|
|
629
|
+
a {
|
|
630
|
+
text-decoration: underline;
|
|
631
|
+
color: var(--primary-color);
|
|
632
|
+
}
|
|
632
633
|
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
634
|
+
svg {
|
|
635
|
+
margin-top: auto;
|
|
636
|
+
margin-bottom: auto;
|
|
637
|
+
}
|
|
636
638
|
}
|
|
637
639
|
`;var p=require("react/jsx-runtime"),w3=({style:i,...e})=>(0,p.jsxs)("svg",{width:"286",height:"183",viewBox:"0 0 286 183",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"1.25rem",width:"1.25rem",...i},...e,children:[(0,p.jsx)("rect",{x:"198.5",y:"133",width:"50",height:"50",rx:"25",fill:"#E1E7EF"}),(0,p.jsx)("path",{d:"M236.373 144.791L225.206 153.052L227.289 148.181L236.373 144.791Z",fill:"#E17726",stroke:"#E17726",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M210.627 144.791L221.692 153.116L219.711 148.187L210.627 144.785V144.791ZM232.353 163.933L229.377 168.47L235.738 170.219L237.557 164.036L232.347 163.933H232.353ZM209.448 164.036L211.257 170.219L217.602 168.47L214.647 163.933L209.448 164.036Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M217.262 156.27L215.497 158.939L221.783 159.23L221.579 152.46L217.262 156.281V156.27V156.27ZM229.737 156.281L225.351 152.374L225.206 159.23L231.492 158.939L229.732 156.281H229.737ZM217.602 168.475L221.417 166.64L218.14 164.089L217.607 168.475H217.602ZM225.588 166.63L229.377 168.475L228.865 164.084L225.588 166.635V166.63Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M229.377 168.47L225.588 166.635L225.895 169.1L225.862 170.144L229.382 168.47H229.377ZM217.602 168.47L221.137 170.144L221.11 169.1L221.417 166.635L217.602 168.47V168.47Z",fill:"#D5BFB2",stroke:"#D5BFB2",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M221.197 162.448L218.054 161.533L220.282 160.516L221.207 162.453H221.197V162.448ZM225.793 162.448L226.729 160.505L228.962 161.522L225.793 162.459V162.448Z",fill:"#233447",stroke:"#233447",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M217.602 168.47L218.156 163.933L214.647 164.035L217.602 168.47V168.47ZM228.844 163.933L229.377 168.47L232.353 164.035L228.844 163.933V163.933ZM231.503 158.939L225.217 159.23L225.793 162.459L226.729 160.505L228.962 161.522L231.503 158.939V158.939ZM218.054 161.533L220.282 160.516L221.207 162.453L221.794 159.224L215.508 158.944L218.059 161.538L218.054 161.533Z",fill:"#CC6228",stroke:"#CC6228",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M215.503 158.939L218.134 164.078L218.048 161.528L215.497 158.934L215.503 158.939ZM228.962 161.533L228.86 164.084L231.492 158.944L228.957 161.538L228.962 161.533ZM221.794 159.23L221.196 162.459L221.945 166.263L222.117 161.242L221.794 159.23ZM225.211 159.23L224.904 161.237L225.055 166.269L225.792 162.453L225.206 159.224V159.235L225.211 159.23Z",fill:"#E27525",stroke:"#E27525",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M225.793 162.448L225.055 166.263L225.588 166.635L228.86 164.084L228.962 161.528L225.793 162.448V162.448ZM218.054 161.528L218.14 164.078L221.417 166.629L221.945 166.263L221.207 162.448L218.048 161.528H218.059H218.054Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M225.868 170.144L225.895 169.1L225.604 168.863H221.39L221.11 169.1L221.137 170.144L217.602 168.47L218.845 169.487L221.353 171.215H225.642L228.155 169.482L229.377 168.47L225.857 170.144H225.868V170.144Z",fill:"#C0AC9D",stroke:"#C0AC9D",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M225.588 166.63L225.055 166.264H221.945L221.417 166.635L221.11 169.1L221.39 168.863H225.604L225.895 169.1L225.588 166.635V166.624V166.63Z",fill:"#161616",stroke:"#161616",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M236.846 153.585L237.783 149.037L236.373 144.791L225.583 152.777L229.737 156.27L235.598 157.976L236.889 156.475L236.33 156.066L237.223 155.248L236.545 154.72L237.438 154.042L236.846 153.585H236.857H236.846ZM209.217 149.032L210.17 153.585L209.556 154.037L210.466 154.715L209.787 155.248L210.67 156.066L210.11 156.475L211.402 157.976L217.263 156.275L221.417 152.767L210.627 144.791L209.217 149.032V149.032Z",fill:"#763E1A",stroke:"#763E1A",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("path",{d:"M235.598 157.976L229.737 156.275L231.502 158.934L228.871 164.073L232.353 164.03H237.562L235.598 157.97V157.976ZM217.263 156.27L211.402 157.976L209.448 164.035H214.658L218.14 164.079L215.508 158.939L217.273 156.27H217.263V156.27ZM225.206 159.224L225.588 152.766L227.289 148.176H219.711L221.412 152.766L221.794 159.224L221.939 161.248V166.263H225.055L225.071 161.248L225.206 159.224V159.224Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),(0,p.jsx)("rect",{x:"192",y:"30",width:"50",height:"50",rx:"25",fill:"#0C5BFF"}),(0,p.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M205 55C205 61.6274 210.373 67 217 67C223.627 67 229 61.6274 229 55C229 48.3726 223.627 43 217 43C210.373 43 205 48.3726 205 55ZM213.933 51.1333C213.491 51.1333 213.133 51.4915 213.133 51.9333V58.0667C213.133 58.5085 213.491 58.8667 213.933 58.8667H220.067C220.508 58.8667 220.867 58.5085 220.867 58.0667V51.9333C220.867 51.4915 220.508 51.1333 220.067 51.1333H213.933Z",fill:"white"}),(0,p.jsx)("rect",{x:"39.5",y:"18",width:"50",height:"50",rx:"25",fill:"url(#paint0_linear_428_81)"}),(0,p.jsx)("path",{d:"M77.3677 42.8335H74.102C74.102 36.2519 68.6881 30.9167 62.0091 30.9167C55.4129 30.9167 50.0501 36.1213 49.9189 42.5901C49.7831 49.2769 56.1492 55.0834 62.9357 55.0834H63.7893C69.7724 55.0834 77.7916 50.468 79.0445 44.8444C79.2758 43.8079 78.445 42.8335 77.3677 42.8335ZM57.1562 43.1267C57.1562 44.0068 56.4257 44.7267 55.5325 44.7267C54.6394 44.7267 53.9089 44.0065 53.9089 43.1267V40.5383C53.9089 39.6582 54.6394 38.9383 55.5325 38.9383C56.4257 38.9383 57.1562 39.6582 57.1562 40.5383V43.1267ZM62.794 43.1267C62.794 44.0068 62.0636 44.7267 61.1705 44.7267C60.2773 44.7267 59.5468 44.0065 59.5468 43.1267V40.5383C59.5468 39.6582 60.2776 38.9383 61.1705 38.9383C62.0636 38.9383 62.794 39.6582 62.794 40.5383V43.1267Z",fill:"url(#paint1_linear_428_81)"}),(0,p.jsx)("rect",{x:"46.5",y:"124",width:"50",height:"50",rx:"25",fill:"#141414"}),(0,p.jsx)("g",{clipPath:"url(#clip0_428_81)",children:(0,p.jsx)("path",{d:"M62.1497 143.578C67.3134 138.585 75.6867 138.585 80.8505 143.578L81.4722 144.179C81.5335 144.238 81.5822 144.308 81.6155 144.386C81.6488 144.463 81.666 144.547 81.666 144.631C81.666 144.715 81.6488 144.799 81.6155 144.876C81.5822 144.954 81.5335 145.024 81.4722 145.083L79.3462 147.139C79.2835 147.199 79.1996 147.232 79.1123 147.232C79.025 147.232 78.9411 147.199 78.8784 147.139L78.0232 146.311C74.421 142.829 68.58 142.829 64.977 146.311L64.0611 147.197C63.9984 147.257 63.9145 147.29 63.8272 147.29C63.7399 147.29 63.656 147.257 63.5933 147.197L61.4672 145.141C61.4059 145.083 61.3572 145.012 61.3239 144.935C61.2906 144.857 61.2735 144.774 61.2735 144.689C61.2735 144.605 61.2906 144.521 61.3239 144.444C61.3572 144.366 61.4059 144.296 61.4672 144.237L62.1497 143.578ZM85.248 147.829L87.1397 149.659C87.201 149.718 87.2497 149.788 87.283 149.865C87.3163 149.943 87.3334 150.027 87.3334 150.111C87.3334 150.195 87.3163 150.279 87.283 150.356C87.2497 150.434 87.201 150.504 87.1397 150.563L78.6081 158.812C78.4828 158.933 78.315 159 78.1403 159C77.9656 159 77.7978 158.933 77.6725 158.812L71.6177 152.957C71.5864 152.927 71.5443 152.91 71.5005 152.91C71.4567 152.91 71.4147 152.927 71.3833 152.957L65.3285 158.812C65.2032 158.933 65.0354 159 64.8607 159C64.686 159 64.5182 158.933 64.3929 158.812L55.8605 150.563C55.7992 150.504 55.7505 150.434 55.7172 150.356C55.6839 150.279 55.6667 150.195 55.6667 150.111C55.6667 150.027 55.6839 149.943 55.7172 149.865C55.7505 149.788 55.7992 149.718 55.8605 149.659L57.7531 147.829C57.8783 147.709 58.0459 147.642 58.2204 147.642C58.3949 147.642 58.5625 147.709 58.6878 147.829L64.7427 153.684C64.774 153.714 64.816 153.731 64.8598 153.731C64.9036 153.731 64.9457 153.714 64.977 153.684L71.0319 147.829C71.1572 147.709 71.325 147.641 71.4997 147.641C71.6743 147.641 71.8422 147.709 71.9675 147.829L78.0232 153.684C78.0545 153.714 78.0965 153.731 78.1403 153.731C78.1841 153.731 78.2262 153.714 78.2575 153.684L84.3124 147.829C84.4377 147.709 84.6055 147.641 84.7802 147.641C84.9549 147.641 85.1227 147.709 85.248 147.829Z",fill:"white"})}),(0,p.jsx)("rect",{x:"103.5",y:"58",width:"78",height:"78",rx:"39",fill:"white"}),(0,p.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M131.626 83.0058C128.674 83.3405 126.5 85.8652 126.5 88.8363V92.0779V103.277V105.099C126.5 108.098 128.713 110.636 131.695 110.952C134.982 111.301 139.216 111.667 142.5 111.667C147.147 111.667 153.695 110.934 156.773 110.555C157.765 110.433 158.5 109.588 158.5 108.589V92.0779C158.5 91.0782 157.765 90.2337 156.773 90.1115C153.705 89.7336 147.189 89.0046 142.545 88.9999L142.5 88.9999L142.46 88.9999C139.655 89.0025 136.165 89.2695 133.166 89.564C132.488 89.5642 131.907 89.0495 131.84 88.3608C131.768 87.6279 132.304 86.9755 133.037 86.9036C136.061 86.6067 139.621 86.3333 142.5 86.3333C145.707 86.3333 149.764 86.6728 152.989 87.007C154.039 87.1159 155.006 87.2247 155.833 87.3221V85.3898C155.833 84.3995 155.112 83.56 154.131 83.4288C151.262 83.0454 145.367 82.3333 141.167 82.3333C138.276 82.3333 134.583 82.6705 131.626 83.0058ZM153.833 102.333C154.938 102.333 155.833 101.438 155.833 100.333C155.833 99.2287 154.938 98.3333 153.833 98.3333C152.729 98.3333 151.833 99.2287 151.833 100.333C151.833 101.438 152.729 102.333 153.833 102.333Z",fill:"#696FFD"}),(0,p.jsx)("rect",{x:"103.5",y:"58",width:"78",height:"78",rx:"39",stroke:"#E1E7EF",strokeWidth:"2"}),(0,p.jsx)("path",{d:"M269.405 111C278.27 111 285.457 103.837 285.457 95C285.457 86.1634 278.27 79 269.405 79C260.54 79 253.354 86.1634 253.354 95C253.354 103.837 260.54 111 269.405 111Z",fill:"#B9BBFE"}),(0,p.jsx)("path",{d:"M133.971 24C140.62 24 146.01 18.6274 146.01 12C146.01 5.37258 140.62 0 133.971 0C127.322 0 121.932 5.37258 121.932 12C121.932 18.6274 127.322 24 133.971 24Z",fill:"#B9BBFE"}),(0,p.jsx)("path",{d:"M15.5917 112C20.5782 112 24.6206 107.971 24.6206 103C24.6206 98.0294 20.5782 94 15.5917 94C10.6051 94 6.56274 98.0294 6.56274 103C6.56274 107.971 10.6051 112 15.5917 112Z",fill:"#B9BBFE"}),(0,p.jsx)("path",{d:"M152.029 177C157.57 177 162.061 172.523 162.061 167C162.061 161.477 157.57 157 152.029 157C146.488 157 141.997 161.477 141.997 167C141.997 172.523 146.488 177 152.029 177Z",fill:"#E9E9FF"}),(0,p.jsx)("path",{d:"M263.386 21C267.818 21 271.412 17.4183 271.412 13C271.412 8.58172 267.818 5 263.386 5C258.953 5 255.36 8.58172 255.36 13C255.36 17.4183 258.953 21 263.386 21Z",fill:"#E9E9FF"}),(0,p.jsx)("path",{d:"M7.06436 36C10.6658 36 13.5853 33.0899 13.5853 29.5C13.5853 25.9101 10.6658 23 7.06436 23C3.46296 23 0.543457 25.9101 0.543457 29.5C0.543457 33.0899 3.46296 36 7.06436 36Z",fill:"#E9E9FF"}),(0,p.jsxs)("defs",{children:[(0,p.jsxs)("linearGradient",{id:"paint0_linear_428_81",x1:"64.5",y1:"18",x2:"64.5",y2:"68",gradientUnits:"userSpaceOnUse",children:[(0,p.jsx)("stop",{stopColor:"#534BB1"}),(0,p.jsx)("stop",{offset:"1",stopColor:"#551BF9"})]}),(0,p.jsxs)("linearGradient",{id:"paint1_linear_428_81",x1:"64.5",y1:"30.9167",x2:"64.5",y2:"55.0834",gradientUnits:"userSpaceOnUse",children:[(0,p.jsx)("stop",{stopColor:"white"}),(0,p.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0.82"})]}),(0,p.jsx)("clipPath",{id:"clip0_428_81",children:(0,p.jsx)("rect",{width:"31.6667",height:"19.1667",fill:"white",transform:"translate(55.6667 139.833)"})})]})]});var k1=k(require("react-device-detect"));var r=require("react/jsx-runtime");var l4=()=>{let{navigate:i}=u(),e="https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn?hl=en";return k1.isFirefox&&(e="https://addons.mozilla.org/en-US/firefox/addon/ether-metamask/"),(0,r.jsxs)(x3,{children:[(0,r.jsxs)(E3,{children:[(0,r.jsx)("h3",{children:"Create a wallet with Metamask"}),(0,r.jsx)(g1,{style:{width:"152px",height:"152px"}})]}),(0,r.jsxs)(o4,{children:[(0,r.jsx)(W1,{children:(0,r.jsxs)("div",{children:[(0,r.jsx)("span",{children:"Install the "}),(0,r.jsx)("a",{href:e,target:"_blank",children:"MetaMask browser extension"})]})}),(0,r.jsx)(w2,{}),(0,r.jsx)(W1,{children:"Set up your first wallet"})]}),(0,r.jsx)(A3,{onClick:()=>i("LANDING"),children:"Done! I have my wallet"})]})},r4=()=>{let{navigate:i}=u();return(0,r.jsxs)(x3,{children:[(0,r.jsxs)(E3,{children:[(0,r.jsx)("h3",{children:"Create a wallet with Coinbase"}),(0,r.jsx)(M3,{style:{width:"152px",height:"152px"}})]}),(0,r.jsxs)(o4,{children:[(0,r.jsx)(W1,{children:"Open the camera on your phone"}),(0,r.jsx)(w2,{}),(0,r.jsx)(W1,{children:"Scan the QR code with your camera"}),(0,r.jsx)(w2,{}),(0,r.jsx)(W1,{children:"Click the link and download the app"})]}),(0,r.jsx)(A3,{onClick:()=>i("LANDING"),children:"Done! I have my wallet"})]})},L3=()=>{let[i,e]=(0,Z3.useState)("WHAT_IS_A_WALLET"),{navigateBack:a}=u();return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(A,{backFn:i==="WHAT_IS_A_WALLET"?a:i==="PICK_A_NEW_WALLET"?()=>e("WHAT_IS_A_WALLET"):()=>e("PICK_A_NEW_WALLET")},"header"),(0,r.jsxs)(j5,{children:[i==="WHAT_IS_A_WALLET"&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(c2,{children:(0,r.jsx)(w3,{style:{width:"100%",height:"auto",borderRadius:"var(--border-radius-sm)"}})}),(0,r.jsxs)(z5,{children:[(0,r.jsx)("h3",{children:"What is a wallet?"}),(0,r.jsx)("p",{children:"Wallets are how you can store, send, and receive cryptocurrencies and NFTs. They are also a new way\xA0to\xA0log\xA0in."}),(0,r.jsx)("p",{children:"Instead of creating new accounts and passwords every time you explore crypto apps, you can just connect\xA0your\xA0wallet."})]}),(0,r.jsx)(K5,{children:(0,r.jsx)(Y5,{onClick:()=>{e("PICK_A_NEW_WALLET")},children:"Get a Wallet"})})]}),i==="PICK_A_NEW_WALLET"&&(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)($5,{children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{children:"Create a new wallet"}),(0,r.jsx)("p",{children:"Select one the wallet providers below to get started on your web3 adventure."})]}),(0,r.jsxs)(q5,{children:[(0,r.jsxs)(y3,{onClick:()=>{k1.isIOS?window.location.href="https://apps.apple.com/us/app/metamask-blockchain-wallet/id1438144202":k1.isAndroid?window.location.href="https://play.google.com/store/apps/details?id=io.metamask":e("CREATE_METAMASK_WALLET")},children:[(0,r.jsx)(g1,{}),(0,r.jsx)(v3,{children:(0,r.jsx)("h4",{children:"MetaMask"})}),(0,r.jsx)("div",{children:(0,r.jsx)("span",{children:"Set up"})})]}),(0,r.jsxs)(y3,{onClick:()=>{k1.isIOS?window.location.href="https://apps.apple.com/us/app/coinbase-wallet-nfts-crypto/id1278383455":k1.isAndroid?window.location.href="https://play.google.com/store/apps/details?id=org.toshi":e("CREATE_COINBASE_WALLET")},children:[(0,r.jsx)(T1,{}),(0,r.jsx)(v3,{children:(0,r.jsx)("h4",{children:"Coinbase Wallet"})}),(0,r.jsx)("div",{children:(0,r.jsx)("span",{children:"Set up"})})]})]})]})}),i==="CREATE_COINBASE_WALLET"&&(0,r.jsx)(r4,{}),i==="CREATE_METAMASK_WALLET"&&(0,r.jsx)(l4,{})]}),(0,r.jsxs)(d1,{children:[(0,r.jsx)("span",{children:"Still not sure? "}),(0,r.jsx)("a",{target:"_blank",href:"https://join.tell.ie/blog/explaining-web3-wallets",children:"Learn more"})]})]})},j5=q.default.div`
|
|
638
640
|
> svg {
|
package/dist/index.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{useEffect as f2,useState as d1}from"react";import g2 from"axios";import F3 from"axios";var F=class extends Error{constructor(a,o){super(a);o instanceof Error&&(this.cause=o)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},W1=class extends F{constructor(a,o,l,n){super(l,n);this.type=a;this.status=o}},u=class extends F{constructor(a,o){super(a,o);this.type="client_error"}};var D=class extends F{constructor(a,o){super(a,o);this.type="connector_error"}},T=i=>{if(i instanceof F)return i;if(!F3.isAxiosError(i))return V(i);if(!i.response)return new W1("api_error",null,i.message,i);let{type:e,message:a,error:o}=i.response.data;return new W1(e||"ApiError",i.response.status,a||o,i)},V=i=>i instanceof F?i:i instanceof Error?new u(i.message,i):new u(`Internal error: ${i}`);var i4="1.6.0-beta.10";var a4="https://api.privy.io/v0",o4=process.env.NEXT_PUBLIC_PRIVY_AUTH_URL||"https://auth.privy.io",k2="70f97dc579834350a5baec117b3c5ae3",l4=1e4,z=1200,r4=3e4,M2=i4;var O1=class{constructor(e,a,o){this.appId=e,this.sdkVersion=M2,this.session=a,this.defaults=o}async get(e,a){try{return await g2.get(e,this.buildConfig({headers:{"Cache-Control":"no-cache"},...a}))}catch(o){throw T(o)}}async post(e,a,o){try{return await g2.post(e,a,this.buildConfig(o))}catch(l){throw T(l)}}async delete(e,a){try{return await g2.delete(e,this.buildConfig(a))}catch(o){throw T(o)}}buildConfig(e){return e=e||{},e.headers=e.headers||{},e.headers["privy-app-id"]=this.appId,e.headers["privy-client"]=`react-auth:${this.sdkVersion}`,this.session.token!==null&&(e.headers.authorization=`Bearer ${this.session.token}`),{...this.defaults,...e}}};import H3 from"jwt-decode";var p1=class{static parse(e){try{return new p1(e)}catch{return null}}constructor(e){this.value=e,this._decoded=H3(e)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}isExpired(e=0){let a=Date.now(),o=(this.expiration-e)*1e3;return a>=o}};var h1=class{constructor(e){this.promise=null;this.fn=e}execute(e){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(e)}finally{this.promise=null}})()),this.promise}};var w2=class{constructor(){this._cache={}}get(e){return this._cache[e]}put(e,a){a!==void 0?this._cache[e]=a:this.del(e)}del(e){delete this._cache[e]}},y2=class{get(e){let a=localStorage.getItem(e);return a===null?void 0:JSON.parse(a)}put(e,a){a!==void 0?localStorage.setItem(e,JSON.stringify(a)):this.del(e)}del(e){localStorage.removeItem(e)}};function B3(){return typeof window<"u"&&window.localStorage?new y2:new w2}var H=B3();var G3=i=>{var e;return(e=i.map(a=>{if(a.type==="wallet")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3),chainType:a.chain_type}}).filter(a=>a))==null?void 0:e[0]},j3=i=>{var e;return(e=i.map(a=>{if(a.type==="email")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},z3=i=>{var e;return(e=i.map(a=>{if(a.type==="phone")return{number:a.phoneNumber,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},$3=i=>{var e;return(e=i.map(a=>{if(a.type==="google_oauth")return{subject:a.subject,email:a.email,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},q3=i=>{var e;return(e=i.map(a=>{if(a.type==="twitter_oauth")return{subject:a.subject,username:a.username,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},K3=i=>{var e;return(e=i.map(a=>{if(a.type==="discord_oauth")return{subject:a.subject,username:a.username,email:a.email,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]};function Q(i){if(!i)return null;let e=j3(i.linked_accounts),a=z3(i.linked_accounts),o=G3(i.linked_accounts),l=$3(i.linked_accounts),n=q3(i.linked_accounts),d=K3(i.linked_accounts);return{id:i.id,createdAt:new Date(i.created_at*1e3),linkedAccounts:[...o?[o]:[],...e?[e]:[],...a?[a]:[],...l?[l]:[],...n?[n]:[],...d?[d]:[]],email:e&&{address:e==null?void 0:e.address},phone:a&&{number:a==null?void 0:a.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletType:o.walletType},google:l&&{subject:l.subject,email:l.email,name:l.name},twitter:n&&{subject:n.subject,username:n.username,name:n.name},discord:d&&{subject:d.subject,username:d.username,email:d.email}}}var n4=()=>"/api/v1/sessions",s4=()=>"/api/v1/sessions/logout",C4=()=>"/api/v1/siwe/init",d4=()=>"/api/v1/siwe/authenticate",c4=()=>"/api/v1/passwordless/init",p4=()=>"/api/v1/passwordless/authenticate",h4=()=>"/api/v1/passwordless_sms/init",f4=()=>"/api/v1/passwordless_sms/authenticate",u4=()=>"/api/v1/oauth/init",m4=()=>"/api/v1/oauth/authenticate",b4=()=>"/api/v1/siwe/unlink",k4=()=>"/api/v1/passwordless/unlink",M4=()=>"/api/v1/passwordless_sms/unlink",g4=()=>"/api/v1/oauth/unlink";var Y3=30,v2="privy:token",Z2="privy:refresh_token",D1=class{constructor(){this.authenticateOnce=new h1(async e=>this._authenticate(e)),this.refreshOnce=new h1(this._refresh.bind(this)),this.destroyOnce=new h1(this._destroy.bind(this))}get token(){let e=H.get(v2);return typeof e=="string"?e:null}get refreshToken(){let e=H.get(Z2);return typeof e=="string"?e:null}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasActiveToken(){let e=p1.parse(this.token);return e!==null&&!e.isExpired(Y3)}authenticate(e){return this.authenticateOnce.execute(e)}refresh(){return this.refreshOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(e){try{let{token:a,refresh_token:o,user:l}=await e.authenticate();return a&&this.storeToken(a),o&&this.storeRefreshToken(o),Q(l)}catch(a){throw console.warn("Error authenticating session"),V(a)}}async _refresh(){if(!this.api)throw new u("Session has no API instance");let e=this.token,a=this.refreshToken;if(!e||!a)return null;try{let o=await this.api.post(n4(),{refresh_token:a});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),Q(o.data.user)}catch(o){throw V(o)}}async _destroy(){var e;try{await((e=this.api)==null?void 0:e.post(s4(),{})),this.destroyLocalState()}catch(a){throw console.warn("Error destroying session"),V(a)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null)}storeToken(e){typeof e=="string"?H.put(v2,e):H.del(v2)}storeRefreshToken(e){typeof e=="string"?H.put(Z2,e):H.del(Z2)}};import{getAddress as e5}from"@ethersproject/address";import y4 from"@walletconnect/web3-provider";var f1=class{constructor(e){this.removeListener=(e,a)=>{if(this._provider)return this._provider.removeListener(e,a)};this.setProvider=e=>{this._provider=e,this._subscriptions.forEach(a=>{var o;(o=this._provider)==null||o.on(a.eventName,a.listener)})};this._provider=e,this._subscriptions=[]}on(e,a){if(this._provider)return this._provider.on(e,a);this._subscriptions.push({eventName:e,listener:a})}request(e){if(!this._provider)throw new D(`A wallet request of type ${e.method} was made to a disconnected wallet: `);return this._provider.request(e)}},u1=class extends f1{constructor(a){super(a)}},U1=class extends f1{constructor(e){super(e)}sendAsync(e,a){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};import{providers as i5}from"ethers";var w4=["metamask","coinbase_wallet","wallet_connect"];import{ethers as J3}from"ethers";var F1=class extends D{constructor(){super("Wallet timeout");this.type="wallet_error"}},x2=i=>{if(i instanceof D)return i;if((i==null?void 0:i.code)&&(i==null?void 0:i.reason)){let e=new m1(i);return i.code===J3.errors.ACTION_REJECTED&&(e.details=a1.E4001_USER_REJECTED_REQUEST),e}return i!=null&&i.code?new m1(i):new D("Unknown connector error",i)},L2=class extends F{constructor(a,o,l){super(a);this.type="provider_error";this.code=o,this.data=l}},m1=class extends L2{constructor(a){var n,d,m;let o=a;super(o.message,o.code,o.data);let l=Object.values(a1).find(k=>k.eipCode===o.code);this.details=l||a1.UNKNOWN_ERROR,o.code===-32002&&((n=o.message)!=null&&n.includes("already pending for origin")?(d=o.message)!=null&&d.includes("wallet_requestPermissions")?this.details=a1.E32002_CONNECTION_ALREADY_PENDING:this.details=a1.E32002_REQUEST_ALREADY_PENDING:(m=o.message)!=null&&m.includes("Already processing")&&o.message.includes("eth_requestAccounts")&&(this.details=a1.E32002_WALLET_LOCKED))}},X3={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0}},Q3={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},t5={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}},a1={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...t5,...Q3},E2={...X3,...a1};var A2="privy:wallet_type",V1=(i=new F1,e=r4)=>new Promise((a,o)=>setTimeout(()=>{o(i)},e)),P2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isMetaMask)return!0}return!1},_2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isCoinbaseWallet)return!0}return!1},H1=class{constructor(){this.walletType=null;this.getEthereumProvider=()=>this.ethProvider;this.createSiweMessage=(e,a,o,l,n,d,m)=>`${o} wants you to sign in with your Ethereum account:
|
|
1
|
+
import{useEffect as f2,useState as d1}from"react";import g2 from"axios";import F3 from"axios";var F=class extends Error{constructor(a,o){super(a);o instanceof Error&&(this.cause=o)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},W1=class extends F{constructor(a,o,l,n){super(l,n);this.type=a;this.status=o}},u=class extends F{constructor(a,o){super(a,o);this.type="client_error"}};var D=class extends F{constructor(a,o){super(a,o);this.type="connector_error"}},T=i=>{if(i instanceof F)return i;if(!F3.isAxiosError(i))return V(i);if(!i.response)return new W1("api_error",null,i.message,i);let{type:e,message:a,error:o}=i.response.data;return new W1(e||"ApiError",i.response.status,a||o,i)},V=i=>i instanceof F?i:i instanceof Error?new u(i.message,i):new u(`Internal error: ${i}`);var i4="1.6.0-beta.11";var a4="https://api.privy.io/v0",o4=process.env.NEXT_PUBLIC_PRIVY_AUTH_URL||"https://auth.privy.io",k2="70f97dc579834350a5baec117b3c5ae3",l4=1e4,z=1200,r4=3e4,M2=i4;var O1=class{constructor(e,a,o){this.appId=e,this.sdkVersion=M2,this.session=a,this.defaults=o}async get(e,a){try{return await g2.get(e,this.buildConfig({headers:{"Cache-Control":"no-cache"},...a}))}catch(o){throw T(o)}}async post(e,a,o){try{return await g2.post(e,a,this.buildConfig(o))}catch(l){throw T(l)}}async delete(e,a){try{return await g2.delete(e,this.buildConfig(a))}catch(o){throw T(o)}}buildConfig(e){return e=e||{},e.headers=e.headers||{},e.headers["privy-app-id"]=this.appId,e.headers["privy-client"]=`react-auth:${this.sdkVersion}`,this.session.token!==null&&(e.headers.authorization=`Bearer ${this.session.token}`),{...this.defaults,...e}}};import H3 from"jwt-decode";var p1=class{static parse(e){try{return new p1(e)}catch{return null}}constructor(e){this.value=e,this._decoded=H3(e)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}isExpired(e=0){let a=Date.now(),o=(this.expiration-e)*1e3;return a>=o}};var h1=class{constructor(e){this.promise=null;this.fn=e}execute(e){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(e)}finally{this.promise=null}})()),this.promise}};var w2=class{constructor(){this._cache={}}get(e){return this._cache[e]}put(e,a){a!==void 0?this._cache[e]=a:this.del(e)}del(e){delete this._cache[e]}},y2=class{get(e){let a=localStorage.getItem(e);return a===null?void 0:JSON.parse(a)}put(e,a){a!==void 0?localStorage.setItem(e,JSON.stringify(a)):this.del(e)}del(e){localStorage.removeItem(e)}};function B3(){return typeof window<"u"&&window.localStorage?new y2:new w2}var H=B3();var G3=i=>{var e;return(e=i.map(a=>{if(a.type==="wallet")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3),chainType:a.chain_type}}).filter(a=>a))==null?void 0:e[0]},j3=i=>{var e;return(e=i.map(a=>{if(a.type==="email")return{address:a.address,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},z3=i=>{var e;return(e=i.map(a=>{if(a.type==="phone")return{number:a.phoneNumber,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},$3=i=>{var e;return(e=i.map(a=>{if(a.type==="google_oauth")return{subject:a.subject,email:a.email,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},q3=i=>{var e;return(e=i.map(a=>{if(a.type==="twitter_oauth")return{subject:a.subject,username:a.username,name:a.name,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]},K3=i=>{var e;return(e=i.map(a=>{if(a.type==="discord_oauth")return{subject:a.subject,username:a.username,email:a.email,type:a.type,verifiedAt:new Date(a.verified_at*1e3)}}).filter(a=>a))==null?void 0:e[0]};function Q(i){if(!i)return null;let e=j3(i.linked_accounts),a=z3(i.linked_accounts),o=G3(i.linked_accounts),l=$3(i.linked_accounts),n=q3(i.linked_accounts),d=K3(i.linked_accounts);return{id:i.id,createdAt:new Date(i.created_at*1e3),linkedAccounts:[...o?[o]:[],...e?[e]:[],...a?[a]:[],...l?[l]:[],...n?[n]:[],...d?[d]:[]],email:e&&{address:e==null?void 0:e.address},phone:a&&{number:a==null?void 0:a.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletType:o.walletType},google:l&&{subject:l.subject,email:l.email,name:l.name},twitter:n&&{subject:n.subject,username:n.username,name:n.name},discord:d&&{subject:d.subject,username:d.username,email:d.email}}}var n4=()=>"/api/v1/sessions",s4=()=>"/api/v1/sessions/logout",C4=()=>"/api/v1/siwe/init",d4=()=>"/api/v1/siwe/authenticate",c4=()=>"/api/v1/passwordless/init",p4=()=>"/api/v1/passwordless/authenticate",h4=()=>"/api/v1/passwordless_sms/init",f4=()=>"/api/v1/passwordless_sms/authenticate",u4=()=>"/api/v1/oauth/init",m4=()=>"/api/v1/oauth/authenticate",b4=()=>"/api/v1/siwe/unlink",k4=()=>"/api/v1/passwordless/unlink",M4=()=>"/api/v1/passwordless_sms/unlink",g4=()=>"/api/v1/oauth/unlink";var Y3=30,v2="privy:token",Z2="privy:refresh_token",D1=class{constructor(){this.authenticateOnce=new h1(async e=>this._authenticate(e)),this.refreshOnce=new h1(this._refresh.bind(this)),this.destroyOnce=new h1(this._destroy.bind(this))}get token(){let e=H.get(v2);return typeof e=="string"?e:null}get refreshToken(){let e=H.get(Z2);return typeof e=="string"?e:null}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasActiveToken(){let e=p1.parse(this.token);return e!==null&&!e.isExpired(Y3)}authenticate(e){return this.authenticateOnce.execute(e)}refresh(){return this.refreshOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(e){try{let{token:a,refresh_token:o,user:l}=await e.authenticate();return a&&this.storeToken(a),o&&this.storeRefreshToken(o),Q(l)}catch(a){throw console.warn("Error authenticating session"),V(a)}}async _refresh(){if(!this.api)throw new u("Session has no API instance");let e=this.token,a=this.refreshToken;if(!e||!a)return null;try{let o=await this.api.post(n4(),{refresh_token:a});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),Q(o.data.user)}catch(o){throw V(o)}}async _destroy(){var e;try{await((e=this.api)==null?void 0:e.post(s4(),{})),this.destroyLocalState()}catch(a){throw console.warn("Error destroying session"),V(a)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null)}storeToken(e){typeof e=="string"?H.put(v2,e):H.del(v2)}storeRefreshToken(e){typeof e=="string"?H.put(Z2,e):H.del(Z2)}};import{getAddress as e5}from"@ethersproject/address";import y4 from"@walletconnect/web3-provider";var f1=class{constructor(e){this.removeListener=(e,a)=>{if(this._provider)return this._provider.removeListener(e,a)};this.setProvider=e=>{this._provider=e,this._subscriptions.forEach(a=>{var o;(o=this._provider)==null||o.on(a.eventName,a.listener)})};this._provider=e,this._subscriptions=[]}on(e,a){if(this._provider)return this._provider.on(e,a);this._subscriptions.push({eventName:e,listener:a})}request(e){if(!this._provider)throw new D(`A wallet request of type ${e.method} was made to a disconnected wallet: `);return this._provider.request(e)}},u1=class extends f1{constructor(a){super(a)}},U1=class extends f1{constructor(e){super(e)}sendAsync(e,a){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};import{providers as i5}from"ethers";var w4=["metamask","coinbase_wallet","wallet_connect"];import{ethers as J3}from"ethers";var F1=class extends D{constructor(){super("Wallet timeout");this.type="wallet_error"}},x2=i=>{if(i instanceof D)return i;if((i==null?void 0:i.code)&&(i==null?void 0:i.reason)){let e=new m1(i);return i.code===J3.errors.ACTION_REJECTED&&(e.details=a1.E4001_USER_REJECTED_REQUEST),e}return i!=null&&i.code?new m1(i):new D("Unknown connector error",i)},L2=class extends F{constructor(a,o,l){super(a);this.type="provider_error";this.code=o,this.data=l}},m1=class extends L2{constructor(a){var n,d,m;let o=a;super(o.message,o.code,o.data);let l=Object.values(a1).find(k=>k.eipCode===o.code);this.details=l||a1.UNKNOWN_ERROR,o.code===-32002&&((n=o.message)!=null&&n.includes("already pending for origin")?(d=o.message)!=null&&d.includes("wallet_requestPermissions")?this.details=a1.E32002_CONNECTION_ALREADY_PENDING:this.details=a1.E32002_REQUEST_ALREADY_PENDING:(m=o.message)!=null&&m.includes("Already processing")&&o.message.includes("eth_requestAccounts")&&(this.details=a1.E32002_WALLET_LOCKED))}},X3={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0}},Q3={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},t5={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}},a1={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...t5,...Q3},E2={...X3,...a1};var A2="privy:wallet_type",V1=(i=new F1,e=r4)=>new Promise((a,o)=>setTimeout(()=>{o(i)},e)),P2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isMetaMask)return!0}return!1},_2=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let i of window.ethereum.providers)if(i.isCoinbaseWallet)return!0}return!1},H1=class{constructor(){this.walletType=null;this.getEthereumProvider=()=>this.ethProvider;this.createSiweMessage=(e,a,o,l,n,d,m)=>`${o} wants you to sign in with your Ethereum account:
|
|
2
2
|
${a}
|
|
3
3
|
|
|
4
4
|
${m}
|
|
@@ -625,14 +625,16 @@ Resources:
|
|
|
625
625
|
justify-items: center;
|
|
626
626
|
gap: 8px;
|
|
627
627
|
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
628
|
+
&& {
|
|
629
|
+
a {
|
|
630
|
+
text-decoration: underline;
|
|
631
|
+
color: var(--primary-color);
|
|
632
|
+
}
|
|
632
633
|
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
634
|
+
svg {
|
|
635
|
+
margin-top: auto;
|
|
636
|
+
margin-bottom: auto;
|
|
637
|
+
}
|
|
636
638
|
}
|
|
637
639
|
`;import{jsx as p,jsxs as n2}from"react/jsx-runtime";var u3=({style:i,...e})=>n2("svg",{width:"286",height:"183",viewBox:"0 0 286 183",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"1.25rem",width:"1.25rem",...i},...e,children:[p("rect",{x:"198.5",y:"133",width:"50",height:"50",rx:"25",fill:"#E1E7EF"}),p("path",{d:"M236.373 144.791L225.206 153.052L227.289 148.181L236.373 144.791Z",fill:"#E17726",stroke:"#E17726",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M210.627 144.791L221.692 153.116L219.711 148.187L210.627 144.785V144.791ZM232.353 163.933L229.377 168.47L235.738 170.219L237.557 164.036L232.347 163.933H232.353ZM209.448 164.036L211.257 170.219L217.602 168.47L214.647 163.933L209.448 164.036Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M217.262 156.27L215.497 158.939L221.783 159.23L221.579 152.46L217.262 156.281V156.27V156.27ZM229.737 156.281L225.351 152.374L225.206 159.23L231.492 158.939L229.732 156.281H229.737ZM217.602 168.475L221.417 166.64L218.14 164.089L217.607 168.475H217.602ZM225.588 166.63L229.377 168.475L228.865 164.084L225.588 166.635V166.63Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M229.377 168.47L225.588 166.635L225.895 169.1L225.862 170.144L229.382 168.47H229.377ZM217.602 168.47L221.137 170.144L221.11 169.1L221.417 166.635L217.602 168.47V168.47Z",fill:"#D5BFB2",stroke:"#D5BFB2",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M221.197 162.448L218.054 161.533L220.282 160.516L221.207 162.453H221.197V162.448ZM225.793 162.448L226.729 160.505L228.962 161.522L225.793 162.459V162.448Z",fill:"#233447",stroke:"#233447",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M217.602 168.47L218.156 163.933L214.647 164.035L217.602 168.47V168.47ZM228.844 163.933L229.377 168.47L232.353 164.035L228.844 163.933V163.933ZM231.503 158.939L225.217 159.23L225.793 162.459L226.729 160.505L228.962 161.522L231.503 158.939V158.939ZM218.054 161.533L220.282 160.516L221.207 162.453L221.794 159.224L215.508 158.944L218.059 161.538L218.054 161.533Z",fill:"#CC6228",stroke:"#CC6228",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M215.503 158.939L218.134 164.078L218.048 161.528L215.497 158.934L215.503 158.939ZM228.962 161.533L228.86 164.084L231.492 158.944L228.957 161.538L228.962 161.533ZM221.794 159.23L221.196 162.459L221.945 166.263L222.117 161.242L221.794 159.23ZM225.211 159.23L224.904 161.237L225.055 166.269L225.792 162.453L225.206 159.224V159.235L225.211 159.23Z",fill:"#E27525",stroke:"#E27525",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M225.793 162.448L225.055 166.263L225.588 166.635L228.86 164.084L228.962 161.528L225.793 162.448V162.448ZM218.054 161.528L218.14 164.078L221.417 166.629L221.945 166.263L221.207 162.448L218.048 161.528H218.059H218.054Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M225.868 170.144L225.895 169.1L225.604 168.863H221.39L221.11 169.1L221.137 170.144L217.602 168.47L218.845 169.487L221.353 171.215H225.642L228.155 169.482L229.377 168.47L225.857 170.144H225.868V170.144Z",fill:"#C0AC9D",stroke:"#C0AC9D",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M225.588 166.63L225.055 166.264H221.945L221.417 166.635L221.11 169.1L221.39 168.863H225.604L225.895 169.1L225.588 166.635V166.624V166.63Z",fill:"#161616",stroke:"#161616",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M236.846 153.585L237.783 149.037L236.373 144.791L225.583 152.777L229.737 156.27L235.598 157.976L236.889 156.475L236.33 156.066L237.223 155.248L236.545 154.72L237.438 154.042L236.846 153.585H236.857H236.846ZM209.217 149.032L210.17 153.585L209.556 154.037L210.466 154.715L209.787 155.248L210.67 156.066L210.11 156.475L211.402 157.976L217.263 156.275L221.417 152.767L210.627 144.791L209.217 149.032V149.032Z",fill:"#763E1A",stroke:"#763E1A",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("path",{d:"M235.598 157.976L229.737 156.275L231.502 158.934L228.871 164.073L232.353 164.03H237.562L235.598 157.97V157.976ZM217.263 156.27L211.402 157.976L209.448 164.035H214.658L218.14 164.079L215.508 158.939L217.273 156.27H217.263V156.27ZM225.206 159.224L225.588 152.766L227.289 148.176H219.711L221.412 152.766L221.794 159.224L221.939 161.248V166.263H225.055L225.071 161.248L225.206 159.224V159.224Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.47",strokeLinecap:"round",strokeLinejoin:"round"}),p("rect",{x:"192",y:"30",width:"50",height:"50",rx:"25",fill:"#0C5BFF"}),p("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M205 55C205 61.6274 210.373 67 217 67C223.627 67 229 61.6274 229 55C229 48.3726 223.627 43 217 43C210.373 43 205 48.3726 205 55ZM213.933 51.1333C213.491 51.1333 213.133 51.4915 213.133 51.9333V58.0667C213.133 58.5085 213.491 58.8667 213.933 58.8667H220.067C220.508 58.8667 220.867 58.5085 220.867 58.0667V51.9333C220.867 51.4915 220.508 51.1333 220.067 51.1333H213.933Z",fill:"white"}),p("rect",{x:"39.5",y:"18",width:"50",height:"50",rx:"25",fill:"url(#paint0_linear_428_81)"}),p("path",{d:"M77.3677 42.8335H74.102C74.102 36.2519 68.6881 30.9167 62.0091 30.9167C55.4129 30.9167 50.0501 36.1213 49.9189 42.5901C49.7831 49.2769 56.1492 55.0834 62.9357 55.0834H63.7893C69.7724 55.0834 77.7916 50.468 79.0445 44.8444C79.2758 43.8079 78.445 42.8335 77.3677 42.8335ZM57.1562 43.1267C57.1562 44.0068 56.4257 44.7267 55.5325 44.7267C54.6394 44.7267 53.9089 44.0065 53.9089 43.1267V40.5383C53.9089 39.6582 54.6394 38.9383 55.5325 38.9383C56.4257 38.9383 57.1562 39.6582 57.1562 40.5383V43.1267ZM62.794 43.1267C62.794 44.0068 62.0636 44.7267 61.1705 44.7267C60.2773 44.7267 59.5468 44.0065 59.5468 43.1267V40.5383C59.5468 39.6582 60.2776 38.9383 61.1705 38.9383C62.0636 38.9383 62.794 39.6582 62.794 40.5383V43.1267Z",fill:"url(#paint1_linear_428_81)"}),p("rect",{x:"46.5",y:"124",width:"50",height:"50",rx:"25",fill:"#141414"}),p("g",{clipPath:"url(#clip0_428_81)",children:p("path",{d:"M62.1497 143.578C67.3134 138.585 75.6867 138.585 80.8505 143.578L81.4722 144.179C81.5335 144.238 81.5822 144.308 81.6155 144.386C81.6488 144.463 81.666 144.547 81.666 144.631C81.666 144.715 81.6488 144.799 81.6155 144.876C81.5822 144.954 81.5335 145.024 81.4722 145.083L79.3462 147.139C79.2835 147.199 79.1996 147.232 79.1123 147.232C79.025 147.232 78.9411 147.199 78.8784 147.139L78.0232 146.311C74.421 142.829 68.58 142.829 64.977 146.311L64.0611 147.197C63.9984 147.257 63.9145 147.29 63.8272 147.29C63.7399 147.29 63.656 147.257 63.5933 147.197L61.4672 145.141C61.4059 145.083 61.3572 145.012 61.3239 144.935C61.2906 144.857 61.2735 144.774 61.2735 144.689C61.2735 144.605 61.2906 144.521 61.3239 144.444C61.3572 144.366 61.4059 144.296 61.4672 144.237L62.1497 143.578ZM85.248 147.829L87.1397 149.659C87.201 149.718 87.2497 149.788 87.283 149.865C87.3163 149.943 87.3334 150.027 87.3334 150.111C87.3334 150.195 87.3163 150.279 87.283 150.356C87.2497 150.434 87.201 150.504 87.1397 150.563L78.6081 158.812C78.4828 158.933 78.315 159 78.1403 159C77.9656 159 77.7978 158.933 77.6725 158.812L71.6177 152.957C71.5864 152.927 71.5443 152.91 71.5005 152.91C71.4567 152.91 71.4147 152.927 71.3833 152.957L65.3285 158.812C65.2032 158.933 65.0354 159 64.8607 159C64.686 159 64.5182 158.933 64.3929 158.812L55.8605 150.563C55.7992 150.504 55.7505 150.434 55.7172 150.356C55.6839 150.279 55.6667 150.195 55.6667 150.111C55.6667 150.027 55.6839 149.943 55.7172 149.865C55.7505 149.788 55.7992 149.718 55.8605 149.659L57.7531 147.829C57.8783 147.709 58.0459 147.642 58.2204 147.642C58.3949 147.642 58.5625 147.709 58.6878 147.829L64.7427 153.684C64.774 153.714 64.816 153.731 64.8598 153.731C64.9036 153.731 64.9457 153.714 64.977 153.684L71.0319 147.829C71.1572 147.709 71.325 147.641 71.4997 147.641C71.6743 147.641 71.8422 147.709 71.9675 147.829L78.0232 153.684C78.0545 153.714 78.0965 153.731 78.1403 153.731C78.1841 153.731 78.2262 153.714 78.2575 153.684L84.3124 147.829C84.4377 147.709 84.6055 147.641 84.7802 147.641C84.9549 147.641 85.1227 147.709 85.248 147.829Z",fill:"white"})}),p("rect",{x:"103.5",y:"58",width:"78",height:"78",rx:"39",fill:"white"}),p("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M131.626 83.0058C128.674 83.3405 126.5 85.8652 126.5 88.8363V92.0779V103.277V105.099C126.5 108.098 128.713 110.636 131.695 110.952C134.982 111.301 139.216 111.667 142.5 111.667C147.147 111.667 153.695 110.934 156.773 110.555C157.765 110.433 158.5 109.588 158.5 108.589V92.0779C158.5 91.0782 157.765 90.2337 156.773 90.1115C153.705 89.7336 147.189 89.0046 142.545 88.9999L142.5 88.9999L142.46 88.9999C139.655 89.0025 136.165 89.2695 133.166 89.564C132.488 89.5642 131.907 89.0495 131.84 88.3608C131.768 87.6279 132.304 86.9755 133.037 86.9036C136.061 86.6067 139.621 86.3333 142.5 86.3333C145.707 86.3333 149.764 86.6728 152.989 87.007C154.039 87.1159 155.006 87.2247 155.833 87.3221V85.3898C155.833 84.3995 155.112 83.56 154.131 83.4288C151.262 83.0454 145.367 82.3333 141.167 82.3333C138.276 82.3333 134.583 82.6705 131.626 83.0058ZM153.833 102.333C154.938 102.333 155.833 101.438 155.833 100.333C155.833 99.2287 154.938 98.3333 153.833 98.3333C152.729 98.3333 151.833 99.2287 151.833 100.333C151.833 101.438 152.729 102.333 153.833 102.333Z",fill:"#696FFD"}),p("rect",{x:"103.5",y:"58",width:"78",height:"78",rx:"39",stroke:"#E1E7EF",strokeWidth:"2"}),p("path",{d:"M269.405 111C278.27 111 285.457 103.837 285.457 95C285.457 86.1634 278.27 79 269.405 79C260.54 79 253.354 86.1634 253.354 95C253.354 103.837 260.54 111 269.405 111Z",fill:"#B9BBFE"}),p("path",{d:"M133.971 24C140.62 24 146.01 18.6274 146.01 12C146.01 5.37258 140.62 0 133.971 0C127.322 0 121.932 5.37258 121.932 12C121.932 18.6274 127.322 24 133.971 24Z",fill:"#B9BBFE"}),p("path",{d:"M15.5917 112C20.5782 112 24.6206 107.971 24.6206 103C24.6206 98.0294 20.5782 94 15.5917 94C10.6051 94 6.56274 98.0294 6.56274 103C6.56274 107.971 10.6051 112 15.5917 112Z",fill:"#B9BBFE"}),p("path",{d:"M152.029 177C157.57 177 162.061 172.523 162.061 167C162.061 161.477 157.57 157 152.029 157C146.488 157 141.997 161.477 141.997 167C141.997 172.523 146.488 177 152.029 177Z",fill:"#E9E9FF"}),p("path",{d:"M263.386 21C267.818 21 271.412 17.4183 271.412 13C271.412 8.58172 267.818 5 263.386 5C258.953 5 255.36 8.58172 255.36 13C255.36 17.4183 258.953 21 263.386 21Z",fill:"#E9E9FF"}),p("path",{d:"M7.06436 36C10.6658 36 13.5853 33.0899 13.5853 29.5C13.5853 25.9101 10.6658 23 7.06436 23C3.46296 23 0.543457 25.9101 0.543457 29.5C0.543457 33.0899 3.46296 36 7.06436 36Z",fill:"#E9E9FF"}),n2("defs",{children:[n2("linearGradient",{id:"paint0_linear_428_81",x1:"64.5",y1:"18",x2:"64.5",y2:"68",gradientUnits:"userSpaceOnUse",children:[p("stop",{stopColor:"#534BB1"}),p("stop",{offset:"1",stopColor:"#551BF9"})]}),n2("linearGradient",{id:"paint1_linear_428_81",x1:"64.5",y1:"30.9167",x2:"64.5",y2:"55.0834",gradientUnits:"userSpaceOnUse",children:[p("stop",{stopColor:"white"}),p("stop",{offset:"1",stopColor:"white",stopOpacity:"0.82"})]}),p("clipPath",{id:"clip0_428_81",children:p("rect",{width:"31.6667",height:"19.1667",fill:"white",transform:"translate(55.6667 139.833)"})})]})]});import*as i1 from"react-device-detect";import{Fragment as $2,jsx as c,jsxs as P}from"react/jsx-runtime";var q2=()=>{let{navigate:i}=f(),e="https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn?hl=en";return i1.isFirefox&&(e="https://addons.mozilla.org/en-US/firefox/addon/ether-metamask/"),P(M3,{children:[P(g3,{children:[c("h3",{children:"Create a wallet with Metamask"}),c(o1,{style:{width:"152px",height:"152px"}})]}),P(z2,{children:[c(y1,{children:P("div",{children:[c("span",{children:"Install the "}),c("a",{href:e,target:"_blank",children:"MetaMask browser extension"})]})}),c(r2,{}),c(y1,{children:"Set up your first wallet"})]}),c(w3,{onClick:()=>i("LANDING"),children:"Done! I have my wallet"})]})},K2=()=>{let{navigate:i}=f();return P(M3,{children:[P(g3,{children:[c("h3",{children:"Create a wallet with Coinbase"}),c(p3,{style:{width:"152px",height:"152px"}})]}),P(z2,{children:[c(y1,{children:"Open the camera on your phone"}),c(r2,{}),c(y1,{children:"Scan the QR code with your camera"}),c(r2,{}),c(y1,{children:"Click the link and download the app"})]}),c(w3,{onClick:()=>i("LANDING"),children:"Done! I have my wallet"})]})},k3=()=>{let[i,e]=m6("WHAT_IS_A_WALLET"),{navigateBack:a}=f();return P($2,{children:[c(v,{backFn:i==="WHAT_IS_A_WALLET"?a:i==="PICK_A_NEW_WALLET"?()=>e("WHAT_IS_A_WALLET"):()=>e("PICK_A_NEW_WALLET")},"header"),P(b6,{children:[i==="WHAT_IS_A_WALLET"&&P($2,{children:[c(j1,{children:c(u3,{style:{width:"100%",height:"auto",borderRadius:"var(--border-radius-sm)"}})}),P(k6,{children:[c("h3",{children:"What is a wallet?"}),c("p",{children:"Wallets are how you can store, send, and receive cryptocurrencies and NFTs. They are also a new way\xA0to\xA0log\xA0in."}),c("p",{children:"Instead of creating new accounts and passwords every time you explore crypto apps, you can just connect\xA0your\xA0wallet."})]}),c(w6,{children:c(y6,{onClick:()=>{e("PICK_A_NEW_WALLET")},children:"Get a Wallet"})})]}),i==="PICK_A_NEW_WALLET"&&c($2,{children:P(M6,{children:[P("div",{children:[c("h3",{children:"Create a new wallet"}),c("p",{children:"Select one the wallet providers below to get started on your web3 adventure."})]}),P(g6,{children:[P(m3,{onClick:()=>{i1.isIOS?window.location.href="https://apps.apple.com/us/app/metamask-blockchain-wallet/id1438144202":i1.isAndroid?window.location.href="https://play.google.com/store/apps/details?id=io.metamask":e("CREATE_METAMASK_WALLET")},children:[c(o1,{}),c(b3,{children:c("h4",{children:"MetaMask"})}),c("div",{children:c("span",{children:"Set up"})})]}),P(m3,{onClick:()=>{i1.isIOS?window.location.href="https://apps.apple.com/us/app/coinbase-wallet-nfts-crypto/id1278383455":i1.isAndroid?window.location.href="https://play.google.com/store/apps/details?id=org.toshi":e("CREATE_COINBASE_WALLET")},children:[c(b1,{}),c(b3,{children:c("h4",{children:"Coinbase Wallet"})}),c("div",{children:c("span",{children:"Set up"})})]})]})]})}),i==="CREATE_COINBASE_WALLET"&&c(K2,{}),i==="CREATE_METAMASK_WALLET"&&c(q2,{})]}),P(J,{children:[c("span",{children:"Still not sure? "}),c("a",{target:"_blank",href:"https://join.tell.ie/blog/explaining-web3-wallets",children:"Learn more"})]})]})},b6=B.div`
|
|
638
640
|
> svg {
|