@getpara/react-sdk 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,19 +1,19 @@
1
1
  "use client";
2
- import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@getpara/react-components";import{forwardRef as Du,useEffect as Wt,useImperativeHandle as Uu,useRef as bi,useState as Pu}from"react";import{entityToWallet as Fu,OnRampProvider as ku,OnRampAsset as fe,Network as _t,EnabledFlow as He}from"@getpara/web-sdk";import{create as Bi}from"zustand";import{persist as Hi,createJSONStorage as Gi}from"zustand/middleware";var Ve=(M=>(M.AUTH_MAIN="AUTH_MAIN",M.AUTH_MORE="AUTH_MORE",M.EX_WALLET_MORE="EX_WALLET_MORE",M.EX_WALLET_SELECTED="EX_WALLET_SELECTED",M.VERIFICATIONS="VERIFICATIONS",M.AWAITING_OAUTH="AWAITING_OAUTH",M.FARCASTER_OAUTH="FARCASTER_OAUTH",M.BIOMETRIC_CREATION="BIOMETRIC_CREATION",M.AWAITING_BIOMETRIC_CREATION="AWAITING_BIOMETRIC_CREATION",M.PASSWORD_CREATION="PASSWORD_CREATION",M.AWAITING_PASSWORD_CREATION="AWAITING_PASSWORD_CREATION",M.AWAITING_WALLET_CREATION="AWAITING_WALLET_CREATION",M.TELEGRAM_OAUTH="TELEGRAM_OAUTH",M.WALLET_CREATION_DONE="WALLET_CREATION_DONE",M.SECRET="SECRET",M.BIOMETRIC_LOGIN="BIOMETRIC_LOGIN",M.AWAITING_BIOMETRIC_LOGIN="AWAITING_BIOMETRIC_LOGIN",M.AWAITING_PASSWORD_LOGIN="AWAITING_PASSWORD_LOGIN",M.LOGIN_DONE="LOGIN_DONE",M.SETUP_2FA="SETUP_2FA",M.VERIFY_2FA="VERIFY_2FA",M.TWO_FACTOR_DONE="TWO_FACTOR_DONE",M.ADD_FUNDS_BUY="ADD_FUNDS_BUY",M.ADD_FUNDS_RECEIVE="ADD_FUNDS_RECEIVE",M.ADD_FUNDS_WITHDRAW="ADD_FUNDS_WITHDRAW",M.ADD_FUNDS_AWAITING="ADD_FUNDS_AWAITING",M.ADD_FUNDS_SUCCESS="ADD_FUNDS_SUCCESS",M.ADD_FUNDS_FAILURE="ADD_FUNDS_FAILURE",M.ACCOUNT_MAIN="ACCOUNT_MAIN",M.CHAIN_SWITCH="CHAIN_SWITCH",M))(Ve||{});var Xn=["EX_WALLET_MORE","EX_WALLET_SELECTED","VERIFICATIONS","AWAITING_OAUTH","FARCASTER_OAUTH","TELEGRAM_OAUTH","BIOMETRIC_CREATION","AWAITING_BIOMETRIC_CREATION","PASSWORD_CREATION","AWAITING_PASSWORD_CREATION","BIOMETRIC_LOGIN","AWAITING_BIOMETRIC_LOGIN","AWAITING_PASSWORD_LOGIN","AWAITING_WALLET_CREATION","AWAITING_WALLET_CREATION","WALLET_CREATION_DONE","SETUP_2FA","VERIFY_2FA","TWO_FACTOR_DONE","LOGIN_DONE"],zn=["ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW","ADD_FUNDS_AWAITING","ADD_FUNDS_SUCCESS","ADD_FUNDS_FAILURE","CHAIN_SWITCH"],Go={ACCOUNT_MAIN:void 0,ADD_FUNDS_BUY:"ACCOUNT_MAIN",ADD_FUNDS_WITHDRAW:"ACCOUNT_MAIN",ADD_FUNDS_RECEIVE:"ACCOUNT_MAIN",ADD_FUNDS_AWAITING:"ADD_FUNDS_BUY",ADD_FUNDS_SUCCESS:"ACCOUNT_MAIN",ADD_FUNDS_FAILURE:"ACCOUNT_MAIN",CHAIN_SWITCH:"ACCOUNT_MAIN"};var Vo={AUTH_MAIN:void 0,AUTH_MORE:"AUTH_MAIN",EX_WALLET_MORE:"AUTH_MAIN",EX_WALLET_SELECTED:"AUTH_MAIN",VERIFICATIONS:"AUTH_MAIN",AWAITING_OAUTH:"AUTH_MAIN",TELEGRAM_OAUTH:"AUTH_MAIN",FARCASTER_OAUTH:"AUTH_MAIN",BIOMETRIC_CREATION:"AUTH_MAIN",AWAITING_BIOMETRIC_CREATION:"BIOMETRIC_CREATION",PASSWORD_CREATION:"BIOMETRIC_CREATION",AWAITING_PASSWORD_CREATION:"BIOMETRIC_CREATION",AWAITING_WALLET_CREATION:void 0,WALLET_CREATION_DONE:void 0,SECRET:void 0,SETUP_2FA:"SECRET",VERIFY_2FA:"SETUP_2FA",TWO_FACTOR_DONE:void 0,ADD_FUNDS_BUY:"WALLET_CREATION_DONE",ADD_FUNDS_RECEIVE:"WALLET_CREATION_DONE",ADD_FUNDS_WITHDRAW:"WALLET_CREATION_DONE",ADD_FUNDS_AWAITING:"ADD_FUNDS_BUY",ADD_FUNDS_SUCCESS:void 0,ADD_FUNDS_FAILURE:void 0};var $o={AUTH_MAIN:void 0,AUTH_MORE:"AUTH_MAIN",EX_WALLET_MORE:"AUTH_MAIN",EX_WALLET_SELECTED:"AUTH_MAIN",TELEGRAM_OAUTH:"AUTH_MAIN",AWAITING_OAUTH:"AUTH_MAIN",FARCASTER_OAUTH:"AUTH_MAIN",BIOMETRIC_LOGIN:"AUTH_MAIN",AWAITING_BIOMETRIC_LOGIN:"BIOMETRIC_LOGIN",AWAITING_PASSWORD_LOGIN:"BIOMETRIC_LOGIN",AWAITING_WALLET_CREATION:void 0,WALLET_CREATION_DONE:void 0,SECRET:void 0,SETUP_2FA:void 0,VERIFY_2FA:"SETUP_2FA",TWO_FACTOR_DONE:void 0,LOGIN_DONE:void 0,ADD_FUNDS_BUY:"LOGIN_DONE",ADD_FUNDS_RECEIVE:"LOGIN_DONE",ADD_FUNDS_WITHDRAW:"LOGIN_DONE",ADD_FUNDS_AWAITING:"ADD_FUNDS_BUY",ADD_FUNDS_SUCCESS:void 0,ADD_FUNDS_FAILURE:void 0},Qn=e=>{switch(e){case"AUTH_MAIN":case"AUTH_MORE":case"EX_WALLET_MORE":case"EX_WALLET_SELECTED":case"VERIFICATIONS":return!0;default:return!1}};function ut(e){switch(e){case"BUY":return"ADD_FUNDS_BUY";case"RECEIVE":return"ADD_FUNDS_RECEIVE";case"WITHDRAW":default:return"ADD_FUNDS_WITHDRAW"}}var Lt=["PASSWORD_CREATION"];var qn=(e,t)=>({resetState:()=>e(Ko),setOnModalStepChange:o=>e({onModalStepChange:o}),setStep:o=>{let a=t().onModalStepChange,n=t().step;e({step:o}),a?.({previousStep:n,currentStep:o,canGoBack:t().hasPreviousStep()})},decrementStep:()=>{let o=t().onModalStepChange,a=t().flow==="login",n=t().flow==="account",i=t().step,l=t().webAuthURLForCreate,r=t().iFrameUrl,c=(n?Go:a?$o:Vo)[i];i==="PASSWORD_CREATION"&&r&&!l&&(c="AUTH_MAIN"),i==="EX_WALLET_SELECTED"&&e({selectedExternalWalletId:void 0,isExternalWalletConnecting:!1,externalWalletError:void 0}),c&&(e({step:c,stepDirection:-1}),o?.({previousStep:i,currentStep:c,canGoBack:t().hasPreviousStep()}))},hasPreviousStep:()=>{let o=t().flow==="login",a=t().flow==="account",n=t().step;return!!(a?Go[n]:o?$o[n]:Vo[n])},setPopupWindow:o=>{e({popupWindow:o})},setFlow:o=>e({flow:o}),isLogin:()=>t().flow==="login",isAccount:()=>t().flow==="account",setWebAuthURLForLogin:o=>e({webAuthURLForLogin:o}),setWebAuthURLForCreate:o=>e({webAuthURLForCreate:o}),setPasswordUrlForLogin:o=>e({passwordUrlForLogin:o}),setSupportedAuthMethods:o=>e({supportedAuthMethods:o}),setOnRampPurchase:o=>e(a=>({onRampPurchase:{...a.onRampPurchase||{},...o}})),setOnRampConfig:o=>e({onRampConfig:o}),setIsFullyLoggedIn:o=>e({isFullyLoggedIn:o}),setAccountAddFundTab:o=>e({accountAddFundTab:o}),setSelectedExternalWalletId:o=>e({selectedExternalWalletId:o}),setIsExternalWalletConnecting:o=>e({isExternalWalletConnecting:o}),setExternalWalletError:o=>e({externalWalletError:o}),setIsUsingMobileConnector:o=>e({isUsingMobileConnector:o}),setStepDirection:o=>e({stepDirection:o}),setFarcasterConnectUri:o=>e({farcasterConnectUri:o}),setBiometricLocationHints:o=>e({biometricLocationHints:o}),setIFrameUrl:o=>e({iFrameUrl:o}),setIsIFrameReady:o=>e({isIFrameReady:o})});var Ko={flow:void 0,stepDirection:1,webAuthURLForLogin:void 0,webAuthURLForCreate:void 0,passwordUrlForLogin:void 0,supportedAuthMethods:new Set,onModalStepChange:void 0,onRampPurchase:void 0,popupWindow:void 0,isFullyLoggedIn:!1,accountAddFundTab:void 0,isExternalWalletConnecting:!1,externalWalletError:void 0,activeWallet:[void 0,void 0],farcasterConnectUri:void 0,biometricLocationHints:void 0,iFrameUrl:void 0,isIFrameReady:void 0},s=Bi()(Hi((e,t)=>({step:"AUTH_MAIN",onRampConfig:void 0,activeWallet:void 0,...Ko,...qn(e,t)}),{version:1,name:"@PARA/modalState",storage:Gi(()=>localStorage),partialize:e=>({step:e.step,webAuthURLForLogin:e.webAuthURLForLogin,webAuthURLForCreate:e.webAuthURLForCreate,passwordUrlForLogin:e.passwordUrlForLogin,biometricLocationHints:e.biometricLocationHints,onRampPurchase:e.onRampPurchase,selectedExternalWalletId:e.selectedExternalWalletId,isUsingMobileConnector:e.isUsingMobileConnector,supportedAuthMethods:e.supportedAuthMethods})}));import{create as $i}from"zustand";import{extractAuthInfo as Vi}from"@getpara/user-management-client";var Zn=(e,t)=>({resetState:()=>{e(Yo)},setAuthInfo:({pfpUrl:o,displayName:a,...n})=>{e({auth:n,pfpUrl:o||null,displayName:a||null})},getAuthInfo:()=>{try{return t().auth?{...Vi(t().auth,{isRequired:!0}),pfpUrl:t().pfpUrl,displayName:t().displayName}:null}catch{return null}},setRecoveryShare:o=>{e({recoveryShare:o})}});var Yo={auth:null,recoveryShare:null,pfpUrl:null,displayName:null},V=$i((e,t)=>({...Yo,...Zn(e,t)}));import{create as Ki}from"zustand";var Jn=(e,t)=>({updateState:o=>{e(o)},getLogo:()=>t().logo??void 0,setAuthLayout:o=>{let a=[],n=[];o.map(i=>{let l=i.split(":")[0];a.includes(l)?console.warn(`${i} is a duplicate ${l} layout type. Please remove the duplicate type from your config.`):(n.push(i),a.push(l))}),e({authLayout:n})}});var jn=(n=>(n.AUTH_FULL="AUTH:FULL",n.AUTH_CONDENSED="AUTH:CONDENSED",n.EXTERNAL_FULL="EXTERNAL:FULL",n.EXTERNAL_CONDENSED="EXTERNAL:CONDENSED",n))(jn||{});var Yi={isDark:!1,logo:void 0,appName:void 0,bareModal:!1,embeddedModal:!1,oAuthLogoVariant:void 0,authLayout:["AUTH:FULL","EXTERNAL:FULL"],hideWallets:!1},_=Ki((e,t)=>({...Yi,...Jn(e,t)}));import{styled as ct}from"styled-components";import{CpslAlert as lu,CpslIcon as cu}from"@getpara/react-components";import{CpslCodeInput as os,CpslSpinner as ns,CpslText as rs}from"@getpara/react-components";import{useEffect as Xo,useRef as as,useState as Ct}from"react";import{styled as Qo}from"styled-components";import{CpslIcon as Xi,CpslInput as zi,CpslText as Qi,CpslTileButton as qi}from"@getpara/react-components";import{styled as Ae}from"styled-components";var er=Ae.div`
2
+ import{CpslAuthModal as im,defineCustomElements as sm,generateTheme as lm}from"@getpara/react-components";import{forwardRef as Fu,useEffect as yt,useImperativeHandle as ku,useState as Bu}from"react";import{entityToWallet as Hu,OnRampProvider as Gu,OnRampAsset as ue,Network as xt,EnabledFlow as Fe}from"@getpara/web-sdk";import{create as Vi}from"zustand";import{persist as $i,createJSONStorage as Ki}from"zustand/middleware";var Be=(_=>(_.AUTH_MAIN="AUTH_MAIN",_.AUTH_MORE="AUTH_MORE",_.EX_WALLET_MORE="EX_WALLET_MORE",_.EX_WALLET_SELECTED="EX_WALLET_SELECTED",_.VERIFICATIONS="VERIFICATIONS",_.AWAITING_OAUTH="AWAITING_OAUTH",_.FARCASTER_OAUTH="FARCASTER_OAUTH",_.BIOMETRIC_CREATION="BIOMETRIC_CREATION",_.AWAITING_BIOMETRIC_CREATION="AWAITING_BIOMETRIC_CREATION",_.PASSWORD_CREATION="PASSWORD_CREATION",_.AWAITING_PASSWORD_CREATION="AWAITING_PASSWORD_CREATION",_.AWAITING_WALLET_CREATION="AWAITING_WALLET_CREATION",_.TELEGRAM_OAUTH="TELEGRAM_OAUTH",_.WALLET_CREATION_DONE="WALLET_CREATION_DONE",_.SECRET="SECRET",_.BIOMETRIC_LOGIN="BIOMETRIC_LOGIN",_.AWAITING_BIOMETRIC_LOGIN="AWAITING_BIOMETRIC_LOGIN",_.AWAITING_PASSWORD_LOGIN="AWAITING_PASSWORD_LOGIN",_.LOGIN_DONE="LOGIN_DONE",_.SETUP_2FA="SETUP_2FA",_.VERIFY_2FA="VERIFY_2FA",_.TWO_FACTOR_DONE="TWO_FACTOR_DONE",_.ADD_FUNDS_BUY="ADD_FUNDS_BUY",_.ADD_FUNDS_RECEIVE="ADD_FUNDS_RECEIVE",_.ADD_FUNDS_WITHDRAW="ADD_FUNDS_WITHDRAW",_.ADD_FUNDS_AWAITING="ADD_FUNDS_AWAITING",_.ADD_FUNDS_SUCCESS="ADD_FUNDS_SUCCESS",_.ADD_FUNDS_FAILURE="ADD_FUNDS_FAILURE",_.ACCOUNT_MAIN="ACCOUNT_MAIN",_.CHAIN_SWITCH="CHAIN_SWITCH",_))(Be||{});var zn=["EX_WALLET_MORE","EX_WALLET_SELECTED","VERIFICATIONS","AWAITING_OAUTH","FARCASTER_OAUTH","TELEGRAM_OAUTH","BIOMETRIC_CREATION","AWAITING_BIOMETRIC_CREATION","PASSWORD_CREATION","AWAITING_PASSWORD_CREATION","BIOMETRIC_LOGIN","AWAITING_BIOMETRIC_LOGIN","AWAITING_PASSWORD_LOGIN","AWAITING_WALLET_CREATION","AWAITING_WALLET_CREATION","WALLET_CREATION_DONE","SETUP_2FA","VERIFY_2FA","TWO_FACTOR_DONE","LOGIN_DONE"],Qn=["ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW","ADD_FUNDS_AWAITING","ADD_FUNDS_SUCCESS","ADD_FUNDS_FAILURE","CHAIN_SWITCH"],Bo={ACCOUNT_MAIN:void 0,ADD_FUNDS_BUY:"ACCOUNT_MAIN",ADD_FUNDS_WITHDRAW:"ACCOUNT_MAIN",ADD_FUNDS_RECEIVE:"ACCOUNT_MAIN",ADD_FUNDS_AWAITING:"ADD_FUNDS_BUY",ADD_FUNDS_SUCCESS:"ACCOUNT_MAIN",ADD_FUNDS_FAILURE:"ACCOUNT_MAIN",CHAIN_SWITCH:"ACCOUNT_MAIN"};var Ho={AUTH_MAIN:void 0,AUTH_MORE:"AUTH_MAIN",EX_WALLET_MORE:"AUTH_MAIN",EX_WALLET_SELECTED:"AUTH_MAIN",VERIFICATIONS:"AUTH_MAIN",AWAITING_OAUTH:"AUTH_MAIN",TELEGRAM_OAUTH:"AUTH_MAIN",FARCASTER_OAUTH:"AUTH_MAIN",BIOMETRIC_CREATION:"AUTH_MAIN",AWAITING_BIOMETRIC_CREATION:"BIOMETRIC_CREATION",PASSWORD_CREATION:"BIOMETRIC_CREATION",AWAITING_PASSWORD_CREATION:"BIOMETRIC_CREATION",AWAITING_WALLET_CREATION:void 0,WALLET_CREATION_DONE:void 0,SECRET:void 0,SETUP_2FA:"SECRET",VERIFY_2FA:"SETUP_2FA",TWO_FACTOR_DONE:void 0,ADD_FUNDS_BUY:"WALLET_CREATION_DONE",ADD_FUNDS_RECEIVE:"WALLET_CREATION_DONE",ADD_FUNDS_WITHDRAW:"WALLET_CREATION_DONE",ADD_FUNDS_AWAITING:"ADD_FUNDS_BUY",ADD_FUNDS_SUCCESS:void 0,ADD_FUNDS_FAILURE:void 0};var Go={AUTH_MAIN:void 0,AUTH_MORE:"AUTH_MAIN",EX_WALLET_MORE:"AUTH_MAIN",EX_WALLET_SELECTED:"AUTH_MAIN",TELEGRAM_OAUTH:"AUTH_MAIN",AWAITING_OAUTH:"AUTH_MAIN",FARCASTER_OAUTH:"AUTH_MAIN",BIOMETRIC_LOGIN:"AUTH_MAIN",AWAITING_BIOMETRIC_LOGIN:"BIOMETRIC_LOGIN",AWAITING_PASSWORD_LOGIN:"BIOMETRIC_LOGIN",AWAITING_WALLET_CREATION:void 0,WALLET_CREATION_DONE:void 0,SECRET:void 0,SETUP_2FA:void 0,VERIFY_2FA:"SETUP_2FA",TWO_FACTOR_DONE:void 0,LOGIN_DONE:void 0,ADD_FUNDS_BUY:"LOGIN_DONE",ADD_FUNDS_RECEIVE:"LOGIN_DONE",ADD_FUNDS_WITHDRAW:"LOGIN_DONE",ADD_FUNDS_AWAITING:"ADD_FUNDS_BUY",ADD_FUNDS_SUCCESS:void 0,ADD_FUNDS_FAILURE:void 0},qn=e=>{switch(e){case"AUTH_MAIN":case"AUTH_MORE":case"EX_WALLET_MORE":case"EX_WALLET_SELECTED":case"VERIFICATIONS":return!0;default:return!1}};function ct(e){switch(e){case"BUY":return"ADD_FUNDS_BUY";case"RECEIVE":return"ADD_FUNDS_RECEIVE";case"WITHDRAW":default:return"ADD_FUNDS_WITHDRAW"}}var _t=["PASSWORD_CREATION"];var Zn=(e,t)=>({resetState:()=>e(Vo),setOnModalStepChange:o=>e({onModalStepChange:o}),setStep:o=>{let a=t().onModalStepChange,n=t().step;e({step:o}),a?.({previousStep:n,currentStep:o,canGoBack:t().hasPreviousStep()})},decrementStep:()=>{let o=t().onModalStepChange,a=t().flow==="login",n=t().flow==="account",r=t().step,s=t().webAuthURLForCreate,l=t().iFrameUrl,c=t().refs,d=(n?Bo:a?Go:Ho)[r];r==="PASSWORD_CREATION"&&l&&!s&&(d="AUTH_MAIN"),r==="EX_WALLET_SELECTED"&&e({selectedExternalWalletId:void 0,isExternalWalletConnecting:!1,externalWalletError:void 0}),d&&(e({step:d,stepDirection:-1}),o?.({previousStep:r,currentStep:d,canGoBack:t().hasPreviousStep()})),c.popupWindow.current?.close(),c.popupWindow.current=void 0},hasPreviousStep:()=>{let o=t().flow==="login",a=t().flow==="account",n=t().step;return!!(a?Bo[n]:o?Go[n]:Ho[n])},setFlow:o=>e({flow:o}),isLogin:()=>t().flow==="login",isAccount:()=>t().flow==="account",setWebAuthURLForLogin:o=>e({webAuthURLForLogin:o}),setWebAuthURLForCreate:o=>e({webAuthURLForCreate:o}),setPasswordUrlForLogin:o=>e({passwordUrlForLogin:o}),setSupportedAuthMethods:o=>e({supportedAuthMethods:o}),setOnRampPurchase:o=>e(a=>({onRampPurchase:{...a.onRampPurchase||{},...o}})),setOnRampConfig:o=>e({onRampConfig:o}),setIsFullyLoggedIn:o=>e({isFullyLoggedIn:o}),setAccountAddFundTab:o=>e({accountAddFundTab:o}),setSelectedExternalWalletId:o=>e({selectedExternalWalletId:o}),setIsExternalWalletConnecting:o=>e({isExternalWalletConnecting:o}),setExternalWalletError:o=>e({externalWalletError:o}),setIsUsingMobileConnector:o=>e({isUsingMobileConnector:o}),setStepDirection:o=>e({stepDirection:o}),setFarcasterConnectUri:o=>e({farcasterConnectUri:o}),setBiometricLocationHints:o=>e({biometricLocationHints:o}),setIFrameUrl:o=>e({iFrameUrl:o}),setIsIFrameReady:o=>e({isIFrameReady:o})});import{createRef as $o}from"react";var Vo={flow:void 0,stepDirection:1,webAuthURLForLogin:void 0,webAuthURLForCreate:void 0,passwordUrlForLogin:void 0,supportedAuthMethods:new Set,onModalStepChange:void 0,onRampPurchase:void 0,isFullyLoggedIn:!1,accountAddFundTab:void 0,isExternalWalletConnecting:!1,externalWalletError:void 0,activeWallet:[void 0,void 0],farcasterConnectUri:void 0,biometricLocationHints:void 0,iFrameUrl:void 0,isIFrameReady:void 0,refs:{popupWindow:$o(),poll:$o(),currentStep:$o()}},i=Vi()($i((e,t)=>({step:"AUTH_MAIN",onRampConfig:void 0,activeWallet:void 0,...Vo,...Zn(e,t)}),{version:1,name:"@PARA/modalState",storage:Ki(()=>localStorage),partialize:e=>({step:e.step,webAuthURLForLogin:e.webAuthURLForLogin,webAuthURLForCreate:e.webAuthURLForCreate,passwordUrlForLogin:e.passwordUrlForLogin,biometricLocationHints:e.biometricLocationHints,onRampPurchase:e.onRampPurchase,selectedExternalWalletId:e.selectedExternalWalletId,isUsingMobileConnector:e.isUsingMobileConnector,supportedAuthMethods:e.supportedAuthMethods})}));import{create as Xi}from"zustand";import{extractAuthInfo as Yi}from"@getpara/user-management-client";var Jn=(e,t)=>({resetState:()=>{e(Ko)},setAuthInfo:({pfpUrl:o,displayName:a,...n})=>{e({auth:n,pfpUrl:o||null,displayName:a||null})},getAuthInfo:()=>{try{return t().auth?{...Yi(t().auth,{isRequired:!0}),pfpUrl:t().pfpUrl,displayName:t().displayName}:null}catch{return null}},setRecoveryShare:o=>{e({recoveryShare:o})}});var Ko={auth:null,recoveryShare:null,pfpUrl:null,displayName:null},K=Xi((e,t)=>({...Ko,...Jn(e,t)}));import{create as zi}from"zustand";var jn=(e,t)=>({updateState:o=>{e(o)},getLogo:()=>t().logo??void 0,setAuthLayout:o=>{let a=[],n=[];o.map(r=>{let s=r.split(":")[0];a.includes(s)?console.warn(`${r} is a duplicate ${s} layout type. Please remove the duplicate type from your config.`):(n.push(r),a.push(s))}),e({authLayout:n})}});var er=(n=>(n.AUTH_FULL="AUTH:FULL",n.AUTH_CONDENSED="AUTH:CONDENSED",n.EXTERNAL_FULL="EXTERNAL:FULL",n.EXTERNAL_CONDENSED="EXTERNAL:CONDENSED",n))(er||{});var Qi={isDark:!1,logo:void 0,appName:void 0,bareModal:!1,embeddedModal:!1,oAuthLogoVariant:void 0,authLayout:["AUTH:FULL","EXTERNAL:FULL"],hideWallets:!1},w=zi((e,t)=>({...Qi,...jn(e,t)}));import{styled as st}from"styled-components";import{CpslAlert as du,CpslIcon as uu}from"@getpara/react-components";import{CpslCodeInput as as,CpslSpinner as is,CpslText as ss}from"@getpara/react-components";import{useEffect as Yo,useRef as ls,useState as dt}from"react";import{styled as zo}from"styled-components";import{CpslIcon as qi,CpslInput as Zi,CpslText as Ji,CpslTileButton as ji}from"@getpara/react-components";import{styled as fe}from"styled-components";var tr=fe.div`
3
3
  display: flex;
4
4
  align-items: center;
5
5
  justify-content: center;
6
- `,Se=Ae.div`
6
+ `,Ae=fe.div`
7
7
  display: flex;
8
8
  justify-content: center;
9
9
  align-items: center;
10
10
  width: 286px;
11
11
  height: 286px;
12
- `,tr=Ae.div`
12
+ `,or=fe.div`
13
13
  display: flex;
14
14
  flex-direction: column;
15
15
  gap: 8px;
16
- `,or=Ae.div`
16
+ `,nr=fe.div`
17
17
  display: flex;
18
18
  align-items: center;
19
19
  gap: 4px;
@@ -22,18 +22,18 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
22
22
  --height: 20px;
23
23
  --width: 20px;
24
24
  }
25
- `,Mt=Ae(zi)`
25
+ `,Rt=fe(Zi)`
26
26
  --container-border-color: var(--cpsl-color-input-border-placeholder);
27
27
  --container-background-color: var(--cpsl-color-background-0);
28
28
  --input-background-color: transparent;
29
29
  --input-font-weight: 500;
30
30
  --input-color: var(--cpsl-color-text-secondary);
31
- `,km=Ae(Mt)`
31
+ `,$m=fe(Rt)`
32
32
  width: 100%;
33
- `,ie=Ae(Qi)`
33
+ `,ae=fe(Ji)`
34
34
  width: 100%;
35
35
  text-align: center;
36
- `,O=Ae.div`
36
+ `,O=fe.div`
37
37
  width: 100%;
38
38
  height: 100%;
39
39
  align-self: center;
@@ -41,39 +41,39 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
41
41
  flex-direction: column;
42
42
  align-items: center;
43
43
  gap: 8px;
44
- `,F=Ae(O)`
44
+ `,P=fe(O)`
45
45
  gap: ${({$wide:e})=>e?"32px":"24px"};
46
- `,X=Ae(ie)``,$e=Ae(qi)`
46
+ `,X=fe(ae)``,He=fe(ji)`
47
47
  --button-width: 100%;
48
48
  --button-height: 87px;
49
49
  --button-icon-height: 32px;
50
50
  --button-icon-width: 32px;
51
- `,Ke=Ae(Xi)`
51
+ `,Ge=fe(qi)`
52
52
  --height: 80px;
53
53
  --width: 80px;
54
54
  --icon-color: var(--cpsl-color-text-primary);
55
- `;import{AuthMethod as zo}from"@getpara/core-sdk";import{createStore as Zi,useStore as Ji}from"zustand";var nr=e=>({client:void 0,setClient:t=>e({client:t})});var rr=e=>({isOpen:!1,setIsOpen:t=>e({isOpen:t})});var ar=e=>({selectedWalletId:void 0,selectedWalletType:void 0,setSelectedWallet:(t,o)=>e({selectedWalletId:t,selectedWalletType:o}),clearSelectedWallet:()=>e({selectedWalletId:void 0,selectedWalletType:void 0})});import{createJSONStorage as ji,persist as es}from"zustand/middleware";var mt=Zi()(es((...e)=>({...nr(...e),...rr(...e),...ar(...e)}),{version:1,name:"@PARA/web-state",storage:ji(()=>localStorage),partialize:e=>({selectedWalletId:e.selectedWalletId,selectedWalletType:e.selectedWalletType})})),ts=e=>t=>Ji(e,t),Z=ts(mt);var b=()=>Z(t=>t.client);import{Fragment as ls,jsx as At,jsxs as ft}from"react/jsx-runtime";var ir=()=>{let e=_(g=>g.theme),t=V(g=>g.getAuthInfo()),o=s(g=>g.setStep),a=s(g=>g.setWebAuthURLForCreate),n=s(g=>g.setIFrameUrl),i=s(g=>g.setIsIFrameReady),l=s(g=>g.isIFrameReady),r=b(),c=as(null),[p,d]=Ct(""),[u,A]=Ct(""),[m,f]=Ct("Resend."),[S,y]=Ct(!1),[D,W]=Ct(!1),[E,h]=Ct(),R=t?.authType==="email";Xo(()=>{setTimeout(()=>{c.current.shadowRoot.querySelectorAll("input")?.[0]?.focus()},10)},[]),Xo(()=>{E&&l&&setTimeout(()=>{o(E),W(!1)},200)},[E,l]),Xo(()=>{p.length===6&&T()},[p]);let C=async()=>{S||(f("Resent!"),y(!0),R?await r.resendVerificationCode():await r.resendVerificationCodeByPhone(),setTimeout(()=>{f("Resend."),y(!1)},3e3))},L=g=>{u&&A(""),d(g.detail.value.trim())},T=async()=>{if(W(!0),p.length===6&&/^\d+$/.test(p))try{let g=await r.getSupportedCreateAuthMethods();if(g.has(zo.PASSWORD)&&g.has(zo.PASSKEY)){i(!1);let U=R?await r.verifyEmail({verificationCode:p}):await r.verifyPhone({verificationCode:p}),x=await r.getSetupPasswordURL({authType:t?.authType,theme:e});a(await r.shortenLoginLink(U)),n(await r.shortenLoginLink(x)),h("BIOMETRIC_CREATION");return}else if(g.has(zo.PASSWORD)){i(!1),R?await r.verifyEmail({verificationCode:p}):await r.verifyPhone({verificationCode:p});let U=await r.getSetupPasswordURL({authType:t?.authType,theme:e});n(await r.shortenLoginLink(U)),h("PASSWORD_CREATION");return}else{let U=R?await r.verifyEmail({verificationCode:p}):await r.verifyPhone({verificationCode:p});a(await r.shortenLoginLink(U)),o("BIOMETRIC_CREATION")}}catch(g){g.message.includes("429")?A("Too many incorrect attempts. Please try again in 10 minutes."):A("Incorrect code.")}else A("Incorrect code.");W(!1)};return ft(F,{$wide:!0,children:[ft(O,{children:[ft(X,{variant:"headingS",weight:"bold",children:["Verify ",R?"Email":"Phone Number"]}),ft(Yt,{variant:"bodyS",color:"secondary",children:["Please enter the code we sent to ",At(Yt,{variant:"bodyS",children:t.identifier})]})]}),At(O,{children:D?At(ns,{}):ft(ls,{children:[At("form",{onSubmit:async g=>{g.preventDefault(),await T()},children:At(is,{ref:c,length:6,type:"number",code:p,onCpslInput:L,errorText:u,onKeyDown:async g=>g.key==="Enter"&&await T()})}),ft(Yt,{variant:"bodyS",color:"secondary",children:["Didn\u2019t receive a code?"," ",At(ss,{variant:"bodyS",style:{cursor:S?"default":"pointer"},onClick:C,children:m})]})]})})]})},is=Qo(os)`
55
+ `;import{AuthMethod as Xo}from"@getpara/core-sdk";import{createStore as es,useStore as ts}from"zustand";var rr=e=>({client:void 0,setClient:t=>e({client:t})});var ar=e=>({isOpen:!1,setIsOpen:t=>e({isOpen:t})});var ir=e=>({selectedWalletId:void 0,selectedWalletType:void 0,setSelectedWallet:(t,o)=>e({selectedWalletId:t,selectedWalletType:o}),clearSelectedWallet:()=>e({selectedWalletId:void 0,selectedWalletType:void 0})});import{createJSONStorage as os,persist as ns}from"zustand/middleware";var pt=es()(ns((...e)=>({...rr(...e),...ar(...e),...ir(...e)}),{version:1,name:"@PARA/web-state",storage:os(()=>localStorage),partialize:e=>({selectedWalletId:e.selectedWalletId,selectedWalletType:e.selectedWalletType})})),rs=e=>t=>ts(e,t),Q=rs(pt);var v=()=>Q(t=>t.client);import{Fragment as ds,jsx as mt,jsxs as ut}from"react/jsx-runtime";var sr=()=>{let e=w(y=>y.theme),t=K(y=>y.getAuthInfo()),o=i(y=>y.setStep),a=i(y=>y.setWebAuthURLForCreate),n=i(y=>y.setIFrameUrl),r=i(y=>y.setIsIFrameReady),s=i(y=>y.isIFrameReady),l=v(),c=ls(null),[d,p]=dt(""),[C,f]=dt(""),[u,A]=dt("Resend."),[S,h]=dt(!1),[U,I]=dt(!1),[b,T]=dt(),M=t?.authType==="email";Yo(()=>{setTimeout(()=>{c.current.shadowRoot.querySelectorAll("input")?.[0]?.focus()},10)},[]),Yo(()=>{b&&s&&setTimeout(()=>{o(b),I(!1)},200)},[b,s]),Yo(()=>{d.length===6&&g()},[d]);let x=async()=>{S||(A("Resent!"),h(!0),M?await l.resendVerificationCode():await l.resendVerificationCodeByPhone(),setTimeout(()=>{A("Resend."),h(!1)},3e3))},W=y=>{C&&f(""),p(y.detail.value.trim())},g=async()=>{if(I(!0),d.length===6&&/^\d+$/.test(d))try{let y=await l.getSupportedCreateAuthMethods();if(y.has(Xo.PASSWORD)&&y.has(Xo.PASSKEY)){r(!1);let D=M?await l.verifyEmail({verificationCode:d}):await l.verifyPhone({verificationCode:d}),R=await l.getSetupPasswordURL({authType:t?.authType,theme:e});a(await l.shortenLoginLink(D)),n(await l.shortenLoginLink(R)),T("BIOMETRIC_CREATION");return}else if(y.has(Xo.PASSWORD)){r(!1),M?await l.verifyEmail({verificationCode:d}):await l.verifyPhone({verificationCode:d});let D=await l.getSetupPasswordURL({authType:t?.authType,theme:e});n(await l.shortenLoginLink(D)),T("PASSWORD_CREATION");return}else{let D=M?await l.verifyEmail({verificationCode:d}):await l.verifyPhone({verificationCode:d});a(await l.shortenLoginLink(D)),o("BIOMETRIC_CREATION")}}catch(y){y.message.includes("429")?f("Too many incorrect attempts. Please try again in 10 minutes."):f("Incorrect code.")}else f("Incorrect code.");I(!1)};return ut(P,{$wide:!0,children:[ut(O,{children:[ut(X,{variant:"headingS",weight:"bold",children:["Verify ",M?"Email":"Phone Number"]}),ut($t,{variant:"bodyS",color:"secondary",children:["Please enter the code we sent to ",mt($t,{variant:"bodyS",children:t?.identifier})]})]}),mt(O,{children:U?mt(is,{}):ut(ds,{children:[mt("form",{onSubmit:async y=>{y.preventDefault(),await g()},children:mt(cs,{ref:c,length:6,type:"number",code:d,onCpslInput:W,errorText:C,onKeyDown:async y=>y.key==="Enter"&&await g()})}),ut($t,{variant:"bodyS",color:"secondary",children:["Didn\u2019t receive a code?"," ",mt(ps,{variant:"bodyS",style:{cursor:S?"default":"pointer"},onClick:x,children:u})]})]})})]})},cs=zo(as)`
56
56
  align-self: center;
57
- `,Yt=Qo(rs)`
57
+ `,$t=zo(ss)`
58
58
  text-align: center;
59
59
  display: inline-block;
60
- `,ss=Qo(Yt)`
60
+ `,ps=zo($t)`
61
61
  cursor: pointer;
62
62
  display: inline-block;
63
- `;import{CpslButton as sr,CpslDivider as ds,CpslIcon as ps}from"@getpara/react-components";import{useEffect as us,useMemo as ms,useState as Cs}from"react";function je(e,t,o){if(typeof window>"u")return;let a=560,n;switch(o){case"LOGIN_PASSWORD":{n=460;break}case"LOGIN_PASSKEY":{n=798;break}case"CREATE_PASSWORD":{n=400;break}case"CREATE_PASSKEY":{n=464;break}case"TRANSACTION_REVIEW":{n=480;break}case"OAUTH":default:{n=768;break}}let i=window.screenLeft!==void 0?window.screenLeft:window.screenX,l=window.screenTop!==void 0?window.screenTop:window.screenY,r=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:screen.width,c=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:screen.height,p=(r-a)/2+i,d=(c-n)/2+l,u=`toolbar=no, menubar=no, width=${a},
64
- height=${n}, top=${d}, left=${p}`,A=window.open(e,t,u);return A||setTimeout(()=>{A=window.open(e,"_blank")},0),A}import fs from"styled-components";import{AuthMethod as St,getPublicKeyHex as zt}from"@getpara/web-sdk";import{detect as cs}from"detect-browser";var Xt=()=>{switch(cs().os){case"linux":case"Chrome OS":return!1}return!0};import{formatBiometricHints as As,KnownDevices as Ss,UserIdentifier as Es}from"@getpara/react-common";import{Fragment as qo,jsx as Pe,jsxs as Et}from"react/jsx-runtime";var lr=()=>{let e=s(E=>E.popupWindow),t=s(E=>E.supportedAuthMethods),o=s(E=>E.passwordUrlForLogin),a=s(E=>E.webAuthURLForLogin),n=s(E=>E.setStep),i=s(E=>E.setPopupWindow),l=s(E=>E.biometricLocationHints),r=b(),c=V(E=>E.getAuthInfo()),p=s(E=>E.setWebAuthURLForLogin),d=s(E=>E.setPasswordUrlForLogin),u=Xt(),A=ms(()=>As(l),[l]),m=s(E=>E.setSupportedAuthMethods),[f,S]=Cs();us(()=>{async function E(){if(!t?.size&&r.getUserId()){let x=await r.supportedAuthMethods({userId:r.getUserId()});x?.size&&m(x);return}if(!r.isEmail&&!r.isPhone&&!r.isFarcaster&&!r.isTelegram||!r.loginEncryptionKeyPair)return;let h=r.isEmail?"email":r.isPhone?"phone":r.isFarcaster?"farcaster":"telegram",R=await r.touchSession(),C=t?.has&&t.has(St.PASSKEY)?await r.getWebAuthURLForLogin({sessionId:R.data.sessionId,loginEncryptionPublicKey:zt(r.loginEncryptionKeyPair),partnerId:R.data.partnerId,authType:h,displayName:c.displayName,pfpUrl:c.pfpUrl}):void 0,L=t?.has&&t.has(St.PASSKEY)?await r.getWebAuthURLForLogin({sessionId:R.data.sessionId,loginEncryptionPublicKey:zt(r.loginEncryptionKeyPair),partnerId:R.data.partnerId,newDeviceSessionId:R.data.sessionLookupId,newDeviceEncryptionKey:zt(r.loginEncryptionKeyPair),authType:h,displayName:c.displayName,pfpUrl:c.pfpUrl}):void 0,T=t?.has&&t.has(St.PASSWORD)?await r.getPasswordURLForLogin({sessionId:R.data.sessionId,loginEncryptionPublicKey:zt(r.loginEncryptionKeyPair),partnerId:R.data.partnerId,authType:h,displayName:c.displayName,pfpUrl:c.pfpUrl}):void 0,g=C?await r.shortenLoginLink(C):void 0,U=L?await r.shortenLoginLink(L):void 0;S(U),p(g),d(T)}E()},[t,r]);let y=()=>{if(e)return;let E=je(a,"ParaPasskey","LOGIN_PASSKEY");i(E),n("AWAITING_BIOMETRIC_LOGIN")},D=()=>{let E=je(o,"ParaPassword","LOGIN_PASSWORD");i(E),n("AWAITING_PASSWORD_LOGIN")};function W(){return!l?.length||u&&A.isOnKnownDevice||t?.has&&t.has(St.PASSWORD)}return Et(F,{$wide:!0,children:[Et(O,{children:[W()&&Pe(X,{variant:"headingS",weight:"bold",children:"Welcome back,"}),Pe(Es,{...c})]}),Et(Is,{children:[t?.has&&t.has(St.PASSWORD)&&o&&Pe(hs,{handlePasswordClick:D}),t?.has&&t.has(St.PASSKEY)&&a&&f&&Pe(Ts,{handlePasskeyClick:y,formattedHints:A,shortLoginLink:f,passkeysSupported:u,biometricLocationHints:l})]})]})},hs=({handlePasswordClick:e})=>Pe(sr,{fullWidth:!0,onClick:e,children:"Login"}),Ts=({handlePasskeyClick:e,formattedHints:t,shortLoginLink:o,passkeysSupported:a,biometricLocationHints:n=[]})=>{let[i,l]=[n.length>0,t.isOnKnownDevice];return Et(qo,{children:[(i&&!l||!a)&&Pe(Ss,{hints:t,link:o}),a&&Et(qo,{children:[i&&!l&&Pe(ds,{children:"or"}),Pe(sr,{fullWidth:!0,onClick:e,children:!i||l?Et(qo,{children:[Pe(ps,{slot:"start",icon:"key"}),"Login with passkey"]}):"Continue anyway"})]})]})},Is=fs(O)`
63
+ `;import{CpslButton as lr,CpslDivider as us,CpslIcon as ms}from"@getpara/react-components";import{useEffect as Cs,useMemo as fs,useState as As}from"react";function Ze({url:e,target:t,type:o,current:a}){if(typeof window>"u")return;a?.close();let n=560,r;switch(o){case"LOGIN_PASSWORD":{r=460;break}case"LOGIN_PASSKEY":{r=798;break}case"CREATE_PASSWORD":{r=400;break}case"CREATE_PASSKEY":{r=464;break}case"TRANSACTION_REVIEW":{r=480;break}case"OAUTH":default:{r=768;break}}let s=window.screenLeft!==void 0?window.screenLeft:window.screenX,l=window.screenTop!==void 0?window.screenTop:window.screenY,c=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:screen.width,d=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:screen.height,p=(c-n)/2+s,C=(d-r)/2+l,f=`toolbar=no, menubar=no, width=${n},
64
+ height=${r}, top=${C}, left=${p}`,u=window.open(e,t,f);return u||setTimeout(()=>{u=window.open(e,"_blank")},0),u}import Ss from"styled-components";import{AuthMethod as Ct,getPublicKeyHex as Kt,isPasskeySupported as Es}from"@getpara/web-sdk";import{formatBiometricHints as hs,KnownDevices as Ts,UserIdentifier as Is}from"@getpara/react-common";import{Fragment as Qo,jsx as be,jsxs as ft}from"react/jsx-runtime";var cr=()=>{let e=i(I=>I.refs),t=i(I=>I.supportedAuthMethods),o=i(I=>I.passwordUrlForLogin),a=i(I=>I.webAuthURLForLogin),n=i(I=>I.setStep),r=i(I=>I.biometricLocationHints),s=v(),l=K(I=>I.getAuthInfo()),c=i(I=>I.setWebAuthURLForLogin),d=i(I=>I.setPasswordUrlForLogin),p=Es(),C=fs(()=>hs(r),[r]),f=i(I=>I.setSupportedAuthMethods),[u,A]=As();Cs(()=>{async function I(){if(!t?.size&&s.getUserId()){let D=await s.supportedAuthMethods({userId:s.getUserId()});D?.size&&f(D);return}if(!s.isEmail&&!s.isPhone&&!s.isFarcaster&&!s.isTelegram||!s.loginEncryptionKeyPair)return;let b=s.isEmail?"email":s.isPhone?"phone":s.isFarcaster?"farcaster":"telegram",T=await s.touchSession(),M=t?.has&&t.has(Ct.PASSKEY)?await s.getWebAuthURLForLogin({sessionId:T.data.sessionId,loginEncryptionPublicKey:Kt(s.loginEncryptionKeyPair),partnerId:T.data.partnerId,authType:b,displayName:l.displayName,pfpUrl:l.pfpUrl}):void 0,x=t?.has&&t.has(Ct.PASSKEY)?await s.getWebAuthURLForLogin({sessionId:T.data.sessionId,loginEncryptionPublicKey:Kt(s.loginEncryptionKeyPair),partnerId:T.data.partnerId,newDeviceSessionId:T.data.sessionLookupId,newDeviceEncryptionKey:Kt(s.loginEncryptionKeyPair),authType:b,displayName:l.displayName,pfpUrl:l.pfpUrl}):void 0,W=t?.has&&t.has(Ct.PASSWORD)?await s.getPasswordURLForLogin({sessionId:T.data.sessionId,loginEncryptionPublicKey:Kt(s.loginEncryptionKeyPair),partnerId:T.data.partnerId,authType:b,displayName:l.displayName,pfpUrl:l.pfpUrl}):void 0,g=M?await s.shortenLoginLink(M):void 0,y=x?await s.shortenLoginLink(x):void 0;A(y),c(g),d(W)}I()},[t,s]);let S=()=>{e.popupWindow.current=Ze({url:a,target:"ParaPasskey",type:"LOGIN_PASSKEY",current:e.popupWindow.current}),n("AWAITING_BIOMETRIC_LOGIN")},h=()=>{e.popupWindow.current=Ze({url:o,target:"ParaPassword",type:"LOGIN_PASSWORD",current:e.popupWindow.current}),n("AWAITING_PASSWORD_LOGIN")};function U(){return!r?.length||p&&C.isOnKnownDevice||t?.has&&t.has(Ct.PASSWORD)}return ft(P,{$wide:!0,children:[ft(O,{children:[U()&&be(X,{variant:"headingS",weight:"bold",children:"Welcome back,"}),be(Is,{...l})]}),ft(xs,{children:[t?.has&&t.has(Ct.PASSWORD)&&o&&be(gs,{handlePasswordClick:h}),t?.has&&t.has(Ct.PASSKEY)&&a&&u&&be(ys,{handlePasskeyClick:S,formattedHints:C,shortLoginLink:u,passkeysSupported:p,biometricLocationHints:r})]})]})},gs=({handlePasswordClick:e})=>be(lr,{fullWidth:!0,onClick:e,children:"Login"}),ys=({handlePasskeyClick:e,formattedHints:t,shortLoginLink:o,passkeysSupported:a,biometricLocationHints:n=[]})=>{let[r,s]=[n.length>0,t.isOnKnownDevice];return ft(Qo,{children:[(r&&!s||!a)&&be(Ts,{hints:t,link:o}),a&&ft(Qo,{children:[r&&!s&&be(us,{children:"or"}),be(lr,{fullWidth:!0,onClick:e,children:!r||s?ft(Qo,{children:[be(ms,{slot:"start",icon:"key"}),"Login with passkey"]}):"Continue anyway"})]})]})},xs=Ss(O)`
65
65
  gap: 16px;
66
- `;import{CpslButton as jo,CpslCodeInput as gs,CpslDivider as ys,CpslIcon as xs,CpslQrCode as ws,CpslSpinner as cr,CpslText as dr}from"@getpara/react-components";import{useEffect as Zo,useRef as Ws,useState as Qt}from"react";import{styled as pr}from"styled-components";import{useCopyToClipboard as _s}from"@getpara/react-common";import{Fragment as Jo,jsx as oe,jsxs as Ot}from"react/jsx-runtime";var ur=({onClose:e})=>{let t=s(L=>L.isLogin()),o=s(L=>L.setStep),a=b(),n=s(L=>L.step==="VERIFY_2FA"),[i,l]=_s(),r=Ws(null),[c,p]=Qt(null),[d,u]=Qt(""),[A,m]=Qt(""),[f,S]=Qt(!1),D=(c?new URL(c).searchParams:void 0)?.get("secret");Zo(()=>{async function L(){try{let{uri:T}=await a.setup2FA();p(T)}catch(T){console.error("Error fetching OTPAuth URL:",T)}}L()},[]),Zo(()=>{setTimeout(()=>{r?.current?.shadowRoot.querySelectorAll("input")?.[0]?.focus()},10)},[n]),Zo(()=>{d.length===6&&R()},[d]);let W=()=>{o("VERIFY_2FA")},E=()=>{t?o("LOGIN_DONE"):e()},h=L=>{A&&m(""),u(L.detail.value.trim())},R=async()=>{if(S(!0),d.length===6&&/^\d+$/.test(d))try{await a.enable2FA({verificationCode:d}),o("TWO_FACTOR_DONE")}catch{m("Incorrect Code")}else m("Incorrect Code");S(!1)};return Ot(F,{children:[Ot(O,{children:[oe(X,{variant:"headingS",weight:"bold",children:"Turn on Two-Factor authentication"}),n&&oe(dr,{variant:"bodyS",color:"secondary",weight:"medium",children:"Please enter the code from your authenticator app."})]}),oe(O,{children:n?oe(Jo,{children:f?oe(cr,{}):oe("form",{onSubmit:async L=>{L.preventDefault(),await R()},children:oe(Rs,{ref:r,code:d,onCpslInput:h,errorText:A,length:6,onKeyDown:async L=>L.key==="Enter"&&await R()})})}):Ot(Jo,{children:[oe(dr,{variant:"bodyS",color:"secondary",weight:"medium",children:"Scan with your preferred authenticator app."}),oe(Se,{children:c?oe(ws,{url:c}):oe(cr,{size:100})})]})}),!n&&Ot(Jo,{children:[oe(O,{children:oe(ys,{children:"or enter the code manually"})}),oe(O,{children:oe(Mt,{disabled:!0,value:D,noAutoDisable:!0,children:oe(jo,{slot:"end",variant:"ghost",onClick:()=>{l(D)},children:oe(xs,{icon:i?"check":"copy"})})})}),Ot(O,{children:[oe(jo,{fullWidth:!0,onClick:W,children:"Continue"}),oe(Ls,{variant:"ghost",onClick:E,children:"Skip"})]})]})]})},Rs=pr(gs)`
66
+ `;import{CpslButton as Jo,CpslCodeInput as ws,CpslDivider as Ws,CpslIcon as _s,CpslQrCode as Rs,CpslSpinner as pr,CpslText as dr}from"@getpara/react-components";import{useEffect as qo,useRef as Ls,useState as Yt}from"react";import{styled as ur}from"styled-components";import{useCopyToClipboard as Ms}from"@getpara/react-common";import{Fragment as Zo,jsx as oe,jsxs as Lt}from"react/jsx-runtime";var mr=({onClose:e})=>{let t=i(W=>W.isLogin()),o=i(W=>W.setStep),a=v(),n=i(W=>W.step==="VERIFY_2FA"),[r,s]=Ms(),l=Ls(null),[c,d]=Yt(null),[p,C]=Yt(""),[f,u]=Yt(""),[A,S]=Yt(!1),U=(c?new URL(c).searchParams:void 0)?.get("secret");qo(()=>{async function W(){try{let{uri:g}=await a.setup2FA();d(g)}catch(g){console.error("Error fetching OTPAuth URL:",g)}}W()},[]),qo(()=>{setTimeout(()=>{l?.current?.shadowRoot.querySelectorAll("input")?.[0]?.focus()},10)},[n]),qo(()=>{p.length===6&&M()},[p]);let I=()=>{o("VERIFY_2FA")},b=()=>{t?o("LOGIN_DONE"):e()},T=W=>{f&&u(""),C(W.detail.value.trim())},M=async()=>{if(S(!0),p.length===6&&/^\d+$/.test(p))try{await a.enable2FA({verificationCode:p}),o("TWO_FACTOR_DONE")}catch{u("Incorrect Code")}else u("Incorrect Code");S(!1)};return Lt(P,{children:[Lt(O,{children:[oe(X,{variant:"headingS",weight:"bold",children:"Turn on Two-Factor authentication"}),n&&oe(dr,{variant:"bodyS",color:"secondary",weight:"medium",children:"Please enter the code from your authenticator app."})]}),oe(O,{children:n?oe(Zo,{children:A?oe(pr,{}):oe("form",{onSubmit:async W=>{W.preventDefault(),await M()},children:oe(Os,{ref:l,code:p,onCpslInput:T,errorText:f,length:6,onKeyDown:async W=>W.key==="Enter"&&await M()})})}):Lt(Zo,{children:[oe(dr,{variant:"bodyS",color:"secondary",weight:"medium",children:"Scan with your preferred authenticator app."}),oe(Ae,{children:c?oe(Rs,{url:c}):oe(pr,{size:100})})]})}),!n&&Lt(Zo,{children:[oe(O,{children:oe(Ws,{children:"or enter the code manually"})}),oe(O,{children:oe(Rt,{disabled:!0,value:U,noAutoDisable:!0,children:oe(Jo,{slot:"end",variant:"ghost",onClick:()=>{s(U)},children:oe(_s,{icon:r?"check":"copy"})})})}),Lt(O,{children:[oe(Jo,{fullWidth:!0,onClick:I,children:"Continue"}),oe(Ns,{variant:"ghost",onClick:b,children:"Skip"})]})]})]})},Os=ur(ws)`
67
67
  align-self: center;
68
- `,Ls=pr(jo)`
68
+ `,Ns=ur(Jo)`
69
69
  margin-top: 8px;
70
70
  text-decoration: underline;
71
- `;import{useEffect as Al}from"react";import ht from"styled-components";import{CpslButton as dl,CpslIdenticon as pl,CpslText as Rr}from"@getpara/react-components";import{truncateAddress as Lr}from"@getpara/web-sdk";import{useEffect as il}from"react";import{useEffect as el,useRef as tl}from"react";var G=()=>Z(t=>t.client);var qt=()=>{let e=Z(n=>n.isOpen),t=Z(n=>n.setIsOpen);return{isOpen:e,openModal:()=>{t(!0)},closeModal:()=>{t(!1)}}};var Ce=()=>{let e=G(),t=Z(l=>l.selectedWalletId),o=Z(l=>l.selectedWalletType),a=Z(l=>l.setSelectedWallet),n=Z(l=>l.clearSelectedWallet);return{selectedWallet:{id:t,type:o},setSelectedWallet:({id:l,type:r})=>{try{e.findWalletId(l,{type:[r]})!==l?n():a(l,r)}catch{n()}}}};import{useQuery as Ms}from"@tanstack/react-query";var mr=async e=>{let o={isConnected:!!await e?.isFullyLoggedIn(),email:void 0,phone:void 0,wallets:void 0};return e&&o.isConnected&&(o.email=e.getEmail(),o.phone=e.getPhoneNumber(),o.wallets=e.getWallets()),o};var Ee="PARA_ACCOUNT",en=()=>{let e=G();return Ms({queryKey:[Ee,e?.getUserId()],queryFn:async()=>await mr(e)})};import{useQuery as Os}from"@tanstack/react-query";var Cr=async(e,t)=>{let o=await e?.isFullyLoggedIn();return!e||!o?null:e.findWallet(t?.id,t?.type)};var ye="PARA_WALLET",Nt=()=>{let e=G(),{selectedWallet:t}=Ce();return Os({queryKey:[ye,e?.getUserId(),t.id,t.type],queryFn:async()=>await Cr(e,t)})};import{useMutation as Ns,useQueryClient as vs}from"@tanstack/react-query";var fr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to waitForLoginAndSetup");try{let o=await e.waitForLoginAndSetup(t);if(o.isError)throw new Error("error during waitForLoginAndSetup");return o}catch(o){throw new Error(o)}};function J(e,t){let{mutate:o,mutateAsync:a,...n}=e;return{...{[t]:e.mutate,[`${t}Async`]:e.mutateAsync},...n}}var bs=()=>{let e=G(),t=vs(),o=Ns({mutationFn:async a=>await fr(e,a),onSettled:async()=>{await t.invalidateQueries({queryKey:[Ee],exact:!1}),await t.invalidateQueries({queryKey:[ye],exact:!1})}});return J(o,"waitForLoginAndSetup")};import{useMutation as Ds,useQueryClient as Us}from"@tanstack/react-query";var Ar=async e=>{if(!e)throw new Error("no para instance");try{let t=await e.waitForAccountCreation();if(!t)throw new Error("error during waitForAccountCreation");return t}catch(t){throw new Error(t)}};var Ps=()=>{let e=G(),t=Us(),o=Ds({mutationFn:async()=>await Ar(e),onSettled:async()=>{await t.invalidateQueries({queryKey:[Ee],exact:!1}),await t.invalidateQueries({queryKey:[ye],exact:!1})}});return J(o,"waitForAccountCreation")};import{useMutation as Fs,useQueryClient as ks}from"@tanstack/react-query";var Sr=async e=>{if(!e)throw new Error("no para instance");try{let t=await e.waitForPasskeyAndCreateWallet();if(!t)throw new Error("error during waitForAccountCreation");return t}catch(t){throw new Error(t)}};var Bs=()=>{let e=G(),t=ks(),o=Fs({mutationFn:async()=>await Sr(e),onSettled:async()=>{await t.invalidateQueries({queryKey:[Ee],exact:!1}),await t.invalidateQueries({queryKey:[ye],exact:!1})}});return J(o,"waitForPasskeyAndCreateWallet")};import{useMutation as Hs}from"@tanstack/react-query";var Er=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to createUser");try{await(t.type==="EMAIL"?e.createUser({email:t.identifier}):e.createUserByPhone({phone:t.identifier,countryCode:t.countryCode}))}catch(o){throw new Error(o)}};var Gs=()=>{let e=G(),t=Hs({mutationFn:async o=>await Er(e,o)});return J(t,"createUser")};import{useMutation as Vs}from"@tanstack/react-query";var hr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to checkIfUserExists");try{return await(t.type==="EMAIL"?e.checkIfUserExists({email:t.identifier}):e.checkIfUserExistsByPhone({phone:t.identifier,countryCode:t.countryCode}))}catch(o){throw new Error(o)}};var $s=()=>{let e=G(),t=Vs({mutationFn:async o=>await hr(e,o)});return J(t,"checkIfUserExists")};import{useMutation as Ks}from"@tanstack/react-query";var Tr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to initiateLogin");try{return await e.initiateUserLoginV2(t)}catch(o){throw new Error(o)}};var Ys=()=>{let e=G(),t=Ks({mutationFn:async o=>await Tr(e,o)});return J(t,"initiateLogin")};import{useMutation as Xs,useQueryClient as zs}from"@tanstack/react-query";var Ir=async e=>{if(!e)throw new Error("no para instance");try{await e.logout()}catch(t){throw new Error(t)}};var tn=()=>{let e=G(),t=zs(),o=Z(n=>n.clearSelectedWallet),a=Xs({mutationFn:async()=>await Ir(e),onSettled:async()=>{await t.invalidateQueries({queryKey:[Ee],exact:!1}),await t.invalidateQueries({queryKey:[ye],exact:!1}),o()}});return J(a,"logout")};import{useMutation as Qs}from"@tanstack/react-query";var gr=async e=>{if(!e)throw new Error("no para instance");try{if(!await e.keepSessionAlive())throw new Error("session expired")}catch(t){throw new Error(t)}};var on=()=>{let e=G(),t=Qs({mutationFn:async()=>await gr(e)});return J(t,"keepSessionAlive")};import{useMutation as qs}from"@tanstack/react-query";var yr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to signMessage");try{return await e.signMessage(t)}catch(o){throw new Error(o)}};var Zs=()=>{let e=G(),{data:t}=Nt(),o=qs({mutationFn:async a=>{let n=a?.walletId;if(n||(n=t?.id),!n)throw Error("no wallet id found");return await yr(e,{...a,walletId:n})}});return J(o,"signMessage")};import{useMutation as Js}from"@tanstack/react-query";var xr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to signTransaction");try{return await e.signTransaction(t)}catch(o){throw new Error(o)}};var js=()=>{let e=G(),{data:t}=Nt(),o=Js({mutationFn:async a=>{let n=a?.walletId;if(n||(n=t?.id),!n)throw Error("no wallet id found");return await xr(e,{...a,walletId:n})}});return J(o,"signTransaction")};var ol=6e4,nl=3e5,wr=({disabled:e})=>{let t=b(),{data:o}=en(),{logoutAsync:a}=tn(),{keepSessionAliveAsync:n}=on(),i=tl(null);el(()=>{if(!t||e){c();return}return o?.isConnected&&!t.isUsingExternalWallet()?r():c(),()=>c()},[t,o,e]);let l=async()=>{try{let p=await t.retrieveSessionCookie();if(!p)return null;let d=p.match(/Expires=([^;]+)/);return d?new Date(d[1]):null}catch{return null}},r=()=>{c(),i.current=setInterval(async()=>{let p=await l();if(!p){await a(),c();return}let d=p.getTime()-Date.now();if(d<=0){await a(),c();return}if(d<=nl){try{await n(),r()}catch(u){console.error("Failed to keep session alive:",u),await a(),c()}return}},ol)},c=()=>{i.current&&clearInterval(i.current)}};import{useQueryClient as rl}from"@tanstack/react-query";import{useEffect as al}from"react";import{ParaEvent as j}from"@getpara/web-sdk";var Wr=({onLogin:e,onLogout:t,onAccountSetup:o,onAccountCreation:a,onSignMessage:n,onSignTransaction:i,onWalletCreated:l,onPregenWalletClaimed:r,onExternalWalletChange:c,onWalletsChange:p}={})=>{let d=rl(),u=G(),A=Z(x=>x.clearSelectedWallet),{selectedWallet:m,setSelectedWallet:f}=Ce(),S=x=>{D(),e?.(x)},y=x=>{D(),o?.(x)},D=()=>{d.invalidateQueries({queryKey:[Ee],exact:!1}),d.invalidateQueries({queryKey:[ye],exact:!1})},W=x=>{a?.(x)},E=x=>{d.invalidateQueries({queryKey:[Ee],exact:!1}),A(),t?.(x)},h=x=>{n?.(x)},R=x=>{i?.(x)},C=x=>{U(),p?.(x)},L=x=>{U(),c?.(x)},T=x=>{l?.(x)},g=x=>{r?.(x)},U=()=>{if(!u){A();return}if(!m?.id||!u.findWallet(m?.id)){let x=u.findWallet(void 0,void 0,{forbidPregen:!0});f({id:x?.id,type:x?.type})}};al(()=>(window.addEventListener(j.LOGIN_EVENT,S),window.addEventListener(j.ACCOUNT_SETUP_EVENT,y),window.addEventListener(j.ACCOUNT_CREATION_EVENT,W),window.addEventListener(j.LOGOUT_EVENT,E),window.addEventListener(j.SIGN_MESSAGE_EVENT,h),window.addEventListener(j.SIGN_TRANSACTION_EVENT,R),window.addEventListener(j.WALLETS_CHANGE_EVENT,C),window.addEventListener(j.EXTERNAL_WALLET_CHANGE_EVENT,L),window.addEventListener(j.WALLET_CREATED,T),window.addEventListener(j.PREGEN_WALLET_CLAIMED,g),()=>{window.removeEventListener(j.LOGIN_EVENT,S),window.removeEventListener(j.ACCOUNT_SETUP_EVENT,y),window.removeEventListener(j.ACCOUNT_CREATION_EVENT,W),window.removeEventListener(j.LOGOUT_EVENT,E),window.removeEventListener(j.SIGN_MESSAGE_EVENT,h),window.removeEventListener(j.SIGN_TRANSACTION_EVENT,R),window.removeEventListener(j.WALLETS_CHANGE_EVENT,C),window.removeEventListener(j.EXTERNAL_WALLET_CHANGE_EVENT,L),window.removeEventListener(j.WALLET_CREATED,T),window.removeEventListener(j.PREGEN_WALLET_CLAIMED,g)}),[u])};import{ParaInternal as sl}from"@getpara/react-common";var ll={disableAutoSessionKeepAlive:!1},cl=({children:e,paraClientConfig:t,callbacks:o,config:a=ll})=>{Wr(o),wr({disabled:a.disableAutoSessionKeepAlive});let n=Z(i=>i.setClient);return il(()=>{let i=a.paraClientOverride??new sl(t.env,t.apiKey,t.opts);n(i)},[t,a.paraClientOverride]),e};var LS=()=>mt.getState().client,MS=()=>mt.getState().isOpen,OS=()=>mt.getState().selectedWalletId,NS=()=>mt.getState().selectedWalletType;import{jsx as et,jsxs as nn}from"react/jsx-runtime";var Mr=({address:e,showAddFunds:t})=>{let o=b(),a=o.externalWallets[e];return a?et(Or,{address:Lr(a.address,a.type),identiconHash:o.getIdenticonHash(a.id,a.type),showAddFunds:t}):null},Zt=({id:e,type:t,showAddFunds:o})=>{let a=b(),n=_(r=>r.appName),i=a.findWallet(e,t);if(!i)return null;let l=a.getDisplayAddress(i.id,{addressType:t});return et(Or,{id:i.id,type:i.type,address:Lr(l,t,{prefix:a.cosmosPrefix}),name:i.name??`${n?`${n} `:""}Wallet`,identiconHash:a.getIdenticonHash(i.id,t),showAddFunds:o})},Or=({address:e,name:t,identiconHash:o,showAddFunds:a,id:n,type:i})=>{let l=s(u=>u.onRampConfig),{setSelectedWallet:r}=Ce(),c=s(u=>u.setStep),p=l.isBuyEnabled||l.isReceiveEnabled;return nn(ul,{children:[nn(ml,{children:[et(pl,{size:"48px",hash:o}),nn(Cl,{children:[!!t&&et(_r,{color:"contrast",variant:"bodyL",weight:"semiBold",children:t}),et(_r,{color:"secondary",variant:"bodyS",weight:"medium",children:e})]})]}),a&&p&&et(fl,{onClick:()=>{n&&i&&(r({id:n,type:i}),p&&c(l.isBuyEnabled?"ADD_FUNDS_BUY":"ADD_FUNDS_RECEIVE"))},children:et(Rr,{variant:"bodyXS",color:"contrast",weight:"medium",children:"Add Funds"})})]})},Jt=ht.div`
71
+ `;import{useEffect as hl}from"react";import At from"styled-components";import{CpslButton as ml,CpslIdenticon as Cl,CpslText as Lr}from"@getpara/react-components";import{truncateAddress as Mr}from"@getpara/web-sdk";import{useEffect as cl}from"react";import{useEffect as nl,useRef as rl}from"react";var G=()=>Q(t=>t.client);var Xt=()=>{let e=Q(n=>n.isOpen),t=Q(n=>n.setIsOpen);return{isOpen:e,openModal:()=>{t(!0)},closeModal:()=>{t(!1)}}};var de=()=>{let e=G(),t=Q(s=>s.selectedWalletId),o=Q(s=>s.selectedWalletType),a=Q(s=>s.setSelectedWallet),n=Q(s=>s.clearSelectedWallet);return{selectedWallet:{id:t,type:o},setSelectedWallet:({id:s,type:l})=>{try{e.findWalletId(s,{type:[l]})!==s?n():a(s,l)}catch{n()}}}};import{useQuery as vs}from"@tanstack/react-query";var Cr=async e=>{let o={isConnected:!!await e?.isFullyLoggedIn(),email:void 0,phone:void 0,wallets:void 0};return e&&o.isConnected&&(o.email=e.getEmail(),o.phone=e.getPhoneNumber(),o.wallets=e.getWallets()),o};var Se="PARA_ACCOUNT",jo=()=>{let e=G();return vs({queryKey:[Se,e?.getUserId()],queryFn:async()=>await Cr(e)})};import{useQuery as bs}from"@tanstack/react-query";var fr=async(e,t)=>{let o=await e?.isFullyLoggedIn();return!e||!o?null:e.findWallet(t?.id,t?.type)};var ge="PARA_WALLET",Mt=()=>{let e=G(),{selectedWallet:t}=de();return bs({queryKey:[ge,e?.getUserId(),t.id,t.type],queryFn:async()=>await fr(e,t)})};import{useMutation as Ds,useQueryClient as Us}from"@tanstack/react-query";var Ar=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to waitForLoginAndSetup");try{let o=await e.waitForLoginAndSetup(t);if(o.isError)throw new Error("error during waitForLoginAndSetup");return o}catch(o){throw new Error(o)}};function j(e,t){let{mutate:o,mutateAsync:a,...n}=e;return{...{[t]:e.mutate,[`${t}Async`]:e.mutateAsync},...n}}var Ps=()=>{let e=G(),t=Us(),o=Ds({mutationFn:async a=>await Ar(e,a),onSettled:async()=>{await t.invalidateQueries({queryKey:[Se],exact:!1}),await t.invalidateQueries({queryKey:[ge],exact:!1})}});return j(o,"waitForLoginAndSetup")};import{useMutation as Fs,useQueryClient as ks}from"@tanstack/react-query";var Sr=async e=>{if(!e)throw new Error("no para instance");try{let t=await e.waitForAccountCreation();if(!t)throw new Error("error during waitForAccountCreation");return t}catch(t){throw new Error(t)}};var Bs=()=>{let e=G(),t=ks(),o=Fs({mutationFn:async()=>await Sr(e),onSettled:async()=>{await t.invalidateQueries({queryKey:[Se],exact:!1}),await t.invalidateQueries({queryKey:[ge],exact:!1})}});return j(o,"waitForAccountCreation")};import{useMutation as Hs,useQueryClient as Gs}from"@tanstack/react-query";var Er=async e=>{if(!e)throw new Error("no para instance");try{let t=await e.waitForPasskeyAndCreateWallet();if(!t)throw new Error("error during waitForAccountCreation");return t}catch(t){throw new Error(t)}};var Vs=()=>{let e=G(),t=Gs(),o=Hs({mutationFn:async()=>await Er(e),onSettled:async()=>{await t.invalidateQueries({queryKey:[Se],exact:!1}),await t.invalidateQueries({queryKey:[ge],exact:!1})}});return j(o,"waitForPasskeyAndCreateWallet")};import{useMutation as $s}from"@tanstack/react-query";var hr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to createUser");try{await(t.type==="EMAIL"?e.createUser({email:t.identifier}):e.createUserByPhone({phone:t.identifier,countryCode:t.countryCode}))}catch(o){throw new Error(o)}};var Ks=()=>{let e=G(),t=$s({mutationFn:async o=>await hr(e,o)});return j(t,"createUser")};import{useMutation as Ys}from"@tanstack/react-query";var Tr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to checkIfUserExists");try{return await(t.type==="EMAIL"?e.checkIfUserExists({email:t.identifier}):e.checkIfUserExistsByPhone({phone:t.identifier,countryCode:t.countryCode}))}catch(o){throw new Error(o)}};var Xs=()=>{let e=G(),t=Ys({mutationFn:async o=>await Tr(e,o)});return j(t,"checkIfUserExists")};import{useMutation as zs}from"@tanstack/react-query";var Ir=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to initiateLogin");try{return await e.initiateUserLoginV2(t)}catch(o){throw new Error(o)}};var Qs=()=>{let e=G(),t=zs({mutationFn:async o=>await Ir(e,o)});return j(t,"initiateLogin")};import{useMutation as qs,useQueryClient as Zs}from"@tanstack/react-query";var gr=async e=>{if(!e)throw new Error("no para instance");try{await e.logout()}catch(t){throw new Error(t)}};var en=()=>{let e=G(),t=Zs(),o=Q(n=>n.clearSelectedWallet),a=qs({mutationFn:async()=>await gr(e),onSettled:async()=>{await t.invalidateQueries({queryKey:[Se],exact:!1}),await t.invalidateQueries({queryKey:[ge],exact:!1}),o()}});return j(a,"logout")};import{useMutation as Js}from"@tanstack/react-query";var yr=async e=>{if(!e)throw new Error("no para instance");try{if(!await e.keepSessionAlive())throw new Error("session expired")}catch(t){throw new Error(t)}};var tn=()=>{let e=G(),t=Js({mutationFn:async()=>await yr(e)});return j(t,"keepSessionAlive")};import{useMutation as js}from"@tanstack/react-query";var xr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to signMessage");try{return await e.signMessage(t)}catch(o){throw new Error(o)}};var el=()=>{let e=G(),{data:t}=Mt(),o=js({mutationFn:async a=>{let n=a?.walletId;if(n||(n=t?.id),!n)throw Error("no wallet id found");return await xr(e,{...a,walletId:n})}});return j(o,"signMessage")};import{useMutation as tl}from"@tanstack/react-query";var wr=async(e,t)=>{if(!e)throw new Error("no para instance");if(!t)throw new Error("no valid args passed to signTransaction");try{return await e.signTransaction(t)}catch(o){throw new Error(o)}};var ol=()=>{let e=G(),{data:t}=Mt(),o=tl({mutationFn:async a=>{let n=a?.walletId;if(n||(n=t?.id),!n)throw Error("no wallet id found");return await wr(e,{...a,walletId:n})}});return j(o,"signTransaction")};var al=6e4,il=3e5,Wr=({disabled:e})=>{let t=v(),{data:o}=jo(),{logoutAsync:a}=en(),{keepSessionAliveAsync:n}=tn(),r=rl(null);nl(()=>{if(!t||e){c();return}return o?.isConnected&&!t.isUsingExternalWallet()?l():c(),()=>c()},[t,o,e]);let s=async()=>{try{let d=await t.retrieveSessionCookie();if(!d)return null;let p=d.match(/Expires=([^;]+)/);return p?new Date(p[1]):null}catch{return null}},l=()=>{c(),r.current=setInterval(async()=>{let d=await s();if(!d){await a(),c();return}let p=d.getTime()-Date.now();if(p<=0){await a(),c();return}if(p<=il){try{await n(),l()}catch(C){console.error("Failed to keep session alive:",C),await a(),c()}return}},al)},c=()=>{r.current&&clearInterval(r.current)}};import{useQueryClient as sl}from"@tanstack/react-query";import{useEffect as ll}from"react";import{ParaEvent as ee}from"@getpara/web-sdk";var _r=({onLogin:e,onLogout:t,onAccountSetup:o,onAccountCreation:a,onSignMessage:n,onSignTransaction:r,onWalletCreated:s,onPregenWalletClaimed:l,onExternalWalletChange:c,onWalletsChange:d}={})=>{let p=sl(),C=G(),f=Q(R=>R.clearSelectedWallet),{selectedWallet:u,setSelectedWallet:A}=de(),S=R=>{U(),e?.(R)},h=R=>{U(),o?.(R)},U=()=>{p.invalidateQueries({queryKey:[Se],exact:!1}),p.invalidateQueries({queryKey:[ge],exact:!1})},I=R=>{a?.(R)},b=R=>{p.invalidateQueries({queryKey:[Se],exact:!1}),f(),t?.(R)},T=R=>{n?.(R)},M=R=>{r?.(R)},x=R=>{D(),d?.(R)},W=R=>{D(),c?.(R)},g=R=>{s?.(R)},y=R=>{l?.(R)},D=()=>{if(!C){f();return}if(!u?.id||!C.findWallet(u?.id)){let R=C.findWallet(void 0,void 0,{forbidPregen:!0});A({id:R?.id,type:R?.type})}};ll(()=>(window.addEventListener(ee.LOGIN_EVENT,S),window.addEventListener(ee.ACCOUNT_SETUP_EVENT,h),window.addEventListener(ee.ACCOUNT_CREATION_EVENT,I),window.addEventListener(ee.LOGOUT_EVENT,b),window.addEventListener(ee.SIGN_MESSAGE_EVENT,T),window.addEventListener(ee.SIGN_TRANSACTION_EVENT,M),window.addEventListener(ee.WALLETS_CHANGE_EVENT,x),window.addEventListener(ee.EXTERNAL_WALLET_CHANGE_EVENT,W),window.addEventListener(ee.WALLET_CREATED,g),window.addEventListener(ee.PREGEN_WALLET_CLAIMED,y),()=>{window.removeEventListener(ee.LOGIN_EVENT,S),window.removeEventListener(ee.ACCOUNT_SETUP_EVENT,h),window.removeEventListener(ee.ACCOUNT_CREATION_EVENT,I),window.removeEventListener(ee.LOGOUT_EVENT,b),window.removeEventListener(ee.SIGN_MESSAGE_EVENT,T),window.removeEventListener(ee.SIGN_TRANSACTION_EVENT,M),window.removeEventListener(ee.WALLETS_CHANGE_EVENT,x),window.removeEventListener(ee.EXTERNAL_WALLET_CHANGE_EVENT,W),window.removeEventListener(ee.WALLET_CREATED,g),window.removeEventListener(ee.PREGEN_WALLET_CLAIMED,y)}),[C])};import{ParaInternal as pl}from"@getpara/react-common";var dl={disableAutoSessionKeepAlive:!1},ul=({children:e,paraClientConfig:t,callbacks:o,config:a=dl})=>{_r(o),Wr({disabled:a.disableAutoSessionKeepAlive});let n=Q(r=>r.setClient);return cl(()=>{let r=a.paraClientOverride??new pl(t.env,t.apiKey,t.opts);n(r)},[t,a.paraClientOverride]),e};var OS=()=>pt.getState().client,NS=()=>pt.getState().isOpen,vS=()=>pt.getState().selectedWalletId,bS=()=>pt.getState().selectedWalletType;import{jsx as Je,jsxs as on}from"react/jsx-runtime";var Or=({address:e,showAddFunds:t})=>{let o=v(),a=o.externalWallets[e];return a?Je(Nr,{address:Mr(a.address,a.type),identiconHash:o.getIdenticonHash(a.id,a.type),showAddFunds:t}):null},zt=({id:e,type:t,showAddFunds:o})=>{let a=v(),n=w(l=>l.appName),r=a.findWallet(e,t);if(!r)return null;let s=a.getDisplayAddress(r.id,{addressType:t});return Je(Nr,{id:r.id,type:r.type,address:Mr(s,t,{prefix:a.cosmosPrefix}),name:r.name??`${n?`${n} `:""}Wallet`,identiconHash:a.getIdenticonHash(r.id,t),showAddFunds:o})},Nr=({address:e,name:t,identiconHash:o,showAddFunds:a,id:n,type:r})=>{let s=i(C=>C.onRampConfig),{setSelectedWallet:l}=de(),c=i(C=>C.setStep),d=s.isBuyEnabled||s.isReceiveEnabled;return on(fl,{children:[on(Al,{children:[Je(Cl,{size:"48px",hash:o}),on(Sl,{children:[!!t&&Je(Rr,{color:"contrast",variant:"bodyL",weight:"semiBold",children:t}),Je(Rr,{color:"secondary",variant:"bodyS",weight:"medium",children:e})]})]}),a&&d&&Je(El,{onClick:()=>{n&&r&&(l({id:n,type:r}),d&&c(s.isBuyEnabled?"ADD_FUNDS_BUY":"ADD_FUNDS_RECEIVE"))},children:Je(Lr,{variant:"bodyXS",color:"contrast",weight:"medium",children:"Add Funds"})})]})},Qt=At.div`
72
72
  display: flex;
73
73
  flex-direction: column;
74
74
  gap: 8px;
75
75
  width: 100%;
76
- `,ul=ht.div`
76
+ `,fl=At.div`
77
77
  width: 100%;
78
78
  padding: 24px;
79
79
  display: flex;
@@ -82,13 +82,13 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
82
82
  gap: 16px;
83
83
  background-color: var(--cpsl-color-background-8);
84
84
  border-radius: 16px;
85
- `,ml=ht.div`
85
+ `,Al=At.div`
86
86
  display: flex;
87
87
  justify-content: flex-start;
88
- gap: 4px;
88
+ gap: 8px;
89
89
  align-items: center;
90
90
  overflow: hidden;
91
- `,Cl=ht.div`
91
+ `,Sl=At.div`
92
92
  flex: 1;
93
93
  display: flex;
94
94
  flex-direction: column;
@@ -96,7 +96,7 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
96
96
  align-items: flex-start;
97
97
  justify-content: center;
98
98
  overflow: hidden;
99
- `,_r=ht(Rr)`
99
+ `,Rr=At(Lr)`
100
100
  width: 100%;
101
101
  &::part(text-element) {
102
102
  line-height: 100%;
@@ -104,7 +104,7 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
104
104
  overflow: hidden;
105
105
  white-space: nowrap;
106
106
  }
107
- `,fl=ht(dl)`
107
+ `,El=At(ml)`
108
108
  --button-primary-background-color: var(--cpsl-color-card-surface);
109
109
  --button-primary-hover-background-color: var(--cpsl-color-background-4);
110
110
  --button-primary-color: var(--cpsl-color-text-contrast);
@@ -115,28 +115,28 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
115
115
  --button-padding-top: 8px;
116
116
  --button-padding-bottom: 8px;
117
117
  --button-border-radius: 8px;
118
- `;import{jsx as vt,jsxs as Sl}from"react/jsx-runtime";var Nr=({onClose:e})=>{let t=b(),o=_(a=>a.hideWallets);return Al(()=>{setTimeout(()=>{e()},1600)},[]),Sl(F,{children:[vt(Ke,{icon:"checkCircleFilled"}),vt(X,{variant:"headingS",weight:"bold",children:"Connected"}),!o&&vt(Jt,{children:t.isUsingExternalWallet()?vt(Mr,{address:t.currentExternalWalletAddresses?.[0]}):t.currentWalletIdsArray.map(([a,n])=>vt(Zt,{id:a,type:n},`${a}-${n}`))})]})};import{EnabledFlow as Ro}from"@getpara/web-sdk";import{CpslSpinner as El,CpslText as hl}from"@getpara/react-components";import{jsx as jt,jsxs as vr}from"react/jsx-runtime";var Ye=({heading:e,subheading:t})=>vr(F,{$wide:!0,children:[jt(er,{children:jt(El,{size:100})}),vr(O,{children:[jt(X,{variant:"headingS",weight:"bold",children:e}),jt(hl,{variant:"bodyS",color:"secondary",weight:"medium",children:t})]})]});import{jsx as Tl}from"react/jsx-runtime";var br=()=>{let e=s(t=>t.isLogin());return Tl(Ye,{heading:e?"Waiting for Passkey":"Creating Passkey",subheading:"Follow the prompts presented by your browser."})};import{CpslIcon as Il,CpslInfoBox as gl,CpslText as Dr}from"@getpara/react-components";import{useEffect as yl,useRef as xl,useState as wl}from"react";import{jsx as eo,jsxs as to}from"react/jsx-runtime";var Ur=()=>{let e=_(n=>n.hideWallets),[t,o]=wl(!1),a=xl();return yl(()=>(typeof window<"u"&&(a.current=window.setTimeout(()=>{o(!0)},4e3)),()=>clearTimeout(a.current)),[]),to(F,{$wide:!0,children:[eo(Ye,{heading:e?"Creating Your Account":"Creating Your Wallet",subheading:"This should only take a couple of seconds."}),t&&eo(gl,{children:to(tr,{children:[to(or,{children:[eo(Il,{icon:"clock"}),eo(Dr,{weight:"medium",children:"Hang on"})]}),to(Dr,{variant:"bodyS",weight:"medium",color:"secondary",children:["Creating your ",e?"account":"wallet"," is taking a little longer than expected, but we're working on it!"]})]})})]})};import{CpslButton as Wl,CpslText as _l}from"@getpara/react-components";import Rl from"styled-components";import{Fragment as Ml,jsx as tt,jsxs as Pr}from"react/jsx-runtime";var Fr=({twoFactorAuthEnabled:e,onClose:t})=>{let o=_(p=>p.hideWallets),a=s(p=>p.setStep),n=s(p=>p.isLogin()),i=s(p=>p.onRampConfig),l=b(),r=i?.isBuyEnabled||i?.isReceiveEnabled||i?.isWithdrawEnabled,c=async()=>{if(n){if(!e){a("LOGIN_DONE");return}let p=await l.check2FAStatus();a(p?"LOGIN_DONE":"SETUP_2FA")}else e?a("SETUP_2FA"):t()};return Pr(F,{$wide:!0,children:[tt(Ll,{children:o?Pr(Ml,{children:[tt(Ke,{icon:"checkCircleFilled"}),tt(_l,{variant:"bodyM",color:"secondary",weight:"medium",style:{marginTop:"16px"},children:"Your account has been created."})]}):tt(Jt,{children:l.currentWalletIdsArray.map(([p,d])=>tt(Zt,{id:p,type:d,showAddFunds:r},p))})}),tt(O,{children:tt(Wl,{fullWidth:!0,onClick:c,children:e?"Continue":"Done"})})]})},Ll=Rl(O)`
118
+ `;import{jsx as Ot,jsxs as Tl}from"react/jsx-runtime";var vr=({onClose:e})=>{let t=v(),o=w(a=>a.hideWallets);return hl(()=>{setTimeout(()=>{e()},1600)},[]),Tl(P,{children:[Ot(Ge,{icon:"checkCircleFilled"}),Ot(X,{variant:"headingS",weight:"bold",children:"Connected"}),!o&&Ot(Qt,{children:t.isUsingExternalWallet()?Ot(Or,{address:t.currentExternalWalletAddresses?.[0]}):t.currentWalletIdsArray.map(([a,n])=>Ot(zt,{id:a,type:n},`${a}-${n}`))})]})};import{EnabledFlow as Wo}from"@getpara/web-sdk";import{CpslSpinner as Il,CpslText as gl}from"@getpara/react-components";import{jsx as qt,jsxs as br}from"react/jsx-runtime";var Ve=({heading:e,subheading:t})=>br(P,{$wide:!0,children:[qt(tr,{children:qt(Il,{size:100})}),br(O,{children:[qt(X,{variant:"headingS",weight:"bold",children:e}),qt(gl,{variant:"bodyS",color:"secondary",weight:"medium",children:t})]})]});import{jsx as yl}from"react/jsx-runtime";var Dr=()=>{let e=i(t=>t.isLogin());return yl(Ve,{heading:e?"Waiting for Passkey":"Creating Passkey",subheading:"Follow the prompts presented by your browser."})};import{CpslIcon as xl,CpslInfoBox as wl,CpslText as Ur}from"@getpara/react-components";import{useEffect as Wl,useRef as _l,useState as Rl}from"react";import{jsx as Zt,jsxs as Jt}from"react/jsx-runtime";var Pr=()=>{let e=w(n=>n.hideWallets),[t,o]=Rl(!1),a=_l();return Wl(()=>(typeof window<"u"&&(a.current=window.setTimeout(()=>{o(!0)},4e3)),()=>clearTimeout(a.current)),[]),Jt(P,{$wide:!0,children:[Zt(Ve,{heading:e?"Creating Your Account":"Creating Your Wallet",subheading:"This should only take a couple of seconds."}),t&&Zt(wl,{children:Jt(or,{children:[Jt(nr,{children:[Zt(xl,{icon:"clock"}),Zt(Ur,{weight:"medium",children:"Hang on"})]}),Jt(Ur,{variant:"bodyS",weight:"medium",color:"secondary",children:["Creating your ",e?"account":"wallet"," is taking a little longer than expected, but we're working on it!"]})]})})]})};import{CpslButton as Ll,CpslText as Ml}from"@getpara/react-components";import Ol from"styled-components";import{Fragment as vl,jsx as je,jsxs as Fr}from"react/jsx-runtime";var kr=({twoFactorAuthEnabled:e,onClose:t})=>{let o=w(d=>d.hideWallets),a=i(d=>d.setStep),n=i(d=>d.isLogin()),r=i(d=>d.onRampConfig),s=v(),l=r?.isBuyEnabled||r?.isReceiveEnabled||r?.isWithdrawEnabled,c=async()=>{if(n){if(!e){a("LOGIN_DONE");return}let d=await s.check2FAStatus();a(d?"LOGIN_DONE":"SETUP_2FA")}else e?a("SETUP_2FA"):t()};return Fr(P,{$wide:!0,children:[je(Nl,{children:o?Fr(vl,{children:[je(Ge,{icon:"checkCircleFilled"}),je(Ml,{variant:"bodyM",color:"secondary",weight:"medium",style:{marginTop:"16px"},children:"Your account has been created."})]}):je(Qt,{children:s.currentWalletIdsArray.map(([d,p])=>je(zt,{id:d,type:p,showAddFunds:l},d))})}),je(O,{children:je(Ll,{fullWidth:!0,onClick:c,children:e?"Continue":"Done"})})]})},Nl=Ol(O)`
119
119
  min-height: 196px;
120
120
  justify-content: center;
121
- `;import{CpslButton as Ol,CpslText as oo}from"@getpara/react-components";import{styled as an}from"styled-components";import{useCopyToClipboard as Nl}from"@getpara/react-common";function kr(e,t){let o=`Hello,%0D%0DBelow is your Para Recovery Secret. Keep this safe!%0D%0D${t}%0D%0DPlease get in touch via support@getpara.com if you have any questions`;return`mailto:${e}?subject=Para%20Recovery%20Secret&body=${o}`}import{useState as vl}from"react";import{Fragment as Dl,jsx as he,jsxs as Tt}from"react/jsx-runtime";var Hr=({email:e,value:t,onComplete:o})=>{let[a,n]=vl(!1),[i,l]=Nl();return Tt(Dl,{children:[Tt(O,{children:[he(X,{variant:"headingXS",weight:"semiBold",children:"Save your Recovery Secret"}),Tt(bl,{children:[he(rn,{icon:"download",onClick:()=>{let d=document.createElement("a"),u=new Blob([t],{type:"text/plain"});d.href=URL.createObjectURL(u),d.download="recovery.txt",document.body.appendChild(d),d.click(),n(!0)},children:he(oo,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Download"})}),he(rn,{icon:i?"check":"copy",onClick:()=>{l(t),n(!0)},children:he(oo,{variant:"bodyXS",color:"secondary",weight:"medium",children:i?"Copied!":"Copy"})}),he(rn,{icon:"send",onClick:()=>{typeof window<"u"&&window.open(kr(e,t),"_self"),n(!0)},children:he(oo,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Email"})})]})]}),he(O,{children:he(Ol,{fullWidth:!0,onClick:o,disabled:!a,children:a?"I\u2019ve saved my recovery secret":"Choose an option above to continue"})})]})},Gr=()=>{let e=_(l=>l.hideWallets),t=s(l=>l.setStep),o=V(l=>l.getAuthInfo()),a=V(l=>l.recoveryShare),n=JSON.parse(a||"{}").backupDecryptionKey,i=async()=>{t("WALLET_CREATION_DONE")};return Tt(F,{children:[Tt(O,{children:[he(X,{variant:"headingS",weight:"bold",children:e?"Don't lose access":"Don't lose your wallet"}),Tt(Br,{variant:"bodyS",color:"secondary",weight:"medium",children:["Your"," ",he(Br,{variant:"bodyS",weight:"medium",children:"Recovery Secret"})," ","ensures you will be able to regain access to your ",e?"account":"wallet"," if you lose your Passkey or Password."]})]}),he(Hr,{email:o?.authType==="email"?o.identifier:void 0,value:n,onComplete:i})]})},rn=an($e)`
121
+ `;import{CpslButton as bl,CpslText as jt}from"@getpara/react-components";import{styled as rn}from"styled-components";import{useCopyToClipboard as Dl}from"@getpara/react-common";function Br(e,t){let o=`Hello,%0D%0DBelow is your Para Recovery Secret. Keep this safe!%0D%0D${t}%0D%0DPlease get in touch via support@getpara.com if you have any questions`;return`mailto:${e}?subject=Para%20Recovery%20Secret&body=${o}`}import{useState as Ul}from"react";import{Fragment as Fl,jsx as Ee,jsxs as St}from"react/jsx-runtime";var Gr=({email:e,value:t,onComplete:o})=>{let[a,n]=Ul(!1),[r,s]=Dl();return St(Fl,{children:[St(O,{children:[Ee(X,{variant:"headingXS",weight:"semiBold",children:"Save your Recovery Secret"}),St(Pl,{children:[Ee(nn,{icon:"download",onClick:()=>{let p=document.createElement("a"),C=new Blob([t],{type:"text/plain"});p.href=URL.createObjectURL(C),p.download="recovery.txt",document.body.appendChild(p),p.click(),n(!0)},children:Ee(jt,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Download"})}),Ee(nn,{icon:r?"check":"copy",onClick:()=>{s(t),n(!0)},children:Ee(jt,{variant:"bodyXS",color:"secondary",weight:"medium",children:r?"Copied!":"Copy"})}),Ee(nn,{icon:"send",onClick:()=>{typeof window<"u"&&window.open(Br(e,t),"_self"),n(!0)},children:Ee(jt,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Email"})})]})]}),Ee(O,{children:Ee(bl,{fullWidth:!0,onClick:o,disabled:!a,children:a?"I\u2019ve saved my recovery secret":"Choose an option above to continue"})})]})},Vr=()=>{let e=w(s=>s.hideWallets),t=i(s=>s.setStep),o=K(s=>s.getAuthInfo()),a=K(s=>s.recoveryShare),n=JSON.parse(a||"{}").backupDecryptionKey,r=async()=>{t("WALLET_CREATION_DONE")};return St(P,{children:[St(O,{children:[Ee(X,{variant:"headingS",weight:"bold",children:e?"Don't lose access":"Don't lose your wallet"}),St(Hr,{variant:"bodyS",color:"secondary",weight:"medium",children:["Your"," ",Ee(Hr,{variant:"bodyS",weight:"medium",children:"Recovery Secret"})," ","ensures you will be able to regain access to your ",e?"account":"wallet"," if you lose your Passkey or Password."]})]}),Ee(Gr,{email:o?.authType==="email"?o.identifier:void 0,value:n,onComplete:r})]})},nn=rn(He)`
122
122
  flex: 1;
123
123
 
124
124
  --button-icon-color: var(--cpsl-color-text-primary);
125
- `,bl=an.div`
125
+ `,Pl=rn.div`
126
126
  display: flex;
127
127
  align-items: center;
128
128
  justify-content: center;
129
129
  gap: 8px;
130
130
  width: 100%;
131
- `,Br=an(oo)`
131
+ `,Hr=rn(jt)`
132
132
  text-align: center;
133
133
  display: inline-block;
134
- `;import{CpslButton as Ul,CpslText as Pl}from"@getpara/react-components";import{jsx as sn,jsxs as ln}from"react/jsx-runtime";var Vr=({onClose:e})=>{let t=_(o=>o.hideWallets);return ln(F,{children:[sn(Ke,{icon:"checkCircleFilled"}),ln(O,{children:[sn(X,{variant:"headingXS",weight:"semiBold",children:"Success"}),ln(Pl,{variant:"bodyS",color:"secondary",weight:"medium",children:["Your ",t?"account":"wallet"," is now protected by 2FA"]})]}),sn(Ul,{fullWidth:!0,onClick:e,children:"Done"})]})};import{CpslButton as cn,CpslDivider as Fl,CpslIcon as dn,CpslQrCode as kl,CpslSpinner as Bl,CpslText as $r}from"@getpara/react-components";import{useCopyToClipboard as Hl,UserIdentifier as Gl}from"@getpara/react-common";import{Fragment as Kr,jsx as xe,jsxs as Xe}from"react/jsx-runtime";var Yr=({handlePasswordClick:e,handlePasskeyClick:t})=>{let o=s(p=>p.webAuthURLForCreate),a=s(p=>p.iFrameUrl),n=V(p=>p.getAuthInfo()),[i,l]=Hl(),r=()=>{l(o)},c=!!o&&!!a;return Xe(F,{$wide:!0,children:[Xe(O,{children:[xe(X,{variant:"headingS",weight:"bold",children:c?"Secure Your Account":"Create Passkey"}),xe(Gl,{...n}),xe($r,{variant:"bodyS",color:"secondary",weight:"medium",children:c?"Choose a password or set up a passkey":"Your Passkey keeps your account safe."})]}),Xe(O,{children:[Xt()?Xe(cn,{fullWidth:!0,onClick:t,children:[xe(dn,{slot:"start",icon:"key"}),c?"Create Passkey":"Create"]}):Xe(Kr,{children:[xe($r,{weight:"semiBold",children:"Scan with your mobile device"}),xe(Se,{children:o?xe(kl,{url:o}):xe(Bl,{size:100})}),Xe(cn,{size:"small",variant:"ghost",onClick:r,children:[xe(dn,{slot:"start",icon:i?"check":"copy"}),i?"Copied":"Copy Link"]})]}),c&&Xe(Kr,{children:[xe(Fl,{children:"or"}),Xe(cn,{fullWidth:!0,onClick:e,children:[xe(dn,{slot:"start",icon:"passcode"}),"Choose Password"]})]})]})]})};import{jsx as Vl}from"react/jsx-runtime";var Xr=()=>Vl(Ye,{heading:"Complete Login",subheading:"Follow the prompts presented by your browser."});import{EnabledFlow as rt,getOnRampAssets as pc,getOnRampNetworks as uc,OnRampProvider as mc,OnRampPurchaseType as lo,toAssetInfoArray as Cc,WalletType as An}from"@getpara/web-sdk";import{CpslButton as fc,CpslDivider as Ac,CpslIcon as ia,CpslIdenticon as Sc,CpslQrCode as Ec,CpslSpinner as sa,CpslTab as hc,CpslTabs as Tc,CpslText as da}from"@getpara/react-components";import{useEffect as Sn,useMemo as la}from"react";import{useState as Xl}from"react";import{Network as Re,OnRampAsset as Le,OnRampMethod as Fe,OnRampProvider as pn}from"@getpara/core-sdk";var un="https://connect.getpara.com/",zr="https://getpara.com/terms",mn={[pn.STRIPE]:{name:"Stripe",feeLower:.99,feeUpper:4.49,methods:[Fe.ACH,Fe.DEBIT,Fe.CREDIT],icon:"stripeBrand",backgroundColors:["#6772E5","#808AF4"]},[pn.RAMP]:{name:"Ramp",feeLower:.99,feeUpper:4.49,methods:[Fe.ACH,Fe.DEBIT,Fe.CREDIT],icon:"rampNetworkBrand",backgroundColors:["#21BF73","#3AE492"]},[pn.MOONPAY]:{name:"MoonPay",feeLower:1,feeUpper:4.5,methods:[Fe.ACH,Fe.DEBIT,Fe.CREDIT],icon:"moonpayBrand",backgroundColors:["#7715F5","#9647fd"]}},Cn={[Re.ETHEREUM]:{name:"Ethereum",icon:"ethereum"},[Re.SEPOLIA]:{name:"Sepolia",icon:"ethereum"},[Re.ARBITRUM]:{name:"Arbitrum",icon:"arbitrumBrand"},[Re.BASE]:{name:"Base",icon:"baseBrand"},[Re.OPTIMISM]:{name:"Optimism",icon:"optimismBrand"},[Re.POLYGON]:{name:"Polygon",icon:"polygonBrand"},[Re.SOLANA]:{name:"Solana",icon:"solana"},[Re.COSMOS]:{name:"Cosmos",icon:"cosmos"},[Re.CELO]:{name:"Celo",icon:"celoBrand"},[Re.NOBLE]:{name:"Noble",icon:"nobleBrand"}},fn={[Le.ETHEREUM]:{name:"Ethereum",code:"ETH",icon:"ethereum"},[Le.USDC]:{name:"USDC",code:"USDC",icon:"usdcBrand"},[Le.POLYGON]:{name:"Polygon",code:"MATIC",icon:"polygonBrand"},[Le.SOLANA]:{name:"Solana",code:"SOL",icon:"solana"},[Le.ATOM]:{name:"Atom",code:"ATOM",icon:"cosmos"},[Le.CELO]:{name:"Celo",code:"CELO",icon:"celoBrand"},[Le.TETHER]:{name:"Tether",code:"USDT",icon:"tetherBrand"},[Le.CUSD]:{name:"Celo Dollar",code:"CUSD",icon:"celoBrand"},[Le.CEUR]:{name:"Celo Euro",code:"CEUR",icon:"celoBrand"},[Le.CREAL]:{name:"Celo Real",code:"CREAL",icon:"celoBrand"}};function bt(e){return Cn[e]?.name??`${e[0]}${e.slice(1).toLowerCase()}`}function $l(e){return Cn[e]?.icon??"globe"}function Kl(e){return fn[e]?.code??e}function Yl(e){return fn[e]?.icon??"emptyCircle"}var ze=480,no="network not supported",Qr=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|.(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,ro={enter:e=>({scale:e>0?.9:1.1,opacity:0}),center:{scale:1,opacity:1},exit:e=>({scale:e<0?.9:1.1,opacity:0})},ao={duration:.2};import ot from"styled-components";import{CpslButton as zl,CpslIcon as Jr,CpslSpinner as Ql,CpslText as ql}from"@getpara/react-components";import{motion as Zl}from"framer-motion";import{jsx as Qe,jsxs as Zr}from"react/jsx-runtime";var jr=({config:e,index:t,onClick:o})=>{let[a,n]=Xl(!1),i=e.providers[t],{feeLower:l,feeUpper:r,name:c,icon:p,backgroundColors:d}=mn[i],u=`Fee ${l}% - ${r}%`;return Qe(Jl,{$gradientColors:d,fullWidth:!0,onClick:async()=>{n(!0),await o(),n(!1)},children:Zr(jl,{$backgroundColor:d[1],children:[Qe(oc,{children:Qe(Jr,{icon:p})}),Zr(ec,{children:[Qe(qr,{variant:"bodyL",weight:"medium",children:c}),Qe(tc,{children:Qe(qr,{variant:"bodyXS",weight:"medium",children:u})})]}),a?Qe(Ql,{size:16}):Qe(nc,{icon:"chevronUp"})]})})},Jl=ot(zl)`
134
+ `;import{CpslButton as kl,CpslText as Bl}from"@getpara/react-components";import{jsx as an,jsxs as sn}from"react/jsx-runtime";var $r=({onClose:e})=>{let t=w(o=>o.hideWallets);return sn(P,{children:[an(Ge,{icon:"checkCircleFilled"}),sn(O,{children:[an(X,{variant:"headingXS",weight:"semiBold",children:"Success"}),sn(Bl,{variant:"bodyS",color:"secondary",weight:"medium",children:["Your ",t?"account":"wallet"," is now protected by 2FA"]})]}),an(kl,{fullWidth:!0,onClick:e,children:"Done"})]})};import{CpslButton as ln,CpslDivider as Xl,CpslIcon as cn,CpslQrCode as zl,CpslSpinner as Ql,CpslText as qr}from"@getpara/react-components";import{useCopyToClipboard as ql,UserIdentifier as Zl}from"@getpara/react-common";var $e={LOGGIN_POLLING_DELAY_MS:5e3,POLLING_INTERVAL_MS:2e3,ANIMATION_DURATION:.15};import{createContext as Hl,useCallback as Kr,useContext as to,useEffect as Gl,useMemo as Et,useState as Yr}from"react";import{WalletType as ye,isIOS as Vl,isIOSWebview as $l,isMobile as eo,truncateAddress as Xr}from"@getpara/web-sdk";import{jsx as Yl}from"react/jsx-runtime";var Kl={wallets:[],chains:[],chainId:void 0,wallet:void 0,qrUri:void 0,chainIdSwitchingTo:void 0,walletDisplayHelpers:{showExtension:!1,showMobile:!1,isSolanaMobileIOS:!1,isCosmosMobileWallet:!1},username:void 0,avatar:void 0,connectExternalWallet:()=>{},disconnectExternalWallet:()=>Promise.resolve(),switchChain:()=>Promise.resolve(),setChainIdSwitchingTo:()=>{}},zr=Hl(Kl);function Qr({children:e,evmContext:t,solanaContext:o,cosmosContext:a,walletSort:n}){let{wallets:r,disconnect:s,chains:l,chainId:c,switchChain:d,username:p,avatar:C}=to(t),{wallets:f,disconnect:u}=to(o),{wallets:A,disconnect:S,chains:h,chainId:U,switchChain:I}=to(a),b=i(N=>N.setStep),T=i(N=>N.setStepDirection),M=i(N=>N.setIsExternalWalletConnecting),x=i(N=>N.isExternalWalletConnecting),W=i(N=>N.setSelectedExternalWalletId),g=i(N=>N.selectedExternalWalletId),y=i(N=>N.setExternalWalletError),D=i(N=>N.setIsUsingMobileConnector),R=i(N=>N.isUsingMobileConnector),E=v(),[V,_]=Yr(),[q,Z]=Yr(),ce=[...r,...f,...A].filter(N=>n.includes(N.id.toUpperCase())).sort((N,ne)=>n.indexOf(N.id.toUpperCase())-n.indexOf(ne.id.toUpperCase())).sort((N,ne)=>N.installed===ne.installed?0:N.installed?-1:1),$=Et(()=>ce.find(N=>N.id===g),[ce,g]),m=async()=>{let N=await $?.getQrUri?.();_(N)};Gl(()=>{$?V||m():V&&_(void 0)},[$]);let F=Et(()=>{switch(E.externalWallets[E.currentExternalWalletAddresses?.[0]??""]?.type){case ye.COSMOS:return h;case ye.EVM:return l;default:return[]}},[h,l,g]),H=Et(()=>{switch(E.externalWallets[E.currentExternalWalletAddresses?.[0]??""]?.type){case ye.COSMOS:return U;case ye.EVM:return c?.toString();default:return}},[h,l,g]),J=Kr(async N=>{let ne=E.externalWallets[E.currentExternalWalletAddresses?.[0]??""]?.type;if(ne){let Ce;switch(y(),Z(N),ne){case ye.COSMOS:{b("CHAIN_SWITCH"),Ce=await I(N);break}case ye.EVM:{b("CHAIN_SWITCH"),Ce=await d(parseInt(N));break}default:break}Ce.error?y(Ce.error):(Z(void 0),T(-1),b("ACCOUNT_MAIN"))}},[d,I]),k=Kr(async(N,ne,Ce,ko)=>{if(x&&Ce&&(await s(),await u(),await S(),_(void 0),M(!1)),ko||Ce||!x){y(),M(!0),D(ne);let{address:Wt,error:ve}=await(ne?N.connectMobile(Ce):N.connect());if(ve){if(y([ve]),D(),Ce&&ve==="Connection request rejected"){y(),await k(N,!1,!1,!0),await m();return}}else Wt&&b("LOGIN_DONE");M(!1)}},[x]),pe=async()=>{await s(),await u(),await S(),W()},me={showExtension:!eo()&&($?.isExtension&&$?.installed||!$?.isMobile||$?.type===ye.SOLANA),showMobile:eo()&&$?.isMobile||!eo()&&!$?.installed,isSolanaMobileIOS:Vl()&&eo()&&!$l()&&$?.type===ye.SOLANA,isCosmosMobileWallet:$?.type===ye.COSMOS&&R},lt=Et(()=>{let N,ne=E.externalWallets[E.currentExternalWalletAddresses?.[0]??""];if(ne)switch(ne?.type){case ye.EVM:{N=p?p.startsWith("0x")?Xr(p,"EVM"):p:void 0;break}default:{N=ne.address?Xr(ne.address,ne.type):void 0;break}}return N},[p,$]),ie=Et(()=>{let N=E.externalWallets[E.currentExternalWalletAddresses?.[0]??""]?.type;if(N)switch(N){case ye.EVM:return C;default:return}},[C,$]);return Yl(zr.Provider,{value:Et(()=>({wallets:ce,chains:F,chainId:H,wallet:$,qrUri:V,walletDisplayHelpers:me,chainIdSwitchingTo:q,username:lt,avatar:ie,connectExternalWallet:k,disconnectExternalWallet:pe,switchChain:J,setChainIdSwitchingTo:Z}),[ce,F,H,$,V,me,q,lt,ie,pe,k,J,Z]),children:e})}var Y=()=>to(zr);var he=()=>{let e=i(l=>l.step),t=i(l=>l.setStep),o=i(l=>l.accountAddFundTab),a=i(l=>l.decrementStep),n=i(l=>l.resetState),{setChainIdSwitchingTo:r}=Y();return()=>{switch(e==="ADD_FUNDS_AWAITING"?t(ct(o)):a(),e){case"AUTH_MAIN":case"AUTH_MORE":{n();break}case"CHAIN_SWITCH":{r();break}}}};function oo(){let e=v(),t=he(),o=i(c=>c.refs),a=i(c=>c.setStep),n=i(c=>c.webAuthURLForCreate),r=i(c=>c.setWebAuthURLForCreate),s=i(c=>c.setIFrameUrl),l=async()=>{let c=await e.waitForAccountCreation({popupWindow:o.popupWindow.current});window.clearTimeout(o.poll.current?.timeout),o.poll.current=void 0,o.popupWindow.current=void 0,c?(r(""),s(""),a("AWAITING_WALLET_CREATION")):o.currentStep.current==="AWAITING_BIOMETRIC_CREATION"&&t()};return{withPasskey:()=>{o.poll.current?.action!=="createPasskey"&&(clearTimeout(o.poll.current?.timeout),o.popupWindow.current=Ze({url:n,target:"ParaPasskey",type:"CREATE_PASSKEY",current:o.popupWindow.current}),o.poll.current={action:"createPasskey",timeout:window.setTimeout(l,$e.POLLING_INTERVAL_MS)},o.currentStep.current!=="AWAITING_BIOMETRIC_CREATION"&&a("AWAITING_BIOMETRIC_CREATION"))},withPassword:()=>{o.poll.current?.action!=="createPassword"&&(clearTimeout(o.poll.current?.timeout),o.poll.current={action:"createPassword",timeout:window.setTimeout(l,$e.POLLING_INTERVAL_MS)},o.currentStep.current!=="PASSWORD_CREATION"&&a("PASSWORD_CREATION"))}}}import{isPasskeySupported as Jl}from"@getpara/web-sdk";import{Fragment as Zr,jsx as xe,jsxs as Ke}from"react/jsx-runtime";var Jr=()=>{let e=oo(),t=i(c=>c.webAuthURLForCreate),o=i(c=>c.iFrameUrl),a=K(c=>c.getAuthInfo()),[n,r]=ql(),s=()=>{r(t)},l=!!t&&!!o;return Ke(P,{$wide:!0,children:[Ke(O,{children:[xe(X,{variant:"headingS",weight:"bold",children:l?"Secure Your Account":"Create Passkey"}),xe(Zl,{...a}),xe(qr,{variant:"bodyS",color:"secondary",weight:"medium",children:l?"Choose a password or set up a passkey":"Your Passkey keeps your account safe."})]}),Ke(O,{children:[Jl()?Ke(ln,{fullWidth:!0,onClick:e.withPasskey,children:[xe(cn,{slot:"start",icon:"key"}),l?"Create Passkey":"Create"]}):Ke(Zr,{children:[xe(qr,{weight:"semiBold",children:"Scan with your mobile device"}),xe(Ae,{children:t?xe(zl,{url:t}):xe(Ql,{size:100})}),Ke(ln,{size:"small",variant:"ghost",onClick:s,children:[xe(cn,{slot:"start",icon:n?"check":"copy"}),n?"Copied":"Copy Link"]})]}),l&&Ke(Zr,{children:[xe(Xl,{children:"or"}),Ke(ln,{fullWidth:!0,onClick:e.withPassword,children:[xe(cn,{slot:"start",icon:"passcode"}),"Choose Password"]})]})]})]})};import{jsx as jl}from"react/jsx-runtime";var jr=()=>jl(Ve,{heading:"Complete Login",subheading:"Follow the prompts presented by your browser."});import{EnabledFlow as ot,getOnRampAssets as fc,getOnRampNetworks as Ac,OnRampProvider as Sc,OnRampPurchaseType as io,toAssetInfoArray as Ec,WalletType as fn}from"@getpara/web-sdk";import{CpslButton as hc,CpslDivider as Tc,CpslIcon as sa,CpslIdenticon as Ic,CpslQrCode as gc,CpslSpinner as la,CpslTab as yc,CpslTabs as xc,CpslText as da}from"@getpara/react-components";import{useEffect as An,useMemo as ca}from"react";import{useState as nc}from"react";import{Network as _e,OnRampAsset as Re,OnRampMethod as De,OnRampProvider as pn}from"@getpara/core-sdk";var dn="https://connect.getpara.com/",ea="https://getpara.com/terms",un={[pn.STRIPE]:{name:"Stripe",feeLower:.99,feeUpper:4.49,methods:[De.ACH,De.DEBIT,De.CREDIT],icon:"stripeBrand",backgroundColors:["#6772E5","#808AF4"]},[pn.RAMP]:{name:"Ramp",feeLower:.99,feeUpper:4.49,methods:[De.ACH,De.DEBIT,De.CREDIT],icon:"rampNetworkBrand",backgroundColors:["#21BF73","#3AE492"]},[pn.MOONPAY]:{name:"MoonPay",feeLower:1,feeUpper:4.5,methods:[De.ACH,De.DEBIT,De.CREDIT],icon:"moonpayBrand",backgroundColors:["#7715F5","#9647fd"]}},mn={[_e.ETHEREUM]:{name:"Ethereum",icon:"ethereum"},[_e.SEPOLIA]:{name:"Sepolia",icon:"ethereum"},[_e.ARBITRUM]:{name:"Arbitrum",icon:"arbitrumBrand"},[_e.BASE]:{name:"Base",icon:"baseBrand"},[_e.OPTIMISM]:{name:"Optimism",icon:"optimismBrand"},[_e.POLYGON]:{name:"Polygon",icon:"polygonBrand"},[_e.SOLANA]:{name:"Solana",icon:"solana"},[_e.COSMOS]:{name:"Cosmos",icon:"cosmos"},[_e.CELO]:{name:"Celo",icon:"celoBrand"},[_e.NOBLE]:{name:"Noble",icon:"nobleBrand"}},Cn={[Re.ETHEREUM]:{name:"Ethereum",code:"ETH",icon:"ethereum"},[Re.USDC]:{name:"USDC",code:"USDC",icon:"usdcBrand"},[Re.POLYGON]:{name:"Polygon",code:"MATIC",icon:"polygonBrand"},[Re.SOLANA]:{name:"Solana",code:"SOL",icon:"solana"},[Re.ATOM]:{name:"Atom",code:"ATOM",icon:"cosmos"},[Re.CELO]:{name:"Celo",code:"CELO",icon:"celoBrand"},[Re.TETHER]:{name:"Tether",code:"USDT",icon:"tetherBrand"},[Re.CUSD]:{name:"Celo Dollar",code:"CUSD",icon:"celoBrand"},[Re.CEUR]:{name:"Celo Euro",code:"CEUR",icon:"celoBrand"},[Re.CREAL]:{name:"Celo Real",code:"CREAL",icon:"celoBrand"}};function Nt(e){return mn[e]?.name??`${e[0]}${e.slice(1).toLowerCase()}`}function ec(e){return mn[e]?.icon??"globe"}function tc(e){return Cn[e]?.code??e}function oc(e){return Cn[e]?.icon??"emptyCircle"}var Ye=480,no="network not supported",ta=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|.(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,ro={enter:e=>({scale:e>0?.9:1.1,opacity:0}),center:{scale:1,opacity:1},exit:e=>({scale:e<0?.9:1.1,opacity:0})},ao={duration:.2};import et from"styled-components";import{CpslButton as rc,CpslIcon as ra,CpslSpinner as ac,CpslText as ic}from"@getpara/react-components";import{motion as sc}from"framer-motion";import{jsx as Xe,jsxs as na}from"react/jsx-runtime";var aa=({config:e,index:t,onClick:o})=>{let[a,n]=nc(!1),r=e.providers[t],{feeLower:s,feeUpper:l,name:c,icon:d,backgroundColors:p}=un[r],C=`Fee ${s}% - ${l}%`;return Xe(lc,{$gradientColors:p,fullWidth:!0,onClick:async()=>{n(!0),await o(),n(!1)},children:na(cc,{$backgroundColor:p[1],children:[Xe(uc,{children:Xe(ra,{icon:d})}),na(pc,{children:[Xe(oa,{variant:"bodyL",weight:"medium",children:c}),Xe(dc,{children:Xe(oa,{variant:"bodyXS",weight:"medium",children:C})})]}),a?Xe(ac,{size:16}):Xe(mc,{icon:"chevronUp"})]})})},lc=et(rc)`
135
135
  width: 100%;
136
136
  --button-primary-background-color: ${({$gradientColors:e})=>`linear-gradient(90deg, ${e[0]} 0%, ${e[1]} 100%)`};
137
137
  --button-primary-hover-background-color: ${({$gradientColors:e})=>`linear-gradient(90deg, ${e[0]} 0%, ${e[0]} 100%)`};
138
138
  --button-primary-active-background-color: ${({$gradientColors:e})=>`linear-gradient(90deg, ${e[0]} 0%, ${e[0]} 100%)`};
139
- `,jl=ot(Zl.div)`
139
+ `,cc=et(sc.div)`
140
140
  display: flex;
141
141
  gap: 8px;
142
142
  flex: 1;
@@ -145,16 +145,16 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
145
145
  & cpsl-spinner {
146
146
  --background-color: ${({$backgroundColor:e})=>`${e}`};
147
147
  }
148
- `,ec=ot.div`
148
+ `,pc=et.div`
149
149
  flex: 1;
150
150
  display: flex;
151
151
  flex-direction: column;
152
152
  align-items: start;
153
153
  gap: 2px;
154
- `,tc=ot.div`
154
+ `,dc=et.div`
155
155
  display: flex;
156
156
  gap: 16px;
157
- `,oc=ot.span`
157
+ `,uc=et.span`
158
158
  display: flex;
159
159
  align-items: center;
160
160
  justify-content: center;
@@ -162,19 +162,19 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
162
162
  border-radius: 100%;
163
163
  height: 48px;
164
164
  width: 48px;
165
- `,qr=ot(ql)`
165
+ `,oa=et(ic)`
166
166
  &::part(text-element) {
167
167
  color: #fff;
168
168
  }
169
- `,nc=ot(Jr)`
169
+ `,mc=et(ra)`
170
170
  transform: rotate(90deg);
171
171
  --icon-color: #fff;
172
- `;import{isMobile as Ic}from"@getpara/web-sdk";import{useMemo as rc}from"react";function nt(){let e=b(),{selectedWallet:t}=Ce();return rc(()=>e.findWallet(t.id,t.type,{forbidPregen:!0}),[e,t])}import{motion as gc,AnimatePresence as yc}from"framer-motion";import{createContext as ac,useCallback as ea,useContext as so,useEffect as ic,useMemo as It,useState as ta}from"react";import{WalletType as we,isIOS as sc,isIOSWebview as lc,isMobile as io,truncateAddress as oa}from"@getpara/web-sdk";import{jsx as dc}from"react/jsx-runtime";var cc={wallets:[],chains:[],chainId:void 0,wallet:void 0,qrUri:void 0,chainIdSwitchingTo:void 0,walletDisplayHelpers:{showExtension:!1,showMobile:!1,isSolanaMobileIOS:!1,isCosmosMobileWallet:!1},username:void 0,avatar:void 0,connectExternalWallet:()=>{},disconnectExternalWallet:()=>Promise.resolve(),switchChain:()=>Promise.resolve(),setChainIdSwitchingTo:()=>{}},na=ac(cc);function ra({children:e,evmContext:t,solanaContext:o,cosmosContext:a,walletSort:n}){let{wallets:i,disconnect:l,chains:r,chainId:c,switchChain:p,username:d,avatar:u}=so(t),{wallets:A,disconnect:m}=so(o),{wallets:f,disconnect:S,chains:y,chainId:D,switchChain:W}=so(a),E=s(I=>I.setStep),h=s(I=>I.setStepDirection),R=s(I=>I.setIsExternalWalletConnecting),C=s(I=>I.isExternalWalletConnecting),L=s(I=>I.setSelectedExternalWalletId),T=s(I=>I.selectedExternalWalletId),g=s(I=>I.setExternalWalletError),U=s(I=>I.setIsUsingMobileConnector),x=s(I=>I.isUsingMobileConnector),P=b(),[K,M]=ta(),[ne,ae]=ta(),ce=[...i,...A,...f].filter(I=>n.includes(I.id.toUpperCase())).sort((I,B)=>n.indexOf(I.id.toUpperCase())-n.indexOf(B.id.toUpperCase())).sort((I,B)=>I.installed===B.installed?0:I.installed?-1:1),Y=It(()=>ce.find(I=>I.id===T),[ce,T]),N=async()=>{let I=await Y?.getQrUri?.();M(I)};ic(()=>{Y?K||N():K&&M(void 0)},[Y]);let Q=It(()=>{switch(P.externalWallets[P.currentExternalWalletAddresses?.[0]??""]?.type){case we.COSMOS:return y;case we.EVM:return r;default:return[]}},[y,r,T]),te=It(()=>{switch(P.externalWallets[P.currentExternalWalletAddresses?.[0]??""]?.type){case we.COSMOS:return D;case we.EVM:return c?.toString();default:return}},[y,r,T]),H=ea(async I=>{let B=P.externalWallets[P.currentExternalWalletAddresses?.[0]??""]?.type;if(B){let q;switch(g(),ae(I),B){case we.COSMOS:{E("CHAIN_SWITCH"),q=await W(I);break}case we.EVM:{E("CHAIN_SWITCH"),q=await p(parseInt(I));break}default:break}q.error?g(q.error):(ae(void 0),h(-1),E("ACCOUNT_MAIN"))}},[p,W]),de=ea(async(I,B,q,pe)=>{if(C&&q&&(await l(),await m(),await S(),M(void 0),R(!1)),pe||q||!C){g(),R(!0),U(B);let{address:ue,error:me}=await(B?I.connectMobile(q):I.connect());if(me){if(g([me]),U(),q&&me==="Connection request rejected"){g(),await de(I,!1,!1,!0),await N();return}}else ue&&E("LOGIN_DONE");R(!1)}},[C]),De=async()=>{await l(),await m(),await S(),L()},pt={showExtension:!io()&&(Y?.isExtension&&Y?.installed||!Y?.isMobile||Y?.type===we.SOLANA),showMobile:io()&&Y?.isMobile||!io()&&!Y?.installed,isSolanaMobileIOS:sc()&&io()&&!lc()&&Y?.type===we.SOLANA,isCosmosMobileWallet:Y?.type===we.COSMOS&&x},Ue=It(()=>{let I,B=P.externalWallets[P.currentExternalWalletAddresses?.[0]??""];if(B)switch(B?.type){case we.EVM:{I=d?d.startsWith("0x")?oa(d,"EVM"):d:void 0;break}default:{I=B.address?oa(B.address,B.type):void 0;break}}return I},[d,Y]),w=It(()=>{let I=P.externalWallets[P.currentExternalWalletAddresses?.[0]??""]?.type;if(I)switch(I){case we.EVM:return u;default:return}},[u,Y]);return dc(na.Provider,{value:It(()=>({wallets:ce,chains:Q,chainId:te,wallet:Y,qrUri:K,walletDisplayHelpers:pt,chainIdSwitchingTo:ne,username:Ue,avatar:w,connectExternalWallet:de,disconnectExternalWallet:De,switchChain:H,setChainIdSwitchingTo:ae}),[ce,Q,te,Y,K,pt,ne,Ue,w,De,de,H,ae]),children:e})}var $=()=>so(na);import{getNetworkFromChainId as xc,getNetworkOrMainNetEquivalent as wc,useCopyToClipboard as Wc}from"@getpara/react-common";import{format as Eh}from"date-fns";var aa=e=>e.length===1?bt(e[0]):`${e.map(t=>bt(t)).slice(0,-1).join(", ")}${e.length>2?",":""} and ${bt(e[e.length-1])}`;import En from"styled-components";import{Fragment as co,jsx as ee,jsxs as We}from"react/jsx-runtime";var ca=[[rt.BUY,"isBuyEnabled","creditCard","Buy"],[rt.RECEIVE,"isReceiveEnabled","qrCode","Receive"],[rt.WITHDRAW,"isWithdrawEnabled","arrowCircleBrokenDownLeft","Withdraw"]],_c={[An.EVM]:"Ethereum or EVM-based L2s",[An.SOLANA]:"Solana",[An.COSMOS]:"Cosmos"},pa=()=>{let[e,t]=Wc(),o=b(),a=_(h=>h.appName),n=s(h=>h.onRampConfig),i=_(h=>h.hideWallets),l=s(h=>h.accountAddFundTab),r=s(h=>h.setStep),c=s(h=>h.setOnRampPurchase),{chainId:p}=$(),d=nt(),u=ca.filter(([,h])=>!!n[h]),A=u.length>1,m=l??u[0][0],f=la(()=>d?o.getDisplayAddress(d.id,{addressType:d.type}):"",[o,d?.id,d?.type]),S=h=>{r(ut(h.detail.tab))},y=()=>{t(f)},[D,W,E]=la(()=>{if(!n||!d)return[[],[],{}];let h=m===rt.BUY?lo.BUY:lo.SELL,R=xc(p),L=d.isExternal&&!!R?[wc(R,n.testMode)]:uc(n.assetInfo,{walletType:d.type,allowed:n.allowedAssets?Object.keys(n.allowedAssets):void 0}),T=L.reduce((U,x)=>{let P=n.allowedAssets?.[x],K=P===!0?void 0:P;return{...U,[x]:pc(n.assetInfo,{walletType:d.type,network:x,allowed:K})}},{}),g=n.providers.reduce((U,x)=>{let P=Cc(n.assetInfo).some(([K,M,ne,ae])=>K===d.type&&L.includes(M)&&(!T[M]||T[M].includes(ne))&&!!ae[x]?.[1]?.[h]);return{...U,[x]:P}},{});return[L,[...new Set(Object.values(T).flat())],g]},[d?.type,d?.isExternal,m,n.assetInfo,n.allowedAssets,p]);return Sn(()=>{c(void 0)},[]),Sn(()=>{c(void 0)},[]),!n||!d?ee(Rc,{children:ee(sa,{})}):(Sn(()=>{c(void 0)},[]),We(F,{children:[A&&ee(O,{children:ee(Tc,{selectedTab:m,onCpslTabsChanged:S,children:ca.map(([h,R,C,L])=>We(hc,{tab:h,children:[ee(ia,{slot:"start",icon:C}),L]},h))})}),ee(co,{children:[rt.BUY,rt.WITHDRAW].includes(m)?We(co,{children:[ee(X,{variant:"headingS",weight:"bold",children:"Choose Provider"}),We(Lc,{children:[We(Mc,{isHidden:Object.values(E).some(h=>!!h),variant:"bodyM",children:["No providers are available for this ",i?"account":"wallet"]}),ee(yc,{children:n.providers.map((h,R)=>E[h]?ee(gc.div,{style:{width:"100%"},layout:!0,initial:{opacity:0,transform:"translateX(25px)"},animate:{opacity:1,transform:"none"},exit:{opacity:0,transform:"translateX(-25px)"},transition:{duration:.2},children:ee(jr,{config:n,index:R,onClick:async()=>{if(!d?.type)return;let C=h!==mc.RAMP,{onRampPurchase:L}=await o.initiateOnRampTransaction({walletId:d.isExternal?void 0:d.id,externalWalletAddress:d.isExternal?d.id:void 0,shouldOpenPopup:C,params:{type:m===rt.BUY?lo.BUY:lo.SELL,walletType:d.type,provider:h,networks:D,assets:W,defaultNetwork:n.defaultOnRampNetwork,defaultAsset:n.defaultOnRampAsset,fiatQuantity:n.defaultBuyAmount?.[0],testMode:n.testMode}});c({...L,fiat:"USD"}),!C&&r("ADD_FUNDS_AWAITING")}},h)},h):null)})]})]}):We(co,{children:[ee(O,{children:We(Mt,{noAutoDisable:!0,readonly:!0,placeholder:f,children:[ee(Sc,{slot:"start",size:"32px",hash:o.getIdenticonHash(d.id,d.type)}),ee(fc,{slot:"end",variant:"ghost",onClick:y,children:ee(ia,{icon:e?"check":"copy"})})]},f)}),!Ic()&&We(co,{children:[ee(Ac,{children:"or"}),We(O,{children:[ee(Se,{children:f?ee(Ec,{url:f},f):ee(sa,{size:100})}),ee(da,{weight:"semiBold",color:"secondary",children:"Scan with your crypto wallet"})]})]}),We(O,{children:[We(ie,{weight:"semiBold",children:[n.allowedAssets&&D.length>0||i?a??"This App":"This Wallet"," ","Only Supports:"]}),ee(ie,{weight:"medium",color:"secondary",children:n.allowedAssets&&D.length>0?aa(D):_c[d.type]})]})]})})]}))},Rc=En(F)`
172
+ `;import{isMobile as wc}from"@getpara/web-sdk";import{useMemo as Cc}from"react";function tt(){let e=v(),{selectedWallet:t}=de();return Cc(()=>e.findWallet(t.id,t.type,{forbidPregen:!0}),[e,t])}import{motion as Wc,AnimatePresence as _c}from"framer-motion";import{getNetworkFromChainId as Rc,getNetworkOrMainNetEquivalent as Lc,useCopyToClipboard as Mc}from"@getpara/react-common";import{format as Nh}from"date-fns";var ia=e=>e.length===1?Nt(e[0]):`${e.map(t=>Nt(t)).slice(0,-1).join(", ")}${e.length>2?",":""} and ${Nt(e[e.length-1])}`;import Sn from"styled-components";import{Fragment as so,jsx as te,jsxs as we}from"react/jsx-runtime";var pa=[[ot.BUY,"isBuyEnabled","creditCard","Buy"],[ot.RECEIVE,"isReceiveEnabled","qrCode","Receive"],[ot.WITHDRAW,"isWithdrawEnabled","arrowCircleBrokenDownLeft","Withdraw"]],Oc={[fn.EVM]:"Ethereum or EVM-based L2s",[fn.SOLANA]:"Solana",[fn.COSMOS]:"Cosmos"},ua=()=>{let[e,t]=Mc(),o=v(),a=w(T=>T.appName),n=i(T=>T.onRampConfig),r=w(T=>T.hideWallets),s=i(T=>T.accountAddFundTab),l=i(T=>T.setStep),c=i(T=>T.setOnRampPurchase),{chainId:d}=Y(),p=tt(),C=pa.filter(([,T])=>!!n[T]),f=C.length>1,u=s??C[0][0],A=ca(()=>p?o.getDisplayAddress(p.id,{addressType:p.type}):"",[o,p?.id,p?.type]),S=T=>{l(ct(T.detail.tab))},h=()=>{t(A)},[U,I,b]=ca(()=>{if(!n||!p)return[[],[],{}];let T=u===ot.BUY?io.BUY:io.SELL,M=Rc(d),W=p.isExternal&&!!M?[Lc(M,n.testMode)]:Ac(n.assetInfo,{walletType:p.type,allowed:n.allowedAssets?Object.keys(n.allowedAssets):void 0}),g=W.reduce((D,R)=>{let E=n.allowedAssets?.[R],V=E===!0?void 0:E;return{...D,[R]:fc(n.assetInfo,{walletType:p.type,network:R,allowed:V})}},{}),y=n.providers.reduce((D,R)=>{let E=Ec(n.assetInfo).some(([V,_,q,Z])=>V===p.type&&W.includes(_)&&(!g[_]||g[_].includes(q))&&!!Z[R]?.[1]?.[T]);return{...D,[R]:E}},{});return[W,[...new Set(Object.values(g).flat())],y]},[p?.type,p?.isExternal,u,n.assetInfo,n.allowedAssets,d]);return An(()=>{c(void 0)},[]),An(()=>{c(void 0)},[]),!n||!p?te(Nc,{children:te(la,{})}):(An(()=>{c(void 0)},[]),we(P,{children:[f&&te(O,{children:te(xc,{selectedTab:u,onCpslTabsChanged:S,children:pa.map(([T,M,x,W])=>we(yc,{tab:T,children:[te(sa,{slot:"start",icon:x}),W]},T))})}),te(so,{children:[ot.BUY,ot.WITHDRAW].includes(u)?we(so,{children:[te(X,{variant:"headingS",weight:"bold",children:"Choose Provider"}),we(vc,{children:[we(bc,{isHidden:Object.values(b).some(T=>!!T),variant:"bodyM",children:["No providers are available for this ",r?"account":"wallet"]}),te(_c,{children:n.providers.map((T,M)=>b[T]?te(Wc.div,{style:{width:"100%"},layout:!0,initial:{opacity:0,transform:"translateX(25px)"},animate:{opacity:1,transform:"none"},exit:{opacity:0,transform:"translateX(-25px)"},transition:{duration:.2},children:te(aa,{config:n,index:M,onClick:async()=>{if(!p?.type)return;let x=T!==Sc.RAMP,{onRampPurchase:W}=await o.initiateOnRampTransaction({walletId:p.isExternal?void 0:p.id,externalWalletAddress:p.isExternal?p.id:void 0,shouldOpenPopup:x,params:{type:u===ot.BUY?io.BUY:io.SELL,walletType:p.type,provider:T,networks:U,assets:I,defaultNetwork:n.defaultOnRampNetwork,defaultAsset:n.defaultOnRampAsset,fiatQuantity:n.defaultBuyAmount?.[0],testMode:n.testMode}});c({...W,fiat:"USD"}),!x&&l("ADD_FUNDS_AWAITING")}},T)},T):null)})]})]}):we(so,{children:[te(O,{children:we(Rt,{noAutoDisable:!0,readonly:!0,placeholder:A,children:[te(Ic,{slot:"start",size:"32px",hash:o.getIdenticonHash(p.id,p.type)}),te(hc,{slot:"end",variant:"ghost",onClick:h,children:te(sa,{icon:e?"check":"copy"})})]},A)}),!wc()&&we(so,{children:[te(Tc,{children:"or"}),we(O,{children:[te(Ae,{children:A?te(gc,{url:A},A):te(la,{size:100})}),te(da,{weight:"semiBold",color:"secondary",children:"Scan with your crypto wallet"})]})]}),we(O,{children:[we(ae,{weight:"semiBold",children:[n.allowedAssets&&U.length>0||r?a??"This App":"This Wallet"," ","Only Supports:"]}),te(ae,{weight:"medium",color:"secondary",children:n.allowedAssets&&U.length>0?ia(U):Oc[p.type]})]})]})})]}))},Nc=Sn(P)`
173
173
  margin: 50% 0;
174
- `,Lc=En(O)`
174
+ `,vc=Sn(O)`
175
175
  position: relative;
176
176
  min-height: 270px;
177
- `,Mc=En(da)`
177
+ `,bc=Sn(da)`
178
178
  width: 100%;
179
179
  text-align: center;
180
180
  visibility: ${({isHidden:e})=>e?"hidden":"visible"};
@@ -183,9 +183,9 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
183
183
  left: 0;
184
184
  right: 0;
185
185
  transition: visibility 0.2s;
186
- `;import{OnRampProvider as hn}from"@getpara/web-sdk";import{lazy as Oc,useEffect as ua,useMemo as Nc,useState as vc}from"react";import{RampEmbed as bc,StripeEmbed as Dc}from"@getpara/react-common";import Uc from"styled-components";var Me=()=>{let e=s(r=>r.step),t=s(r=>r.setStep),o=s(r=>r.accountAddFundTab),a=s(r=>r.decrementStep),n=s(r=>r.resetState),{setChainIdSwitchingTo:i}=$();return()=>{switch(e==="ADD_FUNDS_AWAITING"?t(ut(o)):a(),e){case"VERIFY_2FA":case"BIOMETRIC_CREATION":case"BIOMETRIC_LOGIN":{n();break}}switch(e){case"CHAIN_SWITCH":{i();break}}}};import{jsx as po}from"react/jsx-runtime";var Pc={CANCELLED:"ADD_FUNDS_FAILURE",FINISHED:"ADD_FUNDS_SUCCESS"},ma=()=>{let e=s(A=>A.setStep),t=Me(),o=s(A=>A.onRampConfig),a=s(A=>A.onRampPurchase),n=s(A=>A.setOnRampPurchase),i=b(),l=_(A=>A.appName),r=_(A=>A.isDark),[c,p]=vc(null),d={para:i,appName:l,onRampConfig:o,onRampPurchase:a,isDark:r,isEmbedded:!0,setOnRampPurchase:n,onClose:t};ua(()=>{let A=Oc(()=>import("./MoonPayEmbed-GAWXP6V7.js"));p(A)},[]);let u=Nc(()=>{if(!a.id)return null;switch(a?.provider){case hn.STRIPE:return po(Dc,{...d});case hn.MOONPAY:return!c||typeof window>"u"?null:po(c,{...d});case hn.RAMP:return po(bc,{apiKey:o.rampApiKey,...d})}},[a?.provider,c]);return ua(()=>{let A;return a?.status&&["CANCELLED","FINISHED"].includes(a.status)&&(A=setTimeout(()=>{e(Pc[a.status])},5e3)),()=>clearTimeout(A)},[a?.status]),po(Fc,{$wide:!0,children:u})},Fc=Uc(F)`
186
+ `;import{OnRampProvider as En}from"@getpara/web-sdk";import{lazy as Dc,useEffect as ma,useMemo as Uc,useState as Pc}from"react";import{RampEmbed as Fc,StripeEmbed as kc}from"@getpara/react-common";import Bc from"styled-components";import{jsx as lo}from"react/jsx-runtime";var Hc={CANCELLED:"ADD_FUNDS_FAILURE",FINISHED:"ADD_FUNDS_SUCCESS"},Ca=()=>{let e=i(f=>f.setStep),t=he(),o=i(f=>f.onRampConfig),a=i(f=>f.onRampPurchase),n=i(f=>f.setOnRampPurchase),r=v(),s=w(f=>f.appName),l=w(f=>f.isDark),[c,d]=Pc(null),p={para:r,appName:s,onRampConfig:o,onRampPurchase:a,isDark:l,isEmbedded:!0,setOnRampPurchase:n,onClose:t};ma(()=>{let f=Dc(()=>import("./MoonPayEmbed-GAWXP6V7.js"));d(f)},[]);let C=Uc(()=>{if(!a.id)return null;switch(a?.provider){case En.STRIPE:return lo(kc,{...p});case En.MOONPAY:return!c||typeof window>"u"?null:lo(c,{...p});case En.RAMP:return lo(Fc,{apiKey:o.rampApiKey,...p})}},[a?.provider,c]);return ma(()=>{let f;return a?.status&&["CANCELLED","FINISHED"].includes(a.status)&&(f=setTimeout(()=>{e(Hc[a.status])},5e3)),()=>clearTimeout(f)},[a?.status]),lo(Gc,{$wide:!0,children:C})},Gc=Bc(P)`
187
187
  flex: 1;
188
- `;import{useMemo as kc}from"react";import{CpslButton as Bc,CpslText as Hc}from"@getpara/react-components";import{jsx as uo,jsxs as Ca}from"react/jsx-runtime";var Tn=({isSuccess:e,onClose:t})=>{let o=_(d=>d.hideWallets),a=s(d=>d.setStep),n=s(d=>d.onRampPurchase),i=s(d=>d.accountAddFundTab),l=kc(()=>new Intl.NumberFormat("en-US",{style:"currency",currency:n?.fiat||"USD"}),[n?.fiat]),r=e?"Transaction Successful":"Something Went Wrong",c=e?`${l.format(parseFloat(n?.fiatQuantity))} is now available in your ${o?"account":"wallet"}.`:`No funds were added to your ${o?"account":"wallet"}.`;return Ca(F,{children:[uo(Ke,{icon:"checkCircleFilled"}),Ca(O,{children:[uo(X,{variant:"headingS",weight:"bold",children:r}),uo(Hc,{variant:"bodyS",color:"secondary",children:c})]}),uo(Bc,{fullWidth:!0,onClick:()=>{e?t():a(ut(i))},children:e?"Done":"Try Again"})]})};import{useEffect as fa,useState as Gc}from"react";import{CpslButton as Vc,CpslIcon as $c,CpslQrCode as Kc,CpslSpinner as Yc,CpslText as Xc}from"@getpara/react-components";import{AuthMethod as In,isMobile as zc}from"@getpara/web-sdk";import{Fragment as qc,jsx as qe,jsxs as mo}from"react/jsx-runtime";var Qc=()=>{let e=V(S=>S.setAuthInfo),t=s(S=>S.setStep),o=s(S=>S.setWebAuthURLForCreate),a=s(S=>S.setIFrameUrl),n=s(S=>S.setIsIFrameReady),i=s(S=>S.isIFrameReady),l=s(S=>S.setSupportedAuthMethods),r=s(S=>S.setBiometricLocationHints),c=b(),p=s(S=>S.setFlow),d=s(S=>S.farcasterConnectUri),u=s(S=>S.setFarcasterConnectUri),A=_(S=>S.theme),[m,f]=Gc();return fa(()=>{m&&i&&setTimeout(()=>{t(m)},200)},[m,i]),fa(()=>{if(d)return(async()=>{let{userExists:y,username:D,pfpUrl:W}=await c.waitForFarcasterStatus();if(e({farcasterUsername:D,pfpUrl:W}),y){let R=await c.initiateUserLoginV2({farcasterUsername:D});if(R.size>0){l(R);let C=R.has(In.PASSKEY)?await c.getUserBiometricLocationHints():[];p("login"),t("BIOMETRIC_LOGIN"),r(C);return}}let E=await c.getSupportedCreateAuthMethods();n(!1),p("signUp");let h=E.has(In.PASSKEY);h&&(o(await c.shortenLoginLink(await c.getSetUpBiometricsURL({authType:"farcaster"}))),t("BIOMETRIC_CREATION")),E.has(In.PASSWORD)&&(a(await c.shortenLoginLink(await c.getSetupPasswordURL({authType:"farcaster",theme:A}))),f(h?"BIOMETRIC_CREATION":"PASSWORD_CREATION"))})(),()=>{u(void 0)}},[d]),qe(F,{$wide:!0,children:zc()?mo(O,{children:[qe(Xc,{weight:"medium",color:"secondary",children:"Don\u2019t have Farcaster"}),mo(Vc,{as:"a",href:"https://link.warpcast.com/download-qr",target:"_blank",variant:"secondary",children:[qe($c,{slot:"start",icon:"linkExternal"}),"Get Farcaster"]})]}):mo(qc,{children:[qe(X,{variant:"headingS",weight:"bold",children:"Sign in using Farcaster"}),mo(O,{children:[qe(ie,{variant:"bodyS",color:"secondary",weight:"medium",children:"Scan the QR code with your phone's camera to proceed."}),qe(Se,{children:d?qe(Kc,{url:d}):qe(Yc,{size:100})})]})]})})},Aa=Qc;import{styled as Jc}from"styled-components";import{useMemo as Zc}from"react";var Sa=()=>{let e=_(i=>i.hideWallets),t=s(i=>i.isLogin()),o=s(i=>i.step),{chainId:a}=$();return{title:Zc(()=>({AUTH_MAIN:"",AUTH_MORE:"Sign Up or Log In",EX_WALLET_MORE:"Connect Wallet",VERIFICATIONS:"Sign Up",AWAITING_OAUTH:t?"Login":"Sign Up",FARCASTER_OAUTH:t?"Login":"Sign Up",BIOMETRIC_CREATION:"Sign Up",PASSWORD_CREATION:"Sign Up",AWAITING_BIOMETRIC_CREATION:"Sign Up",AWAITING_WALLET_CREATION:t?"Login":"Sign Up",AWAITING_PASSWORD_CREATION:"Sign Up",WALLET_CREATION_DONE:e?"Account Created":"Wallet Created",SECRET:t?"Login":"Sign Up",BIOMETRIC_LOGIN:"Login",AWAITING_PASSWORD_LOGIN:"Login",AWAITING_BIOMETRIC_LOGIN:"Login",LOGIN_DONE:"",SETUP_2FA:"2FA",VERIFY_2FA:"2FA",TWO_FACTOR_DONE:"2FA",ADD_FUNDS_BUY:"",ADD_FUNDS_RECEIVE:"",ADD_FUNDS_WITHDRAW:"",ADD_FUNDS_AWAITING:"",ADD_FUNDS_SUCCESS:"",ADD_FUNDS_FAILURE:"",ACCOUNT_MAIN:"",CHAIN_SWITCH:""}),[t,a,e])[o]}};import{AnimatePresence as jc,motion as ed}from"framer-motion";import{jsx as gn}from"react/jsx-runtime";var Ea=()=>{let{title:e}=Sa(),t=s(a=>a.stepDirection),o=s(a=>a.step);return gn(jc,{mode:"popLayout",initial:!1,custom:t,children:gn(td,{custom:t,variants:ro,initial:"enter",animate:"center",exit:"exit",transition:ao,slot:"header",id:"header",children:gn(ie,{weight:"semiBold",color:"secondary",children:e})},["ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW"].includes(o)?"ADD_FUNDS":o)})},td=Jc(ed.div)`
188
+ `;import{useMemo as Vc}from"react";import{CpslButton as $c,CpslText as Kc}from"@getpara/react-components";import{jsx as co,jsxs as fa}from"react/jsx-runtime";var hn=({isSuccess:e,onClose:t})=>{let o=w(p=>p.hideWallets),a=i(p=>p.setStep),n=i(p=>p.onRampPurchase),r=i(p=>p.accountAddFundTab),s=Vc(()=>new Intl.NumberFormat("en-US",{style:"currency",currency:n?.fiat||"USD"}),[n?.fiat]),l=e?"Transaction Successful":"Something Went Wrong",c=e?`${s.format(parseFloat(n?.fiatQuantity))} is now available in your ${o?"account":"wallet"}.`:`No funds were added to your ${o?"account":"wallet"}.`;return fa(P,{children:[co(Ge,{icon:"checkCircleFilled"}),fa(O,{children:[co(X,{variant:"headingS",weight:"bold",children:l}),co(Kc,{variant:"bodyS",color:"secondary",children:c})]}),co($c,{fullWidth:!0,onClick:()=>{e?t():a(ct(r))},children:e?"Done":"Try Again"})]})};import{useEffect as Aa,useState as Yc}from"react";import{CpslButton as Xc,CpslIcon as zc,CpslQrCode as Qc,CpslSpinner as qc,CpslText as Zc}from"@getpara/react-components";import{AuthMethod as Tn,isMobile as Jc}from"@getpara/web-sdk";import{Fragment as ep,jsx as ze,jsxs as po}from"react/jsx-runtime";var jc=()=>{let e=K(S=>S.setAuthInfo),t=i(S=>S.setStep),o=i(S=>S.setWebAuthURLForCreate),a=i(S=>S.setIFrameUrl),n=i(S=>S.setIsIFrameReady),r=i(S=>S.isIFrameReady),s=i(S=>S.setSupportedAuthMethods),l=i(S=>S.setBiometricLocationHints),c=v(),d=i(S=>S.setFlow),p=i(S=>S.farcasterConnectUri),C=i(S=>S.setFarcasterConnectUri),f=w(S=>S.theme),[u,A]=Yc();return Aa(()=>{u&&r&&setTimeout(()=>{t(u)},200)},[u,r]),Aa(()=>{if(p)return(async()=>{let{userExists:h,username:U,pfpUrl:I}=await c.waitForFarcasterStatus();if(e({farcasterUsername:U,pfpUrl:I}),h){let M=await c.initiateUserLoginV2({farcasterUsername:U});if(M.size>0){s(M);let x=M.has(Tn.PASSKEY)?await c.getUserBiometricLocationHints():[];d("login"),t("BIOMETRIC_LOGIN"),l(x);return}}let b=await c.getSupportedCreateAuthMethods();n(!1),d("signUp");let T=b.has(Tn.PASSKEY);T&&(o(await c.shortenLoginLink(await c.getSetUpBiometricsURL({authType:"farcaster"}))),t("BIOMETRIC_CREATION")),b.has(Tn.PASSWORD)&&(a(await c.shortenLoginLink(await c.getSetupPasswordURL({authType:"farcaster",theme:f}))),A(T?"BIOMETRIC_CREATION":"PASSWORD_CREATION"))})(),()=>{C(void 0)}},[p]),ze(P,{$wide:!0,children:Jc()?po(O,{children:[ze(Zc,{weight:"medium",color:"secondary",children:"Don\u2019t have Farcaster"}),po(Xc,{as:"a",href:"https://link.warpcast.com/download-qr",target:"_blank",variant:"secondary",children:[ze(zc,{slot:"start",icon:"linkExternal"}),"Get Farcaster"]})]}):po(ep,{children:[ze(X,{variant:"headingS",weight:"bold",children:"Sign in using Farcaster"}),po(O,{children:[ze(ae,{variant:"bodyS",color:"secondary",weight:"medium",children:"Scan the QR code with your phone's camera to proceed."}),ze(Ae,{children:p?ze(Qc,{url:p}):ze(qc,{size:100})})]})]})})},Sa=jc;import{styled as op}from"styled-components";import{useMemo as tp}from"react";var Ea=()=>{let e=w(r=>r.hideWallets),t=i(r=>r.isLogin()),o=i(r=>r.step),{chainId:a}=Y();return{title:tp(()=>({AUTH_MAIN:"",AUTH_MORE:"Sign Up or Log In",EX_WALLET_MORE:"Connect Wallet",VERIFICATIONS:"Sign Up",AWAITING_OAUTH:t?"Login":"Sign Up",FARCASTER_OAUTH:t?"Login":"Sign Up",BIOMETRIC_CREATION:"Sign Up",PASSWORD_CREATION:"Sign Up",AWAITING_BIOMETRIC_CREATION:"Sign Up",AWAITING_WALLET_CREATION:t?"Login":"Sign Up",AWAITING_PASSWORD_CREATION:"Sign Up",WALLET_CREATION_DONE:e?"Account Created":"Wallet Created",SECRET:t?"Login":"Sign Up",BIOMETRIC_LOGIN:"Login",AWAITING_PASSWORD_LOGIN:"Login",AWAITING_BIOMETRIC_LOGIN:"Login",LOGIN_DONE:"",SETUP_2FA:"2FA",VERIFY_2FA:"2FA",TWO_FACTOR_DONE:"2FA",ADD_FUNDS_BUY:"",ADD_FUNDS_RECEIVE:"",ADD_FUNDS_WITHDRAW:"",ADD_FUNDS_AWAITING:"",ADD_FUNDS_SUCCESS:"",ADD_FUNDS_FAILURE:"",ACCOUNT_MAIN:"",CHAIN_SWITCH:""}),[t,a,e])[o]}};import{AnimatePresence as np,motion as rp}from"framer-motion";import{jsx as In}from"react/jsx-runtime";var ha=()=>{let{title:e}=Ea(),t=i(a=>a.stepDirection),o=i(a=>a.step);return In(np,{mode:"popLayout",initial:!1,custom:t,children:In(ap,{custom:t,variants:ro,initial:"enter",animate:"center",exit:"exit",transition:ao,slot:"header",id:"header",children:In(ae,{weight:"semiBold",color:"secondary",children:e})},["ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW"].includes(o)?"ADD_FUNDS":o)})},ap=op(rp.div)`
189
189
  position: absolute;
190
190
  top: 16px;
191
191
  width: 100%;
@@ -195,7 +195,7 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
195
195
  justify-content: space-between;
196
196
  gap: 8px;
197
197
  flex-wrap: wrap;
198
- `;import zd from"styled-components";import{Fragment as Hd,useMemo as Gd}from"react";import{CpslButton as Vd,CpslDivider as $d,CpslIconGroup as Kd}from"@getpara/react-components";import Io from"styled-components";import _e from"styled-components";import{CpslButton as xn,CpslIcon as Co,CpslInput as od,CpslText as Ut}from"@getpara/react-components";import{useState as nd}from"react";var yn=e=>e.find(t=>t.includes("EXTERNAL")),Dt=e=>e.find(t=>t.includes("AUTH"));import{Fragment as ud,jsx as re,jsxs as Ze}from"react/jsx-runtime";var ha=3,fo=()=>{let{wallets:e,connectExternalWallet:t}=$(),o=s(f=>f.setSelectedExternalWalletId),a=s(f=>f.setStep),n=s(f=>f.step==="EX_WALLET_MORE"),i=_(f=>f.authLayout),[l,r]=nd(""),c=e.length>ha,p=n||!c?l?e.filter(f=>f.name.toLowerCase().includes(l.toLowerCase())):e:e.slice(0,ha),d=!n&&c,u=()=>{a("EX_WALLET_MORE")},A=()=>{a("AUTH_MORE")},m=f=>()=>{o(f.id),a("EX_WALLET_SELECTED"),f.installed?t(f):f.isMobile&&t(f,!0)};return Ze(rd,{$maxHeight:n,children:[n&&Ze(ud,{children:[re(cd,{children:re(dd,{placeholder:"Search for your wallet",onCpslInput:async f=>{r(f.target.value)},value:l,style:{width:"100%"},children:re(ld,{slot:"start",icon:"search"})})}),Dt(i)&&re(xn,{fullWidth:!0,variant:"tertiary",onClick:A,children:Ze(Ta,{children:[Ze(Ia,{children:[re(Co,{slot:"start",icon:"paraIcon"}),re(Ut,{weight:"medium",children:"Para"})]}),re(ga,{$show:!0,$variant:"installed",children:re(Ut,{variant:"body2XS",weight:"medium",children:"Available"})})]})})]}),p.map(f=>n?re(xn,{fullWidth:!0,variant:"tertiary",onClick:m(f),children:Ze(Ta,{children:[Ze(Ia,{children:[re(Co,{slot:"start",src:f.iconUrl}),re(Ut,{weight:"medium",children:f.name})]}),re(ga,{$show:f.isMobile||f.installed,$variant:f.installed?"installed":"mobile",children:re(Ut,{variant:"body2XS",weight:"medium",children:f.installed?"Installed":"Mobile"})})]})},f.id):re(ad,{src:f.iconUrl,onClick:m(f),children:Ze(sd,{children:[f.installed&&re(id,{}),re(Ut,{variant:"bodyXS",color:"secondary",weight:"medium",children:f.name})]})},f.id)),d&&Ze(xn,{variant:"tertiary",fullWidth:!0,onClick:u,children:[re(Co,{slot:"start",icon:"wallet"}),"More Wallets"]}),n&&re(pd,{})]})},rd=_e.div`
198
+ `;import Zp from"styled-components";import{Fragment as $p,useMemo as Kp}from"react";import{CpslButton as Yp,CpslDivider as Xp,CpslIconGroup as zp}from"@getpara/react-components";import ho from"styled-components";import We from"styled-components";import{CpslButton as yn,CpslIcon as uo,CpslInput as ip,CpslText as bt}from"@getpara/react-components";import{useState as sp}from"react";var gn=e=>e.find(t=>t.includes("EXTERNAL")),vt=e=>e.find(t=>t.includes("AUTH"));import{Fragment as Ap,jsx as re,jsxs as Qe}from"react/jsx-runtime";var Ta=3,mo=()=>{let{wallets:e,connectExternalWallet:t}=Y(),o=i(A=>A.setSelectedExternalWalletId),a=i(A=>A.setStep),n=i(A=>A.step==="EX_WALLET_MORE"),r=w(A=>A.authLayout),[s,l]=sp(""),c=e.length>Ta,d=n||!c?s?e.filter(A=>A.name.toLowerCase().includes(s.toLowerCase())):e:e.slice(0,Ta),p=!n&&c,C=()=>{a("EX_WALLET_MORE")},f=()=>{a("AUTH_MORE")},u=A=>()=>{o(A.id),a("EX_WALLET_SELECTED"),A.installed?t(A):A.isMobile&&t(A,!0)};return Qe(lp,{$maxHeight:n,children:[n&&Qe(Ap,{children:[re(mp,{children:re(Cp,{placeholder:"Search for your wallet",onCpslInput:async A=>{l(A.target.value)},value:s,style:{width:"100%"},children:re(up,{slot:"start",icon:"search"})})}),vt(r)&&re(yn,{fullWidth:!0,variant:"tertiary",onClick:f,children:Qe(Ia,{children:[Qe(ga,{children:[re(uo,{slot:"start",icon:"paraIcon"}),re(bt,{weight:"medium",children:"Para"})]}),re(ya,{$show:!0,$variant:"installed",children:re(bt,{variant:"body2XS",weight:"medium",children:"Available"})})]})})]}),d.map(A=>n?re(yn,{fullWidth:!0,variant:"tertiary",onClick:u(A),children:Qe(Ia,{children:[Qe(ga,{children:[re(uo,{slot:"start",src:A.iconUrl}),re(bt,{weight:"medium",children:A.name})]}),re(ya,{$show:A.isMobile||A.installed,$variant:A.installed?"installed":"mobile",children:re(bt,{variant:"body2XS",weight:"medium",children:A.installed?"Installed":"Mobile"})})]})},A.id):re(cp,{src:A.iconUrl,onClick:u(A),children:Qe(dp,{children:[A.installed&&re(pp,{}),re(bt,{variant:"bodyXS",color:"secondary",weight:"medium",children:A.name})]})},A.id)),p&&Qe(yn,{variant:"tertiary",fullWidth:!0,onClick:C,children:[re(uo,{slot:"start",icon:"wallet"}),"More Wallets"]}),n&&re(fp,{})]})},lp=We.div`
199
199
  position: relative;
200
200
  display: flex;
201
201
  justify-content: center;
@@ -210,15 +210,15 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
210
210
  }
211
211
  -ms-overflow-style: none;
212
212
  scrollbar-width: none;
213
- `,ad=_e($e)`
213
+ `,cp=We(He)`
214
214
  flex: 1;
215
- `,Ta=_e.div`
215
+ `,Ia=We.div`
216
216
  width: 100%;
217
217
  display: flex;
218
218
  align-items: center;
219
219
  gap: 8px;
220
220
  justify-content: space-between;
221
- `,Ia=_e.div`
221
+ `,ga=We.div`
222
222
  display: flex;
223
223
  align-items: center;
224
224
  gap: 8px;
@@ -231,7 +231,7 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
231
231
  color: var(--cpsl-color-contrast);
232
232
  }
233
233
  }
234
- `,ga=_e.div`
234
+ `,ya=We.div`
235
235
  visibility: ${({$show:e})=>e?"visible":"hidden"};
236
236
  padding: 2px 4px;
237
237
  border-radius: 4px;
@@ -242,18 +242,18 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
242
242
  color: ${({$variant:e})=>e==="installed"?"var(--cpsl-color-utility-green)":"var(--cpsl-color-text-primary)"};
243
243
  }
244
244
  }
245
- `,id=_e.span`
245
+ `,pp=We.span`
246
246
  width: 8px;
247
247
  height: 8px;
248
248
  border-radius: 100%;
249
249
  background-color: var(--cpsl-color-utility-green);
250
- `,sd=_e.div`
250
+ `,dp=We.div`
251
251
  display: flex;
252
252
  gap: 4px;
253
253
  align-items: center;
254
- `,ld=_e(Co)`
254
+ `,up=We(uo)`
255
255
  --icon-color: var(--cpsl-color-contrast);
256
- `,cd=_e.div`
256
+ `,mp=We.div`
257
257
  width: 100%;
258
258
  background-color: var(--cpsl-color-background-0);
259
259
 
@@ -261,11 +261,11 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
261
261
  top: 0;
262
262
  padding-bottom: 4px;
263
263
  margin-bottom: -4px;
264
- `,dd=_e(od)`
264
+ `,Cp=We(ip)`
265
265
  width: 100%;
266
266
  --container-background-color: var(--cpsl-color-background-8);
267
267
  --input-background-color: var(--cpsl-color-background-8);
268
- `,pd=_e.div`
268
+ `,fp=We.div`
269
269
  position: sticky;
270
270
  height: 56px;
271
271
  width: 100%;
@@ -273,16 +273,16 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
273
273
 
274
274
  background: linear-gradient(0deg, var(--cpsl-color-background-0) 0%, rgba(234, 239, 211, 0) 100%);
275
275
  pointer-events: none;
276
- `;var Ao={GOOGLE:"googleBrand",TWITTER:"twitter",APPLE:"apple",DISCORD:"discordBrand",FACEBOOK:"facebookBrand",FARCASTER:"farcasterBrand",TELEGRAM:"telegramBrand"},So={GOOGLE:"google",TWITTER:"twitter",APPLE:"apple",DISCORD:"discord",FACEBOOK:"facebook",FARCASTER:"farcaster",TELEGRAM:"telegram"};import{useMemo as Pd}from"react";import Fd from"styled-components";import{AuthMethod as fd,OAuthMethod as wn}from"@getpara/web-sdk";import{styled as _a}from"styled-components";var ya=(e,t)=>{if(t<2)return"1 1 auto";if(t%3===0)return`0 0 calc(33.333333% - ${5.336}px)`;if(t%3===1)return e<4?"0 0 calc(50% - 4px)":`0 0 calc(33.333333% - ${5.336}px)`;if(t%3===2)return e<2?"0 0 calc(50% - 4px)":`0 0 calc(33.333333% - ${5.336}px)`};import{useEffect as Ad}from"react";import{isAndroid as md,isMobile as Cd,isTelegram as xa}from"@getpara/web-sdk";var at=e=>{if(!(typeof window>"u")&&Cd()){if(!e)return;if(!xa()&&e.startsWith("http")){let t=document.createElement("a");t.href=e,t.target="_blank",t.rel="noreferrer noopener",t.click()}else if(xa()){let t=e;md()&&(t=encodeURI(e)),window.open(t,"_blank","noreferrer noopener")}else window.location.href=e}};import{jsx as Wa,jsxs as Ed}from"react/jsx-runtime";var Pt=3,Ra=({methods:e})=>{let t=Me(),o=_(C=>C.oAuthLogoVariant),a=_(C=>C.isDark),n=b(),i=s(C=>C.popupWindow),l=s(C=>C.setFlow),r=s(C=>C.setStep),c=s(C=>C.setPopupWindow),p=V(C=>C.setAuthInfo),d=s(C=>C.setSupportedAuthMethods),u=s(C=>C.setBiometricLocationHints),A=s(C=>C.setFarcasterConnectUri),m=s(C=>C.farcasterConnectUri),f=s(C=>C.step==="AUTH_MORE");Ad(()=>{(async()=>{if(!e.includes(wn.FARCASTER))return;let L=await n.getFarcasterConnectURL();A(L)})()},[]);let S=e.length>Pt,y=f||!S?e:e.slice(0,Pt-1),D=()=>{r("AUTH_MORE")},W=C=>async()=>{if(!i)switch(C){case wn.FARCASTER:if(!m)return;at(m),r("FARCASTER_OAUTH");break;case wn.TELEGRAM:r("TELEGRAM_OAUTH");break;default:r("AWAITING_OAUTH");let L=await n.getOAuthURL({method:C}),T=je(L,`${C}AuthPopup`,"OAUTH");c(T);let{email:g,isError:U,userExists:x}=await n.waitForOAuth({popupWindow:T});if(c(void 0),U){t();return}if(!g)throw r("AUTH_MAIN"),new Error("email is required");if(p({email:g}),x){let P=await n.initiateUserLoginV2({email:g});if(P.size>0){let K=P.has(fd.PASSKEY)?await n.getUserBiometricLocationHints():[];l("login"),r("BIOMETRIC_LOGIN"),d(P),u(K);return}}l("signUp"),r("BIOMETRIC_CREATION");break}},E=o==="default",h=E?a:o!=="dark",R=!f&&S;return Ed(Sd,{children:[y.map((C,L)=>Wa(wa,{$isDark:h,icon:E?Ao[C]:So[C],onClick:W(C),$index:L,$totalItems:R?Pt:y.length},C)),R&&Wa(wa,{$isDark:h,icon:"moreLoginOptions",onClick:D,$index:Pt-1,$totalItems:Pt})]})},Sd=_a.div`
276
+ `;var Co={GOOGLE:"googleBrand",TWITTER:"twitter",APPLE:"apple",DISCORD:"discordBrand",FACEBOOK:"facebookBrand",FARCASTER:"farcasterBrand",TELEGRAM:"telegramBrand"},fo={GOOGLE:"google",TWITTER:"twitter",APPLE:"apple",DISCORD:"discord",FACEBOOK:"facebook",FARCASTER:"farcaster",TELEGRAM:"telegram"};import{useMemo as Bp}from"react";import Hp from"styled-components";import{AuthMethod as xn,OAuthMethod as wn}from"@getpara/web-sdk";import{styled as La}from"styled-components";var xa=(e,t)=>{if(t<2)return"1 1 auto";if(t%3===0)return`0 0 calc(33.333333% - ${5.336}px)`;if(t%3===1)return e<4?"0 0 calc(50% - 4px)":`0 0 calc(33.333333% - ${5.336}px)`;if(t%3===2)return e<2?"0 0 calc(50% - 4px)":`0 0 calc(33.333333% - ${5.336}px)`};import{useEffect as Wa,useState as hp}from"react";import{isAndroid as Sp,isMobile as Ep,isTelegram as wa}from"@getpara/web-sdk";var nt=e=>{if(!(typeof window>"u")&&Ep()){if(!e)return;if(!wa()&&e.startsWith("http")){let t=document.createElement("a");t.href=e,t.target="_blank",t.rel="noreferrer noopener",t.click()}else if(wa()){let t=e;Sp()&&(t=encodeURI(e)),window.open(t,"_blank","noreferrer noopener")}else window.location.href=e}};import{jsx as Ra,jsxs as Ip}from"react/jsx-runtime";var Dt=3,Ma=({methods:e})=>{let t=he(),o=w(E=>E.oAuthLogoVariant),a=w(E=>E.isDark),n=v(),r=i(E=>E.refs),s=i(E=>E.setFlow),l=i(E=>E.setStep),c=K(E=>E.setAuthInfo),d=i(E=>E.setSupportedAuthMethods),p=i(E=>E.setBiometricLocationHints),C=i(E=>E.setFarcasterConnectUri),f=i(E=>E.farcasterConnectUri),u=i(E=>E.step==="AUTH_MORE"),A=i(E=>E.setIFrameUrl),S=i(E=>E.setIsIFrameReady),h=i(E=>E.isIFrameReady),U=i(E=>E.setWebAuthURLForCreate),I=w(E=>E.theme),[b,T]=hp();Wa(()=>{b&&h&&setTimeout(()=>{l(b)},200)},[b,h]),Wa(()=>{(async()=>{if(!e.includes(wn.FARCASTER))return;let V=await n.getFarcasterConnectURL();C(V)})()},[]);let M=e.length>Dt,x=u||!M?e:e.slice(0,Dt-1),W=()=>{l("AUTH_MORE")},g=E=>async()=>{switch(E){case wn.FARCASTER:if(!f)return;nt(f),l("FARCASTER_OAUTH");break;case wn.TELEGRAM:l("TELEGRAM_OAUTH");break;default:l("AWAITING_OAUTH");let V=await n.getOAuthURL({method:E});r.popupWindow.current=Ze({url:V,target:`${E}AuthPopup`,type:"OAUTH",current:r.popupWindow.current});let{email:_,isError:q,userExists:Z}=await n.waitForOAuth({popupWindow:r.popupWindow.current});if(r.popupWindow.current=void 0,(q||!_)&&r.currentStep.current==="AWAITING_OAUTH"){t();return}if(c({email:_}),Z){let m=await n.initiateUserLoginV2({email:_});if(m.size>0){let F=m.has(xn.PASSKEY)?await n.getUserBiometricLocationHints():[];s("login"),l("BIOMETRIC_LOGIN"),d(m),p(F);return}}let ce=await n.getSupportedCreateAuthMethods();S(!1),s("signUp");let $=ce.has(xn.PASSKEY);$&&U(await n.shortenLoginLink(await n.getSetUpBiometricsURL({authType:"email"}))),ce.has(xn.PASSWORD)&&A(await n.shortenLoginLink(await n.getSetupPasswordURL({authType:"email",theme:I}))),T($?"BIOMETRIC_CREATION":"PASSWORD_CREATION");break}},y=o==="default",D=y?a:o!=="dark",R=!u&&M;return Ip(Tp,{children:[x.map((E,V)=>Ra(_a,{$isDark:D,icon:y?Co[E]:fo[E],onClick:g(E),$index:V,$totalItems:R?Dt:x.length},E)),R&&Ra(_a,{$isDark:D,icon:"moreLoginOptions",onClick:W,$index:Dt-1,$totalItems:Dt})]})},Tp=La.div`
277
277
  display: flex;
278
278
  justify-content: center;
279
279
  gap: 8px;
280
280
  flex-wrap: wrap;
281
- `,wa=_a($e)`
282
- flex: ${({$index:e,$totalItems:t})=>ya(e,t)};
281
+ `,_a=La(He)`
282
+ flex: ${({$index:e,$totalItems:t})=>xa(e,t)};
283
283
 
284
284
  --button-icon-color: ${({$isDark:e})=>e?"white":"black"};
285
- `;import{CpslButton as wd,CpslIcon as _n,CpslInput as Wd,CpslSelect as _d,CpslSelectItem as Rd,CpslSpinner as Ld,CpslText as Eo}from"@getpara/react-components";import{useRef as Md,useState as it}from"react";import Ht from"styled-components";import{getCountries as hd,getCountryCallingCode as Td}from"libphonenumber-js";var Id=["AC","CG","CI","CV","GF","GP","MF","NC","PM","RE","SD","SH","SJ","TA","VA","WF","XK","YT"],gd=()=>hd().filter(o=>!Id.includes(o)).map(o=>{let a=Td(o);return{label:new Intl.DisplayNames(["en"],{type:"region"}).of(o),value:`+${a}`,selectedLabel:o,icon:o}}).sort((o,a)=>o.label.localeCompare(a.label)),yd=gd(),Ft=yd;import{useEffect as xd,useState as Wn}from"react";var kt=e=>{let[t,o]=Wn(),[a,n]=Wn(),[i,l]=Wn(),r=()=>{if(typeof window<"u"){let c=Math.max(window.innerHeight-e?.current?.getBoundingClientRect().bottom-20,window.innerHeight*.25);o(c),n(e?.current?.getBoundingClientRect().width),l(e?.current?.getBoundingClientRect().height)}};return e.current&&!t&&r(),xd(()=>(typeof window<"u"&&window.addEventListener("resize",r),()=>{typeof window<"u"&&window.removeEventListener("resize",r)}),[]),{dropdownMaxHeight:t,dropdownWidth:a,mobileAnchor:i,resize:r}};var La="#################",Ma={AF:"### ### ####",AX:"## ### ####",AL:"(###) ### ###",DZ:"(###) ### ###",AS:"(###) ###-####",AD:"### ###",AO:"(###) ### ###",AI:"(###) ###-####",AG:"(###) ###-####",AR:"(###) ###-####",AM:"## ### ###",AW:"### ####",AU:"# #### ####",AT:"(###) ### ####",AZ:"(###) ### ## ##",BS:"(###) ###-####",BH:"#### ####",BD:"# ### ###",BB:"(###) ###-####",BY:"(##) ###-##-##",BE:"(###) ### ###",BZ:"###-####",BJ:"##-##-####",BM:"(###) ###-####",BT:"# ### ###",BO:"# ### ####",BA:"## ###-###",BW:"## ### ###",BR:"(##) ####-####",IO:"### ####",BN:"### ####",BG:"(###) ### ###",BF:"## ## ####",BI:"## ## ####",KH:"## ### ###",CM:"#### ####",CA:"(###) ###-####",CV:"(###) ## ##",KY:"(###) ###-####",CF:"## ## ####",TD:"## ## ## ##",CL:"# #### ####",CN:"(###) #### ####",CX:"# ## ## ##",CC:"# ## ## ##",CO:"(###) ### ####",KM:"## ## ## ##",CG:"## ### ####",CK:"## ###",CR:"#### ####",HR:"## #### ###",CU:"# ### ####",CY:"## ### ###",CZ:"### ### ###",CD:"### ### ###",DK:"## ## ## ##",DJ:"## ## ## ##",DM:"(###) ###-####",DO:"(###) ###-####",EC:"## ### ####",EG:"# #### ####",SV:"#### ####",GQ:"## ### ####",ER:"# ### ###",EE:"#### ####",SZ:"#### ####",ET:"## ### ####",FK:"#####",FO:"######",FJ:"### ####",FI:"## ### ####",FR:"## ## ## ## ##",GF:"### ## ## ##",PF:"## ## ##",GA:"# ## ## ##",GM:"### ####",GE:"(###) ## ## ##",DE:"(###) ### ####",GH:"## ### ####",GI:"### #####",GR:"(###) ### ####",GL:"## ## ##",GD:"(###) ###-####",GP:"### ## ## ##",GU:"(###) ###-####",GT:"# ### ####",GG:"(####) ### ###",GN:"## ### ###",GW:"# #######",GY:"### ####",HT:"## ## ####",VA:"### ####",HN:"####-####",HK:"#### ####",HU:"(##) ### ####",IS:"### ####",IN:"####### ###",ID:"(###) ###-####",IR:"(###) ### ####",IQ:"(###) ### ####",IE:"(###) ### ###",IM:"(####) ### ###",IL:"#-###-####",IT:"(###) #### ###",CI:"## ## ## ##",JM:"(###) ###-####",JP:"(###) ###-####",JE:"(####) ### ###",JO:"# #### ####",KZ:"(###) ###-##-##",KE:"### ######",KI:"## ###",KP:"###-###-####",KR:"(###) ####-####",XK:"## ### ###",KW:"#### ####",KG:"(###) ###-###",LA:"## ## ####",LV:"## ### ###",LB:"## ### ###",LS:"# ### ####",LR:"## ### ###",LY:"##-#######",LI:"(###) ###-####",LT:"(###) ## ###",LU:"### ### ###",MO:"#### ####",MG:"## ## ### ##",MW:"# #### ####",MY:"(###) ###-###",MV:"###-####",ML:"## ## ####",MT:"#### ####",MH:"###-####",MQ:"### ## ## ##",MR:"## ## ####",MU:"### ####",YT:"### ## ## ##",MX:"(###) ###-####",FM:"### ####",MD:"#### ####",MC:"(###) ###-###",MN:"## ## ####",ME:"## ### ###",MS:"(###) ###-####",MA:"#-####-####",MZ:"## ### ####",MM:"# ### ####",NA:"## ### ####",NR:"### ####",NP:"#-######",NL:"## ### ####",NC:"##.##.##",NZ:"## ### ###",NI:"#### ####",NE:"## ## ## ##",NG:"## ### ####",NU:"####",NF:"### ###",MK:"## ### ###",MP:"(###) ###-####",NO:"### ## ###",OM:"#### ####",PK:"(###) #######",PW:"### ####",PS:"## ### ####",PA:"####-####",PG:"(###) ## ###",PY:"## ### ####",PE:"(###) ### ###",PH:"(###) ###-####",PN:"### ####",PL:"### ### ###",PT:"## ### ####",PR:"(###) ###-####",QA:"#### ####",RE:"##### ####",RO:"## ### ####",RU:"(###) ###-##-##",RW:"(###) ### ###",BL:"### ## ## ##",SH:"####",KN:"(###) ###-####",LC:"(###) ###-####",MF:"### ## ## ##",PM:"## ## ##",VC:"(###) ###-####",WS:"####",SM:"(####) ######",ST:"## ####",SA:"# ### ####",SN:"## ### ####",RS:"## ### ####",SC:"# ### ###",SL:"## ######",SG:"#### ####",SX:"(###) ###-####",SK:"(###) ### ###",SI:"## ### ###",SB:"### ####",SO:"# ### ###",ZA:"## ### ####",GS:"####",SS:"# ### ####",ES:"### ### ###",LK:"## ### ####",SD:"## ### ####",SR:"###-####",SJ:"### ## ###",SE:"## ### ####",CH:"## ### ####",SY:"## #### ###",TW:"#### ####",TJ:"## ### ####",TZ:"## ### ####",TH:"# #### ####",TL:"#### ####",TG:"## ## ## ##",TK:"####",TO:"####",TT:"(###) ###-####",TN:"## ### ###",TR:"(###) ### ####",TM:"# ### ###",TC:"(###) ###-####",TV:"####",UG:"## ### ####",UA:"## ### ####",AE:"# ### ####",GB:"#### ### ###",US:"(###) ###-####",UM:"(###) ###-####",UY:"# ### ## ##",UZ:"## ### ####",VU:"## ####",VE:"###-###-####",VN:"## #### ###",VG:"(###) ###-####",VI:"(###) ###-####",WF:"## ####",EH:"###-###-###",YE:"# ### ###",ZM:"## ### ####",ZW:"# #######"};import{AuthMethod as Oa}from"@getpara/web-sdk";import{jsx as Oe,jsxs as Bt}from"react/jsx-runtime";var Od={label:"United States",value:"+1",selectedLabel:"US",icon:"US"},Na=({disableEmailLogin:e,disablePhoneLogin:t})=>{let o=Md(null),{dropdownMaxHeight:a,dropdownWidth:n}=kt(o),i=b(),l=V(N=>N.setAuthInfo),r=V(N=>N.getAuthInfo()),c=s(N=>N.setFlow),p=s(N=>N.setStep),d=s(N=>N.setSupportedAuthMethods),u=s(N=>N.setBiometricLocationHints),[A,m]=it(r?.authType==="phone"?r.auth.countryCode:"+1"),[f,S]=it(!r||["telegramUserId","farcasterUsername"].includes(r.authType)?"":r.authType!=="phone"?r.identifier:r.auth.phone),[y,D]=it(r&&(r.authType==="email"||r.authType==="phone")?r.authType:void 0),[W,E]=it(Od),[h,R]=it(!1),[C,L]=it(""),[T,g]=it(""),U=y==="email",x=y==="phone",P=!y,K=T?Ft.filter(N=>N.selectedLabel.toLowerCase().includes(T.toLowerCase())||N.label.toLowerCase().includes(T.toLowerCase())||N.value.toLowerCase().includes(T.toLowerCase())):Ft,M=N=>{g(N.detail)},ne=N=>{let Q=N.detail.value,te=!1,H=!1;if(!t){let de=Ft.find(De=>De.value===Q);if(de){m(de.value),E(de),D("phone"),S("");return}te=!U&&x?/\d+$/.test(Q):/\d\d\d+$/.test(Q)}e||(H=/\D.*$/.test(Q)),D(H?"email":te?"phone":void 0),S(Q)},ae=N=>{let Q=Ft.find(te=>te.selectedLabel===N.detail);m(Q.value),E(Q)},ce=async()=>{if(L(""),P){L("Please enter a valid email or phone number!");return}let N;if(U){if(!Qr.test(f)){L("Please enter a valid email!");return}if(await i.logout(),N={email:f},l(N),await i.checkIfUserExists({email:f})){let te=await i.initiateUserLoginV2(N),H=te.has(Oa.PASSKEY)?await i.getUserBiometricLocationHints():[];c("login"),p("BIOMETRIC_LOGIN"),d(te),u(H);return}await i.createUser(N),c("signUp"),p("VERIFICATIONS");return}if(x){await i.logout();let Q=!1;try{Q=await i.checkIfUserExistsByPhone({phone:f,countryCode:A})}catch{L("Please enter a valid phone number!");return}if(N={phone:f,countryCode:A},l(N),Q){let te=await i.initiateUserLoginV2(N),H=te.has(Oa.PASSKEY)?await i.getUserBiometricLocationHints():[];c("login"),p("BIOMETRIC_LOGIN"),d(te),u(H);return}await i.createUserByPhone(N),c("signUp"),p("VERIFICATIONS");return}},Y=async()=>{R(!0),await ce(),R(!1)};return e&&t?null:Oe("form",{onSubmit:async N=>{N.preventDefault(),await Y()},children:Bt(Ud,{ref:o,id:"authInput",placeholder:U||t?"Enter email":x||e?"Enter phone":"Enter email or phone",onCpslInput:ne,value:f,errorText:C,autofocus:!0,inputMode:"email",onKeyDown:async N=>N.key==="Enter"&&Y(),contrastText:!0,isPhone:x,mask:y==="phone"?Ma[W.selectedLabel]??La:void 0,enterkeyhint:"go",noAutoDisable:!0,disabled:h,"data-testid":"auth-input",children:[Bt(Nd,{slot:"start",children:[!e&&(P||U)&&Oe(_n,{"aria-label":"email",icon:"mail"}),!t&&P&&Oe(_n,{"aria-label":"phone",icon:"phone"}),x&&Bt(vd,{selectedValue:W.selectedLabel,onCpslSelectValueChange:ae,showFormattedSelectedItem:!0,autoWidth:!0,dropdownMaxHeight:a,anchorElId:"authInput",$width:n,showSearch:!0,searchPlaceholder:"Search Countries",onCpslSearchChange:M,"data-testid":"country-code-select",children:[W&&Bt(Dd,{slot:"selected-item",children:[Oe(Eo,{children:W.selectedLabel}),Oe(Eo,{children:W.value})]}),K.map(N=>Bt(bd,{slot:"items",value:N.selectedLabel,children:[Oe(Eo,{children:N.label}),Oe(Eo,{children:N.value})]},N.selectedLabel))]})]}),f&&Oe(wd,{slot:"end",size:"small",fullWidth:!0,disabled:h,onClick:Y,children:h?Oe(Ld,{size:16}):Oe(_n,{icon:"arrowNarrow"})})]},"email")})},Nd=Ht.div`
285
+ `;import{CpslButton as Rp,CpslIcon as _n,CpslInput as Lp,CpslSelect as Mp,CpslSelectItem as Op,CpslSpinner as Np,CpslText as Ao}from"@getpara/react-components";import{useRef as vp,useState as rt}from"react";import kt from"styled-components";import{getCountries as gp,getCountryCallingCode as yp}from"libphonenumber-js";var xp=["AC","CG","CI","CV","GF","GP","MF","NC","PM","RE","SD","SH","SJ","TA","VA","WF","XK","YT"],wp=()=>gp().filter(o=>!xp.includes(o)).map(o=>{let a=yp(o);return{label:new Intl.DisplayNames(["en"],{type:"region"}).of(o),value:`+${a}`,selectedLabel:o,icon:o}}).sort((o,a)=>o.label.localeCompare(a.label)),Wp=wp(),Ut=Wp;import{useEffect as _p,useState as Wn}from"react";var Pt=e=>{let[t,o]=Wn(),[a,n]=Wn(),[r,s]=Wn(),l=()=>{if(typeof window<"u"){let c=Math.max(window.innerHeight-e?.current?.getBoundingClientRect().bottom-20,window.innerHeight*.25);o(c),n(e?.current?.getBoundingClientRect().width),s(e?.current?.getBoundingClientRect().height)}};return e.current&&!t&&l(),_p(()=>(typeof window<"u"&&window.addEventListener("resize",l),()=>{typeof window<"u"&&window.removeEventListener("resize",l)}),[]),{dropdownMaxHeight:t,dropdownWidth:a,mobileAnchor:r,resize:l}};var Oa="#################",Na={AF:"### ### ####",AX:"## ### ####",AL:"(###) ### ###",DZ:"(###) ### ###",AS:"(###) ###-####",AD:"### ###",AO:"(###) ### ###",AI:"(###) ###-####",AG:"(###) ###-####",AR:"(###) ###-####",AM:"## ### ###",AW:"### ####",AU:"# #### ####",AT:"(###) ### ####",AZ:"(###) ### ## ##",BS:"(###) ###-####",BH:"#### ####",BD:"# ### ###",BB:"(###) ###-####",BY:"(##) ###-##-##",BE:"(###) ### ###",BZ:"###-####",BJ:"##-##-####",BM:"(###) ###-####",BT:"# ### ###",BO:"# ### ####",BA:"## ###-###",BW:"## ### ###",BR:"(##) ####-####",IO:"### ####",BN:"### ####",BG:"(###) ### ###",BF:"## ## ####",BI:"## ## ####",KH:"## ### ###",CM:"#### ####",CA:"(###) ###-####",CV:"(###) ## ##",KY:"(###) ###-####",CF:"## ## ####",TD:"## ## ## ##",CL:"# #### ####",CN:"(###) #### ####",CX:"# ## ## ##",CC:"# ## ## ##",CO:"(###) ### ####",KM:"## ## ## ##",CG:"## ### ####",CK:"## ###",CR:"#### ####",HR:"## #### ###",CU:"# ### ####",CY:"## ### ###",CZ:"### ### ###",CD:"### ### ###",DK:"## ## ## ##",DJ:"## ## ## ##",DM:"(###) ###-####",DO:"(###) ###-####",EC:"## ### ####",EG:"# #### ####",SV:"#### ####",GQ:"## ### ####",ER:"# ### ###",EE:"#### ####",SZ:"#### ####",ET:"## ### ####",FK:"#####",FO:"######",FJ:"### ####",FI:"## ### ####",FR:"## ## ## ## ##",GF:"### ## ## ##",PF:"## ## ##",GA:"# ## ## ##",GM:"### ####",GE:"(###) ## ## ##",DE:"(###) ### ####",GH:"## ### ####",GI:"### #####",GR:"(###) ### ####",GL:"## ## ##",GD:"(###) ###-####",GP:"### ## ## ##",GU:"(###) ###-####",GT:"# ### ####",GG:"(####) ### ###",GN:"## ### ###",GW:"# #######",GY:"### ####",HT:"## ## ####",VA:"### ####",HN:"####-####",HK:"#### ####",HU:"(##) ### ####",IS:"### ####",IN:"####### ###",ID:"(###) ###-####",IR:"(###) ### ####",IQ:"(###) ### ####",IE:"(###) ### ###",IM:"(####) ### ###",IL:"#-###-####",IT:"(###) #### ###",CI:"## ## ## ##",JM:"(###) ###-####",JP:"(###) ###-####",JE:"(####) ### ###",JO:"# #### ####",KZ:"(###) ###-##-##",KE:"### ######",KI:"## ###",KP:"###-###-####",KR:"(###) ####-####",XK:"## ### ###",KW:"#### ####",KG:"(###) ###-###",LA:"## ## ####",LV:"## ### ###",LB:"## ### ###",LS:"# ### ####",LR:"## ### ###",LY:"##-#######",LI:"(###) ###-####",LT:"(###) ## ###",LU:"### ### ###",MO:"#### ####",MG:"## ## ### ##",MW:"# #### ####",MY:"(###) ###-###",MV:"###-####",ML:"## ## ####",MT:"#### ####",MH:"###-####",MQ:"### ## ## ##",MR:"## ## ####",MU:"### ####",YT:"### ## ## ##",MX:"(###) ###-####",FM:"### ####",MD:"#### ####",MC:"(###) ###-###",MN:"## ## ####",ME:"## ### ###",MS:"(###) ###-####",MA:"#-####-####",MZ:"## ### ####",MM:"# ### ####",NA:"## ### ####",NR:"### ####",NP:"#-######",NL:"## ### ####",NC:"##.##.##",NZ:"## ### ###",NI:"#### ####",NE:"## ## ## ##",NG:"## ### ####",NU:"####",NF:"### ###",MK:"## ### ###",MP:"(###) ###-####",NO:"### ## ###",OM:"#### ####",PK:"(###) #######",PW:"### ####",PS:"## ### ####",PA:"####-####",PG:"(###) ## ###",PY:"## ### ####",PE:"(###) ### ###",PH:"(###) ###-####",PN:"### ####",PL:"### ### ###",PT:"## ### ####",PR:"(###) ###-####",QA:"#### ####",RE:"##### ####",RO:"## ### ####",RU:"(###) ###-##-##",RW:"(###) ### ###",BL:"### ## ## ##",SH:"####",KN:"(###) ###-####",LC:"(###) ###-####",MF:"### ## ## ##",PM:"## ## ##",VC:"(###) ###-####",WS:"####",SM:"(####) ######",ST:"## ####",SA:"# ### ####",SN:"## ### ####",RS:"## ### ####",SC:"# ### ###",SL:"## ######",SG:"#### ####",SX:"(###) ###-####",SK:"(###) ### ###",SI:"## ### ###",SB:"### ####",SO:"# ### ###",ZA:"## ### ####",GS:"####",SS:"# ### ####",ES:"### ### ###",LK:"## ### ####",SD:"## ### ####",SR:"###-####",SJ:"### ## ###",SE:"## ### ####",CH:"## ### ####",SY:"## #### ###",TW:"#### ####",TJ:"## ### ####",TZ:"## ### ####",TH:"# #### ####",TL:"#### ####",TG:"## ## ## ##",TK:"####",TO:"####",TT:"(###) ###-####",TN:"## ### ###",TR:"(###) ### ####",TM:"# ### ###",TC:"(###) ###-####",TV:"####",UG:"## ### ####",UA:"## ### ####",AE:"# ### ####",GB:"#### ### ###",US:"(###) ###-####",UM:"(###) ###-####",UY:"# ### ## ##",UZ:"## ### ####",VU:"## ####",VE:"###-###-####",VN:"## #### ###",VG:"(###) ###-####",VI:"(###) ###-####",WF:"## ####",EH:"###-###-###",YE:"# ### ###",ZM:"## ### ####",ZW:"# #######"};import{AuthMethod as va}from"@getpara/web-sdk";import{jsx as Le,jsxs as Ft}from"react/jsx-runtime";var bp={label:"United States",value:"+1",selectedLabel:"US",icon:"US"},ba=({disableEmailLogin:e,disablePhoneLogin:t})=>{let o=vp(null),{dropdownMaxHeight:a,dropdownWidth:n}=Pt(o),r=v(),s=K(m=>m.setAuthInfo),l=K(m=>m.getAuthInfo()),c=i(m=>m.setFlow),d=i(m=>m.setStep),p=i(m=>m.setSupportedAuthMethods),C=i(m=>m.setBiometricLocationHints),[f,u]=rt(l?.authType==="phone"?l.auth.countryCode:"+1"),[A,S]=rt(!l||["telegram","farcaster"].includes(l.authType)?"":l.authType!=="phone"?l.identifier:l.auth.phone),[h,U]=rt(l&&(l.authType==="email"||l.authType==="phone")?l.authType:void 0),[I,b]=rt(bp),[T,M]=rt(!1),[x,W]=rt(""),[g,y]=rt(""),D=h==="email",R=h==="phone",E=!h,V=g?Ut.filter(m=>m.selectedLabel.toLowerCase().includes(g.toLowerCase())||m.label.toLowerCase().includes(g.toLowerCase())||m.value.toLowerCase().includes(g.toLowerCase())):Ut,_=m=>{y(m.detail)},q=m=>{let F=m.detail.value,H=!1,J=!1;if(!t){let k=Ut.find(pe=>pe.value===F);if(k){u(k.value),b(k),U("phone"),S("");return}H=!D&&R?/\d+$/.test(F):/\d\d\d+$/.test(F)}e||(J=/\D.*$/.test(F)),U(J?"email":H?"phone":void 0),S(F)},Z=m=>{let F=Ut.find(H=>H.selectedLabel===m.detail);u(F.value),b(F)},ce=async()=>{if(W(""),E){W("Please enter a valid email or phone number!");return}let m;if(D){if(!ta.test(A)){W("Please enter a valid email!");return}if(await r.logout(),m={email:A},s(m),await r.checkIfUserExists({email:A})){let H=await r.initiateUserLoginV2(m),J=H.has(va.PASSKEY)?await r.getUserBiometricLocationHints():[];c("login"),d("BIOMETRIC_LOGIN"),p(H),C(J);return}await r.createUser(m),c("signUp"),d("VERIFICATIONS");return}if(R){await r.logout();let F=!1;try{F=await r.checkIfUserExistsByPhone({phone:A,countryCode:f})}catch{W("Please enter a valid phone number!");return}if(m={phone:A,countryCode:f},s(m),F){let H=await r.initiateUserLoginV2(m),J=H.has(va.PASSKEY)?await r.getUserBiometricLocationHints():[];c("login"),d("BIOMETRIC_LOGIN"),p(H),C(J);return}await r.createUserByPhone(m),c("signUp"),d("VERIFICATIONS");return}},$=async()=>{M(!0),await ce(),M(!1)};return e&&t?null:Le("form",{onSubmit:async m=>{m.preventDefault(),await $()},children:Ft(kp,{ref:o,id:"authInput",placeholder:D||t?"Enter email":R||e?"Enter phone":"Enter email or phone",onCpslInput:q,value:A,errorText:x,autofocus:!0,inputMode:"email",onKeyDown:async m=>m.key==="Enter"&&$(),contrastText:!0,isPhone:R,mask:h==="phone"?Na[I.selectedLabel]??Oa:void 0,enterkeyhint:"go",noAutoDisable:!0,disabled:T,"data-testid":"auth-input",children:[Ft(Dp,{slot:"start",children:[!e&&(E||D)&&Le(_n,{"aria-label":"email",icon:"mail"}),!t&&E&&Le(_n,{"aria-label":"phone",icon:"phone"}),R&&Ft(Up,{selectedValue:I.selectedLabel,onCpslSelectValueChange:Z,showFormattedSelectedItem:!0,autoWidth:!0,dropdownMaxHeight:a,anchorElId:"authInput",$width:n,showSearch:!0,searchPlaceholder:"Search Countries",onCpslSearchChange:_,"data-testid":"country-code-select",children:[I&&Ft(Fp,{slot:"selected-item",children:[Le(Ao,{children:I.selectedLabel}),Le(Ao,{children:I.value})]}),V.map(m=>Ft(Pp,{slot:"items",value:m.selectedLabel,children:[Le(Ao,{children:m.label}),Le(Ao,{children:m.value})]},m.selectedLabel))]})]}),A&&Le(Rp,{slot:"end",size:"small",fullWidth:!0,disabled:T,onClick:$,children:T?Le(Np,{size:16}):Le(_n,{icon:"arrowNarrow"})})]},"email")})},Dp=kt.div`
286
286
  height: 100%;
287
287
  display: flex;
288
288
  align-items: center;
@@ -293,7 +293,7 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
293
293
  & cpsl-icon {
294
294
  --icon-color: var(--cpsl-color-contrast);
295
295
  }
296
- `,vd=Ht(_d)`
296
+ `,Up=kt(Mp)`
297
297
  --container-height: 100%;
298
298
  --container-padding-start: 0px;
299
299
  --container-padding-end: 0px;
@@ -307,7 +307,7 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
307
307
  }
308
308
 
309
309
  &::part(popover) {
310
- @media (max-width: ${ze}px) {
310
+ @media (max-width: ${Ye}px) {
311
311
  top: unset !important;
312
312
  bottom: 16px;
313
313
  }
@@ -317,76 +317,76 @@ import{CpslAuthModal as nm,defineCustomElements as rm,generateTheme as am}from"@
317
317
  bottom: 16px;
318
318
  }
319
319
  }
320
- `,bd=Ht(Rd)`
320
+ `,Pp=kt(Op)`
321
321
  &::part(inner-container) {
322
322
  justify-content: space-between;
323
323
  }
324
- `,Dd=Ht.div`
324
+ `,Fp=kt.div`
325
325
  display: flex;
326
326
  gap: 4px;
327
327
  align-items: center;
328
- `,Ud=Ht(Wd)`
328
+ `,kp=kt(Lp)`
329
329
  --container-background-color: var(--cpsl-color-background-8);
330
330
  --input-background-color: var(--cpsl-color-background-8);
331
331
  --container-padding-end: 8px;
332
- `;import{Fragment as Bd,jsx as ho}from"react/jsx-runtime";var To=({oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o})=>{let{wallets:a}=$(),n=s(l=>l.step==="AUTH_MORE"),i=Pd(()=>{let l=[];return e?.length&&l.push(ho(Ra,{methods:e},"oAuth")),(!t||!o)&&l.push(ho(Na,{disableEmailLogin:t,disablePhoneLogin:o},"input")),ho(Bd,{children:l})},[n,e,t,o,a]);return ho(kd,{children:i})},kd=Fd.div`
332
+ `;import{Fragment as Vp,jsx as So}from"react/jsx-runtime";var Eo=({oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o})=>{let{wallets:a}=Y(),n=i(s=>s.step==="AUTH_MORE"),r=Bp(()=>{let s=[];return e?.length&&s.push(So(Ma,{methods:e},"oAuth")),(!t||!o)&&s.push(So(ba,{disableEmailLogin:t,disablePhoneLogin:o},"input")),So(Vp,{children:s})},[n,e,t,o,a]);return So(Gp,{children:r})},Gp=Hp.div`
333
333
  display: flex;
334
334
  flex-direction: column;
335
335
  gap: 8px;
336
- `;import{Fragment as Xd,jsx as ke,jsxs as Rn}from"react/jsx-runtime";var Da=({oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o})=>{let{wallets:a}=$(),n=_(m=>m.authLayout),i=s(m=>m.setStep),l=_(m=>m.oAuthLogoVariant),r=_(m=>m.isDark),c=l==="default",p=c?r:l!=="dark",d=()=>{i("AUTH_MORE")},u=()=>{i("EX_WALLET_MORE")},A=Gd(()=>{let m=[];return n.forEach(f=>{switch(f){case"AUTH:FULL":{m.push([ke(To,{oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o},"authFull"),f]);break}case"AUTH:CONDENSED":{let S=[];e?.forEach(y=>S.push(c?Ao[y]:So[y])),m.push([Rn(ba,{onClick:d,variant:"tertiary",fullWidth:!0,children:[ke(va,{slot:"start",icons:[],$isDark:p}),"Sign Up or Login",ke(Ln,{slot:"end",icons:S.splice(0,3),$isDark:p})]},"authCondensed"),f]);break}case"EXTERNAL:FULL":{a.length&&m.push([ke(fo,{},"externalWallets"),f]);break}case"EXTERNAL:CONDENSED":{let S=[];a?.forEach(y=>S.push(y.iconUrl)),m.push([Rn(ba,{onClick:u,variant:"tertiary",fullWidth:!0,children:[ke(va,{slot:"start",icons:[],$isDark:p}),"Connect Wallet",ke(Ln,{slot:"end",icons:S.splice(0,3),$isDark:p})]},"authCondensed"),f]);break}default:break}}),ke(Xd,{children:m.map(([f,S],y)=>Rn(Hd,{children:[f,m.length>1&&y<m.length-1&&ke($d,{children:"or"},"or")]},S))})},[e,t,o,a,n]);return ke(Yd,{"data-testid":"main-auth-step-content",children:A})},Yd=Io.div`
336
+ `;import{Fragment as qp,jsx as Ue,jsxs as Rn}from"react/jsx-runtime";var Pa=({oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o})=>{let{wallets:a}=Y(),n=w(u=>u.authLayout),r=i(u=>u.setStep),s=w(u=>u.oAuthLogoVariant),l=w(u=>u.isDark),c=s==="default",d=c?l:s!=="dark",p=()=>{r("AUTH_MORE")},C=()=>{r("EX_WALLET_MORE")},f=Kp(()=>{let u=[];return n.forEach(A=>{switch(A){case"AUTH:FULL":{u.push([Ue(Eo,{oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o},"authFull"),A]);break}case"AUTH:CONDENSED":{let S=[];e?.forEach(h=>S.push(c?Co[h]:fo[h])),u.push([Rn(Ua,{onClick:p,variant:"tertiary",fullWidth:!0,children:[Ue(Da,{slot:"start",icons:[],$isDark:d}),"Sign Up or Login",Ue(Ln,{slot:"end",icons:S.splice(0,3),$isDark:d})]},"authCondensed"),A]);break}case"EXTERNAL:FULL":{a.length&&u.push([Ue(mo,{},"externalWallets"),A]);break}case"EXTERNAL:CONDENSED":{let S=[];a?.forEach(h=>S.push(h.iconUrl)),u.push([Rn(Ua,{onClick:C,variant:"tertiary",fullWidth:!0,children:[Ue(Da,{slot:"start",icons:[],$isDark:d}),"Connect Wallet",Ue(Ln,{slot:"end",icons:S.splice(0,3),$isDark:d})]},"authCondensed"),A]);break}default:break}}),Ue(qp,{children:u.map(([A,S],h)=>Rn($p,{children:[A,u.length>1&&h<u.length-1&&Ue(Xp,{children:"or"},"or")]},S))})},[e,t,o,a,n]);return Ue(Qp,{"data-testid":"main-auth-step-content",children:f})},Qp=ho.div`
337
337
  display: flex;
338
338
  flex-direction: column;
339
339
  gap: 8px;
340
- `,Ln=Io(Kd)`
340
+ `,Ln=ho(zp)`
341
341
  --icon-item-color: ${({$isDark:e})=>e?"white":"black"};
342
342
  flex: 1;
343
343
  justify-content: flex-end;
344
- `,va=Io(Ln)`
344
+ `,Da=ho(Ln)`
345
345
  visibility: hidden;
346
- `,ba=Io(Vd)`
346
+ `,Ua=ho(Yp)`
347
347
  --button-justify-content: space-between;
348
348
 
349
349
  &::part(button-native) {
350
350
  max-height: 50px;
351
351
  }
352
- `;import{Fragment as qd,jsx as Mn,jsxs as Zd}from"react/jsx-runtime";var Ua=({oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o})=>{let a=_(p=>p.getLogo()),n=_(p=>p.appName),i=_(p=>p.authLayout),l=_(p=>p.embeddedModal),c=i[0].split(":")[0]==="AUTH"?"Sign Up or Login":"Connect Wallet";return Zd(qd,{children:[a&&Mn(Qd,{src:a,alt:`${n?`${n} -`:""}logo`}),!l&&Mn(ie,{variant:a?"bodyM":"headingS",weight:"semiBold",children:c}),Mn(Da,{disableEmailLogin:t,disablePhoneLogin:o,oAuthMethods:e})]})},Qd=zd.img`
352
+ `;import{Fragment as jp,jsx as Mn,jsxs as ed}from"react/jsx-runtime";var Fa=({oAuthMethods:e,disableEmailLogin:t,disablePhoneLogin:o})=>{let a=w(d=>d.getLogo()),n=w(d=>d.appName),r=w(d=>d.authLayout),s=w(d=>d.embeddedModal),c=r[0].split(":")[0]==="AUTH"?"Sign Up or Login":"Connect Wallet";return ed(jp,{children:[a&&Mn(Jp,{src:a,alt:`${n?`${n} -`:""}logo`}),!s&&Mn(ae,{variant:a?"bodyM":"headingS",weight:"semiBold",children:c}),Mn(Pa,{disableEmailLogin:t,disablePhoneLogin:o,oAuthMethods:e})]})},Jp=Zp.img`
353
353
  height: 100px;
354
354
  max-width: 260px;
355
355
  object-fit: contain;
356
356
  box-sizing: content-box;
357
357
  align-self: center;
358
- `;import bn from"styled-components";import{CpslButton as Jd,CpslIcon as jd,CpslSpinner as Pa,CpslText as On}from"@getpara/react-components";import{useState as ep}from"react";import{Fragment as Fa,jsx as Te,jsxs as vn}from"react/jsx-runtime";var ka=({onClose:e})=>{let t=s(m=>m.onRampConfig),o=s(m=>m.setStep),a=_(m=>m.hideWallets),{disconnectExternalWallet:n}=$(),i=b(),[l,r]=ep(!1),c=!!t,p=()=>{o("ADD_FUNDS_BUY")},d=()=>{o("ADD_FUNDS_RECEIVE")},u=()=>{o("ADD_FUNDS_WITHDRAW")},A=async()=>{r(!0),await i.logout(),await n(),e(),r(!1)};return Te(F,{$wide:!0,children:vn(O,{children:[Te(tp,{children:c?vn(Fa,{children:[t.isBuyEnabled&&Te(Nn,{icon:"creditCard",onClick:p,children:Te(On,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Buy Crypto"})}),t.isReceiveEnabled&&Te(Nn,{icon:"qrCode02",onClick:d,children:Te(On,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Receive"})}),t.isWithdrawEnabled&&Te(Nn,{icon:"arrowCircleBrokenDownLeft",onClick:u,children:Te(On,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Withdraw"})})]}):Te(Pa,{})}),Te(op,{variant:"destructive",fullWidth:!0,onClick:A,disabled:l,children:l?Te(Pa,{size:16}):vn(Fa,{children:[a?"Logout":"Disconnect Wallet",Te(jd,{icon:"logOut",slot:"end"})]})})]})})},tp=bn.div`
358
+ `;import bn from"styled-components";import{CpslButton as td,CpslIcon as od,CpslSpinner as ka,CpslText as On}from"@getpara/react-components";import{useState as nd}from"react";import{Fragment as Ba,jsx as Te,jsxs as vn}from"react/jsx-runtime";var Ha=({onClose:e})=>{let t=i(u=>u.onRampConfig),o=i(u=>u.setStep),a=w(u=>u.hideWallets),{disconnectExternalWallet:n}=Y(),r=v(),[s,l]=nd(!1),c=!!t,d=()=>{o("ADD_FUNDS_BUY")},p=()=>{o("ADD_FUNDS_RECEIVE")},C=()=>{o("ADD_FUNDS_WITHDRAW")},f=async()=>{l(!0),await r.logout(),await n(),e(),o("AUTH_MAIN"),l(!1)};return Te(P,{$wide:!0,children:vn(O,{children:[Te(rd,{children:c?vn(Ba,{children:[t.isBuyEnabled&&Te(Nn,{icon:"creditCard",onClick:d,children:Te(On,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Buy Crypto"})}),t.isReceiveEnabled&&Te(Nn,{icon:"qrCode02",onClick:p,children:Te(On,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Receive"})}),t.isWithdrawEnabled&&Te(Nn,{icon:"arrowCircleBrokenDownLeft",onClick:C,children:Te(On,{variant:"bodyXS",color:"secondary",weight:"medium",children:"Withdraw"})})]}):Te(ka,{})}),Te(ad,{variant:"destructive",fullWidth:!0,onClick:f,disabled:s,children:s?Te(ka,{size:16}):vn(Ba,{children:[a?"Logout":"Disconnect Wallet",Te(od,{icon:"logOut",slot:"end"})]})})]})})},rd=bn.div`
359
359
  display: flex;
360
360
  align-items: center;
361
361
  justify-content: center;
362
362
  gap: 8px;
363
363
  width: 100%;
364
364
  height: 88px;
365
- `,Nn=bn($e)`
365
+ `,Nn=bn(He)`
366
366
  flex: 1;
367
367
 
368
368
  --button-icon-color: var(--cpsl-color-text-primary);
369
- `,op=bn(Jd)`
369
+ `,ad=bn(td)`
370
370
  --button-border-width: 0px;
371
- `;import{CpslButton as go,CpslIcon as yo,CpslQrCode as np,CpslSpinner as rp,CpslText as Dn}from"@getpara/react-components";import{useEffect as Ba,useMemo as ap}from"react";import st from"styled-components";import{useCopyToClipboard as ip}from"@getpara/react-common";import{isMobile as Ha,isTablet as sp,WalletType as Ga}from"@getpara/web-sdk";import{Fragment as Un,jsx as z,jsxs as Ne}from"react/jsx-runtime";var Xa=()=>{let[e,t]=ip(),o=s(u=>u.externalWalletError),a=s(u=>u.setStep),{connectExternalWallet:n,wallet:i,qrUri:l,walletDisplayHelpers:r}=$();Ba(()=>{at(l)},[l]);let c=async()=>{await n(i)},p=()=>{t(l)},d=ap(()=>{if(!i)return null;let u=i.id==="walletConnect";Ha()&&u&&O;let{showExtension:m,showMobile:f,isSolanaMobileIOS:S}=r;if(!f&&!m||S&&!i.installed){let y=S?`Solana wallets aren't available on mobile IOS browsers.
371
+ `;import{CpslButton as To,CpslIcon as Io,CpslQrCode as id,CpslSpinner as sd,CpslText as Dn}from"@getpara/react-components";import{useEffect as Ga,useMemo as ld}from"react";import at from"styled-components";import{useCopyToClipboard as cd}from"@getpara/react-common";import{isMobile as Va,isTablet as pd,WalletType as $a}from"@getpara/web-sdk";import{Fragment as Un,jsx as z,jsxs as Me}from"react/jsx-runtime";var Qa=()=>{let[e,t]=cd(),o=i(C=>C.externalWalletError),a=i(C=>C.setStep),{connectExternalWallet:n,wallet:r,qrUri:s,walletDisplayHelpers:l}=Y();Ga(()=>{nt(s)},[s]);let c=async()=>{await n(r)},d=()=>{t(s)},p=ld(()=>{if(!r)return null;let C=r.id==="walletConnect";Va()&&C&&O;let{showExtension:u,showMobile:A,isSolanaMobileIOS:S}=l;if(!A&&!u||S&&!r.installed){let h=S?`Solana wallets aren't available on mobile IOS browsers.
372
372
 
373
- Please continue in the wallet app.`:`${i.name} isn't supported on mobile devices.
373
+ Please continue in the wallet app.`:`${r.name} isn't supported on mobile devices.
374
374
 
375
- Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,{weight:"semiBold",children:y})})}if(m){let y=i.installed;return Ne(O,{children:[y&&!o?.length?z(ie,{color:"contrast",weight:"semiBold",children:`Confirm connection request in the ${i.name} browser extension.`}):Ne(cp,{children:[z(dp,{icon:"alertCircle"}),z(Dn,{weight:"semiBold",color:"error",children:y?o?.[0]:`${i.name} not detected`})]}),Ne(go,{as:y?"button":"a",href:i.downloadUrl??"",target:"_blank",variant:"secondary",onClick:c,children:[z(yo,{slot:"start",icon:y?"refresh":"linkExternal"}),y?"Try Again":`Get ${i.name}`]})]})}if(f){if(i.type===Ga.SOLANA||Ha()&&!sp()){let W=i.type!==Ga.SOLANA||i.installed;return Ne(Un,{children:[z(O,{children:!W&&z(Dn,{weight:"semiBold",color:"error",children:`${i.name} not detected`})}),i.id!=="walletConnect"&&Ne(O,{children:[z(go,{onClick:()=>at(l),fullWidth:!0,children:"Connect Wallet"}),z(Ya,{href:i.downloadUrl??"",target:"_blank",children:Ne($a,{variant:"secondary",children:[`Get ${i.name}`,z(Ka,{icon:"linkExternal"})]})})]})]})}let D=Ne($a,{variant:"secondary",onClick:u?async()=>{await n(i,!0,!0)}:void 0,children:[`${u?"Open":"Get"} ${i.name}`,z(Ka,{icon:"linkExternal"})]});return Ne(Un,{children:[Ne(O,{children:[z(Dn,{weight:"semiBold",children:"Scan with your mobile device"}),z(Se,{children:l?z(np,{url:l,imageSrc:i.iconUrl}):z(rp,{size:100})}),Ne(go,{size:"small",variant:"ghost",onClick:p,children:[z(yo,{slot:"start",icon:e?"check":"copy"}),e?"Copied":"Copy Link"]})]}),z(O,{children:u?z(Un,{children:D}):z(Ya,{href:i.downloadUrl??"",target:"_blank",children:D})})]})}},[i,r,o,l]);return Ba(()=>{i||a("AUTH_MAIN")},[i]),i?z(lp,{children:d}):null},lp=st(F)`
375
+ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Ka,{weight:"semiBold",children:h})})}if(u){let h=r.installed;return Me(O,{children:[h&&!o?.length?z(ae,{color:"contrast",weight:"semiBold",children:`Confirm connection request in the ${r.name} browser extension.`}):Me(ud,{children:[z(md,{icon:"alertCircle"}),z(Dn,{weight:"semiBold",color:"error",children:h?o?.[0]:`${r.name} not detected`})]}),Me(To,{as:h?"button":"a",href:r.downloadUrl??"",target:"_blank",variant:"secondary",onClick:c,children:[z(Io,{slot:"start",icon:h?"refresh":"linkExternal"}),h?"Try Again":`Get ${r.name}`]})]})}if(A){if(r.type===$a.SOLANA||Va()&&!pd()){let I=r.type!==$a.SOLANA||r.installed;return Me(Un,{children:[z(O,{children:!I&&z(Dn,{weight:"semiBold",color:"error",children:`${r.name} not detected`})}),r.id!=="walletConnect"&&Me(O,{children:[z(To,{onClick:()=>nt(s),fullWidth:!0,children:"Connect Wallet"}),z(za,{href:r.downloadUrl??"",target:"_blank",children:Me(Ya,{variant:"secondary",children:[`Get ${r.name}`,z(Xa,{icon:"linkExternal"})]})})]})]})}let U=Me(Ya,{variant:"secondary",onClick:C?async()=>{await n(r,!0,!0)}:void 0,children:[`${C?"Open":"Get"} ${r.name}`,z(Xa,{icon:"linkExternal"})]});return Me(Un,{children:[Me(O,{children:[z(Dn,{weight:"semiBold",children:"Scan with your mobile device"}),z(Ae,{children:s?z(id,{url:s,imageSrc:r.iconUrl}):z(sd,{size:100})}),Me(To,{size:"small",variant:"ghost",onClick:d,children:[z(Io,{slot:"start",icon:e?"check":"copy"}),e?"Copied":"Copy Link"]})]}),z(O,{children:C?z(Un,{children:U}):z(za,{href:r.downloadUrl??"",target:"_blank",children:U})})]})}},[r,l,o,s]);return Ga(()=>{r||a("AUTH_MAIN")},[r]),r?z(dd,{children:p}):null},dd=at(P)`
376
376
  flex: 1;
377
377
  justify-content: space-between;
378
- `,cp=st.div`
378
+ `,ud=at.div`
379
379
  display: flex;
380
380
  align-items: center;
381
381
  justify-content: center;
382
382
  gap: 4px;
383
- `,dp=st(yo)`
383
+ `,md=at(Io)`
384
384
  --height: 16px;
385
385
  --width: 16px;
386
386
  --icon-color: var(--cpsl-color-text-error);
387
- `,Va=st(ie)`
387
+ `,Ka=at(ae)`
388
388
  white-space: pre-line;
389
- `,$a=st(go)`
389
+ `,Ya=at(To)`
390
390
  display: flex;
391
391
  gap: 8px;
392
392
  align-items: center;
@@ -395,12 +395,12 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
395
395
  cursor: pointer;
396
396
  margin-top: 8px;
397
397
  text-decoration: none;
398
- `,Ka=st(yo)`
398
+ `,Xa=at(Io)`
399
399
  --height: 20px;
400
400
  --width: 20px;
401
- `,Ya=st.a`
401
+ `,za=at.a`
402
402
  text-decoration: none;
403
- `;import{CpslHero as pp,CpslIcon as up,CpslIdenticon as mp}from"@getpara/react-components";import yt from"styled-components";import{useEffect as Cp,useState as fp}from"react";import{isMobile as Pn}from"@getpara/web-sdk";import{Fragment as Ip,jsx as gt,jsxs as Qa}from"react/jsx-runtime";var Fn=({externalWalletError:e})=>({EX_WALLET_SELECTED:{variant:"externalWalletConnection",topOffset:40,spacerHeight:158,hideFadeOut:!0},CHAIN_SWITCH:{variant:e?.[0]?.toLowerCase()===no?"failed":"externalWalletConnection",topOffset:20,spacerHeight:158,hideFadeOut:!0},ACCOUNT_MAIN:{variant:"customContent",topOffset:0,spacerHeight:104,hideFadeOut:!0},FARCASTER_OAUTH:{variant:"externalWalletConnection",topOffset:40,spacerHeight:158,hideFadeOut:!0}}),qa=()=>{let e=b(),{wallet:t,walletDisplayHelpers:o,avatar:a}=$(),n=s(R=>R.step),i=s(R=>R.externalWalletError),l=nt(),[r,c]=fp(n),p=Fn({externalWalletError:i})[r];Cp(()=>{let R=Fn({externalWalletError:i})[r],C=Fn({externalWalletError:i})[n];setTimeout(()=>{c(n)},C&&R||C&&!R?0:200)},[n]);let d=r==="EX_WALLET_SELECTED",u=r==="CHAIN_SWITCH",A=r==="ACCOUNT_MAIN",m=r==="FARCASTER_OAUTH",{showExtension:f,isCosmosMobileWallet:S}=o,y=!p||!Pn()&&d&&!f||!Pn()&&u&&S||!Pn()&&m,{variant:D,topOffset:W,spacerHeight:E,hideFadeOut:h}=p??{};return Qa(Ip,{children:[gt(Ap,{$top:-45+W,children:y?null:Qa(Tp,{$isAccount:A,hideFadeOut:h,variant:D,height:480,withDefaultTheme:!0,children:[(d||u)&&gt(za,{slot:"connectionLeft",src:t?.iconUrl}),m&&gt(za,{slot:"connectionLeft",icon:"farcasterBrand"}),A&&(a?gt(Ep,{slot:"image",src:a}):l?gt(hp,{slot:"image",size:"100%",hash:e.getIdenticonHash(l.id,l.type)}):null)]})}),!y&&gt(Sp,{$height:E})]})},Ap=yt.div`
403
+ `;import{CpslHero as Cd,CpslIcon as fd,CpslIdenticon as Ad}from"@getpara/react-components";import Tt from"styled-components";import{useEffect as Sd,useState as Ed}from"react";import{isMobile as Pn}from"@getpara/web-sdk";import{Fragment as xd,jsx as ht,jsxs as Za}from"react/jsx-runtime";var Fn=({externalWalletError:e})=>({EX_WALLET_SELECTED:{variant:"externalWalletConnection",topOffset:40,spacerHeight:158,hideFadeOut:!0},CHAIN_SWITCH:{variant:e?.[0]?.toLowerCase()===no?"failed":"externalWalletConnection",topOffset:20,spacerHeight:158,hideFadeOut:!0},ACCOUNT_MAIN:{variant:"customContent",topOffset:0,spacerHeight:104,hideFadeOut:!0},FARCASTER_OAUTH:{variant:"externalWalletConnection",topOffset:40,spacerHeight:158,hideFadeOut:!0}}),Ja=()=>{let e=v(),{wallet:t,walletDisplayHelpers:o,avatar:a}=Y(),n=i(M=>M.step),r=i(M=>M.externalWalletError),s=tt(),[l,c]=Ed(n),d=Fn({externalWalletError:r})[l];Sd(()=>{let M=Fn({externalWalletError:r})[l],x=Fn({externalWalletError:r})[n];setTimeout(()=>{c(n)},x&&M||x&&!M?0:200)},[n]);let p=l==="EX_WALLET_SELECTED",C=l==="CHAIN_SWITCH",f=l==="ACCOUNT_MAIN",u=l==="FARCASTER_OAUTH",{showExtension:A,isCosmosMobileWallet:S}=o,h=!d||!Pn()&&p&&!A||!Pn()&&C&&S||!Pn()&&u,{variant:U,topOffset:I,spacerHeight:b,hideFadeOut:T}=d??{};return Za(xd,{children:[ht(hd,{$top:-45+I,children:h?null:Za(yd,{$isAccount:f,hideFadeOut:T,variant:U,height:480,withDefaultTheme:!0,children:[(p||C)&&ht(qa,{slot:"connectionLeft",src:t?.iconUrl}),u&&ht(qa,{slot:"connectionLeft",icon:"farcasterBrand"}),f&&(a?ht(Id,{slot:"image",src:a}):s?ht(gd,{slot:"image",size:"100%",hash:e.getIdenticonHash(s.id,s.type)}):null)]})}),!h&&ht(Td,{$height:b})]})},hd=Tt.div`
404
404
  display: flex;
405
405
  position: absolute;
406
406
  justify-content: center;
@@ -408,18 +408,18 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
408
408
  width: 100%;
409
409
 
410
410
  top: ${({$top:e})=>`${e}px`};
411
- `,Sp=yt.div`
411
+ `,Td=Tt.div`
412
412
  height: ${({$height:e})=>`${e}px`};
413
- `,za=yt(up)`
413
+ `,qa=Tt(fd)`
414
414
  --height: 60px;
415
415
  --width: 60px;
416
- `,Ep=yt.img`
416
+ `,Id=Tt.img`
417
417
  width: 100%;
418
418
  height: 100%;
419
419
  object-fit: contain;
420
- `,hp=yt(mp)`
420
+ `,gd=Tt(Ad)`
421
421
  border-radius: 1000px;
422
- `,Tp=yt(pp)`
422
+ `,yd=Tt(Cd)`
423
423
  ${({$isAccount:e})=>e&&`
424
424
  --ring-3-size: 560px;
425
425
  --ring-2-size: 402px;
@@ -431,36 +431,36 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
431
431
  --default-theme-ring-1-opacity: 0.06;
432
432
  --default-theme-ring-0-opacity: 0.1;
433
433
  `}
434
- `;import{motion as gp}from"framer-motion";import{useEffect as yp,useRef as xp,useState as wp}from"react";import Wp from"styled-components";import{jsx as Za}from"react/jsx-runtime";var Ja=({children:e,className:t})=>{let o=xp(null),[a,n]=wp("auto");return yp(()=>{if(o.current){let i=new ResizeObserver(l=>{let r=l[0].contentRect.height;n(r)});return i.observe(o.current),()=>{i.disconnect()}}},[]),Za(_p,{className:t,style:{height:a},animate:{height:a},transition:{duration:.2},children:Za("div",{ref:o,children:e})})},_p=Wp(gp.div)`
434
+ `;import{motion as wd}from"framer-motion";import{useEffect as Wd,useRef as _d,useState as Rd}from"react";import Ld from"styled-components";import{jsx as ja}from"react/jsx-runtime";var ei=({children:e,className:t})=>{let o=_d(null),[a,n]=Rd("auto");return Wd(()=>{if(o.current){let r=new ResizeObserver(s=>{let l=s[0].contentRect.height;n(l)});return r.observe(o.current),()=>{r.disconnect()}}},[]),ja(Md,{className:t,style:{height:a},animate:{height:a},transition:{duration:.2},children:ja("div",{ref:o,children:e})})},Md=Ld(wd.div)`
435
435
  overflow: hidden;
436
- `;import{CpslButton as ja,CpslIcon as kn,CpslQrCode as Rp,CpslSpinner as Lp,CpslText as Mp}from"@getpara/react-components";import{useEffect as ei,useMemo as Op}from"react";import Bn from"styled-components";import{useCopyToClipboard as Np}from"@getpara/react-common";import{WalletType as vp}from"@getpara/web-sdk";import{Fragment as ti,jsx as Ie,jsxs as xt}from"react/jsx-runtime";var oi=()=>{let[e,t]=Np(),o=s(m=>m.externalWalletError),a=s(m=>m.setStep),n=s(m=>m.setStepDirection),{switchChain:i,wallet:l,qrUri:r,chainIdSwitchingTo:c,walletDisplayHelpers:p}=$();ei(()=>{l?.type===vp.COSMOS&&at(r)},[r,l]),ei(()=>{l||(n(-1),a("ACCOUNT_MAIN"))},[l]);let d=async()=>{c&&await i(c)},u=()=>{t(r)},A=Op(()=>{if(!l)return null;let{isCosmosMobileWallet:m}=p;return m?Ie(ti,{children:xt(O,{children:[Ie(Mp,{weight:"semiBold",children:"Scan with your mobile device to switch networks"}),Ie(Se,{children:r?Ie(Rp,{url:r,imageSrc:l.iconUrl}):Ie(Lp,{size:100})}),xt(ja,{size:"small",variant:"ghost",onClick:u,children:[Ie(kn,{slot:"start",icon:e?"check":"copy"}),e?"Copied":"Copy Link"]})]})}):xt(O,{children:[o?.length?xt(ti,{children:[xt(Dp,{children:[Ie(Up,{icon:"alertCircle"}),Ie(ie,{weight:"semiBold",color:"error",children:o[0]})]}),o[1]&&Ie(ie,{color:"secondary",weight:"medium",children:o[1]})]}):Ie(ie,{color:"contrast",weight:"semiBold",children:`Confirm the request to change networks in your ${l.name} wallet.`}),o?.[0]?.toLowerCase()!==no&&xt(ja,{variant:"secondary",onClick:d,children:[Ie(kn,{slot:"start",icon:"refresh"}),"Try Again"]})]})},[l,p,o,r]);return l?Ie(bp,{children:A}):null},bp=Bn(F)`
436
+ `;import{CpslButton as ti,CpslIcon as kn,CpslQrCode as Od,CpslSpinner as Nd,CpslText as vd}from"@getpara/react-components";import{useEffect as oi,useMemo as bd}from"react";import Bn from"styled-components";import{useCopyToClipboard as Dd}from"@getpara/react-common";import{WalletType as Ud}from"@getpara/web-sdk";import{Fragment as ni,jsx as Ie,jsxs as It}from"react/jsx-runtime";var ri=()=>{let[e,t]=Dd(),o=i(u=>u.externalWalletError),a=i(u=>u.setStep),n=i(u=>u.setStepDirection),{switchChain:r,wallet:s,qrUri:l,chainIdSwitchingTo:c,walletDisplayHelpers:d}=Y();oi(()=>{s?.type===Ud.COSMOS&&nt(l)},[l,s]),oi(()=>{s||(n(-1),a("ACCOUNT_MAIN"))},[s]);let p=async()=>{c&&await r(c)},C=()=>{t(l)},f=bd(()=>{if(!s)return null;let{isCosmosMobileWallet:u}=d;return u?Ie(ni,{children:It(O,{children:[Ie(vd,{weight:"semiBold",children:"Scan with your mobile device to switch networks"}),Ie(Ae,{children:l?Ie(Od,{url:l,imageSrc:s.iconUrl}):Ie(Nd,{size:100})}),It(ti,{size:"small",variant:"ghost",onClick:C,children:[Ie(kn,{slot:"start",icon:e?"check":"copy"}),e?"Copied":"Copy Link"]})]})}):It(O,{children:[o?.length?It(ni,{children:[It(Fd,{children:[Ie(kd,{icon:"alertCircle"}),Ie(ae,{weight:"semiBold",color:"error",children:o[0]})]}),o[1]&&Ie(ae,{color:"secondary",weight:"medium",children:o[1]})]}):Ie(ae,{color:"contrast",weight:"semiBold",children:`Confirm the request to change networks in your ${s.name} wallet.`}),o?.[0]?.toLowerCase()!==no&&It(ti,{variant:"secondary",onClick:p,children:[Ie(kn,{slot:"start",icon:"refresh"}),"Try Again"]})]})},[s,d,o,l]);return s?Ie(Pd,{children:f}):null},Pd=Bn(P)`
437
437
  flex: 1;
438
438
  justify-content: space-between;
439
- `,Dp=Bn.div`
439
+ `,Fd=Bn.div`
440
440
  display: flex;
441
441
  align-items: center;
442
442
  justify-content: center;
443
443
  gap: 4px;
444
- `,Up=Bn(kn)`
444
+ `,kd=Bn(kn)`
445
445
  --height: 16px;
446
446
  --width: 16px;
447
447
  --icon-color: var(--cpsl-color-text-error);
448
- `;import{motion as du,AnimatePresence as pu}from"framer-motion";import{CpslIcon as Ai}from"@getpara/react-components";import{styled as wo}from"styled-components";import{CpslIdenticon as ni,CpslSelect as Pp,CpslSelectItem as Fp,CpslText as Vt}from"@getpara/react-components";import Je from"styled-components";import{truncateAddress as kp,WalletType as xo}from"@getpara/web-sdk";import{useEffect as li,useRef as ci}from"react";import{jsx as le,jsxs as Gt}from"react/jsx-runtime";var ri=(e,t)=>e&&t?`${e}~${t}`:void 0,Bp={[xo.EVM]:"EVM",[xo.SOLANA]:"Solana",[xo.COSMOS]:"Cosmos"},di=()=>{let e=ci(null),{dropdownMaxHeight:t,dropdownWidth:o,mobileAnchor:a,resize:n}=kt(e),i=nt(),{switchChain:l,chainId:r,chains:c,chainIdSwitchingTo:p}=$();li(()=>{t&&r&&n()},[r,p,t]);let d=async m=>{await l(m)};if(!i||!i.isExternal||i.type===xo.SOLANA)return null;let u=p??r,A=c.find(m=>m.id.toString()===u)?.name;return le(ui,{children:le(mi,{ref:e,id:"inputContainer",children:Gt(Ci,{selectedValue:u?.toString()??"",onCpslSelectValueChange:m=>{d(m.detail)},showFormattedSelectedItem:!0,placeholder:"Choose chain...",anchorElId:"inputContainer",dropdownMaxHeight:t,$width:o,$top:a+16+1,autoWidth:!0,selectedItemVariant:"bodyXS",children:[u&&le(si,{variant:"bodyXS",color:"contrast",slot:"selected-item",children:A}),c?.map(m=>le(fi,{slot:"items",value:m.id.toString(),children:le(si,{variant:"bodyXS",color:"contrast",children:m.name})},m.id))]})})})};function ai(e,{type:t,isExternal:o,name:a,isMenu:n=!1,hideWallets:i=!1}){return e.isMultiWallet?a??`${o?"External ":""}${Bp[t]}${!i&&(n||o)?" Wallet":""}`:i?"My Account":a||"My Wallet"}var pi=()=>{let e=_(d=>d.hideWallets),t=b(),o=ci(null),{dropdownMaxHeight:a,dropdownWidth:n,mobileAnchor:i,resize:l}=kt(o),{setSelectedWallet:r}=Ce(),c=nt(),p=c?Gt(ii,{slot:"selected-item",children:[le(ni,{variant:"avatar",size:"14px",hash:t.getIdenticonHash(c.id,c.type)}),le(Gp,{variant:"bodyXS",color:"contrast",children:ai(t,{...c,hideWallets:e})}),!e&&le(Vt,{variant:"bodyXS",color:"secondary",children:t.getDisplayAddress(c.id,{truncate:!0,addressType:c.type})})]}):null;return li(()=>{a&&c?.address&&l()},[c,t.availableWallets,a]),le(ui,{children:le(mi,{ref:o,id:"addressInputContainer",children:t.availableWallets.length>1?Gt(Ci,{selectedValue:ri(c?.id,c?.type),onCpslSelectValueChange:d=>{let[u,A]=d.detail.split("~");r({id:u,type:A})},showFormattedSelectedItem:!0,placeholder:"Choose wallet...",anchorElId:"addressInputContainer",dropdownMaxHeight:a,$width:n,$top:i+16+1,autoWidth:!0,selectedItemVariant:"bodyXS",children:[c&&p,t.availableWallets.map(({address:d,name:u,id:A,type:m,isExternal:f})=>{let S=ri(A,m),y=u??ai(t,{type:m,isExternal:f,isMenu:!0,hideWallets:e});return le(fi,{slot:"items",value:S,children:Gt(ii,{children:[le(ni,{size:"40px",hash:t.getIdenticonHash(A,m)}),Gt(Hp,{children:[y&&le(Vt,{variant:"bodyS",color:"contrast",children:y}),!e&&le(Vt,{variant:"bodyXS",color:"secondary",children:kp(d,m,{prefix:t.cosmosPrefix})})]})]})},S)})]}):p})})},ui=Je.div`
448
+ `;import{motion as mu,AnimatePresence as Cu}from"framer-motion";import{CpslIcon as Ei}from"@getpara/react-components";import{styled as yo}from"styled-components";import{CpslIdenticon as ai,CpslSelect as Bd,CpslSelectItem as Hd,CpslText as Ht}from"@getpara/react-components";import qe from"styled-components";import{truncateAddress as Gd,WalletType as go}from"@getpara/web-sdk";import{useEffect as pi,useRef as di}from"react";import{jsx as le,jsxs as Bt}from"react/jsx-runtime";var ii=(e,t)=>e&&t?`${e}~${t}`:void 0,Vd={[go.EVM]:"EVM",[go.SOLANA]:"Solana",[go.COSMOS]:"Cosmos"},ui=()=>{let e=di(null),{dropdownMaxHeight:t,dropdownWidth:o,mobileAnchor:a,resize:n}=Pt(e),r=tt(),{switchChain:s,chainId:l,chains:c,chainIdSwitchingTo:d}=Y();pi(()=>{t&&l&&n()},[l,d,t]);let p=async u=>{await s(u)};if(!r||!r.isExternal||r.type===go.SOLANA)return null;let C=d??l,f=c.find(u=>u.id.toString()===C)?.name;return le(Ci,{children:le(fi,{ref:e,id:"inputContainer",children:Bt(Ai,{selectedValue:C?.toString()??"",onCpslSelectValueChange:u=>{p(u.detail)},showFormattedSelectedItem:!0,placeholder:"Choose chain...",anchorElId:"inputContainer",dropdownMaxHeight:t,$width:o,$top:a+16+1,autoWidth:!0,selectedItemVariant:"bodyXS",children:[C&&le(ci,{variant:"bodyXS",color:"contrast",slot:"selected-item",children:f}),c?.map(u=>le(Si,{slot:"items",value:u.id.toString(),children:le(ci,{variant:"bodyXS",color:"contrast",children:u.name})},u.id))]})})})};function si(e,{type:t,isExternal:o,name:a,isMenu:n=!1,hideWallets:r=!1}){return e.isMultiWallet?a??`${o?"External ":""}${Vd[t]}${!r&&(n||o)?" Wallet":""}`:r?"My Account":a||"My Wallet"}var mi=()=>{let e=w(p=>p.hideWallets),t=v(),o=di(null),{dropdownMaxHeight:a,dropdownWidth:n,mobileAnchor:r,resize:s}=Pt(o),{setSelectedWallet:l}=de(),c=tt(),d=c?Bt(li,{slot:"selected-item",children:[le(ai,{variant:"avatar",size:"14px",hash:t.getIdenticonHash(c.id,c.type)}),le(Kd,{variant:"bodyXS",color:"contrast",children:si(t,{...c,hideWallets:e})}),!e&&le(Ht,{variant:"bodyXS",color:"secondary",children:t.getDisplayAddress(c.id,{truncate:!0,addressType:c.type})})]}):null;return pi(()=>{a&&c?.address&&s()},[c,t.availableWallets,a]),le(Ci,{children:le(fi,{ref:o,id:"addressInputContainer",children:t.availableWallets.length>1?Bt(Ai,{selectedValue:ii(c?.id,c?.type),onCpslSelectValueChange:p=>{let[C,f]=p.detail.split("~");l({id:C,type:f})},showFormattedSelectedItem:!0,placeholder:"Choose wallet...",anchorElId:"addressInputContainer",dropdownMaxHeight:a,$width:n,$top:r+16+1,autoWidth:!0,selectedItemVariant:"bodyXS",children:[c&&d,t.availableWallets.map(({address:p,name:C,id:f,type:u,isExternal:A})=>{let S=ii(f,u),h=C??si(t,{type:u,isExternal:A,isMenu:!0,hideWallets:e});return le(Si,{slot:"items",value:S,children:Bt(li,{children:[le(ai,{size:"40px",hash:t.getIdenticonHash(f,u)}),Bt($d,{children:[h&&le(Ht,{variant:"bodyS",color:"contrast",children:h}),!e&&le(Ht,{variant:"bodyXS",color:"secondary",children:Gd(p,u,{prefix:t.cosmosPrefix})})]})]})},S)})]}):d})})},Ci=qe.div`
449
449
  flex: 0;
450
450
  width: 100%;
451
451
  display: flex;
452
452
  justify-content: center;
453
- `,ii=Je.div`
453
+ `,li=qe.div`
454
454
  display: flex;
455
455
  align-items: center;
456
456
  gap: 8px;
457
- `,Hp=Je.div`
457
+ `,$d=qe.div`
458
458
  display: flex;
459
459
  flex-direction: column;
460
460
  align-items: flex-start;
461
- `,Gp=Je(Vt)`
461
+ `,Kd=qe(Ht)`
462
462
  white-space: nowrap;
463
- `,mi=Je.div`
463
+ `,fi=qe.div`
464
464
  position: relative;
465
465
  display: flex;
466
466
  align-items: center;
@@ -468,7 +468,7 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
468
468
  border-radius: 1000px;
469
469
  background-color: var(--cpsl-color-background-8);
470
470
  padding: 8px;
471
- `,si=Je(Vt)`
471
+ `,ci=qe(Ht)`
472
472
  max-width: 150px;
473
473
  text-transform: capitalize;
474
474
 
@@ -477,7 +477,7 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
477
477
  text-overflow: ellipsis;
478
478
  overflow: hidden;
479
479
  }
480
- `,Ci=Je(Pp)`
480
+ `,Ai=qe(Bd)`
481
481
  --container-height: auto;
482
482
  --container-border-width: 0px;
483
483
  --container-padding-end: 0px;
@@ -498,7 +498,7 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
498
498
 
499
499
  &::part(popover) {
500
500
  /* Have to adjust the top of the popover here since we're using a transform on the modal which causes fixed position items to not be relative to the viewport */
501
- @media (max-width: ${ze}px) {
501
+ @media (max-width: ${Ye}px) {
502
502
  top: ${({$top:e})=>e?`${e}px`:"0px"};
503
503
  bottom: 16px;
504
504
  }
@@ -511,12 +511,12 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
511
511
  &::part(icon) {
512
512
  --icon-color: var(--cpsl-color-contrast);
513
513
  }
514
- `,fi=Je(Fp)`
514
+ `,Si=qe(Hd)`
515
515
  --outer-container-padding-start: 4px;
516
516
  --outer-container-padding-end: 4px;
517
517
  --outer-container-padding-top: 4px;
518
518
  --outer-container-padding-bottom: 4px;
519
- `;import{HeaderButton as Ei}from"@getpara/react-common";import{Fragment as Xp,jsx as lt,jsxs as Si}from"react/jsx-runtime";var hi=({onClose:e})=>{let t=_(c=>c.bareModal),o=s(c=>c.hasPreviousStep()),a=s(c=>c.step),n=s(c=>c.isFullyLoggedIn),i=Me(),l=["ACCOUNT_MAIN","CHAIN_SWITCH","ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW"].includes(a);return Si(Vp,{children:[lt(Yp,{variant:"ghost",style:{visibility:o?"visible":"hidden"},onClick:()=>{i()},children:lt(Ai,{icon:"arrow"})}),lt($p,{children:l&&n&&Si(Xp,{children:[lt(di,{}),lt(pi,{})]})}),lt(Kp,{bareModal:t,variant:"ghost",onClick:e,children:lt(Ai,{icon:"close"})})]})},Vp=wo.div`
519
+ `;import{HeaderButton as Ti}from"@getpara/react-common";import{Fragment as qd,jsx as it,jsxs as hi}from"react/jsx-runtime";var Ii=({onClose:e})=>{let t=w(c=>c.bareModal),o=i(c=>c.hasPreviousStep()),a=i(c=>c.step),n=i(c=>c.isFullyLoggedIn),r=he(),s=["ACCOUNT_MAIN","CHAIN_SWITCH","ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW"].includes(a);return hi(Yd,{children:[it(Qd,{variant:"ghost",style:{visibility:o?"visible":"hidden"},onClick:()=>{r()},children:it(Ei,{icon:"arrow"})}),it(Xd,{children:s&&n&&hi(qd,{children:[it(ui,{}),it(mi,{})]})}),it(zd,{bareModal:t,variant:"ghost",onClick:e,children:it(Ei,{icon:"close"})})]})},Yd=yo.div`
520
520
  position: absolute;
521
521
  width: 100%;
522
522
  top: 16px;
@@ -526,35 +526,35 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
526
526
  align-items: center;
527
527
  justify-content: space-between;
528
528
  gap: 8px;
529
- `,$p=wo.div`
529
+ `,Xd=yo.div`
530
530
  flex: 1;
531
531
  display: flex;
532
532
  align-items: center;
533
533
  justify-content: center;
534
534
  gap: 4px;
535
- `,Kp=wo(Ei)`
535
+ `,zd=yo(Ti)`
536
536
  transform: rotate(180deg);
537
537
  visibility: ${({bareModal:e})=>e?"hidden":"visible"};
538
- `,Yp=wo(Ei)`
538
+ `,Qd=yo(Ti)`
539
539
  transform: rotate(180deg);
540
- `;import{useEffect as wi,useState as uu}from"react";import{AuthMethod as Ti,OAuthMethod as zp}from"@getpara/web-sdk";import Gn from"styled-components";import{useEffect as Hn,useRef as Qp,useState as $t}from"react";import{HeroSpinner as qp}from"@getpara/react-common";import{CpslSpinner as Zp}from"@getpara/react-components";import{jsx as Wo,jsxs as tu}from"react/jsx-runtime";function Ii(){let e=Qp(),t=b(),o=s(C=>C.setFlow),a=s(C=>C.setStep),n=V(C=>C.setAuthInfo),i=s(C=>C.setBiometricLocationHints),l=s(C=>C.setSupportedAuthMethods),r=s(C=>C.setIFrameUrl),c=s(C=>C.setIsIFrameReady),p=s(C=>C.isIFrameReady),d=s(C=>C.setWebAuthURLForCreate),u=_(C=>C.theme),[A,m]=$t(void 0),[f,S]=$t(!1),[y,D]=$t(!1),[W,E]=$t(!1),[h,R]=$t();return Hn(()=>{h&&p&&setTimeout(()=>{a(h)},200)},[h,p]),Hn(()=>{A||t.getOAuthURL({method:zp.TELEGRAM}).then(C=>{m(C)})},[A]),Hn(()=>{let C=async L=>{switch(L.data.type){case"TELEGRAM_LOGIN":S(!0),E(!1);break;case"TELEGRAM_FAILED":S(!1),E(!0);break;case"TELEGRAM_SUCCESS":if(L.data.payload){let T=L.data.payload,g=await t.verifyTelegram(T);if(!g.isValid){S(!1),E(!0),e.current&&e.current.contentWindow.postMessage({type:"TELEGRAM_FAILED"},"*");return}let{telegramUserId:U,isNewUser:x,supportedAuthMethods:P,biometricHints:K}=g;if(n({telegramUserId:U,pfpUrl:T.photo_url,displayName:T.username?`@${T.username}`:T.first_name?`${T.first_name}${T.last_name?` ${T.last_name}`:""}`:`Telegram User @${U}`}),x){let M=await t.getSupportedCreateAuthMethods();c(!1),o("signUp");let ne=M.has(Ti.PASSKEY);ne&&(d(await t.shortenLoginLink(await t.getSetUpBiometricsURL({authType:"telegram"}))),a("BIOMETRIC_CREATION")),M.has(Ti.PASSWORD)&&(r(await t.shortenLoginLink(await t.getSetupPasswordURL({authType:"telegram",theme:u}))),R(ne?"BIOMETRIC_CREATION":"PASSWORD_CREATION"))}else o("login"),P&&l(new Set(P)),K&&i(K),a("BIOMETRIC_LOGIN")}break}};return window?.addEventListener("message",C,!1),()=>{window?.removeEventListener("message",C,!1)}},[]),tu(Jp,{children:[Wo(jp,{children:Wo(qp,{icon:"telegramBrand",status:f?"loading":W?"error":"inactive",text:f?"Follow the on-screen prompts.":W?"Login Failed":void 0})}),A&&Wo(eu,{ref:e,style:{display:y?"block":"none"},src:A,onLoad:()=>D(!0)}),(!A||!y)&&Wo(Zp,{})]})}var Jp=Gn.div`
540
+ `;import{useEffect as _i,useState as fu}from"react";import{AuthMethod as gi,OAuthMethod as Zd}from"@getpara/web-sdk";import Gn from"styled-components";import{useEffect as Hn,useRef as Jd,useState as Gt}from"react";import{HeroSpinner as jd}from"@getpara/react-common";import{CpslSpinner as eu}from"@getpara/react-components";import{jsx as xo,jsxs as ru}from"react/jsx-runtime";function yi(){let e=Jd(),t=v(),o=i(x=>x.setFlow),a=i(x=>x.setStep),n=K(x=>x.setAuthInfo),r=i(x=>x.setBiometricLocationHints),s=i(x=>x.setSupportedAuthMethods),l=i(x=>x.setIFrameUrl),c=i(x=>x.setIsIFrameReady),d=i(x=>x.isIFrameReady),p=i(x=>x.setWebAuthURLForCreate),C=w(x=>x.theme),[f,u]=Gt(void 0),[A,S]=Gt(!1),[h,U]=Gt(!1),[I,b]=Gt(!1),[T,M]=Gt();return Hn(()=>{T&&d&&setTimeout(()=>{a(T)},200)},[T,d]),Hn(()=>{f||t.getOAuthURL({method:Zd.TELEGRAM}).then(x=>{u(x)})},[f]),Hn(()=>{let x=async W=>{switch(W.data.type){case"TELEGRAM_LOGIN":S(!0),b(!1);break;case"TELEGRAM_FAILED":S(!1),b(!0);break;case"TELEGRAM_SUCCESS":if(W.data.payload){let g=W.data.payload,y=await t.verifyTelegram(g);if(!y.isValid){S(!1),b(!0),e.current&&e.current.contentWindow.postMessage({type:"TELEGRAM_FAILED"},"*");return}let{telegramUserId:D,isNewUser:R,supportedAuthMethods:E,biometricHints:V}=y;if(n({telegramUserId:D,pfpUrl:g.photo_url,displayName:g.username?`@${g.username}`:g.first_name?`${g.first_name}${g.last_name?` ${g.last_name}`:""}`:`Telegram User @${D}`}),R){let _=await t.getSupportedCreateAuthMethods();c(!1),o("signUp");let q=_.has(gi.PASSKEY);q&&(p(await t.shortenLoginLink(await t.getSetUpBiometricsURL({authType:"telegram"}))),a("BIOMETRIC_CREATION")),_.has(gi.PASSWORD)&&(l(await t.shortenLoginLink(await t.getSetupPasswordURL({authType:"telegram",theme:C}))),M(q?"BIOMETRIC_CREATION":"PASSWORD_CREATION"))}else o("login"),E&&s(new Set(E)),V&&r(V),a("BIOMETRIC_LOGIN")}break}};return window?.addEventListener("message",x,!1),()=>{window?.removeEventListener("message",x,!1)}},[]),ru(tu,{children:[xo(ou,{children:xo(jd,{icon:"telegramBrand",status:A?"loading":I?"error":"inactive",text:A?"Follow the on-screen prompts.":I?"Login Failed":void 0})}),f&&xo(nu,{ref:e,style:{display:h?"block":"none"},src:f,onLoad:()=>U(!0)}),(!f||!h)&&xo(eu,{})]})}var tu=Gn.div`
541
541
  display: flex;
542
542
  flex-direction: column;
543
543
  align-items: center;
544
544
  justify-content: center;
545
545
  width: 100%;
546
- `,jp=Gn.div`
546
+ `,ou=Gn.div`
547
547
  display: flex;
548
548
  min-height: 276px;
549
549
  flex-direction: column;
550
550
  align-items: center;
551
551
  gap: 16px;
552
552
  flex: 1;
553
- `,eu=Gn.iframe`
553
+ `,nu=Gn.iframe`
554
554
  width: 100%;
555
555
  height: 52px;
556
556
  border: none;
557
- `;import{jsx as ou}from"react/jsx-runtime";var gi=()=>{let e=s(t=>t.isLogin());return ou(Ye,{heading:e?"Waiting for Password":"Creating Password",subheading:"Follow the prompts presented by your browser."})};import yi from"styled-components";import{SpinnerContainer as nu}from"@getpara/react-common";import{CpslSpinner as ru}from"@getpara/react-components";import{jsx as _o,jsxs as su}from"react/jsx-runtime";var xi=()=>{let e=s(i=>i.iFrameUrl),t=s(i=>i.setIsIFrameReady),o=s(i=>i.isIFrameReady),a=s(i=>i.step),n=_(i=>i.embeddedModal);return su(au,{$isVisible:Lt.includes(a),$embeddedModal:n,children:[_o(iu,{$isReady:o,children:_o("iframe",{src:e,onLoad:()=>{t(!0)}})}),!o&&_o(nu,{style:{width:"100%",height:"100%",flex:1},children:_o(ru,{size:100})})]})},au=yi.div`
557
+ `;import{jsx as au}from"react/jsx-runtime";var xi=()=>{let e=i(t=>t.isLogin());return au(Ve,{heading:e?"Waiting for Password":"Creating Password",subheading:"Follow the prompts presented by your browser."})};import wi from"styled-components";import{SpinnerContainer as iu}from"@getpara/react-common";import{CpslSpinner as su}from"@getpara/react-components";import{jsx as wo,jsxs as pu}from"react/jsx-runtime";var Wi=()=>{let e=i(r=>r.iFrameUrl),t=i(r=>r.setIsIFrameReady),o=i(r=>r.isIFrameReady),a=i(r=>r.step),n=w(r=>r.embeddedModal);return pu(lu,{$isVisible:_t.includes(a),$embeddedModal:n,children:[wo(cu,{$isReady:o,children:wo("iframe",{src:e,onLoad:()=>{t(!0)}})}),!o&&wo(iu,{style:{width:"100%",height:"100%",flex:1},children:wo(su,{size:100})})]})},lu=wi.div`
558
558
  height: ${({$isVisible:e})=>e?"100%":"0px"};
559
559
  width: ${({$isVisible:e})=>e?"100%":"0px"};
560
560
  flex: ${({$isVisible:e})=>e?1:"auto"};
@@ -563,10 +563,10 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
563
563
  align-items: center;
564
564
  justify-content: center;
565
565
 
566
- @media (max-width: ${ze}px) {
566
+ @media (max-width: ${Ye}px) {
567
567
  padding: ${({$embeddedModal:e,$isVisible:t})=>t?e?"12px 0px 0px":"72px 16px 0px":"0px"};
568
568
  }
569
- `,iu=yi.div`
569
+ `,cu=wi.div`
570
570
  height: 100%;
571
571
  width: 100%;
572
572
  display: ${({$isReady:e})=>e?"block":"none"};
@@ -576,42 +576,42 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
576
576
  width: 100%;
577
577
  border: none;
578
578
  }
579
- `;import{Fragment as Iu,jsx as k,jsxs as wt}from"react/jsx-runtime";var Wi={ADD_FUNDS_AWAITING:"680px"},_i={TELEGRAM_OAUTH:"36px"},mu={TELEGRAM_OAUTH:"16px"},Ri=({oAuthMethods:e,twoFactorAuthEnabled:t,disableEmailLogin:o,disablePhoneLogin:a,onClose:n,createAccountWithPasskey:i,createAccountWithPassword:l})=>{let r=s(W=>W.step),c=s(W=>W.onRampConfig),p=s(W=>W.stepDirection),d=s(W=>W.setStepDirection),u=s(W=>W.accountAddFundTab),A=s(W=>W.setAccountAddFundTab),m=_(W=>W.appName),f=_(W=>W.embeddedModal),[S,y]=uu(c?.testMode),D=()=>{switch(r){case"AUTH_MAIN":return k(Ua,{oAuthMethods:e,disableEmailLogin:o,disablePhoneLogin:a});case"EX_WALLET_MORE":return k(fo,{});case"AUTH_MORE":return k(To,{oAuthMethods:e,disableEmailLogin:o,disablePhoneLogin:a});case"VERIFICATIONS":return k(ir,{});case"BIOMETRIC_LOGIN":return k(lr,{});case"SETUP_2FA":case"VERIFY_2FA":return k(ur,{onClose:n});case"LOGIN_DONE":return k(Nr,{onClose:n});case"AWAITING_BIOMETRIC_LOGIN":case"AWAITING_BIOMETRIC_CREATION":return k(br,{});case"AWAITING_PASSWORD_LOGIN":case"AWAITING_PASSWORD_CREATION":return k(gi,{});case"AWAITING_WALLET_CREATION":return k(Ur,{});case"WALLET_CREATION_DONE":return k(Fr,{twoFactorAuthEnabled:t,onClose:n});case"SECRET":return k(Gr,{});case"TWO_FACTOR_DONE":return k(Vr,{onClose:n});case"BIOMETRIC_CREATION":return k(Yr,{handlePasswordClick:l,handlePasskeyClick:i});case"AWAITING_OAUTH":return k(Xr,{});case"FARCASTER_OAUTH":return k(Aa,{});case"TELEGRAM_OAUTH":return k(Ii,{});case"ADD_FUNDS_BUY":case"ADD_FUNDS_RECEIVE":case"ADD_FUNDS_WITHDRAW":return k(pa,{});case"ADD_FUNDS_AWAITING":return k(ma,{});case"ADD_FUNDS_SUCCESS":return k(Tn,{isSuccess:!0,onClose:n});case"ADD_FUNDS_FAILURE":return k(Tn,{onClose:n});case"ACCOUNT_MAIN":return k(ka,{onClose:n});case"EX_WALLET_SELECTED":return k(Xa,{});case"CHAIN_SWITCH":return k(oi,{});default:if(Lt.includes(r))return null}};return wi(()=>{!S&&c?.testMode&&y(!0)},[c?.testMode]),wi(()=>{switch(r){case"ADD_FUNDS_BUY":A(Ro.BUY);break;case"ADD_FUNDS_RECEIVE":A(Ro.RECEIVE);break;case"ADD_FUNDS_WITHDRAW":A(Ro.WITHDRAW);break;default:break}},[r]),wt(Cu,{slot:"body","data-testid":"modal-content",children:[!f&&wt(Iu,{children:[k(hi,{onClose:n}),k(Ea,{})]}),wt(fu,{children:[k(pu,{mode:"popLayout",initial:!1,onExitComplete:()=>{d(1)},custom:p,children:wt(Au,{custom:p,variants:ro,initial:"enter",animate:"center",exit:"exit",transition:ao,children:[k(qa,{}),wt(Su,{$embeddedModal:f,$step:r,$isIFrameStep:Lt.includes(r),children:[D(),c?.testMode&&["ADD_FUNDS_BUY","ADD_FUNDS_WITHDRAW","ADD_FUNDS_AWAITING","ADD_FUNDS_FAILURE","ADD_FUNDS_SUCCESS"].includes(r)&&S&&u!==Ro.RECEIVE&&k(Eu,{children:wt("div",{style:{fontSize:"14px"},children:["This Para Modal is configured to run on-ramp services in ",k("b",{children:"test mode"})," only, for development purposes. If you are a user of ",m,", please contact support.",k(hu,{onClick:()=>y(!1),children:k(Tu,{icon:"x"})})]})})]})]},["ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW"].includes(r)?"ADD_FUNDS":r)}),k(xi,{})]})]})},Cu=ct.div`
579
+ `;import{Fragment as xu,jsx as B,jsxs as gt}from"react/jsx-runtime";var Ri={ADD_FUNDS_AWAITING:"680px"},Li={TELEGRAM_OAUTH:"36px"},Au={TELEGRAM_OAUTH:"16px"},Mi=({oAuthMethods:e,twoFactorAuthEnabled:t,disableEmailLogin:o,disablePhoneLogin:a,onClose:n})=>{let r=i(h=>h.step),s=i(h=>h.onRampConfig),l=i(h=>h.stepDirection),c=i(h=>h.setStepDirection),d=i(h=>h.accountAddFundTab),p=i(h=>h.setAccountAddFundTab),C=w(h=>h.appName),f=w(h=>h.embeddedModal),[u,A]=fu(s?.testMode),S=()=>{switch(r){case"AUTH_MAIN":return B(Fa,{oAuthMethods:e,disableEmailLogin:o,disablePhoneLogin:a});case"EX_WALLET_MORE":return B(mo,{});case"AUTH_MORE":return B(Eo,{oAuthMethods:e,disableEmailLogin:o,disablePhoneLogin:a});case"VERIFICATIONS":return B(sr,{});case"BIOMETRIC_LOGIN":return B(cr,{});case"SETUP_2FA":case"VERIFY_2FA":return B(mr,{onClose:n});case"LOGIN_DONE":return B(vr,{onClose:n});case"AWAITING_BIOMETRIC_LOGIN":case"AWAITING_BIOMETRIC_CREATION":return B(Dr,{});case"AWAITING_PASSWORD_LOGIN":case"AWAITING_PASSWORD_CREATION":return B(xi,{});case"AWAITING_WALLET_CREATION":return B(Pr,{});case"WALLET_CREATION_DONE":return B(kr,{twoFactorAuthEnabled:t,onClose:n});case"SECRET":return B(Vr,{});case"TWO_FACTOR_DONE":return B($r,{onClose:n});case"BIOMETRIC_CREATION":return B(Jr,{});case"AWAITING_OAUTH":return B(jr,{});case"FARCASTER_OAUTH":return B(Sa,{});case"TELEGRAM_OAUTH":return B(yi,{});case"ADD_FUNDS_BUY":case"ADD_FUNDS_RECEIVE":case"ADD_FUNDS_WITHDRAW":return B(ua,{});case"ADD_FUNDS_AWAITING":return B(Ca,{});case"ADD_FUNDS_SUCCESS":return B(hn,{isSuccess:!0,onClose:n});case"ADD_FUNDS_FAILURE":return B(hn,{onClose:n});case"ACCOUNT_MAIN":return B(Ha,{onClose:n});case"EX_WALLET_SELECTED":return B(Qa,{});case"CHAIN_SWITCH":return B(ri,{});default:if(_t.includes(r))return null}};return _i(()=>{!u&&s?.testMode&&A(!0)},[s?.testMode]),_i(()=>{switch(r){case"ADD_FUNDS_BUY":p(Wo.BUY);break;case"ADD_FUNDS_RECEIVE":p(Wo.RECEIVE);break;case"ADD_FUNDS_WITHDRAW":p(Wo.WITHDRAW);break;default:break}},[r]),gt(Su,{slot:"body","data-testid":"modal-content",children:[!f&&gt(xu,{children:[B(Ii,{onClose:n}),B(ha,{})]}),gt(Eu,{children:[B(Cu,{mode:"popLayout",initial:!1,onExitComplete:()=>{c(1)},custom:l,children:gt(hu,{custom:l,variants:ro,initial:"enter",animate:"center",exit:"exit",transition:ao,children:[B(Ja,{}),gt(Tu,{$embeddedModal:f,$step:r,$isIFrameStep:_t.includes(r),children:[S(),s?.testMode&&["ADD_FUNDS_BUY","ADD_FUNDS_WITHDRAW","ADD_FUNDS_AWAITING","ADD_FUNDS_FAILURE","ADD_FUNDS_SUCCESS"].includes(r)&&u&&d!==Wo.RECEIVE&&B(Iu,{children:gt("div",{style:{fontSize:"14px"},children:["This Para Modal is configured to run on-ramp services in ",B("b",{children:"test mode"})," only, for development purposes. If you are a user of ",C,", please contact support.",B(gu,{onClick:()=>A(!1),children:B(yu,{icon:"x"})})]})})]})]},["ADD_FUNDS_BUY","ADD_FUNDS_RECEIVE","ADD_FUNDS_WITHDRAW"].includes(r)?"ADD_FUNDS":r)}),B(Wi,{})]})]})},Su=st.div`
580
580
  position: relative;
581
- `,fu=ct(Ja)`
581
+ `,Eu=st(ei)`
582
582
  margin-top: -16px;
583
- `,Au=ct(du.div)`
583
+ `,hu=st(mu.div)`
584
584
  position: relative;
585
585
  display: flex;
586
586
  flex-direction: column;
587
587
  gap: 24px;
588
588
  will-change: auto !important;
589
- `,Su=ct.div`
589
+ `,Tu=st.div`
590
590
  z-index: 1;
591
591
  flex: 1;
592
592
  display: flex;
593
593
  flex-direction: column;
594
594
  justify-content: flex-start;
595
595
  gap: 24px;
596
- padding: ${({$embeddedModal:e,$step:t,$isIFrameStep:o})=>o?"0px":e?"12px 0px 0px":`${_i[t]??"72px"} 72px ${mu[t]??"32px"}`};
597
- min-height: ${({$step:e})=>Wi[e]??"auto"};
598
- height: ${({$step:e})=>Wi[e]??"auto"};
596
+ padding: ${({$embeddedModal:e,$step:t,$isIFrameStep:o})=>o?"0px":e?"12px 0px 0px":`${Li[t]??"72px"} 72px ${Au[t]??"32px"}`};
597
+ min-height: ${({$step:e})=>Ri[e]??"auto"};
598
+ height: ${({$step:e})=>Ri[e]??"auto"};
599
599
 
600
- @media (max-width: ${ze}px) {
601
- padding: ${({$embeddedModal:e,$step:t,$isIFrameStep:o})=>o?"0px":e?"12px 0px 0px":`${_i[t]??"72px"} 16px 0px`};
600
+ @media (max-width: ${Ye}px) {
601
+ padding: ${({$embeddedModal:e,$step:t,$isIFrameStep:o})=>o?"0px":e?"12px 0px 0px":`${Li[t]??"72px"} 16px 0px`};
602
602
  }
603
603
 
604
604
  cpsl-auth-modal.force-mobile-media & {
605
605
  padding: 72px 16px 0px;
606
606
  }
607
- `,Eu=ct(lu)`
607
+ `,Iu=st(du)`
608
608
  --container-padding-end: 40px;
609
609
  position: absolute;
610
610
  bottom: 16px;
611
611
  left: 16px;
612
612
  right: 16px;
613
613
  z-index: 1000;
614
- `,hu=ct.button`
614
+ `,gu=st.button`
615
615
  background-color: transparent;
616
616
  border: none;
617
617
  padding: 4px;
@@ -619,49 +619,49 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
619
619
  position: absolute;
620
620
  top: 0;
621
621
  right: 0;
622
- `,Tu=ct(cu)`
622
+ `,yu=st(uu)`
623
623
  --icon-color: var(--cpsl-color-foreground-0);
624
- `;import{styled as Be}from"styled-components";import{CpslButton as gu,CpslIcon as Mi,CpslText as yu}from"@getpara/react-components";import{useMemo as xu}from"react";import{Fragment as Nu,jsx as ve,jsxs as Kt}from"react/jsx-runtime";var Oi=()=>{let e=s(n=>n.isAccount()),t=s(n=>n.step),o=e||Qn(t),a=xu(()=>e?Kt(Ru,{children:[Kt(Mu,{variant:"bodyS",color:"secondary",weight:"medium",children:["Access all your wallet\u2019s features at"," ",ve("a",{href:un,target:"blank",children:ve(Li,{variant:"bodyS",weight:"medium",children:"Para Connect"})})]}),ve(gu,{as:"a",href:un,target:"blank",variant:"ghost",children:ve(Lu,{icon:"chevronUp"})})]}):Kt(Nu,{children:[Kt(Lo,{variant:"body2XS",color:"secondary",weight:"medium",children:["By logging in you agree to our"," ",ve("a",{href:zr,target:"blank",children:ve(Li,{variant:"body2XS",weight:"medium",children:"Terms & Conditions"})})]}),Kt(_u,{children:[ve(Lo,{variant:"bodyS",color:"secondary",weight:"medium",children:"Powered by"}),ve(Ou,{icon:"para"})]})]}),[e]);return o?ve(wu,{slot:"footer",children:ve(Wu,{children:a})}):null},wu=Be.div`
624
+ `;import{styled as Pe}from"styled-components";import{CpslButton as wu,CpslIcon as Ni,CpslText as Wu}from"@getpara/react-components";import{useMemo as _u}from"react";import{Fragment as Du,jsx as Oe,jsxs as Vt}from"react/jsx-runtime";var vi=()=>{let e=i(n=>n.isAccount()),t=i(n=>n.step),o=e||qn(t),a=_u(()=>e?Vt(Ou,{children:[Vt(vu,{variant:"bodyS",color:"secondary",weight:"medium",children:["Access all your wallet\u2019s features at"," ",Oe("a",{href:dn,target:"blank",children:Oe(Oi,{variant:"bodyS",weight:"medium",children:"Para Connect"})})]}),Oe(wu,{as:"a",href:dn,target:"blank",variant:"ghost",children:Oe(Nu,{icon:"chevronUp"})})]}):Vt(Du,{children:[Vt(_o,{variant:"body2XS",color:"secondary",weight:"medium",children:["By logging in you agree to our"," ",Oe("a",{href:ea,target:"blank",children:Oe(Oi,{variant:"body2XS",weight:"medium",children:"Terms & Conditions"})})]}),Vt(Mu,{children:[Oe(_o,{variant:"bodyS",color:"secondary",weight:"medium",children:"Powered by"}),Oe(bu,{icon:"para"})]})]}),[e]);return o?Oe(Ru,{slot:"footer",children:Oe(Lu,{children:a})}):null},Ru=Pe.div`
625
625
  display: flex;
626
626
  flex-direction: column;
627
627
  align-items: center;
628
628
  gap: 16px;
629
629
  padding: 8px 0px;
630
- `,Wu=Be.div`
630
+ `,Lu=Pe.div`
631
631
  display: flex;
632
632
  flex-direction: column;
633
633
  align-items: center;
634
634
  gap: 8px;
635
- `,_u=Be.div`
635
+ `,Mu=Pe.div`
636
636
  display: flex;
637
637
  gap: 5px;
638
638
  align-items: center;
639
639
  justify-content: center;
640
- `,Ru=Be.div`
640
+ `,Ou=Pe.div`
641
641
  display: flex;
642
642
  gap: 8px;
643
643
  align-items: center;
644
644
  justify-content: center;
645
- `,Lu=Be(Mi)`
645
+ `,Nu=Pe(Ni)`
646
646
  transform: rotate(90deg);
647
647
 
648
648
  /* --icon-color: var(--cpsl-color-text-tertiary); */
649
649
  --height: 24px;
650
650
  --width: 24px;
651
- `,Lo=Be(yu)`
651
+ `,_o=Pe(Wu)`
652
652
  text-align: center;
653
653
  display: inline-block;
654
- `,Mu=Be(Lo)`
654
+ `,vu=Pe(_o)`
655
655
  line-height: 20px;
656
- `,Li=Be(Lo)`
656
+ `,Oi=Pe(_o)`
657
657
  cursor: pointer;
658
658
  display: inline-block;
659
- `,Ou=Be(Mi)`
659
+ `,bu=Pe(Ni)`
660
660
  display: inline-block;
661
661
  --icon-color: var(--cpsl-color-text-secondary);
662
662
  --width: 49px;
663
663
  --height: auto;
664
- `;var dt={LOGGIN_POLLING_DELAY_MS:5e3,POLLING_INTERVAL_MS:2e3,ANIMATION_DURATION:.15};import{create as vu}from"zustand";var Ni=e=>({updateState:t=>{e(t)}});var bu={EvmProvider:void 0,evmContext:void 0,SolanaProvider:void 0,solanaContext:void 0,CosmosProvider:void 0,cosmosContext:void 0,connectParaEvmWallet:void 0,connectParaCosmosWallet:void 0},se=vu(e=>({...bu,...Ni(e)}));var vi=()=>{let e=se(r=>r.connectParaEvmWallet),t=se(r=>r.EvmProvider),o=se(r=>r.evmContext),a=se(r=>r.connectParaCosmosWallet),n=se(r=>r.CosmosProvider),i=se(r=>r.cosmosContext);return async()=>{if(o&&t&&e)try{let{error:r}=await e();r&&console.warn("Failed to connect Para EVM wallet to Wagmi:",r)}catch(r){console.warn("Error calling connectParaEvmWallet:",r)}if(i&&n&&a)try{let{error:r}=await a();r&&console.warn("Failed to connect Para Cosmos wallet to Graz:",r)}catch(r){console.warn("Error calling connectParaCosmosWallet:",r)}}};import{Fragment as Gu,jsx as Di,jsxs as Vu}from"react/jsx-runtime";function Bu(e){return"hostApiKey"in e}var Hu={[fe.SOLANA]:_t.SOLANA,[fe.ATOM]:_t.COSMOS,[fe.CELO]:_t.CELO,[fe.POLYGON]:_t.POLYGON},Vn={SOLANA:fe.SOLANA,SOL:fe.SOLANA,ATOM:fe.ATOM,CELO:fe.CELO,POLYGON:fe.POLYGON,MATIC:fe.POLYGON,USDC:fe.USDC,ETH:fe.ETHEREUM,ETHEREUM:fe.ETHEREUM},Ui=Du(({onRampConfig:e,twoFactorAuthEnabled:t=!1,recoverySecretStepEnabled:o=!1,oAuthMethods:a,disableEmailLogin:n,disablePhoneLogin:i,onClose:l,onRampTestMode:r,loginTransitionOverride:c,createWalletOverride:p},d)=>{let u=b(),A=s(w=>w.step),m=s(w=>w.webAuthURLForLogin),f=s(w=>w.webAuthURLForCreate),S=s(w=>w.passwordUrlForLogin),y=s(w=>w.isLogin()),D=s(w=>w.popupWindow),W=s(w=>w.onRampConfig),E=s(w=>w.setStep),h=s(w=>w.setBiometricLocationHints),R=s(w=>w.setWebAuthURLForLogin),C=s(w=>w.setWebAuthURLForCreate),L=s(w=>w.setPopupWindow),T=s(w=>w.setIFrameUrl),g=s(w=>w.setPasswordUrlForLogin),U=s(w=>w.setSupportedAuthMethods),x=s(w=>w.setOnRampConfig),P=s(w=>w.accountAddFundTab),K=s(w=>w.setAccountAddFundTab),M=V(w=>w.setRecoveryShare),ne=Me(),ae=bi(),ce=bi(),[Y,N]=Pu(!1),Q=vi();Uu(d,()=>({handleModalClose(){Ue()}}),[]);let te=async()=>{if(!t)return!0;try{let{isSetup:w}=await u.check2FAStatus();return w}catch(w){return console.error("An error occurred while checking 2FA:",w),!1}};async function H(){let{isComplete:w,isError:I,needsWallet:B}=await u.waitForLoginAndSetup({popupWindow:D});if(L(void 0),I){ne();return}w&&(R(""),g(""),U(new Set),h(),B?E("AWAITING_WALLET_CREATION"):(await Q(),await te()?E("LOGIN_DONE"):E("SETUP_2FA")))}async function de(){await u.waitForAccountCreation()&&(C(""),T(""),E("AWAITING_WALLET_CREATION"))}Wt(()=>{if(A!=="AWAITING_WALLET_CREATION"||Y)return;async function w(){N(!0);let I,B;if(p){let q=await p(u),pe=(await u.fetchWallets()).filter(me=>!!me.address),ue={};for(let me of pe)ue[me.id]={...Fu(me),signer:""};u.setWallets(ue),I=q.recoverySecret,B=q.walletIds}else{let q=await u.waitForPasskeyAndCreateWallet();I=q.recoverySecret,B=q.walletIds}await u.setCurrentWalletIds(B),o&&M(I),N(!1),E(!I||!o?"WALLET_CREATION_DONE":"SECRET")}w()},[y,A]);async function De(){E("PASSWORD_CREATION")}async function pt(){typeof window<"u"&&(clearTimeout(ce.current),ce.current=window.setTimeout(de,dt.POLLING_INTERVAL_MS),je(f,"ParaPasskey","CREATE_PASSKEY"),E("AWAITING_BIOMETRIC_CREATION"))}Wt(()=>{if(m||S){if(c){async function w(){await c(u),R(""),g(""),h(),await Q(),await te()?E("LOGIN_DONE"):E("SETUP_2FA")}w();return}typeof window<"u"&&(ae.current=window.setTimeout(H,dt.LOGGIN_POLLING_DELAY_MS))}return()=>{typeof window<"u"&&window.clearTimeout(ae.current),u.exitLogin()}},[m,S,D]);let Ue=()=>{l()};return Wt(()=>{["BIOMETRIC_CREATION","AWAITING_BIOMETRIC_CREATION"].includes(A)||u.exitAccountCreation(),["BIOMETRIC_LOGIN","AWAITING_BIOMETRIC_LOGIN"].includes(A)||u.exitLogin(),["AWAITING_OAUTH","FARCASTER_OAUTH"].includes(A)||u.exitOAuth(),A==="PASSWORD_CREATION"&&typeof window<"u"&&(clearTimeout(ce.current),ce.current=window.setTimeout(de,dt.POLLING_INTERVAL_MS))},[A]),Wt(()=>{W||u.ctx.client.getOnRampConfig().then(w=>{let I;if(e){let{enabledFlows:B,network:q,asset:pe,providers:ue,testMode:me}=e,Ho=ue.find(ge=>Bu(ge));I={isBuyEnabled:!B||B.some(ge=>He[ge]===He.BUY),isReceiveEnabled:!B||B.some(ge=>He[ge]===He.RECEIVE),isWithdrawEnabled:!B||B.some(ge=>He[ge]===He.WITHDRAW),allowedAssets:q?{[_t[q]]:pe?[Vn[pe]]:!0}:pe?{[Hu[Vn[pe]]??_t.ETHEREUM]:[Vn[pe]]}:w.allowedAssets,assetInfo:w.assetInfo,providers:ue.map(({id:ge})=>ku[ge]),rampApiKey:Ho?.hostApiKey??w.rampApiKey,testMode:me??r}}else I={...w,testMode:r};x(I),P||K(I.isBuyEnabled?He.BUY:I.isReceiveEnabled?He.RECEIVE:I.isWithdrawEnabled?He.WITHDRAW:void 0)}).catch()},[]),Wt(()=>{W&&x({...W,testMode:r})},[r]),Wt(()=>()=>{u.exitLoops()},[]),Vu(Gu,{children:[Di(Ri,{oAuthMethods:a,twoFactorAuthEnabled:t,disableEmailLogin:n,disablePhoneLogin:i,onClose:Ue,createAccountWithPasskey:pt,createAccountWithPassword:De}),Di(Oi,{})]})});import{forwardRef as Fi,useEffect as be,useImperativeHandle as im,useRef as sm,useState as Fo}from"react";import{ParaEvent as Po}from"@getpara/web-sdk";import{useEffect as om,useState as Rt}from"react";import{createContext as $u,useMemo as Ku}from"react";import{jsx as Xu}from"react/jsx-runtime";var Yu={wallets:[],chains:[],chainId:void 0,username:void 0,avatar:void 0,disconnect:()=>Promise.resolve(),switchChain:()=>Promise.resolve({})},Mo=$u(Yu);function $n({children:e}){let t=[],o=[],l=()=>Promise.resolve(),r=()=>Promise.resolve({});return Xu(Mo.Provider,{value:Ku(()=>({wallets:t,chains:o,chainId:void 0,username:void 0,avatar:void 0,disconnect:l,switchChain:r}),[t,o,void 0,void 0,void 0,l,r]),children:e})}var Oo=(l=>(l.METAMASK="METAMASK",l.RAINBOW="RAINBOW",l.COINBASE="COINBASE",l.WALLETCONNECT="WALLETCONNECT",l.ZERION="ZERION",l.RABBY="RABBY",l))(Oo||{}),No=(a=>(a.PHANTOM="PHANTOM",a.GLOW="GLOW",a.BACKPACK="BACKPACK",a))(No||{}),vo=(o=>(o.KEPLR="KEPLR",o.LEAP="LEAP",o))(vo||{}),tw={...Oo,...No,...vo};import{createContext as zu,useMemo as Qu}from"react";import{jsx as Zu}from"react/jsx-runtime";var qu={wallets:[],disconnect:()=>Promise.resolve()},bo=zu(qu);function Kn({children:e}){let t=[],o=()=>Promise.resolve();return Zu(bo.Provider,{value:Qu(()=>({wallets:t,disconnect:o}),[t,o]),children:e})}import{createContext as Ju,useMemo as ju}from"react";import{jsx as tm}from"react/jsx-runtime";var em={wallets:[],chains:[],chainId:void 0,disconnect:()=>Promise.resolve(),switchChain:()=>Promise.resolve({})},Do=Ju(em);function Yn({children:e}){let t=[],o=[],n=()=>Promise.resolve(),i=()=>Promise.resolve({});return tm(Do.Provider,{value:ju(()=>({wallets:t,chains:o,chainId:void 0,disconnect:n,switchChain:i}),[t,o,void 0,n,i]),children:e})}import{jsx as Uo}from"react/jsx-runtime";var Pi=({children:e,wallets:t})=>{let o=b(),a=s(T=>T.resetState),n=V(T=>T.resetState),i=se(T=>T.EvmProvider),l=se(T=>T.evmContext),r=se(T=>T.SolanaProvider),c=se(T=>T.solanaContext),p=se(T=>T.CosmosProvider),d=se(T=>T.cosmosContext),[u,A]=Rt(null),[m,f]=Rt(null),[S,y]=Rt(null),[D,W]=Rt(null),[E,h]=Rt(null),[R,C]=Rt(null);om(()=>{(async()=>{let g=Mo,U=$n,x=bo,P=Kn,K=Do,M=Yn;if(!t?.length)g=Mo,U=$n,x=bo,P=Kn,K=Do,M=Yn;else for(let ne=0;ne<t.length;ne++){let ae=t[ne];if(ae in Oo){if(!i||!l)throw new Error("@getpara/evm-wallet-connectors is required to use an external EVM wallet.");g=l,U=i}if(ae in No){if(!r||!c)throw new Error("@getpara/solana-wallet-connectors is required to use an external Solana wallet.");x=c,P=r}if(ae in vo){if(!p||!d)throw new Error("@getpara/cosmos-wallet-connectors is required to use an external Cosmos wallet.");K=d,M=p}}f(g),A(()=>U),W(x),y(()=>P),C(K),h(()=>M)})()},[t,l,i,c,r,d,p]);let L=({address:T,error:g})=>{(g||!T)&&(a(),n())};return!o||!u||!S||!E?null:Uo(u,{para:o,onSwitchWallet:L,children:Uo(S,{para:o,onSwitchWallet:L,children:Uo(E,{para:o,onSwitchWallet:L,children:Uo(ra,{evmContext:m,solanaContext:D,cosmosContext:R,walletSort:t,children:e})})})})};import lm from"styled-components";import{jsx as ko}from"react/jsx-runtime";rm();var zw=Fi(({para:e,isOpen:t,...o},a)=>{let[n,i]=Fo(!1),l=Z(d=>d.setClient),r=Z(d=>d.client),{closeModal:c,openModal:p}=qt();return be(()=>{r||l(e),i(!0)},[]),be(()=>{t||c(),t&&p()},[t]),n?ko(cm,{ref:a,para:e,...o}):null}),cm=Fi(({theme:e,appName:t,logo:o,disableEmailLogin:a=!1,disablePhoneLogin:n=!1,oAuthMethods:i,bareModal:l=!1,className:r,currentStepOverride:c,externalWallets:p,authLayout:d=["AUTH:FULL","EXTERNAL:FULL"],embeddedModal:u,onModalStepChange:A,hideWallets:m=!1,onClose:f,...S},y)=>{let D=sm(null),W=_(v=>v.updateState),E=s(v=>v.setWebAuthURLForLogin),h=s(v=>v.setWebAuthURLForCreate),R=s(v=>v.setBiometricLocationHints),C=s(v=>v.step),L=s(v=>v.setOnModalStepChange),T=s(v=>v.setStep),g=V(v=>v.setAuthInfo),U=s(v=>v.hasPreviousStep()),x=s(v=>v.setFlow),P=s(v=>v.setIsFullyLoggedIn),K=Me(),M=_(v=>v.setAuthLayout),ne=_(v=>v.authLayout),ae=s(v=>v.resetState),ce=V(v=>v.resetState),Y=V(v=>v.setRecoveryShare),{disconnectExternalWallet:N}=$(),{isOpen:Q,closeModal:te}=qt(),H=b(),{selectedWallet:de,setSelectedWallet:De}=Ce(),[pt,Ue]=Fo(!1),[w,I]=Fo(!1),[B,q]=Fo(!1);im(y,()=>({goBack(){K()},canGoBack(){return U},currentStep(){return C},handleModalClose(){D?.current?.handleModalClose()}}),[U,C]);let pe=async()=>{let v=await H.isFullyLoggedIn();switch(c?T(Ve[c.toUpperCase()]):v?(x("account"),T("ACCOUNT_MAIN"),P(!0)):(C!=="AUTH_MAIN"&&C!=="SECRET"&&(T("AUTH_MAIN"),x(),E(),h(),R()),await N(),De({id:void 0,type:void 0}),P(!1)),!0){case H.isEmail:g({email:H.getEmail()});break;case H.isPhone:{let{phone:Ge,countryCode:ki}=H.getPhone();g({phone:Ge,countryCode:ki})}break;case H.isFarcaster:g({farcasterUsername:H.getFarcasterUsername()});break;case H.isTelegram:g({telegramUserId:H.telegramUserId}),v||T("TELEGRAM_OAUTH");break}I(!0)};be(()=>{let v=d;!p?.length&&yn(d)&&(v=v.filter(Ge=>!Ge.includes("EXTERNAL"))),a&&n&&!i?.length&&Dt(d)&&(v=v.filter(Ge=>!Ge.includes("AUTH"))),JSON.stringify(ne)!==JSON.stringify(v)&&M(v)},[a,n,i,p,d]),be(()=>{L(A)},[A]),be(()=>{W({logo:o,appName:t,oAuthLogoVariant:e?.oAuthLogoVariant??"default",bareModal:l,embeddedModal:u,hideWallets:m})},[o,t,e?.oAuthLogoVariant,l,u,m]),be(()=>{e&&(am(e),W({isDark:e.mode==="dark",theme:e}))},[e]),be(()=>{H?(pe(),l&&Ue(!0)):console.error("A Para instance must be provided.")},[]),be(()=>{Q&&H&&pe()},[Q]);let ue=()=>{if(!de?.id||!H.findWallet(de?.id)){let v=H.findWallet(void 0,void 0,{forbidPregen:!0});De({id:v?.id,type:v?.type})}};be(()=>{ue()},[H]),be(()=>(typeof window<"u"&&window.addEventListener(Po.WALLETS_CHANGE_EVENT,ue),typeof window<"u"&&window.addEventListener(Po.EXTERNAL_WALLET_CHANGE_EVENT,ue),q(!0),()=>{typeof window<"u"&&window.removeEventListener(Po.WALLETS_CHANGE_EVENT,ue),typeof window<"u"&&window.removeEventListener(Po.EXTERNAL_WALLET_CHANGE_EVENT,ue)}),[]);let me=()=>{te(),f?.()},Ho=()=>{Ue(!0)},ge=async()=>{Ue(!1),Xn.includes(C)?(ae(),ce(),Y(null)):zn.includes(C)&&T("LOGIN_DONE"),H&&(await pe(),H.exitLoops()),I(!1)};if(!B)return null;if(!H)return console.error("A Para instance is required."),null;if(!ne?.length){let v=!p?.length&&yn(d),Ge=a&&n&&!i?.length&&Dt(d);return v||Ge?(v&&console.error("At least one external wallet must be provided if external wallet auth is enabled."),Ge&&console.error("At least one login method (email, phone or OAuth) must be provided if embedded wallet auth is enabled.")):console.error("At least one auth layout selection is required."),null}return ko(Pi,{wallets:p,children:ko(dm,{enterTransitionDuration:dt.ANIMATION_DURATION,exitTransitionDuration:dt.ANIMATION_DURATION,open:Q,onCpslModalExited:ge,onCpslModalEntering:Ho,onCpslModalRequestClose:me,noOverlay:l,className:r,"data-testid":"modal",$embeddedModal:u,children:pt&&(w&&u||!u)&&ko(Ui,{oAuthMethods:i,disableEmailLogin:a,disablePhoneLogin:n,onClose:me,...S})})})}),dm=lm(nm)`
664
+ `;import{create as Uu}from"zustand";var bi=e=>({updateState:t=>{e(t)}});var Pu={EvmProvider:void 0,evmContext:void 0,SolanaProvider:void 0,solanaContext:void 0,CosmosProvider:void 0,cosmosContext:void 0,connectParaEvmWallet:void 0,connectParaCosmosWallet:void 0},se=Uu(e=>({...Pu,...bi(e)}));var Di=()=>{let e=se(l=>l.connectParaEvmWallet),t=se(l=>l.EvmProvider),o=se(l=>l.evmContext),a=se(l=>l.connectParaCosmosWallet),n=se(l=>l.CosmosProvider),r=se(l=>l.cosmosContext);return async()=>{if(o&&t&&e)try{let{error:l}=await e();l&&console.warn("Failed to connect Para EVM wallet to Wagmi:",l)}catch(l){console.warn("Error calling connectParaEvmWallet:",l)}if(r&&n&&a)try{let{error:l}=await a();l&&console.warn("Failed to connect Para Cosmos wallet to Graz:",l)}catch(l){console.warn("Error calling connectParaCosmosWallet:",l)}}};import{Fragment as Ku,jsx as Ui,jsxs as Yu}from"react/jsx-runtime";function Vu(e){return"hostApiKey"in e}var $u={[ue.SOLANA]:xt.SOLANA,[ue.ATOM]:xt.COSMOS,[ue.CELO]:xt.CELO,[ue.POLYGON]:xt.POLYGON},Vn={SOLANA:ue.SOLANA,SOL:ue.SOLANA,ATOM:ue.ATOM,CELO:ue.CELO,POLYGON:ue.POLYGON,MATIC:ue.POLYGON,USDC:ue.USDC,ETH:ue.ETHEREUM,ETHEREUM:ue.ETHEREUM},Pi=Fu(({onRampConfig:e,twoFactorAuthEnabled:t=!1,recoverySecretStepEnabled:o=!1,oAuthMethods:a,disableEmailLogin:n,disablePhoneLogin:r,onClose:s,onRampTestMode:l,loginTransitionOverride:c,createWalletOverride:d},p)=>{let C=v(),f=i(m=>m.refs),u=i(m=>m.step),A=i(m=>m.webAuthURLForLogin),S=i(m=>m.passwordUrlForLogin),h=i(m=>m.isLogin()),U=i(m=>m.onRampConfig),I=i(m=>m.setStep),b=i(m=>m.setBiometricLocationHints),T=i(m=>m.setWebAuthURLForLogin),M=i(m=>m.setPasswordUrlForLogin),x=i(m=>m.setSupportedAuthMethods),W=i(m=>m.setOnRampConfig),g=i(m=>m.accountAddFundTab),y=i(m=>m.setAccountAddFundTab),D=K(m=>m.setRecoveryShare),R=he(),E=oo(),[V,_]=Bu(!1),q=Di();ku(p,()=>({handleModalClose(){$()}}),[]);let Z=async()=>{if(!t)return!0;try{let{isSetup:m}=await C.check2FAStatus();return m}catch(m){return console.error("An error occurred while checking 2FA:",m),!1}};async function ce(){let{isComplete:m,isError:F,needsWallet:H}=await C.waitForLoginAndSetup({popupWindow:f.popupWindow.current});if(window.clearTimeout(f.poll.current?.timeout),f.poll.current=void 0,f.popupWindow.current=void 0,F){["AWAITING_BIOMETRIC_LOGIN","AWAITING_PASSWORD_LOGIN"].includes(f.currentStep.current)&&R();return}m&&(T(""),M(""),x(new Set),b(),H?I("AWAITING_WALLET_CREATION"):(await q(),await Z()?I("LOGIN_DONE"):I("SETUP_2FA")))}yt(()=>{if(u!=="AWAITING_WALLET_CREATION"||V)return;async function m(){_(!0);let F,H;if(d){let J=await d(C),k=(await C.fetchWallets()).filter(me=>!!me.address),pe={};for(let me of k)pe[me.id]={...Hu(me),signer:""};C.setWallets(pe),F=J.recoverySecret,H=J.walletIds}else{let J=await C.waitForPasskeyAndCreateWallet();F=J.recoverySecret,H=J.walletIds}await C.setCurrentWalletIds(H),o&&D(F),_(!1),I(!F||!o?"WALLET_CREATION_DONE":"SECRET")}m()},[h,u]),yt(()=>{if(["AWAITING_BIOMETRIC_LOGIN","AWAITING_PASSWORD_LOGIN"].includes(u)&&(A||S)){if(c){async function m(){await c(C),T(""),M(""),b(),await q(),await Z()?I("LOGIN_DONE"):I("SETUP_2FA")}m();return}return typeof window<"u"&&(f.poll.current={action:"login",timeout:window.setTimeout(ce,$e.LOGGIN_POLLING_DELAY_MS)}),()=>{typeof window<"u"&&f.poll.current&&window.clearTimeout(f.poll.current?.timeout),C.exitLogin()}}},[u,A,S]);let $=()=>{s()};return yt(()=>{f.currentStep.current=u;let m=!1;["AWAITING_BIOMETRIC_CREATION","PASSWORD_CREATION"].includes(u)||(C.exitAccountCreation(),m=["createPassword","createPasskey"].includes(f.poll.current?.action)),["AWAITING_PASSWORD_LOGIN","AWAITING_BIOMETRIC_LOGIN"].includes(u)||(C.exitLogin(),m=f.poll.current?.action==="login"),["AWAITING_OAUTH","FARCASTER_OAUTH"].includes(u)||C.exitOAuth(),u==="PASSWORD_CREATION"&&E.withPassword(),m&&typeof window<"u"&&(window.clearTimeout(f.poll.current?.timeout),f.poll.current=void 0)},[u]),yt(()=>{U||C.ctx.client.getOnRampConfig().then(m=>{let F;if(e){let{enabledFlows:H,network:J,asset:k,providers:pe,testMode:me}=e,lt=pe.find(ie=>Vu(ie));F={isBuyEnabled:!H||H.some(ie=>Fe[ie]===Fe.BUY),isReceiveEnabled:!H||H.some(ie=>Fe[ie]===Fe.RECEIVE),isWithdrawEnabled:!H||H.some(ie=>Fe[ie]===Fe.WITHDRAW),allowedAssets:J?{[xt[J]]:k?[Vn[k]]:!0}:k?{[$u[Vn[k]]??xt.ETHEREUM]:[Vn[k]]}:m.allowedAssets,assetInfo:m.assetInfo,providers:pe.map(({id:ie})=>Gu[ie]),rampApiKey:lt?.hostApiKey??m.rampApiKey,testMode:me??l}}else F={...m,testMode:l};W(F),g||y(F.isBuyEnabled?Fe.BUY:F.isReceiveEnabled?Fe.RECEIVE:F.isWithdrawEnabled?Fe.WITHDRAW:void 0)}).catch()},[]),yt(()=>{U&&W({...U,testMode:l})},[l]),yt(()=>()=>{window.clearTimeout(f.poll.current?.timeout),C.exitLoops()},[]),Yu(Ku,{children:[Ui(Mi,{oAuthMethods:a,twoFactorAuthEnabled:t,disableEmailLogin:n,disablePhoneLogin:r,onClose:$}),Ui(vi,{})]})});import{forwardRef as ki,useEffect as Ne,useImperativeHandle as cm,useRef as pm,useState as Uo}from"react";import{ParaEvent as Do}from"@getpara/web-sdk";import{useEffect as am,useState as wt}from"react";import{createContext as Xu,useMemo as zu}from"react";import{jsx as qu}from"react/jsx-runtime";var Qu={wallets:[],chains:[],chainId:void 0,username:void 0,avatar:void 0,disconnect:()=>Promise.resolve(),switchChain:()=>Promise.resolve({})},Ro=Xu(Qu);function $n({children:e}){let t=[],o=[],s=()=>Promise.resolve(),l=()=>Promise.resolve({});return qu(Ro.Provider,{value:zu(()=>({wallets:t,chains:o,chainId:void 0,username:void 0,avatar:void 0,disconnect:s,switchChain:l}),[t,o,void 0,void 0,void 0,s,l]),children:e})}var Lo=(s=>(s.METAMASK="METAMASK",s.RAINBOW="RAINBOW",s.COINBASE="COINBASE",s.WALLETCONNECT="WALLETCONNECT",s.ZERION="ZERION",s.RABBY="RABBY",s))(Lo||{}),Mo=(a=>(a.PHANTOM="PHANTOM",a.GLOW="GLOW",a.BACKPACK="BACKPACK",a))(Mo||{}),Oo=(o=>(o.KEPLR="KEPLR",o.LEAP="LEAP",o))(Oo||{}),pw={...Lo,...Mo,...Oo};import{createContext as Zu,useMemo as Ju}from"react";import{jsx as em}from"react/jsx-runtime";var ju={wallets:[],disconnect:()=>Promise.resolve()},No=Zu(ju);function Kn({children:e}){let t=[],o=()=>Promise.resolve();return em(No.Provider,{value:Ju(()=>({wallets:t,disconnect:o}),[t,o]),children:e})}import{createContext as tm,useMemo as om}from"react";import{jsx as rm}from"react/jsx-runtime";var nm={wallets:[],chains:[],chainId:void 0,disconnect:()=>Promise.resolve(),switchChain:()=>Promise.resolve({})},vo=tm(nm);function Yn({children:e}){let t=[],o=[],n=()=>Promise.resolve(),r=()=>Promise.resolve({});return rm(vo.Provider,{value:om(()=>({wallets:t,chains:o,chainId:void 0,disconnect:n,switchChain:r}),[t,o,void 0,n,r]),children:e})}import{jsx as bo}from"react/jsx-runtime";var Fi=({children:e,wallets:t})=>{let o=v(),a=i(g=>g.resetState),n=K(g=>g.resetState),r=se(g=>g.EvmProvider),s=se(g=>g.evmContext),l=se(g=>g.SolanaProvider),c=se(g=>g.solanaContext),d=se(g=>g.CosmosProvider),p=se(g=>g.cosmosContext),[C,f]=wt(null),[u,A]=wt(null),[S,h]=wt(null),[U,I]=wt(null),[b,T]=wt(null),[M,x]=wt(null);am(()=>{(async()=>{let y=Ro,D=$n,R=No,E=Kn,V=vo,_=Yn;if(!t?.length)y=Ro,D=$n,R=No,E=Kn,V=vo,_=Yn;else for(let q=0;q<t.length;q++){let Z=t[q];if(Z in Lo){if(!r||!s)throw new Error("@getpara/evm-wallet-connectors is required to use an external EVM wallet.");y=s,D=r}if(Z in Mo){if(!l||!c)throw new Error("@getpara/solana-wallet-connectors is required to use an external Solana wallet.");R=c,E=l}if(Z in Oo){if(!d||!p)throw new Error("@getpara/cosmos-wallet-connectors is required to use an external Cosmos wallet.");V=p,_=d}}A(y),f(()=>D),I(R),h(()=>E),x(V),T(()=>_)})()},[t,s,r,c,l,p,d]);let W=({address:g,error:y})=>{(y||!g)&&(a(),n())};return!o||!C||!S||!b?null:bo(C,{para:o,onSwitchWallet:W,children:bo(S,{para:o,onSwitchWallet:W,children:bo(b,{para:o,onSwitchWallet:W,children:bo(Qr,{evmContext:u,solanaContext:U,cosmosContext:M,walletSort:t,children:e})})})})};import dm from"styled-components";import{jsx as Po}from"react/jsx-runtime";sm();var nW=ki(({para:e,isOpen:t,...o},a)=>{let[n,r]=Uo(!1),s=Q(p=>p.setClient),l=Q(p=>p.client),{closeModal:c,openModal:d}=Xt();return Ne(()=>{l||s(e),r(!0)},[]),Ne(()=>{t||c(),t&&d()},[t]),n?Po(um,{ref:a,para:e,...o}):null}),um=ki(({theme:e,appName:t,logo:o,disableEmailLogin:a=!1,disablePhoneLogin:n=!1,oAuthMethods:r,bareModal:s=!1,className:l,currentStepOverride:c,externalWallets:d,authLayout:p=["AUTH:FULL","EXTERNAL:FULL"],embeddedModal:C,onModalStepChange:f,hideWallets:u=!1,onClose:A,...S},h)=>{let U=pm(null),I=w(L=>L.updateState),b=i(L=>L.refs),T=i(L=>L.setWebAuthURLForLogin),M=i(L=>L.setWebAuthURLForCreate),x=i(L=>L.setBiometricLocationHints),W=i(L=>L.step),g=i(L=>L.setOnModalStepChange),y=i(L=>L.setStep),D=K(L=>L.setAuthInfo),R=i(L=>L.hasPreviousStep()),E=i(L=>L.setFlow),V=i(L=>L.setIsFullyLoggedIn),_=he(),q=w(L=>L.setAuthLayout),Z=w(L=>L.authLayout),ce=i(L=>L.resetState),$=K(L=>L.resetState),m=K(L=>L.setRecoveryShare),{disconnectExternalWallet:F}=Y(),{isOpen:H,closeModal:J}=Xt(),k=v(),{selectedWallet:pe,setSelectedWallet:me}=de(),[lt,ie]=Uo(!1),[N,ne]=Uo(!1),[Ce,ko]=Uo(!1);cm(h,()=>({goBack(){_()},canGoBack(){return R},currentStep(){return W},handleModalClose(){U?.current?.handleModalClose()}}),[R,W]);let Wt=async()=>{let L=await k.isFullyLoggedIn();switch(c?y(Be[c.toUpperCase()]):L?(E("account"),y("ACCOUNT_MAIN"),V(!0)):(W!=="AUTH_MAIN"&&W!=="SECRET"&&(y("AUTH_MAIN"),E(),T(),M(),x()),await F(),me({id:void 0,type:void 0}),V(!1)),!0){case k.isEmail:D({email:k.getEmail()});break;case k.isPhone:{let{phone:ke,countryCode:Gi}=k.getPhone();D({phone:ke,countryCode:Gi})}break;case k.isFarcaster:D({farcasterUsername:k.getFarcasterUsername()});break;case k.isTelegram:D({telegramUserId:k.telegramUserId}),L||y("TELEGRAM_OAUTH");break}ne(!0)};Ne(()=>{let L=p;!d?.length&&gn(p)&&(L=L.filter(ke=>!ke.includes("EXTERNAL"))),a&&n&&!r?.length&&vt(p)&&(L=L.filter(ke=>!ke.includes("AUTH"))),JSON.stringify(Z)!==JSON.stringify(L)&&q(L)},[a,n,r,d,p]),Ne(()=>{g(f)},[f]),Ne(()=>{I({logo:o,appName:t,oAuthLogoVariant:e?.oAuthLogoVariant??"default",bareModal:s,embeddedModal:C,hideWallets:u})},[o,t,e?.oAuthLogoVariant,s,C,u]),Ne(()=>{e&&(lm(e),I({isDark:e.mode==="dark",theme:e}))},[e]),Ne(()=>{k?(Wt(),s&&ie(!0)):console.error("A Para instance must be provided.")},[]),Ne(()=>{H&&k&&Wt()},[H]);let ve=()=>{if(!pe?.id||!k.findWallet(pe?.id)){let L=k.findWallet(void 0,void 0,{forbidPregen:!0});me({id:L?.id,type:L?.type})}};Ne(()=>{ve()},[k]),Ne(()=>{let L=()=>{b.popupWindow.current?.close()};return typeof window<"u"&&(window.addEventListener(Do.WALLETS_CHANGE_EVENT,ve),window.addEventListener(Do.EXTERNAL_WALLET_CHANGE_EVENT,ve),window.addEventListener("beforeunload",L)),ko(!0),()=>{typeof window<"u"&&(window.removeEventListener(Do.WALLETS_CHANGE_EVENT,ve),window.removeEventListener(Do.EXTERNAL_WALLET_CHANGE_EVENT,ve),window.removeEventListener("beforeunload",L))}},[]);let Xn=()=>{J(),A?.()},Bi=()=>{ie(!0)},Hi=async()=>{s||ie(!1),zn.includes(W)?(ce(),$(),m(null)):Qn.includes(W)&&y("LOGIN_DONE"),k&&(await Wt(),k.exitLoops()),s||ne(!1)};if(!Ce)return null;if(!k)return console.error("A Para instance is required."),null;if(!Z?.length){let L=!d?.length&&gn(p),ke=a&&n&&!r?.length&&vt(p);return L||ke?(L&&console.error("At least one external wallet must be provided if external wallet auth is enabled."),ke&&console.error("At least one login method (email, phone or OAuth) must be provided if embedded wallet auth is enabled.")):console.error("At least one auth layout selection is required."),null}return Po(Fi,{wallets:d,children:Po(mm,{enterTransitionDuration:$e.ANIMATION_DURATION,exitTransitionDuration:$e.ANIMATION_DURATION,open:H,onCpslModalExited:Hi,onCpslModalEntering:Bi,onCpslModalRequestClose:Xn,noOverlay:s,className:l,"data-testid":"modal",$embeddedModal:C,children:lt&&(N&&C||!C)&&Po(Pi,{oAuthMethods:r,disableEmailLogin:a,disablePhoneLogin:n,onClose:Xn,...S})})})}),mm=dm(im)`
665
665
  ${({$embeddedModal:e})=>e&&`
666
666
  &::part(modal-body-card) {
667
667
  --card-box-shadow: none;
@@ -672,4 +672,4 @@ Please choose another wallet or continue on desktop.`;return z(O,{children:z(Va,
672
672
  --card-box-shadow: none;
673
673
  --card-border-width: 0px;
674
674
  };`}
675
- `;var Bo=class extends Error{constructor(t){super(`On-ramp configuration error: ${t}.`),this.name="OnRampConfigError"}};function pm({providers:e}){if(!e||e.length<1)throw new Bo("No providers are configured")}function um({providers:e}){e.forEach((t,o)=>{if(e.findIndex(a=>a===t)!==o)throw new Bo(`Provider ${t} is configured more than once`)})}function Zw(e){return e?(pm(e),um(e),!0):!1}export*from"@getpara/web-sdk";import mm from"@getpara/web-sdk";var dW=mm;export{jn as AuthLayout,vo as CosmosWallet,Oo as EvmWallet,tw as ExternalWallet,Ve as ModalStep,Cn as NETWORKS,fn as ON_RAMP_ASSETS,mn as ON_RAMP_PROVIDERS,Bo as OnRampConfigError,zw as ParaModal,cl as ParaProvider,Hr as SaveRecoverySecret,No as SolanaWallet,dW as default,Yl as getAssetIcon,Kl as getAssetName,LS as getClient,MS as getIsOpen,$l as getNetworkIcon,bt as getNetworkName,OS as getSelectedWalletId,NS as getSelectedWalletType,je as openPopup,en as useAccount,$s as useCheckIfUserExists,G as useClient,Gs as useCreateUser,se as useExternalWalletProviderStore,Ys as useInitiateLogin,on as useKeepSessionAlive,tn as useLogout,qt as useModal,Zs as useSignMessage,js as useSignTransaction,Ps as useWaitForAccountCreation,bs as useWaitForLoginAndSetup,Bs as useWaitForPasskeyAndCreateWallet,Nt as useWallet,Ce as useWalletState,Zw as validateOnRampConfig};
675
+ `;var Fo=class extends Error{constructor(t){super(`On-ramp configuration error: ${t}.`),this.name="OnRampConfigError"}};function Cm({providers:e}){if(!e||e.length<1)throw new Fo("No providers are configured")}function fm({providers:e}){e.forEach((t,o)=>{if(e.findIndex(a=>a===t)!==o)throw new Fo(`Provider ${t} is configured more than once`)})}function iW(e){return e?(Cm(e),fm(e),!0):!1}export*from"@getpara/web-sdk";import Am from"@getpara/web-sdk";var hW=Am;export{er as AuthLayout,Oo as CosmosWallet,Lo as EvmWallet,pw as ExternalWallet,Be as ModalStep,mn as NETWORKS,Cn as ON_RAMP_ASSETS,un as ON_RAMP_PROVIDERS,Fo as OnRampConfigError,nW as ParaModal,ul as ParaProvider,Gr as SaveRecoverySecret,Mo as SolanaWallet,hW as default,oc as getAssetIcon,tc as getAssetName,OS as getClient,NS as getIsOpen,ec as getNetworkIcon,Nt as getNetworkName,vS as getSelectedWalletId,bS as getSelectedWalletType,Ze as openPopup,jo as useAccount,Xs as useCheckIfUserExists,G as useClient,Ks as useCreateUser,se as useExternalWalletProviderStore,Qs as useInitiateLogin,tn as useKeepSessionAlive,en as useLogout,Xt as useModal,el as useSignMessage,ol as useSignTransaction,Bs as useWaitForAccountCreation,Ps as useWaitForLoginAndSetup,Vs as useWaitForPasskeyAndCreateWallet,Mt as useWallet,de as useWalletState,iW as validateOnRampConfig};